@okta/odyssey-react-mui 1.13.11 → 1.14.2

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 (684) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/@types/properties.d.js +2 -0
  3. package/dist/@types/properties.d.js.map +1 -0
  4. package/dist/Accordion.js.map +1 -1
  5. package/dist/Autocomplete.js.map +1 -1
  6. package/dist/Badge.js.map +1 -1
  7. package/dist/Banner.js.map +1 -1
  8. package/dist/Box.js.map +1 -1
  9. package/dist/Breadcrumbs.js.map +1 -1
  10. package/dist/Button.js +3 -3
  11. package/dist/Button.js.map +1 -1
  12. package/dist/Callout.js.map +1 -1
  13. package/dist/Checkbox.js.map +1 -1
  14. package/dist/CheckboxGroup.js.map +1 -1
  15. package/dist/CircularProgress.js.map +1 -1
  16. package/dist/Dialog.js +8 -8
  17. package/dist/Dialog.js.map +1 -1
  18. package/dist/ErrorMessageList.js.map +1 -1
  19. package/dist/Field.js +1 -0
  20. package/dist/Field.js.map +1 -1
  21. package/dist/FieldComponentProps.js.map +1 -1
  22. package/dist/FieldError.js.map +1 -1
  23. package/dist/FieldHint.js.map +1 -1
  24. package/dist/FieldLabel.js.map +1 -1
  25. package/dist/Fieldset.js.map +1 -1
  26. package/dist/Form.js.map +1 -1
  27. package/dist/FormCheckedProps.js.map +1 -1
  28. package/dist/HintLink.js.map +1 -1
  29. package/dist/HtmlProps.js.map +1 -1
  30. package/dist/Link.js.map +1 -1
  31. package/dist/MenuButton.js.map +1 -1
  32. package/dist/MenuItem.js.map +1 -1
  33. package/dist/MuiPropsChild.js.map +1 -1
  34. package/dist/NativeSelect.js.map +1 -1
  35. package/dist/OdysseyProvider.js +0 -2
  36. package/dist/OdysseyProvider.js.map +1 -1
  37. package/dist/OdysseyThemeProvider.js +1 -28
  38. package/dist/OdysseyThemeProvider.js.map +1 -1
  39. package/dist/OdysseyTranslationProvider.js.map +1 -1
  40. package/dist/PasswordField.js.map +1 -1
  41. package/dist/Radio.js.map +1 -1
  42. package/dist/RadioGroup.js.map +1 -1
  43. package/dist/ScreenReaderText.js.map +1 -1
  44. package/dist/SearchField.js +6 -2
  45. package/dist/SearchField.js.map +1 -1
  46. package/dist/Select.js +144 -44
  47. package/dist/Select.js.map +1 -1
  48. package/dist/Status.js +6 -1
  49. package/dist/Status.js.map +1 -1
  50. package/dist/Tabs.js +1 -1
  51. package/dist/Tabs.js.map +1 -1
  52. package/dist/Tag.js.map +1 -1
  53. package/dist/TagList.js.map +1 -1
  54. package/dist/TextField.js.map +1 -1
  55. package/dist/Tile.js +53 -39
  56. package/dist/Tile.js.map +1 -1
  57. package/dist/Toast.js.map +1 -1
  58. package/dist/Tooltip.js.map +1 -1
  59. package/dist/Typography.js +11 -10
  60. package/dist/Typography.js.map +1 -1
  61. package/dist/createShadowRootElement.js.map +1 -1
  62. package/dist/getTypedObjectKeys.js.map +1 -1
  63. package/dist/icons.generated/AddCircle.js.map +1 -1
  64. package/dist/icons.generated/Apps.js.map +1 -1
  65. package/dist/icons.generated/ArrowBottom.js.map +1 -1
  66. package/dist/icons.generated/ArrowDown.js.map +1 -1
  67. package/dist/icons.generated/ArrowLeft.js.map +1 -1
  68. package/dist/icons.generated/ArrowRight.js.map +1 -1
  69. package/dist/icons.generated/ArrowTop.js.map +1 -1
  70. package/dist/icons.generated/ArrowUp.js.map +1 -1
  71. package/dist/icons.generated/Calendar.js.map +1 -1
  72. package/dist/icons.generated/Call.js.map +1 -1
  73. package/dist/icons.generated/Chat.js.map +1 -1
  74. package/dist/icons.generated/Check.js.map +1 -1
  75. package/dist/icons.generated/ChevronDown.js.map +1 -1
  76. package/dist/icons.generated/ChevronLeft.js.map +1 -1
  77. package/dist/icons.generated/ChevronUp.js.map +1 -1
  78. package/dist/icons.generated/Clock.js.map +1 -1
  79. package/dist/icons.generated/Close.js.map +1 -1
  80. package/dist/icons.generated/Copy.js.map +1 -1
  81. package/dist/icons.generated/Delete.js.map +1 -1
  82. package/dist/icons.generated/Deny.js.map +1 -1
  83. package/dist/icons.generated/Devices.js.map +1 -1
  84. package/dist/icons.generated/Directory.js.map +1 -1
  85. package/dist/icons.generated/Download.js.map +1 -1
  86. package/dist/icons.generated/Edit.js.map +1 -1
  87. package/dist/icons.generated/ExpandLeft.js.map +1 -1
  88. package/dist/icons.generated/ExpandRight.js.map +1 -1
  89. package/dist/icons.generated/Filter.js.map +1 -1
  90. package/dist/icons.generated/Folder.js.map +1 -1
  91. package/dist/icons.generated/Globe.js.map +1 -1
  92. package/dist/icons.generated/Grid.js.map +1 -1
  93. package/dist/icons.generated/Group.js.map +1 -1
  94. package/dist/icons.generated/Hide.js.map +1 -1
  95. package/dist/icons.generated/Home.js.map +1 -1
  96. package/dist/icons.generated/Link.js.map +1 -1
  97. package/dist/icons.generated/List.js.map +1 -1
  98. package/dist/icons.generated/Lock.js.map +1 -1
  99. package/dist/icons.generated/More.js.map +1 -1
  100. package/dist/icons.generated/Pause.js.map +1 -1
  101. package/dist/icons.generated/Refresh.js.map +1 -1
  102. package/dist/icons.generated/Reset.js.map +1 -1
  103. package/dist/icons.generated/Resume.js.map +1 -1
  104. package/dist/icons.generated/Search.js.map +1 -1
  105. package/dist/icons.generated/Server.js.map +1 -1
  106. package/dist/icons.generated/Settings.js.map +1 -1
  107. package/dist/icons.generated/Show.js.map +1 -1
  108. package/dist/icons.generated/Subtract.js.map +1 -1
  109. package/dist/icons.generated/Sync.js.map +1 -1
  110. package/dist/icons.generated/Unlock.js.map +1 -1
  111. package/dist/icons.generated/Upload.js.map +1 -1
  112. package/dist/icons.generated/User.js.map +1 -1
  113. package/dist/icons.generated/Video.js.map +1 -1
  114. package/dist/icons.generated/Warning.js.map +1 -1
  115. package/dist/icons.generated/index.js +1 -1
  116. package/dist/icons.generated/index.js.map +1 -1
  117. package/dist/index.js.map +1 -1
  118. package/dist/labs/DataFilters.js.map +1 -1
  119. package/dist/labs/DataTable.js.map +1 -1
  120. package/dist/labs/DatePicker.js.map +1 -1
  121. package/dist/labs/Drawer.js +172 -0
  122. package/dist/labs/Drawer.js.map +1 -0
  123. package/dist/labs/GroupPicker.js.map +1 -1
  124. package/dist/labs/PaginatedTable.js.map +1 -1
  125. package/dist/labs/StaticTable.js.map +1 -1
  126. package/dist/labs/Switch.js.map +1 -1
  127. package/dist/labs/VirtualizedAutocomplete.js.map +1 -1
  128. package/dist/labs/datePickerTheme.js.map +1 -1
  129. package/dist/labs/index.js +1 -0
  130. package/dist/labs/index.js.map +1 -1
  131. package/dist/labs/materialReactTableTypes.js.map +1 -1
  132. package/dist/properties/ts/odyssey-react-mui_cs.js +4 -2
  133. package/dist/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  134. package/dist/properties/ts/odyssey-react-mui_da.js +4 -2
  135. package/dist/properties/ts/odyssey-react-mui_da.js.map +1 -1
  136. package/dist/properties/ts/odyssey-react-mui_de.js +4 -2
  137. package/dist/properties/ts/odyssey-react-mui_de.js.map +1 -1
  138. package/dist/properties/ts/odyssey-react-mui_el.js +4 -2
  139. package/dist/properties/ts/odyssey-react-mui_el.js.map +1 -1
  140. package/dist/properties/ts/odyssey-react-mui_es.js +4 -2
  141. package/dist/properties/ts/odyssey-react-mui_es.js.map +1 -1
  142. package/dist/properties/ts/odyssey-react-mui_fi.js +4 -2
  143. package/dist/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  144. package/dist/properties/ts/odyssey-react-mui_fr.js +4 -2
  145. package/dist/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  146. package/dist/properties/ts/odyssey-react-mui_hu.js +4 -2
  147. package/dist/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  148. package/dist/properties/ts/odyssey-react-mui_id.js +4 -2
  149. package/dist/properties/ts/odyssey-react-mui_id.js.map +1 -1
  150. package/dist/properties/ts/odyssey-react-mui_it.js +4 -2
  151. package/dist/properties/ts/odyssey-react-mui_it.js.map +1 -1
  152. package/dist/properties/ts/odyssey-react-mui_ja.js +4 -2
  153. package/dist/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  154. package/dist/properties/ts/odyssey-react-mui_ko.js +4 -2
  155. package/dist/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  156. package/dist/properties/ts/odyssey-react-mui_ms.js +4 -2
  157. package/dist/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  158. package/dist/properties/ts/odyssey-react-mui_nb.js +4 -2
  159. package/dist/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  160. package/dist/properties/ts/odyssey-react-mui_nl_NL.js +4 -2
  161. package/dist/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  162. package/dist/properties/ts/odyssey-react-mui_pl.js +4 -2
  163. package/dist/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  164. package/dist/properties/ts/odyssey-react-mui_pt_BR.js +4 -2
  165. package/dist/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  166. package/dist/properties/ts/odyssey-react-mui_ro.js +4 -2
  167. package/dist/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  168. package/dist/properties/ts/odyssey-react-mui_ru.js +4 -2
  169. package/dist/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  170. package/dist/properties/ts/odyssey-react-mui_sv.js +4 -2
  171. package/dist/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  172. package/dist/properties/ts/odyssey-react-mui_th.js +4 -2
  173. package/dist/properties/ts/odyssey-react-mui_th.js.map +1 -1
  174. package/dist/properties/ts/odyssey-react-mui_tr.js +4 -2
  175. package/dist/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  176. package/dist/properties/ts/odyssey-react-mui_uk.js +4 -2
  177. package/dist/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  178. package/dist/properties/ts/odyssey-react-mui_vi.js +4 -2
  179. package/dist/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  180. package/dist/properties/ts/odyssey-react-mui_zh_CN.js +4 -2
  181. package/dist/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  182. package/dist/properties/ts/odyssey-react-mui_zh_TW.js +4 -2
  183. package/dist/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  184. package/dist/scripts/properties-to-ts.d.ts +14 -0
  185. package/dist/scripts/properties-to-ts.d.ts.map +1 -0
  186. package/dist/src/Accordion.d.ts +2 -2
  187. package/dist/src/Accordion.d.ts.map +1 -1
  188. package/dist/src/Autocomplete.d.ts +2 -2
  189. package/dist/src/Autocomplete.d.ts.map +1 -1
  190. package/dist/src/Badge.d.ts +2 -2
  191. package/dist/src/Badge.d.ts.map +1 -1
  192. package/dist/src/Banner.d.ts +2 -2
  193. package/dist/src/Banner.d.ts.map +1 -1
  194. package/dist/src/Box.d.ts +2 -2
  195. package/dist/src/Box.d.ts.map +1 -1
  196. package/dist/src/Breadcrumbs.d.ts +3 -3
  197. package/dist/src/Breadcrumbs.d.ts.map +1 -1
  198. package/dist/src/Button.d.ts +3 -30
  199. package/dist/src/Button.d.ts.map +1 -1
  200. package/dist/src/Callout.d.ts +2 -2
  201. package/dist/src/Callout.d.ts.map +1 -1
  202. package/dist/src/Checkbox.d.ts +3 -23
  203. package/dist/src/Checkbox.d.ts.map +1 -1
  204. package/dist/src/CheckboxGroup.d.ts +2 -2
  205. package/dist/src/CheckboxGroup.d.ts.map +1 -1
  206. package/dist/src/CircularProgress.d.ts +2 -6
  207. package/dist/src/CircularProgress.d.ts.map +1 -1
  208. package/dist/src/CssBaseline.d.ts +1 -1
  209. package/dist/src/CssBaseline.d.ts.map +1 -1
  210. package/dist/src/Dialog.d.ts +5 -5
  211. package/dist/src/Dialog.d.ts.map +1 -1
  212. package/dist/src/ErrorMessageList.d.ts +1 -1
  213. package/dist/src/ErrorMessageList.d.ts.map +1 -1
  214. package/dist/src/Field.d.ts +2 -5
  215. package/dist/src/Field.d.ts.map +1 -1
  216. package/dist/src/FieldComponentProps.d.ts +7 -4
  217. package/dist/src/FieldComponentProps.d.ts.map +1 -1
  218. package/dist/src/FieldError.d.ts +2 -2
  219. package/dist/src/FieldError.d.ts.map +1 -1
  220. package/dist/src/FieldHint.d.ts +2 -2
  221. package/dist/src/FieldHint.d.ts.map +1 -1
  222. package/dist/src/FieldLabel.d.ts +2 -2
  223. package/dist/src/FieldLabel.d.ts.map +1 -1
  224. package/dist/src/Fieldset.d.ts +2 -2
  225. package/dist/src/Fieldset.d.ts.map +1 -1
  226. package/dist/src/Form.d.ts +2 -2
  227. package/dist/src/Form.d.ts.map +1 -1
  228. package/dist/src/HintLink.d.ts +1 -1
  229. package/dist/src/HintLink.d.ts.map +1 -1
  230. package/dist/src/HtmlProps.d.ts +59 -0
  231. package/dist/src/HtmlProps.d.ts.map +1 -1
  232. package/dist/src/Link.d.ts +2 -6
  233. package/dist/src/Link.d.ts.map +1 -1
  234. package/dist/src/MenuButton.d.ts +5 -23
  235. package/dist/src/MenuButton.d.ts.map +1 -1
  236. package/dist/src/MenuItem.d.ts +2 -2
  237. package/dist/src/MenuItem.d.ts.map +1 -1
  238. package/dist/src/NativeSelect.d.ts +2 -2
  239. package/dist/src/NativeSelect.d.ts.map +1 -1
  240. package/dist/src/OdysseyCacheProvider.d.ts +1 -1
  241. package/dist/src/OdysseyCacheProvider.d.ts.map +1 -1
  242. package/dist/src/OdysseyProvider.d.ts +1 -1
  243. package/dist/src/OdysseyProvider.d.ts.map +1 -1
  244. package/dist/src/OdysseyThemeProvider.d.ts +1 -3
  245. package/dist/src/OdysseyThemeProvider.d.ts.map +1 -1
  246. package/dist/src/OdysseyTranslationProvider.d.ts +2 -2
  247. package/dist/src/OdysseyTranslationProvider.d.ts.map +1 -1
  248. package/dist/src/PasswordField.d.ts +2 -2
  249. package/dist/src/PasswordField.d.ts.map +1 -1
  250. package/dist/src/Radio.d.ts +2 -2
  251. package/dist/src/Radio.d.ts.map +1 -1
  252. package/dist/src/RadioGroup.d.ts +2 -2
  253. package/dist/src/RadioGroup.d.ts.map +1 -1
  254. package/dist/src/ScreenReaderText.d.ts +2 -2
  255. package/dist/src/ScreenReaderText.d.ts.map +1 -1
  256. package/dist/src/SearchField.d.ts +11 -2
  257. package/dist/src/SearchField.d.ts.map +1 -1
  258. package/dist/src/Select.d.ts +2 -2
  259. package/dist/src/Select.d.ts.map +1 -1
  260. package/dist/src/Status.d.ts +4 -2
  261. package/dist/src/Status.d.ts.map +1 -1
  262. package/dist/src/Tabs.d.ts +2 -6
  263. package/dist/src/Tabs.d.ts.map +1 -1
  264. package/dist/src/Tag.d.ts +2 -2
  265. package/dist/src/Tag.d.ts.map +1 -1
  266. package/dist/src/TagList.d.ts +2 -2
  267. package/dist/src/TagList.d.ts.map +1 -1
  268. package/dist/src/TextField.d.ts +3 -3
  269. package/dist/src/TextField.d.ts.map +1 -1
  270. package/dist/src/Tile.d.ts +32 -11
  271. package/dist/src/Tile.d.ts.map +1 -1
  272. package/dist/src/Toast.d.ts +2 -2
  273. package/dist/src/Toast.d.ts.map +1 -1
  274. package/dist/src/ToastStack.d.ts +1 -1
  275. package/dist/src/ToastStack.d.ts.map +1 -1
  276. package/dist/src/Tooltip.d.ts +2 -2
  277. package/dist/src/Tooltip.d.ts.map +1 -1
  278. package/dist/src/Typography.d.ts +13 -25
  279. package/dist/src/Typography.d.ts.map +1 -1
  280. package/dist/src/icons.generated/Add.d.ts +1 -1
  281. package/dist/src/icons.generated/Add.d.ts.map +1 -1
  282. package/dist/src/icons.generated/AddCircle.d.ts +1 -1
  283. package/dist/src/icons.generated/AddCircle.d.ts.map +1 -1
  284. package/dist/src/icons.generated/Apps.d.ts +1 -1
  285. package/dist/src/icons.generated/Apps.d.ts.map +1 -1
  286. package/dist/src/icons.generated/ArrowBottom.d.ts +1 -1
  287. package/dist/src/icons.generated/ArrowBottom.d.ts.map +1 -1
  288. package/dist/src/icons.generated/ArrowDown.d.ts +1 -1
  289. package/dist/src/icons.generated/ArrowDown.d.ts.map +1 -1
  290. package/dist/src/icons.generated/ArrowLeft.d.ts +1 -1
  291. package/dist/src/icons.generated/ArrowLeft.d.ts.map +1 -1
  292. package/dist/src/icons.generated/ArrowLowerLeft.d.ts +1 -1
  293. package/dist/src/icons.generated/ArrowLowerLeft.d.ts.map +1 -1
  294. package/dist/src/icons.generated/ArrowLowerRight.d.ts +1 -1
  295. package/dist/src/icons.generated/ArrowLowerRight.d.ts.map +1 -1
  296. package/dist/src/icons.generated/ArrowRight.d.ts +1 -1
  297. package/dist/src/icons.generated/ArrowRight.d.ts.map +1 -1
  298. package/dist/src/icons.generated/ArrowTop.d.ts +1 -1
  299. package/dist/src/icons.generated/ArrowTop.d.ts.map +1 -1
  300. package/dist/src/icons.generated/ArrowUnsorted.d.ts +1 -1
  301. package/dist/src/icons.generated/ArrowUnsorted.d.ts.map +1 -1
  302. package/dist/src/icons.generated/ArrowUp.d.ts +1 -1
  303. package/dist/src/icons.generated/ArrowUp.d.ts.map +1 -1
  304. package/dist/src/icons.generated/ArrowUpperLeft.d.ts +1 -1
  305. package/dist/src/icons.generated/ArrowUpperLeft.d.ts.map +1 -1
  306. package/dist/src/icons.generated/ArrowUpperRight.d.ts +1 -1
  307. package/dist/src/icons.generated/ArrowUpperRight.d.ts.map +1 -1
  308. package/dist/src/icons.generated/Bug.d.ts +1 -1
  309. package/dist/src/icons.generated/Bug.d.ts.map +1 -1
  310. package/dist/src/icons.generated/Calendar.d.ts +1 -1
  311. package/dist/src/icons.generated/Calendar.d.ts.map +1 -1
  312. package/dist/src/icons.generated/Call.d.ts +1 -1
  313. package/dist/src/icons.generated/Call.d.ts.map +1 -1
  314. package/dist/src/icons.generated/Chat.d.ts +1 -1
  315. package/dist/src/icons.generated/Chat.d.ts.map +1 -1
  316. package/dist/src/icons.generated/Check.d.ts +1 -1
  317. package/dist/src/icons.generated/Check.d.ts.map +1 -1
  318. package/dist/src/icons.generated/CheckCircleFilled.d.ts +1 -1
  319. package/dist/src/icons.generated/CheckCircleFilled.d.ts.map +1 -1
  320. package/dist/src/icons.generated/ChevronDown.d.ts +1 -1
  321. package/dist/src/icons.generated/ChevronDown.d.ts.map +1 -1
  322. package/dist/src/icons.generated/ChevronLeft.d.ts +1 -1
  323. package/dist/src/icons.generated/ChevronLeft.d.ts.map +1 -1
  324. package/dist/src/icons.generated/ChevronRight.d.ts +1 -1
  325. package/dist/src/icons.generated/ChevronRight.d.ts.map +1 -1
  326. package/dist/src/icons.generated/ChevronUp.d.ts +1 -1
  327. package/dist/src/icons.generated/ChevronUp.d.ts.map +1 -1
  328. package/dist/src/icons.generated/Clock.d.ts +1 -1
  329. package/dist/src/icons.generated/Clock.d.ts.map +1 -1
  330. package/dist/src/icons.generated/Close.d.ts +1 -1
  331. package/dist/src/icons.generated/Close.d.ts.map +1 -1
  332. package/dist/src/icons.generated/CloseCircleFilled.d.ts +1 -1
  333. package/dist/src/icons.generated/CloseCircleFilled.d.ts.map +1 -1
  334. package/dist/src/icons.generated/CollapseLeft.d.ts +1 -1
  335. package/dist/src/icons.generated/CollapseLeft.d.ts.map +1 -1
  336. package/dist/src/icons.generated/CollapseRight.d.ts +1 -1
  337. package/dist/src/icons.generated/CollapseRight.d.ts.map +1 -1
  338. package/dist/src/icons.generated/Copy.d.ts +1 -1
  339. package/dist/src/icons.generated/Copy.d.ts.map +1 -1
  340. package/dist/src/icons.generated/DangerDiamond.d.ts +1 -1
  341. package/dist/src/icons.generated/DangerDiamond.d.ts.map +1 -1
  342. package/dist/src/icons.generated/DangerDiamondFilled.d.ts +1 -1
  343. package/dist/src/icons.generated/DangerDiamondFilled.d.ts.map +1 -1
  344. package/dist/src/icons.generated/Delete.d.ts +1 -1
  345. package/dist/src/icons.generated/Delete.d.ts.map +1 -1
  346. package/dist/src/icons.generated/Deny.d.ts +1 -1
  347. package/dist/src/icons.generated/Deny.d.ts.map +1 -1
  348. package/dist/src/icons.generated/Devices.d.ts +1 -1
  349. package/dist/src/icons.generated/Devices.d.ts.map +1 -1
  350. package/dist/src/icons.generated/Directory.d.ts +1 -1
  351. package/dist/src/icons.generated/Directory.d.ts.map +1 -1
  352. package/dist/src/icons.generated/Documentation.d.ts +1 -1
  353. package/dist/src/icons.generated/Documentation.d.ts.map +1 -1
  354. package/dist/src/icons.generated/Download.d.ts +1 -1
  355. package/dist/src/icons.generated/Download.d.ts.map +1 -1
  356. package/dist/src/icons.generated/DragIndicator.d.ts +1 -1
  357. package/dist/src/icons.generated/DragIndicator.d.ts.map +1 -1
  358. package/dist/src/icons.generated/Edit.d.ts +1 -1
  359. package/dist/src/icons.generated/Edit.d.ts.map +1 -1
  360. package/dist/src/icons.generated/ExpandLeft.d.ts +1 -1
  361. package/dist/src/icons.generated/ExpandLeft.d.ts.map +1 -1
  362. package/dist/src/icons.generated/ExpandRight.d.ts +1 -1
  363. package/dist/src/icons.generated/ExpandRight.d.ts.map +1 -1
  364. package/dist/src/icons.generated/ExternalLink.d.ts +1 -1
  365. package/dist/src/icons.generated/ExternalLink.d.ts.map +1 -1
  366. package/dist/src/icons.generated/Filter.d.ts +1 -1
  367. package/dist/src/icons.generated/Filter.d.ts.map +1 -1
  368. package/dist/src/icons.generated/Folder.d.ts +1 -1
  369. package/dist/src/icons.generated/Folder.d.ts.map +1 -1
  370. package/dist/src/icons.generated/Globe.d.ts +1 -1
  371. package/dist/src/icons.generated/Globe.d.ts.map +1 -1
  372. package/dist/src/icons.generated/Grid.d.ts +1 -1
  373. package/dist/src/icons.generated/Grid.d.ts.map +1 -1
  374. package/dist/src/icons.generated/Group.d.ts +1 -1
  375. package/dist/src/icons.generated/Group.d.ts.map +1 -1
  376. package/dist/src/icons.generated/Hide.d.ts +1 -1
  377. package/dist/src/icons.generated/Hide.d.ts.map +1 -1
  378. package/dist/src/icons.generated/Home.d.ts +1 -1
  379. package/dist/src/icons.generated/Home.d.ts.map +1 -1
  380. package/dist/src/icons.generated/InformationCircle.d.ts +1 -1
  381. package/dist/src/icons.generated/InformationCircle.d.ts.map +1 -1
  382. package/dist/src/icons.generated/InformationCircleFilled.d.ts +1 -1
  383. package/dist/src/icons.generated/InformationCircleFilled.d.ts.map +1 -1
  384. package/dist/src/icons.generated/Link.d.ts +1 -1
  385. package/dist/src/icons.generated/Link.d.ts.map +1 -1
  386. package/dist/src/icons.generated/List.d.ts +1 -1
  387. package/dist/src/icons.generated/List.d.ts.map +1 -1
  388. package/dist/src/icons.generated/Lock.d.ts +1 -1
  389. package/dist/src/icons.generated/Lock.d.ts.map +1 -1
  390. package/dist/src/icons.generated/More.d.ts +1 -1
  391. package/dist/src/icons.generated/More.d.ts.map +1 -1
  392. package/dist/src/icons.generated/Notification.d.ts +1 -1
  393. package/dist/src/icons.generated/Notification.d.ts.map +1 -1
  394. package/dist/src/icons.generated/Pause.d.ts +1 -1
  395. package/dist/src/icons.generated/Pause.d.ts.map +1 -1
  396. package/dist/src/icons.generated/QuestionCircle.d.ts +1 -1
  397. package/dist/src/icons.generated/QuestionCircle.d.ts.map +1 -1
  398. package/dist/src/icons.generated/QuestionCircleFilled.d.ts +1 -1
  399. package/dist/src/icons.generated/QuestionCircleFilled.d.ts.map +1 -1
  400. package/dist/src/icons.generated/Refresh.d.ts +1 -1
  401. package/dist/src/icons.generated/Refresh.d.ts.map +1 -1
  402. package/dist/src/icons.generated/Reset.d.ts +1 -1
  403. package/dist/src/icons.generated/Reset.d.ts.map +1 -1
  404. package/dist/src/icons.generated/Resume.d.ts +1 -1
  405. package/dist/src/icons.generated/Resume.d.ts.map +1 -1
  406. package/dist/src/icons.generated/Search.d.ts +1 -1
  407. package/dist/src/icons.generated/Search.d.ts.map +1 -1
  408. package/dist/src/icons.generated/Server.d.ts +1 -1
  409. package/dist/src/icons.generated/Server.d.ts.map +1 -1
  410. package/dist/src/icons.generated/Settings.d.ts +1 -1
  411. package/dist/src/icons.generated/Settings.d.ts.map +1 -1
  412. package/dist/src/icons.generated/Show.d.ts +1 -1
  413. package/dist/src/icons.generated/Show.d.ts.map +1 -1
  414. package/dist/src/icons.generated/Subtract.d.ts +1 -1
  415. package/dist/src/icons.generated/Subtract.d.ts.map +1 -1
  416. package/dist/src/icons.generated/Sync.d.ts +1 -1
  417. package/dist/src/icons.generated/Sync.d.ts.map +1 -1
  418. package/dist/src/icons.generated/Unlock.d.ts +1 -1
  419. package/dist/src/icons.generated/Unlock.d.ts.map +1 -1
  420. package/dist/src/icons.generated/Upload.d.ts +1 -1
  421. package/dist/src/icons.generated/Upload.d.ts.map +1 -1
  422. package/dist/src/icons.generated/User.d.ts +1 -1
  423. package/dist/src/icons.generated/User.d.ts.map +1 -1
  424. package/dist/src/icons.generated/Video.d.ts +1 -1
  425. package/dist/src/icons.generated/Video.d.ts.map +1 -1
  426. package/dist/src/icons.generated/Warning.d.ts +1 -1
  427. package/dist/src/icons.generated/Warning.d.ts.map +1 -1
  428. package/dist/src/icons.generated/WarningFilled.d.ts +1 -1
  429. package/dist/src/icons.generated/WarningFilled.d.ts.map +1 -1
  430. package/dist/src/icons.generated/index.d.ts +1 -1
  431. package/dist/src/index.d.ts.map +1 -1
  432. package/dist/src/labs/DataFilters.d.ts +1 -1
  433. package/dist/src/labs/DataFilters.d.ts.map +1 -1
  434. package/dist/src/labs/DataTable.d.ts +1 -1
  435. package/dist/src/labs/DataTable.d.ts.map +1 -1
  436. package/dist/src/labs/DataTablePagination.d.ts +1 -1
  437. package/dist/src/labs/DataTablePagination.d.ts.map +1 -1
  438. package/dist/src/labs/DatePicker.d.ts +1 -1
  439. package/dist/src/labs/DatePicker.d.ts.map +1 -1
  440. package/dist/src/labs/Drawer.d.ts +56 -0
  441. package/dist/src/labs/Drawer.d.ts.map +1 -0
  442. package/dist/src/labs/GroupPicker.d.ts +1 -1
  443. package/dist/src/labs/GroupPicker.d.ts.map +1 -1
  444. package/dist/src/labs/PaginatedTable.d.ts +1 -1
  445. package/dist/src/labs/PaginatedTable.d.ts.map +1 -1
  446. package/dist/src/labs/StaticTable.d.ts +1 -1
  447. package/dist/src/labs/StaticTable.d.ts.map +1 -1
  448. package/dist/src/labs/Switch.d.ts +2 -2
  449. package/dist/src/labs/Switch.d.ts.map +1 -1
  450. package/dist/src/labs/VirtualizedAutocomplete.d.ts +2 -2
  451. package/dist/src/labs/VirtualizedAutocomplete.d.ts.map +1 -1
  452. package/dist/src/labs/datePickerTheme.d.ts.map +1 -1
  453. package/dist/src/labs/index.d.ts +1 -0
  454. package/dist/src/labs/index.d.ts.map +1 -1
  455. package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts +3 -1
  456. package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  457. package/dist/src/properties/ts/odyssey-react-mui_da.d.ts +3 -1
  458. package/dist/src/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  459. package/dist/src/properties/ts/odyssey-react-mui_de.d.ts +3 -1
  460. package/dist/src/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  461. package/dist/src/properties/ts/odyssey-react-mui_el.d.ts +3 -1
  462. package/dist/src/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  463. package/dist/src/properties/ts/odyssey-react-mui_es.d.ts +3 -1
  464. package/dist/src/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  465. package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts +3 -1
  466. package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  467. package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts +3 -1
  468. package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  469. package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts +3 -1
  470. package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  471. package/dist/src/properties/ts/odyssey-react-mui_id.d.ts +3 -1
  472. package/dist/src/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  473. package/dist/src/properties/ts/odyssey-react-mui_it.d.ts +3 -1
  474. package/dist/src/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  475. package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts +3 -1
  476. package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  477. package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts +3 -1
  478. package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  479. package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts +3 -1
  480. package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  481. package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts +3 -1
  482. package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  483. package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts +3 -1
  484. package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  485. package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts +3 -1
  486. package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  487. package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts +3 -1
  488. package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  489. package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts +3 -1
  490. package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  491. package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts +3 -1
  492. package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  493. package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts +3 -1
  494. package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  495. package/dist/src/properties/ts/odyssey-react-mui_th.d.ts +3 -1
  496. package/dist/src/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  497. package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts +3 -1
  498. package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  499. package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts +3 -1
  500. package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  501. package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts +3 -1
  502. package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  503. package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts +3 -1
  504. package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  505. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts +3 -1
  506. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  507. package/dist/src/theme/components.d.ts.map +1 -1
  508. package/dist/theme/components.js +60 -8
  509. package/dist/theme/components.js.map +1 -1
  510. package/dist/tsconfig.production.tsbuildinfo +1 -1
  511. package/package.json +15 -15
  512. package/scripts/generateIconsIndex.ts +2 -2
  513. package/scripts/{properties-to-ts.js → properties-to-ts.ts} +55 -41
  514. package/src/@types/properties.d.ts +292 -0
  515. package/src/Accordion.tsx +1 -1
  516. package/src/Autocomplete.tsx +17 -9
  517. package/src/Badge.tsx +1 -1
  518. package/src/Banner.tsx +1 -1
  519. package/src/Box.tsx +2 -2
  520. package/src/Breadcrumbs.tsx +2 -2
  521. package/src/Button.tsx +26 -38
  522. package/src/Callout.tsx +1 -1
  523. package/src/Checkbox.tsx +9 -29
  524. package/src/CheckboxGroup.tsx +20 -5
  525. package/src/CircularProgress.tsx +1 -5
  526. package/src/Dialog.tsx +18 -17
  527. package/src/ErrorMessageList.tsx +1 -1
  528. package/src/Field.tsx +6 -9
  529. package/src/FieldComponentProps.ts +8 -4
  530. package/src/FieldError.tsx +2 -2
  531. package/src/FieldHint.tsx +1 -1
  532. package/src/FieldLabel.tsx +2 -2
  533. package/src/Fieldset.tsx +2 -2
  534. package/src/Form.tsx +1 -1
  535. package/src/FormCheckedProps.ts +3 -3
  536. package/src/HintLink.tsx +1 -1
  537. package/src/HtmlProps.ts +60 -0
  538. package/src/Link.tsx +2 -6
  539. package/src/MenuButton.tsx +21 -36
  540. package/src/MenuItem.tsx +2 -2
  541. package/src/MuiPropsChild.tsx +2 -2
  542. package/src/NativeSelect.tsx +24 -13
  543. package/src/OdysseyCacheProvider.test.tsx +3 -3
  544. package/src/OdysseyProvider.tsx +1 -3
  545. package/src/OdysseyThemeProvider.tsx +8 -35
  546. package/src/OdysseyTranslationProvider.test.tsx +6 -6
  547. package/src/OdysseyTranslationProvider.tsx +7 -7
  548. package/src/PasswordField.tsx +23 -10
  549. package/src/Radio.tsx +4 -4
  550. package/src/RadioGroup.tsx +22 -7
  551. package/src/ScreenReaderText.tsx +1 -1
  552. package/src/SearchField.tsx +25 -12
  553. package/src/Select.tsx +219 -77
  554. package/src/Status.tsx +8 -2
  555. package/src/Tabs.tsx +7 -11
  556. package/src/Tag.tsx +4 -4
  557. package/src/TagList.tsx +2 -2
  558. package/src/TextField.tsx +22 -9
  559. package/src/Tile.tsx +74 -43
  560. package/src/Toast.tsx +1 -1
  561. package/src/Tooltip.tsx +1 -1
  562. package/src/Typography.tsx +20 -28
  563. package/src/createShadowRootElement.ts +1 -1
  564. package/src/getTypedObjectKeys.ts +1 -1
  565. package/src/icons.generated/AddCircle.tsx +1 -1
  566. package/src/icons.generated/Apps.tsx +1 -1
  567. package/src/icons.generated/ArrowBottom.tsx +1 -1
  568. package/src/icons.generated/ArrowDown.tsx +1 -1
  569. package/src/icons.generated/ArrowLeft.tsx +1 -1
  570. package/src/icons.generated/ArrowRight.tsx +1 -1
  571. package/src/icons.generated/ArrowTop.tsx +1 -1
  572. package/src/icons.generated/ArrowUp.tsx +1 -1
  573. package/src/icons.generated/Calendar.tsx +1 -1
  574. package/src/icons.generated/Call.tsx +1 -1
  575. package/src/icons.generated/Chat.tsx +1 -1
  576. package/src/icons.generated/Check.tsx +1 -1
  577. package/src/icons.generated/ChevronDown.tsx +1 -1
  578. package/src/icons.generated/ChevronLeft.tsx +1 -1
  579. package/src/icons.generated/ChevronUp.tsx +1 -1
  580. package/src/icons.generated/Clock.tsx +1 -1
  581. package/src/icons.generated/Close.tsx +1 -1
  582. package/src/icons.generated/Copy.tsx +1 -1
  583. package/src/icons.generated/Delete.tsx +1 -1
  584. package/src/icons.generated/Deny.tsx +1 -1
  585. package/src/icons.generated/Devices.tsx +1 -1
  586. package/src/icons.generated/Directory.tsx +1 -1
  587. package/src/icons.generated/Download.tsx +1 -1
  588. package/src/icons.generated/Edit.tsx +1 -1
  589. package/src/icons.generated/ExpandLeft.tsx +1 -1
  590. package/src/icons.generated/ExpandRight.tsx +1 -1
  591. package/src/icons.generated/Filter.tsx +1 -1
  592. package/src/icons.generated/Folder.tsx +1 -1
  593. package/src/icons.generated/Globe.tsx +1 -1
  594. package/src/icons.generated/Grid.tsx +1 -1
  595. package/src/icons.generated/Group.tsx +1 -1
  596. package/src/icons.generated/Hide.tsx +1 -1
  597. package/src/icons.generated/Home.tsx +1 -1
  598. package/src/icons.generated/Link.tsx +1 -1
  599. package/src/icons.generated/List.tsx +1 -1
  600. package/src/icons.generated/Lock.tsx +1 -1
  601. package/src/icons.generated/More.tsx +1 -1
  602. package/src/icons.generated/Pause.tsx +1 -1
  603. package/src/icons.generated/Refresh.tsx +1 -1
  604. package/src/icons.generated/Reset.tsx +1 -1
  605. package/src/icons.generated/Resume.tsx +1 -1
  606. package/src/icons.generated/Search.tsx +1 -1
  607. package/src/icons.generated/Server.tsx +1 -1
  608. package/src/icons.generated/Settings.tsx +1 -1
  609. package/src/icons.generated/Show.tsx +1 -1
  610. package/src/icons.generated/Subtract.tsx +1 -1
  611. package/src/icons.generated/Sync.tsx +1 -1
  612. package/src/icons.generated/Unlock.tsx +1 -1
  613. package/src/icons.generated/Upload.tsx +1 -1
  614. package/src/icons.generated/User.tsx +1 -1
  615. package/src/icons.generated/Video.tsx +1 -1
  616. package/src/icons.generated/Warning.tsx +1 -1
  617. package/src/icons.generated/index.ts +1 -1
  618. package/src/index.ts +0 -1
  619. package/src/labs/DataFilters.tsx +36 -30
  620. package/src/labs/DataTable.tsx +20 -20
  621. package/src/labs/DatePicker.tsx +3 -1
  622. package/src/labs/Drawer.tsx +254 -0
  623. package/src/labs/GroupPicker.tsx +34 -15
  624. package/src/labs/PaginatedTable.tsx +12 -10
  625. package/src/labs/StaticTable.tsx +3 -3
  626. package/src/labs/Switch.tsx +5 -5
  627. package/src/labs/VirtualizedAutocomplete.tsx +19 -16
  628. package/src/labs/datePickerTheme.tsx +4 -2
  629. package/src/labs/index.ts +2 -0
  630. package/src/labs/materialReactTableTypes.tsx +1 -1
  631. package/src/properties/translations/odyssey-react-mui_cs.properties +3 -1
  632. package/src/properties/translations/odyssey-react-mui_da.properties +3 -1
  633. package/src/properties/translations/odyssey-react-mui_de.properties +3 -1
  634. package/src/properties/translations/odyssey-react-mui_el.properties +3 -1
  635. package/src/properties/translations/odyssey-react-mui_es.properties +3 -1
  636. package/src/properties/translations/odyssey-react-mui_fi.properties +3 -1
  637. package/src/properties/translations/odyssey-react-mui_fr.properties +3 -1
  638. package/src/properties/translations/odyssey-react-mui_hu.properties +3 -1
  639. package/src/properties/translations/odyssey-react-mui_id.properties +3 -1
  640. package/src/properties/translations/odyssey-react-mui_it.properties +3 -1
  641. package/src/properties/translations/odyssey-react-mui_ja.properties +3 -1
  642. package/src/properties/translations/odyssey-react-mui_ko.properties +3 -1
  643. package/src/properties/translations/odyssey-react-mui_ms.properties +3 -1
  644. package/src/properties/translations/odyssey-react-mui_nb.properties +3 -1
  645. package/src/properties/translations/odyssey-react-mui_nl_NL.properties +3 -1
  646. package/src/properties/translations/odyssey-react-mui_pl.properties +3 -1
  647. package/src/properties/translations/odyssey-react-mui_pt_BR.properties +3 -1
  648. package/src/properties/translations/odyssey-react-mui_ro.properties +3 -1
  649. package/src/properties/translations/odyssey-react-mui_ru.properties +3 -1
  650. package/src/properties/translations/odyssey-react-mui_sv.properties +3 -1
  651. package/src/properties/translations/odyssey-react-mui_th.properties +3 -1
  652. package/src/properties/translations/odyssey-react-mui_tr.properties +3 -1
  653. package/src/properties/translations/odyssey-react-mui_uk.properties +3 -1
  654. package/src/properties/translations/odyssey-react-mui_vi.properties +3 -1
  655. package/src/properties/translations/odyssey-react-mui_zh_CN.properties +3 -1
  656. package/src/properties/translations/odyssey-react-mui_zh_TW.properties +3 -1
  657. package/src/properties/ts/odyssey-react-mui_cs.ts +1 -1
  658. package/src/properties/ts/odyssey-react-mui_da.ts +1 -1
  659. package/src/properties/ts/odyssey-react-mui_de.ts +1 -1
  660. package/src/properties/ts/odyssey-react-mui_el.ts +1 -1
  661. package/src/properties/ts/odyssey-react-mui_es.ts +1 -1
  662. package/src/properties/ts/odyssey-react-mui_fi.ts +1 -1
  663. package/src/properties/ts/odyssey-react-mui_fr.ts +1 -1
  664. package/src/properties/ts/odyssey-react-mui_hu.ts +1 -1
  665. package/src/properties/ts/odyssey-react-mui_id.ts +1 -1
  666. package/src/properties/ts/odyssey-react-mui_it.ts +1 -1
  667. package/src/properties/ts/odyssey-react-mui_ja.ts +1 -1
  668. package/src/properties/ts/odyssey-react-mui_ko.ts +1 -1
  669. package/src/properties/ts/odyssey-react-mui_ms.ts +1 -1
  670. package/src/properties/ts/odyssey-react-mui_nb.ts +1 -1
  671. package/src/properties/ts/odyssey-react-mui_nl_NL.ts +1 -1
  672. package/src/properties/ts/odyssey-react-mui_pl.ts +1 -1
  673. package/src/properties/ts/odyssey-react-mui_pt_BR.ts +1 -1
  674. package/src/properties/ts/odyssey-react-mui_ro.ts +1 -1
  675. package/src/properties/ts/odyssey-react-mui_ru.ts +1 -1
  676. package/src/properties/ts/odyssey-react-mui_sv.ts +1 -1
  677. package/src/properties/ts/odyssey-react-mui_th.ts +1 -1
  678. package/src/properties/ts/odyssey-react-mui_tr.ts +1 -1
  679. package/src/properties/ts/odyssey-react-mui_uk.ts +1 -1
  680. package/src/properties/ts/odyssey-react-mui_vi.ts +1 -1
  681. package/src/properties/ts/odyssey-react-mui_zh_CN.ts +1 -1
  682. package/src/properties/ts/odyssey-react-mui_zh_TW.ts +1 -1
  683. package/src/theme/components.tsx +83 -16
  684. package/tsconfig.json +0 -3
package/src/HtmlProps.ts CHANGED
@@ -10,7 +10,67 @@
10
10
  * See the License for the specific language governing permissions and limitations under the License.
11
11
  */
12
12
 
13
+ import { HTMLAttributes } from "react";
14
+
13
15
  export type HtmlProps = {
16
+ /**
17
+ * Used in [ARIA live regions](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Live_Regions), the global aria-busy state indicates an element is being modified and that assistive technologies may want to wait until the changes are complete before informing the user about the update.
18
+ */
19
+ ariaBusy?: HTMLAttributes<HTMLElement>["aria-busy"];
20
+ /**
21
+ * The `aria-checked` attribute indicates the current "checked" state of checkboxes, radio buttons, and other widgets.
22
+ *
23
+ * NOTE: Where possible use an HTML `<input>` element with `type="checkbox"` and `type="radio"` as these have built in semantics and do not require ARIA attributes.
24
+ */
25
+ ariaChecked?: HTMLAttributes<HTMLElement>["aria-checked"];
26
+ /**
27
+ * The global `aria-controls` property identifies the element (or elements) whose contents or presence are controlled by the element on which this attribute is set.
28
+ *
29
+ * Value: A space-separated list of one or more ID values referencing the elements being controlled by the current element
30
+ */
31
+ ariaControls?: HTMLAttributes<HTMLElement>["aria-controls"];
32
+ /**
33
+ * The global `aria-describedby` attribute identifies the element (or elements) that describes the element on which the attribute is set.
34
+ *
35
+ * Value: The id or space-separated list of element ids that describe the current element.
36
+ *
37
+ * Note: The `aria-describedby` attribute is not designed to reference descriptions from external resources. It must reference elements in the same DOM document.
38
+ */
39
+ ariaDescribedBy?: HTMLAttributes<HTMLElement>["aria-describedby"];
40
+ /**
41
+ * The `aria-errormessage` attribute on an object identifies the element that provides an error message for that object.
42
+ *
43
+ * Value: The value of the id of the element containing the error message for the current element
44
+ */
45
+ ariaErrorMessage?: HTMLAttributes<HTMLElement>["aria-errormessage"];
46
+ /**
47
+ * The `aria-expanded` attribute is set on an element to indicate if a control is expanded or collapsed, and whether or not the controlled elements are displayed or hidden.
48
+ */
49
+ ariaExpanded?: HTMLAttributes<HTMLElement>["aria-expanded"];
50
+ /**
51
+ * The `aria-haspopup` attribute indicates the availability and type of interactive popup element that can be triggered by the element on which the attribute is set.
52
+ */
53
+ ariaHasPopup?: HTMLAttributes<HTMLElement>["aria-haspopup"];
54
+ /**
55
+ * The `aria-label` attribute defines a string value that labels an interactive element.
56
+ */
57
+ ariaLabel?: HTMLAttributes<HTMLElement>["aria-label"];
58
+ /**
59
+ * The `aria-labelledby` attribute identifies the element (or elements) that labels the element it is applied to.
60
+ *
61
+ * Value: Space separated list of one or more ID values referencing the elements that label the current element.
62
+ */
63
+ ariaLabelledBy?: HTMLAttributes<HTMLElement>["aria-labelledby"];
64
+ /**
65
+ * The `aria-pressed` attribute indicates the current "pressed" state of a toggle button.
66
+ */
67
+ ariaPressed?: HTMLAttributes<HTMLElement>["aria-pressed"];
68
+ /**
69
+ * The `tabindex` global attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable
70
+ *
71
+ * Note: Manipulating the natural tab order is generally advised against
72
+ */
73
+ tabIndex?: HTMLAttributes<HTMLElement>["tabIndex"];
14
74
  /**
15
75
  * This prop puts a `data` attribute on an HTML element in this component with the value provided.
16
76
  *
package/src/Link.tsx CHANGED
@@ -20,10 +20,6 @@ import { Link as MuiLink, LinkProps as MuiLinkProps } from "@mui/material";
20
20
  export const linkVariantValues = ["default", "monochrome"] as const;
21
21
 
22
22
  export type LinkProps = {
23
- /**
24
- * The ARIA label for the Link
25
- */
26
- ariaLabel?: string;
27
23
  /**
28
24
  * The content within the Link
29
25
  */
@@ -61,7 +57,7 @@ export type LinkProps = {
61
57
  * The visual presentation of the Link (default or monochrome)
62
58
  */
63
59
  variant?: (typeof linkVariantValues)[number];
64
- } & HtmlProps;
60
+ } & Pick<HtmlProps, "ariaLabel" | "testId" | "translate">;
65
61
 
66
62
  const Link = ({
67
63
  ariaLabel,
@@ -86,7 +82,7 @@ const Link = ({
86
82
  },
87
83
  };
88
84
  },
89
- []
85
+ [],
90
86
  );
91
87
 
92
88
  return (
@@ -34,18 +34,6 @@ import type { HtmlProps } from "./HtmlProps";
34
34
  export const menuAlignmentValues = ["left", "right"] as const;
35
35
 
36
36
  export type MenuButtonProps = {
37
- /**
38
- * The ARIA label for the Button
39
- */
40
- ariaLabel?: string;
41
- /**
42
- * The ID of the element that labels the Button
43
- */
44
- ariaLabelledBy?: string;
45
- /**
46
- * The ID of the element that describes the Button
47
- */
48
- ariaDescribedBy?: string;
49
37
  /**
50
38
  * The label on the triggering Button
51
39
  */
@@ -93,25 +81,22 @@ export type MenuButtonProps = {
93
81
  * The tooltip text for the Button if it's icon-only
94
82
  */
95
83
  tooltipText?: string;
96
- } & (
97
- | {
98
- ariaLabel?: string;
99
- ariaLabelledBy?: string;
100
- buttonLabel: string;
101
- }
102
- | {
103
- ariaLabel: string;
104
- ariaLabelledBy?: string;
105
- buttonLabel?: undefined | "";
106
- }
107
- | {
108
- ariaLabel?: string;
109
- ariaLabelledBy: string;
110
- buttonLabel?: undefined | "";
111
- }
112
- ) &
84
+ } & Pick<
85
+ HtmlProps,
86
+ "ariaDescribedBy" | "ariaLabel" | "ariaLabelledBy" | "testId" | "translate"
87
+ > &
113
88
  Pick<FieldComponentProps, "isDisabled"> &
114
- HtmlProps;
89
+ (
90
+ | { buttonLabel: string }
91
+ | (Required<Pick<HtmlProps, "ariaLabelledBy">> &
92
+ Partial<Pick<HtmlProps, "ariaLabel">> & {
93
+ buttonLabel?: undefined | "";
94
+ })
95
+ | (Required<Pick<HtmlProps, "ariaLabel">> &
96
+ Partial<Pick<HtmlProps, "ariaLabelledBy">> & {
97
+ buttonLabel?: undefined | "";
98
+ })
99
+ );
115
100
 
116
101
  const MenuButton = ({
117
102
  ariaLabel,
@@ -147,7 +132,7 @@ const MenuButton = ({
147
132
 
148
133
  const menuListProps = useMemo(
149
134
  () => ({ "aria-labelledby": `${uniqueId}-button` }),
150
- [uniqueId]
135
+ [uniqueId],
151
136
  );
152
137
 
153
138
  const providerValue = useMemo<MenuContextType>(
@@ -156,7 +141,7 @@ const MenuButton = ({
156
141
  openMenu,
157
142
  shouldCloseOnSelect,
158
143
  }),
159
- [closeMenu, openMenu, shouldCloseOnSelect]
144
+ [closeMenu, openMenu, shouldCloseOnSelect],
160
145
  );
161
146
 
162
147
  const endIcon = endIconProp ? (
@@ -172,8 +157,8 @@ const MenuButton = ({
172
157
  ({
173
158
  horizontal: menuAlignment,
174
159
  vertical: "bottom",
175
- } as PopoverOrigin),
176
- [menuAlignment]
160
+ }) as PopoverOrigin,
161
+ [menuAlignment],
177
162
  );
178
163
 
179
164
  const transformOrigin = useMemo(
@@ -181,8 +166,8 @@ const MenuButton = ({
181
166
  ({
182
167
  horizontal: menuAlignment,
183
168
  vertical: "top",
184
- } as PopoverOrigin),
185
- [menuAlignment]
169
+ }) as PopoverOrigin,
170
+ [menuAlignment],
186
171
  );
187
172
 
188
173
  return (
package/src/MenuItem.tsx CHANGED
@@ -51,7 +51,7 @@ export type MenuItemProps = {
51
51
  * - "destructive": A variant indicating a destructive action.
52
52
  */
53
53
  variant?: "default" | "destructive";
54
- } & HtmlProps;
54
+ } & Pick<HtmlProps, "testId">;
55
55
 
56
56
  const MenuItem = ({
57
57
  children,
@@ -72,7 +72,7 @@ const MenuItem = ({
72
72
  closeMenu();
73
73
  }
74
74
  },
75
- [onClickProp, closeMenu, shouldCloseOnSelect]
75
+ [onClickProp, closeMenu, shouldCloseOnSelect],
76
76
  );
77
77
 
78
78
  return (
@@ -25,7 +25,7 @@ const MuiPropsChild = forwardRef<HTMLElement, MuiPropsChildProps>(
25
25
  ...muiProps,
26
26
  ref,
27
27
  }),
28
- [muiProps, ref]
28
+ [muiProps, ref],
29
29
  );
30
30
 
31
31
  return (
@@ -33,7 +33,7 @@ const MuiPropsChild = forwardRef<HTMLElement, MuiPropsChildProps>(
33
33
  {children}
34
34
  </MuiPropsContext.Provider>
35
35
  );
36
- }
36
+ },
37
37
  );
38
38
 
39
39
  const MemoizedMuiPropsChild = memo(MuiPropsChild);
@@ -25,7 +25,10 @@ import {
25
25
  SelectProps as MuiSelectProps,
26
26
  } from "@mui/material";
27
27
  import { Field } from "./Field";
28
- import { FieldComponentProps } from "./FieldComponentProps";
28
+ import {
29
+ FieldComponentProps,
30
+ FieldComponentRenderProps,
31
+ } from "./FieldComponentProps";
29
32
  import type { HtmlProps } from "./HtmlProps";
30
33
  import { FocusHandle, getControlState, useInputValues } from "./inputUtils";
31
34
 
@@ -40,7 +43,7 @@ export type NativeSelectValueType<HasMultipleChoices> =
40
43
 
41
44
  export type NativeSelectProps<
42
45
  Value extends NativeSelectValueType<HasMultipleChoices>,
43
- HasMultipleChoices extends boolean
46
+ HasMultipleChoices extends boolean,
44
47
  > = {
45
48
  /**
46
49
  * This prop helps users to fill forms faster, especially on mobile devices.
@@ -92,7 +95,6 @@ export type NativeSelectProps<
92
95
  value?: Value;
93
96
  } & Pick<
94
97
  FieldComponentProps,
95
- | "ariaDescribedBy"
96
98
  | "errorMessage"
97
99
  | "errorMessageList"
98
100
  | "hint"
@@ -102,12 +104,17 @@ export type NativeSelectProps<
102
104
  | "isFullWidth"
103
105
  | "isOptional"
104
106
  > &
105
- HtmlProps;
107
+ Pick<HtmlProps, "ariaDescribedBy" | "testId" | "translate">;
108
+
109
+ type NativeSelectRenderProps = Partial<
110
+ Pick<FieldComponentRenderProps, "ariaDescribedBy" | "errorMessageElementId">
111
+ > &
112
+ Pick<FieldComponentRenderProps, "labelElementId">;
106
113
 
107
114
  const NativeSelect = forwardRef(
108
115
  <
109
116
  Value extends NativeSelectValueType<HasMultipleChoices>,
110
- HasMultipleChoices extends boolean
117
+ HasMultipleChoices extends boolean,
111
118
  >(
112
119
  {
113
120
  ariaDescribedBy,
@@ -133,13 +140,13 @@ const NativeSelect = forwardRef(
133
140
  value,
134
141
  children,
135
142
  }: NativeSelectProps<Value, HasMultipleChoices>,
136
- ref?: React.Ref<ReactElement>
143
+ ref?: React.Ref<ReactElement>,
137
144
  ) => {
138
145
  const controlledStateRef = useRef(
139
146
  getControlState({
140
147
  controlledValue: value,
141
148
  uncontrolledValue: defaultValue,
142
- })
149
+ }),
143
150
  );
144
151
  const localInputRef = useRef<HTMLSelectElement>(null);
145
152
 
@@ -152,7 +159,7 @@ const NativeSelect = forwardRef(
152
159
  },
153
160
  };
154
161
  },
155
- []
162
+ [],
156
163
  );
157
164
 
158
165
  const inputValues = useInputValues({
@@ -167,7 +174,7 @@ const NativeSelect = forwardRef(
167
174
  (event, child) => {
168
175
  onChangeProp?.(event, child);
169
176
  },
170
- [onChangeProp]
177
+ [onChangeProp],
171
178
  );
172
179
 
173
180
  const hasMultipleChoices = useMemo(
@@ -175,10 +182,14 @@ const NativeSelect = forwardRef(
175
182
  hasMultipleChoicesProp === undefined
176
183
  ? isMultiSelect
177
184
  : hasMultipleChoicesProp,
178
- [hasMultipleChoicesProp, isMultiSelect]
185
+ [hasMultipleChoicesProp, isMultiSelect],
179
186
  );
180
187
  const renderFieldComponent = useCallback(
181
- ({ ariaDescribedBy, errorMessageElementId, labelElementId }) => (
188
+ ({
189
+ ariaDescribedBy,
190
+ errorMessageElementId,
191
+ labelElementId,
192
+ }: NativeSelectRenderProps) => (
182
193
  <MuiSelect
183
194
  {...inputValues}
184
195
  aria-describedby={ariaDescribedBy}
@@ -213,7 +224,7 @@ const NativeSelect = forwardRef(
213
224
  ref,
214
225
  testId,
215
226
  translate,
216
- ]
227
+ ],
217
228
  );
218
229
 
219
230
  return (
@@ -233,7 +244,7 @@ const NativeSelect = forwardRef(
233
244
  renderFieldComponent={renderFieldComponent}
234
245
  />
235
246
  );
236
- }
247
+ },
237
248
  );
238
249
 
239
250
  const MemoizedNativeSelect = memo(NativeSelect);
@@ -21,8 +21,8 @@ describe("OdysseyCacheProvider", () => {
21
21
  render(
22
22
  <OdysseyCacheProvider>
23
23
  <div />
24
- </OdysseyCacheProvider>
25
- )
24
+ </OdysseyCacheProvider>,
25
+ ),
26
26
  ).not.toThrow();
27
27
  });
28
28
 
@@ -30,7 +30,7 @@ describe("OdysseyCacheProvider", () => {
30
30
  render(
31
31
  <OdysseyCacheProvider>
32
32
  <Button label="text" variant="primary" />
33
- </OdysseyCacheProvider>
33
+ </OdysseyCacheProvider>,
34
34
  );
35
35
 
36
36
  expect(screen.queryByRole("button")).toHaveTextContent("text");
@@ -28,7 +28,7 @@ import {
28
28
  import { DefaultSupportedLanguages } from "./OdysseyTranslationProvider.types";
29
29
 
30
30
  export type OdysseyProviderProps<
31
- SupportedLanguages extends string = DefaultSupportedLanguages
31
+ SupportedLanguages extends string = DefaultSupportedLanguages,
32
32
  > = OdysseyCacheProviderProps &
33
33
  OdysseyThemeProviderProps &
34
34
  OdysseyTranslationProviderProps<SupportedLanguages> & {
@@ -54,10 +54,8 @@ const OdysseyProvider = <SupportedLanguages extends string>({
54
54
  >
55
55
  <OdysseyThemeProvider
56
56
  designTokensOverride={designTokensOverride}
57
- emotionRoot={emotionRoot}
58
57
  shadowDomElement={shadowDomElement}
59
58
  themeOverride={themeOverride}
60
- withCache={false}
61
59
  >
62
60
  <ScopedCssBaseline>
63
61
  <OdysseyTranslationProvider<SupportedLanguages>
@@ -21,30 +21,28 @@ import { deepmerge } from "@mui/utils";
21
21
  import { createOdysseyMuiTheme, DesignTokensOverride } from "./theme";
22
22
  import * as Tokens from "@okta/odyssey-design-tokens";
23
23
  import { OdysseyDesignTokensContext } from "./OdysseyDesignTokensContext";
24
- import { CacheProvider } from "@emotion/react";
25
- import createCache from "@emotion/cache";
26
- import { useUniqueAlphabeticalId } from "./useUniqueAlphabeticalId";
27
24
 
28
25
  export type OdysseyThemeProviderProps = {
29
26
  children: ReactNode;
30
27
  designTokensOverride?: DesignTokensOverride;
31
- emotionRoot?: HTMLStyleElement;
32
28
  shadowDomElement?: HTMLDivElement | HTMLElement | undefined;
33
29
  themeOverride?: ThemeOptions;
34
- withCache?: boolean;
35
30
  };
36
31
 
32
+ /**
33
+ * This function doesn't include the Emotion Cache or Translations. You should probably be using `OdysseyProvider`.
34
+ *
35
+ * Some teams have a need to wrap separately (SIW), but most teams will never need to use this explicitly.
36
+ */
37
37
  const OdysseyThemeProvider = ({
38
38
  children,
39
39
  designTokensOverride,
40
- emotionRoot,
41
40
  shadowDomElement,
42
41
  themeOverride,
43
- withCache = true,
44
42
  }: OdysseyThemeProviderProps) => {
45
43
  const odysseyTokens = useMemo(
46
44
  () => ({ ...Tokens, ...designTokensOverride }),
47
- [designTokensOverride]
45
+ [designTokensOverride],
48
46
  );
49
47
  const odysseyTheme = useMemo(
50
48
  () =>
@@ -52,39 +50,14 @@ const OdysseyThemeProvider = ({
52
50
  odysseyTokens,
53
51
  shadowDomElement,
54
52
  }),
55
- [odysseyTokens, shadowDomElement]
53
+ [odysseyTokens, shadowDomElement],
56
54
  );
57
55
 
58
56
  const customOdysseyTheme = useMemo(
59
57
  () => themeOverride && createTheme(deepmerge(odysseyTheme, themeOverride)),
60
- [odysseyTheme, themeOverride]
61
- );
62
-
63
- const uniqueAlphabeticalId = useUniqueAlphabeticalId();
64
-
65
- const cache = useMemo(
66
- () =>
67
- createCache({
68
- ...(emotionRoot && { container: emotionRoot }),
69
- key: uniqueAlphabeticalId,
70
- prepend: true,
71
- nonce: window.cspNonce,
72
- speedy: false, // <-- Needs to be set to false when shadow-dom is used!! https://github.com/emotion-js/emotion/issues/2053#issuecomment-713429122
73
- }),
74
- [emotionRoot, uniqueAlphabeticalId]
58
+ [odysseyTheme, themeOverride],
75
59
  );
76
60
 
77
- if (withCache) {
78
- return (
79
- <CacheProvider value={cache}>
80
- <MuiThemeProvider theme={customOdysseyTheme ?? odysseyTheme}>
81
- <OdysseyDesignTokensContext.Provider value={odysseyTokens}>
82
- {children}
83
- </OdysseyDesignTokensContext.Provider>
84
- </MuiThemeProvider>
85
- </CacheProvider>
86
- );
87
- }
88
61
  return (
89
62
  <MuiThemeProvider theme={customOdysseyTheme ?? odysseyTheme}>
90
63
  <OdysseyDesignTokensContext.Provider value={odysseyTokens}>
@@ -20,7 +20,7 @@ describe("OdysseyTranslationProvider", () => {
20
20
  render(
21
21
  <OdysseyTranslationProvider>
22
22
  <span>{odysseyTranslate("fieldlabel.optional.text")}</span>
23
- </OdysseyTranslationProvider>
23
+ </OdysseyTranslationProvider>,
24
24
  );
25
25
 
26
26
  expect(screen.getByText("Optional"));
@@ -30,7 +30,7 @@ describe("OdysseyTranslationProvider", () => {
30
30
  render(
31
31
  <OdysseyTranslationProvider languageCode="test">
32
32
  <span>{odysseyTranslate("fieldlabel.optional.text")}</span>
33
- </OdysseyTranslationProvider>
33
+ </OdysseyTranslationProvider>,
34
34
  );
35
35
 
36
36
  expect(screen.getByText("Optional"));
@@ -50,11 +50,11 @@ describe("OdysseyTranslationProvider", () => {
50
50
  translationOverrides={translationOverrides}
51
51
  >
52
52
  <TextField label="" isOptional />
53
- </OdysseyTranslationProvider>
53
+ </OdysseyTranslationProvider>,
54
54
  );
55
55
 
56
56
  expect(
57
- screen.getByText("\u063A\u064A\u0631 \u0645\u0637\u0644\u0648\u0628")
57
+ screen.getByText("\u063A\u064A\u0631 \u0645\u0637\u0644\u0648\u0628"),
58
58
  );
59
59
  });
60
60
 
@@ -68,7 +68,7 @@ describe("OdysseyTranslationProvider", () => {
68
68
  render(
69
69
  <OdysseyTranslationProvider translationOverrides={translationOverrides}>
70
70
  <TextField label="" isOptional />
71
- </OdysseyTranslationProvider>
71
+ </OdysseyTranslationProvider>,
72
72
  );
73
73
 
74
74
  expect(screen.getByText("Non Required"));
@@ -87,7 +87,7 @@ describe("OdysseyTranslationProvider", () => {
87
87
  translationOverrides={translationOverrides}
88
88
  >
89
89
  <TextField label="" isOptional />
90
- </OdysseyTranslationProvider>
90
+ </OdysseyTranslationProvider>,
91
91
  );
92
92
 
93
93
  expect(screen.getByText("Optionnel"));
@@ -22,12 +22,12 @@ export type OdysseyI18nResourceKeys = (typeof resources)["en"];
22
22
  export const odysseyI18nResourceKeysList = getTypedObjectKeys(resources["en"]);
23
23
 
24
24
  export type TranslationOverrides<
25
- SupportedLanguages extends string = DefaultSupportedLanguages
25
+ SupportedLanguages extends string = DefaultSupportedLanguages,
26
26
  > = Record<SupportedLanguages, Partial<OdysseyI18nResourceKeys>>;
27
27
 
28
28
  const mergeBundleOverrides = <SupportedLanguages extends string>(
29
29
  languageCode: SupportedLanguages,
30
- translationOverrides: TranslationOverrides<SupportedLanguages>
30
+ translationOverrides: TranslationOverrides<SupportedLanguages>,
31
31
  ) => {
32
32
  const translationStrings = resources[languageCode] || {};
33
33
  const translationStringOverrides = translationOverrides[languageCode];
@@ -38,7 +38,7 @@ const mergeBundleOverrides = <SupportedLanguages extends string>(
38
38
  };
39
39
 
40
40
  export type OdysseyTranslationProviderProps<
41
- SupportedLanguages extends string = DefaultSupportedLanguages
41
+ SupportedLanguages extends string = DefaultSupportedLanguages,
42
42
  > = {
43
43
  children: ReactNode;
44
44
  languageCode?: SupportedLanguages | DefaultSupportedLanguages;
@@ -46,7 +46,7 @@ export type OdysseyTranslationProviderProps<
46
46
  };
47
47
 
48
48
  const formatLanguageCodeToHyphenated = <SupportedLanguages extends string>(
49
- languageCode: OdysseyTranslationProviderProps<SupportedLanguages>["languageCode"]
49
+ languageCode: OdysseyTranslationProviderProps<SupportedLanguages>["languageCode"],
50
50
  ) => languageCode?.replaceAll("_", "-");
51
51
 
52
52
  export const OdysseyTranslationProvider = <SupportedLanguages extends string>({
@@ -61,13 +61,13 @@ export const OdysseyTranslationProvider = <SupportedLanguages extends string>({
61
61
  const changeHtmlElementLanguageAttribute = () => {
62
62
  window.document.documentElement.setAttribute(
63
63
  "lang",
64
- normalizedLanguageCode || "en"
64
+ normalizedLanguageCode || "en",
65
65
  );
66
66
  };
67
67
  // Defaults to the browser's language if available otherwise `en` will be used
68
68
  i18n.changeLanguage(
69
69
  languageCode || window.navigator.language,
70
- changeHtmlElementLanguageAttribute
70
+ changeHtmlElementLanguageAttribute,
71
71
  );
72
72
  }, [languageCode]);
73
73
 
@@ -76,7 +76,7 @@ export const OdysseyTranslationProvider = <SupportedLanguages extends string>({
76
76
  getTypedObjectKeys(translationOverrides).forEach((language) => {
77
77
  const bundle = mergeBundleOverrides<SupportedLanguages>(
78
78
  language,
79
- translationOverrides
79
+ translationOverrides,
80
80
  );
81
81
  i18n.addResourceBundle(language, defaultNS, bundle);
82
82
  });
@@ -24,7 +24,10 @@ import {
24
24
 
25
25
  import { ShowIcon, HideIcon } from "./icons.generated";
26
26
  import { Field } from "./Field";
27
- import { FieldComponentProps } from "./FieldComponentProps";
27
+ import {
28
+ FieldComponentProps,
29
+ FieldComponentRenderProps,
30
+ } from "./FieldComponentProps";
28
31
  import type { HtmlProps } from "./HtmlProps";
29
32
  import { useTranslation } from "react-i18next";
30
33
  import { FocusHandle, getControlState, useInputValues } from "./inputUtils";
@@ -77,7 +80,12 @@ export type PasswordFieldProps = {
77
80
  */
78
81
  value?: string;
79
82
  } & FieldComponentProps &
80
- HtmlProps;
83
+ Pick<HtmlProps, "ariaDescribedBy" | "testId" | "translate">;
84
+
85
+ type FieldRenderProps = Partial<
86
+ Pick<FieldComponentRenderProps, "ariaDescribedBy" | "errorMessageElementId">
87
+ > &
88
+ Pick<FieldComponentRenderProps, "id" | "labelElementId">;
81
89
 
82
90
  const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
83
91
  (
@@ -106,14 +114,14 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
106
114
  translate,
107
115
  value,
108
116
  },
109
- ref
117
+ ref,
110
118
  ) => {
111
119
  const { t } = useTranslation();
112
120
  const [inputType, setInputType] = useState("password");
113
121
 
114
122
  const togglePasswordVisibility = useCallback(() => {
115
123
  setInputType((inputType) =>
116
- inputType === "password" ? "text" : "password"
124
+ inputType === "password" ? "text" : "password",
117
125
  );
118
126
  }, []);
119
127
 
@@ -121,7 +129,7 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
121
129
  getControlState({
122
130
  controlledValue: value,
123
131
  uncontrolledValue: defaultValue,
124
- })
132
+ }),
125
133
  );
126
134
  const inputValues = useInputValues({
127
135
  defaultValue,
@@ -139,7 +147,7 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
139
147
  },
140
148
  };
141
149
  },
142
- []
150
+ [],
143
151
  );
144
152
 
145
153
  const onChange = useCallback<
@@ -148,11 +156,16 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
148
156
  (event) => {
149
157
  onChangeProp?.(event);
150
158
  },
151
- [onChangeProp]
159
+ [onChangeProp],
152
160
  );
153
161
 
154
162
  const renderFieldComponent = useCallback(
155
- ({ ariaDescribedBy, errorMessageElementId, id, labelElementId }) => (
163
+ ({
164
+ ariaDescribedBy,
165
+ errorMessageElementId,
166
+ id,
167
+ labelElementId,
168
+ }: FieldRenderProps) => (
156
169
  <InputBase
157
170
  {...inputValues}
158
171
  aria-describedby={ariaDescribedBy}
@@ -216,7 +229,7 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
216
229
  ref,
217
230
  testId,
218
231
  translate,
219
- ]
232
+ ],
220
233
  );
221
234
 
222
235
  return (
@@ -235,7 +248,7 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
235
248
  renderFieldComponent={renderFieldComponent}
236
249
  />
237
250
  );
238
- }
251
+ },
239
252
  );
240
253
 
241
254
  const MemoizedPasswordField = memo(PasswordField);