diff --git a/CHANGELOG.md b/CHANGELOG.md index 41e3a2c93121275db1e949f3036683790d49f59b..48e6a66a365486c47cb89c583d5de2a558ee6e9c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -51,6 +51,7 @@ non-ascii paths while adding files from "Connected file share" (issue #4428) - Fixed bug of computing Job's unsolved/resolved issues numbers () - Dataset export for job () - Angle is not propagated when use ``propagate`` feature () +- Could not fetch task in a corner case () - Restoring CVAT in case of React-renderning fail () - Deleted frames become restored if a user deletes frames from another job of the same task () diff --git a/cvat-ui/src/actions/projects-actions.ts b/cvat-ui/src/actions/projects-actions.ts index 51a90e71933c7394b0b94957ee031ab0c87904c8..eb01b017e9bf9a104b0dea81ae63b7fd8c561c82 100644 --- a/cvat-ui/src/actions/projects-actions.ts +++ b/cvat-ui/src/actions/projects-actions.ts @@ -70,7 +70,7 @@ export function getProjectTasksAsync(tasksQuery: Partial = {}): Thun getState().projects.gettingQuery, tasksQuery, )); - const query: TasksQuery = { + const query: Partial = { ...state.projects.tasksGettingQuery, ...tasksQuery, }; diff --git a/cvat-ui/src/actions/tasks-actions.ts b/cvat-ui/src/actions/tasks-actions.ts index 11c755c298c5ad6123325569721c727c0d9d16cf..336e2924aa444014e9c2a5f1b5925cb550348e01 100644 --- a/cvat-ui/src/actions/tasks-actions.ts +++ b/cvat-ui/src/actions/tasks-actions.ts @@ -31,7 +31,7 @@ export enum TasksActionTypes { SWITCH_MOVE_TASK_MODAL_VISIBLE = 'SWITCH_MOVE_TASK_MODAL_VISIBLE', } -function getTasks(query: TasksQuery, updateQuery: boolean): AnyAction { +function getTasks(query: Partial, updateQuery: boolean): AnyAction { const action = { type: TasksActionTypes.GET_TASKS, payload: { @@ -65,7 +65,10 @@ function getTasksFailed(error: any): AnyAction { return action; } -export function getTasksAsync(query: TasksQuery, updateQuery = true): ThunkAction, {}, {}, AnyAction> { +export function getTasksAsync( + query: Partial, + updateQuery = true, +): ThunkAction, {}, {}, AnyAction> { return async (dispatch: ActionCreator): Promise => { dispatch(getTasks(query, updateQuery)); diff --git a/cvat-ui/src/containers/task-page/task-page.tsx b/cvat-ui/src/containers/task-page/task-page.tsx index 14a1b1ca70f620ba31a104c92214c36a3126e3c4..4e342b4a06df37206cac5ae633372b669fd04ccb 100644 --- a/cvat-ui/src/containers/task-page/task-page.tsx +++ b/cvat-ui/src/containers/task-page/task-page.tsx @@ -1,4 +1,5 @@ // Copyright (C) 2020-2022 Intel Corporation +// Copyright (C) 2022 CVAT.ai Corporation // // SPDX-License-Identifier: MIT @@ -65,16 +66,7 @@ function mapDispatchToProps(dispatch: any, own: Props): DispatchToProps { return { getTask: (): void => { dispatch( - getTasksAsync({ - id, - page: 1, - search: null, - owner: null, - assignee: null, - name: null, - status: null, - mode: null, - }), + getTasksAsync({ id }), ); }, }; diff --git a/cvat-ui/src/reducers/tasks-reducer.ts b/cvat-ui/src/reducers/tasks-reducer.ts index ab39c697c351cd04647f8c52b45b68492b0960e9..9499ba263300e7666b3b88bd0ca837791b8332a9 100644 --- a/cvat-ui/src/reducers/tasks-reducer.ts +++ b/cvat-ui/src/reducers/tasks-reducer.ts @@ -50,7 +50,10 @@ export default (state: TasksState = defaultState, action: AnyAction): TasksState fetching: true, hideEmpty: true, count: 0, - gettingQuery: action.payload.updateQuery ? { ...action.payload.query } : state.gettingQuery, + gettingQuery: action.payload.updateQuery ? { + ...defaultState.gettingQuery, + ...action.payload.query, + } : state.gettingQuery, }; case TasksActionTypes.GET_TASKS_SUCCESS: { const combinedWithPreviews = action.payload.array.map(