@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
36 lines (32 loc) • 1.28 kB
JavaScript
;
const buttonVariableMappings = {
'$button-padding-x': '$kendo-button-padding-x',
'$button-padding-y': '$kendo-button-padding-y',
'$button-font-size': '$kendo-button-font-size',
'$button-line-height': '$kendo-button-line-height',
'$button-font-weight': '$kendo-button-font-weight',
'$button-letter-spacing': '$kendo-button-letter-spacing',
'$button-border-radius': '$kendo-button-border-radius',
'$button-border-width': '$kendo-button-border-width',
'$button-shadow': '$kendo-button-shadow',
'$button-focused': '$kendo-button-focus',
'$button-hovered': '$kendo-button-hover',
'$button-active': '$kendo-button-active',
'$button-disabled': '$kendo-button-disabled',
'$button-focus': '$kendo-button-focus',
'$button-hover': '$kendo-button-hover',
};
function applyButtonVariableRename(str) {
let result = str;
const sorted = Object.entries(buttonVariableMappings).sort((a, b) => b[0].length - a[0].length);
sorted.forEach(([oldVar, newVar]) => {
const escaped = oldVar.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
const regex = new RegExp('(?<![\\w-])' + escaped + '(?![\\w-])', 'g');
result = result.replace(regex, newVar);
});
return result;
}
module.exports = {
buttonVariableMappings,
applyButtonVariableRename,
};