@rio-cloud/rio-uikit 1.6.0 → 1.7.0

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 (851) hide show
  1. package/.DS_Store +0 -0
  2. package/AccentBar.d.ts +2 -0
  3. package/AccentBar.js +2 -0
  4. package/Avatar.d.ts +2 -0
  5. package/Avatar.js +2 -0
  6. package/AvatarGroup.d.ts +2 -0
  7. package/AvatarGroup.js +2 -0
  8. package/Banner.d.ts +2 -0
  9. package/Banner.js +2 -0
  10. package/ButtonToolbar.d.ts +2 -0
  11. package/ButtonToolbar.js +2 -0
  12. package/Card.d.ts +2 -0
  13. package/Card.js +2 -0
  14. package/DateRangePicker.js +2 -3
  15. package/FormLabel.d.ts +2 -0
  16. package/FormLabel.js +2 -0
  17. package/LabeledElement.d.ts +2 -0
  18. package/LabeledElement.js +2 -0
  19. package/StepButton.d.ts +2 -0
  20. package/StepButton.js +2 -0
  21. package/VirtualList.d.ts +2 -0
  22. package/VirtualList.js +2 -0
  23. package/components/accentBar/AccentBar.d.ts +21 -0
  24. package/components/accentBar/AccentBar.js +12 -0
  25. package/components/actionBarItem/ActionBarItem.d.ts +2 -6
  26. package/components/actionBarItem/ActionBarItem.js +6 -7
  27. package/components/actionBarItem/ActionBarItemIcon.d.ts +2 -2
  28. package/components/actionBarItem/ActionBarItemIcon.js +2 -3
  29. package/components/actionBarItem/ActionBarItemList.js +2 -6
  30. package/components/actionBarItem/ActionBarItemListItem.js +2 -5
  31. package/components/actionBarItem/ActionBarItemListSeparator.js +2 -6
  32. package/components/actionBarItem/ActionBarItemPopoverContent.js +2 -6
  33. package/components/actionBarItem/ActionBarOverlay.d.ts +1 -1
  34. package/components/actionBarItem/ActionBarOverlay.js +3 -4
  35. package/components/activity/Activity.js +2 -3
  36. package/components/animatedNumber/AnimatedNumber.d.ts +6 -6
  37. package/components/animatedNumber/AnimatedNumber.js +2 -3
  38. package/components/applicationHeader/AppMenu.js +3 -6
  39. package/components/applicationHeader/AppMenuContent.js +2 -4
  40. package/components/applicationHeader/AppMenuDropdown.js +4 -4
  41. package/components/applicationHeader/ApplicationActionBar.js +4 -7
  42. package/components/applicationHeader/ApplicationHeader.js +4 -5
  43. package/components/applicationHeader/CollapsedNavItem.js +3 -3
  44. package/components/applicationHeader/MobileAppMenu.js +2 -2
  45. package/components/applicationHeader/MobileHeaderModal.js +2 -2
  46. package/components/applicationHeader/MobileSubmoduleNavigation.js +3 -3
  47. package/components/applicationHeader/NavItems.js +2 -2
  48. package/components/applicationLayout/ApplicationLayout.js +2 -4
  49. package/components/applicationLayout/ApplicationLayoutBody.d.ts +1 -1
  50. package/components/applicationLayout/ApplicationLayoutBody.js +9 -9
  51. package/components/applicationLayout/ApplicationLayoutBodyBanner.d.ts +1 -1
  52. package/components/applicationLayout/ApplicationLayoutBodyBanner.js +2 -3
  53. package/components/applicationLayout/ApplicationLayoutBodyBottomBar.js +2 -3
  54. package/components/applicationLayout/ApplicationLayoutBodyNavigation.d.ts +1 -1
  55. package/components/applicationLayout/ApplicationLayoutBodyNavigation.js +2 -3
  56. package/components/applicationLayout/ApplicationLayoutHeader.d.ts +1 -1
  57. package/components/applicationLayout/ApplicationLayoutHeader.js +2 -3
  58. package/components/applicationLayout/ApplicationLayoutSidebar.d.ts +1 -1
  59. package/components/applicationLayout/ApplicationLayoutSidebar.js +2 -3
  60. package/components/applicationLayout/SubNavigation.js +2 -3
  61. package/components/aspectRatioPlaceholder/AspectRatioPlaceholder.js +1 -3
  62. package/components/assetTree/AssetTree.d.ts +1 -1
  63. package/components/assetTree/AssetTree.js +4 -5
  64. package/components/assetTree/Tree.d.ts +2 -2
  65. package/components/assetTree/Tree.js +9 -12
  66. package/components/assetTree/TreeLeaf.js +1 -1
  67. package/components/assetTree/TreeLeafList.js +0 -2
  68. package/components/assetTree/TreeNode.js +1 -1
  69. package/components/assetTree/TreeNodeContainer.js +1 -3
  70. package/components/assetTree/TreeNothingFound.js +2 -2
  71. package/components/assetTree/TreeOption.js +2 -5
  72. package/components/assetTree/TreeOptions.js +3 -5
  73. package/components/assetTree/TreeRoot.js +1 -3
  74. package/components/assetTree/TreeSearch.js +1 -1
  75. package/components/assetTree/TreeSelectAll.js +1 -3
  76. package/components/assetTree/TreeSidebar.js +2 -3
  77. package/components/assetTree/TreeSidebarCategories.js +2 -4
  78. package/components/assetTree/TreeSummary.js +1 -1
  79. package/components/assetTree/TreeSummaryRow.js +1 -3
  80. package/components/assetTree/TypeCounter.js +2 -3
  81. package/components/assetTree/treeReducer.js +8 -8
  82. package/components/assetTree/treeUtils.d.ts +0 -2
  83. package/components/assetTree/treeUtils.js +14 -11
  84. package/components/autosuggest/AutoSuggest.js +12 -16
  85. package/components/autosuggest/AutoSuggestAddons.js +1 -3
  86. package/components/autosuggest/DropdownSpinner.js +1 -2
  87. package/components/autosuggest/NoItemMessage.js +1 -3
  88. package/components/avatar/Avatar.d.ts +54 -0
  89. package/components/avatar/Avatar.js +27 -0
  90. package/components/avatar/AvatarContent.d.ts +10 -0
  91. package/components/avatar/AvatarContent.js +20 -0
  92. package/components/avatar/AvatarGroup.d.ts +15 -0
  93. package/components/avatar/AvatarGroup.js +23 -0
  94. package/components/banner/Banner.d.ts +66 -0
  95. package/components/banner/Banner.js +49 -0
  96. package/components/banner/BannerActions.d.ts +9 -0
  97. package/components/banner/BannerActions.js +5 -0
  98. package/components/banner/BannerContent.d.ts +25 -0
  99. package/components/banner/BannerContent.js +16 -0
  100. package/components/banner/BannerIcon.d.ts +9 -0
  101. package/components/banner/BannerIcon.js +5 -0
  102. package/components/banner/BannerPage.d.ts +9 -0
  103. package/components/banner/BannerPage.js +5 -0
  104. package/components/bottomSheet/BottomSheet.d.ts +2 -2
  105. package/components/bottomSheet/BottomSheet.js +5 -6
  106. package/components/bottomSheet/TimedBottomSheet.js +3 -4
  107. package/components/button/Button.d.ts +2 -0
  108. package/components/button/Button.js +4 -5
  109. package/components/button/ButtonToolbar.d.ts +13 -0
  110. package/components/button/ButtonToolbar.js +8 -0
  111. package/components/button/StepButton.d.ts +12 -0
  112. package/components/button/StepButton.js +8 -0
  113. package/components/button/ToggleButton.js +1 -3
  114. package/components/calendarStripe/CalendarStripe.js +1 -1
  115. package/components/card/Card.d.ts +21 -0
  116. package/components/card/Card.js +8 -0
  117. package/components/carousel/Carousel.d.ts +4 -6
  118. package/components/charts/AreaChart.js +6 -9
  119. package/components/charts/AreaGradient.js +1 -2
  120. package/components/charts/BarChart.js +13 -12
  121. package/components/charts/ChartGrid.js +1 -1
  122. package/components/charts/ChartLabel.d.ts +0 -1
  123. package/components/charts/ChartNeedle.js +13 -4
  124. package/components/charts/ComposedChart.js +13 -16
  125. package/components/charts/Legend.js +0 -2
  126. package/components/charts/LineChart.js +7 -10
  127. package/components/charts/PieChart.js +6 -9
  128. package/components/charts/RadialBarChart.js +5 -8
  129. package/components/charts/ReferenceLine.js +3 -6
  130. package/components/charts/ResponsiveContainer.js +1 -1
  131. package/components/charts/XAxis.js +2 -2
  132. package/components/charts/YAxis.d.ts +0 -1
  133. package/components/charts/chartHelper.d.ts +2 -2
  134. package/components/charts/chartHelper.js +1 -1
  135. package/components/checkbox/Checkbox.js +4 -7
  136. package/components/checkbox/CheckboxIcon.js +1 -1
  137. package/components/clearableInput/ClearableInput.js +18 -7
  138. package/components/collapse/Collapse.d.ts +1 -1
  139. package/components/collapse/Collapse.js +1 -3
  140. package/components/contentLoader/ContentLoader.js +2 -5
  141. package/components/dataTabs/DataTab.js +3 -6
  142. package/components/dataTabs/DataTabHeader.js +1 -1
  143. package/components/dataTabs/DataTabs.js +7 -9
  144. package/components/datepicker/DatePicker.d.ts +16 -16
  145. package/components/datepicker/DatePicker.js +3 -4
  146. package/components/datepicker/DateRangePicker.d.ts +55 -55
  147. package/components/datepicker/DateRangePicker.js +28 -14
  148. package/components/dialog/ConfirmationDialog.js +3 -6
  149. package/components/dialog/Dialog.d.ts +2 -2
  150. package/components/dialog/Dialog.js +13 -13
  151. package/components/dialog/DialogBody.js +2 -6
  152. package/components/dialog/DialogFooter.js +2 -5
  153. package/components/dialog/DialogHeader.js +2 -3
  154. package/components/dialog/FrameDialog.js +2 -2
  155. package/components/dialog/InfoDialog.js +2 -5
  156. package/components/dialog/MediaDialog.js +7 -9
  157. package/components/dialog/OnboardingDialog.js +2 -5
  158. package/components/dialog/ReleaseNotesDialog.js +1 -3
  159. package/components/dialog/SaveDialog.js +3 -6
  160. package/components/dialog/SimpleDialog.js +2 -5
  161. package/components/dialog/SplitDialog.js +3 -6
  162. package/components/divider/Divider.js +3 -5
  163. package/components/dropdown/ButtonDropdown.d.ts +1 -1
  164. package/components/dropdown/ButtonDropdown.js +11 -11
  165. package/components/dropdown/Caret.js +0 -2
  166. package/components/dropdown/DropdownSubmenu.js +2 -3
  167. package/components/dropdown/DropdownToggleButton.js +2 -3
  168. package/components/dropdown/SimpleButtonDropdown.js +1 -3
  169. package/components/dropdown/SingleButtonDropdown.js +1 -3
  170. package/components/dropdown/SplitButtonDropdown.js +1 -3
  171. package/components/dropdown/SplitCaretButton.js +2 -3
  172. package/components/editableContent/EditableContent.js +6 -9
  173. package/components/expander/ExpanderList.js +5 -5
  174. package/components/expander/ExpanderPanel.js +2 -3
  175. package/components/fade/Fade.js +2 -2
  176. package/components/fade/FadeExpander.js +2 -2
  177. package/components/fade/FadeUp.js +2 -3
  178. package/components/feedback/FeedbackInlineButtons.js +2 -5
  179. package/components/feedback/FeedbackRating.js +4 -6
  180. package/components/feedback/FeedbackReactions.js +4 -5
  181. package/components/filepicker/FilePicker.js +5 -6
  182. package/components/formLabel/FormLabel.d.ts +13 -0
  183. package/components/formLabel/FormLabel.js +17 -0
  184. package/components/formLabel/LabeledElement.d.ts +28 -0
  185. package/components/formLabel/LabeledElement.js +11 -0
  186. package/components/groupedItemList/GroupedItemList.js +2 -5
  187. package/components/licensePlate/LicensePlate.js +4 -6
  188. package/components/listMenu/ListMenu.d.ts +1 -0
  189. package/components/listMenu/ListMenu.js +11 -11
  190. package/components/listMenu/ListMenuGroup.d.ts +17 -0
  191. package/components/listMenu/ListMenuGroup.js +1 -3
  192. package/components/listMenu/ListMenuHeader.d.ts +3 -1
  193. package/components/listMenu/ListMenuHeader.js +3 -5
  194. package/components/loadMore/LoadMoreButton.js +2 -5
  195. package/components/loadMore/LoadMoreProgress.js +1 -1
  196. package/components/map/components/Map.js +5 -7
  197. package/components/map/components/MapContext.d.ts +0 -1
  198. package/components/map/components/MapElements.js +1 -1
  199. package/components/map/components/MapPosition.js +3 -5
  200. package/components/map/components/MapSize.js +3 -3
  201. package/components/map/components/constants.d.ts +1 -2
  202. package/components/map/components/features/ContextMenu.d.ts +0 -2
  203. package/components/map/components/features/ContextMenu.js +3 -4
  204. package/components/map/components/features/ContextMenuItem.d.ts +0 -1
  205. package/components/map/components/features/MapSettings.d.ts +0 -1
  206. package/components/map/components/features/MapSettings.js +6 -7
  207. package/components/map/components/features/MapZoom.js +6 -9
  208. package/components/map/components/features/Route.d.ts +1 -1
  209. package/components/map/components/features/Route.js +23 -4
  210. package/components/map/components/features/basics/Circle.d.ts +0 -1
  211. package/components/map/components/features/basics/Circle.js +3 -5
  212. package/components/map/components/features/basics/InfoBubble.d.ts +0 -1
  213. package/components/map/components/features/basics/InfoBubble.js +4 -6
  214. package/components/map/components/features/basics/Marker.d.ts +2 -3
  215. package/components/map/components/features/basics/Marker.js +2 -4
  216. package/components/map/components/features/basics/Polygon.d.ts +0 -1
  217. package/components/map/components/features/basics/Polygon.js +3 -5
  218. package/components/map/components/features/basics/Polyline.d.ts +0 -1
  219. package/components/map/components/features/basics/Polyline.js +18 -7
  220. package/components/map/components/features/basics/TextMarker.js +2 -5
  221. package/components/map/components/features/layers/MapLayerGroup.js +11 -7
  222. package/components/map/components/features/layers/MapOverlayLayers.js +0 -1
  223. package/components/map/components/features/layers/MarkerLayer.js +6 -6
  224. package/components/map/components/features/layers/clustering/ClusterLayer.d.ts +0 -1
  225. package/components/map/components/features/layers/clustering/ClusterLayer.js +2 -4
  226. package/components/map/components/features/layers/clustering/SimpleClusterLayer.js +2 -4
  227. package/components/map/components/features/layers/overlayLayers/IncidentsLayer.js +13 -16
  228. package/components/map/components/features/layers/overlayLayers/Layer.d.ts +0 -1
  229. package/components/map/components/features/layers/overlayLayers/Layer.js +4 -8
  230. package/components/map/components/features/layers/overlayLayers/RoadRestrictionLayer.js +2 -5
  231. package/components/map/components/features/layers/overlayLayers/TrafficLayer.js +4 -8
  232. package/components/map/components/features/settings/MapSettingsItem.js +3 -3
  233. package/components/map/components/features/settings/MapSettingsPanel.js +2 -4
  234. package/components/map/components/features/settings/MapSettingsTile.js +9 -10
  235. package/components/map/components/features/settings/ZoomButtons.js +1 -3
  236. package/components/map/components/features/settings/builtinSettings/MapAdditionalLayerSettings.js +2 -5
  237. package/components/map/components/features/settings/builtinSettings/MapClusterSettings.js +2 -5
  238. package/components/map/components/features/settings/builtinSettings/MapLayerSettings.js +8 -13
  239. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +3 -4
  240. package/components/map/components/features/settings/buttons/MapBoundingBoxButton.js +2 -5
  241. package/components/map/components/features/settings/buttons/MapCenterMarkerButton.js +2 -5
  242. package/components/map/components/features/settings/buttons/MapLockMarkerButton.js +2 -5
  243. package/components/map/components/features/settings/items/MapCustomerPoiSettingsItem.d.ts +0 -1
  244. package/components/map/components/features/settings/items/MapCustomerPoiSettingsItem.js +2 -4
  245. package/components/map/components/features/settings/items/MapLayerIncidentsItem.d.ts +0 -1
  246. package/components/map/components/features/settings/items/MapLayerIncidentsItem.js +2 -4
  247. package/components/map/components/features/settings/items/MapLayerRoadRestrictionsItem.d.ts +0 -1
  248. package/components/map/components/features/settings/items/MapLayerRoadRestrictionsItem.js +2 -4
  249. package/components/map/components/features/settings/items/MapLayerTrafficItem.d.ts +0 -1
  250. package/components/map/components/features/settings/items/MapLayerTrafficItem.js +2 -4
  251. package/components/map/components/features/settings/items/MapSettingsDropdownHeader.js +2 -4
  252. package/components/map/components/features/settings/items/MapWorkshopPoiSettingsItem.d.ts +0 -1
  253. package/components/map/components/features/settings/items/MapWorkshopPoiSettingsItem.js +2 -4
  254. package/components/map/icons/MapIcon.js +35 -35
  255. package/components/map/utils/clustering.d.ts +0 -1
  256. package/components/map/utils/eventHandling.d.ts +0 -1
  257. package/components/map/utils/eventHandling.js +1 -1
  258. package/components/map/utils/mapTypes.d.ts +0 -2
  259. package/components/map/utils/mapUi.d.ts +0 -1
  260. package/components/map/utils/mapUtils.d.ts +0 -1
  261. package/components/map/utils/mapUtils.js +5 -5
  262. package/components/map/utils/positions.js +2 -2
  263. package/components/map/utils/rendering.d.ts +0 -1
  264. package/components/map/utils/rendering.js +8 -10
  265. package/components/mapMarker/ClusterMapMarker.js +1 -2
  266. package/components/mapMarker/SingleMapMarker.js +4 -7
  267. package/components/menuItems/MenuItem.js +1 -1
  268. package/components/menuItems/MenuItemList.js +2 -3
  269. package/components/menuItems/MenuItems.js +1 -5
  270. package/components/navigation/AppNavigationBar.d.ts +17 -0
  271. package/components/navigation/AppNavigationBar.js +3 -4
  272. package/components/noData/NoData.js +3 -6
  273. package/components/notification/Notification.d.ts +50 -30
  274. package/components/notification/Notification.js +96 -3
  275. package/components/notification/NotificationsContainer.d.ts +2 -0
  276. package/components/notification/NotificationsContainer.js +2 -4
  277. package/components/numberControl/NumberControl.js +3 -4
  278. package/components/numberInput/NumberInput.js +4 -5
  279. package/components/onboarding/OnboardingTip.js +3 -5
  280. package/components/overlay/OverlayTrigger.js +29 -14
  281. package/components/page/Page.js +1 -3
  282. package/components/pager/Pager.js +4 -5
  283. package/components/popover/Popover.d.ts +5 -5
  284. package/components/popover/Popover.js +4 -6
  285. package/components/position/Position.js +1 -2
  286. package/components/radiobutton/RadioButton.js +3 -4
  287. package/components/releaseNotes/ReleaseNotes.js +3 -6
  288. package/components/resizer/Resizer.js +2 -3
  289. package/components/responsiveColumnStripe/ResponsiveColumnStripe.d.ts +1 -1
  290. package/components/responsiveColumnStripe/ResponsiveColumnStripe.js +8 -12
  291. package/components/rules/RuleConnector.js +2 -5
  292. package/components/rules/RuleContainer.js +4 -6
  293. package/components/rules/RulesWrapper.js +3 -9
  294. package/components/saveableInput/SaveableInput.js +4 -6
  295. package/components/selects/BaseSelectDropdown.js +9 -9
  296. package/components/selects/ClearButton.js +1 -3
  297. package/components/selects/DropdownHeader.js +1 -3
  298. package/components/selects/Multiselect.js +7 -9
  299. package/components/selects/MultiselectToggleCounter.js +1 -3
  300. package/components/selects/MultiselectToggleFilter.js +0 -2
  301. package/components/selects/MultiselectTogglePlaceholder.js +1 -3
  302. package/components/selects/MultiselectToggleSelection.js +5 -7
  303. package/components/selects/NoItemMessage.js +1 -3
  304. package/components/selects/Select.js +5 -7
  305. package/components/selects/SelectFilter.js +0 -2
  306. package/components/selects/SelectedOption.js +6 -8
  307. package/components/selects/WithFeedbackAndAddon.js +1 -3
  308. package/components/sidebars/Sidebar.js +8 -10
  309. package/components/sidebars/SidebarBackdrop.js +0 -1
  310. package/components/sidebars/SidebarCloseButton.js +1 -2
  311. package/components/sidebars/SidebarFooter.js +1 -3
  312. package/components/sidebars/SidebarFullscreenToggle.js +2 -3
  313. package/components/slider/RangeSlider.js +2 -3
  314. package/components/slider/Slider.js +2 -3
  315. package/components/smoothScrollbars/SmoothScrollbars.d.ts +1 -1
  316. package/components/smoothScrollbars/SmoothScrollbars.js +7 -7
  317. package/components/spinner/Spinner.js +6 -9
  318. package/components/states/BaseStateProps.js +1 -2
  319. package/components/states/CustomState.js +12 -15
  320. package/components/states/EmptyState.js +2 -5
  321. package/components/states/ErrorState.js +2 -5
  322. package/components/states/ForbiddenState.js +2 -5
  323. package/components/states/MaintenanceState.js +2 -5
  324. package/components/states/NotBookedState.js +4 -7
  325. package/components/states/NotFoundState.js +2 -5
  326. package/components/states/StateButton.js +2 -4
  327. package/components/states/StateIcon.js +0 -1
  328. package/components/statsWidget/StatsWidget.d.ts +4 -4
  329. package/components/statsWidget/StatsWidget.js +3 -6
  330. package/components/statsWidget/StatsWidgetBody.js +2 -5
  331. package/components/statsWidget/StatsWidgetFooter.js +2 -5
  332. package/components/statsWidget/StatsWidgetHeader.js +2 -5
  333. package/components/statsWidget/StatsWidgetNumber.js +2 -5
  334. package/components/statsWidget/StatsWidgetSpacer.js +2 -4
  335. package/components/statsWidget/StatsWidgets.js +2 -5
  336. package/components/statusBar/StatusBar.js +3 -5
  337. package/components/statusBar/StatusBarIcon.js +2 -5
  338. package/components/statusBar/StatusBarLabel.js +2 -5
  339. package/components/statusBar/StatusBarProgressBar.js +2 -3
  340. package/components/steppedProgressBar/SteppedProgressBar.js +1 -1
  341. package/components/switch/Switch.d.ts +4 -6
  342. package/components/switch/Switch.js +2 -3
  343. package/components/table/SortArrowDown.js +0 -1
  344. package/components/table/SortArrowUp.js +0 -1
  345. package/components/table/SortArrows.js +0 -1
  346. package/components/table/TableCardsSorting.js +1 -1
  347. package/components/table/TableSearch.js +2 -4
  348. package/components/table/TableSettingsColumnButtons.js +3 -4
  349. package/components/table/TableSettingsColumnDetails.js +1 -3
  350. package/components/table/TableSettingsDialog.js +8 -6
  351. package/components/table/TableSettingsDialog.types.d.ts +0 -1
  352. package/components/table/TableSettingsDialogFooter.js +1 -3
  353. package/components/table/TableSettingsListContainer.js +1 -1
  354. package/components/table/TableSettingsListItem.js +2 -4
  355. package/components/table/TableToolbar.js +1 -3
  356. package/components/table/TableViewToggles.js +4 -5
  357. package/components/tag/Tag.js +2 -3
  358. package/components/tag/TagList.js +3 -6
  359. package/components/tagManager/CustomSuggestionItem.js +1 -3
  360. package/components/tagManager/TagManager.js +2 -3
  361. package/components/tagManager/TagManagerItemList.js +3 -4
  362. package/components/teaser/Teaser.js +11 -15
  363. package/components/teaser/TeaserContainer.js +3 -3
  364. package/components/timepicker/TimePicker.js +3 -4
  365. package/components/tooltip/SimpleTooltip.js +2 -5
  366. package/components/tooltip/Tooltip.js +2 -3
  367. package/components/video/ResponsiveVideo.js +1 -2
  368. package/components/virtualList/VirtualList.d.ts +59 -0
  369. package/components/virtualList/VirtualList.js +140 -0
  370. package/components/virtualList/VirtualListItemWrapper.d.ts +10 -0
  371. package/components/virtualList/VirtualListItemWrapper.js +13 -0
  372. package/components/virtualList/useVirtualListResizeObserver.d.ts +2 -0
  373. package/components/virtualList/useVirtualListResizeObserver.js +44 -0
  374. package/hooks/useClickOutside.d.ts +4 -3
  375. package/hooks/useClickOutside.js +10 -4
  376. package/hooks/useClipboard.js +1 -1
  377. package/hooks/useDebugInfo.js +6 -3
  378. package/hooks/useFocusTrap.js +7 -7
  379. package/hooks/useFullscreen.js +8 -9
  380. package/hooks/useHover.d.ts +2 -2
  381. package/hooks/useInterval.js +1 -1
  382. package/hooks/useKey.d.ts +1 -1
  383. package/hooks/useMutationObserver.js +1 -1
  384. package/hooks/usePostMessage.d.ts +1 -1
  385. package/hooks/useResizeObserver.js +3 -4
  386. package/hooks/useStorage.d.ts +2 -3
  387. package/hooks/useTimeout.js +2 -2
  388. package/hooks/useToggle.d.ts +13 -0
  389. package/hooks/useToggle.js +31 -0
  390. package/hooks/useUncontrollable.js +7 -4
  391. package/lib/es/AccentBar.d.ts +2 -0
  392. package/lib/es/AccentBar.js +7 -0
  393. package/lib/es/Avatar.d.ts +2 -0
  394. package/lib/es/Avatar.js +7 -0
  395. package/lib/es/AvatarGroup.d.ts +2 -0
  396. package/lib/es/AvatarGroup.js +7 -0
  397. package/lib/es/Banner.d.ts +2 -0
  398. package/lib/es/Banner.js +7 -0
  399. package/lib/es/ButtonToolbar.d.ts +2 -0
  400. package/lib/es/ButtonToolbar.js +7 -0
  401. package/lib/es/Card.d.ts +2 -0
  402. package/lib/es/Card.js +7 -0
  403. package/lib/es/Colors.js +2 -4
  404. package/lib/es/DateRangePicker.js +2 -2
  405. package/lib/es/FormLabel.d.ts +2 -0
  406. package/lib/es/FormLabel.js +7 -0
  407. package/lib/es/LabeledElement.d.ts +2 -0
  408. package/lib/es/LabeledElement.js +7 -0
  409. package/lib/es/StatsWidgets.js +2 -4
  410. package/lib/es/StepButton.d.ts +2 -0
  411. package/lib/es/{Onboarding.js → StepButton.js} +3 -3
  412. package/lib/es/TagList.js +2 -4
  413. package/lib/es/VirtualList.d.ts +2 -0
  414. package/lib/es/VirtualList.js +7 -0
  415. package/lib/es/components/accentBar/AccentBar.d.ts +21 -0
  416. package/lib/es/components/accentBar/AccentBar.js +15 -0
  417. package/lib/es/components/actionBarItem/ActionBarItem.d.ts +2 -6
  418. package/lib/es/components/actionBarItem/ActionBarItem.js +6 -6
  419. package/lib/es/components/actionBarItem/ActionBarItemIcon.d.ts +2 -2
  420. package/lib/es/components/actionBarItem/ActionBarItemIcon.js +2 -2
  421. package/lib/es/components/actionBarItem/ActionBarItemList.js +2 -5
  422. package/lib/es/components/actionBarItem/ActionBarItemListItem.js +2 -4
  423. package/lib/es/components/actionBarItem/ActionBarItemListSeparator.js +2 -5
  424. package/lib/es/components/actionBarItem/ActionBarItemPopoverContent.js +2 -5
  425. package/lib/es/components/actionBarItem/ActionBarOverlay.d.ts +1 -1
  426. package/lib/es/components/actionBarItem/ActionBarOverlay.js +3 -3
  427. package/lib/es/components/activity/Activity.js +2 -2
  428. package/lib/es/components/animatedNumber/AnimatedNumber.d.ts +6 -6
  429. package/lib/es/components/animatedNumber/AnimatedNumber.js +2 -2
  430. package/lib/es/components/applicationHeader/AppMenu.js +3 -5
  431. package/lib/es/components/applicationHeader/AppMenuContent.js +2 -4
  432. package/lib/es/components/applicationHeader/AppMenuDropdown.js +4 -4
  433. package/lib/es/components/applicationHeader/ApplicationActionBar.js +4 -7
  434. package/lib/es/components/applicationHeader/ApplicationHeader.js +4 -4
  435. package/lib/es/components/applicationHeader/CollapsedNavItem.js +3 -3
  436. package/lib/es/components/applicationHeader/MobileAppMenu.js +2 -2
  437. package/lib/es/components/applicationHeader/MobileHeaderModal.js +2 -2
  438. package/lib/es/components/applicationHeader/MobileSubmoduleNavigation.js +3 -3
  439. package/lib/es/components/applicationHeader/NavItems.js +2 -2
  440. package/lib/es/components/applicationLayout/ApplicationLayout.js +2 -3
  441. package/lib/es/components/applicationLayout/ApplicationLayoutBody.d.ts +1 -1
  442. package/lib/es/components/applicationLayout/ApplicationLayoutBody.js +9 -8
  443. package/lib/es/components/applicationLayout/ApplicationLayoutBodyBanner.d.ts +1 -1
  444. package/lib/es/components/applicationLayout/ApplicationLayoutBodyBanner.js +2 -2
  445. package/lib/es/components/applicationLayout/ApplicationLayoutBodyBottomBar.js +2 -2
  446. package/lib/es/components/applicationLayout/ApplicationLayoutBodyNavigation.d.ts +1 -1
  447. package/lib/es/components/applicationLayout/ApplicationLayoutBodyNavigation.js +2 -2
  448. package/lib/es/components/applicationLayout/ApplicationLayoutHeader.d.ts +1 -1
  449. package/lib/es/components/applicationLayout/ApplicationLayoutHeader.js +2 -2
  450. package/lib/es/components/applicationLayout/ApplicationLayoutSidebar.d.ts +1 -1
  451. package/lib/es/components/applicationLayout/ApplicationLayoutSidebar.js +2 -2
  452. package/lib/es/components/applicationLayout/SubNavigation.js +2 -2
  453. package/lib/es/components/aspectRatioPlaceholder/AspectRatioPlaceholder.js +1 -3
  454. package/lib/es/components/assetTree/AssetTree.d.ts +1 -1
  455. package/lib/es/components/assetTree/AssetTree.js +4 -4
  456. package/lib/es/components/assetTree/Tree.d.ts +2 -2
  457. package/lib/es/components/assetTree/Tree.js +9 -11
  458. package/lib/es/components/assetTree/TreeLeaf.js +1 -1
  459. package/lib/es/components/assetTree/TreeLeafList.js +0 -2
  460. package/lib/es/components/assetTree/TreeNode.js +1 -1
  461. package/lib/es/components/assetTree/TreeNodeContainer.js +1 -3
  462. package/lib/es/components/assetTree/TreeNothingFound.js +2 -2
  463. package/lib/es/components/assetTree/TreeOption.js +2 -4
  464. package/lib/es/components/assetTree/TreeOptions.js +3 -5
  465. package/lib/es/components/assetTree/TreeRoot.js +1 -3
  466. package/lib/es/components/assetTree/TreeSearch.js +1 -1
  467. package/lib/es/components/assetTree/TreeSelectAll.js +1 -3
  468. package/lib/es/components/assetTree/TreeSidebar.js +2 -2
  469. package/lib/es/components/assetTree/TreeSidebarCategories.js +2 -4
  470. package/lib/es/components/assetTree/TreeSummary.js +1 -1
  471. package/lib/es/components/assetTree/TreeSummaryRow.js +1 -3
  472. package/lib/es/components/assetTree/TypeCounter.js +2 -2
  473. package/lib/es/components/assetTree/treeReducer.js +8 -8
  474. package/lib/es/components/assetTree/treeUtils.d.ts +0 -2
  475. package/lib/es/components/assetTree/treeUtils.js +14 -11
  476. package/lib/es/components/autosuggest/AutoSuggest.js +12 -15
  477. package/lib/es/components/autosuggest/AutoSuggestAddons.js +1 -3
  478. package/lib/es/components/autosuggest/DropdownSpinner.js +1 -2
  479. package/lib/es/components/autosuggest/NoItemMessage.js +1 -3
  480. package/lib/es/components/avatar/Avatar.d.ts +54 -0
  481. package/lib/es/components/avatar/Avatar.js +30 -0
  482. package/lib/es/components/avatar/AvatarContent.d.ts +10 -0
  483. package/lib/es/components/avatar/AvatarContent.js +22 -0
  484. package/lib/es/components/avatar/AvatarGroup.d.ts +15 -0
  485. package/lib/es/components/avatar/AvatarGroup.js +26 -0
  486. package/lib/es/components/banner/Banner.d.ts +66 -0
  487. package/lib/es/components/banner/Banner.js +52 -0
  488. package/lib/es/components/banner/BannerActions.d.ts +9 -0
  489. package/lib/es/components/banner/BannerActions.js +7 -0
  490. package/lib/es/components/banner/BannerContent.d.ts +25 -0
  491. package/lib/es/components/banner/BannerContent.js +19 -0
  492. package/lib/es/components/banner/BannerIcon.d.ts +9 -0
  493. package/lib/es/components/banner/BannerIcon.js +7 -0
  494. package/lib/es/components/banner/BannerPage.d.ts +9 -0
  495. package/lib/es/components/banner/BannerPage.js +7 -0
  496. package/lib/es/components/bottomSheet/BottomSheet.d.ts +2 -2
  497. package/lib/es/components/bottomSheet/BottomSheet.js +5 -5
  498. package/lib/es/components/bottomSheet/TimedBottomSheet.js +3 -3
  499. package/lib/es/components/button/Button.d.ts +2 -0
  500. package/lib/es/components/button/Button.js +4 -4
  501. package/lib/es/components/button/ButtonToolbar.d.ts +13 -0
  502. package/lib/es/components/button/ButtonToolbar.js +11 -0
  503. package/lib/es/components/button/StepButton.d.ts +12 -0
  504. package/lib/es/components/button/StepButton.js +11 -0
  505. package/lib/es/components/button/ToggleButton.js +1 -3
  506. package/lib/es/components/calendarStripe/CalendarStripe.js +1 -1
  507. package/lib/es/components/card/Card.d.ts +21 -0
  508. package/lib/es/components/card/Card.js +11 -0
  509. package/lib/es/components/carousel/Carousel.d.ts +4 -6
  510. package/lib/es/components/charts/AreaChart.js +6 -8
  511. package/lib/es/components/charts/AreaGradient.js +1 -2
  512. package/lib/es/components/charts/BarChart.js +13 -11
  513. package/lib/es/components/charts/ChartGrid.js +0 -1
  514. package/lib/es/components/charts/ChartLabel.d.ts +0 -1
  515. package/lib/es/components/charts/ChartNeedle.js +13 -4
  516. package/lib/es/components/charts/ComposedChart.js +13 -15
  517. package/lib/es/components/charts/Legend.js +0 -2
  518. package/lib/es/components/charts/LineChart.js +7 -9
  519. package/lib/es/components/charts/PieChart.js +6 -8
  520. package/lib/es/components/charts/RadialBarChart.js +5 -7
  521. package/lib/es/components/charts/ReferenceLine.js +3 -6
  522. package/lib/es/components/charts/ResponsiveContainer.js +0 -1
  523. package/lib/es/components/charts/XAxis.js +2 -2
  524. package/lib/es/components/charts/YAxis.d.ts +0 -1
  525. package/lib/es/components/charts/chartHelper.d.ts +2 -2
  526. package/lib/es/components/charts/chartHelper.js +1 -1
  527. package/lib/es/components/checkbox/Checkbox.js +4 -6
  528. package/lib/es/components/checkbox/CheckboxIcon.js +1 -1
  529. package/lib/es/components/clearableInput/ClearableInput.js +18 -6
  530. package/lib/es/components/collapse/Collapse.d.ts +1 -1
  531. package/lib/es/components/collapse/Collapse.js +1 -3
  532. package/lib/es/components/contentLoader/ContentLoader.js +2 -4
  533. package/lib/es/components/dataTabs/DataTab.js +3 -6
  534. package/lib/es/components/dataTabs/DataTabHeader.js +1 -1
  535. package/lib/es/components/dataTabs/DataTabs.js +7 -8
  536. package/lib/es/components/datepicker/DatePicker.d.ts +16 -16
  537. package/lib/es/components/datepicker/DatePicker.js +3 -3
  538. package/lib/es/components/datepicker/DateRangePicker.d.ts +55 -55
  539. package/lib/es/components/datepicker/DateRangePicker.js +28 -14
  540. package/lib/es/components/dialog/ConfirmationDialog.js +3 -5
  541. package/lib/es/components/dialog/Dialog.d.ts +2 -2
  542. package/lib/es/components/dialog/Dialog.js +12 -11
  543. package/lib/es/components/dialog/DialogBody.js +2 -5
  544. package/lib/es/components/dialog/DialogFooter.js +2 -4
  545. package/lib/es/components/dialog/DialogHeader.js +2 -2
  546. package/lib/es/components/dialog/FrameDialog.js +2 -2
  547. package/lib/es/components/dialog/InfoDialog.js +2 -4
  548. package/lib/es/components/dialog/MediaDialog.js +6 -7
  549. package/lib/es/components/dialog/OnboardingDialog.js +2 -4
  550. package/lib/es/components/dialog/ReleaseNotesDialog.js +1 -3
  551. package/lib/es/components/dialog/SaveDialog.js +3 -5
  552. package/lib/es/components/dialog/SimpleDialog.js +2 -4
  553. package/lib/es/components/dialog/SplitDialog.js +3 -5
  554. package/lib/es/components/divider/Divider.js +3 -5
  555. package/lib/es/components/dropdown/ButtonDropdown.d.ts +1 -1
  556. package/lib/es/components/dropdown/ButtonDropdown.js +11 -10
  557. package/lib/es/components/dropdown/Caret.js +0 -2
  558. package/lib/es/components/dropdown/DropdownSubmenu.js +2 -2
  559. package/lib/es/components/dropdown/DropdownToggleButton.js +2 -2
  560. package/lib/es/components/dropdown/SimpleButtonDropdown.js +1 -3
  561. package/lib/es/components/dropdown/SingleButtonDropdown.js +1 -3
  562. package/lib/es/components/dropdown/SplitButtonDropdown.js +1 -3
  563. package/lib/es/components/dropdown/SplitCaretButton.js +2 -2
  564. package/lib/es/components/editableContent/EditableContent.js +6 -8
  565. package/lib/es/components/expander/ExpanderList.js +5 -5
  566. package/lib/es/components/expander/ExpanderPanel.js +2 -2
  567. package/lib/es/components/fade/Fade.js +2 -2
  568. package/lib/es/components/fade/FadeExpander.js +2 -2
  569. package/lib/es/components/fade/FadeUp.js +2 -2
  570. package/lib/es/components/feedback/FeedbackInlineButtons.js +2 -5
  571. package/lib/es/components/feedback/FeedbackRating.js +4 -5
  572. package/lib/es/components/feedback/FeedbackReactions.js +4 -4
  573. package/lib/es/components/filepicker/FilePicker.js +5 -5
  574. package/lib/es/components/formLabel/FormLabel.d.ts +13 -0
  575. package/lib/es/components/formLabel/FormLabel.js +20 -0
  576. package/lib/es/components/formLabel/LabeledElement.d.ts +28 -0
  577. package/lib/es/components/formLabel/LabeledElement.js +14 -0
  578. package/lib/es/components/groupedItemList/GroupedItemList.js +2 -5
  579. package/lib/es/components/licensePlate/LicensePlate.js +4 -6
  580. package/lib/es/components/listMenu/ListMenu.d.ts +1 -0
  581. package/lib/es/components/listMenu/ListMenu.js +11 -10
  582. package/lib/es/components/listMenu/ListMenuGroup.d.ts +17 -0
  583. package/lib/es/components/listMenu/ListMenuGroup.js +1 -3
  584. package/lib/es/components/listMenu/ListMenuHeader.d.ts +3 -1
  585. package/lib/es/components/listMenu/ListMenuHeader.js +2 -4
  586. package/lib/es/components/loadMore/LoadMoreButton.js +2 -4
  587. package/lib/es/components/loadMore/LoadMoreProgress.js +1 -1
  588. package/lib/es/components/map/components/Map.js +5 -7
  589. package/lib/es/components/map/components/MapContext.d.ts +0 -1
  590. package/lib/es/components/map/components/MapElements.js +1 -1
  591. package/lib/es/components/map/components/MapPosition.js +3 -5
  592. package/lib/es/components/map/components/MapSize.js +3 -3
  593. package/lib/es/components/map/components/constants.d.ts +1 -2
  594. package/lib/es/components/map/components/features/ContextMenu.d.ts +0 -2
  595. package/lib/es/components/map/components/features/ContextMenu.js +3 -4
  596. package/lib/es/components/map/components/features/ContextMenuItem.d.ts +0 -1
  597. package/lib/es/components/map/components/features/MapSettings.d.ts +0 -1
  598. package/lib/es/components/map/components/features/MapSettings.js +6 -7
  599. package/lib/es/components/map/components/features/MapZoom.js +6 -9
  600. package/lib/es/components/map/components/features/Route.d.ts +1 -1
  601. package/lib/es/components/map/components/features/Route.js +24 -5
  602. package/lib/es/components/map/components/features/basics/Circle.d.ts +0 -1
  603. package/lib/es/components/map/components/features/basics/Circle.js +3 -5
  604. package/lib/es/components/map/components/features/basics/InfoBubble.d.ts +0 -1
  605. package/lib/es/components/map/components/features/basics/InfoBubble.js +4 -6
  606. package/lib/es/components/map/components/features/basics/Marker.d.ts +2 -3
  607. package/lib/es/components/map/components/features/basics/Marker.js +2 -4
  608. package/lib/es/components/map/components/features/basics/Polygon.d.ts +0 -1
  609. package/lib/es/components/map/components/features/basics/Polygon.js +3 -5
  610. package/lib/es/components/map/components/features/basics/Polyline.d.ts +0 -1
  611. package/lib/es/components/map/components/features/basics/Polyline.js +18 -7
  612. package/lib/es/components/map/components/features/basics/TextMarker.js +2 -4
  613. package/lib/es/components/map/components/features/layers/MapLayerGroup.js +11 -7
  614. package/lib/es/components/map/components/features/layers/MapOverlayLayers.js +0 -1
  615. package/lib/es/components/map/components/features/layers/MarkerLayer.js +6 -5
  616. package/lib/es/components/map/components/features/layers/clustering/ClusterLayer.d.ts +0 -1
  617. package/lib/es/components/map/components/features/layers/clustering/ClusterLayer.js +2 -4
  618. package/lib/es/components/map/components/features/layers/clustering/SimpleClusterLayer.js +2 -3
  619. package/lib/es/components/map/components/features/layers/overlayLayers/IncidentsLayer.js +13 -16
  620. package/lib/es/components/map/components/features/layers/overlayLayers/Layer.d.ts +0 -1
  621. package/lib/es/components/map/components/features/layers/overlayLayers/Layer.js +4 -8
  622. package/lib/es/components/map/components/features/layers/overlayLayers/RoadRestrictionLayer.js +2 -5
  623. package/lib/es/components/map/components/features/layers/overlayLayers/TrafficLayer.js +4 -8
  624. package/lib/es/components/map/components/features/settings/MapSettingsItem.js +3 -3
  625. package/lib/es/components/map/components/features/settings/MapSettingsPanel.js +2 -4
  626. package/lib/es/components/map/components/features/settings/MapSettingsTile.js +9 -9
  627. package/lib/es/components/map/components/features/settings/ZoomButtons.js +1 -3
  628. package/lib/es/components/map/components/features/settings/builtinSettings/MapAdditionalLayerSettings.js +2 -4
  629. package/lib/es/components/map/components/features/settings/builtinSettings/MapClusterSettings.js +2 -4
  630. package/lib/es/components/map/components/features/settings/builtinSettings/MapLayerSettings.js +8 -12
  631. package/lib/es/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +3 -3
  632. package/lib/es/components/map/components/features/settings/buttons/MapBoundingBoxButton.js +2 -4
  633. package/lib/es/components/map/components/features/settings/buttons/MapCenterMarkerButton.js +2 -4
  634. package/lib/es/components/map/components/features/settings/buttons/MapLockMarkerButton.js +2 -4
  635. package/lib/es/components/map/components/features/settings/items/MapCustomerPoiSettingsItem.d.ts +0 -1
  636. package/lib/es/components/map/components/features/settings/items/MapCustomerPoiSettingsItem.js +2 -3
  637. package/lib/es/components/map/components/features/settings/items/MapLayerIncidentsItem.d.ts +0 -1
  638. package/lib/es/components/map/components/features/settings/items/MapLayerIncidentsItem.js +2 -3
  639. package/lib/es/components/map/components/features/settings/items/MapLayerRoadRestrictionsItem.d.ts +0 -1
  640. package/lib/es/components/map/components/features/settings/items/MapLayerRoadRestrictionsItem.js +2 -3
  641. package/lib/es/components/map/components/features/settings/items/MapLayerTrafficItem.d.ts +0 -1
  642. package/lib/es/components/map/components/features/settings/items/MapLayerTrafficItem.js +2 -3
  643. package/lib/es/components/map/components/features/settings/items/MapSettingsDropdownHeader.js +2 -3
  644. package/lib/es/components/map/components/features/settings/items/MapWorkshopPoiSettingsItem.d.ts +0 -1
  645. package/lib/es/components/map/components/features/settings/items/MapWorkshopPoiSettingsItem.js +2 -3
  646. package/lib/es/components/map/icons/MapIcon.js +35 -35
  647. package/lib/es/components/map/utils/clustering.d.ts +0 -1
  648. package/lib/es/components/map/utils/eventHandling.d.ts +0 -1
  649. package/lib/es/components/map/utils/eventHandling.js +1 -1
  650. package/lib/es/components/map/utils/mapTypes.d.ts +0 -2
  651. package/lib/es/components/map/utils/mapUi.d.ts +0 -1
  652. package/lib/es/components/map/utils/mapUtils.d.ts +0 -1
  653. package/lib/es/components/map/utils/mapUtils.js +5 -5
  654. package/lib/es/components/map/utils/positions.js +2 -2
  655. package/lib/es/components/map/utils/rendering.d.ts +0 -1
  656. package/lib/es/components/map/utils/rendering.js +8 -10
  657. package/lib/es/components/mapMarker/ClusterMapMarker.js +1 -2
  658. package/lib/es/components/mapMarker/SingleMapMarker.js +4 -7
  659. package/lib/es/components/menuItems/MenuItem.js +1 -1
  660. package/lib/es/components/menuItems/MenuItemList.js +2 -2
  661. package/lib/es/components/menuItems/MenuItems.js +1 -5
  662. package/lib/es/components/navigation/AppNavigationBar.d.ts +17 -0
  663. package/lib/es/components/navigation/AppNavigationBar.js +3 -3
  664. package/lib/es/components/noData/NoData.js +3 -5
  665. package/lib/es/components/notification/Notification.d.ts +50 -30
  666. package/lib/es/components/notification/Notification.js +99 -4
  667. package/lib/es/components/notification/NotificationsContainer.d.ts +2 -0
  668. package/lib/es/components/notification/NotificationsContainer.js +2 -4
  669. package/lib/es/components/numberControl/NumberControl.js +3 -3
  670. package/lib/es/components/numberInput/NumberInput.js +4 -4
  671. package/lib/es/components/onboarding/OnboardingTip.js +3 -5
  672. package/lib/es/components/overlay/OverlayTrigger.js +29 -14
  673. package/lib/es/components/page/Page.js +1 -3
  674. package/lib/es/components/pager/Pager.js +4 -4
  675. package/lib/es/components/popover/Popover.d.ts +5 -5
  676. package/lib/es/components/popover/Popover.js +4 -5
  677. package/lib/es/components/position/Position.js +1 -2
  678. package/lib/es/components/radiobutton/RadioButton.js +3 -3
  679. package/lib/es/components/releaseNotes/ReleaseNotes.js +3 -5
  680. package/lib/es/components/resizer/Resizer.js +2 -2
  681. package/lib/es/components/responsiveColumnStripe/ResponsiveColumnStripe.d.ts +1 -1
  682. package/lib/es/components/responsiveColumnStripe/ResponsiveColumnStripe.js +8 -11
  683. package/lib/es/components/rules/RuleConnector.js +2 -4
  684. package/lib/es/components/rules/RuleContainer.js +4 -5
  685. package/lib/es/components/rules/RulesWrapper.js +3 -9
  686. package/lib/es/components/saveableInput/SaveableInput.js +4 -5
  687. package/lib/es/components/selects/BaseSelectDropdown.js +8 -8
  688. package/lib/es/components/selects/ClearButton.js +1 -3
  689. package/lib/es/components/selects/DropdownHeader.js +1 -3
  690. package/lib/es/components/selects/Multiselect.js +7 -8
  691. package/lib/es/components/selects/MultiselectToggleCounter.js +1 -3
  692. package/lib/es/components/selects/MultiselectToggleFilter.js +0 -2
  693. package/lib/es/components/selects/MultiselectTogglePlaceholder.js +1 -3
  694. package/lib/es/components/selects/MultiselectToggleSelection.js +5 -7
  695. package/lib/es/components/selects/NoItemMessage.js +1 -3
  696. package/lib/es/components/selects/Select.js +5 -6
  697. package/lib/es/components/selects/SelectFilter.js +0 -2
  698. package/lib/es/components/selects/SelectedOption.js +5 -7
  699. package/lib/es/components/selects/WithFeedbackAndAddon.js +1 -3
  700. package/lib/es/components/sidebars/Sidebar.js +8 -9
  701. package/lib/es/components/sidebars/SidebarBackdrop.js +0 -1
  702. package/lib/es/components/sidebars/SidebarCloseButton.js +1 -2
  703. package/lib/es/components/sidebars/SidebarFooter.js +1 -3
  704. package/lib/es/components/sidebars/SidebarFullscreenToggle.js +2 -3
  705. package/lib/es/components/slider/RangeSlider.js +2 -2
  706. package/lib/es/components/slider/Slider.js +2 -2
  707. package/lib/es/components/smoothScrollbars/SmoothScrollbars.d.ts +1 -1
  708. package/lib/es/components/smoothScrollbars/SmoothScrollbars.js +7 -7
  709. package/lib/es/components/spinner/Spinner.js +6 -8
  710. package/lib/es/components/states/BaseStateProps.js +0 -2
  711. package/lib/es/components/states/CustomState.js +12 -14
  712. package/lib/es/components/states/EmptyState.js +2 -4
  713. package/lib/es/components/states/ErrorState.js +2 -4
  714. package/lib/es/components/states/ForbiddenState.js +2 -4
  715. package/lib/es/components/states/MaintenanceState.js +2 -4
  716. package/lib/es/components/states/NotBookedState.js +3 -5
  717. package/lib/es/components/states/NotFoundState.js +2 -4
  718. package/lib/es/components/states/StateButton.js +2 -4
  719. package/lib/es/components/states/StateIcon.js +0 -1
  720. package/lib/es/components/statsWidget/StatsWidget.d.ts +4 -4
  721. package/lib/es/components/statsWidget/StatsWidget.js +3 -5
  722. package/lib/es/components/statsWidget/StatsWidgetBody.js +2 -4
  723. package/lib/es/components/statsWidget/StatsWidgetFooter.js +2 -4
  724. package/lib/es/components/statsWidget/StatsWidgetHeader.js +2 -4
  725. package/lib/es/components/statsWidget/StatsWidgetNumber.js +2 -4
  726. package/lib/es/components/statsWidget/StatsWidgetSpacer.js +2 -3
  727. package/lib/es/components/statsWidget/StatsWidgets.js +2 -4
  728. package/lib/es/components/statusBar/StatusBar.js +3 -5
  729. package/lib/es/components/statusBar/StatusBarIcon.js +2 -5
  730. package/lib/es/components/statusBar/StatusBarLabel.js +2 -5
  731. package/lib/es/components/statusBar/StatusBarProgressBar.js +2 -3
  732. package/lib/es/components/steppedProgressBar/SteppedProgressBar.js +1 -1
  733. package/lib/es/components/switch/Switch.d.ts +4 -6
  734. package/lib/es/components/switch/Switch.js +2 -2
  735. package/lib/es/components/table/SortArrowDown.js +0 -1
  736. package/lib/es/components/table/SortArrowUp.js +0 -1
  737. package/lib/es/components/table/SortArrows.js +0 -1
  738. package/lib/es/components/table/TableCardsSorting.js +1 -1
  739. package/lib/es/components/table/TableSearch.js +2 -3
  740. package/lib/es/components/table/TableSettingsColumnButtons.js +3 -4
  741. package/lib/es/components/table/TableSettingsColumnDetails.js +1 -3
  742. package/lib/es/components/table/TableSettingsDialog.js +8 -6
  743. package/lib/es/components/table/TableSettingsDialog.types.d.ts +0 -1
  744. package/lib/es/components/table/TableSettingsDialogFooter.js +1 -3
  745. package/lib/es/components/table/TableSettingsListContainer.js +1 -1
  746. package/lib/es/components/table/TableSettingsListItem.js +2 -4
  747. package/lib/es/components/table/TableToolbar.js +1 -3
  748. package/lib/es/components/table/TableViewToggles.js +4 -4
  749. package/lib/es/components/tag/Tag.js +2 -2
  750. package/lib/es/components/tag/TagList.js +3 -5
  751. package/lib/es/components/tagManager/CustomSuggestionItem.js +1 -3
  752. package/lib/es/components/tagManager/TagManager.js +2 -2
  753. package/lib/es/components/tagManager/TagManagerItemList.js +3 -4
  754. package/lib/es/components/teaser/Teaser.js +11 -15
  755. package/lib/es/components/teaser/TeaserContainer.js +3 -3
  756. package/lib/es/components/timepicker/TimePicker.js +3 -3
  757. package/lib/es/components/tooltip/SimpleTooltip.js +2 -4
  758. package/lib/es/components/tooltip/Tooltip.js +2 -2
  759. package/lib/es/components/video/ResponsiveVideo.js +1 -2
  760. package/lib/es/components/virtualList/VirtualList.d.ts +59 -0
  761. package/lib/es/components/virtualList/VirtualList.js +145 -0
  762. package/lib/es/components/virtualList/VirtualListItemWrapper.d.ts +10 -0
  763. package/lib/es/components/virtualList/VirtualListItemWrapper.js +16 -0
  764. package/lib/es/components/virtualList/useVirtualListResizeObserver.d.ts +2 -0
  765. package/lib/es/components/virtualList/useVirtualListResizeObserver.js +46 -0
  766. package/lib/es/hooks/useClickOutside.d.ts +4 -3
  767. package/lib/es/hooks/useClickOutside.js +11 -5
  768. package/lib/es/hooks/useClipboard.js +1 -1
  769. package/lib/es/hooks/useDebugInfo.js +6 -3
  770. package/lib/es/hooks/useFocusTrap.js +7 -7
  771. package/lib/es/hooks/useFullscreen.js +8 -8
  772. package/lib/es/hooks/useHover.d.ts +2 -2
  773. package/lib/es/hooks/useInterval.js +1 -1
  774. package/lib/es/hooks/useKey.d.ts +1 -1
  775. package/lib/es/hooks/useMutationObserver.js +1 -1
  776. package/lib/es/hooks/usePostMessage.d.ts +1 -1
  777. package/lib/es/hooks/useResizeObserver.js +3 -4
  778. package/lib/es/hooks/useStorage.d.ts +2 -3
  779. package/lib/es/hooks/useTimeout.js +2 -2
  780. package/lib/es/hooks/useToggle.d.ts +13 -0
  781. package/lib/es/hooks/useToggle.js +33 -0
  782. package/lib/es/hooks/useUncontrollable.js +10 -8
  783. package/lib/es/styles/variables/colors/colors.json +7 -1
  784. package/lib/es/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.d.ts +7 -7
  785. package/lib/es/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.js +2 -2
  786. package/lib/es/useAfterMount.js +2 -4
  787. package/lib/es/useClipboard.js +2 -4
  788. package/lib/es/useDarkMode.js +2 -4
  789. package/lib/es/useDebugInfo.js +2 -4
  790. package/lib/es/useEffectOnce.js +2 -4
  791. package/lib/es/useElementSize.js +2 -4
  792. package/lib/es/useEsc.js +2 -4
  793. package/lib/es/useEvent.js +2 -4
  794. package/lib/es/useFocusTrap.js +2 -4
  795. package/lib/es/useFullscreen.js +2 -4
  796. package/lib/es/useHover.js +2 -4
  797. package/lib/es/useInterval.js +2 -4
  798. package/lib/es/useKey.js +2 -4
  799. package/lib/es/useToggle.d.ts +2 -0
  800. package/lib/es/useToggle.js +7 -0
  801. package/lib/es/utils/colorScheme.js +2 -3
  802. package/lib/es/utils/darkModeCDN.js +1 -1
  803. package/lib/es/utils/deviceUtils.js +5 -6
  804. package/lib/es/utils/init/checkForReleaseVersion.d.ts +1 -0
  805. package/lib/es/utils/init/checkForReleaseVersion.js +21 -0
  806. package/lib/es/utils/init/doNotUseTailwind.d.ts +1 -0
  807. package/lib/es/utils/init/doNotUseTailwind.js +57 -0
  808. package/lib/es/utils/init/initCSS.js +1 -2
  809. package/lib/es/utils/init/initDocumentBootstrapping.js +23 -27
  810. package/lib/es/utils/init/styledLogs.d.ts +3 -0
  811. package/lib/es/utils/init/styledLogs.js +7 -0
  812. package/lib/es/utils/init/usedUikitVersion.d.ts +1 -0
  813. package/lib/es/utils/init/usedUikitVersion.js +11 -0
  814. package/lib/es/utils/init/weAreHiring.d.ts +1 -0
  815. package/lib/es/utils/init/weAreHiring.js +10 -0
  816. package/lib/es/utils/mergeRefs.d.ts +2 -2
  817. package/lib/es/utils/mergeRefs.js +0 -2
  818. package/lib/es/utils/routeUtils.d.ts +1 -1
  819. package/lib/es/utils/routeUtils.js +3 -3
  820. package/lib/es/utils/urlFeatureToggles.d.ts +0 -1
  821. package/lib/es/utils/urlFeatureToggles.js +1 -2
  822. package/lib/es/version.json +1 -1
  823. package/package.json +39 -39
  824. package/styles/variables/colors/colors.json +7 -1
  825. package/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.d.ts +7 -7
  826. package/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.js +2 -3
  827. package/useToggle.d.ts +2 -0
  828. package/useToggle.js +2 -0
  829. package/utils/colorScheme.js +2 -3
  830. package/utils/darkModeCDN.js +1 -1
  831. package/utils/deviceUtils.js +5 -6
  832. package/utils/init/checkForReleaseVersion.d.ts +1 -0
  833. package/utils/init/checkForReleaseVersion.js +17 -0
  834. package/utils/init/doNotUseTailwind.d.ts +1 -0
  835. package/utils/init/doNotUseTailwind.js +53 -0
  836. package/utils/init/initCSS.js +1 -2
  837. package/utils/init/initDocumentBootstrapping.js +24 -28
  838. package/utils/init/styledLogs.d.ts +3 -0
  839. package/utils/init/styledLogs.js +3 -0
  840. package/utils/init/usedUikitVersion.d.ts +1 -0
  841. package/utils/init/usedUikitVersion.js +7 -0
  842. package/utils/init/weAreHiring.d.ts +1 -0
  843. package/utils/init/weAreHiring.js +6 -0
  844. package/utils/mergeRefs.d.ts +2 -2
  845. package/utils/mergeRefs.js +0 -2
  846. package/utils/routeUtils.d.ts +1 -1
  847. package/utils/routeUtils.js +3 -3
  848. package/utils/urlFeatureToggles.d.ts +0 -1
  849. package/utils/urlFeatureToggles.js +1 -2
  850. package/version.json +1 -1
  851. package/lib/es/Onboarding.d.ts +0 -2
@@ -14,7 +14,7 @@ const isNull_1 = tslib_1.__importDefault(require("lodash/fp/isNull"));
14
14
  const isEqual_1 = tslib_1.__importDefault(require("lodash/fp/isEqual"));
15
15
  const DatePicker_1 = tslib_1.__importDefault(require("./DatePicker"));
16
16
  const getDropDirection_1 = tslib_1.__importDefault(require("../../utils/getDropDirection"));
17
- const Placeholder = ({ text }) => (0, jsx_runtime_1.jsx)("span", Object.assign({ className: 'placeholder' }, { children: text }));
17
+ const Placeholder = ({ text }) => (0, jsx_runtime_1.jsx)("span", { className: 'placeholder', children: text });
18
18
  const propTypes = {
19
19
  startValue: prop_types_1.default.object,
20
20
  endValue: prop_types_1.default.object,
@@ -115,8 +115,8 @@ class DateRangePicker extends react_1.Component {
115
115
  isMounted: false,
116
116
  isCustomVisible: props.customRangeOnly,
117
117
  isDropdownOpen: false,
118
- customRangeStartValue: (0, moment_1.default)(customRangeStartValue),
119
- customRangeEndValue: (0, moment_1.default)(customRangeEndValue),
118
+ customRangeStartValue: (0, moment_1.default)(customRangeStartValue), // default value for individual datepickers
119
+ customRangeEndValue: (0, moment_1.default)(customRangeEndValue), // default value for individual datepickers
120
120
  isStartValid: true,
121
121
  isEndValid: true,
122
122
  dropdownToggleText: (0, jsx_runtime_1.jsx)(Placeholder, { text: props.textDefault }),
@@ -204,9 +204,18 @@ class DateRangePicker extends react_1.Component {
204
204
  const endValueText = `${finalEndValue.locale(locale).format(format)}`;
205
205
  const dropdownToggleText = startValueText === endValueText ? startValueText : `${startValueText} → ${endValueText}`;
206
206
  // set state, and call callback
207
- this.setState(Object.assign({ internalStartValue: finalStartValue, internalEndValue: finalEndValue, customRangeStartValue: finalStartValue, customRangeEndValue: finalEndValue, dropdownToggleText,
207
+ this.setState({
208
+ internalStartValue: finalStartValue,
209
+ internalEndValue: finalEndValue,
210
+ customRangeStartValue: finalStartValue,
211
+ customRangeEndValue: finalEndValue,
212
+ dropdownToggleText,
208
213
  startValueText,
209
- endValueText, isStartValid: true, isEndValid: !finalEndValue.isBefore(finalStartValue) }, extras), () => {
214
+ endValueText,
215
+ isStartValid: true,
216
+ isEndValid: !finalEndValue.isBefore(finalStartValue),
217
+ ...extras,
218
+ }, () => {
210
219
  callback && callback(finalStartValue, finalEndValue);
211
220
  });
212
221
  }
@@ -255,7 +264,12 @@ class DateRangePicker extends react_1.Component {
255
264
  const menuNode = react_dom_1.default.findDOMNode(this.refDropdownMenu);
256
265
  const dropDirection = this.isAutoDropActive() && !this.state.isDropdownOpen ? (0, getDropDirection_1.default)(toggleNode, menuNode) : {};
257
266
  const left = event.currentTarget.getBoundingClientRect().left;
258
- this.setState(prevState => (Object.assign(Object.assign({ isDropdownOpen: !prevState.isDropdownOpen, isCustomVisible: this.props.customRangeOnly }, dropDirection), { pullRight: left + DROPDOWN_WIDTH > document.body.clientWidth })));
267
+ this.setState(prevState => ({
268
+ isDropdownOpen: !prevState.isDropdownOpen,
269
+ isCustomVisible: this.props.customRangeOnly,
270
+ ...dropDirection,
271
+ pullRight: left + DROPDOWN_WIDTH > document.body.clientWidth,
272
+ }));
259
273
  }
260
274
  isAutoDropActive() {
261
275
  return !(!this.props.autoDropDirection || this.props.dropup || this.props.pullRight);
@@ -397,16 +411,16 @@ class DateRangePicker extends react_1.Component {
397
411
  const isRenderCallback = children && typeof children === 'function';
398
412
  // Note: due to issues with nested events in Firefox (for toggle and inside the clear)
399
413
  // the toggle element must not be a <button> but a div.
400
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ type: 'button', className: 'DateRangePickerToggle form-control dropdown-toggle text-left', "aria-haspopup": 'true', "aria-expanded": 'true', onClick: this.toggleDropdownOpen, ref: node => (this.refDropdownToggle = node) }, { children: [isRenderCallback ? (this.props.children(startValueText, endValueText)) : ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: labelClassNames }, { children: dropdownToggleText }))), isClearable && this.getClearButton(), (0, jsx_runtime_1.jsx)("span", { className: 'caret' })] })));
414
+ return ((0, jsx_runtime_1.jsxs)("div", { type: 'button', className: 'DateRangePickerToggle form-control dropdown-toggle text-left', "aria-haspopup": 'true', "aria-expanded": 'true', onClick: this.toggleDropdownOpen, ref: node => (this.refDropdownToggle = node), children: [isRenderCallback ? (this.props.children(startValueText, endValueText)) : ((0, jsx_runtime_1.jsx)("span", { className: labelClassNames, children: dropdownToggleText })), isClearable && this.getClearButton(), (0, jsx_runtime_1.jsx)("span", { className: 'caret' })] }));
401
415
  }
402
416
  getClearButton() {
403
- return ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: 'clearButton', onClick: this.handleResetInternalState }, { children: (0, jsx_runtime_1.jsx)("span", { className: 'clearButtonIcon rioglyph rioglyph-remove-sign' }) })));
417
+ return ((0, jsx_runtime_1.jsx)("span", { className: 'clearButton', onClick: this.handleResetInternalState, children: (0, jsx_runtime_1.jsx)("span", { className: 'clearButtonIcon rioglyph rioglyph-remove-sign' }) }));
404
418
  }
405
419
  getCustomPanelToggle(isCustomVisible, textCustom) {
406
- return ((0, jsx_runtime_1.jsx)("li", Object.assign({ className: (0, classnames_1.default)('custom-panel-toggle', isCustomVisible && 'hidden') }, { children: (0, jsx_runtime_1.jsxs)("a", Object.assign({ role: 'button', onClick: this.handleCustomToggle }, { children: [textCustom, " ..."] })) })));
420
+ return ((0, jsx_runtime_1.jsx)("li", { className: (0, classnames_1.default)('custom-panel-toggle', isCustomVisible && 'hidden'), children: (0, jsx_runtime_1.jsxs)("a", { role: 'button', onClick: this.handleCustomToggle, children: [textCustom, " ..."] }) }));
407
421
  }
408
422
  getCustomPanelButtons(isCustomVisible, isStartValid, isEndValid, textApply, textCancel) {
409
- return ((0, jsx_runtime_1.jsx)("li", Object.assign({ className: (0, classnames_1.default)('custom-panel-buttons', 'margin-20', !isCustomVisible && 'hidden') }, { children: (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'btn-toolbar' }, { children: [(0, jsx_runtime_1.jsx)("button", Object.assign({ type: 'button', disabled: !isStartValid || !isEndValid, onClick: this.handleCustomApply, className: 'btn btn-primary pull-right' }, { children: textApply })), (0, jsx_runtime_1.jsx)("button", Object.assign({ type: 'button', onClick: this.toggleDropdownOpen, className: 'btn btn-default pull-right' }, { children: textCancel }))] })) })));
423
+ return ((0, jsx_runtime_1.jsx)("li", { className: (0, classnames_1.default)('custom-panel-buttons', 'margin-20', !isCustomVisible && 'hidden'), children: (0, jsx_runtime_1.jsxs)("div", { className: 'btn-toolbar', children: [(0, jsx_runtime_1.jsx)("button", { type: 'button', disabled: !isStartValid || !isEndValid, onClick: this.handleCustomApply, className: 'btn btn-primary pull-right', children: textApply }), (0, jsx_runtime_1.jsx)("button", { type: 'button', onClick: this.toggleDropdownOpen, className: 'btn btn-default pull-right', children: textCancel })] }) }));
410
424
  }
411
425
  // eslint-disable-next-line complexity
412
426
  render() {
@@ -422,11 +436,11 @@ class DateRangePicker extends react_1.Component {
422
436
  }
423
437
  const classes = (0, classnames_1.default)('DateRangePicker', className && className);
424
438
  const dropDownClassNames = (0, classnames_1.default)('select', 'dropdown', dropdownClass, isDropdownOpen && 'open', dropup && 'dropup');
425
- return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: classes }, { children: (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: dropDownClassNames }, { children: [this.getDropdownToggle(dropdownToggleText, clearable), (0, jsx_runtime_1.jsxs)("ul", Object.assign({ className: (0, classnames_1.default)('dropdown-menu', pullRight && 'pull-right', dropdownMenuClass), ref: node => (this.refDropdownMenu = node) }, { children: [customPresets.map((preset, i) => {
426
- return ((0, jsx_runtime_1.jsx)("li", Object.assign({ title: (preset.disabled && preset.disabledText) || null, className: (0, classnames_1.default)(preset.disabled && 'disabled') }, { children: (0, jsx_runtime_1.jsx)("a", Object.assign({ role: 'button', className: (0, classnames_1.default)(isCustomVisible && 'hidden'), onClick: !preset.disabled
439
+ return ((0, jsx_runtime_1.jsx)("div", { className: classes, children: (0, jsx_runtime_1.jsxs)("div", { className: dropDownClassNames, children: [this.getDropdownToggle(dropdownToggleText, clearable), (0, jsx_runtime_1.jsxs)("ul", { className: (0, classnames_1.default)('dropdown-menu', pullRight && 'pull-right', dropdownMenuClass), ref: node => (this.refDropdownMenu = node), children: [customPresets.map((preset, i) => {
440
+ return ((0, jsx_runtime_1.jsx)("li", { title: (preset.disabled && preset.disabledText) || null, className: (0, classnames_1.default)(preset.disabled && 'disabled'), children: (0, jsx_runtime_1.jsx)("a", { role: 'button', className: (0, classnames_1.default)(isCustomVisible && 'hidden'), onClick: !preset.disabled
427
441
  ? this.handleCustomPresetSelect.bind(this, preset)
428
- : undefined }, { children: preset.text })) }), `preset-${i}`));
429
- }), (0, jsx_runtime_1.jsx)("li", { role: 'separator', className: (0, classnames_1.default)('divider', isCustomVisible && 'hidden') }), this.getCustomPanelToggle(isCustomVisible, textCustom), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: (0, classnames_1.default)('custom-panel', !isCustomVisible && 'hidden') }, { children: (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'row' }, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'col-sm-6' }, { children: [(0, jsx_runtime_1.jsx)("label", { children: textFrom }), (0, jsx_runtime_1.jsx)(DatePicker_1.default, { locale: locale, open: true, autoDropDirection: false, dateFormat: true, timeFormat: hasTimePicker, initialValue: customRangeStartValue, onChange: this.onStartChange, closeOnSelect: true, isValidDate: this.getValidStartDates, className: (0, classnames_1.default)('DatePicker', !isStartValid && 'has-error') })] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'col-sm-6' }, { children: [(0, jsx_runtime_1.jsx)("label", { children: textTo }), (0, jsx_runtime_1.jsx)(DatePicker_1.default, { locale: locale, open: true, autoDropDirection: false, dateFormat: true, timeFormat: hasTimePicker, initialValue: customRangeEndValue, onChange: this.onEndChange, closeOnSelect: true, isValidDate: this.getValidEndDates, className: (0, classnames_1.default)('DatePicker', !isEndValid && 'has-error') })] }))] })) })), this.getCustomPanelButtons(isCustomVisible, isStartValid, isEndValid, textApply, textCancel)] }))] })) })));
442
+ : undefined, children: preset.text }) }, `preset-${i}`));
443
+ }), (0, jsx_runtime_1.jsx)("li", { role: 'separator', className: (0, classnames_1.default)('divider', isCustomVisible && 'hidden') }), this.getCustomPanelToggle(isCustomVisible, textCustom), (0, jsx_runtime_1.jsx)("li", { className: (0, classnames_1.default)('custom-panel', !isCustomVisible && 'hidden'), children: (0, jsx_runtime_1.jsxs)("div", { className: 'row', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'col-sm-6', children: [(0, jsx_runtime_1.jsx)("label", { children: textFrom }), (0, jsx_runtime_1.jsx)(DatePicker_1.default, { locale: locale, open: true, autoDropDirection: false, dateFormat: true, timeFormat: hasTimePicker, initialValue: customRangeStartValue, onChange: this.onStartChange, closeOnSelect: true, isValidDate: this.getValidStartDates, className: (0, classnames_1.default)('DatePicker', !isStartValid && 'has-error') })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'col-sm-6', children: [(0, jsx_runtime_1.jsx)("label", { children: textTo }), (0, jsx_runtime_1.jsx)(DatePicker_1.default, { locale: locale, open: true, autoDropDirection: false, dateFormat: true, timeFormat: hasTimePicker, initialValue: customRangeEndValue, onChange: this.onEndChange, closeOnSelect: true, isValidDate: this.getValidEndDates, className: (0, classnames_1.default)('DatePicker', !isEndValid && 'has-error') })] })] }) }), this.getCustomPanelButtons(isCustomVisible, isStartValid, isEndValid, textApply, textCancel)] })] }) }));
430
444
  }
431
445
  }
432
446
  exports.DateRangePickerPure = DateRangePicker;
@@ -2,14 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const noop_1 = tslib_1.__importDefault(require("lodash/fp/noop"));
8
6
  const Button_1 = tslib_1.__importDefault(require("../button/Button"));
9
7
  const Dialog_1 = tslib_1.__importDefault(require("./Dialog"));
10
8
  const ConfirmationDialog = (props) => {
11
- const { content, onClickCancel = noop_1.default, cancelButtonText, onClickConfirm = noop_1.default, confirmButtonText, disableConfirm } = props, remainingProps = tslib_1.__rest(props, ["content", "onClickCancel", "cancelButtonText", "onClickConfirm", "confirmButtonText", "disableConfirm"]);
12
- const footer = ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'display-flex justify-content-end btn-toolbar' }, { children: [(0, jsx_runtime_1.jsx)(Button_1.default, Object.assign({ className: 'CancelButton', onClick: onClickCancel }, { children: cancelButtonText })), (0, jsx_runtime_1.jsx)(Button_1.default, Object.assign({ bsStyle: 'primary', className: 'ConfirmationButton', onClick: onClickConfirm, disabled: disableConfirm }, { children: confirmButtonText }))] })));
13
- return ((0, jsx_runtime_1.jsx)(Dialog_1.default, Object.assign({}, remainingProps, { body: content, footer: footer, onClose: onClickCancel, showCloseButton: false, className: 'confirmation-dialog', disableEsc: true })));
9
+ const { content, onClickCancel = noop_1.default, cancelButtonText, onClickConfirm = noop_1.default, confirmButtonText, disableConfirm, ...remainingProps } = props;
10
+ const footer = ((0, jsx_runtime_1.jsxs)("div", { className: 'btn-toolbar', children: [(0, jsx_runtime_1.jsx)(Button_1.default, { className: 'CancelButton', onClick: onClickCancel, children: cancelButtonText }), (0, jsx_runtime_1.jsx)(Button_1.default, { bsStyle: 'primary', className: 'ConfirmationButton', onClick: onClickConfirm, disabled: disableConfirm, children: confirmButtonText })] }));
11
+ return ((0, jsx_runtime_1.jsx)(Dialog_1.default, { ...remainingProps, body: content, footer: footer, onClose: onClickCancel, showCloseButton: false, className: 'confirmation-dialog', disableEsc: true }));
14
12
  };
15
13
  exports.default = ConfirmationDialog;
@@ -99,8 +99,8 @@ export type DialogProps = BaseDialogProps & {
99
99
  declare const Dialog: {
100
100
  (props: PropsWithChildren<DialogProps>): React.ReactPortal;
101
101
  Title: (props: import("./DialogHeader").DialogHeaderProps) => import("react/jsx-runtime").JSX.Element;
102
- Body: ({ className, children, ...remainingProps }: React.PropsWithChildren<import("./DialogBody").DialogBodyProps>) => import("react/jsx-runtime").JSX.Element;
103
- Footer: (props: React.PropsWithChildren<import("./DialogFooter").DialogFooterProps>) => import("react/jsx-runtime").JSX.Element;
102
+ Body: ({ className, children, ...remainingProps }: PropsWithChildren<import("./DialogBody").DialogBodyProps>) => import("react/jsx-runtime").JSX.Element;
103
+ Footer: (props: PropsWithChildren<import("./DialogFooter").DialogFooterProps>) => import("react/jsx-runtime").JSX.Element;
104
104
  SIZE_XS: "xs";
105
105
  SIZE_SM: "sm";
106
106
  SIZE_MD: "md";
@@ -10,7 +10,6 @@ const noop_1 = tslib_1.__importDefault(require("lodash/fp/noop"));
10
10
  const framer_motion_1 = require("framer-motion");
11
11
  const portalRoot_1 = require("../../utils/portalRoot");
12
12
  const useEsc_1 = tslib_1.__importDefault(require("../../hooks/useEsc"));
13
- require("../../hooks/useAfterMount");
14
13
  const DialogHeader_1 = tslib_1.__importDefault(require("./DialogHeader"));
15
14
  const DialogBody_1 = tslib_1.__importDefault(require("./DialogBody"));
16
15
  const DialogFooter_1 = tslib_1.__importDefault(require("./DialogFooter"));
@@ -19,11 +18,12 @@ const dialogContext_1 = require("./dialogContext");
19
18
  const MODAL_DIALOG_CLASS = 'modal-dialog';
20
19
  const MODAL_OPEN_CLASS = 'modal-open';
21
20
  const Dialog = (props) => {
22
- const { title, subtitle, body, footer, headerButtons, className = '', bodyClassName, footerClassName, showXsDialogBorders = false, showCloseButton = true, useOverflow = false, bsSize, show = false, onHide = noop_1.default, onClose, disableEsc = false, onEsc = noop_1.default, onCloseValidation = () => true, children } = props, remainingProps = tslib_1.__rest(props, ["title", "subtitle", "body", "footer", "headerButtons", "className", "bodyClassName", "footerClassName", "showXsDialogBorders", "showCloseButton", "useOverflow", "bsSize", "show", "onHide", "onClose", "disableEsc", "onEsc", "onCloseValidation", "children"]);
21
+ const { title, subtitle, body, footer, headerButtons, className = '', bodyClassName, footerClassName, showXsDialogBorders = false, showCloseButton = true, useOverflow = false, bsSize, show = false, onHide = noop_1.default, onClose, disableEsc = false, onEsc = noop_1.default, onCloseValidation = () => true, children, ...remainingProps } = props;
23
22
  const [open, setOpen] = (0, react_1.useState)(show);
24
23
  const dialogWrapperRef = (0, react_1.useRef)(null);
25
- const onCloseCallback = onClose !== null && onClose !== void 0 ? onClose : onHide;
24
+ const onCloseCallback = onClose ?? onHide;
26
25
  const modalRoot = (0, portalRoot_1.getOrCreatePortalRoot)();
26
+ const shouldReduceMotion = (0, framer_motion_1.useReducedMotion)();
27
27
  // Use a setter function for the focus trap as it would not re-render
28
28
  // and fails to set the focus listener
29
29
  const [focusTrapRef, setFocusTrapRef] = (0, react_1.useState)();
@@ -66,7 +66,6 @@ const Dialog = (props) => {
66
66
  }
67
67
  });
68
68
  const handleAnimationComplete = (definition) => {
69
- var _a;
70
69
  // The animation complete callback is invoked too when closing the dialog.
71
70
  // For that we check the animation props like the "opacity" to skip focusing
72
71
  // on the way out when closing the dialog.
@@ -80,8 +79,8 @@ const Dialog = (props) => {
80
79
  // elements like inputs would lose their focus to the dialog.
81
80
  // Note that in order to focus the dialog itself, the tabindex has to be set on that element
82
81
  // IMPORTANT: make sure the dialog has a tabIndex prop
83
- if (!(dialogElement === null || dialogElement === void 0 ? void 0 : dialogElement.contains(currentActiveElement))) {
84
- (_a = dialogWrapperRef === null || dialogWrapperRef === void 0 ? void 0 : dialogWrapperRef.current) === null || _a === void 0 ? void 0 : _a.focus();
82
+ if (!dialogElement?.contains(currentActiveElement)) {
83
+ dialogWrapperRef?.current?.focus();
85
84
  }
86
85
  };
87
86
  const modalClasses = (0, classnames_1.default)('modal', 'show', className);
@@ -98,22 +97,24 @@ const Dialog = (props) => {
98
97
  damping: 25,
99
98
  stiffness: 400,
100
99
  };
101
- return react_dom_1.default.createPortal((0, jsx_runtime_1.jsx)(dialogContext_1.DialogContextProvider, Object.assign({ value: { onClose: handleCloseButton, isSmallestDialog, showXsDialogBorders, showCloseButton } }, { children: (0, jsx_runtime_1.jsx)(framer_motion_1.AnimatePresence
100
+ return react_dom_1.default.createPortal((0, jsx_runtime_1.jsx)(dialogContext_1.DialogContextProvider, { value: { onClose: handleCloseButton, isSmallestDialog, showXsDialogBorders, showCloseButton }, children: (0, jsx_runtime_1.jsx)(framer_motion_1.AnimatePresence
102
101
  // Disable any initial animations on children that
103
102
  // are present when the component is first rendered
104
- , Object.assign({
103
+ , {
105
104
  // Disable any initial animations on children that
106
105
  // are present when the component is first rendered
107
106
  initial: false,
108
107
  // Only render one component at a time.
109
108
  // The exiting component will finish its exit
110
109
  // animation before entering component is rendered
111
- exitBeforeEnter: true }, { children: open && ((0, jsx_runtime_1.jsxs)("div", Object.assign({}, remainingProps, { className: modalClasses, role: 'dialog', ref: dialogWrapperRef, "aria-label": 'dialog',
110
+ exitBeforeEnter: true, children: open && ((0, jsx_runtime_1.jsxs)("div", { ...remainingProps, className: modalClasses, role: 'dialog', ref: dialogWrapperRef, "aria-label": 'dialog',
112
111
  // Make sure it has a tabIndex to focus the dialog so the close on esc works.
113
112
  // biome-ignore lint/a11y/noNoninteractiveTabindex: <explanation>
114
- tabIndex: 0 }, { children: [(0, jsx_runtime_1.jsx)(framer_motion_1.motion.div, Object.assign({ initial: { opacity: 0, y: '-50%' }, animate: { opacity: 1, y: 0, transition: isSmallestDialog ? springXs : spring }, exit: { opacity: 0, y: '-150%' }, transition: { opacity: 0.2, y: 0.3 }, onAnimationComplete: handleAnimationComplete,
113
+ tabIndex: 0, children: [(0, jsx_runtime_1.jsx)(framer_motion_1.motion.div, { initial: shouldReduceMotion ? false : { opacity: 0, y: '-50%' }, animate: shouldReduceMotion
114
+ ? { opacity: 1 }
115
+ : { opacity: 1, y: 0, transition: isSmallestDialog ? springXs : spring }, exit: shouldReduceMotion ? undefined : { opacity: 0, y: '-150%' }, transition: shouldReduceMotion ? { duration: 0 } : { opacity: 0.2, y: 0.3 }, onAnimationComplete: handleAnimationComplete,
115
116
  // @ts-ignore
116
- ref: setFocusTrapRef, className: modalDialogClasses, role: 'document' }, { children: (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'modal-content' }, { children: [hasChildren && children, !hasChildren && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [title && ((0, jsx_runtime_1.jsx)(DialogHeader_1.default, { title: title, subtitle: subtitle, headerButtons: headerButtons })), body && (0, jsx_runtime_1.jsx)(DialogBody_1.default, Object.assign({ className: bodyClassName }, { children: body })), footer && (0, jsx_runtime_1.jsx)(DialogFooter_1.default, Object.assign({ className: footerClassName }, { children: footer }))] }))] })) })), (0, jsx_runtime_1.jsx)(framer_motion_1.motion.div, { initial: { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 }, transition: { duration: 0.1 }, className: 'modal-backdrop' })] }))) })) })), modalRoot);
117
+ ref: setFocusTrapRef, className: modalDialogClasses, role: 'document', children: (0, jsx_runtime_1.jsxs)("div", { className: 'modal-content', children: [hasChildren && children, !hasChildren && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [title && ((0, jsx_runtime_1.jsx)(DialogHeader_1.default, { title: title, subtitle: subtitle, headerButtons: headerButtons })), body && (0, jsx_runtime_1.jsx)(DialogBody_1.default, { className: bodyClassName, children: body }), footer && (0, jsx_runtime_1.jsx)(DialogFooter_1.default, { className: footerClassName, children: footer })] }))] }) }), (0, jsx_runtime_1.jsx)(framer_motion_1.motion.div, { initial: shouldReduceMotion ? false : { opacity: 0 }, animate: { opacity: 1 }, exit: shouldReduceMotion ? undefined : { opacity: 0 }, transition: shouldReduceMotion ? { duration: 0 } : { duration: 0.1 }, className: 'modal-backdrop' })] })) }) }), modalRoot);
117
118
  };
118
119
  Dialog.Title = DialogHeader_1.default;
119
120
  Dialog.Body = DialogBody_1.default;
@@ -2,12 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const classnames_1 = tslib_1.__importDefault(require("classnames"));
8
- const DialogBody = (_a) => {
9
- var { className = '', children } = _a, remainingProps = tslib_1.__rest(_a, ["className", "children"]);
6
+ const DialogBody = ({ className = '', children, ...remainingProps }) => {
10
7
  const classes = (0, classnames_1.default)('modal-body', className);
11
- return ((0, jsx_runtime_1.jsx)("div", Object.assign({}, remainingProps, { className: classes, "aria-label": 'dialog body' }, { children: children })));
8
+ return ((0, jsx_runtime_1.jsx)("div", { ...remainingProps, className: classes, "aria-label": 'dialog body', children: children }));
12
9
  };
13
10
  exports.default = DialogBody;
@@ -2,15 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const classnames_1 = tslib_1.__importDefault(require("classnames"));
8
6
  const dialogContext_1 = require("./dialogContext");
9
7
  const DialogFooter = (props) => {
10
- const { className = '', children } = props, remainingProps = tslib_1.__rest(props, ["className", "children"]);
8
+ const { className = '', children, ...remainingProps } = props;
11
9
  const { isSmallestDialog, showXsDialogBorders } = (0, dialogContext_1.useDialogContext)();
12
10
  const doShowXsDialogBorders = isSmallestDialog ? showXsDialogBorders : true;
13
11
  const footerClassNames = (0, classnames_1.default)('modal-footer', !doShowXsDialogBorders && 'border-top-none padding-top-0', className);
14
- return ((0, jsx_runtime_1.jsx)("div", Object.assign({}, remainingProps, { className: footerClassNames, "aria-label": 'dialog footer' }, { children: children })));
12
+ return ((0, jsx_runtime_1.jsx)("div", { ...remainingProps, className: footerClassNames, "aria-label": 'dialog footer', children: children }));
15
13
  };
16
14
  exports.default = DialogFooter;
@@ -7,7 +7,7 @@ const noop_1 = tslib_1.__importDefault(require("lodash/fp/noop"));
7
7
  const classnames_1 = tslib_1.__importDefault(require("classnames"));
8
8
  const dialogContext_1 = require("./dialogContext");
9
9
  const DialogHeader = (props) => {
10
- const { title, subtitle, headerButtons, onCloseButtonClick = noop_1.default } = props, remainingProps = tslib_1.__rest(props, ["title", "subtitle", "headerButtons", "onCloseButtonClick"]);
10
+ const { title, subtitle, headerButtons, onCloseButtonClick = noop_1.default, ...remainingProps } = props;
11
11
  const { onClose, isSmallestDialog, showXsDialogBorders, showCloseButton } = (0, dialogContext_1.useDialogContext)();
12
12
  const doShowXsDialogBorders = isSmallestDialog ? showXsDialogBorders : true;
13
13
  const doShowCloseButton = isSmallestDialog ? false : showCloseButton;
@@ -17,6 +17,6 @@ const DialogHeader = (props) => {
17
17
  onCloseButtonClick(event);
18
18
  onClose(event);
19
19
  };
20
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({}, remainingProps, { className: headerClasses, "aria-label": 'dialog header' }, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: headerTextClasses }, { children: [subtitle && (0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'modal-header-subtitle' }, { children: subtitle })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'modal-header-title' }, { children: title }))] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'modal-header-buttons' }, { children: [headerButtons && !isSmallestDialog && ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [headerButtons, (0, jsx_runtime_1.jsx)("div", { className: 'modal-header-buttons-spacer' })] })), doShowCloseButton && ((0, jsx_runtime_1.jsx)("button", Object.assign({ type: 'button', className: 'btn btn-icon-only btn-muted modal-header-close close', onClick: handleClose, "data-testid": 'close', "aria-label": 'dialog close button' }, { children: (0, jsx_runtime_1.jsx)("span", { className: 'rioglyph rioglyph-remove', "aria-hidden": 'true' }) })))] }))] })));
20
+ return ((0, jsx_runtime_1.jsxs)("div", { ...remainingProps, className: headerClasses, "aria-label": 'dialog header', children: [(0, jsx_runtime_1.jsxs)("div", { className: headerTextClasses, children: [subtitle && (0, jsx_runtime_1.jsx)("div", { className: 'modal-header-subtitle', children: subtitle }), (0, jsx_runtime_1.jsx)("div", { className: 'modal-header-title', children: title })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'modal-header-buttons', children: [headerButtons && !isSmallestDialog && ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [headerButtons, (0, jsx_runtime_1.jsx)("div", { className: 'modal-header-buttons-spacer' })] })), doShowCloseButton && ((0, jsx_runtime_1.jsx)("button", { type: 'button', className: 'btn btn-icon-only btn-muted modal-header-close close', onClick: handleClose, "data-testid": 'close', "aria-label": 'dialog close button', children: (0, jsx_runtime_1.jsx)("span", { className: 'rioglyph rioglyph-remove', "aria-hidden": 'true' }) }))] })] }));
21
21
  };
22
22
  exports.default = DialogHeader;
@@ -38,9 +38,9 @@ const FrameDialog = (props) => {
38
38
  }
39
39
  });
40
40
  const dialogClassName = `frame-dialog ${className}`;
41
- return ((0, jsx_runtime_1.jsx)(Dialog_1.default, Object.assign({}, dialogProps, { show: showDialog, bodyClassName: 'padding-2 rounded min-height-200', body: (0, jsx_runtime_1.jsx)(iframe_resizer_react_1.default, { src: remoteDialogUrl, className: 'unstyled width-100pct' }),
41
+ return ((0, jsx_runtime_1.jsx)(Dialog_1.default, { ...dialogProps, show: showDialog, bodyClassName: 'padding-2 rounded min-height-200', body: (0, jsx_runtime_1.jsx)(iframe_resizer_react_1.default, { src: remoteDialogUrl, className: 'unstyled width-100pct' }),
42
42
  // Note: closing the dialog with escape is disabled by default.
43
43
  // The widget would need to handle the 'esc' event and send a message to close it
44
- disableEsc: true, className: dialogClassName })));
44
+ disableEsc: true, className: dialogClassName }));
45
45
  };
46
46
  exports.default = FrameDialog;
@@ -2,12 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const Dialog_1 = tslib_1.__importDefault(require("./Dialog"));
8
6
  const InfoDialog = (props) => {
9
- const { content, className } = props, remainingProps = tslib_1.__rest(props, ["content", "className"]);
7
+ const { content, className, ...remainingProps } = props;
10
8
  const dialogClassName = `${className ? className : ''} info-dialog`;
11
- return (0, jsx_runtime_1.jsx)(Dialog_1.default, Object.assign({}, remainingProps, { body: content, className: dialogClassName }));
9
+ return (0, jsx_runtime_1.jsx)(Dialog_1.default, { ...remainingProps, body: content, className: dialogClassName });
12
10
  };
13
11
  exports.default = InfoDialog;
@@ -10,7 +10,7 @@ const ResponsiveVideo_1 = tslib_1.__importDefault(require("../video/ResponsiveVi
10
10
  const ImagePreloader_1 = tslib_1.__importDefault(require("../preloader/ImagePreloader"));
11
11
  const Spinner_1 = tslib_1.__importDefault(require("../spinner/Spinner"));
12
12
  const MediaDialog = (props) => {
13
- const { show = false, onClose = noop_1.default, disableEsc = false, useOverflow = false, bsSize = 'lg', media = [], previousButtonText = 'Prev', previousButtonCallback = noop_1.default, nextButtonText = 'Next', nextButtonCallback = noop_1.default, className } = props, remainingProps = tslib_1.__rest(props, ["show", "onClose", "disableEsc", "useOverflow", "bsSize", "media", "previousButtonText", "previousButtonCallback", "nextButtonText", "nextButtonCallback", "className"]);
13
+ const { show = false, onClose = noop_1.default, disableEsc = false, useOverflow = false, bsSize = 'lg', media = [], previousButtonText = 'Prev', previousButtonCallback = noop_1.default, nextButtonText = 'Next', nextButtonCallback = noop_1.default, className, ...remainingProps } = props;
14
14
  const [currentMediaIndex, setCurrentMediaIndex] = (0, react_1.useState)(0);
15
15
  const handlePrevious = () => {
16
16
  const oldIndex = currentMediaIndex;
@@ -25,13 +25,13 @@ const MediaDialog = (props) => {
25
25
  nextButtonCallback(newIndex);
26
26
  };
27
27
  const renderFallback = () => {
28
- return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'text-center text-size-h3' }, { children: (0, jsx_runtime_1.jsx)("span", { className: 'rioglyph rioglyph-missing text-size-200pct text-color-gray' }) })));
28
+ return ((0, jsx_runtime_1.jsx)("div", { className: 'text-center text-size-h3', children: (0, jsx_runtime_1.jsx)("span", { className: 'rioglyph rioglyph-missing text-size-200pct text-color-gray' }) }));
29
29
  };
30
30
  const renderImage = (mediaData) => {
31
31
  const imageClassNames = (0, classnames_1.default)('img-responsive', mediaData.className && mediaData.className);
32
32
  return (
33
33
  // @ts-ignore
34
- (0, jsx_runtime_1.jsx)(ImagePreloader_1.default, Object.assign({ src: mediaData.src, className: imageClassNames }, { children: ({ status, image }) => {
34
+ (0, jsx_runtime_1.jsx)(ImagePreloader_1.default, { src: mediaData.src, className: imageClassNames, children: ({ status, image }) => {
35
35
  if (status === ImagePreloader_1.default.STATUS_LOADED) {
36
36
  // When image has been loaded, render the image tag
37
37
  return (0, jsx_runtime_1.jsx)("img", { className: 'ani-fade-in', src: image.src }, image.src);
@@ -40,12 +40,11 @@ const MediaDialog = (props) => {
40
40
  return renderFallback();
41
41
  }
42
42
  return (0, jsx_runtime_1.jsx)(Spinner_1.default, { isInverse: false });
43
- } })));
43
+ } }));
44
44
  };
45
45
  const renderVideo = (mediaData) => {
46
- var _a;
47
46
  const videoClassNames = (0, classnames_1.default)(mediaData.className && mediaData.className);
48
- return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'flex-1-0' }, { children: (0, jsx_runtime_1.jsx)(ResponsiveVideo_1.default, { src: mediaData.src, aspectRatio: (_a = mediaData.aspectRatio) !== null && _a !== void 0 ? _a : '16by9', className: videoClassNames }) })));
47
+ return ((0, jsx_runtime_1.jsx)("div", { className: 'flex-1-0', children: (0, jsx_runtime_1.jsx)(ResponsiveVideo_1.default, { src: mediaData.src, aspectRatio: mediaData.aspectRatio ?? '16by9', className: videoClassNames }) }));
49
48
  };
50
49
  const renderMediaContent = (mediaData = {}) => {
51
50
  if (mediaData.type === MediaDialog.MEDIA_TYPE_VIDEO) {
@@ -59,7 +58,7 @@ const MediaDialog = (props) => {
59
58
  const mediaContentClassNames = (0, classnames_1.default)('media-content', 'content-center');
60
59
  const mediaTitle = media[currentMediaIndex].title;
61
60
  const mediaSubtitle = media[currentMediaIndex].subtitle || null;
62
- return ((0, jsx_runtime_1.jsx)(Dialog_1.default, Object.assign({}, remainingProps, { show: show, title: mediaTitle, subtitle: mediaSubtitle, body: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: mediaContentClassNames }, { children: renderMediaContent(media[currentMediaIndex]) })), footer: (media === null || media === void 0 ? void 0 : media.length) > 1 && ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'position-relative clearfix' }, { children: [(0, jsx_runtime_1.jsxs)("button", Object.assign({ type: 'button', className: 'btn btn-primary btn-link pull-left', onClick: handlePrevious }, { children: [(0, jsx_runtime_1.jsx)("span", { className: 'rioglyph rioglyph-chevron-left' }), previousButtonText] })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'position-absolute top-50pct left-50pct transform translate-centered' }, { children: `${currentMediaIndex + 1} / ${props.media.length}` })), (0, jsx_runtime_1.jsxs)("button", Object.assign({ type: 'button', className: 'btn btn-primary btn-link btn-icon-right pull-right', onClick: handleNext }, { children: [(0, jsx_runtime_1.jsx)("span", { className: 'rioglyph rioglyph-chevron-right' }), nextButtonText] }))] }))), onClose: onClose, className: dialogClassName, bodyClassName: bodyClassNames, disableEsc: disableEsc, useOverflow: useOverflow, bsSize: bsSize })));
61
+ return ((0, jsx_runtime_1.jsx)(Dialog_1.default, { ...remainingProps, show: show, title: mediaTitle, subtitle: mediaSubtitle, body: (0, jsx_runtime_1.jsx)("div", { className: mediaContentClassNames, children: renderMediaContent(media[currentMediaIndex]) }), footer: media?.length > 1 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("button", { type: 'button', className: 'btn btn-primary btn-link pull-left', onClick: handlePrevious, children: [(0, jsx_runtime_1.jsx)("span", { className: 'rioglyph rioglyph-chevron-left' }), previousButtonText] }), (0, jsx_runtime_1.jsx)("div", { children: `${currentMediaIndex + 1} / ${props.media.length}` }), (0, jsx_runtime_1.jsxs)("button", { type: 'button', className: 'btn btn-primary btn-link btn-icon-right', onClick: handleNext, children: [(0, jsx_runtime_1.jsx)("span", { className: 'rioglyph rioglyph-chevron-right' }), nextButtonText] })] })), onClose: onClose, className: dialogClassName, bodyClassName: bodyClassNames, disableEsc: disableEsc, useOverflow: useOverflow, bsSize: bsSize }));
63
62
  };
64
63
  MediaDialog.MEDIA_TYPE_IMAGE = 'image';
65
64
  MediaDialog.MEDIA_TYPE_VIDEO = 'video';
@@ -2,13 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const Dialog_1 = tslib_1.__importDefault(require("./Dialog"));
8
6
  const Button_1 = tslib_1.__importDefault(require("../button/Button"));
9
7
  const OnboardingDialog = (props) => {
10
- const { className, show, onClose, onStartTour, imageSrc, imageAlt, title = 'Welcome to the RIO UIKIT!', description = ((0, jsx_runtime_1.jsxs)("span", { children: [(0, jsx_runtime_1.jsx)("span", Object.assign({ className: 'text-medium' }, { children: "Get started with a quick tour to explore UIKIT and discover its key features." })), ' ', (0, jsx_runtime_1.jsx)("span", { children: "It's the easiest way to get familiar with the service and make the most of your experience." })] })), onboardingRestartHint = 'Not ready to start now?', onboardingRestartDescription = 'You can always start the onboarding tour later from the service info option in the application header.', skipButtonText = 'Skip', tourButtonText = 'Start the tour' } = props, remainingProps = tslib_1.__rest(props, ["className", "show", "onClose", "onStartTour", "imageSrc", "imageAlt", "title", "description", "onboardingRestartHint", "onboardingRestartDescription", "skipButtonText", "tourButtonText"]);
8
+ const { className, show, onClose, onStartTour, imageSrc, imageAlt, title = 'Welcome to the RIO UIKIT!', description = ((0, jsx_runtime_1.jsxs)("span", { children: [(0, jsx_runtime_1.jsx)("span", { className: 'text-medium', children: "Get started with a quick tour to explore UIKIT and discover its key features." }), ' ', (0, jsx_runtime_1.jsx)("span", { children: "It's the easiest way to get familiar with the service and make the most of your experience." })] })), onboardingRestartHint = 'Not ready to start now?', onboardingRestartDescription = 'You can always start the onboarding tour later from the service info option in the application header.', skipButtonText = 'Skip', tourButtonText = 'Start the tour', ...remainingProps } = props;
11
9
  const dialogClassName = `${className ? className : ''} onboarding-dialog`;
12
- return ((0, jsx_runtime_1.jsx)(Dialog_1.default, Object.assign({}, remainingProps, { show: show, bsSize: 'sm', onClose: onClose, onEsc: onClose, bodyClassName: 'padding-0', className: dialogClassName, showCloseButton: false, body: (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("img", { className: 'img-responsive rounded-top-right-extra-large rounded-top-left-extra-large', src: imageSrc, alt: imageAlt }) }), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'position-relative padding-20 margin-top-10 margin-x-20' }, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'margin-bottom-15 margin-right-20 text-color-darkest' }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'text-size-h3 text-medium' }, { children: title })) })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'text-color-darker' }, { children: (0, jsx_runtime_1.jsx)("p", Object.assign({ className: 'text-size-16' }, { children: description })) })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'text-color-darker' }, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'margin-top-25 text-medium' }, { children: onboardingRestartHint })), (0, jsx_runtime_1.jsx)("p", Object.assign({ className: 'text-color-darker padding-bottom-15 margin-top-5' }, { children: onboardingRestartDescription }))] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'btn-toolbar justify-content-end margin-y-20' }, { children: [(0, jsx_runtime_1.jsx)(Button_1.default, Object.assign({ bsStyle: Button_1.default.MUTED, onClick: onClose }, { children: skipButtonText })), (0, jsx_runtime_1.jsx)(Button_1.default, Object.assign({ bsStyle: Button_1.default.PRIMARY, onClick: onStartTour }, { children: tourButtonText }))] }))] }))] }) })));
10
+ return ((0, jsx_runtime_1.jsx)(Dialog_1.default, { ...remainingProps, show: show, bsSize: 'sm', onClose: onClose, onEsc: onClose, bodyClassName: 'padding-0', className: dialogClassName, showCloseButton: false, body: (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("img", { className: 'img-responsive rounded-top-right-extra-large rounded-top-left-extra-large', src: imageSrc, alt: imageAlt }) }), (0, jsx_runtime_1.jsxs)("div", { className: 'position-relative padding-20 margin-top-10 margin-x-20', children: [(0, jsx_runtime_1.jsx)("div", { className: 'margin-bottom-15 margin-right-20 text-color-darkest', children: (0, jsx_runtime_1.jsx)("div", { className: 'text-size-h3 text-medium', children: title }) }), (0, jsx_runtime_1.jsx)("div", { className: 'text-color-darker', children: (0, jsx_runtime_1.jsx)("p", { className: 'text-size-16', children: description }) }), (0, jsx_runtime_1.jsxs)("div", { className: 'text-color-darker', children: [(0, jsx_runtime_1.jsx)("div", { className: 'margin-top-25 text-medium', children: onboardingRestartHint }), (0, jsx_runtime_1.jsx)("p", { className: 'text-color-darker padding-bottom-15 margin-top-5', children: onboardingRestartDescription })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'btn-toolbar justify-content-end margin-y-20', children: [(0, jsx_runtime_1.jsx)(Button_1.default, { bsStyle: Button_1.default.MUTED, onClick: onClose, children: skipButtonText }), (0, jsx_runtime_1.jsx)(Button_1.default, { bsStyle: Button_1.default.PRIMARY, onClick: onStartTour, children: tourButtonText })] })] })] }) }));
13
11
  };
14
12
  exports.default = OnboardingDialog;
@@ -2,8 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const ReleaseNotes_1 = tslib_1.__importDefault(require("../releaseNotes/ReleaseNotes"));
8
6
  const Button_1 = tslib_1.__importDefault(require("../button/Button"));
9
7
  const Dialog_1 = tslib_1.__importDefault(require("./Dialog"));
@@ -14,6 +12,6 @@ const setReleaseNotesItem = (props) => {
14
12
  const getModuleName = (moduleName, whatsNew) => ((0, jsx_runtime_1.jsx)("span", { children: moduleName ? moduleName : whatsNew }));
15
13
  const ReleaseNotesDialog = (props) => {
16
14
  const { moduleName, whatsNewTitle, closeButtonText, translatedReleaseNotes, useOverflow = true } = props;
17
- return ((0, jsx_runtime_1.jsx)(Dialog_1.default, { show: props.showReleaseNotes, useOverflow: useOverflow, title: getModuleName(moduleName, whatsNewTitle), subtitle: moduleName && whatsNewTitle, body: (0, jsx_runtime_1.jsx)(ReleaseNotes_1.default, { releaseNotes: translatedReleaseNotes }), footer: (0, jsx_runtime_1.jsx)(Button_1.default, Object.assign({ onClick: () => setReleaseNotesItem(props) }, { children: closeButtonText || 'Close' })), onClose: () => setReleaseNotesItem(props) }));
15
+ return ((0, jsx_runtime_1.jsx)(Dialog_1.default, { show: props.showReleaseNotes, useOverflow: useOverflow, title: getModuleName(moduleName, whatsNewTitle), subtitle: moduleName && whatsNewTitle, body: (0, jsx_runtime_1.jsx)(ReleaseNotes_1.default, { releaseNotes: translatedReleaseNotes }), footer: (0, jsx_runtime_1.jsx)(Button_1.default, { onClick: () => setReleaseNotesItem(props), children: closeButtonText || 'Close' }), onClose: () => setReleaseNotesItem(props) }));
18
16
  };
19
17
  exports.default = ReleaseNotesDialog;
@@ -2,14 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const noop_1 = tslib_1.__importDefault(require("lodash/fp/noop"));
8
6
  const Button_1 = tslib_1.__importDefault(require("../button/Button"));
9
7
  const Dialog_1 = tslib_1.__importDefault(require("./Dialog"));
10
8
  const SaveDialog = (props) => {
11
- const { showCloseButton = true, content, discardButtonText, cancelButtonText, confirmButtonText, onClickDiscard = noop_1.default, onClickCancel = noop_1.default, onClickConfirm = noop_1.default } = props, remainingProps = tslib_1.__rest(props, ["showCloseButton", "content", "discardButtonText", "cancelButtonText", "confirmButtonText", "onClickDiscard", "onClickCancel", "onClickConfirm"]);
12
- const footer = ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'display-flex justify-content-end btn-toolbar' }, { children: [(0, jsx_runtime_1.jsx)(Button_1.default, Object.assign({ className: 'DiscardButton', onClick: onClickDiscard }, { children: discardButtonText })), (0, jsx_runtime_1.jsx)(Button_1.default, Object.assign({ className: 'CancelButton', onClick: onClickCancel }, { children: cancelButtonText })), (0, jsx_runtime_1.jsx)(Button_1.default, Object.assign({ className: 'ConfirmationButton', bsStyle: 'primary', onClick: onClickConfirm }, { children: confirmButtonText }))] })));
13
- return ((0, jsx_runtime_1.jsx)(Dialog_1.default, Object.assign({}, remainingProps, { showCloseButton: showCloseButton, body: content, footer: footer, onClose: onClickCancel, className: 'save-dialog', disableEsc: true })));
9
+ const { showCloseButton = true, content, discardButtonText, cancelButtonText, confirmButtonText, onClickDiscard = noop_1.default, onClickCancel = noop_1.default, onClickConfirm = noop_1.default, ...remainingProps } = props;
10
+ const footer = ((0, jsx_runtime_1.jsxs)("div", { className: 'btn-toolbar', children: [(0, jsx_runtime_1.jsx)(Button_1.default, { className: 'DiscardButton', onClick: onClickDiscard, children: discardButtonText }), (0, jsx_runtime_1.jsx)(Button_1.default, { className: 'CancelButton', onClick: onClickCancel, children: cancelButtonText }), (0, jsx_runtime_1.jsx)(Button_1.default, { className: 'ConfirmationButton', bsStyle: 'primary', onClick: onClickConfirm, children: confirmButtonText })] }));
11
+ return ((0, jsx_runtime_1.jsx)(Dialog_1.default, { ...remainingProps, showCloseButton: showCloseButton, body: content, footer: footer, onClose: onClickCancel, className: 'save-dialog', disableEsc: true }));
14
12
  };
15
13
  exports.default = SaveDialog;
@@ -2,15 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const Dialog_1 = tslib_1.__importDefault(require("./Dialog"));
8
6
  /*
9
7
  * Component to show a modal popup containing a title, a content and a close handler.
10
8
  */
11
9
  const SimpleDialog = (props) => {
12
- const { content, showCloseButton = true, className } = props, remainingProps = tslib_1.__rest(props, ["content", "showCloseButton", "className"]);
10
+ const { content, showCloseButton = true, className, ...remainingProps } = props;
13
11
  const dialogClassName = `${className ? className : ''} simple-dialog`;
14
- return (0, jsx_runtime_1.jsx)(Dialog_1.default, Object.assign({}, remainingProps, { showCloseButton: showCloseButton, body: content, className: dialogClassName }));
12
+ return (0, jsx_runtime_1.jsx)(Dialog_1.default, { ...remainingProps, showCloseButton: showCloseButton, body: content, className: dialogClassName });
15
13
  };
16
14
  exports.default = SimpleDialog;
@@ -2,15 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const classnames_1 = tslib_1.__importDefault(require("classnames"));
8
6
  const Dialog_1 = tslib_1.__importDefault(require("./Dialog"));
9
7
  const SplitDialog = (props) => {
10
- const { leftContent, rightContent, leftContentClassName = '', rightContentClassName = '', className = '', useOverflow = true } = props, remainingProps = tslib_1.__rest(props, ["leftContent", "rightContent", "leftContentClassName", "rightContentClassName", "className", "useOverflow"]);
8
+ const { leftContent, rightContent, leftContentClassName = '', rightContentClassName = '', className = '', useOverflow = true, ...remainingProps } = props;
11
9
  const dialogClassName = `split-dialog ${className}`;
12
10
  const dividerClasses = (0, classnames_1.default)('split-divider', 'bg-lighter');
13
- const body = ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: 'split-wrapper' }, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: `split-left ${leftContentClassName}` }, { children: [leftContent, (0, jsx_runtime_1.jsx)("div", { className: dividerClasses })] })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: `split-right ${rightContentClassName}` }, { children: rightContent }))] })));
14
- return (0, jsx_runtime_1.jsx)(Dialog_1.default, Object.assign({}, remainingProps, { body: body, className: dialogClassName, useOverflow: useOverflow }));
11
+ const body = ((0, jsx_runtime_1.jsxs)("div", { className: 'split-wrapper', children: [(0, jsx_runtime_1.jsxs)("div", { className: `split-left ${leftContentClassName}`, children: [leftContent, (0, jsx_runtime_1.jsx)("div", { className: dividerClasses })] }), (0, jsx_runtime_1.jsx)("div", { className: `split-right ${rightContentClassName}`, children: rightContent })] }));
12
+ return (0, jsx_runtime_1.jsx)(Dialog_1.default, { ...remainingProps, body: body, className: dialogClassName, useOverflow: useOverflow });
15
13
  };
16
14
  exports.default = SplitDialog;
@@ -2,8 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- // @ts-ignore-next-line importsNotUsedAsValues
6
- require("react");
7
5
  const classnames_1 = tslib_1.__importDefault(require("classnames"));
8
6
  const Divider = (props) => {
9
7
  const { spacing = 15, dividerWidth = 1, dividerColor = 'light', asSpacer = false, vertical = false, titleAlignment = 'center', className = '', children, } = props;
@@ -24,9 +22,9 @@ const Divider = (props) => {
24
22
  width: vertical ? `${dividerWidth}px` : '100%',
25
23
  height: vertical ? '100%' : `${dividerWidth}px`,
26
24
  } }));
27
- const titleLine = (0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'flex-1-0' }, { children: line }));
28
- const title = (0, jsx_runtime_1.jsx)("div", Object.assign({ className: isStringTitle ? 'padding-x-10' : '' }, { children: children }));
25
+ const titleLine = (0, jsx_runtime_1.jsx)("div", { className: 'flex-1-0', children: line });
26
+ const title = (0, jsx_runtime_1.jsx)("div", { className: isStringTitle ? 'padding-x-10' : '', children: children });
29
27
  const dividerTitleClasses = (0, classnames_1.default)('divider-title', 'display-flex', 'align-items-center');
30
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: classes, style: wrapperStyle }, { children: [!asSpacer && !children && line, children && ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: dividerTitleClasses }, { children: [titleAlignment === 'left' && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [title, titleLine] })), titleAlignment === 'center' && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [titleLine, title, titleLine] })), titleAlignment === 'right' && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [titleLine, title] }))] })))] })));
28
+ return ((0, jsx_runtime_1.jsxs)("div", { className: classes, style: wrapperStyle, children: [!asSpacer && !children && line, children && ((0, jsx_runtime_1.jsxs)("div", { className: dividerTitleClasses, children: [titleAlignment === 'left' && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [title, titleLine] })), titleAlignment === 'center' && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [titleLine, title, titleLine] })), titleAlignment === 'right' && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [titleLine, title] }))] }))] }));
31
29
  };
32
30
  exports.default = Divider;
@@ -118,6 +118,6 @@ export type ButtonDropdownProps = {
118
118
  className?: string;
119
119
  };
120
120
  declare const ButtonDropdown: React.ForwardRefExoticComponent<ButtonDropdownProps & {
121
- children?: React.ReactNode;
121
+ children?: React.ReactNode | undefined;
122
122
  } & React.RefAttributes<HTMLButtonElement>>;
123
123
  export default ButtonDropdown;
@@ -10,7 +10,7 @@ const classnames_1 = tslib_1.__importDefault(require("classnames"));
10
10
  const isNil_1 = tslib_1.__importDefault(require("lodash/fp/isNil"));
11
11
  const noop_1 = tslib_1.__importDefault(require("lodash/fp/noop"));
12
12
  const portalRoot_1 = require("../../utils/portalRoot");
13
- const useClickOutside_1 = tslib_1.__importDefault(require("../../hooks/useClickOutside"));
13
+ const useClickOutside_1 = tslib_1.__importStar(require("../../hooks/useClickOutside"));
14
14
  const MenuItems_1 = tslib_1.__importDefault(require("../menuItems/MenuItems"));
15
15
  const MenuItemList_1 = tslib_1.__importDefault(require("../menuItems/MenuItemList"));
16
16
  const DropdownToggleButton_1 = tslib_1.__importDefault(require("./DropdownToggleButton"));
@@ -29,7 +29,7 @@ const getPlacement = (pullRight, dropup) => {
29
29
  return 'bottom-start';
30
30
  };
31
31
  const ButtonDropdown = (0, react_1.forwardRef)((props, ref) => {
32
- const { id = Math.random().toString(36).slice(2, 16), items = [], bsSize = 'md', bsStyle = 'default', variant, disabled = false, iconOnly = false, title, splitButton = false, customDropdown, open, dropup = false, pullRight = false, noCaret = false, onOpen = noop_1.default, onClose = noop_1.default, onLabelButtonClick = noop_1.default, usePortal = false, popperConfig, toggleClassName = '', dropdownClassName, className = '' } = props, remainingProps = tslib_1.__rest(props, ["id", "items", "bsSize", "bsStyle", "variant", "disabled", "iconOnly", "title", "splitButton", "customDropdown", "open", "dropup", "pullRight", "noCaret", "onOpen", "onClose", "onLabelButtonClick", "usePortal", "popperConfig", "toggleClassName", "dropdownClassName", "className"]);
32
+ const { id = Math.random().toString(36).slice(2, 16), items = [], bsSize = 'md', bsStyle = 'default', variant, disabled = false, iconOnly = false, title, splitButton = false, customDropdown, open, dropup = false, pullRight = false, noCaret = false, onOpen = noop_1.default, onClose = noop_1.default, onLabelButtonClick = noop_1.default, usePortal = false, popperConfig, toggleClassName = '', dropdownClassName, className = '', ...remainingProps } = props;
33
33
  const [internalOpen, setInternalOpen] = (0, react_1.useState)(open);
34
34
  const [refDropdownToggle, setRefDropdownToggle] = (0, react_1.useState)(null);
35
35
  const [refDropdownMenu, setRefDropdownMenu] = (0, react_1.useState)(null);
@@ -40,22 +40,24 @@ const ButtonDropdown = (0, react_1.forwardRef)((props, ref) => {
40
40
  };
41
41
  const popperParentRef = splitButton && pullRight ? refSplitButtonToggle : refDropdownToggle;
42
42
  const { styles, attributes } = (0, react_popper_1.usePopper)(popperParentRef, refDropdownMenu, popperConfig || defaultPopperConfig);
43
+ const isUncontrolled = (0, isNil_1.default)(open);
44
+ const isOpen = isUncontrolled ? internalOpen : open;
43
45
  const wrapperRef = (0, useClickOutside_1.default)(event => {
44
46
  if (usePortal) {
45
- // In case the dropdown is rendered via portal the clickOutside the toggle button element is triggered
46
- // since the dropdown is not a child of the wrapper element.
47
+ // In case the dropdown is rendered via portal the clickOutside the toggle button element is
48
+ // triggered since the dropdown is not a child of the wrapper element.
47
49
  // In this case we need to check if the event target is inside the dropdown-menu and prevent closing
48
50
  // the dropdown
49
- if (!(refDropdownMenu === null || refDropdownMenu === void 0 ? void 0 : refDropdownMenu.contains(event.target))) {
51
+ if (!refDropdownMenu?.contains(event.target)) {
50
52
  closeMenu();
51
53
  }
52
54
  }
53
55
  else {
54
56
  closeMenu();
55
57
  }
56
- });
58
+ }, useClickOutside_1.DEFAULT_EVENT_TYPES, Boolean(isOpen) // only listen to clicks outside when the dropdown is open
59
+ );
57
60
  const dropdownRoot = (0, portalRoot_1.getOrCreatePortalRoot)();
58
- const isUncontrolled = (0, isNil_1.default)(open);
59
61
  const shouldShowCaret = !noCaret && !splitButton && !iconOnly;
60
62
  (0, react_1.useEffect)(() => {
61
63
  if (!isUncontrolled) {
@@ -88,10 +90,9 @@ const ButtonDropdown = (0, react_1.forwardRef)((props, ref) => {
88
90
  onLabelButtonClick();
89
91
  };
90
92
  const handleDropdownButtonClick = splitButton ? handleSplitLabelButtonClick : toggleOpen;
91
- const isOpen = isUncontrolled ? internalOpen : open;
92
93
  const wrapperClasses = (0, classnames_1.default)('dropdown', 'btn-group', isOpen && 'open', className);
93
94
  const dropdownClasses = (0, classnames_1.default)(usePortal && 'dropdown-portal', splitButton && pullRight && 'pull-right', dropdownClassName);
94
- const dropdownMenu = ((0, jsx_runtime_1.jsx)(MenuItemList_1.default, Object.assign({ className: dropdownClasses, ref: setRefDropdownMenu, style: styles.popper }, attributes.popper, { children: customDropdown ? customDropdown : (0, jsx_runtime_1.jsx)(MenuItems_1.default, { items: items, closeMenu: toggleOpen }) })));
95
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({}, remainingProps, { className: wrapperClasses, ref: wrapperRef }, { children: [(0, jsx_runtime_1.jsx)(DropdownToggleButton_1.default, Object.assign({ id: id, splitButton: splitButton, bsStyle: bsStyle, bsSize: bsSize, variant: variant, iconOnly: iconOnly, disabled: disabled, ref: setRefDropdownToggle, onClick: handleDropdownButtonClick, outerRef: ref, className: toggleClassName }, { children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [title, shouldShowCaret && (0, jsx_runtime_1.jsx)(Caret_1.default, {})] }) })), splitButton && ((0, jsx_runtime_1.jsx)(SplitCaretButton_1.default, { id: id, bsStyle: bsStyle, bsSize: bsSize, disabled: disabled, className: toggleClassName, onClick: toggleOpen, ref: setRefSplitButtonToggle })), isOpen && usePortal && react_dom_1.default.createPortal(dropdownMenu, dropdownRoot), isOpen && !usePortal && dropdownMenu] })));
95
+ const dropdownMenu = ((0, jsx_runtime_1.jsx)(MenuItemList_1.default, { className: dropdownClasses, ref: setRefDropdownMenu, style: styles.popper, ...attributes.popper, children: customDropdown ? customDropdown : (0, jsx_runtime_1.jsx)(MenuItems_1.default, { items: items, closeMenu: toggleOpen }) }));
96
+ return ((0, jsx_runtime_1.jsxs)("div", { ...remainingProps, className: wrapperClasses, ref: wrapperRef, children: [(0, jsx_runtime_1.jsx)(DropdownToggleButton_1.default, { id: id, splitButton: splitButton, bsStyle: bsStyle, bsSize: bsSize, variant: variant, iconOnly: iconOnly, disabled: disabled, ref: setRefDropdownToggle, onClick: handleDropdownButtonClick, outerRef: ref, className: toggleClassName, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [title, shouldShowCaret && (0, jsx_runtime_1.jsx)(Caret_1.default, {})] }) }), splitButton && ((0, jsx_runtime_1.jsx)(SplitCaretButton_1.default, { id: id, bsStyle: bsStyle, bsSize: bsSize, disabled: disabled, className: toggleClassName, onClick: toggleOpen, ref: setRefSplitButtonToggle })), isOpen && usePortal && react_dom_1.default.createPortal(dropdownMenu, dropdownRoot), isOpen && !usePortal && dropdownMenu] }));
96
97
  });
97
98
  exports.default = ButtonDropdown;
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const jsx_runtime_1 = require("react/jsx-runtime");
4
- // @ts-ignore-next-line importsNotUsedAsValues
5
- require("react");
6
4
  const Caret = () => (0, jsx_runtime_1.jsx)("span", { className: 'caret' });
7
5
  exports.default = Caret;