@gouvfr/dsfr-roller
Version:
Le module `dsfr-roller` permet de publier le site de documentation du Système de Design de l’État - DSFR
34 lines (25 loc) • 735 B
JavaScript
class Element {
constructor (element) {
this._element = element;
}
get element () {
return this._element;
}
async init () {}
observeResize (target) {
this._observer = new ResizeObserver(this.resize.bind(this));
this._observer.observe(target);
}
resize () {}
listenClick (target) {
target.addEventListener('click', this.handleClick.bind(this));
}
handleClick () {}
}
const instantiateElements = async (selector, ElementClass) => {
const elements = [...document.querySelectorAll(selector)].map(element => new ElementClass(element))
const promises = elements.map(element => element.init());
await Promise.all(promises);
return elements;
}
export { Element, instantiateElements };