Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@ export const useDeleteConnection = (data: DeleteConnectionRequest): UseMutationR
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: [ConnectionQueryKey.GET_CONNECTIONS] });
queryClient.removeQueries({ queryKey: [ConnectionQueryKey.GET_CONNECTION, data.id] });
notification.success({
message: 'Connection was deleted successfully',
});
},
onError: (error) => {
notification.error({
Expand Down
2 changes: 1 addition & 1 deletion src/entities/connection/ui/ConnectionTypeForm/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export const ConnectionTypeForm = ({ initialType, isRequiredSensitiveFields = tr

return (
<>
<Form.Item label="type" name="type" rules={[{ required: true }]}>
<Form.Item label="Type" name="type" rules={[{ required: true }]}>
<Select
size="large"
options={CONNECTION_TYPE_SELECT_OPTIONS}
Expand Down
3 changes: 3 additions & 0 deletions src/entities/group/api/hooks/useDeleteGroupUser/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ export const useDeleteGroupUser = (data: DeleteGroupUserRequest): UseMutationRes
mutationFn: () => groupService.deleteGroupUser(data),
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: [GroupQueryKey.GET_GROUP_USERS, data.groupId] });
notification.success({
message: 'Group was deleted successfully',
});
},
onError: (error) => {
notification.error({
Expand Down
3 changes: 3 additions & 0 deletions src/entities/queue/api/hooks/useDeleteQueue/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@ export const useDeleteQueue = (data: DeleteQueueRequest): UseMutationResult => {
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: [QueueQueryKey.GET_QUEUES] });
queryClient.removeQueries({ queryKey: [QueueQueryKey.GET_QUEUE, data.id] });
notification.success({
message: 'Queue was deleted successfully',
});
},
onError: (error) => {
notification.error({
Expand Down
3 changes: 3 additions & 0 deletions src/entities/run/api/hooks/useCreateRun/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ export const useCreateRun = (data: CreateRunRequest): UseMutationResult => {
mutationFn: () => runService.createRun(data),
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: [RunQueryKey.GET_RUNS, data.transfer_id] });
notification.success({
message: 'Transfer run was created successfully',
});
},
onError: (error) => {
notification.error({
Expand Down
3 changes: 3 additions & 0 deletions src/entities/transfer/api/hooks/useDeleteTransfer/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@ export const useDeleteTransfer = (data: DeleteTransferRequest): UseMutationResul
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: [TransferQueryKey.GET_TRANSFERS] });
queryClient.removeQueries({ queryKey: [TransferQueryKey.GET_TRANSFER, data.id] });
notification.success({
message: 'Transfer was deleted successfully',
});
},
onError: (error) => {
notification.error({
Expand Down
1 change: 1 addition & 0 deletions src/features/connection/CreateConnection/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ export const CreateConnection = ({ group }: CreateConnectionProps) => {
<ManagedForm<CreateConnectionForm, Connection>
mutationFunction={handleCreateConnection}
onSuccess={onSuccess}
successMessage="Connection was created successfully"
keysInvalidateQueries={[[{ queryKey: [ConnectionQueryKey.GET_CONNECTIONS, group.id] }]]}
>
<FormCurrentGroupDescription groupName={group.name} />
Expand Down
1 change: 1 addition & 0 deletions src/features/connection/UpdateConnection/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ export const UpdateConnection = ({ connection, group }: UpdateConnectionProps) =
mutationFunction={handleUpdateConnection}
initialValues={getUpdateConnectionInitialValues(connection)}
onSuccess={onSuccess}
successMessage="Connection was updated successfully"
keysInvalidateQueries={[
[{ queryKey: [ConnectionQueryKey.GET_CONNECTIONS, group.id] }],
[{ queryKey: [ConnectionQueryKey.GET_CONNECTION, connection.id] }],
Expand Down
1 change: 1 addition & 0 deletions src/features/group/AddGroupUser/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ export const AddGroupUser = ({ groupId, onSuccess, onCancel }: AddGroupUserProps
<ManagedForm<AddGroupUserForm, null>
mutationFunction={handleAddGroupUser}
onSuccess={onSuccess}
successMessage="User was added to group successfully"
keysInvalidateQueries={[[{ queryKey: [GroupQueryKey.GET_GROUP_USERS, groupId] }]]}
>
<Form.Item label="User" name="userId" rules={[{ required: true }]}>
Expand Down
3 changes: 2 additions & 1 deletion src/features/group/CreateGroup/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,14 @@ export const CreateGroup = () => {
<ManagedForm
mutationFunction={groupService.createGroup}
onSuccess={onSuccess}
successMessage="Group was created successfully"
keysInvalidateQueries={[[{ queryKey: [GroupQueryKey.GET_GROUPS] }]]}
>
<Form.Item label="Name" name="name" rules={[{ required: true }]}>
<Input size="large" />
</Form.Item>

<Form.Item label="Description" name="description">
<Form.Item label="Description" name="description" rules={[{ required: true }]}>
<Input size="large" />
</Form.Item>

Expand Down
3 changes: 2 additions & 1 deletion src/features/group/UpdateGroup/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ export const UpdateGroup = ({ group }: UpdateGroupProps) => {
mutationFunction={handleUpdateGroup}
initialValues={getUpdateGroupInitialValues(group)}
onSuccess={onSuccess}
successMessage="Group was updated successfully"
keysInvalidateQueries={[
[{ queryKey: [GroupQueryKey.GET_GROUPS] }],
[{ queryKey: [GroupQueryKey.GET_GROUP, group.id] }],
Expand All @@ -37,7 +38,7 @@ export const UpdateGroup = ({ group }: UpdateGroupProps) => {
<Input size="large" />
</Form.Item>

<Form.Item label="Description" name="description">
<Form.Item label="Description" name="description" rules={[{ required: true }]}>
<Input size="large" />
</Form.Item>

Expand Down
1 change: 1 addition & 0 deletions src/features/group/UpdateGroupUser/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ export const UpdateGroupUser = ({ groupId, user, onSuccess, onCancel }: UpdateGr
initialValues={getUpdateGroupUserInitialValues(user)}
mutationFunction={handleUpdateGroupUser}
onSuccess={onSuccess}
successMessage="User role was updated successfully"
keysInvalidateQueries={[[{ queryKey: [GroupQueryKey.GET_GROUP_USERS, groupId] }]]}
>
<div className={classes.formMain}>
Expand Down
1 change: 1 addition & 0 deletions src/features/queue/CreateQueue/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ export const CreateQueue = ({ group }: CreateQueueProps) => {
<ManagedForm<CreateQueueForm, Queue>
mutationFunction={handleCreateQueue}
onSuccess={onSuccess}
successMessage="Queue was created successfully"
keysInvalidateQueries={[[{ queryKey: [QueueQueryKey.GET_QUEUES, group.id] }]]}
>
<FormCurrentGroupDescription groupName={group.name} />
Expand Down
1 change: 1 addition & 0 deletions src/features/queue/UpdateQueue/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ export const UpdateQueue = ({ queue, group }: UpdateQueueProps) => {
mutationFunction={handleUpdateQueue}
initialValues={getUpdateQueueInitialValues(queue)}
onSuccess={onSuccess}
successMessage="Queue was updated successfully"
keysInvalidateQueries={[
[{ queryKey: [QueueQueryKey.GET_QUEUES, group.id] }],
[{ queryKey: [QueueQueryKey.GET_QUEUE, queue.id] }],
Expand Down
6 changes: 6 additions & 0 deletions src/shared/ui/ManagedForm/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ export const ManagedForm = <T extends object, R>({
children,
mutationFunction,
onSuccess,
successMessage,
keysInvalidateQueries = [],
isHiddenLoadingOnSuccess = false,
onError = () => undefined,
Expand All @@ -35,6 +36,11 @@ export const ManagedForm = <T extends object, R>({
if (isHiddenLoadingOnSuccess) {
setLoading(false);
}
if (successMessage) {
notification.success({
message: successMessage,
});
}
},
onError: (error) => {
onError(error);
Expand Down
2 changes: 2 additions & 0 deletions src/shared/ui/ManagedForm/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ export interface ManagedFormProps<T, R> extends Omit<FormProps<T>, 'form' | 'onF
mutationFunction: (params: T) => Promise<R>;
/** Callback on success response from request */
onSuccess: (response: R) => void;
/** Notification message text on success response from request */
successMessage?: string;
/** Callback on error response from request */
onError?: (error: unknown) => void;
/** Keys for invalidate cache of other requests */
Expand Down
1 change: 1 addition & 0 deletions src/widgets/transfer/CreateTransfer/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ export const CreateTransfer = ({ group }: CreateTransferProps) => {
initialValues={CREATE_TRANSFER_INITIAL_VALUES}
mutationFunction={handleCreateTransfer}
onSuccess={onSuccess}
successMessage="Transfer was created successfully"
keysInvalidateQueries={[[{ queryKey: [TransferQueryKey.GET_TRANSFERS, group.id] }]]}
>
<MutateTransferForm group={group} onCancel={onCancel} />
Expand Down
1 change: 1 addition & 0 deletions src/widgets/transfer/UpdateTransfer/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ export const UpdateTransfer = ({ transfer, group }: UpdateTransferProps) => {
initialValues={transferInitialValues}
mutationFunction={handleUpdateTransfer}
onSuccess={onSuccess}
successMessage="Transfer was updated successfully"
keysInvalidateQueries={[
[{ queryKey: [TransferQueryKey.GET_TRANSFERS, group.id] }],
[{ queryKey: [TransferQueryKey.GET_TRANSFER, transfer.id] }],
Expand Down
Loading