X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/be4232a50f210b4c4023e3dc5fddb931e71a1c4a..7490775a0dd834c087f291219092fb350be9705f:/src/store/details-panel/details-panel-reducer.ts diff --git a/src/store/details-panel/details-panel-reducer.ts b/src/store/details-panel/details-panel-reducer.ts index f22add3d..6c32551c 100644 --- a/src/store/details-panel/details-panel-reducer.ts +++ b/src/store/details-panel/details-panel-reducer.ts @@ -3,21 +3,23 @@ // SPDX-License-Identifier: AGPL-3.0 import { detailsPanelActions, DetailsPanelAction } from "./details-panel-action"; -import { Resource } from "~/models/resource"; export interface DetailsPanelState { - item: Resource | null; + resourceUuid: string; isOpened: boolean; + tabNr: number; } const initialState = { - item: null, - isOpened: false + resourceUuid: '', + isOpened: false, + tabNr: 0 }; export const detailsPanelReducer = (state: DetailsPanelState = initialState, action: DetailsPanelAction) => detailsPanelActions.match(action, { default: () => state, - LOAD_DETAILS_SUCCESS: ({ item }) => ({ ...state, item }), - TOGGLE_DETAILS_PANEL: () => ({ ...state, isOpened: !state.isOpened }) + LOAD_DETAILS_PANEL: resourceUuid => ({ ...state, resourceUuid }), + OPEN_DETAILS_PANEL: tabNr => ({ ...state, isOpened: true, tabNr }), + TOGGLE_DETAILS_PANEL: () => ({ ...state, isOpened: !state.isOpened }), });