Loading src/components/simulations/raps.form.tsx +15 −0 Original line number Diff line number Diff line import { ChangeEvent } from "react"; import * as iso8601 from "iso8601-duration"; import { SimulationConfig, WorkloadType, workloadTypes, schedulers, SchedulerType, } from "../../models/SimulationConfig.model"; Loading Loading @@ -92,6 +93,20 @@ export function RAPSForm(props: { }); }} /> <NumberInput inputProps={{ onChange: (e: ChangeEvent<HTMLInputElement>) => { let value = parseInt(e.target.value) value = isNaN(value) ? 1 : value, props.setForm({ ...props.form, time_delta: `PT${value}S`, }); }, value: iso8601.toSeconds(iso8601.parse(props.form.time_delta)), }} label="Time Delta" /> </> ); } src/models/SimulationConfig.model.ts +2 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ export interface SimulationConfig { end: string; // time?: string; // just use start/end instead // fastforward?: string; // time_delta?: string; time_delta: string; // time_unit?: string; numjobs?: number; // uncertainties?: boolean; Loading Loading @@ -105,6 +105,7 @@ export function getDefaultSimulationConfig(): SimulationConfig { system: "frontier", start: startDate.toISOString(), end: endDate.toISOString(), time_delta: "PT1S", cooling: false, weather: false, workload: "random", Loading src/routes/simulations.$simulationId.configuration.tsx +5 −0 Original line number Diff line number Diff line import { createFileRoute } from "@tanstack/react-router"; import { formatDate } from "../util/datetime"; import * as iso8601 from "iso8601-duration"; import { useSuspenseQuery } from "@tanstack/react-query"; import { simulationConfigurationQueryOptions } from "../util/queryOptions"; import { LoadingSpinner } from "../components/shared/loadingSpinner"; Loading Loading @@ -123,6 +124,10 @@ function SimulationConfiguration() { {data.config.arrival} </Box.Value> </Box> <Box> <Box.Header>Time Delta</Box.Header> <Box.Value>{iso8601.toSeconds(iso8601.parse(data.config.time_delta))}</Box.Value> </Box> </Section> <Section header="Cooling Configuration"> <Box> Loading Loading
src/components/simulations/raps.form.tsx +15 −0 Original line number Diff line number Diff line import { ChangeEvent } from "react"; import * as iso8601 from "iso8601-duration"; import { SimulationConfig, WorkloadType, workloadTypes, schedulers, SchedulerType, } from "../../models/SimulationConfig.model"; Loading Loading @@ -92,6 +93,20 @@ export function RAPSForm(props: { }); }} /> <NumberInput inputProps={{ onChange: (e: ChangeEvent<HTMLInputElement>) => { let value = parseInt(e.target.value) value = isNaN(value) ? 1 : value, props.setForm({ ...props.form, time_delta: `PT${value}S`, }); }, value: iso8601.toSeconds(iso8601.parse(props.form.time_delta)), }} label="Time Delta" /> </> ); }
src/models/SimulationConfig.model.ts +2 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ export interface SimulationConfig { end: string; // time?: string; // just use start/end instead // fastforward?: string; // time_delta?: string; time_delta: string; // time_unit?: string; numjobs?: number; // uncertainties?: boolean; Loading Loading @@ -105,6 +105,7 @@ export function getDefaultSimulationConfig(): SimulationConfig { system: "frontier", start: startDate.toISOString(), end: endDate.toISOString(), time_delta: "PT1S", cooling: false, weather: false, workload: "random", Loading
src/routes/simulations.$simulationId.configuration.tsx +5 −0 Original line number Diff line number Diff line import { createFileRoute } from "@tanstack/react-router"; import { formatDate } from "../util/datetime"; import * as iso8601 from "iso8601-duration"; import { useSuspenseQuery } from "@tanstack/react-query"; import { simulationConfigurationQueryOptions } from "../util/queryOptions"; import { LoadingSpinner } from "../components/shared/loadingSpinner"; Loading Loading @@ -123,6 +124,10 @@ function SimulationConfiguration() { {data.config.arrival} </Box.Value> </Box> <Box> <Box.Header>Time Delta</Box.Header> <Box.Value>{iso8601.toSeconds(iso8601.parse(data.config.time_delta))}</Box.Value> </Box> </Section> <Section header="Cooling Configuration"> <Box> Loading