@props([ 'name', 'id' => null, 'value' => '', 'required' => false, 'placeholder' => null, 'ignoreAutofill' => false, ]) @php $fieldId = $id ?? $name; @endphp {{-- Password input with a show/hide toggle. Toggle state lives in Alpine so it survives Livewire re-renders (jQuery-based .toggle-password handler used elsewhere fights morphdom on wire:model.live fields). Extra $attributes get merged onto the so wire:model, autocomplete, aria-* etc. flow through. --}}
merge(['class' => 'form-control']) }} :type="shown ? 'text' : 'password'" type="password" id="{{ $fieldId }}" name="{{ $name }}" value="{{ $value }}" @if ($placeholder) placeholder="{{ $placeholder }}" @endif autocomplete="new-password" @if ($ignoreAutofill) data-1p-ignore="true" data-lpignore="true" data-bwignore="true" data-form-type="other" @endif @required($required) /> {{-- Plain