From 981abc57fc879e5541c39d944272b6b15fadadba Mon Sep 17 00:00:00 2001 From: Arnaud Lier Date: Sat, 3 Oct 2020 20:30:24 +0200 Subject: [PATCH 1/6] Create LivewireDiscoverSolution.php --- src/Solutions/LivewireDiscoverSolution.php | 53 ++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 src/Solutions/LivewireDiscoverSolution.php diff --git a/src/Solutions/LivewireDiscoverSolution.php b/src/Solutions/LivewireDiscoverSolution.php new file mode 100644 index 00000000..a584ceae --- /dev/null +++ b/src/Solutions/LivewireDiscoverSolution.php @@ -0,0 +1,53 @@ +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 = []) + { + Artisan::call('livewire:discover'); + } +} From 71a2c32c2da4cced1ef68b11e0269febe94d8283 Mon Sep 17 00:00:00 2001 From: Arnaud Lier Date: Sat, 3 Oct 2020 20:41:18 +0200 Subject: [PATCH 2/6] Create MissingLivewireComponentSolutionProvider.php --- ...ssingLivewireComponentSolutionProvider.php | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/SolutionProviders/MissingLivewireComponentSolutionProvider.php diff --git a/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php b/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php new file mode 100644 index 00000000..a1b07bf5 --- /dev/null +++ b/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php @@ -0,0 +1,28 @@ + Date: Sat, 3 Oct 2020 20:45:57 +0200 Subject: [PATCH 3/6] Update IgnitionServiceProvider.php --- src/IgnitionServiceProvider.php | 2 ++ 1 file changed, 2 insertions(+) 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, ]; } From 35473721e4aa5e24a686bb56490f91744c1ef864 Mon Sep 17 00:00:00 2001 From: Arnaud Lier Date: Sat, 3 Oct 2020 20:54:33 +0200 Subject: [PATCH 4/6] Update MissingLivewireComponentSolutionProvider.php --- .../MissingLivewireComponentSolutionProvider.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php b/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php index a1b07bf5..5e5fd22a 100644 --- a/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php +++ b/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php @@ -5,13 +5,14 @@ use Facade\Ignition\Solutions\LivewireDiscoverSolution; use Facade\IgnitionContracts\HasSolutionsForThrowable; use Illuminate\Database\QueryException; +use Livewire\Exceptions\ComponentNotFoundException; use Throwable; class MissingLivewireComponentSolutionProvider implements HasSolutionsForThrowable { public function canSolve(Throwable $throwable): bool { - if (! class_exists('ComponentNotFoundException') { + if (! class_exists(ComponentNotFoundException::class)) { return false; } if (! $throwable instanceof \Livewire\Exceptions\ComponentNotFoundException) { From 6aefeb5c8a9ce7afab84669168089080198211c2 Mon Sep 17 00:00:00 2001 From: Arnaud Lier Date: Sat, 3 Oct 2020 21:05:32 +0200 Subject: [PATCH 5/6] Update LivewireDiscoverSolution.php --- src/Solutions/LivewireDiscoverSolution.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Solutions/LivewireDiscoverSolution.php b/src/Solutions/LivewireDiscoverSolution.php index a584ceae..b4ba545b 100644 --- a/src/Solutions/LivewireDiscoverSolution.php +++ b/src/Solutions/LivewireDiscoverSolution.php @@ -3,7 +3,7 @@ namespace Facade\Ignition\Solutions; use Facade\IgnitionContracts\RunnableSolution; -use Illuminate\Support\Facades\Artisan; +use Livewire\LivewireComponentsFinder; class LivewireDiscoverSolution implements RunnableSolution { @@ -48,6 +48,6 @@ public function getRunButtonText(): string public function run(array $parameters = []) { - Artisan::call('livewire:discover'); + app(LivewireComponentsFinder::class)->build(); } } From cbcffbc7de44443b43761439c432c38441a403a8 Mon Sep 17 00:00:00 2001 From: Arnaud Lier Date: Fri, 9 Oct 2020 19:08:53 +0200 Subject: [PATCH 6/6] fixes --- .../MissingLivewireComponentSolutionProvider.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php b/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php index 5e5fd22a..9975bee4 100644 --- a/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php +++ b/src/SolutionProviders/MissingLivewireComponentSolutionProvider.php @@ -6,6 +6,7 @@ use Facade\IgnitionContracts\HasSolutionsForThrowable; use Illuminate\Database\QueryException; use Livewire\Exceptions\ComponentNotFoundException; +use Livewire\LivewireComponentsFinder; use Throwable; class MissingLivewireComponentSolutionProvider implements HasSolutionsForThrowable @@ -15,7 +16,10 @@ public function canSolve(Throwable $throwable): bool if (! class_exists(ComponentNotFoundException::class)) { return false; } - if (! $throwable instanceof \Livewire\Exceptions\ComponentNotFoundException) { + if (! class_exists(LivewireComponentsFinder::class)) { + return false; + } + if (! $throwable instanceof ComponentNotFoundException) { return false; }