Commit a5e5c5b4 authored by Webb, Jake's avatar Webb, Jake
Browse files

changed to granularity of 900

parent c4bd6d7f
Loading
Loading
Loading
Loading
+15 −56
Original line number Diff line number Diff line
import { useNavigate, useParams, useSearch } from "@tanstack/react-router";
import { Select } from "../shared/dropdown";
import { BaseSyntheticEvent, useCallback, useState } from "react";
import { NumberInput } from "../shared/number";
import { Route as SimulationCoolingRoute } from "../../routes/simulations.$simulationId.cooling";
import { debounce } from "lodash";
import { Input } from "../shared/input";

const defaultResolution = 10;
const defaultGranularity = 1.0;

export function TimeStepBar() {
  const navigate = useNavigate();
  const { timestepType, resolution, granularity } = useSearch({
  const { resolution, granularity } = useSearch({
    from: SimulationCoolingRoute.fullPath,
  });
  const { simulationId } = useParams({ from: SimulationCoolingRoute.fullPath });
@@ -43,45 +38,10 @@ export function TimeStepBar() {

  return (
    <div className="my-4 flex items-center px-6">
      <span className="mr-2 dark:text-neutral-200">Timestep Type:</span>
      <Select
        value={timestepType}
        choices={[
          { label: "Resolution", value: "resolution" },
          { label: "Granularity", value: "granularity" },
        ]}
        onChange={(e) => {
          const value = e.target.value as "resolution" | "granularity";
          const g = value === "granularity" ? defaultGranularity : undefined;
          const r = value === "resolution" ? defaultResolution : undefined;
          navigate({
            from: SimulationCoolingRoute.fullPath,
            params: { simulationId },
            search: (prev) => ({
              ...prev,
              granularity: g,
              resolution: r,
              timestepType: value,
            }),
          });
          setTimestepValue({ granularity: g, resolution: r });
        }}
      />
      <span className="mr-2 dark:text-neutral-200">
        Timestep Type: Granularity (s)
      </span>
      <div className="ml-4">
        {timestepType === "resolution" && (
          <NumberInput
            label="Resolution:"
            labelAlignment="horizontal"
            inputProps={{
              onChange: (e: BaseSyntheticEvent) => {
                onChange({ g: undefined, r: Number(e.target.value) });
              },
              value: timestepValue.resolution,
              min: 1,
            }}
          />
        )}
        {timestepType === "granularity" && (
        <Input
          label="Granularity:"
          labelAlignment="horizontal"
@@ -93,7 +53,6 @@ export function TimeStepBar() {
            }
          }}
        />
        )}
      </div>
    </div>
  );
+1 −1
Original line number Diff line number Diff line
@@ -261,7 +261,7 @@ function Simulation() {
          <TabLink
            to="/simulations/$simulationId/cooling"
            params={{ simulationId: simulationId }}
            search={{ ...search, resolution: 10 }}
            search={{ ...search, granularity: 900 }}
          >
            Plots
          </TabLink>