diff options
author | kumavis <kumavis@users.noreply.github.com> | 2017-07-14 14:55:56 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-14 14:55:56 +0800 |
commit | 1e0cd5f3028619d088fedf4cdb1b4a7cb81f9cf1 (patch) | |
tree | 2c50d5a85b74aebbc027ae50595b535cfb982631 /ui/responsive/app | |
parent | ed8a71d35074c5ee0a6c4c03ae366f59ab6bc519 (diff) | |
parent | d01b5c927d9ae874cc8a7d68fbd1f8649dbba291 (diff) | |
download | tangerine-wallet-browser-1e0cd5f3028619d088fedf4cdb1b4a7cb81f9cf1.tar tangerine-wallet-browser-1e0cd5f3028619d088fedf4cdb1b4a7cb81f9cf1.tar.gz tangerine-wallet-browser-1e0cd5f3028619d088fedf4cdb1b4a7cb81f9cf1.tar.bz2 tangerine-wallet-browser-1e0cd5f3028619d088fedf4cdb1b4a7cb81f9cf1.tar.lz tangerine-wallet-browser-1e0cd5f3028619d088fedf4cdb1b4a7cb81f9cf1.tar.xz tangerine-wallet-browser-1e0cd5f3028619d088fedf4cdb1b4a7cb81f9cf1.tar.zst tangerine-wallet-browser-1e0cd5f3028619d088fedf4cdb1b4a7cb81f9cf1.zip |
Merge pull request #1772 from sdtsui/new-dropdown
Implement NewUI Dropdown Component
Diffstat (limited to 'ui/responsive/app')
-rw-r--r-- | ui/responsive/app/components/dropdown.js | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/ui/responsive/app/components/dropdown.js b/ui/responsive/app/components/dropdown.js new file mode 100644 index 000000000..6e09cd133 --- /dev/null +++ b/ui/responsive/app/components/dropdown.js @@ -0,0 +1,79 @@ +const Component = require('react').Component; +const PropTypes = require('react').PropTypes; +const h = require('react-hyperscript'); +const MenuDroppo = require('menu-droppo'); + +class Dropdown extends Component { + render() { + const { isOpen, onClickOutside, style, children } = this.props; + + return h( + MenuDroppo, + { + isOpen, + zIndex: 11, + onClickOutside, + style, + innerStyle: { + borderRadius: '4px', + padding: '8px 16px', + background: 'rgba(0, 0, 0, 0.8)', + boxShadow: 'rgba(0, 0, 0, 0.15) 0px 2px 2px 2px', + }, + }, + [ + h( + 'style', + ` + li.dropdown-menu-item:hover { color:rgb(225, 225, 225); } + li.dropdown-menu-item { color: rgb(185, 185, 185); } + ` + ), + ...children, + ], + ); + } +} + +Dropdown.propTypes = { + isOpen: PropTypes.func.isRequired, + onClick: PropTypes.func.isRequired, + children: PropTypes.node, + style: PropTypes.object.isRequired, +} + +class DropdownMenuItem extends Component { + render() { + const { onClick, closeMenu, children } = this.props; + + return h( + 'li.dropdown-menu-item', + { + onClick, + closeMenu, + style: { + listStyle: 'none', + padding: '8px 0px 8px 0px', + fontSize: '12px', + fontStyle: 'normal', + fontFamily: 'Montserrat Regular', + cursor: 'pointer', + display: 'flex', + justifyContent: 'flex-start', + }, + }, + children + ); + } +} + +DropdownMenuItem.propTypes = { + closeMenu: PropTypes.func.isRequired, + onClick: PropTypes.func.isRequired, + children: PropTypes.node, +}; + +module.exports = { + Dropdown, + DropdownMenuItem, +};
\ No newline at end of file |