(event2)
| 20867 | return this._root || document.body; |
| 20868 | } |
| 20869 | _calculateTooltipPosition(event2) { |
| 20870 | const scheduler2 = this._scheduler; |
| 20871 | const domHelpers = scheduler2.$domHelpers; |
| 20872 | const viewport = this._getViewPortSize(); |
| 20873 | const tooltipNode = this.getNode(); |
| 20874 | const tooltip2 = { top: 0, left: 0, width: tooltipNode.offsetWidth, height: tooltipNode.offsetHeight, bottom: 0, right: 0 }; |
| 20875 | const offsetX = scheduler2.config.tooltip_offset_x; |
| 20876 | const offsetY = scheduler2.config.tooltip_offset_y; |
| 20877 | const container = document.body; |
| 20878 | const mouse = domHelpers.getRelativeEventPosition(event2, container); |
| 20879 | const containerPos = domHelpers.getNodePosition(container); |
| 20880 | mouse.y += containerPos.y; |
| 20881 | tooltip2.top = mouse.y; |
| 20882 | tooltip2.left = mouse.x; |
| 20883 | tooltip2.top += offsetY; |
| 20884 | tooltip2.left += offsetX; |
| 20885 | tooltip2.bottom = tooltip2.top + tooltip2.height; |
| 20886 | tooltip2.right = tooltip2.left + tooltip2.width; |
| 20887 | const scrollTop = window.scrollY + container.scrollTop; |
| 20888 | if (tooltip2.top < viewport.top - scrollTop) { |
| 20889 | tooltip2.top = viewport.top; |
| 20890 | tooltip2.bottom = tooltip2.top + tooltip2.height; |
| 20891 | } else if (tooltip2.bottom > viewport.bottom) { |
| 20892 | tooltip2.bottom = viewport.bottom; |
| 20893 | tooltip2.top = tooltip2.bottom - tooltip2.height; |
| 20894 | } |
| 20895 | if (tooltip2.left < viewport.left) { |
| 20896 | tooltip2.left = viewport.left; |
| 20897 | tooltip2.right = viewport.left + tooltip2.width; |
| 20898 | } else if (tooltip2.right > viewport.right) { |
| 20899 | tooltip2.right = viewport.right; |
| 20900 | tooltip2.left = tooltip2.right - tooltip2.width; |
| 20901 | } |
| 20902 | if (mouse.x >= tooltip2.left && mouse.x <= tooltip2.right) { |
| 20903 | tooltip2.left = mouse.x - tooltip2.width - offsetX; |
| 20904 | tooltip2.right = tooltip2.left + tooltip2.width; |
| 20905 | } |
| 20906 | if (mouse.y >= tooltip2.top && mouse.y <= tooltip2.bottom) { |
| 20907 | tooltip2.top = mouse.y - tooltip2.height - offsetY; |
| 20908 | tooltip2.bottom = tooltip2.top + tooltip2.height; |
| 20909 | } |
| 20910 | if (tooltip2.left < 0) { |
| 20911 | tooltip2.left = 0; |
| 20912 | } |
| 20913 | if (tooltip2.right < 0) { |
| 20914 | tooltip2.right = 0; |
| 20915 | } |
| 20916 | return tooltip2; |
| 20917 | } |
| 20918 | _getViewPortSize() { |
| 20919 | const scheduler2 = this._scheduler; |
| 20920 | const domHelpers = scheduler2.$domHelpers; |
no test coverage detected