playable
Version:
Video player based on HTML5Video
80 lines (79 loc) • 2.58 kB
TypeScript
import MainUIBlockView from './main-ui-block.view';
import { IMainUIBlockAPI, IMainUIBlock } from './types';
import { IEventEmitter } from '../../event-emitter/types';
import { IBottomBlock } from '../bottom-block/types';
import { ITopBlock } from '../top-block/types';
import { IScreen } from '../screen/types';
import { IPlayerConfig } from '../../../core/config';
import { IRootContainer } from '../../root-container/types';
import { ITooltipService } from '../core/tooltip/tooltip-service';
declare class MainUIBlock implements IMainUIBlock {
static moduleName: string;
static View: typeof MainUIBlockView;
static dependencies: string[];
private _eventEmitter;
private _bottomBlock;
private _topBlock;
private _screen;
private _tooltipService;
private _hideTimeout;
private _isContentShowingEnabled;
private _isContentShown;
private _shouldShowContent;
private _shouldAlwaysShow;
private _isDragging;
private _config;
private _unbindEvents;
view: MainUIBlockView;
isHidden: boolean;
constructor(dependencies: {
config: IPlayerConfig;
eventEmitter: IEventEmitter;
rootContainer: IRootContainer;
tooltipService: ITooltipService;
topBlock: ITopBlock;
bottomBlock: IBottomBlock;
screen: IScreen;
});
getElement(): HTMLElement;
private _initUI;
private _bindViewCallbacks;
private _bindEvents;
private _updatePlayingState;
private get _isBlockFocused();
private _startHideBlockTimeout;
private _stopHideBlockTimeout;
private _tryShowContent;
private _onControlDragStart;
private _onControlDragEnd;
private _showContent;
private _tryHideContent;
private _hideContent;
disableShowingContent(): void;
enableShowingContent(): void;
/**
* Method for hiding main ui
* Important! This overrides the effect of `setMainUIShouldAlwaysShow` method
* @example
* player.hideMainUI();
*/
hide(): void;
/**
* Method for showing main ui in case it was hidden
* @example
* player.showMainUI();
*/
show(): void;
/**
* Method for allowing main ui to be always shown despite the playback state and the cursor position
* Important! UI would be hidden in case `hideMainUI` is called
* @param flag - `true` for showing always
* @example
* player.setMainUIShouldAlwaysShow(true);
*
*/
setShouldAlwaysShow(flag: boolean): void;
destroy(): void;
}
export { IMainUIBlockAPI };
export default MainUIBlock;