Newer
Older
import { Component } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { TranslateService } from '@ngx-translate/core';
import { Unit, UnitPage } from '../../../common/unit';
import { VeronaSubscriptionService } from './services/verona-subscription.service';
import { VeronaPostService } from './services/verona-post.service';
import { NativeEventService } from './services/native-event.service';
selector: 'player-aspect',
<app-form *ngIf="playerConfig" [pages]=pages [playerConfig]=playerConfig></app-form>
form!: FormGroup;
pages!: UnitPage[];
constructor(private translateService: TranslateService,
private veronaSubscriptionService: VeronaSubscriptionService,
private veronaPostService: VeronaPostService,
private nativeEventService: NativeEventService) {
veronaPostService.sendVopReadyNotification();
translateService.addLangs(['de']);
translateService.setDefaultLang('de');
this.veronaSubscriptionService.vopStartCommand
.subscribe((message: VopStartCommand): void => this.onStart(message));
this.nativeEventService.scrollY
.subscribe((y: number): void => this.onScrollY(y));
this.nativeEventService.focus
.subscribe((focused: boolean): void => this.onFocus(focused));
}
private onStart(message: VopStartCommand): void {
// eslint-disable-next-line no-console
console.log('player: onStart', message);
const unit: Unit = message.unitDefinition ? JSON.parse(message.unitDefinition) : [];
this.pages = unit.pages;
this.playerConfig = message.playerConfig || {};
this.veronaPostService.sessionId = message.sessionId;
// eslint-disable-next-line @typescript-eslint/no-unused-vars
private onScrollY = (y: number): void => {
};
private onFocus(focused: boolean): void {
console.log('player: onFocus', focused);
this.veronaPostService.sendVopWindowFocusChangedNotification(focused);