24 lines
799 B
JavaScript
24 lines
799 B
JavaScript
export const partial = (fn, ...presetArgs) => (...laterArgs) => fn(...presetArgs, ...laterArgs);
|
|
|
|
export const append = (el, ...children) => children.forEach(child => el.appendChild(child));
|
|
|
|
export const isString = input => typeof input === 'string';
|
|
|
|
export const createElement = (elementType, ...classNames) => {
|
|
const element = document.createElement(elementType);
|
|
|
|
if(classNames.length) {
|
|
classNames.forEach(currentClass => element.classList.add(currentClass));
|
|
}
|
|
|
|
return element;
|
|
};
|
|
|
|
const setInnerText = (element, text) => {
|
|
element.innerText = text;
|
|
return element;
|
|
};
|
|
|
|
const createTextElement = (elementType, ...classNames) => partial(setInnerText, createElement(elementType, ...classNames));
|
|
|
|
export const createParagraph = (...classNames) => createTextElement('p', ...classNames); |