diff --git a/.github/files/generate-ci-matrix.php b/.github/files/generate-ci-matrix.php index 4688293fb60bb..15026f8b28d93 100755 --- a/.github/files/generate-ci-matrix.php +++ b/.github/files/generate-ci-matrix.php @@ -26,6 +26,9 @@ // {string} Name for the job. Required, and must be unique. 'name' => null, + // {string} Runner name as found in https://github.com/actions/runner-images/. + 'runner' => 'ubuntu-latest', + // {string} Composer script for the job. Required. 'script' => null, @@ -68,9 +71,10 @@ ); } -// TODO: When WordPress 6.5 is no longer supported, this can be removed. +// TODO: When WordPress 6.5 is no longer supported, this can be removed. Runs too slow on ubuntu-24.04 (ubuntu-latest). $matrix[] = array( 'name' => 'PHP tests: PHP 7.0 WP previous', + 'runner' => 'ubuntu-22.04', 'script' => 'test-php', 'php' => '7.0', 'wp' => 'previous', diff --git a/.github/files/gh-autorelease/files/autorelease.sh b/.github/files/gh-autorelease/files/autorelease.sh index 45e6a75475798..b4ac60309f027 100755 --- a/.github/files/gh-autorelease/files/autorelease.sh +++ b/.github/files/gh-autorelease/files/autorelease.sh @@ -28,7 +28,7 @@ elif [[ "$GITHUB_REF" == "refs/heads/trunk" ]]; then fi ROLLING_MODE=true CURRENT_VER=$( sed -nEe 's/^## \[?([^]]*)\]? - .*/\1/;T;p;q' CHANGELOG.md || true ) - GIT_SUFFIX=$( git log -1 --format=%h . ) + GIT_SUFFIX=$( git log -1 --format="%ct.g%h" . ) TAG="$CURRENT_VER+rolling.$GIT_SUFFIX" else echo "::error::Expected GITHUB_REF like \`refs/tags/v1.2.3\` or \`refs/tags/1.2.3\` or \`refs/heads/trunk\` for rolling releases, got \`$GITHUB_REF\`" diff --git a/.github/workflows/block-performance.yml b/.github/workflows/block-performance.yml index 33d61eeba7658..f8fe67cfe3316 100644 --- a/.github/workflows/block-performance.yml +++ b/.github/workflows/block-performance.yml @@ -36,7 +36,7 @@ jobs: npx playwright install chromium --with-deps npm run build:packages - - name: Setup tools for J + - name: Setup tools for Jetpack uses: ./.github/actions/tool-setup - name: Build Production Jetpack diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index caef4109236b8..65015806bd992 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -27,7 +27,7 @@ jobs: run-tests: name: ${{ matrix.name }} - runs-on: ubuntu-latest + runs-on: ${{ matrix.runner }} needs: create-matrix services: database: diff --git a/composer.lock b/composer.lock index eecca3d0ea5b9..e3dffd74ad653 100644 --- a/composer.lock +++ b/composer.lock @@ -60,12 +60,12 @@ "dist": { "type": "path", "url": "projects/packages/codesniffer", - "reference": "891b1551e10d864bc4654bd034ce0487ad849425" + "reference": "7545c2efd2ce1a5f8cb85419035b3f1e952be125" }, "require": { "automattic/vipwpcs": "^3.0", "dealerdirect/phpcodesniffer-composer-installer": "^1.0", - "mediawiki/mediawiki-codesniffer": "^43.0", + "mediawiki/mediawiki-codesniffer": "^44.0", "php": ">=7.4", "phpcompatibility/phpcompatibility-wp": "^2.1", "sirbrillig/phpcs-variable-analysis": "^2.10", @@ -360,16 +360,16 @@ }, { "name": "composer/semver", - "version": "3.4.0", + "version": "3.4.2", "source": { "type": "git", "url": "https://github.com/composer/semver.git", - "reference": "35e8d0af4486141bc745f23a29cc2091eb624a32" + "reference": "c51258e759afdb17f1fd1fe83bc12baaef6309d6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/35e8d0af4486141bc745f23a29cc2091eb624a32", - "reference": "35e8d0af4486141bc745f23a29cc2091eb624a32", + "url": "https://api.github.com/repos/composer/semver/zipball/c51258e759afdb17f1fd1fe83bc12baaef6309d6", + "reference": "c51258e759afdb17f1fd1fe83bc12baaef6309d6", "shasum": "" }, "require": { @@ -421,7 +421,7 @@ "support": { "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.4.0" + "source": "https://github.com/composer/semver/tree/3.4.2" }, "funding": [ { @@ -437,7 +437,7 @@ "type": "tidelift" } ], - "time": "2023-08-31T09:50:34+00:00" + "time": "2024-07-12T11:35:52+00:00" }, { "name": "composer/spdx-licenses", @@ -757,34 +757,34 @@ }, { "name": "mediawiki/mediawiki-codesniffer", - "version": "v43.0.0", + "version": "v44.0.0", "source": { "type": "git", "url": "https://github.com/wikimedia/mediawiki-tools-codesniffer.git", - "reference": "c559bc02e87b0a969b6ed7380d7fa1d02738158b" + "reference": "86c56877214ad5216a0d1c6c0d3a9c72edce4c08" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wikimedia/mediawiki-tools-codesniffer/zipball/c559bc02e87b0a969b6ed7380d7fa1d02738158b", - "reference": "c559bc02e87b0a969b6ed7380d7fa1d02738158b", + "url": "https://api.github.com/repos/wikimedia/mediawiki-tools-codesniffer/zipball/86c56877214ad5216a0d1c6c0d3a9c72edce4c08", + "reference": "86c56877214ad5216a0d1c6c0d3a9c72edce4c08", "shasum": "" }, "require": { - "composer/semver": "3.3.2 || 3.4.0", + "composer/semver": "3.3.2 || 3.4.0 || 3.4.2", "composer/spdx-licenses": "~1.5.2", "ext-json": "*", "ext-mbstring": "*", "php": ">=7.4.0", - "phpcsstandards/phpcsextra": "1.1.2", - "squizlabs/php_codesniffer": "3.8.1", + "phpcsstandards/phpcsextra": "1.2.1", + "squizlabs/php_codesniffer": "3.9.0", "symfony/polyfill-php80": "^1.26.0" }, "require-dev": { - "mediawiki/mediawiki-phan-config": "0.12.1", - "mediawiki/minus-x": "1.1.1", + "mediawiki/mediawiki-phan-config": "0.14.0", + "mediawiki/minus-x": "1.1.3", "php-parallel-lint/php-console-highlighter": "1.0.0", - "php-parallel-lint/php-parallel-lint": "1.3.2", - "phpunit/phpunit": "9.5.28" + "php-parallel-lint/php-parallel-lint": "1.4.0", + "phpunit/phpunit": "9.6.16" }, "type": "phpcodesniffer-standard", "autoload": { @@ -804,9 +804,9 @@ "mediawiki" ], "support": { - "source": "https://github.com/wikimedia/mediawiki-tools-codesniffer/tree/v43.0.0" + "source": "https://github.com/wikimedia/mediawiki-tools-codesniffer/tree/v44.0.0" }, - "time": "2024-01-29T16:06:37+00:00" + "time": "2024-08-10T11:11:32+00:00" }, { "name": "microsoft/tolerant-php-parser", @@ -1047,16 +1047,16 @@ }, { "name": "php-stubs/woocommerce-stubs", - "version": "v9.2.1", + "version": "v9.3.3", "source": { "type": "git", "url": "https://github.com/php-stubs/woocommerce-stubs.git", - "reference": "8dc04f7198e31be7c6f2dfef8739379b3c7dfb26" + "reference": "1995245b3ebfd82eeaf3a8e9d3ec962f00ab3b73" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-stubs/woocommerce-stubs/zipball/8dc04f7198e31be7c6f2dfef8739379b3c7dfb26", - "reference": "8dc04f7198e31be7c6f2dfef8739379b3c7dfb26", + "url": "https://api.github.com/repos/php-stubs/woocommerce-stubs/zipball/1995245b3ebfd82eeaf3a8e9d3ec962f00ab3b73", + "reference": "1995245b3ebfd82eeaf3a8e9d3ec962f00ab3b73", "shasum": "" }, "require": { @@ -1085,22 +1085,22 @@ ], "support": { "issues": "https://github.com/php-stubs/woocommerce-stubs/issues", - "source": "https://github.com/php-stubs/woocommerce-stubs/tree/v9.2.1" + "source": "https://github.com/php-stubs/woocommerce-stubs/tree/v9.3.3" }, - "time": "2024-08-21T18:36:51+00:00" + "time": "2024-09-25T17:38:08+00:00" }, { "name": "php-stubs/wordpress-stubs", - "version": "v6.6.0", + "version": "v6.6.2", "source": { "type": "git", "url": "https://github.com/php-stubs/wordpress-stubs.git", - "reference": "86e8753e89d59849276dcdd91b9a7dd78bb4abe2" + "reference": "f50fd7ed45894d036e4fef9ab7e5bbbaff6a30cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/86e8753e89d59849276dcdd91b9a7dd78bb4abe2", - "reference": "86e8753e89d59849276dcdd91b9a7dd78bb4abe2", + "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/f50fd7ed45894d036e4fef9ab7e5bbbaff6a30cc", + "reference": "f50fd7ed45894d036e4fef9ab7e5bbbaff6a30cc", "shasum": "" }, "require-dev": { @@ -1133,9 +1133,9 @@ ], "support": { "issues": "https://github.com/php-stubs/wordpress-stubs/issues", - "source": "https://github.com/php-stubs/wordpress-stubs/tree/v6.6.0" + "source": "https://github.com/php-stubs/wordpress-stubs/tree/v6.6.2" }, - "time": "2024-07-17T08:50:38+00:00" + "time": "2024-09-30T07:10:48+00:00" }, { "name": "php-stubs/wordpress-tests-stubs", @@ -1427,29 +1427,29 @@ }, { "name": "phpcsstandards/phpcsextra", - "version": "1.1.2", + "version": "1.2.1", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSExtra.git", - "reference": "746c3190ba8eb2f212087c947ba75f4f5b9a58d5" + "reference": "11d387c6642b6e4acaf0bd9bf5203b8cca1ec489" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/746c3190ba8eb2f212087c947ba75f4f5b9a58d5", - "reference": "746c3190ba8eb2f212087c947ba75f4f5b9a58d5", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/11d387c6642b6e4acaf0bd9bf5203b8cca1ec489", + "reference": "11d387c6642b6e4acaf0bd9bf5203b8cca1ec489", "shasum": "" }, "require": { "php": ">=5.4", - "phpcsstandards/phpcsutils": "^1.0.8", - "squizlabs/php_codesniffer": "^3.7.1" + "phpcsstandards/phpcsutils": "^1.0.9", + "squizlabs/php_codesniffer": "^3.8.0" }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0", "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcsstandards/phpcsdevcs": "^1.1.6", "phpcsstandards/phpcsdevtools": "^1.2.1", - "phpunit/phpunit": "^4.5 || ^5.0 || ^6.0 || ^7.0" + "phpunit/phpunit": "^4.5 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" }, "type": "phpcodesniffer-standard", "extra": { @@ -1484,28 +1484,43 @@ ], "support": { "issues": "https://github.com/PHPCSStandards/PHPCSExtra/issues", + "security": "https://github.com/PHPCSStandards/PHPCSExtra/security/policy", "source": "https://github.com/PHPCSStandards/PHPCSExtra" }, - "time": "2023-09-20T22:06:18+00:00" + "funding": [ + { + "url": "https://github.com/PHPCSStandards", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2023-12-08T16:49:07+00:00" }, { "name": "phpcsstandards/phpcsutils", - "version": "1.0.9", + "version": "1.0.11", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSUtils.git", - "reference": "908247bc65010c7b7541a9551e002db12e9dae70" + "reference": "c457da9dabb60eb7106dd5e3c05132b1a6539c6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/908247bc65010c7b7541a9551e002db12e9dae70", - "reference": "908247bc65010c7b7541a9551e002db12e9dae70", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/c457da9dabb60eb7106dd5e3c05132b1a6539c6a", + "reference": "c457da9dabb60eb7106dd5e3c05132b1a6539c6a", "shasum": "" }, "require": { "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7 || ^1.0", "php": ">=5.4", - "squizlabs/php_codesniffer": "^3.8.0 || 4.0.x-dev@dev" + "squizlabs/php_codesniffer": "^3.9.0 || 4.0.x-dev@dev" }, "require-dev": { "ext-filter": "*", @@ -1574,7 +1589,7 @@ "type": "open_collective" } ], - "time": "2023-12-08T14:50:00+00:00" + "time": "2024-04-24T11:47:18+00:00" }, { "name": "phpdocumentor/reflection-common", @@ -1753,16 +1768,16 @@ }, { "name": "phpstan/phpdoc-parser", - "version": "1.30.1", + "version": "1.32.0", "source": { "type": "git", "url": "https://github.com/phpstan/phpdoc-parser.git", - "reference": "51b95ec8670af41009e2b2b56873bad96682413e" + "reference": "6ca22b154efdd9e3c68c56f5d94670920a1c19a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/51b95ec8670af41009e2b2b56873bad96682413e", - "reference": "51b95ec8670af41009e2b2b56873bad96682413e", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/6ca22b154efdd9e3c68c56f5d94670920a1c19a4", + "reference": "6ca22b154efdd9e3c68c56f5d94670920a1c19a4", "shasum": "" }, "require": { @@ -1794,9 +1809,9 @@ "description": "PHPDoc parser with support for nullable, intersection and generic types", "support": { "issues": "https://github.com/phpstan/phpdoc-parser/issues", - "source": "https://github.com/phpstan/phpdoc-parser/tree/1.30.1" + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.32.0" }, - "time": "2024-09-07T20:13:05+00:00" + "time": "2024-09-26T07:23:32+00:00" }, { "name": "psr/container", @@ -1853,16 +1868,16 @@ }, { "name": "psr/log", - "version": "3.0.1", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "79dff0b268932c640297f5208d6298f71855c03e" + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/79dff0b268932c640297f5208d6298f71855c03e", - "reference": "79dff0b268932c640297f5208d6298f71855c03e", + "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", "shasum": "" }, "require": { @@ -1897,9 +1912,9 @@ "psr-3" ], "support": { - "source": "https://github.com/php-fig/log/tree/3.0.1" + "source": "https://github.com/php-fig/log/tree/3.0.2" }, - "time": "2024-08-21T13:31:24+00:00" + "time": "2024-09-11T13:17:53+00:00" }, { "name": "sabre/event", @@ -2081,16 +2096,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.8.1", + "version": "3.9.0", "source": { "type": "git", "url": "https://github.com/Automattic/PHP_CodeSniffer", - "reference": "4f6b463a07f12c38713e0c2ea21612a25cdc4d03" + "reference": "0ba28e73a426e908c0e910edc3924848ed263c56" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Automattic/PHP_CodeSniffer/zipball/4f6b463a07f12c38713e0c2ea21612a25cdc4d03", - "reference": "4f6b463a07f12c38713e0c2ea21612a25cdc4d03", + "url": "https://api.github.com/repos/Automattic/PHP_CodeSniffer/zipball/0ba28e73a426e908c0e910edc3924848ed263c56", + "reference": "0ba28e73a426e908c0e910edc3924848ed263c56", "shasum": "" }, "require": { @@ -2174,16 +2189,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -2247,7 +2262,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -2263,7 +2278,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2815,16 +2830,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -2882,7 +2897,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -2898,7 +2913,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "tysonandre/var_representation_polyfill", @@ -3022,16 +3037,16 @@ }, { "name": "wp-coding-standards/wpcs", - "version": "3.0.1", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress-Coding-Standards.git", - "reference": "b4caf9689f1a0e4a4c632679a44e638c1c67aff1" + "reference": "9333efcbff231f10dfd9c56bb7b65818b4733ca7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/b4caf9689f1a0e4a4c632679a44e638c1c67aff1", - "reference": "b4caf9689f1a0e4a4c632679a44e638c1c67aff1", + "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/9333efcbff231f10dfd9c56bb7b65818b4733ca7", + "reference": "9333efcbff231f10dfd9c56bb7b65818b4733ca7", "shasum": "" }, "require": { @@ -3040,16 +3055,16 @@ "ext-tokenizer": "*", "ext-xmlreader": "*", "php": ">=5.4", - "phpcsstandards/phpcsextra": "^1.1.0", - "phpcsstandards/phpcsutils": "^1.0.8", - "squizlabs/php_codesniffer": "^3.7.2" + "phpcsstandards/phpcsextra": "^1.2.1", + "phpcsstandards/phpcsutils": "^1.0.10", + "squizlabs/php_codesniffer": "^3.9.0" }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0.0", "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcompatibility/php-compatibility": "^9.0", "phpcsstandards/phpcsdevtools": "^1.2.0", - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" }, "suggest": { "ext-iconv": "For improved results", @@ -3080,11 +3095,11 @@ }, "funding": [ { - "url": "https://opencollective.com/thewpcc/contribute/wp-php-63406", + "url": "https://opencollective.com/php_codesniffer", "type": "custom" } ], - "time": "2023-09-14T07:06:09+00:00" + "time": "2024-03-25T16:39:00+00:00" } ], "aliases": [], @@ -3099,6 +3114,6 @@ "platform": { "ext-json": "*" }, - "platform-dev": [], + "platform-dev": {}, "plugin-api-version": "2.6.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1da82302f6c76..d20a403bb87c6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -122,32 +122,32 @@ importers: specifier: 11.5.15 version: 11.5.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/blob': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -168,17 +168,17 @@ importers: version: 7.1.2 devDependencies: '@storybook/addon-actions': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/blocks': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) '@storybook/preview-api': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/react': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) '@types/markdown-it': specifier: 14.1.2 version: 14.1.2 @@ -192,8 +192,8 @@ importers: specifier: 29.7.0 version: 29.7.0 storybook: - specifier: 8.2.9 - version: 8.2.9 + specifier: 8.3.5 + version: 8.3.5 typescript: specifier: 5.0.4 version: 5.0.4 @@ -216,8 +216,8 @@ importers: specifier: workspace:* version: link:../config '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 devDependencies: jest: specifier: 29.7.0 @@ -245,14 +245,14 @@ importers: projects/js-packages/base-styles: devDependencies: '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 projects/js-packages/boost-score-api: dependencies: '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 zod: specifier: 3.22.3 version: 3.22.3 @@ -294,32 +294,32 @@ importers: specifier: ^7 version: 7.24.7 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/notices': - specifier: 5.8.3 - version: 5.8.3(react@18.3.1) + specifier: 5.9.0 + version: 5.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -355,14 +355,14 @@ importers: specifier: 29.4.3 version: 29.4.3 '@storybook/addon-actions': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/blocks': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) '@storybook/react': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) '@testing-library/dom': specifier: 10.4.0 version: 10.4.0 @@ -406,8 +406,8 @@ importers: specifier: 1.5.1 version: 1.5.1 storybook: - specifier: 8.2.9 - version: 8.2.9 + specifier: 8.3.5 + version: 8.3.5 ts-dedent: specifier: 2.2.0 version: 2.2.0 @@ -448,26 +448,26 @@ importers: specifier: workspace:* version: link:../script-data '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -488,8 +488,8 @@ importers: specifier: 7.24.7 version: 7.24.7(@babel/core@7.24.7) '@storybook/addon-actions': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@testing-library/dom': specifier: 10.4.0 version: 10.4.0 @@ -515,8 +515,8 @@ importers: specifier: 18.3.1 version: 18.3.1(react@18.3.1) storybook: - specifier: 8.2.9 - version: 8.2.9 + specifier: 8.3.5 + version: 8.3.5 projects/js-packages/critical-css-gen: dependencies: @@ -547,13 +547,13 @@ importers: version: 2.3.8 '@types/node': specifier: ^20.4.2 - version: 20.16.5 + version: 20.16.10 express: - specifier: 4.20.0 - version: 4.20.0 + specifier: 4.21.1 + version: 4.21.1 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@20.16.5) + version: 29.7.0(@types/node@20.16.10) path-browserify: specifier: 1.0.1 version: 1.0.1 @@ -562,7 +562,7 @@ importers: version: 1.45.1 playwright-core: specifier: ^1.45.1 - version: 1.47.0 + version: 1.47.2 prettier: specifier: npm:wp-prettier@3.0.3 version: wp-prettier@3.0.3 @@ -623,8 +623,8 @@ importers: version: 7.5.2 devDependencies: '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 eslint: specifier: 8.57.0 version: 8.57.0 @@ -667,11 +667,11 @@ importers: version: 4.3.4 devDependencies: '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.8.3 - version: 6.8.3(webpack@5.94.0(webpack-cli@4.9.1)) + specifier: 6.9.0 + version: 6.9.0(webpack@5.94.0(webpack-cli@4.9.1)) '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 jest: specifier: 29.7.0 version: 29.7.0 @@ -697,26 +697,26 @@ importers: specifier: workspace:* version: link:../components '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 prop-types: specifier: ^15.7.2 version: 15.8.1 @@ -827,20 +827,20 @@ importers: specifier: workspace:* version: link:../components '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -873,8 +873,8 @@ importers: specifier: 14.5.2 version: 14.5.2(@testing-library/dom@10.4.0) '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.8.1 - version: 5.8.1(@babel/core@7.24.7) + specifier: 5.9.0 + version: 5.9.0(@babel/core@7.24.7) babel-jest: specifier: 29.7.0 version: 29.7.0(@babel/core@7.24.7) @@ -900,8 +900,8 @@ importers: specifier: workspace:* version: link:../connection '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -931,11 +931,11 @@ importers: specifier: 14.5.2 version: 14.5.2(@testing-library/dom@10.4.0) '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) jest: specifier: 29.7.0 version: 29.7.0 @@ -973,62 +973,62 @@ importers: specifier: 1.0.2 version: 1.0.2 '@automattic/social-previews': - specifier: 2.1.0-beta.6 - version: 2.1.0-beta.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 2.1.0-beta.8 + version: 2.1.0-beta.8(@babel/runtime@7.24.7)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/annotations': - specifier: 3.8.3 - version: 3.8.3(react@18.3.1) + specifier: 3.9.0 + version: 3.9.0(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/blocks': - specifier: 13.8.4 - version: 13.8.4(react@18.3.1) + specifier: 13.9.0 + version: 13.9.0(react@18.3.1) '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/dataviews': - specifier: 4.4.4 - version: 4.4.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 4.5.0 + version: 4.5.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/edit-post': - specifier: 8.8.6 - version: 8.8.6(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 8.9.0 + version: 8.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/editor': - specifier: 14.8.6 - version: 14.8.6(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.9.0 + version: 14.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/hooks': - specifier: 4.8.2 - version: 4.8.2 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/html-entities': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/media-utils': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/notices': - specifier: 5.8.3 - version: 5.8.3(react@18.3.1) + specifier: 5.9.0 + version: 5.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -1082,11 +1082,11 @@ importers: specifier: 13.6.8 version: 13.6.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.8.1 - version: 5.8.1(@babel/core@7.24.7) + specifier: 5.9.0 + version: 5.9.0(@babel/core@7.24.7) '@wordpress/core-data': - specifier: 7.8.4 - version: 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(@types/react@18.3.3)(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.24.7) @@ -1164,17 +1164,17 @@ importers: specifier: workspace:* version: link:../shared-extension-utils '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 debug: specifier: 4.3.4 version: 4.3.4 @@ -1198,14 +1198,14 @@ importers: specifier: 29.7.0 version: 29.7.0 '@storybook/addon-actions': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/blocks': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) '@storybook/react': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) '@testing-library/dom': specifier: 10.4.0 version: 10.4.0 @@ -1219,8 +1219,8 @@ importers: specifier: 18.3.3 version: 18.3.3 '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.8.1 - version: 5.8.1(@babel/core@7.24.7) + specifier: 5.9.0 + version: 5.9.0(@babel/core@7.24.7) babel-jest: specifier: 29.7.0 version: 29.7.0(@babel/core@7.24.7) @@ -1231,8 +1231,8 @@ importers: specifier: 29.7.0 version: 29.7.0 storybook: - specifier: 8.2.9 - version: 8.2.9 + specifier: 8.3.5 + version: 8.3.5 typescript: specifier: 5.0.4 version: 5.0.4 @@ -1251,26 +1251,26 @@ importers: specifier: workspace:* version: link:../connection '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/plugins': - specifier: 7.8.4 - version: 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 lodash: specifier: 4.17.21 version: 4.17.21 @@ -1297,8 +1297,8 @@ importers: specifier: 14.5.2 version: 14.5.2(@testing-library/dom@10.4.0) '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.8.1 - version: 5.8.1(@babel/core@7.24.7) + specifier: 5.9.0 + version: 5.9.0(@babel/core@7.24.7) babel-jest: specifier: 29.3.1 version: 29.3.1(@babel/core@7.24.7) @@ -1364,8 +1364,8 @@ importers: projects/js-packages/storybook: dependencies: '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 devDependencies: '@automattic/jetpack-components': specifier: workspace:* @@ -1389,68 +1389,68 @@ importers: specifier: 1.45.1 version: 1.45.1 '@storybook/addon-a11y': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/addon-docs': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/addon-essentials': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/addon-storysource': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/addon-webpack5-compiler-babel': specifier: ^3.0.3 version: 3.0.3(webpack@5.94.0(webpack-cli@4.9.1)) '@storybook/blocks': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) '@storybook/components': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/manager-api': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/react': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) '@storybook/react-webpack5': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0)) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0)) '@storybook/source-loader': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/test-runner': specifier: 0.19.1 - version: 0.19.1(storybook@8.2.9) + version: 0.19.1(storybook@8.3.5) '@storybook/theming': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@wordpress/babel-preset-default': - specifier: 8.8.2 - version: 8.8.2 + specifier: 8.9.0 + version: 8.9.0 '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/block-library': - specifier: 9.8.5 - version: 9.8.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 9.9.0 + version: 9.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/format-library': - specifier: 5.8.4 - version: 5.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 5.9.0 + version: 5.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/postcss-plugins-preset': - specifier: 5.8.1 - version: 5.8.1(postcss@8.4.31) + specifier: 5.9.0 + version: 5.9.0(postcss@8.4.31) allure-playwright: specifier: 2.9.2 version: 2.9.2 @@ -1497,8 +1497,8 @@ importers: specifier: 12.4.0 version: 12.4.0(sass@1.64.1)(webpack@5.94.0(webpack-cli@4.9.1)) storybook: - specifier: 8.2.9 - version: 8.2.9 + specifier: 8.3.5 + version: 8.3.5 storybook-addon-mock: specifier: 5.0.0 version: 5.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -1620,17 +1620,23 @@ importers: specifier: 2.3.0 version: 2.3.0(webpack@5.94.0(webpack-cli@4.9.1)) '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.8.3 - version: 6.8.3(webpack@5.94.0(webpack-cli@4.9.1)) + specifier: 6.9.0 + version: 6.9.0(webpack@5.94.0(webpack-cli@4.9.1)) babel-loader: specifier: 9.1.2 version: 9.1.2(@babel/core@7.24.7)(webpack@5.94.0(webpack-cli@4.9.1)) + babel-plugin-polyfill-corejs3: + specifier: 0.10.6 + version: 0.10.6(@babel/core@7.24.7) browserslist: specifier: 4.23.1 version: 4.23.1 + core-js: + specifier: 3.38.1 + version: 3.38.1 css-loader: specifier: 6.5.1 version: 6.5.1(webpack@5.94.0(webpack-cli@4.9.1)) @@ -1681,8 +1687,8 @@ importers: specifier: workspace:* version: link:../../js-packages/webpack-config '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 jest: specifier: 29.7.0 version: 29.7.0 @@ -1714,23 +1720,23 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 prop-types: specifier: ^15.8.1 version: 15.8.1 @@ -1766,8 +1772,8 @@ importers: specifier: 14.5.2 version: 14.5.2(@testing-library/dom@10.4.0) '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -1802,29 +1808,29 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/plugins': - specifier: 7.8.4 - version: 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: specifier: 18.3.1 version: 18.3.1 @@ -1845,8 +1851,8 @@ importers: specifier: 7.24.7 version: 7.24.7 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 sass: specifier: 1.64.1 version: 1.64.1 @@ -1872,8 +1878,8 @@ importers: specifier: workspace:* version: link:../../js-packages/webpack-config '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 sass: specifier: 1.64.1 version: 1.64.1 @@ -1904,11 +1910,8 @@ importers: specifier: 2.1.1 version: 2.1.1(postcss@8.4.31) '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 - '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.8.3 - version: 6.8.3(webpack@5.94.0(webpack-cli@4.9.1)) + specifier: 6.9.0 + version: 6.9.0 autoprefixer: specifier: 10.4.14 version: 10.4.14(postcss@8.4.31) @@ -1943,11 +1946,11 @@ importers: specifier: workspace:* version: link:../../js-packages/idc '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.2.0) + specifier: 10.9.0 + version: 10.9.0(react@18.2.0) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 devDependencies: '@automattic/jetpack-webpack-config': specifier: workspace:* @@ -1962,8 +1965,8 @@ importers: specifier: 7.24.7 version: 7.24.7 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 glob: specifier: 10.4.1 version: 10.4.1 @@ -1995,14 +1998,14 @@ importers: specifier: 0.1.1 version: 0.1.1 '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 cookie: - specifier: 0.4.1 - version: 0.4.1 + specifier: 0.7.0 + version: 0.7.0 qs: specifier: 6.12.1 version: 6.12.1 @@ -2018,13 +2021,13 @@ importers: version: 0.6.0 '@types/node': specifier: ^20.4.2 - version: 20.16.5 + version: 20.16.10 '@types/qs': specifier: 6.9.15 version: 6.9.15 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@20.16.5) + version: 29.7.0(@types/node@20.16.10) typescript: specifier: 5.0.4 version: 5.0.4 @@ -2047,32 +2050,32 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/blocks': - specifier: 13.8.4 - version: 13.8.4(react@18.3.1) + specifier: 13.9.0 + version: 13.9.0(react@18.3.1) '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/core-data': - specifier: 7.8.4 - version: 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/hooks': - specifier: 4.8.2 - version: 4.8.2 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -2145,20 +2148,20 @@ importers: specifier: 10.4.0 version: 10.4.0 '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.8.1 - version: 5.8.1(@babel/core@7.24.7) + specifier: 5.9.0 + version: 5.9.0(@babel/core@7.24.7) '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 autoprefixer: specifier: 10.4.14 version: 10.4.14(postcss@8.4.31) @@ -2213,7 +2216,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.0)(@types/react@18.3.3)(@wordpress/data@10.8.3(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(@types/react-dom@18.3.0)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1) '@automattic/typography': specifier: 1.0.0 version: 1.0.0 @@ -2230,44 +2233,44 @@ importers: specifier: ^5.15.5 version: 5.20.5(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/blocks': - specifier: 13.8.4 - version: 13.8.4(react@18.3.1) + specifier: 13.9.0 + version: 13.9.0(react@18.3.1) '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/dom-ready': specifier: ^4.8.1 - version: 4.8.1 + version: 4.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/hooks': - specifier: 4.8.2 - version: 4.8.2 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/plugins': - specifier: 7.8.4 - version: 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/private-apis': specifier: ^1.8.1 - version: 1.8.1 + version: 1.9.0 '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -2317,7 +2320,7 @@ importers: version: 1.45.1 '@types/node': specifier: ^20.4.2 - version: 20.16.5 + version: 20.16.10 '@types/react': specifier: ^18.2.28 version: 18.3.3 @@ -2352,8 +2355,8 @@ importers: specifier: workspace:* version: link:../../js-packages/webpack-config '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 sass: specifier: 1.64.1 version: 1.64.1 @@ -2392,11 +2395,8 @@ importers: specifier: 2.1.1 version: 2.1.1(postcss@8.4.31) '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 - '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.8.3 - version: 6.8.3(webpack@5.94.0(webpack-cli@4.9.1)) + specifier: 6.9.0 + version: 6.9.0 autoprefixer: specifier: 10.4.14 version: 10.4.14(postcss@8.4.31) @@ -2455,32 +2455,32 @@ importers: specifier: 5.20.5 version: 5.20.5(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -2510,8 +2510,8 @@ importers: specifier: 29.7.0 version: 29.7.0 '@storybook/react': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)))(typescript@5.0.4) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) '@testing-library/dom': specifier: 10.4.0 version: 10.4.0 @@ -2552,8 +2552,8 @@ importers: specifier: 12.4.0 version: 12.4.0(sass@1.64.1)(webpack@5.94.0(webpack-cli@4.9.1)) storybook: - specifier: 8.2.9 - version: 8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)) + specifier: 8.3.5 + version: 8.3.5 typescript: specifier: 5.0.4 version: 5.0.4 @@ -2600,15 +2600,15 @@ importers: specifier: workspace:* version: link:../../js-packages/analytics '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 devDependencies: '@automattic/jetpack-webpack-config': specifier: workspace:* version: link:../../js-packages/webpack-config '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -2646,23 +2646,23 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -2746,14 +2746,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.8.1 - version: 5.8.1(@babel/core@7.24.7) + specifier: 5.9.0 + version: 5.9.0(@babel/core@7.24.7) '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.8.3 - version: 6.8.3(webpack@5.94.0(webpack-cli@4.9.1)) + specifier: 6.9.0 + version: 6.9.0(webpack@5.94.0(webpack-cli@4.9.1)) autoprefixer: specifier: 10.4.14 version: 10.4.14(postcss@8.4.31) @@ -2825,53 +2825,53 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/blob': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/blocks': - specifier: 13.8.4 - version: 13.8.4(react@18.3.1) + specifier: 13.9.0 + version: 13.9.0(react@18.3.1) '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/core-data': - specifier: 7.8.4 - version: 7.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/dom-ready': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/editor': - specifier: 14.8.6 - version: 14.8.6(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.9.0 + version: 14.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/html-entities': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -2913,17 +2913,17 @@ importers: specifier: 29.4.3 version: 29.4.3 '@storybook/addon-actions': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/blocks': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) '@storybook/preview-api': - specifier: 8.2.9 - version: 8.2.9(storybook@8.2.9) + specifier: 8.3.5 + version: 8.3.5(storybook@8.3.5) '@storybook/react': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) '@testing-library/dom': specifier: 10.4.0 version: 10.4.0 @@ -2940,8 +2940,8 @@ importers: specifier: 18.3.0 version: 18.3.0 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 autoprefixer: specifier: 10.4.14 version: 10.4.14(postcss@8.4.31) @@ -2973,8 +2973,8 @@ importers: specifier: 12.4.0 version: 12.4.0(sass@1.64.1)(webpack@5.94.0(webpack-cli@4.9.1)) storybook: - specifier: 8.2.9 - version: 8.2.9 + specifier: 8.3.5 + version: 8.3.5 typescript: specifier: 5.0.4 version: 5.0.4 @@ -3003,23 +3003,23 @@ importers: specifier: workspace:* version: link:../../js-packages/components '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) chart.js: specifier: 3.7.1 version: 3.7.1 @@ -3100,14 +3100,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.8.1 - version: 5.8.1(@babel/core@7.24.7) + specifier: 5.9.0 + version: 5.9.0(@babel/core@7.24.7) '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 - '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.8.3 - version: 6.8.3(webpack@5.94.0(webpack-cli@4.9.1)) + specifier: 6.9.0 + version: 6.9.0 babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.24.7) @@ -3150,23 +3147,23 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/edit-post': - specifier: 8.8.6 - version: 8.8.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 8.9.0 + version: 8.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/plugins': - specifier: 7.8.4 - version: 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.9.0 + version: 7.9.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) @@ -3190,8 +3187,8 @@ importers: specifier: 7.24.7 version: 7.24.7 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 sass: specifier: 1.64.1 version: 1.64.1 @@ -3223,17 +3220,17 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -3263,8 +3260,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.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.24.7) @@ -3329,11 +3326,11 @@ importers: specifier: 5.3.3 version: 5.3.3 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -3387,8 +3384,8 @@ importers: specifier: 7.24.7 version: 7.24.7(@babel/core@7.24.7) '@storybook/react': - specifier: 8.2.9 - version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)))(typescript@5.0.4) + specifier: 8.3.5 + version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) '@types/jest': specifier: 29.5.12 version: 29.5.12 @@ -3396,11 +3393,11 @@ importers: specifier: 3.5.30 version: 3.5.30 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -3435,8 +3432,8 @@ importers: specifier: 12.4.0 version: 12.4.0(sass@1.64.1)(webpack@5.94.0(webpack-cli@4.9.1)) storybook: - specifier: 8.2.9 - version: 8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)) + specifier: 8.3.5 + version: 8.3.5 tslib: specifier: 2.5.0 version: 2.5.0 @@ -3477,17 +3474,17 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 react: specifier: 18.3.1 version: 18.3.1 @@ -3514,8 +3511,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.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.24.7) @@ -3571,26 +3568,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.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -3693,8 +3690,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.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 postcss: specifier: 8.4.31 version: 8.4.31 @@ -3777,8 +3774,8 @@ importers: specifier: 1.0.0 version: 1.0.0 '@automattic/social-previews': - specifier: 2.1.0-beta.6 - version: 2.1.0-beta.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 2.1.0-beta.8 + version: 2.1.0-beta.8(@babel/runtime@7.24.7)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@automattic/viewport': specifier: 1.0.0 version: 1.0.0 @@ -3786,59 +3783,59 @@ importers: specifier: 2.0.1 version: 2.0.1 '@wordpress/base-styles': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/block-editor': - specifier: 14.3.4 - version: 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.4.0 + version: 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/blocks': - specifier: 13.8.4 - version: 13.8.4(react@18.3.1) + specifier: 13.9.0 + version: 13.9.0(react@18.3.1) '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/compose': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/edit-post': - specifier: 8.8.6 - version: 8.8.6(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 8.9.0 + version: 8.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/hooks': - specifier: 4.8.2 - version: 4.8.2 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/primitives': - specifier: 4.8.1 - version: 4.8.1(react@18.3.1) + specifier: 4.9.0 + version: 4.9.0(react@18.3.1) '@wordpress/rich-text': - specifier: 7.8.3 - version: 7.8.3(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(react@18.3.1) '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/viewport': - specifier: 6.8.3 - version: 6.8.3(react@18.3.1) + specifier: 6.9.0 + version: 6.9.0(react@18.3.1) '@wordpress/widgets': - specifier: 4.8.4 - version: 4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 4.9.0 + version: 4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/wordcount': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 bounding-client-rect: specifier: 1.0.5 version: 1.0.5 @@ -3852,8 +3849,8 @@ importers: specifier: 0.0.2 version: 0.0.2 cookie: - specifier: 0.4.1 - version: 0.4.1 + specifier: 0.7.0 + version: 0.7.0 copy-webpack-plugin: specifier: 11.0.0 version: 11.0.0(webpack@5.94.0(webpack-cli@4.9.1)) @@ -4007,41 +4004,41 @@ importers: specifier: 13.6.8 version: 13.6.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.8.1 - version: 5.8.1(@babel/core@7.24.7) + specifier: 5.9.0 + version: 5.9.0(@babel/core@7.24.7) '@wordpress/blob': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/block-serialization-default-parser': - specifier: 5.8.1 - version: 5.8.1 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/core-data': - specifier: 7.8.4 - version: 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.9.0 + version: 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/dom-ready': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/editor': - specifier: 14.8.6 - version: 14.8.6(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.9.0 + version: 14.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/escape-html': - specifier: 3.8.1 - version: 3.8.1 + specifier: 3.9.0 + version: 3.9.0 '@wordpress/keycodes': - specifier: 4.8.2 - version: 4.8.2 + specifier: 4.9.0 + version: 4.9.0 '@wordpress/notices': - specifier: 5.8.3 - version: 5.8.3(react@18.3.1) + specifier: 5.9.0 + version: 5.9.0(react@18.3.1) '@wordpress/token-list': - specifier: 3.8.1 - version: 3.8.1 + specifier: 3.9.0 + version: 3.9.0 autoprefixer: specifier: 10.4.14 version: 10.4.14(postcss@8.4.31) @@ -4124,20 +4121,20 @@ importers: specifier: 1.0.0 version: 1.0.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 react: specifier: 18.3.1 version: 18.3.1 @@ -4158,8 +4155,8 @@ importers: specifier: 7.24.7 version: 7.24.7 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -4214,38 +4211,35 @@ 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.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/url': - specifier: 4.8.1 - version: 4.8.1 + specifier: 4.9.0 + version: 4.9.0 camelize: specifier: 1.0.1 version: 1.0.1 clsx: specifier: 2.1.1 version: 2.1.1 - diff: - specifier: ^4.0.2 - version: 4.0.2 moment: specifier: 2.29.4 version: 2.29.4 @@ -4278,8 +4272,8 @@ importers: specifier: 18.3.3 version: 18.3.3 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -4330,30 +4324,33 @@ importers: '@automattic/jetpack-publicize-components': specifier: workspace:* version: link:../../js-packages/publicize-components + '@automattic/jetpack-script-data': + specifier: workspace:* + version: link:../../js-packages/script-data '@automattic/jetpack-shared-extension-utils': specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/api-fetch': - specifier: 7.8.2 - version: 7.8.2 + specifier: 7.9.0 + version: 7.9.0 '@wordpress/components': - specifier: 28.8.4 - version: 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 28.9.0 + version: 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/icons': - specifier: 10.8.2 - version: 10.8.2(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -4398,8 +4395,8 @@ importers: specifier: 18.3.0 version: 18.3.0 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 autoprefixer: specifier: 10.4.14 version: 10.4.14(postcss@8.4.31) @@ -4464,17 +4461,17 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 react: specifier: 18.3.1 version: 18.3.1 @@ -4501,8 +4498,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.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.24.7) @@ -4584,17 +4581,17 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/data': - specifier: 10.8.3 - version: 10.8.3(react@18.3.1) + specifier: 10.9.0 + version: 10.9.0(react@18.3.1) '@wordpress/date': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 '@wordpress/element': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 '@wordpress/i18n': - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.9.0 + version: 5.9.0 react: specifier: 18.3.1 version: 18.3.1 @@ -4615,8 +4612,8 @@ importers: specifier: 7.24.7 version: 7.24.7 '@wordpress/browserslist-config': - specifier: 6.8.1 - version: 6.8.1 + specifier: 6.9.0 + version: 6.9.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -4658,7 +4655,7 @@ importers: version: 7.24.7(@babel/core@7.24.7) '@wordpress/babel-preset-default': specifier: ^8.8.2 - version: 8.8.2 + version: 8.9.0 babel-jest: specifier: ^29.7.0 version: 29.7.0(@babel/core@7.24.7) @@ -4762,6 +4759,9 @@ importers: '@slack/web-api': specifier: 7.3.2 version: 7.3.2 + '@types/lodash-es': + specifier: 4.17.12 + version: 4.17.12 allure-playwright: specifier: 2.9.2 version: 2.9.2 @@ -4777,7 +4777,7 @@ importers: localtunnel: specifier: 2.0.2 version: 2.0.2 - lodash: + lodash-es: specifier: 4.17.21 version: 4.17.21 node-fetch: @@ -4832,11 +4832,11 @@ importers: specifier: 6.21.0 version: 6.21.0(eslint@8.57.0)(typescript@5.0.4) '@wordpress/eslint-plugin': - specifier: 21.1.2 - version: 21.1.2(2g4wiqq3ubewvaaot6et2pay5m) + specifier: 21.2.0 + version: 21.2.0(2g4wiqq3ubewvaaot6et2pay5m) '@wordpress/jest-console': - specifier: 8.8.1 - version: 8.8.1(jest@29.7.0) + specifier: 8.9.0 + version: 8.9.0(jest@29.7.0) babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.24.7) @@ -4958,17 +4958,17 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - '@ariakit/core@0.4.10': - resolution: {integrity: sha512-mX3EabQbfVh5uTjsTJ3+gjj7KGdTNhIN0qZHJd5Z2iPUnKl9NBy23Lgu6PEskpVsKAZ3proirjguD7U9fKMs/A==} + '@ariakit/core@0.4.11': + resolution: {integrity: sha512-4kUYG/ztOvosMmmkVv1Q5anuXHsGnJGrWzHWW2JMFgOX93xsrfEfQcAcbMHkL8ijJgMmvPKUr6ajGl/QdpKlWg==} - '@ariakit/react-core@0.4.11': - resolution: {integrity: sha512-i6KedWhjZkNC7tMEKO0eNjjq2HRPiHyGaBS2x2VaWwzBepoYtjyvxRXyqLJ3gaiNdlwckN1TZsRDfD+viy13IQ==} + '@ariakit/react-core@0.4.12': + resolution: {integrity: sha512-vBES1zlqvtW97IzmzxjDynBCAA97/z/ZeZDt2eN+kfVU8qrKExVdr7lU8ZDjC0rXidWF8aplybuyjnE1w5TACg==} peerDependencies: react: ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 - '@ariakit/react@0.4.11': - resolution: {integrity: sha512-nLpPrmNcspqNhk4o+epsgeZfP1+Fkh4uIzNe5yrFkXolRkqHGKAxl4Hi82e0yxIBUbYbZIEwsZQQVceF1L6xrw==} + '@ariakit/react@0.4.12': + resolution: {integrity: sha512-d9WsuCH85ARfQHT6vTzdYLStAPQQbmk950FsOts43oPUgAb/rhtu2A3pqoX4bxVqN+h2ER+m3n2fvD/g+k8JkQ==} peerDependencies: react: ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -5016,12 +5016,12 @@ packages: '@automattic/request-external-access@1.0.0': resolution: {integrity: sha512-vhN72lwPFzhCVMP1l2ODBqt7fI5jfeJz1JyBnq/AUCg9PpsJfdk4vZxhSOLhSSds8VMkU5WaNnaztkYfkkYOiA==} - '@automattic/social-previews@2.1.0-beta.6': - resolution: {integrity: sha512-QSCzV+qm7v7ZssB8m54EZzvKl8YPFIN2hOxf5r/Jva5m8RN5pg3fIerE3lfTBQJlpChmRlqcxRvQc/1L4tnJrg==} + '@automattic/social-previews@2.1.0-beta.8': + resolution: {integrity: sha512-DakeRnV8JUhi8eD2Ft3HhrPPSnMgWnQDb0K/fuhrolNNbl/gVNng1gAF8Y8WrpGRVN5h0xdVhuszJeG6r4RotA==} peerDependencies: '@babel/runtime': ^7.24.5 - react: ^18.2.0 - react-dom: ^18.2.0 + react: ^18.3.1 + react-dom: ^18.3.1 peerDependenciesMeta: '@babel/runtime': optional: true @@ -5037,16 +5037,16 @@ packages: peerDependencies: webpack: ^5.68.0 - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} + '@babel/code-frame@7.25.7': + resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==} engines: {node: '>=6.9.0'} '@babel/compat-data@7.24.7': resolution: {integrity: sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.25.4': - resolution: {integrity: sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==} + '@babel/compat-data@7.25.7': + resolution: {integrity: sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==} engines: {node: '>=6.9.0'} '@babel/core@7.24.7': @@ -5060,34 +5060,34 @@ packages: '@babel/core': ^7.11.0 eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 - '@babel/generator@7.25.6': - resolution: {integrity: sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==} + '@babel/generator@7.25.7': + resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==} engines: {node: '>=6.9.0'} - '@babel/helper-annotate-as-pure@7.24.7': - resolution: {integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==} + '@babel/helper-annotate-as-pure@7.25.7': + resolution: {integrity: sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==} engines: {node: '>=6.9.0'} - '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': - resolution: {integrity: sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==} + '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7': + resolution: {integrity: sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg==} engines: {node: '>=6.9.0'} '@babel/helper-compilation-targets@7.24.7': resolution: {integrity: sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.2': - resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} + '@babel/helper-compilation-targets@7.25.7': + resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==} engines: {node: '>=6.9.0'} - '@babel/helper-create-class-features-plugin@7.25.4': - resolution: {integrity: sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ==} + '@babel/helper-create-class-features-plugin@7.25.7': + resolution: {integrity: sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.25.2': - resolution: {integrity: sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g==} + '@babel/helper-create-regexp-features-plugin@7.25.7': + resolution: {integrity: sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -5097,97 +5097,97 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - '@babel/helper-member-expression-to-functions@7.24.8': - resolution: {integrity: sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==} + '@babel/helper-member-expression-to-functions@7.25.7': + resolution: {integrity: sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==} engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} + '@babel/helper-module-imports@7.25.7': + resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.25.2': - resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} + '@babel/helper-module-transforms@7.25.7': + resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-optimise-call-expression@7.24.7': - resolution: {integrity: sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==} + '@babel/helper-optimise-call-expression@7.25.7': + resolution: {integrity: sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==} engines: {node: '>=6.9.0'} - '@babel/helper-plugin-utils@7.24.8': - resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} + '@babel/helper-plugin-utils@7.25.7': + resolution: {integrity: sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==} engines: {node: '>=6.9.0'} - '@babel/helper-remap-async-to-generator@7.25.0': - resolution: {integrity: sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw==} + '@babel/helper-remap-async-to-generator@7.25.7': + resolution: {integrity: sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.25.0': - resolution: {integrity: sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==} + '@babel/helper-replace-supers@7.25.7': + resolution: {integrity: sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} + '@babel/helper-simple-access@7.25.7': + resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==} engines: {node: '>=6.9.0'} - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': - resolution: {integrity: sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==} + '@babel/helper-skip-transparent-expression-wrappers@7.25.7': + resolution: {integrity: sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==} engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.24.8': - resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} + '@babel/helper-string-parser@7.25.7': + resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.24.7': - resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} + '@babel/helper-validator-identifier@7.25.7': + resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.8': - resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} + '@babel/helper-validator-option@7.25.7': + resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==} engines: {node: '>=6.9.0'} - '@babel/helper-wrap-function@7.25.0': - resolution: {integrity: sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ==} + '@babel/helper-wrap-function@7.25.7': + resolution: {integrity: sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.25.6': - resolution: {integrity: sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==} + '@babel/helpers@7.25.7': + resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==} engines: {node: '>=6.9.0'} - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} + '@babel/highlight@7.25.7': + resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.25.6': - resolution: {integrity: sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==} + '@babel/parser@7.25.7': + resolution: {integrity: sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3': - resolution: {integrity: sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA==} + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7': + resolution: {integrity: sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0': - resolution: {integrity: sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA==} + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7': + resolution: {integrity: sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7': - resolution: {integrity: sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==} + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7': + resolution: {integrity: sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0': - resolution: {integrity: sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw==} + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7': + resolution: {integrity: sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -5229,20 +5229,14 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-flow@7.24.7': - resolution: {integrity: sha512-9G8GYT/dxn/D1IIKOUBmGX0mnmj46mGH9NnZyJLwtCpgh5f7D2VbuKodb+2s9m1Yavh1s7ASQN8lf0eqrb1LTw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-assertions@7.25.6': - resolution: {integrity: sha512-aABl0jHw9bZ2karQ/uUD6XP4u0SG22SJrOHFoL6XB1R7dTovOP4TzTlsxOYC5yQ1pdscVK2JTUnF6QL3ARoAiQ==} + '@babel/plugin-syntax-import-assertions@7.25.7': + resolution: {integrity: sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-attributes@7.25.6': - resolution: {integrity: sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ==} + '@babel/plugin-syntax-import-attributes@7.25.7': + resolution: {integrity: sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -5263,6 +5257,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-jsx@7.25.7': + resolution: {integrity: sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-logical-assignment-operators@7.10.4': resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: @@ -5305,8 +5305,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-typescript@7.25.4': - resolution: {integrity: sha512-uMOCoHVU52BsSWxPOMVv5qKRdeSlPuImUCB2dlPuBSU+W2/ROE7/Zg8F2Kepbk+8yBa68LlRKxO+xgEVWorsDg==} + '@babel/plugin-syntax-typescript@7.25.7': + resolution: {integrity: sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -5317,248 +5317,242 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-arrow-functions@7.24.7': - resolution: {integrity: sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==} + '@babel/plugin-transform-arrow-functions@7.25.7': + resolution: {integrity: sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.25.4': - resolution: {integrity: sha512-jz8cV2XDDTqjKPwVPJBIjORVEmSGYhdRa8e5k5+vN+uwcjSrSxUaebBRa4ko1jqNF2uxyg8G6XYk30Jv285xzg==} + '@babel/plugin-transform-async-generator-functions@7.25.7': + resolution: {integrity: sha512-4B6OhTrwYKHYYgcwErvZjbmH9X5TxQBsaBHdzEIB4l71gR5jh/tuHGlb9in47udL2+wVUcOz5XXhhfhVJwEpEg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-to-generator@7.24.7': - resolution: {integrity: sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==} + '@babel/plugin-transform-async-to-generator@7.25.7': + resolution: {integrity: sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoped-functions@7.24.7': - resolution: {integrity: sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==} + '@babel/plugin-transform-block-scoped-functions@7.25.7': + resolution: {integrity: sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoping@7.25.0': - resolution: {integrity: sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ==} + '@babel/plugin-transform-block-scoping@7.25.7': + resolution: {integrity: sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-properties@7.25.4': - resolution: {integrity: sha512-nZeZHyCWPfjkdU5pA/uHiTaDAFUEqkpzf1YoQT2NeSynCGYq9rxfyI3XpQbfx/a0hSnFH6TGlEXvae5Vi7GD8g==} + '@babel/plugin-transform-class-properties@7.25.7': + resolution: {integrity: sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-static-block@7.24.7': - resolution: {integrity: sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==} + '@babel/plugin-transform-class-static-block@7.25.7': + resolution: {integrity: sha512-rvUUtoVlkDWtDWxGAiiQj0aNktTPn3eFynBcMC2IhsXweehwgdI9ODe+XjWw515kEmv22sSOTp/rxIRuTiB7zg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 - '@babel/plugin-transform-classes@7.25.4': - resolution: {integrity: sha512-oexUfaQle2pF/b6E0dwsxQtAol9TLSO88kQvym6HHBWFliV2lGdrPieX+WgMRLSJDVzdYywk7jXbLPuO2KLTLg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-computed-properties@7.24.7': - resolution: {integrity: sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==} + '@babel/plugin-transform-classes@7.25.7': + resolution: {integrity: sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-destructuring@7.24.8': - resolution: {integrity: sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ==} + '@babel/plugin-transform-computed-properties@7.25.7': + resolution: {integrity: sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dotall-regex@7.24.7': - resolution: {integrity: sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==} + '@babel/plugin-transform-destructuring@7.25.7': + resolution: {integrity: sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-duplicate-keys@7.24.7': - resolution: {integrity: sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==} + '@babel/plugin-transform-dotall-regex@7.25.7': + resolution: {integrity: sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dynamic-import@7.24.7': - resolution: {integrity: sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==} + '@babel/plugin-transform-duplicate-keys@7.25.7': + resolution: {integrity: sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-exponentiation-operator@7.24.7': - resolution: {integrity: sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==} + '@babel/plugin-transform-dynamic-import@7.25.7': + resolution: {integrity: sha512-UvcLuual4h7/GfylKm2IAA3aph9rwvAM2XBA0uPKU3lca+Maai4jBjjEVUS568ld6kJcgbouuumCBhMd/Yz17w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-export-namespace-from@7.24.7': - resolution: {integrity: sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==} + '@babel/plugin-transform-exponentiation-operator@7.25.7': + resolution: {integrity: sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-flow-strip-types@7.25.2': - resolution: {integrity: sha512-InBZ0O8tew5V0K6cHcQ+wgxlrjOw1W4wDXLkOTjLRD8GYhTSkxTVBtdy3MMtvYBrbAWa1Qm3hNoTc1620Yj+Mg==} + '@babel/plugin-transform-export-namespace-from@7.25.7': + resolution: {integrity: sha512-h3MDAP5l34NQkkNulsTNyjdaR+OiB0Im67VU//sFupouP8Q6m9Spy7l66DcaAQxtmCqGdanPByLsnwFttxKISQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-for-of@7.24.7': - resolution: {integrity: sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g==} + '@babel/plugin-transform-for-of@7.25.7': + resolution: {integrity: sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-function-name@7.25.1': - resolution: {integrity: sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA==} + '@babel/plugin-transform-function-name@7.25.7': + resolution: {integrity: sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-json-strings@7.24.7': - resolution: {integrity: sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==} + '@babel/plugin-transform-json-strings@7.25.7': + resolution: {integrity: sha512-Ot43PrL9TEAiCe8C/2erAjXMeVSnE/BLEx6eyrKLNFCCw5jvhTHKyHxdI1pA0kz5njZRYAnMO2KObGqOCRDYSA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-literals@7.25.2': - resolution: {integrity: sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw==} + '@babel/plugin-transform-literals@7.25.7': + resolution: {integrity: sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-logical-assignment-operators@7.24.7': - resolution: {integrity: sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==} + '@babel/plugin-transform-logical-assignment-operators@7.25.7': + resolution: {integrity: sha512-iImzbA55BjiovLyG2bggWS+V+OLkaBorNvc/yJoeeDQGztknRnDdYfp2d/UPmunZYEnZi6Lg8QcTmNMHOB0lGA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-member-expression-literals@7.24.7': - resolution: {integrity: sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==} + '@babel/plugin-transform-member-expression-literals@7.25.7': + resolution: {integrity: sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-amd@7.24.7': - resolution: {integrity: sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==} + '@babel/plugin-transform-modules-amd@7.25.7': + resolution: {integrity: sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.24.8': - resolution: {integrity: sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA==} + '@babel/plugin-transform-modules-commonjs@7.25.7': + resolution: {integrity: sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-systemjs@7.25.0': - resolution: {integrity: sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw==} + '@babel/plugin-transform-modules-systemjs@7.25.7': + resolution: {integrity: sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-umd@7.24.7': - resolution: {integrity: sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==} + '@babel/plugin-transform-modules-umd@7.25.7': + resolution: {integrity: sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7': - resolution: {integrity: sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==} + '@babel/plugin-transform-named-capturing-groups-regex@7.25.7': + resolution: {integrity: sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-new-target@7.24.7': - resolution: {integrity: sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==} + '@babel/plugin-transform-new-target@7.25.7': + resolution: {integrity: sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7': - resolution: {integrity: sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==} + '@babel/plugin-transform-nullish-coalescing-operator@7.25.7': + resolution: {integrity: sha512-FbuJ63/4LEL32mIxrxwYaqjJxpbzxPVQj5a+Ebrc8JICV6YX8nE53jY+K0RZT3um56GoNWgkS2BQ/uLGTjtwfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-numeric-separator@7.24.7': - resolution: {integrity: sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==} + '@babel/plugin-transform-numeric-separator@7.25.7': + resolution: {integrity: sha512-8CbutzSSh4hmD+jJHIA8vdTNk15kAzOnFLVVgBSMGr28rt85ouT01/rezMecks9pkU939wDInImwCKv4ahU4IA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-rest-spread@7.24.7': - resolution: {integrity: sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==} + '@babel/plugin-transform-object-rest-spread@7.25.7': + resolution: {integrity: sha512-1JdVKPhD7Y5PvgfFy0Mv2brdrolzpzSoUq2pr6xsR+m+3viGGeHEokFKsCgOkbeFOQxfB1Vt2F0cPJLRpFI4Zg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-super@7.24.7': - resolution: {integrity: sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==} + '@babel/plugin-transform-object-super@7.25.7': + resolution: {integrity: sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-catch-binding@7.24.7': - resolution: {integrity: sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==} + '@babel/plugin-transform-optional-catch-binding@7.25.7': + resolution: {integrity: sha512-m9obYBA39mDPN7lJzD5WkGGb0GO54PPLXsbcnj1Hyeu8mSRz7Gb4b1A6zxNX32ZuUySDK4G6it8SDFWD1nCnqg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-chaining@7.24.8': - resolution: {integrity: sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==} + '@babel/plugin-transform-optional-chaining@7.25.7': + resolution: {integrity: sha512-h39agClImgPWg4H8mYVAbD1qP9vClFbEjqoJmt87Zen8pjqK8FTPUwrOXAvqu5soytwxrLMd2fx2KSCp2CHcNg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-parameters@7.24.7': - resolution: {integrity: sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==} + '@babel/plugin-transform-parameters@7.25.7': + resolution: {integrity: sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-methods@7.25.4': - resolution: {integrity: sha512-ao8BG7E2b/URaUQGqN3Tlsg+M3KlHY6rJ1O1gXAEUnZoyNQnvKyH87Kfg+FoxSeyWUB8ISZZsC91C44ZuBFytw==} + '@babel/plugin-transform-private-methods@7.25.7': + resolution: {integrity: sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-property-in-object@7.24.7': - resolution: {integrity: sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==} + '@babel/plugin-transform-private-property-in-object@7.25.7': + resolution: {integrity: sha512-LzA5ESzBy7tqj00Yjey9yWfs3FKy4EmJyKOSWld144OxkTji81WWnUT8nkLUn+imN/zHL8ZQlOu/MTUAhHaX3g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-property-literals@7.24.7': - resolution: {integrity: sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==} + '@babel/plugin-transform-property-literals@7.25.7': + resolution: {integrity: sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-constant-elements@7.25.1': - resolution: {integrity: sha512-SLV/giH/V4SmloZ6Dt40HjTGTAIkxn33TVIHxNGNvo8ezMhrxBkzisj4op1KZYPIOHFLqhv60OHvX+YRu4xbmQ==} + '@babel/plugin-transform-react-constant-elements@7.25.7': + resolution: {integrity: sha512-/qXt69Em8HgsjCLu7G3zdIQn7A2QwmYND7Wa0LTp09Na+Zn8L5d0A7wSXrKi18TJRc/Q5S1i1De/SU1LzVkSvA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-display-name@7.24.7': - resolution: {integrity: sha512-H/Snz9PFxKsS1JLI4dJLtnJgCJRoo0AUm3chP6NYr+9En1JMKloheEiLIhlp5MDVznWo+H3AAC1Mc8lmUEpsgg==} + '@babel/plugin-transform-react-display-name@7.25.7': + resolution: {integrity: sha512-r0QY7NVU8OnrwE+w2IWiRom0wwsTbjx4+xH2RTd7AVdof3uurXOF+/mXHQDRk+2jIvWgSaCHKMgggfvM4dyUGA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-jsx-development@7.24.7': - resolution: {integrity: sha512-QG9EnzoGn+Qar7rxuW+ZOsbWOt56FvvI93xInqsZDC5fsekx1AlIO4KIJ5M+D0p0SqSH156EpmZyXq630B8OlQ==} + '@babel/plugin-transform-react-jsx-development@7.25.7': + resolution: {integrity: sha512-5yd3lH1PWxzW6IZj+p+Y4OLQzz0/LzlOG8vGqonHfVR3euf1vyzyMUJk9Ac+m97BH46mFc/98t9PmYLyvgL3qg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -5569,20 +5563,26 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-pure-annotations@7.24.7': - resolution: {integrity: sha512-PLgBVk3fzbmEjBJ/u8kFzOqS9tUeDjiaWud/rRym/yjCo/M9cASPlnrd2ZmmZpQT40fOOrvR8jh+n8jikrOhNA==} + '@babel/plugin-transform-react-jsx@7.25.7': + resolution: {integrity: sha512-vILAg5nwGlR9EXE8JIOX4NHXd49lrYbN8hnjffDtoULwpL9hUx/N55nqh2qd0q6FyNDfjl9V79ecKGvFbcSA0Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-regenerator@7.24.7': - resolution: {integrity: sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==} + '@babel/plugin-transform-react-pure-annotations@7.25.7': + resolution: {integrity: sha512-6YTHJ7yjjgYqGc8S+CbEXhLICODk0Tn92j+vNJo07HFk9t3bjFgAKxPLFhHwF2NjmQVSI1zBRfBWUeVBa2osfA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-reserved-words@7.24.7': - resolution: {integrity: sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==} + '@babel/plugin-transform-regenerator@7.25.7': + resolution: {integrity: sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-reserved-words@7.25.7': + resolution: {integrity: sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -5593,62 +5593,62 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-shorthand-properties@7.24.7': - resolution: {integrity: sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==} + '@babel/plugin-transform-shorthand-properties@7.25.7': + resolution: {integrity: sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-spread@7.24.7': - resolution: {integrity: sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==} + '@babel/plugin-transform-spread@7.25.7': + resolution: {integrity: sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-sticky-regex@7.24.7': - resolution: {integrity: sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==} + '@babel/plugin-transform-sticky-regex@7.25.7': + resolution: {integrity: sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-template-literals@7.24.7': - resolution: {integrity: sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==} + '@babel/plugin-transform-template-literals@7.25.7': + resolution: {integrity: sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typeof-symbol@7.24.8': - resolution: {integrity: sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw==} + '@babel/plugin-transform-typeof-symbol@7.25.7': + resolution: {integrity: sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.25.2': - resolution: {integrity: sha512-lBwRvjSmqiMYe/pS0+1gggjJleUJi7NzjvQ1Fkqtt69hBa/0t1YuW/MLQMAPixfwaQOHUXsd6jeU3Z+vdGv3+A==} + '@babel/plugin-transform-typescript@7.25.7': + resolution: {integrity: sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-escapes@7.24.7': - resolution: {integrity: sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==} + '@babel/plugin-transform-unicode-escapes@7.25.7': + resolution: {integrity: sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-property-regex@7.24.7': - resolution: {integrity: sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==} + '@babel/plugin-transform-unicode-property-regex@7.25.7': + resolution: {integrity: sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-regex@7.24.7': - resolution: {integrity: sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==} + '@babel/plugin-transform-unicode-regex@7.25.7': + resolution: {integrity: sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-sets-regex@7.25.4': - resolution: {integrity: sha512-qesBxiWkgN1Q+31xUE9RcMk79eOXXDCv6tfyGMRSs4RGlioSg2WVyQAm07k726cSE56pa+Kb0y9epX2qaXzTvA==} + '@babel/plugin-transform-unicode-sets-regex@7.25.7': + resolution: {integrity: sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -5659,12 +5659,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/preset-flow@7.24.7': - resolution: {integrity: sha512-NL3Lo0NorCU607zU3NwRyJbpaB6E3t0xtd3LfAQKDfkeX4/ggcDXvkmkW42QWT5owUeW/jAe4hn+2qvkV1IbfQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/preset-modules@0.1.6-no-external-plugins': resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} peerDependencies: @@ -5682,29 +5676,20 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/register@7.24.6': - resolution: {integrity: sha512-WSuFCc2wCqMeXkz/i3yfAAsxwWflEgbVkZzivgAmXl/MxrXeoYFZOOPllbC8R8WTF7u61wSRQtDVZ1879cdu6w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/regjsgen@0.8.0': - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - '@babel/runtime@7.24.7': resolution: {integrity: sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==} engines: {node: '>=6.9.0'} - '@babel/template@7.25.0': - resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} + '@babel/template@7.25.7': + resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.6': - resolution: {integrity: sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==} + '@babel/traverse@7.25.7': + resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==} engines: {node: '>=6.9.0'} - '@babel/types@7.25.6': - resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} + '@babel/types@7.25.7': + resolution: {integrity: sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==} engines: {node: '>=6.9.0'} '@base2/pretty-print-object@1.0.1': @@ -5797,9 +5782,9 @@ packages: resolution: {integrity: sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ==} engines: {node: '>=16'} - '@esbuild/aix-ppc64@0.21.5': - resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} - engines: {node: '>=12'} + '@esbuild/aix-ppc64@0.23.1': + resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==} + engines: {node: '>=18'} cpu: [ppc64] os: [aix] @@ -5809,9 +5794,9 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.21.5': - resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} - engines: {node: '>=12'} + '@esbuild/android-arm64@0.23.1': + resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==} + engines: {node: '>=18'} cpu: [arm64] os: [android] @@ -5821,9 +5806,9 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-arm@0.21.5': - resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} - engines: {node: '>=12'} + '@esbuild/android-arm@0.23.1': + resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==} + engines: {node: '>=18'} cpu: [arm] os: [android] @@ -5833,9 +5818,9 @@ packages: cpu: [x64] os: [android] - '@esbuild/android-x64@0.21.5': - resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} - engines: {node: '>=12'} + '@esbuild/android-x64@0.23.1': + resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==} + engines: {node: '>=18'} cpu: [x64] os: [android] @@ -5845,9 +5830,9 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.21.5': - resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} - engines: {node: '>=12'} + '@esbuild/darwin-arm64@0.23.1': + resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==} + engines: {node: '>=18'} cpu: [arm64] os: [darwin] @@ -5857,9 +5842,9 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.21.5': - resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} - engines: {node: '>=12'} + '@esbuild/darwin-x64@0.23.1': + resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==} + engines: {node: '>=18'} cpu: [x64] os: [darwin] @@ -5869,9 +5854,9 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.21.5': - resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} - engines: {node: '>=12'} + '@esbuild/freebsd-arm64@0.23.1': + resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==} + engines: {node: '>=18'} cpu: [arm64] os: [freebsd] @@ -5881,9 +5866,9 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.21.5': - resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} - engines: {node: '>=12'} + '@esbuild/freebsd-x64@0.23.1': + resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==} + engines: {node: '>=18'} cpu: [x64] os: [freebsd] @@ -5893,9 +5878,9 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.21.5': - resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} - engines: {node: '>=12'} + '@esbuild/linux-arm64@0.23.1': + resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==} + engines: {node: '>=18'} cpu: [arm64] os: [linux] @@ -5905,9 +5890,9 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.21.5': - resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} - engines: {node: '>=12'} + '@esbuild/linux-arm@0.23.1': + resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==} + engines: {node: '>=18'} cpu: [arm] os: [linux] @@ -5917,9 +5902,9 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.21.5': - resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} - engines: {node: '>=12'} + '@esbuild/linux-ia32@0.23.1': + resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==} + engines: {node: '>=18'} cpu: [ia32] os: [linux] @@ -5929,9 +5914,9 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.21.5': - resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} - engines: {node: '>=12'} + '@esbuild/linux-loong64@0.23.1': + resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==} + engines: {node: '>=18'} cpu: [loong64] os: [linux] @@ -5941,9 +5926,9 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.21.5': - resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} - engines: {node: '>=12'} + '@esbuild/linux-mips64el@0.23.1': + resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==} + engines: {node: '>=18'} cpu: [mips64el] os: [linux] @@ -5953,9 +5938,9 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.21.5': - resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} - engines: {node: '>=12'} + '@esbuild/linux-ppc64@0.23.1': + resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==} + engines: {node: '>=18'} cpu: [ppc64] os: [linux] @@ -5965,9 +5950,9 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.21.5': - resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} - engines: {node: '>=12'} + '@esbuild/linux-riscv64@0.23.1': + resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==} + engines: {node: '>=18'} cpu: [riscv64] os: [linux] @@ -5977,9 +5962,9 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.21.5': - resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} - engines: {node: '>=12'} + '@esbuild/linux-s390x@0.23.1': + resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==} + engines: {node: '>=18'} cpu: [s390x] os: [linux] @@ -5989,9 +5974,9 @@ packages: cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.21.5': - resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} - engines: {node: '>=12'} + '@esbuild/linux-x64@0.23.1': + resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==} + engines: {node: '>=18'} cpu: [x64] os: [linux] @@ -6001,21 +5986,27 @@ packages: cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.21.5': - resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} - engines: {node: '>=12'} + '@esbuild/netbsd-x64@0.23.1': + resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==} + engines: {node: '>=18'} cpu: [x64] os: [netbsd] + '@esbuild/openbsd-arm64@0.23.1': + resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.17.19': resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.21.5': - resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} - engines: {node: '>=12'} + '@esbuild/openbsd-x64@0.23.1': + resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==} + engines: {node: '>=18'} cpu: [x64] os: [openbsd] @@ -6025,9 +6016,9 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.21.5': - resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} - engines: {node: '>=12'} + '@esbuild/sunos-x64@0.23.1': + resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==} + engines: {node: '>=18'} cpu: [x64] os: [sunos] @@ -6037,9 +6028,9 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.21.5': - resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} - engines: {node: '>=12'} + '@esbuild/win32-arm64@0.23.1': + resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==} + engines: {node: '>=18'} cpu: [arm64] os: [win32] @@ -6049,9 +6040,9 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.21.5': - resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} - engines: {node: '>=12'} + '@esbuild/win32-ia32@0.23.1': + resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==} + engines: {node: '>=18'} cpu: [ia32] os: [win32] @@ -6061,9 +6052,9 @@ packages: cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.21.5': - resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} - engines: {node: '>=12'} + '@esbuild/win32-x64@0.23.1': + resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==} + engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -6073,8 +6064,8 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/regexpp@4.11.0': - resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} + '@eslint-community/regexpp@4.11.1': + resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} '@eslint/eslintrc@2.1.4': @@ -6360,8 +6351,8 @@ packages: '@octokit/types@12.6.0': resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==} - '@octokit/types@13.5.0': - resolution: {integrity: sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ==} + '@octokit/types@13.6.1': + resolution: {integrity: sha512-PHZE9Z+kWXb23Ndik8MKPirBPziOc0D2/3KH1P+6jK5nGWe96kadZuE4jev2/Jq7FvIfTlT2Ltg8Fv2x1v0a5g==} '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} @@ -6559,8 +6550,8 @@ packages: '@types/react': optional: true - '@react-spring/animated@9.7.4': - resolution: {integrity: sha512-7As+8Pty2QlemJ9O5ecsuPKjmO0NKvmVkRR1n6mEotFgWar8FKuQt2xgxz3RTgxcccghpx1YdS1FCdElQNexmQ==} + '@react-spring/animated@9.7.5': + resolution: {integrity: sha512-Tqrwz7pIlsSDITzxoLS3n/v/YCUHQdOIKtOJf4yL6kYVSDTSmVK1LI1Q3M/uu2Sx4X3pIWF3xLUhlsA6SPNTNg==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -6569,16 +6560,16 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - '@react-spring/rafz@9.7.4': - resolution: {integrity: sha512-mqDI6rW0Ca8IdryOMiXRhMtVGiEGLIO89vIOyFQXRIwwIMX30HLya24g9z4olDvFyeDW3+kibiKwtZnA4xhldA==} + '@react-spring/rafz@9.7.5': + resolution: {integrity: sha512-5ZenDQMC48wjUzPAm1EtwQ5Ot3bLIAwwqP2w2owG5KoNdNHpEJV263nGhCeKKmuA3vG2zLLOdu3or6kuDjA6Aw==} - '@react-spring/shared@9.7.4': - resolution: {integrity: sha512-bEPI7cQp94dOtCFSEYpxvLxj0+xQfB5r9Ru1h8OMycsIq7zFZon1G0sHrBLaLQIWeMCllc4tVDYRTLIRv70C8w==} + '@react-spring/shared@9.7.5': + resolution: {integrity: sha512-wdtoJrhUeeyD/PP/zo+np2s1Z820Ohr/BbuVYv+3dVLW7WctoiN7std8rISoYoHpUXtbkpesSKuPIw/6U1w1Pw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - '@react-spring/types@9.7.4': - resolution: {integrity: sha512-iQVztO09ZVfsletMiY+DpT/JRiBntdsdJ4uqk3UJFhrhS8mIC9ZOZbmfGSRs/kdbNPQkVyzucceDicQ/3Mlj9g==} + '@react-spring/types@9.7.5': + resolution: {integrity: sha512-HVj7LrZ4ReHWBimBvu2SKND3cDVUPWKLqRTmWe/fNY6o1owGOX0cAHbdPDTMelgBlVbrTKrre6lFkhqGZErK/g==} '@react-spring/web@9.7.3': resolution: {integrity: sha512-BXt6BpS9aJL/QdVqEIX9YoUy8CE6TJrU0mNCqSoxdXlIeNcEBWOfIyE6B14ENNsyQKS3wOWkiJfco0tCr/9tUg==} @@ -6695,8 +6686,8 @@ packages: resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} engines: {node: '>= 8.0.0'} - '@rollup/pluginutils@5.1.0': - resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} + '@rollup/pluginutils@5.1.2': + resolution: {integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -6763,10 +6754,6 @@ packages: '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - '@sindresorhus/merge-streams@2.3.0': - resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} - engines: {node: '>=18'} - '@sinonjs/commons@3.0.1': resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} @@ -6798,139 +6785,136 @@ packages: resolution: {integrity: sha512-Wz7QYfPAlG/DR+DfABddUZeNgoeY7d1J39OCR2jR+v7VBsB8ezulDK5szTnDDPDwLH5IWhLvXIHlCFZV7MSKgA==} engines: {node: '>= 18', npm: '>= 8.6.0'} - '@slack/types@2.13.0': - resolution: {integrity: sha512-OAQVtKYIgBVNRmgIoiTjorGPTlgfcfstU3XYYCBA+czlB9aGcKb9MQc+6Jovi4gq3S98yP/GPBZsJSI/2mHKDQ==} + '@slack/types@2.14.0': + resolution: {integrity: sha512-n0EGm7ENQRxlXbgKSrQZL69grzg1gHLAVd+GlRVQJ1NSORo0FrApR7wql/gaKdu2n4TO83Sq/AmeUOqD60aXUA==} engines: {node: '>= 12.13.0', npm: '>= 6.12.0'} '@slack/web-api@7.3.2': resolution: {integrity: sha512-hyxwSsUhpOEVN5ORB3ne7TAXQwXl0wxBAyNTCfp4Qc/o9rpEEvY4kfsx7mZF5AhYPcdEeI1XP2bSFrh3W/HGKQ==} engines: {node: '>= 18', npm: '>= 8.6.0'} - '@storybook/addon-a11y@8.2.9': - resolution: {integrity: sha512-9zm0Ecn2KUUKZbRsQM5l2KcQ8RHK6a9eqdQtOMjGagrdUvUstcf7XjBmV1W6PQE2Urj93ciz1cgx4T1AYQyKtA==} + '@storybook/addon-a11y@8.3.5': + resolution: {integrity: sha512-/19UO8IXbyfcYK5K8ejSYF+hC+EK79c0bBPHMNeYSFOHSqQM3KoMo+TLIcLsuhuRClmlM+4Zs+VSIYDwc+d3ig==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-actions@8.2.9': - resolution: {integrity: sha512-eh2teOqjga7aoClDVV+/b1gHJqsPwjiU1t+Hg/l4i2CkaBUNdYMEL90nR6fgReOdvvL5YhcPwJ8w38f9TrQcoQ==} + '@storybook/addon-actions@8.3.5': + resolution: {integrity: sha512-t8D5oo+4XfD+F8091wLa2y/CDd/W2lExCeol5Vm1tp5saO+u6f2/d7iykLhTowWV84Uohi3D073uFeyTAlGebg==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-backgrounds@8.2.9': - resolution: {integrity: sha512-eGmZAd742ORBbQ6JepzBCko/in62T4Xg9j9LVa+Cvz/7L1C/RQSuU6sUwbRAsXaz+PMVDksPDCUUNsXl3zUL7w==} + '@storybook/addon-backgrounds@8.3.5': + resolution: {integrity: sha512-IQGjDujuw8+iSqKREdkL8I5E/5CAHZbfOWd4A75PQK2D6qZ0fu/xRwTOQOH4jP6xn/abvfACOdL6A0d5bU90ag==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-controls@8.2.9': - resolution: {integrity: sha512-vaSE78KOE7SO0GrW4e+mdQphSNpvCX/FGybIRxyaKX9h8smoyUwRNHVyCS3ROHTwH324QWu7GDzsOVrnyXOv0A==} + '@storybook/addon-controls@8.3.5': + resolution: {integrity: sha512-2eCVobUUvY1Rq7sp1U8Mx8t44VXwvi0E+hqyrsqOx5TTSC/FUQ+hNAX6GSYUcFIyQQ1ORpKNlUjAAdjxBv1ZHQ==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-docs@8.2.9': - resolution: {integrity: sha512-flDOxFIGmXg+6lVdwTLMOKsGob1WrT7rG98mn1SNW0Nxhg3Wg+9pQuq1GLxEzKtAgSflmu+xcBRfYhsogyDXkw==} + '@storybook/addon-docs@8.3.5': + resolution: {integrity: sha512-MOVfo1bY8kXTzbvmWnx3UuSO4WNykFz7Edvb3mxltNyuW7UDRZGuIuSe32ddT/EtLJfurrC9Ja3yBy4KBUGnMA==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-essentials@8.2.9': - resolution: {integrity: sha512-B2d3eznGZvPIyCVtYX0UhrYcEfK+3Y2sACmEWpSwtk8KXomFEsZnD95m397BYDRw3/X6qeSLWxqgMfqDTEDeMA==} + '@storybook/addon-essentials@8.3.5': + resolution: {integrity: sha512-hXTtPuN4/IsXjUrkMPAuz1qKAl8DovdXpjQgjQs7jSAVx3kc4BZaGqJ3gaVenKtO8uDchmA92BoQygpkc8eWhw==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-highlight@8.2.9': - resolution: {integrity: sha512-qdcazeNQoo9QKIq+LJJZZXvFZoLn+i4uhbt1Uf9WtW6oU/c1qxORGVD7jc3zsxbQN9nROVPbJ76sfthogxeqWA==} + '@storybook/addon-highlight@8.3.5': + resolution: {integrity: sha512-ku0epul9aReCR3Gv/emwYnsqg3vgux5OmYMjoDcJC7s+LyfweSzLV/f5t9gSHazikJElh5TehtVkWbC4QfbGSw==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-measure@8.2.9': - resolution: {integrity: sha512-XUfQtYRKWB2dfbPRmHuos816wt1JrLbtRld5ZC8J8ljeqZ4hFBPTQcgI5GAzZqjQuclLC0KuhlA/0bKxdxMMGA==} + '@storybook/addon-measure@8.3.5': + resolution: {integrity: sha512-6GVehgbHhFIFS69xSfRV+12VK0cnuIAtZdp1J3eUCc2ATrcigqVjTM6wzZz6kBuX6O3dcusr7Wg46KtNliqLqg==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-outline@8.2.9': - resolution: {integrity: sha512-p22kI4W7MT0YJOCmg/FfhfH+NpZEDA5tgwstjazSg4ertyhaxziMwWZWiK2JCg0gOAfRJjoYjHz+6/u56iXwgQ==} + '@storybook/addon-outline@8.3.5': + resolution: {integrity: sha512-dwmK6GzjEnQP9Yo0VnBUQtJkXZlXdfjWyskZ/IlUVc+IFdeeCtIiMyA92oMfHo8eXt0k1g21ZqMaIn7ZltOuHw==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-storysource@8.2.9': - resolution: {integrity: sha512-zSfw4FNjzSGdWvNhrjJgiqabQAklCXR3Xa0Hp5/5omG9Wl/JdiAKw9ysycQXovAv4VuubxS1x0pOTo6Wg40M3A==} + '@storybook/addon-storysource@8.3.5': + resolution: {integrity: sha512-NdVVlBtVRLBeMNwaMNd+B/XDNbQGQ4yKjZOCNBzGsV0sf0fAm8BQ7D5HJFbL4/VoZmRxlYCeQRYHu+/iE2VJhg==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-toolbars@8.2.9': - resolution: {integrity: sha512-9LMZZ2jRD86Jh6KXedDbAYs4eHj9HtJA9VhSEE2wiqMGwXozpySi7B1GWniNzmFfcgMQ4JHfmD/OrBVTK7Ca/w==} + '@storybook/addon-toolbars@8.3.5': + resolution: {integrity: sha512-Ml2gc9q8WbteDvmuAZGgBxt5SqWMXzuTkMjlsA8EB53hlkN1w9esX4s8YtBeNqC3HKoUzcdq8uexSBqU8fDbSA==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/addon-viewport@8.2.9': - resolution: {integrity: sha512-lyM24+DJEt8R0YZkJKee34NQWv0REACU6lYDalqJNdKS1sEwzLGWxg1hZXnw2JFdBID9NGVvyYU2w6LDozOB0g==} + '@storybook/addon-viewport@8.3.5': + resolution: {integrity: sha512-FSWydoPiVWFXEittG7O1YgvuaqoU9Vb+qoq9XfP/hvQHHMDcMZvC40JaV8AnJeTXaM7ngIjcn9XDEfGbFfOzXw==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 '@storybook/addon-webpack5-compiler-babel@3.0.3': resolution: {integrity: sha512-rVQTTw+oxJltbVKaejIWSHwVKOBJs3au21f/pYXhV0aiNgNhxEa3vr79t/j0j8ox8uJtzM8XYOb7FlkvGfHlwQ==} engines: {node: '>=18'} - '@storybook/blocks@8.2.9': - resolution: {integrity: sha512-5276q/s/UL8arwftuBXovUNHqYo/HPQFMGXEmjVVAMXUyFjzEAfKj3+xU897J6AuL+7XVZG32WnqA+X6LJMrcQ==} + '@storybook/blocks@8.3.5': + resolution: {integrity: sha512-8cHTdTywolTHlgwN8I7YH7saWAIjGzV617AwjhJ95AKlC0VtpO1gAFcAgCqr4DU9eMc+LZuvbnaU/RSvA5eCCQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.9 + storybook: ^8.3.5 peerDependenciesMeta: react: optional: true react-dom: optional: true - '@storybook/builder-webpack5@8.2.9': - resolution: {integrity: sha512-D3oYk4LkteWZ3QLcdUTu/0rUvVNUp/bWwEKAycZDr2uFCOhv8VoS2/l/TaHjn3wpyWpVVKS6GgdP72K++YVufg==} + '@storybook/builder-webpack5@8.3.5': + resolution: {integrity: sha512-rhmfdiSlDn3Arki7IMYk11PO29rYuYM4LZ8GlNqREU7VUl/8Vngo/jFIa4pKaIns3ql1RrwzO1wm9JvuL/4ydA==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 typescript: '*' peerDependenciesMeta: typescript: optional: true - '@storybook/channels@8.2.9': - resolution: {integrity: sha512-kakLwRxrkDGJfJz9pg27KrPPCWmfvUurlFJ1E7whKCsl/zwSg0hHRNPtCzA/eJrj1JLs5Zk9r/ayOXnqO4HixA==} + '@storybook/channels@8.3.5': + resolution: {integrity: sha512-mITs8tdSKfjH31JIbQP0Ss5SBrcRS0nhDShZFL5WZ+CpS06zLS671u4kSHb57jfb/M8qie9i+lf4IK+UTKFTdQ==} peerDependencies: - storybook: ^8.2.9 - - '@storybook/codemod@8.2.9': - resolution: {integrity: sha512-3yRx1lFMm1FXWVv+CKDiYM4gOQPEfpcZAQrjfcumxSDUrB091pnU1PeI92Prj3vCdi4+0oPNuN4yDGNUYTMP/A==} + storybook: ^8.3.5 - '@storybook/components@8.2.9': - resolution: {integrity: sha512-OkkcZ/f/6o3GdFEEK9ZHKIGHWUHmavZUYs5xaSgU64bOrA2aqEFtfeWWitZYTv3Euhk8MVLWfyEMDfez0AlvDg==} + '@storybook/components@8.3.5': + resolution: {integrity: sha512-Rq28YogakD3FO4F8KwAtGpo1g3t4V/gfCLqTQ8B6oQUFoxLqegkWk/DlwCzvoJndXuQJfdSyM6+r1JcA4Nql5A==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/core-common@8.2.9': - resolution: {integrity: sha512-DdV+Myvi8nk9rv62M5j0B2bTlQfCX4p3htwzKPgmaHyhvVLuOqBbfKtDOWPCwaVLXx7Q0wpBFlgM0rxmQXLVDQ==} + '@storybook/core-common@8.3.5': + resolution: {integrity: sha512-Dz91pcUH4mGgKRyo5AKiD6bhjC511d7J30SmMs5lgQl7nJWlepqon7Qhy+SzsEWTWtFTgRGPs//lKTmEaVT9ug==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/core-events@8.2.9': - resolution: {integrity: sha512-8VS6k2ySAYdG2VBWxb66Vko7Pqd429TIdkrw1/u2N0IPsvPsdbs3WaOTyxOMB1e39YUCpD/IZUOPdxX2lC3g4w==} + '@storybook/core-events@8.3.5': + resolution: {integrity: sha512-tA4ptifvmxDd4n5CYpL2ksEg2YuLr3a9IPvEww+XJWsyx+lTQ5rwbaRyu8CUxJfOsppyz5cf9OOqRcZ0ENcrpQ==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/core-webpack@8.2.9': - resolution: {integrity: sha512-6yL1su+d8IOTU+UkZqM9SeBcVc/G6vUHLsMdlWNyVtRus2JTMmT0K0/ll56jrm/ym0y98cxUOA1jsImkBubP2Q==} + '@storybook/core-webpack@8.3.5': + resolution: {integrity: sha512-mN8BHNc6lSGUf/nKgDr6XoTt1cX+Tap9RnKMUiROCDzfVlJPeJBrG4qrTOok7AwObzeDl9DNFyun6+pVgXJe7A==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/core@8.2.9': - resolution: {integrity: sha512-wSER8FpA6Il/jPyDfKm3yohxDtuhisNPTonMVzd3ulNWR4zERLddyO3HrHJJwdqYHLNk4SBFzwMGpQZVws1y0w==} + '@storybook/core@8.3.5': + resolution: {integrity: sha512-GOGfTvdioNa/n+Huwg4u/dsyYyBcM+gEcdxi3B7i5x4yJ3I912KoVshumQAOF2myKSRdI8h8aGWdx7nnjd0+5Q==} - '@storybook/csf-plugin@8.2.9': - resolution: {integrity: sha512-QQCFb3g12VQQEraDV1UfCmniGhQZKyT6oEt1Im6dzzPJj9NQk+6BjWoDep33CZhBHWoLryrMQd2fjuHxnFRNEA==} + '@storybook/csf-plugin@8.3.5': + resolution: {integrity: sha512-ODVqNXwJt90hG7QW8I9w/XUyOGlr0l7XltmIJgXwB/2cYDvaGu3JV5Ybg7O0fxPV8uXk7JlRuUD8ZYv5Low6pA==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/csf-tools@8.2.9': - resolution: {integrity: sha512-tkW6c/AMRLrQ/Hyu0nD+VHufqFNgZqrjlboP+upasVAoPcKjzMVpEMoYHrIzw0yxKhA2f+CitTGGbywJpUfH7w==} + '@storybook/csf-tools@8.3.5': + resolution: {integrity: sha512-vx+8FYwrSNbaotHVbKTO7aKjtQ5ghvMRXNYYoYve2YZ/vm7Os4hbfmEjR90+XcJR5LgOQ4adlhiPWCf+pU8sEg==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 '@storybook/csf@0.1.11': resolution: {integrity: sha512-dHYFQH3mA+EtnCkHXzicbLgsvzYjcDJ1JWsogbItZogkPHgSJM/Wr71uMkcvw8v9mmCyP4NpXJuu6bPoVsOnzg==} @@ -6938,34 +6922,34 @@ packages: '@storybook/global@5.0.0': resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==} - '@storybook/icons@1.2.10': - resolution: {integrity: sha512-310apKdDcjbbX2VSLWPwhEwAgjxTzVagrwucVZIdGPErwiAppX8KvBuWZgPo+rQLVrtH8S+pw1dbUwjcE6d7og==} + '@storybook/icons@1.2.12': + resolution: {integrity: sha512-UxgyK5W3/UV4VrI3dl6ajGfHM4aOqMAkFLWe2KibeQudLf6NJpDrDMSHwZj+3iKC4jFU7dkKbbtH2h/al4sW3Q==} engines: {node: '>=14.0.0'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - '@storybook/manager-api@8.2.9': - resolution: {integrity: sha512-mkYvUlfqDw+0WbxIynh5TcrotmoXlumEsOA4+45zuNea8XpEgj5cNBUCnmfEO6yQ85swqkS8YYbMpg1cZyu/Vw==} + '@storybook/manager-api@8.3.5': + resolution: {integrity: sha512-fEQoKKi7h7pzh2z9RfuzatJxubrsfL/CB99fNXQ0wshMSY/7O4ckd18pK4fzG9ErnCtLAO9qsim4N/4eQC+/8Q==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/preset-react-webpack@8.2.9': - resolution: {integrity: sha512-uBLsUfwymWXGmfN/0vB7gLCC0CWDHc778605SWxakqFx7wGF1FZUW4R46qbDFrHTaKh+bundseRdy5/uklksLQ==} + '@storybook/preset-react-webpack@8.3.5': + resolution: {integrity: sha512-laS9CiZrZ4CSnBTBfkBba3hmlDhzcjIfCvx8/rk3SZ+zh93NpqXixzRt6m0UH2po63dpdu21nXrsW5Cfs88Ypw==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.9 + storybook: ^8.3.5 typescript: '*' peerDependenciesMeta: typescript: optional: true - '@storybook/preview-api@8.2.9': - resolution: {integrity: sha512-D8/t+a78OJqQAcT/ABa1C4YM/OaLGQ9IvCsp3Q9ruUqDCwuZBj8bG3D4477dlY4owX2ycC0rWYu3VvuK0EmJjA==} + '@storybook/preview-api@8.3.5': + resolution: {integrity: sha512-VPqpudE8pmjTLvdNJoW/2//nqElDgUOmIn3QxbbCmdZTHDg5tFtxuqwdlNfArF0TxvTSBDIulXt/Q6K56TAfTg==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0': resolution: {integrity: sha512-KUqXC3oa9JuQ0kZJLBhVdS4lOneKTOopnNBK4tUAgoxWQ3u/IjzdueZjFr7gyBrXMoU6duutk3RQR9u8ZpYJ4Q==} @@ -6973,51 +6957,54 @@ packages: typescript: '>= 4.x' webpack: '>= 4' - '@storybook/react-dom-shim@8.2.9': - resolution: {integrity: sha512-uCAjSQEsNk8somVn1j/I1G9G/uUax5byHseIIV0Eq3gVXttGd7gaWcP+TDHtqIaenWHx4l+hCSuCesxiLWmx4Q==} + '@storybook/react-dom-shim@8.3.5': + resolution: {integrity: sha512-Hf0UitJ/K0C7ajooooUK/PxOR4ihUWqsC7iCV1Gqth8U37dTeLMbaEO4PBwu0VQ+Ufg0N8BJLWfg7o6G4hrODw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.9 + storybook: ^8.3.5 - '@storybook/react-webpack5@8.2.9': - resolution: {integrity: sha512-c5udaEIFFlBfOQJlPsJvrhyK02B3ltZ86SS0j5bhOa6UgqYOo+KtKaVyegXWgsRw8vVO9ZdmXCfwVvFsHkgJdA==} + '@storybook/react-webpack5@8.3.5': + resolution: {integrity: sha512-J7jCxjCuWvRJrAtOwe4ij8rjfTGm1Dpsfbz8xar4ItVw7ikiyALr34E3FJzfgq7M40uGXZhvCl2IVRdGeiLmzg==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.9 + storybook: ^8.3.5 typescript: '>= 4.2.x' peerDependenciesMeta: typescript: optional: true - '@storybook/react@8.2.9': - resolution: {integrity: sha512-F2xZcTDxxjpbqt7eP8rEHmlksiKmE/qtPusEWEY4N4jK01kN+ncxSl8gkJpUohMEmAnVC5t/1v/sU57xv1DYpg==} + '@storybook/react@8.3.5': + resolution: {integrity: sha512-kuBPe/wBin10SWr4EWPKxiTRGQ4RD2etGEVWVQLqVpOuJp/J2hVvXQHtCfZXU4TZT5x4PBbPRswbr58+XlF+kQ==} engines: {node: '>=18.0.0'} peerDependencies: + '@storybook/test': 8.3.5 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.9 + storybook: ^8.3.5 typescript: '>= 4.2.x' peerDependenciesMeta: + '@storybook/test': + optional: true typescript: optional: true - '@storybook/source-loader@8.2.9': - resolution: {integrity: sha512-M2A6oo1DmcQXaSDKAXik9watCUZFGxSGPnPI3H/7O3Zt1S+9TLpCWdDpOm9itYRijLEQY7u3IvPTZqlbgSl17A==} + '@storybook/source-loader@8.3.5': + resolution: {integrity: sha512-rQRWMqsM2PROeQxBCX23sDKdTMpdkub3A2Q3+6JhVzYRQodQrQDbzVRULq3G7RGXdktTkE+huVO4pLKaDa7PDw==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 '@storybook/test-runner@0.19.1': resolution: {integrity: sha512-Nc4djXw3Lv3AAXg6TJ7yVTeuMryjMsTDd8GCbE/PStU602rpe8syEqElz78GPoJqB1VYWQ3T9pcu93MKyHT+xQ==} engines: {node: ^16.10.0 || ^18.0.0 || >=20.0.0} hasBin: true - '@storybook/theming@8.2.9': - resolution: {integrity: sha512-OL0NFvowPX85N5zIYdgeKKaFm7V4Vgtci093vL3cDZT13LGH6GuEzJKkUFGuUGNPFlJc+EgTj0o6PYKrOLyQ6w==} + '@storybook/theming@8.3.5': + resolution: {integrity: sha512-9HmDDyC691oqfg4RziIM9ElsS2HITaxmH7n/yeUPtuirkPdAQzqOzhvH/Sa0qOhifzs8VjR+Gd/a/ZQ+S38r7w==} peerDependencies: - storybook: ^8.2.9 + storybook: ^8.3.5 '@svgr/babel-plugin-add-jsx-attribute@7.0.0': resolution: {integrity: sha512-khWbXesWIP9v8HuKCl2NU2HNAyqpSQ/vkIl36Nbn4HIwEYSRWL0H7Gs6idJdha2DkpFDWlsqMELvoCE8lfFY6Q==} @@ -7095,68 +7082,68 @@ packages: resolution: {integrity: sha512-XWzIhLTr5WYns/cNFXpXrmFy+LFf2xp60VnNUBZCpM1CGTx47FCDuUj2DQjxirMf2L6CP2jTRELK8ef01TecFQ==} engines: {node: '>=14'} - '@swc/core-darwin-arm64@1.7.24': - resolution: {integrity: sha512-s0k09qAcsoa8jIncwgRRd43VApYqXu28R4OmICtDffV4S01HtsRLRarXsMuLutoZk3tbxqitep+A8MPBuqNgdg==} + '@swc/core-darwin-arm64@1.7.26': + resolution: {integrity: sha512-FF3CRYTg6a7ZVW4yT9mesxoVVZTrcSWtmZhxKCYJX9brH4CS/7PRPjAKNk6kzWgWuRoglP7hkjQcd6EpMcZEAw==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.7.24': - resolution: {integrity: sha512-1dlsulJ/fiOoJoJyQgaCewIEaZ7Sh6aJN4r5Uhl4lIZuNWa27XOb28A3K29/6HDO9JML3IJrvXPnl5o0vxDQuQ==} + '@swc/core-darwin-x64@1.7.26': + resolution: {integrity: sha512-az3cibZdsay2HNKmc4bjf62QVukuiMRh5sfM5kHR/JMTrLyS6vSw7Ihs3UTkZjUxkLTT8ro54LI6sV6sUQUbLQ==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.7.24': - resolution: {integrity: sha512-2ft1NmxyvHCu5CY4r2rNVybPqZtJaxpRSzvCcPlVjN/2D5Q3QgM5kBoo1t+0RCFfk4TS2V0KWJhtqKz0CNX62Q==} + '@swc/core-linux-arm-gnueabihf@1.7.26': + resolution: {integrity: sha512-VYPFVJDO5zT5U3RpCdHE5v1gz4mmR8BfHecUZTmD2v1JeFY6fv9KArJUpjrHEEsjK/ucXkQFmJ0jaiWXmpOV9Q==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.7.24': - resolution: {integrity: sha512-v/Z8I9tUUNkNHKa1Sw4r1Q7Wp66ezbRhe6xMIxvPNKVJQFaMOsRpe0t8T5qbk5sV2hJGOCKpQynSpZqQXLcJDQ==} + '@swc/core-linux-arm64-gnu@1.7.26': + resolution: {integrity: sha512-YKevOV7abpjcAzXrhsl+W48Z9mZvgoVs2eP5nY+uoMAdP2b3GxC0Df1Co0I90o2lkzO4jYBpTMcZlmUXLdXn+Q==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.7.24': - resolution: {integrity: sha512-0jJx0IcajcyOXaJsx1jXy86lYVrbupyy2VUj/OiJux/ic4oBJLjfL+WOuc8T8/hZj2p6X0X4jvfSCqWSuic4kA==} + '@swc/core-linux-arm64-musl@1.7.26': + resolution: {integrity: sha512-3w8iZICMkQQON0uIcvz7+Q1MPOW6hJ4O5ETjA0LSP/tuKqx30hIniCGOgPDnv3UTMruLUnQbtBwVCZTBKR3Rkg==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.7.24': - resolution: {integrity: sha512-2+3aKQpSGjVnWKDTKUPuJzitQlTQrGorg+PVFMRkv6l+RcNCHZQNe/8VYpMhyBhxDMb3LUlbp7776FRevcruxg==} + '@swc/core-linux-x64-gnu@1.7.26': + resolution: {integrity: sha512-c+pp9Zkk2lqb06bNGkR2Looxrs7FtGDMA4/aHjZcCqATgp348hOKH5WPvNLBl+yPrISuWjbKDVn3NgAvfvpH4w==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.7.24': - resolution: {integrity: sha512-PMQ6SkCtMoj0Ks77DiishpEmIuHpYjFLDuVOzzJCzGeGoii0yRP5lKy/VeglFYLPqJzmhK9BHlpVehVf/8ZpvA==} + '@swc/core-linux-x64-musl@1.7.26': + resolution: {integrity: sha512-PgtyfHBF6xG87dUSSdTJHwZ3/8vWZfNIXQV2GlwEpslrOkGqy+WaiiyE7Of7z9AvDILfBBBcJvJ/r8u980wAfQ==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.7.24': - resolution: {integrity: sha512-SNdCa4DtGXNWrPVHqctVUxgEVZVETuqERpqF50KFHO0Bvf5V/m1IJ4hFr2BxXlrzgnIW4t1Dpi6YOJbcGbEmnA==} + '@swc/core-win32-arm64-msvc@1.7.26': + resolution: {integrity: sha512-9TNXPIJqFynlAOrRD6tUQjMq7KApSklK3R/tXgIxc7Qx+lWu8hlDQ/kVPLpU7PWvMMwC/3hKBW+p5f+Tms1hmA==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.7.24': - resolution: {integrity: sha512-5p3olHqwibMfrVFg2yVuSIPh9HArDYYlJXNZ9JKqeZk23A19J1pl9MuPmXDw+sxsiPfYJ/nUedIGeUHPF/+EDw==} + '@swc/core-win32-ia32-msvc@1.7.26': + resolution: {integrity: sha512-9YngxNcG3177GYdsTum4V98Re+TlCeJEP4kEwEg9EagT5s3YejYdKwVAkAsJszzkXuyRDdnHUpYbTrPG6FiXrQ==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.7.24': - resolution: {integrity: sha512-gRyPIxDznS8d2ClfmWbytjp2d48bij6swHnDLWhukNuOvXdQkEmaIzjEsionFG/zhcFLnz8zKfTvjEjInAMzxg==} + '@swc/core-win32-x64-msvc@1.7.26': + resolution: {integrity: sha512-VR+hzg9XqucgLjXxA13MtV5O3C0bK0ywtLIBw/+a+O+Oc6mxFWHtdUeXDbIi5AiPbn0fjgVJMqYnyjGyyX8u0w==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.7.24': - resolution: {integrity: sha512-FzJaai6z6DYdICAY1UKNN5pzTn296ksK2zzEjjaXlpZtoMkGktWT0ttS7hbdBCPGhLOu5Q9TA2zdPejKUFjgig==} + '@swc/core@1.7.26': + resolution: {integrity: sha512-f5uYFf+TmMQyYIoxkn/evWhNGuUzC730dFwAKGwBVHHVoPyak1/GvJUm6i1SKl+2Hrj9oN0i3WSoWWZ4pgI8lw==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '*' @@ -7312,9 +7299,6 @@ packages: '@types/cookie@0.6.0': resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} - '@types/cross-spawn@6.0.6': - resolution: {integrity: sha512-fXRhhUkG4H3TQk5dBhQ7m/JDdSNHKwR2BBia62lhwEIq9xGiQKLxd6LymNhn47SjXhsUEPmxi+PKw2OkW4LLjA==} - '@types/css-tree@2.3.8': resolution: {integrity: sha512-zABG3nI2UENsx7AQv63tI5/ptoAG/7kQR1H0OvG+WTWYHOR5pfAT3cGgC8SdyCrgX/TTxJBZNmx82IjCXs1juQ==} @@ -7324,20 +7308,17 @@ packages: '@types/doctrine@0.0.9': resolution: {integrity: sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==} - '@types/emscripten@1.39.13': - resolution: {integrity: sha512-cFq+fO/isvhvmuP/+Sl4K4jtU6E23DoivtbO4r50e3odaxAiVdbfSYRDdJ4gCdxx+3aRjhphS5ZMwIH4hFy/Cw==} - '@types/escodegen@0.0.6': resolution: {integrity: sha512-AjwI4MvWx3HAOaZqYsjKWyEObT9lcVV0Y0V8nXo6cXzN8ZiMxVhf6F3d/UNvXVGKrEzL/Dluc5p+y9GkzlTWig==} '@types/estree@0.0.51': resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} - '@types/estree@1.0.5': - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + '@types/estree@1.0.6': + resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} - '@types/express-serve-static-core@4.19.5': - resolution: {integrity: sha512-y6W03tvrACO72aijJ5uF02FRq5cgDR9lUxddQ8vyF+GvmjJQqbzDcJngEjURc+ZsG31VI3hODNZJ2URj86pzmg==} + '@types/express-serve-static-core@4.19.6': + resolution: {integrity: sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==} '@types/express@4.17.21': resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} @@ -7396,8 +7377,11 @@ packages: '@types/linkify-it@5.0.0': resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==} - '@types/lodash@4.17.7': - resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==} + '@types/lodash-es@4.17.12': + resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==} + + '@types/lodash@4.17.10': + resolution: {integrity: sha512-YpS0zzoduEhuOWjAotS6A5AVCva7X4lVlYLF0FYHAY9sdraBfnatttHItlWeZdGhuEkf+OzMNg2ZYAx8t+52uQ==} '@types/markdown-it@14.1.2': resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==} @@ -7426,17 +7410,20 @@ packages: '@types/node-fetch@2.6.11': resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==} - '@types/node@18.19.50': - resolution: {integrity: sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg==} + '@types/node@18.19.54': + resolution: {integrity: sha512-+BRgt0G5gYjTvdLac9sIeE0iZcJxi4Jc4PV5EUzqi+88jmQLr+fRZdv2tCTV7IHKSGxM6SaLoOXQWWUiLUItMw==} - '@types/node@20.16.5': - resolution: {integrity: sha512-VwYCweNo3ERajwy0IUlqqcyZ8/A7Zwa9ZP3MnENWcB11AejO+tLy3pu850goUW2FC/IJMdZUfKpX/yxL1gymCA==} + '@types/node@20.16.10': + resolution: {integrity: sha512-vQUKgWTjEIRFCvK6CyriPH3MZYiYlNy0fKiEYHWbcoWLEgs4opurGGKlebrTLqdSMIbXImH6XExNiIyNUv3WpA==} + + '@types/node@22.7.4': + resolution: {integrity: sha512-y+NPi1rFzDs1NdQHHToqeiX2TIS79SWEAw9GYhkkx8bD0ChpfqC+n2j5OXOCpzfojBEBt6DnEnnG9MY0zk1XLg==} '@types/parse-json@4.0.2': resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} - '@types/prop-types@15.7.12': - resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} + '@types/prop-types@15.7.13': + resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} '@types/qrcode.react@1.0.5': resolution: {integrity: sha512-BghPtnlwvrvq8QkGa1H25YnN+5OIgCKFuQruncGWLGJYOzeSKiix/4+B9BtfKF2wf5ja8yfyWYA3OXju995G8w==} @@ -7450,8 +7437,8 @@ packages: '@types/react-dom@18.3.0': resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} - '@types/react-redux@7.1.33': - resolution: {integrity: sha512-NF8m5AjWCkert+fosDsN3hAlHzpjSiXlVy9EgQEmLoBhaNXbmyeGs/aj5dQzKuF+/q+S7JQagorGDW8pJ28Hmg==} + '@types/react-redux@7.1.34': + resolution: {integrity: sha512-GdFaVjEbYv4Fthm2ZLvj1VSCedV7TqE5y1kNwnjSdBOTXuRSgowux6J8TAct15T3CKBr63UMk+2CO7ilRhyrAQ==} '@types/react-router-dom@5.3.3': resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} @@ -7702,166 +7689,166 @@ packages: webpack-dev-server: optional: true - '@wordpress/a11y@4.8.2': - resolution: {integrity: sha512-eILr2ZYK5FYSlx18rnP06qKyPELxEyDcnosSOsjskPGw5gYT01sUf0fkAebliuG88VppT+bgI008TRo3dvtZzQ==} + '@wordpress/a11y@4.9.0': + resolution: {integrity: sha512-OfM/wnB8ItmGM5I/u+4E4aJdqvy98kg24zrS+CqPLgq3eYG6MNkIQJZov/I3XcsyxGjLkkLsybEM5xEYUN0ZtA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/annotations@3.8.3': - resolution: {integrity: sha512-ihDxDnDDX73j7VGZutx0XBGelMf9cZmfh3L6hNW5CFacMTaH9+FNAY4+2I55N+fWOE7h1ePlHeL5DXvz38xsug==} + '@wordpress/annotations@3.9.0': + resolution: {integrity: sha512-CA4F2wP2iB/kF1IYTr8SiUmA4fpggbRCWUdCfli6Mu/SCWero5NQizTuKgM5FQOSkt/t6lD/tvqMOz9PpV+UuA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/api-fetch@7.8.2': - resolution: {integrity: sha512-6jiodZD4+5lIelb/E6FHMa6xuldcoIkQ5vWtvHpoB30++7eOgYi0tl5b1NlzGqfReIcl9oO+Wwp5V9mRE+mJoA==} + '@wordpress/api-fetch@7.9.0': + resolution: {integrity: sha512-iqH4lNiH8FnIkJ8Nxx4KQYQMd4c/4OwZfjrk0ITwMK5PaVJHnFZ7xZV6ncMbgXbf0VjuPjfKMRmPzxICXw08IQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/autop@4.8.1': - resolution: {integrity: sha512-/ah4oBIRGMZlxBBPiD6R5uamCPEXTzmsJ0iceDJxMHc5KvNcy59oHNCirD5yiRLORk8RrujUczIGfglpUjGh2Q==} + '@wordpress/autop@4.9.0': + resolution: {integrity: sha512-LkPzRV8MIm1Qmky8CllAm38J1wm5+3PLIdVsi3lEKc8B3IVEycx4W4K9bwkSFmbFGsD9WbpBKdIStszysif/aQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/babel-plugin-import-jsx-pragma@5.8.1': - resolution: {integrity: sha512-ycNOTJv/57gQ4bDCyhMF9HV/kOvlJToxnZ0ZTB2OUneaEaEu/1ZvtNHsaHYDJJaIt7Cl8oLCPFI8EwxYuRti7A==} + '@wordpress/babel-plugin-import-jsx-pragma@5.9.0': + resolution: {integrity: sha512-miAF4FmN3D6WwPoQHHhCP7vaGXufgu3GEvG3BYjP66d2p1LR0nIukxZDDnxwCizgZ2akYc6F+97C90Rkc+m5Bw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: '@babel/core': ^7.12.9 - '@wordpress/babel-preset-default@8.8.2': - resolution: {integrity: sha512-XhIpSw6d8GeaBe+gQ25nck01+Q3UiVQgih/yBCFWNtzB2qp/AB7195lHGxbuAYUO9RM1eXsf8kVJV2caAb4WnA==} + '@wordpress/babel-preset-default@8.9.0': + resolution: {integrity: sha512-qkhnRyku8FeiUGXfcMYfr/u2SG6NIj/9hWoe5Ubpay7gpX2A1H9+rLrTvABRiip7zit88JJ6b4VUqLL9Cr23bg==} 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/base-styles@5.8.1': - resolution: {integrity: sha512-vYT31mcV74bO+MXMIYKMyethp6kw3rQyh0wKvWIhX5pX/wUYXjts+RE6v9Yf7k0OJ+UT0c/CXF+5KLBuju6EVA==} + '@wordpress/base-styles@5.9.0': + resolution: {integrity: sha512-b0erDgc8I6NTjbHaPL4GTa3IbfHp4o1+Yx74oT6gLgV9i7Qd8UjBmsUDYIZTV1jqB/ch9DuaDqDaNYqW6tXpZg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/blob@4.8.1': - resolution: {integrity: sha512-fMLWmum+B8aZi5w8Tie7mw+LEP/FF6RXVMG8AH4GwtXYYD2b3WgjbF7I4p6HYOaz3kAEnlJNo55qqLT2tFogww==} + '@wordpress/blob@4.9.0': + resolution: {integrity: sha512-ygpupWynPx0u1zqVewqm6NOR9rmOEUrvfn0QzdH8Mt/O40P/SFX6kGrXpddTlawnayA0gfFB4ADUyXOrBuUhdA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/block-editor@14.3.4': - resolution: {integrity: sha512-7y7xrG8c7yH5HcJ3S5z0KJ9x1xAFTrgRSqD77YuNlhox3hfsxahcUjne1SqDafZcNIiHzJ5dhIcJZQs/qd3wFA==} + '@wordpress/block-editor@14.4.0': + resolution: {integrity: sha512-L6QCvHdUSvSSskIHOuLqk2c1CHAXs5mWwRKiv9oYx4MUONesyWpd88p8jCFbHMX8Jtoq55TQuJSTwKjFFS+sTA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/block-library@9.8.5': - resolution: {integrity: sha512-dI0qg8oV4G4O3vOIZTtAbCa/hnYxKbzkZQAHkXOXqUo2DamLGfiq4mBJS6fNjyXL9x+LtgwPx9BD7OzSoAAczg==} + '@wordpress/block-library@9.9.0': + resolution: {integrity: sha512-UWetp9fwocia8n17l2XwIUK6kGcm4PoWEGeBbdiShYNAKXc4mEa6QEuoOp8jOL26JQ21Ln1jFZYhkbhR7N/rTw==} 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.8.1': - resolution: {integrity: sha512-SmbMiM/KTh9veMcujL+t375yMR1JZlIzbVEIk6NdiGV+7pvtenUe4Av0tr+0QaINmgo3MJmc4Y3csZrKFlRr+w==} + '@wordpress/block-serialization-default-parser@5.9.0': + resolution: {integrity: sha512-79jJeAocnmFzBPeSokjoa8ApsCdMO6DZB7d9mV41kRY9wuLMMPFmA6gxK0QqtsxBT8Qgl33ebxKCZVx9BZwvcQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/blocks@13.8.4': - resolution: {integrity: sha512-nUwEu+eZRiPBTwwIUUbkAOin4HSQVNKYEFgaP/Fnz4i6GyBTRxoaQP1XCEG5PRsGTr+fMOfT02/z0Y157OOiQQ==} + '@wordpress/blocks@13.9.0': + resolution: {integrity: sha512-j89EOfSoACFyVKUjZsIohJb/XW9rEJu0wbA1/SmZY2Wcg+dAPl+lojpK3Hi0or7Lks9/6oQov3DXHattgyZfaA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/browserslist-config@6.8.1': - resolution: {integrity: sha512-hp2eE0DiRbFGTUEQ49kLVyZWlR8lfm8hb2XKqSoWbeqzWM5ZkgrRRJMrJRPS/jCEWTWDdlBwUFfsVNDKpmHc9A==} + '@wordpress/browserslist-config@6.9.0': + resolution: {integrity: sha512-yv8KJrMZTvhY+PNWQ6CQVTUs/6sAVgim7AxGpgTkVzDYKvTeJKuZqeHzAWtHKTOG+ORIj/29XtpIOU85R9dkng==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/commands@1.8.4': - resolution: {integrity: sha512-7bUGWUspqkzuL2ZSbC+AAsOyrRgUdgBIqekK6+9IWMAx5FMgpOky/ca+kJ/QwIgim2kideGt6ASbEbyF1gwfFA==} + '@wordpress/commands@1.9.0': + resolution: {integrity: sha512-6A1ZJqsshaTz5WJa3UXr+hJOuM2zclr9sCaXyfamhuE2YurqGSGlOPL0oiRr/H1iLHEHp/mwYMIXd9UFKO8Qfg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/components@28.8.4': - resolution: {integrity: sha512-w/C2OfLeDoJlPaFFlb9QblLFpPSpGPwztyzjN8cmOHqLh4HVi0Yx+sYotTHYlyv2XWGIBExt8Z2Ea8QoeE2Fcw==} + '@wordpress/components@28.9.0': + resolution: {integrity: sha512-/ept6OSWAh4bdZwlhU8TwJe9QM6rqjAXVA08H0wymtjdRbAQiuDsmMfLFKCF1M4hGZeeThAD5YF0ZkBK5iCeCA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/compose@7.8.3': - resolution: {integrity: sha512-knHfFz1/rzFr69d2lDIFspXYTn56Fdd6+4Enc9QhHfkICpwi59jQCXqtNguCB2O8FdL2FNpK1YSgx1FrTo37dA==} + '@wordpress/compose@7.9.0': + resolution: {integrity: sha512-6f1mZLwMD2woFSMLJ5JaCZQZz1kFD2X4gwT5c4IVnzpm+/9A0OqeTdncAi6I6wHRtKN9DzvaMQPuZitQz7HmNA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/core-commands@1.8.4': - resolution: {integrity: sha512-xCpZq4O1KwNY6po8bxRV2i7pxzkFLEnN1TNglCFvtqEsPy1AFqyKquLSC6Hf6ILFajwlP02aC59Ni6vmm48r+Q==} + '@wordpress/core-commands@1.9.0': + resolution: {integrity: sha512-lRXJPtDvx3QYIWwKejJm7ZtDit0DrlSS4snbJ+dNMGzOUdv17QlAxNy5etVNnXkenY6AEa3WkXqNUqi9vK2HVA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/core-data@7.8.4': - resolution: {integrity: sha512-+3iIu8k4G2zYYFtzFp561D+2krJMAPFgKJZlhuEcvutyuhZGGcUqa/7HL1Cl8AGKURbnnVw2FmSHltpvXS6XIg==} + '@wordpress/core-data@7.9.0': + resolution: {integrity: sha512-bvmTJXpMF7nooDCbkp59FsqP7upxae9U41j5uZBI91H9mzcWL53YrdE6yPVdExj55EKcdwdfGTrq8u/z1bkm5Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/data@10.8.3': - resolution: {integrity: sha512-JunqBEVVwJJz45N8JTZNh9WHFn857SUtbp7Efp55oesH/g3ejLMuNu6Ewf9/qEEGQut8VeVQ7yGhl+GQDu9u+w==} + '@wordpress/data@10.9.0': + resolution: {integrity: sha512-hw8VYSPZuEqlEwRnQnKgqzbwCqoGY4U5kLCZA/1McOYspvkIceTVve4qBC17QUJhu2pLEXEc6p4zBpy+SXfToQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/dataviews@4.4.4': - resolution: {integrity: sha512-b+2DTP8uPznxpnD0khRHDUeuj3U5Cy32amr3vwiN9xqV9hl51fzSe+ELAUTHrFKlMaQNkH/0c8cH81fU0JIeuw==} + '@wordpress/dataviews@4.5.0': + resolution: {integrity: sha512-3vZN6jFR6gFDvuAitpS/0D80ByWYkhRfuTAAmzptq6rC9CkC4VNRbIJZbxMsKEt2qh44T7TVYVR6yVm2p+8+oQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/date@5.8.2': - resolution: {integrity: sha512-ECPE9JXQ0GN+A3ssP+bmEtt122JQnkuXzGOUXfED+kjdmFZ1MgPtyKfXBFDzyW6fPHAwzpSbyFSBXfwxevxWAQ==} + '@wordpress/date@5.9.0': + resolution: {integrity: sha512-Iywz1bga3cPSrf7k4dh2mYVsACqzu0GXYhfu57ElAM9robGjcUxJdzgbWUZw90v473NOp2UpVYsWCuDEqNDcdw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/dependency-extraction-webpack-plugin@6.8.3': - resolution: {integrity: sha512-2XtMyfX8wacCBK9S808o3NkDdo+qeJgtz6DQhi1nOK6XhIsw/IeSwbZgrTlIzhUk2mQ1N0Y+e3588/dxiS4kBQ==} + '@wordpress/dependency-extraction-webpack-plugin@6.9.0': + resolution: {integrity: sha512-faWHIfJ8dSHjQmTEjl/Q6isLLHn0nBbBbTqztAKWtoImmtOLrz68fVxlUh8Fsboov8l6O4fiWv+6gXkWI5B75w==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: webpack: ^5.0.0 - '@wordpress/deprecated@4.8.2': - resolution: {integrity: sha512-AMO0FeqYfIcQRNzAVYDYHZ6ISdfkPHm8Rt8HQOl0Bg7tWX3ocVYnMULUGg/VzgM8AJzAUrfBpwcXZBMF1g4Xpw==} + '@wordpress/deprecated@4.9.0': + resolution: {integrity: sha512-1PMCLULxTlI0iatsHxpPgtogMfvd/wvAqAOLGHUdkdbBtUEquGrRMo/h+TLU/ne2JDf5JKMA4ntQV6zDNO4+eg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/dom-ready@4.8.1': - resolution: {integrity: sha512-xVMNpOaLzpZS4HFH5yYE3ToOhpsDpV29PoeDzuki18XA+ZPg6SvQ/TmwggMasnI1PoyAcQWxugXMV+YUFGM8Mg==} + '@wordpress/dom-ready@4.9.0': + resolution: {integrity: sha512-Kas5YaRl+HebAxFfv9ctB8bdmjbhISIBo747nXCK6KqojQ/Zn2Bctv2XTypR3GMb7OS7KqVMeyCJhjEpuc8Wlw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/dom@4.8.2': - resolution: {integrity: sha512-5VZooybouKVkQ6W2+ef7AnAYQG54lkUN8+Kzc7ly84+WL13RbrwfE4Bj9/RFE5Ew59XTfHME0+GzE3fpLNiTYA==} + '@wordpress/dom@4.9.0': + resolution: {integrity: sha512-g9jRTxOpSfygEbKNGwYwx21b5GktI2SkwQSAPKpG4mmFAvLbqIzjVc2nkudRO914DKgPWrBsfKsc4Smbtpbkig==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/edit-post@8.8.6': - resolution: {integrity: sha512-vNJaYUOmSc+L8SfmcBlLZlYlbLZbetXNPuriUbk0dijsCfuMAtB7Ze7hphs1ZZsaqN4UECdJZvnK9Imeo5hUVA==} + '@wordpress/edit-post@8.9.0': + resolution: {integrity: sha512-jVQZo9Ldo3cVra3+W9BZGpF7yozTzr86mTeTr1C9SMV8fRrBjQ4pBOryFJQYFW47E0OyWz9Li9MzFx3PaeVADg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/editor@14.8.6': - resolution: {integrity: sha512-HQdKzBSxMM535H8XlGyomw+PcXRmmENTYrDRFSfbaxbh8gFKnikodwRPoDAAUtUhSGgEIGA909BrJ3yuiduR+w==} + '@wordpress/editor@14.9.0': + resolution: {integrity: sha512-9F71TPgPENsoaqhjIU8JJzNQqB8pCEntpS+YRzdEBiPZh+fgsO1fmiVhR3afimiW9WbO/Vh0XvfjbtFOjNZLRg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/element@6.8.1': - resolution: {integrity: sha512-JUd0XUHjNtQexAUJq5TodweU9kooCdrh/3NlKj8jEMKgveDx+ipXN2zVsaJWzAcu50FBhegaL+hFH6XRtqEDdQ==} + '@wordpress/element@6.9.0': + resolution: {integrity: sha512-G5W29cxfAVc/JQBzkKoXh1t4T+G3HWa1kIgXCqIZksonlYHzCVON1Or+rD/YJZSxT6RDkBVDzdl9p0pGOrccTg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/escape-html@3.8.1': - resolution: {integrity: sha512-JFOjsD6rSFVoFqK+f5YCeYmRycn7Hj29cX3+sBXL0p5Uox7SQLhY/rmATm6o/PiGCVtDeQlZ9I8dBeQSZBoXqQ==} + '@wordpress/escape-html@3.9.0': + resolution: {integrity: sha512-+/SnVUXzzr+0pgfAqK3pocGveSDS3SHrgJ1BTgV7DA1l6y9mbjnqKgFQkNW/nzca92ZuYg2vjLcq1dqDGz4v1Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/eslint-plugin@21.1.2': - resolution: {integrity: sha512-f89Q8J1yGq6b1Myqgby7Xdon+mx/YjSBCs3/saydaJWJoXaDIXZFTMrY0cjWzbSOTDThYCvbkvQm0QGAPanNTA==} + '@wordpress/eslint-plugin@21.2.0': + resolution: {integrity: sha512-jsqi1C96FV4wTGPtPVP/bj/rQtDgu4dHP5pKqtwCuPs7AU4pnUJPHut67Ass8POD+c4EvjPVhS8UDpBs2MeSJg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: '@babel/core': '>=7' @@ -7884,205 +7871,205 @@ packages: typescript: optional: true - '@wordpress/fields@0.0.5': - resolution: {integrity: sha512-i+C4vukI+e4eu6cGuax8pQzkoV1h30aRSmBcrr+D9KQxPIOhTrIftNSTor0ucsBo+SpT+L5bNLf/cKiinEJWEg==} + '@wordpress/fields@0.1.0': + resolution: {integrity: sha512-Kgpja8+OuYqH5TtdDu40djQRq31ubsXJ0WiXXxX2gIMsb8fH3F3al7kLjPpMQBuPDQm1Q0SfjhSwrPI2gZLl5Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/format-library@5.8.4': - resolution: {integrity: sha512-O7e/x2oi20ZsprvFIPCHkMzebppthtcqci7XtM5BIcPgZG0vJv+8ijihVinJUh4q7v04VwYiRtEinFhBCroHLw==} + '@wordpress/format-library@5.9.0': + resolution: {integrity: sha512-auU/M4JrlAwzjnq2nJGt5VChETJJ28fa8bHxakxdBnXaSIF0dnhdGa6L5jtJUdRKk7B/4DLTN8KZJA7LVunYPw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/hooks@4.8.2': - resolution: {integrity: sha512-BhhYJB/RFIng6Taydah6zCMd9iDYdSlISvByP9tBDsuHZL6iuVBmEGBXmm0Mt6ABCFHELuhFkxwdWPRjWTiqSw==} + '@wordpress/hooks@4.9.0': + resolution: {integrity: sha512-nan2w5imPhTaJwWdKjm/0ZMDbWR3P6Vhl4OqnBZZcJqOyNSfwsnJ98I+BWjq0U6SmiCnZQERjN0SjVdmD1tCjw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/html-entities@4.8.1': - resolution: {integrity: sha512-JOiXUdts9PvanVj3cuPlzJop6UBMDApzLRWRLeZNjZPq0IsTGcI7zPhBVT++aW1C8zTzngzpdFfFaWle3p5w7Q==} + '@wordpress/html-entities@4.9.0': + resolution: {integrity: sha512-RaiMecK8Igqb4yreJncSZEBl6DR1eAj8M3mHwrJASJLiiBLcaWg0oi8iiabUEmgGCsIu2pCeXmV+8WO0FRDO5Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/i18n@5.8.2': - resolution: {integrity: sha512-evcwjw1cfGoyJoPMZlaYNwmYJAlIJh5pkgM1QWanpBPTMLsMOMcpZQGzOwvKf1uLozGOKkBAe106qQ7rgjZkoQ==} + '@wordpress/i18n@5.9.0': + resolution: {integrity: sha512-pKFV9S/l0TFlm0mlWLW51hAoRDNmZPGnfEpNXq43VKZkm1cco3Z1E54PHMGk8HdCECHqYNiJuQJOBOlqcYmnVQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} hasBin: true - '@wordpress/icons@10.8.2': - resolution: {integrity: sha512-ebJ3mRJo3bMgPm9vSTxc7I98HT30mgU59WGUAQyx31cElKbzMhd3jM7bD2JhYXZ1OPnJGY3W4lHovMFfU7wsOQ==} + '@wordpress/icons@10.9.0': + resolution: {integrity: sha512-mAkqhlbbPiuR6yBOczunqyxQ2Pez1XB7gAZnnsP5DlTKsYnJQ12N0Ql4Oh8f1LI+UeF18VMtHes12sWK/1LQHQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18 - '@wordpress/interactivity-router@2.8.3': - resolution: {integrity: sha512-GlAnJfNs+cH+pVJ/36jeyoEyorruZZToIFMZ+Qp5kOzt7uK1lACJHVdSXMaElMurxDJQ2HdSVcs2EPELIEYcuw==} + '@wordpress/interactivity-router@2.9.0': + resolution: {integrity: sha512-9F4IMBoWX3pcWHTjz1prThbEUI0Snomd5wAUJYfelanY5bZaaF5Tt15oolbEnlSSM5mEgwK26ftY7fRt0+B7SA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/interactivity@6.8.2': - resolution: {integrity: sha512-ga0g92vvtaxbTyc7ZeU0oZ/JO5rOjWOTQNlVQvbbOdhhiSc6IA6/a+gfEzwZlrAiSDXA0kQAjEhbWDtKZg0alQ==} + '@wordpress/interactivity@6.9.0': + resolution: {integrity: sha512-8L+Tanr04FtJ8wGU9ykaasuU7h+9bOo6xwRscRUW4N5lia/CUSXJgJUWuaLeNLyeWFbarzhCNsj3UzRa5lbsJA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/interface@6.8.4': - resolution: {integrity: sha512-Z2TZY0FsmVfEmiwFtFtXrxWy61Dn+nntXqcYpWxzwLFbNOz4YWQKRk4zAZ44Jb+tv9ipIRZaZUNrPf7ryPQ+4A==} + '@wordpress/interface@6.9.0': + resolution: {integrity: sha512-yIFTqiAEZ/Ge9uI3cyWBuTuyTe6JW81OiC3mxyhtOUYU9IAPlfEerAUqYeR+2Rh6Ag9L2SAYJLgMSp6ypCHHNQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/is-shallow-equal@5.8.1': - resolution: {integrity: sha512-2UpGvp+y7pCxQQoNyb5PIYPptZZjfcR80evR/V/0Abyxde+N0dEJHroiOd+Nm1BJJijzhmMH1B7AlyGqnKaFXA==} + '@wordpress/is-shallow-equal@5.9.0': + resolution: {integrity: sha512-cKqgI6RQ27ZZRo4Zc/jioG3qInDKQqcT3xg5YxsduX2f1b6vQV42p0L4waLFeJZQ8WDUsgsR53AQivdInkO8gA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/jest-console@8.8.1': - resolution: {integrity: sha512-TjSQ/jhtT5f1r8NFpP4pjdtambOd4yyyjwG35av+DqXOr8zz68zYZhzxqIy24jmrZGa5KaaOMvBa8q7G7BHcMw==} + '@wordpress/jest-console@8.9.0': + resolution: {integrity: sha512-0swK5WONAx7y5oPDMBbr38e1R7JR+jPCt6CGFoOEwsVGiSRGa5WqJo09/ysCVjDmJn8po/lBaUp9f+fJSVARDQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: jest: '>=29' - '@wordpress/keyboard-shortcuts@5.8.3': - resolution: {integrity: sha512-V8HUZ63/6hronEBO0dQmYxlk7aSM7+fawTDLrqHfMhqi75GWrwhztWSb2Xju0J7rOvSVO7Oc5gk+JX+ZvniWqA==} + '@wordpress/keyboard-shortcuts@5.9.0': + resolution: {integrity: sha512-4gwsrzBtBYEcfKTfJfDbul8bDDb8WiWaf4Ua0w3TDkAIO5l3hMUL/N6plw1a7Do/NcGFOmbm/RTjQkckSuRZ8A==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/keycodes@4.8.2': - resolution: {integrity: sha512-BxZD5tk4sDHywV7HOF/hSY924ToW7YJe6hDh4yv+7vo5LpiYQq+/uW21hyXrWEjGXZtdmT1tx69wR16BG35bYw==} + '@wordpress/keycodes@4.9.0': + resolution: {integrity: sha512-WO4MPlO+uGaDP5jYB9f4hn0NgBwvlaUvj4MLOIDcQGE0ljElLGFeXvqjVH0KVtnZkIKiZNPK7eoQxTWnxWaTjw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/media-utils@5.8.2': - resolution: {integrity: sha512-r8C9WapBHkoLPOU9so3Ocdo17xHwJ43EfXckc47c9Wvu9Gn3CulkZWSvnIMeQLcm1Ay/PBBRu2Vxim5PNCaTpg==} + '@wordpress/media-utils@5.9.0': + resolution: {integrity: sha512-/mvHRc9g1q/uq9e4w2fwfPmetmEUhcDocSqqLYkx5ouwoNBXEEAmXgGvRzpOLT5F8G8zpOm4uIzDxNfJ9X9o6w==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/notices@5.8.3': - resolution: {integrity: sha512-k2I6vS4y3OvaDIGGO5B94up7uQqpO0Vtykz7rvez0+nXJazYylKNv88zsegyjf74bWhhJ3HpfiDl+JVehwHnxw==} + '@wordpress/notices@5.9.0': + resolution: {integrity: sha512-Tofu7sTCNsZYxnQeM4eRlxGKnN1PYBIbLJmxzjPeW0pqydDu0wQVNpr3ESfXKVCv1s7KD8gowoqon5npjpcI3g==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/patterns@2.8.4': - resolution: {integrity: sha512-gTXB6EHOLNFEwqYxv+nrFilvg7yjRKCURDQ5asXGoFw/Yr3eJ6od6plyXP9T+YnS877LV0ot2x9OA2whz09SFg==} + '@wordpress/patterns@2.9.0': + resolution: {integrity: sha512-WFtiQGssRkrw9NX4eSVRsjbNRdL+KuOEb0IywWvW4DMa2x1L4OEafUBY4HYoRO27RSNNevI+9wWgM0mC3GYr6Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/plugins@7.8.4': - resolution: {integrity: sha512-qghBNRSPbxZ1RQdiWm0OD5ROqhCVi2Gs3buFGZnVBRCmH/oz6ocFrx9jtqDUD5acOODSLoy4OL6wmM8R54IJ6w==} + '@wordpress/plugins@7.9.0': + resolution: {integrity: sha512-A2X1SwQ8uyLjmIorDFV4CqUYbzFpKuYU+sc85vbITwtyjQxDuEYR+jO/Al7KX8lO/NO9Io7WAhpVgGx6J0Qq5Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/postcss-plugins-preset@5.8.1': - resolution: {integrity: sha512-OL+9T7nm8DcOJ95+rpwelSK9XsLQCCm7tMi6JkgTllAV3E+ttrF0ISlKHtJ02mCNkPJMfZGBCtVWvHlVxpXkAw==} + '@wordpress/postcss-plugins-preset@5.9.0': + resolution: {integrity: sha512-OOK5UU2CG+9ilzo1b8ySwVvtZddF+q+PTTFHcxFrcK23sg5XT1DCBm3WU7bSfzOBF2cd4FIVOFVpwvb07mn8Iw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: postcss: ^8.0.0 - '@wordpress/preferences@4.8.4': - resolution: {integrity: sha512-K5/YJu2vIQ7d05ZQ2e7wfPeazIw3RGYbYYMiLEfysIZHRbK2x0BLiG97OygFlx2SeBrAOjioaWtHlRzix3flEQ==} + '@wordpress/preferences@4.9.0': + resolution: {integrity: sha512-uZo7zNY0+9BUqMi7NaiSHd/URA2REqjl15JOkLGNcZerM9BmjHdjdArl4XXH47MQIs/cBMOR1nMOYHCDWqkGgQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/prettier-config@4.8.1': - resolution: {integrity: sha512-JDiVChhgwv6ZGa4aVOXnDJnj/dUFkD/SSvRLFkLOdB+ZbWgddJQkVB3rpJOfREsPtEFWqgTxcJoZjnkqltNbww==} + '@wordpress/prettier-config@4.9.0': + resolution: {integrity: sha512-kxBTL/UZS1JEqzWWHo+h3q+ErvCtkiHm6GozUDgX9UlZXHAx/XAc24s4UaYXmZpjuH5hWO4sbp3xbj2ZI+Ohkg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: prettier: '>=3' - '@wordpress/primitives@4.8.1': - resolution: {integrity: sha512-enfNxpEWycMNnvF7lpP8QYGKotu6B0UfUVcA89oDkam4OhP8tkpP1OVZyPHPgseRWweS/hL6aW/4bvwNSklf+g==} + '@wordpress/primitives@4.9.0': + resolution: {integrity: sha512-vroiqxd+MP/K1+KEJqMAR/B/++4oShY4CisvMOK3gn75DmUV2QB6iQmBSjHRALqw9rqeHf7S0jLHWiFrAR+Dkg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/priority-queue@3.8.1': - resolution: {integrity: sha512-USgFi75o7GlWiPu1hSGSWFXcj5nOjTVjrj0jM6sV+vqa39oRXxE4zpxGkvV4EINn8OrqvHBs/17uygAFXqppZQ==} + '@wordpress/priority-queue@3.9.0': + resolution: {integrity: sha512-QVfELUL4ei5Uf0DNG9wMVNBILasGWWWogVjVeP1xXqmfSDoeFpPzXpfL9zfANndE2S49DJP9ZoZsCaJHtMrYzA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/private-apis@1.8.1': - resolution: {integrity: sha512-/5PV8+QfkaLJs9TsFTIVMc3Ns+KdysFzS5ZGSmRGgsjzzgqHZb670mxf/6YaFldNjELbg5QsvcHNm3mkfkYiQg==} + '@wordpress/private-apis@1.9.0': + resolution: {integrity: sha512-hZbKVSlo5yOpssMshXwNlUyk83Ev55ZKMfJMVU5nWxiIM9bMCuhpwU+AXQ0GKxOzn2oMayVmtJ00FRbJFg+AMg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/redux-routine@5.8.1': - resolution: {integrity: sha512-mScAi3R/o9dAeS5yQm7F/txNSHhXthYE/NbHtm808+iMgXvgTztAJSg4K29YpAhXgqPTFYMTX0cFiiQ1uNEGqw==} + '@wordpress/redux-routine@5.9.0': + resolution: {integrity: sha512-eEb/otHMhOwVUydb5kErV3X+1R8qQ2hrLmlWIh+kiiKwFJVCl3ge/xN8Tiy1kEBEqgGRgPqxuLvNPZDd0ySpNg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: redux: '>=4' - '@wordpress/reusable-blocks@5.8.4': - resolution: {integrity: sha512-KFe9+mn5XkTGttNvXaZ/fGjW+QjLtxZpH05M5Q9P5cLW4WVNNePyIMJvlomzVtcycDSp5nSxbnwJp2Xu2JYDnw==} + '@wordpress/reusable-blocks@5.9.0': + resolution: {integrity: sha512-qjeT5QC1GZ5otR94OlHMwwPX2GWKR9rh8Ojh0rsxljAl9VPU0amPV7fCffMrLvPkDgT/VApcUDE2CBxhvWz7Kw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/rich-text@7.8.3': - resolution: {integrity: sha512-rB2hebZbTAI5LdLLtatwijpRKzYO+UdQes1Bni2WBAd59KH0YIj4kkVnj39lYYrV3OS+CqSqH2W4UJB7HPNRWQ==} + '@wordpress/rich-text@7.9.0': + resolution: {integrity: sha512-GN2SGz8bVkdCVVskvJSgul4wKyq/qaXRmEJSrk3LMHuAbxHL5FFkwRHaOhnHScNz+P1bdEehCqgP8DB3yv+IEw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/router@1.8.1': - resolution: {integrity: sha512-ASF2uFwCh4bt7HZ/OVFQs18sBoXnDvcGjg9voyCGirX6keH4jutGon3OTUorQVVLlirOrWDeeAciRJPT7TGYZA==} + '@wordpress/router@1.9.0': + resolution: {integrity: sha512-vbmFlsnQA7GgzvYw0B0L4WccG976sxTNihlgaAJHiu8un7ZHxj+aGwwOa6kkwH3uzcqaN6CmbKhjjb9gik6gzQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/server-side-render@5.8.4': - resolution: {integrity: sha512-2IdotmrwxMbTJqFe6s2Ji8b4isyt42tJNIgy+ONl4NhuFaWI7fLUhLGItrZWdNDfxwLDjH4dzvEcH8fTVyLxEA==} + '@wordpress/server-side-render@5.9.0': + resolution: {integrity: sha512-0aq/nD6jdqe3aNI9gAmAMnAy6ghtUmvMon39AZH6WagoEqiPtNpRMHVZQ7QXWb1Ghng6ei+To7qyGKp/E19gdg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/shortcode@4.8.1': - resolution: {integrity: sha512-c8wYr2zmXOonAgABnFmuKRQ7wYyAIvshb3nCVrjFbpHnFmK+CHMg/y/KmcnfnPscdAO+uKDBKYNp0fnYfQBhiQ==} + '@wordpress/shortcode@4.9.0': + resolution: {integrity: sha512-KprSoaeenLzYzOJt703KIfLqUIyVkVt1zm0k6V/AyW/f1yqn2BXxJHgcmyWn7aEMlgwY8yzaE3TkvRfw12q4DA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/style-engine@2.8.1': - resolution: {integrity: sha512-wsYdvrc+CEqidp9TmpG+/9s6zm1GEUU2Qp5qIELcQWU6VNzuycc5nqzFnRiKv0Pz+6TRgksjLsb86IQrCcg2nA==} + '@wordpress/style-engine@2.9.0': + resolution: {integrity: sha512-/rb7BHwvgu0hW7IG7/W6ONOJx78N5mLvqOoHk/C2Fd3L4rAiDl9HP3YnwpExFdqnBUSYg51jI3dGTUWEFFBOpw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/sync@1.8.1': - resolution: {integrity: sha512-i2vYN15nh5Cf8EgryZIIKAvx0IZi34gBqXNwvSymhh1/eD4yzcFyaFfko7NS93fPeGuVy/Hxj+2M1CdZ7fd43w==} + '@wordpress/sync@1.9.0': + resolution: {integrity: sha512-3gg7YU1m2tFm6sG68+UNIWctKXr9TDcC3sMwUyBNgBLrfv7tfZweiRawZc8s6Ty7+qs7lHUFCwOnS2BhtuvrTg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/token-list@3.8.1': - resolution: {integrity: sha512-uQEimvYlEsjQh5PHscYnctSnuK11ZOpUGLlYbJ10VtoisDJP2bqYwu36FBGrEuY5g0y6y/rP/Hw1BirZ+wrZyw==} + '@wordpress/token-list@3.9.0': + resolution: {integrity: sha512-mnwh8WcA9//DVwwZVfEaFHfIK1RaNQ8QvhD1fOtjJWjheS12QsQwjdlGTgvBVl66ErP65GdK7BM1pTv6NI0GwA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/undo-manager@1.8.1': - resolution: {integrity: sha512-l5U3NswNDWHVQ3sAsiCvI65JDrAFlBnAIsoKsc38zg2OkNO1m8IIf/K+D3YAqBBM+zDahSGbNaLCEftBbZVSUg==} + '@wordpress/undo-manager@1.9.0': + resolution: {integrity: sha512-JLrcmeCTqITbChkJy+PeXcE03+6ZgIfQ22cBg1+0mzLQxglx1gndTnhRcnCSebvsXnmOVmxvE4HmJ84lv7liCQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/url@4.8.1': - resolution: {integrity: sha512-YZcNOlJAUhkxMWlmkkc6mvSdXukkleq8j5Z8p8kBWQX9Wxng84ygyBSMiqFeFvAIs8nNDXBrqG9zGGRxMW6q/g==} + '@wordpress/url@4.9.0': + resolution: {integrity: sha512-PjfExLOzaagtDZ20CAaCMh4SzeHWzJC3fiRzX4eV0esfHr4K58duxIEHXwOZ69L8/Cn596OCjrFO+CHd16jYdQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/viewport@6.8.3': - resolution: {integrity: sha512-izS9YQmogTilQx0xrd9RspAeF/PT1V9N7S7QjNAH9UZ7E4k32m2Vg6ebcYQGShRgmjUReiunIDDr0VDSK5h3PQ==} + '@wordpress/viewport@6.9.0': + resolution: {integrity: sha512-49rc47dYKuBRHHLhPBhmR19c8qjhlxrqR16mEUUf4f2oIdmsaBvxVMZxhaYL44kP6wfto/+E2cUdFJZHrx9Lpw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/warning@3.8.1': - resolution: {integrity: sha512-xlo0Xw1jiyiE6nh43NAtQMAL05VDk837kY2xfjsus6wD597TeWFpj6gmcRMH25FZULTUHDB2EPfLviWXqOgUfg==} + '@wordpress/warning@3.9.0': + resolution: {integrity: sha512-c+bEWwDjp3+Q7SAGb47CuZe56giBFNvutoyiAkn34pQZeO8pRjPElRABIkR7oyn4dEusjL1f6OQmU3dSYAMTpg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/widgets@4.8.4': - resolution: {integrity: sha512-xpUQmdaNK2eTqKzA9B3nzigZtZwGEeY7Ki43dIrGiw8CKdO+WssdNUEVcaZ0eoOpeSNL/PNxCWc91+QIH9Ngeg==} + '@wordpress/widgets@4.9.0': + resolution: {integrity: sha512-lfifzKTKSz1sykspgw3I5cUEi7Y1JgWD4NARAjVH9j+K80I3dNykuHhmNXDbgOoWx6SKny88qBWhMapIO+rpGg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/wordcount@4.8.1': - resolution: {integrity: sha512-72e8N6I6he5pA9KDwqrq3mRMb+9WtzqR67C0uBmrlQg4FT23XptG8fDVacD2Das2nWSAgaLR/4GhKv34pPj1vg==} + '@wordpress/wordcount@4.9.0': + resolution: {integrity: sha512-DIvvJnsr4cmhQJBjv19ZfQlEmJF+0M0YCbx5JguUJAdN3FQ93LUpbTUzytl4LR+JllUuSsRmjZ53OopBTHAM7A==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} '@xmldom/xmldom@0.7.13': @@ -8095,14 +8082,6 @@ packages: '@xtuc/long@4.2.2': resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - '@yarnpkg/fslib@2.10.3': - resolution: {integrity: sha512-41H+Ga78xT9sHvWLlFOZLIhtU6mTGZ20pZ29EiZa97vnxdohJD2AF42rCoAoWfqUz486xY6fhjMH+DYEM9r14A==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - - '@yarnpkg/libzip@2.3.0': - resolution: {integrity: sha512-6xm38yGVIa6mKm/DUCF2zFFJhERh/QWp1ufm4cNUvxsONBmfPg8uZ9pZBdOmF6qFGr/HlT6ABBkCSx/dlEtvWg==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - abab@2.0.6: resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==} deprecated: Use your platform's native atob() and btoa() methods instead @@ -8226,8 +8205,8 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + ansi-regex@6.1.0: + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} engines: {node: '>=12'} ansi-styles@2.2.1: @@ -8293,6 +8272,10 @@ packages: aria-query@5.3.0: resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} + array-buffer-byte-length@1.0.1: resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} engines: {node: '>= 0.4'} @@ -8377,13 +8360,8 @@ packages: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} engines: {node: '>= 0.4'} - b4a@1.6.6: - resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} - - babel-core@7.0.0-bridge.0: - resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} - peerDependencies: - '@babel/core': ^7.0.0-0 + b4a@1.6.7: + resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==} babel-jest@29.3.1: resolution: {integrity: sha512-aard+xnMoxgjwV70t0L6wkW/3HQQtV+O0PEimxKgzNqCJnbYmroPojdP2tqKSOAt8QAKV/uSZU8851M7B5+fcA==} @@ -8410,8 +8388,8 @@ packages: '@babel/core': ^7.12.0 webpack: '>=5' - babel-loader@9.1.3: - resolution: {integrity: sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==} + babel-loader@9.2.1: + resolution: {integrity: sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==} engines: {node: '>= 14.15.0'} peerDependencies: '@babel/core': ^7.12.0 @@ -8475,20 +8453,20 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - bare-events@2.4.2: - resolution: {integrity: sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q==} + bare-events@2.5.0: + resolution: {integrity: sha512-/E8dDe9dsbLyh2qrZ64PEPadOQ0F4gbl1sUJOrmph7xOiIxfY8vwab/4bFLh4Y88/Hk/ujKcrQKc+ps0mv873A==} - bare-fs@2.3.3: - resolution: {integrity: sha512-7RYKL+vZVCyAsMLi5SPu7QGauGGT8avnP/HO571ndEuV4MYdGXvLhtW67FuLPeEI8EiIY7zbbRR9x7x7HU0kgw==} + bare-fs@2.3.5: + resolution: {integrity: sha512-SlE9eTxifPDJrT6YgemQ1WGFleevzwY+XAP1Xqgl56HtcrisC2CHCZ2tq6dBpcH2TnNxwUEUGhweo+lrQtYuiw==} - bare-os@2.4.2: - resolution: {integrity: sha512-HZoJwzC+rZ9lqEemTMiO0luOePoGYNBgsLLgegKR/cljiJvcDNhDZQkzC+NC5Oh0aHbdBNSOHpghwMuB5tqhjg==} + bare-os@2.4.4: + resolution: {integrity: sha512-z3UiI2yi1mK0sXeRdc4O1Kk8aOa/e+FNWZcTiPB/dfTWyLypuE99LibgRaQki914Jq//yAWylcAt+mknKdixRQ==} bare-path@2.1.3: resolution: {integrity: sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==} - bare-stream@2.2.1: - resolution: {integrity: sha512-YTB47kHwBW9zSG8LD77MIBAAQXjU2WjAkMHeeb7hUplVs6+IoM5I7uEVQNPMB7lj9r8I76UMdoMkGnCodHOLqg==} + bare-stream@2.3.0: + resolution: {integrity: sha512-pVRWciewGUeCyKEuRxwv06M079r+fRjAQjBEK2P6OYGrO43O+Z0LrPZZEjlc4mB6C2RpZ9AxJ1s7NLEtOHO6eA==} base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -8500,6 +8478,10 @@ packages: before-after-hook@2.2.3: resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} + better-opn@3.0.2: + resolution: {integrity: sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==} + engines: {node: '>=12.0.0'} + big.js@5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} @@ -8507,9 +8489,6 @@ packages: resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} - bl@4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} - body-parser@1.20.3: resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} @@ -8612,8 +8591,8 @@ packages: caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - caniuse-lite@1.0.30001664: - resolution: {integrity: sha512-AmE7k4dXiNKQipgn7a2xg558IRqPN3jMQY/rOsbxDhrd0tyChwbITBfiwtnqz8bi2M5mIWbxAYBvk7W7QBUS2g==} + caniuse-lite@1.0.30001667: + resolution: {integrity: sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==} capital-case@1.0.4: resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} @@ -8688,10 +8667,6 @@ packages: resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==} engines: {node: '>= 14.16.0'} - chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - chrome-trace-event@1.0.4: resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==} engines: {node: '>=6.0'} @@ -8705,9 +8680,6 @@ packages: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} - citty@0.1.6: - resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==} - cjs-module-lexer@1.4.1: resolution: {integrity: sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA==} @@ -8723,14 +8695,6 @@ packages: resolution: {integrity: sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==} engines: {node: '>=4'} - cli-cursor@3.1.0: - resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} - engines: {node: '>=8'} - - cli-spinners@2.9.2: - resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} - engines: {node: '>=6'} - cli-truncate@0.2.1: resolution: {integrity: sha512-f4r4yJnbT++qUPI9NR4XLDLq41gQ+uqnPItWG0F5ZkehuNiTTa3EY0S4AqTSUOeJ7/zU41oWPQSNkW5BqPL9bg==} engines: {node: '>=0.10.0'} @@ -8758,10 +8722,6 @@ packages: resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} engines: {node: '>=6'} - clone@1.0.4: - resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} - engines: {node: '>=0.8'} - clsx@2.1.1: resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} engines: {node: '>=6'} @@ -8835,10 +8795,6 @@ packages: resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} engines: {node: '>= 6'} - commander@6.2.1: - resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} - engines: {node: '>= 6'} - commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} @@ -8881,9 +8837,6 @@ packages: engines: {node: ^12.20.0 || ^14.13.0 || >=16.0.0} hasBin: true - confbox@0.1.7: - resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} - config@3.3.7: resolution: {integrity: sha512-mX/n7GKDYZMqvvkY6e6oBY49W8wxdmQt+ho/5lhwFDXqQW9gI+Ahp8EKp8VAbISPnmf2+Bv5uZK7lKXZ6pf1aA==} engines: {node: '>= 10.0.0'} @@ -8892,10 +8845,6 @@ packages: resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==} engines: {node: '>=8'} - consola@3.2.3: - resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} - engines: {node: ^14.18.0 || >=16.10.0} - constant-case@3.0.4: resolution: {integrity: sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==} @@ -8919,12 +8868,12 @@ packages: cookie-signature@1.0.6: resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - cookie@0.4.1: - resolution: {integrity: sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==} + cookie@0.7.0: + resolution: {integrity: sha512-qCf+V4dtlNhSRXGAZatc1TasyFO6GjohcOul807YOb5ik3+kQSnb4d7iajeCL8QHaJ4uZEjCgiCJerKXwdRVlQ==} engines: {node: '>= 0.6'} - cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} + cookie@0.7.1: + resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==} engines: {node: '>= 0.6'} copy-webpack-plugin@11.0.0: @@ -8973,10 +8922,6 @@ packages: resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} engines: {node: '>=8'} - crypto-random-string@4.0.0: - resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} - engines: {node: '>=12'} - css-declaration-sorter@7.2.0: resolution: {integrity: sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==} engines: {node: ^14 || ^16 || >=18} @@ -9209,20 +9154,18 @@ packages: resolution: {integrity: sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==} engines: {node: '>=8'} - defaults@1.0.4: - resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} - define-data-property@1.1.4: resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} + define-lazy-prop@2.0.0: + resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} + engines: {node: '>=8'} + define-properties@1.2.1: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} - defu@6.1.4: - resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} - degenerator@5.0.1: resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} engines: {node: '>= 14'} @@ -9375,8 +9318,8 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-to-chromium@1.5.30: - resolution: {integrity: sha512-sXI35EBN4lYxzc/pIGorlymYNzDBOqkSlVRe6MkgBsW/hW1tpC/HDJ2fjG7XnjakzfLEuvdmux0Mjs6jHq4UOA==} + electron-to-chromium@1.5.34: + resolution: {integrity: sha512-/TZAiChbAflBNjCg+VvstbcwAtIL/VdMFO3NgRFIzBjpvPzWOTIbbO8kNb6RwU4bt9TP7K+3KqBKw/lOU+Y+GA==} elegant-spinner@1.0.1: resolution: {integrity: sha512-B+ZM+RXvRqQaAmkMlO/oSe5nMUOaUnyfGYCEHoR8wrXsZR2mA0XVibsxV1bvTwxdRWah1PkQqso2EzhILGHtEQ==} @@ -9446,8 +9389,8 @@ packages: engines: {node: '>=10'} hasBin: true - envinfo@7.13.0: - resolution: {integrity: sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==} + envinfo@7.14.0: + resolution: {integrity: sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg==} engines: {node: '>=4'} hasBin: true @@ -9518,9 +9461,9 @@ packages: engines: {node: '>=12'} hasBin: true - esbuild@0.21.5: - resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} - engines: {node: '>=12'} + esbuild@0.23.1: + resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==} + engines: {node: '>=18'} hasBin: true escalade@3.2.0: @@ -9572,8 +9515,8 @@ packages: eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - eslint-module-utils@2.11.0: - resolution: {integrity: sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ==} + eslint-module-utils@2.12.0: + resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -9796,10 +9739,6 @@ packages: resolution: {integrity: sha512-tQbH0pH/8LHTnwTrsKWideqi6rFB/QNUawEwrn+WHyz7PX1Tuz2u7wfTvbaNBdP5JD5LVWxNo8/A8CHNZ3bV6g==} engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} - execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} - exit@0.1.2: resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} engines: {node: '>= 0.8.0'} @@ -9815,8 +9754,8 @@ packages: resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - express@4.20.0: - resolution: {integrity: sha512-pLdae7I6QqShF5PnNTCVn4hI91Dx0Grkn2+IAsMTgMIKuQVte2dN9PeGSSAME2FR8anOhVA62QDIUaWVfEXVLw==} + express@4.21.1: + resolution: {integrity: sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==} engines: {node: '>= 0.10.0'} extend@3.0.2: @@ -9853,8 +9792,8 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - fast-uri@3.0.1: - resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} + fast-uri@3.0.2: + resolution: {integrity: sha512-GR6f0hD7XXyNJa25Tb9BuIdN0tdr+0BMi6/CJPH3wJO1JjNG3n/VsSw38AwRdKZABm8lGbPfakLRkYzx2V9row==} fastest-levenshtein@1.0.16: resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} @@ -9866,9 +9805,6 @@ packages: fb-watchman@2.0.2: resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} - fd-package-json@1.2.0: - resolution: {integrity: sha512-45LSPmWf+gC5tdCQMNH4s9Sr00bIkiD9aN7dc5hqkrEw1geRYyDQS1v1oMHAW3ysfxfndqGsrDREHHjNNbKUfA==} - fd-slicer@1.1.0: resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} @@ -9906,14 +9842,10 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} - finalhandler@1.2.0: - resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} + finalhandler@1.3.1: + resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==} engines: {node: '>= 0.8'} - find-cache-dir@2.1.0: - resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} - engines: {node: '>=6'} - find-cache-dir@3.3.2: resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} engines: {node: '>=8'} @@ -9968,10 +9900,6 @@ packages: flatted@3.3.1: resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} - flow-parser@0.245.2: - resolution: {integrity: sha512-FU4yuqC1j2IeWWicpzG0YJrXHJgKjK/AU8QKK/7MvQaNhcoGisDoE7FJLGCtbvnifzsgDWdm9/jtTF7Mp+PJXQ==} - engines: {node: '>=0.4.0'} - fn.name@1.1.0: resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} @@ -10063,10 +9991,6 @@ packages: resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} engines: {node: '>=14.14'} - fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} - fs-monkey@1.0.6: resolution: {integrity: sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==} @@ -10133,16 +10057,12 @@ packages: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} - get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - get-symbol-description@1.0.2: resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} - get-tsconfig@4.8.0: - resolution: {integrity: sha512-Pgba6TExTZ0FJAn1qkJAjIeKoDJ3CsI2ChuLohJnZl/tTU8MVrq3b+2t5UOPfRa4RMsorClBjJALkJUMjG1PAw==} + get-tsconfig@4.8.1: + resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} get-uri@6.0.3: resolution: {integrity: sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==} @@ -10151,10 +10071,6 @@ packages: gettext-parser@1.4.0: resolution: {integrity: sha512-sedZYLHlHeBop/gZ1jdg59hlUEcpcZJofLq2JFwJT1zTqAU3l2wFv6IsuwFHGqbiT9DWzMUW4/em2+hspnmMMA==} - giget@1.2.3: - resolution: {integrity: sha512-8EHPljDvs7qKykr6uw8b+lqLiUc/vUg+KVTI0uND4s63TdsZM2Xus3mflvF0DDG9SiM4RlCkFGL+7aAjRmV7KA==} - hasBin: true - git-hooks-list@1.0.3: resolution: {integrity: sha512-Y7wLWcrLUXwk2noSka166byGCvhMtDRpgHdzCno1UQv/n/Hegp++a2xBWJL1lJarnKD3SWaljD+0z1ztqxuKyQ==} @@ -10225,10 +10141,6 @@ packages: resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - globby@14.0.2: - resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} - engines: {node: '>=18'} - good-listener@1.2.2: resolution: {integrity: sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==} @@ -10297,8 +10209,8 @@ packages: hast-util-is-element@3.0.0: resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} - hast-util-to-string@3.0.0: - resolution: {integrity: sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==} + hast-util-to-string@3.0.1: + resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==} he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} @@ -10394,10 +10306,6 @@ packages: resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} engines: {node: '>=14.18.0'} - human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - humanize-ms@1.2.1: resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} @@ -10551,6 +10459,11 @@ packages: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} + is-docker@2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + is-electron@2.2.2: resolution: {integrity: sha512-FO/Rhvz5tuw4MCWkpMzHFKWD2LsfHzIb7i6MdPYZ/KW7AlxawyLkqdy+jPZP1WubqEADE3O4FUENlJHDfQASRg==} @@ -10585,10 +10498,6 @@ packages: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} - is-interactive@1.0.0: - resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} - engines: {node: '>=8'} - is-map@2.0.3: resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} engines: {node: '>= 0.4'} @@ -10690,10 +10599,6 @@ packages: is-typedarray@1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} - is-unicode-supported@0.1.0: - resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} - engines: {node: '>=10'} - is-weakmap@2.0.2: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} @@ -10713,6 +10618,10 @@ packages: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} + is-wsl@2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + isarray@0.0.1: resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} @@ -10951,8 +10860,8 @@ packages: node-notifier: optional: true - jiti@2.1.0: - resolution: {integrity: sha512-Nftp80J8poC3u+93ZxpjstsgfQ5d0o5qyD6yStv32sgnWr74xRxBppEwsUoA/GIdrJpgGRkC1930YkLcAsFdSw==} + jiti@2.3.3: + resolution: {integrity: sha512-EX4oNDwcXSivPrw2qKH2LB5PoFxEvgtv2JgwW0bU858HoLQ+kutSvjLMUqBd0PeJYEinLWhoI9Ol0eYMqj/wNQ==} hasBin: true joi@17.13.3: @@ -10981,19 +10890,14 @@ packages: jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} - jscodeshift@0.15.2: - resolution: {integrity: sha512-FquR7Okgmc4Sd0aEDwqho3rEiKR3BdvuG9jfdHjLJ6JQoWSMpavug3AoIfnfWhxFlf+5pzQh8qjqz0DWFrNQzA==} - hasBin: true - peerDependencies: - '@babel/preset-env': ^7.1.6 - peerDependenciesMeta: - '@babel/preset-env': - optional: true - jsdoc-type-pratt-parser@4.0.0: resolution: {integrity: sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==} engines: {node: '>=12.0.0'} + jsdoc-type-pratt-parser@4.1.0: + resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} + engines: {node: '>=12.0.0'} + jsdom@20.0.3: resolution: {integrity: sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==} engines: {node: '>=14'} @@ -11003,13 +10907,9 @@ packages: canvas: optional: true - jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} + jsesc@3.0.2: + resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} + engines: {node: '>=6'} hasBin: true json-buffer@3.0.1: @@ -11186,6 +11086,9 @@ packages: resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + lodash._baseiteratee@4.7.0: resolution: {integrity: sha512-nqB9M+wITz0BX/Q2xg6fQ8mLkyfF7MU7eE+MNBNjTHFKeKaZAPEzEg+E8LWxKWf1DQVflNEn9N49yAuqKh2mWQ==} @@ -11241,10 +11144,6 @@ packages: resolution: {integrity: sha512-mmPrW0Fh2fxOzdBbFv4g1m6pR72haFLPJ2G5SJEELf1y+iaQrDG6cWCPjy54RHYbZAt7X+ls690Kw62AdWXBzQ==} engines: {node: '>=0.10.0'} - log-symbols@4.1.0: - resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} - engines: {node: '>=10'} - log-update@2.3.0: resolution: {integrity: sha512-vlP11XfFGyeNQlmEn9tJ66rEW1coA/79m5z6BCkudjbAGE83uhAcGYrBFwfs3AdLiLzGRusRPAbSPK9xZteCmg==} engines: {node: '>=4'} @@ -11288,10 +11187,6 @@ packages: magic-string@0.30.11: resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} - make-dir@2.1.0: - resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} - engines: {node: '>=6'} - make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} @@ -11546,22 +11441,10 @@ packages: minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - minipass@3.3.6: - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} - engines: {node: '>=8'} - - minipass@5.0.0: - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} - engines: {node: '>=8'} - minipass@7.1.2: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} - minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} - mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} @@ -11570,15 +11453,12 @@ packages: engines: {node: '>=10'} hasBin: true - mlly@1.7.1: - resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==} - mock-xmlhttprequest@8.3.0: resolution: {integrity: sha512-yjNaP8HskE7GhO0D12kB35+OvCnNAh2fJnD1/mC5Y3WW8WcozJnC23w+8UoU+dmVR4x1KpAB8PPtybY9wI16Ew==} engines: {node: '>=16.0.0'} - moment-timezone@0.5.45: - resolution: {integrity: sha512-HIWmqA86KcmCAhnMAN0wuDOARV/525R2+lOLotuGFzn4HO+FH+/645z2wx0Dt3iDv6/p61SIvKnDstISainhLQ==} + moment-timezone@0.5.46: + resolution: {integrity: sha512-ZXm9b36esbe7OmdABqIWJuBBiLLwAjrN7CE+7sYdCCx82Nabt1wHDj8TVseS59QIlfFPbOoiBPm6ca9BioG4hw==} moment@2.29.4: resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==} @@ -11631,17 +11511,10 @@ packages: node-abort-controller@3.1.1: resolution: {integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==} - node-dir@0.1.17: - resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} - engines: {node: '>= 0.10.5'} - node-domexception@1.0.0: resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} engines: {node: '>=10.5.0'} - node-fetch-native@1.6.4: - resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==} - node-fetch@2.6.7: resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} engines: {node: 4.x || >=6.0.0} @@ -11690,19 +11563,14 @@ packages: resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==} engines: {node: '>=0.10.0'} - nwsapi@2.2.12: - resolution: {integrity: sha512-qXDmcVlZV4XRtKFzddidpfVP4oMSGhga+xdMc25mv8kaLUHtgzCDhUxkrN8exkGdTlLNaXj7CV3GtON7zuGZ+w==} + nwsapi@2.2.13: + resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==} nyc@15.1.0: resolution: {integrity: sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==} engines: {node: '>=8.9'} hasBin: true - nypm@0.3.11: - resolution: {integrity: sha512-E5GqaAYSnbb6n1qZyik2wjPDZON43FqOJO59+3OkWrnmQtjggrMOVnsyzfjxp/tS6nlYJBA4zRA5jSM2YaadMg==} - engines: {node: ^14.16.0 || >=16.10.0} - hasBin: true - object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} @@ -11742,9 +11610,6 @@ packages: objectorarray@1.0.5: resolution: {integrity: sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg==} - ohash@1.1.3: - resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==} - on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} engines: {node: '>= 0.8'} @@ -11767,6 +11632,10 @@ packages: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} + open@8.4.2: + resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} + engines: {node: '>=12'} + openai@4.56.1: resolution: {integrity: sha512-XMsxdjrWBYgbP6EsDIwbhkQEgeyL2C41te/QrJm8kdfho22exhTUJ/cFJSmCTToam/RSOC1BlOylHvD6i/bmsA==} hasBin: true @@ -11786,10 +11655,6 @@ packages: opts@2.0.2: resolution: {integrity: sha512-k41FwbcLnlgnFh69f4qdUfvDQ+5vaSDnVPFI/y5XuhKRq97EnVVneO9F1ESVCdiVu4fCS2L8usX3mU331hB7pg==} - ora@5.4.1: - resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} - engines: {node: '>=10'} - os-homedir@1.0.2: resolution: {integrity: sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==} engines: {node: '>=0.10.0'} @@ -11876,8 +11741,8 @@ packages: parse-diff@0.8.1: resolution: {integrity: sha512-0QG0HqwXCC/zMohOlaxkQmV1igZq1LQ6xsv/ziex6TDbY0GFxr3TDJN+/aHjWH3s2WTysSW3Bhs9Yfh6DOelFA==} - parse-imports@2.1.1: - resolution: {integrity: sha512-TDT4HqzUiTMO1wJRwg/t/hYk8Wdp3iF/ToMIlAoVQfL1Xs/sTxq1dKWSMjMbQmIarfWKymOyly40+zmPHXMqCA==} + parse-imports@2.2.1: + resolution: {integrity: sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==} engines: {node: '>= 18'} parse-json@5.2.0: @@ -11953,8 +11818,8 @@ packages: path-to-regexp@0.1.10: resolution: {integrity: sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==} - path-to-regexp@1.8.0: - resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} + path-to-regexp@1.9.0: + resolution: {integrity: sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g==} path-to-regexp@6.3.0: resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} @@ -11963,13 +11828,6 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} - path-type@5.0.0: - resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==} - engines: {node: '>=12'} - - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - pbf@3.3.0: resolution: {integrity: sha512-XDF38WCH3z5OV/OVa8GKUNtLAyneuzbCisx7QUCF8Q6Nutx0WnJrQe5O+kOtBlLfRNUws98Y58Lblp+NJG5T4Q==} hasBin: true @@ -11998,10 +11856,6 @@ packages: resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} engines: {node: '>=12'} - 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'} @@ -12010,10 +11864,6 @@ packages: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} - pkg-dir@3.0.0: - resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} - engines: {node: '>=6'} - pkg-dir@4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -12026,16 +11876,13 @@ packages: resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} engines: {node: '>=14.16'} - pkg-types@1.2.0: - resolution: {integrity: sha512-+ifYuSSqOQ8CqP4MbZA5hDpb97n3E8SVWdJe+Wms9kj745lmd3b7EZJiqvmLwAlmRfjrI7Hi5z3kdBJ93lFNPA==} - playwright-core@1.45.1: resolution: {integrity: sha512-LF4CUUtrUu2TCpDw4mcrAIuYrEjVDfT1cHbJMfwnE2+1b8PZcFzPNgvZCvq2JfQ4aTjRCCHw5EJ2tmr2NSzdPg==} engines: {node: '>=18'} hasBin: true - playwright-core@1.47.0: - resolution: {integrity: sha512-1DyHT8OqkcfCkYUD9zzUTfg7EfTd+6a8MkD/NWOvjo0u/SCNd5YmY/lJwFvUZOxJbWNds+ei7ic2+R/cRz/PDg==} + playwright-core@1.47.2: + resolution: {integrity: sha512-3JvMfF+9LJfe16l7AbSmU555PaTl2tPyQsVInqm3id16pdDfvZ8TTZ/pyzmkbDrZTQefyzU7AIHlZqQnxpqHVQ==} engines: {node: '>=18'} hasBin: true @@ -12404,8 +12251,8 @@ packages: psl@1.9.0: resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} - pump@3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} + pump@3.0.2: + resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} punycode.js@2.3.1: resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} @@ -12433,10 +12280,6 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - qs@6.11.0: - resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} - engines: {node: '>=0.6'} - qs@6.12.1: resolution: {integrity: sha512-zWmv4RSuB9r2mYQw3zxQuHWeU+42aKi1wWig/j4ele4ygELZ7PEO6MM7rim9oAQH2A5MWfsAVf/jPvTPgCbvUQ==} engines: {node: '>=0.6'} @@ -12694,12 +12537,16 @@ packages: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} engines: {node: '>= 6'} + readable-stream@4.5.2: + resolution: {integrity: sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - readdirp@4.0.1: - resolution: {integrity: sha512-GkMg9uOTpIWWKbSsgwb5fA4EavTR+SG/PMPoAY8hkhHfEEY0/vqljY+XHqtDf2cr2IJtoNRDbrrEpZUiZCkYRw==} + readdirp@4.0.2: + resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} engines: {node: '>= 14.16.0'} recast@0.23.9: @@ -12738,8 +12585,8 @@ packages: refx@3.1.1: resolution: {integrity: sha512-lwN27W5iYyagpCxxYDYDl0IIiKh0Vgi3wvafqfthbzTfBgLOYAstcftp+G2X612xVaB8rhn5wDxd4er4KEeb8A==} - regenerate-unicode-properties@10.1.1: - resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} + regenerate-unicode-properties@10.2.0: + resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} engines: {node: '>=4'} regenerate@1.4.2: @@ -12754,16 +12601,19 @@ packages: regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} - regexp.prototype.flags@1.5.2: - resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} + regexp.prototype.flags@1.5.3: + resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==} engines: {node: '>= 0.4'} - regexpu-core@5.3.2: - resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} + regexpu-core@6.1.1: + resolution: {integrity: sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==} engines: {node: '>=4'} - regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} + regjsgen@0.8.0: + resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} + + regjsparser@0.11.1: + resolution: {integrity: sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ==} hasBin: true rehype-external-links@3.0.0: @@ -12869,10 +12719,6 @@ packages: resolution: {integrity: sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==} engines: {node: '>=4'} - restore-cursor@3.1.0: - resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} - engines: {node: '>=8'} - retry@0.10.1: resolution: {integrity: sha512-ZXUSQYTHdl3uS7IuCehYfMzKyIDBNoAuUblvy5oGO5UJSUTmStUUVPXbA9Qxd173Bgre53yCQczQuHgRWAdvJQ==} @@ -12888,11 +12734,6 @@ packages: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rimraf@2.6.3: - resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} - 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 @@ -13014,10 +12855,6 @@ packages: select@1.1.2: resolution: {integrity: sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==} - semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} - hasBin: true - semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -13037,10 +12874,6 @@ packages: engines: {node: '>=10'} hasBin: true - send@0.18.0: - resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} - engines: {node: '>= 0.8.0'} - send@0.19.0: resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} engines: {node: '>= 0.8.0'} @@ -13051,8 +12884,8 @@ packages: serialize-javascript@6.0.2: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} - serve-static@1.16.0: - resolution: {integrity: sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==} + serve-static@1.16.2: + resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} engines: {node: '>= 0.8.0'} set-blocking@2.0.0: @@ -13260,12 +13093,12 @@ packages: react-dom: optional: true - storybook@8.2.9: - resolution: {integrity: sha512-S7Q/Yt4A+nu1O23rg39lQvBqL2Vg+PKXbserDWUR4LFJtfmoZ2xGO8oFIhJmvvhjUBvolw1q7QDeswPq2i0sGw==} + storybook@8.3.5: + resolution: {integrity: sha512-hYQVtP2l+3kO8oKDn4fjXXQYxgTRsj/LaV6lUMJH0zt+OhVmDXKJLxmdUP4ieTm0T8wEbSYosFavgPcQZlxRfw==} hasBin: true - streamx@2.20.0: - resolution: {integrity: sha512-ZGd1LhDeGFucr1CUCTBOS58ZhEendd0ttpGT3usTvosS4ntIwKN9LJFp+OeCSprsCPL14BXVRZlHGRY1V9PVzQ==} + streamx@2.20.1: + resolution: {integrity: sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==} string-hash@1.1.3: resolution: {integrity: sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==} @@ -13429,8 +13262,8 @@ packages: svelte: optional: true - svelte-eslint-parser@0.41.0: - resolution: {integrity: sha512-L6f4hOL+AbgfBIB52Z310pg1d2QjRqm7wy3kI1W6hhdhX5bvu7+f0R6w4ykp5HoDdzq+vGhIJmsisaiJDGmVfA==} + svelte-eslint-parser@0.41.1: + resolution: {integrity: sha512-08ndI6zTghzI8SuJAFpvMbA/haPSGn3xz19pjre19yYMw8Nw/wQJ2PrZBI/L8ijGTgtkWCQQiLLy+Z1tfaCwNA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: svelte: ^3.37.0 || ^4.0.0 || ^5.0.0-next.191 @@ -13522,8 +13355,8 @@ packages: symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} - synckit@0.9.1: - resolution: {integrity: sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==} + synckit@0.9.2: + resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} engines: {node: ^14.18.0 || >=16.0.0} tabbable@5.3.3: @@ -13545,25 +13378,9 @@ packages: tar-stream@3.1.7: resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} - tar@6.2.1: - resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} - engines: {node: '>=10'} - telejson@7.2.0: resolution: {integrity: sha512-1QTEcJkJEhc8OnStBx/ILRu5J2p0GjvWsBx56bmZRqnrkdBMUe+nX92jxV+p3dB4CP6PZCdJMQJwCggkNBMzkQ==} - temp-dir@3.0.0: - resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} - engines: {node: '>=14.16'} - - temp@0.8.4: - resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} - engines: {node: '>=6.0.0'} - - tempy@3.1.0: - resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==} - engines: {node: '>=14.16'} - terser-webpack-plugin@5.3.10: resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} engines: {node: '>= 10.13.0'} @@ -13596,8 +13413,8 @@ packages: uglify-js: optional: true - terser@5.32.0: - resolution: {integrity: sha512-v3Gtw3IzpBJ0ugkxEX8U0W6+TnPKRRCWGh1jC/iM/e3Ki5+qvO1L1EAZ56bZasc64aXHwRHNIQEzm6//i5cemQ==} + terser@5.34.1: + resolution: {integrity: sha512-FsJZ7iZLd/BXkz+4xrRTGJ26o/6VTjQytUk8b8OxkwcD2I+79VPJlz7qss1+zE7h8GNIScFqXcDyJ/KqBYZFVA==} engines: {node: '>=10'} hasBin: true @@ -13605,8 +13422,8 @@ packages: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} - text-decoder@1.1.1: - resolution: {integrity: sha512-8zll7REEv4GDD3x4/0pW+ppIxSNs7H1J10IKFZsuOMscumCdM2a+toDGLPA3T+1+fLBql4zbt5z83GEQGGV5VA==} + text-decoder@1.2.0: + resolution: {integrity: sha512-n1yg1mOj9DNpk3NeZOx7T6jchTbyJS3i3cucbNN6FcdPriMZx7NsgrGpWWdWZZGxD7ES1XB+3uoqHMgOKaN+fg==} text-hex@1.0.0: resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} @@ -13777,10 +13594,6 @@ packages: resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} engines: {node: '>=8'} - type-fest@1.4.0: - resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} - engines: {node: '>=10'} - type-fest@2.19.0: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} @@ -13825,9 +13638,6 @@ packages: uc.micro@2.1.0: resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} - ufo@1.5.4: - resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} - unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} @@ -13844,26 +13654,22 @@ packages: resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==} engines: {node: '>=14.0'} - unicode-canonical-property-names-ecmascript@2.0.0: - resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} + unicode-canonical-property-names-ecmascript@2.0.1: + resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==} engines: {node: '>=4'} unicode-match-property-ecmascript@2.0.0: resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} engines: {node: '>=4'} - unicode-match-property-value-ecmascript@2.1.0: - resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} + unicode-match-property-value-ecmascript@2.2.0: + resolution: {integrity: sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==} engines: {node: '>=4'} unicode-property-aliases-ecmascript@2.1.0: resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} engines: {node: '>=4'} - unicorn-magic@0.1.0: - resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} - engines: {node: '>=18'} - unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} @@ -13871,10 +13677,6 @@ packages: resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} engines: {node: '>=8'} - unique-string@3.0.0: - resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} - engines: {node: '>=12'} - unist-util-is@6.0.0: resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} @@ -13902,8 +13704,8 @@ packages: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} - unplugin@1.13.1: - resolution: {integrity: sha512-6Kq1iSSwg7KyjcThRUks9LuqDAKvtnioxbL9iEtB9ctTyBA5OmrB8gZd/d225VJu1w3UpUsKV7eGrvf59J7+VA==} + unplugin@1.14.1: + resolution: {integrity: sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w==} engines: {node: '>=14.0.0'} peerDependencies: webpack-sources: ^3 @@ -14040,9 +13842,6 @@ packages: engines: {node: '>=8'} hasBin: true - walk-up-path@3.0.1: - resolution: {integrity: sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==} - walker@1.0.8: resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} @@ -14057,9 +13856,6 @@ packages: resolution: {integrity: sha512-r0CEmvpH63r4T15ebFqeOjGqU4+EgTx4I510NtK35EMciSdcTxCw3Byy3JnBonz7iyIFZ0AbVo0bbFpEVuhCYA==} hasBin: true - wcwidth@1.0.1: - resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} - web-streams-polyfill@4.0.0-beta.3: resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==} engines: {node: '>= 14'} @@ -14181,8 +13977,8 @@ packages: wildcard@2.0.1: resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==} - winston-transport@4.7.1: - resolution: {integrity: sha512-wQCXXVgfv/wUPOfb2x0ruxzwkcZfxcktz6JIMUaPLmcNhO4bZTwA/WtDWK74xV3F2dKu8YadrFv0qhwYjVEwhA==} + winston-transport@4.8.0: + resolution: {integrity: sha512-qxSTKswC6llEMZKgCQdaWgDuMJQnhuvF5f2Nk3SNXc4byfQ+voo2mX1Px9dkNOuR8p0KAjfPG29PuYUSIb+vSA==} engines: {node: '>= 12.0.0'} winston@3.8.1: @@ -14227,9 +14023,6 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - write-file-atomic@2.4.3: - resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==} - write-file-atomic@3.0.3: resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} @@ -14412,19 +14205,19 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - '@ariakit/core@0.4.10': {} + '@ariakit/core@0.4.11': {} - '@ariakit/react-core@0.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@ariakit/react-core@0.4.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@ariakit/core': 0.4.10 + '@ariakit/core': 0.4.11 '@floating-ui/dom': 1.6.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.2.2(react@18.3.1) - '@ariakit/react@0.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@ariakit/react@0.4.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@ariakit/react-core': 0.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@ariakit/react-core': 0.4.12(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) @@ -14461,8 +14254,8 @@ snapshots: '@automattic/calypso-config': 1.2.0 '@automattic/calypso-url': 1.1.0 '@automattic/languages': 1.0.0 - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/i18n': 5.8.2 + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/i18n': 5.9.0 react: 18.3.1 tslib: 2.5.0 transitivePeerDependencies: @@ -14472,18 +14265,18 @@ snapshots: dependencies: tslib: 2.5.0 - '@automattic/page-pattern-modal@1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.3)(@wordpress/data@10.8.3(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(@types/react-dom@18.3.0)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)': dependencies: '@automattic/color-studio': 2.6.0 '@automattic/typography': 1.0.0 '@wordpress/base-styles': 5.2.0 - '@wordpress/block-editor': 14.3.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 + '@wordpress/block-editor': 14.4.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 clsx: 2.1.1 debug: 4.3.4 lodash: 4.17.21 @@ -14505,12 +14298,12 @@ snapshots: dependencies: '@automattic/popup-monitor': 1.0.2 - '@automattic/social-previews@2.1.0-beta.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@automattic/social-previews@2.1.0-beta.8(@babel/runtime@7.24.7)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@emotion/react': 11.13.3(@types/react@18.3.3)(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 clsx: 2.1.1 prop-types: 15.8.1 react: 18.3.1 @@ -14532,27 +14325,27 @@ snapshots: rtlcss: 3.5.0 webpack: 5.94.0(webpack-cli@4.9.1) - '@babel/code-frame@7.24.7': + '@babel/code-frame@7.25.7': dependencies: - '@babel/highlight': 7.24.7 + '@babel/highlight': 7.25.7 picocolors: 1.1.0 '@babel/compat-data@7.24.7': {} - '@babel/compat-data@7.25.4': {} + '@babel/compat-data@7.25.7': {} '@babel/core@7.24.7': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 '@babel/helper-compilation-targets': 7.24.7 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.7) - '@babel/helpers': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.24.7) + '@babel/helpers': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -14569,190 +14362,190 @@ snapshots: eslint-visitor-keys: 2.1.0 semver: 6.3.1 - '@babel/generator@7.25.6': + '@babel/generator@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 + jsesc: 3.0.2 - '@babel/helper-annotate-as-pure@7.24.7': + '@babel/helper-annotate-as-pure@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 - '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': + '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color '@babel/helper-compilation-targets@7.24.7': dependencies: '@babel/compat-data': 7.24.7 - '@babel/helper-validator-option': 7.24.8 + '@babel/helper-validator-option': 7.25.7 browserslist: 4.23.1 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-compilation-targets@7.25.2': + '@babel/helper-compilation-targets@7.25.7': dependencies: - '@babel/compat-data': 7.25.4 - '@babel/helper-validator-option': 7.24.8 - browserslist: 4.23.1 + '@babel/compat-data': 7.25.7 + '@babel/helper-validator-option': 7.25.7 + browserslist: 4.24.0 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-create-class-features-plugin@7.25.4(@babel/core@7.24.7)': + '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.7) - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/traverse': 7.25.6 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-member-expression-to-functions': 7.25.7 + '@babel/helper-optimise-call-expression': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.24.7) + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/traverse': 7.25.7 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.24.7)': + '@babel/helper-create-regexp-features-plugin@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - regexpu-core: 5.3.2 + '@babel/helper-annotate-as-pure': 7.25.7 + regexpu-core: 6.1.1 semver: 6.3.1 '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-compilation-targets': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 debug: 4.3.4 lodash.debounce: 4.0.8 resolve: 1.22.8 transitivePeerDependencies: - supports-color - '@babel/helper-member-expression-to-functions@7.24.8': + '@babel/helper-member-expression-to-functions@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-module-imports@7.24.7': + '@babel/helper-module-imports@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.25.2(@babel/core@7.24.7)': + '@babel/helper-module-transforms@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.6 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-simple-access': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-optimise-call-expression@7.24.7': + '@babel/helper-optimise-call-expression@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 - '@babel/helper-plugin-utils@7.24.8': {} + '@babel/helper-plugin-utils@7.25.7': {} - '@babel/helper-remap-async-to-generator@7.25.0(@babel/core@7.24.7)': + '@babel/helper-remap-async-to-generator@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-wrap-function': 7.25.0 - '@babel/traverse': 7.25.6 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-wrap-function': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-replace-supers@7.25.0(@babel/core@7.24.7)': + '@babel/helper-replace-supers@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/traverse': 7.25.6 + '@babel/helper-member-expression-to-functions': 7.25.7 + '@babel/helper-optimise-call-expression': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-simple-access@7.24.7': + '@babel/helper-simple-access@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': + '@babel/helper-skip-transparent-expression-wrappers@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-string-parser@7.24.8': {} + '@babel/helper-string-parser@7.25.7': {} - '@babel/helper-validator-identifier@7.24.7': {} + '@babel/helper-validator-identifier@7.25.7': {} - '@babel/helper-validator-option@7.24.8': {} + '@babel/helper-validator-option@7.25.7': {} - '@babel/helper-wrap-function@7.25.0': + '@babel/helper-wrap-function@7.25.7': dependencies: - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/template': 7.25.7 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helpers@7.25.6': + '@babel/helpers@7.25.7': dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 - '@babel/highlight@7.24.7': + '@babel/highlight@7.25.7': dependencies: - '@babel/helper-validator-identifier': 7.24.7 + '@babel/helper-validator-identifier': 7.25.7 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.1.0 - '@babel/parser@7.25.6': + '@babel/parser@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.24.7)': + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.24.7)': + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/plugin-transform-optional-chaining': 7.25.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.24.7)': + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color @@ -14763,431 +14556,436 @@ snapshots: '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-flow@7.24.7(@babel/core@7.24.7)': - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-import-assertions@7.25.6(@babel/core@7.24.7)': + '@babel/plugin-syntax-import-assertions@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.24.7)': + '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-jsx@7.25.7(@babel/core@7.24.7)': + dependencies: + '@babel/core': 7.24.7 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-typescript@7.25.4(@babel/core@7.24.7)': + '@babel/plugin-syntax-typescript@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-arrow-functions@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-async-generator-functions@7.25.4(@babel/core@7.24.7)': + '@babel/plugin-transform-async-generator-functions@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.24.7) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.7) - '@babel/traverse': 7.25.6 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-async-to-generator@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.24.7) + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-block-scoped-functions@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.24.7)': + '@babel/plugin-transform-block-scoping@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-class-properties@7.25.4(@babel/core@7.24.7)': + '@babel/plugin-transform-class-properties@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-class-static-block@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.7) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-classes@7.25.4(@babel/core@7.24.7)': + '@babel/plugin-transform-classes@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.7) - '@babel/traverse': 7.25.6 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.24.7) + '@babel/traverse': 7.25.7 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-computed-properties@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/template': 7.25.0 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/template': 7.25.7 - '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.24.7)': + '@babel/plugin-transform-destructuring@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-dotall-regex@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-duplicate-keys@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-dynamic-import@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-exponentiation-operator@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-export-namespace-from@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-flow-strip-types@7.25.2(@babel/core@7.24.7)': + '@babel/plugin-transform-for-of@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-flow': 7.24.7(@babel/core@7.24.7) - - '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.24.7)': - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-function-name@7.25.1(@babel/core@7.24.7)': + '@babel/plugin-transform-function-name@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-json-strings@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-literals@7.25.2(@babel/core@7.24.7)': + '@babel/plugin-transform-literals@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-logical-assignment-operators@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.7) - '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-member-expression-literals@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-modules-amd@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.24.7)': + '@babel/plugin-transform-modules-commonjs@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-simple-access': 7.24.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-simple-access': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-systemjs@7.25.0(@babel/core@7.24.7)': + '@babel/plugin-transform-modules-systemjs@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.6 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-modules-umd@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-named-capturing-groups-regex@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-new-target@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-nullish-coalescing-operator@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-numeric-separator@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.7) - '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-object-rest-spread@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-compilation-targets': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.7) + '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.24.7) - '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-object-super@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-optional-catch-binding@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.24.7)': + '@babel/plugin-transform-optional-chaining@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.7) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-parameters@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-private-methods@7.25.4(@babel/core@7.24.7)': + '@babel/plugin-transform-private-methods@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-private-property-in-object@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.7) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-property-literals@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-react-constant-elements@7.25.1(@babel/core@7.24.7)': + '@babel/plugin-transform-react-constant-elements@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-react-display-name@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-react-display-name@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-react-jsx-development@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-react-jsx-development@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.24.7) + '@babel/plugin-transform-react-jsx': 7.25.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color '@babel/plugin-transform-react-jsx@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.7) - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-react-pure-annotations@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-react-jsx@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-jsx': 7.25.7(@babel/core@7.24.7) + '@babel/types': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-react-pure-annotations@7.25.7(@babel/core@7.24.7)': + dependencies: + '@babel/core': 7.24.7 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-regenerator@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 regenerator-transform: 0.15.2 - '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-reserved-words@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@babel/plugin-transform-runtime@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.7) babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.24.7) babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.7) @@ -15195,87 +14993,87 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-shorthand-properties@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-spread@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-spread@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-sticky-regex@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-template-literals@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.24.7)': + '@babel/plugin-transform-typeof-symbol@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-typescript@7.25.2(@babel/core@7.24.7)': + '@babel/plugin-transform-typescript@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-typescript': 7.25.4(@babel/core@7.24.7) + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/plugin-syntax-typescript': 7.25.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-unicode-escapes@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-unicode-property-regex@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.24.7)': + '@babel/plugin-transform-unicode-regex@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-unicode-sets-regex@7.25.4(@babel/core@7.24.7)': + '@babel/plugin-transform-unicode-sets-regex@7.25.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 '@babel/preset-env@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/compat-data': 7.24.7 '@babel/core': 7.24.7 '@babel/helper-compilation-targets': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.3(@babel/core@7.24.7) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.0(@babel/core@7.24.7) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.0(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-option': 7.25.7 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.7(@babel/core@7.24.7) '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.7) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.7) '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.7) '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.7) '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.7) '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-syntax-import-assertions': 7.25.6(@babel/core@7.24.7) - '@babel/plugin-syntax-import-attributes': 7.25.6(@babel/core@7.24.7) + '@babel/plugin-syntax-import-assertions': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.24.7) '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.7) '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.7) '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.7) @@ -15287,54 +15085,54 @@ snapshots: '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.7) '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.7) '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.7) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-async-generator-functions': 7.25.4(@babel/core@7.24.7) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.24.7) - '@babel/plugin-transform-class-properties': 7.25.4(@babel/core@7.24.7) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-classes': 7.25.4(@babel/core@7.24.7) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.24.7) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.24.7) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-modules-systemjs': 7.25.0(@babel/core@7.24.7) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-private-methods': 7.25.4(@babel/core@7.24.7) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-unicode-sets-regex': 7.25.4(@babel/core@7.24.7) + '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-async-generator-functions': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-block-scoped-functions': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-class-static-block': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-dotall-regex': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-duplicate-keys': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-dynamic-import': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-exponentiation-operator': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-export-namespace-from': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-json-strings': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-logical-assignment-operators': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-member-expression-literals': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-modules-amd': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-modules-systemjs': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-modules-umd': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-new-target': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-nullish-coalescing-operator': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-numeric-separator': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-object-rest-spread': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-object-super': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-optional-catch-binding': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-optional-chaining': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-private-property-in-object': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-property-literals': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-reserved-words': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-template-literals': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-typeof-symbol': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-unicode-escapes': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-unicode-property-regex': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-unicode-sets-regex': 7.25.7(@babel/core@7.24.7) '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.7) babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.7) babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.24.7) @@ -15344,80 +15142,62 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/preset-flow@7.24.7(@babel/core@7.24.7)': - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-transform-flow-strip-types': 7.25.2(@babel/core@7.24.7) - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/types': 7.25.6 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/types': 7.25.7 esutils: 2.0.3 '@babel/preset-react@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-transform-react-display-name': 7.24.7(@babel/core@7.24.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-option': 7.25.7 + '@babel/plugin-transform-react-display-name': 7.25.7(@babel/core@7.24.7) '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-react-jsx-development': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-react-pure-annotations': 7.24.7(@babel/core@7.24.7) + '@babel/plugin-transform-react-jsx-development': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-react-pure-annotations': 7.25.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color '@babel/preset-typescript@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-option': 7.25.7 '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-typescript': 7.25.2(@babel/core@7.24.7) + '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.24.7) + '@babel/plugin-transform-typescript': 7.25.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color - '@babel/register@7.24.6(@babel/core@7.24.7)': - dependencies: - '@babel/core': 7.24.7 - clone-deep: 4.0.1 - find-cache-dir: 2.1.0 - make-dir: 2.1.0 - pirates: 4.0.6 - source-map-support: 0.5.21 - - '@babel/regjsgen@0.8.0': {} - '@babel/runtime@7.24.7': dependencies: regenerator-runtime: 0.14.1 - '@babel/template@7.25.0': + '@babel/template@7.25.7': dependencies: - '@babel/code-frame': 7.24.7 - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 - '@babel/traverse@7.25.6': + '@babel/traverse@7.25.7': dependencies: - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.25.6': + '@babel/types@7.25.7': dependencies: - '@babel/helper-string-parser': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 + '@babel/helper-string-parser': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 to-fast-properties: 2.0.0 '@base2/pretty-print-object@1.0.1': {} @@ -15448,7 +15228,7 @@ snapshots: '@emotion/babel-plugin@11.12.0': dependencies: - '@babel/helper-module-imports': 7.24.7 + '@babel/helper-module-imports': 7.25.7 '@babel/runtime': 7.24.7 '@emotion/hash': 0.9.2 '@emotion/memoize': 0.9.0 @@ -15572,139 +15352,142 @@ snapshots: esquery: 1.6.0 jsdoc-type-pratt-parser: 4.0.0 - '@esbuild/aix-ppc64@0.21.5': + '@esbuild/aix-ppc64@0.23.1': optional: true '@esbuild/android-arm64@0.17.19': optional: true - '@esbuild/android-arm64@0.21.5': + '@esbuild/android-arm64@0.23.1': optional: true '@esbuild/android-arm@0.17.19': optional: true - '@esbuild/android-arm@0.21.5': + '@esbuild/android-arm@0.23.1': optional: true '@esbuild/android-x64@0.17.19': optional: true - '@esbuild/android-x64@0.21.5': + '@esbuild/android-x64@0.23.1': optional: true '@esbuild/darwin-arm64@0.17.19': optional: true - '@esbuild/darwin-arm64@0.21.5': + '@esbuild/darwin-arm64@0.23.1': optional: true '@esbuild/darwin-x64@0.17.19': optional: true - '@esbuild/darwin-x64@0.21.5': + '@esbuild/darwin-x64@0.23.1': optional: true '@esbuild/freebsd-arm64@0.17.19': optional: true - '@esbuild/freebsd-arm64@0.21.5': + '@esbuild/freebsd-arm64@0.23.1': optional: true '@esbuild/freebsd-x64@0.17.19': optional: true - '@esbuild/freebsd-x64@0.21.5': + '@esbuild/freebsd-x64@0.23.1': optional: true '@esbuild/linux-arm64@0.17.19': optional: true - '@esbuild/linux-arm64@0.21.5': + '@esbuild/linux-arm64@0.23.1': optional: true '@esbuild/linux-arm@0.17.19': optional: true - '@esbuild/linux-arm@0.21.5': + '@esbuild/linux-arm@0.23.1': optional: true '@esbuild/linux-ia32@0.17.19': optional: true - '@esbuild/linux-ia32@0.21.5': + '@esbuild/linux-ia32@0.23.1': optional: true '@esbuild/linux-loong64@0.17.19': optional: true - '@esbuild/linux-loong64@0.21.5': + '@esbuild/linux-loong64@0.23.1': optional: true '@esbuild/linux-mips64el@0.17.19': optional: true - '@esbuild/linux-mips64el@0.21.5': + '@esbuild/linux-mips64el@0.23.1': optional: true '@esbuild/linux-ppc64@0.17.19': optional: true - '@esbuild/linux-ppc64@0.21.5': + '@esbuild/linux-ppc64@0.23.1': optional: true '@esbuild/linux-riscv64@0.17.19': optional: true - '@esbuild/linux-riscv64@0.21.5': + '@esbuild/linux-riscv64@0.23.1': optional: true '@esbuild/linux-s390x@0.17.19': optional: true - '@esbuild/linux-s390x@0.21.5': + '@esbuild/linux-s390x@0.23.1': optional: true '@esbuild/linux-x64@0.17.19': optional: true - '@esbuild/linux-x64@0.21.5': + '@esbuild/linux-x64@0.23.1': optional: true '@esbuild/netbsd-x64@0.17.19': optional: true - '@esbuild/netbsd-x64@0.21.5': + '@esbuild/netbsd-x64@0.23.1': + optional: true + + '@esbuild/openbsd-arm64@0.23.1': optional: true '@esbuild/openbsd-x64@0.17.19': optional: true - '@esbuild/openbsd-x64@0.21.5': + '@esbuild/openbsd-x64@0.23.1': optional: true '@esbuild/sunos-x64@0.17.19': optional: true - '@esbuild/sunos-x64@0.21.5': + '@esbuild/sunos-x64@0.23.1': optional: true '@esbuild/win32-arm64@0.17.19': optional: true - '@esbuild/win32-arm64@0.21.5': + '@esbuild/win32-arm64@0.23.1': optional: true '@esbuild/win32-ia32@0.17.19': optional: true - '@esbuild/win32-ia32@0.21.5': + '@esbuild/win32-ia32@0.23.1': optional: true '@esbuild/win32-x64@0.17.19': optional: true - '@esbuild/win32-x64@0.21.5': + '@esbuild/win32-x64@0.23.1': optional: true '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': @@ -15712,7 +15495,7 @@ snapshots: eslint: 8.57.0 eslint-visitor-keys: 3.4.3 - '@eslint-community/regexpp@4.11.0': {} + '@eslint-community/regexpp@4.11.1': {} '@eslint/eslintrc@2.1.4': dependencies: @@ -15789,7 +15572,7 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 @@ -15802,14 +15585,14 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 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.16.5) + jest-config: 29.7.0(@types/node@20.16.10) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -15838,7 +15621,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -15856,7 +15639,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 20.16.5 + '@types/node': 20.16.10 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -15887,7 +15670,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 20.16.5 + '@types/node': 20.16.10 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -15957,7 +15740,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -16044,19 +15827,19 @@ snapshots: '@octokit/graphql': 7.1.0 '@octokit/request': 8.4.0 '@octokit/request-error': 5.1.0 - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.1 before-after-hook: 2.2.3 universal-user-agent: 6.0.1 '@octokit/endpoint@9.0.5': dependencies: - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.1 universal-user-agent: 6.0.1 '@octokit/graphql@7.1.0': dependencies: '@octokit/request': 8.4.0 - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.1 universal-user-agent: 6.0.1 '@octokit/openapi-types@20.0.0': {} @@ -16066,7 +15849,7 @@ snapshots: '@octokit/plugin-paginate-rest@11.3.1(@octokit/core@5.2.0)': dependencies: '@octokit/core': 5.2.0 - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.1 '@octokit/plugin-paginate-rest@9.2.1(@octokit/core@5.2.0)': dependencies: @@ -16085,11 +15868,11 @@ snapshots: '@octokit/plugin-rest-endpoint-methods@13.2.2(@octokit/core@5.2.0)': dependencies: '@octokit/core': 5.2.0 - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.1 '@octokit/request-error@5.1.0': dependencies: - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.1 deprecation: 2.3.1 once: 1.4.0 @@ -16097,7 +15880,7 @@ snapshots: dependencies: '@octokit/endpoint': 9.0.5 '@octokit/request-error': 5.1.0 - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.1 universal-user-agent: 6.0.1 '@octokit/rest@20.1.1': @@ -16111,7 +15894,7 @@ snapshots: dependencies: '@octokit/openapi-types': 20.0.0 - '@octokit/types@13.5.0': + '@octokit/types@13.6.1': dependencies: '@octokit/openapi-types': 22.2.0 @@ -16495,35 +16278,35 @@ snapshots: '@babel/runtime': 7.24.7 react: 18.3.1 - '@react-spring/animated@9.7.4(react@18.3.1)': + '@react-spring/animated@9.7.5(react@18.3.1)': dependencies: - '@react-spring/shared': 9.7.4(react@18.3.1) - '@react-spring/types': 9.7.4 + '@react-spring/shared': 9.7.5(react@18.3.1) + '@react-spring/types': 9.7.5 react: 18.3.1 '@react-spring/core@9.7.3(react@18.3.1)': dependencies: - '@react-spring/animated': 9.7.4(react@18.3.1) - '@react-spring/shared': 9.7.4(react@18.3.1) - '@react-spring/types': 9.7.4 + '@react-spring/animated': 9.7.5(react@18.3.1) + '@react-spring/shared': 9.7.5(react@18.3.1) + '@react-spring/types': 9.7.5 react: 18.3.1 - '@react-spring/rafz@9.7.4': {} + '@react-spring/rafz@9.7.5': {} - '@react-spring/shared@9.7.4(react@18.3.1)': + '@react-spring/shared@9.7.5(react@18.3.1)': dependencies: - '@react-spring/rafz': 9.7.4 - '@react-spring/types': 9.7.4 + '@react-spring/rafz': 9.7.5 + '@react-spring/types': 9.7.5 react: 18.3.1 - '@react-spring/types@9.7.4': {} + '@react-spring/types@9.7.5': {} '@react-spring/web@9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-spring/animated': 9.7.4(react@18.3.1) + '@react-spring/animated': 9.7.5(react@18.3.1) '@react-spring/core': 9.7.3(react@18.3.1) - '@react-spring/shared': 9.7.4(react@18.3.1) - '@react-spring/types': 9.7.4 + '@react-spring/shared': 9.7.5(react@18.3.1) + '@react-spring/types': 9.7.5 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -16563,8 +16346,8 @@ snapshots: '@rollup/plugin-babel@6.0.4(@babel/core@7.24.7)(rollup@3.29.5)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@rollup/pluginutils': 5.1.0(rollup@3.29.5) + '@babel/helper-module-imports': 7.25.7 + '@rollup/pluginutils': 5.1.2(rollup@3.29.5) optionalDependencies: rollup: 3.29.5 transitivePeerDependencies: @@ -16572,7 +16355,7 @@ snapshots: '@rollup/plugin-commonjs@26.0.1(rollup@3.29.5)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@3.29.5) + '@rollup/pluginutils': 5.1.2(rollup@3.29.5) commondir: 1.0.1 estree-walker: 2.0.2 glob: 10.4.1 @@ -16583,13 +16366,13 @@ snapshots: '@rollup/plugin-json@6.1.0(rollup@3.29.5)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@3.29.5) + '@rollup/pluginutils': 5.1.2(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.0(rollup@3.29.5) + '@rollup/pluginutils': 5.1.2(rollup@3.29.5) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 @@ -16599,7 +16382,7 @@ snapshots: '@rollup/plugin-replace@5.0.2(rollup@3.29.5)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@3.29.5) + '@rollup/pluginutils': 5.1.2(rollup@3.29.5) magic-string: 0.27.0 optionalDependencies: rollup: 3.29.5 @@ -16608,13 +16391,13 @@ snapshots: dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 - terser: 5.32.0 + terser: 5.34.1 optionalDependencies: rollup: 3.29.5 '@rollup/plugin-typescript@12.1.0(rollup@3.29.5)(tslib@2.5.0)(typescript@5.0.4)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@3.29.5) + '@rollup/pluginutils': 5.1.2(rollup@3.29.5) resolve: 1.22.8 typescript: 5.0.4 optionalDependencies: @@ -16626,9 +16409,9 @@ snapshots: estree-walker: 2.0.2 picomatch: 2.2.3 - '@rollup/pluginutils@5.1.0(rollup@3.29.5)': + '@rollup/pluginutils@5.1.2(rollup@3.29.5)': dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 2.3.1 optionalDependencies: @@ -16701,8 +16484,6 @@ snapshots: '@sinclair/typebox@0.27.8': {} - '@sindresorhus/merge-streams@2.3.0': {} - '@sinonjs/commons@3.0.1': dependencies: type-detect: 4.0.8 @@ -16742,15 +16523,15 @@ snapshots: '@slack/logger@4.0.0': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 - '@slack/types@2.13.0': {} + '@slack/types@2.14.0': {} '@slack/web-api@7.3.2': dependencies: '@slack/logger': 4.0.0 - '@slack/types': 2.13.0 - '@types/node': 20.16.5 + '@slack/types': 2.14.0 + '@types/node': 20.16.10 '@types/retry': 0.12.0 axios: 1.7.4 eventemitter3: 5.0.1 @@ -16763,119 +16544,117 @@ snapshots: transitivePeerDependencies: - debug - '@storybook/addon-a11y@8.2.9(storybook@8.2.9)': + '@storybook/addon-a11y@8.3.5(storybook@8.3.5)': dependencies: - '@storybook/addon-highlight': 8.2.9(storybook@8.2.9) + '@storybook/addon-highlight': 8.3.5(storybook@8.3.5) axe-core: 4.10.0 - storybook: 8.2.9 + storybook: 8.3.5 - '@storybook/addon-actions@8.2.9(storybook@8.2.9)': + '@storybook/addon-actions@8.3.5(storybook@8.3.5)': dependencies: '@storybook/global': 5.0.0 '@types/uuid': 9.0.8 dequal: 2.0.3 polished: 4.3.1 - storybook: 8.2.9 + storybook: 8.3.5 uuid: 9.0.1 - '@storybook/addon-backgrounds@8.2.9(storybook@8.2.9)': + '@storybook/addon-backgrounds@8.3.5(storybook@8.3.5)': dependencies: '@storybook/global': 5.0.0 memoizerific: 1.11.3 - storybook: 8.2.9 + storybook: 8.3.5 ts-dedent: 2.2.0 - '@storybook/addon-controls@8.2.9(storybook@8.2.9)': + '@storybook/addon-controls@8.3.5(storybook@8.3.5)': dependencies: + '@storybook/global': 5.0.0 dequal: 2.0.3 lodash: 4.17.21 - storybook: 8.2.9 + storybook: 8.3.5 ts-dedent: 2.2.0 - '@storybook/addon-docs@8.2.9(storybook@8.2.9)': + '@storybook/addon-docs@8.3.5(storybook@8.3.5)': dependencies: - '@babel/core': 7.24.7 '@mdx-js/react': 3.0.1(@types/react@18.3.3)(react@18.3.1) - '@storybook/blocks': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) - '@storybook/csf-plugin': 8.2.9(storybook@8.2.9) + '@storybook/blocks': 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) + '@storybook/csf-plugin': 8.3.5(storybook@8.3.5) '@storybook/global': 5.0.0 - '@storybook/react-dom-shim': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) + '@storybook/react-dom-shim': 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) '@types/react': 18.3.3 fs-extra: 11.2.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) rehype-external-links: 3.0.0 rehype-slug: 6.0.0 - storybook: 8.2.9 + storybook: 8.3.5 ts-dedent: 2.2.0 transitivePeerDependencies: - - supports-color - webpack-sources - '@storybook/addon-essentials@8.2.9(storybook@8.2.9)': - dependencies: - '@storybook/addon-actions': 8.2.9(storybook@8.2.9) - '@storybook/addon-backgrounds': 8.2.9(storybook@8.2.9) - '@storybook/addon-controls': 8.2.9(storybook@8.2.9) - '@storybook/addon-docs': 8.2.9(storybook@8.2.9) - '@storybook/addon-highlight': 8.2.9(storybook@8.2.9) - '@storybook/addon-measure': 8.2.9(storybook@8.2.9) - '@storybook/addon-outline': 8.2.9(storybook@8.2.9) - '@storybook/addon-toolbars': 8.2.9(storybook@8.2.9) - '@storybook/addon-viewport': 8.2.9(storybook@8.2.9) - storybook: 8.2.9 + '@storybook/addon-essentials@8.3.5(storybook@8.3.5)': + dependencies: + '@storybook/addon-actions': 8.3.5(storybook@8.3.5) + '@storybook/addon-backgrounds': 8.3.5(storybook@8.3.5) + '@storybook/addon-controls': 8.3.5(storybook@8.3.5) + '@storybook/addon-docs': 8.3.5(storybook@8.3.5) + '@storybook/addon-highlight': 8.3.5(storybook@8.3.5) + '@storybook/addon-measure': 8.3.5(storybook@8.3.5) + '@storybook/addon-outline': 8.3.5(storybook@8.3.5) + '@storybook/addon-toolbars': 8.3.5(storybook@8.3.5) + '@storybook/addon-viewport': 8.3.5(storybook@8.3.5) + storybook: 8.3.5 ts-dedent: 2.2.0 transitivePeerDependencies: - - supports-color - webpack-sources - '@storybook/addon-highlight@8.2.9(storybook@8.2.9)': + '@storybook/addon-highlight@8.3.5(storybook@8.3.5)': dependencies: '@storybook/global': 5.0.0 - storybook: 8.2.9 + storybook: 8.3.5 - '@storybook/addon-measure@8.2.9(storybook@8.2.9)': + '@storybook/addon-measure@8.3.5(storybook@8.3.5)': dependencies: '@storybook/global': 5.0.0 - storybook: 8.2.9 + storybook: 8.3.5 tiny-invariant: 1.3.3 - '@storybook/addon-outline@8.2.9(storybook@8.2.9)': + '@storybook/addon-outline@8.3.5(storybook@8.3.5)': dependencies: '@storybook/global': 5.0.0 - storybook: 8.2.9 + storybook: 8.3.5 ts-dedent: 2.2.0 - '@storybook/addon-storysource@8.2.9(storybook@8.2.9)': + '@storybook/addon-storysource@8.3.5(storybook@8.3.5)': dependencies: - '@storybook/source-loader': 8.2.9(storybook@8.2.9) + '@storybook/source-loader': 8.3.5(storybook@8.3.5) estraverse: 5.3.0 - storybook: 8.2.9 + storybook: 8.3.5 tiny-invariant: 1.3.3 - '@storybook/addon-toolbars@8.2.9(storybook@8.2.9)': + '@storybook/addon-toolbars@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9 + storybook: 8.3.5 - '@storybook/addon-viewport@8.2.9(storybook@8.2.9)': + '@storybook/addon-viewport@8.3.5(storybook@8.3.5)': dependencies: memoizerific: 1.11.3 - storybook: 8.2.9 + storybook: 8.3.5 '@storybook/addon-webpack5-compiler-babel@3.0.3(webpack@5.94.0(webpack-cli@4.9.1))': dependencies: '@babel/core': 7.24.7 - babel-loader: 9.1.3(@babel/core@7.24.7)(webpack@5.94.0(webpack-cli@4.9.1)) + babel-loader: 9.2.1(@babel/core@7.24.7)(webpack@5.94.0(webpack-cli@4.9.1)) transitivePeerDependencies: - supports-color - webpack - '@storybook/blocks@8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)': + '@storybook/blocks@8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)': dependencies: '@storybook/csf': 0.1.11 '@storybook/global': 5.0.0 - '@storybook/icons': 1.2.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@types/lodash': 4.17.7 + '@storybook/icons': 1.2.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@types/lodash': 4.17.10 color-convert: 2.0.1 dequal: 2.0.3 lodash: 4.17.21 @@ -16883,7 +16662,7 @@ snapshots: memoizerific: 1.11.3 polished: 4.3.1 react-colorful: 5.6.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - storybook: 8.2.9 + storybook: 8.3.5 telejson: 7.2.0 ts-dedent: 2.2.0 util-deprecate: 1.0.2 @@ -16891,10 +16670,10 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/builder-webpack5@8.2.9(storybook@8.2.9)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))': + '@storybook/builder-webpack5@8.3.5(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))': dependencies: - '@storybook/core-webpack': 8.2.9(storybook@8.2.9) - '@types/node': 18.19.50 + '@storybook/core-webpack': 8.3.5(storybook@8.3.5) + '@types/node': 22.7.4 '@types/semver': 7.5.8 browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 @@ -16902,7 +16681,7 @@ snapshots: constants-browserify: 1.0.0 css-loader: 6.11.0(webpack@5.94.0(webpack-cli@4.9.1)) es-module-lexer: 1.5.4 - express: 4.20.0 + express: 4.21.1 fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.0.4)(webpack@5.94.0(webpack-cli@4.9.1)) fs-extra: 11.2.0 html-webpack-plugin: 5.6.0(webpack@5.94.0(webpack-cli@4.9.1)) @@ -16910,7 +16689,7 @@ snapshots: path-browserify: 1.0.1 process: 0.11.10 semver: 7.5.2 - storybook: 8.2.9 + storybook: 8.3.5 style-loader: 3.3.4(webpack@5.94.0(webpack-cli@4.9.1)) terser-webpack-plugin: 5.3.3(webpack@5.94.0(webpack-cli@4.9.1)) ts-dedent: 2.2.0 @@ -16931,63 +16710,41 @@ snapshots: - uglify-js - webpack-cli - '@storybook/channels@8.2.9(storybook@8.2.9)': - dependencies: - storybook: 8.2.9 - - '@storybook/codemod@8.2.9': - dependencies: - '@babel/core': 7.24.7 - '@babel/preset-env': 7.24.7(@babel/core@7.24.7) - '@babel/types': 7.25.6 - '@storybook/core': 8.2.9 - '@storybook/csf': 0.1.11 - '@types/cross-spawn': 6.0.6 - cross-spawn: 7.0.3 - globby: 14.0.2 - jscodeshift: 0.15.2(@babel/preset-env@7.24.7(@babel/core@7.24.7)) - lodash: 4.17.21 - prettier: 3.3.3 - recast: 0.23.9 - tiny-invariant: 1.3.3 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - '@storybook/components@8.2.9(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)))': + '@storybook/channels@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)) + storybook: 8.3.5 - '@storybook/components@8.2.9(storybook@8.2.9)': + '@storybook/components@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9 + storybook: 8.3.5 - '@storybook/core-common@8.2.9(storybook@8.2.9)': + '@storybook/core-common@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9 + storybook: 8.3.5 - '@storybook/core-events@8.2.9(storybook@8.2.9)': + '@storybook/core-events@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9 + storybook: 8.3.5 - '@storybook/core-webpack@8.2.9(storybook@8.2.9)': + '@storybook/core-webpack@8.3.5(storybook@8.3.5)': dependencies: - '@types/node': 18.19.50 - storybook: 8.2.9 + '@types/node': 22.7.4 + storybook: 8.3.5 ts-dedent: 2.2.0 - '@storybook/core@8.2.9': + '@storybook/core@8.3.5': dependencies: '@storybook/csf': 0.1.11 '@types/express': 4.17.21 - '@types/node': 18.19.50 + better-opn: 3.0.2 browser-assert: 1.2.1 - esbuild: 0.21.5 - esbuild-register: 3.6.0(esbuild@0.21.5) - express: 4.20.0 + esbuild: 0.23.1 + esbuild-register: 3.6.0(esbuild@0.23.1) + express: 4.21.1 + jsdoc-type-pratt-parser: 4.1.0 process: 0.11.10 recast: 0.23.9 + semver: 7.6.3 util: 0.12.5 ws: 8.18.0 transitivePeerDependencies: @@ -16995,16 +16752,16 @@ snapshots: - supports-color - utf-8-validate - '@storybook/csf-plugin@8.2.9(storybook@8.2.9)': + '@storybook/csf-plugin@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9 - unplugin: 1.13.1 + storybook: 8.3.5 + unplugin: 1.14.1 transitivePeerDependencies: - webpack-sources - '@storybook/csf-tools@8.2.9(storybook@8.2.9)': + '@storybook/csf-tools@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9 + storybook: 8.3.5 '@storybook/csf@0.1.11': dependencies: @@ -17012,25 +16769,21 @@ snapshots: '@storybook/global@5.0.0': {} - '@storybook/icons@1.2.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@storybook/icons@1.2.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/manager-api@8.2.9(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)))': + '@storybook/manager-api@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)) + storybook: 8.3.5 - '@storybook/manager-api@8.2.9(storybook@8.2.9)': + '@storybook/preset-react-webpack@8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))': dependencies: - storybook: 8.2.9 - - '@storybook/preset-react-webpack@8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))': - dependencies: - '@storybook/core-webpack': 8.2.9(storybook@8.2.9) - '@storybook/react': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4) + '@storybook/core-webpack': 8.3.5(storybook@8.3.5) + '@storybook/react': 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.0.4)(webpack@5.94.0(webpack-cli@4.9.1)) - '@types/node': 18.19.50 + '@types/node': 22.7.4 '@types/semver': 7.5.8 find-up: 5.0.0 fs-extra: 11.2.0 @@ -17040,25 +16793,22 @@ snapshots: react-dom: 18.3.1(react@18.3.1) resolve: 1.22.8 semver: 7.5.2 - storybook: 8.2.9 + storybook: 8.3.5 tsconfig-paths: 4.2.0 webpack: 5.94.0(webpack-cli@4.9.1) optionalDependencies: typescript: 5.0.4 transitivePeerDependencies: + - '@storybook/test' - '@swc/core' - esbuild - supports-color - uglify-js - webpack-cli - '@storybook/preview-api@8.2.9(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)))': - dependencies: - storybook: 8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)) - - '@storybook/preview-api@8.2.9(storybook@8.2.9)': + '@storybook/preview-api@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9 + storybook: 8.3.5 '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.0.4)(webpack@5.94.0(webpack-cli@4.9.1))': dependencies: @@ -17074,116 +16824,81 @@ snapshots: transitivePeerDependencies: - supports-color - '@storybook/react-dom-shim@8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)))': - dependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - storybook: 8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)) - - '@storybook/react-dom-shim@8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)': + '@storybook/react-dom-shim@8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)': dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 8.2.9 + storybook: 8.3.5 - '@storybook/react-webpack5@8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))': + '@storybook/react-webpack5@8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))': dependencies: - '@storybook/builder-webpack5': 8.2.9(storybook@8.2.9)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0)) - '@storybook/preset-react-webpack': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0)) - '@storybook/react': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4) - '@types/node': 18.19.50 + '@storybook/builder-webpack5': 8.3.5(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0)) + '@storybook/preset-react-webpack': 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0)) + '@storybook/react': 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4) + '@types/node': 22.7.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 8.2.9 + storybook: 8.3.5 optionalDependencies: typescript: 5.0.4 transitivePeerDependencies: - '@rspack/core' + - '@storybook/test' - '@swc/core' - esbuild - supports-color - uglify-js - webpack-cli - '@storybook/react@8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)))(typescript@5.0.4)': + '@storybook/react@8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4)': dependencies: - '@storybook/components': 8.2.9(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7))) + '@storybook/components': 8.3.5(storybook@8.3.5) '@storybook/global': 5.0.0 - '@storybook/manager-api': 8.2.9(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7))) - '@storybook/preview-api': 8.2.9(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7))) - '@storybook/react-dom-shim': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7))) - '@storybook/theming': 8.2.9(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7))) + '@storybook/manager-api': 8.3.5(storybook@8.3.5) + '@storybook/preview-api': 8.3.5(storybook@8.3.5) + '@storybook/react-dom-shim': 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) + '@storybook/theming': 8.3.5(storybook@8.3.5) '@types/escodegen': 0.0.6 '@types/estree': 0.0.51 - '@types/node': 18.19.50 + '@types/node': 22.7.4 acorn: 7.4.1 acorn-jsx: 5.3.2(acorn@7.4.1) acorn-walk: 7.2.0 escodegen: 2.1.0 html-tags: 3.3.1 - lodash: 4.17.21 prop-types: 15.8.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-element-to-jsx-string: 15.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) semver: 7.5.2 - storybook: 8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)) + storybook: 8.3.5 ts-dedent: 2.2.0 type-fest: 2.19.0 util-deprecate: 1.0.2 optionalDependencies: typescript: 5.0.4 - '@storybook/react@8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9)(typescript@5.0.4)': - dependencies: - '@storybook/components': 8.2.9(storybook@8.2.9) - '@storybook/global': 5.0.0 - '@storybook/manager-api': 8.2.9(storybook@8.2.9) - '@storybook/preview-api': 8.2.9(storybook@8.2.9) - '@storybook/react-dom-shim': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) - '@storybook/theming': 8.2.9(storybook@8.2.9) - '@types/escodegen': 0.0.6 - '@types/estree': 0.0.51 - '@types/node': 18.19.50 - acorn: 7.4.1 - acorn-jsx: 5.3.2(acorn@7.4.1) - acorn-walk: 7.2.0 - escodegen: 2.1.0 - html-tags: 3.3.1 - lodash: 4.17.21 - prop-types: 15.8.1 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-element-to-jsx-string: 15.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - semver: 7.5.2 - storybook: 8.2.9 - ts-dedent: 2.2.0 - type-fest: 2.19.0 - util-deprecate: 1.0.2 - optionalDependencies: - typescript: 5.0.4 - - '@storybook/source-loader@8.2.9(storybook@8.2.9)': + '@storybook/source-loader@8.3.5(storybook@8.3.5)': dependencies: '@storybook/csf': 0.1.11 estraverse: 5.3.0 lodash: 4.17.21 prettier: 3.3.3 - storybook: 8.2.9 + storybook: 8.3.5 - '@storybook/test-runner@0.19.1(storybook@8.2.9)': + '@storybook/test-runner@0.19.1(storybook@8.3.5)': dependencies: '@babel/core': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/generator': 7.25.7 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 '@jest/types': 29.6.3 - '@storybook/core-common': 8.2.9(storybook@8.2.9) + '@storybook/core-common': 8.3.5(storybook@8.3.5) '@storybook/csf': 0.1.11 - '@storybook/csf-tools': 8.2.9(storybook@8.2.9) - '@storybook/preview-api': 8.2.9(storybook@8.2.9) - '@swc/core': 1.7.24 - '@swc/jest': 0.2.36(@swc/core@1.7.24) + '@storybook/csf-tools': 8.3.5(storybook@8.3.5) + '@storybook/preview-api': 8.3.5(storybook@8.3.5) + '@swc/core': 1.7.26 + '@swc/jest': 0.2.36(@swc/core@1.7.26) expect-playwright: 0.8.0 jest: 29.7.0 jest-circus: 29.7.0 @@ -17205,13 +16920,9 @@ snapshots: - supports-color - ts-node - '@storybook/theming@8.2.9(storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)))': - dependencies: - storybook: 8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)) - - '@storybook/theming@8.2.9(storybook@8.2.9)': + '@storybook/theming@8.3.5(storybook@8.3.5)': dependencies: - storybook: 8.2.9 + storybook: 8.3.5 '@svgr/babel-plugin-add-jsx-attribute@7.0.0(@babel/core@7.24.7)': dependencies: @@ -17269,7 +16980,7 @@ snapshots: '@svgr/hast-util-to-babel-ast@7.0.0': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 entities: 4.5.0 '@svgr/plugin-jsx@7.0.0': @@ -17293,7 +17004,7 @@ snapshots: '@svgr/webpack@7.0.0(typescript@5.0.4)': dependencies: '@babel/core': 7.24.7 - '@babel/plugin-transform-react-constant-elements': 7.25.1(@babel/core@7.24.7) + '@babel/plugin-transform-react-constant-elements': 7.25.7(@babel/core@7.24.7) '@babel/preset-env': 7.24.7(@babel/core@7.24.7) '@babel/preset-react': 7.24.7(@babel/core@7.24.7) '@babel/preset-typescript': 7.24.7(@babel/core@7.24.7) @@ -17304,58 +17015,58 @@ snapshots: - supports-color - typescript - '@swc/core-darwin-arm64@1.7.24': + '@swc/core-darwin-arm64@1.7.26': optional: true - '@swc/core-darwin-x64@1.7.24': + '@swc/core-darwin-x64@1.7.26': optional: true - '@swc/core-linux-arm-gnueabihf@1.7.24': + '@swc/core-linux-arm-gnueabihf@1.7.26': optional: true - '@swc/core-linux-arm64-gnu@1.7.24': + '@swc/core-linux-arm64-gnu@1.7.26': optional: true - '@swc/core-linux-arm64-musl@1.7.24': + '@swc/core-linux-arm64-musl@1.7.26': optional: true - '@swc/core-linux-x64-gnu@1.7.24': + '@swc/core-linux-x64-gnu@1.7.26': optional: true - '@swc/core-linux-x64-musl@1.7.24': + '@swc/core-linux-x64-musl@1.7.26': optional: true - '@swc/core-win32-arm64-msvc@1.7.24': + '@swc/core-win32-arm64-msvc@1.7.26': optional: true - '@swc/core-win32-ia32-msvc@1.7.24': + '@swc/core-win32-ia32-msvc@1.7.26': optional: true - '@swc/core-win32-x64-msvc@1.7.24': + '@swc/core-win32-x64-msvc@1.7.26': optional: true - '@swc/core@1.7.24': + '@swc/core@1.7.26': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.12 optionalDependencies: - '@swc/core-darwin-arm64': 1.7.24 - '@swc/core-darwin-x64': 1.7.24 - '@swc/core-linux-arm-gnueabihf': 1.7.24 - '@swc/core-linux-arm64-gnu': 1.7.24 - '@swc/core-linux-arm64-musl': 1.7.24 - '@swc/core-linux-x64-gnu': 1.7.24 - '@swc/core-linux-x64-musl': 1.7.24 - '@swc/core-win32-arm64-msvc': 1.7.24 - '@swc/core-win32-ia32-msvc': 1.7.24 - '@swc/core-win32-x64-msvc': 1.7.24 + '@swc/core-darwin-arm64': 1.7.26 + '@swc/core-darwin-x64': 1.7.26 + '@swc/core-linux-arm-gnueabihf': 1.7.26 + '@swc/core-linux-arm64-gnu': 1.7.26 + '@swc/core-linux-arm64-musl': 1.7.26 + '@swc/core-linux-x64-gnu': 1.7.26 + '@swc/core-linux-x64-musl': 1.7.26 + '@swc/core-win32-arm64-msvc': 1.7.26 + '@swc/core-win32-ia32-msvc': 1.7.26 + '@swc/core-win32-x64-msvc': 1.7.26 '@swc/counter@0.1.3': {} - '@swc/jest@0.2.36(@swc/core@1.7.24)': + '@swc/jest@0.2.36(@swc/core@1.7.26)': dependencies: '@jest/create-cache-key-function': 29.7.0 - '@swc/core': 1.7.24 + '@swc/core': 1.7.26 '@swc/counter': 0.1.3 jsonc-parser: 3.3.1 @@ -17410,7 +17121,7 @@ snapshots: '@testing-library/dom@10.4.0': dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.25.7 '@babel/runtime': 7.24.7 '@types/aria-query': 5.0.4 aria-query: 5.3.0 @@ -17421,7 +17132,7 @@ snapshots: '@testing-library/dom@8.20.1': dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.25.7 '@babel/runtime': 7.24.7 '@types/aria-query': 5.0.4 aria-query: 5.1.3 @@ -17433,7 +17144,7 @@ snapshots: '@testing-library/jest-dom@6.5.0': dependencies: '@adobe/css-tools': 4.4.0 - aria-query: 5.3.0 + aria-query: 5.3.2 chalk: 3.0.0 css.escape: 1.5.1 dom-accessibility-api: 0.6.3 @@ -17485,45 +17196,41 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 '@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.25.6 + '@babel/types': 7.25.7 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 '@types/body-parser@1.19.5': dependencies: '@types/connect': 3.4.38 - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/clean-css@4.2.11': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 source-map: 0.6.1 '@types/connect@3.4.38': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/cookie@0.6.0': {} - '@types/cross-spawn@6.0.6': - dependencies: - '@types/node': 20.16.5 - '@types/css-tree@2.3.8': {} '@types/debug@4.1.12': @@ -17532,17 +17239,15 @@ snapshots: '@types/doctrine@0.0.9': {} - '@types/emscripten@1.39.13': {} - '@types/escodegen@0.0.6': {} '@types/estree@0.0.51': {} - '@types/estree@1.0.5': {} + '@types/estree@1.0.6': {} - '@types/express-serve-static-core@4.19.5': + '@types/express-serve-static-core@4.19.6': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/qs': 6.9.15 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -17550,18 +17255,18 @@ snapshots: '@types/express@4.17.21': dependencies: '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 4.19.5 + '@types/express-serve-static-core': 4.19.6 '@types/qs': 6.9.15 '@types/serve-static': 1.15.7 '@types/glob@7.2.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/graceful-fs@4.1.9': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/gradient-parser@0.1.3': {} @@ -17603,7 +17308,7 @@ snapshots: '@types/jsdom@20.0.1': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/tough-cookie': 4.0.5 parse5: 7.1.2 @@ -17613,7 +17318,11 @@ snapshots: '@types/linkify-it@5.0.0': {} - '@types/lodash@4.17.7': {} + '@types/lodash-es@4.17.12': + dependencies: + '@types/lodash': 4.17.10 + + '@types/lodash@4.17.10': {} '@types/markdown-it@14.1.2': dependencies: @@ -17638,20 +17347,24 @@ snapshots: '@types/node-fetch@2.6.11': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 form-data: 4.0.0 - '@types/node@18.19.50': + '@types/node@18.19.54': dependencies: undici-types: 5.26.5 - '@types/node@20.16.5': + '@types/node@20.16.10': + dependencies: + undici-types: 6.19.8 + + '@types/node@22.7.4': dependencies: undici-types: 6.19.8 '@types/parse-json@4.0.2': {} - '@types/prop-types@15.7.12': {} + '@types/prop-types@15.7.13': {} '@types/qrcode.react@1.0.5': dependencies: @@ -17665,7 +17378,7 @@ snapshots: dependencies: '@types/react': 18.3.3 - '@types/react-redux@7.1.33': + '@types/react-redux@7.1.34': dependencies: '@types/hoist-non-react-statics': 3.3.5 '@types/react': 18.3.3 @@ -17689,7 +17402,7 @@ snapshots: '@types/react@18.3.3': dependencies: - '@types/prop-types': 15.7.12 + '@types/prop-types': 15.7.13 csstype: 3.1.3 '@types/resolve@1.20.2': {} @@ -17705,17 +17418,17 @@ snapshots: '@types/send@0.17.4': dependencies: '@types/mime': 1.3.5 - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/serve-static@1.15.7': dependencies: '@types/http-errors': 2.0.4 - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/send': 0.17.4 '@types/simple-peer@9.11.8': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/sizzle@2.3.8': {} @@ -17733,16 +17446,16 @@ snapshots: '@types/wait-on@5.3.4': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 '@types/wordpress__block-editor@11.5.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@types/react': 18.3.3 '@types/wordpress__blocks': 12.5.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/keycodes': 4.8.2 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/keycodes': 4.9.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' @@ -17754,9 +17467,9 @@ snapshots: dependencies: '@types/react': 18.3.3 '@types/wordpress__shortcode': 2.3.6 - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 transitivePeerDependencies: - '@emotion/is-prop-valid' - react @@ -17769,10 +17482,10 @@ snapshots: '@types/wordpress__block-editor': 11.5.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@types/wordpress__blocks': 12.5.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@types/wordpress__media-utils': 4.14.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 transitivePeerDependencies: - '@emotion/is-prop-valid' - '@types/react-dom' @@ -17785,8 +17498,8 @@ snapshots: '@types/wordpress__media-utils@4.14.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@types/wordpress__block-editor': 11.5.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.8.1 + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.9.0 transitivePeerDependencies: - '@emotion/is-prop-valid' - '@types/react' @@ -17807,12 +17520,12 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 optional: true '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.0.4))(eslint@8.57.0)(typescript@5.0.4)': dependencies: - '@eslint-community/regexpp': 4.11.0 + '@eslint-community/regexpp': 4.11.1 '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.0.4) '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.0.4) @@ -18031,44 +17744,44 @@ snapshots: '@webpack-cli/info@1.5.0(webpack-cli@4.9.1(webpack@5.94.0))': dependencies: - envinfo: 7.13.0 + envinfo: 7.14.0 webpack-cli: 4.9.1(webpack@5.94.0) '@webpack-cli/serve@1.7.0(webpack-cli@4.9.1(webpack@5.94.0))': dependencies: webpack-cli: 4.9.1(webpack@5.94.0) - '@wordpress/a11y@4.8.2': + '@wordpress/a11y@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/dom-ready': 4.8.1 - '@wordpress/i18n': 5.8.2 + '@wordpress/dom-ready': 4.9.0 + '@wordpress/i18n': 5.9.0 - '@wordpress/annotations@3.8.3(react@18.3.1)': + '@wordpress/annotations@3.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/hooks': 4.8.2 - '@wordpress/i18n': 5.8.2 - '@wordpress/rich-text': 7.8.3(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/hooks': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) react: 18.3.1 uuid: 9.0.1 - '@wordpress/api-fetch@7.8.2': + '@wordpress/api-fetch@7.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/i18n': 5.8.2 - '@wordpress/url': 4.8.1 + '@wordpress/i18n': 5.9.0 + '@wordpress/url': 4.9.0 - '@wordpress/autop@4.8.1': + '@wordpress/autop@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/babel-plugin-import-jsx-pragma@5.8.1(@babel/core@7.24.7)': + '@wordpress/babel-plugin-import-jsx-pragma@5.9.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@wordpress/babel-preset-default@8.8.2': + '@wordpress/babel-preset-default@8.9.0': dependencies: '@babel/core': 7.24.7 '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.24.7) @@ -18076,8 +17789,8 @@ snapshots: '@babel/preset-env': 7.24.7(@babel/core@7.24.7) '@babel/preset-typescript': 7.24.7(@babel/core@7.24.7) '@babel/runtime': 7.24.7 - '@wordpress/browserslist-config': 6.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/browserslist-config': 6.9.0 + '@wordpress/warning': 3.9.0 browserslist: 4.23.1 core-js: 3.38.1 react: 18.3.1 @@ -18086,48 +17799,48 @@ snapshots: '@wordpress/base-styles@5.2.0': {} - '@wordpress/base-styles@5.8.1': {} + '@wordpress/base-styles@5.9.0': {} - '@wordpress/blob@4.8.1': + '@wordpress/blob@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/block-editor@14.3.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-editor@14.4.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 '@emotion/react': 11.13.3(@types/react@18.3.3)(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(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.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blob': 4.8.1 - '@wordpress/block-serialization-default-parser': 5.8.1 - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/commands': 1.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/escape-html': 3.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/preferences': 4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/style-engine': 2.8.1 - '@wordpress/token-list': 3.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 - '@wordpress/wordcount': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-serialization-default-parser': 5.9.0 + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/commands': 1.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/escape-html': 3.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/preferences': 4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/style-engine': 2.9.0 + '@wordpress/token-list': 3.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 + '@wordpress/wordcount': 4.9.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18150,42 +17863,42 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/block-editor@14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-editor@14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 '@emotion/react': 11.13.3(@types/react@18.3.3)(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(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.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blob': 4.8.1 - '@wordpress/block-serialization-default-parser': 5.8.1 - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/commands': 1.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/escape-html': 3.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/preferences': 4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/style-engine': 2.8.1 - '@wordpress/token-list': 3.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 - '@wordpress/wordcount': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-serialization-default-parser': 5.9.0 + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/commands': 1.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/escape-html': 3.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/preferences': 4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/style-engine': 2.9.0 + '@wordpress/token-list': 3.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 + '@wordpress/wordcount': 4.9.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18208,42 +17921,42 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/block-editor@14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-editor@14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 '@emotion/react': 11.13.3(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.3(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.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blob': 4.8.1 - '@wordpress/block-serialization-default-parser': 5.8.1 - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/commands': 1.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/escape-html': 3.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/preferences': 4.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/style-engine': 2.8.1 - '@wordpress/token-list': 3.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 - '@wordpress/wordcount': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-serialization-default-parser': 5.9.0 + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/commands': 1.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/escape-html': 3.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/preferences': 4.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/style-engine': 2.9.0 + '@wordpress/token-list': 3.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 + '@wordpress/wordcount': 4.9.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18266,42 +17979,42 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/block-library@9.8.5(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-library@9.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/autop': 4.8.1 - '@wordpress/blob': 4.8.1 - '@wordpress/block-editor': 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/escape-html': 3.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/interactivity': 6.8.2 - '@wordpress/interactivity-router': 2.8.3 - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/patterns': 2.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/reusable-blocks': 5.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/server-side-render': 5.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.8.1 - '@wordpress/viewport': 6.8.3(react@18.3.1) - '@wordpress/wordcount': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/autop': 4.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-editor': 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/escape-html': 3.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/interactivity': 6.9.0 + '@wordpress/interactivity-router': 2.9.0 + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/patterns': 2.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/reusable-blocks': 5.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/server-side-render': 5.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.9.0 + '@wordpress/viewport': 6.9.0(react@18.3.1) + '@wordpress/wordcount': 4.9.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18321,42 +18034,42 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/block-library@9.8.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-library@9.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/autop': 4.8.1 - '@wordpress/blob': 4.8.1 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/escape-html': 3.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/interactivity': 6.8.2 - '@wordpress/interactivity-router': 2.8.3 - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/patterns': 2.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/reusable-blocks': 5.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/server-side-render': 5.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.8.1 - '@wordpress/viewport': 6.8.3(react@18.3.1) - '@wordpress/wordcount': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/autop': 4.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/escape-html': 3.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/interactivity': 6.9.0 + '@wordpress/interactivity-router': 2.9.0 + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/patterns': 2.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/reusable-blocks': 5.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/server-side-render': 5.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.9.0 + '@wordpress/viewport': 6.9.0(react@18.3.1) + '@wordpress/wordcount': 4.9.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18376,28 +18089,28 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/block-serialization-default-parser@5.8.1': + '@wordpress/block-serialization-default-parser@5.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/blocks@13.8.4(react@18.3.1)': + '@wordpress/blocks@13.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/autop': 4.8.1 - '@wordpress/blob': 4.8.1 - '@wordpress/block-serialization-default-parser': 5.8.1 - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/shortcode': 4.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/autop': 4.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-serialization-default-parser': 5.9.0 + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/shortcode': 4.9.0 + '@wordpress/warning': 3.9.0 change-case: 4.1.2 colord: 2.9.3 fast-deep-equal: 3.1.3 @@ -18411,18 +18124,18 @@ snapshots: simple-html-tokenizer: 0.5.11 uuid: 9.0.1 - '@wordpress/browserslist-config@6.8.1': {} + '@wordpress/browserslist-config@6.9.0': {} - '@wordpress/commands@1.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/commands@1.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 clsx: 2.1.1 cmdk: 1.0.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 @@ -18433,16 +18146,16 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/commands@1.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/commands@1.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 clsx: 2.1.1 cmdk: 1.0.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 @@ -18453,16 +18166,16 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/commands@1.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/commands@1.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 clsx: 2.1.1 cmdk: 1.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 @@ -18473,9 +18186,9 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/components@28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/components@28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@ariakit/react': 0.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@ariakit/react': 0.4.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@babel/runtime': 7.24.7 '@emotion/cache': 11.13.1 '@emotion/css': 11.13.4 @@ -18487,23 +18200,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.8.2 - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/escape-html': 3.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/keycodes': 4.8.2 - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/warning': 3.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/escape-html': 3.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/keycodes': 4.9.0 + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/warning': 3.9.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18527,9 +18240,9 @@ snapshots: - '@types/react' - supports-color - '@wordpress/components@28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/components@28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@ariakit/react': 0.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@ariakit/react': 0.4.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@babel/runtime': 7.24.7 '@emotion/cache': 11.13.1 '@emotion/css': 11.13.4 @@ -18541,23 +18254,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.8.2 - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/escape-html': 3.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/keycodes': 4.8.2 - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/warning': 3.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/escape-html': 3.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/keycodes': 4.9.0 + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/warning': 3.9.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18581,56 +18294,56 @@ snapshots: - '@types/react' - supports-color - '@wordpress/compose@7.8.3(react@18.2.0)': + '@wordpress/compose@7.9.0(react@18.2.0)': dependencies: '@babel/runtime': 7.24.7 '@types/mousetrap': 1.6.15 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/keycodes': 4.8.2 - '@wordpress/priority-queue': 3.8.1 - '@wordpress/undo-manager': 1.8.1 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/keycodes': 4.9.0 + '@wordpress/priority-queue': 3.9.0 + '@wordpress/undo-manager': 1.9.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.8.3(react@18.3.1)': + '@wordpress/compose@7.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 '@types/mousetrap': 1.6.15 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/keycodes': 4.8.2 - '@wordpress/priority-queue': 3.8.1 - '@wordpress/undo-manager': 1.8.1 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/keycodes': 4.9.0 + '@wordpress/priority-queue': 3.9.0 + '@wordpress/undo-manager': 1.9.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.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-commands@1.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/block-editor': 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/commands': 1.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/router': 1.8.1(react@18.3.1) - '@wordpress/url': 4.8.1 + '@wordpress/block-editor': 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/commands': 1.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/router': 1.9.0(react@18.3.1) + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -18641,22 +18354,22 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/core-commands@1.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-commands@1.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/commands': 1.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/router': 1.8.1(react@18.3.1) - '@wordpress/url': 4.8.1 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/commands': 1.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/router': 1.9.0(react@18.3.1) + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -18667,25 +18380,25 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/core-data@7.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-data@7.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/block-editor': 14.3.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/sync': 1.8.1 - '@wordpress/undo-manager': 1.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/block-editor': 14.4.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/sync': 1.9.0 + '@wordpress/undo-manager': 1.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 change-case: 4.1.2 equivalent-key-map: 0.2.2 fast-deep-equal: 3.1.3 @@ -18701,25 +18414,25 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/core-data@7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-data@7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/block-editor': 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/sync': 1.8.1 - '@wordpress/undo-manager': 1.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/block-editor': 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/sync': 1.9.0 + '@wordpress/undo-manager': 1.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 change-case: 4.1.2 equivalent-key-map: 0.2.2 fast-deep-equal: 3.1.3 @@ -18735,25 +18448,25 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/core-data@7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-data@7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/sync': 1.8.1 - '@wordpress/undo-manager': 1.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/sync': 1.9.0 + '@wordpress/undo-manager': 1.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 change-case: 4.1.2 equivalent-key-map: 0.2.2 fast-deep-equal: 3.1.3 @@ -18769,16 +18482,16 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/data@10.8.3(react@18.2.0)': + '@wordpress/data@10.9.0(react@18.2.0)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/compose': 7.8.3(react@18.2.0) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/priority-queue': 3.8.1 - '@wordpress/private-apis': 1.8.1 - '@wordpress/redux-routine': 5.8.1(redux@4.2.1) + '@wordpress/compose': 7.9.0(react@18.2.0) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/priority-queue': 3.9.0 + '@wordpress/private-apis': 1.9.0 + '@wordpress/redux-routine': 5.9.0(redux@4.2.1) deepmerge: 4.3.1 equivalent-key-map: 0.2.2 is-plain-object: 5.0.0 @@ -18788,16 +18501,16 @@ snapshots: rememo: 4.0.2 use-memo-one: 1.1.3(react@18.2.0) - '@wordpress/data@10.8.3(react@18.3.1)': + '@wordpress/data@10.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/is-shallow-equal': 5.8.1 - '@wordpress/priority-queue': 3.8.1 - '@wordpress/private-apis': 1.8.1 - '@wordpress/redux-routine': 5.8.1(redux@4.2.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/is-shallow-equal': 5.9.0 + '@wordpress/priority-queue': 3.9.0 + '@wordpress/private-apis': 1.9.0 + '@wordpress/redux-routine': 5.9.0(redux@4.2.1) deepmerge: 4.3.1 equivalent-key-map: 0.2.2 is-plain-object: 5.0.0 @@ -18807,19 +18520,19 @@ snapshots: rememo: 4.0.2 use-memo-one: 1.1.3(react@18.3.1) - '@wordpress/dataviews@4.4.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/dataviews@4.5.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@ariakit/react': 0.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@ariakit/react': 0.4.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@babel/runtime': 7.24.7 - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/warning': 3.9.0 clsx: 2.1.1 react: 18.3.1 remove-accents: 0.5.0 @@ -18829,19 +18542,19 @@ snapshots: - react-dom - supports-color - '@wordpress/dataviews@4.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/dataviews@4.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@ariakit/react': 0.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@ariakit/react': 0.4.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@babel/runtime': 7.24.7 - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/warning': 3.9.0 clsx: 2.1.1 react: 18.3.1 remove-accents: 0.5.0 @@ -18851,64 +18564,64 @@ snapshots: - react-dom - supports-color - '@wordpress/date@5.8.2': + '@wordpress/date@5.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/deprecated': 4.8.2 + '@wordpress/deprecated': 4.9.0 moment: 2.29.4 - moment-timezone: 0.5.45 + moment-timezone: 0.5.46 - '@wordpress/dependency-extraction-webpack-plugin@6.8.3(webpack@5.94.0(webpack-cli@4.9.1))': + '@wordpress/dependency-extraction-webpack-plugin@6.9.0(webpack@5.94.0(webpack-cli@4.9.1))': dependencies: json2php: 0.0.7 webpack: 5.94.0(webpack-cli@4.9.1) - '@wordpress/deprecated@4.8.2': + '@wordpress/deprecated@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/hooks': 4.8.2 + '@wordpress/hooks': 4.9.0 - '@wordpress/dom-ready@4.8.1': + '@wordpress/dom-ready@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/dom@4.8.2': + '@wordpress/dom@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/deprecated': 4.8.2 + '@wordpress/deprecated': 4.9.0 - '@wordpress/edit-post@8.8.6(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/edit-post@8.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/block-editor': 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/block-library': 9.8.5(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/commands': 1.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-commands': 1.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/editor': 14.8.6(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/plugins': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/viewport': 6.8.3(react@18.3.1) - '@wordpress/warning': 3.8.1 - '@wordpress/widgets': 4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/block-editor': 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/block-library': 9.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/commands': 1.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-commands': 1.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/editor': 14.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/plugins': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/viewport': 6.9.0(react@18.3.1) + '@wordpress/warning': 3.9.0 + '@wordpress/widgets': 4.9.0(@types/react@18.3.3)(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 @@ -18921,38 +18634,38 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/edit-post@8.8.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/edit-post@8.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/block-library': 9.8.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/commands': 1.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-commands': 1.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/editor': 14.8.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/plugins': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/viewport': 6.8.3(react@18.3.1) - '@wordpress/warning': 3.8.1 - '@wordpress/widgets': 4.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/block-library': 9.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/commands': 1.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-commands': 1.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/plugins': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/viewport': 6.9.0(react@18.3.1) + '@wordpress/warning': 3.9.0 + '@wordpress/widgets': 4.9.0(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 @@ -18965,44 +18678,44 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/editor@14.8.6(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/editor@14.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blob': 4.8.1 - '@wordpress/block-editor': 14.3.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/commands': 1.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/dataviews': 4.4.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/fields': 0.0.5(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/interface': 6.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/media-utils': 5.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/patterns': 2.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/plugins': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/reusable-blocks': 5.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/server-side-render': 5.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 - '@wordpress/wordcount': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-editor': 14.4.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/commands': 1.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/dataviews': 4.5.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/fields': 0.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/interface': 6.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/media-utils': 5.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/patterns': 2.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/plugins': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/reusable-blocks': 5.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/server-side-render': 5.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 + '@wordpress/wordcount': 4.9.0 change-case: 4.1.2 client-zip: 2.4.5 clsx: 2.1.1 @@ -19024,44 +18737,44 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/editor@14.8.6(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/editor@14.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blob': 4.8.1 - '@wordpress/block-editor': 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/commands': 1.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/dataviews': 4.4.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/fields': 0.0.5(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/interface': 6.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/media-utils': 5.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/patterns': 2.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/plugins': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/reusable-blocks': 5.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/server-side-render': 5.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 - '@wordpress/wordcount': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-editor': 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/commands': 1.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/dataviews': 4.5.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/fields': 0.1.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/interface': 6.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/media-utils': 5.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/patterns': 2.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/plugins': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/reusable-blocks': 5.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/server-side-render': 5.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 + '@wordpress/wordcount': 4.9.0 change-case: 4.1.2 client-zip: 2.4.5 clsx: 2.1.1 @@ -19083,44 +18796,44 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/editor@14.8.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/editor@14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blob': 4.8.1 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/commands': 1.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/dataviews': 4.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.8.2 - '@wordpress/deprecated': 4.8.2 - '@wordpress/dom': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/fields': 0.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/interface': 6.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.8.3(react@18.3.1) - '@wordpress/keycodes': 4.8.2 - '@wordpress/media-utils': 5.8.2 - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/patterns': 2.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/plugins': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/reusable-blocks': 5.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/server-side-render': 5.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 - '@wordpress/wordcount': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/commands': 1.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/dataviews': 4.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.9.0 + '@wordpress/deprecated': 4.9.0 + '@wordpress/dom': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/fields': 0.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/interface': 6.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.9.0(react@18.3.1) + '@wordpress/keycodes': 4.9.0 + '@wordpress/media-utils': 5.9.0 + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/patterns': 2.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/plugins': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/reusable-blocks': 5.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/server-side-render': 5.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 + '@wordpress/wordcount': 4.9.0 change-case: 4.1.2 client-zip: 2.4.5 clsx: 2.1.1 @@ -19142,29 +18855,29 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/element@6.8.1': + '@wordpress/element@6.9.0': dependencies: '@babel/runtime': 7.24.7 '@types/react': 18.3.3 '@types/react-dom': 18.3.0 - '@wordpress/escape-html': 3.8.1 + '@wordpress/escape-html': 3.9.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.8.1': + '@wordpress/escape-html@3.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/eslint-plugin@21.1.2(2g4wiqq3ubewvaaot6et2pay5m)': + '@wordpress/eslint-plugin@21.2.0(2g4wiqq3ubewvaaot6et2pay5m)': dependencies: '@babel/core': 7.24.7 '@babel/eslint-parser': 7.24.7(@babel/core@7.24.7)(eslint@8.57.0) '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.0.4))(eslint@8.57.0)(typescript@5.0.4) '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.0.4) - '@wordpress/babel-preset-default': 8.8.2 - '@wordpress/prettier-config': 4.8.1(wp-prettier@3.0.3) + '@wordpress/babel-preset-default': 8.9.0 + '@wordpress/prettier-config': 4.9.0(wp-prettier@3.0.3) cosmiconfig: 7.1.0 eslint: 8.57.0 eslint-config-prettier: 9.1.0(eslint@8.57.0) @@ -19184,27 +18897,28 @@ snapshots: transitivePeerDependencies: - supports-color - '@wordpress/fields@0.0.5(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/fields@0.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/blob': 4.8.1 - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/dataviews': 4.4.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/patterns': 2.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/dataviews': 4.5.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/patterns': 2.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 change-case: 4.1.2 client-zip: 2.4.5 react: 18.3.1 @@ -19217,27 +18931,28 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/fields@0.0.5(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/fields@0.1.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/blob': 4.8.1 - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/dataviews': 4.4.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/patterns': 2.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/dataviews': 4.5.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/patterns': 2.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 change-case: 4.1.2 client-zip: 2.4.5 react: 18.3.1 @@ -19250,27 +18965,28 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/fields@0.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/fields@0.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/blob': 4.8.1 - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/dataviews': 4.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/patterns': 2.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.8.1(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 - '@wordpress/warning': 3.8.1 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/dataviews': 4.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/patterns': 2.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/primitives': 4.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 + '@wordpress/warning': 3.9.0 change-case: 4.1.2 client-zip: 2.4.5 react: 18.3.1 @@ -19283,21 +18999,21 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/format-library@5.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/format-library@5.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/rich-text': 7.8.3(react@18.3.1) - '@wordpress/url': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/rich-text': 7.9.0(react@18.3.1) + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -19306,55 +19022,55 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/hooks@4.8.2': + '@wordpress/hooks@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/html-entities@4.8.1': + '@wordpress/html-entities@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/i18n@5.8.2': + '@wordpress/i18n@5.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/hooks': 4.8.2 + '@wordpress/hooks': 4.9.0 gettext-parser: 1.4.0 memize: 2.1.0 sprintf-js: 1.1.2 tannin: 1.2.0 - '@wordpress/icons@10.8.2(react@18.3.1)': + '@wordpress/icons@10.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/element': 6.8.1 - '@wordpress/primitives': 4.8.1(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/primitives': 4.9.0(react@18.3.1) react: 18.3.1 - '@wordpress/interactivity-router@2.8.3': + '@wordpress/interactivity-router@2.9.0': dependencies: - '@wordpress/a11y': 4.8.2 - '@wordpress/interactivity': 6.8.2 + '@wordpress/a11y': 4.9.0 + '@wordpress/interactivity': 6.9.0 - '@wordpress/interactivity@6.8.2': + '@wordpress/interactivity@6.9.0': dependencies: '@preact/signals': 1.3.0(preact@10.22.1) preact: 10.22.1 - '@wordpress/interface@6.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/interface@6.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/plugins': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/viewport': 6.8.3(react@18.3.1) + '@wordpress/a11y': 4.9.0 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/plugins': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/viewport': 6.9.0(react@18.3.1) clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19363,21 +19079,21 @@ snapshots: - '@types/react' - supports-color - '@wordpress/interface@6.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/interface@6.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/plugins': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/viewport': 6.8.3(react@18.3.1) + '@wordpress/a11y': 4.9.0 + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/plugins': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/viewport': 6.9.0(react@18.3.1) clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19386,61 +19102,61 @@ snapshots: - '@types/react' - supports-color - '@wordpress/is-shallow-equal@5.8.1': + '@wordpress/is-shallow-equal@5.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/jest-console@8.8.1(jest@29.7.0)': + '@wordpress/jest-console@8.9.0(jest@29.7.0)': dependencies: '@babel/runtime': 7.24.7 jest: 29.7.0 jest-matcher-utils: 29.7.0 - '@wordpress/keyboard-shortcuts@5.8.3(react@18.3.1)': + '@wordpress/keyboard-shortcuts@5.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/keycodes': 4.8.2 + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/keycodes': 4.9.0 react: 18.3.1 - '@wordpress/keycodes@4.8.2': + '@wordpress/keycodes@4.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/i18n': 5.8.2 + '@wordpress/i18n': 5.9.0 - '@wordpress/media-utils@5.8.2': + '@wordpress/media-utils@5.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blob': 4.8.1 - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blob': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 - '@wordpress/notices@5.8.3(react@18.3.1)': + '@wordpress/notices@5.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/data': 10.8.3(react@18.3.1) + '@wordpress/a11y': 4.9.0 + '@wordpress/data': 10.9.0(react@18.3.1) react: 18.3.1 - '@wordpress/patterns@2.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/patterns@2.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/block-editor': 14.3.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/block-editor': 14.4.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -19451,23 +19167,23 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/patterns@2.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/patterns@2.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/block-editor': 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/block-editor': 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -19478,23 +19194,23 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/patterns@2.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/patterns@2.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/html-entities': 4.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/html-entities': 4.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -19505,15 +19221,15 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/plugins@7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/plugins@7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/is-shallow-equal': 5.8.1 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.9.0 memize: 2.1.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19522,15 +19238,15 @@ snapshots: - '@types/react' - supports-color - '@wordpress/plugins@7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/plugins@7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/hooks': 4.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/is-shallow-equal': 5.8.1 + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/hooks': 4.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.9.0 memize: 2.1.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19539,24 +19255,24 @@ snapshots: - '@types/react' - supports-color - '@wordpress/postcss-plugins-preset@5.8.1(postcss@8.4.31)': + '@wordpress/postcss-plugins-preset@5.9.0(postcss@8.4.31)': dependencies: - '@wordpress/base-styles': 5.8.1 + '@wordpress/base-styles': 5.9.0 autoprefixer: 10.4.14(postcss@8.4.31) postcss: 8.4.31 - '@wordpress/preferences@4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/preferences@4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/private-apis': 1.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19565,18 +19281,18 @@ snapshots: - '@types/react' - supports-color - '@wordpress/preferences@4.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/preferences@4.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/private-apis': 1.8.1 + '@wordpress/a11y': 4.9.0 + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19585,27 +19301,27 @@ snapshots: - '@types/react' - supports-color - '@wordpress/prettier-config@4.8.1(wp-prettier@3.0.3)': + '@wordpress/prettier-config@4.9.0(wp-prettier@3.0.3)': dependencies: prettier: wp-prettier@3.0.3 - '@wordpress/primitives@4.8.1(react@18.3.1)': + '@wordpress/primitives@4.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/element': 6.8.1 + '@wordpress/element': 6.9.0 clsx: 2.1.1 react: 18.3.1 - '@wordpress/priority-queue@3.8.1': + '@wordpress/priority-queue@3.9.0': dependencies: '@babel/runtime': 7.24.7 requestidlecallback: 0.3.0 - '@wordpress/private-apis@1.8.1': + '@wordpress/private-apis@1.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/redux-routine@5.8.1(redux@4.2.1)': + '@wordpress/redux-routine@5.9.0(redux@4.2.1)': dependencies: '@babel/runtime': 7.24.7 is-plain-object: 5.0.0 @@ -19613,20 +19329,20 @@ snapshots: redux: 4.2.1 rungen: 0.3.2 - '@wordpress/reusable-blocks@5.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/reusable-blocks@5.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/block-editor': 14.3.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 + '@wordpress/block-editor': 14.4.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -19637,20 +19353,20 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/reusable-blocks@5.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/reusable-blocks@5.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/block-editor': 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 + '@wordpress/block-editor': 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -19661,20 +19377,20 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/reusable-blocks@5.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/reusable-blocks@5.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -19685,41 +19401,41 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/rich-text@7.8.3(react@18.3.1)': + '@wordpress/rich-text@7.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/a11y': 4.8.2 - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/escape-html': 3.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/keycodes': 4.8.2 + '@wordpress/a11y': 4.9.0 + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/escape-html': 3.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/keycodes': 4.9.0 memize: 2.1.0 react: 18.3.1 - '@wordpress/router@1.8.1(react@18.3.1)': + '@wordpress/router@1.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/element': 6.8.1 - '@wordpress/private-apis': 1.8.1 - '@wordpress/url': 4.8.1 + '@wordpress/element': 6.9.0 + '@wordpress/private-apis': 1.9.0 + '@wordpress/url': 4.9.0 history: 5.3.0 react: 18.3.1 - '@wordpress/server-side-render@5.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/server-side-render@5.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/url': 4.8.1 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/url': 4.9.0 fast-deep-equal: 3.1.3 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19728,18 +19444,18 @@ snapshots: - '@types/react' - supports-color - '@wordpress/server-side-render@5.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/server-side-render@5.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/deprecated': 4.8.2 - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/url': 4.8.1 + '@wordpress/api-fetch': 7.9.0 + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/deprecated': 4.9.0 + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/url': 4.9.0 fast-deep-equal: 3.1.3 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19748,21 +19464,21 @@ snapshots: - '@types/react' - supports-color - '@wordpress/shortcode@4.8.1': + '@wordpress/shortcode@4.9.0': dependencies: '@babel/runtime': 7.24.7 memize: 2.1.0 - '@wordpress/style-engine@2.8.1': + '@wordpress/style-engine@2.9.0': dependencies: '@babel/runtime': 7.24.7 change-case: 4.1.2 - '@wordpress/sync@1.8.1': + '@wordpress/sync@1.9.0': dependencies: '@babel/runtime': 7.24.7 '@types/simple-peer': 9.11.8 - '@wordpress/url': 4.8.1 + '@wordpress/url': 4.9.0 import-locals: 2.0.0 lib0: 0.2.98 simple-peer: 9.11.1 @@ -19775,44 +19491,44 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/token-list@3.8.1': + '@wordpress/token-list@3.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/undo-manager@1.8.1': + '@wordpress/undo-manager@1.9.0': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/is-shallow-equal': 5.8.1 + '@wordpress/is-shallow-equal': 5.9.0 - '@wordpress/url@4.8.1': + '@wordpress/url@4.9.0': dependencies: '@babel/runtime': 7.24.7 remove-accents: 0.5.0 - '@wordpress/viewport@6.8.3(react@18.3.1)': + '@wordpress/viewport@6.9.0(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 react: 18.3.1 - '@wordpress/warning@3.8.1': {} + '@wordpress/warning@3.9.0': {} - '@wordpress/widgets@4.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/widgets@4.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/block-editor': 14.3.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) + '@wordpress/api-fetch': 7.9.0 + '@wordpress/block-editor': 14.4.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19824,20 +19540,20 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/widgets@4.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/widgets@4.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.24.7 - '@wordpress/api-fetch': 7.8.2 - '@wordpress/block-editor': 14.3.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 13.8.4(react@18.3.1) - '@wordpress/components': 28.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.8.3(react@18.3.1) - '@wordpress/core-data': 7.8.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.8.3(react@18.3.1) - '@wordpress/element': 6.8.1 - '@wordpress/i18n': 5.8.2 - '@wordpress/icons': 10.8.2(react@18.3.1) - '@wordpress/notices': 5.8.3(react@18.3.1) + '@wordpress/api-fetch': 7.9.0 + '@wordpress/block-editor': 14.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 13.9.0(react@18.3.1) + '@wordpress/components': 28.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.9.0(react@18.3.1) + '@wordpress/core-data': 7.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.9.0(react@18.3.1) + '@wordpress/element': 6.9.0 + '@wordpress/i18n': 5.9.0 + '@wordpress/icons': 10.9.0(react@18.3.1) + '@wordpress/notices': 5.9.0(react@18.3.1) clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19849,7 +19565,7 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/wordcount@4.8.1': + '@wordpress/wordcount@4.9.0': dependencies: '@babel/runtime': 7.24.7 @@ -19859,16 +19575,6 @@ snapshots: '@xtuc/long@4.2.2': {} - '@yarnpkg/fslib@2.10.3': - dependencies: - '@yarnpkg/libzip': 2.3.0 - tslib: 1.14.1 - - '@yarnpkg/libzip@2.3.0': - dependencies: - '@types/emscripten': 1.39.13 - tslib: 1.14.1 - abab@2.0.6: {} abort-controller@3.0.0: @@ -19951,7 +19657,7 @@ snapshots: ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.0.1 + fast-uri: 3.0.2 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 @@ -19983,7 +19689,7 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.0.1: {} + ansi-regex@6.1.0: {} ansi-styles@2.2.1: {} @@ -20034,6 +19740,8 @@ snapshots: dependencies: dequal: 2.0.3 + aria-query@5.3.2: {} + array-buffer-byte-length@1.0.1: dependencies: call-bind: 1.0.7 @@ -20120,7 +19828,7 @@ snapshots: autoprefixer@10.4.14(postcss@8.4.31): dependencies: browserslist: 4.23.1 - caniuse-lite: 1.0.30001664 + caniuse-lite: 1.0.30001667 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.0 @@ -20157,11 +19865,7 @@ snapshots: axobject-query@4.1.0: {} - b4a@1.6.6: {} - - babel-core@7.0.0-bridge.0(@babel/core@7.24.7): - dependencies: - '@babel/core': 7.24.7 + b4a@1.6.7: {} babel-jest@29.3.1(@babel/core@7.24.7): dependencies: @@ -20209,7 +19913,7 @@ snapshots: schema-utils: 4.2.0 webpack: 5.94.0(webpack-cli@4.9.1) - babel-loader@9.1.3(@babel/core@7.24.7)(webpack@5.94.0(webpack-cli@4.9.1)): + babel-loader@9.2.1(@babel/core@7.24.7)(webpack@5.94.0(webpack-cli@4.9.1)): dependencies: '@babel/core': 7.24.7 find-cache-dir: 4.0.0 @@ -20222,7 +19926,7 @@ snapshots: babel-plugin-istanbul@6.1.1: dependencies: - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.7 '@istanbuljs/load-nyc-config': 1.1.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-instrument: 5.2.1 @@ -20232,8 +19936,8 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 @@ -20289,7 +19993,7 @@ snapshots: '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.24.7) '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.7) '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.7) - '@babel/plugin-syntax-import-attributes': 7.25.6(@babel/core@7.24.7) + '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.24.7) '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.7) '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.7) '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.7) @@ -20311,28 +20015,28 @@ snapshots: balanced-match@1.0.2: {} - bare-events@2.4.2: + bare-events@2.5.0: optional: true - bare-fs@2.3.3: + bare-fs@2.3.5: dependencies: - bare-events: 2.4.2 + bare-events: 2.5.0 bare-path: 2.1.3 - bare-stream: 2.2.1 + bare-stream: 2.3.0 optional: true - bare-os@2.4.2: + bare-os@2.4.4: optional: true bare-path@2.1.3: dependencies: - bare-os: 2.4.2 + bare-os: 2.4.4 optional: true - bare-stream@2.2.1: + bare-stream@2.3.0: dependencies: - b4a: 1.6.6 - streamx: 2.20.0 + b4a: 1.6.7 + streamx: 2.20.1 optional: true base64-js@1.5.1: {} @@ -20341,16 +20045,14 @@ snapshots: before-after-hook@2.2.3: {} + better-opn@3.0.2: + dependencies: + open: 8.4.2 + big.js@5.2.2: {} binary-extensions@2.3.0: {} - bl@4.1.0: - dependencies: - buffer: 5.7.1 - inherits: 2.0.4 - readable-stream: 3.6.2 - body-parser@1.20.3: dependencies: bytes: 3.1.2 @@ -20391,15 +20093,15 @@ snapshots: browserslist@4.23.1: dependencies: - caniuse-lite: 1.0.30001664 - electron-to-chromium: 1.5.30 + caniuse-lite: 1.0.30001667 + electron-to-chromium: 1.5.34 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.23.1) browserslist@4.24.0: dependencies: - caniuse-lite: 1.0.30001664 - electron-to-chromium: 1.5.30 + caniuse-lite: 1.0.30001667 + electron-to-chromium: 1.5.34 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.0) @@ -20468,11 +20170,11 @@ snapshots: caniuse-api@3.0.0: dependencies: browserslist: 4.23.1 - caniuse-lite: 1.0.30001664 + caniuse-lite: 1.0.30001667 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 - caniuse-lite@1.0.30001664: {} + caniuse-lite@1.0.30001667: {} capital-case@1.0.4: dependencies: @@ -20586,9 +20288,7 @@ snapshots: chokidar@4.0.1: dependencies: - readdirp: 4.0.1 - - chownr@2.0.0: {} + readdirp: 4.0.2 chrome-trace-event@1.0.4: {} @@ -20601,10 +20301,6 @@ snapshots: ci-info@3.9.0: {} - citty@0.1.6: - dependencies: - consola: 3.2.3 - cjs-module-lexer@1.4.1: {} clean-css@5.3.3: @@ -20617,12 +20313,6 @@ snapshots: dependencies: restore-cursor: 2.0.0 - cli-cursor@3.1.0: - dependencies: - restore-cursor: 3.1.0 - - cli-spinners@2.9.2: {} - cli-truncate@0.2.1: dependencies: slice-ansi: 0.0.4 @@ -20666,8 +20356,6 @@ snapshots: kind-of: 6.0.3 shallow-clone: 3.0.1 - clone@1.0.4: {} - clsx@2.1.1: {} cmdk@1.0.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): @@ -20707,7 +20395,7 @@ snapshots: code-red@1.0.4: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 acorn: 8.12.1 estree-walker: 3.0.3 periscopic: 3.1.0 @@ -20762,8 +20450,6 @@ snapshots: commander@5.1.0: {} - commander@6.2.1: {} - commander@7.2.0: {} commander@8.3.0: {} @@ -20800,8 +20486,6 @@ snapshots: tree-kill: 1.2.2 yargs: 17.6.2 - confbox@0.1.7: {} - config@3.3.7: dependencies: json5: 2.2.3 @@ -20815,8 +20499,6 @@ snapshots: write-file-atomic: 3.0.3 xdg-basedir: 4.0.0 - consola@3.2.3: {} - constant-case@3.0.4: dependencies: no-case: 3.0.4 @@ -20837,9 +20519,9 @@ snapshots: cookie-signature@1.0.6: {} - cookie@0.4.1: {} + cookie@0.7.0: {} - cookie@0.6.0: {} + cookie@0.7.1: {} copy-webpack-plugin@11.0.0(webpack@5.94.0(webpack-cli@4.9.1)): dependencies: @@ -20891,13 +20573,13 @@ snapshots: - supports-color - ts-node - create-jest@29.7.0(@types/node@20.16.5): + create-jest@29.7.0(@types/node@20.16.10): 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.16.5) + jest-config: 29.7.0(@types/node@20.16.10) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -20916,10 +20598,6 @@ snapshots: crypto-random-string@2.0.0: {} - crypto-random-string@4.0.0: - dependencies: - type-fest: 1.4.0 - css-declaration-sorter@7.2.0(postcss@8.4.31): dependencies: postcss: 8.4.31 @@ -21145,7 +20823,7 @@ snapshots: object-is: 1.1.6 object-keys: 1.1.1 object.assign: 4.1.5 - regexp.prototype.flags: 1.5.2 + regexp.prototype.flags: 1.5.3 side-channel: 1.0.6 which-boxed-primitive: 1.0.2 which-collection: 1.0.2 @@ -21159,24 +20837,20 @@ snapshots: dependencies: strip-bom: 4.0.0 - defaults@1.0.4: - dependencies: - clone: 1.0.4 - define-data-property@1.1.4: dependencies: es-define-property: 1.0.0 es-errors: 1.3.0 gopd: 1.0.1 + define-lazy-prop@2.0.0: {} + define-properties@1.2.1: dependencies: define-data-property: 1.1.4 has-property-descriptors: 1.0.2 object-keys: 1.1.1 - defu@6.1.4: {} - degenerator@5.0.1: dependencies: ast-types: 0.13.4 @@ -21325,7 +20999,7 @@ snapshots: dependencies: jake: 10.9.2 - electron-to-chromium@1.5.30: {} + electron-to-chromium@1.5.34: {} elegant-spinner@1.0.1: {} @@ -21379,7 +21053,7 @@ snapshots: envfile@6.17.0: {} - envinfo@7.13.0: {} + envinfo@7.14.0: {} equivalent-key-map@0.2.2: {} @@ -21427,7 +21101,7 @@ snapshots: object-inspect: 1.13.2 object-keys: 1.1.1 object.assign: 4.1.5 - regexp.prototype.flags: 1.5.2 + regexp.prototype.flags: 1.5.3 safe-array-concat: 1.1.2 safe-regex-test: 1.0.3 string.prototype.trim: 1.2.9 @@ -21502,15 +21176,15 @@ snapshots: esbuild-loader@3.0.1(webpack@5.94.0(webpack-cli@4.9.1)): dependencies: esbuild: 0.17.19 - get-tsconfig: 4.8.0 + get-tsconfig: 4.8.1 loader-utils: 2.0.4 webpack: 5.94.0(webpack-cli@4.9.1) webpack-sources: 1.4.3 - esbuild-register@3.6.0(esbuild@0.21.5): + esbuild-register@3.6.0(esbuild@0.23.1): dependencies: debug: 4.3.4 - esbuild: 0.21.5 + esbuild: 0.23.1 transitivePeerDependencies: - supports-color @@ -21539,31 +21213,32 @@ snapshots: '@esbuild/win32-ia32': 0.17.19 '@esbuild/win32-x64': 0.17.19 - esbuild@0.21.5: + esbuild@0.23.1: optionalDependencies: - '@esbuild/aix-ppc64': 0.21.5 - '@esbuild/android-arm': 0.21.5 - '@esbuild/android-arm64': 0.21.5 - '@esbuild/android-x64': 0.21.5 - '@esbuild/darwin-arm64': 0.21.5 - '@esbuild/darwin-x64': 0.21.5 - '@esbuild/freebsd-arm64': 0.21.5 - '@esbuild/freebsd-x64': 0.21.5 - '@esbuild/linux-arm': 0.21.5 - '@esbuild/linux-arm64': 0.21.5 - '@esbuild/linux-ia32': 0.21.5 - '@esbuild/linux-loong64': 0.21.5 - '@esbuild/linux-mips64el': 0.21.5 - '@esbuild/linux-ppc64': 0.21.5 - '@esbuild/linux-riscv64': 0.21.5 - '@esbuild/linux-s390x': 0.21.5 - '@esbuild/linux-x64': 0.21.5 - '@esbuild/netbsd-x64': 0.21.5 - '@esbuild/openbsd-x64': 0.21.5 - '@esbuild/sunos-x64': 0.21.5 - '@esbuild/win32-arm64': 0.21.5 - '@esbuild/win32-ia32': 0.21.5 - '@esbuild/win32-x64': 0.21.5 + '@esbuild/aix-ppc64': 0.23.1 + '@esbuild/android-arm': 0.23.1 + '@esbuild/android-arm64': 0.23.1 + '@esbuild/android-x64': 0.23.1 + '@esbuild/darwin-arm64': 0.23.1 + '@esbuild/darwin-x64': 0.23.1 + '@esbuild/freebsd-arm64': 0.23.1 + '@esbuild/freebsd-x64': 0.23.1 + '@esbuild/linux-arm': 0.23.1 + '@esbuild/linux-arm64': 0.23.1 + '@esbuild/linux-ia32': 0.23.1 + '@esbuild/linux-loong64': 0.23.1 + '@esbuild/linux-mips64el': 0.23.1 + '@esbuild/linux-ppc64': 0.23.1 + '@esbuild/linux-riscv64': 0.23.1 + '@esbuild/linux-s390x': 0.23.1 + '@esbuild/linux-x64': 0.23.1 + '@esbuild/netbsd-x64': 0.23.1 + '@esbuild/openbsd-arm64': 0.23.1 + '@esbuild/openbsd-x64': 0.23.1 + '@esbuild/sunos-x64': 0.23.1 + '@esbuild/win32-arm64': 0.23.1 + '@esbuild/win32-ia32': 0.23.1 + '@esbuild/win32-x64': 0.23.1 escalade@3.2.0: {} @@ -21608,7 +21283,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-module-utils@2.11.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.0.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.0.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0): dependencies: debug: 3.2.7 optionalDependencies: @@ -21621,7 +21296,7 @@ snapshots: eslint-plugin-es-x@7.8.0(eslint@8.57.0): dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.11.0 + '@eslint-community/regexpp': 4.11.1 eslint: 8.57.0 eslint-compat-utils: 0.5.1(eslint@8.57.0) @@ -21635,7 +21310,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.11.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.0.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.0.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -21678,10 +21353,10 @@ snapshots: escape-string-regexp: 4.0.0 eslint: 8.57.0 esquery: 1.6.0 - parse-imports: 2.1.1 + parse-imports: 2.2.1 semver: 7.6.3 spdx-expression-parse: 4.0.0 - synckit: 0.9.1 + synckit: 0.9.2 transitivePeerDependencies: - supports-color @@ -21722,7 +21397,7 @@ snapshots: eslint: 8.57.0 prettier: wp-prettier@3.0.3 prettier-linter-helpers: 1.0.0 - synckit: 0.9.1 + synckit: 0.9.2 optionalDependencies: eslint-config-prettier: 9.1.0(eslint@8.57.0) @@ -21765,7 +21440,7 @@ snapshots: postcss-safe-parser: 6.0.0(postcss@8.4.47) postcss-selector-parser: 6.1.2 semver: 7.6.3 - svelte-eslint-parser: 0.41.0(svelte@4.2.19) + svelte-eslint-parser: 0.41.1(svelte@4.2.19) optionalDependencies: svelte: 4.2.19 transitivePeerDependencies: @@ -21796,7 +21471,7 @@ snapshots: eslint@8.57.0: dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.11.0 + '@eslint-community/regexpp': 4.11.1 '@eslint/eslintrc': 2.1.4 '@eslint/js': 8.57.0 '@humanwhocodes/config-array': 0.11.14 @@ -21874,7 +21549,7 @@ snapshots: estree-walker@3.0.3: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 esutils@2.0.3: {} @@ -21882,7 +21557,7 @@ snapshots: eval@0.1.8: dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 require-like: 0.1.2 event-target-shim@5.0.1: {} @@ -21917,18 +21592,6 @@ snapshots: signal-exit: 3.0.7 strip-final-newline: 3.0.0 - execa@8.0.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 8.0.1 - human-signals: 5.0.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.3.0 - onetime: 6.0.0 - signal-exit: 4.1.0 - strip-final-newline: 3.0.0 - exit@0.1.2: {} expand-tilde@1.2.2: @@ -21945,21 +21608,21 @@ snapshots: jest-message-util: 29.7.0 jest-util: 29.7.0 - express@4.20.0: + express@4.21.1: dependencies: accepts: 1.3.8 array-flatten: 1.1.1 body-parser: 1.20.3 content-disposition: 0.5.4 content-type: 1.0.5 - cookie: 0.6.0 + cookie: 0.7.1 cookie-signature: 1.0.6 debug: 2.6.9 depd: 2.0.0 encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 - finalhandler: 1.2.0 + finalhandler: 1.3.1 fresh: 0.5.2 http-errors: 2.0.0 merge-descriptors: 1.0.3 @@ -21968,11 +21631,11 @@ snapshots: parseurl: 1.3.3 path-to-regexp: 0.1.10 proxy-addr: 2.0.7 - qs: 6.11.0 + qs: 6.13.0 range-parser: 1.2.1 safe-buffer: 5.2.1 send: 0.19.0 - serve-static: 1.16.0 + serve-static: 1.16.2 setprototypeof: 1.2.0 statuses: 2.0.1 type-is: 1.6.18 @@ -22015,7 +21678,7 @@ snapshots: fast-levenshtein@2.0.6: {} - fast-uri@3.0.1: {} + fast-uri@3.0.2: {} fastest-levenshtein@1.0.16: {} @@ -22027,10 +21690,6 @@ snapshots: dependencies: bser: 2.1.1 - fd-package-json@1.2.0: - dependencies: - walk-up-path: 3.0.1 - fd-slicer@1.1.0: dependencies: pend: 1.2.0 @@ -22064,10 +21723,10 @@ snapshots: dependencies: to-regex-range: 5.0.1 - finalhandler@1.2.0: + finalhandler@1.3.1: dependencies: debug: 2.6.9 - encodeurl: 1.0.2 + encodeurl: 2.0.0 escape-html: 1.0.3 on-finished: 2.4.1 parseurl: 1.3.3 @@ -22076,12 +21735,6 @@ snapshots: transitivePeerDependencies: - supports-color - find-cache-dir@2.1.0: - dependencies: - commondir: 1.0.1 - make-dir: 2.1.0 - pkg-dir: 3.0.0 - find-cache-dir@3.3.2: dependencies: commondir: 1.0.1 @@ -22147,8 +21800,6 @@ snapshots: flatted@3.3.1: {} - flow-parser@0.245.2: {} - fn.name@1.1.0: {} focus-trap@6.3.0: @@ -22177,7 +21828,7 @@ snapshots: fork-ts-checker-webpack-plugin@8.0.0(typescript@5.0.4)(webpack@5.94.0(webpack-cli@4.9.1)): dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.25.7 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 7.1.0 @@ -22194,7 +21845,7 @@ snapshots: fork-ts-checker-webpack-plugin@9.0.2(typescript@5.0.4)(webpack@5.94.0(webpack-cli@4.9.1)): dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.25.7 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 8.3.6(typescript@5.0.4) @@ -22251,10 +21902,6 @@ snapshots: jsonfile: 6.1.0 universalify: 2.0.1 - fs-minipass@2.1.0: - dependencies: - minipass: 3.3.6 - fs-monkey@1.0.6: {} fs.realpath@1.0.0: {} @@ -22304,19 +21951,17 @@ snapshots: get-stream@5.2.0: dependencies: - pump: 3.0.0 + pump: 3.0.2 get-stream@6.0.1: {} - get-stream@8.0.1: {} - get-symbol-description@1.0.2: dependencies: call-bind: 1.0.7 es-errors: 1.3.0 get-intrinsic: 1.2.4 - get-tsconfig@4.8.0: + get-tsconfig@4.8.1: dependencies: resolve-pkg-maps: 1.0.0 @@ -22334,17 +21979,6 @@ snapshots: encoding: 0.1.13 safe-buffer: 5.2.1 - giget@1.2.3: - dependencies: - citty: 0.1.6 - consola: 3.2.3 - defu: 6.1.4 - node-fetch-native: 1.6.4 - nypm: 0.3.11 - ohash: 1.1.3 - pathe: 1.1.2 - tar: 6.2.1 - git-hooks-list@1.0.3: {} github-slugger@2.0.0: {} @@ -22439,15 +22073,6 @@ snapshots: merge2: 1.4.1 slash: 4.0.0 - globby@14.0.2: - dependencies: - '@sindresorhus/merge-streams': 2.3.0 - fast-glob: 3.3.2 - ignore: 5.3.2 - path-type: 5.0.0 - slash: 5.1.0 - unicorn-magic: 0.1.0 - good-listener@1.2.2: dependencies: delegate: 3.2.0 @@ -22508,7 +22133,7 @@ snapshots: dependencies: '@types/hast': 3.0.4 - hast-util-to-string@3.0.0: + hast-util-to-string@3.0.1: dependencies: '@types/hast': 3.0.4 @@ -22560,7 +22185,7 @@ snapshots: he: 1.2.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.32.0 + terser: 5.34.1 html-tags@3.3.1: {} @@ -22638,8 +22263,6 @@ snapshots: human-signals@4.3.1: {} - human-signals@5.0.0: {} - humanize-ms@1.2.1: dependencies: ms: 2.1.3 @@ -22775,6 +22398,8 @@ snapshots: dependencies: has-tostringtag: 1.0.2 + is-docker@2.2.1: {} + is-electron@2.2.2: {} is-extglob@2.1.1: {} @@ -22801,8 +22426,6 @@ snapshots: dependencies: is-extglob: 2.1.1 - is-interactive@1.0.0: {} - is-map@2.0.3: {} is-module@1.0.0: {} @@ -22841,11 +22464,11 @@ snapshots: is-reference@1.2.1: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 is-reference@3.0.2: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 is-regex@1.1.4: dependencies: @@ -22878,8 +22501,6 @@ snapshots: is-typedarray@1.0.0: {} - is-unicode-supported@0.1.0: {} - is-weakmap@2.0.2: {} is-weakref@1.0.2: @@ -22895,6 +22516,10 @@ snapshots: is-windows@1.0.2: {} + is-wsl@2.2.0: + dependencies: + is-docker: 2.2.1 + isarray@0.0.1: {} isarray@2.0.5: {} @@ -22923,7 +22548,7 @@ snapshots: istanbul-lib-instrument@5.2.1: dependencies: '@babel/core': 7.24.7 - '@babel/parser': 7.25.6 + '@babel/parser': 7.25.7 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 6.3.1 @@ -22933,7 +22558,7 @@ snapshots: istanbul-lib-instrument@6.0.3: dependencies: '@babel/core': 7.24.7 - '@babel/parser': 7.25.6 + '@babel/parser': 7.25.7 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 7.6.3 @@ -23001,7 +22626,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.3 @@ -23040,16 +22665,16 @@ snapshots: - supports-color - ts-node - jest-cli@29.7.0(@types/node@20.16.5): + jest-cli@29.7.0(@types/node@20.16.10): 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.16.5) + create-jest: 29.7.0(@types/node@20.16.10) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@20.16.5) + jest-config: 29.7.0(@types/node@20.16.10) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.6.2 @@ -23087,7 +22712,7 @@ snapshots: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@20.16.5): + jest-config@29.7.0(@types/node@20.16.10): dependencies: '@babel/core': 7.24.7 '@jest/test-sequencer': 29.7.0 @@ -23112,7 +22737,7 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -23142,7 +22767,7 @@ snapshots: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 '@types/jsdom': 20.0.1 - '@types/node': 20.16.5 + '@types/node': 20.16.10 jest-mock: 29.7.0 jest-util: 29.7.0 jsdom: 20.0.3 @@ -23156,7 +22781,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -23173,7 +22798,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 - '@types/node': 20.16.5 + '@types/node': 20.16.10 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -23206,7 +22831,7 @@ snapshots: jest-message-util@29.7.0: dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.25.7 '@jest/types': 29.6.3 '@types/stack-utils': 2.0.3 chalk: 4.1.2 @@ -23219,7 +22844,7 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 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): @@ -23231,7 +22856,7 @@ snapshots: jest-process-manager: 0.4.0 jest-runner: 29.7.0 nyc: 15.1.0 - playwright-core: 1.47.0 + playwright-core: 1.47.2 rimraf: 3.0.2 uuid: 8.3.2 transitivePeerDependencies: @@ -23286,7 +22911,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -23314,7 +22939,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 chalk: 4.1.2 cjs-module-lexer: 1.4.1 collect-v8-coverage: 1.0.2 @@ -23339,10 +22964,10 @@ snapshots: jest-snapshot@29.7.0: dependencies: '@babel/core': 7.24.7 - '@babel/generator': 7.25.6 + '@babel/generator': 7.25.7 '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-syntax-typescript': 7.25.4(@babel/core@7.24.7) - '@babel/types': 7.25.6 + '@babel/plugin-syntax-typescript': 7.25.7(@babel/core@7.24.7) + '@babel/types': 7.25.7 '@jest/expect-utils': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 @@ -23364,7 +22989,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -23394,7 +23019,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.16.5 + '@types/node': 20.16.10 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -23403,13 +23028,13 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.10 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -23426,19 +23051,19 @@ snapshots: - supports-color - ts-node - jest@29.7.0(@types/node@20.16.5): + jest@29.7.0(@types/node@20.16.10): dependencies: '@jest/core': 29.7.0 '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@20.16.5) + jest-cli: 29.7.0(@types/node@20.16.10) transitivePeerDependencies: - '@types/node' - babel-plugin-macros - supports-color - ts-node - jiti@2.1.0: {} + jiti@2.3.3: {} joi@17.13.3: dependencies: @@ -23467,60 +23092,10 @@ snapshots: jsbn@1.1.0: {} - jscodeshift@0.15.2: - dependencies: - '@babel/core': 7.24.7 - '@babel/parser': 7.25.6 - '@babel/plugin-transform-class-properties': 7.25.4(@babel/core@7.24.7) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-private-methods': 7.25.4(@babel/core@7.24.7) - '@babel/preset-flow': 7.24.7(@babel/core@7.24.7) - '@babel/preset-typescript': 7.24.7(@babel/core@7.24.7) - '@babel/register': 7.24.6(@babel/core@7.24.7) - babel-core: 7.0.0-bridge.0(@babel/core@7.24.7) - chalk: 4.1.2 - flow-parser: 0.245.2 - graceful-fs: 4.2.11 - micromatch: 4.0.8 - neo-async: 2.6.2 - node-dir: 0.1.17 - recast: 0.23.9 - temp: 0.8.4 - write-file-atomic: 2.4.3 - transitivePeerDependencies: - - supports-color - - jscodeshift@0.15.2(@babel/preset-env@7.24.7(@babel/core@7.24.7)): - dependencies: - '@babel/core': 7.24.7 - '@babel/parser': 7.25.6 - '@babel/plugin-transform-class-properties': 7.25.4(@babel/core@7.24.7) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.7) - '@babel/plugin-transform-private-methods': 7.25.4(@babel/core@7.24.7) - '@babel/preset-flow': 7.24.7(@babel/core@7.24.7) - '@babel/preset-typescript': 7.24.7(@babel/core@7.24.7) - '@babel/register': 7.24.6(@babel/core@7.24.7) - babel-core: 7.0.0-bridge.0(@babel/core@7.24.7) - chalk: 4.1.2 - flow-parser: 0.245.2 - graceful-fs: 4.2.11 - micromatch: 4.0.8 - neo-async: 2.6.2 - node-dir: 0.1.17 - recast: 0.23.9 - temp: 0.8.4 - write-file-atomic: 2.4.3 - optionalDependencies: - '@babel/preset-env': 7.24.7(@babel/core@7.24.7) - transitivePeerDependencies: - - supports-color - jsdoc-type-pratt-parser@4.0.0: {} + jsdoc-type-pratt-parser@4.1.0: {} + jsdom@20.0.3: dependencies: abab: 2.0.6 @@ -23537,7 +23112,7 @@ snapshots: http-proxy-agent: 5.0.0 https-proxy-agent: 5.0.1 is-potential-custom-element-name: 1.0.1 - nwsapi: 2.2.12 + nwsapi: 2.2.13 parse5: 7.1.2 saxes: 6.0.0 symbol-tree: 3.2.4 @@ -23554,9 +23129,7 @@ snapshots: - supports-color - utf-8-validate - jsesc@0.5.0: {} - - jsesc@2.5.2: {} + jsesc@3.0.2: {} json-buffer@3.0.1: {} @@ -23739,6 +23312,8 @@ snapshots: dependencies: p-locate: 6.0.0 + lodash-es@4.17.21: {} + lodash._baseiteratee@4.7.0: dependencies: lodash._stringtopath: 4.8.0 @@ -23787,11 +23362,6 @@ snapshots: dependencies: chalk: 1.1.3 - log-symbols@4.1.0: - dependencies: - chalk: 4.1.2 - is-unicode-supported: 0.1.0 - log-update@2.3.0: dependencies: ansi-escapes: 3.2.0 @@ -23839,11 +23409,6 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 - make-dir@2.1.0: - dependencies: - pify: 4.0.1 - semver: 5.7.2 - make-dir@3.1.0: dependencies: semver: 6.3.1 @@ -24270,33 +23835,15 @@ snapshots: minimist@1.2.8: {} - minipass@3.3.6: - dependencies: - yallist: 4.0.0 - - minipass@5.0.0: {} - minipass@7.1.2: {} - minizlib@2.1.2: - dependencies: - minipass: 3.3.6 - yallist: 4.0.0 - mitt@3.0.1: {} mkdirp@1.0.4: {} - mlly@1.7.1: - dependencies: - acorn: 8.12.1 - pathe: 1.1.2 - pkg-types: 1.2.0 - ufo: 1.5.4 - mock-xmlhttprequest@8.3.0: {} - moment-timezone@0.5.45: + moment-timezone@0.5.46: dependencies: moment: 2.29.4 @@ -24335,14 +23882,8 @@ snapshots: node-abort-controller@3.1.1: {} - node-dir@0.1.17: - dependencies: - minimatch: 3.1.2 - node-domexception@1.0.0: {} - node-fetch-native@1.6.4: {} - node-fetch@2.6.7: dependencies: whatwg-url: 5.0.0 @@ -24379,7 +23920,7 @@ snapshots: number-is-nan@1.0.1: {} - nwsapi@2.2.12: {} + nwsapi@2.2.13: {} nyc@15.1.0: dependencies: @@ -24413,15 +23954,6 @@ snapshots: transitivePeerDependencies: - supports-color - nypm@0.3.11: - dependencies: - citty: 0.1.6 - consola: 3.2.3 - execa: 8.0.1 - pathe: 1.1.2 - pkg-types: 1.2.0 - ufo: 1.5.4 - object-assign@4.1.1: {} object-inspect@1.13.2: {} @@ -24467,8 +23999,6 @@ snapshots: objectorarray@1.0.5: {} - ohash@1.1.3: {} - on-finished@2.4.1: dependencies: ee-first: 1.1.1 @@ -24493,9 +24023,15 @@ snapshots: dependencies: mimic-fn: 4.0.0 + open@8.4.2: + dependencies: + define-lazy-prop: 2.0.0 + is-docker: 2.2.1 + is-wsl: 2.2.0 + openai@4.56.1: dependencies: - '@types/node': 18.19.50 + '@types/node': 18.19.54 '@types/node-fetch': 2.6.11 abort-controller: 3.0.0 agentkeepalive: 4.5.0 @@ -24518,18 +24054,6 @@ snapshots: opts@2.0.2: {} - ora@5.4.1: - dependencies: - bl: 4.1.0 - chalk: 4.1.2 - cli-cursor: 3.1.0 - cli-spinners: 2.9.2 - is-interactive: 1.0.0 - is-unicode-supported: 0.1.0 - log-symbols: 4.1.0 - strip-ansi: 6.0.1 - wcwidth: 1.0.1 - os-homedir@1.0.2: {} p-debounce@4.0.0: {} @@ -24622,14 +24146,14 @@ snapshots: parse-diff@0.8.1: {} - parse-imports@2.1.1: + parse-imports@2.2.1: dependencies: es-module-lexer: 1.5.4 slashes: 3.0.12 parse-json@5.2.0: dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.25.7 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -24690,7 +24214,7 @@ snapshots: path-to-regexp@0.1.10: {} - path-to-regexp@1.8.0: + path-to-regexp@1.9.0: dependencies: isarray: 0.0.1 @@ -24698,10 +24222,6 @@ snapshots: path-type@4.0.0: {} - path-type@5.0.0: {} - - pathe@1.1.2: {} - pbf@3.3.0: dependencies: ieee754: 1.2.1 @@ -24711,7 +24231,7 @@ snapshots: periscopic@3.1.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 estree-walker: 3.0.3 is-reference: 3.0.2 @@ -24733,16 +24253,10 @@ snapshots: picomatch@4.0.2: {} - pify@4.0.1: {} - pify@5.0.0: {} pirates@4.0.6: {} - pkg-dir@3.0.0: - dependencies: - find-up: 3.0.0 - pkg-dir@4.2.0: dependencies: find-up: 4.1.0 @@ -24755,15 +24269,9 @@ snapshots: dependencies: find-up: 6.3.0 - pkg-types@1.2.0: - dependencies: - confbox: 0.1.7 - mlly: 1.7.1 - pathe: 1.1.2 - playwright-core@1.45.1: {} - playwright-core@1.47.0: {} + playwright-core@1.47.2: {} playwright@1.45.1: dependencies: @@ -25143,7 +24651,7 @@ snapshots: psl@1.9.0: {} - pump@3.0.0: + pump@3.0.2: dependencies: end-of-stream: 1.4.4 once: 1.4.0 @@ -25174,10 +24682,6 @@ snapshots: dependencies: react: 18.3.1 - qs@6.11.0: - dependencies: - side-channel: 1.0.6 - qs@6.12.1: dependencies: side-channel: 1.0.6 @@ -25234,8 +24738,8 @@ snapshots: react-docgen@7.0.3: dependencies: '@babel/core': 7.24.7 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 '@types/doctrine': 0.0.9 @@ -25299,7 +24803,7 @@ snapshots: react-redux@7.2.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@babel/runtime': 7.24.7 - '@types/react-redux': 7.1.33 + '@types/react-redux': 7.1.34 hoist-non-react-statics: 3.3.2 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -25394,7 +24898,7 @@ snapshots: history: 4.10.1 hoist-non-react-statics: 3.3.2 loose-envify: 1.4.0 - path-to-regexp: 1.8.0 + path-to-regexp: 1.9.0 prop-types: 15.8.1 react: 18.3.1 react-is: 16.13.1 @@ -25477,11 +24981,19 @@ snapshots: string_decoder: 1.3.0 util-deprecate: 1.0.2 + readable-stream@4.5.2: + dependencies: + abort-controller: 3.0.0 + buffer: 6.0.3 + events: 3.3.0 + process: 0.11.10 + string_decoder: 1.3.0 + readdirp@3.6.0: dependencies: picomatch: 2.2.3 - readdirp@4.0.1: {} + readdirp@4.0.2: {} recast@0.23.9: dependencies: @@ -25533,7 +25045,7 @@ snapshots: refx@3.1.1: {} - regenerate-unicode-properties@10.1.1: + regenerate-unicode-properties@10.2.0: dependencies: regenerate: 1.4.2 @@ -25547,25 +25059,27 @@ snapshots: dependencies: '@babel/runtime': 7.24.7 - regexp.prototype.flags@1.5.2: + regexp.prototype.flags@1.5.3: dependencies: call-bind: 1.0.7 define-properties: 1.2.1 es-errors: 1.3.0 set-function-name: 2.0.2 - regexpu-core@5.3.2: + regexpu-core@6.1.1: dependencies: - '@babel/regjsgen': 0.8.0 regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.1 - regjsparser: 0.9.1 + regenerate-unicode-properties: 10.2.0 + regjsgen: 0.8.0 + regjsparser: 0.11.1 unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.1.0 + unicode-match-property-value-ecmascript: 2.2.0 + + regjsgen@0.8.0: {} - regjsparser@0.9.1: + regjsparser@0.11.1: dependencies: - jsesc: 0.5.0 + jsesc: 3.0.2 rehype-external-links@3.0.0: dependencies: @@ -25581,7 +25095,7 @@ snapshots: '@types/hast': 3.0.4 github-slugger: 2.0.0 hast-util-heading-rank: 3.0.0 - hast-util-to-string: 3.0.0 + hast-util-to-string: 3.0.1 unist-util-visit: 5.0.0 relateurl@0.2.7: {} @@ -25686,11 +25200,6 @@ snapshots: onetime: 2.0.1 signal-exit: 3.0.7 - restore-cursor@3.1.0: - dependencies: - onetime: 5.1.2 - signal-exit: 3.0.7 - retry@0.10.1: {} retry@0.12.0: {} @@ -25699,10 +25208,6 @@ snapshots: reusify@1.0.4: {} - rimraf@2.6.3: - dependencies: - glob: 7.2.3 - rimraf@3.0.2: dependencies: glob: 7.2.3 @@ -25839,8 +25344,6 @@ snapshots: select@1.1.2: {} - semver@5.7.2: {} - semver@6.3.1: {} semver@7.5.2: @@ -25853,24 +25356,6 @@ snapshots: semver@7.6.3: {} - send@0.18.0: - dependencies: - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - etag: 1.8.1 - fresh: 0.5.2 - http-errors: 2.0.0 - mime: 1.6.0 - ms: 2.1.3 - on-finished: 2.4.1 - range-parser: 1.2.1 - statuses: 2.0.1 - transitivePeerDependencies: - - supports-color - send@0.19.0: dependencies: debug: 2.6.9 @@ -25899,12 +25384,12 @@ snapshots: dependencies: randombytes: 2.1.0 - serve-static@1.16.0: + serve-static@1.16.2: dependencies: - encodeurl: 1.0.2 + encodeurl: 2.0.0 escape-html: 1.0.3 parseurl: 1.3.3 - send: 0.18.0 + send: 0.19.0 transitivePeerDependencies: - supports-color @@ -25981,7 +25466,7 @@ snapshots: dependencies: bytes-iec: 3.1.1 chokidar: 4.0.1 - jiti: 2.1.0 + jiti: 2.3.3 lilconfig: 3.1.2 nanospinner: 1.1.0 picocolors: 1.1.0 @@ -26109,107 +25594,42 @@ snapshots: storybook-addon-mock@5.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@storybook/blocks': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9) - '@storybook/channels': 8.2.9(storybook@8.2.9) - '@storybook/components': 8.2.9(storybook@8.2.9) - '@storybook/core-events': 8.2.9(storybook@8.2.9) - '@storybook/manager-api': 8.2.9(storybook@8.2.9) - '@storybook/preview-api': 8.2.9(storybook@8.2.9) - '@storybook/theming': 8.2.9(storybook@8.2.9) + '@storybook/blocks': 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5) + '@storybook/channels': 8.3.5(storybook@8.3.5) + '@storybook/components': 8.3.5(storybook@8.3.5) + '@storybook/core-events': 8.3.5(storybook@8.3.5) + '@storybook/manager-api': 8.3.5(storybook@8.3.5) + '@storybook/preview-api': 8.3.5(storybook@8.3.5) + '@storybook/theming': 8.3.5(storybook@8.3.5) mock-xmlhttprequest: 8.3.0 path-to-regexp: 6.3.0 polished: 4.3.1 prop-types: 15.8.1 - storybook: 8.2.9 + storybook: 8.3.5 whatwg-fetch: 3.6.20 optionalDependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - - '@babel/preset-env' - - bufferutil - - supports-color - - utf-8-validate - - storybook@8.2.9: - dependencies: - '@babel/core': 7.24.7 - '@babel/types': 7.25.6 - '@storybook/codemod': 8.2.9 - '@storybook/core': 8.2.9 - '@types/semver': 7.5.8 - '@yarnpkg/fslib': 2.10.3 - '@yarnpkg/libzip': 2.3.0 - chalk: 4.1.2 - commander: 6.2.1 - cross-spawn: 7.0.3 - detect-indent: 6.1.0 - envinfo: 7.13.0 - execa: 5.1.1 - fd-package-json: 1.2.0 - find-up: 5.0.0 - fs-extra: 11.2.0 - giget: 1.2.3 - globby: 14.0.2 - jscodeshift: 0.15.2 - leven: 3.1.0 - ora: 5.4.1 - prettier: 3.3.3 - prompts: 2.4.2 - semver: 7.5.2 - strip-json-comments: 3.1.1 - tempy: 3.1.0 - tiny-invariant: 1.3.3 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - '@babel/preset-env' - bufferutil - supports-color - utf-8-validate - storybook@8.2.9(@babel/preset-env@7.24.7(@babel/core@7.24.7)): + storybook@8.3.5: dependencies: - '@babel/core': 7.24.7 - '@babel/types': 7.25.6 - '@storybook/codemod': 8.2.9 - '@storybook/core': 8.2.9 - '@types/semver': 7.5.8 - '@yarnpkg/fslib': 2.10.3 - '@yarnpkg/libzip': 2.3.0 - chalk: 4.1.2 - commander: 6.2.1 - cross-spawn: 7.0.3 - detect-indent: 6.1.0 - envinfo: 7.13.0 - execa: 5.1.1 - fd-package-json: 1.2.0 - find-up: 5.0.0 - fs-extra: 11.2.0 - giget: 1.2.3 - globby: 14.0.2 - jscodeshift: 0.15.2(@babel/preset-env@7.24.7(@babel/core@7.24.7)) - leven: 3.1.0 - ora: 5.4.1 - prettier: 3.3.3 - prompts: 2.4.2 - semver: 7.5.2 - strip-json-comments: 3.1.1 - tempy: 3.1.0 - tiny-invariant: 1.3.3 - ts-dedent: 2.2.0 + '@storybook/core': 8.3.5 transitivePeerDependencies: - - '@babel/preset-env' - bufferutil - supports-color - utf-8-validate - streamx@2.20.0: + streamx@2.20.1: dependencies: fast-fifo: 1.3.2 queue-tick: 1.0.1 - text-decoder: 1.1.1 + text-decoder: 1.2.0 optionalDependencies: - bare-events: 2.4.2 + bare-events: 2.5.0 string-hash@1.1.3: {} @@ -26268,7 +25688,7 @@ snapshots: gopd: 1.0.1 has-symbols: 1.0.3 internal-slot: 1.0.7 - regexp.prototype.flags: 1.5.2 + regexp.prototype.flags: 1.5.3 set-function-name: 2.0.2 side-channel: 1.0.6 @@ -26318,7 +25738,7 @@ snapshots: strip-ansi@7.1.0: dependencies: - ansi-regex: 6.0.1 + ansi-regex: 6.1.0 strip-bom@3.0.0: {} @@ -26390,7 +25810,7 @@ snapshots: optionalDependencies: svelte: 4.2.19 - svelte-eslint-parser@0.41.0(svelte@4.2.19): + svelte-eslint-parser@0.41.1(svelte@4.2.19): dependencies: eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 @@ -26414,9 +25834,9 @@ snapshots: '@ampproject/remapping': 2.3.0 '@jridgewell/sourcemap-codec': 1.5.0 '@jridgewell/trace-mapping': 0.3.25 - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 acorn: 8.12.1 - aria-query: 5.3.0 + aria-query: 5.3.2 axobject-query: 4.1.0 code-red: 1.0.4 css-tree: 2.3.1 @@ -26476,7 +25896,7 @@ snapshots: symbol-tree@3.2.4: {} - synckit@0.9.1: + synckit@0.9.2: dependencies: '@pkgr/core': 0.1.1 tslib: 2.7.0 @@ -26491,59 +25911,37 @@ snapshots: tar-fs@3.0.5: dependencies: - pump: 3.0.0 + pump: 3.0.2 tar-stream: 3.1.7 optionalDependencies: - bare-fs: 2.3.3 + bare-fs: 2.3.5 bare-path: 2.1.3 tar-fs@3.0.6: dependencies: - pump: 3.0.0 + pump: 3.0.2 tar-stream: 3.1.7 optionalDependencies: - bare-fs: 2.3.3 + bare-fs: 2.3.5 bare-path: 2.1.3 tar-stream@3.1.7: dependencies: - b4a: 1.6.6 + b4a: 1.6.7 fast-fifo: 1.3.2 - streamx: 2.20.0 - - tar@6.2.1: - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 5.0.0 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 + streamx: 2.20.1 telejson@7.2.0: dependencies: memoizerific: 1.11.3 - temp-dir@3.0.0: {} - - temp@0.8.4: - dependencies: - rimraf: 2.6.3 - - tempy@3.1.0: - dependencies: - is-stream: 3.0.0 - temp-dir: 3.0.0 - type-fest: 2.19.0 - unique-string: 3.0.0 - terser-webpack-plugin@5.3.10(webpack@5.94.0(webpack-cli@4.9.1)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 - terser: 5.32.0 + terser: 5.34.1 webpack: 5.94.0(webpack-cli@4.9.1) terser-webpack-plugin@5.3.3(webpack@5.94.0(webpack-cli@4.9.1)): @@ -26552,10 +25950,10 @@ snapshots: jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 - terser: 5.32.0 + terser: 5.34.1 webpack: 5.94.0(webpack-cli@4.9.1) - terser@5.32.0: + terser@5.34.1: dependencies: '@jridgewell/source-map': 0.3.6 acorn: 8.12.1 @@ -26568,9 +25966,9 @@ snapshots: glob: 7.2.3 minimatch: 3.1.2 - text-decoder@1.1.1: + text-decoder@1.2.0: dependencies: - b4a: 1.6.6 + b4a: 1.6.7 text-hex@1.0.0: {} @@ -26717,8 +26115,6 @@ snapshots: type-fest@0.8.1: {} - type-fest@1.4.0: {} - type-fest@2.19.0: {} type-is@1.6.18: @@ -26776,8 +26172,6 @@ snapshots: uc.micro@2.1.0: {} - ufo@1.5.4: {} - unbox-primitive@1.0.2: dependencies: call-bind: 1.0.7 @@ -26798,19 +26192,17 @@ snapshots: dependencies: '@fastify/busboy': 2.1.1 - unicode-canonical-property-names-ecmascript@2.0.0: {} + unicode-canonical-property-names-ecmascript@2.0.1: {} unicode-match-property-ecmascript@2.0.0: dependencies: - unicode-canonical-property-names-ecmascript: 2.0.0 + unicode-canonical-property-names-ecmascript: 2.0.1 unicode-property-aliases-ecmascript: 2.1.0 - unicode-match-property-value-ecmascript@2.1.0: {} + unicode-match-property-value-ecmascript@2.2.0: {} unicode-property-aliases-ecmascript@2.1.0: {} - unicorn-magic@0.1.0: {} - unified@11.0.5: dependencies: '@types/unist': 3.0.3 @@ -26825,10 +26217,6 @@ snapshots: dependencies: crypto-random-string: 2.0.0 - unique-string@3.0.0: - dependencies: - crypto-random-string: 4.0.0 - unist-util-is@6.0.0: dependencies: '@types/unist': 3.0.3 @@ -26856,7 +26244,7 @@ snapshots: unpipe@1.0.0: {} - unplugin@1.13.1: + unplugin@1.14.1: dependencies: acorn: 8.12.1 webpack-virtual-modules: 0.6.2 @@ -27016,8 +26404,6 @@ snapshots: transitivePeerDependencies: - supports-color - walk-up-path@3.0.1: {} - walker@1.0.8: dependencies: makeerror: 1.0.12 @@ -27035,10 +26421,6 @@ snapshots: dependencies: argparse: 2.0.1 - wcwidth@1.0.1: - dependencies: - defaults: 1.0.4 - web-streams-polyfill@4.0.0-beta.3: {} webidl-conversions@3.0.1: {} @@ -27103,7 +26485,7 @@ snapshots: webpack@5.94.0(webpack-cli@4.9.1): dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@webassemblyjs/ast': 1.12.1 '@webassemblyjs/wasm-edit': 1.12.1 '@webassemblyjs/wasm-parser': 1.12.1 @@ -27201,10 +26583,10 @@ snapshots: wildcard@2.0.1: {} - winston-transport@4.7.1: + winston-transport@4.8.0: dependencies: logform: 2.6.1 - readable-stream: 3.6.2 + readable-stream: 4.5.2 triple-beam: 1.4.1 winston@3.8.1: @@ -27218,7 +26600,7 @@ snapshots: safe-stable-stringify: 2.5.0 stack-trace: 0.0.10 triple-beam: 1.4.1 - winston-transport: 4.7.1 + winston-transport: 4.8.0 word-wrap@1.2.5: {} @@ -27268,12 +26650,6 @@ snapshots: wrappy@1.0.2: {} - write-file-atomic@2.4.3: - dependencies: - graceful-fs: 4.2.11 - imurmurhash: 0.1.4 - signal-exit: 3.0.7 - write-file-atomic@3.0.3: dependencies: imurmurhash: 0.1.4 diff --git a/projects/js-packages/ai-client/CHANGELOG.md b/projects/js-packages/ai-client/CHANGELOG.md index 865c31e1a1052..99bcab06d2685 100644 --- a/projects/js-packages/ai-client/CHANGELOG.md +++ b/projects/js-packages/ai-client/CHANGELOG.md @@ -5,6 +5,26 @@ 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.22.0] - 2024-10-21 +### Changed +- AI Client: Add types for AI assistant feature payload data branch featuresControl. [#39826] + +## [0.21.0] - 2024-10-14 +### Added +- AI Client: Add image styles 'auto' and 'none' to the logo generator. Order styles so those are on top in the dropdown selector. [#39689] +- AI Client: Add prompt processing and style guess function for logo generator [#39712] + +### Changed +- AI Client: Change plans limit to use and accept new 3000 value. [#39705] +- AI Client: Change upgrade copy edit and redirect URL. [#39671] +- AI Client: If site details show empty or default, do not trigger a logo generation, use empty placeholders. [#39536] +- AI Client: Remove provision of image styles via flag prop and internal definition, take it from ai-assistant-feature payload now. [#39589] +- Updated package dependencies. [#39669] [#39707] + +## [0.20.1] - 2024-10-07 +### Changed +- Updated package dependencies. [#39594] + ## [0.20.0] - 2024-09-30 ### Added - AI Client: add support for showStyleSelector on logo generator and use-image-generator [#39530] @@ -419,6 +439,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Updated package dependencies. [#31659] - Updated package dependencies. [#31785] +[0.22.0]: https://github.com/Automattic/jetpack-ai-client/compare/v0.21.0...v0.22.0 +[0.21.0]: https://github.com/Automattic/jetpack-ai-client/compare/v0.20.1...v0.21.0 +[0.20.1]: https://github.com/Automattic/jetpack-ai-client/compare/v0.20.0...v0.20.1 [0.20.0]: https://github.com/Automattic/jetpack-ai-client/compare/v0.19.0...v0.20.0 [0.19.0]: https://github.com/Automattic/jetpack-ai-client/compare/v0.18.1...v0.19.0 [0.18.1]: https://github.com/Automattic/jetpack-ai-client/compare/v0.18.0...v0.18.1 diff --git a/projects/js-packages/ai-client/changelog/change-jetpack-ai-fetch-error-retry-optional b/projects/js-packages/ai-client/changelog/change-jetpack-ai-fetch-error-retry-optional new file mode 100644 index 0000000000000..22ca3f2a46ba9 --- /dev/null +++ b/projects/js-packages/ai-client/changelog/change-jetpack-ai-fetch-error-retry-optional @@ -0,0 +1,4 @@ +Significance: minor +Type: changed + +AI Client: make reload handler prop optional as it still works in a fuzzy way. The error notice (modal) will instruct to reload the page when the optional prop is not provided diff --git a/projects/js-packages/ai-client/changelog/fix-jetpack-ai-default-initial-state-setting b/projects/js-packages/ai-client/changelog/fix-jetpack-ai-default-initial-state-setting new file mode 100644 index 0000000000000..41efeee76f1f9 --- /dev/null +++ b/projects/js-packages/ai-client/changelog/fix-jetpack-ai-default-initial-state-setting @@ -0,0 +1,4 @@ +Significance: minor +Type: fixed + +AI Client: fix initial state being mapped even when fetch fails, making the default state nonsensical diff --git a/projects/js-packages/ai-client/package.json b/projects/js-packages/ai-client/package.json index 6013e7634650b..a35a4e132b951 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.20.0", + "version": "0.22.0", "description": "A JS client for consuming Jetpack AI services", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/ai-client/#readme", "bugs": { @@ -23,15 +23,15 @@ }, "type": "module", "devDependencies": { - "@storybook/addon-actions": "8.2.9", - "@storybook/blocks": "8.2.9", - "@storybook/preview-api": "8.2.9", - "@storybook/react": "8.2.9", + "@storybook/addon-actions": "8.3.5", + "@storybook/blocks": "8.3.5", + "@storybook/preview-api": "8.3.5", + "@storybook/react": "8.3.5", "@types/markdown-it": "14.1.2", "@types/turndown": "5.0.5", "jest": "^29.6.2", "jest-environment-jsdom": "29.7.0", - "storybook": "8.2.9", + "storybook": "8.3.5", "typescript": "5.0.4" }, "exports": { @@ -50,15 +50,15 @@ "@microsoft/fetch-event-source": "2.0.1", "@types/react": "18.3.3", "@types/wordpress__block-editor": "11.5.15", - "@wordpress/api-fetch": "7.8.2", - "@wordpress/blob": "4.8.1", - "@wordpress/block-editor": "14.3.4", - "@wordpress/components": "28.8.4", - "@wordpress/compose": "7.8.3", - "@wordpress/data": "10.8.3", - "@wordpress/element": "6.8.1", - "@wordpress/i18n": "5.8.2", - "@wordpress/icons": "10.8.2", + "@wordpress/api-fetch": "7.9.0", + "@wordpress/blob": "4.9.0", + "@wordpress/block-editor": "14.4.0", + "@wordpress/components": "28.9.0", + "@wordpress/compose": "7.9.0", + "@wordpress/data": "10.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/i18n": "5.9.0", + "@wordpress/icons": "10.9.0", "clsx": "2.1.1", "debug": "4.3.4", "markdown-it": "14.0.0", diff --git a/projects/js-packages/ai-client/src/hooks/use-image-generator/constants.ts b/projects/js-packages/ai-client/src/hooks/use-image-generator/constants.ts index a0825efdfc374..d7f2bc8903f8a 100644 --- a/projects/js-packages/ai-client/src/hooks/use-image-generator/constants.ts +++ b/projects/js-packages/ai-client/src/hooks/use-image-generator/constants.ts @@ -1,5 +1,3 @@ -import { __ } from '@wordpress/i18n'; - // Styles export const IMAGE_STYLE_ENHANCE = 'enhance'; export const IMAGE_STYLE_ANIME = 'anime'; @@ -19,26 +17,32 @@ export const IMAGE_STYLE_3D_MODEL = '3d-model'; export const IMAGE_STYLE_PIXEL_ART = 'pixel-art'; export const IMAGE_STYLE_TEXTURE = 'texture'; export const IMAGE_STYLE_MONTY_PYTHON = 'monty-python'; +export const IMAGE_STYLE_AUTO = 'auto'; +export const IMAGE_STYLE_NONE = 'none'; -export const IMAGE_STYLE_LABELS = { - [ IMAGE_STYLE_ENHANCE ]: __( 'Enhance', 'jetpack-ai-client' ), - [ IMAGE_STYLE_ANIME ]: __( 'Anime', 'jetpack-ai-client' ), - [ IMAGE_STYLE_PHOTOGRAPHIC ]: __( 'Photographic', 'jetpack-ai-client' ), - [ IMAGE_STYLE_DIGITAL_ART ]: __( 'Digital Art', 'jetpack-ai-client' ), - [ IMAGE_STYLE_COMICBOOK ]: __( 'Comicbook', 'jetpack-ai-client' ), - [ IMAGE_STYLE_FANTASY_ART ]: __( 'Fantasy Art', 'jetpack-ai-client' ), - [ IMAGE_STYLE_ANALOG_FILM ]: __( 'Analog Film', 'jetpack-ai-client' ), - [ IMAGE_STYLE_NEONPUNK ]: __( 'Neon Punk', 'jetpack-ai-client' ), - [ IMAGE_STYLE_ISOMETRIC ]: __( 'Isometric', 'jetpack-ai-client' ), - [ IMAGE_STYLE_LOWPOLY ]: __( 'Low Poly', 'jetpack-ai-client' ), - [ IMAGE_STYLE_ORIGAMI ]: __( 'Origami', 'jetpack-ai-client' ), - [ IMAGE_STYLE_LINE_ART ]: __( 'Line Art', 'jetpack-ai-client' ), - [ IMAGE_STYLE_CRAFT_CLAY ]: __( 'Craft Clay', 'jetpack-ai-client' ), - [ IMAGE_STYLE_CINEMATIC ]: __( 'Cinematic', 'jetpack-ai-client' ), - [ IMAGE_STYLE_3D_MODEL ]: __( '3D Model', 'jetpack-ai-client' ), - [ IMAGE_STYLE_PIXEL_ART ]: __( 'Pixel Art', 'jetpack-ai-client' ), - [ IMAGE_STYLE_TEXTURE ]: __( 'Texture', 'jetpack-ai-client' ), - [ IMAGE_STYLE_MONTY_PYTHON ]: __( 'Monty Python', 'jetpack-ai-client' ), -}; +export type ImageStyle = + | typeof IMAGE_STYLE_ENHANCE + | typeof IMAGE_STYLE_ANIME + | typeof IMAGE_STYLE_PHOTOGRAPHIC + | typeof IMAGE_STYLE_DIGITAL_ART + | typeof IMAGE_STYLE_COMICBOOK + | typeof IMAGE_STYLE_FANTASY_ART + | typeof IMAGE_STYLE_ANALOG_FILM + | typeof IMAGE_STYLE_NEONPUNK + | typeof IMAGE_STYLE_ISOMETRIC + | typeof IMAGE_STYLE_LOWPOLY + | typeof IMAGE_STYLE_ORIGAMI + | typeof IMAGE_STYLE_LINE_ART + | typeof IMAGE_STYLE_CRAFT_CLAY + | typeof IMAGE_STYLE_CINEMATIC + | typeof IMAGE_STYLE_3D_MODEL + | typeof IMAGE_STYLE_PIXEL_ART + | typeof IMAGE_STYLE_TEXTURE + | typeof IMAGE_STYLE_MONTY_PYTHON + | typeof IMAGE_STYLE_AUTO + | typeof IMAGE_STYLE_NONE; -export type ImageStyle = keyof typeof IMAGE_STYLE_LABELS; +export type ImageStyleObject = { + label: string; + value: ImageStyle; +}; diff --git a/projects/js-packages/ai-client/src/hooks/use-image-generator/index.ts b/projects/js-packages/ai-client/src/hooks/use-image-generator/index.ts index 7664322ffc645..43022f1ced9d2 100644 --- a/projects/js-packages/ai-client/src/hooks/use-image-generator/index.ts +++ b/projects/js-packages/ai-client/src/hooks/use-image-generator/index.ts @@ -7,7 +7,6 @@ import debugFactory from 'debug'; */ import askQuestionSync from '../../ask-question/sync.js'; import requestJwt from '../../jwt/index.js'; -import { IMAGE_STYLE_LABELS } from './constants.js'; const debug = debugFactory( 'ai-client:use-image-generator' ); @@ -256,20 +255,10 @@ const useImageGenerator = () => { } }; - /** - * Get available styles. - * - * @return {object} with the styles {key:label} for the image generation. - */ - const getImageStyles = function (): object { - return IMAGE_STYLE_LABELS; - }; - return { generateImage, generateImageWithStableDiffusion, generateImageWithParameters: executeImageGeneration, - getImageStyles, }; }; diff --git a/projects/js-packages/ai-client/src/logo-generator/components/feature-fetch-failure-screen.tsx b/projects/js-packages/ai-client/src/logo-generator/components/feature-fetch-failure-screen.tsx index cd1f53acdf38c..3404e7c1fbb0b 100644 --- a/projects/js-packages/ai-client/src/logo-generator/components/feature-fetch-failure-screen.tsx +++ b/projects/js-packages/ai-client/src/logo-generator/components/feature-fetch-failure-screen.tsx @@ -10,25 +10,34 @@ import type React from 'react'; export const FeatureFetchFailureScreen: React.FC< { onCancel: () => void; - onRetry: () => void; + onRetry?: () => void; } > = ( { onCancel, onRetry } ) => { const errorMessage = __( 'We are sorry. There was an error loading your Jetpack AI plan data. Please, try again.', 'jetpack-ai-client' ); + const errorMessageWithoutRetry = __( + 'We are sorry. There was an error loading your Jetpack AI plan data. Please, reload the page and try again.', + 'jetpack-ai-client' + ); + return (
- { errorMessage } + + { onRetry ? errorMessage : errorMessageWithoutRetry } +
- + { onRetry && ( + + ) }
); diff --git a/projects/js-packages/ai-client/src/logo-generator/components/generator-modal.tsx b/projects/js-packages/ai-client/src/logo-generator/components/generator-modal.tsx index 526bd5011066c..dfba25feb65fa 100644 --- a/projects/js-packages/ai-client/src/logo-generator/components/generator-modal.tsx +++ b/projects/js-packages/ai-client/src/logo-generator/components/generator-modal.tsx @@ -45,11 +45,10 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { isOpen, onClose, onApplyLogo, - onReload, + onReload = null, siteDetails, context, placement, - showStyleSelector, } ) => { const { tracks } = useAnalytics(); const { recordEvent: recordTracksEvent } = tracks; @@ -71,8 +70,11 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { generateLogo, setContext, tierPlansEnabled, + site, + requireUpgrade, } = useLogoGenerator(); - const { featureFetchError, firstLogoPromptFetchError, clearErrors } = useRequestErrors(); + const { featureFetchError, setFeatureFetchError, firstLogoPromptFetchError, clearErrors } = + useRequestErrors(); const siteId = siteDetails?.ID; const [ logoAccepted, setLogoAccepted ] = useState( false ); const { nextTierCheckoutURL: upgradeURL } = useCheckout(); @@ -104,13 +106,23 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { */ const initializeModal = useCallback( async () => { try { + if ( ! siteId ) { + throw new Error( 'Site ID is missing' ); + } + + if ( ! feature?.featuresControl?.[ 'logo-generator' ]?.enabled ) { + setFeatureFetchError( 'Failed to fetch feature data' ); + throw new Error( 'Failed to fetch feature data' ); + } + const hasHistory = ! isLogoHistoryEmpty( String( siteId ) ); const logoCost = feature?.costs?.[ 'jetpack-ai-logo-generator' ]?.logo ?? DEFAULT_LOGO_COST; const promptCreationCost = 1; - const currentLimit = feature?.currentTier?.value || 0; + const currentLimit = feature?.currentTier?.limit || 0; + const currentValue = feature?.currentTier?.value || 0; const currentUsage = feature?.usagePeriod?.requestsCount || 0; - const isUnlimited = ! tierPlansEnabled ? currentLimit > 0 : currentLimit === 1; + const isUnlimited = ! tierPlansEnabled ? currentValue > 0 : currentValue === 1; const hasNoNextTier = ! feature?.nextTier; // If there is no next tier, the user cannot upgrade. // The user needs an upgrade immediately if they have no logos and not enough requests remaining for one prompt and one logo generation. @@ -123,10 +135,10 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { : currentLimit < currentUsage ); // If the site requires an upgrade, show the upgrade screen immediately. - setNeedsFeature( currentLimit === 0 ); + setNeedsFeature( currentValue === 0 ); setNeedsMoreRequests( siteNeedsMoreRequests ); - if ( currentLimit === 0 || siteNeedsMoreRequests ) { + if ( currentValue === 0 || siteNeedsMoreRequests ) { setLoadingState( null ); return; } @@ -137,14 +149,33 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { loadLogoHistory( siteId ); // If there is any logo, we do not need to generate a first logo again. - if ( ! isLogoHistoryEmpty( String( siteId ) ) ) { + if ( hasHistory ) { + setLoadingState( null ); + setIsLoadingHistory( false ); + return; + } + + // if site requires an upgrade, just return and set loaders to null, + // prompt component will take over the situation + if ( requireUpgrade ) { setLoadingState( null ); setIsLoadingHistory( false ); return; } - // If the site does not require an upgrade and has no logos stored, generate the first prompt based on the site's data. - generateFirstLogo(); + // If the site does not require an upgrade and has no logos stored + // and has title and description, generate the first prompt based on the site's data. + if ( + site && + site.name && + site.description && + site.name !== __( 'Site Title', 'jetpack-ai-client' ) + ) { + generateFirstLogo(); + } else { + setLoadingState( null ); + setIsLoadingHistory( false ); + } } catch ( error ) { debug( 'Error fetching feature', error ); setLoadingState( null ); @@ -157,6 +188,8 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { clearDeletedMedia, isLogoHistoryEmpty, siteId, + requireUpgrade, + setFeatureFetchError, ] ); const handleModalOpen = useCallback( async () => { @@ -179,6 +212,15 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { recordTracksEvent( EVENT_MODAL_CLOSE, { context, placement } ); }; + const handleReload = useCallback( () => { + if ( ! onReload ) { + return; + } + closeModal(); + requestedFeatureData.current = false; + onReload(); + }, [ onReload, closeModal ] ); + const handleApplyLogo = ( mediaId: number ) => { setLogoAccepted( true ); onApplyLogo?.( mediaId ); @@ -207,7 +249,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { // Handles modal opening logic useEffect( () => { // While the modal is not open, the siteId is not set, or the feature data is not available, do nothing. - if ( ! isOpen || ! siteId || ! feature?.costs ) { + if ( ! isOpen ) { return; } @@ -216,7 +258,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { needsToHandleModalOpen.current = false; handleModalOpen(); } - }, [ isOpen, siteId, handleModalOpen, feature ] ); + }, [ isOpen, handleModalOpen ] ); let body: React.ReactNode; @@ -226,10 +268,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { body = ( { - closeModal(); - onReload?.(); - } } + onRetry={ onReload ? handleReload : null } /> ); } else if ( needsFeature || needsMoreRequests ) { @@ -243,9 +282,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { } else { body = ( <> - { ! logoAccepted && ( - - ) } + { ! logoAccepted && } { { ) } + { ! logos.length && ! isLoadingHistory &&
 
} { logos.map( ( logo, index ) => ( - { showStyleSelector && availableStyles && ( + { showStyleSelector && ( ( { - label: imageStyles[ imageStyle ], - value: imageStyle, - } ) ) } + options={ styles } onChange={ updateStyle } + disabled={ isBusy || requireUpgrade } /> ) }
= ( { onCancel, upgradeURL, reason } ) => { const { tracks } = useAnalytics(); const { recordEvent: recordTracksEvent } = tracks; + const upgradeMessageFeature = __( - 'The logo generator requires a paid Jetpack AI plan. Upgrade your plan to access exclusive features, including logo generation. The upgrade will also increase the amount of requests you can use in all AI-powered features.', + 'Upgrade your Jetpack AI for access to logo generation. This upgrade will also increase the amount of monthly requests you can use in for all AI-powered features.', 'jetpack-ai-client' ); @@ -31,6 +33,10 @@ export const UpgradeScreen: React.FC< { 'jetpack-ai-client' ); + const upgradeInfoUrl = getRedirectUrl( 'ai-logo-generator-fair-usage-policy', { + anchor: 'usage-limitations-and-upgrades', + } ); + const { context } = useLogoGenerator(); const handleUpgradeClick = () => { @@ -45,7 +51,7 @@ export const UpgradeScreen: React.FC< { { reason === 'feature' ? upgradeMessageFeature : upgradeMessageRequests }   -
diff --git a/projects/js-packages/ai-client/src/logo-generator/constants.ts b/projects/js-packages/ai-client/src/logo-generator/constants.ts index 49d6ae5bbb77a..a6d1c95aee058 100644 --- a/projects/js-packages/ai-client/src/logo-generator/constants.ts +++ b/projects/js-packages/ai-client/src/logo-generator/constants.ts @@ -11,6 +11,7 @@ export const EVENT_NAVIGATE = 'jetpack_ai_logo_generator_navigate'; export const EVENT_FEEDBACK = 'jetpack_ai_logo_generator_feedback'; export const EVENT_UPGRADE = 'jetpack_ai_upgrade_button'; export const EVENT_SWITCH_STYLE = 'jetpack_ai_logo_generator_switch_style'; +export const EVENT_GUESS_STYLE = 'jetpack_ai_logo_generator_guess_style'; // Event placement constants export const EVENT_PLACEMENT_QUICK_LINKS = 'quick_links'; diff --git a/projects/js-packages/ai-client/src/logo-generator/hooks/use-checkout.ts b/projects/js-packages/ai-client/src/logo-generator/hooks/use-checkout.ts index b30119f4b87aa..1d77573b27d7b 100644 --- a/projects/js-packages/ai-client/src/logo-generator/hooks/use-checkout.ts +++ b/projects/js-packages/ai-client/src/logo-generator/hooks/use-checkout.ts @@ -7,7 +7,6 @@ import { getSiteFragment, } from '@automattic/jetpack-shared-extension-utils'; import { useSelect } from '@wordpress/data'; -import debugFactory from 'debug'; /** * Internal dependencies */ @@ -17,8 +16,6 @@ import { STORE_NAME } from '../store/index.js'; */ import type { Selectors } from '../store/types.js'; -const debug = debugFactory( 'ai-client:logo-generator:use-checkout' ); - export const useCheckout = () => { const { nextTier, tierPlansEnabled } = useSelect( select => { const selectors: Selectors = select( STORE_NAME ); @@ -60,8 +57,6 @@ export const useCheckout = () => { const nextTierCheckoutURL = checkoutUrl.toString(); - debug( 'Next tier checkout URL: ', nextTierCheckoutURL ); - return { nextTierCheckoutURL, hasNextTier: !! nextTier, diff --git a/projects/js-packages/ai-client/src/logo-generator/hooks/use-fair-usage-notice-message.tsx b/projects/js-packages/ai-client/src/logo-generator/hooks/use-fair-usage-notice-message.tsx index fc4ef8163b5eb..764d34403f4b7 100644 --- a/projects/js-packages/ai-client/src/logo-generator/hooks/use-fair-usage-notice-message.tsx +++ b/projects/js-packages/ai-client/src/logo-generator/hooks/use-fair-usage-notice-message.tsx @@ -1,6 +1,7 @@ import { useSelect } from '@wordpress/data'; import { createInterpolateElement } from '@wordpress/element'; import { __, sprintf } from '@wordpress/i18n'; +import getRedirectUrl from '../../../../components/tools/jp-redirect/index.js'; /** * Internal dependencies */ @@ -52,14 +53,12 @@ const useFairUsageNoticeMessage = () => { // Get the proper template based on the presence of the next usage period start date. const fairUsageNoticeMessage = getFairUsageNoticeMessage( nextUsagePeriodStartDateString ); + const upgradeInfoUrl = getRedirectUrl( 'ai-logo-generator-fair-usage-policy', { + anchor: 'jetpack-ai-usage-limit', + } ); + const fairUsageNoticeMessageElement = createInterpolateElement( fairUsageNoticeMessage, { - link: ( - - ), + link: , } ); return fairUsageNoticeMessageElement; diff --git a/projects/js-packages/ai-client/src/logo-generator/hooks/use-logo-generator.ts b/projects/js-packages/ai-client/src/logo-generator/hooks/use-logo-generator.ts index 038150d19630a..70acbf3fe98e0 100644 --- a/projects/js-packages/ai-client/src/logo-generator/hooks/use-logo-generator.ts +++ b/projects/js-packages/ai-client/src/logo-generator/hooks/use-logo-generator.ts @@ -7,6 +7,7 @@ import { useCallback } from 'react'; /** * Internal dependencies */ +import askQuestionSync from '../../ask-question/sync.js'; import useImageGenerator from '../../hooks/use-image-generator/index.js'; import useSaveToMediaLibrary from '../../hooks/use-save-to-media-library/index.js'; import requestJwt from '../../jwt/index.js'; @@ -17,8 +18,9 @@ import useRequestErrors from './use-request-errors.js'; /** * Types */ -import type { ImageStyle } from '../../hooks/use-image-generator/constants.js'; -import type { Logo, Selectors, SaveLogo } from '../store/types.js'; +import type { ImageStyle, ImageStyleObject } from '../../hooks/use-image-generator/constants.js'; +import type { RoleType } from '../../types.js'; +import type { Logo, Selectors, SaveLogo, LogoGeneratorFeatureControl } from '../store/types.js'; const debug = debugFactory( 'jetpack-ai-calypso:use-logo-generator' ); @@ -79,7 +81,7 @@ const useLogoGenerator = () => { setLogoUpdateError, } = useRequestErrors(); - const { generateImageWithParameters, getImageStyles } = useImageGenerator(); + const { generateImageWithParameters } = useImageGenerator(); const { saveToMediaLibrary } = useSaveToMediaLibrary(); const { ID = null, name = null, description = null } = siteDetails || {}; @@ -87,6 +89,10 @@ const useLogoGenerator = () => { const aiAssistantFeatureData = getAiAssistantFeature( siteId ); const logoGenerationCost = aiAssistantFeatureData?.costs?.[ 'jetpack-ai-logo-generator' ]?.logo; + const logoGeneratorControl = aiAssistantFeatureData?.featuresControl?.[ + 'logo-generator' + ] as LogoGeneratorFeatureControl; + const imageStyles: Array< ImageStyleObject > = logoGeneratorControl?.styles || []; const generateFirstPrompt = useCallback( async function (): Promise< string > { @@ -192,25 +198,70 @@ For example: user's prompt: A logo for an ice cream shop. Returned prompt: A log } }; - const generateImage = useCallback( async function ( { - prompt, - style = null, - }: { - prompt: string; - style?: ImageStyle | null; - } ): Promise< { data: Array< { url: string } > } > { - setLogoFetchError( null ); + const guessStyle = useCallback( + async function ( prompt: string ): Promise< ImageStyle | null > { + setLogoFetchError( null ); + if ( ! imageStyles || ! imageStyles.length ) { + return null; + } - try { - const tokenData = await requestJwt(); + const messages = [ + { + role: 'jetpack-ai' as RoleType, + context: { + type: 'ai-assistant-guess-logo-style', + request: prompt, + name, + description, + }, + }, + ]; - if ( ! tokenData || ! tokenData.token ) { - throw new Error( 'No token provided' ); + try { + const style = await askQuestionSync( messages, { feature: 'jetpack-ai-logo-generator' } ); + + if ( ! style ) { + return null; + } + const styleObject = imageStyles.find( ( { value } ) => value === style ); + + if ( ! styleObject ) { + return null; + } + + return styleObject.value; + } catch ( error ) { + debug( 'Error guessing style', error ); + Promise.reject( error ); } + }, + [ imageStyles, name, description ] + ); + + const generateImage = useCallback( + async function ( { + prompt, + style = null, + }: { + prompt: string; + style?: ImageStyle | null; + } ): Promise< { data: Array< { url: string } > } > { + setLogoFetchError( null ); - debug( 'Generating image with prompt', prompt ); + try { + const tokenData = await requestJwt(); + + if ( ! tokenData || ! tokenData.token ) { + throw new Error( 'No token provided' ); + } - const imageGenerationPrompt = `I NEED to test how the tool works with extremely simple prompts. DO NOT add any detail, just use it AS-IS: + if ( style === 'auto' ) { + throw new Error( 'Auto style is not supported' ); + } + + debug( 'Generating image with prompt', prompt ); + + const imageGenerationPrompt = `I NEED to test how the tool works with extremely simple prompts. DO NOT add any detail, just use it AS-IS: Create a single text-free iconic vector logo that symbolically represents the user request, using abstract or symbolic imagery. The design should be modern, with either a vivid color scheme full of gradients or a color scheme that's monochromatic. Use any of those styles based on the user request mood. Ensure the logo is set against a clean solid background. @@ -220,21 +271,38 @@ The image should contain a single icon, without variations, color palettes or di User request:${ prompt }`; - const body = { - prompt: imageGenerationPrompt, - feature: 'jetpack-ai-logo-generator', - response_format: 'b64_json', - style: style || '', // backend expects an empty string if no style is provided - }; + const body = { + prompt: imageGenerationPrompt, + // if style is set prompt is reworked at backend with messages + messages: style + ? [ + { + role: 'jetpack-ai', + context: { + type: 'ai-assistant-generate-logo', + request: prompt, + name, + description, + style, + }, + }, + ] + : [], + feature: 'jetpack-ai-logo-generator', + response_format: 'b64_json', + style: style || '', // backend expects an empty string if no style is provided + }; - const data = await generateImageWithParameters( body ); + const data = await generateImageWithParameters( body ); - return data as { data: { url: string }[] }; - } catch ( error ) { - setLogoFetchError( error ); - throw error; - } - }, [] ); + return data as { data: { url: string }[] }; + } catch ( error ) { + setLogoFetchError( error ); + throw error; + } + }, + [ name, description ] + ); const saveLogo = useCallback< SaveLogo >( async logo => { @@ -401,7 +469,8 @@ User request:${ prompt }`; tierPlansEnabled, isLoadingHistory, setIsLoadingHistory, - getImageStyles, + imageStyles, + guessStyle, }; }; diff --git a/projects/js-packages/ai-client/src/logo-generator/store/actions.ts b/projects/js-packages/ai-client/src/logo-generator/store/actions.ts index 4164e5e3ca6f6..497ab74246fc9 100644 --- a/projects/js-packages/ai-client/src/logo-generator/store/actions.ts +++ b/projects/js-packages/ai-client/src/logo-generator/store/actions.ts @@ -93,6 +93,10 @@ const actions = { query: 'force=wpcom', } ); + if ( response.data ) { + throw new Error( 'Failed to fetch' ); + } + // Store the feature in the store. dispatch( actions.storeAiAssistantFeature( mapAiFeatureResponseToAiFeatureProps( response ) ) diff --git a/projects/js-packages/ai-client/src/logo-generator/store/constants.ts b/projects/js-packages/ai-client/src/logo-generator/store/constants.ts index 4131f5f05f7cc..fa4a7d7f03cb6 100644 --- a/projects/js-packages/ai-client/src/logo-generator/store/constants.ts +++ b/projects/js-packages/ai-client/src/logo-generator/store/constants.ts @@ -18,7 +18,7 @@ export const ENDPOINT_AI_ASSISTANT_FEATURE = '/wpcom/v2/jetpack-ai/ai-assistant- * New AI Assistant feature async request */ export const FREE_PLAN_REQUESTS_LIMIT = 20; -export const UNLIMITED_PLAN_REQUESTS_LIMIT = 999999999; +export const UNLIMITED_PLAN_REQUESTS_LIMIT = 3000; export const ASYNC_REQUEST_COUNTDOWN_INIT_VALUE = 3; export const NEW_ASYNC_REQUEST_TIMER_INTERVAL = 5000; export const ACTION_DECREASE_NEW_ASYNC_REQUEST_COUNTDOWN = 'DECREASE_NEW_ASYNC_REQUEST_COUNTDOWN'; diff --git a/projects/js-packages/ai-client/src/logo-generator/store/initial-state.ts b/projects/js-packages/ai-client/src/logo-generator/store/initial-state.ts index 7b130dc12e31e..d07579e8f9793 100644 --- a/projects/js-packages/ai-client/src/logo-generator/store/initial-state.ts +++ b/projects/js-packages/ai-client/src/logo-generator/store/initial-state.ts @@ -34,6 +34,12 @@ const INITIAL_STATE: LogoGeneratorStateProp = { asyncRequestTimerId: 0, isRequestingImage: false, }, + featuresControl: { + 'logo-generator': { + enabled: false, + styles: [], + }, + }, }, }, history: [], diff --git a/projects/js-packages/ai-client/src/logo-generator/store/reducer.ts b/projects/js-packages/ai-client/src/logo-generator/store/reducer.ts index a2cd92c6916f8..9322c3c21a0b4 100644 --- a/projects/js-packages/ai-client/src/logo-generator/store/reducer.ts +++ b/projects/js-packages/ai-client/src/logo-generator/store/reducer.ts @@ -325,6 +325,16 @@ export default function reducer( case ACTION_SET_FEATURE_FETCH_ERROR: return { ...state, + features: { + ...state.features, + aiAssistantFeature: { + ...state?.features?.aiAssistantFeature, + _meta: { + ...state?.features?.aiAssistantFeature?._meta, + isRequesting: false, + }, + }, + }, _meta: { ...( state._meta ?? {} ), featureFetchError: action.error, diff --git a/projects/js-packages/ai-client/src/logo-generator/store/types.ts b/projects/js-packages/ai-client/src/logo-generator/store/types.ts index b40b2be92b85a..b34f3b9f8a22e 100644 --- a/projects/js-packages/ai-client/src/logo-generator/store/types.ts +++ b/projects/js-packages/ai-client/src/logo-generator/store/types.ts @@ -1,3 +1,4 @@ +import type { ImageStyleObject } from '../../hooks/use-image-generator/constants.js'; import type { SiteDetails } from '../types.js'; /** @@ -13,7 +14,7 @@ export type UpgradeTypeProp = 'vip' | 'default'; export type TierUnlimitedProps = { slug: 'ai-assistant-tier-unlimited'; - limit: 999999999; + limit: 999999999 | 3000; value: 1; readableLimit: string; }; @@ -88,13 +89,17 @@ export type TierValueProp = | Tier750Props[ 'value' ] | Tier1000Props[ 'value' ]; +export type LogoGeneratorFeatureControl = FeatureControl & { + styles: Array< ImageStyleObject > | []; +}; + export type FeatureControl = { enabled: boolean; - 'min-jetpack-version': string; - [ key: string ]: FeatureControl | boolean | string; }; -export type FeaturesControl = { [ key: string ]: FeatureControl }; +export type FeaturesControl = { + [ key: string ]: FeatureControl | LogoGeneratorFeatureControl; +}; export type AiFeatureProps = { hasFeature: boolean; @@ -215,6 +220,7 @@ export type AiAssistantFeatureEndpointResponseProps = { }; }; 'features-control'?: FeaturesControl; + data?: string; // when WP responds with a 200 status code but it's the error wrap }; export type SaveLogo = ( logo: Logo ) => Promise< { mediaId: number; mediaURL: string } >; diff --git a/projects/js-packages/ai-client/src/logo-generator/types.ts b/projects/js-packages/ai-client/src/logo-generator/types.ts index 60801f353bc3c..e54cf774ac98e 100644 --- a/projects/js-packages/ai-client/src/logo-generator/types.ts +++ b/projects/js-packages/ai-client/src/logo-generator/types.ts @@ -16,10 +16,9 @@ export interface GeneratorModalProps { isOpen: boolean; onClose: () => void; onApplyLogo: ( mediaId: number ) => void; - onReload: () => void; + onReload?: () => void; context: string; placement: string; - showStyleSelector?: boolean; } export interface LogoPresenterProps { diff --git a/projects/js-packages/ai-client/src/types.ts b/projects/js-packages/ai-client/src/types.ts index d984a1c49471a..0fc6479d5ec8c 100644 --- a/projects/js-packages/ai-client/src/types.ts +++ b/projects/js-packages/ai-client/src/types.ts @@ -17,11 +17,22 @@ export type SuggestionErrorCode = | typeof ERROR_UNCLEAR_PROMPT | typeof ERROR_RESPONSE; +export const ROLE_SYSTEM = 'system' as const; +export const ROLE_USER = 'user' as const; +export const ROLE_ASSISTANT = 'assistant' as const; +export const ROLE_JETPACK_AI = 'jetpack-ai' as const; + +export type RoleType = + | typeof ROLE_SYSTEM + | typeof ROLE_USER + | typeof ROLE_ASSISTANT + | typeof ROLE_JETPACK_AI; + /* * Prompt types */ export type PromptItemProps = { - role: 'system' | 'user' | 'assistant' | 'jetpack-ai'; + role: RoleType; content?: string; context?: object; }; diff --git a/projects/js-packages/api/CHANGELOG.md b/projects/js-packages/api/CHANGELOG.md index 87ba1b77b441e..e093c967b826c 100644 --- a/projects/js-packages/api/CHANGELOG.md +++ b/projects/js-packages/api/CHANGELOG.md @@ -2,6 +2,14 @@ ### This is a list detailing changes for the Jetpack RNA Components package releases. +## [0.17.15] - 2024-10-10 +### Changed +- Updated package dependencies. + +## [0.17.14] - 2024-10-07 +### Changed +- Updated package dependencies. [#39594] + ## [0.17.13] - 2024-09-10 ### Changed - Updated package dependencies. [#39302] @@ -354,6 +362,8 @@ - Add the API methods left behind by the previous PR. - Initial release of jetpack-api package +[0.17.15]: https://github.com/Automattic/jetpack-api/compare/v0.17.14...v0.17.15 +[0.17.14]: https://github.com/Automattic/jetpack-api/compare/v0.17.13...v0.17.14 [0.17.13]: https://github.com/Automattic/jetpack-api/compare/v0.17.12...v0.17.13 [0.17.12]: https://github.com/Automattic/jetpack-api/compare/v0.17.11...v0.17.12 [0.17.11]: https://github.com/Automattic/jetpack-api/compare/v0.17.10...v0.17.11 diff --git a/projects/js-packages/api/package.json b/projects/js-packages/api/package.json index f8decf9599a79..6238761e4bf50 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.13", + "version": "0.17.15", "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.8.1" + "@wordpress/url": "4.9.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 55d139a37619c..4da63fce49bc5 100644 --- a/projects/js-packages/base-styles/CHANGELOG.md +++ b/projects/js-packages/base-styles/CHANGELOG.md @@ -5,6 +5,14 @@ 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.34] - 2024-10-10 +### Changed +- Updated package dependencies. + +## [0.6.33] - 2024-10-07 +### Changed +- Updated package dependencies. [#39594] + ## [0.6.32] - 2024-09-10 ### Changed - Updated package dependencies. [#39302] @@ -313,6 +321,8 @@ 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.34]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.33...0.6.34 +[0.6.33]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.32...0.6.33 [0.6.32]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.31...0.6.32 [0.6.31]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.30...0.6.31 [0.6.30]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.29...0.6.30 diff --git a/projects/js-packages/base-styles/package.json b/projects/js-packages/base-styles/package.json index 2b7b00c414279..1717021191164 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.32", + "version": "0.6.34", "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.8.1" + "@wordpress/base-styles": "5.9.0" } } diff --git a/projects/js-packages/boost-score-api/CHANGELOG.md b/projects/js-packages/boost-score-api/CHANGELOG.md index 3f11b7abafa17..39ff183d1b94f 100644 --- a/projects/js-packages/boost-score-api/CHANGELOG.md +++ b/projects/js-packages/boost-score-api/CHANGELOG.md @@ -5,6 +5,14 @@ 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.42] - 2024-10-10 +### Changed +- Updated package dependencies. + +## [0.1.41] - 2024-10-07 +### Changed +- Updated package dependencies. [#39594] + ## [0.1.40] - 2024-09-10 ### Changed - Updated package dependencies. [#39302] @@ -175,6 +183,8 @@ 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.42]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.41...v0.1.42 +[0.1.41]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.40...v0.1.41 [0.1.40]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.39...v0.1.40 [0.1.39]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.38...v0.1.39 [0.1.38]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.37...v0.1.38 diff --git a/projects/js-packages/boost-score-api/package.json b/projects/js-packages/boost-score-api/package.json index c8228618c7e87..6aaa7889bafc4 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.40", + "version": "0.1.42", "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": { @@ -20,7 +20,7 @@ "test": "jest tests" }, "dependencies": { - "@wordpress/i18n": "5.8.2", + "@wordpress/i18n": "5.9.0", "zod": "3.22.3" }, "devDependencies": { diff --git a/projects/js-packages/components/CHANGELOG.md b/projects/js-packages/components/CHANGELOG.md index 05103621aeb29..4678b332afb84 100644 --- a/projects/js-packages/components/CHANGELOG.md +++ b/projects/js-packages/components/CHANGELOG.md @@ -2,6 +2,25 @@ ### This is a list detailing changes for the Jetpack RNA Components package releases. +## [0.58.0] - 2024-10-15 +### Added +- Add DiffViewer component [#39672] +- Add ThreatSeverityBadge component [#39758] + +## [0.57.0] - 2024-10-14 +### Added +- Add JetpackProtectLogo component. [#39703] +- Add MarkedLines component. [#39674] + +## [0.56.3] - 2024-10-10 +### Changed +- Components - getRedirectUrl: use file extension on import for linter to find definitions +- Updated package dependencies. + +## [0.56.2] - 2024-10-07 +### Changed +- Updated package dependencies. [#39594] + ## [0.56.1] - 2024-10-02 ### Changed - Updated package dependencies. [#39610] @@ -1176,6 +1195,10 @@ ### Changed - Update node version requirement to 14.16.1 +[0.58.0]: https://github.com/Automattic/jetpack-components/compare/0.57.0...0.58.0 +[0.57.0]: https://github.com/Automattic/jetpack-components/compare/0.56.3...0.57.0 +[0.56.3]: https://github.com/Automattic/jetpack-components/compare/0.56.2...0.56.3 +[0.56.2]: https://github.com/Automattic/jetpack-components/compare/0.56.1...0.56.2 [0.56.1]: https://github.com/Automattic/jetpack-components/compare/0.56.0...0.56.1 [0.56.0]: https://github.com/Automattic/jetpack-components/compare/0.55.17...0.56.0 [0.55.17]: https://github.com/Automattic/jetpack-components/compare/0.55.16...0.55.17 diff --git a/projects/js-packages/components/components/button/stories/index.stories.tsx b/projects/js-packages/components/components/button/stories/index.stories.tsx index 6b0dffab52719..390b6c1caf71f 100644 --- a/projects/js-packages/components/components/button/stories/index.stories.tsx +++ b/projects/js-packages/components/components/button/stories/index.stories.tsx @@ -313,7 +313,7 @@ export const VariantsAndProps = () => { no props { variants.map( variant => ( - + ) : ( - + { text } ); diff --git a/projects/js-packages/publicize-components/src/components/form/share-post-form.tsx b/projects/js-packages/publicize-components/src/components/form/share-post-form.tsx index 92794ff64f661..11ecd5e45aa23 100644 --- a/projects/js-packages/publicize-components/src/components/form/share-post-form.tsx +++ b/projects/js-packages/publicize-components/src/components/form/share-post-form.tsx @@ -1,5 +1,6 @@ -import { usePublicizeConfig } from '../../..'; +import { siteHasFeature } from '@automattic/jetpack-script-data'; import useSocialMediaMessage from '../../hooks/use-social-media-message'; +import { features } from '../../utils/constants'; import MediaSection from '../media-section'; import MessageBoxControl from '../message-box-control'; @@ -16,8 +17,6 @@ type SharePostFormProps = { export const SharePostForm: React.FC< SharePostFormProps > = ( { analyticsData = null } ) => { const { message, updateMessage, maxLength } = useSocialMediaMessage(); - const { isEnhancedPublishingEnabled } = usePublicizeConfig(); - return ( <> = ( { analyticsData = message={ message } analyticsData={ analyticsData } /> - { isEnhancedPublishingEnabled && } + { siteHasFeature( features.ENHANCED_PUBLISHING ) && ( + + ) } ); }; diff --git a/projects/js-packages/publicize-components/src/components/form/unsupported-connections-notice.tsx b/projects/js-packages/publicize-components/src/components/form/unsupported-connections-notice.tsx index 4118e69964eae..a3ef2edfffd64 100644 --- a/projects/js-packages/publicize-components/src/components/form/unsupported-connections-notice.tsx +++ b/projects/js-packages/publicize-components/src/components/form/unsupported-connections-notice.tsx @@ -9,7 +9,7 @@ import Notice from '../notice'; export const UnsupportedConnectionsNotice: React.FC = () => { const { connections } = useSocialMediaConnections(); - const { connectionsAdminUrl } = usePublicizeConfig(); + const { connectionsPageUrl } = usePublicizeConfig(); const unsupportedConnections = connections.filter( connection => checkConnectionCode( connection, 'unsupported' ) @@ -24,7 +24,7 @@ export const UnsupportedConnectionsNotice: React.FC = () => { 'jetpack' ), { - moreInfo: , + moreInfo: , } ) } diff --git a/projects/js-packages/publicize-components/src/components/generated-image-preview/index.js b/projects/js-packages/publicize-components/src/components/generated-image-preview/index.js index 0bec1f9013d68..925683f4a3e56 100644 --- a/projects/js-packages/publicize-components/src/components/generated-image-preview/index.js +++ b/projects/js-packages/publicize-components/src/components/generated-image-preview/index.js @@ -113,10 +113,10 @@ export default function GeneratedImagePreview( { return ( - + + + { _x( 'Preview', 'Heading for the generated preview image', 'jetpack' ) } +
{ }; }, [] ); - const { setKeyringResult, closeConnectionsModal } = useDispatch( store ); + const { setKeyringResult, closeConnectionsModal, setReconnectingAccount } = useDispatch( store ); const [ isSmall ] = useBreakpointMatch( 'sm' ); const closeModal = useCallback( () => { setKeyringResult( null ); + setReconnectingAccount( undefined ); closeConnectionsModal(); - }, [ closeConnectionsModal, setKeyringResult ] ); + }, [ closeConnectionsModal, setKeyringResult, setReconnectingAccount ] ); const hasKeyringResult = Boolean( keyringResult?.ID ); diff --git a/projects/js-packages/publicize-components/src/components/media-section/index.js b/projects/js-packages/publicize-components/src/components/media-section/index.js index dab833db5e5b6..0f5a88461d68f 100644 --- a/projects/js-packages/publicize-components/src/components/media-section/index.js +++ b/projects/js-packages/publicize-components/src/components/media-section/index.js @@ -68,11 +68,8 @@ export default function MediaSection( { return ( - + + { __( 'Attached Media', 'jetpack' ) } { renderHeaderSection() } select( store ).getReconnectingAccount(), [] ); + if ( 'mastodon' === service.ID ) { return (
@@ -58,6 +63,11 @@ export function CustomInputs( { service }: CustomInputsProps ) { required type="text" name="handle" + defaultValue={ + reconnectingAccount?.service_name === 'bluesky' + ? reconnectingAccount?.external_name + : undefined + } autoComplete="off" autoCapitalize="off" autoCorrect="off" @@ -93,6 +103,11 @@ export function CustomInputs( { service }: CustomInputsProps ) { aria-describedby={ `${ id }-password-description` } placeholder={ 'xxxx-xxxx-xxxx-xxxx' } /> + { reconnectingAccount?.service_name === 'bluesky' && ( + + { __( 'Please provide an app password to fix the connection.', 'jetpack' ) } + + ) }
); diff --git a/projects/js-packages/publicize-components/src/components/services/service-item.tsx b/projects/js-packages/publicize-components/src/components/services/service-item.tsx index 2020e883690a1..00754aa1a1e38 100644 --- a/projects/js-packages/publicize-components/src/components/services/service-item.tsx +++ b/projects/js-packages/publicize-components/src/components/services/service-item.tsx @@ -1,6 +1,6 @@ import { Button, useBreakpointMatch } from '@automattic/jetpack-components'; import { Panel, PanelBody } from '@wordpress/components'; -import { useReducer } from '@wordpress/element'; +import { useEffect, useReducer, useRef } from '@wordpress/element'; import { __, _x } from '@wordpress/i18n'; import { Icon, chevronDown, chevronUp } from '@wordpress/icons'; import { ConnectForm } from './connect-form'; @@ -8,7 +8,9 @@ import { ServiceItemDetails, ServicesItemDetailsProps } from './service-item-det import { ServiceStatus } from './service-status'; import styles from './style.module.scss'; -export type ServicesItemProps = ServicesItemDetailsProps; +export type ServicesItemProps = ServicesItemDetailsProps & { + isPanelDefaultOpen?: boolean; +}; /** * Service item component @@ -17,10 +19,22 @@ export type ServicesItemProps = ServicesItemDetailsProps; * * @return {import('react').ReactNode} Service item component */ -export function ServiceItem( { service, serviceConnections }: ServicesItemProps ) { +export function ServiceItem( { + service, + serviceConnections, + isPanelDefaultOpen, +}: ServicesItemProps ) { const [ isSmall ] = useBreakpointMatch( 'sm' ); - const [ isPanelOpen, togglePanel ] = useReducer( state => ! state, false ); + const [ isPanelOpen, togglePanel ] = useReducer( state => ! state, isPanelDefaultOpen ); + const panelRef = useRef< HTMLDivElement >( null ); + + useEffect( () => { + if ( isPanelDefaultOpen ) { + panelRef.current?.scrollIntoView( { block: 'center', behavior: 'smooth' } ); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [] ); const areCustomInputsVisible = isPanelOpen && service.needsCustomInputs; @@ -94,7 +108,7 @@ export function ServiceItem( { service, serviceConnections }: ServicesItemProps
- + { diff --git a/projects/js-packages/publicize-components/src/components/services/services-list.tsx b/projects/js-packages/publicize-components/src/components/services/services-list.tsx index c2cdf4c4ac8b9..1a5c030c07820 100644 --- a/projects/js-packages/publicize-components/src/components/services/services-list.tsx +++ b/projects/js-packages/publicize-components/src/components/services/services-list.tsx @@ -27,11 +27,17 @@ export function ServicesList() { }, {} ); }, [] ); + const reconnectingAccount = useSelect( select => select( store ).getReconnectingAccount(), [] ); + return (
    { supportedServices.map( service => (
  • - +
  • ) ) }
diff --git a/projects/js-packages/publicize-components/src/components/services/use-request-access.ts b/projects/js-packages/publicize-components/src/components/services/use-request-access.ts index 18afab50c92d2..5a5ea00117b4a 100644 --- a/projects/js-packages/publicize-components/src/components/services/use-request-access.ts +++ b/projects/js-packages/publicize-components/src/components/services/use-request-access.ts @@ -11,10 +11,10 @@ const isValidMastodonUsername = ( username: string ) => /** * Example valid handles: + * - domain.tld * - username.bsky.social * - user-name.bsky.social - * - my_domain.com.bsky.social - * - my-domain.com.my-own-server.com + * - my-domain.com * * @param {string} handle - Handle to validate * @@ -23,8 +23,8 @@ const isValidMastodonUsername = ( username: string ) => function isValidBlueskyHandle( handle: string ) { const parts = handle.split( '.' ).filter( Boolean ); - // A valid handle should have at least 3 parts - username, domain, and tld - if ( parts.length < 3 ) { + // A valid handle should have at least 2 parts - domain, and tld + if ( parts.length < 2 ) { return false; } @@ -96,7 +96,10 @@ export function useRequestAccess( { service, onConfirm }: RequestAccessOptions ) } url.searchParams.set( 'handle', handle ); - url.searchParams.set( 'app_password', formData.get( 'app_password' ).toString().trim() ); + url.searchParams.set( + 'app_password', + ( formData.get( 'app_password' )?.toString() || '' ).trim() + ); break; } diff --git a/projects/js-packages/publicize-components/src/components/social-image-generator/panel/modal.js b/projects/js-packages/publicize-components/src/components/social-image-generator/panel/modal.js index 1866770663bad..ed6f8b475f6f0 100644 --- a/projects/js-packages/publicize-components/src/components/social-image-generator/panel/modal.js +++ b/projects/js-packages/publicize-components/src/components/social-image-generator/panel/modal.js @@ -93,11 +93,8 @@ const SocialImageGeneratorSettingsModal = ( { onClose } ) => { 'jetpack' ) } /> - + + { __( 'Templates', 'jetpack' ) } , ] diff --git a/projects/packages/my-jetpack/changelog/settings-disable-inactive-elements b/projects/packages/my-jetpack/changelog/settings-disable-inactive-elements deleted file mode 100644 index cd89bbb31e2bb..0000000000000 --- a/projects/packages/my-jetpack/changelog/settings-disable-inactive-elements +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fixed -Comment: Disable controls that require user connection. - - diff --git a/projects/packages/my-jetpack/package.json b/projects/packages/my-jetpack/package.json index 6188b0de57a65..39ed4c95969cd 100644 --- a/projects/packages/my-jetpack/package.json +++ b/projects/packages/my-jetpack/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-my-jetpack", - "version": "4.35.10", + "version": "4.35.15", "description": "WP Admin page with information and configuration shared among all Jetpack stand-alone plugins", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/my-jetpack/#readme", "bugs": { @@ -32,15 +32,15 @@ "@automattic/jetpack-explat": "workspace:*", "@automattic/jetpack-licensing": "workspace:*", "@tanstack/react-query": "5.20.5", - "@wordpress/api-fetch": "7.8.2", - "@wordpress/components": "28.8.4", - "@wordpress/compose": "7.8.3", - "@wordpress/data": "10.8.3", - "@wordpress/date": "5.8.2", - "@wordpress/element": "6.8.1", - "@wordpress/i18n": "5.8.2", - "@wordpress/icons": "10.8.2", - "@wordpress/url": "4.8.1", + "@wordpress/api-fetch": "7.9.0", + "@wordpress/components": "28.9.0", + "@wordpress/compose": "7.9.0", + "@wordpress/data": "10.9.0", + "@wordpress/date": "5.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/i18n": "5.9.0", + "@wordpress/icons": "10.9.0", + "@wordpress/url": "4.9.0", "clsx": "2.1.1", "debug": "4.3.4", "gridicons": "3.4.1", @@ -59,7 +59,7 @@ "@babel/core": "7.24.7", "@babel/preset-env": "7.24.7", "@jest/globals": "29.7.0", - "@storybook/react": "8.2.9", + "@storybook/react": "8.3.5", "@testing-library/dom": "10.4.0", "@testing-library/jest-dom": "6.5.0", "@testing-library/react": "16.0.1", @@ -73,7 +73,7 @@ "require-from-string": "2.0.2", "sass": "1.64.1", "sass-loader": "12.4.0", - "storybook": "8.2.9", + "storybook": "8.3.5", "typescript": "5.0.4", "webpack": "5.94.0", "webpack-cli": "4.9.1" diff --git a/projects/packages/my-jetpack/src/class-initializer.php b/projects/packages/my-jetpack/src/class-initializer.php index bc7c08bf93ee4..0fcc2be3e8412 100644 --- a/projects/packages/my-jetpack/src/class-initializer.php +++ b/projects/packages/my-jetpack/src/class-initializer.php @@ -42,7 +42,7 @@ class Initializer { * * @var string */ - const PACKAGE_VERSION = '4.35.10'; + const PACKAGE_VERSION = '4.35.15'; /** * HTML container ID for the IDC screen on My Jetpack page. @@ -940,17 +940,18 @@ public static function alert_if_missing_connection( array $red_bubble_slugs ) { $broken_modules = self::check_for_broken_modules(); $connection = new Connection_Manager(); - if ( ! empty( $broken_modules['needs_user_connection'] ) ) { + // Checking for site connection issues first. + if ( ! empty( $broken_modules['needs_site_connection'] ) ) { $red_bubble_slugs[ self::MISSING_CONNECTION_NOTIFICATION_KEY ] = array( - 'type' => 'user', + 'type' => 'site', 'is_error' => true, ); return $red_bubble_slugs; } - if ( ! empty( $broken_modules['needs_site_connection'] ) ) { + if ( ! empty( $broken_modules['needs_user_connection'] ) ) { $red_bubble_slugs[ self::MISSING_CONNECTION_NOTIFICATION_KEY ] = array( - 'type' => 'site', + 'type' => 'user', 'is_error' => true, ); return $red_bubble_slugs; diff --git a/projects/packages/my-jetpack/src/products/class-boost.php b/projects/packages/my-jetpack/src/products/class-boost.php index a9f9b0f58f14b..9a60573323751 100644 --- a/projects/packages/my-jetpack/src/products/class-boost.php +++ b/projects/packages/my-jetpack/src/products/class-boost.php @@ -134,7 +134,7 @@ public static function get_tiers() { public static function get_features_by_tier() { return array( array( - 'name' => __( 'Optimize CSS Loading', 'jetpack-my-jetpack' ), + 'name' => __( 'Auto CSS Optimization', 'jetpack-my-jetpack' ), 'info' => array( 'content' => __( 'Move important styling information to the start of the page, which helps pages display your content sooner, so your users don’t have to wait for the entire page to load. Commonly referred to as Critical CSS.', @@ -143,8 +143,8 @@ public static function get_features_by_tier() { ), 'tiers' => array( self::FREE_TIER_SLUG => array( - 'included' => true, - 'description' => __( 'Must be done manually', 'jetpack-my-jetpack' ), + 'included' => false, + 'description' => __( 'Manual', 'jetpack-my-jetpack' ), 'info' => array( 'title' => __( 'Manual Critical CSS regeneration', 'jetpack-my-jetpack' ), 'content' => __( @@ -163,7 +163,7 @@ public static function get_features_by_tier() { ), self::UPGRADED_TIER_SLUG => array( 'included' => true, - 'description' => __( 'Automatically updated', 'jetpack-my-jetpack' ), + 'description' => __( 'Included', 'jetpack-my-jetpack' ), 'info' => array( 'title' => __( 'Automatic Critical CSS regeneration', 'jetpack-my-jetpack' ), 'content' => __( @@ -176,15 +176,51 @@ public static function get_features_by_tier() { ), ), array( - 'name' => __( 'Defer non-essential JavaScript', 'jetpack-my-jetpack' ), + 'name' => __( 'Automatic image size analysis', 'jetpack-my-jetpack' ), 'info' => array( 'content' => __( - 'Run non-essential JavaScript after the page has loaded so that styles and images can load more quickly.', + 'Scan your site for images that aren’t properly sized for the device they’re being viewed on.', + 'jetpack-my-jetpack' + ), + ), + 'tiers' => array( + self::FREE_TIER_SLUG => array( 'included' => false ), + self::UPGRADED_TIER_SLUG => array( 'included' => true ), + ), + ), + array( + 'name' => __( 'Historical performance scores', 'jetpack-my-jetpack' ), + 'info' => array( + 'content' => __( + 'Get access to your historical performance scores and see advanced Core Web Vitals data.', 'jetpack-my-jetpack' ), - 'link' => array( - 'id' => 'jetpack-boost-defer-js', - 'title' => 'web.dev', + ), + 'tiers' => array( + self::FREE_TIER_SLUG => array( 'included' => false ), + self::UPGRADED_TIER_SLUG => array( 'included' => true ), + ), + ), + array( + 'name' => __( 'Dedicated email support', 'jetpack-my-jetpack' ), + 'info' => array( + 'content' => __( + '

Paid customers get dedicated email support from our world-class Happiness Engineers to help with any issue.

+

All other questions are handled by our team as quickly as we are able to go through the WordPress support forum.

', + 'jetpack-my-jetpack' + ), + ), + 'tiers' => array( + self::FREE_TIER_SLUG => array( 'included' => false ), + self::UPGRADED_TIER_SLUG => array( 'included' => true ), + ), + ), + array( + 'name' => __( 'Page Cache', 'jetpack-my-jetpack' ), + 'info' => array( + 'content' => __( + 'Page caching speeds up load times by storing a copy of each web page on the first visit, allowing subsequent visits to be served instantly. This reduces server load and improves user experience by delivering content faster, without waiting for the page to be generated again.', + 'jetpack-my-jetpack' ), ), 'tiers' => array( @@ -193,15 +229,37 @@ public static function get_features_by_tier() { ), ), array( - 'name' => __( 'Lazy image loading', 'jetpack-my-jetpack' ), + 'name' => __( 'Image CDN Quality Settings', 'jetpack-my-jetpack' ), 'info' => array( 'content' => __( - 'Improve page loading speed by only loading images when they are required.', + 'Fine-tune image quality settings to your liking.', 'jetpack-my-jetpack' ), - 'link' => array( - 'id' => 'jetpack-boost-lazy-load', - 'title' => 'web.dev', + ), + 'tiers' => array( + self::FREE_TIER_SLUG => array( 'included' => false ), + self::UPGRADED_TIER_SLUG => array( 'included' => true ), + ), + ), + array( + 'name' => __( 'Image CDN Auto-Resize Lazy Images', 'jetpack-my-jetpack' ), + 'info' => array( + 'content' => __( + 'Optimizes lazy-loaded images by dynamically serving perfectly sized images for each device.', + 'jetpack-my-jetpack' + ), + ), + 'tiers' => array( + self::FREE_TIER_SLUG => array( 'included' => false ), + self::UPGRADED_TIER_SLUG => array( 'included' => true ), + ), + ), + array( + 'name' => __( 'Image CDN', 'jetpack-my-jetpack' ), + 'info' => array( + 'content' => __( + 'Deliver images from Jetpack\'s Content Delivery Network. Automatically resizes your images to an appropriate size, converts them to modern efficient formats like WebP, and serves them from a worldwide network of servers.', + 'jetpack-my-jetpack' ), ), 'tiers' => array( @@ -223,10 +281,10 @@ public static function get_features_by_tier() { ), ), array( - 'name' => __( 'Image CDN', 'jetpack-my-jetpack' ), + 'name' => __( 'Defer non-essential JavaScript', 'jetpack-my-jetpack' ), 'info' => array( 'content' => __( - 'Deliver images from Jetpack\'s Content Delivery Network. Automatically resizes your images to an appropriate size, converts them to modern efficient formats like WebP, and serves them from a worldwide network of servers.', + 'Run non-essential JavaScript after the page has loaded so that styles and images can load more quickly.', 'jetpack-my-jetpack' ), ), @@ -236,16 +294,15 @@ public static function get_features_by_tier() { ), ), array( - 'name' => __( 'Dedicated email support', 'jetpack-my-jetpack' ), + 'name' => __( 'Concatenate JS and CSS', 'jetpack-my-jetpack' ), 'info' => array( 'content' => __( - '

Paid customers get dedicated email support from our world-class Happiness Engineers to help with any issue.

-

All other questions are handled by our team as quickly as we are able to go through the WordPress support forum.

', + 'Boost your website performance by merging and compressing JavaScript and CSS files, reducing site loading time and number of requests.', 'jetpack-my-jetpack' ), ), 'tiers' => array( - self::FREE_TIER_SLUG => array( 'included' => false ), + self::FREE_TIER_SLUG => array( 'included' => true ), self::UPGRADED_TIER_SLUG => array( 'included' => true ), ), ), diff --git a/projects/packages/my-jetpack/webpack.config.js b/projects/packages/my-jetpack/webpack.config.js index f2d2ba865f3af..36fc920c8f668 100644 --- a/projects/packages/my-jetpack/webpack.config.js +++ b/projects/packages/my-jetpack/webpack.config.js @@ -19,11 +19,7 @@ module.exports = [ ...jetpackWebpackConfig.resolve, }, node: false, - plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), - ], + plugins: [ ...jetpackWebpackConfig.StandardPlugins() ], module: { strictExportPresence: true, rules: [ diff --git a/projects/packages/plans/CHANGELOG.md b/projects/packages/plans/CHANGELOG.md index bdb192c71b67d..1d1d39451f04c 100644 --- a/projects/packages/plans/CHANGELOG.md +++ b/projects/packages/plans/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.4.12] - 2024-10-21 +### Fixed +- Fixed the site features for Simple sites. [#39817] + ## [0.4.11] - 2024-09-23 ### Changed - Update dependencies. @@ -154,6 +158,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Deprecated - Moved the options class into Connection. [#24095] +[0.4.12]: https://github.com/Automattic/jetpack-plans/compare/v0.4.11...v0.4.12 [0.4.11]: https://github.com/Automattic/jetpack-plans/compare/v0.4.10...v0.4.11 [0.4.10]: https://github.com/Automattic/jetpack-plans/compare/v0.4.9...v0.4.10 [0.4.9]: https://github.com/Automattic/jetpack-plans/compare/v0.4.8...v0.4.9 diff --git a/projects/packages/plans/package.json b/projects/packages/plans/package.json index 9b34af05f76c4..5f135800276bc 100644 --- a/projects/packages/plans/package.json +++ b/projects/packages/plans/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-plans", - "version": "0.4.11", + "version": "0.4.12", "description": "Fetch information about Jetpack Plans from wpcom", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/plans/#readme", "bugs": { diff --git a/projects/packages/plans/src/class-current-plan.php b/projects/packages/plans/src/class-current-plan.php index f6e7c6e351c79..cef57d52b3d41 100644 --- a/projects/packages/plans/src/class-current-plan.php +++ b/projects/packages/plans/src/class-current-plan.php @@ -21,6 +21,14 @@ class Current_Plan { */ private static $active_plan_cache; + /** + * Simple Site-specific features available. + * Their calculation can be expensive and slow, so we're caching it for the request. + * + * @var array Site-specific features + */ + private static $simple_site_specific_features = array(); + /** * The name of the option that will store the site's plan. * @@ -374,7 +382,7 @@ function_exists( 'wpcom_feature_exists' ) && return true; } - // As of 05 2023 - all plans support Earn features (minus 'simple-payments') + // As of 05 2023 - all plans support Earn features (minus 'simple-payments'). if ( in_array( $feature, array( 'donations', 'recurring-payments', 'premium-content/container' ), true ) ) { return true; } @@ -390,4 +398,39 @@ function_exists( 'wpcom_feature_exists' ) && return false; } + + /** + * Retrieve site-specific features for Simple sites. + * + * See Jetpack_Gutenberg::get_site_specific_features() + * + * @return array + */ + public static function get_simple_site_specific_features() { + $is_simple_site = defined( 'IS_WPCOM' ) && constant( 'IS_WPCOM' ); + + if ( ! $is_simple_site ) { + return array( + 'active' => array(), + 'available' => array(), + ); + } + + $current_blog_id = get_current_blog_id(); + + // Return the cached value if it exists. + if ( isset( self::$simple_site_specific_features[ $current_blog_id ] ) ) { + return self::$simple_site_specific_features[ $current_blog_id ]; + } + + if ( ! class_exists( '\Store_Product_List' ) ) { + require WP_CONTENT_DIR . '/admin-plugins/wpcom-billing/store-product-list.php'; + } + + $simple_site_specific_features = \Store_Product_List::get_site_specific_features_data( $current_blog_id ); + + self::$simple_site_specific_features[ $current_blog_id ] = $simple_site_specific_features; + + return $simple_site_specific_features; + } } diff --git a/projects/packages/plugin-deactivation/changelog/add-dependency-extraction-auto-polyfill b/projects/packages/plugin-deactivation/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/packages/plugin-deactivation/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/packages/plugin-deactivation/webpack.config.js b/projects/packages/plugin-deactivation/webpack.config.js index 7e7deb963848b..2d0f579c01460 100644 --- a/projects/packages/plugin-deactivation/webpack.config.js +++ b/projects/packages/plugin-deactivation/webpack.config.js @@ -19,11 +19,7 @@ module.exports = [ ...jetpackWebpackConfig.resolve, }, node: false, - plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), - ], + plugins: [ ...jetpackWebpackConfig.StandardPlugins() ], module: { strictExportPresence: true, rules: [ diff --git a/projects/packages/publicize/CHANGELOG.md b/projects/packages/publicize/CHANGELOG.md index 0c620d639c11c..2e9b7805d534b 100644 --- a/projects/packages/publicize/CHANGELOG.md +++ b/projects/packages/publicize/CHANGELOG.md @@ -5,6 +5,21 @@ 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.54.4] - 2024-10-21 +### Changed +- Initial State: Migrated URLs to script data. [#39797] + +### Fixed +- Fixed the site features for Simple sites. [#39817] + +## [0.54.3] - 2024-10-14 +### Changed +- Updated package dependencies. [#39707] + +## [0.54.2] - 2024-10-07 +### Changed +- Updated package dependencies. [#39594] + ## [0.54.1] - 2024-10-02 ### Fixed - Social: Fixed Bluesky not showing up on page load [#39597] @@ -721,6 +736,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Updated package dependencies. - Update package.json metadata. +[0.54.4]: https://github.com/Automattic/jetpack-publicize/compare/v0.54.3...v0.54.4 +[0.54.3]: https://github.com/Automattic/jetpack-publicize/compare/v0.54.2...v0.54.3 +[0.54.2]: https://github.com/Automattic/jetpack-publicize/compare/v0.54.1...v0.54.2 [0.54.1]: https://github.com/Automattic/jetpack-publicize/compare/v0.54.0...v0.54.1 [0.54.0]: https://github.com/Automattic/jetpack-publicize/compare/v0.53.0...v0.54.0 [0.53.0]: https://github.com/Automattic/jetpack-publicize/compare/v0.52.3...v0.53.0 diff --git a/projects/packages/publicize/changelog/fix-social-bsky-profile-url b/projects/packages/publicize/changelog/fix-social-bsky-profile-url new file mode 100644 index 0000000000000..ebe3332ec44de --- /dev/null +++ b/projects/packages/publicize/changelog/fix-social-bsky-profile-url @@ -0,0 +1,4 @@ +Significance: minor +Type: fixed + +Social: Fix Bsky profile URL diff --git a/projects/packages/publicize/package.json b/projects/packages/publicize/package.json index 69277112b2114..7df4d2ac41402 100644 --- a/projects/packages/publicize/package.json +++ b/projects/packages/publicize/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-publicize", - "version": "0.54.1", + "version": "0.54.4", "description": "Publicize makes it easy to share your site’s posts on several social media networks automatically when you publish a new post.", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/publicize/#readme", "bugs": { @@ -28,13 +28,13 @@ ], "devDependencies": { "@automattic/jetpack-webpack-config": "workspace:*", - "@wordpress/browserslist-config": "6.8.1", + "@wordpress/browserslist-config": "6.9.0", "concurrently": "7.6.0", "webpack": "5.94.0", "webpack-cli": "4.9.1" }, "dependencies": { "@automattic/jetpack-analytics": "workspace:*", - "@wordpress/i18n": "5.8.2" + "@wordpress/i18n": "5.9.0" } } diff --git a/projects/packages/publicize/src/class-publicize-base.php b/projects/packages/publicize/src/class-publicize-base.php index 5e5964fb64afb..b88bd1a6b12ca 100644 --- a/projects/packages/publicize/src/class-publicize-base.php +++ b/projects/packages/publicize/src/class-publicize-base.php @@ -517,6 +517,10 @@ public function get_profile_link( $service_name, $connection ) { return 'https://twitter.com/' . substr( $cmeta['external_display'], 1 ); // Has a leading '@'. } + if ( 'bluesky' === $service_name ) { + return 'https://bsky.app/profile/' . $cmeta['external_id']; + } + if ( 'linkedin' === $service_name ) { if ( ! isset( $cmeta['connection_data']['meta']['profile_url'] ) ) { return false; diff --git a/projects/packages/publicize/src/class-publicize-script-data.php b/projects/packages/publicize/src/class-publicize-script-data.php index 053ad74a938ee..ff841f2da2545 100644 --- a/projects/packages/publicize/src/class-publicize-script-data.php +++ b/projects/packages/publicize/src/class-publicize-script-data.php @@ -60,6 +60,11 @@ public static function set_admin_script_data( $data ) { $data['site']['plan'] = Current_Plan::get(); } + // Override features for simple sites. + if ( ( new Host() )->is_wpcom_simple() ) { + $data['site']['plan']['features'] = Current_Plan::get_simple_site_specific_features(); + } + return $data; } @@ -86,6 +91,7 @@ public static function get_admin_script_data() { 'feature_flags' => self::get_feature_flags(), 'supported_services' => array(), 'shares_data' => array(), + 'urls' => array(), ); if ( ! Utils::is_publicize_active() ) { @@ -105,9 +111,9 @@ public static function get_admin_script_data() { 'api_paths' => self::get_api_paths(), 'supported_services' => self::get_supported_services(), 'shares_data' => self::get_shares_data(), + 'urls' => self::get_urls(), /** * 'store' => self::get_store_script_data(), - * 'urls' => self::get_urls(), */ ) ); @@ -216,4 +222,23 @@ public static function get_api_paths() { 'resharePost' => '/jetpack/v4/publicize/{postId}', ); } + + /** + * Get the URLs. + * + * @return array + */ + public static function get_urls() { + + $urls = array( + 'connectionsManagementPage' => self::publicize()->publicize_connections_url( + 'jetpack-social-connections-admin-page' + ), + ); + + // Escape the URLs. + array_walk( $urls, 'esc_url_raw' ); + + return $urls; + } } diff --git a/projects/packages/schema/CHANGELOG.md b/projects/packages/schema/CHANGELOG.md index 4f89809afb93f..defae9cddcacf 100644 --- a/projects/packages/schema/CHANGELOG.md +++ b/projects/packages/schema/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.2] - 2024-10-10 +### Fixed +- Fix missing types in phpdoc comments. [#39648] + ## [0.1.1] - 2024-08-29 ### Changed - Cleanup utils [#39025] @@ -16,4 +20,5 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Updated package dependencies. [#39004] +[0.1.2]: https://github.com/Automattic/jetpack-schema/compare/v0.1.1...v0.1.2 [0.1.1]: https://github.com/Automattic/jetpack-schema/compare/v0.1.0...v0.1.1 diff --git a/projects/packages/schema/src/class-schema.php b/projects/packages/schema/src/class-schema.php index fe3b30f6e0be1..fecdc28d8e3b6 100644 --- a/projects/packages/schema/src/class-schema.php +++ b/projects/packages/schema/src/class-schema.php @@ -65,7 +65,7 @@ * $parsed_data = $my_schema->parse($input_data); */ class Schema { - const PACKAGE_VERSION = '0.1.1'; + const PACKAGE_VERSION = '0.1.2'; public static function as_string() { return new Schema_Parser( new Type_String() ); diff --git a/projects/packages/schema/src/types/class-type-assoc-array.php b/projects/packages/schema/src/types/class-type-assoc-array.php index 736462c28ec66..a2a1ac607cd51 100644 --- a/projects/packages/schema/src/types/class-type-assoc-array.php +++ b/projects/packages/schema/src/types/class-type-assoc-array.php @@ -31,7 +31,7 @@ public function __construct( $assoc_parser_array ) { * It will then loop over each key that was provided in the constructor * and pull the value based on that key from the $data array. * - * @param $value mixed[] + * @param array|object $value * * @return array * @throws Schema_Error - If the $data passed to it is not an associative array. diff --git a/projects/packages/search/CHANGELOG.md b/projects/packages/search/CHANGELOG.md index a7ba91e4345ec..2425246b79d41 100644 --- a/projects/packages/search/CHANGELOG.md +++ b/projects/packages/search/CHANGELOG.md @@ -5,6 +5,24 @@ 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.45.9] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + +## [0.45.8] - 2024-10-14 +### Changed +- Updated package dependencies. [#39707] + +### Fixed +- Add `key` to tag and cat lists in `SearchResultMinimal` to improve behavior if lists change at runtime. [#39709] + +## [0.45.7] - 2024-10-07 +### Changed +- Updated package dependencies. [#39592] +- Updated package dependencies. [#39594] +- Updated package dependencies. [#39595] +- Updated package dependencies. [#39639] + ## [0.45.6] - 2024-09-30 ### Changed - Update dependencies. [#39528] @@ -1053,6 +1071,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Updated package dependencies. - Update PHPUnit configs to include just what needs coverage rather than include everything then try to exclude stuff that doesn't. +[0.45.9]: https://github.com/Automattic/jetpack-search/compare/v0.45.8...v0.45.9 +[0.45.8]: https://github.com/Automattic/jetpack-search/compare/v0.45.7...v0.45.8 +[0.45.7]: https://github.com/Automattic/jetpack-search/compare/v0.45.6...v0.45.7 [0.45.6]: https://github.com/Automattic/jetpack-search/compare/v0.45.5...v0.45.6 [0.45.5]: https://github.com/Automattic/jetpack-search/compare/v0.45.4...v0.45.5 [0.45.4]: https://github.com/Automattic/jetpack-search/compare/v0.45.3...v0.45.4 diff --git a/projects/packages/search/package.json b/projects/packages/search/package.json index 5e3deb0485c7f..e50483025b55f 100644 --- a/projects/packages/search/package.json +++ b/projects/packages/search/package.json @@ -1,6 +1,6 @@ { "name": "jetpack-search", - "version": "0.45.6", + "version": "0.45.9", "description": "Package for Jetpack Search products", "main": "main.js", "directories": { @@ -40,12 +40,12 @@ "@automattic/jetpack-base-styles": "workspace:*", "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-connection": "workspace:*", - "@wordpress/base-styles": "5.8.1", - "@wordpress/block-editor": "14.3.4", - "@wordpress/data": "10.8.3", - "@wordpress/element": "6.8.1", - "@wordpress/i18n": "5.8.2", - "@wordpress/icons": "10.8.2", + "@wordpress/base-styles": "5.9.0", + "@wordpress/block-editor": "14.4.0", + "@wordpress/data": "10.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/i18n": "5.9.0", + "@wordpress/icons": "10.9.0", "clsx": "2.1.1", "fast-json-stable-stringify": "2.1.0", "lodash": "4.17.21", @@ -75,9 +75,9 @@ "@testing-library/dom": "10.4.0", "@testing-library/preact": "3.2.4", "@testing-library/react": "16.0.1", - "@wordpress/babel-plugin-import-jsx-pragma": "5.8.1", - "@wordpress/browserslist-config": "6.8.1", - "@wordpress/dependency-extraction-webpack-plugin": "6.8.3", + "@wordpress/babel-plugin-import-jsx-pragma": "5.9.0", + "@wordpress/browserslist-config": "6.9.0", + "@wordpress/dependency-extraction-webpack-plugin": "6.9.0", "autoprefixer": "10.4.14", "babel-jest": "29.4.3", "concurrently": "7.6.0", diff --git a/projects/packages/search/src/class-package.php b/projects/packages/search/src/class-package.php index 9634a181d05e3..38fb525e2aa66 100644 --- a/projects/packages/search/src/class-package.php +++ b/projects/packages/search/src/class-package.php @@ -11,7 +11,7 @@ * Search package general information */ class Package { - const VERSION = '0.45.6'; + const VERSION = '0.45.9'; const SLUG = 'search'; /** diff --git a/projects/packages/search/src/dashboard/components/mocked-search/mocked-instant-search.jsx b/projects/packages/search/src/dashboard/components/mocked-search/mocked-instant-search.jsx index 8b3de6d7e21e2..31d9fd98796ae 100644 --- a/projects/packages/search/src/dashboard/components/mocked-search/mocked-instant-search.jsx +++ b/projects/packages/search/src/dashboard/components/mocked-search/mocked-instant-search.jsx @@ -1,6 +1,6 @@ import { Gridicon } from '@automattic/jetpack-components'; import { __, sprintf } from '@wordpress/i18n'; -import React from 'react'; +import React, { useId } from 'react'; import TextRowPlaceHolder from './placeholder'; import './mocked-instant-search.scss'; @@ -62,14 +62,18 @@ export default function MockedInstantSearch() { ); } -const MockedFilterOption = () => ( -
- -
-); +const MockedFilterOption = () => { + const id = useId(); + + return ( +
+ +
+ ); +}; const MockedSearchResult = () => (
diff --git a/projects/packages/search/src/instant-search/components/search-result-minimal.jsx b/projects/packages/search/src/instant-search/components/search-result-minimal.jsx index 46739b9af523b..1e2a59c45efff 100644 --- a/projects/packages/search/src/instant-search/components/search-result-minimal.jsx +++ b/projects/packages/search/src/instant-search/components/search-result-minimal.jsx @@ -55,7 +55,7 @@ class SearchResultMinimal extends Component { { tags.length !== 0 && (
    { tags.map( tag => ( -
  • +
  • { tag } @@ -67,7 +67,7 @@ class SearchResultMinimal extends Component { { cats.length !== 0 && (
      { cats.map( cat => ( -
    • +
    • { cat } diff --git a/projects/packages/search/tools/babel.config.js b/projects/packages/search/tools/babel.config.js index bc3f60e706111..dc870e4b77eb7 100644 --- a/projects/packages/search/tools/babel.config.js +++ b/projects/packages/search/tools/babel.config.js @@ -5,6 +5,7 @@ module.exports = api => { [ '@automattic/jetpack-webpack-config/babel/preset', { + autoWpPolyfill: false, presetEnv: { corejs: require( 'core-js/package.json' ).version, modules: false, diff --git a/projects/packages/stats-admin/CHANGELOG.md b/projects/packages/stats-admin/CHANGELOG.md index 63a0b6120387c..fc9c6b475970d 100644 --- a/projects/packages/stats-admin/CHANGELOG.md +++ b/projects/packages/stats-admin/CHANGELOG.md @@ -5,6 +5,14 @@ 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.22.3 - 2024-10-21 +### Changed +- JITM: Expose function to render message. [#39714] + +## 0.22.2 - 2024-10-14 +### Fixed +- Added missing fields for stats single post endpoint. [#39691] + ## 0.22.1 - 2024-09-23 ### Changed - Update dependencies. [#39303] diff --git a/projects/packages/stats-admin/package.json b/projects/packages/stats-admin/package.json index 07af18a9f24ef..d0a9302a24fa1 100644 --- a/projects/packages/stats-admin/package.json +++ b/projects/packages/stats-admin/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-stats-admin", - "version": "0.22.1", + "version": "0.22.3", "description": "Stats Dashboard", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/stats-admin/#readme", "bugs": { diff --git a/projects/packages/stats-admin/src/class-main.php b/projects/packages/stats-admin/src/class-main.php index 83c2671fcac20..34c931bdb5de8 100644 --- a/projects/packages/stats-admin/src/class-main.php +++ b/projects/packages/stats-admin/src/class-main.php @@ -22,7 +22,7 @@ class Main { /** * Stats version. */ - const VERSION = '0.22.1'; + const VERSION = '0.22.3'; /** * Singleton Main instance. @@ -52,6 +52,19 @@ public static function init() { */ private function __construct() { add_action( 'rest_api_init', array( new REST_Controller(), 'register_rest_routes' ) ); + // Disable JITM assets on the Stats page. + // JITM is handled separately by Stats: https://github.com/Automattic/wp-calypso/pull/95273. + add_filter( + 'jetpack_display_jitms_on_screen', + function ( $show, $screen_id ) { + if ( 'jetpack_page_stats' === $screen_id ) { + return false; + } + return $show; + }, + 10, + 2 + ); } /** diff --git a/projects/packages/stats-admin/src/class-rest-controller.php b/projects/packages/stats-admin/src/class-rest-controller.php index 6a9a124ce2869..f0be6457146e3 100644 --- a/projects/packages/stats-admin/src/class-rest-controller.php +++ b/projects/packages/stats-admin/src/class-rest-controller.php @@ -604,11 +604,19 @@ public function get_single_post( $req ) { return $post; } - // It shouldn't be a problem because only title and ID are exposed. + // The endpoint should be as compatible as possible with `/sites/$site_id/posts/$post_id`. + // The reason we are not forwarding the request is that `/sites/$site_id/posts/$post_id` might require user tokens for private posts/sites, which is not possible for users without a WordPress.com account. + // 'like_count' is not included in the response because it's available through another endpoint `/sites/$site_id/posts/$post_id/likes`. return array( - 'ID' => $post->ID, - 'title' => $post->post_title, - 'URL' => get_permalink( $post->ID ), + 'ID' => $post->ID, + 'site_ID' => Jetpack_Options::get_option( 'id' ), + 'title' => $post->post_title, + 'URL' => get_permalink( $post->ID ), + 'type' => $post->post_type, + 'status' => $post->post_status, + 'discussion' => array( 'comment_count' => intval( $post->comment_count ) ), + 'date' => $post->post_date, + 'post_thumbnail' => array( 'URL' => get_the_post_thumbnail_url( $post->ID ) ), ); } diff --git a/projects/packages/sync/CHANGELOG.md b/projects/packages/sync/CHANGELOG.md index 2aeb94e9aa9b9..963e67ed56760 100644 --- a/projects/packages/sync/CHANGELOG.md +++ b/projects/packages/sync/CHANGELOG.md @@ -5,6 +5,25 @@ 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). +## [3.14.2] - 2024-10-15 +### Changed +- Jetpack Sync: Update default Post Type Blacklist [#39770] + +### Fixed +- Jetpack Sync: Ensure Full Sync is only triggered on backend admin POST requests [#39747] +- Update plugin action links filter parameter to avoid conflicts with other plugins. [#39681] + +## [3.14.1] - 2024-10-14 +### Changed +- Internal updates. + +## [3.14.0] - 2024-10-10 +### Added +- Jetpack Sync: Add 'woocommerce_analytics_first_activation' in options' whitelist + +### Changed +- Sync: Ensure we don't sync set_object_terms action for terms with blacklisted taxonomies + ## [3.13.2] - 2024-09-30 ### Fixed - Jetpack Sync: Fix a bug in syncing HPOS 'woocommerce_delete_order' actions [#39562] @@ -1299,6 +1318,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Packages: Move sync to a classmapped package +[3.14.2]: https://github.com/Automattic/jetpack-sync/compare/v3.14.1...v3.14.2 +[3.14.1]: https://github.com/Automattic/jetpack-sync/compare/v3.14.0...v3.14.1 +[3.14.0]: https://github.com/Automattic/jetpack-sync/compare/v3.13.2...v3.14.0 [3.13.2]: https://github.com/Automattic/jetpack-sync/compare/v3.13.1...v3.13.2 [3.13.1]: https://github.com/Automattic/jetpack-sync/compare/v3.13.0...v3.13.1 [3.13.0]: https://github.com/Automattic/jetpack-sync/compare/v3.12.0...v3.13.0 diff --git a/projects/packages/sync/changelog/revert-39658-update-jetpack-sync-whitelist b/projects/packages/sync/changelog/revert-39658-update-jetpack-sync-whitelist new file mode 100644 index 0000000000000..59df2569689e4 --- /dev/null +++ b/projects/packages/sync/changelog/revert-39658-update-jetpack-sync-whitelist @@ -0,0 +1,5 @@ +Significance: patch +Type: removed +Comment: Revert "Jetpack Sync: Add 'woocommerce_analytics_first_activation' in options' whitelist" + + diff --git a/projects/packages/sync/composer.json b/projects/packages/sync/composer.json index 5f573a389414b..364bd3789a4c5 100644 --- a/projects/packages/sync/composer.json +++ b/projects/packages/sync/composer.json @@ -59,7 +59,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "3.13.x-dev" + "dev-trunk": "3.14.x-dev" }, "dependencies": { "test-only": [ diff --git a/projects/packages/sync/src/class-actions.php b/projects/packages/sync/src/class-actions.php index f3535cb23265a..2769030b4e68e 100644 --- a/projects/packages/sync/src/class-actions.php +++ b/projects/packages/sync/src/class-actions.php @@ -175,7 +175,9 @@ public static function add_sender_shutdown() { ) ) { self::initialize_sender(); add_action( 'shutdown', array( self::$sender, 'do_sync' ), 9998 ); - add_action( 'shutdown', array( self::$sender, 'do_full_sync' ), 9999 ); + if ( self::should_initialize_sender( true ) ) { + add_action( 'shutdown', array( self::$sender, 'do_full_sync' ), 9999 ); + } } } @@ -212,9 +214,11 @@ public static function mark_sync_read_only() { * @access public * @static * + * @param bool $full_sync Whether the Full Sync sender should run on shutdown for this request. + * * @return bool */ - public static function should_initialize_sender() { + public static function should_initialize_sender( $full_sync = false ) { // Allow for explicit disable of Sync from request param jetpack_sync_read_only. if ( isset( $_REQUEST['jetpack_sync_read_only'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification @@ -227,9 +231,10 @@ public static function should_initialize_sender() { } /** - * For now, if dedicated Sync is enabled we will always initialize send, even for GET and unauthenticated requests. + * For now, if dedicated Sync is enabled we will always initialize send, even for GET and unauthenticated requests + * but not for Full Sync, since it will still happen on shutdown. */ - if ( Settings::is_dedicated_sync_enabled() ) { + if ( false === $full_sync && Settings::is_dedicated_sync_enabled() ) { return true; } diff --git a/projects/packages/sync/src/class-defaults.php b/projects/packages/sync/src/class-defaults.php index ebe986fc94310..612b077e4f970 100644 --- a/projects/packages/sync/src/class-defaults.php +++ b/projects/packages/sync/src/class-defaults.php @@ -461,6 +461,11 @@ public static function get_callable_whitelist() { 'wprss_feed_item', 'memberships_coupon', 'memberships_gift', + 'tribe-ea-record', // The Events Calendar Plugin - Store Event Aggregator record information. + 'wphb_minify_group', // Hummingbird Plugin - Used internally to keep data about assets minification. + 'bigcommerce_task', // BigCommerce Plugin - Store import queue. + 'secupress_log_err404', // SecuPress Plugin - Log 404 pages + 'iw_omnibus_price_log', // Omnibus Plugin - Log price changes. ); /** diff --git a/projects/packages/sync/src/class-package-version.php b/projects/packages/sync/src/class-package-version.php index cff0d492120ab..d028b2ae59613 100644 --- a/projects/packages/sync/src/class-package-version.php +++ b/projects/packages/sync/src/class-package-version.php @@ -12,7 +12,7 @@ */ class Package_Version { - const PACKAGE_VERSION = '3.13.2'; + const PACKAGE_VERSION = '3.14.2'; const PACKAGE_SLUG = 'sync'; diff --git a/projects/packages/sync/src/modules/class-callables.php b/projects/packages/sync/src/modules/class-callables.php index 6aceead8a0dc3..c3f132dca687c 100644 --- a/projects/packages/sync/src/modules/class-callables.php +++ b/projects/packages/sync/src/modules/class-callables.php @@ -383,8 +383,8 @@ public function set_plugin_action_links() { if ( ! empty( $plugins_lock ) && ( isset( $current_screeen->id ) && 'plugins' !== $current_screeen->id ) ) { return; } - $plugins = array_keys( Functions::get_plugins() ); - foreach ( $plugins as $plugin_file ) { + $plugins = Functions::get_plugins(); + foreach ( $plugins as $plugin_file => $plugin_data ) { /** * Plugins often like to unset things but things break if they are not able to. */ @@ -396,13 +396,13 @@ public function set_plugin_action_links() { 'edit' => '', ); /** This filter is documented in src/wp-admin/includes/class-wp-plugins-list-table.php */ - $action_links = apply_filters( 'plugin_action_links', $action_links, $plugin_file, null, 'all' ); + $action_links = apply_filters( 'plugin_action_links', $action_links, $plugin_file, $plugin_data, 'all' ); // Verify $action_links is still an array. if ( ! is_array( $action_links ) ) { $action_links = array(); } /** This filter is documented in src/wp-admin/includes/class-wp-plugins-list-table.php */ - $action_links = apply_filters( "plugin_action_links_{$plugin_file}", $action_links, $plugin_file, null, 'all' ); + $action_links = apply_filters( "plugin_action_links_{$plugin_file}", $action_links, $plugin_file, $plugin_data, 'all' ); // Verify $action_links is still an array to resolve warnings from filters not returning an array. if ( is_array( $action_links ) ) { $action_links = array_filter( $action_links ); diff --git a/projects/packages/sync/src/modules/class-plugins.php b/projects/packages/sync/src/modules/class-plugins.php index 5a9e907a43000..3274caf7df598 100644 --- a/projects/packages/sync/src/modules/class-plugins.php +++ b/projects/packages/sync/src/modules/class-plugins.php @@ -41,6 +41,24 @@ class Plugins extends Module { */ private $plugins = array(); + /** + * List of all updated plugins. + * + * @access private + * + * @var array + */ + private $plugins_updated = array(); + + /** + * State + * + * @access private + * + * @var array + */ + private $state = array(); + /** * Sync module name. * @@ -131,10 +149,10 @@ public function on_upgrader_completion( $upgrader, $details ) { switch ( $details['action'] ) { case 'update': - $state = array( + $this->state = array( 'is_autoupdate' => Jetpack_Constants::is_true( 'JETPACK_PLUGIN_AUTOUPDATE' ), ); - $errors = $this->get_errors( $upgrader->skin ); + $errors = $this->get_errors( $upgrader->skin ); if ( $errors ) { foreach ( $plugins as $slug ) { /** @@ -149,13 +167,20 @@ public function on_upgrader_completion( $upgrader, $details ) { * @param string Error code * @param string Error message */ - do_action( 'jetpack_plugin_update_failed', $this->get_plugin_info( $slug ), $errors['code'], $errors['message'], $state ); + do_action( 'jetpack_plugin_update_failed', $this->get_plugin_info( $slug ), $errors['code'], $errors['message'], $this->state ); } return; } + + $this->plugins_updated = array_map( array( $this, 'get_plugin_info' ), $plugins ); + add_action( 'shutdown', array( $this, 'sync_plugins_updated' ), 9 ); + + break; + case 'install': /** - * Sync that a plugin update + * Signals to the sync listener that a plugin was installed and a sync action + * reflecting the installation and the plugin info should be sent * * @since 1.6.3 * @since-jetpack 5.8.0 @@ -164,26 +189,7 @@ public function on_upgrader_completion( $upgrader, $details ) { * * @param array () $plugin, Plugin Data */ - do_action( 'jetpack_plugins_updated', array_map( array( $this, 'get_plugin_info' ), $plugins ), $state ); - break; - case 'install': - } - - if ( 'install' === $details['action'] ) { - /** - * Signals to the sync listener that a plugin was installed and a sync action - * reflecting the installation and the plugin info should be sent - * - * @since 1.6.3 - * @since-jetpack 5.8.0 - * - * @module sync - * - * @param array () $plugin, Plugin Data - */ - do_action( 'jetpack_plugin_installed', array_map( array( $this, 'get_plugin_info' ), $plugins ) ); - - return; + do_action( 'jetpack_plugin_installed', array_map( array( $this, 'get_plugin_info' ), $plugins ) ); } } @@ -379,4 +385,23 @@ public function expand_plugin_data( $args ) { $plugin_data, ); } + + /** + * Helper method for firing the 'jetpack_plugins_updated' action on shutdown. + * + * @access public + */ + public function sync_plugins_updated() { + /** + * Sync that a plugin update + * + * @since 1.6.3 + * @since-jetpack 5.8.0 + * + * @module sync + * + * @param array () $plugin, Plugin Data + */ + do_action( 'jetpack_plugins_updated', $this->plugins_updated, $this->state ); + } } diff --git a/projects/packages/sync/src/modules/class-terms.php b/projects/packages/sync/src/modules/class-terms.php index f1c00064f825a..ba385a3415ea8 100644 --- a/projects/packages/sync/src/modules/class-terms.php +++ b/projects/packages/sync/src/modules/class-terms.php @@ -273,12 +273,16 @@ public function filter_blacklisted_taxonomies( $args ) { } /** - * Filter out set_object_terms actions where the terms have not changed. + * Filter out set_object_terms actions with blacklisted taxonomies or where the terms have not changed. * * @param array $args Hook args. - * @return array|boolean False if no change in terms, the original hook args otherwise. + * @return array|boolean False if blacklisted taxonomy or no change in terms, the original hook args otherwise. */ public function filter_set_object_terms_no_update( $args ) { + // Check if the taxonomy is blacklisted. $args[3] is the taxonomy. + if ( isset( $args[3] ) && in_array( $args[3], Settings::get_setting( 'taxonomies_blacklist' ), true ) ) { + return false; + } // There is potential for other plugins to modify args, therefore lets validate # of and types. // $args[2] is $tt_ids, $args[5] is $old_tt_ids see wp-includes/taxonomy.php L2740. if ( 6 === count( $args ) && is_array( $args[2] ) && is_array( $args[5] ) ) { diff --git a/projects/packages/transport-helper/CHANGELOG.md b/projects/packages/transport-helper/CHANGELOG.md index f9ea0635cb3fa..18fb66d6661e8 100644 --- a/projects/packages/transport-helper/CHANGELOG.md +++ b/projects/packages/transport-helper/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.2.5] - 2024-10-15 +### Changed +- Update dependencies. [#39497] + ## [0.2.4] - 2024-09-06 ### Changed - Updated package dependencies. [#39004] @@ -67,6 +71,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Updated package dependencies. +[0.2.5]: https://github.com/Automattic/jetpack-transport-helper/compare/v0.2.4...v0.2.5 [0.2.4]: https://github.com/Automattic/jetpack-transport-helper/compare/v0.2.3...v0.2.4 [0.2.3]: https://github.com/Automattic/jetpack-transport-helper/compare/v0.2.2...v0.2.3 [0.2.2]: https://github.com/Automattic/jetpack-transport-helper/compare/v0.2.1...v0.2.2 diff --git a/projects/packages/transport-helper/package.json b/projects/packages/transport-helper/package.json index bdfdfd8502d60..13565fecef0aa 100644 --- a/projects/packages/transport-helper/package.json +++ b/projects/packages/transport-helper/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-transport-helper", - "version": "0.2.4", + "version": "0.2.5", "description": "Package to help transport server communication", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/transport-helper/#readme", "bugs": { diff --git a/projects/packages/transport-helper/src/class-package-version.php b/projects/packages/transport-helper/src/class-package-version.php index 9845e1207719e..b4e60b84e0151 100644 --- a/projects/packages/transport-helper/src/class-package-version.php +++ b/projects/packages/transport-helper/src/class-package-version.php @@ -16,7 +16,7 @@ */ class Package_Version { - const PACKAGE_VERSION = '0.2.4'; + const PACKAGE_VERSION = '0.2.5'; const PACKAGE_SLUG = 'transport-helper'; diff --git a/projects/packages/videopress/CHANGELOG.md b/projects/packages/videopress/CHANGELOG.md index 7be8a21a85dea..96d1d13f498a4 100644 --- a/projects/packages/videopress/CHANGELOG.md +++ b/projects/packages/videopress/CHANGELOG.md @@ -5,6 +5,29 @@ 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.24.13] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + +## [0.24.12] - 2024-10-14 +### Added +- Add tracks to connection banner. [#39732] + +### Changed +- Only include `wp-polyfill` as a script dependency when needed. [#39629] +- Updated package dependencies. [#39669] [#39707] + +### Fixed +- Fix bug where connection banner was showing in P2s and other atomic/simple sites [#39667] + +## [0.24.11] - 2024-10-07 +### Changed +- Update connection nudge for VideoPress connection banner in blocks. [#39628] +- Updated package dependencies. [#39594] + +### Fixed +- VideoPress: fix thumbnail update bug that showed the old thumbnail for a couple seconds on the details page. [#39631] + ## [0.24.10] - 2024-09-30 ### Changed - Update dependencies. [#39528] @@ -1448,6 +1471,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Created empty package [#24952] +[0.24.13]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.12...v0.24.13 +[0.24.12]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.11...v0.24.12 +[0.24.11]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.10...v0.24.11 [0.24.10]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.9...v0.24.10 [0.24.9]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.8...v0.24.9 [0.24.8]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.7...v0.24.8 diff --git a/projects/packages/videopress/changelog/update-jetpack-blocks-confusing-connection-nudges b/projects/packages/videopress/changelog/update-jetpack-blocks-confusing-connection-nudges deleted file mode 100644 index 0a41d686ca108..0000000000000 --- a/projects/packages/videopress/changelog/update-jetpack-blocks-confusing-connection-nudges +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update connection nudge for VideoPress connection banner in blocks diff --git a/projects/packages/videopress/changelog/update-videopress-update-thumb-placeholder-while-updating b/projects/packages/videopress/changelog/update-videopress-update-thumb-placeholder-while-updating deleted file mode 100644 index d1cf9f41e5de8..0000000000000 --- a/projects/packages/videopress/changelog/update-videopress-update-thumb-placeholder-while-updating +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -VideoPress: fix thumbnail update bug that showed the old thumbnail for a couple seconds on the details page. diff --git a/projects/packages/videopress/package.json b/projects/packages/videopress/package.json index d714cde542689..13363879be44b 100644 --- a/projects/packages/videopress/package.json +++ b/projects/packages/videopress/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-videopress", - "version": "0.24.10", + "version": "0.24.13", "description": "VideoPress package", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/videopress/#readme", "bugs": { @@ -30,16 +30,16 @@ "@babel/preset-react": "7.24.7", "@csstools/postcss-global-data": "2.1.1", "@jest/globals": "29.4.3", - "@storybook/addon-actions": "8.2.9", - "@storybook/blocks": "8.2.9", - "@storybook/preview-api": "8.2.9", - "@storybook/react": "8.2.9", + "@storybook/addon-actions": "8.3.5", + "@storybook/blocks": "8.3.5", + "@storybook/preview-api": "8.3.5", + "@storybook/react": "8.3.5", "@testing-library/dom": "10.4.0", "@testing-library/react": "16.0.1", "@types/jest": "29.5.12", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", - "@wordpress/browserslist-config": "6.8.1", + "@wordpress/browserslist-config": "6.9.0", "autoprefixer": "10.4.14", "copy-webpack-plugin": "11.0.0", "jest": "29.7.0", @@ -50,7 +50,7 @@ "require-from-string": "2.0.2", "sass": "1.64.1", "sass-loader": "12.4.0", - "storybook": "8.2.9", + "storybook": "8.3.5", "typescript": "5.0.4", "webpack": "5.94.0", "webpack-cli": "4.9.1" @@ -62,22 +62,22 @@ "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-connection": "workspace:*", "@automattic/jetpack-shared-extension-utils": "workspace:*", - "@wordpress/api-fetch": "7.8.2", - "@wordpress/blob": "4.8.1", - "@wordpress/block-editor": "14.3.4", - "@wordpress/blocks": "13.8.4", - "@wordpress/components": "28.8.4", - "@wordpress/compose": "7.8.3", - "@wordpress/core-data": "7.8.4", - "@wordpress/data": "10.8.3", - "@wordpress/date": "5.8.2", - "@wordpress/dom-ready": "4.8.1", - "@wordpress/editor": "14.8.6", - "@wordpress/element": "6.8.1", - "@wordpress/html-entities": "4.8.1", - "@wordpress/i18n": "5.8.2", - "@wordpress/icons": "10.8.2", - "@wordpress/url": "4.8.1", + "@wordpress/api-fetch": "7.9.0", + "@wordpress/blob": "4.9.0", + "@wordpress/block-editor": "14.4.0", + "@wordpress/blocks": "13.9.0", + "@wordpress/components": "28.9.0", + "@wordpress/compose": "7.9.0", + "@wordpress/core-data": "7.9.0", + "@wordpress/data": "10.9.0", + "@wordpress/date": "5.9.0", + "@wordpress/dom-ready": "4.9.0", + "@wordpress/editor": "14.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/html-entities": "4.9.0", + "@wordpress/i18n": "5.9.0", + "@wordpress/icons": "10.9.0", + "@wordpress/url": "4.9.0", "clsx": "2.1.1", "debug": "4.3.4", "filesize": "8.0.6", diff --git a/projects/packages/videopress/src/class-package-version.php b/projects/packages/videopress/src/class-package-version.php index 566cc653a2530..dc3f8ec1b1335 100644 --- a/projects/packages/videopress/src/class-package-version.php +++ b/projects/packages/videopress/src/class-package-version.php @@ -11,7 +11,7 @@ * The Package_Version class. */ class Package_Version { - const PACKAGE_VERSION = '0.24.10'; + const PACKAGE_VERSION = '0.24.13'; const PACKAGE_SLUG = 'videopress'; diff --git a/projects/packages/videopress/src/client/block-editor/blocks/video/components/videopress-uploader/index.js b/projects/packages/videopress/src/client/block-editor/blocks/video/components/videopress-uploader/index.js index 660e7833e7721..472d93ef9d5ba 100644 --- a/projects/packages/videopress/src/client/block-editor/blocks/video/components/videopress-uploader/index.js +++ b/projects/packages/videopress/src/client/block-editor/blocks/video/components/videopress-uploader/index.js @@ -10,9 +10,9 @@ import { __ } from '@wordpress/i18n'; /** * Internal dependencies */ -import { usePermission } from '../../../../../admin/hooks/use-permission'; import useResumableUploader from '../../../../../hooks/use-resumable-uploader'; import { uploadFromLibrary } from '../../../../../hooks/use-uploader'; +import { isUserConnected } from '../../../../../lib/connection'; import { buildVideoPressURL, pickVideoBlockAttributesFromUrl } from '../../../../../lib/url'; import { VIDEOPRESS_VIDEO_ALLOWED_MEDIA_TYPES } from '../../constants'; import { PlaceholderWrapper } from '../../edit'; @@ -37,7 +37,7 @@ const VideoPressUploader = ( { const [ isUploadingInProgress, setIsUploadingInProgress ] = useState( false ); const [ isVerifyingLocalMedia, setIsVerifyingLocalMedia ] = useState( false ); - const { hasConnectedOwner } = usePermission(); + const hasUserConnection = isUserConnected(); /* * When the file to upload is set, start the upload process @@ -331,7 +331,7 @@ const VideoPressUploader = ( { return ( - { ! hasConnectedOwner ? needsConnectionText : needsActivationText } + { ! hasUserConnection ? needsConnectionText : needsActivationText } ); } diff --git a/projects/packages/videopress/src/client/block-editor/blocks/video/components/videopress-uploader/uploader-editor.js b/projects/packages/videopress/src/client/block-editor/blocks/video/components/videopress-uploader/uploader-editor.js index 6806537b8c3b5..9488d3f91140d 100644 --- a/projects/packages/videopress/src/client/block-editor/blocks/video/components/videopress-uploader/uploader-editor.js +++ b/projects/packages/videopress/src/client/block-editor/blocks/video/components/videopress-uploader/uploader-editor.js @@ -88,7 +88,10 @@ const UploadingEditor = props => { return (
      - + + + { __( 'Video poster (optional)', 'jetpack-videopress-pkg' ) } + track.kind === 'chapters' )?.[ 0 ]; @@ -399,14 +401,20 @@ export default function VideoPressEdit( {
      <> { setIsRedirectingToMyJetpack( true ); - if ( ! hasConnectedOwner ) { + if ( ! hasUserConnection ) { + analyticsTracks.recordEvent( 'jetpack_editor_connect_banner_click', { + block: 'VideoPress', + } ); return ( window.location.href = myJetpackConnectUrl ); } + analyticsTracks.recordEvent( 'jetpack_editor_activate_banner_click', { + block: 'VideoPress', + } ); window.location.href = jetpackVideoPressSettingUrl; } } /> @@ -597,14 +605,19 @@ export default function VideoPressEdit( { { setIsRedirectingToMyJetpack( true ); - if ( ! hasConnectedOwner ) { + if ( ! hasUserConnection ) { + analyticsTracks.recordEvent( 'jetpack_editor_connect_banner_click', { + block: 'VideoPress', + } ); return ( window.location.href = myJetpackConnectUrl ); } - + analyticsTracks.recordEvent( 'jetpack_editor_activate_banner_click', { + block: 'VideoPress', + } ); window.location.href = jetpackVideoPressSettingUrl; } } /> diff --git a/projects/packages/videopress/src/client/lib/connection/index.ts b/projects/packages/videopress/src/client/lib/connection/index.ts index a5565eec03d72..35e162479bf1f 100644 --- a/projects/packages/videopress/src/client/lib/connection/index.ts +++ b/projects/packages/videopress/src/client/lib/connection/index.ts @@ -1,13 +1,12 @@ /** * External dependencies */ +import { isAtomicSite, isSimpleSite } from '@automattic/jetpack-shared-extension-utils'; import debugFactory from 'debug'; // Get connection initial state from the global window object. const initialState = window?.JP_CONNECTION_INITIAL_STATE; -const { siteType = '' } = window?.videoPressEditorState || {}; - const debug = debugFactory( 'videopress:connection' ); /** @@ -20,11 +19,16 @@ const debug = debugFactory( 'videopress:connection' ); * @return {boolean} True if the user is connected, false otherwise. */ export function isUserConnected(): boolean { - if ( siteType === 'simple' ) { + if ( isSimpleSite() ) { debug( 'Simple site connected ✅' ); return true; } + if ( isAtomicSite() ) { + debug( 'Atomic site connected ✅' ); + return true; + } + if ( initialState?.connectionStatus?.isUserConnected ) { debug( 'Jetpack user is connected ✅' ); return true; diff --git a/projects/packages/videopress/webpack.config.js b/projects/packages/videopress/webpack.config.js index 1edf3bb3450b3..a2239e396d698 100644 --- a/projects/packages/videopress/webpack.config.js +++ b/projects/packages/videopress/webpack.config.js @@ -36,9 +36,7 @@ module.exports = [ }, node: false, plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), + ...jetpackWebpackConfig.StandardPlugins(), new CopyWebpackPlugin( { patterns: [ { diff --git a/projects/packages/waf/CHANGELOG.md b/projects/packages/waf/CHANGELOG.md index ea335f992a368..dd0ee6e8a2344 100644 --- a/projects/packages/waf/CHANGELOG.md +++ b/projects/packages/waf/CHANGELOG.md @@ -5,6 +5,22 @@ 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.22.1] - 2024-10-17 +### Fixed +- WAF: Improve backwards compatibility for sites running outdated bootstrap scripts via standalone mode. [#39812] + +## [0.22.0] - 2024-10-14 +### Added +- WAF: Add new properties to the WAF feature's REST API endpoint. [#39511] + +### Fixed +- Improve backwards compatibility for sites running in standalone mode. [#39652] +- WAF: Reduce amount of classes autoloaded during standalone mode execution. [#38944] + +## [0.21.0] - 2024-10-07 +### Added +- Firewall Runtime: Added support for rule files to specify body parser type. [#39516] + ## [0.20.1] - 2024-10-01 ### Deprecated - Added back public API as deprecated. [#39606] @@ -378,6 +394,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Core: do not ship .phpcs.dir.xml in production builds. +[0.22.1]: https://github.com/Automattic/jetpack-waf/compare/v0.22.0...v0.22.1 +[0.22.0]: https://github.com/Automattic/jetpack-waf/compare/v0.21.0...v0.22.0 +[0.21.0]: https://github.com/Automattic/jetpack-waf/compare/v0.20.1...v0.21.0 [0.20.1]: https://github.com/Automattic/jetpack-waf/compare/v0.20.0...v0.20.1 [0.20.0]: https://github.com/Automattic/jetpack-waf/compare/v0.19.0...v0.20.0 [0.19.0]: https://github.com/Automattic/jetpack-waf/compare/v0.18.5...v0.19.0 diff --git a/projects/packages/waf/changelog/add-waf-body-processor b/projects/packages/waf/changelog/add-waf-body-processor deleted file mode 100644 index df675355a4f53..0000000000000 --- a/projects/packages/waf/changelog/add-waf-body-processor +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: added - -Firewall Runtime: Added support for rule files to specify body parser type. diff --git a/projects/packages/waf/composer.json b/projects/packages/waf/composer.json index 1fc860d892eb8..5fd7008faf5b7 100644 --- a/projects/packages/waf/composer.json +++ b/projects/packages/waf/composer.json @@ -61,7 +61,7 @@ "link-template": "https://github.com/Automattic/jetpack-waf/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "0.20.x-dev" + "dev-trunk": "0.22.x-dev" } }, "config": { diff --git a/projects/packages/waf/src/class-compatibility.php b/projects/packages/waf/src/class-compatibility.php index 8f3e6d5634a15..495f71f989bfc 100644 --- a/projects/packages/waf/src/class-compatibility.php +++ b/projects/packages/waf/src/class-compatibility.php @@ -16,6 +16,46 @@ */ class Waf_Compatibility { + /** + * Returns the name for the IP allow list enabled/disabled option. + * + * @since 0.22.0 + * + * @return string + */ + private static function get_ip_allow_list_enabled_option_name() { + /** + * Patch: bootstrap script generated prior to 0.17.0 may have autoloaded Waf_Rules_Manager class during standalone mode execution. + * + * @see peb6dq-2HL-p2 + */ + if ( ! defined( 'Waf_Rules_Manager::IP_ALLOW_LIST_ENABLED_OPTION_NAME' ) ) { + return 'jetpack_waf_ip_allow_list_enabled'; + } + + return Waf_Rules_Manager::IP_ALLOW_LIST_ENABLED_OPTION_NAME; + } + + /** + * Returns the name for the IP block list enabled/disabled option. + * + * @since 0.22.0 + * + * @return string + */ + private static function get_ip_block_list_enabled_option_name() { + /** + * Patch: bootstrap script generated prior to 0.17.0 may have autoloaded Waf_Rules_Manager class during standalone mode execution. + * + * @see peb6dq-2HL-p2 + */ + if ( ! defined( 'Waf_Rules_Manager::IP_BLOCK_LIST_ENABLED_OPTION_NAME' ) ) { + return 'jetpack_waf_ip_block_list_enabled'; + } + + return Waf_Rules_Manager::IP_BLOCK_LIST_ENABLED_OPTION_NAME; + } + /** * Add compatibilty hooks * @@ -28,8 +68,8 @@ public static function add_compatibility_hooks() { add_filter( 'default_option_' . Waf_Initializer::NEEDS_UPDATE_OPTION_NAME, __CLASS__ . '::default_option_waf_needs_update', 10, 3 ); add_filter( 'default_option_' . Waf_Rules_Manager::IP_ALLOW_LIST_OPTION_NAME, __CLASS__ . '::default_option_waf_ip_allow_list', 10, 3 ); add_filter( 'option_' . Waf_Rules_Manager::IP_ALLOW_LIST_OPTION_NAME, __CLASS__ . '::filter_option_waf_ip_allow_list', 10, 1 ); - add_filter( 'default_option_' . Waf_Rules_Manager::IP_ALLOW_LIST_ENABLED_OPTION_NAME, __CLASS__ . '::default_option_waf_ip_allow_list_enabled', 10, 3 ); - add_filter( 'default_option_' . Waf_Rules_Manager::IP_BLOCK_LIST_ENABLED_OPTION_NAME, __CLASS__ . '::default_option_waf_ip_block_list_enabled', 10, 3 ); + add_filter( 'default_option_' . self::get_ip_allow_list_enabled_option_name(), __CLASS__ . '::default_option_waf_ip_allow_list_enabled', 10, 3 ); + add_filter( 'default_option_' . self::get_ip_block_list_enabled_option_name(), __CLASS__ . '::default_option_waf_ip_block_list_enabled', 10, 3 ); } /** diff --git a/projects/packages/waf/src/class-rest-controller.php b/projects/packages/waf/src/class-rest-controller.php index 8a036c11ad14f..6e7747e350a3c 100644 --- a/projects/packages/waf/src/class-rest-controller.php +++ b/projects/packages/waf/src/class-rest-controller.php @@ -90,7 +90,15 @@ public static function update_rules() { * @return WP_REST_Response */ public static function waf() { - return rest_ensure_response( Waf_Runner::get_config() ); + return rest_ensure_response( + array_merge( + Waf_Runner::get_config(), + array( + 'waf_supported' => Waf_Runner::is_supported_environment(), + 'automatic_rules_last_updated' => Waf_Stats::get_automatic_rules_last_updated(), + ) + ) + ); } /** diff --git a/projects/packages/waf/src/class-waf-cli.php b/projects/packages/waf/src/class-waf-cli.php index e7e2c01aac42c..1292302ed62c6 100644 --- a/projects/packages/waf/src/class-waf-cli.php +++ b/projects/packages/waf/src/class-waf-cli.php @@ -142,6 +142,7 @@ public function teardown() { */ public function generate_rules() { try { + Waf_Constants::define_entrypoint(); Waf_Rules_Manager::generate_automatic_rules(); Waf_Rules_Manager::generate_rules(); } catch ( \Exception $e ) { @@ -159,7 +160,7 @@ public function generate_rules() { sprintf( /* translators: %1$s is the name of the mode that was just switched to. */ __( 'Jetpack WAF rules successfully created to: "%1$s".', 'jetpack-waf' ), - Waf_Runner::get_waf_file_path( Waf_Rules_Manager::RULES_ENTRYPOINT_FILE ) + Waf_Runner::get_waf_file_path( JETPACK_WAF_ENTRYPOINT ) ) ); } diff --git a/projects/packages/waf/src/class-waf-constants.php b/projects/packages/waf/src/class-waf-constants.php index b4c368bb7d06d..bc0b04a343c62 100644 --- a/projects/packages/waf/src/class-waf-constants.php +++ b/projects/packages/waf/src/class-waf-constants.php @@ -22,6 +22,7 @@ public static function initialize_bootstrap_constants() { self::define_waf_directory(); self::define_wpconfig_path(); self::define_killswitch(); + self::define_entrypoint(); } /** @@ -80,6 +81,15 @@ public static function define_mode() { } } + /** + * Set the entrypoint definition if it has not been set. + */ + public static function define_entrypoint() { + if ( ! defined( 'JETPACK_WAF_ENTRYPOINT' ) ) { + define( 'JETPACK_WAF_ENTRYPOINT', 'rules/rules.php' ); + } + } + /** * Set the share data definition if it has not been set. * diff --git a/projects/packages/waf/src/class-waf-rules-manager.php b/projects/packages/waf/src/class-waf-rules-manager.php index 89bf220f1a5d2..5303ff353f258 100644 --- a/projects/packages/waf/src/class-waf-rules-manager.php +++ b/projects/packages/waf/src/class-waf-rules-manager.php @@ -39,10 +39,16 @@ class Waf_Rules_Manager { const IP_LISTS_ENABLED_OPTION_NAME = 'jetpack_waf_ip_list'; // Rule Files + const AUTOMATIC_RULES_FILE = '/rules/automatic-rules.php'; + const IP_ALLOW_RULES_FILE = '/rules/allow-ip.php'; + const IP_BLOCK_RULES_FILE = '/rules/block-ip.php'; + + /** + * Rules Entrypoint File + * + * @deprecated 0.22.0 Use JETPACK_WAF_ENTRYPOINT instead. + */ const RULES_ENTRYPOINT_FILE = '/rules/rules.php'; - const AUTOMATIC_RULES_FILE = '/rules/automatic-rules.php'; - const IP_ALLOW_RULES_FILE = '/rules/allow-ip.php'; - const IP_BLOCK_RULES_FILE = '/rules/block-ip.php'; /** * Whether automatic rules are enabled. @@ -221,9 +227,10 @@ private static function wrap_require( $required_file, $return_code = 'return;' ) public static function generate_rules() { global $wp_filesystem; Waf_Runner::initialize_filesystem(); + Waf_Constants::define_entrypoint(); $rules = "is_dir( dirname( $entrypoint_file_path ) ) ) { @@ -231,7 +238,7 @@ public static function generate_rules() { } // Ensure all potentially required rule files exist - $rule_files = array( self::RULES_ENTRYPOINT_FILE, self::AUTOMATIC_RULES_FILE, self::IP_ALLOW_RULES_FILE, self::IP_BLOCK_RULES_FILE ); + $rule_files = array( JETPACK_WAF_ENTRYPOINT, self::AUTOMATIC_RULES_FILE, self::IP_ALLOW_RULES_FILE, self::IP_BLOCK_RULES_FILE ); foreach ( $rule_files as $rule_file ) { $rule_file = Waf_Runner::get_waf_file_path( $rule_file ); if ( ! $wp_filesystem->is_file( $rule_file ) ) { diff --git a/projects/packages/waf/src/class-waf-runner.php b/projects/packages/waf/src/class-waf-runner.php index e15ce7a8290aa..c1a8eb1965057 100644 --- a/projects/packages/waf/src/class-waf-runner.php +++ b/projects/packages/waf/src/class-waf-runner.php @@ -31,6 +31,7 @@ public static function initialize() { return; } Waf_Constants::define_mode(); + Waf_Constants::define_entrypoint(); Waf_Constants::define_share_data(); if ( ! self::is_allowed_mode( JETPACK_WAF_MODE ) ) { @@ -256,7 +257,7 @@ public static function run() { $waf = new Waf_Runtime( new Waf_Transforms(), new Waf_Operators() ); // execute waf rules. - $rules_file_path = self::get_waf_file_path( Waf_Rules_Manager::RULES_ENTRYPOINT_FILE ); + $rules_file_path = self::get_waf_file_path( JETPACK_WAF_ENTRYPOINT ); if ( file_exists( $rules_file_path ) ) { // phpcs:ignore include $rules_file_path; @@ -366,14 +367,15 @@ public static function deactivate() { global $wp_filesystem; self::initialize_filesystem(); + Waf_Constants::define_entrypoint(); // If the rules file doesn't exist, there's nothing else to do. - if ( ! $wp_filesystem->exists( self::get_waf_file_path( Waf_Rules_Manager::RULES_ENTRYPOINT_FILE ) ) ) { + if ( ! $wp_filesystem->exists( self::get_waf_file_path( JETPACK_WAF_ENTRYPOINT ) ) ) { return; } // Empty the rules entrypoint file. - if ( ! $wp_filesystem->put_contents( self::get_waf_file_path( Waf_Rules_Manager::RULES_ENTRYPOINT_FILE ), "put_contents( self::get_waf_file_path( JETPACK_WAF_ENTRYPOINT ), "locate_autoloader_file(); $bootstrap_file = $this->get_bootstrap_file_path(); + $entrypoint = $this->get_entrypoint(); $mode_option = get_option( Waf_Runner::MODE_OPTION_NAME, false ); $share_data_option = get_option( Waf_Runner::SHARE_DATA_OPTION_NAME, false ); $share_debug_data_option = get_option( Waf_Runner::SHARE_DEBUG_DATA_OPTION_NAME, false ); @@ -154,6 +164,7 @@ public function generate() { . sprintf( "define( 'JETPACK_WAF_SHARE_DEBUG_DATA', %s );\n", var_export( $share_debug_data_option, true ) ) . sprintf( "define( 'JETPACK_WAF_DIR', %s );\n", var_export( JETPACK_WAF_DIR, true ) ) . sprintf( "define( 'JETPACK_WAF_WPCONFIG', %s );\n", var_export( JETPACK_WAF_WPCONFIG, true ) ) + . sprintf( "define( 'JETPACK_WAF_ENTRYPOINT', %s );\n", var_export( $entrypoint, true ) ) . 'require_once ' . var_export( $autoloader_file, true ) . ";\n" . "Automattic\Jetpack\Waf\Waf_Runner::initialize();\n"; // phpcs:enable diff --git a/projects/packages/waf/tests/php/integration/test-waf-activation.php b/projects/packages/waf/tests/php/integration/test-waf-activation.php index ea4717c2defc1..12ec13b57af95 100644 --- a/projects/packages/waf/tests/php/integration/test-waf-activation.php +++ b/projects/packages/waf/tests/php/integration/test-waf-activation.php @@ -6,6 +6,7 @@ */ use Automattic\Jetpack\Constants; +use Automattic\Jetpack\Waf\Waf_Constants; use Automattic\Jetpack\Waf\Waf_Initializer; use Automattic\Jetpack\Waf\Waf_Rules_Manager; use Automattic\Jetpack\Waf\Waf_Runner; @@ -75,6 +76,9 @@ public function return_invalid_filesystem_method() { * Test WAF activation. */ public function testActivation() { + // Ensure the JETPACK_WAF_ENTRYPOINT is defined. + Waf_Constants::define_entrypoint(); + // Mock the WPCOM request for retrieving the automatic rules. add_filter( 'pre_http_request', array( $this, 'return_sample_response' ) ); @@ -90,7 +94,7 @@ public function testActivation() { $this->assertSame( false, get_option( Waf_Rules_Manager::AUTOMATIC_RULES_ENABLED_OPTION_NAME ) ); // Ensure the rule files were generated. - $this->assertFileExists( Waf_Runner::get_waf_file_path( Waf_Rules_Manager::RULES_ENTRYPOINT_FILE ) ); + $this->assertFileExists( Waf_Runner::get_waf_file_path( JETPACK_WAF_ENTRYPOINT ) ); $this->assertFileExists( Waf_Runner::get_waf_file_path( Waf_Rules_Manager::AUTOMATIC_RULES_FILE ) ); $this->assertFileExists( Waf_Runner::get_waf_file_path( Waf_Rules_Manager::IP_ALLOW_RULES_FILE ) ); $this->assertFileExists( Waf_Runner::get_waf_file_path( Waf_Rules_Manager::IP_BLOCK_RULES_FILE ) ); @@ -106,6 +110,9 @@ public function testActivation() { * Test WAF deactivation. */ public function testDeactivation() { + // Ensure the JETPACK_WAF_ENTRYPOINT is defined. + Waf_Constants::define_entrypoint(); + $deactivated = Waf_Initializer::on_waf_deactivation(); // Ensure the WAF was deactivated successfully. @@ -116,7 +123,7 @@ public function testDeactivation() { $this->assertSame( false, get_option( Waf_Runner::MODE_OPTION_NAME ) ); // Ensure the rules entrypoint file was emptied. - $this->assertSame( "assertSame( " { [ '@automattic/jetpack-webpack-config/babel/preset', { + autoWpPolyfill: false, presetEnv: { corejs: require( 'core-js/package.json' ).version, modules: false, diff --git a/projects/packages/wp-js-data-sync/.phan/baseline.php b/projects/packages/wp-js-data-sync/.phan/baseline.php index 44ed7a44c447e..3dd793e76e9c2 100644 --- a/projects/packages/wp-js-data-sync/.phan/baseline.php +++ b/projects/packages/wp-js-data-sync/.phan/baseline.php @@ -14,17 +14,14 @@ // PhanImpossibleCondition : 1 occurrence // PhanPluginSimplifyExpressionBool : 1 occurrence // PhanRedundantCondition : 1 occurrence - // PhanTypeMismatchProperty : 1 occurrence - // PhanUndeclaredTypeParameter : 1 occurrence // PhanUnreferencedUseNormal : 1 occurrence // Currently, file_suppressions and directory_suppressions are the only supported suppressions 'file_suppressions' => [ 'src/class-data-sync-entry-adapter.php' => ['PhanParamTooFew'], 'src/class-ds-utils.php' => ['PhanImpossibleCondition', 'PhanRedundantCondition'], - 'src/class-registry.php' => ['PhanUndeclaredTypeParameter'], 'src/contracts/interface-lazy-entry.php' => ['PhanUnreferencedUseNormal'], - 'src/endpoints/class-action-endpoint.php' => ['PhanPluginDuplicateConditionalNullCoalescing', 'PhanTypeMismatchProperty'], + 'src/endpoints/class-action-endpoint.php' => ['PhanPluginDuplicateConditionalNullCoalescing'], 'src/endpoints/class-endpoint.php' => ['PhanPluginDuplicateConditionalNullCoalescing', 'PhanPluginSimplifyExpressionBool'], ], // 'directory_suppressions' => ['src/directory_name' => ['PhanIssueName1', 'PhanIssueName2']] can be manually added if needed. diff --git a/projects/packages/wp-js-data-sync/CHANGELOG.md b/projects/packages/wp-js-data-sync/CHANGELOG.md index aa3d459857fdd..ba6099b9696ea 100644 --- a/projects/packages/wp-js-data-sync/CHANGELOG.md +++ b/projects/packages/wp-js-data-sync/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.5.1] - 2024-10-10 +### Fixed +- Fix missing types in phpdoc comments. [#39648] + ## [0.5.0] - 2024-08-29 ### Changed - Updated package dependencies. [#39004] @@ -85,6 +89,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Jetpack Boost: Fix assoc_array schema validation. [#29611] +[0.5.1]: https://github.com/Automattic/jetpack-wp-js-data-sync/compare/v0.5.0...v0.5.1 [0.5.0]: https://github.com/Automattic/jetpack-wp-js-data-sync/compare/v0.4.5...v0.5.0 [0.4.5]: https://github.com/Automattic/jetpack-wp-js-data-sync/compare/v0.4.4...v0.4.5 [0.4.4]: https://github.com/Automattic/jetpack-wp-js-data-sync/compare/v0.4.3...v0.4.4 diff --git a/projects/packages/wp-js-data-sync/package.json b/projects/packages/wp-js-data-sync/package.json index d994018fab9c9..5f3db9c984cf1 100644 --- a/projects/packages/wp-js-data-sync/package.json +++ b/projects/packages/wp-js-data-sync/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-wp-js-data-sync", - "version": "0.5.0", + "version": "0.5.1", "description": "A package to setup REST API and script localization to pass data to a JavaScript client.", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/wp-js-data-sync/#readme", "bugs": { diff --git a/projects/packages/wp-js-data-sync/src/class-data-sync-entry-adapter.php b/projects/packages/wp-js-data-sync/src/class-data-sync-entry-adapter.php index aa69f112e68dc..f8db587d6e5b4 100644 --- a/projects/packages/wp-js-data-sync/src/class-data-sync-entry-adapter.php +++ b/projects/packages/wp-js-data-sync/src/class-data-sync-entry-adapter.php @@ -42,8 +42,8 @@ final class Data_Sync_Entry_Adapter implements Data_Sync_Entry { * The constructor accepts any entry that subscribes to at least "Entry_Can_Get", but can also * subscribe to any of the other Entry_Can_* interfaces. * - * @param $entry Entry_Can_Get - The data sync entry. - * @param $schema Parser - The schema for the data sync entry. + * @param Entry_Can_Get $entry - The data sync entry. + * @param Parser $schema - The schema for the data sync entry. */ public function __construct( $entry, $schema ) { $this->entry = $entry; diff --git a/projects/packages/wp-js-data-sync/src/class-data-sync.php b/projects/packages/wp-js-data-sync/src/class-data-sync.php index 02360ab803fbf..4171488575847 100644 --- a/projects/packages/wp-js-data-sync/src/class-data-sync.php +++ b/projects/packages/wp-js-data-sync/src/class-data-sync.php @@ -70,7 +70,7 @@ final class Data_Sync { - const PACKAGE_VERSION = '0.5.0'; + const PACKAGE_VERSION = '0.5.1'; /** * @var Registry diff --git a/projects/packages/wp-js-data-sync/src/class-registry.php b/projects/packages/wp-js-data-sync/src/class-registry.php index ca750b34c630e..6c4036a9fa012 100644 --- a/projects/packages/wp-js-data-sync/src/class-registry.php +++ b/projects/packages/wp-js-data-sync/src/class-registry.php @@ -9,6 +9,7 @@ namespace Automattic\Jetpack\WP_JS_Data_Sync; +use Automattic\Jetpack\Schema\Schema_Parser; use Automattic\Jetpack\WP_JS_Data_Sync\Contracts\Data_Sync_Entry; use Automattic\Jetpack\WP_JS_Data_Sync\Endpoints\Action_Endpoint; use Automattic\Jetpack\WP_JS_Data_Sync\Endpoints\Endpoint; @@ -42,7 +43,7 @@ class Registry { * There can be multiple registries, reference them by namepsace. * For example "jetpack_boost". * - * @param $namespace string The namespace for this registry instance. + * @param string $namespace The namespace for this registry instance. */ public function __construct( $namespace ) { $this->namespace = $namespace; @@ -51,7 +52,7 @@ public function __construct( $namespace ) { /** * Sanitize a key. * - * @param $key string - Keys should only include alphanumeric characters and underscores. + * @param string $key - Keys should only include alphanumeric characters and underscores. * * @return string * @throws \Exception In debug mode, if the key is invalid. @@ -71,7 +72,7 @@ private function sanitize_key( $key ) { /** * Sanitize a key for use in a URL. * - * @param $key - Keys should only include alphanumeric characters and underscores. + * @param string $key - Keys should only include alphanumeric characters and underscores. * * @return string */ @@ -82,8 +83,8 @@ private function sanitize_url_key( $key ) { /** * Register a new entry and add it to the registry. * - * @param $key string - The name of the entry. For example `widget_status`. - * @param $entry Data_Sync_Entry + * @param string $key - The name of the entry. For example `widget_status`. + * @param Data_Sync_Entry $entry * * @return Data_Sync_Entry */ @@ -103,10 +104,10 @@ public function register( $key, $entry ) { /** * Register an action endpoint. * - * @param string $key The base key for the endpoint. - * @param string $action_name The name of the action. - * @param Schema $request_schema The schema for the action's request body. - * @param mixed $action_class The class handling the action logic. + * @param string $key The base key for the endpoint. + * @param string $action_name The name of the action. + * @param Schema_Parser $request_schema The schema for the action's request body. + * @param mixed $action_class The class handling the action logic. */ public function register_action( $key, $action_name, $request_schema, $action_class ) { // Create and store the action endpoint instance @@ -167,7 +168,7 @@ public function all() { /** * Get the endpoint for a given key. * - * @param $key string - The key for the endpoint. + * @param string $key - The key for the endpoint. * * @return Endpoint|false */ @@ -181,7 +182,7 @@ public function get_endpoint( $key ) { /** * Get the entry for a given key. * - * @param $key string - The key for the entry. + * @param string $key - The key for the entry. * * @return Data_Sync_Entry|false */ diff --git a/projects/packages/wp-js-data-sync/src/endpoints/class-action-endpoint.php b/projects/packages/wp-js-data-sync/src/endpoints/class-action-endpoint.php index a73752224c8cf..0d33274fd817a 100644 --- a/projects/packages/wp-js-data-sync/src/endpoints/class-action-endpoint.php +++ b/projects/packages/wp-js-data-sync/src/endpoints/class-action-endpoint.php @@ -41,11 +41,11 @@ class Action_Endpoint { /** * This class handles endpoints for DataSync actions. * - * @param $namespace - * @param $key - * @param $action_name - * @param $request_schema - * @param $action_class + * @param string $namespace + * @param string $key + * @param string $action_name + * @param Schema_Parser $request_schema + * @param Data_Sync_Action $action_class */ public function __construct( $namespace, $key, $action_name, $request_schema, $action_class ) { $this->action_class = $action_class; diff --git a/projects/packages/yoast-promo/changelog/add-dependency-extraction-auto-polyfill b/projects/packages/yoast-promo/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/packages/yoast-promo/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/js-packages/licensing/changelog/renovate-wordpress-monorepo b/projects/packages/yoast-promo/changelog/renovate-wordpress-monorepo#14 similarity index 100% rename from projects/js-packages/licensing/changelog/renovate-wordpress-monorepo rename to projects/packages/yoast-promo/changelog/renovate-wordpress-monorepo#14 diff --git a/projects/packages/yoast-promo/package.json b/projects/packages/yoast-promo/package.json index ded14c86d338d..1441f4f0b0b35 100644 --- a/projects/packages/yoast-promo/package.json +++ b/projects/packages/yoast-promo/package.json @@ -24,12 +24,12 @@ "dependencies": { "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-shared-extension-utils": "workspace:*", - "@wordpress/components": "28.8.4", - "@wordpress/data": "10.8.3", - "@wordpress/edit-post": "8.8.6", - "@wordpress/element": "6.8.1", - "@wordpress/i18n": "5.8.2", - "@wordpress/plugins": "7.8.4", + "@wordpress/components": "28.9.0", + "@wordpress/data": "10.9.0", + "@wordpress/edit-post": "8.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/i18n": "5.9.0", + "@wordpress/plugins": "7.9.0", "gridicons": "3.4.1", "react": "18.3.1", "react-dom": "18.3.1" @@ -39,7 +39,7 @@ "@babel/core": "7.24.7", "@babel/preset-env": "7.24.7", "@babel/runtime": "7.24.7", - "@wordpress/browserslist-config": "6.8.1", + "@wordpress/browserslist-config": "6.9.0", "sass": "1.64.1", "sass-loader": "12.4.0", "webpack": "5.94.0", diff --git a/projects/packages/yoast-promo/webpack.config.js b/projects/packages/yoast-promo/webpack.config.js index 2b01e463ae2fe..46d9c81d148df 100644 --- a/projects/packages/yoast-promo/webpack.config.js +++ b/projects/packages/yoast-promo/webpack.config.js @@ -45,11 +45,7 @@ module.exports = [ optimization: { ...jetpackWebpackConfig.optimization, }, - plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), - ], + plugins: [ ...jetpackWebpackConfig.StandardPlugins() ], resolve: { ...jetpackWebpackConfig.resolve, }, diff --git a/projects/plugins/automattic-for-agencies-client/changelog/add-dependency-extraction-auto-polyfill b/projects/plugins/automattic-for-agencies-client/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/plugins/automattic-for-agencies-client/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/plugins/automattic-for-agencies-client/changelog/fix-sync-filter-null-array b/projects/plugins/automattic-for-agencies-client/changelog/fix-sync-filter-null-array new file mode 100644 index 0000000000000..3f56c90b3a7bf --- /dev/null +++ b/projects/plugins/automattic-for-agencies-client/changelog/fix-sync-filter-null-array @@ -0,0 +1,5 @@ +Significance: patch +Type: fixed +Comment: Sync: update filter parameter to avoid conflicts with other plugins. + + diff --git a/projects/plugins/protect/changelog/add-protect-firewall-stat-cards#2 b/projects/plugins/automattic-for-agencies-client/changelog/prerelease#17 similarity index 100% rename from projects/plugins/protect/changelog/add-protect-firewall-stat-cards#2 rename to projects/plugins/automattic-for-agencies-client/changelog/prerelease#17 diff --git a/projects/js-packages/partner-coupon/changelog/renovate-wordpress-monorepo b/projects/plugins/automattic-for-agencies-client/changelog/renovate-lock-file-maintenance#4 similarity index 100% rename from projects/js-packages/partner-coupon/changelog/renovate-wordpress-monorepo rename to projects/plugins/automattic-for-agencies-client/changelog/renovate-lock-file-maintenance#4 diff --git a/projects/plugins/protect/changelog/prerelease b/projects/plugins/automattic-for-agencies-client/changelog/renovate-lock-file-maintenance#5 similarity index 100% rename from projects/plugins/protect/changelog/prerelease rename to projects/plugins/automattic-for-agencies-client/changelog/renovate-lock-file-maintenance#5 diff --git a/projects/js-packages/publicize-components/changelog/renovate-wordpress-monorepo b/projects/plugins/automattic-for-agencies-client/changelog/renovate-wordpress-monorepo#6 similarity index 100% rename from projects/js-packages/publicize-components/changelog/renovate-wordpress-monorepo rename to projects/plugins/automattic-for-agencies-client/changelog/renovate-wordpress-monorepo#6 diff --git a/projects/plugins/automattic-for-agencies-client/composer.lock b/projects/plugins/automattic-for-agencies-client/composer.lock index 5c806fc12a3d3..660657d92013b 100644 --- a/projects/plugins/automattic-for-agencies-client/composer.lock +++ b/projects/plugins/automattic-for-agencies-client/composer.lock @@ -865,7 +865,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9e141274ba174502fd591a8edc315c210861155a" + "reference": "ac7496c921263d9ce7eaa77cac67d945c4f30fea" }, "require": { "automattic/jetpack-connection": "@dev", @@ -898,7 +898,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "3.13.x-dev" + "dev-trunk": "3.14.x-dev" }, "dependencies": { "test-only": [ @@ -938,20 +938,20 @@ "packages-dev": [ { "name": "antecedent/patchwork", - "version": "2.1.28", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/antecedent/patchwork.git", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d" + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antecedent/patchwork/zipball/6b30aff81ebadf0f2feb9268d3e08385cebcc08d", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d", + "url": "https://api.github.com/repos/antecedent/patchwork/zipball/b07d4fb37c3c723c8755122160c089e077d5de65", + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=7.1.0" }, "require-dev": { "phpunit/phpunit": ">=4" @@ -980,9 +980,9 @@ ], "support": { "issues": "https://github.com/antecedent/patchwork/issues", - "source": "https://github.com/antecedent/patchwork/tree/2.1.28" + "source": "https://github.com/antecedent/patchwork/tree/2.2.0" }, - "time": "2024-02-06T09:26:11+00:00" + "time": "2024-09-27T16:59:55+00:00" }, { "name": "automattic/jetpack-changelogger", @@ -1439,16 +1439,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -1491,9 +1491,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -1934,16 +1934,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -1958,7 +1958,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -2017,7 +2017,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -2033,7 +2033,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -2090,7 +2090,7 @@ }, { "name": "roots/wordpress", - "version": "6.6.1", + "version": "6.6.2", "source": { "type": "git", "url": "https://github.com/roots/wordpress.git", @@ -2121,7 +2121,7 @@ ], "support": { "issues": "https://github.com/roots/wordpress/issues", - "source": "https://github.com/roots/wordpress/tree/6.6.1" + "source": "https://github.com/roots/wordpress/tree/6.6.2" }, "funding": [ { @@ -2204,22 +2204,22 @@ }, { "name": "roots/wordpress-no-content", - "version": "6.6.1", + "version": "6.6.2", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress.git", - "reference": "6.6.1" + "reference": "6.6.2" }, "dist": { "type": "zip", - "url": "https://downloads.wordpress.org/release/wordpress-6.6.1-no-content.zip", - "shasum": "954aa560a66112cd999aa9d9519da5f964e6692a" + "url": "https://downloads.wordpress.org/release/wordpress-6.6.2-no-content.zip", + "shasum": "b496b8a9bb3c6d20a781344cbe3e189f7fd83871" }, "require": { - "php": ">= 7.0.0" + "php": ">= 7.2.24" }, "provide": { - "wordpress/core-implementation": "6.6.1" + "wordpress/core-implementation": "6.6.2" }, "suggest": { "ext-curl": "Performs remote request operations.", @@ -2270,7 +2270,7 @@ "type": "other" } ], - "time": "2024-07-23T15:25:13+00:00" + "time": "2024-09-10T15:25:31+00:00" }, { "name": "sebastian/cli-parser", @@ -3237,16 +3237,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -3310,7 +3310,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -3326,7 +3326,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3715,16 +3715,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -3756,7 +3756,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -3772,7 +3772,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -3859,16 +3859,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -3926,7 +3926,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -3942,7 +3942,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/automattic-for-agencies-client/package.json b/projects/plugins/automattic-for-agencies-client/package.json index 025837638d0b4..ea9ffee8a05b4 100644 --- a/projects/plugins/automattic-for-agencies-client/package.json +++ b/projects/plugins/automattic-for-agencies-client/package.json @@ -31,10 +31,10 @@ "@automattic/jetpack-base-styles": "workspace:*", "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-connection": "workspace:*", - "@wordpress/data": "10.8.3", - "@wordpress/date": "5.8.2", - "@wordpress/element": "6.8.1", - "@wordpress/i18n": "5.8.2", + "@wordpress/data": "10.9.0", + "@wordpress/date": "5.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/i18n": "5.9.0", "clsx": "2.1.1", "react": "18.3.1", "react-dom": "18.3.1" @@ -46,7 +46,7 @@ "@babel/runtime": "7.24.7", "@testing-library/dom": "10.4.0", "@testing-library/react": "16.0.1", - "@wordpress/browserslist-config": "6.8.1", + "@wordpress/browserslist-config": "6.9.0", "babel-jest": "29.4.3", "concurrently": "7.6.0", "jest": "29.7.0", diff --git a/projects/plugins/automattic-for-agencies-client/webpack.config.js b/projects/plugins/automattic-for-agencies-client/webpack.config.js index 68e5568c14b8d..b91ff5ec8de20 100644 --- a/projects/plugins/automattic-for-agencies-client/webpack.config.js +++ b/projects/plugins/automattic-for-agencies-client/webpack.config.js @@ -19,11 +19,7 @@ module.exports = [ ...jetpackWebpackConfig.resolve, }, node: false, - plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), - ], + plugins: [ ...jetpackWebpackConfig.StandardPlugins() ], module: { strictExportPresence: true, rules: [ diff --git a/projects/plugins/backup/changelog/add-dependency-extraction-auto-polyfill b/projects/plugins/backup/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/plugins/backup/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/plugins/backup/changelog/fix-sync-filter-null-array b/projects/plugins/backup/changelog/fix-sync-filter-null-array new file mode 100644 index 0000000000000..3f56c90b3a7bf --- /dev/null +++ b/projects/plugins/backup/changelog/fix-sync-filter-null-array @@ -0,0 +1,5 @@ +Significance: patch +Type: fixed +Comment: Sync: update filter parameter to avoid conflicts with other plugins. + + diff --git a/projects/plugins/protect/changelog/prerelease#7 b/projects/plugins/backup/changelog/prerelease#7 similarity index 100% rename from projects/plugins/protect/changelog/prerelease#7 rename to projects/plugins/backup/changelog/prerelease#7 diff --git a/projects/js-packages/shared-extension-utils/changelog/renovate-wordpress-monorepo b/projects/plugins/backup/changelog/renovate-lock-file-maintenance#2 similarity index 100% rename from projects/js-packages/shared-extension-utils/changelog/renovate-wordpress-monorepo rename to projects/plugins/backup/changelog/renovate-lock-file-maintenance#2 diff --git a/projects/plugins/protect/changelog/prerelease#2 b/projects/plugins/backup/changelog/renovate-lock-file-maintenance#3 similarity index 100% rename from projects/plugins/protect/changelog/prerelease#2 rename to projects/plugins/backup/changelog/renovate-lock-file-maintenance#3 diff --git a/projects/plugins/backup/changelog/revert-admin_notice_37051 b/projects/plugins/backup/changelog/revert-admin_notice_37051 new file mode 100644 index 0000000000000..772077f2095b5 --- /dev/null +++ b/projects/plugins/backup/changelog/revert-admin_notice_37051 @@ -0,0 +1,4 @@ +Significance: patch +Type: fixed + +General: ensure the notice displayed when running an old version of WordPress can always be displayed without errors. diff --git a/projects/plugins/backup/composer.lock b/projects/plugins/backup/composer.lock index 4d8c348de2caa..619c9f5171b6c 100644 --- a/projects/plugins/backup/composer.lock +++ b/projects/plugins/backup/composer.lock @@ -1743,7 +1743,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9e141274ba174502fd591a8edc315c210861155a" + "reference": "ac7496c921263d9ce7eaa77cac67d945c4f30fea" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1776,7 +1776,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "3.13.x-dev" + "dev-trunk": "3.14.x-dev" }, "dependencies": { "test-only": [ @@ -2020,16 +2020,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -2072,9 +2072,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -2515,16 +2515,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -2539,7 +2539,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -2598,7 +2598,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -2614,7 +2614,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -3634,16 +3634,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -3707,7 +3707,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -3723,7 +3723,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4112,16 +4112,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -4153,7 +4153,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -4169,7 +4169,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -4256,16 +4256,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -4323,7 +4323,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -4339,7 +4339,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/backup/jetpack-backup.php b/projects/plugins/backup/jetpack-backup.php index 9af5e3c19b0a1..b0932ee566591 100644 --- a/projects/plugins/backup/jetpack-backup.php +++ b/projects/plugins/backup/jetpack-backup.php @@ -71,13 +71,15 @@ function jetpack_backup_requirements_check() { add_action( 'admin_notices', function () use ( $jetpack_backup_meets_requirements ) { - wp_admin_notice( - esc_html( $jetpack_backup_meets_requirements->get_error_message() ), - array( - 'type' => 'error', - 'dismissible' => true, - ) - ); + ?> +
      +

      + get_error_message() ); + ?> +

      +
      + ['PhanTypeMismatchArgumentNullable', 'PhanTypeMismatchArgumentNullableInternal', 'PhanTypeMismatchDefault', 'PhanUndeclaredClassMethod', 'PhanUndeclaredClassReference', 'PhanUndeclaredConstant'], 'app/lib/minify/functions-service.php' => ['PhanImpossibleTypeComparison', 'PhanPluginDuplicateConditionalNullCoalescing', 'PhanPluginNeverReturnFunction', 'PhanPluginUseReturnValueInternalKnown', 'PhanPossiblyUndeclaredVariable', 'PhanRedundantCondition', 'PhanTypeMismatchArgumentInternal', 'PhanTypeMismatchArgumentNullableInternal'], 'app/modules/Modules_Setup.php' => ['PhanTypeMismatchPropertyDefault'], - 'app/modules/image-guide/Image_Guide.php' => ['PhanPluginSimplifyExpressionBool'], 'app/modules/image-guide/Image_Guide_Proxy.php' => ['PhanPluginDuplicateConditionalNullCoalescing'], 'app/modules/image-size-analysis/data-sync/Image_Size_Analysis_Action_Fix.php' => ['PhanPossiblyUndeclaredVariable', 'PhanRedundantCondition'], 'app/modules/optimizations/critical-css/CSS_Proxy.php' => ['PhanPluginDuplicateConditionalNullCoalescing'], diff --git a/projects/plugins/boost/CHANGELOG.md b/projects/plugins/boost/CHANGELOG.md index 998b536cfe7ae..3069300457b16 100644 --- a/projects/plugins/boost/CHANGELOG.md +++ b/projects/plugins/boost/CHANGELOG.md @@ -5,6 +5,16 @@ 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). +## [3.5.2] - 2024-10-15 +### Changed +- Deferred JS: Exclude all scripts produced by a shortcode. [#39616] +- General: Sync Boost's Getting Started page with My Jetpack's version. [#39130] +- General: Update minimum required WordPress version to 6.5 in main plugin file. Previous release only changed plugin readme. [#39719] + +### Fixed +- Image CDN: URL encode image path parts for RSS feed compatibility [#39560] +- Image Guide: Improve check for Jetpack Image CDN URLs [#39635] + ## [3.5.1] - 2024-09-26 ### Changed - Support: Increased minumum required WordPress version to 6.5 [#39540] @@ -514,6 +524,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - First public alpha release +[3.5.2]: https://github.com/Automattic/jetpack-boost-production/compare/3.5.1...3.5.2 [3.5.1]: https://github.com/Automattic/jetpack-boost-production/compare/3.5.0...3.5.1 [3.5.0]: https://github.com/Automattic/jetpack-boost-production/compare/3.4.9...3.5.0 [3.4.9]: https://github.com/Automattic/jetpack-boost-production/compare/3.4.8...3.4.9 diff --git a/projects/plugins/boost/app/admin/class-config.php b/projects/plugins/boost/app/admin/class-config.php index 0bbad13c953fe..6930c86e0db70 100644 --- a/projects/plugins/boost/app/admin/class-config.php +++ b/projects/plugins/boost/app/admin/class-config.php @@ -4,7 +4,6 @@ use Automattic\Jetpack\Status; use Automattic\Jetpack\Status\Host; - /** * Handle the configuration constants. * diff --git a/projects/plugins/boost/app/assets/src/js/features/boost-pricing-table/boost-pricing-table.tsx b/projects/plugins/boost/app/assets/src/js/features/boost-pricing-table/boost-pricing-table.tsx index 1d9092d4c3c6c..0c35668713d65 100644 --- a/projects/plugins/boost/app/assets/src/js/features/boost-pricing-table/boost-pricing-table.tsx +++ b/projects/plugins/boost/app/assets/src/js/features/boost-pricing-table/boost-pricing-table.tsx @@ -1,23 +1,57 @@ -import { type PricingSchema, usePricing } from '$lib/stores/pricing'; +import { usePricing } from '$lib/stores/pricing'; +import { useProduct } from '$lib/stores/product'; import { Button, Notice, PricingTable, PricingTableColumn, PricingTableHeader, + PricingTableItem, ProductPrice, } from '@automattic/jetpack-components'; -import { boostFeatureList } from './lib/features'; import { __ } from '@wordpress/i18n'; type BoostPricingTableProps = { - pricing: PricingSchema; onPremiumCTA: () => void; onFreeCTA: () => void; chosenFreePlan: boolean; chosenPaidPlan: boolean; }; +type BoostPricingTablesFeaturesListProps = { + feature: { + included: boolean; + description?: string; + info?: { + title?: string; + content: string; + class?: string; + }; + }; +}; + +const BoostPricingTablesFeaturesList = ( { feature }: BoostPricingTablesFeaturesListProps ) => { + const { description, included, info } = feature; + + let labelText; + if ( description ) { + labelText = { description }; + } + + return ( + : null + } + tooltipClassName={ info?.class } + /> + ); +}; + export const BoostPricingTable = ( { onPremiumCTA, onFreeCTA, @@ -25,6 +59,7 @@ export const BoostPricingTable = ( { chosenPaidPlan, }: BoostPricingTableProps ) => { const pricing = usePricing(); + const product = useProduct(); // If the first year discount ends, we want to show the default label. const legend = pricing?.isIntroductoryOffer @@ -32,6 +67,7 @@ export const BoostPricingTable = ( { : undefined; const isDiscounted = pricing?.priceBefore && pricing?.priceBefore > pricing?.priceAfter; + const featuresByTier = product?.features_by_tier ?? []; return ( <> @@ -49,7 +85,15 @@ export const BoostPricingTable = ( { feature.description ) } + items={ featuresByTier.map( ( { name, info } ) => ( { + name, + tooltipTitle: info?.title, + tooltipInfo: info?.content ? ( + // eslint-disable-next-line react/no-danger +
      + ) : null, + tooltipPlacement: 'bottom-start', + } ) ) } > { [ @@ -70,7 +114,12 @@ export const BoostPricingTable = ( { { __( 'Get Boost', 'jetpack-boost' ) } , - ...boostFeatureList.map( feature => feature.premium ), + ...featuresByTier.map( ( tierFeature, mapIndex ) => ( + + ) ), ] } @@ -92,7 +141,9 @@ export const BoostPricingTable = ( { { __( 'Start for free', 'jetpack-boost' ) } , - ...boostFeatureList.map( feature => feature.free ), + ...featuresByTier.map( ( { tiers }, index ) => ( + + ) ), ] } diff --git a/projects/plugins/boost/app/assets/src/js/features/boost-pricing-table/lib/features.tsx b/projects/plugins/boost/app/assets/src/js/features/boost-pricing-table/lib/features.tsx deleted file mode 100644 index 0c6b056cd4ce2..0000000000000 --- a/projects/plugins/boost/app/assets/src/js/features/boost-pricing-table/lib/features.tsx +++ /dev/null @@ -1,233 +0,0 @@ -import { PricingTable, PricingTableItem, getRedirectUrl } from '@automattic/jetpack-components'; -import { createInterpolateElement } from '@wordpress/element'; -import { __ } from '@wordpress/i18n'; -import React, { ReactElement } from 'react'; - -type PricingTableItemProps = React.ComponentProps< typeof PricingTableItem >; -type PricingTableProps = React.ComponentProps< typeof PricingTable >; - -const cssOptimizationContext = __( - 'Move important styling information to the start of the page, which helps pages display your content sooner, so your users don’t have to wait for the entire page to load. Commonly referred to as Critical CSS.', - 'jetpack-boost' -); - -const manuallyUpdatedContext = ( - - { __( - 'To enhance the speed of your site, with this plan you will need to optimize CSS by using the Manual Critical CSS generation feature whenever you:', - 'jetpack-boost' - ) } -
      -
      -
        -
      • { __( 'Make theme changes.', 'jetpack-boost' ) }
      • -
      • { __( 'Write a new post/page.', 'jetpack-boost' ) }
      • -
      • { __( 'Edit a post/page.', 'jetpack-boost' ) }
      • -
      • - { __( - 'Activate, deactivate, or update plugins that impact your site layout or HTML structure.', - 'jetpack-boost' - ) } -
      • -
      • - { __( - 'Change settings of plugins that impact your site layout or HTML structure.', - 'jetpack-boost' - ) } -
      • -
      • - { __( - 'Upgrade your WordPress version if the new release includes core CSS changes.', - 'jetpack-boost' - ) } -
      • -
      -
      -); - -const automaticallyUpdatedContext = ( - - { __( - 'It’s essential to regenerate Critical CSS to optimize your site speed whenever your HTML or CSS structure changes. Being on top of this can be tedious and time-consuming.', - 'jetpack-boost' - ) } -
      -
      - { __( - 'Boost’s cloud service can automatically detect when your site needs the Critical CSS regenerated, and perform this function behind the scenes without requiring you to monitor it manually.', - 'jetpack-boost' - ) } -
      -); - -const pageCacheContext = __( - 'Page caching speeds up load times by storing a copy of each web page on the first visit, allowing subsequent visits to be served instantly. This reduces server load and improves user experience by delivering content faster, without waiting for the page to be generated again.', - 'jetpack-boost' -); - -const imageCdnContext = __( - `Deliver images from Jetpack's Content Delivery Network. Automatically resizes your images to an appropriate size, converts them to modern efficient formats like WebP, and serves them from a worldwide network of servers.`, - 'jetpack-boost' -); - -const isaContext = __( - "Scan your site for images that aren't properly sized for the device they're being viewed on.", - 'jetpack-boost' -); - -const performanceHistoryContext = __( - 'Get access to your historical performance scores and see advanced Core Web Vitals data.', - 'jetpack-boost' -); - -const deferJSContextTemplate = __( - 'Run non-essential JavaScript after the page has loaded so that styles and images can load more quickly. Read more on web.dev.', - 'jetpack-boost' -); - -const deferJSContext = createInterpolateElement( deferJSContextTemplate, { - // eslint-disable-next-line jsx-a11y/anchor-has-content - link: , -} ); - -const imageGuideContext = __( - 'Discover and fix images with a suboptimal resolution, aspect ratio, or file size, improving user experience and page speed.', - 'jetpack-boost' -); - -const supportContext = __( - `Paid customers get dedicated email support from our world-class Happiness Engineers to help with any issue.

      All other questions are handled by our team as quickly as we are able to go through the WordPress support forum.`, - 'jetpack-boost' -); - -const concatenateContext = __( - 'Boost your website performance by merging and compressing JavaScript and CSS files, reducing site loading time and number of requests.', - 'jetpack-boost' -); - -type FeatureItem = { - description: PricingTableProps[ 'items' ][ number ]; - free: ReactElement< PricingTableItemProps >; - premium: ReactElement< PricingTableItemProps >; -}; - -export const boostFeatureList: FeatureItem[] = [ - { - description: { - name: __( 'Auto CSS Optimization', 'jetpack-boost' ), - tooltipInfo: cssOptimizationContext, - tooltipPlacement: 'bottom-start', - }, - free: ( - - ), - premium: ( - { __( 'Included', 'jetpack-boost' ) } } - tooltipTitle={ __( 'Automatic Critical CSS regeneration', 'jetpack-boost' ) } - tooltipInfo={ automaticallyUpdatedContext } - tooltipClassName="wide-tooltip" - /> - ), - }, - { - description: { - name: __( 'Automatic image size analysis', 'jetpack-boost' ), - tooltipInfo: isaContext, - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Historical performance scores', 'jetpack-boost' ), - tooltipInfo: performanceHistoryContext, - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Dedicated email support', 'jetpack-boost' ), - tooltipInfo: , - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Page Cache', 'jetpack-boost' ), - tooltipInfo: pageCacheContext, - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Image CDN Quality Settings', 'jetpack-boost' ), - tooltipInfo: __( 'Fine-tune image quality settings to your liking.', 'jetpack-boost' ), - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Image CDN Auto-Resize Lazy Images', 'jetpack-boost' ), - tooltipInfo: __( - 'Optimizes lazy-loaded images by dynamically serving perfectly sized images for each device.', - 'jetpack-boost' - ), - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Image CDN', 'jetpack-boost' ), - tooltipInfo: imageCdnContext, - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Image guide', 'jetpack-boost' ), - tooltipInfo: imageGuideContext, - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Defer non-essential JavaScript', 'jetpack-boost' ), - tooltipInfo: deferJSContext, - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, - { - description: { - name: __( 'Concatenate JS and CSS', 'jetpack-boost' ), - tooltipInfo: concatenateContext, - tooltipPlacement: 'bottom-start', - }, - free: , - premium: , - }, -]; diff --git a/projects/plugins/boost/app/assets/src/js/lib/stores/product.ts b/projects/plugins/boost/app/assets/src/js/lib/stores/product.ts new file mode 100644 index 0000000000000..c46e31854640b --- /dev/null +++ b/projects/plugins/boost/app/assets/src/js/lib/stores/product.ts @@ -0,0 +1,49 @@ +import { useDataSync } from '@automattic/jetpack-react-data-sync-client'; +import { z } from 'zod'; + +const ProductSchema = z + .object( { + tiers: z.array( z.string() ), + features_by_tier: z.array( + z.object( { + name: z.string(), + info: z.object( { + title: z.string().optional(), + content: z.string(), + } ), + tiers: z.object( { + free: z.object( { + included: z.boolean(), + description: z.string().optional(), + info: z + .object( { + title: z.string().optional(), + content: z.string(), + class: z.string().optional(), + } ) + .optional(), + } ), + upgraded: z.object( { + included: z.boolean(), + description: z.string().optional(), + info: z + .object( { + title: z.string().optional(), + content: z.string(), + class: z.string().optional(), + } ) + .optional(), + } ), + } ), + } ) + ), + } ) + .nullable(); + +export type ProductSchema = z.infer< typeof ProductSchema >; + +export const useProduct = () => { + const [ { data } ] = useDataSync( 'jetpack_boost_ds', 'product', ProductSchema ); + + return data; +}; diff --git a/projects/plugins/boost/app/assets/src/js/pages/getting-started/getting-started.tsx b/projects/plugins/boost/app/assets/src/js/pages/getting-started/getting-started.tsx index acf2a5611353e..ed69d93e3c63c 100644 --- a/projects/plugins/boost/app/assets/src/js/pages/getting-started/getting-started.tsx +++ b/projects/plugins/boost/app/assets/src/js/pages/getting-started/getting-started.tsx @@ -10,7 +10,6 @@ import styles from './getting-started.module.scss'; import { useGettingStarted } from '$lib/stores/getting-started'; import { useNavigate } from 'react-router-dom'; import { __ } from '@wordpress/i18n'; -import { usePricing } from '$lib/stores/pricing'; import { usePremiumFeatures } from '$lib/stores/premium-features'; import { useSingleModuleState } from '$features/module/lib/stores'; @@ -23,7 +22,6 @@ const GettingStarted: React.FC = () => { site: { domain }, } = Jetpack_Boost; - const pricing = usePricing(); const premiumFeatures = usePremiumFeatures(); const isPremium = premiumFeatures.length > 0; @@ -92,7 +90,6 @@ const GettingStarted: React.FC = () => {
      initialize( 'premium' ) } onFreeCTA={ () => initialize( 'free' ) } chosenFreePlan={ selectedPlan === 'free' } diff --git a/projects/plugins/boost/app/features/setup-prompt/Setup_Prompt.php b/projects/plugins/boost/app/features/setup-prompt/Setup_Prompt.php deleted file mode 100644 index c7c02c6961c25..0000000000000 --- a/projects/plugins/boost/app/features/setup-prompt/Setup_Prompt.php +++ /dev/null @@ -1,61 +0,0 @@ -get() === false || $this->is_banner_dismissed() ) { - return; - } - - add_action( 'admin_notices', array( $this, 'connection_prompt' ) ); - add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) ); - add_action( 'admin_footer', array( $this, 'add_dismiss_script' ) ); - } - - public function enqueue_scripts() { - wp_enqueue_style( 'jetpack-boost-admin-banner', plugins_url( '../../assets/dist/admin-banner.css', __FILE__ ), array(), JETPACK_BOOST_VERSION ); - } - - public function connection_prompt() { - include __DIR__ . '/_inc/banner.php'; - } - - public function add_dismiss_script() { - include __DIR__ . '/_inc/dismiss-script.php'; - } - - private function is_banner_dismissed() { - return get_option( self::OPTION_KEY, false ); - } - - /** - * Hides the boost promo banner on dismiss - * - * @return never - */ - public function dismiss_setup_banner() { - check_ajax_referer( self::NONCE_ACTION, 'nonce' ); - update_option( self::OPTION_KEY, true, false ); - exit(); - } -} diff --git a/projects/plugins/boost/app/features/setup-prompt/_inc/banner.php b/projects/plugins/boost/app/features/setup-prompt/_inc/banner.php deleted file mode 100644 index 702452062d99b..0000000000000 --- a/projects/plugins/boost/app/features/setup-prompt/_inc/banner.php +++ /dev/null @@ -1,44 +0,0 @@ - - - diff --git a/projects/plugins/boost/app/features/setup-prompt/_inc/dismiss-script.php b/projects/plugins/boost/app/features/setup-prompt/_inc/dismiss-script.php deleted file mode 100644 index 4f0406eed8a62..0000000000000 --- a/projects/plugins/boost/app/features/setup-prompt/_inc/dismiss-script.php +++ /dev/null @@ -1,9 +0,0 @@ - diff --git a/projects/plugins/boost/app/lib/My_Jetpack.php b/projects/plugins/boost/app/lib/My_Jetpack.php new file mode 100644 index 0000000000000..53e24e0ddb399 --- /dev/null +++ b/projects/plugins/boost/app/lib/My_Jetpack.php @@ -0,0 +1,19 @@ + $product::get_tiers(), + 'features_by_tier' => $product::get_features_by_tier(), + ); + } +} diff --git a/projects/plugins/boost/app/lib/Premium_Pricing.php b/projects/plugins/boost/app/lib/Premium_Pricing.php index 2a4a75ea420c8..a38ea5964cac4 100644 --- a/projects/plugins/boost/app/lib/Premium_Pricing.php +++ b/projects/plugins/boost/app/lib/Premium_Pricing.php @@ -2,20 +2,18 @@ namespace Automattic\Jetpack_Boost\Lib; +use Automattic\Jetpack\My_Jetpack\Products\Boost; use Automattic\Jetpack\My_Jetpack\Wpcom_Products; use Automattic\Jetpack\Status; class Premium_Pricing { - const PRODUCT_SLUG_BASE = 'jetpack_boost'; - /** * Get an object containing the yearly pricing information for Jetpack Boost. * * Used by Jetpack_Boost js constants and data sync. */ public static function get_yearly_pricing() { - $yearly_pricing_slug = self::PRODUCT_SLUG_BASE . '_yearly'; - $yearly_pricing = Wpcom_Products::get_product_pricing( $yearly_pricing_slug ); + $yearly_pricing = Wpcom_Products::get_product_pricing( Boost::UPGRADED_TIER_PRODUCT_SLUG ); if ( empty( $yearly_pricing ) ) { // In offline mode, we don't have access to the pricing data and it's not an error. diff --git a/projects/plugins/boost/app/lib/critical-css/source-providers/providers/WP_Core_Provider.php b/projects/plugins/boost/app/lib/critical-css/source-providers/providers/WP_Core_Provider.php index e2b63769a6784..68445b4031fbb 100644 --- a/projects/plugins/boost/app/lib/critical-css/source-providers/providers/WP_Core_Provider.php +++ b/projects/plugins/boost/app/lib/critical-css/source-providers/providers/WP_Core_Provider.php @@ -43,8 +43,8 @@ public static function get_critical_source_urls( $context_posts = array() ) { if ( ! empty( $permalink ) ) { $urls['posts_page'] = array( $permalink ); } - } else { - $urls['posts_page'] = (array) home_url( '/' ); + } elseif ( ! $front_page ) { + $urls['posts_page'] = array( home_url( '/' ) ); } return $urls; diff --git a/projects/plugins/boost/app/modules/image-guide/Image_Guide.php b/projects/plugins/boost/app/modules/image-guide/Image_Guide.php index 9360a6b25efef..ce2e23fe9197e 100644 --- a/projects/plugins/boost/app/modules/image-guide/Image_Guide.php +++ b/projects/plugins/boost/app/modules/image-guide/Image_Guide.php @@ -9,15 +9,12 @@ class Image_Guide implements Pluggable { public function setup() { - // phpcs:ignore WordPress.Security.NonceVerification.Recommended - $override = isset( $_GET['jb-debug-ig'] ); - - if ( is_admin() || is_user_logged_in() || current_user_can( 'manage_options' ) ) { + if ( is_user_logged_in() && current_user_can( 'manage_options' ) ) { Image_Guide_Proxy::init(); } // Show the UI only when the user is logged in, with sufficient permissions and isn't looking at the dashboard. - if ( true !== $override && ( is_admin() || ! is_user_logged_in() || ! current_user_can( 'manage_options' ) ) ) { + if ( is_admin() || ! is_user_logged_in() || ! current_user_can( 'manage_options' ) ) { return; } diff --git a/projects/plugins/boost/app/modules/optimizations/page-cache/Page_Cache_Setup.php b/projects/plugins/boost/app/modules/optimizations/page-cache/Page_Cache_Setup.php index c21c21a8782c0..6a7d0c56a37d8 100644 --- a/projects/plugins/boost/app/modules/optimizations/page-cache/Page_Cache_Setup.php +++ b/projects/plugins/boost/app/modules/optimizations/page-cache/Page_Cache_Setup.php @@ -262,8 +262,8 @@ private static function add_wp_cache_define() { $content ); - $result = Filesystem_Utils::write_to_file( $config_file, $content ); - if ( $result instanceof Boost_Cache_Error ) { + $result = self::write_to_file_direct( $config_file, $content ); + if ( $result === false ) { return new \WP_Error( 'wp-config-not-writable' ); } self::clear_opcache( $config_file ); @@ -423,4 +423,21 @@ private static function clear_opcache( $file ) { opcache_invalidate( $file, true ); } } + + private static function write_to_file_direct( $file, $content ) { + $filesystem = self::get_wp_filesystem(); + $chmod = $filesystem->getchmod( $file ); + if ( $chmod === false ) { + $chmod = 0644; // Default to a common permission for files + } else { + $chmod = intval( '0' . $chmod, 8 ); // Ensure leading zero + } + return $filesystem->put_contents( $file, $content, $chmod ); + } + + private static function get_wp_filesystem() { + require_once ABSPATH . 'wp-admin/includes/class-wp-filesystem-base.php'; + require_once ABSPATH . 'wp-admin/includes/class-wp-filesystem-direct.php'; + return new \WP_Filesystem_Direct( null ); + } } diff --git a/projects/plugins/boost/changelog/add-dependency-extraction-auto-polyfill b/projects/plugins/boost/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/plugins/boost/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/plugins/boost/changelog/backport-3.5.2-changes b/projects/plugins/boost/changelog/backport-3.5.2-changes new file mode 100644 index 0000000000000..2dfedd8b13b1f --- /dev/null +++ b/projects/plugins/boost/changelog/backport-3.5.2-changes @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Backport changes from 3.5.2 release. + + diff --git a/projects/plugins/boost/changelog/fix-sync-filter-null-array b/projects/plugins/boost/changelog/fix-sync-filter-null-array new file mode 100644 index 0000000000000..3f56c90b3a7bf --- /dev/null +++ b/projects/plugins/boost/changelog/fix-sync-filter-null-array @@ -0,0 +1,5 @@ +Significance: patch +Type: fixed +Comment: Sync: update filter parameter to avoid conflicts with other plugins. + + diff --git a/projects/plugins/boost/changelog/improve-cdn-url-check b/projects/plugins/boost/changelog/improve-cdn-url-check deleted file mode 100644 index 691d511e8f3a3..0000000000000 --- a/projects/plugins/boost/changelog/improve-cdn-url-check +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Image Guide: Improve check for Jetpack Image CDN URLs diff --git a/projects/plugins/boost/changelog/remove-image-guide-override b/projects/plugins/boost/changelog/remove-image-guide-override new file mode 100644 index 0000000000000..35c10bab98c1a --- /dev/null +++ b/projects/plugins/boost/changelog/remove-image-guide-override @@ -0,0 +1,4 @@ +Significance: minor +Type: removed + +Image Guide: Remove URL parameter based override. diff --git a/projects/plugins/boost/changelog/remove-setup-prompt b/projects/plugins/boost/changelog/remove-setup-prompt new file mode 100644 index 0000000000000..efe8af0a118e6 --- /dev/null +++ b/projects/plugins/boost/changelog/remove-setup-prompt @@ -0,0 +1,5 @@ +Significance: patch +Type: removed +Comment: Removed unused code + + diff --git a/projects/plugins/boost/changelog/update-ccss-core-providers b/projects/plugins/boost/changelog/update-ccss-core-providers new file mode 100644 index 0000000000000..527e9511c0c8b --- /dev/null +++ b/projects/plugins/boost/changelog/update-ccss-core-providers @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Critical CSS: Make the list of critical CSS URLs more efficient. diff --git a/projects/plugins/boost/changelog/update-exclude-shortcode-scripts b/projects/plugins/boost/changelog/update-exclude-shortcode-scripts deleted file mode 100644 index 819448d6264ab..0000000000000 --- a/projects/plugins/boost/changelog/update-exclude-shortcode-scripts +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Deferred JS: Exclude all scripts produced by a shortcode. diff --git a/projects/plugins/boost/changelog/update-my-jetpack-notice-mobile-style b/projects/plugins/boost/changelog/update-my-jetpack-notice-mobile-style deleted file mode 100644 index c740afea846ef..0000000000000 --- a/projects/plugins/boost/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/boost/changelog/update-upgrade-page b/projects/plugins/boost/changelog/update-upgrade-page deleted file mode 100644 index f0a9482666432..0000000000000 --- a/projects/plugins/boost/changelog/update-upgrade-page +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated text on upgrade page - - diff --git a/projects/plugins/boost/changelog/update-use-monorepo-css-gen-package b/projects/plugins/boost/changelog/update-use-monorepo-css-gen-package deleted file mode 100644 index 12aafd67db156..0000000000000 --- a/projects/plugins/boost/changelog/update-use-monorepo-css-gen-package +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Use css gen package from monorepo instead of external repo. - - diff --git a/projects/plugins/boost/composer.json b/projects/plugins/boost/composer.json index fee05b0edeb41..c07f0a75a493f 100644 --- a/projects/plugins/boost/composer.json +++ b/projects/plugins/boost/composer.json @@ -3,7 +3,7 @@ "description": "Boost your WordPress site's performance, from the creators of Jetpack", "type": "library", "license": "GPL-2.0-or-later", - "version": "3.5.1", + "version": "3.5.2", "authors": [ { "name": "Automattic, Inc.", @@ -74,7 +74,7 @@ "platform": { "ext-intl": "0.0.0" }, - "autoloader-suffix": "b1e77e6231d50e7663f84529b6a3dfda_jetpack_boostâ“¥3_5_1", + "autoloader-suffix": "b1e77e6231d50e7663f84529b6a3dfda_jetpack_boostâ“¥3_5_2", "allow-plugins": { "roots/wordpress-core-installer": true, "automattic/jetpack-autoloader": true, diff --git a/projects/plugins/boost/composer.lock b/projects/plugins/boost/composer.lock index 1ccb51002cf34..3b6fc7a807989 100644 --- a/projects/plugins/boost/composer.lock +++ b/projects/plugins/boost/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "44a1c3cc02a1914f71c9090620bb09a3", + "content-hash": "aa37384bded5cf285343140269233ca2", "packages": [ { "name": "automattic/jetpack-a8c-mc-stats", @@ -783,7 +783,7 @@ "dist": { "type": "path", "url": "../../packages/image-cdn", - "reference": "a5b2d15b86d745342dc1de2ed0478e07e29df4ef" + "reference": "63a179625ebed6c7e5d21ddfb1949983e16dda4d" }, "require": { "automattic/jetpack-assets": "@dev", @@ -806,7 +806,7 @@ }, "autotagger": true, "branch-alias": { - "dev-trunk": "0.4.x-dev" + "dev-trunk": "0.5.x-dev" }, "textdomain": "jetpack-image-cdn", "version-constants": { @@ -1794,7 +1794,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9e141274ba174502fd591a8edc315c210861155a" + "reference": "ac7496c921263d9ce7eaa77cac67d945c4f30fea" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1827,7 +1827,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "3.13.x-dev" + "dev-trunk": "3.14.x-dev" }, "dependencies": { "test-only": [ @@ -2116,20 +2116,20 @@ "packages-dev": [ { "name": "antecedent/patchwork", - "version": "2.1.28", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/antecedent/patchwork.git", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d" + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antecedent/patchwork/zipball/6b30aff81ebadf0f2feb9268d3e08385cebcc08d", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d", + "url": "https://api.github.com/repos/antecedent/patchwork/zipball/b07d4fb37c3c723c8755122160c089e077d5de65", + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=7.1.0" }, "require-dev": { "phpunit/phpunit": ">=4" @@ -2158,9 +2158,9 @@ ], "support": { "issues": "https://github.com/antecedent/patchwork/issues", - "source": "https://github.com/antecedent/patchwork/tree/2.1.28" + "source": "https://github.com/antecedent/patchwork/tree/2.2.0" }, - "time": "2024-02-06T09:26:11+00:00" + "time": "2024-09-27T16:59:55+00:00" }, { "name": "automattic/jetpack-changelogger", @@ -2617,16 +2617,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -2669,9 +2669,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -3112,16 +3112,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -3136,7 +3136,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -3195,7 +3195,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -3211,7 +3211,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -3268,7 +3268,7 @@ }, { "name": "roots/wordpress", - "version": "6.6.1", + "version": "6.6.2", "source": { "type": "git", "url": "https://github.com/roots/wordpress.git", @@ -3299,7 +3299,7 @@ ], "support": { "issues": "https://github.com/roots/wordpress/issues", - "source": "https://github.com/roots/wordpress/tree/6.6.1" + "source": "https://github.com/roots/wordpress/tree/6.6.2" }, "funding": [ { @@ -3382,22 +3382,22 @@ }, { "name": "roots/wordpress-no-content", - "version": "6.6.1", + "version": "6.6.2", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress.git", - "reference": "6.6.1" + "reference": "6.6.2" }, "dist": { "type": "zip", - "url": "https://downloads.wordpress.org/release/wordpress-6.6.1-no-content.zip", - "shasum": "954aa560a66112cd999aa9d9519da5f964e6692a" + "url": "https://downloads.wordpress.org/release/wordpress-6.6.2-no-content.zip", + "shasum": "b496b8a9bb3c6d20a781344cbe3e189f7fd83871" }, "require": { - "php": ">= 7.0.0" + "php": ">= 7.2.24" }, "provide": { - "wordpress/core-implementation": "6.6.1" + "wordpress/core-implementation": "6.6.2" }, "suggest": { "ext-curl": "Performs remote request operations.", @@ -3448,7 +3448,7 @@ "type": "other" } ], - "time": "2024-07-23T15:25:13+00:00" + "time": "2024-09-10T15:25:31+00:00" }, { "name": "sebastian/cli-parser", @@ -4415,16 +4415,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -4488,7 +4488,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -4504,7 +4504,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4893,16 +4893,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -4934,7 +4934,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -4950,7 +4950,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -5037,16 +5037,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -5104,7 +5104,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -5120,7 +5120,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/boost/jetpack-boost.php b/projects/plugins/boost/jetpack-boost.php index adea8c8e74c05..72e55cbb4abbc 100644 --- a/projects/plugins/boost/jetpack-boost.php +++ b/projects/plugins/boost/jetpack-boost.php @@ -9,14 +9,14 @@ * Plugin Name: Jetpack Boost * Plugin URI: https://jetpack.com/boost * Description: Boost your WordPress site's performance, from the creators of Jetpack - * Version: 3.5.1 + * Version: 3.5.2 * Author: Automattic - Jetpack Site Speed team * Author URI: https://jetpack.com/boost/ * License: GPL-2.0+ * License URI: http://www.gnu.org/licenses/gpl-2.0.txt * Text Domain: jetpack-boost * Domain Path: /languages - * Requires at least: 5.5 + * Requires at least: 6.5 * Requires PHP: 7.0 * * @package automattic/jetpack-boost @@ -29,7 +29,7 @@ die; } -define( 'JETPACK_BOOST_VERSION', '3.5.1' ); +define( 'JETPACK_BOOST_VERSION', '3.5.2' ); define( 'JETPACK_BOOST_SLUG', 'jetpack-boost' ); if ( ! defined( 'JETPACK_BOOST_CLIENT_NAME' ) ) { diff --git a/projects/plugins/boost/package.json b/projects/plugins/boost/package.json index e47a3b3d6913a..9c3124c796fab 100644 --- a/projects/plugins/boost/package.json +++ b/projects/plugins/boost/package.json @@ -1,6 +1,6 @@ { "name": "jetpack-boost", - "version": "3.5.1", + "version": "3.5.2", "description": "Boost your WordPress site's performance, from the creators of Jetpack", "directories": { "test": "tests" @@ -13,8 +13,8 @@ "@react-spring/web": "9.7.3", "@types/react": "18.3.3", "@types/react-router-dom": "5.3.3", - "@wordpress/components": "28.8.4", - "@wordpress/element": "6.8.1", + "@wordpress/components": "28.9.0", + "@wordpress/element": "6.9.0", "clsx": "2.1.1", "copy-webpack-plugin": "11.0.0", "history": "5.3.0", @@ -34,11 +34,11 @@ "@babel/core": "7.24.7", "@babel/preset-env": "7.24.7", "@babel/preset-react": "7.24.7", - "@storybook/react": "8.2.9", + "@storybook/react": "8.3.5", "@types/jest": "29.5.12", "@types/jquery": "3.5.30", - "@wordpress/browserslist-config": "6.8.1", - "@wordpress/i18n": "5.8.2", + "@wordpress/browserslist-config": "6.9.0", + "@wordpress/i18n": "5.9.0", "concurrently": "7.6.0", "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", @@ -50,7 +50,7 @@ "react-dom": "18.3.1", "sass": "1.64.1", "sass-loader": "12.4.0", - "storybook": "8.2.9", + "storybook": "8.3.5", "tslib": "2.5.0", "typescript": "5.0.4", "webpack": "5.94.0", diff --git a/projects/plugins/boost/readme.txt b/projects/plugins/boost/readme.txt index 060b2b0d14fb2..ac48b05bda4e2 100644 --- a/projects/plugins/boost/readme.txt +++ b/projects/plugins/boost/readme.txt @@ -5,7 +5,7 @@ Tags: performance, speed, web vitals, critical css, cache Requires at least: 6.5 Tested up to: 6.6 Requires PHP: 7.0 -Stable tag: 3.5.1 +Stable tag: 3.5.2 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html @@ -183,9 +183,15 @@ If you run into compatibility issues, please do let us know. You can drop us a l 2. Jetpack Boost Speed Improvement == Changelog == -### 3.5.1 - 2024-09-26 +### 3.5.2 - 2024-10-15 #### Changed -- Support: Increased minumum required WordPress version to 6.5 +- Deferred JS: Exclude all scripts produced by a shortcode. +- General: Sync Boost's Getting Started page with My Jetpack's version. +- General: Update minimum required WordPress version to 6.5 in main plugin file. Previous release only changed plugin readme. + +#### Fixed +- Image CDN: URL encode image path parts for RSS feed compatibility +- Image Guide: Improve check for Jetpack Image CDN URLs -------- diff --git a/projects/plugins/boost/tests/e2e/lib/env/prerequisites.js b/projects/plugins/boost/tests/e2e/lib/env/prerequisites.js index b43c3731de765..efb8040ef7c45 100644 --- a/projects/plugins/boost/tests/e2e/lib/env/prerequisites.js +++ b/projects/plugins/boost/tests/e2e/lib/env/prerequisites.js @@ -1,5 +1,6 @@ import logger from 'jetpack-e2e-commons/logger.js'; import { execWpCommand } from 'jetpack-e2e-commons/helpers/utils-helper.js'; +import { ensureUserIsLoggedIn } from 'jetpack-e2e-commons/env/prerequisites.js'; import { expect } from '@playwright/test'; import { JetpackBoostPage } from '../pages/index.js'; @@ -8,6 +9,7 @@ export function boostPrerequisitesBuilder( page ) { const state = { testPostTitles: [], clean: undefined, + loggedIn: undefined, modules: { active: undefined, inactive: undefined }, connected: undefined, jetpackDeactivated: undefined, @@ -25,6 +27,10 @@ export function boostPrerequisitesBuilder( page ) { state.modules.inactive = modules; return this; }, + withLoggedIn( shouldBeLoggedIn ) { + state.loggedIn = shouldBeLoggedIn; + return this; + }, withConnection( shouldBeConnected ) { state.connected = shouldBeConnected; return this; @@ -58,6 +64,7 @@ export function boostPrerequisitesBuilder( page ) { async function buildPrerequisites( state, page ) { const functions = { modules: () => ensureModulesState( state.modules ), + loggedIn: () => ensureUserIsLoggedIn( page ), connected: () => ensureConnectedState( state.connected, page ), testPostTitles: () => ensureTestPosts( state.testPostTitles ), clean: () => ensureCleanState( state.clean ), diff --git a/projects/plugins/boost/tests/e2e/specs/page-cache/page-cache.test.js b/projects/plugins/boost/tests/e2e/specs/page-cache/page-cache.test.js index 4d5fda06826c2..bdd35a81ff8a8 100644 --- a/projects/plugins/boost/tests/e2e/specs/page-cache/page-cache.test.js +++ b/projects/plugins/boost/tests/e2e/specs/page-cache/page-cache.test.js @@ -12,6 +12,7 @@ test.describe( 'Cache module', () => { test.beforeAll( async ( { browser } ) => { page = await browser.newPage( playwrightConfig.use ); await boostPrerequisitesBuilder( page ) + .withLoggedIn( true ) .withInactiveModules( [ 'page_cache', // Make sure it's inactive. ] ) diff --git a/projects/plugins/boost/tests/php/class-my-jetpack.php b/projects/plugins/boost/tests/php/class-my-jetpack.php new file mode 100644 index 0000000000000..8c376297a5731 --- /dev/null +++ b/projects/plugins/boost/tests/php/class-my-jetpack.php @@ -0,0 +1,58 @@ +returnArg(); + + $this->product = My_Jetpack::get_product(); + } + + public function test_is_correct_tiers() { + $expected = array( + 'upgraded', + 'free', + ); + + $actual = $this->product['tiers']; + $this->assertEquals( $expected, $actual ); + } + + public function test_is_correct_features_count() { + $total_features = 11; + $this->assertCount( $total_features, $this->product['features_by_tier'], 'Expected ' . $total_features . ' features, got ' . count( $this->product['features_by_tier'] ) ); + } + + public function test_all_features_have_required_keys() { + foreach ( $this->product['features_by_tier'] as $feature ) { + $this->checkForRequiredKeys( $feature ); + } + } + + /** + * Checks that a feature has the required keys + * for rendering the UI. + * + * @param array $feature The feature to check. + */ + private function checkForRequiredKeys( $feature ) { + $this->assertIsArray( $feature ); + $this->assertIsString( $feature['name'] ); + $this->assertIsArray( $feature['info'] ); + $this->assertIsString( $feature['info']['content'] ); + $this->assertIsArray( $feature['tiers'] ); + $this->assertIsArray( $feature['tiers']['free'] ); + $this->assertIsBool( $feature['tiers']['free']['included'] ); + $this->assertIsArray( $feature['tiers']['upgraded'] ); + $this->assertIsBool( $feature['tiers']['upgraded']['included'] ); + } +} diff --git a/projects/plugins/boost/webpack.config.js b/projects/plugins/boost/webpack.config.js index fd012c1c81f65..2e191ed66e8e5 100644 --- a/projects/plugins/boost/webpack.config.js +++ b/projects/plugins/boost/webpack.config.js @@ -67,7 +67,6 @@ module.exports = [ MiniCssExtractPlugin: { filename: 'jetpack-boost.css', }, - DependencyExtractionPlugin: { injectPolyfill: true }, } ), new webpack.ProvidePlugin( { process: require.resolve( 'process/browser' ), @@ -129,9 +128,7 @@ module.exports = [ }, node: false, plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), + ...jetpackWebpackConfig.StandardPlugins(), new CopyPlugin( { patterns: imageGuideCopyPatterns } ), ], module: { diff --git a/projects/plugins/boost/wp-js-data-sync.php b/projects/plugins/boost/wp-js-data-sync.php index 318ef4ddcf6c2..28d5d69cd2af7 100644 --- a/projects/plugins/boost/wp-js-data-sync.php +++ b/projects/plugins/boost/wp-js-data-sync.php @@ -16,6 +16,7 @@ use Automattic\Jetpack_Boost\Lib\Critical_CSS\Data_Sync_Actions\Set_Provider_CSS; use Automattic\Jetpack_Boost\Lib\Critical_CSS\Data_Sync_Actions\Set_Provider_Error_Dismissed; use Automattic\Jetpack_Boost\Lib\Critical_CSS\Data_Sync_Actions\Set_Provider_Errors; +use Automattic\Jetpack_Boost\Lib\My_Jetpack; use Automattic\Jetpack_Boost\Lib\Premium_Features; use Automattic\Jetpack_Boost\Lib\Premium_Pricing; use Automattic\Jetpack_Boost\Lib\Status; @@ -346,6 +347,7 @@ function jetpack_boost_initialize_datasync() { jetpack_boost_register_readonly_option( 'connection', array( new Connection(), 'get_connection_api_response' ) ); jetpack_boost_register_readonly_option( 'pricing', array( Premium_Pricing::class, 'get_yearly_pricing' ) ); +jetpack_boost_register_readonly_option( 'product', array( My_Jetpack::class, 'get_product' ) ); jetpack_boost_register_readonly_option( 'premium_features', array( Premium_Features::class, 'get_features' ) ); jetpack_boost_register_readonly_option( 'cache_debug_log', array( Logger::class, 'read' ) ); jetpack_boost_register_readonly_option( 'cache_engine_loading', array( Boost_Cache::class, 'is_loaded' ) ); diff --git a/projects/plugins/classic-theme-helper-plugin/changelog/add-dependency-extraction-auto-polyfill b/projects/plugins/classic-theme-helper-plugin/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/plugins/classic-theme-helper-plugin/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/packages/backup/changelog/renovate-wordpress-monorepo b/projects/plugins/classic-theme-helper-plugin/changelog/renovate-lock-file-maintenance#6 similarity index 100% rename from projects/packages/backup/changelog/renovate-wordpress-monorepo rename to projects/plugins/classic-theme-helper-plugin/changelog/renovate-lock-file-maintenance#6 diff --git a/projects/plugins/protect/changelog/prerelease#3 b/projects/plugins/classic-theme-helper-plugin/changelog/renovate-lock-file-maintenance#7 similarity index 100% rename from projects/plugins/protect/changelog/prerelease#3 rename to projects/plugins/classic-theme-helper-plugin/changelog/renovate-lock-file-maintenance#7 diff --git a/projects/packages/blaze/changelog/renovate-wordpress-monorepo b/projects/plugins/classic-theme-helper-plugin/changelog/renovate-wordpress-monorepo#8 similarity index 100% rename from projects/packages/blaze/changelog/renovate-wordpress-monorepo rename to projects/plugins/classic-theme-helper-plugin/changelog/renovate-wordpress-monorepo#8 diff --git a/projects/plugins/classic-theme-helper-plugin/composer.lock b/projects/plugins/classic-theme-helper-plugin/composer.lock index 1f7ed19d6e48c..2712a80baf12e 100644 --- a/projects/plugins/classic-theme-helper-plugin/composer.lock +++ b/projects/plugins/classic-theme-helper-plugin/composer.lock @@ -552,20 +552,20 @@ "packages-dev": [ { "name": "antecedent/patchwork", - "version": "2.1.28", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/antecedent/patchwork.git", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d" + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antecedent/patchwork/zipball/6b30aff81ebadf0f2feb9268d3e08385cebcc08d", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d", + "url": "https://api.github.com/repos/antecedent/patchwork/zipball/b07d4fb37c3c723c8755122160c089e077d5de65", + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=7.1.0" }, "require-dev": { "phpunit/phpunit": ">=4" @@ -594,9 +594,9 @@ ], "support": { "issues": "https://github.com/antecedent/patchwork/issues", - "source": "https://github.com/antecedent/patchwork/tree/2.1.28" + "source": "https://github.com/antecedent/patchwork/tree/2.2.0" }, - "time": "2024-02-06T09:26:11+00:00" + "time": "2024-09-27T16:59:55+00:00" }, { "name": "automattic/jetpack-changelogger", @@ -1053,16 +1053,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -1105,9 +1105,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -1548,16 +1548,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -1572,7 +1572,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -1631,7 +1631,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -1647,7 +1647,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -1704,7 +1704,7 @@ }, { "name": "roots/wordpress", - "version": "6.6.1", + "version": "6.6.2", "source": { "type": "git", "url": "https://github.com/roots/wordpress.git", @@ -1735,7 +1735,7 @@ ], "support": { "issues": "https://github.com/roots/wordpress/issues", - "source": "https://github.com/roots/wordpress/tree/6.6.1" + "source": "https://github.com/roots/wordpress/tree/6.6.2" }, "funding": [ { @@ -1818,22 +1818,22 @@ }, { "name": "roots/wordpress-no-content", - "version": "6.6.1", + "version": "6.6.2", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress.git", - "reference": "6.6.1" + "reference": "6.6.2" }, "dist": { "type": "zip", - "url": "https://downloads.wordpress.org/release/wordpress-6.6.1-no-content.zip", - "shasum": "954aa560a66112cd999aa9d9519da5f964e6692a" + "url": "https://downloads.wordpress.org/release/wordpress-6.6.2-no-content.zip", + "shasum": "b496b8a9bb3c6d20a781344cbe3e189f7fd83871" }, "require": { - "php": ">= 7.0.0" + "php": ">= 7.2.24" }, "provide": { - "wordpress/core-implementation": "6.6.1" + "wordpress/core-implementation": "6.6.2" }, "suggest": { "ext-curl": "Performs remote request operations.", @@ -1884,7 +1884,7 @@ "type": "other" } ], - "time": "2024-07-23T15:25:13+00:00" + "time": "2024-09-10T15:25:31+00:00" }, { "name": "sebastian/cli-parser", @@ -2851,16 +2851,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -2924,7 +2924,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -2940,7 +2940,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3329,16 +3329,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -3370,7 +3370,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -3386,7 +3386,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -3473,16 +3473,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -3540,7 +3540,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -3556,7 +3556,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/classic-theme-helper-plugin/package.json b/projects/plugins/classic-theme-helper-plugin/package.json index ad45c0c14eff2..7459ad5b6ae57 100644 --- a/projects/plugins/classic-theme-helper-plugin/package.json +++ b/projects/plugins/classic-theme-helper-plugin/package.json @@ -29,10 +29,10 @@ "@automattic/jetpack-base-styles": "workspace:*", "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-connection": "workspace:*", - "@wordpress/data": "10.8.3", - "@wordpress/date": "5.8.2", - "@wordpress/element": "6.8.1", - "@wordpress/i18n": "5.8.2", + "@wordpress/data": "10.9.0", + "@wordpress/date": "5.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/i18n": "5.9.0", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -43,7 +43,7 @@ "@babel/runtime": "7.24.7", "@testing-library/dom": "10.4.0", "@testing-library/react": "16.0.1", - "@wordpress/browserslist-config": "6.8.1", + "@wordpress/browserslist-config": "6.9.0", "babel-jest": "29.4.3", "concurrently": "7.6.0", "jest": "29.7.0", diff --git a/projects/plugins/classic-theme-helper-plugin/webpack.config.js b/projects/plugins/classic-theme-helper-plugin/webpack.config.js index 3e081aa7d1f90..2b9a523c9ed2d 100644 --- a/projects/plugins/classic-theme-helper-plugin/webpack.config.js +++ b/projects/plugins/classic-theme-helper-plugin/webpack.config.js @@ -19,11 +19,7 @@ module.exports = [ ...jetpackWebpackConfig.resolve, }, node: false, - plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), - ], + plugins: [ ...jetpackWebpackConfig.StandardPlugins() ], module: { strictExportPresence: true, rules: [ diff --git a/projects/plugins/crm/changelog/add-dependency-extraction-auto-polyfill b/projects/plugins/crm/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/plugins/crm/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/plugins/crm/changelog/fix-phpcompatibility-new-dev-sniff b/projects/plugins/crm/changelog/fix-phpcompatibility-new-dev-sniff new file mode 100644 index 0000000000000..4c112ce236ea6 --- /dev/null +++ b/projects/plugins/crm/changelog/fix-phpcompatibility-new-dev-sniff @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Improve spec compliance of CSV output: `\"` sequences will now be correctly escaped by doubling the `"`. diff --git a/projects/packages/classic-theme-helper/changelog/renovate-wordpress-monorepo b/projects/plugins/crm/changelog/renovate-lock-file-maintenance#3 similarity index 100% rename from projects/packages/classic-theme-helper/changelog/renovate-wordpress-monorepo rename to projects/plugins/crm/changelog/renovate-lock-file-maintenance#3 diff --git a/projects/plugins/protect/changelog/prerelease#4 b/projects/plugins/crm/changelog/renovate-lock-file-maintenance#4 similarity index 100% rename from projects/plugins/protect/changelog/prerelease#4 rename to projects/plugins/crm/changelog/renovate-lock-file-maintenance#4 diff --git a/projects/plugins/crm/changelog/renovate-mediawiki-mediawiki-codesniffer-44.x b/projects/plugins/crm/changelog/renovate-mediawiki-mediawiki-codesniffer-44.x new file mode 100644 index 0000000000000..5ab42f8a0abd8 --- /dev/null +++ b/projects/plugins/crm/changelog/renovate-mediawiki-mediawiki-codesniffer-44.x @@ -0,0 +1,4 @@ +Significance: patch +Type: fixed +Comment: Fix missing types in phpdoc comments. + diff --git a/projects/packages/connection/changelog/renovate-wordpress-monorepo b/projects/plugins/crm/changelog/renovate-wordpress-monorepo#5 similarity index 100% rename from projects/packages/connection/changelog/renovate-wordpress-monorepo rename to projects/plugins/crm/changelog/renovate-wordpress-monorepo#5 diff --git a/projects/plugins/crm/composer.lock b/projects/plugins/crm/composer.lock index f34da599e6fe1..95608027a8782 100644 --- a/projects/plugins/crm/composer.lock +++ b/projects/plugins/crm/composer.lock @@ -1830,16 +1830,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -1882,9 +1882,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -2391,16 +2391,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -2415,7 +2415,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -2474,7 +2474,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -2490,7 +2490,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -3911,16 +3911,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -3984,7 +3984,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -4000,7 +4000,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/css-selector", @@ -4136,16 +4136,16 @@ }, { "name": "symfony/dom-crawler", - "version": "v6.4.8", + "version": "v6.4.12", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "105b56a0305d219349edeb60a800082eca864e4b" + "reference": "9d307ecbcb917001692be333cdc58f474fdb37f0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/105b56a0305d219349edeb60a800082eca864e4b", - "reference": "105b56a0305d219349edeb60a800082eca864e4b", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/9d307ecbcb917001692be333cdc58f474fdb37f0", + "reference": "9d307ecbcb917001692be333cdc58f474fdb37f0", "shasum": "" }, "require": { @@ -4183,7 +4183,7 @@ "description": "Eases DOM navigation for HTML and XML documents", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dom-crawler/tree/v6.4.8" + "source": "https://github.com/symfony/dom-crawler/tree/v6.4.12" }, "funding": [ { @@ -4199,7 +4199,7 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:49:08+00:00" + "time": "2024-09-15T06:35:36+00:00" }, { "name": "symfony/event-dispatcher", @@ -4741,16 +4741,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -4782,7 +4782,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -4798,7 +4798,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -4885,16 +4885,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -4952,7 +4952,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -4968,20 +4968,20 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/var-dumper", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "a5fa7481b199090964d6fd5dab6294d5a870c7aa" + "reference": "e20e03889539fd4e4211e14d2179226c513c010d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/a5fa7481b199090964d6fd5dab6294d5a870c7aa", - "reference": "a5fa7481b199090964d6fd5dab6294d5a870c7aa", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/e20e03889539fd4e4211e14d2179226c513c010d", + "reference": "e20e03889539fd4e4211e14d2179226c513c010d", "shasum": "" }, "require": { @@ -5035,7 +5035,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v7.1.4" + "source": "https://github.com/symfony/var-dumper/tree/v7.1.5" }, "funding": [ { @@ -5051,20 +5051,20 @@ "type": "tidelift" } ], - "time": "2024-08-30T16:12:47+00:00" + "time": "2024-09-16T10:07:02+00:00" }, { "name": "symfony/yaml", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "92e080b851c1c655c786a2da77f188f2dccd0f4b" + "reference": "4e561c316e135e053bd758bf3b3eb291d9919de4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/92e080b851c1c655c786a2da77f188f2dccd0f4b", - "reference": "92e080b851c1c655c786a2da77f188f2dccd0f4b", + "url": "https://api.github.com/repos/symfony/yaml/zipball/4e561c316e135e053bd758bf3b3eb291d9919de4", + "reference": "4e561c316e135e053bd758bf3b3eb291d9919de4", "shasum": "" }, "require": { @@ -5106,7 +5106,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v7.1.4" + "source": "https://github.com/symfony/yaml/tree/v7.1.5" }, "funding": [ { @@ -5122,7 +5122,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-17T12:49:58+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/crm/includes/ZeroBSCRM.CSVImporter.php b/projects/plugins/crm/includes/ZeroBSCRM.CSVImporter.php index 6611b5797af15..83f0b75f28609 100644 --- a/projects/plugins/crm/includes/ZeroBSCRM.CSVImporter.php +++ b/projects/plugins/crm/includes/ZeroBSCRM.CSVImporter.php @@ -253,7 +253,8 @@ function jpcrm_csvimporter_lite_preflight_checks( $stage ) { $file = fopen( $file_path, 'r' ); // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_operations_fopen while ( ! feof( $file ) ) { - $csv_data[] = fgetcsv( $file ); + // @todo Consider passing empty-string for `$escape` for better spec compatibility. + $csv_data[] = fgetcsv( $file, 0, ',', '"', '\\' ); } fclose( $file ); // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_operations_fclose diff --git a/projects/plugins/crm/includes/ZeroBSCRM.DAL3.Export.php b/projects/plugins/crm/includes/ZeroBSCRM.DAL3.Export.php index dbcccd4e4acee..e16fc51a27ebe 100644 --- a/projects/plugins/crm/includes/ZeroBSCRM.DAL3.Export.php +++ b/projects/plugins/crm/includes/ZeroBSCRM.DAL3.Export.php @@ -288,7 +288,8 @@ function jpcrm_export_process_file_export() { $columnHeaders[] = __( 'Owner Username', 'zero-bs-crm' ); } } - fputcsv( $output, $columnHeaders ); + // phpcs:ignore WordPress.NamingConventions.ValidVariableName.VariableNotSnakeCase -- Just ignore until someone fixes all of these, otherwise we wind up having to rewrite half the function. + fputcsv( $output, $columnHeaders, ',', '"', '' ); // actual export lines @@ -421,7 +422,8 @@ function jpcrm_export_process_file_export() { } // / foreach field in each obj row // output row - fputcsv( $output, $objRow ); + // phpcs:ignore WordPress.NamingConventions.ValidVariableName.VariableNotSnakeCase -- Just ignore until someone fixes all of these, otherwise we wind up having to rewrite half the function. + fputcsv( $output, $objRow, ',', '"', '' ); } // / foreach obj } diff --git a/projects/plugins/crm/package.json b/projects/plugins/crm/package.json index 04ed94daa512f..44f57324df213 100644 --- a/projects/plugins/crm/package.json +++ b/projects/plugins/crm/package.json @@ -22,13 +22,13 @@ "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-shared-extension-utils": "workspace:*", "@tanstack/react-query": "4.35.3", - "@wordpress/api-fetch": "7.8.2", - "@wordpress/base-styles": "5.8.1", - "@wordpress/components": "28.8.4", - "@wordpress/data": "10.8.3", - "@wordpress/element": "6.8.1", - "@wordpress/i18n": "5.8.2", - "@wordpress/icons": "10.8.2", + "@wordpress/api-fetch": "7.9.0", + "@wordpress/base-styles": "5.9.0", + "@wordpress/components": "28.9.0", + "@wordpress/data": "10.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/i18n": "5.9.0", + "@wordpress/icons": "10.9.0", "clsx": "2.1.1", "prop-types": "15.8.1", "react": "18.3.1", diff --git a/projects/plugins/crm/tests/codeception/_support/Helper/JPCRM_Acceptance.php b/projects/plugins/crm/tests/codeception/_support/Helper/JPCRM_Acceptance.php index 2fe7e1e9e8dbb..ac25c67e9744b 100644 --- a/projects/plugins/crm/tests/codeception/_support/Helper/JPCRM_Acceptance.php +++ b/projects/plugins/crm/tests/codeception/_support/Helper/JPCRM_Acceptance.php @@ -249,7 +249,7 @@ public function getDatabase() { /** * Get the JetpackCRM table name * - * @param $name + * @param string $name * @return string */ public function table( $name ) { @@ -265,8 +265,8 @@ public function pdo() { /** * Load a page from it's core slug * - * @param $page_slug - * @param string $query + * @param string $page_slug + * @param string $query */ public function goToPageViaSlug( $page_slug, $query = '' ) { $this->amOnAdminPage( 'admin.php?page=' . $this->slugs[ $page_slug ] . $query ); diff --git a/projects/plugins/crm/tests/codeception/_support/Helper/RunProcess.php b/projects/plugins/crm/tests/codeception/_support/Helper/RunProcess.php index 10faae3a8c750..cd202b1c8d8e2 100644 --- a/projects/plugins/crm/tests/codeception/_support/Helper/RunProcess.php +++ b/projects/plugins/crm/tests/codeception/_support/Helper/RunProcess.php @@ -15,9 +15,9 @@ class RunProcess { /** * RunProcess constructor. * - * @param $cmd - * @param string $outputFile - * @param bool $append + * @param string|null $cmd + * @param string $outputFile + * @param bool $append */ public function __construct( $cmd, $outputFile = '/dev/null', $append = false ) { $this->cmd = $cmd; diff --git a/projects/plugins/crm/webpack.config.js b/projects/plugins/crm/webpack.config.js index 5c78a67e10e79..9272532b6fdf1 100644 --- a/projects/plugins/crm/webpack.config.js +++ b/projects/plugins/crm/webpack.config.js @@ -283,9 +283,7 @@ module.exports = [ path: path.resolve( './build' ), }, plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), + ...jetpackWebpackConfig.StandardPlugins(), ], module: { ...crmWebpackConfig.module, diff --git a/projects/plugins/debug-helper/changelog/fix-waf-no-waf-rules-manager-call-in-standalone-mode b/projects/plugins/debug-helper/changelog/fix-waf-no-waf-rules-manager-call-in-standalone-mode new file mode 100644 index 0000000000000..a5a59b42378f8 --- /dev/null +++ b/projects/plugins/debug-helper/changelog/fix-waf-no-waf-rules-manager-call-in-standalone-mode @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Updated constant for compatibility with latest waf package version. + + diff --git a/projects/packages/explat/changelog/renovate-wordpress-monorepo b/projects/plugins/debug-helper/changelog/renovate-lock-file-maintenance#5 similarity index 100% rename from projects/packages/explat/changelog/renovate-wordpress-monorepo rename to projects/plugins/debug-helper/changelog/renovate-lock-file-maintenance#5 diff --git a/projects/plugins/debug-helper/composer.lock b/projects/plugins/debug-helper/composer.lock index d5ddb889de86f..456af7d2233ad 100644 --- a/projects/plugins/debug-helper/composer.lock +++ b/projects/plugins/debug-helper/composer.lock @@ -136,16 +136,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -209,7 +209,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -225,7 +225,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -614,16 +614,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -655,7 +655,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -671,7 +671,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -758,16 +758,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -825,7 +825,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -841,7 +841,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" } ], "aliases": [], @@ -851,7 +851,7 @@ }, "prefer-stable": true, "prefer-lowest": false, - "platform": [], - "platform-dev": [], + "platform": {}, + "platform-dev": {}, "plugin-api-version": "2.6.0" } diff --git a/projects/plugins/debug-helper/modules/class-waf-helper.php b/projects/plugins/debug-helper/modules/class-waf-helper.php index b571fe6e48d1c..08de1330b85f4 100644 --- a/projects/plugins/debug-helper/modules/class-waf-helper.php +++ b/projects/plugins/debug-helper/modules/class-waf-helper.php @@ -5,6 +5,7 @@ * @package automattic/jetpack-debug-helper */ +use Automattic\Jetpack\Waf\Waf_Constants; use Automattic\Jetpack\Waf\Waf_Rules_Manager; use Automattic\Jetpack\Waf\Waf_Runner; @@ -223,7 +224,8 @@ public function render_ui() {

      Rules Entrypoint

      - render_waf_file( Waf_Rules_Manager::RULES_ENTRYPOINT_FILE ); ?> + + render_waf_file( (string) JETPACK_WAF_ENTRYPOINT ) : 'Not set'; ?>
      diff --git a/projects/packages/forms/changelog/renovate-wordpress-monorepo b/projects/plugins/inspect/changelog/renovate-lock-file-maintenance#16 similarity index 100% rename from projects/packages/forms/changelog/renovate-wordpress-monorepo rename to projects/plugins/inspect/changelog/renovate-lock-file-maintenance#16 diff --git a/projects/plugins/protect/changelog/prerelease#5 b/projects/plugins/inspect/changelog/renovate-lock-file-maintenance#17 similarity index 100% rename from projects/plugins/protect/changelog/prerelease#5 rename to projects/plugins/inspect/changelog/renovate-lock-file-maintenance#17 diff --git a/projects/packages/jitm/changelog/renovate-wordpress-monorepo b/projects/plugins/inspect/changelog/renovate-wordpress-monorepo#22 similarity index 100% rename from projects/packages/jitm/changelog/renovate-wordpress-monorepo rename to projects/plugins/inspect/changelog/renovate-wordpress-monorepo#22 diff --git a/projects/plugins/inspect/composer.lock b/projects/plugins/inspect/composer.lock index b1d46c84282c9..97bd9880bb999 100644 --- a/projects/plugins/inspect/composer.lock +++ b/projects/plugins/inspect/composer.lock @@ -889,16 +889,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -941,9 +941,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -1384,16 +1384,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -1408,7 +1408,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -1467,7 +1467,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -1483,7 +1483,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -2503,16 +2503,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -2576,7 +2576,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -2592,7 +2592,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2981,16 +2981,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -3022,7 +3022,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -3038,7 +3038,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -3125,16 +3125,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -3192,7 +3192,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -3208,7 +3208,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/inspect/package.json b/projects/plugins/inspect/package.json index 60462cab2bfba..1fc9e2849fb1e 100644 --- a/projects/plugins/inspect/package.json +++ b/projects/plugins/inspect/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-node-resolve": "15.3.0", "@rollup/plugin-terser": "0.4.3", "@rollup/plugin-typescript": "12.1.0", - "@wordpress/i18n": "5.8.2", + "@wordpress/i18n": "5.9.0", "postcss": "8.4.31", "rollup": "3.29.5", "rollup-plugin-livereload": "2.0.5", diff --git a/projects/plugins/jetpack/CHANGELOG.md b/projects/plugins/jetpack/CHANGELOG.md index 93b3441d8106d..69f50357e0587 100644 --- a/projects/plugins/jetpack/CHANGELOG.md +++ b/projects/plugins/jetpack/CHANGELOG.md @@ -2,6 +2,90 @@ ### This is a list detailing changes for all Jetpack releases. +## 14.0-a.7 - 2024-10-21 +### Enhancements +- Newsletters: Add an email preview option to the preview menu. [#39782] +- Newsletters: Allow skipping newsletter modals with a URL query param. [#39644] + +### Improved compatibility +- General: Ensure notice displays without errors when running an old version of WordPress. [#39745] +- Plugin action links filters: Update parameter to avoid conflicts with other plugins. [#39681] + +### Bug fixes +- Map Block: Fix issue where blocks placed underneath would overlap with the map block. [#39744] +- Newsletters: Fix "Use excerpt" setting. [#39815] + +### Other changes +- Map Block: Display a static map image when the block is rendered in a pattern preview. [#39768] +- Map: Remove preview attribute. [#39768] +- Newsletters: Fix 'class Jetpack_Subscriptions_Widget not found' fatal error during REST API. [#39765] +- Slideshow Block: Fix console warning related to images with the same key. [#39821] +- Story Block: Avoid error when previewing block styles in development version of the Gutenberg plugin. [#39807] +- Story Block: Fix console warning related to 'key' not being a prop. [#39822] +- Tests: Fix unit tests. [#39799] +- Update VideoPress notice URL on Media Library. [#39731] + +## 14.0-a.5 - 2024-10-16 +### Other changes +- Related Posts: refine how related posts are made available on singular views in block themes. [#39784] + +## 14.0-a.3 - 2024-10-14 +### Enhancements +- Newsletter: Update the default "reply to" setting value from not allowed to replies being posted as public comments. [#39657] +- Social: Add Bluesky to social previews. [#39659] + +### Improved compatibility +- Image CDN: URL encode image path parts for RSS feed compatibility. [#39560] +- Related Posts: Allow Related Posts on non-post CPTs where the block is already able to be used. [#39730] + +### Bug fixes +- Blocks: Fix rendering of the goodreads block to avoid PHP warnings caused by missing attributes. [#39713] +- Blocks: Render the slideshow block correctly inside an iframe editor. [#39551] +- Contact Form: Ensure that submitted forms can only be accessed by logged in users allowed to view form submissions. [#39759] +- General: Only include `wp-polyfill` as a script dependency when needed. [#39629] +- Newsletter: Ensure `Enable featured image on your new post emails` setting displays the right value. [#39700] +- Sharing: Ensure the sharing settings can be accessed even when a user is not connected to WordPress.com. [#39677] +- Stats: Fix top post card on the Insight page. [#39691] + +### Other changes +- Add connection nudge for blocks that are missing it. [#39647] +- Add missing deps in calls to the `useSelect` React hook. [#39421] +- Add tracks to connection banner. [#39732] +- AI Assistant: Make Breve no longer flag single quotes as spelling errors. [#39735] +- Fix issue where connection banner was showing for simple sites. [#39687] +- Infinite-scroll: Add isset checks to validate input data. [#39618] +- Janitorial: Add siteFragment to JP initial state definition, avoid linter warnings. [#39589] +- Jetpack AI: Change constant value for fair usage, accept both values on type definitions. [#39705] +- JSON Endpoints: Handle null input for update post endpoint. [#39676] +- Optimize the 'admin_init' hook callback for Sharing module. [#39737] +- SAL_Site class: Add null check to posts_status_obj to avoid warnings. [#39727] +- Show connection nudge instead of error if user is not connected on blogroll block. [#39638] +- Update package dependencies. [#39649] [#39653] [#39707] +- Use React setState instead of directly modifying state. [#39421] +- Widget Visibility: Add check to ensure post exists before accesing post_author. [#39746] + +## 14.0-a.1 - 2024-10-07 +### Enhancements +- Sitemap: Improve sitemap write efficienty. [#39572] +- CSS: Rely esclusively on individual CSS files instead of a combined one for the features used on each page to improve page loading. [#39518] +- Social: Add support for Bluesky 🎉. [#39561] +- Scan: Update Jetpack Scan link in the WP Admin menu. [#39619] + +### Bug fixes +- Social: Prevent text overflow in the share status tooltip. [#39599] + +### Other changes +- Admin menu: Adding tests to check for 'current' class when menu item selected. [#39374] +- Blogging Prompt: Preserve language on answers link. [#36730] +- Email preview modal: Improve error state visuals. [#39476] +- Unify connection nudge design on Jetpack Settings. [#39591] +- Unify connection related CTAs on At A Glance. [#39585] +- Updated package dependencies. [#39594] [#39639] + +## 13.9.1 - 2024-10-14 +### Bug fixes +- Contact Form: Ensure that submitted forms can only be accessed by logged in users allowed to view form submissions. [#39759] + ## 13.9 - 2024-10-01 ### Major Enhancements - Jetpack plugin: Remove the 'WordPress.com Toolbar' module. [#39406] diff --git a/projects/plugins/jetpack/_inc/client/at-a-glance/scan.jsx b/projects/plugins/jetpack/_inc/client/at-a-glance/scan.jsx index 1ef907170e4d4..6c83008a0ed63 100644 --- a/projects/plugins/jetpack/_inc/client/at-a-glance/scan.jsx +++ b/projects/plugins/jetpack/_inc/client/at-a-glance/scan.jsx @@ -307,8 +307,10 @@ class DashScan extends Component { return ( <> { renderActiveCard( [ -

      { numberFormat( numberOfThreats ) }

      , -

      +

      + { numberFormat( numberOfThreats ) } +

      , +

      { createInterpolateElement( _n( 'Security threat found. Click here to fix them immediately.', diff --git a/projects/plugins/jetpack/_inc/client/components/connection-banner/index.jsx b/projects/plugins/jetpack/_inc/client/components/connection-banner/index.jsx index 4db3220126164..8377340f5ac7a 100644 --- a/projects/plugins/jetpack/_inc/client/components/connection-banner/index.jsx +++ b/projects/plugins/jetpack/_inc/client/components/connection-banner/index.jsx @@ -28,7 +28,7 @@ export class ConnectionBanner extends React.Component { ] } + actions={ [ ] } > { description } diff --git a/projects/plugins/jetpack/_inc/client/components/select-dropdown/label.jsx b/projects/plugins/jetpack/_inc/client/components/select-dropdown/label.jsx index a9a7aed5447d9..f036fa305e223 100644 --- a/projects/plugins/jetpack/_inc/client/components/select-dropdown/label.jsx +++ b/projects/plugins/jetpack/_inc/client/components/select-dropdown/label.jsx @@ -1,6 +1,6 @@ /** @ssr-ready **/ /* eslint-disable jsx-a11y/click-events-have-key-events */ -/* eslint-disable jsx-a11y/label-has-for */ +/* eslint-disable jsx-a11y/label-has-associated-control */ import React from 'react'; diff --git a/projects/plugins/jetpack/_inc/client/newsletter/email-settings.jsx b/projects/plugins/jetpack/_inc/client/newsletter/email-settings.jsx index dace9b829595a..8e10bede84d67 100644 --- a/projects/plugins/jetpack/_inc/client/newsletter/email-settings.jsx +++ b/projects/plugins/jetpack/_inc/client/newsletter/email-settings.jsx @@ -410,32 +410,32 @@ const EmailSettings = props => {

      - { __( 'Replies are not allowed', 'jetpack' ) } + { __( 'Replies will be a public comment on the post', 'jetpack' ) } ), - value: 'no-reply', + value: 'comment', }, { label: ( - { __( 'Replies will be a public comment on the post', 'jetpack' ) } + { __( "Replies will be sent to the post author's email", 'jetpack' ) } ), - value: 'comment', + value: 'author', }, { label: ( - { __( "Replies will be sent to the post author's email", 'jetpack' ) } + { __( 'Replies are not allowed', 'jetpack' ) } ), - value: 'author', + value: 'no-reply', }, ] } onChange={ handleSubscriptionReplyToChange } diff --git a/projects/plugins/jetpack/_inc/client/newsletter/subscriptions-settings.jsx b/projects/plugins/jetpack/_inc/client/newsletter/subscriptions-settings.jsx index 6f12121a00c07..984e585d74163 100644 --- a/projects/plugins/jetpack/_inc/client/newsletter/subscriptions-settings.jsx +++ b/projects/plugins/jetpack/_inc/client/newsletter/subscriptions-settings.jsx @@ -38,6 +38,7 @@ function SubscriptionsSettings( props ) { isStcEnabled, isSmEnabled, isSubscribeOverlayEnabled, + isSubscribeFloatingEnabled, isSubscribePostEndEnabled, isLoginNavigationEnabled, isSubscribeNavigationEnabled, @@ -69,6 +70,15 @@ function SubscriptionsSettings( props ) { } ) : null; + const subscribeFloatingEditorUrl = + siteAdminUrl && themeStylesheet + ? addQueryArgs( `${ siteAdminUrl }site-editor.php`, { + postType: 'wp_template_part', + postId: `${ themeStylesheet }//jetpack-subscribe-floating-button`, + canvas: 'edit', + } ) + : null; + const singlePostTemplateEditorUrl = siteAdminUrl ? addQueryArgs( `${ siteAdminUrl }site-editor.php`, { postType: 'wp_template', @@ -99,6 +109,13 @@ function SubscriptionsSettings( props ) { updateFormStateModuleOption( SUBSCRIPTIONS_MODULE_NAME, 'jetpack_subscribe_overlay_enabled' ); }, [ updateFormStateModuleOption ] ); + const handleSubscribeFloatingToggleChange = useCallback( () => { + updateFormStateModuleOption( + SUBSCRIPTIONS_MODULE_NAME, + 'jetpack_subscribe_floating_button_enabled' + ); + }, [ updateFormStateModuleOption ] ); + const handleSubscribePostEndToggleChange = useCallback( () => { updateFormStateModuleOption( SUBSCRIPTIONS_MODULE_NAME, @@ -202,6 +219,25 @@ function SubscriptionsSettings( props ) { } /> + + { __( "Floating subscribe button on site's bottom corner", 'jetpack' ) } + { isBlockTheme && subscribeFloatingEditorUrl && ( + <> + { '. ' } + + { __( 'Preview and edit', 'jetpack' ) } + + + ) } + + } + /> { isSubscriptionSiteEditSupported && ( @@ -293,6 +329,9 @@ export default withModuleSettingsFormHelpers( isStcEnabled: ownProps.getOptionValue( 'stc_enabled' ), isSmEnabled: ownProps.getOptionValue( 'sm_enabled' ), isSubscribeOverlayEnabled: ownProps.getOptionValue( 'jetpack_subscribe_overlay_enabled' ), + isSubscribeFloatingEnabled: ownProps.getOptionValue( + 'jetpack_subscribe_floating_button_enabled' + ), isSubscribePostEndEnabled: ownProps.getOptionValue( 'jetpack_subscriptions_subscribe_post_end_enabled' ), diff --git a/projects/plugins/jetpack/_inc/client/traffic/site-stats.jsx b/projects/plugins/jetpack/_inc/client/traffic/site-stats.jsx index 754e3e60a3b86..d470b21fa4a7a 100644 --- a/projects/plugins/jetpack/_inc/client/traffic/site-stats.jsx +++ b/projects/plugins/jetpack/_inc/client/traffic/site-stats.jsx @@ -121,7 +121,7 @@ class SiteStatsComponent extends React.Component { countRoles ) ) { - this.state[ `count_roles_${ role }` ] = includes( countRoles, role, false ); + this.setState( { [ `count_roles_${ role }` ]: includes( countRoles, role, false ) } ); } } ); } @@ -136,7 +136,7 @@ class SiteStatsComponent extends React.Component { if ( ! [ 'administrator', 'editor', 'author', 'subscriber', 'contributor' ].includes( role ) ) { - this.state[ `roles_${ role }` ] = includes( roles, role, false ); + this.setState( { [ `roles_${ role }` ]: includes( roles, role, false ) } ); } } ); } 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 9bf346ba9ce09..e56d427c0c5ea 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 @@ -33,6 +33,8 @@ // Each of these is a class that will register its own routes on 'rest_api_init'. require_once JETPACK__PLUGIN_DIR . '_inc/lib/core-api/load-wpcom-endpoints.php'; +require_once JETPACK__PLUGIN_DIR . 'modules/subscriptions/class-settings.php'; + /** * Class Jetpack_Core_Json_Api_Endpoints * @@ -2254,7 +2256,7 @@ public static function get_updateable_data_list( $selector = '' ) { $options = array( // Blocks. - 'jetpack_blocks_disabled' => array( + 'jetpack_blocks_disabled' => array( 'description' => esc_html__( 'Jetpack Blocks disabled.', 'jetpack' ), 'type' => 'boolean', 'default' => false, @@ -2263,7 +2265,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Carousel - 'carousel_background_color' => array( + 'carousel_background_color' => array( 'description' => esc_html__( 'Color scheme.', 'jetpack' ), 'type' => 'string', 'default' => 'black', @@ -2278,7 +2280,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'validate_callback' => __CLASS__ . '::validate_list_item', 'jp_group' => 'carousel', ), - 'carousel_display_exif' => array( + 'carousel_display_exif' => array( 'description' => wp_kses( sprintf( __( 'Show photo metadata (Exif) in carousel, when available.', 'jetpack' ) ), array( @@ -2293,7 +2295,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'carousel', ), - 'carousel_display_comments' => array( + 'carousel_display_comments' => array( 'description' => esc_html__( 'Show comments area in carousel', 'jetpack' ), 'type' => 'boolean', 'default' => 1, @@ -2302,14 +2304,14 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Comments. - 'highlander_comment_form_prompt' => array( + 'highlander_comment_form_prompt' => array( 'description' => esc_html__( 'Greeting Text', 'jetpack' ), 'type' => 'string', 'default' => esc_html__( 'Leave a Reply', 'jetpack' ), 'sanitize_callback' => 'sanitize_text_field', 'jp_group' => 'comments', ), - 'jetpack_comment_form_color_scheme' => array( + 'jetpack_comment_form_color_scheme' => array( 'description' => esc_html__( 'Color scheme', 'jetpack' ), 'type' => 'string', 'default' => 'light', @@ -2328,28 +2330,28 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Custom Content Types. - 'jetpack_portfolio' => array( + 'jetpack_portfolio' => array( 'description' => esc_html__( 'Enable or disable Jetpack portfolio post type.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'custom-content-types', ), - 'jetpack_portfolio_posts_per_page' => array( + 'jetpack_portfolio_posts_per_page' => array( 'description' => esc_html__( 'Number of entries to show at most in Portfolio pages.', 'jetpack' ), 'type' => 'integer', 'default' => 10, 'validate_callback' => __CLASS__ . '::validate_posint', 'jp_group' => 'custom-content-types', ), - 'jetpack_testimonial' => array( + 'jetpack_testimonial' => array( 'description' => esc_html__( 'Enable or disable Jetpack testimonial post type.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'custom-content-types', ), - 'jetpack_testimonial_posts_per_page' => array( + 'jetpack_testimonial_posts_per_page' => array( 'description' => esc_html__( 'Number of entries to show at most in Testimonial pages.', 'jetpack' ), 'type' => 'integer', 'default' => 10, @@ -2358,21 +2360,21 @@ public static function get_updateable_data_list( $selector = '' ) { ), // WAF. - 'jetpack_waf_automatic_rules' => array( + 'jetpack_waf_automatic_rules' => array( 'description' => esc_html__( 'Enable automatic rules - Protect your site against untrusted traffic sources with automatic security rules.', 'jetpack' ), 'type' => 'boolean', 'default' => Waf_Compatibility::get_default_automatic_rules_option(), 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'waf', ), - 'jetpack_waf_ip_block_list_enabled' => array( + 'jetpack_waf_ip_block_list_enabled' => array( 'description' => esc_html__( 'Block list - Block a specific request IP.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'waf', ), - 'jetpack_waf_ip_block_list' => array( + 'jetpack_waf_ip_block_list' => array( 'description' => esc_html__( 'Blocked IP addresses', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2380,14 +2382,14 @@ public static function get_updateable_data_list( $selector = '' ) { 'sanitize_callback' => 'esc_textarea', 'jp_group' => 'waf', ), - 'jetpack_waf_ip_allow_list_enabled' => array( + 'jetpack_waf_ip_allow_list_enabled' => array( 'description' => esc_html__( 'Allow list - Allow a specific request IP.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'settings', ), - 'jetpack_waf_ip_allow_list' => array( + 'jetpack_waf_ip_allow_list' => array( 'description' => esc_html__( 'Always allowed IP addresses', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2395,14 +2397,14 @@ public static function get_updateable_data_list( $selector = '' ) { 'sanitize_callback' => 'esc_textarea', 'jp_group' => 'settings', ), - 'jetpack_waf_share_data' => array( + 'jetpack_waf_share_data' => array( 'description' => esc_html__( 'Share basic data with Jetpack.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'waf', ), - 'jetpack_waf_share_debug_data' => array( + 'jetpack_waf_share_debug_data' => array( 'description' => esc_html__( 'Share detailed data with Jetpack.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2410,7 +2412,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'jp_group' => 'waf', ), // Galleries. - 'tiled_galleries' => array( + 'tiled_galleries' => array( 'description' => esc_html__( 'Display all your gallery pictures in a cool mosaic.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2418,7 +2420,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'jp_group' => 'tiled-gallery', ), - 'gravatar_disable_hovercards' => array( + 'gravatar_disable_hovercards' => array( 'description' => esc_html__( "View people's profiles when you mouse over their Gravatars", 'jetpack' ), 'type' => 'string', 'default' => 'enabled', @@ -2436,14 +2438,14 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Infinite Scroll. - 'infinite_scroll' => array( + 'infinite_scroll' => array( 'description' => esc_html__( 'To infinity and beyond', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'infinite-scroll', ), - 'infinite_scroll_google_analytics' => array( + 'infinite_scroll_google_analytics' => array( 'description' => esc_html__( 'Use Google Analytics with Infinite Scroll', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2452,7 +2454,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Likes. - 'wpl_default' => array( + 'wpl_default' => array( 'description' => esc_html__( 'WordPress.com Likes are', 'jetpack' ), 'type' => 'string', 'default' => 'on', @@ -2467,7 +2469,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'validate_callback' => __CLASS__ . '::validate_list_item', 'jp_group' => 'likes', ), - 'social_notifications_like' => array( + 'social_notifications_like' => array( 'description' => esc_html__( 'Send email notification when someone likes a post', 'jetpack' ), 'type' => 'boolean', 'default' => 1, @@ -2476,14 +2478,14 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Markdown. - 'wpcom_publish_comments_with_markdown' => array( + 'wpcom_publish_comments_with_markdown' => array( 'description' => esc_html__( 'Use Markdown for comments.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'markdown', ), - 'wpcom_publish_posts_with_markdown' => array( + 'wpcom_publish_posts_with_markdown' => array( 'description' => esc_html__( 'Use Markdown for posts.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2492,7 +2494,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Monitor. - 'monitor_receive_notifications' => array( + 'monitor_receive_notifications' => array( 'description' => esc_html__( 'Receive Monitor Email Notifications.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2501,7 +2503,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Post by Email. - 'post_by_email_address' => array( + 'post_by_email_address' => array( 'description' => esc_html__( 'Email Address', 'jetpack' ), 'type' => 'string', 'default' => 'noop', @@ -2522,14 +2524,14 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Protect. - 'jetpack_protect_key' => array( + 'jetpack_protect_key' => array( 'description' => esc_html__( 'Protect API key', 'jetpack' ), 'type' => 'string', 'default' => '', 'validate_callback' => __CLASS__ . '::validate_alphanum', 'jp_group' => 'protect', ), - 'jetpack_protect_global_whitelist' => array( + 'jetpack_protect_global_whitelist' => array( 'description' => esc_html__( 'Protect global IP allow list', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2539,7 +2541,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Sharing. - 'sharing_services' => array( + 'sharing_services' => array( 'description' => esc_html__( 'Enabled Services and those hidden behind a button', 'jetpack' ), 'type' => 'object', 'default' => array( @@ -2549,7 +2551,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'validate_callback' => __CLASS__ . '::validate_services', 'jp_group' => 'sharedaddy', ), - 'button_style' => array( + 'button_style' => array( 'description' => esc_html__( 'Button Style', 'jetpack' ), 'type' => 'string', 'default' => 'icon', @@ -2568,7 +2570,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'validate_callback' => __CLASS__ . '::validate_list_item', 'jp_group' => 'sharedaddy', ), - 'sharing_label' => array( + 'sharing_label' => array( 'description' => esc_html__( 'Sharing Label', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2576,7 +2578,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'sanitize_callback' => 'esc_html', 'jp_group' => 'sharedaddy', ), - 'show' => array( + 'show' => array( 'description' => esc_html__( 'Views where buttons are shown', 'jetpack' ), 'type' => 'array', 'items' => array( @@ -2586,7 +2588,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'validate_callback' => __CLASS__ . '::validate_sharing_show', 'jp_group' => 'sharedaddy', ), - 'jetpack-twitter-cards-site-tag' => array( + 'jetpack-twitter-cards-site-tag' => array( 'description' => esc_html__( "The Twitter username of the owner of this site's domain.", 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2594,14 +2596,14 @@ public static function get_updateable_data_list( $selector = '' ) { 'sanitize_callback' => 'esc_html', 'jp_group' => 'sharedaddy', ), - 'sharedaddy_disable_resources' => array( + 'sharedaddy_disable_resources' => array( 'description' => esc_html__( 'Disable CSS and JS', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'sharedaddy', ), - 'custom' => array( + 'custom' => array( 'description' => esc_html__( 'Custom sharing services added by user.', 'jetpack' ), 'type' => 'object', 'default' => array( @@ -2613,7 +2615,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'jp_group' => 'sharedaddy', ), // Not an option, but an action that can be performed on the list of custom services passing the service ID. - 'sharing_delete_service' => array( + 'sharing_delete_service' => array( 'description' => esc_html__( 'Delete custom sharing service.', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2622,14 +2624,14 @@ public static function get_updateable_data_list( $selector = '' ) { ), // SSO. - 'jetpack_sso_require_two_step' => array( + 'jetpack_sso_require_two_step' => array( 'description' => esc_html__( 'Require Two-Step Authentication', 'jetpack' ), 'type' => 'boolean', 'default' => SSO\Helpers::is_require_two_step_checkbox_disabled(), 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'sso', ), - 'jetpack_sso_match_by_email' => array( + 'jetpack_sso_match_by_email' => array( 'description' => esc_html__( 'Match by Email', 'jetpack' ), 'type' => 'boolean', 'default' => 1, @@ -2638,97 +2640,104 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Subscriptions. - 'stb_enabled' => array( + 'stb_enabled' => array( 'description' => esc_html__( "Show a 'follow blog' option in the comment form", 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'stc_enabled' => array( + 'stc_enabled' => array( 'description' => esc_html__( "Show a 'follow comments' option in the comment form", 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'wpcom_newsletter_categories' => array( + 'wpcom_newsletter_categories' => array( 'description' => esc_html__( 'Array of post category ids that are marked as newsletter categories', 'jetpack' ), 'type' => 'array', 'default' => array(), 'validate_callback' => __CLASS__ . '::validate_array', 'jp_group' => 'subscriptions', ), - 'wpcom_newsletter_categories_enabled' => array( + 'wpcom_newsletter_categories_enabled' => array( 'description' => esc_html__( 'Whether the newsletter categories are enabled or not', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'wpcom_featured_image_in_email' => array( + 'wpcom_featured_image_in_email' => array( 'description' => esc_html__( 'Whether to include the featured image in the email or not', 'jetpack' ), 'type' => 'boolean', - 'default' => 1, + 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'jetpack_gravatar_in_email' => array( + 'jetpack_gravatar_in_email' => array( 'description' => esc_html__( 'Whether to show author avatar in the email byline', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'jetpack_author_in_email' => array( + 'jetpack_author_in_email' => array( 'description' => esc_html__( 'Whether to show author display name in the email byline', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'jetpack_post_date_in_email' => array( + 'jetpack_post_date_in_email' => array( 'description' => esc_html__( 'Whether to show date in the email byline', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'wpcom_subscription_emails_use_excerpt' => array( + 'wpcom_subscription_emails_use_excerpt' => array( 'description' => esc_html__( 'Whether to use the excerpt in the email or not', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'jetpack_subscriptions_reply_to' => array( + 'jetpack_subscriptions_reply_to' => array( 'description' => esc_html__( 'Reply to email behaviour for newsletters emails', 'jetpack' ), 'type' => 'string', - 'default' => 'no-reply', + 'default' => Automattic\Jetpack\Modules\Subscriptions\Settings::$default_reply_to, 'validate_callback' => __CLASS__ . '::validate_subscriptions_reply_to', 'jp_group' => 'subscriptions', ), - 'jetpack_subscriptions_from_name' => array( + 'jetpack_subscriptions_from_name' => array( 'description' => esc_html__( 'From name for newsletters emails', 'jetpack' ), 'type' => 'string', 'default' => '', 'validate_callback' => __CLASS__ . '::validate_subscriptions_reply_to_name', 'jp_group' => 'subscriptions', ), - 'sm_enabled' => array( + 'sm_enabled' => array( 'description' => esc_html__( 'Show popup Subscribe modal to readers.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'jetpack_subscribe_overlay_enabled' => array( + 'jetpack_subscribe_overlay_enabled' => array( 'description' => esc_html__( 'Show subscribe overlay on homepage.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), + 'jetpack_subscribe_floating_button_enabled' => array( + 'description' => esc_html__( 'Show a floating subscribe button.', 'jetpack' ), + 'type' => 'boolean', + 'default' => 0, + 'validate_callback' => __CLASS__ . '::validate_boolean', + 'jp_group' => 'subscriptions', + ), 'jetpack_subscriptions_subscribe_post_end_enabled' => array( 'description' => esc_html__( 'Add Subscribe block at the end of each post.', 'jetpack' ), 'type' => 'boolean', @@ -2750,14 +2759,14 @@ public static function get_updateable_data_list( $selector = '' ) { 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'social_notifications_subscribe' => array( + 'social_notifications_subscribe' => array( 'description' => esc_html__( 'Send email notification when someone subscribes to my blog', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'subscriptions', ), - 'subscription_options' => array( + 'subscription_options' => array( 'description' => esc_html__( 'Three options used in subscription email templates: \'invitation\', \'welcome\' and \'comment_follow\'.', 'jetpack' ), 'type' => 'object', 'default' => array( @@ -2770,14 +2779,14 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Related Posts. - 'show_headline' => array( + 'show_headline' => array( 'description' => esc_html__( 'Highlight related content with a heading', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'related-posts', ), - 'show_thumbnails' => array( + 'show_thumbnails' => array( 'description' => esc_html__( 'Show a thumbnail image where available', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2786,7 +2795,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Search. - 'instant_search_enabled' => array( + 'instant_search_enabled' => array( 'description' => esc_html__( 'Enable Instant Search', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2794,7 +2803,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'jp_group' => 'search', ), - 'has_jetpack_search_product' => array( + 'has_jetpack_search_product' => array( 'description' => esc_html__( 'Has an active Jetpack Search product purchase', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2802,7 +2811,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'jp_group' => 'settings', ), - 'search_auto_config' => array( + 'search_auto_config' => array( 'description' => esc_html__( 'Trigger an auto config of instant search', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2811,35 +2820,35 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Verification Tools. - 'google' => array( + 'google' => array( 'description' => esc_html__( 'Google Search Console', 'jetpack' ), 'type' => 'string', 'default' => '', 'validate_callback' => __CLASS__ . '::validate_verification_service', 'jp_group' => 'verification-tools', ), - 'bing' => array( + 'bing' => array( 'description' => esc_html__( 'Bing Webmaster Center', 'jetpack' ), 'type' => 'string', 'default' => '', 'validate_callback' => __CLASS__ . '::validate_verification_service', 'jp_group' => 'verification-tools', ), - 'pinterest' => array( + 'pinterest' => array( 'description' => esc_html__( 'Pinterest Site Verification', 'jetpack' ), 'type' => 'string', 'default' => '', 'validate_callback' => __CLASS__ . '::validate_verification_service', 'jp_group' => 'verification-tools', ), - 'yandex' => array( + 'yandex' => array( 'description' => esc_html__( 'Yandex Site Verification', 'jetpack' ), 'type' => 'string', 'default' => '', 'validate_callback' => __CLASS__ . '::validate_verification_service', 'jp_group' => 'verification-tools', ), - 'facebook' => array( + 'facebook' => array( 'description' => esc_html__( 'Facebook Domain Verification', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2848,70 +2857,70 @@ public static function get_updateable_data_list( $selector = '' ) { ), // WordAds. - 'enable_header_ad' => array( + 'enable_header_ad' => array( 'description' => esc_html__( 'Display an ad unit at the top of each page.', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_approved' => array( + 'wordads_approved' => array( 'description' => esc_html__( 'Is site approved for WordAds?', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_second_belowpost' => array( + 'wordads_second_belowpost' => array( 'description' => esc_html__( 'Display second ad below post?', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_inline_enabled' => array( + 'wordads_inline_enabled' => array( 'description' => esc_html__( 'Display inline ad within post content?', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_display_front_page' => array( + 'wordads_display_front_page' => array( 'description' => esc_html__( 'Display ads on the front page?', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_display_post' => array( + 'wordads_display_post' => array( 'description' => esc_html__( 'Display ads on posts?', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_display_page' => array( + 'wordads_display_page' => array( 'description' => esc_html__( 'Display ads on pages?', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_display_archive' => array( + 'wordads_display_archive' => array( 'description' => esc_html__( 'Display ads on archive pages?', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_custom_adstxt_enabled' => array( + 'wordads_custom_adstxt_enabled' => array( 'description' => esc_html__( 'Custom ads.txt', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_custom_adstxt' => array( + 'wordads_custom_adstxt' => array( 'description' => esc_html__( 'Custom ads.txt entries', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2919,14 +2928,14 @@ public static function get_updateable_data_list( $selector = '' ) { 'sanitize_callback' => 'sanitize_textarea_field', 'jp_group' => 'wordads', ), - 'wordads_ccpa_enabled' => array( + 'wordads_ccpa_enabled' => array( 'description' => esc_html__( 'Enable support for California Consumer Privacy Act', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'wordads', ), - 'wordads_ccpa_privacy_policy_url' => array( + 'wordads_ccpa_privacy_policy_url' => array( 'description' => esc_html__( 'Privacy Policy URL', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2934,7 +2943,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'sanitize_callback' => 'sanitize_text_field', 'jp_group' => 'wordads', ), - 'wordads_cmp_enabled' => array( + 'wordads_cmp_enabled' => array( 'description' => esc_html__( 'Enable GDPR Consent Management Banner for WordAds', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -2943,7 +2952,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Google Analytics. - 'google_analytics_tracking_id' => array( + 'google_analytics_tracking_id' => array( 'description' => esc_html__( 'Google Analytics', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -2952,21 +2961,21 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Stats. - 'admin_bar' => array( + 'admin_bar' => array( 'description' => esc_html__( 'Include a small chart in your admin bar with a 48-hour traffic snapshot.', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'stats', ), - 'enable_odyssey_stats' => array( + 'enable_odyssey_stats' => array( 'description' => esc_html__( 'Preview the new Jetpack Stats experience (Experimental).', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'stats', ), - 'roles' => array( + 'roles' => array( 'description' => esc_html__( 'Select the roles that will be able to view stats reports.', 'jetpack' ), 'type' => 'array', 'items' => array( @@ -2977,7 +2986,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'sanitize_callback' => __CLASS__ . '::sanitize_stats_allowed_roles', 'jp_group' => 'stats', ), - 'count_roles' => array( + 'count_roles' => array( 'description' => esc_html__( 'Count the page views of registered users who are logged in.', 'jetpack' ), 'type' => 'array', 'items' => array( @@ -2987,28 +2996,28 @@ public static function get_updateable_data_list( $selector = '' ) { 'validate_callback' => __CLASS__ . '::validate_stats_roles', 'jp_group' => 'stats', ), - 'blog_id' => array( + 'blog_id' => array( 'description' => esc_html__( 'Blog ID.', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'stats', ), - 'do_not_track' => array( + 'do_not_track' => array( 'description' => esc_html__( 'Do not track.', 'jetpack' ), 'type' => 'boolean', 'default' => 1, 'validate_callback' => __CLASS__ . '::validate_boolean', 'jp_group' => 'stats', ), - 'version' => array( + 'version' => array( 'description' => esc_html__( 'Version.', 'jetpack' ), 'type' => 'integer', 'default' => 9, 'validate_callback' => __CLASS__ . '::validate_posint', 'jp_group' => 'stats', ), - 'collapse_nudges' => array( + 'collapse_nudges' => array( 'description' => esc_html__( 'Collapse upgrade nudges', 'jetpack' ), 'type' => 'boolean', 'default' => 0, @@ -3017,7 +3026,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Whether to share stats views with WordPress.com Reader. - 'wpcom_reader_views_enabled' => array( + 'wpcom_reader_views_enabled' => array( 'description' => esc_html__( 'Show post views in the WordPress.com Reader.', 'jetpack' ), 'type' => 'boolean', 'default' => 1, @@ -3026,7 +3035,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Akismet - Not a module, but a plugin. The options can be passed and handled differently. - 'akismet_show_user_comments_approved' => array( + 'akismet_show_user_comments_approved' => array( 'description' => '', 'type' => 'boolean', 'default' => 0, @@ -3034,7 +3043,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'jp_group' => 'settings', ), - 'wordpress_api_key' => array( + 'wordpress_api_key' => array( 'description' => '', 'type' => 'string', 'default' => '', @@ -3043,7 +3052,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Empty stats card dismiss. - 'dismiss_empty_stats_card' => array( + 'dismiss_empty_stats_card' => array( 'description' => '', 'type' => 'boolean', 'default' => 0, @@ -3052,7 +3061,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Backup Getting Started card on dashboard. - 'dismiss_dash_backup_getting_started' => array( + 'dismiss_dash_backup_getting_started' => array( 'description' => '', 'type' => 'boolean', 'default' => 0, @@ -3061,7 +3070,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // Agencies Learn More card on dashboard. - 'dismiss_dash_agencies_learn_more' => array( + 'dismiss_dash_agencies_learn_more' => array( 'description' => '', 'type' => 'boolean', 'default' => 0, @@ -3069,7 +3078,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'jp_group' => 'settings', ), - 'lang_id' => array( + 'lang_id' => array( 'description' => esc_html__( 'Primary language for the site.', 'jetpack' ), 'type' => 'string', 'default' => 'en_US', @@ -3077,7 +3086,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // SEO Tools. - 'advanced_seo_front_page_description' => array( + 'advanced_seo_front_page_description' => array( 'description' => esc_html__( 'Front page meta description.', 'jetpack' ), 'type' => 'string', 'default' => '', @@ -3085,7 +3094,7 @@ public static function get_updateable_data_list( $selector = '' ) { 'jp_group' => 'seo-tools', ), - 'advanced_seo_title_formats' => array( + 'advanced_seo_title_formats' => array( 'description' => esc_html__( 'SEO page title structures.', 'jetpack' ), 'type' => 'object', 'default' => array( @@ -3101,7 +3110,7 @@ public static function get_updateable_data_list( $selector = '' ) { ), // VideoPress. - 'videopress_private_enabled_for_site' => array( + 'videopress_private_enabled_for_site' => array( 'description' => esc_html__( 'Video Privacy: Restrict views to members of this site', 'jetpack' ), 'type' => 'boolean', 'default' => 0, 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 b9d8d14c028f9..9aa7ab1f03673 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 @@ -952,7 +952,7 @@ public function update_data( $request ) { require_once JETPACK__PLUGIN_DIR . 'modules/subscriptions/class-settings.php'; $sub_value = Automattic\Jetpack\Modules\Subscriptions\Settings::is_valid_reply_to( $value ) ? $value - : Automattic\Jetpack\Modules\Subscriptions\Settings::get_default_reply_to(); + : Automattic\Jetpack\Modules\Subscriptions\Settings::$default_reply_to; $updated = (string) get_option( $option ) !== (string) $sub_value ? update_option( $option, $sub_value ) : true; break; @@ -966,6 +966,7 @@ public function update_data( $request ) { case 'stc_enabled': case 'sm_enabled': case 'jetpack_subscribe_overlay_enabled': + case 'jetpack_subscribe_floating_button_enabled': case 'wpcom_newsletter_categories_enabled': case 'wpcom_featured_image_in_email': case 'jetpack_gravatar_in_email': diff --git a/projects/plugins/jetpack/_inc/lib/icalendar-reader.php b/projects/plugins/jetpack/_inc/lib/icalendar-reader.php index 572b85c45cb3e..11b728c3a4545 100644 --- a/projects/plugins/jetpack/_inc/lib/icalendar-reader.php +++ b/projects/plugins/jetpack/_inc/lib/icalendar-reader.php @@ -147,13 +147,13 @@ public function apply_timezone_offset( $events ) { $start_time = preg_replace( '/Z$/', '', $event['DTSTART'] ); $start_time = new DateTime( $start_time, $this->timezone ); $start_time->setTimeZone( $timezone ); - - $end_time = preg_replace( '/Z$/', '', $event['DTEND'] ); - $end_time = new DateTime( $end_time, $this->timezone ); - $end_time->setTimeZone( $timezone ); - $event['DTSTART'] = $start_time->format( 'YmdHis\Z' ); - $event['DTEND'] = $end_time->format( 'YmdHis\Z' ); + if ( isset( $event['DTEND'] ) ) { + $end_time = preg_replace( '/Z$/', '', $event['DTEND'] ); + $end_time = new DateTime( $end_time, $this->timezone ); + $end_time->setTimeZone( $timezone ); + $event['DTEND'] = $end_time->format( 'YmdHis\Z' ); + } } $offsetted_events[] = $event; @@ -231,9 +231,9 @@ protected function filter_past_and_recurring_events( $events ) { // Process events with RRULE before other events. $rrule = isset( $event['RRULE'] ) ? $event['RRULE'] : false; - $uid = $event['UID']; + $uid = isset( $event['UID'] ) ? $event['UID'] : false; - if ( $rrule && ! in_array( $uid, $set_recurring_events, true ) ) { + if ( $rrule && $uid && ! in_array( $uid, $set_recurring_events, true ) ) { // Break down the RRULE into digestible chunks. $rrule_array = array(); diff --git a/projects/plugins/jetpack/changelog/ b/projects/plugins/jetpack/changelog/ deleted file mode 100644 index b49c0a2c00caf..0000000000000 --- a/projects/plugins/jetpack/changelog/ +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: enhancement - -Make sitemap storing more efficient but not querying the full post content when storing the updated sitemap diff --git a/projects/plugins/jetpack/changelog/add-bluesky-connection-ui b/projects/plugins/jetpack/changelog/add-bluesky-connection-ui deleted file mode 100644 index 71c41429a8617..0000000000000 --- a/projects/plugins/jetpack/changelog/add-bluesky-connection-ui +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: enhancement - -Social: Added support for Bluesky 🎉 diff --git a/projects/plugins/jetpack/changelog/add-floating-subscribe-button b/projects/plugins/jetpack/changelog/add-floating-subscribe-button new file mode 100644 index 0000000000000..80566f7f8a5b2 --- /dev/null +++ b/projects/plugins/jetpack/changelog/add-floating-subscribe-button @@ -0,0 +1,4 @@ +Significance: minor +Type: enhancement + +Subscriptions: add a floating subscribe button diff --git a/projects/plugins/jetpack/changelog/add-jetpack-admin-menu-tests b/projects/plugins/jetpack/changelog/add-jetpack-admin-menu-tests deleted file mode 100644 index c4b94cf2b7ff3..0000000000000 --- a/projects/plugins/jetpack/changelog/add-jetpack-admin-menu-tests +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Admin menu: Adding tests to check for 'current' class when menu item selected. diff --git a/projects/plugins/jetpack/changelog/add-jetpack-ai-logo-generator-styles-instructions b/projects/plugins/jetpack/changelog/add-jetpack-ai-logo-generator-styles-instructions new file mode 100644 index 0000000000000..9c813a1ba3abf --- /dev/null +++ b/projects/plugins/jetpack/changelog/add-jetpack-ai-logo-generator-styles-instructions @@ -0,0 +1,4 @@ +Significance: patch +Type: other + +Jetpack AI: add instructions on to-test file diff --git a/projects/plugins/jetpack/changelog/add-nice-fatal-message b/projects/plugins/jetpack/changelog/add-nice-fatal-message deleted file mode 100644 index 70f2483520a3d..0000000000000 --- a/projects/plugins/jetpack/changelog/add-nice-fatal-message +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: other -Comment: Just adding a nicer error message that would only display in dev environments. - - diff --git a/projects/plugins/jetpack/changelog/change-jetpack-ai-fetch-error-retry-optional b/projects/plugins/jetpack/changelog/change-jetpack-ai-fetch-error-retry-optional new file mode 100644 index 0000000000000..38baa75852ac8 --- /dev/null +++ b/projects/plugins/jetpack/changelog/change-jetpack-ai-fetch-error-retry-optional @@ -0,0 +1,4 @@ +Significance: patch +Type: other + +Jetpack AI: remove reload handler for logo generator modal call diff --git a/projects/plugins/jetpack/changelog/fix-social-share-status-tooltip-text-overflow b/projects/plugins/jetpack/changelog/fix-social-share-status-tooltip-text-overflow deleted file mode 100644 index c45f928f60d33..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-social-share-status-tooltip-text-overflow +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -Social: Fixed share status tooltip text overflow diff --git a/projects/plugins/jetpack/changelog/fix-upload-media-endpoint-fatal b/projects/plugins/jetpack/changelog/fix-upload-media-endpoint-fatal new file mode 100644 index 0000000000000..1a93173ded991 --- /dev/null +++ b/projects/plugins/jetpack/changelog/fix-upload-media-endpoint-fatal @@ -0,0 +1,4 @@ +Significance: patch +Type: other + +WPCOM_JSON_API_Upload_Media_v1_1_Endpoint: Fix Fatals from uploads with invalid media type diff --git a/projects/plugins/jetpack/changelog/preserve-language-on-answers-link b/projects/plugins/jetpack/changelog/preserve-language-on-answers-link deleted file mode 100644 index 9d9b3089bf2c0..0000000000000 --- a/projects/plugins/jetpack/changelog/preserve-language-on-answers-link +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Blogging Prompt: preserve language on answers link diff --git a/projects/plugins/jetpack/changelog/remove-imploding-css-code b/projects/plugins/jetpack/changelog/remove-imploding-css-code deleted file mode 100644 index 75864f8829492..0000000000000 --- a/projects/plugins/jetpack/changelog/remove-imploding-css-code +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: enhancement - -Removed the option to use a combined CSS file for Jetpack features. Previous to Jetpack 13.9, this was the default behavior. In Jetpack 13.9, it was made optional to rely on individual CSS files for the features used on each page to improve page loading. diff --git a/projects/plugins/jetpack/changelog/renovate-photon-4.x b/projects/plugins/jetpack/changelog/renovate-photon-4.x deleted file mode 100644 index 1eaea6a769e84..0000000000000 --- a/projects/plugins/jetpack/changelog/renovate-photon-4.x +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Updated package dependencies. diff --git a/projects/plugins/jetpack/changelog/renovate-wordpress-monorepo b/projects/plugins/jetpack/changelog/revert-39658-update-jetpack-sync-whitelist similarity index 52% rename from projects/plugins/jetpack/changelog/renovate-wordpress-monorepo rename to projects/plugins/jetpack/changelog/revert-39658-update-jetpack-sync-whitelist index 1eaea6a769e84..760eebb59c7fe 100644 --- a/projects/plugins/jetpack/changelog/renovate-wordpress-monorepo +++ b/projects/plugins/jetpack/changelog/revert-39658-update-jetpack-sync-whitelist @@ -1,4 +1,5 @@ Significance: patch Type: other +Comment: Update unit tests + -Updated package dependencies. diff --git a/projects/plugins/jetpack/changelog/settings-disable-inactive-elements b/projects/plugins/jetpack/changelog/settings-disable-inactive-elements deleted file mode 100644 index 2a3b4dbdd7f48..0000000000000 --- a/projects/plugins/jetpack/changelog/settings-disable-inactive-elements +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: other -Comment: Disable controls that require user connection. - - diff --git a/projects/plugins/jetpack/changelog/update-at-a-glance-unify-connection-ctas b/projects/plugins/jetpack/changelog/update-at-a-glance-unify-connection-ctas deleted file mode 100644 index af2f73b816a2b..0000000000000 --- a/projects/plugins/jetpack/changelog/update-at-a-glance-unify-connection-ctas +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Unify connection related CTAs on At A Glance diff --git a/projects/plugins/jetpack/changelog/update-e2e-encryption-key b/projects/plugins/jetpack/changelog/update-e2e-encryption-key deleted file mode 100644 index e24693901dddf..0000000000000 --- a/projects/plugins/jetpack/changelog/update-e2e-encryption-key +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -e2e tests: update encryption key. diff --git a/projects/plugins/jetpack/changelog/update-email-preview-error-styles b/projects/plugins/jetpack/changelog/update-email-preview-error-styles deleted file mode 100644 index e97bcd728ea1f..0000000000000 --- a/projects/plugins/jetpack/changelog/update-email-preview-error-styles +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: other - -Email preview modal: visually improved error state diff --git a/projects/plugins/jetpack/changelog/update-fix-warning-attachnment-src-shortcodes-module b/projects/plugins/jetpack/changelog/update-fix-warning-attachnment-src-shortcodes-module deleted file mode 100644 index b563983a8a262..0000000000000 --- a/projects/plugins/jetpack/changelog/update-fix-warning-attachnment-src-shortcodes-module +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: other -Comment: Minor check to avoid Warnings - - diff --git a/projects/plugins/jetpack/changelog/update-floating-subscribe-button-source b/projects/plugins/jetpack/changelog/update-floating-subscribe-button-source new file mode 100644 index 0000000000000..c31ed74d6a395 --- /dev/null +++ b/projects/plugins/jetpack/changelog/update-floating-subscribe-button-source @@ -0,0 +1,4 @@ +Significance: minor +Type: other + +Floating subscribe button: add source attribute for stats diff --git a/projects/plugins/jetpack/changelog/update-jetpack-scan-link b/projects/plugins/jetpack/changelog/update-jetpack-scan-link deleted file mode 100644 index 8bad6e623b64a..0000000000000 --- a/projects/plugins/jetpack/changelog/update-jetpack-scan-link +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: enhancement - -Update Jetpack Scan link diff --git a/projects/plugins/jetpack/changelog/update-jetpack-settings-connection-nudges b/projects/plugins/jetpack/changelog/update-jetpack-settings-connection-nudges deleted file mode 100644 index 394cbd36b3139..0000000000000 --- a/projects/plugins/jetpack/changelog/update-jetpack-settings-connection-nudges +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Unify connection nudge design on Jetpack Settings diff --git a/projects/plugins/jetpack/changelog/update-narrow-down-stats-bar-hook b/projects/plugins/jetpack/changelog/update-narrow-down-stats-bar-hook new file mode 100644 index 0000000000000..1eff8c83b266e --- /dev/null +++ b/projects/plugins/jetpack/changelog/update-narrow-down-stats-bar-hook @@ -0,0 +1,4 @@ +Significance: patch +Type: other + +Optimize the Stats Admin Bar hook by narrowing down the callback. diff --git a/projects/plugins/jetpack/changelog/update-settings-newsletter-1022-connection-banner b/projects/plugins/jetpack/changelog/update-settings-newsletter-1022-connection-banner deleted file mode 100644 index c7328c94ed65a..0000000000000 --- a/projects/plugins/jetpack/changelog/update-settings-newsletter-1022-connection-banner +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: other -Comment: Updating connetion notice UI and adding it to each Newsletter settings section. - - diff --git a/projects/plugins/jetpack/changelog/update-use-instance-of-for-checking-wp-roles b/projects/plugins/jetpack/changelog/update-use-instance-of-for-checking-wp-roles deleted file mode 100644 index 701ce50fb2866..0000000000000 --- a/projects/plugins/jetpack/changelog/update-use-instance-of-for-checking-wp-roles +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Change done to avoid fatal in wpcom when using v1 endpoint with force wpcom param diff --git a/projects/plugins/jetpack/class.jetpack-gutenberg.php b/projects/plugins/jetpack/class.jetpack-gutenberg.php index 6fa4dd4ed04cf..59aff9e9f95a4 100644 --- a/projects/plugins/jetpack/class.jetpack-gutenberg.php +++ b/projects/plugins/jetpack/class.jetpack-gutenberg.php @@ -562,7 +562,6 @@ public static function load_scripts_as_required( $type, $script_dependencies = a // Enqueue script. $script_relative_path = self::get_blocks_directory() . $type . '/view.js'; $script_deps_path = JETPACK__PLUGIN_DIR . self::get_blocks_directory() . $type . '/view.asset.php'; - $script_dependencies[] = 'wp-polyfill'; $script_dependencies[] = 'jetpack-blocks-assets-base-url'; if ( file_exists( $script_deps_path ) ) { $asset_manifest = include $script_deps_path; diff --git a/projects/plugins/jetpack/class.jetpack.php b/projects/plugins/jetpack/class.jetpack.php index 8cf17c78fa1a0..4f9a306cd26b9 100644 --- a/projects/plugins/jetpack/class.jetpack.php +++ b/projects/plugins/jetpack/class.jetpack.php @@ -3538,12 +3538,8 @@ public function deactivate_dialog( $hook ) { '_inc/build/plugins-page.js', JETPACK__PLUGIN_FILE, array( - 'in_footer' => true, - 'textdomain' => 'jetpack', - 'dependencies' => array( - 'wp-polyfill', - 'wp-components', - ), + 'in_footer' => true, + 'textdomain' => 'jetpack', ) ); Assets::enqueue_script( 'jetpack-plugins-page-js' ); diff --git a/projects/plugins/jetpack/class.json-api-endpoints.php b/projects/plugins/jetpack/class.json-api-endpoints.php index 68e2288596ace..d3a2225cd16aa 100644 --- a/projects/plugins/jetpack/class.json-api-endpoints.php +++ b/projects/plugins/jetpack/class.json-api-endpoints.php @@ -1739,7 +1739,7 @@ public function get_media_item_v1_1( $media_id, $media_item = null, $file = null } $thumbnail_query_data = array(); - if ( function_exists( 'video_is_private' ) && video_is_private( $info ) ) { + if ( ! empty( $info ) && function_exists( 'video_is_private' ) && video_is_private( $info ) ) { $thumbnail_query_data['metadata_token'] = video_generate_auth_token( $info ); } diff --git a/projects/plugins/jetpack/composer.json b/projects/plugins/jetpack/composer.json index f98b874f6bbf3..86d4e58586ca5 100644 --- a/projects/plugins/jetpack/composer.json +++ b/projects/plugins/jetpack/composer.json @@ -102,7 +102,7 @@ "platform": { "ext-intl": "0.0.0" }, - "autoloader-suffix": "f11009ded9fc4592b6a05b61ce272b3c_jetpackⓥ13_9", + "autoloader-suffix": "f11009ded9fc4592b6a05b61ce272b3c_jetpackⓥ14_0_a_7", "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 ddd1ade2bfea1..5df2b3221306d 100644 --- a/projects/plugins/jetpack/composer.lock +++ b/projects/plugins/jetpack/composer.lock @@ -398,7 +398,7 @@ "dist": { "type": "path", "url": "../../packages/blaze", - "reference": "7c5abfdb2bf223c8789349a31dde316983d1709d" + "reference": "57fb7e43c9c75b2dc852691be9ffa36f7884edbf" }, "require": { "automattic/jetpack-assets": "@dev", @@ -426,7 +426,7 @@ "link-template": "https://github.com/automattic/jetpack-blaze/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "0.22.x-dev" + "dev-trunk": "0.23.x-dev" }, "textdomain": "jetpack-blaze", "version-constants": { @@ -1300,7 +1300,7 @@ "dist": { "type": "path", "url": "../../packages/image-cdn", - "reference": "a5b2d15b86d745342dc1de2ed0478e07e29df4ef" + "reference": "63a179625ebed6c7e5d21ddfb1949983e16dda4d" }, "require": { "automattic/jetpack-assets": "@dev", @@ -1323,7 +1323,7 @@ }, "autotagger": true, "branch-alias": { - "dev-trunk": "0.4.x-dev" + "dev-trunk": "0.5.x-dev" }, "textdomain": "jetpack-image-cdn", "version-constants": { @@ -2686,7 +2686,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9e141274ba174502fd591a8edc315c210861155a" + "reference": "ac7496c921263d9ce7eaa77cac67d945c4f30fea" }, "require": { "automattic/jetpack-connection": "@dev", @@ -2719,7 +2719,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "3.13.x-dev" + "dev-trunk": "3.14.x-dev" }, "dependencies": { "test-only": [ @@ -2841,7 +2841,7 @@ "dist": { "type": "path", "url": "../../packages/waf", - "reference": "ff663ecc376384c029150906b6cd29118a231873" + "reference": "44068e3c71aa5634458967a6191535ba25c51639" }, "require": { "automattic/jetpack-connection": "@dev", @@ -2868,7 +2868,7 @@ "link-template": "https://github.com/Automattic/jetpack-waf/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "0.20.x-dev" + "dev-trunk": "0.22.x-dev" } }, "autoload": { @@ -3179,20 +3179,20 @@ "packages-dev": [ { "name": "antecedent/patchwork", - "version": "2.1.28", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/antecedent/patchwork.git", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d" + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antecedent/patchwork/zipball/6b30aff81ebadf0f2feb9268d3e08385cebcc08d", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d", + "url": "https://api.github.com/repos/antecedent/patchwork/zipball/b07d4fb37c3c723c8755122160c089e077d5de65", + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=7.1.0" }, "require-dev": { "phpunit/phpunit": ">=4" @@ -3221,9 +3221,9 @@ ], "support": { "issues": "https://github.com/antecedent/patchwork/issues", - "source": "https://github.com/antecedent/patchwork/tree/2.1.28" + "source": "https://github.com/antecedent/patchwork/tree/2.2.0" }, - "time": "2024-02-06T09:26:11+00:00" + "time": "2024-09-27T16:59:55+00:00" }, { "name": "automattic/jetpack-changelogger", @@ -3539,16 +3539,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -3591,9 +3591,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -4034,16 +4034,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -4058,7 +4058,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -4117,7 +4117,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -4133,7 +4133,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -5153,16 +5153,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -5226,7 +5226,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -5242,7 +5242,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -5631,16 +5631,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -5672,7 +5672,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -5688,7 +5688,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -5775,16 +5775,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -5842,7 +5842,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -5858,7 +5858,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/jetpack/extensions/blocks/ai-assistant/ai-assistant.php b/projects/plugins/jetpack/extensions/blocks/ai-assistant/ai-assistant.php index d61b90b4ee7df..9cae364a75c57 100644 --- a/projects/plugins/jetpack/extensions/blocks/ai-assistant/ai-assistant.php +++ b/projects/plugins/jetpack/extensions/blocks/ai-assistant/ai-assistant.php @@ -197,15 +197,3 @@ function () { } } ); - -/** - * Register the `ai-logo-style-selector-support` extension. - */ -add_action( - 'jetpack_register_gutenberg_extensions', - function () { - if ( apply_filters( 'jetpack_ai_enabled', true ) && apply_filters( 'jetpack_ai_logo_style_selector_enabled', false ) ) { - \Jetpack_Gutenberg::set_extension_available( 'ai-logo-style-selector-support' ); - } - } -); diff --git a/projects/plugins/jetpack/extensions/blocks/ai-assistant/components/connect-prompt/index.tsx b/projects/plugins/jetpack/extensions/blocks/ai-assistant/components/connect-prompt/index.tsx deleted file mode 100644 index a09c7e233010d..0000000000000 --- a/projects/plugins/jetpack/extensions/blocks/ai-assistant/components/connect-prompt/index.tsx +++ /dev/null @@ -1,35 +0,0 @@ -/* - * External dependencies - */ -import { __ } from '@wordpress/i18n'; -/* - * Internal dependencies - */ -import { Nudge } from '../../../../shared/components/upgrade-nudge'; -import useAutosaveAndRedirect from '../../../../shared/use-autosave-and-redirect'; - -const ConnectPrompt = () => { - const checkoutUrl = `${ window?.Jetpack_Editor_Initial_State?.adminUrl }admin.php?page=my-jetpack#/connection`; - const { autosaveAndRedirect, isRedirecting } = useAutosaveAndRedirect( checkoutUrl ); - - const goToCheckoutPage = event => { - autosaveAndRedirect( event ); - }; - - return ( - - ); -}; - -export default ConnectPrompt; diff --git a/projects/plugins/jetpack/extensions/blocks/ai-assistant/components/feedback-control/index.tsx b/projects/plugins/jetpack/extensions/blocks/ai-assistant/components/feedback-control/index.tsx index 7656ae66ca74b..42e3bf61ea97e 100644 --- a/projects/plugins/jetpack/extensions/blocks/ai-assistant/components/feedback-control/index.tsx +++ b/projects/plugins/jetpack/extensions/blocks/ai-assistant/components/feedback-control/index.tsx @@ -14,7 +14,8 @@ function FeedbackControl() { return (
      - + + { __( 'Feedback', 'jetpack' ) }

      { __( 'Your feedback is valuable in our commitment to refine and improve this feature.', diff --git a/projects/plugins/jetpack/extensions/blocks/ai-assistant/edit.js b/projects/plugins/jetpack/extensions/blocks/ai-assistant/edit.js index eecedd8f92044..0184d5ec1022f 100644 --- a/projects/plugins/jetpack/extensions/blocks/ai-assistant/edit.js +++ b/projects/plugins/jetpack/extensions/blocks/ai-assistant/edit.js @@ -26,8 +26,8 @@ import clsx from 'clsx'; */ import UsagePanel from '../../plugins/ai-assistant-plugin/components/usage-panel'; import { USAGE_PANEL_PLACEMENT_BLOCK_SETTINGS_SIDEBAR } from '../../plugins/ai-assistant-plugin/components/usage-panel/types'; +import ConnectBanner from '../../shared/components/connect-banner'; import { PLAN_TYPE_FREE, PLAN_TYPE_UNLIMITED, usePlanType } from '../../shared/use-plan-type'; -import ConnectPrompt from './components/connect-prompt'; import FeedbackControl from './components/feedback-control'; import QuotaExceededMessage, { FairUsageNotice } from './components/quota-exceeded-message'; import ToolbarControls from './components/toolbar-controls'; @@ -305,7 +305,7 @@ export default function AIAssistantEdit( { attributes, setAttributes, clientId, const banner = ( <> { isOverLimit && isSelected && } - { ! connected && } + { ! connected && } ); diff --git a/projects/plugins/jetpack/extensions/blocks/ai-assistant/index.d.ts b/projects/plugins/jetpack/extensions/blocks/ai-assistant/index.d.ts index 68643719c7a9e..b1dcdaa6506dc 100644 --- a/projects/plugins/jetpack/extensions/blocks/ai-assistant/index.d.ts +++ b/projects/plugins/jetpack/extensions/blocks/ai-assistant/index.d.ts @@ -1,5 +1,6 @@ interface Window { Jetpack_Editor_Initial_State: { + siteFragment: string; siteLocale: string; adminUrl: string; available_blocks: { diff --git a/projects/plugins/jetpack/extensions/blocks/ai-chat/components/nudge-connect/index.js b/projects/plugins/jetpack/extensions/blocks/ai-chat/components/nudge-connect/index.js deleted file mode 100644 index fbf17fc5cf115..0000000000000 --- a/projects/plugins/jetpack/extensions/blocks/ai-chat/components/nudge-connect/index.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * External dependencies - */ -import { __ } from '@wordpress/i18n'; -/* - * Internal dependencies - */ -import { Nudge } from '../../../../shared/components/upgrade-nudge'; -import useAutosaveAndRedirect from '../../../../shared/use-autosave-and-redirect'; - -const ConnectPrompt = () => { - const connectUrl = `${ window?.Jetpack_Editor_Initial_State?.adminUrl }admin.php?page=my-jetpack#/connection`; - const { autosaveAndRedirect, isRedirecting } = useAutosaveAndRedirect( connectUrl ); - - if ( window?.Jetpack_Editor_Initial_State?.jetpack?.is_current_user_connected ) { - return null; - } - - const goToCheckoutPage = event => { - autosaveAndRedirect( event ); - }; - - return ( - - ); -}; - -export default ConnectPrompt; diff --git a/projects/plugins/jetpack/extensions/blocks/ai-chat/controls.js b/projects/plugins/jetpack/extensions/blocks/ai-chat/controls.js index 1b6cfb306c694..a28bc1e3a5a95 100644 --- a/projects/plugins/jetpack/extensions/blocks/ai-chat/controls.js +++ b/projects/plugins/jetpack/extensions/blocks/ai-chat/controls.js @@ -1,11 +1,5 @@ import { InspectorAdvancedControls, InspectorControls } from '@wordpress/block-editor'; -import { - BaseControl, - PanelBody, - TextControl, - TextareaControl, - ToggleControl, -} from '@wordpress/components'; +import { PanelBody, TextControl, TextareaControl, ToggleControl } from '@wordpress/components'; import { useEntityProp } from '@wordpress/core-data'; import { __ } from '@wordpress/i18n'; import { DEFAULT_PLACEHOLDER } from './constants'; @@ -26,28 +20,25 @@ export function AiChatControls( { <> - - setAttributes( { placeholder: newPlaceholder } ) } - value={ placeholder } - /> - + placeholder={ DEFAULT_PLACEHOLDER } + onChange={ newPlaceholder => setAttributes( { placeholder: newPlaceholder } ) } + value={ placeholder } + /> - - - + value={ promptOverride } + onChange={ setPromptOverride } + /> - + { ! isUserConnected && }

      + + + ); + } + const errorMessage = recommendationsErrorMessage || subscriptionsErrorMessage; return ( diff --git a/projects/plugins/jetpack/extensions/blocks/donations/deprecated/v1/index.js b/projects/plugins/jetpack/extensions/blocks/donations/deprecated/v1/index.js index 8ab02b08bd877..1525af2e507ab 100644 --- a/projects/plugins/jetpack/extensions/blocks/donations/deprecated/v1/index.js +++ b/projects/plugins/jetpack/extensions/blocks/donations/deprecated/v1/index.js @@ -121,7 +121,7 @@ export default {
      { oneTimeDonation.amounts.map( amount => ( -
      +
      { formatCurrency( amount, currency ) }
      ) ) } @@ -129,7 +129,7 @@ export default { { monthlyDonation.show && (
      { monthlyDonation.amounts.map( amount => ( -
      +
      { formatCurrency( amount, currency ) }
      ) ) } @@ -138,7 +138,7 @@ export default { { annualDonation.show && (
      { annualDonation.amounts.map( amount => ( -
      +
      { formatCurrency( amount, currency ) }
      ) ) } diff --git a/projects/plugins/jetpack/extensions/blocks/donations/edit.js b/projects/plugins/jetpack/extensions/blocks/donations/edit.js index 4339c7f902121..d62de15ecadbd 100644 --- a/projects/plugins/jetpack/extensions/blocks/donations/edit.js +++ b/projects/plugins/jetpack/extensions/blocks/donations/edit.js @@ -3,9 +3,11 @@ import { useBlockProps } from '@wordpress/block-editor'; import { useDispatch, useSelect } from '@wordpress/data'; import { useState, useEffect } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; +import ConnectBanner from '../../shared/components/connect-banner'; import { StripeNudge } from '../../shared/components/stripe-nudge'; import { SUPPORTED_CURRENCIES } from '../../shared/currencies'; import getConnectUrl from '../../shared/get-connect-url'; +import useIsUserConnected from '../../shared/use-is-user-connected'; import { store as membershipProductsStore } from '../../store/membership-products'; import { STORE_NAME as MEMBERSHIPS_PRODUCTS_STORE } from '../../store/membership-products/constants'; import fetchDefaultProducts from './fetch-default-products'; @@ -20,6 +22,7 @@ const Edit = props => { const blockProps = useBlockProps(); const [ loadingError, setLoadingError ] = useState( '' ); const [ products, setProducts ] = useState( [] ); + const isUserConnected = useIsUserConnected(); const { lockPostSaving, unlockPostSaving } = useDispatch( 'core/editor' ); const post = useSelect( select => select( 'core/editor' ).getCurrentPost(), [] ); @@ -134,7 +137,14 @@ const Edit = props => { let content; - if ( loadingError ) { + if ( ! isUserConnected ) { + content = ( + + ); + } else if ( loadingError ) { content = ; } else if ( stripeConnectUrl ) { // Need to connect Stripe first diff --git a/projects/plugins/jetpack/extensions/blocks/goodreads/goodreads.php b/projects/plugins/jetpack/extensions/blocks/goodreads/goodreads.php index 7f5eafb3c5467..eb5b8c5723fc3 100644 --- a/projects/plugins/jetpack/extensions/blocks/goodreads/goodreads.php +++ b/projects/plugins/jetpack/extensions/blocks/goodreads/goodreads.php @@ -35,19 +35,27 @@ function register_block() { function load_assets( $attr ) { Jetpack_Gutenberg::load_assets_as_required( __DIR__ ); - if ( isset( $attr['link'] ) && isset( $attr['id'] ) ) { - wp_enqueue_script( - 'jetpack-goodreads-' . esc_attr( $attr['id'] ), - esc_url_raw( $attr['link'] ), - array(), - JETPACK__VERSION, - true - ); + if ( isset( $attr['id'] ) ) { + if ( isset( $attr['link'] ) ) { + wp_enqueue_script( + 'jetpack-goodreads-' . esc_attr( $attr['id'] ), + esc_url_raw( $attr['link'] ), + array(), + JETPACK__VERSION, + true + ); + } + + $id = esc_attr( $attr['id'] ); + } else { + $id = ''; } + $classes = esc_attr( Blocks::classes( Blocks::get_block_feature( __DIR__ ), $attr ) ); + return sprintf( '
      ', - esc_attr( $attr['id'] ), - esc_attr( Blocks::classes( Blocks::get_block_feature( __DIR__ ), $attr ) ) + $id, + $classes ); } diff --git a/projects/plugins/jetpack/extensions/blocks/map/block.json b/projects/plugins/jetpack/extensions/blocks/map/block.json index 3b537067858e5..eca12d214a760 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/block.json +++ b/projects/plugins/jetpack/extensions/blocks/map/block.json @@ -41,10 +41,6 @@ "type": "string", "default": "red" }, - "preview": { - "type": "boolean", - "default": false - }, "scrollToZoom": { "type": "boolean", "default": false @@ -57,9 +53,5 @@ "default": true } }, - "example": { - "attributes": { - "preview": true - } - } + "example": {} } diff --git a/projects/plugins/jetpack/extensions/blocks/map/component/mapkit.js b/projects/plugins/jetpack/extensions/blocks/map/component/mapkit.js index 37f6a44c57cac..9645139a69a82 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/component/mapkit.js +++ b/projects/plugins/jetpack/extensions/blocks/map/component/mapkit.js @@ -120,6 +120,7 @@ const MapkitComponent = forwardRef( className="wp-block-jetpack-map__gm-container" style={ { height: `${ mapHeight }px`, + position: 'absolute', pointerEvents: isSelected ? 'auto' : 'none', } } >
      diff --git a/projects/plugins/jetpack/extensions/blocks/map/deprecated/v1/index.js b/projects/plugins/jetpack/extensions/blocks/map/deprecated/v1/index.js index f8c69b5889fea..6db6c96f8f530 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/deprecated/v1/index.js +++ b/projects/plugins/jetpack/extensions/blocks/map/deprecated/v1/index.js @@ -40,10 +40,6 @@ const attributes = { type: 'string', default: 'red', }, - preview: { - type: 'boolean', - default: false, - }, scrollToZoom: { type: 'boolean', default: false, diff --git a/projects/plugins/jetpack/extensions/blocks/map/deprecated/v2/index.js b/projects/plugins/jetpack/extensions/blocks/map/deprecated/v2/index.js index 4f10d1c29bf2c..24863901eb331 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/deprecated/v2/index.js +++ b/projects/plugins/jetpack/extensions/blocks/map/deprecated/v2/index.js @@ -41,10 +41,6 @@ const attributes = { type: 'string', default: 'red', }, - preview: { - type: 'boolean', - default: false, - }, scrollToZoom: { type: 'boolean', default: false, diff --git a/projects/plugins/jetpack/extensions/blocks/map/edit.js b/projects/plugins/jetpack/extensions/blocks/map/edit.js index e5758c3475e1f..9d5891bb9e587 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/edit.js +++ b/projects/plugins/jetpack/extensions/blocks/map/edit.js @@ -1,6 +1,11 @@ import { getBlockIconComponent } from '@automattic/jetpack-shared-extension-utils'; import apiFetch from '@wordpress/api-fetch'; -import { BlockControls, InspectorControls, useBlockProps } from '@wordpress/block-editor'; +import { + BlockControls, + InspectorControls, + useBlockProps, + store as blockEditorStore, +} from '@wordpress/block-editor'; import { Button, ExternalLink, @@ -10,7 +15,7 @@ import { ResizableBox, } from '@wordpress/components'; import { compose } from '@wordpress/compose'; -import { withDispatch } from '@wordpress/data'; +import { withDispatch, useSelect } from '@wordpress/data'; import { useEffect, useRef, useState } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import { getActiveStyleName } from '../../shared/block-styles'; @@ -62,11 +67,18 @@ const MapEdit = ( { zoom, mapCenter, markerColor, - preview, mapHeight, showFullscreenButton, } = attributes; + const { isPreviewMode } = useSelect( select => { + const { getSettings } = select( blockEditorStore ); + const settings = getSettings(); + return { + isPreviewMode: settings.__unstableIsPreviewMode, + }; + }, [] ); + const [ addPointVisibility, setAddPointVisibility ] = useState( false ); const [ apiState, setApiState ] = useState( API_STATE_LOADING ); const [ apiKey, setApiKey ] = useState( null ); @@ -223,7 +235,7 @@ const MapEdit = ( { let content; - if ( preview ) { + if ( isPreviewMode ) { const mapStyleObject = styles.find( styleObject => styleObject.name === mapStyle ); content = ( @@ -231,6 +243,7 @@ const MapEdit = ( { {
      ); diff --git a/projects/plugins/jetpack/extensions/blocks/map/editor.scss b/projects/plugins/jetpack/extensions/blocks/map/editor.scss index e482a2e52bb77..91a5291613cef 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/editor.scss +++ b/projects/plugins/jetpack/extensions/blocks/map/editor.scss @@ -44,7 +44,6 @@ } .wp-block-jetpack-map__gm-container { - position: absolute; inset: 0; z-index: 0; } diff --git a/projects/plugins/jetpack/extensions/blocks/map/location-search/mapbox.js b/projects/plugins/jetpack/extensions/blocks/map/location-search/mapbox.js index 75ebd48cb1f37..d17a9dd07354a 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/location-search/mapbox.js +++ b/projects/plugins/jetpack/extensions/blocks/map/location-search/mapbox.js @@ -1,4 +1,4 @@ -import { BaseControl, TextControl } from '@wordpress/components'; +import { TextControl } from '@wordpress/components'; import { Component, createRef } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import Lookup from '../lookup'; @@ -74,10 +74,11 @@ export class MapboxLocationSearch extends Component { const { label } = this.props; return (
      - +
      { ( { isExpanded, listBoxId, activeId, onChange, onKeyDown } ) => ( ) } - +
      ); } diff --git a/projects/plugins/jetpack/extensions/blocks/map/location-search/mapkit.js b/projects/plugins/jetpack/extensions/blocks/map/location-search/mapkit.js index 06ad73be79362..e8a9c7e259052 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/location-search/mapkit.js +++ b/projects/plugins/jetpack/extensions/blocks/map/location-search/mapkit.js @@ -1,4 +1,4 @@ -import { BaseControl, TextControl } from '@wordpress/components'; +import { TextControl } from '@wordpress/components'; import { useEffect, useRef } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import Lookup from '../lookup'; @@ -88,10 +88,11 @@ const MapkitLocationSearch = ( { label, onAddPoint } ) => { return (
      - +
      { ( { isExpanded, listBoxId, activeId, onChange, onKeyDown } ) => ( { /> ) } - +
      ); }; diff --git a/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map.json b/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map.json index ae6191ec05e32..ed5cca43347fc 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map.json +++ b/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map.json @@ -24,7 +24,6 @@ "lat": -43.391304 }, "markerColor": "red", - "preview": false, "scrollToZoom": false, "showFullscreenButton": true }, diff --git a/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map__deprecated-1.json b/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map__deprecated-1.json index 08808d0ba6d41..e549862eab94d 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map__deprecated-1.json +++ b/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map__deprecated-1.json @@ -1,34 +1,33 @@ [ - { - "clientId": "_clientId_0", - "name": "jetpack/map", - "isValid": true, - "attributes": { - "points": [ - { - "placeTitle": "Williams Street", - "title": "Williams Street", - "caption": "15 Williams Street, Kaiapoi, The Pines Beach 7630, New Zealand", - "id": "address.3454160499802812", - "coordinates": { - "longitude": 172.652908, - "latitude": -43.391304 - } - } - ], - "mapDetails": true, - "zoom": 11.765903600711997, - "mapCenter": { - "lng": 172.652908, - "lat": -43.391304 - }, - "markerColor": "red", - "preview": false, - "scrollToZoom": false, - "className": "is-style-black-and-white", - "showFullscreenButton": true - }, - "innerBlocks": [], - "originalContent": "" - } + { + "clientId": "_clientId_0", + "name": "jetpack/map", + "isValid": true, + "attributes": { + "points": [ + { + "placeTitle": "Williams Street", + "title": "Williams Street", + "caption": "15 Williams Street, Kaiapoi, The Pines Beach 7630, New Zealand", + "id": "address.3454160499802812", + "coordinates": { + "longitude": 172.652908, + "latitude": -43.391304 + } + } + ], + "mapDetails": true, + "zoom": 11.765903600711997, + "mapCenter": { + "lng": 172.652908, + "lat": -43.391304 + }, + "markerColor": "red", + "scrollToZoom": false, + "className": "is-style-black-and-white", + "showFullscreenButton": true + }, + "innerBlocks": [], + "originalContent": "" + } ] diff --git a/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map__deprecated-2.json b/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map__deprecated-2.json index c0d4e3407c852..3ce34447e041b 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map__deprecated-2.json +++ b/projects/plugins/jetpack/extensions/blocks/map/test/fixtures/jetpack__map__deprecated-2.json @@ -1,34 +1,33 @@ [ - { - "clientId": "_clientId_0", - "name": "jetpack/map", - "isValid": true, - "attributes": { - "points": [ - { - "placeTitle": "Williams Street", - "title": "Williams Street", - "caption": "15 Williams Street, Kaiapoi, The Pines Beach 7630, New Zealand", - "id": "address.3454160499802812", - "coordinates": { - "longitude": 172.652908, - "latitude": -43.391304 - } - } - ], - "mapDetails": true, - "zoom": 11.765903600711997, - "mapCenter": { - "lng": 172.652908, - "lat": -43.391304 - }, - "markerColor": "red", - "preview": false, - "scrollToZoom": false, - "showFullscreenButton": true, - "className": "is-style-black-and-white" - }, - "innerBlocks": [], - "originalContent": "" - } + { + "clientId": "_clientId_0", + "name": "jetpack/map", + "isValid": true, + "attributes": { + "points": [ + { + "placeTitle": "Williams Street", + "title": "Williams Street", + "caption": "15 Williams Street, Kaiapoi, The Pines Beach 7630, New Zealand", + "id": "address.3454160499802812", + "coordinates": { + "longitude": 172.652908, + "latitude": -43.391304 + } + } + ], + "mapDetails": true, + "zoom": 11.765903600711997, + "mapCenter": { + "lng": 172.652908, + "lat": -43.391304 + }, + "markerColor": "red", + "scrollToZoom": false, + "showFullscreenButton": true, + "className": "is-style-black-and-white" + }, + "innerBlocks": [], + "originalContent": "" + } ] diff --git a/projects/plugins/jetpack/extensions/blocks/opentable/deprecated/v1/index.js b/projects/plugins/jetpack/extensions/blocks/opentable/deprecated/v1/index.js index 129bd2d2d2fa0..04769bbcb9d6a 100644 --- a/projects/plugins/jetpack/extensions/blocks/opentable/deprecated/v1/index.js +++ b/projects/plugins/jetpack/extensions/blocks/opentable/deprecated/v1/index.js @@ -9,7 +9,10 @@ export default { save: ( { attributes: { rid } } ) => ( <> { rid.map( restaurantId => ( - + { `https://www.opentable.com/restref/client/?rid=${ restaurantId }` } ) ) } diff --git a/projects/plugins/jetpack/extensions/blocks/opentable/deprecated/v2/index.js b/projects/plugins/jetpack/extensions/blocks/opentable/deprecated/v2/index.js index 711a6d758de36..5ee05582c47b8 100644 --- a/projects/plugins/jetpack/extensions/blocks/opentable/deprecated/v2/index.js +++ b/projects/plugins/jetpack/extensions/blocks/opentable/deprecated/v2/index.js @@ -21,7 +21,10 @@ export default { save: ( { attributes: { rid } } ) => (
      { rid.map( restaurantId => ( - + { `https://www.opentable.com/restref/client/?rid=${ restaurantId }` } ) ) } diff --git a/projects/plugins/jetpack/extensions/blocks/payment-buttons/edit.js b/projects/plugins/jetpack/extensions/blocks/payment-buttons/edit.js index e2c1a9cdf66ed..8b4e6258e9e22 100644 --- a/projects/plugins/jetpack/extensions/blocks/payment-buttons/edit.js +++ b/projects/plugins/jetpack/extensions/blocks/payment-buttons/edit.js @@ -2,9 +2,12 @@ import { BlockControls, useBlockProps, useInnerBlocksProps } from '@wordpress/bl import { useSelect } from '@wordpress/data'; import { useEffect } from '@wordpress/element'; import { addFilter } from '@wordpress/hooks'; +import { __ } from '@wordpress/i18n'; import clsx from 'clsx'; +import ConnectBanner from '../../shared/components/connect-banner'; import StripeConnectToolbarButton from '../../shared/components/stripe-connect-toolbar-button'; import { StripeNudge } from '../../shared/components/stripe-nudge'; +import useIsUserConnected from '../../shared/use-is-user-connected'; import { store as membershipProductsStore } from '../../store/membership-products'; const ALLOWED_BLOCKS = [ 'jetpack/recurring-payments' ]; @@ -18,6 +21,7 @@ function PaymentButtonsEdit( { clientId, attributes } ) { isApiConnected: isApiStateConnected(), }; } ); + const isUserConnected = useIsUserConnected(); const paymentButtonBlocks = useSelect( select => @@ -71,6 +75,21 @@ function PaymentButtonsEdit( { clientId, attributes } ) { // will then be positioned in relation to this. delete innerBlocksProps.id; delete innerBlocksProps[ 'data-block' ]; + + if ( ! isUserConnected ) { + return ( +
      + +
      + ); + } + return (
      { showStripeConnectAction && ( diff --git a/projects/plugins/jetpack/extensions/blocks/payment-buttons/payment-buttons.php b/projects/plugins/jetpack/extensions/blocks/payment-buttons/payment-buttons.php index ce91746b8e13d..c21c1681c5e69 100644 --- a/projects/plugins/jetpack/extensions/blocks/payment-buttons/payment-buttons.php +++ b/projects/plugins/jetpack/extensions/blocks/payment-buttons/payment-buttons.php @@ -17,13 +17,8 @@ * registration if we need to. */ function register_block() { - if ( ! ( defined( 'IS_WPCOM' ) && IS_WPCOM ) && ! \Jetpack::is_connection_ready() ) { - return; - } - require_once JETPACK__PLUGIN_DIR . '/modules/memberships/class-jetpack-memberships.php'; - if ( \Jetpack_Memberships::is_enabled_jetpack_recurring_payments() && - \Jetpack_Memberships::should_enable_monetize_blocks_in_editor() ) { + if ( \Jetpack_Memberships::should_enable_monetize_blocks_in_editor() ) { Blocks::jetpack_register_block( __DIR__, array( diff --git a/projects/plugins/jetpack/extensions/blocks/payments-intro/edit.js b/projects/plugins/jetpack/extensions/blocks/payments-intro/edit.js index d3d6cab72bc05..e420cf8b41b8f 100644 --- a/projects/plugins/jetpack/extensions/blocks/payments-intro/edit.js +++ b/projects/plugins/jetpack/extensions/blocks/payments-intro/edit.js @@ -5,6 +5,8 @@ import { useDispatch, useSelect } from '@wordpress/data'; import { useEffect, useCallback } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import { get } from 'lodash'; +import ConnectBanner from '../../shared/components/connect-banner'; +import useIsUserConnected from '../../shared/use-is-user-connected'; import PaymentsIntroBlockPicker from './block-picker'; import PaymentsIntroPatternPicker from './pattern-picker'; import defaultVariations from './variations'; @@ -24,6 +26,8 @@ export default function JetpackPaymentsIntroEdit( { name, clientId } ) { }; } ); + const isUserConnected = useIsUserConnected(); + const { replaceBlock, selectBlock, updateSettings } = useDispatch( blockEditorStore ); const maybeMakeBlockVisible = useCallback( @@ -67,7 +71,17 @@ export default function JetpackPaymentsIntroEdit( { name, clientId } ) { let content; - if ( ! hasInnerBlocks && displayVariations ) { + if ( ! isUserConnected ) { + content = ( + + ); + } else if ( ! hasInnerBlocks && displayVariations ) { content = ( select( editorStore ).getCurrentPostType(), [] ); const accessLevel = useAccessLevel( postType ); + const isUserConnected = useIsUserConnected(); const { stripeConnectUrl, hasTierPlans } = useSelect( select => { const { getNewsletterTierProducts, getConnectUrl } = select( 'jetpack/membership-products' ); @@ -43,6 +46,20 @@ function PaywallEdit() { setAccess( value ); } + if ( ! isUserConnected ) { + return ( +
      + +
      + ); + } + const getText = key => { switch ( key ) { case accessOptions.subscribers.key: diff --git a/projects/plugins/jetpack/extensions/blocks/premium-content/edit.js b/projects/plugins/jetpack/extensions/blocks/premium-content/edit.js index 392a25706df91..09ab5a6faf753 100644 --- a/projects/plugins/jetpack/extensions/blocks/premium-content/edit.js +++ b/projects/plugins/jetpack/extensions/blocks/premium-content/edit.js @@ -4,15 +4,16 @@ import { useViewportMatch } from '@wordpress/compose'; import { select, useSelect } from '@wordpress/data'; import { useEffect, useState } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; +import ConnectBanner from '../../shared/components/connect-banner'; import ProductManagementControls from '../../shared/components/product-management-controls'; import { PRODUCT_TYPE_SUBSCRIPTION } from '../../shared/components/product-management-controls/constants'; import { StripeNudge } from '../../shared/components/stripe-nudge'; +import useIsUserConnected from '../../shared/use-is-user-connected'; import { store as membershipProductsStore } from '../../store/membership-products'; import Blocks from './_inc/blocks'; import Context from './_inc/context'; import './editor.scss'; import ViewSelector from './_inc/view-selector'; - /** * Tab definitions * @@ -61,6 +62,7 @@ function Edit( { clientId, isSelected, attributes, setAttributes } ) { const [ selectedTab, selectTab ] = useState( tabs[ WALL_TAB ] ); const blockProps = useBlockProps(); + const isUserConnected = useIsUserConnected(); const setSelectedProductIds = productIds => setAttributes( { selectedPlanIds: productIds } ); @@ -100,6 +102,20 @@ function Edit( { clientId, isSelected, attributes, setAttributes } ) { const isSmallViewport = useViewportMatch( 'medium', '<' ); + if ( ! isUserConnected ) { + return ( +
      + +
      + ); + } + return (
      { ! isPreview && ( diff --git a/projects/plugins/jetpack/extensions/blocks/send-a-message/whatsapp-button/configuration.js b/projects/plugins/jetpack/extensions/blocks/send-a-message/whatsapp-button/configuration.js index 04d9e1b9b6d87..d13a1b460df7d 100644 --- a/projects/plugins/jetpack/extensions/blocks/send-a-message/whatsapp-button/configuration.js +++ b/projects/plugins/jetpack/extensions/blocks/send-a-message/whatsapp-button/configuration.js @@ -75,13 +75,13 @@ export default function WhatsAppButtonConfiguration( { attributes, setAttributes <> + { __( 'Phone Number', 'jetpack' ) } - - setAttributes( { postLinkText: newPostLinkText } ) } - value={ postLinkText } - /> - + placeholder={ __( 'Click here to purchase', 'jetpack' ) } + onChange={ newPostLinkText => setAttributes( { postLinkText: newPostLinkText } ) } + value={ postLinkText } + /> ); } 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 f10b7e37c09de..5ab00fa397164 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 @@ -1,7 +1,6 @@ import { getCurrencyDefaults } from '@automattic/format-currency'; import { InspectorControls } from '@wordpress/block-editor'; import { - BaseControl, Disabled, ExternalLink, PanelBody, @@ -412,22 +411,19 @@ class SimplePaymentsEdit extends Component { renderSettings = () => ( - - - this.props.setAttributes( { postLinkText: newPostLinkText } ) - } - value={ this.props.attributes.postLinkText } - /> - + placeholder={ __( 'Click here to purchase', 'jetpack' ) } + onChange={ newPostLinkText => + this.props.setAttributes( { postLinkText: newPostLinkText } ) + } + value={ this.props.attributes.postLinkText } + /> ); diff --git a/projects/plugins/jetpack/extensions/blocks/slideshow/slideshow.js b/projects/plugins/jetpack/extensions/blocks/slideshow/slideshow.js index 0b231d325fc8c..b3f8575b0f5a8 100644 --- a/projects/plugins/jetpack/extensions/blocks/slideshow/slideshow.js +++ b/projects/plugins/jetpack/extensions/blocks/slideshow/slideshow.js @@ -136,14 +136,14 @@ class Slideshow extends Component { ref={ this.slideshowRef } >
        - { images.map( ( { alt, caption, id, url } ) => ( + { images.map( ( { alt, caption, id, url }, index ) => (
      • { +export const ProgressBullet = ( { + bulletIndex, + playerId, + index, + disabled, + isSelected, + onClick, +} ) => { const progress = useSelect( select => select( 'jetpack/story/player' ).getCurrentSlideProgressPercentage( playerId ), - [] + [ playerId ] ); return ( ( { currentSlideIndex: select( 'jetpack/story/player' ).getCurrentSlideIndex( playerId ), } ), - [] + [ playerId ] ); const bulletCount = Math.min( slides.length, maxBullets ); @@ -63,6 +70,7 @@ export const ProgressBar = ( { playerId, slides, disabled, onSlideSeek, maxBulle return ( { return isPost; }; -// Registers slot/fill panels defined via settings.render and command palette commands +const useNewsletterPreview = () => { + const [ isPreviewModalOpen, setIsPreviewModalOpen ] = useState( false ); + const postId = select( 'core/editor' ).getCurrentPostId(); + const { tracks } = useAnalytics(); + + const openPreviewModal = useCallback( + source => { + setIsPreviewModalOpen( true ); + tracks.recordEvent( 'jetpack_newsletter_preview_opened', { source } ); + }, + [ tracks ] + ); + + const closePreviewModal = useCallback( () => { + setIsPreviewModalOpen( false ); + }, [] ); + + return { isPreviewModalOpen, openPreviewModal, closePreviewModal, postId }; +}; + +const NewsletterEditor = () => { + const { isPreviewModalOpen, openPreviewModal, closePreviewModal, postId } = + useNewsletterPreview(); + + return ( + <> + + { shouldShowNewsletterMenu() && ( + <> + { PluginPreviewMenuItem ? ( + openPreviewModal( 'preview_menu' ) } + icon={ send } + > + { __( 'Email preview', 'jetpack' ) } + + ) : null } + + openPreviewModal( 'newsletter_menu' ) } /> + + ) } + + + ); +}; + registerJetpackPlugin( blockName, { - render: () => { - return ( - <> - - { shouldShowNewsletterMenu() && } - - - ); - }, + render: () => , icon: shouldShowNewsletterMenu() ? atSymbol : undefined, } ); diff --git a/projects/plugins/jetpack/extensions/blocks/subscriptions/menu.js b/projects/plugins/jetpack/extensions/blocks/subscriptions/menu.js index 1a59b55f49177..0258842d68005 100644 --- a/projects/plugins/jetpack/extensions/blocks/subscriptions/menu.js +++ b/projects/plugins/jetpack/extensions/blocks/subscriptions/menu.js @@ -9,11 +9,10 @@ import { META_NAME_FOR_POST_DONT_EMAIL_TO_SUBS } from '../../shared/memberships/ import { useAccessLevel } from '../../shared/memberships/edit'; import { NewsletterEmailDocumentSettings } from '../../shared/memberships/settings'; import SubscribersAffirmation from '../../shared/memberships/subscribers-affirmation'; -import { NewsletterPreviewModal, NewsletterTestEmailModal } from './email-preview'; +import { NewsletterTestEmailModal } from './email-preview'; import { SendIcon } from './icons'; -const NewsletterMenu = () => { - const [ isPreviewModalOpen, setIsPreviewModalOpen ] = useState( false ); +const NewsletterMenu = ( { openPreviewModal } ) => { const [ isTestEmailModalOpen, setIsTestEmailModalOpen ] = useState( false ); const { postId, postType, postStatus, meta } = useSelect( @@ -34,8 +33,6 @@ const NewsletterMenu = () => { const connectUrl = `${ window?.Jetpack_Editor_Initial_State?.adminUrl }admin.php?page=my-jetpack#/connection`; const shouldPromptForConnection = ! isSimpleSite() && ! isUserConnected; - const openPreviewModal = () => setIsPreviewModalOpen( true ); - const closePreviewModal = () => setIsPreviewModalOpen( false ); const openTestEmailModal = () => setIsTestEmailModalOpen( true ); const closeTestEmailModal = () => setIsTestEmailModalOpen( false ); @@ -74,11 +71,6 @@ const NewsletterMenu = () => { { __( 'Send test email', 'jetpack' ) } - { } ); describe( 'Inspector controls', () => { + beforeEach( () => { + window.JetpackScriptData = { + social: { + urls: {}, + }, + }; + } ); describe( 'Gradient settings panel', () => { test( 'displays gradient settings control panel', () => { render( ); diff --git a/projects/plugins/jetpack/extensions/blocks/videopress/edit.js b/projects/plugins/jetpack/extensions/blocks/videopress/edit.js index 2858aa73e53eb..ac008dd090fd4 100644 --- a/projects/plugins/jetpack/extensions/blocks/videopress/edit.js +++ b/projects/plugins/jetpack/extensions/blocks/videopress/edit.js @@ -567,10 +567,10 @@ const VideoPressEdit = CoreVideoEdit => help={ this.getPreloadHelp() } /> - + + + { __( 'Poster Image', 'jetpack' ) } + { value={ title } />
        - + + + { __( 'Video poster (optional)', 'jetpack' ) } + { canDisplayThumbnailScrubber ? ( <>
        diff --git a/projects/plugins/jetpack/extensions/extended-blocks/core-site-logo/index.tsx b/projects/plugins/jetpack/extensions/extended-blocks/core-site-logo/index.tsx index 6fb31d290f74c..6d34c34b5c0ac 100644 --- a/projects/plugins/jetpack/extensions/extended-blocks/core-site-logo/index.tsx +++ b/projects/plugins/jetpack/extensions/extended-blocks/core-site-logo/index.tsx @@ -102,10 +102,10 @@ const siteLogoEditWithAiComponents = createHigherOrderComponent( BlockEdit => { setIsLogoGeneratorModalVisible( false ); }, [] ); - const reloadModal = useCallback( () => { - closeModal(); - showModal(); - }, [ closeModal, showModal ] ); + // const reloadModal = useCallback( () => { + // closeModal(); + // showModal(); + // }, [ closeModal, showModal ] ); const applyLogoHandler = useCallback( ( mediaId: number ) => { @@ -125,8 +125,6 @@ const siteLogoEditWithAiComponents = createHigherOrderComponent( BlockEdit => { const siteDetails = useSiteDetails(); - const styleLogoFeatureEnabled = getFeatureAvailability( 'ai-logo-style-selector-support' ); - return ( <> @@ -137,11 +135,11 @@ const siteLogoEditWithAiComponents = createHigherOrderComponent( BlockEdit => { isOpen={ isLogoGeneratorModalVisible } onClose={ closeModal } onApplyLogo={ applyLogoHandler } - onReload={ reloadModal } + // reload is not working right and can end up showing a non functional modal + // onReload={ reloadModal } context={ PLACEMENT_CONTEXT } placement={ TOOL_PLACEMENT } siteDetails={ siteDetails } - showStyleSelector={ styleLogoFeatureEnabled } /> ); diff --git a/projects/plugins/jetpack/extensions/extended-blocks/paid-blocks/upgrade-plan-banner.jsx b/projects/plugins/jetpack/extensions/extended-blocks/paid-blocks/upgrade-plan-banner.jsx index 3ba5be5facfb1..79d543f142a35 100644 --- a/projects/plugins/jetpack/extensions/extended-blocks/paid-blocks/upgrade-plan-banner.jsx +++ b/projects/plugins/jetpack/extensions/extended-blocks/paid-blocks/upgrade-plan-banner.jsx @@ -48,7 +48,7 @@ const UpgradePlanBanner = ( { return null; }, - [ description ] + [ description, requiredPlan ] ); return ( diff --git a/projects/plugins/jetpack/extensions/extended-blocks/paid-blocks/with-upgrade-banner.jsx b/projects/plugins/jetpack/extensions/extended-blocks/paid-blocks/with-upgrade-banner.jsx index 172336234e376..f1b09dfe29db9 100644 --- a/projects/plugins/jetpack/extensions/extended-blocks/paid-blocks/with-upgrade-banner.jsx +++ b/projects/plugins/jetpack/extensions/extended-blocks/paid-blocks/with-upgrade-banner.jsx @@ -37,7 +37,7 @@ const withUpgradeBanner = createHigherOrderComponent( const bannerContext = 'editor-canvas'; const hasChildrenSelected = useSelect( select => select( 'core/block-editor' ).hasSelectedInnerBlock( clientId, true ), - [] + [ clientId ] ); const { hasParentBanner } = useContext( PaidBlockContext ) || {}; // Banner should be not be displayed if one of its parents is already displaying a banner. diff --git a/projects/plugins/jetpack/extensions/index.json b/projects/plugins/jetpack/extensions/index.json index e20420c0cf2f4..82c0f558c948f 100644 --- a/projects/plugins/jetpack/extensions/index.json +++ b/projects/plugins/jetpack/extensions/index.json @@ -78,8 +78,7 @@ "recipe", "v6-video-frame-poster", "videopress/video-chapters", - "ai-assistant-backend-prompts", - "ai-logo-style-selector-support" + "ai-assistant-backend-prompts" ], "experimental": [], "no-post-editor": [ 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 a7be8feb411de..c3d44c1491ac5 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 @@ -90,28 +90,36 @@ const JetpackAndSettingsContent = ( { { canWriteBriefBeEnabled() && isBreveAvailable && ( - + + + { __( 'Write Brief with AI (BETA)', 'jetpack' ) } + ) } - + + { __( 'AI Feedback', 'jetpack' ) } { isAITitleOptimizationAvailable && ( - + + { titleOptimizationSectionLabel } ) } { isAIFeaturedImageAvailable && ( - + + + { __( 'AI Featured Image', 'jetpack' ) } + diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/features/spelling-mistakes/index.ts b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/features/spelling-mistakes/index.ts index 5caf9fae571d8..44e5ac13094a2 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/features/spelling-mistakes/index.ts +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/features/spelling-mistakes/index.ts @@ -203,6 +203,9 @@ export default function spellingMistakes( text: string ): Array< HighlightedText const subWords = word.split( /[-/]/ ); subWords.forEach( subWord => { + // remove single quotes from beginning/end + subWord = subWord.replace( /^'+|'+$/g, '' ); + if ( ! spellChecker.correct( subWord ) ) { const subWordStartIndex = startIndex + word.indexOf( subWord ); diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/usage-bar/index.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/usage-bar/index.tsx index 769fd3ebffe5a..13499251344f0 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/usage-bar/index.tsx +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/usage-bar/index.tsx @@ -121,7 +121,8 @@ function UsageControl( { ); return ( - + + { __( 'Available Requests', 'jetpack' ) } { ! loading && usageDisplay } { loading && loadingPlaceholder } diff --git a/projects/plugins/jetpack/extensions/plugins/ai-content-lens/components/ai-excerpt-control/index.tsx b/projects/plugins/jetpack/extensions/plugins/ai-content-lens/components/ai-excerpt-control/index.tsx index 8ffcd3bf9b4a9..692c30e32761d 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-content-lens/components/ai-excerpt-control/index.tsx +++ b/projects/plugins/jetpack/extensions/plugins/ai-content-lens/components/ai-excerpt-control/index.tsx @@ -90,10 +90,8 @@ export function AiExcerptControl( { return (
        - + + { __( 'Settings', 'jetpack' ) } - ); -}; - -const FirewallSubheadingContent = ( { className, text = '', popover = false } ) => { - return ( -
        - - { text } - - { popover && ( - - ) } -
        - ); -}; - -const FirewallSubheading = ( { - jetpackWafIpBlockListEnabled, - jetpackWafIpAllowListEnabled, - hasPlan, - automaticRulesAvailable, - jetpackWafAutomaticRules, - bruteForceProtectionIsEnabled, - wafSupported, -} ) => { - const allowOrBlockListEnabled = jetpackWafIpBlockListEnabled || jetpackWafIpAllowListEnabled; - const allRules = wafSupported && jetpackWafAutomaticRules && allowOrBlockListEnabled; - const automaticRules = wafSupported && jetpackWafAutomaticRules && ! allowOrBlockListEnabled; - const manualRules = wafSupported && ! jetpackWafAutomaticRules && allowOrBlockListEnabled; - const noRules = wafSupported && ! jetpackWafAutomaticRules && ! allowOrBlockListEnabled; - - return ( - <> -
        - { wafSupported && bruteForceProtectionIsEnabled && ( - - ) } - { noRules && ( - - ) } - { automaticRules && ( - - ) } - { manualRules && ( - - ) } - { allRules && ( - - ) } -
        - { ! hasPlan && wafSupported && } - - ); -}; - -export default FirewallSubheading; diff --git a/projects/plugins/protect/src/js/components/firewall-header/index.jsx b/projects/plugins/protect/src/js/components/firewall-header/index.jsx deleted file mode 100644 index 09ee0eb92074a..0000000000000 --- a/projects/plugins/protect/src/js/components/firewall-header/index.jsx +++ /dev/null @@ -1,155 +0,0 @@ -import { AdminSectionHero, Container, Col, Text, H3, Status } from '@automattic/jetpack-components'; -import { Spinner } from '@wordpress/components'; -import { __ } from '@wordpress/i18n'; -import usePlan from '../../hooks/use-plan'; -import useWafData from '../../hooks/use-waf-data'; -import FirewallStatCards from './firewall-statcards'; -import FirewallSubheading from './firewall-subheading'; -import styles from './styles.module.scss'; - -const FirewallHeader = ( { - status, - hasPlan, - automaticRulesAvailable, - jetpackWafIpBlockListEnabled, - jetpackWafIpAllowListEnabled, - jetpackWafAutomaticRules, - bruteForceProtectionIsEnabled, - wafSupported, - currentDayStats, - thirtyDaysStats, - standaloneMode, -} ) => { - return ( - - - - { 'on' === status && ( - <> - { ' ' } -

        - { ! wafSupported && __( 'Brute force protection is active', 'jetpack-protect' ) } - { wafSupported && - ( jetpackWafAutomaticRules - ? __( 'Automatic firewall is on', 'jetpack-protect' ) - : __( - 'Firewall is on', - 'jetpack-protect', - /* dummy arg to avoid bad minification */ 0 - ) ) } -

        - - - ) } - { 'off' === status && ( - <> - -

        - { ! wafSupported && __( 'Brute force protection is disabled', 'jetpack-protect' ) } - { wafSupported && - ( automaticRulesAvailable - ? __( 'Automatic firewall is off', 'jetpack-protect' ) - : __( - 'Firewall is off', - 'jetpack-protect', - /* dummy arg to avoid bad minification */ 0 - ) ) } -

        - - - ) } - { 'loading' === status && ( - <> - -

        - { __( 'Automatic firewall is being set up', 'jetpack-protect' ) } -

        - - { __( 'Please wait…', 'jetpack-protect' ) } - - - ) } - - - { wafSupported && ( - - ) } - -
        -
        - ); -}; - -const ConnectedFirewallHeader = () => { - const { - config: { - jetpackWafAutomaticRules, - jetpackWafIpBlockListEnabled, - jetpackWafIpAllowListEnabled, - standaloneMode, - automaticRulesAvailable, - bruteForceProtection, - }, - isToggling, - wafSupported, - stats, - isEnabled, - } = useWafData(); - const { hasPlan } = usePlan(); - const isSupportedWafFeatureEnabled = wafSupported ? isEnabled : bruteForceProtection; - const currentStatus = isSupportedWafFeatureEnabled ? 'on' : 'off'; - const { currentDay: currentDayBlockCount = 0, thirtyDays: thirtyDaysBlockCounts = 0 } = - stats?.blockedRequests || {}; - - return ( - - ); -}; - -export { FirewallHeader }; - -export default ConnectedFirewallHeader; diff --git a/projects/plugins/protect/src/js/components/firewall-header/stories/broken/index.stories.jsx b/projects/plugins/protect/src/js/components/firewall-header/stories/broken/index.stories.jsx deleted file mode 100644 index 7012e9c02321c..0000000000000 --- a/projects/plugins/protect/src/js/components/firewall-header/stories/broken/index.stories.jsx +++ /dev/null @@ -1,93 +0,0 @@ -import React from 'react'; -import { FirewallHeader } from '../../index.jsx'; - -export default { - title: 'Plugins/Protect/Firewall Header', - component: FirewallHeader, -}; - -const Template = args => ; - -export const FirewallOnFree = Template.bind( {} ); -FirewallOnFree.args = { - status: 'on', - hasPlan: false, - automaticRulesAvailable: false, - jetpackWafIpList: true, - jetpackWafAutomaticRules: false, - bruteForceProtectionIsEnabled: true, - wafSupported: true, - currentDayStats: 0, - thirtyDaysStats: 0, - standaloneMode: false, -}; - -export const FirewallOffFree = Template.bind( {} ); -FirewallOffFree.args = { - status: 'off', - hasPlan: false, - automaticRulesAvailable: false, - jetpackWafIpList: false, - jetpackWafAutomaticRules: false, - bruteForceProtectionIsEnabled: false, - wafSupported: true, - currentDayStats: 0, - thirtyDaysStats: 0, - standaloneMode: false, -}; - -export const FirewallOnPaid = Template.bind( {} ); -FirewallOnPaid.args = { - status: 'on', - hasPlan: true, - automaticRulesAvailable: true, - jetpackWafIpList: true, - jetpackWafAutomaticRules: true, - bruteForceProtectionIsEnabled: true, - wafSupported: true, - currentDayStats: 100, - thirtyDaysStats: 30000, - standaloneMode: false, -}; - -export const FirewallOffPaid = Template.bind( {} ); -FirewallOffPaid.args = { - status: 'off', - hasPlan: true, - automaticRulesAvailable: true, - jetpackWafIpList: false, - jetpackWafAutomaticRules: false, - bruteForceProtectionIsEnabled: false, - wafSupported: true, - currentDayStats: 0, - thirtyDaysStats: 0, - standaloneMode: false, -}; - -export const FirewallOnStandalone = Template.bind( {} ); -FirewallOnStandalone.args = { - status: 'on', - hasPlan: true, - automaticRulesAvailable: true, - jetpackWafIpList: true, - jetpackWafAutomaticRules: true, - bruteForceProtectionIsEnabled: true, - wafSupported: true, - currentDayStats: 100, - thirtyDaysStats: 30000, - standaloneMode: true, -}; - -export const FirewallLoading = Template.bind( {} ); -FirewallLoading.args = { - status: 'loading', - hasPlan: true, - automaticRulesAvailable: true, - jetpackWafIpList: false, - jetpackWafAutomaticRules: false, - bruteForceProtectionIsEnabled: false, - wafSupported: true, - currentDayStats: 0, - thirtyDaysStats: 0, - standaloneMode: false, -}; diff --git a/projects/plugins/protect/src/js/components/firewall-header/styles.module.scss b/projects/plugins/protect/src/js/components/firewall-header/styles.module.scss deleted file mode 100644 index ef16a23602243..0000000000000 --- a/projects/plugins/protect/src/js/components/firewall-header/styles.module.scss +++ /dev/null @@ -1,96 +0,0 @@ -svg.spinner { - width: 32px; - height: 32px; - margin: 0; - color: var( --jp-black ); -} - -.popover-text { - width: 250px; - padding: calc( var( --spacing-base ) * 2 ); // 16px -} - -.loading-text { - font-size: 18px; -} - -.firewall-header { - display: flex; - flex-wrap: wrap; - justify-content: space-between; - align-items: center; -} - -.firewall-subheading { - display: flex; - justify-content: flex-start; - flex-wrap: wrap; - align-items: center; - - .brute-force-protection-subheading { - margin-right: calc( var( --spacing-base ) / 2 ); // 4px - } - - &__content { - display: flex; - } -} - -.upgrade-button { - margin-top: calc( var( --spacing-base ) * 4 ); // 32px -} - -.stat-card-wrapper { - display: flex; - margin-left: auto; - flex-wrap: wrap; - - >:first-child { - margin-right: calc( var( --spacing-base ) * 3 ); // 24px - } - - .disabled { - opacity: 0.5; - } -} - -.stat-card-icon { - width: 100%; - margin-bottom: calc( var( --spacing-base ) * 3 ); // 24px - display: flex; - justify-content: space-between; - align-items: center; -} - -.stat-card-label { - white-space: nowrap; -} - -@media ( max-width: 1115px ) { - .firewall-header { - display: inline-block; - } - - .stat-card-wrapper { - margin-top: calc( var( --spacing-base ) * 3 ); // 24px - } -} - -@media ( max-width: 599px ) { - .firewall-heading { - width: 90%; - } - - .stat-card-wrapper { - margin-top: calc( var( --spacing-base ) * 3 ); // 24px - - >:first-child { - margin-right: 0; - margin-bottom: var( --spacing-base ); // 8px - } - } - - .stat-card-icon { - margin-bottom: 0; - } -} diff --git a/projects/plugins/protect/src/js/components/ignore-threat-modal/index.jsx b/projects/plugins/protect/src/js/components/ignore-threat-modal/index.jsx index 67d5f9894d9a2..7e8113b6f38ab 100644 --- a/projects/plugins/protect/src/js/components/ignore-threat-modal/index.jsx +++ b/projects/plugins/protect/src/js/components/ignore-threat-modal/index.jsx @@ -1,10 +1,9 @@ -import { Button, getRedirectUrl, Text } from '@automattic/jetpack-components'; +import { Button, getRedirectUrl, Text, ThreatSeverityBadge } from '@automattic/jetpack-components'; import { createInterpolateElement, useState } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import { Icon } from '@wordpress/icons'; import useIgnoreThreatMutation from '../../data/scan/use-ignore-threat-mutation'; import useModal from '../../hooks/use-modal'; -import ThreatSeverityBadge from '../severity'; import UserConnectionGate from '../user-connection-gate'; import styles from './styles.module.scss'; diff --git a/projects/plugins/protect/src/js/components/logo/index.tsx b/projects/plugins/protect/src/js/components/logo/index.tsx deleted file mode 100644 index 3e02acf06aa5b..0000000000000 --- a/projects/plugins/protect/src/js/components/logo/index.tsx +++ /dev/null @@ -1,96 +0,0 @@ -import { Path, SVG } from '@wordpress/components'; -import React from 'react'; - -type HEXColorType = `#${ string }`; - -type LogoProps = { - iconColor: HEXColorType; - color: HEXColorType; -}; - -/** - * Protect Logo component - * - * @param {object} props - Component props - * @param {HEXColorType} props.color - Text color. - * @param {HEXColorType} props.iconColor - Icon color - * @return {React.ReactElement} Component template - */ -export default function Logo( { - iconColor = '#069E08', - color = '#000', -}: LogoProps ): React.ReactElement { - return ( - - - - - - - - - - - - - - - - - - - - - ); -} diff --git a/projects/plugins/protect/src/js/components/logo/stories/index.stories.tsx b/projects/plugins/protect/src/js/components/logo/stories/index.stories.tsx deleted file mode 100644 index 164640e03eaec..0000000000000 --- a/projects/plugins/protect/src/js/components/logo/stories/index.stories.tsx +++ /dev/null @@ -1,27 +0,0 @@ -import React from 'react'; -import Logo from '..'; - -export default { - title: 'Plugins/Protect/Logo', - component: Logo, - argTypes: { - iconColor: { - control: { - type: 'color', - }, - }, - color: { - control: { - type: 'color', - }, - }, - }, -}; - -const Template = args => ; - -export const _default = Template.bind( {} ); -_default.args = { - iconColor: '#069E08', - color: '#000', -}; diff --git a/projects/plugins/protect/src/js/components/navigation/badge.jsx b/projects/plugins/protect/src/js/components/navigation/badge.jsx index 2552e5a719940..93ebecf7235ef 100644 --- a/projects/plugins/protect/src/js/components/navigation/badge.jsx +++ b/projects/plugins/protect/src/js/components/navigation/badge.jsx @@ -1,9 +1,10 @@ import { Text } from '@automattic/jetpack-components'; -import { Popover } from '@wordpress/components'; +import { Popover, Spinner } from '@wordpress/components'; import { __ } from '@wordpress/i18n'; import { Icon, check, info } from '@wordpress/icons'; import PropTypes from 'prop-types'; -import React, { useState, useCallback } from 'react'; +import React, { useState, useCallback, useMemo } from 'react'; +import useScanStatusQuery, { isScanInProgress } from '../../data/scan/use-scan-status-query'; import styles from './styles.module.scss'; /** @@ -50,12 +51,20 @@ const getBadgeElement = ( count, checked ) => { }; const ItemBadge = ( { count, checked } ) => { + const { data: status } = useScanStatusQuery(); + const { popoverText, badgeElement } = getBadgeElement( count, checked ); const [ showPopover, setShowPopover ] = useState( false ); + const inProgress = useMemo( () => isScanInProgress( status ), [ status ] ); + const handleEnter = useCallback( () => { + if ( inProgress ) { + return; + } + setShowPopover( true ); - }, [] ); + }, [ inProgress ] ); const handleOut = useCallback( () => { setShowPopover( false ); @@ -70,7 +79,7 @@ const ItemBadge = ( { count, checked } ) => { onBlur={ popoverText ? handleOut : null } role="presentation" > - { badgeElement } + { ! inProgress ? badgeElement : } { showPopover && ( diff --git a/projects/plugins/protect/src/js/components/navigation/stories/index.stories.jsx b/projects/plugins/protect/src/js/components/navigation/stories/index.stories.jsx deleted file mode 100644 index 8b9d7765da4fb..0000000000000 --- a/projects/plugins/protect/src/js/components/navigation/stories/index.stories.jsx +++ /dev/null @@ -1,64 +0,0 @@ -import { __ } from '@wordpress/i18n'; -import { wordpress, plugins, warning, color } from '@wordpress/icons'; -import React, { useState } from 'react'; -import Navigation, { NavigationItem, NavigationGroup } from '..'; - -export default { - title: 'Plugins/Protect/Navigation', - component: Navigation, - parameters: { - layout: 'centered', - }, - decorators: [ - Story => ( -
        - -
        - ), - ], -}; - -export const Default = args => { - const [ selected, setSelectedItem ] = useState( args.selected ); - - return ( - - - - - - - - - - - - - ); -}; -Default.args = { - selected: 'all', -}; diff --git a/projects/plugins/protect/src/js/components/navigation/styles.module.scss b/projects/plugins/protect/src/js/components/navigation/styles.module.scss index c533ae1429600..df9e3ef1f8a25 100644 --- a/projects/plugins/protect/src/js/components/navigation/styles.module.scss +++ b/projects/plugins/protect/src/js/components/navigation/styles.module.scss @@ -1,6 +1,5 @@ .navigation { background-color: var( --jp-white ); - padding: var( --spacing-base ) 0; // 8px box-shadow: 0px 0px 40px rgba(0, 0, 0, 0.08); border-radius: var( --jp-border-radius ); margin: 0; diff --git a/projects/plugins/protect/src/js/components/paid-accordion/index.jsx b/projects/plugins/protect/src/js/components/paid-accordion/index.jsx index e1c612f339afc..d4a6fa5d3f0ba 100644 --- a/projects/plugins/protect/src/js/components/paid-accordion/index.jsx +++ b/projects/plugins/protect/src/js/components/paid-accordion/index.jsx @@ -1,4 +1,9 @@ -import { Spinner, Text, useBreakpointMatch } from '@automattic/jetpack-components'; +import { + Spinner, + Text, + ThreatSeverityBadge, + useBreakpointMatch, +} from '@automattic/jetpack-components'; import { ExternalLink } from '@wordpress/components'; import { dateI18n } from '@wordpress/date'; import { createInterpolateElement } from '@wordpress/element'; @@ -9,7 +14,6 @@ import React, { useState, useCallback, useContext, useMemo } from 'react'; import { PAID_PLUGIN_SUPPORT_URL } from '../../constants'; import useFixers from '../../hooks/use-fixers'; import IconTooltip from '../icon-tooltip'; -import ThreatSeverityBadge from '../severity'; import styles from './styles.module.scss'; // Extract context provider for clarity and reusability diff --git a/projects/plugins/protect/src/js/components/progress-bar/index.jsx b/projects/plugins/protect/src/js/components/progress-bar/index.jsx index 056da369be6eb..5a7393905b885 100644 --- a/projects/plugins/protect/src/js/components/progress-bar/index.jsx +++ b/projects/plugins/protect/src/js/components/progress-bar/index.jsx @@ -10,11 +10,7 @@ import styles from './style.module.scss'; * @param {number} props.value - Progress integer * @return {object} ProgressBar React component. */ -const ProgressBar = ( { className, total = 100, value } ) => { - if ( value == null ) { - return null; - } - +const ProgressBar = ( { className, total = 100, value = 0 } ) => { // The percentage should not be allowed to be more than 100 const progress = Math.min( Math.round( ( value / total ) * 100 ), 100 ); diff --git a/projects/plugins/protect/src/js/components/progress-bar/style.module.scss b/projects/plugins/protect/src/js/components/progress-bar/style.module.scss index c26fc6001cba6..a21649a8c3e83 100644 --- a/projects/plugins/protect/src/js/components/progress-bar/style.module.scss +++ b/projects/plugins/protect/src/js/components/progress-bar/style.module.scss @@ -2,7 +2,7 @@ display: flex; justify-content: space-between; align-items: center; - margin-bottom: calc( var( --spacing-base ) * 3 ); // 24px + margin-bottom: calc( var( --spacing-base ) * 2 ); // 16px &__wrapper { width: 100%; diff --git a/projects/plugins/protect/src/js/components/scan-button/index.jsx b/projects/plugins/protect/src/js/components/scan-button/index.jsx index 4844d9e4c060c..9df71f5984cf1 100644 --- a/projects/plugins/protect/src/js/components/scan-button/index.jsx +++ b/projects/plugins/protect/src/js/components/scan-button/index.jsx @@ -1,10 +1,16 @@ import { Button } from '@automattic/jetpack-components'; import { __ } from '@wordpress/i18n'; -import React, { forwardRef } from 'react'; +import React, { forwardRef, useMemo } from 'react'; +import useScanStatusQuery, { isScanInProgress } from '../../data/scan/use-scan-status-query'; import useStartScanMutator from '../../data/scan/use-start-scan-mutation'; const ScanButton = forwardRef( ( { variant = 'secondary', children, ...props }, ref ) => { const startScanMutation = useStartScanMutator(); + const { data: status } = useScanStatusQuery(); + + const disabled = useMemo( () => { + return startScanMutation.isPending || isScanInProgress( status ); + }, [ startScanMutation.isPending, status ] ); const handleScanClick = () => { return event => { @@ -14,7 +20,13 @@ const ScanButton = forwardRef( ( { variant = 'secondary', children, ...props }, }; return ( - ); diff --git a/projects/plugins/protect/src/js/components/scan-footer/stories/broken/index.stories.jsx b/projects/plugins/protect/src/js/components/scan-footer/stories/broken/index.stories.jsx deleted file mode 100644 index 8d43d7daeec49..0000000000000 --- a/projects/plugins/protect/src/js/components/scan-footer/stories/broken/index.stories.jsx +++ /dev/null @@ -1,11 +0,0 @@ -/* eslint-disable react/react-in-jsx-scope */ -import React from 'react'; -import ScanFooter from '../index.jsx'; - -export default { - title: 'Plugins/Protect/Scan Footer', - component: ScanFooter, -}; - -const FooterTemplate = args => ; -export const Default = FooterTemplate.bind( {} ); diff --git a/projects/plugins/protect/src/js/components/scan-footer/styles.module.scss b/projects/plugins/protect/src/js/components/scan-footer/styles.module.scss deleted file mode 100644 index d4249719742ca..0000000000000 --- a/projects/plugins/protect/src/js/components/scan-footer/styles.module.scss +++ /dev/null @@ -1,4 +0,0 @@ -.product-section, .info-section { - margin-top: calc( var( --spacing-base ) * 7 ); // 56px - margin-bottom: calc( var( --spacing-base ) * 7 ); // 56px -} diff --git a/projects/plugins/protect/src/js/routes/scan/scan-section-navigation.jsx b/projects/plugins/protect/src/js/components/scan-navigation/index.jsx similarity index 61% rename from projects/plugins/protect/src/js/routes/scan/scan-section-navigation.jsx rename to projects/plugins/protect/src/js/components/scan-navigation/index.jsx index 400652f9a248d..e626b6af066c7 100644 --- a/projects/plugins/protect/src/js/routes/scan/scan-section-navigation.jsx +++ b/projects/plugins/protect/src/js/components/scan-navigation/index.jsx @@ -1,36 +1,44 @@ import { __ } from '@wordpress/i18n'; import React, { useCallback } from 'react'; import { useLocation, useNavigate } from 'react-router-dom'; -import ButtonGroup from '../../components/button-group'; +import usePlan from '../../hooks/use-plan'; +import ButtonGroup from '../button-group'; /** * Navigation for scan sections. * * @return {React.Element} The React Component. */ -export default function ScanSectionNavigation() { +export default function ScanNavigation() { const navigate = useNavigate(); const location = useLocation(); + const { hasPlan } = usePlan(); + const viewingScanPage = location.pathname === '/scan'; + const viewingHistoryPage = location.pathname.includes( '/scan/history' ); const navigateToScanPage = useCallback( () => navigate( '/scan' ), [ navigate ] ); const navigateToHistoryPage = useCallback( () => navigate( '/scan/history' ), [ navigate ] ); + if ( ! hasPlan || ( ! viewingScanPage && ! viewingHistoryPage ) ) { + return null; + } + return ( -
        + <> { __( 'Scanner', 'jetpack-protect' ) } { __( 'History', 'jetpack-protect' ) } -
        + ); } diff --git a/projects/plugins/protect/src/js/components/seventy-five-layout/index.jsx b/projects/plugins/protect/src/js/components/seventy-five-layout/index.tsx similarity index 56% rename from projects/plugins/protect/src/js/components/seventy-five-layout/index.jsx rename to projects/plugins/protect/src/js/components/seventy-five-layout/index.tsx index 3848d09864ec3..19ee4309e55a5 100644 --- a/projects/plugins/protect/src/js/components/seventy-five-layout/index.jsx +++ b/projects/plugins/protect/src/js/components/seventy-five-layout/index.tsx @@ -1,6 +1,18 @@ import { Container, Col, useBreakpointMatch } from '@automattic/jetpack-components'; import React from 'react'; +// Define the props interface for the SeventyFiveLayout component +interface SeventyFiveLayoutProps { + spacing?: number; + gap?: number; + main: React.ReactNode; + mainClassName?: string; + secondary: React.ReactNode; + secondaryClassName?: string; + preserveSecondaryOnMobile?: boolean; + fluid?: boolean; +} + /** * SeventyFive layout meta component * The component name references to @@ -10,13 +22,27 @@ import React from 'react'; * in large lg viewport size. * * @param {object} props - Component props + * @param {number} props.spacing - Horizontal spacing + * @param {number} props.gap - Horizontal gap * @param {React.ReactNode} props.main - Main section component + * @param {string} props.mainClassName - Main section class name * @param {React.ReactNode} props.secondary - Secondary section component + * @param {string} props.secondaryClassName - Secondary section class name * @param {boolean} props.preserveSecondaryOnMobile - Whether to show secondary section on mobile * @param {boolean} props.fluid - Whether to use fluid layout * @return {React.ReactNode} - React meta-component */ -const SeventyFiveLayout = ( { main, secondary, preserveSecondaryOnMobile = false, fluid } ) => { +const SeventyFiveLayout: React.FC< SeventyFiveLayoutProps > = ( { + spacing = 0, + gap = 0, + main, + mainClassName, + secondary, + secondaryClassName, + preserveSecondaryOnMobile = false, + fluid, +} ) => { + // Ensure the correct typing for useBreakpointMatch const [ isSmall, isLarge ] = useBreakpointMatch( [ 'sm', 'lg' ] ); /* @@ -27,14 +53,14 @@ const SeventyFiveLayout = ( { main, secondary, preserveSecondaryOnMobile = false const hideSecondarySection = ! preserveSecondaryOnMobile && isSmall; return ( - + { ! hideSecondarySection && ( <> - + { main } { isLarge && } - + { secondary } diff --git a/projects/plugins/protect/src/js/components/summary/index.jsx b/projects/plugins/protect/src/js/components/summary/index.jsx deleted file mode 100644 index 3cfa665084fc4..0000000000000 --- a/projects/plugins/protect/src/js/components/summary/index.jsx +++ /dev/null @@ -1,60 +0,0 @@ -import { useBreakpointMatch } from '@automattic/jetpack-components'; -import { dateI18n } from '@wordpress/date'; -import { __, sprintf } from '@wordpress/i18n'; -import React, { useState } from 'react'; -import usePlan from '../../hooks/use-plan'; -import useProtectData from '../../hooks/use-protect-data'; -import ScanSectionHeader from '../../routes/scan/scan-section-header'; -import OnboardingPopover from '../onboarding-popover'; - -const Summary = () => { - const [ isSm ] = useBreakpointMatch( 'sm' ); - const { - counts: { - current: { threats: numThreats }, - }, - lastChecked, - } = useProtectData(); - const { hasPlan } = usePlan(); - - // Convert the last checked UTC date to a local timestamp - const lastCheckedLocalTimestamp = new Date( lastChecked + ' UTC' ).getTime(); - - // Popover anchors - const [ dailyScansPopoverAnchor, setDailyScansPopoverAnchor ] = useState( null ); - - return ( - 0 - ? sprintf( - /* translators: %s: Total number of threats */ - __( '%1$s %2$s found', 'jetpack-protect' ), - numThreats, - numThreats === 1 ? 'threat' : 'threats' - ) - : undefined - } - subtitle={ - <> -
        - { sprintf( - /* translators: %s: Latest check date */ - __( 'Latest results as of %s', 'jetpack-protect' ), - dateI18n( 'F jS', lastCheckedLocalTimestamp ) - ) } -
        - { ! hasPlan && ( - - ) } - - } - /> - ); -}; - -export default Summary; diff --git a/projects/plugins/protect/src/js/components/summary/stories/broken/index.stories.jsx b/projects/plugins/protect/src/js/components/summary/stories/broken/index.stories.jsx deleted file mode 100644 index 45a1779b2468b..0000000000000 --- a/projects/plugins/protect/src/js/components/summary/stories/broken/index.stories.jsx +++ /dev/null @@ -1,9 +0,0 @@ -import React from 'react'; -import Summary from '..'; - -export default { - title: 'Plugins/Protect/Summary', - component: Summary, -}; - -export const Default = args => ; diff --git a/projects/plugins/protect/src/js/components/threat-fix-header/index.jsx b/projects/plugins/protect/src/js/components/threat-fix-header/index.jsx index df748f31c2d06..bc5e0107cea80 100644 --- a/projects/plugins/protect/src/js/components/threat-fix-header/index.jsx +++ b/projects/plugins/protect/src/js/components/threat-fix-header/index.jsx @@ -1,8 +1,7 @@ -import { Text } from '@automattic/jetpack-components'; +import { Text, ThreatSeverityBadge } from '@automattic/jetpack-components'; import { __, sprintf } from '@wordpress/i18n'; import { Icon } from '@wordpress/icons'; import React, { useState, useCallback } from 'react'; -import ThreatSeverityBadge from '../severity'; import styles from './styles.module.scss'; //TODO: Move this to WPCom like we did the other messages? diff --git a/projects/plugins/protect/src/js/components/threats-list/empty.jsx b/projects/plugins/protect/src/js/components/threats-list/empty.jsx index 71053bf4dc92c..2d493b11e64a4 100644 --- a/projects/plugins/protect/src/js/components/threats-list/empty.jsx +++ b/projects/plugins/protect/src/js/components/threats-list/empty.jsx @@ -2,6 +2,7 @@ import { H3, Text } from '@automattic/jetpack-components'; import { createInterpolateElement } from '@wordpress/element'; import { sprintf, __, _n } from '@wordpress/i18n'; import { useMemo, useState } from 'react'; +import useScanStatusQuery, { isScanInProgress } from '../../data/scan/use-scan-status-query'; import usePlan from '../../hooks/use-plan'; import useProtectData from '../../hooks/use-protect-data'; import OnboardingPopover from '../onboarding-popover'; @@ -88,6 +89,7 @@ const timeSince = date => { const EmptyList = () => { const { lastChecked } = useProtectData(); const { hasPlan } = usePlan(); + const { data: status } = useScanStatusQuery(); const [ dailyAndManualScansPopoverAnchor, setDailyAndManualScansPopoverAnchor ] = useState( null ); @@ -103,28 +105,32 @@ const EmptyList = () => { { __( "Don't worry about a thing", 'jetpack-protect' ) } - { createInterpolateElement( - sprintf( - // translators: placeholder is the amount of time since the last scan, i.e. "5 minutes ago". - __( - 'The last Protect scan ran %s and everything looked great.', - 'jetpack-protect' - ), - timeSinceLastScan - ), - { - strong: , - } - ) } + { timeSinceLastScan + ? createInterpolateElement( + sprintf( + // translators: placeholder is the amount of time since the last scan, i.e. "5 minutes ago". + __( + 'The last Protect scan ran %s and everything looked great.', + 'jetpack-protect' + ), + timeSinceLastScan + ), + { + strong: , + } + ) + : __( 'No threats have been detected by the current scan.', 'jetpack-protect' ) } { hasPlan && ( <> -
        diff --git a/projects/plugins/protect/src/js/components/threats-list/index.jsx b/projects/plugins/protect/src/js/components/threats-list/index.jsx index 4b190d53ea6c1..2823a804c1412 100644 --- a/projects/plugins/protect/src/js/components/threats-list/index.jsx +++ b/projects/plugins/protect/src/js/components/threats-list/index.jsx @@ -8,6 +8,7 @@ import { } from '@automattic/jetpack-components'; import { __, sprintf } from '@wordpress/i18n'; import React, { useCallback, useMemo, useState } from 'react'; +import useScanStatusQuery, { isScanInProgress } from '../../data/scan/use-scan-status-query'; import useFixers from '../../hooks/use-fixers'; import useModal from '../../hooks/use-modal'; import usePlan from '../../hooks/use-plan'; @@ -26,6 +27,9 @@ const ThreatsList = () => { const [ isSm ] = useBreakpointMatch( 'sm' ); const { isThreatFixInProgress, isThreatFixStale } = useFixers(); + const { data: status } = useScanStatusQuery(); + const scanning = isScanInProgress( status ); + // List of fixable threats that do not have a fix in progress const fixableList = useMemo( () => { return list.filter( threat => { @@ -39,13 +43,12 @@ const ThreatsList = () => { // Popover anchors const [ yourScanResultsPopoverAnchor, setYourScanResultsPopoverAnchor ] = useState( null ); const [ understandSeverityPopoverAnchor, setUnderstandSeverityPopoverAnchor ] = useState( null ); - - const { setModal } = useModal(); - const [ showAutoFixersPopoverAnchor, setShowAutoFixersPopoverAnchor ] = useState( null ); const [ dailyAndManualScansPopoverAnchor, setDailyAndManualScansPopoverAnchor ] = useState( null ); + const { setModal } = useModal(); + const handleShowAutoFixersClick = threatList => { return event => { event.preventDefault(); @@ -106,11 +109,13 @@ const ThreatsList = () => {
        - + { ! scanning && ( + + ) } { list?.length > 0 ? ( @@ -132,21 +137,23 @@ const ThreatsList = () => { fixableList.length ) } -
        ) }
        @@ -164,11 +171,13 @@ const ThreatsList = () => {
      -
      - } - secondary={ -
      - -
      - } - preserveSecondaryOnMobile={ false } - fluid={ true } - /> - - - ); -}; - -/** - * Scan Results Section - * - * @return {Component} The component. - */ -const ScanResultsSection = () => { - return ( - <> - - - - - - - - ); -}; +import ScanAdminSectionHero from './scan-admin-section-hero'; +import ScanFooter from './scan-footer'; /** * Scan Page @@ -142,7 +19,12 @@ const ScanResultsSection = () => { */ const ScanPage = () => { const { hasPlan } = usePlan(); - const { lastChecked } = useProtectData(); + const { + counts: { + current: { threats: numThreats }, + }, + lastChecked, + } = useProtectData(); const { data: status } = useScanStatusQuery( { usePolling: true } ); let currentScanStatus; @@ -163,28 +45,19 @@ const ScanPage = () => { }, } ); - // Render the appropriate section based on the scan status. - const renderSection = useMemo( () => { - if ( isScanInProgress( status ) ) { - return ; - } - - if ( status.error ) { - return ; - } - - return ; - }, [ status ] ); - return ( - - - - { renderSection } - - + + { ( ! status.error || numThreats ) && ( + + + + + + + + ) } diff --git a/projects/plugins/protect/src/js/routes/scan/scan-admin-section-hero.tsx b/projects/plugins/protect/src/js/routes/scan/scan-admin-section-hero.tsx new file mode 100644 index 0000000000000..60d484cd4a16f --- /dev/null +++ b/projects/plugins/protect/src/js/routes/scan/scan-admin-section-hero.tsx @@ -0,0 +1,109 @@ +import { Text, Status, useBreakpointMatch } from '@automattic/jetpack-components'; +import { dateI18n } from '@wordpress/date'; +import { __, _n, sprintf } from '@wordpress/i18n'; +import { useState } from 'react'; +import AdminSectionHero from '../../components/admin-section-hero'; +import ErrorAdminSectionHero from '../../components/error-admin-section-hero'; +import OnboardingPopover from '../../components/onboarding-popover'; +import ScanNavigation from '../../components/scan-navigation'; +import useScanStatusQuery, { isScanInProgress } from '../../data/scan/use-scan-status-query'; +import usePlan from '../../hooks/use-plan'; +import useProtectData from '../../hooks/use-protect-data'; +import ScanningAdminSectionHero from './scanning-admin-section-hero'; +import styles from './styles.module.scss'; + +const ScanAdminSectionHero: React.FC = () => { + const { hasPlan } = usePlan(); + const [ isSm ] = useBreakpointMatch( 'sm' ); + const { + counts: { + current: { threats: numThreats }, + }, + lastChecked, + } = useProtectData(); + const { data: status } = useScanStatusQuery(); + + // Popover anchor + const [ dailyScansPopoverAnchor, setDailyScansPopoverAnchor ] = useState( null ); + + let lastCheckedLocalTimestamp = null; + if ( lastChecked ) { + // Convert the lastChecked UTC date to a local timestamp + lastCheckedLocalTimestamp = new Date( lastChecked + ' UTC' ).getTime(); + } + + if ( isScanInProgress( status ) ) { + return ; + } + + if ( status.error ) { + return ( + + ); + } + + return ( + + + + { numThreats > 0 + ? sprintf( + /* translators: %s: Total number of threats/vulnerabilities */ + __( '%1$s %2$s found', 'jetpack-protect' ), + numThreats, + hasPlan + ? _n( 'threat', 'threats', numThreats, 'jetpack-protect' ) + : _n( 'vulnerability', 'vulnerabilities', numThreats, 'jetpack-protect' ) + ) + : sprintf( + /* translators: %s: Pluralized type of threat/vulnerability */ + __( 'No %s found', 'jetpack-protect' ), + hasPlan + ? __( 'threats', 'jetpack-protect' ) + : __( + 'vulnerabilities', + 'jetpack-protect', + /* dummy arg to avoid bad minification */ 0 + ) + ) } + + + <> + + { lastCheckedLocalTimestamp ? ( + <> + + { dateI18n( 'F jS g:i A', lastCheckedLocalTimestamp, false ) } + +   + { __( 'results', 'jetpack-protect' ) } + + ) : ( + __( 'Most recent results', 'jetpack-protect' ) + ) } + + { ! hasPlan && ( + + ) } + + +
      + +
      + + } + /> + ); +}; + +export default ScanAdminSectionHero; diff --git a/projects/plugins/protect/src/js/components/scan-footer/index.jsx b/projects/plugins/protect/src/js/routes/scan/scan-footer.jsx similarity index 98% rename from projects/plugins/protect/src/js/components/scan-footer/index.jsx rename to projects/plugins/protect/src/js/routes/scan/scan-footer.jsx index 2c44c97dd899c..56d7ea1c14a7d 100644 --- a/projects/plugins/protect/src/js/components/scan-footer/index.jsx +++ b/projects/plugins/protect/src/js/routes/scan/scan-footer.jsx @@ -9,10 +9,10 @@ import { } from '@automattic/jetpack-components'; import { __, sprintf } from '@wordpress/i18n'; import React, { useCallback } from 'react'; +import SeventyFiveLayout from '../../components/seventy-five-layout'; import useAnalyticsTracks from '../../hooks/use-analytics-tracks'; import usePlan from '../../hooks/use-plan'; import useWafData from '../../hooks/use-waf-data'; -import SeventyFiveLayout from '../seventy-five-layout'; import styles from './styles.module.scss'; const ProductPromotion = () => { diff --git a/projects/plugins/protect/src/js/routes/scan/scan-section-header.tsx b/projects/plugins/protect/src/js/routes/scan/scan-section-header.tsx deleted file mode 100644 index d1196f9bb051b..0000000000000 --- a/projects/plugins/protect/src/js/routes/scan/scan-section-header.tsx +++ /dev/null @@ -1,48 +0,0 @@ -import { Container, Col, Text, Title, getIconBySlug } from '@automattic/jetpack-components'; -import React from 'react'; -import usePlan from '../../hooks/use-plan'; -import ScanSectionNavigation from './scan-section-navigation'; -import styles from './styles.module.scss'; - -type Props = { - title?: string | React.ReactNode; - subtitle?: string | React.ReactNode; - controls?: React.ReactNode; -}; - -const ScanSectionHeader = ( { title, subtitle, controls }: Props ) => { - const Icon = getIconBySlug( 'protect' ); - const { hasPlan } = usePlan(); - - return ( - - -
      -
      - { subtitle && ( - - <Icon size={ 32 } className={ styles[ 'scan-section-header__icon' ] } /> - { subtitle } - - ) } - { title && ( - - { title } - - ) } - { !! hasPlan && } -
      -
      -
      { controls }
      -
      -
      - -
      - ); -}; - -export default ScanSectionHeader; diff --git a/projects/plugins/protect/src/js/routes/scan/scanning-admin-section-hero.tsx b/projects/plugins/protect/src/js/routes/scan/scanning-admin-section-hero.tsx new file mode 100644 index 0000000000000..49e99696cc4e0 --- /dev/null +++ b/projects/plugins/protect/src/js/routes/scan/scanning-admin-section-hero.tsx @@ -0,0 +1,64 @@ +import { Text } from '@automattic/jetpack-components'; +import { __, sprintf } from '@wordpress/i18n'; +import inProgressImage from '../../../../assets/images/in-progress.png'; +import AdminSectionHero from '../../components/admin-section-hero'; +import ProgressBar from '../../components/progress-bar'; +import ScanNavigation from '../../components/scan-navigation'; +import useScanStatusQuery from '../../data/scan/use-scan-status-query'; +import usePlan from '../../hooks/use-plan'; +import useWafData from '../../hooks/use-waf-data'; +import styles from './styles.module.scss'; + +const ScanningAdminSectionHero: React.FC = () => { + const { hasPlan } = usePlan(); + const { globalStats } = useWafData(); + const { data: status } = useScanStatusQuery( { usePolling: true } ); + const totalVulnerabilities = parseInt( globalStats?.totalVulnerabilities || '0' ); + const totalVulnerabilitiesFormatted = isNaN( totalVulnerabilities ) + ? '50,000' + : totalVulnerabilities.toLocaleString(); + + return ( + + + { __( 'Your results will be ready soon', 'jetpack-protect' ) } + + + <> + { hasPlan && ( + + ) } + + { sprintf( + // translators: placeholder is the number of total vulnerabilities i.e. "22,000". + __( + 'We are scanning for security threats from our more than %s listed vulnerabilities, powered by WPScan. This could take a minute or two.', + 'jetpack-protect' + ), + totalVulnerabilitiesFormatted + ) } + + + +
      + +
      + + } + secondary={ +
      + +
      + } + preserveSecondaryOnMobile={ false } + /> + ); +}; + +export default ScanningAdminSectionHero; diff --git a/projects/plugins/protect/src/js/routes/scan/styles.module.scss b/projects/plugins/protect/src/js/routes/scan/styles.module.scss index f48852795a657..0b5e90e21e7ae 100644 --- a/projects/plugins/protect/src/js/routes/scan/styles.module.scss +++ b/projects/plugins/protect/src/js/routes/scan/styles.module.scss @@ -1,11 +1,5 @@ -// Alert section -.main-content { - padding: calc( var( --spacing-base ) * 7 ) 0; // 56px | 0px -} - -.loading-content { - display: flex; - align-items: center; +.subheading-content { + font-weight: bold; } .illustration { @@ -19,57 +13,11 @@ } } -.connection-error-col { - margin-top: calc( var( --spacing-base ) * 3 + 1px ); // 25px -} - -.history-button-col { - display: flex; - justify-content: flex-end; - margin-top: calc( var( --spacing-base ) * 3 + 1px ); // 25px -} - -.scan-section-header { - > :first-child { - flex: 1; - } - - @media ( min-width: 960px ) { - display: flex; - align-items: flex-start; - } -} - -.scan-section-header__content { - display: flex; - flex-direction: column; - gap: var( --spacing-base ); // 8px - - > :last-child { - margin-top: calc( var( --spacing-base ) * 2 ); // 16px - } -} - -.scan-section-header__subtitle { - display: flex; - align-items: center; - color: var( --jp-black ); - margin-bottom: 0; +.product-section, .info-section { + margin-top: calc( var( --spacing-base ) * 7 ); // 56px + margin-bottom: calc( var( --spacing-base ) * 7 ); // 56px } -.scan-section-header__icon { - margin-left: -4px; // this fix a blank space on right/left from @wordpress/icons - margin-right: var( --spacing-base ); // 8px -} - -.scan-section-header__controls { - display: flex; - flex-direction: column; - align-items: flex-end; - gap: calc( var( --spacing-base ) * 2 ); // 16px -} - -.scan-section-header__controls__row { - display: flex; - gap: calc( var( --spacing-base ) * 2 ); // 16px -} +.scan-navigation { + margin-top: calc( var( --spacing-base ) * 3 ); // 24px +} \ No newline at end of file diff --git a/projects/plugins/protect/src/js/routes/setup/index.jsx b/projects/plugins/protect/src/js/routes/setup/index.jsx index 3e82bf582e41c..cf64ede35a3b4 100644 --- a/projects/plugins/protect/src/js/routes/setup/index.jsx +++ b/projects/plugins/protect/src/js/routes/setup/index.jsx @@ -4,10 +4,10 @@ import { Col, Container, Text, + JetpackProtectLogo, } from '@automattic/jetpack-components'; import { createInterpolateElement } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; -import Logo from '../../components/logo'; import ConnectedPricingTable from '../../components/pricing-table'; import useAnalyticsTracks from '../../hooks/use-analytics-tracks'; import styles from './styles.module.scss'; @@ -25,7 +25,7 @@ const SetupRoute = () => { moduleName={ __( 'Jetpack Protect', 'jetpack-protect' ) } header={
      - + { createInterpolateElement( __( diff --git a/projects/plugins/protect/src/js/types/scans.ts b/projects/plugins/protect/src/js/types/scans.ts index 7e76cd8be7ab9..98cf04de3fb3a 100644 --- a/projects/plugins/protect/src/js/types/scans.ts +++ b/projects/plugins/protect/src/js/types/scans.ts @@ -28,7 +28,7 @@ export type ScanStatus = { fixableThreatIds: number[]; /** The current scan progress, only available from the Scan API. */ - current_progress: number | null; + currentProgress: number | null; /** The data source for the scan status. */ dataSource: 'protect_report' | 'scan_api'; diff --git a/projects/plugins/protect/webpack.config.js b/projects/plugins/protect/webpack.config.js index f0883c9b9a4ed..2f6a45721b100 100644 --- a/projects/plugins/protect/webpack.config.js +++ b/projects/plugins/protect/webpack.config.js @@ -19,11 +19,7 @@ module.exports = [ ...jetpackWebpackConfig.resolve, }, node: false, - plugins: [ - ...jetpackWebpackConfig.StandardPlugins( { - DependencyExtractionPlugin: { injectPolyfill: true }, - } ), - ], + plugins: [ ...jetpackWebpackConfig.StandardPlugins() ], module: { strictExportPresence: true, rules: [ diff --git a/projects/plugins/search/changelog/add-dependency-extraction-auto-polyfill b/projects/plugins/search/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/plugins/search/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/plugins/search/changelog/fix-sync-filter-null-array b/projects/plugins/search/changelog/fix-sync-filter-null-array new file mode 100644 index 0000000000000..3f56c90b3a7bf --- /dev/null +++ b/projects/plugins/search/changelog/fix-sync-filter-null-array @@ -0,0 +1,5 @@ +Significance: patch +Type: fixed +Comment: Sync: update filter parameter to avoid conflicts with other plugins. + + diff --git a/projects/plugins/search/changelog/prerelease#7 b/projects/plugins/search/changelog/prerelease#7 new file mode 100644 index 0000000000000..9aa70e3ec1f75 --- /dev/null +++ b/projects/plugins/search/changelog/prerelease#7 @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Updated composer.lock. + + diff --git a/projects/packages/search/changelog/renovate-core-js-3.x b/projects/plugins/search/changelog/renovate-lock-file-maintenance#2 similarity index 100% rename from projects/packages/search/changelog/renovate-core-js-3.x rename to projects/plugins/search/changelog/renovate-lock-file-maintenance#2 diff --git a/projects/plugins/search/changelog/renovate-lock-file-maintenance#3 b/projects/plugins/search/changelog/renovate-lock-file-maintenance#3 new file mode 100644 index 0000000000000..9aa70e3ec1f75 --- /dev/null +++ b/projects/plugins/search/changelog/renovate-lock-file-maintenance#3 @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Updated composer.lock. + + diff --git a/projects/plugins/search/composer.lock b/projects/plugins/search/composer.lock index 5bd781d8c3c77..4418c15278842 100644 --- a/projects/plugins/search/composer.lock +++ b/projects/plugins/search/composer.lock @@ -1748,7 +1748,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9e141274ba174502fd591a8edc315c210861155a" + "reference": "ac7496c921263d9ce7eaa77cac67d945c4f30fea" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1781,7 +1781,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "3.13.x-dev" + "dev-trunk": "3.14.x-dev" }, "dependencies": { "test-only": [ @@ -2025,16 +2025,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -2077,9 +2077,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -2520,16 +2520,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -2544,7 +2544,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -2603,7 +2603,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -2619,7 +2619,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -3639,16 +3639,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -3712,7 +3712,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -3728,7 +3728,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4117,16 +4117,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -4158,7 +4158,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -4174,7 +4174,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -4261,16 +4261,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -4328,7 +4328,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -4344,7 +4344,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/social/changelog/add-bluesky-to-social-previews b/projects/plugins/social/changelog/add-bluesky-to-social-previews new file mode 100644 index 0000000000000..73211c933517d --- /dev/null +++ b/projects/plugins/social/changelog/add-bluesky-to-social-previews @@ -0,0 +1,4 @@ +Significance: patch +Type: added + +Added Bluesky to social previews diff --git a/projects/plugins/social/changelog/add-dependency-extraction-auto-polyfill b/projects/plugins/social/changelog/add-dependency-extraction-auto-polyfill new file mode 100644 index 0000000000000..f4cd286e166af --- /dev/null +++ b/projects/plugins/social/changelog/add-dependency-extraction-auto-polyfill @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/plugins/social/changelog/add-reply-to-support-social-notes b/projects/plugins/social/changelog/add-reply-to-support-social-notes new file mode 100644 index 0000000000000..9e7a0738be21b --- /dev/null +++ b/projects/plugins/social/changelog/add-reply-to-support-social-notes @@ -0,0 +1,4 @@ +Significance: minor +Type: added + +Social Notes: add support for the ActivityPub Reply-To block. diff --git a/projects/plugins/social/changelog/fix-jetpack-social-notes-clobber-other-cpts b/projects/plugins/social/changelog/fix-jetpack-social-notes-clobber-other-cpts new file mode 100644 index 0000000000000..8aac5c2fdff3e --- /dev/null +++ b/projects/plugins/social/changelog/fix-jetpack-social-notes-clobber-other-cpts @@ -0,0 +1,5 @@ +Significance: patch +Type: fixed +Comment: Resolves a bug in an unreleased feature + + diff --git a/projects/plugins/social/changelog/fix-social-og-tags-jetpack-dev-path b/projects/plugins/social/changelog/fix-social-og-tags-jetpack-dev-path new file mode 100644 index 0000000000000..79af3f25d3565 --- /dev/null +++ b/projects/plugins/social/changelog/fix-social-og-tags-jetpack-dev-path @@ -0,0 +1,4 @@ +Significance: patch +Type: fixed + +Added Jetpack Beta's slug to Social OG conflicting plugins diff --git a/projects/plugins/social/changelog/fix-sync-filter-null-array b/projects/plugins/social/changelog/fix-sync-filter-null-array new file mode 100644 index 0000000000000..3f56c90b3a7bf --- /dev/null +++ b/projects/plugins/social/changelog/fix-sync-filter-null-array @@ -0,0 +1,5 @@ +Significance: patch +Type: fixed +Comment: Sync: update filter parameter to avoid conflicts with other plugins. + + diff --git a/projects/plugins/social/changelog/prerelease b/projects/plugins/social/changelog/prerelease new file mode 100644 index 0000000000000..9aa70e3ec1f75 --- /dev/null +++ b/projects/plugins/social/changelog/prerelease @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Updated composer.lock. + + diff --git a/projects/plugins/protect/changelog/renovate-lock-file-maintenance b/projects/plugins/social/changelog/renovate-lock-file-maintenance similarity index 100% rename from projects/plugins/protect/changelog/renovate-lock-file-maintenance rename to projects/plugins/social/changelog/renovate-lock-file-maintenance diff --git a/projects/plugins/social/changelog/renovate-lock-file-maintenance#2 b/projects/plugins/social/changelog/renovate-lock-file-maintenance#2 new file mode 100644 index 0000000000000..9aa70e3ec1f75 --- /dev/null +++ b/projects/plugins/social/changelog/renovate-lock-file-maintenance#2 @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Updated composer.lock. + + diff --git a/projects/packages/search/changelog/renovate-photon-4.x b/projects/plugins/social/changelog/renovate-wordpress-monorepo#2 similarity index 100% rename from projects/packages/search/changelog/renovate-photon-4.x rename to projects/plugins/social/changelog/renovate-wordpress-monorepo#2 diff --git a/projects/plugins/social/changelog/update-social-initial-state-migrate-urls-on-social-admin b/projects/plugins/social/changelog/update-social-initial-state-migrate-urls-on-social-admin new file mode 100644 index 0000000000000..c23ee0fbdc59a --- /dev/null +++ b/projects/plugins/social/changelog/update-social-initial-state-migrate-urls-on-social-admin @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Initial State: Migrated URLs to script data diff --git a/projects/plugins/social/composer.lock b/projects/plugins/social/composer.lock index a4c02324bccfd..7da20bcbcf2d6 100644 --- a/projects/plugins/social/composer.lock +++ b/projects/plugins/social/composer.lock @@ -1739,7 +1739,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9e141274ba174502fd591a8edc315c210861155a" + "reference": "ac7496c921263d9ce7eaa77cac67d945c4f30fea" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1772,7 +1772,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "3.13.x-dev" + "dev-trunk": "3.14.x-dev" }, "dependencies": { "test-only": [ @@ -1812,20 +1812,20 @@ "packages-dev": [ { "name": "antecedent/patchwork", - "version": "2.1.28", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/antecedent/patchwork.git", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d" + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antecedent/patchwork/zipball/6b30aff81ebadf0f2feb9268d3e08385cebcc08d", - "reference": "6b30aff81ebadf0f2feb9268d3e08385cebcc08d", + "url": "https://api.github.com/repos/antecedent/patchwork/zipball/b07d4fb37c3c723c8755122160c089e077d5de65", + "reference": "b07d4fb37c3c723c8755122160c089e077d5de65", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=7.1.0" }, "require-dev": { "phpunit/phpunit": ">=4" @@ -1854,9 +1854,9 @@ ], "support": { "issues": "https://github.com/antecedent/patchwork/issues", - "source": "https://github.com/antecedent/patchwork/tree/2.1.28" + "source": "https://github.com/antecedent/patchwork/tree/2.2.0" }, - "time": "2024-02-06T09:26:11+00:00" + "time": "2024-09-27T16:59:55+00:00" }, { "name": "automattic/jetpack-changelogger", @@ -2313,16 +2313,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1" + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/683130c2ff8c2739f4822ff7ac5c873ec529abd1", - "reference": "683130c2ff8c2739f4822ff7ac5c873ec529abd1", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a", + "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a", "shasum": "" }, "require": { @@ -2365,9 +2365,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.1.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0" }, - "time": "2024-07-01T20:03:41+00:00" + "time": "2024-09-29T13:56:26+00:00" }, { "name": "phar-io/manifest", @@ -2808,16 +2808,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "9.6.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", "shasum": "" }, "require": { @@ -2832,7 +2832,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", + "phpunit/php-code-coverage": "^9.2.32", "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.4", @@ -2891,7 +2891,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" }, "funding": [ { @@ -2907,7 +2907,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-19T10:50:18+00:00" }, { "name": "psr/container", @@ -2964,7 +2964,7 @@ }, { "name": "roots/wordpress", - "version": "6.6.1", + "version": "6.6.2", "source": { "type": "git", "url": "https://github.com/roots/wordpress.git", @@ -2995,7 +2995,7 @@ ], "support": { "issues": "https://github.com/roots/wordpress/issues", - "source": "https://github.com/roots/wordpress/tree/6.6.1" + "source": "https://github.com/roots/wordpress/tree/6.6.2" }, "funding": [ { @@ -3078,22 +3078,22 @@ }, { "name": "roots/wordpress-no-content", - "version": "6.6.1", + "version": "6.6.2", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress.git", - "reference": "6.6.1" + "reference": "6.6.2" }, "dist": { "type": "zip", - "url": "https://downloads.wordpress.org/release/wordpress-6.6.1-no-content.zip", - "shasum": "954aa560a66112cd999aa9d9519da5f964e6692a" + "url": "https://downloads.wordpress.org/release/wordpress-6.6.2-no-content.zip", + "shasum": "b496b8a9bb3c6d20a781344cbe3e189f7fd83871" }, "require": { - "php": ">= 7.0.0" + "php": ">= 7.2.24" }, "provide": { - "wordpress/core-implementation": "6.6.1" + "wordpress/core-implementation": "6.6.2" }, "suggest": { "ext-curl": "Performs remote request operations.", @@ -3144,7 +3144,7 @@ "type": "other" } ], - "time": "2024-07-23T15:25:13+00:00" + "time": "2024-09-10T15:25:31+00:00" }, { "name": "sebastian/cli-parser", @@ -4111,16 +4111,16 @@ }, { "name": "symfony/console", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111" + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1eed7af6961d763e7832e874d7f9b21c3ea9c111", - "reference": "1eed7af6961d763e7832e874d7f9b21c3ea9c111", + "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee", + "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee", "shasum": "" }, "require": { @@ -4184,7 +4184,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.4" + "source": "https://github.com/symfony/console/tree/v7.1.5" }, "funding": [ { @@ -4200,7 +4200,7 @@ "type": "tidelift" } ], - "time": "2024-08-15T22:48:53+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4589,16 +4589,16 @@ }, { "name": "symfony/process", - "version": "v7.1.3", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca" + "reference": "5c03ee6369281177f07f7c68252a280beccba847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f2f542c668ad6c313dc4a5e9c3321f733197eca", - "reference": "7f2f542c668ad6c313dc4a5e9c3321f733197eca", + "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847", + "reference": "5c03ee6369281177f07f7c68252a280beccba847", "shasum": "" }, "require": { @@ -4630,7 +4630,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.3" + "source": "https://github.com/symfony/process/tree/v7.1.5" }, "funding": [ { @@ -4646,7 +4646,7 @@ "type": "tidelift" } ], - "time": "2024-07-26T12:44:47+00:00" + "time": "2024-09-19T21:48:23+00:00" }, { "name": "symfony/service-contracts", @@ -4733,16 +4733,16 @@ }, { "name": "symfony/string", - "version": "v7.1.4", + "version": "v7.1.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b" + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6cd670a6d968eaeb1c77c2e76091c45c56bc367b", - "reference": "6cd670a6d968eaeb1c77c2e76091c45c56bc367b", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", "shasum": "" }, "require": { @@ -4800,7 +4800,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.4" + "source": "https://github.com/symfony/string/tree/v7.1.5" }, "funding": [ { @@ -4816,7 +4816,7 @@ "type": "tidelift" } ], - "time": "2024-08-12T09:59:40+00:00" + "time": "2024-09-20T08:28:38+00:00" }, { "name": "theseer/tokenizer", diff --git a/projects/plugins/social/package.json b/projects/plugins/social/package.json index 72e8bbce61867..f5c3bd624b4d2 100644 --- a/projects/plugins/social/package.json +++ b/projects/plugins/social/package.json @@ -30,14 +30,15 @@ "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-connection": "workspace:*", "@automattic/jetpack-publicize-components": "workspace:*", + "@automattic/jetpack-script-data": "workspace:*", "@automattic/jetpack-shared-extension-utils": "workspace:*", - "@wordpress/api-fetch": "7.8.2", - "@wordpress/components": "28.8.4", - "@wordpress/data": "10.8.3", - "@wordpress/date": "5.8.2", - "@wordpress/element": "6.8.1", - "@wordpress/i18n": "5.8.2", - "@wordpress/icons": "10.8.2", + "@wordpress/api-fetch": "7.9.0", + "@wordpress/components": "28.9.0", + "@wordpress/data": "10.9.0", + "@wordpress/date": "5.9.0", + "@wordpress/element": "6.9.0", + "@wordpress/i18n": "5.9.0", + "@wordpress/icons": "10.9.0", "clsx": "2.1.1", "react": "18.3.1", "react-dom": "18.3.1" @@ -54,7 +55,7 @@ "@testing-library/react": "16.0.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", - "@wordpress/browserslist-config": "6.8.1", + "@wordpress/browserslist-config": "6.9.0", "autoprefixer": "10.4.14", "babel-jest": "29.4.3", "concurrently": "7.6.0", diff --git a/projects/plugins/social/src/class-meta-tags.php b/projects/plugins/social/src/class-meta-tags.php index 7846317c01606..ab3d2ee03fcef 100644 --- a/projects/plugins/social/src/class-meta-tags.php +++ b/projects/plugins/social/src/class-meta-tags.php @@ -23,6 +23,7 @@ class Meta_Tags { */ private $open_graph_conflicting_plugins = array( 'jetpack/jetpack.php', // The Jetpack plugin adds its own meta tags. + 'jetpack-dev/jetpack.php', // Jetpack's location with the beta plugin. '2-click-socialmedia-buttons/2-click-socialmedia-buttons.php', // 2 Click Social Media Buttons. 'add-link-to-facebook/add-link-to-facebook.php', // Add Link to Facebook. 'add-meta-tags/add-meta-tags.php', // Add Meta Tags. diff --git a/projects/plugins/social/src/class-note.php b/projects/plugins/social/src/class-note.php index 2f47673513ffb..73aa53395f6cd 100644 --- a/projects/plugins/social/src/class-note.php +++ b/projects/plugins/social/src/class-note.php @@ -7,6 +7,8 @@ namespace Automattic\Jetpack\Social; +use Automattic\Jetpack\Constants; + /** * Register the Jetpack Social Note custom post type. */ @@ -31,6 +33,19 @@ public function init() { } add_filter( 'allowed_block_types', array( $this, 'restrict_blocks_for_social_note' ), 10, 2 ); + /* + * The ActivityPub plugin has a block to set a Fediverse post that a new post is in reply to. This is perfect for Social Notes. + */ + if ( Constants::get_constant( 'ACTIVITYPUB_PLUGIN_VERSION' ) ) { + add_filter( + 'jetpack_social_allowed_blocks', + function ( $allowed_blocks ) { + $allowed_blocks[] = 'activitypub/reply'; + return $allowed_blocks; + } + ); + } + self::register_cpt(); add_action( 'wp_insert_post_data', array( $this, 'set_empty_title' ), 10, 2 ); add_action( 'admin_init', array( $this, 'admin_init_actions' ) ); @@ -140,15 +155,26 @@ public function register_cpt() { * @return array The allowed blocks. */ public function restrict_blocks_for_social_note( $allowed_blocks, $post ) { - if ( 'jetpack-social-note' === $post->post_type ) { - // Only allow the paragraph block and the featured image block. - $allowed_blocks = array( - 'core/paragraph', - 'core/post-featured-image', - ); + if ( 'jetpack-social-note' !== $post->post_type ) { // Let 'em pass. + return $allowed_blocks; } - return $allowed_blocks; + // Only allow the paragraph block and the featured image block. + $allowed_blocks = array( + 'core/paragraph', + 'core/post-featured-image', + ); + + /** + * Filters the blocks available to the Social Notes CPT. + * + * Default is ['core/paragraph', 'core/post-featured-image'] + * + * @since $$next-version$$ + * + * @param array $allowed_blocks A linear array of blocks allowed by the CPT. + */ + return apply_filters( 'jetpack_social_allowed_blocks', $allowed_blocks ); } /** 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 0a2eb23d3509a..cc6aad10da338 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,4 +1,5 @@ import { SOCIAL_STORE_ID } from '@automattic/jetpack-publicize-components'; +import { getMyJetpackUrl } from '@automattic/jetpack-script-data'; import { useSelect } from '@wordpress/data'; import { createInterpolateElement } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; @@ -6,14 +7,14 @@ import Logo from './../../logo'; import styles from './styles.module.scss'; const AdminPageHeader = () => { - const { showPricingPage, activateLicenseUrl } = useSelect( select => { + const { showPricingPage } = useSelect( select => { const store = select( SOCIAL_STORE_ID ); return { showPricingPage: store.showPricingPage(), - activateLicenseUrl: `${ store.getAdminUrl() }admin.php?page=my-jetpack#/add-license`, }; } ); + const activateLicenseUrl = getMyJetpackUrl( '#/add-license' ); return (
      diff --git a/projects/plugins/social/src/js/components/header/index.js b/projects/plugins/social/src/js/components/header/index.js index 868c0756b61fe..742c758aa957f 100644 --- a/projects/plugins/social/src/js/components/header/index.js +++ b/projects/plugins/social/src/js/components/header/index.js @@ -13,6 +13,7 @@ import { getSharedPostsCount, store as socialStore, } from '@automattic/jetpack-publicize-components'; +import { getAdminUrl } from '@automattic/jetpack-script-data'; import { useDispatch, useSelect } from '@wordpress/data'; import { __ } from '@wordpress/i18n'; import { Icon, postList } from '@wordpress/icons'; @@ -20,24 +21,17 @@ import StatCards from '../stat-cards'; import styles from './styles.module.scss'; const Header = () => { - const connectionData = window.jetpackSocialInitialState.connectionData ?? {}; - const { - // TODO - Replace some of these with data from initial state - connectionsAdminUrl, - hasConnections, - isModuleEnabled, - newPostUrl, - } = useSelect( select => { + const { hasConnections, isModuleEnabled } = useSelect( select => { const store = select( socialStore ); return { - connectionsAdminUrl: connectionData.adminUrl, hasConnections: store.getConnections().length > 0, isModuleEnabled: store.isModuleEnabled(), - newPostUrl: `${ store.getAdminUrl() }post-new.php`, }; } ); - const { useAdminUiV1 } = getSocialScriptData().feature_flags; + const { urls, feature_flags } = getSocialScriptData(); + + const useAdminUiV1 = feature_flags.useAdminUiV1; const { hasConnectionError } = useConnectionErrorNotice(); @@ -71,13 +65,16 @@ const Header = () => { { __( 'Connect accounts', 'jetpack-social' ) } ) : ( - ) } ) } -
      diff --git a/projects/plugins/social/src/js/components/social-module-toggle/index.tsx b/projects/plugins/social/src/js/components/social-module-toggle/index.tsx index bb7c0ef23dbb9..77345ba97de14 100644 --- a/projects/plugins/social/src/js/components/social-module-toggle/index.tsx +++ b/projects/plugins/social/src/js/components/social-module-toggle/index.tsx @@ -22,7 +22,6 @@ import styles from './styles.module.scss'; const SocialModuleToggle: React.FC = () => { const { // TODO - replace some of these with values from initial state - connectionsAdminUrl, isModuleEnabled, isUpdating, siteSuffix, @@ -33,14 +32,15 @@ const SocialModuleToggle: React.FC = () => { return { isModuleEnabled: store.isModuleEnabled(), isUpdating: store.isUpdatingJetpackSettings(), - connectionsAdminUrl: store.getConnectionsAdminUrl(), siteSuffix: store.getSiteSuffix(), blogID: store.getBlogID(), hasPaidFeatures: store.hasPaidFeatures(), }; }, [] ); - const { useAdminUiV1 } = getSocialScriptData().feature_flags; + const { urls, feature_flags } = getSocialScriptData(); + + const useAdminUiV1 = feature_flags.useAdminUiV1; const updateOptions = useDispatch( SOCIAL_STORE_ID ).updateJetpackSettings; @@ -65,13 +65,13 @@ const SocialModuleToggle: React.FC = () => { ) : null; } - return connectionsAdminUrl ? ( + return urls.connectionsManagementPage ? (