import {observer} from "mobx-react"; import * as React from "react"; import {CSSTransitionGroup} from "react-transition-group"; import {Message} from "semantic-ui-react"; import {Message as UiMessage, UiStore} from "../ui"; @observer export default class MessagesView extends React.PureComponent<{ uiStore: UiStore }, {}> { render() { return
{this.props.uiStore.messages.map(this.renderMessage)}
; } private renderMessage = (message: UiMessage, index: number) => { const {header, content, type} = message; return this.dismiss(index)}/>; } private dismiss(index: number) { this.props.uiStore.messages.splice(index, 1); } }