summaryrefslogtreecommitdiffhomepage
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/components/HeaderBar.js21
-rw-r--r--app/components/Layout.js69
2 files changed, 25 insertions, 65 deletions
diff --git a/app/components/HeaderBar.js b/app/components/HeaderBar.js
index 5574951a06..bae3c4fddf 100644
--- a/app/components/HeaderBar.js
+++ b/app/components/HeaderBar.js
@@ -3,20 +3,21 @@ import React, { Component } from 'react';
import { If, Then } from 'react-if';
export type HeaderBarStyle = 'default' | 'defaultDark' | 'error' | 'success';
+export type HeaderBarProps = {
+ style: HeaderBarStyle;
+ hidden: boolean;
+ showSettings: boolean;
+ onSettings: ?(() => void);
+};
-/**
- * Header bar component
- */
export default class HeaderBar extends Component {
-
- props: {
- style: HeaderBarStyle,
- hidden: boolean,
- showSettings: boolean,
- onSettings: () => void
+ props: HeaderBarProps;
+ static defaultProps: $Shape<HeaderBarProps> = {
+ hidden: false,
+ showSettings: false
};
- render() {
+ render(): React.Element<*> {
let containerClass = [
'headerbar',
'headerbar--' + process.platform,
diff --git a/app/components/Layout.js b/app/components/Layout.js
index 58af3d0813..5c0e1f5bcb 100644
--- a/app/components/Layout.js
+++ b/app/components/Layout.js
@@ -1,20 +1,14 @@
+// @flow
import React, { Component } from 'react';
-import PropTypes from 'prop-types';
import HeaderBar from './HeaderBar';
-/**
- * Layout header
- *
- * @export
- * @class Header
- * @extends {React.Component}
- */
+import type { HeaderBarProps } from './HeaderBar';
+
export class Header extends Component {
+ props: HeaderBarProps;
+ static defaultProps = HeaderBar.defaultProps;
- /**
- * @override
- */
- render() {
+ render(): React.Element<*> {
return (
<div className="layout__header">
<HeaderBar { ...this.props } />
@@ -23,28 +17,12 @@ export class Header extends Component {
}
}
-/**
- * Content container
- *
- * @export
- * @class Container
- * @extends {React.Component}
- */
export class Container extends Component {
+ props: {
+ children: React.Element<*>
+ }
- /**
- * PropTypes
- * @static
- * @memberOf Container
- */
- static propTypes = {
- children: PropTypes.element.isRequired
- };
-
- /**
- * @override
- */
- render() {
+ render(): React.Element<*> {
return (
<div className="layout__container">
{ this.props.children }
@@ -53,31 +31,12 @@ export class Container extends Component {
}
}
-/**
- * Layout container
- *
- * @export
- * @class Layout
- * @extends {React.Component}
- */
export class Layout extends Component {
+ props: {
+ children: Array<React.Element<*>> | React.Element<*>
+ }
- /**
- * PropTypes
- * @static
- * @memberOf Container
- */
- static propTypes = {
- children: PropTypes.oneOfType([
- PropTypes.arrayOf(PropTypes.element),
- PropTypes.element,
- ])
- };
-
- /**
- * @override
- */
- render() {
+ render(): React.Element<*> {
return (
<div className="layout">
{ this.props.children }