livewire: Volt entfernt — Komponenten als Livewire-4-Single-File-Components, Route::livewire(), Livewire::test(); livewire/volt deinstalliert

- 83 Komponenten: Livewire\Volt\Component → Livewire\Component
- 73 Routen (admin, auth, customer): Volt::route() → Route::livewire()
- 88 Testdateien: Volt::test/actingAs → Livewire::test/actingAs
- VoltServiceProvider gelöscht; composer remove livewire/volt
- config/livewire.php auf v4-Schlüssel (component_layout, component_placeholder,
  component_locations, make_command: SFC ohne ⚡). Der alte Schlüssel layout war
  wirkungslos; alle gerouteten Komponenten setzen ihr Layout selbst.
- CLAUDE.md, AGENTS.md, boost.json, .cursorrules, Skill volt-development
- Roadmap: erledigt; Larastan erfasst SFCs weiterhin nicht (Blade-Dateien)

Suite 2.325 grün, einer übersprungen; Larastan und Pint ohne Meldung;
route:cache und view:cache laufen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Kevin Adametz 2026-10-06 13:59:36 +00:00
parent 5782297dca
commit 2cde7284a1
186 changed files with 889 additions and 1075 deletions

View file

@ -16,7 +16,7 @@ use App\Services\Billing\SubscriptionPeriodResolver;
use Database\Seeders\LegalDocumentSeeder;
use Database\Seeders\RolesAndPermissionsSeeder;
use Illuminate\Support\Carbon;
use Livewire\Volt\Volt as LivewireVolt;
use Livewire\Livewire;
use Tests\TestCase;
beforeEach(function (): void {
@ -57,7 +57,7 @@ test('the bookings page renders the active plans with checkout links', function
BillingAddress::factory()->create(['user_id' => $user->id]);
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Business')
->assertSee('49 €')
->assertSee('490 €')
@ -86,7 +86,7 @@ test('the plan card renders the maintained benefits list', function () {
BillingAddress::factory()->create(['user_id' => $user->id]);
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Günstigere Extra-Pressemitteilungen')
->assertSee('Boost-Platzierung vergünstigt');
});
@ -99,7 +99,7 @@ test('the single pm block links to its checkout', function () {
BillingAddress::factory()->create(['user_id' => $user->id]);
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Einzel-Pressemitteilung — ohne Abo')
->assertSee('19 €')
->call('selectBooking', 'single_pm')
@ -113,7 +113,7 @@ test('without any booking the current tariff card is hidden', function () {
/** @var TestCase $this */
$this->actingAs(bookingsTestCustomer());
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertDontSee('Aktueller Tarif')
->assertSee('Den passenden Tarif wählen')
->assertSee('Noch kein Buchungsverlauf');
@ -131,7 +131,7 @@ test('a subscriber sees the current plan and the manage button', function () {
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Ihr aktueller Tarif')
->assertSee('Abo verwalten')
->assertSee('Pressemitteilungen pro Monat')
@ -156,7 +156,7 @@ test('a grandfathered legacy user sees the bestandsschutz package with portal an
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Ihr Bestandsschutz')
->assertSee('Bestandsschutz')
->assertSee('Presseverteiler Premium')
@ -184,7 +184,7 @@ test('open and consumed single purchases appear in the card and history', functi
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Einzel-Pressemitteilung verfügbar')
->assertSee('eingelöst am')
->assertSee('Depublikation: Depublizierte Beispiel-Mitteilung');
@ -232,7 +232,7 @@ test('the wallet block shows the balance and the credit pack topup links', funct
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Credit-Wallet & Add-ons')
->assertSee('30')
->assertSee('27 Credits') // Bonus-Paket
@ -249,7 +249,7 @@ test('the extra pm card is hidden without credits and without a subscription', f
/** @var TestCase $this */
$this->actingAs(bookingsTestCustomer());
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertDontSee('Aus Guthaben buchen') // Extra-PM-Karte ausgeblendet
->assertSee('Was kostet wie viel'); // Preis ergibt sich aus der Preisliste
});
@ -261,7 +261,7 @@ test('the extra pm card appears once the wallet has credits', function () {
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Aus Guthaben buchen');
});
@ -269,7 +269,7 @@ test('a missing billing address shows the proactive banner with a profile link',
/** @var TestCase $this */
$this->actingAs(bookingsTestCustomer());
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Rechnungsadresse fehlt')
->assertSee(route('me.profile'), false);
});
@ -281,7 +281,7 @@ test('with a billing address the banner is gone and the booking modal offers the
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertDontSee('Rechnungsadresse fehlt')
->call('selectBooking', 'single_pm')
->assertSee('Kostenpflichtig buchen')
@ -297,7 +297,7 @@ test('buying an extra pm from the wallet succeeds with enough credits', function
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->call('buyExtraPm')
->assertSee('Extra-Pressemitteilung gebucht');
@ -312,7 +312,7 @@ test('buying an extra pm without enough credits shows the mini checkout hint', f
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->call('buyExtraPm')
->assertSee('Bitte laden Sie mindestens 11 Credits nach');
@ -331,7 +331,7 @@ test('checking the entrepreneur box records a booking confirmation with the agb
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->call('selectBooking', 'single_pm')
->set('entrepreneurConfirmed', true);
@ -353,7 +353,7 @@ test('selecting a new booking resets the entrepreneur confirmation checkbox', fu
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->call('selectBooking', 'single_pm')
->set('entrepreneurConfirmed', true)
->call('selectBooking', 'single_pm')
@ -383,7 +383,7 @@ test('a subscriber sees swap buttons on other plans and the swap confirmation mo
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Zu diesem Tarif wechseln')
->assertSee('Ihr aktueller Tarif')
->call('selectBooking', 'subscription', $targetPlan->slug, 'monthly')
@ -405,7 +405,7 @@ test('a swap booking for a subscriber on grace period announces the revoked canc
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->call('selectBooking', 'subscription', $targetPlan->slug, 'monthly')
->assertSet('booking.resumes_cancellation', true)
->assertSee('Ihre vorgemerkte Kündigung wird durch den Wechsel aufgehoben.');
@ -428,7 +428,7 @@ test('a swap to a cheaper plan is announced as a scheduled change at period end'
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->call('selectBooking', 'subscription', $targetPlan->slug, 'monthly')
->assertSet('booking.is_downgrade', true)
->assertSee('zum Ende der bereits bezahlten Abrechnungsperiode')
@ -455,7 +455,7 @@ test('a scheduled plan change is shown on the current plan card', function () {
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Tarifwechsel zu Kleiner Tarif am')
->assertSee(now()->addDays(9)->format('d.m.Y'));
});
@ -486,7 +486,7 @@ test('the current plan card shows booking and renewal dates from stripe', functi
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Aktueller Tarif')
->assertSee('Gebucht am 09.07.2026')
->assertSee('Verlängerung am 09.08.2026');
@ -514,7 +514,7 @@ test('the current plan card omits the dates when the stripe period is unavailabl
$this->actingAs($user);
LivewireVolt::test('customer.bookings')
Livewire::test('customer.bookings')
->assertSee('Aktueller Tarif')
->assertDontSee('Gebucht am')
->assertDontSee('Verlängerung am');