UNPKG

playable

Version:

Video player based on HTML5Video

84 lines 3.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var tooltip_reference_1 = (0, tslib_1.__importDefault)(require("./tooltip-reference")); var tooltip_container_1 = (0, tslib_1.__importDefault)(require("./tooltip-container")); var tooltip_1 = (0, tslib_1.__importDefault)(require("./tooltip")); var constants_1 = require("../../../../constants"); var TooltipService = /** @class */ (function () { function TooltipService(_a) { var eventEmitter = _a.eventEmitter; this._eventEmitter = eventEmitter; this._tooltip = new tooltip_1.default(); this._tooltipContainer = new tooltip_container_1.default(this._tooltip); this._bindEvents(); } Object.defineProperty(TooltipService.prototype, "isHidden", { get: function () { return this._tooltip.isHidden; }, enumerable: false, configurable: true }); Object.defineProperty(TooltipService.prototype, "tooltipContainerElement", { get: function () { return this._tooltipContainer.getElement(); }, enumerable: false, configurable: true }); TooltipService.prototype._bindEvents = function () { this._unbindEvents = this._eventEmitter.bindEvents([[constants_1.UIEvent.FULL_SCREEN_STATE_CHANGED, this.hide]], this); }; /** * Set new tooltip title */ TooltipService.prototype.setText = function (text) { this._tooltip.setText(text); }; /** * Show tooltip with title */ TooltipService.prototype.show = function (options) { // NOTE: its important to set tooltip text before update tooltip position styles if (options.element) { this._tooltip.setElement(options.element); } else { this._tooltip.setText(options.text); } this._tooltip.setStyle(this._tooltipContainer.getTooltipPositionStyles(options.position)); this._tooltip.show(); }; TooltipService.prototype.clearElement = function () { this._tooltip.clearElement(); }; /** * Hide tooltip */ TooltipService.prototype.hide = function () { this._tooltip.hide(); }; /** * Create tooltip reference which show/hide tooltip on hover and focus events * @param reference - reference node * @param options - tooltip title and other options * @returns tooltip reference instance */ TooltipService.prototype.createReference = function (reference, options) { return new tooltip_reference_1.default(reference, this, options); }; TooltipService.prototype.destroy = function () { this._unbindEvents(); this._tooltip.destroy(); this._tooltipContainer.destroy(); this._tooltip = null; this._tooltipContainer = null; this._eventEmitter = null; }; TooltipService.moduleName = 'tooltipService'; TooltipService.dependencies = ['eventEmitter']; return TooltipService; }()); exports.default = TooltipService; //# sourceMappingURL=tooltip-service.js.map