UNPKG

@kiwicom/orbit-components

Version:

Orbit-components is a React component library which provides developers with the easiest possible way of building Kiwi.com’s products.

34 lines (28 loc) 1.06 kB
import { convertHexToRgba } from "@kiwicom/orbit-design-tokens"; import { TOKENS, TYPE_OPTIONS } from "../consts"; import { BUTTON_STATES } from "../../../primitives/ButtonPrimitive/common/consts"; import getAlertButtonTypeToken from "./getAlertButtonTypeToken"; const opacity = { [TYPE_OPTIONS.INFO]: 15, [TYPE_OPTIONS.SUCCESS]: 15, [TYPE_OPTIONS.WARNING]: 15, [TYPE_OPTIONS.CRITICAL]: 15, [TYPE_OPTIONS.INFO_SUBTLE]: 8, [TYPE_OPTIONS.SUCCESS_SUBTLE]: 8, [TYPE_OPTIONS.WARNING_SUBTLE]: 8, [TYPE_OPTIONS.CRITICAL_SUBTLE]: 8 }; const getAlertButtonBoxShadow = (state, disabled, theme, type) => { const wrappedButtonTypeToken = name => getAlertButtonTypeToken(name, type, theme); if (disabled) { return null; } if (state === BUTTON_STATES.ACTIVE) { return `inset 0 0 6px 3px ${convertHexToRgba(theme.orbit.paletteInkNormal, opacity[type])};`; } if (state === BUTTON_STATES.FOCUS) { return `0 0 0 3px ${wrappedButtonTypeToken(TOKENS.borderColorButtonFocus)}`; } return null; }; export default getAlertButtonBoxShadow;