@okta/odyssey-react-mui 1.15.8 → 1.20.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 (973) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/README.md +4 -0
  3. package/dist/Accordion.js +2 -0
  4. package/dist/Accordion.js.map +1 -1
  5. package/dist/Autocomplete.js +9 -0
  6. package/dist/Autocomplete.js.map +1 -1
  7. package/dist/Badge.js +1 -0
  8. package/dist/Badge.js.map +1 -1
  9. package/dist/Banner.js +6 -5
  10. package/dist/Banner.js.map +1 -1
  11. package/dist/Button.js +15 -11
  12. package/dist/Button.js.map +1 -1
  13. package/dist/Callout.js +45 -7
  14. package/dist/Callout.js.map +1 -1
  15. package/dist/{Tile.js → Card.js} +43 -28
  16. package/dist/Card.js.map +1 -0
  17. package/dist/DataTable/DataTable.js +68 -40
  18. package/dist/DataTable/DataTable.js.map +1 -1
  19. package/dist/DataTable/DataTableRowActions.js.map +1 -1
  20. package/dist/DataTable/constants.js +0 -1
  21. package/dist/DataTable/constants.js.map +1 -1
  22. package/dist/DataTable/index.js +0 -1
  23. package/dist/DataTable/index.js.map +1 -1
  24. package/dist/Dialog.js +9 -3
  25. package/dist/Dialog.js.map +1 -1
  26. package/dist/{labs/Drawer.js → Drawer.js} +5 -5
  27. package/dist/Drawer.js.map +1 -0
  28. package/dist/{DataTable/DataTableEmptyState.js → EmptyState.js} +17 -15
  29. package/dist/EmptyState.js.map +1 -0
  30. package/dist/ErrorMessageList.js +1 -1
  31. package/dist/ErrorMessageList.js.map +1 -1
  32. package/dist/FieldError.js +3 -2
  33. package/dist/FieldError.js.map +1 -1
  34. package/dist/HtmlProps.js.map +1 -1
  35. package/dist/MenuItem.js +1 -0
  36. package/dist/MenuItem.js.map +1 -1
  37. package/dist/OdysseyCacheProvider.js +5 -2
  38. package/dist/OdysseyCacheProvider.js.map +1 -1
  39. package/dist/OdysseyProvider.js +1 -1
  40. package/dist/OdysseyProvider.js.map +1 -1
  41. package/dist/OdysseyTranslationProvider.js +1 -6
  42. package/dist/OdysseyTranslationProvider.js.map +1 -1
  43. package/dist/{DataTable/DataTablePagination.js → Pagination/Pagination.js} +56 -59
  44. package/dist/Pagination/Pagination.js.map +1 -0
  45. package/dist/Pagination/constants.js +14 -0
  46. package/dist/Pagination/constants.js.map +1 -0
  47. package/dist/Pagination/index.js +15 -0
  48. package/dist/Pagination/index.js.map +1 -0
  49. package/dist/Pagination/usePagination.js +51 -0
  50. package/dist/Pagination/usePagination.js.map +1 -0
  51. package/dist/Radio.js +17 -5
  52. package/dist/Radio.js.map +1 -1
  53. package/dist/ScreenReaderText.js +4 -0
  54. package/dist/ScreenReaderText.js.map +1 -1
  55. package/dist/Select.js +33 -42
  56. package/dist/Select.js.map +1 -1
  57. package/dist/Status.js +5 -3
  58. package/dist/Status.js.map +1 -1
  59. package/dist/Surface.js +38 -0
  60. package/dist/Surface.js.map +1 -0
  61. package/dist/Tabs.js +22 -0
  62. package/dist/Tabs.js.map +1 -1
  63. package/dist/TextField.js +48 -0
  64. package/dist/TextField.js.map +1 -1
  65. package/dist/Toast.js +37 -34
  66. package/dist/Toast.js.map +1 -1
  67. package/dist/assertEnv.d.ts +18 -0
  68. package/dist/assertEnv.d.ts.map +1 -0
  69. package/dist/assertEnv.js +32 -0
  70. package/dist/icons.generated/Add.js +1 -1
  71. package/dist/icons.generated/Add.js.map +1 -1
  72. package/dist/icons.generated/AddCircle.js +1 -1
  73. package/dist/icons.generated/AddCircle.js.map +1 -1
  74. package/dist/icons.generated/Apps.js +1 -1
  75. package/dist/icons.generated/Apps.js.map +1 -1
  76. package/dist/icons.generated/ArrowBottom.js +2 -2
  77. package/dist/icons.generated/ArrowBottom.js.map +1 -1
  78. package/dist/icons.generated/ArrowDown.js +1 -1
  79. package/dist/icons.generated/ArrowDown.js.map +1 -1
  80. package/dist/icons.generated/ArrowLeft.js +1 -1
  81. package/dist/icons.generated/ArrowLeft.js.map +1 -1
  82. package/dist/icons.generated/ArrowLowerLeft.js +1 -1
  83. package/dist/icons.generated/ArrowLowerLeft.js.map +1 -1
  84. package/dist/icons.generated/ArrowLowerRight.js +1 -1
  85. package/dist/icons.generated/ArrowLowerRight.js.map +1 -1
  86. package/dist/icons.generated/ArrowRight.js +1 -1
  87. package/dist/icons.generated/ArrowRight.js.map +1 -1
  88. package/dist/icons.generated/ArrowTop.js +2 -2
  89. package/dist/icons.generated/ArrowTop.js.map +1 -1
  90. package/dist/icons.generated/ArrowUnsorted.js +1 -1
  91. package/dist/icons.generated/ArrowUnsorted.js.map +1 -1
  92. package/dist/icons.generated/ArrowUp.js +1 -1
  93. package/dist/icons.generated/ArrowUp.js.map +1 -1
  94. package/dist/icons.generated/ArrowUpperLeft.js +1 -1
  95. package/dist/icons.generated/ArrowUpperLeft.js.map +1 -1
  96. package/dist/icons.generated/ArrowUpperRight.js +1 -1
  97. package/dist/icons.generated/ArrowUpperRight.js.map +1 -1
  98. package/dist/icons.generated/Bug.js +1 -1
  99. package/dist/icons.generated/Bug.js.map +1 -1
  100. package/dist/icons.generated/Calendar.js +1 -1
  101. package/dist/icons.generated/Calendar.js.map +1 -1
  102. package/dist/icons.generated/Call.js +1 -1
  103. package/dist/icons.generated/Call.js.map +1 -1
  104. package/dist/icons.generated/Chat.js +1 -1
  105. package/dist/icons.generated/Chat.js.map +1 -1
  106. package/dist/icons.generated/Check.js +1 -1
  107. package/dist/icons.generated/Check.js.map +1 -1
  108. package/dist/icons.generated/CheckCircleFilled.js +1 -1
  109. package/dist/icons.generated/CheckCircleFilled.js.map +1 -1
  110. package/dist/icons.generated/ChevronDown.js +1 -1
  111. package/dist/icons.generated/ChevronDown.js.map +1 -1
  112. package/dist/icons.generated/ChevronLeft.js +1 -1
  113. package/dist/icons.generated/ChevronLeft.js.map +1 -1
  114. package/dist/icons.generated/ChevronRight.js +1 -1
  115. package/dist/icons.generated/ChevronRight.js.map +1 -1
  116. package/dist/icons.generated/ChevronUp.js +1 -1
  117. package/dist/icons.generated/ChevronUp.js.map +1 -1
  118. package/dist/icons.generated/Clock.js +1 -1
  119. package/dist/icons.generated/Clock.js.map +1 -1
  120. package/dist/icons.generated/Close.js +1 -1
  121. package/dist/icons.generated/Close.js.map +1 -1
  122. package/dist/icons.generated/CloseCircleFilled.js +1 -1
  123. package/dist/icons.generated/CloseCircleFilled.js.map +1 -1
  124. package/dist/icons.generated/CollapseLeft.js +1 -1
  125. package/dist/icons.generated/CollapseLeft.js.map +1 -1
  126. package/dist/icons.generated/CollapseRight.js +1 -1
  127. package/dist/icons.generated/CollapseRight.js.map +1 -1
  128. package/dist/icons.generated/Copy.js +1 -1
  129. package/dist/icons.generated/Copy.js.map +1 -1
  130. package/dist/icons.generated/Custom.js +39 -0
  131. package/dist/icons.generated/Custom.js.map +1 -0
  132. package/dist/icons.generated/DangerDiamond.js +1 -1
  133. package/dist/icons.generated/DangerDiamond.js.map +1 -1
  134. package/dist/icons.generated/DangerDiamondFilled.js +1 -1
  135. package/dist/icons.generated/DangerDiamondFilled.js.map +1 -1
  136. package/dist/icons.generated/Delete.js +1 -1
  137. package/dist/icons.generated/Delete.js.map +1 -1
  138. package/dist/icons.generated/Deny.js +1 -1
  139. package/dist/icons.generated/Deny.js.map +1 -1
  140. package/dist/icons.generated/Devices.js +1 -1
  141. package/dist/icons.generated/Devices.js.map +1 -1
  142. package/dist/icons.generated/Directory.js +1 -1
  143. package/dist/icons.generated/Directory.js.map +1 -1
  144. package/dist/icons.generated/Documentation.js +1 -1
  145. package/dist/icons.generated/Documentation.js.map +1 -1
  146. package/dist/icons.generated/Download.js +1 -1
  147. package/dist/icons.generated/Download.js.map +1 -1
  148. package/dist/icons.generated/DragIndicator.js +1 -1
  149. package/dist/icons.generated/DragIndicator.js.map +1 -1
  150. package/dist/icons.generated/Duo.js +47 -0
  151. package/dist/icons.generated/Duo.js.map +1 -0
  152. package/dist/icons.generated/Edit.js +1 -1
  153. package/dist/icons.generated/Edit.js.map +1 -1
  154. package/dist/icons.generated/Email.js +38 -0
  155. package/dist/icons.generated/Email.js.map +1 -0
  156. package/dist/icons.generated/ExpandLeft.js +1 -1
  157. package/dist/icons.generated/ExpandLeft.js.map +1 -1
  158. package/dist/icons.generated/ExpandRight.js +1 -1
  159. package/dist/icons.generated/ExpandRight.js.map +1 -1
  160. package/dist/icons.generated/ExternalLink.js +1 -1
  161. package/dist/icons.generated/ExternalLink.js.map +1 -1
  162. package/dist/icons.generated/Fido2.js +57 -0
  163. package/dist/icons.generated/Fido2.js.map +1 -0
  164. package/dist/icons.generated/Filter.js +1 -1
  165. package/dist/icons.generated/Filter.js.map +1 -1
  166. package/dist/icons.generated/Folder.js +1 -1
  167. package/dist/icons.generated/Folder.js.map +1 -1
  168. package/dist/icons.generated/Globe.js +1 -1
  169. package/dist/icons.generated/Globe.js.map +1 -1
  170. package/dist/icons.generated/GoogleAuth.js +54 -0
  171. package/dist/icons.generated/GoogleAuth.js.map +1 -0
  172. package/dist/icons.generated/Grid.js +1 -1
  173. package/dist/icons.generated/Grid.js.map +1 -1
  174. package/dist/icons.generated/Group.js +1 -1
  175. package/dist/icons.generated/Group.js.map +1 -1
  176. package/dist/icons.generated/Hide.js +1 -1
  177. package/dist/icons.generated/Hide.js.map +1 -1
  178. package/dist/icons.generated/Home.js +1 -1
  179. package/dist/icons.generated/Home.js.map +1 -1
  180. package/dist/icons.generated/Idp.js +42 -0
  181. package/dist/icons.generated/Idp.js.map +1 -0
  182. package/dist/icons.generated/InformationCircle.js +1 -1
  183. package/dist/icons.generated/InformationCircle.js.map +1 -1
  184. package/dist/icons.generated/InformationCircleFilled.js +1 -1
  185. package/dist/icons.generated/InformationCircleFilled.js.map +1 -1
  186. package/dist/icons.generated/Link.js +1 -1
  187. package/dist/icons.generated/Link.js.map +1 -1
  188. package/dist/icons.generated/List.js +1 -1
  189. package/dist/icons.generated/List.js.map +1 -1
  190. package/dist/icons.generated/Lock.js +1 -1
  191. package/dist/icons.generated/Lock.js.map +1 -1
  192. package/dist/icons.generated/More.js +1 -1
  193. package/dist/icons.generated/More.js.map +1 -1
  194. package/dist/icons.generated/Notification.js +1 -1
  195. package/dist/icons.generated/Notification.js.map +1 -1
  196. package/dist/icons.generated/OktaVerify.js +33 -0
  197. package/dist/icons.generated/OktaVerify.js.map +1 -0
  198. package/dist/icons.generated/OnPremMfa.js +39 -0
  199. package/dist/icons.generated/OnPremMfa.js.map +1 -0
  200. package/dist/icons.generated/OneTimePassword.js +49 -0
  201. package/dist/icons.generated/OneTimePassword.js.map +1 -0
  202. package/dist/icons.generated/Password.js +61 -0
  203. package/dist/icons.generated/Password.js.map +1 -0
  204. package/dist/icons.generated/Pause.js +1 -1
  205. package/dist/icons.generated/Pause.js.map +1 -1
  206. package/dist/icons.generated/QuestionCircle.js +1 -1
  207. package/dist/icons.generated/QuestionCircle.js.map +1 -1
  208. package/dist/icons.generated/QuestionCircleFilled.js +1 -1
  209. package/dist/icons.generated/QuestionCircleFilled.js.map +1 -1
  210. package/dist/icons.generated/Refresh.js +1 -1
  211. package/dist/icons.generated/Refresh.js.map +1 -1
  212. package/dist/icons.generated/Reset.js +1 -1
  213. package/dist/icons.generated/Reset.js.map +1 -1
  214. package/dist/icons.generated/Resume.js +1 -1
  215. package/dist/icons.generated/Resume.js.map +1 -1
  216. package/dist/icons.generated/Search.js +1 -1
  217. package/dist/icons.generated/Search.js.map +1 -1
  218. package/dist/icons.generated/SecurityQuestion.js +41 -0
  219. package/dist/icons.generated/SecurityQuestion.js.map +1 -0
  220. package/dist/icons.generated/Server.js +1 -1
  221. package/dist/icons.generated/Server.js.map +1 -1
  222. package/dist/icons.generated/Settings.js +1 -1
  223. package/dist/icons.generated/Settings.js.map +1 -1
  224. package/dist/icons.generated/Show.js +1 -1
  225. package/dist/icons.generated/Show.js.map +1 -1
  226. package/dist/icons.generated/SmartCard.js +49 -0
  227. package/dist/icons.generated/SmartCard.js.map +1 -0
  228. package/dist/icons.generated/Sms.js +49 -0
  229. package/dist/icons.generated/Sms.js.map +1 -0
  230. package/dist/icons.generated/Subtract.js +1 -1
  231. package/dist/icons.generated/Subtract.js.map +1 -1
  232. package/dist/icons.generated/SymantecVip.js +38 -0
  233. package/dist/icons.generated/SymantecVip.js.map +1 -0
  234. package/dist/icons.generated/Sync.js +1 -1
  235. package/dist/icons.generated/Sync.js.map +1 -1
  236. package/dist/icons.generated/ThumbsDown.js +33 -0
  237. package/dist/icons.generated/ThumbsDown.js.map +1 -0
  238. package/dist/icons.generated/ThumbsUp.js +33 -0
  239. package/dist/icons.generated/ThumbsUp.js.map +1 -0
  240. package/dist/icons.generated/Unlock.js +1 -1
  241. package/dist/icons.generated/Unlock.js.map +1 -1
  242. package/dist/icons.generated/Upload.js +1 -1
  243. package/dist/icons.generated/Upload.js.map +1 -1
  244. package/dist/icons.generated/User.js +1 -1
  245. package/dist/icons.generated/User.js.map +1 -1
  246. package/dist/icons.generated/Video.js +1 -1
  247. package/dist/icons.generated/Video.js.map +1 -1
  248. package/dist/icons.generated/VoiceCall.js +54 -0
  249. package/dist/icons.generated/VoiceCall.js.map +1 -0
  250. package/dist/icons.generated/Warning.js +1 -1
  251. package/dist/icons.generated/Warning.js.map +1 -1
  252. package/dist/icons.generated/WarningFilled.js +1 -1
  253. package/dist/icons.generated/WarningFilled.js.map +1 -1
  254. package/dist/icons.generated/Yubikey.js +31 -0
  255. package/dist/icons.generated/Yubikey.js.map +1 -0
  256. package/dist/icons.generated/index.js +18 -0
  257. package/dist/icons.generated/index.js.map +1 -1
  258. package/dist/index.d.ts +24 -0
  259. package/dist/index.d.ts.map +1 -0
  260. package/dist/index.js +7 -2
  261. package/dist/index.js.map +1 -1
  262. package/dist/index.scss +457 -0
  263. package/dist/labs/DataComponents/BulkActionsMenu.js +77 -0
  264. package/dist/labs/DataComponents/BulkActionsMenu.js.map +1 -0
  265. package/dist/labs/DataComponents/DataStack.js +79 -0
  266. package/dist/labs/DataComponents/DataStack.js.map +1 -0
  267. package/dist/labs/DataComponents/DataTable.js +90 -0
  268. package/dist/labs/DataComponents/DataTable.js.map +1 -0
  269. package/dist/labs/DataComponents/DataView.js +278 -0
  270. package/dist/labs/DataComponents/DataView.js.map +1 -0
  271. package/dist/{src/DataTable/DataTableEmptyState.d.ts → labs/DataComponents/DetailPanel.js} +14 -9
  272. package/dist/labs/DataComponents/DetailPanel.js.map +1 -0
  273. package/dist/labs/DataComponents/LayoutSwitcher.js +53 -0
  274. package/dist/labs/DataComponents/LayoutSwitcher.js.map +1 -0
  275. package/dist/labs/DataComponents/RowActions.js +80 -0
  276. package/dist/labs/DataComponents/RowActions.js.map +1 -0
  277. package/dist/labs/DataComponents/StackCard.js +163 -0
  278. package/dist/labs/DataComponents/StackCard.js.map +1 -0
  279. package/dist/labs/DataComponents/StackContent.js +143 -0
  280. package/dist/labs/DataComponents/StackContent.js.map +1 -0
  281. package/dist/labs/DataComponents/TableContent.js +248 -0
  282. package/dist/labs/DataComponents/TableContent.js.map +1 -0
  283. package/dist/labs/DataComponents/TableSettings.js +96 -0
  284. package/dist/labs/DataComponents/TableSettings.js.map +1 -0
  285. package/dist/labs/DataComponents/componentTypes.js +2 -0
  286. package/dist/labs/DataComponents/componentTypes.js.map +1 -0
  287. package/dist/labs/DataComponents/constants.js +17 -0
  288. package/dist/labs/DataComponents/constants.js.map +1 -0
  289. package/dist/labs/DataComponents/dataTypes.js +2 -0
  290. package/dist/labs/DataComponents/dataTypes.js.map +1 -0
  291. package/dist/labs/DataComponents/fetchData.js +33 -0
  292. package/dist/labs/DataComponents/fetchData.js.map +1 -0
  293. package/dist/labs/DataComponents/index.js +18 -0
  294. package/dist/labs/DataComponents/index.js.map +1 -0
  295. package/dist/labs/DataComponents/tableConstants.js +146 -0
  296. package/dist/labs/DataComponents/tableConstants.js.map +1 -0
  297. package/dist/labs/DataComponents/useFilterConversion.js +58 -0
  298. package/dist/labs/DataComponents/useFilterConversion.js.map +1 -0
  299. package/dist/labs/DataFilters.js +139 -82
  300. package/dist/labs/DataFilters.js.map +1 -1
  301. package/dist/labs/DateField.js +77 -0
  302. package/dist/labs/DateField.js.map +1 -0
  303. package/dist/labs/DatePicker.js +186 -23
  304. package/dist/labs/DatePicker.js.map +1 -1
  305. package/dist/labs/{DatePicker.types.js → DatePicker.types.d.js} +1 -1
  306. package/dist/labs/DatePicker.types.d.js.map +1 -0
  307. package/dist/labs/FileUpload.js +28 -25
  308. package/dist/labs/FileUpload.js.map +1 -1
  309. package/dist/labs/FileUploadIllustration.js +1 -1
  310. package/dist/labs/FileUploadIllustration.js.map +1 -1
  311. package/dist/labs/FileUploadPreview.js +1 -0
  312. package/dist/labs/FileUploadPreview.js.map +1 -1
  313. package/dist/labs/Layout.js +49 -0
  314. package/dist/labs/Layout.js.map +1 -0
  315. package/dist/labs/NavAccordion.js +80 -0
  316. package/dist/labs/NavAccordion.js.map +1 -0
  317. package/dist/labs/PageTemplate.js +140 -0
  318. package/dist/labs/PageTemplate.js.map +1 -0
  319. package/dist/labs/SideNav.js +478 -0
  320. package/dist/labs/SideNav.js.map +1 -0
  321. package/dist/labs/Switch.js +186 -77
  322. package/dist/labs/Switch.js.map +1 -1
  323. package/dist/labs/datePickerTheme.js +138 -80
  324. package/dist/labs/datePickerTheme.js.map +1 -1
  325. package/dist/labs/index.js +5 -1
  326. package/dist/labs/index.js.map +1 -1
  327. package/dist/labs/useDatePickerTranslations.js +71 -0
  328. package/dist/labs/useDatePickerTranslations.js.map +1 -0
  329. package/dist/preset.d.ts +23 -0
  330. package/dist/preset.d.ts.map +1 -0
  331. package/dist/preset.js +35 -0
  332. package/dist/properties/ts/odyssey-react-mui.js +68 -10
  333. package/dist/properties/ts/odyssey-react-mui.js.map +1 -1
  334. package/dist/properties/ts/odyssey-react-mui_cs.js +77 -2
  335. package/dist/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  336. package/dist/properties/ts/odyssey-react-mui_da.js +77 -2
  337. package/dist/properties/ts/odyssey-react-mui_da.js.map +1 -1
  338. package/dist/properties/ts/odyssey-react-mui_de.js +77 -2
  339. package/dist/properties/ts/odyssey-react-mui_de.js.map +1 -1
  340. package/dist/properties/ts/odyssey-react-mui_el.js +77 -2
  341. package/dist/properties/ts/odyssey-react-mui_el.js.map +1 -1
  342. package/dist/properties/ts/odyssey-react-mui_es.js +77 -2
  343. package/dist/properties/ts/odyssey-react-mui_es.js.map +1 -1
  344. package/dist/properties/ts/odyssey-react-mui_fi.js +77 -2
  345. package/dist/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  346. package/dist/properties/ts/odyssey-react-mui_fr.js +77 -2
  347. package/dist/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  348. package/dist/properties/ts/odyssey-react-mui_ht.js +98 -0
  349. package/dist/properties/ts/odyssey-react-mui_ht.js.map +1 -0
  350. package/dist/properties/ts/odyssey-react-mui_hu.js +77 -2
  351. package/dist/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  352. package/dist/properties/ts/odyssey-react-mui_id.js +77 -2
  353. package/dist/properties/ts/odyssey-react-mui_id.js.map +1 -1
  354. package/dist/properties/ts/odyssey-react-mui_it.js +77 -2
  355. package/dist/properties/ts/odyssey-react-mui_it.js.map +1 -1
  356. package/dist/properties/ts/odyssey-react-mui_ja.js +77 -2
  357. package/dist/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  358. package/dist/properties/ts/odyssey-react-mui_ko.js +77 -2
  359. package/dist/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  360. package/dist/properties/ts/odyssey-react-mui_ms.js +77 -2
  361. package/dist/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  362. package/dist/properties/ts/odyssey-react-mui_nb.js +77 -2
  363. package/dist/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  364. package/dist/properties/ts/odyssey-react-mui_nl_NL.js +77 -2
  365. package/dist/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  366. package/dist/properties/ts/odyssey-react-mui_ok_PL.js +34 -3
  367. package/dist/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
  368. package/dist/properties/ts/odyssey-react-mui_ok_SK.js +34 -3
  369. package/dist/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
  370. package/dist/properties/ts/odyssey-react-mui_pl.js +77 -2
  371. package/dist/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  372. package/dist/properties/ts/odyssey-react-mui_pt_BR.js +77 -2
  373. package/dist/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  374. package/dist/properties/ts/odyssey-react-mui_ro.js +77 -2
  375. package/dist/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  376. package/dist/properties/ts/odyssey-react-mui_ru.js +77 -2
  377. package/dist/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  378. package/dist/properties/ts/odyssey-react-mui_sv.js +77 -2
  379. package/dist/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  380. package/dist/properties/ts/odyssey-react-mui_th.js +77 -2
  381. package/dist/properties/ts/odyssey-react-mui_th.js.map +1 -1
  382. package/dist/properties/ts/odyssey-react-mui_tr.js +77 -2
  383. package/dist/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  384. package/dist/properties/ts/odyssey-react-mui_uk.js +77 -2
  385. package/dist/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  386. package/dist/properties/ts/odyssey-react-mui_vi.js +77 -2
  387. package/dist/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  388. package/dist/properties/ts/odyssey-react-mui_zh_CN.js +77 -2
  389. package/dist/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  390. package/dist/properties/ts/odyssey-react-mui_zh_TW.js +77 -2
  391. package/dist/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  392. package/dist/remUtils.js +14 -0
  393. package/dist/remUtils.js.map +1 -0
  394. package/dist/scripts/generateTestSelectorsJson.d.ts +13 -0
  395. package/dist/scripts/generateTestSelectorsJson.d.ts.map +1 -0
  396. package/dist/src/Accordion.d.ts +1 -1
  397. package/dist/src/Accordion.d.ts.map +1 -1
  398. package/dist/src/Autocomplete.d.ts +7 -1
  399. package/dist/src/Autocomplete.d.ts.map +1 -1
  400. package/dist/src/Badge.d.ts +2 -2
  401. package/dist/src/Badge.d.ts.map +1 -1
  402. package/dist/src/Banner.d.ts.map +1 -1
  403. package/dist/src/Button.d.ts +10 -6
  404. package/dist/src/Button.d.ts.map +1 -1
  405. package/dist/src/Callout.d.ts +38 -2
  406. package/dist/src/Callout.d.ts.map +1 -1
  407. package/dist/src/{Tile.d.ts → Card.d.ts} +6 -27
  408. package/dist/src/Card.d.ts.map +1 -0
  409. package/dist/src/DataTable/DataTable.d.ts +70 -50
  410. package/dist/src/DataTable/DataTable.d.ts.map +1 -1
  411. package/dist/src/DataTable/DataTableRowActions.d.ts +1 -1
  412. package/dist/src/DataTable/DataTableRowActions.d.ts.map +1 -1
  413. package/dist/src/DataTable/constants.d.ts +0 -1
  414. package/dist/src/DataTable/constants.d.ts.map +1 -1
  415. package/dist/src/DataTable/index.d.ts +2 -3
  416. package/dist/src/DataTable/index.d.ts.map +1 -1
  417. package/dist/src/DataTable/reorderDataRowsLocally.d.ts.map +1 -1
  418. package/dist/src/DataTable/useRowReordering.d.ts +3 -3
  419. package/dist/src/DataTable/useRowReordering.d.ts.map +1 -1
  420. package/dist/src/Dialog.d.ts +19 -7
  421. package/dist/src/Dialog.d.ts.map +1 -1
  422. package/dist/src/{labs/Drawer.d.ts → Drawer.d.ts} +3 -3
  423. package/dist/src/Drawer.d.ts.map +1 -0
  424. package/dist/src/EmptyState.d.ts +34 -0
  425. package/dist/src/EmptyState.d.ts.map +1 -0
  426. package/dist/src/ErrorMessageList.d.ts.map +1 -1
  427. package/dist/src/FieldError.d.ts.map +1 -1
  428. package/dist/src/HtmlProps.d.ts +1 -0
  429. package/dist/src/HtmlProps.d.ts.map +1 -1
  430. package/dist/src/MenuItem.d.ts.map +1 -1
  431. package/dist/src/OdysseyCacheProvider.d.ts +6 -2
  432. package/dist/src/OdysseyCacheProvider.d.ts.map +1 -1
  433. package/dist/src/OdysseyProvider.d.ts.map +1 -1
  434. package/dist/src/OdysseyTranslationProvider.d.ts +1 -1
  435. package/dist/src/OdysseyTranslationProvider.d.ts.map +1 -1
  436. package/dist/src/Pagination/Pagination.d.ts +70 -0
  437. package/dist/src/Pagination/Pagination.d.ts.map +1 -0
  438. package/dist/src/Pagination/constants.d.ts +13 -0
  439. package/dist/src/Pagination/constants.d.ts.map +1 -0
  440. package/dist/src/Pagination/index.d.ts +15 -0
  441. package/dist/src/Pagination/index.d.ts.map +1 -0
  442. package/dist/src/Pagination/usePagination.d.ts +23 -0
  443. package/dist/src/Pagination/usePagination.d.ts.map +1 -0
  444. package/dist/src/Radio.d.ts +2 -2
  445. package/dist/src/Radio.d.ts.map +1 -1
  446. package/dist/src/ScreenReaderText.d.ts +3 -2
  447. package/dist/src/ScreenReaderText.d.ts.map +1 -1
  448. package/dist/src/Select.d.ts.map +1 -1
  449. package/dist/src/Status.d.ts +7 -2
  450. package/dist/src/Status.d.ts.map +1 -1
  451. package/dist/src/{labs/DatePicker.types.d.ts → Surface.d.ts} +7 -8
  452. package/dist/src/Surface.d.ts.map +1 -0
  453. package/dist/src/Tabs.d.ts +22 -0
  454. package/dist/src/Tabs.d.ts.map +1 -1
  455. package/dist/src/TextField.d.ts +48 -0
  456. package/dist/src/TextField.d.ts.map +1 -1
  457. package/dist/src/Toast.d.ts.map +1 -1
  458. package/dist/src/icons.generated/Add.d.ts +1 -1
  459. package/dist/src/icons.generated/AddCircle.d.ts +1 -1
  460. package/dist/src/icons.generated/Apps.d.ts +1 -1
  461. package/dist/src/icons.generated/ArrowBottom.d.ts +1 -1
  462. package/dist/src/icons.generated/ArrowDown.d.ts +1 -1
  463. package/dist/src/icons.generated/ArrowLeft.d.ts +1 -1
  464. package/dist/src/icons.generated/ArrowLowerLeft.d.ts +1 -1
  465. package/dist/src/icons.generated/ArrowLowerRight.d.ts +1 -1
  466. package/dist/src/icons.generated/ArrowRight.d.ts +1 -1
  467. package/dist/src/icons.generated/ArrowTop.d.ts +1 -1
  468. package/dist/src/icons.generated/ArrowUnsorted.d.ts +1 -1
  469. package/dist/src/icons.generated/ArrowUp.d.ts +1 -1
  470. package/dist/src/icons.generated/ArrowUpperLeft.d.ts +1 -1
  471. package/dist/src/icons.generated/ArrowUpperRight.d.ts +1 -1
  472. package/dist/src/icons.generated/Bug.d.ts +1 -1
  473. package/dist/src/icons.generated/Calendar.d.ts +1 -1
  474. package/dist/src/icons.generated/Call.d.ts +1 -1
  475. package/dist/src/icons.generated/Chat.d.ts +1 -1
  476. package/dist/src/icons.generated/Check.d.ts +1 -1
  477. package/dist/src/icons.generated/CheckCircleFilled.d.ts +1 -1
  478. package/dist/src/icons.generated/ChevronDown.d.ts +1 -1
  479. package/dist/src/icons.generated/ChevronLeft.d.ts +1 -1
  480. package/dist/src/icons.generated/ChevronRight.d.ts +1 -1
  481. package/dist/src/icons.generated/ChevronUp.d.ts +1 -1
  482. package/dist/src/icons.generated/Clock.d.ts +1 -1
  483. package/dist/src/icons.generated/Close.d.ts +1 -1
  484. package/dist/src/icons.generated/CloseCircleFilled.d.ts +1 -1
  485. package/dist/src/icons.generated/CollapseLeft.d.ts +1 -1
  486. package/dist/src/icons.generated/CollapseRight.d.ts +1 -1
  487. package/dist/src/icons.generated/Copy.d.ts +1 -1
  488. package/dist/src/icons.generated/Custom.d.ts +16 -0
  489. package/dist/src/icons.generated/Custom.d.ts.map +1 -0
  490. package/dist/src/icons.generated/DangerDiamond.d.ts +1 -1
  491. package/dist/src/icons.generated/DangerDiamondFilled.d.ts +1 -1
  492. package/dist/src/icons.generated/Delete.d.ts +1 -1
  493. package/dist/src/icons.generated/Deny.d.ts +1 -1
  494. package/dist/src/icons.generated/Devices.d.ts +1 -1
  495. package/dist/src/icons.generated/Directory.d.ts +1 -1
  496. package/dist/src/icons.generated/Documentation.d.ts +1 -1
  497. package/dist/src/icons.generated/Download.d.ts +1 -1
  498. package/dist/src/icons.generated/DragIndicator.d.ts +1 -1
  499. package/dist/src/icons.generated/Duo.d.ts +16 -0
  500. package/dist/src/icons.generated/Duo.d.ts.map +1 -0
  501. package/dist/src/icons.generated/Edit.d.ts +1 -1
  502. package/dist/src/icons.generated/Email.d.ts +16 -0
  503. package/dist/src/icons.generated/Email.d.ts.map +1 -0
  504. package/dist/src/icons.generated/ExpandLeft.d.ts +1 -1
  505. package/dist/src/icons.generated/ExpandRight.d.ts +1 -1
  506. package/dist/src/icons.generated/ExternalLink.d.ts +1 -1
  507. package/dist/src/icons.generated/Fido2.d.ts +16 -0
  508. package/dist/src/icons.generated/Fido2.d.ts.map +1 -0
  509. package/dist/src/icons.generated/Filter.d.ts +1 -1
  510. package/dist/src/icons.generated/Folder.d.ts +1 -1
  511. package/dist/src/icons.generated/Globe.d.ts +1 -1
  512. package/dist/src/icons.generated/GoogleAuth.d.ts +16 -0
  513. package/dist/src/icons.generated/GoogleAuth.d.ts.map +1 -0
  514. package/dist/src/icons.generated/Grid.d.ts +1 -1
  515. package/dist/src/icons.generated/Group.d.ts +1 -1
  516. package/dist/src/icons.generated/Hide.d.ts +1 -1
  517. package/dist/src/icons.generated/Home.d.ts +1 -1
  518. package/dist/src/icons.generated/Idp.d.ts +16 -0
  519. package/dist/src/icons.generated/Idp.d.ts.map +1 -0
  520. package/dist/src/icons.generated/InformationCircle.d.ts +1 -1
  521. package/dist/src/icons.generated/InformationCircleFilled.d.ts +1 -1
  522. package/dist/src/icons.generated/Link.d.ts +1 -1
  523. package/dist/src/icons.generated/List.d.ts +1 -1
  524. package/dist/src/icons.generated/Lock.d.ts +1 -1
  525. package/dist/src/icons.generated/More.d.ts +1 -1
  526. package/dist/src/icons.generated/Notification.d.ts +1 -1
  527. package/dist/src/icons.generated/OktaVerify.d.ts +16 -0
  528. package/dist/src/icons.generated/OktaVerify.d.ts.map +1 -0
  529. package/dist/src/icons.generated/OnPremMfa.d.ts +16 -0
  530. package/dist/src/icons.generated/OnPremMfa.d.ts.map +1 -0
  531. package/dist/src/icons.generated/OneTimePassword.d.ts +16 -0
  532. package/dist/src/icons.generated/OneTimePassword.d.ts.map +1 -0
  533. package/dist/src/icons.generated/Password.d.ts +16 -0
  534. package/dist/src/icons.generated/Password.d.ts.map +1 -0
  535. package/dist/src/icons.generated/Pause.d.ts +1 -1
  536. package/dist/src/icons.generated/QuestionCircle.d.ts +1 -1
  537. package/dist/src/icons.generated/QuestionCircleFilled.d.ts +1 -1
  538. package/dist/src/icons.generated/Refresh.d.ts +1 -1
  539. package/dist/src/icons.generated/Reset.d.ts +1 -1
  540. package/dist/src/icons.generated/Resume.d.ts +1 -1
  541. package/dist/src/icons.generated/Search.d.ts +1 -1
  542. package/dist/src/icons.generated/SecurityQuestion.d.ts +16 -0
  543. package/dist/src/icons.generated/SecurityQuestion.d.ts.map +1 -0
  544. package/dist/src/icons.generated/Server.d.ts +1 -1
  545. package/dist/src/icons.generated/Settings.d.ts +1 -1
  546. package/dist/src/icons.generated/Show.d.ts +1 -1
  547. package/dist/src/icons.generated/SmartCard.d.ts +16 -0
  548. package/dist/src/icons.generated/SmartCard.d.ts.map +1 -0
  549. package/dist/src/icons.generated/Sms.d.ts +16 -0
  550. package/dist/src/icons.generated/Sms.d.ts.map +1 -0
  551. package/dist/src/icons.generated/Subtract.d.ts +1 -1
  552. package/dist/src/icons.generated/SymantecVip.d.ts +16 -0
  553. package/dist/src/icons.generated/SymantecVip.d.ts.map +1 -0
  554. package/dist/src/icons.generated/Sync.d.ts +1 -1
  555. package/dist/src/icons.generated/ThumbsDown.d.ts +16 -0
  556. package/dist/src/icons.generated/ThumbsDown.d.ts.map +1 -0
  557. package/dist/src/icons.generated/ThumbsUp.d.ts +16 -0
  558. package/dist/src/icons.generated/ThumbsUp.d.ts.map +1 -0
  559. package/dist/src/icons.generated/Unlock.d.ts +1 -1
  560. package/dist/src/icons.generated/Upload.d.ts +1 -1
  561. package/dist/src/icons.generated/User.d.ts +1 -1
  562. package/dist/src/icons.generated/Video.d.ts +1 -1
  563. package/dist/src/icons.generated/VoiceCall.d.ts +16 -0
  564. package/dist/src/icons.generated/VoiceCall.d.ts.map +1 -0
  565. package/dist/src/icons.generated/Warning.d.ts +1 -1
  566. package/dist/src/icons.generated/WarningFilled.d.ts +1 -1
  567. package/dist/src/icons.generated/Yubikey.d.ts +16 -0
  568. package/dist/src/icons.generated/Yubikey.d.ts.map +1 -0
  569. package/dist/src/icons.generated/index.d.ts +18 -0
  570. package/dist/src/icons.generated/index.d.ts.map +1 -1
  571. package/dist/src/index.d.ts +7 -2
  572. package/dist/src/index.d.ts.map +1 -1
  573. package/dist/src/inputUtils.d.ts.map +1 -1
  574. package/dist/src/labs/DataComponents/BulkActionsMenu.d.ts +23 -0
  575. package/dist/src/labs/DataComponents/BulkActionsMenu.d.ts.map +1 -0
  576. package/dist/src/labs/DataComponents/DataStack.d.ts +21 -0
  577. package/dist/src/labs/DataComponents/DataStack.d.ts.map +1 -0
  578. package/dist/src/labs/DataComponents/DataTable.d.ts +17 -0
  579. package/dist/src/labs/DataComponents/DataTable.d.ts.map +1 -0
  580. package/dist/src/labs/DataComponents/DataView.d.ts +17 -0
  581. package/dist/src/labs/DataComponents/DataView.d.ts.map +1 -0
  582. package/dist/src/labs/DataComponents/DetailPanel.d.ts +20 -0
  583. package/dist/src/labs/DataComponents/DetailPanel.d.ts.map +1 -0
  584. package/dist/src/labs/DataComponents/LayoutSwitcher.d.ts +21 -0
  585. package/dist/src/labs/DataComponents/LayoutSwitcher.d.ts.map +1 -0
  586. package/dist/src/labs/DataComponents/RowActions.d.ts +31 -0
  587. package/dist/src/labs/DataComponents/RowActions.d.ts.map +1 -0
  588. package/dist/src/labs/DataComponents/StackCard.d.ts +36 -0
  589. package/dist/src/labs/DataComponents/StackCard.d.ts.map +1 -0
  590. package/dist/src/labs/DataComponents/StackContent.d.ts +64 -0
  591. package/dist/src/labs/DataComponents/StackContent.d.ts.map +1 -0
  592. package/dist/src/labs/DataComponents/TableContent.d.ts +66 -0
  593. package/dist/src/labs/DataComponents/TableContent.d.ts.map +1 -0
  594. package/dist/src/labs/DataComponents/TableSettings.d.ts +21 -0
  595. package/dist/src/labs/DataComponents/TableSettings.d.ts.map +1 -0
  596. package/dist/src/labs/DataComponents/componentTypes.d.ts +81 -0
  597. package/dist/src/labs/DataComponents/componentTypes.d.ts.map +1 -0
  598. package/dist/src/labs/DataComponents/constants.d.ts +16 -0
  599. package/dist/src/labs/DataComponents/constants.d.ts.map +1 -0
  600. package/dist/src/labs/DataComponents/dataTypes.d.ts +52 -0
  601. package/dist/src/labs/DataComponents/dataTypes.d.ts.map +1 -0
  602. package/dist/src/labs/DataComponents/fetchData.d.ts +26 -0
  603. package/dist/src/labs/DataComponents/fetchData.d.ts.map +1 -0
  604. package/dist/src/labs/DataComponents/index.d.ts +18 -0
  605. package/dist/src/labs/DataComponents/index.d.ts.map +1 -0
  606. package/dist/src/labs/DataComponents/tableConstants.d.ts +100 -0
  607. package/dist/src/labs/DataComponents/tableConstants.d.ts.map +1 -0
  608. package/dist/src/labs/DataComponents/useFilterConversion.d.ts +20 -0
  609. package/dist/src/labs/DataComponents/useFilterConversion.d.ts.map +1 -0
  610. package/dist/src/labs/DataFilters.d.ts +14 -7
  611. package/dist/src/labs/DataFilters.d.ts.map +1 -1
  612. package/dist/src/labs/DateField.d.ts +23 -0
  613. package/dist/src/labs/DateField.d.ts.map +1 -0
  614. package/dist/src/labs/DatePicker.d.ts +31 -8
  615. package/dist/src/labs/DatePicker.d.ts.map +1 -1
  616. package/dist/src/labs/FileUpload.d.ts +2 -2
  617. package/dist/src/labs/FileUpload.d.ts.map +1 -1
  618. package/dist/src/labs/FileUploadPreview.d.ts.map +1 -1
  619. package/dist/src/labs/GroupPicker.d.ts.map +1 -1
  620. package/dist/src/labs/Layout.d.ts +28 -0
  621. package/dist/src/labs/Layout.d.ts.map +1 -0
  622. package/dist/src/labs/NavAccordion.d.ts +52 -0
  623. package/dist/src/labs/NavAccordion.d.ts.map +1 -0
  624. package/dist/src/labs/PageTemplate.d.ts +57 -0
  625. package/dist/src/labs/PageTemplate.d.ts.map +1 -0
  626. package/dist/src/labs/PaginatedTable.d.ts.map +1 -1
  627. package/dist/src/labs/SideNav.d.ts +120 -0
  628. package/dist/src/labs/SideNav.d.ts.map +1 -0
  629. package/dist/src/labs/StaticTable.d.ts.map +1 -1
  630. package/dist/src/labs/Switch.d.ts +3 -7
  631. package/dist/src/labs/Switch.d.ts.map +1 -1
  632. package/dist/src/labs/datePickerTheme.d.ts.map +1 -1
  633. package/dist/src/labs/index.d.ts +5 -1
  634. package/dist/src/labs/index.d.ts.map +1 -1
  635. package/dist/src/labs/useDatePickerTranslations.d.ts +15 -0
  636. package/dist/src/labs/useDatePickerTranslations.d.ts.map +1 -0
  637. package/dist/src/properties/ts/odyssey-react-mui.d.ts +66 -8
  638. package/dist/src/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  639. package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts +77 -2
  640. package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  641. package/dist/src/properties/ts/odyssey-react-mui_da.d.ts +77 -2
  642. package/dist/src/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  643. package/dist/src/properties/ts/odyssey-react-mui_de.d.ts +77 -2
  644. package/dist/src/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  645. package/dist/src/properties/ts/odyssey-react-mui_el.d.ts +77 -2
  646. package/dist/src/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  647. package/dist/src/properties/ts/odyssey-react-mui_es.d.ts +77 -2
  648. package/dist/src/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  649. package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts +77 -2
  650. package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  651. package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts +77 -2
  652. package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  653. package/dist/src/properties/ts/odyssey-react-mui_ht.d.ts +98 -0
  654. package/dist/src/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -0
  655. package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts +77 -2
  656. package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  657. package/dist/src/properties/ts/odyssey-react-mui_id.d.ts +77 -2
  658. package/dist/src/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  659. package/dist/src/properties/ts/odyssey-react-mui_it.d.ts +77 -2
  660. package/dist/src/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  661. package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts +77 -2
  662. package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  663. package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts +77 -2
  664. package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  665. package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts +77 -2
  666. package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  667. package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts +77 -2
  668. package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  669. package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts +77 -2
  670. package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  671. package/dist/src/properties/ts/odyssey-react-mui_ok_PL.d.ts +33 -2
  672. package/dist/src/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
  673. package/dist/src/properties/ts/odyssey-react-mui_ok_SK.d.ts +33 -2
  674. package/dist/src/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
  675. package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts +77 -2
  676. package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  677. package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts +77 -2
  678. package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  679. package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts +77 -2
  680. package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  681. package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts +77 -2
  682. package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  683. package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts +77 -2
  684. package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  685. package/dist/src/properties/ts/odyssey-react-mui_th.d.ts +77 -2
  686. package/dist/src/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  687. package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts +77 -2
  688. package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  689. package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts +77 -2
  690. package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  691. package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts +77 -2
  692. package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  693. package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts +77 -2
  694. package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  695. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts +77 -2
  696. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  697. package/dist/src/remUtils.d.ts +24 -0
  698. package/dist/src/remUtils.d.ts.map +1 -0
  699. package/dist/src/test-selectors/featureTestSelector.d.ts +31 -0
  700. package/dist/src/test-selectors/featureTestSelector.d.ts.map +1 -0
  701. package/dist/src/test-selectors/index.d.ts +15 -0
  702. package/dist/src/test-selectors/index.d.ts.map +1 -0
  703. package/dist/src/test-selectors/odysseyTestSelectors.d.ts +120 -0
  704. package/dist/src/test-selectors/odysseyTestSelectors.d.ts.map +1 -0
  705. package/dist/src/test-selectors/querySelector.d.ts +3632 -0
  706. package/dist/src/test-selectors/querySelector.d.ts.map +1 -0
  707. package/dist/src/theme/components.d.ts +1 -1
  708. package/dist/src/theme/components.d.ts.map +1 -1
  709. package/dist/src/theme/components.types.d.ts +5 -3
  710. package/dist/src/theme/components.types.d.ts.map +1 -1
  711. package/dist/src/theme/createOdysseyMuiTheme.d.ts +1 -1
  712. package/dist/src/theme/createOdysseyMuiTheme.d.ts.map +1 -1
  713. package/dist/src/theme/mixins.d.ts.map +1 -1
  714. package/dist/src/theme/palette.d.ts.map +1 -1
  715. package/dist/src/theme/shape.d.ts.map +1 -1
  716. package/dist/src/theme/spacing.d.ts.map +1 -1
  717. package/dist/src/theme/typography.d.ts.map +1 -1
  718. package/dist/test-selectors/featureTestSelector.js +2 -0
  719. package/dist/test-selectors/featureTestSelector.js.map +1 -0
  720. package/dist/test-selectors/index.js +15 -0
  721. package/dist/test-selectors/index.js.map +1 -0
  722. package/dist/test-selectors/odysseyTestSelectors.js +20 -0
  723. package/dist/test-selectors/odysseyTestSelectors.js.map +1 -0
  724. package/dist/test-selectors/querySelector.js +78 -0
  725. package/dist/test-selectors/querySelector.js.map +1 -0
  726. package/dist/test-selectors/testSelectors.json +1 -0
  727. package/dist/theme/components.js +261 -181
  728. package/dist/theme/components.js.map +1 -1
  729. package/dist/theme/components.types.js.map +1 -1
  730. package/dist/tsconfig.production.tsbuildinfo +1 -1
  731. package/dist/tsconfig.tsbuildinfo +1 -0
  732. package/i18n.config.json +3 -1
  733. package/package.json +13 -5
  734. package/scripts/generateTestSelectorsJson.ts +28 -0
  735. package/src/Accordion.tsx +3 -0
  736. package/src/Autocomplete.tsx +13 -0
  737. package/src/Badge.tsx +4 -3
  738. package/src/Banner.tsx +4 -4
  739. package/src/Button.tsx +30 -16
  740. package/src/Callout.tsx +59 -12
  741. package/src/{Tile.tsx → Card.tsx} +63 -57
  742. package/src/DataTable/DataTable.tsx +195 -108
  743. package/src/DataTable/DataTableRowActions.tsx +1 -1
  744. package/src/DataTable/constants.ts +0 -1
  745. package/src/DataTable/index.tsx +2 -2
  746. package/src/Dialog.tsx +38 -13
  747. package/src/{labs/Drawer.tsx → Drawer.tsx} +10 -9
  748. package/src/{DataTable/DataTableEmptyState.tsx → EmptyState.tsx} +34 -19
  749. package/src/ErrorMessageList.tsx +6 -1
  750. package/src/FieldError.tsx +10 -5
  751. package/src/HtmlProps.ts +1 -0
  752. package/src/MenuItem.tsx +1 -0
  753. package/src/OdysseyCacheProvider.tsx +11 -3
  754. package/src/OdysseyProvider.tsx +1 -1
  755. package/src/OdysseyTranslationProvider.tsx +1 -17
  756. package/src/{DataTable/DataTablePagination.tsx → Pagination/Pagination.tsx} +107 -74
  757. package/src/Pagination/constants.ts +13 -0
  758. package/src/Pagination/index.ts +15 -0
  759. package/src/Pagination/usePagination.ts +49 -0
  760. package/src/Radio.tsx +18 -6
  761. package/src/ScreenReaderText.tsx +15 -3
  762. package/src/Select.tsx +84 -92
  763. package/src/Status.tsx +14 -2
  764. package/src/Surface.tsx +48 -0
  765. package/src/Tabs.tsx +24 -0
  766. package/src/TextField.tsx +50 -0
  767. package/src/Toast.tsx +44 -40
  768. package/src/icons.generated/Add.tsx +1 -1
  769. package/src/icons.generated/AddCircle.tsx +1 -1
  770. package/src/icons.generated/Apps.tsx +1 -1
  771. package/src/icons.generated/ArrowBottom.tsx +2 -2
  772. package/src/icons.generated/ArrowDown.tsx +1 -1
  773. package/src/icons.generated/ArrowLeft.tsx +1 -1
  774. package/src/icons.generated/ArrowLowerLeft.tsx +1 -1
  775. package/src/icons.generated/ArrowLowerRight.tsx +1 -1
  776. package/src/icons.generated/ArrowRight.tsx +1 -1
  777. package/src/icons.generated/ArrowTop.tsx +2 -2
  778. package/src/icons.generated/ArrowUnsorted.tsx +1 -1
  779. package/src/icons.generated/ArrowUp.tsx +1 -1
  780. package/src/icons.generated/ArrowUpperLeft.tsx +1 -1
  781. package/src/icons.generated/ArrowUpperRight.tsx +1 -1
  782. package/src/icons.generated/Bug.tsx +1 -1
  783. package/src/icons.generated/Calendar.tsx +1 -1
  784. package/src/icons.generated/Call.tsx +1 -1
  785. package/src/icons.generated/Chat.tsx +1 -1
  786. package/src/icons.generated/Check.tsx +1 -1
  787. package/src/icons.generated/CheckCircleFilled.tsx +1 -1
  788. package/src/icons.generated/ChevronDown.tsx +1 -1
  789. package/src/icons.generated/ChevronLeft.tsx +1 -1
  790. package/src/icons.generated/ChevronRight.tsx +1 -1
  791. package/src/icons.generated/ChevronUp.tsx +1 -1
  792. package/src/icons.generated/Clock.tsx +1 -1
  793. package/src/icons.generated/Close.tsx +1 -1
  794. package/src/icons.generated/CloseCircleFilled.tsx +1 -1
  795. package/src/icons.generated/CollapseLeft.tsx +1 -1
  796. package/src/icons.generated/CollapseRight.tsx +1 -1
  797. package/src/icons.generated/Copy.tsx +1 -1
  798. package/src/icons.generated/Custom.tsx +49 -0
  799. package/src/icons.generated/DangerDiamond.tsx +1 -1
  800. package/src/icons.generated/DangerDiamondFilled.tsx +1 -1
  801. package/src/icons.generated/Delete.tsx +1 -1
  802. package/src/icons.generated/Deny.tsx +1 -1
  803. package/src/icons.generated/Devices.tsx +1 -1
  804. package/src/icons.generated/Directory.tsx +1 -1
  805. package/src/icons.generated/Documentation.tsx +1 -1
  806. package/src/icons.generated/Download.tsx +1 -1
  807. package/src/icons.generated/DragIndicator.tsx +1 -1
  808. package/src/icons.generated/Duo.tsx +59 -0
  809. package/src/icons.generated/Edit.tsx +1 -1
  810. package/src/icons.generated/Email.tsx +48 -0
  811. package/src/icons.generated/ExpandLeft.tsx +1 -1
  812. package/src/icons.generated/ExpandRight.tsx +1 -1
  813. package/src/icons.generated/ExternalLink.tsx +1 -1
  814. package/src/icons.generated/Fido2.tsx +71 -0
  815. package/src/icons.generated/Filter.tsx +1 -1
  816. package/src/icons.generated/Folder.tsx +1 -1
  817. package/src/icons.generated/Globe.tsx +1 -1
  818. package/src/icons.generated/GoogleAuth.tsx +67 -0
  819. package/src/icons.generated/Grid.tsx +1 -1
  820. package/src/icons.generated/Group.tsx +1 -1
  821. package/src/icons.generated/Hide.tsx +1 -1
  822. package/src/icons.generated/Home.tsx +1 -1
  823. package/src/icons.generated/Idp.tsx +51 -0
  824. package/src/icons.generated/InformationCircle.tsx +1 -1
  825. package/src/icons.generated/InformationCircleFilled.tsx +1 -1
  826. package/src/icons.generated/Link.tsx +1 -1
  827. package/src/icons.generated/List.tsx +1 -1
  828. package/src/icons.generated/Lock.tsx +1 -1
  829. package/src/icons.generated/More.tsx +1 -1
  830. package/src/icons.generated/Notification.tsx +1 -1
  831. package/src/icons.generated/OktaVerify.tsx +43 -0
  832. package/src/icons.generated/OnPremMfa.tsx +49 -0
  833. package/src/icons.generated/OneTimePassword.tsx +63 -0
  834. package/src/icons.generated/Password.tsx +77 -0
  835. package/src/icons.generated/Pause.tsx +1 -1
  836. package/src/icons.generated/QuestionCircle.tsx +1 -1
  837. package/src/icons.generated/QuestionCircleFilled.tsx +1 -1
  838. package/src/icons.generated/Refresh.tsx +1 -1
  839. package/src/icons.generated/Reset.tsx +1 -1
  840. package/src/icons.generated/Resume.tsx +1 -1
  841. package/src/icons.generated/Search.tsx +1 -1
  842. package/src/icons.generated/SecurityQuestion.tsx +48 -0
  843. package/src/icons.generated/Server.tsx +1 -1
  844. package/src/icons.generated/Settings.tsx +1 -1
  845. package/src/icons.generated/Show.tsx +1 -1
  846. package/src/icons.generated/SmartCard.tsx +62 -0
  847. package/src/icons.generated/Sms.tsx +52 -0
  848. package/src/icons.generated/Subtract.tsx +1 -1
  849. package/src/icons.generated/SymantecVip.tsx +49 -0
  850. package/src/icons.generated/Sync.tsx +1 -1
  851. package/src/icons.generated/ThumbsDown.tsx +43 -0
  852. package/src/icons.generated/ThumbsUp.tsx +43 -0
  853. package/src/icons.generated/Unlock.tsx +1 -1
  854. package/src/icons.generated/Upload.tsx +1 -1
  855. package/src/icons.generated/User.tsx +1 -1
  856. package/src/icons.generated/Video.tsx +1 -1
  857. package/src/icons.generated/VoiceCall.tsx +59 -0
  858. package/src/icons.generated/Warning.tsx +1 -1
  859. package/src/icons.generated/WarningFilled.tsx +1 -1
  860. package/src/icons.generated/Yubikey.tsx +41 -0
  861. package/src/icons.generated/index.ts +18 -0
  862. package/src/index.ts +7 -2
  863. package/src/labs/DataComponents/BulkActionsMenu.tsx +97 -0
  864. package/src/labs/DataComponents/DataStack.tsx +99 -0
  865. package/src/labs/DataComponents/DataTable.tsx +111 -0
  866. package/src/labs/DataComponents/DataView.tsx +394 -0
  867. package/src/labs/DataComponents/DetailPanel.tsx +31 -0
  868. package/src/labs/DataComponents/LayoutSwitcher.tsx +73 -0
  869. package/src/labs/DataComponents/RowActions.tsx +122 -0
  870. package/src/labs/DataComponents/StackCard.tsx +256 -0
  871. package/src/labs/DataComponents/StackContent.tsx +254 -0
  872. package/src/labs/DataComponents/TableContent.tsx +390 -0
  873. package/src/labs/DataComponents/TableSettings.tsx +138 -0
  874. package/src/labs/DataComponents/componentTypes.ts +111 -0
  875. package/src/labs/DataComponents/constants.tsx +20 -0
  876. package/src/labs/DataComponents/dataTypes.ts +77 -0
  877. package/src/labs/DataComponents/fetchData.ts +47 -0
  878. package/src/labs/DataComponents/index.tsx +19 -0
  879. package/src/labs/DataComponents/tableConstants.tsx +162 -0
  880. package/src/labs/DataComponents/useFilterConversion.ts +92 -0
  881. package/src/labs/DataFilters.tsx +250 -162
  882. package/src/labs/DateField.tsx +119 -0
  883. package/src/labs/DatePicker.tsx +304 -31
  884. package/src/labs/{DatePicker.types.ts → DatePicker.types.d.ts} +0 -10
  885. package/src/labs/FileUpload.tsx +30 -21
  886. package/src/labs/FileUploadIllustration.tsx +1 -1
  887. package/src/labs/FileUploadPreview.tsx +1 -0
  888. package/src/labs/Layout.tsx +85 -0
  889. package/src/labs/NavAccordion.tsx +133 -0
  890. package/src/labs/PageTemplate.tsx +225 -0
  891. package/src/labs/SideNav.tsx +745 -0
  892. package/src/labs/Switch.tsx +240 -119
  893. package/src/labs/datePickerTheme.tsx +119 -83
  894. package/src/labs/index.ts +7 -1
  895. package/src/labs/useDatePickerTranslations.ts +92 -0
  896. package/src/properties/odyssey-react-mui.properties +76 -10
  897. package/src/properties/translations/odyssey-react-mui_cs.properties +92 -2
  898. package/src/properties/translations/odyssey-react-mui_da.properties +92 -2
  899. package/src/properties/translations/odyssey-react-mui_de.properties +92 -2
  900. package/src/properties/translations/odyssey-react-mui_el.properties +92 -2
  901. package/src/properties/translations/odyssey-react-mui_es.properties +92 -2
  902. package/src/properties/translations/odyssey-react-mui_fi.properties +92 -2
  903. package/src/properties/translations/odyssey-react-mui_fr.properties +92 -2
  904. package/src/properties/translations/odyssey-react-mui_ht.properties +112 -0
  905. package/src/properties/translations/odyssey-react-mui_hu.properties +92 -2
  906. package/src/properties/translations/odyssey-react-mui_id.properties +92 -2
  907. package/src/properties/translations/odyssey-react-mui_it.properties +92 -2
  908. package/src/properties/translations/odyssey-react-mui_ja.properties +92 -2
  909. package/src/properties/translations/odyssey-react-mui_ko.properties +92 -2
  910. package/src/properties/translations/odyssey-react-mui_ms.properties +92 -2
  911. package/src/properties/translations/odyssey-react-mui_nb.properties +92 -2
  912. package/src/properties/translations/odyssey-react-mui_nl_NL.properties +92 -2
  913. package/src/properties/translations/odyssey-react-mui_ok_PL.properties +33 -2
  914. package/src/properties/translations/odyssey-react-mui_ok_SK.properties +33 -2
  915. package/src/properties/translations/odyssey-react-mui_pl.properties +92 -2
  916. package/src/properties/translations/odyssey-react-mui_pt_BR.properties +92 -2
  917. package/src/properties/translations/odyssey-react-mui_ro.properties +92 -2
  918. package/src/properties/translations/odyssey-react-mui_ru.properties +92 -2
  919. package/src/properties/translations/odyssey-react-mui_sv.properties +92 -2
  920. package/src/properties/translations/odyssey-react-mui_th.properties +92 -2
  921. package/src/properties/translations/odyssey-react-mui_tr.properties +92 -2
  922. package/src/properties/translations/odyssey-react-mui_uk.properties +92 -2
  923. package/src/properties/translations/odyssey-react-mui_vi.properties +92 -2
  924. package/src/properties/translations/odyssey-react-mui_zh_CN.properties +92 -2
  925. package/src/properties/translations/odyssey-react-mui_zh_TW.properties +92 -2
  926. package/src/properties/ts/odyssey-react-mui.ts +1 -1
  927. package/src/properties/ts/odyssey-react-mui_cs.ts +1 -1
  928. package/src/properties/ts/odyssey-react-mui_da.ts +1 -1
  929. package/src/properties/ts/odyssey-react-mui_de.ts +1 -1
  930. package/src/properties/ts/odyssey-react-mui_el.ts +1 -1
  931. package/src/properties/ts/odyssey-react-mui_es.ts +1 -1
  932. package/src/properties/ts/odyssey-react-mui_fi.ts +1 -1
  933. package/src/properties/ts/odyssey-react-mui_fr.ts +1 -1
  934. package/src/properties/ts/odyssey-react-mui_ht.ts +1 -0
  935. package/src/properties/ts/odyssey-react-mui_hu.ts +1 -1
  936. package/src/properties/ts/odyssey-react-mui_id.ts +1 -1
  937. package/src/properties/ts/odyssey-react-mui_it.ts +1 -1
  938. package/src/properties/ts/odyssey-react-mui_ja.ts +1 -1
  939. package/src/properties/ts/odyssey-react-mui_ko.ts +1 -1
  940. package/src/properties/ts/odyssey-react-mui_ms.ts +1 -1
  941. package/src/properties/ts/odyssey-react-mui_nb.ts +1 -1
  942. package/src/properties/ts/odyssey-react-mui_nl_NL.ts +1 -1
  943. package/src/properties/ts/odyssey-react-mui_ok_PL.ts +1 -1
  944. package/src/properties/ts/odyssey-react-mui_ok_SK.ts +1 -1
  945. package/src/properties/ts/odyssey-react-mui_pl.ts +1 -1
  946. package/src/properties/ts/odyssey-react-mui_pt_BR.ts +1 -1
  947. package/src/properties/ts/odyssey-react-mui_ro.ts +1 -1
  948. package/src/properties/ts/odyssey-react-mui_ru.ts +1 -1
  949. package/src/properties/ts/odyssey-react-mui_sv.ts +1 -1
  950. package/src/properties/ts/odyssey-react-mui_th.ts +1 -1
  951. package/src/properties/ts/odyssey-react-mui_tr.ts +1 -1
  952. package/src/properties/ts/odyssey-react-mui_uk.ts +1 -1
  953. package/src/properties/ts/odyssey-react-mui_vi.ts +1 -1
  954. package/src/properties/ts/odyssey-react-mui_zh_CN.ts +1 -1
  955. package/src/properties/ts/odyssey-react-mui_zh_TW.ts +1 -1
  956. package/src/remUtils.ts +27 -0
  957. package/src/test-selectors/featureTestSelector.ts +41 -0
  958. package/src/test-selectors/index.ts +15 -0
  959. package/src/test-selectors/odysseyTestSelectors.ts +22 -0
  960. package/src/test-selectors/querySelector.ts +198 -0
  961. package/src/theme/components.tsx +285 -192
  962. package/src/theme/components.types.ts +5 -3
  963. package/dist/DataTable/DataTableEmptyState.js.map +0 -1
  964. package/dist/DataTable/DataTablePagination.js.map +0 -1
  965. package/dist/Tile.js.map +0 -1
  966. package/dist/labs/DatePicker.types.js.map +0 -1
  967. package/dist/labs/Drawer.js.map +0 -1
  968. package/dist/src/DataTable/DataTableEmptyState.d.ts.map +0 -1
  969. package/dist/src/DataTable/DataTablePagination.d.ts +0 -33
  970. package/dist/src/DataTable/DataTablePagination.d.ts.map +0 -1
  971. package/dist/src/Tile.d.ts.map +0 -1
  972. package/dist/src/labs/DatePicker.types.d.ts.map +0 -1
  973. package/dist/src/labs/Drawer.d.ts.map +0 -1
@@ -0,0 +1,390 @@
1
+ /*!
2
+ * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import {
14
+ SetStateAction,
15
+ memo,
16
+ useCallback,
17
+ useMemo,
18
+ useRef,
19
+ useState,
20
+ ReactNode,
21
+ Dispatch,
22
+ ReactElement,
23
+ } from "react";
24
+ import styled, { CSSObject } from "@emotion/styled";
25
+ import {
26
+ MRT_Row,
27
+ MRT_RowData,
28
+ MRT_RowSelectionState,
29
+ MRT_TableContainer,
30
+ MRT_TableInstance,
31
+ MRT_TableOptions,
32
+ useMaterialReactTable,
33
+ } from "material-react-table";
34
+ import { useTranslation } from "react-i18next";
35
+
36
+ import {
37
+ ArrowDownIcon,
38
+ ArrowUnsortedIcon,
39
+ ChevronDownIcon,
40
+ DragIndicatorIcon,
41
+ } from "../../icons.generated";
42
+ import { Box } from "../../Box";
43
+ import { TableProps, TableState, UniversalProps } from "./componentTypes";
44
+ import { DataTableCell } from "./dataTypes";
45
+ import {
46
+ dataTableImmutableSettings,
47
+ displayColumnDefOptions,
48
+ ScrollableTableContainer,
49
+ } from "./tableConstants";
50
+ import { MenuButton } from "../../MenuButton";
51
+ import { MoreIcon } from "../../icons.generated";
52
+ import { RowActions } from "./RowActions";
53
+ import { useOdysseyDesignTokens } from "../../OdysseyDesignTokensContext";
54
+ import { useScrollIndication } from "../../DataTable/useScrollIndication";
55
+
56
+ const TextWrapper = styled("div")(() => ({
57
+ whiteSpace: "nowrap",
58
+ textOverflow: "ellipsis",
59
+ overflow: "hidden",
60
+ }));
61
+
62
+ const RowActionsContainer = styled("div")(() => ({
63
+ display: "flex",
64
+ }));
65
+
66
+ export type TableContentProps = {
67
+ columns: TableProps["columns"];
68
+ data: MRT_RowData[];
69
+ draggingRow?: MRT_Row<MRT_RowData> | null;
70
+ emptyState: ReactNode;
71
+ getRowId: UniversalProps["getRowId"];
72
+ hasRowReordering: UniversalProps["hasRowReordering"];
73
+ hasRowSelection: UniversalProps["hasRowSelection"];
74
+ isEmpty?: boolean;
75
+ isLoading: boolean;
76
+ isNoResults?: boolean;
77
+ isRowReorderingDisabled?: boolean;
78
+ onReorderRows: UniversalProps["onReorderRows"];
79
+ pagination: {
80
+ pageIndex: number;
81
+ pageSize: number;
82
+ };
83
+ rowReorderingUtilities: {
84
+ dragHandleStyles: CSSObject;
85
+ dragHandleText: {
86
+ title: string;
87
+ "aria-label": string;
88
+ };
89
+ draggableTableBodyRowClassName: ({
90
+ currentRowId,
91
+ draggingRowId,
92
+ hoveredRowId,
93
+ }: {
94
+ currentRowId: string;
95
+ draggingRowId?: string;
96
+ hoveredRowId?: string;
97
+ }) => string | undefined;
98
+ handleDragHandleKeyDown: ({
99
+ table,
100
+ row,
101
+ event,
102
+ }: {
103
+ table: MRT_TableInstance<MRT_RowData>;
104
+ row: MRT_Row<MRT_RowData>;
105
+ event: React.KeyboardEvent<HTMLButtonElement>;
106
+ }) => void;
107
+ handleDragHandleOnDragCapture: (
108
+ table: MRT_TableInstance<MRT_RowData>,
109
+ ) => void;
110
+ handleDragHandleOnDragEnd: (table: MRT_TableInstance<MRT_RowData>) => void;
111
+ resetDraggingAndHoveredRow: (table: MRT_TableInstance<MRT_RowData>) => void;
112
+ updateRowOrder: ({
113
+ rowId,
114
+ newRowIndex,
115
+ }: {
116
+ rowId: string;
117
+ newRowIndex: number;
118
+ }) => void;
119
+ };
120
+ rowSelection: MRT_RowSelectionState;
121
+ setRowSelection: Dispatch<SetStateAction<MRT_RowSelectionState>>;
122
+ setTableState: Dispatch<SetStateAction<TableState>>;
123
+ tableOptions: TableProps;
124
+ tableState: TableState;
125
+ totalRows: UniversalProps["totalRows"];
126
+ };
127
+
128
+ const TableContent = ({
129
+ columns,
130
+ data,
131
+ draggingRow,
132
+ emptyState,
133
+ getRowId,
134
+ hasRowReordering,
135
+ hasRowSelection,
136
+ isEmpty,
137
+ isLoading,
138
+ isNoResults,
139
+ isRowReorderingDisabled,
140
+ onReorderRows,
141
+ pagination,
142
+ rowReorderingUtilities,
143
+ rowSelection,
144
+ setRowSelection,
145
+ setTableState,
146
+ tableOptions,
147
+ tableState,
148
+ totalRows,
149
+ }: TableContentProps) => {
150
+ const [isTableContainerScrolledToStart, setIsTableContainerScrolledToStart] =
151
+ useState(true);
152
+ const [isTableContainerScrolledToEnd, setIsTableContainerScrolledToEnd] =
153
+ useState(true);
154
+ const [tableInnerContainerWidth, setTableInnerContainerWidth] =
155
+ useState<string>("100%");
156
+ const tableOuterContainerRef = useRef<HTMLDivElement>(null);
157
+ const tableInnerContainerRef = useRef<HTMLDivElement>(null);
158
+ const tableContentRef = useRef<HTMLTableElement>(null);
159
+
160
+ useScrollIndication({
161
+ setIsTableContainerScrolledToEnd: setIsTableContainerScrolledToEnd,
162
+ setIsTableContainerScrolledToStart: setIsTableContainerScrolledToStart,
163
+ setTableInnerContainerWidth: setTableInnerContainerWidth,
164
+ tableInnerContainer: tableInnerContainerRef.current,
165
+ tableOuterContainer: tableOuterContainerRef.current,
166
+ });
167
+
168
+ const odysseyDesignTokens = useOdysseyDesignTokens();
169
+ const { t } = useTranslation();
170
+
171
+ const columnIds = useMemo(() => {
172
+ return columns.map((column) => column.accessorKey) ?? [];
173
+ }, [columns]);
174
+
175
+ const columnOrder = useMemo(
176
+ () => [
177
+ "mrt-row-drag",
178
+ "mrt-row-select",
179
+ "mrt-row-expand",
180
+ ...(columnIds?.filter((id): id is string => typeof id === "string") ||
181
+ []),
182
+ "mrt-row-actions",
183
+ ],
184
+ [columnIds],
185
+ );
186
+
187
+ const rowDensityClassName = useMemo(() => {
188
+ return tableState.rowDensity === "spacious"
189
+ ? "MuiTableBody-spacious"
190
+ : tableState.rowDensity === "compact"
191
+ ? "MuiTableBody-compact"
192
+ : "MuiTableBody-default";
193
+ }, [tableState]);
194
+
195
+ const defaultCell = useCallback<
196
+ ({ cell }: { cell: DataTableCell<MRT_RowData> }) => ReactElement | string
197
+ >(({ cell }) => {
198
+ const value = cell.getValue<string>();
199
+ const hasTextWrapping =
200
+ cell.column.columnDef.hasTextWrapping ||
201
+ cell.column.columnDef.enableWrapping;
202
+ return hasTextWrapping ? value : <TextWrapper>{value}</TextWrapper>;
203
+ }, []);
204
+
205
+ const {
206
+ draggableTableBodyRowClassName,
207
+ dragHandleStyles,
208
+ dragHandleText,
209
+ handleDragHandleKeyDown,
210
+ handleDragHandleOnDragCapture,
211
+ handleDragHandleOnDragEnd,
212
+ resetDraggingAndHoveredRow,
213
+ updateRowOrder,
214
+ } = rowReorderingUtilities;
215
+
216
+ const renderRowActions = useCallback(
217
+ ({ row }: { row: MRT_Row<MRT_RowData> }) => {
218
+ const currentIndex =
219
+ row.index + (pagination.pageIndex - 1) * pagination.pageSize;
220
+ return (
221
+ <RowActionsContainer>
222
+ {tableOptions.rowActionButtons?.(row)}
223
+ {(tableOptions.rowActionMenuItems || hasRowReordering) && (
224
+ <MenuButton
225
+ ariaLabel={t("table.moreactions.arialabel")}
226
+ buttonVariant="floating"
227
+ endIcon={<MoreIcon />}
228
+ menuAlignment="right"
229
+ size="small"
230
+ >
231
+ <RowActions
232
+ isRowReorderingDisabled={isRowReorderingDisabled}
233
+ row={row}
234
+ rowActionMenuItems={tableOptions.rowActionMenuItems}
235
+ rowIndex={currentIndex}
236
+ totalRows={totalRows}
237
+ updateRowOrder={
238
+ hasRowReordering && onReorderRows ? updateRowOrder : undefined
239
+ }
240
+ />
241
+ </MenuButton>
242
+ )}
243
+ </RowActionsContainer>
244
+ );
245
+ },
246
+ [
247
+ hasRowReordering,
248
+ isRowReorderingDisabled,
249
+ onReorderRows,
250
+ pagination.pageIndex,
251
+ pagination.pageSize,
252
+ t,
253
+ tableOptions,
254
+ totalRows,
255
+ updateRowOrder,
256
+ ],
257
+ );
258
+
259
+ const innerWidthStyle = useMemo(
260
+ () => ({ width: tableInnerContainerWidth }),
261
+ [tableInnerContainerWidth],
262
+ );
263
+
264
+ const emptyStateContainer = useCallback(
265
+ () => <Box sx={innerWidthStyle}>{emptyState}</Box>,
266
+ [innerWidthStyle, emptyState],
267
+ );
268
+
269
+ const dataTable = useMaterialReactTable({
270
+ data: !isEmpty && !isNoResults ? data : [],
271
+ columns,
272
+ getRowId,
273
+ state: {
274
+ sorting: tableState.columnSorting,
275
+ columnVisibility: tableState.columnVisibility,
276
+ isLoading: isLoading,
277
+ rowSelection: rowSelection,
278
+ columnOrder: columnOrder,
279
+ },
280
+ icons: {
281
+ ArrowDownwardIcon: ArrowDownIcon,
282
+ DragHandleIcon: DragIndicatorIcon,
283
+ SyncAltIcon: ArrowUnsortedIcon,
284
+ ExpandMoreIcon: ChevronDownIcon,
285
+ },
286
+ ...dataTableImmutableSettings,
287
+ displayColumnDefOptions: displayColumnDefOptions satisfies Partial<
288
+ MRT_TableOptions<MRT_RowData>["displayColumnDefOptions"]
289
+ >,
290
+ muiTableProps: {
291
+ ref: tableContentRef,
292
+ },
293
+ muiTableContainerProps: {
294
+ ref: tableInnerContainerRef,
295
+ },
296
+ muiTableBodyProps: () => ({
297
+ className: rowDensityClassName,
298
+ }),
299
+ enableColumnResizing: tableOptions.hasColumnResizing,
300
+ defaultColumn: {
301
+ Cell: defaultCell,
302
+ },
303
+ enableRowActions:
304
+ (hasRowReordering === true && onReorderRows) ||
305
+ tableOptions.rowActionButtons ||
306
+ tableOptions.rowActionMenuItems
307
+ ? true
308
+ : false,
309
+ renderRowActions: ({ row }) => renderRowActions({ row }),
310
+ enableRowOrdering: hasRowReordering && Boolean(onReorderRows),
311
+ enableRowDragging: hasRowReordering && Boolean(onReorderRows),
312
+ muiDetailPanelProps: ({ row }) => ({
313
+ sx: {
314
+ paddingBlock: row.getIsExpanded()
315
+ ? `${odysseyDesignTokens.Spacing3} !important`
316
+ : undefined,
317
+ },
318
+ }),
319
+ muiTableBodyRowProps: ({ table, row, isDetailPanel }) => ({
320
+ className: draggableTableBodyRowClassName({
321
+ currentRowId: row.id,
322
+ draggingRowId: draggingRow?.id,
323
+ hoveredRowId: table.getState().hoveredRow?.id,
324
+ }),
325
+ sx: isDetailPanel
326
+ ? {
327
+ paddingBlock: "0 !important",
328
+ border: 0,
329
+ ["&:hover"]: {
330
+ backgroundColor: `${odysseyDesignTokens.HueNeutralWhite} !important`,
331
+ },
332
+ }
333
+ : {},
334
+ }),
335
+ muiRowDragHandleProps: ({ table, row }) => ({
336
+ onKeyDown: (event) => handleDragHandleKeyDown({ table, row, event }),
337
+ onBlur: () => resetDraggingAndHoveredRow(table),
338
+ onDragEnd: () => handleDragHandleOnDragEnd(table),
339
+ onDragCapture: () => handleDragHandleOnDragCapture(table),
340
+ disabled: isRowReorderingDisabled,
341
+ sx: dragHandleStyles,
342
+ ...dragHandleText,
343
+ }),
344
+ renderDetailPanel: tableOptions.renderDetailPanel,
345
+ enableRowVirtualization: data.length >= 50,
346
+ muiTableHeadCellProps: ({ column: currentColumn }) => ({
347
+ className: tableState.columnSorting.find(
348
+ (sortedColumn) => sortedColumn.id === currentColumn.id,
349
+ )
350
+ ? "isSorted"
351
+ : "isUnsorted",
352
+ }),
353
+ enableSorting: tableOptions.hasSorting === true, // I don't know why this needs to be true, but it still works if undefined otherwise
354
+ onSortingChange: (sortingUpdater) => {
355
+ const newSortVal =
356
+ typeof sortingUpdater === "function"
357
+ ? sortingUpdater(tableState.columnSorting)
358
+ : tableState.columnSorting;
359
+ setTableState((prevState) => ({
360
+ ...prevState,
361
+ columnSorting: newSortVal,
362
+ }));
363
+ },
364
+ enableRowSelection: hasRowSelection,
365
+ onRowSelectionChange: setRowSelection,
366
+ renderEmptyRowsFallback: emptyStateContainer,
367
+ localization: {
368
+ collapse: t("table.rowexpansion.collapse"),
369
+ collapseAll: t("table.rowexpansion.collapseall"),
370
+ expand: t("table.rowexpansion.expand"),
371
+ expandAll: t("table.rowexpansion.expandall"),
372
+ },
373
+ });
374
+
375
+ return (
376
+ <ScrollableTableContainer
377
+ isScrollableEnd={!isTableContainerScrolledToEnd}
378
+ isScrollableStart={!isTableContainerScrolledToStart}
379
+ odysseyDesignTokens={odysseyDesignTokens}
380
+ ref={tableOuterContainerRef}
381
+ >
382
+ <MRT_TableContainer table={dataTable} />
383
+ </ScrollableTableContainer>
384
+ );
385
+ };
386
+
387
+ const MemoizedTableContent = memo(TableContent);
388
+ MemoizedTableContent.displayName = "TableContent";
389
+
390
+ export { MemoizedTableContent as TableContent };
@@ -0,0 +1,138 @@
1
+ /*!
2
+ * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { Dispatch, SetStateAction, memo, useCallback, useMemo } from "react";
14
+ import { Checkbox as MuiCheckbox } from "@mui/material";
15
+ import { useTranslation } from "react-i18next";
16
+
17
+ import { densityValues } from "./constants";
18
+ import { ListIcon, ShowIcon } from "../../icons.generated";
19
+ import { MenuButton } from "../../MenuButton";
20
+ import { MenuItem } from "../../MenuItem";
21
+ import { TableProps, TableState } from "./componentTypes";
22
+
23
+ export type TableSettingsProps = {
24
+ setTableState: Dispatch<SetStateAction<TableState>>;
25
+ tableOptions: TableProps;
26
+ tableState: TableState;
27
+ };
28
+
29
+ const TableSettings = ({
30
+ setTableState,
31
+ tableOptions,
32
+ tableState,
33
+ }: TableSettingsProps) => {
34
+ const { t } = useTranslation();
35
+
36
+ const { hasChangeableDensity, hasColumnVisibility, columns } = tableOptions;
37
+ const { rowDensity, columnVisibility } = tableState;
38
+
39
+ const changeRowDensity = useCallback(
40
+ (value: (typeof densityValues)[number]) =>
41
+ (_event: React.MouseEvent<HTMLLIElement>) => {
42
+ // This is necessary to avoid linter errors, while the _event is necessary to satisfy the onClick type
43
+ if (process.env.NODE_ENV === "development") console.debug(_event);
44
+
45
+ setTableState((prevState) => ({
46
+ ...prevState,
47
+ rowDensity: value,
48
+ }));
49
+ },
50
+ [setTableState],
51
+ );
52
+
53
+ const changeColumnVisibility = useCallback(
54
+ (columnId: string) => (_event: React.MouseEvent<HTMLLIElement>) => {
55
+ // This is necessary to avoid linter errors, while the _event is necessary to satisfy the onClick type
56
+ if (process.env.NODE_ENV === "development") console.debug(_event);
57
+
58
+ setTableState((prevState) => ({
59
+ ...prevState,
60
+ columnVisibility: {
61
+ ...prevState.columnVisibility,
62
+ [columnId]: prevState.columnVisibility
63
+ ? prevState.columnVisibility[columnId] === false
64
+ : false,
65
+ },
66
+ }));
67
+ },
68
+ [setTableState],
69
+ );
70
+
71
+ const isColumnVisibilityChecked = useMemo(() => {
72
+ return columns.reduce(
73
+ (acc, column) => {
74
+ const isChecked = columnVisibility
75
+ ? columnVisibility[column.accessorKey!] !== false
76
+ : true;
77
+ acc[column.accessorKey!] = isChecked;
78
+ return acc;
79
+ },
80
+ {} as Record<string, boolean>,
81
+ );
82
+ }, [columns, columnVisibility]);
83
+
84
+ return (
85
+ <>
86
+ {hasChangeableDensity && (
87
+ <MenuButton
88
+ ariaLabel={t("table.density.arialabel")}
89
+ endIcon={<ListIcon />}
90
+ menuAlignment="right"
91
+ shouldCloseOnSelect={false}
92
+ >
93
+ <>
94
+ {densityValues.map((value: (typeof densityValues)[number]) => (
95
+ <MenuItem
96
+ key={value}
97
+ isSelected={rowDensity === value}
98
+ onClick={changeRowDensity(value)}
99
+ >
100
+ {`${value.charAt(0).toUpperCase()}${value.slice(1)}`}
101
+ </MenuItem>
102
+ ))}
103
+ </>
104
+ </MenuButton>
105
+ )}
106
+
107
+ {hasColumnVisibility && (
108
+ <MenuButton
109
+ ariaLabel={t("table.columnvisibility.arialabel")}
110
+ endIcon={<ShowIcon />}
111
+ menuAlignment="right"
112
+ shouldCloseOnSelect={false}
113
+ >
114
+ <>
115
+ {columns
116
+ .filter((column) => column.enableHiding !== false)
117
+ .map((column) => (
118
+ <MenuItem
119
+ key={column.accessorKey}
120
+ onClick={changeColumnVisibility(column.id as string)}
121
+ >
122
+ <MuiCheckbox
123
+ checked={isColumnVisibilityChecked[column.accessorKey!]}
124
+ />
125
+ {column.header}
126
+ </MenuItem>
127
+ ))}
128
+ </>
129
+ </MenuButton>
130
+ )}
131
+ </>
132
+ );
133
+ };
134
+
135
+ const MemoizedTableSettings = memo(TableSettings);
136
+ MemoizedTableSettings.displayName = "TableSettings";
137
+
138
+ export { MemoizedTableSettings as TableSettings };
@@ -0,0 +1,111 @@
1
+ /*!
2
+ * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import {
14
+ MRT_DensityState,
15
+ MRT_RowData,
16
+ MRT_RowSelectionState,
17
+ MRT_SortingState,
18
+ MRT_TableOptions,
19
+ MRT_VisibilityState,
20
+ } from "material-react-table";
21
+
22
+ import {
23
+ availableLayouts,
24
+ availableStackLayouts,
25
+ densityValues,
26
+ } from "./constants";
27
+ import { DataFilter } from "../DataFilters";
28
+ import {
29
+ DataGetDataType,
30
+ DataOnReorderRowsType,
31
+ DataRowSelectionState,
32
+ DataTableColumn,
33
+ } from "./dataTypes";
34
+ import { DataTableRowActionsProps } from "../../DataTable/DataTableRowActions";
35
+ import { MenuButtonProps } from "../..";
36
+ import { paginationTypeValues } from "../DataTablePagination";
37
+ import { ReactNode } from "react";
38
+ import { StackCardProps } from "./StackCard";
39
+
40
+ export type DataLayout = (typeof availableLayouts)[number];
41
+ export type StackLayout = (typeof availableStackLayouts)[number];
42
+
43
+ export type AvailableLayouts = DataLayout[];
44
+ export type AvailableStackLayouts = StackLayout[];
45
+
46
+ export type UniversalProps = {
47
+ bulkActionMenuItems?: (
48
+ selectedRows: MRT_RowSelectionState,
49
+ ) => MenuButtonProps["children"];
50
+ currentPage?: number;
51
+ emptyPlaceholder?: ReactNode;
52
+ errorMessage?: string;
53
+ filters?: Array<DataFilter | DataTableColumn<MRT_RowData> | string>;
54
+ getData: ({
55
+ page,
56
+ resultsPerPage,
57
+ search,
58
+ filters,
59
+ sort,
60
+ }: DataGetDataType) => MRT_RowData[] | Promise<MRT_RowData[]>;
61
+ getRowId?: MRT_TableOptions<MRT_RowData>["getRowId"];
62
+ hasFilters?: boolean;
63
+ hasPagination?: boolean;
64
+ hasRowReordering?: boolean;
65
+ hasRowSelection?: boolean;
66
+ hasSearch?: boolean;
67
+ hasSearchSubmitButton?: boolean;
68
+ isEmpty?: boolean;
69
+ isLoading?: boolean;
70
+ isNoResults?: boolean;
71
+ isRowReorderingDisabled?: boolean;
72
+ noResultsPlaceholder?: ReactNode;
73
+ onChangeRowSelection?: (rowSelection: DataRowSelectionState) => void;
74
+ onReorderRows?: ({ rowId, newRowIndex }: DataOnReorderRowsType) => void;
75
+ paginationType?: (typeof paginationTypeValues)[number];
76
+ resultsPerPage?: number;
77
+ searchDelayTime?: number;
78
+ totalRows?: number;
79
+ };
80
+
81
+ export type TableProps = {
82
+ columns: DataTableColumn<MRT_RowData>[];
83
+ hasChangeableDensity?: boolean;
84
+ hasColumnResizing?: boolean;
85
+ hasColumnVisibility?: boolean;
86
+ hasSorting?: boolean;
87
+ initialDensity?: (typeof densityValues)[number];
88
+ renderDetailPanel?: MRT_TableOptions<MRT_RowData>["renderDetailPanel"];
89
+ rowActionButtons?: DataTableRowActionsProps["rowActionButtons"];
90
+ rowActionMenuItems?: DataTableRowActionsProps["rowActionMenuItems"];
91
+ };
92
+
93
+ export type StackProps = {
94
+ cardProps: (row: MRT_RowData) => StackCardProps;
95
+ maxGridColumns?: number;
96
+ renderDetailPanel?: (props: { row: MRT_RowData }) => ReactNode;
97
+ rowActionMenuItems?: DataTableRowActionsProps["rowActionMenuItems"];
98
+ };
99
+
100
+ export type ViewProps<L extends DataLayout> = {
101
+ availableLayouts?: L[];
102
+ initialLayout?: L;
103
+ stackOptions?: StackProps;
104
+ tableOptions?: TableProps;
105
+ };
106
+
107
+ export type TableState = {
108
+ columnSorting: MRT_SortingState;
109
+ columnVisibility: MRT_VisibilityState;
110
+ rowDensity?: MRT_DensityState;
111
+ };
@@ -0,0 +1,20 @@
1
+ /*!
2
+ * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ export const availableStackLayouts = ["list", "grid"];
14
+ export const availableTableLayouts = ["table"];
15
+ export const availableLayouts = [
16
+ ...availableTableLayouts,
17
+ ...availableStackLayouts,
18
+ ];
19
+
20
+ export const densityValues = ["comfortable", "spacious", "compact"] as const;