@okta/odyssey-react-mui 1.32.0 → 1.32.4

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 (458) hide show
  1. package/dist/cjs/theme/components.cjs +6 -0
  2. package/dist/cjs/theme/components.cjs.map +1 -1
  3. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +2 -1
  4. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  5. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +36 -11
  6. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
  7. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +3 -1
  8. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
  9. package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs +14 -2
  10. package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs.map +1 -1
  11. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +1 -1
  12. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
  13. package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
  14. package/dist/cjs/ui-shell/UiShellContent.cjs +48 -32
  15. package/dist/cjs/ui-shell/UiShellContent.cjs.map +1 -1
  16. package/dist/cjs/ui-shell/index.cjs +9 -1
  17. package/dist/cjs/ui-shell/index.cjs.map +1 -1
  18. package/dist/cjs/useContrastMode.cjs +1 -1
  19. package/dist/cjs/useContrastMode.cjs.map +1 -1
  20. package/dist/esm/theme/components.js +6 -0
  21. package/dist/esm/theme/components.js.map +1 -1
  22. package/dist/esm/ui-shell/SideNav/SideNav.js +2 -1
  23. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  24. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +37 -12
  25. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
  26. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +3 -1
  27. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
  28. package/dist/esm/ui-shell/SideNav/SideNavLogo.js +14 -2
  29. package/dist/esm/ui-shell/SideNav/SideNavLogo.js.map +1 -1
  30. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +1 -1
  31. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
  32. package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
  33. package/dist/esm/ui-shell/UiShellContent.js +45 -31
  34. package/dist/esm/ui-shell/UiShellContent.js.map +1 -1
  35. package/dist/esm/ui-shell/index.js +1 -0
  36. package/dist/esm/ui-shell/index.js.map +1 -1
  37. package/dist/esm/useContrastMode.js +2 -2
  38. package/dist/esm/useContrastMode.js.map +1 -1
  39. package/dist/index.cjs +1 -1
  40. package/dist/index.mjs +1 -1
  41. package/dist/index.scss +1 -1
  42. package/dist/tsconfig.production.tsbuildinfo +1 -1
  43. package/dist/types/theme/components.d.ts.map +1 -1
  44. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  45. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts +9 -7
  46. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
  47. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts +1 -1
  48. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
  49. package/dist/types/ui-shell/SideNav/SideNavLogo.d.ts.map +1 -1
  50. package/dist/types/ui-shell/SideNav/types.d.ts +5 -1
  51. package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
  52. package/dist/types/ui-shell/UiShellContent.d.ts +8 -2
  53. package/dist/types/ui-shell/UiShellContent.d.ts.map +1 -1
  54. package/dist/types/ui-shell/index.d.ts +1 -1
  55. package/dist/types/ui-shell/index.d.ts.map +1 -1
  56. package/package.json +4 -4
  57. package/.browserslistrc +0 -1
  58. package/.svgrrc.cjs +0 -13
  59. package/CHANGELOG.md +0 -1490
  60. package/babel.config.cjs +0 -112
  61. package/i18n.config.json +0 -10
  62. package/scripts/generateIconsIndex.ts +0 -49
  63. package/scripts/generateTestSelectorsJson.ts +0 -33
  64. package/scripts/properties-to-ts.ts +0 -111
  65. package/src/@types/i18next.d.ts +0 -24
  66. package/src/@types/properties.d.ts +0 -292
  67. package/src/@types/react-augment.d.ts +0 -22
  68. package/src/Accordion.tsx +0 -117
  69. package/src/Autocomplete.tsx +0 -321
  70. package/src/Badge.tsx +0 -112
  71. package/src/Banner.tsx +0 -112
  72. package/src/Box.tsx +0 -44
  73. package/src/Breadcrumbs.tsx +0 -221
  74. package/src/Buttons/BaseButton.tsx +0 -250
  75. package/src/Buttons/BaseMenuButton.tsx +0 -342
  76. package/src/Buttons/Button.tsx +0 -30
  77. package/src/Buttons/ButtonContext.tsx +0 -23
  78. package/src/Buttons/MenuButton.tsx +0 -33
  79. package/src/Buttons/MenuContext.ts +0 -25
  80. package/src/Buttons/MenuItem.tsx +0 -103
  81. package/src/Buttons/index.ts +0 -25
  82. package/src/Callout.tsx +0 -176
  83. package/src/Card.tsx +0 -186
  84. package/src/Checkbox.tsx +0 -261
  85. package/src/CheckboxGroup.tsx +0 -127
  86. package/src/CircularProgress.tsx +0 -42
  87. package/src/CssBaseline.tsx +0 -20
  88. package/src/DataTable/DataTable.tsx +0 -968
  89. package/src/DataTable/DataTableRowActions.tsx +0 -132
  90. package/src/DataTable/DataTableSettings.tsx +0 -136
  91. package/src/DataTable/constants.ts +0 -13
  92. package/src/DataTable/index.tsx +0 -28
  93. package/src/DataTable/reorderDataRowsLocally.tsx +0 -48
  94. package/src/DataTable/useRowReordering.tsx +0 -232
  95. package/src/DataTable/useScrollIndication.tsx +0 -125
  96. package/src/DatePickers/DateField.tsx +0 -267
  97. package/src/DatePickers/DateFieldActionBar.tsx +0 -65
  98. package/src/DatePickers/DateFieldLocalizationProvider.tsx +0 -46
  99. package/src/DatePickers/DatePicker.test.tsx +0 -66
  100. package/src/DatePickers/DatePicker.tsx +0 -299
  101. package/src/DatePickers/DatePicker.types.d.ts +0 -14
  102. package/src/DatePickers/TimeZonePicker.tsx +0 -59
  103. package/src/DatePickers/datePickerTheme.tsx +0 -377
  104. package/src/DatePickers/index.ts +0 -15
  105. package/src/DatePickers/useDateFieldsTranslations.ts +0 -94
  106. package/src/DatePickers/useOdysseyDateFields.ts +0 -303
  107. package/src/Dialog.tsx +0 -178
  108. package/src/Drawer.tsx +0 -255
  109. package/src/EmptyState.tsx +0 -79
  110. package/src/ErrorMessageList.tsx +0 -56
  111. package/src/Field.tsx +0 -189
  112. package/src/FieldComponentProps.ts +0 -66
  113. package/src/FieldError.tsx +0 -59
  114. package/src/FieldHint.tsx +0 -72
  115. package/src/FieldLabel.tsx +0 -67
  116. package/src/Fieldset.tsx +0 -116
  117. package/src/FieldsetContext.tsx +0 -23
  118. package/src/FileUploader/FileUploadIllustration.tsx +0 -66
  119. package/src/FileUploader/FileUploadPreview.tsx +0 -151
  120. package/src/FileUploader/FileUploader.tsx +0 -311
  121. package/src/FileUploader/index.ts +0 -13
  122. package/src/Form.tsx +0 -185
  123. package/src/FormCheckedProps.ts +0 -59
  124. package/src/HintLink.tsx +0 -28
  125. package/src/HtmlProps.ts +0 -112
  126. package/src/IconWithTooltip.tsx +0 -90
  127. package/src/Link.tsx +0 -115
  128. package/src/MuiPropsChild.tsx +0 -42
  129. package/src/MuiPropsContext.ts +0 -18
  130. package/src/NativeSelect.tsx +0 -249
  131. package/src/NullElement.tsx +0 -13
  132. package/src/OdysseyCacheProvider.test.tsx +0 -39
  133. package/src/OdysseyCacheProvider.tsx +0 -86
  134. package/src/OdysseyDesignTokensContext.tsx +0 -23
  135. package/src/OdysseyProvider.tsx +0 -92
  136. package/src/OdysseyThemeProvider.test.tsx +0 -211
  137. package/src/OdysseyThemeProvider.tsx +0 -109
  138. package/src/OdysseyTranslationProvider.test.tsx +0 -95
  139. package/src/OdysseyTranslationProvider.tsx +0 -77
  140. package/src/OdysseyTranslationProvider.types.ts +0 -47
  141. package/src/Pagination/Pagination.test.tsx +0 -327
  142. package/src/Pagination/Pagination.tsx +0 -417
  143. package/src/Pagination/constants.ts +0 -13
  144. package/src/Pagination/index.ts +0 -15
  145. package/src/Pagination/usePagination.ts +0 -45
  146. package/src/PasswordField.tsx +0 -253
  147. package/src/Radio.tsx +0 -199
  148. package/src/RadioGroup.tsx +0 -164
  149. package/src/ScreenReaderText.tsx +0 -53
  150. package/src/SearchField.tsx +0 -240
  151. package/src/Select.tsx +0 -576
  152. package/src/Stack.tsx +0 -56
  153. package/src/Status.tsx +0 -67
  154. package/src/Surface.tsx +0 -61
  155. package/src/SvgIcon.ts +0 -22
  156. package/src/Switch.tsx +0 -425
  157. package/src/Tabs.tsx +0 -259
  158. package/src/Tag.tsx +0 -317
  159. package/src/TagList.tsx +0 -55
  160. package/src/TagListContext.tsx +0 -23
  161. package/src/TextField.tsx +0 -298
  162. package/src/Toast.tsx +0 -151
  163. package/src/ToastStack.tsx +0 -43
  164. package/src/Tooltip.tsx +0 -61
  165. package/src/Typography.test.tsx +0 -26
  166. package/src/Typography.tsx +0 -474
  167. package/src/createContrastColors.ts +0 -112
  168. package/src/createUniqueAlphabeticalId.test.ts +0 -22
  169. package/src/createUniqueAlphabeticalId.ts +0 -17
  170. package/src/createUniqueId.test.ts +0 -22
  171. package/src/createUniqueId.ts +0 -17
  172. package/src/getTypedObjectKeys.ts +0 -15
  173. package/src/hexToRgb.ts +0 -40
  174. package/src/i18n.ts +0 -110
  175. package/src/icons.generated/Add.tsx +0 -44
  176. package/src/icons.generated/AddCircle.tsx +0 -46
  177. package/src/icons.generated/Apps.tsx +0 -44
  178. package/src/icons.generated/ArrowBottom.tsx +0 -46
  179. package/src/icons.generated/ArrowDown.tsx +0 -46
  180. package/src/icons.generated/ArrowLeft.tsx +0 -46
  181. package/src/icons.generated/ArrowLowerLeft.tsx +0 -46
  182. package/src/icons.generated/ArrowLowerRight.tsx +0 -46
  183. package/src/icons.generated/ArrowRight.tsx +0 -46
  184. package/src/icons.generated/ArrowTop.tsx +0 -46
  185. package/src/icons.generated/ArrowUnsorted.tsx +0 -46
  186. package/src/icons.generated/ArrowUp.tsx +0 -46
  187. package/src/icons.generated/ArrowUpperLeft.tsx +0 -46
  188. package/src/icons.generated/ArrowUpperRight.tsx +0 -46
  189. package/src/icons.generated/Bug.tsx +0 -44
  190. package/src/icons.generated/Calendar.tsx +0 -46
  191. package/src/icons.generated/Call.tsx +0 -44
  192. package/src/icons.generated/Chat.tsx +0 -44
  193. package/src/icons.generated/Check.tsx +0 -44
  194. package/src/icons.generated/CheckCircleFilled.tsx +0 -47
  195. package/src/icons.generated/ChevronDown.tsx +0 -46
  196. package/src/icons.generated/ChevronLeft.tsx +0 -46
  197. package/src/icons.generated/ChevronRight.tsx +0 -46
  198. package/src/icons.generated/ChevronUp.tsx +0 -46
  199. package/src/icons.generated/Clock.tsx +0 -44
  200. package/src/icons.generated/Close.tsx +0 -44
  201. package/src/icons.generated/CloseCircleFilled.tsx +0 -47
  202. package/src/icons.generated/CollapseLeft.tsx +0 -46
  203. package/src/icons.generated/CollapseRight.tsx +0 -46
  204. package/src/icons.generated/Copy.tsx +0 -44
  205. package/src/icons.generated/Custom.tsx +0 -50
  206. package/src/icons.generated/DangerDiamond.tsx +0 -46
  207. package/src/icons.generated/DangerDiamondFilled.tsx +0 -47
  208. package/src/icons.generated/Delete.tsx +0 -44
  209. package/src/icons.generated/Deny.tsx +0 -44
  210. package/src/icons.generated/Devices.tsx +0 -46
  211. package/src/icons.generated/Directory.tsx +0 -46
  212. package/src/icons.generated/Documentation.tsx +0 -46
  213. package/src/icons.generated/Download.tsx +0 -46
  214. package/src/icons.generated/DragIndicator.tsx +0 -46
  215. package/src/icons.generated/Duo.tsx +0 -62
  216. package/src/icons.generated/Edit.tsx +0 -44
  217. package/src/icons.generated/Email.tsx +0 -49
  218. package/src/icons.generated/ExpandLeft.tsx +0 -46
  219. package/src/icons.generated/ExpandRight.tsx +0 -46
  220. package/src/icons.generated/ExternalLink.tsx +0 -44
  221. package/src/icons.generated/Fido2.tsx +0 -72
  222. package/src/icons.generated/Filter.tsx +0 -44
  223. package/src/icons.generated/Folder.tsx +0 -44
  224. package/src/icons.generated/Globe.tsx +0 -44
  225. package/src/icons.generated/GoogleAuth.tsx +0 -70
  226. package/src/icons.generated/Grid.tsx +0 -47
  227. package/src/icons.generated/Group.tsx +0 -44
  228. package/src/icons.generated/Hide.tsx +0 -44
  229. package/src/icons.generated/Home.tsx +0 -44
  230. package/src/icons.generated/Idp.tsx +0 -54
  231. package/src/icons.generated/InformationCircle.tsx +0 -47
  232. package/src/icons.generated/InformationCircleFilled.tsx +0 -47
  233. package/src/icons.generated/Link.tsx +0 -44
  234. package/src/icons.generated/List.tsx +0 -44
  235. package/src/icons.generated/Lock.tsx +0 -44
  236. package/src/icons.generated/More.tsx +0 -44
  237. package/src/icons.generated/Notification.tsx +0 -46
  238. package/src/icons.generated/OktaVerify.tsx +0 -46
  239. package/src/icons.generated/OnPremMfa.tsx +0 -52
  240. package/src/icons.generated/OneTimePassword.tsx +0 -65
  241. package/src/icons.generated/Password.tsx +0 -80
  242. package/src/icons.generated/Pause.tsx +0 -44
  243. package/src/icons.generated/QuestionCircle.tsx +0 -46
  244. package/src/icons.generated/QuestionCircleFilled.tsx +0 -47
  245. package/src/icons.generated/Refresh.tsx +0 -46
  246. package/src/icons.generated/Reset.tsx +0 -44
  247. package/src/icons.generated/Resume.tsx +0 -44
  248. package/src/icons.generated/Search.tsx +0 -44
  249. package/src/icons.generated/SecurityQuestion.tsx +0 -51
  250. package/src/icons.generated/Server.tsx +0 -44
  251. package/src/icons.generated/Settings.tsx +0 -46
  252. package/src/icons.generated/Show.tsx +0 -44
  253. package/src/icons.generated/SmartCard.tsx +0 -65
  254. package/src/icons.generated/Sms.tsx +0 -55
  255. package/src/icons.generated/Subtract.tsx +0 -46
  256. package/src/icons.generated/SymantecVip.tsx +0 -52
  257. package/src/icons.generated/Sync.tsx +0 -44
  258. package/src/icons.generated/ThumbsDown.tsx +0 -46
  259. package/src/icons.generated/ThumbsUp.tsx +0 -46
  260. package/src/icons.generated/Unlock.tsx +0 -44
  261. package/src/icons.generated/Upload.tsx +0 -44
  262. package/src/icons.generated/User.tsx +0 -44
  263. package/src/icons.generated/Video.tsx +0 -44
  264. package/src/icons.generated/VoiceCall.tsx +0 -62
  265. package/src/icons.generated/Warning.tsx +0 -46
  266. package/src/icons.generated/WarningFilled.tsx +0 -46
  267. package/src/icons.generated/Yubikey.tsx +0 -44
  268. package/src/icons.generated/index.ts +0 -107
  269. package/src/index.ts +0 -118
  270. package/src/inputUtils.ts +0 -80
  271. package/src/labs/AppTile.tsx +0 -421
  272. package/src/labs/DataFilters.tsx +0 -871
  273. package/src/labs/DataTable.tsx +0 -877
  274. package/src/labs/DataTablePagination.tsx +0 -88
  275. package/src/labs/DataView/BulkActionsMenu.tsx +0 -98
  276. package/src/labs/DataView/CardLayoutContent.tsx +0 -272
  277. package/src/labs/DataView/DataCard.tsx +0 -357
  278. package/src/labs/DataView/DataTable.tsx +0 -128
  279. package/src/labs/DataView/DataView.test.tsx +0 -1168
  280. package/src/labs/DataView/DataView.tsx +0 -504
  281. package/src/labs/DataView/DetailPanel.tsx +0 -31
  282. package/src/labs/DataView/LayoutSwitcher.tsx +0 -72
  283. package/src/labs/DataView/RowActions.tsx +0 -125
  284. package/src/labs/DataView/TableLayoutContent.tsx +0 -500
  285. package/src/labs/DataView/TableSettings.tsx +0 -144
  286. package/src/labs/DataView/componentTypes.ts +0 -129
  287. package/src/labs/DataView/constants.tsx +0 -28
  288. package/src/labs/DataView/dataTypes.ts +0 -83
  289. package/src/labs/DataView/fetchData.ts +0 -49
  290. package/src/labs/DataView/index.ts +0 -19
  291. package/src/labs/DataView/tableConstants.tsx +0 -137
  292. package/src/labs/DataView/testSupportData.tsx +0 -301
  293. package/src/labs/DataView/useFilterConversion.ts +0 -88
  294. package/src/labs/DatePickers/DateTimeField.tsx +0 -267
  295. package/src/labs/DatePickers/DateTimePicker.test.tsx +0 -70
  296. package/src/labs/DatePickers/DateTimePicker.tsx +0 -303
  297. package/src/labs/DatePickers/dateTimePickerTheme.ts +0 -216
  298. package/src/labs/DatePickers/index.ts +0 -13
  299. package/src/labs/GroupPicker.tsx +0 -261
  300. package/src/labs/OdysseyPickers/ComposablePicker.test.tsx +0 -32
  301. package/src/labs/OdysseyPickers/ComposablePicker.tsx +0 -188
  302. package/src/labs/OdysseyPickers/Picker.tsx +0 -381
  303. package/src/labs/OdysseyPickers/PickerVirtualizationListBox.tsx +0 -192
  304. package/src/labs/OdysseyPickers/PickerWithOptionAdornment.tsx +0 -429
  305. package/src/labs/OdysseyPickers/index.ts +0 -15
  306. package/src/labs/PageTemplate/Layout.tsx +0 -85
  307. package/src/labs/PageTemplate/PageTemplate.tsx +0 -234
  308. package/src/labs/PageTemplate/index.ts +0 -14
  309. package/src/labs/PaginatedTable.tsx +0 -290
  310. package/src/labs/README.md +0 -46
  311. package/src/labs/StaticTable.tsx +0 -131
  312. package/src/labs/UserProfile.tsx +0 -104
  313. package/src/labs/UserProfileMenuButton.tsx +0 -86
  314. package/src/labs/index.ts +0 -47
  315. package/src/labs/materialReactTableTypes.tsx +0 -19
  316. package/src/properties/odyssey-react-mui.properties +0 -140
  317. package/src/properties/translations/odyssey-react-mui_cs.properties +0 -140
  318. package/src/properties/translations/odyssey-react-mui_da.properties +0 -140
  319. package/src/properties/translations/odyssey-react-mui_de.properties +0 -140
  320. package/src/properties/translations/odyssey-react-mui_el.properties +0 -140
  321. package/src/properties/translations/odyssey-react-mui_es.properties +0 -140
  322. package/src/properties/translations/odyssey-react-mui_fi.properties +0 -140
  323. package/src/properties/translations/odyssey-react-mui_fr.properties +0 -140
  324. package/src/properties/translations/odyssey-react-mui_ht.properties +0 -140
  325. package/src/properties/translations/odyssey-react-mui_hu.properties +0 -140
  326. package/src/properties/translations/odyssey-react-mui_id.properties +0 -140
  327. package/src/properties/translations/odyssey-react-mui_it.properties +0 -140
  328. package/src/properties/translations/odyssey-react-mui_ja.properties +0 -140
  329. package/src/properties/translations/odyssey-react-mui_ko.properties +0 -140
  330. package/src/properties/translations/odyssey-react-mui_ms.properties +0 -140
  331. package/src/properties/translations/odyssey-react-mui_nb.properties +0 -140
  332. package/src/properties/translations/odyssey-react-mui_nl_NL.properties +0 -140
  333. package/src/properties/translations/odyssey-react-mui_ok_PL.properties +0 -126
  334. package/src/properties/translations/odyssey-react-mui_ok_SK.properties +0 -126
  335. package/src/properties/translations/odyssey-react-mui_pl.properties +0 -140
  336. package/src/properties/translations/odyssey-react-mui_pt_BR.properties +0 -140
  337. package/src/properties/translations/odyssey-react-mui_ro.properties +0 -140
  338. package/src/properties/translations/odyssey-react-mui_ru.properties +0 -140
  339. package/src/properties/translations/odyssey-react-mui_sv.properties +0 -140
  340. package/src/properties/translations/odyssey-react-mui_th.properties +0 -140
  341. package/src/properties/translations/odyssey-react-mui_tr.properties +0 -140
  342. package/src/properties/translations/odyssey-react-mui_uk.properties +0 -140
  343. package/src/properties/translations/odyssey-react-mui_vi.properties +0 -140
  344. package/src/properties/translations/odyssey-react-mui_zh_CN.properties +0 -140
  345. package/src/properties/translations/odyssey-react-mui_zh_TW.properties +0 -140
  346. package/src/properties/ts/odyssey-react-mui.ts +0 -1
  347. package/src/properties/ts/odyssey-react-mui_cs.ts +0 -1
  348. package/src/properties/ts/odyssey-react-mui_da.ts +0 -1
  349. package/src/properties/ts/odyssey-react-mui_de.ts +0 -1
  350. package/src/properties/ts/odyssey-react-mui_el.ts +0 -1
  351. package/src/properties/ts/odyssey-react-mui_es.ts +0 -1
  352. package/src/properties/ts/odyssey-react-mui_fi.ts +0 -1
  353. package/src/properties/ts/odyssey-react-mui_fr.ts +0 -1
  354. package/src/properties/ts/odyssey-react-mui_ht.ts +0 -1
  355. package/src/properties/ts/odyssey-react-mui_hu.ts +0 -1
  356. package/src/properties/ts/odyssey-react-mui_id.ts +0 -1
  357. package/src/properties/ts/odyssey-react-mui_it.ts +0 -1
  358. package/src/properties/ts/odyssey-react-mui_ja.ts +0 -1
  359. package/src/properties/ts/odyssey-react-mui_ko.ts +0 -1
  360. package/src/properties/ts/odyssey-react-mui_ms.ts +0 -1
  361. package/src/properties/ts/odyssey-react-mui_nb.ts +0 -1
  362. package/src/properties/ts/odyssey-react-mui_nl_NL.ts +0 -1
  363. package/src/properties/ts/odyssey-react-mui_ok_PL.ts +0 -1
  364. package/src/properties/ts/odyssey-react-mui_ok_SK.ts +0 -1
  365. package/src/properties/ts/odyssey-react-mui_pl.ts +0 -1
  366. package/src/properties/ts/odyssey-react-mui_pt_BR.ts +0 -1
  367. package/src/properties/ts/odyssey-react-mui_ro.ts +0 -1
  368. package/src/properties/ts/odyssey-react-mui_ru.ts +0 -1
  369. package/src/properties/ts/odyssey-react-mui_sv.ts +0 -1
  370. package/src/properties/ts/odyssey-react-mui_th.ts +0 -1
  371. package/src/properties/ts/odyssey-react-mui_tr.ts +0 -1
  372. package/src/properties/ts/odyssey-react-mui_uk.ts +0 -1
  373. package/src/properties/ts/odyssey-react-mui_vi.ts +0 -1
  374. package/src/properties/ts/odyssey-react-mui_zh_CN.ts +0 -1
  375. package/src/properties/ts/odyssey-react-mui_zh_TW.ts +0 -1
  376. package/src/remUtils.ts +0 -27
  377. package/src/shadow-dom/index.ts +0 -13
  378. package/src/shadow-dom/shadow-dom.test.ts +0 -24
  379. package/src/shadow-dom/shadow-dom.ts +0 -54
  380. package/src/test-selectors/getByQuerySelector.ts +0 -176
  381. package/src/test-selectors/getComputedAccessibleErrorMessageText.ts +0 -52
  382. package/src/test-selectors/getComputedAccessibleText.ts +0 -36
  383. package/src/test-selectors/index.ts +0 -15
  384. package/src/test-selectors/interpolateString.ts +0 -41
  385. package/src/test-selectors/linkedHtmlSelectors.ts +0 -73
  386. package/src/test-selectors/queryOdysseySelector.ts +0 -36
  387. package/src/test-selectors/querySelector.ts +0 -249
  388. package/src/test-selectors/sanityChecks.ts +0 -53
  389. package/src/test-selectors/testSelector.ts +0 -143
  390. package/src/theme/components.tsx +0 -3275
  391. package/src/theme/components.types.ts +0 -111
  392. package/src/theme/createOdysseyMuiTheme.ts +0 -54
  393. package/src/theme/index.ts +0 -13
  394. package/src/theme/mixins.ts +0 -29
  395. package/src/theme/mixins.types.ts +0 -31
  396. package/src/theme/palette.ts +0 -112
  397. package/src/theme/palette.types.ts +0 -24
  398. package/src/theme/shape.ts +0 -31
  399. package/src/theme/spacing.ts +0 -34
  400. package/src/theme/theme.ts +0 -13
  401. package/src/theme/typography.ts +0 -137
  402. package/src/theme/typography.types.ts +0 -41
  403. package/src/theme/useContrastMode.test.tsx +0 -504
  404. package/src/ui-shell/AppSwitcher/AppSwitcher.tsx +0 -94
  405. package/src/ui-shell/AppSwitcher/AppSwitcherApp.tsx +0 -146
  406. package/src/ui-shell/AppSwitcher/OktaAura.tsx +0 -50
  407. package/src/ui-shell/AppSwitcher/index.ts +0 -13
  408. package/src/ui-shell/SideNav/CollapseIcon.tsx +0 -34
  409. package/src/ui-shell/SideNav/HandleIcon.tsx +0 -35
  410. package/src/ui-shell/SideNav/NavAccordion.tsx +0 -243
  411. package/src/ui-shell/SideNav/OktaLogo.tsx +0 -34
  412. package/src/ui-shell/SideNav/SideNav.test.tsx +0 -326
  413. package/src/ui-shell/SideNav/SideNav.tsx +0 -810
  414. package/src/ui-shell/SideNav/SideNavFooterContent.tsx +0 -85
  415. package/src/ui-shell/SideNav/SideNavHeader.tsx +0 -134
  416. package/src/ui-shell/SideNav/SideNavItemContent.tsx +0 -402
  417. package/src/ui-shell/SideNav/SideNavItemContentContext.tsx +0 -29
  418. package/src/ui-shell/SideNav/SideNavItemLinkContent.tsx +0 -90
  419. package/src/ui-shell/SideNav/SideNavLogo.tsx +0 -65
  420. package/src/ui-shell/SideNav/SideNavToggleButton.tsx +0 -272
  421. package/src/ui-shell/SideNav/SortableList/SortableItem.tsx +0 -237
  422. package/src/ui-shell/SideNav/SortableList/SortableList.tsx +0 -132
  423. package/src/ui-shell/SideNav/SortableList/SortableOverlay.tsx +0 -34
  424. package/src/ui-shell/SideNav/index.ts +0 -16
  425. package/src/ui-shell/SideNav/types.ts +0 -224
  426. package/src/ui-shell/TopNav/TopNav.tsx +0 -109
  427. package/src/ui-shell/TopNav/TopNavLinksList.tsx +0 -68
  428. package/src/ui-shell/TopNav/TopNavListItem.tsx +0 -209
  429. package/src/ui-shell/TopNav/index.ts +0 -13
  430. package/src/ui-shell/UiShell.test.tsx +0 -366
  431. package/src/ui-shell/UiShell.tsx +0 -153
  432. package/src/ui-shell/UiShellContent.tsx +0 -350
  433. package/src/ui-shell/UiShellProvider.tsx +0 -103
  434. package/src/ui-shell/bufferLatest.test.ts +0 -79
  435. package/src/ui-shell/bufferLatest.ts +0 -64
  436. package/src/ui-shell/createMessageBus.test.ts +0 -115
  437. package/src/ui-shell/createMessageBus.ts +0 -53
  438. package/src/ui-shell/createStore.test.ts +0 -103
  439. package/src/ui-shell/createStore.ts +0 -37
  440. package/src/ui-shell/index.ts +0 -21
  441. package/src/ui-shell/renderUiShell.test.tsx +0 -203
  442. package/src/ui-shell/renderUiShell.tsx +0 -158
  443. package/src/ui-shell/useHasUiShell.ts +0 -25
  444. package/src/ui-shell/useScrollState.ts +0 -59
  445. package/src/useAutocomplete.tsx +0 -184
  446. package/src/useContrastMode.tsx +0 -143
  447. package/src/useNormalizedKey.ts +0 -17
  448. package/src/useUniqueAlphabeticalId.ts +0 -21
  449. package/src/useUniqueId.ts +0 -21
  450. package/src/web-component/createReactRootElements.test.ts +0 -40
  451. package/src/web-component/createReactRootElements.ts +0 -39
  452. package/src/web-component/index.ts +0 -13
  453. package/src/web-component/renderReactInWebComponent.test.tsx +0 -128
  454. package/src/web-component/renderReactInWebComponent.ts +0 -135
  455. package/tsconfig.json +0 -16
  456. package/tsconfig.production.json +0 -13
  457. package/vitest.config.ts +0 -36
  458. package/vitest.setup.ts +0 -32
@@ -1,3275 +0,0 @@
1
- /*!
2
- * Copyright (c) 2022-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 { ThemeOptions } from "@mui/material";
14
- import type {} from "@mui/lab/themeAugmentation";
15
- import { alertTitleClasses } from "@mui/material/AlertTitle";
16
- import { autocompleteClasses } from "@mui/material/Autocomplete";
17
- import { buttonClasses } from "@mui/material/Button";
18
- import { buttonBaseClasses } from "@mui/material/ButtonBase";
19
- import { checkboxClasses } from "@mui/material/Checkbox";
20
- import { chipClasses } from "@mui/material/Chip";
21
- import { dividerClasses } from "@mui/material/Divider";
22
- import { formControlLabelClasses } from "@mui/material/FormControlLabel";
23
- import { formLabelClasses } from "@mui/material/FormLabel";
24
- import { formGroupClasses } from "@mui/material/FormGroup";
25
- import { inputAdornmentClasses } from "@mui/material/InputAdornment";
26
- import { inputBaseClasses } from "@mui/material/InputBase";
27
- import { listItemIconClasses } from "@mui/material/ListItemIcon";
28
- import { listItemTextClasses } from "@mui/material/ListItemText";
29
- import { menuItemClasses } from "@mui/material/MenuItem";
30
- import { radioClasses } from "@mui/material/Radio";
31
- import { stackClasses } from "@mui/material/Stack";
32
- import { svgIconClasses } from "@mui/material/SvgIcon";
33
- import { tableBodyClasses } from "@mui/material/TableBody";
34
- import { tableHeadClasses } from "@mui/material/TableHead";
35
- import { tableRowClasses } from "@mui/material/TableRow";
36
- import { tableCellClasses } from "@mui/material/TableCell";
37
- import { tooltipClasses } from "@mui/material/Tooltip";
38
- import { typographyClasses } from "@mui/material/Typography";
39
-
40
- import {
41
- CheckCircleFilledIcon,
42
- CheckIcon,
43
- ChevronDownIcon,
44
- CloseCircleFilledIcon,
45
- CloseIcon,
46
- DangerDiamondFilledIcon,
47
- InformationCircleFilledIcon,
48
- SubtractIcon,
49
- WarningFilledIcon,
50
- } from "../icons.generated/index.js";
51
- import { DesignTokens } from "./theme.js";
52
- import { CSSProperties } from "react";
53
- import { ContrastMode } from "../useContrastMode.js";
54
- import { CSSObject } from "@emotion/react";
55
-
56
- //Widths used in `Drawer` component
57
- const drawerSizes = {
58
- persistent: "25.714rem", //~360px
59
- temporary: "28.571rem", //~400px
60
- };
61
-
62
- export const getComponents = ({
63
- contrastMode,
64
- odysseyTokens,
65
- shadowDomElement,
66
- shadowRootElement,
67
- }: {
68
- contrastMode: ContrastMode;
69
- odysseyTokens: DesignTokens;
70
- /** @deprecated use `shadowRootElement` */
71
- shadowDomElement?: HTMLElement;
72
- shadowRootElement?: HTMLElement;
73
- }): ThemeOptions["components"] => {
74
- return {
75
- MuiAccordion: {
76
- styleOverrides: {
77
- root: () => ({
78
- backgroundColor: odysseyTokens.HueNeutralWhite,
79
- border: 0,
80
- borderBottomColor: odysseyTokens.BorderColorDisplay,
81
- borderBottomStyle: "solid",
82
- borderBottomWidth: odysseyTokens.BorderWidthMain,
83
- borderRadius: 0,
84
- boxShadow: "none",
85
-
86
- "&.MuiPaper-root.MuiAccordion-root[data-ods-variant='borderless']": {
87
- border: "none",
88
-
89
- "&::before": {
90
- display: "none",
91
- },
92
- },
93
-
94
- "&.Mui-disabled": {
95
- backgroundColor: odysseyTokens.HueNeutralWhite,
96
- color: odysseyTokens.TypographyColorDisabled,
97
- cursor: "default",
98
-
99
- "& .MuiAccordionSummary-content": {
100
- color: odysseyTokens.TypographyColorDisabled,
101
- },
102
- },
103
-
104
- "&:first-of-type": {
105
- borderRadius: 0,
106
- borderTopColor: odysseyTokens.BorderColorDisplay,
107
- borderTopStyle: "solid",
108
- borderTopWidth: odysseyTokens.BorderWidthMain,
109
- },
110
-
111
- "&:last-of-type": {
112
- borderRadius: 0,
113
- borderBottomColor: odysseyTokens.BorderColorDisplay,
114
- borderBottomStyle: "solid",
115
- borderBottomWidth: odysseyTokens.BorderWidthMain,
116
- },
117
- "&.nav-accordion": {
118
- border: "0 !important",
119
- width: "100%",
120
- },
121
- }),
122
- },
123
- },
124
- MuiAccordionSummary: {
125
- styleOverrides: {
126
- root: () => ({
127
- paddingBlock: odysseyTokens.Spacing4,
128
- paddingInline: odysseyTokens.Spacing3,
129
-
130
- "&:hover": {
131
- backgroundColor: odysseyTokens.HueNeutral50,
132
- },
133
-
134
- "&:focus-visible": {
135
- backgroundColor: odysseyTokens.HueNeutral50,
136
- outlineColor: odysseyTokens.PalettePrimaryMain,
137
- outlineWidth: 2,
138
- outlineStyle: "solid",
139
- zIndex: 1,
140
- },
141
- svg: {
142
- fontSize: "1.2em",
143
- height: "1em",
144
- position: "relative",
145
- insetBlockStart: "-0.0625em",
146
- verticalAlign: "middle",
147
- width: "1em",
148
- },
149
- }),
150
- content: () => ({
151
- marginBlock: 0,
152
-
153
- [`& > .${typographyClasses.root}`]: {
154
- marginBlockEnd: 0,
155
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
156
- },
157
- }),
158
- },
159
- },
160
- MuiAccordionDetails: {
161
- styleOverrides: {
162
- root: () => ({
163
- paddingInline: odysseyTokens.Spacing3,
164
- paddingBlock: odysseyTokens.Spacing4,
165
- "&.nav-accordion-details": {
166
- padding: 0,
167
- },
168
- }),
169
- },
170
- },
171
- MuiAlert: {
172
- defaultProps: {
173
- iconMapping: {
174
- error: <DangerDiamondFilledIcon />,
175
- info: <InformationCircleFilledIcon />,
176
- success: <CheckCircleFilledIcon />,
177
- warning: <WarningFilledIcon />,
178
- },
179
- },
180
- styleOverrides: {
181
- root: ({ ownerState }) => ({
182
- padding: odysseyTokens.Spacing4,
183
- gap: odysseyTokens.Spacing4,
184
- color: odysseyTokens.TypographyColorBody,
185
- border: "1px solid",
186
-
187
- // Severity color variation
188
- ...(ownerState.severity === "success" && {
189
- backgroundColor: odysseyTokens.HueGreen50,
190
- borderColor: odysseyTokens.HueGreen200,
191
-
192
- ...(ownerState.variant === "toast" && {
193
- backgroundColor: odysseyTokens.HueGreen50.concat(
194
- odysseyTokens.PaletteAlphaSemi,
195
- ),
196
- }),
197
- }),
198
- ...(ownerState.severity === "info" && {
199
- backgroundColor: odysseyTokens.HueBlue50,
200
- borderColor: odysseyTokens.HueBlue200,
201
-
202
- ...(ownerState.variant === "toast" && {
203
- backgroundColor: odysseyTokens.HueBlue50.concat(
204
- odysseyTokens.PaletteAlphaSemi,
205
- ),
206
- }),
207
- }),
208
- ...(ownerState.severity === "error" && {
209
- backgroundColor: odysseyTokens.HueRed50,
210
- borderColor: odysseyTokens.HueRed200,
211
-
212
- ...(ownerState.variant === "toast" && {
213
- backgroundColor: odysseyTokens.HueRed50.concat(
214
- odysseyTokens.PaletteAlphaSemi,
215
- ),
216
- }),
217
- }),
218
- ...(ownerState.severity === "warning" && {
219
- backgroundColor: odysseyTokens.HueYellow50,
220
- borderColor: odysseyTokens.HueYellow500,
221
-
222
- ...(ownerState.variant === "toast" && {
223
- backgroundColor: odysseyTokens.HueYellow50.concat(
224
- odysseyTokens.PaletteAlphaSemi,
225
- ),
226
- }),
227
- }),
228
-
229
- // Alert title variation
230
- [`& .${alertTitleClasses.root}`]: {
231
- ...(ownerState.severity === "success" && {
232
- color: odysseyTokens.PaletteSuccessHeading,
233
- }),
234
- ...(ownerState.severity === "info" && {
235
- color: odysseyTokens.PalettePrimaryHeading,
236
- }),
237
- ...(ownerState.severity === "error" && {
238
- color: odysseyTokens.PaletteDangerHeading,
239
- }),
240
- ...(ownerState.severity === "warning" && {
241
- color: odysseyTokens.PaletteWarningHeading,
242
- }),
243
- ...(ownerState.variant === "banner" && {
244
- marginBlockEnd: 0,
245
- }),
246
- ...(ownerState.variant === "callout" && {
247
- fontSize: odysseyTokens.TypographySizeHeading5,
248
- lineHeight: odysseyTokens.TypographyLineHeightHeading5,
249
- }),
250
- },
251
-
252
- // Alert variant styling
253
- ...(ownerState.variant === "banner" && {
254
- position: "relative",
255
- justifyContent: "center",
256
- alignItems: "center",
257
- borderRadius: 0,
258
- borderWidth: 0,
259
- borderBottomWidth: "1px",
260
-
261
- ...(ownerState.onClose !== undefined && {
262
- paddingInline: odysseyTokens.Spacing6,
263
- }),
264
- }),
265
- ...(ownerState.variant === "callout" && {
266
- borderRadius: odysseyTokens.BorderRadiusMain,
267
- padding: odysseyTokens.Spacing5,
268
- "&:not(:last-child)": {
269
- marginBottom: odysseyTokens.Spacing6,
270
- },
271
- }),
272
- ...(ownerState.variant === "toast" && {
273
- maxWidth: odysseyTokens.TypographyLineLengthMax,
274
- borderRadius: odysseyTokens.BorderRadiusOuter,
275
- position: "relative",
276
- paddingInlineStart: odysseyTokens.Spacing5,
277
- paddingInlineEnd: odysseyTokens.Spacing4,
278
- paddingBlock: odysseyTokens.Spacing3,
279
- alignItems: "flex-start",
280
- backdropFilter: "blur(10px)",
281
- }),
282
- }),
283
- action: ({ ownerState }) => ({
284
- ...(ownerState.variant === "banner" && {
285
- padding: 0,
286
- marginInlineEnd: 0,
287
- insetBlockStart: "50%",
288
- insetInlineEnd: odysseyTokens.Spacing2,
289
- position: "absolute",
290
- transform: "translateY(-50%)",
291
- }),
292
- ...(ownerState.variant === "toast" && {
293
- padding: 0,
294
- marginInline: 0,
295
- marginBlock: 1,
296
-
297
- [`& .${buttonClasses.root}`]: {
298
- "&:hover, &:focus": {
299
- backgroundColor: odysseyTokens.PaletteNeutralDark.concat("11"),
300
- },
301
-
302
- "&:active": {
303
- backgroundColor: odysseyTokens.PaletteNeutralDark.concat("22"),
304
- },
305
- },
306
- }),
307
- }),
308
- icon: ({ ownerState }) => ({
309
- marginInlineEnd: 0,
310
- padding: 0,
311
- height: `calc(${odysseyTokens.TypographySizeHeading6} * ${odysseyTokens.TypographyLineHeightHeading6})`,
312
- opacity: 1,
313
- ...(ownerState.severity === "info" && {
314
- color: odysseyTokens.PalettePrimaryMain,
315
- }),
316
- ...(ownerState.severity === "error" && {
317
- color: odysseyTokens.PaletteDangerMain,
318
- }),
319
- ...(ownerState.severity === "success" && {
320
- color: odysseyTokens.PaletteSuccessMain,
321
- }),
322
- ...(ownerState.severity === "warning" && {
323
- color: odysseyTokens.HueYellow400,
324
- }),
325
-
326
- ...(ownerState.variant === "toast" && {
327
- marginBlock: odysseyTokens.Spacing2,
328
- }),
329
-
330
- ...(ownerState.variant === "callout" && {
331
- marginBlock: 1.5,
332
- }),
333
-
334
- [`& .${svgIconClasses.root}`]: {
335
- alignSelf: "center",
336
- fontSize: odysseyTokens.TypographySizeHeading6,
337
- },
338
- }),
339
- message: ({ ownerState }) => ({
340
- padding: 0,
341
- overflow: "visible",
342
- ...(ownerState.variant === "banner" && {
343
- display: "flex",
344
- justifyContent: "space-between",
345
- gap: odysseyTokens.Spacing4,
346
- }),
347
- ...(ownerState.variant === "toast" && {
348
- flexGrow: 1,
349
- marginBlock: odysseyTokens.Spacing2,
350
- }),
351
- }),
352
- },
353
- },
354
- MuiAlertTitle: {
355
- styleOverrides: {
356
- root: ({ ownerState }) => ({
357
- marginBlockStart: 0,
358
- marginBlockEnd: odysseyTokens.Spacing2,
359
- lineHeight: odysseyTokens.TypographyLineHeightHeading6,
360
- fontSize: odysseyTokens.TypographySizeHeading6,
361
- fontWeight: odysseyTokens.TypographyWeightHeading,
362
- fontFamily: odysseyTokens.TypographyFamilyHeading,
363
-
364
- ...(ownerState.severity === "info" && {
365
- color: odysseyTokens.PalettePrimaryDark,
366
- }),
367
-
368
- ...(ownerState.severity === "error" && {
369
- color: odysseyTokens.PaletteDangerDarker,
370
- }),
371
-
372
- ...(ownerState.severity === "success" && {
373
- color: odysseyTokens.PaletteSuccessDarker,
374
- }),
375
-
376
- ...(ownerState.severity === "warning" && {
377
- color: odysseyTokens.PaletteWarningDarker,
378
- }),
379
-
380
- [`&:last-child`]: {
381
- marginBlockEnd: 0,
382
- },
383
- }),
384
- },
385
- },
386
- MuiAutocomplete: {
387
- defaultProps: {
388
- autoHighlight: true,
389
- autoSelect: false,
390
- blurOnSelect: false,
391
- clearIcon: <CloseIcon />,
392
- clearOnEscape: true,
393
- disableClearable: false,
394
- disabledItemsFocusable: false,
395
- disableListWrap: false,
396
- disablePortal: false,
397
- filterSelectedOptions: false,
398
- fullWidth: false,
399
- handleHomeEndKeys: true,
400
- includeInputInList: true,
401
- limitTags: -1,
402
- openOnFocus: false,
403
- popupIcon: <ChevronDownIcon />,
404
- selectOnFocus: true,
405
- slotProps: {
406
- paper: {
407
- elevation: 1,
408
- },
409
- },
410
- },
411
- styleOverrides: {
412
- clearIndicator: {
413
- marginRight: "unset",
414
- padding: odysseyTokens.Spacing1,
415
- },
416
- endAdornment: ({ ownerState }) => ({
417
- display: "flex",
418
- gap: odysseyTokens.Spacing1,
419
- top: "unset",
420
- right: "unset",
421
- insetBlockStart: odysseyTokens.Spacing2,
422
- insetInlineEnd: odysseyTokens.Spacing2,
423
- maxHeight: "unset",
424
- alignItems: "center",
425
- whiteSpace: "nowrap",
426
- color: odysseyTokens.TypographyColorSubordinate,
427
- transform: "none",
428
-
429
- ...(ownerState.disabled === true && {
430
- display: "none",
431
- }),
432
-
433
- ...(ownerState.readOnly === true && {
434
- display: "none",
435
- }),
436
- }),
437
- listbox: ({ theme }) => ({
438
- borderWidth: odysseyTokens.BorderWidthMain,
439
- borderStyle: odysseyTokens.BorderStyleMain,
440
- borderColor: odysseyTokens.HueNeutral200,
441
- paddingBlock: odysseyTokens.Spacing2,
442
- paddingInline: odysseyTokens.Spacing2,
443
- borderRadius: odysseyTokens.BorderRadiusMain,
444
-
445
- [`& .${autocompleteClasses.option}`]: {
446
- minHeight: "unset",
447
- paddingBlock: odysseyTokens.Spacing3,
448
- paddingInline: odysseyTokens.Spacing4,
449
- borderRadius: odysseyTokens.BorderRadiusTight,
450
-
451
- [`&:hover`]: {
452
- backgroundColor: odysseyTokens.HueNeutral100,
453
- },
454
-
455
- [`&.${autocompleteClasses.focused}`]: {
456
- backgroundColor: odysseyTokens.HueNeutral100,
457
- },
458
-
459
- [`&.${autocompleteClasses.focusVisible}`]: {
460
- backgroundColor: "transparent",
461
- boxShadow: theme.mixins.insetFocusRing,
462
-
463
- [`&:hover`]: {
464
- backgroundColor: odysseyTokens.HueNeutral100,
465
- },
466
- },
467
-
468
- [`&[aria-selected="true"]`]: {
469
- backgroundColor: "transparent",
470
- color: odysseyTokens.TypographyColorAction,
471
-
472
- [`&:hover`]: {
473
- backgroundColor: odysseyTokens.PalettePrimaryLighter,
474
- },
475
-
476
- [`&.${autocompleteClasses.focused}`]: {
477
- backgroundColor: odysseyTokens.PalettePrimaryLighter,
478
- },
479
- },
480
- },
481
- "& > ul": {
482
- position: "relative",
483
- paddingInlineStart: 0,
484
- marginBlockStart: 0,
485
- marginBlockEnd: 0,
486
- },
487
- }),
488
- loading: {
489
- paddingBlock: odysseyTokens.Spacing3,
490
- paddingInline: odysseyTokens.Spacing4,
491
- borderWidth: odysseyTokens.BorderWidthMain,
492
- borderStyle: odysseyTokens.BorderStyleMain,
493
- borderColor: odysseyTokens.HueNeutral200,
494
- borderRadius: odysseyTokens.BorderRadiusMain,
495
- },
496
- popupIndicator: {
497
- padding: odysseyTokens.Spacing1,
498
- marginRight: "unset",
499
- },
500
- popper: ({ ownerState }) => ({
501
- background: "transparent",
502
- paddingBlockStart: odysseyTokens.Spacing1,
503
- ...(ownerState.ListboxComponent !== undefined && {
504
- maxHeight: "40vh",
505
- }),
506
- }),
507
- paper: ({ ownerState }) => ({
508
- /**
509
- * ListboxComponent is used when `isVirtualized` prop is true.
510
- * This style is needed to render the virtualized window. It renders out a parent div
511
- * that needs a height to be set, otherwise the height is 0 and nothing appears.
512
- */
513
- ...(ownerState.ListboxComponent !== undefined && {
514
- height: "100%",
515
- }),
516
- }),
517
- inputRoot: ({ ownerState }) => ({
518
- ...(ownerState.readOnly === true && {
519
- backgroundColor: odysseyTokens.HueNeutral50,
520
-
521
- [`&:not(:hover)`]: {
522
- borderColor: "transparent",
523
- },
524
- }),
525
-
526
- ".MuiChip-root": {
527
- // using 55ch - (48px(padding + clear button) + 4px) for spacing between chip and clear button to account for the 24px of padding on the right side of the container and the width of the clear button.
528
- // Ensures chip does not enlarge the container or overlap the clear button
529
- maxWidth: `calc(${odysseyTokens.TypographyLineLengthMax} - (${odysseyTokens.Spacing6} + ${odysseyTokens.Spacing6} + ${odysseyTokens.Spacing1}))`,
530
- },
531
- }),
532
- },
533
- },
534
- MuiBackdrop: {
535
- styleOverrides: {
536
- root: ({ ownerState }) => ({
537
- backgroundColor: "rgba(29,29,33,0.75)",
538
-
539
- ...(ownerState.invisible === true && {
540
- backgroundColor: "transparent",
541
- }),
542
- }),
543
- },
544
- },
545
- MuiBreadcrumbs: {
546
- styleOverrides: {
547
- li: {
548
- fontSize: odysseyTokens.TypographySizeSubordinate,
549
-
550
- "& svg": {
551
- width: odysseyTokens.Spacing3,
552
- },
553
-
554
- "& > p": {
555
- paddingInline: odysseyTokens.Spacing1,
556
- },
557
-
558
- "& > a, & > button": {
559
- borderRadius: odysseyTokens.BorderRadiusTight,
560
- color: odysseyTokens.TypographyColorSubordinate,
561
- display: "flex",
562
- gap: odysseyTokens.Spacing1,
563
- paddingInline: odysseyTokens.Spacing1,
564
- paddingBlock: 2,
565
- transitionProperty: "color, background-color",
566
- transitionDuration: "100ms",
567
- transitionTimingFunction: "linear",
568
-
569
- "&:hover": {
570
- backgroundColor: odysseyTokens.HueNeutral100,
571
- color: odysseyTokens.TypographyColorBody,
572
- },
573
-
574
- "&:focus-visible": {
575
- outlineWidth: 2,
576
- outlineStyle: "solid",
577
- outlineColor: odysseyTokens.PalettePrimaryMain,
578
- outlineOffset: -2,
579
- },
580
- },
581
- },
582
- separator: {
583
- color: odysseyTokens.BorderColorDisplay,
584
- fontSize: odysseyTokens.TypographySizeSubordinate,
585
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
586
- marginInlineStart: 6,
587
- marginInlineEnd: 4,
588
- },
589
- },
590
- },
591
- MuiButton: {
592
- defaultProps: {
593
- variant: "primary",
594
- disableElevation: true,
595
- },
596
- styleOverrides: {
597
- root: ({ ownerState }) => {
598
- return {
599
- minWidth: "unset",
600
- paddingBlock: odysseyTokens.Spacing3,
601
- paddingInline: odysseyTokens.Spacing4,
602
- display: "inline-flex",
603
- height: odysseyTokens.Spacing7,
604
- position: "relative",
605
- marginBlock: "0",
606
- marginInline: "0",
607
- transitionProperty:
608
- "color, background-color, border-color, box-shadow",
609
- transitionDuration: "100ms",
610
- transitionTimingFunction: "linear",
611
- borderWidth: odysseyTokens.BorderWidthMain,
612
- borderStyle: odysseyTokens.BorderStyleMain,
613
- borderRadius: odysseyTokens.BorderRadiusMain,
614
- borderColor: "transparent",
615
- fontSize: odysseyTokens.TypographySizeBody,
616
- fontWeight: odysseyTokens.TypographyWeightHeading,
617
- fontFamily: odysseyTokens.TypographyFamilyButton,
618
- lineHeight: odysseyTokens.TypographyLineHeightUi,
619
- whiteSpace: "nowrap",
620
-
621
- [`.${buttonClasses.root} + &`]: {
622
- marginInlineStart: odysseyTokens.Spacing2,
623
- },
624
-
625
- "&:focus-visible": {
626
- boxShadow: `0 0 0 2px ${odysseyTokens.HueNeutralWhite}, 0 0 0 4px ${odysseyTokens.PalettePrimaryMain}`,
627
- outline: "2px solid transparent",
628
- outlineOffset: "1px",
629
- },
630
-
631
- "&:disabled": {
632
- pointerEvents: "none",
633
- },
634
-
635
- [`.${buttonClasses.startIcon}, .${buttonClasses.endIcon}`]: {
636
- "& > *:nth-of-type(1)": {
637
- fontSize: `${odysseyTokens.TypographyLineHeightUi}em`,
638
- },
639
- },
640
-
641
- ...(ownerState.size === "small" && {
642
- height: odysseyTokens.Spacing6,
643
- paddingBlock: odysseyTokens.Spacing2,
644
- paddingInline: odysseyTokens.Spacing3,
645
- fontSize: odysseyTokens.TypographySizeBody,
646
- }),
647
-
648
- ...(ownerState.size === "large" && {
649
- height: odysseyTokens.Spacing8,
650
- paddingBlock: odysseyTokens.Spacing4,
651
- paddingInline: odysseyTokens.Spacing4,
652
- }),
653
-
654
- ...(ownerState.fullWidth === true && {
655
- width: "100%",
656
- marginBlock: "0",
657
- marginInline: "0",
658
-
659
- "&:not(:last-child)": {
660
- marginBlockEnd: odysseyTokens.Spacing4,
661
- },
662
- }),
663
-
664
- ...(ownerState.variant === "primary" && {
665
- color: odysseyTokens.HueNeutralWhite,
666
- backgroundColor: odysseyTokens.PalettePrimaryMain,
667
-
668
- "&:hover": {
669
- backgroundColor: odysseyTokens.PalettePrimaryDark,
670
- },
671
-
672
- "&:active, &[aria-expanded='true']": {
673
- backgroundColor: odysseyTokens.PalettePrimaryDarker,
674
- },
675
-
676
- "&:disabled": {
677
- color: odysseyTokens.PalettePrimaryLight,
678
- backgroundColor: odysseyTokens.HueBlue100,
679
- },
680
- }),
681
-
682
- ...(ownerState.variant === "secondary" && {
683
- backgroundColor: "transparent",
684
- borderColor: odysseyTokens.HueNeutral300,
685
- color: odysseyTokens.TypographyColorBody,
686
-
687
- "&:hover": {
688
- backgroundColor: odysseyTokens.HueNeutral200,
689
- borderColor: odysseyTokens.HueNeutral400,
690
- },
691
-
692
- "&:active, &[aria-expanded='true']": {
693
- backgroundColor: "transparent",
694
- borderColor: odysseyTokens.BorderColorPrimaryControl,
695
- color: odysseyTokens.TypographyColorAction,
696
- },
697
-
698
- "&:disabled": {
699
- backgroundColor: odysseyTokens.HueNeutral200,
700
- borderColor: "transparent",
701
- color: odysseyTokens.TypographyColorDisabled,
702
- },
703
- }),
704
-
705
- ...(ownerState.variant === "danger" && {
706
- backgroundColor: odysseyTokens.PaletteDangerMain,
707
- color: odysseyTokens.HueNeutralWhite,
708
-
709
- "&:hover": {
710
- backgroundColor: odysseyTokens.PaletteDangerDark,
711
- },
712
-
713
- "&:focus-visible": {
714
- boxShadow: `0 0 0 2px ${odysseyTokens.HueNeutralWhite}, 0 0 0 4px ${odysseyTokens.PaletteDangerMain}`,
715
- },
716
-
717
- "&:active, &[aria-expanded='true']": {
718
- backgroundColor: odysseyTokens.PaletteDangerDarker,
719
- },
720
-
721
- "&:disabled": {
722
- color: odysseyTokens.PaletteDangerLight,
723
- backgroundColor: odysseyTokens.HueRed100,
724
- },
725
- }),
726
-
727
- ...(ownerState.variant === "dangerSecondary" && {
728
- backgroundColor: "transparent",
729
- borderColor: odysseyTokens.HueNeutral300,
730
- color: odysseyTokens.PaletteDangerMain,
731
-
732
- "&:hover": {
733
- backgroundColor: odysseyTokens.HueNeutral200,
734
- borderColor: odysseyTokens.HueNeutral400,
735
- color: odysseyTokens.PaletteDangerMain,
736
- },
737
-
738
- "&:active, &[aria-expanded='true']": {
739
- backgroundColor: "transparent",
740
- borderColor: odysseyTokens.PaletteDangerMain,
741
- color: odysseyTokens.PaletteDangerMain,
742
- },
743
-
744
- "&:disabled": {
745
- backgroundColor: odysseyTokens.PaletteDangerHighlight,
746
- borderColor: "transparent",
747
- color: odysseyTokens.PaletteDangerLight,
748
- },
749
- }),
750
-
751
- ...(ownerState.variant === "floating" && {
752
- backgroundColor: "transparent",
753
- color: odysseyTokens.TypographyColorBody,
754
-
755
- "&:hover": {
756
- backgroundColor: odysseyTokens.HueNeutral200,
757
- },
758
-
759
- "&:active, &[aria-expanded='true']": {
760
- backgroundColor: "transparent",
761
- color: odysseyTokens.HueBlue600,
762
- borderColor: odysseyTokens.HueBlue600,
763
- },
764
-
765
- "&:disabled": {
766
- backgroundColor: "transparent",
767
- color: odysseyTokens.TypographyColorDisabled,
768
- },
769
- }),
770
-
771
- ...(ownerState.variant === "floatingAction" && {
772
- backgroundColor: "transparent",
773
- color: odysseyTokens.TypographyColorAction,
774
-
775
- "&:hover": {
776
- backgroundColor: odysseyTokens.HueNeutral200,
777
- },
778
-
779
- "&:active, &[aria-expanded='true']": {
780
- backgroundColor: "transparent",
781
- borderColor: odysseyTokens.HueBlue600,
782
- },
783
-
784
- "&:disabled": {
785
- backgroundColor: "transparent",
786
- color: odysseyTokens.TypographyColorDisabled,
787
- },
788
- }),
789
-
790
- ...(ownerState.children === "" && {
791
- minWidth: "auto",
792
- padding: odysseyTokens.Spacing3,
793
-
794
- [`.${buttonClasses.endIcon}, .${buttonClasses.startIcon}`]: {
795
- margin: "0",
796
- },
797
-
798
- ...(ownerState.size === "large" && {
799
- padding: odysseyTokens.Spacing4,
800
- }),
801
-
802
- ...(ownerState.size === "small" && {
803
- padding: odysseyTokens.Spacing2,
804
- }),
805
-
806
- ...(ownerState.size === "large" && {
807
- padding: odysseyTokens.Spacing4,
808
- }),
809
- }),
810
- };
811
- },
812
-
813
- endIcon: ({ ownerState }) => {
814
- const hasNoChildren =
815
- ownerState.children === "" ||
816
- ownerState.children === undefined ||
817
- ownerState.children === null;
818
-
819
- return {
820
- display: "inline-flex",
821
- margin: 0,
822
- marginInlineStart: odysseyTokens.Spacing2,
823
-
824
- ...(hasNoChildren && {
825
- marginInlineStart: 0,
826
- }),
827
- };
828
- },
829
-
830
- startIcon: ({ ownerState }) => {
831
- const hasNoChildren =
832
- ownerState.children === "" ||
833
- ownerState.children === undefined ||
834
- ownerState.children === null;
835
-
836
- return {
837
- display: "inline-flex",
838
- margin: 0,
839
- marginInlineEnd: odysseyTokens.Spacing2,
840
-
841
- ...(hasNoChildren && {
842
- marginInlineEnd: 0,
843
- }),
844
- };
845
- },
846
- },
847
- },
848
- MuiButtonBase: {
849
- defaultProps: {
850
- disableRipple: true,
851
- },
852
- },
853
- MuiCard: {
854
- styleOverrides: {
855
- root: () => ({
856
- backgroundColor: odysseyTokens.HueNeutralWhite,
857
- borderRadius: odysseyTokens.BorderRadiusOuter,
858
- boxShadow: odysseyTokens.DepthMedium,
859
- padding: odysseyTokens.Spacing5,
860
- marginBlockEnd: odysseyTokens.Spacing5,
861
- position: "relative",
862
- transition: `all ${odysseyTokens.TransitionDurationMain} ${odysseyTokens.TransitionTimingMain}`,
863
-
864
- "&.ods-card-compact": {
865
- marginBlockEnd: odysseyTokens.Spacing2,
866
- padding: odysseyTokens.Spacing4,
867
- },
868
-
869
- "& img": {
870
- maxHeight: "100%",
871
- height: "auto",
872
- alignSelf: "flex-start",
873
- },
874
-
875
- "&.hasAccessory": {
876
- paddingLeft: odysseyTokens.Spacing4,
877
- },
878
-
879
- "&.isClickable:hover": {
880
- boxShadow: odysseyTokens.DepthHigh,
881
- },
882
-
883
- [`& .${typographyClasses.h5}`]: {
884
- lineHeight: odysseyTokens.TypographyLineHeightHeading5,
885
- marginBottom: odysseyTokens.Spacing3,
886
- },
887
-
888
- [`& .${typographyClasses.subtitle2}`]: {
889
- marginBottom: odysseyTokens.Spacing1,
890
- textTransform: "uppercase",
891
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
892
- fontSize: odysseyTokens.TypographySizeOverline,
893
- lineHeight: odysseyTokens.TypographyLineHeightOverline,
894
- color: odysseyTokens.TypographyColorSubordinate,
895
- letterSpacing: 1.3,
896
- },
897
-
898
- [`& .${typographyClasses.body1}`]: {
899
- fontSize: odysseyTokens.TypographySizeSubordinate,
900
- lineHeight: odysseyTokens.TypographyLineHeightBody,
901
- },
902
- }),
903
- },
904
- },
905
- MuiCardActionArea: {
906
- styleOverrides: {
907
- root: () => ({
908
- margin: `-${odysseyTokens.Spacing5}`,
909
- padding: odysseyTokens.Spacing5,
910
- width: `calc(100% + (${odysseyTokens.Spacing5} * 2))`,
911
-
912
- "&:hover": {
913
- "& .MuiCardActionArea-focusHighlight": {
914
- display: "none",
915
- },
916
- },
917
- }),
918
- },
919
- },
920
- MuiCardActions: {
921
- styleOverrides: {
922
- root: () => ({
923
- marginBlockStart: odysseyTokens.Spacing5,
924
- padding: 0,
925
- }),
926
- },
927
- },
928
- MuiCheckbox: {
929
- defaultProps: {
930
- size: "small",
931
- icon: <></>,
932
- checkedIcon: <CheckIcon />,
933
- indeterminateIcon: <SubtractIcon />,
934
- },
935
- styleOverrides: {
936
- root: ({ ownerState, theme }) => {
937
- const isReadOnly = ownerState?.inputProps?.readOnly;
938
-
939
- return {
940
- width: `${odysseyTokens.TypographyLineHeightUi}em`,
941
- minWidth: `${odysseyTokens.TypographyLineHeightUi}em`,
942
- height: `${odysseyTokens.TypographyLineHeightUi}em`,
943
- borderRadius: odysseyTokens.BorderRadiusTight,
944
- border: `1px solid ${odysseyTokens.HueNeutral500}`,
945
- padding: 0,
946
- boxShadow: `0 0 0 0 transparent`,
947
- transition: theme.transitions.create(
948
- ["border-color", "background-color", "box-shadow"],
949
- {
950
- duration: odysseyTokens.TransitionDurationMain,
951
- },
952
- ),
953
-
954
- [`.${svgIconClasses.root}`]: {
955
- color: odysseyTokens.HueNeutralWhite,
956
- transition: theme.transitions.create(["color"], {
957
- duration: odysseyTokens.TransitionDurationMain,
958
- }),
959
- },
960
-
961
- "&.Mui-checked, &.MuiCheckbox-indeterminate": {
962
- backgroundColor: odysseyTokens.PalettePrimaryMain,
963
- borderColor: odysseyTokens.PalettePrimaryMain,
964
-
965
- [`.${formControlLabelClasses.root}:hover > &`]: {
966
- backgroundColor: odysseyTokens.PalettePrimaryDark,
967
- borderColor: odysseyTokens.PalettePrimaryDark,
968
- },
969
- },
970
-
971
- [`.${formControlLabelClasses.root}:hover > &`]: {
972
- backgroundColor: "transparent",
973
- borderColor: odysseyTokens.HueNeutral900,
974
- },
975
-
976
- ".Mui-error:not(.Mui-valid):hover > &": {
977
- borderColor: odysseyTokens.BorderColorDangerDark,
978
-
979
- "&.Mui-checked": {
980
- backgroundColor: odysseyTokens.PaletteDangerDark,
981
- borderColor: odysseyTokens.BorderColorDangerDark,
982
- },
983
- },
984
- ".Mui-error:not(.Mui-valid) > &": {
985
- borderColor: odysseyTokens.BorderColorDangerControl,
986
-
987
- "&.Mui-checked": {
988
- backgroundColor: odysseyTokens.PaletteDangerMain,
989
- borderColor: odysseyTokens.BorderColorDangerControl,
990
- },
991
-
992
- "&.Mui-focusVisible": {
993
- boxShadow: `0 0 0 2px ${odysseyTokens.HueNeutralWhite}, 0 0 0 4px ${odysseyTokens.PaletteDangerMain}`,
994
- },
995
- },
996
- "&.Mui-focusVisible": {
997
- borderColor: odysseyTokens.HueNeutral900,
998
- boxShadow: `0 0 0 2px ${odysseyTokens.HueNeutralWhite}, 0 0 0 4px ${odysseyTokens.PalettePrimaryMain}`,
999
- outline: "2px solid transparent",
1000
- outlineOffset: "1px",
1001
- },
1002
- "&.Mui-disabled": {
1003
- backgroundColor: odysseyTokens.HueNeutral50,
1004
- borderColor: odysseyTokens.HueNeutral300,
1005
-
1006
- ".Mui-error:not(.Mui-valid) > &": {
1007
- backgroundColor: odysseyTokens.HueNeutral50,
1008
- borderColor: odysseyTokens.HueNeutral300,
1009
- },
1010
-
1011
- [`.${svgIconClasses.root}`]: {
1012
- color: odysseyTokens.HueNeutral300,
1013
- },
1014
- },
1015
-
1016
- ...(isReadOnly && {
1017
- // Override default styles
1018
- backgroundColor: odysseyTokens.HueNeutral100,
1019
- border: `1px solid ${odysseyTokens.HueNeutral300}`,
1020
- cursor: "default",
1021
-
1022
- // Override checked/indeterminate styles
1023
- "&.Mui-checked, &.MuiCheckbox-indeterminate": {
1024
- backgroundColor: odysseyTokens.HueNeutral100,
1025
- borderColor: odysseyTokens.HueNeutral300,
1026
-
1027
- [`.${formControlLabelClasses.root}:hover > &`]: {
1028
- backgroundColor: odysseyTokens.HueNeutral100,
1029
- borderColor: odysseyTokens.HueNeutral300,
1030
- },
1031
- },
1032
- [`.${formControlLabelClasses.root}:hover > &`]: {
1033
- backgroundColor: odysseyTokens.HueNeutral100,
1034
- borderColor: odysseyTokens.HueNeutral300,
1035
- },
1036
- // ReadOnly styles for SVG check icon
1037
- [`.${svgIconClasses.root}`]: {
1038
- color: odysseyTokens.HueNeutral700,
1039
- },
1040
- }),
1041
- };
1042
- },
1043
- },
1044
- },
1045
-
1046
- MuiChip: {
1047
- defaultProps: {
1048
- deleteIcon: <CloseCircleFilledIcon />,
1049
- },
1050
- styleOverrides: {
1051
- root: ({ ownerState }) => {
1052
- return {
1053
- height: "auto",
1054
- paddingBlock: `calc(${odysseyTokens.Spacing2} - ${odysseyTokens.BorderWidthMain})`,
1055
- paddingInline: odysseyTokens.Spacing3,
1056
- fontSize: odysseyTokens.TypographySizeBody,
1057
- lineHeight: odysseyTokens.TypographyLineHeightUi,
1058
- borderRadius: odysseyTokens.BorderRadiusRound,
1059
- backgroundColor: odysseyTokens.HueNeutral100,
1060
- borderWidth: odysseyTokens.BorderWidthMain,
1061
- borderColor: odysseyTokens.HueNeutral200,
1062
- borderStyle: odysseyTokens.BorderStyleMain,
1063
- color: odysseyTokens.HueNeutral700,
1064
-
1065
- ...(ownerState.onDelete && {
1066
- paddingInlineEnd: odysseyTokens.Spacing2,
1067
- }),
1068
-
1069
- [`&.${chipClasses.disabled}`]: {
1070
- opacity: 1,
1071
- pointerEvents: "none",
1072
- borderColor: odysseyTokens.BorderColorDisabled,
1073
- color: odysseyTokens.TypographyColorDisabled,
1074
-
1075
- [`& .${chipClasses.deleteIcon}`]: {
1076
- color: odysseyTokens.HueNeutral300,
1077
- },
1078
- [`& .${chipClasses.icon}`]: {
1079
- color: odysseyTokens.HueNeutral300,
1080
- },
1081
- },
1082
-
1083
- ...(ownerState.clickable && {
1084
- "&:hover": {
1085
- backgroundColor: odysseyTokens.HueNeutral200,
1086
- },
1087
- [`&.${chipClasses.focusVisible}`]: {
1088
- backgroundColor: odysseyTokens.HueNeutral200,
1089
- outlineColor: odysseyTokens.FocusOutlineColorPrimary,
1090
- outlineOffset: odysseyTokens.FocusOutlineOffsetTight,
1091
- outlineStyle: odysseyTokens.FocusOutlineStyle,
1092
- outlineWidth: odysseyTokens.FocusOutlineWidthMain,
1093
- },
1094
- "&:active": {
1095
- boxShadow: "none",
1096
- backgroundColor: odysseyTokens.HueNeutral300,
1097
- },
1098
- }),
1099
-
1100
- [`& .${chipClasses.icon}`]: {
1101
- margin: 0,
1102
- marginInlineEnd: odysseyTokens.Spacing1,
1103
- },
1104
-
1105
- ...(ownerState.variant === "lamp" && {
1106
- paddingBlock: 0,
1107
- paddingInline: 0,
1108
- borderRadius: 0,
1109
- border: 0,
1110
- backgroundColor: "transparent",
1111
- color: odysseyTokens.TypographyColorBody,
1112
-
1113
- "&::before": {
1114
- content: "''",
1115
- width: odysseyTokens.Spacing2,
1116
- height: odysseyTokens.Spacing2,
1117
- marginInlineEnd: odysseyTokens.Spacing2,
1118
- borderRadius: "100%",
1119
- backgroundColor: odysseyTokens.HueNeutral600,
1120
- },
1121
-
1122
- [`&.${chipClasses.colorError}`]: {
1123
- "&::before": {
1124
- border: 0,
1125
- backgroundColor: odysseyTokens.PaletteDangerMain,
1126
- },
1127
- },
1128
-
1129
- [`&.${chipClasses.colorSuccess}`]: {
1130
- "&::before": {
1131
- border: 0,
1132
- backgroundColor: odysseyTokens.PaletteSuccessMain,
1133
- },
1134
- },
1135
-
1136
- [`&.${chipClasses.colorWarning}`]: {
1137
- "&::before": {
1138
- border: 0,
1139
- backgroundColor: odysseyTokens.HueYellow200,
1140
- },
1141
- },
1142
- }),
1143
-
1144
- ...(ownerState.variant === "pill" && {
1145
- paddingBlock: odysseyTokens.Spacing1,
1146
- paddingInline: odysseyTokens.Spacing2,
1147
- borderRadius: odysseyTokens.BorderRadiusMain,
1148
- border: 0,
1149
- fontWeight: odysseyTokens.TypographyWeightHeadingBold,
1150
- lineHeight: odysseyTokens.TypographyLineHeightOverline,
1151
- fontSize: "0.71428571rem",
1152
- textTransform: "uppercase",
1153
-
1154
- ...(contrastMode === "highContrast" && {
1155
- backgroundColor: odysseyTokens.HueNeutral200,
1156
- color: odysseyTokens.HueNeutral700,
1157
- }),
1158
- ...(contrastMode === "lowContrast" && {
1159
- backgroundColor: odysseyTokens.HueNeutral50,
1160
- color: odysseyTokens.TypographyColorSubordinate,
1161
- }),
1162
-
1163
- [`&.${chipClasses.colorError}`]: {
1164
- ...(contrastMode === "highContrast" && {
1165
- backgroundColor: odysseyTokens.HueRed100,
1166
- color: odysseyTokens.HueRed700,
1167
- }),
1168
- ...(contrastMode === "lowContrast" && {
1169
- backgroundColor: odysseyTokens.PaletteDangerLighter,
1170
- color: odysseyTokens.TypographyColorDanger,
1171
- }),
1172
- },
1173
-
1174
- [`&.${chipClasses.colorInfo}`]: {
1175
- ...(contrastMode === "highContrast" && {
1176
- backgroundColor: odysseyTokens.HueBlue100,
1177
- color: odysseyTokens.HueBlue700,
1178
- }),
1179
- ...(contrastMode === "lowContrast" && {
1180
- backgroundColor: odysseyTokens.PalettePrimaryLighter,
1181
- color: odysseyTokens.PalettePrimaryText,
1182
- }),
1183
- },
1184
-
1185
- [`&.${chipClasses.colorSuccess}`]: {
1186
- ...(contrastMode === "highContrast" && {
1187
- backgroundColor: odysseyTokens.HueGreen200,
1188
- color: odysseyTokens.HueGreen700,
1189
- }),
1190
- ...(contrastMode === "lowContrast" && {
1191
- backgroundColor: odysseyTokens.PaletteSuccessLighter,
1192
- color: odysseyTokens.TypographyColorSuccess,
1193
- }),
1194
- },
1195
-
1196
- [`&.${chipClasses.colorWarning}`]: {
1197
- ...(contrastMode === "highContrast" && {
1198
- backgroundColor: odysseyTokens.HueYellow100,
1199
- color: odysseyTokens.HueYellow700,
1200
- }),
1201
- ...(contrastMode === "lowContrast" && {
1202
- backgroundColor: odysseyTokens.PaletteWarningLighter,
1203
- color: odysseyTokens.TypographyColorWarning,
1204
- }),
1205
- },
1206
- }),
1207
-
1208
- [`.${inputBaseClasses.root}.${inputBaseClasses.disabled} &`]: {
1209
- backgroundColor: odysseyTokens.HueNeutral200,
1210
- },
1211
- };
1212
- },
1213
-
1214
- label: {
1215
- padding: 0,
1216
-
1217
- [`.${inputBaseClasses.root}.${inputBaseClasses.disabled} &`]: {
1218
- color: odysseyTokens.TypographyColorDisabled,
1219
- WebkitTextFillColor: odysseyTokens.TypographyColorDisabled,
1220
- } as CSSProperties,
1221
- },
1222
-
1223
- deleteIcon: {
1224
- WebkitTapHighlightColor: "transparent",
1225
- color: odysseyTokens.HueNeutral500,
1226
- fontSize: "1em",
1227
- cursor: "pointer",
1228
- margin: "0",
1229
- marginInlineStart: odysseyTokens.Spacing2,
1230
-
1231
- "&:hover": {
1232
- color: odysseyTokens.HueNeutral600,
1233
- },
1234
-
1235
- [`.${inputBaseClasses.root}.${inputBaseClasses.disabled} &`]: {
1236
- display: "none",
1237
- },
1238
- },
1239
- },
1240
- },
1241
- MuiCircularProgress: {
1242
- defaultProps: {
1243
- size: odysseyTokens.Spacing5,
1244
- thickness: 10,
1245
- color: "primary",
1246
- disableShrink: false,
1247
- variant: "indeterminate",
1248
- },
1249
- styleOverrides: {
1250
- root: ({ ownerState }) => ({
1251
- ...(ownerState.color !== "inherit" && {
1252
- color: odysseyTokens.PalettePrimaryMain,
1253
- }),
1254
- }),
1255
- circle: ({ ownerState }) => ({
1256
- ...(ownerState.variant === "indeterminate" && {
1257
- strokeDasharray: "160%, 360%",
1258
- }),
1259
- }),
1260
- },
1261
- },
1262
- MuiCssBaseline: {
1263
- styleOverrides: (themeParam) => `
1264
- html {
1265
- font-size: calc((${themeParam.typography.fontSize} / 16) * 100%);
1266
- }
1267
-
1268
- :not(code) &, :not(pre) & {
1269
- :lang(el) {
1270
- font-family: 'Noto Sans', sans-serif;
1271
- }
1272
-
1273
- :lang(ja) {
1274
- font-family: 'Noto Sans JP', sans-serif;
1275
- }
1276
-
1277
- :lang(ko) {
1278
- font-family: 'Noto Sans KR', sans-serif;
1279
- }
1280
-
1281
- :lang(th) {
1282
- font-family: 'Noto Sans Thai', sans-serif;
1283
- }
1284
-
1285
- :lang(zh-CN) {
1286
- font-family: 'Noto Sans SC', sans-serif;
1287
- }
1288
-
1289
- :lang(zh-TW) {
1290
- font-family: 'Noto Sans TC', sans-serif;
1291
- }
1292
- }
1293
- `,
1294
- },
1295
- MuiDrawer: {
1296
- styleOverrides: {
1297
- root: {},
1298
- paper: ({ ownerState }) => ({
1299
- width:
1300
- ownerState.variant === "temporary"
1301
- ? drawerSizes.temporary
1302
- : drawerSizes.persistent, //Temporary = overlay drawer, Persistent = inline drawer
1303
- display: "flex",
1304
- overflowY: "auto",
1305
- flexDirection: "column",
1306
- flexWrap: "nowrap",
1307
- justifyContent: "space-between",
1308
- alignItems: "stretch",
1309
- alignContent: "flex-end",
1310
- color: odysseyTokens.HueNeutral700,
1311
- ...(ownerState.variant === "persistent" && {
1312
- position: "static",
1313
- borderRadius: odysseyTokens.BorderRadiusOuter,
1314
- border: "0",
1315
- }),
1316
- ...(ownerState.variant === "temporary" && {
1317
- boxShadow: odysseyTokens.ShadowScale1,
1318
- }),
1319
- }),
1320
- },
1321
- },
1322
- MuiScopedCssBaseline: {
1323
- styleOverrides: {
1324
- root: {
1325
- background: "transparent",
1326
-
1327
- abbr: {
1328
- borderBottomWidth: odysseyTokens.BorderWidthMain,
1329
- borderBottomStyle: "dashed", // Token?
1330
- borderBottomColor: odysseyTokens.HueNeutral700,
1331
- textDecoration: "none",
1332
- },
1333
-
1334
- address: {
1335
- maxWidth: odysseyTokens.TypographyLineLengthMax,
1336
- marginBlockStart: 0,
1337
- marginBlockEnd: odysseyTokens.Spacing4,
1338
- marginInline: 0,
1339
- fontStyle: "normal",
1340
-
1341
- "&:last-child": {
1342
- marginBlockEnd: 0,
1343
- },
1344
- },
1345
-
1346
- blockquote: {
1347
- maxWidth: odysseyTokens.TypographyLineLengthMax,
1348
- marginBlockStart: 0,
1349
- marginBlockEnd: odysseyTokens.Spacing4,
1350
- marginInline: 0,
1351
- paddingBlock: 0,
1352
- paddingInlineStart: odysseyTokens.Spacing4,
1353
- paddingInlineEnd: 0,
1354
- borderInlineStartWidth: "3px", // Token?
1355
- borderInlineStartStyle: odysseyTokens.BorderStyleMain,
1356
- borderInlineStartColor: odysseyTokens.HueNeutral200,
1357
-
1358
- "&:last-child": {
1359
- marginBlockEnd: 0,
1360
- },
1361
- },
1362
-
1363
- cite: {
1364
- fontStyle: "normal",
1365
- },
1366
-
1367
- code: {
1368
- fontFamily: odysseyTokens.TypographyFamilyMono,
1369
- display: "inline-block",
1370
- minWidth: `calc(${odysseyTokens.TypographySizeSubordinate} * ${odysseyTokens.TypographyLineHeightHeading5})`,
1371
- borderStyle: odysseyTokens.BorderStyleMain,
1372
- borderWidth: odysseyTokens.BorderWidthMain,
1373
- borderRadius: odysseyTokens.BorderRadiusTight,
1374
- borderColor: odysseyTokens.BorderColorDisplay,
1375
- backgroundColor: odysseyTokens.HueNeutral50,
1376
- padding: `calc(${odysseyTokens.Spacing1} / 2) ${odysseyTokens.Spacing1}`,
1377
- fontSize: odysseyTokens.TypographySizeSubordinate,
1378
- lineHeight: odysseyTokens.TypographyLineHeightHeading5,
1379
- },
1380
-
1381
- del: {
1382
- display: "inline-block",
1383
- backgroundColor: odysseyTokens.PaletteDangerHighlight,
1384
-
1385
- "&::before, &::after": {
1386
- clip: "rect(0 0 0 0)",
1387
- clipPath: "inset(50%)",
1388
- height: "1px",
1389
- overflow: "hidden",
1390
- position: "absolute",
1391
- whiteSpace: "nowrap",
1392
- width: "1px",
1393
- },
1394
-
1395
- "&::before": {
1396
- content: "attr(data-a11y-start)",
1397
- },
1398
-
1399
- "&::after": {
1400
- content: "attr(data-a11y-end)",
1401
- },
1402
- },
1403
-
1404
- details: {
1405
- fontSize: odysseyTokens.TypographySizeBody,
1406
- },
1407
-
1408
- dfn: {
1409
- fontStyle: "italic",
1410
- },
1411
-
1412
- dl: {
1413
- display: "grid",
1414
- gridGap: `${odysseyTokens.Spacing2} ${odysseyTokens.Spacing4}`,
1415
- gridTemplateColumns: "repeat(2, minmax(min-content, max-content))",
1416
- maxWidth: odysseyTokens.TypographyLineLengthMax,
1417
- marginBlockStart: 0,
1418
- marginBlockEnd: odysseyTokens.Spacing4,
1419
- marginInline: 0,
1420
- padding: 0,
1421
-
1422
- "&:last-child": {
1423
- marginBlockEnd: 0,
1424
- },
1425
-
1426
- dt: {
1427
- gridColumn: 1,
1428
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
1429
- },
1430
-
1431
- dd: {
1432
- gridColumn: 2,
1433
- marginInlineStart: odysseyTokens.Spacing0,
1434
- fontWeight: 400,
1435
- },
1436
- },
1437
-
1438
- em: {
1439
- fontStyle: "italic",
1440
-
1441
- "& > em": {
1442
- textDecoration: "underline",
1443
- },
1444
- },
1445
-
1446
- figure: {
1447
- display: "grid",
1448
- gridGap: odysseyTokens.Spacing2,
1449
- gridTemplateColumns: "minmax(min-content, max-content)",
1450
- justifyContent: "start",
1451
- justifyItems: "start",
1452
- marginBlockStart: 0,
1453
- marginBlockEnd: odysseyTokens.Spacing4,
1454
- marginInline: 0,
1455
-
1456
- "&:last-child": {
1457
- marginBlockEnd: 0,
1458
- },
1459
- },
1460
-
1461
- "figcaption:not([class])": {
1462
- color: odysseyTokens.TypographyColorSubordinate,
1463
- fontSize: odysseyTokens.TypographySizeSubordinate,
1464
- },
1465
-
1466
- hr: {
1467
- marginBlock: odysseyTokens.Spacing2,
1468
- marginInline: 0,
1469
- borderWidth: odysseyTokens.BorderWidthMain,
1470
- borderStyle: odysseyTokens.BorderStyleMain,
1471
- borderColor: odysseyTokens.HueNeutral200,
1472
- },
1473
-
1474
- ins: {
1475
- display: "inline-block",
1476
- backgroundColor: odysseyTokens.PaletteSuccessHighlight,
1477
-
1478
- "&::before, &::after": {
1479
- clip: "rect(0 0 0 0)",
1480
- clipPath: "inset(50%)",
1481
- height: "1px",
1482
- overflow: "hidden",
1483
- position: "absolute",
1484
- whiteSpace: "nowrap",
1485
- width: "1px",
1486
- },
1487
-
1488
- "&::before": {
1489
- content: "attr(data-a11y-start)",
1490
- },
1491
-
1492
- "&::after": {
1493
- content: "attr(data-a11y-end)",
1494
- },
1495
- },
1496
-
1497
- kbd: {
1498
- display: "inline-block",
1499
- minWidth: `calc(${odysseyTokens.TypographySizeSubordinate} * ${odysseyTokens.TypographyLineHeightHeading5})`,
1500
- borderStyle: odysseyTokens.BorderStyleMain,
1501
- borderWidth: odysseyTokens.BorderWidthMain,
1502
- borderRadius: odysseyTokens.BorderRadiusMain,
1503
- borderColor: odysseyTokens.HueNeutral200,
1504
- backgroundColor: odysseyTokens.HueNeutral50,
1505
- padding: `calc(${odysseyTokens.Spacing1} / 2) ${odysseyTokens.Spacing1}`,
1506
- fontFamily:
1507
- "'Inconsolata', 'SFMono-Regular', 'Consolas', 'Liberation Mono', 'Menlo', 'Courier', monospace",
1508
- fontSize: odysseyTokens.TypographySizeSubordinate,
1509
- fontWeight: odysseyTokens.Spacing5,
1510
- lineHeight: odysseyTokens.TypographyLineHeightHeading5,
1511
- boxShadow: `0 1px 1px 0 hsla(240, 6%, 12%, 0.05)`,
1512
- },
1513
-
1514
- mark: {
1515
- backgroundColor: odysseyTokens.PaletteWarningHighlight,
1516
-
1517
- "&::before, &::after": {
1518
- clip: "rect(0 0 0 0)",
1519
- clipPath: "inset(50%)",
1520
- height: "1px",
1521
- overflow: "hidden",
1522
- position: "absolute",
1523
- whiteSpace: "nowrap",
1524
- width: "1px",
1525
- },
1526
-
1527
- "&::before": {
1528
- content: "attr(data-a11y-start)",
1529
- },
1530
-
1531
- "&::after": {
1532
- content: "attr(data-a11y-end)",
1533
- },
1534
- },
1535
-
1536
- "p:not([class])": {
1537
- maxWidth: odysseyTokens.TypographyLineLengthMax,
1538
- marginBlockStart: 0,
1539
- marginBlockEnd: odysseyTokens.Spacing4, // Token?
1540
-
1541
- "&:last-child": {
1542
- marginBlockEnd: 0,
1543
- },
1544
- },
1545
-
1546
- pre: {
1547
- marginInline: 0,
1548
- marginBlockStart: 0,
1549
- marginBlockEnd: odysseyTokens.Spacing4,
1550
- fontFamily: odysseyTokens.TypographyFamilyMono,
1551
- whiteSpace: "pre-wrap",
1552
- tabSize: 2,
1553
-
1554
- "&:last-child": {
1555
- marginBlockEnd: 0,
1556
- },
1557
- },
1558
-
1559
- ul: {
1560
- [`&.${stackClasses.root}`]: {
1561
- padding: 0,
1562
- margin: 0,
1563
- },
1564
- },
1565
-
1566
- "ul:not([class]), ol:not([class])": {
1567
- maxWidth: odysseyTokens.TypographyLineLengthMax,
1568
- marginBlockStart: 0,
1569
- marginBlockEnd: odysseyTokens.Spacing4,
1570
- // Unique padding to get desire appearance with "outside" position
1571
- paddingInlineStart: "2ch",
1572
-
1573
- ol: {
1574
- listStyleType: "lower-alpha",
1575
-
1576
- ol: {
1577
- listStyleType: "lower-roman",
1578
- },
1579
- },
1580
-
1581
- "&:last-child": {
1582
- marginBlockEnd: 0,
1583
- },
1584
- },
1585
-
1586
- "li:not([class])": {
1587
- marginBlockEnd: odysseyTokens.Spacing2,
1588
- paddingInlineStart: odysseyTokens.Spacing1,
1589
-
1590
- "ul, ol": {
1591
- marginBlockStart: odysseyTokens.Spacing2,
1592
- marginInlineStart: `calc(${odysseyTokens.Spacing6} - 2ch)`,
1593
- },
1594
- },
1595
-
1596
- q: {
1597
- quotes: `'"' '"' "'" "'"`,
1598
-
1599
- "&::before": {
1600
- content: "open-quote",
1601
- },
1602
-
1603
- "&::after": {
1604
- content: "close-quote",
1605
- },
1606
- },
1607
-
1608
- s: {
1609
- textDecoration: "line-through",
1610
- },
1611
-
1612
- samp: {
1613
- padding: "0 0.5ch",
1614
- backgroundColor: odysseyTokens.HueNeutral100,
1615
- boxShadow: `0 1px 0 ${odysseyTokens.HueNeutral50}`,
1616
- fontSize: odysseyTokens.TypographySizeBody,
1617
-
1618
- kbd: {
1619
- background: odysseyTokens.HueNeutralWhite,
1620
- },
1621
- },
1622
-
1623
- small: {
1624
- fontSize: odysseyTokens.TypographySizeSubordinate,
1625
- },
1626
-
1627
- strong: {
1628
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
1629
- },
1630
-
1631
- sub: {
1632
- fontSize: odysseyTokens.TypographySizeSubordinate,
1633
- lineHeight: 1,
1634
- verticalAlign: "sub",
1635
- },
1636
-
1637
- summary: {
1638
- marginBlockEnd: odysseyTokens.Spacing2,
1639
- fontSize: odysseyTokens.TypographySizeBody,
1640
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
1641
- cursor: "default",
1642
-
1643
- "&:focus-visible": {
1644
- outlineColor: odysseyTokens.FocusOutlineColorPrimary,
1645
- outlineOffset: odysseyTokens.FocusOutlineOffsetMain,
1646
- outlineStyle: odysseyTokens.FocusOutlineStyle,
1647
- outlineWidth: odysseyTokens.FocusOutlineWidthMain,
1648
- },
1649
- },
1650
-
1651
- sup: {
1652
- fontSize: odysseyTokens.TypographySizeSubordinate,
1653
- lineHeight: 1,
1654
- verticalAlign: "super",
1655
- },
1656
-
1657
- var: {
1658
- fontStyle: "italic",
1659
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
1660
- },
1661
- },
1662
- },
1663
- },
1664
- MuiDialog: {
1665
- defaultProps: {
1666
- container: shadowRootElement || shadowDomElement,
1667
- scroll: "paper",
1668
- },
1669
- styleOverrides: {
1670
- paper: {
1671
- maxWidth: `calc(${odysseyTokens.TypographyLineLengthMax} + (${odysseyTokens.Spacing6} * 2))`,
1672
- borderRadius: odysseyTokens.BorderRadiusOuter,
1673
- boxShadow: "none",
1674
- filter:
1675
- "drop-shadow(0px 1px 4px rgba(29, 29, 33, 0.08)) drop-shadow(0px 4px 10px rgba(29, 29, 33, 0.08)) drop-shadow(0px 8px 30px rgba(29, 29, 33, 0.1))",
1676
- },
1677
- },
1678
- },
1679
- MuiDialogActions: {
1680
- styleOverrides: {
1681
- root: {
1682
- flexWrap: "wrap",
1683
- gap: odysseyTokens.Spacing2,
1684
- paddingBlockStart: odysseyTokens.Spacing5,
1685
- paddingBlockEnd: odysseyTokens.Spacing5,
1686
- paddingInline: odysseyTokens.Spacing6,
1687
- },
1688
- },
1689
- },
1690
- MuiDialogContent: {
1691
- styleOverrides: {
1692
- root: ({ ownerState }) => ({
1693
- paddingBlock: 0,
1694
- paddingInline: odysseyTokens.Spacing6,
1695
-
1696
- ...(ownerState.dividers === true && {
1697
- paddingBlock: odysseyTokens.Spacing6,
1698
- color: odysseyTokens.HueNeutral600,
1699
- }),
1700
-
1701
- ["&:last-child"]: {
1702
- paddingBlockEnd: odysseyTokens.Spacing6,
1703
- },
1704
- }),
1705
- },
1706
- },
1707
- MuiDialogContentText: {
1708
- styleOverrides: {
1709
- root: {
1710
- marginBlockEnd: odysseyTokens.Spacing5,
1711
- color: odysseyTokens.HueNeutral700,
1712
-
1713
- "&:last-child": {
1714
- marginBlockEnd: "0",
1715
- },
1716
- },
1717
- },
1718
- },
1719
- MuiDialogTitle: {
1720
- defaultProps: {
1721
- component: "h1",
1722
- variant: "h5",
1723
- },
1724
- styleOverrides: {
1725
- root: {
1726
- display: "flex",
1727
- justifyContent: "space-between",
1728
- alignItems: "center",
1729
- marginBlockEnd: 0,
1730
- padding: 0,
1731
- paddingBlockStart: odysseyTokens.Spacing5,
1732
- paddingBlockEnd: odysseyTokens.Spacing4,
1733
- paddingInline: odysseyTokens.Spacing6,
1734
- fontFamily: odysseyTokens.TypographyFamilyHeading,
1735
-
1736
- [`.${buttonClasses.root}`]: {
1737
- // Pull close button by inline padding amount
1738
- marginInlineEnd: `-${odysseyTokens.Spacing3}`,
1739
- },
1740
- },
1741
- },
1742
- },
1743
- MuiFormControl: {
1744
- defaultProps: {
1745
- margin: "normal",
1746
- },
1747
- styleOverrides: {
1748
- root: ({ ownerState }) => ({
1749
- width: "100%",
1750
- maxWidth: odysseyTokens.TypographyLineLengthMax,
1751
- ...(ownerState.margin === "normal" && {
1752
- marginBlockStart: 0,
1753
- marginBlockEnd: odysseyTokens.Spacing4,
1754
- "&:last-child": {
1755
- marginBlockEnd: 0,
1756
- },
1757
- }),
1758
- ...(ownerState.margin === "dense" && {
1759
- marginBlockStart: 0,
1760
- marginBlockEnd: odysseyTokens.Spacing5,
1761
- "&:last-child": {
1762
- marginBlockEnd: 0,
1763
- },
1764
- }),
1765
- ...(ownerState.fullWidth && {
1766
- maxWidth: "100%",
1767
- }),
1768
- [`& .${formGroupClasses.root}`]: {
1769
- marginBlockStart: odysseyTokens.Spacing1,
1770
- },
1771
- [`&:has(+ [data-file-preview-container])`]: {
1772
- marginBlockEnd: 0,
1773
- },
1774
-
1775
- ".MuiChip-root": {
1776
- // using 55ch - 24px to account for the 24px of padding on the right side of the container.
1777
- // Ensures chip does not enlarge the container
1778
- maxWidth: `calc(${odysseyTokens.TypographyLineLengthMax} - ${odysseyTokens.Spacing6})`,
1779
- },
1780
- }),
1781
- },
1782
- },
1783
- MuiFormControlLabel: {
1784
- styleOverrides: {
1785
- root: ({ ownerState }) => ({
1786
- gap: odysseyTokens.Spacing2,
1787
- marginInlineStart: 0,
1788
- marginInlineEnd: 0, // used for row presentation of radio/checkbox
1789
- ...(ownerState.labelPlacement === "start" && {
1790
- marginInlineStart: 0, // used for row presentation of radio/checkbox
1791
- marginInlineEnd: 0,
1792
- }),
1793
- ...(ownerState.labelPlacement === "top" && {
1794
- marginInlineStart: 0,
1795
- }),
1796
- ...(ownerState.labelPlacement === "bottom" && {
1797
- marginInlineStart: 0,
1798
- }),
1799
- "&:not(:last-child)": {
1800
- marginBottom: odysseyTokens.Spacing2,
1801
- },
1802
- "&.Mui-disabled": {
1803
- pointerEvents: "none",
1804
- color: odysseyTokens.TypographyColorDisabled,
1805
- },
1806
- [`:has(> .${radioClasses.root})`]: {
1807
- alignItems: "flex-start",
1808
- },
1809
- [`&:hover .${radioClasses.root}, &:hover .${checkboxClasses.root}`]: {
1810
- color: odysseyTokens.TypographyColorBody,
1811
- },
1812
- [`&:hover .${radioClasses.root}.Mui-checked, &:hover .${checkboxClasses.root}.Mui-checked`]:
1813
- {
1814
- color: odysseyTokens.PalettePrimaryDark,
1815
- },
1816
- [`&.Mui-error:hover .${radioClasses.root}, &.Mui-error:hover .${checkboxClasses.root}`]:
1817
- {
1818
- color: odysseyTokens.PaletteDangerDark,
1819
- },
1820
- [`&.Mui-error:hover .${radioClasses.root}.Mui-checked, &.Mui-error:hover .${checkboxClasses.root}.Mui-checked`]:
1821
- {
1822
- color: odysseyTokens.PaletteDangerDark,
1823
- },
1824
- }),
1825
- label: ({ ownerState }) => ({
1826
- gap: odysseyTokens.Spacing1,
1827
- lineHeight: odysseyTokens.TypographyLineHeightUi,
1828
- // !important used to override more specific .Mui-disabled class
1829
- ...(ownerState.disabled && {
1830
- color: `${odysseyTokens.TypographyColorDisabled} !important`,
1831
- }),
1832
- }),
1833
- asterisk: () => ({
1834
- display: "none",
1835
- }),
1836
- },
1837
- },
1838
- MuiFormHelperText: {
1839
- defaultProps: {
1840
- variant: "standard",
1841
- },
1842
- styleOverrides: {
1843
- root: {
1844
- fontSize: odysseyTokens.TypographySizeSubordinate,
1845
- lineHeight: odysseyTokens.TypographyLineHeightBody,
1846
- marginBlockEnd: odysseyTokens.Spacing2,
1847
- marginBlockStart: odysseyTokens.Spacing1,
1848
- textAlign: "start",
1849
-
1850
- [`.${formLabelClasses.root} + &`]: {
1851
- marginBlockStart: `-${odysseyTokens.Spacing1}`,
1852
- color: odysseyTokens.TypographyColorSubordinate,
1853
- },
1854
-
1855
- "&:last-child": {
1856
- marginBlockEnd: 0,
1857
- },
1858
-
1859
- ".Mui-disabled &": {
1860
- color: odysseyTokens.TypographyColorDisabled,
1861
-
1862
- a: {
1863
- color: odysseyTokens.TypographyColorDisabled,
1864
- },
1865
- },
1866
- },
1867
- },
1868
- },
1869
- MuiFormLabel: {
1870
- styleOverrides: {
1871
- root: {
1872
- alignItems: "center",
1873
- color: odysseyTokens.TypographyColorBody,
1874
- display: "inline-flex",
1875
- lineHeight: odysseyTokens.TypographyLineHeightUi,
1876
- fontSize: odysseyTokens.TypographySizeBody,
1877
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
1878
- marginBottom: odysseyTokens.Spacing2,
1879
- "&.Mui-focused, &.Mui-error, &.Mui-disabled": {
1880
- color: odysseyTokens.TypographyColorBody,
1881
- },
1882
- "& > .MuiTypography-root": {
1883
- margin: "reset",
1884
- marginInlineStart: odysseyTokens.Spacing1,
1885
- },
1886
- },
1887
- },
1888
- },
1889
- MuiIconButton: {
1890
- styleOverrides: {
1891
- root: {
1892
- padding: odysseyTokens.Spacing1,
1893
- borderRadius: odysseyTokens.BorderRadiusMain,
1894
- "&:hover": {
1895
- backgroundColor: odysseyTokens.HueNeutral100,
1896
- },
1897
- "&:focus-visible": {
1898
- boxShadow: `0 0 0 2px ${odysseyTokens.HueNeutralWhite}, 0 0 0 4px ${odysseyTokens.PalettePrimaryMain}`,
1899
- outline: "2px solid transparent",
1900
- outlineOffset: "1px",
1901
- },
1902
- },
1903
- },
1904
- },
1905
- MuiInput: {
1906
- defaultProps: {
1907
- disableUnderline: true,
1908
- },
1909
- styleOverrides: {
1910
- root: {
1911
- "label + &": {
1912
- marginTop: 0,
1913
- },
1914
- },
1915
- },
1916
- },
1917
- MuiInputAdornment: {
1918
- styleOverrides: {
1919
- root: ({ ownerState }) => ({
1920
- display: "flex",
1921
- minWidth: "1.25em",
1922
- maxHeight: "unset",
1923
- margin: 0,
1924
- alignItems: "center",
1925
- whiteSpace: "nowrap",
1926
- color: odysseyTokens.TypographyColorSubordinate,
1927
- ...(ownerState.position === "start" && {
1928
- marginInlineStart: odysseyTokens.Spacing3,
1929
- }),
1930
- ...(ownerState.position === "end" && {
1931
- marginInlineEnd: odysseyTokens.Spacing2,
1932
- }),
1933
- ...(ownerState.disablePointerEvents === true && {
1934
- pointerEvents: "none",
1935
- }),
1936
- }),
1937
- },
1938
- },
1939
- MuiInputBase: {
1940
- defaultProps: {
1941
- minRows: 3,
1942
- },
1943
- styleOverrides: {
1944
- root: ({ ownerState, theme }) => ({
1945
- ...theme.typography.body1,
1946
- flex: "1",
1947
- width: "auto",
1948
- color: odysseyTokens.TypographyColorBody,
1949
- lineHeight: odysseyTokens.TypographyLineHeightUi,
1950
- borderWidth: odysseyTokens.BorderWidthMain,
1951
- borderStyle: odysseyTokens.BorderStyleMain,
1952
- borderRadius: odysseyTokens.BorderRadiusMain,
1953
- borderColor: odysseyTokens.HueNeutral500,
1954
- boxShadow: `0 0 0 0 transparent`,
1955
- backgroundColor: odysseyTokens.HueNeutralWhite,
1956
- transition: theme.transitions.create(
1957
- ["border-color", "background-color", "box-shadow"],
1958
- {
1959
- duration: odysseyTokens.TransitionDurationMain,
1960
- },
1961
- ),
1962
-
1963
- ["&[data-ods-type='search']"]: {
1964
- borderColor: odysseyTokens.HueNeutral400,
1965
-
1966
- ...(contrastMode === "highContrast" && {
1967
- border: "none",
1968
- }),
1969
-
1970
- [`& .${inputBaseClasses.input}::placeholder`]: {
1971
- color: odysseyTokens.TypographyColorSupport,
1972
- opacity: 1,
1973
- },
1974
- },
1975
-
1976
- ["&[data-ods-variant='filled']"]: {
1977
- backgroundColor: odysseyTokens.HueNeutral50,
1978
- borderColor: odysseyTokens.HueNeutral50,
1979
-
1980
- [`&:hover`]: {
1981
- borderColor: odysseyTokens.HueNeutral400,
1982
- },
1983
-
1984
- [`&.${inputBaseClasses.focused}`]: {
1985
- borderColor: odysseyTokens.FocusOutlineColorPrimary,
1986
- boxShadow: `0 0 0 1px ${odysseyTokens.FocusOutlineColorPrimary}`,
1987
- },
1988
- },
1989
-
1990
- ...(ownerState.fullWidth && {
1991
- width: "100%",
1992
- }),
1993
-
1994
- ...(ownerState.readOnly === true && {
1995
- borderColor: "transparent",
1996
- backgroundColor: odysseyTokens.HueNeutral50,
1997
- }),
1998
-
1999
- [`&:hover`]: {
2000
- borderColor: odysseyTokens.HueNeutral900,
2001
- },
2002
-
2003
- [`&.${inputBaseClasses.focused}`]: {
2004
- borderColor: odysseyTokens.FocusOutlineColorPrimary,
2005
- boxShadow: `0 0 0 1px ${odysseyTokens.FocusOutlineColorPrimary}`,
2006
- outline: `${odysseyTokens.FocusOutlineWidthMain} ${odysseyTokens.FocusOutlineStyle} transparent`,
2007
- outlineOffset: odysseyTokens.FocusOutlineOffsetTight,
2008
- },
2009
-
2010
- [`&.${inputBaseClasses.error}`]: {
2011
- borderColor: odysseyTokens.BorderColorDangerControl,
2012
- },
2013
-
2014
- [`&.${inputBaseClasses.error}:hover`]: {
2015
- borderColor: odysseyTokens.HueNeutral900,
2016
- },
2017
-
2018
- [`&.${inputBaseClasses.error}.${inputBaseClasses.focused}`]: {
2019
- borderColor: odysseyTokens.FocusOutlineColorPrimary,
2020
- boxShadow: `0 0 0 1px ${odysseyTokens.FocusOutlineColorPrimary}`,
2021
- },
2022
-
2023
- [`&.${inputBaseClasses.disabled}`]: {
2024
- color: odysseyTokens.TypographyColorDisabled,
2025
- borderColor: odysseyTokens.BorderColorDisabled,
2026
- pointerEvents: "auto",
2027
- backgroundColor: odysseyTokens.HueNeutral50,
2028
- cursor: "not-allowed",
2029
- },
2030
- }),
2031
- input: {
2032
- height: "auto",
2033
- // We're subtracting a pixel so the total height, including borders, is 40px
2034
- paddingBlock: `calc(${odysseyTokens.Spacing3} - ${odysseyTokens.BorderWidthMain})`,
2035
- paddingInline: odysseyTokens.Spacing3,
2036
- boxShadow: "none",
2037
-
2038
- // TODO: Consider if we want manual resizing.
2039
- // [`.${inputBaseClasses.multiline} &`]: {
2040
- // resize: "vertical",
2041
- // },
2042
-
2043
- [`.${inputBaseClasses.disabled} &`]: {
2044
- pointerEvents: "auto",
2045
- cursor: "not-allowed",
2046
- },
2047
-
2048
- [`.${inputAdornmentClasses.root} + &`]: {
2049
- paddingInlineStart: odysseyTokens.Spacing2,
2050
- },
2051
-
2052
- [`label[data-shrink=false] + .${inputBaseClasses.formControl} &`]: {
2053
- "&::placeholder": {
2054
- color: odysseyTokens.TypographyColorSupport,
2055
- opacity: "1 !important",
2056
- },
2057
- },
2058
-
2059
- [`&::-webkit-search-cancel-button`]: {
2060
- display: "none",
2061
- MozAppearance: "none",
2062
- WebkitAppearance: "none",
2063
- } satisfies CSSProperties,
2064
-
2065
- [`&::-ms-clear`]: {
2066
- display: "none",
2067
- },
2068
- },
2069
- },
2070
- },
2071
- MuiInputLabel: {
2072
- defaultProps: {
2073
- disableAnimation: true,
2074
- shrink: false,
2075
- },
2076
- styleOverrides: {
2077
- root: ({ ownerState }) => ({
2078
- display: "flex",
2079
- justifyContent: "space-between",
2080
- overflow: "unset",
2081
- whiteSpace: "unset",
2082
- ...(ownerState.formControl
2083
- ? {
2084
- position: "initial",
2085
- transform: "none",
2086
- }
2087
- : {}),
2088
- ...(ownerState.variant === "outlined" && {
2089
- pointerEvents: "initial",
2090
- transform: "none",
2091
- maxWidth: "100%",
2092
- ...(ownerState.size === "small" && {
2093
- transform: "none",
2094
- }),
2095
- }),
2096
- [`& > .${typographyClasses.root}`]: {
2097
- lineHeight: "unset",
2098
- } satisfies CSSObject,
2099
- }),
2100
- },
2101
- },
2102
- MuiLink: {
2103
- styleOverrides: {
2104
- root: {
2105
- color: odysseyTokens.TypographyColorAction,
2106
- textDecoration: "none",
2107
- cursor: "pointer",
2108
-
2109
- "&:visited": {
2110
- color: odysseyTokens.TypographyColorAction,
2111
- },
2112
-
2113
- "&:hover": {
2114
- color: odysseyTokens.PalettePrimaryDark,
2115
- textDecoration: "underline",
2116
- },
2117
-
2118
- "&:focus-visible": {
2119
- borderRadius: odysseyTokens.BorderRadiusMain,
2120
- outlineColor: odysseyTokens.FocusOutlineColorPrimary,
2121
- outlineOffset: odysseyTokens.FocusOutlineOffsetMain,
2122
- outlineStyle: odysseyTokens.FocusOutlineStyle,
2123
- outlineWidth: odysseyTokens.FocusOutlineWidthTight,
2124
- textDecoration: "none",
2125
- },
2126
-
2127
- ".Link-indicator, .Link-icon": {
2128
- display: "inline-block",
2129
- height: "1em",
2130
- lineHeight: 1,
2131
- "& svg": {
2132
- fontSize: "1em",
2133
- },
2134
- },
2135
-
2136
- ".Link-indicator": {
2137
- marginInlineStart: odysseyTokens.Spacing1,
2138
- },
2139
-
2140
- ".Link-icon": {
2141
- marginInlineEnd: odysseyTokens.Spacing1,
2142
- },
2143
- svg: {
2144
- fontSize: "1.2em",
2145
- height: "1em",
2146
- position: "relative",
2147
- insetBlockStart: "-0.0625em",
2148
- verticalAlign: "middle",
2149
- width: "1em",
2150
- },
2151
- },
2152
- },
2153
- variants: [
2154
- {
2155
- props: { variant: "monochrome" },
2156
- style: {
2157
- color: odysseyTokens.TypographyColorBody,
2158
- textDecoration: "underline",
2159
-
2160
- "&:visited": {
2161
- color: odysseyTokens.TypographyColorBody,
2162
- },
2163
-
2164
- "&:hover": {
2165
- color: odysseyTokens.TypographyColorSubordinate,
2166
- },
2167
- },
2168
- },
2169
- ],
2170
- },
2171
- MuiListItem: {
2172
- styleOverrides: {
2173
- root: {
2174
- textAlign: "start",
2175
- },
2176
- },
2177
- },
2178
- MuiListItemIcon: {
2179
- styleOverrides: {
2180
- root: {
2181
- minWidth: "unset",
2182
- color: "inherit",
2183
- },
2184
- },
2185
- },
2186
- MuiListSubheader: {
2187
- styleOverrides: {
2188
- root: {
2189
- paddingBlock: odysseyTokens.Spacing2,
2190
- paddingInline: odysseyTokens.Spacing4,
2191
- fontSize: odysseyTokens.TypographySizeSubordinate,
2192
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
2193
- lineHeight: odysseyTokens.TypographyLineHeightUi,
2194
- color: odysseyTokens.TypographyColorSubordinate,
2195
- textTransform: "uppercase",
2196
- },
2197
- },
2198
- },
2199
- MuiMenu: {
2200
- defaultProps: {
2201
- elevation: 2,
2202
- },
2203
- styleOverrides: {
2204
- list: {
2205
- paddingBlock: odysseyTokens.Spacing2,
2206
- paddingInline: `${odysseyTokens.Spacing2} !important`,
2207
- borderRadius: odysseyTokens.BorderRadiusMain,
2208
- },
2209
- root: {
2210
- "& hr": {
2211
- borderStyle: "solid none none",
2212
- borderWidth: odysseyTokens.BorderWidthMain,
2213
- borderColor: odysseyTokens.BorderColorDisplay,
2214
- },
2215
- },
2216
- },
2217
- },
2218
- MuiMenuItem: {
2219
- styleOverrides: {
2220
- root: ({ ownerState, theme }) => ({
2221
- gap: odysseyTokens.Spacing2,
2222
- minHeight: "unset",
2223
- maxWidth: `calc(55ch - ${odysseyTokens.Spacing4})`,
2224
- paddingBlock: odysseyTokens.Spacing3,
2225
- paddingInline: odysseyTokens.Spacing4,
2226
- borderRadius: odysseyTokens.BorderRadiusMain,
2227
- whiteSpace: "normal",
2228
-
2229
- [`& .${formControlLabelClasses.root}`]: {
2230
- gap: "unset",
2231
- },
2232
-
2233
- "&:hover": {
2234
- textDecoration: "none",
2235
- backgroundColor: odysseyTokens.HueNeutral100,
2236
-
2237
- // Reset on touch devices, it doesn't add specificity
2238
- "@media (hover: none)": {
2239
- backgroundColor: "transparent",
2240
- },
2241
- },
2242
-
2243
- [`:focus-visible`]: {
2244
- backgroundColor: odysseyTokens.HueNeutral100,
2245
- },
2246
-
2247
- [`&.${menuItemClasses.root}-destructive`]: {
2248
- color: odysseyTokens.TypographyColorDanger,
2249
-
2250
- [`.${typographyClasses.root}`]: {
2251
- color: "inherit",
2252
- },
2253
- },
2254
-
2255
- "&.isVisiblySelected": {
2256
- backgroundColor: `${odysseyTokens.PalettePrimaryLighter} !important`,
2257
-
2258
- [`& .${typographyClasses.root}`]: {
2259
- color: odysseyTokens.HueBlue600,
2260
- },
2261
- },
2262
-
2263
- [`&.${menuItemClasses.selected}`]: {
2264
- backgroundColor: "transparent",
2265
- color: odysseyTokens.TypographyColorAction,
2266
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
2267
-
2268
- "&:hover": {
2269
- backgroundColor: odysseyTokens.PalettePrimaryLighter,
2270
-
2271
- "@media (hover: none)": {
2272
- backgroundColor: odysseyTokens.PalettePrimaryLighter,
2273
- },
2274
- },
2275
-
2276
- [`&.${menuItemClasses.focusVisible}`]: {
2277
- backgroundColor: odysseyTokens.PalettePrimaryLighter,
2278
- color: odysseyTokens.TypographyColorAction,
2279
-
2280
- "&:hover": {
2281
- backgroundColor: odysseyTokens.PalettePrimaryLighter,
2282
-
2283
- "@media (hover: none)": {
2284
- backgroundColor: odysseyTokens.PalettePrimaryLighter,
2285
- },
2286
- },
2287
- },
2288
- },
2289
-
2290
- [`&.${menuItemClasses.focusVisible}`]: {
2291
- backgroundColor: "transparent",
2292
- boxShadow: theme.mixins.insetFocusRing,
2293
-
2294
- "&:hover": {
2295
- backgroundColor: odysseyTokens.HueNeutral100,
2296
-
2297
- // Reset on touch devices, it doesn't add specificity
2298
- "@media (hover: none)": {
2299
- backgroundColor: "transparent",
2300
- },
2301
- },
2302
- },
2303
-
2304
- "&[data-empty='true']": {
2305
- "&:after": {
2306
- content: "'&nbsp;'",
2307
- visibility: "hidden",
2308
- },
2309
- },
2310
-
2311
- ...(!ownerState.disableGutters && {
2312
- paddingInline: odysseyTokens.Spacing4,
2313
- }),
2314
-
2315
- ...(ownerState.divider && {
2316
- borderBlockEnd: `1px solid ${odysseyTokens.BorderColorDisplay}`,
2317
- }),
2318
-
2319
- [`&.${menuItemClasses.disabled}`]: {
2320
- opacity: 1,
2321
- color: odysseyTokens.TypographyColorDisabled,
2322
-
2323
- [`.${typographyClasses.root}`]: {
2324
- color: "inherit",
2325
- },
2326
- },
2327
-
2328
- [`& + .${dividerClasses.root}`]: {
2329
- marginBlock: odysseyTokens.Spacing1,
2330
- },
2331
-
2332
- [`& .${listItemTextClasses.root}`]: {
2333
- marginBlock: 0,
2334
- },
2335
-
2336
- [`& .${listItemIconClasses.root}`]: {
2337
- minWidth: "unset",
2338
- },
2339
- }),
2340
- },
2341
- },
2342
- MuiListItemSecondaryAction: {
2343
- styleOverrides: {
2344
- root: {
2345
- display: "flex",
2346
- },
2347
- },
2348
- },
2349
- MuiModal: {
2350
- defaultProps: {
2351
- container: shadowRootElement || shadowDomElement,
2352
- },
2353
- },
2354
- MuiNativeSelect: {
2355
- defaultProps: {
2356
- variant: "standard",
2357
- },
2358
- styleOverrides: {
2359
- select: {
2360
- "&:focus": {
2361
- backgroundColor: "transparent",
2362
- },
2363
- },
2364
- icon: {
2365
- right: "unset",
2366
- insetInlineEnd: odysseyTokens.Spacing3,
2367
- color: odysseyTokens.TypographyColorBody,
2368
- },
2369
- },
2370
- },
2371
- MuiPaper: {
2372
- styleOverrides: {
2373
- // depth/low
2374
- elevation1: {
2375
- boxShadow: odysseyTokens.DepthLow,
2376
- },
2377
-
2378
- // depth/medium
2379
- elevation2: {
2380
- boxShadow: odysseyTokens.DepthMedium,
2381
- },
2382
-
2383
- // depth/high
2384
- elevation3: {
2385
- boxShadow: odysseyTokens.DepthHigh,
2386
- },
2387
- },
2388
- },
2389
- MuiPopover: {
2390
- defaultProps: {
2391
- container: shadowRootElement || shadowDomElement,
2392
- },
2393
- styleOverrides: {
2394
- paper: {
2395
- marginBlockStart: odysseyTokens.Spacing1,
2396
- borderWidth: odysseyTokens.BorderWidthMain,
2397
- borderStyle: odysseyTokens.BorderStyleMain,
2398
- borderColor: odysseyTokens.HueNeutral200,
2399
- },
2400
- },
2401
- },
2402
- MuiPopper: {
2403
- defaultProps: {
2404
- container: shadowRootElement || shadowDomElement,
2405
- },
2406
- },
2407
- MuiRadio: {
2408
- defaultProps: {
2409
- size: "small",
2410
- icon: <></>,
2411
- checkedIcon: <></>,
2412
- },
2413
- styleOverrides: {
2414
- root: ({ ownerState, theme }) => {
2415
- const isReadOnly = ownerState?.inputProps?.readOnly;
2416
-
2417
- return {
2418
- position: "relative",
2419
- insetBlockStart: `${2 / theme.typography.fontSize}rem`,
2420
- width: `${odysseyTokens.TypographyLineHeightUi}em`,
2421
- minWidth: `${odysseyTokens.TypographyLineHeightUi}em`,
2422
- height: `${odysseyTokens.TypographyLineHeightUi}em`,
2423
- borderRadius: `${odysseyTokens.TypographyLineHeightUi}em`,
2424
- borderWidth: odysseyTokens.BorderWidthMain,
2425
- borderStyle: odysseyTokens.BorderStyleMain,
2426
- borderColor: odysseyTokens.HueNeutral500,
2427
- padding: 0,
2428
- boxShadow: `0 0 0 0 transparent`,
2429
- transition: theme.transitions.create(
2430
- ["border-color", "background-color", "box-shadow"],
2431
- {
2432
- duration: odysseyTokens.TransitionDurationMain,
2433
- },
2434
- ),
2435
- "&::before": {
2436
- content: "''",
2437
- position: "absolute",
2438
- width: odysseyTokens.Spacing2,
2439
- height: odysseyTokens.Spacing2,
2440
- borderRadius: "50%",
2441
- backgroundColor: "transparent",
2442
- transition: theme.transitions.create(["background-color"], {
2443
- duration: odysseyTokens.TransitionDurationMain,
2444
- }),
2445
- },
2446
- [`.${formControlLabelClasses.root}:hover > &`]: {
2447
- backgroundColor: "transparent",
2448
- borderColor: odysseyTokens.HueNeutral900,
2449
- },
2450
- ".Mui-error:hover > &": {
2451
- backgroundColor: "transparent",
2452
- borderColor: odysseyTokens.BorderColorDangerDark,
2453
- "&::before": {
2454
- backgroundColor: odysseyTokens.PaletteDangerDark,
2455
- },
2456
- },
2457
- ".Mui-error > &": {
2458
- borderColor: odysseyTokens.BorderColorDangerControl,
2459
- "&.Mui-focusVisible": {
2460
- boxShadow: `0 0 0 2px ${odysseyTokens.HueNeutralWhite}, 0 0 0 4px ${odysseyTokens.PaletteDangerMain}`,
2461
- },
2462
- },
2463
- "&.Mui-focusVisible": {
2464
- borderColor: odysseyTokens.HueNeutral900,
2465
- boxShadow: `0 0 0 2px ${odysseyTokens.HueNeutralWhite}, 0 0 0 4px ${odysseyTokens.PalettePrimaryMain}`,
2466
- outline: "2px solid transparent",
2467
- outlineOffset: "1px",
2468
- },
2469
- "&.Mui-checked": {
2470
- position: "relative",
2471
- "&::before": {
2472
- backgroundColor: odysseyTokens.PalettePrimaryMain,
2473
- },
2474
- },
2475
- ".Mui-error > &.Mui-checked::before": {
2476
- backgroundColor: odysseyTokens.PaletteDangerMain,
2477
- },
2478
- "&.Mui-disabled": {
2479
- backgroundColor: odysseyTokens.HueNeutral50,
2480
- borderColor: odysseyTokens.BorderColorDisabled,
2481
- "&.Mui-checked::before": {
2482
- backgroundColor: odysseyTokens.BorderColorDisabled,
2483
- },
2484
- },
2485
- ...(isReadOnly && {
2486
- backgroundColor: odysseyTokens.HueNeutral100,
2487
- borderColor: odysseyTokens.HueNeutral300,
2488
- cursor: "default",
2489
- "&::before": {
2490
- content: "''",
2491
- position: "absolute",
2492
- width: odysseyTokens.Spacing2,
2493
- height: odysseyTokens.Spacing2,
2494
- borderRadius: "50%",
2495
- backgroundColor: "transparent",
2496
- transition: theme.transitions.create(["background-color"], {
2497
- duration: odysseyTokens.TransitionDurationMain,
2498
- }),
2499
- },
2500
- "&.Mui-checked::before": {
2501
- backgroundColor: odysseyTokens.HueNeutral700,
2502
- },
2503
- [`.${formControlLabelClasses.root}:hover > &`]: {
2504
- backgroundColor: odysseyTokens.HueNeutral100,
2505
- borderColor: odysseyTokens.HueNeutral300,
2506
- },
2507
- }),
2508
- };
2509
- },
2510
- },
2511
- },
2512
-
2513
- MuiSnackbar: {
2514
- defaultProps: {
2515
- anchorOrigin: {
2516
- vertical: "bottom",
2517
- horizontal: "right",
2518
- },
2519
- },
2520
- styleOverrides: {
2521
- root: {
2522
- "&.Toast": {
2523
- position: "static",
2524
- },
2525
- },
2526
- },
2527
- },
2528
- MuiSelect: {
2529
- defaultProps: {
2530
- variant: "standard",
2531
- IconComponent: ChevronDownIcon,
2532
- MenuProps: {
2533
- PaperProps: {
2534
- elevation: 1,
2535
- },
2536
- },
2537
- },
2538
- styleOverrides: {
2539
- root: ({ ownerState }) => ({
2540
- ...(ownerState?.inputProps?.readOnly
2541
- ? {
2542
- "&.MuiInputBase-root": {
2543
- backgroundColor: odysseyTokens.HueNeutral50,
2544
- borderColor: odysseyTokens.HueNeutral200,
2545
- "&:hover": {
2546
- backgroundColor: odysseyTokens.HueNeutral50,
2547
- },
2548
- "&.Mui-focused": {
2549
- borderColor: odysseyTokens.PalettePrimaryMain,
2550
- },
2551
- },
2552
- }
2553
- : {}),
2554
- "& .MuiSelect-icon": {
2555
- right: "unset",
2556
- insetInlineEnd: odysseyTokens.Spacing3,
2557
- color: odysseyTokens.TypographyColorSubordinate,
2558
- },
2559
- }),
2560
- select: ({ ownerState }) => ({
2561
- height: "auto",
2562
- // We're subtracting a pixel so the total height, including borders, is 40px
2563
- paddingBlock: `calc(${odysseyTokens.Spacing3} - ${odysseyTokens.BorderWidthMain})`,
2564
- paddingInline: odysseyTokens.Spacing3,
2565
- // Setting min-height to the line-height here to avoid the select shrinking in size when the value is an empty string
2566
- minHeight: `${odysseyTokens.TypographyLineHeightUi}em`,
2567
-
2568
- "&:focus": {
2569
- backgroundColor: "transparent",
2570
- },
2571
-
2572
- "& .MuiBox-root": {
2573
- display: "flex",
2574
- flexWrap: "wrap",
2575
- gap: odysseyTokens.Spacing1,
2576
- marginBlock: `-${odysseyTokens.Spacing2}`,
2577
- marginInline: `-${odysseyTokens.Spacing2}`,
2578
- },
2579
-
2580
- ["& .MuiListItemSecondaryAction-root"]: {
2581
- display: "none",
2582
- },
2583
-
2584
- ...(ownerState?.inputProps?.readOnly
2585
- ? {
2586
- color: odysseyTokens.HueNeutral700,
2587
- cursor: "default",
2588
- "&:focus": {
2589
- backgroundColor: "transparent",
2590
- borderColor: odysseyTokens.PalettePrimaryMain,
2591
- },
2592
- }
2593
- : {}),
2594
- }),
2595
- },
2596
- },
2597
- MuiSvgIcon: {
2598
- defaultProps: {
2599
- fontSize: "inherit",
2600
- color: "inherit",
2601
- },
2602
- styleOverrides: {
2603
- root: ({ ownerState }) => ({
2604
- fontSize: `${odysseyTokens.TypographyLineHeightUi}rem`,
2605
-
2606
- ...(ownerState.fontSize === "small" && {
2607
- fontSize: `${
2608
- Number(odysseyTokens.TypographyLineHeightUi) * 0.75
2609
- }rem`,
2610
- }),
2611
-
2612
- ...(ownerState.fontSize === "large" && {
2613
- fontSize: `${
2614
- Number(odysseyTokens.TypographyLineHeightUi) * 1.25
2615
- }rem`,
2616
- }),
2617
- }),
2618
- },
2619
- },
2620
- MuiTab: {
2621
- defaultProps: {
2622
- iconPosition: "start",
2623
- },
2624
- styleOverrides: {
2625
- root: ({ ownerState }) => ({
2626
- maxWidth: `calc(${odysseyTokens.TypographyLineLengthMax} / 2)`,
2627
- minWidth: "unset",
2628
- minHeight: odysseyTokens.Spacing9,
2629
- padding: `${odysseyTokens.Spacing4} ${odysseyTokens.Spacing1}`,
2630
- fontSize: odysseyTokens.TypographySizeHeading6,
2631
- fontFamily: odysseyTokens.TypographyFamilyHeading,
2632
- lineHeight: odysseyTokens.TypographyLineHeightUi,
2633
- overflow: "visible",
2634
- color: odysseyTokens.HueNeutral600,
2635
- opacity: 1,
2636
-
2637
- ...(ownerState.selected == true && {
2638
- color: odysseyTokens.TypographyColorAction,
2639
- fontWeight: odysseyTokens.TypographyWeightHeading,
2640
- }),
2641
-
2642
- ...(ownerState.disabled && {
2643
- color: odysseyTokens.TypographyColorDisabled,
2644
- // !important used to override more specific .Mui-Disabled class selector
2645
- opacity: "1 !important",
2646
- }),
2647
-
2648
- ...(ownerState.wrapped && {
2649
- fontSize: odysseyTokens.TypographySizeSubordinate,
2650
- lineHeight: odysseyTokens.TypographyLineHeightBody,
2651
- }),
2652
-
2653
- "&:hover": {
2654
- color: odysseyTokens.TypographyColorAction,
2655
- },
2656
-
2657
- "&:focus-visible::before, &.Mui-focusVisible::before": {
2658
- content: "''",
2659
- position: "absolute",
2660
- insetBlockStart: odysseyTokens.Spacing4,
2661
- insetInlineEnd: `calc(-1 * ${odysseyTokens.Spacing2})`,
2662
- insetBlockEnd: odysseyTokens.Spacing4,
2663
- insetInlineStart: `calc(-1 * ${odysseyTokens.Spacing2})`,
2664
- borderWidth: odysseyTokens.BorderWidthMain,
2665
- borderStyle: odysseyTokens.BorderStyleMain,
2666
- borderColor: odysseyTokens.PalettePrimaryMain,
2667
- borderRadius: odysseyTokens.BorderRadiusMain,
2668
- },
2669
-
2670
- "& .MuiTab-iconWrapper": {
2671
- marginInlineEnd: odysseyTokens.Spacing1,
2672
- },
2673
- }),
2674
- },
2675
- },
2676
- MuiTabPanel: {
2677
- styleOverrides: {
2678
- root: {
2679
- padding: 0,
2680
- },
2681
- },
2682
- },
2683
- MuiTabs: {
2684
- defaultProps: {
2685
- textColor: "inherit",
2686
- },
2687
- styleOverrides: {
2688
- root: {
2689
- minHeight: "unset",
2690
- marginBottom: odysseyTokens.Spacing5,
2691
- },
2692
-
2693
- scroller: {
2694
- borderBottom: `${odysseyTokens.BorderWidthMain} ${odysseyTokens.BorderStyleMain} ${odysseyTokens.BorderColorDisplay}`,
2695
- },
2696
-
2697
- flexContainer: {
2698
- gap: odysseyTokens.Spacing5,
2699
- },
2700
-
2701
- scrollButtons: {
2702
- zIndex: 1,
2703
- transitionProperty: "opacity",
2704
- transitionDuration: odysseyTokens.TransitionDurationMain,
2705
- transitionTimingFunction: odysseyTokens.TransitionTimingMain,
2706
-
2707
- "& svg": {
2708
- width: odysseyTokens.Spacing4,
2709
- height: odysseyTokens.Spacing4,
2710
- color: odysseyTokens.PaletteNeutralDark,
2711
- },
2712
-
2713
- "&::after": {
2714
- content: '""',
2715
- position: "absolute",
2716
- top: 0,
2717
- bottom: 0,
2718
- width: odysseyTokens.Spacing3,
2719
- },
2720
- "&:first-of-type::after": {
2721
- right: `-${odysseyTokens.Spacing3}`,
2722
- background:
2723
- "linear-gradient(90deg, #FFF 0%, #FFF 72.49%, rgba(255, 255, 255, 0.70) 86.5%, rgba(255, 255, 255, 0.00) 100%)",
2724
- },
2725
- "&:last-of-type::after": {
2726
- left: `-${odysseyTokens.Spacing3}`,
2727
- background:
2728
- "linear-gradient(-90deg, #FFF 0%, #FFF 72.49%, rgba(255, 255, 255, 0.70) 86.5%, rgba(255, 255, 255, 0.00) 100%)",
2729
- },
2730
- },
2731
- },
2732
- },
2733
- MuiTable: {
2734
- styleOverrides: {
2735
- root: ({ ownerState }) => ({
2736
- display: "table",
2737
- width: "100%",
2738
- borderCollapse: "separate",
2739
- borderSpacing: 0,
2740
- marginBlock: odysseyTokens.Spacing0,
2741
- marginInline: odysseyTokens.Spacing0,
2742
- lineHeight: odysseyTokens.TypographyLineHeightUi,
2743
-
2744
- "&.narrow": {
2745
- width: "100%",
2746
- tableLayout: "fixed",
2747
- },
2748
-
2749
- "&:only-child": {
2750
- marginBlockEnd: 0,
2751
- },
2752
-
2753
- ...(ownerState.stickyHeader && {
2754
- borderCollapse: "separate",
2755
- }),
2756
-
2757
- caption: {
2758
- clip: "rect(0 0 0 0)",
2759
- clipPath: "inset(50%)",
2760
- height: "1px",
2761
- overflow: "hidden",
2762
- position: "absolute",
2763
- whiteSpace: "nowrap",
2764
- width: "1px",
2765
- },
2766
- }),
2767
- },
2768
- },
2769
- MuiTableCell: {
2770
- styleOverrides: {
2771
- root: ({ theme, ownerState }) => ({
2772
- ...theme.typography.body1,
2773
- textAlign: "start",
2774
- verticalAlign: "baseline",
2775
- padding: `0 ${odysseyTokens.Spacing3} !important`,
2776
- overflow: "visible !important",
2777
- position: "relative",
2778
- overflowWrap: "break-word",
2779
-
2780
- [`&.${tableCellClasses.root}`]: {
2781
- borderTop: `none !important`,
2782
- borderBottom: `none !important`,
2783
- borderLeft: `none !important`,
2784
- },
2785
-
2786
- ["&::after"]: {
2787
- background: "transparent !important",
2788
- },
2789
-
2790
- [`.${tableBodyClasses.root} &.${tableCellClasses.root}`]: {
2791
- borderRight: `none !important`,
2792
- },
2793
-
2794
- [`&.${tableCellClasses.root}.isResizing::after`]: {
2795
- borderRightColor: odysseyTokens.BorderColorPrimaryControl,
2796
- borderRightStyle: odysseyTokens.BorderStyleMain,
2797
- borderRightWidth: 2,
2798
- content: '""',
2799
- position: "absolute",
2800
- right: 0,
2801
- },
2802
-
2803
- [`.MuiTable-root.narrow &:last-child`]: {
2804
- width: "auto",
2805
- },
2806
-
2807
- ...(ownerState.variant === "action" && {
2808
- paddingBlock: 0,
2809
- }),
2810
-
2811
- ...(ownerState.variant === "body" && {
2812
- color: odysseyTokens.TypographyColorBody,
2813
- }),
2814
-
2815
- ...(ownerState.variant === "date" && {
2816
- whiteSpace: "nowrap",
2817
- }),
2818
-
2819
- ...(ownerState.variant === "footer" && {
2820
- color: odysseyTokens.TypographyColorSubordinate,
2821
- lineHeight: odysseyTokens.TypographyLineHeightBody,
2822
- fontSize: odysseyTokens.TypographySizeBody,
2823
- }),
2824
-
2825
- [`.${tableHeadClasses.root} &`]: {
2826
- color: odysseyTokens.TypographyColorHeading,
2827
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
2828
- textTransform: "uppercase",
2829
- backgroundColor: odysseyTokens.HueNeutral50,
2830
- borderBottom: 0,
2831
- height: `${odysseyTokens.Spacing7} !important`,
2832
- paddingBlock: `${odysseyTokens.Spacing3} !important`,
2833
- fontSize: odysseyTokens.TypographySizeOverline,
2834
- lineHeight: odysseyTokens.TypographyLineHeightBody,
2835
- letterSpacing: 1.3,
2836
- },
2837
-
2838
- [`.${tableHeadClasses.root} &:first-of-type`]: {
2839
- borderTopLeftRadius: odysseyTokens.Spacing2,
2840
- borderBottomLeftRadius: odysseyTokens.Spacing2,
2841
- },
2842
-
2843
- [`.${tableHeadClasses.root} &:last-of-type`]: {
2844
- borderTopRightRadius: odysseyTokens.Spacing2,
2845
- borderBottomRightRadius: odysseyTokens.Spacing2,
2846
- },
2847
-
2848
- [`.${tableHeadClasses.root} .ods-actions-cell + &:last-of-type, .${tableBodyClasses.root} .ods-actions-cell + &:last-of-type`]:
2849
- {
2850
- flexGrow: 0,
2851
- // When a table has an actions column, we need to 0 the padding on the final (spacing-related) column otherwise
2852
- // the last column is too wide
2853
- padding: "0 !important",
2854
- // The last column needs to be the same width as the border-radius of the thead row to ensure the border-radius isn't
2855
- // cut off
2856
- width: odysseyTokens.Spacing2,
2857
- },
2858
- [`.ods-hide-spacer-column .${tableHeadClasses.root} &:last-of-type, .ods-hide-spacer-column .${tableBodyClasses.root} &:last-of-type`]:
2859
- {
2860
- display: "none",
2861
- },
2862
-
2863
- [`.ods-hide-spacer-column .${tableHeadClasses.root} &:nth-last-of-type(2), .ods-hide-spacer-column .${tableBodyClasses.root} &:nth-last-of-type(2)`]:
2864
- {
2865
- borderTopRightRadius: odysseyTokens.Spacing2,
2866
- borderBottomRightRadius: odysseyTokens.Spacing2,
2867
-
2868
- [`& .Mui-TableHeadCell-ResizeHandle-Wrapper`]: {
2869
- display: "none",
2870
- },
2871
- },
2872
-
2873
- [`.ods-column-grow .${tableHeadClasses.root} &:nth-last-of-type(2), .ods-column-grow .${tableBodyClasses.root} &:nth-last-of-type(2)`]:
2874
- {
2875
- flexGrow: 1,
2876
- },
2877
-
2878
- ...(ownerState.variant === "number" && {
2879
- textAlign: "end",
2880
- fontFeatureSettings: '"lnum", "tnum"',
2881
- }),
2882
-
2883
- ...(ownerState.padding === "checkbox" && {
2884
- width: 48, // prevent the checkbox column from growing
2885
- }),
2886
-
2887
- ...(ownerState.padding === "none" && {
2888
- padding: 0,
2889
- }),
2890
-
2891
- ...(ownerState.align === "left" && {
2892
- textAlign: "start",
2893
- }),
2894
-
2895
- ...(ownerState.align === "center" && {
2896
- textAlign: "center",
2897
- }),
2898
-
2899
- ...(ownerState.align === "right" && {
2900
- textAlign: "end",
2901
- flexDirection: "row-reverse",
2902
- }),
2903
-
2904
- ...(ownerState.align === "justify" && {
2905
- textAlign: "justify",
2906
- }),
2907
-
2908
- [`& .${checkboxClasses.root}`]: {
2909
- width: `${odysseyTokens.TypographyLineHeightUi}rem`,
2910
- height: `${odysseyTokens.TypographyLineHeightUi}rem`,
2911
- margin: 0,
2912
- },
2913
-
2914
- [`& .Mui-TableHeadCell-ResizeHandle-Wrapper`]: {
2915
- marginInlineEnd: `-${odysseyTokens.Spacing3}`,
2916
-
2917
- [`&:active .${dividerClasses.vertical}`]: {
2918
- display: "none",
2919
- },
2920
- },
2921
-
2922
- [`& .Mui-TableHeadCell-Content-Wrapper`]: {
2923
- flexShrink: 0,
2924
- },
2925
-
2926
- [`& .${dividerClasses.vertical}`]: {
2927
- borderStyle: "none none none solid",
2928
- borderWidth: 1,
2929
- borderRadius: 0,
2930
- marginRight: 2,
2931
- borderColor: odysseyTokens.HueNeutral400,
2932
- height: 18,
2933
- },
2934
-
2935
- ["&.ods-drag-handle svg"]: {
2936
- color: odysseyTokens.HueNeutral500,
2937
- },
2938
-
2939
- [`& .${buttonBaseClasses.root}`]: {
2940
- marginBlock: `-${odysseyTokens.Spacing2}`,
2941
- },
2942
- }),
2943
- },
2944
- },
2945
- MuiTableContainer: {
2946
- defaultProps: {
2947
- component: "figure",
2948
- },
2949
- styleOverrides: {
2950
- root: {
2951
- width: "unset",
2952
- maxWidth: "100%",
2953
- marginBlockStart: odysseyTokens.Spacing0,
2954
- marginBlockEnd: odysseyTokens.Spacing4,
2955
- marginInline: 0,
2956
- overflowX: "auto",
2957
- display: "block !important",
2958
-
2959
- "&:last-child": {
2960
- marginBlock: 0,
2961
- },
2962
- },
2963
- },
2964
- },
2965
- MuiTableRow: {
2966
- styleOverrides: {
2967
- root: () => ({
2968
- borderTop: `${odysseyTokens.BorderWidthMain} ${odysseyTokens.BorderStyleMain} ${odysseyTokens.HueNeutral100}`,
2969
- transition: "none !important",
2970
- verticalAlign: "unset",
2971
-
2972
- [`&:hover`]: {
2973
- backgroundColor: `${odysseyTokens.HueNeutral50} !important`,
2974
- },
2975
-
2976
- [`&:first-of-type`]: {
2977
- borderTopColor: odysseyTokens.HueNeutralWhite,
2978
- },
2979
-
2980
- [`&.${tableRowClasses.selected}`]: {
2981
- backgroundColor: `${odysseyTokens.PalettePrimaryLighter} !important`,
2982
-
2983
- "&:hover": {
2984
- backgroundColor: `${odysseyTokens.PalettePrimaryLighter} !important`,
2985
- },
2986
-
2987
- [`&:hover + .${tableRowClasses.root}`]: {
2988
- borderTopColor: odysseyTokens.PalettePrimaryMain,
2989
- },
2990
- },
2991
- [`.${tableRowClasses.selected} + &`]: {
2992
- borderTopColor: odysseyTokens.PalettePrimaryLight,
2993
- },
2994
- [`&.${tableRowClasses.head}`]: {
2995
- boxShadow: "none !important",
2996
- borderBottom: 0,
2997
-
2998
- "&:hover, &:focus-within": {
2999
- backgroundColor: "transparent !important",
3000
- },
3001
- },
3002
-
3003
- [`.${tableBodyClasses.root} &`]: {
3004
- // Target is 48px height
3005
- paddingBlock: odysseyTokens.Spacing3,
3006
-
3007
- [`& .${tableCellClasses.root}::after`]: {
3008
- top: `-${odysseyTokens.Spacing3} !important`,
3009
- bottom: `-${odysseyTokens.Spacing3} !important`,
3010
- },
3011
- },
3012
-
3013
- [`.${tableBodyClasses.root}.MuiTableBody-compact &`]: {
3014
- // Target is 36px height
3015
- paddingBlock: odysseyTokens.Spacing2,
3016
-
3017
- [`& .${tableCellClasses.root}::after`]: {
3018
- top: `-${odysseyTokens.Spacing2} !important`,
3019
- bottom: `-${odysseyTokens.Spacing2} !important`,
3020
- },
3021
- },
3022
-
3023
- [`.${tableBodyClasses.root}.MuiTableBody-spacious &`]: {
3024
- // Target is 56px height
3025
- paddingBlock: odysseyTokens.Spacing4,
3026
-
3027
- [`& .${tableCellClasses.root}::after`]: {
3028
- top: `-${odysseyTokens.Spacing4} !important`,
3029
- bottom: `-${odysseyTokens.Spacing4} !important`,
3030
- },
3031
- },
3032
-
3033
- "&.isDragTarget": {
3034
- opacity: 1,
3035
- position: "relative",
3036
- backgroundColor: odysseyTokens.PalettePrimaryMain,
3037
- borderRadius: odysseyTokens.BorderRadiusOuter,
3038
-
3039
- [`& td.${tableCellClasses.root}`]: {
3040
- borderTop: "0 !important",
3041
- borderRight: "0 !important",
3042
- borderBottom: "0 !important",
3043
- borderLeft: "0 !important",
3044
- },
3045
-
3046
- "&::after": {
3047
- content: '""',
3048
- position: "absolute",
3049
- left: 0,
3050
- right: 0,
3051
- top: 0,
3052
- bottom: 0,
3053
- borderColor: odysseyTokens.PalettePrimaryLight,
3054
- borderStyle: "dashed",
3055
- borderWidth: 2,
3056
- borderRadius: odysseyTokens.BorderRadiusOuter,
3057
- },
3058
- },
3059
-
3060
- "&.isDragging": {
3061
- borderRadius: odysseyTokens.BorderRadiusOuter,
3062
- },
3063
-
3064
- "&.isDragging::after": {
3065
- content: '""',
3066
- position: "absolute",
3067
- left: 0,
3068
- right: 0,
3069
- top: 0,
3070
- bottom: 0,
3071
- borderColor: odysseyTokens.HueNeutral200,
3072
- borderStyle: "dashed",
3073
- borderWidth: 2,
3074
- borderRadius: odysseyTokens.BorderRadiusOuter,
3075
- },
3076
-
3077
- "&.isDragging, &.isDragging.isDragTarget": {
3078
- position: "relative",
3079
- opacity: 1,
3080
- backgroundColor: "transparent",
3081
- },
3082
-
3083
- "&.isDragging.isDragTarget::after": {
3084
- borderColor: odysseyTokens.PalettePrimaryLight,
3085
- left: 0,
3086
- right: 0,
3087
- },
3088
-
3089
- [`&.isDragging + .${tableRowClasses.root}, &.isDragTarget + .${tableRowClasses.root}`]:
3090
- {
3091
- borderTopColor: "transparent",
3092
- },
3093
- }),
3094
- },
3095
- },
3096
- MuiTableSortLabel: {
3097
- styleOverrides: {
3098
- root: {
3099
- cursor: "pointer",
3100
- display: "inline-flex",
3101
- justifyContent: "flex-start",
3102
- flexDirection: "inherit",
3103
- alignItems: "center",
3104
- marginInlineEnd: odysseyTokens.Spacing3,
3105
- "&:focus-visible": {
3106
- color: odysseyTokens.TypographyColorBody,
3107
- outlineOffset: odysseyTokens.Spacing4,
3108
- outlineStyle: odysseyTokens.FocusOutlineStyle,
3109
- outlineWidth: odysseyTokens.FocusOutlineWidthMain,
3110
- outlineColor: odysseyTokens.FocusOutlineColorPrimary,
3111
- },
3112
- "&:hover": {
3113
- color: odysseyTokens.TypographyColorBody,
3114
- },
3115
- },
3116
- icon: ({ ownerState }) => ({
3117
- ...(ownerState.direction === "asc" && {
3118
- transform: "rotate(180deg) !important",
3119
- }),
3120
-
3121
- ".isUnsorted &": {
3122
- opacity: "0 !important",
3123
- },
3124
-
3125
- ".isUnsorted:hover &, .isUnsorted:focus &": {
3126
- opacity: "0.5 !important",
3127
-
3128
- "&:hover, &:focus": {
3129
- opacity: "1 !important",
3130
- },
3131
- },
3132
-
3133
- ".isSorted &": {
3134
- opacity: 1,
3135
- },
3136
- }),
3137
- },
3138
- },
3139
- MuiTooltip: {
3140
- defaultProps: {
3141
- arrow: true,
3142
- enterDelay: 500,
3143
- enterNextDelay: 250,
3144
- placement: "top",
3145
- },
3146
- styleOverrides: {
3147
- tooltip: ({ ownerState }) => ({
3148
- maxWidth: `calc(${odysseyTokens.TypographyLineLengthMax} / 2)`,
3149
- paddingBlock: odysseyTokens.Spacing2,
3150
- paddingInline: odysseyTokens.Spacing3,
3151
- backgroundColor: odysseyTokens.HueNeutral900,
3152
- color: odysseyTokens.HueNeutralWhite,
3153
- fontSize: odysseyTokens.TypographySizeSubordinate,
3154
- lineHeight: odysseyTokens.TypographyLineHeightBody,
3155
- ...(ownerState.touch === true && {
3156
- paddingBlock: odysseyTokens.Spacing2,
3157
- paddingInline: odysseyTokens.Spacing3,
3158
- fontSize: odysseyTokens.TypographySizeSubordinate,
3159
- lineHeight: odysseyTokens.TypographyLineHeightBody,
3160
- fontWeight: odysseyTokens.TypographyWeightBody,
3161
- }),
3162
- [`.${tooltipClasses.popper}[data-popper-placement*="left"] &`]: {
3163
- transformOrigin: "right center",
3164
- ...(ownerState.isRtl
3165
- ? {
3166
- marginInlineStart: odysseyTokens.Spacing3,
3167
- ...(ownerState.touch === true && {
3168
- marginInlineStart: odysseyTokens.Spacing4,
3169
- }),
3170
- }
3171
- : {
3172
- marginInlineEnd: odysseyTokens.Spacing3,
3173
- ...(ownerState.touch === true && {
3174
- marginInlineEnd: odysseyTokens.Spacing4,
3175
- }),
3176
- }),
3177
- },
3178
- [`.${tooltipClasses.popper}[data-popper-placement*="right"] &`]: {
3179
- transformOrigin: "left center",
3180
- ...(ownerState.isRtl
3181
- ? {
3182
- marginInlineEnd: odysseyTokens.Spacing3,
3183
- ...(ownerState.touch === true && {
3184
- marginInlineEnd: odysseyTokens.Spacing4,
3185
- }),
3186
- }
3187
- : {
3188
- marginInlineStart: odysseyTokens.Spacing3,
3189
- ...(ownerState.touch === true && {
3190
- marginInlineStart: odysseyTokens.Spacing4,
3191
- }),
3192
- }),
3193
- },
3194
- [`.${tooltipClasses.popper}[data-popper-placement*="top"] &`]: {
3195
- transformOrigin: "center bottom",
3196
- marginBottom: odysseyTokens.Spacing3,
3197
- ...(ownerState.touch === true && {
3198
- marginBottom: odysseyTokens.Spacing4,
3199
- }),
3200
- },
3201
- [`.${tooltipClasses.popper}[data-popper-placement*="bottom"] &`]: {
3202
- transformOrigin: "center top",
3203
- marginTop: odysseyTokens.Spacing3,
3204
- ...(ownerState.touch === true && {
3205
- marginTop: odysseyTokens.Spacing4,
3206
- }),
3207
- },
3208
- }),
3209
- arrow: {
3210
- color: odysseyTokens.HueNeutral900,
3211
- "&::before": {
3212
- borderRadius: "0",
3213
- },
3214
-
3215
- [`.${tooltipClasses.popper}[data-popper-placement*="top"] &::before`]:
3216
- {
3217
- borderRadius: `0 0 3px 0`,
3218
- },
3219
-
3220
- [`.${tooltipClasses.popper}[data-popper-placement*="right"] &::before`]:
3221
- {
3222
- borderRadius: `0 0 0 3px`,
3223
- },
3224
-
3225
- [`.${tooltipClasses.popper}[data-popper-placement*="bottom"] &::before`]:
3226
- {
3227
- borderRadius: `3px 0 0 0`,
3228
- },
3229
-
3230
- [`.${tooltipClasses.popper}[data-popper-placement*="left"] &::before`]:
3231
- {
3232
- borderRadius: `0 3px 0 0`,
3233
- },
3234
- },
3235
- },
3236
- },
3237
- MuiTypography: {
3238
- defaultProps: {
3239
- variantMapping: {
3240
- h1: "h1",
3241
- h2: "h2",
3242
- h3: "h3",
3243
- h4: "h4",
3244
- h5: "h5",
3245
- h6: "h6",
3246
- subtitle1: "p",
3247
- body1: "p",
3248
- inherit: "p",
3249
- legend: "legend",
3250
- overline: "p",
3251
- },
3252
- },
3253
- styleOverrides: {
3254
- paragraph: {
3255
- marginBlockEnd: odysseyTokens.Spacing4,
3256
-
3257
- [`&:last-child`]: {
3258
- marginBlockEnd: 0,
3259
- },
3260
- },
3261
- overline: {
3262
- fontSize: odysseyTokens.TypographySizeOverline,
3263
- fontWeight: odysseyTokens.TypographyWeightBodyBold,
3264
- lineHeight: odysseyTokens.TypographyLineHeightOverline,
3265
- letterSpacing: odysseyTokens.TypographyLetterSpacingOverline,
3266
- textTransform: "none",
3267
-
3268
- ":is(:lang(en-*), :lang(en))": {
3269
- textTransform: "uppercase",
3270
- },
3271
- },
3272
- },
3273
- },
3274
- };
3275
- };