From 1281d1995ebc1c4da456aca0abb5915468f3460b Mon Sep 17 00:00:00 2001 From: Naitikk Date: Wed, 11 Feb 2026 20:49:34 +0530 Subject: [PATCH 1/3] fix: prevent modal from closing when team/channel creation fails --- .../navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx | 3 +-- .../navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx | 5 ++--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx index 528d261f4fab0..0380f63742d74 100644 --- a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx +++ b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx @@ -186,10 +186,9 @@ const CreateChannelModal = ({ teamId = '', mainRoom, onClose, reload }: CreateCh dispatchToastMessage({ type: 'success', message: t('Room_has_been_created') }); reload?.(); + onClose(); } catch (error) { dispatchToastMessage({ type: 'error', message: error }); - } finally { - onClose(); } }; diff --git a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx index 87feeea766266..4b7410aa352f2 100644 --- a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx +++ b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx @@ -146,11 +146,10 @@ const CreateTeamModal = ({ onClose }: CreateTeamModalProps) => { const { team } = await createTeamAction(params); dispatchToastMessage({ type: 'success', message: t('Team_has_been_created') }); goToRoomById(team.roomId); + onClose(); } catch (error) { dispatchToastMessage({ type: 'error', message: error }); - } finally { - onClose(); - } + } }; const createTeamFormId = useId(); From 00c828fe41e58ecfd2958153f88770b8a2f5a061 Mon Sep 17 00:00:00 2001 From: Naitikk Date: Fri, 13 Feb 2026 15:31:52 +0530 Subject: [PATCH 2/3] fix: show inline error in modal instead of toast on creation failure --- .../actions/CreateChannelModal.tsx | 13 ++++++++++++- .../NavBarPagesGroup/actions/CreateTeamModal.tsx | 15 +++++++++++++-- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx index 0380f63742d74..d84f6e89b1b00 100644 --- a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx +++ b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx @@ -109,6 +109,7 @@ const CreateChannelModal = ({ teamId = '', mainRoom, onClose, reload }: CreateCh handleSubmit, control, setValue, + setError, watch, } = useForm({ mode: 'onBlur', @@ -188,7 +189,10 @@ const CreateChannelModal = ({ teamId = '', mainRoom, onClose, reload }: CreateCh reload?.(); onClose(); } catch (error) { - dispatchToastMessage({ type: 'error', message: error }); + setError('root.serverError', { + type: 'manual', + message: error instanceof Error ? error.message : t('Something_went_wrong_try_again_later'), + }); } }; @@ -400,6 +404,13 @@ const CreateChannelModal = ({ teamId = '', mainRoom, onClose, reload }: CreateCh + {errors?.root?.serverError ? ( + + + {errors.root.serverError.message} + + + ) : null} diff --git a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx index 4b7410aa352f2..2b05194fc38ca 100644 --- a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx +++ b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx @@ -93,6 +93,7 @@ const CreateTeamModal = ({ onClose }: CreateTeamModalProps) => { control, handleSubmit, setValue, + setError, watch, formState: { errors, isSubmitting }, } = useForm({ @@ -148,8 +149,11 @@ const CreateTeamModal = ({ onClose }: CreateTeamModalProps) => { goToRoomById(team.roomId); onClose(); } catch (error) { - dispatchToastMessage({ type: 'error', message: error }); - } + setError('root.serverError', { + type: 'manual', + message: error instanceof Error ? error.message : t('Something_went_wrong_try_again_later'), + }); + } }; const createTeamFormId = useId(); @@ -314,6 +318,13 @@ const CreateTeamModal = ({ onClose }: CreateTeamModalProps) => { + {errors?.root?.serverError ? ( + + + {errors.root.serverError.message} + + + ) : null} From d40178a1caa9ca808b3fe6b53206e73b2716b709 Mon Sep 17 00:00:00 2001 From: Naitikk Date: Thu, 19 Feb 2026 07:16:37 +0530 Subject: [PATCH 3/3] Revert "fix: show inline error in modal instead of toast on creation failure" This reverts commit 00c828fe41e58ecfd2958153f88770b8a2f5a061. --- .../actions/CreateChannelModal.tsx | 13 +------------ .../NavBarPagesGroup/actions/CreateTeamModal.tsx | 15 ++------------- 2 files changed, 3 insertions(+), 25 deletions(-) diff --git a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx index d84f6e89b1b00..0380f63742d74 100644 --- a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx +++ b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateChannelModal.tsx @@ -109,7 +109,6 @@ const CreateChannelModal = ({ teamId = '', mainRoom, onClose, reload }: CreateCh handleSubmit, control, setValue, - setError, watch, } = useForm({ mode: 'onBlur', @@ -189,10 +188,7 @@ const CreateChannelModal = ({ teamId = '', mainRoom, onClose, reload }: CreateCh reload?.(); onClose(); } catch (error) { - setError('root.serverError', { - type: 'manual', - message: error instanceof Error ? error.message : t('Something_went_wrong_try_again_later'), - }); + dispatchToastMessage({ type: 'error', message: error }); } }; @@ -404,13 +400,6 @@ const CreateChannelModal = ({ teamId = '', mainRoom, onClose, reload }: CreateCh - {errors?.root?.serverError ? ( - - - {errors.root.serverError.message} - - - ) : null} diff --git a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx index 2b05194fc38ca..4b7410aa352f2 100644 --- a/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx +++ b/apps/meteor/client/navbar/NavBarPagesGroup/actions/CreateTeamModal.tsx @@ -93,7 +93,6 @@ const CreateTeamModal = ({ onClose }: CreateTeamModalProps) => { control, handleSubmit, setValue, - setError, watch, formState: { errors, isSubmitting }, } = useForm({ @@ -149,11 +148,8 @@ const CreateTeamModal = ({ onClose }: CreateTeamModalProps) => { goToRoomById(team.roomId); onClose(); } catch (error) { - setError('root.serverError', { - type: 'manual', - message: error instanceof Error ? error.message : t('Something_went_wrong_try_again_later'), - }); - } + dispatchToastMessage({ type: 'error', message: error }); + } }; const createTeamFormId = useId(); @@ -318,13 +314,6 @@ const CreateTeamModal = ({ onClose }: CreateTeamModalProps) => { - {errors?.root?.serverError ? ( - - - {errors.root.serverError.message} - - - ) : null}