UNPKG

apisearch-events-ui

Version:

Javascript User Interface to visualize all events data.

63 lines (59 loc) 1.36 kB
import cloneDeep from 'clone-deep'; import ApisearchDispatcher from '../../dispatcher'; /** * Get last events action * * This action is triggered when mounting a component * receives two parameters: * @param queryOptions -> given new query options * @param appOptions -> current application options * * Finally dispatches an event with the modified query. * @returns {{ * type: string, * payload: { * updatedQuery, * result * } * }} */ export function getLastQueriesAction( { eventType, from, to }, { currentQuery, client } ) { const clonedQuery = cloneDeep(currentQuery); clonedQuery .filterUniverseByDateRange( 'occurred_on_day', [`${from}..${to}`] ) .filterByTypes( [eventType], true, ['_term', 'asc'] ) .aggregateBy( 'occurred_on_day', 'occurred_on_day', 8, ['_term', 'asc'] ) ; client.events(clonedQuery.toJSON(), (result, error) => { if (error) return; ApisearchDispatcher.dispatch({ type: 'LAST_QUERIES__RENDER_DATA', payload: { updatedQuery: clonedQuery, result } }) }) }