@rio-cloud/rio-uikit 2.1.0 → 2.2.1

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 (446) hide show
  1. package/CircularProgress.d.ts +2 -0
  2. package/CircularProgress.js +5 -0
  3. package/CircularProgress.js.map +1 -0
  4. package/RadioCardGroup.d.ts +2 -0
  5. package/RadioCardGroup.js +7 -0
  6. package/RadioCardGroup.js.map +1 -0
  7. package/SearchHighlightText.d.ts +2 -0
  8. package/SearchHighlightText.js +5 -0
  9. package/SearchHighlightText.js.map +1 -0
  10. package/TextTruncateMiddle.d.ts +2 -0
  11. package/TextTruncateMiddle.js +5 -0
  12. package/TextTruncateMiddle.js.map +1 -0
  13. package/Tracker.d.ts +2 -0
  14. package/Tracker.js +5 -0
  15. package/Tracker.js.map +1 -0
  16. package/classNames.d.ts +2 -0
  17. package/classNames.js +5 -0
  18. package/classNames.js.map +1 -0
  19. package/components/accentBar/AccentBar.js +1 -1
  20. package/components/accentBar/AccentBar.js.map +1 -1
  21. package/components/actionBarItem/ActionBarItem.js +7 -7
  22. package/components/actionBarItem/ActionBarItem.js.map +1 -1
  23. package/components/actionBarItem/ActionBarItemIcon.js +1 -1
  24. package/components/actionBarItem/ActionBarItemIcon.js.map +1 -1
  25. package/components/actionBarItem/ActionBarItemList.js +1 -1
  26. package/components/actionBarItem/ActionBarItemList.js.map +1 -1
  27. package/components/actionBarItem/ActionBarItemListItem.js +1 -1
  28. package/components/actionBarItem/ActionBarItemListItem.js.map +1 -1
  29. package/components/actionBarItem/ActionBarItemListSeparator.js +1 -1
  30. package/components/actionBarItem/ActionBarItemListSeparator.js.map +1 -1
  31. package/components/actionBarItem/ActionBarItemPopoverContent.js +3 -3
  32. package/components/actionBarItem/ActionBarItemPopoverContent.js.map +1 -1
  33. package/components/actionBarItem/ActionBarOverlay.js +1 -1
  34. package/components/actionBarItem/ActionBarOverlay.js.map +1 -1
  35. package/components/activity/Activity.js +1 -1
  36. package/components/activity/Activity.js.map +1 -1
  37. package/components/animatedTextReveal/AnimatedTextReveal.js +1 -1
  38. package/components/animatedTextReveal/AnimatedTextReveal.js.map +1 -1
  39. package/components/applicationHeader/AppMenu.js +2 -2
  40. package/components/applicationHeader/AppMenu.js.map +1 -1
  41. package/components/applicationHeader/AppMenuDropdown.js +13 -11
  42. package/components/applicationHeader/AppMenuDropdown.js.map +1 -1
  43. package/components/applicationHeader/ApplicationHeader.js +1 -1
  44. package/components/applicationHeader/ApplicationHeader.js.map +1 -1
  45. package/components/applicationHeader/MobileHeaderModal.js +8 -8
  46. package/components/applicationHeader/MobileHeaderModal.js.map +1 -1
  47. package/components/applicationHeader/MobileSubmoduleNavigation.js +1 -1
  48. package/components/applicationHeader/MobileSubmoduleNavigation.js.map +1 -1
  49. package/components/applicationHeader/NavItems.js +4 -4
  50. package/components/applicationHeader/NavItems.js.map +1 -1
  51. package/components/applicationLayout/ApplicationLayout.js +10 -10
  52. package/components/applicationLayout/ApplicationLayout.js.map +1 -1
  53. package/components/applicationLayout/ApplicationLayoutBody.js +2 -2
  54. package/components/applicationLayout/ApplicationLayoutBody.js.map +1 -1
  55. package/components/applicationLayout/ApplicationLayoutBodyBanner.js +1 -1
  56. package/components/applicationLayout/ApplicationLayoutBodyBanner.js.map +1 -1
  57. package/components/applicationLayout/ApplicationLayoutBodyBottomBar.js +1 -1
  58. package/components/applicationLayout/ApplicationLayoutBodyBottomBar.js.map +1 -1
  59. package/components/applicationLayout/ApplicationLayoutBodyNavigation.js +1 -1
  60. package/components/applicationLayout/ApplicationLayoutBodyNavigation.js.map +1 -1
  61. package/components/applicationLayout/ApplicationLayoutHeader.js +1 -1
  62. package/components/applicationLayout/ApplicationLayoutHeader.js.map +1 -1
  63. package/components/applicationLayout/ApplicationLayoutSidebar.js +1 -1
  64. package/components/applicationLayout/ApplicationLayoutSidebar.js.map +1 -1
  65. package/components/applicationLayout/SubNavigation.js +1 -1
  66. package/components/applicationLayout/SubNavigation.js.map +1 -1
  67. package/components/assetTree/AssetTree.js +1 -1
  68. package/components/assetTree/AssetTree.js.map +1 -1
  69. package/components/assetTree/Tree.js +1 -1
  70. package/components/assetTree/Tree.js.map +1 -1
  71. package/components/assetTree/TreeIcon.js +3 -3
  72. package/components/assetTree/TreeIcon.js.map +1 -1
  73. package/components/assetTree/TreeLeaf.js +4 -4
  74. package/components/assetTree/TreeLeaf.js.map +1 -1
  75. package/components/assetTree/TreeNode.js +1 -1
  76. package/components/assetTree/TreeNode.js.map +1 -1
  77. package/components/assetTree/TreeNodeContainer.js +1 -1
  78. package/components/assetTree/TreeNodeContainer.js.map +1 -1
  79. package/components/assetTree/TreeOption.js +3 -3
  80. package/components/assetTree/TreeOption.js.map +1 -1
  81. package/components/assetTree/TreeOptions.js +4 -4
  82. package/components/assetTree/TreeOptions.js.map +1 -1
  83. package/components/assetTree/TreeRoot.js +3 -3
  84. package/components/assetTree/TreeRoot.js.map +1 -1
  85. package/components/assetTree/TreeSearch.js +3 -3
  86. package/components/assetTree/TreeSearch.js.map +1 -1
  87. package/components/assetTree/TreeSidebar.js +1 -1
  88. package/components/assetTree/TreeSidebar.js.map +1 -1
  89. package/components/assetTree/TreeSidebarCategories.js +4 -4
  90. package/components/assetTree/TreeSidebarCategories.js.map +1 -1
  91. package/components/assetTree/TreeSummary.js +1 -1
  92. package/components/assetTree/TreeSummary.js.map +1 -1
  93. package/components/assetTree/TypeCounter.js +1 -1
  94. package/components/assetTree/TypeCounter.js.map +1 -1
  95. package/components/autosuggest/AutoSuggest.js +1 -1
  96. package/components/autosuggest/AutoSuggest.js.map +1 -1
  97. package/components/avatar/Avatar.js +1 -1
  98. package/components/avatar/Avatar.js.map +1 -1
  99. package/components/banner/Banner.js +1 -1
  100. package/components/banner/Banner.js.map +1 -1
  101. package/components/banner/BannerContent.js +1 -1
  102. package/components/banner/BannerContent.js.map +1 -1
  103. package/components/barList/BarList.js +1 -1
  104. package/components/barList/BarList.js.map +1 -1
  105. package/components/bottomSheet/BottomSheet.js +1 -1
  106. package/components/bottomSheet/BottomSheet.js.map +1 -1
  107. package/components/button/Button.d.ts +53 -7
  108. package/components/button/Button.js +87 -64
  109. package/components/button/Button.js.map +1 -1
  110. package/components/button/ButtonToolbar.js +1 -1
  111. package/components/button/ButtonToolbar.js.map +1 -1
  112. package/components/button/ToggleButton.d.ts +4 -1
  113. package/components/button/ToggleButton.js.map +1 -1
  114. package/components/calendarStripe/CalendarStripe.js +16 -16
  115. package/components/calendarStripe/CalendarStripe.js.map +1 -1
  116. package/components/card/Card.js +1 -1
  117. package/components/card/Card.js.map +1 -1
  118. package/components/charts/RadialBarChart.js +106 -103
  119. package/components/charts/RadialBarChart.js.map +1 -1
  120. package/components/checkbox/Checkbox.js +6 -6
  121. package/components/checkbox/Checkbox.js.map +1 -1
  122. package/components/circularProgress/CircularProgress.d.ts +139 -0
  123. package/components/circularProgress/CircularProgress.js +197 -0
  124. package/components/circularProgress/CircularProgress.js.map +1 -0
  125. package/components/clearableInput/ClearableInput.js +9 -9
  126. package/components/clearableInput/ClearableInput.js.map +1 -1
  127. package/components/dataTabs/DataTabHeader.js +1 -1
  128. package/components/dataTabs/DataTabHeader.js.map +1 -1
  129. package/components/dataTabs/DataTabs.js +4 -4
  130. package/components/dataTabs/DataTabs.js.map +1 -1
  131. package/components/datepicker/DatePicker.js +6 -6
  132. package/components/datepicker/DatePicker.js.map +1 -1
  133. package/components/datepicker/DateRangePicker.js +1 -1
  134. package/components/datepicker/DateRangePicker.js.map +1 -1
  135. package/components/datepicker/DayPicker.js +1 -1
  136. package/components/datepicker/DayPicker.js.map +1 -1
  137. package/components/dialog/Dialog.js +55 -55
  138. package/components/dialog/Dialog.js.map +1 -1
  139. package/components/dialog/DialogBody.js +1 -1
  140. package/components/dialog/DialogBody.js.map +1 -1
  141. package/components/dialog/DialogFooter.js +1 -1
  142. package/components/dialog/DialogFooter.js.map +1 -1
  143. package/components/dialog/DialogHeader.js +1 -1
  144. package/components/dialog/DialogHeader.js.map +1 -1
  145. package/components/dialog/MediaDialog.js +1 -1
  146. package/components/dialog/MediaDialog.js.map +1 -1
  147. package/components/dialog/SplitDialog.js +1 -1
  148. package/components/dialog/SplitDialog.js.map +1 -1
  149. package/components/divider/Divider.js +1 -1
  150. package/components/divider/Divider.js.map +1 -1
  151. package/components/dropdown/ButtonDropdown.js +1 -1
  152. package/components/dropdown/ButtonDropdown.js.map +1 -1
  153. package/components/dropdown/DropdownSubmenu.js +3 -3
  154. package/components/dropdown/DropdownSubmenu.js.map +1 -1
  155. package/components/dropdown/DropdownToggleButton.d.ts +1 -1
  156. package/components/dropdown/DropdownToggleButton.js +4 -3
  157. package/components/dropdown/DropdownToggleButton.js.map +1 -1
  158. package/components/dropdown/SplitCaretButton.js +6 -6
  159. package/components/dropdown/SplitCaretButton.js.map +1 -1
  160. package/components/editableContent/EditableContent.js +1 -1
  161. package/components/editableContent/EditableContent.js.map +1 -1
  162. package/components/ellipsis/TextTruncateMiddle.d.ts +23 -0
  163. package/components/ellipsis/TextTruncateMiddle.js +21 -0
  164. package/components/ellipsis/TextTruncateMiddle.js.map +1 -0
  165. package/components/expander/ExpanderList.js +5 -5
  166. package/components/expander/ExpanderList.js.map +1 -1
  167. package/components/expander/ExpanderPanel.js +1 -1
  168. package/components/expander/ExpanderPanel.js.map +1 -1
  169. package/components/feedback/FeedbackRating.js +1 -1
  170. package/components/feedback/FeedbackRating.js.map +1 -1
  171. package/components/feedback/FeedbackReactions.js +1 -1
  172. package/components/feedback/FeedbackReactions.js.map +1 -1
  173. package/components/formLabel/FormLabel.js +6 -9
  174. package/components/formLabel/FormLabel.js.map +1 -1
  175. package/components/formLabel/LabeledElement.js +1 -1
  176. package/components/formLabel/LabeledElement.js.map +1 -1
  177. package/components/listMenu/ListMenu.js +2 -5
  178. package/components/listMenu/ListMenu.js.map +1 -1
  179. package/components/listMenu/ListMenuGroup.js +2 -2
  180. package/components/listMenu/ListMenuGroup.js.map +1 -1
  181. package/components/loadMore/LoadMoreButton.js +1 -1
  182. package/components/loadMore/LoadMoreButton.js.map +1 -1
  183. package/components/loadMore/LoadMoreProgress.js +1 -1
  184. package/components/loadMore/LoadMoreProgress.js.map +1 -1
  185. package/components/map/components/features/MapSettings.js +4 -4
  186. package/components/map/components/features/MapSettings.js.map +1 -1
  187. package/components/map/components/features/settings/MapSettingsItem.js +1 -1
  188. package/components/map/components/features/settings/MapSettingsItem.js.map +1 -1
  189. package/components/map/components/features/settings/MapSettingsPanel.js +6 -20
  190. package/components/map/components/features/settings/MapSettingsPanel.js.map +1 -1
  191. package/components/map/components/features/settings/MapSettingsTile.js +87 -61
  192. package/components/map/components/features/settings/MapSettingsTile.js.map +1 -1
  193. package/components/map/components/features/settings/ZoomButtons.js +1 -1
  194. package/components/map/components/features/settings/ZoomButtons.js.map +1 -1
  195. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.d.ts +38 -1
  196. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +128 -92
  197. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js.map +1 -1
  198. package/components/map/utils/eventHandling.js +9 -9
  199. package/components/map/utils/eventHandling.js.map +1 -1
  200. package/components/map/utils/mapUtils.d.ts +6 -6
  201. package/components/map/utils/mapUtils.js +14 -19
  202. package/components/map/utils/mapUtils.js.map +1 -1
  203. package/components/mapMarker/ClusterMapMarker.js +1 -1
  204. package/components/mapMarker/ClusterMapMarker.js.map +1 -1
  205. package/components/mapMarker/SingleMapMarker.js +1 -1
  206. package/components/mapMarker/SingleMapMarker.js.map +1 -1
  207. package/components/menuItems/MenuItem.js +1 -1
  208. package/components/menuItems/MenuItem.js.map +1 -1
  209. package/components/menuItems/MenuItemList.js +1 -1
  210. package/components/menuItems/MenuItemList.js.map +1 -1
  211. package/components/navigation/AppNavigationBar.js +4 -4
  212. package/components/navigation/AppNavigationBar.js.map +1 -1
  213. package/components/noData/NoData.js +1 -1
  214. package/components/noData/NoData.js.map +1 -1
  215. package/components/numberControl/NumberControl.js +4 -4
  216. package/components/numberControl/NumberControl.js.map +1 -1
  217. package/components/numberInput/NumberInput.js +1 -1
  218. package/components/numberInput/NumberInput.js.map +1 -1
  219. package/components/onboarding/OnboardingTip.js +4 -4
  220. package/components/onboarding/OnboardingTip.js.map +1 -1
  221. package/components/page/Page.js +1 -1
  222. package/components/page/Page.js.map +1 -1
  223. package/components/pager/Pager.js +1 -1
  224. package/components/pager/Pager.js.map +1 -1
  225. package/components/radiobutton/RadioButton.d.ts +1 -1
  226. package/components/radiobutton/RadioButton.js +5 -5
  227. package/components/radiobutton/RadioButton.js.map +1 -1
  228. package/components/radiobutton/RadioCardGroup.d.ts +86 -0
  229. package/components/radiobutton/RadioCardGroup.js +110 -0
  230. package/components/radiobutton/RadioCardGroup.js.map +1 -0
  231. package/components/resizer/Resizer.js +1 -1
  232. package/components/resizer/Resizer.js.map +1 -1
  233. package/components/responsiveColumnStripe/ResponsiveColumnStripe.js +1 -1
  234. package/components/responsiveColumnStripe/ResponsiveColumnStripe.js.map +1 -1
  235. package/components/rioglyph/Rioglyph.js +1 -1
  236. package/components/rioglyph/Rioglyph.js.map +1 -1
  237. package/components/rioglyph/RioglyphIconType.d.ts +1 -1
  238. package/components/rules/RuleConnector.js +1 -1
  239. package/components/rules/RuleConnector.js.map +1 -1
  240. package/components/rules/RuleContainer.js +27 -27
  241. package/components/rules/RuleContainer.js.map +1 -1
  242. package/components/saveableInput/SaveableDateInput.js +1 -1
  243. package/components/saveableInput/SaveableDateInput.js.map +1 -1
  244. package/components/saveableInput/SaveableInput.js +49 -49
  245. package/components/saveableInput/SaveableInput.js.map +1 -1
  246. package/components/searchHighlight/SearchHighlightText.d.ts +28 -0
  247. package/components/searchHighlight/SearchHighlightText.js +15 -0
  248. package/components/searchHighlight/SearchHighlightText.js.map +1 -0
  249. package/components/selects/BaseSelectDropdown.js +1 -1
  250. package/components/selects/BaseSelectDropdown.js.map +1 -1
  251. package/components/selects/ClearButton.js +4 -4
  252. package/components/selects/ClearButton.js.map +1 -1
  253. package/components/selects/Multiselect.js +6 -6
  254. package/components/selects/Multiselect.js.map +1 -1
  255. package/components/selects/MultiselectToggleFilter.js +4 -4
  256. package/components/selects/MultiselectToggleFilter.js.map +1 -1
  257. package/components/selects/MultiselectToggleSelection.js +1 -1
  258. package/components/selects/MultiselectToggleSelection.js.map +1 -1
  259. package/components/selects/Select.js +6 -6
  260. package/components/selects/Select.js.map +1 -1
  261. package/components/selects/SelectFilter.js +1 -1
  262. package/components/selects/SelectFilter.js.map +1 -1
  263. package/components/selects/WithFeedbackAndAddon.js +1 -1
  264. package/components/selects/WithFeedbackAndAddon.js.map +1 -1
  265. package/components/sidebars/Sidebar.js +54 -54
  266. package/components/sidebars/Sidebar.js.map +1 -1
  267. package/components/sidebars/SidebarBackdrop.js +4 -4
  268. package/components/sidebars/SidebarBackdrop.js.map +1 -1
  269. package/components/sidebars/SidebarFooter.js +1 -1
  270. package/components/sidebars/SidebarFooter.js.map +1 -1
  271. package/components/sidebars/SidebarFullscreenToggle.js +4 -4
  272. package/components/sidebars/SidebarFullscreenToggle.js.map +1 -1
  273. package/components/slider/RangeSlider.js +1 -1
  274. package/components/slider/RangeSlider.js.map +1 -1
  275. package/components/slider/Slider.js +1 -1
  276. package/components/slider/Slider.js.map +1 -1
  277. package/components/smoothScrollbars/SmoothScrollbars.js +1 -1
  278. package/components/smoothScrollbars/SmoothScrollbars.js.map +1 -1
  279. package/components/spinner/Spinner.js +5 -4
  280. package/components/spinner/Spinner.js.map +1 -1
  281. package/components/states/CustomState.d.ts +69 -1
  282. package/components/states/CustomState.js +1 -1
  283. package/components/states/CustomState.js.map +1 -1
  284. package/components/states/EmptyState.d.ts +1 -1
  285. package/components/states/EmptyState.js.map +1 -1
  286. package/components/states/ErrorState.d.ts +1 -1
  287. package/components/states/ErrorState.js.map +1 -1
  288. package/components/states/ForbiddenState.d.ts +1 -1
  289. package/components/states/ForbiddenState.js.map +1 -1
  290. package/components/states/MaintenanceState.d.ts +1 -1
  291. package/components/states/MaintenanceState.js.map +1 -1
  292. package/components/states/NotBookedState.d.ts +1 -1
  293. package/components/states/NotBookedState.js.map +1 -1
  294. package/components/states/NotFoundState.d.ts +1 -1
  295. package/components/states/NotFoundState.js.map +1 -1
  296. package/components/states/StateButton.js +1 -1
  297. package/components/states/StateButton.js.map +1 -1
  298. package/components/statsWidget/StatsWidget.js +1 -1
  299. package/components/statsWidget/StatsWidget.js.map +1 -1
  300. package/components/statsWidget/StatsWidgetBody.js +1 -1
  301. package/components/statsWidget/StatsWidgetBody.js.map +1 -1
  302. package/components/statsWidget/StatsWidgetFooter.js +1 -1
  303. package/components/statsWidget/StatsWidgetFooter.js.map +1 -1
  304. package/components/statsWidget/StatsWidgetHeader.js +1 -1
  305. package/components/statsWidget/StatsWidgetHeader.js.map +1 -1
  306. package/components/statsWidget/StatsWidgetNumber.js +2 -2
  307. package/components/statsWidget/StatsWidgetNumber.js.map +1 -1
  308. package/components/statsWidget/StatsWidgetSpacer.js +1 -1
  309. package/components/statsWidget/StatsWidgetSpacer.js.map +1 -1
  310. package/components/statsWidget/StatsWidgets.js +1 -1
  311. package/components/statsWidget/StatsWidgets.js.map +1 -1
  312. package/components/statusBar/StatusBar.d.ts +126 -2
  313. package/components/statusBar/StatusBar.js +24 -17
  314. package/components/statusBar/StatusBar.js.map +1 -1
  315. package/components/statusBar/StatusBarIcon.d.ts +1 -1
  316. package/components/statusBar/StatusBarIcon.js +4 -4
  317. package/components/statusBar/StatusBarIcon.js.map +1 -1
  318. package/components/statusBar/StatusBarLabel.d.ts +1 -1
  319. package/components/statusBar/StatusBarLabel.js +5 -7
  320. package/components/statusBar/StatusBarLabel.js.map +1 -1
  321. package/components/statusBar/StatusBarProgressBar.d.ts +1 -1
  322. package/components/statusBar/StatusBarProgressBar.js +1 -1
  323. package/components/statusBar/StatusBarProgressBar.js.map +1 -1
  324. package/components/steppedProgressBar/SteppedProgressBar.js +1 -1
  325. package/components/steppedProgressBar/SteppedProgressBar.js.map +1 -1
  326. package/components/switch/Switch.d.ts +16 -1
  327. package/components/switch/Switch.js +77 -35
  328. package/components/switch/Switch.js.map +1 -1
  329. package/components/table/TableCardsSorting.js +4 -4
  330. package/components/table/TableCardsSorting.js.map +1 -1
  331. package/components/table/TableHead.js +1 -1
  332. package/components/table/TableHead.js.map +1 -1
  333. package/components/table/TableSearch.js +1 -1
  334. package/components/table/TableSearch.js.map +1 -1
  335. package/components/table/TableSettingsColumnButtons.d.ts +1 -1
  336. package/components/table/TableSettingsColumnButtons.js +1 -1
  337. package/components/table/TableSettingsColumnButtons.js.map +1 -1
  338. package/components/table/TableSettingsColumnDetails.d.ts +1 -1
  339. package/components/table/TableSettingsColumnDetails.js +1 -1
  340. package/components/table/TableSettingsColumnDetails.js.map +1 -1
  341. package/components/table/TableSettingsDialog.d.ts +51 -1
  342. package/components/table/TableSettingsDialog.js +170 -154
  343. package/components/table/TableSettingsDialog.js.map +1 -1
  344. package/components/table/TableSettingsDialogFooter.js +1 -1
  345. package/components/table/TableSettingsDialogFooter.js.map +1 -1
  346. package/components/table/TableSettingsListContainer.d.ts +1 -1
  347. package/components/table/TableSettingsListContainer.js +8 -8
  348. package/components/table/TableSettingsListContainer.js.map +1 -1
  349. package/components/table/TableSettingsListItem.d.ts +1 -1
  350. package/components/table/TableSettingsListItem.js +26 -26
  351. package/components/table/TableSettingsListItem.js.map +1 -1
  352. package/components/table/TableToolbar.js +1 -1
  353. package/components/table/TableToolbar.js.map +1 -1
  354. package/components/table/TableViewToggles.js +1 -1
  355. package/components/table/TableViewToggles.js.map +1 -1
  356. package/components/tag/Tag.js +1 -1
  357. package/components/tag/Tag.js.map +1 -1
  358. package/components/tag/TagList.js +1 -1
  359. package/components/tag/TagList.js.map +1 -1
  360. package/components/tagManager/CustomSuggestionItem.js +1 -1
  361. package/components/tagManager/CustomSuggestionItem.js.map +1 -1
  362. package/components/tagManager/TagManager.d.ts +14 -2
  363. package/components/tagManager/TagManager.js +6 -6
  364. package/components/tagManager/TagManager.js.map +1 -1
  365. package/components/tagManager/TagManagerItemList.d.ts +1 -1
  366. package/components/tagManager/TagManagerItemList.js +1 -1
  367. package/components/tagManager/TagManagerItemList.js.map +1 -1
  368. package/components/teaser/Teaser.js +1 -1
  369. package/components/teaser/Teaser.js.map +1 -1
  370. package/components/teaser/TeaserContainer.js +1 -1
  371. package/components/teaser/TeaserContainer.js.map +1 -1
  372. package/components/timepicker/TimePicker.d.ts +20 -0
  373. package/components/timepicker/TimePicker.js +153 -99
  374. package/components/timepicker/TimePicker.js.map +1 -1
  375. package/components/tooltip/Tooltip.js +1 -1
  376. package/components/tooltip/Tooltip.js.map +1 -1
  377. package/components/tracker/Tracker.d.ts +85 -0
  378. package/components/tracker/Tracker.js +54 -0
  379. package/components/tracker/Tracker.js.map +1 -0
  380. package/components/tracker/TrackerBlock.d.ts +11 -0
  381. package/components/tracker/TrackerBlock.js +34 -0
  382. package/components/tracker/TrackerBlock.js.map +1 -0
  383. package/components/video/ResponsiveVideo.js +1 -1
  384. package/components/video/ResponsiveVideo.js.map +1 -1
  385. package/hooks/useCookies.d.ts +79 -0
  386. package/hooks/useCookies.js +33 -0
  387. package/hooks/useCookies.js.map +1 -0
  388. package/hooks/useInterval.js +5 -5
  389. package/hooks/useInterval.js.map +1 -1
  390. package/hooks/useIsFocusWithin.js +3 -3
  391. package/hooks/useIsFocusWithin.js.map +1 -1
  392. package/hooks/useLatest.d.ts +16 -0
  393. package/hooks/useLatest.js +11 -0
  394. package/hooks/useLatest.js.map +1 -0
  395. package/hooks/usePostMessage.d.ts +2 -1
  396. package/hooks/usePostMessage.js.map +1 -1
  397. package/hooks/useRioCookieConsent.d.ts +49 -0
  398. package/hooks/useRioCookieConsent.js +44 -0
  399. package/hooks/useRioCookieConsent.js.map +1 -0
  400. package/hooks/useSearch.d.ts +1 -1
  401. package/hooks/useSearch.js +28 -17
  402. package/hooks/useSearch.js.map +1 -1
  403. package/hooks/useSearchHighlight.d.ts +60 -0
  404. package/hooks/useSearchHighlight.js +54 -0
  405. package/hooks/useSearchHighlight.js.map +1 -0
  406. package/hooks/useTimeout.js +11 -11
  407. package/hooks/useTimeout.js.map +1 -1
  408. package/hooks/useUrlState.d.ts +62 -0
  409. package/hooks/useUrlState.js +137 -0
  410. package/hooks/useUrlState.js.map +1 -0
  411. package/mergeClassNameOverrides.d.ts +1 -0
  412. package/mergeClassNameOverrides.js +5 -0
  413. package/mergeClassNameOverrides.js.map +1 -0
  414. package/package.json +17 -18
  415. package/routeUtils.js +11 -5
  416. package/routeUtils.js.map +1 -1
  417. package/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.js +1 -1
  418. package/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.js.map +1 -1
  419. package/useCookies.d.ts +2 -0
  420. package/useCookies.js +5 -0
  421. package/useCookies.js.map +1 -0
  422. package/useRioCookieConsent.d.ts +2 -0
  423. package/useRioCookieConsent.js +5 -0
  424. package/useRioCookieConsent.js.map +1 -0
  425. package/useSearchHighlight.d.ts +2 -0
  426. package/useSearchHighlight.js +6 -0
  427. package/useSearchHighlight.js.map +1 -0
  428. package/useUrlState.d.ts +2 -0
  429. package/useUrlState.js +5 -0
  430. package/useUrlState.js.map +1 -0
  431. package/utils/classNames.d.ts +3 -0
  432. package/utils/classNames.js +5 -0
  433. package/utils/classNames.js.map +1 -0
  434. package/utils/mergeClassNameOverrides.d.ts +1 -0
  435. package/utils/mergeClassNameOverrides.js +55 -0
  436. package/utils/mergeClassNameOverrides.js.map +1 -0
  437. package/utils/routeUtils.d.ts +122 -13
  438. package/utils/routeUtils.js +89 -31
  439. package/utils/routeUtils.js.map +1 -1
  440. package/version.d.ts +1 -1
  441. package/version.js +1 -1
  442. package/version.js.map +1 -1
  443. package/components/states/BaseStateProps.d.ts +0 -70
  444. package/components/statusBar/StatusBarProps.d.ts +0 -127
  445. package/components/table/TableSettingsDialog.types.d.ts +0 -39
  446. package/components/tagManager/TagManagerTag.d.ts +0 -14
@@ -1 +1 @@
1
- {"version":3,"file":"TableSettingsDialog.js","sources":["../../../src/components/table/TableSettingsDialog.tsx"],"sourcesContent":["import type React from 'react';\nimport { useState, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport { isEqual } from 'es-toolkit/predicate';\nimport { isEmpty, mapValues, some } from 'es-toolkit/compat';\nimport { noop } from 'es-toolkit/function';\nimport { arrayMove } from '@dnd-kit/sortable';\n\nimport type { DragEndEvent } from '@dnd-kit/core';\n\nimport Dialog from '../dialog/Dialog';\nimport ClearableInput from '../clearableInput/ClearableInput';\nimport { TableSettingsDialogFooter } from './TableSettingsDialogFooter';\nimport { TableSettingsListContainer } from './TableSettingsListContainer';\nimport { filterColumns } from './TableSettingsListItem';\nimport type { TableColumnDetailsMap, ColumnLabelStrings, TableColumnDetails } from './TableSettingsDialog.types';\n\nconst DEFAULT_COLUMN_WIDTH = 0;\nconst MAX_COLUMN_WIDTH = 1000;\n\ntype TableSettingsDialogProps = {\n /**\n * Defined whether to show the dialog or not.\n *\n * @default false\n */\n show: boolean;\n\n /**\n * The title for the dialog header.\n */\n title: React.ReactNode;\n\n /**\n * The subtitle for the dialog header.\n */\n subtitle?: React.ReactNode;\n\n /**\n * List of column names in default order. This will be used for resetting changes.\n *\n * @default []\n */\n defaultColumnOrder: string[];\n\n /**\n * List of hidden columns that are hidden by default. This will be used for resetting changes.\n *\n * @default []\n */\n defaultHiddenColumns?: string[];\n\n /**\n * List of column names in current order. The \"columnOrder\" will be returned when the order changes.\n *\n * @default []\n */\n columnOrder: string[];\n\n /**\n * List of column names which are currently hidden. The \"hiddenColumns\n * will be returned when the order changes.\n *\n * @default []\n */\n hiddenColumns?: string[];\n\n /**\n * List of column labels which will be shown in the table header. These labels are usually\n * translated labels that can be set as FormattedMessage components for instance.\n *\n * The object key is the column name and the object value is the translated message.\n *\n * @default {}\n * @example\n * { name: <FormattedMessage id='name' /> }\n */\n columnLabels: { [name: string]: React.ReactNode };\n\n /**\n * Hide a sorted column will result in an error, so disable at least one important fallback column\n * or the sorted column (fallback column recommended)\n */\n disabledColumns: string[];\n\n /**\n * Optional object of detail properties to be shown in the details section of the respective\n * column item. If the prop is not given, the width sections won't be rendered.\n * The keys of this object are the column names / keys you use to identify a column.\n */\n columnsDetails?: TableColumnDetailsMap;\n\n /**\n * The label shown when the column width is unset, which means \"auto\".\n *\n * @default ''\n */\n autoLabel?: string | React.ReactNode;\n\n /**\n * Text for the \"apply\" button. This button will not be shown when\n * `immediateChange` is enabled.\n */\n applyButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"cancel\" button. This button will not be shown when\n * `immediateChange` is enabled.\n */\n cancelButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"close\" button. This button will only be shown when\n * `immediateChange` is enabled.\n */\n closeButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"reset to default\" button.\n */\n resetButtonText: string | React.ReactNode;\n\n /**\n * Callback function for when the column order or visibility changes.\n *\n * @param columnOrder\n * @param hiddenColumns\n * @param columnsDetails\n * @returns\n */\n onColumnChange?: (columnOrder: string[], hiddenColumns: string[], columnsDetails?: TableColumnDetailsMap) => void;\n\n /**\n * Callback function for when a single column details like width changes.\n *\n * @param column\n * @param columnsDetails\n * @returns\n */\n onColumnDetailsChange?: (column: string, columnsDetails: TableColumnDetails) => void;\n\n /**\n * Callback function for when the changes are discarded and the dialog should close.\n * Will not be triggered when `immediateChange` is enabled.\n *\n * @returns\n */\n onDiscard?: () => void;\n\n /**\n * Callback function for when the final changes should be applied and the dialog should close.\n * Will not be triggered when `immediateChange `is enabled.\n *\n * @param columnOrder\n * @param hiddenColumns\n * @param columnsDetails\n * @returns\n */\n onApply?: (columnOrder: string[], hiddenColumns: string[], columnsDetails: TableColumnDetailsMap) => void;\n\n /**\n * Callback function for when dialog should close.\n *\n * @returns\n */\n onHide: () => void;\n\n /**\n * Search value which should be set for the search field when the dialog opens.\n */\n columnSearchValue?: string;\n\n /**\n * Callback function for when the search value changes.\n *\n * @param value\n * @returns\n */\n onSearchChange?: (value: string) => void;\n\n /**\n * Placeholder text for the search input.\n */\n searchPlaceholder: React.ReactNode;\n\n /**\n * Message that should be shown when column search result is empty.\n */\n notFoundMessage?: string;\n\n /**\n * Defines whether or not all changes apply immediately. If so, no cancel and apply buttons are shown.\n * Enable this if you want to update the table after each change. Be aware of having side effects when\n * toggling columns where data need to be fetched from the backend.\n *\n * @default false\n */\n immediateChange?: boolean;\n\n /**\n * Optional class names for the wrapper element.\n */\n className?: string;\n};\n\nconst TableSettingsDialog = (props: TableSettingsDialogProps) => {\n const {\n show = false,\n title,\n subtitle,\n className,\n defaultColumnOrder = [],\n defaultHiddenColumns = [],\n columnOrder: extColumnOrder = [],\n hiddenColumns: extHiddenColumns = [],\n columnLabels = {},\n disabledColumns = [],\n columnsDetails: extColumnsDetails = {},\n autoLabel = '',\n applyButtonText,\n cancelButtonText,\n closeButtonText,\n resetButtonText,\n onColumnChange = noop,\n onColumnDetailsChange = noop,\n onDiscard = noop,\n // onCancel = noop,\n onApply = noop,\n onHide,\n columnSearchValue: extColumnSearchValue = '',\n onSearchChange = noop,\n searchPlaceholder,\n notFoundMessage = '',\n immediateChange = false,\n } = props;\n\n const [columnSearchValue, setColumnSearchValue] = useState(extColumnSearchValue);\n const [columnOrder, setColumnOrder] = useState(extColumnOrder);\n const [hiddenColumns, setHiddenColumns] = useState(extHiddenColumns || defaultHiddenColumns);\n\n const [columnsDetails, setColumnsDetails] = useState(extColumnsDetails);\n const [openColumnsDetails, setOpenColumnsDetails] = useState<Record<string, string>>({});\n\n const [columnLabelStrings, setColumnLabelStrings] = useState<ColumnLabelStrings>({});\n const [updateColumnLabelStrings, setUpdateColumnLabelStrings] = useState(true);\n\n // Dirty flag for offering to reset changes or to discard them\n const [hasChanged, setHasChanged] = useState(false);\n const [isResetAll, setIsResetAll] = useState(false);\n\n const [movedColumn, setMovedColumn] = useState(false);\n\n const contentRef = useRef<HTMLDivElement>(null);\n\n // Update items from outside\n useEffect(() => {\n setColumnSearchValue(extColumnSearchValue);\n setColumnOrder(extColumnOrder);\n setHiddenColumns(extHiddenColumns);\n\n if (show) {\n getColumnLabelStringsFromDOM();\n }\n\n const externalColumnOrder = extColumnOrder ?? defaultColumnOrder;\n const externalHiddenColumns = extHiddenColumns ?? defaultHiddenColumns;\n const externalColumnsDetails = extColumnsDetails ?? {};\n\n const hasChangesFromDefaults =\n !isEqual(externalColumnOrder, defaultColumnOrder) ||\n !isEqual(externalHiddenColumns, defaultHiddenColumns) ||\n hasColumnsDetailsChanged(externalColumnsDetails);\n\n setHasChanged(hasChangesFromDefaults);\n }, [\n extColumnSearchValue,\n extColumnOrder,\n extHiddenColumns,\n extColumnsDetails,\n defaultColumnOrder,\n defaultHiddenColumns,\n show,\n ]);\n\n const hasColumnsDetailsChanged = (columnsDetailsToCheck: TableColumnDetailsMap) => {\n if (isEmpty(columnsDetailsToCheck)) {\n return false;\n }\n\n const hasObjectChanged = some(columnsDetailsToCheck, (details: TableColumnDetails) => {\n const defaultWidth = Number.isFinite(details.defaultWidth) ? details.defaultWidth : DEFAULT_COLUMN_WIDTH;\n return details.width !== defaultWidth;\n });\n\n return hasObjectChanged;\n };\n\n // Update column details from outside if provided. Note, that in \"sort columns only\" mode\n // the columns details are undefined and no column widths can be set\n const [previousColumnDetails, setPreviousColumnDetails] = useState(extColumnsDetails);\n if (!isEqual(columnsDetails, previousColumnDetails)) {\n const columnsDetailsChanged = hasColumnsDetailsChanged(extColumnsDetails);\n setColumnsDetails(columnsDetailsChanged ? extColumnsDetails : columnsDetails);\n setPreviousColumnDetails(extColumnsDetails);\n }\n\n const getColumnLabelStringsFromDOM = () => {\n if (!contentRef.current) {\n return;\n }\n\n // For searching by name we need to get the label from the DOM as it may contain a FormattedMessage\n const labels = contentRef.current.getElementsByClassName('table-settings-item-label');\n\n const columnStrings: { [key: string]: string } = {};\n [...labels].forEach(label => {\n const dataKey = label.getAttribute('data-key');\n if (dataKey) {\n const updatedLabel = label.textContent?.replace(/\\r?\\n|\\r/g, '').toLowerCase();\n if (updatedLabel) {\n columnStrings[dataKey] = updatedLabel;\n }\n }\n });\n\n setColumnLabelStrings(columnStrings);\n setUpdateColumnLabelStrings(false);\n };\n\n const deleteMovedColumn = () => {\n setMovedColumn(false);\n };\n\n const moveColumnToIndex = (columnName: string, newIndex: number, changeMovedColumn: boolean) => {\n const newColumnOrder = columnOrder.filter(name => name !== columnName);\n newColumnOrder.splice(newIndex, 0, columnName);\n\n setColumnOrder(newColumnOrder);\n setMovedColumn(changeMovedColumn ? !!columnName : false);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(newColumnOrder, hiddenColumns);\n }\n\n window.setTimeout(deleteMovedColumn, 500);\n };\n\n const handleResetColumnChanges = () => setIsResetAll(true);\n const handleCancelResetColumnChanges = () => setIsResetAll(false);\n\n const resetColumnsDetails = (details: TableColumnDetailsMap) => {\n return mapValues(details, (singleColumnDetails: TableColumnDetails) => {\n return {\n ...singleColumnDetails,\n width: singleColumnDetails.defaultWidth || DEFAULT_COLUMN_WIDTH,\n };\n });\n };\n\n const resetAllColumnChanges = () => {\n const defaultColumnsDetails = resetColumnsDetails(columnsDetails);\n\n setColumnOrder(defaultColumnOrder);\n setHiddenColumns(defaultHiddenColumns);\n setColumnSearchValue('');\n setHasChanged(false);\n setIsResetAll(false);\n\n if (!isEmpty(columnsDetails)) {\n setColumnsDetails(defaultColumnsDetails);\n }\n\n if (immediateChange) {\n onSearchChange('');\n onColumnChange(defaultColumnOrder, defaultHiddenColumns, defaultColumnsDetails);\n }\n };\n\n const discardColumnChanges = () => {\n onSearchChange('');\n // onCancel();\n onDiscard();\n onHide();\n };\n\n const handleManuallyApplyChanges = () => {\n setColumnSearchValue('');\n\n onSearchChange('');\n onColumnChange(columnOrder, hiddenColumns, columnsDetails);\n onApply(columnOrder, hiddenColumns, columnsDetails);\n onHide();\n };\n\n const toggleHideColumn = (column: string) => {\n const isHidden = hiddenColumns.includes(column);\n const newHiddenColumns = isHidden ? hiddenColumns.filter(name => name !== column) : [...hiddenColumns, column];\n\n setHiddenColumns(newHiddenColumns);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(columnOrder, newHiddenColumns);\n }\n };\n\n const handleSearchChange = (searchValue: string) => {\n const newSearch = searchValue.toLowerCase();\n\n setColumnSearchValue(() => {\n onSearchChange(newSearch);\n return newSearch;\n });\n };\n\n const handleColumnWidthChange = (column: keyof TableColumnDetailsMap, value: number) => {\n if (columnsDetails[column]) {\n columnsDetails[column].width = value;\n } else {\n columnsDetails[column] = {\n width: value,\n defaultWidth: 0,\n maxWidth: MAX_COLUMN_WIDTH,\n };\n }\n\n setColumnsDetails(columnsDetails);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnDetailsChange(column, columnsDetails[column]);\n }\n };\n\n const handleResetColumnWidth = (column: keyof TableColumnDetailsMap) => {\n const updatedColumnDetails = columnsDetails[column];\n updatedColumnDetails.width = updatedColumnDetails.defaultWidth;\n\n setColumnsDetails(columnsDetails);\n\n if (immediateChange) {\n onColumnDetailsChange(column, columnsDetails[column]);\n }\n };\n\n const handleOpenColumnsDetails = (columnName: keyof TableColumnDetailsMap) => {\n const updatedOpenColumnDetails = { ...openColumnsDetails };\n\n if (updatedOpenColumnDetails[columnName]) {\n delete updatedOpenColumnDetails[columnName];\n } else {\n updatedOpenColumnDetails[columnName] = columnName;\n }\n\n setOpenColumnsDetails(updatedOpenColumnDetails);\n };\n\n const handleSortEnd = (event: DragEndEvent, previousOrder: string[]) => {\n const { active, over } = event;\n\n const activeId = active.id;\n const overId = over?.id;\n\n if (activeId === overId) {\n return;\n }\n\n const oldIndex = previousOrder.indexOf(String(activeId));\n const newIndex = previousOrder.indexOf(String(overId));\n\n const newColumnOrder = arrayMove(previousOrder, oldIndex, newIndex);\n\n setColumnOrder(newColumnOrder);\n setMovedColumn(true);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(newColumnOrder, hiddenColumns);\n }\n };\n\n const renderTableSettingsDialogContent = () => {\n const itemProps = {\n columnLabels,\n autoLabel,\n disabledColumns,\n columnOrder,\n hiddenColumns,\n columnSearchValue,\n columnsDetails,\n columnLabelStrings,\n openColumnsDetails,\n updateColumnLabelStrings,\n onMoveColumn: moveColumnToIndex,\n onOpenDetails: handleOpenColumnsDetails,\n onColumnWidthChange: handleColumnWidthChange,\n onResetColumnWidth: handleResetColumnWidth,\n onToggleHideColumn: toggleHideColumn,\n };\n\n const filteredColumns = columnOrder.filter(column =>\n filterColumns(columnSearchValue, column, columnLabelStrings)\n );\n\n const hasItems = !isEqual(filteredColumns, columnOrder);\n\n return (\n <div ref={contentRef}>\n <div className='table-settings-search'>\n <div className='input-group width-100pct'>\n <span className='input-group-addon'>\n <span className='rioglyph rioglyph-search' />\n </span>\n <ClearableInput\n value={columnSearchValue}\n onChange={handleSearchChange}\n placeholder={searchPlaceholder}\n />\n </div>\n </div>\n <div className='table-settings-body'>\n {hasItems ? (\n <TableSettingsListContainer\n items={columnOrder}\n onSortEnd={handleSortEnd}\n itemProps={{ ...itemProps }}\n />\n ) : (\n <div className='text-center text-color-gray'>{notFoundMessage}</div>\n )}\n </div>\n </div>\n );\n };\n\n const renderTableSettingsDialogFooter = () => {\n return (\n <TableSettingsDialogFooter\n hasChanged={hasChanged}\n isResetAll={isResetAll}\n immediateChange={immediateChange}\n resetButtonText={resetButtonText}\n closeButtonText={closeButtonText}\n cancelButtonText={cancelButtonText}\n applyButtonText={applyButtonText}\n onHide={onHide}\n onResetColumnChanges={handleResetColumnChanges}\n onDiscardChanges={discardColumnChanges}\n onApplyChanges={handleManuallyApplyChanges}\n onConfirmResetColumnChanges={resetAllColumnChanges}\n onCancelResetColumnChanges={handleCancelResetColumnChanges}\n />\n );\n };\n\n if (!show) {\n return null;\n }\n\n const dialogClassNames = classNames('TableSettingsDialog', className);\n\n return (\n <Dialog\n show={show}\n title={title}\n subtitle={subtitle}\n onClose={onHide}\n body={renderTableSettingsDialogContent()}\n footer={renderTableSettingsDialogFooter()}\n className={dialogClassNames}\n />\n );\n};\n\nexport default TableSettingsDialog;\n"],"names":["DEFAULT_COLUMN_WIDTH","MAX_COLUMN_WIDTH","TableSettingsDialog","props","show","title","subtitle","className","defaultColumnOrder","defaultHiddenColumns","extColumnOrder","extHiddenColumns","columnLabels","disabledColumns","extColumnsDetails","autoLabel","applyButtonText","cancelButtonText","closeButtonText","resetButtonText","onColumnChange","noop","onColumnDetailsChange","onDiscard","onApply","onHide","extColumnSearchValue","onSearchChange","searchPlaceholder","notFoundMessage","immediateChange","columnSearchValue","setColumnSearchValue","useState","columnOrder","setColumnOrder","hiddenColumns","setHiddenColumns","columnsDetails","setColumnsDetails","openColumnsDetails","setOpenColumnsDetails","columnLabelStrings","setColumnLabelStrings","updateColumnLabelStrings","setUpdateColumnLabelStrings","hasChanged","setHasChanged","isResetAll","setIsResetAll","movedColumn","setMovedColumn","contentRef","useRef","useEffect","getColumnLabelStringsFromDOM","externalColumnOrder","externalHiddenColumns","externalColumnsDetails","hasChangesFromDefaults","isEqual","hasColumnsDetailsChanged","columnsDetailsToCheck","isEmpty","some","details","defaultWidth","previousColumnDetails","setPreviousColumnDetails","columnsDetailsChanged","labels","columnStrings","label","dataKey","updatedLabel","deleteMovedColumn","moveColumnToIndex","columnName","newIndex","changeMovedColumn","newColumnOrder","name","handleResetColumnChanges","handleCancelResetColumnChanges","resetColumnsDetails","mapValues","singleColumnDetails","resetAllColumnChanges","defaultColumnsDetails","discardColumnChanges","handleManuallyApplyChanges","toggleHideColumn","column","newHiddenColumns","handleSearchChange","searchValue","newSearch","handleColumnWidthChange","value","handleResetColumnWidth","updatedColumnDetails","handleOpenColumnsDetails","updatedOpenColumnDetails","handleSortEnd","event","previousOrder","active","over","activeId","overId","oldIndex","arrayMove","renderTableSettingsDialogContent","itemProps","filteredColumns","filterColumns","hasItems","jsxs","jsx","ClearableInput","TableSettingsListContainer","renderTableSettingsDialogFooter","TableSettingsDialogFooter","dialogClassNames","classNames","Dialog"],"mappings":"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"}
1
+ {"version":3,"file":"TableSettingsDialog.js","sources":["../../../src/components/table/TableSettingsDialog.tsx"],"sourcesContent":["import type React from 'react';\nimport { useState, useEffect, useRef } from 'react';\nimport { isEqual } from 'es-toolkit/predicate';\nimport { isEmpty, mapValues } from 'es-toolkit/compat';\nimport { noop } from 'es-toolkit/function';\nimport { arrayMove } from '@dnd-kit/sortable';\nimport type { DragEndEvent } from '@dnd-kit/core';\n\nimport classNames from '../../utils/classNames';\nimport Dialog from '../dialog/Dialog';\nimport ClearableInput from '../clearableInput/ClearableInput';\nimport { TableSettingsDialogFooter } from './TableSettingsDialogFooter';\nimport { TableSettingsListContainer } from './TableSettingsListContainer';\nimport { filterColumns } from './TableSettingsListItem';\n\nconst DEFAULT_COLUMN_WIDTH = 0;\nconst MAX_COLUMN_WIDTH = 1000;\n\nexport type TableColumnDetails = {\n /**\n * Defined the current width of a column.\n *\n * @default 0\n */\n width?: number;\n\n /**\n * Defined the default width of a column which will be used when resetting to default.\n *\n * @default 0\n */\n defaultWidth?: number;\n\n /**\n * Defined the maximum width of a column.\n *\n * @default 1000\n */\n maxWidth?: number;\n};\n\nexport type TableColumnsSettings = {\n columnOrder: string[];\n hiddenColumns: string[];\n columnsDetails: TableColumnDetailsMap;\n};\n\nexport type TableColumnDetailsMap = Record<string, TableColumnDetails>;\nexport type ColumnLabelStrings = Record<string, string>;\n\nexport type TableSettingsItemProps = {\n columnLabels?: any;\n autoLabel?: string | React.ReactNode;\n disabledColumns?: string[];\n columnOrder: string[];\n hiddenColumns?: string[];\n columnSearchValue: string;\n columnsDetails: TableColumnDetailsMap;\n columnLabelStrings?: ColumnLabelStrings;\n openColumnsDetails?: Record<string, string>;\n updateColumnLabelStrings?: boolean;\n onColumnWidthChange?: (column: keyof TableColumnDetailsMap, value: number) => void;\n onResetColumnWidth?: (column: keyof TableColumnDetailsMap) => void;\n onMoveColumn?: (columnName: string, newIndex: number, changeMovedColumn: boolean) => void;\n onOpenDetails?: (columnName: keyof TableColumnDetailsMap) => void;\n onToggleHideColumn?: (column: string) => void;\n};\n\ntype TableSettingsDialogProps = {\n /**\n * Defined whether to show the dialog or not.\n *\n * @default false\n */\n show: boolean;\n\n /**\n * The title for the dialog header.\n */\n title: React.ReactNode;\n\n /**\n * The subtitle for the dialog header.\n */\n subtitle?: React.ReactNode;\n\n /**\n * List of column names in default order. This will be used for resetting changes.\n *\n * @default []\n */\n defaultColumnOrder: string[];\n\n /**\n * List of hidden columns that are hidden by default. This will be used for resetting changes.\n *\n * @default []\n */\n defaultHiddenColumns?: string[];\n\n /**\n * Initial default configuration for the each columns with regards to column width.\n * Used to reset to this state when the configuration differs.\n *\n * @default {}\n */\n defaultColumnDetails?: TableColumnDetailsMap;\n\n /**\n * List of column names in current order. The \"columnOrder\" will be returned when the order changes.\n *\n * @default []\n */\n columnOrder: string[];\n\n /**\n * List of column names which are currently hidden. The \"hiddenColumns\n * will be returned when the order changes.\n *\n * @default []\n */\n hiddenColumns?: string[];\n\n /**\n * List of column labels which will be shown in the table header. These labels are usually\n * translated labels that can be set as FormattedMessage components for instance.\n *\n * The object key is the column name and the object value is the translated message.\n *\n * @default {}\n * @example\n * { name: <FormattedMessage id='name' /> }\n */\n columnLabels: { [name: string]: React.ReactNode };\n\n /**\n * Hide a sorted column will result in an error, so disable at least one important fallback column\n * or the sorted column (fallback column recommended)\n */\n disabledColumns: string[];\n\n /**\n * Optional object of detail properties to be shown in the details section of the respective\n * column item. If the prop is not given, the width sections won't be rendered.\n * The keys of this object are the column names / keys you use to identify a column.\n */\n columnsDetails?: TableColumnDetailsMap;\n\n /**\n * The label shown when the column width is unset, which means \"auto\".\n *\n * @default ''\n */\n autoLabel?: string | React.ReactNode;\n\n /**\n * Text for the \"apply\" button. This button will not be shown when\n * `immediateChange` is enabled.\n */\n applyButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"cancel\" button. This button will not be shown when\n * `immediateChange` is enabled.\n */\n cancelButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"close\" button. This button will only be shown when\n * `immediateChange` is enabled.\n */\n closeButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"reset to default\" button.\n */\n resetButtonText: string | React.ReactNode;\n\n /**\n * Callback function for when the column order or visibility changes.\n *\n * @param columnOrder\n * @param hiddenColumns\n * @param columnsDetails\n * @returns\n */\n onColumnChange?: (columnOrder: string[], hiddenColumns: string[], columnsDetails?: TableColumnDetailsMap) => void;\n\n /**\n * Callback function for when a single column details like width changes.\n *\n * @param column\n * @param columnsDetails\n * @returns\n */\n onColumnDetailsChange?: (column: string, columnsDetails: TableColumnDetails) => void;\n\n /**\n * Callback function for when the changes are discarded and the dialog should close.\n * Will not be triggered when `immediateChange` is enabled.\n *\n * @returns\n */\n onDiscard?: () => void;\n\n /**\n * Callback function for when the final changes should be applied and the dialog should close.\n * Will not be triggered when `immediateChange `is enabled.\n *\n * @param columnOrder\n * @param hiddenColumns\n * @param columnsDetails\n * @returns\n */\n onApply?: (columnOrder: string[], hiddenColumns: string[], columnsDetails: TableColumnDetailsMap) => void;\n\n /**\n * Callback function for when dialog should close.\n *\n * @returns\n */\n onHide: () => void;\n\n /**\n * Search value which should be set for the search field when the dialog opens.\n */\n columnSearchValue?: string;\n\n /**\n * Callback function for when the search value changes.\n *\n * @param value\n * @returns\n */\n onSearchChange?: (value: string) => void;\n\n /**\n * Placeholder text for the search input.\n */\n searchPlaceholder: React.ReactNode;\n\n /**\n * Message that should be shown when column search result is empty.\n */\n notFoundMessage?: string;\n\n /**\n * Defines whether or not all changes apply immediately. If so, no cancel and apply buttons are shown.\n * Enable this if you want to update the table after each change. Be aware of having side effects when\n * toggling columns where data need to be fetched from the backend.\n *\n * @default false\n */\n immediateChange?: boolean;\n\n /**\n * Optional class names for the wrapper element.\n */\n className?: string;\n};\n\nconst TableSettingsDialog = (props: TableSettingsDialogProps) => {\n const {\n show = false,\n title,\n subtitle,\n className,\n defaultColumnOrder = [],\n defaultHiddenColumns = [],\n defaultColumnDetails = {},\n columnOrder: extColumnOrder = [],\n hiddenColumns: extHiddenColumns = [],\n columnLabels = {},\n disabledColumns = [],\n columnsDetails: extColumnsDetails = {},\n autoLabel = '',\n applyButtonText,\n cancelButtonText,\n closeButtonText,\n resetButtonText,\n onColumnChange = noop,\n onColumnDetailsChange = noop,\n onDiscard = noop,\n onApply = noop,\n onHide,\n columnSearchValue: extColumnSearchValue = '',\n onSearchChange = noop,\n searchPlaceholder,\n notFoundMessage = '',\n immediateChange = false,\n } = props;\n\n const [columnSearchValue, setColumnSearchValue] = useState(extColumnSearchValue);\n const [columnOrder, setColumnOrder] = useState(extColumnOrder);\n const [hiddenColumns, setHiddenColumns] = useState(extHiddenColumns || defaultHiddenColumns);\n\n const [columnsDetails, setColumnsDetails] = useState(extColumnsDetails);\n const [openColumnsDetails, setOpenColumnsDetails] = useState<Record<string, string>>({});\n\n const [columnLabelStrings, setColumnLabelStrings] = useState<ColumnLabelStrings>({});\n const [updateColumnLabelStrings, setUpdateColumnLabelStrings] = useState(true);\n\n // Dirty flag for offering to reset changes or to discard them\n const [hasChanged, setHasChanged] = useState(false);\n const [isResetAll, setIsResetAll] = useState(false);\n\n const [movedColumn, setMovedColumn] = useState(false);\n\n const contentRef = useRef<HTMLDivElement>(null);\n\n const defaultColumnDetailsRef = useRef(defaultColumnDetails);\n const previousShowRef = useRef(show);\n\n // Update items from outside\n useEffect(() => {\n const hasJustOpened = show && !previousShowRef.current;\n const isClosed = !show;\n\n if (hasJustOpened || isClosed) {\n setColumnSearchValue(extColumnSearchValue);\n }\n\n setColumnOrder(extColumnOrder);\n setHiddenColumns(extHiddenColumns);\n setColumnsDetails(extColumnsDetails);\n\n if (show) {\n getColumnLabelStringsFromDOM();\n }\n\n const externalColumnOrder = extColumnOrder ?? defaultColumnOrder;\n const externalHiddenColumns = extHiddenColumns ?? defaultHiddenColumns;\n const externalColumnsDetails = extColumnsDetails ?? {};\n\n const hasChangesFromDefaults =\n !isEqual(externalColumnOrder, defaultColumnOrder) ||\n !isEqual(externalHiddenColumns, defaultHiddenColumns) ||\n hasColumnsDetailsChanged(externalColumnsDetails);\n setHasChanged(hasChangesFromDefaults);\n\n previousShowRef.current = show;\n }, [\n extColumnSearchValue,\n JSON.stringify(extColumnOrder),\n JSON.stringify(extHiddenColumns),\n JSON.stringify(extColumnsDetails),\n JSON.stringify(defaultColumnOrder),\n JSON.stringify(defaultHiddenColumns),\n show,\n ]);\n\n const hasColumnsDetailsChanged = (columnsDetailsToCheck: TableColumnDetailsMap) => {\n const getEffectiveWidth = (details: TableColumnDetails | undefined) => {\n if (!details) {\n return DEFAULT_COLUMN_WIDTH;\n }\n const { width, defaultWidth } = details;\n if (Number.isFinite(width)) {\n return width as number;\n }\n if (Number.isFinite(defaultWidth)) {\n return defaultWidth as number;\n }\n return DEFAULT_COLUMN_WIDTH;\n };\n\n const getFallbackDefaultWidth = (details: TableColumnDetails | undefined) => {\n if (Number.isFinite(details?.defaultWidth)) {\n return details?.defaultWidth as number;\n }\n\n return DEFAULT_COLUMN_WIDTH;\n };\n\n if (isEmpty(defaultColumnDetailsRef.current)) {\n return Object.values(columnsDetailsToCheck).some(\n details => getEffectiveWidth(details) !== getFallbackDefaultWidth(details)\n );\n }\n\n return Object.keys(defaultColumnDetailsRef.current).some(key => {\n const baseline = defaultColumnDetailsRef.current[key];\n const current = columnsDetailsToCheck[key];\n return getEffectiveWidth(current) !== getEffectiveWidth(baseline);\n });\n };\n\n const getColumnLabelStringsFromDOM = () => {\n if (!contentRef.current) {\n return;\n }\n\n // For searching by name we need to get the label from the DOM as it may contain a FormattedMessage\n const labels = contentRef.current.getElementsByClassName('table-settings-item-label');\n\n const columnStrings: { [key: string]: string } = {};\n [...labels].forEach(label => {\n const dataKey = label.getAttribute('data-key');\n if (dataKey) {\n const updatedLabel = label.textContent?.replace(/\\r?\\n|\\r/g, '').toLowerCase();\n if (updatedLabel) {\n columnStrings[dataKey] = updatedLabel;\n }\n }\n });\n\n setColumnLabelStrings(columnStrings);\n setUpdateColumnLabelStrings(false);\n };\n\n const deleteMovedColumn = () => {\n setMovedColumn(false);\n };\n\n const moveColumnToIndex = (columnName: string, newIndex: number, changeMovedColumn: boolean) => {\n const newColumnOrder = columnOrder.filter(name => name !== columnName);\n newColumnOrder.splice(newIndex, 0, columnName);\n\n setColumnOrder(newColumnOrder);\n setMovedColumn(changeMovedColumn ? !!columnName : false);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(newColumnOrder, hiddenColumns);\n }\n\n setTimeout(deleteMovedColumn, 500);\n };\n\n const handleResetColumnChanges = () => setIsResetAll(true);\n const handleCancelResetColumnChanges = () => setIsResetAll(false);\n\n const resetColumnsDetails = (details: TableColumnDetailsMap) => {\n // If explicit defaults were provided, return them to keep shape identical to the baseline.\n if (!isEmpty(defaultColumnDetails)) {\n return defaultColumnDetails;\n }\n\n // Fallback: derive sparse defaults like before\n return mapValues(details, (singleColumnDetails: TableColumnDetails) => {\n if (Number.isFinite(singleColumnDetails.defaultWidth)) {\n const defaultWidth = singleColumnDetails.defaultWidth as number;\n return { ...singleColumnDetails, width: defaultWidth };\n }\n\n const { width: _ignoredWidth, defaultWidth: _ignoredDefaultWidth, ...rest } = singleColumnDetails;\n return rest;\n });\n };\n\n const resetAllColumnChanges = () => {\n const defaultColumnsDetails = resetColumnsDetails(columnsDetails);\n\n setColumnOrder(defaultColumnOrder);\n setHiddenColumns(defaultHiddenColumns);\n setColumnSearchValue('');\n setHasChanged(false);\n setIsResetAll(false);\n\n if (!isEmpty(columnsDetails)) {\n setColumnsDetails(defaultColumnsDetails);\n }\n\n if (immediateChange) {\n onSearchChange('');\n onColumnChange(defaultColumnOrder, defaultHiddenColumns, defaultColumnsDetails);\n }\n };\n\n const discardColumnChanges = () => {\n onSearchChange('');\n // onCancel();\n onDiscard();\n onHide();\n };\n\n const handleManuallyApplyChanges = () => {\n setColumnSearchValue('');\n\n onSearchChange('');\n onColumnChange(columnOrder, hiddenColumns, columnsDetails);\n onApply(columnOrder, hiddenColumns, columnsDetails);\n onHide();\n };\n\n const toggleHideColumn = (column: string) => {\n const isHidden = hiddenColumns.includes(column);\n const newHiddenColumns = isHidden ? hiddenColumns.filter(name => name !== column) : [...hiddenColumns, column];\n\n setHiddenColumns(newHiddenColumns);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(columnOrder, newHiddenColumns);\n }\n };\n\n const handleSearchChange = (searchValue: string) => {\n const newSearch = searchValue.toLowerCase();\n\n setColumnSearchValue(() => {\n onSearchChange(newSearch);\n return newSearch;\n });\n };\n\n const handleColumnWidthChange = (column: keyof TableColumnDetailsMap, value: number) => {\n const previousColumnDetails = columnsDetails[column];\n const updatedColumnDetails = previousColumnDetails\n ? { ...previousColumnDetails, width: value }\n : {\n width: value,\n defaultWidth: DEFAULT_COLUMN_WIDTH,\n maxWidth: MAX_COLUMN_WIDTH,\n };\n const updatedColumnsDetails = { ...columnsDetails, [column]: updatedColumnDetails };\n\n setColumnsDetails(updatedColumnsDetails);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnDetailsChange(column, updatedColumnDetails);\n }\n };\n\n const handleResetColumnWidth = (column: keyof TableColumnDetailsMap) => {\n const previousColumnDetails = columnsDetails[column];\n if (!previousColumnDetails) {\n return;\n }\n\n const updatedColumnDetails = {\n ...previousColumnDetails,\n width: previousColumnDetails.defaultWidth ?? DEFAULT_COLUMN_WIDTH,\n };\n const updatedColumnsDetails = { ...columnsDetails, [column]: updatedColumnDetails };\n\n setColumnsDetails(updatedColumnsDetails);\n\n if (immediateChange) {\n onColumnDetailsChange(column, updatedColumnDetails);\n }\n };\n\n const handleOpenColumnsDetails = (columnName: keyof TableColumnDetailsMap) => {\n const updatedOpenColumnDetails = { ...openColumnsDetails };\n\n if (updatedOpenColumnDetails[columnName]) {\n delete updatedOpenColumnDetails[columnName];\n } else {\n updatedOpenColumnDetails[columnName] = columnName;\n }\n\n setOpenColumnsDetails(updatedOpenColumnDetails);\n };\n\n const handleSortEnd = (event: DragEndEvent, previousOrder: string[]) => {\n const { active, over } = event;\n\n const activeId = active.id;\n const overId = over?.id;\n\n if (activeId === overId) {\n return;\n }\n\n const oldIndex = previousOrder.indexOf(String(activeId));\n const newIndex = previousOrder.indexOf(String(overId));\n\n const newColumnOrder = arrayMove(previousOrder, oldIndex, newIndex);\n\n setColumnOrder(newColumnOrder);\n setMovedColumn(true);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(newColumnOrder, hiddenColumns);\n }\n };\n\n const renderTableSettingsDialogContent = () => {\n const itemProps = {\n columnLabels,\n autoLabel,\n disabledColumns,\n columnOrder,\n hiddenColumns,\n columnSearchValue,\n columnsDetails,\n columnLabelStrings,\n openColumnsDetails,\n updateColumnLabelStrings,\n onMoveColumn: moveColumnToIndex,\n onOpenDetails: handleOpenColumnsDetails,\n onColumnWidthChange: handleColumnWidthChange,\n onResetColumnWidth: handleResetColumnWidth,\n onToggleHideColumn: toggleHideColumn,\n };\n\n const filteredColumns = columnOrder.filter(column =>\n filterColumns(columnSearchValue, column, columnLabelStrings)\n );\n\n const hasItems = !isEqual(filteredColumns, columnOrder);\n\n return (\n <div ref={contentRef}>\n <div className='table-settings-search'>\n <div className='input-group width-100pct'>\n <span className='input-group-addon'>\n <span className='rioglyph rioglyph-search' />\n </span>\n <ClearableInput\n value={columnSearchValue}\n onChange={handleSearchChange}\n placeholder={searchPlaceholder}\n />\n </div>\n </div>\n <div className='table-settings-body'>\n {hasItems ? (\n <TableSettingsListContainer\n items={columnOrder}\n onSortEnd={handleSortEnd}\n itemProps={{ ...itemProps }}\n />\n ) : (\n <div className='text-center text-color-gray'>{notFoundMessage}</div>\n )}\n </div>\n </div>\n );\n };\n\n const renderTableSettingsDialogFooter = () => {\n return (\n <TableSettingsDialogFooter\n hasChanged={hasChanged}\n isResetAll={isResetAll}\n immediateChange={immediateChange}\n resetButtonText={resetButtonText}\n closeButtonText={closeButtonText}\n cancelButtonText={cancelButtonText}\n applyButtonText={applyButtonText}\n onHide={onHide}\n onResetColumnChanges={handleResetColumnChanges}\n onDiscardChanges={discardColumnChanges}\n onApplyChanges={handleManuallyApplyChanges}\n onConfirmResetColumnChanges={resetAllColumnChanges}\n onCancelResetColumnChanges={handleCancelResetColumnChanges}\n />\n );\n };\n\n if (!show) {\n return null;\n }\n\n const dialogClassNames = classNames('TableSettingsDialog', className);\n\n return (\n <Dialog\n show={show}\n title={title}\n subtitle={subtitle}\n onClose={onHide}\n body={renderTableSettingsDialogContent()}\n footer={renderTableSettingsDialogFooter()}\n className={dialogClassNames}\n />\n );\n};\n\nexport default TableSettingsDialog;\n"],"names":["DEFAULT_COLUMN_WIDTH","MAX_COLUMN_WIDTH","TableSettingsDialog","props","show","title","subtitle","className","defaultColumnOrder","defaultHiddenColumns","defaultColumnDetails","extColumnOrder","extHiddenColumns","columnLabels","disabledColumns","extColumnsDetails","autoLabel","applyButtonText","cancelButtonText","closeButtonText","resetButtonText","onColumnChange","noop","onColumnDetailsChange","onDiscard","onApply","onHide","extColumnSearchValue","onSearchChange","searchPlaceholder","notFoundMessage","immediateChange","columnSearchValue","setColumnSearchValue","useState","columnOrder","setColumnOrder","hiddenColumns","setHiddenColumns","columnsDetails","setColumnsDetails","openColumnsDetails","setOpenColumnsDetails","columnLabelStrings","setColumnLabelStrings","updateColumnLabelStrings","setUpdateColumnLabelStrings","hasChanged","setHasChanged","isResetAll","setIsResetAll","movedColumn","setMovedColumn","contentRef","useRef","defaultColumnDetailsRef","previousShowRef","useEffect","getColumnLabelStringsFromDOM","externalColumnOrder","externalHiddenColumns","externalColumnsDetails","hasChangesFromDefaults","isEqual","hasColumnsDetailsChanged","columnsDetailsToCheck","getEffectiveWidth","details","width","defaultWidth","getFallbackDefaultWidth","isEmpty","key","baseline","current","labels","columnStrings","label","dataKey","updatedLabel","deleteMovedColumn","moveColumnToIndex","columnName","newIndex","changeMovedColumn","newColumnOrder","name","handleResetColumnChanges","handleCancelResetColumnChanges","resetColumnsDetails","mapValues","singleColumnDetails","_ignoredWidth","_ignoredDefaultWidth","rest","resetAllColumnChanges","defaultColumnsDetails","discardColumnChanges","handleManuallyApplyChanges","toggleHideColumn","column","newHiddenColumns","handleSearchChange","searchValue","newSearch","handleColumnWidthChange","value","previousColumnDetails","updatedColumnDetails","updatedColumnsDetails","handleResetColumnWidth","handleOpenColumnsDetails","updatedOpenColumnDetails","handleSortEnd","event","previousOrder","active","over","activeId","overId","oldIndex","arrayMove","renderTableSettingsDialogContent","itemProps","filteredColumns","filterColumns","hasItems","jsxs","jsx","ClearableInput","TableSettingsListContainer","renderTableSettingsDialogFooter","TableSettingsDialogFooter","dialogClassNames","classNames","Dialog"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { jsxs as t, jsx as n } from "react/jsx-runtime";
2
- import y from "classnames";
2
+ import y from "../../utils/classNames.js";
3
3
  import e from "../button/Button.js";
4
4
  const R = (l) => {
5
5
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"TableSettingsDialogFooter.js","sources":["../../../src/components/table/TableSettingsDialogFooter.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport classNames from 'classnames';\n\nimport Button from '../../Button';\n\nexport type TableSettingsDialogFooterProps = {\n hasChanged: boolean;\n isResetAll: boolean;\n immediateChange: boolean;\n resetButtonText: string | ReactNode;\n closeButtonText: string | ReactNode;\n cancelButtonText: string | ReactNode;\n applyButtonText: string | ReactNode;\n onHide: () => void;\n onResetColumnChanges: () => void;\n onDiscardChanges: () => void;\n onApplyChanges: () => void;\n onConfirmResetColumnChanges: () => void;\n onCancelResetColumnChanges: () => void;\n};\n\nexport const TableSettingsDialogFooter = (props: TableSettingsDialogFooterProps) => {\n const {\n hasChanged,\n isResetAll,\n immediateChange,\n resetButtonText,\n closeButtonText,\n cancelButtonText,\n applyButtonText,\n onHide,\n onResetColumnChanges,\n onDiscardChanges,\n onApplyChanges,\n onConfirmResetColumnChanges,\n onCancelResetColumnChanges,\n } = props;\n\n const restButtonClassNames = classNames('btn', 'btn-default btn-link', !hasChanged && 'disabled');\n\n return (\n <div className='display-flex justify-content-between'>\n <div>\n {!isResetAll && (\n <div className={restButtonClassNames} onClick={onResetColumnChanges}>\n <span className='rioglyph rioglyph-revert text-size-xs margin-right-10' />\n {resetButtonText}\n </div>\n )}\n {isResetAll && (\n <div className='btn-group'>\n <Button\n iconOnly\n iconName='rioglyph-remove'\n className='margin-right-5 btn-outline'\n onClick={onCancelResetColumnChanges}\n />\n <Button\n iconOnly\n bsStyle={Button.PRIMARY}\n iconName='rioglyph-ok'\n onClick={onConfirmResetColumnChanges}\n />\n </div>\n )}\n </div>\n {immediateChange ? (\n <Button onClick={onHide}>{closeButtonText}</Button>\n ) : (\n <div className='btn-toolbar'>\n <Button onClick={onDiscardChanges}>{cancelButtonText}</Button>\n <Button bsStyle={Button.PRIMARY} onClick={onApplyChanges}>\n {applyButtonText}\n </Button>\n </div>\n )}\n </div>\n );\n};\n"],"names":["TableSettingsDialogFooter","props","hasChanged","isResetAll","immediateChange","resetButtonText","closeButtonText","cancelButtonText","applyButtonText","onHide","onResetColumnChanges","onDiscardChanges","onApplyChanges","onConfirmResetColumnChanges","onCancelResetColumnChanges","restButtonClassNames","classNames","jsxs","jsx","Button"],"mappings":";;;AAqBO,MAAMA,IAA4B,CAACC,MAA0C;AAChF,QAAM;AAAA,IACF,YAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,QAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,6BAAAC;AAAA,IACA,4BAAAC;AAAA,EAAA,IACAb,GAEEc,IAAuBC,EAAW,OAAO,wBAAwB,CAACd,KAAc,UAAU;AAEhG,SACI,gBAAAe,EAAC,OAAA,EAAI,WAAU,wCACX,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EACI,UAAA;AAAA,MAAA,CAACd,KACE,gBAAAc,EAAC,OAAA,EAAI,WAAWF,GAAsB,SAASL,GAC3C,UAAA;AAAA,QAAA,gBAAAQ,EAAC,QAAA,EAAK,WAAU,wDAAA,CAAwD;AAAA,QACvEb;AAAA,MAAA,GACL;AAAA,MAEHF,KACG,gBAAAc,EAAC,OAAA,EAAI,WAAU,aACX,UAAA;AAAA,QAAA,gBAAAC;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,UAAQ;AAAA,YACR,UAAS;AAAA,YACT,WAAU;AAAA,YACV,SAASL;AAAA,UAAA;AAAA,QAAA;AAAA,QAEb,gBAAAI;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,UAAQ;AAAA,YACR,SAASA,EAAO;AAAA,YAChB,UAAS;AAAA,YACT,SAASN;AAAA,UAAA;AAAA,QAAA;AAAA,MACb,EAAA,CACJ;AAAA,IAAA,GAER;AAAA,IACCT,IACG,gBAAAc,EAACC,GAAA,EAAO,SAASV,GAAS,aAAgB,IAE1C,gBAAAQ,EAAC,OAAA,EAAI,WAAU,eACX,UAAA;AAAA,MAAA,gBAAAC,EAACC,GAAA,EAAO,SAASR,GAAmB,UAAAJ,GAAiB;AAAA,wBACpDY,GAAA,EAAO,SAASA,EAAO,SAAS,SAASP,GACrC,UAAAJ,EAAA,CACL;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GAER;AAER;"}
1
+ {"version":3,"file":"TableSettingsDialogFooter.js","sources":["../../../src/components/table/TableSettingsDialogFooter.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport classNames from '../../utils/classNames';\nimport Button from '../../Button';\n\nexport type TableSettingsDialogFooterProps = {\n hasChanged: boolean;\n isResetAll: boolean;\n immediateChange: boolean;\n resetButtonText: string | ReactNode;\n closeButtonText: string | ReactNode;\n cancelButtonText: string | ReactNode;\n applyButtonText: string | ReactNode;\n onHide: () => void;\n onResetColumnChanges: () => void;\n onDiscardChanges: () => void;\n onApplyChanges: () => void;\n onConfirmResetColumnChanges: () => void;\n onCancelResetColumnChanges: () => void;\n};\n\nexport const TableSettingsDialogFooter = (props: TableSettingsDialogFooterProps) => {\n const {\n hasChanged,\n isResetAll,\n immediateChange,\n resetButtonText,\n closeButtonText,\n cancelButtonText,\n applyButtonText,\n onHide,\n onResetColumnChanges,\n onDiscardChanges,\n onApplyChanges,\n onConfirmResetColumnChanges,\n onCancelResetColumnChanges,\n } = props;\n\n const restButtonClassNames = classNames('btn', 'btn-default btn-link', !hasChanged && 'disabled');\n\n return (\n <div className='display-flex justify-content-between'>\n <div>\n {!isResetAll && (\n <div className={restButtonClassNames} onClick={onResetColumnChanges}>\n <span className='rioglyph rioglyph-revert text-size-xs margin-right-10' />\n {resetButtonText}\n </div>\n )}\n {isResetAll && (\n <div className='btn-group'>\n <Button\n iconOnly\n iconName='rioglyph-remove'\n className='margin-right-5 btn-outline'\n onClick={onCancelResetColumnChanges}\n />\n <Button\n iconOnly\n bsStyle={Button.PRIMARY}\n iconName='rioglyph-ok'\n onClick={onConfirmResetColumnChanges}\n />\n </div>\n )}\n </div>\n {immediateChange ? (\n <Button onClick={onHide}>{closeButtonText}</Button>\n ) : (\n <div className='btn-toolbar'>\n <Button onClick={onDiscardChanges}>{cancelButtonText}</Button>\n <Button bsStyle={Button.PRIMARY} onClick={onApplyChanges}>\n {applyButtonText}\n </Button>\n </div>\n )}\n </div>\n );\n};\n"],"names":["TableSettingsDialogFooter","props","hasChanged","isResetAll","immediateChange","resetButtonText","closeButtonText","cancelButtonText","applyButtonText","onHide","onResetColumnChanges","onDiscardChanges","onApplyChanges","onConfirmResetColumnChanges","onCancelResetColumnChanges","restButtonClassNames","classNames","jsxs","jsx","Button"],"mappings":";;;AAqBO,MAAMA,IAA4B,CAACC,MAA0C;AAChF,QAAM;AAAA,IACF,YAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,QAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,6BAAAC;AAAA,IACA,4BAAAC;AAAA,EAAA,IACAb,GAEEc,IAAuBC,EAAW,OAAO,wBAAwB,CAACd,KAAc,UAAU;AAEhG,SACI,gBAAAe,EAAC,OAAA,EAAI,WAAU,wCACX,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EACI,UAAA;AAAA,MAAA,CAACd,KACE,gBAAAc,EAAC,OAAA,EAAI,WAAWF,GAAsB,SAASL,GAC3C,UAAA;AAAA,QAAA,gBAAAQ,EAAC,QAAA,EAAK,WAAU,wDAAA,CAAwD;AAAA,QACvEb;AAAA,MAAA,GACL;AAAA,MAEHF,KACG,gBAAAc,EAAC,OAAA,EAAI,WAAU,aACX,UAAA;AAAA,QAAA,gBAAAC;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,UAAQ;AAAA,YACR,UAAS;AAAA,YACT,WAAU;AAAA,YACV,SAASL;AAAA,UAAA;AAAA,QAAA;AAAA,QAEb,gBAAAI;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,UAAQ;AAAA,YACR,SAASA,EAAO;AAAA,YAChB,UAAS;AAAA,YACT,SAASN;AAAA,UAAA;AAAA,QAAA;AAAA,MACb,EAAA,CACJ;AAAA,IAAA,GAER;AAAA,IACCT,IACG,gBAAAc,EAACC,GAAA,EAAO,SAASV,GAAS,aAAgB,IAE1C,gBAAAQ,EAAC,OAAA,EAAI,WAAU,eACX,UAAA;AAAA,MAAA,gBAAAC,EAACC,GAAA,EAAO,SAASR,GAAmB,UAAAJ,GAAiB;AAAA,wBACpDY,GAAA,EAAO,SAASA,EAAO,SAAS,SAASP,GACrC,UAAAJ,EAAA,CACL;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GAER;AAER;"}
@@ -1,5 +1,5 @@
1
1
  import { DragEndEvent } from '@dnd-kit/core';
2
- import { TableSettingsItemProps } from './TableSettingsDialog.types';
2
+ import { TableSettingsItemProps } from './TableSettingsDialog';
3
3
  export type TableSettingsListContainerProps = {
4
4
  items: string[];
5
5
  itemProps: TableSettingsItemProps;
@@ -1,27 +1,27 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
2
  import { useState as b, useCallback as p } from "react";
3
3
  import { useSensors as C, useSensor as n, PointerSensor as x, KeyboardSensor as D, DndContext as f, closestCenter as h } from "@dnd-kit/core";
4
- import { sortableKeyboardCoordinates as v, SortableContext as u, verticalListSortingStrategy as y } from "@dnd-kit/sortable";
4
+ import { sortableKeyboardCoordinates as u, SortableContext as v, verticalListSortingStrategy as y } from "@dnd-kit/sortable";
5
5
  import { restrictToVerticalAxis as A } from "@dnd-kit/modifiers";
6
6
  import E from "./TableSettingsListItem.js";
7
7
  const j = (i) => {
8
- const { items: o, itemProps: a, onSortEnd: l } = i, [r, s] = b(null), c = C(
8
+ const { items: o, itemProps: a, onSortEnd: l } = i, [r, s] = b(null), m = C(
9
9
  n(x),
10
- n(D, { coordinateGetter: v })
11
- ), m = p((t) => {
10
+ n(D, { coordinateGetter: u })
11
+ ), c = p((t) => {
12
12
  s(t.active.id);
13
13
  }, []), d = (t) => {
14
14
  s(null), l(t, o);
15
15
  }, g = "table-settings-item shadow-smooth-to-bottom z-index-max";
16
- return /* @__PURE__ */ e("div", { className: "table-settings-items-container", children: /* @__PURE__ */ e(
16
+ return /* @__PURE__ */ e("ol", { className: "table-settings-items-container padding-0 margin-0", children: /* @__PURE__ */ e(
17
17
  f,
18
18
  {
19
- sensors: c,
19
+ sensors: m,
20
20
  collisionDetection: h,
21
21
  modifiers: [A],
22
- onDragStart: m,
22
+ onDragStart: c,
23
23
  onDragEnd: d,
24
- children: /* @__PURE__ */ e(u, { items: o, strategy: y, children: o.map((t, S) => /* @__PURE__ */ e(
24
+ children: /* @__PURE__ */ e(v, { items: o, strategy: y, children: o.map((t, S) => /* @__PURE__ */ e(
25
25
  E,
26
26
  {
27
27
  column: t,
@@ -1 +1 @@
1
- {"version":3,"file":"TableSettingsListContainer.js","sources":["../../../src/components/table/TableSettingsListContainer.tsx"],"sourcesContent":["import { useCallback, useState } from 'react';\nimport {\n closestCenter,\n DndContext,\n type DragEndEvent,\n type DragStartEvent,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy } from '@dnd-kit/sortable';\nimport { restrictToVerticalAxis } from '@dnd-kit/modifiers';\nimport type { UniqueIdentifier } from '@dnd-kit/core/dist/types';\n\nimport TableSettingsListItem from './TableSettingsListItem';\nimport type { TableSettingsItemProps } from './TableSettingsDialog.types';\n\nexport type TableSettingsListContainerProps = {\n items: string[];\n itemProps: TableSettingsItemProps;\n onSortEnd: (event: DragEndEvent, previousOrder: string[]) => void;\n};\n\nexport const TableSettingsListContainer = (props: TableSettingsListContainerProps) => {\n const { items, itemProps, onSortEnd } = props;\n\n const [activeDraggedColumn, setActiveDraggedColumn] = useState<UniqueIdentifier | null>(null);\n\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates })\n );\n\n const handleDragStart = useCallback((event: DragStartEvent) => {\n setActiveDraggedColumn(event.active.id);\n }, []);\n\n const handleDragEnd = (event: DragEndEvent) => {\n setActiveDraggedColumn(null);\n onSortEnd(event, items);\n };\n\n const activeClass = 'table-settings-item shadow-smooth-to-bottom z-index-max';\n\n return (\n <div className='table-settings-items-container'>\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n modifiers={[restrictToVerticalAxis]}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n >\n <SortableContext items={items} strategy={verticalListSortingStrategy}>\n {items.map((column, index) => (\n <TableSettingsListItem\n key={column}\n column={column}\n orderIndex={index}\n isActive={activeDraggedColumn === column}\n className={activeDraggedColumn === column ? activeClass : ''}\n {...itemProps}\n />\n ))}\n </SortableContext>\n </DndContext>\n </div>\n );\n};\n"],"names":["TableSettingsListContainer","props","items","itemProps","onSortEnd","activeDraggedColumn","setActiveDraggedColumn","useState","sensors","useSensors","useSensor","PointerSensor","KeyboardSensor","sortableKeyboardCoordinates","handleDragStart","useCallback","event","handleDragEnd","activeClass","jsx","DndContext","closestCenter","restrictToVerticalAxis","SortableContext","verticalListSortingStrategy","column","index","TableSettingsListItem"],"mappings":";;;;;;AAwBO,MAAMA,IAA6B,CAACC,MAA2C;AAClF,QAAM,EAAE,OAAAC,GAAO,WAAAC,GAAW,WAAAC,EAAA,IAAcH,GAElC,CAACI,GAAqBC,CAAsB,IAAIC,EAAkC,IAAI,GAEtFC,IAAUC;AAAA,IACZC,EAAUC,CAAa;AAAA,IACvBD,EAAUE,GAAgB,EAAE,kBAAkBC,GAA6B;AAAA,EAAA,GAGzEC,IAAkBC,EAAY,CAACC,MAA0B;AAC3D,IAAAV,EAAuBU,EAAM,OAAO,EAAE;AAAA,EAC1C,GAAG,CAAA,CAAE,GAECC,IAAgB,CAACD,MAAwB;AAC3C,IAAAV,EAAuB,IAAI,GAC3BF,EAAUY,GAAOd,CAAK;AAAA,EAC1B,GAEMgB,IAAc;AAEpB,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,kCACX,UAAA,gBAAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,SAAAZ;AAAA,MACA,oBAAoBa;AAAA,MACpB,WAAW,CAACC,CAAsB;AAAA,MAClC,aAAaR;AAAA,MACb,WAAWG;AAAA,MAEX,UAAA,gBAAAE,EAACI,KAAgB,OAAArB,GAAc,UAAUsB,GACpC,UAAAtB,EAAM,IAAI,CAACuB,GAAQC,MAChB,gBAAAP;AAAA,QAACQ;AAAA,QAAA;AAAA,UAEG,QAAAF;AAAA,UACA,YAAYC;AAAA,UACZ,UAAUrB,MAAwBoB;AAAA,UAClC,WAAWpB,MAAwBoB,IAASP,IAAc;AAAA,UACzD,GAAGf;AAAA,QAAA;AAAA,QALCsB;AAAA,MAAA,CAOZ,EAAA,CACL;AAAA,IAAA;AAAA,EAAA,GAER;AAER;"}
1
+ {"version":3,"file":"TableSettingsListContainer.js","sources":["../../../src/components/table/TableSettingsListContainer.tsx"],"sourcesContent":["import { useCallback, useState } from 'react';\nimport {\n closestCenter,\n DndContext,\n type DragEndEvent,\n type DragStartEvent,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy } from '@dnd-kit/sortable';\nimport { restrictToVerticalAxis } from '@dnd-kit/modifiers';\nimport type { UniqueIdentifier } from '@dnd-kit/core/dist/types';\n\nimport TableSettingsListItem from './TableSettingsListItem';\nimport type { TableSettingsItemProps } from './TableSettingsDialog';\n\nexport type TableSettingsListContainerProps = {\n items: string[];\n itemProps: TableSettingsItemProps;\n onSortEnd: (event: DragEndEvent, previousOrder: string[]) => void;\n};\n\nexport const TableSettingsListContainer = (props: TableSettingsListContainerProps) => {\n const { items, itemProps, onSortEnd } = props;\n\n const [activeDraggedColumn, setActiveDraggedColumn] = useState<UniqueIdentifier | null>(null);\n\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates })\n );\n\n const handleDragStart = useCallback((event: DragStartEvent) => {\n setActiveDraggedColumn(event.active.id);\n }, []);\n\n const handleDragEnd = (event: DragEndEvent) => {\n setActiveDraggedColumn(null);\n onSortEnd(event, items);\n };\n\n const activeClass = 'table-settings-item shadow-smooth-to-bottom z-index-max';\n\n return (\n <ol className='table-settings-items-container padding-0 margin-0'>\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n modifiers={[restrictToVerticalAxis]}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n >\n <SortableContext items={items} strategy={verticalListSortingStrategy}>\n {items.map((column, index) => (\n <TableSettingsListItem\n key={column}\n column={column}\n orderIndex={index}\n isActive={activeDraggedColumn === column}\n className={activeDraggedColumn === column ? activeClass : ''}\n {...itemProps}\n />\n ))}\n </SortableContext>\n </DndContext>\n </ol>\n );\n};\n"],"names":["TableSettingsListContainer","props","items","itemProps","onSortEnd","activeDraggedColumn","setActiveDraggedColumn","useState","sensors","useSensors","useSensor","PointerSensor","KeyboardSensor","sortableKeyboardCoordinates","handleDragStart","useCallback","event","handleDragEnd","activeClass","jsx","DndContext","closestCenter","restrictToVerticalAxis","SortableContext","verticalListSortingStrategy","column","index","TableSettingsListItem"],"mappings":";;;;;;AAwBO,MAAMA,IAA6B,CAACC,MAA2C;AAClF,QAAM,EAAE,OAAAC,GAAO,WAAAC,GAAW,WAAAC,EAAA,IAAcH,GAElC,CAACI,GAAqBC,CAAsB,IAAIC,EAAkC,IAAI,GAEtFC,IAAUC;AAAA,IACZC,EAAUC,CAAa;AAAA,IACvBD,EAAUE,GAAgB,EAAE,kBAAkBC,GAA6B;AAAA,EAAA,GAGzEC,IAAkBC,EAAY,CAACC,MAA0B;AAC3D,IAAAV,EAAuBU,EAAM,OAAO,EAAE;AAAA,EAC1C,GAAG,CAAA,CAAE,GAECC,IAAgB,CAACD,MAAwB;AAC3C,IAAAV,EAAuB,IAAI,GAC3BF,EAAUY,GAAOd,CAAK;AAAA,EAC1B,GAEMgB,IAAc;AAEpB,SACI,gBAAAC,EAAC,MAAA,EAAG,WAAU,qDACV,UAAA,gBAAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,SAAAZ;AAAA,MACA,oBAAoBa;AAAA,MACpB,WAAW,CAACC,CAAsB;AAAA,MAClC,aAAaR;AAAA,MACb,WAAWG;AAAA,MAEX,UAAA,gBAAAE,EAACI,KAAgB,OAAArB,GAAc,UAAUsB,GACpC,UAAAtB,EAAM,IAAI,CAACuB,GAAQC,MAChB,gBAAAP;AAAA,QAACQ;AAAA,QAAA;AAAA,UAEG,QAAAF;AAAA,UACA,YAAYC;AAAA,UACZ,UAAUrB,MAAwBoB;AAAA,UAClC,WAAWpB,MAAwBoB,IAASP,IAAc;AAAA,UACzD,GAAGf;AAAA,QAAA;AAAA,QALCsB;AAAA,MAAA,CAOZ,EAAA,CACL;AAAA,IAAA;AAAA,EAAA,GAER;AAER;"}
@@ -1,4 +1,4 @@
1
- import { TableSettingsItemProps } from './TableSettingsDialog.types';
1
+ import { TableSettingsItemProps } from './TableSettingsDialog';
2
2
  export declare const filterColumns: (searchValue: string, column: string, columnLabelStrings: Record<string, string>) => boolean;
3
3
  export type TableSettingsListItemProps = TableSettingsItemProps & {
4
4
  column: string;
@@ -1,51 +1,51 @@
1
1
  import { jsxs as d, jsx as t } from "react/jsx-runtime";
2
- import R from "classnames";
3
- import { useSortable as $ } from "@dnd-kit/sortable";
4
- import { CSS as j } from "@dnd-kit/utilities";
5
- import { noop as H, isEmpty as _ } from "es-toolkit/compat";
2
+ import { useSortable as R } from "@dnd-kit/sortable";
3
+ import { CSS as $ } from "@dnd-kit/utilities";
4
+ import { noop as j, isEmpty as H } from "es-toolkit/compat";
5
+ import _ from "../../utils/classNames.js";
6
6
  import B from "../checkbox/Checkbox.js";
7
7
  import E from "../collapse/Collapse.js";
8
8
  import { TableSettingsColumnDetails as F } from "./TableSettingsColumnDetails.js";
9
9
  import { TableSettingsColumnButtons as P } from "./TableSettingsColumnButtons.js";
10
- const U = 1e3, X = (o, e, n) => o ? !(n[e] || "").toLowerCase().includes(o.toLowerCase()) : !1, ee = (o) => {
10
+ const U = 1e3, X = (o, e, l) => o ? !(l[e] || "").toLowerCase().includes(o.toLowerCase()) : !1, ee = (o) => {
11
11
  const {
12
12
  column: e,
13
- orderIndex: n,
14
- columnLabels: l,
13
+ orderIndex: l,
14
+ columnLabels: i,
15
15
  autoLabel: c,
16
16
  disabledColumns: u = [],
17
17
  columnOrder: p,
18
- hiddenColumns: f = [],
18
+ hiddenColumns: b = [],
19
19
  columnSearchValue: a,
20
- columnsDetails: b,
20
+ columnsDetails: f,
21
21
  columnLabelStrings: C = {},
22
22
  openColumnsDetails: r = {},
23
23
  updateColumnLabelStrings: m,
24
- onColumnWidthChange: g,
25
- onResetColumnWidth: h,
24
+ onColumnWidthChange: h,
25
+ onResetColumnWidth: g,
26
26
  onMoveColumn: N,
27
27
  onOpenDetails: S,
28
- onToggleHideColumn: x = H,
28
+ onToggleHideColumn: x = j,
29
29
  isActive: v = !1,
30
30
  className: L
31
- } = o, i = !_(a), { attributes: D, listeners: T, setNodeRef: k, setActivatorNodeRef: w, transform: y, transition: W } = $({
31
+ } = o, n = !H(a), { attributes: D, listeners: T, setNodeRef: k, setActivatorNodeRef: w, transform: y, transition: W } = R({
32
32
  id: e,
33
- disabled: i
33
+ disabled: n
34
34
  }), A = {
35
- transform: j.Transform.toString(y),
35
+ transform: $.Transform.toString(y),
36
36
  transition: W
37
- }, I = X(a, e, C) && !m, M = R(
37
+ }, I = X(a, e, C) && !m, M = _(
38
38
  "table-settings-item",
39
39
  m && "opacity-0",
40
- I && "position-offscreen",
40
+ I && "hidden",
41
41
  L
42
- ), s = b[e];
43
- return /* @__PURE__ */ d("div", { className: M, ref: k, style: A, children: [
42
+ ), s = f[e];
43
+ return /* @__PURE__ */ d("li", { className: M, ref: k, style: A, children: [
44
44
  /* @__PURE__ */ d("div", { className: "table-settings-item-header user-select-none", ref: w, children: [
45
45
  /* @__PURE__ */ t("div", { className: "CheckboxWrapper display-flex align-items-center padding-left-2 margin-top--3", children: /* @__PURE__ */ t(
46
46
  B,
47
47
  {
48
- checked: !f.includes(e),
48
+ checked: !b.includes(e),
49
49
  onClick: (O) => {
50
50
  x(e), O.stopPropagation();
51
51
  },
@@ -55,11 +55,11 @@ const U = 1e3, X = (o, e, n) => o ? !(n[e] || "").toLowerCase().includes(o.toLow
55
55
  /* @__PURE__ */ t(
56
56
  "div",
57
57
  {
58
- className: `table-settings-item-label ${i ? "no-drag" : ""}`,
58
+ className: `table-settings-item-label ${n ? "no-drag" : ""}`,
59
59
  "data-key": e,
60
60
  ...D,
61
61
  ...T,
62
- children: l[e]
62
+ children: i[e]
63
63
  }
64
64
  ),
65
65
  s && /* @__PURE__ */ t("div", { className: "column-width-label", children: s.width ? `${s.width}px` : c }),
@@ -67,11 +67,11 @@ const U = 1e3, X = (o, e, n) => o ? !(n[e] || "").toLowerCase().includes(o.toLow
67
67
  P,
68
68
  {
69
69
  column: e,
70
- index: n,
70
+ index: l,
71
71
  columnDetails: s,
72
72
  columnOrder: p,
73
73
  openColumnsDetails: r,
74
- disabled: i,
74
+ disabled: n,
75
75
  onMoveColumn: N,
76
76
  onOpenDetails: S
77
77
  }
@@ -83,8 +83,8 @@ const U = 1e3, X = (o, e, n) => o ? !(n[e] || "").toLowerCase().includes(o.toLow
83
83
  ...s,
84
84
  column: e,
85
85
  maxColumnWidth: U,
86
- onColumnWidthChange: g,
87
- onResetColumnWidth: h
86
+ onColumnWidthChange: h,
87
+ onResetColumnWidth: g
88
88
  }
89
89
  ) }) })
90
90
  ] }, `table-settings-item-${e}`);
@@ -1 +1 @@
1
- {"version":3,"file":"TableSettingsListItem.js","sources":["../../../src/components/table/TableSettingsListItem.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { isEmpty, noop } from 'es-toolkit/compat';\n\nimport Checkbox from '../checkbox/Checkbox';\nimport Collapse from '../collapse/Collapse';\nimport { TableSettingsColumnDetails } from './TableSettingsColumnDetails';\nimport { TableSettingsColumnButtons } from './TableSettingsColumnButtons';\nimport type { TableSettingsItemProps } from './TableSettingsDialog.types';\n\nconst MAX_COLUMN_WIDTH = 1000;\n\nexport const filterColumns = (searchValue: string, column: string, columnLabelStrings: Record<string, string>) => {\n if (!searchValue) {\n return false;\n }\n const label = columnLabelStrings[column] || '';\n return !label.toLowerCase().includes(searchValue.toLowerCase());\n};\n\nexport type TableSettingsListItemProps = TableSettingsItemProps & {\n column: string;\n orderIndex: number;\n isActive: boolean;\n className?: string;\n};\n\nconst TableSettingsListItem = (props: TableSettingsListItemProps) => {\n const {\n column,\n orderIndex,\n columnLabels,\n autoLabel,\n disabledColumns = [],\n columnOrder,\n hiddenColumns = [],\n columnSearchValue,\n columnsDetails,\n columnLabelStrings = {},\n openColumnsDetails = {},\n updateColumnLabelStrings,\n onColumnWidthChange,\n onResetColumnWidth,\n onMoveColumn,\n onOpenDetails,\n onToggleHideColumn = noop,\n isActive = false,\n className,\n } = props;\n\n const isSortingDisabled = !isEmpty(columnSearchValue);\n\n const { attributes, listeners, setNodeRef, setActivatorNodeRef, transform, transition } = useSortable({\n id: column,\n disabled: isSortingDisabled,\n });\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n };\n\n // Filter out items which don't match the search value.\n // Note that we need to render all items at least once at the beginning in order to get their DOM labels\n // otherwise the search won't work when initial search value is provided via props.\n const isFiltered = filterColumns(columnSearchValue, column, columnLabelStrings) && !updateColumnLabelStrings;\n\n const itemClassNames = classNames(\n 'table-settings-item',\n updateColumnLabelStrings && 'opacity-0',\n isFiltered && 'position-offscreen',\n className\n );\n\n const columnDetails = columnsDetails[column];\n\n return (\n <div className={itemClassNames} key={`table-settings-item-${column}`} ref={setNodeRef} style={style}>\n <div className='table-settings-item-header user-select-none' ref={setActivatorNodeRef}>\n <div className='CheckboxWrapper display-flex align-items-center padding-left-2 margin-top--3'>\n <Checkbox\n checked={!hiddenColumns.includes(column)}\n onClick={event => {\n onToggleHideColumn(column);\n event.stopPropagation();\n }}\n disabled={disabledColumns.includes(column)}\n />\n </div>\n <div\n className={`table-settings-item-label ${isSortingDisabled ? 'no-drag' : ''}`}\n data-key={column}\n {...attributes}\n {...listeners}\n >\n {columnLabels[column]}\n </div>\n {columnDetails && (\n <div className='column-width-label'>\n {columnDetails.width ? `${columnDetails.width}px` : autoLabel}\n </div>\n )}\n <TableSettingsColumnButtons\n column={column}\n index={orderIndex}\n columnDetails={columnDetails}\n columnOrder={columnOrder}\n openColumnsDetails={openColumnsDetails}\n disabled={isSortingDisabled}\n onMoveColumn={onMoveColumn}\n onOpenDetails={onOpenDetails}\n />\n </div>\n {columnDetails && !isActive && (\n <Collapse open={!!openColumnsDetails[column]}>\n <div>\n <TableSettingsColumnDetails\n {...columnDetails}\n column={column}\n maxColumnWidth={MAX_COLUMN_WIDTH}\n onColumnWidthChange={onColumnWidthChange}\n onResetColumnWidth={onResetColumnWidth}\n />\n </div>\n </Collapse>\n )}\n </div>\n );\n};\n\nexport default TableSettingsListItem;\n"],"names":["MAX_COLUMN_WIDTH","filterColumns","searchValue","column","columnLabelStrings","TableSettingsListItem","props","orderIndex","columnLabels","autoLabel","disabledColumns","columnOrder","hiddenColumns","columnSearchValue","columnsDetails","openColumnsDetails","updateColumnLabelStrings","onColumnWidthChange","onResetColumnWidth","onMoveColumn","onOpenDetails","onToggleHideColumn","noop","isActive","className","isSortingDisabled","isEmpty","attributes","listeners","setNodeRef","setActivatorNodeRef","transform","transition","useSortable","style","CSS","isFiltered","itemClassNames","classNames","columnDetails","jsxs","jsx","Checkbox","event","TableSettingsColumnButtons","Collapse","TableSettingsColumnDetails"],"mappings":"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"}
1
+ {"version":3,"file":"TableSettingsListItem.js","sources":["../../../src/components/table/TableSettingsListItem.tsx"],"sourcesContent":["import { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { isEmpty, noop } from 'es-toolkit/compat';\n\nimport classNames from '../../utils/classNames';\nimport Checkbox from '../checkbox/Checkbox';\nimport Collapse from '../collapse/Collapse';\nimport { TableSettingsColumnDetails } from './TableSettingsColumnDetails';\nimport { TableSettingsColumnButtons } from './TableSettingsColumnButtons';\nimport type { TableSettingsItemProps } from './TableSettingsDialog';\n\nconst MAX_COLUMN_WIDTH = 1000;\n\nexport const filterColumns = (searchValue: string, column: string, columnLabelStrings: Record<string, string>) => {\n if (!searchValue) {\n return false;\n }\n const label = columnLabelStrings[column] || '';\n return !label.toLowerCase().includes(searchValue.toLowerCase());\n};\n\nexport type TableSettingsListItemProps = TableSettingsItemProps & {\n column: string;\n orderIndex: number;\n isActive: boolean;\n className?: string;\n};\n\nconst TableSettingsListItem = (props: TableSettingsListItemProps) => {\n const {\n column,\n orderIndex,\n columnLabels,\n autoLabel,\n disabledColumns = [],\n columnOrder,\n hiddenColumns = [],\n columnSearchValue,\n columnsDetails,\n columnLabelStrings = {},\n openColumnsDetails = {},\n updateColumnLabelStrings,\n onColumnWidthChange,\n onResetColumnWidth,\n onMoveColumn,\n onOpenDetails,\n onToggleHideColumn = noop,\n isActive = false,\n className,\n } = props;\n\n const isSortingDisabled = !isEmpty(columnSearchValue);\n\n const { attributes, listeners, setNodeRef, setActivatorNodeRef, transform, transition } = useSortable({\n id: column,\n disabled: isSortingDisabled,\n });\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n };\n\n // Filter out items which don't match the search value.\n // Note that we need to render all items at least once at the beginning in order to get their DOM labels\n // otherwise the search won't work when initial search value is provided via props.\n const isFiltered = filterColumns(columnSearchValue, column, columnLabelStrings) && !updateColumnLabelStrings;\n\n const itemClassNames = classNames(\n 'table-settings-item',\n updateColumnLabelStrings && 'opacity-0',\n isFiltered && 'hidden',\n className\n );\n\n const columnDetails = columnsDetails[column];\n\n return (\n <li className={itemClassNames} key={`table-settings-item-${column}`} ref={setNodeRef} style={style}>\n <div className='table-settings-item-header user-select-none' ref={setActivatorNodeRef}>\n <div className='CheckboxWrapper display-flex align-items-center padding-left-2 margin-top--3'>\n <Checkbox\n checked={!hiddenColumns.includes(column)}\n onClick={event => {\n onToggleHideColumn(column);\n event.stopPropagation();\n }}\n disabled={disabledColumns.includes(column)}\n />\n </div>\n <div\n className={`table-settings-item-label ${isSortingDisabled ? 'no-drag' : ''}`}\n data-key={column}\n {...attributes}\n {...listeners}\n >\n {columnLabels[column]}\n </div>\n {columnDetails && (\n <div className='column-width-label'>\n {columnDetails.width ? `${columnDetails.width}px` : autoLabel}\n </div>\n )}\n <TableSettingsColumnButtons\n column={column}\n index={orderIndex}\n columnDetails={columnDetails}\n columnOrder={columnOrder}\n openColumnsDetails={openColumnsDetails}\n disabled={isSortingDisabled}\n onMoveColumn={onMoveColumn}\n onOpenDetails={onOpenDetails}\n />\n </div>\n {columnDetails && !isActive && (\n <Collapse open={!!openColumnsDetails[column]}>\n <div>\n <TableSettingsColumnDetails\n {...columnDetails}\n column={column}\n maxColumnWidth={MAX_COLUMN_WIDTH}\n onColumnWidthChange={onColumnWidthChange}\n onResetColumnWidth={onResetColumnWidth}\n />\n </div>\n </Collapse>\n )}\n </li>\n );\n};\n\nexport default TableSettingsListItem;\n"],"names":["MAX_COLUMN_WIDTH","filterColumns","searchValue","column","columnLabelStrings","TableSettingsListItem","props","orderIndex","columnLabels","autoLabel","disabledColumns","columnOrder","hiddenColumns","columnSearchValue","columnsDetails","openColumnsDetails","updateColumnLabelStrings","onColumnWidthChange","onResetColumnWidth","onMoveColumn","onOpenDetails","onToggleHideColumn","noop","isActive","className","isSortingDisabled","isEmpty","attributes","listeners","setNodeRef","setActivatorNodeRef","transform","transition","useSortable","style","CSS","isFiltered","itemClassNames","classNames","columnDetails","jsxs","jsx","Checkbox","event","TableSettingsColumnButtons","Collapse","TableSettingsColumnDetails"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as s } from "react/jsx-runtime";
2
- import l from "classnames";
2
+ import l from "../../utils/classNames.js";
3
3
  const e = ({ className: a, children: o }) => /* @__PURE__ */ s("div", { className: l("table-toolbar", a), children: o });
4
4
  export {
5
5
  e as default
@@ -1 +1 @@
1
- {"version":3,"file":"TableToolbar.js","sources":["../../../src/components/table/TableToolbar.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport classNames from 'classnames';\n\nexport type TableToolbarProps = {\n /**\n * Optional class names for the wrapper element.\n */\n className?: string;\n};\n\nconst TableToolbar = ({ className, children }: PropsWithChildren<TableToolbarProps>) => (\n <div className={classNames('table-toolbar', className)}>{children}</div>\n);\n\nexport default TableToolbar;\n"],"names":["TableToolbar","className","children","jsx","classNames"],"mappings":";;AAUA,MAAMA,IAAe,CAAC,EAAE,WAAAC,GAAW,UAAAC,EAAA,MAC/B,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAW,iBAAiBH,CAAS,GAAI,UAAAC,EAAA,CAAS;"}
1
+ {"version":3,"file":"TableToolbar.js","sources":["../../../src/components/table/TableToolbar.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\n\nimport classNames from '../../utils/classNames';\n\nexport type TableToolbarProps = {\n /**\n * Optional class names for the wrapper element.\n */\n className?: string;\n};\n\nconst TableToolbar = ({ className, children }: PropsWithChildren<TableToolbarProps>) => (\n <div className={classNames('table-toolbar', className)}>{children}</div>\n);\n\nexport default TableToolbar;\n"],"names":["TableToolbar","className","children","jsx","classNames"],"mappings":";;AAWA,MAAMA,IAAe,CAAC,EAAE,WAAAC,GAAW,UAAAC,EAAA,MAC/B,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAW,iBAAiBH,CAAS,GAAI,UAAAC,EAAA,CAAS;"}
@@ -1,7 +1,7 @@
1
1
  import { jsxs as E, jsx as t } from "react/jsx-runtime";
2
2
  import { useState as f, useEffect as g } from "react";
3
- import u from "classnames";
4
3
  import { noop as _ } from "es-toolkit/compat";
4
+ import u from "../../utils/classNames.js";
5
5
  import A from "../overlay/OverlayTrigger.js";
6
6
  import I from "../tooltip/Tooltip.js";
7
7
  const L = (i, e) => /* @__PURE__ */ t(
@@ -1 +1 @@
1
- {"version":3,"file":"TableViewToggles.js","sources":["../../../src/components/table/TableViewToggles.tsx"],"sourcesContent":["import { type JSX, type ReactNode, useEffect, useState } from 'react';\nimport classNames from 'classnames';\nimport { noop } from 'es-toolkit/compat';\n\nimport OverlayTrigger from '../overlay/OverlayTrigger';\nimport Tooltip from '../tooltip/Tooltip';\n\n// TODO: add responsive behaviour and trigger a change from table to list for small screen -> see DriverAdministration\n\nconst wrapWithTooltip = (tooltipContent: ReactNode, element: JSX.Element) => (\n <OverlayTrigger\n placement='bottom'\n overlay={\n <Tooltip id='tooltip' allowOnTouch>\n {tooltipContent}\n </Tooltip>\n }\n >\n {element}\n </OverlayTrigger>\n);\n\nconst typeIcons: Record<TableViewTogglesViewType, string> = {\n TABLE: 'rioglyph-table-view',\n SINGLE_CARD: 'rioglyph-th-list',\n MULTI_CARDS: 'rioglyph-split-view',\n};\n\ntype TypeButtonProps = {\n viewType: TableViewTogglesViewType;\n currentViewType: TableViewTogglesViewType;\n disabledViewTypes: TableViewTogglesViewType[];\n tooltipContent: ReactNode;\n onClick: (vt: TableViewTogglesViewType) => void;\n disabled: boolean;\n};\n\nconst TypeButton = (props: TypeButtonProps) => {\n const { viewType, currentViewType, disabledViewTypes, tooltipContent, onClick, disabled } = props;\n\n if (disabledViewTypes.includes(viewType)) {\n return null;\n }\n\n const classes = classNames(\n 'btn btn-default btn-icon-only',\n disabled && 'disabled pointer-events-none',\n viewType === currentViewType && 'active'\n );\n\n const button = (\n <button className={classes} type='button' onClick={() => onClick(viewType)}>\n <span className={`rioglyph ${typeIcons[viewType]}`} />\n </button>\n );\n\n return tooltipContent ? wrapWithTooltip(tooltipContent, button) : button;\n};\n\nexport type TableViewTogglesViewType = 'SINGLE_CARD' | 'MULTI_CARDS' | 'TABLE';\n\nexport type TableViewTogglesProps = {\n /**\n * The current viewType for controlling the TablesViewToggles component.\n *\n * Possible values are:\n *\n * - `'SINGLE_CARD'`\n * - `'MULTI_CARDS'`\n * - `'TABLE'`\n * - `TableViewToggles.VIEW_TYPE_TABLE`\n * - `TableViewToggles.VIEW_TYPE_SINGLE_CARD`\n * - `TableViewToggles.VIEW_TYPE_CARD`\n */\n viewType?: TableViewTogglesViewType;\n\n /**\n * Defines the initial viewType (when viewType is not controlled from the outside).\n *\n * Possible values are:\n *\n * - `'SINGLE_CARD'`\n * - `'MULTI_CARDS'`\n * - `'TABLE'`\n * - `TableViewToggles.VIEW_TYPE_TABLE`\n * - `TableViewToggles.VIEW_TYPE_SINGLE_CARD`\n * - `TableViewToggles.VIEW_TYPE_CARD`\n *\n * @default TableViewToggles.VIEW_TYPE\n */\n initialViewType?: TableViewTogglesViewType;\n\n /**\n * Defines the view types which shall not be supported and are omitted.\n *\n * @default []\n */\n disabledViewTypes?: TableViewTogglesViewType[];\n\n /**\n * Callback function for when the user wants to change the viewType.\n *\n * Receives the new type as an argument.\n *\n * @param viewType The new viewType selected by the user.\n */\n onViewTypeChange: (viewType: TableViewTogglesViewType) => void;\n\n /**\n * Optional tooltip content for table view button.\n */\n tableViewTooltipContent?: string | ReactNode;\n\n /**\n * Optional tooltip content for single card view button.\n */\n singleCardViewTooltipContent?: string | ReactNode;\n\n /**\n * Optional tooltip content for multi card view button.\n */\n multiCardsViewTooltipContent?: string | ReactNode;\n\n /**\n * Disables all buttons.\n *\n * This means the buttons cannot be clicked. Used when disabling toolbar buttons during loading state or when the\n * corresponding table is empty.\n *\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Optional class names for the wrapper element.\n */\n className?: string;\n};\n\nconst TableViewToggles = (props: TableViewTogglesProps) => {\n const {\n viewType,\n initialViewType = 'TABLE',\n disabledViewTypes = [],\n onViewTypeChange = noop,\n tableViewTooltipContent,\n singleCardViewTooltipContent,\n multiCardsViewTooltipContent,\n disabled = false,\n className,\n ...remainingProps\n } = props;\n\n const [internalViewType, setInternalViewType] = useState(initialViewType);\n\n // update internal state when external state changes - controlled component case\n useEffect(() => {\n if (viewType) {\n setInternalViewType(viewType);\n }\n }, [viewType]);\n\n const setViewType = (vt: TableViewTogglesViewType) => {\n setInternalViewType(vt);\n onViewTypeChange(vt);\n };\n\n const wrapperClassNames = classNames(\n 'TableViewToggles',\n 'btn-group',\n 'display-flex',\n 'flex-row',\n className && className\n );\n\n return (\n <div {...remainingProps} className={wrapperClassNames}>\n <TypeButton\n viewType='TABLE'\n currentViewType={internalViewType}\n disabledViewTypes={disabledViewTypes}\n tooltipContent={tableViewTooltipContent}\n onClick={setViewType}\n disabled={disabled}\n />\n\n <TypeButton\n viewType='SINGLE_CARD'\n currentViewType={internalViewType}\n disabledViewTypes={disabledViewTypes}\n tooltipContent={singleCardViewTooltipContent}\n onClick={setViewType}\n disabled={disabled}\n />\n\n <TypeButton\n viewType='MULTI_CARDS'\n currentViewType={internalViewType}\n disabledViewTypes={disabledViewTypes}\n tooltipContent={multiCardsViewTooltipContent}\n onClick={setViewType}\n disabled={disabled}\n />\n </div>\n );\n};\n\n// Don't export values as string but as a distinct union type\nTableViewToggles.VIEW_TYPE_TABLE = 'TABLE' as TableViewTogglesViewType;\nTableViewToggles.VIEW_TYPE_SINGLE_CARD = 'SINGLE_CARD' as TableViewTogglesViewType;\nTableViewToggles.VIEW_TYPE_MULTI_CARDS = 'MULTI_CARDS' as TableViewTogglesViewType;\n\nexport default TableViewToggles;\n"],"names":["wrapWithTooltip","tooltipContent","element","jsx","OverlayTrigger","Tooltip","typeIcons","TypeButton","props","viewType","currentViewType","disabledViewTypes","onClick","disabled","classes","classNames","button","TableViewToggles","initialViewType","onViewTypeChange","noop","tableViewTooltipContent","singleCardViewTooltipContent","multiCardsViewTooltipContent","className","remainingProps","internalViewType","setInternalViewType","useState","useEffect","setViewType","vt","wrapperClassNames","jsxs"],"mappings":";;;;;;AASA,MAAMA,IAAkB,CAACC,GAA2BC,MAChD,gBAAAC;AAAA,EAACC;AAAA,EAAA;AAAA,IACG,WAAU;AAAA,IACV,SACI,gBAAAD,EAACE,GAAA,EAAQ,IAAG,WAAU,cAAY,IAC7B,UAAAJ,GACL;AAAA,IAGH,UAAAC;AAAA,EAAA;AACL,GAGEI,IAAsD;AAAA,EACxD,OAAO;AAAA,EACP,aAAa;AAAA,EACb,aAAa;AACjB,GAWMC,IAAa,CAACC,MAA2B;AAC3C,QAAM,EAAE,UAAAC,GAAU,iBAAAC,GAAiB,mBAAAC,GAAmB,gBAAAV,GAAgB,SAAAW,GAAS,UAAAC,MAAaL;AAE5F,MAAIG,EAAkB,SAASF,CAAQ;AACnC,WAAO;AAGX,QAAMK,IAAUC;AAAA,IACZ;AAAA,IACAF,KAAY;AAAA,IACZJ,MAAaC,KAAmB;AAAA,EAAA,GAG9BM,sBACD,UAAA,EAAO,WAAWF,GAAS,MAAK,UAAS,SAAS,MAAMF,EAAQH,CAAQ,GACrE,UAAA,gBAAAN,EAAC,UAAK,WAAW,YAAYG,EAAUG,CAAQ,CAAC,IAAI,EAAA,CACxD;AAGJ,SAAOR,IAAiBD,EAAgBC,GAAgBe,CAAM,IAAIA;AACtE,GAkFMC,IAAmB,CAACT,MAAiC;AACvD,QAAM;AAAA,IACF,UAAAC;AAAA,IACA,iBAAAS,IAAkB;AAAA,IAClB,mBAAAP,IAAoB,CAAA;AAAA,IACpB,kBAAAQ,IAAmBC;AAAA,IACnB,yBAAAC;AAAA,IACA,8BAAAC;AAAA,IACA,8BAAAC;AAAA,IACA,UAAAV,IAAW;AAAA,IACX,WAAAW;AAAA,IACA,GAAGC;AAAA,EAAA,IACHjB,GAEE,CAACkB,GAAkBC,CAAmB,IAAIC,EAASV,CAAe;AAGxE,EAAAW,EAAU,MAAM;AACZ,IAAIpB,KACAkB,EAAoBlB,CAAQ;AAAA,EAEpC,GAAG,CAACA,CAAQ,CAAC;AAEb,QAAMqB,IAAc,CAACC,MAAiC;AAClD,IAAAJ,EAAoBI,CAAE,GACtBZ,EAAiBY,CAAE;AAAA,EACvB,GAEMC,IAAoBjB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACAS,KAAaA;AAAA,EAAA;AAGjB,SACI,gBAAAS,EAAC,OAAA,EAAK,GAAGR,GAAgB,WAAWO,GAChC,UAAA;AAAA,IAAA,gBAAA7B;AAAA,MAACI;AAAA,MAAA;AAAA,QACG,UAAS;AAAA,QACT,iBAAiBmB;AAAA,QACjB,mBAAAf;AAAA,QACA,gBAAgBU;AAAA,QAChB,SAASS;AAAA,QACT,UAAAjB;AAAA,MAAA;AAAA,IAAA;AAAA,IAGJ,gBAAAV;AAAA,MAACI;AAAA,MAAA;AAAA,QACG,UAAS;AAAA,QACT,iBAAiBmB;AAAA,QACjB,mBAAAf;AAAA,QACA,gBAAgBW;AAAA,QAChB,SAASQ;AAAA,QACT,UAAAjB;AAAA,MAAA;AAAA,IAAA;AAAA,IAGJ,gBAAAV;AAAA,MAACI;AAAA,MAAA;AAAA,QACG,UAAS;AAAA,QACT,iBAAiBmB;AAAA,QACjB,mBAAAf;AAAA,QACA,gBAAgBY;AAAA,QAChB,SAASO;AAAA,QACT,UAAAjB;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAER;AAGAI,EAAiB,kBAAkB;AACnCA,EAAiB,wBAAwB;AACzCA,EAAiB,wBAAwB;"}
1
+ {"version":3,"file":"TableViewToggles.js","sources":["../../../src/components/table/TableViewToggles.tsx"],"sourcesContent":["import { type JSX, type ReactNode, useEffect, useState } from 'react';\nimport { noop } from 'es-toolkit/compat';\n\nimport classNames from '../../utils/classNames';\nimport OverlayTrigger from '../overlay/OverlayTrigger';\nimport Tooltip from '../tooltip/Tooltip';\n\n// TODO: add responsive behaviour and trigger a change from table to list for small screen -> see DriverAdministration\n\nconst wrapWithTooltip = (tooltipContent: ReactNode, element: JSX.Element) => (\n <OverlayTrigger\n placement='bottom'\n overlay={\n <Tooltip id='tooltip' allowOnTouch>\n {tooltipContent}\n </Tooltip>\n }\n >\n {element}\n </OverlayTrigger>\n);\n\nconst typeIcons: Record<TableViewTogglesViewType, string> = {\n TABLE: 'rioglyph-table-view',\n SINGLE_CARD: 'rioglyph-th-list',\n MULTI_CARDS: 'rioglyph-split-view',\n};\n\ntype TypeButtonProps = {\n viewType: TableViewTogglesViewType;\n currentViewType: TableViewTogglesViewType;\n disabledViewTypes: TableViewTogglesViewType[];\n tooltipContent: ReactNode;\n onClick: (vt: TableViewTogglesViewType) => void;\n disabled: boolean;\n};\n\nconst TypeButton = (props: TypeButtonProps) => {\n const { viewType, currentViewType, disabledViewTypes, tooltipContent, onClick, disabled } = props;\n\n if (disabledViewTypes.includes(viewType)) {\n return null;\n }\n\n const classes = classNames(\n 'btn btn-default btn-icon-only',\n disabled && 'disabled pointer-events-none',\n viewType === currentViewType && 'active'\n );\n\n const button = (\n <button className={classes} type='button' onClick={() => onClick(viewType)}>\n <span className={`rioglyph ${typeIcons[viewType]}`} />\n </button>\n );\n\n return tooltipContent ? wrapWithTooltip(tooltipContent, button) : button;\n};\n\nexport type TableViewTogglesViewType = 'SINGLE_CARD' | 'MULTI_CARDS' | 'TABLE';\n\nexport type TableViewTogglesProps = {\n /**\n * The current viewType for controlling the TablesViewToggles component.\n *\n * Possible values are:\n *\n * - `'SINGLE_CARD'`\n * - `'MULTI_CARDS'`\n * - `'TABLE'`\n * - `TableViewToggles.VIEW_TYPE_TABLE`\n * - `TableViewToggles.VIEW_TYPE_SINGLE_CARD`\n * - `TableViewToggles.VIEW_TYPE_CARD`\n */\n viewType?: TableViewTogglesViewType;\n\n /**\n * Defines the initial viewType (when viewType is not controlled from the outside).\n *\n * Possible values are:\n *\n * - `'SINGLE_CARD'`\n * - `'MULTI_CARDS'`\n * - `'TABLE'`\n * - `TableViewToggles.VIEW_TYPE_TABLE`\n * - `TableViewToggles.VIEW_TYPE_SINGLE_CARD`\n * - `TableViewToggles.VIEW_TYPE_CARD`\n *\n * @default TableViewToggles.VIEW_TYPE\n */\n initialViewType?: TableViewTogglesViewType;\n\n /**\n * Defines the view types which shall not be supported and are omitted.\n *\n * @default []\n */\n disabledViewTypes?: TableViewTogglesViewType[];\n\n /**\n * Callback function for when the user wants to change the viewType.\n *\n * Receives the new type as an argument.\n *\n * @param viewType The new viewType selected by the user.\n */\n onViewTypeChange: (viewType: TableViewTogglesViewType) => void;\n\n /**\n * Optional tooltip content for table view button.\n */\n tableViewTooltipContent?: string | ReactNode;\n\n /**\n * Optional tooltip content for single card view button.\n */\n singleCardViewTooltipContent?: string | ReactNode;\n\n /**\n * Optional tooltip content for multi card view button.\n */\n multiCardsViewTooltipContent?: string | ReactNode;\n\n /**\n * Disables all buttons.\n *\n * This means the buttons cannot be clicked. Used when disabling toolbar buttons during loading state or when the\n * corresponding table is empty.\n *\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Optional class names for the wrapper element.\n */\n className?: string;\n};\n\nconst TableViewToggles = (props: TableViewTogglesProps) => {\n const {\n viewType,\n initialViewType = 'TABLE',\n disabledViewTypes = [],\n onViewTypeChange = noop,\n tableViewTooltipContent,\n singleCardViewTooltipContent,\n multiCardsViewTooltipContent,\n disabled = false,\n className,\n ...remainingProps\n } = props;\n\n const [internalViewType, setInternalViewType] = useState(initialViewType);\n\n // update internal state when external state changes - controlled component case\n useEffect(() => {\n if (viewType) {\n setInternalViewType(viewType);\n }\n }, [viewType]);\n\n const setViewType = (vt: TableViewTogglesViewType) => {\n setInternalViewType(vt);\n onViewTypeChange(vt);\n };\n\n const wrapperClassNames = classNames(\n 'TableViewToggles',\n 'btn-group',\n 'display-flex',\n 'flex-row',\n className && className\n );\n\n return (\n <div {...remainingProps} className={wrapperClassNames}>\n <TypeButton\n viewType='TABLE'\n currentViewType={internalViewType}\n disabledViewTypes={disabledViewTypes}\n tooltipContent={tableViewTooltipContent}\n onClick={setViewType}\n disabled={disabled}\n />\n\n <TypeButton\n viewType='SINGLE_CARD'\n currentViewType={internalViewType}\n disabledViewTypes={disabledViewTypes}\n tooltipContent={singleCardViewTooltipContent}\n onClick={setViewType}\n disabled={disabled}\n />\n\n <TypeButton\n viewType='MULTI_CARDS'\n currentViewType={internalViewType}\n disabledViewTypes={disabledViewTypes}\n tooltipContent={multiCardsViewTooltipContent}\n onClick={setViewType}\n disabled={disabled}\n />\n </div>\n );\n};\n\n// Don't export values as string but as a distinct union type\nTableViewToggles.VIEW_TYPE_TABLE = 'TABLE' as TableViewTogglesViewType;\nTableViewToggles.VIEW_TYPE_SINGLE_CARD = 'SINGLE_CARD' as TableViewTogglesViewType;\nTableViewToggles.VIEW_TYPE_MULTI_CARDS = 'MULTI_CARDS' as TableViewTogglesViewType;\n\nexport default TableViewToggles;\n"],"names":["wrapWithTooltip","tooltipContent","element","jsx","OverlayTrigger","Tooltip","typeIcons","TypeButton","props","viewType","currentViewType","disabledViewTypes","onClick","disabled","classes","classNames","button","TableViewToggles","initialViewType","onViewTypeChange","noop","tableViewTooltipContent","singleCardViewTooltipContent","multiCardsViewTooltipContent","className","remainingProps","internalViewType","setInternalViewType","useState","useEffect","setViewType","vt","wrapperClassNames","jsxs"],"mappings":";;;;;;AASA,MAAMA,IAAkB,CAACC,GAA2BC,MAChD,gBAAAC;AAAA,EAACC;AAAA,EAAA;AAAA,IACG,WAAU;AAAA,IACV,SACI,gBAAAD,EAACE,GAAA,EAAQ,IAAG,WAAU,cAAY,IAC7B,UAAAJ,GACL;AAAA,IAGH,UAAAC;AAAA,EAAA;AACL,GAGEI,IAAsD;AAAA,EACxD,OAAO;AAAA,EACP,aAAa;AAAA,EACb,aAAa;AACjB,GAWMC,IAAa,CAACC,MAA2B;AAC3C,QAAM,EAAE,UAAAC,GAAU,iBAAAC,GAAiB,mBAAAC,GAAmB,gBAAAV,GAAgB,SAAAW,GAAS,UAAAC,MAAaL;AAE5F,MAAIG,EAAkB,SAASF,CAAQ;AACnC,WAAO;AAGX,QAAMK,IAAUC;AAAA,IACZ;AAAA,IACAF,KAAY;AAAA,IACZJ,MAAaC,KAAmB;AAAA,EAAA,GAG9BM,sBACD,UAAA,EAAO,WAAWF,GAAS,MAAK,UAAS,SAAS,MAAMF,EAAQH,CAAQ,GACrE,UAAA,gBAAAN,EAAC,UAAK,WAAW,YAAYG,EAAUG,CAAQ,CAAC,IAAI,EAAA,CACxD;AAGJ,SAAOR,IAAiBD,EAAgBC,GAAgBe,CAAM,IAAIA;AACtE,GAkFMC,IAAmB,CAACT,MAAiC;AACvD,QAAM;AAAA,IACF,UAAAC;AAAA,IACA,iBAAAS,IAAkB;AAAA,IAClB,mBAAAP,IAAoB,CAAA;AAAA,IACpB,kBAAAQ,IAAmBC;AAAA,IACnB,yBAAAC;AAAA,IACA,8BAAAC;AAAA,IACA,8BAAAC;AAAA,IACA,UAAAV,IAAW;AAAA,IACX,WAAAW;AAAA,IACA,GAAGC;AAAA,EAAA,IACHjB,GAEE,CAACkB,GAAkBC,CAAmB,IAAIC,EAASV,CAAe;AAGxE,EAAAW,EAAU,MAAM;AACZ,IAAIpB,KACAkB,EAAoBlB,CAAQ;AAAA,EAEpC,GAAG,CAACA,CAAQ,CAAC;AAEb,QAAMqB,IAAc,CAACC,MAAiC;AAClD,IAAAJ,EAAoBI,CAAE,GACtBZ,EAAiBY,CAAE;AAAA,EACvB,GAEMC,IAAoBjB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACAS,KAAaA;AAAA,EAAA;AAGjB,SACI,gBAAAS,EAAC,OAAA,EAAK,GAAGR,GAAgB,WAAWO,GAChC,UAAA;AAAA,IAAA,gBAAA7B;AAAA,MAACI;AAAA,MAAA;AAAA,QACG,UAAS;AAAA,QACT,iBAAiBmB;AAAA,QACjB,mBAAAf;AAAA,QACA,gBAAgBU;AAAA,QAChB,SAASS;AAAA,QACT,UAAAjB;AAAA,MAAA;AAAA,IAAA;AAAA,IAGJ,gBAAAV;AAAA,MAACI;AAAA,MAAA;AAAA,QACG,UAAS;AAAA,QACT,iBAAiBmB;AAAA,QACjB,mBAAAf;AAAA,QACA,gBAAgBW;AAAA,QAChB,SAASQ;AAAA,QACT,UAAAjB;AAAA,MAAA;AAAA,IAAA;AAAA,IAGJ,gBAAAV;AAAA,MAACI;AAAA,MAAA;AAAA,QACG,UAAS;AAAA,QACT,iBAAiBmB;AAAA,QACjB,mBAAAf;AAAA,QACA,gBAAgBY;AAAA,QAChB,SAASO;AAAA,QACT,UAAAjB;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAER;AAGAI,EAAiB,kBAAkB;AACnCA,EAAiB,wBAAwB;AACzCA,EAAiB,wBAAwB;"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as l } from "react/jsx-runtime";
2
2
  import { forwardRef as y } from "react";
3
- import k from "classnames";
3
+ import k from "../../utils/classNames.js";
4
4
  const j = y((a, i) => {
5
5
  const {
6
6
  children: r,
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sources":["../../../src/components/tag/Tag.tsx"],"sourcesContent":["import React, { forwardRef, type PropsWithChildren } from 'react';\nimport classNames from 'classnames';\n\nexport type TagProps = {\n /**\n * Defines if the tag is active.\n *\n * @default false\n */\n active?: boolean;\n\n /**\n * Defines if the tag is clickable.\n *\n * @default false\n */\n clickable?: boolean;\n\n /**\n * Defines if the tag is deletable.\n *\n * @default false\n */\n deletable?: boolean;\n\n /**\n * Defines if the tag is revertable.\n *\n * @default false\n */\n revertable?: boolean;\n\n /**\n * Defines if the tag is disabled.\n *\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Define any rioglyph icon like \"rioglyph-truck\".\n */\n icon?: string;\n\n /**\n * Sets a more subtle style for border and background.\n *\n * @default false\n */\n muted?: boolean;\n\n /**\n * Defines if the tag is round.\n *\n * @default true\n */\n round?: boolean;\n\n /**\n * Defines if the tag is selectable.\n *\n * @default false\n */\n selectable?: boolean;\n\n /**\n * Defines if you want to render the tag in a different size.\n *\n * Possible values are: `'small'` and `'medium'`\n */\n size?: 'small' | 'medium';\n\n /**\n * Allows to render text on multiple lines.\n *\n * @default false\n */\n multiline?: boolean;\n\n /**\n * Additional classes to be set on the wrapper element.\n */\n className?: string;\n\n [remainingProp: string]: unknown;\n};\n\nconst Tag = forwardRef((props: PropsWithChildren<TagProps>, ref: React.Ref<HTMLDivElement>) => {\n const {\n children,\n icon,\n active = false,\n disabled = false,\n clickable = false,\n selectable = false,\n deletable = false,\n revertable = false,\n multiline = false,\n muted = false,\n round = true,\n size,\n className,\n ...remainingProps\n } = props;\n\n const tagClasses = classNames(\n 'tag',\n size === 'small' && 'tag-small',\n icon && `rioglyph ${icon}`,\n active && 'active clickable rioglyph rioglyph-ok',\n disabled && 'disabled',\n clickable && 'clickable',\n selectable && 'selectable clickable rioglyph rioglyph-checkbox',\n deletable && 'deletable clickable rioglyph rioglyph-remove',\n revertable && 'revertable clickable rioglyph rioglyph-revert',\n multiline && 'multiline',\n muted && 'tag-muted',\n !round && 'rounded',\n className\n );\n\n return (\n <div ref={ref} {...remainingProps} className={tagClasses}>\n <div className='tag-inner'>{children}</div>\n </div>\n );\n});\n\nexport default Tag;\n"],"names":["Tag","forwardRef","props","ref","children","icon","active","disabled","clickable","selectable","deletable","revertable","multiline","muted","round","size","className","remainingProps","tagClasses","classNames","jsx"],"mappings":";;;AAuFA,MAAMA,IAAMC,EAAW,CAACC,GAAoCC,MAAmC;AAC3F,QAAM;AAAA,IACF,UAAAC;AAAA,IACA,MAAAC;AAAA,IACA,QAAAC,IAAS;AAAA,IACT,UAAAC,IAAW;AAAA,IACX,WAAAC,IAAY;AAAA,IACZ,YAAAC,IAAa;AAAA,IACb,WAAAC,IAAY;AAAA,IACZ,YAAAC,IAAa;AAAA,IACb,WAAAC,IAAY;AAAA,IACZ,OAAAC,IAAQ;AAAA,IACR,OAAAC,IAAQ;AAAA,IACR,MAAAC;AAAA,IACA,WAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACHf,GAEEgB,IAAaC;AAAA,IACf;AAAA,IACAJ,MAAS,WAAW;AAAA,IACpBV,KAAQ,YAAYA,CAAI;AAAA,IACxBC,KAAU;AAAA,IACVC,KAAY;AAAA,IACZC,KAAa;AAAA,IACbC,KAAc;AAAA,IACdC,KAAa;AAAA,IACbC,KAAc;AAAA,IACdC,KAAa;AAAA,IACbC,KAAS;AAAA,IACT,CAACC,KAAS;AAAA,IACVE;AAAA,EAAA;AAGJ,SACI,gBAAAI,EAAC,OAAA,EAAI,KAAAjB,GAAW,GAAGc,GAAgB,WAAWC,GAC1C,UAAA,gBAAAE,EAAC,OAAA,EAAI,WAAU,aAAa,UAAAhB,EAAA,CAAS,GACzC;AAER,CAAC;"}
1
+ {"version":3,"file":"Tag.js","sources":["../../../src/components/tag/Tag.tsx"],"sourcesContent":["import React, { forwardRef, type PropsWithChildren } from 'react';\n\nimport classNames from '../../utils/classNames';\n\nexport type TagProps = {\n /**\n * Defines if the tag is active.\n *\n * @default false\n */\n active?: boolean;\n\n /**\n * Defines if the tag is clickable.\n *\n * @default false\n */\n clickable?: boolean;\n\n /**\n * Defines if the tag is deletable.\n *\n * @default false\n */\n deletable?: boolean;\n\n /**\n * Defines if the tag is revertable.\n *\n * @default false\n */\n revertable?: boolean;\n\n /**\n * Defines if the tag is disabled.\n *\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Define any rioglyph icon like \"rioglyph-truck\".\n */\n icon?: string;\n\n /**\n * Sets a more subtle style for border and background.\n *\n * @default false\n */\n muted?: boolean;\n\n /**\n * Defines if the tag is round.\n *\n * @default true\n */\n round?: boolean;\n\n /**\n * Defines if the tag is selectable.\n *\n * @default false\n */\n selectable?: boolean;\n\n /**\n * Defines if you want to render the tag in a different size.\n *\n * Possible values are: `'small'` and `'medium'`\n */\n size?: 'small' | 'medium';\n\n /**\n * Allows to render text on multiple lines.\n *\n * @default false\n */\n multiline?: boolean;\n\n /**\n * Additional classes to be set on the wrapper element.\n */\n className?: string;\n\n [remainingProp: string]: unknown;\n};\n\nconst Tag = forwardRef((props: PropsWithChildren<TagProps>, ref: React.Ref<HTMLDivElement>) => {\n const {\n children,\n icon,\n active = false,\n disabled = false,\n clickable = false,\n selectable = false,\n deletable = false,\n revertable = false,\n multiline = false,\n muted = false,\n round = true,\n size,\n className,\n ...remainingProps\n } = props;\n\n const tagClasses = classNames(\n 'tag',\n size === 'small' && 'tag-small',\n icon && `rioglyph ${icon}`,\n active && 'active clickable rioglyph rioglyph-ok',\n disabled && 'disabled',\n clickable && 'clickable',\n selectable && 'selectable clickable rioglyph rioglyph-checkbox',\n deletable && 'deletable clickable rioglyph rioglyph-remove',\n revertable && 'revertable clickable rioglyph rioglyph-revert',\n multiline && 'multiline',\n muted && 'tag-muted',\n !round && 'rounded',\n className\n );\n\n return (\n <div ref={ref} {...remainingProps} className={tagClasses}>\n <div className='tag-inner'>{children}</div>\n </div>\n );\n});\n\nexport default Tag;\n"],"names":["Tag","forwardRef","props","ref","children","icon","active","disabled","clickable","selectable","deletable","revertable","multiline","muted","round","size","className","remainingProps","tagClasses","classNames","jsx"],"mappings":";;;AAwFA,MAAMA,IAAMC,EAAW,CAACC,GAAoCC,MAAmC;AAC3F,QAAM;AAAA,IACF,UAAAC;AAAA,IACA,MAAAC;AAAA,IACA,QAAAC,IAAS;AAAA,IACT,UAAAC,IAAW;AAAA,IACX,WAAAC,IAAY;AAAA,IACZ,YAAAC,IAAa;AAAA,IACb,WAAAC,IAAY;AAAA,IACZ,YAAAC,IAAa;AAAA,IACb,WAAAC,IAAY;AAAA,IACZ,OAAAC,IAAQ;AAAA,IACR,OAAAC,IAAQ;AAAA,IACR,MAAAC;AAAA,IACA,WAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACHf,GAEEgB,IAAaC;AAAA,IACf;AAAA,IACAJ,MAAS,WAAW;AAAA,IACpBV,KAAQ,YAAYA,CAAI;AAAA,IACxBC,KAAU;AAAA,IACVC,KAAY;AAAA,IACZC,KAAa;AAAA,IACbC,KAAc;AAAA,IACdC,KAAa;AAAA,IACbC,KAAc;AAAA,IACdC,KAAa;AAAA,IACbC,KAAS;AAAA,IACT,CAACC,KAAS;AAAA,IACVE;AAAA,EAAA;AAGJ,SACI,gBAAAI,EAAC,OAAA,EAAI,KAAAjB,GAAW,GAAGc,GAAgB,WAAWC,GAC1C,UAAA,gBAAAE,EAAC,OAAA,EAAI,WAAU,aAAa,UAAAhB,EAAA,CAAS,GACzC;AAER,CAAC;"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
- import c from "classnames";
2
+ import c from "../../utils/classNames.js";
3
3
  const g = (a) => {
4
4
  const { children: t, inline: i = !0, autoTagWidth: r = !1, tagsPerRow: s, ...l } = a, o = c(
5
5
  "taglist",
@@ -1 +1 @@
1
- {"version":3,"file":"TagList.js","sources":["../../../src/components/tag/TagList.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport classNames from 'classnames';\n\nexport type TagListProps = {\n /**\n * Defines if the tag list is rendered inline or vertically.\n *\n * @default true\n */\n inline?: boolean;\n\n /**\n * Defines if the tag has the same with as it`s parent container.\n *\n * @default false\n */\n autoTagWidth?: boolean;\n\n /**\n * Possible values are 1-6\n */\n tagsPerRow?: 1 | 2 | 3 | 4 | 6;\n\n /**\n * Additional classes to be set on the wrapper element.\n */\n className?: string;\n};\n\nconst TagList = (props: PropsWithChildren<TagListProps>) => {\n const { children, inline = true, autoTagWidth = false, tagsPerRow, ...remainingProps } = props;\n\n const tagListClasses = classNames(\n 'taglist',\n !autoTagWidth && 'taglist-autowidth',\n !inline && 'taglist-vertical',\n tagsPerRow && 'row display-flex-sm flex-wrap-sm',\n props.className\n );\n\n const wrappedChildren = <div className={`tags-per-row-${tagsPerRow}`}>{children}</div>;\n\n return (\n <div {...remainingProps} className={tagListClasses}>\n {tagsPerRow ? wrappedChildren : children}\n </div>\n );\n};\n\nexport default TagList;\n"],"names":["TagList","props","children","inline","autoTagWidth","tagsPerRow","remainingProps","tagListClasses","classNames","wrappedChildren","jsx"],"mappings":";;AA6BA,MAAMA,IAAU,CAACC,MAA2C;AACxD,QAAM,EAAE,UAAAC,GAAU,QAAAC,IAAS,IAAM,cAAAC,IAAe,IAAO,YAAAC,GAAY,GAAGC,EAAA,IAAmBL,GAEnFM,IAAiBC;AAAA,IACnB;AAAA,IACA,CAACJ,KAAgB;AAAA,IACjB,CAACD,KAAU;AAAA,IACXE,KAAc;AAAA,IACdJ,EAAM;AAAA,EAAA,GAGJQ,IAAkB,gBAAAC,EAAC,OAAA,EAAI,WAAW,gBAAgBL,CAAU,IAAK,UAAAH,GAAS;AAEhF,SACI,gBAAAQ,EAAC,SAAK,GAAGJ,GAAgB,WAAWC,GAC/B,UAAAF,IAAaI,IAAkBP,EAAA,CACpC;AAER;"}
1
+ {"version":3,"file":"TagList.js","sources":["../../../src/components/tag/TagList.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\n\nimport classNames from '../../utils/classNames';\n\nexport type TagListProps = {\n /**\n * Defines if the tag list is rendered inline or vertically.\n *\n * @default true\n */\n inline?: boolean;\n\n /**\n * Defines if the tag has the same with as it`s parent container.\n *\n * @default false\n */\n autoTagWidth?: boolean;\n\n /**\n * Possible values are 1-6\n */\n tagsPerRow?: 1 | 2 | 3 | 4 | 6;\n\n /**\n * Additional classes to be set on the wrapper element.\n */\n className?: string;\n};\n\nconst TagList = (props: PropsWithChildren<TagListProps>) => {\n const { children, inline = true, autoTagWidth = false, tagsPerRow, ...remainingProps } = props;\n\n const tagListClasses = classNames(\n 'taglist',\n !autoTagWidth && 'taglist-autowidth',\n !inline && 'taglist-vertical',\n tagsPerRow && 'row display-flex-sm flex-wrap-sm',\n props.className\n );\n\n const wrappedChildren = <div className={`tags-per-row-${tagsPerRow}`}>{children}</div>;\n\n return (\n <div {...remainingProps} className={tagListClasses}>\n {tagsPerRow ? wrappedChildren : children}\n </div>\n );\n};\n\nexport default TagList;\n"],"names":["TagList","props","children","inline","autoTagWidth","tagsPerRow","remainingProps","tagListClasses","classNames","wrappedChildren","jsx"],"mappings":";;AA8BA,MAAMA,IAAU,CAACC,MAA2C;AACxD,QAAM,EAAE,UAAAC,GAAU,QAAAC,IAAS,IAAM,cAAAC,IAAe,IAAO,YAAAC,GAAY,GAAGC,EAAA,IAAmBL,GAEnFM,IAAiBC;AAAA,IACnB;AAAA,IACA,CAACJ,KAAgB;AAAA,IACjB,CAACD,KAAU;AAAA,IACXE,KAAc;AAAA,IACdJ,EAAM;AAAA,EAAA,GAGJQ,IAAkB,gBAAAC,EAAC,OAAA,EAAI,WAAW,gBAAgBL,CAAU,IAAK,UAAAH,GAAS;AAEhF,SACI,gBAAAQ,EAAC,SAAK,GAAGJ,GAAgB,WAAWC,GAC/B,UAAAF,IAAaI,IAAkBP,EAAA,CACpC;AAER;"}
@@ -1,5 +1,5 @@
1
1
  import { jsxs as e, jsx as a } from "react/jsx-runtime";
2
- import t from "classnames";
2
+ import t from "../../utils/classNames.js";
3
3
  const l = ({ value: s, placeholder: r }) => {
4
4
  const o = t(
5
5
  "display-flex align-items-center padding-top-5 padding-bottom-5",
@@ -1 +1 @@
1
- {"version":3,"file":"CustomSuggestionItem.js","sources":["../../../src/components/tagManager/CustomSuggestionItem.tsx"],"sourcesContent":["import type React from 'react';\nimport classNames from 'classnames';\n\nexport type CustomSuggestionItemProps = {\n value?: string | React.ReactNode;\n placeholder?: string | React.ReactNode;\n};\n\nconst CustomSuggestionItem = ({ value, placeholder }: CustomSuggestionItemProps) => {\n const wrapperClassNames = classNames(\n 'display-flex align-items-center padding-top-5 padding-bottom-5',\n !value && 'text-color-gray'\n );\n\n const iconClassNames = classNames(\n 'margin-left--5 margin-right-5 margin-top--1 rioglyph',\n value ? 'rioglyph-plus' : 'rioglyph-arrow-up'\n );\n\n return (\n <span className={wrapperClassNames}>\n <span className={iconClassNames} />\n <span className='text-italic'>{value || placeholder}</span>\n </span>\n );\n};\n\nexport default CustomSuggestionItem;\n"],"names":["CustomSuggestionItem","value","placeholder","wrapperClassNames","classNames","iconClassNames","jsxs","jsx"],"mappings":";;AAQA,MAAMA,IAAuB,CAAC,EAAE,OAAAC,GAAO,aAAAC,QAA6C;AAChF,QAAMC,IAAoBC;AAAA,IACtB;AAAA,IACA,CAACH,KAAS;AAAA,EAAA,GAGRI,IAAiBD;AAAA,IACnB;AAAA,IACAH,IAAQ,kBAAkB;AAAA,EAAA;AAG9B,SACI,gBAAAK,EAAC,QAAA,EAAK,WAAWH,GACb,UAAA;AAAA,IAAA,gBAAAI,EAAC,QAAA,EAAK,WAAWF,EAAA,CAAgB;AAAA,IACjC,gBAAAE,EAAC,QAAA,EAAK,WAAU,eAAe,eAASL,EAAA,CAAY;AAAA,EAAA,GACxD;AAER;"}
1
+ {"version":3,"file":"CustomSuggestionItem.js","sources":["../../../src/components/tagManager/CustomSuggestionItem.tsx"],"sourcesContent":["import type React from 'react';\n\nimport classNames from '../../utils/classNames';\n\nexport type CustomSuggestionItemProps = {\n value?: string | React.ReactNode;\n placeholder?: string | React.ReactNode;\n};\n\nconst CustomSuggestionItem = ({ value, placeholder }: CustomSuggestionItemProps) => {\n const wrapperClassNames = classNames(\n 'display-flex align-items-center padding-top-5 padding-bottom-5',\n !value && 'text-color-gray'\n );\n\n const iconClassNames = classNames(\n 'margin-left--5 margin-right-5 margin-top--1 rioglyph',\n value ? 'rioglyph-plus' : 'rioglyph-arrow-up'\n );\n\n return (\n <span className={wrapperClassNames}>\n <span className={iconClassNames} />\n <span className='text-italic'>{value || placeholder}</span>\n </span>\n );\n};\n\nexport default CustomSuggestionItem;\n"],"names":["CustomSuggestionItem","value","placeholder","wrapperClassNames","classNames","iconClassNames","jsxs","jsx"],"mappings":";;AASA,MAAMA,IAAuB,CAAC,EAAE,OAAAC,GAAO,aAAAC,QAA6C;AAChF,QAAMC,IAAoBC;AAAA,IACtB;AAAA,IACA,CAACH,KAAS;AAAA,EAAA,GAGRI,IAAiBD;AAAA,IACnB;AAAA,IACAH,IAAQ,kBAAkB;AAAA,EAAA;AAG9B,SACI,gBAAAK,EAAC,QAAA,EAAK,WAAWH,GACb,UAAA;AAAA,IAAA,gBAAAI,EAAC,QAAA,EAAK,WAAWF,EAAA,CAAgB;AAAA,IACjC,gBAAAE,EAAC,QAAA,EAAK,WAAU,eAAe,eAASL,EAAA,CAAY;AAAA,EAAA,GACxD;AAER;"}
@@ -1,6 +1,18 @@
1
1
  import { default as React } from 'react';
2
- import { TagManagerTag } from './TagManagerTag';
3
- export type { TagManagerTag } from './TagManagerTag';
2
+ export type TagManagerTag = {
3
+ /**
4
+ * The visible text of the tag.
5
+ */
6
+ label?: string;
7
+ /**
8
+ * Marks a tag that should be added (used to differentiate newly added tags).
9
+ */
10
+ toAdd?: boolean;
11
+ /**
12
+ * Marks a tag that should be removed (used to differentiate tags flagged for deletion).
13
+ */
14
+ toRemove?: boolean;
15
+ };
4
16
  export type TagManagerProps = {
5
17
  /**
6
18
  * The list of existing tags to be listed.