diff --git a/CHANGELOG.md b/CHANGELOG.md index 7e83af554a..215b92c403 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Release Notes for Craft Commerce +## 4.2.9 - 2023-05-25 + +- The `commerce/cart/update-cart` action now accepts `clearAddresses`, `clearBillingAddress`, and `clearShippingAddress` params. +- Fixed a JavaScript error that occurred when switching control panel tabs on small screens. ([#3162](https://github.com/craftcms/commerce/issues/3162)) +- Fixed a bug where the `commerce/upgrade` command wasn’t migrating discounts’ and coupons’ Max Uses values properly. ([#2947](https://github.com/craftcms/commerce/issues/2947)) + ## 4.2.8 - 2023-05-03 - Added `craft\commerce\services\Customers::EVENT_UPDATE_PRIMARY_PAYMENT_SOURCE`. diff --git a/composer.json b/composer.json index 88c7becbde..5239d2c868 100644 --- a/composer.json +++ b/composer.json @@ -38,7 +38,7 @@ "craftcms/phpstan": "dev-main", "craftcms/rector": "dev-main", "craftcms/redactor": "*", - "vlucas/phpdotenv": "^3.4" + "vlucas/phpdotenv": "^5.5.0" }, "autoload": { "psr-4": { diff --git a/composer.lock b/composer.lock index 8ab2e599c9..a9d794de47 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "1205c6f558ce9d412474eb786c3bf087", + "content-hash": "d4d63eb42d65b287d36333255e6085f9", "packages": [ { "name": "cebe/markdown", @@ -212,16 +212,16 @@ }, { "name": "composer/composer", - "version": "2.2.15", + "version": "2.2.19", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "509dcbd4f8d459e0ef2ef223a231b8c31bceed78" + "reference": "30ff21a9af9a10845436abaeeb0bb7276e996d24" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/509dcbd4f8d459e0ef2ef223a231b8c31bceed78", - "reference": "509dcbd4f8d459e0ef2ef223a231b8c31bceed78", + "url": "https://api.github.com/repos/composer/composer/zipball/30ff21a9af9a10845436abaeeb0bb7276e996d24", + "reference": "30ff21a9af9a10845436abaeeb0bb7276e996d24", "shasum": "" }, "require": { @@ -291,7 +291,7 @@ "support": { "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/composer/issues", - "source": "https://github.com/composer/composer/tree/2.2.15" + "source": "https://github.com/composer/composer/tree/2.2.19" }, "funding": [ { @@ -307,7 +307,7 @@ "type": "tidelift" } ], - "time": "2022-07-01T10:01:26+00:00" + "time": "2023-02-04T13:54:48+00:00" }, { "name": "composer/metadata-minifier", @@ -678,27 +678,26 @@ }, { "name": "craftcms/cms", - "version": "4.3.7", + "version": "4.4.13", "source": { "type": "git", "url": "https://github.com/craftcms/cms.git", - "reference": "7dc8d2d258cfe8da9bbecf13e5c478c4c64934e1" + "reference": "82629eef9b40a923471ae681ef8896865b3ee1bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/craftcms/cms/zipball/7dc8d2d258cfe8da9bbecf13e5c478c4c64934e1", - "reference": "7dc8d2d258cfe8da9bbecf13e5c478c4c64934e1", + "url": "https://api.github.com/repos/craftcms/cms/zipball/82629eef9b40a923471ae681ef8896865b3ee1bf", + "reference": "82629eef9b40a923471ae681ef8896865b3ee1bf", "shasum": "" }, "require": { "commerceguys/addressing": "^1.2", - "composer/composer": "2.2.15", - "craftcms/oauth2-craftid": "~1.0.0", - "craftcms/plugin-installer": "~1.5.6", + "composer/composer": "2.2.19", + "craftcms/plugin-installer": "~1.6.0", "craftcms/server-check": "~2.1.2", "creocoder/yii2-nested-sets": "~0.9.0", - "elvanto/litemoji": "^3.0.1", - "enshrined/svg-sanitize": "~0.15.0", + "elvanto/litemoji": "^4.3.0", + "enshrined/svg-sanitize": "~0.16.0", "ext-bcmath": "*", "ext-curl": "*", "ext-dom": "*", @@ -711,13 +710,12 @@ "ext-zip": "*", "guzzlehttp/guzzle": "^7.2.0", "illuminate/collections": "^9.1.0", - "league/oauth2-client": "^2.6.0", "mikehaertl/php-shellcommand": "^1.6.3", "moneyphp/money": "^4.0", "monolog/monolog": "^2.3", "php": "^8.0.2", "pixelandtonic/imagine": "~1.3.3.1", - "samdark/yii2-psr-log-target": "^1.1", + "samdark/yii2-psr-log-target": "^1.1.3", "seld/cli-prompt": "^1.0.4", "symfony/http-client": "^6.0.3", "symfony/var-dumper": "^5.0|^6.0", @@ -727,12 +725,11 @@ "voku/stringy": "^6.4.0", "webonyx/graphql-php": "~14.11.5", "yiisoft/yii2": "~2.0.47.0", - "yiisoft/yii2-debug": "~2.1.19.0", + "yiisoft/yii2-debug": "~2.1.22.0", "yiisoft/yii2-queue": "~2.3.2", "yiisoft/yii2-symfonymailer": "^2.0.0" }, "conflict": { - "league/oauth2-client": "2.4.0", "webonyx/graphql-php": "14.11.7" }, "provide": { @@ -753,7 +750,8 @@ "fakerphp/faker": "^1.19.0", "league/factory-muffin": "^3.3.0", "phpstan/phpstan": "^1.8.5", - "vlucas/phpdotenv": "^5.4.1" + "vlucas/phpdotenv": "^5.4.1", + "yiisoft/yii2-redis": "^2.0" }, "suggest": { "ext-exif": "Adds support for parsing image EXIF data.", @@ -785,82 +783,27 @@ "yii2" ], "support": { - "docs": "https://docs.craftcms.com/v3/", + "docs": "https://craftcms.com/docs/4.x/", "email": "support@craftcms.com", "forum": "https://craftcms.stackexchange.com/", "issues": "https://github.com/craftcms/cms/issues?state=open", "rss": "https://github.com/craftcms/cms/releases.atom", "source": "https://github.com/craftcms/cms" }, - "time": "2023-02-03T18:33:43+00:00" - }, - { - "name": "craftcms/oauth2-craftid", - "version": "1.0.0.1", - "source": { - "type": "git", - "url": "https://github.com/craftcms/oauth2-craftid.git", - "reference": "3f18364139d72d83fb50546d85130beaaa868836" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/craftcms/oauth2-craftid/zipball/3f18364139d72d83fb50546d85130beaaa868836", - "reference": "3f18364139d72d83fb50546d85130beaaa868836", - "shasum": "" - }, - "require": { - "league/oauth2-client": "^2.2.1" - }, - "require-dev": { - "phpunit/phpunit": "^5.0", - "satooshi/php-coveralls": "^1.0", - "squizlabs/php_codesniffer": "^2.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "craftcms\\oauth2\\client\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Pixel & Tonic", - "homepage": "https://pixelandtonic.com/" - } - ], - "description": "Craft OAuth 2.0 Client Provider for The PHP League OAuth2-Client", - "keywords": [ - "Authentication", - "authorization", - "client", - "cms", - "craftcms", - "craftid", - "oauth", - "oauth2" - ], - "support": { - "issues": "https://github.com/craftcms/oauth2-craftid/issues", - "source": "https://github.com/craftcms/oauth2-craftid/tree/1.0.0.1" - }, - "time": "2017-11-22T19:46:18+00:00" + "time": "2023-05-24T17:58:00+00:00" }, { "name": "craftcms/plugin-installer", - "version": "1.5.7", + "version": "1.6.0", "source": { "type": "git", "url": "https://github.com/craftcms/plugin-installer.git", - "reference": "23ec472acd4410b70b07d5a02b2b82db9ee3f66b" + "reference": "bd1650e8da6d5ca7a8527068d3e51c34bc7b6b4f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/craftcms/plugin-installer/zipball/23ec472acd4410b70b07d5a02b2b82db9ee3f66b", - "reference": "23ec472acd4410b70b07d5a02b2b82db9ee3f66b", + "url": "https://api.github.com/repos/craftcms/plugin-installer/zipball/bd1650e8da6d5ca7a8527068d3e51c34bc7b6b4f", + "reference": "bd1650e8da6d5ca7a8527068d3e51c34bc7b6b4f", "shasum": "" }, "require": { @@ -900,7 +843,7 @@ "rss": "https://craftcms.com/changelog.rss", "source": "https://github.com/craftcms/cms" }, - "time": "2021-02-18T02:01:38+00:00" + "time": "2023-02-22T13:17:00+00:00" }, { "name": "craftcms/server-check", @@ -1376,24 +1319,25 @@ }, { "name": "elvanto/litemoji", - "version": "3.0.1", + "version": "4.3.0", "source": { "type": "git", "url": "https://github.com/elvanto/litemoji.git", - "reference": "acd6fd944814683983dcdfcf4d33f24430631b77" + "reference": "f13cf10686f7110a3b17d09de03050d0708840b8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/elvanto/litemoji/zipball/acd6fd944814683983dcdfcf4d33f24430631b77", - "reference": "acd6fd944814683983dcdfcf4d33f24430631b77", + "url": "https://api.github.com/repos/elvanto/litemoji/zipball/f13cf10686f7110a3b17d09de03050d0708840b8", + "reference": "f13cf10686f7110a3b17d09de03050d0708840b8", "shasum": "" }, "require": { - "php": ">=7.0" + "ext-mbstring": "*", + "php": ">=7.3" }, "require-dev": { - "milesj/emojibase": "6.0.*", - "phpunit/phpunit": "^6.0" + "milesj/emojibase": "7.0.*", + "phpunit/phpunit": "^9.0" }, "type": "library", "autoload": { @@ -1412,31 +1356,32 @@ ], "support": { "issues": "https://github.com/elvanto/litemoji/issues", - "source": "https://github.com/elvanto/litemoji/tree/3.0.1" + "source": "https://github.com/elvanto/litemoji/tree/4.3.0" }, - "time": "2020-11-27T05:08:33+00:00" + "time": "2022-10-28T02:32:19+00:00" }, { "name": "enshrined/svg-sanitize", - "version": "0.15.4", + "version": "0.16.0", "source": { "type": "git", "url": "https://github.com/darylldoyle/svg-sanitizer.git", - "reference": "e50b83a2f1f296ca61394fe88fbfe3e896a84cf4" + "reference": "239e257605e2141265b429e40987b2ee51bba4b4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/darylldoyle/svg-sanitizer/zipball/e50b83a2f1f296ca61394fe88fbfe3e896a84cf4", - "reference": "e50b83a2f1f296ca61394fe88fbfe3e896a84cf4", + "url": "https://api.github.com/repos/darylldoyle/svg-sanitizer/zipball/239e257605e2141265b429e40987b2ee51bba4b4", + "reference": "239e257605e2141265b429e40987b2ee51bba4b4", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", - "php": "^7.0 || ^8.0" + "ezyang/htmlpurifier": "^4.16", + "php": "^5.6 || ^7.0 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^6.5 || ^8.5" + "phpunit/phpunit": "^5.7 || ^6.5 || ^8.5" }, "type": "library", "autoload": { @@ -1457,9 +1402,9 @@ "description": "An SVG sanitizer for PHP", "support": { "issues": "https://github.com/darylldoyle/svg-sanitizer/issues", - "source": "https://github.com/darylldoyle/svg-sanitizer/tree/0.15.4" + "source": "https://github.com/darylldoyle/svg-sanitizer/tree/0.16.0" }, - "time": "2022-02-21T09:13:59+00:00" + "time": "2023-03-20T10:51:12+00:00" }, { "name": "ezyang/htmlpurifier", @@ -1524,22 +1469,22 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.5.0", + "version": "7.7.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" + "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/fb7566caccf22d74d1ab270de3551f72a58399f5", + "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^1.5", - "guzzlehttp/psr7": "^1.9 || ^2.4", + "guzzlehttp/promises": "^1.5.3 || ^2.0", + "guzzlehttp/psr7": "^1.9.1 || ^2.4.5", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" @@ -1550,7 +1495,8 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.8.1", "ext-curl": "*", - "php-http/client-integration-tests": "^3.0", + "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", + "php-http/message-factory": "^1.1", "phpunit/phpunit": "^8.5.29 || ^9.5.23", "psr/log": "^1.1 || ^2.0 || ^3.0" }, @@ -1564,9 +1510,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "7.5-dev" } }, "autoload": { @@ -1632,7 +1575,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.5.0" + "source": "https://github.com/guzzle/guzzle/tree/7.7.0" }, "funding": [ { @@ -1648,38 +1591,37 @@ "type": "tidelift" } ], - "time": "2022-08-28T15:39:27+00:00" + "time": "2023-05-21T14:04:53+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.5.2", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "b94b2807d85443f9719887892882d0329d1e2598" + "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", - "reference": "b94b2807d85443f9719887892882d0329d1e2598", + "url": "https://api.github.com/repos/guzzle/promises/zipball/3a494dc7dc1d7d12e511890177ae2d0e6c107da6", + "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6", "shasum": "" }, "require": { - "php": ">=5.5" + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "symfony/phpunit-bridge": "^4.4 || ^5.1" + "bamarni/composer-bin-plugin": "^1.8.1", + "phpunit/phpunit": "^8.5.29 || ^9.5.23" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "1.5-dev" + "bamarni-bin": { + "bin-links": true, + "forward-command": false } }, "autoload": { - "files": [ - "src/functions_include.php" - ], "psr-4": { "GuzzleHttp\\Promise\\": "src/" } @@ -1716,7 +1658,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.2" + "source": "https://github.com/guzzle/promises/tree/2.0.0" }, "funding": [ { @@ -1732,26 +1674,26 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:55:35+00:00" + "time": "2023-05-21T13:50:22+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.4.3", + "version": "2.5.0", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "67c26b443f348a51926030c83481b85718457d3d" + "reference": "b635f279edd83fc275f822a1188157ffea568ff6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", - "reference": "67c26b443f348a51926030c83481b85718457d3d", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/b635f279edd83fc275f822a1188157ffea568ff6", + "reference": "b635f279edd83fc275f822a1188157ffea568ff6", "shasum": "" }, "require": { "php": "^7.2.5 || ^8.0", "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", + "psr/http-message": "^1.1 || ^2.0", "ralouphie/getallheaders": "^3.0" }, "provide": { @@ -1771,9 +1713,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "2.4-dev" } }, "autoload": { @@ -1835,7 +1774,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.3" + "source": "https://github.com/guzzle/psr7/tree/2.5.0" }, "funding": [ { @@ -1851,7 +1790,7 @@ "type": "tidelift" } ], - "time": "2022-10-26T14:07:24+00:00" + "time": "2023-04-17T16:11:26+00:00" }, { "name": "ibericode/vat", @@ -1964,7 +1903,7 @@ }, { "name": "illuminate/collections", - "version": "v9.52.4", + "version": "v9.52.7", "source": { "type": "git", "url": "https://github.com/illuminate/collections.git", @@ -2019,7 +1958,7 @@ }, { "name": "illuminate/conditionable", - "version": "v9.52.4", + "version": "v9.52.7", "source": { "type": "git", "url": "https://github.com/illuminate/conditionable.git", @@ -2065,7 +2004,7 @@ }, { "name": "illuminate/contracts", - "version": "v9.52.4", + "version": "v9.52.7", "source": { "type": "git", "url": "https://github.com/illuminate/contracts.git", @@ -2113,7 +2052,7 @@ }, { "name": "illuminate/macroable", - "version": "v9.52.4", + "version": "v9.52.7", "source": { "type": "git", "url": "https://github.com/illuminate/macroable.git", @@ -2227,98 +2166,26 @@ }, "time": "2022-04-13T08:02:27+00:00" }, - { - "name": "league/oauth2-client", - "version": "2.6.1", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/oauth2-client.git", - "reference": "2334c249907190c132364f5dae0287ab8666aa19" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/2334c249907190c132364f5dae0287ab8666aa19", - "reference": "2334c249907190c132364f5dae0287ab8666aa19", - "shasum": "" - }, - "require": { - "guzzlehttp/guzzle": "^6.0 || ^7.0", - "paragonie/random_compat": "^1 || ^2 || ^9.99", - "php": "^5.6 || ^7.0 || ^8.0" - }, - "require-dev": { - "mockery/mockery": "^1.3.5", - "php-parallel-lint/php-parallel-lint": "^1.3.1", - "phpunit/phpunit": "^5.7 || ^6.0 || ^9.5", - "squizlabs/php_codesniffer": "^2.3 || ^3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-2.x": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "League\\OAuth2\\Client\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Alex Bilbie", - "email": "hello@alexbilbie.com", - "homepage": "http://www.alexbilbie.com", - "role": "Developer" - }, - { - "name": "Woody Gilk", - "homepage": "https://github.com/shadowhand", - "role": "Contributor" - } - ], - "description": "OAuth 2.0 Client Library", - "keywords": [ - "Authentication", - "SSO", - "authorization", - "identity", - "idp", - "oauth", - "oauth2", - "single sign on" - ], - "support": { - "issues": "https://github.com/thephpleague/oauth2-client/issues", - "source": "https://github.com/thephpleague/oauth2-client/tree/2.6.1" - }, - "time": "2021-12-22T16:42:49+00:00" - }, { "name": "masterminds/html5", - "version": "2.7.6", + "version": "2.8.0", "source": { "type": "git", "url": "https://github.com/Masterminds/html5-php.git", - "reference": "897eb517a343a2281f11bc5556d6548db7d93947" + "reference": "3c5d5a56d56f48a1ca08a0670f0f80c1dad368f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/897eb517a343a2281f11bc5556d6548db7d93947", - "reference": "897eb517a343a2281f11bc5556d6548db7d93947", + "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/3c5d5a56d56f48a1ca08a0670f0f80c1dad368f3", + "reference": "3c5d5a56d56f48a1ca08a0670f0f80c1dad368f3", "shasum": "" }, "require": { - "ext-ctype": "*", "ext-dom": "*", - "ext-libxml": "*", "php": ">=5.3.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7" + "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8" }, "type": "library", "extra": { @@ -2362,22 +2229,22 @@ ], "support": { "issues": "https://github.com/Masterminds/html5-php/issues", - "source": "https://github.com/Masterminds/html5-php/tree/2.7.6" + "source": "https://github.com/Masterminds/html5-php/tree/2.8.0" }, - "time": "2022-08-18T16:18:26+00:00" + "time": "2023-04-26T07:27:39+00:00" }, { "name": "mikehaertl/php-shellcommand", - "version": "1.6.4", + "version": "1.7.0", "source": { "type": "git", "url": "https://github.com/mikehaertl/php-shellcommand.git", - "reference": "3488d7803df1e8f1a343d3d0ca452d527ad8d5e5" + "reference": "e79ea528be155ffdec6f3bf1a4a46307bb49e545" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mikehaertl/php-shellcommand/zipball/3488d7803df1e8f1a343d3d0ca452d527ad8d5e5", - "reference": "3488d7803df1e8f1a343d3d0ca452d527ad8d5e5", + "url": "https://api.github.com/repos/mikehaertl/php-shellcommand/zipball/e79ea528be155ffdec6f3bf1a4a46307bb49e545", + "reference": "e79ea528be155ffdec6f3bf1a4a46307bb49e545", "shasum": "" }, "require": { @@ -2408,22 +2275,22 @@ ], "support": { "issues": "https://github.com/mikehaertl/php-shellcommand/issues", - "source": "https://github.com/mikehaertl/php-shellcommand/tree/1.6.4" + "source": "https://github.com/mikehaertl/php-shellcommand/tree/1.7.0" }, - "time": "2021-03-17T06:54:33+00:00" + "time": "2023-04-19T08:25:22+00:00" }, { "name": "moneyphp/money", - "version": "v4.1.0", + "version": "v4.1.1", "source": { "type": "git", "url": "https://github.com/moneyphp/money.git", - "reference": "c8eeeb1f7b7e6ca95490b94a301dc9cb8cb76c2d" + "reference": "9682220995ffd396843be5b4ee1e5f2c2d6ecee2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/moneyphp/money/zipball/c8eeeb1f7b7e6ca95490b94a301dc9cb8cb76c2d", - "reference": "c8eeeb1f7b7e6ca95490b94a301dc9cb8cb76c2d", + "url": "https://api.github.com/repos/moneyphp/money/zipball/9682220995ffd396843be5b4ee1e5f2c2d6ecee2", + "reference": "9682220995ffd396843be5b4ee1e5f2c2d6ecee2", "shasum": "" }, "require": { @@ -2497,9 +2364,9 @@ ], "support": { "issues": "https://github.com/moneyphp/money/issues", - "source": "https://github.com/moneyphp/money/tree/v4.1.0" + "source": "https://github.com/moneyphp/money/tree/v4.1.1" }, - "time": "2022-12-19T20:35:32+00:00" + "time": "2023-04-11T09:18:34+00:00" }, { "name": "monolog/monolog", @@ -2855,24 +2722,27 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.6.2", + "version": "1.7.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d" + "reference": "dfc078e8af9c99210337325ff5aa152872c98714" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/48f445a408c131e38cab1c235aa6d2bb7a0bb20d", - "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/dfc078e8af9c99210337325ff5aa152872c98714", + "reference": "dfc078e8af9c99210337325ff5aa152872c98714", "shasum": "" }, "require": { + "doctrine/deprecations": "^1.0", "php": "^7.4 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" + "phpdocumentor/reflection-common": "^2.0", + "phpstan/phpdoc-parser": "^1.13" }, "require-dev": { "ext-tokenizer": "*", + "phpbench/phpbench": "^1.2", "phpstan/extension-installer": "^1.1", "phpstan/phpstan": "^1.8", "phpstan/phpstan-phpunit": "^1.1", @@ -2904,9 +2774,55 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.2" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.7.1" }, - "time": "2022-10-14T12:47:21+00:00" + "time": "2023-03-27T19:02:04+00:00" + }, + { + "name": "phpstan/phpdoc-parser", + "version": "1.21.0", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "6df62b08faef4f899772bc7c3bbabb93d2b7a21c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/6df62b08faef4f899772bc7c3bbabb93d2b7a21c", + "reference": "6df62b08faef4f899772bc7c3bbabb93d2b7a21c", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "nikic/php-parser": "^4.15", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.5", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/phpunit": "^9.5", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "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.21.0" + }, + "time": "2023-05-17T13:13:44+00:00" }, { "name": "pixelandtonic/imagine", @@ -3074,21 +2990,21 @@ }, { "name": "psr/http-client", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-client.git", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/0955afe48220520692d2d09f7ab7e0f93ffd6a31", + "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31", "shasum": "" }, "require": { "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -3108,7 +3024,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP clients", @@ -3120,27 +3036,27 @@ "psr-18" ], "support": { - "source": "https://github.com/php-fig/http-client/tree/master" + "source": "https://github.com/php-fig/http-client/tree/1.0.2" }, - "time": "2020-06-29T06:28:15+00:00" + "time": "2023-04-10T20:12:12+00:00" }, { "name": "psr/http-factory", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + "reference": "e616d01114759c4c489f93b099585439f795fe35" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", + "reference": "e616d01114759c4c489f93b099585439f795fe35", "shasum": "" }, "require": { "php": ">=7.0.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -3160,7 +3076,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interfaces for PSR-7 HTTP message factories", @@ -3175,31 +3091,31 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-factory/tree/master" + "source": "https://github.com/php-fig/http-factory/tree/1.0.2" }, - "time": "2019-04-30T12:38:16+00:00" + "time": "2023-04-10T20:10:41+00:00" }, { "name": "psr/http-message", - "version": "1.0.1", + "version": "2.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": "^7.2 || ^8.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -3214,7 +3130,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP messages", @@ -3228,9 +3144,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/master" + "source": "https://github.com/php-fig/http-message/tree/2.0" }, - "time": "2016-08-06T14:39:51+00:00" + "time": "2023-04-04T09:54:51+00:00" }, { "name": "psr/log", @@ -3379,23 +3295,23 @@ }, { "name": "react/promise", - "version": "v2.9.0", + "version": "v2.10.0", "source": { "type": "git", "url": "https://github.com/reactphp/promise.git", - "reference": "234f8fd1023c9158e2314fa9d7d0e6a83db42910" + "reference": "f913fb8cceba1e6644b7b90c4bfb678ed8a3ef38" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/promise/zipball/234f8fd1023c9158e2314fa9d7d0e6a83db42910", - "reference": "234f8fd1023c9158e2314fa9d7d0e6a83db42910", + "url": "https://api.github.com/repos/reactphp/promise/zipball/f913fb8cceba1e6644b7b90c4bfb678ed8a3ef38", + "reference": "f913fb8cceba1e6644b7b90c4bfb678ed8a3ef38", "shasum": "" }, "require": { "php": ">=5.4.0" }, "require-dev": { - "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.36" + "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.36" }, "type": "library", "autoload": { @@ -3439,19 +3355,15 @@ ], "support": { "issues": "https://github.com/reactphp/promise/issues", - "source": "https://github.com/reactphp/promise/tree/v2.9.0" + "source": "https://github.com/reactphp/promise/tree/v2.10.0" }, "funding": [ { - "url": "https://github.com/WyriHaximus", - "type": "github" - }, - { - "url": "https://github.com/clue", - "type": "github" + "url": "https://opencollective.com/reactphp", + "type": "open_collective" } ], - "time": "2022-02-11T10:27:51+00:00" + "time": "2023-05-02T15:15:43+00:00" }, { "name": "sabberworm/php-css-parser", @@ -3625,16 +3537,16 @@ }, { "name": "seld/jsonlint", - "version": "1.9.0", + "version": "1.10.0", "source": { "type": "git", "url": "https://github.com/Seldaek/jsonlint.git", - "reference": "4211420d25eba80712bff236a98960ef68b866b7" + "reference": "594fd6462aad8ecee0b45ca5045acea4776667f1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/4211420d25eba80712bff236a98960ef68b866b7", - "reference": "4211420d25eba80712bff236a98960ef68b866b7", + "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/594fd6462aad8ecee0b45ca5045acea4776667f1", + "reference": "594fd6462aad8ecee0b45ca5045acea4776667f1", "shasum": "" }, "require": { @@ -3673,7 +3585,7 @@ ], "support": { "issues": "https://github.com/Seldaek/jsonlint/issues", - "source": "https://github.com/Seldaek/jsonlint/tree/1.9.0" + "source": "https://github.com/Seldaek/jsonlint/tree/1.10.0" }, "funding": [ { @@ -3685,7 +3597,7 @@ "type": "tidelift" } ], - "time": "2022-04-01T13:37:23+00:00" + "time": "2023-05-11T13:16:46+00:00" }, { "name": "seld/phar-utils", @@ -3737,16 +3649,16 @@ }, { "name": "setasign/fpdi", - "version": "v2.3.6", + "version": "v2.3.7", "source": { "type": "git", "url": "https://github.com/Setasign/FPDI.git", - "reference": "6231e315f73e4f62d72b73f3d6d78ff0eed93c31" + "reference": "bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Setasign/FPDI/zipball/6231e315f73e4f62d72b73f3d6d78ff0eed93c31", - "reference": "6231e315f73e4f62d72b73f3d6d78ff0eed93c31", + "url": "https://api.github.com/repos/Setasign/FPDI/zipball/bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05", + "reference": "bccc892d5fa1f48c43f8ba7db5ed4ba6f30c8c05", "shasum": "" }, "require": { @@ -3797,7 +3709,7 @@ ], "support": { "issues": "https://github.com/Setasign/FPDI/issues", - "source": "https://github.com/Setasign/FPDI/tree/v2.3.6" + "source": "https://github.com/Setasign/FPDI/tree/v2.3.7" }, "funding": [ { @@ -3805,20 +3717,20 @@ "type": "tidelift" } ], - "time": "2021-02-11T11:37:01+00:00" + "time": "2023-02-09T10:38:43+00:00" }, { "name": "symfony/console", - "version": "v5.4.21", + "version": "v5.4.23", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9" + "reference": "90f21e27d0d88ce38720556dd164d4a1e4c3934c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/c77433ddc6cdc689caf48065d9ea22ca0853fbd9", - "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9", + "url": "https://api.github.com/repos/symfony/console/zipball/90f21e27d0d88ce38720556dd164d4a1e4c3934c", + "reference": "90f21e27d0d88ce38720556dd164d4a1e4c3934c", "shasum": "" }, "require": { @@ -3883,12 +3795,12 @@ "homepage": "https://symfony.com", "keywords": [ "cli", - "command line", + "command-line", "console", "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.21" + "source": "https://github.com/symfony/console/tree/v5.4.23" }, "funding": [ { @@ -3904,7 +3816,7 @@ "type": "tidelift" } ], - "time": "2023-02-25T16:59:41+00:00" + "time": "2023-04-24T18:47:29+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3975,16 +3887,16 @@ }, { "name": "symfony/event-dispatcher", - "version": "v5.4.21", + "version": "v5.4.22", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "f0ae1383a8285dfc6752b8d8602790953118ff5a" + "reference": "1df20e45d56da29a4b1d8259dd6e950acbf1b13f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/f0ae1383a8285dfc6752b8d8602790953118ff5a", - "reference": "f0ae1383a8285dfc6752b8d8602790953118ff5a", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/1df20e45d56da29a4b1d8259dd6e950acbf1b13f", + "reference": "1df20e45d56da29a4b1d8259dd6e950acbf1b13f", "shasum": "" }, "require": { @@ -4040,7 +3952,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.21" + "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.22" }, "funding": [ { @@ -4056,7 +3968,7 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:03:56+00:00" + "time": "2023-03-17T11:31:58+00:00" }, { "name": "symfony/event-dispatcher-contracts", @@ -5637,16 +5549,16 @@ }, { "name": "symfony/yaml", - "version": "v5.4.21", + "version": "v5.4.23", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "3713e20d93e46e681e51605d213027e48dab3469" + "reference": "4cd2e3ea301aadd76a4172756296fe552fb45b0b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/3713e20d93e46e681e51605d213027e48dab3469", - "reference": "3713e20d93e46e681e51605d213027e48dab3469", + "url": "https://api.github.com/repos/symfony/yaml/zipball/4cd2e3ea301aadd76a4172756296fe552fb45b0b", + "reference": "4cd2e3ea301aadd76a4172756296fe552fb45b0b", "shasum": "" }, "require": { @@ -5692,7 +5604,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.21" + "source": "https://github.com/symfony/yaml/tree/v5.4.23" }, "funding": [ { @@ -5708,7 +5620,7 @@ "type": "tidelift" } ], - "time": "2023-02-21T19:46:44+00:00" + "time": "2023-04-23T19:33:36+00:00" }, { "name": "tecnickcom/tcpdf", @@ -6224,16 +6136,16 @@ }, { "name": "voku/portable-utf8", - "version": "6.0.12", + "version": "6.0.13", "source": { "type": "git", "url": "https://github.com/voku/portable-utf8.git", - "reference": "db0583727bb17666bbd2ba238c85babb973fd165" + "reference": "b8ce36bf26593e5c2e81b1850ef0ffb299d2043f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/voku/portable-utf8/zipball/db0583727bb17666bbd2ba238c85babb973fd165", - "reference": "db0583727bb17666bbd2ba238c85babb973fd165", + "url": "https://api.github.com/repos/voku/portable-utf8/zipball/b8ce36bf26593e5c2e81b1850ef0ffb299d2043f", + "reference": "b8ce36bf26593e5c2e81b1850ef0ffb299d2043f", "shasum": "" }, "require": { @@ -6299,7 +6211,7 @@ ], "support": { "issues": "https://github.com/voku/portable-utf8/issues", - "source": "https://github.com/voku/portable-utf8/tree/6.0.12" + "source": "https://github.com/voku/portable-utf8/tree/6.0.13" }, "funding": [ { @@ -6323,7 +6235,7 @@ "type": "tidelift" } ], - "time": "2023-01-11T12:26:16+00:00" + "time": "2023-03-08T08:35:38+00:00" }, { "name": "voku/stop-words", @@ -6873,16 +6785,16 @@ }, { "name": "yiisoft/yii2-debug", - "version": "2.1.19", + "version": "2.1.22", "source": { "type": "git", "url": "https://github.com/yiisoft/yii2-debug.git", - "reference": "84d20d738b0698298f851fcb6fc25e748d759223" + "reference": "c0fa388c56b64edfb92987fdcc37d7a0243170d7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/yiisoft/yii2-debug/zipball/84d20d738b0698298f851fcb6fc25e748d759223", - "reference": "84d20d738b0698298f851fcb6fc25e748d759223", + "url": "https://api.github.com/repos/yiisoft/yii2-debug/zipball/c0fa388c56b64edfb92987fdcc37d7a0243170d7", + "reference": "c0fa388c56b64edfb92987fdcc37d7a0243170d7", "shasum": "" }, "require": { @@ -6959,7 +6871,7 @@ "type": "tidelift" } ], - "time": "2022-04-05T20:35:14+00:00" + "time": "2022-11-18T17:29:27+00:00" }, { "name": "yiisoft/yii2-queue", @@ -7818,16 +7730,16 @@ }, { "name": "craftcms/html-field", - "version": "2.0.6", + "version": "2.0.7", "source": { "type": "git", "url": "https://github.com/craftcms/html-field.git", - "reference": "3030f7878335b8c7163b1db354fdc22c083d131c" + "reference": "7ecccab102b4e86abb5526411e96594f430f2bb5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/craftcms/html-field/zipball/3030f7878335b8c7163b1db354fdc22c083d131c", - "reference": "3030f7878335b8c7163b1db354fdc22c083d131c", + "url": "https://api.github.com/repos/craftcms/html-field/zipball/7ecccab102b4e86abb5526411e96594f430f2bb5", + "reference": "7ecccab102b4e86abb5526411e96594f430f2bb5", "shasum": "" }, "require": { @@ -7863,7 +7775,7 @@ "rss": "https://github.com/craftcms/html-field/commits/main.atom", "source": "https://github.com/craftcms/html-field" }, - "time": "2022-11-16T11:13:37+00:00" + "time": "2023-04-21T16:52:18+00:00" }, { "name": "craftcms/phpstan", @@ -7934,16 +7846,16 @@ }, { "name": "craftcms/redactor", - "version": "3.0.3", + "version": "3.0.4", "source": { "type": "git", "url": "https://github.com/craftcms/redactor.git", - "reference": "19578a713a06aedd4e0efb5dd80cb3947a5849c4" + "reference": "3e71faf0f129025d8814207e496870ce6deeef01" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/craftcms/redactor/zipball/19578a713a06aedd4e0efb5dd80cb3947a5849c4", - "reference": "19578a713a06aedd4e0efb5dd80cb3947a5849c4", + "url": "https://api.github.com/repos/craftcms/redactor/zipball/3e71faf0f129025d8814207e496870ce6deeef01", + "reference": "3e71faf0f129025d8814207e496870ce6deeef01", "shasum": "" }, "require": { @@ -7992,7 +7904,7 @@ "rss": "https://github.com/craftcms/redactor/commits/v2.atom", "source": "https://github.com/craftcms/redactor" }, - "time": "2023-01-01T01:36:37+00:00" + "time": "2023-03-16T23:00:48+00:00" }, { "name": "doctrine/instantiator", @@ -8066,16 +7978,16 @@ }, { "name": "fakerphp/faker", - "version": "v1.21.0", + "version": "v1.22.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" + "reference": "f85772abd508bd04e20bb4b1bbe260a68d0066d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", - "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/f85772abd508bd04e20bb4b1bbe260a68d0066d2", + "reference": "f85772abd508bd04e20bb4b1bbe260a68d0066d2", "shasum": "" }, "require": { @@ -8128,9 +8040,71 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.21.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.22.0" + }, + "time": "2023-05-14T12:31:37+00:00" + }, + { + "name": "graham-campbell/result-type", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831", + "reference": "672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.1" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.32 || ^9.6.3 || ^10.0.12" + }, + "type": "library", + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } }, - "time": "2022-12-13T13:54:32+00:00" + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "An Implementation Of The Result Type", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "time": "2023-02-25T20:23:15+00:00" }, { "name": "league/factory-muffin", @@ -8277,16 +8251,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.11.0", + "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "shasum": "" }, "require": { @@ -8324,7 +8298,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" }, "funding": [ { @@ -8332,20 +8306,20 @@ "type": "tidelift" } ], - "time": "2022-03-03T13:19:32+00:00" + "time": "2023-03-08T13:26:56+00:00" }, { "name": "nikic/php-parser", - "version": "v4.15.3", + "version": "v4.15.5", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039" + "reference": "11e2663a5bc9db5d714eedb4277ee300403b4a9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039", - "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/11e2663a5bc9db5d714eedb4277ee300403b4a9e", + "reference": "11e2663a5bc9db5d714eedb4277ee300403b4a9e", "shasum": "" }, "require": { @@ -8386,9 +8360,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.5" }, - "time": "2023-01-16T22:05:37+00:00" + "time": "2023-05-19T20:20:00+00:00" }, { "name": "phar-io/manifest", @@ -8503,24 +8477,24 @@ }, { "name": "phpoption/phpoption", - "version": "1.9.0", + "version": "1.9.1", "source": { "type": "git", "url": "https://github.com/schmittjoh/php-option.git", - "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab" + "reference": "dd3a383e599f49777d8b628dadbb90cae435b87e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", - "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/dd3a383e599f49777d8b628dadbb90cae435b87e", + "reference": "dd3a383e599f49777d8b628dadbb90cae435b87e", "shasum": "" }, "require": { "php": "^7.2.5 || ^8.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.8", - "phpunit/phpunit": "^8.5.28 || ^9.5.21" + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.32 || ^9.6.3 || ^10.0.12" }, "type": "library", "extra": { @@ -8562,7 +8536,7 @@ ], "support": { "issues": "https://github.com/schmittjoh/php-option/issues", - "source": "https://github.com/schmittjoh/php-option/tree/1.9.0" + "source": "https://github.com/schmittjoh/php-option/tree/1.9.1" }, "funding": [ { @@ -8574,20 +8548,20 @@ "type": "tidelift" } ], - "time": "2022-07-30T15:51:26+00:00" + "time": "2023-02-25T19:38:58+00:00" }, { "name": "phpstan/phpstan", - "version": "1.9.14", + "version": "1.10.15", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "e5fcc96289cf737304286a9b505fbed091f02e58" + "reference": "762c4dac4da6f8756eebb80e528c3a47855da9bd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e5fcc96289cf737304286a9b505fbed091f02e58", - "reference": "e5fcc96289cf737304286a9b505fbed091f02e58", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/762c4dac4da6f8756eebb80e528c3a47855da9bd", + "reference": "762c4dac4da6f8756eebb80e528c3a47855da9bd", "shasum": "" }, "require": { @@ -8616,8 +8590,11 @@ "static analysis" ], "support": { + "docs": "https://phpstan.org/user-guide/getting-started", + "forum": "https://github.com/phpstan/phpstan/discussions", "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/1.9.14" + "security": "https://github.com/phpstan/phpstan/security/policy", + "source": "https://github.com/phpstan/phpstan-src" }, "funding": [ { @@ -8633,27 +8610,27 @@ "type": "tidelift" } ], - "time": "2023-01-19T10:47:09+00:00" + "time": "2023-05-09T15:28:01+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.24", + "version": "9.2.26", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed" + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2cf940ebc6355a9d430462811b5aaa308b174bed", - "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.14", + "nikic/php-parser": "^4.15", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -8668,8 +8645,8 @@ "phpunit/phpunit": "^9.3" }, "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "type": "library", "extra": { @@ -8702,7 +8679,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.24" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.26" }, "funding": [ { @@ -8710,7 +8687,7 @@ "type": "github" } ], - "time": "2023-01-26T08:26:55+00:00" + "time": "2023-03-06T12:58:08+00:00" }, { "name": "phpunit/php-file-iterator", @@ -8955,16 +8932,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.28", + "version": "9.6.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "954ca3113a03bf780d22f07bf055d883ee04b65e" + "reference": "17d621b3aff84d0c8b62539e269e87d8d5baa76e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/954ca3113a03bf780d22f07bf055d883ee04b65e", - "reference": "954ca3113a03bf780d22f07bf055d883ee04b65e", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/17d621b3aff84d0c8b62539e269e87d8d5baa76e", + "reference": "17d621b3aff84d0c8b62539e269e87d8d5baa76e", "shasum": "" }, "require": { @@ -8997,8 +8974,8 @@ "sebastian/version": "^3.0.2" }, "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" + "ext-soap": "To be able to generate mocks based on WSDL files", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "bin": [ "phpunit" @@ -9006,7 +8983,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.5-dev" + "dev-master": "9.6-dev" } }, "autoload": { @@ -9037,7 +9014,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.28" + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.8" }, "funding": [ { @@ -9053,7 +9031,7 @@ "type": "tidelift" } ], - "time": "2023-01-14T12:32:24+00:00" + "time": "2023-05-11T05:14:45+00:00" }, { "name": "rector/rector", @@ -9412,16 +9390,16 @@ }, { "name": "sebastian/diff", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/74be17022044ebaaecfdf0c5cd504fc9cd5a7131", + "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131", "shasum": "" }, "require": { @@ -9466,7 +9444,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.5" }, "funding": [ { @@ -9474,20 +9452,20 @@ "type": "github" } ], - "time": "2020-10-26T13:10:38+00:00" + "time": "2023-05-07T05:35:17+00:00" }, { "name": "sebastian/environment", - "version": "5.1.4", + "version": "5.1.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7" + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", "shasum": "" }, "require": { @@ -9529,7 +9507,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.4" + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" }, "funding": [ { @@ -9537,7 +9515,7 @@ "type": "github" } ], - "time": "2022-04-03T09:37:03+00:00" + "time": "2023-02-03T06:03:51+00:00" }, { "name": "sebastian/exporter", @@ -9851,16 +9829,16 @@ }, { "name": "sebastian/recursion-context", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", "shasum": "" }, "require": { @@ -9899,10 +9877,10 @@ } ], "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "homepage": "https://github.com/sebastianbergmann/recursion-context", "support": { "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" }, "funding": [ { @@ -9910,7 +9888,7 @@ "type": "github" } ], - "time": "2020-10-26T13:17:30+00:00" + "time": "2023-02-03T06:07:39+00:00" }, { "name": "sebastian/resource-operations", @@ -9969,16 +9947,16 @@ }, { "name": "sebastian/type", - "version": "3.2.0", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", "shasum": "" }, "require": { @@ -10013,7 +9991,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" }, "funding": [ { @@ -10021,7 +9999,7 @@ "type": "github" } ], - "time": "2022-09-12T14:47:03+00:00" + "time": "2023-02-03T06:13:03+00:00" }, { "name": "sebastian/version", @@ -10143,16 +10121,16 @@ }, { "name": "symfony/browser-kit", - "version": "v5.4.19", + "version": "v5.4.21", "source": { "type": "git", "url": "https://github.com/symfony/browser-kit.git", - "reference": "572b9e03741051b97c316f65f8c361eed08fdb14" + "reference": "a866ca7e396f15d7efb6d74a8a7d364d4e05b704" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/572b9e03741051b97c316f65f8c361eed08fdb14", - "reference": "572b9e03741051b97c316f65f8c361eed08fdb14", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/a866ca7e396f15d7efb6d74a8a7d364d4e05b704", + "reference": "a866ca7e396f15d7efb6d74a8a7d364d4e05b704", "shasum": "" }, "require": { @@ -10195,7 +10173,7 @@ "description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/browser-kit/tree/v5.4.19" + "source": "https://github.com/symfony/browser-kit/tree/v5.4.21" }, "funding": [ { @@ -10211,20 +10189,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-14T08:03:56+00:00" }, { "name": "symfony/css-selector", - "version": "v5.4.19", + "version": "v5.4.21", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "f4a7d150f5b9e8f974f6f127d8167e420d11fc62" + "reference": "95f3c7468db1da8cc360b24fa2a26e7cefcb355d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/f4a7d150f5b9e8f974f6f127d8167e420d11fc62", - "reference": "f4a7d150f5b9e8f974f6f127d8167e420d11fc62", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/95f3c7468db1da8cc360b24fa2a26e7cefcb355d", + "reference": "95f3c7468db1da8cc360b24fa2a26e7cefcb355d", "shasum": "" }, "require": { @@ -10261,7 +10239,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v5.4.19" + "source": "https://github.com/symfony/css-selector/tree/v5.4.21" }, "funding": [ { @@ -10277,20 +10255,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-14T08:03:56+00:00" }, { "name": "symfony/dom-crawler", - "version": "v5.4.19", + "version": "v5.4.23", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "224a1820e7669babdd85970230ed72bd6e342ad4" + "reference": "4a286c916b74ecfb6e2caf1aa31d3fe2a34b7e08" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/224a1820e7669babdd85970230ed72bd6e342ad4", - "reference": "224a1820e7669babdd85970230ed72bd6e342ad4", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/4a286c916b74ecfb6e2caf1aa31d3fe2a34b7e08", + "reference": "4a286c916b74ecfb6e2caf1aa31d3fe2a34b7e08", "shasum": "" }, "require": { @@ -10336,7 +10314,7 @@ "description": "Eases DOM navigation for HTML and XML documents", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dom-crawler/tree/v5.4.19" + "source": "https://github.com/symfony/dom-crawler/tree/v5.4.23" }, "funding": [ { @@ -10352,7 +10330,7 @@ "type": "tidelift" } ], - "time": "2023-01-14T19:14:44+00:00" + "time": "2023-04-08T21:20:19+00:00" }, { "name": "symplify/easy-coding-standard", @@ -10461,36 +10439,43 @@ }, { "name": "vlucas/phpdotenv", - "version": "v3.6.10", + "version": "v5.5.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "5b547cdb25825f10251370f57ba5d9d924e6f68e" + "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/5b547cdb25825f10251370f57ba5d9d924e6f68e", - "reference": "5b547cdb25825f10251370f57ba5d9d924e6f68e", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", + "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", "shasum": "" }, "require": { - "php": "^5.4 || ^7.0 || ^8.0", - "phpoption/phpoption": "^1.5.2", - "symfony/polyfill-ctype": "^1.17" + "ext-pcre": "*", + "graham-campbell/result-type": "^1.0.2", + "php": "^7.1.3 || ^8.0", + "phpoption/phpoption": "^1.8", + "symfony/polyfill-ctype": "^1.23", + "symfony/polyfill-mbstring": "^1.23.1", + "symfony/polyfill-php80": "^1.23.1" }, "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", "ext-filter": "*", - "ext-pcre": "*", - "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.21" + "phpunit/phpunit": "^7.5.20 || ^8.5.30 || ^9.5.25" }, "suggest": { - "ext-filter": "Required to use the boolean validator.", - "ext-pcre": "Required to use most of the library." + "ext-filter": "Required to use the boolean validator." }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": true + }, "branch-alias": { - "dev-master": "3.6-dev" + "dev-master": "5.5-dev" } }, "autoload": { @@ -10522,7 +10507,7 @@ ], "support": { "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v3.6.10" + "source": "https://github.com/vlucas/phpdotenv/tree/v5.5.0" }, "funding": [ { @@ -10534,7 +10519,7 @@ "type": "tidelift" } ], - "time": "2021-12-12T23:02:06+00:00" + "time": "2022-10-16T01:01:54+00:00" } ], "aliases": [], diff --git a/example-templates/dist/shop/_private/layouts/index.twig b/example-templates/dist/shop/_private/layouts/index.twig index ba64ccb14c..653b807a64 100644 --- a/example-templates/dist/shop/_private/layouts/index.twig +++ b/example-templates/dist/shop/_private/layouts/index.twig @@ -131,7 +131,7 @@ Common, top-level layout template. let states = {{ craft.commerce.store.getStore().getAdministrativeAreasListByCountryCode()|json_encode|raw }}; {% set usedFields = {} %} {% for countryCode in craft.app.addresses.getCountryRepository().getAll()|keys %} - {% set usedFields = usedFields|merge({ (countryCode): craft.app.addresses.getAddressFormatRepository().get(countryCode).getUsedFields()|merge([ + {% set usedFields = usedFields|merge({ (countryCode): craft.app.addresses.getUsedFields(countryCode)|merge([ 'fullName', 'latLong', 'organizationTaxId', @@ -140,7 +140,7 @@ let states = {{ craft.commerce.store.getStore().getAdministrativeAreasListByCoun ]) }) %} {% endfor %} let usedAddressFieldsByCountryCode = {{ usedFields|json_encode|raw }}; - +console.log(usedAddressFieldsByCountryCode); function hideAddressFields(selectorTemplate) { const fields = document.querySelectorAll('.' + selectorTemplate.replace('placeHolder', 'js-address-field')); if (!fields.length) { diff --git a/example-templates/src/shop/_private/layouts/index.twig b/example-templates/src/shop/_private/layouts/index.twig index db3b605d2d..6c55d45fb6 100755 --- a/example-templates/src/shop/_private/layouts/index.twig +++ b/example-templates/src/shop/_private/layouts/index.twig @@ -131,7 +131,7 @@ Common, top-level layout template. let states = {{ craft.commerce.store.getStore().getAdministrativeAreasListByCountryCode()|json_encode|raw }}; {% set usedFields = {} %} {% for countryCode in craft.app.addresses.getCountryRepository().getAll()|keys %} - {% set usedFields = usedFields|merge({ (countryCode): craft.app.addresses.getAddressFormatRepository().get(countryCode).getUsedFields()|merge([ + {% set usedFields = usedFields|merge({ (countryCode): craft.app.addresses.getUsedFields(countryCode)|merge([ 'fullName', 'latLong', 'organizationTaxId', @@ -140,7 +140,7 @@ let states = {{ craft.commerce.store.getStore().getAdministrativeAreasListByCoun ]) }) %} {% endfor %} let usedAddressFieldsByCountryCode = {{ usedFields|json_encode|raw }}; - +console.log(usedAddressFieldsByCountryCode); function hideAddressFields(selectorTemplate) { const fields = document.querySelectorAll('.' + selectorTemplate.replace('placeHolder', 'js-address-field')); if (!fields.length) { diff --git a/src/controllers/CartController.php b/src/controllers/CartController.php index e6f9e599bd..3754a074a7 100644 --- a/src/controllers/CartController.php +++ b/src/controllers/CartController.php @@ -527,6 +527,30 @@ private function _getCart(bool $forceSave = false): Order private function _setAddresses(): void { $currentUser = Craft::$app->getUser()->getIdentity(); + + $setShippingAddress = true; + if ($this->request->getParam('clearShippingAddress') !== null) { + $this->_cart->setShippingAddress(null); + $this->_cart->sourceShippingAddressId = null; + $setShippingAddress = false; + } + + $setBillingAddress = true; + if ($this->request->getParam('clearBillingAddress') !== null) { + $this->_cart->setBillingAddress(null); + $this->_cart->sourceBillingAddressId = null; + $setBillingAddress = false; + } + + if ($this->request->getParam('clearAddresses') !== null) { + $this->_cart->setShippingAddress(null); + $this->_cart->sourceShippingAddressId = null; + $this->_cart->setBillingAddress(null); + $this->_cart->sourceBillingAddressId = null; + $setBillingAddress = false; + $setShippingAddress = false; + } + // Copy address options $shippingIsBilling = $this->request->getParam('shippingAddressSameAsBilling'); $billingIsShipping = $this->request->getParam('billingAddressSameAsShipping'); @@ -541,68 +565,72 @@ private function _setAddresses(): void $shippingAddressId = $this->request->getParam('shippingAddressId'); $billingAddressId = $this->request->getParam('billingAddressId'); - // Shipping address - if ($shippingAddressId && !$shippingIsBilling) { - /** @var Address|null $userShippingAddress */ - $userShippingAddress = Collection::make($currentUser->getAddresses())->firstWhere('id', $shippingAddressId); + if ($setShippingAddress) { + // Shipping address + if ($shippingAddressId && !$shippingIsBilling) { + /** @var Address|null $userShippingAddress */ + $userShippingAddress = Collection::make($currentUser->getAddresses())->firstWhere('id', $shippingAddressId); - // If a user's address ID has been submitted duplicate the address to the order - if ($userShippingAddress) { - $this->_cart->sourceShippingAddressId = $shippingAddressId; + // If a user's address ID has been submitted duplicate the address to the order + if ($userShippingAddress) { + $this->_cart->sourceShippingAddressId = $shippingAddressId; - /** @var Address $cartShippingAddress */ - $cartShippingAddress = Craft::$app->getElements()->duplicateElement($userShippingAddress, ['ownerId' => $this->_cart->id]); - $this->_cart->setShippingAddress($cartShippingAddress); + /** @var Address $cartShippingAddress */ + $cartShippingAddress = Craft::$app->getElements()->duplicateElement($userShippingAddress, ['ownerId' => $this->_cart->id]); + $this->_cart->setShippingAddress($cartShippingAddress); - if ($billingIsShipping) { - $this->_cart->sourceBillingAddressId = $userShippingAddress->id; - $this->_cart->setBillingAddress($cartShippingAddress); + if ($billingIsShipping) { + $this->_cart->sourceBillingAddressId = $userShippingAddress->id; + $this->_cart->setBillingAddress($cartShippingAddress); + } } - } - } elseif ($shippingAddress && !$shippingIsBilling) { - $this->_cart->sourceShippingAddressId = null; - $this->_cart->setShippingAddress($shippingAddress); + } elseif ($shippingAddress && !$shippingIsBilling) { + $this->_cart->sourceShippingAddressId = null; + $this->_cart->setShippingAddress($shippingAddress); - if (!empty($shippingAddress['fields']) && $this->_cart->getShippingAddress()) { - $this->_cart->getShippingAddress()->setFieldValues($shippingAddress['fields']); - } + if (!empty($shippingAddress['fields']) && $this->_cart->getShippingAddress()) { + $this->_cart->getShippingAddress()->setFieldValues($shippingAddress['fields']); + } - if ($billingIsShipping) { - $this->_cart->sourceBillingAddressId = null; - $this->_cart->setBillingAddress($this->_cart->getShippingAddress()); + if ($billingIsShipping) { + $this->_cart->sourceBillingAddressId = null; + $this->_cart->setBillingAddress($this->_cart->getShippingAddress()); + } } } // Billing address - if ($billingAddressId && !$billingIsShipping) { - /** @var Address|null $userBillingAddress */ - $userBillingAddress = Collection::make($currentUser->getAddresses())->firstWhere('id', $billingAddressId); - - // If a user's address ID has been submitted duplicate the address to the order - if ($userBillingAddress) { - $this->_cart->sourceBillingAddressId = $billingAddressId; + if ($setBillingAddress) { + if ($billingAddressId && !$billingIsShipping) { + /** @var Address|null $userBillingAddress */ + $userBillingAddress = Collection::make($currentUser->getAddresses())->firstWhere('id', $billingAddressId); + + // If a user's address ID has been submitted duplicate the address to the order + if ($userBillingAddress) { + $this->_cart->sourceBillingAddressId = $billingAddressId; + + /** @var Address $cartBillingAddress */ + $cartBillingAddress = Craft::$app->getElements()->duplicateElement($userBillingAddress, ['ownerId' => $this->_cart->id]); + $this->_cart->setBillingAddress($cartBillingAddress); + + if ($shippingIsBilling) { + $this->_cart->sourceShippingAddressId = $userBillingAddress->id; + $this->_cart->setShippingAddress($cartBillingAddress); + } + } + } elseif ($billingAddress && !$billingIsShipping) { + $this->_cart->sourceBillingAddressId = null; + $this->_cart->setBillingAddress($billingAddress); - /** @var Address $cartBillingAddress */ - $cartBillingAddress = Craft::$app->getElements()->duplicateElement($userBillingAddress, ['ownerId' => $this->_cart->id]); - $this->_cart->setBillingAddress($cartBillingAddress); + if (!empty($billingAddress['fields']) && $this->_cart->getBillingAddress()) { + $this->_cart->getBillingAddress()->setFieldValues($billingAddress['fields']); + } if ($shippingIsBilling) { - $this->_cart->sourceShippingAddressId = $userBillingAddress->id; - $this->_cart->setShippingAddress($cartBillingAddress); + $this->_cart->sourceShippingAddressId = null; + $this->_cart->setShippingAddress($this->_cart->getBillingAddress()); } } - } elseif ($billingAddress && !$billingIsShipping) { - $this->_cart->sourceBillingAddressId = null; - $this->_cart->setBillingAddress($billingAddress); - - if (!empty($billingAddress['fields']) && $this->_cart->getBillingAddress()) { - $this->_cart->getBillingAddress()->setFieldValues($billingAddress['fields']); - } - - if ($shippingIsBilling) { - $this->_cart->sourceShippingAddressId = null; - $this->_cart->setShippingAddress($this->_cart->getBillingAddress()); - } } // Estimated Shipping Address @@ -629,17 +657,21 @@ private function _setAddresses(): void $this->_cart->setEstimatedBillingAddress($estimatedBillingAddress); } + $this->_cart->billingSameAsShipping = (bool)$billingIsShipping; $this->_cart->shippingSameAsBilling = (bool)$shippingIsBilling; $this->_cart->estimatedBillingSameAsShipping = (bool)$estimatedBillingIsShipping; // Set primary addresses - if ($this->request->getBodyParam('makePrimaryShippingAddress')) { - $this->_cart->makePrimaryShippingAddress = true; + if ($setShippingAddress) { + if ($this->request->getBodyParam('makePrimaryShippingAddress')) { + $this->_cart->makePrimaryShippingAddress = true; + } } - - if ($this->request->getBodyParam('makePrimaryBillingAddress')) { - $this->_cart->makePrimaryBillingAddress = true; + if ($setBillingAddress) { + if ($this->request->getBodyParam('makePrimaryBillingAddress')) { + $this->_cart->makePrimaryBillingAddress = true; + } } } } diff --git a/src/elements/db/VariantQuery.php b/src/elements/db/VariantQuery.php index de1b61ca38..1c4a136b4a 100644 --- a/src/elements/db/VariantQuery.php +++ b/src/elements/db/VariantQuery.php @@ -588,7 +588,7 @@ protected function beforePrepare(): bool $this->subQuery->andWhere(Db::parseParam('commerce_variants.price', $this->price)); } - if (isset($this->isDefault) && $this->isDefault !== null) { + if (isset($this->isDefault)) { $this->subQuery->andWhere(Db::parseBooleanParam('commerce_variants.isDefault', $this->isDefault, false)); } diff --git a/src/migrations/m211118_101920_split_coupon_codes.php b/src/migrations/m211118_101920_split_coupon_codes.php index 489e98ec50..51c7e80308 100644 --- a/src/migrations/m211118_101920_split_coupon_codes.php +++ b/src/migrations/m211118_101920_split_coupon_codes.php @@ -58,10 +58,14 @@ public function safeUp(): bool if (!empty($discountsWithCodes)) { $coupons = array_map(static function($discount) use ($codeUsage) { + $maxUses = $discount['totalDiscountUseLimit'] !== null && $discount['totalDiscountUseLimit'] > 0 + ? $discount['totalDiscountUseLimit'] + : null; + $row['code'] = $discount['code']; $row['discountId'] = $discount['id']; $row['uses'] = $codeUsage[$discount['code']] ?? 0; - $row['maxUses'] = $discount['totalDiscountUseLimit'] ?? 0; + $row['maxUses'] = $maxUses; $row['dateCreated'] = $discount['dateCreated']; $row['dateUpdated'] = $discount['dateUpdated']; $row['uid'] = StringHelper::UUID(); diff --git a/src/templates/promotions/discounts/_edit.twig b/src/templates/promotions/discounts/_edit.twig index c6f900bc18..f7970b0012 100644 --- a/src/templates/promotions/discounts/_edit.twig +++ b/src/templates/promotions/discounts/_edit.twig @@ -36,12 +36,12 @@ {% endif %} {% set tabs = { - 0: {'label':'Discount'|t('commerce'),'url':'#discount','class':discountClasses}, - 1: {'label':'Coupons'|t('commerce'),'url':'#coupons','class':couponClasses}, - 2: {'label':'Matching Items'|t('commerce'),'url':'#matching-items','class':matchingItemsClasses}, - 3: {'label':'Conditions Rules'|t('commerce'),'url':'#condition-rules','class':conditionRulesClasses}, - 4: {'label':'Conditions'|t('commerce'),'url':'#conditions','class':conditionsClasses}, - 5: {'label':'Actions'|t('commerce'),'url':'#actions'} + discount: {'label':'Discount'|t('commerce'),'url':'#discount','class':discountClasses}, + coupons: {'label':'Coupons'|t('commerce'),'url':'#coupons','class':couponClasses}, + matchingItems: {'label':'Matching Items'|t('commerce'),'url':'#matching-items','class':matchingItemsClasses}, + conditionRules: {'label':'Conditions Rules'|t('commerce'),'url':'#condition-rules','class':conditionRulesClasses}, + conditions: {'label':'Conditions'|t('commerce'),'url':'#conditions','class':conditionsClasses}, + actions: {'label':'Actions'|t('commerce'),'url':'#actions'} } %} {% set couponsTable = { diff --git a/src/templates/promotions/sales/_edit.twig b/src/templates/promotions/sales/_edit.twig index 8228697509..bb9f539fe9 100644 --- a/src/templates/promotions/sales/_edit.twig +++ b/src/templates/promotions/sales/_edit.twig @@ -28,10 +28,10 @@ {% endif %} {% set tabs = { - 0: {'label':'Sale'|t('commerce'),'url':'#sale','class': saleClasses}, - 1: {'label':'Matching Items'|t('commerce'),'url':'#matching-items'}, - 2: {'label':'Conditions'|t('commerce'),'url':'#conditions'}, - 3: {'label':'Actions'|t('commerce'),'url':'#actions','class': actionClasses} + sale: {'label':'Sale'|t('commerce'),'url':'#sale','class': saleClasses}, + matchingItems: {'label':'Matching Items'|t('commerce'),'url':'#matching-items'}, + conditions: {'label':'Conditions'|t('commerce'),'url':'#conditions'}, + actions: {'label':'Actions'|t('commerce'),'url':'#actions','class': actionClasses} } %} {% hook "cp.commerce.sales.edit" %} diff --git a/src/templates/shipping/shippingrules/_edit.twig b/src/templates/shipping/shippingrules/_edit.twig index 06cc1cfb66..349d2a2039 100644 --- a/src/templates/shipping/shippingrules/_edit.twig +++ b/src/templates/shipping/shippingrules/_edit.twig @@ -117,9 +117,9 @@ {% import "commerce/_includes/forms/commerceForms" as commerceForms %} {% set tabs = { - 0: {'label':'Rule'|t('commerce'),'url':'#rule-tab'}, - 1: {'label':'Conditions'|t('commerce'),'url':'#conditions-tab'}, - 2: {'label':'Costs'|t('commerce'),'url':'#costs-tab'} + rule: {'label':'Rule'|t('commerce'),'url':'#rule-tab'}, + conditions: {'label':'Conditions'|t('commerce'),'url':'#conditions-tab'}, + costs: {'label':'Costs'|t('commerce'),'url':'#costs-tab'} } %} {% block actionButton %}