import React from "react"; import styles from "./App.module.css"; import Header from "./components/Header"; import cx from "./utils/cx"; import Spinner from "./components/Spinner"; import FilterContainer from "./components/FilterContainer"; import VisualizationGroupDisplay from "./components/VisualizationGroup"; import "./App.css"; import { VisualizationGroup } from "./models/visualizationOutput"; import { FilterConfig } from "./models/filter"; interface VisualizationsProps { loading: boolean; data: VisualizationGroup[]; onTargetClick: ( labelIndex: number, inputIndex: number, modelIndex: number, callback: () => void ) => void; } function Visualizations(props: VisualizationsProps) { if (props.loading) { return (
); } if (!props.data || props.data.length === 0) { return (
Please press{" "} Fetch to start loading data.
); } return (
{props.data.map((vg, i) => ( ))}
); } interface AppBaseProps { fetchInit: () => void; fetchData: (filter_config: FilterConfig) => void; config: any; data: VisualizationGroup[]; loading: boolean; onTargetClick: ( labelIndex: number, inputIndex: number, modelIndex: number, callback: () => void ) => void; } class AppBase extends React.Component { componentDidMount() { this.props.fetchInit(); } render() { return (
); } } export default AppBase;