Add action for resseting run process panel
authorMichal Klobukowski <michal.klobukowski@contractors.roche.com>
Sun, 21 Oct 2018 21:36:19 +0000 (23:36 +0200)
committerMichal Klobukowski <michal.klobukowski@contractors.roche.com>
Sun, 21 Oct 2018 21:36:19 +0000 (23:36 +0200)
Feature #14361

Arvados-DCO-1.1-Signed-off-by: Michal Klobukowski <michal.klobukowski@contractors.roche.com>

src/store/run-process-panel/run-process-panel-actions.ts
src/store/run-process-panel/run-process-panel-reducer.ts

index 2fd4b042ae2337178a440746985821303f0c275f..2c5c9b68bbbb9c4aec57ca9117bb4ed8e41ca335 100644 (file)
@@ -22,7 +22,8 @@ export const runProcessPanelActions = unionize({
     SET_CURRENT_STEP: ofType<number>(),
     SET_WORKFLOWS: ofType<WorkflowResource[]>(),
     SET_SELECTED_WORKFLOW: ofType<WorkflowResource>(),
-    SEARCH_WORKFLOWS: ofType<string>()
+    SEARCH_WORKFLOWS: ofType<string>(),
+    RESET_RUN_PROCESS_PANEL: ofType<{}>(),
 });
 
 export interface RunProcessSecondStepDataFormProps {
@@ -37,6 +38,7 @@ export type RunProcessPanelAction = UnionOf<typeof runProcessPanelActions>;
 export const loadRunProcessPanel = () =>
     async (dispatch: Dispatch<any>, getState: () => RootState, services: ServiceRepository) => {
         try {
+            dispatch(runProcessPanelActions.RESET_RUN_PROCESS_PANEL());
             const response = await services.workflowService.list();
             dispatch(runProcessPanelActions.SET_WORKFLOWS(response.items));
         } catch (e) {
index 0ad06bee58da253d83e2ad31fbad04a65b1bd7d6..0f220419443dd6b6c279af2f1341fabfdef04c1a 100644 (file)
@@ -32,7 +32,8 @@ export const runProcessPanelReducer = (state = initialState, action: RunProcessP
             selectedWorkflow,
             inputs: getWorkflowInputs(parseWorkflowDefinition(selectedWorkflow)) || [],
         }),
-        SET_WORKFLOWS: workflows => ({ ...state, workflows, searchWorkflows: workflows }), 
+        SET_WORKFLOWS: workflows => ({ ...state, workflows, searchWorkflows: workflows }),
         SEARCH_WORKFLOWS: term => ({ ...state, searchWorkflows: state.workflows.filter(workflow => workflow.name.includes(term)) }),
+        RESET_RUN_PROCESS_PANEL: () => ({ ...initialState, processOwnerUuid: state.processOwnerUuid }),
         default: () => state
     });
\ No newline at end of file