Merge branch 'master' into 14452-my-account
[arvados-workbench2.git] / src / store / virtual-machines / virtual-machines-reducer.ts
index 26ba2a22552352a88ab90ba089107f3119304568..475ad7523896eeb2f63bd96efe92bfa3ce44ea8a 100644 (file)
@@ -2,18 +2,44 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import { virtualMachinesAction, VirtualMachineActions } from '~/store/virtual-machines/virtual-machines-actions';
+import { virtualMachinesActions, VirtualMachineActions } from '~/store/virtual-machines/virtual-machines-actions';
+import { ListResults } from '~/services/common-service/common-resource-service';
+import { VirtualMachineLogins } from '~/models/virtual-machines';
 
 interface VirtualMachines {
     date: string;
+    virtualMachines: ListResults<any>;
+    logins: VirtualMachineLogins;
+    links: ListResults<any>;
 }
 
 const initialState: VirtualMachines = {
-    date: ''
+    date: '',
+    virtualMachines: {
+        kind: '',
+        offset: 0,
+        limit: 0,
+        itemsAvailable: 0,
+        items: []
+    },
+    logins: {
+        kind: '',
+        items: []
+    },
+    links: {
+        kind: '',
+        offset: 0,
+        limit: 0,
+        itemsAvailable: 0,
+        items: []
+    }
 };
 
 export const virtualMachinesReducer = (state = initialState, action: VirtualMachineActions): VirtualMachines =>
-    virtualMachinesAction.match(action, {
+    virtualMachinesActions.match(action, {
         SET_REQUESTED_DATE: date => ({ ...state, date }),
+        SET_VIRTUAL_MACHINES: virtualMachines => ({ ...state, virtualMachines }),
+        SET_LOGINS: logins => ({ ...state, logins }),
+        SET_LINKS: links => ({ ...state, links }),
         default: () => state
     });