diff --git a/.github/workflows/phpstan.yml b/.github/workflows/phpstan.yml index 6f5212700b..369129bc7c 100644 --- a/.github/workflows/phpstan.yml +++ b/.github/workflows/phpstan.yml @@ -10,17 +10,12 @@ jobs: strategy: fail-fast: false matrix: - php: [8.3, 8.2, 8.1] - laravel: [11.*, 10.*] + php: [8.3, 8.2] + laravel: [11.*] dependency-version: [prefer-stable] include: - laravel: 11.* testbench: 9.* - - laravel: 10.* - testbench: 8.* - exclude: - - laravel: 11.* - php: 8.1 name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} steps: - uses: actions/checkout@v3 diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index b5277c534f..31329f0fdd 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -10,17 +10,12 @@ jobs: strategy: fail-fast: false matrix: - php: [8.3, 8.2, 8.1] - laravel: [11.*, 10.*] + php: [8.3, 8.2] + laravel: [11.*] dependency-version: [prefer-stable] include: - laravel: 11.* testbench: 9.* - - laravel: 10.* - testbench: 8.* - exclude: - - laravel: 11.* - php: 8.1 name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} steps: - uses: actions/checkout@v3 diff --git a/composer.json b/composer.json index fc7496be57..ac7c517e58 100644 --- a/composer.json +++ b/composer.json @@ -3,7 +3,7 @@ "description": "A collection of full-stack components for accelerated Laravel development.", "license": "MIT", "require": { - "php": "^8.1", + "php": "^8.2", "ext-intl": "*", "composer-runtime-api": "^2.1" }, @@ -18,7 +18,7 @@ "league/flysystem-aws-s3-v3": "^3.0", "nunomaduro/termwind": "^1.0|^2.0", "openspout/openspout": "^4.23", - "orchestra/testbench": "^8.20|^9.0", + "orchestra/testbench": "^9.0", "pestphp/pest": "^2.0", "pestphp/pest-plugin-laravel": "^2.0", "phpstan/extension-installer": "^1.1", diff --git a/composer.lock b/composer.lock index fedc01fef7..ff2f90d3ae 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "4524d2b03d880f1be45f268502be2ff4", + "content-hash": "3b9d9e692fb6043683af9d9aa4a0eb92", "packages": [], "packages-dev": [ { @@ -129,16 +129,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.336.6", + "version": "3.336.12", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "0a99dab427f0a1c082775301141aeac3558691ad" + "reference": "a173ab3af8d9186d266e4937d8254597f36a9e15" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/0a99dab427f0a1c082775301141aeac3558691ad", - "reference": "0a99dab427f0a1c082775301141aeac3558691ad", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/a173ab3af8d9186d266e4937d8254597f36a9e15", + "reference": "a173ab3af8d9186d266e4937d8254597f36a9e15", "shasum": "" }, "require": { @@ -221,9 +221,9 @@ "support": { "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", "issues": "https://github.com/aws/aws-sdk-php/issues", - "source": "https://github.com/aws/aws-sdk-php/tree/3.336.6" + "source": "https://github.com/aws/aws-sdk-php/tree/3.336.12" }, - "time": "2024-12-28T04:16:13+00:00" + "time": "2025-01-09T19:04:34+00:00" }, { "name": "blade-ui-kit/blade-heroicons", @@ -1441,20 +1441,20 @@ "dist": { "type": "path", "url": "packages/support", - "reference": "fbaa0b26a50f34323684c023379eba6073fd25cc" + "reference": "65887adb4fe4cb15765913cc6aa3c6c775179778" }, "require": { "blade-ui-kit/blade-heroicons": "^2.5", "danharrin/livewire-rate-limiting": "^0.3|^1.0|^2.0", "ext-intl": "*", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", - "illuminate/view": "^10.45|^11.0", + "illuminate/contracts": "^11.15", + "illuminate/support": "^11.15", + "illuminate/view": "^11.15", "kirschbaum-development/eloquent-power-joins": "^3.0|^4.0", "league/uri-components": "^7.0", "livewire/livewire": "^3.5", "nette/php-generator": "^4.0", - "php": "^8.1", + "php": "^8.2", "ryangjchandler/blade-capture-directive": "^0.2|^0.3|^1.0", "spatie/color": "^1.5", "spatie/invade": "^1.0|^2.0", @@ -2383,16 +2383,16 @@ }, { "name": "laravel/framework", - "version": "v11.36.1", + "version": "v11.37.0", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "df06f5163f4550641fdf349ebc04916a61135a64" + "reference": "6cb103d2024b087eae207654b3f4b26646119ba5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/df06f5163f4550641fdf349ebc04916a61135a64", - "reference": "df06f5163f4550641fdf349ebc04916a61135a64", + "url": "https://api.github.com/repos/laravel/framework/zipball/6cb103d2024b087eae207654b3f4b26646119ba5", + "reference": "6cb103d2024b087eae207654b3f4b26646119ba5", "shasum": "" }, "require": { @@ -2442,7 +2442,6 @@ "voku/portable-ascii": "^2.0.2" }, "conflict": { - "mockery/mockery": "1.6.8", "tightenco/collect": "<5.5.33" }, "provide": { @@ -2594,7 +2593,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2024-12-17T22:32:08+00:00" + "time": "2025-01-02T20:10:21+00:00" }, { "name": "laravel/pail", @@ -3117,16 +3116,16 @@ }, { "name": "league/csv", - "version": "9.20.1", + "version": "9.21.0", "source": { "type": "git", "url": "https://github.com/thephpleague/csv.git", - "reference": "491d1e79e973a7370c7571dc0fe4a7241f4936ee" + "reference": "72196d11ebba22d868954cb39c0c7346207430cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/csv/zipball/491d1e79e973a7370c7571dc0fe4a7241f4936ee", - "reference": "491d1e79e973a7370c7571dc0fe4a7241f4936ee", + "url": "https://api.github.com/repos/thephpleague/csv/zipball/72196d11ebba22d868954cb39c0c7346207430cc", + "reference": "72196d11ebba22d868954cb39c0c7346207430cc", "shasum": "" }, "require": { @@ -3200,7 +3199,7 @@ "type": "github" } ], - "time": "2024-12-18T10:11:15+00:00" + "time": "2025-01-08T19:27:58+00:00" }, { "name": "league/flysystem", @@ -4238,12 +4237,12 @@ "version": "3.8.4", "source": { "type": "git", - "url": "https://github.com/briannesbitt/Carbon.git", + "url": "https://github.com/CarbonPHP/carbon.git", "reference": "129700ed449b1f02d70272d2ac802357c8c30c58" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/129700ed449b1f02d70272d2ac802357c8c30c58", + "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/129700ed449b1f02d70272d2ac802357c8c30c58", "reference": "129700ed449b1f02d70272d2ac802357c8c30c58", "shasum": "" }, @@ -4800,16 +4799,16 @@ }, { "name": "openspout/openspout", - "version": "v4.28.3", + "version": "v4.28.4", "source": { "type": "git", "url": "https://github.com/openspout/openspout.git", - "reference": "12b5eddcc230a97a9a67a722ad75c247e1a16750" + "reference": "68d58235c7c1164b3d231b798975b9b0b2b79b15" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/openspout/openspout/zipball/12b5eddcc230a97a9a67a722ad75c247e1a16750", - "reference": "12b5eddcc230a97a9a67a722ad75c247e1a16750", + "url": "https://api.github.com/repos/openspout/openspout/zipball/68d58235c7c1164b3d231b798975b9b0b2b79b15", + "reference": "68d58235c7c1164b3d231b798975b9b0b2b79b15", "shasum": "" }, "require": { @@ -4823,13 +4822,13 @@ }, "require-dev": { "ext-zlib": "*", - "friendsofphp/php-cs-fixer": "^3.65.0", - "infection/infection": "^0.29.8", + "friendsofphp/php-cs-fixer": "^3.66.1", + "infection/infection": "^0.29.10", "phpbench/phpbench": "^1.3.1", - "phpstan/phpstan": "^2.0.3", - "phpstan/phpstan-phpunit": "^2.0.1", + "phpstan/phpstan": "^2.1.1", + "phpstan/phpstan-phpunit": "^2.0.3", "phpstan/phpstan-strict-rules": "^2", - "phpunit/phpunit": "^11.5.0" + "phpunit/phpunit": "^11.5.2" }, "suggest": { "ext-iconv": "To handle non UTF-8 CSV files (if \"php-mbstring\" is not already installed or is too limited)", @@ -4877,7 +4876,7 @@ ], "support": { "issues": "https://github.com/openspout/openspout/issues", - "source": "https://github.com/openspout/openspout/tree/v4.28.3" + "source": "https://github.com/openspout/openspout/tree/v4.28.4" }, "funding": [ { @@ -4889,7 +4888,7 @@ "type": "github" } ], - "time": "2024-12-17T11:28:11+00:00" + "time": "2025-01-07T11:48:34+00:00" }, { "name": "orchestra/canvas", @@ -5088,16 +5087,16 @@ }, { "name": "orchestra/testbench-core", - "version": "v9.9.0", + "version": "v9.9.1", "source": { "type": "git", "url": "https://github.com/orchestral/testbench-core.git", - "reference": "b605631fa3c779e51bc45d78013a979ddeb0d9fe" + "reference": "ad211dc59c830a987eb34c18742f9c7875178eae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/orchestral/testbench-core/zipball/b605631fa3c779e51bc45d78013a979ddeb0d9fe", - "reference": "b605631fa3c779e51bc45d78013a979ddeb0d9fe", + "url": "https://api.github.com/repos/orchestral/testbench-core/zipball/ad211dc59c830a987eb34c18742f9c7875178eae", + "reference": "ad211dc59c830a987eb34c18742f9c7875178eae", "shasum": "" }, "require": { @@ -5177,7 +5176,7 @@ "issues": "https://github.com/orchestral/testbench/issues", "source": "https://github.com/orchestral/testbench-core" }, - "time": "2024-12-24T01:10:06+00:00" + "time": "2025-01-07T02:00:47+00:00" }, { "name": "orchestra/workbench", @@ -9338,16 +9337,16 @@ }, { "name": "spatie/laravel-tags", - "version": "4.8.0", + "version": "4.9.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-tags.git", - "reference": "cea42068fed5d9f4a4df441a1ff8b389d8015d12" + "reference": "7e4def3aedf1de40526e19814abf0f0d72018c5a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-tags/zipball/cea42068fed5d9f4a4df441a1ff8b389d8015d12", - "reference": "cea42068fed5d9f4a4df441a1ff8b389d8015d12", + "url": "https://api.github.com/repos/spatie/laravel-tags/zipball/7e4def3aedf1de40526e19814abf0f0d72018c5a", + "reference": "7e4def3aedf1de40526e19814abf0f0d72018c5a", "shasum": "" }, "require": { @@ -9396,7 +9395,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-tags/issues", - "source": "https://github.com/spatie/laravel-tags/tree/4.8.0" + "source": "https://github.com/spatie/laravel-tags/tree/4.9.0" }, "funding": [ { @@ -9404,7 +9403,7 @@ "type": "github" } ], - "time": "2024-12-30T10:04:08+00:00" + "time": "2025-01-06T09:32:31+00:00" }, { "name": "spatie/laravel-translatable", @@ -10390,16 +10389,16 @@ }, { "name": "symfony/finder", - "version": "v7.2.0", + "version": "v7.2.2", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "6de263e5868b9a137602dd1e33e4d48bfae99c49" + "reference": "87a71856f2f56e4100373e92529eed3171695cfb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/6de263e5868b9a137602dd1e33e4d48bfae99c49", - "reference": "6de263e5868b9a137602dd1e33e4d48bfae99c49", + "url": "https://api.github.com/repos/symfony/finder/zipball/87a71856f2f56e4100373e92529eed3171695cfb", + "reference": "87a71856f2f56e4100373e92529eed3171695cfb", "shasum": "" }, "require": { @@ -10434,7 +10433,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v7.2.0" + "source": "https://github.com/symfony/finder/tree/v7.2.2" }, "funding": [ { @@ -10450,20 +10449,20 @@ "type": "tidelift" } ], - "time": "2024-10-23T06:56:12+00:00" + "time": "2024-12-30T19:00:17+00:00" }, { "name": "symfony/html-sanitizer", - "version": "v7.2.0", + "version": "v7.2.2", "source": { "type": "git", "url": "https://github.com/symfony/html-sanitizer.git", - "reference": "1d23de45af5e8508441ff5f82bb493e83cdcbba4" + "reference": "f6bc679b024e30f27e33815930a5b8b304c79813" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/html-sanitizer/zipball/1d23de45af5e8508441ff5f82bb493e83cdcbba4", - "reference": "1d23de45af5e8508441ff5f82bb493e83cdcbba4", + "url": "https://api.github.com/repos/symfony/html-sanitizer/zipball/f6bc679b024e30f27e33815930a5b8b304c79813", + "reference": "f6bc679b024e30f27e33815930a5b8b304c79813", "shasum": "" }, "require": { @@ -10503,7 +10502,7 @@ "sanitizer" ], "support": { - "source": "https://github.com/symfony/html-sanitizer/tree/v7.2.0" + "source": "https://github.com/symfony/html-sanitizer/tree/v7.2.2" }, "funding": [ { @@ -10519,20 +10518,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:21:43+00:00" + "time": "2024-12-30T18:35:15+00:00" }, { "name": "symfony/http-foundation", - "version": "v7.2.0", + "version": "v7.2.2", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "e88a66c3997859532bc2ddd6dd8f35aba2711744" + "reference": "62d1a43796ca3fea3f83a8470dfe63a4af3bc588" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e88a66c3997859532bc2ddd6dd8f35aba2711744", - "reference": "e88a66c3997859532bc2ddd6dd8f35aba2711744", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/62d1a43796ca3fea3f83a8470dfe63a4af3bc588", + "reference": "62d1a43796ca3fea3f83a8470dfe63a4af3bc588", "shasum": "" }, "require": { @@ -10581,7 +10580,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.2.0" + "source": "https://github.com/symfony/http-foundation/tree/v7.2.2" }, "funding": [ { @@ -10597,20 +10596,20 @@ "type": "tidelift" } ], - "time": "2024-11-13T18:58:46+00:00" + "time": "2024-12-30T19:00:17+00:00" }, { "name": "symfony/http-kernel", - "version": "v7.2.1", + "version": "v7.2.2", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "d8ae58eecae44c8e66833e76cc50a4ad3c002d97" + "reference": "3c432966bd8c7ec7429663105f5a02d7e75b4306" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d8ae58eecae44c8e66833e76cc50a4ad3c002d97", - "reference": "d8ae58eecae44c8e66833e76cc50a4ad3c002d97", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/3c432966bd8c7ec7429663105f5a02d7e75b4306", + "reference": "3c432966bd8c7ec7429663105f5a02d7e75b4306", "shasum": "" }, "require": { @@ -10695,7 +10694,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v7.2.1" + "source": "https://github.com/symfony/http-kernel/tree/v7.2.2" }, "funding": [ { @@ -10711,7 +10710,7 @@ "type": "tidelift" } ], - "time": "2024-12-11T12:09:10+00:00" + "time": "2024-12-31T14:59:40+00:00" }, { "name": "symfony/mailer", @@ -11896,16 +11895,16 @@ }, { "name": "symfony/stopwatch", - "version": "v7.2.0", + "version": "v7.2.2", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "696f418b0d722a4225e1c3d95489d262971ca924" + "reference": "e46690d5b9d7164a6d061cab1e8d46141b9f49df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/696f418b0d722a4225e1c3d95489d262971ca924", - "reference": "696f418b0d722a4225e1c3d95489d262971ca924", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/e46690d5b9d7164a6d061cab1e8d46141b9f49df", + "reference": "e46690d5b9d7164a6d061cab1e8d46141b9f49df", "shasum": "" }, "require": { @@ -11938,7 +11937,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v7.2.0" + "source": "https://github.com/symfony/stopwatch/tree/v7.2.2" }, "funding": [ { @@ -11954,7 +11953,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:21:43+00:00" + "time": "2024-12-18T14:28:33+00:00" }, { "name": "symfony/string", @@ -12045,16 +12044,16 @@ }, { "name": "symfony/translation", - "version": "v7.2.0", + "version": "v7.2.2", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "dc89e16b44048ceecc879054e5b7f38326ab6cc5" + "reference": "e2674a30132b7cc4d74540d6c2573aa363f05923" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/dc89e16b44048ceecc879054e5b7f38326ab6cc5", - "reference": "dc89e16b44048ceecc879054e5b7f38326ab6cc5", + "url": "https://api.github.com/repos/symfony/translation/zipball/e2674a30132b7cc4d74540d6c2573aa363f05923", + "reference": "e2674a30132b7cc4d74540d6c2573aa363f05923", "shasum": "" }, "require": { @@ -12120,7 +12119,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v7.2.0" + "source": "https://github.com/symfony/translation/tree/v7.2.2" }, "funding": [ { @@ -12136,7 +12135,7 @@ "type": "tidelift" } ], - "time": "2024-11-12T20:47:56+00:00" + "time": "2024-12-07T08:18:10+00:00" }, { "name": "symfony/translation-contracts", diff --git a/docs/09-upgrade-guide.md b/docs/09-upgrade-guide.md index 0efc554319..44977cef74 100644 --- a/docs/09-upgrade-guide.md +++ b/docs/09-upgrade-guide.md @@ -10,6 +10,8 @@ import Disclosure from "@components/Disclosure.astro" ## New requirements +- PHP 8.2+ +- Laravel v11.15+ - Tailwind CSS v4.0+, if you are currently using Tailwind CSS v3.0 with Filament. This does not apply if you are just using a Filament panel without a custom theme CSS file. - Filament no longer requires `doctrine/dbal`, but if your application still does, and you do not have it installed directly, you should add it to your `composer.json` file. diff --git a/package-lock.json b/package-lock.json index 68211a13fa..9ab657d10a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2228,21 +2228,21 @@ } }, "node_modules/@tailwindcss/forms": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.9.tgz", - "integrity": "sha512-tM4XVr2+UVTxXJzey9Twx48c1gcxFStqn1pQz0tRsX8o3DvxhN5oY5pvyAbUx7VTaZxpej4Zzvc6h+1RJBzpIg==", + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.10.tgz", + "integrity": "sha512-utI1ONF6uf/pPNO68kmN1b8rEwNXv3czukalo8VtJH8ksIkZXr3Q3VYudZLkCsDd4Wku120uF02hYK25XGPorw==", "dev": true, "dependencies": { "mini-svg-data-uri": "^1.2.3" }, "peerDependencies": { - "tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1 || >= 4.0.0-alpha.20" + "tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1 || >= 4.0.0-alpha.20 || >= 4.0.0-beta.1" } }, "node_modules/@tailwindcss/typography": { - "version": "0.5.15", - "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.15.tgz", - "integrity": "sha512-AqhlCXl+8grUz8uqExv5OTtgpjuVIwFTSXTrh8y9/pw6q2ek7fJ+Y8ZEVw7EB2DCcuCOtEjf9w3+J3rzts01uA==", + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.16.tgz", + "integrity": "sha512-0wDLwCVF5V3x3b1SGXPCDcdsbDHMBe+lkFzBRaHeLvNi+nrrnZ1lA18u+OTWO8iSWU2GxUOCvlXtDuqftc1oiA==", "dev": true, "dependencies": { "lodash.castarray": "^4.4.0", @@ -2251,7 +2251,7 @@ "postcss-selector-parser": "6.0.10" }, "peerDependencies": { - "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20" + "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1" } }, "node_modules/@trysound/sax": { @@ -2518,9 +2518,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "22.10.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz", - "integrity": "sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==", + "version": "22.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.5.tgz", + "integrity": "sha512-F8Q+SeGimwOo86fiovQh8qiXfFEh2/ocYv7tU5pJ3EXMSSxk1Joj5wefpFK2fHTf/N6HKGSxIDBT9f3gCxXPkQ==", "dev": true, "dependencies": { "undici-types": "~6.20.0" @@ -3470,9 +3470,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.3.tgz", - "integrity": "sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==", + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", "dev": true, "funding": [ { @@ -3627,9 +3627,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001690", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001690.tgz", - "integrity": "sha512-5ExiE3qQN6oF8Clf8ifIDcMRCRE/dMGcETG/XGMD8/XiXm6HXQgQTh1yZYLXXpSOsEUlJm1Xr7kGULZTuGtP/w==", + "version": "1.0.30001692", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001692.tgz", + "integrity": "sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==", "dev": true, "funding": [ { @@ -4011,12 +4011,12 @@ "dev": true }, "node_modules/core-js-compat": { - "version": "3.39.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.39.0.tgz", - "integrity": "sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw==", + "version": "3.40.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.40.0.tgz", + "integrity": "sha512-0XEDpr5y5mijvw8Lbc6E5AkjrHfp7eEoPlu36SWeAbcL8fn1G1ANe8DBlo2XoNN89oVpxWwOjYIPVzR4ZvsKCQ==", "dev": true, "dependencies": { - "browserslist": "^4.24.2" + "browserslist": "^4.24.3" }, "funding": { "type": "opencollective", @@ -4754,9 +4754,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.5.76", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.76.tgz", - "integrity": "sha512-CjVQyG7n7Sr+eBXE86HIulnL5N8xZY1sgmOPGuq/F0Rr0FJq63lg0kEtOIDfZBk44FnDLf6FUJ+dsJcuiUDdDQ==", + "version": "1.5.80", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.80.tgz", + "integrity": "sha512-LTrKpW0AqIuHwmlVNV+cjFYTnXtM9K37OGhpe0ZI10ScPSxqVSryZHIY3WnCS5NSYbBODRTZyhRMS2h5FAEqAw==", "dev": true }, "node_modules/elliptic": { @@ -4848,9 +4848,9 @@ } }, "node_modules/es-abstract": { - "version": "1.23.8", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.8.tgz", - "integrity": "sha512-lfab8IzDn6EpI1ibZakcgS6WsfEBiB+43cuJo+wgylx1xKXf+Sp+YR3vFuQwC/u3sxYwV8Cxe3B0DpVUu/WiJQ==", + "version": "1.23.9", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.9.tgz", + "integrity": "sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==", "dev": true, "dependencies": { "array-buffer-byte-length": "^1.0.2", @@ -4864,10 +4864,11 @@ "es-define-property": "^1.0.1", "es-errors": "^1.3.0", "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", + "es-set-tostringtag": "^2.1.0", "es-to-primitive": "^1.3.0", "function.prototype.name": "^1.1.8", - "get-intrinsic": "^1.2.6", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.0", "get-symbol-description": "^1.1.0", "globalthis": "^1.0.4", "gopd": "^1.2.0", @@ -4888,11 +4889,12 @@ "object-inspect": "^1.13.3", "object-keys": "^1.1.1", "object.assign": "^4.1.7", - "own-keys": "^1.0.0", + "own-keys": "^1.0.1", "regexp.prototype.flags": "^1.5.3", "safe-array-concat": "^1.1.3", "safe-push-apply": "^1.0.0", "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", "string.prototype.trim": "^1.2.10", "string.prototype.trimend": "^1.0.9", "string.prototype.trimstart": "^1.0.8", @@ -4947,14 +4949,15 @@ } }, "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.4", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" + "hasown": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -5302,16 +5305,16 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -5324,10 +5327,20 @@ "dev": true }, "node_modules/fast-uri": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", - "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", - "dev": true + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.5.tgz", + "integrity": "sha512-5JnBCWpFlMo0a3ciDy/JckMzzv1U9coZrIhedq+HXxxUfDTAiS0LA8OKVao4G9BxmCVck/jtA5r3KAtRWEyD8Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ] }, "node_modules/fastest-levenshtein": { "version": "1.0.16", @@ -5830,21 +5843,21 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.6.tgz", - "integrity": "sha512-qxsEs+9A+u85HhllWJJFicJfPDhRmjzoYdl64aMWW9yRIJmSyxdn8IEkuIM530/7T+lv0TIHd8L6Q/ra0tEoeA==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", + "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", "dev": true, "dependencies": { "call-bind-apply-helpers": "^1.0.1", - "dunder-proto": "^1.0.0", "es-define-property": "^1.0.1", "es-errors": "^1.3.0", "es-object-atoms": "^1.0.0", "function-bind": "^1.1.2", + "get-proto": "^1.0.0", "gopd": "^1.2.0", "has-symbols": "^1.1.0", "hasown": "^2.0.2", - "math-intrinsics": "^1.0.0" + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -5853,6 +5866,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -6305,9 +6331,9 @@ } }, "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.9.tgz", + "integrity": "sha512-n1XsPy3rXVxlqxVioEWdC+0+M+SQw0DpJynwtOPo1X+ZlvdzTLtDBIJJlDQTnwZIFJrZSzSGmIOUdP8tu+SgLw==", "dev": true }, "node_modules/http-proxy": { @@ -6583,12 +6609,15 @@ "dev": true }, "node_modules/is-async-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", - "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.0.tgz", + "integrity": "sha512-GExz9MtyhlZyXYLxzlJRj5WUCE661zhDa1Yna52CN57AJsymh+DvXXjyveSioqSRdxvUrdKdvqB1b5cVKsNpWQ==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -6755,12 +6784,15 @@ } }, "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -9624,18 +9656,18 @@ } }, "node_modules/reflect.getprototypeof": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.9.tgz", - "integrity": "sha512-r0Ay04Snci87djAsI4U+WNRcSw5S4pOH7qFjd/veA5gC7TbqESR3tcj28ia95L/fYUDw11JKP7uqUKUAfVvV5Q==", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", "dev": true, "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", - "dunder-proto": "^1.0.1", - "es-abstract": "^1.23.6", + "es-abstract": "^1.23.9", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "gopd": "^1.2.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", "which-builtin-type": "^1.2.1" }, "engines": { @@ -9679,14 +9711,16 @@ } }, "node_modules/regexp.prototype.flags": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", - "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", "set-function-name": "^2.0.2" }, "engines": { @@ -10236,6 +10270,20 @@ "node": ">= 0.4" } }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", @@ -11425,9 +11473,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", - "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", + "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", "dev": true, "funding": [ { @@ -11445,7 +11493,7 @@ ], "dependencies": { "escalade": "^3.2.0", - "picocolors": "^1.1.0" + "picocolors": "^1.1.1" }, "bin": { "update-browserslist-db": "cli.js" diff --git a/packages/actions/composer.json b/packages/actions/composer.json index ccfcb4584a..831b831177 100644 --- a/packages/actions/composer.json +++ b/packages/actions/composer.json @@ -8,15 +8,15 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "anourvalar/eloquent-serialize": "^1.2", "filament/forms": "self.version", "filament/infolists": "self.version", "filament/notifications": "self.version", "filament/support": "self.version", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/database": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", + "illuminate/contracts": "^11.15", + "illuminate/database": "^11.15", + "illuminate/support": "^11.15", "league/csv": "^9.16", "openspout/openspout": "^4.23", "spatie/laravel-package-tools": "^1.9" diff --git a/packages/actions/src/CreateAction.php b/packages/actions/src/CreateAction.php index 129736d5f2..f01ec0f2a3 100644 --- a/packages/actions/src/CreateAction.php +++ b/packages/actions/src/CreateAction.php @@ -11,7 +11,7 @@ use Filament\Support\Facades\FilamentIcon; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; -use Illuminate\Database\Eloquent\Relations\HasManyThrough; +use Illuminate\Database\Eloquent\Relations\HasOneOrManyThrough; use Illuminate\Database\Eloquent\Relations\Relation; use Illuminate\Support\Arr; @@ -83,7 +83,7 @@ class CreateAction extends Action if ( (! $relationship) || - $relationship instanceof HasManyThrough + ($relationship instanceof HasOneOrManyThrough) ) { $record->save(); diff --git a/packages/forms/composer.json b/packages/forms/composer.json index ca05cc61d2..cba448585a 100644 --- a/packages/forms/composer.json +++ b/packages/forms/composer.json @@ -8,17 +8,17 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "danharrin/date-format-converter": "^0.3", "filament/actions": "self.version", "filament/support": "self.version", - "illuminate/console": "^10.45|^11.0", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/database": "^10.45|^11.0", - "illuminate/filesystem": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", - "illuminate/validation": "^10.45|^11.0", - "illuminate/view": "^10.45|^11.0", + "illuminate/console": "^11.15", + "illuminate/contracts": "^11.15", + "illuminate/database": "^11.15", + "illuminate/filesystem": "^11.15", + "illuminate/support": "^11.15", + "illuminate/validation": "^11.15", + "illuminate/view": "^11.15", "spatie/laravel-package-tools": "^1.9" }, "autoload": { diff --git a/packages/forms/src/Components/Select.php b/packages/forms/src/Components/Select.php index 7d936ac980..e8ec0878eb 100644 --- a/packages/forms/src/Components/Select.php +++ b/packages/forms/src/Components/Select.php @@ -24,7 +24,6 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Database\Eloquent\Relations\HasMany; -use Illuminate\Database\Eloquent\Relations\HasManyThrough; use Illuminate\Database\Eloquent\Relations\HasOne; use Illuminate\Database\Eloquent\Relations\HasOneOrMany; use Illuminate\Database\Eloquent\Relations\HasOneOrManyThrough; @@ -853,7 +852,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has if ( ($relationship instanceof BelongsToMany) || - ($relationship instanceof (class_exists(HasOneOrManyThrough::class) ? HasOneOrManyThrough::class : HasManyThrough::class)) + ($relationship instanceof HasOneOrManyThrough) ) { if ($modifyQueryUsing) { $component->evaluate($modifyQueryUsing, [ @@ -1003,7 +1002,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has if ( ($relationship instanceof HasOneOrMany) || - ($relationship instanceof (class_exists(HasOneOrManyThrough::class) ? HasOneOrManyThrough::class : HasManyThrough::class)) || + ($relationship instanceof HasOneOrManyThrough) || ($relationship instanceof BelongsToThrough) ) { return; @@ -1158,7 +1157,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has return parent::getLabel(); } - public function getRelationship(): BelongsTo | BelongsToMany | HasOneOrMany | HasManyThrough | HasOneOrManyThrough | BelongsToThrough | null + public function getRelationship(): BelongsTo | BelongsToMany | HasOneOrMany | HasOneOrManyThrough | BelongsToThrough | null { if (blank($this->getRelationshipName())) { return null; @@ -1286,7 +1285,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has return $relationship->getQualifiedRelatedKeyName(); } - if ($relationship instanceof (class_exists(HasOneOrManyThrough::class) ? HasOneOrManyThrough::class : HasManyThrough::class)) { + if ($relationship instanceof HasOneOrManyThrough) { return $relationship->getQualifiedForeignKeyName(); } diff --git a/packages/infolists/composer.json b/packages/infolists/composer.json index 1e98c07e8f..d609465968 100644 --- a/packages/infolists/composer.json +++ b/packages/infolists/composer.json @@ -8,16 +8,16 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "filament/actions": "self.version", "filament/schemas": "*", "filament/support": "self.version", - "illuminate/console": "^10.45|^11.0", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/database": "^10.45|^11.0", - "illuminate/filesystem": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", - "illuminate/view": "^10.45|^11.0", + "illuminate/console": "^11.15", + "illuminate/contracts": "^11.15", + "illuminate/database": "^11.15", + "illuminate/filesystem": "^11.15", + "illuminate/support": "^11.15", + "illuminate/view": "^11.15", "spatie/laravel-package-tools": "^1.9" }, "autoload": { diff --git a/packages/notifications/composer.json b/packages/notifications/composer.json index 030b2b72b3..5c8ea30fec 100644 --- a/packages/notifications/composer.json +++ b/packages/notifications/composer.json @@ -8,13 +8,13 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "filament/actions": "self.version", "filament/support": "self.version", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/filesystem": "^10.45|^11.0", - "illuminate/notifications": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", + "illuminate/contracts": "^11.15", + "illuminate/filesystem": "^11.15", + "illuminate/notifications": "^11.15", + "illuminate/support": "^11.15", "spatie/laravel-package-tools": "^1.9" }, "autoload": { diff --git a/packages/panels/composer.json b/packages/panels/composer.json index e3adb0f872..985aeb6bf1 100644 --- a/packages/panels/composer.json +++ b/packages/panels/composer.json @@ -8,7 +8,7 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "chillerlan/php-qrcode": "^5.0", "filament/actions": "self.version", "filament/forms": "self.version", @@ -17,16 +17,16 @@ "filament/support": "self.version", "filament/tables": "self.version", "filament/widgets": "self.version", - "illuminate/auth": "^10.45|^11.0", - "illuminate/console": "^10.45|^11.0", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/cookie": "^10.45|^11.0", - "illuminate/database": "^10.45|^11.0", - "illuminate/http": "^10.45|^11.0", - "illuminate/routing": "^10.45|^11.0", - "illuminate/session": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", - "illuminate/view": "^10.45|^11.0", + "illuminate/auth": "^11.15", + "illuminate/console": "^11.15", + "illuminate/contracts": "^11.15", + "illuminate/cookie": "^11.15", + "illuminate/database": "^11.15", + "illuminate/http": "^11.15", + "illuminate/routing": "^11.15", + "illuminate/session": "^11.15", + "illuminate/support": "^11.15", + "illuminate/view": "^11.15", "pragmarx/google2fa": "^8.0", "pragmarx/google2fa-qrcode": "^3.0", "spatie/laravel-package-tools": "^1.9" diff --git a/packages/schemas/composer.json b/packages/schemas/composer.json index a795452068..d57467cb23 100644 --- a/packages/schemas/composer.json +++ b/packages/schemas/composer.json @@ -8,17 +8,17 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "danharrin/date-format-converter": "^0.3", "filament/actions": "self.version", "filament/support": "self.version", - "illuminate/console": "^10.45|^11.0", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/database": "^10.45|^11.0", - "illuminate/filesystem": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", - "illuminate/validation": "^10.45|^11.0", - "illuminate/view": "^10.45|^11.0", + "illuminate/console": "^11.15", + "illuminate/contracts": "^11.15", + "illuminate/database": "^11.15", + "illuminate/filesystem": "^11.15", + "illuminate/support": "^11.15", + "illuminate/validation": "^11.15", + "illuminate/view": "^11.15", "spatie/laravel-package-tools": "^1.9" }, "autoload": { diff --git a/packages/spark-billing-provider/composer.json b/packages/spark-billing-provider/composer.json index 86e5da7caa..cc0f22b1d2 100644 --- a/packages/spark-billing-provider/composer.json +++ b/packages/spark-billing-provider/composer.json @@ -8,7 +8,7 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "filament/filament": "self.version" }, "autoload": { diff --git a/packages/spatie-laravel-google-fonts-plugin/composer.json b/packages/spatie-laravel-google-fonts-plugin/composer.json index b1d4633bfc..3eb97e1068 100644 --- a/packages/spatie-laravel-google-fonts-plugin/composer.json +++ b/packages/spatie-laravel-google-fonts-plugin/composer.json @@ -8,9 +8,9 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", + "php": "^8.2", + "illuminate/contracts": "^11.15", + "illuminate/support": "^11.15", "spatie/laravel-google-fonts": "^1.0" }, "autoload": { diff --git a/packages/spatie-laravel-media-library-plugin/composer.json b/packages/spatie-laravel-media-library-plugin/composer.json index 037358bcef..cd6ad27ee0 100644 --- a/packages/spatie-laravel-media-library-plugin/composer.json +++ b/packages/spatie-laravel-media-library-plugin/composer.json @@ -8,8 +8,8 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", - "illuminate/support": "^10.45|^11.0", + "php": "^8.2", + "illuminate/support": "^11.15", "spatie/laravel-medialibrary": "^10.0|^11.0" }, "autoload": { diff --git a/packages/spatie-laravel-settings-plugin/composer.json b/packages/spatie-laravel-settings-plugin/composer.json index f422d5c66a..3318141943 100644 --- a/packages/spatie-laravel-settings-plugin/composer.json +++ b/packages/spatie-laravel-settings-plugin/composer.json @@ -8,11 +8,11 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "filament/filament": "self.version", - "illuminate/console": "^10.45|^11.0", - "illuminate/filesystem": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", + "illuminate/console": "^11.15", + "illuminate/filesystem": "^11.15", + "illuminate/support": "^11.15", "spatie/laravel-settings": "^2.2|^3.0" }, "autoload": { diff --git a/packages/spatie-laravel-tags-plugin/composer.json b/packages/spatie-laravel-tags-plugin/composer.json index 77512e0726..37b09f8fde 100644 --- a/packages/spatie-laravel-tags-plugin/composer.json +++ b/packages/spatie-laravel-tags-plugin/composer.json @@ -8,8 +8,8 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", - "illuminate/database": "^10.45|^11.0", + "php": "^8.2", + "illuminate/database": "^11.15", "spatie/laravel-tags": "^4.0" }, "autoload": { diff --git a/packages/spatie-laravel-translatable-plugin/composer.json b/packages/spatie-laravel-translatable-plugin/composer.json index 2c55947901..d0d645de70 100644 --- a/packages/spatie-laravel-translatable-plugin/composer.json +++ b/packages/spatie-laravel-translatable-plugin/composer.json @@ -8,9 +8,9 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "filament/support": "self.version", - "illuminate/support": "^10.45|^11.0", + "illuminate/support": "^11.15", "spatie/laravel-translatable": "^6.0" }, "autoload": { diff --git a/packages/support/composer.json b/packages/support/composer.json index 61961cf0ad..a89ca0eea7 100644 --- a/packages/support/composer.json +++ b/packages/support/composer.json @@ -8,13 +8,13 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "blade-ui-kit/blade-heroicons": "^2.5", "danharrin/livewire-rate-limiting": "^0.3|^1.0|^2.0", "ext-intl": "*", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", - "illuminate/view": "^10.45|^11.0", + "illuminate/contracts": "^11.15", + "illuminate/support": "^11.15", + "illuminate/view": "^11.15", "kirschbaum-development/eloquent-power-joins": "^3.0|^4.0", "league/uri-components": "^7.0", "livewire/livewire": "^3.5", diff --git a/packages/support/src/Commands/Concerns/CanGeneratePanels.php b/packages/support/src/Commands/Concerns/CanGeneratePanels.php index 46351c505e..a1548c0d63 100644 --- a/packages/support/src/Commands/Concerns/CanGeneratePanels.php +++ b/packages/support/src/Commands/Concerns/CanGeneratePanels.php @@ -55,15 +55,11 @@ trait CanGeneratePanels ])); } - $isLaravel11OrHigherWithBootstrapProvidersFile = version_compare(App::version(), '11.0', '>=') && - /** @phpstan-ignore-next-line */ - file_exists($bootstrapProvidersPath = App::getBootstrapProvidersPath()); + $hasBootstrapProvidersFile = file_exists($bootstrapProvidersPath = App::getBootstrapProvidersPath()); - if ($isLaravel11OrHigherWithBootstrapProvidersFile) { - /** @phpstan-ignore-next-line */ + if ($hasBootstrapProvidersFile) { ServiceProvider::addProviderToBootstrapFile( $fqn, - /** @phpstan-ignore-next-line */ $bootstrapProvidersPath, ); } else { @@ -80,7 +76,7 @@ trait CanGeneratePanels $this->components->info("Filament panel [{$path}] created successfully."); - if ($isLaravel11OrHigherWithBootstrapProvidersFile) { + if ($hasBootstrapProvidersFile) { $this->components->warn("We've attempted to register the {$basename} in your [bootstrap/providers.php] file. If you get an error while trying to access your panel then this process has probably failed. You can manually register the service provider by adding it to the array."); } else { $this->components->warn("We've attempted to register the {$basename} in your [config/app.php] file as a service provider. If you get an error while trying to access your panel then this process has probably failed. You can manually register the service provider by adding it to the [providers] array."); diff --git a/packages/support/src/helpers.php b/packages/support/src/helpers.php index 4bc3c45bef..d684e2bfe3 100644 --- a/packages/support/src/helpers.php +++ b/packages/support/src/helpers.php @@ -249,7 +249,6 @@ if (! function_exists('Filament\Support\generate_search_column_expression')) { if ($isSearchForcedCaseInsensitive) { if (in_array($driverName, ['mysql', 'mariadb'], true) && str($column)->contains('->') && ! str($column)->startsWith('json_extract(')) { [$field, $path] = invade($databaseConnection->getQueryGrammar())->wrapJsonFieldAndPath($column); /** @phpstan-ignore-line */ - $column = "json_extract({$field}{$path})"; } diff --git a/packages/tables/composer.json b/packages/tables/composer.json index 13c30cf85c..26fa930fa8 100644 --- a/packages/tables/composer.json +++ b/packages/tables/composer.json @@ -8,16 +8,16 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "filament/actions": "self.version", "filament/forms": "self.version", "filament/support": "self.version", - "illuminate/console": "^10.45|^11.0", - "illuminate/contracts": "^10.45|^11.0", - "illuminate/database": "^10.45|^11.0", - "illuminate/filesystem": "^10.45|^11.0", - "illuminate/support": "^10.45|^11.0", - "illuminate/view": "^10.45|^11.0", + "illuminate/console": "^11.15", + "illuminate/contracts": "^11.15", + "illuminate/database": "^11.15", + "illuminate/filesystem": "^11.15", + "illuminate/support": "^11.15", + "illuminate/view": "^11.15", "spatie/laravel-package-tools": "^1.9" }, "autoload": { diff --git a/packages/tables/src/Concerns/CanPaginateRecords.php b/packages/tables/src/Concerns/CanPaginateRecords.php index ed2bb32264..8cc0adbce6 100644 --- a/packages/tables/src/Concerns/CanPaginateRecords.php +++ b/packages/tables/src/Concerns/CanPaginateRecords.php @@ -7,7 +7,6 @@ use Illuminate\Contracts\Pagination\CursorPaginator; use Illuminate\Contracts\Pagination\Paginator; use Illuminate\Database\Eloquent\Builder; use Illuminate\Pagination\LengthAwarePaginator; -use Illuminate\Support\Facades\App; trait CanPaginateRecords { @@ -47,22 +46,14 @@ trait CanPaginateRecords ); } - if (version_compare(App::version(), '11.0', '>=')) { - $total = $query->toBase()->getCountForPagination(); + $total = $query->toBase()->getCountForPagination(); - /** @var LengthAwarePaginator $records */ - $records = $query->paginate( - perPage: ($perPage === 'all') ? $total : $perPage, - pageName: $this->getTablePaginationPageName(), - total: $total, - ); - } else { - /** @var LengthAwarePaginator $records */ - $records = $query->paginate( - perPage: ($perPage === 'all') ? $query->toBase()->getCountForPagination() : $perPage, - pageName: $this->getTablePaginationPageName(), - ); - } + /** @var LengthAwarePaginator $records */ + $records = $query->paginate( + perPage: ($perPage === 'all') ? $total : $perPage, + pageName: $this->getTablePaginationPageName(), + total: $total, + ); return $records->onEachSide(0); } diff --git a/packages/tables/src/Filters/Concerns/HasRelationship.php b/packages/tables/src/Filters/Concerns/HasRelationship.php index 0fa5476488..a2105cd51a 100644 --- a/packages/tables/src/Filters/Concerns/HasRelationship.php +++ b/packages/tables/src/Filters/Concerns/HasRelationship.php @@ -7,7 +7,6 @@ use Filament\Support\Services\RelationshipJoiner; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsToMany; -use Illuminate\Database\Eloquent\Relations\HasManyThrough; use Illuminate\Database\Eloquent\Relations\HasOneOrManyThrough; use Illuminate\Database\Eloquent\Relations\Relation; use Znck\Eloquent\Relations\BelongsToThrough; @@ -111,7 +110,7 @@ trait HasRelationship $relationship->getQualifiedRelatedKeyName(); } - if ($relationship instanceof (class_exists(HasOneOrManyThrough::class) ? HasOneOrManyThrough::class : HasManyThrough::class)) { + if ($relationship instanceof HasOneOrManyThrough) { return $query?->getModel()->qualifyColumn($relationship->getForeignKeyName()) ?? $relationship->getQualifiedForeignKeyName(); } diff --git a/packages/tables/src/Table/Concerns/HasQuery.php b/packages/tables/src/Table/Concerns/HasQuery.php index f859504029..e39f42c8e6 100644 --- a/packages/tables/src/Table/Concerns/HasQuery.php +++ b/packages/tables/src/Table/Concerns/HasQuery.php @@ -6,7 +6,6 @@ use Closure; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; -use Illuminate\Database\Eloquent\Relations\HasManyThrough; use Illuminate\Database\Eloquent\Relations\HasOneOrMany; use Illuminate\Database\Eloquent\Relations\HasOneOrManyThrough; use Illuminate\Database\Eloquent\Relations\Relation; @@ -86,7 +85,7 @@ trait HasQuery $query = $relationship->getQuery(); - if ($relationship instanceof (class_exists(HasOneOrManyThrough::class) ? HasOneOrManyThrough::class : HasManyThrough::class)) { + if ($relationship instanceof HasOneOrManyThrough) { // https://github.com/laravel/framework/issues/4962 $query->select($query->getModel()->getTable() . '.*'); diff --git a/packages/upgrade/composer.json b/packages/upgrade/composer.json index 1f89ee6bf7..7f29d77dd1 100644 --- a/packages/upgrade/composer.json +++ b/packages/upgrade/composer.json @@ -8,7 +8,7 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "nunomaduro/termwind": "^1.0|^2.0", "rector/rector": "^1.0" }, diff --git a/packages/widgets/composer.json b/packages/widgets/composer.json index 3c8e472ea5..975c6fb5fe 100644 --- a/packages/widgets/composer.json +++ b/packages/widgets/composer.json @@ -8,7 +8,7 @@ "source": "https://github.com/filamentphp/filament" }, "require": { - "php": "^8.1", + "php": "^8.2", "filament/schemas": "self.version", "filament/support": "self.version", "spatie/laravel-package-tools": "^1.9"