Livewire v4 adds support for forwarding HTML attributes to components.
Usage
<wire:alert type="error" class="mb-4" id="error-alert">
Something went wrong!
</wire:alert>Component
@php
new class extends Livewire\Component {
#[Prop]
public string $type = 'info';
}
@endphp
<div {{ $attributes->merge(['class' => 'alert alert-'.$type]) }}>
{{ $slot }}
</div>