1
0
mirror of https://github.com/trezor/trezor-wallet synced 2024-12-28 09:58:23 +00:00

Add prop types & flow

This commit is contained in:
Vasek Mlejnsky 2018-09-27 09:13:29 +02:00
parent c07bcec68c
commit b0f1913a1d
2 changed files with 32 additions and 2 deletions

View File

@ -1,4 +1,5 @@
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import styled from 'styled-components';
import Icon from 'components/Icon';
import ICONS from 'config/icons';
@ -99,4 +100,14 @@ class Group extends Component {
}
}
Group.propTypes = {
type: PropTypes.string,
groupNotifications: PropTypes.arrayOf({
key: PropTypes.string,
type: PropTypes.string,
title: PropTypes.string,
message: PropTypes.string,
}),
};
export default Group;

View File

@ -1,3 +1,5 @@
/* @flow */
import React from 'react';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
@ -10,8 +12,25 @@ import { FONT_SIZE, FONT_WEIGHT } from 'config/variables';
import * as NotificationActions from 'actions/NotificationActions';
import Loader from 'components/Loader';
import type { Action, State } from 'flowtype';
import NotificationButton from './components/NotificationButton';
type Props = {
key?: number,
notifications: $ElementType<State, 'notifications'>,
close: (notif?: any) => Action,
};
type NProps = {
type: string,
cancelable?: boolean;
title: string;
message?: string;
actions?: Array<any>;
close?: typeof NotificationActions.close,
loading?: boolean
};
const Wrapper = styled.div`
position: relative;
color: ${colors.TEXT_PRIMARY};
@ -141,7 +160,7 @@ export const Notification = (props: NProps): React$Element<string> => {
);
};
export const NotificationGroup = (props) => {
export const NotificationGroup = (props: Props) => {
const { notifications, close } = props;
return notifications.map(n => (
<Notification
@ -163,4 +182,4 @@ export default connect(
dispatch => ({
close: bindActionCreators(NotificationActions.close, dispatch),
}),
)(NotificationGroup);
)(NotificationGroup);