mirror of https://github.com/OpenVidu/openvidu.git
Error's codes reach client side. Test loop video works on secure OpenVidu
parent
4812db2fad
commit
0dc031c0c8
|
@ -75,7 +75,7 @@ export class SessionInternal {
|
||||||
this.openVidu.sendRequest('joinRoom', joinParams, (error, response) => {
|
this.openVidu.sendRequest('joinRoom', joinParams, (error, response) => {
|
||||||
|
|
||||||
if (error) {
|
if (error) {
|
||||||
callback('UNABLE TO JOIN ROOM');
|
callback(error);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
this.connected = true;
|
this.connected = true;
|
||||||
|
|
|
@ -17,7 +17,9 @@
|
||||||
|
|
||||||
package io.openvidu.client;
|
package io.openvidu.client;
|
||||||
|
|
||||||
public class OpenViduException extends RuntimeException {
|
import org.kurento.jsonrpc.JsonRpcErrorException;
|
||||||
|
|
||||||
|
public class OpenViduException extends JsonRpcErrorException {
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
public static enum Code {
|
public static enum Code {
|
||||||
|
@ -57,21 +59,17 @@ public class OpenViduException extends RuntimeException {
|
||||||
private Code code = Code.GENERIC_ERROR_CODE;
|
private Code code = Code.GENERIC_ERROR_CODE;
|
||||||
|
|
||||||
public OpenViduException(Code code, String message) {
|
public OpenViduException(Code code, String message) {
|
||||||
super(message);
|
super(code.getValue(), message);
|
||||||
this.code = code;
|
this.code = code;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Code getCode() {
|
|
||||||
return code;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getCodeValue() {
|
public int getCodeValue() {
|
||||||
return code.getValue();
|
return code.getValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "Code: " + getCodeValue() + " " + super.toString();
|
return "CODE: " + getCodeValue() + ". EXCEPTION: " + super.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,8 @@ import {
|
||||||
MdCardModule,
|
MdCardModule,
|
||||||
MdInputModule,
|
MdInputModule,
|
||||||
MdProgressSpinnerModule,
|
MdProgressSpinnerModule,
|
||||||
MdTooltipModule
|
MdTooltipModule,
|
||||||
|
MdDialogModule
|
||||||
} from '@angular/material';
|
} from '@angular/material';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
|
@ -17,7 +18,8 @@ import {
|
||||||
MdCardModule,
|
MdCardModule,
|
||||||
MdInputModule,
|
MdInputModule,
|
||||||
MdProgressSpinnerModule,
|
MdProgressSpinnerModule,
|
||||||
MdTooltipModule
|
MdTooltipModule,
|
||||||
|
MdDialogModule
|
||||||
],
|
],
|
||||||
exports: [
|
exports: [
|
||||||
BrowserAnimationsModule,
|
BrowserAnimationsModule,
|
||||||
|
@ -26,7 +28,8 @@ import {
|
||||||
MdCardModule,
|
MdCardModule,
|
||||||
MdInputModule,
|
MdInputModule,
|
||||||
MdProgressSpinnerModule,
|
MdProgressSpinnerModule,
|
||||||
MdTooltipModule
|
MdTooltipModule,
|
||||||
|
MdDialogModule
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class AppMaterialModule { }
|
export class AppMaterialModule { }
|
||||||
|
|
|
@ -9,17 +9,20 @@ import { routing } from './app.routing';
|
||||||
import { AppMaterialModule } from 'app/app.material.module';
|
import { AppMaterialModule } from 'app/app.material.module';
|
||||||
|
|
||||||
import { InfoService } from './services/info.service';
|
import { InfoService } from './services/info.service';
|
||||||
|
import { CredentialsService } from './services/credentials.service';
|
||||||
|
|
||||||
import { AppComponent } from './app.component';
|
import { AppComponent } from './app.component';
|
||||||
import { DashboardComponent } from './components/dashboard/dashboard.component';
|
import { DashboardComponent } from './components/dashboard/dashboard.component';
|
||||||
import { SessionDetailsComponent } from './components/session-details/session-details.component';
|
import { SessionDetailsComponent } from './components/session-details/session-details.component';
|
||||||
|
import { CredentialsDialogComponent } from './components/dashboard/credentials-dialog.component';
|
||||||
|
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: [
|
declarations: [
|
||||||
AppComponent,
|
AppComponent,
|
||||||
DashboardComponent,
|
DashboardComponent,
|
||||||
SessionDetailsComponent
|
SessionDetailsComponent,
|
||||||
|
CredentialsDialogComponent,
|
||||||
],
|
],
|
||||||
imports: [
|
imports: [
|
||||||
BrowserModule,
|
BrowserModule,
|
||||||
|
@ -29,7 +32,10 @@ import { SessionDetailsComponent } from './components/session-details/session-de
|
||||||
AppMaterialModule,
|
AppMaterialModule,
|
||||||
FlexLayoutModule
|
FlexLayoutModule
|
||||||
],
|
],
|
||||||
providers: [InfoService],
|
entryComponents: [
|
||||||
|
CredentialsDialogComponent,
|
||||||
|
],
|
||||||
|
providers: [InfoService, CredentialsService],
|
||||||
bootstrap: [AppComponent]
|
bootstrap: [AppComponent]
|
||||||
})
|
})
|
||||||
export class AppModule { }
|
export class AppModule { }
|
||||||
|
|
|
@ -0,0 +1,60 @@
|
||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { MdDialogRef } from '@angular/material';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-credentials-dialog',
|
||||||
|
template: `
|
||||||
|
<div>
|
||||||
|
<h1 md-dialog-title>
|
||||||
|
Insert your secret
|
||||||
|
</h1>
|
||||||
|
<form #dialogForm (ngSubmit)="testVideo()">
|
||||||
|
<md-dialog-content>
|
||||||
|
<md-input-container>
|
||||||
|
<input mdInput name="secret" type="password" [(ngModel)]="secret">
|
||||||
|
</md-input-container>
|
||||||
|
</md-dialog-content>
|
||||||
|
<md-dialog-actions>
|
||||||
|
<button md-button md-dialog-close>CANCEL</button>
|
||||||
|
<button md-button id="join-btn" type="submit">TEST</button>
|
||||||
|
</md-dialog-actions>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
`,
|
||||||
|
styles: [`
|
||||||
|
#quality-div {
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
#join-div {
|
||||||
|
margin-top: 25px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
#quality-tag {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
h5 {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
#joinWithVideo {
|
||||||
|
margin-right: 50px;
|
||||||
|
}
|
||||||
|
md-dialog-actions {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
#join-btn {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
`],
|
||||||
|
})
|
||||||
|
export class CredentialsDialogComponent {
|
||||||
|
|
||||||
|
public myReference: MdDialogRef<CredentialsDialogComponent>;
|
||||||
|
secret: string;
|
||||||
|
|
||||||
|
constructor() { }
|
||||||
|
|
||||||
|
testVideo() {
|
||||||
|
this.myReference.close(this.secret);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,9 +1,12 @@
|
||||||
import { Component, OnInit, AfterViewChecked, ViewChild, ElementRef, HostListener, OnDestroy } from '@angular/core';
|
import { Component, OnInit, AfterViewChecked, ViewChild, ElementRef, HostListener, OnDestroy } from '@angular/core';
|
||||||
|
import { MdDialog, MdDialogRef } from '@angular/material';
|
||||||
import { Subscription } from 'rxjs/Subscription';
|
import { Subscription } from 'rxjs/Subscription';
|
||||||
|
|
||||||
import { InfoService } from '../../services/info.service';
|
import { InfoService } from '../../services/info.service';
|
||||||
|
import { CredentialsService } from '../../services/credentials.service';
|
||||||
|
|
||||||
import { OpenVidu, Session } from 'openvidu-browser';
|
import { OpenVidu, Session } from 'openvidu-browser';
|
||||||
|
import { CredentialsDialogComponent } from './credentials-dialog.component';
|
||||||
|
|
||||||
declare const $;
|
declare const $;
|
||||||
|
|
||||||
|
@ -26,7 +29,7 @@ export class DashboardComponent implements OnInit, OnDestroy, AfterViewChecked {
|
||||||
tickClass = 'trigger';
|
tickClass = 'trigger';
|
||||||
showSpinner = false;
|
showSpinner = false;
|
||||||
|
|
||||||
constructor(private infoService: InfoService) {
|
constructor(private infoService: InfoService, private credentialsService: CredentialsService, public dialog: MdDialog) {
|
||||||
|
|
||||||
// Subscription to info updated event raised by InfoService
|
// Subscription to info updated event raised by InfoService
|
||||||
this.infoSubscription = this.infoService.newInfo$.subscribe(
|
this.infoSubscription = this.infoService.newInfo$.subscribe(
|
||||||
|
@ -68,7 +71,11 @@ export class DashboardComponent implements OnInit, OnDestroy, AfterViewChecked {
|
||||||
|
|
||||||
testVideo() {
|
testVideo() {
|
||||||
let OV = new OpenVidu();
|
let OV = new OpenVidu();
|
||||||
this.session = OV.initSession('wss://' + location.hostname + ':8443/testSession');
|
this.connectToSession(OV, 'wss://' + location.hostname + ':8443/testSession', 'token');
|
||||||
|
}
|
||||||
|
|
||||||
|
connectToSession(OV: OpenVidu, mySessionId: string, myToken: string) {
|
||||||
|
this.session = OV.initSession(mySessionId);
|
||||||
|
|
||||||
this.session.on('streamCreated', (event) => {
|
this.session.on('streamCreated', (event) => {
|
||||||
this.session.subscribe(event.stream, 'mirrored-video');
|
this.session.subscribe(event.stream, 'mirrored-video');
|
||||||
|
@ -77,7 +84,7 @@ export class DashboardComponent implements OnInit, OnDestroy, AfterViewChecked {
|
||||||
this.testStatus = 'CONNECTING';
|
this.testStatus = 'CONNECTING';
|
||||||
this.testButton = 'Testing...';
|
this.testButton = 'Testing...';
|
||||||
|
|
||||||
this.session.connect('token', (error) => {
|
this.session.connect(myToken, (error) => {
|
||||||
if (!error) {
|
if (!error) {
|
||||||
|
|
||||||
this.testStatus = 'CONNECTED';
|
this.testStatus = 'CONNECTED';
|
||||||
|
@ -102,6 +109,32 @@ export class DashboardComponent implements OnInit, OnDestroy, AfterViewChecked {
|
||||||
|
|
||||||
publisherRemote.stream.subscribeToMyRemote();
|
publisherRemote.stream.subscribeToMyRemote();
|
||||||
this.session.publish(publisherRemote);
|
this.session.publish(publisherRemote);
|
||||||
|
} else {
|
||||||
|
if (error.code === 401) { // User unauthorized error. OpenVidu security is active
|
||||||
|
this.endTestVideo();
|
||||||
|
let dialogRef: MdDialogRef<CredentialsDialogComponent>;
|
||||||
|
dialogRef = this.dialog.open(CredentialsDialogComponent);
|
||||||
|
dialogRef.componentInstance.myReference = dialogRef;
|
||||||
|
|
||||||
|
dialogRef.afterClosed().subscribe(secret => {
|
||||||
|
if (secret) {
|
||||||
|
this.credentialsService.getSessionId(secret).subscribe(
|
||||||
|
sessionId => {
|
||||||
|
this.credentialsService.getToken(sessionId.id, secret).subscribe(
|
||||||
|
token => {
|
||||||
|
this.connectToSession(OV, sessionId.id, token.token);
|
||||||
|
}
|
||||||
|
)
|
||||||
|
},
|
||||||
|
err => {
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
console.error(error);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
import { Injectable } from '@angular/core';
|
||||||
|
import { Http, Headers, RequestOptions } from '@angular/http';
|
||||||
|
import { Observable } from 'rxjs/Observable';
|
||||||
|
|
||||||
|
@Injectable()
|
||||||
|
export class CredentialsService {
|
||||||
|
|
||||||
|
url: string;
|
||||||
|
|
||||||
|
constructor(private http: Http) {
|
||||||
|
this.url = 'https://' + location.hostname + ':8443'
|
||||||
|
}
|
||||||
|
|
||||||
|
getSessionId(secret: string) {
|
||||||
|
let headers = new Headers({ 'Authorization': 'Basic ' + btoa('OPENVIDUAPP:' + secret) });
|
||||||
|
let options = new RequestOptions({ headers });
|
||||||
|
return this.http.post('api/sessions', options)
|
||||||
|
.map(response => response.json())
|
||||||
|
.catch(error => this.handleError(error));
|
||||||
|
}
|
||||||
|
|
||||||
|
getToken(sessionId: string, secret: string) {
|
||||||
|
let body = JSON.stringify({ "session": sessionId, "role": "PUBLISHER", "data": "" });
|
||||||
|
let headers = new Headers({ 'Authorization': 'Basic ' + btoa('OPENVIDUAPP:' + secret), 'Content-Type': 'application/json' });
|
||||||
|
let options = new RequestOptions({ headers });
|
||||||
|
return this.http.post('api/tokens', body, options)
|
||||||
|
.map(response => response.json())
|
||||||
|
.catch(error => this.handleError(error));
|
||||||
|
}
|
||||||
|
|
||||||
|
private handleError(error: any) {
|
||||||
|
console.error(error);
|
||||||
|
return Observable.throw('Server error (' + error.status + '): ' + error.text())
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -41,104 +41,102 @@ import io.openvidu.server.rpc.ParticipantSession;
|
||||||
*/
|
*/
|
||||||
public class RoomJsonRpcHandler extends DefaultJsonRpcHandler<JsonObject> {
|
public class RoomJsonRpcHandler extends DefaultJsonRpcHandler<JsonObject> {
|
||||||
|
|
||||||
private static final Logger log = LoggerFactory.getLogger(RoomJsonRpcHandler.class);
|
private static final Logger log = LoggerFactory.getLogger(RoomJsonRpcHandler.class);
|
||||||
|
|
||||||
private static final String HANDLER_THREAD_NAME = "handler";
|
private static final String HANDLER_THREAD_NAME = "handler";
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private JsonRpcUserControl userControl;
|
private JsonRpcUserControl userControl;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private JsonRpcNotificationService notificationService;
|
private JsonRpcNotificationService notificationService;
|
||||||
|
|
||||||
public RoomJsonRpcHandler() {}
|
public RoomJsonRpcHandler() {
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<String> allowedOrigins() {
|
public List<String> allowedOrigins() {
|
||||||
return Arrays.asList("*");
|
return Arrays.asList("*");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public final void handleRequest(Transaction transaction, Request<JsonObject> request)
|
public final void handleRequest(Transaction transaction, Request<JsonObject> request) throws Exception {
|
||||||
throws Exception {
|
|
||||||
|
|
||||||
String sessionId = null;
|
String sessionId = null;
|
||||||
try {
|
try {
|
||||||
sessionId = transaction.getSession().getSessionId();
|
sessionId = transaction.getSession().getSessionId();
|
||||||
} catch (Throwable e) {
|
} catch (Throwable e) {
|
||||||
log.warn("Error getting session id from transaction {}", transaction, e);
|
log.warn("Error getting session id from transaction {}", transaction, e);
|
||||||
throw e;
|
throw e;
|
||||||
}
|
}
|
||||||
|
|
||||||
updateThreadName(HANDLER_THREAD_NAME + "_" + sessionId);
|
updateThreadName(HANDLER_THREAD_NAME + "_" + sessionId);
|
||||||
|
|
||||||
log.debug("Session #{} - request: {}", sessionId, request);
|
log.debug("Session #{} - request: {}", sessionId, request);
|
||||||
|
|
||||||
notificationService.addTransaction(transaction, request);
|
notificationService.addTransaction(transaction, request);
|
||||||
|
|
||||||
ParticipantRequest participantRequest = new ParticipantRequest(sessionId,
|
ParticipantRequest participantRequest = new ParticipantRequest(sessionId, Integer.toString(request.getId()));
|
||||||
Integer.toString(request.getId()));
|
|
||||||
|
|
||||||
transaction.startAsync();
|
transaction.startAsync();
|
||||||
|
|
||||||
switch (request.getMethod()) {
|
switch (request.getMethod()) {
|
||||||
case ProtocolElements.JOINROOM_METHOD :
|
case ProtocolElements.JOINROOM_METHOD:
|
||||||
userControl.joinRoom(transaction, request, participantRequest);
|
userControl.joinRoom(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
case ProtocolElements.PUBLISHVIDEO_METHOD :
|
case ProtocolElements.PUBLISHVIDEO_METHOD:
|
||||||
userControl.publishVideo(transaction, request, participantRequest);
|
userControl.publishVideo(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
case ProtocolElements.UNPUBLISHVIDEO_METHOD :
|
case ProtocolElements.UNPUBLISHVIDEO_METHOD:
|
||||||
userControl.unpublishVideo(transaction, request, participantRequest);
|
userControl.unpublishVideo(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
case ProtocolElements.RECEIVEVIDEO_METHOD :
|
case ProtocolElements.RECEIVEVIDEO_METHOD:
|
||||||
userControl.receiveVideoFrom(transaction, request, participantRequest);
|
userControl.receiveVideoFrom(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
case ProtocolElements.UNSUBSCRIBEFROMVIDEO_METHOD :
|
case ProtocolElements.UNSUBSCRIBEFROMVIDEO_METHOD:
|
||||||
userControl.unsubscribeFromVideo(transaction, request, participantRequest);
|
userControl.unsubscribeFromVideo(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
case ProtocolElements.ONICECANDIDATE_METHOD :
|
case ProtocolElements.ONICECANDIDATE_METHOD:
|
||||||
userControl.onIceCandidate(transaction, request, participantRequest);
|
userControl.onIceCandidate(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
case ProtocolElements.LEAVEROOM_METHOD :
|
case ProtocolElements.LEAVEROOM_METHOD:
|
||||||
userControl.leaveRoom(transaction, request, participantRequest);
|
userControl.leaveRoom(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
case ProtocolElements.SENDMESSAGE_ROOM_METHOD :
|
case ProtocolElements.SENDMESSAGE_ROOM_METHOD:
|
||||||
userControl.sendMessage(transaction, request, participantRequest);
|
userControl.sendMessage(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
case ProtocolElements.CUSTOMREQUEST_METHOD :
|
case ProtocolElements.CUSTOMREQUEST_METHOD:
|
||||||
userControl.customRequest(transaction, request, participantRequest);
|
userControl.customRequest(transaction, request, participantRequest);
|
||||||
break;
|
break;
|
||||||
default :
|
default:
|
||||||
log.error("Unrecognized request {}", request);
|
log.error("Unrecognized request {}", request);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
updateThreadName(HANDLER_THREAD_NAME);
|
updateThreadName(HANDLER_THREAD_NAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public final void afterConnectionClosed(Session session, String status) throws Exception {
|
public final void afterConnectionClosed(Session session, String status) throws Exception {
|
||||||
ParticipantSession ps = null;
|
ParticipantSession ps = null;
|
||||||
if (session.getAttributes().containsKey(ParticipantSession.SESSION_KEY)) {
|
if (session.getAttributes().containsKey(ParticipantSession.SESSION_KEY)) {
|
||||||
ps = (ParticipantSession) session.getAttributes().get(ParticipantSession.SESSION_KEY);
|
ps = (ParticipantSession) session.getAttributes().get(ParticipantSession.SESSION_KEY);
|
||||||
}
|
}
|
||||||
String sid = session.getSessionId();
|
String sid = session.getSessionId();
|
||||||
log.debug("CONN_CLOSED: sessionId={}, participant in session: {}", sid, ps);
|
log.debug("CONN_CLOSED: sessionId={}, participant in session: {}", sid, ps);
|
||||||
ParticipantRequest preq = new ParticipantRequest(sid, null);
|
ParticipantRequest preq = new ParticipantRequest(sid, null);
|
||||||
updateThreadName(sid + "|wsclosed");
|
updateThreadName(sid + "|wsclosed");
|
||||||
userControl.leaveRoom(null, null, preq);
|
userControl.leaveRoom(null, null, preq);
|
||||||
updateThreadName(HANDLER_THREAD_NAME);
|
updateThreadName(HANDLER_THREAD_NAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handleTransportError(Session session, Throwable exception) throws Exception {
|
public void handleTransportError(Session session, Throwable exception) throws Exception {
|
||||||
log.debug("Transport error for session id {}", session != null
|
log.debug("Transport error for session id {}", session != null ? session.getSessionId() : "NULL_SESSION",
|
||||||
? session.getSessionId()
|
exception);
|
||||||
: "NULL_SESSION", exception);
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private void updateThreadName(String name) {
|
private void updateThreadName(String name) {
|
||||||
Thread.currentThread().setName("user:" + name);
|
Thread.currentThread().setName("user:" + name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,7 +71,7 @@ public class RoomController {
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping(value = "/tokens", method = RequestMethod.POST)
|
@RequestMapping(value = "/tokens", method = RequestMethod.POST)
|
||||||
public ResponseEntity<JSONObject> newToken(@RequestBody Map sessionIdRoleMetadata) { // {0: sessionID, 1: role, 2: metadata}
|
public ResponseEntity<JSONObject> newToken(@RequestBody Map sessionIdRoleMetadata) {
|
||||||
String errorMessage = "";
|
String errorMessage = "";
|
||||||
try {
|
try {
|
||||||
String sessionId = (String) sessionIdRoleMetadata.get("session");
|
String sessionId = (String) sessionIdRoleMetadata.get("session");
|
||||||
|
|
|
@ -55,11 +55,12 @@ public class JsonRpcUserControl {
|
||||||
|
|
||||||
String roomId = getStringParam(request, ProtocolElements.JOINROOM_ROOM_PARAM);
|
String roomId = getStringParam(request, ProtocolElements.JOINROOM_ROOM_PARAM);
|
||||||
String token = getStringParam(request, ProtocolElements.JOINROOM_TOKEN_PARAM);
|
String token = getStringParam(request, ProtocolElements.JOINROOM_TOKEN_PARAM);
|
||||||
String userName = roomManager.newRandomUserName(token, roomId);
|
|
||||||
String clientMetadata = getStringParam(request, ProtocolElements.JOINROOM_METADATA_PARAM);
|
|
||||||
|
|
||||||
if(roomManager.getRoomManager().isParticipantInRoom(token, roomId)){
|
if(roomManager.getRoomManager().isParticipantInRoom(token, roomId)){
|
||||||
|
|
||||||
|
String userName = roomManager.newRandomUserName(token, roomId);
|
||||||
|
String clientMetadata = getStringParam(request, ProtocolElements.JOINROOM_METADATA_PARAM);
|
||||||
|
|
||||||
if(roomManager.getRoomManager().metadataFormatCorrect(clientMetadata)){
|
if(roomManager.getRoomManager().metadataFormatCorrect(clientMetadata)){
|
||||||
|
|
||||||
this.roomManager.getRoomManager().setTokenClientMetadata(userName, roomId, clientMetadata);
|
this.roomManager.getRoomManager().setTokenClientMetadata(userName, roomId, clientMetadata);
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,14 +1,14 @@
|
||||||
webpackJsonp([1,4],{
|
webpackJsonp([1,4],{
|
||||||
|
|
||||||
/***/ 104:
|
/***/ 105:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
var EventEmitter = __webpack_require__(52);
|
var EventEmitter = __webpack_require__(52);
|
||||||
var kurentoUtils = __webpack_require__(275);
|
var kurentoUtils = __webpack_require__(277);
|
||||||
var adapter = __webpack_require__(173);
|
var adapter = __webpack_require__(176);
|
||||||
if (window) {
|
if (window) {
|
||||||
window["adapter"] = adapter;
|
window["adapter"] = adapter;
|
||||||
}
|
}
|
||||||
|
@ -542,14 +542,54 @@ exports.Stream = Stream;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 119:
|
/***/ 120:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_info_service__ = __webpack_require__(69);
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return CredentialsDialogComponent; });
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_openvidu_browser__ = __webpack_require__(369);
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_openvidu_browser___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_openvidu_browser__);
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||||
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||||
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||||
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||||
|
};
|
||||||
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||||
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||||
|
};
|
||||||
|
|
||||||
|
var CredentialsDialogComponent = (function () {
|
||||||
|
function CredentialsDialogComponent() {
|
||||||
|
}
|
||||||
|
CredentialsDialogComponent.prototype.testVideo = function () {
|
||||||
|
this.myReference.close(this.secret);
|
||||||
|
};
|
||||||
|
return CredentialsDialogComponent;
|
||||||
|
}());
|
||||||
|
CredentialsDialogComponent = __decorate([
|
||||||
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_4" /* Component */])({
|
||||||
|
selector: 'app-credentials-dialog',
|
||||||
|
template: "\n <div>\n <h1 md-dialog-title>\n Insert your secret\n </h1>\n <form #dialogForm (ngSubmit)=\"testVideo()\">\n <md-dialog-content>\n <md-input-container>\n <input mdInput name=\"secret\" type=\"password\" [(ngModel)]=\"secret\">\n </md-input-container>\n </md-dialog-content>\n <md-dialog-actions>\n <button md-button md-dialog-close>CANCEL</button>\n <button md-button id=\"join-btn\" type=\"submit\">TEST</button>\n </md-dialog-actions>\n </form>\n </div>\n ",
|
||||||
|
styles: ["\n #quality-div {\n margin-top: 20px;\n }\n #join-div {\n margin-top: 25px;\n margin-bottom: 20px;\n }\n #quality-tag {\n display: block;\n }\n h5 {\n margin-bottom: 10px;\n text-align: left;\n }\n #joinWithVideo {\n margin-right: 50px;\n }\n md-dialog-actions {\n display: block;\n }\n #join-btn {\n float: right;\n }\n "],
|
||||||
|
}),
|
||||||
|
__metadata("design:paramtypes", [])
|
||||||
|
], CredentialsDialogComponent);
|
||||||
|
|
||||||
|
//# sourceMappingURL=credentials-dialog.component.js.map
|
||||||
|
|
||||||
|
/***/ }),
|
||||||
|
|
||||||
|
/***/ 121:
|
||||||
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
|
"use strict";
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__angular_material__ = __webpack_require__(119);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__services_info_service__ = __webpack_require__(70);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__services_credentials_service__ = __webpack_require__(123);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_openvidu_browser__ = __webpack_require__(371);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_openvidu_browser___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_openvidu_browser__);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__credentials_dialog_component__ = __webpack_require__(120);
|
||||||
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return DashboardComponent; });
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return DashboardComponent; });
|
||||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||||
|
@ -563,10 +603,15 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var DashboardComponent = (function () {
|
var DashboardComponent = (function () {
|
||||||
function DashboardComponent(infoService) {
|
function DashboardComponent(infoService, credentialsService, dialog) {
|
||||||
var _this = this;
|
var _this = this;
|
||||||
this.infoService = infoService;
|
this.infoService = infoService;
|
||||||
|
this.credentialsService = credentialsService;
|
||||||
|
this.dialog = dialog;
|
||||||
this.info = [];
|
this.info = [];
|
||||||
this.testStatus = 'DISCONNECTED';
|
this.testStatus = 'DISCONNECTED';
|
||||||
this.testButton = 'Test';
|
this.testButton = 'Test';
|
||||||
|
@ -603,15 +648,18 @@ var DashboardComponent = (function () {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
DashboardComponent.prototype.testVideo = function () {
|
DashboardComponent.prototype.testVideo = function () {
|
||||||
|
var OV = new __WEBPACK_IMPORTED_MODULE_4_openvidu_browser__["OpenVidu"]();
|
||||||
|
this.connectToSession(OV, 'wss://' + location.hostname + ':8443/testSession', 'token');
|
||||||
|
};
|
||||||
|
DashboardComponent.prototype.connectToSession = function (OV, mySessionId, myToken) {
|
||||||
var _this = this;
|
var _this = this;
|
||||||
var OV = new __WEBPACK_IMPORTED_MODULE_2_openvidu_browser__["OpenVidu"]();
|
this.session = OV.initSession(mySessionId);
|
||||||
this.session = OV.initSession('wss://' + location.hostname + ':8443/testSession');
|
|
||||||
this.session.on('streamCreated', function (event) {
|
this.session.on('streamCreated', function (event) {
|
||||||
_this.session.subscribe(event.stream, 'mirrored-video');
|
_this.session.subscribe(event.stream, 'mirrored-video');
|
||||||
});
|
});
|
||||||
this.testStatus = 'CONNECTING';
|
this.testStatus = 'CONNECTING';
|
||||||
this.testButton = 'Testing...';
|
this.testButton = 'Testing...';
|
||||||
this.session.connect('token', function (error) {
|
this.session.connect(myToken, function (error) {
|
||||||
if (!error) {
|
if (!error) {
|
||||||
_this.testStatus = 'CONNECTED';
|
_this.testStatus = 'CONNECTED';
|
||||||
var publisherRemote = OV.initPublisher('mirrored-video', {
|
var publisherRemote = OV.initPublisher('mirrored-video', {
|
||||||
|
@ -631,6 +679,28 @@ var DashboardComponent = (function () {
|
||||||
publisherRemote.stream.subscribeToMyRemote();
|
publisherRemote.stream.subscribeToMyRemote();
|
||||||
_this.session.publish(publisherRemote);
|
_this.session.publish(publisherRemote);
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
if (error.code === 401) {
|
||||||
|
_this.endTestVideo();
|
||||||
|
var dialogRef = void 0;
|
||||||
|
dialogRef = _this.dialog.open(__WEBPACK_IMPORTED_MODULE_5__credentials_dialog_component__["a" /* CredentialsDialogComponent */]);
|
||||||
|
dialogRef.componentInstance.myReference = dialogRef;
|
||||||
|
dialogRef.afterClosed().subscribe(function (secret) {
|
||||||
|
if (secret) {
|
||||||
|
_this.credentialsService.getSessionId(secret).subscribe(function (sessionId) {
|
||||||
|
_this.credentialsService.getToken(sessionId.id, secret).subscribe(function (token) {
|
||||||
|
_this.connectToSession(OV, sessionId.id, token.token);
|
||||||
|
});
|
||||||
|
}, function (err) {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
console.error(error);
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
DashboardComponent.prototype.endTestVideo = function () {
|
DashboardComponent.prototype.endTestVideo = function () {
|
||||||
|
@ -652,7 +722,7 @@ var DashboardComponent = (function () {
|
||||||
}());
|
}());
|
||||||
__decorate([
|
__decorate([
|
||||||
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_7" /* ViewChild */])('scrollMe'),
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_7" /* ViewChild */])('scrollMe'),
|
||||||
__metadata("design:type", typeof (_a = typeof __WEBPACK_IMPORTED_MODULE_0__angular_core__["l" /* ElementRef */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_0__angular_core__["l" /* ElementRef */]) === "function" && _a || Object)
|
__metadata("design:type", typeof (_a = typeof __WEBPACK_IMPORTED_MODULE_0__angular_core__["M" /* ElementRef */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_0__angular_core__["M" /* ElementRef */]) === "function" && _a || Object)
|
||||||
], DashboardComponent.prototype, "myScrollContainer", void 0);
|
], DashboardComponent.prototype, "myScrollContainer", void 0);
|
||||||
__decorate([
|
__decorate([
|
||||||
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_12" /* HostListener */])('window:beforeunload'),
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_12" /* HostListener */])('window:beforeunload'),
|
||||||
|
@ -663,18 +733,18 @@ __decorate([
|
||||||
DashboardComponent = __decorate([
|
DashboardComponent = __decorate([
|
||||||
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_4" /* Component */])({
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_4" /* Component */])({
|
||||||
selector: 'app-dashboard',
|
selector: 'app-dashboard',
|
||||||
template: __webpack_require__(281),
|
template: __webpack_require__(283),
|
||||||
styles: [__webpack_require__(260)],
|
styles: [__webpack_require__(262)],
|
||||||
}),
|
}),
|
||||||
__metadata("design:paramtypes", [typeof (_b = typeof __WEBPACK_IMPORTED_MODULE_1__services_info_service__["a" /* InfoService */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_1__services_info_service__["a" /* InfoService */]) === "function" && _b || Object])
|
__metadata("design:paramtypes", [typeof (_b = typeof __WEBPACK_IMPORTED_MODULE_2__services_info_service__["a" /* InfoService */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_2__services_info_service__["a" /* InfoService */]) === "function" && _b || Object, typeof (_c = typeof __WEBPACK_IMPORTED_MODULE_3__services_credentials_service__["a" /* CredentialsService */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_3__services_credentials_service__["a" /* CredentialsService */]) === "function" && _c || Object, typeof (_d = typeof __WEBPACK_IMPORTED_MODULE_1__angular_material__["h" /* MdDialog */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_1__angular_material__["h" /* MdDialog */]) === "function" && _d || Object])
|
||||||
], DashboardComponent);
|
], DashboardComponent);
|
||||||
|
|
||||||
var _a, _b;
|
var _a, _b, _c, _d;
|
||||||
//# sourceMappingURL=dashboard.component.js.map
|
//# sourceMappingURL=dashboard.component.js.map
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 120:
|
/***/ 122:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -700,8 +770,8 @@ var SessionDetailsComponent = (function () {
|
||||||
SessionDetailsComponent = __decorate([
|
SessionDetailsComponent = __decorate([
|
||||||
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_4" /* Component */])({
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_4" /* Component */])({
|
||||||
selector: 'app-session-details',
|
selector: 'app-session-details',
|
||||||
template: __webpack_require__(282),
|
template: __webpack_require__(284),
|
||||||
styles: [__webpack_require__(261)]
|
styles: [__webpack_require__(263)]
|
||||||
}),
|
}),
|
||||||
__metadata("design:paramtypes", [])
|
__metadata("design:paramtypes", [])
|
||||||
], SessionDetailsComponent);
|
], SessionDetailsComponent);
|
||||||
|
@ -710,7 +780,66 @@ SessionDetailsComponent = __decorate([
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 166:
|
/***/ 123:
|
||||||
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
|
"use strict";
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__angular_http__ = __webpack_require__(69);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_rxjs_Observable__ = __webpack_require__(1);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_rxjs_Observable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_rxjs_Observable__);
|
||||||
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return CredentialsService; });
|
||||||
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||||
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||||
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||||
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||||
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||||
|
};
|
||||||
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||||
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var CredentialsService = (function () {
|
||||||
|
function CredentialsService(http) {
|
||||||
|
this.http = http;
|
||||||
|
this.url = 'https://' + location.hostname + ':8443';
|
||||||
|
}
|
||||||
|
CredentialsService.prototype.getSessionId = function (secret) {
|
||||||
|
var _this = this;
|
||||||
|
var headers = new __WEBPACK_IMPORTED_MODULE_1__angular_http__["b" /* Headers */]({ 'Authorization': 'Basic ' + btoa('OPENVIDUAPP:' + secret) });
|
||||||
|
var options = new __WEBPACK_IMPORTED_MODULE_1__angular_http__["c" /* RequestOptions */]({ headers: headers });
|
||||||
|
return this.http.post('api/sessions', options)
|
||||||
|
.map(function (response) { return response.json(); })
|
||||||
|
.catch(function (error) { return _this.handleError(error); });
|
||||||
|
};
|
||||||
|
CredentialsService.prototype.getToken = function (sessionId, secret) {
|
||||||
|
var _this = this;
|
||||||
|
var body = JSON.stringify({ "session": sessionId, "role": "PUBLISHER", "data": "" });
|
||||||
|
var headers = new __WEBPACK_IMPORTED_MODULE_1__angular_http__["b" /* Headers */]({ 'Authorization': 'Basic ' + btoa('OPENVIDUAPP:' + secret), 'Content-Type': 'application/json' });
|
||||||
|
var options = new __WEBPACK_IMPORTED_MODULE_1__angular_http__["c" /* RequestOptions */]({ headers: headers });
|
||||||
|
return this.http.post('api/tokens', body, options)
|
||||||
|
.map(function (response) { return response.json(); })
|
||||||
|
.catch(function (error) { return _this.handleError(error); });
|
||||||
|
};
|
||||||
|
CredentialsService.prototype.handleError = function (error) {
|
||||||
|
console.error(error);
|
||||||
|
return __WEBPACK_IMPORTED_MODULE_2_rxjs_Observable__["Observable"].throw('Server error (' + error.status + '): ' + error.text());
|
||||||
|
};
|
||||||
|
return CredentialsService;
|
||||||
|
}());
|
||||||
|
CredentialsService = __decorate([
|
||||||
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["c" /* Injectable */])(),
|
||||||
|
__metadata("design:paramtypes", [typeof (_a = typeof __WEBPACK_IMPORTED_MODULE_1__angular_http__["d" /* Http */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_1__angular_http__["d" /* Http */]) === "function" && _a || Object])
|
||||||
|
], CredentialsService);
|
||||||
|
|
||||||
|
var _a;
|
||||||
|
//# sourceMappingURL=credentials.service.js.map
|
||||||
|
|
||||||
|
/***/ }),
|
||||||
|
|
||||||
|
/***/ 169:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -808,13 +937,13 @@ exports.Publisher = Publisher;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 167:
|
/***/ 170:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
var Subscriber_1 = __webpack_require__(168);
|
var Subscriber_1 = __webpack_require__(171);
|
||||||
var EventEmitter = __webpack_require__(52);
|
var EventEmitter = __webpack_require__(52);
|
||||||
var Session = (function () {
|
var Session = (function () {
|
||||||
function Session(session, openVidu) {
|
function Session(session, openVidu) {
|
||||||
|
@ -958,7 +1087,7 @@ exports.Session = Session;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 168:
|
/***/ 171:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -1002,13 +1131,13 @@ exports.Subscriber = Subscriber;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 169:
|
/***/ 172:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
var Stream_1 = __webpack_require__(104);
|
var Stream_1 = __webpack_require__(105);
|
||||||
var Connection = (function () {
|
var Connection = (function () {
|
||||||
function Connection(openVidu, local, room, options) {
|
function Connection(openVidu, local, room, options) {
|
||||||
this.openVidu = openVidu;
|
this.openVidu = openVidu;
|
||||||
|
@ -1076,7 +1205,7 @@ exports.Connection = Connection;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 174:
|
/***/ 177:
|
||||||
/***/ (function(module, exports) {
|
/***/ (function(module, exports) {
|
||||||
|
|
||||||
function webpackEmptyContext(req) {
|
function webpackEmptyContext(req) {
|
||||||
|
@ -1085,20 +1214,20 @@ function webpackEmptyContext(req) {
|
||||||
webpackEmptyContext.keys = function() { return []; };
|
webpackEmptyContext.keys = function() { return []; };
|
||||||
webpackEmptyContext.resolve = webpackEmptyContext;
|
webpackEmptyContext.resolve = webpackEmptyContext;
|
||||||
module.exports = webpackEmptyContext;
|
module.exports = webpackEmptyContext;
|
||||||
webpackEmptyContext.id = 174;
|
webpackEmptyContext.id = 177;
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 175:
|
/***/ 178:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__angular_platform_browser_dynamic__ = __webpack_require__(196);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__angular_platform_browser_dynamic__ = __webpack_require__(198);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__app_app_module__ = __webpack_require__(201);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__app_app_module__ = __webpack_require__(203);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__environments_environment__ = __webpack_require__(203);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__environments_environment__ = __webpack_require__(205);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1111,12 +1240,12 @@ __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__angular_platform_browser_dyna
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 199:
|
/***/ 201:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_app_services_info_service__ = __webpack_require__(69);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_app_services_info_service__ = __webpack_require__(70);
|
||||||
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return AppComponent; });
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return AppComponent; });
|
||||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||||
|
@ -1171,8 +1300,8 @@ __decorate([
|
||||||
AppComponent = __decorate([
|
AppComponent = __decorate([
|
||||||
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_4" /* Component */])({
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__["_4" /* Component */])({
|
||||||
selector: 'app-root',
|
selector: 'app-root',
|
||||||
template: __webpack_require__(280),
|
template: __webpack_require__(282),
|
||||||
styles: [__webpack_require__(259)]
|
styles: [__webpack_require__(261)]
|
||||||
}),
|
}),
|
||||||
__metadata("design:paramtypes", [typeof (_a = typeof __WEBPACK_IMPORTED_MODULE_1_app_services_info_service__["a" /* InfoService */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_1_app_services_info_service__["a" /* InfoService */]) === "function" && _a || Object])
|
__metadata("design:paramtypes", [typeof (_a = typeof __WEBPACK_IMPORTED_MODULE_1_app_services_info_service__["a" /* InfoService */] !== "undefined" && __WEBPACK_IMPORTED_MODULE_1_app_services_info_service__["a" /* InfoService */]) === "function" && _a || Object])
|
||||||
], AppComponent);
|
], AppComponent);
|
||||||
|
@ -1182,13 +1311,13 @@ var _a;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 200:
|
/***/ 202:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__angular_platform_browser_animations__ = __webpack_require__(197);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__angular_platform_browser_animations__ = __webpack_require__(199);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__angular_material__ = __webpack_require__(195);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__angular_material__ = __webpack_require__(119);
|
||||||
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return AppMaterialModule; });
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return AppMaterialModule; });
|
||||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||||
|
@ -1213,7 +1342,8 @@ AppMaterialModule = __decorate([
|
||||||
__WEBPACK_IMPORTED_MODULE_2__angular_material__["c" /* MdCardModule */],
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["c" /* MdCardModule */],
|
||||||
__WEBPACK_IMPORTED_MODULE_2__angular_material__["d" /* MdInputModule */],
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["d" /* MdInputModule */],
|
||||||
__WEBPACK_IMPORTED_MODULE_2__angular_material__["e" /* MdProgressSpinnerModule */],
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["e" /* MdProgressSpinnerModule */],
|
||||||
__WEBPACK_IMPORTED_MODULE_2__angular_material__["f" /* MdTooltipModule */]
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["f" /* MdTooltipModule */],
|
||||||
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["g" /* MdDialogModule */]
|
||||||
],
|
],
|
||||||
exports: [
|
exports: [
|
||||||
__WEBPACK_IMPORTED_MODULE_1__angular_platform_browser_animations__["a" /* BrowserAnimationsModule */],
|
__WEBPACK_IMPORTED_MODULE_1__angular_platform_browser_animations__["a" /* BrowserAnimationsModule */],
|
||||||
|
@ -1222,7 +1352,8 @@ AppMaterialModule = __decorate([
|
||||||
__WEBPACK_IMPORTED_MODULE_2__angular_material__["c" /* MdCardModule */],
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["c" /* MdCardModule */],
|
||||||
__WEBPACK_IMPORTED_MODULE_2__angular_material__["d" /* MdInputModule */],
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["d" /* MdInputModule */],
|
||||||
__WEBPACK_IMPORTED_MODULE_2__angular_material__["e" /* MdProgressSpinnerModule */],
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["e" /* MdProgressSpinnerModule */],
|
||||||
__WEBPACK_IMPORTED_MODULE_2__angular_material__["f" /* MdTooltipModule */]
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["f" /* MdTooltipModule */],
|
||||||
|
__WEBPACK_IMPORTED_MODULE_2__angular_material__["g" /* MdDialogModule */]
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
], AppMaterialModule);
|
], AppMaterialModule);
|
||||||
|
@ -1231,21 +1362,23 @@ AppMaterialModule = __decorate([
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 201:
|
/***/ 203:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_platform_browser__ = __webpack_require__(22);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_platform_browser__ = __webpack_require__(22);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__angular_flex_layout__ = __webpack_require__(192);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__angular_flex_layout__ = __webpack_require__(195);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__angular_core__ = __webpack_require__(0);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__angular_core__ = __webpack_require__(0);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__angular_forms__ = __webpack_require__(117);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__angular_forms__ = __webpack_require__(118);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__angular_http__ = __webpack_require__(118);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__angular_http__ = __webpack_require__(69);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__app_routing__ = __webpack_require__(202);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__app_routing__ = __webpack_require__(204);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_app_app_material_module__ = __webpack_require__(200);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_app_app_material_module__ = __webpack_require__(202);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__services_info_service__ = __webpack_require__(69);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__services_info_service__ = __webpack_require__(70);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__app_component__ = __webpack_require__(199);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__services_credentials_service__ = __webpack_require__(123);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_dashboard_dashboard_component__ = __webpack_require__(119);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__app_component__ = __webpack_require__(201);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_session_details_session_details_component__ = __webpack_require__(120);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_dashboard_dashboard_component__ = __webpack_require__(121);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_session_details_session_details_component__ = __webpack_require__(122);
|
||||||
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_dashboard_credentials_dialog_component__ = __webpack_require__(120);
|
||||||
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return AppModule; });
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return AppModule; });
|
||||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||||
|
@ -1264,6 +1397,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var AppModule = (function () {
|
var AppModule = (function () {
|
||||||
function AppModule() {
|
function AppModule() {
|
||||||
}
|
}
|
||||||
|
@ -1272,9 +1407,10 @@ var AppModule = (function () {
|
||||||
AppModule = __decorate([
|
AppModule = __decorate([
|
||||||
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__angular_core__["b" /* NgModule */])({
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__angular_core__["b" /* NgModule */])({
|
||||||
declarations: [
|
declarations: [
|
||||||
__WEBPACK_IMPORTED_MODULE_8__app_component__["a" /* AppComponent */],
|
__WEBPACK_IMPORTED_MODULE_9__app_component__["a" /* AppComponent */],
|
||||||
__WEBPACK_IMPORTED_MODULE_9__components_dashboard_dashboard_component__["a" /* DashboardComponent */],
|
__WEBPACK_IMPORTED_MODULE_10__components_dashboard_dashboard_component__["a" /* DashboardComponent */],
|
||||||
__WEBPACK_IMPORTED_MODULE_10__components_session_details_session_details_component__["a" /* SessionDetailsComponent */]
|
__WEBPACK_IMPORTED_MODULE_11__components_session_details_session_details_component__["a" /* SessionDetailsComponent */],
|
||||||
|
__WEBPACK_IMPORTED_MODULE_12__components_dashboard_credentials_dialog_component__["a" /* CredentialsDialogComponent */],
|
||||||
],
|
],
|
||||||
imports: [
|
imports: [
|
||||||
__WEBPACK_IMPORTED_MODULE_0__angular_platform_browser__["a" /* BrowserModule */],
|
__WEBPACK_IMPORTED_MODULE_0__angular_platform_browser__["a" /* BrowserModule */],
|
||||||
|
@ -1284,8 +1420,11 @@ AppModule = __decorate([
|
||||||
__WEBPACK_IMPORTED_MODULE_6_app_app_material_module__["a" /* AppMaterialModule */],
|
__WEBPACK_IMPORTED_MODULE_6_app_app_material_module__["a" /* AppMaterialModule */],
|
||||||
__WEBPACK_IMPORTED_MODULE_1__angular_flex_layout__["a" /* FlexLayoutModule */]
|
__WEBPACK_IMPORTED_MODULE_1__angular_flex_layout__["a" /* FlexLayoutModule */]
|
||||||
],
|
],
|
||||||
providers: [__WEBPACK_IMPORTED_MODULE_7__services_info_service__["a" /* InfoService */]],
|
entryComponents: [
|
||||||
bootstrap: [__WEBPACK_IMPORTED_MODULE_8__app_component__["a" /* AppComponent */]]
|
__WEBPACK_IMPORTED_MODULE_12__components_dashboard_credentials_dialog_component__["a" /* CredentialsDialogComponent */],
|
||||||
|
],
|
||||||
|
providers: [__WEBPACK_IMPORTED_MODULE_7__services_info_service__["a" /* InfoService */], __WEBPACK_IMPORTED_MODULE_8__services_credentials_service__["a" /* CredentialsService */]],
|
||||||
|
bootstrap: [__WEBPACK_IMPORTED_MODULE_9__app_component__["a" /* AppComponent */]]
|
||||||
})
|
})
|
||||||
], AppModule);
|
], AppModule);
|
||||||
|
|
||||||
|
@ -1293,13 +1432,13 @@ AppModule = __decorate([
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 202:
|
/***/ 204:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_router__ = __webpack_require__(198);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_router__ = __webpack_require__(200);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_app_components_dashboard_dashboard_component__ = __webpack_require__(119);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_app_components_dashboard_dashboard_component__ = __webpack_require__(121);
|
||||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_app_components_session_details_session_details_component__ = __webpack_require__(120);
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_app_components_session_details_session_details_component__ = __webpack_require__(122);
|
||||||
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return routing; });
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return routing; });
|
||||||
|
|
||||||
|
|
||||||
|
@ -1319,7 +1458,7 @@ var routing = __WEBPACK_IMPORTED_MODULE_0__angular_router__["a" /* RouterModule
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 203:
|
/***/ 205:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -1336,42 +1475,6 @@ var environment = {
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 259:
|
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
|
||||||
|
|
||||||
exports = module.exports = __webpack_require__(37)(false);
|
|
||||||
// imports
|
|
||||||
|
|
||||||
|
|
||||||
// module
|
|
||||||
exports.push([module.i, "", ""]);
|
|
||||||
|
|
||||||
// exports
|
|
||||||
|
|
||||||
|
|
||||||
/*** EXPORTS FROM exports-loader ***/
|
|
||||||
module.exports = module.exports.toString();
|
|
||||||
|
|
||||||
/***/ }),
|
|
||||||
|
|
||||||
/***/ 260:
|
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
|
||||||
|
|
||||||
exports = module.exports = __webpack_require__(37)(false);
|
|
||||||
// imports
|
|
||||||
|
|
||||||
|
|
||||||
// module
|
|
||||||
exports.push([module.i, "#dashboard-div {\n padding: 20px;\n}\n\n#log {\n height: 90%;\n}\n\n#log-content {\n height: 90%;\n font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;\n overflow-y: auto;\n overflow-x: hidden\n}\n\nul {\n margin: 0;\n}\n\nbutton.mat-raised-button {\n text-transform: uppercase;\n float: right;\n}\n\nmd-card-title button.blue {\n color: #ffffff;\n background-color: #0088aa;\n}\n\nmd-card-title button.yellow {\n color: rgba(0, 0, 0, 0.87);\n background-color: #ffcc00;\n}\n\nmd-spinner {\n position: absolute;\n top: 55%;\n left: 50%;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n\n#tick-div {\n width: 100px;\n height: 100px;\n z-index: 1;\n position: absolute;\n top: 55%;\n left: 50%;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n\n#tooltip-tick {\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: 2;\n}\n\n.circ {\n opacity: 0;\n stroke-dasharray: 130;\n stroke-dashoffset: 130;\n transition: all 1s;\n}\n\n.tick {\n stroke-dasharray: 50;\n stroke-dashoffset: 50;\n transition: stroke-dashoffset 1s 0.5s ease-out;\n}\n\n.drawn+svg .path {\n opacity: 1;\n stroke-dashoffset: 0;\n}\n\n\n/* Pure CSS loader */\n\n#loader {\n width: 100px;\n height: 100px;\n z-index: 1;\n position: absolute;\n top: 55%;\n left: 50%;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n\n#loader * {\n box-sizing: border-box;\n}\n\n#loader ::after {\n box-sizing: border-box;\n}\n\n#loader ::before {\n box-sizing: border-box;\n}\n\n.loader-1 {\n height: 100px;\n width: 100px;\n -webkit-animation: loader-1-1 4.8s linear infinite;\n animation: loader-1-1 4.8s linear infinite;\n}\n\n@-webkit-keyframes loader-1-1 {\n 0% {\n -webkit-transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n }\n}\n\n@keyframes loader-1-1 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n.loader-1 span {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n margin: auto;\n height: 100px;\n width: 100px;\n clip: rect(0, 100px, 100px, 50px);\n -webkit-animation: loader-1-2 1.2s linear infinite;\n animation: loader-1-2 1.2s linear infinite;\n}\n\n@-webkit-keyframes loader-1-2 {\n 0% {\n -webkit-transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(220deg);\n }\n}\n\n@keyframes loader-1-2 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(220deg);\n transform: rotate(220deg);\n }\n}\n\n.loader-1 span::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n margin: auto;\n height: 100px;\n width: 100px;\n clip: rect(0, 100px, 100px, 50px);\n border: 8px solid #4d4d4d;\n border-radius: 50%;\n -webkit-animation: loader-1-3 1.2s cubic-bezier(0.770, 0.000, 0.175, 1.000) infinite;\n animation: loader-1-3 1.2s cubic-bezier(0.770, 0.000, 0.175, 1.000) infinite;\n}\n\n@-webkit-keyframes loader-1-3 {\n 0% {\n -webkit-transform: rotate(-140deg);\n }\n 50% {\n -webkit-transform: rotate(-160deg);\n }\n 100% {\n -webkit-transform: rotate(140deg);\n }\n}\n\n@keyframes loader-1-3 {\n 0% {\n -webkit-transform: rotate(-140deg);\n transform: rotate(-140deg);\n }\n 50% {\n -webkit-transform: rotate(-160deg);\n transform: rotate(-160deg);\n }\n 100% {\n -webkit-transform: rotate(140deg);\n transform: rotate(140deg);\n }\n}", ""]);
|
|
||||||
|
|
||||||
// exports
|
|
||||||
|
|
||||||
|
|
||||||
/*** EXPORTS FROM exports-loader ***/
|
|
||||||
module.exports = module.exports.toString();
|
|
||||||
|
|
||||||
/***/ }),
|
|
||||||
|
|
||||||
/***/ 261:
|
/***/ 261:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
|
@ -1390,28 +1493,64 @@ module.exports = module.exports.toString();
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 280:
|
/***/ 262:
|
||||||
/***/ (function(module, exports) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
module.exports = "<main>\n <router-outlet></router-outlet>\n</main>"
|
exports = module.exports = __webpack_require__(37)(false);
|
||||||
|
// imports
|
||||||
|
|
||||||
|
|
||||||
|
// module
|
||||||
|
exports.push([module.i, "#dashboard-div {\n padding: 20px;\n}\n\n#log {\n height: 90%;\n}\n\n#log-content {\n height: 90%;\n font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;\n overflow-y: auto;\n overflow-x: hidden\n}\n\nul {\n margin: 0;\n}\n\nbutton.mat-raised-button {\n text-transform: uppercase;\n float: right;\n}\n\nmd-card-title button.blue {\n color: #ffffff;\n background-color: #0088aa;\n}\n\nmd-card-title button.yellow {\n color: rgba(0, 0, 0, 0.87);\n background-color: #ffcc00;\n}\n\nmd-spinner {\n position: absolute;\n top: 55%;\n left: 50%;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n\n#tick-div {\n width: 100px;\n height: 100px;\n z-index: 1;\n position: absolute;\n top: 55%;\n left: 50%;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n\n#tooltip-tick {\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: 2;\n}\n\n.circ {\n opacity: 0;\n stroke-dasharray: 130;\n stroke-dashoffset: 130;\n transition: all 1s;\n}\n\n.tick {\n stroke-dasharray: 50;\n stroke-dashoffset: 50;\n transition: stroke-dashoffset 1s 0.5s ease-out;\n}\n\n.drawn+svg .path {\n opacity: 1;\n stroke-dashoffset: 0;\n}\n\n\n/* Pure CSS loader */\n\n#loader {\n width: 100px;\n height: 100px;\n z-index: 1;\n position: absolute;\n top: 55%;\n left: 50%;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n\n#loader * {\n box-sizing: border-box;\n}\n\n#loader ::after {\n box-sizing: border-box;\n}\n\n#loader ::before {\n box-sizing: border-box;\n}\n\n.loader-1 {\n height: 100px;\n width: 100px;\n -webkit-animation: loader-1-1 4.8s linear infinite;\n animation: loader-1-1 4.8s linear infinite;\n}\n\n@-webkit-keyframes loader-1-1 {\n 0% {\n -webkit-transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n }\n}\n\n@keyframes loader-1-1 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n.loader-1 span {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n margin: auto;\n height: 100px;\n width: 100px;\n clip: rect(0, 100px, 100px, 50px);\n -webkit-animation: loader-1-2 1.2s linear infinite;\n animation: loader-1-2 1.2s linear infinite;\n}\n\n@-webkit-keyframes loader-1-2 {\n 0% {\n -webkit-transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(220deg);\n }\n}\n\n@keyframes loader-1-2 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(220deg);\n transform: rotate(220deg);\n }\n}\n\n.loader-1 span::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n margin: auto;\n height: 100px;\n width: 100px;\n clip: rect(0, 100px, 100px, 50px);\n border: 8px solid #4d4d4d;\n border-radius: 50%;\n -webkit-animation: loader-1-3 1.2s cubic-bezier(0.770, 0.000, 0.175, 1.000) infinite;\n animation: loader-1-3 1.2s cubic-bezier(0.770, 0.000, 0.175, 1.000) infinite;\n}\n\n@-webkit-keyframes loader-1-3 {\n 0% {\n -webkit-transform: rotate(-140deg);\n }\n 50% {\n -webkit-transform: rotate(-160deg);\n }\n 100% {\n -webkit-transform: rotate(140deg);\n }\n}\n\n@keyframes loader-1-3 {\n 0% {\n -webkit-transform: rotate(-140deg);\n transform: rotate(-140deg);\n }\n 50% {\n -webkit-transform: rotate(-160deg);\n transform: rotate(-160deg);\n }\n 100% {\n -webkit-transform: rotate(140deg);\n transform: rotate(140deg);\n }\n}", ""]);
|
||||||
|
|
||||||
|
// exports
|
||||||
|
|
||||||
|
|
||||||
|
/*** EXPORTS FROM exports-loader ***/
|
||||||
|
module.exports = module.exports.toString();
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 281:
|
/***/ 263:
|
||||||
/***/ (function(module, exports) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
module.exports = "<div id=\"dashboard-div\" fxLayout=\"row\" fxLayout.xs=\"column\" fxLayoutGap=\"20px\" fxFlexFill>\n\n <div fxLayout=\"column\" fxFlex=\"66%\" fxFlexOrder=\"1\" fxFlexOrder.xs=\"2\">\n <md-card id=\"log\">\n <md-card-title>Server events</md-card-title>\n <md-divider></md-divider>\n <md-card-content #scrollMe id=\"log-content\">\n <md-list>\n <md-list-item *ngFor=\"let i of info\">\n <p>{{i}}</p>\n </md-list-item>\n </md-list>\n </md-card-content>\n </md-card>\n </div>\n\n <div fxLayout=\"column\" fxFlex=\"33%\" fxFlexOrder=\"2\" fxFlexOrder.xs=\"1\">\n <md-card id=\"video-loop\">\n <md-card-title>Test the connection\n <button [class]=\"testStatus == 'DISCONNECTED' ? 'blue' : (testStatus == 'PLAYING' ? 'yellow' : 'disabled')\" md-raised-button (click)=\"toggleTestVideo()\" [disabled]=\"testStatus==='CONNECTING' || testStatus==='CONNECTED'\">{{testButton}}</button></md-card-title>\n <md-card-content #scrollMe id=\"log-content\">\n <div id=\"mirrored-video\">\n <div *ngIf=\"showSpinner\" id=\"loader\">\n <div class=\"loader-1 center\"><span></span></div>\n </div>\n <!--<md-spinner *ngIf=\"showSpinner\" [color]=\"color\"></md-spinner>-->\n <div *ngIf=\"session\" id=\"tick-div\">\n <div id=\"tooltip-tick\" *ngIf=\"testStatus=='PLAYING'\" mdTooltip=\"The connection is successful\" mdTooltipPosition=\"below\"></div>\n <div [class]=\"testStatus=='PLAYING' ? 'trigger drawn' : 'trigger'\"></div>\n <svg version=\"1.1\" id=\"tick\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"-1 -1 39 39\" style=\"enable-background:new 0 0 37 37;\" xml:space=\"preserve\">\n <path class=\"circ path\" style=\"fill:none;stroke:#06d362;stroke-width:4;stroke-linejoin:round;stroke-miterlimit:10;\" d=\"\n\tM30.5,6.5L30.5,6.5c6.6,6.6,6.6,17.4,0,24l0,0c-6.6,6.6-17.4,6.6-24,0l0,0c-6.6-6.6-6.6-17.4,0-24l0,0C13.1-0.2,23.9-0.2,30.5,6.5z\"\n />\n <polyline class=\"tick path\" style=\"fill:none;stroke:#06d362;stroke-width:4;stroke-linejoin:round;stroke-miterlimit:10;\" points=\"\n\t11.6,20 15.9,24.2 26.4,13.8 \" />\n </svg>\n </div>\n </div>\n </md-card-content>\n </md-card>\n </div>\n\n</div>\n"
|
exports = module.exports = __webpack_require__(37)(false);
|
||||||
|
// imports
|
||||||
|
|
||||||
|
|
||||||
|
// module
|
||||||
|
exports.push([module.i, "", ""]);
|
||||||
|
|
||||||
|
// exports
|
||||||
|
|
||||||
|
|
||||||
|
/*** EXPORTS FROM exports-loader ***/
|
||||||
|
module.exports = module.exports.toString();
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 282:
|
/***/ 282:
|
||||||
/***/ (function(module, exports) {
|
/***/ (function(module, exports) {
|
||||||
|
|
||||||
|
module.exports = "<main>\n <router-outlet></router-outlet>\n</main>"
|
||||||
|
|
||||||
|
/***/ }),
|
||||||
|
|
||||||
|
/***/ 283:
|
||||||
|
/***/ (function(module, exports) {
|
||||||
|
|
||||||
|
module.exports = "<div id=\"dashboard-div\" fxLayout=\"row\" fxLayout.xs=\"column\" fxLayoutGap=\"20px\" fxFlexFill>\n\n <div fxLayout=\"column\" fxFlex=\"66%\" fxFlexOrder=\"1\" fxFlexOrder.xs=\"2\">\n <md-card id=\"log\">\n <md-card-title>Server events</md-card-title>\n <md-divider></md-divider>\n <md-card-content #scrollMe id=\"log-content\">\n <md-list>\n <md-list-item *ngFor=\"let i of info\">\n <p>{{i}}</p>\n </md-list-item>\n </md-list>\n </md-card-content>\n </md-card>\n </div>\n\n <div fxLayout=\"column\" fxFlex=\"33%\" fxFlexOrder=\"2\" fxFlexOrder.xs=\"1\">\n <md-card id=\"video-loop\">\n <md-card-title>Test the connection\n <button [class]=\"testStatus == 'DISCONNECTED' ? 'blue' : (testStatus == 'PLAYING' ? 'yellow' : 'disabled')\" md-raised-button (click)=\"toggleTestVideo()\" [disabled]=\"testStatus==='CONNECTING' || testStatus==='CONNECTED'\">{{testButton}}</button></md-card-title>\n <md-card-content #scrollMe id=\"log-content\">\n <div id=\"mirrored-video\">\n <div *ngIf=\"showSpinner\" id=\"loader\">\n <div class=\"loader-1 center\"><span></span></div>\n </div>\n <!--<md-spinner *ngIf=\"showSpinner\" [color]=\"color\"></md-spinner>-->\n <div *ngIf=\"session\" id=\"tick-div\">\n <div id=\"tooltip-tick\" *ngIf=\"testStatus=='PLAYING'\" mdTooltip=\"The connection is successful\" mdTooltipPosition=\"below\"></div>\n <div [class]=\"testStatus=='PLAYING' ? 'trigger drawn' : 'trigger'\"></div>\n <svg version=\"1.1\" id=\"tick\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"-1 -1 39 39\" style=\"enable-background:new 0 0 37 37;\" xml:space=\"preserve\">\n <path class=\"circ path\" style=\"fill:none;stroke:#06d362;stroke-width:4;stroke-linejoin:round;stroke-miterlimit:10;\" d=\"\n\tM30.5,6.5L30.5,6.5c6.6,6.6,6.6,17.4,0,24l0,0c-6.6,6.6-17.4,6.6-24,0l0,0c-6.6-6.6-6.6-17.4,0-24l0,0C13.1-0.2,23.9-0.2,30.5,6.5z\"\n />\n <polyline class=\"tick path\" style=\"fill:none;stroke:#06d362;stroke-width:4;stroke-linejoin:round;stroke-miterlimit:10;\" points=\"\n\t11.6,20 15.9,24.2 26.4,13.8 \" />\n </svg>\n </div>\n </div>\n </md-card-content>\n </md-card>\n </div>\n\n</div>\n"
|
||||||
|
|
||||||
|
/***/ }),
|
||||||
|
|
||||||
|
/***/ 284:
|
||||||
|
/***/ (function(module, exports) {
|
||||||
|
|
||||||
module.exports = "<p>\n session-details works!\n</p>\n"
|
module.exports = "<p>\n session-details works!\n</p>\n"
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 368:
|
/***/ 370:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -1433,10 +1572,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
var OpenViduInternal_1 = __webpack_require__(370);
|
var OpenViduInternal_1 = __webpack_require__(372);
|
||||||
var Session_1 = __webpack_require__(167);
|
var Session_1 = __webpack_require__(170);
|
||||||
var Publisher_1 = __webpack_require__(166);
|
var Publisher_1 = __webpack_require__(169);
|
||||||
var adapter = __webpack_require__(173);
|
var adapter = __webpack_require__(176);
|
||||||
if (window) {
|
if (window) {
|
||||||
window["adapter"] = adapter;
|
window["adapter"] = adapter;
|
||||||
}
|
}
|
||||||
|
@ -1515,7 +1654,7 @@ exports.OpenVidu = OpenVidu;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 369:
|
/***/ 371:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -1524,17 +1663,17 @@ function __export(m) {
|
||||||
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
|
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
|
||||||
}
|
}
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
__export(__webpack_require__(368));
|
__export(__webpack_require__(370));
|
||||||
__export(__webpack_require__(167));
|
__export(__webpack_require__(170));
|
||||||
__export(__webpack_require__(166));
|
|
||||||
__export(__webpack_require__(168));
|
|
||||||
__export(__webpack_require__(104));
|
|
||||||
__export(__webpack_require__(169));
|
__export(__webpack_require__(169));
|
||||||
|
__export(__webpack_require__(171));
|
||||||
|
__export(__webpack_require__(105));
|
||||||
|
__export(__webpack_require__(172));
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 370:
|
/***/ 372:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -1556,9 +1695,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
var SessionInternal_1 = __webpack_require__(371);
|
var SessionInternal_1 = __webpack_require__(373);
|
||||||
var Stream_1 = __webpack_require__(104);
|
var Stream_1 = __webpack_require__(105);
|
||||||
var RpcBuilder = __webpack_require__(134);
|
var RpcBuilder = __webpack_require__(137);
|
||||||
var OpenViduInternal = (function () {
|
var OpenViduInternal = (function () {
|
||||||
function OpenViduInternal() {
|
function OpenViduInternal() {
|
||||||
this.remoteStreams = [];
|
this.remoteStreams = [];
|
||||||
|
@ -1875,13 +2014,13 @@ exports.OpenViduInternal = OpenViduInternal;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 371:
|
/***/ 373:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
var Connection_1 = __webpack_require__(169);
|
var Connection_1 = __webpack_require__(172);
|
||||||
var EventEmitter = __webpack_require__(52);
|
var EventEmitter = __webpack_require__(52);
|
||||||
var SessionInternal = (function () {
|
var SessionInternal = (function () {
|
||||||
function SessionInternal(openVidu, sessionId) {
|
function SessionInternal(openVidu, sessionId) {
|
||||||
|
@ -1933,7 +2072,7 @@ var SessionInternal = (function () {
|
||||||
}
|
}
|
||||||
_this.openVidu.sendRequest('joinRoom', joinParams, function (error, response) {
|
_this.openVidu.sendRequest('joinRoom', joinParams, function (error, response) {
|
||||||
if (error) {
|
if (error) {
|
||||||
callback('UNABLE TO JOIN ROOM');
|
callback(error);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
_this.connected = true;
|
_this.connected = true;
|
||||||
|
@ -2312,15 +2451,15 @@ exports.SessionInternal = SessionInternal;
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 387:
|
/***/ 389:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
module.exports = __webpack_require__(175);
|
module.exports = __webpack_require__(178);
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 69:
|
/***/ 70:
|
||||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -2361,5 +2500,5 @@ InfoService = __decorate([
|
||||||
|
|
||||||
/***/ })
|
/***/ })
|
||||||
|
|
||||||
},[387]);
|
},[389]);
|
||||||
//# sourceMappingURL=main.bundle.js.map
|
//# sourceMappingURL=main.bundle.js.map
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
@ -1,15 +1,15 @@
|
||||||
webpackJsonp([2,4],{
|
webpackJsonp([2,4],{
|
||||||
|
|
||||||
/***/ 177:
|
/***/ 180:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
// style-loader: Adds some css to the DOM by adding a <style> tag
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
||||||
|
|
||||||
// load the styles
|
// load the styles
|
||||||
var content = __webpack_require__(257);
|
var content = __webpack_require__(259);
|
||||||
if(typeof content === 'string') content = [[module.i, content, '']];
|
if(typeof content === 'string') content = [[module.i, content, '']];
|
||||||
// add the styles to the DOM
|
// add the styles to the DOM
|
||||||
var update = __webpack_require__(372)(content, {});
|
var update = __webpack_require__(374)(content, {});
|
||||||
if(content.locals) module.exports = content.locals;
|
if(content.locals) module.exports = content.locals;
|
||||||
// Hot Module Replacement
|
// Hot Module Replacement
|
||||||
if(false) {
|
if(false) {
|
||||||
|
@ -27,7 +27,7 @@ if(false) {
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 256:
|
/***/ 258:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
exports = module.exports = __webpack_require__(37)(false);
|
exports = module.exports = __webpack_require__(37)(false);
|
||||||
|
@ -42,12 +42,12 @@ exports.push([module.i, ".mat-elevation-z0{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 257:
|
/***/ 259:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
exports = module.exports = __webpack_require__(37)(false);
|
exports = module.exports = __webpack_require__(37)(false);
|
||||||
// imports
|
// imports
|
||||||
exports.i(__webpack_require__(256), "");
|
exports.i(__webpack_require__(258), "");
|
||||||
|
|
||||||
// module
|
// module
|
||||||
exports.push([module.i, "html,\nbody {\n height: 100%;\n margin: 0;\n padding: 0;\n background: #4d4d4d;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0.05);\n}\n\nmain {\n height: 100%;\n}\n\nli {\n list-style: none;\n}\n\nvideo {\n width: 100%;\n}\n\n.mat-spinner path {\n stroke: #4d4d4d;\n}", ""]);
|
exports.push([module.i, "html,\nbody {\n height: 100%;\n margin: 0;\n padding: 0;\n background: #4d4d4d;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0.05);\n}\n\nmain {\n height: 100%;\n}\n\nli {\n list-style: none;\n}\n\nvideo {\n width: 100%;\n}\n\n.mat-spinner path {\n stroke: #4d4d4d;\n}", ""]);
|
||||||
|
@ -164,11 +164,11 @@ function toComment(sourceMap) {
|
||||||
return '/*# ' + data + ' */';
|
return '/*# ' + data + ' */';
|
||||||
}
|
}
|
||||||
|
|
||||||
/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(71).Buffer))
|
/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(72).Buffer))
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 372:
|
/***/ 374:
|
||||||
/***/ (function(module, exports) {
|
/***/ (function(module, exports) {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -421,15 +421,15 @@ function updateLink(linkElement, obj) {
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 389:
|
/***/ 391:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
module.exports = __webpack_require__(177);
|
module.exports = __webpack_require__(180);
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 70:
|
/***/ 71:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -551,7 +551,7 @@ function fromByteArray (uint8) {
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 71:
|
/***/ 72:
|
||||||
/***/ (function(module, exports, __webpack_require__) {
|
/***/ (function(module, exports, __webpack_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
@ -565,9 +565,9 @@ function fromByteArray (uint8) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var base64 = __webpack_require__(70)
|
var base64 = __webpack_require__(71)
|
||||||
var ieee754 = __webpack_require__(88)
|
var ieee754 = __webpack_require__(89)
|
||||||
var isArray = __webpack_require__(89)
|
var isArray = __webpack_require__(90)
|
||||||
|
|
||||||
exports.Buffer = Buffer
|
exports.Buffer = Buffer
|
||||||
exports.SlowBuffer = SlowBuffer
|
exports.SlowBuffer = SlowBuffer
|
||||||
|
@ -2349,7 +2349,7 @@ function isnan (val) {
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 88:
|
/***/ 89:
|
||||||
/***/ (function(module, exports) {
|
/***/ (function(module, exports) {
|
||||||
|
|
||||||
exports.read = function (buffer, offset, isLE, mLen, nBytes) {
|
exports.read = function (buffer, offset, isLE, mLen, nBytes) {
|
||||||
|
@ -2440,7 +2440,7 @@ exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 89:
|
/***/ 90:
|
||||||
/***/ (function(module, exports) {
|
/***/ (function(module, exports) {
|
||||||
|
|
||||||
var toString = {}.toString;
|
var toString = {}.toString;
|
||||||
|
@ -2452,5 +2452,5 @@ module.exports = Array.isArray || function (arr) {
|
||||||
|
|
||||||
/***/ })
|
/***/ })
|
||||||
|
|
||||||
},[389]);
|
},[391]);
|
||||||
//# sourceMappingURL=styles.bundle.js.map
|
//# sourceMappingURL=styles.bundle.js.map
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue