aboutsummaryrefslogtreecommitdiffstats
path: root/sdnr/wt/odlux/apps/configurationApp/src/handlers/configurationAppRootHandler.ts
blob: 04b63d39b5cd298c2d48425ad079864fc5b926ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import { combineActionHandler } from '../../../../framework/src/flux/middleware';

import { IConnectedNetworkElementsState, connectedNetworkElementsActionHandler } from './connectedNetworkElementsHandler';
import { IDeviceDescriptionState, deviceDescriptionHandler } from "./deviceDescriptionHandler";
import { IViewDescriptionState, viewDescriptionHandler } from "./viewDescriptionHandler";
import { IValueSelectorState, valueSelectorHandler } from "./valueSelectorHandler";

interface IConfigurationAppStoreState {
  connectedNetworkElements: IConnectedNetworkElementsState; // used for ne selection
  deviceDescription: IDeviceDescriptionState;               // contains ui and device descriptions
  viewDescription: IViewDescriptionState;                   // contains current ui description
  valueSelector: IValueSelectorState;
}

declare module '../../../../framework/src/store/applicationStore' {
  interface IApplicationStoreState {
    configuration: IConfigurationAppStoreState,
  }
}

const actionHandlers = {
  connectedNetworkElements: connectedNetworkElementsActionHandler,
  deviceDescription: deviceDescriptionHandler,
  viewDescription: viewDescriptionHandler,
  valueSelector: valueSelectorHandler,
};

export const configurationAppRootHandler = combineActionHandler<IConfigurationAppStoreState>(actionHandlers);
export default configurationAppRootHandler;