From 10eea35b3a3701b5a661bf9a96ee4f3c1ac4a711 Mon Sep 17 00:00:00 2001 From: Laurin Stapf Date: Tue, 10 Feb 2026 21:40:47 +0100 Subject: [PATCH 1/3] Fix typo --- js/wire-extender.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/wire-extender.js b/js/wire-extender.js index e27334d..abcc3d5 100644 --- a/js/wire-extender.js +++ b/js/wire-extender.js @@ -66,7 +66,7 @@ function waitForLivewireAndStart() { } async function startLivewire(assets) { - Livewire.interceptRequeset(({ request }) => { + Livewire.interceptRequest(({ request }) => { request.options.headers['X-Wire-Extender'] = '1'; request.options.credentials = 'include'; }); From 42ff0c7cdc041a032e0ee91a91e9ddf89d760884 Mon Sep 17 00:00:00 2001 From: Laurin Stapf Date: Sun, 19 Apr 2026 17:11:56 +0200 Subject: [PATCH 2/3] Remove livewire v3 support --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 5163002..dc3a413 100644 --- a/composer.json +++ b/composer.json @@ -3,7 +3,7 @@ "description": "Embed your Livewire components anywhere.", "require": { "php": "^8.1", - "livewire/livewire": "^3.4.7|^4.0" + "livewire/livewire": "^4.0" }, "license": "MIT", "autoload": { From 26e85ee19efdb5f6a60a03f0fbb49c62ebd44df4 Mon Sep 17 00:00:00 2001 From: Laurin Stapf Date: Sun, 19 Apr 2026 17:16:39 +0200 Subject: [PATCH 3/3] Refactor isEmbeddable method to directly use livewire finder for component resolution --- src/WireExtender.php | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/WireExtender.php b/src/WireExtender.php index 449f836..b9d30f6 100644 --- a/src/WireExtender.php +++ b/src/WireExtender.php @@ -12,7 +12,10 @@ class WireExtender public static function isEmbeddable($component): bool { try { - $reflectionClass = new ReflectionClass((new self)->resolveComponentClass($component)); + $reflectionClass = new ReflectionClass( + app('livewire.finder') + ->resolveClassComponentClassName($component) + ); $embedAttribute = $reflectionClass->getAttributes(Embeddable::class)[0] ?? null; return is_null($embedAttribute) === false; @@ -22,13 +25,4 @@ public static function isEmbeddable($component): bool return true; } - - protected function resolveComponentClass(string $component): string - { - if (class_exists(ComponentRegistry::class)) { - return app(ComponentRegistry::class)->getClass($component); - } - - return app('livewire.finder')->resolveClassComponentClassName($component); - } }