@hmcts/media-viewer
Version:
69 lines • 8.53 kB
JavaScript
import { Injectable } from '@angular/core';
import { IcpEvents } from './icp.events';
import * as i0 from "@angular/core";
import * as i1 from "./socket.service";
export class IcpUpdateService {
constructor(socket) {
this.socket = socket;
}
joinSession(username, session, token) {
this.session = session;
console.log('Joining Session');
console.log(this.session);
console.log('Joining session');
this.socket.connect(`${session.connectionUrl}?access_token=${token}`, session);
this.socket.connected().subscribe(isConnected => {
if (isConnected) {
this.socket.join({ ...this.session, username });
}
});
return this.socket.listen(IcpEvents.SESSION_JOINED);
}
leaveSession() {
this.socket.leave(this.session);
}
newParticipantJoined() {
return this.socket.listen(IcpEvents.NEW_PARTICIPANT_JOINED);
}
clientDisconnected() {
return this.socket.listen(IcpEvents.CLIENT_DISCONNECTED);
}
removeParticipant(participantId) {
this.socket.emit(IcpEvents.REMOVE_PARTICIPANT, {
participantId: participantId,
caseId: this.session.caseId,
documentId: this.session.documentId
});
}
participantListUpdated() {
return this.socket.listen(IcpEvents.PARTICIPANTS_UPDATED);
}
updatePresenter(presenter) {
this.socket.emit(IcpEvents.UPDATE_PRESENTER, {
...this.session,
presenterId: presenter.id,
presenterName: presenter.username
});
}
presenterUpdated() {
return this.socket.listen(IcpEvents.PRESENTER_UPDATED);
}
updateScreen(screen) {
const update = {
body: screen,
caseId: this.session.caseId,
documentId: this.session.documentId
};
this.socket.emit(IcpEvents.UPDATE_SCREEN, update);
}
screenUpdated() {
return this.socket.listen(IcpEvents.SCREEN_UPDATED);
}
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IcpUpdateService, deps: [{ token: i1.SocketService }], target: i0.ɵɵFactoryTarget.Injectable }); }
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IcpUpdateService, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IcpUpdateService, decorators: [{
type: Injectable,
args: [{ providedIn: 'root' }]
}], ctorParameters: () => [{ type: i1.SocketService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNwLXVwZGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvaWNwL2ljcC11cGRhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7OztBQUd6QyxNQUFNLE9BQU8sZ0JBQWdCO0lBSTNCLFlBQW9CLE1BQXFCO1FBQXJCLFdBQU0sR0FBTixNQUFNLENBQWU7SUFBSSxDQUFDO0lBRTlDLFdBQVcsQ0FBQyxRQUFnQixFQUFFLE9BQW1CLEVBQUUsS0FBYTtRQUM5RCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDL0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDLGFBQWEsaUJBQWlCLEtBQUssRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQy9FLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQzlDLElBQUksV0FBVyxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDbEQsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsYUFBYTtRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsa0JBQWtCLEVBQUU7WUFDN0MsYUFBYSxFQUFFLGFBQWE7WUFDNUIsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUMzQixVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVO1NBQ3BDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQXlCO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRTtZQUMzQyxHQUFHLElBQUksQ0FBQyxPQUFPO1lBQ2YsV0FBVyxFQUFFLFNBQVMsQ0FBQyxFQUFFO1lBQ3pCLGFBQWEsRUFBRSxTQUFTLENBQUMsUUFBUTtTQUNsQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQXVCO1FBQ2xDLE1BQU0sTUFBTSxHQUFHO1lBQ2IsSUFBSSxFQUFFLE1BQU07WUFDWixNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO1lBQzNCLFVBQVUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVU7U0FDcEMsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN0RCxDQUFDO2tJQW5FVSxnQkFBZ0I7c0lBQWhCLGdCQUFnQixjQURILE1BQU07OzRGQUNuQixnQkFBZ0I7a0JBRDVCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU29ja2V0U2VydmljZSB9IGZyb20gJy4vc29ja2V0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSWNwUGFydGljaXBhbnQsIEljcFNjcmVlblVwZGF0ZSwgSWNwU2Vzc2lvbiB9IGZyb20gJy4vaWNwLmludGVyZmFjZXMnO1xuaW1wb3J0IHsgSWNwRXZlbnRzIH0gZnJvbSAnLi9pY3AuZXZlbnRzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBJY3BVcGRhdGVTZXJ2aWNlIHtcblxuICBzZXNzaW9uOiBJY3BTZXNzaW9uO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc29ja2V0OiBTb2NrZXRTZXJ2aWNlKSB7IH1cblxuICBqb2luU2Vzc2lvbih1c2VybmFtZTogc3RyaW5nLCBzZXNzaW9uOiBJY3BTZXNzaW9uLCB0b2tlbjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXNzaW9uID0gc2Vzc2lvbjtcbiAgICBjb25zb2xlLmxvZygnSm9pbmluZyBTZXNzaW9uJyk7XG4gICAgY29uc29sZS5sb2codGhpcy5zZXNzaW9uKVxuICAgIGNvbnNvbGUubG9nKCdKb2luaW5nIHNlc3Npb24nKTtcbiAgICB0aGlzLnNvY2tldC5jb25uZWN0KGAke3Nlc3Npb24uY29ubmVjdGlvblVybH0/YWNjZXNzX3Rva2VuPSR7dG9rZW59YCwgc2Vzc2lvbik7XG4gICAgdGhpcy5zb2NrZXQuY29ubmVjdGVkKCkuc3Vic2NyaWJlKGlzQ29ubmVjdGVkID0+IHtcbiAgICAgIGlmIChpc0Nvbm5lY3RlZCkge1xuICAgICAgICB0aGlzLnNvY2tldC5qb2luKHsgLi4udGhpcy5zZXNzaW9uLCB1c2VybmFtZSB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5zb2NrZXQubGlzdGVuKEljcEV2ZW50cy5TRVNTSU9OX0pPSU5FRCk7XG4gIH1cblxuICBsZWF2ZVNlc3Npb24oKSB7XG4gICAgdGhpcy5zb2NrZXQubGVhdmUodGhpcy5zZXNzaW9uKTtcbiAgfVxuXG4gIG5ld1BhcnRpY2lwYW50Sm9pbmVkKCkge1xuICAgIHJldHVybiB0aGlzLnNvY2tldC5saXN0ZW4oSWNwRXZlbnRzLk5FV19QQVJUSUNJUEFOVF9KT0lORUQpO1xuICB9XG5cbiAgY2xpZW50RGlzY29ubmVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLnNvY2tldC5saXN0ZW4oSWNwRXZlbnRzLkNMSUVOVF9ESVNDT05ORUNURUQpO1xuICB9XG5cbiAgcmVtb3ZlUGFydGljaXBhbnQocGFydGljaXBhbnRJZCkge1xuICAgIHRoaXMuc29ja2V0LmVtaXQoSWNwRXZlbnRzLlJFTU9WRV9QQVJUSUNJUEFOVCwge1xuICAgICAgcGFydGljaXBhbnRJZDogcGFydGljaXBhbnRJZCxcbiAgICAgIGNhc2VJZDogdGhpcy5zZXNzaW9uLmNhc2VJZCxcbiAgICAgIGRvY3VtZW50SWQ6IHRoaXMuc2Vzc2lvbi5kb2N1bWVudElkXG4gICAgfSk7XG4gIH1cblxuICBwYXJ0aWNpcGFudExpc3RVcGRhdGVkKCkge1xuICAgIHJldHVybiB0aGlzLnNvY2tldC5saXN0ZW4oSWNwRXZlbnRzLlBBUlRJQ0lQQU5UU19VUERBVEVEKTtcbiAgfVxuXG4gIHVwZGF0ZVByZXNlbnRlcihwcmVzZW50ZXI6IEljcFBhcnRpY2lwYW50KSB7XG4gICAgdGhpcy5zb2NrZXQuZW1pdChJY3BFdmVudHMuVVBEQVRFX1BSRVNFTlRFUiwge1xuICAgICAgLi4udGhpcy5zZXNzaW9uLFxuICAgICAgcHJlc2VudGVySWQ6IHByZXNlbnRlci5pZCxcbiAgICAgIHByZXNlbnRlck5hbWU6IHByZXNlbnRlci51c2VybmFtZVxuICAgIH0pO1xuICB9XG5cbiAgcHJlc2VudGVyVXBkYXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5zb2NrZXQubGlzdGVuKEljcEV2ZW50cy5QUkVTRU5URVJfVVBEQVRFRCk7XG4gIH1cblxuICB1cGRhdGVTY3JlZW4oc2NyZWVuOiBJY3BTY3JlZW5VcGRhdGUpIHtcbiAgICBjb25zdCB1cGRhdGUgPSB7XG4gICAgICBib2R5OiBzY3JlZW4sXG4gICAgICBjYXNlSWQ6IHRoaXMuc2Vzc2lvbi5jYXNlSWQsXG4gICAgICBkb2N1bWVudElkOiB0aGlzLnNlc3Npb24uZG9jdW1lbnRJZFxuICAgIH07XG4gICAgdGhpcy5zb2NrZXQuZW1pdChJY3BFdmVudHMuVVBEQVRFX1NDUkVFTiwgdXBkYXRlKTtcbiAgfVxuXG4gIHNjcmVlblVwZGF0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc29ja2V0Lmxpc3RlbihJY3BFdmVudHMuU0NSRUVOX1VQREFURUQpO1xuICB9XG59XG4iXX0=