export default { mounted() { this.add_classes(this.classes); this.add_style(this.style); this.add_props(this.props); }, methods: { add_classes(classes) { document.querySelectorAll(this.selector).forEach((e) => e.classList.add(...classes)); }, remove_classes(classes) { document.querySelectorAll(this.selector).forEach((e) => e.classList.remove(...classes)); }, add_style(style) { Object.entries(style).forEach(([key, val]) => document.querySelectorAll(this.selector).forEach((e) => e.style.setProperty(key, val)) ); }, remove_style(keys) { keys.forEach((key) => document.querySelectorAll(this.selector).forEach((e) => e.style.removeProperty(key))); }, add_props(props) { Object.entries(props).forEach(([key, val]) => document.querySelectorAll(this.selector).forEach((e) => e.setAttribute(key, val)) ); }, remove_props(keys) { keys.forEach((key) => document.querySelectorAll(this.selector).forEach((e) => e.removeAttribute(key))); }, }, props: { selector: String, classes: Array, style: Object, props: Object, }, };