@jaak/primitives
Version:
JAAK UI primitives
53 lines (47 loc) • 872 B
JavaScript
import styled from 'styled-components'
import {
backgroundTypes,
borderTypes,
boxModelTypes,
cssTypes,
flexboxTypes,
} from '../types'
import { background, border, boxModel, css, flexbox } from '../util'
/**
* @namespace Main
* @desc Primitive styled-component 💅
* @return {Function} React component
*/
const Main = styled.main`
${background};
${border};
${boxModel};
${css};
${flexbox};
`
/**
* @name defaultProps
* @memberof Main
* @desc Primitive's default properties
*/
Main.defaultProps = {
borderWidth: [0],
flex: '1 0 auto',
margin: [0],
padding: [0],
size: ['100%', 'auto'],
}
/**
* @name propTypes
* @memberof Main
* @desc Primitive's prop type definitions
*/
Main.propTypes = {
...backgroundTypes,
...borderTypes,
...boxModelTypes,
...cssTypes,
...flexboxTypes,
}
/** @component */
export default Main