cx 26.2.1 → 26.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/build/charts/Chart.d.ts.map +1 -1
  2. package/build/charts/Chart.js +5 -4
  3. package/build/charts/ColumnBarBase.d.ts +3 -3
  4. package/build/charts/ColumnBarBase.d.ts.map +1 -1
  5. package/build/charts/ColumnBarBase.js +1 -1
  6. package/build/charts/Legend.d.ts.map +1 -1
  7. package/build/charts/Legend.js +11 -4
  8. package/build/charts/Marker.d.ts +3 -3
  9. package/build/charts/Marker.d.ts.map +1 -1
  10. package/build/charts/MarkerLine.d.ts +7 -7
  11. package/build/charts/MarkerLine.d.ts.map +1 -1
  12. package/build/charts/MarkerLine.js +14 -10
  13. package/build/charts/PieChart.d.ts +4 -4
  14. package/build/charts/PieChart.d.ts.map +1 -1
  15. package/build/charts/PieChart.js +36 -14
  16. package/build/charts/PieLabel.d.ts.map +1 -1
  17. package/build/charts/PieLabel.js +2 -1
  18. package/build/charts/RangeMarker.d.ts +3 -3
  19. package/build/charts/RangeMarker.d.ts.map +1 -1
  20. package/build/charts/RangeMarker.js +1 -1
  21. package/build/charts/axis/TimeAxis.d.ts +3 -3
  22. package/build/charts/axis/TimeAxis.d.ts.map +1 -1
  23. package/build/charts/axis/TimeAxis.js +70 -21
  24. package/build/charts/helpers/ValueAtFinder.d.ts +1 -1
  25. package/build/charts/helpers/ValueAtFinder.d.ts.map +1 -1
  26. package/build/charts/helpers/ValueAtFinder.js +5 -2
  27. package/build/data/StructuredSelector.js +3 -4
  28. package/build/data/createAccessorModelProxy.d.ts +6 -11
  29. package/build/data/createAccessorModelProxy.d.ts.map +1 -1
  30. package/build/data/createAccessorModelProxy.js +1 -3
  31. package/build/svg/Ellipse.d.ts +5 -4
  32. package/build/svg/Ellipse.d.ts.map +1 -1
  33. package/build/svg/Ellipse.js +9 -6
  34. package/build/svg/Line.d.ts +1 -0
  35. package/build/svg/Line.d.ts.map +1 -1
  36. package/build/svg/Line.js +4 -1
  37. package/build/svg/Text.d.ts +12 -6
  38. package/build/svg/Text.d.ts.map +1 -1
  39. package/build/svg/Text.js +12 -4
  40. package/build/ui/Controller.d.ts +2 -0
  41. package/build/ui/Controller.d.ts.map +1 -1
  42. package/build/ui/Controller.js +3 -0
  43. package/build/ui/HoverSync.d.ts.map +1 -1
  44. package/build/ui/HoverSync.js +7 -2
  45. package/build/ui/Prop.d.ts +1 -1
  46. package/build/ui/Prop.d.ts.map +1 -1
  47. package/build/ui/Text.d.ts +3 -3
  48. package/build/ui/Text.d.ts.map +1 -1
  49. package/build/ui/Text.js +5 -5
  50. package/build/ui/adapter/GroupAdapter.d.ts.map +1 -1
  51. package/build/ui/adapter/GroupAdapter.js +20 -10
  52. package/build/ui/app/History.js +1 -1
  53. package/build/widgets/List.d.ts.map +1 -1
  54. package/build/widgets/List.js +6 -7
  55. package/build/widgets/drag-drop/DropZone.d.ts +3 -3
  56. package/build/widgets/drag-drop/DropZone.d.ts.map +1 -1
  57. package/build/widgets/form/Calendar.d.ts.map +1 -1
  58. package/build/widgets/form/Calendar.js +30 -11
  59. package/build/widgets/form/ColorField.d.ts.map +1 -1
  60. package/build/widgets/form/ColorField.js +16 -7
  61. package/build/widgets/form/DateTimeField.d.ts.map +1 -1
  62. package/build/widgets/form/DateTimeField.js +23 -10
  63. package/build/widgets/form/Field.d.ts +2 -0
  64. package/build/widgets/form/Field.d.ts.map +1 -1
  65. package/build/widgets/form/Field.js +11 -5
  66. package/build/widgets/form/LookupField.d.ts +1 -1
  67. package/build/widgets/form/LookupField.d.ts.map +1 -1
  68. package/build/widgets/form/LookupField.js +6 -6
  69. package/build/widgets/form/MonthField.d.ts.map +1 -1
  70. package/build/widgets/form/MonthField.js +15 -7
  71. package/build/widgets/form/MonthPicker.d.ts +1 -2
  72. package/build/widgets/form/MonthPicker.d.ts.map +1 -1
  73. package/build/widgets/form/MonthPicker.js +84 -41
  74. package/build/widgets/form/NumberField.d.ts +2 -0
  75. package/build/widgets/form/NumberField.d.ts.map +1 -1
  76. package/build/widgets/form/NumberField.js +45 -15
  77. package/build/widgets/form/TextField.d.ts +1 -9
  78. package/build/widgets/form/TextField.d.ts.map +1 -1
  79. package/build/widgets/form/TextField.js +1 -1
  80. package/build/widgets/grid/Grid.d.ts +2 -2
  81. package/build/widgets/grid/Grid.d.ts.map +1 -1
  82. package/build/widgets/grid/Grid.js +9 -4
  83. package/build/widgets/grid/Pagination.d.ts.map +1 -1
  84. package/build/widgets/grid/Pagination.js +4 -4
  85. package/build/widgets/grid/TreeNode.d.ts.map +1 -1
  86. package/build/widgets/grid/TreeNode.js +10 -2
  87. package/build/widgets/icons/folder.d.ts.map +1 -1
  88. package/build/widgets/icons/folder.js +1 -0
  89. package/build/widgets/icons/forward.d.ts.map +1 -1
  90. package/build/widgets/icons/forward.js +4 -3
  91. package/build/widgets/icons/loading.d.ts.map +1 -1
  92. package/build/widgets/icons/loading.js +6 -5
  93. package/build/widgets/icons/square.d.ts.map +1 -1
  94. package/build/widgets/icons/square.js +3 -3
  95. package/build/widgets/index.d.ts +3 -1
  96. package/build/widgets/index.d.ts.map +1 -1
  97. package/build/widgets/index.js +3 -1
  98. package/build/widgets/overlay/ContextMenu.d.ts.map +1 -1
  99. package/build/widgets/overlay/ContextMenu.js +2 -0
  100. package/build/widgets/overlay/Dropdown.d.ts +2 -1
  101. package/build/widgets/overlay/Dropdown.d.ts.map +1 -1
  102. package/build/widgets/overlay/Dropdown.js +75 -20
  103. package/build/widgets/overlay/MsgBox.d.ts +1 -0
  104. package/build/widgets/overlay/MsgBox.d.ts.map +1 -1
  105. package/build/widgets/overlay/MsgBox.js +2 -2
  106. package/build/widgets/overlay/Overlay.d.ts +32 -2
  107. package/build/widgets/overlay/Overlay.d.ts.map +1 -1
  108. package/build/widgets/overlay/Overlay.js +47 -16
  109. package/build/widgets/overlay/Toast.d.ts +1 -1
  110. package/build/widgets/overlay/Toast.d.ts.map +1 -1
  111. package/build/widgets/overlay/Toast.js +4 -1
  112. package/build/widgets/overlay/Tooltip.d.ts +6 -0
  113. package/build/widgets/overlay/Tooltip.d.ts.map +1 -1
  114. package/build/widgets/overlay/Tooltip.js +24 -9
  115. package/build/widgets/overlay/Window.d.ts.map +1 -1
  116. package/build/widgets/overlay/Window.js +24 -9
  117. package/dist/charts.css +325 -272
  118. package/dist/charts.js +11 -5
  119. package/dist/data.js +2 -2
  120. package/dist/manifest.js +892 -880
  121. package/dist/svg.css +14 -8
  122. package/dist/svg.js +9 -1
  123. package/dist/ui.js +29 -16
  124. package/dist/widgets.css +997 -294
  125. package/dist/widgets.js +317 -121
  126. package/package.json +1 -1
  127. package/src/charts/Bar.scss +13 -10
  128. package/src/charts/BarGraph.scss +31 -29
  129. package/src/charts/BubbleGraph.scss +11 -8
  130. package/src/charts/Chart.ts +5 -3
  131. package/src/charts/Column.scss +13 -10
  132. package/src/charts/ColumnBarBase.tsx +255 -230
  133. package/src/charts/ColumnGraph.scss +13 -11
  134. package/src/charts/Gridlines.scss +10 -8
  135. package/src/charts/Legend.scss +57 -50
  136. package/src/charts/Legend.tsx +257 -213
  137. package/src/charts/LegendEntry.scss +35 -29
  138. package/src/charts/LineGraph.scss +28 -25
  139. package/src/charts/Marker.scss +12 -10
  140. package/src/charts/Marker.tsx +3 -2
  141. package/src/charts/MarkerLine.scss +11 -8
  142. package/src/charts/MarkerLine.tsx +196 -177
  143. package/src/charts/PieChart.scss +12 -9
  144. package/src/charts/PieChart.tsx +717 -591
  145. package/src/charts/PieLabel.tsx +99 -81
  146. package/src/charts/Range.scss +11 -8
  147. package/src/charts/RangeMarker.tsx +204 -187
  148. package/src/charts/ScatterGraph.scss +12 -9
  149. package/src/charts/axis/Axis.scss +6 -5
  150. package/src/charts/axis/CategoryAxis.scss +10 -8
  151. package/src/charts/axis/NumericAxis.scss +9 -6
  152. package/src/charts/axis/TimeAxis.scss +9 -6
  153. package/src/charts/axis/TimeAxis.tsx +753 -637
  154. package/src/charts/axis/index.scss +4 -5
  155. package/src/charts/axis/variables.scss +4 -2
  156. package/src/charts/helpers/ValueAtFinder.ts +19 -5
  157. package/src/charts/index.scss +16 -19
  158. package/src/charts/maps.scss +0 -0
  159. package/src/charts/palette.scss +11 -31
  160. package/src/charts/palette.variables.scss +23 -0
  161. package/src/charts/variables.scss +35 -3
  162. package/src/data/StructuredSelector.ts +2 -2
  163. package/src/data/createAccessorModelProxy.ts +66 -74
  164. package/src/index.scss +5 -6
  165. package/src/maps.scss +5 -0
  166. package/src/svg/Ellipse.tsx +62 -55
  167. package/src/svg/Line.tsx +57 -42
  168. package/src/svg/Svg.scss +6 -6
  169. package/src/svg/Text.scss +19 -0
  170. package/src/svg/Text.tsx +172 -116
  171. package/src/svg/index.scss +3 -2
  172. package/src/svg/maps.scss +0 -0
  173. package/src/svg/variables.scss +0 -0
  174. package/src/ui/Container.spec.ts +59 -0
  175. package/src/ui/Controller.spec.tsx +30 -0
  176. package/src/ui/Controller.ts +5 -0
  177. package/src/ui/HoverSync.tsx +179 -147
  178. package/src/ui/Prop.ts +1 -1
  179. package/src/ui/Text.ts +12 -9
  180. package/src/ui/adapter/GroupAdapter.spec.ts +42 -0
  181. package/src/ui/adapter/GroupAdapter.ts +25 -14
  182. package/src/ui/app/History.ts +1 -1
  183. package/src/ui/index.scss +1 -1
  184. package/src/ui/layout/LabelsLeftLayout.scss +5 -7
  185. package/src/ui/layout/LabelsTopLayout.scss +4 -6
  186. package/src/ui/layout/index.scss +2 -3
  187. package/src/ui/maps.scss +0 -0
  188. package/src/ui/variables.scss +1 -2
  189. package/src/util/index.scss +4 -2
  190. package/src/util/maps.scss +1 -0
  191. package/src/util/scss/besm.scss +15 -0
  192. package/src/util/scss/calc.scss +103 -11
  193. package/src/util/scss/defaults.scss +24 -0
  194. package/src/util/scss/elements.scss +78 -0
  195. package/src/util/scss/global.scss +15 -0
  196. package/src/util/scss/include.scss +17 -9
  197. package/src/util/scss/index.scss +1 -9
  198. package/src/util/scss/maps.scss +2 -0
  199. package/src/util/scss/pad-size.scss +9 -0
  200. package/src/util/scss/padding.scss +6 -0
  201. package/src/util/scss/screen-size.scss +5 -0
  202. package/src/util/scss/variables.scss +6 -0
  203. package/src/util/variables.scss +1 -0
  204. package/src/variables.scss +5 -217
  205. package/src/widgets/Button.maps.scss +103 -0
  206. package/src/widgets/Button.scss +33 -9
  207. package/src/widgets/Button.variables.scss +8 -104
  208. package/src/widgets/CxCredit.scss +2 -0
  209. package/src/widgets/FlexBox.scss +16 -11
  210. package/src/widgets/Heading.scss +6 -0
  211. package/src/widgets/HighlightedSearchText.scss +8 -1
  212. package/src/widgets/Icon.scss +6 -0
  213. package/src/widgets/List.scss +7 -0
  214. package/src/widgets/List.tsx +6 -7
  215. package/src/widgets/ProgressBar.scss +9 -0
  216. package/src/widgets/Resizer.scss +9 -7
  217. package/src/widgets/Section.scss +53 -56
  218. package/src/widgets/animations.scss +4 -2
  219. package/src/widgets/box.scss +47 -0
  220. package/src/widgets/drag-drop/DragClone.scss +12 -4
  221. package/src/widgets/drag-drop/DragHandle.scss +12 -6
  222. package/src/widgets/drag-drop/DragSource.scss +12 -6
  223. package/src/widgets/drag-drop/DropZone.scss +9 -0
  224. package/src/widgets/drag-drop/DropZone.tsx +3 -3
  225. package/src/widgets/drag-drop/index.scss +4 -4
  226. package/src/widgets/drag-drop/maps.scss +7 -0
  227. package/src/widgets/drag-drop/variables.scss +8 -5
  228. package/src/widgets/form/Calendar.maps.scss +54 -0
  229. package/src/widgets/form/Calendar.scss +49 -11
  230. package/src/widgets/form/Calendar.tsx +755 -653
  231. package/src/widgets/form/Calendar.variables.scss +3 -46
  232. package/src/widgets/form/Checkbox.maps.scss +34 -0
  233. package/src/widgets/form/Checkbox.scss +14 -3
  234. package/src/widgets/form/Checkbox.variables.scss +4 -36
  235. package/src/widgets/form/ColorField.scss +21 -2
  236. package/src/widgets/form/ColorField.tsx +485 -431
  237. package/src/widgets/form/ColorPicker.maps.scss +21 -0
  238. package/src/widgets/form/ColorPicker.scss +26 -9
  239. package/src/widgets/form/ColorPicker.variables.scss +3 -16
  240. package/src/widgets/form/DateTimeField.scss +54 -21
  241. package/src/widgets/form/DateTimeField.tsx +697 -615
  242. package/src/widgets/form/DateTimePicker.scss +14 -4
  243. package/src/widgets/form/Field.maps.scss +122 -0
  244. package/src/widgets/form/Field.scss +54 -18
  245. package/src/widgets/form/Field.tsx +611 -504
  246. package/src/widgets/form/Field.variables.scss +46 -0
  247. package/src/widgets/form/HelpText.scss +8 -5
  248. package/src/widgets/form/Label.scss +10 -3
  249. package/src/widgets/form/LookupField.maps.scss +26 -0
  250. package/src/widgets/form/LookupField.scss +54 -24
  251. package/src/widgets/form/LookupField.tsx +25 -21
  252. package/src/widgets/form/MonthField.scss +48 -26
  253. package/src/widgets/form/MonthField.tsx +645 -567
  254. package/src/widgets/form/MonthPicker.maps.scss +50 -0
  255. package/src/widgets/form/MonthPicker.scss +44 -35
  256. package/src/widgets/form/MonthPicker.tsx +954 -724
  257. package/src/widgets/form/MonthPicker.variables.scss +24 -0
  258. package/src/widgets/form/NumberField.scss +19 -2
  259. package/src/widgets/form/NumberField.tsx +576 -466
  260. package/src/widgets/form/Radio.maps.scss +36 -0
  261. package/src/widgets/form/Radio.scss +12 -2
  262. package/src/widgets/form/Radio.variables.scss +3 -42
  263. package/src/widgets/form/Select.scss +25 -9
  264. package/src/widgets/form/Slider.scss +23 -14
  265. package/src/widgets/form/Switch.scss +18 -8
  266. package/src/widgets/form/TextArea.scss +14 -1
  267. package/src/widgets/form/TextField.scss +24 -3
  268. package/src/widgets/form/TextField.tsx +9 -21
  269. package/src/widgets/form/UploadButton.scss +14 -6
  270. package/src/widgets/form/ValidationError.scss +10 -6
  271. package/src/widgets/form/Wheel.scss +14 -4
  272. package/src/widgets/form/index.scss +22 -24
  273. package/src/widgets/form/maps.scss +81 -0
  274. package/src/widgets/form/variables.scss +111 -355
  275. package/src/widgets/grid/Grid.scss +19 -2
  276. package/src/widgets/grid/Grid.spec.ts +42 -0
  277. package/src/widgets/grid/Grid.tsx +15 -7
  278. package/src/widgets/grid/Pagination.scss +11 -2
  279. package/src/widgets/grid/Pagination.tsx +110 -102
  280. package/src/widgets/grid/TreeNode.scss +25 -8
  281. package/src/widgets/grid/TreeNode.tsx +127 -116
  282. package/src/widgets/grid/index.scss +3 -4
  283. package/src/widgets/grid/maps.scss +110 -0
  284. package/src/widgets/grid/variables.scss +48 -137
  285. package/src/widgets/icons/folder.tsx +1 -2
  286. package/src/widgets/icons/forward.tsx +23 -20
  287. package/src/widgets/icons/loading.tsx +22 -19
  288. package/src/widgets/icons/square.tsx +20 -17
  289. package/src/widgets/index.scss +16 -16
  290. package/src/widgets/index.ts +63 -58
  291. package/src/widgets/lists.scss +42 -0
  292. package/src/widgets/maps.scss +139 -0
  293. package/src/widgets/nav/Link.scss +14 -1
  294. package/src/widgets/nav/Menu.scss +13 -7
  295. package/src/widgets/nav/Menu.variables.scss +1 -12
  296. package/src/widgets/nav/MenuItem.scss +21 -6
  297. package/src/widgets/nav/Scroller.scss +11 -2
  298. package/src/widgets/nav/Tab.maps.scss +78 -0
  299. package/src/widgets/nav/Tab.scss +12 -6
  300. package/src/widgets/nav/Tab.variables.scss +7 -76
  301. package/src/widgets/nav/cover.scss +6 -4
  302. package/src/widgets/nav/index.scss +6 -6
  303. package/src/widgets/nav/maps.scss +32 -0
  304. package/src/widgets/nav/variables.scss +4 -11
  305. package/src/widgets/overlay/ContextMenu.ts +3 -0
  306. package/src/widgets/overlay/Dropdown.scss +47 -16
  307. package/src/widgets/overlay/Dropdown.tsx +851 -676
  308. package/src/widgets/overlay/MsgBox.tsx +125 -111
  309. package/src/widgets/overlay/Overlay.scss +60 -40
  310. package/src/widgets/overlay/Overlay.tsx +948 -800
  311. package/src/widgets/overlay/Toast.scss +42 -34
  312. package/src/widgets/overlay/Toast.ts +11 -1
  313. package/src/widgets/overlay/Tooltip.scss +27 -96
  314. package/src/widgets/overlay/Tooltip.tsx +376 -309
  315. package/src/widgets/overlay/Window.maps.scss +51 -0
  316. package/src/widgets/overlay/Window.scss +17 -17
  317. package/src/widgets/overlay/Window.tsx +291 -236
  318. package/src/widgets/overlay/Window.variables.scss +2 -43
  319. package/src/widgets/overlay/index.d.ts +11 -11
  320. package/src/widgets/overlay/index.scss +6 -15
  321. package/src/widgets/overlay/maps.scss +44 -0
  322. package/src/widgets/overlay/variables.scss +11 -42
  323. package/src/widgets/variables.scss +33 -117
  324. package/src/global.scss +0 -14
@@ -1,171 +1,207 @@
1
1
  /** @jsxImportSource react */
2
2
  import { Widget, VDOM } from "../../ui/Widget";
3
- import { Dropdown, DropdownBase, DropdownConfig, DropdownInstance } from "./Dropdown";
3
+ import {
4
+ Dropdown,
5
+ DropdownBase,
6
+ DropdownConfig,
7
+ DropdownInstance,
8
+ } from "./Dropdown";
4
9
  import { debug, tooltipsFlag } from "../../util/Debug";
5
10
  import { isNonEmptyArray } from "../../util/isNonEmptyArray";
6
11
  import { ReadOnlyDataView } from "../../data/ReadOnlyDataView";
7
12
  import { isTouchEvent } from "../../util/isTouchEvent";
8
13
  import { shallowEquals } from "../../util/shallowEquals";
9
14
  import { isSelector } from "../../data/isSelector";
10
- import { TooltipConfig, TooltipParentInstance, TooltipProp, wireTooltipOps } from "./tooltip-ops";
15
+ import {
16
+ TooltipConfig,
17
+ TooltipParentInstance,
18
+ TooltipProp,
19
+ wireTooltipOps,
20
+ } from "./tooltip-ops";
11
21
  import { getCursorPos } from "./captureMouse";
12
22
  import { RenderingContext } from "../../ui/RenderingContext";
13
23
  import { StringProp, BooleanProp } from "../../ui/Prop";
14
24
  import { Instance } from "../../ui/Instance";
25
+ import { OverlayOpenOptions } from "./Overlay";
26
+ import { View } from "../../data/View";
15
27
 
16
28
  export class TooltipInstance extends DropdownInstance<Tooltip> {
17
- tooltipComponent?: any;
18
- parentValidityCheckTimer?: NodeJS.Timeout;
19
- mouseOverTooltip?: boolean;
20
- mouseOverTarget?: boolean;
21
- trackMouse?: (e: MouseEvent) => void;
22
- dismissTooltip?: (() => void) | null;
23
- declare tooltipName: string;
24
- lastClickTime?: number;
25
- config?: TooltipConfig;
26
- update?: () => void;
27
- declare store: ReadOnlyDataView;
28
- declare parent: Instance & TooltipParentInstance;
29
+ tooltipComponent?: any;
30
+ parentValidityCheckTimer?: NodeJS.Timeout;
31
+ mouseOverTooltip?: boolean;
32
+ mouseOverTarget?: boolean;
33
+ trackMouse?: (e: MouseEvent) => void;
34
+ dismissTooltip?: (() => void) | null;
35
+ declare tooltipName: string;
36
+ lastClickTime?: number;
37
+ config?: TooltipConfig;
38
+ update?: () => void;
39
+ declare store: ReadOnlyDataView;
40
+ declare parent: Instance & TooltipParentInstance;
41
+ }
42
+
43
+ export interface TooltipOpenOptions extends OverlayOpenOptions {
44
+ onPipeUpdate?: (callback: () => boolean) => void;
29
45
  }
30
46
 
31
47
  export class TooltipBase<
32
- Config extends TooltipConfig = TooltipConfig,
33
- InstanceType extends TooltipInstance = TooltipInstance,
48
+ Config extends TooltipConfig = TooltipConfig,
49
+ InstanceType extends TooltipInstance = TooltipInstance,
34
50
  > extends DropdownBase<Config, InstanceType> {
35
- declare text?: StringProp;
36
- declare title?: StringProp;
37
- declare alwaysVisible?: BooleanProp;
38
- declare trackMouse?: boolean;
39
- declare trackMouseX?: boolean;
40
- declare trackMouseY?: boolean;
41
- declare touchBehavior?: string;
42
- declare globalMouseTracking?: boolean;
43
- declare mouseTrap?: boolean;
44
- declare createDelay?: number;
45
- declare baseClass: string;
46
-
47
- declareData(...args: any[]) {
48
- super.declareData(...args, {
49
- text: undefined,
50
- title: undefined,
51
- alwaysVisible: undefined,
52
- });
53
- }
54
-
55
- prepareData(context: RenderingContext, instance: InstanceType): void {
56
- let { data } = instance;
57
- data.stateMods = {
58
- ...data.stateMods,
59
- "mouse-trap": this.mouseTrap,
51
+ declare text?: StringProp;
52
+ declare title?: StringProp;
53
+ declare alwaysVisible?: BooleanProp;
54
+ declare trackMouse?: boolean;
55
+ declare trackMouseX?: boolean;
56
+ declare trackMouseY?: boolean;
57
+ declare touchBehavior?: string;
58
+ declare globalMouseTracking?: boolean;
59
+ declare mouseTrap?: boolean;
60
+ declare createDelay?: number;
61
+ declare baseClass: string;
62
+
63
+ declareData(...args: any[]) {
64
+ super.declareData(...args, {
65
+ text: undefined,
66
+ title: undefined,
67
+ alwaysVisible: undefined,
68
+ });
69
+ }
70
+
71
+ prepareData(context: RenderingContext, instance: InstanceType): void {
72
+ let { data } = instance;
73
+ data.stateMods = {
74
+ ...data.stateMods,
75
+ "mouse-trap": this.mouseTrap,
76
+ };
77
+ super.prepareData(context, instance);
78
+ }
79
+
80
+ renderContents(context: RenderingContext, instance: InstanceType): any {
81
+ let { data } = instance;
82
+ let { CSS, baseClass } = this;
83
+ return [
84
+ data.title && (
85
+ <div key="title" className={CSS.element(baseClass, "title")}>
86
+ {data.title}
87
+ </div>
88
+ ),
89
+ data.text,
90
+ ...super.renderContents(context, instance),
91
+ ];
92
+ }
93
+
94
+ initInstance(context: RenderingContext, instance: InstanceType): void {
95
+ super.initInstance(context, instance);
96
+
97
+ if (this.trackMouseX || this.trackMouseY) {
98
+ instance.trackMouse = (e: any) => {
99
+ let pos = getCursorPos(e);
100
+ instance.mousePosition = {
101
+ x: pos.clientX,
102
+ y: pos.clientY,
103
+ };
104
+ if (instance.tooltipComponent)
105
+ this.updateDropdownPosition(instance, instance.tooltipComponent);
60
106
  };
61
- super.prepareData(context, instance);
62
- }
63
-
64
- renderContents(context: RenderingContext, instance: InstanceType): any {
65
- let { data } = instance;
66
- let { CSS, baseClass } = this;
67
- return [
68
- data.title && (
69
- <div key="title" className={CSS.element(baseClass, "title")}>
70
- {data.title}
71
- </div>
72
- ),
73
- data.text,
74
- ...super.renderContents(context, instance),
75
- ];
76
- }
77
-
78
- initInstance(context: RenderingContext, instance: InstanceType): void {
79
- super.initInstance(context, instance);
80
-
81
- if (this.trackMouseX || this.trackMouseY) {
82
- instance.trackMouse = (e: any) => {
83
- let pos = getCursorPos(e);
84
- instance.mousePosition = {
85
- x: pos.clientX,
86
- y: pos.clientY,
87
- };
88
- if (instance.tooltipComponent) this.updateDropdownPosition(instance, instance.tooltipComponent);
89
- };
90
- }
91
- }
92
-
93
- overlayDidMount(instance: InstanceType, component: any): void {
94
- instance.tooltipComponent = component;
95
-
96
- super.overlayDidMount(instance, component);
97
-
98
- instance.parentValidityCheckTimer = setInterval(() => {
99
- if (this.relatedElement && !this.relatedElement.ownerDocument.body.contains(this.relatedElement)) {
100
- if (instance.dismissTooltip) {
101
- instance.dismissTooltip();
102
- instance.dismissTooltip = null;
103
- }
104
- } else {
105
- if (instance.tooltipComponent) this.updateDropdownPosition(instance, instance.tooltipComponent);
106
- }
107
- }, 500);
108
-
109
- if (instance.widget.globalMouseTracking && instance.trackMouse) {
110
- document.addEventListener("mousemove", instance.trackMouse);
111
- }
112
- }
107
+ }
108
+ }
109
+
110
+ overlayDidMount(instance: InstanceType, component: any): void {
111
+ instance.tooltipComponent = component;
113
112
 
114
- overlayWillUnmount(instance: InstanceType, component: any): void {
115
- clearInterval(instance.parentValidityCheckTimer);
116
- super.overlayWillUnmount(instance, component);
117
- instance.tooltipComponent = null;
113
+ super.overlayDidMount(instance, component);
118
114
 
119
- if (instance.widget.globalMouseTracking && instance.trackMouse) {
120
- document.removeEventListener("mousemove", instance.trackMouse);
115
+ instance.parentValidityCheckTimer = setInterval(() => {
116
+ if (
117
+ this.relatedElement &&
118
+ !this.relatedElement.ownerDocument.body.contains(this.relatedElement)
119
+ ) {
120
+ if (instance.dismissTooltip) {
121
+ instance.dismissTooltip();
122
+ instance.dismissTooltip = null;
123
+ }
124
+ } else {
125
+ if (instance.tooltipComponent)
126
+ this.updateDropdownPosition(instance, instance.tooltipComponent);
121
127
  }
122
- }
123
-
124
- handleMouseEnter(instance: InstanceType, component: any): void {
125
- instance.mouseOverTooltip = true;
126
- super.handleMouseEnter(instance, component);
127
- }
128
-
129
- handleMouseLeave(instance: InstanceType, component: any): void {
130
- instance.mouseOverTooltip = false;
131
- if (this.mouseTrap) this.handleMouseLeavesParent(instance);
132
- super.handleMouseLeave(instance, component);
133
- }
134
-
135
- handleMouseLeavesParent(instance: InstanceType): void {
136
- let timeout = this.mouseTrap ? 200 : 0;
137
- setTimeout(() => {
138
- if (!instance.mouseOverTarget && !(this.mouseTrap && instance.mouseOverTooltip)) this.dismissTooltip(instance);
139
- }, timeout);
140
- }
141
-
142
- dismissTooltip(instance: InstanceType): void {
143
- if (!instance || !instance.dismissTooltip) return;
128
+ }, 500);
129
+
130
+ if (instance.widget.globalMouseTracking && instance.trackMouse) {
131
+ document.addEventListener("mousemove", instance.trackMouse);
132
+ }
133
+ }
134
+
135
+ overlayWillUnmount(instance: InstanceType, component: any): void {
136
+ clearInterval(instance.parentValidityCheckTimer);
137
+ super.overlayWillUnmount(instance, component);
138
+ instance.tooltipComponent = null;
139
+
140
+ if (instance.widget.globalMouseTracking && instance.trackMouse) {
141
+ document.removeEventListener("mousemove", instance.trackMouse);
142
+ }
143
+ }
144
+
145
+ handleMouseEnter(instance: InstanceType, component: any): void {
146
+ instance.mouseOverTooltip = true;
147
+ super.handleMouseEnter(instance, component);
148
+ }
149
+
150
+ handleMouseLeave(instance: InstanceType, component: any): void {
151
+ instance.mouseOverTooltip = false;
152
+ if (this.mouseTrap) this.handleMouseLeavesParent(instance);
153
+ super.handleMouseLeave(instance, component);
154
+ }
155
+
156
+ handleMouseLeavesParent(instance: InstanceType): void {
157
+ let timeout = this.mouseTrap ? 200 : 0;
158
+ setTimeout(() => {
144
159
  if (
145
- instance.data &&
146
- instance.data.alwaysVisible &&
147
- this.relatedElement &&
148
- this.relatedElement.ownerDocument.body.contains(this.relatedElement)
160
+ !instance.mouseOverTarget &&
161
+ !(this.mouseTrap && instance.mouseOverTooltip)
149
162
  )
150
- return;
151
- instance.dismissTooltip();
152
- instance.dismissTooltip = null;
153
- }
154
-
155
- dismissAfterScroll(data: any, instance: InstanceType): void {
156
- this.dismissTooltip(instance);
157
- }
158
-
159
- checkVisible(context: RenderingContext, instance: InstanceType, data: any): boolean {
160
- if (!isNonEmptyArray(this.items) && !data.title && !data.text) return false;
161
- return super.checkVisible(context, instance, data);
162
- }
163
+ this.dismissTooltip(instance);
164
+ }, timeout);
165
+ }
166
+
167
+ dismissTooltip(instance: InstanceType): void {
168
+ if (!instance || !instance.dismissTooltip) return;
169
+ if (
170
+ instance.data &&
171
+ instance.data.alwaysVisible &&
172
+ this.relatedElement &&
173
+ this.relatedElement.ownerDocument.body.contains(this.relatedElement)
174
+ )
175
+ return;
176
+ instance.dismissTooltip();
177
+ instance.dismissTooltip = null;
178
+ }
179
+
180
+ dismissAfterScroll(data: any, instance: InstanceType): void {
181
+ this.dismissTooltip(instance);
182
+ }
183
+
184
+ checkVisible(
185
+ context: RenderingContext,
186
+ instance: InstanceType,
187
+ data: any,
188
+ ): boolean {
189
+ if (!isNonEmptyArray(this.items) && !data.title && !data.text) return false;
190
+ return super.checkVisible(context, instance, data);
191
+ }
192
+
193
+ open(
194
+ storeOrInstance?: View | Instance,
195
+ options?: TooltipOpenOptions,
196
+ ): () => void {
197
+ return super.open(storeOrInstance, options);
198
+ }
163
199
  }
164
200
 
165
201
  TooltipBase.prototype.baseClass = "tooltip";
166
202
  TooltipBase.prototype.offset = 8;
167
203
  TooltipBase.prototype.placementOrder =
168
- "right up down left up-right up-left right-up right-down down-right down-left left-up left-down";
204
+ "right up down left up-right up-left right-up right-down down-right down-left left-up left-down";
169
205
  TooltipBase.prototype.animate = true;
170
206
  TooltipBase.prototype.destroyDelay = 300;
171
207
  TooltipBase.prototype.createDelay = 200;
@@ -183,211 +219,242 @@ export class Tooltip extends TooltipBase {}
183
219
  Widget.alias("tooltip", Tooltip);
184
220
 
185
221
  interface TooltipHelperOptions {
186
- target?: HTMLElement;
187
- tooltipName?: string;
188
- data?: any;
222
+ target?: HTMLElement;
223
+ tooltipName?: string;
224
+ data?: any;
189
225
  }
190
226
 
191
227
  export function getTooltipInstance(
192
- e: MouseEvent | Element,
193
- parentInstance: Instance<any> & TooltipParentInstance,
194
- tooltip: TooltipProp | undefined,
195
- options: TooltipHelperOptions = {},
228
+ e: MouseEvent | Element,
229
+ parentInstance: Instance<any> & TooltipParentInstance,
230
+ tooltip: TooltipProp | undefined,
231
+ options: TooltipHelperOptions = {},
196
232
  ) {
197
- let target = options.target || (e instanceof Element ? e : e?.currentTarget) || e;
198
-
199
- debug(tooltipsFlag, "mouse-move", target, parentInstance);
200
-
201
- let name = options.tooltipName || "tooltip";
202
-
203
- if (!parentInstance.tooltips) parentInstance.tooltips = {};
204
- let tooltipInstance: TooltipInstance | null = parentInstance.tooltips[name] || null;
205
-
206
- //no tooltips on disabled elements
207
- if (parentInstance?.data.disabled) {
208
- if (tooltipInstance && tooltipInstance.dismissTooltip) tooltipInstance.dismissTooltip();
209
- return;
210
- }
211
-
212
- if (
213
- tooltipInstance &&
214
- (tooltipInstance.widget.relatedElement != target ||
215
- !shallowEquals(tooltipInstance.config, tooltip) ||
216
- tooltipInstance.store.store != parentInstance.store)
217
- ) {
218
- if (tooltipInstance.dismissTooltip) tooltipInstance.dismissTooltip();
219
- delete parentInstance.tooltips[name];
220
- tooltipInstance = null;
221
- }
222
-
223
- if (!tooltip || !target) return;
224
-
225
- if (!tooltipInstance) {
226
- let config: TooltipConfig = tooltip as TooltipConfig;
227
- if (!isTooltipConfig(tooltip)) {
228
- config = {
229
- text: tooltip as StringProp,
230
- };
231
- }
232
- let tooltipWidget = Tooltip.create({ relatedElement: target }, config);
233
- let store = new ReadOnlyDataView({
234
- store: parentInstance.store,
235
- });
236
- tooltipInstance = parentInstance.tooltips[name] = parentInstance.getDetachedChild(
237
- tooltipWidget,
238
- name,
239
- store,
233
+ let target =
234
+ options.target || (e instanceof Element ? e : e?.currentTarget) || e;
235
+
236
+ debug(tooltipsFlag, "mouse-move", target, parentInstance);
237
+
238
+ let name = options.tooltipName || "tooltip";
239
+
240
+ if (!parentInstance.tooltips) parentInstance.tooltips = {};
241
+ let tooltipInstance: TooltipInstance | null =
242
+ parentInstance.tooltips[name] || null;
243
+
244
+ //no tooltips on disabled elements
245
+ if (parentInstance?.data.disabled) {
246
+ if (tooltipInstance && tooltipInstance.dismissTooltip)
247
+ tooltipInstance.dismissTooltip();
248
+ return;
249
+ }
250
+
251
+ if (
252
+ tooltipInstance &&
253
+ (tooltipInstance.widget.relatedElement != target ||
254
+ !shallowEquals(tooltipInstance.config, tooltip) ||
255
+ tooltipInstance.store.store != parentInstance.store)
256
+ ) {
257
+ if (tooltipInstance.dismissTooltip) tooltipInstance.dismissTooltip();
258
+ delete parentInstance.tooltips[name];
259
+ tooltipInstance = null;
260
+ }
261
+
262
+ if (!tooltip || !target) return;
263
+
264
+ if (!tooltipInstance) {
265
+ let config: TooltipConfig = tooltip as TooltipConfig;
266
+ if (!isTooltipConfig(tooltip)) {
267
+ config = {
268
+ text: tooltip as StringProp,
269
+ };
270
+ }
271
+ let tooltipWidget = Tooltip.create({ relatedElement: target }, config);
272
+ let store = new ReadOnlyDataView({
273
+ store: parentInstance.store,
274
+ });
275
+ tooltipInstance = parentInstance.tooltips[name] =
276
+ parentInstance.getDetachedChild(
277
+ tooltipWidget,
278
+ name,
279
+ store,
240
280
  ) as TooltipInstance;
241
- tooltipInstance.config = config;
242
- tooltipInstance.tooltipName = name;
243
- tooltipInstance.init(new RenderingContext());
244
-
245
- if (config.alwaysVisible || config.trackMouse || config.trackMouseX || config.trackMouseY) {
246
- tooltipInstance.data = tooltipInstance.dataSelector!(store);
247
- }
248
- }
249
-
250
- return tooltipInstance;
281
+ tooltipInstance.config = config;
282
+ tooltipInstance.tooltipName = name;
283
+ tooltipInstance.init(new RenderingContext());
284
+
285
+ if (
286
+ config.alwaysVisible ||
287
+ config.trackMouse ||
288
+ config.trackMouseX ||
289
+ config.trackMouseY
290
+ ) {
291
+ tooltipInstance.data = tooltipInstance.dataSelector!(store);
292
+ }
293
+ }
294
+
295
+ return tooltipInstance;
251
296
  }
252
297
 
253
298
  function tooltipMouseMove(
254
- e: MouseEvent | Element,
255
- parentInstance: Instance<any> & TooltipParentInstance,
256
- tooltip: TooltipProp | undefined,
257
- options: TooltipHelperOptions = {},
299
+ e: MouseEvent | Element,
300
+ parentInstance: Instance<any> & TooltipParentInstance,
301
+ tooltip: TooltipProp | undefined,
302
+ options: TooltipHelperOptions = {},
258
303
  ) {
259
- let instance = getTooltipInstance(e, parentInstance, tooltip, options);
260
- if (!instance) return;
261
-
262
- if (isTouchEvent() && instance.widget.touchBehavior == "ignore") return false;
263
-
264
- let dirty = !shallowEquals(options.data, instance.store.data);
265
-
266
- instance.store.setData(options.data);
267
- instance.mouseOverTarget = true;
304
+ let instance = getTooltipInstance(e, parentInstance, tooltip, options);
305
+ if (!instance) return;
306
+
307
+ if (isTouchEvent() && instance.widget.touchBehavior == "ignore") return false;
308
+
309
+ let dirty = !shallowEquals(options.data, instance.store.data);
310
+
311
+ instance.store.setData(options.data);
312
+ instance.mouseOverTarget = true;
313
+
314
+ if (!instance.dismissTooltip) {
315
+ let canceled = false;
316
+ let dismiss = () => {
317
+ canceled = true;
318
+ };
319
+ let unsubscribeDismiss = instance.parent.subscribeOnDestroy(() => {
320
+ dismiss();
321
+ });
322
+ instance.dismissTooltip = () => {
323
+ if (instance.parent.tooltips![instance.tooltipName] === instance)
324
+ delete instance.parent.tooltips[instance.tooltipName];
325
+ unsubscribeDismiss();
326
+ dismiss();
327
+ instance.dismissTooltip = null;
328
+ };
329
+ instance.lastClickTime = Date.now();
330
+ setTimeout(() => {
331
+ let { relatedElement } = instance.widget;
332
+ if (
333
+ !canceled &&
334
+ instance.mouseOverTarget &&
335
+ relatedElement!.ownerDocument.body.contains(relatedElement!)
336
+ ) {
337
+ dismiss = instance.widget.open(instance, {
338
+ onPipeUpdate: (cb: () => void) => {
339
+ instance.update = cb;
340
+ },
341
+ });
342
+ } else {
343
+ instance.dismissTooltip = null;
344
+ }
345
+ }, instance.widget.createDelay);
346
+ } else {
347
+ if (isTouchEvent() && instance.widget.touchBehavior == "toggle") {
348
+ // ios fires mousemove events after touchend
349
+ if (Date.now() - (instance.lastClickTime ?? 0) > 50) {
350
+ instance.lastClickTime = Date.now();
351
+ instance.dismissTooltip();
352
+ instance.dismissTooltip = null;
353
+ }
354
+ } else if (dirty && instance.update) instance.update();
355
+ }
268
356
 
269
- if (!instance.dismissTooltip) {
270
- let canceled = false;
271
- let dismiss = () => {
272
- canceled = true;
273
- };
274
- let unsubscribeDismiss = instance.parent.subscribeOnDestroy(() => {
275
- dismiss();
276
- });
277
- instance.dismissTooltip = () => {
278
- if (instance.parent.tooltips![instance.tooltipName] === instance)
279
- delete instance.parent.tooltips[instance.tooltipName];
280
- unsubscribeDismiss();
281
- dismiss();
282
- instance.dismissTooltip = null;
283
- };
284
- instance.lastClickTime = Date.now();
285
- setTimeout(() => {
286
- let { relatedElement } = instance.widget;
287
- if (!canceled && instance.mouseOverTarget && relatedElement!.ownerDocument.body.contains(relatedElement!)) {
288
- dismiss = instance.widget.open(instance, {
289
- onPipeUpdate: (cb: () => void) => {
290
- instance.update = cb;
291
- },
292
- });
293
- } else {
294
- instance.dismissTooltip = null;
295
- }
296
- }, instance.widget.createDelay);
297
- } else {
298
- if (isTouchEvent() && instance.widget.touchBehavior == "toggle") {
299
- // ios fires mousemove events after touchend
300
- if (Date.now() - (instance.lastClickTime ?? 0) > 50) {
301
- instance.lastClickTime = Date.now();
302
- instance.dismissTooltip();
303
- instance.dismissTooltip = null;
304
- }
305
- } else if (dirty && instance.update) instance.update();
306
- }
307
-
308
- if (instance.trackMouse && isMouseEvent(e)) instance.trackMouse(e);
357
+ if (instance.trackMouse && isMouseEvent(e)) instance.trackMouse(e);
309
358
  }
310
359
 
311
360
  function isMouseEvent(e: MouseEvent | Element): e is MouseEvent {
312
- if (e instanceof Element) return false;
313
- return !!e;
361
+ if (e instanceof Element) return false;
362
+ return !!e;
314
363
  }
315
364
 
316
- function isTooltipConfig(tooltip: TooltipProp | undefined): tooltip is TooltipConfig {
317
- if (!tooltip) return false;
318
- if (isSelector(tooltip)) return false;
319
- return true;
365
+ function isTooltipConfig(
366
+ tooltip: TooltipProp | undefined,
367
+ ): tooltip is TooltipConfig {
368
+ if (!tooltip) return false;
369
+ if (isSelector(tooltip)) return false;
370
+ return true;
320
371
  }
321
372
 
322
373
  function tooltipMouseLeave(
323
- e: MouseEvent | Element,
324
- parentInstance: Instance<any> & TooltipParentInstance,
325
- tooltip: TooltipProp | undefined,
326
- options?: TooltipHelperOptions,
374
+ e: MouseEvent | Element,
375
+ parentInstance: Instance<any> & TooltipParentInstance,
376
+ tooltip: TooltipProp | undefined,
377
+ options?: TooltipHelperOptions,
327
378
  ) {
328
- let instance = getTooltipInstance(e, parentInstance, tooltip, options);
379
+ let instance = getTooltipInstance(e, parentInstance, tooltip, options);
329
380
 
330
- // do not process leave events twice even if called multiple times
331
- if (instance && instance.mouseOverTarget) {
332
- instance.mouseOverTarget = false;
333
- instance.widget.handleMouseLeavesParent(instance);
334
- }
381
+ // do not process leave events twice even if called multiple times
382
+ if (instance && instance.mouseOverTarget) {
383
+ instance.mouseOverTarget = false;
384
+ instance.widget.handleMouseLeavesParent(instance);
385
+ }
335
386
  }
336
387
 
337
388
  function tooltipParentDidMount(
338
- element: Element,
339
- parentInstance: Instance<any> & TooltipParentInstance,
340
- tooltip: TooltipProp | undefined,
341
- options?: TooltipHelperOptions,
389
+ element: Element,
390
+ parentInstance: Instance<any> & TooltipParentInstance,
391
+ tooltip: TooltipProp | undefined,
392
+ options?: TooltipHelperOptions,
342
393
  ) {
343
- if (isTooltipConfig(tooltip) && tooltip.alwaysVisible) {
344
- let instance = getTooltipInstance(element, parentInstance, tooltip, options);
345
- if (instance && instance.data.alwaysVisible) tooltipMouseMove(element, parentInstance, tooltip, options);
346
- }
394
+ if (isTooltipConfig(tooltip) && tooltip.alwaysVisible) {
395
+ let instance = getTooltipInstance(
396
+ element,
397
+ parentInstance,
398
+ tooltip,
399
+ options,
400
+ );
401
+ if (instance && instance.data.alwaysVisible)
402
+ tooltipMouseMove(element, parentInstance, tooltip, options);
403
+ }
347
404
  }
348
405
 
349
406
  function tooltipParentWillReceiveProps(
350
- element: Element,
351
- parentInstance: Instance<any> & TooltipParentInstance,
352
- tooltip: TooltipProp | undefined,
353
- options?: TooltipHelperOptions,
407
+ element: Element,
408
+ parentInstance: Instance<any> & TooltipParentInstance,
409
+ tooltip: TooltipProp | undefined,
410
+ options?: TooltipHelperOptions,
354
411
  ) {
355
- let instance = getTooltipInstance(element, parentInstance, tooltip, options);
356
- if (instance && options) {
357
- instance.store.setData(options.data);
358
- if (instance.update) instance.update();
359
- if (instance.mouseOverTarget || (instance.data && instance.data.alwaysVisible))
360
- tooltipMouseMove(element, parentInstance, tooltip, options);
361
- }
412
+ let instance = getTooltipInstance(element, parentInstance, tooltip, options);
413
+ if (instance && options) {
414
+ instance.store.setData(options.data);
415
+ if (instance.update) instance.update();
416
+ if (
417
+ instance.mouseOverTarget ||
418
+ (instance.data && instance.data.alwaysVisible)
419
+ )
420
+ tooltipMouseMove(element, parentInstance, tooltip, options);
421
+ }
362
422
  }
363
423
 
364
- function tooltipParentWillUnmount(parentInstance: Instance<any> & TooltipParentInstance) {
365
- if (parentInstance.tooltips) {
366
- for (let name in parentInstance.tooltips) {
367
- let instance = parentInstance.tooltips[name];
368
- instance.mouseOverTarget = false;
369
- if (instance.dismissTooltip) instance.dismissTooltip();
370
- }
371
- }
424
+ function tooltipParentWillUnmount(
425
+ parentInstance: Instance<any> & TooltipParentInstance,
426
+ ) {
427
+ if (parentInstance.tooltips) {
428
+ for (let name in parentInstance.tooltips) {
429
+ let instance = parentInstance.tooltips[name];
430
+ instance.mouseOverTarget = false;
431
+ if (instance.dismissTooltip) instance.dismissTooltip();
432
+ }
433
+ }
372
434
  }
373
435
 
374
436
  function tooltipParentDidUpdate(
375
- element: HTMLElement,
376
- parentInstance: Instance<any> & TooltipParentInstance,
377
- tooltip: TooltipProp | undefined,
437
+ element: HTMLElement,
438
+ parentInstance: Instance<any> & TooltipParentInstance,
439
+ tooltip: TooltipProp | undefined,
378
440
  ) {
379
- let instance = getTooltipInstance(element, parentInstance, tooltip);
380
- if (instance && instance.visible && instance.data?.alwaysVisible && instance.tooltipComponent)
381
- instance.widget.updateDropdownPosition(instance, instance.tooltipComponent);
441
+ let instance = getTooltipInstance(element, parentInstance, tooltip);
442
+ if (
443
+ instance &&
444
+ instance.visible &&
445
+ instance.data?.alwaysVisible &&
446
+ instance.tooltipComponent
447
+ )
448
+ instance.widget.updateDropdownPosition(instance, instance.tooltipComponent);
382
449
  }
383
450
 
384
451
  export function enableTooltips() {
385
- wireTooltipOps({
386
- tooltipMouseMove,
387
- tooltipMouseLeave,
388
- tooltipParentDidMount,
389
- tooltipParentWillReceiveProps,
390
- tooltipParentWillUnmount,
391
- tooltipParentDidUpdate,
392
- });
452
+ wireTooltipOps({
453
+ tooltipMouseMove,
454
+ tooltipMouseLeave,
455
+ tooltipParentDidMount,
456
+ tooltipParentWillReceiveProps,
457
+ tooltipParentWillUnmount,
458
+ tooltipParentDidUpdate,
459
+ });
393
460
  }