summaryrefslogtreecommitdiffstats
path: root/sdnr/wt/odlux/apps/performanceHistoryApp/src/handlers/performanceData15minHandler.ts
blob: 4f284a27ef8ee11c7956263c28946e4207d85acf (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
import { createExternal,IExternalTableState } from '../../../../framework/src/components/material-table/utilities';
import { createSearchDataHandler } from '../../../../framework/src/utilities/elasticSearch';

import {  PerformanceDataType, Performance,PerformanceResult } from '../models/performanceDataType';

export interface IPerformanceData15minState extends IExternalTableState<PerformanceDataType> {}

/**
 * Creates elastic search material data fetch handler for performance data from historicalperformance15min database.
 */
  const performanceDataSearchHandler = createSearchDataHandler<PerformanceResult, Performance>(
    "sdnperformance/historicalperformance15min",
     null,
     (hit) => ({ 
       _id: hit._id, 
       ...hit._source,
       ...hit._source["performance-data"]
      }),
  (name) => `${name}` );

export const {
  actionHandler: performanceData15minActionHandler,
  createActions: createPerformanceData15minActions,
  createProperties: createPerformanceData15minProperties,
  createPreActions: createPerformanceData15minPreActions,
  reloadAction: performanceData15minReloadAction
} = createExternal<PerformanceDataType>(performanceDataSearchHandler, appState => appState.performanceHistory.performanceData15min);