@laerdal/life-react-components 1.11.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (622) hide show
  1. package/dist/Accordion/AccordionItem.cjs +14 -9
  2. package/dist/Accordion/AccordionItem.cjs.map +1 -1
  3. package/dist/Accordion/AccordionItem.js +14 -9
  4. package/dist/Accordion/AccordionItem.js.map +1 -1
  5. package/dist/Accordion/AccordionMenu.cjs +2 -2
  6. package/dist/Accordion/AccordionMenu.cjs.map +1 -1
  7. package/dist/Accordion/AccordionMenu.js +2 -2
  8. package/dist/Accordion/AccordionMenu.js.map +1 -1
  9. package/dist/Accordion/ContentAccordion.cjs +5 -3
  10. package/dist/Accordion/ContentAccordion.cjs.map +1 -1
  11. package/dist/Accordion/ContentAccordion.js +5 -3
  12. package/dist/Accordion/ContentAccordion.js.map +1 -1
  13. package/dist/Accordion/index.cjs.map +1 -1
  14. package/dist/Accordion/index.js.map +1 -1
  15. package/dist/Accordion/styles.cjs +1 -1
  16. package/dist/Accordion/styles.cjs.map +1 -1
  17. package/dist/Accordion/styles.js +1 -1
  18. package/dist/Accordion/styles.js.map +1 -1
  19. package/dist/AuthPage/AuthPage.cjs.map +1 -1
  20. package/dist/AuthPage/AuthPage.js.map +1 -1
  21. package/dist/AuthPage/Information.cjs.map +1 -1
  22. package/dist/AuthPage/Information.js.map +1 -1
  23. package/dist/AuthPage/ScreenSetsContainer.cjs.map +1 -1
  24. package/dist/AuthPage/ScreenSetsContainer.js.map +1 -1
  25. package/dist/AuthPage/_AuthPageSection.cjs.map +1 -1
  26. package/dist/AuthPage/_AuthPageSection.js.map +1 -1
  27. package/dist/AuthPage/index.cjs.map +1 -1
  28. package/dist/AuthPage/index.js.map +1 -1
  29. package/dist/AuthPage/screenSetsErrorMessages.cjs.map +1 -1
  30. package/dist/AuthPage/screenSetsErrorMessages.js.map +1 -1
  31. package/dist/Banners/Banner.cjs +11 -6
  32. package/dist/Banners/Banner.cjs.map +1 -1
  33. package/dist/Banners/Banner.js +10 -6
  34. package/dist/Banners/Banner.js.map +1 -1
  35. package/dist/Banners/OverviewBanner.cjs +2 -2
  36. package/dist/Banners/OverviewBanner.cjs.map +1 -1
  37. package/dist/Banners/OverviewBanner.js +2 -2
  38. package/dist/Banners/OverviewBanner.js.map +1 -1
  39. package/dist/Banners/index.cjs.map +1 -1
  40. package/dist/Banners/index.js.map +1 -1
  41. package/dist/Banners/styles.cjs.map +1 -1
  42. package/dist/Banners/styles.js.map +1 -1
  43. package/dist/Breadcrumb/Breadcrumb.cjs +17 -5
  44. package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
  45. package/dist/Breadcrumb/Breadcrumb.d.ts +1 -1
  46. package/dist/Breadcrumb/Breadcrumb.js +18 -6
  47. package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
  48. package/dist/Breadcrumb/BreadcrumbItem.cjs.map +1 -1
  49. package/dist/Breadcrumb/BreadcrumbItem.js.map +1 -1
  50. package/dist/Breadcrumb/index.cjs.map +1 -1
  51. package/dist/Breadcrumb/index.js.map +1 -1
  52. package/dist/Breadcrumb/styles.cjs.map +1 -1
  53. package/dist/Breadcrumb/styles.js.map +1 -1
  54. package/dist/Button/BackButton.cjs +2 -2
  55. package/dist/Button/BackButton.cjs.map +1 -1
  56. package/dist/Button/BackButton.js +2 -2
  57. package/dist/Button/BackButton.js.map +1 -1
  58. package/dist/Button/Button.cjs +2 -2
  59. package/dist/Button/Button.cjs.map +1 -1
  60. package/dist/Button/Button.js +2 -2
  61. package/dist/Button/Button.js.map +1 -1
  62. package/dist/Button/DualFunctionButton.cjs +29 -14
  63. package/dist/Button/DualFunctionButton.cjs.map +1 -1
  64. package/dist/Button/DualFunctionButton.js +28 -14
  65. package/dist/Button/DualFunctionButton.js.map +1 -1
  66. package/dist/Button/Iconbutton.cjs +4 -4
  67. package/dist/Button/Iconbutton.cjs.map +1 -1
  68. package/dist/Button/Iconbutton.js +4 -4
  69. package/dist/Button/Iconbutton.js.map +1 -1
  70. package/dist/Button/index.cjs.map +1 -1
  71. package/dist/Button/index.js.map +1 -1
  72. package/dist/Card/HorizontalCard/HorizontalCard.cjs.map +1 -1
  73. package/dist/Card/HorizontalCard/HorizontalCard.js.map +1 -1
  74. package/dist/Card/HorizontalCard/HorizontalCardActions.cjs.map +1 -1
  75. package/dist/Card/HorizontalCard/HorizontalCardActions.js.map +1 -1
  76. package/dist/Card/HorizontalCard/HorizontalCardBody.cjs.map +1 -1
  77. package/dist/Card/HorizontalCard/HorizontalCardBody.js.map +1 -1
  78. package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs.map +1 -1
  79. package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js.map +1 -1
  80. package/dist/Card/HorizontalCard/index.cjs.map +1 -1
  81. package/dist/Card/HorizontalCard/index.js.map +1 -1
  82. package/dist/Card/HorizontalCard/types.cjs.map +1 -1
  83. package/dist/Card/HorizontalCard/types.js.map +1 -1
  84. package/dist/Card/VerticalCard/Card.cjs +4 -4
  85. package/dist/Card/VerticalCard/Card.cjs.map +1 -1
  86. package/dist/Card/VerticalCard/Card.js +4 -4
  87. package/dist/Card/VerticalCard/Card.js.map +1 -1
  88. package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
  89. package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -1
  90. package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -1
  91. package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -1
  92. package/dist/Card/VerticalCard/CardTopSection.cjs.map +1 -1
  93. package/dist/Card/VerticalCard/CardTopSection.js.map +1 -1
  94. package/dist/Card/VerticalCard/index.cjs.map +1 -1
  95. package/dist/Card/VerticalCard/index.js.map +1 -1
  96. package/dist/Card/index.cjs.map +1 -1
  97. package/dist/Card/index.js.map +1 -1
  98. package/dist/Chips/ActionChip.cjs +2 -2
  99. package/dist/Chips/ActionChip.cjs.map +1 -1
  100. package/dist/Chips/ActionChip.js +2 -2
  101. package/dist/Chips/ActionChip.js.map +1 -1
  102. package/dist/Chips/ChipStyles.cjs.map +1 -1
  103. package/dist/Chips/ChipStyles.js.map +1 -1
  104. package/dist/Chips/ChipTypes.cjs.map +1 -1
  105. package/dist/Chips/ChipTypes.js.map +1 -1
  106. package/dist/Chips/ChoiceChips.cjs +2 -2
  107. package/dist/Chips/ChoiceChips.cjs.map +1 -1
  108. package/dist/Chips/ChoiceChips.js +2 -2
  109. package/dist/Chips/ChoiceChips.js.map +1 -1
  110. package/dist/Chips/FilterChip.cjs +2 -2
  111. package/dist/Chips/FilterChip.cjs.map +1 -1
  112. package/dist/Chips/FilterChip.js +2 -2
  113. package/dist/Chips/FilterChip.js.map +1 -1
  114. package/dist/Chips/InputChip.cjs +2 -2
  115. package/dist/Chips/InputChip.cjs.map +1 -1
  116. package/dist/Chips/InputChip.js +2 -2
  117. package/dist/Chips/InputChip.js.map +1 -1
  118. package/dist/Chips/index.cjs.map +1 -1
  119. package/dist/Chips/index.js.map +1 -1
  120. package/dist/ChipsInput/ChipDropdownInput.cjs +35 -24
  121. package/dist/ChipsInput/ChipDropdownInput.cjs.map +1 -1
  122. package/dist/ChipsInput/ChipDropdownInput.js +35 -24
  123. package/dist/ChipsInput/ChipDropdownInput.js.map +1 -1
  124. package/dist/ChipsInput/ChipInput.cjs +2 -2
  125. package/dist/ChipsInput/ChipInput.cjs.map +1 -1
  126. package/dist/ChipsInput/ChipInput.js +2 -2
  127. package/dist/ChipsInput/ChipInput.js.map +1 -1
  128. package/dist/ChipsInput/ChipInputField.cjs +2 -2
  129. package/dist/ChipsInput/ChipInputField.cjs.map +1 -1
  130. package/dist/ChipsInput/ChipInputField.js +2 -2
  131. package/dist/ChipsInput/ChipInputField.js.map +1 -1
  132. package/dist/ChipsInput/ChipInputTypes.cjs.map +1 -1
  133. package/dist/ChipsInput/ChipInputTypes.js.map +1 -1
  134. package/dist/ChipsInput/index.cjs.map +1 -1
  135. package/dist/ChipsInput/index.js.map +1 -1
  136. package/dist/Dropdown/BasicDropdown.cjs +28 -14
  137. package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
  138. package/dist/Dropdown/BasicDropdown.js +28 -14
  139. package/dist/Dropdown/BasicDropdown.js.map +1 -1
  140. package/dist/Dropdown/CommonStyling.cjs.map +1 -1
  141. package/dist/Dropdown/CommonStyling.js.map +1 -1
  142. package/dist/Dropdown/DropdownButton.cjs +27 -11
  143. package/dist/Dropdown/DropdownButton.cjs.map +1 -1
  144. package/dist/Dropdown/DropdownButton.js +27 -11
  145. package/dist/Dropdown/DropdownButton.js.map +1 -1
  146. package/dist/Dropdown/DropdownButtonTypes.cjs.map +1 -1
  147. package/dist/Dropdown/DropdownButtonTypes.d.ts +1 -0
  148. package/dist/Dropdown/DropdownButtonTypes.js.map +1 -1
  149. package/dist/Dropdown/DropdownContent.cjs +44 -6
  150. package/dist/Dropdown/DropdownContent.cjs.map +1 -1
  151. package/dist/Dropdown/DropdownContent.d.ts +2 -0
  152. package/dist/Dropdown/DropdownContent.js +44 -6
  153. package/dist/Dropdown/DropdownContent.js.map +1 -1
  154. package/dist/Dropdown/DropdownFilter.cjs +25 -11
  155. package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
  156. package/dist/Dropdown/DropdownFilter.js +25 -11
  157. package/dist/Dropdown/DropdownFilter.js.map +1 -1
  158. package/dist/Dropdown/index.cjs.map +1 -1
  159. package/dist/Dropdown/index.js.map +1 -1
  160. package/dist/Footer/Components/FooterBottomLinks.cjs.map +1 -1
  161. package/dist/Footer/Components/FooterBottomLinks.js.map +1 -1
  162. package/dist/Footer/Components/FooterDropdownLinks.cjs.map +1 -1
  163. package/dist/Footer/Components/FooterDropdownLinks.js.map +1 -1
  164. package/dist/Footer/Components/FooterNavSection.cjs +7 -2
  165. package/dist/Footer/Components/FooterNavSection.cjs.map +1 -1
  166. package/dist/Footer/Components/FooterNavSection.js +6 -2
  167. package/dist/Footer/Components/FooterNavSection.js.map +1 -1
  168. package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs.map +1 -1
  169. package/dist/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
  170. package/dist/Footer/Components/FooterTop.cjs.map +1 -1
  171. package/dist/Footer/Components/FooterTop.js.map +1 -1
  172. package/dist/Footer/Footer.cjs.map +1 -1
  173. package/dist/Footer/Footer.js.map +1 -1
  174. package/dist/Footer/SiteFooter.cjs +2 -2
  175. package/dist/Footer/SiteFooter.cjs.map +1 -1
  176. package/dist/Footer/SiteFooter.js +2 -2
  177. package/dist/Footer/SiteFooter.js.map +1 -1
  178. package/dist/Footer/index.cjs.map +1 -1
  179. package/dist/Footer/index.js.map +1 -1
  180. package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs +5 -3
  181. package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs.map +1 -1
  182. package/dist/GlobalNavigationBar/GlobalNavigationBar.js +4 -3
  183. package/dist/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
  184. package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
  185. package/dist/GlobalNavigationBar/Logo.js.map +1 -1
  186. package/dist/GlobalNavigationBar/desktop/DesktopActions.cjs +2 -2
  187. package/dist/GlobalNavigationBar/desktop/DesktopActions.cjs.map +1 -1
  188. package/dist/GlobalNavigationBar/desktop/DesktopActions.js +2 -2
  189. package/dist/GlobalNavigationBar/desktop/DesktopActions.js.map +1 -1
  190. package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.cjs.map +1 -1
  191. package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.js.map +1 -1
  192. package/dist/GlobalNavigationBar/desktop/MainMenu.cjs +2 -4
  193. package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +1 -1
  194. package/dist/GlobalNavigationBar/desktop/MainMenu.js +2 -4
  195. package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +1 -1
  196. package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs +0 -1
  197. package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs.map +1 -1
  198. package/dist/GlobalNavigationBar/desktop/RightSideNav.js +0 -1
  199. package/dist/GlobalNavigationBar/desktop/RightSideNav.js.map +1 -1
  200. package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +1 -1
  201. package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +1 -1
  202. package/dist/GlobalNavigationBar/index.cjs.map +1 -1
  203. package/dist/GlobalNavigationBar/index.js.map +1 -1
  204. package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs +24 -2
  205. package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
  206. package/dist/GlobalNavigationBar/mobile/CommonStyles.d.ts +7 -2
  207. package/dist/GlobalNavigationBar/mobile/CommonStyles.js +8 -2
  208. package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  209. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs +53 -0
  210. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs.map +1 -0
  211. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.d.ts +6 -0
  212. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js +34 -0
  213. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js.map +1 -0
  214. package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs +3 -5
  215. package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs.map +1 -1
  216. package/dist/GlobalNavigationBar/mobile/MobileMenu.js +2 -4
  217. package/dist/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
  218. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs +30 -61
  219. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs.map +1 -1
  220. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js +30 -57
  221. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js.map +1 -1
  222. package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs +2 -2
  223. package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs.map +1 -1
  224. package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js +2 -2
  225. package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js.map +1 -1
  226. package/dist/GlobalNavigationBar/types.cjs.map +1 -1
  227. package/dist/GlobalNavigationBar/types.d.ts +3 -1
  228. package/dist/GlobalNavigationBar/types.js.map +1 -1
  229. package/dist/HyperLink/HyperLink.cjs +2 -2
  230. package/dist/HyperLink/HyperLink.cjs.map +1 -1
  231. package/dist/HyperLink/HyperLink.js +2 -2
  232. package/dist/HyperLink/HyperLink.js.map +1 -1
  233. package/dist/HyperLink/index.cjs.map +1 -1
  234. package/dist/HyperLink/index.js.map +1 -1
  235. package/dist/HyperLink/styling.cjs.map +1 -1
  236. package/dist/HyperLink/styling.js.map +1 -1
  237. package/dist/Image/ImageWithFallbacks.cjs +2 -2
  238. package/dist/Image/ImageWithFallbacks.cjs.map +1 -1
  239. package/dist/Image/ImageWithFallbacks.js +2 -2
  240. package/dist/Image/ImageWithFallbacks.js.map +1 -1
  241. package/dist/Image/index.cjs.map +1 -1
  242. package/dist/Image/index.js.map +1 -1
  243. package/dist/InputFields/Checkbox.cjs +3 -2
  244. package/dist/InputFields/Checkbox.cjs.map +1 -1
  245. package/dist/InputFields/Checkbox.js +3 -2
  246. package/dist/InputFields/Checkbox.js.map +1 -1
  247. package/dist/InputFields/DatepickerField.cjs +14 -6
  248. package/dist/InputFields/DatepickerField.cjs.map +1 -1
  249. package/dist/InputFields/DatepickerField.d.ts +1 -1
  250. package/dist/InputFields/DatepickerField.js +8 -6
  251. package/dist/InputFields/DatepickerField.js.map +1 -1
  252. package/dist/InputFields/DatepickerFieldHeader.cjs.map +1 -1
  253. package/dist/InputFields/DatepickerFieldHeader.js.map +1 -1
  254. package/dist/InputFields/Label.cjs +16 -14
  255. package/dist/InputFields/Label.cjs.map +1 -1
  256. package/dist/InputFields/Label.d.ts +1 -0
  257. package/dist/InputFields/Label.js +15 -13
  258. package/dist/InputFields/Label.js.map +1 -1
  259. package/dist/InputFields/NumberField.cjs +26 -44
  260. package/dist/InputFields/NumberField.cjs.map +1 -1
  261. package/dist/InputFields/NumberField.d.ts +5 -6
  262. package/dist/InputFields/NumberField.js +26 -41
  263. package/dist/InputFields/NumberField.js.map +1 -1
  264. package/dist/InputFields/PasswordField.cjs +2 -2
  265. package/dist/InputFields/PasswordField.cjs.map +1 -1
  266. package/dist/InputFields/PasswordField.d.ts +1 -1
  267. package/dist/InputFields/PasswordField.js +2 -2
  268. package/dist/InputFields/PasswordField.js.map +1 -1
  269. package/dist/InputFields/QuickSearch.cjs +1 -1
  270. package/dist/InputFields/QuickSearch.cjs.map +1 -1
  271. package/dist/InputFields/QuickSearch.js +1 -1
  272. package/dist/InputFields/QuickSearch.js.map +1 -1
  273. package/dist/InputFields/RadioButton.cjs +2 -2
  274. package/dist/InputFields/RadioButton.cjs.map +1 -1
  275. package/dist/InputFields/RadioButton.js +2 -2
  276. package/dist/InputFields/RadioButton.js.map +1 -1
  277. package/dist/InputFields/ResponsiveComponentWrapper.cjs +3 -3
  278. package/dist/InputFields/ResponsiveComponentWrapper.cjs.map +1 -1
  279. package/dist/InputFields/ResponsiveComponentWrapper.js +3 -3
  280. package/dist/InputFields/ResponsiveComponentWrapper.js.map +1 -1
  281. package/dist/InputFields/SearchBar.cjs +1 -0
  282. package/dist/InputFields/SearchBar.cjs.map +1 -1
  283. package/dist/InputFields/SearchBar.js +1 -0
  284. package/dist/InputFields/SearchBar.js.map +1 -1
  285. package/dist/InputFields/TextField.cjs +2 -2
  286. package/dist/InputFields/TextField.cjs.map +1 -1
  287. package/dist/InputFields/TextField.d.ts +1 -1
  288. package/dist/InputFields/TextField.js +2 -2
  289. package/dist/InputFields/TextField.js.map +1 -1
  290. package/dist/InputFields/Textarea.cjs +2 -2
  291. package/dist/InputFields/Textarea.cjs.map +1 -1
  292. package/dist/InputFields/Textarea.d.ts +2 -2
  293. package/dist/InputFields/Textarea.js +2 -2
  294. package/dist/InputFields/Textarea.js.map +1 -1
  295. package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
  296. package/dist/InputFields/components/SearchBarInput.js.map +1 -1
  297. package/dist/InputFields/components/SearchField.cjs +2 -2
  298. package/dist/InputFields/components/SearchField.cjs.map +1 -1
  299. package/dist/InputFields/components/SearchField.js +2 -2
  300. package/dist/InputFields/components/SearchField.js.map +1 -1
  301. package/dist/InputFields/index.cjs.map +1 -1
  302. package/dist/InputFields/index.js.map +1 -1
  303. package/dist/InputFields/styling.cjs.map +1 -1
  304. package/dist/InputFields/styling.js.map +1 -1
  305. package/dist/InputFields/types.cjs.map +1 -1
  306. package/dist/InputFields/types.d.ts +1 -0
  307. package/dist/InputFields/types.js.map +1 -1
  308. package/dist/Layouts/index.cjs.map +1 -1
  309. package/dist/Layouts/index.js.map +1 -1
  310. package/dist/LinearProgress/LinearProgress.cjs +2 -2
  311. package/dist/LinearProgress/LinearProgress.cjs.map +1 -1
  312. package/dist/LinearProgress/LinearProgress.js +2 -2
  313. package/dist/LinearProgress/LinearProgress.js.map +1 -1
  314. package/dist/LinearProgress/index.cjs.map +1 -1
  315. package/dist/LinearProgress/index.js.map +1 -1
  316. package/dist/List/ListRow.cjs +2 -2
  317. package/dist/List/ListRow.cjs.map +1 -1
  318. package/dist/List/ListRow.js +2 -2
  319. package/dist/List/ListRow.js.map +1 -1
  320. package/dist/List/index.cjs.map +1 -1
  321. package/dist/List/index.js.map +1 -1
  322. package/dist/LoadingIndicator/LoadingIndicator.cjs.map +1 -1
  323. package/dist/LoadingIndicator/LoadingIndicator.js.map +1 -1
  324. package/dist/LoadingIndicator/index.cjs.map +1 -1
  325. package/dist/LoadingIndicator/index.js.map +1 -1
  326. package/dist/LoadingPage/GlobalLoadingPage.cjs.map +1 -1
  327. package/dist/LoadingPage/GlobalLoadingPage.js.map +1 -1
  328. package/dist/LoadingPage/index.cjs.map +1 -1
  329. package/dist/LoadingPage/index.js.map +1 -1
  330. package/dist/MenuItem/MenuItem.cjs +2 -2
  331. package/dist/MenuItem/MenuItem.cjs.map +1 -1
  332. package/dist/MenuItem/MenuItem.d.ts +1 -1
  333. package/dist/MenuItem/MenuItem.js +2 -2
  334. package/dist/MenuItem/MenuItem.js.map +1 -1
  335. package/dist/MenuItem/index.cjs.map +1 -1
  336. package/dist/MenuItem/index.js.map +1 -1
  337. package/dist/MiniProductCard/MiniProductCard.cjs.map +1 -1
  338. package/dist/MiniProductCard/MiniProductCard.js.map +1 -1
  339. package/dist/MiniProductCard/index.cjs.map +1 -1
  340. package/dist/MiniProductCard/index.js.map +1 -1
  341. package/dist/Modals/Modal.cjs.map +1 -1
  342. package/dist/Modals/Modal.js.map +1 -1
  343. package/dist/Modals/ModalContainer.cjs +3 -3
  344. package/dist/Modals/ModalContainer.cjs.map +1 -1
  345. package/dist/Modals/ModalContainer.js +3 -3
  346. package/dist/Modals/ModalContainer.js.map +1 -1
  347. package/dist/Modals/ModalContent.cjs +4 -3
  348. package/dist/Modals/ModalContent.cjs.map +1 -1
  349. package/dist/Modals/ModalContent.d.ts +1 -0
  350. package/dist/Modals/ModalContent.js +4 -3
  351. package/dist/Modals/ModalContent.js.map +1 -1
  352. package/dist/Modals/ModalDialog.cjs +1 -0
  353. package/dist/Modals/ModalDialog.cjs.map +1 -1
  354. package/dist/Modals/ModalDialog.d.ts +1 -0
  355. package/dist/Modals/ModalDialog.js +1 -0
  356. package/dist/Modals/ModalDialog.js.map +1 -1
  357. package/dist/Modals/ModalNote.cjs.map +1 -1
  358. package/dist/Modals/ModalNote.js.map +1 -1
  359. package/dist/Modals/ModalStyles.cjs.map +1 -1
  360. package/dist/Modals/ModalStyles.js.map +1 -1
  361. package/dist/Modals/ModalTypes.cjs.map +1 -1
  362. package/dist/Modals/ModalTypes.js.map +1 -1
  363. package/dist/Modals/index.cjs.map +1 -1
  364. package/dist/Modals/index.js.map +1 -1
  365. package/dist/NavItem/NavItem.cjs +22 -1
  366. package/dist/NavItem/NavItem.cjs.map +1 -1
  367. package/dist/NavItem/NavItem.d.ts +7 -1
  368. package/dist/NavItem/NavItem.js +18 -1
  369. package/dist/NavItem/NavItem.js.map +1 -1
  370. package/dist/NavItem/index.cjs.map +1 -1
  371. package/dist/NavItem/index.d.ts +1 -0
  372. package/dist/NavItem/index.js.map +1 -1
  373. package/dist/NotificationDot/NotificationDot.cjs.map +1 -1
  374. package/dist/NotificationDot/NotificationDot.js.map +1 -1
  375. package/dist/NotificationDot/index.cjs.map +1 -1
  376. package/dist/NotificationDot/index.js.map +1 -1
  377. package/dist/Paginator/Paginator.cjs +2 -2
  378. package/dist/Paginator/Paginator.cjs.map +1 -1
  379. package/dist/Paginator/Paginator.js +3 -3
  380. package/dist/Paginator/Paginator.js.map +1 -1
  381. package/dist/Paginator/index.cjs.map +1 -1
  382. package/dist/Paginator/index.js.map +1 -1
  383. package/dist/Popover/Popover.cjs.map +1 -1
  384. package/dist/Popover/Popover.js.map +1 -1
  385. package/dist/Popover/index.cjs.map +1 -1
  386. package/dist/Popover/index.js.map +1 -1
  387. package/dist/ProfileButton/ProfileButton.cjs +2 -2
  388. package/dist/ProfileButton/ProfileButton.cjs.map +1 -1
  389. package/dist/ProfileButton/ProfileButton.d.ts +1 -1
  390. package/dist/ProfileButton/ProfileButton.js +2 -2
  391. package/dist/ProfileButton/ProfileButton.js.map +1 -1
  392. package/dist/ProfileButton/index.cjs.map +1 -1
  393. package/dist/ProfileButton/index.js.map +1 -1
  394. package/dist/QuizButton/QuizButton.cjs +5 -3
  395. package/dist/QuizButton/QuizButton.cjs.map +1 -1
  396. package/dist/QuizButton/QuizButton.js +5 -3
  397. package/dist/QuizButton/QuizButton.js.map +1 -1
  398. package/dist/QuizButton/index.cjs.map +1 -1
  399. package/dist/QuizButton/index.js.map +1 -1
  400. package/dist/SegmentControl/SegmentControl.cjs +2 -2
  401. package/dist/SegmentControl/SegmentControl.cjs.map +1 -1
  402. package/dist/SegmentControl/SegmentControl.js +2 -2
  403. package/dist/SegmentControl/SegmentControl.js.map +1 -1
  404. package/dist/SegmentControl/index.cjs.map +1 -1
  405. package/dist/SegmentControl/index.js.map +1 -1
  406. package/dist/Services/functions.cjs.map +1 -1
  407. package/dist/Services/functions.js.map +1 -1
  408. package/dist/SideMenu/SideMenu.cjs +2 -2
  409. package/dist/SideMenu/SideMenu.cjs.map +1 -1
  410. package/dist/SideMenu/SideMenu.js +2 -2
  411. package/dist/SideMenu/SideMenu.js.map +1 -1
  412. package/dist/SideMenu/SideMenuBody.cjs.map +1 -1
  413. package/dist/SideMenu/SideMenuBody.js.map +1 -1
  414. package/dist/SideMenu/SideMenuFooter.cjs +2 -2
  415. package/dist/SideMenu/SideMenuFooter.cjs.map +1 -1
  416. package/dist/SideMenu/SideMenuFooter.js +2 -2
  417. package/dist/SideMenu/SideMenuFooter.js.map +1 -1
  418. package/dist/SideMenu/SideMenuHeader.cjs +2 -2
  419. package/dist/SideMenu/SideMenuHeader.cjs.map +1 -1
  420. package/dist/SideMenu/SideMenuHeader.js +2 -2
  421. package/dist/SideMenu/SideMenuHeader.js.map +1 -1
  422. package/dist/SideMenu/index.cjs.map +1 -1
  423. package/dist/SideMenu/index.js.map +1 -1
  424. package/dist/SideMenu/types.cjs.map +1 -1
  425. package/dist/SideMenu/types.js.map +1 -1
  426. package/dist/SkipToContent/SkipToContent.cjs +5 -0
  427. package/dist/SkipToContent/SkipToContent.cjs.map +1 -1
  428. package/dist/SkipToContent/SkipToContent.d.ts +3 -1
  429. package/dist/SkipToContent/SkipToContent.js +4 -0
  430. package/dist/SkipToContent/SkipToContent.js.map +1 -1
  431. package/dist/SkipToContent/index.cjs.map +1 -1
  432. package/dist/SkipToContent/index.js.map +1 -1
  433. package/dist/Switcher/MobileCustomMenuContent.cjs +56 -0
  434. package/dist/Switcher/MobileCustomMenuContent.cjs.map +1 -0
  435. package/dist/Switcher/MobileCustomMenuContent.d.ts +8 -0
  436. package/dist/Switcher/MobileCustomMenuContent.js +39 -0
  437. package/dist/Switcher/MobileCustomMenuContent.js.map +1 -0
  438. package/dist/Switcher/MobileSwitcherMenu.cjs +17 -4
  439. package/dist/Switcher/MobileSwitcherMenu.cjs.map +1 -1
  440. package/dist/Switcher/MobileSwitcherMenu.d.ts +5 -2
  441. package/dist/Switcher/MobileSwitcherMenu.js +16 -4
  442. package/dist/Switcher/MobileSwitcherMenu.js.map +1 -1
  443. package/dist/Switcher/SwitcherMenuItem.cjs.map +1 -1
  444. package/dist/Switcher/SwitcherMenuItem.js.map +1 -1
  445. package/dist/Switcher/index.cjs.map +1 -1
  446. package/dist/Switcher/index.js.map +1 -1
  447. package/dist/Table/Table.cjs +50 -83
  448. package/dist/Table/Table.cjs.map +1 -1
  449. package/dist/Table/Table.js +50 -83
  450. package/dist/Table/Table.js.map +1 -1
  451. package/dist/Table/TableBody.cjs +15 -11
  452. package/dist/Table/TableBody.cjs.map +1 -1
  453. package/dist/Table/TableBody.js +16 -12
  454. package/dist/Table/TableBody.js.map +1 -1
  455. package/dist/Table/TableFooter.cjs.map +1 -1
  456. package/dist/Table/TableFooter.js.map +1 -1
  457. package/dist/Table/TableHeaders.cjs +2 -2
  458. package/dist/Table/TableHeaders.cjs.map +1 -1
  459. package/dist/Table/TableHeaders.js +2 -2
  460. package/dist/Table/TableHeaders.js.map +1 -1
  461. package/dist/Table/TableStyles.cjs +21 -17
  462. package/dist/Table/TableStyles.cjs.map +1 -1
  463. package/dist/Table/TableStyles.d.ts +1 -0
  464. package/dist/Table/TableStyles.js +17 -16
  465. package/dist/Table/TableStyles.js.map +1 -1
  466. package/dist/Table/TableTypes.cjs.map +1 -1
  467. package/dist/Table/TableTypes.d.ts +6 -2
  468. package/dist/Table/TableTypes.js.map +1 -1
  469. package/dist/Table/index.cjs.map +1 -1
  470. package/dist/Table/index.d.ts +1 -1
  471. package/dist/Table/index.js.map +1 -1
  472. package/dist/Tabs/HorizontalTabs.cjs +2 -2
  473. package/dist/Tabs/HorizontalTabs.cjs.map +1 -1
  474. package/dist/Tabs/HorizontalTabs.js +2 -2
  475. package/dist/Tabs/HorizontalTabs.js.map +1 -1
  476. package/dist/Tabs/TabLink.cjs +16 -20
  477. package/dist/Tabs/TabLink.cjs.map +1 -1
  478. package/dist/Tabs/TabLink.d.ts +1 -1
  479. package/dist/Tabs/TabLink.js +17 -20
  480. package/dist/Tabs/TabLink.js.map +1 -1
  481. package/dist/Tabs/Tabs.cjs.map +1 -1
  482. package/dist/Tabs/Tabs.js.map +1 -1
  483. package/dist/Tabs/VerticalTabs.cjs +1 -2
  484. package/dist/Tabs/VerticalTabs.cjs.map +1 -1
  485. package/dist/Tabs/VerticalTabs.d.ts +1 -3
  486. package/dist/Tabs/VerticalTabs.js +1 -2
  487. package/dist/Tabs/VerticalTabs.js.map +1 -1
  488. package/dist/Tabs/index.cjs.map +1 -1
  489. package/dist/Tabs/index.js.map +1 -1
  490. package/dist/Tag/Tag.cjs +2 -2
  491. package/dist/Tag/Tag.cjs.map +1 -1
  492. package/dist/Tag/Tag.js +2 -2
  493. package/dist/Tag/Tag.js.map +1 -1
  494. package/dist/Tag/index.cjs.map +1 -1
  495. package/dist/Tag/index.js.map +1 -1
  496. package/dist/Tile/Tile.cjs +2 -2
  497. package/dist/Tile/Tile.cjs.map +1 -1
  498. package/dist/Tile/Tile.js +2 -2
  499. package/dist/Tile/Tile.js.map +1 -1
  500. package/dist/Tile/TileBody.cjs.map +1 -1
  501. package/dist/Tile/TileBody.d.ts +1 -0
  502. package/dist/Tile/TileBody.js.map +1 -1
  503. package/dist/Tile/TileCommonItems.cjs +2 -2
  504. package/dist/Tile/TileCommonItems.cjs.map +1 -1
  505. package/dist/Tile/TileCommonItems.js +2 -2
  506. package/dist/Tile/TileCommonItems.js.map +1 -1
  507. package/dist/Tile/TileFooter.cjs.map +1 -1
  508. package/dist/Tile/TileFooter.js.map +1 -1
  509. package/dist/Tile/TileHeader.cjs.map +1 -1
  510. package/dist/Tile/TileHeader.js.map +1 -1
  511. package/dist/Tile/TileTypes.cjs.map +1 -1
  512. package/dist/Tile/TileTypes.js.map +1 -1
  513. package/dist/Tile/index.cjs.map +1 -1
  514. package/dist/Tile/index.js.map +1 -1
  515. package/dist/Toasters/Toast.cjs +3 -2
  516. package/dist/Toasters/Toast.cjs.map +1 -1
  517. package/dist/Toasters/Toast.js +3 -2
  518. package/dist/Toasters/Toast.js.map +1 -1
  519. package/dist/Toasters/ToastContext.cjs +7 -2
  520. package/dist/Toasters/ToastContext.cjs.map +1 -1
  521. package/dist/Toasters/ToastContext.d.ts +6 -4
  522. package/dist/Toasters/ToastContext.js +6 -2
  523. package/dist/Toasters/ToastContext.js.map +1 -1
  524. package/dist/Toasters/index.cjs.map +1 -1
  525. package/dist/Toasters/index.js.map +1 -1
  526. package/dist/Toggles/ToggleButton.cjs +2 -2
  527. package/dist/Toggles/ToggleButton.cjs.map +1 -1
  528. package/dist/Toggles/ToggleButton.js +2 -2
  529. package/dist/Toggles/ToggleButton.js.map +1 -1
  530. package/dist/Toggles/ToggleSwitch.cjs +2 -2
  531. package/dist/Toggles/ToggleSwitch.cjs.map +1 -1
  532. package/dist/Toggles/ToggleSwitch.js +2 -2
  533. package/dist/Toggles/ToggleSwitch.js.map +1 -1
  534. package/dist/Toggles/TogglerStyles.cjs.map +1 -1
  535. package/dist/Toggles/TogglerStyles.js.map +1 -1
  536. package/dist/Toggles/TogglerTypes.cjs.map +1 -1
  537. package/dist/Toggles/TogglerTypes.js.map +1 -1
  538. package/dist/Toggles/index.cjs.map +1 -1
  539. package/dist/Toggles/index.js.map +1 -1
  540. package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
  541. package/dist/Tooltips/TooltipStyles.d.ts +1 -1
  542. package/dist/Tooltips/TooltipStyles.js.map +1 -1
  543. package/dist/Tooltips/TooltipTypes.cjs.map +1 -1
  544. package/dist/Tooltips/TooltipTypes.js.map +1 -1
  545. package/dist/Tooltips/TooltipWrapper.cjs +2 -2
  546. package/dist/Tooltips/TooltipWrapper.cjs.map +1 -1
  547. package/dist/Tooltips/TooltipWrapper.js +2 -2
  548. package/dist/Tooltips/TooltipWrapper.js.map +1 -1
  549. package/dist/Tooltips/index.cjs.map +1 -1
  550. package/dist/Tooltips/index.js.map +1 -1
  551. package/dist/assets/index.cjs.map +1 -1
  552. package/dist/assets/index.js.map +1 -1
  553. package/dist/common/ActionWithin.cjs.map +1 -1
  554. package/dist/common/ActionWithin.js.map +1 -1
  555. package/dist/common/ClickOutside.cjs.map +1 -1
  556. package/dist/common/ClickOutside.js.map +1 -1
  557. package/dist/common/EventHandlers.cjs.map +1 -1
  558. package/dist/common/EventHandlers.js.map +1 -1
  559. package/dist/common/FocusOutside.cjs.map +1 -1
  560. package/dist/common/FocusOutside.js.map +1 -1
  561. package/dist/common/FocusVisible.cjs.map +1 -1
  562. package/dist/common/FocusVisible.d.ts +1 -1
  563. package/dist/common/FocusVisible.js.map +1 -1
  564. package/dist/common/InputStyling.cjs.map +1 -1
  565. package/dist/common/InputStyling.js.map +1 -1
  566. package/dist/common/NavigationHelper.cjs +8 -6
  567. package/dist/common/NavigationHelper.cjs.map +1 -1
  568. package/dist/common/NavigationHelper.js +9 -7
  569. package/dist/common/NavigationHelper.js.map +1 -1
  570. package/dist/common/ScrollableContainer.cjs +44 -0
  571. package/dist/common/ScrollableContainer.cjs.map +1 -0
  572. package/dist/common/ScrollableContainer.d.ts +2 -0
  573. package/dist/common/ScrollableContainer.js +28 -0
  574. package/dist/common/ScrollableContainer.js.map +1 -0
  575. package/dist/common/StackState.cjs.map +1 -1
  576. package/dist/common/StackState.js.map +1 -1
  577. package/dist/common/index.cjs.map +1 -1
  578. package/dist/common/index.js.map +1 -1
  579. package/dist/icons/contenticons/ContentIcons.cjs +83 -2
  580. package/dist/icons/contenticons/ContentIcons.cjs.map +1 -1
  581. package/dist/icons/contenticons/ContentIcons.d.ts +3 -0
  582. package/dist/icons/contenticons/ContentIcons.js +72 -0
  583. package/dist/icons/contenticons/ContentIcons.js.map +1 -1
  584. package/dist/icons/index.cjs +14 -7
  585. package/dist/icons/index.cjs.map +1 -1
  586. package/dist/icons/index.d.ts +1 -0
  587. package/dist/icons/index.js +14 -7
  588. package/dist/icons/index.js.map +1 -1
  589. package/dist/icons/systemicons/SystemIcons.cjs +30 -1
  590. package/dist/icons/systemicons/SystemIcons.cjs.map +1 -1
  591. package/dist/icons/systemicons/SystemIcons.d.ts +1 -0
  592. package/dist/icons/systemicons/SystemIcons.js +26 -0
  593. package/dist/icons/systemicons/SystemIcons.js.map +1 -1
  594. package/dist/index.cjs.map +1 -1
  595. package/dist/index.js.map +1 -1
  596. package/dist/styles/breakpoints.cjs.map +1 -1
  597. package/dist/styles/breakpoints.js.map +1 -1
  598. package/dist/styles/colors.cjs.map +1 -1
  599. package/dist/styles/colors.js.map +1 -1
  600. package/dist/styles/focus-styles.cjs.map +1 -1
  601. package/dist/styles/focus-styles.js.map +1 -1
  602. package/dist/styles/global.cjs.map +1 -1
  603. package/dist/styles/global.js.map +1 -1
  604. package/dist/styles/index.cjs.map +1 -1
  605. package/dist/styles/index.js.map +1 -1
  606. package/dist/styles/shadowstyles.cjs.map +1 -1
  607. package/dist/styles/shadowstyles.js.map +1 -1
  608. package/dist/styles/typography.cjs +27 -13
  609. package/dist/styles/typography.cjs.map +1 -1
  610. package/dist/styles/typography.d.ts +2 -0
  611. package/dist/styles/typography.js +27 -13
  612. package/dist/styles/typography.js.map +1 -1
  613. package/dist/styles/z-indexes.cjs.map +1 -1
  614. package/dist/styles/z-indexes.js.map +1 -1
  615. package/dist/types.cjs.map +1 -1
  616. package/dist/types.js.map +1 -1
  617. package/dist/utils/utils.cjs +13 -0
  618. package/dist/utils/utils.cjs.map +1 -0
  619. package/dist/utils/utils.d.ts +1 -0
  620. package/dist/utils/utils.js +4 -0
  621. package/dist/utils/utils.js.map +1 -0
  622. package/package.json +51 -44
@@ -2,9 +2,9 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
2
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
3
3
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
4
 
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
6
 
7
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
8
 
9
9
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
10
10
 
@@ -50,6 +50,7 @@ var Table = function Table(props) {
50
50
  selectable = props.selectable,
51
51
  multiSelect = props.multiSelect,
52
52
  keyExpr = props.keyExpr,
53
+ sortProps = props.sortProps,
53
54
  accordion = props.accordion,
54
55
  _props$collapsed = props.collapsed,
55
56
  collapsed = _props$collapsed === void 0 ? true : _props$collapsed,
@@ -76,46 +77,44 @@ var Table = function Table(props) {
76
77
  currentPage = _React$useState8[0],
77
78
  setCurrentPage = _React$useState8[1];
78
79
 
79
- var _React$useState9 = React.useState(''),
80
+ var _React$useState9 = React.useState(sortProps),
80
81
  _React$useState10 = _slicedToArray(_React$useState9, 2),
81
- sortedColumn = _React$useState10[0],
82
- setSortedColumn = _React$useState10[1];
82
+ sort = _React$useState10[0],
83
+ setSort = _React$useState10[1];
83
84
 
84
- var _React$useState11 = React.useState('asc'),
85
+ var _React$useState11 = React.useState(),
85
86
  _React$useState12 = _slicedToArray(_React$useState11, 2),
86
- sortedDirection = _React$useState12[0],
87
- setSortedDirection = _React$useState12[1];
87
+ from = _React$useState12[0],
88
+ setFrom = _React$useState12[1];
88
89
 
89
90
  var _React$useState13 = React.useState(),
90
91
  _React$useState14 = _slicedToArray(_React$useState13, 2),
91
- from = _React$useState14[0],
92
- setFrom = _React$useState14[1];
92
+ to = _React$useState14[0],
93
+ setTo = _React$useState14[1];
93
94
 
94
95
  var _React$useState15 = React.useState(),
95
96
  _React$useState16 = _slicedToArray(_React$useState15, 2),
96
- to = _React$useState16[0],
97
- setTo = _React$useState16[1];
97
+ total = _React$useState16[0],
98
+ setTotal = _React$useState16[1];
98
99
 
99
- var _React$useState17 = React.useState(),
100
+ var _React$useState17 = React.useState(true),
100
101
  _React$useState18 = _slicedToArray(_React$useState17, 2),
101
- total = _React$useState18[0],
102
- setTotal = _React$useState18[1];
102
+ isCollapsed = _React$useState18[0],
103
+ setIsCollapsed = _React$useState18[1];
103
104
 
104
- var _React$useState19 = React.useState(true),
105
+ var _React$useState19 = React.useState('none'),
105
106
  _React$useState20 = _slicedToArray(_React$useState19, 2),
106
- isCollapsed = _React$useState20[0],
107
- setIsCollapsed = _React$useState20[1];
107
+ selectAllState = _React$useState20[0],
108
+ setSelectAllState = _React$useState20[1];
108
109
 
109
- var _React$useState21 = React.useState('none'),
110
+ var _React$useState21 = React.useState(multiSelect ? [] : undefined),
110
111
  _React$useState22 = _slicedToArray(_React$useState21, 2),
111
- selectAllState = _React$useState22[0],
112
- setSelectAllState = _React$useState22[1];
113
-
114
- var _React$useState23 = React.useState(multiSelect ? [] : undefined),
115
- _React$useState24 = _slicedToArray(_React$useState23, 2),
116
- selected = _React$useState24[0],
117
- setSelected = _React$useState24[1];
112
+ selected = _React$useState22[0],
113
+ setSelected = _React$useState22[1];
118
114
 
115
+ React.useEffect(function () {
116
+ setSort(sortProps);
117
+ }, [sortProps]);
119
118
  React.useEffect(function () {
120
119
  setSelected(props.selectedRows || (multiSelect ? [] : undefined));
121
120
  }, [props.selectedRows, multiSelect]);
@@ -198,22 +197,13 @@ var Table = function Table(props) {
198
197
  }
199
198
  }); // Let's apply sorting if needed
200
199
 
201
- if (columns.some(function (column) {
202
- return column.sortingDirection;
203
- })) {
204
- // Let's find the sorting column
205
- var sortingColumn = columns.find(function (column) {
206
- return column.sortingDirection;
207
- }); // Update sorted column data
208
-
209
- setSortedDirection(sortingColumn.sortingDirection);
210
- setSortedColumn(sortingColumn.key); // Let's sort the rows
211
-
200
+ if (!!(sort !== null && sort !== void 0 && sort.column) && !!(sort !== null && sort !== void 0 && sort.direction)) {
201
+ // Let's sort the rows
212
202
  tmpFilteredRows.sort(function (a, b) {
213
- if (a[sortingColumn.key] > b[sortingColumn.key]) {
214
- return sortingColumn.sortingDirection === 'asc' ? 1 : -1;
215
- } else if (a[sortingColumn.key] < b[sortingColumn.key]) {
216
- return sortingColumn.sortingDirection === 'asc' ? -1 : 1;
203
+ if (a[sort.column] > b[sort.column]) {
204
+ return sort.direction === 'asc' ? 1 : -1;
205
+ } else if (a[sort.column] < b[sort.column]) {
206
+ return sort.direction === 'asc' ? -1 : 1;
217
207
  } else {
218
208
  return 0;
219
209
  }
@@ -244,7 +234,7 @@ var Table = function Table(props) {
244
234
 
245
235
  setCurrentPageRows(tmpFilteredRows.slice(rowsFrom, rowsTo));
246
236
  }
247
- }, [rowsPerPage, rows, currentPage, columns, sortedColumn, sortedDirection, remoteOperations]);
237
+ }, [rowsPerPage, rows, currentPage, columns, sort, remoteOperations]);
248
238
  /**
249
239
  * Applies a specific sorting to a column.
250
240
  * If no sorting exists, then applies ascending initially
@@ -252,51 +242,27 @@ var Table = function Table(props) {
252
242
  */
253
243
 
254
244
  var sortTableColumn = function sortTableColumn(column) {
255
- // Let's remove any active sorting
256
- columns = columns.map(function (tmpColumn) {
257
- // Let's apply new sorting
258
- // Let's check if it is the column for which we have to apply sorting
259
- if (column.key === tmpColumn.key && tmpColumn.sortable) {
260
- // Let's check if sorting is not defined
261
- // If so, let's toggle the sorting direction
262
- if (tmpColumn.sortingDirection !== undefined) {
263
- if (tmpColumn.sortingDirection === 'asc') {
264
- tmpColumn.sortingDirection = 'desc'; // Update sorted column and direction
265
-
266
- setSortedColumn(column.key);
267
- setSortedDirection('desc'); // Let's trigger remote sorting trigger function
268
-
269
- if (remoteOperations && onTriggerSortingChange) {
270
- onTriggerSortingChange(column.key, 'desc');
271
- }
272
- } else {
273
- tmpColumn.sortingDirection = 'asc'; // Update sorted column and direction
274
-
275
- setSortedColumn(column.key);
276
- setSortedDirection('asc'); // Let's trigger remote sorting trigger function
277
-
278
- if (remoteOperations && onTriggerSortingChange) {
279
- onTriggerSortingChange(column.key, 'asc');
280
- }
281
- }
282
- } else {
283
- // Let's apply the initial sorting
284
- tmpColumn.sortingDirection = 'asc'; // Update sorted column and direction
245
+ var columnKey = '';
246
+ var sortDirection = undefined;
285
247
 
286
- setSortedColumn(column.key);
287
- setSortedDirection('asc'); // Let's trigger remote sorting trigger function
288
-
289
- if (remoteOperations && onTriggerSortingChange) {
290
- onTriggerSortingChange(column.key, 'asc');
291
- }
292
- }
293
- } else if (tmpColumn.sortingDirection !== undefined) {
294
- // Let's remove sorting
295
- tmpColumn.sortingDirection = undefined;
248
+ if ((sort === null || sort === void 0 ? void 0 : sort.column) !== column.key) {
249
+ columnKey = column.key;
250
+ sortDirection = 'asc';
251
+ } else {
252
+ if ((sort === null || sort === void 0 ? void 0 : sort.direction) === 'desc') {
253
+ columnKey = '';
254
+ sortDirection = undefined;
255
+ } else {
256
+ columnKey = sort.column;
257
+ sortDirection = sort.direction === 'asc' ? 'desc' : 'asc';
296
258
  }
259
+ }
297
260
 
298
- return tmpColumn;
261
+ if (columnKey == '') setSort(undefined);else setSort({
262
+ column: columnKey,
263
+ direction: sortDirection
299
264
  });
265
+ remoteOperations && onTriggerSortingChange && onTriggerSortingChange(columnKey, sortDirection);
300
266
  };
301
267
  /**
302
268
  * Navigates user back to the previous page and updates the current table page.
@@ -424,6 +390,7 @@ var Table = function Table(props) {
424
390
  onRowClick: onRowClick,
425
391
  sortByColumn: sortTableColumn,
426
392
  onSelectAllClick: onSelectAllClick,
393
+ sortProps: sort,
427
394
  selectAllState: selectAllState
428
395
  })), /*#__PURE__*/_jsx(TableFooter, _objectSpread(_objectSpread({}, props), {}, {
429
396
  onRowsPerPageChange: changeRowsPerPage,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Table/Table.tsx"],"names":["React","Size","StyledTableSpinner","TableWrapper","LoadingIndicator","TableHeader","TableFooter","TableBody","Table","props","onPreviousPageClick","onNextPageClick","onRowsPerPageChange","onTriggerSortingChange","columns","rows","remoteOperations","pagination","showLoadingIndicator","selectable","multiSelect","keyExpr","accordion","collapsed","collapsedRows","rowsPerPageLabel","useState","rowsPerPage","setRowsPerPage","filteredRows","setFilteredRows","currentPageRows","setCurrentPageRows","currentPage","setCurrentPage","sortedColumn","setSortedColumn","sortedDirection","setSortedDirection","from","setFrom","to","setTo","total","setTotal","isCollapsed","setIsCollapsed","selectAllState","setSelectAllState","undefined","selected","setSelected","useEffect","selectedRows","currentList","map","row","count","filter","item","includes","length","filterAndSortRows","tmpFilteredRows","matchFilterCriteria","column","filterValue","key","toLowerCase","indexOf","some","sortingDirection","sortingColumn","find","sort","a","b","rowsFrom","rowsTo","slice","sortTableColumn","tmpColumn","sortable","previousPage","nextPage","changeRowsPerPage","value","onRowClick","selectedText","window","getSelection","toString","currentSelection","existing","splice","onSelectionChange","onSelectAllClick","Medium"],"mappings":"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","sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport {Size} from '../types'\n\n/**\n * Import custom styles.\n */\nimport {StyledTable, StyledTableSpinner, TableWrapper} from './TableStyles';\n\n/**\n * Import custom types.\n */\nimport {TableProps, TableColumn, TableSortingDirection} from './TableTypes';\nimport {LoadingIndicator} from '../LoadingIndicator';\nimport TableHeader from './TableHeaders';\nimport TableFooter from './TableFooter';\nimport TableBody from './TableBody';\n\nconst Table: React.FunctionComponent<TableProps> = (props: TableProps) => {\n let {\n onPreviousPageClick,\n onNextPageClick,\n onRowsPerPageChange,\n onTriggerSortingChange,\n columns,\n rows,\n remoteOperations,\n pagination,\n showLoadingIndicator,\n selectable,\n multiSelect,\n keyExpr,\n accordion,\n collapsed = true,\n collapsedRows,\n rowsPerPageLabel\n } = props;\n\n // States used within the component\n const [rowsPerPage, setRowsPerPage] = React.useState<number>(10);\n const [filteredRows, setFilteredRows] = React.useState<any[]>([]);\n const [currentPageRows, setCurrentPageRows] = React.useState<any[]>([]);\n const [currentPage, setCurrentPage] = React.useState<number>(1);\n const [sortedColumn, setSortedColumn] = React.useState<string>('');\n const [sortedDirection, setSortedDirection] = React.useState<TableSortingDirection>('asc');\n const [from, setFrom] = React.useState<number>();\n const [to, setTo] = React.useState<number>();\n const [total, setTotal] = React.useState<number>();\n\n const [isCollapsed, setIsCollapsed] = React.useState(true);\n\n const [selectAllState, setSelectAllState] = React.useState<'all' | 'some' | 'none'>('none');\n\n const [selected, setSelected] = React.useState<any | any[]>(multiSelect ? [] : undefined);\n\n React.useEffect(() => {\n setSelected(props.selectedRows || (multiSelect ? [] : undefined))\n }, [props.selectedRows, multiSelect])\n\n /**\n * update select all checkbox state\n */\n React.useEffect(() => {\n if (multiSelect) {\n const currentList = currentPageRows.map(row => keyExpr ? row[keyExpr] : row);\n const count = selected.filter((item: any) => currentList.includes(item)).length;\n\n setSelectAllState(count === currentList.length ? 'all' : count > 0 ? 'some' : 'none');\n }\n }, [currentPageRows, multiSelect, selected, keyExpr])\n\n /**\n * Takes care of remote pagination.\n * Works only in case remote pagination is set to true.\n */\n React.useEffect(() => {\n if (remoteOperations) {\n setCurrentPageRows(rows);\n\n // Let's assign pagination values\n setFrom(pagination?.from);\n setTo(pagination?.to);\n setTotal(pagination?.total);\n setCurrentPage(pagination?.currentPage!);\n setRowsPerPage(pagination?.rowsPerPage!);\n }\n }, [remoteOperations, pagination, rows]);\n\n /**\n * Sets number of rows to display when accordion.\n */\n React.useEffect(() => {\n if (!accordion) return;\n\n setRowsPerPage(isCollapsed ? collapsedRows || 10 : rows.length);\n }, [rows, accordion, collapsedRows, isCollapsed])\n\n React.useEffect(() => {\n if (!accordion) return;\n\n setIsCollapsed(!!collapsed);\n }, [accordion, collapsed])\n\n /**\n * Filters out a rows by specific column filters and sorts them if any sorting is set.\n * @returns Filtered and sorted rows.\n */\n const filterAndSortRows = (): any[] => {\n let tmpFilteredRows = rows.filter((row) => {\n // Let's start with matched filter criteria\n let matchFilterCriteria = true;\n\n // Let's go through columns\n for (const column of columns) {\n // Let's check if filter value is specified for the column\n // And if it doesn't match the current row column value\n // Then let's update match filter criteria to failed\n if (column.filterValue && row[column.key].toLowerCase().indexOf(column.filterValue.toLowerCase()) === -1) {\n matchFilterCriteria = false;\n }\n }\n\n // Let's return row only in case match filter criteria succeeds\n if (matchFilterCriteria) {\n return row;\n }\n });\n\n // Let's apply sorting if needed\n if (columns.some((column) => column.sortingDirection)) {\n // Let's find the sorting column\n const sortingColumn = columns.find((column) => column.sortingDirection)!;\n\n // Update sorted column data\n setSortedDirection(sortingColumn.sortingDirection!);\n setSortedColumn(sortingColumn.key!);\n\n // Let's sort the rows\n tmpFilteredRows.sort((a, b) => {\n if (a[sortingColumn.key] > b[sortingColumn.key]) {\n return sortingColumn.sortingDirection === 'asc' ? 1 : -1;\n } else if (a[sortingColumn.key] < b[sortingColumn.key]) {\n return sortingColumn.sortingDirection === 'asc' ? -1 : 1;\n } else {\n return 0;\n }\n });\n }\n\n // Let's return filtered rows\n return tmpFilteredRows;\n };\n\n /**\n * Takes care of local pagination.\n * Works only in case remote pagination is not defined or is set to false.\n */\n React.useEffect(() => {\n if (!remoteOperations) {\n // Let's retrieve temporary filtered rows and update globally filtered rows\n const tmpFilteredRows = filterAndSortRows();\n setFilteredRows(tmpFilteredRows);\n setTotal(tmpFilteredRows.length);\n\n // Assign rows from and rows to\n const rowsFrom = (currentPage - 1) * rowsPerPage;\n const rowsTo = rowsFrom + rowsPerPage >= tmpFilteredRows.length ? tmpFilteredRows.length : rowsFrom + rowsPerPage;\n\n // Set from and to values\n setFrom(rowsFrom + 1);\n setTo(rowsTo);\n\n // Filter out the rows\n setCurrentPageRows(tmpFilteredRows.slice(rowsFrom, rowsTo));\n }\n }, [rowsPerPage, rows, currentPage, columns, sortedColumn, sortedDirection, remoteOperations]);\n\n\n /**\n * Applies a specific sorting to a column.\n * If no sorting exists, then applies ascending initially\n * @param column - Column to which sorting should be applied.\n */\n const sortTableColumn = (column: TableColumn): void => {\n // Let's remove any active sorting\n columns = columns.map((tmpColumn: TableColumn) => {\n // Let's apply new sorting\n // Let's check if it is the column for which we have to apply sorting\n if (column.key === tmpColumn.key && tmpColumn.sortable) {\n // Let's check if sorting is not defined\n // If so, let's toggle the sorting direction\n if (tmpColumn.sortingDirection !== undefined) {\n if (tmpColumn.sortingDirection === 'asc') {\n tmpColumn.sortingDirection = 'desc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('desc');\n\n // Let's trigger remote sorting trigger function\n if (remoteOperations && onTriggerSortingChange) {\n onTriggerSortingChange(column.key, 'desc');\n }\n } else {\n tmpColumn.sortingDirection = 'asc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('asc');\n\n // Let's trigger remote sorting trigger function\n if (remoteOperations && onTriggerSortingChange) {\n onTriggerSortingChange(column.key, 'asc');\n }\n }\n } else {\n // Let's apply the initial sorting\n tmpColumn.sortingDirection = 'asc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('asc');\n\n // Let's trigger remote sorting trigger function\n if (remoteOperations && onTriggerSortingChange) {\n onTriggerSortingChange(column.key, 'asc');\n }\n }\n } else if (tmpColumn.sortingDirection !== undefined) {\n // Let's remove sorting\n tmpColumn.sortingDirection = undefined;\n }\n\n return tmpColumn;\n });\n };\n\n /**\n * Navigates user back to the previous page and updates the current table page.\n */\n const previousPage = () => {\n if (remoteOperations) {\n // Let's inform parent component about page change\n if (onPreviousPageClick) {\n onPreviousPageClick();\n }\n } else {\n // Let's change the page within the component\n setCurrentPage(currentPage > 1 ? currentPage - 1 : 1);\n }\n };\n\n /**\n * Navigates user to the next page and updates the current table page.\n */\n const nextPage = () => {\n if (remoteOperations) {\n // Let's inform parent component about page change\n if (onNextPageClick) {\n onNextPageClick();\n }\n } else {\n // Let's change the page within the component\n setCurrentPage(currentPage * rowsPerPage >= filteredRows.length ? currentPage : currentPage + 1);\n }\n };\n\n /**\n * Updates the rows per page value and refreshes the table content accordingly.\n * @param value - Newly selected rows per page value.\n */\n const changeRowsPerPage = (value: number) => {\n // Let's check if we are using remote pagination\n if (remoteOperations) {\n // Inform parent component about rows per page change\n if (onRowsPerPageChange) {\n onRowsPerPageChange(value);\n }\n } else {\n // Let's reset current page to 1\n setCurrentPage(1);\n }\n\n // Let's set rows per page\n setRowsPerPage(value);\n };\n\n\n /**\n * Function which is called when a mouse click happens on a row to pass data to the parent component.\n * @param row - Row in which the link is located.\n */\n const onRowClick = (row: any): void => {\n const selectedText = window?.getSelection()?.toString();\n\n if (selectedText?.length === 0 && selectable) {\n const value = keyExpr ? row[keyExpr] : row;\n let currentSelection = value;\n if (!!multiSelect) {\n const existing = selected?.indexOf(value);\n if (existing > -1) {\n currentSelection = [...selected];\n currentSelection.splice(existing, 1);\n } else {\n currentSelection = [...selected, currentSelection];\n }\n }\n\n setSelected(currentSelection)\n props.onSelectionChange && props.onSelectionChange(currentSelection);\n }\n };\n\n /**\n * Function which is called when user clicks checkbox to select or deselect all rows.\n */\n const onSelectAllClick = () => {\n const currentList = currentPageRows.map(row => keyExpr ? row[keyExpr] : row);\n\n switch (selectAllState) {\n case 'all':\n setSelected([...selected].filter(item => !currentList.includes(item)));\n setSelectAllState('none');\n break;\n case 'none':\n setSelected([...selected, ...currentList]);\n setSelectAllState('all');\n break;\n case 'some':\n setSelected([...selected, ...currentList.filter(item => !selected.includes(item))]);\n setSelectAllState('all');\n break;\n }\n };\n\n /**\n * Return Table component.\n */\n return (\n <TableWrapper>\n <TableHeader {...props}/>\n <TableBody {...props}\n currentPageRows={currentPageRows}\n selected={selected}\n onRowClick={onRowClick}\n sortByColumn={sortTableColumn}\n onSelectAllClick={onSelectAllClick}\n selectAllState={selectAllState}/>\n <TableFooter {...props}\n onRowsPerPageChange={changeRowsPerPage}\n rowsPerPage={rowsPerPage}\n setIsCollapsed={setIsCollapsed}\n isCollapsed={isCollapsed}\n from={from}\n to={to}\n total={total}\n nextPage={nextPage}\n prevPage={previousPage}/>\n {showLoadingIndicator && (\n <StyledTableSpinner>\n <LoadingIndicator size={Size.Medium}/>\n </StyledTableSpinner>\n )}\n </TableWrapper>\n );\n};\n\nexport default Table;\n"],"file":"Table.js"}
1
+ {"version":3,"file":"Table.js","names":["React","Size","StyledTableSpinner","TableWrapper","LoadingIndicator","TableHeader","TableFooter","TableBody","Table","props","onPreviousPageClick","onNextPageClick","onRowsPerPageChange","onTriggerSortingChange","columns","rows","remoteOperations","pagination","showLoadingIndicator","selectable","multiSelect","keyExpr","sortProps","accordion","collapsed","collapsedRows","rowsPerPageLabel","useState","rowsPerPage","setRowsPerPage","filteredRows","setFilteredRows","currentPageRows","setCurrentPageRows","currentPage","setCurrentPage","sort","setSort","from","setFrom","to","setTo","total","setTotal","isCollapsed","setIsCollapsed","selectAllState","setSelectAllState","undefined","selected","setSelected","useEffect","selectedRows","currentList","map","row","count","filter","item","includes","length","filterAndSortRows","tmpFilteredRows","matchFilterCriteria","column","filterValue","key","toLowerCase","indexOf","direction","a","b","rowsFrom","rowsTo","slice","sortTableColumn","columnKey","sortDirection","previousPage","nextPage","changeRowsPerPage","value","onRowClick","selectedText","window","getSelection","toString","currentSelection","existing","splice","onSelectionChange","onSelectAllClick","Medium"],"sources":["../../src/Table/Table.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport {Size} from '../types'\n\n/**\n * Import custom styles.\n */\nimport {StyledTable, StyledTableSpinner, TableWrapper} from './TableStyles';\n\n/**\n * Import custom types.\n */\nimport {TableProps, TableColumn, TableSortingDirection, TableSortProps} from './TableTypes';\nimport {LoadingIndicator} from '../LoadingIndicator';\nimport TableHeader from './TableHeaders';\nimport TableFooter from './TableFooter';\nimport TableBody from './TableBody';\n\nconst Table: React.FunctionComponent<TableProps> = (props: TableProps) => {\n let {\n onPreviousPageClick,\n onNextPageClick,\n onRowsPerPageChange,\n onTriggerSortingChange,\n columns,\n rows,\n remoteOperations,\n pagination,\n showLoadingIndicator,\n selectable,\n multiSelect,\n keyExpr,\n sortProps,\n accordion,\n collapsed = true,\n collapsedRows,\n rowsPerPageLabel\n } = props;\n\n // States used within the component\n const [rowsPerPage, setRowsPerPage] = React.useState<number>(10);\n const [filteredRows, setFilteredRows] = React.useState<any[]>([]);\n const [currentPageRows, setCurrentPageRows] = React.useState<any[]>([]);\n const [currentPage, setCurrentPage] = React.useState<number>(1);\n const [sort, setSort] = React.useState<TableSortProps | undefined>(sortProps);\n const [from, setFrom] = React.useState<number>();\n const [to, setTo] = React.useState<number>();\n const [total, setTotal] = React.useState<number>();\n\n const [isCollapsed, setIsCollapsed] = React.useState(true);\n\n const [selectAllState, setSelectAllState] = React.useState<'all' | 'some' | 'none'>('none');\n\n const [selected, setSelected] = React.useState<any | any[]>(multiSelect ? [] : undefined);\n\n React.useEffect(() => {\n setSort(sortProps);\n }, [sortProps])\n\n React.useEffect(() => {\n setSelected(props.selectedRows || (multiSelect ? [] : undefined))\n }, [props.selectedRows, multiSelect])\n\n /**\n * update select all checkbox state\n */\n React.useEffect(() => {\n if (multiSelect) {\n const currentList = currentPageRows.map(row => keyExpr ? row[keyExpr] : row);\n const count = selected.filter((item: any) => currentList.includes(item)).length;\n\n setSelectAllState(count === currentList.length ? 'all' : count > 0 ? 'some' : 'none');\n }\n }, [currentPageRows, multiSelect, selected, keyExpr])\n\n /**\n * Takes care of remote pagination.\n * Works only in case remote pagination is set to true.\n */\n React.useEffect(() => {\n if (remoteOperations) {\n setCurrentPageRows(rows);\n\n // Let's assign pagination values\n setFrom(pagination?.from);\n setTo(pagination?.to);\n setTotal(pagination?.total);\n setCurrentPage(pagination?.currentPage!);\n setRowsPerPage(pagination?.rowsPerPage!);\n }\n }, [remoteOperations, pagination, rows]);\n\n /**\n * Sets number of rows to display when accordion.\n */\n React.useEffect(() => {\n if (!accordion) return;\n\n setRowsPerPage(isCollapsed ? collapsedRows || 10 : rows.length);\n }, [rows, accordion, collapsedRows, isCollapsed])\n\n React.useEffect(() => {\n if (!accordion) return;\n\n setIsCollapsed(!!collapsed);\n }, [accordion, collapsed])\n\n /**\n * Filters out a rows by specific column filters and sorts them if any sorting is set.\n * @returns Filtered and sorted rows.\n */\n const filterAndSortRows = (): any[] => {\n let tmpFilteredRows = rows.filter((row) => {\n // Let's start with matched filter criteria\n let matchFilterCriteria = true;\n\n // Let's go through columns\n for (const column of columns) {\n // Let's check if filter value is specified for the column\n // And if it doesn't match the current row column value\n // Then let's update match filter criteria to failed\n if (column.filterValue && row[column.key].toLowerCase().indexOf(column.filterValue.toLowerCase()) === -1) {\n matchFilterCriteria = false;\n }\n }\n\n // Let's return row only in case match filter criteria succeeds\n if (matchFilterCriteria) {\n return row;\n }\n });\n\n // Let's apply sorting if needed\n if (!!sort?.column && !!sort?.direction) {\n // Let's sort the rows\n tmpFilteredRows.sort((a, b) => {\n if (a[sort.column!] > b[sort.column!]) {\n return sort.direction! === 'asc' ? 1 : -1;\n } else if (a[sort.column!] < b[sort.column!]) {\n return sort.direction! === 'asc' ? -1 : 1;\n } else {\n return 0;\n }\n });\n }\n\n // Let's return filtered rows\n return tmpFilteredRows;\n };\n\n /**\n * Takes care of local pagination.\n * Works only in case remote pagination is not defined or is set to false.\n */\n React.useEffect(() => {\n if (!remoteOperations) {\n // Let's retrieve temporary filtered rows and update globally filtered rows\n const tmpFilteredRows = filterAndSortRows();\n setFilteredRows(tmpFilteredRows);\n setTotal(tmpFilteredRows.length);\n\n // Assign rows from and rows to\n const rowsFrom = (currentPage - 1) * rowsPerPage;\n const rowsTo = rowsFrom + rowsPerPage >= tmpFilteredRows.length ? tmpFilteredRows.length : rowsFrom + rowsPerPage;\n\n // Set from and to values\n setFrom(rowsFrom + 1);\n setTo(rowsTo);\n\n // Filter out the rows\n setCurrentPageRows(tmpFilteredRows.slice(rowsFrom, rowsTo));\n }\n }, [rowsPerPage, rows, currentPage, columns, sort, remoteOperations]);\n\n\n /**\n * Applies a specific sorting to a column.\n * If no sorting exists, then applies ascending initially\n * @param column - Column to which sorting should be applied.\n */\n const sortTableColumn = (column: TableColumn): void => {\n let columnKey = '';\n let sortDirection: TableSortingDirection | undefined = undefined;\n\n if (sort?.column !== column.key) {\n columnKey = column.key;\n sortDirection = 'asc';\n } else {\n if (sort?.direction === 'desc') {\n columnKey = '';\n sortDirection = undefined;\n } else {\n columnKey = sort.column;\n sortDirection = sort.direction === 'asc' ? 'desc' : 'asc';\n }\n }\n\n if(columnKey == '')\n setSort(undefined);\n else\n setSort({column: columnKey, direction: sortDirection!});\n\n remoteOperations && onTriggerSortingChange && onTriggerSortingChange(columnKey, sortDirection);\n };\n\n /**\n * Navigates user back to the previous page and updates the current table page.\n */\n const previousPage = () => {\n if (remoteOperations) {\n // Let's inform parent component about page change\n if (onPreviousPageClick) {\n onPreviousPageClick();\n }\n } else {\n // Let's change the page within the component\n setCurrentPage(currentPage > 1 ? currentPage - 1 : 1);\n }\n };\n\n /**\n * Navigates user to the next page and updates the current table page.\n */\n const nextPage = () => {\n if (remoteOperations) {\n // Let's inform parent component about page change\n if (onNextPageClick) {\n onNextPageClick();\n }\n } else {\n // Let's change the page within the component\n setCurrentPage(currentPage * rowsPerPage >= filteredRows.length ? currentPage : currentPage + 1);\n }\n };\n\n /**\n * Updates the rows per page value and refreshes the table content accordingly.\n * @param value - Newly selected rows per page value.\n */\n const changeRowsPerPage = (value: number) => {\n // Let's check if we are using remote pagination\n if (remoteOperations) {\n // Inform parent component about rows per page change\n if (onRowsPerPageChange) {\n onRowsPerPageChange(value);\n }\n } else {\n // Let's reset current page to 1\n setCurrentPage(1);\n }\n\n // Let's set rows per page\n setRowsPerPage(value);\n };\n\n\n /**\n * Function which is called when a mouse click happens on a row to pass data to the parent component.\n * @param row - Row in which the link is located.\n */\n const onRowClick = (row: any): void => {\n const selectedText = window?.getSelection()?.toString();\n\n if (selectedText?.length === 0 && selectable) {\n const value = keyExpr ? row[keyExpr] : row;\n let currentSelection = value;\n if (!!multiSelect) {\n const existing = selected?.indexOf(value);\n if (existing > -1) {\n currentSelection = [...selected];\n currentSelection.splice(existing, 1);\n } else {\n currentSelection = [...selected, currentSelection];\n }\n }\n\n setSelected(currentSelection)\n props.onSelectionChange && props.onSelectionChange(currentSelection);\n }\n };\n\n /**\n * Function which is called when user clicks checkbox to select or deselect all rows.\n */\n const onSelectAllClick = () => {\n const currentList = currentPageRows.map(row => keyExpr ? row[keyExpr] : row);\n\n switch (selectAllState) {\n case 'all':\n setSelected([...selected].filter(item => !currentList.includes(item)));\n setSelectAllState('none');\n break;\n case 'none':\n setSelected([...selected, ...currentList]);\n setSelectAllState('all');\n break;\n case 'some':\n setSelected([...selected, ...currentList.filter(item => !selected.includes(item))]);\n setSelectAllState('all');\n break;\n }\n };\n\n /**\n * Return Table component.\n */\n return (\n <TableWrapper>\n <TableHeader {...props}/>\n <TableBody {...props}\n currentPageRows={currentPageRows}\n selected={selected}\n onRowClick={onRowClick}\n sortByColumn={sortTableColumn}\n onSelectAllClick={onSelectAllClick}\n sortProps={sort}\n selectAllState={selectAllState}/>\n <TableFooter {...props}\n onRowsPerPageChange={changeRowsPerPage}\n rowsPerPage={rowsPerPage}\n setIsCollapsed={setIsCollapsed}\n isCollapsed={isCollapsed}\n from={from}\n to={to}\n total={total}\n nextPage={nextPage}\n prevPage={previousPage}/>\n {showLoadingIndicator && (\n <StyledTableSpinner>\n <LoadingIndicator size={Size.Medium}/>\n </StyledTableSpinner>\n )}\n </TableWrapper>\n );\n};\n\nexport default Table;\n"],"mappings":"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"}
@@ -41,9 +41,9 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
41
41
 
42
42
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
43
43
 
44
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
44
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
45
45
 
46
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
46
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
47
47
 
48
48
  var TableBody = function TableBody(props) {
49
49
  var _props$noRowsLabel;
@@ -182,29 +182,33 @@ var TableBody = function TableBody(props) {
182
182
  })
183
183
  })
184
184
  }), props.columns.map(function (column) {
185
+ var _props$sortProps, _props$sortProps2, _props$sortProps3, _props$sortProps4;
186
+
185
187
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TableStyles.StyledTableHeaderColumn, {
186
188
  onMouseDown: _common.defaultOnMouseDownHandler,
187
189
  onClick: function onClick(e) {
188
- return props.sortByColumn(column);
190
+ return column.sortable && props.sortByColumn(column);
189
191
  },
190
192
  onKeyPress: function onKeyPress(e) {
191
- if (e.key === 'Enter') {
192
- props.sortByColumn(column);
193
+ if (e.key === 'Enter' || e.key === ' ') {
194
+ column.sortable && props.sortByColumn(column);
193
195
  }
194
196
  },
195
197
  style: {
196
198
  width: column.width
197
199
  },
198
200
  tabIndex: column.sortable && !props.showLoadingIndicator ? 0 : -1,
199
- className: "".concat(!!column.sortable ? 'sortable' : '', " ").concat(!!column.sortable && !!column.sortingDirection ? 'sorted' : ''),
201
+ className: "".concat(!!column.sortable ? 'sortable' : '', " ").concat(column.key === ((_props$sortProps = props.sortProps) === null || _props$sortProps === void 0 ? void 0 : _props$sortProps.column) && !!((_props$sortProps2 = props.sortProps) !== null && _props$sortProps2 !== void 0 && _props$sortProps2.direction) ? 'sorted' : '', " ").concat(column.justify || ''),
200
202
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_TableStyles.StyledTableHeaderColumnContent, {
201
203
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
202
204
  children: column.name
203
- }), column.sortable && (column.sortingDirection === 'asc' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowLineUp, {
204
- size: '24px'
205
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowLineDown, {
206
- size: '24px'
207
- }))]
205
+ }), column.key === ((_props$sortProps3 = props.sortProps) === null || _props$sortProps3 === void 0 ? void 0 : _props$sortProps3.column) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_TableStyles.StyledTableHeaderColumnSortDirection, {
206
+ children: ((_props$sortProps4 = props.sortProps) === null || _props$sortProps4 === void 0 ? void 0 : _props$sortProps4.direction) === 'asc' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowLineUp, {
207
+ size: '24px'
208
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowLineDown, {
209
+ size: '24px'
210
+ })
211
+ })]
208
212
  })
209
213
  }, column.key);
210
214
  })]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Table/TableBody.tsx"],"names":["TableBody","props","updateOnResize","scrollContainerRef","dimensions","node","React","useState","scrollable","setScrollable","useEffect","clientWidth","scrollWidth","columns","rows","renderCellBody","column","row","type","tmp","variant","href","tabIndex","showLoadingIndicator","additionalProps","colorFn","color","key","e","preventDefault","stopPropagation","action","iconColor","shape","useTransparentBackground","icon","size","Size","Small","customContent","isSelected","multiSelect","selected","indexOf","keyExpr","layout","selectAllState","onSelectAllClick","map","defaultOnMouseDownHandler","sortByColumn","width","sortable","sortingDirection","name","currentPageRows","length","index","selectable","onRowClick","undefined","maxWidth","shortenText","justify","noRowsLabel"],"mappings":"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","sourcesContent":["import {TableColumn, TableProps} from './TableTypes';\nimport {Button} from '../Button';\nimport {Size} from '../types';\nimport * as React from 'react';\nimport {Checkbox} from '../InputFields';\nimport {ButtonProps} from '../Button/Button';\nimport IconButton, {IconButtonProps} from '../Button/Iconbutton';\nimport {HyperlinkProps} from '../HyperLink/HyperLink';\nimport {HyperLink} from '../HyperLink';\nimport {\n StyledTableBody,\n StyledTableBodyRow,\n StyledTableCell,\n StyledTableCellContent,\n StyledTableCellIcon,\n StyledTableCellText,\n StyledTableHeaderColumn,\n StyledTableHeaderColumnContent,\n StyledTableHeaderColumns,\n StyledTableNoRowsLabelRow,\n StyledTable, StyledTableBodyWrapper, StyledTableHeaderRow,\n} from './TableStyles';\nimport {defaultOnMouseDownHandler} from '../common';\nimport {ArrowLineDown, ArrowLineUp} from \"../icons/systemicons/SystemIcons\";\nimport {useDimensionsRef} from \"rooks\";\n\n\ninterface TableBodyProps extends TableProps {\n currentPageRows: any[];\n onRowClick?: (row: any) => void;\n selected?: any | any[];\n sortByColumn: (column: TableColumn) => void;\n onSelectAllClick: () => void;\n selectAllState: 'all' | 'some' | 'none';\n}\n\nconst TableBody: React.FC<TableBodyProps> = (props) => {\n\n const [scrollContainerRef, dimensions, node] = useDimensionsRef({updateOnResize: true});\n const [scrollable, setScrollable] = React.useState(false);\n\n React.useEffect(() => {\n const clientWidth = node?.clientWidth ?? 0;\n const scrollWidth = node?.scrollWidth ?? 0;\n setScrollable(scrollWidth > clientWidth);\n }, [dimensions, node, props.columns, props.rows]);\n\n\n const renderCellBody = (column: TableColumn, row: any) => {\n switch (column.type) {\n case 'link': {\n const tmp = ({\n variant: 'default',\n href: '#',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps\n }) as HyperlinkProps;\n return (\n <HyperLink style={column.colorFn && {color: column.colorFn(row, column.key)}}\n {...tmp}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </HyperLink>\n );\n }\n case 'icon': {\n const tmp = ({\n iconColor: column.colorFn && column.colorFn(row, column.key),\n variant: 'secondary',\n shape: 'circular',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n useTransparentBackground: true,\n ...column.additionalProps\n }) as IconButtonProps;\n return <IconButton {...tmp}\n action={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {column.icon}\n </IconButton>\n }\n case 'button': {\n const tmp = ({\n variant: 'tertiary',\n size: Size.Small,\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps\n }) as ButtonProps;\n return <Button style={column.colorFn && {color: column.colorFn(row, column.key)}}\n {...tmp}\n onClick={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </Button>\n }\n case 'boolean':\n return <Checkbox selected={!!row[column.key]} readOnly={true}/>;\n case 'custom':\n return column.customContent && column.customContent(row, column.key);\n case 'number':\n case 'text':\n default:\n return (\n <>\n {\n column.icon &&\n <StyledTableCellIcon>{column.icon}</StyledTableCellIcon>\n }\n <StyledTableCellText>{row[column.key]}</StyledTableCellText>\n </>\n );\n }\n }\n\n const isSelected = (row: any) => {\n return (props.multiSelect && props.selected?.indexOf(props.keyExpr ? row[props.keyExpr] : row) > -1) ||\n (!props.multiSelect && props.selected === (props.keyExpr ? row[props.keyExpr] : row));\n }\n\n return (\n <StyledTableBodyWrapper ref={scrollContainerRef as any} className={scrollable ? 'scrollable' : ''}>\n <StyledTable cellPadding=\"0\" cellSpacing=\"0\" data-testid=\"TestTable\" className={`table ${props.layout || ''}`}>\n <StyledTableHeaderRow>\n <StyledTableHeaderColumns data-testid=\"TestTableColumnHeaderRow\">\n {\n props.multiSelect &&\n <StyledTableHeaderColumn>\n <StyledTableHeaderColumnContent>\n <Checkbox selected={props.selectAllState === 'all'}\n disabled={props.showLoadingIndicator}\n semiSelected={props.selectAllState === 'some'}\n select={props.onSelectAllClick}/>\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n }\n {props.columns.map((column: TableColumn) => (\n <StyledTableHeaderColumn key={column.key}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={(e) => props.sortByColumn(column)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.sortByColumn(column)\n }\n }}\n style={{width: column.width}}\n tabIndex={column.sortable && !props.showLoadingIndicator ? 0 : -1}\n className={`${!!column.sortable ? 'sortable' : ''} ${!!column.sortable && !!column.sortingDirection ? 'sorted' : ''}`}>\n <StyledTableHeaderColumnContent>\n <span>\n {column.name}\n </span>\n {\n column.sortable &&\n (\n column.sortingDirection === 'asc'\n ? <ArrowLineUp size={'24px'}/>\n : <ArrowLineDown size={'24px'}/>\n )\n }\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n ))}\n </StyledTableHeaderColumns>\n </StyledTableHeaderRow>\n <StyledTableBody>\n {props.currentPageRows.length > 0 ? (\n props.currentPageRows.map((row: any, index: number) => (\n <StyledTableBodyRow key={`row_${index}`}\n className={`${props.selectable ? 'selectable' : ''} ${isSelected(row) ? 'selected' : ''}`}\n onClick={() => props.onRowClick && props.onRowClick(row)}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.onRowClick && props.onRowClick(row);\n }\n }}\n tabIndex={props.selectable && !props.showLoadingIndicator ? 0 : undefined}\n data-testid=\"TestTableDataRow\">\n {\n props.multiSelect &&\n <StyledTableCell>\n <StyledTableCellContent>\n <Checkbox selected={isSelected(row)}/>\n </StyledTableCellContent>\n </StyledTableCell>\n }\n {props.columns.map((column: TableColumn) => (\n <StyledTableCell key={`row_${index}_${column.key}`}\n style={{maxWidth: column.width}}\n title={column.shortenText && row[column.key]}>\n <StyledTableCellContent\n className={`${column.shortenText ? `truncate-text` : ''} ${column.justify || ''}`}\n style={{\n color: column.colorFn && column.colorFn(row, column.key),\n }}>\n {renderCellBody(column, row)}\n </StyledTableCellContent>\n </StyledTableCell>\n ))}\n </StyledTableBodyRow>\n ))\n ) : (\n <StyledTableNoRowsLabelRow data-testid=\"TestTableNoDataRow\">\n <StyledTableCell colSpan={props.columns.length + (props.multiSelect ? 1 : 0)}>\n <StyledTableCellContent className={'center'}>\n {props.noRowsLabel ?? 'There are no rows to display'}\n </StyledTableCellContent>\n </StyledTableCell>\n </StyledTableNoRowsLabelRow>\n )}\n\n </StyledTableBody>\n </StyledTable>\n </StyledTableBodyWrapper>\n );\n }\n;\n\nexport default TableBody;\n"],"file":"TableBody.cjs"}
1
+ {"version":3,"file":"TableBody.cjs","names":["TableBody","props","useDimensionsRef","updateOnResize","scrollContainerRef","dimensions","node","React","useState","scrollable","setScrollable","useEffect","clientWidth","scrollWidth","columns","rows","renderCellBody","column","row","type","tmp","variant","href","tabIndex","showLoadingIndicator","additionalProps","colorFn","color","key","e","preventDefault","stopPropagation","action","iconColor","shape","useTransparentBackground","icon","size","Size","Small","customContent","isSelected","multiSelect","selected","indexOf","keyExpr","layout","selectAllState","onSelectAllClick","map","defaultOnMouseDownHandler","sortable","sortByColumn","width","sortProps","direction","justify","name","currentPageRows","length","index","selectable","onRowClick","undefined","maxWidth","shortenText","noRowsLabel"],"sources":["../../src/Table/TableBody.tsx"],"sourcesContent":["import {TableColumn, TableProps, TableSortingDirection, TableSortProps} from './TableTypes';\nimport {Button} from '../Button';\nimport {Size} from '../types';\nimport * as React from 'react';\nimport {Checkbox} from '../InputFields';\nimport {ButtonProps} from '../Button/Button';\nimport IconButton, {IconButtonProps} from '../Button/Iconbutton';\nimport {HyperlinkProps} from '../HyperLink/HyperLink';\nimport {HyperLink} from '../HyperLink';\nimport {\n StyledTableBody,\n StyledTableBodyRow,\n StyledTableCell,\n StyledTableCellContent,\n StyledTableCellIcon,\n StyledTableCellText,\n StyledTableHeaderColumn,\n StyledTableHeaderColumnContent,\n StyledTableHeaderColumns,\n StyledTableNoRowsLabelRow,\n StyledTable, StyledTableBodyWrapper, StyledTableHeaderRow, StyledTableHeaderColumnSortDirection,\n} from './TableStyles';\nimport {defaultOnMouseDownHandler} from '../common';\nimport {ArrowLineDown, ArrowLineUp} from \"../icons/systemicons/SystemIcons\";\nimport {useDimensionsRef} from \"rooks\";\n\n\ninterface TableBodyProps extends TableProps {\n currentPageRows: any[];\n onRowClick?: (row: any) => void;\n selected?: any | any[];\n sortByColumn: (column: TableColumn) => void;\n onSelectAllClick: () => void;\n selectAllState: 'all' | 'some' | 'none';\n}\n\nconst TableBody: React.FC<TableBodyProps> = (props) => {\n\n const [scrollContainerRef, dimensions, node] = useDimensionsRef({updateOnResize: true});\n const [scrollable, setScrollable] = React.useState(false);\n\n React.useEffect(() => {\n const clientWidth = node?.clientWidth ?? 0;\n const scrollWidth = node?.scrollWidth ?? 0;\n setScrollable(scrollWidth > clientWidth);\n }, [dimensions, node, props.columns, props.rows]);\n\n\n const renderCellBody = (column: TableColumn, row: any) => {\n switch (column.type) {\n case 'link': {\n const tmp = ({\n variant: 'default',\n href: '#',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps\n }) as HyperlinkProps;\n return (\n <HyperLink style={column.colorFn && {color: column.colorFn(row, column.key)}}\n {...tmp}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </HyperLink>\n );\n }\n case 'icon': {\n const tmp = ({\n iconColor: column.colorFn && column.colorFn(row, column.key),\n variant: 'secondary',\n shape: 'circular',\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n useTransparentBackground: true,\n ...column.additionalProps\n }) as IconButtonProps;\n return <IconButton {...tmp}\n action={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {column.icon}\n </IconButton>\n }\n case 'button': {\n const tmp = ({\n variant: 'tertiary',\n size: Size.Small,\n tabIndex: props.showLoadingIndicator ? -1 : 0,\n ...column.additionalProps\n }) as ButtonProps;\n return <Button style={column.colorFn && {color: column.colorFn(row, column.key)}}\n {...tmp}\n onClick={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </Button>\n }\n case 'boolean':\n return <Checkbox selected={!!row[column.key]} readOnly={true}/>;\n case 'custom':\n return column.customContent && column.customContent(row, column.key);\n case 'number':\n case 'text':\n default:\n return (\n <>\n {\n column.icon &&\n <StyledTableCellIcon>{column.icon}</StyledTableCellIcon>\n }\n <StyledTableCellText>{row[column.key]}</StyledTableCellText>\n </>\n );\n }\n }\n\n const isSelected = (row: any) => {\n return (props.multiSelect && props.selected?.indexOf(props.keyExpr ? row[props.keyExpr] : row) > -1) ||\n (!props.multiSelect && props.selected === (props.keyExpr ? row[props.keyExpr] : row));\n }\n\n return (\n <StyledTableBodyWrapper ref={scrollContainerRef as any} className={scrollable ? 'scrollable' : ''}>\n <StyledTable cellPadding=\"0\" cellSpacing=\"0\" data-testid=\"TestTable\" className={`table ${props.layout || ''}`}>\n <StyledTableHeaderRow>\n <StyledTableHeaderColumns data-testid=\"TestTableColumnHeaderRow\">\n {\n props.multiSelect &&\n <StyledTableHeaderColumn>\n <StyledTableHeaderColumnContent>\n <Checkbox selected={props.selectAllState === 'all'}\n disabled={props.showLoadingIndicator}\n semiSelected={props.selectAllState === 'some'}\n select={props.onSelectAllClick}/>\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n }\n {props.columns.map((column: TableColumn) => (\n <StyledTableHeaderColumn key={column.key}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={(e) => column.sortable && props.sortByColumn(column)}\n onKeyPress={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n column.sortable && props.sortByColumn(column)\n }\n }}\n style={{width: column.width}}\n tabIndex={column.sortable && !props.showLoadingIndicator ? 0 : -1}\n className={`${!!column.sortable ? 'sortable' : ''} ${column.key === props.sortProps?.column && !!props.sortProps?.direction ? 'sorted' : ''} ${column.justify || ''}`}>\n <StyledTableHeaderColumnContent>\n <span>\n {column.name}\n </span>\n {\n column.key === props.sortProps?.column &&\n (\n <StyledTableHeaderColumnSortDirection>\n {\n props.sortProps?.direction === 'asc'\n ? <ArrowLineUp size={'24px'}/>\n : <ArrowLineDown size={'24px'}/>\n }\n </StyledTableHeaderColumnSortDirection>\n )\n }\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n ))}\n </StyledTableHeaderColumns>\n </StyledTableHeaderRow>\n <StyledTableBody>\n {props.currentPageRows.length > 0 ? (\n props.currentPageRows.map((row: any, index: number) => (\n <StyledTableBodyRow key={`row_${index}`}\n className={`${props.selectable ? 'selectable' : ''} ${isSelected(row) ? 'selected' : ''}`}\n onClick={() => props.onRowClick && props.onRowClick(row)}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.onRowClick && props.onRowClick(row);\n }\n }}\n tabIndex={props.selectable && !props.showLoadingIndicator ? 0 : undefined}\n data-testid=\"TestTableDataRow\">\n {\n props.multiSelect &&\n <StyledTableCell>\n <StyledTableCellContent>\n <Checkbox selected={isSelected(row)}/>\n </StyledTableCellContent>\n </StyledTableCell>\n }\n {props.columns.map((column: TableColumn) => (\n <StyledTableCell key={`row_${index}_${column.key}`}\n style={{maxWidth: column.width}}\n title={column.shortenText && row[column.key]}>\n <StyledTableCellContent\n className={`${column.shortenText ? `truncate-text` : ''} ${column.justify || ''}`}\n style={{\n color: column.colorFn && column.colorFn(row, column.key),\n }}>\n {renderCellBody(column, row)}\n </StyledTableCellContent>\n </StyledTableCell>\n ))}\n </StyledTableBodyRow>\n ))\n ) : (\n <StyledTableNoRowsLabelRow data-testid=\"TestTableNoDataRow\">\n <StyledTableCell colSpan={props.columns.length + (props.multiSelect ? 1 : 0)}>\n <StyledTableCellContent className={'center'}>\n {props.noRowsLabel ?? 'There are no rows to display'}\n </StyledTableCellContent>\n </StyledTableCell>\n </StyledTableNoRowsLabelRow>\n )}\n\n </StyledTableBody>\n </StyledTable>\n </StyledTableBodyWrapper>\n );\n }\n;\n\nexport default TableBody;\n"],"mappings":"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"}
@@ -2,9 +2,9 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
2
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
3
  import _pt from "prop-types";
4
4
 
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
6
 
7
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
8
 
9
9
  import { Button } from '../Button';
10
10
  import { Size } from '../types';
@@ -12,7 +12,7 @@ import * as React from 'react';
12
12
  import { Checkbox } from '../InputFields';
13
13
  import IconButton from '../Button/Iconbutton';
14
14
  import { HyperLink } from '../HyperLink';
15
- import { StyledTableBody, StyledTableBodyRow, StyledTableCell, StyledTableCellContent, StyledTableCellIcon, StyledTableCellText, StyledTableHeaderColumn, StyledTableHeaderColumnContent, StyledTableHeaderColumns, StyledTableNoRowsLabelRow, StyledTable, StyledTableBodyWrapper, StyledTableHeaderRow } from './TableStyles';
15
+ import { StyledTableBody, StyledTableBodyRow, StyledTableCell, StyledTableCellContent, StyledTableCellIcon, StyledTableCellText, StyledTableHeaderColumn, StyledTableHeaderColumnContent, StyledTableHeaderColumns, StyledTableNoRowsLabelRow, StyledTable, StyledTableBodyWrapper, StyledTableHeaderRow, StyledTableHeaderColumnSortDirection } from './TableStyles';
16
16
  import { defaultOnMouseDownHandler } from '../common';
17
17
  import { ArrowLineDown, ArrowLineUp } from "../icons/systemicons/SystemIcons";
18
18
  import { useDimensionsRef } from "rooks";
@@ -157,29 +157,33 @@ var TableBody = function TableBody(props) {
157
157
  })
158
158
  })
159
159
  }), props.columns.map(function (column) {
160
+ var _props$sortProps, _props$sortProps2, _props$sortProps3, _props$sortProps4;
161
+
160
162
  return /*#__PURE__*/_jsx(StyledTableHeaderColumn, {
161
163
  onMouseDown: defaultOnMouseDownHandler,
162
164
  onClick: function onClick(e) {
163
- return props.sortByColumn(column);
165
+ return column.sortable && props.sortByColumn(column);
164
166
  },
165
167
  onKeyPress: function onKeyPress(e) {
166
- if (e.key === 'Enter') {
167
- props.sortByColumn(column);
168
+ if (e.key === 'Enter' || e.key === ' ') {
169
+ column.sortable && props.sortByColumn(column);
168
170
  }
169
171
  },
170
172
  style: {
171
173
  width: column.width
172
174
  },
173
175
  tabIndex: column.sortable && !props.showLoadingIndicator ? 0 : -1,
174
- className: "".concat(!!column.sortable ? 'sortable' : '', " ").concat(!!column.sortable && !!column.sortingDirection ? 'sorted' : ''),
176
+ className: "".concat(!!column.sortable ? 'sortable' : '', " ").concat(column.key === ((_props$sortProps = props.sortProps) === null || _props$sortProps === void 0 ? void 0 : _props$sortProps.column) && !!((_props$sortProps2 = props.sortProps) !== null && _props$sortProps2 !== void 0 && _props$sortProps2.direction) ? 'sorted' : '', " ").concat(column.justify || ''),
175
177
  children: /*#__PURE__*/_jsxs(StyledTableHeaderColumnContent, {
176
178
  children: [/*#__PURE__*/_jsx("span", {
177
179
  children: column.name
178
- }), column.sortable && (column.sortingDirection === 'asc' ? /*#__PURE__*/_jsx(ArrowLineUp, {
179
- size: '24px'
180
- }) : /*#__PURE__*/_jsx(ArrowLineDown, {
181
- size: '24px'
182
- }))]
180
+ }), column.key === ((_props$sortProps3 = props.sortProps) === null || _props$sortProps3 === void 0 ? void 0 : _props$sortProps3.column) && /*#__PURE__*/_jsx(StyledTableHeaderColumnSortDirection, {
181
+ children: ((_props$sortProps4 = props.sortProps) === null || _props$sortProps4 === void 0 ? void 0 : _props$sortProps4.direction) === 'asc' ? /*#__PURE__*/_jsx(ArrowLineUp, {
182
+ size: '24px'
183
+ }) : /*#__PURE__*/_jsx(ArrowLineDown, {
184
+ size: '24px'
185
+ })
186
+ })]
183
187
  })
184
188
  }, column.key);
185
189
  })]