/**
* @archivo play-progress-bar.js
* /
importar componente desde '../../component.js';
importar {IS_IOS, IS_ANDROID} desde '../../utils/browser.js';
importar * como Fn desde '../../utils/fn.js';
import './time-tooltip';
/**
* Utilizado por {@link SeekBar} para mostrar el progreso de la reproducción multimedia como parte de la
* {@enlace ProgressControl}.
*
* Componente @extiende
* /
clase PlayProgressBar extiende Componente {
/**
* Crea una instancia de esta clase.
*
* @param {Jugador} jugador
* El {@link Player} al que se debe adjuntar esta clase.
*
* @param {Objeto} [opciones]
* El almacén de clave/valor de las opciones del jugador.
* /
constructor(jugador, opciones) {
super(jugador, opciones);
this.update = Fn.throttle(Fn.bind(this, this.update), Fn.UPDATE_REFRESH_INTERVAL);
}
/**
* Crea el elemento DOM para esta clase.
*
* @return {Elemento}
* El elemento que se creó.
* /
crearEl() {
return super.createEl('div', {
className: 'vjs-play-progress vjs-slider-bar'
}, {
'aria-oculto': 'verdadero'
});
}
/**
* Pone en cola las actualizaciones de su propio DOM, así como el DOM de su
* {@link TimeTooltip} niño.
*
* @param {Objeto} buscarBarRect
* El `ClientRect` para el elemento {@link SeekBar}.
*
* @param {número} buscarBarPoint
* Un número del 0 al 1, que representa un punto de referencia horizontal
* desde el borde izquierdo de la {@link SeekBar}
* /
actualizar(buscarBarRect, buscarBarPunto) {
const timeTooltip = this.getChild('timeTooltip');
si (! información sobre herramientas de tiempo) {
devolver;
}
const time = (this.player_.scrubbing()) ?
this.player_.getCache().currentTime :
this.player_.currentTime();
timeTooltip.updateTime(seekBarRect, seekBarPoint, tiempo);
}
}
/**
* Opciones predeterminadas para {@link PlayProgressBar}.
*
* @type {Objeto}
* @privado
* /
PlayProgressBar.prototipo.opciones_ = {
niños: []
};
// La información sobre herramientas de tiempo no debe agregarse a un reproductor en dispositivos móviles
if (!IS_IOS && !IS_ANDROID) {
PlayProgressBar.prototype.options_.children.push('timeTooltip');
}
Component.registerComponent('PlayProgressBar', PlayProgressBar);
exportar PlayProgressBar predeterminado;