import { Controller } from '@hotwired/stimulus';

/* Onboarding : filtre de recherche sur les concessions + compteur de sélection. */
export default class extends Controller {
    static targets = ['search', 'item', 'checkbox', 'count'];

    connect() {
        this.updateCount();
    }

    filter() {
        const q = (this.searchTarget.value || '').toLowerCase().trim();
        this.itemTargets.forEach((el) => {
            const name = el.dataset.name || '';
            el.classList.toggle('hidden', q !== '' && !name.includes(q));
        });
    }

    updateCount() {
        if (!this.hasCountTarget) return;
        const n = this.checkboxTargets.filter((c) => c.checked).length;
        this.countTarget.textContent = `${n} sélectionnée(s)`;
    }
}
