@amboss/design-system 1.15.0 → 1.15.2

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 (344) hide show
  1. package/package.json +1 -1
  2. package/build/cjs/build-tokens/_breakpoints.json.js +0 -10
  3. package/build/cjs/build-tokens/_icon_sizes_map.json.js +0 -5
  4. package/build/cjs/build-tokens/_zindex.json.js +0 -10
  5. package/build/cjs/build-tokens/assets/icons.json.js +0 -82
  6. package/build/cjs/build-tokens/assets/icons16.json.js +0 -87
  7. package/build/cjs/build-tokens/assets/logo.json.js +0 -7
  8. package/build/cjs/build-tokens/visualConfig.js +0 -1309
  9. package/build/cjs/scss/themes/dark.scss +0 -105
  10. package/build/cjs/scss/themes/light.scss +0 -105
  11. package/build/cjs/src/components/Badge/Badge.js +0 -63
  12. package/build/cjs/src/components/Box/Box.js +0 -89
  13. package/build/cjs/src/components/Button/Button.js +0 -272
  14. package/build/cjs/src/components/Callout/Callout.js +0 -103
  15. package/build/cjs/src/components/Card/Card.js +0 -69
  16. package/build/cjs/src/components/Card/CardBox.js +0 -23
  17. package/build/cjs/src/components/Card/CardHeader/CardHeader.js +0 -59
  18. package/build/cjs/src/components/Collapsible/Collapsible.js +0 -117
  19. package/build/cjs/src/components/Column/Columns.js +0 -147
  20. package/build/cjs/src/components/Container/Container.js +0 -63
  21. package/build/cjs/src/components/DataTable/DataTable.js +0 -187
  22. package/build/cjs/src/components/DataTable/TableBody.js +0 -161
  23. package/build/cjs/src/components/DataTable/TableCell.js +0 -45
  24. package/build/cjs/src/components/DataTable/TableHeader.js +0 -194
  25. package/build/cjs/src/components/DataTable/useDataTableSort.js +0 -42
  26. package/build/cjs/src/components/Divider/Divider.js +0 -68
  27. package/build/cjs/src/components/DropdownMenu/DropdownMenu.js +0 -227
  28. package/build/cjs/src/components/DropdownMenu/MenuItem.js +0 -103
  29. package/build/cjs/src/components/Form/Checkbox/Checkbox.js +0 -147
  30. package/build/cjs/src/components/Form/FormErrorMessages/FormErrorMessages.js +0 -27
  31. package/build/cjs/src/components/Form/FormField/FormField.js +0 -58
  32. package/build/cjs/src/components/Form/FormFieldGroup/FormFieldGroup.js +0 -55
  33. package/build/cjs/src/components/Form/FormLabelText/FormLabelText.js +0 -42
  34. package/build/cjs/src/components/Form/Input/Input.js +0 -186
  35. package/build/cjs/src/components/Form/PasswordInput/PasswordInput.js +0 -226
  36. package/build/cjs/src/components/Form/Radio/Radio.js +0 -138
  37. package/build/cjs/src/components/Form/RadioButton/RadioButton.js +0 -124
  38. package/build/cjs/src/components/Form/SegmentedControl/SegmentedControl.js +0 -131
  39. package/build/cjs/src/components/Form/SegmentedControl/SegmentedControlOption.js +0 -216
  40. package/build/cjs/src/components/Form/Select/Select.js +0 -291
  41. package/build/cjs/src/components/Form/Textarea/Textarea.js +0 -93
  42. package/build/cjs/src/components/Form/Toggle/Toggle.js +0 -179
  43. package/build/cjs/src/components/Form/ToggleButton/ToggleButton.js +0 -143
  44. package/build/cjs/src/components/Icon/Icon.js +0 -110
  45. package/build/cjs/src/components/Inline/Inline.js +0 -113
  46. package/build/cjs/src/components/Link/Link.js +0 -82
  47. package/build/cjs/src/components/LoadingSpinner/LoadingSpinner.js +0 -84
  48. package/build/cjs/src/components/Logo/Logo.js +0 -44
  49. package/build/cjs/src/components/MediaItem/MediaItem.js +0 -125
  50. package/build/cjs/src/components/MediaViewerBar/MediaViewerBar.js +0 -73
  51. package/build/cjs/src/components/Notification/Notification.js +0 -108
  52. package/build/cjs/src/components/Pagination/Pagination.js +0 -91
  53. package/build/cjs/src/components/Patterns/ButtonGroup/ButtonGroup.js +0 -44
  54. package/build/cjs/src/components/Patterns/Modal/Modal.js +0 -221
  55. package/build/cjs/src/components/PictogramButton/PictogramButton.js +0 -150
  56. package/build/cjs/src/components/Portal/Portal.js +0 -22
  57. package/build/cjs/src/components/ProgressBar/ProgressBar.js +0 -38
  58. package/build/cjs/src/components/RoundButton/RoundButton.js +0 -140
  59. package/build/cjs/src/components/SearchResult/SearchResult.js +0 -184
  60. package/build/cjs/src/components/SegmentedProgressBar/SegmentedProgressBar.js +0 -110
  61. package/build/cjs/src/components/SegmentedProgressBar/SegmentedProgressBarUtil.js +0 -42
  62. package/build/cjs/src/components/Stack/Stack.js +0 -80
  63. package/build/cjs/src/components/SubThemeProvider/SubThemeProvider.js +0 -55
  64. package/build/cjs/src/components/Tabs/Tabs.js +0 -137
  65. package/build/cjs/src/components/Tag/Tag.js +0 -90
  66. package/build/cjs/src/components/Tooltip/Tooltip.js +0 -275
  67. package/build/cjs/src/components/Tooltip/utils.js +0 -81
  68. package/build/cjs/src/components/Typography/Header/Header.js +0 -132
  69. package/build/cjs/src/components/Typography/StyledText/StyledText.js +0 -168
  70. package/build/cjs/src/components/Typography/Text/Text.js +0 -71
  71. package/build/cjs/src/components/Typography/TextClamped/TextClamped.js +0 -54
  72. package/build/cjs/src/components/VirtualScrollList/VirtualScrollList.js +0 -116
  73. package/build/cjs/src/components/VirtualScrollList/VirtualScrollListReducer.js +0 -131
  74. package/build/cjs/src/index.js +0 -136
  75. package/build/cjs/src/shared/ScreenReaderText.js +0 -26
  76. package/build/cjs/src/shared/flattenChildren.js +0 -33
  77. package/build/cjs/src/shared/informDeprecation.js +0 -12
  78. package/build/cjs/src/shared/mediaQueries.js +0 -68
  79. package/build/cjs/src/shared/useAutoPosition.js +0 -42
  80. package/build/cjs/src/shared/useDocument.js +0 -7
  81. package/build/cjs/src/shared/useHover.js +0 -26
  82. package/build/cjs/src/shared/useKeyboard.js +0 -43
  83. package/build/cjs/src/shared/useOnEscapePress.js +0 -52
  84. package/build/cjs/src/shared/useOutsideClick.js +0 -33
  85. package/build/cjs/src/shared/useWindow.js +0 -7
  86. package/build/esm/build-tokens/_breakpoints.json +0 -17
  87. package/build/esm/build-tokens/_breakpoints.json.js +0 -4
  88. package/build/esm/build-tokens/_breakpoints.json.js.map +0 -1
  89. package/build/esm/build-tokens/_colors.json +0 -868
  90. package/build/esm/build-tokens/_icon_sizes_map.json +0 -7
  91. package/build/esm/build-tokens/_icon_sizes_map.json.js +0 -4
  92. package/build/esm/build-tokens/_icon_sizes_map.json.js.map +0 -1
  93. package/build/esm/build-tokens/_sizes.json +0 -782
  94. package/build/esm/build-tokens/_subThemeType.d.ts +0 -1
  95. package/build/esm/build-tokens/_zindex.json +0 -17
  96. package/build/esm/build-tokens/_zindex.json.js +0 -4
  97. package/build/esm/build-tokens/_zindex.json.js.map +0 -1
  98. package/build/esm/build-tokens/assets/icons.json +0 -141
  99. package/build/esm/build-tokens/assets/icons.json.js +0 -4
  100. package/build/esm/build-tokens/assets/icons.json.js.map +0 -1
  101. package/build/esm/build-tokens/assets/icons16.json +0 -153
  102. package/build/esm/build-tokens/assets/icons16.json.js +0 -4
  103. package/build/esm/build-tokens/assets/icons16.json.js.map +0 -1
  104. package/build/esm/build-tokens/assets/logo.json +0 -3
  105. package/build/esm/build-tokens/assets/logo.json.js +0 -4
  106. package/build/esm/build-tokens/assets/logo.json.js.map +0 -1
  107. package/build/esm/build-tokens/visualConfig.d.ts +0 -757
  108. package/build/esm/build-tokens/visualConfig.js +0 -1308
  109. package/build/esm/build-tokens/visualConfig.js.map +0 -1
  110. package/build/esm/scss/themes/dark.scss +0 -105
  111. package/build/esm/scss/themes/light.scss +0 -105
  112. package/build/esm/src/components/Badge/Badge.d.ts +0 -11
  113. package/build/esm/src/components/Badge/Badge.js +0 -57
  114. package/build/esm/src/components/Badge/Badge.js.map +0 -1
  115. package/build/esm/src/components/Box/Box.d.ts +0 -35
  116. package/build/esm/src/components/Box/Box.js +0 -82
  117. package/build/esm/src/components/Box/Box.js.map +0 -1
  118. package/build/esm/src/components/Button/Button.d.ts +0 -31
  119. package/build/esm/src/components/Button/Button.js +0 -264
  120. package/build/esm/src/components/Button/Button.js.map +0 -1
  121. package/build/esm/src/components/Callout/Callout.d.ts +0 -14
  122. package/build/esm/src/components/Callout/Callout.js +0 -97
  123. package/build/esm/src/components/Callout/Callout.js.map +0 -1
  124. package/build/esm/src/components/Card/Card.d.ts +0 -16
  125. package/build/esm/src/components/Card/Card.js +0 -63
  126. package/build/esm/src/components/Card/Card.js.map +0 -1
  127. package/build/esm/src/components/Card/CardBox.d.ts +0 -6
  128. package/build/esm/src/components/Card/CardBox.js +0 -18
  129. package/build/esm/src/components/Card/CardBox.js.map +0 -1
  130. package/build/esm/src/components/Card/CardHeader/CardHeader.d.ts +0 -12
  131. package/build/esm/src/components/Card/CardHeader/CardHeader.js +0 -52
  132. package/build/esm/src/components/Card/CardHeader/CardHeader.js.map +0 -1
  133. package/build/esm/src/components/Collapsible/Collapsible.d.ts +0 -15
  134. package/build/esm/src/components/Collapsible/Collapsible.js +0 -110
  135. package/build/esm/src/components/Collapsible/Collapsible.js.map +0 -1
  136. package/build/esm/src/components/Column/Columns.d.ts +0 -45
  137. package/build/esm/src/components/Column/Columns.js +0 -141
  138. package/build/esm/src/components/Column/Columns.js.map +0 -1
  139. package/build/esm/src/components/Container/Container.d.ts +0 -11
  140. package/build/esm/src/components/Container/Container.js +0 -57
  141. package/build/esm/src/components/Container/Container.js.map +0 -1
  142. package/build/esm/src/components/DataTable/DataTable.d.ts +0 -58
  143. package/build/esm/src/components/DataTable/DataTable.js +0 -180
  144. package/build/esm/src/components/DataTable/DataTable.js.map +0 -1
  145. package/build/esm/src/components/DataTable/TableBody.d.ts +0 -9
  146. package/build/esm/src/components/DataTable/TableBody.js +0 -153
  147. package/build/esm/src/components/DataTable/TableBody.js.map +0 -1
  148. package/build/esm/src/components/DataTable/TableCell.d.ts +0 -15
  149. package/build/esm/src/components/DataTable/TableCell.js +0 -38
  150. package/build/esm/src/components/DataTable/TableCell.js.map +0 -1
  151. package/build/esm/src/components/DataTable/TableHeader.d.ts +0 -9
  152. package/build/esm/src/components/DataTable/TableHeader.js +0 -185
  153. package/build/esm/src/components/DataTable/TableHeader.js.map +0 -1
  154. package/build/esm/src/components/DataTable/index.d.ts +0 -4
  155. package/build/esm/src/components/DataTable/types.d.ts +0 -15
  156. package/build/esm/src/components/DataTable/useDataTableSort.d.ts +0 -14
  157. package/build/esm/src/components/DataTable/useDataTableSort.js +0 -41
  158. package/build/esm/src/components/DataTable/useDataTableSort.js.map +0 -1
  159. package/build/esm/src/components/Divider/Divider.d.ts +0 -6
  160. package/build/esm/src/components/Divider/Divider.js +0 -62
  161. package/build/esm/src/components/Divider/Divider.js.map +0 -1
  162. package/build/esm/src/components/DropdownMenu/DropdownMenu.d.ts +0 -35
  163. package/build/esm/src/components/DropdownMenu/DropdownMenu.js +0 -221
  164. package/build/esm/src/components/DropdownMenu/DropdownMenu.js.map +0 -1
  165. package/build/esm/src/components/DropdownMenu/MenuItem.d.ts +0 -19
  166. package/build/esm/src/components/DropdownMenu/MenuItem.js +0 -97
  167. package/build/esm/src/components/DropdownMenu/MenuItem.js.map +0 -1
  168. package/build/esm/src/components/Form/Checkbox/Checkbox.d.ts +0 -15
  169. package/build/esm/src/components/Form/Checkbox/Checkbox.js +0 -140
  170. package/build/esm/src/components/Form/Checkbox/Checkbox.js.map +0 -1
  171. package/build/esm/src/components/Form/FormErrorMessages/FormErrorMessages.d.ts +0 -6
  172. package/build/esm/src/components/Form/FormErrorMessages/FormErrorMessages.js +0 -22
  173. package/build/esm/src/components/Form/FormErrorMessages/FormErrorMessages.js.map +0 -1
  174. package/build/esm/src/components/Form/FormField/FormField.d.ts +0 -15
  175. package/build/esm/src/components/Form/FormField/FormField.js +0 -52
  176. package/build/esm/src/components/Form/FormField/FormField.js.map +0 -1
  177. package/build/esm/src/components/Form/FormFieldGroup/FormFieldGroup.d.ts +0 -11
  178. package/build/esm/src/components/Form/FormFieldGroup/FormFieldGroup.js +0 -49
  179. package/build/esm/src/components/Form/FormFieldGroup/FormFieldGroup.js.map +0 -1
  180. package/build/esm/src/components/Form/FormLabelText/FormLabelText.d.ts +0 -7
  181. package/build/esm/src/components/Form/FormLabelText/FormLabelText.js +0 -36
  182. package/build/esm/src/components/Form/FormLabelText/FormLabelText.js.map +0 -1
  183. package/build/esm/src/components/Form/Input/Input.d.ts +0 -54
  184. package/build/esm/src/components/Form/Input/Input.js +0 -178
  185. package/build/esm/src/components/Form/Input/Input.js.map +0 -1
  186. package/build/esm/src/components/Form/Input/index.d.ts +0 -2
  187. package/build/esm/src/components/Form/PasswordInput/PasswordInput.d.ts +0 -53
  188. package/build/esm/src/components/Form/PasswordInput/PasswordInput.js +0 -218
  189. package/build/esm/src/components/Form/PasswordInput/PasswordInput.js.map +0 -1
  190. package/build/esm/src/components/Form/PasswordInput/index.d.ts +0 -2
  191. package/build/esm/src/components/Form/Radio/Radio.d.ts +0 -14
  192. package/build/esm/src/components/Form/Radio/Radio.js +0 -131
  193. package/build/esm/src/components/Form/Radio/Radio.js.map +0 -1
  194. package/build/esm/src/components/Form/RadioButton/RadioButton.d.ts +0 -17
  195. package/build/esm/src/components/Form/RadioButton/RadioButton.js +0 -117
  196. package/build/esm/src/components/Form/RadioButton/RadioButton.js.map +0 -1
  197. package/build/esm/src/components/Form/SegmentedControl/SegmentedControl.d.ts +0 -31
  198. package/build/esm/src/components/Form/SegmentedControl/SegmentedControl.js +0 -124
  199. package/build/esm/src/components/Form/SegmentedControl/SegmentedControl.js.map +0 -1
  200. package/build/esm/src/components/Form/SegmentedControl/SegmentedControlOption.d.ts +0 -8
  201. package/build/esm/src/components/Form/SegmentedControl/SegmentedControlOption.js +0 -210
  202. package/build/esm/src/components/Form/SegmentedControl/SegmentedControlOption.js.map +0 -1
  203. package/build/esm/src/components/Form/Select/Select.d.ts +0 -23
  204. package/build/esm/src/components/Form/Select/Select.js +0 -284
  205. package/build/esm/src/components/Form/Select/Select.js.map +0 -1
  206. package/build/esm/src/components/Form/Textarea/Textarea.d.ts +0 -26
  207. package/build/esm/src/components/Form/Textarea/Textarea.js +0 -86
  208. package/build/esm/src/components/Form/Textarea/Textarea.js.map +0 -1
  209. package/build/esm/src/components/Form/Toggle/Toggle.d.ts +0 -18
  210. package/build/esm/src/components/Form/Toggle/Toggle.js +0 -172
  211. package/build/esm/src/components/Form/Toggle/Toggle.js.map +0 -1
  212. package/build/esm/src/components/Form/ToggleButton/ToggleButton.d.ts +0 -15
  213. package/build/esm/src/components/Form/ToggleButton/ToggleButton.js +0 -136
  214. package/build/esm/src/components/Form/ToggleButton/ToggleButton.js.map +0 -1
  215. package/build/esm/src/components/Icon/Icon.d.ts +0 -22
  216. package/build/esm/src/components/Icon/Icon.js +0 -104
  217. package/build/esm/src/components/Icon/Icon.js.map +0 -1
  218. package/build/esm/src/components/Inline/Inline.d.ts +0 -30
  219. package/build/esm/src/components/Inline/Inline.js +0 -107
  220. package/build/esm/src/components/Inline/Inline.js.map +0 -1
  221. package/build/esm/src/components/Link/Link.d.ts +0 -14
  222. package/build/esm/src/components/Link/Link.js +0 -75
  223. package/build/esm/src/components/Link/Link.js.map +0 -1
  224. package/build/esm/src/components/LoadingSpinner/LoadingSpinner.d.ts +0 -11
  225. package/build/esm/src/components/LoadingSpinner/LoadingSpinner.js +0 -78
  226. package/build/esm/src/components/LoadingSpinner/LoadingSpinner.js.map +0 -1
  227. package/build/esm/src/components/Logo/Logo.d.ts +0 -8
  228. package/build/esm/src/components/Logo/Logo.js +0 -38
  229. package/build/esm/src/components/Logo/Logo.js.map +0 -1
  230. package/build/esm/src/components/MediaItem/MediaItem.d.ts +0 -21
  231. package/build/esm/src/components/MediaItem/MediaItem.js +0 -119
  232. package/build/esm/src/components/MediaItem/MediaItem.js.map +0 -1
  233. package/build/esm/src/components/MediaViewerBar/MediaViewerBar.d.ts +0 -7
  234. package/build/esm/src/components/MediaViewerBar/MediaViewerBar.js +0 -67
  235. package/build/esm/src/components/MediaViewerBar/MediaViewerBar.js.map +0 -1
  236. package/build/esm/src/components/Notification/ExpandedContent.d.ts +0 -2
  237. package/build/esm/src/components/Notification/Notification.d.ts +0 -16
  238. package/build/esm/src/components/Notification/Notification.js +0 -102
  239. package/build/esm/src/components/Notification/Notification.js.map +0 -1
  240. package/build/esm/src/components/Pagination/Pagination.d.ts +0 -17
  241. package/build/esm/src/components/Pagination/Pagination.js +0 -86
  242. package/build/esm/src/components/Pagination/Pagination.js.map +0 -1
  243. package/build/esm/src/components/Patterns/ButtonGroup/ButtonGroup.d.ts +0 -15
  244. package/build/esm/src/components/Patterns/ButtonGroup/ButtonGroup.js +0 -39
  245. package/build/esm/src/components/Patterns/ButtonGroup/ButtonGroup.js.map +0 -1
  246. package/build/esm/src/components/Patterns/Modal/Modal.d.ts +0 -28
  247. package/build/esm/src/components/Patterns/Modal/Modal.js +0 -214
  248. package/build/esm/src/components/Patterns/Modal/Modal.js.map +0 -1
  249. package/build/esm/src/components/PictogramButton/PictogramButton.d.ts +0 -15
  250. package/build/esm/src/components/PictogramButton/PictogramButton.js +0 -143
  251. package/build/esm/src/components/PictogramButton/PictogramButton.js.map +0 -1
  252. package/build/esm/src/components/Portal/Portal.d.ts +0 -7
  253. package/build/esm/src/components/Portal/Portal.js +0 -16
  254. package/build/esm/src/components/Portal/Portal.js.map +0 -1
  255. package/build/esm/src/components/ProgressBar/ProgressBar.d.ts +0 -15
  256. package/build/esm/src/components/ProgressBar/ProgressBar.js +0 -33
  257. package/build/esm/src/components/ProgressBar/ProgressBar.js.map +0 -1
  258. package/build/esm/src/components/RoundButton/RoundButton.d.ts +0 -12
  259. package/build/esm/src/components/RoundButton/RoundButton.js +0 -133
  260. package/build/esm/src/components/RoundButton/RoundButton.js.map +0 -1
  261. package/build/esm/src/components/SearchResult/SearchResult.d.ts +0 -43
  262. package/build/esm/src/components/SearchResult/SearchResult.js +0 -178
  263. package/build/esm/src/components/SearchResult/SearchResult.js.map +0 -1
  264. package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBar.d.ts +0 -28
  265. package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBar.js +0 -104
  266. package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBar.js.map +0 -1
  267. package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBarUtil.d.ts +0 -10
  268. package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBarUtil.js +0 -40
  269. package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBarUtil.js.map +0 -1
  270. package/build/esm/src/components/ShadowWebComponent/ShadowWebComponent.d.ts +0 -13
  271. package/build/esm/src/components/Stack/Stack.d.ts +0 -20
  272. package/build/esm/src/components/Stack/Stack.js +0 -74
  273. package/build/esm/src/components/Stack/Stack.js.map +0 -1
  274. package/build/esm/src/components/SubThemeProvider/SubThemeProvider.d.ts +0 -8
  275. package/build/esm/src/components/SubThemeProvider/SubThemeProvider.js +0 -50
  276. package/build/esm/src/components/SubThemeProvider/SubThemeProvider.js.map +0 -1
  277. package/build/esm/src/components/Tabs/Tabs.d.ts +0 -28
  278. package/build/esm/src/components/Tabs/Tabs.js +0 -130
  279. package/build/esm/src/components/Tabs/Tabs.js.map +0 -1
  280. package/build/esm/src/components/Tag/Tag.d.ts +0 -18
  281. package/build/esm/src/components/Tag/Tag.js +0 -84
  282. package/build/esm/src/components/Tag/Tag.js.map +0 -1
  283. package/build/esm/src/components/Tooltip/Tooltip.d.ts +0 -23
  284. package/build/esm/src/components/Tooltip/Tooltip.js +0 -269
  285. package/build/esm/src/components/Tooltip/Tooltip.js.map +0 -1
  286. package/build/esm/src/components/Tooltip/utils.d.ts +0 -11
  287. package/build/esm/src/components/Tooltip/utils.js +0 -75
  288. package/build/esm/src/components/Tooltip/utils.js.map +0 -1
  289. package/build/esm/src/components/Typography/Header/Header.d.ts +0 -34
  290. package/build/esm/src/components/Typography/Header/Header.js +0 -122
  291. package/build/esm/src/components/Typography/Header/Header.js.map +0 -1
  292. package/build/esm/src/components/Typography/StyledText/StyledText.d.ts +0 -11
  293. package/build/esm/src/components/Typography/StyledText/StyledText.js +0 -161
  294. package/build/esm/src/components/Typography/StyledText/StyledText.js.map +0 -1
  295. package/build/esm/src/components/Typography/Text/Text.d.ts +0 -21
  296. package/build/esm/src/components/Typography/Text/Text.js +0 -65
  297. package/build/esm/src/components/Typography/Text/Text.js.map +0 -1
  298. package/build/esm/src/components/Typography/TextClamped/TextClamped.d.ts +0 -10
  299. package/build/esm/src/components/Typography/TextClamped/TextClamped.js +0 -47
  300. package/build/esm/src/components/Typography/TextClamped/TextClamped.js.map +0 -1
  301. package/build/esm/src/components/VirtualScrollList/VirtualScrollList.d.ts +0 -11
  302. package/build/esm/src/components/VirtualScrollList/VirtualScrollList.js +0 -110
  303. package/build/esm/src/components/VirtualScrollList/VirtualScrollList.js.map +0 -1
  304. package/build/esm/src/components/VirtualScrollList/VirtualScrollListReducer.d.ts +0 -36
  305. package/build/esm/src/components/VirtualScrollList/VirtualScrollListReducer.js +0 -130
  306. package/build/esm/src/components/VirtualScrollList/VirtualScrollListReducer.js.map +0 -1
  307. package/build/esm/src/index.d.ts +0 -53
  308. package/build/esm/src/index.js +0 -60
  309. package/build/esm/src/index.js.map +0 -1
  310. package/build/esm/src/shared/ScreenReaderText.d.ts +0 -5
  311. package/build/esm/src/shared/ScreenReaderText.js +0 -21
  312. package/build/esm/src/shared/ScreenReaderText.js.map +0 -1
  313. package/build/esm/src/shared/flattenChildren.d.ts +0 -11
  314. package/build/esm/src/shared/flattenChildren.js +0 -32
  315. package/build/esm/src/shared/flattenChildren.js.map +0 -1
  316. package/build/esm/src/shared/informDeprecation.d.ts +0 -1
  317. package/build/esm/src/shared/informDeprecation.js +0 -11
  318. package/build/esm/src/shared/informDeprecation.js.map +0 -1
  319. package/build/esm/src/shared/mediaQueries.d.ts +0 -14
  320. package/build/esm/src/shared/mediaQueries.js +0 -66
  321. package/build/esm/src/shared/mediaQueries.js.map +0 -1
  322. package/build/esm/src/shared/replaceDeprecated.d.ts +0 -1
  323. package/build/esm/src/shared/useAutoPosition.d.ts +0 -5
  324. package/build/esm/src/shared/useAutoPosition.js +0 -41
  325. package/build/esm/src/shared/useAutoPosition.js.map +0 -1
  326. package/build/esm/src/shared/useDocument.d.ts +0 -1
  327. package/build/esm/src/shared/useDocument.js +0 -6
  328. package/build/esm/src/shared/useDocument.js.map +0 -1
  329. package/build/esm/src/shared/useHover.d.ts +0 -2
  330. package/build/esm/src/shared/useHover.js +0 -25
  331. package/build/esm/src/shared/useHover.js.map +0 -1
  332. package/build/esm/src/shared/useKeyboard.d.ts +0 -17
  333. package/build/esm/src/shared/useKeyboard.js +0 -42
  334. package/build/esm/src/shared/useKeyboard.js.map +0 -1
  335. package/build/esm/src/shared/useOnEscapePress.d.ts +0 -2
  336. package/build/esm/src/shared/useOnEscapePress.js +0 -51
  337. package/build/esm/src/shared/useOnEscapePress.js.map +0 -1
  338. package/build/esm/src/shared/useOutsideClick.d.ts +0 -11
  339. package/build/esm/src/shared/useOutsideClick.js +0 -32
  340. package/build/esm/src/shared/useOutsideClick.js.map +0 -1
  341. package/build/esm/src/shared/useWindow.d.ts +0 -1
  342. package/build/esm/src/shared/useWindow.js +0 -6
  343. package/build/esm/src/shared/useWindow.js.map +0 -1
  344. package/build/esm/src/types/index.d.ts +0 -57
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- declare type BaseTagProps = {
3
- label: string;
4
- colorVariant?: "gray" | "blue";
5
- "data-e2e-test-id"?: string;
6
- };
7
- declare type ConditionalTagProps = {
8
- isRemovable?: false;
9
- onClear?: never;
10
- clearBtnAriaLabel?: never;
11
- } | {
12
- isRemovable: true;
13
- onClear: () => void;
14
- clearBtnAriaLabel?: string;
15
- };
16
- export declare type TagProps = BaseTagProps & ConditionalTagProps;
17
- export declare function Tag({ label, colorVariant, isRemovable, onClear, clearBtnAriaLabel, "data-e2e-test-id": dataE2eTestId, }: TagProps): React.ReactElement;
18
- export {};
@@ -1,84 +0,0 @@
1
- import _styled from '@emotion/styled/base';
2
- import React from 'react';
3
- import { PictogramButton } from '../PictogramButton/PictogramButton.js';
4
-
5
- const TagContainer = /*#__PURE__*/_styled("span", process.env.NODE_ENV === "production" ? {
6
- target: "e1i6narj2"
7
- } : {
8
- target: "e1i6narj2",
9
- label: "TagContainer"
10
- })(_ref => {
11
- let {
12
- theme,
13
- colorVariant,
14
- isRemovable
15
- } = _ref;
16
- return {
17
- display: "inline-flex",
18
- alignItems: "center",
19
- maxWidth: "200px",
20
- paddingLeft: theme.variables.size.spacing.xs,
21
- paddingRight: isRemovable ? theme.variables.size.spacing.zero : theme.variables.size.spacing.xs,
22
- paddingTop: isRemovable ? theme.variables.size.spacing.zero : theme.variables.size.spacing.xxs,
23
- paddingBottom: isRemovable ? theme.variables.size.spacing.zero : theme.variables.size.spacing.xxs,
24
- borderRadius: theme.variables.size.borderRadius.xs,
25
- backgroundColor: theme.values.color.tag.background[colorVariant],
26
- color: theme.values.color.tag.text[colorVariant],
27
- fontFamily: theme.variables.fontFamily.lato,
28
- fontSize: theme.variables.size.font.text.s,
29
- lineHeight: theme.variables.size.lineHeight.text.xs
30
- };
31
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhZy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUJxQiIsImZpbGUiOiJUYWcudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuXG50eXBlIEJhc2VUYWdQcm9wcyA9IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgY29sb3JWYXJpYW50PzogXCJncmF5XCIgfCBcImJsdWVcIjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xudHlwZSBDb25kaXRpb25hbFRhZ1Byb3BzID1cbiAgfCB7XG4gICAgICBpc1JlbW92YWJsZT86IGZhbHNlO1xuICAgICAgb25DbGVhcj86IG5ldmVyO1xuICAgICAgY2xlYXJCdG5BcmlhTGFiZWw/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaXNSZW1vdmFibGU6IHRydWU7XG4gICAgICBvbkNsZWFyOiAoKSA9PiB2b2lkO1xuICAgICAgY2xlYXJCdG5BcmlhTGFiZWw/OiBzdHJpbmc7XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgVGFnUHJvcHMgPSBCYXNlVGFnUHJvcHMgJiBDb25kaXRpb25hbFRhZ1Byb3BzO1xuXG5jb25zdCBUYWdDb250YWluZXIgPSBzdHlsZWQuc3BhbjxQYXJ0aWFsPFRhZ1Byb3BzPj4oXG4gICh7IHRoZW1lLCBjb2xvclZhcmlhbnQsIGlzUmVtb3ZhYmxlIH0pID0+ICh7XG4gICAgZGlzcGxheTogXCJpbmxpbmUtZmxleFwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgbWF4V2lkdGg6IFwiMjAwcHhcIixcbiAgICBwYWRkaW5nTGVmdDogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54cyxcbiAgICBwYWRkaW5nUmlnaHQ6IGlzUmVtb3ZhYmxlXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuemVyb1xuICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzLFxuICAgIHBhZGRpbmdUb3A6IGlzUmVtb3ZhYmxlXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuemVyb1xuICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4cyxcbiAgICBwYWRkaW5nQm90dG9tOiBpc1JlbW92YWJsZVxuICAgICAgPyB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnplcm9cbiAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54eHMsXG4gICAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHMsXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IudGFnLmJhY2tncm91bmRbY29sb3JWYXJpYW50XSxcbiAgICBjb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLnRhZy50ZXh0W2NvbG9yVmFyaWFudF0sXG4gICAgZm9udEZhbWlseTogdGhlbWUudmFyaWFibGVzLmZvbnRGYW1pbHkubGF0byxcbiAgICBmb250U2l6ZTogdGhlbWUudmFyaWFibGVzLnNpemUuZm9udC50ZXh0LnMsXG4gICAgbGluZUhlaWdodDogdGhlbWUudmFyaWFibGVzLnNpemUubGluZUhlaWdodC50ZXh0LnhzLFxuICB9KVxuKTtcblxuY29uc3QgVGFnTGFiZWwgPSBzdHlsZWQuc3BhbigoKSA9PiAoe1xuICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgdGV4dE92ZXJmbG93OiBcImVsbGlwc2lzXCIsXG4gIHdoaXRlU3BhY2U6IFwibm93cmFwXCIsXG59KSk7XG5cbmNvbnN0IENsZWFyQnV0dG9uID0gc3R5bGVkKFBpY3RvZ3JhbUJ1dHRvbik8UGFydGlhbDxUYWdQcm9wcz4+KFxuICAoeyB0aGVtZSwgY29sb3JWYXJpYW50IH0pID0+ICh7XG4gICAgYmFja2dyb3VuZENvbG9yOiBcInRyYW5zcGFyZW50XCIsXG4gICAgY29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci50YWcudGV4dFtjb2xvclZhcmlhbnRdLFxuICAgIFwiJjpob3ZlclwiOiB7XG4gICAgICBjb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLnRhZy50ZXh0W2NvbG9yVmFyaWFudF0sXG4gICAgfSxcbiAgfSlcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBUYWcoe1xuICBsYWJlbCxcbiAgY29sb3JWYXJpYW50ID0gXCJncmF5XCIsXG4gIGlzUmVtb3ZhYmxlID0gZmFsc2UsXG4gIG9uQ2xlYXIsXG4gIGNsZWFyQnRuQXJpYUxhYmVsLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFRhZ1Byb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgcmV0dXJuIChcbiAgICA8VGFnQ29udGFpbmVyXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgZGF0YS1kcy1pZD1cIlRhZ1wiXG4gICAgICBjb2xvclZhcmlhbnQ9e2NvbG9yVmFyaWFudH1cbiAgICAgIGlzUmVtb3ZhYmxlPXtpc1JlbW92YWJsZX1cbiAgICA+XG4gICAgICA8VGFnTGFiZWw+e2xhYmVsfTwvVGFnTGFiZWw+XG5cbiAgICAgIHtpc1JlbW92YWJsZSAmJiAoXG4gICAgICAgIDxDbGVhckJ1dHRvblxuICAgICAgICAgIGljb249XCJ4XCJcbiAgICAgICAgICBzaXplPVwieHNcIlxuICAgICAgICAgIGFyaWEtbGFiZWw9e2NsZWFyQnRuQXJpYUxhYmVsfVxuICAgICAgICAgIG9uQ2xpY2s9e29uQ2xlYXJ9XG4gICAgICAgICAgY29sb3JWYXJpYW50PXtjb2xvclZhcmlhbnR9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvVGFnQ29udGFpbmVyPlxuICApO1xufVxuIl19 */");
32
- const TagLabel = /*#__PURE__*/_styled("span", process.env.NODE_ENV === "production" ? {
33
- target: "e1i6narj1"
34
- } : {
35
- target: "e1i6narj1",
36
- label: "TagLabel"
37
- })(() => ({
38
- overflow: "hidden",
39
- textOverflow: "ellipsis",
40
- whiteSpace: "nowrap"
41
- }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhZy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0NpQiIsImZpbGUiOiJUYWcudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuXG50eXBlIEJhc2VUYWdQcm9wcyA9IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgY29sb3JWYXJpYW50PzogXCJncmF5XCIgfCBcImJsdWVcIjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xudHlwZSBDb25kaXRpb25hbFRhZ1Byb3BzID1cbiAgfCB7XG4gICAgICBpc1JlbW92YWJsZT86IGZhbHNlO1xuICAgICAgb25DbGVhcj86IG5ldmVyO1xuICAgICAgY2xlYXJCdG5BcmlhTGFiZWw/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaXNSZW1vdmFibGU6IHRydWU7XG4gICAgICBvbkNsZWFyOiAoKSA9PiB2b2lkO1xuICAgICAgY2xlYXJCdG5BcmlhTGFiZWw/OiBzdHJpbmc7XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgVGFnUHJvcHMgPSBCYXNlVGFnUHJvcHMgJiBDb25kaXRpb25hbFRhZ1Byb3BzO1xuXG5jb25zdCBUYWdDb250YWluZXIgPSBzdHlsZWQuc3BhbjxQYXJ0aWFsPFRhZ1Byb3BzPj4oXG4gICh7IHRoZW1lLCBjb2xvclZhcmlhbnQsIGlzUmVtb3ZhYmxlIH0pID0+ICh7XG4gICAgZGlzcGxheTogXCJpbmxpbmUtZmxleFwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgbWF4V2lkdGg6IFwiMjAwcHhcIixcbiAgICBwYWRkaW5nTGVmdDogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54cyxcbiAgICBwYWRkaW5nUmlnaHQ6IGlzUmVtb3ZhYmxlXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuemVyb1xuICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzLFxuICAgIHBhZGRpbmdUb3A6IGlzUmVtb3ZhYmxlXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuemVyb1xuICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4cyxcbiAgICBwYWRkaW5nQm90dG9tOiBpc1JlbW92YWJsZVxuICAgICAgPyB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnplcm9cbiAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54eHMsXG4gICAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHMsXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IudGFnLmJhY2tncm91bmRbY29sb3JWYXJpYW50XSxcbiAgICBjb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLnRhZy50ZXh0W2NvbG9yVmFyaWFudF0sXG4gICAgZm9udEZhbWlseTogdGhlbWUudmFyaWFibGVzLmZvbnRGYW1pbHkubGF0byxcbiAgICBmb250U2l6ZTogdGhlbWUudmFyaWFibGVzLnNpemUuZm9udC50ZXh0LnMsXG4gICAgbGluZUhlaWdodDogdGhlbWUudmFyaWFibGVzLnNpemUubGluZUhlaWdodC50ZXh0LnhzLFxuICB9KVxuKTtcblxuY29uc3QgVGFnTGFiZWwgPSBzdHlsZWQuc3BhbigoKSA9PiAoe1xuICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgdGV4dE92ZXJmbG93OiBcImVsbGlwc2lzXCIsXG4gIHdoaXRlU3BhY2U6IFwibm93cmFwXCIsXG59KSk7XG5cbmNvbnN0IENsZWFyQnV0dG9uID0gc3R5bGVkKFBpY3RvZ3JhbUJ1dHRvbik8UGFydGlhbDxUYWdQcm9wcz4+KFxuICAoeyB0aGVtZSwgY29sb3JWYXJpYW50IH0pID0+ICh7XG4gICAgYmFja2dyb3VuZENvbG9yOiBcInRyYW5zcGFyZW50XCIsXG4gICAgY29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci50YWcudGV4dFtjb2xvclZhcmlhbnRdLFxuICAgIFwiJjpob3ZlclwiOiB7XG4gICAgICBjb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLnRhZy50ZXh0W2NvbG9yVmFyaWFudF0sXG4gICAgfSxcbiAgfSlcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBUYWcoe1xuICBsYWJlbCxcbiAgY29sb3JWYXJpYW50ID0gXCJncmF5XCIsXG4gIGlzUmVtb3ZhYmxlID0gZmFsc2UsXG4gIG9uQ2xlYXIsXG4gIGNsZWFyQnRuQXJpYUxhYmVsLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFRhZ1Byb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgcmV0dXJuIChcbiAgICA8VGFnQ29udGFpbmVyXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgZGF0YS1kcy1pZD1cIlRhZ1wiXG4gICAgICBjb2xvclZhcmlhbnQ9e2NvbG9yVmFyaWFudH1cbiAgICAgIGlzUmVtb3ZhYmxlPXtpc1JlbW92YWJsZX1cbiAgICA+XG4gICAgICA8VGFnTGFiZWw+e2xhYmVsfTwvVGFnTGFiZWw+XG5cbiAgICAgIHtpc1JlbW92YWJsZSAmJiAoXG4gICAgICAgIDxDbGVhckJ1dHRvblxuICAgICAgICAgIGljb249XCJ4XCJcbiAgICAgICAgICBzaXplPVwieHNcIlxuICAgICAgICAgIGFyaWEtbGFiZWw9e2NsZWFyQnRuQXJpYUxhYmVsfVxuICAgICAgICAgIG9uQ2xpY2s9e29uQ2xlYXJ9XG4gICAgICAgICAgY29sb3JWYXJpYW50PXtjb2xvclZhcmlhbnR9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvVGFnQ29udGFpbmVyPlxuICApO1xufVxuIl19 */");
42
- const ClearButton = /*#__PURE__*/_styled(PictogramButton, process.env.NODE_ENV === "production" ? {
43
- target: "e1i6narj0"
44
- } : {
45
- target: "e1i6narj0",
46
- label: "ClearButton"
47
- })(_ref2 => {
48
- let {
49
- theme,
50
- colorVariant
51
- } = _ref2;
52
- return {
53
- backgroundColor: "transparent",
54
- color: theme.values.color.tag.text[colorVariant],
55
- "&:hover": {
56
- color: theme.values.color.tag.text[colorVariant]
57
- }
58
- };
59
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhZy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcURvQiIsImZpbGUiOiJUYWcudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuXG50eXBlIEJhc2VUYWdQcm9wcyA9IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgY29sb3JWYXJpYW50PzogXCJncmF5XCIgfCBcImJsdWVcIjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xudHlwZSBDb25kaXRpb25hbFRhZ1Byb3BzID1cbiAgfCB7XG4gICAgICBpc1JlbW92YWJsZT86IGZhbHNlO1xuICAgICAgb25DbGVhcj86IG5ldmVyO1xuICAgICAgY2xlYXJCdG5BcmlhTGFiZWw/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaXNSZW1vdmFibGU6IHRydWU7XG4gICAgICBvbkNsZWFyOiAoKSA9PiB2b2lkO1xuICAgICAgY2xlYXJCdG5BcmlhTGFiZWw/OiBzdHJpbmc7XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgVGFnUHJvcHMgPSBCYXNlVGFnUHJvcHMgJiBDb25kaXRpb25hbFRhZ1Byb3BzO1xuXG5jb25zdCBUYWdDb250YWluZXIgPSBzdHlsZWQuc3BhbjxQYXJ0aWFsPFRhZ1Byb3BzPj4oXG4gICh7IHRoZW1lLCBjb2xvclZhcmlhbnQsIGlzUmVtb3ZhYmxlIH0pID0+ICh7XG4gICAgZGlzcGxheTogXCJpbmxpbmUtZmxleFwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgbWF4V2lkdGg6IFwiMjAwcHhcIixcbiAgICBwYWRkaW5nTGVmdDogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54cyxcbiAgICBwYWRkaW5nUmlnaHQ6IGlzUmVtb3ZhYmxlXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuemVyb1xuICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzLFxuICAgIHBhZGRpbmdUb3A6IGlzUmVtb3ZhYmxlXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuemVyb1xuICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4cyxcbiAgICBwYWRkaW5nQm90dG9tOiBpc1JlbW92YWJsZVxuICAgICAgPyB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnplcm9cbiAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54eHMsXG4gICAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHMsXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IudGFnLmJhY2tncm91bmRbY29sb3JWYXJpYW50XSxcbiAgICBjb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLnRhZy50ZXh0W2NvbG9yVmFyaWFudF0sXG4gICAgZm9udEZhbWlseTogdGhlbWUudmFyaWFibGVzLmZvbnRGYW1pbHkubGF0byxcbiAgICBmb250U2l6ZTogdGhlbWUudmFyaWFibGVzLnNpemUuZm9udC50ZXh0LnMsXG4gICAgbGluZUhlaWdodDogdGhlbWUudmFyaWFibGVzLnNpemUubGluZUhlaWdodC50ZXh0LnhzLFxuICB9KVxuKTtcblxuY29uc3QgVGFnTGFiZWwgPSBzdHlsZWQuc3BhbigoKSA9PiAoe1xuICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgdGV4dE92ZXJmbG93OiBcImVsbGlwc2lzXCIsXG4gIHdoaXRlU3BhY2U6IFwibm93cmFwXCIsXG59KSk7XG5cbmNvbnN0IENsZWFyQnV0dG9uID0gc3R5bGVkKFBpY3RvZ3JhbUJ1dHRvbik8UGFydGlhbDxUYWdQcm9wcz4+KFxuICAoeyB0aGVtZSwgY29sb3JWYXJpYW50IH0pID0+ICh7XG4gICAgYmFja2dyb3VuZENvbG9yOiBcInRyYW5zcGFyZW50XCIsXG4gICAgY29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci50YWcudGV4dFtjb2xvclZhcmlhbnRdLFxuICAgIFwiJjpob3ZlclwiOiB7XG4gICAgICBjb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLnRhZy50ZXh0W2NvbG9yVmFyaWFudF0sXG4gICAgfSxcbiAgfSlcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBUYWcoe1xuICBsYWJlbCxcbiAgY29sb3JWYXJpYW50ID0gXCJncmF5XCIsXG4gIGlzUmVtb3ZhYmxlID0gZmFsc2UsXG4gIG9uQ2xlYXIsXG4gIGNsZWFyQnRuQXJpYUxhYmVsLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFRhZ1Byb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgcmV0dXJuIChcbiAgICA8VGFnQ29udGFpbmVyXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgZGF0YS1kcy1pZD1cIlRhZ1wiXG4gICAgICBjb2xvclZhcmlhbnQ9e2NvbG9yVmFyaWFudH1cbiAgICAgIGlzUmVtb3ZhYmxlPXtpc1JlbW92YWJsZX1cbiAgICA+XG4gICAgICA8VGFnTGFiZWw+e2xhYmVsfTwvVGFnTGFiZWw+XG5cbiAgICAgIHtpc1JlbW92YWJsZSAmJiAoXG4gICAgICAgIDxDbGVhckJ1dHRvblxuICAgICAgICAgIGljb249XCJ4XCJcbiAgICAgICAgICBzaXplPVwieHNcIlxuICAgICAgICAgIGFyaWEtbGFiZWw9e2NsZWFyQnRuQXJpYUxhYmVsfVxuICAgICAgICAgIG9uQ2xpY2s9e29uQ2xlYXJ9XG4gICAgICAgICAgY29sb3JWYXJpYW50PXtjb2xvclZhcmlhbnR9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvVGFnQ29udGFpbmVyPlxuICApO1xufVxuIl19 */");
60
- function Tag(_ref3) {
61
- let {
62
- label,
63
- colorVariant = "gray",
64
- isRemovable = false,
65
- onClear,
66
- clearBtnAriaLabel,
67
- "data-e2e-test-id": dataE2eTestId
68
- } = _ref3;
69
- return /*#__PURE__*/React.createElement(TagContainer, {
70
- "data-e2e-test-id": dataE2eTestId,
71
- "data-ds-id": "Tag",
72
- colorVariant: colorVariant,
73
- isRemovable: isRemovable
74
- }, /*#__PURE__*/React.createElement(TagLabel, null, label), isRemovable && /*#__PURE__*/React.createElement(ClearButton, {
75
- icon: "x",
76
- size: "xs",
77
- "aria-label": clearBtnAriaLabel,
78
- onClick: onClear,
79
- colorVariant: colorVariant
80
- }));
81
- }
82
-
83
- export { Tag };
84
- //# sourceMappingURL=Tag.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Tag.js","sources":["../../../../../src/components/Tag/Tag.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { PictogramButton } from \"../PictogramButton/PictogramButton\";\n\ntype BaseTagProps = {\n label: string;\n colorVariant?: \"gray\" | \"blue\";\n \"data-e2e-test-id\"?: string;\n};\ntype ConditionalTagProps =\n | {\n isRemovable?: false;\n onClear?: never;\n clearBtnAriaLabel?: never;\n }\n | {\n isRemovable: true;\n onClear: () => void;\n clearBtnAriaLabel?: string;\n };\n\nexport type TagProps = BaseTagProps & ConditionalTagProps;\n\nconst TagContainer = styled.span<Partial<TagProps>>(\n ({ theme, colorVariant, isRemovable }) => ({\n display: \"inline-flex\",\n alignItems: \"center\",\n maxWidth: \"200px\",\n paddingLeft: theme.variables.size.spacing.xs,\n paddingRight: isRemovable\n ? theme.variables.size.spacing.zero\n : theme.variables.size.spacing.xs,\n paddingTop: isRemovable\n ? theme.variables.size.spacing.zero\n : theme.variables.size.spacing.xxs,\n paddingBottom: isRemovable\n ? theme.variables.size.spacing.zero\n : theme.variables.size.spacing.xxs,\n borderRadius: theme.variables.size.borderRadius.xs,\n backgroundColor: theme.values.color.tag.background[colorVariant],\n color: theme.values.color.tag.text[colorVariant],\n fontFamily: theme.variables.fontFamily.lato,\n fontSize: theme.variables.size.font.text.s,\n lineHeight: theme.variables.size.lineHeight.text.xs,\n })\n);\n\nconst TagLabel = styled.span(() => ({\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n}));\n\nconst ClearButton = styled(PictogramButton)<Partial<TagProps>>(\n ({ theme, colorVariant }) => ({\n backgroundColor: \"transparent\",\n color: theme.values.color.tag.text[colorVariant],\n \"&:hover\": {\n color: theme.values.color.tag.text[colorVariant],\n },\n })\n);\n\nexport function Tag({\n label,\n colorVariant = \"gray\",\n isRemovable = false,\n onClear,\n clearBtnAriaLabel,\n \"data-e2e-test-id\": dataE2eTestId,\n}: TagProps): React.ReactElement {\n return (\n <TagContainer\n data-e2e-test-id={dataE2eTestId}\n data-ds-id=\"Tag\"\n colorVariant={colorVariant}\n isRemovable={isRemovable}\n >\n <TagLabel>{label}</TagLabel>\n\n {isRemovable && (\n <ClearButton\n icon=\"x\"\n size=\"xs\"\n aria-label={clearBtnAriaLabel}\n onClick={onClear}\n colorVariant={colorVariant}\n />\n )}\n </TagContainer>\n );\n}\n"],"names":["TagContainer","_styled","process","env","NODE_ENV","target","label","_ref","theme","colorVariant","isRemovable","display","alignItems","maxWidth","paddingLeft","variables","size","spacing","xs","paddingRight","zero","paddingTop","xxs","paddingBottom","borderRadius","backgroundColor","values","color","tag","background","text","fontFamily","lato","fontSize","font","s","lineHeight","TagLabel","overflow","textOverflow","whiteSpace","ClearButton","PictogramButton","_ref2","Tag","_ref3","onClear","clearBtnAriaLabel","dataE2eTestId","React","createElement","icon","onClick"],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import React, { MutableRefObject } from "react";
2
- export declare type BaseProps = {
3
- content: string;
4
- placement?: "auto" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right";
5
- portalContainer?: HTMLElement;
6
- "data-e2e-test-id"?: string;
7
- onVisibilityChange?: (isVisible: boolean) => void;
8
- };
9
- export declare type ConditionalProps = {
10
- externalTriggerRef?: never;
11
- children: React.ReactElement;
12
- } | {
13
- children?: never;
14
- externalTriggerRef: MutableRefObject<any>;
15
- };
16
- export declare type TooltipProps = BaseProps & ConditionalProps;
17
- export declare type TooltipPosition = {
18
- top: number;
19
- left: number;
20
- horizontalPlacement: "left" | "right" | "center";
21
- verticalPlacement: "top" | "bottom";
22
- };
23
- export declare function Tooltip({ placement, content, children, externalTriggerRef, portalContainer, "data-e2e-test-id": dataE2eTestId, onVisibilityChange, }: TooltipProps): React.ReactElement;
@@ -1,269 +0,0 @@
1
- import _styled from '@emotion/styled/base';
2
- import React, { useMemo, useState, useRef, useCallback, useEffect, useLayoutEffect } from 'react';
3
- import { keyframes } from '@emotion/react';
4
- import { createPortal } from 'react-dom';
5
- import { useDocument } from '../../shared/useDocument.js';
6
- import { useWindow } from '../../shared/useWindow.js';
7
- import { SubThemeProvider } from '../SubThemeProvider/SubThemeProvider.js';
8
- import { Text } from '../Typography/Text/Text.js';
9
- import zIndices from '../../../build-tokens/_zindex.json.js';
10
- import { ARROW_SIZE, ARROW_OFFSET, getTooltipPosition, ANIMATION_DISTANCE } from './utils.js';
11
-
12
- const ANIMATION_DURATION = 200;
13
- const SHOW_HIDE_DELAY = 200;
14
- const StyledContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
15
- target: "e2kei841"
16
- } : {
17
- target: "e2kei841",
18
- label: "StyledContainer"
19
- })(_ref => {
20
- let {
21
- theme,
22
- horizontalPlacement,
23
- verticalPlacement
24
- } = _ref;
25
- const animationDistance = verticalPlacement === "top" ? `${ANIMATION_DISTANCE}px` : `-${ANIMATION_DISTANCE}px`;
26
- const animation = keyframes({
27
- to: {
28
- opacity: 1,
29
- transform: horizontalPlacement === "center" ? `translate(-50%, ${animationDistance})` : `translateY(${animationDistance})`
30
- }
31
- });
32
- return {
33
- position: "absolute",
34
- zIndex: zIndices.tooltip.value,
35
- opacity: 0,
36
- animation: `${ANIMATION_DURATION}ms ease-out forwards ${animation}`,
37
- borderRadius: theme.variables.size.borderRadius.xs,
38
- backgroundColor: theme.values.color.background.primary.default,
39
- maxWidth: "224px",
40
- boxSizing: "border-box",
41
- padding: `${theme.variables.size.spacing.xs} ${theme.variables.size.spacing.s}`,
42
- ...(horizontalPlacement === "center" && {
43
- transform: "translate(-50%)"
44
- })
45
- };
46
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlFd0IiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtcbiAgdXNlU3RhdGUsXG4gIHVzZVJlZixcbiAgdXNlTGF5b3V0RWZmZWN0LFxuICB1c2VFZmZlY3QsXG4gIHVzZUNhbGxiYWNrLFxuICBNdXRhYmxlUmVmT2JqZWN0LFxuICB1c2VNZW1vLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyB1c2VEb2N1bWVudCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlRG9jdW1lbnRcIjtcbmltcG9ydCB7IHVzZVdpbmRvdyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlV2luZG93XCI7XG5pbXBvcnQgeyBTdWJUaGVtZVByb3ZpZGVyIH0gZnJvbSBcIi4uL1N1YlRoZW1lUHJvdmlkZXIvU3ViVGhlbWVQcm92aWRlclwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHpJbmRpY2VzIGZyb20gXCIuLi8uLi8uLi9idWlsZC10b2tlbnMvX3ppbmRleC5qc29uXCI7XG5cbmltcG9ydCB7XG4gIEFSUk9XX1NJWkUsXG4gIEFSUk9XX09GRlNFVCxcbiAgQU5JTUFUSU9OX0RJU1RBTkNFLFxuICBnZXRUb29sdGlwUG9zaXRpb24sXG59IGZyb20gXCIuL3V0aWxzXCI7XG5cbmV4cG9ydCB0eXBlIEJhc2VQcm9wcyA9IHtcbiAgLyogVG9vbHRpcCBjb250ZW50ICovXG4gIGNvbnRlbnQ6IHN0cmluZztcbiAgLyogUGxhY2VtZW50ICovXG4gIHBsYWNlbWVudD86XG4gICAgfCBcImF1dG9cIlxuICAgIHwgXCJ0b3BcIlxuICAgIHwgXCJib3R0b21cIlxuICAgIHwgXCJ0b3AtbGVmdFwiXG4gICAgfCBcInRvcC1yaWdodFwiXG4gICAgfCBcImJvdHRvbS1sZWZ0XCJcbiAgICB8IFwiYm90dG9tLXJpZ2h0XCI7XG4gIC8qIEN1c3RvbSBwb3J0YWwgY29udGFpbmVyIHRvIHJlbmRlciB0b29sdGlwIGludG8gKi9cbiAgcG9ydGFsQ29udGFpbmVyPzogSFRNTEVsZW1lbnQ7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiB0b29sdGlwIGFwcGVhcnMgYW5kIGRpc2FwcGVhcnMgKi9cbiAgb25WaXNpYmlsaXR5Q2hhbmdlPzogKGlzVmlzaWJsZTogYm9vbGVhbikgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIGV4dGVybmFsVHJpZ2dlclJlZj86IG5ldmVyO1xuICAgICAgLyogVHJpZ2dlciBlbGVtZW50IC0gd3JhcCB0cmlnZ2VyIGVsZW1lbnQgd2l0aGluIFRvb2x0aXAgLSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgdHJpZ2dlciBwcm9wICovXG4gICAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICAgIH1cbiAgfCB7XG4gICAgICBjaGlsZHJlbj86IG5ldmVyO1xuICAgICAgLyogVHJpZ2dlciBlbGVtZW50IHJlZiAtIHBhc3MgaW4gYW4gZXh0ZXJuYWwgdHJpZ2dlciBlbGVtZW50ICovXG4gICAgICBleHRlcm5hbFRyaWdnZXJSZWY6IE11dGFibGVSZWZPYmplY3Q8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBUb29sdGlwUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5leHBvcnQgdHlwZSBUb29sdGlwUG9zaXRpb24gPSB7XG4gIHRvcDogbnVtYmVyO1xuICBsZWZ0OiBudW1iZXI7XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFwibGVmdFwiIHwgXCJyaWdodFwiIHwgXCJjZW50ZXJcIjtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFwidG9wXCIgfCBcImJvdHRvbVwiO1xufTtcblxudHlwZSBTdHlsZWRDb250YWluZXJQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogVG9vbHRpcFBvc2l0aW9uW1wiaG9yaXpvbnRhbFBsYWNlbWVudFwiXTtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFRvb2x0aXBQb3NpdGlvbltcInZlcnRpY2FsUGxhY2VtZW50XCJdO1xufTtcblxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OID0gMjAwO1xuY29uc3QgU0hPV19ISURFX0RFTEFZID0gMjAwO1xuXG5jb25zdCBTdHlsZWRDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZENvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGhvcml6b250YWxQbGFjZW1lbnQsIHZlcnRpY2FsUGxhY2VtZW50IH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb25EaXN0YW5jZSA9XG4gICAgICB2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIlxuICAgICAgICA/IGAke0FOSU1BVElPTl9ESVNUQU5DRX1weGBcbiAgICAgICAgOiBgLSR7QU5JTUFUSU9OX0RJU1RBTkNFfXB4YDtcbiAgICBjb25zdCBhbmltYXRpb24gPSBrZXlmcmFtZXMoe1xuICAgICAgdG86IHtcbiAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgdHJhbnNmb3JtOlxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCJcbiAgICAgICAgICAgID8gYHRyYW5zbGF0ZSgtNTAlLCAke2FuaW1hdGlvbkRpc3RhbmNlfSlgXG4gICAgICAgICAgICA6IGB0cmFuc2xhdGVZKCR7YW5pbWF0aW9uRGlzdGFuY2V9KWAsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgICB6SW5kZXg6IHpJbmRpY2VzLnRvb2x0aXAudmFsdWUsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgYW5pbWF0aW9uOiBgJHtBTklNQVRJT05fRFVSQVRJT059bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHthbmltYXRpb259YCxcbiAgICAgIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHQsXG4gICAgICBtYXhXaWR0aDogXCIyMjRweFwiLFxuICAgICAgYm94U2l6aW5nOiBcImJvcmRlci1ib3hcIixcbiAgICAgIHBhZGRpbmc6IGAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHN9ICR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zfWAsXG5cbiAgICAgIC4uLihob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImNlbnRlclwiICYmIHtcbiAgICAgICAgdHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtNTAlKVwiLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRBcnJvd1Byb3BzID0ge1xuICB2ZXJ0aWNhbFBsYWNlbWVudDogVG9vbHRpcFBvc2l0aW9uW1widmVydGljYWxQbGFjZW1lbnRcIl07XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFRvb2x0aXBQb3NpdGlvbltcImhvcml6b250YWxQbGFjZW1lbnRcIl07XG59O1xuXG5jb25zdCBTdHlsZWRBcnJvdyA9IHN0eWxlZC5kaXY8U3R5bGVkQXJyb3dQcm9wcz4oXG4gICh7IHRoZW1lLCB2ZXJ0aWNhbFBsYWNlbWVudCwgaG9yaXpvbnRhbFBsYWNlbWVudCB9KSA9PiAoe1xuICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgd2lkdGg6IDAsXG4gICAgaGVpZ2h0OiAwLFxuICAgIGJvcmRlckxlZnQ6IGAke0FSUk9XX1NJWkV9cHggc29saWQgdHJhbnNwYXJlbnRgLFxuICAgIGJvcmRlclJpZ2h0OiBgJHtBUlJPV19TSVpFfXB4IHNvbGlkIHRyYW5zcGFyZW50YCxcblxuICAgIC4uLih2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIiAmJiB7XG4gICAgICB0b3A6IFwiMTAwJVwiLFxuICAgICAgYm9yZGVyVG9wOiBgJHtBUlJPV19TSVpFfXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeS5kZWZhdWx0fWAsXG4gICAgfSksXG5cbiAgICAuLi4odmVydGljYWxQbGFjZW1lbnQgPT09IFwiYm90dG9tXCIgJiYge1xuICAgICAgdG9wOiBgLSR7QVJST1dfU0laRX1weGAsXG4gICAgICBib3JkZXJCb3R0b206IGAke0FSUk9XX1NJWkV9cHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHR9YCxcbiAgICB9KSxcblxuICAgIC4uLihob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImNlbnRlclwiICYmIHtcbiAgICAgIGxlZnQ6IFwiNTAlXCIsXG4gICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUpXCIsXG4gICAgfSksXG5cbiAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJyaWdodFwiICYmIHtcbiAgICAgIGxlZnQ6IGAke0FSUk9XX09GRlNFVH1weGAsXG4gICAgfSksXG5cbiAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJsZWZ0XCIgJiYge1xuICAgICAgcmlnaHQ6IGAke0FSUk9XX09GRlNFVH1weGAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBpbml0aWFsUG9zaXRpb246IFRvb2x0aXBQb3NpdGlvbiA9IHtcbiAgdG9wOiAwLFxuICBsZWZ0OiAwLFxuICB2ZXJ0aWNhbFBsYWNlbWVudDogXCJ0b3BcIixcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogXCJjZW50ZXJcIixcbn07XG5cbmxldCBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSAwO1xuXG4vKiBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0aW1lIGJldHdlZW4gbGFzdCBjbG9zZSBhbmQgbmV3IG9wZW4gaXMgbGVzcyB0aGFuIDUwMG1zICsgU0hPV19ISURFX0RFTEFZICovXG5mdW5jdGlvbiBnZXRBbmltYXRpb25EdXJhdGlvbigpIHtcbiAgbGV0IGFuaW1hdGlvbkR1cmF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OfW1zYDtcblxuICBpZiAobGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wKSB7XG4gICAgY29uc3QgdGltZVNpbmNlTGFzdFRvb2x0aXAgPSBEYXRlLm5vdygpIC0gbGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wO1xuXG4gICAgaWYgKHRpbWVTaW5jZUxhc3RUb29sdGlwIDwgNTAwICsgU0hPV19ISURFX0RFTEFZKSB7XG4gICAgICBhbmltYXRpb25EdXJhdGlvbiA9IFwiMG1zXCI7XG4gICAgfVxuICB9XG4gIHJldHVybiBhbmltYXRpb25EdXJhdGlvbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFRvb2x0aXAoe1xuICBwbGFjZW1lbnQgPSBcImF1dG9cIixcbiAgY29udGVudCxcbiAgY2hpbGRyZW4sXG4gIGV4dGVybmFsVHJpZ2dlclJlZixcbiAgcG9ydGFsQ29udGFpbmVyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbiAgb25WaXNpYmlsaXR5Q2hhbmdlLFxufTogVG9vbHRpcFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgdG9vbHRpcElkID0gdXNlTWVtbyhcbiAgICAoKSA9PiBgRFNUb29sdGlwXyR7TWF0aC5mbG9vcihEYXRlLm5vdygpICogTWF0aC5yYW5kb20oKSl9YCxcbiAgICBbXVxuICApO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlKGluaXRpYWxQb3NpdGlvbik7XG4gIGNvbnN0IFtpc1Zpc2libGUsIHNldFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCB0cmlnZ2VyZWRCeUV2ZW50ID0gdXNlUmVmKG51bGwpOyAvLyBpbmRpY2F0ZXMgaWYgdHJpZ2dlcmVkIGJ5IGhvdmVyIG9yIGZvY3VzXG4gIGNvbnN0IGlzVG9vbHRpcEhvdmVyZWQgPSB1c2VSZWYoZmFsc2UpO1xuICBjb25zdCBpc1RyaWdnZXJIb3ZlcmVkID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgaW50ZXJuYWxUcmlnZ2VyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCB0b29sdGlwUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBkb2N1bWVudCA9IHVzZURvY3VtZW50KCk7XG4gIGNvbnN0IHdpbmRvdyA9IHVzZVdpbmRvdygpO1xuICBjb25zdCBoaWRlVG9vbHRpcFRpbWVvdXRJZCA9IHVzZVJlZihudWxsKTtcbiAgY29uc3Qgc2hvd1Rvb2x0aXBUaW1lb3V0SWQgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHRyaWdnZXJSZWYgPSBleHRlcm5hbFRyaWdnZXJSZWYgfHwgaW50ZXJuYWxUcmlnZ2VyUmVmO1xuXG4gIGNvbnN0IHRvZ2dsZVZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAoc3RhdHVzOiBib29sZWFuKSA9PiB7XG4gICAgICBzZXRWaXNpYmxlKHN0YXR1cyk7XG5cbiAgICAgIGlmIChvblZpc2liaWxpdHlDaGFuZ2UpIHtcbiAgICAgICAgb25WaXNpYmlsaXR5Q2hhbmdlKHN0YXR1cyk7XG4gICAgICB9XG5cbiAgICAgIC8vIGxvZyB0aW1lIHdoZW4gdG9vbHRpcCBjbG9zZXNcbiAgICAgIGlmICghc3RhdHVzKSB7XG4gICAgICAgIGxhc3RUb29sdGlwSGlkZVRpbWVzdGFtcCA9IERhdGUubm93KCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25WaXNpYmlsaXR5Q2hhbmdlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVRyaWdnZXJQb2ludGVyRW50ZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaXNUcmlnZ2VySG92ZXJlZC5jdXJyZW50ID0gdHJ1ZTtcbiAgICBpZiAoIWlzVG9vbHRpcEhvdmVyZWQuY3VycmVudCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHNob3dUb29sdGlwVGltZW91dElkLmN1cnJlbnQpO1xuICAgICAgLy8gRGVsYXkgc2hvdyB0b29sdGlwIHRvIHByZXZlbnQgZmxpY2tlcmluZyB3aGVuIG1vdXNlIG1vdmVzIHF1aWNrbHkgb3ZlciB0cmlnZ2VyXG4gICAgICBzaG93VG9vbHRpcFRpbWVvdXRJZC5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmIChpc1RyaWdnZXJIb3ZlcmVkLmN1cnJlbnQpIHtcbiAgICAgICAgICB0cmlnZ2VyZWRCeUV2ZW50LmN1cnJlbnQgPSBcImhvdmVyXCI7XG4gICAgICAgICAgdG9nZ2xlVmlzaWJpbGl0eSh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfSwgU0hPV19ISURFX0RFTEFZKTtcbiAgICB9XG4gIH0sIFt0b2dnbGVWaXNpYmlsaXR5XSk7XG5cbiAgY29uc3QgaGFuZGxlVHJpZ2dlclBvaW50ZXJMZWF2ZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpc1RyaWdnZXJIb3ZlcmVkLmN1cnJlbnQgPSBmYWxzZTtcbiAgICBjbGVhclRpbWVvdXQoaGlkZVRvb2x0aXBUaW1lb3V0SWQuY3VycmVudCk7XG4gICAgLy8gRGVsYXkgcmVtb3ZpbmcgdG9vbHRpcCBmcm9tIERPTSB0byBhbGxvdyBob3ZlciBvdmVyIHRvb2x0aXAgZWxlbWVudFxuICAgIGhpZGVUb29sdGlwVGltZW91dElkLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgIWlzVG9vbHRpcEhvdmVyZWQuY3VycmVudCAmJlxuICAgICAgICB0cmlnZ2VyZWRCeUV2ZW50LmN1cnJlbnQgPT09IFwiaG92ZXJcIiAmJlxuICAgICAgICAhaXNUcmlnZ2VySG92ZXJlZC5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgdG9nZ2xlVmlzaWJpbGl0eShmYWxzZSk7XG4gICAgICB9XG4gICAgfSwgU0hPV19ISURFX0RFTEFZKTtcbiAgfSwgW3RvZ2dsZVZpc2liaWxpdHldKTtcblxuICBjb25zdCBoYW5kbGVUcmlnZ2VyRm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgdHJpZ2dlcmVkQnlFdmVudC5jdXJyZW50ID0gXCJmb2N1c1wiO1xuICAgIHRvZ2dsZVZpc2liaWxpdHkodHJ1ZSk7XG4gIH0sIFt0b2dnbGVWaXNpYmlsaXR5XSk7XG5cbiAgY29uc3QgaGFuZGxlVHJpZ2dlckJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKHRyaWdnZXJlZEJ5RXZlbnQuY3VycmVudCA9PT0gXCJmb2N1c1wiKSB7XG4gICAgICB0b2dnbGVWaXNpYmlsaXR5KGZhbHNlKTtcbiAgICB9XG4gIH0sIFt0b2dnbGVWaXNpYmlsaXR5XSk7XG5cbiAgY29uc3QgaGFuZGxlVHJpZ2dlcktleURvd24gPSB1c2VDYWxsYmFjayhcbiAgICAoZXZ0KSA9PiB7XG4gICAgICBpZiAoZXZ0LmtleSA9PT0gXCJFc2NhcGVcIikge1xuICAgICAgICB0b2dnbGVWaXNpYmlsaXR5KGZhbHNlKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFt0b2dnbGVWaXNpYmlsaXR5XVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVRvb2x0aXBQb2ludGVyRW50ZXIgPSAoKSA9PiB7XG4gICAgaXNUb29sdGlwSG92ZXJlZC5jdXJyZW50ID0gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVUb29sdGlwUG9pbnRlckxlYXZlID0gKCkgPT4ge1xuICAgIGlzVG9vbHRpcEhvdmVyZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIGlmICh0cmlnZ2VyZWRCeUV2ZW50LmN1cnJlbnQgPT09IFwiaG92ZXJcIikge1xuICAgICAgdG9nZ2xlVmlzaWJpbGl0eShmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdChcbiAgICAoKSA9PiAoKSA9PiB7XG4gICAgICAvLyBjbGVhciB0aW1lcnNcbiAgICAgIGNsZWFyVGltZW91dChzaG93VG9vbHRpcFRpbWVvdXRJZC5jdXJyZW50KTtcbiAgICAgIGNsZWFyVGltZW91dChoaWRlVG9vbHRpcFRpbWVvdXRJZC5jdXJyZW50KTtcbiAgICB9LFxuICAgIFtdXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgdHJpZ2dlcjogSFRNTEVsZW1lbnQ7XG5cbiAgICBpZiAoZXh0ZXJuYWxUcmlnZ2VyUmVmICYmIGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50ICYmICFjaGlsZHJlbikge1xuICAgICAgdHJpZ2dlciA9IGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50O1xuXG4gICAgICB0cmlnZ2VyLnNldEF0dHJpYnV0ZShcInRhYmluZGV4XCIsIFwiMFwiKTtcbiAgICAgIHRyaWdnZXIuYWRkRXZlbnRMaXN0ZW5lcihcInBvaW50ZXJlbnRlclwiLCBoYW5kbGVUcmlnZ2VyUG9pbnRlckVudGVyKTtcbiAgICAgIHRyaWdnZXIuYWRkRXZlbnRMaXN0ZW5lcihcInBvaW50ZXJsZWF2ZVwiLCBoYW5kbGVUcmlnZ2VyUG9pbnRlckxlYXZlKTtcbiAgICAgIHRyaWdnZXIuYWRkRXZlbnRMaXN0ZW5lcihcImZvY3VzXCIsIGhhbmRsZVRyaWdnZXJGb2N1cyk7XG4gICAgICB0cmlnZ2VyLmFkZEV2ZW50TGlzdGVuZXIoXCJibHVyXCIsIGhhbmRsZVRyaWdnZXJCbHVyKTtcbiAgICAgIHRyaWdnZXIuYWRkRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgaGFuZGxlVHJpZ2dlcktleURvd24pO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAodHJpZ2dlcikge1xuICAgICAgICB0cmlnZ2VyLnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJwb2ludGVyZW50ZXJcIiwgaGFuZGxlVHJpZ2dlclBvaW50ZXJFbnRlcik7XG4gICAgICAgIHRyaWdnZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInBvaW50ZXJsZWF2ZVwiLCBoYW5kbGVUcmlnZ2VyUG9pbnRlckxlYXZlKTtcbiAgICAgICAgdHJpZ2dlci5yZW1vdmVFdmVudExpc3RlbmVyKFwiZm9jdXNcIiwgaGFuZGxlVHJpZ2dlckZvY3VzKTtcbiAgICAgICAgdHJpZ2dlci5yZW1vdmVFdmVudExpc3RlbmVyKFwiYmx1clwiLCBoYW5kbGVUcmlnZ2VyQmx1cik7XG4gICAgICAgIHRyaWdnZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgaGFuZGxlVHJpZ2dlcktleURvd24pO1xuICAgICAgfVxuICAgIH07XG4gIH0sIFtcbiAgICBleHRlcm5hbFRyaWdnZXJSZWYsXG4gICAgY2hpbGRyZW4sXG4gICAgaGFuZGxlVHJpZ2dlclBvaW50ZXJFbnRlcixcbiAgICBoYW5kbGVUcmlnZ2VyUG9pbnRlckxlYXZlLFxuICAgIGhhbmRsZVRyaWdnZXJGb2N1cyxcbiAgICBoYW5kbGVUcmlnZ2VyQmx1cixcbiAgICBoYW5kbGVUcmlnZ2VyS2V5RG93bixcbiAgXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZXh0ZXJuYWxUcmlnZ2VyUmVmICYmIGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50ICYmICFjaGlsZHJlbikge1xuICAgICAgY29uc3QgdHJpZ2dlciA9IGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50O1xuXG4gICAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICAgIHRyaWdnZXIuc2V0QXR0cmlidXRlKFwiYXJpYS1kZXNjcmliZWRieVwiLCB0b29sdGlwSWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHJpZ2dlci5yZW1vdmVBdHRyaWJ1dGUoXCJhcmlhLWRlc2NyaWJlZGJ5XCIpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW2V4dGVybmFsVHJpZ2dlclJlZiwgY2hpbGRyZW4sIHRvb2x0aXBJZCwgaXNWaXNpYmxlXSk7XG5cbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlICYmIHRyaWdnZXJSZWYuY3VycmVudCAmJiB0b29sdGlwUmVmLmN1cnJlbnQpIHtcbiAgICAgIC8vIGNhbGN1bGF0ZSB0b29sdGlwIHBvc2l0aW9uXG4gICAgICBzZXRQb3NpdGlvbihcbiAgICAgICAgZ2V0VG9vbHRpcFBvc2l0aW9uKHBsYWNlbWVudCwgdHJpZ2dlclJlZiwgdG9vbHRpcFJlZiwgZG9jdW1lbnQsIHdpbmRvdylcbiAgICAgICk7XG4gICAgfVxuICB9LCBbaXNWaXNpYmxlLCBwbGFjZW1lbnQsIHRyaWdnZXJSZWYsIGRvY3VtZW50LCB3aW5kb3ddKTtcblxuICBsZXQgcG9ydGFsO1xuXG4gIGlmIChpc1Zpc2libGUpIHtcbiAgICBjb25zdCB0b29sdGlwRWxtID0gKFxuICAgICAgPFN1YlRoZW1lUHJvdmlkZXIgbmFtZT1cImludmVydGVkXCI+XG4gICAgICAgIDxTdHlsZWRDb250YWluZXJcbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJUb29sdGlwXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgdG9wOiBwb3NpdGlvbi50b3AsXG4gICAgICAgICAgICBsZWZ0OiBwb3NpdGlvbi5sZWZ0LFxuICAgICAgICAgICAgYW5pbWF0aW9uRHVyYXRpb246IGdldEFuaW1hdGlvbkR1cmF0aW9uKCksXG4gICAgICAgICAgfX1cbiAgICAgICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICAgICAgaWQ9e3Rvb2x0aXBJZH1cbiAgICAgICAgICByb2xlPVwidG9vbHRpcFwiXG4gICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICBob3Jpem9udGFsUGxhY2VtZW50PXtwb3NpdGlvbi5ob3Jpem9udGFsUGxhY2VtZW50fVxuICAgICAgICAgIHZlcnRpY2FsUGxhY2VtZW50PXtwb3NpdGlvbi52ZXJ0aWNhbFBsYWNlbWVudH1cbiAgICAgICAgICBvblBvaW50ZXJFbnRlcj17aGFuZGxlVG9vbHRpcFBvaW50ZXJFbnRlcn1cbiAgICAgICAgICBvblBvaW50ZXJMZWF2ZT17aGFuZGxlVG9vbHRpcFBvaW50ZXJMZWF2ZX1cbiAgICAgICAgPlxuICAgICAgICAgIDxUZXh0IHNpemU9XCJzXCI+e2NvbnRlbnR9PC9UZXh0PlxuICAgICAgICAgIDxTdHlsZWRBcnJvd1xuICAgICAgICAgICAgaG9yaXpvbnRhbFBsYWNlbWVudD17cG9zaXRpb24uaG9yaXpvbnRhbFBsYWNlbWVudH1cbiAgICAgICAgICAgIHZlcnRpY2FsUGxhY2VtZW50PXtwb3NpdGlvbi52ZXJ0aWNhbFBsYWNlbWVudH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgIDwvU3ViVGhlbWVQcm92aWRlcj5cbiAgICApO1xuXG4gICAgcG9ydGFsID0gY3JlYXRlUG9ydGFsKHRvb2x0aXBFbG0sIHBvcnRhbENvbnRhaW5lciB8fCBkb2N1bWVudC5ib2R5KTtcbiAgfVxuXG4gIGNvbnN0IHRyaWdnZXJFbG0gPSBjaGlsZHJlblxuICAgID8gUmVhY3QuY2xvbmVFbGVtZW50KGNoaWxkcmVuLCB7XG4gICAgICAgIHJlZjogdHJpZ2dlclJlZixcbiAgICAgICAgLi4uKGlzVmlzaWJsZSAmJiB7XG4gICAgICAgICAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI6IHRvb2x0aXBJZCxcbiAgICAgICAgfSksXG4gICAgICAgIHRhYkluZGV4OiAwLFxuICAgICAgICBvblBvaW50ZXJFbnRlcjogaGFuZGxlVHJpZ2dlclBvaW50ZXJFbnRlcixcbiAgICAgICAgb25Qb2ludGVyTGVhdmU6IGhhbmRsZVRyaWdnZXJQb2ludGVyTGVhdmUsXG4gICAgICAgIG9uRm9jdXM6IGhhbmRsZVRyaWdnZXJGb2N1cyxcbiAgICAgICAgb25CbHVyOiBoYW5kbGVUcmlnZ2VyQmx1cixcbiAgICAgICAgb25LZXlEb3duOiBoYW5kbGVUcmlnZ2VyS2V5RG93bixcbiAgICAgIH0pXG4gICAgOiBudWxsO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHt0cmlnZ2VyRWxtfVxuICAgICAge3BvcnRhbH1cbiAgICA8Lz5cbiAgKTtcbn1cbiJdfQ== */");
47
- const StyledArrow = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
48
- target: "e2kei840"
49
- } : {
50
- target: "e2kei840",
51
- label: "StyledArrow"
52
- })(_ref2 => {
53
- let {
54
- theme,
55
- verticalPlacement,
56
- horizontalPlacement
57
- } = _ref2;
58
- return {
59
- position: "absolute",
60
- width: 0,
61
- height: 0,
62
- borderLeft: `${ARROW_SIZE}px solid transparent`,
63
- borderRight: `${ARROW_SIZE}px solid transparent`,
64
- ...(verticalPlacement === "top" && {
65
- top: "100%",
66
- borderTop: `${ARROW_SIZE}px solid ${theme.values.color.background.primary.default}`
67
- }),
68
- ...(verticalPlacement === "bottom" && {
69
- top: `-${ARROW_SIZE}px`,
70
- borderBottom: `${ARROW_SIZE}px solid ${theme.values.color.background.primary.default}`
71
- }),
72
- ...(horizontalPlacement === "center" && {
73
- left: "50%",
74
- transform: "translate(-50%)"
75
- }),
76
- ...(horizontalPlacement === "right" && {
77
- left: `${ARROW_OFFSET}px`
78
- }),
79
- ...(horizontalPlacement === "left" && {
80
- right: `${ARROW_OFFSET}px`
81
- })
82
- };
83
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdIb0IiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtcbiAgdXNlU3RhdGUsXG4gIHVzZVJlZixcbiAgdXNlTGF5b3V0RWZmZWN0LFxuICB1c2VFZmZlY3QsXG4gIHVzZUNhbGxiYWNrLFxuICBNdXRhYmxlUmVmT2JqZWN0LFxuICB1c2VNZW1vLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyB1c2VEb2N1bWVudCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlRG9jdW1lbnRcIjtcbmltcG9ydCB7IHVzZVdpbmRvdyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlV2luZG93XCI7XG5pbXBvcnQgeyBTdWJUaGVtZVByb3ZpZGVyIH0gZnJvbSBcIi4uL1N1YlRoZW1lUHJvdmlkZXIvU3ViVGhlbWVQcm92aWRlclwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHpJbmRpY2VzIGZyb20gXCIuLi8uLi8uLi9idWlsZC10b2tlbnMvX3ppbmRleC5qc29uXCI7XG5cbmltcG9ydCB7XG4gIEFSUk9XX1NJWkUsXG4gIEFSUk9XX09GRlNFVCxcbiAgQU5JTUFUSU9OX0RJU1RBTkNFLFxuICBnZXRUb29sdGlwUG9zaXRpb24sXG59IGZyb20gXCIuL3V0aWxzXCI7XG5cbmV4cG9ydCB0eXBlIEJhc2VQcm9wcyA9IHtcbiAgLyogVG9vbHRpcCBjb250ZW50ICovXG4gIGNvbnRlbnQ6IHN0cmluZztcbiAgLyogUGxhY2VtZW50ICovXG4gIHBsYWNlbWVudD86XG4gICAgfCBcImF1dG9cIlxuICAgIHwgXCJ0b3BcIlxuICAgIHwgXCJib3R0b21cIlxuICAgIHwgXCJ0b3AtbGVmdFwiXG4gICAgfCBcInRvcC1yaWdodFwiXG4gICAgfCBcImJvdHRvbS1sZWZ0XCJcbiAgICB8IFwiYm90dG9tLXJpZ2h0XCI7XG4gIC8qIEN1c3RvbSBwb3J0YWwgY29udGFpbmVyIHRvIHJlbmRlciB0b29sdGlwIGludG8gKi9cbiAgcG9ydGFsQ29udGFpbmVyPzogSFRNTEVsZW1lbnQ7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiB0b29sdGlwIGFwcGVhcnMgYW5kIGRpc2FwcGVhcnMgKi9cbiAgb25WaXNpYmlsaXR5Q2hhbmdlPzogKGlzVmlzaWJsZTogYm9vbGVhbikgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIGV4dGVybmFsVHJpZ2dlclJlZj86IG5ldmVyO1xuICAgICAgLyogVHJpZ2dlciBlbGVtZW50IC0gd3JhcCB0cmlnZ2VyIGVsZW1lbnQgd2l0aGluIFRvb2x0aXAgLSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgdHJpZ2dlciBwcm9wICovXG4gICAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICAgIH1cbiAgfCB7XG4gICAgICBjaGlsZHJlbj86IG5ldmVyO1xuICAgICAgLyogVHJpZ2dlciBlbGVtZW50IHJlZiAtIHBhc3MgaW4gYW4gZXh0ZXJuYWwgdHJpZ2dlciBlbGVtZW50ICovXG4gICAgICBleHRlcm5hbFRyaWdnZXJSZWY6IE11dGFibGVSZWZPYmplY3Q8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBUb29sdGlwUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5leHBvcnQgdHlwZSBUb29sdGlwUG9zaXRpb24gPSB7XG4gIHRvcDogbnVtYmVyO1xuICBsZWZ0OiBudW1iZXI7XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFwibGVmdFwiIHwgXCJyaWdodFwiIHwgXCJjZW50ZXJcIjtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFwidG9wXCIgfCBcImJvdHRvbVwiO1xufTtcblxudHlwZSBTdHlsZWRDb250YWluZXJQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogVG9vbHRpcFBvc2l0aW9uW1wiaG9yaXpvbnRhbFBsYWNlbWVudFwiXTtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFRvb2x0aXBQb3NpdGlvbltcInZlcnRpY2FsUGxhY2VtZW50XCJdO1xufTtcblxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OID0gMjAwO1xuY29uc3QgU0hPV19ISURFX0RFTEFZID0gMjAwO1xuXG5jb25zdCBTdHlsZWRDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZENvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGhvcml6b250YWxQbGFjZW1lbnQsIHZlcnRpY2FsUGxhY2VtZW50IH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb25EaXN0YW5jZSA9XG4gICAgICB2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIlxuICAgICAgICA/IGAke0FOSU1BVElPTl9ESVNUQU5DRX1weGBcbiAgICAgICAgOiBgLSR7QU5JTUFUSU9OX0RJU1RBTkNFfXB4YDtcbiAgICBjb25zdCBhbmltYXRpb24gPSBrZXlmcmFtZXMoe1xuICAgICAgdG86IHtcbiAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgdHJhbnNmb3JtOlxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCJcbiAgICAgICAgICAgID8gYHRyYW5zbGF0ZSgtNTAlLCAke2FuaW1hdGlvbkRpc3RhbmNlfSlgXG4gICAgICAgICAgICA6IGB0cmFuc2xhdGVZKCR7YW5pbWF0aW9uRGlzdGFuY2V9KWAsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgICB6SW5kZXg6IHpJbmRpY2VzLnRvb2x0aXAudmFsdWUsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgYW5pbWF0aW9uOiBgJHtBTklNQVRJT05fRFVSQVRJT059bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHthbmltYXRpb259YCxcbiAgICAgIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHQsXG4gICAgICBtYXhXaWR0aDogXCIyMjRweFwiLFxuICAgICAgYm94U2l6aW5nOiBcImJvcmRlci1ib3hcIixcbiAgICAgIHBhZGRpbmc6IGAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHN9ICR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zfWAsXG5cbiAgICAgIC4uLihob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImNlbnRlclwiICYmIHtcbiAgICAgICAgdHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtNTAlKVwiLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRBcnJvd1Byb3BzID0ge1xuICB2ZXJ0aWNhbFBsYWNlbWVudDogVG9vbHRpcFBvc2l0aW9uW1widmVydGljYWxQbGFjZW1lbnRcIl07XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFRvb2x0aXBQb3NpdGlvbltcImhvcml6b250YWxQbGFjZW1lbnRcIl07XG59O1xuXG5jb25zdCBTdHlsZWRBcnJvdyA9IHN0eWxlZC5kaXY8U3R5bGVkQXJyb3dQcm9wcz4oXG4gICh7IHRoZW1lLCB2ZXJ0aWNhbFBsYWNlbWVudCwgaG9yaXpvbnRhbFBsYWNlbWVudCB9KSA9PiAoe1xuICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgd2lkdGg6IDAsXG4gICAgaGVpZ2h0OiAwLFxuICAgIGJvcmRlckxlZnQ6IGAke0FSUk9XX1NJWkV9cHggc29saWQgdHJhbnNwYXJlbnRgLFxuICAgIGJvcmRlclJpZ2h0OiBgJHtBUlJPV19TSVpFfXB4IHNvbGlkIHRyYW5zcGFyZW50YCxcblxuICAgIC4uLih2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIiAmJiB7XG4gICAgICB0b3A6IFwiMTAwJVwiLFxuICAgICAgYm9yZGVyVG9wOiBgJHtBUlJPV19TSVpFfXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeS5kZWZhdWx0fWAsXG4gICAgfSksXG5cbiAgICAuLi4odmVydGljYWxQbGFjZW1lbnQgPT09IFwiYm90dG9tXCIgJiYge1xuICAgICAgdG9wOiBgLSR7QVJST1dfU0laRX1weGAsXG4gICAgICBib3JkZXJCb3R0b206IGAke0FSUk9XX1NJWkV9cHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHR9YCxcbiAgICB9KSxcblxuICAgIC4uLihob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImNlbnRlclwiICYmIHtcbiAgICAgIGxlZnQ6IFwiNTAlXCIsXG4gICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUpXCIsXG4gICAgfSksXG5cbiAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJyaWdodFwiICYmIHtcbiAgICAgIGxlZnQ6IGAke0FSUk9XX09GRlNFVH1weGAsXG4gICAgfSksXG5cbiAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJsZWZ0XCIgJiYge1xuICAgICAgcmlnaHQ6IGAke0FSUk9XX09GRlNFVH1weGAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBpbml0aWFsUG9zaXRpb246IFRvb2x0aXBQb3NpdGlvbiA9IHtcbiAgdG9wOiAwLFxuICBsZWZ0OiAwLFxuICB2ZXJ0aWNhbFBsYWNlbWVudDogXCJ0b3BcIixcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogXCJjZW50ZXJcIixcbn07XG5cbmxldCBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSAwO1xuXG4vKiBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0aW1lIGJldHdlZW4gbGFzdCBjbG9zZSBhbmQgbmV3IG9wZW4gaXMgbGVzcyB0aGFuIDUwMG1zICsgU0hPV19ISURFX0RFTEFZICovXG5mdW5jdGlvbiBnZXRBbmltYXRpb25EdXJhdGlvbigpIHtcbiAgbGV0IGFuaW1hdGlvbkR1cmF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OfW1zYDtcblxuICBpZiAobGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wKSB7XG4gICAgY29uc3QgdGltZVNpbmNlTGFzdFRvb2x0aXAgPSBEYXRlLm5vdygpIC0gbGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wO1xuXG4gICAgaWYgKHRpbWVTaW5jZUxhc3RUb29sdGlwIDwgNTAwICsgU0hPV19ISURFX0RFTEFZKSB7XG4gICAgICBhbmltYXRpb25EdXJhdGlvbiA9IFwiMG1zXCI7XG4gICAgfVxuICB9XG4gIHJldHVybiBhbmltYXRpb25EdXJhdGlvbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFRvb2x0aXAoe1xuICBwbGFjZW1lbnQgPSBcImF1dG9cIixcbiAgY29udGVudCxcbiAgY2hpbGRyZW4sXG4gIGV4dGVybmFsVHJpZ2dlclJlZixcbiAgcG9ydGFsQ29udGFpbmVyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbiAgb25WaXNpYmlsaXR5Q2hhbmdlLFxufTogVG9vbHRpcFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgdG9vbHRpcElkID0gdXNlTWVtbyhcbiAgICAoKSA9PiBgRFNUb29sdGlwXyR7TWF0aC5mbG9vcihEYXRlLm5vdygpICogTWF0aC5yYW5kb20oKSl9YCxcbiAgICBbXVxuICApO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlKGluaXRpYWxQb3NpdGlvbik7XG4gIGNvbnN0IFtpc1Zpc2libGUsIHNldFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCB0cmlnZ2VyZWRCeUV2ZW50ID0gdXNlUmVmKG51bGwpOyAvLyBpbmRpY2F0ZXMgaWYgdHJpZ2dlcmVkIGJ5IGhvdmVyIG9yIGZvY3VzXG4gIGNvbnN0IGlzVG9vbHRpcEhvdmVyZWQgPSB1c2VSZWYoZmFsc2UpO1xuICBjb25zdCBpc1RyaWdnZXJIb3ZlcmVkID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgaW50ZXJuYWxUcmlnZ2VyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCB0b29sdGlwUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBkb2N1bWVudCA9IHVzZURvY3VtZW50KCk7XG4gIGNvbnN0IHdpbmRvdyA9IHVzZVdpbmRvdygpO1xuICBjb25zdCBoaWRlVG9vbHRpcFRpbWVvdXRJZCA9IHVzZVJlZihudWxsKTtcbiAgY29uc3Qgc2hvd1Rvb2x0aXBUaW1lb3V0SWQgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHRyaWdnZXJSZWYgPSBleHRlcm5hbFRyaWdnZXJSZWYgfHwgaW50ZXJuYWxUcmlnZ2VyUmVmO1xuXG4gIGNvbnN0IHRvZ2dsZVZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAoc3RhdHVzOiBib29sZWFuKSA9PiB7XG4gICAgICBzZXRWaXNpYmxlKHN0YXR1cyk7XG5cbiAgICAgIGlmIChvblZpc2liaWxpdHlDaGFuZ2UpIHtcbiAgICAgICAgb25WaXNpYmlsaXR5Q2hhbmdlKHN0YXR1cyk7XG4gICAgICB9XG5cbiAgICAgIC8vIGxvZyB0aW1lIHdoZW4gdG9vbHRpcCBjbG9zZXNcbiAgICAgIGlmICghc3RhdHVzKSB7XG4gICAgICAgIGxhc3RUb29sdGlwSGlkZVRpbWVzdGFtcCA9IERhdGUubm93KCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25WaXNpYmlsaXR5Q2hhbmdlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVRyaWdnZXJQb2ludGVyRW50ZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaXNUcmlnZ2VySG92ZXJlZC5jdXJyZW50ID0gdHJ1ZTtcbiAgICBpZiAoIWlzVG9vbHRpcEhvdmVyZWQuY3VycmVudCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHNob3dUb29sdGlwVGltZW91dElkLmN1cnJlbnQpO1xuICAgICAgLy8gRGVsYXkgc2hvdyB0b29sdGlwIHRvIHByZXZlbnQgZmxpY2tlcmluZyB3aGVuIG1vdXNlIG1vdmVzIHF1aWNrbHkgb3ZlciB0cmlnZ2VyXG4gICAgICBzaG93VG9vbHRpcFRpbWVvdXRJZC5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmIChpc1RyaWdnZXJIb3ZlcmVkLmN1cnJlbnQpIHtcbiAgICAgICAgICB0cmlnZ2VyZWRCeUV2ZW50LmN1cnJlbnQgPSBcImhvdmVyXCI7XG4gICAgICAgICAgdG9nZ2xlVmlzaWJpbGl0eSh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfSwgU0hPV19ISURFX0RFTEFZKTtcbiAgICB9XG4gIH0sIFt0b2dnbGVWaXNpYmlsaXR5XSk7XG5cbiAgY29uc3QgaGFuZGxlVHJpZ2dlclBvaW50ZXJMZWF2ZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpc1RyaWdnZXJIb3ZlcmVkLmN1cnJlbnQgPSBmYWxzZTtcbiAgICBjbGVhclRpbWVvdXQoaGlkZVRvb2x0aXBUaW1lb3V0SWQuY3VycmVudCk7XG4gICAgLy8gRGVsYXkgcmVtb3ZpbmcgdG9vbHRpcCBmcm9tIERPTSB0byBhbGxvdyBob3ZlciBvdmVyIHRvb2x0aXAgZWxlbWVudFxuICAgIGhpZGVUb29sdGlwVGltZW91dElkLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgIWlzVG9vbHRpcEhvdmVyZWQuY3VycmVudCAmJlxuICAgICAgICB0cmlnZ2VyZWRCeUV2ZW50LmN1cnJlbnQgPT09IFwiaG92ZXJcIiAmJlxuICAgICAgICAhaXNUcmlnZ2VySG92ZXJlZC5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgdG9nZ2xlVmlzaWJpbGl0eShmYWxzZSk7XG4gICAgICB9XG4gICAgfSwgU0hPV19ISURFX0RFTEFZKTtcbiAgfSwgW3RvZ2dsZVZpc2liaWxpdHldKTtcblxuICBjb25zdCBoYW5kbGVUcmlnZ2VyRm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgdHJpZ2dlcmVkQnlFdmVudC5jdXJyZW50ID0gXCJmb2N1c1wiO1xuICAgIHRvZ2dsZVZpc2liaWxpdHkodHJ1ZSk7XG4gIH0sIFt0b2dnbGVWaXNpYmlsaXR5XSk7XG5cbiAgY29uc3QgaGFuZGxlVHJpZ2dlckJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKHRyaWdnZXJlZEJ5RXZlbnQuY3VycmVudCA9PT0gXCJmb2N1c1wiKSB7XG4gICAgICB0b2dnbGVWaXNpYmlsaXR5KGZhbHNlKTtcbiAgICB9XG4gIH0sIFt0b2dnbGVWaXNpYmlsaXR5XSk7XG5cbiAgY29uc3QgaGFuZGxlVHJpZ2dlcktleURvd24gPSB1c2VDYWxsYmFjayhcbiAgICAoZXZ0KSA9PiB7XG4gICAgICBpZiAoZXZ0LmtleSA9PT0gXCJFc2NhcGVcIikge1xuICAgICAgICB0b2dnbGVWaXNpYmlsaXR5KGZhbHNlKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFt0b2dnbGVWaXNpYmlsaXR5XVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVRvb2x0aXBQb2ludGVyRW50ZXIgPSAoKSA9PiB7XG4gICAgaXNUb29sdGlwSG92ZXJlZC5jdXJyZW50ID0gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVUb29sdGlwUG9pbnRlckxlYXZlID0gKCkgPT4ge1xuICAgIGlzVG9vbHRpcEhvdmVyZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIGlmICh0cmlnZ2VyZWRCeUV2ZW50LmN1cnJlbnQgPT09IFwiaG92ZXJcIikge1xuICAgICAgdG9nZ2xlVmlzaWJpbGl0eShmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdChcbiAgICAoKSA9PiAoKSA9PiB7XG4gICAgICAvLyBjbGVhciB0aW1lcnNcbiAgICAgIGNsZWFyVGltZW91dChzaG93VG9vbHRpcFRpbWVvdXRJZC5jdXJyZW50KTtcbiAgICAgIGNsZWFyVGltZW91dChoaWRlVG9vbHRpcFRpbWVvdXRJZC5jdXJyZW50KTtcbiAgICB9LFxuICAgIFtdXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgdHJpZ2dlcjogSFRNTEVsZW1lbnQ7XG5cbiAgICBpZiAoZXh0ZXJuYWxUcmlnZ2VyUmVmICYmIGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50ICYmICFjaGlsZHJlbikge1xuICAgICAgdHJpZ2dlciA9IGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50O1xuXG4gICAgICB0cmlnZ2VyLnNldEF0dHJpYnV0ZShcInRhYmluZGV4XCIsIFwiMFwiKTtcbiAgICAgIHRyaWdnZXIuYWRkRXZlbnRMaXN0ZW5lcihcInBvaW50ZXJlbnRlclwiLCBoYW5kbGVUcmlnZ2VyUG9pbnRlckVudGVyKTtcbiAgICAgIHRyaWdnZXIuYWRkRXZlbnRMaXN0ZW5lcihcInBvaW50ZXJsZWF2ZVwiLCBoYW5kbGVUcmlnZ2VyUG9pbnRlckxlYXZlKTtcbiAgICAgIHRyaWdnZXIuYWRkRXZlbnRMaXN0ZW5lcihcImZvY3VzXCIsIGhhbmRsZVRyaWdnZXJGb2N1cyk7XG4gICAgICB0cmlnZ2VyLmFkZEV2ZW50TGlzdGVuZXIoXCJibHVyXCIsIGhhbmRsZVRyaWdnZXJCbHVyKTtcbiAgICAgIHRyaWdnZXIuYWRkRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgaGFuZGxlVHJpZ2dlcktleURvd24pO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAodHJpZ2dlcikge1xuICAgICAgICB0cmlnZ2VyLnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJwb2ludGVyZW50ZXJcIiwgaGFuZGxlVHJpZ2dlclBvaW50ZXJFbnRlcik7XG4gICAgICAgIHRyaWdnZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInBvaW50ZXJsZWF2ZVwiLCBoYW5kbGVUcmlnZ2VyUG9pbnRlckxlYXZlKTtcbiAgICAgICAgdHJpZ2dlci5yZW1vdmVFdmVudExpc3RlbmVyKFwiZm9jdXNcIiwgaGFuZGxlVHJpZ2dlckZvY3VzKTtcbiAgICAgICAgdHJpZ2dlci5yZW1vdmVFdmVudExpc3RlbmVyKFwiYmx1clwiLCBoYW5kbGVUcmlnZ2VyQmx1cik7XG4gICAgICAgIHRyaWdnZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgaGFuZGxlVHJpZ2dlcktleURvd24pO1xuICAgICAgfVxuICAgIH07XG4gIH0sIFtcbiAgICBleHRlcm5hbFRyaWdnZXJSZWYsXG4gICAgY2hpbGRyZW4sXG4gICAgaGFuZGxlVHJpZ2dlclBvaW50ZXJFbnRlcixcbiAgICBoYW5kbGVUcmlnZ2VyUG9pbnRlckxlYXZlLFxuICAgIGhhbmRsZVRyaWdnZXJGb2N1cyxcbiAgICBoYW5kbGVUcmlnZ2VyQmx1cixcbiAgICBoYW5kbGVUcmlnZ2VyS2V5RG93bixcbiAgXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZXh0ZXJuYWxUcmlnZ2VyUmVmICYmIGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50ICYmICFjaGlsZHJlbikge1xuICAgICAgY29uc3QgdHJpZ2dlciA9IGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50O1xuXG4gICAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICAgIHRyaWdnZXIuc2V0QXR0cmlidXRlKFwiYXJpYS1kZXNjcmliZWRieVwiLCB0b29sdGlwSWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHJpZ2dlci5yZW1vdmVBdHRyaWJ1dGUoXCJhcmlhLWRlc2NyaWJlZGJ5XCIpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW2V4dGVybmFsVHJpZ2dlclJlZiwgY2hpbGRyZW4sIHRvb2x0aXBJZCwgaXNWaXNpYmxlXSk7XG5cbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlICYmIHRyaWdnZXJSZWYuY3VycmVudCAmJiB0b29sdGlwUmVmLmN1cnJlbnQpIHtcbiAgICAgIC8vIGNhbGN1bGF0ZSB0b29sdGlwIHBvc2l0aW9uXG4gICAgICBzZXRQb3NpdGlvbihcbiAgICAgICAgZ2V0VG9vbHRpcFBvc2l0aW9uKHBsYWNlbWVudCwgdHJpZ2dlclJlZiwgdG9vbHRpcFJlZiwgZG9jdW1lbnQsIHdpbmRvdylcbiAgICAgICk7XG4gICAgfVxuICB9LCBbaXNWaXNpYmxlLCBwbGFjZW1lbnQsIHRyaWdnZXJSZWYsIGRvY3VtZW50LCB3aW5kb3ddKTtcblxuICBsZXQgcG9ydGFsO1xuXG4gIGlmIChpc1Zpc2libGUpIHtcbiAgICBjb25zdCB0b29sdGlwRWxtID0gKFxuICAgICAgPFN1YlRoZW1lUHJvdmlkZXIgbmFtZT1cImludmVydGVkXCI+XG4gICAgICAgIDxTdHlsZWRDb250YWluZXJcbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJUb29sdGlwXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgdG9wOiBwb3NpdGlvbi50b3AsXG4gICAgICAgICAgICBsZWZ0OiBwb3NpdGlvbi5sZWZ0LFxuICAgICAgICAgICAgYW5pbWF0aW9uRHVyYXRpb246IGdldEFuaW1hdGlvbkR1cmF0aW9uKCksXG4gICAgICAgICAgfX1cbiAgICAgICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICAgICAgaWQ9e3Rvb2x0aXBJZH1cbiAgICAgICAgICByb2xlPVwidG9vbHRpcFwiXG4gICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICBob3Jpem9udGFsUGxhY2VtZW50PXtwb3NpdGlvbi5ob3Jpem9udGFsUGxhY2VtZW50fVxuICAgICAgICAgIHZlcnRpY2FsUGxhY2VtZW50PXtwb3NpdGlvbi52ZXJ0aWNhbFBsYWNlbWVudH1cbiAgICAgICAgICBvblBvaW50ZXJFbnRlcj17aGFuZGxlVG9vbHRpcFBvaW50ZXJFbnRlcn1cbiAgICAgICAgICBvblBvaW50ZXJMZWF2ZT17aGFuZGxlVG9vbHRpcFBvaW50ZXJMZWF2ZX1cbiAgICAgICAgPlxuICAgICAgICAgIDxUZXh0IHNpemU9XCJzXCI+e2NvbnRlbnR9PC9UZXh0PlxuICAgICAgICAgIDxTdHlsZWRBcnJvd1xuICAgICAgICAgICAgaG9yaXpvbnRhbFBsYWNlbWVudD17cG9zaXRpb24uaG9yaXpvbnRhbFBsYWNlbWVudH1cbiAgICAgICAgICAgIHZlcnRpY2FsUGxhY2VtZW50PXtwb3NpdGlvbi52ZXJ0aWNhbFBsYWNlbWVudH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgIDwvU3ViVGhlbWVQcm92aWRlcj5cbiAgICApO1xuXG4gICAgcG9ydGFsID0gY3JlYXRlUG9ydGFsKHRvb2x0aXBFbG0sIHBvcnRhbENvbnRhaW5lciB8fCBkb2N1bWVudC5ib2R5KTtcbiAgfVxuXG4gIGNvbnN0IHRyaWdnZXJFbG0gPSBjaGlsZHJlblxuICAgID8gUmVhY3QuY2xvbmVFbGVtZW50KGNoaWxkcmVuLCB7XG4gICAgICAgIHJlZjogdHJpZ2dlclJlZixcbiAgICAgICAgLi4uKGlzVmlzaWJsZSAmJiB7XG4gICAgICAgICAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI6IHRvb2x0aXBJZCxcbiAgICAgICAgfSksXG4gICAgICAgIHRhYkluZGV4OiAwLFxuICAgICAgICBvblBvaW50ZXJFbnRlcjogaGFuZGxlVHJpZ2dlclBvaW50ZXJFbnRlcixcbiAgICAgICAgb25Qb2ludGVyTGVhdmU6IGhhbmRsZVRyaWdnZXJQb2ludGVyTGVhdmUsXG4gICAgICAgIG9uRm9jdXM6IGhhbmRsZVRyaWdnZXJGb2N1cyxcbiAgICAgICAgb25CbHVyOiBoYW5kbGVUcmlnZ2VyQmx1cixcbiAgICAgICAgb25LZXlEb3duOiBoYW5kbGVUcmlnZ2VyS2V5RG93bixcbiAgICAgIH0pXG4gICAgOiBudWxsO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHt0cmlnZ2VyRWxtfVxuICAgICAge3BvcnRhbH1cbiAgICA8Lz5cbiAgKTtcbn1cbiJdfQ== */");
84
- const initialPosition = {
85
- top: 0,
86
- left: 0,
87
- verticalPlacement: "top",
88
- horizontalPlacement: "center"
89
- };
90
- let lastTooltipHideTimestamp = 0;
91
-
92
- /* Disable animation if time between last close and new open is less than 500ms + SHOW_HIDE_DELAY */
93
- function getAnimationDuration() {
94
- let animationDuration = `${ANIMATION_DURATION}ms`;
95
- if (lastTooltipHideTimestamp) {
96
- const timeSinceLastTooltip = Date.now() - lastTooltipHideTimestamp;
97
- if (timeSinceLastTooltip < 500 + SHOW_HIDE_DELAY) {
98
- animationDuration = "0ms";
99
- }
100
- }
101
- return animationDuration;
102
- }
103
- function Tooltip(_ref3) {
104
- let {
105
- placement = "auto",
106
- content,
107
- children,
108
- externalTriggerRef,
109
- portalContainer,
110
- "data-e2e-test-id": dataE2eTestId,
111
- onVisibilityChange
112
- } = _ref3;
113
- const tooltipId = useMemo(() => `DSTooltip_${Math.floor(Date.now() * Math.random())}`, []);
114
- const [position, setPosition] = useState(initialPosition);
115
- const [isVisible, setVisible] = useState(false);
116
- const triggeredByEvent = useRef(null); // indicates if triggered by hover or focus
117
- const isTooltipHovered = useRef(false);
118
- const isTriggerHovered = useRef(false);
119
- const internalTriggerRef = useRef(null);
120
- const tooltipRef = useRef(null);
121
- const document = useDocument();
122
- const window = useWindow();
123
- const hideTooltipTimeoutId = useRef(null);
124
- const showTooltipTimeoutId = useRef(null);
125
- const triggerRef = externalTriggerRef || internalTriggerRef;
126
- const toggleVisibility = useCallback(status => {
127
- setVisible(status);
128
- if (onVisibilityChange) {
129
- onVisibilityChange(status);
130
- }
131
-
132
- // log time when tooltip closes
133
- if (!status) {
134
- lastTooltipHideTimestamp = Date.now();
135
- }
136
- }, [onVisibilityChange]);
137
- const handleTriggerPointerEnter = useCallback(() => {
138
- isTriggerHovered.current = true;
139
- if (!isTooltipHovered.current) {
140
- clearTimeout(showTooltipTimeoutId.current);
141
- // Delay show tooltip to prevent flickering when mouse moves quickly over trigger
142
- showTooltipTimeoutId.current = setTimeout(() => {
143
- if (isTriggerHovered.current) {
144
- triggeredByEvent.current = "hover";
145
- toggleVisibility(true);
146
- }
147
- }, SHOW_HIDE_DELAY);
148
- }
149
- }, [toggleVisibility]);
150
- const handleTriggerPointerLeave = useCallback(() => {
151
- isTriggerHovered.current = false;
152
- clearTimeout(hideTooltipTimeoutId.current);
153
- // Delay removing tooltip from DOM to allow hover over tooltip element
154
- hideTooltipTimeoutId.current = setTimeout(() => {
155
- if (!isTooltipHovered.current && triggeredByEvent.current === "hover" && !isTriggerHovered.current) {
156
- toggleVisibility(false);
157
- }
158
- }, SHOW_HIDE_DELAY);
159
- }, [toggleVisibility]);
160
- const handleTriggerFocus = useCallback(() => {
161
- triggeredByEvent.current = "focus";
162
- toggleVisibility(true);
163
- }, [toggleVisibility]);
164
- const handleTriggerBlur = useCallback(() => {
165
- if (triggeredByEvent.current === "focus") {
166
- toggleVisibility(false);
167
- }
168
- }, [toggleVisibility]);
169
- const handleTriggerKeyDown = useCallback(evt => {
170
- if (evt.key === "Escape") {
171
- toggleVisibility(false);
172
- }
173
- }, [toggleVisibility]);
174
- const handleTooltipPointerEnter = () => {
175
- isTooltipHovered.current = true;
176
- };
177
- const handleTooltipPointerLeave = () => {
178
- isTooltipHovered.current = false;
179
- if (triggeredByEvent.current === "hover") {
180
- toggleVisibility(false);
181
- }
182
- };
183
- useEffect(() => () => {
184
- // clear timers
185
- clearTimeout(showTooltipTimeoutId.current);
186
- clearTimeout(hideTooltipTimeoutId.current);
187
- }, []);
188
- useEffect(() => {
189
- let trigger;
190
- if (externalTriggerRef && externalTriggerRef.current && !children) {
191
- trigger = externalTriggerRef.current;
192
- trigger.setAttribute("tabindex", "0");
193
- trigger.addEventListener("pointerenter", handleTriggerPointerEnter);
194
- trigger.addEventListener("pointerleave", handleTriggerPointerLeave);
195
- trigger.addEventListener("focus", handleTriggerFocus);
196
- trigger.addEventListener("blur", handleTriggerBlur);
197
- trigger.addEventListener("keydown", handleTriggerKeyDown);
198
- }
199
- return () => {
200
- if (trigger) {
201
- trigger.removeEventListener("pointerenter", handleTriggerPointerEnter);
202
- trigger.removeEventListener("pointerleave", handleTriggerPointerLeave);
203
- trigger.removeEventListener("focus", handleTriggerFocus);
204
- trigger.removeEventListener("blur", handleTriggerBlur);
205
- trigger.removeEventListener("keydown", handleTriggerKeyDown);
206
- }
207
- };
208
- }, [externalTriggerRef, children, handleTriggerPointerEnter, handleTriggerPointerLeave, handleTriggerFocus, handleTriggerBlur, handleTriggerKeyDown]);
209
- useEffect(() => {
210
- if (externalTriggerRef && externalTriggerRef.current && !children) {
211
- const trigger = externalTriggerRef.current;
212
- if (isVisible) {
213
- trigger.setAttribute("aria-describedby", tooltipId);
214
- } else {
215
- trigger.removeAttribute("aria-describedby");
216
- }
217
- }
218
- }, [externalTriggerRef, children, tooltipId, isVisible]);
219
- useLayoutEffect(() => {
220
- if (isVisible && triggerRef.current && tooltipRef.current) {
221
- // calculate tooltip position
222
- setPosition(getTooltipPosition(placement, triggerRef, tooltipRef, document, window));
223
- }
224
- }, [isVisible, placement, triggerRef, document, window]);
225
- let portal;
226
- if (isVisible) {
227
- const tooltipElm = /*#__PURE__*/React.createElement(SubThemeProvider, {
228
- name: "inverted"
229
- }, /*#__PURE__*/React.createElement(StyledContainer, {
230
- "data-e2e-test-id": dataE2eTestId,
231
- "data-ds-id": "Tooltip",
232
- style: {
233
- top: position.top,
234
- left: position.left,
235
- animationDuration: getAnimationDuration()
236
- },
237
- ref: tooltipRef,
238
- id: tooltipId,
239
- role: "tooltip",
240
- "aria-hidden": "true",
241
- horizontalPlacement: position.horizontalPlacement,
242
- verticalPlacement: position.verticalPlacement,
243
- onPointerEnter: handleTooltipPointerEnter,
244
- onPointerLeave: handleTooltipPointerLeave
245
- }, /*#__PURE__*/React.createElement(Text, {
246
- size: "s"
247
- }, content), /*#__PURE__*/React.createElement(StyledArrow, {
248
- horizontalPlacement: position.horizontalPlacement,
249
- verticalPlacement: position.verticalPlacement
250
- })));
251
- portal = /*#__PURE__*/createPortal(tooltipElm, portalContainer || document.body);
252
- }
253
- const triggerElm = children ? /*#__PURE__*/React.cloneElement(children, {
254
- ref: triggerRef,
255
- ...(isVisible && {
256
- "aria-describedby": tooltipId
257
- }),
258
- tabIndex: 0,
259
- onPointerEnter: handleTriggerPointerEnter,
260
- onPointerLeave: handleTriggerPointerLeave,
261
- onFocus: handleTriggerFocus,
262
- onBlur: handleTriggerBlur,
263
- onKeyDown: handleTriggerKeyDown
264
- }) : null;
265
- return /*#__PURE__*/React.createElement(React.Fragment, null, triggerElm, portal);
266
- }
267
-
268
- export { Tooltip };
269
- //# sourceMappingURL=Tooltip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Tooltip.js","sources":["../../../../../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import React, {\n useState,\n useRef,\n useLayoutEffect,\n useEffect,\n useCallback,\n MutableRefObject,\n useMemo,\n} from \"react\";\nimport styled from \"@emotion/styled\";\nimport { keyframes } from \"@emotion/react\";\nimport { createPortal } from \"react-dom\";\nimport { useDocument } from \"../../shared/useDocument\";\nimport { useWindow } from \"../../shared/useWindow\";\nimport { SubThemeProvider } from \"../SubThemeProvider/SubThemeProvider\";\nimport { Text } from \"../Typography/Text/Text\";\nimport zIndices from \"../../../build-tokens/_zindex.json\";\n\nimport {\n ARROW_SIZE,\n ARROW_OFFSET,\n ANIMATION_DISTANCE,\n getTooltipPosition,\n} from \"./utils\";\n\nexport type BaseProps = {\n /* Tooltip content */\n content: string;\n /* Placement */\n placement?:\n | \"auto\"\n | \"top\"\n | \"bottom\"\n | \"top-left\"\n | \"top-right\"\n | \"bottom-left\"\n | \"bottom-right\";\n /* Custom portal container to render tooltip into */\n portalContainer?: HTMLElement;\n \"data-e2e-test-id\"?: string;\n /* Called when tooltip appears and disappears */\n onVisibilityChange?: (isVisible: boolean) => void;\n};\n\nexport type ConditionalProps =\n | {\n externalTriggerRef?: never;\n /* Trigger element - wrap trigger element within Tooltip - takes precedence over trigger prop */\n children: React.ReactElement;\n }\n | {\n children?: never;\n /* Trigger element ref - pass in an external trigger element */\n externalTriggerRef: MutableRefObject<any>;\n };\n\nexport type TooltipProps = BaseProps & ConditionalProps;\n\nexport type TooltipPosition = {\n top: number;\n left: number;\n horizontalPlacement: \"left\" | \"right\" | \"center\";\n verticalPlacement: \"top\" | \"bottom\";\n};\n\ntype StyledContainerProps = {\n horizontalPlacement: TooltipPosition[\"horizontalPlacement\"];\n verticalPlacement: TooltipPosition[\"verticalPlacement\"];\n};\n\nconst ANIMATION_DURATION = 200;\nconst SHOW_HIDE_DELAY = 200;\n\nconst StyledContainer = styled.div<StyledContainerProps>(\n ({ theme, horizontalPlacement, verticalPlacement }) => {\n const animationDistance =\n verticalPlacement === \"top\"\n ? `${ANIMATION_DISTANCE}px`\n : `-${ANIMATION_DISTANCE}px`;\n const animation = keyframes({\n to: {\n opacity: 1,\n transform:\n horizontalPlacement === \"center\"\n ? `translate(-50%, ${animationDistance})`\n : `translateY(${animationDistance})`,\n },\n });\n\n return {\n position: \"absolute\",\n zIndex: zIndices.tooltip.value,\n opacity: 0,\n animation: `${ANIMATION_DURATION}ms ease-out forwards ${animation}`,\n borderRadius: theme.variables.size.borderRadius.xs,\n backgroundColor: theme.values.color.background.primary.default,\n maxWidth: \"224px\",\n boxSizing: \"border-box\",\n padding: `${theme.variables.size.spacing.xs} ${theme.variables.size.spacing.s}`,\n\n ...(horizontalPlacement === \"center\" && {\n transform: \"translate(-50%)\",\n }),\n };\n }\n);\n\ntype StyledArrowProps = {\n verticalPlacement: TooltipPosition[\"verticalPlacement\"];\n horizontalPlacement: TooltipPosition[\"horizontalPlacement\"];\n};\n\nconst StyledArrow = styled.div<StyledArrowProps>(\n ({ theme, verticalPlacement, horizontalPlacement }) => ({\n position: \"absolute\",\n width: 0,\n height: 0,\n borderLeft: `${ARROW_SIZE}px solid transparent`,\n borderRight: `${ARROW_SIZE}px solid transparent`,\n\n ...(verticalPlacement === \"top\" && {\n top: \"100%\",\n borderTop: `${ARROW_SIZE}px solid ${theme.values.color.background.primary.default}`,\n }),\n\n ...(verticalPlacement === \"bottom\" && {\n top: `-${ARROW_SIZE}px`,\n borderBottom: `${ARROW_SIZE}px solid ${theme.values.color.background.primary.default}`,\n }),\n\n ...(horizontalPlacement === \"center\" && {\n left: \"50%\",\n transform: \"translate(-50%)\",\n }),\n\n ...(horizontalPlacement === \"right\" && {\n left: `${ARROW_OFFSET}px`,\n }),\n\n ...(horizontalPlacement === \"left\" && {\n right: `${ARROW_OFFSET}px`,\n }),\n })\n);\n\nconst initialPosition: TooltipPosition = {\n top: 0,\n left: 0,\n verticalPlacement: \"top\",\n horizontalPlacement: \"center\",\n};\n\nlet lastTooltipHideTimestamp = 0;\n\n/* Disable animation if time between last close and new open is less than 500ms + SHOW_HIDE_DELAY */\nfunction getAnimationDuration() {\n let animationDuration = `${ANIMATION_DURATION}ms`;\n\n if (lastTooltipHideTimestamp) {\n const timeSinceLastTooltip = Date.now() - lastTooltipHideTimestamp;\n\n if (timeSinceLastTooltip < 500 + SHOW_HIDE_DELAY) {\n animationDuration = \"0ms\";\n }\n }\n return animationDuration;\n}\n\nexport function Tooltip({\n placement = \"auto\",\n content,\n children,\n externalTriggerRef,\n portalContainer,\n \"data-e2e-test-id\": dataE2eTestId,\n onVisibilityChange,\n}: TooltipProps): React.ReactElement {\n const tooltipId = useMemo(\n () => `DSTooltip_${Math.floor(Date.now() * Math.random())}`,\n []\n );\n const [position, setPosition] = useState(initialPosition);\n const [isVisible, setVisible] = useState(false);\n const triggeredByEvent = useRef(null); // indicates if triggered by hover or focus\n const isTooltipHovered = useRef(false);\n const isTriggerHovered = useRef(false);\n const internalTriggerRef = useRef(null);\n const tooltipRef = useRef(null);\n const document = useDocument();\n const window = useWindow();\n const hideTooltipTimeoutId = useRef(null);\n const showTooltipTimeoutId = useRef(null);\n const triggerRef = externalTriggerRef || internalTriggerRef;\n\n const toggleVisibility = useCallback(\n (status: boolean) => {\n setVisible(status);\n\n if (onVisibilityChange) {\n onVisibilityChange(status);\n }\n\n // log time when tooltip closes\n if (!status) {\n lastTooltipHideTimestamp = Date.now();\n }\n },\n [onVisibilityChange]\n );\n\n const handleTriggerPointerEnter = useCallback(() => {\n isTriggerHovered.current = true;\n if (!isTooltipHovered.current) {\n clearTimeout(showTooltipTimeoutId.current);\n // Delay show tooltip to prevent flickering when mouse moves quickly over trigger\n showTooltipTimeoutId.current = setTimeout(() => {\n if (isTriggerHovered.current) {\n triggeredByEvent.current = \"hover\";\n toggleVisibility(true);\n }\n }, SHOW_HIDE_DELAY);\n }\n }, [toggleVisibility]);\n\n const handleTriggerPointerLeave = useCallback(() => {\n isTriggerHovered.current = false;\n clearTimeout(hideTooltipTimeoutId.current);\n // Delay removing tooltip from DOM to allow hover over tooltip element\n hideTooltipTimeoutId.current = setTimeout(() => {\n if (\n !isTooltipHovered.current &&\n triggeredByEvent.current === \"hover\" &&\n !isTriggerHovered.current\n ) {\n toggleVisibility(false);\n }\n }, SHOW_HIDE_DELAY);\n }, [toggleVisibility]);\n\n const handleTriggerFocus = useCallback(() => {\n triggeredByEvent.current = \"focus\";\n toggleVisibility(true);\n }, [toggleVisibility]);\n\n const handleTriggerBlur = useCallback(() => {\n if (triggeredByEvent.current === \"focus\") {\n toggleVisibility(false);\n }\n }, [toggleVisibility]);\n\n const handleTriggerKeyDown = useCallback(\n (evt) => {\n if (evt.key === \"Escape\") {\n toggleVisibility(false);\n }\n },\n [toggleVisibility]\n );\n\n const handleTooltipPointerEnter = () => {\n isTooltipHovered.current = true;\n };\n\n const handleTooltipPointerLeave = () => {\n isTooltipHovered.current = false;\n if (triggeredByEvent.current === \"hover\") {\n toggleVisibility(false);\n }\n };\n\n useEffect(\n () => () => {\n // clear timers\n clearTimeout(showTooltipTimeoutId.current);\n clearTimeout(hideTooltipTimeoutId.current);\n },\n []\n );\n\n useEffect(() => {\n let trigger: HTMLElement;\n\n if (externalTriggerRef && externalTriggerRef.current && !children) {\n trigger = externalTriggerRef.current;\n\n trigger.setAttribute(\"tabindex\", \"0\");\n trigger.addEventListener(\"pointerenter\", handleTriggerPointerEnter);\n trigger.addEventListener(\"pointerleave\", handleTriggerPointerLeave);\n trigger.addEventListener(\"focus\", handleTriggerFocus);\n trigger.addEventListener(\"blur\", handleTriggerBlur);\n trigger.addEventListener(\"keydown\", handleTriggerKeyDown);\n }\n\n return () => {\n if (trigger) {\n trigger.removeEventListener(\"pointerenter\", handleTriggerPointerEnter);\n trigger.removeEventListener(\"pointerleave\", handleTriggerPointerLeave);\n trigger.removeEventListener(\"focus\", handleTriggerFocus);\n trigger.removeEventListener(\"blur\", handleTriggerBlur);\n trigger.removeEventListener(\"keydown\", handleTriggerKeyDown);\n }\n };\n }, [\n externalTriggerRef,\n children,\n handleTriggerPointerEnter,\n handleTriggerPointerLeave,\n handleTriggerFocus,\n handleTriggerBlur,\n handleTriggerKeyDown,\n ]);\n\n useEffect(() => {\n if (externalTriggerRef && externalTriggerRef.current && !children) {\n const trigger = externalTriggerRef.current;\n\n if (isVisible) {\n trigger.setAttribute(\"aria-describedby\", tooltipId);\n } else {\n trigger.removeAttribute(\"aria-describedby\");\n }\n }\n }, [externalTriggerRef, children, tooltipId, isVisible]);\n\n useLayoutEffect(() => {\n if (isVisible && triggerRef.current && tooltipRef.current) {\n // calculate tooltip position\n setPosition(\n getTooltipPosition(placement, triggerRef, tooltipRef, document, window)\n );\n }\n }, [isVisible, placement, triggerRef, document, window]);\n\n let portal;\n\n if (isVisible) {\n const tooltipElm = (\n <SubThemeProvider name=\"inverted\">\n <StyledContainer\n data-e2e-test-id={dataE2eTestId}\n data-ds-id=\"Tooltip\"\n style={{\n top: position.top,\n left: position.left,\n animationDuration: getAnimationDuration(),\n }}\n ref={tooltipRef}\n id={tooltipId}\n role=\"tooltip\"\n aria-hidden=\"true\"\n horizontalPlacement={position.horizontalPlacement}\n verticalPlacement={position.verticalPlacement}\n onPointerEnter={handleTooltipPointerEnter}\n onPointerLeave={handleTooltipPointerLeave}\n >\n <Text size=\"s\">{content}</Text>\n <StyledArrow\n horizontalPlacement={position.horizontalPlacement}\n verticalPlacement={position.verticalPlacement}\n />\n </StyledContainer>\n </SubThemeProvider>\n );\n\n portal = createPortal(tooltipElm, portalContainer || document.body);\n }\n\n const triggerElm = children\n ? React.cloneElement(children, {\n ref: triggerRef,\n ...(isVisible && {\n \"aria-describedby\": tooltipId,\n }),\n tabIndex: 0,\n onPointerEnter: handleTriggerPointerEnter,\n onPointerLeave: handleTriggerPointerLeave,\n onFocus: handleTriggerFocus,\n onBlur: handleTriggerBlur,\n onKeyDown: handleTriggerKeyDown,\n })\n : null;\n\n return (\n <>\n {triggerElm}\n {portal}\n </>\n );\n}\n"],"names":["ANIMATION_DURATION","SHOW_HIDE_DELAY","StyledContainer","_styled","process","env","NODE_ENV","target","label","_ref","theme","horizontalPlacement","verticalPlacement","animationDistance","ANIMATION_DISTANCE","animation","keyframes","to","opacity","transform","position","zIndex","zIndices","tooltip","value","borderRadius","variables","size","xs","backgroundColor","values","color","background","primary","default","maxWidth","boxSizing","padding","spacing","s","StyledArrow","_ref2","width","height","borderLeft","ARROW_SIZE","borderRight","top","borderTop","borderBottom","left","ARROW_OFFSET","right","initialPosition","lastTooltipHideTimestamp","getAnimationDuration","animationDuration","timeSinceLastTooltip","Date","now","Tooltip","_ref3","placement","content","children","externalTriggerRef","portalContainer","dataE2eTestId","onVisibilityChange","tooltipId","useMemo","Math","floor","random","setPosition","useState","isVisible","setVisible","triggeredByEvent","useRef","isTooltipHovered","isTriggerHovered","internalTriggerRef","tooltipRef","document","useDocument","window","useWindow","hideTooltipTimeoutId","showTooltipTimeoutId","triggerRef","toggleVisibility","useCallback","status","handleTriggerPointerEnter","current","clearTimeout","setTimeout","handleTriggerPointerLeave","handleTriggerFocus","handleTriggerBlur","handleTriggerKeyDown","evt","key","handleTooltipPointerEnter","handleTooltipPointerLeave","useEffect","trigger","setAttribute","addEventListener","removeEventListener","removeAttribute","useLayoutEffect","getTooltipPosition","portal","tooltipElm","React","createElement","SubThemeProvider","name","style","ref","id","role","onPointerEnter","onPointerLeave","Text","createPortal","body","triggerElm","cloneElement","tabIndex","onFocus","onBlur","onKeyDown","Fragment"],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { RefObject } from "react";
2
- import type { TooltipProps, TooltipPosition } from "./Tooltip";
3
- export declare const DISTANCE_FROM_TRIGGER = 4;
4
- export declare const ANIMATION_DISTANCE = 8;
5
- export declare const ARROW_SIZE = 6;
6
- export declare const TOOLTIP_MARGIN: number;
7
- export declare const ARROW_OFFSET = 8;
8
- /**
9
- * Get tooltip position
10
- */
11
- export declare function getTooltipPosition(placement: TooltipProps["placement"], triggerRef: RefObject<any>, tooltipRef: RefObject<any>, document: Document, window: Window): TooltipPosition;
@@ -1,75 +0,0 @@
1
- const DISTANCE_FROM_TRIGGER = 4;
2
- const ANIMATION_DISTANCE = 8;
3
- const ARROW_SIZE = 6;
4
- const TOOLTIP_MARGIN = ARROW_SIZE + ANIMATION_DISTANCE + DISTANCE_FROM_TRIGGER;
5
- const ARROW_OFFSET = 8;
6
-
7
- /**
8
- * Get tooltip position
9
- */
10
- function getTooltipPosition(placement, triggerRef, tooltipRef, document, window) {
11
- const triggerRect = triggerRef.current.getBoundingClientRect();
12
- const tooltipRect = tooltipRef.current.getBoundingClientRect();
13
- const viewportWidth = document.documentElement.clientWidth;
14
- let top = 0;
15
- let left = 0;
16
- let verticalPlacement = "top";
17
- let horizontalPlacement = "center";
18
- switch (placement) {
19
- case "top":
20
- case "bottom":
21
- verticalPlacement = placement;
22
- break;
23
- case "top-left":
24
- case "top-right":
25
- case "bottom-left":
26
- case "bottom-right":
27
- {
28
- const placements = placement.split("-");
29
- verticalPlacement = placements[0];
30
- horizontalPlacement = placements[1];
31
- break;
32
- }
33
- default:
34
- // If there is no space on the top of trigger, then place it at the bottom
35
- if (triggerRect.top < tooltipRect.height) {
36
- verticalPlacement = "bottom";
37
- }
38
-
39
- // Check if we have space on the left for half of the tooltip width
40
- if (triggerRect.left >= tooltipRect.width / 2) {
41
- // Check if we have space on the right for half of the tooltip width
42
- if (triggerRect.left + triggerRect.width / 2 + tooltipRect.width / 2 > viewportWidth) {
43
- // no space on the right
44
- horizontalPlacement = "left";
45
- }
46
- } else {
47
- // We don't have space on the left
48
- horizontalPlacement = "right";
49
- }
50
- }
51
- if (verticalPlacement === "top") {
52
- top = triggerRect.top - tooltipRect.height - TOOLTIP_MARGIN;
53
- } else {
54
- top = triggerRect.bottom + TOOLTIP_MARGIN;
55
- }
56
- switch (horizontalPlacement) {
57
- case "left":
58
- left = triggerRect.left + triggerRect.width / 2 - tooltipRect.width + ARROW_OFFSET + ARROW_SIZE;
59
- break;
60
- case "right":
61
- left = triggerRect.left + triggerRect.width / 2 - ARROW_OFFSET - ARROW_SIZE;
62
- break;
63
- default:
64
- left = triggerRect.left + triggerRect.width / 2;
65
- }
66
- return {
67
- top: top + window.scrollY,
68
- left: left + window.scrollX,
69
- horizontalPlacement,
70
- verticalPlacement
71
- };
72
- }
73
-
74
- export { ANIMATION_DISTANCE, ARROW_OFFSET, ARROW_SIZE, DISTANCE_FROM_TRIGGER, TOOLTIP_MARGIN, getTooltipPosition };
75
- //# sourceMappingURL=utils.js.map