2 * Copyright © 2018 European Support Limited
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 import { call, takeEvery, put, select } from 'redux-saga/effects';
18 import { genericNetworkErrorAction } from 'wfapp/appConstants';
19 import overviewApi from 'features/workflow/overview/overviewApi';
21 versionListFetchAction,
26 } from 'features/workflow/overview/overviewConstansts';
27 import { setWorkflowAction } from 'features/workflow/workflowConstants';
28 import { notificationActions } from 'shared/notifications/notificationsActions';
29 import { fetchWorkflow } from 'features/catalog/catalogActions';
30 import { WORKFLOW_STATUS } from 'features/workflow/workflowConstants';
32 export function* getOverview(action) {
34 const versions = yield call(overviewApi.getVersions, action.payload);
35 yield put(versionListFetchAction(versions));
36 const workflow = yield call(overviewApi.getWorkflow, action.payload);
37 yield put(setWorkflowAction(workflow));
39 yield put(genericNetworkErrorAction(error));
43 export function* updateWorkflow(action) {
45 yield call(overviewApi.updateWorkflow, action.payload);
47 notificationActions.showSuccess({
48 title: 'Update Workflow',
49 message: 'Successfully updated'
53 yield put(genericNetworkErrorAction(e));
57 export function* archiveRestoreWorkflow(action) {
59 const { history, ...data } = action.payload;
60 yield call(overviewApi.archiveRestoreWorkflow, data);
70 status: WORKFLOW_STATUS.ACTIVE
75 yield put(genericNetworkErrorAction(e));
79 export function* watchOverview() {
80 yield takeEvery(GET_OVERVIEW, getOverview);
81 yield takeEvery(UPDATE_WORKFLOW, updateWorkflow);
82 yield takeEvery(ARCHIVE_WORKFLOW, archiveRestoreWorkflow);
83 yield takeEvery(RESTORE_WORKFLOW, archiveRestoreWorkflow);