@okta/odyssey-react-mui 1.44.0 → 1.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (752) hide show
  1. package/dist/cjs/Autocomplete.cjs +3 -33
  2. package/dist/cjs/Autocomplete.cjs.map +1 -1
  3. package/dist/cjs/Banner.cjs +2 -2
  4. package/dist/cjs/Banner.cjs.map +1 -1
  5. package/dist/cjs/Breadcrumbs.cjs +2 -2
  6. package/dist/cjs/Breadcrumbs.cjs.map +1 -1
  7. package/dist/cjs/Buttons/BaseButton.cjs.map +1 -1
  8. package/dist/cjs/Callout.cjs +3 -27
  9. package/dist/cjs/Callout.cjs.map +1 -1
  10. package/dist/cjs/Card.cjs +280 -63
  11. package/dist/cjs/Card.cjs.map +1 -1
  12. package/dist/cjs/Checkbox.cjs +14 -12
  13. package/dist/cjs/Checkbox.cjs.map +1 -1
  14. package/dist/cjs/DataTable/DataTable.cjs +2 -2
  15. package/dist/cjs/DataTable/DataTable.cjs.map +1 -1
  16. package/dist/cjs/DataTable/DataTableRowActions.cjs +6 -6
  17. package/dist/cjs/DataTable/DataTableRowActions.cjs.map +1 -1
  18. package/dist/cjs/DataTable/DataTableSettings.cjs +2 -2
  19. package/dist/cjs/DataTable/DataTableSettings.cjs.map +1 -1
  20. package/dist/cjs/DataTable/useRowReordering.cjs +2 -2
  21. package/dist/cjs/DataTable/useRowReordering.cjs.map +1 -1
  22. package/dist/cjs/DatePickers/DateField.cjs +2 -2
  23. package/dist/cjs/DatePickers/DateField.cjs.map +1 -1
  24. package/dist/cjs/DatePickers/DateFieldActionBar.cjs +2 -2
  25. package/dist/cjs/DatePickers/DateFieldActionBar.cjs.map +1 -1
  26. package/dist/cjs/DatePickers/DatePicker.cjs +2 -2
  27. package/dist/cjs/DatePickers/DatePicker.cjs.map +1 -1
  28. package/dist/cjs/DatePickers/useDateFieldsTranslations.cjs +2 -2
  29. package/dist/cjs/DatePickers/useDateFieldsTranslations.cjs.map +1 -1
  30. package/dist/cjs/DatePickers/useOdysseyDateFields.cjs +2 -2
  31. package/dist/cjs/DatePickers/useOdysseyDateFields.cjs.map +1 -1
  32. package/dist/cjs/Dialog.cjs +34 -31
  33. package/dist/cjs/Dialog.cjs.map +1 -1
  34. package/dist/cjs/Drawer.cjs +8 -4
  35. package/dist/cjs/Drawer.cjs.map +1 -1
  36. package/dist/cjs/Field.cjs +2 -2
  37. package/dist/cjs/Field.cjs.map +1 -1
  38. package/dist/cjs/FieldError.cjs +2 -2
  39. package/dist/cjs/FieldError.cjs.map +1 -1
  40. package/dist/cjs/FieldLabel.cjs +2 -2
  41. package/dist/cjs/FieldLabel.cjs.map +1 -1
  42. package/dist/cjs/FileUploader/FileUploadPreview.cjs +2 -2
  43. package/dist/cjs/FileUploader/FileUploadPreview.cjs.map +1 -1
  44. package/dist/cjs/FileUploader/FileUploader.cjs +2 -2
  45. package/dist/cjs/FileUploader/FileUploader.cjs.map +1 -1
  46. package/dist/cjs/FullScreenOverlay.cjs +40 -0
  47. package/dist/cjs/FullScreenOverlay.cjs.map +1 -0
  48. package/dist/cjs/FullScreenOverlayContext.cjs +72 -0
  49. package/dist/cjs/FullScreenOverlayContext.cjs.map +1 -0
  50. package/dist/cjs/OdysseyCacheProvider.cjs +12 -17
  51. package/dist/cjs/OdysseyCacheProvider.cjs.map +1 -1
  52. package/dist/cjs/OdysseyProvider.cjs +18 -10
  53. package/dist/cjs/OdysseyProvider.cjs.map +1 -1
  54. package/dist/cjs/OdysseyThemeProvider.cjs +27 -16
  55. package/dist/cjs/OdysseyThemeProvider.cjs.map +1 -1
  56. package/dist/cjs/OdysseyThemeProviderPropsContext.cjs +44 -0
  57. package/dist/cjs/OdysseyThemeProviderPropsContext.cjs.map +1 -0
  58. package/dist/cjs/Pagination/Pagination.cjs +2 -3
  59. package/dist/cjs/Pagination/Pagination.cjs.map +1 -1
  60. package/dist/cjs/Pagination/usePagination.cjs +2 -2
  61. package/dist/cjs/Pagination/usePagination.cjs.map +1 -1
  62. package/dist/cjs/PasswordField.cjs +2 -2
  63. package/dist/cjs/PasswordField.cjs.map +1 -1
  64. package/dist/cjs/Radio.cjs +22 -20
  65. package/dist/cjs/Radio.cjs.map +1 -1
  66. package/dist/cjs/SearchField.cjs +2 -2
  67. package/dist/cjs/SearchField.cjs.map +1 -1
  68. package/dist/cjs/Select.cjs +1 -37
  69. package/dist/cjs/Select.cjs.map +1 -1
  70. package/dist/cjs/Surface.cjs +3 -3
  71. package/dist/cjs/Surface.cjs.map +1 -1
  72. package/dist/cjs/Switch.cjs +2 -2
  73. package/dist/cjs/Switch.cjs.map +1 -1
  74. package/dist/cjs/Tabs.cjs +1 -21
  75. package/dist/cjs/Tabs.cjs.map +1 -1
  76. package/dist/cjs/Tag.cjs +2 -2
  77. package/dist/cjs/Tag.cjs.map +1 -1
  78. package/dist/cjs/TextField.cjs +1 -26
  79. package/dist/cjs/TextField.cjs.map +1 -1
  80. package/dist/cjs/Toast.cjs +2 -2
  81. package/dist/cjs/Toast.cjs.map +1 -1
  82. package/dist/cjs/__internal.cjs +149 -0
  83. package/dist/cjs/__internal.cjs.map +1 -0
  84. package/dist/cjs/i18n.generated/i18n.cjs +35 -0
  85. package/dist/cjs/i18n.generated/i18n.cjs.map +1 -0
  86. package/dist/cjs/i18n.generated/i18n.resources.cjs +81 -0
  87. package/dist/cjs/i18n.generated/i18n.resources.cjs.map +1 -0
  88. package/dist/{esm/shadow-dom/index.js → cjs/i18n.generated/i18n.types.cjs} +9 -4
  89. package/dist/cjs/i18n.generated/i18n.types.cjs.map +1 -0
  90. package/dist/cjs/index.cjs +49 -30
  91. package/dist/cjs/index.cjs.map +1 -1
  92. package/dist/cjs/labs/DataFilters.cjs +4 -4
  93. package/dist/cjs/labs/DataFilters.cjs.map +1 -1
  94. package/dist/cjs/labs/DataTable.cjs +2 -2
  95. package/dist/cjs/labs/DataTable.cjs.map +1 -1
  96. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs +2 -2
  97. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs.map +1 -1
  98. package/dist/cjs/labs/DataView/CardLayoutContent.cjs +60 -44
  99. package/dist/cjs/labs/DataView/CardLayoutContent.cjs.map +1 -1
  100. package/dist/cjs/labs/DataView/DataCard.cjs +52 -181
  101. package/dist/cjs/labs/DataView/DataCard.cjs.map +1 -1
  102. package/dist/cjs/labs/DataView/DataView.cjs +2 -2
  103. package/dist/cjs/labs/DataView/DataView.cjs.map +1 -1
  104. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs +2 -2
  105. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs.map +1 -1
  106. package/dist/cjs/labs/DataView/RowActions.cjs +2 -2
  107. package/dist/cjs/labs/DataView/RowActions.cjs.map +1 -1
  108. package/dist/cjs/labs/DataView/TableLayoutContent.cjs +2 -2
  109. package/dist/cjs/labs/DataView/TableLayoutContent.cjs.map +1 -1
  110. package/dist/cjs/labs/DataView/TableSettings.cjs +2 -2
  111. package/dist/cjs/labs/DataView/TableSettings.cjs.map +1 -1
  112. package/dist/cjs/labs/DataView/componentTypes.cjs.map +1 -1
  113. package/dist/cjs/labs/DataView/fetchData.cjs +2 -2
  114. package/dist/cjs/labs/DataView/fetchData.cjs.map +1 -1
  115. package/dist/cjs/labs/DatePickers/DateTimeField.cjs +2 -2
  116. package/dist/cjs/labs/DatePickers/DateTimeField.cjs.map +1 -1
  117. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs +2 -2
  118. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs.map +1 -1
  119. package/dist/cjs/labs/DatePickers/dateTimePickerTheme.cjs +3 -3
  120. package/dist/cjs/labs/DatePickers/dateTimePickerTheme.cjs.map +1 -1
  121. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs +2 -2
  122. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs.map +1 -1
  123. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs +4 -0
  124. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs.map +1 -1
  125. package/dist/cjs/labs/OdysseyPickers/index.cjs.map +1 -1
  126. package/dist/cjs/labs/PageTemplate/Layout.cjs +2 -2
  127. package/dist/cjs/labs/PageTemplate/Layout.cjs.map +1 -1
  128. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs.map +1 -1
  129. package/dist/cjs/labs/PaginatedTable.cjs +4 -4
  130. package/dist/cjs/labs/PaginatedTable.cjs.map +1 -1
  131. package/dist/cjs/labs/StaticTable.cjs +2 -2
  132. package/dist/cjs/labs/StaticTable.cjs.map +1 -1
  133. package/dist/cjs/properties/ts/odyssey-react-mui.cjs.map +1 -1
  134. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs +7 -1
  135. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs.map +1 -1
  136. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs +7 -1
  137. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs.map +1 -1
  138. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs +8 -2
  139. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs.map +1 -1
  140. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs +7 -1
  141. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs.map +1 -1
  142. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs +7 -1
  143. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs.map +1 -1
  144. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs +7 -1
  145. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs.map +1 -1
  146. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs +7 -1
  147. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs.map +1 -1
  148. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs +7 -1
  149. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs.map +1 -1
  150. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs +7 -1
  151. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs.map +1 -1
  152. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs +7 -1
  153. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs.map +1 -1
  154. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs +7 -1
  155. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs.map +1 -1
  156. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs +7 -1
  157. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs.map +1 -1
  158. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs +7 -1
  159. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs.map +1 -1
  160. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs +7 -1
  161. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs.map +1 -1
  162. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs +7 -1
  163. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs.map +1 -1
  164. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs +7 -1
  165. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs.map +1 -1
  166. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs +7 -1
  167. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs.map +1 -1
  168. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs.map +1 -1
  169. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs.map +1 -1
  170. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs +7 -1
  171. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs.map +1 -1
  172. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs +7 -1
  173. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs.map +1 -1
  174. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs +7 -1
  175. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs.map +1 -1
  176. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs +7 -1
  177. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs.map +1 -1
  178. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs +7 -1
  179. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs.map +1 -1
  180. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs +7 -1
  181. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs.map +1 -1
  182. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs +7 -1
  183. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs.map +1 -1
  184. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs +7 -1
  185. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs.map +1 -1
  186. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs +7 -1
  187. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs.map +1 -1
  188. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs +7 -1
  189. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs.map +1 -1
  190. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs +7 -1
  191. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs.map +1 -1
  192. package/dist/cjs/test-selectors/AutocompleteTestSelector.cjs +49 -0
  193. package/dist/cjs/test-selectors/AutocompleteTestSelector.cjs.map +1 -0
  194. package/dist/cjs/test-selectors/CalloutTestSelector.cjs +43 -0
  195. package/dist/cjs/test-selectors/CalloutTestSelector.cjs.map +1 -0
  196. package/dist/cjs/test-selectors/SelectTestSelector.cjs +55 -0
  197. package/dist/cjs/test-selectors/SelectTestSelector.cjs.map +1 -0
  198. package/dist/cjs/{OdysseyTranslationProvider.types.cjs → test-selectors/TabsTestSelector.cjs} +23 -4
  199. package/dist/cjs/test-selectors/TabsTestSelector.cjs.map +1 -0
  200. package/dist/cjs/test-selectors/TextFieldTestSelector.cjs +44 -0
  201. package/dist/cjs/test-selectors/TextFieldTestSelector.cjs.map +1 -0
  202. package/dist/cjs/test-selectors/index.cjs +11 -0
  203. package/dist/cjs/test-selectors/index.cjs.map +1 -1
  204. package/dist/cjs/test-selectors/queryOdysseySelector.cjs +10 -10
  205. package/dist/cjs/test-selectors/queryOdysseySelector.cjs.map +1 -1
  206. package/dist/cjs/theme/components.cjs +5 -9
  207. package/dist/cjs/theme/components.cjs.map +1 -1
  208. package/dist/cjs/tools/addSpecificity.cjs.map +1 -0
  209. package/dist/cjs/tools/bufferLatest.cjs.map +1 -0
  210. package/dist/cjs/tools/createMessageBus.cjs.map +1 -0
  211. package/dist/cjs/tools/createStore.cjs.map +1 -0
  212. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +2 -12
  213. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -1
  214. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs +20 -15
  215. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs.map +1 -1
  216. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +137 -136
  217. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  218. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs +2 -2
  219. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs.map +1 -1
  220. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +7 -4
  221. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
  222. package/dist/cjs/ui-shell/SideNav/SideNavItemContentContext.cjs.map +1 -1
  223. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +3 -4
  224. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
  225. package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs +47 -0
  226. package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs.map +1 -0
  227. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +2 -2
  228. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
  229. package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs +2 -2
  230. package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs.map +1 -1
  231. package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs +2 -2
  232. package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs.map +1 -1
  233. package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
  234. package/dist/cjs/ui-shell/UiShell.cjs +4 -4
  235. package/dist/cjs/ui-shell/UiShell.cjs.map +1 -1
  236. package/dist/cjs/ui-shell/UiShellProvider.cjs +1 -1
  237. package/dist/cjs/ui-shell/UiShellProvider.cjs.map +1 -1
  238. package/dist/cjs/ui-shell/WideUiShellContent.cjs +2 -1
  239. package/dist/cjs/ui-shell/WideUiShellContent.cjs.map +1 -1
  240. package/dist/cjs/ui-shell/renderUiShell.cjs +2 -2
  241. package/dist/cjs/ui-shell/renderUiShell.cjs.map +1 -1
  242. package/dist/cjs/ui-shell/uiShellContentTypes.cjs +2 -1
  243. package/dist/cjs/ui-shell/uiShellContentTypes.cjs.map +1 -1
  244. package/dist/cjs/{shadow-dom/shadow-dom.cjs → web-component/createShadowDomElements.cjs} +8 -3
  245. package/dist/cjs/web-component/createShadowDomElements.cjs.map +1 -0
  246. package/dist/cjs/web-component/index.cjs +33 -0
  247. package/dist/cjs/web-component/index.cjs.map +1 -1
  248. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
  249. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
  250. package/dist/cjs/web-component/removeGlobalStylesFromShadowDom.cjs +35 -0
  251. package/dist/cjs/web-component/removeGlobalStylesFromShadowDom.cjs.map +1 -0
  252. package/dist/cjs/web-component/renderReactInWebComponent.cjs +5 -9
  253. package/dist/cjs/web-component/renderReactInWebComponent.cjs.map +1 -1
  254. package/dist/esm/Autocomplete.js +1 -31
  255. package/dist/esm/Autocomplete.js.map +1 -1
  256. package/dist/esm/Banner.js +1 -1
  257. package/dist/esm/Banner.js.map +1 -1
  258. package/dist/esm/Breadcrumbs.js +1 -1
  259. package/dist/esm/Breadcrumbs.js.map +1 -1
  260. package/dist/esm/Buttons/BaseButton.js.map +1 -1
  261. package/dist/esm/Callout.js +1 -25
  262. package/dist/esm/Callout.js.map +1 -1
  263. package/dist/esm/Card.js +281 -63
  264. package/dist/esm/Card.js.map +1 -1
  265. package/dist/esm/Checkbox.js +13 -11
  266. package/dist/esm/Checkbox.js.map +1 -1
  267. package/dist/esm/DataTable/DataTable.js +1 -1
  268. package/dist/esm/DataTable/DataTable.js.map +1 -1
  269. package/dist/esm/DataTable/DataTableRowActions.js +1 -1
  270. package/dist/esm/DataTable/DataTableRowActions.js.map +1 -1
  271. package/dist/esm/DataTable/DataTableSettings.js +1 -1
  272. package/dist/esm/DataTable/DataTableSettings.js.map +1 -1
  273. package/dist/esm/DataTable/useRowReordering.js +1 -1
  274. package/dist/esm/DataTable/useRowReordering.js.map +1 -1
  275. package/dist/esm/DatePickers/DateField.js +1 -1
  276. package/dist/esm/DatePickers/DateField.js.map +1 -1
  277. package/dist/esm/DatePickers/DateFieldActionBar.js +1 -1
  278. package/dist/esm/DatePickers/DateFieldActionBar.js.map +1 -1
  279. package/dist/esm/DatePickers/DatePicker.js +1 -1
  280. package/dist/esm/DatePickers/DatePicker.js.map +1 -1
  281. package/dist/esm/DatePickers/useDateFieldsTranslations.js +1 -1
  282. package/dist/esm/DatePickers/useDateFieldsTranslations.js.map +1 -1
  283. package/dist/esm/DatePickers/useOdysseyDateFields.js +1 -1
  284. package/dist/esm/DatePickers/useOdysseyDateFields.js.map +1 -1
  285. package/dist/esm/Dialog.js +33 -30
  286. package/dist/esm/Dialog.js.map +1 -1
  287. package/dist/esm/Drawer.js +7 -3
  288. package/dist/esm/Drawer.js.map +1 -1
  289. package/dist/esm/Field.js +1 -1
  290. package/dist/esm/Field.js.map +1 -1
  291. package/dist/esm/FieldError.js +1 -1
  292. package/dist/esm/FieldError.js.map +1 -1
  293. package/dist/esm/FieldLabel.js +1 -1
  294. package/dist/esm/FieldLabel.js.map +1 -1
  295. package/dist/esm/FileUploader/FileUploadPreview.js +1 -1
  296. package/dist/esm/FileUploader/FileUploadPreview.js.map +1 -1
  297. package/dist/esm/FileUploader/FileUploader.js +1 -1
  298. package/dist/esm/FileUploader/FileUploader.js.map +1 -1
  299. package/dist/esm/FullScreenOverlay.js +35 -0
  300. package/dist/esm/FullScreenOverlay.js.map +1 -0
  301. package/dist/esm/FullScreenOverlayContext.js +66 -0
  302. package/dist/esm/FullScreenOverlayContext.js.map +1 -0
  303. package/dist/esm/OdysseyCacheProvider.js +12 -17
  304. package/dist/esm/OdysseyCacheProvider.js.map +1 -1
  305. package/dist/esm/OdysseyProvider.js +18 -10
  306. package/dist/esm/OdysseyProvider.js.map +1 -1
  307. package/dist/esm/OdysseyThemeProvider.js +27 -16
  308. package/dist/esm/OdysseyThemeProvider.js.map +1 -1
  309. package/dist/esm/OdysseyThemeProviderPropsContext.js +38 -0
  310. package/dist/esm/OdysseyThemeProviderPropsContext.js.map +1 -0
  311. package/dist/esm/Pagination/Pagination.js +1 -2
  312. package/dist/esm/Pagination/Pagination.js.map +1 -1
  313. package/dist/esm/Pagination/usePagination.js +1 -1
  314. package/dist/esm/Pagination/usePagination.js.map +1 -1
  315. package/dist/esm/PasswordField.js +1 -1
  316. package/dist/esm/PasswordField.js.map +1 -1
  317. package/dist/esm/Radio.js +22 -20
  318. package/dist/esm/Radio.js.map +1 -1
  319. package/dist/esm/SearchField.js +1 -1
  320. package/dist/esm/SearchField.js.map +1 -1
  321. package/dist/esm/Select.js +0 -36
  322. package/dist/esm/Select.js.map +1 -1
  323. package/dist/esm/Surface.js +3 -3
  324. package/dist/esm/Surface.js.map +1 -1
  325. package/dist/esm/Switch.js +1 -1
  326. package/dist/esm/Switch.js.map +1 -1
  327. package/dist/esm/Tabs.js +0 -20
  328. package/dist/esm/Tabs.js.map +1 -1
  329. package/dist/esm/Tag.js +1 -1
  330. package/dist/esm/Tag.js.map +1 -1
  331. package/dist/esm/TextField.js +0 -25
  332. package/dist/esm/TextField.js.map +1 -1
  333. package/dist/esm/Toast.js +1 -1
  334. package/dist/esm/Toast.js.map +1 -1
  335. package/dist/esm/__internal.js +24 -0
  336. package/dist/esm/__internal.js.map +1 -0
  337. package/dist/esm/i18n.generated/i18n.js +25 -0
  338. package/dist/esm/i18n.generated/i18n.js.map +1 -0
  339. package/dist/esm/i18n.generated/i18n.resources.js +75 -0
  340. package/dist/esm/i18n.generated/i18n.resources.js.map +1 -0
  341. package/dist/{types/shadow-dom/index.d.ts → esm/i18n.generated/i18n.types.js} +3 -3
  342. package/dist/esm/i18n.generated/i18n.types.js.map +1 -0
  343. package/dist/esm/index.js +4 -3
  344. package/dist/esm/index.js.map +1 -1
  345. package/dist/esm/labs/DataFilters.js +1 -1
  346. package/dist/esm/labs/DataFilters.js.map +1 -1
  347. package/dist/esm/labs/DataTable.js +1 -1
  348. package/dist/esm/labs/DataTable.js.map +1 -1
  349. package/dist/esm/labs/DataView/BulkActionsMenu.js +1 -1
  350. package/dist/esm/labs/DataView/BulkActionsMenu.js.map +1 -1
  351. package/dist/esm/labs/DataView/CardLayoutContent.js +61 -45
  352. package/dist/esm/labs/DataView/CardLayoutContent.js.map +1 -1
  353. package/dist/esm/labs/DataView/DataCard.js +51 -180
  354. package/dist/esm/labs/DataView/DataCard.js.map +1 -1
  355. package/dist/esm/labs/DataView/DataView.js +1 -1
  356. package/dist/esm/labs/DataView/DataView.js.map +1 -1
  357. package/dist/esm/labs/DataView/LayoutSwitcher.js +1 -1
  358. package/dist/esm/labs/DataView/LayoutSwitcher.js.map +1 -1
  359. package/dist/esm/labs/DataView/RowActions.js +1 -1
  360. package/dist/esm/labs/DataView/RowActions.js.map +1 -1
  361. package/dist/esm/labs/DataView/TableLayoutContent.js +1 -1
  362. package/dist/esm/labs/DataView/TableLayoutContent.js.map +1 -1
  363. package/dist/esm/labs/DataView/TableSettings.js +1 -1
  364. package/dist/esm/labs/DataView/TableSettings.js.map +1 -1
  365. package/dist/esm/labs/DataView/componentTypes.js.map +1 -1
  366. package/dist/esm/labs/DataView/fetchData.js +2 -2
  367. package/dist/esm/labs/DataView/fetchData.js.map +1 -1
  368. package/dist/esm/labs/DatePickers/DateTimeField.js +1 -1
  369. package/dist/esm/labs/DatePickers/DateTimeField.js.map +1 -1
  370. package/dist/esm/labs/DatePickers/DateTimePicker.js +1 -1
  371. package/dist/esm/labs/DatePickers/DateTimePicker.js.map +1 -1
  372. package/dist/esm/labs/DatePickers/dateTimePickerTheme.js +3 -3
  373. package/dist/esm/labs/DatePickers/dateTimePickerTheme.js.map +1 -1
  374. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js +1 -1
  375. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js.map +1 -1
  376. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js +4 -0
  377. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -1
  378. package/dist/esm/labs/OdysseyPickers/index.js.map +1 -1
  379. package/dist/esm/labs/PageTemplate/Layout.js +2 -2
  380. package/dist/esm/labs/PageTemplate/Layout.js.map +1 -1
  381. package/dist/esm/labs/PageTemplate/PageTemplate.js.map +1 -1
  382. package/dist/esm/labs/PaginatedTable.js +1 -1
  383. package/dist/esm/labs/PaginatedTable.js.map +1 -1
  384. package/dist/esm/labs/StaticTable.js +1 -1
  385. package/dist/esm/labs/StaticTable.js.map +1 -1
  386. package/dist/esm/properties/ts/odyssey-react-mui.js.map +1 -1
  387. package/dist/esm/properties/ts/odyssey-react-mui_cs.js +7 -1
  388. package/dist/esm/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  389. package/dist/esm/properties/ts/odyssey-react-mui_da.js +7 -1
  390. package/dist/esm/properties/ts/odyssey-react-mui_da.js.map +1 -1
  391. package/dist/esm/properties/ts/odyssey-react-mui_de.js +8 -2
  392. package/dist/esm/properties/ts/odyssey-react-mui_de.js.map +1 -1
  393. package/dist/esm/properties/ts/odyssey-react-mui_el.js +7 -1
  394. package/dist/esm/properties/ts/odyssey-react-mui_el.js.map +1 -1
  395. package/dist/esm/properties/ts/odyssey-react-mui_es.js +7 -1
  396. package/dist/esm/properties/ts/odyssey-react-mui_es.js.map +1 -1
  397. package/dist/esm/properties/ts/odyssey-react-mui_eu.js +7 -1
  398. package/dist/esm/properties/ts/odyssey-react-mui_eu.js.map +1 -1
  399. package/dist/esm/properties/ts/odyssey-react-mui_fi.js +7 -1
  400. package/dist/esm/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  401. package/dist/esm/properties/ts/odyssey-react-mui_fr.js +7 -1
  402. package/dist/esm/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  403. package/dist/esm/properties/ts/odyssey-react-mui_ht.js +7 -1
  404. package/dist/esm/properties/ts/odyssey-react-mui_ht.js.map +1 -1
  405. package/dist/esm/properties/ts/odyssey-react-mui_hu.js +7 -1
  406. package/dist/esm/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  407. package/dist/esm/properties/ts/odyssey-react-mui_id.js +7 -1
  408. package/dist/esm/properties/ts/odyssey-react-mui_id.js.map +1 -1
  409. package/dist/esm/properties/ts/odyssey-react-mui_it.js +7 -1
  410. package/dist/esm/properties/ts/odyssey-react-mui_it.js.map +1 -1
  411. package/dist/esm/properties/ts/odyssey-react-mui_ja.js +7 -1
  412. package/dist/esm/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  413. package/dist/esm/properties/ts/odyssey-react-mui_ko.js +7 -1
  414. package/dist/esm/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  415. package/dist/esm/properties/ts/odyssey-react-mui_ms.js +7 -1
  416. package/dist/esm/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  417. package/dist/esm/properties/ts/odyssey-react-mui_nb.js +7 -1
  418. package/dist/esm/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  419. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js +7 -1
  420. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  421. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
  422. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
  423. package/dist/esm/properties/ts/odyssey-react-mui_pl.js +7 -1
  424. package/dist/esm/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  425. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js +7 -1
  426. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  427. package/dist/esm/properties/ts/odyssey-react-mui_ro.js +7 -1
  428. package/dist/esm/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  429. package/dist/esm/properties/ts/odyssey-react-mui_ru.js +7 -1
  430. package/dist/esm/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  431. package/dist/esm/properties/ts/odyssey-react-mui_sv.js +7 -1
  432. package/dist/esm/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  433. package/dist/esm/properties/ts/odyssey-react-mui_th.js +7 -1
  434. package/dist/esm/properties/ts/odyssey-react-mui_th.js.map +1 -1
  435. package/dist/esm/properties/ts/odyssey-react-mui_tr.js +7 -1
  436. package/dist/esm/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  437. package/dist/esm/properties/ts/odyssey-react-mui_uk.js +7 -1
  438. package/dist/esm/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  439. package/dist/esm/properties/ts/odyssey-react-mui_vi.js +7 -1
  440. package/dist/esm/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  441. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js +7 -1
  442. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  443. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js +7 -1
  444. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  445. package/dist/esm/test-selectors/AutocompleteTestSelector.js +43 -0
  446. package/dist/esm/test-selectors/AutocompleteTestSelector.js.map +1 -0
  447. package/dist/esm/test-selectors/CalloutTestSelector.js +37 -0
  448. package/dist/esm/test-selectors/CalloutTestSelector.js.map +1 -0
  449. package/dist/esm/test-selectors/SelectTestSelector.js +49 -0
  450. package/dist/esm/test-selectors/SelectTestSelector.js.map +1 -0
  451. package/dist/esm/test-selectors/TabsTestSelector.js +33 -0
  452. package/dist/esm/test-selectors/TabsTestSelector.js.map +1 -0
  453. package/dist/esm/test-selectors/TextFieldTestSelector.js +38 -0
  454. package/dist/esm/test-selectors/TextFieldTestSelector.js.map +1 -0
  455. package/dist/esm/test-selectors/index.js +1 -0
  456. package/dist/esm/test-selectors/index.js.map +1 -1
  457. package/dist/esm/test-selectors/queryOdysseySelector.js +5 -5
  458. package/dist/esm/test-selectors/queryOdysseySelector.js.map +1 -1
  459. package/dist/esm/theme/components.js +5 -9
  460. package/dist/esm/theme/components.js.map +1 -1
  461. package/dist/esm/tools/addSpecificity.js.map +1 -0
  462. package/dist/esm/tools/bufferLatest.js.map +1 -0
  463. package/dist/esm/tools/createMessageBus.js.map +1 -0
  464. package/dist/esm/tools/createStore.js.map +1 -0
  465. package/dist/esm/ui-shell/NarrowUiShellContent.js +3 -13
  466. package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -1
  467. package/dist/esm/ui-shell/SideNav/NavAccordion.js +20 -15
  468. package/dist/esm/ui-shell/SideNav/NavAccordion.js.map +1 -1
  469. package/dist/esm/ui-shell/SideNav/SideNav.js +136 -135
  470. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  471. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js +1 -1
  472. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js.map +1 -1
  473. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +7 -4
  474. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
  475. package/dist/esm/ui-shell/SideNav/SideNavItemContentContext.js.map +1 -1
  476. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +3 -4
  477. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
  478. package/dist/esm/ui-shell/SideNav/SideNavSortableList.js +42 -0
  479. package/dist/esm/ui-shell/SideNav/SideNavSortableList.js.map +1 -0
  480. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +1 -1
  481. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
  482. package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js +1 -1
  483. package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js.map +1 -1
  484. package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js +1 -1
  485. package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js.map +1 -1
  486. package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
  487. package/dist/esm/ui-shell/UiShell.js +4 -4
  488. package/dist/esm/ui-shell/UiShell.js.map +1 -1
  489. package/dist/esm/ui-shell/UiShellProvider.js +1 -1
  490. package/dist/esm/ui-shell/UiShellProvider.js.map +1 -1
  491. package/dist/esm/ui-shell/WideUiShellContent.js +2 -1
  492. package/dist/esm/ui-shell/WideUiShellContent.js.map +1 -1
  493. package/dist/esm/ui-shell/renderUiShell.js +2 -2
  494. package/dist/esm/ui-shell/renderUiShell.js.map +1 -1
  495. package/dist/esm/ui-shell/uiShellContentTypes.js +1 -0
  496. package/dist/esm/ui-shell/uiShellContentTypes.js.map +1 -1
  497. package/dist/esm/{shadow-dom/shadow-dom.js → web-component/createShadowDomElements.js} +8 -3
  498. package/dist/esm/web-component/createShadowDomElements.js.map +1 -0
  499. package/dist/esm/web-component/index.js +3 -0
  500. package/dist/esm/web-component/index.js.map +1 -1
  501. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
  502. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
  503. package/dist/esm/web-component/removeGlobalStylesFromShadowDom.js +28 -0
  504. package/dist/esm/web-component/removeGlobalStylesFromShadowDom.js.map +1 -0
  505. package/dist/esm/web-component/renderReactInWebComponent.js +5 -9
  506. package/dist/esm/web-component/renderReactInWebComponent.js.map +1 -1
  507. package/dist/tsconfig.production.tsbuildinfo +1 -1
  508. package/dist/types/Autocomplete.d.ts +0 -30
  509. package/dist/types/Autocomplete.d.ts.map +1 -1
  510. package/dist/types/Banner.d.ts.map +1 -1
  511. package/dist/types/Breadcrumbs.d.ts.map +1 -1
  512. package/dist/types/Buttons/BaseButton.d.ts +2 -2
  513. package/dist/types/Buttons/BaseButton.d.ts.map +1 -1
  514. package/dist/types/Callout.d.ts +0 -24
  515. package/dist/types/Callout.d.ts.map +1 -1
  516. package/dist/types/Card.d.ts +17 -6
  517. package/dist/types/Card.d.ts.map +1 -1
  518. package/dist/types/Checkbox.d.ts.map +1 -1
  519. package/dist/types/DataTable/DataTable.d.ts.map +1 -1
  520. package/dist/types/DataTable/DataTableRowActions.d.ts.map +1 -1
  521. package/dist/types/DatePickers/DatePicker.d.ts.map +1 -1
  522. package/dist/types/DatePickers/useDateFieldsTranslations.d.ts.map +1 -1
  523. package/dist/types/DatePickers/useOdysseyDateFields.d.ts.map +1 -1
  524. package/dist/types/Dialog.d.ts.map +1 -1
  525. package/dist/types/Drawer.d.ts.map +1 -1
  526. package/dist/types/Field.d.ts.map +1 -1
  527. package/dist/types/FieldError.d.ts.map +1 -1
  528. package/dist/types/FieldLabel.d.ts.map +1 -1
  529. package/dist/types/FileUploader/FileUploader.d.ts.map +1 -1
  530. package/dist/types/FullScreenOverlay.d.ts +19 -0
  531. package/dist/types/FullScreenOverlay.d.ts.map +1 -0
  532. package/dist/types/FullScreenOverlayContext.d.ts +31 -0
  533. package/dist/types/FullScreenOverlayContext.d.ts.map +1 -0
  534. package/dist/types/NativeSelect.d.ts +1 -1
  535. package/dist/types/OdysseyCacheProvider.d.ts +10 -3
  536. package/dist/types/OdysseyCacheProvider.d.ts.map +1 -1
  537. package/dist/types/OdysseyProvider.d.ts +8 -8
  538. package/dist/types/OdysseyProvider.d.ts.map +1 -1
  539. package/dist/types/OdysseyThemeProvider.d.ts +7 -16
  540. package/dist/types/OdysseyThemeProvider.d.ts.map +1 -1
  541. package/dist/types/OdysseyThemeProviderPropsContext.d.ts +27 -0
  542. package/dist/types/OdysseyThemeProviderPropsContext.d.ts.map +1 -0
  543. package/dist/types/Pagination/Pagination.d.ts +0 -1
  544. package/dist/types/Pagination/Pagination.d.ts.map +1 -1
  545. package/dist/types/Pagination/usePagination.d.ts.map +1 -1
  546. package/dist/types/PasswordField.d.ts.map +1 -1
  547. package/dist/types/Radio.d.ts.map +1 -1
  548. package/dist/types/SearchField.d.ts.map +1 -1
  549. package/dist/types/Select.d.ts +0 -36
  550. package/dist/types/Select.d.ts.map +1 -1
  551. package/dist/types/Surface.d.ts.map +1 -1
  552. package/dist/types/Switch.d.ts.map +1 -1
  553. package/dist/types/Tabs.d.ts +0 -20
  554. package/dist/types/Tabs.d.ts.map +1 -1
  555. package/dist/types/Tag.d.ts.map +1 -1
  556. package/dist/types/TextField.d.ts +0 -25
  557. package/dist/types/TextField.d.ts.map +1 -1
  558. package/dist/types/Toast.d.ts.map +1 -1
  559. package/dist/types/__internal.d.ts +30 -0
  560. package/dist/types/__internal.d.ts.map +1 -0
  561. package/dist/types/i18n.generated/i18n.d.ts +285 -0
  562. package/dist/types/i18n.generated/i18n.d.ts.map +1 -0
  563. package/dist/types/i18n.generated/i18n.resources.d.ts +4199 -0
  564. package/dist/types/{i18n.d.ts.map → i18n.generated/i18n.resources.d.ts.map} +1 -1
  565. package/dist/types/i18n.generated/i18n.types.d.ts +30 -0
  566. package/dist/types/i18n.generated/i18n.types.d.ts.map +1 -0
  567. package/dist/types/index.d.ts +4 -3
  568. package/dist/types/index.d.ts.map +1 -1
  569. package/dist/types/labs/DataTable.d.ts.map +1 -1
  570. package/dist/types/labs/DataView/CardLayoutContent.d.ts.map +1 -1
  571. package/dist/types/labs/DataView/DataCard.d.ts +14 -30
  572. package/dist/types/labs/DataView/DataCard.d.ts.map +1 -1
  573. package/dist/types/labs/DataView/RowActions.d.ts.map +1 -1
  574. package/dist/types/labs/DataView/componentTypes.d.ts +1 -1
  575. package/dist/types/labs/DataView/componentTypes.d.ts.map +1 -1
  576. package/dist/types/labs/DataView/fetchData.d.ts.map +1 -1
  577. package/dist/types/labs/DatePickers/DateTimePicker.d.ts.map +1 -1
  578. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts.map +1 -1
  579. package/dist/types/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts.map +1 -1
  580. package/dist/types/labs/OdysseyPickers/index.d.ts +1 -2
  581. package/dist/types/labs/OdysseyPickers/index.d.ts.map +1 -1
  582. package/dist/types/labs/PageTemplate/PageTemplate.d.ts.map +1 -1
  583. package/dist/types/labs/PaginatedTable.d.ts.map +1 -1
  584. package/dist/types/labs/StaticTable.d.ts.map +1 -1
  585. package/dist/types/properties/ts/odyssey-react-mui.d.ts +133 -133
  586. package/dist/types/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  587. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts +133 -127
  588. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  589. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts +133 -127
  590. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  591. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts +133 -127
  592. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  593. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts +133 -127
  594. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  595. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts +133 -127
  596. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  597. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts +133 -127
  598. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts.map +1 -1
  599. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts +133 -127
  600. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  601. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts +133 -127
  602. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  603. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts +133 -127
  604. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -1
  605. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts +133 -127
  606. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  607. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts +133 -127
  608. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  609. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts +133 -127
  610. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  611. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts +133 -127
  612. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  613. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts +133 -127
  614. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  615. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts +133 -127
  616. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  617. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts +133 -127
  618. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  619. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts +133 -127
  620. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  621. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts +133 -133
  622. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
  623. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts +133 -133
  624. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
  625. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts +133 -127
  626. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  627. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts +133 -127
  628. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  629. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts +133 -127
  630. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  631. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts +133 -127
  632. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  633. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts +133 -127
  634. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  635. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts +133 -127
  636. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  637. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts +133 -127
  638. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  639. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts +133 -127
  640. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  641. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts +133 -127
  642. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  643. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts +133 -127
  644. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  645. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts +133 -127
  646. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  647. package/dist/types/test-selectors/AutocompleteTestSelector.d.ts +42 -0
  648. package/dist/types/test-selectors/AutocompleteTestSelector.d.ts.map +1 -0
  649. package/dist/types/test-selectors/CalloutTestSelector.d.ts +36 -0
  650. package/dist/types/test-selectors/CalloutTestSelector.d.ts.map +1 -0
  651. package/dist/types/test-selectors/SelectTestSelector.d.ts +48 -0
  652. package/dist/types/test-selectors/SelectTestSelector.d.ts.map +1 -0
  653. package/dist/types/test-selectors/TabsTestSelector.d.ts +32 -0
  654. package/dist/types/test-selectors/TabsTestSelector.d.ts.map +1 -0
  655. package/dist/types/test-selectors/TextFieldTestSelector.d.ts +37 -0
  656. package/dist/types/test-selectors/TextFieldTestSelector.d.ts.map +1 -0
  657. package/dist/types/test-selectors/index.d.ts +1 -0
  658. package/dist/types/test-selectors/index.d.ts.map +1 -1
  659. package/dist/types/test-selectors/queryOdysseySelector.d.ts.map +1 -1
  660. package/dist/types/theme/components.d.ts.map +1 -1
  661. package/dist/types/tools/addSpecificity.d.ts.map +1 -0
  662. package/dist/types/tools/bufferLatest.d.ts.map +1 -0
  663. package/dist/types/tools/createMessageBus.d.ts.map +1 -0
  664. package/dist/types/tools/createStore.d.ts.map +1 -0
  665. package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -1
  666. package/dist/types/ui-shell/SideNav/NavAccordion.d.ts.map +1 -1
  667. package/dist/types/ui-shell/SideNav/SideNav.d.ts +1 -1
  668. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  669. package/dist/types/ui-shell/SideNav/SideNavFooterContent.d.ts.map +1 -1
  670. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts +2 -1
  671. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
  672. package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts +1 -0
  673. package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts.map +1 -1
  674. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
  675. package/dist/types/ui-shell/SideNav/SideNavSortableList.d.ts +41 -0
  676. package/dist/types/ui-shell/SideNav/SideNavSortableList.d.ts.map +1 -0
  677. package/dist/types/ui-shell/SideNav/types.d.ts +13 -2
  678. package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
  679. package/dist/types/ui-shell/UiShell.d.ts +1 -1
  680. package/dist/types/ui-shell/UiShell.d.ts.map +1 -1
  681. package/dist/types/ui-shell/UiShellProvider.d.ts +1 -1
  682. package/dist/types/ui-shell/UiShellProvider.d.ts.map +1 -1
  683. package/dist/types/ui-shell/WideUiShellContent.d.ts.map +1 -1
  684. package/dist/types/ui-shell/renderUiShell.d.ts +2 -2
  685. package/dist/types/ui-shell/renderUiShell.d.ts.map +1 -1
  686. package/dist/types/ui-shell/uiShellContentTypes.d.ts +4 -1
  687. package/dist/types/ui-shell/uiShellContentTypes.d.ts.map +1 -1
  688. package/dist/types/{shadow-dom/shadow-dom.d.ts → web-component/createShadowDomElements.d.ts} +6 -4
  689. package/dist/types/web-component/createShadowDomElements.d.ts.map +1 -0
  690. package/dist/types/web-component/index.d.ts +3 -0
  691. package/dist/types/web-component/index.d.ts.map +1 -1
  692. package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
  693. package/dist/types/web-component/removeGlobalStylesFromShadowDom.d.ts +18 -0
  694. package/dist/types/web-component/removeGlobalStylesFromShadowDom.d.ts.map +1 -0
  695. package/dist/types/web-component/renderReactInWebComponent.d.ts +1 -1
  696. package/dist/types/web-component/renderReactInWebComponent.d.ts.map +1 -1
  697. package/package.json +26 -17
  698. package/dist/cjs/@types/i18next.d.cjs +0 -4
  699. package/dist/cjs/@types/i18next.d.cjs.map +0 -1
  700. package/dist/cjs/@types/properties.d.cjs +0 -2
  701. package/dist/cjs/@types/properties.d.cjs.map +0 -1
  702. package/dist/cjs/OdysseyTranslationProvider.cjs +0 -55
  703. package/dist/cjs/OdysseyTranslationProvider.cjs.map +0 -1
  704. package/dist/cjs/OdysseyTranslationProvider.types.cjs.map +0 -1
  705. package/dist/cjs/addSpecificity.cjs.map +0 -1
  706. package/dist/cjs/i18n.cjs +0 -113
  707. package/dist/cjs/i18n.cjs.map +0 -1
  708. package/dist/cjs/shadow-dom/index.cjs +0 -17
  709. package/dist/cjs/shadow-dom/index.cjs.map +0 -1
  710. package/dist/cjs/shadow-dom/shadow-dom.cjs.map +0 -1
  711. package/dist/cjs/ui-shell/bufferLatest.cjs.map +0 -1
  712. package/dist/cjs/ui-shell/createMessageBus.cjs.map +0 -1
  713. package/dist/cjs/ui-shell/createStore.cjs.map +0 -1
  714. package/dist/esm/@types/i18next.d.js +0 -14
  715. package/dist/esm/@types/i18next.d.js.map +0 -1
  716. package/dist/esm/@types/properties.d.js +0 -2
  717. package/dist/esm/@types/properties.d.js.map +0 -1
  718. package/dist/esm/OdysseyTranslationProvider.js +0 -48
  719. package/dist/esm/OdysseyTranslationProvider.js.map +0 -1
  720. package/dist/esm/OdysseyTranslationProvider.types.js +0 -14
  721. package/dist/esm/OdysseyTranslationProvider.types.js.map +0 -1
  722. package/dist/esm/addSpecificity.js.map +0 -1
  723. package/dist/esm/i18n.js +0 -100
  724. package/dist/esm/i18n.js.map +0 -1
  725. package/dist/esm/shadow-dom/index.js.map +0 -1
  726. package/dist/esm/shadow-dom/shadow-dom.js.map +0 -1
  727. package/dist/esm/ui-shell/bufferLatest.js.map +0 -1
  728. package/dist/esm/ui-shell/createMessageBus.js.map +0 -1
  729. package/dist/esm/ui-shell/createStore.js.map +0 -1
  730. package/dist/types/OdysseyTranslationProvider.d.ts +0 -24
  731. package/dist/types/OdysseyTranslationProvider.d.ts.map +0 -1
  732. package/dist/types/OdysseyTranslationProvider.types.d.ts +0 -14
  733. package/dist/types/OdysseyTranslationProvider.types.d.ts.map +0 -1
  734. package/dist/types/addSpecificity.d.ts.map +0 -1
  735. package/dist/types/i18n.d.ts +0 -3910
  736. package/dist/types/shadow-dom/index.d.ts.map +0 -1
  737. package/dist/types/shadow-dom/shadow-dom.d.ts.map +0 -1
  738. package/dist/types/ui-shell/bufferLatest.d.ts.map +0 -1
  739. package/dist/types/ui-shell/createMessageBus.d.ts.map +0 -1
  740. package/dist/types/ui-shell/createStore.d.ts.map +0 -1
  741. /package/dist/cjs/{addSpecificity.cjs → tools/addSpecificity.cjs} +0 -0
  742. /package/dist/cjs/{ui-shell → tools}/bufferLatest.cjs +0 -0
  743. /package/dist/cjs/{ui-shell → tools}/createMessageBus.cjs +0 -0
  744. /package/dist/cjs/{ui-shell → tools}/createStore.cjs +0 -0
  745. /package/dist/esm/{addSpecificity.js → tools/addSpecificity.js} +0 -0
  746. /package/dist/esm/{ui-shell → tools}/bufferLatest.js +0 -0
  747. /package/dist/esm/{ui-shell → tools}/createMessageBus.js +0 -0
  748. /package/dist/esm/{ui-shell → tools}/createStore.js +0 -0
  749. /package/dist/types/{addSpecificity.d.ts → tools/addSpecificity.d.ts} +0 -0
  750. /package/dist/types/{ui-shell → tools}/bufferLatest.d.ts +0 -0
  751. /package/dist/types/{ui-shell → tools}/createMessageBus.d.ts +0 -0
  752. /package/dist/types/{ui-shell → tools}/createStore.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DateField.cjs","names":["_xDatePickers","require","_react","_reactI18next","_Field","_jsxRuntime","_interopRequireDefault","e","__esModule","default","useOdysseyDateError","t","useTranslation","Map","formatDateTimeToUtcIsoDateString","value","toUTC","toISO","DateField","defaultValue","endAdornment","errorMessage","hasInitialFocus","hint","HintLinkComponent","id","idOverride","inputRef","isDisabled","isOptional","isReadOnly","label","minDate","maxDate","onBlur","onChange","onFocus","timezone","errorMap","displayedErrorMessage","setDisplayedErrorMessage","useState","internalValidationError","useRef","localInputRef","useImperativeHandle","focus","current","checkMinMaxValidity","useCallback","hasMinError","hasMaxError","get","useEffect","clearErrorMessages","undefined","validateAndCallOnChange","validationContext","validationError","hasEnteredFullYear","year","toString","length","odysseyValidationError","isValid","dateStringFromDateTime","checkFieldValidityAndSetError","event","hasVisibleAdornment","renderFieldComponent","ariaDescribedBy","errorMessageElementId","labelElementId","jsx","autoFocus","disabled","inputProps","InputProps","error","Boolean","Fragment","children","_InputAdornment2","position","name","readOnly","variant","Field","fieldType","hasVisibleLabel","MemoizedDateField","exports","memo","displayName"],"sources":["../../../src/DatePickers/DateField.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 { InputAdornment } from \"@mui/material\";\nimport {\n DateValidationError,\n DateField as MuiDateField,\n DateFieldProps as MuiDateFieldProps,\n} from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport {\n FocusEventHandler,\n memo,\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { Field, RenderFieldComponentProps } from \"../Field.js\";\nimport { TextFieldProps } from \"../TextField.js\";\n\nexport type DateFieldProps = {\n onChange?: (value: string) => void;\n} & Pick<\n MuiDateFieldProps<DateTime>,\n \"defaultValue\" | \"inputRef\" | \"minDate\" | \"maxDate\" | \"timezone\" | \"value\"\n> &\n Pick<\n TextFieldProps,\n | \"endAdornment\"\n | \"errorMessage\"\n | \"hasInitialFocus\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isOptional\"\n | \"isReadOnly\"\n | \"label\"\n | \"onBlur\"\n | \"onFocus\"\n >;\n\nconst useOdysseyDateError = () => {\n const { t } = useTranslation();\n\n return new Map<DateValidationError, string>([\n [\"invalidDate\", t(\"picker.error.invalid\")],\n [\"maxDate\", t(\"picker.error.maxdate\")],\n [\"minDate\", t(\"picker.error.mindate\")],\n ]);\n};\n\nconst formatDateTimeToUtcIsoDateString = (value: DateTime) =>\n value.toUTC().toISO();\n\nconst DateField = ({\n defaultValue,\n endAdornment,\n errorMessage,\n hasInitialFocus,\n hint,\n HintLinkComponent,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isOptional = false,\n isReadOnly,\n label,\n minDate,\n maxDate,\n onBlur,\n onChange,\n onFocus,\n timezone,\n value,\n}: DateFieldProps) => {\n const errorMap = useOdysseyDateError();\n const [displayedErrorMessage, setDisplayedErrorMessage] =\n useState(errorMessage);\n\n const internalValidationError = useRef<string | undefined>();\n const localInputRef = useRef<HTMLInputElement>(null);\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const checkMinMaxValidity = useCallback(\n (value: DateTime) => {\n const hasMinError = minDate && value.toUTC() < minDate.toUTC();\n const hasMaxError = maxDate && value.toUTC() > maxDate.toUTC();\n\n if (hasMinError || hasMaxError) {\n if (hasMinError) {\n setDisplayedErrorMessage(errorMap.get(\"minDate\"));\n }\n\n if (hasMaxError) {\n setDisplayedErrorMessage(errorMap.get(\"maxDate\"));\n }\n\n return false;\n }\n\n return true;\n },\n [errorMap, minDate, maxDate],\n );\n\n useEffect(() => {\n if (value) {\n checkMinMaxValidity(value);\n }\n\n if (defaultValue) {\n checkMinMaxValidity(defaultValue);\n }\n }, [checkMinMaxValidity, defaultValue, minDate, maxDate, value]);\n\n const clearErrorMessages = useCallback(() => {\n setDisplayedErrorMessage(undefined);\n internalValidationError.current = undefined;\n }, [internalValidationError, setDisplayedErrorMessage]);\n\n const validateAndCallOnChange = useCallback<\n NonNullable<MuiDateFieldProps<DateTime>[\"onChange\"]>\n >(\n (value, validationContext) => {\n clearErrorMessages();\n const { validationError } = validationContext;\n const hasEnteredFullYear = value?.year.toString().length === 4;\n\n if (validationError) {\n const odysseyValidationError = errorMap.get(validationError);\n\n if (odysseyValidationError) {\n internalValidationError.current = odysseyValidationError;\n\n if (value?.isValid && hasEnteredFullYear) {\n setDisplayedErrorMessage(odysseyValidationError);\n }\n }\n }\n\n if (value?.isValid && !validationError) {\n const dateStringFromDateTime = formatDateTimeToUtcIsoDateString(value);\n\n if (dateStringFromDateTime && checkMinMaxValidity(value)) {\n onChange?.(dateStringFromDateTime);\n }\n }\n },\n [checkMinMaxValidity, clearErrorMessages, errorMap, onChange],\n );\n\n const checkFieldValidityAndSetError = useCallback<\n FocusEventHandler<HTMLInputElement>\n >(\n (event) => {\n if (internalValidationError?.current && !displayedErrorMessage) {\n setDisplayedErrorMessage(internalValidationError.current);\n }\n onBlur?.(event);\n },\n [displayedErrorMessage, internalValidationError, onBlur],\n );\n\n const hasVisibleAdornment = !isReadOnly && !isDisabled;\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: RenderFieldComponentProps) => (\n <MuiDateField\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n defaultValue={defaultValue}\n disabled={isDisabled}\n id={id}\n inputProps={{\n \"aria-describedby\": ariaDescribedBy,\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n }}\n InputProps={{\n error: Boolean(displayedErrorMessage || errorMessage),\n endAdornment: (\n <>\n {hasVisibleAdornment && (\n <InputAdornment position=\"end\">{endAdornment}</InputAdornment>\n )}\n </>\n ),\n }}\n inputRef={localInputRef}\n maxDate={maxDate}\n minDate={minDate}\n name={id}\n onBlur={checkFieldValidityAndSetError}\n onChange={validateAndCallOnChange}\n onFocus={onFocus}\n readOnly={isReadOnly}\n timezone={timezone}\n value={value}\n variant=\"standard\"\n />\n ),\n [\n checkFieldValidityAndSetError,\n defaultValue,\n displayedErrorMessage,\n endAdornment,\n errorMessage,\n hasInitialFocus,\n hasVisibleAdornment,\n isDisabled,\n localInputRef,\n minDate,\n maxDate,\n onFocus,\n isReadOnly,\n timezone,\n validateAndCallOnChange,\n value,\n ],\n );\n\n return (\n <Field\n errorMessage={displayedErrorMessage || errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={idOverride}\n isDisabled={isDisabled}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedDateField = memo(DateField);\nMemoizedDateField.displayName = \"DateField\";\n\nexport { MemoizedDateField as DateField };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DateField.cjs","names":["_xDatePickers","require","_react","_Field","_i18n","_jsxRuntime","_interopRequireDefault","e","__esModule","default","useOdysseyDateError","t","useTranslation","Map","formatDateTimeToUtcIsoDateString","value","toUTC","toISO","DateField","defaultValue","endAdornment","errorMessage","hasInitialFocus","hint","HintLinkComponent","id","idOverride","inputRef","isDisabled","isOptional","isReadOnly","label","minDate","maxDate","onBlur","onChange","onFocus","timezone","errorMap","displayedErrorMessage","setDisplayedErrorMessage","useState","internalValidationError","useRef","localInputRef","useImperativeHandle","focus","current","checkMinMaxValidity","useCallback","hasMinError","hasMaxError","get","useEffect","clearErrorMessages","undefined","validateAndCallOnChange","validationContext","validationError","hasEnteredFullYear","year","toString","length","odysseyValidationError","isValid","dateStringFromDateTime","checkFieldValidityAndSetError","event","hasVisibleAdornment","renderFieldComponent","ariaDescribedBy","errorMessageElementId","labelElementId","jsx","autoFocus","disabled","inputProps","InputProps","error","Boolean","Fragment","children","_InputAdornment2","position","name","readOnly","variant","Field","fieldType","hasVisibleLabel","MemoizedDateField","exports","memo","displayName"],"sources":["../../../src/DatePickers/DateField.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 { InputAdornment } from \"@mui/material\";\nimport {\n DateValidationError,\n DateField as MuiDateField,\n DateFieldProps as MuiDateFieldProps,\n} from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport {\n FocusEventHandler,\n memo,\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\n\nimport { Field, RenderFieldComponentProps } from \"../Field.js\";\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\nimport { TextFieldProps } from \"../TextField.js\";\n\nexport type DateFieldProps = {\n onChange?: (value: string) => void;\n} & Pick<\n MuiDateFieldProps<DateTime>,\n \"defaultValue\" | \"inputRef\" | \"minDate\" | \"maxDate\" | \"timezone\" | \"value\"\n> &\n Pick<\n TextFieldProps,\n | \"endAdornment\"\n | \"errorMessage\"\n | \"hasInitialFocus\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isOptional\"\n | \"isReadOnly\"\n | \"label\"\n | \"onBlur\"\n | \"onFocus\"\n >;\n\nconst useOdysseyDateError = () => {\n const { t } = useTranslation();\n\n return new Map<DateValidationError, string>([\n [\"invalidDate\", t(\"picker.error.invalid\")],\n [\"maxDate\", t(\"picker.error.maxdate\")],\n [\"minDate\", t(\"picker.error.mindate\")],\n ]);\n};\n\nconst formatDateTimeToUtcIsoDateString = (value: DateTime) =>\n value.toUTC().toISO();\n\nconst DateField = ({\n defaultValue,\n endAdornment,\n errorMessage,\n hasInitialFocus,\n hint,\n HintLinkComponent,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isOptional = false,\n isReadOnly,\n label,\n minDate,\n maxDate,\n onBlur,\n onChange,\n onFocus,\n timezone,\n value,\n}: DateFieldProps) => {\n const errorMap = useOdysseyDateError();\n const [displayedErrorMessage, setDisplayedErrorMessage] =\n useState(errorMessage);\n\n const internalValidationError = useRef<string | undefined>();\n const localInputRef = useRef<HTMLInputElement>(null);\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const checkMinMaxValidity = useCallback(\n (value: DateTime) => {\n const hasMinError = minDate && value.toUTC() < minDate.toUTC();\n const hasMaxError = maxDate && value.toUTC() > maxDate.toUTC();\n\n if (hasMinError || hasMaxError) {\n if (hasMinError) {\n setDisplayedErrorMessage(errorMap.get(\"minDate\"));\n }\n\n if (hasMaxError) {\n setDisplayedErrorMessage(errorMap.get(\"maxDate\"));\n }\n\n return false;\n }\n\n return true;\n },\n [errorMap, minDate, maxDate],\n );\n\n useEffect(() => {\n if (value) {\n checkMinMaxValidity(value);\n }\n\n if (defaultValue) {\n checkMinMaxValidity(defaultValue);\n }\n }, [checkMinMaxValidity, defaultValue, minDate, maxDate, value]);\n\n const clearErrorMessages = useCallback(() => {\n setDisplayedErrorMessage(undefined);\n internalValidationError.current = undefined;\n }, [internalValidationError, setDisplayedErrorMessage]);\n\n const validateAndCallOnChange = useCallback<\n NonNullable<MuiDateFieldProps<DateTime>[\"onChange\"]>\n >(\n (value, validationContext) => {\n clearErrorMessages();\n const { validationError } = validationContext;\n const hasEnteredFullYear = value?.year.toString().length === 4;\n\n if (validationError) {\n const odysseyValidationError = errorMap.get(validationError);\n\n if (odysseyValidationError) {\n internalValidationError.current = odysseyValidationError;\n\n if (value?.isValid && hasEnteredFullYear) {\n setDisplayedErrorMessage(odysseyValidationError);\n }\n }\n }\n\n if (value?.isValid && !validationError) {\n const dateStringFromDateTime = formatDateTimeToUtcIsoDateString(value);\n\n if (dateStringFromDateTime && checkMinMaxValidity(value)) {\n onChange?.(dateStringFromDateTime);\n }\n }\n },\n [checkMinMaxValidity, clearErrorMessages, errorMap, onChange],\n );\n\n const checkFieldValidityAndSetError = useCallback<\n FocusEventHandler<HTMLInputElement>\n >(\n (event) => {\n if (internalValidationError?.current && !displayedErrorMessage) {\n setDisplayedErrorMessage(internalValidationError.current);\n }\n onBlur?.(event);\n },\n [displayedErrorMessage, internalValidationError, onBlur],\n );\n\n const hasVisibleAdornment = !isReadOnly && !isDisabled;\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: RenderFieldComponentProps) => (\n <MuiDateField\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n defaultValue={defaultValue}\n disabled={isDisabled}\n id={id}\n inputProps={{\n \"aria-describedby\": ariaDescribedBy,\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n }}\n InputProps={{\n error: Boolean(displayedErrorMessage || errorMessage),\n endAdornment: (\n <>\n {hasVisibleAdornment && (\n <InputAdornment position=\"end\">{endAdornment}</InputAdornment>\n )}\n </>\n ),\n }}\n inputRef={localInputRef}\n maxDate={maxDate}\n minDate={minDate}\n name={id}\n onBlur={checkFieldValidityAndSetError}\n onChange={validateAndCallOnChange}\n onFocus={onFocus}\n readOnly={isReadOnly}\n timezone={timezone}\n value={value}\n variant=\"standard\"\n />\n ),\n [\n checkFieldValidityAndSetError,\n defaultValue,\n displayedErrorMessage,\n endAdornment,\n errorMessage,\n hasInitialFocus,\n hasVisibleAdornment,\n isDisabled,\n localInputRef,\n minDate,\n maxDate,\n onFocus,\n isReadOnly,\n timezone,\n validateAndCallOnChange,\n value,\n ],\n );\n\n return (\n <Field\n errorMessage={displayedErrorMessage || errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={idOverride}\n isDisabled={isDisabled}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedDateField = memo(DateField);\nMemoizedDateField.displayName = \"DateField\";\n\nexport { MemoizedDateField as DateField };\n"],"mappings":"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","ignoreList":[]}
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.DateFieldActionBar = void 0;
7
7
  var _styled = _interopRequireDefault(require("@emotion/styled"));
8
8
  var _react = require("react");
9
- var _reactI18next = require("react-i18next");
10
9
  var _index = require("../Buttons/index.cjs");
10
+ var _i18n = require("../i18n.generated/i18n.cjs");
11
11
  var _OdysseyDesignTokensContext = require("../OdysseyDesignTokensContext.cjs");
12
12
  var _jsxRuntime = require("react/jsx-runtime");
13
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -38,7 +38,7 @@ const DateFieldActionBar = ({
38
38
  }) => {
39
39
  const {
40
40
  t
41
- } = (0, _reactI18next.useTranslation)();
41
+ } = (0, _i18n.useTranslation)();
42
42
  const odysseyDesignTokens = (0, _OdysseyDesignTokensContext.useOdysseyDesignTokens)();
43
43
  if (actions && actions.length > 0) {
44
44
  return (0, _jsxRuntime.jsxs)(ActionContainer, {
@@ -1 +1 @@
1
- {"version":3,"file":"DateFieldActionBar.cjs","names":["_styled","_interopRequireDefault","require","_react","_reactI18next","_index","_OdysseyDesignTokensContext","_jsxRuntime","e","__esModule","default","ActionContainer","styled","div","odysseyDesignTokens","display","justifyContent","paddingInline","Spacing4","paddingBlockEnd","DateFieldActionBar","actions","onAccept","onCancel","t","useTranslation","useOdysseyDesignTokens","length","jsxs","children","jsx","Button","label","onClick","variant","MemoizedDateFieldActionBar","exports","memo","displayName"],"sources":["../../../src/DatePickers/DateFieldActionBar.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { PickersActionBarProps } from \"@mui/x-date-pickers\";\nimport { memo } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { Button } from \"../Buttons/index.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\n\nconst ActionContainer = styled.div<{ odysseyDesignTokens: DesignTokens }>(\n ({ odysseyDesignTokens }) => ({\n display: \"flex\",\n justifyContent: \"flex-end\",\n paddingInline: odysseyDesignTokens.Spacing4,\n paddingBlockEnd: odysseyDesignTokens.Spacing4,\n }),\n);\n\nconst DateFieldActionBar = ({\n actions,\n onAccept,\n onCancel,\n}: PickersActionBarProps) => {\n const { t } = useTranslation();\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n // actions will be [] or [\"accept\", \"cancel\"]\n if (actions && actions.length > 0) {\n return (\n <ActionContainer odysseyDesignTokens={odysseyDesignTokens}>\n <Button\n label={t(\"picker.labels.action.cancel\")}\n onClick={onCancel}\n variant=\"floating\"\n />\n <Button\n label={t(\"picker.labels.action.apply\")}\n onClick={onAccept}\n variant=\"primary\"\n />\n </ActionContainer>\n );\n }\n\n return null;\n};\n\nconst MemoizedDateFieldActionBar = memo(DateFieldActionBar);\nMemoizedDateFieldActionBar.displayName = \"DateFieldActionBar\";\n\nexport { MemoizedDateFieldActionBar as DateFieldActionBar };\n"],"mappings":";;;;;;AAYA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,2BAAA,GAAAJ,OAAA;AAG0C,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AArB1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA,MAAMG,eAAe,GAAGC,eAAM,CAACC,GAAG,CAChC,CAAC;EAAEC;AAAoB,CAAC,MAAM;EAC5BC,OAAO,EAAE,MAAM;EACfC,cAAc,EAAE,UAAU;EAC1BC,aAAa,EAAEH,mBAAmB,CAACI,QAAQ;EAC3CC,eAAe,EAAEL,mBAAmB,CAACI;AACvC,CAAC,CACH,CAAC;AAED,MAAME,kBAAkB,GAAGA,CAAC;EAC1BC,OAAO;EACPC,QAAQ;EACRC;AACqB,CAAC,KAAK;EAC3B,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,4BAAc,EAAC,CAAC;EAC9B,MAAMX,mBAAmB,GAAG,IAAAY,kDAAsB,EAAC,CAAC;EAGpD,IAAIL,OAAO,IAAIA,OAAO,CAACM,MAAM,GAAG,CAAC,EAAE;IACjC,OACE,IAAApB,WAAA,CAAAqB,IAAA,EAACjB,eAAe;MAACG,mBAAmB,EAAEA,mBAAoB;MAAAe,QAAA,GACxD,IAAAtB,WAAA,CAAAuB,GAAA,EAACzB,MAAA,CAAA0B,MAAM;QACLC,KAAK,EAAER,CAAC,CAAC,6BAA6B,CAAE;QACxCS,OAAO,EAAEV,QAAS;QAClBW,OAAO,EAAC;MAAU,CACnB,CAAC,EACF,IAAA3B,WAAA,CAAAuB,GAAA,EAACzB,MAAA,CAAA0B,MAAM;QACLC,KAAK,EAAER,CAAC,CAAC,4BAA4B,CAAE;QACvCS,OAAO,EAAEX,QAAS;QAClBY,OAAO,EAAC;MAAS,CAClB,CAAC;IAAA,CACa,CAAC;EAEtB;EAEA,OAAO,IAAI;AACb,CAAC;AAED,MAAMC,0BAA0B,GAAAC,OAAA,CAAAhB,kBAAA,GAAG,IAAAiB,WAAI,EAACjB,kBAAkB,CAAC;AAC3De,0BAA0B,CAACG,WAAW,GAAG,oBAAoB","ignoreList":[]}
1
+ {"version":3,"file":"DateFieldActionBar.cjs","names":["_styled","_interopRequireDefault","require","_react","_index","_i18n","_OdysseyDesignTokensContext","_jsxRuntime","e","__esModule","default","ActionContainer","styled","div","odysseyDesignTokens","display","justifyContent","paddingInline","Spacing4","paddingBlockEnd","DateFieldActionBar","actions","onAccept","onCancel","t","useTranslation","useOdysseyDesignTokens","length","jsxs","children","jsx","Button","label","onClick","variant","MemoizedDateFieldActionBar","exports","memo","displayName"],"sources":["../../../src/DatePickers/DateFieldActionBar.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { PickersActionBarProps } from \"@mui/x-date-pickers\";\nimport { memo } from \"react\";\n\nimport { Button } from \"../Buttons/index.js\";\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\n\nconst ActionContainer = styled.div<{ odysseyDesignTokens: DesignTokens }>(\n ({ odysseyDesignTokens }) => ({\n display: \"flex\",\n justifyContent: \"flex-end\",\n paddingInline: odysseyDesignTokens.Spacing4,\n paddingBlockEnd: odysseyDesignTokens.Spacing4,\n }),\n);\n\nconst DateFieldActionBar = ({\n actions,\n onAccept,\n onCancel,\n}: PickersActionBarProps) => {\n const { t } = useTranslation();\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n // actions will be [] or [\"accept\", \"cancel\"]\n if (actions && actions.length > 0) {\n return (\n <ActionContainer odysseyDesignTokens={odysseyDesignTokens}>\n <Button\n label={t(\"picker.labels.action.cancel\")}\n onClick={onCancel}\n variant=\"floating\"\n />\n <Button\n label={t(\"picker.labels.action.apply\")}\n onClick={onAccept}\n variant=\"primary\"\n />\n </ActionContainer>\n );\n }\n\n return null;\n};\n\nconst MemoizedDateFieldActionBar = memo(DateFieldActionBar);\nMemoizedDateFieldActionBar.displayName = \"DateFieldActionBar\";\n\nexport { MemoizedDateFieldActionBar as DateFieldActionBar };\n"],"mappings":";;;;;;AAYA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,2BAAA,GAAAJ,OAAA;AAG0C,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AArB1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA,MAAMG,eAAe,GAAGC,eAAM,CAACC,GAAG,CAChC,CAAC;EAAEC;AAAoB,CAAC,MAAM;EAC5BC,OAAO,EAAE,MAAM;EACfC,cAAc,EAAE,UAAU;EAC1BC,aAAa,EAAEH,mBAAmB,CAACI,QAAQ;EAC3CC,eAAe,EAAEL,mBAAmB,CAACI;AACvC,CAAC,CACH,CAAC;AAED,MAAME,kBAAkB,GAAGA,CAAC;EAC1BC,OAAO;EACPC,QAAQ;EACRC;AACqB,CAAC,KAAK;EAC3B,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,oBAAc,EAAC,CAAC;EAC9B,MAAMX,mBAAmB,GAAG,IAAAY,kDAAsB,EAAC,CAAC;EAGpD,IAAIL,OAAO,IAAIA,OAAO,CAACM,MAAM,GAAG,CAAC,EAAE;IACjC,OACE,IAAApB,WAAA,CAAAqB,IAAA,EAACjB,eAAe;MAACG,mBAAmB,EAAEA,mBAAoB;MAAAe,QAAA,GACxD,IAAAtB,WAAA,CAAAuB,GAAA,EAAC1B,MAAA,CAAA2B,MAAM;QACLC,KAAK,EAAER,CAAC,CAAC,6BAA6B,CAAE;QACxCS,OAAO,EAAEV,QAAS;QAClBW,OAAO,EAAC;MAAU,CACnB,CAAC,EACF,IAAA3B,WAAA,CAAAuB,GAAA,EAAC1B,MAAA,CAAA2B,MAAM;QACLC,KAAK,EAAER,CAAC,CAAC,4BAA4B,CAAE;QACvCS,OAAO,EAAEX,QAAS;QAClBY,OAAO,EAAC;MAAS,CAClB,CAAC;IAAA,CACa,CAAC;EAEtB;EAEA,OAAO,IAAI;AACb,CAAC;AAED,MAAMC,0BAA0B,GAAAC,OAAA,CAAAhB,kBAAA,GAAG,IAAAiB,WAAI,EAACjB,kBAAkB,CAAC;AAC3De,0BAA0B,CAACG,WAAW,GAAG,oBAAoB","ignoreList":[]}
@@ -7,8 +7,8 @@ exports.DatePicker = void 0;
7
7
  var _styled = _interopRequireDefault(require("@emotion/styled"));
8
8
  var _xDatePickers = require("@mui/x-date-pickers");
9
9
  var _react = require("react");
10
- var _reactI18next = require("react-i18next");
11
10
  var _index = require("../Buttons/index.cjs");
11
+ var _i18n = require("../i18n.generated/i18n.cjs");
12
12
  var _OdysseyDesignTokensContext = require("../OdysseyDesignTokensContext.cjs");
13
13
  var _OdysseyThemeProvider = require("../OdysseyThemeProvider.cjs");
14
14
  var _useUniqueId = require("../useUniqueId.cjs");
@@ -78,7 +78,7 @@ const DatePicker = ({
78
78
  const {
79
79
  i18n,
80
80
  t
81
- } = (0, _reactI18next.useTranslation)();
81
+ } = (0, _i18n.useTranslation)();
82
82
  const inputRef = (0, _react.useRef)(null);
83
83
  const odysseyDesignTokens = (0, _OdysseyDesignTokensContext.useOdysseyDesignTokens)();
84
84
  const datePickerId = (0, _useUniqueId.useUniqueId)(idOverride);
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.cjs","names":["_styled","_interopRequireDefault","require","_xDatePickers","_react","_reactI18next","_index","_OdysseyDesignTokensContext","_OdysseyThemeProvider","_useUniqueId","_DateField","_DateFieldActionBar","_DateFieldLocalizationProvider","_datePickerTheme","_TimeZonePicker","_useOdysseyDateFields","_jsxRuntime","e","__esModule","default","DatePickerContainer","styled","div","marginBlockEnd","DatePickerWidthContainer","odysseyDesignTokens","width","maxWidth","TypographyLineLengthMax","TimeZonePickerContainer","shouldForwardProp","prop","marginBlockStart","Spacing3","DatePicker","defaultValue","defaultValueProp","errorMessage","hint","HintLinkComponent","id","idOverride","isDateEnabled","isDisabled","isOptional","isReadOnly","isMonthEnabled","isYearEnabled","label","minDate","minDateProp","maxDate","maxDateProp","onBlur","onCalendarDateChange","onInputChange","onInputChangeProp","timeZone","timeZonePickerLabel","timeZoneOptions","value","valueProp","i18n","t","useTranslation","inputRef","useRef","useOdysseyDesignTokens","datePickerId","useUniqueId","closeCalendar","commonIcons","defaultedLanguageCode","formatDateTimeToUtcIsoDateString","formatDayOfWeek","inputValues","internalTimeZone","isOpen","localeText","onTimeZoneChange","popperElement","setPopperElement","shouldDisableDate","shouldDisableMonth","shouldDisableYear","toggleCalendarVisibility","useOdysseyDateFields","language","containerRef","useEffect","current","formatDateTimeToJsDateStringOnCalendarSelection","useCallback","dateStringFromDateTime","renderDateField","jsx","DateField","endAdornment","Button","ariaLabel","onClick","size","startIcon","CalendarIcon","variant","onChange","timezone","slots","useMemo","actionBar","DateFieldActionBar","field","muiProps","leftArrowIcon","ArrowLeftIcon","rightArrowIcon","ArrowRightIcon","switchViewIcon","ChevronDownIcon","slotProps","wrapperVariant","onAccept","onCancel","actions","popper","anchorEl","toolbar","toolbarPlaceholder","OdysseyThemeProvider","themeOverride","datePickerTheme","children","jsxs","DateFieldLocalizationProvider","ref","dayOfWeekFormatter","disabled","fixedWeekNumber","onClose","open","readOnly","TimeZonePicker","MemoizedDatePicker","exports","memo","displayName"],"sources":["../../../src/DatePickers/DatePicker.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n DatePickerSlotProps,\n type DatePickerSlots,\n DatePicker as MuiDatePicker,\n DatePickerProps as MuiDatePickerProps,\n} from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport { memo, useCallback, useEffect, useMemo, useRef } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { Button } from \"../Buttons/index.js\";\nimport { FieldComponentProps } from \"../FieldComponentProps.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { OdysseyThemeProvider } from \"../OdysseyThemeProvider.js\";\nimport { useUniqueId } from \"../useUniqueId.js\";\nimport { DateField, DateFieldProps } from \"./DateField.js\";\nimport { DateFieldActionBar } from \"./DateFieldActionBar.js\";\nimport { DateFieldLocalizationProvider } from \"./DateFieldLocalizationProvider.js\";\nimport { datePickerTheme } from \"./datePickerTheme.js\";\nimport { TimeZonePicker } from \"./TimeZonePicker.js\";\nimport {\n OdysseyDateFieldProps,\n useOdysseyDateFields,\n} from \"./useOdysseyDateFields.js\";\n\nconst DatePickerContainer = styled.div({\n \".MuiFormControl-root\": {\n marginBlockEnd: 0,\n },\n});\n\nconst DatePickerWidthContainer = styled.div<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n \".MuiInput-root\": {\n width: \"100%\",\n maxWidth: odysseyDesignTokens.TypographyLineLengthMax,\n },\n}));\n\nconst TimeZonePickerContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n marginBlockStart: odysseyDesignTokens.Spacing3,\n}));\n\ntype RenderDateFieldProps = {\n defaultValue: DateFieldProps[\"defaultValue\"];\n value: DateFieldProps[\"value\"];\n} & MuiDatePickerProps<DateTime>;\n\nexport type DatePickerProps = OdysseyDateFieldProps &\n Pick<\n FieldComponentProps,\n | \"errorMessage\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isReadOnly\"\n | \"isOptional\"\n >;\n\nconst DatePicker = ({\n defaultValue: defaultValueProp,\n errorMessage,\n hint,\n HintLinkComponent,\n id: idOverride,\n isDateEnabled = () => true,\n isDisabled,\n isOptional,\n isReadOnly,\n isMonthEnabled = () => true,\n isYearEnabled = () => true,\n label,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onBlur,\n onCalendarDateChange,\n onInputChange: onInputChangeProp,\n timeZone,\n timeZonePickerLabel,\n timeZoneOptions,\n value: valueProp,\n}: DatePickerProps) => {\n const { i18n, t } = useTranslation();\n const inputRef = useRef<HTMLInputElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const datePickerId = useUniqueId(idOverride);\n\n const {\n closeCalendar,\n commonIcons,\n defaultedLanguageCode,\n formatDateTimeToUtcIsoDateString,\n formatDayOfWeek,\n inputValues,\n internalTimeZone,\n isOpen,\n localeText,\n minDate,\n maxDate,\n onInputChange,\n onTimeZoneChange,\n popperElement,\n setPopperElement,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n toggleCalendarVisibility,\n } = useOdysseyDateFields({\n defaultValue: defaultValueProp,\n errorMessage,\n isDateEnabled,\n isMonthEnabled,\n isYearEnabled,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onInputChange: onInputChangeProp,\n timeZone,\n value: valueProp,\n });\n\n const { language } = i18n;\n const containerRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n setPopperElement(containerRef.current);\n }, [setPopperElement]);\n\n const formatDateTimeToJsDateStringOnCalendarSelection = useCallback<\n NonNullable<MuiDatePickerProps<DateTime>[\"onChange\"]>\n >(\n (value) => {\n if (value) {\n const dateStringFromDateTime = formatDateTimeToUtcIsoDateString(value);\n\n if (dateStringFromDateTime) {\n onCalendarDateChange?.({\n value: dateStringFromDateTime,\n timeZone: internalTimeZone,\n });\n }\n }\n },\n [formatDateTimeToUtcIsoDateString, internalTimeZone, onCalendarDateChange],\n );\n\n const renderDateField = useCallback(\n ({ defaultValue, inputRef, value }: RenderDateFieldProps) => {\n return (\n <DateField\n defaultValue={defaultValue}\n endAdornment={\n <Button\n ariaLabel={t(\"picker.labels.date.choose\")}\n label=\"\"\n onClick={toggleCalendarVisibility}\n size=\"small\"\n startIcon={<commonIcons.CalendarIcon />}\n variant=\"floating\"\n />\n }\n errorMessage={errorMessage}\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={datePickerId}\n inputRef={inputRef}\n isDisabled={isDisabled}\n isOptional={isOptional}\n isReadOnly={isReadOnly}\n label={label}\n maxDate={maxDate}\n minDate={minDate}\n onBlur={onBlur}\n onChange={onInputChange}\n timezone={internalTimeZone}\n value={value}\n />\n );\n },\n [\n commonIcons,\n datePickerId,\n errorMessage,\n hint,\n HintLinkComponent,\n internalTimeZone,\n isDisabled,\n isOptional,\n isReadOnly,\n label,\n onBlur,\n onInputChange,\n minDate,\n maxDate,\n t,\n toggleCalendarVisibility,\n ],\n );\n\n const slots = useMemo<DatePickerSlots<DateTime>>(\n () => ({\n actionBar: DateFieldActionBar,\n field: (muiProps: RenderDateFieldProps) => renderDateField(muiProps),\n leftArrowIcon: () => <commonIcons.ArrowLeftIcon />,\n rightArrowIcon: () => <commonIcons.ArrowRightIcon />,\n switchViewIcon: () => <commonIcons.ChevronDownIcon />,\n }),\n [commonIcons, renderDateField],\n );\n\n const slotProps = useMemo<DatePickerSlotProps<DateTime, false>>(\n () => ({\n actionBar: ({ wrapperVariant, onAccept, onCancel }) => ({\n actions:\n // This is the default behavior but felt more clear to pass them in explicitly\n wrapperVariant === \"desktop\" ? [] : [\"accept\", \"cancel\"],\n onAccept,\n onCancel,\n }),\n popper: {\n anchorEl: popperElement,\n },\n\n toolbar: {\n toolbarPlaceholder: \"\",\n },\n }),\n [popperElement],\n );\n\n return (\n <OdysseyThemeProvider themeOverride={datePickerTheme}>\n <DateFieldLocalizationProvider\n defaultedLanguageCode={defaultedLanguageCode}\n localeText={localeText}\n >\n <DatePickerContainer>\n <DatePickerWidthContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={containerRef}\n >\n <MuiDatePicker\n dayOfWeekFormatter={formatDayOfWeek}\n defaultValue={inputValues?.defaultValue}\n disabled={isDisabled}\n fixedWeekNumber={6}\n inputRef={inputRef}\n key={language}\n label={label}\n maxDate={maxDate}\n minDate={minDate}\n onChange={formatDateTimeToJsDateStringOnCalendarSelection}\n onClose={closeCalendar}\n open={isOpen}\n readOnly={isReadOnly}\n shouldDisableDate={shouldDisableDate}\n shouldDisableMonth={shouldDisableMonth}\n shouldDisableYear={shouldDisableYear}\n slotProps={slotProps}\n slots={slots}\n timezone={internalTimeZone}\n value={inputValues?.value}\n />\n </DatePickerWidthContainer>\n </DatePickerContainer>\n {timeZoneOptions && timeZonePickerLabel && (\n <TimeZonePickerContainer odysseyDesignTokens={odysseyDesignTokens}>\n <TimeZonePicker\n isReadOnly={isReadOnly}\n label={timeZonePickerLabel}\n onTimeZoneChange={onTimeZoneChange}\n timeZoneOptions={timeZoneOptions}\n value={internalTimeZone}\n />\n </TimeZonePickerContainer>\n )}\n </DateFieldLocalizationProvider>\n </OdysseyThemeProvider>\n );\n};\n\nconst MemoizedDatePicker = memo(DatePicker);\nMemoizedDatePicker.displayName = \"DatePicker\";\n\nexport { MemoizedDatePicker as DatePicker };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DatePicker.cjs","names":["_styled","_interopRequireDefault","require","_xDatePickers","_react","_index","_i18n","_OdysseyDesignTokensContext","_OdysseyThemeProvider","_useUniqueId","_DateField","_DateFieldActionBar","_DateFieldLocalizationProvider","_datePickerTheme","_TimeZonePicker","_useOdysseyDateFields","_jsxRuntime","e","__esModule","default","DatePickerContainer","styled","div","marginBlockEnd","DatePickerWidthContainer","odysseyDesignTokens","width","maxWidth","TypographyLineLengthMax","TimeZonePickerContainer","shouldForwardProp","prop","marginBlockStart","Spacing3","DatePicker","defaultValue","defaultValueProp","errorMessage","hint","HintLinkComponent","id","idOverride","isDateEnabled","isDisabled","isOptional","isReadOnly","isMonthEnabled","isYearEnabled","label","minDate","minDateProp","maxDate","maxDateProp","onBlur","onCalendarDateChange","onInputChange","onInputChangeProp","timeZone","timeZonePickerLabel","timeZoneOptions","value","valueProp","i18n","t","useTranslation","inputRef","useRef","useOdysseyDesignTokens","datePickerId","useUniqueId","closeCalendar","commonIcons","defaultedLanguageCode","formatDateTimeToUtcIsoDateString","formatDayOfWeek","inputValues","internalTimeZone","isOpen","localeText","onTimeZoneChange","popperElement","setPopperElement","shouldDisableDate","shouldDisableMonth","shouldDisableYear","toggleCalendarVisibility","useOdysseyDateFields","language","containerRef","useEffect","current","formatDateTimeToJsDateStringOnCalendarSelection","useCallback","dateStringFromDateTime","renderDateField","jsx","DateField","endAdornment","Button","ariaLabel","onClick","size","startIcon","CalendarIcon","variant","onChange","timezone","slots","useMemo","actionBar","DateFieldActionBar","field","muiProps","leftArrowIcon","ArrowLeftIcon","rightArrowIcon","ArrowRightIcon","switchViewIcon","ChevronDownIcon","slotProps","wrapperVariant","onAccept","onCancel","actions","popper","anchorEl","toolbar","toolbarPlaceholder","OdysseyThemeProvider","themeOverride","datePickerTheme","children","jsxs","DateFieldLocalizationProvider","ref","dayOfWeekFormatter","disabled","fixedWeekNumber","onClose","open","readOnly","TimeZonePicker","MemoizedDatePicker","exports","memo","displayName"],"sources":["../../../src/DatePickers/DatePicker.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n DatePickerSlotProps,\n type DatePickerSlots,\n DatePicker as MuiDatePicker,\n DatePickerProps as MuiDatePickerProps,\n} from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport { memo, useCallback, useEffect, useMemo, useRef } from \"react\";\n\nimport { Button } from \"../Buttons/index.js\";\nimport { FieldComponentProps } from \"../FieldComponentProps.js\";\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { OdysseyThemeProvider } from \"../OdysseyThemeProvider.js\";\nimport { useUniqueId } from \"../useUniqueId.js\";\nimport { DateField, DateFieldProps } from \"./DateField.js\";\nimport { DateFieldActionBar } from \"./DateFieldActionBar.js\";\nimport { DateFieldLocalizationProvider } from \"./DateFieldLocalizationProvider.js\";\nimport { datePickerTheme } from \"./datePickerTheme.js\";\nimport { TimeZonePicker } from \"./TimeZonePicker.js\";\nimport {\n OdysseyDateFieldProps,\n useOdysseyDateFields,\n} from \"./useOdysseyDateFields.js\";\n\nconst DatePickerContainer = styled.div({\n \".MuiFormControl-root\": {\n marginBlockEnd: 0,\n },\n});\n\nconst DatePickerWidthContainer = styled.div<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n \".MuiInput-root\": {\n width: \"100%\",\n maxWidth: odysseyDesignTokens.TypographyLineLengthMax,\n },\n}));\n\nconst TimeZonePickerContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n marginBlockStart: odysseyDesignTokens.Spacing3,\n}));\n\ntype RenderDateFieldProps = {\n defaultValue: DateFieldProps[\"defaultValue\"];\n value: DateFieldProps[\"value\"];\n} & MuiDatePickerProps<DateTime>;\n\nexport type DatePickerProps = OdysseyDateFieldProps &\n Pick<\n FieldComponentProps,\n | \"errorMessage\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isReadOnly\"\n | \"isOptional\"\n >;\n\nconst DatePicker = ({\n defaultValue: defaultValueProp,\n errorMessage,\n hint,\n HintLinkComponent,\n id: idOverride,\n isDateEnabled = () => true,\n isDisabled,\n isOptional,\n isReadOnly,\n isMonthEnabled = () => true,\n isYearEnabled = () => true,\n label,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onBlur,\n onCalendarDateChange,\n onInputChange: onInputChangeProp,\n timeZone,\n timeZonePickerLabel,\n timeZoneOptions,\n value: valueProp,\n}: DatePickerProps) => {\n const { i18n, t } = useTranslation();\n const inputRef = useRef<HTMLInputElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const datePickerId = useUniqueId(idOverride);\n\n const {\n closeCalendar,\n commonIcons,\n defaultedLanguageCode,\n formatDateTimeToUtcIsoDateString,\n formatDayOfWeek,\n inputValues,\n internalTimeZone,\n isOpen,\n localeText,\n minDate,\n maxDate,\n onInputChange,\n onTimeZoneChange,\n popperElement,\n setPopperElement,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n toggleCalendarVisibility,\n } = useOdysseyDateFields({\n defaultValue: defaultValueProp,\n errorMessage,\n isDateEnabled,\n isMonthEnabled,\n isYearEnabled,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onInputChange: onInputChangeProp,\n timeZone,\n value: valueProp,\n });\n\n const { language } = i18n;\n const containerRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n setPopperElement(containerRef.current);\n }, [setPopperElement]);\n\n const formatDateTimeToJsDateStringOnCalendarSelection = useCallback<\n NonNullable<MuiDatePickerProps<DateTime>[\"onChange\"]>\n >(\n (value) => {\n if (value) {\n const dateStringFromDateTime = formatDateTimeToUtcIsoDateString(value);\n\n if (dateStringFromDateTime) {\n onCalendarDateChange?.({\n value: dateStringFromDateTime,\n timeZone: internalTimeZone,\n });\n }\n }\n },\n [formatDateTimeToUtcIsoDateString, internalTimeZone, onCalendarDateChange],\n );\n\n const renderDateField = useCallback(\n ({ defaultValue, inputRef, value }: RenderDateFieldProps) => {\n return (\n <DateField\n defaultValue={defaultValue}\n endAdornment={\n <Button\n ariaLabel={t(\"picker.labels.date.choose\")}\n label=\"\"\n onClick={toggleCalendarVisibility}\n size=\"small\"\n startIcon={<commonIcons.CalendarIcon />}\n variant=\"floating\"\n />\n }\n errorMessage={errorMessage}\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={datePickerId}\n inputRef={inputRef}\n isDisabled={isDisabled}\n isOptional={isOptional}\n isReadOnly={isReadOnly}\n label={label}\n maxDate={maxDate}\n minDate={minDate}\n onBlur={onBlur}\n onChange={onInputChange}\n timezone={internalTimeZone}\n value={value}\n />\n );\n },\n [\n commonIcons,\n datePickerId,\n errorMessage,\n hint,\n HintLinkComponent,\n internalTimeZone,\n isDisabled,\n isOptional,\n isReadOnly,\n label,\n onBlur,\n onInputChange,\n minDate,\n maxDate,\n t,\n toggleCalendarVisibility,\n ],\n );\n\n const slots = useMemo<DatePickerSlots<DateTime>>(\n () => ({\n actionBar: DateFieldActionBar,\n field: (muiProps: RenderDateFieldProps) => renderDateField(muiProps),\n leftArrowIcon: () => <commonIcons.ArrowLeftIcon />,\n rightArrowIcon: () => <commonIcons.ArrowRightIcon />,\n switchViewIcon: () => <commonIcons.ChevronDownIcon />,\n }),\n [commonIcons, renderDateField],\n );\n\n const slotProps = useMemo<DatePickerSlotProps<DateTime, false>>(\n () => ({\n actionBar: ({ wrapperVariant, onAccept, onCancel }) => ({\n actions:\n // This is the default behavior but felt more clear to pass them in explicitly\n wrapperVariant === \"desktop\" ? [] : [\"accept\", \"cancel\"],\n onAccept,\n onCancel,\n }),\n popper: {\n anchorEl: popperElement,\n },\n\n toolbar: {\n toolbarPlaceholder: \"\",\n },\n }),\n [popperElement],\n );\n\n return (\n <OdysseyThemeProvider themeOverride={datePickerTheme}>\n <DateFieldLocalizationProvider\n defaultedLanguageCode={defaultedLanguageCode}\n localeText={localeText}\n >\n <DatePickerContainer>\n <DatePickerWidthContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={containerRef}\n >\n <MuiDatePicker\n dayOfWeekFormatter={formatDayOfWeek}\n defaultValue={inputValues?.defaultValue}\n disabled={isDisabled}\n fixedWeekNumber={6}\n inputRef={inputRef}\n key={language}\n label={label}\n maxDate={maxDate}\n minDate={minDate}\n onChange={formatDateTimeToJsDateStringOnCalendarSelection}\n onClose={closeCalendar}\n open={isOpen}\n readOnly={isReadOnly}\n shouldDisableDate={shouldDisableDate}\n shouldDisableMonth={shouldDisableMonth}\n shouldDisableYear={shouldDisableYear}\n slotProps={slotProps}\n slots={slots}\n timezone={internalTimeZone}\n value={inputValues?.value}\n />\n </DatePickerWidthContainer>\n </DatePickerContainer>\n {timeZoneOptions && timeZonePickerLabel && (\n <TimeZonePickerContainer odysseyDesignTokens={odysseyDesignTokens}>\n <TimeZonePicker\n isReadOnly={isReadOnly}\n label={timeZonePickerLabel}\n onTimeZoneChange={onTimeZoneChange}\n timeZoneOptions={timeZoneOptions}\n value={internalTimeZone}\n />\n </TimeZonePickerContainer>\n )}\n </DateFieldLocalizationProvider>\n </OdysseyThemeProvider>\n );\n};\n\nconst MemoizedDatePicker = memo(DatePicker);\nMemoizedDatePicker.displayName = \"DatePicker\";\n\nexport { MemoizedDatePicker as DatePicker };\n"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useDateFieldsTranslations = void 0;
7
- var _reactI18next = require("react-i18next");
7
+ var _i18n = require("../i18n.generated/i18n.cjs");
8
8
  /*!
9
9
  * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
10
10
  * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
@@ -20,7 +20,7 @@ var _reactI18next = require("react-i18next");
20
20
  const useDateFieldsTranslations = () => {
21
21
  const {
22
22
  t
23
- } = (0, _reactI18next.useTranslation)();
23
+ } = (0, _i18n.useTranslation)();
24
24
  return {
25
25
  calendarViewSwitchingButtonAriaLabel: view => view === "year" ? `${t("picker.view.navigation.switch.calendarview")}` : `${t("picker.view.navigation.switch.yearview")}`,
26
26
  calendarWeekNumberHeaderLabel: "",
@@ -1 +1 @@
1
- {"version":3,"file":"useDateFieldsTranslations.cjs","names":["_reactI18next","require","useDateFieldsTranslations","t","useTranslation","calendarViewSwitchingButtonAriaLabel","view","calendarWeekNumberHeaderLabel","calendarWeekNumberHeaderText","calendarWeekNumberAriaLabelText","calendarWeekNumberText","cancelButtonLabel","clearButtonLabel","clockLabelText","time","adapter","format","datePickerToolbarTitle","dateRangePickerToolbarTitle","dateTableLabel","dateTimePickerToolbarTitle","day","empty","end","endDate","endTime","fieldClearLabel","fieldDayPlaceholder","fieldMonthPlaceholder","fieldYearPlaceholder","fieldHoursPlaceholder","fieldMinutesPlaceholder","fieldSecondsPlaceholder","fieldMeridiemPlaceholder","fieldWeekDayPlaceholder","hours","hoursClockNumberText","meridiem","minutes","minutesClockNumberText","month","nextMonth","okButtonLabel","openDatePickerDialogue","value","utils","isValid","openNextView","openPreviousView","openTimePickerDialogue","previousMonth","seconds","secondsClockNumberText","selectViewText","start","startDate","startTime","todayButtonLabel","timePickerToolbarTitle","timeTableLabel","weekDay","year","exports"],"sources":["../../../src/DatePickers/useDateFieldsTranslations.ts"],"sourcesContent":["/*!\n * Copyright (c) 2024-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 { PickersLocaleText } from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport { useTranslation } from \"react-i18next\";\n\nexport type DateFieldsTranslations = PickersLocaleText<DateTime>;\n\nexport const useDateFieldsTranslations = (): DateFieldsTranslations => {\n const { t } = useTranslation();\n\n return {\n calendarViewSwitchingButtonAriaLabel: (view) =>\n view === \"year\"\n ? `${t(\"picker.view.navigation.switch.calendarview\")}`\n : `${t(\"picker.view.navigation.switch.yearview\")}`,\n // not translated because we aren't using it\n calendarWeekNumberHeaderLabel: \"\",\n calendarWeekNumberHeaderText: \"\",\n calendarWeekNumberAriaLabelText: () => \"\",\n calendarWeekNumberText: () => \"\",\n\n cancelButtonLabel: `${t(\"picker.labels.action.cancel\")}`,\n clearButtonLabel: `${t(\"clear.text\")}`,\n clockLabelText: (view, time, adapter) =>\n `${t(\"picker.labels.select\")} ${view}. ${\n time === null\n ? `${t(\"picker.labels.clock.empty\")}`\n : `${t(\"picker.labels.clock.selected\")} ${adapter.format(time, \"fullTime\")}`\n }`,\n datePickerToolbarTitle: `${t(\"picker.date.toolbar.title\")}`,\n dateRangePickerToolbarTitle: `${t(\"picker.daterange.toolbar.title\")}`,\n dateTableLabel: `${t(\"picker.labels.table.date\")}`,\n dateTimePickerToolbarTitle: `${t(\"picker.datetime.toolbar.title\")}`,\n day: `${t(\"picker.view.name.day\")}`,\n empty: `${t(\"picker.labels.empty\")}`,\n end: `${t(\"picker.labels.range.end\")}`,\n endDate: `${t(\"picker.labels.range.enddate\")}`,\n endTime: `${t(\"picker.labels.range.endtime\")}`,\n fieldClearLabel: `${t(\"picker.labels.field.clear\")}`,\n fieldDayPlaceholder: () => `${t(\"picker.field.placeholder.day\")}`,\n fieldMonthPlaceholder: () => `${t(\"picker.field.placeholder.month\")}`,\n fieldYearPlaceholder: () => `${t(\"picker.field.placeholder.year\")}`,\n fieldHoursPlaceholder: () => `${t(\"picker.field.placeholder.hours\")}`,\n fieldMinutesPlaceholder: () => `${t(\"picker.field.placeholder.minutes\")}`,\n fieldSecondsPlaceholder: () => `${t(\"picker.field.placeholder.seconds\")}`,\n fieldMeridiemPlaceholder: () => `${t(\"picker.field.placeholder.meridiem\")}`,\n // not translated because we aren't using it\n fieldWeekDayPlaceholder: () => \"\",\n hours: `${t(\"picker.view.name.hours\")}`,\n hoursClockNumberText: (hours) =>\n `${hours} ${t(\"picker.labels.clock.hours\")}`,\n meridiem: `${t(\"picker.view.name.meridiem\")}`,\n minutes: `${t(\"picker.view.name.minutes\")}`,\n minutesClockNumberText: (minutes) =>\n `${minutes} ${t(\"picker.labels.clock.minutes\")}`,\n month: `${t(\"picker.view.name.month\")}`,\n nextMonth: `${t(\"picker.calendar.navigation.nextmonth\")}`,\n okButtonLabel: `${t(\"picker.labels.action.apply\")}`,\n openDatePickerDialogue: (value, utils) =>\n value !== null && utils.isValid(value)\n ? `${t(\"picker.labels.date.choose\")}, ${t(\"picker.labels.date.selected\")} ${utils.format(value, \"fullDate\")}`\n : `${t(\"picker.labels.date.choose\")}`,\n openNextView: `${t(\"picker.view.navigation.open.nextview\")}`,\n openPreviousView: `${t(\"picker.view.navigation.open.previousview\")}`,\n openTimePickerDialogue: (value, utils) =>\n value !== null && utils.isValid(value)\n ? `${t(\"picker.labels.time.choose\")}, ${t(\"picker.labels.time.selected\")} ${utils.format(value, \"fullTime\")}`\n : `${t(\"picker.labels.time.choose\")}`,\n previousMonth: `${t(\"picker.calendar.navigation.previousmonth\")}`,\n seconds: `${t(\"picker.view.name.seconds\")}`,\n secondsClockNumberText: (seconds) =>\n `${seconds} ${t(\"picker.labels.clock.seconds\")}`,\n selectViewText: (view) => `${t(\"picker.labels.select\")} ${view}`,\n start: `${t(\"picker.labels.range.start\")}`,\n startDate: `${t(\"picker.labels.range.startdate\")}`,\n startTime: `${t(\"picker.labels.range.starttime\")}`,\n todayButtonLabel: `${t(\"picker.labels.action.today\")}`,\n timePickerToolbarTitle: `${t(\"picker.time.toolbar.title\")}`,\n timeTableLabel: `${t(\"picker.labels.table.time\")}`,\n weekDay: `${t(\"picker.view.name.weekday\")}`,\n year: `${t(\"picker.view.name.year\")}`,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useDateFieldsTranslations.cjs","names":["_i18n","require","useDateFieldsTranslations","t","useTranslation","calendarViewSwitchingButtonAriaLabel","view","calendarWeekNumberHeaderLabel","calendarWeekNumberHeaderText","calendarWeekNumberAriaLabelText","calendarWeekNumberText","cancelButtonLabel","clearButtonLabel","clockLabelText","time","adapter","format","datePickerToolbarTitle","dateRangePickerToolbarTitle","dateTableLabel","dateTimePickerToolbarTitle","day","empty","end","endDate","endTime","fieldClearLabel","fieldDayPlaceholder","fieldMonthPlaceholder","fieldYearPlaceholder","fieldHoursPlaceholder","fieldMinutesPlaceholder","fieldSecondsPlaceholder","fieldMeridiemPlaceholder","fieldWeekDayPlaceholder","hours","hoursClockNumberText","meridiem","minutes","minutesClockNumberText","month","nextMonth","okButtonLabel","openDatePickerDialogue","value","utils","isValid","openNextView","openPreviousView","openTimePickerDialogue","previousMonth","seconds","secondsClockNumberText","selectViewText","start","startDate","startTime","todayButtonLabel","timePickerToolbarTitle","timeTableLabel","weekDay","year","exports"],"sources":["../../../src/DatePickers/useDateFieldsTranslations.ts"],"sourcesContent":["/*!\n * Copyright (c) 2024-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 { PickersLocaleText } from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\n\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\n\nexport type DateFieldsTranslations = PickersLocaleText<DateTime>;\n\nexport const useDateFieldsTranslations = (): DateFieldsTranslations => {\n const { t } = useTranslation();\n\n return {\n calendarViewSwitchingButtonAriaLabel: (view) =>\n view === \"year\"\n ? `${t(\"picker.view.navigation.switch.calendarview\")}`\n : `${t(\"picker.view.navigation.switch.yearview\")}`,\n // not translated because we aren't using it\n calendarWeekNumberHeaderLabel: \"\",\n calendarWeekNumberHeaderText: \"\",\n calendarWeekNumberAriaLabelText: () => \"\",\n calendarWeekNumberText: () => \"\",\n\n cancelButtonLabel: `${t(\"picker.labels.action.cancel\")}`,\n clearButtonLabel: `${t(\"clear.text\")}`,\n clockLabelText: (view, time, adapter) =>\n `${t(\"picker.labels.select\")} ${view}. ${\n time === null\n ? `${t(\"picker.labels.clock.empty\")}`\n : `${t(\"picker.labels.clock.selected\")} ${adapter.format(time, \"fullTime\")}`\n }`,\n datePickerToolbarTitle: `${t(\"picker.date.toolbar.title\")}`,\n dateRangePickerToolbarTitle: `${t(\"picker.daterange.toolbar.title\")}`,\n dateTableLabel: `${t(\"picker.labels.table.date\")}`,\n dateTimePickerToolbarTitle: `${t(\"picker.datetime.toolbar.title\")}`,\n day: `${t(\"picker.view.name.day\")}`,\n empty: `${t(\"picker.labels.empty\")}`,\n end: `${t(\"picker.labels.range.end\")}`,\n endDate: `${t(\"picker.labels.range.enddate\")}`,\n endTime: `${t(\"picker.labels.range.endtime\")}`,\n fieldClearLabel: `${t(\"picker.labels.field.clear\")}`,\n fieldDayPlaceholder: () => `${t(\"picker.field.placeholder.day\")}`,\n fieldMonthPlaceholder: () => `${t(\"picker.field.placeholder.month\")}`,\n fieldYearPlaceholder: () => `${t(\"picker.field.placeholder.year\")}`,\n fieldHoursPlaceholder: () => `${t(\"picker.field.placeholder.hours\")}`,\n fieldMinutesPlaceholder: () => `${t(\"picker.field.placeholder.minutes\")}`,\n fieldSecondsPlaceholder: () => `${t(\"picker.field.placeholder.seconds\")}`,\n fieldMeridiemPlaceholder: () => `${t(\"picker.field.placeholder.meridiem\")}`,\n // not translated because we aren't using it\n fieldWeekDayPlaceholder: () => \"\",\n hours: `${t(\"picker.view.name.hours\")}`,\n hoursClockNumberText: (hours) =>\n `${hours} ${t(\"picker.labels.clock.hours\")}`,\n meridiem: `${t(\"picker.view.name.meridiem\")}`,\n minutes: `${t(\"picker.view.name.minutes\")}`,\n minutesClockNumberText: (minutes) =>\n `${minutes} ${t(\"picker.labels.clock.minutes\")}`,\n month: `${t(\"picker.view.name.month\")}`,\n nextMonth: `${t(\"picker.calendar.navigation.nextmonth\")}`,\n okButtonLabel: `${t(\"picker.labels.action.apply\")}`,\n openDatePickerDialogue: (value, utils) =>\n value !== null && utils.isValid(value)\n ? `${t(\"picker.labels.date.choose\")}, ${t(\"picker.labels.date.selected\")} ${utils.format(value, \"fullDate\")}`\n : `${t(\"picker.labels.date.choose\")}`,\n openNextView: `${t(\"picker.view.navigation.open.nextview\")}`,\n openPreviousView: `${t(\"picker.view.navigation.open.previousview\")}`,\n openTimePickerDialogue: (value, utils) =>\n value !== null && utils.isValid(value)\n ? `${t(\"picker.labels.time.choose\")}, ${t(\"picker.labels.time.selected\")} ${utils.format(value, \"fullTime\")}`\n : `${t(\"picker.labels.time.choose\")}`,\n previousMonth: `${t(\"picker.calendar.navigation.previousmonth\")}`,\n seconds: `${t(\"picker.view.name.seconds\")}`,\n secondsClockNumberText: (seconds) =>\n `${seconds} ${t(\"picker.labels.clock.seconds\")}`,\n selectViewText: (view) => `${t(\"picker.labels.select\")} ${view}`,\n start: `${t(\"picker.labels.range.start\")}`,\n startDate: `${t(\"picker.labels.range.startdate\")}`,\n startTime: `${t(\"picker.labels.range.starttime\")}`,\n todayButtonLabel: `${t(\"picker.labels.action.today\")}`,\n timePickerToolbarTitle: `${t(\"picker.time.toolbar.title\")}`,\n timeTableLabel: `${t(\"picker.labels.table.time\")}`,\n weekDay: `${t(\"picker.view.name.weekday\")}`,\n year: `${t(\"picker.view.name.year\")}`,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useOdysseyDateFields = void 0;
7
7
  var _luxon = require("luxon");
8
8
  var _react = require("react");
9
- var _reactI18next = require("react-i18next");
9
+ var _i18n = require("../i18n.generated/i18n.cjs");
10
10
  var _index = require("../icons.generated/index.cjs");
11
11
  var _inputUtils = require("../inputUtils.cjs");
12
12
  var _useDateFieldsTranslations = require("./useDateFieldsTranslations.cjs");
@@ -56,7 +56,7 @@ const useOdysseyDateFields = ({
56
56
  }, [minDateProp, maxDateProp]);
57
57
  const {
58
58
  i18n
59
- } = (0, _reactI18next.useTranslation)();
59
+ } = (0, _i18n.useTranslation)();
60
60
  const {
61
61
  language
62
62
  } = i18n;
@@ -1 +1 @@
1
- {"version":3,"file":"useOdysseyDateFields.cjs","names":["_luxon","require","_react","_reactI18next","_index","_inputUtils","_useDateFieldsTranslations","CONTROLLED","ComponentControlledState","isValidDateTime","dateTime","isValid","utcDateTimeFromIsoString","dateString","DateTime","fromISO","toUTC","useOdysseyDateFields","defaultValue","isDateEnabled","isMonthEnabled","isYearEnabled","minDate","minDateProp","maxDate","maxDateProp","onInputChange","onInputChangeProp","timeZone","value","isOpen","setIsOpen","useState","popperElement","setPopperElement","internalTimeZone","setInternalTimeZone","internalValueRef","useRef","validationDateRanges","setValidationDateRanges","undefined","useEffect","startOf","i18n","useTranslation","language","invalidLocales","isInvalidLocale","includes","localeText","useDateFieldsTranslations","controlledStateRef","getControlState","controlledValue","uncontrolledValue","defaultedLanguageCode","replaceAll","isValidTimeZone","useCallback","local","setZone","formatDateTimeToUtcIsoDateString","toISO","shouldDisableDate","date","Date","toJSDate","shouldDisableMonth","shouldDisableYear","inputValues","useMemo","current","valueAsUTCDateTime","defaultValueAsUTCDateTime","onTimeZoneChange","toggleCalendarVisibility","closeCalendar","formatDayOfWeek","toFormat","commonIcons","ArrowLeftIcon","ArrowRightIcon","CalendarIcon","ChevronDownIcon","exports"],"sources":["../../../src/DatePickers/useOdysseyDateFields.ts"],"sourcesContent":["/*!\n * Copyright (c) 2024-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 { DateTime } from \"luxon\";\nimport {\n FocusEventHandler,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { FieldComponentProps } from \"../FieldComponentProps.js\";\nimport {\n ArrowLeftIcon,\n ArrowRightIcon,\n CalendarIcon,\n ChevronDownIcon,\n} from \"../icons.generated/index.js\";\nimport { ComponentControlledState, getControlState } from \"../inputUtils.js\";\nimport { TimeZoneOption, TimeZonePickerProps } from \"./TimeZonePicker.js\";\nimport { useDateFieldsTranslations } from \"./useDateFieldsTranslations.js\";\n\nconst { CONTROLLED } = ComponentControlledState;\n\nconst isValidDateTime = (dateTime: DateTime) => dateTime.isValid;\n\nconst utcDateTimeFromIsoString = (dateString: string) =>\n DateTime.fromISO(dateString).toUTC();\n\nexport type OdysseyDateFieldProps = {\n /**\n * default value when uncontrolled.\n *\n * NOTE: Must be a date string in ISO format\n */\n defaultValue?: string;\n /**\n * Disable specific date(s).\n *\n * Warning: This function can be called multiple times (for example when rendering date calendar, checking if focus can be moved to a certain date, etc.). Expensive computations can impact performance.\n */\n isDateEnabled?: (date: Date) => boolean;\n /**\n * Disable specific month(s).\n */\n isMonthEnabled?: (date: Date) => boolean;\n /**\n * Disable specific year(s).\n */\n isYearEnabled?: (date: Date) => boolean;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * Maximum date allowed.\n *\n * NOTE: If not a valid date string in ISO format, `maxDate` will not apply\n */\n maxDate?: string;\n /**\n * Minimum date allowed.\n *\n * NOTE: If not a valid date string in ISO format, `minDate` will not apply\n */\n minDate?: string;\n /**\n * Callback fired when the a date field loses focus\n */\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Callback fired when the a date is selected with the calendar.\n */\n onCalendarDateChange?: ({\n value,\n timeZone,\n }: {\n timeZone: string;\n value: string | undefined;\n }) => void;\n /**\n * Callback fired when the date/text input changes.\n */\n onInputChange?: (value: string) => void;\n /**\n * a default timezone for the picker\n */\n timeZone?: string;\n /**\n * If provided, a `TimeZonePicker` will be rendered below the DatePicker. These options will populate as the Autocomplete options\n */\n timeZoneOptions?: TimeZoneOption[];\n /**\n * label for `TimeZonePicker`\n */\n timeZonePickerLabel?: TimeZonePickerProps[\"label\"];\n /**\n * value when controlled.\n *\n * NOTE: Must be a date string in ISO format or it will not be applied\n */\n value?: string;\n};\n\ntype FormatDateTimeToUtcIsoDateString = (value: DateTime) => string | undefined;\n\ntype ValidationDateRanges = {\n maxDate?: DateTime;\n minDate?: DateTime;\n};\n\nexport const useOdysseyDateFields = ({\n defaultValue,\n isDateEnabled = () => true,\n isMonthEnabled = () => true,\n isYearEnabled = () => true,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onInputChange: onInputChangeProp,\n timeZone = \"system\",\n value,\n}: Pick<\n OdysseyDateFieldProps,\n | \"defaultValue\"\n | \"isDateEnabled\"\n | \"isMonthEnabled\"\n | \"isYearEnabled\"\n | \"minDate\"\n | \"maxDate\"\n | \"onInputChange\"\n | \"timeZone\"\n | \"value\"\n> &\n Pick<FieldComponentProps, \"errorMessage\">) => {\n const [isOpen, setIsOpen] = useState(false);\n const [popperElement, setPopperElement] = useState<HTMLInputElement | null>();\n const [internalTimeZone, setInternalTimeZone] = useState(timeZone);\n\n const internalValueRef = useRef<DateTime | null>(null);\n\n const [validationDateRanges, setValidationDateRanges] =\n useState<ValidationDateRanges>({\n minDate: undefined,\n maxDate: undefined,\n });\n\n useEffect(() => {\n const minDate = minDateProp ? DateTime.fromISO(minDateProp) : undefined;\n const maxDate = maxDateProp ? DateTime.fromISO(maxDateProp) : undefined;\n\n setValidationDateRanges({\n minDate:\n minDate && isValidDateTime(minDate)\n ? minDate.startOf(\"day\")\n : undefined,\n maxDate:\n maxDate && isValidDateTime(maxDate)\n ? maxDate.startOf(\"day\")\n : undefined,\n });\n }, [minDateProp, maxDateProp]);\n\n const { i18n } = useTranslation();\n const { language } = i18n;\n\n const invalidLocales = [\"ok_PL\", \"ok_SK\"];\n // In the Applitools env the language code is `en-us@posix`. Need to check for that\n const isInvalidLocale =\n invalidLocales.includes(language) || language.includes(\"@\");\n\n const localeText = useDateFieldsTranslations();\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n\n const defaultedLanguageCode = isInvalidLocale\n ? \"en-US\"\n : language.replaceAll(\"_\", \"-\");\n\n const isValidTimeZone = useCallback(\n (timeZone: string) => DateTime.local().setZone(timeZone).isValid,\n [],\n );\n\n const formatDateTimeToUtcIsoDateString =\n useCallback<FormatDateTimeToUtcIsoDateString>(\n (value) => value.toUTC().toISO() || undefined,\n [],\n );\n\n const shouldDisableDate = useCallback(\n (date: DateTime) => !isDateEnabled(new Date(date?.toJSDate())) || false,\n [isDateEnabled],\n );\n\n const shouldDisableMonth = useCallback(\n (date: DateTime) => !isMonthEnabled(new Date(date?.toJSDate())) || false,\n [isMonthEnabled],\n );\n\n const shouldDisableYear = useCallback(\n (date: DateTime) => !isYearEnabled(new Date(date?.toJSDate())) || false,\n [isYearEnabled],\n );\n\n const inputValues = useMemo(() => {\n if (value && controlledStateRef.current === CONTROLLED) {\n const valueAsUTCDateTime = utcDateTimeFromIsoString(value);\n\n if (isValidDateTime(valueAsUTCDateTime)) {\n return {\n value: valueAsUTCDateTime,\n };\n }\n }\n\n if (defaultValue) {\n const defaultValueAsUTCDateTime = utcDateTimeFromIsoString(defaultValue);\n\n if (isValidDateTime(defaultValueAsUTCDateTime)) {\n return {\n defaultValue: defaultValueAsUTCDateTime,\n };\n }\n }\n\n return null;\n }, [defaultValue, value]);\n\n const onTimeZoneChange = useCallback(\n (timeZone: string | undefined) => {\n if (timeZone && isValidTimeZone(timeZone)) {\n setInternalTimeZone(timeZone);\n }\n },\n [isValidTimeZone, setInternalTimeZone],\n );\n\n const toggleCalendarVisibility = useCallback(\n () => setIsOpen(!isOpen),\n [isOpen, setIsOpen],\n );\n\n const closeCalendar = useCallback(() => {\n setIsOpen(false);\n }, [setIsOpen]);\n\n const formatDayOfWeek = (date: DateTime) => date.toFormat(\"EEE\");\n\n const onInputChange = useCallback<(value: string) => void>(\n (value) => {\n onInputChangeProp?.(value);\n },\n [onInputChangeProp],\n );\n\n const commonIcons = {\n ArrowLeftIcon: ArrowLeftIcon,\n ArrowRightIcon: ArrowRightIcon,\n CalendarIcon: CalendarIcon,\n ChevronDownIcon: ChevronDownIcon,\n };\n\n return {\n closeCalendar,\n commonIcons,\n defaultedLanguageCode,\n formatDateTimeToUtcIsoDateString,\n formatDayOfWeek,\n inputValues,\n internalTimeZone,\n internalValueRef,\n isOpen,\n isValidTimeZone,\n localeText,\n maxDate: validationDateRanges.maxDate,\n minDate: validationDateRanges.minDate,\n popperElement,\n onInputChange,\n onTimeZoneChange,\n setInternalTimeZone,\n setIsOpen,\n setPopperElement,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n toggleCalendarVisibility,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useOdysseyDateFields.cjs","names":["_luxon","require","_react","_i18n","_index","_inputUtils","_useDateFieldsTranslations","CONTROLLED","ComponentControlledState","isValidDateTime","dateTime","isValid","utcDateTimeFromIsoString","dateString","DateTime","fromISO","toUTC","useOdysseyDateFields","defaultValue","isDateEnabled","isMonthEnabled","isYearEnabled","minDate","minDateProp","maxDate","maxDateProp","onInputChange","onInputChangeProp","timeZone","value","isOpen","setIsOpen","useState","popperElement","setPopperElement","internalTimeZone","setInternalTimeZone","internalValueRef","useRef","validationDateRanges","setValidationDateRanges","undefined","useEffect","startOf","i18n","useTranslation","language","invalidLocales","isInvalidLocale","includes","localeText","useDateFieldsTranslations","controlledStateRef","getControlState","controlledValue","uncontrolledValue","defaultedLanguageCode","replaceAll","isValidTimeZone","useCallback","local","setZone","formatDateTimeToUtcIsoDateString","toISO","shouldDisableDate","date","Date","toJSDate","shouldDisableMonth","shouldDisableYear","inputValues","useMemo","current","valueAsUTCDateTime","defaultValueAsUTCDateTime","onTimeZoneChange","toggleCalendarVisibility","closeCalendar","formatDayOfWeek","toFormat","commonIcons","ArrowLeftIcon","ArrowRightIcon","CalendarIcon","ChevronDownIcon","exports"],"sources":["../../../src/DatePickers/useOdysseyDateFields.ts"],"sourcesContent":["/*!\n * Copyright (c) 2024-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 { DateTime } from \"luxon\";\nimport {\n FocusEventHandler,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { FieldComponentProps } from \"../FieldComponentProps.js\";\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\nimport {\n ArrowLeftIcon,\n ArrowRightIcon,\n CalendarIcon,\n ChevronDownIcon,\n} from \"../icons.generated/index.js\";\nimport { ComponentControlledState, getControlState } from \"../inputUtils.js\";\nimport { TimeZoneOption, TimeZonePickerProps } from \"./TimeZonePicker.js\";\nimport { useDateFieldsTranslations } from \"./useDateFieldsTranslations.js\";\n\nconst { CONTROLLED } = ComponentControlledState;\n\nconst isValidDateTime = (dateTime: DateTime) => dateTime.isValid;\n\nconst utcDateTimeFromIsoString = (dateString: string) =>\n DateTime.fromISO(dateString).toUTC();\n\nexport type OdysseyDateFieldProps = {\n /**\n * default value when uncontrolled.\n *\n * NOTE: Must be a date string in ISO format\n */\n defaultValue?: string;\n /**\n * Disable specific date(s).\n *\n * Warning: This function can be called multiple times (for example when rendering date calendar, checking if focus can be moved to a certain date, etc.). Expensive computations can impact performance.\n */\n isDateEnabled?: (date: Date) => boolean;\n /**\n * Disable specific month(s).\n */\n isMonthEnabled?: (date: Date) => boolean;\n /**\n * Disable specific year(s).\n */\n isYearEnabled?: (date: Date) => boolean;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * Maximum date allowed.\n *\n * NOTE: If not a valid date string in ISO format, `maxDate` will not apply\n */\n maxDate?: string;\n /**\n * Minimum date allowed.\n *\n * NOTE: If not a valid date string in ISO format, `minDate` will not apply\n */\n minDate?: string;\n /**\n * Callback fired when the a date field loses focus\n */\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Callback fired when the a date is selected with the calendar.\n */\n onCalendarDateChange?: ({\n value,\n timeZone,\n }: {\n timeZone: string;\n value: string | undefined;\n }) => void;\n /**\n * Callback fired when the date/text input changes.\n */\n onInputChange?: (value: string) => void;\n /**\n * a default timezone for the picker\n */\n timeZone?: string;\n /**\n * If provided, a `TimeZonePicker` will be rendered below the DatePicker. These options will populate as the Autocomplete options\n */\n timeZoneOptions?: TimeZoneOption[];\n /**\n * label for `TimeZonePicker`\n */\n timeZonePickerLabel?: TimeZonePickerProps[\"label\"];\n /**\n * value when controlled.\n *\n * NOTE: Must be a date string in ISO format or it will not be applied\n */\n value?: string;\n};\n\ntype FormatDateTimeToUtcIsoDateString = (value: DateTime) => string | undefined;\n\ntype ValidationDateRanges = {\n maxDate?: DateTime;\n minDate?: DateTime;\n};\n\nexport const useOdysseyDateFields = ({\n defaultValue,\n isDateEnabled = () => true,\n isMonthEnabled = () => true,\n isYearEnabled = () => true,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onInputChange: onInputChangeProp,\n timeZone = \"system\",\n value,\n}: Pick<\n OdysseyDateFieldProps,\n | \"defaultValue\"\n | \"isDateEnabled\"\n | \"isMonthEnabled\"\n | \"isYearEnabled\"\n | \"minDate\"\n | \"maxDate\"\n | \"onInputChange\"\n | \"timeZone\"\n | \"value\"\n> &\n Pick<FieldComponentProps, \"errorMessage\">) => {\n const [isOpen, setIsOpen] = useState(false);\n const [popperElement, setPopperElement] = useState<HTMLInputElement | null>();\n const [internalTimeZone, setInternalTimeZone] = useState(timeZone);\n\n const internalValueRef = useRef<DateTime | null>(null);\n\n const [validationDateRanges, setValidationDateRanges] =\n useState<ValidationDateRanges>({\n minDate: undefined,\n maxDate: undefined,\n });\n\n useEffect(() => {\n const minDate = minDateProp ? DateTime.fromISO(minDateProp) : undefined;\n const maxDate = maxDateProp ? DateTime.fromISO(maxDateProp) : undefined;\n\n setValidationDateRanges({\n minDate:\n minDate && isValidDateTime(minDate)\n ? minDate.startOf(\"day\")\n : undefined,\n maxDate:\n maxDate && isValidDateTime(maxDate)\n ? maxDate.startOf(\"day\")\n : undefined,\n });\n }, [minDateProp, maxDateProp]);\n\n const { i18n } = useTranslation();\n const { language } = i18n;\n\n const invalidLocales = [\"ok_PL\", \"ok_SK\"];\n // In the Applitools env the language code is `en-us@posix`. Need to check for that\n const isInvalidLocale =\n invalidLocales.includes(language) || language.includes(\"@\");\n\n const localeText = useDateFieldsTranslations();\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n\n const defaultedLanguageCode = isInvalidLocale\n ? \"en-US\"\n : language.replaceAll(\"_\", \"-\");\n\n const isValidTimeZone = useCallback(\n (timeZone: string) => DateTime.local().setZone(timeZone).isValid,\n [],\n );\n\n const formatDateTimeToUtcIsoDateString =\n useCallback<FormatDateTimeToUtcIsoDateString>(\n (value) => value.toUTC().toISO() || undefined,\n [],\n );\n\n const shouldDisableDate = useCallback(\n (date: DateTime) => !isDateEnabled(new Date(date?.toJSDate())) || false,\n [isDateEnabled],\n );\n\n const shouldDisableMonth = useCallback(\n (date: DateTime) => !isMonthEnabled(new Date(date?.toJSDate())) || false,\n [isMonthEnabled],\n );\n\n const shouldDisableYear = useCallback(\n (date: DateTime) => !isYearEnabled(new Date(date?.toJSDate())) || false,\n [isYearEnabled],\n );\n\n const inputValues = useMemo(() => {\n if (value && controlledStateRef.current === CONTROLLED) {\n const valueAsUTCDateTime = utcDateTimeFromIsoString(value);\n\n if (isValidDateTime(valueAsUTCDateTime)) {\n return {\n value: valueAsUTCDateTime,\n };\n }\n }\n\n if (defaultValue) {\n const defaultValueAsUTCDateTime = utcDateTimeFromIsoString(defaultValue);\n\n if (isValidDateTime(defaultValueAsUTCDateTime)) {\n return {\n defaultValue: defaultValueAsUTCDateTime,\n };\n }\n }\n\n return null;\n }, [defaultValue, value]);\n\n const onTimeZoneChange = useCallback(\n (timeZone: string | undefined) => {\n if (timeZone && isValidTimeZone(timeZone)) {\n setInternalTimeZone(timeZone);\n }\n },\n [isValidTimeZone, setInternalTimeZone],\n );\n\n const toggleCalendarVisibility = useCallback(\n () => setIsOpen(!isOpen),\n [isOpen, setIsOpen],\n );\n\n const closeCalendar = useCallback(() => {\n setIsOpen(false);\n }, [setIsOpen]);\n\n const formatDayOfWeek = (date: DateTime) => date.toFormat(\"EEE\");\n\n const onInputChange = useCallback<(value: string) => void>(\n (value) => {\n onInputChangeProp?.(value);\n },\n [onInputChangeProp],\n );\n\n const commonIcons = {\n ArrowLeftIcon: ArrowLeftIcon,\n ArrowRightIcon: ArrowRightIcon,\n CalendarIcon: CalendarIcon,\n ChevronDownIcon: ChevronDownIcon,\n };\n\n return {\n closeCalendar,\n commonIcons,\n defaultedLanguageCode,\n formatDateTimeToUtcIsoDateString,\n formatDayOfWeek,\n inputValues,\n internalTimeZone,\n internalValueRef,\n isOpen,\n isValidTimeZone,\n localeText,\n maxDate: validationDateRanges.maxDate,\n minDate: validationDateRanges.minDate,\n popperElement,\n onInputChange,\n onTimeZoneChange,\n setInternalTimeZone,\n setIsOpen,\n setPopperElement,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n toggleCalendarVisibility,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -10,8 +10,9 @@ var _DialogContent2 = _interopRequireDefault(require("@mui/material/DialogConten
10
10
  var _DialogTitle2 = _interopRequireDefault(require("@mui/material/DialogTitle"));
11
11
  var _DialogContentText2 = _interopRequireDefault(require("@mui/material/DialogContentText"));
12
12
  var _react = require("react");
13
- var _reactI18next = require("react-i18next");
14
13
  var _index = require("./Buttons/index.cjs");
14
+ var _FullScreenOverlay = require("./FullScreenOverlay.cjs");
15
+ var _i18n = require("./i18n.generated/i18n.cjs");
15
16
  var _index2 = require("./icons.generated/index.cjs");
16
17
  var _useUniqueId = require("./useUniqueId.cjs");
17
18
  var _jsxRuntime = require("react/jsx-runtime");
@@ -44,7 +45,7 @@ const Dialog = ({
44
45
  }) => {
45
46
  const {
46
47
  t
47
- } = (0, _reactI18next.useTranslation)();
48
+ } = (0, _i18n.useTranslation)();
48
49
  const [isContentScrollable, setIsContentScrollable] = (0, _react.useState)(false);
49
50
  const dialogContentRef = (0, _react.useRef)(null);
50
51
  const dialogTitleId = (0, _useUniqueId.useUniqueId)();
@@ -71,36 +72,38 @@ const Dialog = ({
71
72
  }) : children;
72
73
  const actionButtons = [tertiaryCallToActionComponent || callToActionLastComponent, secondaryCallToActionComponent || callToActionSecondComponent, primaryCallToActionComponent || callToActionFirstComponent].filter(Boolean);
73
74
  const handleCloseButtonClick = (0, _react.useCallback)(event => onClose(event, "closeButtonClick"), [onClose]);
74
- return (0, _jsxRuntime.jsxs)(_Dialog2.default, {
75
- "aria-labelledby": dialogLabelId,
76
- "data-se": testId,
77
- onClose: onClose,
78
- open: isOpen,
79
- children: [(0, _jsxRuntime.jsxs)(_DialogTitle2.default, {
80
- id: dialogTitleId,
81
- translate: translate,
82
- children: [(0, _jsxRuntime.jsx)("span", {
83
- id: dialogLabelId,
84
- children: title
85
- }), (0, _jsxRuntime.jsx)(_index.Button, {
86
- ariaLabel: t("close.text"),
87
- onClick: handleCloseButtonClick,
88
- size: "small",
89
- startIcon: (0, _jsxRuntime.jsx)(_index2.CloseIcon, {}),
90
- variant: "floating"
75
+ return (0, _jsxRuntime.jsx)(_FullScreenOverlay.FullScreenOverlay, {
76
+ children: (0, _jsxRuntime.jsxs)(_Dialog2.default, {
77
+ "aria-labelledby": dialogLabelId,
78
+ "data-se": testId,
79
+ onClose: onClose,
80
+ open: isOpen,
81
+ children: [(0, _jsxRuntime.jsxs)(_DialogTitle2.default, {
82
+ id: dialogTitleId,
83
+ translate: translate,
84
+ children: [(0, _jsxRuntime.jsx)("span", {
85
+ id: dialogLabelId,
86
+ children: title
87
+ }), (0, _jsxRuntime.jsx)(_index.Button, {
88
+ ariaLabel: t("close.text"),
89
+ onClick: handleCloseButtonClick,
90
+ size: "small",
91
+ startIcon: (0, _jsxRuntime.jsx)(_index2.CloseIcon, {}),
92
+ variant: "floating"
93
+ })]
94
+ }), (0, _jsxRuntime.jsx)(_DialogContent2.default, {
95
+ ...(isContentScrollable && {
96
+ tabIndex: 0
97
+ }),
98
+ dividers: isContentScrollable,
99
+ ref: dialogContentRef,
100
+ children: content
101
+ }), actionButtons.length > 0 && (0, _jsxRuntime.jsx)(_DialogActions2.default, {
102
+ children: actionButtons.map((actionButton, index) => actionButton ? (0, _react.cloneElement)(actionButton, {
103
+ key: index
104
+ }) : null)
91
105
  })]
92
- }), (0, _jsxRuntime.jsx)(_DialogContent2.default, {
93
- ...(isContentScrollable && {
94
- tabIndex: 0
95
- }),
96
- dividers: isContentScrollable,
97
- ref: dialogContentRef,
98
- children: content
99
- }), actionButtons.length > 0 && (0, _jsxRuntime.jsx)(_DialogActions2.default, {
100
- children: actionButtons.map((actionButton, index) => actionButton ? (0, _react.cloneElement)(actionButton, {
101
- key: index
102
- }) : null)
103
- })]
106
+ })
104
107
  });
105
108
  };
106
109
  const MemoizedDialog = exports.Dialog = (0, _react.memo)(Dialog);
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.cjs","names":["_react","require","_reactI18next","_index","_index2","_useUniqueId","_jsxRuntime","_interopRequireDefault","e","__esModule","default","Dialog","primaryCallToActionComponent","secondaryCallToActionComponent","tertiaryCallToActionComponent","callToActionFirstComponent","callToActionSecondComponent","callToActionLastComponent","children","isOpen","onClose","testId","title","translate","t","useTranslation","isContentScrollable","setIsContentScrollable","useState","dialogContentRef","useRef","dialogTitleId","useUniqueId","dialogLabelId","useEffect","frameId","handleContentScroll","dialogContentElement","current","cancelAnimationFrame","scrollHeight","clientHeight","requestAnimationFrame","content","jsx","_DialogContentText2","actionButtons","filter","Boolean","handleCloseButtonClick","useCallback","event","jsxs","_Dialog2","open","_DialogTitle2","id","Button","ariaLabel","onClick","size","startIcon","CloseIcon","variant","_DialogContent2","tabIndex","dividers","ref","length","_DialogActions2","map","actionButton","index","cloneElement","key","MemoizedDialog","exports","memo","displayName"],"sources":["../../src/Dialog.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 {\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n Dialog as MuiDialog,\n DialogProps as MuiDialogProps,\n} from \"@mui/material\";\nimport {\n cloneElement,\n memo,\n ReactElement,\n ReactNode,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { Button, ButtonProps } from \"./Buttons/index.js\";\nimport { CloseIcon } from \"./icons.generated/index.js\";\nimport { useUniqueId } from \"./useUniqueId.js\";\n\ntype MuiOnCloseEvent = Parameters<Required<MuiDialogProps>[\"onClose\"]>[0];\ntype MuiOnCloseReason = Parameters<Required<MuiDialogProps>[\"onClose\"]>[1];\nexport type DialogOnCloseReason = MuiOnCloseReason | \"closeButtonClick\";\n\nexport type DialogProps = {\n /**\n * @deprecated `aria-label` for close button comes from translation file\n */\n ariaLabel?: string;\n\n /**\n * @deprecated Will be removed in a future Odyssey version. Use `primaryCallToActionComponent` instead.\n */\n callToActionFirstComponent?: ReactElement<typeof Button>;\n /**\n * @deprecated Will be removed in a future Odyssey version. Use `tertiaryCallToActionComponent` instead.\n */\n callToActionLastComponent?: ReactElement<typeof Button>;\n /**\n * @deprecated Will be removed in a future Odyssey version. Use `secondaryCallToActionComponent` instead.\n */\n callToActionSecondComponent?: ReactElement<typeof Button>;\n /**\n * The content of the Dialog. May be a `string` or any other `ReactNode` or array of `ReactNode`s.\n */\n children: ReactNode;\n /**\n * When set to `true`, the Dialog will be visible.\n */\n isOpen: boolean;\n /**\n * Callback that controls what happens when the Dialog is dismissed.\n */\n onClose: (event: MuiOnCloseEvent, reason: DialogOnCloseReason) => void;\n /**\n * An optional Button object to be situated in the Dialog footer as the primary call to action.\n */\n primaryCallToActionComponent?: ReactElement<typeof Button>;\n\n /**\n * An optional Button object to be situated in the Dialog footer as the secondary call to action, alongside the `primaryCallToActionComponent`.\n */\n secondaryCallToActionComponent?: ReactElement<typeof Button>;\n\n /**\n * An optional Button object to be situated in the Dialog footer as the tertiary call to action, alongside the other `callToAction` components.\n */\n tertiaryCallToActionComponent?: ReactElement<typeof Button>;\n\n /**\n * The title of the Dialog.\n */\n title: string;\n} & Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst Dialog = ({\n primaryCallToActionComponent,\n secondaryCallToActionComponent,\n tertiaryCallToActionComponent,\n callToActionFirstComponent,\n callToActionSecondComponent,\n callToActionLastComponent,\n children,\n isOpen,\n onClose,\n testId,\n title,\n translate,\n}: DialogProps) => {\n const { t } = useTranslation();\n const [isContentScrollable, setIsContentScrollable] = useState(false);\n const dialogContentRef = useRef<HTMLDivElement>(null);\n const dialogTitleId = useUniqueId();\n const dialogLabelId = useUniqueId();\n\n useEffect(() => {\n let frameId: number;\n\n const handleContentScroll = () => {\n const dialogContentElement = dialogContentRef.current;\n if (dialogContentElement) {\n cancelAnimationFrame(frameId);\n setIsContentScrollable(\n dialogContentElement.scrollHeight > dialogContentElement.clientHeight,\n );\n }\n frameId = requestAnimationFrame(handleContentScroll);\n };\n\n if (isOpen) {\n frameId = requestAnimationFrame(handleContentScroll);\n }\n\n return () => {\n cancelAnimationFrame(frameId);\n };\n }, [isOpen]);\n\n const content =\n typeof children === \"string\" ? (\n <DialogContentText>{children}</DialogContentText>\n ) : (\n children\n );\n\n // Prioritize new action button format (|| used as a fallback)\n const actionButtons = [\n tertiaryCallToActionComponent || callToActionLastComponent,\n secondaryCallToActionComponent || callToActionSecondComponent,\n primaryCallToActionComponent || callToActionFirstComponent,\n ].filter(Boolean);\n\n const handleCloseButtonClick = useCallback<\n NonNullable<ButtonProps[\"onClick\"]>\n >((event) => onClose(event, \"closeButtonClick\"), [onClose]);\n\n return (\n <MuiDialog\n aria-labelledby={dialogLabelId}\n data-se={testId}\n onClose={onClose}\n open={isOpen}\n >\n <DialogTitle\n id={dialogTitleId} // We need to explicitly unset `id` for MUI to automatically set it based on the `aria-labelledby` prop passed to `MuiDialog`\n translate={translate}\n >\n <span id={dialogLabelId}>{title}</span>\n <Button\n ariaLabel={t(\"close.text\")}\n onClick={handleCloseButtonClick}\n size=\"small\"\n startIcon={<CloseIcon />}\n variant=\"floating\"\n />\n </DialogTitle>\n <DialogContent\n {...(isContentScrollable && {\n // Sets tabIndex on content element if scrollable so content is easier to navigate with the keyboard\n tabIndex: 0,\n })}\n dividers={isContentScrollable}\n ref={dialogContentRef}\n >\n {content}\n </DialogContent>\n\n {actionButtons.length > 0 && (\n <DialogActions>\n {actionButtons.map((actionButton, index) =>\n actionButton ? cloneElement(actionButton, { key: index }) : null,\n )}\n </DialogActions>\n )}\n </MuiDialog>\n );\n};\n\nconst MemoizedDialog = memo(Dialog);\nMemoizedDialog.displayName = \"Dialog\";\n\nexport { MemoizedDialog as Dialog };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Dialog.cjs","names":["_react","require","_index","_FullScreenOverlay","_i18n","_index2","_useUniqueId","_jsxRuntime","_interopRequireDefault","e","__esModule","default","Dialog","primaryCallToActionComponent","secondaryCallToActionComponent","tertiaryCallToActionComponent","callToActionFirstComponent","callToActionSecondComponent","callToActionLastComponent","children","isOpen","onClose","testId","title","translate","t","useTranslation","isContentScrollable","setIsContentScrollable","useState","dialogContentRef","useRef","dialogTitleId","useUniqueId","dialogLabelId","useEffect","frameId","handleContentScroll","dialogContentElement","current","cancelAnimationFrame","scrollHeight","clientHeight","requestAnimationFrame","content","jsx","_DialogContentText2","actionButtons","filter","Boolean","handleCloseButtonClick","useCallback","event","FullScreenOverlay","jsxs","_Dialog2","open","_DialogTitle2","id","Button","ariaLabel","onClick","size","startIcon","CloseIcon","variant","_DialogContent2","tabIndex","dividers","ref","length","_DialogActions2","map","actionButton","index","cloneElement","key","MemoizedDialog","exports","memo","displayName"],"sources":["../../src/Dialog.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 {\n Dialog as MuiDialog,\n DialogActions as MuiDialogActions,\n DialogContent as MuiDialogContent,\n DialogContentText as MuiDialogContentText,\n DialogProps as MuiDialogProps,\n DialogTitle as MuiDialogTitle,\n} from \"@mui/material\";\nimport {\n cloneElement,\n memo,\n ReactElement,\n ReactNode,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nimport { Button, ButtonProps } from \"./Buttons/index.js\";\nimport { FullScreenOverlay } from \"./FullScreenOverlay.js\";\nimport { useTranslation } from \"./i18n.generated/i18n.js\";\nimport { CloseIcon } from \"./icons.generated/index.js\";\nimport { useUniqueId } from \"./useUniqueId.js\";\n\ntype MuiOnCloseEvent = Parameters<Required<MuiDialogProps>[\"onClose\"]>[0];\ntype MuiOnCloseReason = Parameters<Required<MuiDialogProps>[\"onClose\"]>[1];\nexport type DialogOnCloseReason = MuiOnCloseReason | \"closeButtonClick\";\n\nexport type DialogProps = {\n /**\n * @deprecated `aria-label` for close button comes from translation file\n */\n ariaLabel?: string;\n\n /**\n * @deprecated Will be removed in a future Odyssey version. Use `primaryCallToActionComponent` instead.\n */\n callToActionFirstComponent?: ReactElement<typeof Button>;\n /**\n * @deprecated Will be removed in a future Odyssey version. Use `tertiaryCallToActionComponent` instead.\n */\n callToActionLastComponent?: ReactElement<typeof Button>;\n /**\n * @deprecated Will be removed in a future Odyssey version. Use `secondaryCallToActionComponent` instead.\n */\n callToActionSecondComponent?: ReactElement<typeof Button>;\n /**\n * The content of the Dialog. May be a `string` or any other `ReactNode` or array of `ReactNode`s.\n */\n children: ReactNode;\n /**\n * When set to `true`, the Dialog will be visible.\n */\n isOpen: boolean;\n /**\n * Callback that controls what happens when the Dialog is dismissed.\n */\n onClose: (event: MuiOnCloseEvent, reason: DialogOnCloseReason) => void;\n /**\n * An optional Button object to be situated in the Dialog footer as the primary call to action.\n */\n primaryCallToActionComponent?: ReactElement<typeof Button>;\n\n /**\n * An optional Button object to be situated in the Dialog footer as the secondary call to action, alongside the `primaryCallToActionComponent`.\n */\n secondaryCallToActionComponent?: ReactElement<typeof Button>;\n\n /**\n * An optional Button object to be situated in the Dialog footer as the tertiary call to action, alongside the other `callToAction` components.\n */\n tertiaryCallToActionComponent?: ReactElement<typeof Button>;\n\n /**\n * The title of the Dialog.\n */\n title: string;\n} & Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst Dialog = ({\n primaryCallToActionComponent,\n secondaryCallToActionComponent,\n tertiaryCallToActionComponent,\n callToActionFirstComponent,\n callToActionSecondComponent,\n callToActionLastComponent,\n children,\n isOpen,\n onClose,\n testId,\n title,\n translate,\n}: DialogProps) => {\n const { t } = useTranslation();\n const [isContentScrollable, setIsContentScrollable] = useState(false);\n const dialogContentRef = useRef<HTMLDivElement>(null);\n const dialogTitleId = useUniqueId();\n const dialogLabelId = useUniqueId();\n\n useEffect(() => {\n let frameId: number;\n\n const handleContentScroll = () => {\n const dialogContentElement = dialogContentRef.current;\n if (dialogContentElement) {\n cancelAnimationFrame(frameId);\n setIsContentScrollable(\n dialogContentElement.scrollHeight > dialogContentElement.clientHeight,\n );\n }\n frameId = requestAnimationFrame(handleContentScroll);\n };\n\n if (isOpen) {\n frameId = requestAnimationFrame(handleContentScroll);\n }\n\n return () => {\n cancelAnimationFrame(frameId);\n };\n }, [isOpen]);\n\n const content =\n typeof children === \"string\" ? (\n <MuiDialogContentText>{children}</MuiDialogContentText>\n ) : (\n children\n );\n\n // Prioritize new action button format (|| used as a fallback)\n const actionButtons = [\n tertiaryCallToActionComponent || callToActionLastComponent,\n secondaryCallToActionComponent || callToActionSecondComponent,\n primaryCallToActionComponent || callToActionFirstComponent,\n ].filter(Boolean);\n\n const handleCloseButtonClick = useCallback<\n NonNullable<ButtonProps[\"onClick\"]>\n >((event) => onClose(event, \"closeButtonClick\"), [onClose]);\n\n return (\n <FullScreenOverlay>\n <MuiDialog\n aria-labelledby={dialogLabelId}\n data-se={testId}\n onClose={onClose}\n open={isOpen}\n >\n <MuiDialogTitle\n id={dialogTitleId} // We need to explicitly unset `id` for MUI to automatically set it based on the `aria-labelledby` prop passed to `MuiDialog`\n translate={translate}\n >\n <span id={dialogLabelId}>{title}</span>\n <Button\n ariaLabel={t(\"close.text\")}\n onClick={handleCloseButtonClick}\n size=\"small\"\n startIcon={<CloseIcon />}\n variant=\"floating\"\n />\n </MuiDialogTitle>\n\n <MuiDialogContent\n {...(isContentScrollable && {\n // Sets tabIndex on content element if scrollable so content is easier to navigate with the keyboard\n tabIndex: 0,\n })}\n dividers={isContentScrollable}\n ref={dialogContentRef}\n >\n {content}\n </MuiDialogContent>\n\n {actionButtons.length > 0 && (\n <MuiDialogActions>\n {actionButtons.map((actionButton, index) =>\n actionButton ? cloneElement(actionButton, { key: index }) : null,\n )}\n </MuiDialogActions>\n )}\n </MuiDialog>\n </FullScreenOverlay>\n );\n};\n\nconst MemoizedDialog = memo(Dialog);\nMemoizedDialog.displayName = \"Dialog\";\n\nexport { MemoizedDialog as Dialog };\n"],"mappings":"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","ignoreList":[]}
@@ -7,8 +7,9 @@ exports.variantValues = exports.Drawer = void 0;
7
7
  var _Drawer2 = _interopRequireDefault(require("@mui/material/Drawer"));
8
8
  var _styled = _interopRequireDefault(require("@emotion/styled"));
9
9
  var _react = require("react");
10
- var _reactI18next = require("react-i18next");
11
10
  var _index = require("./Buttons/index.cjs");
11
+ var _FullScreenOverlay = require("./FullScreenOverlay.cjs");
12
+ var _i18n = require("./i18n.generated/i18n.cjs");
12
13
  var _index2 = require("./icons.generated/index.cjs");
13
14
  var _OdysseyDesignTokensContext = require("./OdysseyDesignTokensContext.cjs");
14
15
  var _Typography = require("./Typography.cjs");
@@ -107,7 +108,7 @@ const Drawer = ({
107
108
  const hasDividers = hasDividersProp || showDividers;
108
109
  const {
109
110
  i18n
110
- } = (0, _reactI18next.useTranslation)();
111
+ } = (0, _i18n.useTranslation)();
111
112
  const anchorDirection = i18n.dir() === "rtl" ? "left" : "right";
112
113
  (0, _react.useEffect)(() => {
113
114
  let frameId;
@@ -131,7 +132,7 @@ const Drawer = ({
131
132
  }, [hasDividers, isContentScrollable]);
132
133
  const hasFooter = (0, _react.useMemo)(() => primaryCallToActionComponent || secondaryCallToActionComponent || tertiaryCallToActionComponent, [primaryCallToActionComponent, secondaryCallToActionComponent, tertiaryCallToActionComponent]);
133
134
  const handleCloseButtonClick = (0, _react.useCallback)(event => onClose(event, "closeButtonClick"), [onClose]);
134
- return (0, _jsxRuntime.jsxs)(_Drawer2.default, {
135
+ const muiDrawerComponent = (0, _react.useMemo)(() => (0, _jsxRuntime.jsxs)(_Drawer2.default, {
135
136
  anchor: anchorDirection,
136
137
  "data-se": testId,
137
138
  onClose: onClose,
@@ -173,7 +174,10 @@ const Drawer = ({
173
174
  odysseyDesignTokens: odysseyDesignTokens,
174
175
  children: [tertiaryCallToActionComponent, secondaryCallToActionComponent, primaryCallToActionComponent]
175
176
  })]
176
- });
177
+ }), [anchorDirection, ariaLabel, children, dividersVisible, handleCloseButtonClick, hasFooter, isContentScrollable, isOpen, odysseyDesignTokens, onClose, primaryCallToActionComponent, secondaryCallToActionComponent, tertiaryCallToActionComponent, testId, title, translate, variant]);
178
+ return variant === "temporary" ? (0, _jsxRuntime.jsx)(_FullScreenOverlay.FullScreenOverlay, {
179
+ children: muiDrawerComponent
180
+ }) : muiDrawerComponent;
177
181
  };
178
182
  const MemoizedDrawer = exports.Drawer = (0, _react.memo)(Drawer);
179
183
  MemoizedDrawer.displayName = "Drawer";