mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
27 lines
977 B
TypeScript
27 lines
977 B
TypeScript
import { type MediaTimeState, SeekButtonCore, SeekButtonDataAttrs } from '@videojs/core';
|
|
import { selectTime } from '@videojs/core/dom';
|
|
import type { PropertyDeclarationMap } from '@videojs/element';
|
|
|
|
import { playerContext } from '../../player/context';
|
|
import { PlayerController } from '../../player/player-controller';
|
|
import { MediaButtonElement } from '../media-button-element';
|
|
|
|
export class SeekButtonElement extends MediaButtonElement<SeekButtonCore> {
|
|
static readonly tagName = 'media-seek-button';
|
|
|
|
static override properties: PropertyDeclarationMap = {
|
|
...MediaButtonElement.properties,
|
|
seconds: { type: Number },
|
|
};
|
|
|
|
seconds = SeekButtonCore.defaultProps.seconds;
|
|
|
|
protected readonly core = new SeekButtonCore();
|
|
protected readonly stateAttrMap = SeekButtonDataAttrs;
|
|
protected readonly mediaState = new PlayerController(this, playerContext, selectTime);
|
|
|
|
protected activate(state: MediaTimeState): void {
|
|
this.core.seek(state);
|
|
}
|
|
}
|