import { observer } from 'mobx-react'; import * as React from 'react'; import { AppState } from '../state'; import { AddThemeDialog } from './dialog-add-theme'; import { AddVersionDialog } from './dialog-add-version'; import { BisectDialog } from './dialog-bisect'; import { GenericDialog } from './dialog-generic'; import { TokenDialog } from './dialog-token'; import { Settings } from './settings'; interface DialogsProps { appState: AppState; } /** * Dialogs (like the GitHub PAT input). * * @class Dialogs * @extends {React.Component} */ @observer export class Dialogs extends React.Component { public render() { const { appState } = this.props; const { isTokenDialogShowing, isSettingsShowing, isAddVersionDialogShowing, isThemeDialogShowing, isBisectDialogShowing, isGenericDialogShowing, } = appState; const maybeToken = isTokenDialogShowing ? ( ) : null; const maybeSettings = isSettingsShowing ? ( ) : null; const maybeAddLocalVersion = isAddVersionDialogShowing ? ( ) : null; const maybeMonaco = isThemeDialogShowing ? ( ) : null; const maybeBisect = isBisectDialogShowing ? ( ) : null; const genericDialog = isGenericDialogShowing ? ( ) : null; return (
{maybeToken} {maybeSettings} {maybeAddLocalVersion} {maybeMonaco} {maybeBisect} {genericDialog}
); } }