- Updated all component headers and documentation
- Changed navbar and footer branding
- Updated homepage hero badge
- Modified page title in index.html
- Simplified footer text to 'Built with ❤️'
- Consistent V2 capitalization across all references
42 lines
1.1 KiB
JavaScript
42 lines
1.1 KiB
JavaScript
'use strict';
|
|
|
|
function isDecimal(value) {
|
|
return !Number.isInteger(parseFloat(value.toString()));
|
|
}
|
|
function replaceWhiteSpace(value, replaceValue = "-") {
|
|
return value.replace(/\s+/g, replaceValue);
|
|
}
|
|
function escape(value) {
|
|
const valueStr = replaceWhiteSpace(value.toString());
|
|
if (valueStr.includes("\\."))
|
|
return value;
|
|
return isDecimal(value) ? valueStr.replace(".", `\\.`) : value;
|
|
}
|
|
function addPrefix(value, prefix = "") {
|
|
return [prefix, escape(value)].filter(Boolean).join("-");
|
|
}
|
|
function toVarRef(name, fallback) {
|
|
return `var(${escape(name)}${fallback ? `, ${fallback}` : ""})`;
|
|
}
|
|
function toVar(value, prefix = "") {
|
|
return `--${addPrefix(value, prefix)}`;
|
|
}
|
|
function cssVar(name, options) {
|
|
const cssVariable = toVar(name, options?.prefix);
|
|
return {
|
|
variable: cssVariable,
|
|
reference: toVarRef(cssVariable, getFallback(options?.fallback))
|
|
};
|
|
}
|
|
function getFallback(fallback) {
|
|
if (typeof fallback === "string")
|
|
return fallback;
|
|
return fallback?.reference;
|
|
}
|
|
|
|
exports.addPrefix = addPrefix;
|
|
exports.cssVar = cssVar;
|
|
exports.isDecimal = isDecimal;
|
|
exports.toVar = toVar;
|
|
exports.toVarRef = toVarRef;
|