From 3323f7d7deb4b6ffac559ceb0324ad40ebc0d37e Mon Sep 17 00:00:00 2001 From: lihsai0 Date: Thu, 21 Nov 2024 15:41:52 +0800 Subject: [PATCH] fix: crash when only one available storage class --- .../forms/change-storage-class-form.tsx | 61 ++++++++++--------- .../file/change-file-storage-class/index.tsx | 5 +- .../file/change-files-storage-class/index.tsx | 2 +- .../file-operation/change-storage-class.tsx | 5 +- 4 files changed, 39 insertions(+), 34 deletions(-) diff --git a/src/renderer/components/forms/change-storage-class-form.tsx b/src/renderer/components/forms/change-storage-class-form.tsx index 3e60b156..163eee83 100644 --- a/src/renderer/components/forms/change-storage-class-form.tsx +++ b/src/renderer/components/forms/change-storage-class-form.tsx @@ -7,7 +7,6 @@ import StorageClass from "@common/models/storage-class"; export interface ChangeStorageClassFormData { storageClassKodoName: string, - someInput: string, } interface ChangeStorageClassFormProps { @@ -52,7 +51,7 @@ const ChangeStorageClassForm: React.FC = ({ useEffect(() => { reset({ - storageClassKodoName: availableStorageClasses[0].kodoName ?? "Standard", + storageClassKodoName: availableStorageClasses[0]?.kodoName ?? "", }); }, []); @@ -97,33 +96,37 @@ const ChangeStorageClassForm: React.FC = ({ } - - - {translate("forms.changeStorageClass.storageClassKodoName.label")} - -
- { - availableStorageClasses.map(storageClass => ( - - )) - } - - { - availableStorageClasses - .find(storageClasses => - storageClasses.kodoName === watch("storageClassKodoName")) - ?.billingI18n[currentLanguage] - } - -
-
+ { + !availableStorageClasses.length + ? null + : + + {translate("forms.changeStorageClass.storageClassKodoName.label")} + +
+ { + availableStorageClasses.map(storageClass => ( + + )) + } + + { + availableStorageClasses + .find(storageClasses => + storageClasses.kodoName === watch("storageClassKodoName")) + ?.billingI18n[currentLanguage] + } + +
+
+ } ); diff --git a/src/renderer/components/modals/file/change-file-storage-class/index.tsx b/src/renderer/components/modals/file/change-file-storage-class/index.tsx index 82f3353d..f9bdd734 100644 --- a/src/renderer/components/modals/file/change-file-storage-class/index.tsx +++ b/src/renderer/components/modals/file/change-file-storage-class/index.tsx @@ -58,11 +58,12 @@ const ChangeFileStorageClass: React.FC const changeStorageClassFormController = useForm({ mode: "onChange", defaultValues: { - storageClassKodoName: storageClasses[0]?.kodoName ?? "Standard", + storageClassKodoName: storageClasses[0]?.kodoName ?? "", }, }); const { + watch, handleSubmit, formState: { isSubmitting, @@ -135,7 +136,7 @@ const ChangeFileStorageClass: React.FC { - !memoFileItem || isSubmitSuccessful + !memoFileItem || !watch("storageClassKodoName") || isSubmitSuccessful ? null :