UNPKG

@janiscommerce/ui-native

Version:
45 lines (44 loc) 1.43 kB
import { palette } from '../../../../theme/palette'; export const getInputInitialState = (value) => { if (!value) { return 'incomplete'; } return 'complete'; }; export const getBorderColor = ({ inputState, hasMessage, status, inputColor, }) => { if (inputState === 'focus') { return inputColor; } if (hasMessage) { const colorPalette = palette[status]; if ('main' in colorPalette) { return colorPalette.main; } return palette.error.main; } return palette.grey[500]; }; export const getLabelColor = ({ disabled, readOnly, inputColor, inputState, statusMessage, status, }) => { if (disabled || readOnly) { return palette.grey[500]; } if (inputState === 'focus') { return inputColor; } if (statusMessage) { const colorPalette = palette[status]; if ('main' in colorPalette) { return colorPalette.main; } } return palette.grey[500]; }; export const raiseLabel = ({ disabled, hasMessage, inputState }) => !disabled && (inputState !== 'incomplete' || !!hasMessage); export const showStatusMessage = (hasMessage, inputState) => !!hasMessage && inputState !== 'focus'; export const getStatusMessageColor = (status) => { const colorPalette = palette[status]; if ('main' in colorPalette) { return colorPalette.main; } return palette.error.main; };