@geezee/react-ui
Version:
Modern and minimalist React UI library.
100 lines (95 loc) • 3.26 kB
JavaScript
export var getSizes = function getSizes(theme, size) {
var sizes = {
medium: {
height: "calc(2.625 * ".concat(theme.layout.gap, ")"),
fontSize: '1rem',
labelFontSize: '1.1428rem'
},
small: {
height: "calc(2 * ".concat(theme.layout.gap, ")"),
fontSize: '.8571rem',
labelFontSize: '1rem'
},
mini: {
height: "calc(1.5 * ".concat(theme.layout.gap, ")"),
fontSize: '.8571rem',
labelFontSize: '1rem'
},
large: {
height: "calc(3 * ".concat(theme.layout.gap, ")"),
fontSize: '1.225rem',
labelFontSize: '1.375rem'
}
};
return size ? sizes[size] : sizes.medium;
};
export var getOptionColors = function getOptionColors(selected) {
var disabled = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
var palette = arguments.length > 2 ? arguments[2] : undefined;
var isLabel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
var variant = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 'line';
var colors = {
line: {
color: selected ? palette.cNeutral8 : palette.cNeutral6,
bgColor: selected ? palette.cTheme5 : palette.cNeutral8,
border: 'transparent',
hoverColor: selected ? palette.cNeutral8 : palette.cTheme5,
hoverBgColor: selected ? palette.cTheme5 : palette.cTheme0,
hoverBorder: 'transparent'
},
text: {
color: selected ? palette.cTheme5 : palette.cNeutral6,
bgColor: palette.cNeutral8,
border: selected ? palette.cTheme5 : 'transparent',
hoverColor: palette.cTheme5,
hoverBgColor: palette.cNeutral8,
hoverBorder: selected ? palette.cTheme5 : palette.cTheme0
}
};
if (disabled) {
return {
color: palette.cNeutral4,
bgColor: palette.cNeutral8,
border: 'transparent',
hoverColor: palette.cNeutral4,
hoverBgColor: palette.cNeutral8,
hoverBorder: 'transparent'
};
}
if (isLabel) {
return {
color: palette.cNeutral7,
bgColor: palette.cNeutral8,
border: 'transparent',
hoverColor: palette.cNeutral7,
hoverBgColor: palette.cNeutral8,
hoverBorder: 'transparent'
};
}
return variant ? colors[variant] : colors.line;
};
export var getSelectColors = function getSelectColors() {
var disabled = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
var palette = arguments.length > 1 ? arguments[1] : undefined;
var variant = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'line';
if (disabled) {
return {
color: palette.cNeutral4,
bgColor: palette.cNeutral2,
border: variant === 'text' ? 'transparent' : palette.cNeutral3,
placeholderColor: palette.cNeutral4,
hoverColor: palette.cNeutral4,
hoverBgColor: palette.cNeutral2,
hoverBorder: palette.cNeutral3
};
}
return {
color: palette.cNeutral6,
bgColor: palette.cNeutral8,
border: variant === 'text' ? 'transparent' : palette.cNeutral3,
placeholderColor: palette.cNeutral5,
hoverColor: palette.cTheme5,
hoverBgColor: palette.cNeutral8,
hoverBorder: variant === 'text' ? 'transparent' : palette.cTheme5
};
};