From 5cda270e4b34da82897071baeebabf704c69f6c9 Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Mon, 25 Nov 2024 23:15:44 +0100 Subject: [PATCH] Small SAST fixes (#8534) * fix various middle-high SAST errors * fix another small issue * add default --- src/frontend/src/components/forms/ApiForm.tsx | 2 +- src/frontend/src/components/forms/fields/DateField.tsx | 2 +- src/frontend/src/components/importer/ImporterDrawer.tsx | 3 ++- src/frontend/src/components/plugins/PluginUIFeature.tsx | 4 ++-- src/frontend/src/forms/StockForms.tsx | 2 +- src/frontend/src/tables/part/ParametricPartTable.tsx | 8 +++----- src/frontend/src/tables/settings/TemplateTable.tsx | 2 +- 7 files changed, 11 insertions(+), 12 deletions(-) diff --git a/src/frontend/src/components/forms/ApiForm.tsx b/src/frontend/src/components/forms/ApiForm.tsx index 3e6a5abf8b..fa1c07b5a1 100644 --- a/src/frontend/src/components/forms/ApiForm.tsx +++ b/src/frontend/src/components/forms/ApiForm.tsx @@ -219,7 +219,7 @@ export function ApiForm({ // If the user has specified initial data, that overrides default values // But, *only* for the fields we have specified if (props.initialData) { - Object.keys(props.initialData).map((key) => { + Object.keys(props.initialData).forEach((key) => { if (key in defaultValuesMap) { defaultValuesMap[key] = props?.initialData?.[key] ?? defaultValuesMap[key]; diff --git a/src/frontend/src/components/forms/fields/DateField.tsx b/src/frontend/src/components/forms/fields/DateField.tsx index a0aaee289e..a497be516d 100644 --- a/src/frontend/src/components/forms/fields/DateField.tsx +++ b/src/frontend/src/components/forms/fields/DateField.tsx @@ -43,7 +43,7 @@ export default function DateField({ let dv: Date | null = null; if (field.value) { - dv = new Date(field.value) ?? null; + dv = new Date(field.value); } // Ensure that the date is valid diff --git a/src/frontend/src/components/importer/ImporterDrawer.tsx b/src/frontend/src/components/importer/ImporterDrawer.tsx index f687191605..875e0abe2e 100644 --- a/src/frontend/src/components/importer/ImporterDrawer.tsx +++ b/src/frontend/src/components/importer/ImporterDrawer.tsx @@ -70,7 +70,6 @@ export default function ImporterDrawer({ // Map from import steps to stepper steps const currentStep = useMemo(() => { switch (session.status) { - default: case importSessionStatus.INITIAL: return 0; case importSessionStatus.MAPPING: @@ -81,6 +80,8 @@ export default function ImporterDrawer({ return 3; case importSessionStatus.COMPLETE: return 4; + default: + return 0; } }, [session.status]); diff --git a/src/frontend/src/components/plugins/PluginUIFeature.tsx b/src/frontend/src/components/plugins/PluginUIFeature.tsx index 15ecfee337..c8a35c958e 100644 --- a/src/frontend/src/components/plugins/PluginUIFeature.tsx +++ b/src/frontend/src/components/plugins/PluginUIFeature.tsx @@ -84,7 +84,7 @@ export const getPluginTemplateEditor = ( useEffect(() => { (async () => { try { - await func({ + func({ ref: elRef.current!, registerHandlers: ({ getCode, setCode }) => { setCodeRef.current = setCode; @@ -136,7 +136,7 @@ export const getPluginTemplatePreview = ( useEffect(() => { (async () => { try { - await func({ + func({ ref: elRef.current!, registerHandlers: ({ updatePreview }) => { updatePreviewRef.current = updatePreview; diff --git a/src/frontend/src/forms/StockForms.tsx b/src/frontend/src/forms/StockForms.tsx index f52e547b11..53775e75b3 100644 --- a/src/frontend/src/forms/StockForms.tsx +++ b/src/frontend/src/forms/StockForms.tsx @@ -159,7 +159,7 @@ export function useStockFields({ hidden: create || partInstance.trackable == false || - (!stockItem?.quantity != undefined && stockItem?.quantity != 1) + (stockItem?.quantity != undefined && stockItem?.quantity != 1) }, batch: { placeholder: nextBatchCode diff --git a/src/frontend/src/tables/part/ParametricPartTable.tsx b/src/frontend/src/tables/part/ParametricPartTable.tsx index cf802657b5..8381622177 100644 --- a/src/frontend/src/tables/part/ParametricPartTable.tsx +++ b/src/frontend/src/tables/part/ParametricPartTable.tsx @@ -283,12 +283,10 @@ export default function ParametricPartTable({ if (column?.accessor?.toString()?.startsWith('parameter_')) { const col = column as any; onParameterClick(col.extra.template, record); - } else { + } else if (record?.pk) { // Navigate through to the part detail page - if (record?.pk) { - const url = getDetailUrl(ModelType.part, record.pk); - navigateToLink(url, navigate, event); - } + const url = getDetailUrl(ModelType.part, record.pk); + navigateToLink(url, navigate, event); } } }} diff --git a/src/frontend/src/tables/settings/TemplateTable.tsx b/src/frontend/src/tables/settings/TemplateTable.tsx index 81763823bf..70b86cd6bb 100644 --- a/src/frontend/src/tables/settings/TemplateTable.tsx +++ b/src/frontend/src/tables/settings/TemplateTable.tsx @@ -236,7 +236,7 @@ export function TemplateTable({ sortable: false, switchable: true }, - ...Object.entries(additionalFormFields || {})?.map(([key, field]) => ({ + ...Object.entries(additionalFormFields || {}).map(([key, field]) => ({ accessor: key, ...field, title: field.label,