blob: c600e1f85626518f313567ea567e2248e3c0ac0a [file] [log] [blame]
const findRef = (searchBy, element = document) =>
element.querySelector(searchBy);
const findRefs = (searchBy, element = document) =>
element ? [...element.querySelectorAll(searchBy)] : [];
const withEvent = (element, listener, callback) => {
element && element.addEventListener(listener, callback);
return () => element && element.removeEventListener(listener, callback);
};
const init = (cb) => window.addEventListener("DOMContentLoaded", cb);
const attachDOM = (element, html) => {
if (element) {
element.innerHTML = htmlToString(html);
}
};
const htmlToString = (html) => {
if (Array.isArray(html)) {
return html.join("");
}
return html;
};
const isFilterData = key => key.startsWith("f")
const getFilterKey = key => `f${key.charAt(0).toUpperCase()}${key.slice(1)}`
const attachListeners = (elementsRefs, type, callback) =>
elementsRefs.map((elRef) => withEvent(elRef, type, callback));
const getElementTextContent = (element) => (element ? element.textContent : "");
const getElementDescription = (elementRef) =>
findRef(".documentableBrief", elementRef);
const getElementNameRef = (elementRef) =>
findRef(".documentableName", elementRef);