/* * Alpine für die öffentliche Website — und nur für sie. * * Die Konsole und das Portal bekommen Alpine von Livewire mitgeliefert; die * Website lädt Livewire nicht (sie hat kein einziges Livewire-Bauteil) und * stand damit ganz ohne da. `resources/js/app.js` fiel das nicht auf: es * importiert Alpine nirgends, sondern greift nur innerhalb von `alpine:init` * auf `window.Alpine` zu — ein Ereignis, das ohne Alpine nie eintritt. * * Die Folge war unsichtbar und trotzdem groß: elf `x-show` auf der Startseite * taten nichts. Der Umschalter zwischen Monats- und Jahrespreis rührte sich * nicht, und weil die Jahres-Ansicht `x-cloak` trägt — und * `[x-cloak]{display:none!important}` sehr wohl ausgeliefert wird —, war der * Jahrespreis dauerhaft verborgen statt bloß ungeschaltet. Dasselbe traf das * Menü am Telefon. * * Ein eigenes Bündel statt `@livewireScripts` im öffentlichen Layout: die * gesamte Livewire-Laufzeit samt ihrem Endpunkt gehört nicht auf eine Seite, * die kein Bauteil davon benutzt. Alpine allein ist ein Bruchteil davon. * * Wird NACH `app.js` geladen (siehe `components/layouts/site.blade.php`), damit * dessen `alpine:init`-Anmeldungen stehen, bevor hier gestartet wird. Auf * Konsolen- und Portalseiten läuft diese Datei nicht — dort startet Livewire * Alpine, und ein zweiter Start würde beide zerlegen. */ import Alpine from 'alpinejs' window.Alpine = Alpine Alpine.start()