From 614bc70a7a75037c8300ffc1ed9892908ef46da9 Mon Sep 17 00:00:00 2001 From: Arnaud Lier Date: Wed, 14 Oct 2020 10:21:19 +0200 Subject: [PATCH] Add livewire component discovery solution. (#319) * Create LivewireDiscoverSolution.php * Create MissingLivewireComponentSolutionProvider.php * Update IgnitionServiceProvider.php * Update MissingLivewireComponentSolutionProvider.php * Update LivewireDiscoverSolution.php * fixes --- src/IgnitionServiceProvider.php | 2 + ...ssingLivewireComponentSolutionProvider.php | 33 ++++++++++++ src/Solutions/LivewireDiscoverSolution.php | 53 +++++++++++++++++++ 3 files changed, 88 insertions(+) create mode 100644 src/SolutionProviders/MissingLivewireComponentSolutionProvider.php create mode 100644 src/Solutions/LivewireDiscoverSolution.php diff --git a/src/IgnitionServiceProvider.php b/src/IgnitionServiceProvider.php index 0e2b7599..ea90d731 100644 --- a/src/IgnitionServiceProvider.php +++ b/src/IgnitionServiceProvider.php @@ -39,6 +39,7 @@ use Facade\Ignition\SolutionProviders\MissingAppKeySolutionProvider; use Facade\Ignition\SolutionProviders\MissingColumnSolutionProvider; use Facade\Ignition\SolutionProviders\MissingImportSolutionProvider; +use Facade\Ignition\SolutionProviders\MissingLivewireComponentSolutionProvider; use Facade\Ignition\SolutionProviders\MissingMixManifestSolutionProvider; use Facade\Ignition\SolutionProviders\MissingPackageSolutionProvider; use Facade\Ignition\SolutionProviders\RunningLaravelDuskInProductionProvider; @@ -373,6 +374,7 @@ protected function getDefaultSolutions(): array UnknownValidationSolutionProvider::class, UndefinedPropertySolutionProvider::class, MissingMixManifestSolutionProvider::class, + MissingLivewireComponentSolutionProvider::class, ]; } diff --git a/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php b/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php new file mode 100644 index 00000000..9975bee4 --- /dev/null +++ b/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php @@ -0,0 +1,33 @@ +customTitle = $customTitle; + } + + public function getSolutionTitle(): string + { + return $this->customTitle; + } + + public function getSolutionDescription(): string + { + return 'You might have forgotten to discover your livewire components. You can discover your livewire components using `php artisan livewire:discover`.'; + } + + public function getDocumentationLinks(): array + { + return [ + 'Livewire: Artisan Commands' => 'https://laravel-livewire.com/docs/2.x/artisan-commands', + ]; + } + + public function getRunParameters(): array + { + return []; + } + + public function getSolutionActionDescription(): string + { + return 'Pressing the button below will try to discover your components.'; + } + + public function getRunButtonText(): string + { + return 'Run livewire components discover'; + } + + public function run(array $parameters = []) + { + app(LivewireComponentsFinder::class)->build(); + } +}