@okta/odyssey-react-mui 1.44.0 → 1.47.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 (752) hide show
  1. package/dist/cjs/Autocomplete.cjs +3 -33
  2. package/dist/cjs/Autocomplete.cjs.map +1 -1
  3. package/dist/cjs/Banner.cjs +2 -2
  4. package/dist/cjs/Banner.cjs.map +1 -1
  5. package/dist/cjs/Breadcrumbs.cjs +2 -2
  6. package/dist/cjs/Breadcrumbs.cjs.map +1 -1
  7. package/dist/cjs/Buttons/BaseButton.cjs.map +1 -1
  8. package/dist/cjs/Callout.cjs +3 -27
  9. package/dist/cjs/Callout.cjs.map +1 -1
  10. package/dist/cjs/Card.cjs +280 -63
  11. package/dist/cjs/Card.cjs.map +1 -1
  12. package/dist/cjs/Checkbox.cjs +14 -12
  13. package/dist/cjs/Checkbox.cjs.map +1 -1
  14. package/dist/cjs/DataTable/DataTable.cjs +2 -2
  15. package/dist/cjs/DataTable/DataTable.cjs.map +1 -1
  16. package/dist/cjs/DataTable/DataTableRowActions.cjs +6 -6
  17. package/dist/cjs/DataTable/DataTableRowActions.cjs.map +1 -1
  18. package/dist/cjs/DataTable/DataTableSettings.cjs +2 -2
  19. package/dist/cjs/DataTable/DataTableSettings.cjs.map +1 -1
  20. package/dist/cjs/DataTable/useRowReordering.cjs +2 -2
  21. package/dist/cjs/DataTable/useRowReordering.cjs.map +1 -1
  22. package/dist/cjs/DatePickers/DateField.cjs +2 -2
  23. package/dist/cjs/DatePickers/DateField.cjs.map +1 -1
  24. package/dist/cjs/DatePickers/DateFieldActionBar.cjs +2 -2
  25. package/dist/cjs/DatePickers/DateFieldActionBar.cjs.map +1 -1
  26. package/dist/cjs/DatePickers/DatePicker.cjs +2 -2
  27. package/dist/cjs/DatePickers/DatePicker.cjs.map +1 -1
  28. package/dist/cjs/DatePickers/useDateFieldsTranslations.cjs +2 -2
  29. package/dist/cjs/DatePickers/useDateFieldsTranslations.cjs.map +1 -1
  30. package/dist/cjs/DatePickers/useOdysseyDateFields.cjs +2 -2
  31. package/dist/cjs/DatePickers/useOdysseyDateFields.cjs.map +1 -1
  32. package/dist/cjs/Dialog.cjs +34 -31
  33. package/dist/cjs/Dialog.cjs.map +1 -1
  34. package/dist/cjs/Drawer.cjs +8 -4
  35. package/dist/cjs/Drawer.cjs.map +1 -1
  36. package/dist/cjs/Field.cjs +2 -2
  37. package/dist/cjs/Field.cjs.map +1 -1
  38. package/dist/cjs/FieldError.cjs +2 -2
  39. package/dist/cjs/FieldError.cjs.map +1 -1
  40. package/dist/cjs/FieldLabel.cjs +2 -2
  41. package/dist/cjs/FieldLabel.cjs.map +1 -1
  42. package/dist/cjs/FileUploader/FileUploadPreview.cjs +2 -2
  43. package/dist/cjs/FileUploader/FileUploadPreview.cjs.map +1 -1
  44. package/dist/cjs/FileUploader/FileUploader.cjs +2 -2
  45. package/dist/cjs/FileUploader/FileUploader.cjs.map +1 -1
  46. package/dist/cjs/FullScreenOverlay.cjs +40 -0
  47. package/dist/cjs/FullScreenOverlay.cjs.map +1 -0
  48. package/dist/cjs/FullScreenOverlayContext.cjs +72 -0
  49. package/dist/cjs/FullScreenOverlayContext.cjs.map +1 -0
  50. package/dist/cjs/OdysseyCacheProvider.cjs +12 -17
  51. package/dist/cjs/OdysseyCacheProvider.cjs.map +1 -1
  52. package/dist/cjs/OdysseyProvider.cjs +18 -10
  53. package/dist/cjs/OdysseyProvider.cjs.map +1 -1
  54. package/dist/cjs/OdysseyThemeProvider.cjs +27 -16
  55. package/dist/cjs/OdysseyThemeProvider.cjs.map +1 -1
  56. package/dist/cjs/OdysseyThemeProviderPropsContext.cjs +44 -0
  57. package/dist/cjs/OdysseyThemeProviderPropsContext.cjs.map +1 -0
  58. package/dist/cjs/Pagination/Pagination.cjs +2 -3
  59. package/dist/cjs/Pagination/Pagination.cjs.map +1 -1
  60. package/dist/cjs/Pagination/usePagination.cjs +2 -2
  61. package/dist/cjs/Pagination/usePagination.cjs.map +1 -1
  62. package/dist/cjs/PasswordField.cjs +2 -2
  63. package/dist/cjs/PasswordField.cjs.map +1 -1
  64. package/dist/cjs/Radio.cjs +22 -20
  65. package/dist/cjs/Radio.cjs.map +1 -1
  66. package/dist/cjs/SearchField.cjs +2 -2
  67. package/dist/cjs/SearchField.cjs.map +1 -1
  68. package/dist/cjs/Select.cjs +1 -37
  69. package/dist/cjs/Select.cjs.map +1 -1
  70. package/dist/cjs/Surface.cjs +3 -3
  71. package/dist/cjs/Surface.cjs.map +1 -1
  72. package/dist/cjs/Switch.cjs +2 -2
  73. package/dist/cjs/Switch.cjs.map +1 -1
  74. package/dist/cjs/Tabs.cjs +1 -21
  75. package/dist/cjs/Tabs.cjs.map +1 -1
  76. package/dist/cjs/Tag.cjs +2 -2
  77. package/dist/cjs/Tag.cjs.map +1 -1
  78. package/dist/cjs/TextField.cjs +1 -26
  79. package/dist/cjs/TextField.cjs.map +1 -1
  80. package/dist/cjs/Toast.cjs +2 -2
  81. package/dist/cjs/Toast.cjs.map +1 -1
  82. package/dist/cjs/__internal.cjs +149 -0
  83. package/dist/cjs/__internal.cjs.map +1 -0
  84. package/dist/cjs/i18n.generated/i18n.cjs +35 -0
  85. package/dist/cjs/i18n.generated/i18n.cjs.map +1 -0
  86. package/dist/cjs/i18n.generated/i18n.resources.cjs +81 -0
  87. package/dist/cjs/i18n.generated/i18n.resources.cjs.map +1 -0
  88. package/dist/{esm/shadow-dom/index.js → cjs/i18n.generated/i18n.types.cjs} +9 -4
  89. package/dist/cjs/i18n.generated/i18n.types.cjs.map +1 -0
  90. package/dist/cjs/index.cjs +49 -30
  91. package/dist/cjs/index.cjs.map +1 -1
  92. package/dist/cjs/labs/DataFilters.cjs +4 -4
  93. package/dist/cjs/labs/DataFilters.cjs.map +1 -1
  94. package/dist/cjs/labs/DataTable.cjs +2 -2
  95. package/dist/cjs/labs/DataTable.cjs.map +1 -1
  96. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs +2 -2
  97. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs.map +1 -1
  98. package/dist/cjs/labs/DataView/CardLayoutContent.cjs +60 -44
  99. package/dist/cjs/labs/DataView/CardLayoutContent.cjs.map +1 -1
  100. package/dist/cjs/labs/DataView/DataCard.cjs +52 -181
  101. package/dist/cjs/labs/DataView/DataCard.cjs.map +1 -1
  102. package/dist/cjs/labs/DataView/DataView.cjs +2 -2
  103. package/dist/cjs/labs/DataView/DataView.cjs.map +1 -1
  104. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs +2 -2
  105. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs.map +1 -1
  106. package/dist/cjs/labs/DataView/RowActions.cjs +2 -2
  107. package/dist/cjs/labs/DataView/RowActions.cjs.map +1 -1
  108. package/dist/cjs/labs/DataView/TableLayoutContent.cjs +2 -2
  109. package/dist/cjs/labs/DataView/TableLayoutContent.cjs.map +1 -1
  110. package/dist/cjs/labs/DataView/TableSettings.cjs +2 -2
  111. package/dist/cjs/labs/DataView/TableSettings.cjs.map +1 -1
  112. package/dist/cjs/labs/DataView/componentTypes.cjs.map +1 -1
  113. package/dist/cjs/labs/DataView/fetchData.cjs +2 -2
  114. package/dist/cjs/labs/DataView/fetchData.cjs.map +1 -1
  115. package/dist/cjs/labs/DatePickers/DateTimeField.cjs +2 -2
  116. package/dist/cjs/labs/DatePickers/DateTimeField.cjs.map +1 -1
  117. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs +2 -2
  118. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs.map +1 -1
  119. package/dist/cjs/labs/DatePickers/dateTimePickerTheme.cjs +3 -3
  120. package/dist/cjs/labs/DatePickers/dateTimePickerTheme.cjs.map +1 -1
  121. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs +2 -2
  122. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs.map +1 -1
  123. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs +4 -0
  124. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs.map +1 -1
  125. package/dist/cjs/labs/OdysseyPickers/index.cjs.map +1 -1
  126. package/dist/cjs/labs/PageTemplate/Layout.cjs +2 -2
  127. package/dist/cjs/labs/PageTemplate/Layout.cjs.map +1 -1
  128. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs.map +1 -1
  129. package/dist/cjs/labs/PaginatedTable.cjs +4 -4
  130. package/dist/cjs/labs/PaginatedTable.cjs.map +1 -1
  131. package/dist/cjs/labs/StaticTable.cjs +2 -2
  132. package/dist/cjs/labs/StaticTable.cjs.map +1 -1
  133. package/dist/cjs/properties/ts/odyssey-react-mui.cjs.map +1 -1
  134. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs +7 -1
  135. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs.map +1 -1
  136. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs +7 -1
  137. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs.map +1 -1
  138. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs +8 -2
  139. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs.map +1 -1
  140. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs +7 -1
  141. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs.map +1 -1
  142. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs +7 -1
  143. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs.map +1 -1
  144. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs +7 -1
  145. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs.map +1 -1
  146. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs +7 -1
  147. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs.map +1 -1
  148. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs +7 -1
  149. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs.map +1 -1
  150. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs +7 -1
  151. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs.map +1 -1
  152. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs +7 -1
  153. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs.map +1 -1
  154. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs +7 -1
  155. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs.map +1 -1
  156. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs +7 -1
  157. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs.map +1 -1
  158. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs +7 -1
  159. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs.map +1 -1
  160. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs +7 -1
  161. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs.map +1 -1
  162. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs +7 -1
  163. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs.map +1 -1
  164. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs +7 -1
  165. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs.map +1 -1
  166. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs +7 -1
  167. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs.map +1 -1
  168. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs.map +1 -1
  169. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs.map +1 -1
  170. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs +7 -1
  171. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs.map +1 -1
  172. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs +7 -1
  173. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs.map +1 -1
  174. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs +7 -1
  175. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs.map +1 -1
  176. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs +7 -1
  177. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs.map +1 -1
  178. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs +7 -1
  179. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs.map +1 -1
  180. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs +7 -1
  181. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs.map +1 -1
  182. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs +7 -1
  183. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs.map +1 -1
  184. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs +7 -1
  185. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs.map +1 -1
  186. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs +7 -1
  187. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs.map +1 -1
  188. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs +7 -1
  189. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs.map +1 -1
  190. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs +7 -1
  191. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs.map +1 -1
  192. package/dist/cjs/test-selectors/AutocompleteTestSelector.cjs +49 -0
  193. package/dist/cjs/test-selectors/AutocompleteTestSelector.cjs.map +1 -0
  194. package/dist/cjs/test-selectors/CalloutTestSelector.cjs +43 -0
  195. package/dist/cjs/test-selectors/CalloutTestSelector.cjs.map +1 -0
  196. package/dist/cjs/test-selectors/SelectTestSelector.cjs +55 -0
  197. package/dist/cjs/test-selectors/SelectTestSelector.cjs.map +1 -0
  198. package/dist/cjs/{OdysseyTranslationProvider.types.cjs → test-selectors/TabsTestSelector.cjs} +23 -4
  199. package/dist/cjs/test-selectors/TabsTestSelector.cjs.map +1 -0
  200. package/dist/cjs/test-selectors/TextFieldTestSelector.cjs +44 -0
  201. package/dist/cjs/test-selectors/TextFieldTestSelector.cjs.map +1 -0
  202. package/dist/cjs/test-selectors/index.cjs +11 -0
  203. package/dist/cjs/test-selectors/index.cjs.map +1 -1
  204. package/dist/cjs/test-selectors/queryOdysseySelector.cjs +10 -10
  205. package/dist/cjs/test-selectors/queryOdysseySelector.cjs.map +1 -1
  206. package/dist/cjs/theme/components.cjs +5 -9
  207. package/dist/cjs/theme/components.cjs.map +1 -1
  208. package/dist/cjs/tools/addSpecificity.cjs.map +1 -0
  209. package/dist/cjs/tools/bufferLatest.cjs.map +1 -0
  210. package/dist/cjs/tools/createMessageBus.cjs.map +1 -0
  211. package/dist/cjs/tools/createStore.cjs.map +1 -0
  212. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +2 -12
  213. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -1
  214. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs +20 -15
  215. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs.map +1 -1
  216. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +137 -136
  217. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  218. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs +2 -2
  219. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs.map +1 -1
  220. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +7 -4
  221. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
  222. package/dist/cjs/ui-shell/SideNav/SideNavItemContentContext.cjs.map +1 -1
  223. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +3 -4
  224. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
  225. package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs +47 -0
  226. package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs.map +1 -0
  227. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +2 -2
  228. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
  229. package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs +2 -2
  230. package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs.map +1 -1
  231. package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs +2 -2
  232. package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs.map +1 -1
  233. package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
  234. package/dist/cjs/ui-shell/UiShell.cjs +4 -4
  235. package/dist/cjs/ui-shell/UiShell.cjs.map +1 -1
  236. package/dist/cjs/ui-shell/UiShellProvider.cjs +1 -1
  237. package/dist/cjs/ui-shell/UiShellProvider.cjs.map +1 -1
  238. package/dist/cjs/ui-shell/WideUiShellContent.cjs +2 -1
  239. package/dist/cjs/ui-shell/WideUiShellContent.cjs.map +1 -1
  240. package/dist/cjs/ui-shell/renderUiShell.cjs +2 -2
  241. package/dist/cjs/ui-shell/renderUiShell.cjs.map +1 -1
  242. package/dist/cjs/ui-shell/uiShellContentTypes.cjs +2 -1
  243. package/dist/cjs/ui-shell/uiShellContentTypes.cjs.map +1 -1
  244. package/dist/cjs/{shadow-dom/shadow-dom.cjs → web-component/createShadowDomElements.cjs} +8 -3
  245. package/dist/cjs/web-component/createShadowDomElements.cjs.map +1 -0
  246. package/dist/cjs/web-component/index.cjs +33 -0
  247. package/dist/cjs/web-component/index.cjs.map +1 -1
  248. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
  249. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
  250. package/dist/cjs/web-component/removeGlobalStylesFromShadowDom.cjs +35 -0
  251. package/dist/cjs/web-component/removeGlobalStylesFromShadowDom.cjs.map +1 -0
  252. package/dist/cjs/web-component/renderReactInWebComponent.cjs +5 -9
  253. package/dist/cjs/web-component/renderReactInWebComponent.cjs.map +1 -1
  254. package/dist/esm/Autocomplete.js +1 -31
  255. package/dist/esm/Autocomplete.js.map +1 -1
  256. package/dist/esm/Banner.js +1 -1
  257. package/dist/esm/Banner.js.map +1 -1
  258. package/dist/esm/Breadcrumbs.js +1 -1
  259. package/dist/esm/Breadcrumbs.js.map +1 -1
  260. package/dist/esm/Buttons/BaseButton.js.map +1 -1
  261. package/dist/esm/Callout.js +1 -25
  262. package/dist/esm/Callout.js.map +1 -1
  263. package/dist/esm/Card.js +281 -63
  264. package/dist/esm/Card.js.map +1 -1
  265. package/dist/esm/Checkbox.js +13 -11
  266. package/dist/esm/Checkbox.js.map +1 -1
  267. package/dist/esm/DataTable/DataTable.js +1 -1
  268. package/dist/esm/DataTable/DataTable.js.map +1 -1
  269. package/dist/esm/DataTable/DataTableRowActions.js +1 -1
  270. package/dist/esm/DataTable/DataTableRowActions.js.map +1 -1
  271. package/dist/esm/DataTable/DataTableSettings.js +1 -1
  272. package/dist/esm/DataTable/DataTableSettings.js.map +1 -1
  273. package/dist/esm/DataTable/useRowReordering.js +1 -1
  274. package/dist/esm/DataTable/useRowReordering.js.map +1 -1
  275. package/dist/esm/DatePickers/DateField.js +1 -1
  276. package/dist/esm/DatePickers/DateField.js.map +1 -1
  277. package/dist/esm/DatePickers/DateFieldActionBar.js +1 -1
  278. package/dist/esm/DatePickers/DateFieldActionBar.js.map +1 -1
  279. package/dist/esm/DatePickers/DatePicker.js +1 -1
  280. package/dist/esm/DatePickers/DatePicker.js.map +1 -1
  281. package/dist/esm/DatePickers/useDateFieldsTranslations.js +1 -1
  282. package/dist/esm/DatePickers/useDateFieldsTranslations.js.map +1 -1
  283. package/dist/esm/DatePickers/useOdysseyDateFields.js +1 -1
  284. package/dist/esm/DatePickers/useOdysseyDateFields.js.map +1 -1
  285. package/dist/esm/Dialog.js +33 -30
  286. package/dist/esm/Dialog.js.map +1 -1
  287. package/dist/esm/Drawer.js +7 -3
  288. package/dist/esm/Drawer.js.map +1 -1
  289. package/dist/esm/Field.js +1 -1
  290. package/dist/esm/Field.js.map +1 -1
  291. package/dist/esm/FieldError.js +1 -1
  292. package/dist/esm/FieldError.js.map +1 -1
  293. package/dist/esm/FieldLabel.js +1 -1
  294. package/dist/esm/FieldLabel.js.map +1 -1
  295. package/dist/esm/FileUploader/FileUploadPreview.js +1 -1
  296. package/dist/esm/FileUploader/FileUploadPreview.js.map +1 -1
  297. package/dist/esm/FileUploader/FileUploader.js +1 -1
  298. package/dist/esm/FileUploader/FileUploader.js.map +1 -1
  299. package/dist/esm/FullScreenOverlay.js +35 -0
  300. package/dist/esm/FullScreenOverlay.js.map +1 -0
  301. package/dist/esm/FullScreenOverlayContext.js +66 -0
  302. package/dist/esm/FullScreenOverlayContext.js.map +1 -0
  303. package/dist/esm/OdysseyCacheProvider.js +12 -17
  304. package/dist/esm/OdysseyCacheProvider.js.map +1 -1
  305. package/dist/esm/OdysseyProvider.js +18 -10
  306. package/dist/esm/OdysseyProvider.js.map +1 -1
  307. package/dist/esm/OdysseyThemeProvider.js +27 -16
  308. package/dist/esm/OdysseyThemeProvider.js.map +1 -1
  309. package/dist/esm/OdysseyThemeProviderPropsContext.js +38 -0
  310. package/dist/esm/OdysseyThemeProviderPropsContext.js.map +1 -0
  311. package/dist/esm/Pagination/Pagination.js +1 -2
  312. package/dist/esm/Pagination/Pagination.js.map +1 -1
  313. package/dist/esm/Pagination/usePagination.js +1 -1
  314. package/dist/esm/Pagination/usePagination.js.map +1 -1
  315. package/dist/esm/PasswordField.js +1 -1
  316. package/dist/esm/PasswordField.js.map +1 -1
  317. package/dist/esm/Radio.js +22 -20
  318. package/dist/esm/Radio.js.map +1 -1
  319. package/dist/esm/SearchField.js +1 -1
  320. package/dist/esm/SearchField.js.map +1 -1
  321. package/dist/esm/Select.js +0 -36
  322. package/dist/esm/Select.js.map +1 -1
  323. package/dist/esm/Surface.js +3 -3
  324. package/dist/esm/Surface.js.map +1 -1
  325. package/dist/esm/Switch.js +1 -1
  326. package/dist/esm/Switch.js.map +1 -1
  327. package/dist/esm/Tabs.js +0 -20
  328. package/dist/esm/Tabs.js.map +1 -1
  329. package/dist/esm/Tag.js +1 -1
  330. package/dist/esm/Tag.js.map +1 -1
  331. package/dist/esm/TextField.js +0 -25
  332. package/dist/esm/TextField.js.map +1 -1
  333. package/dist/esm/Toast.js +1 -1
  334. package/dist/esm/Toast.js.map +1 -1
  335. package/dist/esm/__internal.js +24 -0
  336. package/dist/esm/__internal.js.map +1 -0
  337. package/dist/esm/i18n.generated/i18n.js +25 -0
  338. package/dist/esm/i18n.generated/i18n.js.map +1 -0
  339. package/dist/esm/i18n.generated/i18n.resources.js +75 -0
  340. package/dist/esm/i18n.generated/i18n.resources.js.map +1 -0
  341. package/dist/{types/shadow-dom/index.d.ts → esm/i18n.generated/i18n.types.js} +3 -3
  342. package/dist/esm/i18n.generated/i18n.types.js.map +1 -0
  343. package/dist/esm/index.js +4 -3
  344. package/dist/esm/index.js.map +1 -1
  345. package/dist/esm/labs/DataFilters.js +1 -1
  346. package/dist/esm/labs/DataFilters.js.map +1 -1
  347. package/dist/esm/labs/DataTable.js +1 -1
  348. package/dist/esm/labs/DataTable.js.map +1 -1
  349. package/dist/esm/labs/DataView/BulkActionsMenu.js +1 -1
  350. package/dist/esm/labs/DataView/BulkActionsMenu.js.map +1 -1
  351. package/dist/esm/labs/DataView/CardLayoutContent.js +61 -45
  352. package/dist/esm/labs/DataView/CardLayoutContent.js.map +1 -1
  353. package/dist/esm/labs/DataView/DataCard.js +51 -180
  354. package/dist/esm/labs/DataView/DataCard.js.map +1 -1
  355. package/dist/esm/labs/DataView/DataView.js +1 -1
  356. package/dist/esm/labs/DataView/DataView.js.map +1 -1
  357. package/dist/esm/labs/DataView/LayoutSwitcher.js +1 -1
  358. package/dist/esm/labs/DataView/LayoutSwitcher.js.map +1 -1
  359. package/dist/esm/labs/DataView/RowActions.js +1 -1
  360. package/dist/esm/labs/DataView/RowActions.js.map +1 -1
  361. package/dist/esm/labs/DataView/TableLayoutContent.js +1 -1
  362. package/dist/esm/labs/DataView/TableLayoutContent.js.map +1 -1
  363. package/dist/esm/labs/DataView/TableSettings.js +1 -1
  364. package/dist/esm/labs/DataView/TableSettings.js.map +1 -1
  365. package/dist/esm/labs/DataView/componentTypes.js.map +1 -1
  366. package/dist/esm/labs/DataView/fetchData.js +2 -2
  367. package/dist/esm/labs/DataView/fetchData.js.map +1 -1
  368. package/dist/esm/labs/DatePickers/DateTimeField.js +1 -1
  369. package/dist/esm/labs/DatePickers/DateTimeField.js.map +1 -1
  370. package/dist/esm/labs/DatePickers/DateTimePicker.js +1 -1
  371. package/dist/esm/labs/DatePickers/DateTimePicker.js.map +1 -1
  372. package/dist/esm/labs/DatePickers/dateTimePickerTheme.js +3 -3
  373. package/dist/esm/labs/DatePickers/dateTimePickerTheme.js.map +1 -1
  374. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js +1 -1
  375. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js.map +1 -1
  376. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js +4 -0
  377. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -1
  378. package/dist/esm/labs/OdysseyPickers/index.js.map +1 -1
  379. package/dist/esm/labs/PageTemplate/Layout.js +2 -2
  380. package/dist/esm/labs/PageTemplate/Layout.js.map +1 -1
  381. package/dist/esm/labs/PageTemplate/PageTemplate.js.map +1 -1
  382. package/dist/esm/labs/PaginatedTable.js +1 -1
  383. package/dist/esm/labs/PaginatedTable.js.map +1 -1
  384. package/dist/esm/labs/StaticTable.js +1 -1
  385. package/dist/esm/labs/StaticTable.js.map +1 -1
  386. package/dist/esm/properties/ts/odyssey-react-mui.js.map +1 -1
  387. package/dist/esm/properties/ts/odyssey-react-mui_cs.js +7 -1
  388. package/dist/esm/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  389. package/dist/esm/properties/ts/odyssey-react-mui_da.js +7 -1
  390. package/dist/esm/properties/ts/odyssey-react-mui_da.js.map +1 -1
  391. package/dist/esm/properties/ts/odyssey-react-mui_de.js +8 -2
  392. package/dist/esm/properties/ts/odyssey-react-mui_de.js.map +1 -1
  393. package/dist/esm/properties/ts/odyssey-react-mui_el.js +7 -1
  394. package/dist/esm/properties/ts/odyssey-react-mui_el.js.map +1 -1
  395. package/dist/esm/properties/ts/odyssey-react-mui_es.js +7 -1
  396. package/dist/esm/properties/ts/odyssey-react-mui_es.js.map +1 -1
  397. package/dist/esm/properties/ts/odyssey-react-mui_eu.js +7 -1
  398. package/dist/esm/properties/ts/odyssey-react-mui_eu.js.map +1 -1
  399. package/dist/esm/properties/ts/odyssey-react-mui_fi.js +7 -1
  400. package/dist/esm/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  401. package/dist/esm/properties/ts/odyssey-react-mui_fr.js +7 -1
  402. package/dist/esm/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  403. package/dist/esm/properties/ts/odyssey-react-mui_ht.js +7 -1
  404. package/dist/esm/properties/ts/odyssey-react-mui_ht.js.map +1 -1
  405. package/dist/esm/properties/ts/odyssey-react-mui_hu.js +7 -1
  406. package/dist/esm/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  407. package/dist/esm/properties/ts/odyssey-react-mui_id.js +7 -1
  408. package/dist/esm/properties/ts/odyssey-react-mui_id.js.map +1 -1
  409. package/dist/esm/properties/ts/odyssey-react-mui_it.js +7 -1
  410. package/dist/esm/properties/ts/odyssey-react-mui_it.js.map +1 -1
  411. package/dist/esm/properties/ts/odyssey-react-mui_ja.js +7 -1
  412. package/dist/esm/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  413. package/dist/esm/properties/ts/odyssey-react-mui_ko.js +7 -1
  414. package/dist/esm/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  415. package/dist/esm/properties/ts/odyssey-react-mui_ms.js +7 -1
  416. package/dist/esm/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  417. package/dist/esm/properties/ts/odyssey-react-mui_nb.js +7 -1
  418. package/dist/esm/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  419. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js +7 -1
  420. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  421. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
  422. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
  423. package/dist/esm/properties/ts/odyssey-react-mui_pl.js +7 -1
  424. package/dist/esm/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  425. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js +7 -1
  426. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  427. package/dist/esm/properties/ts/odyssey-react-mui_ro.js +7 -1
  428. package/dist/esm/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  429. package/dist/esm/properties/ts/odyssey-react-mui_ru.js +7 -1
  430. package/dist/esm/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  431. package/dist/esm/properties/ts/odyssey-react-mui_sv.js +7 -1
  432. package/dist/esm/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  433. package/dist/esm/properties/ts/odyssey-react-mui_th.js +7 -1
  434. package/dist/esm/properties/ts/odyssey-react-mui_th.js.map +1 -1
  435. package/dist/esm/properties/ts/odyssey-react-mui_tr.js +7 -1
  436. package/dist/esm/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  437. package/dist/esm/properties/ts/odyssey-react-mui_uk.js +7 -1
  438. package/dist/esm/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  439. package/dist/esm/properties/ts/odyssey-react-mui_vi.js +7 -1
  440. package/dist/esm/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  441. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js +7 -1
  442. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  443. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js +7 -1
  444. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  445. package/dist/esm/test-selectors/AutocompleteTestSelector.js +43 -0
  446. package/dist/esm/test-selectors/AutocompleteTestSelector.js.map +1 -0
  447. package/dist/esm/test-selectors/CalloutTestSelector.js +37 -0
  448. package/dist/esm/test-selectors/CalloutTestSelector.js.map +1 -0
  449. package/dist/esm/test-selectors/SelectTestSelector.js +49 -0
  450. package/dist/esm/test-selectors/SelectTestSelector.js.map +1 -0
  451. package/dist/esm/test-selectors/TabsTestSelector.js +33 -0
  452. package/dist/esm/test-selectors/TabsTestSelector.js.map +1 -0
  453. package/dist/esm/test-selectors/TextFieldTestSelector.js +38 -0
  454. package/dist/esm/test-selectors/TextFieldTestSelector.js.map +1 -0
  455. package/dist/esm/test-selectors/index.js +1 -0
  456. package/dist/esm/test-selectors/index.js.map +1 -1
  457. package/dist/esm/test-selectors/queryOdysseySelector.js +5 -5
  458. package/dist/esm/test-selectors/queryOdysseySelector.js.map +1 -1
  459. package/dist/esm/theme/components.js +5 -9
  460. package/dist/esm/theme/components.js.map +1 -1
  461. package/dist/esm/tools/addSpecificity.js.map +1 -0
  462. package/dist/esm/tools/bufferLatest.js.map +1 -0
  463. package/dist/esm/tools/createMessageBus.js.map +1 -0
  464. package/dist/esm/tools/createStore.js.map +1 -0
  465. package/dist/esm/ui-shell/NarrowUiShellContent.js +3 -13
  466. package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -1
  467. package/dist/esm/ui-shell/SideNav/NavAccordion.js +20 -15
  468. package/dist/esm/ui-shell/SideNav/NavAccordion.js.map +1 -1
  469. package/dist/esm/ui-shell/SideNav/SideNav.js +136 -135
  470. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  471. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js +1 -1
  472. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js.map +1 -1
  473. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +7 -4
  474. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
  475. package/dist/esm/ui-shell/SideNav/SideNavItemContentContext.js.map +1 -1
  476. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +3 -4
  477. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
  478. package/dist/esm/ui-shell/SideNav/SideNavSortableList.js +42 -0
  479. package/dist/esm/ui-shell/SideNav/SideNavSortableList.js.map +1 -0
  480. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +1 -1
  481. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
  482. package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js +1 -1
  483. package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js.map +1 -1
  484. package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js +1 -1
  485. package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js.map +1 -1
  486. package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
  487. package/dist/esm/ui-shell/UiShell.js +4 -4
  488. package/dist/esm/ui-shell/UiShell.js.map +1 -1
  489. package/dist/esm/ui-shell/UiShellProvider.js +1 -1
  490. package/dist/esm/ui-shell/UiShellProvider.js.map +1 -1
  491. package/dist/esm/ui-shell/WideUiShellContent.js +2 -1
  492. package/dist/esm/ui-shell/WideUiShellContent.js.map +1 -1
  493. package/dist/esm/ui-shell/renderUiShell.js +2 -2
  494. package/dist/esm/ui-shell/renderUiShell.js.map +1 -1
  495. package/dist/esm/ui-shell/uiShellContentTypes.js +1 -0
  496. package/dist/esm/ui-shell/uiShellContentTypes.js.map +1 -1
  497. package/dist/esm/{shadow-dom/shadow-dom.js → web-component/createShadowDomElements.js} +8 -3
  498. package/dist/esm/web-component/createShadowDomElements.js.map +1 -0
  499. package/dist/esm/web-component/index.js +3 -0
  500. package/dist/esm/web-component/index.js.map +1 -1
  501. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
  502. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
  503. package/dist/esm/web-component/removeGlobalStylesFromShadowDom.js +28 -0
  504. package/dist/esm/web-component/removeGlobalStylesFromShadowDom.js.map +1 -0
  505. package/dist/esm/web-component/renderReactInWebComponent.js +5 -9
  506. package/dist/esm/web-component/renderReactInWebComponent.js.map +1 -1
  507. package/dist/tsconfig.production.tsbuildinfo +1 -1
  508. package/dist/types/Autocomplete.d.ts +0 -30
  509. package/dist/types/Autocomplete.d.ts.map +1 -1
  510. package/dist/types/Banner.d.ts.map +1 -1
  511. package/dist/types/Breadcrumbs.d.ts.map +1 -1
  512. package/dist/types/Buttons/BaseButton.d.ts +2 -2
  513. package/dist/types/Buttons/BaseButton.d.ts.map +1 -1
  514. package/dist/types/Callout.d.ts +0 -24
  515. package/dist/types/Callout.d.ts.map +1 -1
  516. package/dist/types/Card.d.ts +17 -6
  517. package/dist/types/Card.d.ts.map +1 -1
  518. package/dist/types/Checkbox.d.ts.map +1 -1
  519. package/dist/types/DataTable/DataTable.d.ts.map +1 -1
  520. package/dist/types/DataTable/DataTableRowActions.d.ts.map +1 -1
  521. package/dist/types/DatePickers/DatePicker.d.ts.map +1 -1
  522. package/dist/types/DatePickers/useDateFieldsTranslations.d.ts.map +1 -1
  523. package/dist/types/DatePickers/useOdysseyDateFields.d.ts.map +1 -1
  524. package/dist/types/Dialog.d.ts.map +1 -1
  525. package/dist/types/Drawer.d.ts.map +1 -1
  526. package/dist/types/Field.d.ts.map +1 -1
  527. package/dist/types/FieldError.d.ts.map +1 -1
  528. package/dist/types/FieldLabel.d.ts.map +1 -1
  529. package/dist/types/FileUploader/FileUploader.d.ts.map +1 -1
  530. package/dist/types/FullScreenOverlay.d.ts +19 -0
  531. package/dist/types/FullScreenOverlay.d.ts.map +1 -0
  532. package/dist/types/FullScreenOverlayContext.d.ts +31 -0
  533. package/dist/types/FullScreenOverlayContext.d.ts.map +1 -0
  534. package/dist/types/NativeSelect.d.ts +1 -1
  535. package/dist/types/OdysseyCacheProvider.d.ts +10 -3
  536. package/dist/types/OdysseyCacheProvider.d.ts.map +1 -1
  537. package/dist/types/OdysseyProvider.d.ts +8 -8
  538. package/dist/types/OdysseyProvider.d.ts.map +1 -1
  539. package/dist/types/OdysseyThemeProvider.d.ts +7 -16
  540. package/dist/types/OdysseyThemeProvider.d.ts.map +1 -1
  541. package/dist/types/OdysseyThemeProviderPropsContext.d.ts +27 -0
  542. package/dist/types/OdysseyThemeProviderPropsContext.d.ts.map +1 -0
  543. package/dist/types/Pagination/Pagination.d.ts +0 -1
  544. package/dist/types/Pagination/Pagination.d.ts.map +1 -1
  545. package/dist/types/Pagination/usePagination.d.ts.map +1 -1
  546. package/dist/types/PasswordField.d.ts.map +1 -1
  547. package/dist/types/Radio.d.ts.map +1 -1
  548. package/dist/types/SearchField.d.ts.map +1 -1
  549. package/dist/types/Select.d.ts +0 -36
  550. package/dist/types/Select.d.ts.map +1 -1
  551. package/dist/types/Surface.d.ts.map +1 -1
  552. package/dist/types/Switch.d.ts.map +1 -1
  553. package/dist/types/Tabs.d.ts +0 -20
  554. package/dist/types/Tabs.d.ts.map +1 -1
  555. package/dist/types/Tag.d.ts.map +1 -1
  556. package/dist/types/TextField.d.ts +0 -25
  557. package/dist/types/TextField.d.ts.map +1 -1
  558. package/dist/types/Toast.d.ts.map +1 -1
  559. package/dist/types/__internal.d.ts +30 -0
  560. package/dist/types/__internal.d.ts.map +1 -0
  561. package/dist/types/i18n.generated/i18n.d.ts +285 -0
  562. package/dist/types/i18n.generated/i18n.d.ts.map +1 -0
  563. package/dist/types/i18n.generated/i18n.resources.d.ts +4199 -0
  564. package/dist/types/{i18n.d.ts.map → i18n.generated/i18n.resources.d.ts.map} +1 -1
  565. package/dist/types/i18n.generated/i18n.types.d.ts +30 -0
  566. package/dist/types/i18n.generated/i18n.types.d.ts.map +1 -0
  567. package/dist/types/index.d.ts +4 -3
  568. package/dist/types/index.d.ts.map +1 -1
  569. package/dist/types/labs/DataTable.d.ts.map +1 -1
  570. package/dist/types/labs/DataView/CardLayoutContent.d.ts.map +1 -1
  571. package/dist/types/labs/DataView/DataCard.d.ts +14 -30
  572. package/dist/types/labs/DataView/DataCard.d.ts.map +1 -1
  573. package/dist/types/labs/DataView/RowActions.d.ts.map +1 -1
  574. package/dist/types/labs/DataView/componentTypes.d.ts +1 -1
  575. package/dist/types/labs/DataView/componentTypes.d.ts.map +1 -1
  576. package/dist/types/labs/DataView/fetchData.d.ts.map +1 -1
  577. package/dist/types/labs/DatePickers/DateTimePicker.d.ts.map +1 -1
  578. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts.map +1 -1
  579. package/dist/types/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts.map +1 -1
  580. package/dist/types/labs/OdysseyPickers/index.d.ts +1 -2
  581. package/dist/types/labs/OdysseyPickers/index.d.ts.map +1 -1
  582. package/dist/types/labs/PageTemplate/PageTemplate.d.ts.map +1 -1
  583. package/dist/types/labs/PaginatedTable.d.ts.map +1 -1
  584. package/dist/types/labs/StaticTable.d.ts.map +1 -1
  585. package/dist/types/properties/ts/odyssey-react-mui.d.ts +133 -133
  586. package/dist/types/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  587. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts +133 -127
  588. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  589. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts +133 -127
  590. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  591. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts +133 -127
  592. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  593. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts +133 -127
  594. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  595. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts +133 -127
  596. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  597. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts +133 -127
  598. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts.map +1 -1
  599. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts +133 -127
  600. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  601. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts +133 -127
  602. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  603. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts +133 -127
  604. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -1
  605. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts +133 -127
  606. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  607. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts +133 -127
  608. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  609. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts +133 -127
  610. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  611. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts +133 -127
  612. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  613. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts +133 -127
  614. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  615. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts +133 -127
  616. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  617. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts +133 -127
  618. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  619. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts +133 -127
  620. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  621. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts +133 -133
  622. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
  623. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts +133 -133
  624. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
  625. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts +133 -127
  626. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  627. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts +133 -127
  628. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  629. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts +133 -127
  630. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  631. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts +133 -127
  632. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  633. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts +133 -127
  634. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  635. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts +133 -127
  636. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  637. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts +133 -127
  638. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  639. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts +133 -127
  640. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  641. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts +133 -127
  642. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  643. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts +133 -127
  644. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  645. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts +133 -127
  646. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  647. package/dist/types/test-selectors/AutocompleteTestSelector.d.ts +42 -0
  648. package/dist/types/test-selectors/AutocompleteTestSelector.d.ts.map +1 -0
  649. package/dist/types/test-selectors/CalloutTestSelector.d.ts +36 -0
  650. package/dist/types/test-selectors/CalloutTestSelector.d.ts.map +1 -0
  651. package/dist/types/test-selectors/SelectTestSelector.d.ts +48 -0
  652. package/dist/types/test-selectors/SelectTestSelector.d.ts.map +1 -0
  653. package/dist/types/test-selectors/TabsTestSelector.d.ts +32 -0
  654. package/dist/types/test-selectors/TabsTestSelector.d.ts.map +1 -0
  655. package/dist/types/test-selectors/TextFieldTestSelector.d.ts +37 -0
  656. package/dist/types/test-selectors/TextFieldTestSelector.d.ts.map +1 -0
  657. package/dist/types/test-selectors/index.d.ts +1 -0
  658. package/dist/types/test-selectors/index.d.ts.map +1 -1
  659. package/dist/types/test-selectors/queryOdysseySelector.d.ts.map +1 -1
  660. package/dist/types/theme/components.d.ts.map +1 -1
  661. package/dist/types/tools/addSpecificity.d.ts.map +1 -0
  662. package/dist/types/tools/bufferLatest.d.ts.map +1 -0
  663. package/dist/types/tools/createMessageBus.d.ts.map +1 -0
  664. package/dist/types/tools/createStore.d.ts.map +1 -0
  665. package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -1
  666. package/dist/types/ui-shell/SideNav/NavAccordion.d.ts.map +1 -1
  667. package/dist/types/ui-shell/SideNav/SideNav.d.ts +1 -1
  668. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  669. package/dist/types/ui-shell/SideNav/SideNavFooterContent.d.ts.map +1 -1
  670. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts +2 -1
  671. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
  672. package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts +1 -0
  673. package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts.map +1 -1
  674. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
  675. package/dist/types/ui-shell/SideNav/SideNavSortableList.d.ts +41 -0
  676. package/dist/types/ui-shell/SideNav/SideNavSortableList.d.ts.map +1 -0
  677. package/dist/types/ui-shell/SideNav/types.d.ts +13 -2
  678. package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
  679. package/dist/types/ui-shell/UiShell.d.ts +1 -1
  680. package/dist/types/ui-shell/UiShell.d.ts.map +1 -1
  681. package/dist/types/ui-shell/UiShellProvider.d.ts +1 -1
  682. package/dist/types/ui-shell/UiShellProvider.d.ts.map +1 -1
  683. package/dist/types/ui-shell/WideUiShellContent.d.ts.map +1 -1
  684. package/dist/types/ui-shell/renderUiShell.d.ts +2 -2
  685. package/dist/types/ui-shell/renderUiShell.d.ts.map +1 -1
  686. package/dist/types/ui-shell/uiShellContentTypes.d.ts +4 -1
  687. package/dist/types/ui-shell/uiShellContentTypes.d.ts.map +1 -1
  688. package/dist/types/{shadow-dom/shadow-dom.d.ts → web-component/createShadowDomElements.d.ts} +6 -4
  689. package/dist/types/web-component/createShadowDomElements.d.ts.map +1 -0
  690. package/dist/types/web-component/index.d.ts +3 -0
  691. package/dist/types/web-component/index.d.ts.map +1 -1
  692. package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
  693. package/dist/types/web-component/removeGlobalStylesFromShadowDom.d.ts +18 -0
  694. package/dist/types/web-component/removeGlobalStylesFromShadowDom.d.ts.map +1 -0
  695. package/dist/types/web-component/renderReactInWebComponent.d.ts +1 -1
  696. package/dist/types/web-component/renderReactInWebComponent.d.ts.map +1 -1
  697. package/package.json +26 -17
  698. package/dist/cjs/@types/i18next.d.cjs +0 -4
  699. package/dist/cjs/@types/i18next.d.cjs.map +0 -1
  700. package/dist/cjs/@types/properties.d.cjs +0 -2
  701. package/dist/cjs/@types/properties.d.cjs.map +0 -1
  702. package/dist/cjs/OdysseyTranslationProvider.cjs +0 -55
  703. package/dist/cjs/OdysseyTranslationProvider.cjs.map +0 -1
  704. package/dist/cjs/OdysseyTranslationProvider.types.cjs.map +0 -1
  705. package/dist/cjs/addSpecificity.cjs.map +0 -1
  706. package/dist/cjs/i18n.cjs +0 -113
  707. package/dist/cjs/i18n.cjs.map +0 -1
  708. package/dist/cjs/shadow-dom/index.cjs +0 -17
  709. package/dist/cjs/shadow-dom/index.cjs.map +0 -1
  710. package/dist/cjs/shadow-dom/shadow-dom.cjs.map +0 -1
  711. package/dist/cjs/ui-shell/bufferLatest.cjs.map +0 -1
  712. package/dist/cjs/ui-shell/createMessageBus.cjs.map +0 -1
  713. package/dist/cjs/ui-shell/createStore.cjs.map +0 -1
  714. package/dist/esm/@types/i18next.d.js +0 -14
  715. package/dist/esm/@types/i18next.d.js.map +0 -1
  716. package/dist/esm/@types/properties.d.js +0 -2
  717. package/dist/esm/@types/properties.d.js.map +0 -1
  718. package/dist/esm/OdysseyTranslationProvider.js +0 -48
  719. package/dist/esm/OdysseyTranslationProvider.js.map +0 -1
  720. package/dist/esm/OdysseyTranslationProvider.types.js +0 -14
  721. package/dist/esm/OdysseyTranslationProvider.types.js.map +0 -1
  722. package/dist/esm/addSpecificity.js.map +0 -1
  723. package/dist/esm/i18n.js +0 -100
  724. package/dist/esm/i18n.js.map +0 -1
  725. package/dist/esm/shadow-dom/index.js.map +0 -1
  726. package/dist/esm/shadow-dom/shadow-dom.js.map +0 -1
  727. package/dist/esm/ui-shell/bufferLatest.js.map +0 -1
  728. package/dist/esm/ui-shell/createMessageBus.js.map +0 -1
  729. package/dist/esm/ui-shell/createStore.js.map +0 -1
  730. package/dist/types/OdysseyTranslationProvider.d.ts +0 -24
  731. package/dist/types/OdysseyTranslationProvider.d.ts.map +0 -1
  732. package/dist/types/OdysseyTranslationProvider.types.d.ts +0 -14
  733. package/dist/types/OdysseyTranslationProvider.types.d.ts.map +0 -1
  734. package/dist/types/addSpecificity.d.ts.map +0 -1
  735. package/dist/types/i18n.d.ts +0 -3910
  736. package/dist/types/shadow-dom/index.d.ts.map +0 -1
  737. package/dist/types/shadow-dom/shadow-dom.d.ts.map +0 -1
  738. package/dist/types/ui-shell/bufferLatest.d.ts.map +0 -1
  739. package/dist/types/ui-shell/createMessageBus.d.ts.map +0 -1
  740. package/dist/types/ui-shell/createStore.d.ts.map +0 -1
  741. /package/dist/cjs/{addSpecificity.cjs → tools/addSpecificity.cjs} +0 -0
  742. /package/dist/cjs/{ui-shell → tools}/bufferLatest.cjs +0 -0
  743. /package/dist/cjs/{ui-shell → tools}/createMessageBus.cjs +0 -0
  744. /package/dist/cjs/{ui-shell → tools}/createStore.cjs +0 -0
  745. /package/dist/esm/{addSpecificity.js → tools/addSpecificity.js} +0 -0
  746. /package/dist/esm/{ui-shell → tools}/bufferLatest.js +0 -0
  747. /package/dist/esm/{ui-shell → tools}/createMessageBus.js +0 -0
  748. /package/dist/esm/{ui-shell → tools}/createStore.js +0 -0
  749. /package/dist/types/{addSpecificity.d.ts → tools/addSpecificity.d.ts} +0 -0
  750. /package/dist/types/{ui-shell → tools}/bufferLatest.d.ts +0 -0
  751. /package/dist/types/{ui-shell → tools}/createMessageBus.d.ts +0 -0
  752. /package/dist/types/{ui-shell → tools}/createStore.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","names":["styled","memo","useEffect","useMemo","Box","ButtonContext","MenuButton","MoreIcon","useOdysseyDesignTokens","Heading5","Paragraph","Support","jsx","_jsx","jsxs","_jsxs","CARD_IMAGE_HEIGHT","ImageContainer","shouldForwardProp","prop","odysseyDesignTokens","hasMenuButtonChildren","display","alignItems","maxHeight","height","marginBlockEnd","Spacing5","paddingRight","MenuButtonContainer","position","right","Spacing3","top","CardContentContainer","buttonProviderValue","isFullWidth","Card","button","description","image","menuButtonChildren","onClick","overline","title","cardContent","children","Boolean","component","color","_CardActions","Provider","value","_Card","className","_CardActionArea","ariaLabel","buttonVariant","endIcon","menuAlignment","size","tooltipText","MemoizedCard","displayName","Tile","props","console","warn","MemoizedTile"],"sources":["../../src/Card.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n Card as MuiCard,\n CardActionArea as MuiCardActionArea,\n CardActions as MuiCardActions,\n} from \"@mui/material\";\nimport {\n memo,\n MouseEventHandler,\n ReactElement,\n useEffect,\n useMemo,\n} from \"react\";\n\nimport { Box } from \"./Box.js\";\nimport {\n Button,\n ButtonContext,\n MenuButton,\n MenuButtonProps,\n} from \"./Buttons/index.js\";\nimport { MoreIcon } from \"./icons.generated/index.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { Heading5, Paragraph, Support } from \"./Typography.js\";\n\nexport const CARD_IMAGE_HEIGHT = \"64px\";\n\nexport type CardProps = {\n description?: string;\n image?: ReactElement;\n overline?: string;\n title?: string;\n} & (\n | {\n button?: never;\n menuButtonChildren?: never;\n onClick: MouseEventHandler;\n }\n | {\n button?: ReactElement<typeof Button>;\n menuButtonChildren?: MenuButtonProps[\"children\"];\n onClick?: never;\n }\n);\n\nconst ImageContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"hasMenuButtonChildren\",\n})<{\n hasMenuButtonChildren: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens, hasMenuButtonChildren }) => ({\n display: \"flex\",\n alignItems: \"flex-start\",\n maxHeight: CARD_IMAGE_HEIGHT,\n height: CARD_IMAGE_HEIGHT,\n marginBlockEnd: odysseyDesignTokens.Spacing5,\n paddingRight: hasMenuButtonChildren ? odysseyDesignTokens.Spacing5 : 0,\n}));\n\nconst MenuButtonContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n position: \"absolute\",\n right: odysseyDesignTokens.Spacing3,\n top: odysseyDesignTokens.Spacing3,\n}));\n\nconst CardContentContainer = styled(\"div\")(() => ({\n display: \"flex\",\n}));\n\nconst buttonProviderValue = { isFullWidth: true };\n\nconst Card = ({\n button,\n description,\n image,\n menuButtonChildren,\n onClick,\n overline,\n title,\n}: CardProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const cardContent = useMemo(\n () => (\n <CardContentContainer>\n <Box>\n {image && (\n <ImageContainer\n hasMenuButtonChildren={Boolean(menuButtonChildren)}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {image}\n </ImageContainer>\n )}\n\n {overline && <Support component=\"div\">{overline}</Support>}\n {title && <Heading5 component=\"div\">{title}</Heading5>}\n {description && (\n <Paragraph color=\"textSecondary\">{description}</Paragraph>\n )}\n\n {button && (\n <MuiCardActions>\n <ButtonContext.Provider value={buttonProviderValue}>\n {button}\n </ButtonContext.Provider>\n </MuiCardActions>\n )}\n </Box>\n </CardContentContainer>\n ),\n [\n button,\n description,\n image,\n menuButtonChildren,\n overline,\n title,\n odysseyDesignTokens,\n ],\n );\n\n return (\n <MuiCard className={onClick ? \"isClickable\" : \"\"}>\n {onClick ? (\n <MuiCardActionArea onClick={onClick}>{cardContent}</MuiCardActionArea>\n ) : (\n cardContent\n )}\n\n {menuButtonChildren && (\n <MenuButtonContainer odysseyDesignTokens={odysseyDesignTokens}>\n <MenuButton\n ariaLabel=\"Card menu\"\n buttonVariant=\"floating\"\n endIcon={<MoreIcon />}\n menuAlignment=\"right\"\n size=\"small\"\n tooltipText=\"Actions\"\n >\n {menuButtonChildren}\n </MenuButton>\n </MenuButtonContainer>\n )}\n </MuiCard>\n );\n};\n\nconst MemoizedCard = memo(Card);\nMemoizedCard.displayName = \"Card\";\n\n/**\n * @deprecated The 'Tile' component is now called 'Card'. Please update your references as 'Tile' will be deprecated soon.\n */\nconst Tile = (props: CardProps) => {\n useEffect(() => {\n console.warn(\n \"Warning: The 'Tile' component is now called 'Card'. Please update your references as 'Tile' will be deprecated soon.\",\n );\n }, []);\n\n return <MemoizedCard {...props} />;\n};\n\nconst MemoizedTile = memo(Tile);\nMemoizedTile.displayName = \"Tile\";\n\nexport { MemoizedCard as Card, MemoizedTile as Tile };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Card.js","names":["styled","cardActionsClasses","skeletonClasses","typographyClasses","Children","memo","useMemo","ButtonContext","MenuButton","useTranslation","MoreIcon","useOdysseyDesignTokens","Paragraph","Support","Typography","jsx","_jsx","jsxs","_jsxs","cardVariantValues","CARD_IMAGE_SIZE","CARD_IMAGE_SIZE_COMPACT","StyledCard","_Card","shouldForwardProp","prop","cardVariant","isClickable","odysseyDesignTokens","border","BorderWidthMain","BorderColorDisplay","BorderStyleMain","boxShadow","padding","display","marginBlockEnd","Spacing2","borderColor","HueNeutralWhite","DepthMedium","root","transform","height","Spacing7","StyledCardActionArea","_CardActionArea","margin","AccessoriesContainer","variant","flexDirection","alignItems","gap","Spacing1","marginBlockStart","Spacing4","Spacing5","marginInlineStart","marginInlineEnd","Spacing8","width","InnerContainer","hasDetailPanel","numberOfChildNodes","backgroundColor","ImageContainer","hasMenuButton","paddingInlineEnd","aspectRatio","ContentContainer","marginBlock","UpperContentContainer","OverlineTitleContainer","Content","MenuButtonContainer","position","right","top","getNumberOfDefinedReactNodes","props","toArray","length","Card","children","description","detailPanel","image","isLoading","overline","title","titleId","accessory","button","menuButtonChildren","onClick","__role","role","t","loadingContent","Boolean","_Skeleton","component","_CardActions","cardContent","buttonProviderValue","isFullWidth","id","color","Provider","value","ariaLabel","buttonVariant","endIcon","menuAlignment","size","tooltipText","MemoizedCard","displayName"],"sources":["../../src/Card.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n Card as MuiCard,\n CardActionArea as MuiCardActionArea,\n CardActions as MuiCardActions,\n Skeleton as MuiSkeleton,\n} from \"@mui/material\";\nimport { cardActionsClasses } from \"@mui/material/CardActions\";\nimport { skeletonClasses } from \"@mui/material/Skeleton\";\nimport { typographyClasses } from \"@mui/material/Typography\";\nimport {\n AriaRole,\n Children,\n memo,\n MouseEventHandler,\n ReactElement,\n ReactNode,\n useMemo,\n} from \"react\";\n\nimport { Button } from \"./Buttons/Button.js\";\nimport { ButtonContext } from \"./Buttons/ButtonContext.js\";\nimport { MenuButton, MenuButtonProps } from \"./Buttons/MenuButton.js\";\nimport { useTranslation } from \"./i18n.generated/i18n.js\";\nimport { MoreIcon } from \"./icons.generated/More.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { Paragraph, Support, Typography } from \"./Typography.js\";\n\nexport const cardVariantValues = [\"tile\", \"stack\", \"compact\"] as const;\n\nexport const CARD_IMAGE_SIZE = \"64px\";\nexport const CARD_IMAGE_SIZE_COMPACT = \"48px\";\n\nexport type CardProps = {\n /** @experimental: Temporary internal property, do not use. */\n __role?: AriaRole;\n children?: ReactNode;\n description?: string;\n detailPanel?: ReactNode;\n image?: ReactElement;\n isLoading?: boolean;\n overline?: string;\n title?: string;\n titleId?: string;\n variant?: (typeof cardVariantValues)[number];\n} & (\n | {\n accessory?: ReactNode;\n button?: never;\n menuButtonChildren?: never;\n onClick: MouseEventHandler;\n }\n | {\n accessory?: ReactNode;\n button?: ReactElement<typeof Button>;\n menuButtonChildren?: MenuButtonProps[\"children\"];\n onClick?: never;\n }\n);\n\nconst StyledCard = styled(MuiCard, {\n shouldForwardProp: (prop) =>\n prop !== \"cardVariant\" &&\n prop !== \"isClickable\" &&\n prop !== \"odysseyDesignTokens\",\n})<{\n cardVariant: CardProps[\"variant\"];\n isClickable: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ cardVariant, isClickable, odysseyDesignTokens }) => ({\n border: `${odysseyDesignTokens.BorderWidthMain} ${odysseyDesignTokens.BorderColorDisplay} ${odysseyDesignTokens.BorderStyleMain}`,\n boxShadow: \"none\",\n padding: 0,\n display: \"flex\",\n\n ...(cardVariant === \"compact\" && {\n marginBlockEnd: odysseyDesignTokens.Spacing2,\n }),\n\n [\"&:hover\"]: isClickable\n ? {\n borderColor: odysseyDesignTokens.HueNeutralWhite,\n boxShadow: odysseyDesignTokens.DepthMedium,\n }\n : {},\n\n [`& .${skeletonClasses.root}`]: {\n transform: \"none\",\n },\n\n [`& .${cardActionsClasses.root} .${skeletonClasses.root}`]: {\n height: odysseyDesignTokens.Spacing7,\n },\n}));\n\nconst StyledCardActionArea = styled(MuiCardActionArea)(() => ({\n margin: 0,\n padding: 0,\n}));\n\nconst AccessoriesContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"variant\",\n})<{\n odysseyDesignTokens: DesignTokens;\n variant: CardProps[\"variant\"];\n}>(({ odysseyDesignTokens, variant }) => ({\n display: \"flex\",\n flexDirection: variant === \"compact\" ? \"row\" : \"column\",\n alignItems: \"center\",\n gap: odysseyDesignTokens.Spacing1,\n marginBlockStart:\n variant === \"compact\"\n ? odysseyDesignTokens.Spacing4\n : odysseyDesignTokens.Spacing5,\n marginInlineStart:\n variant === \"compact\"\n ? odysseyDesignTokens.Spacing4\n : odysseyDesignTokens.Spacing4,\n marginInlineEnd: `-${odysseyDesignTokens.Spacing2}`,\n height: variant === \"compact\" ? odysseyDesignTokens.Spacing8 : \"auto\",\n\n [`& .${skeletonClasses.root}`]: {\n width: odysseyDesignTokens.Spacing5,\n height: odysseyDesignTokens.Spacing5,\n },\n}));\n\nconst InnerContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"hasDetailPanel\" &&\n prop !== \"numberOfChildNodes\" &&\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"variant\",\n})<{\n hasDetailPanel?: boolean;\n numberOfChildNodes?: number;\n odysseyDesignTokens: DesignTokens;\n variant: CardProps[\"variant\"];\n}>(\n ({\n hasDetailPanel,\n numberOfChildNodes = 0,\n odysseyDesignTokens,\n variant,\n }) => ({\n alignItems:\n variant === \"compact\" && !hasDetailPanel && numberOfChildNodes <= 2\n ? \"center\"\n : \"flex-start\",\n display: \"flex\",\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n padding:\n variant === \"compact\"\n ? odysseyDesignTokens.Spacing4\n : odysseyDesignTokens.Spacing5,\n flexDirection: variant === \"tile\" ? \"column\" : \"row\",\n gap: odysseyDesignTokens.Spacing4,\n width: \"100%\",\n }),\n);\n\nconst ImageContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"variant\" &&\n prop !== \"hasMenuButton\",\n})<{\n hasMenuButton: boolean;\n odysseyDesignTokens: DesignTokens;\n variant: CardProps[\"variant\"];\n}>(({ odysseyDesignTokens, variant, hasMenuButton }) => ({\n height: variant === \"compact\" ? CARD_IMAGE_SIZE_COMPACT : CARD_IMAGE_SIZE,\n paddingInlineEnd:\n variant === \"tile\" && hasMenuButton ? odysseyDesignTokens.Spacing4 : 0,\n [`& > .${skeletonClasses.root}`]: {\n height: \"100%\",\n aspectRatio: 1,\n },\n}));\n\nconst ContentContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n display: \"flex\",\n flexDirection: \"column\",\n gap: odysseyDesignTokens.Spacing4,\n width: \"100%\",\n\n \"& > *\": {\n marginBlock: 0,\n },\n\n [`& .${skeletonClasses.root} + .${skeletonClasses.root}`]: {\n marginBlockStart: odysseyDesignTokens.Spacing1,\n },\n}));\n\nconst UpperContentContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"variant\" &&\n prop !== \"hasMenuButton\",\n})<{\n hasMenuButton: boolean;\n odysseyDesignTokens: DesignTokens;\n variant: CardProps[\"variant\"];\n}>(({ odysseyDesignTokens, variant, hasMenuButton }) => ({\n display: \"flex\",\n flexDirection: \"column\",\n gap:\n variant === \"compact\"\n ? odysseyDesignTokens.Spacing1\n : odysseyDesignTokens.Spacing4,\n paddingInlineEnd:\n variant !== \"tile\" && hasMenuButton ? odysseyDesignTokens.Spacing4 : 0,\n\n [`& > .${typographyClasses.root}`]: {\n marginBlockEnd: 0,\n },\n}));\n\nconst OverlineTitleContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n display: \"flex\",\n flexDirection: \"column\",\n gap: odysseyDesignTokens.Spacing1,\n\n [`& > .${typographyClasses.root}`]: {\n marginBlockEnd: 0,\n },\n}));\n\nconst Content = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"flex-start\",\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n}));\n\nconst MenuButtonContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"variant\",\n})<{\n odysseyDesignTokens: DesignTokens;\n variant: CardProps[\"variant\"];\n}>(({ odysseyDesignTokens, variant }) => ({\n position: \"absolute\",\n right: odysseyDesignTokens.Spacing2,\n top:\n variant === \"compact\"\n ? odysseyDesignTokens.Spacing4\n : odysseyDesignTokens.Spacing2,\n height: variant === \"compact\" ? odysseyDesignTokens.Spacing8 : \"auto\",\n display: \"flex\",\n alignItems: \"center\",\n\n [`& .${skeletonClasses.root}`]: {\n width: odysseyDesignTokens.Spacing5,\n height: odysseyDesignTokens.Spacing5,\n margin: odysseyDesignTokens.Spacing1,\n },\n}));\n\nconst getNumberOfDefinedReactNodes = (props: Array<ReactNode>) =>\n Children.toArray(props).length;\n\nconst Card = ({\n children,\n description,\n detailPanel,\n image,\n isLoading,\n overline,\n title,\n titleId,\n variant,\n accessory,\n button,\n menuButtonChildren,\n onClick,\n __role: role,\n}: CardProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const { t } = useTranslation();\n\n const loadingContent = useMemo(\n () => (\n <InnerContainer\n numberOfChildNodes={getNumberOfDefinedReactNodes([\n button,\n children,\n description,\n overline,\n title,\n ])}\n odysseyDesignTokens={odysseyDesignTokens}\n variant={variant}\n >\n {image && (\n <ImageContainer\n hasMenuButton={Boolean(menuButtonChildren)}\n odysseyDesignTokens={odysseyDesignTokens}\n variant={variant}\n >\n <MuiSkeleton variant=\"circular\" />\n </ImageContainer>\n )}\n\n <ContentContainer odysseyDesignTokens={odysseyDesignTokens}>\n <UpperContentContainer\n hasMenuButton={Boolean(menuButtonChildren)}\n odysseyDesignTokens={odysseyDesignTokens}\n variant={variant}\n >\n <OverlineTitleContainer odysseyDesignTokens={odysseyDesignTokens}>\n {overline && (\n <Support>\n <MuiSkeleton width=\"50%\" />\n </Support>\n )}\n\n {title && (\n <Typography\n component=\"div\"\n variant={variant === \"tile\" ? \"h4\" : \"h5\"}\n >\n <MuiSkeleton width=\"33%\" />\n </Typography>\n )}\n </OverlineTitleContainer>\n\n {description && (\n <Paragraph>\n <MuiSkeleton width=\"100%\" />\n <MuiSkeleton width=\"50%\" />\n </Paragraph>\n )}\n </UpperContentContainer>\n\n {children && (\n <Content odysseyDesignTokens={odysseyDesignTokens}>\n <MuiSkeleton width=\"50%\" />\n </Content>\n )}\n\n {button && (\n <MuiCardActions>\n <MuiSkeleton variant=\"rounded\" width=\"100%\" />\n </MuiCardActions>\n )}\n </ContentContainer>\n </InnerContainer>\n ),\n [\n button,\n children,\n description,\n image,\n menuButtonChildren,\n odysseyDesignTokens,\n overline,\n title,\n variant,\n ],\n );\n\n const cardContent = useMemo(() => {\n const buttonProviderValue = { isFullWidth: true };\n return (\n <InnerContainer\n hasDetailPanel={Boolean(detailPanel)}\n numberOfChildNodes={getNumberOfDefinedReactNodes([\n button,\n children,\n description,\n overline,\n title,\n ])}\n odysseyDesignTokens={odysseyDesignTokens}\n variant={variant}\n >\n {image && (\n <ImageContainer\n hasMenuButton={Boolean(menuButtonChildren)}\n odysseyDesignTokens={odysseyDesignTokens}\n variant={variant}\n >\n {image}\n </ImageContainer>\n )}\n\n <ContentContainer odysseyDesignTokens={odysseyDesignTokens}>\n <UpperContentContainer\n hasMenuButton={Boolean(menuButtonChildren)}\n odysseyDesignTokens={odysseyDesignTokens}\n variant={variant}\n >\n <OverlineTitleContainer odysseyDesignTokens={odysseyDesignTokens}>\n {overline && <Support component=\"div\">{overline}</Support>}\n\n {title && (\n <Typography\n component=\"div\"\n id={titleId}\n variant={variant === \"tile\" ? \"h4\" : \"h5\"}\n >\n {title}\n </Typography>\n )}\n </OverlineTitleContainer>\n\n {description && (\n <Paragraph color=\"textSecondary\">{description}</Paragraph>\n )}\n </UpperContentContainer>\n\n {children && (\n <Content odysseyDesignTokens={odysseyDesignTokens}>\n {children}\n </Content>\n )}\n\n {button && (\n <MuiCardActions>\n <ButtonContext.Provider value={buttonProviderValue}>\n {button}\n </ButtonContext.Provider>\n </MuiCardActions>\n )}\n\n {detailPanel && (\n <Content odysseyDesignTokens={odysseyDesignTokens}>\n {detailPanel}\n </Content>\n )}\n </ContentContainer>\n </InnerContainer>\n );\n }, [\n button,\n children,\n description,\n detailPanel,\n image,\n menuButtonChildren,\n odysseyDesignTokens,\n overline,\n title,\n titleId,\n variant,\n ]);\n\n return (\n <StyledCard\n cardVariant={variant}\n isClickable={Boolean(onClick)}\n odysseyDesignTokens={odysseyDesignTokens}\n role={role}\n >\n {Boolean(accessory) && (\n <AccessoriesContainer\n odysseyDesignTokens={odysseyDesignTokens}\n variant={variant}\n >\n {isLoading ? <MuiSkeleton variant=\"circular\" /> : accessory}\n </AccessoriesContainer>\n )}\n\n {isLoading ? (\n loadingContent\n ) : onClick ? (\n <StyledCardActionArea onClick={onClick}>\n {cardContent}\n </StyledCardActionArea>\n ) : (\n cardContent\n )}\n\n {menuButtonChildren && (\n <MenuButtonContainer\n odysseyDesignTokens={odysseyDesignTokens}\n variant={variant}\n >\n {isLoading ? (\n <MuiSkeleton variant=\"circular\" />\n ) : (\n <MenuButton\n ariaLabel={t(\"table.moreactions.arialabel\")}\n buttonVariant=\"floating\"\n endIcon={<MoreIcon />}\n menuAlignment=\"right\"\n size=\"small\"\n tooltipText={t(\"table.actions\")}\n >\n {menuButtonChildren}\n </MenuButton>\n )}\n </MenuButtonContainer>\n )}\n </StyledCard>\n );\n};\n\nconst MemoizedCard = memo(Card);\nMemoizedCard.displayName = \"Card\";\n\nexport { MemoizedCard as Card };\n"],"mappings":"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","ignoreList":[]}
@@ -15,7 +15,7 @@ import _Checkbox from "@mui/material/Checkbox";
15
15
 
16
16
  import styled from "@emotion/styled";
17
17
  import { memo, useCallback, useImperativeHandle, useMemo, useRef } from "react";
18
- import { useTranslation } from "react-i18next";
18
+ import { useTranslation } from "./i18n.generated/i18n.js";
19
19
  import { ComponentControlledState, getControlState } from "./inputUtils.js";
20
20
  import { useOdysseyDesignTokens } from "./OdysseyDesignTokensContext.js";
21
21
  import { Typography } from "./Typography.js";
@@ -114,10 +114,19 @@ const Checkbox = ({
114
114
  }),
115
115
  ...(hint && {
116
116
  ":not(:last-child)": {
117
- marginBlockEnd: 0
117
+ marginBlockEnd: "0"
118
118
  }
119
119
  })
120
120
  }), [hint, isReadOnly]);
121
+ const checkboxInputStyles = useMemo(() => ({
122
+ marginBlockStart: "2px"
123
+ }), []);
124
+ const inputProps = useMemo(() => ({
125
+ "aria-describedby": hintId,
126
+ "aria-readonly": isReadOnly,
127
+ "data-se": testId,
128
+ readOnly: isReadOnly
129
+ }), [hintId, isReadOnly, testId]);
121
130
  return _jsxs(_Fragment, {
122
131
  children: [_jsx(_FormControlLabel, {
123
132
  "aria-label": ariaLabel,
@@ -127,19 +136,12 @@ const Checkbox = ({
127
136
  ...inputValues,
128
137
  disabled: isDisabled,
129
138
  indeterminate: isIndeterminate,
130
- inputProps: {
131
- "aria-describedby": hintId,
132
- "aria-readonly": isReadOnly,
133
- "data-se": testId,
134
- readOnly: isReadOnly
135
- },
139
+ inputProps: inputProps,
136
140
  inputRef: localInputRef,
137
141
  onChange: onChange,
138
142
  onClick: onClick,
139
143
  required: isRequired,
140
- sx: {
141
- marginBlockStart: "2px"
142
- }
144
+ sx: checkboxInputStyles
143
145
  }),
144
146
  disabled: isDisabled,
145
147
  id: idOverride,
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.js","names":["styled","memo","useCallback","useImperativeHandle","useMemo","useRef","useTranslation","ComponentControlledState","getControlState","useOdysseyDesignTokens","Typography","useUniqueId","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","checkboxValidityValues","HintContainerWithInlineStartSpacing","div","odysseyDesignTokens","paddingInlineStart","TypographyLineHeightUi","Spacing2","marginBlockEnd","color","TypographyColorSubordinate","Checkbox","ariaLabel","ariaLabelledBy","id","idOverride","inputRef","isChecked","isDefaultChecked","isDisabled","isIndeterminate","isReadOnly","isRequired","label","labelProp","hint","name","nameOverride","onChange","onChangeProp","onBlur","onBlurProp","testId","translate","validity","value","t","hintId","undefined","controlledStateRef","controlledValue","uncontrolledValue","inputValues","current","CONTROLLED","checked","defaultChecked","localInputRef","focus","children","component","event","onClick","stopPropagation","preventDefault","checkboxStyles","alignItems","cursor","_FormControlLabel","className","control","_Checkbox","disabled","indeterminate","inputProps","readOnly","required","sx","marginBlockStart","_FormHelperText","MemoizedCheckbox","displayName"],"sources":["../../src/Checkbox.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n FormControlLabel,\n FormHelperText,\n Checkbox as MuiCheckbox,\n CheckboxProps as MuiCheckboxProps,\n FormControlLabelProps as MuiFormControlLabelProps,\n} from \"@mui/material\";\nimport { memo, useCallback, useImperativeHandle, useMemo, useRef } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { FieldComponentProps } from \"./FieldComponentProps.js\";\nimport { CheckedFieldProps } from \"./FormCheckedProps.js\";\nimport {\n ComponentControlledState,\n FocusHandle,\n getControlState,\n} from \"./inputUtils.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { Typography } from \"./Typography.js\";\nimport { useUniqueId } from \"./useUniqueId.js\";\n\nexport const checkboxValidityValues = [\"valid\", \"invalid\", \"inherit\"] as const;\n\nconst HintContainerWithInlineStartSpacing = styled.div<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingInlineStart: `calc(${odysseyDesignTokens.TypographyLineHeightUi}em + ${odysseyDesignTokens.Spacing2})`,\n marginBlockEnd: odysseyDesignTokens.Spacing2,\n\n // MUI applies the '.Mui-error' class to this hint text when the checkbox is invalid which turns the copy red\n // We want to keep the hint text gray in the error state\n \".Mui-error\": {\n color: odysseyDesignTokens.TypographyColorSubordinate,\n },\n}));\n\nexport type CheckboxProps = {\n /**\n * The ref forwarded to the Checkbox\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * Determines whether the Checkbox is in an indeterminate state\n */\n isIndeterminate?: boolean;\n /**\n * Determines whether the Checkbox is required\n */\n isRequired?: boolean;\n /**\n * The label text for the Checkbox\n */\n label?: string;\n /**\n * Callback fired when the blur event happens. Provides event value.\n */\n onBlur?: MuiFormControlLabelProps[\"onBlur\"];\n /**\n * The checkbox validity, if different from its enclosing group. Defaults to \"inherit\".\n */\n validity?: (typeof checkboxValidityValues)[number];\n /**\n * The value attribute of the Checkbox\n */\n value?: string;\n} & Pick<\n FieldComponentProps,\n \"hint\" | \"id\" | \"isDisabled\" | \"isReadOnly\" | \"name\"\n> &\n CheckedFieldProps<MuiCheckboxProps> &\n Pick<HtmlProps, \"ariaLabel\" | \"ariaLabelledBy\" | \"testId\" | \"translate\">;\n\nconst Checkbox = ({\n ariaLabel,\n ariaLabelledBy,\n id: idOverride,\n inputRef,\n isChecked,\n isDefaultChecked,\n isDisabled,\n isIndeterminate,\n isReadOnly = false,\n isRequired,\n label: labelProp,\n hint,\n name: nameOverride,\n onChange: onChangeProp,\n onBlur: onBlurProp,\n testId,\n translate,\n validity = \"inherit\",\n value,\n}: CheckboxProps) => {\n const { t } = useTranslation();\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const id = useUniqueId(idOverride);\n const hintId = hint ? `${id}-hint` : undefined;\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: isChecked,\n uncontrolledValue: isDefaultChecked,\n }),\n );\n const inputValues = useMemo(() => {\n if (controlledStateRef.current === ComponentControlledState.CONTROLLED) {\n return { checked: isChecked };\n }\n return { defaultChecked: isDefaultChecked };\n }, [isDefaultChecked, isChecked]);\n\n const localInputRef = useRef<HTMLInputElement>(null);\n useImperativeHandle(\n inputRef,\n () => ({\n focus: () => {\n localInputRef.current?.focus();\n },\n }),\n [],\n );\n\n const label = useMemo(() => {\n return (\n <>\n <Typography component=\"span\">{labelProp}</Typography>\n {isRequired && (\n <>\n {\" \"}\n <Typography color=\"textSecondary\" component=\"span\">\n ({t(\"fieldlabel.required.text\")})\n </Typography>\n </>\n )}\n </>\n );\n }, [isRequired, labelProp, t]);\n\n const onChange = useCallback<NonNullable<MuiCheckboxProps[\"onChange\"]>>(\n (event, checked) => {\n onChangeProp?.(event, checked);\n },\n [onChangeProp],\n );\n\n const onClick = useCallback<NonNullable<MuiCheckboxProps[\"onClick\"]>>(\n (event) => {\n if (isReadOnly) {\n event.stopPropagation();\n event.preventDefault();\n }\n },\n [isReadOnly],\n );\n\n const onBlur = useCallback<NonNullable<MuiFormControlLabelProps[\"onBlur\"]>>(\n (event) => {\n onBlurProp?.(event);\n },\n [onBlurProp],\n );\n\n const checkboxStyles = useMemo(\n () => ({\n alignItems: \"flex-start\",\n\n ...(isReadOnly && {\n cursor: \"default\",\n \"& .MuiTypography-root\": {\n cursor: \"default\",\n },\n }),\n\n ...(hint && {\n // needed to override specific :not(:last-child) selector\n \":not(:last-child)\": {\n marginBlockEnd: 0,\n },\n }),\n }),\n [hint, isReadOnly],\n );\n\n return (\n <>\n <FormControlLabel\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={\n validity === \"invalid\"\n ? \"Mui-error\"\n : validity === \"valid\"\n ? \"Mui-valid\"\n : \"\"\n }\n control={\n <MuiCheckbox\n {...inputValues}\n disabled={isDisabled}\n indeterminate={isIndeterminate}\n inputProps={{\n \"aria-describedby\": hintId,\n \"aria-readonly\": isReadOnly,\n \"data-se\": testId,\n readOnly: isReadOnly,\n }}\n inputRef={localInputRef}\n onChange={onChange}\n onClick={\n onClick as unknown as React.MouseEventHandler<HTMLButtonElement>\n }\n required={isRequired}\n sx={{\n marginBlockStart: \"2px\",\n }}\n />\n }\n disabled={isDisabled}\n id={idOverride}\n label={label}\n name={nameOverride ?? idOverride}\n onBlur={onBlur}\n required={isRequired}\n sx={checkboxStyles}\n translate={translate}\n value={value}\n />\n {hint && (\n <HintContainerWithInlineStartSpacing\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <FormHelperText id={hintId} translate={translate}>\n {hint}\n </FormHelperText>\n </HintContainerWithInlineStartSpacing>\n )}\n </>\n );\n};\n\nconst MemoizedCheckbox = memo(Checkbox);\nMemoizedCheckbox.displayName = \"Checkbox\";\n\nexport { MemoizedCheckbox as Checkbox };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Checkbox.js","names":["styled","memo","useCallback","useImperativeHandle","useMemo","useRef","useTranslation","ComponentControlledState","getControlState","useOdysseyDesignTokens","Typography","useUniqueId","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","checkboxValidityValues","HintContainerWithInlineStartSpacing","div","odysseyDesignTokens","paddingInlineStart","TypographyLineHeightUi","Spacing2","marginBlockEnd","color","TypographyColorSubordinate","Checkbox","ariaLabel","ariaLabelledBy","id","idOverride","inputRef","isChecked","isDefaultChecked","isDisabled","isIndeterminate","isReadOnly","isRequired","label","labelProp","hint","name","nameOverride","onChange","onChangeProp","onBlur","onBlurProp","testId","translate","validity","value","t","hintId","undefined","controlledStateRef","controlledValue","uncontrolledValue","inputValues","current","CONTROLLED","checked","defaultChecked","localInputRef","focus","children","component","event","onClick","stopPropagation","preventDefault","checkboxStyles","alignItems","cursor","checkboxInputStyles","marginBlockStart","inputProps","readOnly","_FormControlLabel","className","control","_Checkbox","disabled","indeterminate","required","sx","_FormHelperText","MemoizedCheckbox","displayName"],"sources":["../../src/Checkbox.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n FormControlLabel,\n FormHelperText,\n Checkbox as MuiCheckbox,\n CheckboxProps as MuiCheckboxProps,\n FormControlLabelProps as MuiFormControlLabelProps,\n} from \"@mui/material\";\nimport {\n InputHTMLAttributes,\n memo,\n useCallback,\n useImperativeHandle,\n useMemo,\n useRef,\n} from \"react\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { FieldComponentProps } from \"./FieldComponentProps.js\";\nimport { CheckedFieldProps } from \"./FormCheckedProps.js\";\nimport { useTranslation } from \"./i18n.generated/i18n.js\";\nimport {\n ComponentControlledState,\n FocusHandle,\n getControlState,\n} from \"./inputUtils.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { Typography } from \"./Typography.js\";\nimport { useUniqueId } from \"./useUniqueId.js\";\n\nexport const checkboxValidityValues = [\"valid\", \"invalid\", \"inherit\"] as const;\n\nconst HintContainerWithInlineStartSpacing = styled.div<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingInlineStart: `calc(${odysseyDesignTokens.TypographyLineHeightUi}em + ${odysseyDesignTokens.Spacing2})`,\n marginBlockEnd: odysseyDesignTokens.Spacing2,\n\n // MUI applies the '.Mui-error' class to this hint text when the checkbox is invalid which turns the copy red\n // We want to keep the hint text gray in the error state\n \".Mui-error\": {\n color: odysseyDesignTokens.TypographyColorSubordinate,\n },\n}));\n\nexport type CheckboxProps = {\n /**\n * The ref forwarded to the Checkbox\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * Determines whether the Checkbox is in an indeterminate state\n */\n isIndeterminate?: boolean;\n /**\n * Determines whether the Checkbox is required\n */\n isRequired?: boolean;\n /**\n * The label text for the Checkbox\n */\n label?: string;\n /**\n * Callback fired when the blur event happens. Provides event value.\n */\n onBlur?: MuiFormControlLabelProps[\"onBlur\"];\n /**\n * The checkbox validity, if different from its enclosing group. Defaults to \"inherit\".\n */\n validity?: (typeof checkboxValidityValues)[number];\n /**\n * The value attribute of the Checkbox\n */\n value?: string;\n} & Pick<\n FieldComponentProps,\n \"hint\" | \"id\" | \"isDisabled\" | \"isReadOnly\" | \"name\"\n> &\n CheckedFieldProps<MuiCheckboxProps> &\n Pick<HtmlProps, \"ariaLabel\" | \"ariaLabelledBy\" | \"testId\" | \"translate\">;\n\nconst Checkbox = ({\n ariaLabel,\n ariaLabelledBy,\n id: idOverride,\n inputRef,\n isChecked,\n isDefaultChecked,\n isDisabled,\n isIndeterminate,\n isReadOnly = false,\n isRequired,\n label: labelProp,\n hint,\n name: nameOverride,\n onChange: onChangeProp,\n onBlur: onBlurProp,\n testId,\n translate,\n validity = \"inherit\",\n value,\n}: CheckboxProps) => {\n const { t } = useTranslation();\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const id = useUniqueId(idOverride);\n const hintId = hint ? `${id}-hint` : undefined;\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: isChecked,\n uncontrolledValue: isDefaultChecked,\n }),\n );\n const inputValues = useMemo(() => {\n if (controlledStateRef.current === ComponentControlledState.CONTROLLED) {\n return { checked: isChecked };\n }\n return { defaultChecked: isDefaultChecked };\n }, [isDefaultChecked, isChecked]);\n\n const localInputRef = useRef<HTMLInputElement>(null);\n useImperativeHandle(\n inputRef,\n () => ({\n focus: () => {\n localInputRef.current?.focus();\n },\n }),\n [],\n );\n\n const label = useMemo(() => {\n return (\n <>\n <Typography component=\"span\">{labelProp}</Typography>\n {isRequired && (\n <>\n {\" \"}\n <Typography color=\"textSecondary\" component=\"span\">\n ({t(\"fieldlabel.required.text\")})\n </Typography>\n </>\n )}\n </>\n );\n }, [isRequired, labelProp, t]);\n\n const onChange = useCallback<NonNullable<MuiCheckboxProps[\"onChange\"]>>(\n (event, checked) => {\n onChangeProp?.(event, checked);\n },\n [onChangeProp],\n );\n\n const onClick = useCallback<NonNullable<MuiCheckboxProps[\"onClick\"]>>(\n (event) => {\n if (isReadOnly) {\n event.stopPropagation();\n event.preventDefault();\n }\n },\n [isReadOnly],\n );\n\n const onBlur = useCallback<NonNullable<MuiFormControlLabelProps[\"onBlur\"]>>(\n (event) => {\n onBlurProp?.(event);\n },\n [onBlurProp],\n );\n\n const checkboxStyles = useMemo(\n () => ({\n alignItems: \"flex-start\",\n\n ...(isReadOnly && {\n cursor: \"default\",\n \"& .MuiTypography-root\": {\n cursor: \"default\",\n } as CSSStyleDeclaration,\n }),\n\n ...(hint && {\n // needed to override specific :not(:last-child) selector\n \":not(:last-child)\": {\n marginBlockEnd: \"0\",\n } as CSSStyleDeclaration,\n }),\n }),\n [hint, isReadOnly],\n );\n\n // TODO: Is there a better way to handle these styles? Why pixels? Isn't this tying Checkbox to the label's font size? -Kevin\n const checkboxInputStyles = useMemo(\n () => ({\n marginBlockStart: \"2px\",\n }),\n [],\n );\n\n const inputProps = useMemo<InputHTMLAttributes<HTMLInputElement>>(\n () => ({\n \"aria-describedby\": hintId,\n \"aria-readonly\": isReadOnly,\n \"data-se\": testId,\n readOnly: isReadOnly,\n }),\n [hintId, isReadOnly, testId],\n );\n\n return (\n <>\n <FormControlLabel\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={\n validity === \"invalid\"\n ? \"Mui-error\"\n : validity === \"valid\"\n ? \"Mui-valid\"\n : \"\"\n }\n control={\n <MuiCheckbox\n {...inputValues}\n disabled={isDisabled}\n indeterminate={isIndeterminate}\n inputProps={inputProps}\n inputRef={localInputRef}\n onChange={onChange}\n onClick={onClick}\n required={isRequired}\n sx={checkboxInputStyles}\n />\n }\n disabled={isDisabled}\n id={idOverride}\n label={label}\n name={nameOverride ?? idOverride}\n onBlur={onBlur}\n required={isRequired}\n sx={checkboxStyles}\n translate={translate}\n value={value}\n />\n\n {hint && (\n <HintContainerWithInlineStartSpacing\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <FormHelperText id={hintId} translate={translate}>\n {hint}\n </FormHelperText>\n </HintContainerWithInlineStartSpacing>\n )}\n </>\n );\n};\n\nconst MemoizedCheckbox = memo(Checkbox);\nMemoizedCheckbox.displayName = \"Checkbox\";\n\nexport { MemoizedCheckbox as Checkbox };\n"],"mappings":"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","ignoreList":[]}
@@ -13,11 +13,11 @@
13
13
  import styled from "@emotion/styled";
14
14
  import { MRT_TableContainer, useMaterialReactTable } from "material-react-table";
15
15
  import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
16
- import { useTranslation } from "react-i18next";
17
16
  import { Box } from "../Box.js";
18
17
  import { Button, MenuButton } from "../Buttons/index.js";
19
18
  import { Callout } from "../Callout.js";
20
19
  import { EmptyState } from "../EmptyState.js";
20
+ import { useTranslation } from "../i18n.generated/i18n.js";
21
21
  import { ArrowDownIcon, ArrowUnsortedIcon, ChevronDownIcon, DragIndicatorIcon, MoreIcon } from "../icons.generated/index.js";
22
22
  import { DataFilters } from "../labs/DataFilters.js";
23
23
  import { useOdysseyDesignTokens } from "../OdysseyDesignTokensContext.js";
@@ -1 +1 @@
1
- {"version":3,"file":"DataTable.js","names":["styled","MRT_TableContainer","useMaterialReactTable","memo","useCallback","useEffect","useMemo","useRef","useState","useTranslation","Box","Button","MenuButton","Callout","EmptyState","ArrowDownIcon","ArrowUnsortedIcon","ChevronDownIcon","DragIndicatorIcon","MoreIcon","DataFilters","useOdysseyDesignTokens","Pagination","usePagination","densityValues","DataTableRowActions","DataTableSettings","useRowReordering","useScrollIndication","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ScrollableTableContainer","shouldForwardProp","prop","odysseyDesignTokens","isScrollableStart","isScrollableEnd","marginBlockEnd","Spacing4","position","borderInlineStartColor","HueNeutral200","borderInlineStartStyle","borderInlineStartWidth","BorderWidthMain","background","content","opacity","pointerEvents","top","left","bottom","width","Spacing6","zIndex","transition","TransitionDurationMain","TransitionTimingMain","borderInlineEndColor","borderInlineEndStyle","borderInlineEndWidth","right","defaultGetRowId","row","id","DataTable","additionalActionButton","additionalActionMenuItems","bulkActionMenuItems","columns","currentPage","emptyPlaceholder","errorMessage","errorMessageProp","filters","filtersProp","getData","getRowId","hasChangeableDensity","hasColumnResizing","hasColumnVisibility","hasFilters","hasPagination","hasRowReordering","hasRowSelection","hasSearch","hasSearchSubmitButton","hasSorting","initialDensity","initialSearchValue","isPaginationMoreDisabled","noResultsPlaceholder","onChangeRowSelection","onReorderRows","paginationType","renderDetailPanel","resultsPerPage","maxResultsPerPage","maxPages","rowActionButtons","rowActionMenuItems","searchDelayTime","selectedRows","totalRows","t","data","setData","pagination","setPagination","pageIndex","pageSize","draggingRow","setDraggingRow","isTableContainerScrolledToStart","setIsTableContainerScrolledToStart","isTableContainerScrolledToEnd","setIsTableContainerScrolledToEnd","tableInnerContainerWidth","setTableInnerContainerWidth","tableOuterContainerRef","tableInnerContainerRef","tableContentRef","columnSorting","setColumnSorting","columnVisibility","setColumnVisibility","rowDensity","setRowDensity","search","setSearch","setFilters","initialFilters","setInitialFilters","isLoading","setIsLoading","isEmpty","setIsEmpty","setErrorMessage","_rowSelection","setRowSelection","rowSelection","tableOuterContainer","current","tableInnerContainer","dragHandleStyles","dragHandleText","draggableTableBodyRowClassName","handleDragHandleKeyDown","handleDragHandleOnDragCapture","handleDragHandleOnDragEnd","resetDraggingAndHoveredRow","updateRowOrder","page","rowDensityClassName","renderRowActions","currentIndex","index","rowIndex","undefined","convertFilterSelectOptions","options","map","option","label","value","convertColumnToFilter","column","enableColumnFilter","accessorKey","header","variant","filterVariant","filterSelectOptions","dataTableFilters","providedFilters","reduce","accumulator","item","foundColumn","find","filter","concat","defaultCell","cell","getValue","hasTextWrapping","columnDef","enableWrapping","sx","whiteSpace","textOverflow","overflow","children","emptyState","noResultsInnerContent","description","heading","emptyStateInnerContent","columnIds","columnOrder","shouldDisplayRowActions","muiTableBodyProps","className","muiTableBodyCellProps","getIsResizing","overflowWrap","muiDetailPanelProps","paddingBlock","getIsExpanded","Spacing3","muiTableBodyRowProps","table","isDetailPanel","currentRowId","draggingRowId","hoveredRowId","getState","hoveredRow","border","backgroundColor","muiRowDragHandleProps","onKeyDown","event","onBlur","onDragEnd","onDragCapture","muiTableHeadCellProps","currentColumn","sortedColumn","hasColumnWithGrow","some","grow","dataTable","state","sorting","globalFilter","icons","ArrowDownwardIcon","DragHandleIcon","SyncAltIcon","ExpandMoreIcon","enableColumnActions","enableColumnResizing","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","enableHiding","enablePagination","layoutMode","manualFiltering","manualSorting","muiTablePaperProps","elevation","selectAllMode","displayColumnDefOptions","align","display","visibility","ariaLabel","endIcon","isDisabled","size","minWidth","marginInline","padding","defaultColumn","Cell","enableRowOrdering","Boolean","enableRowDragging","enableRowActions","positionActionsColumn","enableRowSelection","onRowSelectionChange","enableSorting","onSortingChange","enableRowVirtualization","rowVirtualizerInstanceRef","rowVirtualizerOptions","overscan","renderEmptyRowsFallback","muiTableProps","ref","muiTableContainerProps","enableExpandAll","bulkActionMenuButton","buttonVariant","Object","keys","length","incomingData","sort","error","prev","lastRow","currentRowsCount","marginBottom","additionalActions","menuAlignment","defaultSearchTerm","onChangeFilters","onChangeSearch","severity","text","currentPageLabel","isMoreDisabled","loadMoreLabel","maxPageIndex","maxPageSize","nextLabel","onPaginationChange","previousLabel","rowsPerPageLabel","MemoizedDataTable","displayName"],"sources":["../../../src/DataTable/DataTable.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n MRT_Cell,\n MRT_Column,\n MRT_ColumnDef,\n MRT_DensityState,\n MRT_Row,\n MRT_RowData,\n MRT_RowSelectionState,\n MRT_RowVirtualizer,\n MRT_SortingState,\n MRT_TableContainer,\n MRT_TableInstance,\n MRT_TableOptions,\n MRT_VisibilityState,\n useMaterialReactTable,\n} from \"material-react-table\";\nimport {\n memo,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { Box } from \"../Box.js\";\nimport { Button, MenuButton, MenuButtonProps } from \"../Buttons/index.js\";\nimport { Callout } from \"../Callout.js\";\nimport { EmptyState } from \"../EmptyState.js\";\nimport {\n ArrowDownIcon,\n ArrowUnsortedIcon,\n ChevronDownIcon,\n DragIndicatorIcon,\n MoreIcon,\n} from \"../icons.generated/index.js\";\nimport { DataFilter, DataFilters } from \"../labs/DataFilters.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport {\n Pagination,\n paginationTypeValues,\n usePagination,\n} from \"../Pagination/index.js\";\nimport { densityValues } from \"./constants.js\";\nimport {\n DataTableRowActions,\n DataTableRowActionsProps,\n} from \"./DataTableRowActions.js\";\nimport { DataTableSettings } from \"./DataTableSettings.js\";\nimport { DataTableRowData, DataTableRowSelectionState } from \"./index.js\";\nimport { useRowReordering } from \"./useRowReordering.js\";\nimport { useScrollIndication } from \"./useScrollIndication.js\";\n\nexport type DataTableColumn<T extends DataTableRowData> = MRT_ColumnDef<T> & {\n /**\n * @deprecated use hasTextWrapping instead of enableWrapping\n */\n enableWrapping?: boolean;\n hasTextWrapping?: boolean;\n};\n\ntype DataTableColumnInstance<T extends DataTableRowData> = Omit<\n MRT_Column<T, unknown>,\n \"columnDef\"\n> & {\n columnDef: DataTableColumn<T>;\n};\n\ntype DataTableCell<T extends DataTableRowData> = Omit<MRT_Cell<T>, \"column\"> & {\n column: DataTableColumnInstance<T>;\n};\n\n/**\n * Utility type to extract a callback function type from a given key of `MRT_TableOptions`.\n *\n * The `Extract<>` utility is used to filter out only the function type from the property,\n * as some `MRT_TableOptions` properties can be union types (e.g., `function` | `object`).\n *\n * The `@typescript-eslint/no-unsafe-function-type` rule is disabled here because we must extract\n * a function type from a property of `MRT_TableOptions`, but the exact function signature varies\n * depending on the key.\n */\ntype MRT_TableOptionsCallback<\n TableOptionKey extends keyof Required<MRT_TableOptions<MRT_RowData>>,\n TData extends MRT_RowData = MRT_RowData,\n> = Extract<\n Required<MRT_TableOptions<TData>>[TableOptionKey],\n Function // eslint-disable-line @typescript-eslint/no-unsafe-function-type\n>;\n\nexport type DataTableGetDataType = {\n filters?: DataFilter[];\n page?: number;\n resultsPerPage?: number;\n search?: string;\n sort?: MRT_SortingState;\n};\n\nexport type DataTableOnReorderRowsType = {\n newRowIndex: number;\n rowId: string;\n};\n\nexport type DataTableRenderDetailPanelType = {\n row: MRT_Row<DataTableRowData>;\n table: MRT_TableInstance<DataTableRowData>;\n};\n\nexport type DataTableProps = {\n /**\n * An optional action button above the table.\n */\n additionalActionButton?: ReactNode;\n /**\n * MenuItems that go in an optional action menu above the table.\n */\n additionalActionMenuItems?: ReactNode;\n /**\n * Menu items to include in the bulk actions menu, which appears above the table if a row or rows are selected\n */\n bulkActionMenuItems?: (\n selectedRows: MRT_RowSelectionState,\n ) => MenuButtonProps[\"children\"];\n /**\n * The columns that make up the table\n */\n columns: DataTableColumn<DataTableRowData>[];\n /**\n * The current page number.\n */\n currentPage?: number;\n /**\n * The component to display when the table is displaying the initial empty state\n */\n emptyPlaceholder?: ReactNode;\n /**\n * If `error` is not undefined, the DataTable will indicate an error.\n */\n errorMessage?: string;\n /**\n * An optional set of filters to render in the filters menu\n */\n filters?: Array<DataFilter | DataTableColumn<DataTableRowData> | string>;\n /**\n * Callback that fires whenever the table needs to fetch new data, due to changes in\n * page, results per page, search input, filters, or sorting\n */\n getData: ({\n page,\n resultsPerPage,\n search,\n filters,\n sort,\n }: DataTableGetDataType) =>\n | MRT_TableOptions<DataTableRowData>[\"data\"]\n | Promise<MRT_TableOptions<DataTableRowData>[\"data\"]>;\n /**\n * The function to get the ID of a row\n */\n getRowId?: MRT_TableOptions<DataTableRowData>[\"getRowId\"];\n /**\n * If true, the end user will be able to change the table density.\n */\n hasChangeableDensity?: boolean;\n /**\n * If true, the end user can resize individual columns.\n */\n hasColumnResizing?: boolean;\n /**\n * If true, the end user will be able to show/hide columns.\n */\n hasColumnVisibility?: boolean;\n /**\n * If true, the end user will be able to filter columns.\n */\n hasFilters?: boolean;\n /**\n * If true, the table will include pagination controls.\n */\n hasPagination?: boolean;\n /**\n * If true, the end user can reorder rows via a drag-and-drop interface\n */\n hasRowReordering?: boolean;\n /**\n * If true, the table will include checkboxes on each row, enabling\n * the user to select some or all rows.\n */\n hasRowSelection?: boolean;\n /**\n * If true, the global table search controls will be shown.\n */\n hasSearch?: boolean;\n /**\n * If true, the search field will include a Search button, rather than\n * firing on input change.\n */\n hasSearchSubmitButton?: boolean;\n /**\n * If true, the end user can sort columns (ascending, descending, or neither)\n */\n hasSorting?: boolean;\n /**\n * The initial density (height & padding) of the table rows. This is available even if the\n * table density isn't changeable by the end user via hasChangeableDensity.\n */\n initialDensity?: (typeof densityValues)[number];\n /**\n * The initial search value\n */\n initialSearchValue?: string;\n /**\n * Is the next or show-more button disabled\n */\n isPaginationMoreDisabled?: boolean;\n /**\n * The highest page number allowed to be manually input in pagination\n */\n maxPages?: number;\n /**\n * The largest number of rows allowed to be shown per page. This only affects the row input\n * in pagination.\n */\n maxResultsPerPage?: number;\n /**\n * The component to display when the query returns no results\n */\n noResultsPlaceholder?: ReactNode;\n /**\n * Callback that fires when a row (or rows) is selected or unselected.\n */\n onChangeRowSelection?: (rowSelection: DataTableRowSelectionState) => void;\n /**\n * Callback that fires when the user reorders rows within the table. Can be used\n * to propagate order change to the backend.\n */\n onReorderRows?: ({ rowId, newRowIndex }: DataTableOnReorderRowsType) => void;\n /**\n * The type of pagination controls shown. Defaults to next/prev buttons, but can be\n * set to a simple \"Load more\" button by setting to \"loadMore\".\n */\n paginationType?: (typeof paginationTypeValues)[number];\n /**\n * The optional component to display when expanding a row.\n */\n renderDetailPanel?: MRT_TableOptions<DataTableRowData>[\"renderDetailPanel\"];\n /**\n * The number of results per page.\n */\n resultsPerPage?: number;\n /**\n * Action buttons to display in each row\n */\n rowActionButtons?: DataTableRowActionsProps[\"rowActionButtons\"];\n /**\n * Menu items to include in the optional actions menu on each row.\n */\n rowActionMenuItems?: DataTableRowActionsProps[\"rowActionMenuItems\"];\n /**\n * The debounce time, in milliseconds, for the search input firing\n * `onChangeSearch` when changed. If `hasSearchSubmitButton` is true,\n * this doesn't do anything.\n */\n searchDelayTime?: number;\n /**\n * Allows for external control of the selected row state\n * use in tandem with onChangeRowSelection to manage your state\n */\n selectedRows?: DataTableRowSelectionState;\n /**\n * The total number of rows in the table. Optional, because it's sometimes impossible\n * to calculate. Used in table pagination to know when to disable the \"next\"/\"more\" button.\n */\n totalRows?: number;\n};\n\nconst ScrollableTableContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isScrollableStart\" &&\n prop !== \"isScrollableEnd\",\n})<{\n isScrollableEnd: boolean;\n isScrollableStart: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens, isScrollableStart, isScrollableEnd }) => ({\n marginBlockEnd: odysseyDesignTokens.Spacing4,\n position: \"relative\",\n borderInlineStartColor: isScrollableStart\n ? odysseyDesignTokens.HueNeutral200\n : \"transparent\",\n borderInlineStartStyle: \"solid\",\n borderInlineStartWidth: odysseyDesignTokens.BorderWidthMain,\n \"::before\": {\n background:\n \"linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.33) 50%, rgba(0, 0, 0, 1) 100%)\",\n content: '\"\"',\n opacity: isScrollableStart ? \"0.075\" : \"0\",\n pointerEvents: \"none\",\n position: \"absolute\",\n top: 0,\n left: 0,\n bottom: 0,\n width: odysseyDesignTokens.Spacing6,\n zIndex: 100,\n transition: `opacity ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n },\n borderInlineEndColor: isScrollableEnd\n ? odysseyDesignTokens.HueNeutral200\n : \"transparent\",\n borderInlineEndStyle: \"solid\",\n borderInlineEndWidth: odysseyDesignTokens.BorderWidthMain,\n \"::after\": {\n background:\n \"linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.33) 50%, rgba(0, 0, 0, 1) 100%)\",\n content: '\"\"',\n opacity: isScrollableEnd ? \"0.075\" : \"0\",\n pointerEvents: \"none\",\n position: \"absolute\",\n top: 0,\n right: 0,\n bottom: 0,\n width: odysseyDesignTokens.Spacing6,\n transition: `opacity ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n },\n}));\n\nconst defaultGetRowId: DataTableProps[\"getRowId\"] = (row) => row.id as string;\n\nconst DataTable = ({\n additionalActionButton,\n additionalActionMenuItems,\n bulkActionMenuItems,\n columns,\n currentPage = 1,\n emptyPlaceholder,\n errorMessage: errorMessageProp,\n filters: filtersProp,\n getData,\n getRowId = defaultGetRowId,\n hasChangeableDensity,\n hasColumnResizing,\n hasColumnVisibility,\n hasFilters,\n hasPagination,\n hasRowReordering,\n hasRowSelection,\n hasSearch,\n hasSearchSubmitButton,\n hasSorting,\n initialDensity = densityValues[0],\n initialSearchValue = \"\",\n isPaginationMoreDisabled,\n noResultsPlaceholder,\n onChangeRowSelection,\n onReorderRows,\n paginationType = \"paged\",\n renderDetailPanel,\n resultsPerPage = 20,\n maxResultsPerPage,\n maxPages,\n rowActionButtons,\n rowActionMenuItems,\n searchDelayTime,\n selectedRows,\n totalRows,\n}: DataTableProps) => {\n const { t } = useTranslation();\n\n const [data, setData] = useState<DataTableRowData[]>([]);\n const [pagination, setPagination] = useState({\n pageIndex: currentPage,\n pageSize: resultsPerPage,\n });\n const [draggingRow, setDraggingRow] =\n useState<MRT_Row<DataTableRowData> | null>();\n const [isTableContainerScrolledToStart, setIsTableContainerScrolledToStart] =\n useState(true);\n const [isTableContainerScrolledToEnd, setIsTableContainerScrolledToEnd] =\n useState(true);\n const [tableInnerContainerWidth, setTableInnerContainerWidth] =\n useState<string>(\"100%\");\n const tableOuterContainerRef = useRef<HTMLDivElement>(null);\n const tableInnerContainerRef = useRef<HTMLDivElement>(null);\n const tableContentRef = useRef<HTMLTableElement>(null);\n\n // Table states\n const [columnSorting, setColumnSorting] = useState<MRT_SortingState>([]);\n const [columnVisibility, setColumnVisibility] =\n useState<MRT_VisibilityState>();\n const [rowDensity, setRowDensity] =\n useState<MRT_DensityState>(initialDensity);\n const [search, setSearch] = useState<string>(initialSearchValue);\n const [filters, setFilters] = useState<DataFilter[]>();\n const [initialFilters, setInitialFilters] = useState<DataFilter[]>();\n const [isLoading, setIsLoading] = useState<boolean | undefined>(true);\n const [isEmpty, setIsEmpty] = useState<boolean | undefined>();\n const [errorMessage, setErrorMessage] = useState<string | undefined>(\n errorMessageProp,\n );\n const [_rowSelection, setRowSelection] = useState<MRT_RowSelectionState>({});\n const rowSelection = selectedRows || _rowSelection;\n\n useScrollIndication({\n tableOuterContainer: tableOuterContainerRef.current,\n tableInnerContainer: tableInnerContainerRef.current,\n setIsTableContainerScrolledToStart: setIsTableContainerScrolledToStart,\n setIsTableContainerScrolledToEnd: setIsTableContainerScrolledToEnd,\n setTableInnerContainerWidth: setTableInnerContainerWidth,\n });\n\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const {\n dragHandleStyles,\n dragHandleText,\n draggableTableBodyRowClassName,\n handleDragHandleKeyDown,\n handleDragHandleOnDragCapture,\n handleDragHandleOnDragEnd,\n resetDraggingAndHoveredRow,\n updateRowOrder,\n } = useRowReordering({\n totalRows,\n onReorderRows,\n data,\n setData,\n draggingRow,\n setDraggingRow,\n resultsPerPage: pagination.pageSize,\n page: pagination.pageIndex,\n });\n\n const rowDensityClassName = useMemo(() => {\n return rowDensity === \"spacious\"\n ? \"MuiTableBody-spacious\"\n : rowDensity === \"compact\"\n ? \"MuiTableBody-compact\"\n : \"MuiTableBody-default\";\n }, [rowDensity]);\n\n const renderRowActions = useCallback(\n ({ row }: { row: MRT_Row<DataTableRowData> }) => {\n const currentIndex =\n row.index + (pagination.pageIndex - 1) * pagination.pageSize;\n return (\n <DataTableRowActions\n row={row}\n rowActionButtons={rowActionButtons}\n rowActionMenuItems={rowActionMenuItems}\n rowIndex={currentIndex}\n totalRows={totalRows}\n updateRowOrder={\n hasRowReordering && onReorderRows ? updateRowOrder : undefined\n }\n />\n );\n },\n [\n pagination,\n rowActionButtons,\n rowActionMenuItems,\n hasRowReordering,\n onReorderRows,\n totalRows,\n updateRowOrder,\n ],\n );\n\n /**\n * This hack is to provide compatibility with Material-React-Table's\n * filterOptions format, which allows for strings and { label: string, value: string }\n */\n const convertFilterSelectOptions = useCallback(\n (options: DataTableColumn<DataTableRowData>[\"filterSelectOptions\"]) =>\n options?.map((option) =>\n typeof option === \"string\"\n ? {\n label: option,\n value: option,\n }\n : {\n // If the option isn't a string, it must have value and/or option defined\n // If either is undefined, use the other\n // These shouldn't need `as`, but this is a legacy file now. --Kevin Ghadyani\n label: (option.label ?? option.value) as string,\n value: (option.value ?? option.label) as string,\n },\n ),\n [],\n );\n\n const convertColumnToFilter = useCallback(\n (column: DataTableColumn<DataTableRowData>) =>\n column.enableColumnFilter !== false && column.accessorKey\n ? ({\n id: column.accessorKey,\n label: column.header,\n variant: column.filterVariant,\n options: convertFilterSelectOptions(column.filterSelectOptions),\n } satisfies DataFilter as DataFilter)\n : null,\n [convertFilterSelectOptions],\n );\n\n /**\n * Filters default to the columns, but can be overridden\n * with the `filters` prop. `filters` should be an array\n * of column accessorKeys, column defs, or DataFilters.\n */\n const dataTableFilters = useMemo(() => {\n const providedFilters = filtersProp || columns;\n return providedFilters.reduce<DataFilter[]>((accumulator, item) => {\n if (typeof item === \"string\") {\n const foundColumn = columns.find(\n (column) => column.accessorKey === item,\n );\n if (foundColumn) {\n const filter = convertColumnToFilter(foundColumn);\n if (filter) {\n return accumulator.concat(filter);\n }\n }\n } else if (\"accessorKey\" in item) {\n // Checks if it's a column\n const filter = convertColumnToFilter(item);\n if (filter) {\n return accumulator.concat(filter);\n }\n } else if (\"label\" in item) {\n // Checks if it's a DataFilter\n return accumulator.concat(item);\n }\n // If none of the conditions match, item is ignored (not mapping to undefined)\n return accumulator;\n }, []);\n }, [columns, filtersProp, convertColumnToFilter]);\n\n const defaultCell = useCallback(\n ({ cell }: { cell: DataTableCell<DataTableRowData> }) => {\n const value = cell.getValue<string>();\n const hasTextWrapping =\n cell.column.columnDef.hasTextWrapping ||\n cell.column.columnDef.enableWrapping;\n\n return hasTextWrapping ? (\n value\n ) : (\n <Box\n sx={{\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n overflow: \"hidden\",\n }}\n >\n {value}\n </Box>\n );\n },\n [],\n );\n\n const emptyState = useCallback(() => {\n const noResultsInnerContent = noResultsPlaceholder || (\n <EmptyState\n description={t(\"table.noresults.text\")}\n heading={t(\"table.noresults.heading\")}\n />\n );\n\n const emptyStateInnerContent =\n emptyPlaceholder && isEmpty ? emptyPlaceholder : noResultsInnerContent;\n\n return (\n <Box sx={{ width: tableInnerContainerWidth }}>\n {emptyStateInnerContent}\n </Box>\n );\n }, [\n emptyPlaceholder,\n isEmpty,\n noResultsPlaceholder,\n t,\n tableInnerContainerWidth,\n ]);\n\n const columnIds = useMemo(() => {\n return columns.map((column) => column.accessorKey);\n }, [columns]);\n\n const columnOrder = useMemo(\n () => [\n \"mrt-row-drag\",\n \"mrt-row-select\",\n \"mrt-row-expand\",\n ...columnIds,\n \"mrt-row-actions\",\n ],\n [columnIds],\n ) as string[];\n\n const shouldDisplayRowActions = useMemo(\n () =>\n (hasRowReordering === true && onReorderRows) ||\n rowActionButtons ||\n rowActionMenuItems\n ? true\n : false,\n [hasRowReordering, onReorderRows, rowActionButtons, rowActionMenuItems],\n );\n\n const muiTableBodyProps = useCallback<\n MRT_TableOptionsCallback<\"muiTableBodyProps\">\n >(\n () => ({\n className: rowDensityClassName,\n }),\n [rowDensityClassName],\n );\n\n const muiTableBodyCellProps = useCallback<\n MRT_TableOptionsCallback<\"muiTableBodyCellProps\">\n >(\n ({ column }) => ({\n className: column.getIsResizing() ? \"isResizing\" : \"\",\n sx: {\n overflowWrap: \"anywhere\",\n },\n }),\n [],\n );\n\n const muiDetailPanelProps = useCallback<\n MRT_TableOptionsCallback<\"muiDetailPanelProps\">\n >(\n ({ row }) => ({\n sx: {\n paddingBlock: row.getIsExpanded()\n ? `${odysseyDesignTokens.Spacing3} !important`\n : undefined,\n },\n }),\n [odysseyDesignTokens.Spacing3],\n );\n\n const muiTableBodyRowProps = useCallback<\n MRT_TableOptionsCallback<\"muiTableBodyRowProps\">\n >(\n ({ table, row, isDetailPanel }) => ({\n className: draggableTableBodyRowClassName({\n currentRowId: row.id,\n draggingRowId: draggingRow?.id,\n hoveredRowId: table.getState().hoveredRow?.id,\n }),\n sx: {\n ...(isDetailPanel && {\n paddingBlock: \"0 !important\",\n border: 0,\n [\"&:hover\"]: {\n backgroundColor: `transparent !important`,\n },\n }),\n },\n }),\n [draggableTableBodyRowClassName, draggingRow?.id],\n );\n\n const muiRowDragHandleProps = useCallback<\n MRT_TableOptionsCallback<\"muiRowDragHandleProps\">\n >(\n ({ table, row }) => ({\n onKeyDown: (event) => handleDragHandleKeyDown({ table, row, event }),\n onBlur: () => resetDraggingAndHoveredRow(table),\n onDragEnd: () => handleDragHandleOnDragEnd(table),\n onDragCapture: () => handleDragHandleOnDragCapture(table),\n sx: dragHandleStyles,\n ...dragHandleText,\n }),\n [\n dragHandleStyles,\n dragHandleText,\n handleDragHandleKeyDown,\n resetDraggingAndHoveredRow,\n handleDragHandleOnDragEnd,\n handleDragHandleOnDragCapture,\n ],\n );\n\n const muiTableHeadCellProps = useCallback<\n MRT_TableOptionsCallback<\"muiTableHeadCellProps\">\n >(\n ({ column: currentColumn }) => ({\n className: columnSorting.find(\n (sortedColumn) => sortedColumn.id === currentColumn.id,\n )\n ? \"isSorted\"\n : \"isUnsorted\",\n }),\n [columnSorting],\n );\n\n const hasColumnWithGrow = useMemo(\n () => columns.some((column) => column.grow === true),\n [columns],\n );\n\n const dataTable = useMaterialReactTable({\n columns: columns,\n data: data,\n getRowId,\n state: {\n sorting: columnSorting,\n globalFilter: search,\n columnVisibility,\n isLoading,\n rowSelection,\n columnOrder,\n },\n icons: {\n ArrowDownwardIcon: ArrowDownIcon,\n DragHandleIcon: DragIndicatorIcon,\n SyncAltIcon: ArrowUnsortedIcon,\n ExpandMoreIcon: ChevronDownIcon,\n },\n\n // Base table settings\n enableColumnActions: false,\n enableColumnResizing: hasColumnResizing,\n enableDensityToggle: false,\n enableFilters: false,\n enableFullScreenToggle: false,\n enableGlobalFilter: false,\n enableHiding: false,\n enablePagination: false,\n layoutMode: \"grid-no-grow\",\n manualFiltering: true,\n manualSorting: true,\n muiTablePaperProps: {\n elevation: 0,\n sx: {\n overflow: \"visible\",\n },\n },\n selectAllMode: \"all\",\n displayColumnDefOptions: {\n \"mrt-row-actions\": {\n header: \"\",\n grow: true,\n muiTableBodyCellProps: {\n align: \"right\",\n sx: {\n overflow: \"visible\",\n width: \"unset\",\n },\n className: \"ods-actions-cell\",\n },\n muiTableHeadCellProps: {\n align: \"right\",\n sx: {\n width: \"unset\",\n },\n className: \"ods-actions-cell\",\n children: (\n <Box sx={{ display: \"flex\", visibility: \"hidden\" }}>\n {rowActionButtons && rowActionButtons({ id: null })}\n {((hasRowReordering && onReorderRows) || rowActionMenuItems) && (\n <Box>\n <Button\n ariaLabel={t(\"table.moreactions.arialabel\")}\n endIcon={<MoreIcon />}\n isDisabled\n size=\"small\"\n variant=\"floating\"\n />\n </Box>\n )}\n </Box>\n ),\n },\n },\n \"mrt-row-drag\": {\n header: \"\",\n muiTableBodyCellProps: {\n sx: {\n minWidth: 0,\n width: \"auto\",\n },\n className: \"ods-drag-handle\",\n },\n muiTableHeadCellProps: {\n sx: {\n minWidth: 0,\n width: \"auto\",\n },\n children: (\n // Add a spacer to simulate the width of the drag handle in the column.\n // Without this, the head cells are offset from their body cell counterparts\n <Box sx={{ marginInline: \"-0.1rem\" }}>\n <DragIndicatorIcon sx={{ marginInline: 1, opacity: 0 }} />\n </Box>\n ),\n },\n },\n \"mrt-row-select\": {\n muiTableHeadCellProps: {\n padding: \"checkbox\",\n },\n muiTableBodyCellProps: {\n padding: \"checkbox\",\n },\n },\n \"mrt-row-expand\": {\n header: \"\",\n },\n },\n muiTableBodyProps,\n defaultColumn: {\n Cell: defaultCell,\n },\n muiTableBodyCellProps,\n\n // Reordering\n enableRowOrdering: hasRowReordering && Boolean(onReorderRows),\n enableRowDragging: hasRowReordering && Boolean(onReorderRows),\n muiDetailPanelProps,\n muiTableBodyRowProps,\n muiRowDragHandleProps,\n\n // Row actions\n enableRowActions: shouldDisplayRowActions,\n positionActionsColumn:\n \"last\" as MRT_TableOptions<DataTableRowData>[\"positionActionsColumn\"],\n renderRowActions: ({ row }) => renderRowActions({ row }),\n\n // Row selection\n enableRowSelection: hasRowSelection,\n onRowSelectionChange: setRowSelection,\n\n // Sorting\n enableSorting: hasSorting,\n onSortingChange: setColumnSorting,\n muiTableHeadCellProps,\n\n // Virtualization\n enableRowVirtualization:\n paginationType !== \"loadMore\" && pagination.pageSize > 50,\n rowVirtualizerInstanceRef:\n useRef<MRT_RowVirtualizer<HTMLDivElement, HTMLTableRowElement>>(null),\n rowVirtualizerOptions: {\n overscan: 4,\n },\n\n // States\n renderEmptyRowsFallback: emptyState,\n\n // Refs\n muiTableProps: {\n ref: tableContentRef,\n className:\n !shouldDisplayRowActions && hasColumnResizing\n ? hasColumnWithGrow\n ? \"ods-hide-spacer-column\"\n : \"ods-hide-spacer-column ods-column-grow\"\n : \"\",\n },\n\n muiTableContainerProps: {\n ref: tableInnerContainerRef,\n },\n\n // Row expansion\n enableExpandAll: false,\n renderDetailPanel: renderDetailPanel,\n });\n\n // Effects\n const bulkActionMenuButton = useMemo(\n () => (\n <>\n <MenuButton\n ariaLabel=\"More actions\"\n buttonVariant=\"secondary\"\n endIcon={<MoreIcon />}\n isDisabled={Object.keys(rowSelection).length === 0}\n >\n {bulkActionMenuItems?.(rowSelection)}\n </MenuButton>\n </>\n ),\n [bulkActionMenuItems, rowSelection],\n );\n\n useEffect(() => {\n (async () => {\n setIsLoading(true);\n setErrorMessage(errorMessageProp);\n try {\n const incomingData = await getData?.({\n page: pagination.pageIndex,\n resultsPerPage: pagination.pageSize,\n search,\n filters,\n sort: columnSorting,\n });\n setData(incomingData);\n } catch (error) {\n setErrorMessage(typeof error === \"string\" ? error : t(\"table.error\"));\n } finally {\n setIsLoading(false);\n }\n })();\n }, [\n columnSorting,\n errorMessageProp,\n filters,\n getData,\n pagination,\n search,\n t,\n ]);\n\n useEffect(() => {\n if (!initialFilters && filters) {\n setInitialFilters(filters);\n }\n\n setIsEmpty(\n pagination.pageIndex === currentPage &&\n pagination.pageSize === resultsPerPage &&\n search === \"\" &&\n filters === initialFilters &&\n data.length === 0,\n );\n }, [\n filters,\n pagination,\n search,\n data,\n currentPage,\n initialFilters,\n resultsPerPage,\n ]);\n\n useEffect(() => {\n setPagination((prev) => ({\n pageIndex: 1,\n pageSize: prev.pageSize,\n }));\n }, [filters, search]);\n\n useEffect(() => {\n onChangeRowSelection?.(rowSelection);\n }, [rowSelection, onChangeRowSelection]);\n\n const { lastRow } = usePagination({\n currentRowsCount: data.length,\n pageIndex: pagination.pageIndex,\n pageSize: pagination.pageSize,\n totalRows,\n });\n\n // Render the table\n return (\n <>\n {(hasSearch ||\n hasFilters ||\n hasChangeableDensity ||\n hasColumnVisibility ||\n bulkActionMenuItems ||\n additionalActionButton ||\n additionalActionMenuItems) && (\n <Box sx={{ marginBottom: 5 }}>\n <DataFilters\n additionalActions={\n <>\n <DataTableSettings\n columns={columns}\n columnVisibility={columnVisibility}\n hasChangeableDensity={hasChangeableDensity}\n hasColumnVisibility={hasColumnVisibility}\n rowDensity={rowDensity}\n setColumnVisibility={setColumnVisibility}\n setRowDensity={setRowDensity}\n />\n {bulkActionMenuItems && bulkActionMenuButton}\n {additionalActionButton}\n {additionalActionMenuItems && (\n <MenuButton\n ariaLabel={t(\"table.moreactions.arialabel\")}\n buttonVariant=\"secondary\"\n endIcon={<MoreIcon />}\n menuAlignment=\"right\"\n >\n {additionalActionMenuItems}\n </MenuButton>\n )}\n </>\n }\n defaultSearchTerm={initialSearchValue}\n filters={hasFilters ? dataTableFilters : undefined}\n hasSearchSubmitButton={hasSearchSubmitButton}\n isDisabled={isEmpty}\n onChangeFilters={hasFilters ? setFilters : undefined}\n onChangeSearch={hasSearch ? setSearch : undefined}\n searchDelayTime={searchDelayTime}\n />\n </Box>\n )}\n\n {errorMessage && (\n <Box sx={{ marginBlockEnd: 2 }}>\n <Callout severity=\"error\" text={errorMessage} />\n </Box>\n )}\n\n <ScrollableTableContainer\n isScrollableEnd={!isTableContainerScrolledToEnd}\n isScrollableStart={!isTableContainerScrolledToStart}\n odysseyDesignTokens={odysseyDesignTokens}\n ref={tableOuterContainerRef}\n >\n <MRT_TableContainer table={dataTable} />\n </ScrollableTableContainer>\n\n {hasPagination && (\n <Pagination\n currentPageLabel={t(\"pagination.page\")}\n currentRowsCount={data.length}\n isDisabled={isEmpty}\n isMoreDisabled={isPaginationMoreDisabled}\n lastRow={lastRow}\n loadMoreLabel={t(\"pagination.loadmore\")}\n maxPageIndex={maxPages}\n maxPageSize={maxResultsPerPage}\n nextLabel={t(\"pagination.next\")}\n onPaginationChange={setPagination}\n pageIndex={pagination.pageIndex}\n pageSize={pagination.pageSize}\n previousLabel={t(\"pagination.previous\")}\n rowsPerPageLabel={t(\"pagination.rowsperpage\")}\n totalRows={totalRows}\n variant={paginationType}\n />\n )}\n </>\n );\n};\n\nconst MemoizedDataTable = memo(DataTable);\nMemoizedDataTable.displayName = \"DataTable\";\n\nexport { MemoizedDataTable as DataTable };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DataTable.js","names":["styled","MRT_TableContainer","useMaterialReactTable","memo","useCallback","useEffect","useMemo","useRef","useState","Box","Button","MenuButton","Callout","EmptyState","useTranslation","ArrowDownIcon","ArrowUnsortedIcon","ChevronDownIcon","DragIndicatorIcon","MoreIcon","DataFilters","useOdysseyDesignTokens","Pagination","usePagination","densityValues","DataTableRowActions","DataTableSettings","useRowReordering","useScrollIndication","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ScrollableTableContainer","shouldForwardProp","prop","odysseyDesignTokens","isScrollableStart","isScrollableEnd","marginBlockEnd","Spacing4","position","borderInlineStartColor","HueNeutral200","borderInlineStartStyle","borderInlineStartWidth","BorderWidthMain","background","content","opacity","pointerEvents","top","left","bottom","width","Spacing6","zIndex","transition","TransitionDurationMain","TransitionTimingMain","borderInlineEndColor","borderInlineEndStyle","borderInlineEndWidth","right","defaultGetRowId","row","id","DataTable","additionalActionButton","additionalActionMenuItems","bulkActionMenuItems","columns","currentPage","emptyPlaceholder","errorMessage","errorMessageProp","filters","filtersProp","getData","getRowId","hasChangeableDensity","hasColumnResizing","hasColumnVisibility","hasFilters","hasPagination","hasRowReordering","hasRowSelection","hasSearch","hasSearchSubmitButton","hasSorting","initialDensity","initialSearchValue","isPaginationMoreDisabled","noResultsPlaceholder","onChangeRowSelection","onReorderRows","paginationType","renderDetailPanel","resultsPerPage","maxResultsPerPage","maxPages","rowActionButtons","rowActionMenuItems","searchDelayTime","selectedRows","totalRows","t","data","setData","pagination","setPagination","pageIndex","pageSize","draggingRow","setDraggingRow","isTableContainerScrolledToStart","setIsTableContainerScrolledToStart","isTableContainerScrolledToEnd","setIsTableContainerScrolledToEnd","tableInnerContainerWidth","setTableInnerContainerWidth","tableOuterContainerRef","tableInnerContainerRef","tableContentRef","columnSorting","setColumnSorting","columnVisibility","setColumnVisibility","rowDensity","setRowDensity","search","setSearch","setFilters","initialFilters","setInitialFilters","isLoading","setIsLoading","isEmpty","setIsEmpty","setErrorMessage","_rowSelection","setRowSelection","rowSelection","tableOuterContainer","current","tableInnerContainer","dragHandleStyles","dragHandleText","draggableTableBodyRowClassName","handleDragHandleKeyDown","handleDragHandleOnDragCapture","handleDragHandleOnDragEnd","resetDraggingAndHoveredRow","updateRowOrder","page","rowDensityClassName","renderRowActions","currentIndex","index","rowIndex","undefined","convertFilterSelectOptions","options","map","option","label","value","convertColumnToFilter","column","enableColumnFilter","accessorKey","header","variant","filterVariant","filterSelectOptions","dataTableFilters","providedFilters","reduce","accumulator","item","foundColumn","find","filter","concat","defaultCell","cell","getValue","hasTextWrapping","columnDef","enableWrapping","sx","whiteSpace","textOverflow","overflow","children","emptyState","noResultsInnerContent","description","heading","emptyStateInnerContent","columnIds","columnOrder","shouldDisplayRowActions","muiTableBodyProps","className","muiTableBodyCellProps","getIsResizing","overflowWrap","muiDetailPanelProps","paddingBlock","getIsExpanded","Spacing3","muiTableBodyRowProps","table","isDetailPanel","currentRowId","draggingRowId","hoveredRowId","getState","hoveredRow","border","backgroundColor","muiRowDragHandleProps","onKeyDown","event","onBlur","onDragEnd","onDragCapture","muiTableHeadCellProps","currentColumn","sortedColumn","hasColumnWithGrow","some","grow","dataTable","state","sorting","globalFilter","icons","ArrowDownwardIcon","DragHandleIcon","SyncAltIcon","ExpandMoreIcon","enableColumnActions","enableColumnResizing","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","enableHiding","enablePagination","layoutMode","manualFiltering","manualSorting","muiTablePaperProps","elevation","selectAllMode","displayColumnDefOptions","align","display","visibility","ariaLabel","endIcon","isDisabled","size","minWidth","marginInline","padding","defaultColumn","Cell","enableRowOrdering","Boolean","enableRowDragging","enableRowActions","positionActionsColumn","enableRowSelection","onRowSelectionChange","enableSorting","onSortingChange","enableRowVirtualization","rowVirtualizerInstanceRef","rowVirtualizerOptions","overscan","renderEmptyRowsFallback","muiTableProps","ref","muiTableContainerProps","enableExpandAll","bulkActionMenuButton","buttonVariant","Object","keys","length","incomingData","sort","error","prev","lastRow","currentRowsCount","marginBottom","additionalActions","menuAlignment","defaultSearchTerm","onChangeFilters","onChangeSearch","severity","text","currentPageLabel","isMoreDisabled","loadMoreLabel","maxPageIndex","maxPageSize","nextLabel","onPaginationChange","previousLabel","rowsPerPageLabel","MemoizedDataTable","displayName"],"sources":["../../../src/DataTable/DataTable.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n MRT_Cell,\n MRT_Column,\n MRT_ColumnDef,\n MRT_DensityState,\n MRT_Row,\n MRT_RowData,\n MRT_RowSelectionState,\n MRT_RowVirtualizer,\n MRT_SortingState,\n MRT_TableContainer,\n MRT_TableInstance,\n MRT_TableOptions,\n MRT_VisibilityState,\n useMaterialReactTable,\n} from \"material-react-table\";\nimport {\n memo,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { Box } from \"../Box.js\";\nimport { Button, MenuButton, MenuButtonProps } from \"../Buttons/index.js\";\nimport { Callout } from \"../Callout.js\";\nimport { EmptyState } from \"../EmptyState.js\";\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\nimport {\n ArrowDownIcon,\n ArrowUnsortedIcon,\n ChevronDownIcon,\n DragIndicatorIcon,\n MoreIcon,\n} from \"../icons.generated/index.js\";\nimport { DataFilter, DataFilters } from \"../labs/DataFilters.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport {\n Pagination,\n paginationTypeValues,\n usePagination,\n} from \"../Pagination/index.js\";\nimport { densityValues } from \"./constants.js\";\nimport {\n DataTableRowActions,\n DataTableRowActionsProps,\n} from \"./DataTableRowActions.js\";\nimport { DataTableSettings } from \"./DataTableSettings.js\";\nimport { DataTableRowData, DataTableRowSelectionState } from \"./index.js\";\nimport { useRowReordering } from \"./useRowReordering.js\";\nimport { useScrollIndication } from \"./useScrollIndication.js\";\n\nexport type DataTableColumn<T extends DataTableRowData> = MRT_ColumnDef<T> & {\n /**\n * @deprecated use hasTextWrapping instead of enableWrapping\n */\n enableWrapping?: boolean;\n hasTextWrapping?: boolean;\n};\n\ntype DataTableColumnInstance<T extends DataTableRowData> = Omit<\n MRT_Column<T, unknown>,\n \"columnDef\"\n> & {\n columnDef: DataTableColumn<T>;\n};\n\ntype DataTableCell<T extends DataTableRowData> = Omit<MRT_Cell<T>, \"column\"> & {\n column: DataTableColumnInstance<T>;\n};\n\n/**\n * Utility type to extract a callback function type from a given key of `MRT_TableOptions`.\n *\n * The `Extract<>` utility is used to filter out only the function type from the property,\n * as some `MRT_TableOptions` properties can be union types (e.g., `function` | `object`).\n *\n * The `@typescript-eslint/no-unsafe-function-type` rule is disabled here because we must extract\n * a function type from a property of `MRT_TableOptions`, but the exact function signature varies\n * depending on the key.\n */\ntype MRT_TableOptionsCallback<\n TableOptionKey extends keyof Required<MRT_TableOptions<MRT_RowData>>,\n TData extends MRT_RowData = MRT_RowData,\n> = Extract<\n Required<MRT_TableOptions<TData>>[TableOptionKey],\n Function // eslint-disable-line @typescript-eslint/no-unsafe-function-type\n>;\n\nexport type DataTableGetDataType = {\n filters?: DataFilter[];\n page?: number;\n resultsPerPage?: number;\n search?: string;\n sort?: MRT_SortingState;\n};\n\nexport type DataTableOnReorderRowsType = {\n newRowIndex: number;\n rowId: string;\n};\n\nexport type DataTableRenderDetailPanelType = {\n row: MRT_Row<DataTableRowData>;\n table: MRT_TableInstance<DataTableRowData>;\n};\n\nexport type DataTableProps = {\n /**\n * An optional action button above the table.\n */\n additionalActionButton?: ReactNode;\n /**\n * MenuItems that go in an optional action menu above the table.\n */\n additionalActionMenuItems?: ReactNode;\n /**\n * Menu items to include in the bulk actions menu, which appears above the table if a row or rows are selected\n */\n bulkActionMenuItems?: (\n selectedRows: MRT_RowSelectionState,\n ) => MenuButtonProps[\"children\"];\n /**\n * The columns that make up the table\n */\n columns: DataTableColumn<DataTableRowData>[];\n /**\n * The current page number.\n */\n currentPage?: number;\n /**\n * The component to display when the table is displaying the initial empty state\n */\n emptyPlaceholder?: ReactNode;\n /**\n * If `error` is not undefined, the DataTable will indicate an error.\n */\n errorMessage?: string;\n /**\n * An optional set of filters to render in the filters menu\n */\n filters?: Array<DataFilter | DataTableColumn<DataTableRowData> | string>;\n /**\n * Callback that fires whenever the table needs to fetch new data, due to changes in\n * page, results per page, search input, filters, or sorting\n */\n getData: ({\n page,\n resultsPerPage,\n search,\n filters,\n sort,\n }: DataTableGetDataType) =>\n | MRT_TableOptions<DataTableRowData>[\"data\"]\n | Promise<MRT_TableOptions<DataTableRowData>[\"data\"]>;\n /**\n * The function to get the ID of a row\n */\n getRowId?: MRT_TableOptions<DataTableRowData>[\"getRowId\"];\n /**\n * If true, the end user will be able to change the table density.\n */\n hasChangeableDensity?: boolean;\n /**\n * If true, the end user can resize individual columns.\n */\n hasColumnResizing?: boolean;\n /**\n * If true, the end user will be able to show/hide columns.\n */\n hasColumnVisibility?: boolean;\n /**\n * If true, the end user will be able to filter columns.\n */\n hasFilters?: boolean;\n /**\n * If true, the table will include pagination controls.\n */\n hasPagination?: boolean;\n /**\n * If true, the end user can reorder rows via a drag-and-drop interface\n */\n hasRowReordering?: boolean;\n /**\n * If true, the table will include checkboxes on each row, enabling\n * the user to select some or all rows.\n */\n hasRowSelection?: boolean;\n /**\n * If true, the global table search controls will be shown.\n */\n hasSearch?: boolean;\n /**\n * If true, the search field will include a Search button, rather than\n * firing on input change.\n */\n hasSearchSubmitButton?: boolean;\n /**\n * If true, the end user can sort columns (ascending, descending, or neither)\n */\n hasSorting?: boolean;\n /**\n * The initial density (height & padding) of the table rows. This is available even if the\n * table density isn't changeable by the end user via hasChangeableDensity.\n */\n initialDensity?: (typeof densityValues)[number];\n /**\n * The initial search value\n */\n initialSearchValue?: string;\n /**\n * Is the next or show-more button disabled\n */\n isPaginationMoreDisabled?: boolean;\n /**\n * The highest page number allowed to be manually input in pagination\n */\n maxPages?: number;\n /**\n * The largest number of rows allowed to be shown per page. This only affects the row input\n * in pagination.\n */\n maxResultsPerPage?: number;\n /**\n * The component to display when the query returns no results\n */\n noResultsPlaceholder?: ReactNode;\n /**\n * Callback that fires when a row (or rows) is selected or unselected.\n */\n onChangeRowSelection?: (rowSelection: DataTableRowSelectionState) => void;\n /**\n * Callback that fires when the user reorders rows within the table. Can be used\n * to propagate order change to the backend.\n */\n onReorderRows?: ({ rowId, newRowIndex }: DataTableOnReorderRowsType) => void;\n /**\n * The type of pagination controls shown. Defaults to next/prev buttons, but can be\n * set to a simple \"Load more\" button by setting to \"loadMore\".\n */\n paginationType?: (typeof paginationTypeValues)[number];\n /**\n * The optional component to display when expanding a row.\n */\n renderDetailPanel?: MRT_TableOptions<DataTableRowData>[\"renderDetailPanel\"];\n /**\n * The number of results per page.\n */\n resultsPerPage?: number;\n /**\n * Action buttons to display in each row\n */\n rowActionButtons?: DataTableRowActionsProps[\"rowActionButtons\"];\n /**\n * Menu items to include in the optional actions menu on each row.\n */\n rowActionMenuItems?: DataTableRowActionsProps[\"rowActionMenuItems\"];\n /**\n * The debounce time, in milliseconds, for the search input firing\n * `onChangeSearch` when changed. If `hasSearchSubmitButton` is true,\n * this doesn't do anything.\n */\n searchDelayTime?: number;\n /**\n * Allows for external control of the selected row state\n * use in tandem with onChangeRowSelection to manage your state\n */\n selectedRows?: DataTableRowSelectionState;\n /**\n * The total number of rows in the table. Optional, because it's sometimes impossible\n * to calculate. Used in table pagination to know when to disable the \"next\"/\"more\" button.\n */\n totalRows?: number;\n};\n\nconst ScrollableTableContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isScrollableStart\" &&\n prop !== \"isScrollableEnd\",\n})<{\n isScrollableEnd: boolean;\n isScrollableStart: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens, isScrollableStart, isScrollableEnd }) => ({\n marginBlockEnd: odysseyDesignTokens.Spacing4,\n position: \"relative\",\n borderInlineStartColor: isScrollableStart\n ? odysseyDesignTokens.HueNeutral200\n : \"transparent\",\n borderInlineStartStyle: \"solid\",\n borderInlineStartWidth: odysseyDesignTokens.BorderWidthMain,\n \"::before\": {\n background:\n \"linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.33) 50%, rgba(0, 0, 0, 1) 100%)\",\n content: '\"\"',\n opacity: isScrollableStart ? \"0.075\" : \"0\",\n pointerEvents: \"none\",\n position: \"absolute\",\n top: 0,\n left: 0,\n bottom: 0,\n width: odysseyDesignTokens.Spacing6,\n zIndex: 100,\n transition: `opacity ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n },\n borderInlineEndColor: isScrollableEnd\n ? odysseyDesignTokens.HueNeutral200\n : \"transparent\",\n borderInlineEndStyle: \"solid\",\n borderInlineEndWidth: odysseyDesignTokens.BorderWidthMain,\n \"::after\": {\n background:\n \"linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.33) 50%, rgba(0, 0, 0, 1) 100%)\",\n content: '\"\"',\n opacity: isScrollableEnd ? \"0.075\" : \"0\",\n pointerEvents: \"none\",\n position: \"absolute\",\n top: 0,\n right: 0,\n bottom: 0,\n width: odysseyDesignTokens.Spacing6,\n transition: `opacity ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n },\n}));\n\nconst defaultGetRowId: DataTableProps[\"getRowId\"] = (row) => row.id as string;\n\nconst DataTable = ({\n additionalActionButton,\n additionalActionMenuItems,\n bulkActionMenuItems,\n columns,\n currentPage = 1,\n emptyPlaceholder,\n errorMessage: errorMessageProp,\n filters: filtersProp,\n getData,\n getRowId = defaultGetRowId,\n hasChangeableDensity,\n hasColumnResizing,\n hasColumnVisibility,\n hasFilters,\n hasPagination,\n hasRowReordering,\n hasRowSelection,\n hasSearch,\n hasSearchSubmitButton,\n hasSorting,\n initialDensity = densityValues[0],\n initialSearchValue = \"\",\n isPaginationMoreDisabled,\n noResultsPlaceholder,\n onChangeRowSelection,\n onReorderRows,\n paginationType = \"paged\",\n renderDetailPanel,\n resultsPerPage = 20,\n maxResultsPerPage,\n maxPages,\n rowActionButtons,\n rowActionMenuItems,\n searchDelayTime,\n selectedRows,\n totalRows,\n}: DataTableProps) => {\n const { t } = useTranslation();\n\n const [data, setData] = useState<DataTableRowData[]>([]);\n const [pagination, setPagination] = useState({\n pageIndex: currentPage,\n pageSize: resultsPerPage,\n });\n const [draggingRow, setDraggingRow] =\n useState<MRT_Row<DataTableRowData> | null>();\n const [isTableContainerScrolledToStart, setIsTableContainerScrolledToStart] =\n useState(true);\n const [isTableContainerScrolledToEnd, setIsTableContainerScrolledToEnd] =\n useState(true);\n const [tableInnerContainerWidth, setTableInnerContainerWidth] =\n useState<string>(\"100%\");\n const tableOuterContainerRef = useRef<HTMLDivElement>(null);\n const tableInnerContainerRef = useRef<HTMLDivElement>(null);\n const tableContentRef = useRef<HTMLTableElement>(null);\n\n // Table states\n const [columnSorting, setColumnSorting] = useState<MRT_SortingState>([]);\n const [columnVisibility, setColumnVisibility] =\n useState<MRT_VisibilityState>();\n const [rowDensity, setRowDensity] =\n useState<MRT_DensityState>(initialDensity);\n const [search, setSearch] = useState<string>(initialSearchValue);\n const [filters, setFilters] = useState<DataFilter[]>();\n const [initialFilters, setInitialFilters] = useState<DataFilter[]>();\n const [isLoading, setIsLoading] = useState<boolean | undefined>(true);\n const [isEmpty, setIsEmpty] = useState<boolean | undefined>();\n const [errorMessage, setErrorMessage] = useState<string | undefined>(\n errorMessageProp,\n );\n const [_rowSelection, setRowSelection] = useState<MRT_RowSelectionState>({});\n const rowSelection = selectedRows || _rowSelection;\n\n useScrollIndication({\n tableOuterContainer: tableOuterContainerRef.current,\n tableInnerContainer: tableInnerContainerRef.current,\n setIsTableContainerScrolledToStart: setIsTableContainerScrolledToStart,\n setIsTableContainerScrolledToEnd: setIsTableContainerScrolledToEnd,\n setTableInnerContainerWidth: setTableInnerContainerWidth,\n });\n\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const {\n dragHandleStyles,\n dragHandleText,\n draggableTableBodyRowClassName,\n handleDragHandleKeyDown,\n handleDragHandleOnDragCapture,\n handleDragHandleOnDragEnd,\n resetDraggingAndHoveredRow,\n updateRowOrder,\n } = useRowReordering({\n totalRows,\n onReorderRows,\n data,\n setData,\n draggingRow,\n setDraggingRow,\n resultsPerPage: pagination.pageSize,\n page: pagination.pageIndex,\n });\n\n const rowDensityClassName = useMemo(() => {\n return rowDensity === \"spacious\"\n ? \"MuiTableBody-spacious\"\n : rowDensity === \"compact\"\n ? \"MuiTableBody-compact\"\n : \"MuiTableBody-default\";\n }, [rowDensity]);\n\n const renderRowActions = useCallback(\n ({ row }: { row: MRT_Row<DataTableRowData> }) => {\n const currentIndex =\n row.index + (pagination.pageIndex - 1) * pagination.pageSize;\n return (\n <DataTableRowActions\n row={row}\n rowActionButtons={rowActionButtons}\n rowActionMenuItems={rowActionMenuItems}\n rowIndex={currentIndex}\n totalRows={totalRows}\n updateRowOrder={\n hasRowReordering && onReorderRows ? updateRowOrder : undefined\n }\n />\n );\n },\n [\n pagination,\n rowActionButtons,\n rowActionMenuItems,\n hasRowReordering,\n onReorderRows,\n totalRows,\n updateRowOrder,\n ],\n );\n\n /**\n * This hack is to provide compatibility with Material-React-Table's\n * filterOptions format, which allows for strings and { label: string, value: string }\n */\n const convertFilterSelectOptions = useCallback(\n (options: DataTableColumn<DataTableRowData>[\"filterSelectOptions\"]) =>\n options?.map((option) =>\n typeof option === \"string\"\n ? {\n label: option,\n value: option,\n }\n : {\n // If the option isn't a string, it must have value and/or option defined\n // If either is undefined, use the other\n // These shouldn't need `as`, but this is a legacy file now. --Kevin Ghadyani\n label: (option.label ?? option.value) as string,\n value: (option.value ?? option.label) as string,\n },\n ),\n [],\n );\n\n const convertColumnToFilter = useCallback(\n (column: DataTableColumn<DataTableRowData>) =>\n column.enableColumnFilter !== false && column.accessorKey\n ? ({\n id: column.accessorKey,\n label: column.header,\n variant: column.filterVariant,\n options: convertFilterSelectOptions(column.filterSelectOptions),\n } satisfies DataFilter as DataFilter)\n : null,\n [convertFilterSelectOptions],\n );\n\n /**\n * Filters default to the columns, but can be overridden\n * with the `filters` prop. `filters` should be an array\n * of column accessorKeys, column defs, or DataFilters.\n */\n const dataTableFilters = useMemo(() => {\n const providedFilters = filtersProp || columns;\n return providedFilters.reduce<DataFilter[]>((accumulator, item) => {\n if (typeof item === \"string\") {\n const foundColumn = columns.find(\n (column) => column.accessorKey === item,\n );\n if (foundColumn) {\n const filter = convertColumnToFilter(foundColumn);\n if (filter) {\n return accumulator.concat(filter);\n }\n }\n } else if (\"accessorKey\" in item) {\n // Checks if it's a column\n const filter = convertColumnToFilter(item);\n if (filter) {\n return accumulator.concat(filter);\n }\n } else if (\"label\" in item) {\n // Checks if it's a DataFilter\n return accumulator.concat(item);\n }\n // If none of the conditions match, item is ignored (not mapping to undefined)\n return accumulator;\n }, []);\n }, [columns, filtersProp, convertColumnToFilter]);\n\n const defaultCell = useCallback(\n ({ cell }: { cell: DataTableCell<DataTableRowData> }) => {\n const value = cell.getValue<string>();\n const hasTextWrapping =\n cell.column.columnDef.hasTextWrapping ||\n cell.column.columnDef.enableWrapping;\n\n return hasTextWrapping ? (\n value\n ) : (\n <Box\n sx={{\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n overflow: \"hidden\",\n }}\n >\n {value}\n </Box>\n );\n },\n [],\n );\n\n const emptyState = useCallback(() => {\n const noResultsInnerContent = noResultsPlaceholder || (\n <EmptyState\n description={t(\"table.noresults.text\")}\n heading={t(\"table.noresults.heading\")}\n />\n );\n\n const emptyStateInnerContent =\n emptyPlaceholder && isEmpty ? emptyPlaceholder : noResultsInnerContent;\n\n return (\n <Box sx={{ width: tableInnerContainerWidth }}>\n {emptyStateInnerContent}\n </Box>\n );\n }, [\n emptyPlaceholder,\n isEmpty,\n noResultsPlaceholder,\n t,\n tableInnerContainerWidth,\n ]);\n\n const columnIds = useMemo(() => {\n return columns.map((column) => column.accessorKey);\n }, [columns]);\n\n const columnOrder = useMemo(\n () => [\n \"mrt-row-drag\",\n \"mrt-row-select\",\n \"mrt-row-expand\",\n ...columnIds,\n \"mrt-row-actions\",\n ],\n [columnIds],\n ) as string[];\n\n const shouldDisplayRowActions = useMemo(\n () =>\n (hasRowReordering === true && onReorderRows) ||\n rowActionButtons ||\n rowActionMenuItems\n ? true\n : false,\n [hasRowReordering, onReorderRows, rowActionButtons, rowActionMenuItems],\n );\n\n const muiTableBodyProps = useCallback<\n MRT_TableOptionsCallback<\"muiTableBodyProps\">\n >(\n () => ({\n className: rowDensityClassName,\n }),\n [rowDensityClassName],\n );\n\n const muiTableBodyCellProps = useCallback<\n MRT_TableOptionsCallback<\"muiTableBodyCellProps\">\n >(\n ({ column }) => ({\n className: column.getIsResizing() ? \"isResizing\" : \"\",\n sx: {\n overflowWrap: \"anywhere\",\n },\n }),\n [],\n );\n\n const muiDetailPanelProps = useCallback<\n MRT_TableOptionsCallback<\"muiDetailPanelProps\">\n >(\n ({ row }) => ({\n sx: {\n paddingBlock: row.getIsExpanded()\n ? `${odysseyDesignTokens.Spacing3} !important`\n : undefined,\n },\n }),\n [odysseyDesignTokens.Spacing3],\n );\n\n const muiTableBodyRowProps = useCallback<\n MRT_TableOptionsCallback<\"muiTableBodyRowProps\">\n >(\n ({ table, row, isDetailPanel }) => ({\n className: draggableTableBodyRowClassName({\n currentRowId: row.id,\n draggingRowId: draggingRow?.id,\n hoveredRowId: table.getState().hoveredRow?.id,\n }),\n sx: {\n ...(isDetailPanel && {\n paddingBlock: \"0 !important\",\n border: 0,\n [\"&:hover\"]: {\n backgroundColor: `transparent !important`,\n },\n }),\n },\n }),\n [draggableTableBodyRowClassName, draggingRow?.id],\n );\n\n const muiRowDragHandleProps = useCallback<\n MRT_TableOptionsCallback<\"muiRowDragHandleProps\">\n >(\n ({ table, row }) => ({\n onKeyDown: (event) => handleDragHandleKeyDown({ table, row, event }),\n onBlur: () => resetDraggingAndHoveredRow(table),\n onDragEnd: () => handleDragHandleOnDragEnd(table),\n onDragCapture: () => handleDragHandleOnDragCapture(table),\n sx: dragHandleStyles,\n ...dragHandleText,\n }),\n [\n dragHandleStyles,\n dragHandleText,\n handleDragHandleKeyDown,\n resetDraggingAndHoveredRow,\n handleDragHandleOnDragEnd,\n handleDragHandleOnDragCapture,\n ],\n );\n\n const muiTableHeadCellProps = useCallback<\n MRT_TableOptionsCallback<\"muiTableHeadCellProps\">\n >(\n ({ column: currentColumn }) => ({\n className: columnSorting.find(\n (sortedColumn) => sortedColumn.id === currentColumn.id,\n )\n ? \"isSorted\"\n : \"isUnsorted\",\n }),\n [columnSorting],\n );\n\n const hasColumnWithGrow = useMemo(\n () => columns.some((column) => column.grow === true),\n [columns],\n );\n\n const dataTable = useMaterialReactTable({\n columns: columns,\n data: data,\n getRowId,\n state: {\n sorting: columnSorting,\n globalFilter: search,\n columnVisibility,\n isLoading,\n rowSelection,\n columnOrder,\n },\n icons: {\n ArrowDownwardIcon: ArrowDownIcon,\n DragHandleIcon: DragIndicatorIcon,\n SyncAltIcon: ArrowUnsortedIcon,\n ExpandMoreIcon: ChevronDownIcon,\n },\n\n // Base table settings\n enableColumnActions: false,\n enableColumnResizing: hasColumnResizing,\n enableDensityToggle: false,\n enableFilters: false,\n enableFullScreenToggle: false,\n enableGlobalFilter: false,\n enableHiding: false,\n enablePagination: false,\n layoutMode: \"grid-no-grow\",\n manualFiltering: true,\n manualSorting: true,\n muiTablePaperProps: {\n elevation: 0,\n sx: {\n overflow: \"visible\",\n },\n },\n selectAllMode: \"all\",\n displayColumnDefOptions: {\n \"mrt-row-actions\": {\n header: \"\",\n grow: true,\n muiTableBodyCellProps: {\n align: \"right\",\n sx: {\n overflow: \"visible\",\n width: \"unset\",\n },\n className: \"ods-actions-cell\",\n },\n muiTableHeadCellProps: {\n align: \"right\",\n sx: {\n width: \"unset\",\n },\n className: \"ods-actions-cell\",\n children: (\n <Box sx={{ display: \"flex\", visibility: \"hidden\" }}>\n {rowActionButtons && rowActionButtons({ id: null })}\n {((hasRowReordering && onReorderRows) || rowActionMenuItems) && (\n <Box>\n <Button\n ariaLabel={t(\"table.moreactions.arialabel\")}\n endIcon={<MoreIcon />}\n isDisabled\n size=\"small\"\n variant=\"floating\"\n />\n </Box>\n )}\n </Box>\n ),\n },\n },\n \"mrt-row-drag\": {\n header: \"\",\n muiTableBodyCellProps: {\n sx: {\n minWidth: 0,\n width: \"auto\",\n },\n className: \"ods-drag-handle\",\n },\n muiTableHeadCellProps: {\n sx: {\n minWidth: 0,\n width: \"auto\",\n },\n children: (\n // Add a spacer to simulate the width of the drag handle in the column.\n // Without this, the head cells are offset from their body cell counterparts\n <Box sx={{ marginInline: \"-0.1rem\" }}>\n <DragIndicatorIcon sx={{ marginInline: 1, opacity: 0 }} />\n </Box>\n ),\n },\n },\n \"mrt-row-select\": {\n muiTableHeadCellProps: {\n padding: \"checkbox\",\n },\n muiTableBodyCellProps: {\n padding: \"checkbox\",\n },\n },\n \"mrt-row-expand\": {\n header: \"\",\n },\n },\n muiTableBodyProps,\n defaultColumn: {\n Cell: defaultCell,\n },\n muiTableBodyCellProps,\n\n // Reordering\n enableRowOrdering: hasRowReordering && Boolean(onReorderRows),\n enableRowDragging: hasRowReordering && Boolean(onReorderRows),\n muiDetailPanelProps,\n muiTableBodyRowProps,\n muiRowDragHandleProps,\n\n // Row actions\n enableRowActions: shouldDisplayRowActions,\n positionActionsColumn:\n \"last\" as MRT_TableOptions<DataTableRowData>[\"positionActionsColumn\"],\n renderRowActions: ({ row }) => renderRowActions({ row }),\n\n // Row selection\n enableRowSelection: hasRowSelection,\n onRowSelectionChange: setRowSelection,\n\n // Sorting\n enableSorting: hasSorting,\n onSortingChange: setColumnSorting,\n muiTableHeadCellProps,\n\n // Virtualization\n enableRowVirtualization:\n paginationType !== \"loadMore\" && pagination.pageSize > 50,\n rowVirtualizerInstanceRef:\n useRef<MRT_RowVirtualizer<HTMLDivElement, HTMLTableRowElement>>(null),\n rowVirtualizerOptions: {\n overscan: 4,\n },\n\n // States\n renderEmptyRowsFallback: emptyState,\n\n // Refs\n muiTableProps: {\n ref: tableContentRef,\n className:\n !shouldDisplayRowActions && hasColumnResizing\n ? hasColumnWithGrow\n ? \"ods-hide-spacer-column\"\n : \"ods-hide-spacer-column ods-column-grow\"\n : \"\",\n },\n\n muiTableContainerProps: {\n ref: tableInnerContainerRef,\n },\n\n // Row expansion\n enableExpandAll: false,\n renderDetailPanel: renderDetailPanel,\n });\n\n // Effects\n const bulkActionMenuButton = useMemo(\n () => (\n <>\n <MenuButton\n ariaLabel=\"More actions\"\n buttonVariant=\"secondary\"\n endIcon={<MoreIcon />}\n isDisabled={Object.keys(rowSelection).length === 0}\n >\n {bulkActionMenuItems?.(rowSelection)}\n </MenuButton>\n </>\n ),\n [bulkActionMenuItems, rowSelection],\n );\n\n useEffect(() => {\n (async () => {\n setIsLoading(true);\n setErrorMessage(errorMessageProp);\n try {\n const incomingData = await getData?.({\n page: pagination.pageIndex,\n resultsPerPage: pagination.pageSize,\n search,\n filters,\n sort: columnSorting,\n });\n setData(incomingData);\n } catch (error) {\n setErrorMessage(typeof error === \"string\" ? error : t(\"table.error\"));\n } finally {\n setIsLoading(false);\n }\n })();\n }, [\n columnSorting,\n errorMessageProp,\n filters,\n getData,\n pagination,\n search,\n t,\n ]);\n\n useEffect(() => {\n if (!initialFilters && filters) {\n setInitialFilters(filters);\n }\n\n setIsEmpty(\n pagination.pageIndex === currentPage &&\n pagination.pageSize === resultsPerPage &&\n search === \"\" &&\n filters === initialFilters &&\n data.length === 0,\n );\n }, [\n filters,\n pagination,\n search,\n data,\n currentPage,\n initialFilters,\n resultsPerPage,\n ]);\n\n useEffect(() => {\n setPagination((prev) => ({\n pageIndex: 1,\n pageSize: prev.pageSize,\n }));\n }, [filters, search]);\n\n useEffect(() => {\n onChangeRowSelection?.(rowSelection);\n }, [rowSelection, onChangeRowSelection]);\n\n const { lastRow } = usePagination({\n currentRowsCount: data.length,\n pageIndex: pagination.pageIndex,\n pageSize: pagination.pageSize,\n totalRows,\n });\n\n // Render the table\n return (\n <>\n {(hasSearch ||\n hasFilters ||\n hasChangeableDensity ||\n hasColumnVisibility ||\n bulkActionMenuItems ||\n additionalActionButton ||\n additionalActionMenuItems) && (\n <Box sx={{ marginBottom: 5 }}>\n <DataFilters\n additionalActions={\n <>\n <DataTableSettings\n columns={columns}\n columnVisibility={columnVisibility}\n hasChangeableDensity={hasChangeableDensity}\n hasColumnVisibility={hasColumnVisibility}\n rowDensity={rowDensity}\n setColumnVisibility={setColumnVisibility}\n setRowDensity={setRowDensity}\n />\n {bulkActionMenuItems && bulkActionMenuButton}\n {additionalActionButton}\n {additionalActionMenuItems && (\n <MenuButton\n ariaLabel={t(\"table.moreactions.arialabel\")}\n buttonVariant=\"secondary\"\n endIcon={<MoreIcon />}\n menuAlignment=\"right\"\n >\n {additionalActionMenuItems}\n </MenuButton>\n )}\n </>\n }\n defaultSearchTerm={initialSearchValue}\n filters={hasFilters ? dataTableFilters : undefined}\n hasSearchSubmitButton={hasSearchSubmitButton}\n isDisabled={isEmpty}\n onChangeFilters={hasFilters ? setFilters : undefined}\n onChangeSearch={hasSearch ? setSearch : undefined}\n searchDelayTime={searchDelayTime}\n />\n </Box>\n )}\n\n {errorMessage && (\n <Box sx={{ marginBlockEnd: 2 }}>\n <Callout severity=\"error\" text={errorMessage} />\n </Box>\n )}\n\n <ScrollableTableContainer\n isScrollableEnd={!isTableContainerScrolledToEnd}\n isScrollableStart={!isTableContainerScrolledToStart}\n odysseyDesignTokens={odysseyDesignTokens}\n ref={tableOuterContainerRef}\n >\n <MRT_TableContainer table={dataTable} />\n </ScrollableTableContainer>\n\n {hasPagination && (\n <Pagination\n currentPageLabel={t(\"pagination.page\")}\n currentRowsCount={data.length}\n isDisabled={isEmpty}\n isMoreDisabled={isPaginationMoreDisabled}\n lastRow={lastRow}\n loadMoreLabel={t(\"pagination.loadmore\")}\n maxPageIndex={maxPages}\n maxPageSize={maxResultsPerPage}\n nextLabel={t(\"pagination.next\")}\n onPaginationChange={setPagination}\n pageIndex={pagination.pageIndex}\n pageSize={pagination.pageSize}\n previousLabel={t(\"pagination.previous\")}\n rowsPerPageLabel={t(\"pagination.rowsperpage\")}\n totalRows={totalRows}\n variant={paginationType}\n />\n )}\n </>\n );\n};\n\nconst MemoizedDataTable = memo(DataTable);\nMemoizedDataTable.displayName = \"DataTable\";\n\nexport { MemoizedDataTable as DataTable };\n"],"mappings":"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","ignoreList":[]}
@@ -11,8 +11,8 @@ import _Box from "@mui/material/Box";
11
11
  * See the License for the specific language governing permissions and limitations under the License.
12
12
  */
13
13
  import { memo, useCallback } from "react";
14
- import { Trans, useTranslation } from "react-i18next";
15
14
  import { MenuButton, MenuItem } from "../Buttons/index.js";
15
+ import { Trans, useTranslation } from "../i18n.generated/i18n.js";
16
16
  import { ArrowBottomIcon, ArrowDownIcon, ArrowTopIcon, ArrowUpIcon, MoreIcon } from "../icons.generated/index.js";
17
17
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
18
18
  const DataTableRowActions = ({
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableRowActions.js","names":["memo","useCallback","Trans","useTranslation","MenuButton","MenuItem","ArrowBottomIcon","ArrowDownIcon","ArrowTopIcon","ArrowUpIcon","MoreIcon","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DataTableRowActions","row","rowIndex","rowActionButtons","rowActionMenuItems","totalRows","updateRowOrder","t","handleToFrontClick","rowId","id","newRowIndex","handleForwardClick","Math","max","handleBackwardClick","handleToBackClick","_Box","display","children","ariaLabel","buttonVariant","endIcon","menuAlignment","size","isDisabled","onClick","i18nKey","MemoizedDataTableRowActions","displayName"],"sources":["../../../src/DataTable/DataTableRowActions.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { Box as MuiBox } from \"@mui/material\";\nimport { MRT_Row, MRT_RowData } from \"material-react-table\";\nimport { Fragment, memo, ReactElement, useCallback } from \"react\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n Button,\n MenuButton,\n MenuButtonProps,\n MenuItem,\n} from \"../Buttons/index.js\";\nimport {\n ArrowBottomIcon,\n ArrowDownIcon,\n ArrowTopIcon,\n ArrowUpIcon,\n MoreIcon,\n} from \"../icons.generated/index.js\";\nimport { DataTableProps } from \"./DataTable.js\";\n\nexport type DataTableRowActionsProps = {\n row: (MRT_Row<MRT_RowData> | MRT_RowData) & { id: string };\n rowActionButtons?: (\n row: MRT_RowData,\n ) => ReactElement<typeof Button | typeof Fragment>;\n rowActionMenuItems?: (row: MRT_RowData) => MenuButtonProps[\"children\"];\n rowIndex: number;\n totalRows?: DataTableProps[\"totalRows\"];\n updateRowOrder?: ({\n rowId,\n newRowIndex,\n }: {\n newRowIndex: number;\n rowId: string;\n }) => void;\n};\n\nconst DataTableRowActions = ({\n row,\n rowIndex,\n rowActionButtons,\n rowActionMenuItems,\n totalRows,\n updateRowOrder,\n}: DataTableRowActionsProps) => {\n const { t } = useTranslation();\n\n const handleToFrontClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: 0 });\n }\n }, [row.id, updateRowOrder]);\n\n const handleForwardClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: Math.max(0, rowIndex - 1) });\n }\n }, [row.id, rowIndex, updateRowOrder]);\n\n const handleBackwardClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: rowIndex + 1 });\n }\n }, [row.id, rowIndex, updateRowOrder]);\n\n const handleToBackClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({\n rowId: row.id,\n newRowIndex: totalRows ? totalRows - 1 : rowIndex,\n });\n }\n }, [row.id, rowIndex, totalRows, updateRowOrder]);\n\n return (\n <MuiBox display=\"flex\">\n {rowActionButtons?.(row)}\n {(rowActionMenuItems || updateRowOrder) && (\n <MenuButton\n ariaLabel={t(\"table.moreactions.arialabel\")}\n buttonVariant=\"floating\"\n endIcon={<MoreIcon />}\n menuAlignment=\"right\"\n size=\"small\"\n >\n {rowActionMenuItems && <>{rowActionMenuItems(row)}</>}\n {rowActionMenuItems && updateRowOrder && <hr />}\n {updateRowOrder && (\n <>\n <MenuItem isDisabled={rowIndex <= 0} onClick={handleToFrontClick}>\n <ArrowTopIcon /> <Trans i18nKey=\"table.reorder.tofront\" />\n </MenuItem>\n <MenuItem isDisabled={rowIndex <= 0} onClick={handleForwardClick}>\n <ArrowUpIcon /> <Trans i18nKey=\"table.reorder.forward\" />\n </MenuItem>\n <MenuItem\n isDisabled={totalRows ? rowIndex >= totalRows - 1 : false}\n onClick={handleBackwardClick}\n >\n <ArrowDownIcon /> <Trans i18nKey=\"table.reorder.backward\" />\n </MenuItem>\n {totalRows && (\n <MenuItem\n isDisabled={rowIndex >= totalRows - 1}\n onClick={handleToBackClick}\n >\n <ArrowBottomIcon /> <Trans i18nKey=\"table.reorder.toback\" />\n </MenuItem>\n )}\n </>\n )}\n </MenuButton>\n )}\n </MuiBox>\n );\n};\n\nconst MemoizedDataTableRowActions = memo(DataTableRowActions);\nMemoizedDataTableRowActions.displayName = \"DataTableRowActions\";\n\nexport { MemoizedDataTableRowActions as DataTableRowActions };\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA,SAAmBA,IAAI,EAAgBC,WAAW,QAAQ,OAAO;AACjE,SAASC,KAAK,EAAEC,cAAc,QAAQ,eAAe;AAErD,SAEEC,UAAU,EAEVC,QAAQ,QACH,qBAAqB;AAC5B,SACEC,eAAe,EACfC,aAAa,EACbC,YAAY,EACZC,WAAW,EACXC,QAAQ,QACH,6BAA6B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAoBrC,MAAMC,mBAAmB,GAAGA,CAAC;EAC3BC,GAAG;EACHC,QAAQ;EACRC,gBAAgB;EAChBC,kBAAkB;EAClBC,SAAS;EACTC;AACwB,CAAC,KAAK;EAC9B,MAAM;IAAEC;EAAE,CAAC,GAAGrB,cAAc,CAAC,CAAC;EAE9B,MAAMsB,kBAAkB,GAAGxB,WAAW,CAAC,MAAM;IAC3C,IAAIsB,cAAc,EAAE;MAClBA,cAAc,CAAC;QAAEG,KAAK,EAAER,GAAG,CAACS,EAAE;QAAEC,WAAW,EAAE;MAAE,CAAC,CAAC;IACnD;EACF,CAAC,EAAE,CAACV,GAAG,CAACS,EAAE,EAAEJ,cAAc,CAAC,CAAC;EAE5B,MAAMM,kBAAkB,GAAG5B,WAAW,CAAC,MAAM;IAC3C,IAAIsB,cAAc,EAAE;MAClBA,cAAc,CAAC;QAAEG,KAAK,EAAER,GAAG,CAACS,EAAE;QAAEC,WAAW,EAAEE,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEZ,QAAQ,GAAG,CAAC;MAAE,CAAC,CAAC;IAC3E;EACF,CAAC,EAAE,CAACD,GAAG,CAACS,EAAE,EAAER,QAAQ,EAAEI,cAAc,CAAC,CAAC;EAEtC,MAAMS,mBAAmB,GAAG/B,WAAW,CAAC,MAAM;IAC5C,IAAIsB,cAAc,EAAE;MAClBA,cAAc,CAAC;QAAEG,KAAK,EAAER,GAAG,CAACS,EAAE;QAAEC,WAAW,EAAET,QAAQ,GAAG;MAAE,CAAC,CAAC;IAC9D;EACF,CAAC,EAAE,CAACD,GAAG,CAACS,EAAE,EAAER,QAAQ,EAAEI,cAAc,CAAC,CAAC;EAEtC,MAAMU,iBAAiB,GAAGhC,WAAW,CAAC,MAAM;IAC1C,IAAIsB,cAAc,EAAE;MAClBA,cAAc,CAAC;QACbG,KAAK,EAAER,GAAG,CAACS,EAAE;QACbC,WAAW,EAAEN,SAAS,GAAGA,SAAS,GAAG,CAAC,GAAGH;MAC3C,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,CAACD,GAAG,CAACS,EAAE,EAAER,QAAQ,EAAEG,SAAS,EAAEC,cAAc,CAAC,CAAC;EAEjD,OACEP,KAAA,CAAAkB,IAAA;IAAQC,OAAO,EAAC,MAAM;IAAAC,QAAA,GACnBhB,gBAAgB,GAAGF,GAAG,CAAC,EACvB,CAACG,kBAAkB,IAAIE,cAAc,KACpCP,KAAA,CAACZ,UAAU;MACTiC,SAAS,EAAEb,CAAC,CAAC,6BAA6B,CAAE;MAC5Cc,aAAa,EAAC,UAAU;MACxBC,OAAO,EAAE3B,IAAA,CAACF,QAAQ,IAAE,CAAE;MACtB8B,aAAa,EAAC,OAAO;MACrBC,IAAI,EAAC,OAAO;MAAAL,QAAA,GAEXf,kBAAkB,IAAIT,IAAA,CAAAE,SAAA;QAAAsB,QAAA,EAAGf,kBAAkB,CAACH,GAAG;MAAC,CAAG,CAAC,EACpDG,kBAAkB,IAAIE,cAAc,IAAIX,IAAA,SAAK,CAAC,EAC9CW,cAAc,IACbP,KAAA,CAAAF,SAAA;QAAAsB,QAAA,GACEpB,KAAA,CAACX,QAAQ;UAACqC,UAAU,EAAEvB,QAAQ,IAAI,CAAE;UAACwB,OAAO,EAAElB,kBAAmB;UAAAW,QAAA,GAC/DxB,IAAA,CAACJ,YAAY,IAAE,CAAC,KAAC,EAAAI,IAAA,CAACV,KAAK;YAAC0C,OAAO,EAAC;UAAuB,CAAE,CAAC;QAAA,CAClD,CAAC,EACX5B,KAAA,CAACX,QAAQ;UAACqC,UAAU,EAAEvB,QAAQ,IAAI,CAAE;UAACwB,OAAO,EAAEd,kBAAmB;UAAAO,QAAA,GAC/DxB,IAAA,CAACH,WAAW,IAAE,CAAC,KAAC,EAAAG,IAAA,CAACV,KAAK;YAAC0C,OAAO,EAAC;UAAuB,CAAE,CAAC;QAAA,CACjD,CAAC,EACX5B,KAAA,CAACX,QAAQ;UACPqC,UAAU,EAAEpB,SAAS,GAAGH,QAAQ,IAAIG,SAAS,GAAG,CAAC,GAAG,KAAM;UAC1DqB,OAAO,EAAEX,mBAAoB;UAAAI,QAAA,GAE7BxB,IAAA,CAACL,aAAa,IAAE,CAAC,KAAC,EAAAK,IAAA,CAACV,KAAK;YAAC0C,OAAO,EAAC;UAAwB,CAAE,CAAC;QAAA,CACpD,CAAC,EACVtB,SAAS,IACRN,KAAA,CAACX,QAAQ;UACPqC,UAAU,EAAEvB,QAAQ,IAAIG,SAAS,GAAG,CAAE;UACtCqB,OAAO,EAAEV,iBAAkB;UAAAG,QAAA,GAE3BxB,IAAA,CAACN,eAAe,IAAE,CAAC,KAAC,EAAAM,IAAA,CAACV,KAAK;YAAC0C,OAAO,EAAC;UAAsB,CAAE,CAAC;QAAA,CACpD,CACX;MAAA,CACD,CACH;IAAA,CACS,CACb;EAAA,CACK,CAAC;AAEb,CAAC;AAED,MAAMC,2BAA2B,GAAG7C,IAAI,CAACiB,mBAAmB,CAAC;AAC7D4B,2BAA2B,CAACC,WAAW,GAAG,qBAAqB;AAE/D,SAASD,2BAA2B,IAAI5B,mBAAmB","ignoreList":[]}
1
+ {"version":3,"file":"DataTableRowActions.js","names":["memo","useCallback","MenuButton","MenuItem","Trans","useTranslation","ArrowBottomIcon","ArrowDownIcon","ArrowTopIcon","ArrowUpIcon","MoreIcon","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DataTableRowActions","row","rowIndex","rowActionButtons","rowActionMenuItems","totalRows","updateRowOrder","t","handleToFrontClick","rowId","id","newRowIndex","handleForwardClick","Math","max","handleBackwardClick","handleToBackClick","_Box","display","children","ariaLabel","buttonVariant","endIcon","menuAlignment","size","isDisabled","onClick","i18nKey","MemoizedDataTableRowActions","displayName"],"sources":["../../../src/DataTable/DataTableRowActions.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { Box as MuiBox } from \"@mui/material\";\nimport { MRT_Row, MRT_RowData } from \"material-react-table\";\nimport { Fragment, memo, ReactElement, useCallback } from \"react\";\n\nimport {\n Button,\n MenuButton,\n MenuButtonProps,\n MenuItem,\n} from \"../Buttons/index.js\";\nimport { Trans, useTranslation } from \"../i18n.generated/i18n.js\";\nimport {\n ArrowBottomIcon,\n ArrowDownIcon,\n ArrowTopIcon,\n ArrowUpIcon,\n MoreIcon,\n} from \"../icons.generated/index.js\";\nimport { DataTableProps } from \"./DataTable.js\";\n\nexport type DataTableRowActionsProps = {\n row: (MRT_Row<MRT_RowData> | MRT_RowData) & { id: string };\n rowActionButtons?: (\n row: MRT_RowData,\n ) => ReactElement<typeof Button | typeof Fragment>;\n rowActionMenuItems?: (row: MRT_RowData) => MenuButtonProps[\"children\"];\n rowIndex: number;\n totalRows?: DataTableProps[\"totalRows\"];\n updateRowOrder?: ({\n rowId,\n newRowIndex,\n }: {\n newRowIndex: number;\n rowId: string;\n }) => void;\n};\n\nconst DataTableRowActions = ({\n row,\n rowIndex,\n rowActionButtons,\n rowActionMenuItems,\n totalRows,\n updateRowOrder,\n}: DataTableRowActionsProps) => {\n const { t } = useTranslation();\n\n const handleToFrontClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: 0 });\n }\n }, [row.id, updateRowOrder]);\n\n const handleForwardClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: Math.max(0, rowIndex - 1) });\n }\n }, [row.id, rowIndex, updateRowOrder]);\n\n const handleBackwardClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: rowIndex + 1 });\n }\n }, [row.id, rowIndex, updateRowOrder]);\n\n const handleToBackClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({\n rowId: row.id,\n newRowIndex: totalRows ? totalRows - 1 : rowIndex,\n });\n }\n }, [row.id, rowIndex, totalRows, updateRowOrder]);\n\n return (\n <MuiBox display=\"flex\">\n {rowActionButtons?.(row)}\n {(rowActionMenuItems || updateRowOrder) && (\n <MenuButton\n ariaLabel={t(\"table.moreactions.arialabel\")}\n buttonVariant=\"floating\"\n endIcon={<MoreIcon />}\n menuAlignment=\"right\"\n size=\"small\"\n >\n {rowActionMenuItems && <>{rowActionMenuItems(row)}</>}\n {rowActionMenuItems && updateRowOrder && <hr />}\n {updateRowOrder && (\n <>\n <MenuItem isDisabled={rowIndex <= 0} onClick={handleToFrontClick}>\n <ArrowTopIcon /> <Trans i18nKey=\"table.reorder.tofront\" />\n </MenuItem>\n <MenuItem isDisabled={rowIndex <= 0} onClick={handleForwardClick}>\n <ArrowUpIcon /> <Trans i18nKey=\"table.reorder.forward\" />\n </MenuItem>\n <MenuItem\n isDisabled={totalRows ? rowIndex >= totalRows - 1 : false}\n onClick={handleBackwardClick}\n >\n <ArrowDownIcon /> <Trans i18nKey=\"table.reorder.backward\" />\n </MenuItem>\n {totalRows && (\n <MenuItem\n isDisabled={rowIndex >= totalRows - 1}\n onClick={handleToBackClick}\n >\n <ArrowBottomIcon /> <Trans i18nKey=\"table.reorder.toback\" />\n </MenuItem>\n )}\n </>\n )}\n </MenuButton>\n )}\n </MuiBox>\n );\n};\n\nconst MemoizedDataTableRowActions = memo(DataTableRowActions);\nMemoizedDataTableRowActions.displayName = \"DataTableRowActions\";\n\nexport { MemoizedDataTableRowActions as DataTableRowActions };\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA,SAAmBA,IAAI,EAAgBC,WAAW,QAAQ,OAAO;AAEjE,SAEEC,UAAU,EAEVC,QAAQ,QACH,qBAAqB;AAC5B,SAASC,KAAK,EAAEC,cAAc,QAAQ,2BAA2B;AACjE,SACEC,eAAe,EACfC,aAAa,EACbC,YAAY,EACZC,WAAW,EACXC,QAAQ,QACH,6BAA6B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAoBrC,MAAMC,mBAAmB,GAAGA,CAAC;EAC3BC,GAAG;EACHC,QAAQ;EACRC,gBAAgB;EAChBC,kBAAkB;EAClBC,SAAS;EACTC;AACwB,CAAC,KAAK;EAC9B,MAAM;IAAEC;EAAE,CAAC,GAAGnB,cAAc,CAAC,CAAC;EAE9B,MAAMoB,kBAAkB,GAAGxB,WAAW,CAAC,MAAM;IAC3C,IAAIsB,cAAc,EAAE;MAClBA,cAAc,CAAC;QAAEG,KAAK,EAAER,GAAG,CAACS,EAAE;QAAEC,WAAW,EAAE;MAAE,CAAC,CAAC;IACnD;EACF,CAAC,EAAE,CAACV,GAAG,CAACS,EAAE,EAAEJ,cAAc,CAAC,CAAC;EAE5B,MAAMM,kBAAkB,GAAG5B,WAAW,CAAC,MAAM;IAC3C,IAAIsB,cAAc,EAAE;MAClBA,cAAc,CAAC;QAAEG,KAAK,EAAER,GAAG,CAACS,EAAE;QAAEC,WAAW,EAAEE,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEZ,QAAQ,GAAG,CAAC;MAAE,CAAC,CAAC;IAC3E;EACF,CAAC,EAAE,CAACD,GAAG,CAACS,EAAE,EAAER,QAAQ,EAAEI,cAAc,CAAC,CAAC;EAEtC,MAAMS,mBAAmB,GAAG/B,WAAW,CAAC,MAAM;IAC5C,IAAIsB,cAAc,EAAE;MAClBA,cAAc,CAAC;QAAEG,KAAK,EAAER,GAAG,CAACS,EAAE;QAAEC,WAAW,EAAET,QAAQ,GAAG;MAAE,CAAC,CAAC;IAC9D;EACF,CAAC,EAAE,CAACD,GAAG,CAACS,EAAE,EAAER,QAAQ,EAAEI,cAAc,CAAC,CAAC;EAEtC,MAAMU,iBAAiB,GAAGhC,WAAW,CAAC,MAAM;IAC1C,IAAIsB,cAAc,EAAE;MAClBA,cAAc,CAAC;QACbG,KAAK,EAAER,GAAG,CAACS,EAAE;QACbC,WAAW,EAAEN,SAAS,GAAGA,SAAS,GAAG,CAAC,GAAGH;MAC3C,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,CAACD,GAAG,CAACS,EAAE,EAAER,QAAQ,EAAEG,SAAS,EAAEC,cAAc,CAAC,CAAC;EAEjD,OACEP,KAAA,CAAAkB,IAAA;IAAQC,OAAO,EAAC,MAAM;IAAAC,QAAA,GACnBhB,gBAAgB,GAAGF,GAAG,CAAC,EACvB,CAACG,kBAAkB,IAAIE,cAAc,KACpCP,KAAA,CAACd,UAAU;MACTmC,SAAS,EAAEb,CAAC,CAAC,6BAA6B,CAAE;MAC5Cc,aAAa,EAAC,UAAU;MACxBC,OAAO,EAAE3B,IAAA,CAACF,QAAQ,IAAE,CAAE;MACtB8B,aAAa,EAAC,OAAO;MACrBC,IAAI,EAAC,OAAO;MAAAL,QAAA,GAEXf,kBAAkB,IAAIT,IAAA,CAAAE,SAAA;QAAAsB,QAAA,EAAGf,kBAAkB,CAACH,GAAG;MAAC,CAAG,CAAC,EACpDG,kBAAkB,IAAIE,cAAc,IAAIX,IAAA,SAAK,CAAC,EAC9CW,cAAc,IACbP,KAAA,CAAAF,SAAA;QAAAsB,QAAA,GACEpB,KAAA,CAACb,QAAQ;UAACuC,UAAU,EAAEvB,QAAQ,IAAI,CAAE;UAACwB,OAAO,EAAElB,kBAAmB;UAAAW,QAAA,GAC/DxB,IAAA,CAACJ,YAAY,IAAE,CAAC,KAAC,EAAAI,IAAA,CAACR,KAAK;YAACwC,OAAO,EAAC;UAAuB,CAAE,CAAC;QAAA,CAClD,CAAC,EACX5B,KAAA,CAACb,QAAQ;UAACuC,UAAU,EAAEvB,QAAQ,IAAI,CAAE;UAACwB,OAAO,EAAEd,kBAAmB;UAAAO,QAAA,GAC/DxB,IAAA,CAACH,WAAW,IAAE,CAAC,KAAC,EAAAG,IAAA,CAACR,KAAK;YAACwC,OAAO,EAAC;UAAuB,CAAE,CAAC;QAAA,CACjD,CAAC,EACX5B,KAAA,CAACb,QAAQ;UACPuC,UAAU,EAAEpB,SAAS,GAAGH,QAAQ,IAAIG,SAAS,GAAG,CAAC,GAAG,KAAM;UAC1DqB,OAAO,EAAEX,mBAAoB;UAAAI,QAAA,GAE7BxB,IAAA,CAACL,aAAa,IAAE,CAAC,KAAC,EAAAK,IAAA,CAACR,KAAK;YAACwC,OAAO,EAAC;UAAwB,CAAE,CAAC;QAAA,CACpD,CAAC,EACVtB,SAAS,IACRN,KAAA,CAACb,QAAQ;UACPuC,UAAU,EAAEvB,QAAQ,IAAIG,SAAS,GAAG,CAAE;UACtCqB,OAAO,EAAEV,iBAAkB;UAAAG,QAAA,GAE3BxB,IAAA,CAACN,eAAe,IAAE,CAAC,KAAC,EAAAM,IAAA,CAACR,KAAK;YAACwC,OAAO,EAAC;UAAsB,CAAE,CAAC;QAAA,CACpD,CACX;MAAA,CACD,CACH;IAAA,CACS,CACb;EAAA,CACK,CAAC;AAEb,CAAC;AAED,MAAMC,2BAA2B,GAAG7C,IAAI,CAACiB,mBAAmB,CAAC;AAC7D4B,2BAA2B,CAACC,WAAW,GAAG,qBAAqB;AAE/D,SAASD,2BAA2B,IAAI5B,mBAAmB","ignoreList":[]}
@@ -11,8 +11,8 @@ import _Checkbox from "@mui/material/Checkbox";
11
11
  * See the License for the specific language governing permissions and limitations under the License.
12
12
  */
13
13
  import { memo, useCallback, useMemo } from "react";
14
- import { useTranslation } from "react-i18next";
15
14
  import { MenuButton, MenuItem } from "../Buttons/index.js";
15
+ import { useTranslation } from "../i18n.generated/i18n.js";
16
16
  import { ListIcon, ShowIcon } from "../icons.generated/index.js";
17
17
  import { densityValues } from "./constants.js";
18
18
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";