ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
35 lines • 5.53 kB
JavaScript
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
import { __rest } from "tslib";
function stripPercentToNumber(percent) {
return +percent.replace('%', '');
}
export const sortGradient = (gradients) => {
let tempArr = [];
Object.keys(gradients).forEach(key => {
const value = gradients[key];
const formatKey = stripPercentToNumber(key);
if (!isNaN(formatKey)) {
tempArr.push({
key: formatKey,
value
});
}
});
tempArr = tempArr.sort((a, b) => a.key - b.key);
return tempArr;
};
export const handleCircleGradient = (strokeColor) => sortGradient(strokeColor).map(({ key, value }) => ({ offset: `${key}%`, color: value }));
export const handleLinearGradient = (strokeColor) => {
const { from = '#1890ff', to = '#1890ff', direction = 'to right' } = strokeColor, rest = __rest(strokeColor, ["from", "to", "direction"]);
if (Object.keys(rest).length !== 0) {
const sortedGradients = sortGradient(rest)
.map(({ key, value }) => `${value} ${key}%`)
.join(', ');
return `linear-gradient(${direction}, ${sortedGradients})`;
}
return `linear-gradient(${direction}, ${from}, ${to})`;
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9jb21wb25lbnRzL3Byb2dyZXNzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRzs7QUFJSCxTQUFTLG9CQUFvQixDQUFDLE9BQWU7SUFDM0MsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxTQUFxQyxFQUFFLEVBQUU7SUFDcEUsSUFBSSxPQUFPLEdBQTBDLEVBQUUsQ0FBQztJQUV4RCxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNuQyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0IsTUFBTSxTQUFTLEdBQUcsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDO2dCQUNYLEdBQUcsRUFBRSxTQUFTO2dCQUNkLEtBQUs7YUFDTixDQUFDLENBQUM7U0FDSjtJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxXQUF1QyxFQUNHLEVBQUUsQ0FDNUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztBQUUzRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLFdBQW9DLEVBQUUsRUFBRTtJQUMzRSxNQUFNLEVBQUUsSUFBSSxHQUFHLFNBQVMsRUFBRSxFQUFFLEdBQUcsU0FBUyxFQUFFLFNBQVMsR0FBRyxVQUFVLEtBQWMsV0FBVyxFQUFwQixJQUFJLFVBQUssV0FBVyxFQUFuRiwyQkFBcUUsQ0FBYyxDQUFDO0lBQzFGLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ2xDLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQyxJQUFrQyxDQUFDO2FBQ3JFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssSUFBSSxHQUFHLEdBQUcsQ0FBQzthQUMzQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDZCxPQUFPLG1CQUFtQixTQUFTLEtBQUssZUFBZSxHQUFHLENBQUM7S0FDNUQ7SUFDRCxPQUFPLG1CQUFtQixTQUFTLEtBQUssSUFBSSxLQUFLLEVBQUUsR0FBRyxDQUFDO0FBQ3pELENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9naXRodWIuY29tL05HLVpPUlJPL25nLXpvcnJvLWFudGQvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG5cbmltcG9ydCB7IE56UHJvZ3Jlc3NDb2xvckdyYWRpZW50LCBOelByb2dyZXNzR3JhZGllbnRQcm9ncmVzcyB9IGZyb20gJy4vdHlwaW5ncyc7XG5cbmZ1bmN0aW9uIHN0cmlwUGVyY2VudFRvTnVtYmVyKHBlcmNlbnQ6IHN0cmluZyk6IG51bWJlciB7XG4gIHJldHVybiArcGVyY2VudC5yZXBsYWNlKCclJywgJycpO1xufVxuXG5leHBvcnQgY29uc3Qgc29ydEdyYWRpZW50ID0gKGdyYWRpZW50czogTnpQcm9ncmVzc0dyYWRpZW50UHJvZ3Jlc3MpID0+IHtcbiAgbGV0IHRlbXBBcnI6IEFycmF5PHsga2V5OiBudW1iZXI7IHZhbHVlOiBzdHJpbmcgfT4gPSBbXTtcblxuICBPYmplY3Qua2V5cyhncmFkaWVudHMpLmZvckVhY2goa2V5ID0+IHtcbiAgICBjb25zdCB2YWx1ZSA9IGdyYWRpZW50c1trZXldO1xuICAgIGNvbnN0IGZvcm1hdEtleSA9IHN0cmlwUGVyY2VudFRvTnVtYmVyKGtleSk7XG4gICAgaWYgKCFpc05hTihmb3JtYXRLZXkpKSB7XG4gICAgICB0ZW1wQXJyLnB1c2goe1xuICAgICAgICBrZXk6IGZvcm1hdEtleSxcbiAgICAgICAgdmFsdWVcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG5cbiAgdGVtcEFyciA9IHRlbXBBcnIuc29ydCgoYSwgYikgPT4gYS5rZXkgLSBiLmtleSk7XG4gIHJldHVybiB0ZW1wQXJyO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZUNpcmNsZUdyYWRpZW50ID0gKFxuICBzdHJva2VDb2xvcjogTnpQcm9ncmVzc0dyYWRpZW50UHJvZ3Jlc3Ncbik6IEFycmF5PHsgb2Zmc2V0OiBzdHJpbmc7IGNvbG9yOiBzdHJpbmcgfT4gPT5cbiAgc29ydEdyYWRpZW50KHN0cm9rZUNvbG9yKS5tYXAoKHsga2V5LCB2YWx1ZSB9KSA9PiAoeyBvZmZzZXQ6IGAke2tleX0lYCwgY29sb3I6IHZhbHVlIH0pKTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZUxpbmVhckdyYWRpZW50ID0gKHN0cm9rZUNvbG9yOiBOelByb2dyZXNzQ29sb3JHcmFkaWVudCkgPT4ge1xuICBjb25zdCB7IGZyb20gPSAnIzE4OTBmZicsIHRvID0gJyMxODkwZmYnLCBkaXJlY3Rpb24gPSAndG8gcmlnaHQnLCAuLi5yZXN0IH0gPSBzdHJva2VDb2xvcjtcbiAgaWYgKE9iamVjdC5rZXlzKHJlc3QpLmxlbmd0aCAhPT0gMCkge1xuICAgIGNvbnN0IHNvcnRlZEdyYWRpZW50cyA9IHNvcnRHcmFkaWVudChyZXN0IGFzIE56UHJvZ3Jlc3NHcmFkaWVudFByb2dyZXNzKVxuICAgICAgLm1hcCgoeyBrZXksIHZhbHVlIH0pID0+IGAke3ZhbHVlfSAke2tleX0lYClcbiAgICAgIC5qb2luKCcsICcpO1xuICAgIHJldHVybiBgbGluZWFyLWdyYWRpZW50KCR7ZGlyZWN0aW9ufSwgJHtzb3J0ZWRHcmFkaWVudHN9KWA7XG4gIH1cbiAgcmV0dXJuIGBsaW5lYXItZ3JhZGllbnQoJHtkaXJlY3Rpb259LCAke2Zyb219LCAke3RvfSlgO1xufTtcbiJdfQ==