UNPKG

@razorpay/blade

Version:

The Design System that powers Razorpay

17 lines (14 loc) 1.75 kB
import { switchColors, switchSizes } from './switchTokens.js'; import getIn from '../../utils/lodashButBetter/get.js'; import isNumber from '../../utils/lodashButBetter/isNumber.js'; import 'react-native'; import '@babel/runtime/helpers/slicedToArray'; import 'react'; import { isReactNative } from '../../utils/platform/isReactNative.js'; import { makeMotionTime } from '../../utils/makeMotionTime/makeMotionTime.native.js'; import { makeSpace } from '../../utils/makeSpace/makeSpace.js'; import { makeSize } from '../../utils/makeSize/makeSize.js'; import '../BladeProvider/useTheme.js'; var getTrackStyles=function getTrackStyles(_ref){var isChecked=_ref.isChecked,isDisabled=_ref.isDisabled,deviceType=_ref.deviceType,size=_ref.size,theme=_ref.theme;var variant='default';if(isDisabled)variant='disabled';var checked=isChecked?'checked':'unchecked';var background=switchColors.track[variant].background[checked];var backgroundColor=getIn(theme,background);var widthToken=switchSizes.track[deviceType][size].width;var heightToken=switchSizes.track[deviceType][size].height;var width=isNumber(widthToken)?makeSize(widthToken):makeSpace(getIn(theme,widthToken));var height=isNumber(heightToken)?makeSize(heightToken):makeSpace(getIn(theme,heightToken));return {pointerEvents:'none',position:'relative',display:'flex',alignItems:'center',margin:makeSpace(theme.spacing[1]),padding:makeSpace(theme.spacing[1]),width:width,height:height,borderRadius:makeSize(theme.border.radius.max),backgroundColor:backgroundColor,transitionTimingFunction:`${theme.motion.easing.standard}`,transitionDuration:isReactNative()?undefined:`${makeMotionTime(theme.motion.duration['2xquick'])}`};}; export { getTrackStyles }; //# sourceMappingURL=getTrackStyles.js.map