baseui
Version:
A React Component library implementing the Base design language
45 lines (42 loc) • 1.53 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ellipsisText = void 0;
exports.expandBorderStyles = expandBorderStyles;
exports.hexToRgb = hexToRgb;
/*
Copyright (c) Uber Technologies, Inc.
This source code is licensed under the MIT license found in the
LICENSE file in the root directory of this source tree.
*/
function hexToRgb(hex = '', alpha = '1') {
const shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i;
hex = hex.replace(shorthandRegex, function (m, r, g, b) {
return r + r + g + g + b + b;
});
const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
return result ? `rgba(${parseInt(result[1], 16)}, ${parseInt(result[2], 16)}, ${parseInt(result[3], 16)}, ${alpha})` : null;
}
const ellipsisText = exports.ellipsisText = {
overflow: 'hidden',
textOverflow: 'ellipsis',
whiteSpace: 'nowrap',
wordWrap: 'normal'
};
function expandBorderStyles(borderStyles) {
return {
borderTopWidth: borderStyles.borderWidth,
borderTopStyle: borderStyles.borderStyle,
borderTopColor: borderStyles.borderColor,
borderBottomWidth: borderStyles.borderWidth,
borderBottomStyle: borderStyles.borderStyle,
borderBottomColor: borderStyles.borderColor,
borderLeftWidth: borderStyles.borderWidth,
borderLeftStyle: borderStyles.borderStyle,
borderLeftColor: borderStyles.borderColor,
borderRightWidth: borderStyles.borderWidth,
borderRightStyle: borderStyles.borderStyle,
borderRightColor: borderStyles.borderColor
};
}