@hmcts/media-viewer
Version:
26 lines • 6.48 kB
JavaScript
import { Injectable } from '@angular/core';
import { createEffect, ofType } from '@ngrx/effects';
import { catchError, exhaustMap, map, switchMap } from 'rxjs/operators';
import { of } from 'rxjs';
import * as icpActions from '../actions/icp.actions';
import * as i0 from "@angular/core";
import * as i1 from "@ngrx/effects";
import * as i2 from "../../icp/icp-session-api.service";
import * as i3 from "../../icp/icp-update.service";
export class IcpEffects {
constructor(actions$, icpApiService, icpUpdateService) {
this.actions$ = actions$;
this.icpApiService = icpApiService;
this.icpUpdateService = icpUpdateService;
this.loadIcpSession$ = createEffect(() => this.actions$.pipe(ofType(icpActions.LOAD_ICP_SESSION), map((action) => action.payload), exhaustMap((payload) => this.icpApiService.loadSession(payload)
.pipe(map(res => new icpActions.JoinIcpSocketSession(res)), catchError(error => of(new icpActions.LoadIcpSessionFailure(error)))))));
this.joinIcpSocketSession$ = createEffect(() => this.actions$.pipe(ofType(icpActions.JOIN_ICP_SOCKET_SESSION), map((action) => action.payload), switchMap((res) => this.icpUpdateService.joinSession(res.username, res.session, res.token)
.pipe(map(participants => new icpActions.IcpSocketSessionJoined({ session: res.session, participantInfo: participants }))))));
}
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IcpEffects, deps: [{ token: i1.Actions }, { token: i2.IcpSessionApiService }, { token: i3.IcpUpdateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IcpEffects }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IcpEffects, decorators: [{
type: Injectable
}], ctorParameters: () => [{ type: i1.Actions }, { type: i2.IcpSessionApiService }, { type: i3.IcpUpdateService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNwLmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9zdG9yZS9lZmZlY3RzL2ljcC5lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFXLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHMUIsT0FBTyxLQUFLLFVBQVUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFJckQsTUFBTSxPQUFPLFVBQVU7SUFFckIsWUFBb0IsUUFBaUIsRUFDM0IsYUFBbUMsRUFDbkMsZ0JBQWtDO1FBRnhCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDM0Isa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFFNUMsb0JBQWUsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQ2xDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLEVBQ25DLEdBQUcsQ0FBQyxDQUFDLE1BQWlDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFDMUQsVUFBVSxDQUFDLENBQUMsT0FBK0MsRUFBRSxFQUFFLENBQzdELElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQzthQUNwQyxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxVQUFVLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsRUFDcEQsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksVUFBVSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDckUsQ0FDSixDQUFDLENBQ0wsQ0FBQztRQUdGLDBCQUFxQixHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLE1BQU0sQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsRUFDMUMsR0FBRyxDQUFDLENBQUMsTUFBdUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUNoRSxTQUFTLENBQUMsQ0FBQyxHQUE2RCxFQUFFLEVBQUUsQ0FDMUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQzthQUNwRSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsSUFBSSxVQUFVLENBQUMsc0JBQXNCLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQzdILENBQUMsQ0FDTCxDQUFDO0lBeEI4QyxDQUFDO2tJQUp0QyxVQUFVO3NJQUFWLFVBQVU7OzRGQUFWLFVBQVU7a0JBRHRCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBjcmVhdGVFZmZlY3QsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZXhoYXVzdE1hcCwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSWNwU2Vzc2lvbkFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi9pY3AvaWNwLXNlc3Npb24tYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgSWNwVXBkYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL2ljcC9pY3AtdXBkYXRlLnNlcnZpY2UnO1xuaW1wb3J0ICogYXMgaWNwQWN0aW9ucyBmcm9tICcuLi9hY3Rpb25zL2ljcC5hY3Rpb25zJztcbmltcG9ydCB7IEljcFNlc3Npb24gfSBmcm9tICcuLi8uLi9pY3AvaWNwLmludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSWNwRWZmZWN0cyB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICBwcml2YXRlIGljcEFwaVNlcnZpY2U6IEljcFNlc3Npb25BcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgaWNwVXBkYXRlU2VydmljZTogSWNwVXBkYXRlU2VydmljZSkgeyB9XG5cbiAgbG9hZEljcFNlc3Npb24kID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKGljcEFjdGlvbnMuTE9BRF9JQ1BfU0VTU0lPTiksXG4gICAgICBtYXAoKGFjdGlvbjogaWNwQWN0aW9ucy5Mb2FkSWNwU2Vzc2lvbikgPT4gYWN0aW9uLnBheWxvYWQpLFxuICAgICAgZXhoYXVzdE1hcCgocGF5bG9hZDogeyBjYXNlSWQ6IHN0cmluZywgZG9jdW1lbnRJZDogc3RyaW5nIH0pID0+XG4gICAgICAgIHRoaXMuaWNwQXBpU2VydmljZS5sb2FkU2Vzc2lvbihwYXlsb2FkKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgbWFwKHJlcyA9PiBuZXcgaWNwQWN0aW9ucy5Kb2luSWNwU29ja2V0U2Vzc2lvbihyZXMpKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4gb2YobmV3IGljcEFjdGlvbnMuTG9hZEljcFNlc3Npb25GYWlsdXJlKGVycm9yKSkpXG4gICAgICAgICAgKVxuICAgICAgKSlcbiAgKTtcblxuXG4gIGpvaW5JY3BTb2NrZXRTZXNzaW9uJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShpY3BBY3Rpb25zLkpPSU5fSUNQX1NPQ0tFVF9TRVNTSU9OKSxcbiAgICAgIG1hcCgoYWN0aW9uOiBpY3BBY3Rpb25zLkpvaW5JY3BTb2NrZXRTZXNzaW9uKSA9PiBhY3Rpb24ucGF5bG9hZCksXG4gICAgICBzd2l0Y2hNYXAoKHJlczogeyB1c2VybmFtZTogc3RyaW5nLCBzZXNzaW9uOiBJY3BTZXNzaW9uLCB0b2tlbjogc3RyaW5nIH0pID0+XG4gICAgICAgIHRoaXMuaWNwVXBkYXRlU2VydmljZS5qb2luU2Vzc2lvbihyZXMudXNlcm5hbWUsIHJlcy5zZXNzaW9uLCByZXMudG9rZW4pXG4gICAgICAgICAgLnBpcGUobWFwKHBhcnRpY2lwYW50cyA9PiBuZXcgaWNwQWN0aW9ucy5JY3BTb2NrZXRTZXNzaW9uSm9pbmVkKHsgc2Vzc2lvbjogcmVzLnNlc3Npb24sIHBhcnRpY2lwYW50SW5mbzogcGFydGljaXBhbnRzIH0pKSlcbiAgICAgICkpXG4gICk7XG59XG4iXX0=