From d7a2ce91f198ad93fe19f2bc04e5e0fcde1bbeac Mon Sep 17 00:00:00 2001 From: David VanScott Date: Fri, 5 Jul 2024 21:02:47 -0400 Subject: [PATCH 01/15] wip --- composer.json | 13 +- composer.lock | 1270 ++++++----------- nova/config/form-components.php | 382 ----- nova/config/typist.php | 2 + nova/foundation/Controllers/Controller.php | 4 +- nova/foundation/Data/DiscordSettings.php | 3 +- nova/foundation/Environment/Php.php | 3 +- .../Providers/AppServiceProvider.php | 8 + nova/foundation/View/Components/Dropdown.php | 3 +- nova/resources/css/components/form.css | 2 - nova/routes/web.php | 3 - .../Data/AssignCharacterOwnersData.php | 3 +- .../Data/AssignCharacterPositionsData.php | 3 +- nova/src/Characters/Data/CharacterData.php | 3 +- .../Data/CharacterPositionsData.php | 3 +- .../Characters/Events/CharacterActivated.php | 3 +- .../Characters/Events/CharacterApproved.php | 3 +- .../Characters/Events/CharacterCreated.php | 3 +- .../Events/CharacterCreatedByAdmin.php | 3 +- .../Events/CharacterDeactivated.php | 3 +- .../Characters/Events/CharacterDeleted.php | 3 +- .../Events/CharacterDeletedByAdmin.php | 3 +- .../Events/CharacterForceDeleted.php | 3 +- .../Characters/Events/CharacterRestored.php | 3 +- .../Characters/Events/CharacterUpdated.php | 3 +- .../Events/CharacterUpdatedByAdmin.php | 3 +- .../Characters/Mail/SendCharacterApproval.php | 3 +- .../Characters/Mail/SendCharacterDenial.php | 3 +- .../Mail/SendRequestForCharacterApproval.php | 3 +- nova/src/Characters/Models/Character.php | 2 - .../Models/States/Status/ActiveToInactive.php | 3 +- .../Models/States/Status/InactiveToActive.php | 3 +- .../Models/States/Status/PendingToActive.php | 3 +- .../CharacterRequiresApproval.php | 3 +- .../PendingCharacterApproved.php | 3 +- .../Notifications/PendingCharacterDenied.php | 3 +- nova/src/Departments/Data/DepartmentData.php | 3 +- nova/src/Departments/Data/PositionData.php | 3 +- .../Departments/Events/DepartmentCreated.php | 3 +- .../Departments/Events/DepartmentDeleted.php | 3 +- .../Events/DepartmentDuplicated.php | 3 +- .../Departments/Events/DepartmentUpdated.php | 3 +- .../Departments/Events/PositionCreated.php | 3 +- .../Departments/Events/PositionDeleted.php | 3 +- .../Departments/Events/PositionDuplicated.php | 3 +- .../Departments/Events/PositionUpdated.php | 3 +- .../Requests/UpdateDepartmentRequest.php | 4 +- .../Requests/UpdatePositionRequest.php | 4 +- nova/src/DomainServiceProvider.php | 16 +- nova/src/Forms/Data/FormData.php | 3 +- nova/src/Forms/Data/FormFieldsData.php | 3 +- nova/src/Forms/Events/FormCreated.php | 3 +- nova/src/Forms/Events/FormDeleted.php | 3 +- nova/src/Forms/Events/FormDuplicated.php | 3 +- nova/src/Forms/Events/FormUpdated.php | 3 +- nova/src/Notes/Data/NoteData.php | 3 +- nova/src/Notes/Events/NoteCreated.php | 3 +- nova/src/Notes/Events/NoteDeleted.php | 3 +- nova/src/Notes/Events/NoteDuplicated.php | 3 +- nova/src/Notes/Events/NoteUpdated.php | 3 +- nova/src/Pages/Data/PageBlocksData.php | 3 +- nova/src/Pages/Data/PageData.php | 3 +- nova/src/Pages/Events/PageCreated.php | 3 +- nova/src/Pages/Events/PageDeleted.php | 3 +- nova/src/Pages/Events/PageDuplicated.php | 3 +- nova/src/Pages/Events/PageUpdated.php | 3 +- nova/src/Pages/Livewire/PageDesigner.php | 1 - nova/src/Pages/Requests/UpdatePageRequest.php | 4 +- nova/src/Ranks/Data/RankGroupData.php | 3 +- nova/src/Ranks/Data/RankItemData.php | 3 +- nova/src/Ranks/Data/RankNameData.php | 3 +- nova/src/Ranks/Events/RankGroupCreated.php | 3 +- nova/src/Ranks/Events/RankGroupDeleted.php | 3 +- nova/src/Ranks/Events/RankGroupDuplicated.php | 3 +- nova/src/Ranks/Events/RankGroupUpdated.php | 3 +- nova/src/Ranks/Events/RankItemCreated.php | 3 +- nova/src/Ranks/Events/RankItemDeleted.php | 3 +- nova/src/Ranks/Events/RankItemUpdated.php | 3 +- nova/src/Ranks/Events/RankNameCreated.php | 3 +- nova/src/Ranks/Events/RankNameDeleted.php | 3 +- nova/src/Ranks/Events/RankNameDuplicated.php | 3 +- nova/src/Ranks/Events/RankNameUpdated.php | 3 +- .../Ranks/Requests/UpdateRankGroupRequest.php | 4 +- .../Ranks/Requests/UpdateRankItemRequest.php | 4 +- .../Ranks/Requests/UpdateRankNameRequest.php | 4 +- nova/src/Roles/Data/RoleData.php | 3 +- nova/src/Roles/Data/RolePermissionsData.php | 3 +- nova/src/Roles/Data/RoleUsersData.php | 3 +- nova/src/Roles/Events/RoleCreated.php | 3 +- nova/src/Roles/Events/RoleDeleted.php | 3 +- nova/src/Roles/Events/RoleDuplicated.php | 3 +- nova/src/Roles/Events/RoleUpdated.php | 3 +- nova/src/Roles/Models/Role.php | 2 - nova/src/Roles/Requests/UpdateRoleRequest.php | 4 +- nova/src/Settings/Data/Appearance.php | 3 +- nova/src/Settings/Data/Characters.php | 3 +- nova/src/Settings/Data/ContentRating.php | 3 +- nova/src/Settings/Data/ContentRatings.php | 3 +- nova/src/Settings/Data/Discord.php | 3 +- nova/src/Settings/Data/Email.php | 3 +- nova/src/Settings/Data/EmailConfiguration.php | 3 +- .../Data/EnvironmentConfiguration.php | 3 +- nova/src/Settings/Data/FontFamilies.php | 3 +- nova/src/Settings/Data/General.php | 3 +- nova/src/Settings/Data/MetaTags.php | 4 +- nova/src/Settings/Data/PostingActivity.php | 3 +- nova/src/Stories/Data/Field.php | 3 +- nova/src/Stories/Data/Fields.php | 3 +- nova/src/Stories/Data/Options.php | 3 +- nova/src/Stories/Data/PostAuthorsData.php | 3 +- nova/src/Stories/Data/PostData.php | 3 +- nova/src/Stories/Data/PostPositionData.php | 3 +- nova/src/Stories/Data/PostStatusData.php | 3 +- nova/src/Stories/Data/PostTypeData.php | 3 +- nova/src/Stories/Data/StoryData.php | 3 +- nova/src/Stories/Data/StoryPositionData.php | 3 +- nova/src/Stories/Events/PostPublished.php | 3 +- nova/src/Stories/Events/PostTypeCreated.php | 3 +- nova/src/Stories/Events/PostTypeDeleted.php | 3 +- .../src/Stories/Events/PostTypeDuplicated.php | 3 +- .../Stories/Events/PostTypeForceDeleted.php | 3 +- nova/src/Stories/Events/PostTypeRestored.php | 3 +- nova/src/Stories/Events/PostTypeUpdated.php | 3 +- nova/src/Stories/Events/StoryCreated.php | 3 +- nova/src/Stories/Events/StoryDeleted.php | 3 +- nova/src/Stories/Events/StoryEnded.php | 3 +- nova/src/Stories/Events/StoryStarted.php | 3 +- nova/src/Stories/Events/StoryUpdated.php | 3 +- .../Livewire/Steps/PublishPostStep.php | 4 +- .../Mail/SendCharacterAuthorAddedToPost.php | 3 +- .../SendCharacterAuthorRemovedFromPost.php | 3 +- .../Stories/Mail/SendPostDraftDiscarded.php | 3 +- nova/src/Stories/Mail/SendPostPublished.php | 3 +- nova/src/Stories/Mail/SendPostSaved.php | 3 +- nova/src/Stories/Mail/SendStoryEnded.php | 3 +- nova/src/Stories/Mail/SendStoryStarted.php | 3 +- .../Mail/SendUserAuthorAddedToPost.php | 3 +- .../Mail/SendUserAuthorRemovedFromPost.php | 3 +- nova/src/Stories/Models/Post.php | 2 - .../States/PostStatus/DraftToPending.php | 3 +- .../States/PostStatus/DraftToPublished.php | 3 +- .../States/PostStatus/PendingToPublished.php | 3 +- .../States/PostStatus/StartedToDraft.php | 3 +- .../States/StoryStatus/CompletedToCurrent.php | 3 +- .../States/StoryStatus/CompletedToOngoing.php | 3 +- .../StoryStatus/CompletedToUpcoming.php | 3 +- .../States/StoryStatus/CurrentToCompleted.php | 3 +- .../States/StoryStatus/CurrentToOngoing.php | 3 +- .../States/StoryStatus/CurrentToUpcoming.php | 3 +- .../States/StoryStatus/OngoingToCompleted.php | 3 +- .../States/StoryStatus/OngoingToCurrent.php | 3 +- .../States/StoryStatus/OngoingToUpcoming.php | 3 +- .../StoryStatus/UpcomingToCompleted.php | 3 +- .../States/StoryStatus/UpcomingToCurrent.php | 3 +- .../States/StoryStatus/UpcomingToOngoing.php | 3 +- .../CharacterAuthorAddedToPost.php | 3 +- .../CharacterAuthorRemovedFromPost.php | 3 +- .../Notifications/DraftPostDiscarded.php | 3 +- .../Stories/Notifications/PostPublished.php | 3 +- nova/src/Stories/Notifications/PostSaved.php | 3 +- nova/src/Stories/Notifications/StoryEnded.php | 3 +- .../Stories/Notifications/StoryStarted.php | 3 +- .../Notifications/UserAuthorAddedToPost.php | 3 +- .../UserAuthorRemovedFromPost.php | 3 +- .../Requests/UpdatePostTypeRequest.php | 4 +- .../Stories/Requests/UpdateStoryRequest.php | 4 +- .../View/Components/WritePostWizardLayout.php | 3 +- nova/src/Stories/Wizard/Step.php | 3 +- nova/src/Themes/Data/ThemeData.php | 3 +- nova/src/Themes/Data/ThemeSettings.php | 3 +- nova/src/Themes/Events/ThemeCreated.php | 3 +- nova/src/Themes/Events/ThemeDeleted.php | 3 +- nova/src/Themes/Events/ThemeInstalled.php | 3 +- nova/src/Themes/Events/ThemeUpdated.php | 3 +- .../MissingQuickInstallFileException.php | 4 +- .../Themes/Requests/UpdateThemeRequest.php | 4 +- .../Users/Controllers/AccountController.php | 4 +- .../Users/Data/AssignUserCharactersData.php | 3 +- nova/src/Users/Data/AssignUserRolesData.php | 3 +- nova/src/Users/Data/PronounsData.php | 3 +- nova/src/Users/Data/UserData.php | 3 +- nova/src/Users/Data/UserPreferences.php | 3 +- nova/src/Users/Events/UserActivated.php | 3 +- nova/src/Users/Events/UserCreated.php | 3 +- nova/src/Users/Events/UserCreatedByAdmin.php | 3 +- nova/src/Users/Events/UserDeactivated.php | 3 +- nova/src/Users/Events/UserDeleted.php | 3 +- nova/src/Users/Events/UserDeletedByAdmin.php | 3 +- nova/src/Users/Events/UserUpdated.php | 3 +- nova/src/Users/Events/UserUpdatedByAdmin.php | 3 +- nova/src/Users/Mail/SendAccountCreation.php | 3 +- .../src/Users/Mail/SendUserDeletedAccount.php | 3 +- .../Models/States/Status/ActiveToInactive.php | 3 +- nova/src/Users/Models/User.php | 2 - .../Users/Notifications/AccountCreated.php | 3 +- .../Notifications/UserDeletedAccount.php | 3 +- package-lock.json | 12 +- .../Departments/EditDepartmentTest.php | 3 +- tests/Feature/Stories/EditStoryTest.php | 3 +- 199 files changed, 660 insertions(+), 1627 deletions(-) delete mode 100644 nova/config/form-components.php diff --git a/composer.json b/composer.json index f9e02d43c..b50a0ce01 100644 --- a/composer.json +++ b/composer.json @@ -16,7 +16,6 @@ "awcodes/scribble": "^0.3.0@alpha", "awcodes/typist": "dev-main", "aws/aws-sdk-php": "^3.293", - "awssat/discord-notification-channel": "^1.4", "bensampo/laravel-embed": "^2.4", "blade-ui-kit/blade-icons": "^1.0", "filament/forms": "^3.0-stable", @@ -27,13 +26,12 @@ "guzzlehttp/guzzle": "^7.2", "lab404/laravel-impersonate": "^1.7", "laravel/fortify": "^1.16", - "laravel/framework": "^10.0", - "laravel/sanctum": "^3.2", + "laravel/framework": "^11.0", + "laravel/sanctum": "^4.0", "laravel/tinker": "^2.7", - "livewire/livewire": "^3.1", + "livewire/livewire": "^3.4", "lorisleiva/laravel-actions": "^2.1", "mailersend/laravel-driver": "^2.3", - "rawilk/laravel-form-components": "^8.1", "santigarcor/laratrust": "^8.0", "spatie/eloquent-sortable": "^4.0", "spatie/laravel-activitylog": "^4.0", @@ -43,9 +41,6 @@ "spatie/laravel-medialibrary": "^11.0", "spatie/laravel-model-states": "^2.1", "spatie/laravel-ray": "^1.26", - "spatie/once": "^3.0", - "staudenmeir/eloquent-eager-limit": "^1.6", - "staudenmeir/eloquent-eager-limit-x-laravel-adjacency-list": "^1.0", "staudenmeir/eloquent-has-many-deep": "^1.18", "staudenmeir/laravel-adjacency-list": "^1.0", "symfony/http-client": "^7.0", @@ -60,7 +55,7 @@ "itsgoingd/clockwork": "^5.0", "laravel/pint": "^1.8", "mockery/mockery": "^1.0", - "nunomaduro/collision": "^7.0", + "nunomaduro/collision": "^8.1", "pestphp/pest": "^2.9", "pestphp/pest-plugin-laravel": "^2.1", "pestphp/pest-plugin-livewire": "^2.1", diff --git a/composer.lock b/composer.lock index 14828522c..e6f94e0ef 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": "88e6b3728f83d6c64a7d195ffc784812", + "content-hash": "3e9fcaab1a19bce202efe1f6e89cf494", "packages": [ { "name": "amphp/amp", @@ -463,16 +463,16 @@ }, { "name": "amphp/pipeline", - "version": "v1.2.0", + "version": "v1.2.1", "source": { "type": "git", "url": "https://github.com/amphp/pipeline.git", - "reference": "f1c2ce35d27ae86ead018adb803eccca7421dd9b" + "reference": "66c095673aa5b6e689e63b52d19e577459129ab3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/pipeline/zipball/f1c2ce35d27ae86ead018adb803eccca7421dd9b", - "reference": "f1c2ce35d27ae86ead018adb803eccca7421dd9b", + "url": "https://api.github.com/repos/amphp/pipeline/zipball/66c095673aa5b6e689e63b52d19e577459129ab3", + "reference": "66c095673aa5b6e689e63b52d19e577459129ab3", "shasum": "" }, "require": { @@ -518,7 +518,7 @@ ], "support": { "issues": "https://github.com/amphp/pipeline/issues", - "source": "https://github.com/amphp/pipeline/tree/v1.2.0" + "source": "https://github.com/amphp/pipeline/tree/v1.2.1" }, "funding": [ { @@ -526,7 +526,7 @@ "type": "github" } ], - "time": "2024-03-10T14:48:16+00:00" + "time": "2024-07-04T00:56:47+00:00" }, { "name": "amphp/process", @@ -867,16 +867,16 @@ }, { "name": "anodyne/blade-tabler-icons", - "version": "3.8", + "version": "3.9", "source": { "type": "git", "url": "https://github.com/anodyne/blade-tabler-icons.git", - "reference": "b877456822b0bebcb9c0d47bee80bd445f505152" + "reference": "bc9d5ada885d909abd90c90c0316fd8576d82e3d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/anodyne/blade-tabler-icons/zipball/b877456822b0bebcb9c0d47bee80bd445f505152", - "reference": "b877456822b0bebcb9c0d47bee80bd445f505152", + "url": "https://api.github.com/repos/anodyne/blade-tabler-icons/zipball/bc9d5ada885d909abd90c90c0316fd8576d82e3d", + "reference": "bc9d5ada885d909abd90c90c0316fd8576d82e3d", "shasum": "" }, "require": { @@ -928,9 +928,9 @@ "tabler" ], "support": { - "source": "https://github.com/anodyne/blade-tabler-icons/tree/3.8" + "source": "https://github.com/anodyne/blade-tabler-icons/tree/3.9" }, - "time": "2024-07-03T13:09:06+00:00" + "time": "2024-07-05T12:46:26+00:00" }, { "name": "anourvalar/eloquent-serialize", @@ -1300,16 +1300,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.315.5", + "version": "3.315.6", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "3e6d619d45d8e1a8681dd58de61ddfe90e8341e6" + "reference": "69e19f7b083c5b5a06677b026e23dae517825c8b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/3e6d619d45d8e1a8681dd58de61ddfe90e8341e6", - "reference": "3e6d619d45d8e1a8681dd58de61ddfe90e8341e6", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/69e19f7b083c5b5a06677b026e23dae517825c8b", + "reference": "69e19f7b083c5b5a06677b026e23dae517825c8b", "shasum": "" }, "require": { @@ -1389,68 +1389,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.315.5" + "source": "https://github.com/aws/aws-sdk-php/tree/3.315.6" }, - "time": "2024-07-03T18:12:51+00:00" - }, - { - "name": "awssat/discord-notification-channel", - "version": "1.4.3", - "source": { - "type": "git", - "url": "https://github.com/awssat/discord-notification-channel.git", - "reference": "7c51df5974a61f2a8bdda1b2236637e4713d059a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/awssat/discord-notification-channel/zipball/7c51df5974a61f2a8bdda1b2236637e4713d059a", - "reference": "7c51df5974a61f2a8bdda1b2236637e4713d059a", - "shasum": "" - }, - "require": { - "guzzlehttp/guzzle": "^6.0|^7.0", - "illuminate/notifications": "~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0", - "laravel/slack-notification-channel": "^2.0", - "php": "^7.1.3|^8.0" - }, - "require-dev": { - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^7.0|^8.0|^9.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Awssat\\Notifications\\DiscordChannelServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Awssat\\Notifications\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Bader Almutairi", - "email": "phpfalcon@gmail.com" - } - ], - "description": "Discord Notification Channel for laravel.", - "keywords": [ - "discord", - "laravel", - "notifications" - ], - "support": { - "issues": "https://github.com/awssat/discord-notification-channel/issues", - "source": "https://github.com/awssat/discord-notification-channel/tree/1.4.3" - }, - "time": "2023-01-31T21:52:04+00:00" + "time": "2024-07-05T18:07:22+00:00" }, { "name": "bacon/bacon-qr-code", @@ -4192,16 +4133,16 @@ }, { "name": "laravel/framework", - "version": "v10.48.15", + "version": "v11.14.0", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "1723e038c9ec99b434e5bed9c27f044bd50a4ffb" + "reference": "657e8464e13147d56bc3a399115c8c26f38d4821" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/1723e038c9ec99b434e5bed9c27f044bd50a4ffb", - "reference": "1723e038c9ec99b434e5bed9c27f044bd50a4ffb", + "url": "https://api.github.com/repos/laravel/framework/zipball/657e8464e13147d56bc3a399115c8c26f38d4821", + "reference": "657e8464e13147d56bc3a399115c8c26f38d4821", "shasum": "" }, "require": { @@ -4217,44 +4158,44 @@ "ext-openssl": "*", "ext-session": "*", "ext-tokenizer": "*", - "fruitcake/php-cors": "^1.2", + "fruitcake/php-cors": "^1.3", + "guzzlehttp/guzzle": "^7.8", "guzzlehttp/uri-template": "^1.0", - "laravel/prompts": "^0.1.9", + "laravel/prompts": "^0.1.18", "laravel/serializable-closure": "^1.3", "league/commonmark": "^2.2.1", "league/flysystem": "^3.8.0", "monolog/monolog": "^3.0", - "nesbot/carbon": "^2.67", - "nunomaduro/termwind": "^1.13", - "php": "^8.1", + "nesbot/carbon": "^2.72.2|^3.0", + "nunomaduro/termwind": "^2.0", + "php": "^8.2", "psr/container": "^1.1.1|^2.0.1", "psr/log": "^1.0|^2.0|^3.0", "psr/simple-cache": "^1.0|^2.0|^3.0", "ramsey/uuid": "^4.7", - "symfony/console": "^6.2", - "symfony/error-handler": "^6.2", - "symfony/finder": "^6.2", - "symfony/http-foundation": "^6.4", - "symfony/http-kernel": "^6.2", - "symfony/mailer": "^6.2", - "symfony/mime": "^6.2", - "symfony/process": "^6.2", - "symfony/routing": "^6.2", - "symfony/uid": "^6.2", - "symfony/var-dumper": "^6.2", + "symfony/console": "^7.0", + "symfony/error-handler": "^7.0", + "symfony/finder": "^7.0", + "symfony/http-foundation": "^7.0", + "symfony/http-kernel": "^7.0", + "symfony/mailer": "^7.0", + "symfony/mime": "^7.0", + "symfony/polyfill-php83": "^1.28", + "symfony/process": "^7.0", + "symfony/routing": "^7.0", + "symfony/uid": "^7.0", + "symfony/var-dumper": "^7.0", "tijsverkoyen/css-to-inline-styles": "^2.2.5", "vlucas/phpdotenv": "^5.4.1", "voku/portable-ascii": "^2.0" }, "conflict": { - "carbonphp/carbon-doctrine-types": ">=3.0", - "doctrine/dbal": ">=4.0", "mockery/mockery": "1.6.8", - "phpunit/phpunit": ">=11.0.0", "tightenco/collect": "<5.5.33" }, "provide": { "psr/container-implementation": "1.1|2.0", + "psr/log-implementation": "1.0|2.0|3.0", "psr/simple-cache-implementation": "1.0|2.0|3.0" }, "replace": { @@ -4290,36 +4231,35 @@ "illuminate/testing": "self.version", "illuminate/translation": "self.version", "illuminate/validation": "self.version", - "illuminate/view": "self.version" + "illuminate/view": "self.version", + "spatie/once": "*" }, "require-dev": { "ably/ably-php": "^1.0", "aws/aws-sdk-php": "^3.235.5", - "doctrine/dbal": "^3.5.1", "ext-gmp": "*", - "fakerphp/faker": "^1.21", - "guzzlehttp/guzzle": "^7.5", + "fakerphp/faker": "^1.23", "league/flysystem-aws-s3-v3": "^3.0", "league/flysystem-ftp": "^3.0", "league/flysystem-path-prefixing": "^3.3", "league/flysystem-read-only": "^3.3", "league/flysystem-sftp-v3": "^3.0", - "mockery/mockery": "^1.5.1", + "mockery/mockery": "^1.6", "nyholm/psr7": "^1.2", - "orchestra/testbench-core": "^8.23.4", - "pda/pheanstalk": "^4.0", + "orchestra/testbench-core": "^9.1.5", + "pda/pheanstalk": "^5.0", "phpstan/phpstan": "^1.4.7", - "phpunit/phpunit": "^10.0.7", + "phpunit/phpunit": "^10.5|^11.0", "predis/predis": "^2.0.2", - "symfony/cache": "^6.2", - "symfony/http-client": "^6.2.4", - "symfony/psr-http-message-bridge": "^2.0" + "resend/resend-php": "^0.10.0", + "symfony/cache": "^7.0", + "symfony/http-client": "^7.0", + "symfony/psr-http-message-bridge": "^7.0" }, "suggest": { "ably/ably-php": "Required to use the Ably broadcast driver (^1.0).", "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.235.5).", - "brianium/paratest": "Required to run tests in parallel (^6.0).", - "doctrine/dbal": "Required to rename columns and drop SQLite columns (^3.5.1).", + "brianium/paratest": "Required to run tests in parallel (^7.0|^8.0).", "ext-apcu": "Required to use the APC cache driver.", "ext-fileinfo": "Required to use the Filesystem class.", "ext-ftp": "Required to use the Flysystem FTP driver.", @@ -4328,34 +4268,34 @@ "ext-pcntl": "Required to use all features of the queue worker and console signal trapping.", "ext-pdo": "Required to use all database features.", "ext-posix": "Required to use all features of the queue worker.", - "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", + "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0|^6.0).", "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", "filp/whoops": "Required for friendly error pages in development (^2.14.3).", - "guzzlehttp/guzzle": "Required to use the HTTP Client and the ping methods on schedules (^7.5).", "laravel/tinker": "Required to use the tinker console command (^2.0).", "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).", "league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).", "league/flysystem-path-prefixing": "Required to use the scoped driver (^3.3).", "league/flysystem-read-only": "Required to use read-only disks (^3.3)", "league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).", - "mockery/mockery": "Required to use mocking (^1.5.1).", + "mockery/mockery": "Required to use mocking (^1.6).", "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", - "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", - "phpunit/phpunit": "Required to use assertions and run tests (^9.5.8|^10.0.7).", + "pda/pheanstalk": "Required to use the beanstalk queue driver (^5.0).", + "phpunit/phpunit": "Required to use assertions and run tests (^10.5|^11.0).", "predis/predis": "Required to use the predis connector (^2.0.2).", "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^6.0|^7.0).", - "symfony/cache": "Required to PSR-6 cache bridge (^6.2).", - "symfony/filesystem": "Required to enable support for relative symbolic links (^6.2).", - "symfony/http-client": "Required to enable support for the Symfony API mail transports (^6.2).", - "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^6.2).", - "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^6.2).", - "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0)." + "resend/resend-php": "Required to enable support for the Resend mail transport (^0.10.0).", + "symfony/cache": "Required to PSR-6 cache bridge (^7.0).", + "symfony/filesystem": "Required to enable support for relative symbolic links (^7.0).", + "symfony/http-client": "Required to enable support for the Symfony API mail transports (^7.0).", + "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^7.0).", + "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^7.0).", + "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^7.0)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "10.x-dev" + "dev-master": "11.x-dev" } }, "autoload": { @@ -4395,7 +4335,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2024-07-02T18:01:24+00:00" + "time": "2024-07-02T17:23:58+00:00" }, { "name": "laravel/prompts", @@ -4457,37 +4397,35 @@ }, { "name": "laravel/sanctum", - "version": "v3.3.3", + "version": "v4.0.2", "source": { "type": "git", "url": "https://github.com/laravel/sanctum.git", - "reference": "8c104366459739f3ada0e994bcd3e6fd681ce3d5" + "reference": "9cfc0ce80cabad5334efff73ec856339e8ec1ac1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sanctum/zipball/8c104366459739f3ada0e994bcd3e6fd681ce3d5", - "reference": "8c104366459739f3ada0e994bcd3e6fd681ce3d5", + "url": "https://api.github.com/repos/laravel/sanctum/zipball/9cfc0ce80cabad5334efff73ec856339e8ec1ac1", + "reference": "9cfc0ce80cabad5334efff73ec856339e8ec1ac1", "shasum": "" }, "require": { "ext-json": "*", - "illuminate/console": "^9.21|^10.0", - "illuminate/contracts": "^9.21|^10.0", - "illuminate/database": "^9.21|^10.0", - "illuminate/support": "^9.21|^10.0", - "php": "^8.0.2" + "illuminate/console": "^11.0", + "illuminate/contracts": "^11.0", + "illuminate/database": "^11.0", + "illuminate/support": "^11.0", + "php": "^8.2", + "symfony/console": "^7.0" }, "require-dev": { - "mockery/mockery": "^1.0", - "orchestra/testbench": "^7.28.2|^8.8.3", + "mockery/mockery": "^1.6", + "orchestra/testbench": "^9.0", "phpstan/phpstan": "^1.10", - "phpunit/phpunit": "^9.6" + "phpunit/phpunit": "^10.5" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - }, "laravel": { "providers": [ "Laravel\\Sanctum\\SanctumServiceProvider" @@ -4519,7 +4457,7 @@ "issues": "https://github.com/laravel/sanctum/issues", "source": "https://github.com/laravel/sanctum" }, - "time": "2023-12-19T18:44:48+00:00" + "time": "2024-04-10T19:39:58+00:00" }, { "name": "laravel/serializable-closure", @@ -4581,67 +4519,6 @@ }, "time": "2023-11-08T14:08:06+00:00" }, - { - "name": "laravel/slack-notification-channel", - "version": "v2.5.0", - "source": { - "type": "git", - "url": "https://github.com/laravel/slack-notification-channel.git", - "reference": "e0d4be5e01d443a69fa89f0a4cac6bd2eda2be8f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/slack-notification-channel/zipball/e0d4be5e01d443a69fa89f0a4cac6bd2eda2be8f", - "reference": "e0d4be5e01d443a69fa89f0a4cac6bd2eda2be8f", - "shasum": "" - }, - "require": { - "guzzlehttp/guzzle": "^6.0|^7.0", - "illuminate/notifications": "~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0", - "php": "^7.1.3|^8.0" - }, - "require-dev": { - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^7.0|^8.0|^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.x-dev" - }, - "laravel": { - "providers": [ - "Illuminate\\Notifications\\SlackChannelServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Notifications\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "Slack Notification Channel for laravel.", - "keywords": [ - "laravel", - "notifications", - "slack" - ], - "support": { - "issues": "https://github.com/laravel/slack-notification-channel/issues", - "source": "https://github.com/laravel/slack-notification-channel/tree/v2.5.0" - }, - "time": "2023-01-12T16:21:26+00:00" - }, { "name": "laravel/tinker", "version": "v2.9.0", @@ -6111,42 +5988,41 @@ }, { "name": "nesbot/carbon", - "version": "2.72.5", + "version": "3.6.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "afd46589c216118ecd48ff2b95d77596af1e57ed" + "reference": "39c8ef752db6865717cc3fba63970c16f057982c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/afd46589c216118ecd48ff2b95d77596af1e57ed", - "reference": "afd46589c216118ecd48ff2b95d77596af1e57ed", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/39c8ef752db6865717cc3fba63970c16f057982c", + "reference": "39c8ef752db6865717cc3fba63970c16f057982c", "shasum": "" }, "require": { "carbonphp/carbon-doctrine-types": "*", "ext-json": "*", - "php": "^7.1.8 || ^8.0", + "php": "^8.1", "psr/clock": "^1.0", + "symfony/clock": "^6.3 || ^7.0", "symfony/polyfill-mbstring": "^1.0", - "symfony/polyfill-php80": "^1.16", - "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" + "symfony/translation": "^4.4.18 || ^5.2.1|| ^6.0 || ^7.0" }, "provide": { "psr/clock-implementation": "1.0" }, "require-dev": { - "doctrine/dbal": "^2.0 || ^3.1.4 || ^4.0", - "doctrine/orm": "^2.7 || ^3.0", - "friendsofphp/php-cs-fixer": "^3.0", - "kylekatarnls/multi-tester": "^2.0", - "ondrejmirtes/better-reflection": "*", - "phpmd/phpmd": "^2.9", - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^0.12.99 || ^1.7.14", - "phpunit/php-file-iterator": "^2.0.5 || ^3.0.6", - "phpunit/phpunit": "^7.5.20 || ^8.5.26 || ^9.5.20", - "squizlabs/php_codesniffer": "^3.4" + "doctrine/dbal": "^3.6.3 || ^4.0", + "doctrine/orm": "^2.15.2 || ^3.0", + "friendsofphp/php-cs-fixer": "^3.57.2", + "kylekatarnls/multi-tester": "^2.5.3", + "ondrejmirtes/better-reflection": "^6.25.0.4", + "phpmd/phpmd": "^2.15.0", + "phpstan/extension-installer": "^1.3.1", + "phpstan/phpstan": "^1.11.2", + "phpunit/phpunit": "^10.5.20", + "squizlabs/php_codesniffer": "^3.9.0" }, "bin": [ "bin/carbon" @@ -6214,7 +6090,7 @@ "type": "tidelift" } ], - "time": "2024-06-03T19:18:41+00:00" + "time": "2024-06-20T15:52:59+00:00" }, { "name": "nette/schema", @@ -6424,33 +6300,32 @@ }, { "name": "nunomaduro/termwind", - "version": "v1.15.1", + "version": "v2.0.1", "source": { "type": "git", "url": "https://github.com/nunomaduro/termwind.git", - "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc" + "reference": "58c4c58cf23df7f498daeb97092e34f5259feb6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/8ab0b32c8caa4a2e09700ea32925441385e4a5dc", - "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc", + "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/58c4c58cf23df7f498daeb97092e34f5259feb6a", + "reference": "58c4c58cf23df7f498daeb97092e34f5259feb6a", "shasum": "" }, "require": { "ext-mbstring": "*", - "php": "^8.0", - "symfony/console": "^5.3.0|^6.0.0" + "php": "^8.2", + "symfony/console": "^7.0.4" }, "require-dev": { - "ergebnis/phpstan-rules": "^1.0.", - "illuminate/console": "^8.0|^9.0", - "illuminate/support": "^8.0|^9.0", - "laravel/pint": "^1.0.0", - "pestphp/pest": "^1.21.0", - "pestphp/pest-plugin-mock": "^1.0", - "phpstan/phpstan": "^1.4.6", - "phpstan/phpstan-strict-rules": "^1.1.0", - "symfony/var-dumper": "^5.2.7|^6.0.0", + "ergebnis/phpstan-rules": "^2.2.0", + "illuminate/console": "^11.0.0", + "laravel/pint": "^1.14.0", + "mockery/mockery": "^1.6.7", + "pestphp/pest": "^2.34.1", + "phpstan/phpstan": "^1.10.59", + "phpstan/phpstan-strict-rules": "^1.5.2", + "symfony/var-dumper": "^7.0.4", "thecodingmachine/phpstan-strict-rules": "^1.0.0" }, "type": "library", @@ -6459,6 +6334,9 @@ "providers": [ "Termwind\\Laravel\\TermwindServiceProvider" ] + }, + "branch-alias": { + "dev-2.x": "2.x-dev" } }, "autoload": { @@ -6490,7 +6368,7 @@ ], "support": { "issues": "https://github.com/nunomaduro/termwind/issues", - "source": "https://github.com/nunomaduro/termwind/tree/v1.15.1" + "source": "https://github.com/nunomaduro/termwind/tree/v2.0.1" }, "funding": [ { @@ -6506,7 +6384,7 @@ "type": "github" } ], - "time": "2023-02-08T01:06:31+00:00" + "time": "2024-03-06T16:17:14+00:00" }, { "name": "nyholm/psr7", @@ -8370,97 +8248,6 @@ ], "time": "2024-04-27T21:32:50+00:00" }, - { - "name": "rawilk/laravel-form-components", - "version": "v8.1.4", - "source": { - "type": "git", - "url": "https://github.com/rawilk/laravel-form-components.git", - "reference": "3ad7b7ae66ee02dbe1764aa1a669f3af20241064" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/rawilk/laravel-form-components/zipball/3ad7b7ae66ee02dbe1764aa1a669f3af20241064", - "reference": "3ad7b7ae66ee02dbe1764aa1a669f3af20241064", - "shasum": "" - }, - "require": { - "illuminate/filesystem": "^9.0|^10.0", - "illuminate/support": "^9.0|^10.0", - "illuminate/view": "^9.0|^10.0", - "php": "^8.0|^8.1|^8.2", - "spatie/laravel-package-tools": "^1.14" - }, - "require-dev": { - "blade-ui-kit/blade-heroicons": "^2.0", - "laravel/pint": "^1.5", - "livewire/livewire": "^2.8", - "orchestra/testbench": "^7.0|^8.0", - "pestphp/pest": "^1.22", - "pestphp/pest-plugin-laravel": "^1.4", - "pestphp/pest-plugin-parallel": "^1.2", - "sinnbeck/laravel-dom-assertions": "^1.3", - "spatie/laravel-ray": "^1.25" - }, - "suggest": { - "blade-ui-kit/blade-heroicons": "Required for the default icons used in this package", - "livewire/livewire": "Consider livewire for handling your form submissions" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Rawilk\\FormComponents\\FormComponentsServiceProvider" - ], - "aliases": { - "FormComponents": "Rawilk\\FormComponents\\Facades\\FormComponents" - } - } - }, - "autoload": { - "psr-4": { - "Rawilk\\FormComponents\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Randall Wilk", - "email": "randall@randallwilk.dev", - "homepage": "https://randallwilk.dev", - "role": "Developer" - } - ], - "description": "Set of Blade components for TailwindCSS forms.", - "homepage": "https://github.com/rawilk/laravel-form-components", - "keywords": [ - "blade", - "custom-select", - "date picker", - "filepond", - "flatpickr", - "form", - "laravel", - "laravel-form-components", - "rawilk", - "tailwind", - "toggle" - ], - "support": { - "issues": "https://github.com/rawilk/laravel-form-components/issues", - "source": "https://github.com/rawilk/laravel-form-components/tree/v8.1.4" - }, - "funding": [ - { - "url": "https://github.com/rawilk", - "type": "github" - } - ], - "time": "2023-07-10T12:42:01+00:00" - }, { "name": "rector/rector", "version": "1.2.0", @@ -9918,68 +9705,6 @@ }, "time": "2021-03-26T22:39:02+00:00" }, - { - "name": "spatie/once", - "version": "3.1.1", - "source": { - "type": "git", - "url": "https://github.com/spatie/once.git", - "reference": "25252b821765d72566be17c52ea05b35329f0f8f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/once/zipball/25252b821765d72566be17c52ea05b35329f0f8f", - "reference": "25252b821765d72566be17c52ea05b35329f0f8f", - "shasum": "" - }, - "require": { - "php": "^8.0" - }, - "require-dev": { - "pestphp/pest": "^1.21", - "symfony/var-dumper": "^5.1" - }, - "type": "library", - "autoload": { - "files": [ - "src/functions.php" - ], - "psr-4": { - "Spatie\\Once\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Freek Van der Herten", - "email": "freek@spatie.be", - "homepage": "https://spatie.be", - "role": "Developer" - } - ], - "description": "A magic memoization function", - "homepage": "https://github.com/spatie/once", - "keywords": [ - "cache", - "callable", - "memoization", - "once", - "spatie" - ], - "support": { - "source": "https://github.com/spatie/once/tree/3.1.1" - }, - "funding": [ - { - "url": "https://spatie.be/open-source/support-us", - "type": "custom" - } - ], - "time": "2024-05-27T09:17:58+00:00" - }, { "name": "spatie/php-structure-discoverer", "version": "2.1.1", @@ -10269,193 +9994,36 @@ ], "time": "2023-12-25T11:46:58+00:00" }, - { - "name": "staudenmeir/eloquent-eager-limit", - "version": "v1.8.3", - "source": { - "type": "git", - "url": "https://github.com/staudenmeir/eloquent-eager-limit.git", - "reference": "4d242d948955d155bc7fae8b1738818b16f7d333" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/staudenmeir/eloquent-eager-limit/zipball/4d242d948955d155bc7fae8b1738818b16f7d333", - "reference": "4d242d948955d155bc7fae8b1738818b16f7d333", - "shasum": "" - }, - "require": { - "illuminate/database": "^10.0", - "php": "^8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "Staudenmeir\\EloquentEagerLimit\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jonas Staudenmeir", - "email": "mail@jonas-staudenmeir.de" - } - ], - "description": "Laravel Eloquent eager loading with limit", - "support": { - "issues": "https://github.com/staudenmeir/eloquent-eager-limit/issues", - "source": "https://github.com/staudenmeir/eloquent-eager-limit/tree/v1.8.3" - }, - "funding": [ - { - "url": "https://paypal.me/JonasStaudenmeir", - "type": "custom" - } - ], - "time": "2023-07-12T21:15:26+00:00" - }, - { - "name": "staudenmeir/eloquent-eager-limit-x-laravel-adjacency-list", - "version": "v1.2", - "source": { - "type": "git", - "url": "https://github.com/staudenmeir/eloquent-eager-limit-x-laravel-adjacency-list.git", - "reference": "329389e6eb304e9e03935b530e1f12a5d8ab8bee" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/staudenmeir/eloquent-eager-limit-x-laravel-adjacency-list/zipball/329389e6eb304e9e03935b530e1f12a5d8ab8bee", - "reference": "329389e6eb304e9e03935b530e1f12a5d8ab8bee", - "shasum": "" - }, - "require": { - "illuminate/database": "^10.0", - "php": "^8.1", - "staudenmeir/eloquent-eager-limit-x-laravel-cte": "^1.1.1", - "staudenmeir/laravel-adjacency-list": "^1.13.5" - }, - "require-dev": { - "doctrine/dbal": "^3.5.2", - "phpunit/phpunit": "^10.0", - "staudenmeir/eloquent-has-many-deep": "^1.18" - }, - "type": "library", - "autoload": { - "psr-4": { - "Staudenmeir\\EloquentEagerLimitXLaravelAdjacencyList\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jonas Staudenmeir", - "email": "mail@jonas-staudenmeir.de" - } - ], - "description": "Merge of staudenmeir/eloquent-eager-limit and staudenmeir/laravel-adjacency-list", - "support": { - "issues": "https://github.com/staudenmeir/eloquent-eager-limit-x-laravel-adjacency-list/issues", - "source": "https://github.com/staudenmeir/eloquent-eager-limit-x-laravel-adjacency-list/tree/v1.2" - }, - "funding": [ - { - "url": "https://paypal.me/JonasStaudenmeir", - "type": "custom" - } - ], - "time": "2023-05-14T09:54:50+00:00" - }, - { - "name": "staudenmeir/eloquent-eager-limit-x-laravel-cte", - "version": "v1.1.1", - "source": { - "type": "git", - "url": "https://github.com/staudenmeir/eloquent-eager-limit-x-laravel-cte.git", - "reference": "f2b2b711c34f74507a339457cd897c76d5754d1c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/staudenmeir/eloquent-eager-limit-x-laravel-cte/zipball/f2b2b711c34f74507a339457cd897c76d5754d1c", - "reference": "f2b2b711c34f74507a339457cd897c76d5754d1c", - "shasum": "" - }, - "require": { - "illuminate/database": "^10.0", - "php": "^8.1", - "staudenmeir/eloquent-eager-limit": "^1.8.1", - "staudenmeir/laravel-cte": "^1.7" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Staudenmeir\\EloquentEagerLimitXLaravelCte\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jonas Staudenmeir", - "email": "mail@jonas-staudenmeir.de" - } - ], - "description": "Merge of staudenmeir/eloquent-eager-limit and staudenmeir/laravel-cte", - "support": { - "issues": "https://github.com/staudenmeir/eloquent-eager-limit-x-laravel-cte/issues", - "source": "https://github.com/staudenmeir/eloquent-eager-limit-x-laravel-cte/tree/v1.1.1" - }, - "funding": [ - { - "url": "https://paypal.me/JonasStaudenmeir", - "type": "custom" - } - ], - "time": "2023-02-12T22:42:19+00:00" - }, { "name": "staudenmeir/eloquent-has-many-deep", - "version": "v1.19.4", + "version": "v1.20.1", "source": { "type": "git", "url": "https://github.com/staudenmeir/eloquent-has-many-deep.git", - "reference": "d9651c2c64d34a8fd4c680090d3521ed136f2ead" + "reference": "979108e70a0db274bbf0c3ee58f1b8e96f891d4d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/staudenmeir/eloquent-has-many-deep/zipball/d9651c2c64d34a8fd4c680090d3521ed136f2ead", - "reference": "d9651c2c64d34a8fd4c680090d3521ed136f2ead", + "url": "https://api.github.com/repos/staudenmeir/eloquent-has-many-deep/zipball/979108e70a0db274bbf0c3ee58f1b8e96f891d4d", + "reference": "979108e70a0db274bbf0c3ee58f1b8e96f891d4d", "shasum": "" }, "require": { - "illuminate/database": "^10.0", - "php": "^8.1", - "staudenmeir/eloquent-has-many-deep-contracts": "^1.1" + "illuminate/database": "^11.0", + "php": "^8.2", + "staudenmeir/eloquent-has-many-deep-contracts": "^1.2" }, "require-dev": { - "awobaz/compoships": "^2.2", - "barryvdh/laravel-ide-helper": "^2.13", - "illuminate/pagination": "^10.0", - "korridor/laravel-has-many-merged": "^1.0", + "awobaz/compoships": "^2.3", + "barryvdh/laravel-ide-helper": "^3.0", + "illuminate/pagination": "^11.0", + "korridor/laravel-has-many-merged": "^1.1", "mockery/mockery": "^1.6", - "orchestra/testbench": "^8.13", + "orchestra/testbench": "^9.0", "phpstan/phpstan": "^1.10", - "phpunit/phpunit": "^10.1", - "staudenmeir/eloquent-eager-limit": "^1.8", - "staudenmeir/eloquent-json-relations": "^1.8.2", - "staudenmeir/laravel-adjacency-list": "^1.13.7" + "phpunit/phpunit": "^11.0", + "staudenmeir/eloquent-json-relations": "^1.11", + "staudenmeir/laravel-adjacency-list": "^1.21" }, "type": "library", "extra": { @@ -10483,7 +10051,7 @@ "description": "Laravel Eloquent HasManyThrough relationships with unlimited levels", "support": { "issues": "https://github.com/staudenmeir/eloquent-has-many-deep/issues", - "source": "https://github.com/staudenmeir/eloquent-has-many-deep/tree/v1.19.4" + "source": "https://github.com/staudenmeir/eloquent-has-many-deep/tree/v1.20.1" }, "funding": [ { @@ -10491,25 +10059,25 @@ "type": "custom" } ], - "time": "2024-05-25T09:46:08+00:00" + "time": "2024-05-25T10:02:04+00:00" }, { "name": "staudenmeir/eloquent-has-many-deep-contracts", - "version": "v1.1", + "version": "v1.2", "source": { "type": "git", "url": "https://github.com/staudenmeir/eloquent-has-many-deep-contracts.git", - "reference": "c39317b839d6123be126b9980e4a3d38310f5939" + "reference": "bcbe1a921caad7201b324e297eddb696d4bd8647" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/staudenmeir/eloquent-has-many-deep-contracts/zipball/c39317b839d6123be126b9980e4a3d38310f5939", - "reference": "c39317b839d6123be126b9980e4a3d38310f5939", + "url": "https://api.github.com/repos/staudenmeir/eloquent-has-many-deep-contracts/zipball/bcbe1a921caad7201b324e297eddb696d4bd8647", + "reference": "bcbe1a921caad7201b324e297eddb696d4bd8647", "shasum": "" }, "require": { - "illuminate/database": "^10.0", - "php": "^8.1" + "illuminate/database": "^11.0", + "php": "^8.2" }, "type": "library", "autoload": { @@ -10530,40 +10098,38 @@ "description": "Contracts for staudenmeir/eloquent-has-many-deep", "support": { "issues": "https://github.com/staudenmeir/eloquent-has-many-deep-contracts/issues", - "source": "https://github.com/staudenmeir/eloquent-has-many-deep-contracts/tree/v1.1" + "source": "https://github.com/staudenmeir/eloquent-has-many-deep-contracts/tree/v1.2" }, - "time": "2023-01-18T12:43:26+00:00" + "time": "2024-01-18T01:20:44+00:00" }, { "name": "staudenmeir/laravel-adjacency-list", - "version": "v1.20.1", + "version": "v1.22", "source": { "type": "git", "url": "https://github.com/staudenmeir/laravel-adjacency-list.git", - "reference": "053c37da52caed7273eff8cc1ef434c226ad14da" + "reference": "0ec695e5d4094434f4a7adb956ebd23e228970ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/staudenmeir/laravel-adjacency-list/zipball/053c37da52caed7273eff8cc1ef434c226ad14da", - "reference": "053c37da52caed7273eff8cc1ef434c226ad14da", + "url": "https://api.github.com/repos/staudenmeir/laravel-adjacency-list/zipball/0ec695e5d4094434f4a7adb956ebd23e228970ea", + "reference": "0ec695e5d4094434f4a7adb956ebd23e228970ea", "shasum": "" }, "require": { - "illuminate/database": "^10.0", - "php": "^8.1", - "staudenmeir/eloquent-has-many-deep-contracts": "^1.1", - "staudenmeir/laravel-cte": "^1.10" + "illuminate/database": "^11.0", + "php": "^8.2", + "staudenmeir/eloquent-has-many-deep-contracts": "^1.2", + "staudenmeir/laravel-cte": "^1.11" }, "require-dev": { - "barryvdh/laravel-ide-helper": "^2.13", - "doctrine/dbal": "^3.5.2", - "harrygulliford/laravel-firebird": "^3.2", + "barryvdh/laravel-ide-helper": "^3.0", "larastan/larastan": "^2.0", "mockery/mockery": "^1.5.1", - "orchestra/testbench": "^8.15", - "phpunit/phpunit": "^10.1", - "singlestoredb/singlestoredb-laravel": "^1.5.1", - "staudenmeir/eloquent-has-many-deep": "^1.18.1" + "orchestra/testbench": "^9.0", + "phpunit/phpunit": "^10.5", + "singlestoredb/singlestoredb-laravel": "^1.5.4", + "staudenmeir/eloquent-has-many-deep": "^1.20" }, "suggest": { "barryvdh/laravel-ide-helper": "Provide type hints for attributes and relations." @@ -10594,7 +10160,7 @@ "description": "Recursive Laravel Eloquent relationships with CTEs", "support": { "issues": "https://github.com/staudenmeir/laravel-adjacency-list/issues", - "source": "https://github.com/staudenmeir/laravel-adjacency-list/tree/v1.20.1" + "source": "https://github.com/staudenmeir/laravel-adjacency-list/tree/v1.22" }, "funding": [ { @@ -10602,32 +10168,30 @@ "type": "custom" } ], - "time": "2024-04-22T07:18:03+00:00" + "time": "2024-04-19T12:11:45+00:00" }, { "name": "staudenmeir/laravel-cte", - "version": "v1.10", + "version": "v1.11", "source": { "type": "git", "url": "https://github.com/staudenmeir/laravel-cte.git", - "reference": "f308d38e3bd2ac3dd23b3ea73a5af5b8ace95f24" + "reference": "1e7063021febf9db7e47d8ea602f582b00d55da6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/staudenmeir/laravel-cte/zipball/f308d38e3bd2ac3dd23b3ea73a5af5b8ace95f24", - "reference": "f308d38e3bd2ac3dd23b3ea73a5af5b8ace95f24", + "url": "https://api.github.com/repos/staudenmeir/laravel-cte/zipball/1e7063021febf9db7e47d8ea602f582b00d55da6", + "reference": "1e7063021febf9db7e47d8ea602f582b00d55da6", "shasum": "" }, "require": { - "illuminate/database": "^10.0", - "php": "^8.1" + "illuminate/database": "^11.0", + "php": "^8.2" }, "require-dev": { - "harrygulliford/laravel-firebird": "^3.2", - "orchestra/testbench": "^8.0", + "orchestra/testbench": "^9.0", "phpstan/phpstan": "^1.10", - "phpunit/phpunit": "^10.1", - "singlestoredb/singlestoredb-laravel": "^1.5.1" + "phpunit/phpunit": "^10.5" }, "type": "library", "extra": { @@ -10655,7 +10219,7 @@ "description": "Laravel queries with common table expressions", "support": { "issues": "https://github.com/staudenmeir/laravel-cte/issues", - "source": "https://github.com/staudenmeir/laravel-cte/tree/v1.10" + "source": "https://github.com/staudenmeir/laravel-cte/tree/v1.11" }, "funding": [ { @@ -10663,51 +10227,124 @@ "type": "custom" } ], - "time": "2024-03-08T12:15:47+00:00" + "time": "2024-03-09T10:12:45+00:00" + }, + { + "name": "symfony/clock", + "version": "v7.1.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/clock.git", + "reference": "3dfc8b084853586de51dd1441c6242c76a28cbe7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/clock/zipball/3dfc8b084853586de51dd1441c6242c76a28cbe7", + "reference": "3dfc8b084853586de51dd1441c6242c76a28cbe7", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/clock": "^1.0", + "symfony/polyfill-php83": "^1.28" + }, + "provide": { + "psr/clock-implementation": "1.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/now.php" + ], + "psr-4": { + "Symfony\\Component\\Clock\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Decouples applications from the system clock", + "homepage": "https://symfony.com", + "keywords": [ + "clock", + "psr20", + "time" + ], + "support": { + "source": "https://github.com/symfony/clock/tree/v7.1.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-05-31T14:57:53+00:00" }, { "name": "symfony/console", - "version": "v6.4.9", + "version": "v7.1.2", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "6edb5363ec0c78ad4d48c5128ebf4d083d89d3a9" + "reference": "0aa29ca177f432ab68533432db0de059f39c92ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/6edb5363ec0c78ad4d48c5128ebf4d083d89d3a9", - "reference": "6edb5363ec0c78ad4d48c5128ebf4d083d89d3a9", + "url": "https://api.github.com/repos/symfony/console/zipball/0aa29ca177f432ab68533432db0de059f39c92ae", + "reference": "0aa29ca177f432ab68533432db0de059f39c92ae", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-mbstring": "~1.0", "symfony/service-contracts": "^2.5|^3", - "symfony/string": "^5.4|^6.0|^7.0" + "symfony/string": "^6.4|^7.0" }, "conflict": { - "symfony/dependency-injection": "<5.4", - "symfony/dotenv": "<5.4", - "symfony/event-dispatcher": "<5.4", - "symfony/lock": "<5.4", - "symfony/process": "<5.4" + "symfony/dependency-injection": "<6.4", + "symfony/dotenv": "<6.4", + "symfony/event-dispatcher": "<6.4", + "symfony/lock": "<6.4", + "symfony/process": "<6.4" }, "provide": { "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/event-dispatcher": "^6.4|^7.0", "symfony/http-foundation": "^6.4|^7.0", "symfony/http-kernel": "^6.4|^7.0", - "symfony/lock": "^5.4|^6.0|^7.0", - "symfony/messenger": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/stopwatch": "^5.4|^6.0|^7.0", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/lock": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0", + "symfony/var-dumper": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -10741,7 +10378,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.4.9" + "source": "https://github.com/symfony/console/tree/v7.1.2" }, "funding": [ { @@ -10757,7 +10394,7 @@ "type": "tidelift" } ], - "time": "2024-06-28T09:49:33+00:00" + "time": "2024-06-28T10:03:55+00:00" }, { "name": "symfony/css-selector", @@ -10893,22 +10530,22 @@ }, { "name": "symfony/error-handler", - "version": "v6.4.9", + "version": "v7.1.2", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "c9b7cc075b3ab484239855622ca05cb0b99c13ec" + "reference": "2412d3dddb5c9ea51a39cfbff1c565fc9844ca32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/c9b7cc075b3ab484239855622ca05cb0b99c13ec", - "reference": "c9b7cc075b3ab484239855622ca05cb0b99c13ec", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/2412d3dddb5c9ea51a39cfbff1c565fc9844ca32", + "reference": "2412d3dddb5c9ea51a39cfbff1c565fc9844ca32", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "psr/log": "^1|^2|^3", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/var-dumper": "^6.4|^7.0" }, "conflict": { "symfony/deprecation-contracts": "<2.5", @@ -10917,7 +10554,7 @@ "require-dev": { "symfony/deprecation-contracts": "^2.5|^3", "symfony/http-kernel": "^6.4|^7.0", - "symfony/serializer": "^5.4|^6.0|^7.0" + "symfony/serializer": "^6.4|^7.0" }, "bin": [ "Resources/bin/patch-type-declarations" @@ -10948,7 +10585,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.4.9" + "source": "https://github.com/symfony/error-handler/tree/v7.1.2" }, "funding": [ { @@ -10964,7 +10601,7 @@ "type": "tidelift" } ], - "time": "2024-06-21T16:04:15+00:00" + "time": "2024-06-25T19:55:06+00:00" }, { "name": "symfony/event-dispatcher", @@ -11124,23 +10761,23 @@ }, { "name": "symfony/finder", - "version": "v6.4.8", + "version": "v7.1.1", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "3ef977a43883215d560a2cecb82ec8e62131471c" + "reference": "fbb0ba67688b780efbc886c1a0a0948dcf7205d6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/3ef977a43883215d560a2cecb82ec8e62131471c", - "reference": "3ef977a43883215d560a2cecb82ec8e62131471c", + "url": "https://api.github.com/repos/symfony/finder/zipball/fbb0ba67688b780efbc886c1a0a0948dcf7205d6", + "reference": "fbb0ba67688b780efbc886c1a0a0948dcf7205d6", "shasum": "" }, "require": { - "php": ">=8.1" + "php": ">=8.2" }, "require-dev": { - "symfony/filesystem": "^6.0|^7.0" + "symfony/filesystem": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -11168,7 +10805,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.4.8" + "source": "https://github.com/symfony/finder/tree/v7.1.1" }, "funding": [ { @@ -11184,7 +10821,7 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:49:08+00:00" + "time": "2024-05-31T14:57:53+00:00" }, { "name": "symfony/html-sanitizer", @@ -11429,36 +11066,36 @@ }, { "name": "symfony/http-foundation", - "version": "v6.4.8", + "version": "v7.1.1", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "27de8cc95e11db7a50b027e71caaab9024545947" + "reference": "74d171d5b6a1d9e4bfee09a41937c17a7536acfa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/27de8cc95e11db7a50b027e71caaab9024545947", - "reference": "27de8cc95e11db7a50b027e71caaab9024545947", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/74d171d5b6a1d9e4bfee09a41937c17a7536acfa", + "reference": "74d171d5b6a1d9e4bfee09a41937c17a7536acfa", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-mbstring": "~1.1", "symfony/polyfill-php83": "^1.27" }, "conflict": { - "symfony/cache": "<6.3" + "doctrine/dbal": "<3.6", + "symfony/cache": "<6.4" }, "require-dev": { - "doctrine/dbal": "^2.13.1|^3|^4", + "doctrine/dbal": "^3.6|^4", "predis/predis": "^1.1|^2.0", - "symfony/cache": "^6.3|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/expression-language": "^5.4|^6.0|^7.0", - "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4|^7.0", - "symfony/mime": "^5.4|^6.0|^7.0", - "symfony/rate-limiter": "^5.4|^6.0|^7.0" + "symfony/cache": "^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" }, "type": "library", "autoload": { @@ -11486,7 +11123,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.4.8" + "source": "https://github.com/symfony/http-foundation/tree/v7.1.1" }, "funding": [ { @@ -11502,77 +11139,77 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:49:08+00:00" + "time": "2024-05-31T14:57:53+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.4.9", + "version": "v7.1.2", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "cc4a9bec6e1bdd2405f40277a68a6ed1bb393005" + "reference": "ae3fa717db4d41a55d14c2bd92399e37cf5bc0f6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/cc4a9bec6e1bdd2405f40277a68a6ed1bb393005", - "reference": "cc4a9bec6e1bdd2405f40277a68a6ed1bb393005", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/ae3fa717db4d41a55d14c2bd92399e37cf5bc0f6", + "reference": "ae3fa717db4d41a55d14c2bd92399e37cf5bc0f6", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "psr/log": "^1|^2|^3", "symfony/deprecation-contracts": "^2.5|^3", "symfony/error-handler": "^6.4|^7.0", - "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher": "^6.4|^7.0", "symfony/http-foundation": "^6.4|^7.0", "symfony/polyfill-ctype": "^1.8" }, "conflict": { - "symfony/browser-kit": "<5.4", - "symfony/cache": "<5.4", - "symfony/config": "<6.1", - "symfony/console": "<5.4", + "symfony/browser-kit": "<6.4", + "symfony/cache": "<6.4", + "symfony/config": "<6.4", + "symfony/console": "<6.4", "symfony/dependency-injection": "<6.4", - "symfony/doctrine-bridge": "<5.4", - "symfony/form": "<5.4", - "symfony/http-client": "<5.4", + "symfony/doctrine-bridge": "<6.4", + "symfony/form": "<6.4", + "symfony/http-client": "<6.4", "symfony/http-client-contracts": "<2.5", - "symfony/mailer": "<5.4", - "symfony/messenger": "<5.4", - "symfony/translation": "<5.4", + "symfony/mailer": "<6.4", + "symfony/messenger": "<6.4", + "symfony/translation": "<6.4", "symfony/translation-contracts": "<2.5", - "symfony/twig-bridge": "<5.4", + "symfony/twig-bridge": "<6.4", "symfony/validator": "<6.4", - "symfony/var-dumper": "<6.3", - "twig/twig": "<2.13" + "symfony/var-dumper": "<6.4", + "twig/twig": "<3.0.4" }, "provide": { "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { "psr/cache": "^1.0|^2.0|^3.0", - "symfony/browser-kit": "^5.4|^6.0|^7.0", - "symfony/clock": "^6.2|^7.0", - "symfony/config": "^6.1|^7.0", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/css-selector": "^5.4|^6.0|^7.0", + "symfony/browser-kit": "^6.4|^7.0", + "symfony/clock": "^6.4|^7.0", + "symfony/config": "^6.4|^7.0", + "symfony/console": "^6.4|^7.0", + "symfony/css-selector": "^6.4|^7.0", "symfony/dependency-injection": "^6.4|^7.0", - "symfony/dom-crawler": "^5.4|^6.0|^7.0", - "symfony/expression-language": "^5.4|^6.0|^7.0", - "symfony/finder": "^5.4|^6.0|^7.0", + "symfony/dom-crawler": "^6.4|^7.0", + "symfony/expression-language": "^6.4|^7.0", + "symfony/finder": "^6.4|^7.0", "symfony/http-client-contracts": "^2.5|^3", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/property-access": "^5.4.5|^6.0.5|^7.0", - "symfony/routing": "^5.4|^6.0|^7.0", - "symfony/serializer": "^6.4.4|^7.0.4", - "symfony/stopwatch": "^5.4|^6.0|^7.0", - "symfony/translation": "^5.4|^6.0|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/property-access": "^7.1", + "symfony/routing": "^6.4|^7.0", + "symfony/serializer": "^7.1", + "symfony/stopwatch": "^6.4|^7.0", + "symfony/translation": "^6.4|^7.0", "symfony/translation-contracts": "^2.5|^3", - "symfony/uid": "^5.4|^6.0|^7.0", + "symfony/uid": "^6.4|^7.0", "symfony/validator": "^6.4|^7.0", - "symfony/var-dumper": "^5.4|^6.4|^7.0", - "symfony/var-exporter": "^6.2|^7.0", - "twig/twig": "^2.13|^3.0.4" + "symfony/var-dumper": "^6.4|^7.0", + "symfony/var-exporter": "^6.4|^7.0", + "twig/twig": "^3.0.4" }, "type": "library", "autoload": { @@ -11600,7 +11237,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/v6.4.9" + "source": "https://github.com/symfony/http-kernel/tree/v7.1.2" }, "funding": [ { @@ -11616,43 +11253,43 @@ "type": "tidelift" } ], - "time": "2024-06-28T11:48:06+00:00" + "time": "2024-06-28T13:13:31+00:00" }, { "name": "symfony/mailer", - "version": "v6.4.9", + "version": "v7.1.2", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "e2d56f180f5b8c5e7c0fbea872bb1f529b6d6d45" + "reference": "8fcff0af9043c8f8a8e229437cea363e282f9aee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/e2d56f180f5b8c5e7c0fbea872bb1f529b6d6d45", - "reference": "e2d56f180f5b8c5e7c0fbea872bb1f529b6d6d45", + "url": "https://api.github.com/repos/symfony/mailer/zipball/8fcff0af9043c8f8a8e229437cea363e282f9aee", + "reference": "8fcff0af9043c8f8a8e229437cea363e282f9aee", "shasum": "" }, "require": { "egulias/email-validator": "^2.1.10|^3|^4", - "php": ">=8.1", + "php": ">=8.2", "psr/event-dispatcher": "^1", "psr/log": "^1|^2|^3", - "symfony/event-dispatcher": "^5.4|^6.0|^7.0", - "symfony/mime": "^6.2|^7.0", + "symfony/event-dispatcher": "^6.4|^7.0", + "symfony/mime": "^6.4|^7.0", "symfony/service-contracts": "^2.5|^3" }, "conflict": { "symfony/http-client-contracts": "<2.5", - "symfony/http-kernel": "<5.4", - "symfony/messenger": "<6.2", - "symfony/mime": "<6.2", - "symfony/twig-bridge": "<6.2.1" + "symfony/http-kernel": "<6.4", + "symfony/messenger": "<6.4", + "symfony/mime": "<6.4", + "symfony/twig-bridge": "<6.4" }, "require-dev": { - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/http-client": "^5.4|^6.0|^7.0", - "symfony/messenger": "^6.2|^7.0", - "symfony/twig-bridge": "^6.2|^7.0" + "symfony/console": "^6.4|^7.0", + "symfony/http-client": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/twig-bridge": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -11680,7 +11317,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v6.4.9" + "source": "https://github.com/symfony/mailer/tree/v7.1.2" }, "funding": [ { @@ -11696,7 +11333,7 @@ "type": "tidelift" } ], - "time": "2024-06-28T07:59:05+00:00" + "time": "2024-06-28T08:00:31+00:00" }, { "name": "symfony/mailgun-mailer", @@ -11769,21 +11406,20 @@ }, { "name": "symfony/mime", - "version": "v6.4.9", + "version": "v7.1.2", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "7d048964877324debdcb4e0549becfa064a20d43" + "reference": "26a00b85477e69a4bab63b66c5dce64f18b0cbfc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/7d048964877324debdcb4e0549becfa064a20d43", - "reference": "7d048964877324debdcb4e0549becfa064a20d43", + "url": "https://api.github.com/repos/symfony/mime/zipball/26a00b85477e69a4bab63b66c5dce64f18b0cbfc", + "reference": "26a00b85477e69a4bab63b66c5dce64f18b0cbfc", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "^1.0" }, @@ -11791,17 +11427,17 @@ "egulias/email-validator": "~3.0.0", "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", - "symfony/mailer": "<5.4", + "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": "^3.0|^4.0|^5.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.4|^7.0", - "symfony/property-access": "^5.4|^6.0|^7.0", - "symfony/property-info": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/property-access": "^6.4|^7.0", + "symfony/property-info": "^6.4|^7.0", "symfony/serializer": "^6.4.3|^7.0.3" }, "type": "library", @@ -11834,7 +11470,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.4.9" + "source": "https://github.com/symfony/mime/tree/v7.1.2" }, "funding": [ { @@ -11850,7 +11486,7 @@ "type": "tidelift" } ], - "time": "2024-06-28T09:49:33+00:00" + "time": "2024-06-28T10:03:55+00:00" }, { "name": "symfony/options-resolver", @@ -12781,20 +12417,20 @@ }, { "name": "symfony/process", - "version": "v6.4.8", + "version": "v7.1.1", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "8d92dd79149f29e89ee0f480254db595f6a6a2c5" + "reference": "febf90124323a093c7ee06fdb30e765ca3c20028" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/8d92dd79149f29e89ee0f480254db595f6a6a2c5", - "reference": "8d92dd79149f29e89ee0f480254db595f6a6a2c5", + "url": "https://api.github.com/repos/symfony/process/zipball/febf90124323a093c7ee06fdb30e765ca3c20028", + "reference": "febf90124323a093c7ee06fdb30e765ca3c20028", "shasum": "" }, "require": { - "php": ">=8.1" + "php": ">=8.2" }, "type": "library", "autoload": { @@ -12822,7 +12458,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.4.8" + "source": "https://github.com/symfony/process/tree/v7.1.1" }, "funding": [ { @@ -12838,40 +12474,38 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:49:08+00:00" + "time": "2024-05-31T14:57:53+00:00" }, { "name": "symfony/routing", - "version": "v6.4.8", + "version": "v7.1.1", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "8a40d0f9b01f0fbb80885d3ce0ad6714fb603a58" + "reference": "60c31bab5c45af7f13091b87deb708830f3c96c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/8a40d0f9b01f0fbb80885d3ce0ad6714fb603a58", - "reference": "8a40d0f9b01f0fbb80885d3ce0ad6714fb603a58", + "url": "https://api.github.com/repos/symfony/routing/zipball/60c31bab5c45af7f13091b87deb708830f3c96c0", + "reference": "60c31bab5c45af7f13091b87deb708830f3c96c0", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3" }, "conflict": { - "doctrine/annotations": "<1.12", - "symfony/config": "<6.2", - "symfony/dependency-injection": "<5.4", - "symfony/yaml": "<5.4" + "symfony/config": "<6.4", + "symfony/dependency-injection": "<6.4", + "symfony/yaml": "<6.4" }, "require-dev": { - "doctrine/annotations": "^1.12|^2", "psr/log": "^1|^2|^3", - "symfony/config": "^6.2|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/expression-language": "^5.4|^6.0|^7.0", - "symfony/http-foundation": "^5.4|^6.0|^7.0", - "symfony/yaml": "^5.4|^6.0|^7.0" + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/expression-language": "^6.4|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/yaml": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -12905,7 +12539,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v6.4.8" + "source": "https://github.com/symfony/routing/tree/v7.1.1" }, "funding": [ { @@ -12921,7 +12555,7 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:49:08+00:00" + "time": "2024-05-31T14:57:53+00:00" }, { "name": "symfony/service-contracts", @@ -13157,33 +12791,32 @@ }, { "name": "symfony/translation", - "version": "v6.4.8", + "version": "v7.1.1", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "a002933b13989fc4bd0b58e04bf7eec5210e438a" + "reference": "cf5ae136e124fc7681b34ce9fac9d5b9ae8ceee3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/a002933b13989fc4bd0b58e04bf7eec5210e438a", - "reference": "a002933b13989fc4bd0b58e04bf7eec5210e438a", + "url": "https://api.github.com/repos/symfony/translation/zipball/cf5ae136e124fc7681b34ce9fac9d5b9ae8ceee3", + "reference": "cf5ae136e124fc7681b34ce9fac9d5b9ae8ceee3", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-mbstring": "~1.0", "symfony/translation-contracts": "^2.5|^3.0" }, "conflict": { - "symfony/config": "<5.4", - "symfony/console": "<5.4", - "symfony/dependency-injection": "<5.4", + "symfony/config": "<6.4", + "symfony/console": "<6.4", + "symfony/dependency-injection": "<6.4", "symfony/http-client-contracts": "<2.5", - "symfony/http-kernel": "<5.4", + "symfony/http-kernel": "<6.4", "symfony/service-contracts": "<2.5", - "symfony/twig-bundle": "<5.4", - "symfony/yaml": "<5.4" + "symfony/twig-bundle": "<6.4", + "symfony/yaml": "<6.4" }, "provide": { "symfony/translation-implementation": "2.3|3.0" @@ -13191,17 +12824,17 @@ "require-dev": { "nikic/php-parser": "^4.18|^5.0", "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0|^7.0", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/finder": "^5.4|^6.0|^7.0", + "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/http-client-contracts": "^2.5|^3.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/intl": "^5.4|^6.0|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/intl": "^6.4|^7.0", "symfony/polyfill-intl-icu": "^1.21", - "symfony/routing": "^5.4|^6.0|^7.0", + "symfony/routing": "^6.4|^7.0", "symfony/service-contracts": "^2.5|^3", - "symfony/yaml": "^5.4|^6.0|^7.0" + "symfony/yaml": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -13232,7 +12865,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.4.8" + "source": "https://github.com/symfony/translation/tree/v7.1.1" }, "funding": [ { @@ -13248,7 +12881,7 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:49:08+00:00" + "time": "2024-05-31T14:57:53+00:00" }, { "name": "symfony/translation-contracts", @@ -13330,24 +12963,24 @@ }, { "name": "symfony/uid", - "version": "v6.4.8", + "version": "v7.1.1", "source": { "type": "git", "url": "https://github.com/symfony/uid.git", - "reference": "35904eca37a84bb764c560cbfcac9f0ac2bcdbdf" + "reference": "bb59febeecc81528ff672fad5dab7f06db8c8277" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/uid/zipball/35904eca37a84bb764c560cbfcac9f0ac2bcdbdf", - "reference": "35904eca37a84bb764c560cbfcac9f0ac2bcdbdf", + "url": "https://api.github.com/repos/symfony/uid/zipball/bb59febeecc81528ff672fad5dab7f06db8c8277", + "reference": "bb59febeecc81528ff672fad5dab7f06db8c8277", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/polyfill-uuid": "^1.15" }, "require-dev": { - "symfony/console": "^5.4|^6.0|^7.0" + "symfony/console": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -13384,7 +13017,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/uid/tree/v6.4.8" + "source": "https://github.com/symfony/uid/tree/v7.1.1" }, "funding": [ { @@ -13400,38 +13033,36 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:49:08+00:00" + "time": "2024-05-31T14:57:53+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.4.9", + "version": "v7.1.2", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "c31566e4ca944271cc8d8ac6887cbf31b8c6a172" + "reference": "5857c57c6b4b86524c08cf4f4bc95327270a816d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/c31566e4ca944271cc8d8ac6887cbf31b8c6a172", - "reference": "c31566e4ca944271cc8d8ac6887cbf31b8c6a172", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/5857c57c6b4b86524c08cf4f4bc95327270a816d", + "reference": "5857c57c6b4b86524c08cf4f4bc95327270a816d", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/console": "<5.4" + "symfony/console": "<6.4" }, "require-dev": { "ext-iconv": "*", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/error-handler": "^6.3|^7.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/uid": "^5.4|^6.0|^7.0", - "twig/twig": "^2.13|^3.0.4" + "symfony/console": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/uid": "^6.4|^7.0", + "twig/twig": "^3.0.4" }, "bin": [ "Resources/bin/var-dump-server" @@ -13469,7 +13100,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.9" + "source": "https://github.com/symfony/var-dumper/tree/v7.1.2" }, "funding": [ { @@ -13485,7 +13116,7 @@ "type": "tidelift" } ], - "time": "2024-06-27T13:23:14+00:00" + "time": "2024-06-28T08:00:31+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -14852,40 +14483,38 @@ }, { "name": "nunomaduro/collision", - "version": "v7.10.0", + "version": "v8.1.1", "source": { "type": "git", "url": "https://github.com/nunomaduro/collision.git", - "reference": "49ec67fa7b002712da8526678abd651c09f375b2" + "reference": "13e5d538b95a744d85f447a321ce10adb28e9af9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/49ec67fa7b002712da8526678abd651c09f375b2", - "reference": "49ec67fa7b002712da8526678abd651c09f375b2", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/13e5d538b95a744d85f447a321ce10adb28e9af9", + "reference": "13e5d538b95a744d85f447a321ce10adb28e9af9", "shasum": "" }, "require": { - "filp/whoops": "^2.15.3", - "nunomaduro/termwind": "^1.15.1", - "php": "^8.1.0", - "symfony/console": "^6.3.4" + "filp/whoops": "^2.15.4", + "nunomaduro/termwind": "^2.0.1", + "php": "^8.2.0", + "symfony/console": "^7.0.4" }, "conflict": { - "laravel/framework": ">=11.0.0" + "laravel/framework": "<11.0.0 || >=12.0.0", + "phpunit/phpunit": "<10.5.1 || >=12.0.0" }, "require-dev": { - "brianium/paratest": "^7.3.0", - "laravel/framework": "^10.28.0", - "laravel/pint": "^1.13.3", - "laravel/sail": "^1.25.0", - "laravel/sanctum": "^3.3.1", - "laravel/tinker": "^2.8.2", - "nunomaduro/larastan": "^2.6.4", - "orchestra/testbench-core": "^8.13.0", - "pestphp/pest": "^2.23.2", - "phpunit/phpunit": "^10.4.1", - "sebastian/environment": "^6.0.1", - "spatie/laravel-ignition": "^2.3.1" + "larastan/larastan": "^2.9.2", + "laravel/framework": "^11.0.0", + "laravel/pint": "^1.14.0", + "laravel/sail": "^1.28.2", + "laravel/sanctum": "^4.0.0", + "laravel/tinker": "^2.9.0", + "orchestra/testbench-core": "^9.0.0", + "pestphp/pest": "^2.34.1 || ^3.0.0", + "sebastian/environment": "^6.0.1 || ^7.0.0" }, "type": "library", "extra": { @@ -14893,6 +14522,9 @@ "providers": [ "NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider" ] + }, + "branch-alias": { + "dev-8.x": "8.x-dev" } }, "autoload": { @@ -14944,7 +14576,7 @@ "type": "patreon" } ], - "time": "2023-10-11T15:45:01+00:00" + "time": "2024-03-06T16:20:09+00:00" }, { "name": "pestphp/pest", diff --git a/nova/config/form-components.php b/nova/config/form-components.php deleted file mode 100644 index 7f5f11f1f..000000000 --- a/nova/config/form-components.php +++ /dev/null @@ -1,382 +0,0 @@ - [ - // Global defaults will be applied to all components. - 'global' => [ - // Show error states by default. - 'show_errors' => true, - - // Set the fields to use by default for properties on options in select components. - 'value_field' => 'id', - 'label_field' => 'name', - // Will default to label field if null - only applies to custom selects - 'selected_label_field' => null, - 'disabled_field' => 'disabled', - 'children_field' => 'children', - ], - - // Input defaults will be applied to all input types (email, password, etc.). - 'input' => [ - // Supported: 'sm', 'md', 'lg' - // Applies to all input types except for checkbox/radios. - 'size' => 'md', - - // Classes applied by default to input parent div. - // Will also apply to select. - 'container_class' => null, - - // Base input classes applied by default. - 'input_class' => null, - ], - - 'password' => [ - // Show the password reveal button by default. - 'show_toggle' => true, - - // Icon shown when password is hidden. - 'show_icon' => 'heroicon-m-eye', - - // Icon shown when password is revealed. - 'hide_icon' => 'heroicon-m-eye-slash', - ], - - 'textarea' => [ - // How many rows should the textarea have by default. - 'rows' => 3, - - // Automatically resize the textarea based on content length. - 'auto_resize' => true, - ], - - 'select' => [ - // Automatically apply a CSS class to each select. - 'input_class' => null, - ], - - // Defaults for checkbox/radios. - 'choice' => [ - // Automatically apply a CSS class to each checkbox/radio container. - 'container_class' => null, - - // Automatically apply a CSS class to each checkbox/radio input. - 'input_class' => null, - - // Supported: 'sm', 'md', 'lg' (defaults to 'sm') - 'size' => null, - - // Show the description inline with the label by default. - 'inline_description' => false, - - // Render the label on the left side of the checkbox/radio by default. - 'label_left' => false, - ], - - // Defaults for the switch toggle component. - 'switch_toggle' => [ - // Apply a CSS class to the label that contains the switch toggle globally. - 'container_class' => null, - - // Apply a CSS class to the switch toggle (not the actual input element) globally. - 'input_class' => null, - - // Set the default size of the switch toggle. - // Supported: 'sm', 'md', 'lg', (default is 'md') - 'size' => 'md', - - // Set the default color of the switch toggle. (e.g. "blue", "red", "green", etc.) - 'color' => 'primary', - - // Set the default icon to show when the switch is in an "on" state. - 'on_icon' => null, - - // Set the default icon to show when the switch is in an "off" state. - 'off_icon' => null, - ], - - // Defaults for the date picker component. - 'date_picker' => [ - // Allow date picker to open from clicking on the input by default. - 'click_opens' => false, - - // Allow user to modify the text of the input by default. - 'allow_input' => true, - - // Enable the time picker by default. - 'enable_time' => false, - - // Set the default date format. (defaults to y-m-d) - 'format' => null, - - // Set an icon to show on the date picker for an "open" button by default. - // Set to null to hide it. - 'toggle_icon' => 'heroicon-m-calendar', - - // Allow date pickers to be cleared by a clear button by default. - 'clearable' => true, - - // Set an icon to show on the date picker's clear button by default. - 'clear_icon' => 'heroicon-m-x-mark', - - // Set the default placeholder text for the date picker. - // For best results, use a translation key as it will be translated automatically by the component. - 'placeholder' => 'form-components::messages.date_picker_placeholder', - ], - - // Defaults for custom and tree select. - 'custom_select' => [ - // Apply a CSS class by default to the root element of the custom select. - // Note: this will also apply to tree-select as well. - 'container_class' => null, - - // Apply a CSS class by default to the custom select button. - 'input_class' => null, - - // Apply a CSS class by default to the custom select menu. - 'menu_class' => null, - - // Make custom selects searchable by default. - 'searchable' => true, - - // Make custom selects clearable by default. - // Will not show the clear button if the select is not optional. - 'clearable' => true, - - // Make custom selects optional by default. When marked as optional, custom select - // will allow you to clear out its value, unless it has a minimum amount of options - // required in a multi-select. - 'optional' => false, - - // Set the default icon to use to show that an option is selected. - // Set to null to disable it. - 'option_selected_icon' => 'heroicon-m-check', - - // Define the name of the icon to show on the custom select button by default. - // Set to null to hide it. - 'button_icon' => 'heroicon-m-chevron-down', - - // Define the default clear icon that will show on the custom select button and - // multi-select selected options. Set to null to hide it. - 'clear_icon' => 'heroicon-m-x-mark', - - // In a multi-select, this is the minimum amount of options that must be selected. - // Set to null or 0 to disable it. - 'min_selected' => null, - - // In a multi-select, this is the maximum amount of options that can be selected. - // Set to null to disable it. - 'max_selected' => null, - ], - - // Defaults for the tree select. - 'tree_select' => [ - // Set the default icon to use to show that an option has children. - // Icon will be rotated to indicate when the option is expanded. - 'has_child_icon' => 'heroicon-m-chevron-right', - ], - - // Defaults for the timezone select. - 'timezone_select' => [ - // Use the custom select component by default for the timezone select. - 'use_custom_select' => true, - ], - - // Defaults for the form groups. - 'form_group' => [ - // Apply a CSS class to the root form group element globally. - 'class' => null, - - // Apply a margin bottom by default to form groups (except for last child). - 'margin_bottom' => true, - - // Render a border on top of each form group by default. - // Does not render on first of type form groups in a container. - // This option only applies to inline form groups as well. - 'border' => true, - - // Make all form groups show the label inline with the input by default. - 'inline' => false, - - // Apply a CSS class to the form group label container globally. - 'label_container_class' => null, - - // Apply a CSS class to the form group content globally. - 'content_class' => null, - ], - - // Defaults for the file upload component. - 'file_upload' => [ - // Display a file upload progress bar by default. - // Only shows if a "wire:model" is present. - 'display_upload_progress' => true, - - // Use the native HTML5 progress bar by default. - // Not recommended if you need consistent styling across browsers. - 'use_native_progress_bar' => false, - - // Globally apply a CSS class to each file upload container. - 'container_class' => null, - - // Globally apply a CSS class to each file upload input. - 'input_class' => null, - ], - - // Defaults for the file pond component. - 'file_pond' => [ - // Allow drag and drop file uploads by default. - 'allow_drop' => true, - - // Limit multiple file uploads to a certain number of files by default. - // Set to null to allow unlimited files. - 'max_files' => null, - - // Configure FilePond options by default. - 'options' => [], - ], - - // Defaults for quill. - 'quill' => [ - // Automatically focus the editor on page load by default. - 'auto_focus' => false, - ], - - // Defaults for form errors. - 'form_error' => [ - // Define which HTML tag to use for the error message by default. - 'tag' => 'p', - ], - ], - - /* - |-------------------------------------------------------------------------- - | Component Aliases - |-------------------------------------------------------------------------- - | - | Here you may define aliases for components this package provides. - | For example, instead of rendering an input with , - | you may register an alias of 'input' and render it with - | instead. - | - */ - 'components' => [ - - // Base - // 'form' => Components\Form::class, - // 'form-error' => Components\FormError::class, - // 'form-group' => Components\FormGroup::class, - // 'label' => Components\Label::class, - - // Choice - // 'checkbox-group' => Components\Choice\CheckboxGroup::class, - // 'checkbox' => Components\Choice\Checkbox::class, - // 'radio' => Components\Choice\Radio::class, - 'switch-toggle' => Components\Choice\SwitchToggle::class, - - // Inputs - // 'input' => Components\Inputs\Input::class, - // 'email' => Components\Inputs\Email::class, - // 'password' => Components\Inputs\Password::class, - // 'select' => Components\Inputs\Select::class, - // 'textarea' => Components\Inputs\Textarea::class, - // 'date-picker' => Components\Inputs\DatePicker::class, - // 'custom-select' => Components\Inputs\CustomSelect::class, - // 'custom-select-option' => Components\Inputs\CustomSelectOption::class, - // 'timezone-select' => Components\Inputs\TimezoneSelect::class, - // 'tree-select' => Components\Inputs\TreeSelect::class, - // 'tree-select-option' => Components\Inputs\TreeSelectOption::class, - - // Files - // 'file-upload' => Components\Files\FileUpload::class, - // 'file-pond' => Components\Files\FilePond::class, - - // Rich Text - // 'quill' => Components\RichText\Quill::class, - - ], - - /* - |-------------------------------------------------------------------------- - | Prefix - |-------------------------------------------------------------------------- - | - | This value will be a prefix for all component aliases under the - | `components` key. This is useful if you want to avoid collisions - | with components from other libraries. - | - | If you set it to "tw", for example, you can reference it like this: - | - | - | - */ - 'prefix' => '', - - /* - |-------------------------------------------------------------------------- - | Enable Timezone Select - |-------------------------------------------------------------------------- - | - | If you don't plan on using a timezone select in your app, you can disable - | it here. This will prevent the use of app('fc-timezone'). You should also - | remove the "timezone-select" from the registered components in the config - | as well. - | - */ - 'enable_timezone' => true, - - /* - |-------------------------------------------------------------------------- - | Default Timezone Subset - |-------------------------------------------------------------------------- - | - | You may not always need the full list of timezones to choose from, - | so you may define a subset of regions to pull from instead. Set - | the value to `false` to use all regions. - | - | Example: [\Rawilk\FormComponents\Support\TimezoneRegionEnum::America->value] - | - */ - 'timezone_subset' => false, - - /* - |-------------------------------------------------------------------------- - | Global Optional Hint - |-------------------------------------------------------------------------- - | - | You may set a global "optional" hint text for all optional form inputs - | when you set the `optional` attribute on `` components - | to `true`. Set to `null` to disable showing it. The default provided - | by the package is a translation key which will be translated - | automatically for you. - | - */ - 'optional_hint_text' => 'form-components::messages.optional', - - /* - |-------------------------------------------------------------------------- - | FormComponents Assets URL - |-------------------------------------------------------------------------- - | - | This value sets the path to the FormComponents JavaScript assets, for cases - | where your app's domain root is not the correct path. By default, - | FormComponents will load its JavaScript assets from the app's - | "relative root". - | - | Examples: "/assets", "myapp.com/app", - | - */ - 'asset_url' => null, -]; diff --git a/nova/config/typist.php b/nova/config/typist.php index 332327513..d876db15b 100644 --- a/nova/config/typist.php +++ b/nova/config/typist.php @@ -1,5 +1,7 @@ whereStartsWith($key)->first(); + }); + HasMany::macro('createUpdateOrDelete', function (iterable $records) { /** @var HasMany */ $hasMany = $this; diff --git a/nova/foundation/View/Components/Dropdown.php b/nova/foundation/View/Components/Dropdown.php index 09eddd504..3237ea7a9 100644 --- a/nova/foundation/View/Components/Dropdown.php +++ b/nova/foundation/View/Components/Dropdown.php @@ -13,8 +13,7 @@ public function __construct( public bool $wide = false, public string $id = 'options-menu', public ?string $maxHeight = null - ) { - } + ) {} public function placementStyles(): string { diff --git a/nova/resources/css/components/form.css b/nova/resources/css/components/form.css index 1f7284977..336875a94 100644 --- a/nova/resources/css/components/form.css +++ b/nova/resources/css/components/form.css @@ -1,5 +1,3 @@ -@import "../../../../vendor/rawilk/laravel-form-components/resources/css/index.css"; - .form-field { @apply block flex-1 border-0 bg-transparent p-0 text-gray-900 placeholder:text-gray-400 focus:outline-none focus:ring-0 dark:text-white; } diff --git a/nova/routes/web.php b/nova/routes/web.php index 68b9f2c1f..d3f122170 100644 --- a/nova/routes/web.php +++ b/nova/routes/web.php @@ -3,9 +3,6 @@ declare(strict_types=1); use Illuminate\Support\Facades\Route; -use Nova\Characters\Models\Character; -use Nova\Departments\Models\Department; -use Nova\Forms\Models\Form; use Nova\Foundation\Http\Middleware\CheckInstallStatus; use Nova\Pages\Controllers\BasicPageController; use Nova\Pages\Controllers\PreviewBasicPageController; diff --git a/nova/src/Characters/Data/AssignCharacterOwnersData.php b/nova/src/Characters/Data/AssignCharacterOwnersData.php index e05d5adb1..dec4d8cbc 100644 --- a/nova/src/Characters/Data/AssignCharacterOwnersData.php +++ b/nova/src/Characters/Data/AssignCharacterOwnersData.php @@ -12,8 +12,7 @@ class AssignCharacterOwnersData extends Data public function __construct( public ?array $users, public ?array $primaryUsers - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Characters/Data/AssignCharacterPositionsData.php b/nova/src/Characters/Data/AssignCharacterPositionsData.php index f68052bbf..67ad6b053 100644 --- a/nova/src/Characters/Data/AssignCharacterPositionsData.php +++ b/nova/src/Characters/Data/AssignCharacterPositionsData.php @@ -11,8 +11,7 @@ class AssignCharacterPositionsData extends Data { public function __construct( public ?array $positions - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Characters/Data/CharacterData.php b/nova/src/Characters/Data/CharacterData.php index 624f23865..25cfc8d16 100644 --- a/nova/src/Characters/Data/CharacterData.php +++ b/nova/src/Characters/Data/CharacterData.php @@ -11,6 +11,5 @@ class CharacterData extends Data public function __construct( public string $name, public ?int $rank_id - ) { - } + ) {} } diff --git a/nova/src/Characters/Data/CharacterPositionsData.php b/nova/src/Characters/Data/CharacterPositionsData.php index bf5bfe9e3..2b62d6f05 100644 --- a/nova/src/Characters/Data/CharacterPositionsData.php +++ b/nova/src/Characters/Data/CharacterPositionsData.php @@ -17,8 +17,7 @@ public function __construct( public ?CharacterType $currentType = null, public ?Collection $previousPositions = null, public ?Collection $currentPositions = null - ) { - } + ) {} public function canAutoManageCurrentType(): bool { diff --git a/nova/src/Characters/Events/CharacterActivated.php b/nova/src/Characters/Events/CharacterActivated.php index 6659300af..60340c357 100644 --- a/nova/src/Characters/Events/CharacterActivated.php +++ b/nova/src/Characters/Events/CharacterActivated.php @@ -15,6 +15,5 @@ class CharacterActivated public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterApproved.php b/nova/src/Characters/Events/CharacterApproved.php index 026b1aeec..4dd475406 100644 --- a/nova/src/Characters/Events/CharacterApproved.php +++ b/nova/src/Characters/Events/CharacterApproved.php @@ -15,6 +15,5 @@ class CharacterApproved public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterCreated.php b/nova/src/Characters/Events/CharacterCreated.php index 4e94c0367..427c7627c 100644 --- a/nova/src/Characters/Events/CharacterCreated.php +++ b/nova/src/Characters/Events/CharacterCreated.php @@ -15,6 +15,5 @@ class CharacterCreated public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterCreatedByAdmin.php b/nova/src/Characters/Events/CharacterCreatedByAdmin.php index a44eb0c62..cfb93000e 100644 --- a/nova/src/Characters/Events/CharacterCreatedByAdmin.php +++ b/nova/src/Characters/Events/CharacterCreatedByAdmin.php @@ -15,6 +15,5 @@ class CharacterCreatedByAdmin public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterDeactivated.php b/nova/src/Characters/Events/CharacterDeactivated.php index f3b862600..2fb07ec79 100644 --- a/nova/src/Characters/Events/CharacterDeactivated.php +++ b/nova/src/Characters/Events/CharacterDeactivated.php @@ -15,6 +15,5 @@ class CharacterDeactivated public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterDeleted.php b/nova/src/Characters/Events/CharacterDeleted.php index 5a0e1b4fe..f1a676dc2 100644 --- a/nova/src/Characters/Events/CharacterDeleted.php +++ b/nova/src/Characters/Events/CharacterDeleted.php @@ -15,6 +15,5 @@ class CharacterDeleted public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterDeletedByAdmin.php b/nova/src/Characters/Events/CharacterDeletedByAdmin.php index a0d9b7939..a3c008ffc 100644 --- a/nova/src/Characters/Events/CharacterDeletedByAdmin.php +++ b/nova/src/Characters/Events/CharacterDeletedByAdmin.php @@ -15,6 +15,5 @@ class CharacterDeletedByAdmin public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterForceDeleted.php b/nova/src/Characters/Events/CharacterForceDeleted.php index 4e61abcb5..400bea43a 100644 --- a/nova/src/Characters/Events/CharacterForceDeleted.php +++ b/nova/src/Characters/Events/CharacterForceDeleted.php @@ -15,6 +15,5 @@ class CharacterForceDeleted public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterRestored.php b/nova/src/Characters/Events/CharacterRestored.php index 5ee1702ab..f89e4ae4f 100644 --- a/nova/src/Characters/Events/CharacterRestored.php +++ b/nova/src/Characters/Events/CharacterRestored.php @@ -15,6 +15,5 @@ class CharacterRestored public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterUpdated.php b/nova/src/Characters/Events/CharacterUpdated.php index 4ad1a508a..86f1a6385 100644 --- a/nova/src/Characters/Events/CharacterUpdated.php +++ b/nova/src/Characters/Events/CharacterUpdated.php @@ -15,6 +15,5 @@ class CharacterUpdated public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Events/CharacterUpdatedByAdmin.php b/nova/src/Characters/Events/CharacterUpdatedByAdmin.php index e8c5aa288..e7582e714 100644 --- a/nova/src/Characters/Events/CharacterUpdatedByAdmin.php +++ b/nova/src/Characters/Events/CharacterUpdatedByAdmin.php @@ -15,6 +15,5 @@ class CharacterUpdatedByAdmin public function __construct( public Character $character - ) { - } + ) {} } diff --git a/nova/src/Characters/Mail/SendCharacterApproval.php b/nova/src/Characters/Mail/SendCharacterApproval.php index 76a5a85c8..55e1d5c5b 100644 --- a/nova/src/Characters/Mail/SendCharacterApproval.php +++ b/nova/src/Characters/Mail/SendCharacterApproval.php @@ -19,8 +19,7 @@ class SendCharacterApproval extends Mailable implements ShouldQueue public function __construct( public Character $character - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Characters/Mail/SendCharacterDenial.php b/nova/src/Characters/Mail/SendCharacterDenial.php index 248bec288..9cd74dc80 100644 --- a/nova/src/Characters/Mail/SendCharacterDenial.php +++ b/nova/src/Characters/Mail/SendCharacterDenial.php @@ -19,8 +19,7 @@ class SendCharacterDenial extends Mailable implements ShouldQueue public function __construct( public Character $character - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Characters/Mail/SendRequestForCharacterApproval.php b/nova/src/Characters/Mail/SendRequestForCharacterApproval.php index 69ecd3e7c..f8d240fa1 100644 --- a/nova/src/Characters/Mail/SendRequestForCharacterApproval.php +++ b/nova/src/Characters/Mail/SendRequestForCharacterApproval.php @@ -21,8 +21,7 @@ class SendRequestForCharacterApproval extends Mailable implements ShouldQueue public function __construct( public Character $character, public User $creatingUser - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Characters/Models/Character.php b/nova/src/Characters/Models/Character.php index b08c8bc0d..8038de1e3 100644 --- a/nova/src/Characters/Models/Character.php +++ b/nova/src/Characters/Models/Character.php @@ -31,11 +31,9 @@ use Spatie\Activitylog\Traits\LogsActivity; use Spatie\MediaLibrary\HasMedia; use Spatie\ModelStates\HasStates; -use Staudenmeir\EloquentEagerLimit\HasEagerLimit; class Character extends Model implements HasMedia { - use HasEagerLimit; use HasFactory; use HasStates; use InteractsWithMedia; diff --git a/nova/src/Characters/Models/States/Status/ActiveToInactive.php b/nova/src/Characters/Models/States/Status/ActiveToInactive.php index 0a0092f55..1b73ea03f 100644 --- a/nova/src/Characters/Models/States/Status/ActiveToInactive.php +++ b/nova/src/Characters/Models/States/Status/ActiveToInactive.php @@ -11,8 +11,7 @@ class ActiveToInactive extends Transition { public function __construct( protected Character $character - ) { - } + ) {} public function handle(): Character { diff --git a/nova/src/Characters/Models/States/Status/InactiveToActive.php b/nova/src/Characters/Models/States/Status/InactiveToActive.php index 00478f9fe..b56e701ee 100644 --- a/nova/src/Characters/Models/States/Status/InactiveToActive.php +++ b/nova/src/Characters/Models/States/Status/InactiveToActive.php @@ -11,8 +11,7 @@ class InactiveToActive extends Transition { public function __construct( protected Character $character - ) { - } + ) {} public function handle(): Character { diff --git a/nova/src/Characters/Models/States/Status/PendingToActive.php b/nova/src/Characters/Models/States/Status/PendingToActive.php index 5be5d09ea..48a52bb4d 100644 --- a/nova/src/Characters/Models/States/Status/PendingToActive.php +++ b/nova/src/Characters/Models/States/Status/PendingToActive.php @@ -16,8 +16,7 @@ class PendingToActive extends Transition { public function __construct( protected Character $character - ) { - } + ) {} public function handle(): Character { diff --git a/nova/src/Characters/Notifications/CharacterRequiresApproval.php b/nova/src/Characters/Notifications/CharacterRequiresApproval.php index 23e0a2010..2d4223cf0 100644 --- a/nova/src/Characters/Notifications/CharacterRequiresApproval.php +++ b/nova/src/Characters/Notifications/CharacterRequiresApproval.php @@ -17,8 +17,7 @@ class CharacterRequiresApproval extends PreferenceBasedNotification public function __construct( public Character $character, public User $user - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Characters/Notifications/PendingCharacterApproved.php b/nova/src/Characters/Notifications/PendingCharacterApproved.php index 045ba3cfc..cac70b9ab 100644 --- a/nova/src/Characters/Notifications/PendingCharacterApproved.php +++ b/nova/src/Characters/Notifications/PendingCharacterApproved.php @@ -15,8 +15,7 @@ class PendingCharacterApproved extends PreferenceBasedNotification public function __construct( public Character $character - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Characters/Notifications/PendingCharacterDenied.php b/nova/src/Characters/Notifications/PendingCharacterDenied.php index 4467fdb3b..fff633cef 100644 --- a/nova/src/Characters/Notifications/PendingCharacterDenied.php +++ b/nova/src/Characters/Notifications/PendingCharacterDenied.php @@ -15,8 +15,7 @@ class PendingCharacterDenied extends PreferenceBasedNotification public function __construct( public Character $character - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Departments/Data/DepartmentData.php b/nova/src/Departments/Data/DepartmentData.php index ac7b284cc..c6a915366 100644 --- a/nova/src/Departments/Data/DepartmentData.php +++ b/nova/src/Departments/Data/DepartmentData.php @@ -18,8 +18,7 @@ public function __construct( #[Enum(DepartmentStatus::class)] public ?DepartmentStatus $status - ) { - } + ) {} public static function fromArray(array $data): static { diff --git a/nova/src/Departments/Data/PositionData.php b/nova/src/Departments/Data/PositionData.php index eb3faf50e..381a5987b 100644 --- a/nova/src/Departments/Data/PositionData.php +++ b/nova/src/Departments/Data/PositionData.php @@ -22,8 +22,7 @@ public function __construct( public ?PositionStatus $status, public int $department_id = 0 - ) { - } + ) {} public static function fromArray(array $data): static { diff --git a/nova/src/Departments/Events/DepartmentCreated.php b/nova/src/Departments/Events/DepartmentCreated.php index c2a5af893..2e926d749 100644 --- a/nova/src/Departments/Events/DepartmentCreated.php +++ b/nova/src/Departments/Events/DepartmentCreated.php @@ -15,6 +15,5 @@ class DepartmentCreated public function __construct( public Department $department - ) { - } + ) {} } diff --git a/nova/src/Departments/Events/DepartmentDeleted.php b/nova/src/Departments/Events/DepartmentDeleted.php index 892211851..425973eee 100644 --- a/nova/src/Departments/Events/DepartmentDeleted.php +++ b/nova/src/Departments/Events/DepartmentDeleted.php @@ -15,6 +15,5 @@ class DepartmentDeleted public function __construct( public Department $department - ) { - } + ) {} } diff --git a/nova/src/Departments/Events/DepartmentDuplicated.php b/nova/src/Departments/Events/DepartmentDuplicated.php index 74ca82eb2..adea37364 100644 --- a/nova/src/Departments/Events/DepartmentDuplicated.php +++ b/nova/src/Departments/Events/DepartmentDuplicated.php @@ -16,6 +16,5 @@ class DepartmentDuplicated public function __construct( public Department $department, public Department $original - ) { - } + ) {} } diff --git a/nova/src/Departments/Events/DepartmentUpdated.php b/nova/src/Departments/Events/DepartmentUpdated.php index c2ed24f92..0e120a3df 100644 --- a/nova/src/Departments/Events/DepartmentUpdated.php +++ b/nova/src/Departments/Events/DepartmentUpdated.php @@ -15,6 +15,5 @@ class DepartmentUpdated public function __construct( public Department $department - ) { - } + ) {} } diff --git a/nova/src/Departments/Events/PositionCreated.php b/nova/src/Departments/Events/PositionCreated.php index c103b5ef4..6b55d81eb 100644 --- a/nova/src/Departments/Events/PositionCreated.php +++ b/nova/src/Departments/Events/PositionCreated.php @@ -15,6 +15,5 @@ class PositionCreated public function __construct( public Position $position - ) { - } + ) {} } diff --git a/nova/src/Departments/Events/PositionDeleted.php b/nova/src/Departments/Events/PositionDeleted.php index 08d285701..a2435e553 100644 --- a/nova/src/Departments/Events/PositionDeleted.php +++ b/nova/src/Departments/Events/PositionDeleted.php @@ -15,6 +15,5 @@ class PositionDeleted public function __construct( public Position $position - ) { - } + ) {} } diff --git a/nova/src/Departments/Events/PositionDuplicated.php b/nova/src/Departments/Events/PositionDuplicated.php index 00583cd34..6a2e9a06c 100644 --- a/nova/src/Departments/Events/PositionDuplicated.php +++ b/nova/src/Departments/Events/PositionDuplicated.php @@ -16,6 +16,5 @@ class PositionDuplicated public function __construct( public Position $position, public Position $original - ) { - } + ) {} } diff --git a/nova/src/Departments/Events/PositionUpdated.php b/nova/src/Departments/Events/PositionUpdated.php index b6676e6e0..dccbf7427 100644 --- a/nova/src/Departments/Events/PositionUpdated.php +++ b/nova/src/Departments/Events/PositionUpdated.php @@ -15,6 +15,5 @@ class PositionUpdated public function __construct( public Position $position - ) { - } + ) {} } diff --git a/nova/src/Departments/Requests/UpdateDepartmentRequest.php b/nova/src/Departments/Requests/UpdateDepartmentRequest.php index 4f6ba77b0..a6d8cd42b 100644 --- a/nova/src/Departments/Requests/UpdateDepartmentRequest.php +++ b/nova/src/Departments/Requests/UpdateDepartmentRequest.php @@ -4,6 +4,4 @@ namespace Nova\Departments\Requests; -class UpdateDepartmentRequest extends StoreDepartmentRequest -{ -} +class UpdateDepartmentRequest extends StoreDepartmentRequest {} diff --git a/nova/src/Departments/Requests/UpdatePositionRequest.php b/nova/src/Departments/Requests/UpdatePositionRequest.php index 9bb3ea039..fde188d77 100644 --- a/nova/src/Departments/Requests/UpdatePositionRequest.php +++ b/nova/src/Departments/Requests/UpdatePositionRequest.php @@ -4,6 +4,4 @@ namespace Nova\Departments\Requests; -class UpdatePositionRequest extends StorePositionRequest -{ -} +class UpdatePositionRequest extends StorePositionRequest {} diff --git a/nova/src/DomainServiceProvider.php b/nova/src/DomainServiceProvider.php index 600c83049..40e7d79ed 100644 --- a/nova/src/DomainServiceProvider.php +++ b/nova/src/DomainServiceProvider.php @@ -76,13 +76,9 @@ public function spotlightCommands(): array return []; } - public function domainBooting(): void - { - } + public function domainBooting(): void {} - public function domainBooted(): void - { - } + public function domainBooted(): void {} /** * Allow a domain service provider to specify additional actions to run @@ -90,9 +86,7 @@ public function domainBooted(): void * * @return void */ - protected function registeringDomain() - { - } + protected function registeringDomain() {} /** * Allow a domain service provider to specify additional actions to run @@ -100,9 +94,7 @@ protected function registeringDomain() * * @return void */ - protected function registeredDomain() - { - } + protected function registeredDomain() {} private function registerSpotlightCommands(): void { diff --git a/nova/src/Forms/Data/FormData.php b/nova/src/Forms/Data/FormData.php index e4d88a9e7..72466ccd0 100644 --- a/nova/src/Forms/Data/FormData.php +++ b/nova/src/Forms/Data/FormData.php @@ -17,6 +17,5 @@ public function __construct( public string $type, public ?string $description, public ?FormOptions $options, - ) { - } + ) {} } diff --git a/nova/src/Forms/Data/FormFieldsData.php b/nova/src/Forms/Data/FormFieldsData.php index 036f229aa..8b719adb3 100644 --- a/nova/src/Forms/Data/FormFieldsData.php +++ b/nova/src/Forms/Data/FormFieldsData.php @@ -10,6 +10,5 @@ class FormFieldsData extends Data { public function __construct( public array $fields - ) { - } + ) {} } diff --git a/nova/src/Forms/Events/FormCreated.php b/nova/src/Forms/Events/FormCreated.php index d9c6da09e..2030b9e34 100644 --- a/nova/src/Forms/Events/FormCreated.php +++ b/nova/src/Forms/Events/FormCreated.php @@ -15,6 +15,5 @@ class FormCreated public function __construct( public Form $form - ) { - } + ) {} } diff --git a/nova/src/Forms/Events/FormDeleted.php b/nova/src/Forms/Events/FormDeleted.php index 2745628fd..4f414ddaa 100644 --- a/nova/src/Forms/Events/FormDeleted.php +++ b/nova/src/Forms/Events/FormDeleted.php @@ -15,6 +15,5 @@ class FormDeleted public function __construct( public Form $form - ) { - } + ) {} } diff --git a/nova/src/Forms/Events/FormDuplicated.php b/nova/src/Forms/Events/FormDuplicated.php index 4d287a440..8f4a9a01e 100644 --- a/nova/src/Forms/Events/FormDuplicated.php +++ b/nova/src/Forms/Events/FormDuplicated.php @@ -16,6 +16,5 @@ class FormDuplicated public function __construct( public Form $form, public Form $original - ) { - } + ) {} } diff --git a/nova/src/Forms/Events/FormUpdated.php b/nova/src/Forms/Events/FormUpdated.php index 9d036a45e..7487bea2c 100644 --- a/nova/src/Forms/Events/FormUpdated.php +++ b/nova/src/Forms/Events/FormUpdated.php @@ -15,6 +15,5 @@ class FormUpdated public function __construct( public Form $form - ) { - } + ) {} } diff --git a/nova/src/Notes/Data/NoteData.php b/nova/src/Notes/Data/NoteData.php index f185f0e2a..a056f8a63 100644 --- a/nova/src/Notes/Data/NoteData.php +++ b/nova/src/Notes/Data/NoteData.php @@ -15,8 +15,7 @@ public function __construct( #[MapInputName('editor-content')] public ?string $content - ) { - } + ) {} public function user(): User { diff --git a/nova/src/Notes/Events/NoteCreated.php b/nova/src/Notes/Events/NoteCreated.php index 0fcc2c1d8..b90c10ffc 100644 --- a/nova/src/Notes/Events/NoteCreated.php +++ b/nova/src/Notes/Events/NoteCreated.php @@ -15,6 +15,5 @@ class NoteCreated public function __construct( public Note $note - ) { - } + ) {} } diff --git a/nova/src/Notes/Events/NoteDeleted.php b/nova/src/Notes/Events/NoteDeleted.php index a290b8c4e..09b691693 100644 --- a/nova/src/Notes/Events/NoteDeleted.php +++ b/nova/src/Notes/Events/NoteDeleted.php @@ -15,6 +15,5 @@ class NoteDeleted public function __construct( public Note $note - ) { - } + ) {} } diff --git a/nova/src/Notes/Events/NoteDuplicated.php b/nova/src/Notes/Events/NoteDuplicated.php index 53250f58d..8c8400134 100644 --- a/nova/src/Notes/Events/NoteDuplicated.php +++ b/nova/src/Notes/Events/NoteDuplicated.php @@ -16,6 +16,5 @@ class NoteDuplicated public function __construct( public Note $note, public Note $original - ) { - } + ) {} } diff --git a/nova/src/Notes/Events/NoteUpdated.php b/nova/src/Notes/Events/NoteUpdated.php index 3006a6268..1e6eb8e67 100644 --- a/nova/src/Notes/Events/NoteUpdated.php +++ b/nova/src/Notes/Events/NoteUpdated.php @@ -15,6 +15,5 @@ class NoteUpdated public function __construct( public Note $note - ) { - } + ) {} } diff --git a/nova/src/Pages/Data/PageBlocksData.php b/nova/src/Pages/Data/PageBlocksData.php index e1788b0a3..09b0727ee 100644 --- a/nova/src/Pages/Data/PageBlocksData.php +++ b/nova/src/Pages/Data/PageBlocksData.php @@ -10,6 +10,5 @@ class PageBlocksData extends Data { public function __construct( public array $blocks - ) { - } + ) {} } diff --git a/nova/src/Pages/Data/PageData.php b/nova/src/Pages/Data/PageData.php index 6148b7d0a..585f4c41a 100644 --- a/nova/src/Pages/Data/PageData.php +++ b/nova/src/Pages/Data/PageData.php @@ -19,6 +19,5 @@ public function __construct( public PageVerb $verb, public ?string $resource - ) { - } + ) {} } diff --git a/nova/src/Pages/Events/PageCreated.php b/nova/src/Pages/Events/PageCreated.php index 18462b667..745e2af71 100644 --- a/nova/src/Pages/Events/PageCreated.php +++ b/nova/src/Pages/Events/PageCreated.php @@ -15,6 +15,5 @@ class PageCreated public function __construct( public Page $page - ) { - } + ) {} } diff --git a/nova/src/Pages/Events/PageDeleted.php b/nova/src/Pages/Events/PageDeleted.php index 0873beaac..64cf8ee4d 100644 --- a/nova/src/Pages/Events/PageDeleted.php +++ b/nova/src/Pages/Events/PageDeleted.php @@ -15,6 +15,5 @@ class PageDeleted public function __construct( public Page $page - ) { - } + ) {} } diff --git a/nova/src/Pages/Events/PageDuplicated.php b/nova/src/Pages/Events/PageDuplicated.php index fa248927c..01828088d 100644 --- a/nova/src/Pages/Events/PageDuplicated.php +++ b/nova/src/Pages/Events/PageDuplicated.php @@ -16,6 +16,5 @@ class PageDuplicated public function __construct( public Page $page, public Page $original - ) { - } + ) {} } diff --git a/nova/src/Pages/Events/PageUpdated.php b/nova/src/Pages/Events/PageUpdated.php index 129bef6e5..f42d3e020 100644 --- a/nova/src/Pages/Events/PageUpdated.php +++ b/nova/src/Pages/Events/PageUpdated.php @@ -15,6 +15,5 @@ class PageUpdated public function __construct( public Page $page - ) { - } + ) {} } diff --git a/nova/src/Pages/Livewire/PageDesigner.php b/nova/src/Pages/Livewire/PageDesigner.php index edb4da645..30c03cf49 100644 --- a/nova/src/Pages/Livewire/PageDesigner.php +++ b/nova/src/Pages/Livewire/PageDesigner.php @@ -5,7 +5,6 @@ namespace Nova\Pages\Livewire; use Awcodes\Scribble\ScribbleEditor; -use Awcodes\Typist\Actions\Alert; use Awcodes\Typist\TypistEditor; use Filament\Forms\Form; use Illuminate\Support\Facades\Cache; diff --git a/nova/src/Pages/Requests/UpdatePageRequest.php b/nova/src/Pages/Requests/UpdatePageRequest.php index de0d8efd1..20109abec 100644 --- a/nova/src/Pages/Requests/UpdatePageRequest.php +++ b/nova/src/Pages/Requests/UpdatePageRequest.php @@ -4,6 +4,4 @@ namespace Nova\Pages\Requests; -class UpdatePageRequest extends StorePageRequest -{ -} +class UpdatePageRequest extends StorePageRequest {} diff --git a/nova/src/Ranks/Data/RankGroupData.php b/nova/src/Ranks/Data/RankGroupData.php index 671e30bc3..797457dca 100644 --- a/nova/src/Ranks/Data/RankGroupData.php +++ b/nova/src/Ranks/Data/RankGroupData.php @@ -17,6 +17,5 @@ public function __construct( public ?RankGroupStatus $status, public ?string $base_image - ) { - } + ) {} } diff --git a/nova/src/Ranks/Data/RankItemData.php b/nova/src/Ranks/Data/RankItemData.php index 58cacf9f0..853681328 100644 --- a/nova/src/Ranks/Data/RankItemData.php +++ b/nova/src/Ranks/Data/RankItemData.php @@ -21,6 +21,5 @@ public function __construct( #[Enum(RankItemStatus::class)] public ?RankItemStatus $status - ) { - } + ) {} } diff --git a/nova/src/Ranks/Data/RankNameData.php b/nova/src/Ranks/Data/RankNameData.php index cfe74e37e..85d3467eb 100644 --- a/nova/src/Ranks/Data/RankNameData.php +++ b/nova/src/Ranks/Data/RankNameData.php @@ -15,6 +15,5 @@ public function __construct( #[Enum(RankNameStatus::class)] public ?RankNameStatus $status - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankGroupCreated.php b/nova/src/Ranks/Events/RankGroupCreated.php index 92ae85423..e7f39e46b 100644 --- a/nova/src/Ranks/Events/RankGroupCreated.php +++ b/nova/src/Ranks/Events/RankGroupCreated.php @@ -15,6 +15,5 @@ class RankGroupCreated public function __construct( public RankGroup $group - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankGroupDeleted.php b/nova/src/Ranks/Events/RankGroupDeleted.php index 1829685dd..e606a1231 100644 --- a/nova/src/Ranks/Events/RankGroupDeleted.php +++ b/nova/src/Ranks/Events/RankGroupDeleted.php @@ -15,6 +15,5 @@ class RankGroupDeleted public function __construct( public RankGroup $group - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankGroupDuplicated.php b/nova/src/Ranks/Events/RankGroupDuplicated.php index af99c744d..012735bbe 100644 --- a/nova/src/Ranks/Events/RankGroupDuplicated.php +++ b/nova/src/Ranks/Events/RankGroupDuplicated.php @@ -16,6 +16,5 @@ class RankGroupDuplicated public function __construct( public RankGroup $group, public RankGroup $original - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankGroupUpdated.php b/nova/src/Ranks/Events/RankGroupUpdated.php index 37cd171d5..bb54e6d03 100644 --- a/nova/src/Ranks/Events/RankGroupUpdated.php +++ b/nova/src/Ranks/Events/RankGroupUpdated.php @@ -15,6 +15,5 @@ class RankGroupUpdated public function __construct( public RankGroup $group - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankItemCreated.php b/nova/src/Ranks/Events/RankItemCreated.php index 6430c01f3..50f536a01 100644 --- a/nova/src/Ranks/Events/RankItemCreated.php +++ b/nova/src/Ranks/Events/RankItemCreated.php @@ -15,6 +15,5 @@ class RankItemCreated public function __construct( public RankItem $item - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankItemDeleted.php b/nova/src/Ranks/Events/RankItemDeleted.php index bc23296fb..b131c001e 100644 --- a/nova/src/Ranks/Events/RankItemDeleted.php +++ b/nova/src/Ranks/Events/RankItemDeleted.php @@ -15,6 +15,5 @@ class RankItemDeleted public function __construct( public RankItem $item - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankItemUpdated.php b/nova/src/Ranks/Events/RankItemUpdated.php index 182fe2b34..d7d20c42f 100644 --- a/nova/src/Ranks/Events/RankItemUpdated.php +++ b/nova/src/Ranks/Events/RankItemUpdated.php @@ -15,6 +15,5 @@ class RankItemUpdated public function __construct( public RankItem $item - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankNameCreated.php b/nova/src/Ranks/Events/RankNameCreated.php index 6d7c66b2e..396980407 100644 --- a/nova/src/Ranks/Events/RankNameCreated.php +++ b/nova/src/Ranks/Events/RankNameCreated.php @@ -15,6 +15,5 @@ class RankNameCreated public function __construct( public RankName $name - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankNameDeleted.php b/nova/src/Ranks/Events/RankNameDeleted.php index 3662f4fb0..034d99963 100644 --- a/nova/src/Ranks/Events/RankNameDeleted.php +++ b/nova/src/Ranks/Events/RankNameDeleted.php @@ -15,6 +15,5 @@ class RankNameDeleted public function __construct( public RankName $name - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankNameDuplicated.php b/nova/src/Ranks/Events/RankNameDuplicated.php index 6af6c4782..4477ceb42 100644 --- a/nova/src/Ranks/Events/RankNameDuplicated.php +++ b/nova/src/Ranks/Events/RankNameDuplicated.php @@ -16,6 +16,5 @@ class RankNameDuplicated public function __construct( public RankName $name, public RankName $original - ) { - } + ) {} } diff --git a/nova/src/Ranks/Events/RankNameUpdated.php b/nova/src/Ranks/Events/RankNameUpdated.php index c04d281fa..dd65034cd 100644 --- a/nova/src/Ranks/Events/RankNameUpdated.php +++ b/nova/src/Ranks/Events/RankNameUpdated.php @@ -15,6 +15,5 @@ class RankNameUpdated public function __construct( public RankName $name - ) { - } + ) {} } diff --git a/nova/src/Ranks/Requests/UpdateRankGroupRequest.php b/nova/src/Ranks/Requests/UpdateRankGroupRequest.php index b605e4b5e..aecd4bdcf 100644 --- a/nova/src/Ranks/Requests/UpdateRankGroupRequest.php +++ b/nova/src/Ranks/Requests/UpdateRankGroupRequest.php @@ -4,6 +4,4 @@ namespace Nova\Ranks\Requests; -class UpdateRankGroupRequest extends StoreRankGroupRequest -{ -} +class UpdateRankGroupRequest extends StoreRankGroupRequest {} diff --git a/nova/src/Ranks/Requests/UpdateRankItemRequest.php b/nova/src/Ranks/Requests/UpdateRankItemRequest.php index 3d63c292d..7f8ffa35c 100644 --- a/nova/src/Ranks/Requests/UpdateRankItemRequest.php +++ b/nova/src/Ranks/Requests/UpdateRankItemRequest.php @@ -4,6 +4,4 @@ namespace Nova\Ranks\Requests; -class UpdateRankItemRequest extends StoreRankItemRequest -{ -} +class UpdateRankItemRequest extends StoreRankItemRequest {} diff --git a/nova/src/Ranks/Requests/UpdateRankNameRequest.php b/nova/src/Ranks/Requests/UpdateRankNameRequest.php index ecaf36362..ccd720321 100644 --- a/nova/src/Ranks/Requests/UpdateRankNameRequest.php +++ b/nova/src/Ranks/Requests/UpdateRankNameRequest.php @@ -4,6 +4,4 @@ namespace Nova\Ranks\Requests; -class UpdateRankNameRequest extends StoreRankNameRequest -{ -} +class UpdateRankNameRequest extends StoreRankNameRequest {} diff --git a/nova/src/Roles/Data/RoleData.php b/nova/src/Roles/Data/RoleData.php index 5893e6982..64706b360 100644 --- a/nova/src/Roles/Data/RoleData.php +++ b/nova/src/Roles/Data/RoleData.php @@ -19,8 +19,7 @@ public function __construct( public string $displayName, public ?string $description, public bool $isDefault = false, - ) { - } + ) {} public static function rules(ValidationContext $context): array { diff --git a/nova/src/Roles/Data/RolePermissionsData.php b/nova/src/Roles/Data/RolePermissionsData.php index 168ec2aa2..5f295fcc9 100644 --- a/nova/src/Roles/Data/RolePermissionsData.php +++ b/nova/src/Roles/Data/RolePermissionsData.php @@ -11,8 +11,7 @@ class RolePermissionsData extends Data { public function __construct( public ?array $permissions - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Roles/Data/RoleUsersData.php b/nova/src/Roles/Data/RoleUsersData.php index 46385e431..129059277 100644 --- a/nova/src/Roles/Data/RoleUsersData.php +++ b/nova/src/Roles/Data/RoleUsersData.php @@ -11,8 +11,7 @@ class RoleUsersData extends Data { public function __construct( public ?array $users - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Roles/Events/RoleCreated.php b/nova/src/Roles/Events/RoleCreated.php index 8150def7e..d45e43de0 100644 --- a/nova/src/Roles/Events/RoleCreated.php +++ b/nova/src/Roles/Events/RoleCreated.php @@ -15,6 +15,5 @@ class RoleCreated public function __construct( public Role $role - ) { - } + ) {} } diff --git a/nova/src/Roles/Events/RoleDeleted.php b/nova/src/Roles/Events/RoleDeleted.php index e29dfdd52..1e77991b3 100644 --- a/nova/src/Roles/Events/RoleDeleted.php +++ b/nova/src/Roles/Events/RoleDeleted.php @@ -15,6 +15,5 @@ class RoleDeleted public function __construct( public Role $role - ) { - } + ) {} } diff --git a/nova/src/Roles/Events/RoleDuplicated.php b/nova/src/Roles/Events/RoleDuplicated.php index d66354469..c3c5b6170 100644 --- a/nova/src/Roles/Events/RoleDuplicated.php +++ b/nova/src/Roles/Events/RoleDuplicated.php @@ -16,6 +16,5 @@ class RoleDuplicated public function __construct( public Role $role, public Role $original - ) { - } + ) {} } diff --git a/nova/src/Roles/Events/RoleUpdated.php b/nova/src/Roles/Events/RoleUpdated.php index 8498de8db..0b8bb4125 100644 --- a/nova/src/Roles/Events/RoleUpdated.php +++ b/nova/src/Roles/Events/RoleUpdated.php @@ -15,6 +15,5 @@ class RoleUpdated public function __construct( public Role $role - ) { - } + ) {} } diff --git a/nova/src/Roles/Models/Role.php b/nova/src/Roles/Models/Role.php index 3a338e92c..7725360e6 100644 --- a/nova/src/Roles/Models/Role.php +++ b/nova/src/Roles/Models/Role.php @@ -14,11 +14,9 @@ use Spatie\Activitylog\Traits\LogsActivity; use Spatie\EloquentSortable\Sortable; use Spatie\EloquentSortable\SortableTrait; -use Staudenmeir\EloquentEagerLimit\HasEagerLimit; class Role extends LaratrustRole implements Sortable { - use HasEagerLimit; use HasFactory; use LogsActivity; use SortableTrait; diff --git a/nova/src/Roles/Requests/UpdateRoleRequest.php b/nova/src/Roles/Requests/UpdateRoleRequest.php index 313ad0e0e..0ad07e5bf 100644 --- a/nova/src/Roles/Requests/UpdateRoleRequest.php +++ b/nova/src/Roles/Requests/UpdateRoleRequest.php @@ -4,6 +4,4 @@ namespace Nova\Roles\Requests; -class UpdateRoleRequest extends StoreRoleRequest -{ -} +class UpdateRoleRequest extends StoreRoleRequest {} diff --git a/nova/src/Settings/Data/Appearance.php b/nova/src/Settings/Data/Appearance.php index 20f367a7e..9b9672c3a 100644 --- a/nova/src/Settings/Data/Appearance.php +++ b/nova/src/Settings/Data/Appearance.php @@ -27,8 +27,7 @@ public function __construct( public string $colorsInfo, public FontFamilies $adminFonts, public bool $panda, - ) { - } + ) {} public function getColors(): array { diff --git a/nova/src/Settings/Data/Characters.php b/nova/src/Settings/Data/Characters.php index ebc732f5d..b829f98c5 100644 --- a/nova/src/Settings/Data/Characters.php +++ b/nova/src/Settings/Data/Characters.php @@ -19,8 +19,7 @@ public function __construct( public bool $autoAvailabilityForPrimary, public bool $autoAvailabilityForSecondary, public bool $autoAvailabilityForSupport - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Settings/Data/ContentRating.php b/nova/src/Settings/Data/ContentRating.php index 387f278a4..bb63f1c02 100644 --- a/nova/src/Settings/Data/ContentRating.php +++ b/nova/src/Settings/Data/ContentRating.php @@ -17,8 +17,7 @@ public function __construct( public ?string $description_3, public ?int $warning_threshold, public ?string $warning_threshold_message, - ) { - } + ) {} public static function fromArray(array $data): static { diff --git a/nova/src/Settings/Data/ContentRatings.php b/nova/src/Settings/Data/ContentRatings.php index 8044295ef..761a3d65d 100644 --- a/nova/src/Settings/Data/ContentRatings.php +++ b/nova/src/Settings/Data/ContentRatings.php @@ -14,8 +14,7 @@ public function __construct( public ?ContentRating $language, public ?ContentRating $sex, public ?ContentRating $violence, - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Settings/Data/Discord.php b/nova/src/Settings/Data/Discord.php index 14483efc8..f7675ffd6 100644 --- a/nova/src/Settings/Data/Discord.php +++ b/nova/src/Settings/Data/Discord.php @@ -12,6 +12,5 @@ class Discord extends Data implements Arrayable public function __construct( public ?string $color, public ?string $webhook, - ) { - } + ) {} } diff --git a/nova/src/Settings/Data/Email.php b/nova/src/Settings/Data/Email.php index 21d056b84..b9f15ed3b 100644 --- a/nova/src/Settings/Data/Email.php +++ b/nova/src/Settings/Data/Email.php @@ -16,6 +16,5 @@ public function __construct( public ?string $subjectPrefix, public ?string $replyTo, public ?string $imagePath - ) { - } + ) {} } diff --git a/nova/src/Settings/Data/EmailConfiguration.php b/nova/src/Settings/Data/EmailConfiguration.php index cd9326db9..866015dcb 100644 --- a/nova/src/Settings/Data/EmailConfiguration.php +++ b/nova/src/Settings/Data/EmailConfiguration.php @@ -37,6 +37,5 @@ public function __construct( public ?string $awsAccessKeyId, public ?string $awsSecretAccessKey, public ?string $awsDefaultRegion - ) { - } + ) {} } diff --git a/nova/src/Settings/Data/EnvironmentConfiguration.php b/nova/src/Settings/Data/EnvironmentConfiguration.php index 7fec4f79e..599a9e5d7 100644 --- a/nova/src/Settings/Data/EnvironmentConfiguration.php +++ b/nova/src/Settings/Data/EnvironmentConfiguration.php @@ -16,8 +16,7 @@ public function __construct( public ?string $url, public ?string $environment, public ?int $debugMode - ) { - } + ) {} public function debugMode(): string { diff --git a/nova/src/Settings/Data/FontFamilies.php b/nova/src/Settings/Data/FontFamilies.php index 4c3c12d33..474b37933 100644 --- a/nova/src/Settings/Data/FontFamilies.php +++ b/nova/src/Settings/Data/FontFamilies.php @@ -19,8 +19,7 @@ public function __construct( public string $headerFamily, public string $bodyProvider, public string $bodyFamily - ) { - } + ) {} public function getFontHtml(): Htmlable { diff --git a/nova/src/Settings/Data/General.php b/nova/src/Settings/Data/General.php index 4611c93ce..ec0954994 100644 --- a/nova/src/Settings/Data/General.php +++ b/nova/src/Settings/Data/General.php @@ -18,8 +18,7 @@ public function __construct( public string $gameName = '', public string $dateFormat = '', public string $dateFormatTags = '', - ) { - } + ) {} public function jsDateFormat(): string { diff --git a/nova/src/Settings/Data/MetaTags.php b/nova/src/Settings/Data/MetaTags.php index aad7b3e6e..c0f4cbcf3 100644 --- a/nova/src/Settings/Data/MetaTags.php +++ b/nova/src/Settings/Data/MetaTags.php @@ -7,6 +7,4 @@ use Illuminate\Contracts\Support\Arrayable; use Spatie\LaravelData\Data; -class MetaTags extends Data implements Arrayable -{ -} +class MetaTags extends Data implements Arrayable {} diff --git a/nova/src/Settings/Data/PostingActivity.php b/nova/src/Settings/Data/PostingActivity.php index 046aebea1..8d5d7355a 100644 --- a/nova/src/Settings/Data/PostingActivity.php +++ b/nova/src/Settings/Data/PostingActivity.php @@ -16,8 +16,7 @@ public function __construct( public int $requiredActivity, public int $wordCountPostConversion, public string $wordCountStrategy, - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Stories/Data/Field.php b/nova/src/Stories/Data/Field.php index 9f65d4a8a..48ed76627 100644 --- a/nova/src/Stories/Data/Field.php +++ b/nova/src/Stories/Data/Field.php @@ -14,8 +14,7 @@ class Field extends Data implements Arrayable public function __construct( public bool $enabled, public bool $required, - ) { - } + ) {} public static function fromArray(array $data): static { diff --git a/nova/src/Stories/Data/Fields.php b/nova/src/Stories/Data/Fields.php index 082b8bb43..69b79a583 100644 --- a/nova/src/Stories/Data/Fields.php +++ b/nova/src/Stories/Data/Fields.php @@ -18,8 +18,7 @@ public function __construct( public Field $content, public Field $rating, public Field $summary, - ) { - } + ) {} public function enabledFields(): Collection { diff --git a/nova/src/Stories/Data/Options.php b/nova/src/Stories/Data/Options.php index 3ec99feaa..0c29b67cd 100644 --- a/nova/src/Stories/Data/Options.php +++ b/nova/src/Stories/Data/Options.php @@ -24,8 +24,7 @@ public function __construct( #[WithCast(EnumCast::class, type: PostEditTimeframe::class)] public PostEditTimeframe $editTimeframe, - ) { - } + ) {} public static function fromArray(array $data): static { diff --git a/nova/src/Stories/Data/PostAuthorsData.php b/nova/src/Stories/Data/PostAuthorsData.php index a500a4b84..331318f12 100644 --- a/nova/src/Stories/Data/PostAuthorsData.php +++ b/nova/src/Stories/Data/PostAuthorsData.php @@ -14,8 +14,7 @@ class PostAuthorsData extends Data public function __construct( public ?Collection $characters, public ?Collection $users, - ) { - } + ) {} public static function fromArray(array $data): static { diff --git a/nova/src/Stories/Data/PostData.php b/nova/src/Stories/Data/PostData.php index 7af3f1da4..4d1fc94e2 100644 --- a/nova/src/Stories/Data/PostData.php +++ b/nova/src/Stories/Data/PostData.php @@ -21,8 +21,7 @@ public function __construct( public int $rating_language = 1, public int $rating_sex = 1, public int $rating_violence = 1, - ) { - } + ) {} public static function fromArray(array $array): static { diff --git a/nova/src/Stories/Data/PostPositionData.php b/nova/src/Stories/Data/PostPositionData.php index 02f3c7a01..c3701fbe8 100644 --- a/nova/src/Stories/Data/PostPositionData.php +++ b/nova/src/Stories/Data/PostPositionData.php @@ -13,8 +13,7 @@ public function __construct( public ?string $direction, public ?Post $neighbor, public bool $hasPositionChange, - ) { - } + ) {} public static function fromArray(array $array): static { diff --git a/nova/src/Stories/Data/PostStatusData.php b/nova/src/Stories/Data/PostStatusData.php index 86b8e3c8d..8ffeaa8f6 100644 --- a/nova/src/Stories/Data/PostStatusData.php +++ b/nova/src/Stories/Data/PostStatusData.php @@ -10,6 +10,5 @@ class PostStatusData extends Data { public function __construct( public string $status - ) { - } + ) {} } diff --git a/nova/src/Stories/Data/PostTypeData.php b/nova/src/Stories/Data/PostTypeData.php index 5d1aae4d9..6e1d3b93b 100644 --- a/nova/src/Stories/Data/PostTypeData.php +++ b/nova/src/Stories/Data/PostTypeData.php @@ -33,6 +33,5 @@ public function __construct( public ?string $icon, public ?string $color, - ) { - } + ) {} } diff --git a/nova/src/Stories/Data/StoryData.php b/nova/src/Stories/Data/StoryData.php index f19b38873..7f31f2ea1 100644 --- a/nova/src/Stories/Data/StoryData.php +++ b/nova/src/Stories/Data/StoryData.php @@ -19,8 +19,7 @@ public function __construct( public ?string $endedAt = null, public ?int $parentId = null, public ?string $summary = null - ) { - } + ) {} public function parentStory(): Story { diff --git a/nova/src/Stories/Data/StoryPositionData.php b/nova/src/Stories/Data/StoryPositionData.php index 9ca8df0e1..4a6bdf31b 100644 --- a/nova/src/Stories/Data/StoryPositionData.php +++ b/nova/src/Stories/Data/StoryPositionData.php @@ -20,8 +20,7 @@ public function __construct( #[MapInputName('has_position_change')] public bool $hasPositionChange = false - ) { - } + ) {} public static function fromRequest(Request $request): self { diff --git a/nova/src/Stories/Events/PostPublished.php b/nova/src/Stories/Events/PostPublished.php index f2166d3ec..89c1957dc 100644 --- a/nova/src/Stories/Events/PostPublished.php +++ b/nova/src/Stories/Events/PostPublished.php @@ -15,6 +15,5 @@ class PostPublished public function __construct( public Post $post - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/PostTypeCreated.php b/nova/src/Stories/Events/PostTypeCreated.php index 8e17a2304..278ab707e 100644 --- a/nova/src/Stories/Events/PostTypeCreated.php +++ b/nova/src/Stories/Events/PostTypeCreated.php @@ -15,6 +15,5 @@ class PostTypeCreated public function __construct( public PostType $postType - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/PostTypeDeleted.php b/nova/src/Stories/Events/PostTypeDeleted.php index 98b3909a1..d969240d5 100644 --- a/nova/src/Stories/Events/PostTypeDeleted.php +++ b/nova/src/Stories/Events/PostTypeDeleted.php @@ -15,6 +15,5 @@ class PostTypeDeleted public function __construct( public PostType $postType - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/PostTypeDuplicated.php b/nova/src/Stories/Events/PostTypeDuplicated.php index 210e26dc3..4366c2f1d 100644 --- a/nova/src/Stories/Events/PostTypeDuplicated.php +++ b/nova/src/Stories/Events/PostTypeDuplicated.php @@ -16,6 +16,5 @@ class PostTypeDuplicated public function __construct( public PostType $postType, public PostType $original - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/PostTypeForceDeleted.php b/nova/src/Stories/Events/PostTypeForceDeleted.php index 413e2c805..a3337037b 100644 --- a/nova/src/Stories/Events/PostTypeForceDeleted.php +++ b/nova/src/Stories/Events/PostTypeForceDeleted.php @@ -15,6 +15,5 @@ class PostTypeForceDeleted public function __construct( public PostType $postType - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/PostTypeRestored.php b/nova/src/Stories/Events/PostTypeRestored.php index 9082155f5..0ca8c6e6d 100644 --- a/nova/src/Stories/Events/PostTypeRestored.php +++ b/nova/src/Stories/Events/PostTypeRestored.php @@ -15,6 +15,5 @@ class PostTypeRestored public function __construct( public PostType $postType - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/PostTypeUpdated.php b/nova/src/Stories/Events/PostTypeUpdated.php index 2ede3677d..28ed9b39d 100644 --- a/nova/src/Stories/Events/PostTypeUpdated.php +++ b/nova/src/Stories/Events/PostTypeUpdated.php @@ -15,6 +15,5 @@ class PostTypeUpdated public function __construct( public PostType $postType - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/StoryCreated.php b/nova/src/Stories/Events/StoryCreated.php index 7f7ab6a3b..aab6e001f 100644 --- a/nova/src/Stories/Events/StoryCreated.php +++ b/nova/src/Stories/Events/StoryCreated.php @@ -15,6 +15,5 @@ class StoryCreated public function __construct( public Story $story - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/StoryDeleted.php b/nova/src/Stories/Events/StoryDeleted.php index a6220b12f..48385f1c2 100644 --- a/nova/src/Stories/Events/StoryDeleted.php +++ b/nova/src/Stories/Events/StoryDeleted.php @@ -15,6 +15,5 @@ class StoryDeleted public function __construct( public Story $story - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/StoryEnded.php b/nova/src/Stories/Events/StoryEnded.php index 52dbcf59d..5b9eb2a4e 100644 --- a/nova/src/Stories/Events/StoryEnded.php +++ b/nova/src/Stories/Events/StoryEnded.php @@ -15,6 +15,5 @@ class StoryEnded public function __construct( public Story $story - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/StoryStarted.php b/nova/src/Stories/Events/StoryStarted.php index c27366103..87958d3f4 100644 --- a/nova/src/Stories/Events/StoryStarted.php +++ b/nova/src/Stories/Events/StoryStarted.php @@ -15,6 +15,5 @@ class StoryStarted public function __construct( public Story $story - ) { - } + ) {} } diff --git a/nova/src/Stories/Events/StoryUpdated.php b/nova/src/Stories/Events/StoryUpdated.php index d194895c8..1fd208f1c 100644 --- a/nova/src/Stories/Events/StoryUpdated.php +++ b/nova/src/Stories/Events/StoryUpdated.php @@ -15,6 +15,5 @@ class StoryUpdated public function __construct( public Story $story - ) { - } + ) {} } diff --git a/nova/src/Stories/Livewire/Steps/PublishPostStep.php b/nova/src/Stories/Livewire/Steps/PublishPostStep.php index 5ffabb5b1..cb9d96242 100644 --- a/nova/src/Stories/Livewire/Steps/PublishPostStep.php +++ b/nova/src/Stories/Livewire/Steps/PublishPostStep.php @@ -31,9 +31,7 @@ class PublishPostStep extends WizardStep public ?Collection $participatingUsers = null; - public function goToNextStep(): void - { - } + public function goToNextStep(): void {} public function save(): void { diff --git a/nova/src/Stories/Mail/SendCharacterAuthorAddedToPost.php b/nova/src/Stories/Mail/SendCharacterAuthorAddedToPost.php index c6f630638..9281cc343 100644 --- a/nova/src/Stories/Mail/SendCharacterAuthorAddedToPost.php +++ b/nova/src/Stories/Mail/SendCharacterAuthorAddedToPost.php @@ -21,8 +21,7 @@ class SendCharacterAuthorAddedToPost extends Mailable implements ShouldQueue public function __construct( public Post $post, public Character $character - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Mail/SendCharacterAuthorRemovedFromPost.php b/nova/src/Stories/Mail/SendCharacterAuthorRemovedFromPost.php index df7fb9bf3..720d0bd2a 100644 --- a/nova/src/Stories/Mail/SendCharacterAuthorRemovedFromPost.php +++ b/nova/src/Stories/Mail/SendCharacterAuthorRemovedFromPost.php @@ -21,8 +21,7 @@ class SendCharacterAuthorRemovedFromPost extends Mailable implements ShouldQueue public function __construct( public Post $post, public Character $character - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Mail/SendPostDraftDiscarded.php b/nova/src/Stories/Mail/SendPostDraftDiscarded.php index 24d6c516f..59c559077 100644 --- a/nova/src/Stories/Mail/SendPostDraftDiscarded.php +++ b/nova/src/Stories/Mail/SendPostDraftDiscarded.php @@ -21,8 +21,7 @@ class SendPostDraftDiscarded extends Mailable implements ShouldQueue public function __construct( public Post $post, public User $user - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Mail/SendPostPublished.php b/nova/src/Stories/Mail/SendPostPublished.php index df69b09f0..f862aed12 100644 --- a/nova/src/Stories/Mail/SendPostPublished.php +++ b/nova/src/Stories/Mail/SendPostPublished.php @@ -19,8 +19,7 @@ class SendPostPublished extends Mailable implements ShouldQueue public function __construct( public Post $post - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Mail/SendPostSaved.php b/nova/src/Stories/Mail/SendPostSaved.php index 5a4836573..d5426cc4c 100644 --- a/nova/src/Stories/Mail/SendPostSaved.php +++ b/nova/src/Stories/Mail/SendPostSaved.php @@ -21,8 +21,7 @@ class SendPostSaved extends Mailable implements ShouldQueue public function __construct( public Post $post, public User $user - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Mail/SendStoryEnded.php b/nova/src/Stories/Mail/SendStoryEnded.php index 657a89f95..093f5dcf2 100644 --- a/nova/src/Stories/Mail/SendStoryEnded.php +++ b/nova/src/Stories/Mail/SendStoryEnded.php @@ -19,8 +19,7 @@ class SendStoryEnded extends Mailable implements ShouldQueue public function __construct( public Story $story - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Mail/SendStoryStarted.php b/nova/src/Stories/Mail/SendStoryStarted.php index 87f5349e3..8d3b17aa8 100644 --- a/nova/src/Stories/Mail/SendStoryStarted.php +++ b/nova/src/Stories/Mail/SendStoryStarted.php @@ -19,8 +19,7 @@ class SendStoryStarted extends Mailable implements ShouldQueue public function __construct( public Story $story - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Mail/SendUserAuthorAddedToPost.php b/nova/src/Stories/Mail/SendUserAuthorAddedToPost.php index 9e2e5ca57..c14529ee8 100644 --- a/nova/src/Stories/Mail/SendUserAuthorAddedToPost.php +++ b/nova/src/Stories/Mail/SendUserAuthorAddedToPost.php @@ -19,8 +19,7 @@ class SendUserAuthorAddedToPost extends Mailable implements ShouldQueue public function __construct( public Post $post - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Mail/SendUserAuthorRemovedFromPost.php b/nova/src/Stories/Mail/SendUserAuthorRemovedFromPost.php index f2c0bdfd8..3e6ed037b 100644 --- a/nova/src/Stories/Mail/SendUserAuthorRemovedFromPost.php +++ b/nova/src/Stories/Mail/SendUserAuthorRemovedFromPost.php @@ -19,8 +19,7 @@ class SendUserAuthorRemovedFromPost extends Mailable implements ShouldQueue public function __construct( public Post $post - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Stories/Models/Post.php b/nova/src/Stories/Models/Post.php index 70f5d1711..e9e4199a4 100644 --- a/nova/src/Stories/Models/Post.php +++ b/nova/src/Stories/Models/Post.php @@ -22,11 +22,9 @@ use Spatie\EloquentSortable\Sortable; use Spatie\LaravelData\WithData; use Spatie\ModelStates\HasStates; -use Staudenmeir\EloquentEagerLimitXLaravelAdjacencyList\Eloquent\HasEagerLimitAndRecursiveRelationships; class Post extends Model implements Sortable { - use HasEagerLimitAndRecursiveRelationships; use HasFactory; use HasStates; use LogsActivity; diff --git a/nova/src/Stories/Models/States/PostStatus/DraftToPending.php b/nova/src/Stories/Models/States/PostStatus/DraftToPending.php index 523c700c0..317d68105 100644 --- a/nova/src/Stories/Models/States/PostStatus/DraftToPending.php +++ b/nova/src/Stories/Models/States/PostStatus/DraftToPending.php @@ -11,8 +11,7 @@ class DraftToPending extends Transition { public function __construct( protected Post $post - ) { - } + ) {} public function handle(): Post { diff --git a/nova/src/Stories/Models/States/PostStatus/DraftToPublished.php b/nova/src/Stories/Models/States/PostStatus/DraftToPublished.php index 1fb8dd2ce..7130386f0 100644 --- a/nova/src/Stories/Models/States/PostStatus/DraftToPublished.php +++ b/nova/src/Stories/Models/States/PostStatus/DraftToPublished.php @@ -15,8 +15,7 @@ class DraftToPublished extends Transition { public function __construct( protected Post $post - ) { - } + ) {} public function handle(): Post { diff --git a/nova/src/Stories/Models/States/PostStatus/PendingToPublished.php b/nova/src/Stories/Models/States/PostStatus/PendingToPublished.php index bcb185288..1f5ee24d9 100644 --- a/nova/src/Stories/Models/States/PostStatus/PendingToPublished.php +++ b/nova/src/Stories/Models/States/PostStatus/PendingToPublished.php @@ -14,8 +14,7 @@ class PendingToPublished extends Transition { public function __construct( protected Post $post - ) { - } + ) {} public function handle(): Post { diff --git a/nova/src/Stories/Models/States/PostStatus/StartedToDraft.php b/nova/src/Stories/Models/States/PostStatus/StartedToDraft.php index ec5a26721..149d90dd6 100644 --- a/nova/src/Stories/Models/States/PostStatus/StartedToDraft.php +++ b/nova/src/Stories/Models/States/PostStatus/StartedToDraft.php @@ -13,8 +13,7 @@ class StartedToDraft extends Transition { public function __construct( protected Post $post - ) { - } + ) {} public function handle(): Post { diff --git a/nova/src/Stories/Models/States/StoryStatus/CompletedToCurrent.php b/nova/src/Stories/Models/States/StoryStatus/CompletedToCurrent.php index 9da4bacd4..b956ed0fa 100644 --- a/nova/src/Stories/Models/States/StoryStatus/CompletedToCurrent.php +++ b/nova/src/Stories/Models/States/StoryStatus/CompletedToCurrent.php @@ -13,8 +13,7 @@ class CompletedToCurrent extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/CompletedToOngoing.php b/nova/src/Stories/Models/States/StoryStatus/CompletedToOngoing.php index 0af3db2d3..88756d9da 100644 --- a/nova/src/Stories/Models/States/StoryStatus/CompletedToOngoing.php +++ b/nova/src/Stories/Models/States/StoryStatus/CompletedToOngoing.php @@ -13,8 +13,7 @@ class CompletedToOngoing extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/CompletedToUpcoming.php b/nova/src/Stories/Models/States/StoryStatus/CompletedToUpcoming.php index abf1b0a5f..f5d3a5815 100644 --- a/nova/src/Stories/Models/States/StoryStatus/CompletedToUpcoming.php +++ b/nova/src/Stories/Models/States/StoryStatus/CompletedToUpcoming.php @@ -13,8 +13,7 @@ class CompletedToUpcoming extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/CurrentToCompleted.php b/nova/src/Stories/Models/States/StoryStatus/CurrentToCompleted.php index 0e3f650c9..c75efbb9b 100644 --- a/nova/src/Stories/Models/States/StoryStatus/CurrentToCompleted.php +++ b/nova/src/Stories/Models/States/StoryStatus/CurrentToCompleted.php @@ -16,8 +16,7 @@ class CurrentToCompleted extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/CurrentToOngoing.php b/nova/src/Stories/Models/States/StoryStatus/CurrentToOngoing.php index 163909371..373b825f5 100644 --- a/nova/src/Stories/Models/States/StoryStatus/CurrentToOngoing.php +++ b/nova/src/Stories/Models/States/StoryStatus/CurrentToOngoing.php @@ -13,8 +13,7 @@ class CurrentToOngoing extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/CurrentToUpcoming.php b/nova/src/Stories/Models/States/StoryStatus/CurrentToUpcoming.php index c3adfdcb6..d6a67d758 100644 --- a/nova/src/Stories/Models/States/StoryStatus/CurrentToUpcoming.php +++ b/nova/src/Stories/Models/States/StoryStatus/CurrentToUpcoming.php @@ -13,8 +13,7 @@ class CurrentToUpcoming extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/OngoingToCompleted.php b/nova/src/Stories/Models/States/StoryStatus/OngoingToCompleted.php index e28ed4ec5..9c00515f3 100644 --- a/nova/src/Stories/Models/States/StoryStatus/OngoingToCompleted.php +++ b/nova/src/Stories/Models/States/StoryStatus/OngoingToCompleted.php @@ -13,8 +13,7 @@ class OngoingToCompleted extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/OngoingToCurrent.php b/nova/src/Stories/Models/States/StoryStatus/OngoingToCurrent.php index 7c0b10f7f..4ca14bbc7 100644 --- a/nova/src/Stories/Models/States/StoryStatus/OngoingToCurrent.php +++ b/nova/src/Stories/Models/States/StoryStatus/OngoingToCurrent.php @@ -13,8 +13,7 @@ class OngoingToCurrent extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/OngoingToUpcoming.php b/nova/src/Stories/Models/States/StoryStatus/OngoingToUpcoming.php index 50aefef6a..bfba0e5ab 100644 --- a/nova/src/Stories/Models/States/StoryStatus/OngoingToUpcoming.php +++ b/nova/src/Stories/Models/States/StoryStatus/OngoingToUpcoming.php @@ -13,8 +13,7 @@ class OngoingToUpcoming extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/UpcomingToCompleted.php b/nova/src/Stories/Models/States/StoryStatus/UpcomingToCompleted.php index 5ce03ba13..9f8af52e7 100644 --- a/nova/src/Stories/Models/States/StoryStatus/UpcomingToCompleted.php +++ b/nova/src/Stories/Models/States/StoryStatus/UpcomingToCompleted.php @@ -13,8 +13,7 @@ class UpcomingToCompleted extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/UpcomingToCurrent.php b/nova/src/Stories/Models/States/StoryStatus/UpcomingToCurrent.php index 3532ae1e4..b5ddfc270 100644 --- a/nova/src/Stories/Models/States/StoryStatus/UpcomingToCurrent.php +++ b/nova/src/Stories/Models/States/StoryStatus/UpcomingToCurrent.php @@ -16,8 +16,7 @@ class UpcomingToCurrent extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Models/States/StoryStatus/UpcomingToOngoing.php b/nova/src/Stories/Models/States/StoryStatus/UpcomingToOngoing.php index 5695bd0c8..aa6891b40 100644 --- a/nova/src/Stories/Models/States/StoryStatus/UpcomingToOngoing.php +++ b/nova/src/Stories/Models/States/StoryStatus/UpcomingToOngoing.php @@ -13,8 +13,7 @@ class UpcomingToOngoing extends Transition public function __construct( protected Story $story - ) { - } + ) {} public function handle(): Story { diff --git a/nova/src/Stories/Notifications/CharacterAuthorAddedToPost.php b/nova/src/Stories/Notifications/CharacterAuthorAddedToPost.php index 60fba0a9c..2974c8ccf 100644 --- a/nova/src/Stories/Notifications/CharacterAuthorAddedToPost.php +++ b/nova/src/Stories/Notifications/CharacterAuthorAddedToPost.php @@ -17,8 +17,7 @@ class CharacterAuthorAddedToPost extends PreferenceBasedNotification public function __construct( protected Post $post, protected Character $character - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Stories/Notifications/CharacterAuthorRemovedFromPost.php b/nova/src/Stories/Notifications/CharacterAuthorRemovedFromPost.php index b2587bcdd..bafd078c3 100644 --- a/nova/src/Stories/Notifications/CharacterAuthorRemovedFromPost.php +++ b/nova/src/Stories/Notifications/CharacterAuthorRemovedFromPost.php @@ -17,8 +17,7 @@ class CharacterAuthorRemovedFromPost extends PreferenceBasedNotification public function __construct( protected Post $post, protected Character $character - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Stories/Notifications/DraftPostDiscarded.php b/nova/src/Stories/Notifications/DraftPostDiscarded.php index a6024345e..7753b8d90 100644 --- a/nova/src/Stories/Notifications/DraftPostDiscarded.php +++ b/nova/src/Stories/Notifications/DraftPostDiscarded.php @@ -17,8 +17,7 @@ class DraftPostDiscarded extends PreferenceBasedNotification public function __construct( protected Post $post, protected User $user - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Stories/Notifications/PostPublished.php b/nova/src/Stories/Notifications/PostPublished.php index 9502f249c..988cc204b 100644 --- a/nova/src/Stories/Notifications/PostPublished.php +++ b/nova/src/Stories/Notifications/PostPublished.php @@ -15,8 +15,7 @@ class PostPublished extends PreferenceBasedNotification public function __construct( protected Post $post - ) { - } + ) {} public function via(object $notifiable): array { diff --git a/nova/src/Stories/Notifications/PostSaved.php b/nova/src/Stories/Notifications/PostSaved.php index 3dc593a73..31a7ded30 100644 --- a/nova/src/Stories/Notifications/PostSaved.php +++ b/nova/src/Stories/Notifications/PostSaved.php @@ -17,8 +17,7 @@ class PostSaved extends PreferenceBasedNotification public function __construct( protected Post $post, protected User $user, - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Stories/Notifications/StoryEnded.php b/nova/src/Stories/Notifications/StoryEnded.php index fcf7cff84..5eb9a6b60 100644 --- a/nova/src/Stories/Notifications/StoryEnded.php +++ b/nova/src/Stories/Notifications/StoryEnded.php @@ -15,8 +15,7 @@ class StoryEnded extends PreferenceBasedNotification public function __construct( protected Story $story - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Stories/Notifications/StoryStarted.php b/nova/src/Stories/Notifications/StoryStarted.php index 4b12ee72c..7d59c456d 100644 --- a/nova/src/Stories/Notifications/StoryStarted.php +++ b/nova/src/Stories/Notifications/StoryStarted.php @@ -15,8 +15,7 @@ class StoryStarted extends PreferenceBasedNotification public function __construct( protected Story $story - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Stories/Notifications/UserAuthorAddedToPost.php b/nova/src/Stories/Notifications/UserAuthorAddedToPost.php index 260abe826..75eb767bc 100644 --- a/nova/src/Stories/Notifications/UserAuthorAddedToPost.php +++ b/nova/src/Stories/Notifications/UserAuthorAddedToPost.php @@ -15,8 +15,7 @@ class UserAuthorAddedToPost extends PreferenceBasedNotification public function __construct( protected Post $post - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Stories/Notifications/UserAuthorRemovedFromPost.php b/nova/src/Stories/Notifications/UserAuthorRemovedFromPost.php index 591c2ab07..3e0046ad1 100644 --- a/nova/src/Stories/Notifications/UserAuthorRemovedFromPost.php +++ b/nova/src/Stories/Notifications/UserAuthorRemovedFromPost.php @@ -15,8 +15,7 @@ class UserAuthorRemovedFromPost extends PreferenceBasedNotification public function __construct( protected Post $post - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Stories/Requests/UpdatePostTypeRequest.php b/nova/src/Stories/Requests/UpdatePostTypeRequest.php index 5cbc881d2..99e33bce6 100644 --- a/nova/src/Stories/Requests/UpdatePostTypeRequest.php +++ b/nova/src/Stories/Requests/UpdatePostTypeRequest.php @@ -4,6 +4,4 @@ namespace Nova\Stories\Requests; -class UpdatePostTypeRequest extends StorePostTypeRequest -{ -} +class UpdatePostTypeRequest extends StorePostTypeRequest {} diff --git a/nova/src/Stories/Requests/UpdateStoryRequest.php b/nova/src/Stories/Requests/UpdateStoryRequest.php index 3f58c53f6..7e360aa3c 100644 --- a/nova/src/Stories/Requests/UpdateStoryRequest.php +++ b/nova/src/Stories/Requests/UpdateStoryRequest.php @@ -4,6 +4,4 @@ namespace Nova\Stories\Requests; -class UpdateStoryRequest extends StoreStoryRequest -{ -} +class UpdateStoryRequest extends StoreStoryRequest {} diff --git a/nova/src/Stories/View/Components/WritePostWizardLayout.php b/nova/src/Stories/View/Components/WritePostWizardLayout.php index f02b8c392..d69de00d7 100644 --- a/nova/src/Stories/View/Components/WritePostWizardLayout.php +++ b/nova/src/Stories/View/Components/WritePostWizardLayout.php @@ -11,8 +11,7 @@ class WritePostWizardLayout extends Component public function __construct( public $steps, public string $message - ) { - } + ) {} public function render() { diff --git a/nova/src/Stories/Wizard/Step.php b/nova/src/Stories/Wizard/Step.php index 069bc43b7..01e962788 100644 --- a/nova/src/Stories/Wizard/Step.php +++ b/nova/src/Stories/Wizard/Step.php @@ -12,8 +12,7 @@ public function __construct( public string $stepName, public array $info, public StepStatus $status, - ) { - } + ) {} public function isPrevious(): bool { diff --git a/nova/src/Themes/Data/ThemeData.php b/nova/src/Themes/Data/ThemeData.php index 09c04b76c..fafe1157d 100644 --- a/nova/src/Themes/Data/ThemeData.php +++ b/nova/src/Themes/Data/ThemeData.php @@ -24,8 +24,7 @@ public function __construct( public string $preview, public ?array $variants, - ) { - } + ) {} public static function fromArray(array $data): static { diff --git a/nova/src/Themes/Data/ThemeSettings.php b/nova/src/Themes/Data/ThemeSettings.php index 0e02cdafb..dbde6a7e8 100644 --- a/nova/src/Themes/Data/ThemeSettings.php +++ b/nova/src/Themes/Data/ThemeSettings.php @@ -16,8 +16,7 @@ class ThemeSettings extends Data implements Arrayable public function __construct( public FontFamilies $fonts, public array $settings = [] - ) { - } + ) {} public function hasSettings(): bool { diff --git a/nova/src/Themes/Events/ThemeCreated.php b/nova/src/Themes/Events/ThemeCreated.php index ce6d7e709..b0f86b0e5 100644 --- a/nova/src/Themes/Events/ThemeCreated.php +++ b/nova/src/Themes/Events/ThemeCreated.php @@ -15,6 +15,5 @@ class ThemeCreated public function __construct( public Theme $theme - ) { - } + ) {} } diff --git a/nova/src/Themes/Events/ThemeDeleted.php b/nova/src/Themes/Events/ThemeDeleted.php index 5a59d893b..d407ed9a2 100644 --- a/nova/src/Themes/Events/ThemeDeleted.php +++ b/nova/src/Themes/Events/ThemeDeleted.php @@ -15,6 +15,5 @@ class ThemeDeleted public function __construct( public Theme $theme - ) { - } + ) {} } diff --git a/nova/src/Themes/Events/ThemeInstalled.php b/nova/src/Themes/Events/ThemeInstalled.php index 600f22e00..78f3e3341 100644 --- a/nova/src/Themes/Events/ThemeInstalled.php +++ b/nova/src/Themes/Events/ThemeInstalled.php @@ -15,6 +15,5 @@ class ThemeInstalled public function __construct( public Theme $theme - ) { - } + ) {} } diff --git a/nova/src/Themes/Events/ThemeUpdated.php b/nova/src/Themes/Events/ThemeUpdated.php index a4f5324a1..adcdf1628 100644 --- a/nova/src/Themes/Events/ThemeUpdated.php +++ b/nova/src/Themes/Events/ThemeUpdated.php @@ -15,6 +15,5 @@ class ThemeUpdated public function __construct( public Theme $theme - ) { - } + ) {} } diff --git a/nova/src/Themes/Exceptions/MissingQuickInstallFileException.php b/nova/src/Themes/Exceptions/MissingQuickInstallFileException.php index f7398b5cb..d7f04a0f9 100644 --- a/nova/src/Themes/Exceptions/MissingQuickInstallFileException.php +++ b/nova/src/Themes/Exceptions/MissingQuickInstallFileException.php @@ -6,6 +6,4 @@ use Exception; -class MissingQuickInstallFileException extends Exception -{ -} +class MissingQuickInstallFileException extends Exception {} diff --git a/nova/src/Themes/Requests/UpdateThemeRequest.php b/nova/src/Themes/Requests/UpdateThemeRequest.php index b59ef32c3..45ac52a8a 100644 --- a/nova/src/Themes/Requests/UpdateThemeRequest.php +++ b/nova/src/Themes/Requests/UpdateThemeRequest.php @@ -4,6 +4,4 @@ namespace Nova\Themes\Requests; -class UpdateThemeRequest extends StoreThemeRequest -{ -} +class UpdateThemeRequest extends StoreThemeRequest {} diff --git a/nova/src/Users/Controllers/AccountController.php b/nova/src/Users/Controllers/AccountController.php index 37c0bb26e..43f4e16d1 100644 --- a/nova/src/Users/Controllers/AccountController.php +++ b/nova/src/Users/Controllers/AccountController.php @@ -24,7 +24,5 @@ public function edit($tab = 'info') ]); } - public function update() - { - } + public function update() {} } diff --git a/nova/src/Users/Data/AssignUserCharactersData.php b/nova/src/Users/Data/AssignUserCharactersData.php index e5d0f251a..a712d416e 100644 --- a/nova/src/Users/Data/AssignUserCharactersData.php +++ b/nova/src/Users/Data/AssignUserCharactersData.php @@ -12,8 +12,7 @@ class AssignUserCharactersData extends Data public function __construct( public ?array $characters, public ?int $primaryCharacter - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Users/Data/AssignUserRolesData.php b/nova/src/Users/Data/AssignUserRolesData.php index fa5c7f9c6..0b757a96b 100644 --- a/nova/src/Users/Data/AssignUserRolesData.php +++ b/nova/src/Users/Data/AssignUserRolesData.php @@ -11,8 +11,7 @@ class AssignUserRolesData extends Data { public function __construct( public ?array $roles - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Users/Data/PronounsData.php b/nova/src/Users/Data/PronounsData.php index df6dbb134..0061e468c 100644 --- a/nova/src/Users/Data/PronounsData.php +++ b/nova/src/Users/Data/PronounsData.php @@ -13,8 +13,7 @@ public function __construct( public ?string $subject, public ?string $object, public ?string $possessive, - ) { - } + ) {} public static function fromArray(array $pronouns = []): static { diff --git a/nova/src/Users/Data/UserData.php b/nova/src/Users/Data/UserData.php index 70babc5b5..67b5fc2b6 100644 --- a/nova/src/Users/Data/UserData.php +++ b/nova/src/Users/Data/UserData.php @@ -13,8 +13,7 @@ public function __construct( public string $name, public string $email, public PronounsData $pronouns - ) { - } + ) {} public static function fromRequest(Request $request): static { diff --git a/nova/src/Users/Data/UserPreferences.php b/nova/src/Users/Data/UserPreferences.php index 779ffb5a1..3e569ea7f 100644 --- a/nova/src/Users/Data/UserPreferences.php +++ b/nova/src/Users/Data/UserPreferences.php @@ -10,6 +10,5 @@ class UserPreferences extends Data { public function __construct( public ?string $timezone - ) { - } + ) {} } diff --git a/nova/src/Users/Events/UserActivated.php b/nova/src/Users/Events/UserActivated.php index ebe0a2ae8..71de29f46 100644 --- a/nova/src/Users/Events/UserActivated.php +++ b/nova/src/Users/Events/UserActivated.php @@ -15,6 +15,5 @@ class UserActivated public function __construct( public User $user - ) { - } + ) {} } diff --git a/nova/src/Users/Events/UserCreated.php b/nova/src/Users/Events/UserCreated.php index b59de53f2..8a68349a9 100644 --- a/nova/src/Users/Events/UserCreated.php +++ b/nova/src/Users/Events/UserCreated.php @@ -15,6 +15,5 @@ class UserCreated public function __construct( public User $user - ) { - } + ) {} } diff --git a/nova/src/Users/Events/UserCreatedByAdmin.php b/nova/src/Users/Events/UserCreatedByAdmin.php index f1abde4ba..4a1d6efb5 100644 --- a/nova/src/Users/Events/UserCreatedByAdmin.php +++ b/nova/src/Users/Events/UserCreatedByAdmin.php @@ -15,6 +15,5 @@ class UserCreatedByAdmin public function __construct( public User $user - ) { - } + ) {} } diff --git a/nova/src/Users/Events/UserDeactivated.php b/nova/src/Users/Events/UserDeactivated.php index 2040d6ff7..4a243dcd4 100644 --- a/nova/src/Users/Events/UserDeactivated.php +++ b/nova/src/Users/Events/UserDeactivated.php @@ -15,6 +15,5 @@ class UserDeactivated public function __construct( public User $user - ) { - } + ) {} } diff --git a/nova/src/Users/Events/UserDeleted.php b/nova/src/Users/Events/UserDeleted.php index 72fd552ae..bf875c818 100644 --- a/nova/src/Users/Events/UserDeleted.php +++ b/nova/src/Users/Events/UserDeleted.php @@ -15,6 +15,5 @@ class UserDeleted public function __construct( public User $user - ) { - } + ) {} } diff --git a/nova/src/Users/Events/UserDeletedByAdmin.php b/nova/src/Users/Events/UserDeletedByAdmin.php index ae0ed17b9..99766a413 100644 --- a/nova/src/Users/Events/UserDeletedByAdmin.php +++ b/nova/src/Users/Events/UserDeletedByAdmin.php @@ -15,6 +15,5 @@ class UserDeletedByAdmin public function __construct( public User $user - ) { - } + ) {} } diff --git a/nova/src/Users/Events/UserUpdated.php b/nova/src/Users/Events/UserUpdated.php index b8dea129f..9cadccf20 100644 --- a/nova/src/Users/Events/UserUpdated.php +++ b/nova/src/Users/Events/UserUpdated.php @@ -15,6 +15,5 @@ class UserUpdated public function __construct( public User $user - ) { - } + ) {} } diff --git a/nova/src/Users/Events/UserUpdatedByAdmin.php b/nova/src/Users/Events/UserUpdatedByAdmin.php index 9d19d355e..70ea8cf09 100644 --- a/nova/src/Users/Events/UserUpdatedByAdmin.php +++ b/nova/src/Users/Events/UserUpdatedByAdmin.php @@ -15,6 +15,5 @@ class UserUpdatedByAdmin public function __construct( public User $user - ) { - } + ) {} } diff --git a/nova/src/Users/Mail/SendAccountCreation.php b/nova/src/Users/Mail/SendAccountCreation.php index 5038d859c..c0f24a36e 100644 --- a/nova/src/Users/Mail/SendAccountCreation.php +++ b/nova/src/Users/Mail/SendAccountCreation.php @@ -20,8 +20,7 @@ class SendAccountCreation extends Mailable implements ShouldQueue public function __construct( public User $user, public string $password - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Users/Mail/SendUserDeletedAccount.php b/nova/src/Users/Mail/SendUserDeletedAccount.php index ecaf26f20..c4908e796 100644 --- a/nova/src/Users/Mail/SendUserDeletedAccount.php +++ b/nova/src/Users/Mail/SendUserDeletedAccount.php @@ -19,8 +19,7 @@ class SendUserDeletedAccount extends Mailable implements ShouldQueue public function __construct( public User $user - ) { - } + ) {} public function envelope(): Envelope { diff --git a/nova/src/Users/Models/States/Status/ActiveToInactive.php b/nova/src/Users/Models/States/Status/ActiveToInactive.php index d4a3d1d90..b53505503 100644 --- a/nova/src/Users/Models/States/Status/ActiveToInactive.php +++ b/nova/src/Users/Models/States/Status/ActiveToInactive.php @@ -12,8 +12,7 @@ class ActiveToInactive extends Transition { public function __construct( protected User $user - ) { - } + ) {} public function handle(): User { diff --git a/nova/src/Users/Models/User.php b/nova/src/Users/Models/User.php index 3971f70ec..d604bbc29 100644 --- a/nova/src/Users/Models/User.php +++ b/nova/src/Users/Models/User.php @@ -42,12 +42,10 @@ use Spatie\Activitylog\Traits\LogsActivity; use Spatie\MediaLibrary\HasMedia; use Spatie\ModelStates\HasStates; -use Staudenmeir\EloquentEagerLimit\HasEagerLimit; class User extends Authenticatable implements HasMedia, LaratrustUser, MustVerifyEmail { use CausesActivity; - use HasEagerLimit; use HasFactory; use HasRolesAndPermissions; use HasStates; diff --git a/nova/src/Users/Notifications/AccountCreated.php b/nova/src/Users/Notifications/AccountCreated.php index 7cf13e224..f33db753a 100644 --- a/nova/src/Users/Notifications/AccountCreated.php +++ b/nova/src/Users/Notifications/AccountCreated.php @@ -16,8 +16,7 @@ class AccountCreated extends PreferenceBasedNotification public function __construct( public User $user, public string $password - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/nova/src/Users/Notifications/UserDeletedAccount.php b/nova/src/Users/Notifications/UserDeletedAccount.php index 769aedae4..15e7bb841 100644 --- a/nova/src/Users/Notifications/UserDeletedAccount.php +++ b/nova/src/Users/Notifications/UserDeletedAccount.php @@ -15,8 +15,7 @@ class UserDeletedAccount extends PreferenceBasedNotification public function __construct( public User $user - ) { - } + ) {} public function toArray(object $notifiable): array { diff --git a/package-lock.json b/package-lock.json index b2db785ec..26494bb1a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1013,9 +1013,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.14.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz", - "integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==", + "version": "20.14.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", + "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", "dev": true, "dependencies": { "undici-types": "~5.26.4" @@ -2861,9 +2861,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.816", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.816.tgz", - "integrity": "sha512-EKH5X5oqC6hLmiS7/vYtZHZFTNdhsYG5NVPRN6Yn0kQHNBlT59+xSM8HBy66P5fxWpKgZbPqb+diC64ng295Jw==", + "version": "1.4.817", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.817.tgz", + "integrity": "sha512-3znu+lZMIbTe8ZOs360OMJvVroVF2NpNI8T5jfLnDetVvj0uNmIucZzQVYMSJfsu9f47Ssox1Gt46PR+R+1JUg==", "dev": true }, "node_modules/emoji-regex": { diff --git a/tests/Feature/Departments/EditDepartmentTest.php b/tests/Feature/Departments/EditDepartmentTest.php index 6d1f382df..e04bae4ed 100644 --- a/tests/Feature/Departments/EditDepartmentTest.php +++ b/tests/Feature/Departments/EditDepartmentTest.php @@ -69,8 +69,7 @@ assertCount(1, $this->department->getMedia('header')); }); - test('can remove an uploaded department image', function () { - })->todo(); + test('can remove an uploaded department image', function () {})->todo(); test('can replace an uploaded department image', function () { Storage::fake('media'); diff --git a/tests/Feature/Stories/EditStoryTest.php b/tests/Feature/Stories/EditStoryTest.php index fc98e55f7..0898d995a 100644 --- a/tests/Feature/Stories/EditStoryTest.php +++ b/tests/Feature/Stories/EditStoryTest.php @@ -72,8 +72,7 @@ assertCount(1, $this->story->getMedia('story-image')); }); - test('can remove an uploaded story image', function () { - })->todo(); + test('can remove an uploaded story image', function () {})->todo(); test('can replace an uploaded story image', function () { Storage::fake('media'); From 6b5af7642aa67e06ac60e5e16fe019eec657baf8 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Mon, 8 Jul 2024 11:20:44 -0400 Subject: [PATCH 02/15] Fix broken search for rank items by rank name --- nova/src/Ranks/Models/Builders/RankItemBuilder.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova/src/Ranks/Models/Builders/RankItemBuilder.php b/nova/src/Ranks/Models/Builders/RankItemBuilder.php index e5e5d8476..09b77ba59 100644 --- a/nova/src/Ranks/Models/Builders/RankItemBuilder.php +++ b/nova/src/Ranks/Models/Builders/RankItemBuilder.php @@ -32,7 +32,7 @@ public function name($name) public function searchFor($search): self { - return $this->whereRelation('name', 'name.name', 'like', "%{$search}%"); + return $this->whereRelation('name', 'name', 'like', "%{$search}%"); } public function withRankName() From 85f8f658ba9458cd8c73541320f5ad89325f9354 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Mon, 8 Jul 2024 11:21:13 -0400 Subject: [PATCH 03/15] Update authentication tests --- tests/Feature/Auth/AuthenticationTest.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Feature/Auth/AuthenticationTest.php b/tests/Feature/Auth/AuthenticationTest.php index 50dbb2aa0..bc2a02d12 100644 --- a/tests/Feature/Auth/AuthenticationTest.php +++ b/tests/Feature/Auth/AuthenticationTest.php @@ -85,7 +85,7 @@ }); test('cannot sign out when not signed in', function () { - post(route('logout'))->assertRedirect('/'); + post(route('logout'))->assertRedirectToRoute('login'); assertGuest(); }); @@ -95,7 +95,7 @@ foreach (range(0, 5) as $_) { $response = from(route('login')) - ->post(route('login'), [ + ->postJson(route('login'), [ 'email' => $user->email, 'password' => 'invalid-password', ]); From 3a6952d7d6cfa53d6df0eb41a53d2432268aebc5 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Mon, 8 Jul 2024 11:21:26 -0400 Subject: [PATCH 04/15] Fix broken status update actions --- nova/src/Stories/Livewire/StoriesList.php | 14 +++++--- tests/Feature/Stories/ManageStoriesTest.php | 40 ++++++++++----------- 2 files changed, 29 insertions(+), 25 deletions(-) diff --git a/nova/src/Stories/Livewire/StoriesList.php b/nova/src/Stories/Livewire/StoriesList.php index 67c2ba474..d3a1fa443 100644 --- a/nova/src/Stories/Livewire/StoriesList.php +++ b/nova/src/Stories/Livewire/StoriesList.php @@ -144,7 +144,7 @@ public function table(Table $table): Table ->send(); }), ActionGroup::make([ - Action::make('status_current') + Action::make('statusCurrent') ->authorize('update') ->close() ->color('gray') @@ -155,9 +155,10 @@ public function table(Table $table): Table Notification::make()->success() ->title("{$record->title} status has been updated") + ->body('The story is now marked as current and can be posted into.') ->send(); }), - Action::make('status_ongoing') + Action::make('statusOngoing') ->authorize('update') ->close() ->color('gray') @@ -168,9 +169,10 @@ public function table(Table $table): Table Notification::make()->success() ->title("{$record->title} status has been updated") + ->body('The story is now marked as ongoing and can be used to contain other stories.') ->send(); }), - Action::make('status_completed') + Action::make('statusCompleted') ->authorize('update') ->close() ->color('gray') @@ -181,9 +183,10 @@ public function table(Table $table): Table Notification::make()->success() ->title("{$record->title} status has been updated") + ->body('The story is now marked as completed and cannot be posted into.') ->send(); }), - Action::make('status_upcoming') + Action::make('statusUpcoming') ->authorize('update') ->close() ->color('gray') @@ -194,13 +197,14 @@ public function table(Table $table): Table Notification::make()->success() ->title("{$record->title} status has been updated") + ->body('The story is now marked as upcoming.') ->send(); }), ]) ->grouped() ->icon(iconName('status-change')) ->label('Change status'), - ])->authorizeAny(['view', 'update', 'updateDates'])->divided(), + ])->divided(), ActionGroup::make([ Action::make('create-before') diff --git a/tests/Feature/Stories/ManageStoriesTest.php b/tests/Feature/Stories/ManageStoriesTest.php index 18f37af83..da5d5813f 100644 --- a/tests/Feature/Stories/ManageStoriesTest.php +++ b/tests/Feature/Stories/ManageStoriesTest.php @@ -102,10 +102,10 @@ ->assertTableActionHidden(EditAction::class, $this->stories->first()) ->assertTableActionHidden(DeleteAction::class, $this->stories->first()) ->assertTableActionHidden('dates', $this->stories->first()) - ->assertTableActionHidden('status_upcoming', $this->stories->first()) - ->assertTableActionHidden('status_current', $this->stories->first()) - ->assertTableActionHidden('status_ongoing', $this->stories->first()) - ->assertTableActionHidden('status_completed', $this->stories->first()); + ->assertTableActionHidden('statusUpcoming', $this->stories->first()) + ->assertTableActionHidden('statusCurrent', $this->stories->first()) + ->assertTableActionHidden('statusOngoing', $this->stories->first()) + ->assertTableActionHidden('statusCompleted', $this->stories->first()); }); }); @@ -120,10 +120,10 @@ ->assertTableActionHidden(EditAction::class, $this->stories->first()) ->assertTableActionVisible(DeleteAction::class, $this->stories->first()) ->assertTableActionHidden('dates', $this->stories->first()) - ->assertTableActionHidden('status_upcoming', $this->stories->first()) - ->assertTableActionHidden('status_current', $this->stories->first()) - ->assertTableActionHidden('status_ongoing', $this->stories->first()) - ->assertTableActionHidden('status_completed', $this->stories->first()); + ->assertTableActionHidden('statusUpcoming', $this->stories->first()) + ->assertTableActionHidden('statusCurrent', $this->stories->first()) + ->assertTableActionHidden('statusOngoing', $this->stories->first()) + ->assertTableActionHidden('statusCompleted', $this->stories->first()); }); }); @@ -171,8 +171,8 @@ $story = Story::factory()->current()->create(); livewire(StoriesList::class) - ->assertTableActionVisible('status_upcoming', $story) - ->callTableAction('status_upcoming', $story); + ->assertTableActionVisible('statusUpcoming', $story) + ->callTableAction('statusUpcoming', $story); assertDatabaseHas(Story::class, [ 'title' => $story->title, @@ -186,8 +186,8 @@ $story = Story::factory()->upcoming()->create(); livewire(StoriesList::class) - ->assertTableActionVisible('status_current', $story) - ->callTableAction('status_current', $story); + ->assertTableActionVisible('statusCurrent', $story) + ->callTableAction('statusCurrent', $story); assertDatabaseHas(Story::class, [ 'title' => $story->title, @@ -203,8 +203,8 @@ $story = Story::factory()->current()->create(); livewire(StoriesList::class) - ->assertTableActionVisible('status_completed', $story) - ->callTableAction('status_completed', $story); + ->assertTableActionVisible('statusCompleted', $story) + ->callTableAction('statusCompleted', $story); assertDatabaseHas(Story::class, [ 'title' => $story->title, @@ -218,8 +218,8 @@ $story = Story::factory()->upcoming()->create(); livewire(StoriesList::class) - ->assertTableActionVisible('status_ongoing', $story) - ->callTableAction('status_ongoing', $story); + ->assertTableActionVisible('statusOngoing', $story) + ->callTableAction('statusOngoing', $story); assertDatabaseHas(Story::class, [ 'title' => $story->title, @@ -239,10 +239,10 @@ ->assertTableActionHidden(EditAction::class, $this->stories->first()) ->assertTableActionHidden(DeleteAction::class, $this->stories->first()) ->assertTableActionHidden('dates', $this->stories->first()) - ->assertTableActionHidden('status_upcoming', $this->stories->first()) - ->assertTableActionHidden('status_current', $this->stories->first()) - ->assertTableActionHidden('status_ongoing', $this->stories->first()) - ->assertTableActionHidden('status_completed', $this->stories->first()); + ->assertTableActionHidden('statusUpcoming', $this->stories->first()) + ->assertTableActionHidden('statusCurrent', $this->stories->first()) + ->assertTableActionHidden('statusOngoing', $this->stories->first()) + ->assertTableActionHidden('statusCompleted', $this->stories->first()); }); }); From 69c5d0d5b5a2c1213d326074c8028dead8e28a23 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Mon, 8 Jul 2024 11:21:50 -0400 Subject: [PATCH 05/15] Define fromArray method to fix appearance DTO --- nova/src/Settings/Data/Appearance.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/nova/src/Settings/Data/Appearance.php b/nova/src/Settings/Data/Appearance.php index 9b9672c3a..e7ba0658b 100644 --- a/nova/src/Settings/Data/Appearance.php +++ b/nova/src/Settings/Data/Appearance.php @@ -29,6 +29,24 @@ public function __construct( public bool $panda, ) {} + public static function fromArray(array $data = []): self + { + return new self( + theme: data_get($data, 'theme'), + avatarShape: AvatarShape::tryFrom(data_get($data, 'avatar_shape', 'none')), + avatarStyle: AvatarStyle::tryFrom(data_get($data, 'avatar_style', 'bottts')), + imagePath: data_get($data, 'image_path'), + colorsGray: data_get($data, 'colors_gray', 'Gray'), + colorsPrimary: data_get($data, 'colors_primary', 'Sky'), + colorsDanger: data_get($data, 'colors_danger', 'Rose'), + colorsWarning: data_get($data, 'colors_warning', 'Amber'), + colorsSuccess: data_get($data, 'colors_success', 'Emerald'), + colorsInfo: data_get($data, 'colors_info', 'Purple'), + adminFonts: FontFamilies::from(data_get($data, 'adminFonts', [])), + panda: data_get($data, 'panda', false) + ); + } + public function getColors(): array { return [ From ff426b661ecb780ac9e4fbbc1c3213f8adb28417 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:27:37 -0400 Subject: [PATCH 06/15] Fix error when form doesn't have published fields --- nova/src/Forms/Controllers/FormController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova/src/Forms/Controllers/FormController.php b/nova/src/Forms/Controllers/FormController.php index cd13e941e..8bf145cd9 100644 --- a/nova/src/Forms/Controllers/FormController.php +++ b/nova/src/Forms/Controllers/FormController.php @@ -54,7 +54,7 @@ public function store(StoreFormRequest $request) public function edit(Form $form) { - $fields = collect($form->published_fields['content']) + $fields = collect($form->published_fields['content'] ?? []) ->flatMap(fn ($field) => [ data_get($field, 'attrs.values.uid') => data_get($field, 'attrs.values.label'), ]); From 521177cf1644240fcdc675ce17a2b1fc8422e353 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:27:59 -0400 Subject: [PATCH 07/15] Fix some tests --- tests/Feature/Characters/EditCharacterTest.php | 6 ++++++ tests/Feature/Users/DeleteUserTest.php | 5 ++--- tests/Feature/Users/EditUserTest.php | 6 ++++++ 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/tests/Feature/Characters/EditCharacterTest.php b/tests/Feature/Characters/EditCharacterTest.php index 7aa086222..a993371b5 100644 --- a/tests/Feature/Characters/EditCharacterTest.php +++ b/tests/Feature/Characters/EditCharacterTest.php @@ -12,6 +12,7 @@ use Nova\Characters\Livewire\ManageUsers; use Nova\Characters\Models\Character; use Nova\Departments\Models\Position; +use Nova\Forms\Models\FormSubmission; use Nova\Foundation\Filament\Actions\DeleteAction; use Nova\Foundation\Filament\Actions\EditAction; use Nova\Foundation\Filament\Actions\ForceDeleteAction; @@ -31,6 +32,11 @@ beforeEach(function () { $this->character = Character::factory()->create(); + + FormSubmission::factory()->characterBio()->create([ + 'owner_id' => $this->character, + 'owner_type' => 'character', + ]); }); describe('authorized user', function () { diff --git a/tests/Feature/Users/DeleteUserTest.php b/tests/Feature/Users/DeleteUserTest.php index 295d1be80..40ee61588 100644 --- a/tests/Feature/Users/DeleteUserTest.php +++ b/tests/Feature/Users/DeleteUserTest.php @@ -18,7 +18,7 @@ describe('authorized user', function () { beforeEach(function () { - $this->users = User::factory()->count(5)->create(); + $this->users = User::factory()->active()->count(5)->create(); signIn(permissions: 'user.delete'); }); @@ -28,8 +28,7 @@ livewire(UsersList::class) ->callTableAction(DeleteAction::class, $this->users->first()) - ->assertCanNotSeeTableRecords([$this->users->first()]) - ->assertNotified(); + ->assertCanNotSeeTableRecords([$this->users->first()]); assertDatabaseMissing(User::class, $this->users->first()->toArray()); diff --git a/tests/Feature/Users/EditUserTest.php b/tests/Feature/Users/EditUserTest.php index dfb3cd645..74b7d306e 100644 --- a/tests/Feature/Users/EditUserTest.php +++ b/tests/Feature/Users/EditUserTest.php @@ -6,6 +6,7 @@ use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Storage; use Nova\Characters\Models\Character; +use Nova\Forms\Models\FormSubmission; use Nova\Foundation\Filament\Actions\DeleteAction; use Nova\Foundation\Filament\Actions\EditAction; use Nova\Foundation\Filament\Actions\ViewAction; @@ -28,6 +29,11 @@ beforeEach(function () { $this->user = User::factory()->create(); + + FormSubmission::factory()->userBio()->create([ + 'owner_id' => $this->user->id, + 'owner_type' => 'user', + ]); }); describe('authorized user', function () { From d65ecf61b34e78dc645fb3ae7dbd684d85d36e0d Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:28:26 -0400 Subject: [PATCH 08/15] Fix errors with the character and user forms --- nova/src/Characters/Actions/CreateCharacterManager.php | 2 +- nova/src/Characters/Actions/UpdateCharacterManager.php | 2 +- nova/src/Users/Actions/CreateUserManager.php | 2 +- nova/src/Users/Actions/UpdateUserManager.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/nova/src/Characters/Actions/CreateCharacterManager.php b/nova/src/Characters/Actions/CreateCharacterManager.php index 6e871d572..8d2b8a3d5 100644 --- a/nova/src/Characters/Actions/CreateCharacterManager.php +++ b/nova/src/Characters/Actions/CreateCharacterManager.php @@ -54,7 +54,7 @@ public function handle(StoreCharacterRequest $request): Character $character = ActivateCharacter::run($character); } - $this->createFormSubmission($character, $request->input('characterBio')); + $this->createFormSubmission($character, $request->input('characterBio', [])); SendPendingCharacterNotification::runUnless( $character->is_active, diff --git a/nova/src/Characters/Actions/UpdateCharacterManager.php b/nova/src/Characters/Actions/UpdateCharacterManager.php index e4458c066..f99e0482c 100644 --- a/nova/src/Characters/Actions/UpdateCharacterManager.php +++ b/nova/src/Characters/Actions/UpdateCharacterManager.php @@ -52,7 +52,7 @@ public function handle( RemoveCharacterAvatar::run($character, $request->boolean('remove_existing_image', false)); - $this->updateFormSubmission($character, $request->input('characterBio')); + $this->updateFormSubmission($character, $request->input('characterBio', [])); return $character->refresh(); } diff --git a/nova/src/Users/Actions/CreateUserManager.php b/nova/src/Users/Actions/CreateUserManager.php index e6b64ac93..1e8d1c2c7 100644 --- a/nova/src/Users/Actions/CreateUserManager.php +++ b/nova/src/Users/Actions/CreateUserManager.php @@ -31,7 +31,7 @@ public function handle(StoreUserRequest $request): User UploadUserAvatar::run($user, $request->image_path); - $this->createFormSubmission($user, $request->input('userBio')); + $this->createFormSubmission($user, $request->input('userBio', [])); return $user->fresh(); } diff --git a/nova/src/Users/Actions/UpdateUserManager.php b/nova/src/Users/Actions/UpdateUserManager.php index eaadfd8df..f07d8a540 100644 --- a/nova/src/Users/Actions/UpdateUserManager.php +++ b/nova/src/Users/Actions/UpdateUserManager.php @@ -30,7 +30,7 @@ public function handle(User $user, UpdateUserRequest $request): User RemoveUserAvatar::run($user, $request->boolean('remove_existing_image', false)); - $this->updateFormSubmission($user, $request->input('userBio')); + $this->updateFormSubmission($user, $request->input('userBio', [])); return $user->refresh(); } From f189e962fe6c7b5e9f206d1b04fd9f89ecf8aae1 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:28:49 -0400 Subject: [PATCH 09/15] Add factory states for user and character bio forms --- nova/database/factories/FormSubmissionFactory.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/nova/database/factories/FormSubmissionFactory.php b/nova/database/factories/FormSubmissionFactory.php index 4c468d617..c0d0d4d76 100644 --- a/nova/database/factories/FormSubmissionFactory.php +++ b/nova/database/factories/FormSubmissionFactory.php @@ -23,4 +23,18 @@ public function definition() }, ]; } + + public function characterBio() + { + return $this->state([ + 'form_id' => Form::key('characterBio')->first(), + ]); + } + + public function userBio() + { + return $this->state([ + 'form_id' => Form::key('userBio')->first(), + ]); + } } From 3f39049134f8df528e9c4f9005cfbd7865a9bcd0 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:29:09 -0400 Subject: [PATCH 10/15] Small spacing change for buttons --- nova/resources/views/components/button/index.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova/resources/views/components/button/index.blade.php b/nova/resources/views/components/button/index.blade.php index b5100dcd9..91e122738 100644 --- a/nova/resources/views/components/button/index.blade.php +++ b/nova/resources/views/components/button/index.blade.php @@ -36,7 +36,7 @@ 'xs' => 'px-[calc(theme(spacing.[2.5])-1px)] py-[calc(theme(spacing.1)-1px)] text-xs/5', 'sm' => 'px-[calc(theme(spacing.[2.5])-1px)] py-[calc(theme(spacing.1)-1px)] text-sm/5', 'none' => 'text-sm/5', - default => 'px-[calc(theme(spacing[3.5])-1px)] py-[calc(theme(spacing[2.5])-1px)] sm:px-[calc(theme(spacing.3)-1px)] sm:py-[calc(theme(spacing[1.5])-1px)] sm:text-sm/6', + default => 'px-[calc(theme(spacing[4])-1px)] py-[calc(theme(spacing[2.5])-1px)] sm:py-[calc(theme(spacing[2])-1px)] sm:text-sm/6', }, match ($variant) { 'solid' => Arr::toCssClasses([ From 19acef482fecd71ae55b19377d4538df165bf74b Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:30:00 -0400 Subject: [PATCH 11/15] Revert button change --- nova/resources/views/components/button/index.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova/resources/views/components/button/index.blade.php b/nova/resources/views/components/button/index.blade.php index 91e122738..2d5c50928 100644 --- a/nova/resources/views/components/button/index.blade.php +++ b/nova/resources/views/components/button/index.blade.php @@ -36,7 +36,7 @@ 'xs' => 'px-[calc(theme(spacing.[2.5])-1px)] py-[calc(theme(spacing.1)-1px)] text-xs/5', 'sm' => 'px-[calc(theme(spacing.[2.5])-1px)] py-[calc(theme(spacing.1)-1px)] text-sm/5', 'none' => 'text-sm/5', - default => 'px-[calc(theme(spacing[4])-1px)] py-[calc(theme(spacing[2.5])-1px)] sm:py-[calc(theme(spacing[2])-1px)] sm:text-sm/6', + default => 'px-[calc(theme(spacing[3.5])-1px)] py-[calc(theme(spacing[2.5])-1px)] sm:px-[calc(theme(spacing.4)-1px)] sm:py-[calc(theme(spacing[1.5])-1px)] sm:text-sm/6', }, match ($variant) { 'solid' => Arr::toCssClasses([ From b1468318922df6bff06a25f011463651fc958d90 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:30:15 -0400 Subject: [PATCH 12/15] Environment file changes --- .env.ci | 4 ++-- .env.testing | 4 ++-- nova/.env.example | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.env.ci b/.env.ci index b2e5cc030..c39a4606f 100644 --- a/.env.ci +++ b/.env.ci @@ -2,7 +2,7 @@ APP_ENV=testing APP_KEY=SomeRandomString APP_URL=http://nova3.test -CACHE_DRIVER=array +CACHE_STORE=array DB_CONNECTION=mysql DB_HOST=127.0.0.1 @@ -13,7 +13,7 @@ DB_PASSWORD=password FILESYSTEM_CLOUD=public -MAIL_DRIVER=array +MAIL_MAILER=array QUEUE_CONNECTION=sync diff --git a/.env.testing b/.env.testing index cc00e447e..fbc205462 100644 --- a/.env.testing +++ b/.env.testing @@ -2,7 +2,7 @@ APP_ENV=testing APP_KEY=base64:edGtgIS+uinFIOz06UE2dj+uGukX2SJMg8cKOp784uo= APP_URL=http://localhost -CACHE_DRIVER=array +CACHE_STORE=array DB_CONNECTION=mysql DB_HOST=127.0.0.1 @@ -13,7 +13,7 @@ DB_PASSWORD= FILESYSTEM_CLOUD=public -MAIL_DRIVER=array +MAIL_MAILER=array QUEUE_CONNECTION=sync diff --git a/nova/.env.example b/nova/.env.example index 041180757..cc5ff525b 100644 --- a/nova/.env.example +++ b/nova/.env.example @@ -27,7 +27,7 @@ DB_NOVA2_PREFIX= DB_NOVA2_SOCKET= BROADCAST_DRIVER=log -CACHE_DRIVER=file +CACHE_STORE=file FILESYSTEM_DISK=local QUEUE_CONNECTION=sync SESSION_DRIVER=file From c54ed4b35d1f6484a100dde352eaf6f18355b6ea Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:30:32 -0400 Subject: [PATCH 13/15] Composer update --- composer.json | 10 +- composer.lock | 431 ++------------------------------------------------ 2 files changed, 14 insertions(+), 427 deletions(-) diff --git a/composer.json b/composer.json index b50a0ce01..fedf8f8cb 100644 --- a/composer.json +++ b/composer.json @@ -14,7 +14,6 @@ "anodyne/blade-tabler-icons": "^3.0", "awcodes/filament-tiptap-editor": "^3.0", "awcodes/scribble": "^0.3.0@alpha", - "awcodes/typist": "dev-main", "aws/aws-sdk-php": "^3.293", "bensampo/laravel-embed": "^2.4", "blade-ui-kit/blade-icons": "^1.0", @@ -59,8 +58,7 @@ "pestphp/pest": "^2.9", "pestphp/pest-plugin-laravel": "^2.1", "pestphp/pest-plugin-livewire": "^2.1", - "phpunit/phpunit": "^10.0", - "spatie/laravel-ignition": "^2.0" + "phpunit/phpunit": "^10.0" }, "extra": { "laravel": { @@ -89,12 +87,6 @@ "Tests\\": "tests/" } }, - "repositories": [ - { - "type": "vcs", - "url": "git@dvs.github.com:awcodes/typist.git" - } - ], "scripts": { "analyse": "./vendor/bin/phpstan analyse", "clean": [ diff --git a/composer.lock b/composer.lock index e6f94e0ef..83e7a352d 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": "3e9fcaab1a19bce202efe1f6e89cf494", + "content-hash": "91d2f15bf99235ca70d47a00e6b8fd97", "packages": [ { "name": "amphp/amp", @@ -1157,93 +1157,6 @@ ], "time": "2024-04-22T20:00:27+00:00" }, - { - "name": "awcodes/typist", - "version": "dev-main", - "source": { - "type": "git", - "url": "git@dvs.github.com:awcodes/typist.git", - "reference": "9870e9743380e6544700df96256bb0a2ab9e9cb2" - }, - "require": { - "filament/forms": "^3.0", - "league/html-to-markdown": "^5.1", - "php": "^8.1", - "spatie/laravel-package-tools": "^1.15.0", - "ueberdosis/tiptap-php": "^1.3" - }, - "require-dev": { - "laravel/pint": "^1.0", - "nunomaduro/collision": "^7.9|^8.1", - "orchestra/testbench": "^8.0|^9.0", - "pestphp/pest": "^2.0", - "pestphp/pest-plugin-arch": "^2.0", - "pestphp/pest-plugin-laravel": "^2.0", - "spatie/laravel-ray": "^1.26" - }, - "default-branch": true, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Awcodes\\Typist\\TypistServiceProvider" - ], - "aliases": { - "Typist": "Awcodes\\Typist\\Facades\\Typist" - } - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Awcodes\\Typist\\": "src/", - "Awcodes\\Typist\\Database\\Factories\\": "database/factories/" - } - }, - "autoload-dev": { - "psr-4": { - "Awcodes\\Typist\\Tests\\": "tests/" - } - }, - "scripts": { - "post-autoload-dump": [ - "@php ./vendor/bin/testbench package:discover --ansi" - ], - "test": [ - "vendor/bin/pest" - ], - "test-coverage": [ - "vendor/bin/pest --coverage" - ], - "format": [ - "vendor/bin/pint" - ] - }, - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adam Weston", - "email": "awcodes1@gmail.com", - "role": "Developer" - } - ], - "description": "This is my package typist", - "homepage": "https://github.com/awcodes/typist", - "keywords": [ - "awcodes", - "laravel", - "typist" - ], - "support": { - "issues": "https://github.com/awcodes/typist/issues", - "source": "https://github.com/awcodes/typist" - }, - "time": "2024-06-03T15:35:01+00:00" - }, { "name": "aws/aws-crt-php", "version": "v1.2.6", @@ -2159,16 +2072,16 @@ }, { "name": "dflydev/dot-access-data", - "version": "v3.0.2", + "version": "v3.0.3", "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-dot-access-data.git", - "reference": "f41715465d65213d644d3141a6a93081be5d3549" + "reference": "a23a2bf4f31d3518f3ecb38660c95715dfead60f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549", - "reference": "f41715465d65213d644d3141a6a93081be5d3549", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/a23a2bf4f31d3518f3ecb38660c95715dfead60f", + "reference": "a23a2bf4f31d3518f3ecb38660c95715dfead60f", "shasum": "" }, "require": { @@ -2228,9 +2141,9 @@ ], "support": { "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", - "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2" + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.3" }, - "time": "2022-10-27T11:44:00+00:00" + "time": "2024-07-08T12:26:09+00:00" }, { "name": "doctrine/cache", @@ -7375,16 +7288,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.11.6", + "version": "1.11.7", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "6ac78f1165346c83b4a753f7e4186d969c6ad0ee" + "reference": "52d2bbfdcae7f895915629e4694e9497d0f8e28d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/6ac78f1165346c83b4a753f7e4186d969c6ad0ee", - "reference": "6ac78f1165346c83b4a753f7e4186d969c6ad0ee", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/52d2bbfdcae7f895915629e4694e9497d0f8e28d", + "reference": "52d2bbfdcae7f895915629e4694e9497d0f8e28d", "shasum": "" }, "require": { @@ -7429,7 +7342,7 @@ "type": "github" } ], - "time": "2024-07-01T15:33:06+00:00" + "time": "2024-07-06T11:17:41+00:00" }, { "name": "pragmarx/google2fa", @@ -16487,323 +16400,6 @@ ], "time": "2023-02-07T11:34:05+00:00" }, - { - "name": "spatie/error-solutions", - "version": "1.0.4", - "source": { - "type": "git", - "url": "https://github.com/spatie/error-solutions.git", - "reference": "264a7eef892aceb2fd65e206127ad3af4f3a2d6b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/error-solutions/zipball/264a7eef892aceb2fd65e206127ad3af4f3a2d6b", - "reference": "264a7eef892aceb2fd65e206127ad3af4f3a2d6b", - "shasum": "" - }, - "require": { - "php": "^8.0" - }, - "require-dev": { - "illuminate/broadcasting": "^10.0|^11.0", - "illuminate/cache": "^10.0|^11.0", - "illuminate/support": "^10.0|^11.0", - "livewire/livewire": "^2.11|^3.3.5", - "openai-php/client": "^0.10.1", - "orchestra/testbench": "^7.0|8.22.3|^9.0", - "pestphp/pest": "^2.20", - "phpstan/phpstan": "^1.11", - "psr/simple-cache": "^3.0", - "psr/simple-cache-implementation": "^3.0", - "spatie/ray": "^1.28", - "symfony/cache": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "vlucas/phpdotenv": "^5.5" - }, - "suggest": { - "openai-php/client": "Require get solutions from OpenAI", - "simple-cache-implementation": "To cache solutions from OpenAI" - }, - "type": "library", - "autoload": { - "psr-4": { - "Spatie\\Ignition\\": "legacy/ignition", - "Spatie\\ErrorSolutions\\": "src", - "Spatie\\LaravelIgnition\\": "legacy/laravel-ignition" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ruben Van Assche", - "email": "ruben@spatie.be", - "role": "Developer" - } - ], - "description": "This is my package error-solutions", - "homepage": "https://github.com/spatie/error-solutions", - "keywords": [ - "error-solutions", - "spatie" - ], - "support": { - "issues": "https://github.com/spatie/error-solutions/issues", - "source": "https://github.com/spatie/error-solutions/tree/1.0.4" - }, - "funding": [ - { - "url": "https://github.com/Spatie", - "type": "github" - } - ], - "time": "2024-06-28T13:33:04+00:00" - }, - { - "name": "spatie/flare-client-php", - "version": "1.7.0", - "source": { - "type": "git", - "url": "https://github.com/spatie/flare-client-php.git", - "reference": "097040ff51e660e0f6fc863684ac4b02c93fa234" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/097040ff51e660e0f6fc863684ac4b02c93fa234", - "reference": "097040ff51e660e0f6fc863684ac4b02c93fa234", - "shasum": "" - }, - "require": { - "illuminate/pipeline": "^8.0|^9.0|^10.0|^11.0", - "php": "^8.0", - "spatie/backtrace": "^1.6.1", - "symfony/http-foundation": "^5.2|^6.0|^7.0", - "symfony/mime": "^5.2|^6.0|^7.0", - "symfony/process": "^5.2|^6.0|^7.0", - "symfony/var-dumper": "^5.2|^6.0|^7.0" - }, - "require-dev": { - "dms/phpunit-arraysubset-asserts": "^0.5.0", - "pestphp/pest": "^1.20|^2.0", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-phpunit": "^1.0", - "spatie/phpunit-snapshot-assertions": "^4.0|^5.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.3.x-dev" - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Spatie\\FlareClient\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Send PHP errors to Flare", - "homepage": "https://github.com/spatie/flare-client-php", - "keywords": [ - "exception", - "flare", - "reporting", - "spatie" - ], - "support": { - "issues": "https://github.com/spatie/flare-client-php/issues", - "source": "https://github.com/spatie/flare-client-php/tree/1.7.0" - }, - "funding": [ - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2024-06-12T14:39:14+00:00" - }, - { - "name": "spatie/ignition", - "version": "1.15.0", - "source": { - "type": "git", - "url": "https://github.com/spatie/ignition.git", - "reference": "e3a68e137371e1eb9edc7f78ffa733f3b98991d2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/ignition/zipball/e3a68e137371e1eb9edc7f78ffa733f3b98991d2", - "reference": "e3a68e137371e1eb9edc7f78ffa733f3b98991d2", - "shasum": "" - }, - "require": { - "ext-json": "*", - "ext-mbstring": "*", - "php": "^8.0", - "spatie/error-solutions": "^1.0", - "spatie/flare-client-php": "^1.7", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/var-dumper": "^5.4|^6.0|^7.0" - }, - "require-dev": { - "illuminate/cache": "^9.52|^10.0|^11.0", - "mockery/mockery": "^1.4", - "pestphp/pest": "^1.20|^2.0", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-phpunit": "^1.0", - "psr/simple-cache-implementation": "*", - "symfony/cache": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "vlucas/phpdotenv": "^5.5" - }, - "suggest": { - "openai-php/client": "Require get solutions from OpenAI", - "simple-cache-implementation": "To cache solutions from OpenAI" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.5.x-dev" - } - }, - "autoload": { - "psr-4": { - "Spatie\\Ignition\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Spatie", - "email": "info@spatie.be", - "role": "Developer" - } - ], - "description": "A beautiful error page for PHP applications.", - "homepage": "https://flareapp.io/ignition", - "keywords": [ - "error", - "flare", - "laravel", - "page" - ], - "support": { - "docs": "https://flareapp.io/docs/ignition-for-laravel/introduction", - "forum": "https://twitter.com/flareappio", - "issues": "https://github.com/spatie/ignition/issues", - "source": "https://github.com/spatie/ignition" - }, - "funding": [ - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2024-06-12T14:55:22+00:00" - }, - { - "name": "spatie/laravel-ignition", - "version": "2.8.0", - "source": { - "type": "git", - "url": "https://github.com/spatie/laravel-ignition.git", - "reference": "3c067b75bfb50574db8f7e2c3978c65eed71126c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/3c067b75bfb50574db8f7e2c3978c65eed71126c", - "reference": "3c067b75bfb50574db8f7e2c3978c65eed71126c", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "ext-json": "*", - "ext-mbstring": "*", - "illuminate/support": "^10.0|^11.0", - "php": "^8.1", - "spatie/ignition": "^1.15", - "symfony/console": "^6.2.3|^7.0", - "symfony/var-dumper": "^6.2.3|^7.0" - }, - "require-dev": { - "livewire/livewire": "^2.11|^3.3.5", - "mockery/mockery": "^1.5.1", - "openai-php/client": "^0.8.1", - "orchestra/testbench": "8.22.3|^9.0", - "pestphp/pest": "^2.34", - "phpstan/extension-installer": "^1.3.1", - "phpstan/phpstan-deprecation-rules": "^1.1.1", - "phpstan/phpstan-phpunit": "^1.3.16", - "vlucas/phpdotenv": "^5.5" - }, - "suggest": { - "openai-php/client": "Require get solutions from OpenAI", - "psr/simple-cache-implementation": "Needed to cache solutions from OpenAI" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Spatie\\LaravelIgnition\\IgnitionServiceProvider" - ], - "aliases": { - "Flare": "Spatie\\LaravelIgnition\\Facades\\Flare" - } - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Spatie\\LaravelIgnition\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Spatie", - "email": "info@spatie.be", - "role": "Developer" - } - ], - "description": "A beautiful error page for Laravel applications.", - "homepage": "https://flareapp.io/ignition", - "keywords": [ - "error", - "flare", - "laravel", - "page" - ], - "support": { - "docs": "https://flareapp.io/docs/ignition-for-laravel/introduction", - "forum": "https://twitter.com/flareappio", - "issues": "https://github.com/spatie/laravel-ignition/issues", - "source": "https://github.com/spatie/laravel-ignition" - }, - "funding": [ - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2024-06-12T15:01:18+00:00" - }, { "name": "ta-tikoma/phpunit-architecture-test", "version": "0.8.4", @@ -16917,8 +16513,7 @@ "aliases": [], "minimum-stability": "dev", "stability-flags": { - "awcodes/scribble": 15, - "awcodes/typist": 20 + "awcodes/scribble": 15 }, "prefer-stable": true, "prefer-lowest": false, From 029af914b62fcec7fab365211c7bd16d9c205866 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 09:32:06 -0400 Subject: [PATCH 14/15] Laravel 11 updates --- index.php | 52 +----- nova/bootstrap/app.php | 95 ++++------ nova/bootstrap/providers.php | 32 ++++ nova/config/app.php | 128 ++----------- nova/config/auth.php | 8 +- nova/config/broadcasting.php | 72 -------- nova/config/cache.php | 18 +- nova/config/cors.php | 36 ---- nova/config/data.php | 125 ++++++++++++- nova/config/database.php | 53 ++++-- nova/config/fortify.php | 174 +++++------------- nova/config/hashing.php | 54 ------ nova/config/logging.php | 13 +- nova/config/mail.php | 46 ++--- nova/config/queue.php | 41 +++-- nova/config/services.php | 11 ++ nova/config/session.php | 25 ++- nova/config/typist.php | 30 --- nova/config/view.php | 38 ---- nova/foundation/Application.php | 14 ++ .../Providers/AppServiceProvider.php | 32 +++- .../Providers/AuthServiceProvider.php | 27 --- .../Providers/BroadcastServiceProvider.php | 21 --- .../Providers/EventServiceProvider.php | 44 ----- .../Providers/FortifyServiceProvider.php | 11 -- .../Providers/ResponsesServiceProvider.php | 44 ----- .../Providers/RouteServiceProvider.php | 57 ------ .../Providers/TelescopeServiceProvider.php | 69 ------- nova/routes/local.php | 2 +- 29 files changed, 438 insertions(+), 934 deletions(-) create mode 100644 nova/bootstrap/providers.php delete mode 100644 nova/config/broadcasting.php delete mode 100644 nova/config/cors.php delete mode 100644 nova/config/hashing.php delete mode 100644 nova/config/typist.php delete mode 100644 nova/config/view.php delete mode 100644 nova/foundation/Providers/AuthServiceProvider.php delete mode 100644 nova/foundation/Providers/BroadcastServiceProvider.php delete mode 100644 nova/foundation/Providers/EventServiceProvider.php delete mode 100644 nova/foundation/Providers/ResponsesServiceProvider.php delete mode 100644 nova/foundation/Providers/RouteServiceProvider.php delete mode 100644 nova/foundation/Providers/TelescopeServiceProvider.php diff --git a/index.php b/index.php index 736cd6fa2..bfd5c30a1 100644 --- a/index.php +++ b/index.php @@ -2,9 +2,10 @@ declare(strict_types=1); -use Illuminate\Contracts\Http\Kernel; use Illuminate\Http\Request; +define('LARAVEL_START', microtime(true)); + if (version_compare(PHP_VERSION, '8.2', '<')) { header('Location: message.php?type=php'); exit(); @@ -20,53 +21,14 @@ exit(); } -define('LARAVEL_START', microtime(true)); - -/* -|-------------------------------------------------------------------------- -| Check If The Application Is Under Maintenance -|-------------------------------------------------------------------------- -| -| If the application is in maintenance / demo mode via the "down" command -| we will load this file so that any pre-rendered content can be shown -| instead of starting the framework, which could cause an exception. -| -*/ - +// Determine if the application is in maintenance mode... if (file_exists($maintenance = __DIR__.'/storage/framework/maintenance.php')) { require $maintenance; } -/* -|-------------------------------------------------------------------------- -| Register The Auto Loader -|-------------------------------------------------------------------------- -| -| Composer provides a convenient, automatically generated class loader for -| this application. We just need to utilize it! We'll simply require it -| into the script here so we don't need to manually load our classes. -| -*/ - +// Register the Composer autoloader... require __DIR__.'/vendor/autoload.php'; -/* -|-------------------------------------------------------------------------- -| Run The Application -|-------------------------------------------------------------------------- -| -| Once we have the application, we can handle the incoming request using -| the application's HTTP kernel. Then, we will send the response back -| to this client's browser, allowing them to enjoy our application. -| -*/ - -$app = require_once __DIR__.'/nova/bootstrap/app.php'; - -$kernel = $app->make(Kernel::class); - -$response = $kernel->handle( - $request = Request::capture() -)->send(); - -$kernel->terminate($request, $response); +// Bootstrap Laravel and handle the request... +(require_once __DIR__.'/nova/bootstrap/app.php') + ->handleRequest(Request::capture()); diff --git a/nova/bootstrap/app.php b/nova/bootstrap/app.php index 8948785ef..44f5150d1 100644 --- a/nova/bootstrap/app.php +++ b/nova/bootstrap/app.php @@ -2,61 +2,43 @@ declare(strict_types=1); -/* -|-------------------------------------------------------------------------- -| Create The Application -|-------------------------------------------------------------------------- -| -| The first thing we will do is create a new Laravel application instance -| which serves as the "glue" for all the components of Laravel, and is -| the IoC container for the system binding all of the various parts. -| -*/ - -$app = new Nova\Foundation\Application( - $_ENV['APP_BASE_PATH'] ?? dirname(__DIR__, 2) -); - -/* -|-------------------------------------------------------------------------- -| Bind Important Interfaces -|-------------------------------------------------------------------------- -| -| Next, we need to bind some important interfaces into the container so -| we will be able to resolve them when needed. The kernels serve the -| incoming requests to this application from both the web and CLI. -| -*/ - -$app->singleton( - Illuminate\Contracts\Http\Kernel::class, - Nova\Foundation\Http\Kernel::class -); - -$app->singleton( - Illuminate\Contracts\Console\Kernel::class, - Nova\Foundation\Console\Kernel::class -); - -$app->singleton( - Illuminate\Contracts\Debug\ExceptionHandler::class, - Nova\Foundation\Exceptions\Handler::class -); - -/* -|-------------------------------------------------------------------------- -| Bind Updated Paths -|-------------------------------------------------------------------------- -| -| Next, we need to bind the updated paths into the container so we will be -| able to resolve them when needed. -| -*/ +use Illuminate\Foundation\Configuration\Exceptions; +use Illuminate\Foundation\Configuration\Middleware; +use Illuminate\Support\Facades\Route; +use Nova\Foundation\Application; +use Nova\Foundation\Http\Middleware\CheckVersion; + +$app = Application::configure(basePath: dirname(__DIR__, 2)) + ->withRouting( + web: __DIR__.'/../routes/web.php', + commands: __DIR__.'/../routes/console.php', + api: __DIR__.'/../routes/api.php', + health: '/up', + then: function () { + if (app()->environment('local')) { + Route::prefix('test') + ->middleware('web') + ->group(nova_path('routes/local.php')); + } + } + ) + ->withMiddleware(function (Middleware $middleware) { + $middleware->alias([ + 'installed' => Nova\Foundation\Http\Middleware\CheckInstallStatus::class, + ]); + + $middleware->web(append: [ + CheckVersion::class, + ]); + }) + ->withExceptions(function (Exceptions $exceptions) { + // + }) + ->create(); $app->useNovaPath(path: $app->basePath('nova')); $app->useAppPath(path: $app->novaPath('src')); -$app->useBootstrapPath(path: $app->novaPath('bootstrap')); $app->useConfigPath(path: $app->novaPath('config')); $app->useDatabasePath(path: $app->novaPath('database')); $app->useExtensionPath(path: $app->basePath('extensions')); @@ -67,15 +49,4 @@ $app->usePublicPath(path: $app->basePath()); } -/* -|-------------------------------------------------------------------------- -| Return The Application -|-------------------------------------------------------------------------- -| -| This script returns the application instance. The instance is given to -| the calling script so we can separate the building of the instances -| from the actual running of the application and sending responses. -| -*/ - return $app; diff --git a/nova/bootstrap/providers.php b/nova/bootstrap/providers.php new file mode 100644 index 000000000..4d7d75119 --- /dev/null +++ b/nova/bootstrap/providers.php @@ -0,0 +1,32 @@ + 'UTC', + 'timezone' => env('APP_TIMEZONE', 'UTC'), /* |-------------------------------------------------------------------------- @@ -79,38 +79,16 @@ |-------------------------------------------------------------------------- | | The application locale determines the default locale that will be used - | by the translation service provider. You are free to set this value - | to any of the locales which will be supported by the application. + | by Laravel's translation / localization methods. This option can be + | set to any locale for which you plan to have translation strings. | */ - 'locale' => 'en', + 'locale' => env('APP_LOCALE', 'en'), - /* - |-------------------------------------------------------------------------- - | Application Fallback Locale - |-------------------------------------------------------------------------- - | - | The fallback locale determines the locale to use when the current one - | is not available. You may change the value to correspond to any of - | the language folders that are provided through your application. - | - */ - - 'fallback_locale' => 'en', - - /* - |-------------------------------------------------------------------------- - | Faker Locale - |-------------------------------------------------------------------------- - | - | This locale will be used by the Faker PHP library when generating fake - | data for your database seeds. For example, this will be used to get - | localized telephone numbers, street address information and more. - | - */ + 'fallback_locale' => env('APP_FALLBACK_LOCALE', 'en'), - 'faker_locale' => 'en_US', + 'faker_locale' => env('APP_FAKER_LOCALE', 'en_US'), /* |-------------------------------------------------------------------------- @@ -123,9 +101,15 @@ | */ + 'cipher' => 'AES-256-CBC', + 'key' => env('APP_KEY', 'base64:seCuVALiMMNM/CZZCw4NLK4D7Zm4905Y5Pe7SCASiqs='), - 'cipher' => 'AES-256-CBC', + 'previous_keys' => [ + ...array_filter( + explode(',', env('APP_PREVIOUS_KEYS', '')) + ), + ], /* |-------------------------------------------------------------------------- @@ -141,90 +125,8 @@ */ 'maintenance' => [ - 'driver' => 'file', - // 'store' => 'redis', - ], - - /* - |-------------------------------------------------------------------------- - | Autoloaded Service Providers - |-------------------------------------------------------------------------- - | - | The service providers listed here will be automatically loaded on the - | request to your application. Feel free to add your own services to - | this array to grant expanded functionality to your applications. - | - */ - - 'providers' => [ - - /* - * Laravel Framework Service Providers... - */ - Illuminate\Auth\AuthServiceProvider::class, - Illuminate\Broadcasting\BroadcastServiceProvider::class, - Illuminate\Bus\BusServiceProvider::class, - Illuminate\Cache\CacheServiceProvider::class, - Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class, - Illuminate\Cookie\CookieServiceProvider::class, - Illuminate\Database\DatabaseServiceProvider::class, - Illuminate\Encryption\EncryptionServiceProvider::class, - Illuminate\Filesystem\FilesystemServiceProvider::class, - Illuminate\Foundation\Providers\FoundationServiceProvider::class, - Illuminate\Hashing\HashServiceProvider::class, - Illuminate\Mail\MailServiceProvider::class, - Illuminate\Notifications\NotificationServiceProvider::class, - Illuminate\Pagination\PaginationServiceProvider::class, - Illuminate\Pipeline\PipelineServiceProvider::class, - Illuminate\Queue\QueueServiceProvider::class, - Illuminate\Redis\RedisServiceProvider::class, - Illuminate\Auth\Passwords\PasswordResetServiceProvider::class, - Illuminate\Session\SessionServiceProvider::class, - Illuminate\Translation\TranslationServiceProvider::class, - Illuminate\Validation\ValidationServiceProvider::class, - Illuminate\View\ViewServiceProvider::class, - - /* - * Package Service Providers... - */ - BladeUI\Icons\BladeIconsServiceProvider::class, - Livewire\LivewireServiceProvider::class, - LivewireUI\Spotlight\SpotlightServiceProvider::class, - - /* - * Application Service Providers... - */ - Nova\Foundation\Providers\AppServiceProvider::class, - Nova\Foundation\Providers\AuthServiceProvider::class, - // Nova\Foundation\Providers\BroadcastServiceProvider::class, - Nova\Foundation\Providers\EventServiceProvider::class, - Nova\Foundation\Providers\RouteServiceProvider::class, - // Nova\Foundation\Providers\ResponsesServiceProvider::class, - Nova\Foundation\Providers\FortifyServiceProvider::class, - // Nova\Foundation\Providers\TelescopeServiceProvider::class, - - /** - * Nova Module Service Provides. - */ - Nova\Setup\Providers\SetupServiceProvider::class, - Nova\Characters\Providers\CharacterServiceProvider::class, - Nova\Conversations\Providers\ConversationServiceProvider::class, - Nova\Dashboards\Providers\DashboardsServiceProvider::class, - Nova\Departments\Providers\DepartmentServiceProvider::class, - Nova\Forms\Providers\FormServiceProvider::class, - Nova\Media\Providers\MediaServiceProvider::class, - // Nova\Navigation\Providers\NavigationServiceProvider::class, - Nova\Notes\Providers\NotesServiceProvider::class, - Nova\Pages\Providers\PageServiceProvider::class, - Nova\Ranks\Providers\RankServiceProvider::class, - Nova\Roles\Providers\RoleServiceProvider::class, - Nova\Settings\Providers\SettingsServiceProvider::class, - Nova\Stories\Providers\PostServiceProvider::class, - Nova\Stories\Providers\PostTypeServiceProvider::class, - Nova\Stories\Providers\StoryServiceProvider::class, - Nova\Themes\Providers\ThemeServiceProvider::class, - Nova\Users\Providers\UserServiceProvider::class, - + 'driver' => env('APP_MAINTENANCE_DRIVER', 'file'), + 'store' => env('APP_MAINTENANCE_STORE', 'database'), ], /* diff --git a/nova/config/auth.php b/nova/config/auth.php index 76af56e02..9bf023354 100644 --- a/nova/config/auth.php +++ b/nova/config/auth.php @@ -16,8 +16,8 @@ */ 'defaults' => [ - 'guard' => 'web', - 'passwords' => 'users', + 'guard' => env('AUTH_GUARD', 'web'), + 'passwords' => env('AUTH_PASSWORD_BROKER', 'users'), ], /* @@ -95,7 +95,7 @@ 'passwords' => [ 'users' => [ 'provider' => 'users', - 'table' => 'password_reset_tokens', + 'table' => env('AUTH_PASSWORD_RESET_TOKEN_TABLE', 'password_reset_tokens'), 'expire' => 60, 'throttle' => 60, ], @@ -112,6 +112,6 @@ | */ - 'password_timeout' => 10800, + 'password_timeout' => env('AUTH_PASSWORD_TIMEOUT', 10800), ]; diff --git a/nova/config/broadcasting.php b/nova/config/broadcasting.php deleted file mode 100644 index f7b3108e8..000000000 --- a/nova/config/broadcasting.php +++ /dev/null @@ -1,72 +0,0 @@ - env('BROADCAST_DRIVER', 'null'), - - /* - |-------------------------------------------------------------------------- - | Broadcast Connections - |-------------------------------------------------------------------------- - | - | Here you may define all of the broadcast connections that will be used - | to broadcast events to other systems or over websockets. Samples of - | each available type of connection are provided inside this array. - | - */ - - 'connections' => [ - - 'pusher' => [ - 'driver' => 'pusher', - 'key' => env('PUSHER_APP_KEY'), - 'secret' => env('PUSHER_APP_SECRET'), - 'app_id' => env('PUSHER_APP_ID'), - 'options' => [ - 'host' => env('PUSHER_HOST') ?: 'api-'.env('PUSHER_APP_CLUSTER', 'mt1').'.pusher.com', - 'port' => env('PUSHER_PORT', 443), - 'scheme' => env('PUSHER_SCHEME', 'https'), - 'encrypted' => true, - 'useTLS' => env('PUSHER_SCHEME', 'https') === 'https', - ], - 'client_options' => [ - // Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html - ], - ], - - 'ably' => [ - 'driver' => 'ably', - 'key' => env('ABLY_KEY'), - ], - - 'redis' => [ - 'driver' => 'redis', - 'connection' => 'default', - ], - - 'log' => [ - 'driver' => 'log', - ], - - 'null' => [ - 'driver' => 'null', - ], - - ], - -]; diff --git a/nova/config/cache.php b/nova/config/cache.php index c82c50896..0b2da37a2 100644 --- a/nova/config/cache.php +++ b/nova/config/cache.php @@ -17,7 +17,7 @@ | */ - 'default' => env('CACHE_DRIVER', 'file'), + 'default' => env('CACHE_STORE', 'file'), /* |-------------------------------------------------------------------------- @@ -35,10 +35,6 @@ 'stores' => [ - 'apc' => [ - 'driver' => 'apc', - ], - 'array' => [ 'driver' => 'array', 'serialize' => false, @@ -46,14 +42,16 @@ 'database' => [ 'driver' => 'database', - 'table' => 'cache', - 'connection' => null, - 'lock_connection' => null, + 'connection' => env('DB_CACHE_CONNECTION'), + 'table' => env('DB_CACHE_TABLE', 'cache'), + 'lock_connection' => env('DB_CACHE_LOCK_CONNECTION'), + 'lock_table' => env('DB_CACHE_LOCK_TABLE'), ], 'file' => [ 'driver' => 'file', 'path' => storage_path('framework/cache/data'), + 'lock_path' => storage_path('framework/cache/data'), ], 'memcached' => [ @@ -77,8 +75,8 @@ 'redis' => [ 'driver' => 'redis', - 'connection' => 'cache', - 'lock_connection' => 'default', + 'connection' => env('REDIS_CACHE_CONNECTION', 'cache'), + 'lock_connection' => env('REDIS_CACHE_LOCK_CONNECTION', 'default'), ], 'dynamodb' => [ diff --git a/nova/config/cors.php b/nova/config/cors.php deleted file mode 100644 index ec8d2d85e..000000000 --- a/nova/config/cors.php +++ /dev/null @@ -1,36 +0,0 @@ - ['api/*', 'sanctum/csrf-cookie'], - - 'allowed_methods' => ['*'], - - 'allowed_origins' => ['*'], - - 'allowed_origins_patterns' => [], - - 'allowed_headers' => ['*'], - - 'exposed_headers' => [], - - 'max_age' => 0, - - 'supports_credentials' => false, - -]; diff --git a/nova/config/data.php b/nova/config/data.php index ff83c0330..17cbb97e5 100644 --- a/nova/config/data.php +++ b/nova/config/data.php @@ -3,14 +3,37 @@ declare(strict_types=1); return [ - /* + /** * The package will use this format when working with dates. If this option * is an array, it will try to convert from the first format that works, * and will serialize dates using the first format from the array. */ 'date_format' => DATE_ATOM, - /* + /** + * When transforming or casting dates, the following timezone will be used to + * convert the date to the correct timezone. If set to null no timezone will + * be passed. + */ + 'date_timezone' => null, + + /** + * It is possible to enable certain features of the package, these would otherwise + * be breaking changes, and thus they are disabled by default. In the next major + * version of the package, these features will be enabled by default. + */ + 'features' => [ + 'cast_and_transform_iterables' => false, + + /** + * When trying to set a computed property value, the package will throw an exception. + * You can disable this behaviour by setting this option to true, which will then just + * ignore the value being passed into the computed property and recalculate it. + */ + 'ignore_exception_when_trying_to_set_computed_property_value' => false, + ], + + /** * Global transformers will take complex types and transform them into simple * types. */ @@ -20,16 +43,17 @@ BackedEnum::class => Spatie\LaravelData\Transformers\EnumTransformer::class, ], - /* + /** * Global casts will cast values into complex types when creating a data * object from simple types. */ 'casts' => [ DateTimeInterface::class => Spatie\LaravelData\Casts\DateTimeInterfaceCast::class, BackedEnum::class => Spatie\LaravelData\Casts\EnumCast::class, + // Enumerable::class => Spatie\LaravelData\Casts\EnumerableCast::class, ], - /* + /** * Rule inferrers can be configured here. They will automatically add * validation rules to properties of a data object based upon * the type of the property. @@ -49,13 +73,14 @@ */ 'normalizers' => [ Spatie\LaravelData\Normalizers\ModelNormalizer::class, + // Spatie\LaravelData\Normalizers\FormRequestNormalizer::class, Spatie\LaravelData\Normalizers\ArrayableNormalizer::class, Spatie\LaravelData\Normalizers\ObjectNormalizer::class, Spatie\LaravelData\Normalizers\ArrayNormalizer::class, Spatie\LaravelData\Normalizers\JsonNormalizer::class, ], - /* + /** * Data objects can be wrapped into a key like 'data' when used as a resource, * this key can be set globally here for all data objects. You can pass in * `null` if you want to disable wrapping. @@ -69,4 +94,94 @@ * which will only enable the caster locally. */ 'var_dumper_caster_mode' => 'development', + + /** + * It is possible to skip the PHP reflection analysis of data objects + * when running in production. This will speed up the package. You + * can configure where data objects are stored and which cache + * store should be used. + * + * Structures are cached forever as they'll become stale when your + * application is deployed with changes. You can set a duration + * in seconds if you want the cache to clear after a certain + * timeframe. + */ + 'structure_caching' => [ + 'enabled' => true, + 'directories' => [app_path('Data')], + 'cache' => [ + 'store' => env('CACHE_STORE', env('CACHE_DRIVER', 'file')), + 'prefix' => 'laravel-data', + 'duration' => null, + ], + 'reflection_discovery' => [ + 'enabled' => true, + 'base_path' => base_path(), + 'root_namespace' => null, + ], + ], + + /** + * A data object can be validated when created using a factory or when calling the from + * method. By default, only when a request is passed the data is being validated. This + * behaviour can be changed to always validate or to completely disable validation. + */ + 'validation_strategy' => \Spatie\LaravelData\Support\Creation\ValidationStrategy::OnlyRequests->value, + + /** + * When using an invalid include, exclude, only or except partial, the package will + * throw an exception. You can disable this behaviour by setting this option to true. + */ + 'ignore_invalid_partials' => false, + + /** + * When transforming a nested chain of data objects, the package can end up in an infinite + * loop when including a recursive relationship. The max transformation depth can be + * set as a safety measure to prevent this from happening. When set to null, the + * package will not enforce a maximum depth. + */ + 'max_transformation_depth' => null, + + /** + * When the maximum transformation depth is reached, the package will throw an exception. + * You can disable this behaviour by setting this option to true which will return an + * empty array. + */ + 'throw_when_max_transformation_depth_reached' => true, + + /** + * When using the `make:data` command, the package will use these settings to generate + * the data classes. You can override these settings by passing options to the command. + */ + 'commands' => [ + /** + * Provides default configuration for the `make:data` command. These settings can be overridden with options + * passed directly to the `make:data` command for generating single Data classes, or if not set they will + * automatically fall back to these defaults. See `php artisan make:data --help` for more information + */ + 'make' => [ + /** + * The default namespace for generated Data classes. This exists under the application's root namespace, + * so the default 'Data` will end up as '\App\Data', and generated Data classes will be placed in the + * app/Data/ folder. Data classes can live anywhere, but this is where `make:data` will put them. + */ + 'namespace' => 'Data', + + /** + * This suffix will be appended to all data classes generated by make:data, so that they are less likely + * to conflict with other related classes, controllers or models with a similar name without resorting + * to adding an alias for the Data object. Set to a blank string (not null) to disable. + */ + 'suffix' => 'Data', + ], + ], + + /** + * When using Livewire, the package allows you to enable or disable the synths + * these synths will automatically handle the data objects and their + * properties when used in a Livewire component. + */ + 'livewire' => [ + 'enable_synths' => false, + ], ]; diff --git a/nova/config/database.php b/nova/config/database.php index 48d836a05..a764ee0fc 100644 --- a/nova/config/database.php +++ b/nova/config/database.php @@ -39,7 +39,7 @@ 'sqlite' => [ 'driver' => 'sqlite', - 'url' => env('DATABASE_URL'), + 'url' => env('DB_URL'), 'database' => env('DB_DATABASE', database_path('database.sqlite')), 'prefix' => '', 'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true), @@ -47,15 +47,15 @@ 'mysql' => [ 'driver' => 'mysql', - 'url' => env('DATABASE_URL'), + 'url' => env('DB_URL'), 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'unconfigured'), 'username' => env('DB_USERNAME', 'username'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => env('DB_SOCKET', ''), - 'charset' => 'utf8mb4', - 'collation' => 'utf8mb4_unicode_ci', + 'charset' => env('DB_CHARSET', 'utf8mb4'), + 'collation' => env('DB_COLLATION', 'utf8mb4_unicode_ci'), 'prefix' => env('DB_PREFIX', ''), 'prefix_indexes' => true, 'strict' => true, @@ -67,7 +67,7 @@ 'nova2' => [ 'driver' => 'mysql', - 'url' => env('DATABASE_URL'), + 'url' => env('DB_URL'), 'host' => env('DB_NOVA2_HOST', '127.0.0.1'), 'port' => env('DB_NOVA2_PORT', '3306'), 'database' => env('DB_NOVA2_DATABASE', 'unconfigured'), @@ -105,15 +105,35 @@ ]) : [], ], + 'mariadb' => [ + 'driver' => 'mariadb', + 'url' => env('DB_URL'), + 'host' => env('DB_HOST', '127.0.0.1'), + 'port' => env('DB_PORT', '3306'), + 'database' => env('DB_DATABASE', 'laravel'), + 'username' => env('DB_USERNAME', 'root'), + 'password' => env('DB_PASSWORD', ''), + 'unix_socket' => env('DB_SOCKET', ''), + 'charset' => env('DB_CHARSET', 'utf8mb4'), + 'collation' => env('DB_COLLATION', 'utf8mb4_unicode_ci'), + 'prefix' => env('DB_PREFIX', ''), + 'prefix_indexes' => true, + 'strict' => true, + 'engine' => null, + 'options' => extension_loaded('pdo_mysql') ? array_filter([ + PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), + ]) : [], + ], + 'pgsql' => [ 'driver' => 'pgsql', - 'url' => env('DATABASE_URL'), + 'url' => env('DB_URL'), 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '5432'), - 'database' => env('DB_DATABASE', 'forge'), - 'username' => env('DB_USERNAME', 'forge'), + 'database' => env('DB_DATABASE', 'laravel'), + 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', ''), - 'charset' => 'utf8', + 'charset' => env('DB_CHARSET', 'utf8'), 'prefix' => env('DB_PREFIX', ''), 'prefix_indexes' => true, 'search_path' => 'public', @@ -122,13 +142,13 @@ 'sqlsrv' => [ 'driver' => 'sqlsrv', - 'url' => env('DATABASE_URL'), + 'url' => env('DB_URL'), 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', '1433'), - 'database' => env('DB_DATABASE', 'forge'), - 'username' => env('DB_USERNAME', 'forge'), + 'database' => env('DB_DATABASE', 'laravel'), + 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', ''), - 'charset' => 'utf8', + 'charset' => env('DB_CHARSET', 'utf8'), 'prefix' => env('DB_PREFIX', ''), 'prefix_indexes' => true, // 'encrypt' => env('DB_ENCRYPT', 'yes'), @@ -143,11 +163,14 @@ | | This table keeps track of all the migrations that have already run for | your application. Using this information, we can determine which of - | the migrations on disk haven't actually been run in the database. + | the migrations on disk haven't actually been run on the database. | */ - 'migrations' => 'migrations', + 'migrations' => [ + 'table' => 'migrations', + 'update_date_on_publish' => true, + ], /* |-------------------------------------------------------------------------- diff --git a/nova/config/fortify.php b/nova/config/fortify.php index de6d670e4..041454c97 100644 --- a/nova/config/fortify.php +++ b/nova/config/fortify.php @@ -3,147 +3,69 @@ declare(strict_types=1); use Laravel\Fortify\Features; -use Nova\Foundation\Providers\RouteServiceProvider; return [ - - /* - |-------------------------------------------------------------------------- - | Fortify Guard - |-------------------------------------------------------------------------- - | - | Here you may specify which authentication guard Fortify will use while - | authenticating users. This value should correspond with one of your - | guards that is already present in your "auth" configuration file. - | - */ - 'guard' => 'web', - - /* - |-------------------------------------------------------------------------- - | Fortify Password Broker - |-------------------------------------------------------------------------- - | - | Here you may specify which password broker Fortify can use when a user - | is resetting their password. This configured value should match one - | of your password brokers setup in your "auth" configuration file. - | - */ - + 'middleware' => ['web'], + 'auth_middleware' => 'auth', 'passwords' => 'users', - - /* - |-------------------------------------------------------------------------- - | Username / Email - |-------------------------------------------------------------------------- - | - | This value defines which model attribute should be considered as your - | application's "username" field. Typically, this might be the email - | address of the users but you are free to change this value here. - | - | Out of the box, Fortify expects forgot password and reset password - | requests to have a field named 'email'. If the application uses - | another name for the field you may define it below as needed. - | - */ - 'username' => 'email', - 'email' => 'email', - - /* - |-------------------------------------------------------------------------- - | Home Path - |-------------------------------------------------------------------------- - | - | Here you may configure the path where users will get redirected during - | authentication or password reset when the operations are successful - | and the user is authenticated. You are free to change this value. - | - */ - - 'home' => RouteServiceProvider::HOME, - - /* - |-------------------------------------------------------------------------- - | Fortify Routes Prefix / Subdomain - |-------------------------------------------------------------------------- - | - | Here you may specify which prefix Fortify will assign to all the routes - | that it registers with the application. If necessary, you may change - | subdomain under which all of the Fortify routes will be available. - | - */ - + 'views' => true, + 'home' => '/dashboard', 'prefix' => '', - 'domain' => null, - - /* - |-------------------------------------------------------------------------- - | Fortify Routes Middleware - |-------------------------------------------------------------------------- - | - | Here you may specify which middleware Fortify will assign to the routes - | that it registers with the application. If necessary, you may change - | these middleware but typically this provided default is preferred. - | - */ - - 'middleware' => ['web'], - - /* - |-------------------------------------------------------------------------- - | Rate Limiting - |-------------------------------------------------------------------------- - | - | By default, Fortify will throttle logins to five requests per minute for - | every email and IP address combination. However, if you would like to - | specify a custom rate limiter to call then you may specify it here. - | - */ - + 'lowercase_usernames' => false, 'limiters' => [ - 'login' => 'login', - 'two-factor' => 'two-factor', + 'login' => null, + ], + 'paths' => [ + 'login' => null, + 'logout' => null, + 'password' => [ + 'request' => null, + 'reset' => null, + 'email' => null, + 'update' => null, + 'confirm' => null, + 'confirmation' => null, + ], + 'register' => null, + 'verification' => [ + 'notice' => null, + 'verify' => null, + 'send' => null, + ], + 'user-profile-information' => [ + 'update' => null, + ], + 'user-password' => [ + 'update' => null, + ], + 'two-factor' => [ + 'login' => null, + 'enable' => null, + 'confirm' => null, + 'disable' => null, + 'qr-code' => null, + 'secret-key' => null, + 'recovery-codes' => null, + ], + ], + 'redirects' => [ + 'login' => null, + 'logout' => null, + 'password-confirmation' => null, + 'register' => null, + 'email-verification' => null, + 'password-reset' => null, ], - - /* - |-------------------------------------------------------------------------- - | Register View Routes - |-------------------------------------------------------------------------- - | - | Here you may specify if the routes returning views should be disabled as - | you may not need them when building your own application. This may be - | especially true if you're writing a custom single-page application. - | - */ - - 'views' => true, - - /* - |-------------------------------------------------------------------------- - | Features - |-------------------------------------------------------------------------- - | - | Some of the Fortify features are optional. You may disable the features - | by removing them from this array. You're free to only remove some of - | these features or you can even remove all of these if you need to. - | - */ - 'features' => [ // Features::registration(), Features::resetPasswords(), // Features::emailVerification(), // Features::updateProfileInformation(), Features::updatePasswords(), - // Features::twoFactorAuthentication([ - // 'confirm' => true, - // 'confirmPassword' => true, - // 'window' => 0, - // ]), + // Features::twoFactorAuthentication(), ], - ]; diff --git a/nova/config/hashing.php b/nova/config/hashing.php deleted file mode 100644 index 28b61d102..000000000 --- a/nova/config/hashing.php +++ /dev/null @@ -1,54 +0,0 @@ - 'bcrypt', - - /* - |-------------------------------------------------------------------------- - | Bcrypt Options - |-------------------------------------------------------------------------- - | - | Here you may specify the configuration options that should be used when - | passwords are hashed using the Bcrypt algorithm. This will allow you - | to control the amount of time it takes to hash the given password. - | - */ - - 'bcrypt' => [ - 'rounds' => env('BCRYPT_ROUNDS', 12), - ], - - /* - |-------------------------------------------------------------------------- - | Argon Options - |-------------------------------------------------------------------------- - | - | Here you may specify the configuration options that should be used when - | passwords are hashed using the Argon algorithm. These will allow you - | to control the amount of time it takes to hash the given password. - | - */ - - 'argon' => [ - 'memory' => 65536, - 'threads' => 1, - 'time' => 4, - ], - -]; diff --git a/nova/config/logging.php b/nova/config/logging.php index 526b197ca..f3abad214 100644 --- a/nova/config/logging.php +++ b/nova/config/logging.php @@ -35,7 +35,7 @@ 'deprecations' => [ 'channel' => env('LOG_DEPRECATIONS_CHANNEL', 'null'), - 'trace' => false, + 'trace' => env('LOG_DEPRECATIONS_TRACE', false), ], /* @@ -54,9 +54,10 @@ */ 'channels' => [ + 'stack' => [ 'driver' => 'stack', - 'channels' => ['daily'], + 'channels' => explode(',', env('LOG_STACK', 'single')), 'ignore_exceptions' => false, ], @@ -71,15 +72,15 @@ 'driver' => 'daily', 'path' => storage_path('logs/laravel.log'), 'level' => env('LOG_LEVEL', 'debug'), - 'days' => 14, + 'days' => env('LOG_DAILY_DAYS', 14), 'replace_placeholders' => true, ], 'slack' => [ 'driver' => 'slack', 'url' => env('LOG_SLACK_WEBHOOK_URL'), - 'username' => 'Laravel Log', - 'emoji' => ':boom:', + 'username' => env('LOG_SLACK_USERNAME', 'Laravel Log'), + 'emoji' => env('LOG_SLACK_EMOJI', ':boom:'), 'level' => env('LOG_LEVEL', 'critical'), 'replace_placeholders' => true, ], @@ -110,7 +111,7 @@ 'syslog' => [ 'driver' => 'syslog', 'level' => env('LOG_LEVEL', 'debug'), - 'facility' => LOG_USER, + 'facility' => env('LOG_SYSLOG_FACILITY', LOG_USER), 'replace_placeholders' => true, ], diff --git a/nova/config/mail.php b/nova/config/mail.php index a1264e7b7..1e38ec326 100644 --- a/nova/config/mail.php +++ b/nova/config/mail.php @@ -39,13 +39,14 @@ 'smtp' => [ 'transport' => 'smtp', - 'host' => env('MAIL_HOST', 'smtp.mailgun.org'), - 'port' => env('MAIL_PORT', 587), + 'url' => env('MAIL_URL'), + 'host' => env('MAIL_HOST', '127.0.0.1'), + 'port' => env('MAIL_PORT', 2525), 'encryption' => env('MAIL_ENCRYPTION', 'tls'), 'username' => env('MAIL_USERNAME'), 'password' => env('MAIL_PASSWORD'), 'timeout' => null, - 'local_domain' => env('MAIL_EHLO_DOMAIN'), + 'local_domain' => env('MAIL_EHLO_DOMAIN', parse_url(env('APP_URL', 'http://localhost'), PHP_URL_HOST)), ], 'ses' => [ @@ -61,11 +62,16 @@ 'postmark' => [ 'transport' => 'postmark', + // 'message_stream_id' => env('POSTMARK_MESSAGE_STREAM_ID'), // 'client' => [ // 'timeout' => 5, // ], ], + 'resend' => [ + 'transport' => 'resend', + ], + 'sendmail' => [ 'transport' => 'sendmail', 'path' => env('MAIL_SENDMAIL_PATH', '/usr/sbin/sendmail -bs -i'), @@ -88,6 +94,14 @@ ], ], + 'roundrobin' => [ + 'transport' => 'roundrobin', + 'mailers' => [ + 'ses', + 'postmark', + ], + ], + ], /* @@ -95,9 +109,9 @@ | Global "From" Address |-------------------------------------------------------------------------- | - | You may wish for all e-mails sent by your application to be sent from - | the same address. Here, you may specify a name and address that is - | used globally for all e-mails that are sent by your application. + | You may wish for all emails sent by your application to be sent from + | the same address. Here you may specify a name and address that is + | used globally for all emails that are sent by your application. | */ @@ -106,24 +120,4 @@ 'name' => env('MAIL_FROM_NAME', 'Example'), ], - /* - |-------------------------------------------------------------------------- - | Markdown Mail Settings - |-------------------------------------------------------------------------- - | - | If you are using Markdown based email rendering, you may configure your - | theme and component paths here, allowing you to customize the design - | of the emails. Or, you may simply stick with the Laravel defaults! - | - */ - - 'markdown' => [ - 'theme' => 'default', - - 'paths' => [ - resource_path('views/emails/layouts'), - resource_path('views/vendor/mail'), - ], - ], - ]; diff --git a/nova/config/queue.php b/nova/config/queue.php index 485dd985a..67db97c37 100644 --- a/nova/config/queue.php +++ b/nova/config/queue.php @@ -38,17 +38,18 @@ 'database' => [ 'driver' => 'database', - 'table' => 'jobs', - 'queue' => 'default', - 'retry_after' => 90, + 'connection' => env('DB_QUEUE_CONNECTION'), + 'table' => env('DB_QUEUE_TABLE', 'jobs'), + 'queue' => env('DB_QUEUE', 'default'), + 'retry_after' => (int) env('DB_QUEUE_RETRY_AFTER', 90), 'after_commit' => false, ], 'beanstalkd' => [ 'driver' => 'beanstalkd', - 'host' => 'localhost', - 'queue' => 'default', - 'retry_after' => 90, + 'host' => env('BEANSTALKD_QUEUE_HOST', 'localhost'), + 'queue' => env('BEANSTALKD_QUEUE', 'default'), + 'retry_after' => (int) env('BEANSTALKD_QUEUE_RETRY_AFTER', 90), 'block_for' => 0, 'after_commit' => false, ], @@ -66,29 +67,47 @@ 'redis' => [ 'driver' => 'redis', - 'connection' => 'default', + 'connection' => env('REDIS_QUEUE_CONNECTION', 'default'), 'queue' => env('REDIS_QUEUE', 'default'), - 'retry_after' => 90, + 'retry_after' => (int) env('REDIS_QUEUE_RETRY_AFTER', 90), 'block_for' => null, 'after_commit' => false, ], ], + /* + |-------------------------------------------------------------------------- + | Job Batching + |-------------------------------------------------------------------------- + | + | The following options configure the database and table that store job + | batching information. These options can be updated to any database + | connection and table which has been defined by your application. + | + */ + + 'batching' => [ + 'database' => env('DB_CONNECTION', 'sqlite'), + 'table' => 'job_batches', + ], + /* |-------------------------------------------------------------------------- | Failed Queue Jobs |-------------------------------------------------------------------------- | | These options configure the behavior of failed queue job logging so you - | can control which database and table are used to store the jobs that - | have failed. You may change them to any database / table you wish. + | can control how and where failed jobs are stored. Laravel ships with + | support for storing failed jobs in a simple file or in a database. + | + | Supported drivers: "database-uuids", "dynamodb", "file", "null" | */ 'failed' => [ 'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), - 'database' => env('DB_CONNECTION', 'mysql'), + 'database' => env('DB_CONNECTION', 'sqlite'), 'table' => 'failed_jobs', ], diff --git a/nova/config/services.php b/nova/config/services.php index 20cec8475..7e4138c36 100644 --- a/nova/config/services.php +++ b/nova/config/services.php @@ -40,4 +40,15 @@ 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), ], + 'resend' => [ + 'key' => env('RESEND_KEY'), + ], + + 'slack' => [ + 'notifications' => [ + 'bot_user_oauth_token' => env('SLACK_BOT_USER_OAUTH_TOKEN'), + 'channel' => env('SLACK_BOT_USER_DEFAULT_CHANNEL'), + ], + ], + ]; diff --git a/nova/config/session.php b/nova/config/session.php index eeee93d3d..7c4909281 100644 --- a/nova/config/session.php +++ b/nova/config/session.php @@ -35,7 +35,7 @@ 'lifetime' => env('SESSION_LIFETIME', 120), - 'expire_on_close' => false, + 'expire_on_close' => env('SESSION_EXPIRE_ON_CLOSE', false), /* |-------------------------------------------------------------------------- @@ -48,7 +48,7 @@ | */ - 'encrypt' => false, + 'encrypt' => env('SESSION_ENCRYPT', false), /* |-------------------------------------------------------------------------- @@ -87,7 +87,7 @@ | */ - 'table' => 'sessions', + 'table' => env('SESSION_TABLE', 'sessions'), /* |-------------------------------------------------------------------------- @@ -144,7 +144,7 @@ | */ - 'path' => '/', + 'path' => env('SESSION_PATH', '/'), /* |-------------------------------------------------------------------------- @@ -183,7 +183,7 @@ | */ - 'http_only' => true, + 'http_only' => env('SESSION_HTTP_ONLY', true), /* |-------------------------------------------------------------------------- @@ -198,6 +198,19 @@ | */ - 'same_site' => 'lax', + 'same_site' => env('SESSION_SAME_SITE', 'lax'), + + /* + |-------------------------------------------------------------------------- + | Partitioned Cookies + |-------------------------------------------------------------------------- + | + | Setting this value to true will tie the cookie to the top-level site for + | a cross-site context. Partitioned cookies are accepted by the browser + | when flagged "secure" and the Same-Site attribute is set to "none". + | + */ + + 'partitioned' => env('SESSION_PARTITIONED_COOKIE', false), ]; diff --git a/nova/config/typist.php b/nova/config/typist.php deleted file mode 100644 index d876db15b..000000000 --- a/nova/config/typist.php +++ /dev/null @@ -1,30 +0,0 @@ - [ - 'accepted_file_types' => ['image/jpeg', 'image/png', 'image/webp', 'image/svg+xml', 'application/pdf'], - 'disk' => env('FILAMENT_FILESYSTEM_DISK', 'public'), - 'directory' => 'media', - 'visibility' => 'public', - 'preserve_file_names' => false, - 'max_file_size' => 2042, - 'image_resize_mode' => null, - 'image_crop_aspect_ratio' => null, - 'image_resize_target_width' => null, - 'image_resize_target_height' => null, - 'use_relative_paths' => true, - ], -]; diff --git a/nova/config/view.php b/nova/config/view.php deleted file mode 100644 index d9c90c045..000000000 --- a/nova/config/view.php +++ /dev/null @@ -1,38 +0,0 @@ - [ - resource_path('views'), - ], - - /* - |-------------------------------------------------------------------------- - | Compiled View Path - |-------------------------------------------------------------------------- - | - | This option determines where all the compiled Blade templates will be - | stored for your application. Typically, this is within the storage - | directory. However, as usual, you are free to change this value. - | - */ - - 'compiled' => env( - 'VIEW_COMPILED_PATH', - realpath(storage_path('framework/views')) - ), - -]; diff --git a/nova/foundation/Application.php b/nova/foundation/Application.php index 53efe0c92..7d0e4eae3 100644 --- a/nova/foundation/Application.php +++ b/nova/foundation/Application.php @@ -110,6 +110,20 @@ public function resourcePath($path = '') return $this->joinPaths($this->novaPath('resources'), $path); } + /** + * Get the path to the bootstrap directory. + * + * NOTE: We override this because it is not possible to change the + * bootstrap path before the providers file is loaded. + * + * @param string $path + * @return string + */ + public function bootstrapPath($path = '') + { + return $this->joinPaths($this->novaPath('bootstrap'), $path); + } + /** * Are we using the secure skeleton? */ diff --git a/nova/foundation/Providers/AppServiceProvider.php b/nova/foundation/Providers/AppServiceProvider.php index eba161595..1efc1479d 100644 --- a/nova/foundation/Providers/AppServiceProvider.php +++ b/nova/foundation/Providers/AppServiceProvider.php @@ -12,16 +12,23 @@ use Filament\Tables\Columns\TextColumn; use Filament\Tables\Table; use FilamentTiptapEditor\TiptapEditor; +use Illuminate\Auth\Events\Registered; +use Illuminate\Auth\Listeners\SendEmailVerificationNotification; +use Illuminate\Cache\RateLimiting\Limit; use Illuminate\Database\Eloquent\Factories\Factory; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Foundation\Console\AboutCommand; use Illuminate\Http\RedirectResponse; +use Illuminate\Http\Request; +use Illuminate\Mail\Events\MessageSending; use Illuminate\Routing\Redirector; use Illuminate\Routing\Route; use Illuminate\Support\Arr; use Illuminate\Support\Facades\Blade; use Illuminate\Support\Facades\Date; +use Illuminate\Support\Facades\Event; +use Illuminate\Support\Facades\RateLimiter; use Illuminate\Support\ServiceProvider; use Illuminate\Support\Str; use Illuminate\View\ComponentAttributeBag; @@ -34,6 +41,7 @@ use Nova\Foundation\Filament\Notifications\Notification; use Nova\Foundation\Icons\IconSets; use Nova\Foundation\Icons\TablerIconSet; +use Nova\Foundation\Listeners\SetEmailSubjectPrefix; use Nova\Foundation\Livewire\AdvancedColorPicker; use Nova\Foundation\Livewire\ColorShadePicker; use Nova\Foundation\Livewire\ConfirmationModal; @@ -51,6 +59,7 @@ use Nova\Foundation\View\Components\Tips; use Nova\Navigation\Models\Navigation; use Nova\Pages\Blocks; +use Nova\Pages\Models\Page; use Nova\Settings\Models\Settings; class AppServiceProvider extends ServiceProvider @@ -98,6 +107,7 @@ public function boot(): void return null; }); + $this->configureRateLimiting(); $this->registerMacros(); $this->updateAboutCommand(); $this->setupFactories(); @@ -118,6 +128,7 @@ public function boot(): void $this->registerLivewireComponents(); $this->registerResponseFilters(); $this->setupFilament(); + $this->setupGlobalEventListeners(); } } @@ -131,11 +142,17 @@ protected function registerMacros() Arr::mixin(new Macros\ArrMacros()); Redirector::mixin(new Macros\NotificationMacros()); RedirectResponse::mixin(new Macros\NotificationMacros()); - Route::mixin(new Macros\RouteMacros()); Str::mixin(new Macros\StrMacros()); TextColumn::mixin(new Macros\TextColumnMacros()); ViewFactory::mixin(new Macros\ViewMacros()); + Route::macro('findPageFromRoute', function () { + /** @var Route */ + $route = $this; + + return Page::key($route->getName())->first(); + }); + ComponentAttributeBag::macro('hasStartsWith', function ($key) { /** @var ComponentAttributeBag */ $bag = $this; @@ -298,4 +315,17 @@ protected function registerBlocks(): void $this->app[BlockManager::class]->blocks()->toArray() ); } + + protected function setupGlobalEventListeners(): void + { + Event::listen(Registered::class, SendEmailVerificationNotification::class); + Event::listen(MessageSending::class, SetEmailSubjectPrefix::class); + } + + protected function configureRateLimiting(): void + { + RateLimiter::for('api', function (Request $request) { + return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip()); + }); + } } diff --git a/nova/foundation/Providers/AuthServiceProvider.php b/nova/foundation/Providers/AuthServiceProvider.php deleted file mode 100644 index 0bb030822..000000000 --- a/nova/foundation/Providers/AuthServiceProvider.php +++ /dev/null @@ -1,27 +0,0 @@ - - */ - protected $policies = [ - // 'App\Models\Model' => 'App\Policies\ModelPolicy', - ]; - - /** - * Register any authentication / authorization services. - */ - public function boot(): void - { - // - } -} diff --git a/nova/foundation/Providers/BroadcastServiceProvider.php b/nova/foundation/Providers/BroadcastServiceProvider.php deleted file mode 100644 index 062956b48..000000000 --- a/nova/foundation/Providers/BroadcastServiceProvider.php +++ /dev/null @@ -1,21 +0,0 @@ -> - */ - protected $listen = [ - Registered::class => [ - SendEmailVerificationNotification::class, - ], - MessageSending::class => [ - SetEmailSubjectPrefix::class, - ], - ]; - - /** - * Register any events for your application. - */ - public function boot(): void - { - // - } - - /** - * Determine if events and listeners should be automatically discovered. - */ - public function shouldDiscoverEvents(): bool - { - return false; - } -} diff --git a/nova/foundation/Providers/FortifyServiceProvider.php b/nova/foundation/Providers/FortifyServiceProvider.php index 8818ea6fc..f96385a40 100644 --- a/nova/foundation/Providers/FortifyServiceProvider.php +++ b/nova/foundation/Providers/FortifyServiceProvider.php @@ -17,17 +17,6 @@ class FortifyServiceProvider extends ServiceProvider { - /** - * Register any application services. - */ - public function register(): void - { - // - } - - /** - * Bootstrap any application services. - */ public function boot(): void { Fortify::loginView('pages.auth.login'); diff --git a/nova/foundation/Providers/ResponsesServiceProvider.php b/nova/foundation/Providers/ResponsesServiceProvider.php deleted file mode 100644 index 2c69ec7b1..000000000 --- a/nova/foundation/Providers/ResponsesServiceProvider.php +++ /dev/null @@ -1,44 +0,0 @@ -event('responses service provider register')->color('purple')->begin(); - - $this->registerResponseClasses(); - - clock()->event('fortify service provider register')->end(); - } - - public function provides() - { - return $this->getResponsableClasses(); - } - - protected function getResponsableClasses() - { - return [ - \Nova\Foundation\Responses\SimplePageResponse::class, - \Nova\Foundation\Responses\WelcomePageResponse::class, - ]; - } - - protected function registerResponseClasses() - { - collect($this->getResponsableClasses()) - ->each(function ($responsable) { - $this->app->singleton($responsable, function ($app) use ($responsable) { - $page = optional(request()->route())->findPageFromRoute(); - - return new $responsable($page, $app); - }); - }); - } -} diff --git a/nova/foundation/Providers/RouteServiceProvider.php b/nova/foundation/Providers/RouteServiceProvider.php deleted file mode 100644 index e21cc7b42..000000000 --- a/nova/foundation/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,57 +0,0 @@ -configureRateLimiting(); - - $this->routes(function () { - Route::prefix('api') - ->middleware('api') - ->group(nova_path('routes/api.php')); - - Route::middleware(['web', CheckVersion::class]) - ->group(nova_path('routes/web.php')); - - if (app()->environment('local')) { - Route::prefix('test') - ->middleware('web') - ->group(nova_path('routes/local.php')); - } - }); - } - - /** - * Configure the rate limiters for the application. - */ - protected function configureRateLimiting(): void - { - RateLimiter::for('api', function (Request $request) { - return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip()); - }); - } -} diff --git a/nova/foundation/Providers/TelescopeServiceProvider.php b/nova/foundation/Providers/TelescopeServiceProvider.php deleted file mode 100644 index f8b58853d..000000000 --- a/nova/foundation/Providers/TelescopeServiceProvider.php +++ /dev/null @@ -1,69 +0,0 @@ -hideSensitiveRequestDetails(); - - Telescope::filter(function (IncomingEntry $entry) { - return true; - - if ($this->app->environment('local')) { - return true; - } - - return $entry->isReportableException() || - $entry->isFailedRequest() || - $entry->isFailedJob() || - $entry->isScheduledTask() || - $entry->hasMonitoredTag(); - }); - } - - /** - * Prevent sensitive request details from being logged by Telescope. - */ - protected function hideSensitiveRequestDetails(): void - { - if ($this->app->environment('local')) { - return; - } - - Telescope::hideRequestParameters(['_token']); - - Telescope::hideRequestHeaders([ - 'cookie', - 'x-csrf-token', - 'x-xsrf-token', - ]); - } - - /** - * Register the Telescope gate. - * - * This gate determines who can access Telescope in non-local environments. - */ - protected function gate(): void - { - Gate::define('viewTelescope', function ($user) { - return in_array($user->email, [ - 'admin@admin.com', - ]); - }); - } -} diff --git a/nova/routes/local.php b/nova/routes/local.php index ab517e156..6db7a017e 100644 --- a/nova/routes/local.php +++ b/nova/routes/local.php @@ -105,5 +105,5 @@ Route::get('test', function () { $form = Form::find(2); - dd($form->validation_rules); + dd($form); }); From c2f90949ec6ac3819ed01db9606e408e04c44256 Mon Sep 17 00:00:00 2001 From: David VanScott Date: Tue, 9 Jul 2024 17:37:06 -0400 Subject: [PATCH 15/15] wip --- .../Characters/Livewire/CharactersList.php | 8 +- .../Characters/Policies/CharacterPolicy.php | 1 + .../Characters/ActivateCharacterTest.php | 32 ++++---- .../Characters/CreateCharacterTest.php | 24 +++--- .../Characters/DeactivateCharacterTest.php | 80 ++++++++++--------- .../Characters/DeleteCharacterTest.php | 24 +++--- .../Feature/Characters/EditCharacterTest.php | 24 +++--- .../Characters/RestoreCharacterTest.php | 25 +++--- .../Feature/Characters/ViewCharacterTest.php | 24 +++--- 9 files changed, 124 insertions(+), 118 deletions(-) diff --git a/nova/src/Characters/Livewire/CharactersList.php b/nova/src/Characters/Livewire/CharactersList.php index cfd9252be..c71659c4e 100644 --- a/nova/src/Characters/Livewire/CharactersList.php +++ b/nova/src/Characters/Livewire/CharactersList.php @@ -95,7 +95,7 @@ public function table(Table $table): Table ])->authorizeAny(['view', 'update'])->divided(), ActionGroup::make([ - Action::make('activate') + Action::make('activateCharacter') ->authorize('activate') ->icon(iconName('check')) ->color('gray') @@ -110,7 +110,7 @@ public function table(Table $table): Table ->title($record->name.' has been activated') ->send(); }), - Action::make('deactivate') + Action::make('deactivateCharacter') ->authorize('deactivate') ->icon(iconName('remove')) ->color('gray') @@ -164,7 +164,7 @@ public function table(Table $table): Table ]), ]) ->groupedBulkActions([ - BulkAction::make('bulk_activate') + BulkAction::make('bulkActivateCharacter') ->authorize('activateAny') ->icon(iconName('check')) ->color('gray') @@ -202,7 +202,7 @@ public function table(Table $table): Table }) ->send(); }), - BulkAction::make('bulk_deactivate') + BulkAction::make('bulkDeactivateCharacter') ->authorize('deactivateAny') ->icon(iconName('remove')) ->color('gray') diff --git a/nova/src/Characters/Policies/CharacterPolicy.php b/nova/src/Characters/Policies/CharacterPolicy.php index a7732b3c8..0a326f5aa 100644 --- a/nova/src/Characters/Policies/CharacterPolicy.php +++ b/nova/src/Characters/Policies/CharacterPolicy.php @@ -204,6 +204,7 @@ public function assignAsPrimary(User $user): Response public function manage(User $user, Character $character): Response { return match (true) { + $user->isAbleTo('character.view') => $this->allow(), $this->create($user)->allowed() => $this->allow(), $user->isAbleTo('character.update') => $this->allow(), $this->deleteAny($user, $character)->allowed() => $this->allow(), diff --git a/tests/Feature/Characters/ActivateCharacterTest.php b/tests/Feature/Characters/ActivateCharacterTest.php index dde603c88..55c32a2dc 100644 --- a/tests/Feature/Characters/ActivateCharacterTest.php +++ b/tests/Feature/Characters/ActivateCharacterTest.php @@ -29,7 +29,7 @@ $character = Character::factory()->inactive()->create(); livewire(CharactersList::class) - ->callTableAction('activate', $character) + ->callTableAction('activateCharacter', $character) ->assertNotified(); assertDatabaseHas(Character::class, [ @@ -44,7 +44,7 @@ $characters = Character::factory(3)->inactive()->create(); livewire(CharactersList::class) - ->callTableBulkAction('bulk_activate', $characters) + ->callTableBulkAction('bulkActivateCharacter', $characters) ->assertNotified(); foreach ($characters as $character) { @@ -66,22 +66,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionVisible('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionVisible('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); @@ -94,7 +94,7 @@ $character = Character::factory()->inactive()->create(); livewire(CharactersList::class) - ->assertTableActionHidden('activate', $character); + ->assertTableActionHidden('activateCharacter', $character); assertDatabaseHas(Character::class, [ 'id' => $character->id, @@ -106,7 +106,7 @@ $characters = Character::factory(3)->inactive()->create(); livewire(CharactersList::class) - ->assertTableBulkActionHidden('bulk_activate', $characters); + ->assertTableBulkActionHidden('bulkActivateCharacter', $characters); foreach ($characters as $character) { assertDatabaseHas(Character::class, [ @@ -127,22 +127,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); diff --git a/tests/Feature/Characters/CreateCharacterTest.php b/tests/Feature/Characters/CreateCharacterTest.php index 44ce16438..e5905f179 100644 --- a/tests/Feature/Characters/CreateCharacterTest.php +++ b/tests/Feature/Characters/CreateCharacterTest.php @@ -66,22 +66,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); @@ -111,22 +111,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); diff --git a/tests/Feature/Characters/DeactivateCharacterTest.php b/tests/Feature/Characters/DeactivateCharacterTest.php index 23a026a77..c4a5c50fd 100644 --- a/tests/Feature/Characters/DeactivateCharacterTest.php +++ b/tests/Feature/Characters/DeactivateCharacterTest.php @@ -23,13 +23,45 @@ signIn(permissions: 'character.deactivate'); }); + test('has the correct permissions for list characters page', function () { + $activeCharacter = Character::factory()->active()->create(); + $inactiveCharacter = Character::factory()->inactive()->create(); + $deletedCharacter = Character::factory()->active()->trashed()->create(); + + // dd($activeCharacter, $inactiveCharacter); + + livewire(CharactersList::class) + // ->assertTableActionHidden(ViewAction::class, $activeCharacter) + // ->assertTableActionHidden(EditAction::class, $activeCharacter) + // ->assertTableActionHidden(DeleteAction::class, $activeCharacter) + // ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) + // ->assertTableActionHidden(RestoreAction::class, $activeCharacter) + // ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionVisible('deactivateCharacter', $activeCharacter); + // ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) + // ->assertTableActionHidden(EditAction::class, $inactiveCharacter) + // ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) + // ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) + // ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) + // ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + // ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) + // ->assertTableActionHidden(ViewAction::class, $deletedCharacter) + // ->assertTableActionHidden(EditAction::class, $deletedCharacter) + // ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) + // ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) + // ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) + // ->assertTableActionHidden('activateCharacter', $deletedCharacter) + // ->assertTableActionHidden('deactivateCharacter', $deletedCharacter) + })->only(); + test('can deactivate an active character', function () { Event::fake(); $character = Character::factory()->active()->create(); livewire(CharactersList::class) - ->callTableAction('deactivate', $character) + ->assertTableActionVisible('deactivateCharacter', $character) + ->callTableAction('deactivateCharacter', $character) ->assertNotified(); assertDatabaseHas(Character::class, [ @@ -44,7 +76,7 @@ $characters = Character::factory(3)->active()->create(); livewire(CharactersList::class) - ->callTableBulkAction('bulk_deactivate', $characters) + ->callTableBulkAction('bulkDeactivateCharacter', $characters) ->assertNotified(); foreach ($characters as $character) { @@ -55,34 +87,6 @@ } }); - test('has the correct permissions for list characters page', function () { - $activeCharacter = Character::factory()->active()->create(); - $inactiveCharacter = Character::factory()->inactive()->create(); - $deletedCharacter = Character::factory()->active()->trashed()->create(); - - livewire(CharactersList::class) - ->assertTableActionHidden(ViewAction::class, $activeCharacter) - ->assertTableActionHidden(EditAction::class, $activeCharacter) - ->assertTableActionHidden(DeleteAction::class, $activeCharacter) - ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) - ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionVisible('deactivate', $activeCharacter) - ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) - ->assertTableActionHidden(EditAction::class, $inactiveCharacter) - ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) - ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) - ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) - ->assertTableActionHidden(ViewAction::class, $deletedCharacter) - ->assertTableActionHidden(EditAction::class, $deletedCharacter) - ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) - ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) - ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); - }); }); describe('unauthorized user', function () { @@ -94,7 +98,7 @@ $character = Character::factory()->active()->create(); livewire(CharactersList::class) - ->assertTableActionHidden('deactivate', $character); + ->assertTableActionHidden('deactivateCharacter', $character); assertDatabaseHas(Character::class, [ 'id' => $character->id, @@ -106,7 +110,7 @@ $characters = Character::factory(3)->active()->create(); livewire(CharactersList::class) - ->assertTableBulkActionHidden('bulk_deactivate', $characters); + ->assertTableBulkActionHidden('bulkDeactivateCharacter', $characters); foreach ($characters as $character) { assertDatabaseHas(Character::class, [ @@ -127,22 +131,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); diff --git a/tests/Feature/Characters/DeleteCharacterTest.php b/tests/Feature/Characters/DeleteCharacterTest.php index 26b6b21a9..893c431af 100644 --- a/tests/Feature/Characters/DeleteCharacterTest.php +++ b/tests/Feature/Characters/DeleteCharacterTest.php @@ -98,22 +98,22 @@ ->assertTableActionVisible(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionVisible(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionVisible(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); @@ -163,22 +163,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); diff --git a/tests/Feature/Characters/EditCharacterTest.php b/tests/Feature/Characters/EditCharacterTest.php index a993371b5..616b16bc6 100644 --- a/tests/Feature/Characters/EditCharacterTest.php +++ b/tests/Feature/Characters/EditCharacterTest.php @@ -76,22 +76,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionVisible(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionVisible(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); @@ -123,22 +123,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); diff --git a/tests/Feature/Characters/RestoreCharacterTest.php b/tests/Feature/Characters/RestoreCharacterTest.php index 1da235b7b..18c52acd3 100644 --- a/tests/Feature/Characters/RestoreCharacterTest.php +++ b/tests/Feature/Characters/RestoreCharacterTest.php @@ -62,27 +62,28 @@ $deletedCharacter = Character::factory()->active()->trashed()->create(); livewire(CharactersList::class) + ->filterTable(TrashedFilter::class, true) ->assertTableActionHidden(ViewAction::class, $activeCharacter) ->assertTableActionHidden(EditAction::class, $activeCharacter) ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionVisible(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); @@ -116,22 +117,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); diff --git a/tests/Feature/Characters/ViewCharacterTest.php b/tests/Feature/Characters/ViewCharacterTest.php index 445ec4701..b9ba7e78a 100644 --- a/tests/Feature/Characters/ViewCharacterTest.php +++ b/tests/Feature/Characters/ViewCharacterTest.php @@ -38,22 +38,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionVisible(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionVisible(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); }); @@ -80,22 +80,22 @@ ->assertTableActionHidden(DeleteAction::class, $activeCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $activeCharacter) ->assertTableActionHidden(RestoreAction::class, $activeCharacter) - ->assertTableActionHidden('activate', $activeCharacter) - ->assertTableActionHidden('deactivate', $activeCharacter) + ->assertTableActionHidden('activateCharacter', $activeCharacter) + ->assertTableActionHidden('deactivateCharacter', $activeCharacter) ->assertTableActionHidden(ViewAction::class, $inactiveCharacter) ->assertTableActionHidden(EditAction::class, $inactiveCharacter) ->assertTableActionHidden(DeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $inactiveCharacter) ->assertTableActionHidden(RestoreAction::class, $inactiveCharacter) - ->assertTableActionHidden('activate', $inactiveCharacter) - ->assertTableActionHidden('deactivate', $inactiveCharacter) + ->assertTableActionHidden('activateCharacter', $inactiveCharacter) + ->assertTableActionHidden('deactivateCharacter', $inactiveCharacter) ->assertTableActionHidden(ViewAction::class, $deletedCharacter) ->assertTableActionHidden(EditAction::class, $deletedCharacter) ->assertTableActionHidden(DeleteAction::class, $deletedCharacter) ->assertTableActionHidden(ForceDeleteAction::class, $deletedCharacter) ->assertTableActionHidden(RestoreAction::class, $deletedCharacter) - ->assertTableActionHidden('activate', $deletedCharacter) - ->assertTableActionHidden('deactivate', $deletedCharacter); + ->assertTableActionHidden('activateCharacter', $deletedCharacter) + ->assertTableActionHidden('deactivateCharacter', $deletedCharacter); }); });