apisearch-events-ui
Version:
Javascript User Interface to visualize all events data.
38 lines (31 loc) • 932 B
JavaScript
import ApisearchDispatcher from '../dispatcher'
import { EventEmitter } from "events";
/**
* Last queries widget store
*/
class LastQueriesStore extends EventEmitter {
constructor(initialQuery) {
super();
this.dirty = true;
this.currentQuery = initialQuery;
this.data = {
lastQueries: {}
};
this.registerReducer();
}
registerReducer() {
ApisearchDispatcher.register(action => {
if (action.type === 'LAST_QUERIES__RENDER_DATA') {
const { result, updatedQuery } = action.payload;
this.dirty = false;
this.currentQuery = updatedQuery;
this.data = {
...this.data,
lastQueries: result.aggregations.aggregations
};
this.emit('render');
}
})
}
}
export default LastQueriesStore;