judocss
Version:
The functional CSS toolkit designed for minimal effort and maximum efficiency.
29 lines (19 loc) • 619 B
JavaScript
(function() {
function apply(className, entry) {
var type = typeof entry.value
var res = ""
if (type === "string") {
res = entry.value
}
if (type === "function") {
let args = entry.regex.exec(className).splice(1)
res = entry.value.apply(undefined, args)
}
let childSelector = /(.+)(?:\*)$/.exec(className)
if (childSelector) {
className = childSelector[1] + "\\* > *"
}
return ['.', className.replace(/[%#.]/g, "\\$&"), ' ', res].join('')
}
module.exports = apply;
})()