1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import { virtualMachinesActions, VirtualMachineActions } from '~/store/virtual-machines/virtual-machines-actions';
6 import { ListResults } from '~/services/common-service/common-resource-service';
7 import { VirtualMachinesLoginsResource } from '~/models/virtual-machines';
9 interface VirtualMachines {
11 virtualMachines: ListResults<any>;
12 logins: VirtualMachinesLoginsResource[];
13 links: ListResults<any>;
16 const initialState: VirtualMachines = {
35 export const virtualMachinesReducer = (state = initialState, action: VirtualMachineActions): VirtualMachines =>
36 virtualMachinesActions.match(action, {
37 SET_REQUESTED_DATE: date => ({ ...state, date }),
38 SET_VIRTUAL_MACHINES: virtualMachines => ({ ...state, virtualMachines }),
39 SET_LOGINS: logins => ({ ...state, logins }),
40 SET_LINKS: links => ({ ...state, links }),