Commit ad3a1d0b authored by Hines, Jesse's avatar Hines, Jesse
Browse files

Handle failed simulations better

parent 92bfd5d0
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
import { ReactNode } from "react";

export const Message = ({
  children,
}: {
  children: ReactNode;
}) => {
  return (
    <div className="flex flex-col gap-2">
      <p className="text-lg text-neutral-800 dark:text-neutral-300">
        {children}
      </p>
    </div>
  );
};
+20 −15
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@ import { JobQueue } from "../components/simulations/console/jobQueue";
import { CDUList } from "../components/simulations/console/cduList";
import { Power } from "../components/simulations/console/power";
import { Scheduler } from "../components/simulations/console/scheduler";
import { Message } from "../components/shared/simulation/message";
import { toDate } from "date-fns";
import {
  simulationConfigurationQueryOptions, simulationSystemStatsQueryOptions,
@@ -71,6 +72,9 @@ function SimulationConsoleView() {

  return (
    <section className="grid min-w-[1024px] grid-cols-12 gap-2 overflow-auto p-2">
      {(sim && sim.progress_date == sim.start) ? (
        <Message>No data available {sim.state == 'running' ? 'yet' : ''}</Message>
      ) : (<>
        {cdus ? (
          <PressureFlowRate metrics={cdus.cdus} />
        ): (<LoadingSpinner/>)}
@@ -86,6 +90,7 @@ function SimulationConsoleView() {
        {schedulerStatistics ? (
          <Scheduler statistics={schedulerStatistics} />
        ) : (<LoadingSpinner/>)}
      </>)}
    </section>
  );
}
+12 −9
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@ import { simulationConfigurationQueryOptions } from "../util/queryOptions";
import { LoadingSpinner } from "../components/shared/loadingSpinner";
import { Section } from "../components/shared/simulation/section";
import Box from "../components/shared/simulation/box";
import { Message } from "../components/shared/simulation/message";
import { SimulationGauges } from "../components/simulations/details/gauges";
import { useReplay } from "../util/hooks/useReplay";
import {
@@ -49,12 +50,14 @@ function SimulationSummary() {
  return (
    <div className="flex flex-1 flex-col gap-4 overflow-y-auto px-8 py-8">
      <Section header="Metrics" sectionProps={{ className: "grid-cols-3" }}>
          {cdus && schedulerStatistics ? (
        {(cdus && schedulerStatistics) ? (
          <SimulationGauges
            cdus={cdus.cdus}
            statistics={schedulerStatistics}
            cep={cep}
          />
        ) : (sim && sim.progress_date == sim.start) ? (
            <Message>No data available {sim.state == 'running' ? 'yet' : ''}</Message>
        ) : (
          <LoadingSpinner/>
        )}