summaryrefslogtreecommitdiffhomepage
path: root/app/components/HeaderBar.js
diff options
context:
space:
mode:
authorAndrej Mihajlov <and@codeispoetry.ru>2017-06-21 11:33:45 +0300
committerAndrej Mihajlov <and@codeispoetry.ru>2017-06-21 11:33:45 +0300
commit2c6cb3d3f210caa9c441dd4d16c24ef6e8ad9d7c (patch)
tree291801ee1ea64291958e6ef54613df62d7b66431 /app/components/HeaderBar.js
parent798b6b8bb1868307544c26d3c9902dc7b0dab5e9 (diff)
parentdc80270da3f15a489be9bab79023a3e4dd93c5d5 (diff)
downloadmullvadvpn-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.js53
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');