UNPKG

playable

Version:

Video player based on HTML5Video

83 lines 3.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var getTooltipPositionByReferenceElement_1 = (0, tslib_1.__importDefault)(require("./utils/getTooltipPositionByReferenceElement")); var SHOW_EVENTS = ['mouseenter', 'focus']; var HIDE_EVENTS = ['mouseleave', 'blur']; var TooltipReference = /** @class */ (function () { function TooltipReference(reference, tooltipService, options) { this._$reference = reference; this._options = options; this._tooltipService = tooltipService; this._eventListeners = []; this._bindEvents(); } TooltipReference.prototype._bindEvents = function () { var _this = this; SHOW_EVENTS.forEach(function (event) { var fn = function () { _this.show(); }; _this._eventListeners.push({ event: event, fn: fn }); _this._$reference.addEventListener(event, fn); }); HIDE_EVENTS.forEach(function (event) { var fn = function () { _this.hide(); }; _this._eventListeners.push({ event: event, fn: fn }); _this._$reference.addEventListener(event, fn); }); }; Object.defineProperty(TooltipReference.prototype, "isHidden", { get: function () { return this._tooltipService.isHidden; }, enumerable: false, configurable: true }); Object.defineProperty(TooltipReference.prototype, "isDisabled", { get: function () { return this._isDisabled; }, enumerable: false, configurable: true }); TooltipReference.prototype.show = function () { if (this._isDisabled) { return; } this._tooltipService.show({ text: this._options.text, element: this._options.element, position: (0, getTooltipPositionByReferenceElement_1.default)(this._$reference, this._tooltipService.tooltipContainerElement), }); }; TooltipReference.prototype.hide = function () { this._tooltipService.hide(); }; TooltipReference.prototype.setText = function (text) { this._options.text = text; this._tooltipService.setText(text); }; TooltipReference.prototype.disable = function () { this._isDisabled = true; }; TooltipReference.prototype.enable = function () { this._isDisabled = false; }; TooltipReference.prototype.destroy = function () { var _this = this; this._eventListeners.forEach(function (_a) { var event = _a.event, fn = _a.fn; _this._$reference.removeEventListener(event, fn); }); this._eventListeners = null; this._$reference = null; this._tooltipService = null; this._options = null; }; return TooltipReference; }()); exports.default = TooltipReference; //# sourceMappingURL=tooltip-reference.js.map