import { StyleSheet, ViewStyle } from 'react-native'; import { Theme } from '../../../util/theme/models'; import { SelectableListItemStyleSheet, SelectableListItemStyleSheetVars, } from './SelectableListItem.types'; /** * Style sheet function for SelectableListItem component. * * @param params Style sheet params. * @param params.theme App theme from ThemeContext. * @param params.vars Inputs that the style sheet depends on. * @returns StyleSheet object. */ const styleSheet = (params: { theme: Theme; vars: SelectableListItemStyleSheetVars; }): SelectableListItemStyleSheet => { const { vars, theme } = params; const { colors } = theme; const { style } = vars; return StyleSheet.create({ base: Object.assign({} as ViewStyle, style) as ViewStyle, overlay: { ...StyleSheet.absoluteFillObject, flexDirection: 'row', backgroundColor: colors.primary.muted, }, verticalBar: { marginVertical: 4, marginLeft: 4, width: 4, borderRadius: 2, backgroundColor: colors.primary.default, }, }); }; export default styleSheet;