1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import { collectionPanelActions, CollectionPanelAction } from "./collection-panel-action";
6 import { CollectionResource } from "~/models/collection";
8 export interface CollectionPanelState {
9 item: CollectionResource | null;
10 numberOfCollectionsWithSamePDH: number;
13 const initialState = {
15 numberOfCollectionsWithSamePDH: 0
18 export const collectionPanelReducer = (state: CollectionPanelState = initialState, action: CollectionPanelAction) =>
19 collectionPanelActions.match(action, {
21 SET_COLLECTION: (item) => ({ ...state, item }),
22 LOAD_COLLECTION_SUCCESS: ({ item }) => ({ ...state, item }),
23 SET_NUMBER_OF_COLLECTIONS_WITH_SAME_PDH: (num) => ({ ...state, numberOfCollectionsWithSamePDH: num }),