UNPKG

@equinor/fusion-react-power-bi

Version:
20 lines 1.15 kB
import { merge } from 'rxjs'; import { filter, map } from 'rxjs/operators'; import { isActionOf } from 'typesafe-actions'; import { actions } from '../store'; import { TelemetryActions } from '@equinor/fusion'; const requests = (action$) => action$.pipe(filter(isActionOf([actions.fetchAccessToken.request, actions.fetchEmbedInfo.request, actions.checkContextAccess.request])), map(({ type, payload }) => TelemetryActions.event({ name: 'action.request', properties: { action: type, payload }, }))); const failures = (action$) => action$.pipe(filter((action) => !!action.type.match(/FAILURE/)), map(({ type, payload }) => { const { statusCode, url } = payload.error; return TelemetryActions.error({ name: 'action.error', properties: { error: { action: type, statusCode, url } }, }); })); const tokenRefresh = (action$) => action$.pipe(filter(isActionOf(actions.refreshAccessToken)), map(() => TelemetryActions.event({ name: 'token.refresh' }))); export const trackers = (action$) => merge(requests(action$), failures(action$), tokenRefresh(action$)); export default trackers; //# sourceMappingURL=track-actions.js.map