@kubit-ui-web/react-components
Version:
Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience
121 lines • 5.21 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getCheckboxStyles = void 0;
const state_1 = require("../../../../../components/checkbox/types/state");
const borders_1 = require("../../../../../designSystem/kubitWireframe/commons/foundations/borders");
const sizes_1 = require("../../../../../designSystem/kubitWireframe/commons/foundations/sizes");
const spacings_1 = require("../../../../../designSystem/kubitWireframe/commons/foundations/spacings");
const typography_1 = require("../../../../../designSystem/kubitWireframe/commons/foundations/typography");
const wireframe_1 = require("../../../utils/wireframe");
const variants_1 = require("../variants");
const variants_2 = require("./variants");
const commonProps = COLORS => ({
label: {
font_variant: variants_1.TextVariantType.PARAGRAPH_SMALL_EXTENDED,
color: COLORS.NEUTRAL.color_neutral_font_50,
font_weight: typography_1.FONT_WEIGHT.font_weight_400,
},
specialLabel: {
font_variant: variants_1.TextVariantType.PARAGRAPH_SMALL_EXTENDED,
color: COLORS.NEUTRAL.color_neutral_font_50,
font_weight: typography_1.FONT_WEIGHT.font_weight_500,
},
extraContentWrapper: {
// Checkbox width + checkbox margin_right
padding_left: spacings_1.SPACINGS.spacing_450,
display: 'flex',
flex_direction: 'column',
},
helpContentTextWrapper: {
display: 'flex',
flex_direction: 'column',
},
errorWrapper: {
display: 'flex',
align_items: 'flex-start',
gap: '0.375rem',
},
errorIcon: {
height: sizes_1.SIZES.size_150,
width: sizes_1.SIZES.size_150,
color: COLORS.FEEDBACK.color_feedbackError_font_50,
},
textError: {
font_variant: variants_1.TextVariantType.PARAGRAPH_CAPTION_EXTENDED,
color: COLORS.FEEDBACK.color_feedbackError_font_50,
font_weight: typography_1.FONT_WEIGHT.font_weight_400,
},
});
const commonCheckboxProps = COLORS => ({
height: sizes_1.SIZES.size_250,
width: sizes_1.SIZES.size_250,
border_style: 'solid',
margin_right: spacings_1.SPACINGS.spacing_150,
...(0, wireframe_1.transformShadow)(borders_1.RADIUS.radius_50),
...(0, wireframe_1.shadowAfterStyles)(borders_1.RADIUS.radius_100, COLORS.BRAND.color_brand_bg_50, spacings_1.SPACINGS.spacing_50),
});
const commonCheckedIconProps = {
height: sizes_1.SIZES.size_250,
width: sizes_1.SIZES.size_250,
};
const getCheckboxStyles = (COLORS) => {
return {
[variants_2.CheckboxVariantType.DEFAULT]: {
[state_1.CheckboxStateType.DEFAULT_UNSELECTED]: {
...commonProps(COLORS),
checkbox: {
...commonCheckboxProps(COLORS),
border_width: borders_1.BORDERS.border_50,
border_color: COLORS.NEUTRAL.color_neutral_border_100,
background_color: COLORS.NEUTRAL.color_neutral_bg_250,
},
},
[state_1.CheckboxStateType.DEFAULT_SELECTED]: {
...commonProps(COLORS),
checkbox: {
...commonCheckboxProps(COLORS),
border_width: borders_1.BORDERS.border_50,
background_color: COLORS.NEUTRAL.color_neutral_bg_250,
},
checkedIcon: {
...commonCheckedIconProps,
color: COLORS.ACCENT.color_accent_default_icon_100,
},
},
[state_1.CheckboxStateType.DISABLED_UNSELECTED]: {
...commonProps(COLORS),
checkbox: {
...commonCheckboxProps(COLORS),
border_width: borders_1.BORDERS.border_50,
border_color: COLORS.DISABLED.color_accentDisabled_border_50,
background_color: COLORS.DISABLED.color_accentDisabled_bg_150,
},
},
[state_1.CheckboxStateType.DISABLED_SELECTED]: {
...commonProps,
checkbox: {
...commonCheckboxProps(COLORS),
border_width: borders_1.BORDERS.border_50,
border_color: COLORS.DISABLED.color_accentDisabled_border_50,
background_color: COLORS.DISABLED.color_accentDisabled_bg_150,
},
checkedIcon: {
...commonCheckedIconProps,
color: COLORS.DISABLED.color_accentDisabled_icon_50,
},
},
// deprecated - This `error` state will be deprecated in the future
[state_1.CheckboxStateType.ERROR]: {
...commonProps(COLORS),
checkbox: {
...commonCheckboxProps(COLORS),
border_width: borders_1.BORDERS.border_50,
border_color: COLORS.ACCENT.color_accent_default_border_100,
background_color: COLORS.NEUTRAL.color_neutral_bg_250,
},
},
},
};
};
exports.getCheckboxStyles = getCheckboxStyles;
//# sourceMappingURL=styles.js.map