/**
* @file live-display.js
* /
importiere Komponente von '../komponente';
import * as Dom from '../utils/dom.js';
dokument aus 'global/document' importieren;
// TODO - Künftig kann man mit einem Klick auf "Live" umschalten
/**
* Zeigt die Live-Anzeige an, wenn die Dauer unendlich ist.
*
* @erweitert Komponente
* /
class LiveDisplay extends Component {
/**
* Erzeugt eine Instanz dieser Klasse.
*
* @param {Player} Spieler
* Der `Player`, dem diese Klasse zugeordnet werden soll.
*
* @param {Object} [Optionen]
* Der Schlüssel/Wertspeicher der Playeroptionen.
* /
constructor(spieler, optionen) {
super(Spieler, Optionen);
this.updateShowing();
this.on(this.player(), 'durationchange', (e) => this.updateShowing(e));
}
/**
* Das DOM-Element der Komponente erstellen
*
* @return {Element}
* Das Element, das erstellt wurde.
* /
createEl() {
const el = super.createEl('div', {
className: 'vjs-live-control vjs-control'
});
this.contentEl_ = Dom.createEl('div', {
className: 'vjs-live-display'
}, {
aria-live": "aus
});
this.contentEl_.appendChild(Dom.createEl('span', {
className: 'vjs-control-text',
textInhalt: `${this.localize('Stream Type')}u00a0`
}));
this.contentEl_.appendChild(document.createTextNode(this.localize('LIVE')));
el.appendChild(this.contentEl_);
zurück el;
}
dispose() {
this.contentEl_ = null;
super.dispose();
}
/**
* Überprüfen Sie die Dauer, um festzustellen, ob das LiveDisplay angezeigt werden soll oder nicht. Dann anzeigen/ausblenden
* es entsprechend
*
* @param {EventTarget~Event} [event]
* Das Ereignis {@link Player#durationchange}, das die Ausführung dieser Funktion verursacht hat.
*
* @listens Player#durationchange
* /
updateShowing(event) {
if (this.player().duration() === Unendlich) {
this.show();
} else {
this.hide();
}
}
}
Component.registerComponent('LiveDisplay', LiveDisplay);
standard-LiveDisplay exportieren;