diff options
| author | Andrej Mihajlov <and@codeispoetry.ru> | 2017-06-21 11:33:45 +0300 |
|---|---|---|
| committer | Andrej Mihajlov <and@codeispoetry.ru> | 2017-06-21 11:33:45 +0300 |
| commit | 2c6cb3d3f210caa9c441dd4d16c24ef6e8ad9d7c (patch) | |
| tree | 291801ee1ea64291958e6ef54613df62d7b66431 /app/components/HeaderBar.js | |
| parent | 798b6b8bb1868307544c26d3c9902dc7b0dab5e9 (diff) | |
| parent | dc80270da3f15a489be9bab79023a3e4dd93c5d5 (diff) | |
| download | mullvadvpn-2c6cb3d3f210caa9c441dd4d16c24ef6e8ad9d7c.tar.xz mullvadvpn-2c6cb3d3f210caa9c441dd4d16c24ef6e8ad9d7c.zip | |
Merge branch 'feature/flow-typed/headerbar'
Diffstat (limited to 'app/components/HeaderBar.js')
| -rw-r--r-- | app/components/HeaderBar.js | 53 |
1 files changed, 14 insertions, 39 deletions
diff --git a/app/components/HeaderBar.js b/app/components/HeaderBar.js index 6bd0cc2b13..5574951a06 100644 --- a/app/components/HeaderBar.js +++ b/app/components/HeaderBar.js @@ -1,52 +1,27 @@ -import React, { Component, PropTypes } from 'react'; +// @flow +import React, { Component } from 'react'; import { If, Then } from 'react-if'; -import Enum from '../lib/enum'; + +export type HeaderBarStyle = 'default' | 'defaultDark' | 'error' | 'success'; /** * Header bar component - * - * @export - * @class HeaderBar - * @extends {React.Component} */ export default class HeaderBar extends Component { - /** - * Bar style - * @type {Style} - * @property {string} default - default - * @property {string} defaultDark - default dark blue - * @property {string} error - red - * @property {string} success - green - * @static - * - * @memberOf HeaderBar - */ - static Style = new Enum('default', 'defaultDark', 'error', 'success'); - - /** - * Prop types - * @static - * - * @memberOf HeaderBar - */ - static propTypes = { - style: PropTypes.string, - hidden: PropTypes.bool, - showSettings: PropTypes.bool, - onSettings: PropTypes.func + props: { + style: HeaderBarStyle, + hidden: boolean, + showSettings: boolean, + onSettings: () => void }; - /** - * @override - */ render() { - const style = this.props.style; - let containerClass = ['headerbar', 'headerbar--' + process.platform]; - - if(HeaderBar.Style.isValid(style)) { - containerClass.push(`headerbar--style-${style}`); - } + let containerClass = [ + 'headerbar', + 'headerbar--' + process.platform, + 'headerbar--style-' + this.props.style + ]; if(this.props.hidden) { containerClass.push('headerbar--hidden'); |
