diff options
author | fragosti <francesco.agosti93@gmail.com> | 2018-10-05 05:04:56 +0800 |
---|---|---|
committer | fragosti <francesco.agosti93@gmail.com> | 2018-10-05 05:04:56 +0800 |
commit | 85c34b17aa074e67ed9263094cc0ee75a8f00e60 (patch) | |
tree | d2db68e31811d47f9092a051474073b07bfe260e /packages/instant/src/components/ui/container.tsx | |
parent | 4b8348da8cc50ef0da6e6b2bb7d276f1246437cf (diff) | |
download | dexon-0x-contracts-85c34b17aa074e67ed9263094cc0ee75a8f00e60.tar.gz dexon-0x-contracts-85c34b17aa074e67ed9263094cc0ee75a8f00e60.tar.zst dexon-0x-contracts-85c34b17aa074e67ed9263094cc0ee75a8f00e60.zip |
Add Flex and Container component
Diffstat (limited to 'packages/instant/src/components/ui/container.tsx')
-rw-r--r-- | packages/instant/src/components/ui/container.tsx | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/packages/instant/src/components/ui/container.tsx b/packages/instant/src/components/ui/container.tsx new file mode 100644 index 000000000..f928ed25b --- /dev/null +++ b/packages/instant/src/components/ui/container.tsx @@ -0,0 +1,47 @@ +import * as React from 'react'; + +import { ColorOption, styled } from '../../style/theme'; +import { cssRuleIfExists } from '../../style/util'; + +export interface ContainerProps { + display?: string; + position?: string; + top?: string; + right?: string; + bottom?: string; + left?: string; + maxWidth?: string; + margin: string; + marginTop?: string; + marginRight?: string; + marginBottom?: string; + marginLeft?: string; + padding?: string; + className?: string; + backgroundColor?: ColorOption; +} + +const PlainContainer: React.StatelessComponent<ContainerProps> = ({ children, className }) => ( + <div className={className}>{children}</div> +); + +export const Container = styled(PlainContainer)` + ${props => cssRuleIfExists(props, 'display')} + ${props => cssRuleIfExists(props, 'position')} + ${props => cssRuleIfExists(props, 'top')} + ${props => cssRuleIfExists(props, 'right')} + ${props => cssRuleIfExists(props, 'bottom')} + ${props => cssRuleIfExists(props, 'left')} + ${props => cssRuleIfExists(props, 'max-width')} + ${props => cssRuleIfExists(props, 'margin')} + ${props => cssRuleIfExists(props, 'margin-top')} + ${props => cssRuleIfExists(props, 'margin-right')} + ${props => cssRuleIfExists(props, 'margin-bottom')} + ${props => cssRuleIfExists(props, 'margin-left')} + ${props => cssRuleIfExists(props, 'padding')} + background-color: ${props => (props.backgroundColor ? props.theme[props.backgroundColor] : 'none')}; +`; + +Container.defaultProps = { + display: 'inline-block', +}; |