Skip to content

Commit 61b20c8

Browse files
committed
Organise code that operates on units and their utility functions.
1 parent 9bdcb4e commit 61b20c8

23 files changed

+404
-296
lines changed

src/main/webapp/ui/src/Inventory/Sample/Fields/Expiry.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@ import React, { type Node } from "react";
44
import { observer } from "mobx-react-lite";
55
import Alert from "@mui/material/Alert";
66
import { type HasEditableFields } from "../../../stores/definitions/Editable";
7-
import { todaysDate, truncateIsoTimestamp } from "../../../util/conversions";
7+
import {
8+
todaysDate,
9+
truncateIsoTimestamp,
10+
} from "../../../stores/definitions/Units";
811
import DateField from "../../../components/Inputs/DateField";
912
import BatchFormField from "../../components/Inputs/BatchFormField";
1013

src/main/webapp/ui/src/Inventory/Sample/Fields/SpecifiedStorageTemperature.js

+16-11
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,22 @@ import React, {
88
} from "react";
99
import { observer } from "mobx-react-lite";
1010
import Box from "@mui/material/Box";
11-
import { type Temperature } from "../../../stores/definitions/Sample";
12-
import Grid from "@mui/material/Grid";
13-
import Select from "@mui/material/Select";
14-
import MenuItem from "@mui/material/MenuItem";
15-
import Button from "@mui/material/Button";
16-
import { withStyles } from "Styles";
1711
import {
12+
type Temperature,
1813
CELSIUS,
1914
KELVIN,
2015
FAHRENHEIT,
2116
ABSOLUTE_ZERO,
2217
LIQUID_NITROGEN,
2318
type TemperatureScale,
19+
temperatureFromTo,
20+
validateTemperature,
2421
} from "../../../stores/definitions/Units";
25-
import { temperatureFromTo, validateTemperature } from "../../../util/conversions";
22+
import Grid from "@mui/material/Grid";
23+
import Select from "@mui/material/Select";
24+
import MenuItem from "@mui/material/MenuItem";
25+
import Button from "@mui/material/Button";
26+
import { withStyles } from "Styles";
2627
import NumberField from "../../../components/Inputs/NumberField";
2728
import InputAdornment from "@mui/material/InputAdornment";
2829
import { FormLabel } from "@mui/material";
@@ -173,7 +174,8 @@ function SpecifiedStorageTemperature({
173174
const newMaxTemp = { numericValue: newMax, unitId };
174175
setTemperatures({ storageTempMin: newMinTemp, storageTempMax: newMaxTemp });
175176
onErrorStateChange(
176-
!validateTemperature(newMinTemp).isError || !validateTemperature(newMaxTemp).isError
177+
!validateTemperature(newMinTemp).isError ||
178+
!validateTemperature(newMaxTemp).isError
177179
);
178180
};
179181

@@ -187,7 +189,8 @@ function SpecifiedStorageTemperature({
187189
const newMaxTemp = { numericValue: newMax, unitId };
188190
setTemperatures({ storageTempMin: newMinTemp, storageTempMax: newMaxTemp });
189191
onErrorStateChange(
190-
!validateTemperature(newMinTemp).isError || !validateTemperature(newMaxTemp).isError
192+
!validateTemperature(newMinTemp).isError ||
193+
!validateTemperature(newMaxTemp).isError
191194
);
192195
};
193196

@@ -239,7 +242,8 @@ function SpecifiedStorageTemperature({
239242
variant="outlined"
240243
size="small"
241244
error={
242-
validateTemperature({ numericValue: min, unitId }).isError
245+
validateTemperature({ numericValue: min, unitId })
246+
.isError
243247
}
244248
fullWidth
245249
InputProps={{
@@ -260,7 +264,8 @@ function SpecifiedStorageTemperature({
260264
variant="outlined"
261265
size="small"
262266
error={
263-
validateTemperature({ numericValue: max, unitId }).isError
267+
validateTemperature({ numericValue: max, unitId })
268+
.isError
264269
}
265270
fullWidth
266271
InputProps={{

src/main/webapp/ui/src/Inventory/Sample/Fields/StorageTemperature.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,10 @@
22

33
import React, { type Node } from "react";
44
import { observer } from "mobx-react-lite";
5-
import { type Temperature } from "../../../stores/definitions/Sample";
5+
import { type Temperature, CELSIUS } from "../../../stores/definitions/Units";
66
import { type HasEditableFields } from "../../../stores/definitions/Editable";
77
import Button from "@mui/material/Button";
88
import SpecifiedStorageTemperature from "./SpecifiedStorageTemperature";
9-
import { CELSIUS } from "../../../stores/definitions/Units";
109
import BatchFormField from "../../components/Inputs/BatchFormField";
1110

1211
function StorageTemperature<

src/main/webapp/ui/src/Inventory/Sample/Fields/TemplateFields/Fields.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import FormField from "../../../components/Inputs/FormField";
88
import AttachmentField from "../../../../components/Inputs/AttachmentField";
99
import ChoiceField from "../../../../components/Inputs/ChoiceField";
1010
import DateField from "../../../../components/Inputs/DateField";
11-
import { truncateIsoTimestamp } from "../../../../util/conversions";
11+
import { truncateIsoTimestamp } from "../../../../stores/definitions/Units";
1212
import NumberField from "../../../../components/Inputs/NumberField";
1313
import RadioField from "../../../../components/Inputs/RadioField";
1414
import ReferenceField from "../../../../components/Inputs/ReferenceField";

src/main/webapp/ui/src/Inventory/Sample/Fields/__tests__/StorageTemperature/Buttons.test.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,14 @@
66
import React from "react";
77
import { render, cleanup } from "@testing-library/react";
88
import "@testing-library/jest-dom";
9-
import { CELSIUS } from "../../../../../stores/definitions/Units";
9+
import {
10+
CELSIUS,
11+
type Temperature,
12+
} from "../../../../../stores/definitions/Units";
1013
import StorageTemperature from "../../StorageTemperature";
1114
import Button from "@mui/material/Button";
1215
import { ThemeProvider } from "@mui/material/styles";
1316
import materialTheme from "../../../../../theme";
14-
import { type Temperature } from "../../../../../stores/definitions/Sample";
1517

1618
jest.mock("@mui/material/Button", () => jest.fn(() => <></>));
1719

src/main/webapp/ui/src/Inventory/Sample/Fields/__tests__/StorageTemperature/WhenDisabled.test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@ import {
1010
CELSIUS,
1111
KELVIN,
1212
FAHRENHEIT,
13+
type Temperature,
1314
} from "../../../../../stores/definitions/Units";
1415
import { ThemeProvider } from "@mui/material/styles";
1516
import materialTheme from "../../../../../theme";
1617

1718
import StorageTemperature from "../../StorageTemperature";
18-
import { type Temperature } from "../../../../../stores/definitions/Sample";
1919

2020
beforeEach(() => {
2121
jest.clearAllMocks();

src/main/webapp/ui/src/Inventory/Sample/Fields/__tests__/StorageTemperature/WhenEnabledAndUnspecified.test.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@ import React from "react";
77
import { render, cleanup, screen } from "@testing-library/react";
88
import "@testing-library/jest-dom";
99
import StorageTemperature from "../../StorageTemperature";
10-
import { CELSIUS } from "../../../../../stores/definitions/Units";
10+
import {
11+
CELSIUS,
12+
type Temperature,
13+
} from "../../../../../stores/definitions/Units";
1114
import { ThemeProvider } from "@mui/material/styles";
1215
import materialTheme from "../../../../../theme";
13-
import { type Temperature } from "../../../../../stores/definitions/Sample";
1416
import userEvent from "@testing-library/user-event";
1517

1618
const mockFieldOwner = (mockedParts: {|

src/main/webapp/ui/src/Inventory/Template/Fields/DefaultValueField.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import InputWrapper from "../../../components/Inputs/InputWrapper";
1111
import Button from "@mui/material/Button";
1212
import AddIcon from "@mui/icons-material/Add";
1313
import { makeStyles } from "tss-react/mui";
14-
import { truncateIsoTimestamp } from "../../../util/conversions";
14+
import { truncateIsoTimestamp } from "../../../stores/definitions/Units";
1515

1616
const useStyles = makeStyles()((theme) => ({
1717
buttonWrapper: {

src/main/webapp/ui/src/Toolbar/Workspace/SimpleSearch/SimpleSearch.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import DateField from "../../../components/Inputs/DateField";
1515
import { library } from "@fortawesome/fontawesome-svg-core";
1616
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
1717
import { faFilter, faSearch, faBars } from "@fortawesome/free-solid-svg-icons";
18-
import { truncateIsoTimestamp } from "../../../util/conversions";
18+
import { truncateIsoTimestamp } from "../../../stores/definitions/Units";
1919
library.add(faFilter, faSearch, faBars);
2020

2121
import UserSelect from "../AdvancedSearch/UserSelect/UserSelect";

src/main/webapp/ui/src/components/AppBar/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ import CircularProgress from "@mui/material/CircularProgress";
5454
import MaintenanceIcon from "@mui/icons-material/Construction";
5555
import Popover from "@mui/material/Popover";
5656
import IconButton from "@mui/material/IconButton";
57-
import { getRelativeTime } from "../../util/conversions";
57+
import { getRelativeTime } from "../../stores/definitions/Units";
5858
import Result from "../../util/result";
5959
import useSessionStorage from "../../util/useSessionStorage";
6060

src/main/webapp/ui/src/components/PublicPages/IdentifierPublicPage.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ import TableRow from "@mui/material/TableRow";
5454
import NoValue from "../NoValue";
5555
import VisuallyHiddenHeading from "../VisuallyHiddenHeading";
5656
import IdentifierModel from "../../stores/models/IdentifierModel";
57-
import { truncateIsoTimestamp } from "../../util/conversions";
57+
import { truncateIsoTimestamp } from "../../stores/definitions/Units";
5858

5959
const useStyles = makeStyles()((theme) => ({
6060
styledDescriptionList: {

src/main/webapp/ui/src/stores/definitions/Sample.js

+1-5
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,11 @@ import { type InventoryRecord } from "./InventoryRecord";
1010
import { type Template } from "./Template";
1111
import { type Id } from "./BaseRecord";
1212
import { type Field } from "./Field";
13+
import { type Temperature } from "./Units";
1314

1415
export type Alias = {| alias: string, plural: string |};
1516
export type SampleSource = "LAB_CREATED" | "VENDOR_SUPPLIED" | "OTHER";
1617

17-
export type Temperature = {|
18-
numericValue: number,
19-
unitId: number,
20-
|};
21-
2218
export interface Sample extends InventoryRecord {
2319
template: ?Template;
2420
storageTempMin: ?Temperature;

0 commit comments

Comments
 (0)