UNPKG

vuikit

Version:

A Vuejs component library based on UIkit

61 lines (49 loc) 1.37 kB
/** * Vuikit 0.7.0 * (c) 2018 Miljan Aleksic * @license MIT */ import { isObject, isFunction, isUndefined, toArray } from 'vuikit/core/util' export function attr (element, name, value) { if (isObject(name)) { for (var key in name) { attr(element, key, name[key]) } return } if (isUndefined(value)) { return element && element.getAttribute(name) } else { toArray(element).forEach(element => { if (isFunction(value)) { value = value.call(element, attr(element, name)) } if (value === null) { removeAttr(element, name) } else { element.setAttribute(name, value) } }) } } export function hasAttr (element, name) { return toArray(element).some(element => element.hasAttribute(name)) } export function removeAttr (element, name) { element = toArray(element) name.split(' ').forEach(name => element.forEach(element => element.removeAttribute(name) ) ) } export function filterAttr (element, attribute, pattern, replacement) { attr(element, attribute, value => value ? value.replace(pattern, replacement) : value) } // export function data (element, attribute) { // for (var i = 0, attrs = [attribute, `data-${attribute}`]; i < attrs.length; i++) { // if (hasAttr(element, attrs[i])) { // return attr(element, attrs[i]) // } // } // }