@okta/odyssey-react-mui 1.45.0 → 1.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1069) hide show
  1. package/dist/cjs/Autocomplete.cjs +3 -33
  2. package/dist/cjs/Autocomplete.cjs.map +1 -1
  3. package/dist/cjs/Banner.cjs +2 -2
  4. package/dist/cjs/Banner.cjs.map +1 -1
  5. package/dist/cjs/Breadcrumbs.cjs +2 -2
  6. package/dist/cjs/Breadcrumbs.cjs.map +1 -1
  7. package/dist/cjs/Callout.cjs +3 -27
  8. package/dist/cjs/Callout.cjs.map +1 -1
  9. package/dist/cjs/Card.cjs +2 -2
  10. package/dist/cjs/Card.cjs.map +1 -1
  11. package/dist/cjs/Checkbox.cjs +14 -12
  12. package/dist/cjs/Checkbox.cjs.map +1 -1
  13. package/dist/cjs/DataTable/DataTable.cjs +2 -2
  14. package/dist/cjs/DataTable/DataTable.cjs.map +1 -1
  15. package/dist/cjs/DataTable/DataTableRowActions.cjs +6 -6
  16. package/dist/cjs/DataTable/DataTableRowActions.cjs.map +1 -1
  17. package/dist/cjs/DataTable/DataTableSettings.cjs +2 -2
  18. package/dist/cjs/DataTable/DataTableSettings.cjs.map +1 -1
  19. package/dist/cjs/DataTable/useRowReordering.cjs +2 -2
  20. package/dist/cjs/DataTable/useRowReordering.cjs.map +1 -1
  21. package/dist/cjs/DatePickers/DateField.cjs +2 -2
  22. package/dist/cjs/DatePickers/DateField.cjs.map +1 -1
  23. package/dist/cjs/DatePickers/DateFieldActionBar.cjs +2 -2
  24. package/dist/cjs/DatePickers/DateFieldActionBar.cjs.map +1 -1
  25. package/dist/cjs/DatePickers/DatePicker.cjs +2 -2
  26. package/dist/cjs/DatePickers/DatePicker.cjs.map +1 -1
  27. package/dist/cjs/DatePickers/useDateFieldsTranslations.cjs +2 -2
  28. package/dist/cjs/DatePickers/useDateFieldsTranslations.cjs.map +1 -1
  29. package/dist/cjs/DatePickers/useOdysseyDateFields.cjs +2 -2
  30. package/dist/cjs/DatePickers/useOdysseyDateFields.cjs.map +1 -1
  31. package/dist/cjs/Dialog.cjs +34 -31
  32. package/dist/cjs/Dialog.cjs.map +1 -1
  33. package/dist/cjs/Drawer.cjs +8 -4
  34. package/dist/cjs/Drawer.cjs.map +1 -1
  35. package/dist/cjs/Field.cjs +2 -2
  36. package/dist/cjs/Field.cjs.map +1 -1
  37. package/dist/cjs/FieldError.cjs +2 -2
  38. package/dist/cjs/FieldError.cjs.map +1 -1
  39. package/dist/cjs/FieldLabel.cjs +2 -2
  40. package/dist/cjs/FieldLabel.cjs.map +1 -1
  41. package/dist/cjs/FileUploader/FileUploadPreview.cjs +2 -2
  42. package/dist/cjs/FileUploader/FileUploadPreview.cjs.map +1 -1
  43. package/dist/cjs/FileUploader/FileUploader.cjs +2 -2
  44. package/dist/cjs/FileUploader/FileUploader.cjs.map +1 -1
  45. package/dist/cjs/FullScreenOverlay.cjs +40 -0
  46. package/dist/cjs/FullScreenOverlay.cjs.map +1 -0
  47. package/dist/cjs/FullScreenOverlayContext.cjs +72 -0
  48. package/dist/cjs/FullScreenOverlayContext.cjs.map +1 -0
  49. package/dist/cjs/OdysseyCacheProvider.cjs +12 -17
  50. package/dist/cjs/OdysseyCacheProvider.cjs.map +1 -1
  51. package/dist/cjs/OdysseyProvider.cjs +18 -10
  52. package/dist/cjs/OdysseyProvider.cjs.map +1 -1
  53. package/dist/cjs/OdysseyThemeProvider.cjs +27 -16
  54. package/dist/cjs/OdysseyThemeProvider.cjs.map +1 -1
  55. package/dist/cjs/OdysseyThemeProviderPropsContext.cjs +44 -0
  56. package/dist/cjs/OdysseyThemeProviderPropsContext.cjs.map +1 -0
  57. package/dist/cjs/Pagination/Pagination.cjs +2 -3
  58. package/dist/cjs/Pagination/Pagination.cjs.map +1 -1
  59. package/dist/cjs/Pagination/usePagination.cjs +2 -2
  60. package/dist/cjs/Pagination/usePagination.cjs.map +1 -1
  61. package/dist/cjs/PasswordField.cjs +2 -2
  62. package/dist/cjs/PasswordField.cjs.map +1 -1
  63. package/dist/cjs/Radio.cjs +22 -20
  64. package/dist/cjs/Radio.cjs.map +1 -1
  65. package/dist/cjs/SearchField.cjs +2 -2
  66. package/dist/cjs/SearchField.cjs.map +1 -1
  67. package/dist/cjs/Select.cjs +1 -37
  68. package/dist/cjs/Select.cjs.map +1 -1
  69. package/dist/cjs/Surface.cjs +3 -3
  70. package/dist/cjs/Surface.cjs.map +1 -1
  71. package/dist/cjs/Switch.cjs +2 -2
  72. package/dist/cjs/Switch.cjs.map +1 -1
  73. package/dist/cjs/Tabs.cjs +1 -21
  74. package/dist/cjs/Tabs.cjs.map +1 -1
  75. package/dist/cjs/Tag.cjs +2 -2
  76. package/dist/cjs/Tag.cjs.map +1 -1
  77. package/dist/cjs/TextField.cjs +1 -26
  78. package/dist/cjs/TextField.cjs.map +1 -1
  79. package/dist/cjs/Toast.cjs +2 -2
  80. package/dist/cjs/Toast.cjs.map +1 -1
  81. package/dist/cjs/__internal.cjs +149 -0
  82. package/dist/cjs/__internal.cjs.map +1 -0
  83. package/dist/cjs/i18n.generated/i18n.cjs +35 -0
  84. package/dist/cjs/i18n.generated/i18n.cjs.map +1 -0
  85. package/dist/cjs/i18n.generated/i18n.resources.cjs +81 -0
  86. package/dist/cjs/i18n.generated/i18n.resources.cjs.map +1 -0
  87. package/dist/{esm/shadow-dom/index.js → cjs/i18n.generated/i18n.types.cjs} +9 -4
  88. package/dist/cjs/i18n.generated/i18n.types.cjs.map +1 -0
  89. package/dist/cjs/index.cjs +49 -30
  90. package/dist/cjs/index.cjs.map +1 -1
  91. package/dist/cjs/labs/DataFilters.cjs +4 -4
  92. package/dist/cjs/labs/DataFilters.cjs.map +1 -1
  93. package/dist/cjs/labs/DataTable.cjs +2 -2
  94. package/dist/cjs/labs/DataTable.cjs.map +1 -1
  95. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs +2 -2
  96. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs.map +1 -1
  97. package/dist/cjs/labs/DataView/DataCard.cjs +2 -2
  98. package/dist/cjs/labs/DataView/DataCard.cjs.map +1 -1
  99. package/dist/cjs/labs/DataView/DataView.cjs +2 -2
  100. package/dist/cjs/labs/DataView/DataView.cjs.map +1 -1
  101. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs +2 -2
  102. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs.map +1 -1
  103. package/dist/cjs/labs/DataView/RowActions.cjs +2 -2
  104. package/dist/cjs/labs/DataView/RowActions.cjs.map +1 -1
  105. package/dist/cjs/labs/DataView/TableLayoutContent.cjs +2 -2
  106. package/dist/cjs/labs/DataView/TableLayoutContent.cjs.map +1 -1
  107. package/dist/cjs/labs/DataView/TableSettings.cjs +2 -2
  108. package/dist/cjs/labs/DataView/TableSettings.cjs.map +1 -1
  109. package/dist/cjs/labs/DataView/fetchData.cjs +2 -2
  110. package/dist/cjs/labs/DataView/fetchData.cjs.map +1 -1
  111. package/dist/cjs/labs/DatePickers/DateTimeField.cjs +2 -2
  112. package/dist/cjs/labs/DatePickers/DateTimeField.cjs.map +1 -1
  113. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs +2 -2
  114. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs.map +1 -1
  115. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs +2 -2
  116. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs.map +1 -1
  117. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs +4 -0
  118. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs.map +1 -1
  119. package/dist/cjs/labs/PageTemplate/Layout.cjs +2 -2
  120. package/dist/cjs/labs/PageTemplate/Layout.cjs.map +1 -1
  121. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs.map +1 -1
  122. package/dist/cjs/labs/PaginatedTable.cjs +4 -4
  123. package/dist/cjs/labs/PaginatedTable.cjs.map +1 -1
  124. package/dist/cjs/labs/StaticTable.cjs +2 -2
  125. package/dist/cjs/labs/StaticTable.cjs.map +1 -1
  126. package/dist/cjs/properties/ts/odyssey-react-mui.cjs.map +1 -1
  127. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs +5 -0
  128. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs.map +1 -1
  129. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs +5 -0
  130. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs.map +1 -1
  131. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs +6 -1
  132. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs.map +1 -1
  133. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs +5 -0
  134. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs.map +1 -1
  135. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs +5 -0
  136. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs.map +1 -1
  137. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs +5 -0
  138. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs.map +1 -1
  139. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs +5 -0
  140. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs.map +1 -1
  141. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs +5 -0
  142. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs.map +1 -1
  143. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs +5 -0
  144. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs.map +1 -1
  145. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs +5 -0
  146. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs.map +1 -1
  147. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs +5 -0
  148. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs.map +1 -1
  149. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs +5 -0
  150. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs.map +1 -1
  151. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs +5 -0
  152. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs.map +1 -1
  153. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs +5 -0
  154. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs.map +1 -1
  155. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs +5 -0
  156. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs.map +1 -1
  157. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs +5 -0
  158. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs.map +1 -1
  159. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs +5 -0
  160. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs.map +1 -1
  161. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs.map +1 -1
  162. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs.map +1 -1
  163. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs +5 -0
  164. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs.map +1 -1
  165. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs +5 -0
  166. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs.map +1 -1
  167. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs +5 -0
  168. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs.map +1 -1
  169. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs +5 -0
  170. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs.map +1 -1
  171. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs +5 -0
  172. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs.map +1 -1
  173. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs +5 -0
  174. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs.map +1 -1
  175. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs +5 -0
  176. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs.map +1 -1
  177. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs +5 -0
  178. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs.map +1 -1
  179. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs +5 -0
  180. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs.map +1 -1
  181. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs +5 -0
  182. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs.map +1 -1
  183. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs +5 -0
  184. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs.map +1 -1
  185. package/dist/cjs/test-selectors/AutocompleteTestSelector.cjs +49 -0
  186. package/dist/cjs/test-selectors/AutocompleteTestSelector.cjs.map +1 -0
  187. package/dist/cjs/test-selectors/CalloutTestSelector.cjs +43 -0
  188. package/dist/cjs/test-selectors/CalloutTestSelector.cjs.map +1 -0
  189. package/dist/cjs/test-selectors/SelectTestSelector.cjs +55 -0
  190. package/dist/cjs/test-selectors/SelectTestSelector.cjs.map +1 -0
  191. package/dist/cjs/{OdysseyTranslationProvider.types.cjs → test-selectors/TabsTestSelector.cjs} +23 -4
  192. package/dist/cjs/test-selectors/TabsTestSelector.cjs.map +1 -0
  193. package/dist/cjs/test-selectors/TextFieldTestSelector.cjs +44 -0
  194. package/dist/cjs/test-selectors/TextFieldTestSelector.cjs.map +1 -0
  195. package/dist/cjs/test-selectors/index.cjs +11 -0
  196. package/dist/cjs/test-selectors/index.cjs.map +1 -1
  197. package/dist/cjs/test-selectors/queryOdysseySelector.cjs +10 -10
  198. package/dist/cjs/test-selectors/queryOdysseySelector.cjs.map +1 -1
  199. package/dist/cjs/theme/components.cjs +5 -5
  200. package/dist/cjs/theme/components.cjs.map +1 -1
  201. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +2 -12
  202. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -1
  203. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs +20 -15
  204. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs.map +1 -1
  205. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +137 -136
  206. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  207. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs +2 -2
  208. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs.map +1 -1
  209. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +7 -4
  210. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
  211. package/dist/cjs/ui-shell/SideNav/SideNavItemContentContext.cjs.map +1 -1
  212. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +3 -4
  213. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
  214. package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs +47 -0
  215. package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs.map +1 -0
  216. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +2 -2
  217. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
  218. package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs +2 -2
  219. package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs.map +1 -1
  220. package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs +2 -2
  221. package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs.map +1 -1
  222. package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
  223. package/dist/cjs/ui-shell/UiShell.cjs +4 -4
  224. package/dist/cjs/ui-shell/UiShell.cjs.map +1 -1
  225. package/dist/cjs/ui-shell/WideUiShellContent.cjs +2 -1
  226. package/dist/cjs/ui-shell/WideUiShellContent.cjs.map +1 -1
  227. package/dist/cjs/ui-shell/uiShellContentTypes.cjs +2 -1
  228. package/dist/cjs/ui-shell/uiShellContentTypes.cjs.map +1 -1
  229. package/dist/cjs/{shadow-dom/shadow-dom.cjs → web-component/createShadowDomElements.cjs} +8 -3
  230. package/dist/cjs/web-component/createShadowDomElements.cjs.map +1 -0
  231. package/dist/cjs/web-component/index.cjs +33 -0
  232. package/dist/cjs/web-component/index.cjs.map +1 -1
  233. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
  234. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
  235. package/dist/cjs/web-component/removeGlobalStylesFromShadowDom.cjs +35 -0
  236. package/dist/cjs/web-component/removeGlobalStylesFromShadowDom.cjs.map +1 -0
  237. package/dist/cjs/web-component/renderReactInWebComponent.cjs +5 -9
  238. package/dist/cjs/web-component/renderReactInWebComponent.cjs.map +1 -1
  239. package/dist/esm/Autocomplete.js +1 -31
  240. package/dist/esm/Autocomplete.js.map +1 -1
  241. package/dist/esm/Banner.js +1 -1
  242. package/dist/esm/Banner.js.map +1 -1
  243. package/dist/esm/Breadcrumbs.js +1 -1
  244. package/dist/esm/Breadcrumbs.js.map +1 -1
  245. package/dist/esm/Callout.js +1 -25
  246. package/dist/esm/Callout.js.map +1 -1
  247. package/dist/esm/Card.js +1 -1
  248. package/dist/esm/Card.js.map +1 -1
  249. package/dist/esm/Checkbox.js +13 -11
  250. package/dist/esm/Checkbox.js.map +1 -1
  251. package/dist/esm/DataTable/DataTable.js +1 -1
  252. package/dist/esm/DataTable/DataTable.js.map +1 -1
  253. package/dist/esm/DataTable/DataTableRowActions.js +1 -1
  254. package/dist/esm/DataTable/DataTableRowActions.js.map +1 -1
  255. package/dist/esm/DataTable/DataTableSettings.js +1 -1
  256. package/dist/esm/DataTable/DataTableSettings.js.map +1 -1
  257. package/dist/esm/DataTable/useRowReordering.js +1 -1
  258. package/dist/esm/DataTable/useRowReordering.js.map +1 -1
  259. package/dist/esm/DatePickers/DateField.js +1 -1
  260. package/dist/esm/DatePickers/DateField.js.map +1 -1
  261. package/dist/esm/DatePickers/DateFieldActionBar.js +1 -1
  262. package/dist/esm/DatePickers/DateFieldActionBar.js.map +1 -1
  263. package/dist/esm/DatePickers/DatePicker.js +1 -1
  264. package/dist/esm/DatePickers/DatePicker.js.map +1 -1
  265. package/dist/esm/DatePickers/useDateFieldsTranslations.js +1 -1
  266. package/dist/esm/DatePickers/useDateFieldsTranslations.js.map +1 -1
  267. package/dist/esm/DatePickers/useOdysseyDateFields.js +1 -1
  268. package/dist/esm/DatePickers/useOdysseyDateFields.js.map +1 -1
  269. package/dist/esm/Dialog.js +33 -30
  270. package/dist/esm/Dialog.js.map +1 -1
  271. package/dist/esm/Drawer.js +7 -3
  272. package/dist/esm/Drawer.js.map +1 -1
  273. package/dist/esm/Field.js +1 -1
  274. package/dist/esm/Field.js.map +1 -1
  275. package/dist/esm/FieldError.js +1 -1
  276. package/dist/esm/FieldError.js.map +1 -1
  277. package/dist/esm/FieldLabel.js +1 -1
  278. package/dist/esm/FieldLabel.js.map +1 -1
  279. package/dist/esm/FileUploader/FileUploadPreview.js +1 -1
  280. package/dist/esm/FileUploader/FileUploadPreview.js.map +1 -1
  281. package/dist/esm/FileUploader/FileUploader.js +1 -1
  282. package/dist/esm/FileUploader/FileUploader.js.map +1 -1
  283. package/dist/esm/FullScreenOverlay.js +35 -0
  284. package/dist/esm/FullScreenOverlay.js.map +1 -0
  285. package/dist/esm/FullScreenOverlayContext.js +66 -0
  286. package/dist/esm/FullScreenOverlayContext.js.map +1 -0
  287. package/dist/esm/OdysseyCacheProvider.js +12 -17
  288. package/dist/esm/OdysseyCacheProvider.js.map +1 -1
  289. package/dist/esm/OdysseyProvider.js +18 -10
  290. package/dist/esm/OdysseyProvider.js.map +1 -1
  291. package/dist/esm/OdysseyThemeProvider.js +27 -16
  292. package/dist/esm/OdysseyThemeProvider.js.map +1 -1
  293. package/dist/esm/OdysseyThemeProviderPropsContext.js +38 -0
  294. package/dist/esm/OdysseyThemeProviderPropsContext.js.map +1 -0
  295. package/dist/esm/Pagination/Pagination.js +1 -2
  296. package/dist/esm/Pagination/Pagination.js.map +1 -1
  297. package/dist/esm/Pagination/usePagination.js +1 -1
  298. package/dist/esm/Pagination/usePagination.js.map +1 -1
  299. package/dist/esm/PasswordField.js +1 -1
  300. package/dist/esm/PasswordField.js.map +1 -1
  301. package/dist/esm/Radio.js +22 -20
  302. package/dist/esm/Radio.js.map +1 -1
  303. package/dist/esm/SearchField.js +1 -1
  304. package/dist/esm/SearchField.js.map +1 -1
  305. package/dist/esm/Select.js +0 -36
  306. package/dist/esm/Select.js.map +1 -1
  307. package/dist/esm/Surface.js +3 -3
  308. package/dist/esm/Surface.js.map +1 -1
  309. package/dist/esm/Switch.js +1 -1
  310. package/dist/esm/Switch.js.map +1 -1
  311. package/dist/esm/Tabs.js +0 -20
  312. package/dist/esm/Tabs.js.map +1 -1
  313. package/dist/esm/Tag.js +1 -1
  314. package/dist/esm/Tag.js.map +1 -1
  315. package/dist/esm/TextField.js +0 -25
  316. package/dist/esm/TextField.js.map +1 -1
  317. package/dist/esm/Toast.js +1 -1
  318. package/dist/esm/Toast.js.map +1 -1
  319. package/dist/esm/__internal.js +24 -0
  320. package/dist/esm/__internal.js.map +1 -0
  321. package/dist/esm/i18n.generated/i18n.js +25 -0
  322. package/dist/esm/i18n.generated/i18n.js.map +1 -0
  323. package/dist/esm/i18n.generated/i18n.resources.js +75 -0
  324. package/dist/esm/i18n.generated/i18n.resources.js.map +1 -0
  325. package/dist/{assets/uiShellSharedConstants-DD9UP82e.js → esm/i18n.generated/i18n.types.js} +3 -1
  326. package/dist/esm/i18n.generated/i18n.types.js.map +1 -0
  327. package/dist/esm/index.js +4 -3
  328. package/dist/esm/index.js.map +1 -1
  329. package/dist/esm/labs/DataFilters.js +1 -1
  330. package/dist/esm/labs/DataFilters.js.map +1 -1
  331. package/dist/esm/labs/DataTable.js +1 -1
  332. package/dist/esm/labs/DataTable.js.map +1 -1
  333. package/dist/esm/labs/DataView/BulkActionsMenu.js +1 -1
  334. package/dist/esm/labs/DataView/BulkActionsMenu.js.map +1 -1
  335. package/dist/esm/labs/DataView/DataCard.js +1 -1
  336. package/dist/esm/labs/DataView/DataCard.js.map +1 -1
  337. package/dist/esm/labs/DataView/DataView.js +1 -1
  338. package/dist/esm/labs/DataView/DataView.js.map +1 -1
  339. package/dist/esm/labs/DataView/LayoutSwitcher.js +1 -1
  340. package/dist/esm/labs/DataView/LayoutSwitcher.js.map +1 -1
  341. package/dist/esm/labs/DataView/RowActions.js +1 -1
  342. package/dist/esm/labs/DataView/RowActions.js.map +1 -1
  343. package/dist/esm/labs/DataView/TableLayoutContent.js +1 -1
  344. package/dist/esm/labs/DataView/TableLayoutContent.js.map +1 -1
  345. package/dist/esm/labs/DataView/TableSettings.js +1 -1
  346. package/dist/esm/labs/DataView/TableSettings.js.map +1 -1
  347. package/dist/esm/labs/DataView/fetchData.js +2 -2
  348. package/dist/esm/labs/DataView/fetchData.js.map +1 -1
  349. package/dist/esm/labs/DatePickers/DateTimeField.js +1 -1
  350. package/dist/esm/labs/DatePickers/DateTimeField.js.map +1 -1
  351. package/dist/esm/labs/DatePickers/DateTimePicker.js +1 -1
  352. package/dist/esm/labs/DatePickers/DateTimePicker.js.map +1 -1
  353. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js +1 -1
  354. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js.map +1 -1
  355. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js +4 -0
  356. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -1
  357. package/dist/esm/labs/PageTemplate/Layout.js +2 -2
  358. package/dist/esm/labs/PageTemplate/Layout.js.map +1 -1
  359. package/dist/esm/labs/PageTemplate/PageTemplate.js.map +1 -1
  360. package/dist/esm/labs/PaginatedTable.js +1 -1
  361. package/dist/esm/labs/PaginatedTable.js.map +1 -1
  362. package/dist/esm/labs/StaticTable.js +1 -1
  363. package/dist/esm/labs/StaticTable.js.map +1 -1
  364. package/dist/esm/properties/ts/odyssey-react-mui.js.map +1 -1
  365. package/dist/esm/properties/ts/odyssey-react-mui_cs.js +5 -0
  366. package/dist/esm/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  367. package/dist/esm/properties/ts/odyssey-react-mui_da.js +5 -0
  368. package/dist/esm/properties/ts/odyssey-react-mui_da.js.map +1 -1
  369. package/dist/esm/properties/ts/odyssey-react-mui_de.js +6 -1
  370. package/dist/esm/properties/ts/odyssey-react-mui_de.js.map +1 -1
  371. package/dist/esm/properties/ts/odyssey-react-mui_el.js +5 -0
  372. package/dist/esm/properties/ts/odyssey-react-mui_el.js.map +1 -1
  373. package/dist/esm/properties/ts/odyssey-react-mui_es.js +5 -0
  374. package/dist/esm/properties/ts/odyssey-react-mui_es.js.map +1 -1
  375. package/dist/esm/properties/ts/odyssey-react-mui_eu.js +5 -0
  376. package/dist/esm/properties/ts/odyssey-react-mui_eu.js.map +1 -1
  377. package/dist/esm/properties/ts/odyssey-react-mui_fi.js +5 -0
  378. package/dist/esm/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  379. package/dist/esm/properties/ts/odyssey-react-mui_fr.js +5 -0
  380. package/dist/esm/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  381. package/dist/esm/properties/ts/odyssey-react-mui_ht.js +5 -0
  382. package/dist/esm/properties/ts/odyssey-react-mui_ht.js.map +1 -1
  383. package/dist/esm/properties/ts/odyssey-react-mui_hu.js +5 -0
  384. package/dist/esm/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  385. package/dist/esm/properties/ts/odyssey-react-mui_id.js +5 -0
  386. package/dist/esm/properties/ts/odyssey-react-mui_id.js.map +1 -1
  387. package/dist/esm/properties/ts/odyssey-react-mui_it.js +5 -0
  388. package/dist/esm/properties/ts/odyssey-react-mui_it.js.map +1 -1
  389. package/dist/esm/properties/ts/odyssey-react-mui_ja.js +5 -0
  390. package/dist/esm/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  391. package/dist/esm/properties/ts/odyssey-react-mui_ko.js +5 -0
  392. package/dist/esm/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  393. package/dist/esm/properties/ts/odyssey-react-mui_ms.js +5 -0
  394. package/dist/esm/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  395. package/dist/esm/properties/ts/odyssey-react-mui_nb.js +5 -0
  396. package/dist/esm/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  397. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js +5 -0
  398. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  399. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
  400. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
  401. package/dist/esm/properties/ts/odyssey-react-mui_pl.js +5 -0
  402. package/dist/esm/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  403. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js +5 -0
  404. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  405. package/dist/esm/properties/ts/odyssey-react-mui_ro.js +5 -0
  406. package/dist/esm/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  407. package/dist/esm/properties/ts/odyssey-react-mui_ru.js +5 -0
  408. package/dist/esm/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  409. package/dist/esm/properties/ts/odyssey-react-mui_sv.js +5 -0
  410. package/dist/esm/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  411. package/dist/esm/properties/ts/odyssey-react-mui_th.js +5 -0
  412. package/dist/esm/properties/ts/odyssey-react-mui_th.js.map +1 -1
  413. package/dist/esm/properties/ts/odyssey-react-mui_tr.js +5 -0
  414. package/dist/esm/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  415. package/dist/esm/properties/ts/odyssey-react-mui_uk.js +5 -0
  416. package/dist/esm/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  417. package/dist/esm/properties/ts/odyssey-react-mui_vi.js +5 -0
  418. package/dist/esm/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  419. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js +5 -0
  420. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  421. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js +5 -0
  422. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  423. package/dist/esm/test-selectors/AutocompleteTestSelector.js +43 -0
  424. package/dist/esm/test-selectors/AutocompleteTestSelector.js.map +1 -0
  425. package/dist/esm/test-selectors/CalloutTestSelector.js +37 -0
  426. package/dist/esm/test-selectors/CalloutTestSelector.js.map +1 -0
  427. package/dist/esm/test-selectors/SelectTestSelector.js +49 -0
  428. package/dist/esm/test-selectors/SelectTestSelector.js.map +1 -0
  429. package/dist/{types/shadow-dom/index.d.ts → esm/test-selectors/TabsTestSelector.js} +22 -2
  430. package/dist/esm/test-selectors/TabsTestSelector.js.map +1 -0
  431. package/dist/esm/test-selectors/TextFieldTestSelector.js +38 -0
  432. package/dist/esm/test-selectors/TextFieldTestSelector.js.map +1 -0
  433. package/dist/esm/test-selectors/index.js +1 -0
  434. package/dist/esm/test-selectors/index.js.map +1 -1
  435. package/dist/esm/test-selectors/queryOdysseySelector.js +5 -5
  436. package/dist/esm/test-selectors/queryOdysseySelector.js.map +1 -1
  437. package/dist/esm/theme/components.js +5 -5
  438. package/dist/esm/theme/components.js.map +1 -1
  439. package/dist/esm/ui-shell/NarrowUiShellContent.js +3 -13
  440. package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -1
  441. package/dist/esm/ui-shell/SideNav/NavAccordion.js +20 -15
  442. package/dist/esm/ui-shell/SideNav/NavAccordion.js.map +1 -1
  443. package/dist/esm/ui-shell/SideNav/SideNav.js +136 -135
  444. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  445. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js +1 -1
  446. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js.map +1 -1
  447. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +7 -4
  448. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
  449. package/dist/esm/ui-shell/SideNav/SideNavItemContentContext.js.map +1 -1
  450. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +3 -4
  451. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
  452. package/dist/esm/ui-shell/SideNav/SideNavSortableList.js +42 -0
  453. package/dist/esm/ui-shell/SideNav/SideNavSortableList.js.map +1 -0
  454. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +1 -1
  455. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
  456. package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js +1 -1
  457. package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js.map +1 -1
  458. package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js +1 -1
  459. package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js.map +1 -1
  460. package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
  461. package/dist/esm/ui-shell/UiShell.js +4 -4
  462. package/dist/esm/ui-shell/UiShell.js.map +1 -1
  463. package/dist/esm/ui-shell/WideUiShellContent.js +2 -1
  464. package/dist/esm/ui-shell/WideUiShellContent.js.map +1 -1
  465. package/dist/esm/ui-shell/uiShellContentTypes.js +1 -0
  466. package/dist/esm/ui-shell/uiShellContentTypes.js.map +1 -1
  467. package/dist/esm/{shadow-dom/shadow-dom.js → web-component/createShadowDomElements.js} +8 -3
  468. package/dist/esm/web-component/createShadowDomElements.js.map +1 -0
  469. package/dist/esm/web-component/index.js +3 -0
  470. package/dist/esm/web-component/index.js.map +1 -1
  471. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
  472. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
  473. package/dist/esm/web-component/removeGlobalStylesFromShadowDom.js +28 -0
  474. package/dist/esm/web-component/removeGlobalStylesFromShadowDom.js.map +1 -0
  475. package/dist/esm/web-component/renderReactInWebComponent.js +5 -9
  476. package/dist/esm/web-component/renderReactInWebComponent.js.map +1 -1
  477. package/dist/tsconfig.production.tsbuildinfo +1 -1
  478. package/dist/types/Autocomplete.d.ts +0 -30
  479. package/dist/types/Autocomplete.d.ts.map +1 -1
  480. package/dist/types/Banner.d.ts.map +1 -1
  481. package/dist/types/Breadcrumbs.d.ts.map +1 -1
  482. package/dist/types/Callout.d.ts +0 -24
  483. package/dist/types/Callout.d.ts.map +1 -1
  484. package/dist/types/Card.d.ts.map +1 -1
  485. package/dist/types/Checkbox.d.ts.map +1 -1
  486. package/dist/types/DataTable/DataTable.d.ts.map +1 -1
  487. package/dist/types/DataTable/DataTableRowActions.d.ts.map +1 -1
  488. package/dist/types/DatePickers/DatePicker.d.ts.map +1 -1
  489. package/dist/types/DatePickers/useDateFieldsTranslations.d.ts.map +1 -1
  490. package/dist/types/DatePickers/useOdysseyDateFields.d.ts.map +1 -1
  491. package/dist/types/Dialog.d.ts.map +1 -1
  492. package/dist/types/Drawer.d.ts.map +1 -1
  493. package/dist/types/Field.d.ts.map +1 -1
  494. package/dist/types/FieldError.d.ts.map +1 -1
  495. package/dist/types/FieldLabel.d.ts.map +1 -1
  496. package/dist/types/FileUploader/FileUploader.d.ts.map +1 -1
  497. package/dist/types/FullScreenOverlay.d.ts +19 -0
  498. package/dist/types/FullScreenOverlay.d.ts.map +1 -0
  499. package/dist/types/FullScreenOverlayContext.d.ts +31 -0
  500. package/dist/types/FullScreenOverlayContext.d.ts.map +1 -0
  501. package/dist/types/NativeSelect.d.ts +1 -1
  502. package/dist/types/OdysseyCacheProvider.d.ts +10 -3
  503. package/dist/types/OdysseyCacheProvider.d.ts.map +1 -1
  504. package/dist/types/OdysseyProvider.d.ts +8 -8
  505. package/dist/types/OdysseyProvider.d.ts.map +1 -1
  506. package/dist/types/OdysseyThemeProvider.d.ts +7 -16
  507. package/dist/types/OdysseyThemeProvider.d.ts.map +1 -1
  508. package/dist/types/OdysseyThemeProviderPropsContext.d.ts +27 -0
  509. package/dist/types/OdysseyThemeProviderPropsContext.d.ts.map +1 -0
  510. package/dist/types/Pagination/Pagination.d.ts +0 -1
  511. package/dist/types/Pagination/Pagination.d.ts.map +1 -1
  512. package/dist/types/Pagination/usePagination.d.ts.map +1 -1
  513. package/dist/types/PasswordField.d.ts.map +1 -1
  514. package/dist/types/Radio.d.ts.map +1 -1
  515. package/dist/types/SearchField.d.ts.map +1 -1
  516. package/dist/types/Select.d.ts +0 -36
  517. package/dist/types/Select.d.ts.map +1 -1
  518. package/dist/types/Surface.d.ts.map +1 -1
  519. package/dist/types/Switch.d.ts.map +1 -1
  520. package/dist/types/Tabs.d.ts +0 -20
  521. package/dist/types/Tabs.d.ts.map +1 -1
  522. package/dist/types/Tag.d.ts.map +1 -1
  523. package/dist/types/TextField.d.ts +0 -25
  524. package/dist/types/TextField.d.ts.map +1 -1
  525. package/dist/types/Toast.d.ts.map +1 -1
  526. package/dist/types/__internal.d.ts +30 -0
  527. package/dist/types/__internal.d.ts.map +1 -0
  528. package/dist/types/i18n.generated/i18n.d.ts +285 -0
  529. package/dist/types/i18n.generated/i18n.d.ts.map +1 -0
  530. package/dist/types/i18n.generated/i18n.resources.d.ts +4199 -0
  531. package/dist/types/{i18n.d.ts.map → i18n.generated/i18n.resources.d.ts.map} +1 -1
  532. package/dist/types/i18n.generated/i18n.types.d.ts +30 -0
  533. package/dist/types/i18n.generated/i18n.types.d.ts.map +1 -0
  534. package/dist/types/index.d.ts +4 -3
  535. package/dist/types/index.d.ts.map +1 -1
  536. package/dist/types/labs/DataTable.d.ts.map +1 -1
  537. package/dist/types/labs/DataView/DataCard.d.ts.map +1 -1
  538. package/dist/types/labs/DataView/RowActions.d.ts.map +1 -1
  539. package/dist/types/labs/DataView/fetchData.d.ts.map +1 -1
  540. package/dist/types/labs/DatePickers/DateTimePicker.d.ts.map +1 -1
  541. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts.map +1 -1
  542. package/dist/types/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts.map +1 -1
  543. package/dist/types/labs/PageTemplate/PageTemplate.d.ts.map +1 -1
  544. package/dist/types/labs/PaginatedTable.d.ts.map +1 -1
  545. package/dist/types/labs/StaticTable.d.ts.map +1 -1
  546. package/dist/types/properties/ts/odyssey-react-mui.d.ts +133 -133
  547. package/dist/types/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  548. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts +133 -128
  549. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  550. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts +133 -128
  551. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  552. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts +133 -128
  553. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  554. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts +133 -128
  555. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  556. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts +133 -128
  557. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  558. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts +133 -128
  559. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts.map +1 -1
  560. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts +133 -128
  561. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  562. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts +133 -128
  563. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  564. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts +133 -128
  565. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -1
  566. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts +133 -128
  567. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  568. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts +133 -128
  569. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  570. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts +133 -128
  571. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  572. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts +133 -128
  573. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  574. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts +133 -128
  575. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  576. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts +133 -128
  577. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  578. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts +133 -128
  579. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  580. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts +133 -128
  581. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  582. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts +133 -133
  583. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
  584. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts +133 -133
  585. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
  586. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts +133 -128
  587. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  588. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts +133 -128
  589. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  590. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts +133 -128
  591. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  592. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts +133 -128
  593. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  594. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts +133 -128
  595. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  596. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts +133 -128
  597. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  598. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts +133 -128
  599. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  600. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts +133 -128
  601. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  602. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts +133 -128
  603. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  604. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts +133 -128
  605. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  606. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts +133 -128
  607. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  608. package/dist/types/test-selectors/AutocompleteTestSelector.d.ts +42 -0
  609. package/dist/types/test-selectors/AutocompleteTestSelector.d.ts.map +1 -0
  610. package/dist/types/test-selectors/CalloutTestSelector.d.ts +36 -0
  611. package/dist/types/test-selectors/CalloutTestSelector.d.ts.map +1 -0
  612. package/dist/types/test-selectors/SelectTestSelector.d.ts +48 -0
  613. package/dist/types/test-selectors/SelectTestSelector.d.ts.map +1 -0
  614. package/dist/types/test-selectors/TabsTestSelector.d.ts +32 -0
  615. package/dist/types/test-selectors/TabsTestSelector.d.ts.map +1 -0
  616. package/dist/types/test-selectors/TextFieldTestSelector.d.ts +37 -0
  617. package/dist/types/test-selectors/TextFieldTestSelector.d.ts.map +1 -0
  618. package/dist/types/test-selectors/index.d.ts +1 -0
  619. package/dist/types/test-selectors/index.d.ts.map +1 -1
  620. package/dist/types/test-selectors/queryOdysseySelector.d.ts.map +1 -1
  621. package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -1
  622. package/dist/types/ui-shell/SideNav/NavAccordion.d.ts.map +1 -1
  623. package/dist/types/ui-shell/SideNav/SideNav.d.ts +1 -1
  624. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  625. package/dist/types/ui-shell/SideNav/SideNavFooterContent.d.ts.map +1 -1
  626. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts +2 -1
  627. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
  628. package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts +1 -0
  629. package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts.map +1 -1
  630. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
  631. package/dist/types/ui-shell/SideNav/SideNavSortableList.d.ts +41 -0
  632. package/dist/types/ui-shell/SideNav/SideNavSortableList.d.ts.map +1 -0
  633. package/dist/types/ui-shell/SideNav/types.d.ts +13 -2
  634. package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
  635. package/dist/types/ui-shell/UiShell.d.ts.map +1 -1
  636. package/dist/types/ui-shell/WideUiShellContent.d.ts.map +1 -1
  637. package/dist/types/ui-shell/uiShellContentTypes.d.ts +4 -1
  638. package/dist/types/ui-shell/uiShellContentTypes.d.ts.map +1 -1
  639. package/dist/types/{shadow-dom/shadow-dom.d.ts → web-component/createShadowDomElements.d.ts} +6 -4
  640. package/dist/types/web-component/createShadowDomElements.d.ts.map +1 -0
  641. package/dist/types/web-component/index.d.ts +3 -0
  642. package/dist/types/web-component/index.d.ts.map +1 -1
  643. package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
  644. package/dist/{assets/useMountLifecycleEffect-CjsUCFhB.js → types/web-component/removeGlobalStylesFromShadowDom.d.ts} +9 -2
  645. package/dist/types/web-component/removeGlobalStylesFromShadowDom.d.ts.map +1 -0
  646. package/dist/types/web-component/renderReactInWebComponent.d.ts +1 -1
  647. package/dist/types/web-component/renderReactInWebComponent.d.ts.map +1 -1
  648. package/package.json +24 -15
  649. package/dist/appswitcher/admin-app-default.svg +0 -6
  650. package/dist/appswitcher/admin-app-selected.svg +0 -6
  651. package/dist/appswitcher/aerial-default.svg +0 -7
  652. package/dist/appswitcher/aerial-selected.svg +0 -7
  653. package/dist/appswitcher/okta-dashboard-default.svg +0 -7
  654. package/dist/appswitcher/okta-dashboard-selected.svg +0 -7
  655. package/dist/appswitcher/privileged-access-default.svg +0 -4
  656. package/dist/appswitcher/privileged-access-selected.svg +0 -4
  657. package/dist/appswitcher/workflows-default.svg +0 -5
  658. package/dist/appswitcher/workflows-selected.svg +0 -5
  659. package/dist/assets/Accordion-DLG6nIhh.js +0 -1
  660. package/dist/assets/Accordion.stories-VjVp52QD.js +0 -85
  661. package/dist/assets/AccordionSummary-xCoGLMoL.js +0 -1
  662. package/dist/assets/AlertTitle-DlG4YQWR.js +0 -1
  663. package/dist/assets/AppSwitcher-D7UlQ3S8.js +0 -21
  664. package/dist/assets/AppSwitcher.stories-Dv0DHDxk.js +0 -100
  665. package/dist/assets/AppTile _labs_.stories-CgXIqWmJ.js +0 -136
  666. package/dist/assets/ArrowDropDown-bSngWMh1.js +0 -1
  667. package/dist/assets/ArrowRight-DCIAiEpA.js +0 -1
  668. package/dist/assets/Autocomplete-MfScEzbR.js +0 -1
  669. package/dist/assets/Autocomplete-UE4wqxn0.js +0 -1
  670. package/dist/assets/Autocomplete.stories-CCtQosYH.js +0 -316
  671. package/dist/assets/Badge-DL9N0uiE.js +0 -11
  672. package/dist/assets/Banner-C66lWD3c.js +0 -1
  673. package/dist/assets/Banner.stories-D6KqnSl2.js +0 -74
  674. package/dist/assets/BaseButton-B5c4cgt8.js +0 -11
  675. package/dist/assets/BaseMenuButton-DbGGXXbP.js +0 -1
  676. package/dist/assets/Box-BCBP3C7Q.js +0 -1
  677. package/dist/assets/Box-BXOPvc0Q.js +0 -1
  678. package/dist/assets/Box-C2ekHaOu.js +0 -1
  679. package/dist/assets/Box-C_Qfmw-_.js +0 -11
  680. package/dist/assets/Box.stories-uaYeF2xg.js +0 -38
  681. package/dist/assets/Breadcrumbs-Qzfi3j0j.js +0 -6
  682. package/dist/assets/Breadcrumbs.stories-CHIGnsjh.js +0 -79
  683. package/dist/assets/Bug-m6zinguF.js +0 -1
  684. package/dist/assets/Button-BOzIr8Jh.js +0 -11
  685. package/dist/assets/Button-BqwcAVQ-.js +0 -1
  686. package/dist/assets/Button-Cf49fWiK.js +0 -31
  687. package/dist/assets/Button.stories-Db-QptTh.js +0 -271
  688. package/dist/assets/ButtonBase-BqXVk-1q.js +0 -74
  689. package/dist/assets/Calendar-CuqjwSb0.js +0 -1
  690. package/dist/assets/Callout-CaNoXhaj.js +0 -1
  691. package/dist/assets/Callout.stories-D2csAs8g.js +0 -105
  692. package/dist/assets/Card-B5eIV1vH.js +0 -1
  693. package/dist/assets/Card-Bfg-qZM7.js +0 -8
  694. package/dist/assets/Card.stories-BTaeWH4V.js +0 -129
  695. package/dist/assets/CardActionArea-yvoWcAsF.js +0 -1
  696. package/dist/assets/Check-BmyOKfcL.js +0 -1
  697. package/dist/assets/Checkbox-BTj1hXUa.js +0 -1
  698. package/dist/assets/Checkbox-luq82K1t.js +0 -1
  699. package/dist/assets/Checkbox.stories-ChhXQBH_.js +0 -96
  700. package/dist/assets/CheckboxGroup-Cgc2chES.js +0 -1
  701. package/dist/assets/CheckboxGroup.stories-DpGwHWla.js +0 -81
  702. package/dist/assets/ChevronDown-BnAWuc8V.js +0 -1
  703. package/dist/assets/ChevronRight-BB0bQIRj.js +0 -1
  704. package/dist/assets/ChevronUp-B9JV-jmd.js +0 -1
  705. package/dist/assets/Chip-BOK8DR8m.js +0 -1
  706. package/dist/assets/CircularProgress-DNk4kmx6.js +0 -28
  707. package/dist/assets/CircularProgress-Ur28_31H.js +0 -1
  708. package/dist/assets/CircularProgress.stories-gv9B0XLW.js +0 -44
  709. package/dist/assets/Clock-Byj5V_49.js +0 -1
  710. package/dist/assets/Close-DA7fBExu.js +0 -1
  711. package/dist/assets/Close-DA_Sph0R.js +0 -1
  712. package/dist/assets/CloseCircleFilled-D2aBlgBe.js +0 -1
  713. package/dist/assets/Code Styling Guidelines-CAzyRuHZ.js +0 -14
  714. package/dist/assets/Collapse-P1H1b4lO.js +0 -1
  715. package/dist/assets/Color-YHDXOIA2-CcHVwBQP.js +0 -1
  716. package/dist/assets/CssBaseline-C3xNeK8b.js +0 -1
  717. package/dist/assets/CssBaseline-CUjr0ON2.js +0 -190
  718. package/dist/assets/CssBaseline.stories-DgXaUmIC.js +0 -402
  719. package/dist/assets/Custom Theming-CKloJLS_.js +0 -136
  720. package/dist/assets/Custom Theming.stories-BHdYhCs2.js +0 -93
  721. package/dist/assets/DataFilters _labs_-D3S2uNi-.js +0 -55
  722. package/dist/assets/DataFilters _labs_.stories-RwWZVkCe.js +0 -31
  723. package/dist/assets/DataFilters-DVey1xPT.js +0 -1
  724. package/dist/assets/DataTable _labs_-CtXARbkP.js +0 -41
  725. package/dist/assets/DataTable _labs_.stories-U7XFYtR6.js +0 -21
  726. package/dist/assets/DataTable-CkACYzFJ.js +0 -404
  727. package/dist/assets/DataTable-CnCWIOTw.js +0 -21
  728. package/dist/assets/DataTable.stories-Db2HEmax.js +0 -438
  729. package/dist/assets/DataView _labs_-DZnmSNME.js +0 -332
  730. package/dist/assets/DataView _labs_.stories-CusuCHkc.js +0 -438
  731. package/dist/assets/DataView-BQBP0FCs.js +0 -101
  732. package/dist/assets/DatePicker-DIRg7n4d.js +0 -1
  733. package/dist/assets/DatePicker.stories-BPWj6DxY.js +0 -143
  734. package/dist/assets/DateTimePicker-CnXcHc5u.js +0 -1
  735. package/dist/assets/DateTimePicker.stories-nLmYctur.js +0 -168
  736. package/dist/assets/DefaultPropsProvider-B7tpShA7.js +0 -9
  737. package/dist/assets/Design Tokens-BxQ2eYvg.js +0 -4
  738. package/dist/assets/Dialog-BIM-1Zvj.js +0 -1
  739. package/dist/assets/Dialog.stories-D2UYs9Hc.js +0 -201
  740. package/dist/assets/DialogContent-C_FnZ5ZS.js +0 -1
  741. package/dist/assets/DialogTitle-CLDQZ0bg.js +0 -1
  742. package/dist/assets/Divider-CsWa3KCo.js +0 -1
  743. package/dist/assets/DocsRenderer-CFRXHY34-DEwq8OPY.js +0 -2
  744. package/dist/assets/Documentation-DM1hawvn.js +0 -1
  745. package/dist/assets/Download-Cp75oFKP.js +0 -1
  746. package/dist/assets/Drawer-Dg44iOBm.js +0 -27
  747. package/dist/assets/Drawer.stories-DRGYC84s.js +0 -95
  748. package/dist/assets/EmptyState-DQoihCwU.js +0 -11
  749. package/dist/assets/EmptyState.stories-C8kkt-lH.js +0 -11
  750. package/dist/assets/ExampleButton.stories-BKxnZulW.js +0 -11
  751. package/dist/assets/Extending Translations-BnOA8j0s.js +0 -146
  752. package/dist/assets/ExternalLink-DTdulgUc.js +0 -1
  753. package/dist/assets/Field-ilPS333M.js +0 -11
  754. package/dist/assets/FieldHint-Cv7aMlpU.js +0 -1
  755. package/dist/assets/Fieldset-CmtxEykF.js +0 -11
  756. package/dist/assets/Fieldset.stories-CeV3XwQn.js +0 -15
  757. package/dist/assets/FileUploader.stories-CmC83k5u.js +0 -58
  758. package/dist/assets/Filter-BAXcmMyf.js +0 -1
  759. package/dist/assets/Folder-Ddku_ujr.js +0 -1
  760. package/dist/assets/Form Field Accessibility-bATJbTW6.js +0 -18
  761. package/dist/assets/Form-CBnvE26F.js +0 -11
  762. package/dist/assets/Form.stories-Eg4GUI1C.js +0 -69
  763. package/dist/assets/FormControlLabel-CxCmH5hv.js +0 -1
  764. package/dist/assets/FormGroup-BaCH3e06.js +0 -1
  765. package/dist/assets/FormHelperText-ZkUAjajs.js +0 -1
  766. package/dist/assets/FormLabel-BLeax9q3.js +0 -1
  767. package/dist/assets/Generating Icons-CY4QgHRK.js +0 -16
  768. package/dist/assets/GlobalStyles-BxDN_5FT.js +0 -1
  769. package/dist/assets/Globe--OQ55RD1.js +0 -1
  770. package/dist/assets/Grid-B2PgWvdd.js +0 -1
  771. package/dist/assets/Group-W0XqkWVH.js +0 -1
  772. package/dist/assets/GroupPicker _labs_.stories-CP9ogL4g.js +0 -33
  773. package/dist/assets/Grow-CIie3qhp.js +0 -1
  774. package/dist/assets/Hide-RfKmYLNv.js +0 -1
  775. package/dist/assets/Home-BXMRmOIu.js +0 -1
  776. package/dist/assets/Icon _icons_.stories-CfG9aDh6.js +0 -16
  777. package/dist/assets/IconButton-CK9Do7vj.js +0 -1
  778. package/dist/assets/IconWithTooltip _icons_.stories-BriwOCod.js +0 -19
  779. package/dist/assets/InformationCircle-B71JRUfK.js +0 -1
  780. package/dist/assets/InputAdornment-CFgP75Dd.js +0 -1
  781. package/dist/assets/InputBase--xDu7aWm.js +0 -2
  782. package/dist/assets/Installing odyssey-react-mui-FI77Ty6y.js +0 -195
  783. package/dist/assets/Introduction-B_2OeBP6.js +0 -46
  784. package/dist/assets/Layout-Bojn6-Uj.js +0 -11
  785. package/dist/assets/Layout.stories-BN7leK7P.js +0 -217
  786. package/dist/assets/Legacy Migrations-eiPSj0S4.js +0 -86
  787. package/dist/assets/Link-ClKgpBXG.js +0 -1
  788. package/dist/assets/Link-DTvs7F4J.js +0 -11
  789. package/dist/assets/Link.stories-GP1qln9R.js +0 -43
  790. package/dist/assets/List-0o0OI1E9.js +0 -1
  791. package/dist/assets/List-W5kRT_jR.js +0 -1
  792. package/dist/assets/ListContext-C02XM7tn.js +0 -1
  793. package/dist/assets/ListItem-CcduKzQu.js +0 -1
  794. package/dist/assets/ListSubheader-DXKE8lW0.js +0 -1
  795. package/dist/assets/Menu-CGJO1mMf.js +0 -1
  796. package/dist/assets/MenuButton-DeZSGuxY.js +0 -9
  797. package/dist/assets/MenuButton-OjJFnmOD.js +0 -11
  798. package/dist/assets/MenuButton.stories-C8xNZymc.js +0 -246
  799. package/dist/assets/MenuContext-DKMyPMNY.js +0 -11
  800. package/dist/assets/MenuItem-CuP47MJ-.js +0 -1
  801. package/dist/assets/MenuItem-DjSqFwdt.js +0 -1
  802. package/dist/assets/MenuItem.stories-Cc5X-FtZ.js +0 -29
  803. package/dist/assets/MenuList-BboivbXC.js +0 -1
  804. package/dist/assets/Modal-CW5mOzJG.js +0 -1
  805. package/dist/assets/More-axx2rGKU.js +0 -1
  806. package/dist/assets/MuiPropsContext-DhRylJZk.js +0 -11
  807. package/dist/assets/NativeSelect.stories-D8Y2ITgz.js +0 -173
  808. package/dist/assets/OdysseyDesignTokensContext-BWQIA5ie.js +0 -11
  809. package/dist/assets/OdysseyProvider-BQyPcEvx.js +0 -41
  810. package/dist/assets/OdysseyProvider-BjO4GObW.js +0 -280
  811. package/dist/assets/OdysseyStorybookThemeDecorator-DginBfEq.js +0 -1
  812. package/dist/assets/OdysseyThemeProvider-aR5shtx6.js +0 -117
  813. package/dist/assets/PageHeader.stories-CtAENr0_.js +0 -90
  814. package/dist/assets/PageHeader.stories-WaRXuLcH.js +0 -17
  815. package/dist/assets/PageTemplate _labs_-CUXvNJxx.js +0 -8
  816. package/dist/assets/PageTemplate _labs_.stories-BVKInLfu.js +0 -306
  817. package/dist/assets/PageTemplate-DOXk_uAG.js +0 -21
  818. package/dist/assets/PaginatedTable _labs_.stories-Bet6WnQV.js +0 -65
  819. package/dist/assets/Pagination-CgxBDBwQ.js +0 -11
  820. package/dist/assets/Pagination.stories-7dUsTYEf.js +0 -17
  821. package/dist/assets/Paper-DbAuDGNI.js +0 -1
  822. package/dist/assets/PasswordField.stories-Bclv9Lsw.js +0 -129
  823. package/dist/assets/Picker _labs_.stories-Dzo7T9_p.js +0 -18
  824. package/dist/assets/PickerWithOptionAdornment _labs_.stories-C1ftphm9.js +0 -70
  825. package/dist/assets/PlaceholderLogo-JfVvgA23.js +0 -11
  826. package/dist/assets/Popper-CwLH-7YW.js +0 -1
  827. package/dist/assets/Portal-Bvf2g5iG.js +0 -1
  828. package/dist/assets/Radio-Bi1_KmSD.js +0 -1
  829. package/dist/assets/Radio-D85jg1Ri.js +0 -1
  830. package/dist/assets/Radio.stories-BrLSJa7w.js +0 -63
  831. package/dist/assets/RadioGroup-6XgStuIE.js +0 -10
  832. package/dist/assets/RadioGroup-BS6oYUQf.js +0 -1
  833. package/dist/assets/RadioGroup.stories-BcEJF09Q.js +0 -127
  834. package/dist/assets/Refresh-CPgGX1hz.js +0 -1
  835. package/dist/assets/Right-to-Left (RTL)-BK9_DI66.js +0 -62
  836. package/dist/assets/ScopedCssBaseline-FivWKbYZ.js +0 -1
  837. package/dist/assets/ScreenReaderText-DCDUyE9Y.js +0 -15
  838. package/dist/assets/ScreenReaderText-vq7_Ob_I.js +0 -1
  839. package/dist/assets/ScreenReaderText.stories-BZinu6VX.js +0 -8
  840. package/dist/assets/Search-BvCmvJcV.js +0 -1
  841. package/dist/assets/SearchDropdown _labs_.stories-CYbt2vgf.js +0 -53
  842. package/dist/assets/SearchField-jc9ws93I.js +0 -1
  843. package/dist/assets/SearchField.stories-3apxQKjy.js +0 -37
  844. package/dist/assets/Select-DVJCNQIV.js +0 -1
  845. package/dist/assets/Select.stories-Dnr0InYf.js +0 -293
  846. package/dist/assets/Server-F8KLZq7d.js +0 -1
  847. package/dist/assets/Settings-DjrryuBd.js +0 -1
  848. package/dist/assets/Shadow DOM-ErMvgTrT.js +0 -64
  849. package/dist/assets/Show-qQzUH4Sq.js +0 -1
  850. package/dist/assets/SideNav-CCPZq2Bh.js +0 -85
  851. package/dist/assets/SideNav-Duwk1--M.js +0 -125
  852. package/dist/assets/SideNav.stories-CHEyk4wu.js +0 -207
  853. package/dist/assets/Skeleton-BJLiCr2o.js +0 -51
  854. package/dist/assets/Stack-Ba8l39se.js +0 -1
  855. package/dist/assets/Stack.stories-CBatf2Aw.js +0 -1
  856. package/dist/assets/StaticTable _labs_.stories-HuypNvo4.js +0 -34
  857. package/dist/assets/Status-BYBMXN_H.js +0 -1
  858. package/dist/assets/Status.stories-C3BLGCGc.js +0 -66
  859. package/dist/assets/SvgIcon-BQAg6Jm7.js +0 -1
  860. package/dist/assets/Switch.stories-zEk8HMOP.js +0 -61
  861. package/dist/assets/SwitchBase-Bja5dn-O.js +0 -1
  862. package/dist/assets/Sync-Bmam4Lr_.js +0 -1
  863. package/dist/assets/Tabs-BEhcVkzW.js +0 -23
  864. package/dist/assets/Tabs-Buvkuz1V.js +0 -1
  865. package/dist/assets/Tabs-ChAj4m0g.js +0 -1
  866. package/dist/assets/Tabs.stories-BwOqe_a_.js +0 -100
  867. package/dist/assets/Tag-CjPSrGAL.js +0 -11
  868. package/dist/assets/Tag.stories-D1YMwKB7.js +0 -96
  869. package/dist/assets/TagList-BQKiA1TW.js +0 -1
  870. package/dist/assets/TextField-CZ0hstP2.js +0 -1
  871. package/dist/assets/TextField.stories-BVJr2VmB.js +0 -149
  872. package/dist/assets/Toast.stories-aIKtHa18.js +0 -134
  873. package/dist/assets/ToastManager.stories-Bst-XOOh.js +0 -269
  874. package/dist/assets/Tooltip-3088PjcT.js +0 -11
  875. package/dist/assets/Tooltip-B4GIR2eB.js +0 -1
  876. package/dist/assets/Tooltip.stories-GU5ZWKSu.js +0 -68
  877. package/dist/assets/TopNav-CWVyy01x.js +0 -11
  878. package/dist/assets/TopNav.stories-CIdyN7Ai.js +0 -13
  879. package/dist/assets/Trans-DZ9nii1x.js +0 -1
  880. package/dist/assets/TransitionGroup-BBx_tHs0.js +0 -9
  881. package/dist/assets/TransitionGroupContext-BMO0EZjQ.js +0 -9
  882. package/dist/assets/TransitionGroupContext-twgBS-Q3.js +0 -1
  883. package/dist/assets/Typography-BTrM-f_f.js +0 -9
  884. package/dist/assets/Typography-CiNRLenM.js +0 -1
  885. package/dist/assets/Typography-D7-qxuiy.js +0 -1
  886. package/dist/assets/Typography.stories-DOm50jIe.js +0 -139
  887. package/dist/assets/UiShell.stories-CcRPnzQe.js +0 -531
  888. package/dist/assets/UiShellProvider-D1w1Ocw9.js +0 -31
  889. package/dist/assets/Upload-DK3nRIto.js +0 -1
  890. package/dist/assets/User-BBdPovZN.js +0 -1
  891. package/dist/assets/UserProfile-xXh984n9.js +0 -11
  892. package/dist/assets/UserProfile.stories-cf7P_USw.js +0 -14
  893. package/dist/assets/UserProfileMenuButton.stories-DQvKwLs8.js +0 -30
  894. package/dist/assets/Video-DytabcyM.js +0 -1
  895. package/dist/assets/WarningFilled-Y3Vw7n_w.js +0 -1
  896. package/dist/assets/_commonjsHelpers-gnU0ypJ3.js +0 -1
  897. package/dist/assets/alertTitleClasses-CSPeaunQ.js +0 -1
  898. package/dist/assets/assertThisInitialized-B9jnkVVz.js +0 -1
  899. package/dist/assets/autocompleteClasses-Bi4FgC8v.js +0 -1
  900. package/dist/assets/axe-UFrR6cCR.js +0 -30
  901. package/dist/assets/axeRun-BfHtukUP.js +0 -40
  902. package/dist/assets/buttonBaseClasses-CSPKg76d.js +0 -1
  903. package/dist/assets/buttonClasses-DtIJBSf4.js +0 -1
  904. package/dist/assets/checkboxClasses-Dtdq1kQG.js +0 -1
  905. package/dist/assets/chipClasses-BMWKl3Eu.js +0 -1
  906. package/dist/assets/chunk-XP5HYGXS-BpfKkqn7.js +0 -1
  907. package/dist/assets/client-akVMpN0m.js +0 -1
  908. package/dist/assets/colorManipulator-O7SU8zMv.js +0 -1
  909. package/dist/assets/constants-CyailK6t.js +0 -11
  910. package/dist/assets/context-D_qJ2zXV.js +0 -1
  911. package/dist/assets/createChainedFunction-BO_9K8Jh.js +0 -1
  912. package/dist/assets/createSvgIcon-DiC7XVU3.js +0 -1
  913. package/dist/assets/createTheme-BmPXDA4p.js +0 -8
  914. package/dist/assets/createUniqueId-ByTaVY63.js +0 -1
  915. package/dist/assets/debounce-Be36O1Ab.js +0 -1
  916. package/dist/assets/emotion-react-jsx-runtime.browser.esm-B2sVIsIq.js +0 -1
  917. package/dist/assets/emotion-styled.browser.esm-Bcn7fuYX.js +0 -1
  918. package/dist/assets/entry-preview-4ElqUVRP.js +0 -2
  919. package/dist/assets/entry-preview-docs-BKXv92OK.js +0 -46
  920. package/dist/assets/fieldComponentPropsMetaData-BqbNLw6V.js +0 -11
  921. package/dist/assets/formControlLabelClasses-BtjP4uib.js +0 -1
  922. package/dist/assets/formGroupClasses-D9ChLj7o.js +0 -1
  923. package/dist/assets/formLabelClasses-xMgYguuN.js +0 -1
  924. package/dist/assets/generateUtilityClasses-DYvjsuMV.js +0 -1
  925. package/dist/assets/getScrollbarSize-Bqq2hMjQ.js +0 -1
  926. package/dist/assets/i18n-DmkmAJlT.js +0 -11
  927. package/dist/assets/i18next-DbMy2do-.js +0 -1
  928. package/dist/assets/iconUtils-Cxr8mVIA.js +0 -11
  929. package/dist/assets/iframe-C-RQ_TKY.js +0 -211
  930. package/dist/assets/index-B5xazMy1.js +0 -1
  931. package/dist/assets/index-B885ELRa.js +0 -1
  932. package/dist/assets/index-BJMTVygn.js +0 -240
  933. package/dist/assets/index-BJTM6NaI.js +0 -192
  934. package/dist/assets/index-BeeV6X6A.js +0 -1
  935. package/dist/assets/index-BpVuOoKb.js +0 -384
  936. package/dist/assets/index-BzN0w9dc.js +0 -1
  937. package/dist/assets/index-CDGerSbe.js +0 -1
  938. package/dist/assets/index-CXQShRbs.js +0 -8
  939. package/dist/assets/index-CpbQl8EB.js +0 -1
  940. package/dist/assets/index-CtY5BB1N.js +0 -1
  941. package/dist/assets/index-DieBXP3Z.js +0 -24
  942. package/dist/assets/index-DrFu-skq.js +0 -6
  943. package/dist/assets/index-NdkWRN8K.js +0 -9
  944. package/dist/assets/index.esm-D7MwfoQM.js +0 -138
  945. package/dist/assets/index.modern-CkASn_bb.js +0 -14
  946. package/dist/assets/inheritsLoose-CWawPfk8.js +0 -1
  947. package/dist/assets/inputAdornmentClasses-DYNxkEwO.js +0 -1
  948. package/dist/assets/inputBaseClasses-PAjj3ZBN.js +0 -1
  949. package/dist/assets/inputUtils-Dbi8XkA6.js +0 -11
  950. package/dist/assets/isHostComponent-DVu5iVWx.js +0 -1
  951. package/dist/assets/jsx-runtime-CnH95YSl.js +0 -9
  952. package/dist/assets/matchers-7Z3WT2CE-T3xScrR7.js +0 -14
  953. package/dist/assets/menuItemClasses-DFm3-Sf1.js +0 -1
  954. package/dist/assets/ownerDocument-DW-IO8s5.js +0 -1
  955. package/dist/assets/ownerWindow-HkKU3E4x.js +0 -1
  956. package/dist/assets/personData-CZJz4n06.js +0 -1
  957. package/dist/assets/personData-Ci-ru1S9.js +0 -11
  958. package/dist/assets/pickerComponentPropsMetadata-C9L3AhmF.js +0 -21
  959. package/dist/assets/popper-CMBiYTiD.js +0 -1
  960. package/dist/assets/preview-B-jDHJEN.js +0 -1
  961. package/dist/assets/preview-B8lJiyuQ.js +0 -34
  962. package/dist/assets/preview-BBWR9nbA.js +0 -1
  963. package/dist/assets/preview-BWzBA1C2.js +0 -396
  964. package/dist/assets/preview-BzLY45Eo.js +0 -2
  965. package/dist/assets/preview-CYp4EYYZ.js +0 -1
  966. package/dist/assets/preview-CeHM5zqH.js +0 -2
  967. package/dist/assets/preview-CvbIS5ZJ.js +0 -1
  968. package/dist/assets/preview-DGUiP6tS.js +0 -7
  969. package/dist/assets/preview-DHQbi4pV.js +0 -1
  970. package/dist/assets/preview-D_z0Z5cB.js +0 -1
  971. package/dist/assets/preview-MBifGIx_.js +0 -1
  972. package/dist/assets/queryOdysseySelector-B27JCf-A.js +0 -151
  973. package/dist/assets/radioClasses-f3ayyf7y.js +0 -1
  974. package/dist/assets/react-18-CxBTDaIe.js +0 -1
  975. package/dist/assets/resolveComponentProps-DMpKAZvD.js +0 -1
  976. package/dist/assets/tableRowClasses-inqOIkjd.js +0 -1
  977. package/dist/assets/test-utils-H9lH7T5D.js +0 -9
  978. package/dist/assets/tooltipClasses-C74HjonW.js +0 -1
  979. package/dist/assets/typographyClasses-D8vr2n3l.js +0 -1
  980. package/dist/assets/useAutocomplete-C7VK9p4p.js +0 -11
  981. package/dist/assets/useContrastMode-BthoHtLy.js +0 -21
  982. package/dist/assets/useControlled-NQulfz4l.js +0 -1
  983. package/dist/assets/useFormControl-BMISTZuX.js +0 -1
  984. package/dist/assets/useId-cMcvCE23.js +0 -1
  985. package/dist/assets/useId-kSseQ0DW.js +0 -1
  986. package/dist/assets/useIsFocusVisible-DH0qxT5e.js +0 -1
  987. package/dist/assets/useMobilePicker-CfUl5sFz.js +0 -6
  988. package/dist/assets/useOdysseyDateFields-DQkQFY7w.js +0 -61
  989. package/dist/assets/useScrollIndication-BJW9jXaC.js +0 -31
  990. package/dist/assets/useSlot-F4Qz2Wzp.js +0 -1
  991. package/dist/assets/useTheme-C05bJKih.js +0 -1
  992. package/dist/assets/useThemeProps-BG38P4ul.js +0 -1
  993. package/dist/assets/useThemeProps-Dy5sAWyz.js +0 -1
  994. package/dist/assets/useTranslation-vEf1lqoc.js +0 -1
  995. package/dist/assets/useUniqueId-Bsgqe1tm.js +0 -11
  996. package/dist/assets/utils-gq6yExow.js +0 -1
  997. package/dist/assets/utils-iop7lDec.js +0 -1
  998. package/dist/assets/v4-BOvFkHkt.js +0 -1
  999. package/dist/assets/visuallyHidden-Dan1xhjv.js +0 -1
  1000. package/dist/cjs/@types/i18next.d.cjs +0 -4
  1001. package/dist/cjs/@types/i18next.d.cjs.map +0 -1
  1002. package/dist/cjs/@types/properties.d.cjs +0 -2
  1003. package/dist/cjs/@types/properties.d.cjs.map +0 -1
  1004. package/dist/cjs/OdysseyTranslationProvider.cjs +0 -55
  1005. package/dist/cjs/OdysseyTranslationProvider.cjs.map +0 -1
  1006. package/dist/cjs/OdysseyTranslationProvider.types.cjs.map +0 -1
  1007. package/dist/cjs/i18n.cjs +0 -113
  1008. package/dist/cjs/i18n.cjs.map +0 -1
  1009. package/dist/cjs/shadow-dom/index.cjs +0 -17
  1010. package/dist/cjs/shadow-dom/index.cjs.map +0 -1
  1011. package/dist/cjs/shadow-dom/shadow-dom.cjs.map +0 -1
  1012. package/dist/esm/@types/i18next.d.js +0 -14
  1013. package/dist/esm/@types/i18next.d.js.map +0 -1
  1014. package/dist/esm/@types/properties.d.js +0 -2
  1015. package/dist/esm/@types/properties.d.js.map +0 -1
  1016. package/dist/esm/OdysseyTranslationProvider.js +0 -48
  1017. package/dist/esm/OdysseyTranslationProvider.js.map +0 -1
  1018. package/dist/esm/OdysseyTranslationProvider.types.js +0 -14
  1019. package/dist/esm/OdysseyTranslationProvider.types.js.map +0 -1
  1020. package/dist/esm/i18n.js +0 -100
  1021. package/dist/esm/i18n.js.map +0 -1
  1022. package/dist/esm/shadow-dom/index.js.map +0 -1
  1023. package/dist/esm/shadow-dom/shadow-dom.js.map +0 -1
  1024. package/dist/favicon.svg +0 -1
  1025. package/dist/iframe.html +0 -747
  1026. package/dist/index.cjs +0 -231
  1027. package/dist/index.d.ts +0 -233
  1028. package/dist/index.d.ts.map +0 -1
  1029. package/dist/index.html +0 -203
  1030. package/dist/index.js +0 -25
  1031. package/dist/index.json +0 -1
  1032. package/dist/index.mjs +0 -229
  1033. package/dist/index.scss +0 -549
  1034. package/dist/nunito-sans-bold-italic.woff2 +0 -0
  1035. package/dist/nunito-sans-bold.woff2 +0 -0
  1036. package/dist/nunito-sans-italic.woff2 +0 -0
  1037. package/dist/nunito-sans-regular.woff2 +0 -0
  1038. package/dist/project.json +0 -1
  1039. package/dist/sb-addons/a11y-3/manager-bundle.js +0 -220
  1040. package/dist/sb-addons/docs-1/manager-bundle.js +0 -242
  1041. package/dist/sb-addons/essentials-actions-5/manager-bundle.js +0 -3
  1042. package/dist/sb-addons/essentials-backgrounds-6/manager-bundle.js +0 -12
  1043. package/dist/sb-addons/essentials-controls-4/manager-bundle.js +0 -402
  1044. package/dist/sb-addons/essentials-measure-9/manager-bundle.js +0 -3
  1045. package/dist/sb-addons/essentials-outline-10/manager-bundle.js +0 -3
  1046. package/dist/sb-addons/essentials-toolbars-8/manager-bundle.js +0 -3
  1047. package/dist/sb-addons/essentials-viewport-7/manager-bundle.js +0 -3
  1048. package/dist/sb-addons/interactions-11/manager-bundle.js +0 -222
  1049. package/dist/sb-addons/links-2/manager-bundle.js +0 -3
  1050. package/dist/sb-addons/rtl-12/manager-bundle.js +0 -3
  1051. package/dist/sb-addons/storybook-13/manager-bundle.js +0 -3
  1052. package/dist/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js +0 -3
  1053. package/dist/sb-common-assets/favicon.svg +0 -1
  1054. package/dist/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  1055. package/dist/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  1056. package/dist/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  1057. package/dist/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  1058. package/dist/sb-manager/globals-module-info.js +0 -1052
  1059. package/dist/sb-manager/globals-runtime.js +0 -42127
  1060. package/dist/sb-manager/globals.js +0 -48
  1061. package/dist/sb-manager/runtime.js +0 -12048
  1062. package/dist/tsconfig.tsbuildinfo +0 -1
  1063. package/dist/types/OdysseyTranslationProvider.d.ts +0 -24
  1064. package/dist/types/OdysseyTranslationProvider.d.ts.map +0 -1
  1065. package/dist/types/OdysseyTranslationProvider.types.d.ts +0 -14
  1066. package/dist/types/OdysseyTranslationProvider.types.d.ts.map +0 -1
  1067. package/dist/types/i18n.d.ts +0 -3937
  1068. package/dist/types/shadow-dom/index.d.ts.map +0 -1
  1069. package/dist/types/shadow-dom/shadow-dom.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordField.js","names":["forwardRef","memo","useCallback","useImperativeHandle","useRef","useState","useTranslation","Field","HideIcon","ShowIcon","getControlState","useInputValues","jsx","_jsx","PasswordField","ariaDescribedBy","autoCompleteType","defaultValue","errorMessage","errorMessageList","hasInitialFocus","hint","id","idOverride","inputRef","isDisabled","isFullWidth","isOptional","hasShowPassword","isReadOnly","label","name","nameOverride","onChange","onChangeProp","onFocus","onBlur","placeholder","testId","translate","value","ref","t","inputType","setInputType","togglePasswordVisibility","controlledStateRef","controlledValue","uncontrolledValue","inputValues","controlState","current","localInputRef","focus","event","renderFieldComponent","errorMessageElementId","labelElementId","_InputBase","autoComplete","autoFocus","endAdornment","_InputAdornment","position","children","_IconButton","onClick","inputProps","role","readOnly","required","type","fieldType","hasVisibleLabel","MemoizedPasswordField","displayName"],"sources":["../../src/PasswordField.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { IconButton, InputAdornment, InputBase } from \"@mui/material\";\nimport {\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n memo,\n useCallback,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport { HideIcon, ShowIcon } from \"./icons.generated/index.js\";\nimport { FocusHandle, getControlState, useInputValues } from \"./inputUtils.js\";\n\nexport type PasswordFieldProps = {\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoCompleteType?: \"current-password\" | \"new-password\";\n /**\n * initial value for input. Use when component in uncontrolled.\n */\n defaultValue?: string;\n /**\n * If `true`, the component will receive focus automatically.\n */\n hasInitialFocus?: boolean;\n /**\n * If `true`, the show/hide icon is not shown to the user\n */\n hasShowPassword?: boolean;\n /**\n * The ref forwarded to the TextField\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * Callback fired when the `input` element loses focus.\n */\n onBlur?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * Callback fired when the value is changed.\n */\n onChange?: ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>;\n /**\n * Callback fired when the `input` element get focus.\n */\n onFocus?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder?: string;\n /**\n * The value of the `input` element. Use when component is controlled.\n */\n value?: string;\n} & FieldComponentProps &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype FieldRenderProps = Partial<\n Pick<FieldComponentRenderProps, \"ariaDescribedBy\" | \"errorMessageElementId\">\n> &\n Pick<FieldComponentRenderProps, \"id\" | \"labelElementId\">;\n\nconst PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(\n (\n {\n ariaDescribedBy,\n autoCompleteType,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasInitialFocus,\n hint,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isFullWidth = false,\n isOptional = false,\n hasShowPassword = true,\n isReadOnly,\n label,\n name: nameOverride,\n onChange: onChangeProp,\n onFocus,\n onBlur,\n placeholder,\n testId,\n translate,\n value,\n },\n ref,\n ) => {\n const { t } = useTranslation();\n const [inputType, setInputType] = useState(\"password\");\n\n const togglePasswordVisibility = useCallback(() => {\n setInputType((inputType) =>\n inputType === \"password\" ? \"text\" : \"password\",\n );\n }, []);\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const localInputRef = useRef<HTMLInputElement>(null);\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const onChange = useCallback<\n ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>\n >(\n (event) => {\n onChangeProp?.(event);\n },\n [onChangeProp],\n );\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: FieldRenderProps) => (\n <InputBase\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n autoComplete={inputType === \"password\" ? autoCompleteType : \"off\"}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n endAdornment={\n hasShowPassword && (\n <InputAdornment position=\"end\">\n <IconButton\n aria-controls={id}\n aria-label={t(\"passwordfield.icon.label.show\")}\n aria-pressed={inputType === \"text\"}\n onClick={togglePasswordVisibility}\n >\n {inputType === \"password\" ? <ShowIcon /> : <HideIcon />}\n </IconButton>\n </InputAdornment>\n )\n }\n id={id}\n inputProps={{\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n \"data-se\": testId,\n // role: \"textbox\" Added because password inputs don't have an implicit role assigned. This causes problems with element selection.\n role: \"textbox\",\n }}\n inputRef={localInputRef}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n placeholder={placeholder}\n readOnly={isReadOnly}\n ref={ref}\n required={!isOptional}\n translate={translate}\n type={inputType}\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\n inputValues,\n t,\n togglePasswordVisibility,\n inputType,\n nameOverride,\n onChange,\n onFocus,\n onBlur,\n placeholder,\n isOptional,\n isReadOnly,\n hasShowPassword,\n ref,\n testId,\n translate,\n ],\n );\n\n return (\n <Field\n ariaDescribedBy={ariaDescribedBy}\n errorMessage={errorMessage}\n errorMessageList={errorMessageList}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n },\n);\n\nconst MemoizedPasswordField = memo(PasswordField);\nMemoizedPasswordField.displayName = \"PasswordField\";\n\nexport { MemoizedPasswordField as PasswordField };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PasswordField.js","names":["forwardRef","memo","useCallback","useImperativeHandle","useRef","useState","Field","useTranslation","HideIcon","ShowIcon","getControlState","useInputValues","jsx","_jsx","PasswordField","ariaDescribedBy","autoCompleteType","defaultValue","errorMessage","errorMessageList","hasInitialFocus","hint","id","idOverride","inputRef","isDisabled","isFullWidth","isOptional","hasShowPassword","isReadOnly","label","name","nameOverride","onChange","onChangeProp","onFocus","onBlur","placeholder","testId","translate","value","ref","t","inputType","setInputType","togglePasswordVisibility","controlledStateRef","controlledValue","uncontrolledValue","inputValues","controlState","current","localInputRef","focus","event","renderFieldComponent","errorMessageElementId","labelElementId","_InputBase","autoComplete","autoFocus","endAdornment","_InputAdornment","position","children","_IconButton","onClick","inputProps","role","readOnly","required","type","fieldType","hasVisibleLabel","MemoizedPasswordField","displayName"],"sources":["../../src/PasswordField.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { IconButton, InputAdornment, InputBase } from \"@mui/material\";\nimport {\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n memo,\n useCallback,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport { useTranslation } from \"./i18n.generated/i18n.js\";\nimport { HideIcon, ShowIcon } from \"./icons.generated/index.js\";\nimport { FocusHandle, getControlState, useInputValues } from \"./inputUtils.js\";\n\nexport type PasswordFieldProps = {\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoCompleteType?: \"current-password\" | \"new-password\";\n /**\n * initial value for input. Use when component in uncontrolled.\n */\n defaultValue?: string;\n /**\n * If `true`, the component will receive focus automatically.\n */\n hasInitialFocus?: boolean;\n /**\n * If `true`, the show/hide icon is not shown to the user\n */\n hasShowPassword?: boolean;\n /**\n * The ref forwarded to the TextField\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * Callback fired when the `input` element loses focus.\n */\n onBlur?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * Callback fired when the value is changed.\n */\n onChange?: ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>;\n /**\n * Callback fired when the `input` element get focus.\n */\n onFocus?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder?: string;\n /**\n * The value of the `input` element. Use when component is controlled.\n */\n value?: string;\n} & FieldComponentProps &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype FieldRenderProps = Partial<\n Pick<FieldComponentRenderProps, \"ariaDescribedBy\" | \"errorMessageElementId\">\n> &\n Pick<FieldComponentRenderProps, \"id\" | \"labelElementId\">;\n\nconst PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(\n (\n {\n ariaDescribedBy,\n autoCompleteType,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasInitialFocus,\n hint,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isFullWidth = false,\n isOptional = false,\n hasShowPassword = true,\n isReadOnly,\n label,\n name: nameOverride,\n onChange: onChangeProp,\n onFocus,\n onBlur,\n placeholder,\n testId,\n translate,\n value,\n },\n ref,\n ) => {\n const { t } = useTranslation();\n const [inputType, setInputType] = useState(\"password\");\n\n const togglePasswordVisibility = useCallback(() => {\n setInputType((inputType) =>\n inputType === \"password\" ? \"text\" : \"password\",\n );\n }, []);\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const localInputRef = useRef<HTMLInputElement>(null);\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const onChange = useCallback<\n ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>\n >(\n (event) => {\n onChangeProp?.(event);\n },\n [onChangeProp],\n );\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: FieldRenderProps) => (\n <InputBase\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n autoComplete={inputType === \"password\" ? autoCompleteType : \"off\"}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n endAdornment={\n hasShowPassword && (\n <InputAdornment position=\"end\">\n <IconButton\n aria-controls={id}\n aria-label={t(\"passwordfield.icon.label.show\")}\n aria-pressed={inputType === \"text\"}\n onClick={togglePasswordVisibility}\n >\n {inputType === \"password\" ? <ShowIcon /> : <HideIcon />}\n </IconButton>\n </InputAdornment>\n )\n }\n id={id}\n inputProps={{\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n \"data-se\": testId,\n // role: \"textbox\" Added because password inputs don't have an implicit role assigned. This causes problems with element selection.\n role: \"textbox\",\n }}\n inputRef={localInputRef}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n placeholder={placeholder}\n readOnly={isReadOnly}\n ref={ref}\n required={!isOptional}\n translate={translate}\n type={inputType}\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\n inputValues,\n t,\n togglePasswordVisibility,\n inputType,\n nameOverride,\n onChange,\n onFocus,\n onBlur,\n placeholder,\n isOptional,\n isReadOnly,\n hasShowPassword,\n ref,\n testId,\n translate,\n ],\n );\n\n return (\n <Field\n ariaDescribedBy={ariaDescribedBy}\n errorMessage={errorMessage}\n errorMessageList={errorMessageList}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n },\n);\n\nconst MemoizedPasswordField = memo(PasswordField);\nMemoizedPasswordField.displayName = \"PasswordField\";\n\nexport { MemoizedPasswordField as PasswordField };\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,SAGEA,UAAU,EACVC,IAAI,EACJC,WAAW,EACXC,mBAAmB,EACnBC,MAAM,EACNC,QAAQ,QACH,OAAO;AAId,SAASC,KAAK,QAAQ,YAAY;AAKlC,SAASC,cAAc,QAAQ,0BAA0B;AACzD,SAASC,QAAQ,EAAEC,QAAQ,QAAQ,4BAA4B;AAC/D,SAAsBC,eAAe,EAAEC,cAAc,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAyD/E,MAAMC,aAAa,GAAGd,UAAU,CAC9B,CACE;EACEe,eAAe;EACfC,gBAAgB;EAChBC,YAAY;EACZC,YAAY;EACZC,gBAAgB;EAChBC,eAAe;EACfC,IAAI;EACJC,EAAE,EAAEC,UAAU;EACdC,QAAQ;EACRC,UAAU,GAAG,KAAK;EAClBC,WAAW,GAAG,KAAK;EACnBC,UAAU,GAAG,KAAK;EAClBC,eAAe,GAAG,IAAI;EACtBC,UAAU;EACVC,KAAK;EACLC,IAAI,EAAEC,YAAY;EAClBC,QAAQ,EAAEC,YAAY;EACtBC,OAAO;EACPC,MAAM;EACNC,WAAW;EACXC,MAAM;EACNC,SAAS;EACTC;AACF,CAAC,EACDC,GAAG,KACA;EACH,MAAM;IAAEC;EAAE,CAAC,GAAGnC,cAAc,CAAC,CAAC;EAC9B,MAAM,CAACoC,SAAS,EAAEC,YAAY,CAAC,GAAGvC,QAAQ,CAAC,UAAU,CAAC;EAEtD,MAAMwC,wBAAwB,GAAG3C,WAAW,CAAC,MAAM;IACjD0C,YAAY,CAAED,SAAS,IACrBA,SAAS,KAAK,UAAU,GAAG,MAAM,GAAG,UACtC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMG,kBAAkB,GAAG1C,MAAM,CAC/BM,eAAe,CAAC;IACdqC,eAAe,EAAEP,KAAK;IACtBQ,iBAAiB,EAAE/B;EACrB,CAAC,CACH,CAAC;EACD,MAAMgC,WAAW,GAAGtC,cAAc,CAAC;IACjCM,YAAY;IACZuB,KAAK;IACLU,YAAY,EAAEJ,kBAAkB,CAACK;EACnC,CAAC,CAAC;EAEF,MAAMC,aAAa,GAAGhD,MAAM,CAAmB,IAAI,CAAC;EACpDD,mBAAmB,CAACqB,QAAQ,EAAE,MAAM;IAClC,OAAO;MACL6B,KAAK,EAAEA,CAAA,KAAM;QACXD,aAAa,CAACD,OAAO,EAAEE,KAAK,CAAC,CAAC;MAChC;IACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMpB,QAAQ,GAAG/B,WAAW,CAGzBoD,KAAK,IAAK;IACTpB,YAAY,GAAGoB,KAAK,CAAC;EACvB,CAAC,EACD,CAACpB,YAAY,CACf,CAAC;EAED,MAAMqB,oBAAoB,GAAGrD,WAAW,CACtC,CAAC;IACCa,eAAe;IACfyC,qBAAqB;IACrBlC,EAAE;IACFmC;EACgB,CAAC,KACjB5C,IAAA,CAAA6C,UAAA;IAAA,GACMT,WAAW;IACf,oBAAkBlC,eAAgB;IAClC4C,YAAY,EAAEhB,SAAS,KAAK,UAAU,GAAG3B,gBAAgB,GAAG,KAAM;IAElE4C,SAAS,EAAExC,eAAgB;IAC3ByC,YAAY,EACVjC,eAAe,IACbf,IAAA,CAAAiD,eAAA;MAAgBC,QAAQ,EAAC,KAAK;MAAAC,QAAA,EAC5BnD,IAAA,CAAAoD,WAAA;QACE,iBAAe3C,EAAG;QAClB,cAAYoB,CAAC,CAAC,+BAA+B,CAAE;QAC/C,gBAAcC,SAAS,KAAK,MAAO;QACnCuB,OAAO,EAAErB,wBAAyB;QAAAmB,QAAA,EAEjCrB,SAAS,KAAK,UAAU,GAAG9B,IAAA,CAACJ,QAAQ,IAAE,CAAC,GAAGI,IAAA,CAACL,QAAQ,IAAE;MAAC,CAC7C;IAAC,CACC,CAEnB;IACDc,EAAE,EAAEA,EAAG;IACP6C,UAAU,EAAE;MACV,mBAAmB,EAAEX,qBAAqB;MAC1C,iBAAiB,EAAEC,cAAc;MACjC,SAAS,EAAEnB,MAAM;MAEjB8B,IAAI,EAAE;IACR,CAAE;IACF5C,QAAQ,EAAE4B,aAAc;IACxBrB,IAAI,EAAEC,YAAY,IAAIV,EAAG;IACzBc,MAAM,EAAEA,MAAO;IACfH,QAAQ,EAAEA,QAAS;IACnBE,OAAO,EAAEA,OAAQ;IACjBE,WAAW,EAAEA,WAAY;IACzBgC,QAAQ,EAAExC,UAAW;IACrBY,GAAG,EAAEA,GAAI;IACT6B,QAAQ,EAAE,CAAC3C,UAAW;IACtBY,SAAS,EAAEA,SAAU;IACrBgC,IAAI,EAAE5B;EAAU,CACjB,CACF,EACD,CACE3B,gBAAgB,EAChBI,eAAe,EACf6B,WAAW,EACXP,CAAC,EACDG,wBAAwB,EACxBF,SAAS,EACTX,YAAY,EACZC,QAAQ,EACRE,OAAO,EACPC,MAAM,EACNC,WAAW,EACXV,UAAU,EACVE,UAAU,EACVD,eAAe,EACfa,GAAG,EACHH,MAAM,EACNC,SAAS,CAEb,CAAC;EAED,OACE1B,IAAA,CAACP,KAAK;IACJS,eAAe,EAAEA,eAAgB;IACjCG,YAAY,EAAEA,YAAa;IAC3BC,gBAAgB,EAAEA,gBAAiB;IACnCqD,SAAS,EAAC,QAAQ;IAClBC,eAAe;IACfpD,IAAI,EAAEA,IAAK;IACXC,EAAE,EAAEC,UAAW;IACfE,UAAU,EAAEA,UAAW;IACvBC,WAAW,EAAEA,WAAY;IACzBC,UAAU,EAAEA,UAAW;IACvBG,KAAK,EAAEA,KAAM;IACbyB,oBAAoB,EAAEA;EAAqB,CAC5C,CAAC;AAEN,CACF,CAAC;AAED,MAAMmB,qBAAqB,GAAGzE,IAAI,CAACa,aAAa,CAAC;AACjD4D,qBAAqB,CAACC,WAAW,GAAG,eAAe;AAEnD,SAASD,qBAAqB,IAAI5D,aAAa","ignoreList":[]}
package/dist/esm/Radio.js CHANGED
@@ -76,19 +76,33 @@ const Radio = ({
76
76
  const onBlur = useCallback(event => {
77
77
  onBlurProp?.(event);
78
78
  }, [onBlurProp]);
79
+ const radioStyles = useMemo(() => ({
80
+ ...(isReadOnly && {
81
+ cursor: "default",
82
+ "& .MuiTypography-root": {
83
+ cursor: "default"
84
+ }
85
+ }),
86
+ ...(hint && {
87
+ ":not(:last-child)": {
88
+ marginBlockEnd: "0"
89
+ }
90
+ })
91
+ }), [hint, isReadOnly]);
92
+ const inputProps = useMemo(() => ({
93
+ "aria-describedby": hintId,
94
+ "aria-disabled": isDisabled || isReadOnly,
95
+ "data-se": testId,
96
+ readOnly: isReadOnly,
97
+ tabIndex: isReadOnly ? 0 : undefined
98
+ }), [hintId, isDisabled, isReadOnly, testId]);
79
99
  return _jsxs(_Fragment, {
80
100
  children: [_jsx(_FormControlLabel, {
81
101
  checked: isChecked,
82
102
  className: isInvalid ? "Mui-error" : "",
83
103
  control: _jsx(_Radio, {
84
104
  disabled: isDisabled,
85
- inputProps: {
86
- "aria-describedby": hintId,
87
- "aria-disabled": isDisabled || isReadOnly,
88
- "data-se": testId,
89
- readOnly: isReadOnly,
90
- tabIndex: isReadOnly ? 0 : undefined
91
- },
105
+ inputProps: inputProps,
92
106
  inputRef: localInputRef,
93
107
  onChange: onChange,
94
108
  onClick: onClick || handleClick
@@ -97,19 +111,7 @@ const Radio = ({
97
111
  label: label,
98
112
  name: name,
99
113
  onBlur: onBlur,
100
- sx: {
101
- ...(isReadOnly && {
102
- cursor: "default",
103
- "& .MuiTypography-root": {
104
- cursor: "default"
105
- }
106
- }),
107
- ...(hint && {
108
- ":not(:last-child)": {
109
- marginBlockEnd: 0
110
- }
111
- })
112
- },
114
+ sx: radioStyles,
113
115
  translate: translate,
114
116
  value: value
115
117
  }), hint && _jsx(HintContainerWithInlineStartSpacing, {
@@ -1 +1 @@
1
- {"version":3,"file":"Radio.js","names":["styled","memo","useCallback","useImperativeHandle","useMemo","useRef","useOdysseyDesignTokens","Typography","useUniqueId","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","HintContainerWithInlineStartSpacing","div","odysseyDesignTokens","paddingInlineStart","TypographyLineHeightUi","Spacing2","marginBlockEnd","color","TypographyColorSubordinate","Radio","hint","id","idOverride","inputRef","isChecked","isDisabled","isInvalid","label","labelProp","name","testId","translate","value","isReadOnly","onChange","onChangeProp","onBlur","onBlurProp","onClick","localInputRef","hintId","undefined","focus","current","component","children","event","checked","preventDefault","handleClick","stopPropagation","_FormControlLabel","className","control","_Radio","disabled","inputProps","readOnly","tabIndex","sx","cursor","_FormHelperText","MemoizedRadio","displayName"],"sources":["../../src/Radio.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n FormControlLabel,\n FormHelperText,\n FormControlLabelProps as MuiFormControlLabelProps,\n Radio as MuiRadio,\n RadioProps as MuiRadioProps,\n} from \"@mui/material\";\nimport { memo, useCallback, useImperativeHandle, useMemo, useRef } from \"react\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { FieldComponentProps } from \"./FieldComponentProps.js\";\nimport { FocusHandle } from \"./inputUtils.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { Typography } from \"./Typography.js\";\nimport { useUniqueId } from \"./useUniqueId.js\";\n\nconst HintContainerWithInlineStartSpacing = styled.div<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingInlineStart: `calc(${odysseyDesignTokens.TypographyLineHeightUi}em + ${odysseyDesignTokens.Spacing2})`,\n marginBlockEnd: odysseyDesignTokens.Spacing2,\n\n // MUI applies the '.Mui-error' class to this hint text when the checkbox is invalid which turns the copy red\n // We want to keep the hint text gray in the error state\n \".Mui-error\": {\n color: odysseyDesignTokens.TypographyColorSubordinate,\n },\n}));\n\nexport type RadioProps = {\n /**\n * The ref forwarded to the Radio\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * Determines whether the Radio button is checked\n */\n isChecked?: boolean;\n /**\n * If `true`, the radio button has an invalid value\n */\n isInvalid?: boolean;\n /**\n * The label text for the Radio\n */\n label: string;\n onBlur?: MuiFormControlLabelProps[\"onBlur\"];\n /**\n * Callback fired when the blur event happens. Provides event value.\n */\n onChange?: MuiRadioProps[\"onChange\"];\n onClick?: React.MouseEventHandler<HTMLSpanElement>;\n /**\n * The value attribute of the Radio\n */\n value: string;\n} & Pick<\n FieldComponentProps,\n \"hint\" | \"id\" | \"isDisabled\" | \"isReadOnly\" | \"name\"\n> &\n Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst Radio = ({\n hint,\n id: idOverride,\n inputRef,\n isChecked,\n isDisabled,\n isInvalid,\n label: labelProp,\n name,\n testId,\n translate,\n value,\n isReadOnly,\n onChange: onChangeProp,\n onBlur: onBlurProp,\n onClick,\n}: RadioProps) => {\n const localInputRef = useRef<HTMLInputElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const id = useUniqueId(idOverride);\n const hintId = hint ? `${id}-hint` : undefined;\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const label = useMemo(\n () => <Typography component=\"span\">{labelProp}</Typography>,\n [labelProp],\n );\n\n const onChange = useCallback<NonNullable<MuiRadioProps[\"onChange\"]>>(\n (event, checked) => {\n if (isReadOnly) {\n event.preventDefault();\n } else {\n onChangeProp?.(event, checked);\n }\n },\n [onChangeProp, isReadOnly],\n );\n\n const handleClick = useCallback<React.MouseEventHandler<HTMLSpanElement>>(\n (event) => {\n if (isReadOnly) {\n event.stopPropagation();\n event.preventDefault();\n }\n },\n [isReadOnly],\n );\n const onBlur = useCallback<NonNullable<MuiFormControlLabelProps[\"onBlur\"]>>(\n (event) => {\n onBlurProp?.(event);\n },\n [onBlurProp],\n );\n\n return (\n <>\n <FormControlLabel\n checked={isChecked}\n className={isInvalid ? \"Mui-error\" : \"\"}\n control={\n <MuiRadio\n disabled={isDisabled}\n inputProps={{\n \"aria-describedby\": hintId,\n \"aria-disabled\": isDisabled || isReadOnly,\n \"data-se\": testId,\n readOnly: isReadOnly,\n tabIndex: isReadOnly ? 0 : undefined,\n }}\n inputRef={localInputRef}\n onChange={onChange}\n onClick={onClick || handleClick}\n />\n }\n disabled={isDisabled}\n label={label}\n name={name}\n onBlur={onBlur}\n sx={{\n ...(isReadOnly && {\n cursor: \"default\",\n \"& .MuiTypography-root\": {\n cursor: \"default\",\n },\n }),\n\n ...(hint && {\n // needed to override specific :not(:last-child) selector\n \":not(:last-child)\": {\n marginBlockEnd: 0,\n },\n }),\n }}\n translate={translate}\n value={value}\n />\n {hint && (\n <HintContainerWithInlineStartSpacing\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <FormHelperText id={hintId} translate={translate}>\n {hint}\n </FormHelperText>\n </HintContainerWithInlineStartSpacing>\n )}\n </>\n );\n};\n\nconst MemoizedRadio = memo(Radio);\nMemoizedRadio.displayName = \"Radio\";\n\nexport { MemoizedRadio as Radio };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Radio.js","names":["styled","memo","useCallback","useImperativeHandle","useMemo","useRef","useOdysseyDesignTokens","Typography","useUniqueId","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","HintContainerWithInlineStartSpacing","div","odysseyDesignTokens","paddingInlineStart","TypographyLineHeightUi","Spacing2","marginBlockEnd","color","TypographyColorSubordinate","Radio","hint","id","idOverride","inputRef","isChecked","isDisabled","isInvalid","label","labelProp","name","testId","translate","value","isReadOnly","onChange","onChangeProp","onBlur","onBlurProp","onClick","localInputRef","hintId","undefined","focus","current","component","children","event","checked","preventDefault","handleClick","stopPropagation","radioStyles","cursor","inputProps","readOnly","tabIndex","_FormControlLabel","className","control","_Radio","disabled","sx","_FormHelperText","MemoizedRadio","displayName"],"sources":["../../src/Radio.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n FormControlLabel,\n FormHelperText,\n FormControlLabelProps as MuiFormControlLabelProps,\n Radio as MuiRadio,\n RadioProps as MuiRadioProps,\n} from \"@mui/material\";\nimport {\n InputHTMLAttributes,\n memo,\n useCallback,\n useImperativeHandle,\n useMemo,\n useRef,\n} from \"react\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { FieldComponentProps } from \"./FieldComponentProps.js\";\nimport { FocusHandle } from \"./inputUtils.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { Typography } from \"./Typography.js\";\nimport { useUniqueId } from \"./useUniqueId.js\";\n\nconst HintContainerWithInlineStartSpacing = styled.div<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingInlineStart: `calc(${odysseyDesignTokens.TypographyLineHeightUi}em + ${odysseyDesignTokens.Spacing2})`,\n marginBlockEnd: odysseyDesignTokens.Spacing2,\n\n // MUI applies the '.Mui-error' class to this hint text when the checkbox is invalid which turns the copy red\n // We want to keep the hint text gray in the error state\n \".Mui-error\": {\n color: odysseyDesignTokens.TypographyColorSubordinate,\n },\n}));\n\nexport type RadioProps = {\n /**\n * The ref forwarded to the Radio\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * Determines whether the Radio button is checked\n */\n isChecked?: boolean;\n /**\n * If `true`, the radio button has an invalid value\n */\n isInvalid?: boolean;\n /**\n * The label text for the Radio\n */\n label: string;\n onBlur?: MuiFormControlLabelProps[\"onBlur\"];\n /**\n * Callback fired when the blur event happens. Provides event value.\n */\n onChange?: MuiRadioProps[\"onChange\"];\n onClick?: React.MouseEventHandler<HTMLSpanElement>;\n /**\n * The value attribute of the Radio\n */\n value: string;\n} & Pick<\n FieldComponentProps,\n \"hint\" | \"id\" | \"isDisabled\" | \"isReadOnly\" | \"name\"\n> &\n Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst Radio = ({\n hint,\n id: idOverride,\n inputRef,\n isChecked,\n isDisabled,\n isInvalid,\n label: labelProp,\n name,\n testId,\n translate,\n value,\n isReadOnly,\n onChange: onChangeProp,\n onBlur: onBlurProp,\n onClick,\n}: RadioProps) => {\n const localInputRef = useRef<HTMLInputElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const id = useUniqueId(idOverride);\n const hintId = hint ? `${id}-hint` : undefined;\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const label = useMemo(\n () => <Typography component=\"span\">{labelProp}</Typography>,\n [labelProp],\n );\n\n const onChange = useCallback<NonNullable<MuiRadioProps[\"onChange\"]>>(\n (event, checked) => {\n if (isReadOnly) {\n event.preventDefault();\n } else {\n onChangeProp?.(event, checked);\n }\n },\n [onChangeProp, isReadOnly],\n );\n\n const handleClick = useCallback<React.MouseEventHandler<HTMLSpanElement>>(\n (event) => {\n if (isReadOnly) {\n event.stopPropagation();\n event.preventDefault();\n }\n },\n [isReadOnly],\n );\n\n const onBlur = useCallback<NonNullable<MuiFormControlLabelProps[\"onBlur\"]>>(\n (event) => {\n onBlurProp?.(event);\n },\n [onBlurProp],\n );\n\n const radioStyles = useMemo(\n () => ({\n ...(isReadOnly && {\n cursor: \"default\",\n \"& .MuiTypography-root\": {\n cursor: \"default\",\n } as CSSStyleDeclaration,\n }),\n\n ...(hint && {\n // needed to override specific :not(:last-child) selector\n \":not(:last-child)\": {\n marginBlockEnd: \"0\",\n } as CSSStyleDeclaration,\n }),\n }),\n [hint, isReadOnly],\n );\n\n const inputProps = useMemo<InputHTMLAttributes<HTMLInputElement>>(\n () => ({\n \"aria-describedby\": hintId,\n \"aria-disabled\": isDisabled || isReadOnly,\n \"data-se\": testId,\n readOnly: isReadOnly,\n tabIndex: isReadOnly ? 0 : undefined,\n }),\n [hintId, isDisabled, isReadOnly, testId],\n );\n\n return (\n <>\n <FormControlLabel\n checked={isChecked}\n className={isInvalid ? \"Mui-error\" : \"\"}\n control={\n <MuiRadio\n disabled={isDisabled}\n inputProps={inputProps}\n inputRef={localInputRef}\n onChange={onChange}\n onClick={onClick || handleClick}\n />\n }\n disabled={isDisabled}\n label={label}\n name={name}\n onBlur={onBlur}\n sx={radioStyles}\n translate={translate}\n value={value}\n />\n {hint && (\n <HintContainerWithInlineStartSpacing\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <FormHelperText id={hintId} translate={translate}>\n {hint}\n </FormHelperText>\n </HintContainerWithInlineStartSpacing>\n )}\n </>\n );\n};\n\nconst MemoizedRadio = memo(Radio);\nMemoizedRadio.displayName = \"Radio\";\n\nexport { MemoizedRadio as Radio };\n"],"mappings":"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","ignoreList":[]}
@@ -15,8 +15,8 @@ import _IconButton from "@mui/material/IconButton";
15
15
 
16
16
  import styled from "@emotion/styled";
17
17
  import { forwardRef, memo, useCallback, useRef } from "react";
18
- import { useTranslation } from "react-i18next";
19
18
  import { Field } from "./Field.js";
19
+ import { useTranslation } from "./i18n.generated/i18n.js";
20
20
  import { CloseCircleFilledIcon, SearchIcon } from "./icons.generated/index.js";
21
21
  import { getControlState, useInputValues } from "./inputUtils.js";
22
22
  import { OdysseyThemeProvider } from "./OdysseyThemeProvider.js";
@@ -1 +1 @@
1
- {"version":3,"file":"SearchField.js","names":["styled","forwardRef","memo","useCallback","useRef","useTranslation","Field","CloseCircleFilledIcon","SearchIcon","getControlState","useInputValues","OdysseyThemeProvider","jsx","_jsx","searchVariantValues","StyledContainerToEnsureThemeProviderDivIsFullWidth","width","SearchField","ariaDescribedBy","autoCompleteType","defaultValue","hasInitialFocus","id","idOverride","isDisabled","isFullWidth","label","name","nameOverride","onChange","onChangeProp","onFocus","onBlur","onClear","onClearProp","placeholder","tabIndex","testId","translate","value","variant","ref","t","event","controlledStateRef","controlledValue","uncontrolledValue","inputValues","controlState","current","renderFieldComponent","_InputBase","autoComplete","autoFocus","endAdornment","_InputAdornment","position","children","_IconButton","disabled","onClick","size","inputProps","startAdornment","type","fieldType","hasVisibleLabel","isOptional","MemoizedSearchField","displayName"],"sources":["../../src/SearchField.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { IconButton, InputAdornment, InputBase } from \"@mui/material\";\nimport {\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n HTMLAttributes,\n InputHTMLAttributes,\n memo,\n useCallback,\n useRef,\n} from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport { CloseCircleFilledIcon, SearchIcon } from \"./icons.generated/index.js\";\nimport { getControlState, useInputValues } from \"./inputUtils.js\";\nimport { OdysseyThemeProvider } from \"./OdysseyThemeProvider.js\";\n\nexport const searchVariantValues = [\"outline\", \"filled\"] as const;\n\nconst StyledContainerToEnsureThemeProviderDivIsFullWidth = styled(\"div\")({\n width: \"100%\",\n});\n\nexport type SearchFieldProps = {\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoCompleteType?: InputHTMLAttributes<HTMLInputElement>[\"autoComplete\"];\n /**\n * The value of the `input` element to use when uncontrolled.\n */\n defaultValue?: string;\n /**\n * If `true`, the component will receive focus automatically.\n */\n hasInitialFocus?: boolean;\n /**\n * The id of the `input` element.\n */\n id?: string;\n /**\n * If `true`, the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * This label won't show up visually, but it's required for accessibility.\n */\n label: string;\n /**\n * Callback fired when the `input` element loses focus.\n */\n onBlur?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * Callback fired when the value is changed.\n */\n onChange?: ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>;\n /**\n * Callback fired when the clear button is pressed.\n */\n onClear?: () => void;\n /**\n * Callback fired when the `input` element get focus.\n */\n onFocus?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder?: string;\n\n tabIndex?: HTMLAttributes<HTMLElement>[\"tabIndex\"];\n /**\n * The value of the `input` element, to use when controlled.\n */\n value?: string;\n /**\n * Whether the SearchField has a gray or white background\n */\n variant?: (typeof searchVariantValues)[number];\n} & Pick<FieldComponentProps, \"id\" | \"isDisabled\" | \"name\" | \"isFullWidth\"> &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype FieldRenderProps = Partial<Pick<HtmlProps, \"ariaDescribedBy\">> &\n Pick<FieldComponentRenderProps, \"id\">;\n\nconst SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(\n (\n {\n ariaDescribedBy,\n autoCompleteType,\n defaultValue,\n hasInitialFocus,\n id: idOverride,\n isDisabled = false,\n isFullWidth = false,\n label,\n name: nameOverride,\n onChange: onChangeProp,\n onFocus,\n onBlur,\n onClear: onClearProp,\n placeholder,\n tabIndex,\n testId,\n translate,\n value,\n variant = \"outline\",\n },\n ref,\n ) => {\n const { t } = useTranslation();\n\n const onChange: ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement> =\n useCallback(\n (event) => {\n onChangeProp?.(event);\n },\n [onChangeProp],\n );\n\n const onClear = useCallback(() => {\n onClearProp?.();\n }, [onClearProp]);\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const renderFieldComponent = useCallback(\n ({ ariaDescribedBy, id }: FieldRenderProps) => (\n <InputBase\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n autoComplete={autoCompleteType}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n data-ods-type=\"search\"\n data-ods-variant={variant}\n data-se={testId}\n endAdornment={\n (inputValues?.defaultValue || inputValues?.value) && (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={t(\"clear.text\")}\n disabled={isDisabled}\n onClick={onClear}\n size=\"small\"\n >\n <CloseCircleFilledIcon />\n </IconButton>\n </InputAdornment>\n )\n }\n id={id}\n inputProps={{\n tabIndex,\n }}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n placeholder={placeholder}\n ref={ref}\n startAdornment={\n <InputAdornment position=\"start\">\n <SearchIcon />\n </InputAdornment>\n }\n translate={translate}\n type=\"search\"\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\n inputValues,\n isDisabled,\n nameOverride,\n onBlur,\n onChange,\n onClear,\n onFocus,\n placeholder,\n ref,\n t,\n tabIndex,\n testId,\n translate,\n variant,\n ],\n );\n\n return (\n <StyledContainerToEnsureThemeProviderDivIsFullWidth>\n <OdysseyThemeProvider>\n <Field\n ariaDescribedBy={ariaDescribedBy}\n fieldType=\"single\"\n hasVisibleLabel={false}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={true}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n </OdysseyThemeProvider>\n </StyledContainerToEnsureThemeProviderDivIsFullWidth>\n );\n },\n);\n\nconst MemoizedSearchField = memo(SearchField);\nMemoizedSearchField.displayName = \"SearchField\";\n\nexport { MemoizedSearchField as SearchField };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SearchField.js","names":["styled","forwardRef","memo","useCallback","useRef","Field","useTranslation","CloseCircleFilledIcon","SearchIcon","getControlState","useInputValues","OdysseyThemeProvider","jsx","_jsx","searchVariantValues","StyledContainerToEnsureThemeProviderDivIsFullWidth","width","SearchField","ariaDescribedBy","autoCompleteType","defaultValue","hasInitialFocus","id","idOverride","isDisabled","isFullWidth","label","name","nameOverride","onChange","onChangeProp","onFocus","onBlur","onClear","onClearProp","placeholder","tabIndex","testId","translate","value","variant","ref","t","event","controlledStateRef","controlledValue","uncontrolledValue","inputValues","controlState","current","renderFieldComponent","_InputBase","autoComplete","autoFocus","endAdornment","_InputAdornment","position","children","_IconButton","disabled","onClick","size","inputProps","startAdornment","type","fieldType","hasVisibleLabel","isOptional","MemoizedSearchField","displayName"],"sources":["../../src/SearchField.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { IconButton, InputAdornment, InputBase } from \"@mui/material\";\nimport {\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n HTMLAttributes,\n InputHTMLAttributes,\n memo,\n useCallback,\n useRef,\n} from \"react\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport { useTranslation } from \"./i18n.generated/i18n.js\";\nimport { CloseCircleFilledIcon, SearchIcon } from \"./icons.generated/index.js\";\nimport { getControlState, useInputValues } from \"./inputUtils.js\";\nimport { OdysseyThemeProvider } from \"./OdysseyThemeProvider.js\";\n\nexport const searchVariantValues = [\"outline\", \"filled\"] as const;\n\nconst StyledContainerToEnsureThemeProviderDivIsFullWidth = styled(\"div\")({\n width: \"100%\",\n});\n\nexport type SearchFieldProps = {\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoCompleteType?: InputHTMLAttributes<HTMLInputElement>[\"autoComplete\"];\n /**\n * The value of the `input` element to use when uncontrolled.\n */\n defaultValue?: string;\n /**\n * If `true`, the component will receive focus automatically.\n */\n hasInitialFocus?: boolean;\n /**\n * The id of the `input` element.\n */\n id?: string;\n /**\n * If `true`, the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * This label won't show up visually, but it's required for accessibility.\n */\n label: string;\n /**\n * Callback fired when the `input` element loses focus.\n */\n onBlur?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * Callback fired when the value is changed.\n */\n onChange?: ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>;\n /**\n * Callback fired when the clear button is pressed.\n */\n onClear?: () => void;\n /**\n * Callback fired when the `input` element get focus.\n */\n onFocus?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder?: string;\n\n tabIndex?: HTMLAttributes<HTMLElement>[\"tabIndex\"];\n /**\n * The value of the `input` element, to use when controlled.\n */\n value?: string;\n /**\n * Whether the SearchField has a gray or white background\n */\n variant?: (typeof searchVariantValues)[number];\n} & Pick<FieldComponentProps, \"id\" | \"isDisabled\" | \"name\" | \"isFullWidth\"> &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype FieldRenderProps = Partial<Pick<HtmlProps, \"ariaDescribedBy\">> &\n Pick<FieldComponentRenderProps, \"id\">;\n\nconst SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(\n (\n {\n ariaDescribedBy,\n autoCompleteType,\n defaultValue,\n hasInitialFocus,\n id: idOverride,\n isDisabled = false,\n isFullWidth = false,\n label,\n name: nameOverride,\n onChange: onChangeProp,\n onFocus,\n onBlur,\n onClear: onClearProp,\n placeholder,\n tabIndex,\n testId,\n translate,\n value,\n variant = \"outline\",\n },\n ref,\n ) => {\n const { t } = useTranslation();\n\n const onChange: ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement> =\n useCallback(\n (event) => {\n onChangeProp?.(event);\n },\n [onChangeProp],\n );\n\n const onClear = useCallback(() => {\n onClearProp?.();\n }, [onClearProp]);\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const renderFieldComponent = useCallback(\n ({ ariaDescribedBy, id }: FieldRenderProps) => (\n <InputBase\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n autoComplete={autoCompleteType}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n data-ods-type=\"search\"\n data-ods-variant={variant}\n data-se={testId}\n endAdornment={\n (inputValues?.defaultValue || inputValues?.value) && (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={t(\"clear.text\")}\n disabled={isDisabled}\n onClick={onClear}\n size=\"small\"\n >\n <CloseCircleFilledIcon />\n </IconButton>\n </InputAdornment>\n )\n }\n id={id}\n inputProps={{\n tabIndex,\n }}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n placeholder={placeholder}\n ref={ref}\n startAdornment={\n <InputAdornment position=\"start\">\n <SearchIcon />\n </InputAdornment>\n }\n translate={translate}\n type=\"search\"\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\n inputValues,\n isDisabled,\n nameOverride,\n onBlur,\n onChange,\n onClear,\n onFocus,\n placeholder,\n ref,\n t,\n tabIndex,\n testId,\n translate,\n variant,\n ],\n );\n\n return (\n <StyledContainerToEnsureThemeProviderDivIsFullWidth>\n {/* Required for `contrastMode`. */}\n <OdysseyThemeProvider>\n <Field\n ariaDescribedBy={ariaDescribedBy}\n fieldType=\"single\"\n hasVisibleLabel={false}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={true}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n </OdysseyThemeProvider>\n </StyledContainerToEnsureThemeProviderDivIsFullWidth>\n );\n },\n);\n\nconst MemoizedSearchField = memo(SearchField);\nMemoizedSearchField.displayName = \"SearchField\";\n\nexport { MemoizedSearchField as SearchField };\n"],"mappings":"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","ignoreList":[]}
@@ -25,42 +25,6 @@ import { ComponentControlledState, getControlState, useInputValues } from "./inp
25
25
  import { useOdysseyDesignTokens } from "./OdysseyDesignTokensContext.js";
26
26
  import { normalizedKey } from "./useNormalizedKey.js";
27
27
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
28
- export const SelectTestSelector = {
29
- accessibleText: {
30
- errorMessage: "errorMessage",
31
- hint: "description",
32
- label: "label"
33
- },
34
- children: {
35
- list: {
36
- accessibleText: {
37
- label: "label"
38
- },
39
- children: {
40
- listItem: {
41
- accessibleText: {
42
- label: "label"
43
- },
44
- elementSelector: {
45
- method: "ByRole",
46
- options: {
47
- label: "name"
48
- },
49
- role: "option"
50
- }
51
- }
52
- },
53
- isControlledElement: true
54
- }
55
- },
56
- elementSelector: {
57
- method: "ByRole",
58
- options: {
59
- label: "name"
60
- },
61
- role: "combobox"
62
- }
63
- };
64
28
  const SelectContainer = styled.div`
65
29
  position: relative;
66
30
  width: 100%;
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["styled","memo","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","Field","CheckIcon","CloseCircleFilledIcon","ComponentControlledState","getControlState","useInputValues","useOdysseyDesignTokens","normalizedKey","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SelectTestSelector","accessibleText","errorMessage","hint","label","children","list","listItem","elementSelector","method","options","role","isControlledElement","SelectContainer","div","ChipsPositioningContainer","shouldForwardProp","prop","odysseyDesignTokens","alignItems","display","insetBlockEnd","insetBlockStart","insetInlineEnd","insetInlineStart","marginInlineStart","BorderWidthMain","opacity","pointerEvents","position","NonInteractiveIcon","fontSize","marginBlockEnd","marginInlineEnd","Spacing1","Spacing2","ChipsInnerContainer","_Box","isInteractive","isReadOnly","flexWrap","gap","marginBlock","minHeight","Spacing6","CONTROLLED","Select","ariaDescribedBy","defaultValue","errorMessageList","hasMultipleChoices","hasMultipleChoicesProp","HintLinkComponent","id","idOverride","inputRef","isDisabled","isFullWidth","isMultiSelect","isOptional","name","nameOverride","onBlur","onChange","onChangeProp","onFocus","testId","translate","value","selectRef","undefined","controlledStateRef","controlledValue","uncontrolledValue","internalSelectedValues","setInternalSelectedValues","current","localInputRef","focus","inputValues","controlState","event","child","preventDefault","target","split","normalizedOptions","normalizedOptionsMap","map","option","text","type","lang","language","Map","removeSelectedValue","selectedValue","Array","isArray","newValue","filter","internalSelectedValue","syntheticEvent","Chips","stopPropagation","hasNonInteractiveIcon","item","length","_Chip","deleteIcon","onMouseDown","sx","get","onDelete","tabIndex","renderedOptions","index","_ListSubheader","isSelected","includes","_MenuItem","selected","_Checkbox","checked","_ListItemSecondaryAction","toString","renderValue","renderFieldComponent","errorMessageElementId","labelElementId","_Select","displayEmpty","inputProps","readOnly","el","labelId","MenuProps","maxHeight","multiple","fieldType","hasVisibleLabel","MemoizedSelect","displayName"],"sources":["../../src/Select.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n ListItemSecondaryAction,\n ListSubheader,\n Box as MuiBox,\n Checkbox as MuiCheckbox,\n Chip as MuiChip,\n MenuItem as MuiMenuItem,\n Select as MuiSelect,\n SelectProps as MuiSelectProps,\n SelectChangeEvent,\n} from \"@mui/material\";\nimport {\n memo,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport { CheckIcon, CloseCircleFilledIcon } from \"./icons.generated/index.js\";\nimport {\n ComponentControlledState,\n FocusHandle,\n getControlState,\n useInputValues,\n} from \"./inputUtils.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { TestSelector } from \"./test-selectors/index.js\";\nimport { normalizedKey } from \"./useNormalizedKey.js\";\n\nexport const SelectTestSelector = {\n accessibleText: {\n errorMessage: \"errorMessage\",\n hint: \"description\",\n label: \"label\",\n },\n children: {\n list: {\n accessibleText: {\n label: \"label\",\n },\n children: {\n listItem: {\n accessibleText: {\n label: \"label\",\n },\n elementSelector: {\n method: \"ByRole\",\n options: {\n label: \"name\",\n },\n role: \"option\",\n },\n },\n },\n isControlledElement: true,\n },\n },\n elementSelector: {\n method: \"ByRole\",\n options: {\n label: \"name\",\n },\n role: \"combobox\",\n },\n} as const satisfies TestSelector;\n\nexport type SelectOption = {\n language?: string;\n text: string;\n type?: \"heading\" | \"option\";\n value?: string;\n};\n\nconst SelectContainer = styled.div`\n position: relative;\n width: 100%;\n display: flex;\n`;\n\nconst ChipsPositioningContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => {\n return {\n alignItems: \"center\",\n display: \"flex\",\n insetBlockEnd: 0,\n insetBlockStart: 0,\n insetInlineEnd: \"25px\", // This 25px is used to align with MUI's default chip positioning logic.\n insetInlineStart: \"4px\",\n marginInlineStart: odysseyDesignTokens.BorderWidthMain,\n opacity: 1,\n pointerEvents: \"none\",\n position: \"absolute\",\n };\n});\n\nconst NonInteractiveIcon = styled(CloseCircleFilledIcon, {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n fontSize: \"1em\",\n marginBlockEnd: \"-1px\",\n marginInlineEnd: `-${odysseyDesignTokens.Spacing1}`,\n marginInlineStart: odysseyDesignTokens.Spacing2,\n}));\n\nconst ChipsInnerContainer = styled(MuiBox, {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isInteractive\" &&\n prop !== \"isReadOnly\",\n})<{\n isInteractive?: boolean;\n isReadOnly?: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isInteractive, isReadOnly, odysseyDesignTokens }) => ({\n display: \"flex\",\n flexWrap: \"wrap\",\n gap: odysseyDesignTokens.Spacing1,\n marginBlock: `-${odysseyDesignTokens.Spacing2}`,\n marginInlineEnd: odysseyDesignTokens.Spacing1,\n minHeight: odysseyDesignTokens.Spacing6,\n opacity: isInteractive || isReadOnly ? 1 : 0,\n pointerEvents: \"none\",\n}));\n\nexport type SelectValueType<HasMultipleChoices> =\n HasMultipleChoices extends true ? string[] : string;\n\nexport type SelectProps<\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean,\n> = {\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue?: MuiSelectProps<Value>[\"defaultValue\"];\n /**\n * If `true`, the Select allows multiple selections\n */\n hasMultipleChoices?: HasMultipleChoices;\n /**\n * The ref forwarded to the Select\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * @deprecated Use `hasMultipleChoices` instead.\n */\n /** **Deprecated:** use `hasMultipleChoices` */\n isMultiSelect?: HasMultipleChoices;\n /**\n * The label text for the Select\n */\n label: string;\n /**\n * Callback fired when the Select loses focus\n */\n onBlur?: MuiSelectProps<Value>[\"onBlur\"];\n /**\n * Callback fired when the value of the Select changes\n */\n onChange?: MuiSelectProps<Value>[\"onChange\"];\n /**\n * Callback fired when the Select gains focus\n */\n onFocus?: MuiSelectProps<Value>[\"onFocus\"];\n /**\n * The options for the Select\n */\n options: (string | SelectOption)[];\n /**\n * The value or values selected in the Select\n */\n value?: Value;\n} & Pick<\n FieldComponentProps,\n | \"errorMessage\"\n | \"errorMessageList\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isFullWidth\"\n | \"isOptional\"\n | \"isReadOnly\"\n | \"name\"\n> &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype SelectRenderProps = Partial<\n Pick<FieldComponentRenderProps, \"ariaDescribedBy\" | \"errorMessageElementId\">\n> &\n Pick<FieldComponentRenderProps, \"id\" | \"labelElementId\">;\n\n/**\n * Options in Odyssey <Select> are passed as an array, which can contain any combination\n * of the following:\n * - string — A simple string. The string will be both the text and the value of the resulting option.\n * <option value=\"string\">string</option>\n *\n * - { text: string } — Same as above, but the string is contained within an object.\n * <option value=\"text\">text</option>\n *\n * - { text: string, value: string } — The option text will be text, and the option value will be value.\n * <option value=\"value\">text</option>\n *\n * - { text: string, type: \"heading\" } — Used to display a group heading with the text\n */\n\nconst { CONTROLLED } = ComponentControlledState;\nconst Select = <\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean,\n>({\n ariaDescribedBy,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasMultipleChoices: hasMultipleChoicesProp,\n hint,\n HintLinkComponent,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isFullWidth = false,\n isMultiSelect,\n isOptional = false,\n isReadOnly = false,\n label,\n name: nameOverride,\n onBlur,\n onChange: onChangeProp,\n onFocus,\n options,\n testId,\n translate,\n value,\n}: SelectProps<Value, HasMultipleChoices>) => {\n const selectRef = useRef<HTMLInputElement | HTMLTextAreaElement | null>(null);\n\n const hasMultipleChoices = useMemo(\n () =>\n hasMultipleChoicesProp === undefined\n ? isMultiSelect\n : hasMultipleChoicesProp,\n [hasMultipleChoicesProp, isMultiSelect],\n );\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const [internalSelectedValues, setInternalSelectedValues] = useState(\n controlledStateRef.current === CONTROLLED ? value : defaultValue,\n );\n\n const localInputRef = useRef<HTMLSelectElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n useEffect(() => {\n if (controlledStateRef.current === CONTROLLED) {\n setInternalSelectedValues(value);\n }\n }, [value]);\n\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const onChange = useCallback<NonNullable<MuiSelectProps<Value>[\"onChange\"]>>(\n (event, child) => {\n if (isReadOnly) {\n event.preventDefault();\n } else {\n const {\n target: { value },\n } = event;\n if (controlledStateRef.current !== CONTROLLED) {\n setInternalSelectedValues(\n (typeof value === \"string\" && hasMultipleChoices\n ? value.split(\",\")\n : value) as Value,\n );\n }\n onChangeProp?.(event, child);\n }\n },\n [hasMultipleChoices, onChangeProp, isReadOnly],\n );\n // Normalize the options array to accommodate the various\n // data types that might be passed\n const [normalizedOptions, normalizedOptionsMap] = useMemo(() => {\n const normalizedOptions = options.map((option) => {\n if (typeof option === \"object\") {\n /**\n * If the value of `option?.value is an empty string, we need to make sure that we\n * set an empty string to `value` in the normalized option so that the select component\n * can potentially set it as the selected one in the text input\n */\n const value =\n option?.value === \"\" ? option.value : option.value || option.text;\n return {\n text: option.text,\n value,\n type: option.type === \"heading\" ? \"heading\" : \"option\",\n lang: option.language,\n };\n }\n\n return { text: option, value: option, type: \"option\" };\n });\n\n const normalizedOptionsMap = new Map(\n normalizedOptions.map((option) => [option.value, option]),\n );\n return [normalizedOptions, normalizedOptionsMap];\n }, [options]);\n\n const removeSelectedValue = useCallback(\n (selectedValue: string) => {\n if (Array.isArray(internalSelectedValues)) {\n const newValue = internalSelectedValues.filter(\n (internalSelectedValue) => internalSelectedValue !== selectedValue,\n );\n\n const syntheticEvent = {\n target: { value: newValue },\n } as SelectChangeEvent<Value>;\n\n onChange(syntheticEvent, null);\n }\n },\n [internalSelectedValues, onChange],\n );\n\n const Chips = useCallback(\n ({\n isInteractive,\n isReadOnly,\n }: {\n isInteractive: boolean;\n isReadOnly?: boolean;\n }) => {\n const stopPropagation = (event: React.MouseEvent<SVGSVGElement>) =>\n event.stopPropagation();\n\n const hasNonInteractiveIcon =\n !isInteractive &&\n !isReadOnly &&\n controlledStateRef.current === CONTROLLED &&\n hasMultipleChoices;\n\n return (\n Array.isArray(internalSelectedValues) && (\n <ChipsInnerContainer\n isInteractive={isInteractive}\n isReadOnly={isReadOnly}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {internalSelectedValues.map(\n (item) =>\n item?.length > 0 && (\n <MuiChip\n deleteIcon={\n <CloseCircleFilledIcon\n // We need to stop event propagation on mouse down to prevent the deletion\n // from being blocked by the Select list opening, and also ensure that\n // the pointerEvent is registered even when the parent's are not\n onMouseDown={stopPropagation}\n sx={{ pointerEvents: \"auto\" }}\n />\n }\n key={item}\n label={\n <>\n {normalizedOptionsMap.get(item)?.text}\n {hasNonInteractiveIcon && (\n <NonInteractiveIcon\n odysseyDesignTokens={odysseyDesignTokens}\n />\n )}\n </>\n }\n onDelete={\n isInteractive && controlledStateRef.current === CONTROLLED\n ? () => removeSelectedValue(item)\n : undefined\n }\n tabIndex={-1}\n />\n ),\n )}\n </ChipsInnerContainer>\n )\n );\n },\n [\n controlledStateRef,\n hasMultipleChoices,\n internalSelectedValues,\n odysseyDesignTokens,\n removeSelectedValue,\n normalizedOptionsMap,\n ],\n );\n\n // Convert the options into the ReactNode children\n // that will populate the <Select>\n const renderedOptions = useMemo(\n () =>\n normalizedOptions.map((option, index) => {\n if (option.type === \"heading\") {\n return (\n <ListSubheader key={option.text}> {option.text} </ListSubheader>\n );\n }\n\n const isSelected = hasMultipleChoices\n ? internalSelectedValues?.includes(option.value)\n : internalSelectedValues === option.value;\n\n return (\n <MuiMenuItem\n data-empty={!option.text}\n key={normalizedKey(option.text, index.toString())}\n lang={option.lang}\n selected={isSelected}\n value={option.value}\n >\n {hasMultipleChoices && <MuiCheckbox checked={isSelected} />}\n {option.text}\n {!hasMultipleChoices && internalSelectedValues === option.value && (\n <ListItemSecondaryAction>\n <CheckIcon />\n </ListItemSecondaryAction>\n )}\n </MuiMenuItem>\n );\n }),\n [hasMultipleChoices, normalizedOptions, internalSelectedValues],\n );\n\n const renderValue = useCallback(\n (value: Value) => Array.isArray(value) && <Chips isInteractive={false} />,\n [Chips],\n );\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: SelectRenderProps) => (\n <SelectContainer>\n <MuiSelect\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n aria-errormessage={errorMessageElementId}\n displayEmpty\n id={id}\n inputProps={{\n \"data-se\": testId,\n \"aria-disabled\": isDisabled || isReadOnly,\n readOnly: isReadOnly,\n }}\n inputRef={(el: HTMLInputElement | HTMLTextAreaElement | null) => {\n if (localInputRef.current !== el) {\n (localInputRef as React.MutableRefObject<typeof el>).current = el;\n }\n selectRef.current = el;\n }}\n labelId={labelElementId}\n MenuProps={{\n sx: {\n \".MuiPaper-root\": {\n maxHeight: \"50vh\",\n },\n },\n }}\n multiple={hasMultipleChoices}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n renderValue={hasMultipleChoices ? renderValue : undefined}\n translate={translate}\n >\n {renderedOptions}\n </MuiSelect>\n {hasMultipleChoices && (\n <>\n <ChipsPositioningContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <Chips isInteractive={!isReadOnly} isReadOnly={isReadOnly} />\n </ChipsPositioningContainer>\n </>\n )}\n </SelectContainer>\n ),\n [\n Chips,\n inputValues,\n hasMultipleChoices,\n isDisabled,\n isReadOnly,\n nameOverride,\n odysseyDesignTokens,\n onBlur,\n onChange,\n onFocus,\n renderedOptions,\n renderValue,\n testId,\n translate,\n ],\n );\n\n return (\n <Field\n ariaDescribedBy={ariaDescribedBy}\n errorMessage={errorMessage}\n errorMessageList={errorMessageList}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedSelect = memo(Select);\nMemoizedSelect.displayName = \"Select\";\n\nexport { MemoizedSelect as Select };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Select.js","names":["styled","memo","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","Field","CheckIcon","CloseCircleFilledIcon","ComponentControlledState","getControlState","useInputValues","useOdysseyDesignTokens","normalizedKey","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SelectContainer","div","ChipsPositioningContainer","shouldForwardProp","prop","odysseyDesignTokens","alignItems","display","insetBlockEnd","insetBlockStart","insetInlineEnd","insetInlineStart","marginInlineStart","BorderWidthMain","opacity","pointerEvents","position","NonInteractiveIcon","fontSize","marginBlockEnd","marginInlineEnd","Spacing1","Spacing2","ChipsInnerContainer","_Box","isInteractive","isReadOnly","flexWrap","gap","marginBlock","minHeight","Spacing6","CONTROLLED","Select","ariaDescribedBy","defaultValue","errorMessage","errorMessageList","hasMultipleChoices","hasMultipleChoicesProp","hint","HintLinkComponent","id","idOverride","inputRef","isDisabled","isFullWidth","isMultiSelect","isOptional","label","name","nameOverride","onBlur","onChange","onChangeProp","onFocus","options","testId","translate","value","selectRef","undefined","controlledStateRef","controlledValue","uncontrolledValue","internalSelectedValues","setInternalSelectedValues","current","localInputRef","focus","inputValues","controlState","event","child","preventDefault","target","split","normalizedOptions","normalizedOptionsMap","map","option","text","type","lang","language","Map","removeSelectedValue","selectedValue","Array","isArray","newValue","filter","internalSelectedValue","syntheticEvent","Chips","stopPropagation","hasNonInteractiveIcon","children","item","length","_Chip","deleteIcon","onMouseDown","sx","get","onDelete","tabIndex","renderedOptions","index","_ListSubheader","isSelected","includes","_MenuItem","selected","_Checkbox","checked","_ListItemSecondaryAction","toString","renderValue","renderFieldComponent","errorMessageElementId","labelElementId","_Select","displayEmpty","inputProps","readOnly","el","labelId","MenuProps","maxHeight","multiple","fieldType","hasVisibleLabel","MemoizedSelect","displayName"],"sources":["../../src/Select.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n ListItemSecondaryAction,\n ListSubheader,\n Box as MuiBox,\n Checkbox as MuiCheckbox,\n Chip as MuiChip,\n MenuItem as MuiMenuItem,\n Select as MuiSelect,\n SelectProps as MuiSelectProps,\n SelectChangeEvent,\n} from \"@mui/material\";\nimport {\n memo,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport { CheckIcon, CloseCircleFilledIcon } from \"./icons.generated/index.js\";\nimport {\n ComponentControlledState,\n FocusHandle,\n getControlState,\n useInputValues,\n} from \"./inputUtils.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { normalizedKey } from \"./useNormalizedKey.js\";\n\nexport type SelectOption = {\n language?: string;\n text: string;\n type?: \"heading\" | \"option\";\n value?: string;\n};\n\nconst SelectContainer = styled.div`\n position: relative;\n width: 100%;\n display: flex;\n`;\n\nconst ChipsPositioningContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => {\n return {\n alignItems: \"center\",\n display: \"flex\",\n insetBlockEnd: 0,\n insetBlockStart: 0,\n insetInlineEnd: \"25px\", // This 25px is used to align with MUI's default chip positioning logic.\n insetInlineStart: \"4px\",\n marginInlineStart: odysseyDesignTokens.BorderWidthMain,\n opacity: 1,\n pointerEvents: \"none\",\n position: \"absolute\",\n };\n});\n\nconst NonInteractiveIcon = styled(CloseCircleFilledIcon, {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n fontSize: \"1em\",\n marginBlockEnd: \"-1px\",\n marginInlineEnd: `-${odysseyDesignTokens.Spacing1}`,\n marginInlineStart: odysseyDesignTokens.Spacing2,\n}));\n\nconst ChipsInnerContainer = styled(MuiBox, {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isInteractive\" &&\n prop !== \"isReadOnly\",\n})<{\n isInteractive?: boolean;\n isReadOnly?: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isInteractive, isReadOnly, odysseyDesignTokens }) => ({\n display: \"flex\",\n flexWrap: \"wrap\",\n gap: odysseyDesignTokens.Spacing1,\n marginBlock: `-${odysseyDesignTokens.Spacing2}`,\n marginInlineEnd: odysseyDesignTokens.Spacing1,\n minHeight: odysseyDesignTokens.Spacing6,\n opacity: isInteractive || isReadOnly ? 1 : 0,\n pointerEvents: \"none\",\n}));\n\nexport type SelectValueType<HasMultipleChoices> =\n HasMultipleChoices extends true ? string[] : string;\n\nexport type SelectProps<\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean,\n> = {\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue?: MuiSelectProps<Value>[\"defaultValue\"];\n /**\n * If `true`, the Select allows multiple selections\n */\n hasMultipleChoices?: HasMultipleChoices;\n /**\n * The ref forwarded to the Select\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * @deprecated Use `hasMultipleChoices` instead.\n */\n /** **Deprecated:** use `hasMultipleChoices` */\n isMultiSelect?: HasMultipleChoices;\n /**\n * The label text for the Select\n */\n label: string;\n /**\n * Callback fired when the Select loses focus\n */\n onBlur?: MuiSelectProps<Value>[\"onBlur\"];\n /**\n * Callback fired when the value of the Select changes\n */\n onChange?: MuiSelectProps<Value>[\"onChange\"];\n /**\n * Callback fired when the Select gains focus\n */\n onFocus?: MuiSelectProps<Value>[\"onFocus\"];\n /**\n * The options for the Select\n */\n options: (string | SelectOption)[];\n /**\n * The value or values selected in the Select\n */\n value?: Value;\n} & Pick<\n FieldComponentProps,\n | \"errorMessage\"\n | \"errorMessageList\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isFullWidth\"\n | \"isOptional\"\n | \"isReadOnly\"\n | \"name\"\n> &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype SelectRenderProps = Partial<\n Pick<FieldComponentRenderProps, \"ariaDescribedBy\" | \"errorMessageElementId\">\n> &\n Pick<FieldComponentRenderProps, \"id\" | \"labelElementId\">;\n\n/**\n * Options in Odyssey <Select> are passed as an array, which can contain any combination\n * of the following:\n * - string — A simple string. The string will be both the text and the value of the resulting option.\n * <option value=\"string\">string</option>\n *\n * - { text: string } — Same as above, but the string is contained within an object.\n * <option value=\"text\">text</option>\n *\n * - { text: string, value: string } — The option text will be text, and the option value will be value.\n * <option value=\"value\">text</option>\n *\n * - { text: string, type: \"heading\" } — Used to display a group heading with the text\n */\n\nconst { CONTROLLED } = ComponentControlledState;\nconst Select = <\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean,\n>({\n ariaDescribedBy,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasMultipleChoices: hasMultipleChoicesProp,\n hint,\n HintLinkComponent,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isFullWidth = false,\n isMultiSelect,\n isOptional = false,\n isReadOnly = false,\n label,\n name: nameOverride,\n onBlur,\n onChange: onChangeProp,\n onFocus,\n options,\n testId,\n translate,\n value,\n}: SelectProps<Value, HasMultipleChoices>) => {\n const selectRef = useRef<HTMLInputElement | HTMLTextAreaElement | null>(null);\n\n const hasMultipleChoices = useMemo(\n () =>\n hasMultipleChoicesProp === undefined\n ? isMultiSelect\n : hasMultipleChoicesProp,\n [hasMultipleChoicesProp, isMultiSelect],\n );\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const [internalSelectedValues, setInternalSelectedValues] = useState(\n controlledStateRef.current === CONTROLLED ? value : defaultValue,\n );\n\n const localInputRef = useRef<HTMLSelectElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n useEffect(() => {\n if (controlledStateRef.current === CONTROLLED) {\n setInternalSelectedValues(value);\n }\n }, [value]);\n\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const onChange = useCallback<NonNullable<MuiSelectProps<Value>[\"onChange\"]>>(\n (event, child) => {\n if (isReadOnly) {\n event.preventDefault();\n } else {\n const {\n target: { value },\n } = event;\n if (controlledStateRef.current !== CONTROLLED) {\n setInternalSelectedValues(\n (typeof value === \"string\" && hasMultipleChoices\n ? value.split(\",\")\n : value) as Value,\n );\n }\n onChangeProp?.(event, child);\n }\n },\n [hasMultipleChoices, onChangeProp, isReadOnly],\n );\n // Normalize the options array to accommodate the various\n // data types that might be passed\n const [normalizedOptions, normalizedOptionsMap] = useMemo(() => {\n const normalizedOptions = options.map((option) => {\n if (typeof option === \"object\") {\n /**\n * If the value of `option?.value is an empty string, we need to make sure that we\n * set an empty string to `value` in the normalized option so that the select component\n * can potentially set it as the selected one in the text input\n */\n const value =\n option?.value === \"\" ? option.value : option.value || option.text;\n return {\n text: option.text,\n value,\n type: option.type === \"heading\" ? \"heading\" : \"option\",\n lang: option.language,\n };\n }\n\n return { text: option, value: option, type: \"option\" };\n });\n\n const normalizedOptionsMap = new Map(\n normalizedOptions.map((option) => [option.value, option]),\n );\n return [normalizedOptions, normalizedOptionsMap];\n }, [options]);\n\n const removeSelectedValue = useCallback(\n (selectedValue: string) => {\n if (Array.isArray(internalSelectedValues)) {\n const newValue = internalSelectedValues.filter(\n (internalSelectedValue) => internalSelectedValue !== selectedValue,\n );\n\n const syntheticEvent = {\n target: { value: newValue },\n } as SelectChangeEvent<Value>;\n\n onChange(syntheticEvent, null);\n }\n },\n [internalSelectedValues, onChange],\n );\n\n const Chips = useCallback(\n ({\n isInteractive,\n isReadOnly,\n }: {\n isInteractive: boolean;\n isReadOnly?: boolean;\n }) => {\n const stopPropagation = (event: React.MouseEvent<SVGSVGElement>) =>\n event.stopPropagation();\n\n const hasNonInteractiveIcon =\n !isInteractive &&\n !isReadOnly &&\n controlledStateRef.current === CONTROLLED &&\n hasMultipleChoices;\n\n return (\n Array.isArray(internalSelectedValues) && (\n <ChipsInnerContainer\n isInteractive={isInteractive}\n isReadOnly={isReadOnly}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {internalSelectedValues.map(\n (item) =>\n item?.length > 0 && (\n <MuiChip\n deleteIcon={\n <CloseCircleFilledIcon\n // We need to stop event propagation on mouse down to prevent the deletion\n // from being blocked by the Select list opening, and also ensure that\n // the pointerEvent is registered even when the parent's are not\n onMouseDown={stopPropagation}\n sx={{ pointerEvents: \"auto\" }}\n />\n }\n key={item}\n label={\n <>\n {normalizedOptionsMap.get(item)?.text}\n {hasNonInteractiveIcon && (\n <NonInteractiveIcon\n odysseyDesignTokens={odysseyDesignTokens}\n />\n )}\n </>\n }\n onDelete={\n isInteractive && controlledStateRef.current === CONTROLLED\n ? () => removeSelectedValue(item)\n : undefined\n }\n tabIndex={-1}\n />\n ),\n )}\n </ChipsInnerContainer>\n )\n );\n },\n [\n controlledStateRef,\n hasMultipleChoices,\n internalSelectedValues,\n odysseyDesignTokens,\n removeSelectedValue,\n normalizedOptionsMap,\n ],\n );\n\n // Convert the options into the ReactNode children\n // that will populate the <Select>\n const renderedOptions = useMemo(\n () =>\n normalizedOptions.map((option, index) => {\n if (option.type === \"heading\") {\n return (\n <ListSubheader key={option.text}> {option.text} </ListSubheader>\n );\n }\n\n const isSelected = hasMultipleChoices\n ? internalSelectedValues?.includes(option.value)\n : internalSelectedValues === option.value;\n\n return (\n <MuiMenuItem\n data-empty={!option.text}\n key={normalizedKey(option.text, index.toString())}\n lang={option.lang}\n selected={isSelected}\n value={option.value}\n >\n {hasMultipleChoices && <MuiCheckbox checked={isSelected} />}\n {option.text}\n {!hasMultipleChoices && internalSelectedValues === option.value && (\n <ListItemSecondaryAction>\n <CheckIcon />\n </ListItemSecondaryAction>\n )}\n </MuiMenuItem>\n );\n }),\n [hasMultipleChoices, normalizedOptions, internalSelectedValues],\n );\n\n const renderValue = useCallback(\n (value: Value) => Array.isArray(value) && <Chips isInteractive={false} />,\n [Chips],\n );\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: SelectRenderProps) => (\n <SelectContainer>\n <MuiSelect\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n aria-errormessage={errorMessageElementId}\n displayEmpty\n id={id}\n inputProps={{\n \"data-se\": testId,\n \"aria-disabled\": isDisabled || isReadOnly,\n readOnly: isReadOnly,\n }}\n inputRef={(el: HTMLInputElement | HTMLTextAreaElement | null) => {\n if (localInputRef.current !== el) {\n (localInputRef as React.MutableRefObject<typeof el>).current = el;\n }\n selectRef.current = el;\n }}\n labelId={labelElementId}\n MenuProps={{\n sx: {\n \".MuiPaper-root\": {\n maxHeight: \"50vh\",\n },\n },\n }}\n multiple={hasMultipleChoices}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n renderValue={hasMultipleChoices ? renderValue : undefined}\n translate={translate}\n >\n {renderedOptions}\n </MuiSelect>\n {hasMultipleChoices && (\n <>\n <ChipsPositioningContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <Chips isInteractive={!isReadOnly} isReadOnly={isReadOnly} />\n </ChipsPositioningContainer>\n </>\n )}\n </SelectContainer>\n ),\n [\n Chips,\n inputValues,\n hasMultipleChoices,\n isDisabled,\n isReadOnly,\n nameOverride,\n odysseyDesignTokens,\n onBlur,\n onChange,\n onFocus,\n renderedOptions,\n renderValue,\n testId,\n translate,\n ],\n );\n\n return (\n <Field\n ariaDescribedBy={ariaDescribedBy}\n errorMessage={errorMessage}\n errorMessageList={errorMessageList}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedSelect = memo(Select);\nMemoizedSelect.displayName = \"Select\";\n\nexport { MemoizedSelect as Select };\n"],"mappings":"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","ignoreList":[]}
@@ -23,10 +23,10 @@ const StyledContainer = styled(_Paper, {
23
23
  contrastMode,
24
24
  odysseyDesignTokens
25
25
  }) => ({
26
- borderRadius: odysseyDesignTokens.Spacing4,
27
- padding: odysseyDesignTokens.Spacing5,
28
26
  border: contrastMode === "lowContrast" ? `1px solid ${odysseyDesignTokens.HueNeutral100}` : "none",
29
- boxShadow: "none"
27
+ borderRadius: odysseyDesignTokens.Spacing4,
28
+ boxShadow: "none",
29
+ padding: odysseyDesignTokens.Spacing5
30
30
  }));
31
31
  const Surface = ({
32
32
  children
@@ -1 +1 @@
1
- {"version":3,"file":"Surface.js","names":["styled","memo","useOdysseyDesignTokens","OdysseyThemeProvider","useContrastModeContext","jsx","_jsx","StyledContainer","_Paper","shouldForwardProp","prop","contrastMode","odysseyDesignTokens","borderRadius","Spacing4","padding","Spacing5","border","HueNeutral100","boxShadow","Surface","children","MemoizedSurface","displayName"],"sources":["../../src/Surface.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { Paper as MuiPaper } from \"@mui/material\";\nimport { memo, ReactNode } from \"react\";\n\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { OdysseyThemeProvider } from \"./OdysseyThemeProvider.js\";\nimport { ContrastMode, useContrastModeContext } from \"./useContrastMode.js\";\n\nconst StyledContainer = styled(MuiPaper, {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"contrastMode\",\n})<{\n contrastMode: ContrastMode;\n odysseyDesignTokens: DesignTokens;\n}>(({ contrastMode, odysseyDesignTokens }) => ({\n borderRadius: odysseyDesignTokens.Spacing4,\n padding: odysseyDesignTokens.Spacing5,\n border:\n contrastMode === \"lowContrast\"\n ? `1px solid ${odysseyDesignTokens.HueNeutral100}`\n : \"none\",\n boxShadow: \"none\",\n}));\n\nexport type SurfaceProps = {\n children: ReactNode;\n};\n\nconst Surface = ({ children }: SurfaceProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const { contrastMode } = useContrastModeContext();\n\n return (\n <StyledContainer\n contrastMode={contrastMode}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <OdysseyThemeProvider>{children}</OdysseyThemeProvider>\n </StyledContainer>\n );\n};\n\nconst MemoizedSurface = memo(Surface);\nMemoizedSurface.displayName = \"Surface\";\n\nexport { MemoizedSurface as Surface };\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,MAAM,MAAM,iBAAiB;AAEpC,SAASC,IAAI,QAAmB,OAAO;AAEvC,SAEEC,sBAAsB,QACjB,iCAAiC;AACxC,SAASC,oBAAoB,QAAQ,2BAA2B;AAChE,SAAuBC,sBAAsB,QAAQ,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5E,MAAMC,eAAe,GAAGP,MAAM,CAAAQ,MAAA,EAAW;EACvCC,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,qBAAqB,IAAIA,IAAI,KAAK;AAC/C,CAAC,CAAC,CAGC,CAAC;EAAEC,YAAY;EAAEC;AAAoB,CAAC,MAAM;EAC7CC,YAAY,EAAED,mBAAmB,CAACE,QAAQ;EAC1CC,OAAO,EAAEH,mBAAmB,CAACI,QAAQ;EACrCC,MAAM,EACJN,YAAY,KAAK,aAAa,GAC1B,aAAaC,mBAAmB,CAACM,aAAa,EAAE,GAChD,MAAM;EACZC,SAAS,EAAE;AACb,CAAC,CAAC,CAAC;AAMH,MAAMC,OAAO,GAAGA,CAAC;EAAEC;AAAuB,CAAC,KAAK;EAC9C,MAAMT,mBAAmB,GAAGV,sBAAsB,CAAC,CAAC;EACpD,MAAM;IAAES;EAAa,CAAC,GAAGP,sBAAsB,CAAC,CAAC;EAEjD,OACEE,IAAA,CAACC,eAAe;IACdI,YAAY,EAAEA,YAAa;IAC3BC,mBAAmB,EAAEA,mBAAoB;IAAAS,QAAA,EAEzCf,IAAA,CAACH,oBAAoB;MAAAkB,QAAA,EAAEA;IAAQ,CAAuB;EAAC,CACxC,CAAC;AAEtB,CAAC;AAED,MAAMC,eAAe,GAAGrB,IAAI,CAACmB,OAAO,CAAC;AACrCE,eAAe,CAACC,WAAW,GAAG,SAAS;AAEvC,SAASD,eAAe,IAAIF,OAAO","ignoreList":[]}
1
+ {"version":3,"file":"Surface.js","names":["styled","memo","useOdysseyDesignTokens","OdysseyThemeProvider","useContrastModeContext","jsx","_jsx","StyledContainer","_Paper","shouldForwardProp","prop","contrastMode","odysseyDesignTokens","border","HueNeutral100","borderRadius","Spacing4","boxShadow","padding","Spacing5","Surface","children","MemoizedSurface","displayName"],"sources":["../../src/Surface.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { Paper as MuiPaper } from \"@mui/material\";\nimport { memo, ReactNode } from \"react\";\n\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { OdysseyThemeProvider } from \"./OdysseyThemeProvider.js\";\nimport { ContrastMode, useContrastModeContext } from \"./useContrastMode.js\";\n\nconst StyledContainer = styled(MuiPaper, {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"contrastMode\",\n})<{\n contrastMode: ContrastMode;\n odysseyDesignTokens: DesignTokens;\n}>(({ contrastMode, odysseyDesignTokens }) => ({\n border:\n contrastMode === \"lowContrast\"\n ? `1px solid ${odysseyDesignTokens.HueNeutral100}`\n : \"none\",\n borderRadius: odysseyDesignTokens.Spacing4,\n boxShadow: \"none\",\n padding: odysseyDesignTokens.Spacing5,\n}));\n\nexport type SurfaceProps = {\n children: ReactNode;\n};\n\nconst Surface = ({ children }: SurfaceProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const { contrastMode } = useContrastModeContext();\n\n return (\n <StyledContainer\n contrastMode={contrastMode}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {/* Required for `contrastMode`. */}\n <OdysseyThemeProvider>{children}</OdysseyThemeProvider>\n </StyledContainer>\n );\n};\n\nconst MemoizedSurface = memo(Surface);\nMemoizedSurface.displayName = \"Surface\";\n\nexport { MemoizedSurface as Surface };\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,MAAM,MAAM,iBAAiB;AAEpC,SAASC,IAAI,QAAmB,OAAO;AAEvC,SAEEC,sBAAsB,QACjB,iCAAiC;AACxC,SAASC,oBAAoB,QAAQ,2BAA2B;AAChE,SAAuBC,sBAAsB,QAAQ,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5E,MAAMC,eAAe,GAAGP,MAAM,CAAAQ,MAAA,EAAW;EACvCC,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,qBAAqB,IAAIA,IAAI,KAAK;AAC/C,CAAC,CAAC,CAGC,CAAC;EAAEC,YAAY;EAAEC;AAAoB,CAAC,MAAM;EAC7CC,MAAM,EACJF,YAAY,KAAK,aAAa,GAC1B,aAAaC,mBAAmB,CAACE,aAAa,EAAE,GAChD,MAAM;EACZC,YAAY,EAAEH,mBAAmB,CAACI,QAAQ;EAC1CC,SAAS,EAAE,MAAM;EACjBC,OAAO,EAAEN,mBAAmB,CAACO;AAC/B,CAAC,CAAC,CAAC;AAMH,MAAMC,OAAO,GAAGA,CAAC;EAAEC;AAAuB,CAAC,KAAK;EAC9C,MAAMT,mBAAmB,GAAGV,sBAAsB,CAAC,CAAC;EACpD,MAAM;IAAES;EAAa,CAAC,GAAGP,sBAAsB,CAAC,CAAC;EAEjD,OACEE,IAAA,CAACC,eAAe;IACdI,YAAY,EAAEA,YAAa;IAC3BC,mBAAmB,EAAEA,mBAAoB;IAAAS,QAAA,EAGzCf,IAAA,CAACH,oBAAoB;MAAAkB,QAAA,EAAEA;IAAQ,CAAuB;EAAC,CACxC,CAAC;AAEtB,CAAC;AAED,MAAMC,eAAe,GAAGrB,IAAI,CAACmB,OAAO,CAAC;AACrCE,eAAe,CAACC,WAAW,GAAG,SAAS;AAEvC,SAASD,eAAe,IAAIF,OAAO","ignoreList":[]}
@@ -13,9 +13,9 @@ import _FormLabel from "@mui/material/FormLabel";
13
13
 
14
14
  import styled from "@emotion/styled";
15
15
  import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
16
- import { useTranslation } from "react-i18next";
17
16
  import { Box } from "./Box.js";
18
17
  import { FieldHint } from "./FieldHint.js";
18
+ import { useTranslation } from "./i18n.generated/i18n.js";
19
19
  import { CheckIcon } from "./icons.generated/index.js";
20
20
  import { ComponentControlledState, getControlState } from "./inputUtils.js";
21
21
  import { useOdysseyDesignTokens } from "./OdysseyDesignTokensContext.js";