@okta/odyssey-react-mui 1.25.0 → 1.27.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 (512) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/Autocomplete.js +30 -191
  3. package/dist/Autocomplete.js.map +1 -1
  4. package/dist/Box.js +2 -0
  5. package/dist/Box.js.map +1 -1
  6. package/dist/Card.js +1 -0
  7. package/dist/Card.js.map +1 -1
  8. package/dist/OdysseyDesignTokensContext.js +3 -2
  9. package/dist/OdysseyDesignTokensContext.js.map +1 -1
  10. package/dist/OdysseyProvider.js +9 -7
  11. package/dist/OdysseyProvider.js.map +1 -1
  12. package/dist/OdysseyThemeProvider.js +33 -13
  13. package/dist/OdysseyThemeProvider.js.map +1 -1
  14. package/dist/Pagination/Pagination.js +46 -14
  15. package/dist/Pagination/Pagination.js.map +1 -1
  16. package/dist/Surface.js +14 -3
  17. package/dist/Surface.js.map +1 -1
  18. package/dist/Tag.js +42 -27
  19. package/dist/Tag.js.map +1 -1
  20. package/dist/index.js +6 -7
  21. package/dist/index.js.map +1 -1
  22. package/dist/index.scss +1 -1
  23. package/dist/labs/AppTile.js +137 -39
  24. package/dist/labs/AppTile.js.map +1 -1
  25. package/dist/labs/DataView/CardLayoutContent.js +7 -8
  26. package/dist/labs/DataView/CardLayoutContent.js.map +1 -1
  27. package/dist/labs/DataView/DataCard.js +96 -43
  28. package/dist/labs/DataView/DataCard.js.map +1 -1
  29. package/dist/labs/DataView/DataView.js +6 -0
  30. package/dist/labs/DataView/DataView.js.map +1 -1
  31. package/dist/labs/DataView/TableLayoutContent.js +3 -2
  32. package/dist/labs/DataView/TableLayoutContent.js.map +1 -1
  33. package/dist/labs/DataView/componentTypes.js.map +1 -1
  34. package/dist/labs/DataView/index.js.map +1 -1
  35. package/dist/labs/OdysseyPickers/ComposablePicker.js +113 -0
  36. package/dist/labs/OdysseyPickers/ComposablePicker.js.map +1 -0
  37. package/dist/labs/OdysseyPickers/Picker.js +261 -0
  38. package/dist/labs/OdysseyPickers/Picker.js.map +1 -0
  39. package/dist/labs/OdysseyPickers/PickerVirtualizationListBox.js +132 -0
  40. package/dist/labs/OdysseyPickers/PickerVirtualizationListBox.js.map +1 -0
  41. package/dist/labs/OdysseyPickers/PickerWithOptionAdornment.js +291 -0
  42. package/dist/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -0
  43. package/dist/{src/createShadowDomElements.d.ts → labs/OdysseyPickers/index.js} +4 -7
  44. package/dist/labs/OdysseyPickers/index.js.map +1 -0
  45. package/dist/labs/PageTemplate.js +14 -10
  46. package/dist/labs/PageTemplate.js.map +1 -1
  47. package/dist/labs/SideNav/CollapseIcon.js +11 -25
  48. package/dist/labs/SideNav/CollapseIcon.js.map +1 -1
  49. package/dist/labs/SideNav/HandleIcon.js +32 -0
  50. package/dist/labs/SideNav/HandleIcon.js.map +1 -0
  51. package/dist/labs/{NavAccordion.js → SideNav/NavAccordion.js} +36 -8
  52. package/dist/labs/SideNav/NavAccordion.js.map +1 -0
  53. package/dist/labs/SideNav/OktaAura.js +32 -0
  54. package/dist/labs/SideNav/OktaAura.js.map +1 -0
  55. package/dist/labs/SideNav/OktaLogo.js +6 -9
  56. package/dist/labs/SideNav/OktaLogo.js.map +1 -1
  57. package/dist/labs/SideNav/SideNav.js +316 -172
  58. package/dist/labs/SideNav/SideNav.js.map +1 -1
  59. package/dist/labs/SideNav/SideNavFooterContent.js +32 -18
  60. package/dist/labs/SideNav/SideNavFooterContent.js.map +1 -1
  61. package/dist/labs/SideNav/SideNavHeader.js +48 -37
  62. package/dist/labs/SideNav/SideNavHeader.js.map +1 -1
  63. package/dist/labs/SideNav/SideNavItemContent.js +150 -68
  64. package/dist/labs/SideNav/SideNavItemContent.js.map +1 -1
  65. package/dist/labs/SideNav/SideNavItemContentContext.js +20 -0
  66. package/dist/labs/SideNav/SideNavItemContentContext.js.map +1 -0
  67. package/dist/labs/SideNav/SideNavItemLinkContent.js +15 -14
  68. package/dist/labs/SideNav/SideNavItemLinkContent.js.map +1 -1
  69. package/dist/labs/SideNav/SideNavLogo.js +42 -0
  70. package/dist/labs/SideNav/SideNavLogo.js.map +1 -0
  71. package/dist/labs/SideNav/SideNavToggleButton.js +170 -0
  72. package/dist/labs/SideNav/SideNavToggleButton.js.map +1 -0
  73. package/dist/labs/SideNav/SortableList/SortableItem.js +162 -0
  74. package/dist/labs/SideNav/SortableList/SortableItem.js.map +1 -0
  75. package/dist/labs/SideNav/SortableList/SortableList.js +118 -0
  76. package/dist/labs/SideNav/SortableList/SortableList.js.map +1 -0
  77. package/dist/labs/SideNav/SortableList/SortableOverlay.js +30 -0
  78. package/dist/labs/SideNav/SortableList/SortableOverlay.js.map +1 -0
  79. package/dist/labs/SideNav/types.js.map +1 -1
  80. package/dist/labs/TopNav/TopNav.js +65 -0
  81. package/dist/labs/TopNav/TopNav.js.map +1 -0
  82. package/dist/labs/TopNav/TopNavLinksList.js +38 -0
  83. package/dist/labs/TopNav/TopNavLinksList.js.map +1 -0
  84. package/dist/labs/TopNav/TopNavListItem.js +132 -0
  85. package/dist/labs/TopNav/TopNavListItem.js.map +1 -0
  86. package/dist/labs/TopNav/UserProfile.js +65 -0
  87. package/dist/labs/TopNav/UserProfile.js.map +1 -0
  88. package/dist/labs/TopNav/index.js +14 -0
  89. package/dist/labs/TopNav/index.js.map +1 -0
  90. package/dist/labs/UiShell/UiShell.js +68 -0
  91. package/dist/labs/UiShell/UiShell.js.map +1 -0
  92. package/dist/labs/UiShell/UiShellContent.js +114 -0
  93. package/dist/labs/UiShell/UiShellContent.js.map +1 -0
  94. package/dist/labs/UiShell/bufferLatest.js +37 -0
  95. package/dist/labs/UiShell/bufferLatest.js.map +1 -0
  96. package/dist/labs/UiShell/createMessageBus.js +30 -0
  97. package/dist/labs/UiShell/createMessageBus.js.map +1 -0
  98. package/dist/labs/UiShell/createStore.js +24 -0
  99. package/dist/labs/UiShell/createStore.js.map +1 -0
  100. package/dist/labs/UiShell/index.js +15 -0
  101. package/dist/labs/UiShell/index.js.map +1 -0
  102. package/dist/labs/UiShell/renderUiShell.js +78 -0
  103. package/dist/labs/UiShell/renderUiShell.js.map +1 -0
  104. package/dist/labs/UiShell/useHasUiShell.js +22 -0
  105. package/dist/labs/UiShell/useHasUiShell.js.map +1 -0
  106. package/dist/labs/UiShell/useScrollState.js +41 -0
  107. package/dist/labs/UiShell/useScrollState.js.map +1 -0
  108. package/dist/labs/index.js +5 -3
  109. package/dist/labs/index.js.map +1 -1
  110. package/dist/properties/ts/odyssey-react-mui.js +14 -1
  111. package/dist/properties/ts/odyssey-react-mui.js.map +1 -1
  112. package/dist/properties/ts/odyssey-react-mui_cs.js +3 -1
  113. package/dist/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  114. package/dist/properties/ts/odyssey-react-mui_da.js +3 -1
  115. package/dist/properties/ts/odyssey-react-mui_da.js.map +1 -1
  116. package/dist/properties/ts/odyssey-react-mui_de.js +3 -1
  117. package/dist/properties/ts/odyssey-react-mui_de.js.map +1 -1
  118. package/dist/properties/ts/odyssey-react-mui_el.js +3 -1
  119. package/dist/properties/ts/odyssey-react-mui_el.js.map +1 -1
  120. package/dist/properties/ts/odyssey-react-mui_es.js +3 -1
  121. package/dist/properties/ts/odyssey-react-mui_es.js.map +1 -1
  122. package/dist/properties/ts/odyssey-react-mui_fi.js +3 -1
  123. package/dist/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  124. package/dist/properties/ts/odyssey-react-mui_fr.js +5 -3
  125. package/dist/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  126. package/dist/properties/ts/odyssey-react-mui_ht.js +3 -1
  127. package/dist/properties/ts/odyssey-react-mui_ht.js.map +1 -1
  128. package/dist/properties/ts/odyssey-react-mui_hu.js +3 -1
  129. package/dist/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  130. package/dist/properties/ts/odyssey-react-mui_id.js +3 -1
  131. package/dist/properties/ts/odyssey-react-mui_id.js.map +1 -1
  132. package/dist/properties/ts/odyssey-react-mui_it.js +4 -2
  133. package/dist/properties/ts/odyssey-react-mui_it.js.map +1 -1
  134. package/dist/properties/ts/odyssey-react-mui_ja.js +9 -7
  135. package/dist/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  136. package/dist/properties/ts/odyssey-react-mui_ko.js +3 -1
  137. package/dist/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  138. package/dist/properties/ts/odyssey-react-mui_ms.js +3 -1
  139. package/dist/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  140. package/dist/properties/ts/odyssey-react-mui_nb.js +3 -1
  141. package/dist/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  142. package/dist/properties/ts/odyssey-react-mui_nl_NL.js +3 -1
  143. package/dist/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  144. package/dist/properties/ts/odyssey-react-mui_pl.js +3 -1
  145. package/dist/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  146. package/dist/properties/ts/odyssey-react-mui_pt_BR.js +3 -1
  147. package/dist/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  148. package/dist/properties/ts/odyssey-react-mui_ro.js +3 -1
  149. package/dist/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  150. package/dist/properties/ts/odyssey-react-mui_ru.js +3 -1
  151. package/dist/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  152. package/dist/properties/ts/odyssey-react-mui_sv.js +3 -1
  153. package/dist/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  154. package/dist/properties/ts/odyssey-react-mui_th.js +3 -1
  155. package/dist/properties/ts/odyssey-react-mui_th.js.map +1 -1
  156. package/dist/properties/ts/odyssey-react-mui_tr.js +4 -2
  157. package/dist/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  158. package/dist/properties/ts/odyssey-react-mui_uk.js +3 -1
  159. package/dist/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  160. package/dist/properties/ts/odyssey-react-mui_vi.js +3 -1
  161. package/dist/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  162. package/dist/properties/ts/odyssey-react-mui_zh_CN.js +3 -1
  163. package/dist/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  164. package/dist/properties/ts/odyssey-react-mui_zh_TW.js +3 -1
  165. package/dist/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  166. package/dist/src/Autocomplete.d.ts +21 -22
  167. package/dist/src/Autocomplete.d.ts.map +1 -1
  168. package/dist/src/Box.d.ts +3 -1
  169. package/dist/src/Box.d.ts.map +1 -1
  170. package/dist/src/Card.d.ts.map +1 -1
  171. package/dist/src/OdysseyDesignTokensContext.d.ts +5 -4
  172. package/dist/src/OdysseyDesignTokensContext.d.ts.map +1 -1
  173. package/dist/src/OdysseyProvider.d.ts +3 -3
  174. package/dist/src/OdysseyProvider.d.ts.map +1 -1
  175. package/dist/src/OdysseyThemeProvider.d.ts +10 -12
  176. package/dist/src/OdysseyThemeProvider.d.ts.map +1 -1
  177. package/dist/src/OdysseyTranslationProvider.d.ts +1 -1
  178. package/dist/src/OdysseyTranslationProvider.d.ts.map +1 -1
  179. package/dist/src/Pagination/Pagination.d.ts +21 -7
  180. package/dist/src/Pagination/Pagination.d.ts.map +1 -1
  181. package/dist/src/Surface.d.ts.map +1 -1
  182. package/dist/src/Tag.d.ts +5 -2
  183. package/dist/src/Tag.d.ts.map +1 -1
  184. package/dist/src/index.d.ts +6 -7
  185. package/dist/src/index.d.ts.map +1 -1
  186. package/dist/src/labs/AppTile.d.ts +3 -1
  187. package/dist/src/labs/AppTile.d.ts.map +1 -1
  188. package/dist/src/labs/DataView/CardLayoutContent.d.ts.map +1 -1
  189. package/dist/src/labs/DataView/DataCard.d.ts +9 -3
  190. package/dist/src/labs/DataView/DataCard.d.ts.map +1 -1
  191. package/dist/src/labs/DataView/DataView.d.ts +1 -1
  192. package/dist/src/labs/DataView/DataView.d.ts.map +1 -1
  193. package/dist/src/labs/DataView/TableLayoutContent.d.ts.map +1 -1
  194. package/dist/src/labs/DataView/componentTypes.d.ts +4 -3
  195. package/dist/src/labs/DataView/componentTypes.d.ts.map +1 -1
  196. package/dist/src/labs/DataView/index.d.ts +1 -0
  197. package/dist/src/labs/DataView/index.d.ts.map +1 -1
  198. package/dist/src/labs/OdysseyPickers/ComposablePicker.d.ts +33 -0
  199. package/dist/src/labs/OdysseyPickers/ComposablePicker.d.ts.map +1 -0
  200. package/dist/src/labs/OdysseyPickers/Picker.d.ts +98 -0
  201. package/dist/src/labs/OdysseyPickers/Picker.d.ts.map +1 -0
  202. package/dist/src/labs/OdysseyPickers/PickerVirtualizationListBox.d.ts +17 -0
  203. package/dist/src/labs/OdysseyPickers/PickerVirtualizationListBox.d.ts.map +1 -0
  204. package/dist/src/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts +26 -0
  205. package/dist/src/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts.map +1 -0
  206. package/dist/src/labs/OdysseyPickers/index.d.ts +15 -0
  207. package/dist/src/labs/OdysseyPickers/index.d.ts.map +1 -0
  208. package/dist/src/labs/PageTemplate.d.ts +1 -1
  209. package/dist/src/labs/PageTemplate.d.ts.map +1 -1
  210. package/dist/src/labs/SideNav/CollapseIcon.d.ts +1 -4
  211. package/dist/src/labs/SideNav/CollapseIcon.d.ts.map +1 -1
  212. package/dist/src/labs/SideNav/HandleIcon.d.ts +14 -0
  213. package/dist/src/labs/SideNav/HandleIcon.d.ts.map +1 -0
  214. package/dist/src/labs/{NavAccordion.d.ts → SideNav/NavAccordion.d.ts} +7 -7
  215. package/dist/src/labs/SideNav/NavAccordion.d.ts.map +1 -0
  216. package/dist/src/labs/SideNav/OktaAura.d.ts +14 -0
  217. package/dist/src/labs/SideNav/OktaAura.d.ts.map +1 -0
  218. package/dist/src/labs/SideNav/OktaLogo.d.ts.map +1 -1
  219. package/dist/src/labs/SideNav/SideNav.d.ts +2 -1
  220. package/dist/src/labs/SideNav/SideNav.d.ts.map +1 -1
  221. package/dist/src/labs/SideNav/SideNavFooterContent.d.ts +1 -1
  222. package/dist/src/labs/SideNav/SideNavFooterContent.d.ts.map +1 -1
  223. package/dist/src/labs/SideNav/SideNavHeader.d.ts +12 -3
  224. package/dist/src/labs/SideNav/SideNavHeader.d.ts.map +1 -1
  225. package/dist/src/labs/SideNav/SideNavItemContent.d.ts +38 -3
  226. package/dist/src/labs/SideNav/SideNavItemContent.d.ts.map +1 -1
  227. package/dist/src/labs/SideNav/SideNavItemContentContext.d.ts +19 -0
  228. package/dist/src/labs/SideNav/SideNavItemContentContext.d.ts.map +1 -0
  229. package/dist/src/labs/SideNav/SideNavItemLinkContent.d.ts +1 -1
  230. package/dist/src/labs/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
  231. package/dist/src/labs/SideNav/SideNavLogo.d.ts +15 -0
  232. package/dist/src/labs/SideNav/SideNavLogo.d.ts.map +1 -0
  233. package/dist/src/labs/SideNav/SideNavToggleButton.d.ts +38 -0
  234. package/dist/src/labs/SideNav/SideNavToggleButton.d.ts.map +1 -0
  235. package/dist/src/labs/SideNav/SortableList/SortableItem.d.ts +26 -0
  236. package/dist/src/labs/SideNav/SortableList/SortableItem.d.ts.map +1 -0
  237. package/dist/src/labs/SideNav/SortableList/SortableList.d.ts +36 -0
  238. package/dist/src/labs/SideNav/SortableList/SortableList.d.ts.map +1 -0
  239. package/dist/src/labs/SideNav/SortableList/SortableOverlay.d.ts +17 -0
  240. package/dist/src/labs/SideNav/SortableList/SortableOverlay.d.ts.map +1 -0
  241. package/dist/src/labs/SideNav/types.d.ts +79 -35
  242. package/dist/src/labs/SideNav/types.d.ts.map +1 -1
  243. package/dist/src/labs/TopNav/TopNav.d.ts +31 -0
  244. package/dist/src/labs/TopNav/TopNav.d.ts.map +1 -0
  245. package/dist/src/labs/TopNav/TopNavLinksList.d.ts +44 -0
  246. package/dist/src/labs/TopNav/TopNavLinksList.d.ts.map +1 -0
  247. package/dist/src/labs/TopNav/TopNavListItem.d.ts +42 -0
  248. package/dist/src/labs/TopNav/TopNavListItem.d.ts.map +1 -0
  249. package/dist/src/labs/TopNav/UserProfile.d.ts +29 -0
  250. package/dist/src/labs/TopNav/UserProfile.d.ts.map +1 -0
  251. package/dist/src/labs/TopNav/index.d.ts +14 -0
  252. package/dist/src/labs/TopNav/index.d.ts.map +1 -0
  253. package/dist/src/labs/UiShell/UiShell.d.ts +33 -0
  254. package/dist/src/labs/UiShell/UiShell.d.ts.map +1 -0
  255. package/dist/src/labs/UiShell/UiShellContent.d.ts +47 -0
  256. package/dist/src/labs/UiShell/UiShellContent.d.ts.map +1 -0
  257. package/dist/src/labs/UiShell/bufferLatest.d.ts +31 -0
  258. package/dist/src/labs/UiShell/bufferLatest.d.ts.map +1 -0
  259. package/dist/src/labs/UiShell/createMessageBus.d.ts +24 -0
  260. package/dist/src/labs/UiShell/createMessageBus.d.ts.map +1 -0
  261. package/dist/src/labs/UiShell/createStore.d.ts +22 -0
  262. package/dist/src/labs/UiShell/createStore.d.ts.map +1 -0
  263. package/dist/src/labs/UiShell/index.d.ts +16 -0
  264. package/dist/src/labs/UiShell/index.d.ts.map +1 -0
  265. package/dist/src/labs/UiShell/renderUiShell.d.ts +45 -0
  266. package/dist/src/labs/UiShell/renderUiShell.d.ts.map +1 -0
  267. package/dist/src/labs/UiShell/useHasUiShell.d.ts +13 -0
  268. package/dist/src/labs/UiShell/useHasUiShell.d.ts.map +1 -0
  269. package/dist/src/labs/UiShell/useScrollState.d.ts +16 -0
  270. package/dist/src/labs/UiShell/useScrollState.d.ts.map +1 -0
  271. package/dist/src/labs/index.d.ts +6 -2
  272. package/dist/src/labs/index.d.ts.map +1 -1
  273. package/dist/src/properties/ts/odyssey-react-mui.d.ts +13 -0
  274. package/dist/src/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  275. package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts +2 -0
  276. package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  277. package/dist/src/properties/ts/odyssey-react-mui_da.d.ts +2 -0
  278. package/dist/src/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  279. package/dist/src/properties/ts/odyssey-react-mui_de.d.ts +2 -0
  280. package/dist/src/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  281. package/dist/src/properties/ts/odyssey-react-mui_el.d.ts +2 -0
  282. package/dist/src/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  283. package/dist/src/properties/ts/odyssey-react-mui_es.d.ts +2 -0
  284. package/dist/src/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  285. package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts +2 -0
  286. package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  287. package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts +2 -0
  288. package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  289. package/dist/src/properties/ts/odyssey-react-mui_ht.d.ts +2 -0
  290. package/dist/src/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -1
  291. package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts +2 -0
  292. package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  293. package/dist/src/properties/ts/odyssey-react-mui_id.d.ts +2 -0
  294. package/dist/src/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  295. package/dist/src/properties/ts/odyssey-react-mui_it.d.ts +2 -0
  296. package/dist/src/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  297. package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts +2 -0
  298. package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  299. package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts +2 -0
  300. package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  301. package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts +2 -0
  302. package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  303. package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts +2 -0
  304. package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  305. package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts +2 -0
  306. package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  307. package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts +2 -0
  308. package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  309. package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts +2 -0
  310. package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  311. package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts +2 -0
  312. package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  313. package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts +2 -0
  314. package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  315. package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts +2 -0
  316. package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  317. package/dist/src/properties/ts/odyssey-react-mui_th.d.ts +2 -0
  318. package/dist/src/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  319. package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts +2 -0
  320. package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  321. package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts +2 -0
  322. package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  323. package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts +2 -0
  324. package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  325. package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts +2 -0
  326. package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  327. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts +2 -0
  328. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  329. package/dist/src/test-selectors/querySelector.d.ts +2 -2
  330. package/dist/src/theme/components.d.ts +3 -1
  331. package/dist/src/theme/components.d.ts.map +1 -1
  332. package/dist/src/theme/createOdysseyMuiTheme.d.ts +2 -1
  333. package/dist/src/theme/createOdysseyMuiTheme.d.ts.map +1 -1
  334. package/dist/src/useAutocomplete.d.ts +29 -0
  335. package/dist/src/useAutocomplete.d.ts.map +1 -0
  336. package/dist/src/useContrastMode.d.ts +46 -0
  337. package/dist/src/useContrastMode.d.ts.map +1 -0
  338. package/dist/src/web-component/index.d.ts +14 -0
  339. package/dist/src/web-component/index.d.ts.map +1 -0
  340. package/dist/src/web-component/renderReactInWebComponent.d.ts +76 -0
  341. package/dist/src/web-component/renderReactInWebComponent.d.ts.map +1 -0
  342. package/dist/src/web-component/shadow-dom.d.ts +23 -0
  343. package/dist/src/web-component/shadow-dom.d.ts.map +1 -0
  344. package/dist/test-selectors/querySelector.js.map +1 -1
  345. package/dist/theme/components.js +36 -32
  346. package/dist/theme/components.js.map +1 -1
  347. package/dist/theme/createOdysseyMuiTheme.js +3 -2
  348. package/dist/theme/createOdysseyMuiTheme.js.map +1 -1
  349. package/dist/tsconfig.production.tsbuildinfo +1 -1
  350. package/dist/tsconfig.tsbuildinfo +1 -1
  351. package/dist/useAutocomplete.js +105 -0
  352. package/dist/useAutocomplete.js.map +1 -0
  353. package/dist/useContrastMode.js +93 -0
  354. package/dist/useContrastMode.js.map +1 -0
  355. package/dist/web-component/index.js +14 -0
  356. package/dist/web-component/index.js.map +1 -0
  357. package/dist/web-component/renderReactInWebComponent.js +72 -0
  358. package/dist/web-component/renderReactInWebComponent.js.map +1 -0
  359. package/dist/{createShadowDomElements.js → web-component/shadow-dom.js} +10 -12
  360. package/dist/web-component/shadow-dom.js.map +1 -0
  361. package/i18n.config.json +2 -1
  362. package/jest.config.cjs +1 -1
  363. package/jest.setup.js +0 -3
  364. package/package.json +7 -3
  365. package/src/Autocomplete.tsx +40 -330
  366. package/src/Box.tsx +4 -2
  367. package/src/Card.tsx +1 -0
  368. package/src/OdysseyDesignTokensContext.tsx +6 -3
  369. package/src/OdysseyProvider.tsx +13 -8
  370. package/src/OdysseyThemeProvider.test.tsx +209 -0
  371. package/src/OdysseyThemeProvider.tsx +42 -26
  372. package/src/Pagination/Pagination.test.tsx +305 -0
  373. package/src/Pagination/Pagination.tsx +86 -38
  374. package/src/Surface.tsx +18 -5
  375. package/src/Tag.tsx +64 -39
  376. package/src/createUniqueAlphabeticalId.test.ts +1 -1
  377. package/src/createUniqueId.test.ts +1 -1
  378. package/src/index.ts +6 -7
  379. package/src/labs/AppTile.tsx +169 -40
  380. package/src/labs/DataView/CardLayoutContent.tsx +12 -14
  381. package/src/labs/DataView/DataCard.tsx +137 -69
  382. package/src/labs/DataView/DataView.test.tsx +6 -4
  383. package/src/labs/DataView/DataView.tsx +6 -0
  384. package/src/labs/DataView/TableLayoutContent.tsx +6 -2
  385. package/src/labs/DataView/componentTypes.ts +7 -3
  386. package/src/labs/DataView/index.tsx +1 -0
  387. package/src/labs/OdysseyPickers/ComposablePicker.test.tsx +29 -0
  388. package/src/labs/OdysseyPickers/ComposablePicker.tsx +188 -0
  389. package/src/labs/OdysseyPickers/Picker.tsx +381 -0
  390. package/src/labs/OdysseyPickers/PickerVirtualizationListBox.tsx +191 -0
  391. package/src/labs/OdysseyPickers/PickerWithOptionAdornment.tsx +429 -0
  392. package/src/labs/OdysseyPickers/index.ts +15 -0
  393. package/src/labs/PageTemplate.tsx +18 -10
  394. package/src/labs/SideNav/CollapseIcon.tsx +14 -28
  395. package/src/labs/SideNav/HandleIcon.tsx +35 -0
  396. package/src/labs/{NavAccordion.tsx → SideNav/NavAccordion.tsx} +51 -16
  397. package/src/labs/SideNav/OktaAura.tsx +35 -0
  398. package/src/labs/SideNav/OktaLogo.tsx +5 -10
  399. package/src/labs/SideNav/SideNav.test.tsx +323 -0
  400. package/src/labs/SideNav/SideNav.tsx +405 -205
  401. package/src/labs/SideNav/SideNavFooterContent.tsx +36 -28
  402. package/src/labs/SideNav/SideNavHeader.tsx +62 -45
  403. package/src/labs/SideNav/SideNavItemContent.tsx +202 -69
  404. package/src/labs/SideNav/SideNavItemContentContext.tsx +29 -0
  405. package/src/labs/SideNav/SideNavItemLinkContent.tsx +18 -15
  406. package/src/labs/SideNav/SideNavLogo.tsx +41 -0
  407. package/src/labs/SideNav/SideNavToggleButton.tsx +245 -0
  408. package/src/labs/SideNav/SortableList/SortableItem.tsx +202 -0
  409. package/src/labs/SideNav/SortableList/SortableList.tsx +122 -0
  410. package/src/labs/SideNav/SortableList/SortableOverlay.tsx +34 -0
  411. package/src/labs/SideNav/types.ts +85 -36
  412. package/src/labs/TopNav/TopNav.tsx +95 -0
  413. package/src/labs/TopNav/TopNavLinksList.tsx +68 -0
  414. package/src/labs/TopNav/TopNavListItem.tsx +209 -0
  415. package/src/labs/TopNav/UserProfile.tsx +79 -0
  416. package/src/labs/TopNav/index.ts +14 -0
  417. package/src/labs/UiShell/UiShell.test.tsx +284 -0
  418. package/src/labs/UiShell/UiShell.tsx +109 -0
  419. package/src/labs/UiShell/UiShellContent.tsx +170 -0
  420. package/src/labs/UiShell/bufferLatest.test.ts +79 -0
  421. package/src/labs/UiShell/bufferLatest.ts +64 -0
  422. package/src/labs/UiShell/createMessageBus.test.ts +115 -0
  423. package/src/labs/UiShell/createMessageBus.ts +53 -0
  424. package/src/labs/UiShell/createStore.test.ts +103 -0
  425. package/src/labs/UiShell/createStore.ts +37 -0
  426. package/src/labs/UiShell/index.ts +17 -0
  427. package/src/labs/UiShell/renderUiShell.test.tsx +197 -0
  428. package/src/labs/UiShell/renderUiShell.tsx +132 -0
  429. package/src/labs/UiShell/useHasUiShell.ts +25 -0
  430. package/src/labs/UiShell/useScrollState.ts +56 -0
  431. package/src/labs/index.ts +10 -3
  432. package/src/properties/odyssey-react-mui.properties +14 -0
  433. package/src/properties/translations/odyssey-react-mui_cs.properties +2 -1
  434. package/src/properties/translations/odyssey-react-mui_da.properties +2 -1
  435. package/src/properties/translations/odyssey-react-mui_de.properties +2 -1
  436. package/src/properties/translations/odyssey-react-mui_el.properties +2 -1
  437. package/src/properties/translations/odyssey-react-mui_es.properties +2 -1
  438. package/src/properties/translations/odyssey-react-mui_fi.properties +2 -1
  439. package/src/properties/translations/odyssey-react-mui_fr.properties +4 -3
  440. package/src/properties/translations/odyssey-react-mui_ht.properties +2 -1
  441. package/src/properties/translations/odyssey-react-mui_hu.properties +2 -1
  442. package/src/properties/translations/odyssey-react-mui_id.properties +2 -1
  443. package/src/properties/translations/odyssey-react-mui_it.properties +3 -2
  444. package/src/properties/translations/odyssey-react-mui_ja.properties +8 -7
  445. package/src/properties/translations/odyssey-react-mui_ko.properties +2 -1
  446. package/src/properties/translations/odyssey-react-mui_ms.properties +2 -1
  447. package/src/properties/translations/odyssey-react-mui_nb.properties +2 -1
  448. package/src/properties/translations/odyssey-react-mui_nl_NL.properties +2 -1
  449. package/src/properties/translations/odyssey-react-mui_pl.properties +2 -1
  450. package/src/properties/translations/odyssey-react-mui_pt_BR.properties +2 -1
  451. package/src/properties/translations/odyssey-react-mui_ro.properties +2 -1
  452. package/src/properties/translations/odyssey-react-mui_ru.properties +2 -1
  453. package/src/properties/translations/odyssey-react-mui_sv.properties +2 -1
  454. package/src/properties/translations/odyssey-react-mui_th.properties +2 -1
  455. package/src/properties/translations/odyssey-react-mui_tr.properties +3 -2
  456. package/src/properties/translations/odyssey-react-mui_uk.properties +2 -1
  457. package/src/properties/translations/odyssey-react-mui_vi.properties +2 -1
  458. package/src/properties/translations/odyssey-react-mui_zh_CN.properties +2 -1
  459. package/src/properties/translations/odyssey-react-mui_zh_TW.properties +2 -1
  460. package/src/properties/ts/odyssey-react-mui.ts +1 -1
  461. package/src/properties/ts/odyssey-react-mui_cs.ts +1 -1
  462. package/src/properties/ts/odyssey-react-mui_da.ts +1 -1
  463. package/src/properties/ts/odyssey-react-mui_de.ts +1 -1
  464. package/src/properties/ts/odyssey-react-mui_el.ts +1 -1
  465. package/src/properties/ts/odyssey-react-mui_es.ts +1 -1
  466. package/src/properties/ts/odyssey-react-mui_fi.ts +1 -1
  467. package/src/properties/ts/odyssey-react-mui_fr.ts +1 -1
  468. package/src/properties/ts/odyssey-react-mui_ht.ts +1 -1
  469. package/src/properties/ts/odyssey-react-mui_hu.ts +1 -1
  470. package/src/properties/ts/odyssey-react-mui_id.ts +1 -1
  471. package/src/properties/ts/odyssey-react-mui_it.ts +1 -1
  472. package/src/properties/ts/odyssey-react-mui_ja.ts +1 -1
  473. package/src/properties/ts/odyssey-react-mui_ko.ts +1 -1
  474. package/src/properties/ts/odyssey-react-mui_ms.ts +1 -1
  475. package/src/properties/ts/odyssey-react-mui_nb.ts +1 -1
  476. package/src/properties/ts/odyssey-react-mui_nl_NL.ts +1 -1
  477. package/src/properties/ts/odyssey-react-mui_pl.ts +1 -1
  478. package/src/properties/ts/odyssey-react-mui_pt_BR.ts +1 -1
  479. package/src/properties/ts/odyssey-react-mui_ro.ts +1 -1
  480. package/src/properties/ts/odyssey-react-mui_ru.ts +1 -1
  481. package/src/properties/ts/odyssey-react-mui_sv.ts +1 -1
  482. package/src/properties/ts/odyssey-react-mui_th.ts +1 -1
  483. package/src/properties/ts/odyssey-react-mui_tr.ts +1 -1
  484. package/src/properties/ts/odyssey-react-mui_uk.ts +1 -1
  485. package/src/properties/ts/odyssey-react-mui_vi.ts +1 -1
  486. package/src/properties/ts/odyssey-react-mui_zh_CN.ts +1 -1
  487. package/src/properties/ts/odyssey-react-mui_zh_TW.ts +1 -1
  488. package/src/test-selectors/querySelector.ts +1 -1
  489. package/src/theme/components.tsx +50 -33
  490. package/src/theme/createOdysseyMuiTheme.ts +4 -3
  491. package/src/theme/useContrastMode.test.tsx +503 -0
  492. package/src/useAutocomplete.tsx +183 -0
  493. package/src/useContrastMode.tsx +149 -0
  494. package/src/web-component/index.ts +14 -0
  495. package/src/web-component/renderReactInWebComponent.test.tsx +156 -0
  496. package/src/web-component/renderReactInWebComponent.ts +153 -0
  497. package/src/web-component/shadow-dom.test.ts +24 -0
  498. package/src/{createShadowDomElements.ts → web-component/shadow-dom.ts} +15 -14
  499. package/dist/ContrastModeProvider.js +0 -86
  500. package/dist/ContrastModeProvider.js.map +0 -1
  501. package/dist/createShadowDomElements.js.map +0 -1
  502. package/dist/labs/NavAccordion.js.map +0 -1
  503. package/dist/labs/TopNav.js +0 -281
  504. package/dist/labs/TopNav.js.map +0 -1
  505. package/dist/src/ContrastModeProvider.d.ts +0 -34
  506. package/dist/src/ContrastModeProvider.d.ts.map +0 -1
  507. package/dist/src/createShadowDomElements.d.ts.map +0 -1
  508. package/dist/src/labs/NavAccordion.d.ts.map +0 -1
  509. package/dist/src/labs/TopNav.d.ts +0 -78
  510. package/dist/src/labs/TopNav.d.ts.map +0 -1
  511. package/src/ContrastModeProvider.tsx +0 -131
  512. package/src/labs/TopNav.tsx +0 -396
@@ -0,0 +1,132 @@
1
+ /*!
2
+ * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { type SetStateAction } from "react";
14
+ import { ErrorBoundary } from "react-error-boundary";
15
+
16
+ import { bufferLatest } from "./bufferLatest";
17
+ import { createMessageBus } from "./createMessageBus";
18
+ import { UiShell, UiShellProps } from "./UiShell";
19
+ import { renderReactInWebComponent } from "../../web-component/renderReactInWebComponent";
20
+ import { type UiShellNavComponentProps } from "./UiShellContent";
21
+
22
+ export const uiShellDataAttribute = "data-unified-ui-shell";
23
+
24
+ export const optionalComponentSlotNames: Record<
25
+ keyof Required<UiShellProps>["optionalComponents"],
26
+ string
27
+ > = {
28
+ banners: "banners",
29
+ sideNavFooter: "side-nav-footer",
30
+ topNavLeftSide: "top-nav-left-side",
31
+ topNavRightSide: "top-nav-right-side",
32
+ };
33
+
34
+ /**
35
+ * This function renders UI Shell in a web component.
36
+ * This function is agnostic to the UI framework for your app is using. Your application can be another web component, a React app, or even vanilla HTML.
37
+ *
38
+ * **All styles are self-contained.** Even though your application visually renders as children of the web component, its within the global `document` scope, not the web component's `ShadowRoot`. That means any global styles will not affect UI Shell but will affect your application.
39
+ *
40
+ * It places your app's root element in a web component <slot> and ensures it remains rendered in the event of a UI Shell error.
41
+ * It also provides you with other elements fitted to slots in the web component. **In React, you can portal to these components.**
42
+ */
43
+ export const renderUiShell = ({
44
+ appRootElement: explicitAppRootElement,
45
+ onError = console.error,
46
+ uiShellRootElement,
47
+ }: {
48
+ /**
49
+ * HTML element used as the root for a React app.
50
+ */
51
+ appRootElement?: HTMLDivElement;
52
+ /**
53
+ * Notifies when a React rendering error occurs. This could be useful for logging, reporting priority 0 issues, and recovering UI Shell when errors occur.
54
+ */
55
+ onError?: () => void;
56
+ /**
57
+ * HTML element used as the root for UI Shell.
58
+ */
59
+ uiShellRootElement: HTMLElement;
60
+ }) => {
61
+ const appRootElement =
62
+ explicitAppRootElement || document.createElement("div");
63
+
64
+ // Add this attribute so `PageTemplate` and potentially other components will know if they're in UI Shell with special padding already available.
65
+ uiShellRootElement.setAttribute(uiShellDataAttribute, "");
66
+
67
+ const { publish: publishPropChanges, subscribe: subscribeToPropChanges } =
68
+ createMessageBus<SetStateAction<UiShellNavComponentProps>>();
69
+
70
+ const {
71
+ publish: publishSubscriptionCreated,
72
+ subscribe: subscribeToReactAppSubscribed,
73
+ } = createMessageBus();
74
+
75
+ const publishAfterReactAppReadyForProps = bufferLatest({
76
+ publish: publishPropChanges,
77
+ subscribe: subscribeToReactAppSubscribed,
78
+ });
79
+
80
+ const slottedElements = Object.fromEntries(
81
+ Object.entries(optionalComponentSlotNames).map(
82
+ ([optionalComponentKey, slotName]) => {
83
+ const element = document.createElement("div");
84
+
85
+ element.setAttribute("slot", slotName);
86
+
87
+ return [optionalComponentKey, element];
88
+ },
89
+ ),
90
+ ) as Record<
91
+ keyof Required<UiShellProps>["optionalComponents"],
92
+ HTMLDivElement
93
+ >;
94
+
95
+ const webComponentChildren =
96
+ Object.values(slottedElements).concat(appRootElement);
97
+
98
+ const appComponent = <slot />;
99
+
100
+ const uiShellElement = renderReactInWebComponent({
101
+ getReactComponent: (reactRootElements) => (
102
+ <ErrorBoundary fallback={appComponent} onError={onError}>
103
+ <UiShell
104
+ appComponent={appComponent}
105
+ appRootElement={reactRootElements.appRootElement}
106
+ onError={onError}
107
+ onSubscriptionCreated={publishSubscriptionCreated}
108
+ // `optionalComponents` doesn't need to be memoized because gets passed in once.
109
+ optionalComponents={Object.fromEntries(
110
+ Object.entries(optionalComponentSlotNames).map(
111
+ ([optionalComponentKey, slotName]) => [
112
+ optionalComponentKey,
113
+ <slot name={slotName} />,
114
+ ],
115
+ ),
116
+ )}
117
+ stylesRootElement={reactRootElements.stylesRootElement}
118
+ subscribeToPropChanges={subscribeToPropChanges}
119
+ />
120
+ </ErrorBoundary>
121
+ ),
122
+ webComponentRootElement: uiShellRootElement,
123
+ webComponentChildren,
124
+ });
125
+
126
+ return {
127
+ appRootElement,
128
+ setComponentProps: publishAfterReactAppReadyForProps,
129
+ slottedElements,
130
+ uiShellElement,
131
+ };
132
+ };
@@ -0,0 +1,25 @@
1
+ /*!
2
+ * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { useEffect, useState } from "react";
14
+
15
+ import { uiShellDataAttribute } from "./renderUiShell";
16
+
17
+ export const useHasUiShell = () => {
18
+ const [hasUiShell, setHasUiShell] = useState(false);
19
+
20
+ useEffect(() => {
21
+ setHasUiShell(Boolean(document.querySelector(`[${uiShellDataAttribute}]`)));
22
+ }, []);
23
+
24
+ return hasUiShell;
25
+ };
@@ -0,0 +1,56 @@
1
+ /*!
2
+ * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { useEffect, useRef, useState } from "react";
14
+
15
+ export const useScrollState = <
16
+ ScrollableContentElement extends HTMLElement = HTMLDivElement,
17
+ >() => {
18
+ const [isContentScrolled, setIsContentScrolled] = useState(false);
19
+
20
+ const scrollableContentRef = useRef<ScrollableContentElement>(null);
21
+
22
+ useEffect(() => {
23
+ if (scrollableContentRef.current) {
24
+ let requestedAnimationFrameId: number;
25
+ const scrollableContentElement = scrollableContentRef.current;
26
+
27
+ const updateScrollState = () => {
28
+ cancelAnimationFrame(requestedAnimationFrameId);
29
+
30
+ requestedAnimationFrameId = requestAnimationFrame(() => {
31
+ setIsContentScrolled(scrollableContentElement.scrollTop > 0);
32
+ });
33
+ };
34
+
35
+ scrollableContentElement.addEventListener("scroll", updateScrollState);
36
+
37
+ updateScrollState();
38
+
39
+ return () => {
40
+ scrollableContentElement.removeEventListener(
41
+ "scroll",
42
+ updateScrollState,
43
+ );
44
+
45
+ cancelAnimationFrame(requestedAnimationFrameId);
46
+ };
47
+ }
48
+
49
+ return () => {};
50
+ }, []);
51
+
52
+ return {
53
+ isContentScrolled,
54
+ scrollableContentRef,
55
+ };
56
+ };
package/src/labs/index.ts CHANGED
@@ -14,8 +14,8 @@ export { AdapterDateFns } from "@mui/x-date-pickers/AdapterDateFns";
14
14
  export { LocalizationProvider } from "@mui/x-date-pickers";
15
15
  export type { LocalizationProviderProps } from "@mui/x-date-pickers";
16
16
 
17
+ // export * from "./AdaptablePicker";
17
18
  export * from "./AppTile";
18
-
19
19
  export * from "./DatePicker";
20
20
  export * from "./datePickerTheme";
21
21
 
@@ -28,12 +28,19 @@ export * from "./Layout";
28
28
  export * from "./materialReactTableTypes";
29
29
  /** @deprecated Will be removed in a future Odyssey version in lieu of DataTable */
30
30
  export * from "./StaticTable";
31
+ export * from "./OdysseyPickers";
31
32
  export * from "./PageTemplate";
32
33
  /** @deprecated Will be removed in a future Odyssey version in lieu of DataTable */
33
34
  export * from "./PaginatedTable";
34
35
 
35
- export * from "./GroupPicker";
36
+ export {
37
+ /** @deprecated Will be removed in a future Odyssey version. Use `PickerWithOptionAdornment` */
38
+ GroupPicker,
39
+ type GroupPickerOptionType,
40
+ type GroupPickerProps,
41
+ } from "./GroupPicker";
36
42
 
37
- export * from "./NavAccordion";
43
+ export * from "./SideNav/NavAccordion";
38
44
  export * from "./SideNav";
39
45
  export * from "./TopNav";
46
+ export * from "./UiShell";
@@ -1,3 +1,13 @@
1
+ navigation.label = Main navigation
2
+ navigation.footer = Navigation secondary links
3
+ navigation.drag.handle = Drag handle
4
+ sortable.list.drag.start = Picked up draggable item {{activeId}}
5
+ sortable.list.drag.moved.over = Draggable item {{activeId}} was moved over droppable area {{overId}}
6
+ sortable.list.drag.nolonger.over = Draggable item {{activeId}} is no longer over a droppable area
7
+ sortable.list.drag.end.dropped.over = Draggable item {{activeId}} was dropped over droppable area {{overId}}
8
+ sortable.list.drag.end.dropped = Draggable item {{activeId}} was dropped
9
+ sortable.list.drag.cancel = Dragging was cancelled. Draggable item {{activeId}} was dropped
10
+
1
11
  breadcrumbs.home.text = Home
2
12
  breadcrumbs.label.text = Breadcrumbs
3
13
  close.text = Close
@@ -82,6 +92,8 @@ severity.error = error
82
92
  severity.info = info
83
93
  severity.success = success
84
94
  severity.warning = warning
95
+ sidenav.toggle.expand = Open navigation
96
+ sidenav.toggle.collapse = Close navigation
85
97
  switch.active = Active
86
98
  switch.inactive = Inactive
87
99
  table.columnvisibility.arialabel = Show/hide columns
@@ -122,3 +134,5 @@ table.rowexpansion.collapseall = Collapse all
122
134
  dataview.layout.table = Table
123
135
  dataview.layout.grid = Grid
124
136
  dataview.layout.list = List
137
+ topnav.helpicon = help page
138
+ topnav.settingsicon = settings page
@@ -31,7 +31,7 @@ picker.labels.action.today = Dnes
31
31
  picker.labels.clock.empty = Nen\u00ED vybran\u00FD \u010Das
32
32
  picker.labels.clock.hours = hod
33
33
  picker.labels.clock.minutes = min
34
- picker.labels.clock.minutes = s
34
+ picker.labels.clock.seconds = s
35
35
  picker.labels.clock.selected = Vybran\u00FD \u010Das je
36
36
  picker.labels.date.choose = Zvolit datum
37
37
  picker.labels.date.selected = Vybran\u00E9 datum je
@@ -47,6 +47,7 @@ picker.labels.select = Vybrat
47
47
  picker.labels.table.date = vybrat datum
48
48
  picker.labels.table.time = vybrat \u010Das
49
49
  picker.labels.time.choose = Zvolit \u010Das
50
+ picker.labels.time.selected = vybran\u00FD \u010Das je
50
51
  picker.time.toolbar.title = Vybrat \u010Das
51
52
  picker.view.name.day = Den
52
53
  picker.view.name.hours = Hodiny
@@ -31,7 +31,7 @@ picker.labels.action.today = I dag
31
31
  picker.labels.clock.empty = Intet tidspunkt valgt
32
32
  picker.labels.clock.hours = timer
33
33
  picker.labels.clock.minutes = minutter
34
- picker.labels.clock.minutes = sekunder
34
+ picker.labels.clock.seconds = sekunder
35
35
  picker.labels.clock.selected = Det valgte tidspunkt er
36
36
  picker.labels.date.choose = V\u00E6lg dato
37
37
  picker.labels.date.selected = Den valgte dato er
@@ -47,6 +47,7 @@ picker.labels.select = V\u00E6lg
47
47
  picker.labels.table.date = v\u00E6lg dato
48
48
  picker.labels.table.time = v\u00E6lg tidspunkt
49
49
  picker.labels.time.choose = V\u00E6lg tidspunkt
50
+ picker.labels.time.selected = valgte tidspunkt er
50
51
  picker.time.toolbar.title = V\u00E6lg tidspunkt
51
52
  picker.view.name.day = Dag
52
53
  picker.view.name.hours = Timer
@@ -31,7 +31,7 @@ picker.labels.action.today = Heute
31
31
  picker.labels.clock.empty = Keine Uhrzeit ausgew\u00E4hlt
32
32
  picker.labels.clock.hours = Stunden
33
33
  picker.labels.clock.minutes = Minuten
34
- picker.labels.clock.minutes = Sekunden
34
+ picker.labels.clock.seconds = Sekunden
35
35
  picker.labels.clock.selected = Ausgew\u00E4hlte Uhrzeit
36
36
  picker.labels.date.choose = Datum w\u00E4hlen
37
37
  picker.labels.date.selected = Gew\u00E4hltes Datum
@@ -47,6 +47,7 @@ picker.labels.select = Ausw\u00E4hlen
47
47
  picker.labels.table.date = Datum w\u00E4hlen
48
48
  picker.labels.table.time = Uhrzeit w\u00E4hlen
49
49
  picker.labels.time.choose = Uhrzeit w\u00E4hlen
50
+ picker.labels.time.selected = ausgew\u00E4hlte Uhrzeit ist
50
51
  picker.time.toolbar.title = Uhrzeit ausw\u00E4hlen
51
52
  picker.view.name.day = Tag
52
53
  picker.view.name.hours = Stunden
@@ -31,7 +31,7 @@ picker.labels.action.today = \u03A3\u03AE\u03BC\u03B5\u03C1\u03B1
31
31
  picker.labels.clock.empty = \u0394\u03B5\u03BD \u03AD\u03C7\u03B5\u03B9 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03B5\u03AF \u03CE\u03C1\u03B1
32
32
  picker.labels.clock.hours = \u03CE\u03C1\u03B5\u03C2
33
33
  picker.labels.clock.minutes = \u03BB\u03B5\u03C0\u03C4\u03AC
34
- picker.labels.clock.minutes = \u03B4\u03B5\u03C5\u03C4\u03B5\u03C1\u03CC\u03BB\u03B5\u03C0\u03C4\u03B1
34
+ picker.labels.clock.seconds = \u03B4\u03B5\u03C5\u03C4\u03B5\u03C1\u03CC\u03BB\u03B5\u03C0\u03C4\u03B1
35
35
  picker.labels.clock.selected = \u0397 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B7 \u03CE\u03C1\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9
36
36
  picker.labels.date.choose = \u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1
37
37
  picker.labels.date.selected = \u0397 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B7 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9
@@ -47,6 +47,7 @@ picker.labels.select = \u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE
47
47
  picker.labels.table.date = \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1
48
48
  picker.labels.table.time = \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03CE\u03C1\u03B1
49
49
  picker.labels.time.choose = \u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03CE\u03C1\u03B1
50
+ picker.labels.time.selected = \u03B7 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B7 \u03CE\u03C1\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9
50
51
  picker.time.toolbar.title = \u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03CE\u03C1\u03B1
51
52
  picker.view.name.day = \u0397\u03BC\u03AD\u03C1\u03B1
52
53
  picker.view.name.hours = \u038F\u03C1\u03B5\u03C2
@@ -31,7 +31,7 @@ picker.labels.action.today = Hoy
31
31
  picker.labels.clock.empty = No se ha seleccionado ninguna hora
32
32
  picker.labels.clock.hours = horas
33
33
  picker.labels.clock.minutes = minutos
34
- picker.labels.clock.minutes = segundos
34
+ picker.labels.clock.seconds = segundos
35
35
  picker.labels.clock.selected = La hora seleccionada es
36
36
  picker.labels.date.choose = Elegir fecha
37
37
  picker.labels.date.selected = La fecha seleccionada es
@@ -47,6 +47,7 @@ picker.labels.select = Seleccionar
47
47
  picker.labels.table.date = elegir fecha
48
48
  picker.labels.table.time = elegir hora
49
49
  picker.labels.time.choose = Elegir hora
50
+ picker.labels.time.selected = la hora seleccionada es
50
51
  picker.time.toolbar.title = Seleccionar hora
51
52
  picker.view.name.day = D\u00EDa
52
53
  picker.view.name.hours = Horas
@@ -31,7 +31,7 @@ picker.labels.action.today = T\u00E4n\u00E4\u00E4n
31
31
  picker.labels.clock.empty = Aikaa ei ole valittu
32
32
  picker.labels.clock.hours = tuntia
33
33
  picker.labels.clock.minutes = minuuttia
34
- picker.labels.clock.minutes = sekuntia
34
+ picker.labels.clock.seconds = sekuntia
35
35
  picker.labels.clock.selected = Valittu aika on
36
36
  picker.labels.date.choose = Valitse p\u00E4iv\u00E4m\u00E4\u00E4r\u00E4
37
37
  picker.labels.date.selected = Valittu p\u00E4iv\u00E4m\u00E4\u00E4r\u00E4 on
@@ -47,6 +47,7 @@ picker.labels.select = Valitse
47
47
  picker.labels.table.date = valitse p\u00E4iv\u00E4m\u00E4\u00E4r\u00E4
48
48
  picker.labels.table.time = valitse aika
49
49
  picker.labels.time.choose = Valitse aika
50
+ picker.labels.time.selected = valittu aika on
50
51
  picker.time.toolbar.title = Valitse aika
51
52
  picker.view.name.day = P\u00E4iv\u00E4
52
53
  picker.view.name.hours = Tuntia
@@ -8,8 +8,8 @@ picker.calendar.navigation.previousmonth = Mois pr\u00E9c\u00E8dent
8
8
  picker.date.toolbar.title = Date s\u00E9lectionn\u00E9e
9
9
  picker.daterange.toolbar.title = S\u00E9lectionner une plage de dates
10
10
  picker.datetime.toolbar.title = S\u00E9lectionner une date et une heure
11
- picker.error.invalid = Corrigez le format de la date ou s\u00E9lectionnez la date dans le calendrier.
12
- picker.error.mindate = La date saisie est ant\u00E9rieure aux dates autoris\u00E9es. S\u00E9lectionnez une date dans la plage du calendrier.
11
+ picker.error.invalid = Corrigez le format de la date ou s\u00E9lectionnez la date dans le calendrier.
12
+ picker.error.mindate = La date saisie est ant\u00E9rieure aux dates autoris\u00E9es. S\u00E9lectionnez une date dans la plage du calendrier.
13
13
  picker.error.maxdate = La date saisie est post\u00E9rieure aux dates autoris\u00E9es. S\u00E9lectionnez une date dans la plage du calendrier.
14
14
  # placeholder text in date field
15
15
  picker.field.placeholder.day = DD
@@ -31,7 +31,7 @@ picker.labels.action.today = Aujourd'hui
31
31
  picker.labels.clock.empty = Aucune heure s\u00E9lectionn\u00E9e
32
32
  picker.labels.clock.hours = heures
33
33
  picker.labels.clock.minutes = minutes
34
- picker.labels.clock.minutes = secondes
34
+ picker.labels.clock.seconds = secondes
35
35
  picker.labels.clock.selected = L'heure s\u00E9lectionn\u00E9e est
36
36
  picker.labels.date.choose = Choisir la date
37
37
  picker.labels.date.selected = La date s\u00E9lectionn\u00E9e est
@@ -47,6 +47,7 @@ picker.labels.select = S\u00E9lectionner
47
47
  picker.labels.table.date = choisir une date
48
48
  picker.labels.table.time = choisir une heure
49
49
  picker.labels.time.choose = Choisir une heure
50
+ picker.labels.time.selected = l'heure s\u00E9lectionn\u00E9e est
50
51
  picker.time.toolbar.title = Choisir une date
51
52
  picker.view.name.day = Jour
52
53
  picker.view.name.hours = Heures
@@ -31,7 +31,7 @@ picker.labels.action.today = Jodia
31
31
  picker.labels.clock.empty = Pa gen l\u00E8 ki seleksyone
32
32
  picker.labels.clock.hours = \u00E8dtan
33
33
  picker.labels.clock.minutes = minit
34
- picker.labels.clock.minutes = segonn
34
+ picker.labels.clock.seconds = segonn
35
35
  picker.labels.clock.selected = L\u00E8 ki seleksyone a se
36
36
  picker.labels.date.choose = Chwazi dat
37
37
  picker.labels.date.selected = Dat ki seleksyone a se
@@ -47,6 +47,7 @@ picker.labels.select = Seleksyone
47
47
  picker.labels.table.date = pran dat
48
48
  picker.labels.table.time = pran l\u00E8
49
49
  picker.labels.time.choose = Chwazi l\u00E8
50
+ picker.labels.time.selected = l\u00E8 ki seleksyone a se
50
51
  picker.time.toolbar.title = Seleksyone l\u00E8
51
52
  picker.view.name.day = Jou
52
53
  picker.view.name.hours = \u00C8dtan
@@ -31,7 +31,7 @@ picker.labels.action.today = Ma
31
31
  picker.labels.clock.empty = Nincs kiv\u00E1lasztva id\u0151pont
32
32
  picker.labels.clock.hours = \u00F3ra
33
33
  picker.labels.clock.minutes = perc
34
- picker.labels.clock.minutes = m\u00E1sodperc
34
+ picker.labels.clock.seconds = m\u00E1sodperc
35
35
  picker.labels.clock.selected = A kiv\u00E1lasztott id\u0151pont
36
36
  picker.labels.date.choose = V\u00E1lasszon d\u00E1tumot
37
37
  picker.labels.date.selected = A kiv\u00E1lasztott d\u00E1tum
@@ -47,6 +47,7 @@ picker.labels.select = Kiv\u00E1laszt\u00E1s
47
47
  picker.labels.table.date = v\u00E1lasszon d\u00E1tumot
48
48
  picker.labels.table.time = v\u00E1lasszon id\u0151pontot
49
49
  picker.labels.time.choose = Id\u0151pont kiv\u00E1laszt\u00E1sa
50
+ picker.labels.time.selected = a kiv\u00E1lasztott id\u0151pont:
50
51
  picker.time.toolbar.title = Id\u0151pont kiv\u00E1laszt\u00E1sa
51
52
  picker.view.name.day = Nap
52
53
  picker.view.name.hours = \u00D3ra
@@ -31,7 +31,7 @@ picker.labels.action.today = Hari ini
31
31
  picker.labels.clock.empty = Tidak ada waktu yang dipilih
32
32
  picker.labels.clock.hours = jam
33
33
  picker.labels.clock.minutes = menit
34
- picker.labels.clock.minutes = detik
34
+ picker.labels.clock.seconds = detik
35
35
  picker.labels.clock.selected = Waktu yang dipilih
36
36
  picker.labels.date.choose = Pilih tanggal
37
37
  picker.labels.date.selected = Tanggal yang dipilih
@@ -47,6 +47,7 @@ picker.labels.select = Pilih
47
47
  picker.labels.table.date = pilih tanggal
48
48
  picker.labels.table.time = pilih waktu
49
49
  picker.labels.time.choose = Pilih waktu
50
+ picker.labels.time.selected = waktu yang dipilih adalah
50
51
  picker.time.toolbar.title = Pilih waktu
51
52
  picker.view.name.day = Hari
52
53
  picker.view.name.hours = Jam
@@ -31,7 +31,7 @@ picker.labels.action.today = Oggi
31
31
  picker.labels.clock.empty = Ora non selezionata
32
32
  picker.labels.clock.hours = ore
33
33
  picker.labels.clock.minutes = minuti
34
- picker.labels.clock.minutes = secondi
34
+ picker.labels.clock.seconds = secondi
35
35
  picker.labels.clock.selected = L'ora selezionata \u00E8
36
36
  picker.labels.date.choose = Scegli data
37
37
  picker.labels.date.selected = La data selezionata \u00E8
@@ -47,6 +47,7 @@ picker.labels.select = Seleziona
47
47
  picker.labels.table.date = seleziona data
48
48
  picker.labels.table.time = seleziona ora
49
49
  picker.labels.time.choose = Scegli ora
50
+ picker.labels.time.selected = l'ora selezionata \u00E8
50
51
  picker.time.toolbar.title = Seleziona ora
51
52
  picker.view.name.day = Giorno
52
53
  picker.view.name.hours = Ore
@@ -113,7 +114,7 @@ pagination.rowswithtotal = {{firstRow}}-{{lastRow}} di {{totalRows}} righe
113
114
  pagination.rowswithouttotal = {{firstRow}}-{{lastRow}} righe
114
115
  table.actions.selectall = Seleziona tutto
115
116
  table.actions.selectnone = Non selezionare niente
116
- table.actions.selectsome = Selezionate: {{selectedRowCount}}
117
+ table.actions.selectsome = Selezionate: {{selectedRowCount}}
117
118
  table.rowexpansion.expand = Espandi
118
119
  table.rowexpansion.expandall = Espandi tutto
119
120
  table.rowexpansion.collapse = Comprimi
@@ -31,7 +31,7 @@ picker.labels.action.today = \u4ECA\u65E5
31
31
  picker.labels.clock.empty = \u6642\u523B\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093
32
32
  picker.labels.clock.hours = \u6642\u9593
33
33
  picker.labels.clock.minutes = \u5206
34
- picker.labels.clock.minutes = \u79D2
34
+ picker.labels.clock.seconds = \u79D2
35
35
  picker.labels.clock.selected = \u9078\u629E\u3057\u305F\u6642\u523B\u306F
36
36
  picker.labels.date.choose = \u65E5\u4ED8\u3092\u9078\u629E
37
37
  picker.labels.date.selected = \u9078\u629E\u3057\u305F\u65E5\u306F
@@ -47,6 +47,7 @@ picker.labels.select = \u9078\u629E
47
47
  picker.labels.table.date = \u65E5\u4ED8\u3092\u9078\u629E
48
48
  picker.labels.table.time = \u6642\u523B\u3092\u9078\u629E
49
49
  picker.labels.time.choose = \u6642\u523B\u3092\u9078\u629E
50
+ picker.labels.time.selected = \u9078\u629E\u3057\u305F\u6642\u523B\u306F
50
51
  picker.time.toolbar.title = \u6642\u523B\u3092\u9078\u629E
51
52
  picker.view.name.day = \u65E5
52
53
  picker.view.name.hours = \u6642\u9593
@@ -93,15 +94,15 @@ table.density.arialabel = \u30C6\u30FC\u30D6\u30EB\u5BC6\u5EA6
93
94
  table.draghandle.arialabel = \u4E26\u3079\u66FF\u3048\u308B\u306B\u306F\u884C\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u307E\u3059\u3002\u307E\u305F\u306F\u3001\u30B9\u30DA\u30FC\u30B9\u307E\u305F\u306FEnter\u30AD\u30FC\u3092\u62BC\u3057\u3066\u4E26\u3079\u66FF\u3048\u3092\u958B\u59CB/\u7D42\u4E86\u3057\u307E\u3059\u3002\u30AD\u30E3\u30F3\u30BB\u30EB\u3059\u308B\u306B\u306F\u3001Esc\u30AD\u30FC\u3092\u62BC\u3057\u307E\u3059\u3002
94
95
  table.draghandle.tooltip = \u884C\u3092\u30C9\u30E9\u30C3\u30B0\u3059\u308B\u304B\u3001\u30B9\u30DA\u30FC\u30B9/Enter\u30AD\u30FC\u3092\u62BC\u3057\u3066\u4E26\u3079\u66FF\u3048\u3092\u958B\u59CB/\u7D42\u4E86\u3057\u307E\u3059\u3002
95
96
  table.error = \u30C7\u30FC\u30BF\u306E\u8AAD\u307F\u8FBC\u307F\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002
96
- table.fetchedrows.text = {{totalRows}}\u884C\u3092\u30D5\u30A7\u30C3\u30C1
97
- table.fetchedrows.text_plural = \u5408\u8A08{{totalRows}}\u884C\u3092\u30D5\u30A7\u30C3\u30C1
97
+ table.fetchedrows.text = {{totalRows}}\u884C\u3092\u53D6\u5F97\u3057\u307E\u3057\u305F
98
+ table.fetchedrows.text_plural = \u5408\u8A08{{totalRows}}\u884C\u3092\u3092\u53D6\u5F97\u3057\u307E\u3057\u305F
98
99
  table.moreactions.arialabel = \u305D\u306E\u4ED6\u306E\u30A2\u30AF\u30B7\u30E7\u30F3
99
100
  table.noresults.heading = \u7D50\u679C\u304C\u3042\u308A\u307E\u305B\u3093\u3002
100
101
  table.noresults.text = \u5225\u306E\u30AF\u30A8\u30EA\u3092\u8A66\u3057\u3066\u304F\u3060\u3055\u3044\u3002
101
- table.reorder.backward = \u5F8C\u308D\u306B\u79FB\u52D5
102
- table.reorder.forward = \u524D\u306B\u79FB\u52D5
103
- table.reorder.toback = \u5F8C\u308D\u306B\u79FB\u52D5
104
- table.reorder.tofront = \u524D\u306B\u79FB\u52D5
102
+ table.reorder.backward = \u80CC\u9762\u306B\u79FB\u52D5
103
+ table.reorder.forward = \u524D\u9762\u306B\u79FB\u52D5
104
+ table.reorder.toback = \u6700\u80CC\u9762\u306B\u79FB\u52D5
105
+ table.reorder.tofront = \u6700\u524D\u9762\u306B\u79FB\u52D5
105
106
  table.rows.text = {{totalRows}}\u884C
106
107
  table.rows.text_plural = {{totalRows}}\u884C
107
108
  pagination.loadmore = \u3055\u3089\u306B\u8868\u793A
@@ -31,7 +31,7 @@ picker.labels.action.today = \uC624\uB298
31
31
  picker.labels.clock.empty = \uC120\uD0DD\uD55C \uC2DC\uAC04 \uC5C6\uC74C
32
32
  picker.labels.clock.hours = \uC2DC
33
33
  picker.labels.clock.minutes = \uBD84
34
- picker.labels.clock.minutes = \uCD08
34
+ picker.labels.clock.seconds = \uCD08
35
35
  picker.labels.clock.selected = \uC120\uD0DD\uD55C \uC2DC\uAC04\uC740 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.
36
36
  picker.labels.date.choose = \uB0A0\uC9DC \uC120\uD0DD
37
37
  picker.labels.date.selected = \uC120\uD0DD\uD55C \uB0A0\uC9DC\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.
@@ -47,6 +47,7 @@ picker.labels.select = \uC120\uD0DD
47
47
  picker.labels.table.date = \uB0A0\uC9DC \uC120\uD0DD
48
48
  picker.labels.table.time = \uC2DC\uAC04 \uC120\uD0DD
49
49
  picker.labels.time.choose = \uC2DC\uAC04 \uC120\uD0DD
50
+ picker.labels.time.selected = \uC120\uD0DD\uD55C \uC2DC\uAC04:
50
51
  picker.time.toolbar.title = \uC2DC\uAC04 \uC120\uD0DD
51
52
  picker.view.name.day = \uC694\uC77C
52
53
  picker.view.name.hours = \uC2DC
@@ -31,7 +31,7 @@ picker.labels.action.today = Hari ini
31
31
  picker.labels.clock.empty = Tiada masa dipilih
32
32
  picker.labels.clock.hours = jam
33
33
  picker.labels.clock.minutes = minit
34
- picker.labels.clock.minutes = saat
34
+ picker.labels.clock.seconds = saat
35
35
  picker.labels.clock.selected = Masa yang dipilih ialah
36
36
  picker.labels.date.choose = Pilih tarikh
37
37
  picker.labels.date.selected = Tarikh yang dipilih ialah
@@ -47,6 +47,7 @@ picker.labels.select = Pilih
47
47
  picker.labels.table.date = pilih tarikh
48
48
  picker.labels.table.time = pilih masa
49
49
  picker.labels.time.choose = Pilih masa
50
+ picker.labels.time.selected = masa yang dipilih ialah
50
51
  picker.time.toolbar.title = Pilih masa
51
52
  picker.view.name.day = Hari
52
53
  picker.view.name.hours = Jam
@@ -31,7 +31,7 @@ picker.labels.action.today = I dag
31
31
  picker.labels.clock.empty = Ingen tid valgt
32
32
  picker.labels.clock.hours = timer
33
33
  picker.labels.clock.minutes = minutter
34
- picker.labels.clock.minutes = sekunder
34
+ picker.labels.clock.seconds = sekunder
35
35
  picker.labels.clock.selected = Valgt tidspunkt er
36
36
  picker.labels.date.choose = Velg dato
37
37
  picker.labels.date.selected = Valgt dato er
@@ -47,6 +47,7 @@ picker.labels.select = Velg
47
47
  picker.labels.table.date = angi dato
48
48
  picker.labels.table.time = angi tid
49
49
  picker.labels.time.choose = Velg tid
50
+ picker.labels.time.selected = valgt tidspunkt er
50
51
  picker.time.toolbar.title = Velg tidspunkt
51
52
  picker.view.name.day = Dag
52
53
  picker.view.name.hours = Timer
@@ -31,7 +31,7 @@ picker.labels.action.today = Vandaag
31
31
  picker.labels.clock.empty = Geen tijd geselecteerd
32
32
  picker.labels.clock.hours = uur
33
33
  picker.labels.clock.minutes = minuten
34
- picker.labels.clock.minutes = seconden
34
+ picker.labels.clock.seconds = seconden
35
35
  picker.labels.clock.selected = De geselecteerde tijd is
36
36
  picker.labels.date.choose = Datum kiezen
37
37
  picker.labels.date.selected = De geselecteerde datum is
@@ -47,6 +47,7 @@ picker.labels.select = Selecteren
47
47
  picker.labels.table.date = datum kiezen
48
48
  picker.labels.table.time = tijd kiezen
49
49
  picker.labels.time.choose = Tijd kiezeen
50
+ picker.labels.time.selected = geselecteerde tijd is
50
51
  picker.time.toolbar.title = Tijd selecteren
51
52
  picker.view.name.day = Dag
52
53
  picker.view.name.hours = Uur
@@ -31,7 +31,7 @@ picker.labels.action.today = Dzisiaj
31
31
  picker.labels.clock.empty = Nie wybornao godziny
32
32
  picker.labels.clock.hours = godz.
33
33
  picker.labels.clock.minutes = min
34
- picker.labels.clock.minutes = s
34
+ picker.labels.clock.seconds = s
35
35
  picker.labels.clock.selected = Wybrana godzina to
36
36
  picker.labels.date.choose = Wybierz dat\u0119
37
37
  picker.labels.date.selected = Wybrana data to
@@ -47,6 +47,7 @@ picker.labels.select = Wybierz
47
47
  picker.labels.table.date = wska\u017C dat\u0119
48
48
  picker.labels.table.time = wska\u017C godzin\u0119
49
49
  picker.labels.time.choose = Wybierz godzin\u0119
50
+ picker.labels.time.selected = wybrana godzina to
50
51
  picker.time.toolbar.title = Wybierz godzin\u0119
51
52
  picker.view.name.day = Dzie\u0144
52
53
  picker.view.name.hours = Godziny
@@ -31,7 +31,7 @@ picker.labels.action.today = Hoje
31
31
  picker.labels.clock.empty = Nenhum hor\u00E1rio selecionado
32
32
  picker.labels.clock.hours = horas
33
33
  picker.labels.clock.minutes = minutos
34
- picker.labels.clock.minutes = segundos
34
+ picker.labels.clock.seconds = segundos
35
35
  picker.labels.clock.selected = O hor\u00E1rio selecionado \u00E9
36
36
  picker.labels.date.choose = Selecionar data
37
37
  picker.labels.date.selected = A data selecionada \u00E9
@@ -47,6 +47,7 @@ picker.labels.select = Selecionar
47
47
  picker.labels.table.date = selecionar data
48
48
  picker.labels.table.time = selecionar hora
49
49
  picker.labels.time.choose = Escolher hora
50
+ picker.labels.time.selected = o hor\u00E1rio selecionado \u00E9
50
51
  picker.time.toolbar.title = Selecionar hora
51
52
  picker.view.name.day = Dia
52
53
  picker.view.name.hours = Horas
@@ -31,7 +31,7 @@ picker.labels.action.today = Ast\u0103zi
31
31
  picker.labels.clock.empty = Nicio or\u0103 selectat\u0103
32
32
  picker.labels.clock.hours = ore
33
33
  picker.labels.clock.minutes = minute
34
- picker.labels.clock.minutes = secunde
34
+ picker.labels.clock.seconds = secunde
35
35
  picker.labels.clock.selected = Ora selectat\u0103 este
36
36
  picker.labels.date.choose = Alege\u021Bi data
37
37
  picker.labels.date.selected = Data selectat\u0103 este
@@ -47,6 +47,7 @@ picker.labels.select = Selecta\u021Bi
47
47
  picker.labels.table.date = alege\u021Bi data
48
48
  picker.labels.table.time = alege\u021Bi ora
49
49
  picker.labels.time.choose = Alege\u021Bi ora
50
+ picker.labels.time.selected = ora selectat\u0103 este
50
51
  picker.time.toolbar.title = Selecta\u021Bi ora
51
52
  picker.view.name.day = Zi
52
53
  picker.view.name.hours = Ore