UNPKG

create-expo-cljs-app

Version:

Create a react native application with Expo and Shadow-CLJS!

28 lines (23 loc) 994 B
/** * Copyright (c) Nicolas Gallagher. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @flow */ import normalizeColor from '../../modules/normalizeColor'; import normalizeValueWithProperty from './normalizeValueWithProperty'; const defaultOffset = { height: 0, width: 0 }; const resolveShadowValue = (style: Object): void | string => { const { shadowColor, shadowOffset, shadowOpacity, shadowRadius } = style; const { height, width } = shadowOffset || defaultOffset; const offsetX = normalizeValueWithProperty(width); const offsetY = normalizeValueWithProperty(height); const blurRadius = normalizeValueWithProperty(shadowRadius || 0); const color = normalizeColor(shadowColor || 'black', shadowOpacity); if (color != null && offsetX != null && offsetY != null && blurRadius != null) { return `${offsetX} ${offsetY} ${blurRadius} ${color}`; } }; export default resolveShadowValue;