diff options
author | Brandon Millman <brandon.millman@gmail.com> | 2018-11-09 08:09:38 +0800 |
---|---|---|
committer | Brandon Millman <brandon.millman@gmail.com> | 2018-11-09 08:09:38 +0800 |
commit | 211163b3724090347dba736cbcdcb2b1ec252bd0 (patch) | |
tree | 80f3b8e23daba4a12e4afc55d7a345678ca04795 /packages/instant/src/components/ui/button.tsx | |
parent | c84e163edb329b478749cad09f222cc12e3698fe (diff) | |
parent | 117e2f583ff44bdb63340a2134edea0f3ecb77b3 (diff) | |
download | dexon-0x-contracts-211163b3724090347dba736cbcdcb2b1ec252bd0.tar.gz dexon-0x-contracts-211163b3724090347dba736cbcdcb2b1ec252bd0.tar.zst dexon-0x-contracts-211163b3724090347dba736cbcdcb2b1ec252bd0.zip |
Merge branch 'development' into feature/instant/account-state-change
* development:
[instant] Viewport specific errors (#1228)
Added more comments
Include wholeNumberSchema in sra-spec schemas
chore(instant): fix linter
Fix isNode
fix(instant): update buy quote at start up in the case of default amount
fix: apply css reset to overlay as well
fix(website): turn off production flag when building locally
chore: linter
fix: progress bar
fix: use fontSize prop in button
feat: make instant resistant to external styles
feat: add faux externall css file
Add upstream issue
Use const require instead of import
Fix tslint issues
Use detect-node
Set curstom inspect printer in BigNumber
Diffstat (limited to 'packages/instant/src/components/ui/button.tsx')
-rw-r--r-- | packages/instant/src/components/ui/button.tsx | 61 |
1 files changed, 37 insertions, 24 deletions
diff --git a/packages/instant/src/components/ui/button.tsx b/packages/instant/src/components/ui/button.tsx index 5274d835b..b90221bf4 100644 --- a/packages/instant/src/components/ui/button.tsx +++ b/packages/instant/src/components/ui/button.tsx @@ -6,6 +6,8 @@ import { ColorOption, styled } from '../../style/theme'; export interface ButtonProps { backgroundColor?: ColorOption; borderColor?: ColorOption; + fontColor?: ColorOption; + fontSize?: string; width?: string; padding?: string; type?: string; @@ -24,29 +26,39 @@ const darkenOnHoverAmount = 0.1; const darkenOnActiveAmount = 0.2; const saturateOnFocusAmount = 0.2; export const Button = styled(PlainButton)` - cursor: ${props => (props.isDisabled ? 'default' : 'pointer')}; - transition: background-color, opacity 0.5s ease; - padding: ${props => props.padding}; - border-radius: 3px; - outline: none; - width: ${props => props.width}; - background-color: ${props => (props.backgroundColor ? props.theme[props.backgroundColor] : 'none')}; - border: ${props => (props.borderColor ? `1px solid ${props.theme[props.borderColor]}` : 'none')}; - &:hover { - background-color: ${props => - !props.isDisabled - ? darken(darkenOnHoverAmount, props.theme[props.backgroundColor || 'white']) - : ''} !important; - } - &:active { - background-color: ${props => - !props.isDisabled ? darken(darkenOnActiveAmount, props.theme[props.backgroundColor || 'white']) : ''}; - } - &:disabled { - opacity: 0.5; - } - &:focus { - background-color: ${props => saturate(saturateOnFocusAmount, props.theme[props.backgroundColor || 'white'])}; + && { + all: initial; + box-sizing: border-box; + font-size: ${props => props.fontSize}; + font-family: 'Inter UI', sans-serif; + font-weight: 600; + color: ${props => props.fontColor && props.theme[props.fontColor]}; + cursor: ${props => (props.isDisabled ? 'default' : 'pointer')}; + transition: background-color, opacity 0.5s ease; + padding: ${props => props.padding}; + border-radius: 3px; + text-align: center; + outline: none; + width: ${props => props.width}; + background-color: ${props => (props.backgroundColor ? props.theme[props.backgroundColor] : 'none')}; + border: ${props => (props.borderColor ? `1px solid ${props.theme[props.borderColor]}` : 'none')}; + &:hover { + background-color: ${props => + !props.isDisabled + ? darken(darkenOnHoverAmount, props.theme[props.backgroundColor || 'white']) + : ''} !important; + } + &:active { + background-color: ${props => + !props.isDisabled ? darken(darkenOnActiveAmount, props.theme[props.backgroundColor || 'white']) : ''}; + } + &:disabled { + opacity: 0.5; + } + &:focus { + background-color: ${props => + saturate(saturateOnFocusAmount, props.theme[props.backgroundColor || 'white'])}; + } } `; @@ -55,7 +67,8 @@ Button.defaultProps = { borderColor: ColorOption.primaryColor, width: 'auto', isDisabled: false, - padding: '1em 2.2em', + padding: '.6em 1.2em', + fontSize: '15px', }; Button.displayName = 'Button'; |