polished
Version:
A lightweight toolset for writing styles in Javascript.
31 lines (28 loc) • 810 B
Flow
// @flow
import directionalProperty from '../helpers/directionalProperty'
import type { Styles } from '../types/style'
/**
* Shorthand that accepts up to four values, including null to skip a value, and maps them to their respective directions.
* @example
* // Styles as object usage
* const styles = {
* ...borderStyle('solid', 'dashed', 'dotted', 'double')
* }
*
* // styled-components usage
* const div = styled.div`
* ${borderStyle('solid', 'dashed', 'dotted', 'double')}
* `
*
* // CSS as JS Output
*
* div {
* 'borderTopStyle': 'solid',
* 'borderRightStyle': 'dashed',
* 'borderBottomStyle': 'dotted',
* 'borderLeftStyle': 'double'
* }
*/
export default function borderStyle(...values: Array<?string>): Styles {
return directionalProperty('borderStyle', ...values)
}