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

/*
* The following line makes this controller "lazy": it won't be downloaded until needed
* See https://github.com/symfony/stimulus-bridge#lazy-controllers
*/
/* stimulusFetch: 'lazy' */
export default class extends Controller {
    static values = {
        total: Number,
        count: Number,
    }

    static targets = ['icon']

    connect() {
        this.element.hideIcon = this.hideIcon.bind(this);
        this.element.showIcon = this.showIcon.bind(this);
        this.element.toggleIcon = this.toggleIcon.bind(this);
        this.element.isVisibile = this.isVisible.bind(this);
    }

    isVisible() {
        return !this.iconTarget.classList.contains('hidden');
    }

    showIcon() {
        this.iconTarget.classList.remove('hidden');
    }

    hideIcon() {
        this.iconTarget.classList.add('hidden');
    }

    toggleIcon() {
        this.iconTarget.classList.toggle('hidden');
    }

    increaseCount() {
        this.countValue += 1;
        if (this.countValue === this.totalValue) {
            this.toggleIcon();
            this.countValue = 0;
            console.log('filtering')
            document.getElementById('filter').filterResults();
        }
    }
}
