import { Controller } from '@hotwired/stimulus'; import Cookies from 'js-cookie'; export default class extends Controller { static values = { id: String, force: { type: Boolean, default: false }, }; static classes = ['open']; connect() { if (this.forceValue || this.isActive) { this.open(); } else { this.element.remove(); } } /*일정 기간 안보기*/ deactivate() { let oneDay = 1; Cookies.set(this.activeCookieName, this.idValue, { expires: oneDay }); this.close(); } open() { this.element.classList.add(...this.openClasses); this.element.classList.remove('hidden'); } close() { this.element.classList.remove(...this.openClasses); this.element.classList.add('hidden'); } get activeCookieName() { return `popup${this.idValue}`; } get isActive() { return !Cookies.get(this.activeCookieName); } }