UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

82 lines (79 loc) 2.74 kB
/** * DevExtreme (cjs/__internal/ui/m_tooltip.js) * Version: 24.2.6 * Build date: Mon Mar 17 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _component_registrator = _interopRequireDefault(require("../../core/component_registrator")); var _guid = _interopRequireDefault(require("../../core/guid")); var _renderer = _interopRequireDefault(require("../../core/renderer")); var _type = require("../../core/utils/type"); var _ui = _interopRequireDefault(require("../../ui/popover/ui.popover")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e } } function _extends() { return _extends = Object.assign ? Object.assign.bind() : function(n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) { ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]) } } return n }, _extends.apply(null, arguments) } const TOOLTIP_CLASS = "dx-tooltip"; const TOOLTIP_WRAPPER_CLASS = "dx-tooltip-wrapper"; class Tooltip extends _ui.default { _getDefaultOptions() { return _extends({}, super._getDefaultOptions(), { toolbarItems: [], showCloseButton: false, enableBodyScroll: true, showTitle: false, title: null, titleTemplate: null, onTitleRendered: null, bottomTemplate: null, preventScrollEvents: false, propagateOutsideClick: true }) } _render() { this.$element().addClass("dx-tooltip"); this.$wrapper().addClass("dx-tooltip-wrapper"); super._render() } _renderContent() { super._renderContent(); this._toggleAriaAttributes() } _toggleAriaDescription(showing) { const { target: target } = this.option(); const $target = (0, _renderer.default)(target); const label = showing ? this._contentId : void 0; if (!(0, _type.isWindow)($target.get(0))) { this.setAria("describedby", label, $target) } } _toggleAriaAttributes() { this._contentId = `dx-${new _guid.default}`; this.$overlayContent().attr({ id: this._contentId }); this._toggleAriaDescription(true) } }(0, _component_registrator.default)("dxTooltip", Tooltip); var _default = exports.default = Tooltip;