From d3a93652f3a15929f34b4259bc852c7657885385 Mon Sep 17 00:00:00 2001 From: johnnyq Date: Fri, 12 Jun 2026 17:06:10 -0400 Subject: [PATCH] Allow PHP-8.2 and up Compatibility instead of just PHP-8.4 --- plugins/composer.json | 5 + plugins/composer.lock | 340 ++++--- plugins/vendor/composer/autoload_classmap.php | 10 + plugins/vendor/composer/autoload_files.php | 15 +- plugins/vendor/composer/autoload_psr4.php | 4 +- plugins/vendor/composer/autoload_static.php | 38 +- plugins/vendor/composer/installed.json | 374 +++++--- plugins/vendor/composer/installed.php | 119 +-- plugins/vendor/composer/platform_check.php | 4 +- plugins/vendor/illuminate/collections/Arr.php | 170 +++- .../illuminate/collections/Collection.php | 129 ++- .../illuminate/collections/Enumerable.php | 15 +- .../illuminate/collections/LazyCollection.php | 415 ++++---- .../collections/Traits/EnumeratesValues.php | 48 +- .../Traits/TransformsToResourceCollection.php | 53 ++ .../illuminate/collections/composer.json | 1 + .../vendor/illuminate/collections/helpers.php | 40 +- .../illuminate/contracts/Auth/Access/Gate.php | 2 +- .../Container/ContextualBindingBuilder.php | 6 +- .../illuminate/contracts/Cookie/Factory.php | 2 +- .../Eloquent/SupportsPartialRelations.php | 2 +- .../contracts/Database/ModelIdentifier.php | 39 +- .../contracts/JsonSchema/JsonSchema.php | 59 ++ .../contracts/Process/InvokedProcess.php | 8 + .../illuminate/macroable/Traits/Macroable.php | 8 +- .../pagination/AbstractCursorPaginator.php | 1 + .../resources/views/simple-tailwind.blade.php | 14 +- .../resources/views/tailwind.blade.php | 37 +- .../vendor/illuminate/reflection/LICENSE.md | 21 + .../{support => reflection}/Reflector.php | 2 + .../Traits/ReflectsClosures.php | 31 + .../illuminate/reflection/composer.json | 38 + .../vendor/illuminate/reflection/helpers.php | 97 ++ .../support/AggregateServiceProvider.php | 6 +- .../vendor/illuminate/support/Benchmark.php | 3 + .../vendor/illuminate/support/BinaryCodec.php | 99 ++ plugins/vendor/illuminate/support/Carbon.php | 38 + plugins/vendor/illuminate/support/Env.php | 13 +- .../illuminate/support/Facades/Auth.php | 1 + .../illuminate/support/Facades/Blade.php | 2 +- .../vendor/illuminate/support/Facades/Bus.php | 4 +- .../illuminate/support/Facades/Cache.php | 64 +- .../support/Facades/Concurrency.php | 6 +- .../illuminate/support/Facades/Crypt.php | 1 + .../vendor/illuminate/support/Facades/DB.php | 4 +- .../illuminate/support/Facades/Event.php | 6 +- .../illuminate/support/Facades/Facade.php | 6 +- .../illuminate/support/Facades/File.php | 7 +- .../illuminate/support/Facades/Gate.php | 2 +- .../illuminate/support/Facades/Http.php | 23 +- .../vendor/illuminate/support/Facades/Log.php | 2 +- .../illuminate/support/Facades/Mail.php | 3 +- .../support/Facades/MaintenanceMode.php | 11 + .../support/Facades/Notification.php | 8 +- .../support/Facades/ParallelTesting.php | 2 + .../illuminate/support/Facades/Queue.php | 11 +- .../support/Facades/RateLimiter.php | 4 +- .../illuminate/support/Facades/Redis.php | 276 +++++- .../illuminate/support/Facades/Request.php | 17 +- .../illuminate/support/Facades/Schedule.php | 3 +- .../illuminate/support/Facades/Schema.php | 4 + .../illuminate/support/Facades/Session.php | 35 +- .../illuminate/support/Facades/Storage.php | 26 +- .../illuminate/support/Facades/View.php | 1 + plugins/vendor/illuminate/support/Fluent.php | 5 +- .../illuminate/support/InteractsWithTime.php | 2 +- plugins/vendor/illuminate/support/Js.php | 4 +- plugins/vendor/illuminate/support/Manager.php | 2 +- .../vendor/illuminate/support/MessageBag.php | 5 +- plugins/vendor/illuminate/support/Number.php | 36 +- .../illuminate/support/ServiceProvider.php | 95 +- plugins/vendor/illuminate/support/Str.php | 209 ++-- .../vendor/illuminate/support/Stringable.php | 47 +- .../support/Testing/Fakes/BusFake.php | 13 +- .../Testing/Fakes/ChainedBatchTruthTest.php | 4 +- .../support/Testing/Fakes/EventFake.php | 1 - .../Testing/Fakes/ExceptionHandlerFake.php | 2 +- .../support/Testing/Fakes/MailFake.php | 2 +- .../Testing/Fakes/NotificationFake.php | 4 +- .../Testing/Fakes/PendingBatchFake.php | 41 +- .../support/Testing/Fakes/QueueFake.php | 32 +- plugins/vendor/illuminate/support/Timebox.php | 2 +- .../support/Traits/InteractsWithData.php | 52 +- plugins/vendor/illuminate/support/Uri.php | 12 +- .../illuminate/support/ValidatedInput.php | 26 +- .../vendor/illuminate/support/composer.json | 1 + .../vendor/illuminate/support/functions.php | 108 +++ plugins/vendor/illuminate/support/helpers.php | 33 +- plugins/vendor/nesbot/carbon/composer.json | 10 +- plugins/vendor/nesbot/carbon/extension.neon | 4 + plugins/vendor/nesbot/carbon/readme.md | 81 +- plugins/vendor/nesbot/carbon/sponsors.php | 268 ------ .../carbon/src/Carbon/AbstractTranslator.php | 895 ++++++++++++++++- .../nesbot/carbon/src/Carbon/Carbon.php | 2 +- .../carbon/src/Carbon/CarbonImmutable.php | 2 +- .../carbon/src/Carbon/CarbonInterface.php | 190 +--- .../carbon/src/Carbon/CarbonInterval.php | 3 +- .../nesbot/carbon/src/Carbon/CarbonPeriod.php | 3 +- .../src/Carbon/Constants/DiffOptions.php | 37 + .../carbon/src/Carbon/Constants/Format.php | 45 + .../Carbon/Constants/TranslationOptions.php | 39 + .../carbon/src/Carbon/Constants/UnitValue.php | 66 ++ .../nesbot/carbon/src/Carbon/Factory.php | 7 +- .../carbon/src/Carbon/FactoryImmutable.php | 4 +- .../nesbot/carbon/src/Carbon/Lang/az.php | 1 - .../nesbot/carbon/src/Carbon/Lang/az_Arab.php | 27 + .../nesbot/carbon/src/Carbon/Lang/az_Cyrl.php | 1 - .../nesbot/carbon/src/Carbon/Lang/az_IR.php | 4 - .../nesbot/carbon/src/Carbon/Lang/az_Latn.php | 1 - .../nesbot/carbon/src/Carbon/Lang/bn.php | 55 +- .../nesbot/carbon/src/Carbon/Lang/el.php | 8 + .../nesbot/carbon/src/Carbon/Lang/en.php | 1 + .../nesbot/carbon/src/Carbon/Lang/fy_DE.php | 2 +- .../nesbot/carbon/src/Carbon/Lang/fy_NL.php | 2 - .../nesbot/carbon/src/Carbon/Lang/pa_PK.php | 2 +- .../nesbot/carbon/src/Carbon/Lang/sl.php | 4 +- .../nesbot/carbon/src/Carbon/Lang/yi_US.php | 83 +- .../carbon/src/Carbon/List/languages.php | 2 +- .../carbon/src/Carbon/Traits/Creator.php | 13 +- .../nesbot/carbon/src/Carbon/Traits/Date.php | 6 +- .../carbon/src/Carbon/Traits/Localization.php | 37 +- .../nesbot/carbon/src/Carbon/Traits/Mixin.php | 33 +- .../carbon/src/Carbon/Traits/Mutability.php | 23 +- .../src/Carbon/Traits/Serialization.php | 79 -- .../nesbot/carbon/src/Carbon/Traits/Test.php | 2 +- .../nesbot/carbon/src/Carbon/Traits/Units.php | 21 +- plugins/vendor/symfony/clock/MockClock.php | 4 + .../deprecation-contracts/composer.json | 2 +- .../symfony/http-foundation/AcceptHeader.php | 204 +++- .../http-foundation/BinaryFileResponse.php | 2 +- .../symfony/http-foundation/CHANGELOG.md | 13 + .../http-foundation/EventStreamResponse.php | 2 +- .../Exception/ExpiredSignedUriException.php | 3 + .../Exception/SignedUriException.php | 3 + .../symfony/http-foundation/File/File.php | 11 +- .../http-foundation/File/UploadedFile.php | 30 +- .../symfony/http-foundation/HeaderUtils.php | 2 +- .../symfony/http-foundation/InputBag.php | 8 +- .../symfony/http-foundation/IpUtils.php | 9 +- .../symfony/http-foundation/ParameterBag.php | 17 +- .../symfony/http-foundation/Request.php | 205 +++- .../symfony/http-foundation/Response.php | 14 +- .../http-foundation/ResponseHeaderBag.php | 2 +- .../Handler/AbstractSessionHandler.php | 10 + .../Handler/NativeFileSessionHandler.php | 2 +- .../Storage/Handler/PdoSessionHandler.php | 23 +- .../Storage/Handler/SessionHandlerFactory.php | 1 + .../Session/Storage/MetadataBag.php | 8 +- .../Storage/MockFileSessionStorage.php | 4 +- .../http-foundation/StreamedJsonResponse.php | 2 +- .../symfony/http-foundation/UriSigner.php | 19 +- .../symfony/http-foundation/composer.json | 19 +- plugins/vendor/symfony/mime/CHANGELOG.md | 5 - .../vendor/symfony/mime/Part/AbstractPart.php | 45 +- plugins/vendor/symfony/mime/Part/DataPart.php | 125 ++- .../vendor/symfony/mime/Part/SMimePart.php | 121 ++- plugins/vendor/symfony/mime/Part/TextPart.php | 134 ++- plugins/vendor/symfony/mime/README.md | 10 - plugins/vendor/symfony/mime/composer.json | 17 +- .../symfony/polyfill-mbstring/Mbstring.php | 207 ++-- .../symfony/polyfill-mbstring/bootstrap.php | 158 +-- .../symfony/polyfill-mbstring/bootstrap72.php | 173 ++++ .../symfony/polyfill-mbstring/bootstrap80.php | 14 +- .../vendor/symfony/polyfill-php83/Php83.php | 84 +- .../symfony/polyfill-php83/bootstrap.php | 18 +- .../symfony/polyfill-php83/bootstrap72.php | 19 + .../symfony/polyfill-php83/bootstrap81.php | 20 +- .../vendor/symfony/polyfill-php84/Php84.php | 273 +++++- .../vendor/symfony/polyfill-php84/README.md | 1 + .../polyfill-php84/Resources/Deprecated.php | 25 + .../polyfill-php84/Resources/RoundingMode.php | 24 + .../Resources/stubs/Deprecated.php | 15 +- .../Resources/stubs/Pdo/Dblib.php | 43 + .../Resources/stubs/Pdo/Firebird.php | 39 + .../Resources/stubs/Pdo/Mysql.php | 140 +++ .../Resources/stubs/Pdo/Odbc.php | 41 + .../Resources/stubs/Pdo/Pgsql.php | 94 ++ .../Resources/stubs/Pdo/Sqlite.php | 58 ++ .../Resources/stubs/ReflectionConstant.php | 5 +- .../Resources/stubs/RoundingMode.php | 44 + .../symfony/polyfill-php84/bootstrap.php | 39 +- .../symfony/polyfill-php84/bootstrap72.php | 39 + .../vendor/symfony/polyfill-php85/Php85.php | 91 +- .../vendor/symfony/polyfill-php85/README.md | 4 + .../stubs/DelayedTargetValidation.php | 18 + .../stubs/Filter/FilterException.php | 18 + .../stubs/Filter/FilterFailedException.php | 18 + .../symfony/polyfill-php85/bootstrap.php | 14 + .../symfony/polyfill-php85/bootstrap80.php | 20 + .../Test/TranslatorTest.php | 15 +- .../translation-contracts/TranslatorTrait.php | 34 +- .../translation-contracts/composer.json | 2 +- .../vendor/symfony/translation/CHANGELOG.md | 7 + .../Command/TranslationLintCommand.php | 8 +- .../Command/TranslationPullCommand.php | 21 +- .../Command/TranslationPushCommand.php | 27 +- .../translation/Command/XliffLintCommand.php | 32 +- .../translation/DataCollectorTranslator.php | 8 +- .../TranslationExtractorPass.php | 7 +- .../TranslatorPathsPass.php | 4 +- .../symfony/translation/Dumper/FileDumper.php | 2 +- .../translation/Dumper/PoFileDumper.php | 28 +- .../translation/Extractor/PhpAstExtractor.php | 1 - .../Extractor/Visitor/ConstraintVisitor.php | 1 - .../translation/Loader/CsvFileLoader.php | 2 +- .../PseudoLocalizationTranslator.php | 7 +- plugins/vendor/symfony/translation/README.md | 6 - .../Resources/bin/translation-status.php | 32 +- .../translation/Resources/data/parents.json | 6 + .../symfony/translation/StaticMessage.php | 33 + .../translation/Test/ProviderTestCase.php | 11 +- .../translation/TranslatableMessage.php | 5 + .../vendor/symfony/translation/Translator.php | 20 +- .../symfony/translation/Util/XliffUtils.php | 93 +- .../translation/Writer/TranslationWriter.php | 2 +- .../vendor/symfony/translation/composer.json | 18 +- .../vendor/voku/portable-ascii/CHANGELOG.md | 16 +- plugins/vendor/voku/portable-ascii/README.md | 12 +- .../vendor/voku/portable-ascii/composer.json | 4 +- .../portable-ascii/src/voku/helper/ASCII.php | 901 +++++++++++------- 220 files changed, 7198 insertions(+), 2635 deletions(-) create mode 100644 plugins/vendor/illuminate/contracts/JsonSchema/JsonSchema.php create mode 100644 plugins/vendor/illuminate/reflection/LICENSE.md rename plugins/vendor/illuminate/{support => reflection}/Reflector.php (98%) rename plugins/vendor/illuminate/{support => reflection}/Traits/ReflectsClosures.php (72%) create mode 100644 plugins/vendor/illuminate/reflection/composer.json create mode 100644 plugins/vendor/illuminate/reflection/helpers.php create mode 100644 plugins/vendor/illuminate/support/BinaryCodec.php delete mode 100644 plugins/vendor/nesbot/carbon/sponsors.php create mode 100644 plugins/vendor/nesbot/carbon/src/Carbon/Constants/DiffOptions.php create mode 100644 plugins/vendor/nesbot/carbon/src/Carbon/Constants/Format.php create mode 100644 plugins/vendor/nesbot/carbon/src/Carbon/Constants/TranslationOptions.php create mode 100644 plugins/vendor/nesbot/carbon/src/Carbon/Constants/UnitValue.php create mode 100644 plugins/vendor/nesbot/carbon/src/Carbon/Lang/az_Arab.php create mode 100644 plugins/vendor/symfony/polyfill-mbstring/bootstrap72.php create mode 100644 plugins/vendor/symfony/polyfill-php83/bootstrap72.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/Deprecated.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/RoundingMode.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/stubs/Pdo/Dblib.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/stubs/Pdo/Firebird.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/stubs/Pdo/Mysql.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/stubs/Pdo/Odbc.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/stubs/Pdo/Pgsql.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/stubs/Pdo/Sqlite.php create mode 100644 plugins/vendor/symfony/polyfill-php84/Resources/stubs/RoundingMode.php create mode 100644 plugins/vendor/symfony/polyfill-php84/bootstrap72.php create mode 100644 plugins/vendor/symfony/polyfill-php85/Resources/stubs/DelayedTargetValidation.php create mode 100644 plugins/vendor/symfony/polyfill-php85/Resources/stubs/Filter/FilterException.php create mode 100644 plugins/vendor/symfony/polyfill-php85/Resources/stubs/Filter/FilterFailedException.php create mode 100644 plugins/vendor/symfony/polyfill-php85/bootstrap80.php create mode 100644 plugins/vendor/symfony/translation/StaticMessage.php diff --git a/plugins/composer.json b/plugins/composer.json index 2f4d3513..7564f75b 100644 --- a/plugins/composer.json +++ b/plugins/composer.json @@ -2,5 +2,10 @@ "require": { "webklex/php-imap": "^6.2", "directorytree/imapengine": "^1.24" + }, + "config": { + "platform": { + "php": "8.2.0" + } } } diff --git a/plugins/composer.lock b/plugins/composer.lock index ea8bb9ea..bcba470b 100644 --- a/plugins/composer.lock +++ b/plugins/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": "b68dd6c4e366905317b5057101f7371a", + "content-hash": "ab8e2fdad19a8ca7b697fc24a24b9194", "packages": [ { "name": "carbonphp/carbon-doctrine-types", @@ -492,16 +492,16 @@ }, { "name": "illuminate/collections", - "version": "v12.28.1", + "version": "v12.62.0", "source": { "type": "git", "url": "https://github.com/illuminate/collections.git", - "reference": "2737a0477a3f4855a71bf8f3d0b8d32596ded628" + "reference": "83313b009c4afb6f02dbc090bdb67809756eefa2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/collections/zipball/2737a0477a3f4855a71bf8f3d0b8d32596ded628", - "reference": "2737a0477a3f4855a71bf8f3d0b8d32596ded628", + "url": "https://api.github.com/repos/illuminate/collections/zipball/83313b009c4afb6f02dbc090bdb67809756eefa2", + "reference": "83313b009c4afb6f02dbc090bdb67809756eefa2", "shasum": "" }, "require": { @@ -509,6 +509,7 @@ "illuminate/contracts": "^12.0", "illuminate/macroable": "^12.0", "php": "^8.2", + "symfony/polyfill-php83": "^1.33", "symfony/polyfill-php84": "^1.33", "symfony/polyfill-php85": "^1.33" }, @@ -547,11 +548,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-09-02T15:31:06+00:00" + "time": "2026-03-11T14:13:25+00:00" }, { "name": "illuminate/conditionable", - "version": "v12.28.1", + "version": "v12.62.0", "source": { "type": "git", "url": "https://github.com/illuminate/conditionable.git", @@ -597,16 +598,16 @@ }, { "name": "illuminate/contracts", - "version": "v12.28.1", + "version": "v12.62.0", "source": { "type": "git", "url": "https://github.com/illuminate/contracts.git", - "reference": "f1c4cf02c9ab81a9ce47940cf261fa2386ed6c5d" + "reference": "c16fd7ba7d8e6b8f336639ceb6b7e1ff6ed0efb5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/contracts/zipball/f1c4cf02c9ab81a9ce47940cf261fa2386ed6c5d", - "reference": "f1c4cf02c9ab81a9ce47940cf261fa2386ed6c5d", + "url": "https://api.github.com/repos/illuminate/contracts/zipball/c16fd7ba7d8e6b8f336639ceb6b7e1ff6ed0efb5", + "reference": "c16fd7ba7d8e6b8f336639ceb6b7e1ff6ed0efb5", "shasum": "" }, "require": { @@ -641,20 +642,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-08-27T18:34:41+00:00" + "time": "2026-06-09T13:20:54+00:00" }, { "name": "illuminate/macroable", - "version": "v12.28.1", + "version": "v12.62.0", "source": { "type": "git", "url": "https://github.com/illuminate/macroable.git", - "reference": "e862e5648ee34004fa56046b746f490dfa86c613" + "reference": "e295d62d89dcdb87e2b1bd70dd14d074a0ed73cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/macroable/zipball/e862e5648ee34004fa56046b746f490dfa86c613", - "reference": "e862e5648ee34004fa56046b746f490dfa86c613", + "url": "https://api.github.com/repos/illuminate/macroable/zipball/e295d62d89dcdb87e2b1bd70dd14d074a0ed73cc", + "reference": "e295d62d89dcdb87e2b1bd70dd14d074a0ed73cc", "shasum": "" }, "require": { @@ -687,20 +688,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2024-07-23T16:31:01+00:00" + "time": "2026-03-30T19:05:19+00:00" }, { "name": "illuminate/pagination", - "version": "v12.28.1", + "version": "v12.62.0", "source": { "type": "git", "url": "https://github.com/illuminate/pagination.git", - "reference": "1d95e70671177108b202e6ceb61bc7bc9924bdbf" + "reference": "8327d828676654053906a771abf5eea5426354ec" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/pagination/zipball/1d95e70671177108b202e6ceb61bc7bc9924bdbf", - "reference": "1d95e70671177108b202e6ceb61bc7bc9924bdbf", + "url": "https://api.github.com/repos/illuminate/pagination/zipball/8327d828676654053906a771abf5eea5426354ec", + "reference": "8327d828676654053906a771abf5eea5426354ec", "shasum": "" }, "require": { @@ -737,20 +738,71 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-09-02T15:31:06+00:00" + "time": "2026-02-25T15:25:18+00:00" }, { - "name": "illuminate/support", - "version": "v12.28.1", + "name": "illuminate/reflection", + "version": "v12.62.0", "source": { "type": "git", - "url": "https://github.com/illuminate/support.git", - "reference": "487bbe527806615b818e87c364d93ba91f27db9b" + "url": "https://github.com/illuminate/reflection.git", + "reference": "348cf5da9de89b596d7723be6425fb048e2bf4bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/support/zipball/487bbe527806615b818e87c364d93ba91f27db9b", - "reference": "487bbe527806615b818e87c364d93ba91f27db9b", + "url": "https://api.github.com/repos/illuminate/reflection/zipball/348cf5da9de89b596d7723be6425fb048e2bf4bb", + "reference": "348cf5da9de89b596d7723be6425fb048e2bf4bb", + "shasum": "" + }, + "require": { + "illuminate/collections": "^12.0", + "illuminate/contracts": "^12.0", + "php": "^8.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "12.x-dev" + } + }, + "autoload": { + "files": [ + "helpers.php" + ], + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Reflection package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2026-02-25T15:25:18+00:00" + }, + { + "name": "illuminate/support", + "version": "v12.62.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/support.git", + "reference": "3a8772095ef7d6b1961a77f2f0b8921c056c48ea" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/support/zipball/3a8772095ef7d6b1961a77f2f0b8921c056c48ea", + "reference": "3a8772095ef7d6b1961a77f2f0b8921c056c48ea", "shasum": "" }, "require": { @@ -762,6 +814,7 @@ "illuminate/conditionable": "^12.0", "illuminate/contracts": "^12.0", "illuminate/macroable": "^12.0", + "illuminate/reflection": "^12.0", "nesbot/carbon": "^3.8.4", "php": "^8.2", "symfony/polyfill-php83": "^1.33", @@ -816,7 +869,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-09-03T16:23:04+00:00" + "time": "2026-05-31T22:10:17+00:00" }, { "name": "laravel/serializable-closure", @@ -881,16 +934,16 @@ }, { "name": "nesbot/carbon", - "version": "3.10.3", + "version": "3.11.4", "source": { "type": "git", "url": "https://github.com/CarbonPHP/carbon.git", - "reference": "8e3643dcd149ae0fe1d2ff4f2c8e4bbfad7c165f" + "reference": "e890471a3494740f7d9326d72ce6a8c559ffee60" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/8e3643dcd149ae0fe1d2ff4f2c8e4bbfad7c165f", - "reference": "8e3643dcd149ae0fe1d2ff4f2c8e4bbfad7c165f", + "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/e890471a3494740f7d9326d72ce6a8c559ffee60", + "reference": "e890471a3494740f7d9326d72ce6a8c559ffee60", "shasum": "" }, "require": { @@ -898,9 +951,9 @@ "ext-json": "*", "php": "^8.1", "psr/clock": "^1.0", - "symfony/clock": "^6.3.12 || ^7.0", + "symfony/clock": "^6.3.12 || ^7.0 || ^8.0", "symfony/polyfill-mbstring": "^1.0", - "symfony/translation": "^4.4.18 || ^5.2.1 || ^6.0 || ^7.0" + "symfony/translation": "^4.4.18 || ^5.2.1 || ^6.0 || ^7.0 || ^8.0" }, "provide": { "psr/clock-implementation": "1.0" @@ -914,7 +967,7 @@ "phpstan/extension-installer": "^1.4.3", "phpstan/phpstan": "^2.1.22", "phpunit/phpunit": "^10.5.53", - "squizlabs/php_codesniffer": "^3.13.4" + "squizlabs/php_codesniffer": "^3.13.4 || ^4.0.0" }, "bin": [ "bin/carbon" @@ -957,14 +1010,14 @@ } ], "description": "An API extension for DateTime that supports 281 different languages.", - "homepage": "https://carbon.nesbot.com", + "homepage": "https://carbonphp.github.io/carbon/", "keywords": [ "date", "datetime", "time" ], "support": { - "docs": "https://carbon.nesbot.com/docs", + "docs": "https://carbonphp.github.io/carbon/guide/getting-started/introduction.html", "issues": "https://github.com/CarbonPHP/carbon/issues", "source": "https://github.com/CarbonPHP/carbon" }, @@ -982,7 +1035,7 @@ "type": "tidelift" } ], - "time": "2025-09-06T13:39:36+00:00" + "time": "2026-04-07T09:57:54+00:00" }, { "name": "php-di/invoker", @@ -1468,16 +1521,16 @@ }, { "name": "symfony/clock", - "version": "v7.3.0", + "version": "v7.4.8", "source": { "type": "git", "url": "https://github.com/symfony/clock.git", - "reference": "b81435fbd6648ea425d1ee96a2d8e68f4ceacd24" + "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/clock/zipball/b81435fbd6648ea425d1ee96a2d8e68f4ceacd24", - "reference": "b81435fbd6648ea425d1ee96a2d8e68f4ceacd24", + "url": "https://api.github.com/repos/symfony/clock/zipball/674fa3b98e21531dd040e613479f5f6fa8f32111", + "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111", "shasum": "" }, "require": { @@ -1522,7 +1575,7 @@ "time" ], "support": { - "source": "https://github.com/symfony/clock/tree/v7.3.0" + "source": "https://github.com/symfony/clock/tree/v7.4.8" }, "funding": [ { @@ -1533,25 +1586,29 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2024-09-25T14:21:43+00:00" + "time": "2026-03-24T13:12:05+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.6.0", + "version": "v3.7.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62" + "reference": "50f59d1f3ca46d41ac911f97a78626b6756af35b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62", - "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/50f59d1f3ca46d41ac911f97a78626b6756af35b", + "reference": "50f59d1f3ca46d41ac911f97a78626b6756af35b", "shasum": "" }, "require": { @@ -1564,7 +1621,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.7-dev" } }, "autoload": { @@ -1589,7 +1646,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.7.0" }, "funding": [ { @@ -1600,32 +1657,35 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2024-09-25T14:21:43+00:00" + "time": "2026-04-13T15:52:40+00:00" }, { "name": "symfony/http-foundation", - "version": "v7.3.7", + "version": "v7.4.13", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4" + "reference": "bc354f47c62301e990b7874fa662326368508e2c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/db488a62f98f7a81d5746f05eea63a74e55bb7c4", - "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/bc354f47c62301e990b7874fa662326368508e2c", + "reference": "bc354f47c62301e990b7874fa662326368508e2c", "shasum": "" }, "require": { "php": ">=8.2", - "symfony/deprecation-contracts": "^2.5|^3.0", - "symfony/polyfill-mbstring": "~1.1", - "symfony/polyfill-php83": "^1.27" + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "^1.1" }, "conflict": { "doctrine/dbal": "<3.6", @@ -1634,13 +1694,13 @@ "require-dev": { "doctrine/dbal": "^3.6|^4", "predis/predis": "^1.1|^2.0", - "symfony/cache": "^6.4.12|^7.1.5", - "symfony/clock": "^6.4|^7.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/expression-language": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/mime": "^6.4|^7.0", - "symfony/rate-limiter": "^6.4|^7.0" + "symfony/cache": "^6.4.12|^7.1.5|^8.0", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/mime": "^6.4|^7.0|^8.0", + "symfony/rate-limiter": "^6.4|^7.0|^8.0" }, "type": "library", "autoload": { @@ -1668,7 +1728,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v7.3.7" + "source": "https://github.com/symfony/http-foundation/tree/v7.4.13" }, "funding": [ { @@ -1688,41 +1748,44 @@ "type": "tidelift" } ], - "time": "2025-11-08T16:41:12+00:00" + "time": "2026-05-24T11:20:33+00:00" }, { "name": "symfony/mime", - "version": "v8.1.0", + "version": "v7.4.13", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "b164ae7e3f7915aacfe9ee155f2f358502440664" + "reference": "a845722765c4f6b2ce88beaf4f4479975b186770" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/b164ae7e3f7915aacfe9ee155f2f358502440664", - "reference": "b164ae7e3f7915aacfe9ee155f2f358502440664", + "url": "https://api.github.com/repos/symfony/mime/zipball/a845722765c4f6b2ce88beaf4f4479975b186770", + "reference": "a845722765c4f6b2ce88beaf4f4479975b186770", "shasum": "" }, "require": { - "php": ">=8.4.1", + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "^1.0" }, "conflict": { "egulias/email-validator": "~3.0.0", "phpdocumentor/reflection-docblock": "<5.2|>=7", - "phpdocumentor/type-resolver": "<1.5.1" + "phpdocumentor/type-resolver": "<1.5.1", + "symfony/mailer": "<6.4", + "symfony/serializer": "<6.4.3|>7.0,<7.0.3" }, "require-dev": { "egulias/email-validator": "^2.1.10|^3.1|^4", "league/html-to-markdown": "^5.0", "phpdocumentor/reflection-docblock": "^5.2|^6.0", - "symfony/dependency-injection": "^7.4|^8.0", - "symfony/process": "^7.4|^8.0", - "symfony/property-access": "^7.4|^8.0", - "symfony/property-info": "^7.4|^8.0", - "symfony/serializer": "^7.4|^8.0" + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/property-access": "^6.4|^7.0|^8.0", + "symfony/property-info": "^6.4|^7.0|^8.0", + "symfony/serializer": "^6.4.3|^7.0.3|^8.0" }, "type": "library", "autoload": { @@ -1754,7 +1817,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v8.1.0" + "source": "https://github.com/symfony/mime/tree/v7.4.13" }, "funding": [ { @@ -1774,7 +1837,7 @@ "type": "tidelift" } ], - "time": "2026-05-29T05:06:50+00:00" + "time": "2026-05-23T16:22:37+00:00" }, { "name": "symfony/polyfill-iconv", @@ -2034,16 +2097,16 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.33.0", + "version": "v1.38.2", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493" + "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", - "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", + "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", "shasum": "" }, "require": { @@ -2095,7 +2158,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.38.2" }, "funding": [ { @@ -2115,7 +2178,7 @@ "type": "tidelift" } ], - "time": "2024-12-23T08:48:59+00:00" + "time": "2026-05-27T06:59:30+00:00" }, { "name": "symfony/polyfill-php80", @@ -2203,16 +2266,16 @@ }, { "name": "symfony/polyfill-php83", - "version": "v1.33.0", + "version": "v1.38.2", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php83.git", - "reference": "17f6f9a6b1735c0f163024d959f700cfbc5155e5" + "reference": "796a26abb75ce49f3a84433cd81bf1009d73d5f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/17f6f9a6b1735c0f163024d959f700cfbc5155e5", - "reference": "17f6f9a6b1735c0f163024d959f700cfbc5155e5", + "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/796a26abb75ce49f3a84433cd81bf1009d73d5f8", + "reference": "796a26abb75ce49f3a84433cd81bf1009d73d5f8", "shasum": "" }, "require": { @@ -2259,7 +2322,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php83/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php83/tree/v1.38.2" }, "funding": [ { @@ -2279,20 +2342,20 @@ "type": "tidelift" } ], - "time": "2025-07-08T02:45:35+00:00" + "time": "2026-05-27T06:51:48+00:00" }, { "name": "symfony/polyfill-php84", - "version": "v1.33.0", + "version": "v1.38.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php84.git", - "reference": "d8ced4d875142b6a7426000426b8abc631d6b191" + "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/d8ced4d875142b6a7426000426b8abc631d6b191", - "reference": "d8ced4d875142b6a7426000426b8abc631d6b191", + "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", + "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", "shasum": "" }, "require": { @@ -2339,7 +2402,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php84/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php84/tree/v1.38.1" }, "funding": [ { @@ -2359,20 +2422,20 @@ "type": "tidelift" } ], - "time": "2025-06-24T13:30:11+00:00" + "time": "2026-05-26T12:51:13+00:00" }, { "name": "symfony/polyfill-php85", - "version": "v1.33.0", + "version": "v1.38.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php85.git", - "reference": "d4e5fcd4ab3d998ab16c0db48e6cbb9a01993f91" + "reference": "ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/d4e5fcd4ab3d998ab16c0db48e6cbb9a01993f91", - "reference": "d4e5fcd4ab3d998ab16c0db48e6cbb9a01993f91", + "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1", + "reference": "ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1", "shasum": "" }, "require": { @@ -2419,7 +2482,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php85/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php85/tree/v1.38.1" }, "funding": [ { @@ -2439,27 +2502,27 @@ "type": "tidelift" } ], - "time": "2025-06-23T16:12:55+00:00" + "time": "2026-05-26T02:25:22+00:00" }, { "name": "symfony/translation", - "version": "v7.3.3", + "version": "v7.4.10", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "e0837b4cbcef63c754d89a4806575cada743a38d" + "reference": "ada7578c30dd5feaa8259cff3e885069ea81ddde" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/e0837b4cbcef63c754d89a4806575cada743a38d", - "reference": "e0837b4cbcef63c754d89a4806575cada743a38d", + "url": "https://api.github.com/repos/symfony/translation/zipball/ada7578c30dd5feaa8259cff3e885069ea81ddde", + "reference": "ada7578c30dd5feaa8259cff3e885069ea81ddde", "shasum": "" }, "require": { "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^2.5|^3.0" + "symfony/translation-contracts": "^2.5.3|^3.3" }, "conflict": { "nikic/php-parser": "<5.0", @@ -2478,17 +2541,17 @@ "require-dev": { "nikic/php-parser": "^5.0", "psr/log": "^1|^2|^3", - "symfony/config": "^6.4|^7.0", - "symfony/console": "^6.4|^7.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/finder": "^6.4|^7.0", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", "symfony/http-client-contracts": "^2.5|^3.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/intl": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/intl": "^6.4|^7.0|^8.0", "symfony/polyfill-intl-icu": "^1.21", - "symfony/routing": "^6.4|^7.0", + "symfony/routing": "^6.4|^7.0|^8.0", "symfony/service-contracts": "^2.5|^3", - "symfony/yaml": "^6.4|^7.0" + "symfony/yaml": "^6.4|^7.0|^8.0" }, "type": "library", "autoload": { @@ -2519,7 +2582,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v7.3.3" + "source": "https://github.com/symfony/translation/tree/v7.4.10" }, "funding": [ { @@ -2539,20 +2602,20 @@ "type": "tidelift" } ], - "time": "2025-08-01T21:02:37+00:00" + "time": "2026-05-06T11:19:24+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.6.0", + "version": "v3.7.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d" + "reference": "0ab302977a952b42fd51475c4ebac81f8da0a95d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/df210c7a2573f1913b2d17cc95f90f53a73d8f7d", - "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/0ab302977a952b42fd51475c4ebac81f8da0a95d", + "reference": "0ab302977a952b42fd51475c4ebac81f8da0a95d", "shasum": "" }, "require": { @@ -2565,7 +2628,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.7-dev" } }, "autoload": { @@ -2601,7 +2664,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/translation-contracts/tree/v3.7.0" }, "funding": [ { @@ -2612,32 +2675,36 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2024-09-27T08:32:26+00:00" + "time": "2026-01-05T13:30:16+00:00" }, { "name": "voku/portable-ascii", - "version": "2.0.3", + "version": "2.1.1", "source": { "type": "git", "url": "https://github.com/voku/portable-ascii.git", - "reference": "b1d923f88091c6bf09699efcd7c8a1b1bfd7351d" + "reference": "8e1051fe39379367aecf014f41744ce7539a856f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b1d923f88091c6bf09699efcd7c8a1b1bfd7351d", - "reference": "b1d923f88091c6bf09699efcd7c8a1b1bfd7351d", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/8e1051fe39379367aecf014f41744ce7539a856f", + "reference": "8e1051fe39379367aecf014f41744ce7539a856f", "shasum": "" }, "require": { - "php": ">=7.0.0" + "php": ">=7.1.0" }, "require-dev": { - "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" + "phpunit/phpunit": "~8.5 || ~9.6 || ~10.5 || ~11.5" }, "suggest": { "ext-intl": "Use Intl for transliterator_transliterate() support" @@ -2667,7 +2734,7 @@ ], "support": { "issues": "https://github.com/voku/portable-ascii/issues", - "source": "https://github.com/voku/portable-ascii/tree/2.0.3" + "source": "https://github.com/voku/portable-ascii/tree/2.1.1" }, "funding": [ { @@ -2691,7 +2758,7 @@ "type": "tidelift" } ], - "time": "2024-11-21T01:49:47+00:00" + "time": "2026-04-26T05:33:54+00:00" }, { "name": "webklex/php-imap", @@ -2991,5 +3058,8 @@ "prefer-lowest": false, "platform": [], "platform-dev": [], + "platform-overrides": { + "php": "8.2.0" + }, "plugin-api-version": "2.2.0" } diff --git a/plugins/vendor/composer/autoload_classmap.php b/plugins/vendor/composer/autoload_classmap.php index c1557308..a1e05575 100644 --- a/plugins/vendor/composer/autoload_classmap.php +++ b/plugins/vendor/composer/autoload_classmap.php @@ -17,12 +17,22 @@ return array( 'DateMalformedStringException' => $vendorDir . '/symfony/polyfill-php83/Resources/stubs/DateMalformedStringException.php', 'DateObjectError' => $vendorDir . '/symfony/polyfill-php83/Resources/stubs/DateObjectError.php', 'DateRangeError' => $vendorDir . '/symfony/polyfill-php83/Resources/stubs/DateRangeError.php', + 'DelayedTargetValidation' => $vendorDir . '/symfony/polyfill-php85/Resources/stubs/DelayedTargetValidation.php', 'Deprecated' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/Deprecated.php', + 'Filter\\FilterException' => $vendorDir . '/symfony/polyfill-php85/Resources/stubs/Filter/FilterException.php', + 'Filter\\FilterFailedException' => $vendorDir . '/symfony/polyfill-php85/Resources/stubs/Filter/FilterFailedException.php', 'NoDiscard' => $vendorDir . '/symfony/polyfill-php85/Resources/stubs/NoDiscard.php', 'Normalizer' => $vendorDir . '/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php', 'Override' => $vendorDir . '/symfony/polyfill-php83/Resources/stubs/Override.php', + 'Pdo\\Dblib' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/Pdo/Dblib.php', + 'Pdo\\Firebird' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/Pdo/Firebird.php', + 'Pdo\\Mysql' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/Pdo/Mysql.php', + 'Pdo\\Odbc' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/Pdo/Odbc.php', + 'Pdo\\Pgsql' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/Pdo/Pgsql.php', + 'Pdo\\Sqlite' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/Pdo/Sqlite.php', 'PhpToken' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', 'ReflectionConstant' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/ReflectionConstant.php', + 'RoundingMode' => $vendorDir . '/symfony/polyfill-php84/Resources/stubs/RoundingMode.php', 'SQLite3Exception' => $vendorDir . '/symfony/polyfill-php83/Resources/stubs/SQLite3Exception.php', 'Stringable' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', 'UnhandledMatchError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', diff --git a/plugins/vendor/composer/autoload_files.php b/plugins/vendor/composer/autoload_files.php index dec56197..a153e8e8 100644 --- a/plugins/vendor/composer/autoload_files.php +++ b/plugins/vendor/composer/autoload_files.php @@ -6,21 +6,22 @@ $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( - '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php', '662a729f963d39afe703c9d9b7ab4a8c' => $vendorDir . '/symfony/polyfill-php83/bootstrap.php', + '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php', '6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php', '606a39d89246991a373564698c2d8383' => $vendorDir . '/symfony/polyfill-php85/bootstrap.php', - '2203a247e6fda86070a5e4e07aed533a' => $vendorDir . '/symfony/clock/Resources/now.php', - 'a1105708a18b76903365ca1c4aa61b02' => $vendorDir . '/symfony/translation/Resources/functions.php', '9d2b9fc6db0f153a0a149fefb182415e' => $vendorDir . '/symfony/polyfill-php84/bootstrap.php', - 'e69f7f6ee287b969198c3c9d6777bd38' => $vendorDir . '/symfony/polyfill-intl-normalizer/bootstrap.php', '23f09fe3194f8c2f70923f90d6702129' => $vendorDir . '/illuminate/collections/functions.php', '60799491728b879e74601d83e38b2cad' => $vendorDir . '/illuminate/collections/helpers.php', + '2203a247e6fda86070a5e4e07aed533a' => $vendorDir . '/symfony/clock/Resources/now.php', + 'a1105708a18b76903365ca1c4aa61b02' => $vendorDir . '/symfony/translation/Resources/functions.php', + 'e69f7f6ee287b969198c3c9d6777bd38' => $vendorDir . '/symfony/polyfill-intl-normalizer/bootstrap.php', 'f598d06aa772fa33d905e87be6398fb1' => $vendorDir . '/symfony/polyfill-intl-idn/bootstrap.php', - 'f625ee536139dfb962a398b200bdb2bd' => $vendorDir . '/illuminate/support/functions.php', - '72579e7bd17821bb1321b87411366eae' => $vendorDir . '/illuminate/support/helpers.php', - 'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php', + '19e6faa27d773988183e0f384143fcad' => $vendorDir . '/illuminate/reflection/helpers.php', '7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php', 'def43f6c87e4f8dfd0c9e1b1bab14fe8' => $vendorDir . '/symfony/polyfill-iconv/bootstrap.php', + 'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php', + 'f625ee536139dfb962a398b200bdb2bd' => $vendorDir . '/illuminate/support/functions.php', + '72579e7bd17821bb1321b87411366eae' => $vendorDir . '/illuminate/support/helpers.php', 'b33e3d135e5d9e47d845c576147bda89' => $vendorDir . '/php-di/php-di/src/functions.php', ); diff --git a/plugins/vendor/composer/autoload_psr4.php b/plugins/vendor/composer/autoload_psr4.php index bf9b8e7b..da339ba4 100644 --- a/plugins/vendor/composer/autoload_psr4.php +++ b/plugins/vendor/composer/autoload_psr4.php @@ -26,12 +26,12 @@ return array( 'Symfony\\Component\\Clock\\' => array($vendorDir . '/symfony/clock'), 'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'), 'Psr\\Log\\' => array($vendorDir . '/psr/log/src'), - 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'), + 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'), 'Psr\\Container\\' => array($vendorDir . '/psr/container/src'), 'Psr\\Clock\\' => array($vendorDir . '/psr/clock/src'), 'Laravel\\SerializableClosure\\' => array($vendorDir . '/laravel/serializable-closure/src'), 'Invoker\\' => array($vendorDir . '/php-di/invoker/src'), - 'Illuminate\\Support\\' => array($vendorDir . '/illuminate/collections', $vendorDir . '/illuminate/conditionable', $vendorDir . '/illuminate/macroable', $vendorDir . '/illuminate/support'), + 'Illuminate\\Support\\' => array($vendorDir . '/illuminate/reflection', $vendorDir . '/illuminate/macroable', $vendorDir . '/illuminate/conditionable', $vendorDir . '/illuminate/collections', $vendorDir . '/illuminate/support'), 'Illuminate\\Pagination\\' => array($vendorDir . '/illuminate/pagination'), 'Illuminate\\Contracts\\' => array($vendorDir . '/illuminate/contracts'), 'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'), diff --git a/plugins/vendor/composer/autoload_static.php b/plugins/vendor/composer/autoload_static.php index 588ef7fd..152907cb 100644 --- a/plugins/vendor/composer/autoload_static.php +++ b/plugins/vendor/composer/autoload_static.php @@ -7,22 +7,23 @@ namespace Composer\Autoload; class ComposerStaticInit9b9826e5b5cc7806cd328c4112cca75e { public static $files = array ( - '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', '662a729f963d39afe703c9d9b7ab4a8c' => __DIR__ . '/..' . '/symfony/polyfill-php83/bootstrap.php', + '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', '6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php', '606a39d89246991a373564698c2d8383' => __DIR__ . '/..' . '/symfony/polyfill-php85/bootstrap.php', - '2203a247e6fda86070a5e4e07aed533a' => __DIR__ . '/..' . '/symfony/clock/Resources/now.php', - 'a1105708a18b76903365ca1c4aa61b02' => __DIR__ . '/..' . '/symfony/translation/Resources/functions.php', '9d2b9fc6db0f153a0a149fefb182415e' => __DIR__ . '/..' . '/symfony/polyfill-php84/bootstrap.php', - 'e69f7f6ee287b969198c3c9d6777bd38' => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer/bootstrap.php', '23f09fe3194f8c2f70923f90d6702129' => __DIR__ . '/..' . '/illuminate/collections/functions.php', '60799491728b879e74601d83e38b2cad' => __DIR__ . '/..' . '/illuminate/collections/helpers.php', + '2203a247e6fda86070a5e4e07aed533a' => __DIR__ . '/..' . '/symfony/clock/Resources/now.php', + 'a1105708a18b76903365ca1c4aa61b02' => __DIR__ . '/..' . '/symfony/translation/Resources/functions.php', + 'e69f7f6ee287b969198c3c9d6777bd38' => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer/bootstrap.php', 'f598d06aa772fa33d905e87be6398fb1' => __DIR__ . '/..' . '/symfony/polyfill-intl-idn/bootstrap.php', - 'f625ee536139dfb962a398b200bdb2bd' => __DIR__ . '/..' . '/illuminate/support/functions.php', - '72579e7bd17821bb1321b87411366eae' => __DIR__ . '/..' . '/illuminate/support/helpers.php', - 'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php', + '19e6faa27d773988183e0f384143fcad' => __DIR__ . '/..' . '/illuminate/reflection/helpers.php', '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php', 'def43f6c87e4f8dfd0c9e1b1bab14fe8' => __DIR__ . '/..' . '/symfony/polyfill-iconv/bootstrap.php', + 'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php', + 'f625ee536139dfb962a398b200bdb2bd' => __DIR__ . '/..' . '/illuminate/support/functions.php', + '72579e7bd17821bb1321b87411366eae' => __DIR__ . '/..' . '/illuminate/support/helpers.php', 'b33e3d135e5d9e47d845c576147bda89' => __DIR__ . '/..' . '/php-di/php-di/src/functions.php', ); @@ -181,8 +182,8 @@ class ComposerStaticInit9b9826e5b5cc7806cd328c4112cca75e ), 'Psr\\Http\\Message\\' => array ( - 0 => __DIR__ . '/..' . '/psr/http-message/src', - 1 => __DIR__ . '/..' . '/psr/http-factory/src', + 0 => __DIR__ . '/..' . '/psr/http-factory/src', + 1 => __DIR__ . '/..' . '/psr/http-message/src', ), 'Psr\\Container\\' => array ( @@ -202,10 +203,11 @@ class ComposerStaticInit9b9826e5b5cc7806cd328c4112cca75e ), 'Illuminate\\Support\\' => array ( - 0 => __DIR__ . '/..' . '/illuminate/collections', - 1 => __DIR__ . '/..' . '/illuminate/conditionable', - 2 => __DIR__ . '/..' . '/illuminate/macroable', - 3 => __DIR__ . '/..' . '/illuminate/support', + 0 => __DIR__ . '/..' . '/illuminate/reflection', + 1 => __DIR__ . '/..' . '/illuminate/macroable', + 2 => __DIR__ . '/..' . '/illuminate/conditionable', + 3 => __DIR__ . '/..' . '/illuminate/collections', + 4 => __DIR__ . '/..' . '/illuminate/support', ), 'Illuminate\\Pagination\\' => array ( @@ -261,12 +263,22 @@ class ComposerStaticInit9b9826e5b5cc7806cd328c4112cca75e 'DateMalformedStringException' => __DIR__ . '/..' . '/symfony/polyfill-php83/Resources/stubs/DateMalformedStringException.php', 'DateObjectError' => __DIR__ . '/..' . '/symfony/polyfill-php83/Resources/stubs/DateObjectError.php', 'DateRangeError' => __DIR__ . '/..' . '/symfony/polyfill-php83/Resources/stubs/DateRangeError.php', + 'DelayedTargetValidation' => __DIR__ . '/..' . '/symfony/polyfill-php85/Resources/stubs/DelayedTargetValidation.php', 'Deprecated' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/Deprecated.php', + 'Filter\\FilterException' => __DIR__ . '/..' . '/symfony/polyfill-php85/Resources/stubs/Filter/FilterException.php', + 'Filter\\FilterFailedException' => __DIR__ . '/..' . '/symfony/polyfill-php85/Resources/stubs/Filter/FilterFailedException.php', 'NoDiscard' => __DIR__ . '/..' . '/symfony/polyfill-php85/Resources/stubs/NoDiscard.php', 'Normalizer' => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php', 'Override' => __DIR__ . '/..' . '/symfony/polyfill-php83/Resources/stubs/Override.php', + 'Pdo\\Dblib' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/Pdo/Dblib.php', + 'Pdo\\Firebird' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/Pdo/Firebird.php', + 'Pdo\\Mysql' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/Pdo/Mysql.php', + 'Pdo\\Odbc' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/Pdo/Odbc.php', + 'Pdo\\Pgsql' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/Pdo/Pgsql.php', + 'Pdo\\Sqlite' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/Pdo/Sqlite.php', 'PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', 'ReflectionConstant' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/ReflectionConstant.php', + 'RoundingMode' => __DIR__ . '/..' . '/symfony/polyfill-php84/Resources/stubs/RoundingMode.php', 'SQLite3Exception' => __DIR__ . '/..' . '/symfony/polyfill-php83/Resources/stubs/SQLite3Exception.php', 'Stringable' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', 'UnhandledMatchError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', diff --git a/plugins/vendor/composer/installed.json b/plugins/vendor/composer/installed.json index 87b10625..953d1fcc 100644 --- a/plugins/vendor/composer/installed.json +++ b/plugins/vendor/composer/installed.json @@ -504,17 +504,17 @@ }, { "name": "illuminate/collections", - "version": "v12.28.1", - "version_normalized": "12.28.1.0", + "version": "v12.62.0", + "version_normalized": "12.62.0.0", "source": { "type": "git", "url": "https://github.com/illuminate/collections.git", - "reference": "2737a0477a3f4855a71bf8f3d0b8d32596ded628" + "reference": "83313b009c4afb6f02dbc090bdb67809756eefa2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/collections/zipball/2737a0477a3f4855a71bf8f3d0b8d32596ded628", - "reference": "2737a0477a3f4855a71bf8f3d0b8d32596ded628", + "url": "https://api.github.com/repos/illuminate/collections/zipball/83313b009c4afb6f02dbc090bdb67809756eefa2", + "reference": "83313b009c4afb6f02dbc090bdb67809756eefa2", "shasum": "" }, "require": { @@ -522,6 +522,7 @@ "illuminate/contracts": "^12.0", "illuminate/macroable": "^12.0", "php": "^8.2", + "symfony/polyfill-php83": "^1.33", "symfony/polyfill-php84": "^1.33", "symfony/polyfill-php85": "^1.33" }, @@ -529,7 +530,7 @@ "illuminate/http": "Required to convert collections to API resources (^12.0).", "symfony/var-dumper": "Required to use the dump method (^7.2)." }, - "time": "2025-09-02T15:31:06+00:00", + "time": "2026-03-11T14:13:25+00:00", "type": "library", "extra": { "branch-alias": { @@ -566,8 +567,8 @@ }, { "name": "illuminate/conditionable", - "version": "v12.28.1", - "version_normalized": "12.28.1.0", + "version": "v12.62.0", + "version_normalized": "12.62.0.0", "source": { "type": "git", "url": "https://github.com/illuminate/conditionable.git", @@ -615,17 +616,17 @@ }, { "name": "illuminate/contracts", - "version": "v12.28.1", - "version_normalized": "12.28.1.0", + "version": "v12.62.0", + "version_normalized": "12.62.0.0", "source": { "type": "git", "url": "https://github.com/illuminate/contracts.git", - "reference": "f1c4cf02c9ab81a9ce47940cf261fa2386ed6c5d" + "reference": "c16fd7ba7d8e6b8f336639ceb6b7e1ff6ed0efb5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/contracts/zipball/f1c4cf02c9ab81a9ce47940cf261fa2386ed6c5d", - "reference": "f1c4cf02c9ab81a9ce47940cf261fa2386ed6c5d", + "url": "https://api.github.com/repos/illuminate/contracts/zipball/c16fd7ba7d8e6b8f336639ceb6b7e1ff6ed0efb5", + "reference": "c16fd7ba7d8e6b8f336639ceb6b7e1ff6ed0efb5", "shasum": "" }, "require": { @@ -633,7 +634,7 @@ "psr/container": "^1.1.1|^2.0.1", "psr/simple-cache": "^1.0|^2.0|^3.0" }, - "time": "2025-08-27T18:34:41+00:00", + "time": "2026-06-09T13:20:54+00:00", "type": "library", "extra": { "branch-alias": { @@ -666,23 +667,23 @@ }, { "name": "illuminate/macroable", - "version": "v12.28.1", - "version_normalized": "12.28.1.0", + "version": "v12.62.0", + "version_normalized": "12.62.0.0", "source": { "type": "git", "url": "https://github.com/illuminate/macroable.git", - "reference": "e862e5648ee34004fa56046b746f490dfa86c613" + "reference": "e295d62d89dcdb87e2b1bd70dd14d074a0ed73cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/macroable/zipball/e862e5648ee34004fa56046b746f490dfa86c613", - "reference": "e862e5648ee34004fa56046b746f490dfa86c613", + "url": "https://api.github.com/repos/illuminate/macroable/zipball/e295d62d89dcdb87e2b1bd70dd14d074a0ed73cc", + "reference": "e295d62d89dcdb87e2b1bd70dd14d074a0ed73cc", "shasum": "" }, "require": { "php": "^8.2" }, - "time": "2024-07-23T16:31:01+00:00", + "time": "2026-03-30T19:05:19+00:00", "type": "library", "extra": { "branch-alias": { @@ -715,17 +716,17 @@ }, { "name": "illuminate/pagination", - "version": "v12.28.1", - "version_normalized": "12.28.1.0", + "version": "v12.62.0", + "version_normalized": "12.62.0.0", "source": { "type": "git", "url": "https://github.com/illuminate/pagination.git", - "reference": "1d95e70671177108b202e6ceb61bc7bc9924bdbf" + "reference": "8327d828676654053906a771abf5eea5426354ec" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/pagination/zipball/1d95e70671177108b202e6ceb61bc7bc9924bdbf", - "reference": "1d95e70671177108b202e6ceb61bc7bc9924bdbf", + "url": "https://api.github.com/repos/illuminate/pagination/zipball/8327d828676654053906a771abf5eea5426354ec", + "reference": "8327d828676654053906a771abf5eea5426354ec", "shasum": "" }, "require": { @@ -735,7 +736,7 @@ "illuminate/support": "^12.0", "php": "^8.2" }, - "time": "2025-09-02T15:31:06+00:00", + "time": "2026-02-25T15:25:18+00:00", "type": "library", "extra": { "branch-alias": { @@ -767,18 +768,72 @@ "install-path": "../illuminate/pagination" }, { - "name": "illuminate/support", - "version": "v12.28.1", - "version_normalized": "12.28.1.0", + "name": "illuminate/reflection", + "version": "v12.62.0", + "version_normalized": "12.62.0.0", "source": { "type": "git", - "url": "https://github.com/illuminate/support.git", - "reference": "487bbe527806615b818e87c364d93ba91f27db9b" + "url": "https://github.com/illuminate/reflection.git", + "reference": "348cf5da9de89b596d7723be6425fb048e2bf4bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/support/zipball/487bbe527806615b818e87c364d93ba91f27db9b", - "reference": "487bbe527806615b818e87c364d93ba91f27db9b", + "url": "https://api.github.com/repos/illuminate/reflection/zipball/348cf5da9de89b596d7723be6425fb048e2bf4bb", + "reference": "348cf5da9de89b596d7723be6425fb048e2bf4bb", + "shasum": "" + }, + "require": { + "illuminate/collections": "^12.0", + "illuminate/contracts": "^12.0", + "php": "^8.2" + }, + "time": "2026-02-25T15:25:18+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "12.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "helpers.php" + ], + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Reflection package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "install-path": "../illuminate/reflection" + }, + { + "name": "illuminate/support", + "version": "v12.62.0", + "version_normalized": "12.62.0.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/support.git", + "reference": "3a8772095ef7d6b1961a77f2f0b8921c056c48ea" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/support/zipball/3a8772095ef7d6b1961a77f2f0b8921c056c48ea", + "reference": "3a8772095ef7d6b1961a77f2f0b8921c056c48ea", "shasum": "" }, "require": { @@ -790,6 +845,7 @@ "illuminate/conditionable": "^12.0", "illuminate/contracts": "^12.0", "illuminate/macroable": "^12.0", + "illuminate/reflection": "^12.0", "nesbot/carbon": "^3.8.4", "php": "^8.2", "symfony/polyfill-php83": "^1.33", @@ -813,7 +869,7 @@ "symfony/var-dumper": "Required to use the dd function (^7.2).", "vlucas/phpdotenv": "Required to use the Env class and env helper (^5.6.1)." }, - "time": "2025-09-03T16:23:04+00:00", + "time": "2026-05-31T22:10:17+00:00", "type": "library", "extra": { "branch-alias": { @@ -914,17 +970,17 @@ }, { "name": "nesbot/carbon", - "version": "3.10.3", - "version_normalized": "3.10.3.0", + "version": "3.11.4", + "version_normalized": "3.11.4.0", "source": { "type": "git", "url": "https://github.com/CarbonPHP/carbon.git", - "reference": "8e3643dcd149ae0fe1d2ff4f2c8e4bbfad7c165f" + "reference": "e890471a3494740f7d9326d72ce6a8c559ffee60" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/8e3643dcd149ae0fe1d2ff4f2c8e4bbfad7c165f", - "reference": "8e3643dcd149ae0fe1d2ff4f2c8e4bbfad7c165f", + "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/e890471a3494740f7d9326d72ce6a8c559ffee60", + "reference": "e890471a3494740f7d9326d72ce6a8c559ffee60", "shasum": "" }, "require": { @@ -932,9 +988,9 @@ "ext-json": "*", "php": "^8.1", "psr/clock": "^1.0", - "symfony/clock": "^6.3.12 || ^7.0", + "symfony/clock": "^6.3.12 || ^7.0 || ^8.0", "symfony/polyfill-mbstring": "^1.0", - "symfony/translation": "^4.4.18 || ^5.2.1 || ^6.0 || ^7.0" + "symfony/translation": "^4.4.18 || ^5.2.1 || ^6.0 || ^7.0 || ^8.0" }, "provide": { "psr/clock-implementation": "1.0" @@ -948,9 +1004,9 @@ "phpstan/extension-installer": "^1.4.3", "phpstan/phpstan": "^2.1.22", "phpunit/phpunit": "^10.5.53", - "squizlabs/php_codesniffer": "^3.13.4" + "squizlabs/php_codesniffer": "^3.13.4 || ^4.0.0" }, - "time": "2025-09-06T13:39:36+00:00", + "time": "2026-04-07T09:57:54+00:00", "bin": [ "bin/carbon" ], @@ -993,14 +1049,14 @@ } ], "description": "An API extension for DateTime that supports 281 different languages.", - "homepage": "https://carbon.nesbot.com", + "homepage": "https://carbonphp.github.io/carbon/", "keywords": [ "date", "datetime", "time" ], "support": { - "docs": "https://carbon.nesbot.com/docs", + "docs": "https://carbonphp.github.io/carbon/guide/getting-started/introduction.html", "issues": "https://github.com/CarbonPHP/carbon/issues", "source": "https://github.com/CarbonPHP/carbon" }, @@ -1531,17 +1587,17 @@ }, { "name": "symfony/clock", - "version": "v7.3.0", - "version_normalized": "7.3.0.0", + "version": "v7.4.8", + "version_normalized": "7.4.8.0", "source": { "type": "git", "url": "https://github.com/symfony/clock.git", - "reference": "b81435fbd6648ea425d1ee96a2d8e68f4ceacd24" + "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/clock/zipball/b81435fbd6648ea425d1ee96a2d8e68f4ceacd24", - "reference": "b81435fbd6648ea425d1ee96a2d8e68f4ceacd24", + "url": "https://api.github.com/repos/symfony/clock/zipball/674fa3b98e21531dd040e613479f5f6fa8f32111", + "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111", "shasum": "" }, "require": { @@ -1552,7 +1608,7 @@ "provide": { "psr/clock-implementation": "1.0" }, - "time": "2024-09-25T14:21:43+00:00", + "time": "2026-03-24T13:12:05+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -1588,7 +1644,7 @@ "time" ], "support": { - "source": "https://github.com/symfony/clock/tree/v7.3.0" + "source": "https://github.com/symfony/clock/tree/v7.4.8" }, "funding": [ { @@ -1599,6 +1655,10 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" @@ -1608,23 +1668,23 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v3.6.0", - "version_normalized": "3.6.0.0", + "version": "v3.7.0", + "version_normalized": "3.7.0.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62" + "reference": "50f59d1f3ca46d41ac911f97a78626b6756af35b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62", - "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/50f59d1f3ca46d41ac911f97a78626b6756af35b", + "reference": "50f59d1f3ca46d41ac911f97a78626b6756af35b", "shasum": "" }, "require": { "php": ">=8.1" }, - "time": "2024-09-25T14:21:43+00:00", + "time": "2026-04-13T15:52:40+00:00", "type": "library", "extra": { "thanks": { @@ -1632,7 +1692,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.7-dev" } }, "installation-source": "dist", @@ -1658,7 +1718,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.7.0" }, "funding": [ { @@ -1669,6 +1729,10 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" @@ -1678,24 +1742,23 @@ }, { "name": "symfony/http-foundation", - "version": "v7.3.7", - "version_normalized": "7.3.7.0", + "version": "v7.4.13", + "version_normalized": "7.4.13.0", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4" + "reference": "bc354f47c62301e990b7874fa662326368508e2c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/db488a62f98f7a81d5746f05eea63a74e55bb7c4", - "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/bc354f47c62301e990b7874fa662326368508e2c", + "reference": "bc354f47c62301e990b7874fa662326368508e2c", "shasum": "" }, "require": { "php": ">=8.2", - "symfony/deprecation-contracts": "^2.5|^3.0", - "symfony/polyfill-mbstring": "~1.1", - "symfony/polyfill-php83": "^1.27" + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "^1.1" }, "conflict": { "doctrine/dbal": "<3.6", @@ -1704,15 +1767,15 @@ "require-dev": { "doctrine/dbal": "^3.6|^4", "predis/predis": "^1.1|^2.0", - "symfony/cache": "^6.4.12|^7.1.5", - "symfony/clock": "^6.4|^7.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/expression-language": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/mime": "^6.4|^7.0", - "symfony/rate-limiter": "^6.4|^7.0" + "symfony/cache": "^6.4.12|^7.1.5|^8.0", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/mime": "^6.4|^7.0|^8.0", + "symfony/rate-limiter": "^6.4|^7.0|^8.0" }, - "time": "2025-11-08T16:41:12+00:00", + "time": "2026-05-24T11:20:33+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -1740,7 +1803,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v7.3.7" + "source": "https://github.com/symfony/http-foundation/tree/v7.4.13" }, "funding": [ { @@ -1764,40 +1827,43 @@ }, { "name": "symfony/mime", - "version": "v8.1.0", - "version_normalized": "8.1.0.0", + "version": "v7.4.13", + "version_normalized": "7.4.13.0", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "b164ae7e3f7915aacfe9ee155f2f358502440664" + "reference": "a845722765c4f6b2ce88beaf4f4479975b186770" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/b164ae7e3f7915aacfe9ee155f2f358502440664", - "reference": "b164ae7e3f7915aacfe9ee155f2f358502440664", + "url": "https://api.github.com/repos/symfony/mime/zipball/a845722765c4f6b2ce88beaf4f4479975b186770", + "reference": "a845722765c4f6b2ce88beaf4f4479975b186770", "shasum": "" }, "require": { - "php": ">=8.4.1", + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "^1.0" }, "conflict": { "egulias/email-validator": "~3.0.0", "phpdocumentor/reflection-docblock": "<5.2|>=7", - "phpdocumentor/type-resolver": "<1.5.1" + "phpdocumentor/type-resolver": "<1.5.1", + "symfony/mailer": "<6.4", + "symfony/serializer": "<6.4.3|>7.0,<7.0.3" }, "require-dev": { "egulias/email-validator": "^2.1.10|^3.1|^4", "league/html-to-markdown": "^5.0", "phpdocumentor/reflection-docblock": "^5.2|^6.0", - "symfony/dependency-injection": "^7.4|^8.0", - "symfony/process": "^7.4|^8.0", - "symfony/property-access": "^7.4|^8.0", - "symfony/property-info": "^7.4|^8.0", - "symfony/serializer": "^7.4|^8.0" + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/property-access": "^6.4|^7.0|^8.0", + "symfony/property-info": "^6.4|^7.0|^8.0", + "symfony/serializer": "^6.4.3|^7.0.3|^8.0" }, - "time": "2026-05-29T05:06:50+00:00", + "time": "2026-05-23T16:22:37+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -1829,7 +1895,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v8.1.0" + "source": "https://github.com/symfony/mime/tree/v7.4.13" }, "funding": [ { @@ -2118,17 +2184,17 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.33.0", - "version_normalized": "1.33.0.0", + "version": "v1.38.2", + "version_normalized": "1.38.2.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493" + "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", - "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", + "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", "shasum": "" }, "require": { @@ -2141,7 +2207,7 @@ "suggest": { "ext-mbstring": "For best performance" }, - "time": "2024-12-23T08:48:59+00:00", + "time": "2026-05-27T06:59:30+00:00", "type": "library", "extra": { "thanks": { @@ -2182,7 +2248,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.38.2" }, "funding": [ { @@ -2293,23 +2359,23 @@ }, { "name": "symfony/polyfill-php83", - "version": "v1.33.0", - "version_normalized": "1.33.0.0", + "version": "v1.38.2", + "version_normalized": "1.38.2.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php83.git", - "reference": "17f6f9a6b1735c0f163024d959f700cfbc5155e5" + "reference": "796a26abb75ce49f3a84433cd81bf1009d73d5f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/17f6f9a6b1735c0f163024d959f700cfbc5155e5", - "reference": "17f6f9a6b1735c0f163024d959f700cfbc5155e5", + "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/796a26abb75ce49f3a84433cd81bf1009d73d5f8", + "reference": "796a26abb75ce49f3a84433cd81bf1009d73d5f8", "shasum": "" }, "require": { "php": ">=7.2" }, - "time": "2025-07-08T02:45:35+00:00", + "time": "2026-05-27T06:51:48+00:00", "type": "library", "extra": { "thanks": { @@ -2352,7 +2418,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php83/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php83/tree/v1.38.2" }, "funding": [ { @@ -2376,23 +2442,23 @@ }, { "name": "symfony/polyfill-php84", - "version": "v1.33.0", - "version_normalized": "1.33.0.0", + "version": "v1.38.1", + "version_normalized": "1.38.1.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php84.git", - "reference": "d8ced4d875142b6a7426000426b8abc631d6b191" + "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/d8ced4d875142b6a7426000426b8abc631d6b191", - "reference": "d8ced4d875142b6a7426000426b8abc631d6b191", + "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", + "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", "shasum": "" }, "require": { "php": ">=7.2" }, - "time": "2025-06-24T13:30:11+00:00", + "time": "2026-05-26T12:51:13+00:00", "type": "library", "extra": { "thanks": { @@ -2435,7 +2501,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php84/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php84/tree/v1.38.1" }, "funding": [ { @@ -2459,23 +2525,23 @@ }, { "name": "symfony/polyfill-php85", - "version": "v1.33.0", - "version_normalized": "1.33.0.0", + "version": "v1.38.1", + "version_normalized": "1.38.1.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php85.git", - "reference": "d4e5fcd4ab3d998ab16c0db48e6cbb9a01993f91" + "reference": "ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/d4e5fcd4ab3d998ab16c0db48e6cbb9a01993f91", - "reference": "d4e5fcd4ab3d998ab16c0db48e6cbb9a01993f91", + "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1", + "reference": "ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1", "shasum": "" }, "require": { "php": ">=7.2" }, - "time": "2025-06-23T16:12:55+00:00", + "time": "2026-05-26T02:25:22+00:00", "type": "library", "extra": { "thanks": { @@ -2518,7 +2584,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php85/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php85/tree/v1.38.1" }, "funding": [ { @@ -2542,24 +2608,24 @@ }, { "name": "symfony/translation", - "version": "v7.3.3", - "version_normalized": "7.3.3.0", + "version": "v7.4.10", + "version_normalized": "7.4.10.0", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "e0837b4cbcef63c754d89a4806575cada743a38d" + "reference": "ada7578c30dd5feaa8259cff3e885069ea81ddde" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/e0837b4cbcef63c754d89a4806575cada743a38d", - "reference": "e0837b4cbcef63c754d89a4806575cada743a38d", + "url": "https://api.github.com/repos/symfony/translation/zipball/ada7578c30dd5feaa8259cff3e885069ea81ddde", + "reference": "ada7578c30dd5feaa8259cff3e885069ea81ddde", "shasum": "" }, "require": { "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^2.5|^3.0" + "symfony/translation-contracts": "^2.5.3|^3.3" }, "conflict": { "nikic/php-parser": "<5.0", @@ -2578,19 +2644,19 @@ "require-dev": { "nikic/php-parser": "^5.0", "psr/log": "^1|^2|^3", - "symfony/config": "^6.4|^7.0", - "symfony/console": "^6.4|^7.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/finder": "^6.4|^7.0", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", "symfony/http-client-contracts": "^2.5|^3.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/intl": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/intl": "^6.4|^7.0|^8.0", "symfony/polyfill-intl-icu": "^1.21", - "symfony/routing": "^6.4|^7.0", + "symfony/routing": "^6.4|^7.0|^8.0", "symfony/service-contracts": "^2.5|^3", - "symfony/yaml": "^6.4|^7.0" + "symfony/yaml": "^6.4|^7.0|^8.0" }, - "time": "2025-08-01T21:02:37+00:00", + "time": "2026-05-06T11:19:24+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -2621,7 +2687,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v7.3.3" + "source": "https://github.com/symfony/translation/tree/v7.4.10" }, "funding": [ { @@ -2645,23 +2711,23 @@ }, { "name": "symfony/translation-contracts", - "version": "v3.6.0", - "version_normalized": "3.6.0.0", + "version": "v3.7.0", + "version_normalized": "3.7.0.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d" + "reference": "0ab302977a952b42fd51475c4ebac81f8da0a95d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/df210c7a2573f1913b2d17cc95f90f53a73d8f7d", - "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/0ab302977a952b42fd51475c4ebac81f8da0a95d", + "reference": "0ab302977a952b42fd51475c4ebac81f8da0a95d", "shasum": "" }, "require": { "php": ">=8.1" }, - "time": "2024-09-27T08:32:26+00:00", + "time": "2026-01-05T13:30:16+00:00", "type": "library", "extra": { "thanks": { @@ -2669,7 +2735,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.7-dev" } }, "installation-source": "dist", @@ -2706,7 +2772,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/translation-contracts/tree/v3.7.0" }, "funding": [ { @@ -2717,6 +2783,10 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" @@ -2726,29 +2796,29 @@ }, { "name": "voku/portable-ascii", - "version": "2.0.3", - "version_normalized": "2.0.3.0", + "version": "2.1.1", + "version_normalized": "2.1.1.0", "source": { "type": "git", "url": "https://github.com/voku/portable-ascii.git", - "reference": "b1d923f88091c6bf09699efcd7c8a1b1bfd7351d" + "reference": "8e1051fe39379367aecf014f41744ce7539a856f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b1d923f88091c6bf09699efcd7c8a1b1bfd7351d", - "reference": "b1d923f88091c6bf09699efcd7c8a1b1bfd7351d", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/8e1051fe39379367aecf014f41744ce7539a856f", + "reference": "8e1051fe39379367aecf014f41744ce7539a856f", "shasum": "" }, "require": { - "php": ">=7.0.0" + "php": ">=7.1.0" }, "require-dev": { - "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" + "phpunit/phpunit": "~8.5 || ~9.6 || ~10.5 || ~11.5" }, "suggest": { "ext-intl": "Use Intl for transliterator_transliterate() support" }, - "time": "2024-11-21T01:49:47+00:00", + "time": "2026-04-26T05:33:54+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -2775,7 +2845,7 @@ ], "support": { "issues": "https://github.com/voku/portable-ascii/issues", - "source": "https://github.com/voku/portable-ascii/tree/2.0.3" + "source": "https://github.com/voku/portable-ascii/tree/2.1.1" }, "funding": [ { diff --git a/plugins/vendor/composer/installed.php b/plugins/vendor/composer/installed.php index 3e14732e..b7c4e55d 100644 --- a/plugins/vendor/composer/installed.php +++ b/plugins/vendor/composer/installed.php @@ -5,7 +5,7 @@ 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), - 'reference' => '300a1aff9fdc5c7baa1ececd256c95f541a83a1a', + 'reference' => '2204bd52f45d06ee1ec2b39342b3cf74bd8a2c8b', 'name' => '__root__', 'dev' => true, ), @@ -16,7 +16,7 @@ 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), - 'reference' => '300a1aff9fdc5c7baa1ececd256c95f541a83a1a', + 'reference' => '2204bd52f45d06ee1ec2b39342b3cf74bd8a2c8b', 'dev_requirement' => false, ), 'carbonphp/carbon-doctrine-types' => array( @@ -74,17 +74,17 @@ 'dev_requirement' => false, ), 'illuminate/collections' => array( - 'pretty_version' => 'v12.28.1', - 'version' => '12.28.1.0', + 'pretty_version' => 'v12.62.0', + 'version' => '12.62.0.0', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/collections', 'aliases' => array(), - 'reference' => '2737a0477a3f4855a71bf8f3d0b8d32596ded628', + 'reference' => '83313b009c4afb6f02dbc090bdb67809756eefa2', 'dev_requirement' => false, ), 'illuminate/conditionable' => array( - 'pretty_version' => 'v12.28.1', - 'version' => '12.28.1.0', + 'pretty_version' => 'v12.62.0', + 'version' => '12.62.0.0', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/conditionable', 'aliases' => array(), @@ -92,39 +92,48 @@ 'dev_requirement' => false, ), 'illuminate/contracts' => array( - 'pretty_version' => 'v12.28.1', - 'version' => '12.28.1.0', + 'pretty_version' => 'v12.62.0', + 'version' => '12.62.0.0', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/contracts', 'aliases' => array(), - 'reference' => 'f1c4cf02c9ab81a9ce47940cf261fa2386ed6c5d', + 'reference' => 'c16fd7ba7d8e6b8f336639ceb6b7e1ff6ed0efb5', 'dev_requirement' => false, ), 'illuminate/macroable' => array( - 'pretty_version' => 'v12.28.1', - 'version' => '12.28.1.0', + 'pretty_version' => 'v12.62.0', + 'version' => '12.62.0.0', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/macroable', 'aliases' => array(), - 'reference' => 'e862e5648ee34004fa56046b746f490dfa86c613', + 'reference' => 'e295d62d89dcdb87e2b1bd70dd14d074a0ed73cc', 'dev_requirement' => false, ), 'illuminate/pagination' => array( - 'pretty_version' => 'v12.28.1', - 'version' => '12.28.1.0', + 'pretty_version' => 'v12.62.0', + 'version' => '12.62.0.0', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/pagination', 'aliases' => array(), - 'reference' => '1d95e70671177108b202e6ceb61bc7bc9924bdbf', + 'reference' => '8327d828676654053906a771abf5eea5426354ec', + 'dev_requirement' => false, + ), + 'illuminate/reflection' => array( + 'pretty_version' => 'v12.62.0', + 'version' => '12.62.0.0', + 'type' => 'library', + 'install_path' => __DIR__ . '/../illuminate/reflection', + 'aliases' => array(), + 'reference' => '348cf5da9de89b596d7723be6425fb048e2bf4bb', 'dev_requirement' => false, ), 'illuminate/support' => array( - 'pretty_version' => 'v12.28.1', - 'version' => '12.28.1.0', + 'pretty_version' => 'v12.62.0', + 'version' => '12.62.0.0', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/support', 'aliases' => array(), - 'reference' => '487bbe527806615b818e87c364d93ba91f27db9b', + 'reference' => '3a8772095ef7d6b1961a77f2f0b8921c056c48ea', 'dev_requirement' => false, ), 'laravel/serializable-closure' => array( @@ -137,12 +146,12 @@ 'dev_requirement' => false, ), 'nesbot/carbon' => array( - 'pretty_version' => '3.10.3', - 'version' => '3.10.3.0', + 'pretty_version' => '3.11.4', + 'version' => '3.11.4.0', 'type' => 'library', 'install_path' => __DIR__ . '/../nesbot/carbon', 'aliases' => array(), - 'reference' => '8e3643dcd149ae0fe1d2ff4f2c8e4bbfad7c165f', + 'reference' => 'e890471a3494740f7d9326d72ce6a8c559ffee60', 'dev_requirement' => false, ), 'php-di/invoker' => array( @@ -257,39 +266,39 @@ ), ), 'symfony/clock' => array( - 'pretty_version' => 'v7.3.0', - 'version' => '7.3.0.0', + 'pretty_version' => 'v7.4.8', + 'version' => '7.4.8.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/clock', 'aliases' => array(), - 'reference' => 'b81435fbd6648ea425d1ee96a2d8e68f4ceacd24', + 'reference' => '674fa3b98e21531dd040e613479f5f6fa8f32111', 'dev_requirement' => false, ), 'symfony/deprecation-contracts' => array( - 'pretty_version' => 'v3.6.0', - 'version' => '3.6.0.0', + 'pretty_version' => 'v3.7.0', + 'version' => '3.7.0.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), - 'reference' => '63afe740e99a13ba87ec199bb07bbdee937a5b62', + 'reference' => '50f59d1f3ca46d41ac911f97a78626b6756af35b', 'dev_requirement' => false, ), 'symfony/http-foundation' => array( - 'pretty_version' => 'v7.3.7', - 'version' => '7.3.7.0', + 'pretty_version' => 'v7.4.13', + 'version' => '7.4.13.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/http-foundation', 'aliases' => array(), - 'reference' => 'db488a62f98f7a81d5746f05eea63a74e55bb7c4', + 'reference' => 'bc354f47c62301e990b7874fa662326368508e2c', 'dev_requirement' => false, ), 'symfony/mime' => array( - 'pretty_version' => 'v8.1.0', - 'version' => '8.1.0.0', + 'pretty_version' => 'v7.4.13', + 'version' => '7.4.13.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/mime', 'aliases' => array(), - 'reference' => 'b164ae7e3f7915aacfe9ee155f2f358502440664', + 'reference' => 'a845722765c4f6b2ce88beaf4f4479975b186770', 'dev_requirement' => false, ), 'symfony/polyfill-iconv' => array( @@ -320,12 +329,12 @@ 'dev_requirement' => false, ), 'symfony/polyfill-mbstring' => array( - 'pretty_version' => 'v1.33.0', - 'version' => '1.33.0.0', + 'pretty_version' => 'v1.38.2', + 'version' => '1.38.2.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), - 'reference' => '6d857f4d76bd4b343eac26d6b539585d2bc56493', + 'reference' => 'd3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6', 'dev_requirement' => false, ), 'symfony/polyfill-php80' => array( @@ -338,48 +347,48 @@ 'dev_requirement' => false, ), 'symfony/polyfill-php83' => array( - 'pretty_version' => 'v1.33.0', - 'version' => '1.33.0.0', + 'pretty_version' => 'v1.38.2', + 'version' => '1.38.2.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php83', 'aliases' => array(), - 'reference' => '17f6f9a6b1735c0f163024d959f700cfbc5155e5', + 'reference' => '796a26abb75ce49f3a84433cd81bf1009d73d5f8', 'dev_requirement' => false, ), 'symfony/polyfill-php84' => array( - 'pretty_version' => 'v1.33.0', - 'version' => '1.33.0.0', + 'pretty_version' => 'v1.38.1', + 'version' => '1.38.1.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php84', 'aliases' => array(), - 'reference' => 'd8ced4d875142b6a7426000426b8abc631d6b191', + 'reference' => 'f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa', 'dev_requirement' => false, ), 'symfony/polyfill-php85' => array( - 'pretty_version' => 'v1.33.0', - 'version' => '1.33.0.0', + 'pretty_version' => 'v1.38.1', + 'version' => '1.38.1.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php85', 'aliases' => array(), - 'reference' => 'd4e5fcd4ab3d998ab16c0db48e6cbb9a01993f91', + 'reference' => 'ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1', 'dev_requirement' => false, ), 'symfony/translation' => array( - 'pretty_version' => 'v7.3.3', - 'version' => '7.3.3.0', + 'pretty_version' => 'v7.4.10', + 'version' => '7.4.10.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation', 'aliases' => array(), - 'reference' => 'e0837b4cbcef63c754d89a4806575cada743a38d', + 'reference' => 'ada7578c30dd5feaa8259cff3e885069ea81ddde', 'dev_requirement' => false, ), 'symfony/translation-contracts' => array( - 'pretty_version' => 'v3.6.0', - 'version' => '3.6.0.0', + 'pretty_version' => 'v3.7.0', + 'version' => '3.7.0.0', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation-contracts', 'aliases' => array(), - 'reference' => 'df210c7a2573f1913b2d17cc95f90f53a73d8f7d', + 'reference' => '0ab302977a952b42fd51475c4ebac81f8da0a95d', 'dev_requirement' => false, ), 'symfony/translation-implementation' => array( @@ -389,12 +398,12 @@ ), ), 'voku/portable-ascii' => array( - 'pretty_version' => '2.0.3', - 'version' => '2.0.3.0', + 'pretty_version' => '2.1.1', + 'version' => '2.1.1.0', 'type' => 'library', 'install_path' => __DIR__ . '/../voku/portable-ascii', 'aliases' => array(), - 'reference' => 'b1d923f88091c6bf09699efcd7c8a1b1bfd7351d', + 'reference' => '8e1051fe39379367aecf014f41744ce7539a856f', 'dev_requirement' => false, ), 'webklex/php-imap' => array( diff --git a/plugins/vendor/composer/platform_check.php b/plugins/vendor/composer/platform_check.php index 4d365065..d32d90c6 100644 --- a/plugins/vendor/composer/platform_check.php +++ b/plugins/vendor/composer/platform_check.php @@ -4,8 +4,8 @@ $issues = array(); -if (!(PHP_VERSION_ID >= 80401)) { - $issues[] = 'Your Composer dependencies require a PHP version ">= 8.4.1". You are running ' . PHP_VERSION . '.'; +if (!(PHP_VERSION_ID >= 80200)) { + $issues[] = 'Your Composer dependencies require a PHP version ">= 8.2.0". You are running ' . PHP_VERSION . '.'; } if ($issues) { diff --git a/plugins/vendor/illuminate/collections/Arr.php b/plugins/vendor/illuminate/collections/Arr.php index 51bd12c7..d3e4d89e 100644 --- a/plugins/vendor/illuminate/collections/Arr.php +++ b/plugins/vendor/illuminate/collections/Arr.php @@ -33,7 +33,19 @@ class Arr * Determine whether the given value is arrayable. * * @param mixed $value - * @return bool + * @return ($value is array + * ? true + * : ($value is \Illuminate\Contracts\Support\Arrayable + * ? true + * : ($value is \Traversable + * ? true + * : ($value is \Illuminate\Contracts\Support\Jsonable + * ? true + * : ($value is \JsonSerializable ? true : false) + * ) + * ) + * ) + * ) */ public static function arrayable($value) { @@ -63,6 +75,8 @@ class Arr /** * Get an array item from an array using "dot" notation. + * + * @throws \InvalidArgumentException */ public static function array(ArrayAccess|array $array, string|int|null $key, ?array $default = null): array { @@ -79,6 +93,8 @@ class Arr /** * Get a boolean item from an array using "dot" notation. + * + * @throws \InvalidArgumentException */ public static function boolean(ArrayAccess|array $array, string|int|null $key, ?bool $default = null): bool { @@ -117,8 +133,10 @@ class Arr /** * Cross join the given arrays, returning all possible permutations. * - * @param iterable ...$arrays - * @return array + * @template TValue + * + * @param iterable ...$arrays + * @return array> */ public static function crossJoin(...$arrays) { @@ -144,8 +162,11 @@ class Arr /** * Divide an array into two arrays. One with keys and the other with values. * - * @param array $array - * @return array + * @template TKey of array-key + * @template TValue + * + * @param array $array + * @return array{TKey[], TValue[]} */ public static function divide($array) { @@ -157,25 +178,29 @@ class Arr * * @param iterable $array * @param string $prepend + * @param int $depth * @return array */ - public static function dot($array, $prepend = '') + public static function dot($array, $prepend = '', $depth = INF) { $results = []; - $flatten = function ($data, $prefix) use (&$results, &$flatten): void { + $flatten = function ($data, $prefix, $currentDepth) use (&$results, &$flatten, $depth): void { foreach ($data as $key => $value) { $newKey = $prefix.$key; - if (is_array($value) && ! empty($value)) { - $flatten($value, $newKey.'.'); + if (is_array($value) && ! empty($value) && $currentDepth < $depth) { + $flatten($value, $newKey.'.', $currentDepth + 1); } else { $results[$newKey] = $value; } } }; - $flatten($array, $prepend); + $flatten($array, $prepend, 0); + + // Destroy self-referencing closure to avoid memory leak... + $flatten = null; return $results; } @@ -211,6 +236,23 @@ class Arr return $array; } + /** + * Get all of the given array except for a specified array of values. + * + * @param array $array + * @param mixed $values + * @param bool $strict + * @return array + */ + public static function exceptValues($array, $values, $strict = false) + { + $values = (array) $values; + + return array_filter($array, function ($value) use ($values, $strict) { + return ! in_array($value, $values, $strict); + }); + } + /** * Determine if the given key exists in the provided array. * @@ -228,7 +270,7 @@ class Arr return $array->offsetExists($key); } - if (is_float($key)) { + if (is_float($key) || is_null($key)) { $key = (string) $key; } @@ -236,7 +278,7 @@ class Arr } /** - * Return the first element in an array passing a given truth test. + * Return the first element in an iterable passing a given truth test. * * @template TKey * @template TValue @@ -265,6 +307,8 @@ class Arr return value($default); } + $array = static::from($array); + $key = array_find_key($array, $callback); return $key !== null ? $array[$key] : value($default); @@ -339,6 +383,8 @@ class Arr /** * Get a float item from an array using "dot" notation. + * + * @throws \InvalidArgumentException */ public static function float(ArrayAccess|array $array, string|int|null $key, ?float $default = null): float { @@ -446,7 +492,7 @@ class Arr } if (! str_contains($key, '.')) { - return $array[$key] ?? value($default); + return value($default); } foreach (explode('.', $key) as $segment) { @@ -576,6 +622,8 @@ class Arr /** * Get an integer item from an array using "dot" notation. + * + * @throws \InvalidArgumentException */ public static function integer(ArrayAccess|array $array, string|int|null $key, ?int $default = null): int { @@ -596,7 +644,7 @@ class Arr * An array is "associative" if it doesn't have sequential numerical keys beginning with zero. * * @param array $array - * @return bool + * @return ($array is list ? false : true) */ public static function isAssoc(array $array) { @@ -609,7 +657,7 @@ class Arr * An array is a "list" if all array keys are sequential integers starting from 0 with no gaps in between. * * @param array $array - * @return bool + * @return ($array is list ? true : false) */ public static function isList($array) { @@ -646,7 +694,7 @@ class Arr /** * Key an associative array by a field or using a callback. * - * @param array $array + * @param iterable $array * @param callable|array|string $keyBy * @return array */ @@ -679,6 +727,23 @@ class Arr return array_intersect_key($array, array_flip((array) $keys)); } + /** + * Get a subset of the items from the given array by value. + * + * @param array $array + * @param mixed $values + * @param bool $strict + * @return array + */ + public static function onlyValues($array, $values, $strict = false) + { + $values = (array) $values; + + return array_filter($array, function ($value) use ($values, $strict) { + return in_array($value, $values, $strict); + }); + } + /** * Select an array of values from an array. * @@ -748,7 +813,7 @@ class Arr /** * Explode the "value" and "key" arguments passed to "pluck". * - * @param string|array|Closure $value + * @param Closure|array|string $value * @param string|array|Closure|null $key * @return array */ @@ -1022,9 +1087,12 @@ class Arr /** * Sort the array using the given callback or "dot" notation. * - * @param array $array - * @param callable|array|string|null $callback - * @return array + * @template TKey of array-key + * @template TValue + * + * @param iterable $array + * @param callable|string|null|array $callback + * @return array */ public static function sort($array, $callback = null) { @@ -1034,9 +1102,12 @@ class Arr /** * Sort the array in descending order using the given callback or "dot" notation. * - * @param array $array - * @param callable|array|string|null $callback - * @return array + * @template TKey of array-key + * @template TValue + * + * @param iterable $array + * @param callable|string|null|array $callback + * @return array */ public static function sortDesc($array, $callback = null) { @@ -1046,10 +1117,13 @@ class Arr /** * Recursively sort an array by keys and values. * - * @param array $array - * @param int $options + * @template TKey of array-key + * @template TValue + * + * @param array $array + * @param int-mask-of $options * @param bool $descending - * @return array + * @return array */ public static function sortRecursive($array, $options = SORT_REGULAR, $descending = false) { @@ -1075,9 +1149,12 @@ class Arr /** * Recursively sort an array by keys and values in descending order. * - * @param array $array - * @param int $options - * @return array + * @template TKey of array-key + * @template TValue + * + * @param array $array + * @param int-mask-of $options + * @return array */ public static function sortRecursiveDesc($array, $options = SORT_REGULAR) { @@ -1086,6 +1163,8 @@ class Arr /** * Get a string item from an array using "dot" notation. + * + * @throws \InvalidArgumentException */ public static function string(ArrayAccess|array $array, string|int|null $key, ?string $default = null): string { @@ -1103,8 +1182,8 @@ class Arr /** * Conditionally compile classes from an array into a CSS class list. * - * @param array|string $array - * @return string + * @param array|array|string $array + * @return ($array is array ? '' : ($array is '' ? '' : ($array is array{} ? '' : non-empty-string))) */ public static function toCssClasses($array) { @@ -1126,8 +1205,8 @@ class Arr /** * Conditionally compile styles from an array into a style list. * - * @param array|string $array - * @return string + * @param array|array|string $array + * @return ($array is array ? '' : ($array is '' ? '' : ($array is array{} ? '' : non-empty-string))) */ public static function toCssStyles($array) { @@ -1149,9 +1228,12 @@ class Arr /** * Filter the array using the given callback. * - * @param array $array - * @param callable $callback - * @return array + * @template TKey of array-key + * @template TValue + * + * @param array $array + * @param callable(TValue, TKey): bool $callback + * @return array */ public static function where($array, callable $callback) { @@ -1161,9 +1243,12 @@ class Arr /** * Filter the array using the negation of the given callback. * - * @param array $array - * @param callable $callback - * @return array + * @template TKey of array-key + * @template TValue + * + * @param array $array + * @param callable(TValue, TKey): bool $callback + * @return array */ public static function reject($array, callable $callback) { @@ -1210,8 +1295,11 @@ class Arr /** * If the given value is not an array and not null, wrap it in one. * - * @param mixed $value - * @return array + * @template TKey of array-key = array-key + * @template TValue + * + * @param array|TValue|null $value + * @return ($value is null ? array{} : ($value is array ? array : array{TValue})) */ public static function wrap($value) { diff --git a/plugins/vendor/illuminate/collections/Collection.php b/plugins/vendor/illuminate/collections/Collection.php index b01db682..1d42b2c8 100644 --- a/plugins/vendor/illuminate/collections/Collection.php +++ b/plugins/vendor/illuminate/collections/Collection.php @@ -95,7 +95,7 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl return; } - $middle = (int) ($count / 2); + $middle = intdiv($count, 2); if ($count % 2) { return $values->get($middle); @@ -473,12 +473,14 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl * * @template TGetDefault * - * @param TKey $key + * @param TKey|null $key * @param TGetDefault|(\Closure(): TGetDefault) $default * @return TValue|TGetDefault */ public function get($key, $default = null) { + $key ??= ''; + if (array_key_exists($key, $this->items)) { return $this->items[$key]; } @@ -497,8 +499,8 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl */ public function getOrPut($key, $value) { - if (array_key_exists($key, $this->items)) { - return $this->items[$key]; + if (array_key_exists($key ?? '', $this->items)) { + return $this->items[$key ?? '']; } $this->offsetSet($key, $value = value($value)); @@ -509,11 +511,16 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl /** * Group an associative array by a field or using a callback. * - * @template TGroupKey of array-key + * @template TGroupKey of array-key|\UnitEnum|\Stringable * * @param (callable(TValue, TKey): TGroupKey)|array|string $groupBy * @param bool $preserveKeys - * @return static<($groupBy is string ? array-key : ($groupBy is array ? array-key : TGroupKey)), static<($preserveKeys is true ? TKey : int), ($groupBy is array ? mixed : TValue)>> + * @return static< + * ($groupBy is (array|string) + * ? array-key + * : (TGroupKey is \UnitEnum ? array-key : (TGroupKey is \Stringable ? string : TGroupKey))), + * static<($preserveKeys is true ? TKey : int), ($groupBy is array ? mixed : TValue)> + * > */ public function groupBy($groupBy, $preserveKeys = false) { @@ -538,7 +545,7 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl $groupKey = match (true) { is_bool($groupKey) => (int) $groupKey, $groupKey instanceof \UnitEnum => enum_value($groupKey), - $groupKey instanceof \Stringable => (string) $groupKey, + $groupKey instanceof \Stringable, is_null($groupKey) => (string) $groupKey, default => $groupKey, }; @@ -562,10 +569,10 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl /** * Key an associative array by a field or using a callback. * - * @template TNewKey of array-key + * @template TNewKey of array-key|\UnitEnum * * @param (callable(TValue, TKey): TNewKey)|array|string $keyBy - * @return static<($keyBy is string ? array-key : ($keyBy is array ? array-key : TNewKey)), TValue> + * @return static<($keyBy is (array|string) ? array-key : (TNewKey is \UnitEnum ? array-key : TNewKey)), TValue> */ public function keyBy($keyBy) { @@ -600,7 +607,7 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl { $keys = is_array($key) ? $key : func_get_args(); - return array_all($keys, fn ($key) => array_key_exists($key, $this->items)); + return array_all($keys, fn ($key) => array_key_exists($key ?? '', $this->items)); } /** @@ -617,7 +624,7 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl $keys = is_array($key) ? $key : func_get_args(); - return array_any($keys, fn ($key) => array_key_exists($key, $this->items)); + return array_any($keys, fn ($key) => array_key_exists($key ?? '', $this->items)); } /** @@ -722,14 +729,25 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl * * @param (callable(TValue, TKey): bool)|null $callback * @return bool + * + * @deprecated 12.49.0 Use the `hasSole()` method instead. */ public function containsOneItem(?callable $callback = null): bool { - if ($callback) { - return $this->filter($callback)->count() === 1; - } + return $this->hasSole($callback); + } - return $this->count() === 1; + /** + * Determine if the collection contains multiple items. + * + * @param (callable(TValue, TKey): bool)|null $callback + * @return bool + * + * @deprecated 12.50.0 Use the `hasMany()` method instead. + */ + public function containsManyItems(?callable $callback = null): bool + { + return $this->hasMany($callback); } /** @@ -737,7 +755,7 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl * * @param string $glue * @param string $finalGlue - * @return string + * @return TValue|string */ public function join($glue, $finalGlue = '') { @@ -789,8 +807,8 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl /** * Get the values of a given key. * - * @param string|int|array|null $value - * @param string|null $key + * @param \Closure|string|int|array|null $value + * @param \Closure|string|null $key * @return static */ public function pluck($value, $key = null) @@ -862,8 +880,10 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl /** * Merge the collection with the given items. * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * @template TMergeValue + * + * @param \Illuminate\Contracts\Support\Arrayable|iterable $items + * @return static */ public function merge($items) { @@ -929,10 +949,16 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl * * @param int $step * @param int $offset - * @return static + * @return ($step is positive-int ? static : never) + * + * @throws \InvalidArgumentException */ public function nth($step, $offset = 0) { + if ($step < 1) { + throw new InvalidArgumentException('Step value must be at least 1.'); + } + $new = []; $position = 0; @@ -1030,7 +1056,7 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl */ public function prepend($value, $key = null) { - $this->items = Arr::prepend($this->items, ...func_get_args()); + $this->items = Arr::prepend($this->items, ...(func_num_args() > 1 ? func_get_args() : [$value])); return $this; } @@ -1279,12 +1305,20 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl /** * Create chunks representing a "sliding window" view of the items in the collection. * - * @param int $size - * @param int $step + * @param positive-int $size + * @param positive-int $step * @return static + * + * @throws \InvalidArgumentException */ public function sliding($size = 2, $step = 1) { + if ($size < 1) { + throw new InvalidArgumentException('Size value must be at least 1.'); + } elseif ($step < 1) { + throw new InvalidArgumentException('Step value must be at least 1.'); + } + $chunks = floor(($this->count() - $size) / $step) + 1; return static::times($chunks, fn ($number) => $this->slice(($number - 1) * $step, $size)); @@ -1339,10 +1373,16 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl * Split a collection into a certain number of groups. * * @param int $numberOfGroups - * @return static + * @return ($numberOfGroups is positive-int ? static : never) + * + * @throws \InvalidArgumentException */ public function split($numberOfGroups) { + if ($numberOfGroups < 1) { + throw new InvalidArgumentException('Number of groups must be at least 1.'); + } + if ($this->isEmpty()) { return new static; } @@ -1376,17 +1416,23 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl * Split a collection into a certain number of groups, and fill the first groups completely. * * @param int $numberOfGroups - * @return static + * @return ($numberOfGroups is positive-int ? static : never) + * + * @throws \InvalidArgumentException */ public function splitIn($numberOfGroups) { + if ($numberOfGroups < 1) { + throw new InvalidArgumentException('Number of groups must be at least 1.'); + } + return $this->chunk((int) ceil($this->count() / $numberOfGroups)); } /** * Get the first item in the collection, but only if exactly one item exists. Otherwise, throw an exception. * - * @param (callable(TValue, TKey): bool)|string $key + * @param (callable(TValue, TKey): bool)|string|null $key * @param mixed $operator * @param mixed $value * @return TValue @@ -1415,6 +1461,26 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl return $items->first(); } + /** + * Determine if the collection contains a single item, optionally matching the given criteria. + * + * @param (callable(TValue, TKey): bool)|string|null $key + * @param mixed $operator + * @param mixed $value + * @return bool + */ + public function hasSole($key = null, $operator = null, $value = null): bool + { + $filter = func_num_args() > 1 + ? $this->operatorForWhere(...func_get_args()) + : $key; + + return $this + ->unless($filter == null) + ->filter($filter) + ->count() === 1; + } + /** * Get the first item in the collection but throw an exception if no matching items exist. * @@ -1584,7 +1650,7 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl } } else { $result = match ($options) { - SORT_NUMERIC => intval($values[0]) <=> intval($values[1]), + SORT_NUMERIC => (int) $values[0] <=> (int) $values[1], SORT_STRING => strcmp($values[0], $values[1]), SORT_NATURAL => strnatcmp((string) $values[0], (string) $values[1]), SORT_LOCALE_STRING => strcoll($values[0], $values[1]), @@ -1742,11 +1808,12 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl /** * Flatten a multi-dimensional associative array with dots. * + * @param int $depth * @return static */ - public function dot() + public function dot($depth = INF) { - return new static(Arr::dot($this->all())); + return new static(Arr::dot($this->all(), '', $depth)); } /** @@ -1852,7 +1919,7 @@ class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerabl /** * Count the number of items in the collection by a field or using a callback. * - * @param (callable(TValue, TKey): array-key|\UnitEnum)|string|null $countBy + * @param (callable(TValue, TKey): (array-key|\UnitEnum))|string|null $countBy * @return static */ public function countBy($countBy = null) diff --git a/plugins/vendor/illuminate/collections/Enumerable.php b/plugins/vendor/illuminate/collections/Enumerable.php index 0b434804..5078f90d 100644 --- a/plugins/vendor/illuminate/collections/Enumerable.php +++ b/plugins/vendor/illuminate/collections/Enumerable.php @@ -625,6 +625,13 @@ interface Enumerable extends Arrayable, Countable, IteratorAggregate, Jsonable, */ public function containsOneItem(); + /** + * Determine if the collection contains multiple items. + * + * @return bool + */ + public function containsManyItems(); + /** * Join all items from the collection using a string. The final items can use a separate glue string. * @@ -733,8 +740,10 @@ interface Enumerable extends Arrayable, Countable, IteratorAggregate, Jsonable, /** * Merge the collection with the given items. * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * @template TMergeValue + * + * @param \Illuminate\Contracts\Support\Arrayable|iterable $items + * @return static */ public function merge($items); @@ -985,7 +994,7 @@ interface Enumerable extends Arrayable, Countable, IteratorAggregate, Jsonable, /** * Get the first item in the collection but throw an exception if no matching items exist. * - * @param (callable(TValue, TKey): bool)|string $key + * @param (callable(TValue, TKey): bool)|string|null $key * @param mixed $operator * @param mixed $value * @return TValue diff --git a/plugins/vendor/illuminate/collections/LazyCollection.php b/plugins/vendor/illuminate/collections/LazyCollection.php index 6e1e5c2b..028ab882 100644 --- a/plugins/vendor/illuminate/collections/LazyCollection.php +++ b/plugins/vendor/illuminate/collections/LazyCollection.php @@ -77,7 +77,9 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable * @param int $from * @param int $to * @param int $step - * @return static + * @return ($step is zero ? never : static) + * + * @throws \InvalidArgumentException */ public static function range($from, $to, $step = 1) { @@ -303,23 +305,18 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Cross join the given iterables, returning all possible permutations. - * - * @template TCrossJoinKey - * @template TCrossJoinValue - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable ...$arrays - * @return static> + * {@inheritDoc} */ + #[\Override] public function crossJoin(...$arrays) { - return $this->passthru('crossJoin', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** * Count the number of items in the collection by a field or using a callback. * - * @param (callable(TValue, TKey): array-key|\UnitEnum)|string|null $countBy + * @param (callable(TValue, TKey): (array-key|\UnitEnum))|string|null $countBy * @return static */ public function countBy($countBy = null) @@ -346,110 +343,84 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Get the items that are not present in the given items. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function diff($items) { - return $this->passthru('diff', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Get the items that are not present in the given items, using the callback. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @param callable(TValue, TValue): int $callback - * @return static + * {@inheritDoc} */ + #[\Override] public function diffUsing($items, callable $callback) { - return $this->passthru('diffUsing', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Get the items whose keys and values are not present in the given items. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function diffAssoc($items) { - return $this->passthru('diffAssoc', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Get the items whose keys and values are not present in the given items, using the callback. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @param callable(TKey, TKey): int $callback - * @return static + * {@inheritDoc} */ + #[\Override] public function diffAssocUsing($items, callable $callback) { - return $this->passthru('diffAssocUsing', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Get the items whose keys are not present in the given items. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function diffKeys($items) { - return $this->passthru('diffKeys', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Get the items whose keys are not present in the given items, using the callback. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @param callable(TKey, TKey): int $callback - * @return static + * {@inheritDoc} */ + #[\Override] public function diffKeysUsing($items, callable $callback) { - return $this->passthru('diffKeysUsing', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Retrieve duplicate items. - * - * @template TMapValue - * - * @param (callable(TValue): TMapValue)|string|null $callback - * @param bool $strict - * @return static + * {@inheritDoc} */ + #[\Override] public function duplicates($callback = null, $strict = false) { - return $this->passthru('duplicates', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Retrieve duplicate items using strict comparison. - * - * @template TMapValue - * - * @param (callable(TValue): TMapValue)|string|null $callback - * @return static + * {@inheritDoc} */ + #[\Override] public function duplicatesStrict($callback = null) { - return $this->passthru('duplicatesStrict', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Get all items except for those with the specified keys. - * - * @param \Illuminate\Support\Enumerable|array $keys - * @return static + * {@inheritDoc} */ + #[\Override] public function except($keys) { - return $this->passthru('except', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** @@ -565,26 +536,31 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Group an associative array by a field or using a callback. + * {@inheritDoc} * - * @template TGroupKey of array-key + * @template TGroupKey of array-key|\UnitEnum|\Stringable * * @param (callable(TValue, TKey): TGroupKey)|array|string $groupBy - * @param bool $preserveKeys - * @return static<($groupBy is string ? array-key : ($groupBy is array ? array-key : TGroupKey)), static<($preserveKeys is true ? TKey : int), ($groupBy is array ? mixed : TValue)>> + * @return static< + * ($groupBy is (array|string) + * ? array-key + * : (TGroupKey is \UnitEnum ? array-key : (TGroupKey is \Stringable ? string : TGroupKey))), + * static<($preserveKeys is true ? TKey : int), ($groupBy is array ? mixed : TValue)> + * > */ + #[\Override] public function groupBy($groupBy, $preserveKeys = false) { - return $this->passthru('groupBy', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** * Key an associative array by a field or using a callback. * - * @template TNewKey of array-key + * @template TNewKey of array-key|\UnitEnum * * @param (callable(TValue, TKey): TNewKey)|array|string $keyBy - * @return static<($keyBy is string ? array-key : ($keyBy is array ? array-key : TNewKey)), TValue> + * @return static<($keyBy is (array|string) ? array-key : (TNewKey is \UnitEnum ? array-key : TNewKey)), TValue> */ public function keyBy($keyBy) { @@ -655,60 +631,48 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Intersect the collection with the given items. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function intersect($items) { - return $this->passthru('intersect', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Intersect the collection with the given items, using the callback. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @param callable(TValue, TValue): int $callback - * @return static + * {@inheritDoc} */ + #[\Override] public function intersectUsing($items, callable $callback) { - return $this->passthru('intersectUsing', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Intersect the collection with the given items with additional index check. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function intersectAssoc($items) { - return $this->passthru('intersectAssoc', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Intersect the collection with the given items with additional index check, using the callback. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @param callable(TValue, TValue): int $callback - * @return static + * {@inheritDoc} */ + #[\Override] public function intersectAssocUsing($items, callable $callback) { - return $this->passthru('intersectAssocUsing', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Intersect the collection with the given items by key. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function intersectByKeys($items) { - return $this->passthru('intersectByKeys', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** @@ -724,11 +688,26 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable /** * Determine if the collection contains a single item. * + * @param (callable(TValue, TKey): bool)|null $callback * @return bool + * + * @deprecated 12.49.0 Use the `hasSole()` method instead. */ - public function containsOneItem() + public function containsOneItem(?callable $callback = null): bool { - return $this->take(2)->count() === 1; + return $this->hasSole($callback); + } + + /** + * Determine if the collection contains multiple items. + * + * @return bool + * + * @deprecated 12.50.0 Use the `hasMany()` method instead. + */ + public function containsManyItems(): bool + { + return $this->hasMany(); } /** @@ -831,19 +810,12 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Run a dictionary map over the items. - * - * The callback should return an associative array with a single key/value pair. - * - * @template TMapToDictionaryKey of array-key - * @template TMapToDictionaryValue - * - * @param callable(TValue, TKey): array $callback - * @return static> + * {@inheritDoc} */ + #[\Override] public function mapToDictionary(callable $callback) { - return $this->passthru('mapToDictionary', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** @@ -867,27 +839,21 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Merge the collection with the given items. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function merge($items) { - return $this->passthru('merge', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Recursively merge the collection with the given items. - * - * @template TMergeRecursiveValue - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function mergeRecursive($items) { - return $this->passthru('mergeRecursive', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** @@ -898,7 +864,7 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable */ public function multiply(int $multiplier) { - return $this->passthru('multiply', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** @@ -935,14 +901,12 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Union the collection with the given items. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function union($items) { - return $this->passthru('union', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** @@ -950,10 +914,16 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable * * @param int $step * @param int $offset - * @return static + * @return ($step is positive-int ? static : never) + * + * @throws \InvalidArgumentException */ public function nth($step, $offset = 0) { + if ($step < 1) { + throw new InvalidArgumentException('Step value must be at least 1.'); + } + return new static(function () use ($step, $offset) { $position = 0; @@ -1058,11 +1028,12 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable * Get one or a specified number of items randomly from the collection. * * @param int|null $number + * @param bool $preserveKeys * @return static|TValue * * @throws \InvalidArgumentException */ - public function random($number = null) + public function random($number = null, $preserveKeys = false) { $result = $this->collect()->random(...func_get_args()); @@ -1097,24 +1068,21 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Recursively replace the collection items with the given items. - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $items - * @return static + * {@inheritDoc} */ + #[\Override] public function replaceRecursive($items) { - return $this->passthru('replaceRecursive', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Reverse items order. - * - * @return static + * {@inheritDoc} */ + #[\Override] public function reverse() { - return $this->passthru('reverse', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** @@ -1203,24 +1171,31 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Shuffle the items in the collection. - * - * @return static + * {@inheritDoc} */ + #[\Override] public function shuffle() { - return $this->passthru('shuffle', []); + return $this->passthru(__FUNCTION__, []); } /** * Create chunks representing a "sliding window" view of the items in the collection. * - * @param int $size - * @param int $step + * @param positive-int $size + * @param positive-int $step * @return static + * + * @throws \InvalidArgumentException */ public function sliding($size = 2, $step = 1) { + if ($size < 1) { + throw new InvalidArgumentException('Size value must be at least 1.'); + } elseif ($step < 1) { + throw new InvalidArgumentException('Step value must be at least 1.'); + } + return new static(function () use ($size, $step) { $iterator = $this->getIterator(); @@ -1313,16 +1288,13 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Get a slice of items from the enumerable. - * - * @param int $offset - * @param int|null $length - * @return static + * {@inheritDoc} */ + #[\Override] public function slice($offset, $length = null) { if ($offset < 0 || $length < 0) { - return $this->passthru('slice', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } $instance = $this->skip($offset); @@ -1331,20 +1303,24 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Split a collection into a certain number of groups. + * {@inheritDoc} * - * @param int $numberOfGroups - * @return static + * @throws \InvalidArgumentException */ + #[\Override] public function split($numberOfGroups) { - return $this->passthru('split', func_get_args()); + if ($numberOfGroups < 1) { + throw new InvalidArgumentException('Number of groups must be at least 1.'); + } + + return $this->passthru(__FUNCTION__, func_get_args()); } /** * Get the first item in the collection, but only if exactly one item exists. Otherwise, throw an exception. * - * @param (callable(TValue, TKey): bool)|string $key + * @param (callable(TValue, TKey): bool)|string|null $key * @param mixed $operator * @param mixed $value * @return TValue @@ -1366,10 +1342,31 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable ->sole(); } + /** + * Determine if the collection contains a single item or a single item matching the given criteria. + * + * @param (callable(TValue, TKey): bool)|string|null $key + * @param mixed $operator + * @param mixed $value + * @return bool + */ + public function hasSole($key = null, $operator = null, $value = null): bool + { + $filter = func_num_args() > 1 + ? $this->operatorForWhere(...func_get_args()) + : $key; + + return $this + ->unless($filter == null) + ->filter($filter) + ->take(2) + ->count() === 1; + } + /** * Get the first item in the collection but throw an exception if no matching items exist. * - * @param (callable(TValue, TKey): bool)|string $key + * @param (callable(TValue, TKey): bool)|string|null $key * @param mixed $operator * @param mixed $value * @return TValue @@ -1439,10 +1436,16 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable * Split a collection into a certain number of groups, and fill the first groups completely. * * @param int $numberOfGroups - * @return static + * @return ($numberOfGroups is positive-int ? static : never) + * + * @throws \InvalidArgumentException */ public function splitIn($numberOfGroups) { + if ($numberOfGroups < 1) { + throw new InvalidArgumentException('Number of groups must be at least 1.'); + } + return $this->chunk((int) ceil($this->count() / $numberOfGroups)); } @@ -1484,84 +1487,66 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Sort through each item with a callback. - * - * @param (callable(TValue, TValue): int)|null|int $callback - * @return static + * {@inheritDoc} */ + #[\Override] public function sort($callback = null) { - return $this->passthru('sort', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Sort items in descending order. - * - * @param int $options - * @return static + * {@inheritDoc} */ + #[\Override] public function sortDesc($options = SORT_REGULAR) { - return $this->passthru('sortDesc', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Sort the collection using the given callback. - * - * @param array|(callable(TValue, TKey): mixed)|string $callback - * @param int $options - * @param bool $descending - * @return static + * {@inheritDoc} */ + #[\Override] public function sortBy($callback, $options = SORT_REGULAR, $descending = false) { - return $this->passthru('sortBy', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Sort the collection in descending order using the given callback. - * - * @param array|(callable(TValue, TKey): mixed)|string $callback - * @param int $options - * @return static + * {@inheritDoc} */ + #[\Override] public function sortByDesc($callback, $options = SORT_REGULAR) { - return $this->passthru('sortByDesc', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Sort the collection keys. - * - * @param int $options - * @param bool $descending - * @return static + * {@inheritDoc} */ + #[\Override] public function sortKeys($options = SORT_REGULAR, $descending = false) { - return $this->passthru('sortKeys', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Sort the collection keys in descending order. - * - * @param int $options - * @return static + * {@inheritDoc} */ + #[\Override] public function sortKeysDesc($options = SORT_REGULAR) { - return $this->passthru('sortKeysDesc', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** - * Sort the collection keys using a callback. - * - * @param callable(TKey, TKey): int $callback - * @return static + * {@inheritDoc} */ + #[\Override] public function sortKeysUsing(callable $callback) { - return $this->passthru('sortKeysUsing', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } /** @@ -1630,17 +1615,22 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Take items in the collection until a given point in time. + * Take items in the collection until a given point in time, with an optional callback on timeout. * * @param \DateTimeInterface $timeout + * @param callable(TValue|null, TKey|null): mixed|null $callback * @return static */ - public function takeUntilTimeout(DateTimeInterface $timeout) + public function takeUntilTimeout(DateTimeInterface $timeout, ?callable $callback = null) { $timeout = $timeout->getTimestamp(); - return new static(function () use ($timeout) { + return new static(function () use ($timeout, $callback) { if ($this->now() >= $timeout) { + if ($callback) { + $callback(null, null); + } + return; } @@ -1648,6 +1638,10 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable yield $key => $value; if ($this->now() >= $timeout) { + if ($callback) { + $callback($value, $key); + } + break; } } @@ -1710,21 +1704,21 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable /** * Flatten a multi-dimensional associative array with dots. * + * @param int $depth * @return static */ - public function dot() + public function dot($depth = INF) { - return $this->passthru('dot', []); + return $this->passthru(__FUNCTION__, [$depth]); } /** - * Convert a flatten "dot" notation array into an expanded array. - * - * @return static + * {@inheritDoc} */ + #[\Override] public function undot() { - return $this->passthru('undot', []); + return $this->passthru(__FUNCTION__, []); } /** @@ -1830,18 +1824,13 @@ class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable } /** - * Pad collection to the specified length with a value. - * - * @template TPadValue - * - * @param int $size - * @param TPadValue $value - * @return static + * {@inheritDoc} */ + #[\Override] public function pad($size, $value) { if ($size < 0) { - return $this->passthru('pad', func_get_args()); + return $this->passthru(__FUNCTION__, func_get_args()); } return new static(function () use ($size, $value) { diff --git a/plugins/vendor/illuminate/collections/Traits/EnumeratesValues.php b/plugins/vendor/illuminate/collections/Traits/EnumeratesValues.php index 9b6c4cf6..a475ee10 100644 --- a/plugins/vendor/illuminate/collections/Traits/EnumeratesValues.php +++ b/plugins/vendor/illuminate/collections/Traits/EnumeratesValues.php @@ -33,6 +33,8 @@ use function Illuminate\Support\enum_value; * @property-read HigherOrderCollectionProxy $first * @property-read HigherOrderCollectionProxy $flatMap * @property-read HigherOrderCollectionProxy $groupBy + * @property-read HigherOrderCollectionProxy $hasMany + * @property-read HigherOrderCollectionProxy $hasSole * @property-read HigherOrderCollectionProxy $keyBy * @property-read HigherOrderCollectionProxy $last * @property-read HigherOrderCollectionProxy $map @@ -81,6 +83,8 @@ trait EnumeratesValues 'first', 'flatMap', 'groupBy', + 'hasMany', + 'hasSole', 'keyBy', 'last', 'map', @@ -329,6 +333,27 @@ trait EnumeratesValues return $this->first($this->operatorForWhere(...func_get_args())); } + /** + * Determine if the collection contains multiple items, optionally matching the given criteria. + * + * @param (callable(TValue, TKey): bool)|string|null $key + * @param mixed $operator + * @param mixed $value + * @return bool + */ + public function hasMany($key = null, $operator = null, $value = null): bool + { + $filter = func_num_args() > 1 + ? $this->operatorForWhere(...func_get_args()) + : $key; + + return $this + ->unless($filter == null) + ->filter($filter) + ->take(2) + ->count() === 2; + } + /** * Get a single key's value from the first matching item in the collection. * @@ -340,11 +365,11 @@ trait EnumeratesValues */ public function value($key, $default = null) { - if ($value = $this->firstWhere($key)) { - return data_get($value, $key, $default); - } + $value = $this->first(function ($target) use ($key) { + return data_has($target, $key); + }); - return value($default); + return data_get($value, $key, $default); } /** @@ -961,15 +986,12 @@ trait EnumeratesValues public function jsonSerialize(): array { return array_map(function ($value) { - if ($value instanceof JsonSerializable) { - return $value->jsonSerialize(); - } elseif ($value instanceof Jsonable) { - return json_decode($value->toJson(), true); - } elseif ($value instanceof Arrayable) { - return $value->toArray(); - } - - return $value; + return match (true) { + $value instanceof JsonSerializable => $value->jsonSerialize(), + $value instanceof Jsonable => json_decode($value->toJson(), true), + $value instanceof Arrayable => $value->toArray(), + default => $value, + }; }, $this->all()); } diff --git a/plugins/vendor/illuminate/collections/Traits/TransformsToResourceCollection.php b/plugins/vendor/illuminate/collections/Traits/TransformsToResourceCollection.php index 22143b35..86aaebd4 100644 --- a/plugins/vendor/illuminate/collections/Traits/TransformsToResourceCollection.php +++ b/plugins/vendor/illuminate/collections/Traits/TransformsToResourceCollection.php @@ -2,9 +2,12 @@ namespace Illuminate\Support\Traits; +use Illuminate\Database\Eloquent\Attributes\UseResource; +use Illuminate\Database\Eloquent\Attributes\UseResourceCollection; use Illuminate\Database\Eloquent\Model; use Illuminate\Http\Resources\Json\ResourceCollection; use LogicException; +use ReflectionClass; trait TransformsToResourceCollection { @@ -47,6 +50,18 @@ trait TransformsToResourceCollection throw_unless(method_exists($className, 'guessResourceName'), LogicException::class, sprintf('Expected class %s to implement guessResourceName method. Make sure the model uses the TransformsToResource trait.', $className)); + $useResourceCollection = $this->resolveResourceCollectionFromAttribute($className); + + if ($useResourceCollection !== null && class_exists($useResourceCollection)) { + return new $useResourceCollection($this); + } + + $useResource = $this->resolveResourceFromAttribute($className); + + if ($useResource !== null && class_exists($useResource)) { + return $useResource::collection($this); + } + $resourceClasses = $className::guessResourceName(); foreach ($resourceClasses as $resourceClass) { @@ -65,4 +80,42 @@ trait TransformsToResourceCollection throw new LogicException(sprintf('Failed to find resource class for model [%s].', $className)); } + + /** + * Get the resource class from the class attribute. + * + * @param class-string<\Illuminate\Http\Resources\Json\JsonResource> $class + * @return class-string<*>|null + */ + protected function resolveResourceFromAttribute(string $class): ?string + { + if (! class_exists($class)) { + return null; + } + + $attributes = (new ReflectionClass($class))->getAttributes(UseResource::class); + + return $attributes !== [] + ? $attributes[0]->newInstance()->class + : null; + } + + /** + * Get the resource collection class from the class attribute. + * + * @param class-string<\Illuminate\Http\Resources\Json\ResourceCollection> $class + * @return class-string<*>|null + */ + protected function resolveResourceCollectionFromAttribute(string $class): ?string + { + if (! class_exists($class)) { + return null; + } + + $attributes = (new ReflectionClass($class))->getAttributes(UseResourceCollection::class); + + return $attributes !== [] + ? $attributes[0]->newInstance()->class + : null; + } } diff --git a/plugins/vendor/illuminate/collections/composer.json b/plugins/vendor/illuminate/collections/composer.json index 107e36a5..2471710b 100644 --- a/plugins/vendor/illuminate/collections/composer.json +++ b/plugins/vendor/illuminate/collections/composer.json @@ -18,6 +18,7 @@ "illuminate/conditionable": "^12.0", "illuminate/contracts": "^12.0", "illuminate/macroable": "^12.0", + "symfony/polyfill-php83": "^1.33", "symfony/polyfill-php84": "^1.33", "symfony/polyfill-php85": "^1.33" }, diff --git a/plugins/vendor/illuminate/collections/helpers.php b/plugins/vendor/illuminate/collections/helpers.php index ed94004f..ea9b1ab1 100644 --- a/plugins/vendor/illuminate/collections/helpers.php +++ b/plugins/vendor/illuminate/collections/helpers.php @@ -34,6 +34,36 @@ if (! function_exists('data_fill')) { } } +if (! function_exists('data_has')) { + /** + * Determine if a key / property exists on an array or object using "dot" notation. + * + * @param mixed $target + * @param string|array|int|null $key + * @return bool + */ + function data_has($target, $key): bool + { + if (is_null($key) || $key === []) { + return false; + } + + $key = is_array($key) ? $key : explode('.', $key); + + foreach ($key as $segment) { + if (Arr::accessible($target) && Arr::exists($target, $segment)) { + $target = $target[$segment]; + } elseif (is_object($target) && property_exists($target, $segment)) { + $target = $target->{$segment}; + } else { + return false; + } + } + + return true; + } +} + if (! function_exists('data_get')) { /** * Get an item from an array or object using "dot" notation. @@ -241,10 +271,14 @@ if (! function_exists('when')) { /** * Return a value if the given condition is true. * + * @template TValue + * @template TArgs + * @template TDefault + * * @param mixed $condition - * @param \Closure|mixed $value - * @param \Closure|mixed $default - * @return mixed + * @param TValue|\Closure(TArgs): TValue $value + * @param TDefault|\Closure(): TDefault $default + * @return ($condition is true|positive-int|non-falsy-string|non-empty-array ? TValue : ($condition is callable ? TValue|TDefault : TDefault)) */ function when($condition, $value, $default = null) { diff --git a/plugins/vendor/illuminate/contracts/Auth/Access/Gate.php b/plugins/vendor/illuminate/contracts/Auth/Access/Gate.php index 29ab2377..dd43d69a 100644 --- a/plugins/vendor/illuminate/contracts/Auth/Access/Gate.php +++ b/plugins/vendor/illuminate/contracts/Auth/Access/Gate.php @@ -7,7 +7,7 @@ interface Gate /** * Determine if a given ability has been defined. * - * @param string $ability + * @param \UnitEnum|string $ability * @return bool */ public function has($ability); diff --git a/plugins/vendor/illuminate/contracts/Container/ContextualBindingBuilder.php b/plugins/vendor/illuminate/contracts/Container/ContextualBindingBuilder.php index 1d84ef8c..38399acc 100644 --- a/plugins/vendor/illuminate/contracts/Container/ContextualBindingBuilder.php +++ b/plugins/vendor/illuminate/contracts/Container/ContextualBindingBuilder.php @@ -16,7 +16,7 @@ interface ContextualBindingBuilder * Define the implementation for the contextual binding. * * @param \Closure|string|array $implementation - * @return void + * @return $this */ public function give($implementation); @@ -24,7 +24,7 @@ interface ContextualBindingBuilder * Define tagged services to be used as the implementation for the contextual binding. * * @param string $tag - * @return void + * @return $this */ public function giveTagged($tag); @@ -33,7 +33,7 @@ interface ContextualBindingBuilder * * @param string $key * @param mixed $default - * @return void + * @return $this */ public function giveConfig($key, $default = null); } diff --git a/plugins/vendor/illuminate/contracts/Cookie/Factory.php b/plugins/vendor/illuminate/contracts/Cookie/Factory.php index 6f950219..f03b376f 100644 --- a/plugins/vendor/illuminate/contracts/Cookie/Factory.php +++ b/plugins/vendor/illuminate/contracts/Cookie/Factory.php @@ -21,7 +21,7 @@ interface Factory public function make($name, $value, $minutes = 0, $path = null, $domain = null, $secure = null, $httpOnly = true, $raw = false, $sameSite = null); /** - * Create a cookie that lasts "forever" (five years). + * Create a cookie that lasts "forever" (400 days). * * @param string $name * @param string $value diff --git a/plugins/vendor/illuminate/contracts/Database/Eloquent/SupportsPartialRelations.php b/plugins/vendor/illuminate/contracts/Database/Eloquent/SupportsPartialRelations.php index c82125aa..19cb15a8 100644 --- a/plugins/vendor/illuminate/contracts/Database/Eloquent/SupportsPartialRelations.php +++ b/plugins/vendor/illuminate/contracts/Database/Eloquent/SupportsPartialRelations.php @@ -9,7 +9,7 @@ interface SupportsPartialRelations * * @param string|null $column * @param string|\Closure|null $aggregate - * @param string $relation + * @param string|null $relation * @return $this */ public function ofMany($column = 'id', $aggregate = 'MAX', $relation = null); diff --git a/plugins/vendor/illuminate/contracts/Database/ModelIdentifier.php b/plugins/vendor/illuminate/contracts/Database/ModelIdentifier.php index 95db3f4a..d78d8476 100644 --- a/plugins/vendor/illuminate/contracts/Database/ModelIdentifier.php +++ b/plugins/vendor/illuminate/contracts/Database/ModelIdentifier.php @@ -2,12 +2,19 @@ namespace Illuminate\Contracts\Database; +use Illuminate\Database\Eloquent\Relations\Relation; + class ModelIdentifier { + /** + * Use the Relation morphMap for a Model's name when serializing. + */ + protected static bool $useMorphMap = false; + /** * The class name of the model. * - * @var class-string<\Illuminate\Database\Eloquent\Model> + * @var class-string<\Illuminate\Database\Eloquent\Model>|string|null */ public $class; @@ -44,15 +51,19 @@ class ModelIdentifier /** * Create a new model identifier. * - * @param class-string<\Illuminate\Database\Eloquent\Model> $class + * @param class-string<\Illuminate\Database\Eloquent\Model>|null $class * @param mixed $id * @param array $relations * @param mixed $connection */ public function __construct($class, $id, array $relations, $connection) { - $this->id = $id; + if ($class !== null && self::$useMorphMap) { + $class = Relation::getMorphAlias($class); + } + $this->class = $class; + $this->id = $id; $this->relations = $relations; $this->connection = $connection; } @@ -69,4 +80,26 @@ class ModelIdentifier return $this; } + + /** + * Get the fully-qualified class name of the Model. + * + * @return class-string<\Illuminate\Database\Eloquent\Model>|null + */ + public function getClass(): ?string + { + if (self::$useMorphMap && $this->class !== null) { + return Relation::getMorphedModel($this->class) ?? $this->class; + } + + return $this->class; + } + + /** + * Indicate whether to use the relational morph-map when serializing Models. + */ + public static function useMorphMap(bool $useMorphMap = true): void + { + static::$useMorphMap = $useMorphMap; + } } diff --git a/plugins/vendor/illuminate/contracts/JsonSchema/JsonSchema.php b/plugins/vendor/illuminate/contracts/JsonSchema/JsonSchema.php new file mode 100644 index 00000000..3c327d01 --- /dev/null +++ b/plugins/vendor/illuminate/contracts/JsonSchema/JsonSchema.php @@ -0,0 +1,59 @@ +)|array $properties + * @return \Illuminate\JsonSchema\Types\ObjectType + */ + public function object(Closure|array $properties = []); + + /** + * Create a new array property instance. + * + * @return \Illuminate\JsonSchema\Types\ArrayType + */ + public function array(); + + /** + * Create a new string property instance. + * + * @return \Illuminate\JsonSchema\Types\StringType + */ + public function string(); + + /** + * Create a new integer property instance. + * + * @return \Illuminate\JsonSchema\Types\IntegerType + */ + public function integer(); + + /** + * Create a new number property instance. + * + * @return \Illuminate\JsonSchema\Types\NumberType + */ + public function number(); + + /** + * Create a new boolean property instance. + * + * @return \Illuminate\JsonSchema\Types\BooleanType + */ + public function boolean(); + + /** + * Create a new multi-type union instance. + * + * @param array $types + * @return \Illuminate\JsonSchema\Types\UnionType + */ + public function union(array $types); +} diff --git a/plugins/vendor/illuminate/contracts/Process/InvokedProcess.php b/plugins/vendor/illuminate/contracts/Process/InvokedProcess.php index fee2f662..99746d78 100644 --- a/plugins/vendor/illuminate/contracts/Process/InvokedProcess.php +++ b/plugins/vendor/illuminate/contracts/Process/InvokedProcess.php @@ -61,4 +61,12 @@ interface InvokedProcess * @return \Illuminate\Process\ProcessResult */ public function wait(?callable $output = null); + + /** + * Wait until the given callback returns true. + * + * @param callable|null $output + * @return \Illuminate\Process\ProcessResult + */ + public function waitUntil(?callable $output = null); } diff --git a/plugins/vendor/illuminate/macroable/Traits/Macroable.php b/plugins/vendor/illuminate/macroable/Traits/Macroable.php index 5490f1ea..2ee06e17 100644 --- a/plugins/vendor/illuminate/macroable/Traits/Macroable.php +++ b/plugins/vendor/illuminate/macroable/Traits/Macroable.php @@ -6,6 +6,8 @@ use BadMethodCallException; use Closure; use ReflectionClass; use ReflectionMethod; +use RuntimeException; +use Throwable; trait Macroable { @@ -120,7 +122,11 @@ trait Macroable $macro = static::$macros[$method]; if ($macro instanceof Closure) { - $macro = $macro->bindTo($this, static::class); + try { + $macro = $macro->bindTo($this, static::class) ?? throw new RuntimeException; + } catch (Throwable) { + $macro = $macro->bindTo(null, static::class); + } } return $macro(...$parameters); diff --git a/plugins/vendor/illuminate/pagination/AbstractCursorPaginator.php b/plugins/vendor/illuminate/pagination/AbstractCursorPaginator.php index fea9fdc2..84c8ec03 100644 --- a/plugins/vendor/illuminate/pagination/AbstractCursorPaginator.php +++ b/plugins/vendor/illuminate/pagination/AbstractCursorPaginator.php @@ -498,6 +498,7 @@ abstract class AbstractCursorPaginator implements Htmlable, Stringable * Resolve the current cursor or return the default value. * * @param string $cursorName + * @param \Illuminate\Pagination\Cursor|null $default * @return \Illuminate\Pagination\Cursor|null */ public static function resolveCurrentCursor($cursorName = 'cursor', $default = null) diff --git a/plugins/vendor/illuminate/pagination/resources/views/simple-tailwind.blade.php b/plugins/vendor/illuminate/pagination/resources/views/simple-tailwind.blade.php index 34ab49d1..79514721 100644 --- a/plugins/vendor/illuminate/pagination/resources/views/simple-tailwind.blade.php +++ b/plugins/vendor/illuminate/pagination/resources/views/simple-tailwind.blade.php @@ -1,25 +1,25 @@ @if ($paginator->hasPages()) -