@okta/odyssey-react-mui 1.37.0 → 1.38.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 (264) hide show
  1. package/dist/cjs/EmptyState.cjs +14 -4
  2. package/dist/cjs/EmptyState.cjs.map +1 -1
  3. package/dist/cjs/Pagination/Pagination.cjs +1 -0
  4. package/dist/cjs/Pagination/Pagination.cjs.map +1 -1
  5. package/dist/cjs/addSpecificity.cjs +22 -0
  6. package/dist/cjs/addSpecificity.cjs.map +1 -0
  7. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs +7 -5
  8. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs.map +1 -1
  9. package/dist/cjs/labs/DatePickers/dateTimePickerTheme.cjs +36 -2
  10. package/dist/cjs/labs/DatePickers/dateTimePickerTheme.cjs.map +1 -1
  11. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs +2 -0
  12. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs.map +1 -1
  13. package/dist/cjs/labs/OdysseyPickers/Picker.cjs +21 -27
  14. package/dist/cjs/labs/OdysseyPickers/Picker.cjs.map +1 -1
  15. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs +11 -10
  16. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs.map +1 -1
  17. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs +1 -1
  18. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs.map +1 -1
  19. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs +1 -0
  20. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs.map +1 -1
  21. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs +1 -0
  22. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs.map +1 -1
  23. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs +1 -0
  24. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs.map +1 -1
  25. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs +1 -0
  26. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs.map +1 -1
  27. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs +1 -0
  28. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs.map +1 -1
  29. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs +1 -0
  30. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs.map +1 -1
  31. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs +1 -0
  32. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs.map +1 -1
  33. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs +1 -0
  34. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs.map +1 -1
  35. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs +1 -0
  36. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs.map +1 -1
  37. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs +1 -0
  38. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs.map +1 -1
  39. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs +1 -0
  40. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs.map +1 -1
  41. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs +1 -0
  42. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs.map +1 -1
  43. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs +1 -0
  44. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs.map +1 -1
  45. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs +1 -0
  46. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs.map +1 -1
  47. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs +1 -0
  48. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs.map +1 -1
  49. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs +1 -0
  50. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs.map +1 -1
  51. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs +1 -0
  52. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs.map +1 -1
  53. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs +1 -0
  54. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs.map +1 -1
  55. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs +1 -0
  56. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs.map +1 -1
  57. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs +1 -0
  58. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs.map +1 -1
  59. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs +1 -0
  60. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs.map +1 -1
  61. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs +1 -0
  62. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs.map +1 -1
  63. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs +1 -0
  64. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs.map +1 -1
  65. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs +1 -0
  66. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs.map +1 -1
  67. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs +1 -0
  68. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs.map +1 -1
  69. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs +1 -0
  70. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs.map +1 -1
  71. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs +1 -0
  72. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs.map +1 -1
  73. package/dist/cjs/test-selectors/getByQuerySelector.cjs +2 -2
  74. package/dist/cjs/test-selectors/getByQuerySelector.cjs.map +1 -1
  75. package/dist/cjs/test-selectors/testSelector.cjs.map +1 -1
  76. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +3 -2
  77. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -1
  78. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +8 -4
  79. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  80. package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
  81. package/dist/cjs/ui-shell/UiShell.cjs +5 -2
  82. package/dist/cjs/ui-shell/UiShell.cjs.map +1 -1
  83. package/dist/cjs/ui-shell/WideUiShellContent.cjs +3 -2
  84. package/dist/cjs/ui-shell/WideUiShellContent.cjs.map +1 -1
  85. package/dist/cjs/ui-shell/uiShellContentTypes.cjs.map +1 -1
  86. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
  87. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
  88. package/dist/esm/EmptyState.js +14 -4
  89. package/dist/esm/EmptyState.js.map +1 -1
  90. package/dist/esm/Pagination/Pagination.js +1 -0
  91. package/dist/esm/Pagination/Pagination.js.map +1 -1
  92. package/dist/esm/addSpecificity.js +15 -0
  93. package/dist/esm/addSpecificity.js.map +1 -0
  94. package/dist/esm/labs/DatePickers/DateTimePicker.js +6 -4
  95. package/dist/esm/labs/DatePickers/DateTimePicker.js.map +1 -1
  96. package/dist/esm/labs/DatePickers/dateTimePickerTheme.js +35 -1
  97. package/dist/esm/labs/DatePickers/dateTimePickerTheme.js.map +1 -1
  98. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js +2 -0
  99. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js.map +1 -1
  100. package/dist/esm/labs/OdysseyPickers/Picker.js +23 -29
  101. package/dist/esm/labs/OdysseyPickers/Picker.js.map +1 -1
  102. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js +12 -11
  103. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -1
  104. package/dist/esm/labs/PageTemplate/PageTemplate.js +2 -2
  105. package/dist/esm/labs/PageTemplate/PageTemplate.js.map +1 -1
  106. package/dist/esm/properties/ts/odyssey-react-mui_cs.js +1 -0
  107. package/dist/esm/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  108. package/dist/esm/properties/ts/odyssey-react-mui_da.js +1 -0
  109. package/dist/esm/properties/ts/odyssey-react-mui_da.js.map +1 -1
  110. package/dist/esm/properties/ts/odyssey-react-mui_de.js +1 -0
  111. package/dist/esm/properties/ts/odyssey-react-mui_de.js.map +1 -1
  112. package/dist/esm/properties/ts/odyssey-react-mui_el.js +1 -0
  113. package/dist/esm/properties/ts/odyssey-react-mui_el.js.map +1 -1
  114. package/dist/esm/properties/ts/odyssey-react-mui_es.js +1 -0
  115. package/dist/esm/properties/ts/odyssey-react-mui_es.js.map +1 -1
  116. package/dist/esm/properties/ts/odyssey-react-mui_fi.js +1 -0
  117. package/dist/esm/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  118. package/dist/esm/properties/ts/odyssey-react-mui_fr.js +1 -0
  119. package/dist/esm/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  120. package/dist/esm/properties/ts/odyssey-react-mui_ht.js +1 -0
  121. package/dist/esm/properties/ts/odyssey-react-mui_ht.js.map +1 -1
  122. package/dist/esm/properties/ts/odyssey-react-mui_hu.js +1 -0
  123. package/dist/esm/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  124. package/dist/esm/properties/ts/odyssey-react-mui_id.js +1 -0
  125. package/dist/esm/properties/ts/odyssey-react-mui_id.js.map +1 -1
  126. package/dist/esm/properties/ts/odyssey-react-mui_it.js +1 -0
  127. package/dist/esm/properties/ts/odyssey-react-mui_it.js.map +1 -1
  128. package/dist/esm/properties/ts/odyssey-react-mui_ja.js +1 -0
  129. package/dist/esm/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  130. package/dist/esm/properties/ts/odyssey-react-mui_ko.js +1 -0
  131. package/dist/esm/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  132. package/dist/esm/properties/ts/odyssey-react-mui_ms.js +1 -0
  133. package/dist/esm/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  134. package/dist/esm/properties/ts/odyssey-react-mui_nb.js +1 -0
  135. package/dist/esm/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  136. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js +1 -0
  137. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  138. package/dist/esm/properties/ts/odyssey-react-mui_pl.js +1 -0
  139. package/dist/esm/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  140. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js +1 -0
  141. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  142. package/dist/esm/properties/ts/odyssey-react-mui_ro.js +1 -0
  143. package/dist/esm/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  144. package/dist/esm/properties/ts/odyssey-react-mui_ru.js +1 -0
  145. package/dist/esm/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  146. package/dist/esm/properties/ts/odyssey-react-mui_sv.js +1 -0
  147. package/dist/esm/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  148. package/dist/esm/properties/ts/odyssey-react-mui_th.js +1 -0
  149. package/dist/esm/properties/ts/odyssey-react-mui_th.js.map +1 -1
  150. package/dist/esm/properties/ts/odyssey-react-mui_tr.js +1 -0
  151. package/dist/esm/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  152. package/dist/esm/properties/ts/odyssey-react-mui_uk.js +1 -0
  153. package/dist/esm/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  154. package/dist/esm/properties/ts/odyssey-react-mui_vi.js +1 -0
  155. package/dist/esm/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  156. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js +1 -0
  157. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  158. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js +1 -0
  159. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  160. package/dist/esm/test-selectors/getByQuerySelector.js +1 -1
  161. package/dist/esm/test-selectors/getByQuerySelector.js.map +1 -1
  162. package/dist/esm/test-selectors/testSelector.js.map +1 -1
  163. package/dist/esm/ui-shell/NarrowUiShellContent.js +3 -2
  164. package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -1
  165. package/dist/esm/ui-shell/SideNav/SideNav.js +8 -4
  166. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  167. package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
  168. package/dist/esm/ui-shell/UiShell.js +5 -2
  169. package/dist/esm/ui-shell/UiShell.js.map +1 -1
  170. package/dist/esm/ui-shell/WideUiShellContent.js +3 -2
  171. package/dist/esm/ui-shell/WideUiShellContent.js.map +1 -1
  172. package/dist/esm/ui-shell/uiShellContentTypes.js.map +1 -1
  173. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
  174. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
  175. package/dist/index.cjs +1 -1
  176. package/dist/index.mjs +1 -1
  177. package/dist/index.scss +1 -1
  178. package/dist/tsconfig.production.tsbuildinfo +1 -1
  179. package/dist/types/EmptyState.d.ts.map +1 -1
  180. package/dist/types/Pagination/Pagination.d.ts +1 -0
  181. package/dist/types/Pagination/Pagination.d.ts.map +1 -1
  182. package/dist/types/addSpecificity.d.ts +38 -0
  183. package/dist/types/addSpecificity.d.ts.map +1 -0
  184. package/dist/types/i18n.d.ts +27 -0
  185. package/dist/types/i18n.d.ts.map +1 -1
  186. package/dist/types/labs/DatePickers/DateTimePicker.d.ts +3 -0
  187. package/dist/types/labs/DatePickers/DateTimePicker.d.ts.map +1 -1
  188. package/dist/types/labs/DatePickers/dateTimePickerTheme.d.ts.map +1 -1
  189. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts +2 -1
  190. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts.map +1 -1
  191. package/dist/types/labs/OdysseyPickers/Picker.d.ts +6 -7
  192. package/dist/types/labs/OdysseyPickers/Picker.d.ts.map +1 -1
  193. package/dist/types/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts.map +1 -1
  194. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts +1 -0
  195. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  196. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts +1 -0
  197. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  198. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts +1 -0
  199. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  200. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts +1 -0
  201. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  202. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts +1 -0
  203. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  204. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts +1 -0
  205. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  206. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts +1 -0
  207. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  208. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts +1 -0
  209. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -1
  210. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts +1 -0
  211. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  212. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts +1 -0
  213. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  214. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts +1 -0
  215. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  216. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts +1 -0
  217. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  218. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts +1 -0
  219. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  220. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts +1 -0
  221. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  222. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts +1 -0
  223. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  224. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts +1 -0
  225. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  226. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts +1 -0
  227. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  228. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts +1 -0
  229. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  230. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts +1 -0
  231. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  232. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts +1 -0
  233. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  234. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts +1 -0
  235. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  236. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts +1 -0
  237. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  238. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts +1 -0
  239. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  240. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts +1 -0
  241. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  242. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts +1 -0
  243. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  244. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts +1 -0
  245. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  246. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts +1 -0
  247. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  248. package/dist/types/test-selectors/getByQuerySelector.d.ts +73 -73
  249. package/dist/types/test-selectors/getByQuerySelector.d.ts.map +1 -1
  250. package/dist/types/test-selectors/testSelector.d.ts +1 -1
  251. package/dist/types/test-selectors/testSelector.d.ts.map +1 -1
  252. package/dist/types/ui-shell/NarrowUiShellContent.d.ts +1 -1
  253. package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -1
  254. package/dist/types/ui-shell/SideNav/SideNav.d.ts +1 -1
  255. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  256. package/dist/types/ui-shell/SideNav/types.d.ts +5 -1
  257. package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
  258. package/dist/types/ui-shell/UiShell.d.ts.map +1 -1
  259. package/dist/types/ui-shell/WideUiShellContent.d.ts +1 -1
  260. package/dist/types/ui-shell/WideUiShellContent.d.ts.map +1 -1
  261. package/dist/types/ui-shell/uiShellContentTypes.d.ts +4 -0
  262. package/dist/types/ui-shell/uiShellContentTypes.d.ts.map +1 -1
  263. package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
  264. package/package.json +15 -15
@@ -120,6 +120,7 @@ const translation = exports.translation = {
120
120
  "pagination.rowsperpage": "每頁列數",
121
121
  "pagination.rowswithtotal": "第 {{firstRow}}-{{lastRow}} 列,總共 {{totalRows}} 列",
122
122
  "pagination.rowswithouttotal": "第 {{firstRow}}-{{lastRow}} 列",
123
+ "pagination.totalrows": "{{totalRows}} 列",
123
124
  "table.actions.selectall": "全選",
124
125
  "table.actions.selectnone": "沒有選取",
125
126
  "table.actions.selectsome": "已選取 {{selectedRowCount}} 個",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_zh_TW.cjs","names":["translation","exports"],"sources":["../../../../src/properties/ts/odyssey-react-mui_zh_TW.ts"],"sourcesContent":["export const translation = {\"navigation.label\":\"主要導覽\",\"navigation.footer\":\"導覽次要連結\",\"navigation.drag.handle\":\"拖曳控點\",\"sortable.list.drag.start\":\"已選擇可拖曳項目 {{activeId}}\",\"sortable.list.drag.moved.over\":\"可拖曳項目 {{activeId}} 已移至可放置區域上方 {{overId}}\",\"sortable.list.drag.nolonger.over\":\"可拖曳項目 {{activeId}} 不再位於可放置區域上方\",\"sortable.list.drag.end.dropped.over\":\"可拖曳項目 {{activeId}} 已放置在可放置區域上方 {{overId}}\",\"sortable.list.drag.end.dropped\":\"可拖曳項目 {{activeId}} 已放置\",\"sortable.list.drag.cancel\":\"拖曳操作已取消。可拖曳項目 {{activeId}} 已放置\",\"breadcrumbs.home.text\":\"首頁\",\"breadcrumbs.label.text\":\"軌跡\",\"close.text\":\"關閉\",\"clear.text\":\"清除\",\"open.text\":\"開啟\",\"autocomplete.nooptions\":\"沒有選項\",\"picker.calendar.navigation.nextmonth\":\"下個月\",\"picker.calendar.navigation.previousmonth\":\"上個月\",\"picker.date.toolbar.title\":\"已選取日期\",\"picker.daterange.toolbar.title\":\"選取日期範圍\",\"picker.datetime.toolbar.title\":\"選取日期與時間\",\"picker.error.invalid\":\"修正日期格式,或從行事曆中選取日期。\",\"picker.error.mindate\":\"輸入的日期早於允許的日期。從行事曆中的可用範圍選取日期。\",\"picker.error.maxdate\":\"輸入的日期晚於允許的日期。從行事曆中的可用範圍選取日期。\",\"picker.field.placeholder.day\":\"DD\",\"picker.field.placeholder.hours\":\"hh\",\"picker.field.placeholder.meridiem\":\"aa\",\"picker.field.placeholder.minutes\":\"mm\",\"picker.field.placeholder.month\":\"MM\",\"picker.field.placeholder.seconds\":\"ss\",\"picker.field.placeholder.year\":\"YYYY\",\"picker.labels.action.apply\":\"套用\",\"picker.labels.action.cancel\":\"取消\",\"picker.labels.action.today\":\"今天\",\"picker.labels.clock.empty\":\"沒有選取時間\",\"picker.labels.clock.hours\":\"小時\",\"picker.labels.clock.minutes\":\"分鐘\",\"picker.labels.clock.seconds\":\"秒\",\"picker.labels.clock.selected\":\"選取的時間是\",\"picker.labels.date.choose\":\"選擇日期\",\"picker.labels.date.selected\":\"選取的日期是\",\"picker.labels.empty\":\"空白\",\"picker.labels.field.clear\":\"清除值\",\"picker.labels.range.end\":\"結束\",\"picker.labels.range.enddate\":\"結束日期\",\"picker.labels.range.endtime\":\"結束時間\",\"picker.labels.range.start\":\"開始\",\"picker.labels.range.startdate\":\"開始日期\",\"picker.labels.range.starttime\":\"開始時間\",\"picker.labels.select\":\"選取\",\"picker.labels.table.date\":\"挑選日期\",\"picker.labels.table.time\":\"挑選時間\",\"picker.labels.time.choose\":\"選擇時間\",\"picker.labels.time.selected\":\"選取的時間是\",\"picker.time.toolbar.title\":\"選取時間\",\"picker.view.name.day\":\"天\",\"picker.view.name.hours\":\"小時\",\"picker.view.name.meridiem\":\"十二小時制\",\"picker.view.name.minutes\":\"分鐘\",\"picker.view.name.month\":\"個月\",\"picker.view.name.seconds\":\"秒\",\"picker.view.name.weekday\":\"星期幾\",\"picker.view.name.year\":\"年\",\"picker.view.navigation.open.nextview\":\"開啟下一個檢視\",\"picker.view.navigation.open.previousview\":\"開啟上一個檢視\",\"picker.view.navigation.switch.calendarview\":\"年檢視已開啟,切換至行事曆檢視\",\"picker.view.navigation.switch.yearview\":\"行事曆檢視已開啟,切換至年檢視\",\"fielderror.screenreader.text\":\"錯誤\",\"fieldlabel.optional.text\":\"選擇性\",\"fieldlabel.required.text\":\"必要\",\"filters.clear.label\":\"清除篩選條件\",\"filters.submit.label\":\"提交\",\"filters.filter.any\":\"任何\",\"filters.filter.clear\":\"清除篩選條件\",\"filters.filters.arialabel\":\"篩選條件\",\"filters.menuitem.any\":\"任何 {{label}}\",\"filters.menuitem.selected\":\"已選取 {{selected}}\",\"filters.search.label\":\"搜尋\",\"fileupload.button.text\":\"新增檔案\",\"fileupload.prompt.text\":\"將檔案拖放到此處或按一下以新增檔案\",\"fileupload.removefile.text\":\"移除檔案\",\"passwordfield.icon.label.hide\":\"隱藏密碼\",\"passwordfield.icon.label.show\":\"顯示密碼\",\"severity.error\":\"錯誤\",\"severity.info\":\"資訊\",\"severity.success\":\"成功\",\"severity.warning\":\"警告\",\"sidenav.toggle.expand\":\"開啟導覽\",\"sidenav.toggle.collapse\":\"關閉導覽\",\"switch.active\":\"作用中\",\"switch.inactive\":\"非作用中\",\"table.columnvisibility.arialabel\":\"顯示/隱藏欄\",\"table.density.arialabel\":\"表格密度\",\"table.draghandle.arialabel\":\"拖曳列以重新排序。或者按下空白鍵或 Enter 鍵以開始和停止重新排序,按下 Esc 鍵可取消。\",\"table.draghandle.tooltip\":\"拖曳列或按下空白鍵/Enter 鍵即可開始和停止重新排序\",\"table.actions\":\"動作\",\"table.error\":\"載入資料時發生錯誤。\",\"table.fetchedrows.text\":\"已擷取 {{totalRows}} 列\",\"table.fetchedrows.text_plural\":\"已擷取總共 {{totalRows}} 列\",\"table.moreactions.arialabel\":\"更多動作\",\"table.noresults.heading\":\"沒有結果。\",\"table.noresults.text\":\"請嘗試不同的查詢。\",\"table.reorder.backward\":\"往後傳送\",\"table.reorder.forward\":\"往前帶\",\"table.reorder.toback\":\"向後傳送\",\"table.reorder.tofront\":\"向前帶\",\"table.rows.text\":\"{{totalRows}} 列\",\"table.rows.text_plural\":\"{{totalRows}} 列\",\"pagination.label\":\"分頁\",\"pagination.loadmore\":\"顯示更多\",\"pagination.next\":\"下一頁\",\"pagination.previous\":\"上一頁\",\"pagination.page\":\"頁面\",\"pagination.rowsperpage\":\"每頁列數\",\"pagination.rowswithtotal\":\"第 {{firstRow}}-{{lastRow}} 列,總共 {{totalRows}} 列\",\"pagination.rowswithouttotal\":\"第 {{firstRow}}-{{lastRow}} 列\",\"table.actions.selectall\":\"全選\",\"table.actions.selectnone\":\"沒有選取\",\"table.actions.selectsome\":\"已選取 {{selectedRowCount}} 個\",\"table.rowexpansion.expand\":\"展開\",\"table.rowexpansion.expandall\":\"全部展開\",\"table.rowexpansion.collapse\":\"摺疊\",\"table.rowexpansion.collapseall\":\"全部摺疊\",\"dataview.layout.table\":\"表格\",\"dataview.layout.grid\":\"網格\",\"dataview.layout.list\":\"清單\",\"topnav.helpicon\":\"說明頁面\",\"topnav.settingsicon\":\"設定頁面\"};"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"odyssey-react-mui_zh_TW.cjs","names":["translation","exports"],"sources":["../../../../src/properties/ts/odyssey-react-mui_zh_TW.ts"],"sourcesContent":["export const translation = {\"navigation.label\":\"主要導覽\",\"navigation.footer\":\"導覽次要連結\",\"navigation.drag.handle\":\"拖曳控點\",\"sortable.list.drag.start\":\"已選擇可拖曳項目 {{activeId}}\",\"sortable.list.drag.moved.over\":\"可拖曳項目 {{activeId}} 已移至可放置區域上方 {{overId}}\",\"sortable.list.drag.nolonger.over\":\"可拖曳項目 {{activeId}} 不再位於可放置區域上方\",\"sortable.list.drag.end.dropped.over\":\"可拖曳項目 {{activeId}} 已放置在可放置區域上方 {{overId}}\",\"sortable.list.drag.end.dropped\":\"可拖曳項目 {{activeId}} 已放置\",\"sortable.list.drag.cancel\":\"拖曳操作已取消。可拖曳項目 {{activeId}} 已放置\",\"breadcrumbs.home.text\":\"首頁\",\"breadcrumbs.label.text\":\"軌跡\",\"close.text\":\"關閉\",\"clear.text\":\"清除\",\"open.text\":\"開啟\",\"autocomplete.nooptions\":\"沒有選項\",\"picker.calendar.navigation.nextmonth\":\"下個月\",\"picker.calendar.navigation.previousmonth\":\"上個月\",\"picker.date.toolbar.title\":\"已選取日期\",\"picker.daterange.toolbar.title\":\"選取日期範圍\",\"picker.datetime.toolbar.title\":\"選取日期與時間\",\"picker.error.invalid\":\"修正日期格式,或從行事曆中選取日期。\",\"picker.error.mindate\":\"輸入的日期早於允許的日期。從行事曆中的可用範圍選取日期。\",\"picker.error.maxdate\":\"輸入的日期晚於允許的日期。從行事曆中的可用範圍選取日期。\",\"picker.field.placeholder.day\":\"DD\",\"picker.field.placeholder.hours\":\"hh\",\"picker.field.placeholder.meridiem\":\"aa\",\"picker.field.placeholder.minutes\":\"mm\",\"picker.field.placeholder.month\":\"MM\",\"picker.field.placeholder.seconds\":\"ss\",\"picker.field.placeholder.year\":\"YYYY\",\"picker.labels.action.apply\":\"套用\",\"picker.labels.action.cancel\":\"取消\",\"picker.labels.action.today\":\"今天\",\"picker.labels.clock.empty\":\"沒有選取時間\",\"picker.labels.clock.hours\":\"小時\",\"picker.labels.clock.minutes\":\"分鐘\",\"picker.labels.clock.seconds\":\"秒\",\"picker.labels.clock.selected\":\"選取的時間是\",\"picker.labels.date.choose\":\"選擇日期\",\"picker.labels.date.selected\":\"選取的日期是\",\"picker.labels.empty\":\"空白\",\"picker.labels.field.clear\":\"清除值\",\"picker.labels.range.end\":\"結束\",\"picker.labels.range.enddate\":\"結束日期\",\"picker.labels.range.endtime\":\"結束時間\",\"picker.labels.range.start\":\"開始\",\"picker.labels.range.startdate\":\"開始日期\",\"picker.labels.range.starttime\":\"開始時間\",\"picker.labels.select\":\"選取\",\"picker.labels.table.date\":\"挑選日期\",\"picker.labels.table.time\":\"挑選時間\",\"picker.labels.time.choose\":\"選擇時間\",\"picker.labels.time.selected\":\"選取的時間是\",\"picker.time.toolbar.title\":\"選取時間\",\"picker.view.name.day\":\"天\",\"picker.view.name.hours\":\"小時\",\"picker.view.name.meridiem\":\"十二小時制\",\"picker.view.name.minutes\":\"分鐘\",\"picker.view.name.month\":\"個月\",\"picker.view.name.seconds\":\"秒\",\"picker.view.name.weekday\":\"星期幾\",\"picker.view.name.year\":\"年\",\"picker.view.navigation.open.nextview\":\"開啟下一個檢視\",\"picker.view.navigation.open.previousview\":\"開啟上一個檢視\",\"picker.view.navigation.switch.calendarview\":\"年檢視已開啟,切換至行事曆檢視\",\"picker.view.navigation.switch.yearview\":\"行事曆檢視已開啟,切換至年檢視\",\"fielderror.screenreader.text\":\"錯誤\",\"fieldlabel.optional.text\":\"選擇性\",\"fieldlabel.required.text\":\"必要\",\"filters.clear.label\":\"清除篩選條件\",\"filters.submit.label\":\"提交\",\"filters.filter.any\":\"任何\",\"filters.filter.clear\":\"清除篩選條件\",\"filters.filters.arialabel\":\"篩選條件\",\"filters.menuitem.any\":\"任何 {{label}}\",\"filters.menuitem.selected\":\"已選取 {{selected}}\",\"filters.search.label\":\"搜尋\",\"fileupload.button.text\":\"新增檔案\",\"fileupload.prompt.text\":\"將檔案拖放到此處或按一下以新增檔案\",\"fileupload.removefile.text\":\"移除檔案\",\"passwordfield.icon.label.hide\":\"隱藏密碼\",\"passwordfield.icon.label.show\":\"顯示密碼\",\"severity.error\":\"錯誤\",\"severity.info\":\"資訊\",\"severity.success\":\"成功\",\"severity.warning\":\"警告\",\"sidenav.toggle.expand\":\"開啟導覽\",\"sidenav.toggle.collapse\":\"關閉導覽\",\"switch.active\":\"作用中\",\"switch.inactive\":\"非作用中\",\"table.columnvisibility.arialabel\":\"顯示/隱藏欄\",\"table.density.arialabel\":\"表格密度\",\"table.draghandle.arialabel\":\"拖曳列以重新排序。或者按下空白鍵或 Enter 鍵以開始和停止重新排序,按下 Esc 鍵可取消。\",\"table.draghandle.tooltip\":\"拖曳列或按下空白鍵/Enter 鍵即可開始和停止重新排序\",\"table.actions\":\"動作\",\"table.error\":\"載入資料時發生錯誤。\",\"table.fetchedrows.text\":\"已擷取 {{totalRows}} 列\",\"table.fetchedrows.text_plural\":\"已擷取總共 {{totalRows}} 列\",\"table.moreactions.arialabel\":\"更多動作\",\"table.noresults.heading\":\"沒有結果。\",\"table.noresults.text\":\"請嘗試不同的查詢。\",\"table.reorder.backward\":\"往後傳送\",\"table.reorder.forward\":\"往前帶\",\"table.reorder.toback\":\"向後傳送\",\"table.reorder.tofront\":\"向前帶\",\"table.rows.text\":\"{{totalRows}} 列\",\"table.rows.text_plural\":\"{{totalRows}} 列\",\"pagination.label\":\"分頁\",\"pagination.loadmore\":\"顯示更多\",\"pagination.next\":\"下一頁\",\"pagination.previous\":\"上一頁\",\"pagination.page\":\"頁面\",\"pagination.rowsperpage\":\"每頁列數\",\"pagination.rowswithtotal\":\"第 {{firstRow}}-{{lastRow}} 列,總共 {{totalRows}} 列\",\"pagination.rowswithouttotal\":\"第 {{firstRow}}-{{lastRow}} 列\",\"pagination.totalrows\":\"{{totalRows}} 列\",\"table.actions.selectall\":\"全選\",\"table.actions.selectnone\":\"沒有選取\",\"table.actions.selectsome\":\"已選取 {{selectedRowCount}} 個\",\"table.rowexpansion.expand\":\"展開\",\"table.rowexpansion.expandall\":\"全部展開\",\"table.rowexpansion.collapse\":\"摺疊\",\"table.rowexpansion.collapseall\":\"全部摺疊\",\"dataview.layout.table\":\"表格\",\"dataview.layout.grid\":\"網格\",\"dataview.layout.list\":\"清單\",\"topnav.helpicon\":\"說明頁面\",\"topnav.settingsicon\":\"設定頁面\"};"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.getByTextQuerySelector = exports.getByRoleQuerySelector = exports.getByQuerySelector = exports.executeTestingLibraryMethod = void 0;
7
- var _dom = require("@testing-library/dom");
7
+ var _react = require("@testing-library/react");
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.")
@@ -29,7 +29,7 @@ const getByQuerySelector = ({
29
29
  selectionMethod,
30
30
  text
31
31
  }) => {
32
- const canvas = (0, _dom.within)(element);
32
+ const canvas = (0, _react.within)(element);
33
33
  const capturedElement = selectionMethod === "ByRole" ? executeTestingLibraryMethod({
34
34
  canvas,
35
35
  queryMethod,
@@ -1 +1 @@
1
- {"version":3,"file":"getByQuerySelector.cjs","names":["_dom","require","executeTestingLibraryMethod","canvas","queryMethod","selectionMethod","concat","exports","getByQuerySelector","element","queryOptions","role","text","within","capturedElement","getByRoleQuerySelector","getByTextQuerySelector"],"sources":["../../../src/test-selectors/getByQuerySelector.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 {\n queries,\n within,\n type BoundFunctions,\n type ByRoleMatcher,\n type ByRoleOptions,\n type Matcher,\n type SelectorMatcherOptions,\n} from \"@testing-library/dom\";\n\nexport type RoleSelectorMethod = \"ByRole\";\n\nexport type TextSelectorMethod =\n | \"ByLabelText\"\n | \"ByPlaceholderText\"\n | \"ByText\"\n | \"ByAltText\"\n | \"ByTitle\";\n\nexport type QueryMethod = \"find\" | \"get\" | \"query\";\n\nexport type ByRoleMethods =\n | \"getByRole\"\n // | \"getAllByRole\"\n | \"queryByRole\";\n// | \"queryAllByRole\"\n// | \"findByRole\"\n// | \"findAllByRole\"\n\nexport type ByTextMethods =\n | \"getByLabelText\"\n // | \"getAllByLabelText\"\n | \"queryByLabelText\"\n // | \"queryAllByLabelText\"\n // | \"findByLabelText\"\n // | \"findAllByLabelText\"\n | \"getByPlaceholderText\"\n // | \"getAllByPlaceholderText\"\n | \"queryByPlaceholderText\"\n // | \"queryAllByPlaceholderText\"\n // | \"findByPlaceholderText\"\n // | \"findAllByPlaceholderText\"\n | \"getByText\"\n // | \"getAllByText\"\n | \"queryByText\"\n // | \"queryAllByText\"\n // | \"findByText\"\n // | \"findAllByText\"\n | \"getByAltText\"\n // | \"getAllByAltText\"\n | \"queryByAltText\"\n // | \"queryAllByAltText\"\n // | \"findByAltText\"\n // | \"findAllByAltText\"\n | \"getByTitle\"\n // | \"getAllByTitle\"\n | \"queryByTitle\";\n// | \"queryAllByTitle\"\n// | \"findByTitle\"\n// | \"findAllByTitle\"\n\nexport const executeTestingLibraryMethod = <\n CanvasMethods extends keyof BoundFunctions<typeof queries>,\n>({\n canvas,\n queryMethod,\n selectionMethod,\n}: {\n canvas: Pick<BoundFunctions<typeof queries>, CanvasMethods>;\n queryMethod: QueryMethod;\n selectionMethod: RoleSelectorMethod | TextSelectorMethod;\n}) =>\n canvas[\n queryMethod.concat(selectionMethod) as keyof Pick<\n BoundFunctions<typeof queries>,\n CanvasMethods\n >\n ];\n\nexport const getByQuerySelector = <\n LocalQueryMethod extends QueryMethod = \"get\",\n>({\n element,\n queryMethod,\n queryOptions,\n role,\n selectionMethod,\n text,\n}: {\n element: HTMLElement;\n queryMethod: LocalQueryMethod;\n} & (\n | {\n queryOptions?: ByRoleOptions;\n role: ByRoleMatcher;\n selectionMethod: RoleSelectorMethod;\n text?: never;\n }\n | {\n queryOptions?: SelectorMatcherOptions;\n role?: never;\n selectionMethod: TextSelectorMethod;\n text: Matcher;\n }\n)) => {\n const canvas = within(element);\n\n const capturedElement =\n selectionMethod === \"ByRole\"\n ? executeTestingLibraryMethod<ByRoleMethods>({\n canvas,\n queryMethod,\n selectionMethod,\n })(role, queryOptions)\n : executeTestingLibraryMethod<ByTextMethods>({\n canvas,\n queryMethod,\n selectionMethod,\n })(text, queryOptions);\n\n return capturedElement as LocalQueryMethod extends \"get\"\n ? HTMLElement\n : HTMLElement | null;\n};\n\nexport const getByRoleQuerySelector = <LocalQueryMethod extends QueryMethod>({\n element,\n queryMethod,\n queryOptions,\n role,\n}: {\n element: HTMLElement;\n queryMethod: LocalQueryMethod;\n queryOptions?: ByRoleOptions;\n role: ByRoleMatcher;\n}) =>\n getByQuerySelector({\n element,\n queryMethod,\n queryOptions,\n role,\n selectionMethod: \"ByRole\",\n });\n\nexport const getByTextQuerySelector = <LocalQueryMethod extends QueryMethod>({\n element,\n queryMethod,\n queryOptions,\n selectionMethod,\n text,\n}: {\n element: HTMLElement;\n queryMethod: LocalQueryMethod;\n queryOptions?: SelectorMatcherOptions;\n selectionMethod: TextSelectorMethod;\n text: Matcher;\n}) =>\n getByQuerySelector({\n element,\n queryMethod,\n queryOptions,\n selectionMethod,\n text,\n });\n"],"mappings":";;;;;;AAYA,IAAAA,IAAA,GAAAC,OAAA;AAZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GA+DO,MAAMC,2BAA2B,GAAGA,CAEzC;EACAC,MAAM;EACNC,WAAW;EACXC;AAKF,CAAC,KACCF,MAAM,CACJC,WAAW,CAACE,MAAM,CAACD,eAAe,CAAC,CAIpC;AAACE,OAAA,CAAAL,2BAAA,GAAAA,2BAAA;AAEG,MAAMM,kBAAkB,GAAGA,CAEhC;EACAC,OAAO;EACPL,WAAW;EACXM,YAAY;EACZC,IAAI;EACJN,eAAe;EACfO;AAiBF,CAAC,KAAK;EACJ,MAAMT,MAAM,GAAG,IAAAU,WAAM,EAACJ,OAAO,CAAC;EAE9B,MAAMK,eAAe,GACnBT,eAAe,KAAK,QAAQ,GACxBH,2BAA2B,CAAgB;IACzCC,MAAM;IACNC,WAAW;IACXC;EACF,CAAC,CAAC,CAACM,IAAI,EAAED,YAAY,CAAC,GACtBR,2BAA2B,CAAgB;IACzCC,MAAM;IACNC,WAAW;IACXC;EACF,CAAC,CAAC,CAACO,IAAI,EAAEF,YAAY,CAAC;EAE5B,OAAOI,eAAe;AAGxB,CAAC;AAACP,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AAEK,MAAMO,sBAAsB,GAAGA,CAAuC;EAC3EN,OAAO;EACPL,WAAW;EACXM,YAAY;EACZC;AAMF,CAAC,KACCH,kBAAkB,CAAC;EACjBC,OAAO;EACPL,WAAW;EACXM,YAAY;EACZC,IAAI;EACJN,eAAe,EAAE;AACnB,CAAC,CAAC;AAACE,OAAA,CAAAQ,sBAAA,GAAAA,sBAAA;AAEE,MAAMC,sBAAsB,GAAGA,CAAuC;EAC3EP,OAAO;EACPL,WAAW;EACXM,YAAY;EACZL,eAAe;EACfO;AAOF,CAAC,KACCJ,kBAAkB,CAAC;EACjBC,OAAO;EACPL,WAAW;EACXM,YAAY;EACZL,eAAe;EACfO;AACF,CAAC,CAAC;AAACL,OAAA,CAAAS,sBAAA,GAAAA,sBAAA","ignoreList":[]}
1
+ {"version":3,"file":"getByQuerySelector.cjs","names":["_react","require","executeTestingLibraryMethod","canvas","queryMethod","selectionMethod","concat","exports","getByQuerySelector","element","queryOptions","role","text","within","capturedElement","getByRoleQuerySelector","getByTextQuerySelector"],"sources":["../../../src/test-selectors/getByQuerySelector.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 {\n queries,\n within,\n type BoundFunctions,\n type ByRoleMatcher,\n type ByRoleOptions,\n type Matcher,\n type SelectorMatcherOptions,\n} from \"@testing-library/react\";\n\nexport type RoleSelectorMethod = \"ByRole\";\n\nexport type TextSelectorMethod =\n | \"ByLabelText\"\n | \"ByPlaceholderText\"\n | \"ByText\"\n | \"ByAltText\"\n | \"ByTitle\";\n\nexport type QueryMethod = \"find\" | \"get\" | \"query\";\n\nexport type ByRoleMethods =\n | \"getByRole\"\n // | \"getAllByRole\"\n | \"queryByRole\";\n// | \"queryAllByRole\"\n// | \"findByRole\"\n// | \"findAllByRole\"\n\nexport type ByTextMethods =\n | \"getByLabelText\"\n // | \"getAllByLabelText\"\n | \"queryByLabelText\"\n // | \"queryAllByLabelText\"\n // | \"findByLabelText\"\n // | \"findAllByLabelText\"\n | \"getByPlaceholderText\"\n // | \"getAllByPlaceholderText\"\n | \"queryByPlaceholderText\"\n // | \"queryAllByPlaceholderText\"\n // | \"findByPlaceholderText\"\n // | \"findAllByPlaceholderText\"\n | \"getByText\"\n // | \"getAllByText\"\n | \"queryByText\"\n // | \"queryAllByText\"\n // | \"findByText\"\n // | \"findAllByText\"\n | \"getByAltText\"\n // | \"getAllByAltText\"\n | \"queryByAltText\"\n // | \"queryAllByAltText\"\n // | \"findByAltText\"\n // | \"findAllByAltText\"\n | \"getByTitle\"\n // | \"getAllByTitle\"\n | \"queryByTitle\";\n// | \"queryAllByTitle\"\n// | \"findByTitle\"\n// | \"findAllByTitle\"\n\nexport const executeTestingLibraryMethod = <\n CanvasMethods extends keyof BoundFunctions<typeof queries>,\n>({\n canvas,\n queryMethod,\n selectionMethod,\n}: {\n canvas: Pick<BoundFunctions<typeof queries>, CanvasMethods>;\n queryMethod: QueryMethod;\n selectionMethod: RoleSelectorMethod | TextSelectorMethod;\n}) =>\n canvas[\n queryMethod.concat(selectionMethod) as keyof Pick<\n BoundFunctions<typeof queries>,\n CanvasMethods\n >\n ];\n\nexport const getByQuerySelector = <\n LocalQueryMethod extends QueryMethod = \"get\",\n>({\n element,\n queryMethod,\n queryOptions,\n role,\n selectionMethod,\n text,\n}: {\n element: HTMLElement;\n queryMethod: LocalQueryMethod;\n} & (\n | {\n queryOptions?: ByRoleOptions;\n role: ByRoleMatcher;\n selectionMethod: RoleSelectorMethod;\n text?: never;\n }\n | {\n queryOptions?: SelectorMatcherOptions;\n role?: never;\n selectionMethod: TextSelectorMethod;\n text: Matcher;\n }\n)) => {\n const canvas = within(element);\n\n const capturedElement =\n selectionMethod === \"ByRole\"\n ? executeTestingLibraryMethod<ByRoleMethods>({\n canvas,\n queryMethod,\n selectionMethod,\n })(role, queryOptions)\n : executeTestingLibraryMethod<ByTextMethods>({\n canvas,\n queryMethod,\n selectionMethod,\n })(text, queryOptions);\n\n return capturedElement as LocalQueryMethod extends \"get\"\n ? HTMLElement\n : HTMLElement | null;\n};\n\nexport const getByRoleQuerySelector = <LocalQueryMethod extends QueryMethod>({\n element,\n queryMethod,\n queryOptions,\n role,\n}: {\n element: HTMLElement;\n queryMethod: LocalQueryMethod;\n queryOptions?: ByRoleOptions;\n role: ByRoleMatcher;\n}) =>\n getByQuerySelector({\n element,\n queryMethod,\n queryOptions,\n role,\n selectionMethod: \"ByRole\",\n });\n\nexport const getByTextQuerySelector = <LocalQueryMethod extends QueryMethod>({\n element,\n queryMethod,\n queryOptions,\n selectionMethod,\n text,\n}: {\n element: HTMLElement;\n queryMethod: LocalQueryMethod;\n queryOptions?: SelectorMatcherOptions;\n selectionMethod: TextSelectorMethod;\n text: Matcher;\n}) =>\n getByQuerySelector({\n element,\n queryMethod,\n queryOptions,\n selectionMethod,\n text,\n });\n"],"mappings":";;;;;;AAYA,IAAAA,MAAA,GAAAC,OAAA;AAZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GA+DO,MAAMC,2BAA2B,GAAGA,CAEzC;EACAC,MAAM;EACNC,WAAW;EACXC;AAKF,CAAC,KACCF,MAAM,CACJC,WAAW,CAACE,MAAM,CAACD,eAAe,CAAC,CAIpC;AAACE,OAAA,CAAAL,2BAAA,GAAAA,2BAAA;AAEG,MAAMM,kBAAkB,GAAGA,CAEhC;EACAC,OAAO;EACPL,WAAW;EACXM,YAAY;EACZC,IAAI;EACJN,eAAe;EACfO;AAiBF,CAAC,KAAK;EACJ,MAAMT,MAAM,GAAG,IAAAU,aAAM,EAACJ,OAAO,CAAC;EAE9B,MAAMK,eAAe,GACnBT,eAAe,KAAK,QAAQ,GACxBH,2BAA2B,CAAgB;IACzCC,MAAM;IACNC,WAAW;IACXC;EACF,CAAC,CAAC,CAACM,IAAI,EAAED,YAAY,CAAC,GACtBR,2BAA2B,CAAgB;IACzCC,MAAM;IACNC,WAAW;IACXC;EACF,CAAC,CAAC,CAACO,IAAI,EAAEF,YAAY,CAAC;EAE5B,OAAOI,eAAe;AAGxB,CAAC;AAACP,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AAEK,MAAMO,sBAAsB,GAAGA,CAAuC;EAC3EN,OAAO;EACPL,WAAW;EACXM,YAAY;EACZC;AAMF,CAAC,KACCH,kBAAkB,CAAC;EACjBC,OAAO;EACPL,WAAW;EACXM,YAAY;EACZC,IAAI;EACJN,eAAe,EAAE;AACnB,CAAC,CAAC;AAACE,OAAA,CAAAQ,sBAAA,GAAAA,sBAAA;AAEE,MAAMC,sBAAsB,GAAGA,CAAuC;EAC3EP,OAAO;EACPL,WAAW;EACXM,YAAY;EACZL,eAAe;EACfO;AAOF,CAAC,KACCJ,kBAAkB,CAAC;EACjBC,OAAO;EACPL,WAAW;EACXM,YAAY;EACZL,eAAe;EACfO;AACF,CAAC,CAAC;AAACL,OAAA,CAAAS,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"testSelector.cjs","names":[],"sources":["../../../src/test-selectors/testSelector.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 {\n type ByRoleOptions,\n type SelectorMatcherOptions,\n} from \"@testing-library/dom\";\n\nimport {\n type RoleSelectorMethod,\n type TextSelectorMethod,\n} from \"./getByQuerySelector.js\";\n\n/**\n * We can't use React's `AriaRole` because it allows any string value. We want to be very specific. This is otherwise copied straight from React's code.\n * @see https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/react/index.d.ts#L2815\n */\nexport type AriaRole =\n | \"alert\"\n | \"alertdialog\"\n | \"application\"\n | \"article\"\n | \"banner\"\n | \"button\"\n | \"cell\"\n | \"checkbox\"\n | \"columnheader\"\n | \"combobox\"\n | \"complementary\"\n | \"contentinfo\"\n | \"definition\"\n | \"dialog\"\n | \"directory\"\n | \"document\"\n | \"feed\"\n | \"figure\"\n | \"form\"\n | \"grid\"\n | \"gridcell\"\n | \"group\"\n | \"heading\"\n | \"img\"\n | \"link\"\n | \"list\"\n | \"listbox\"\n | \"listitem\"\n | \"log\"\n | \"main\"\n | \"marquee\"\n | \"math\"\n | \"menu\"\n | \"menubar\"\n | \"menuitem\"\n | \"menuitemcheckbox\"\n | \"menuitemradio\"\n | \"navigation\"\n | \"none\"\n | \"note\"\n | \"option\"\n | \"presentation\"\n | \"progressbar\"\n | \"radio\"\n | \"radiogroup\"\n | \"region\"\n | \"row\"\n | \"rowgroup\"\n | \"rowheader\"\n | \"scrollbar\"\n | \"search\"\n | \"searchbox\"\n | \"separator\"\n | \"slider\"\n | \"spinbutton\"\n | \"status\"\n | \"switch\"\n | \"tab\"\n | \"table\"\n | \"tablist\"\n | \"tabpanel\"\n | \"term\"\n | \"textbox\"\n | \"timer\"\n | \"toolbar\"\n | \"tooltip\"\n | \"tree\"\n | \"treegrid\"\n | \"treeitem\";\n\nexport type ControlledElementSelector = { isControlledElement?: true };\n\nexport type RoleSelectorOptions = {\n method: RoleSelectorMethod;\n options: Record<string, keyof ByRoleOptions>;\n role: AriaRole | AriaRole[];\n // | \"UNKNOWN\" // This should be a `Symbol`, but it can't because this is ultimately going to be JSON stringified. This type will allow passing a custom role if the component allows it: `Box`.\n};\n\nexport type TextSelectorOptions = {\n method: TextSelectorMethod;\n options: Record<string, keyof SelectorMatcherOptions>;\n text: string;\n};\n\nexport type ElementSelectorValue = RoleSelectorOptions | TextSelectorOptions;\n\nexport type ElementSelector = {\n elementSelector: ElementSelectorValue;\n};\n\nexport type ElementChildSelectorValue = Record<\n string,\n TestSelector & ControlledElementSelector\n>;\n\nexport type ElementChildSelector = {\n children: ElementChildSelectorValue;\n};\n\nexport type AccessibleTextSelectorValue =\n | \"description\"\n | \"errorMessage\"\n | \"label\";\n\nexport type AccessibleTextSelector = {\n /** An \"accessible -> semantic\" name mapping such as \"`description` -> `hint`\" where \"description\" equates to `\"aria-description\"`. */\n accessibleText: Record<string, AccessibleTextSelectorValue>;\n};\n\nexport type TestSelector =\n | ElementChildSelector\n | ElementSelector\n | (ElementChildSelector & ElementSelector)\n | (AccessibleTextSelector & ElementSelector)\n | (ElementChildSelector & AccessibleTextSelector & ElementSelector);\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"testSelector.cjs","names":[],"sources":["../../../src/test-selectors/testSelector.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 {\n type ByRoleOptions,\n type SelectorMatcherOptions,\n} from \"@testing-library/react\";\n\nimport {\n type RoleSelectorMethod,\n type TextSelectorMethod,\n} from \"./getByQuerySelector.js\";\n\n/**\n * We can't use React's `AriaRole` because it allows any string value. We want to be very specific. This is otherwise copied straight from React's code.\n * @see https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/react/index.d.ts#L2815\n */\nexport type AriaRole =\n | \"alert\"\n | \"alertdialog\"\n | \"application\"\n | \"article\"\n | \"banner\"\n | \"button\"\n | \"cell\"\n | \"checkbox\"\n | \"columnheader\"\n | \"combobox\"\n | \"complementary\"\n | \"contentinfo\"\n | \"definition\"\n | \"dialog\"\n | \"directory\"\n | \"document\"\n | \"feed\"\n | \"figure\"\n | \"form\"\n | \"grid\"\n | \"gridcell\"\n | \"group\"\n | \"heading\"\n | \"img\"\n | \"link\"\n | \"list\"\n | \"listbox\"\n | \"listitem\"\n | \"log\"\n | \"main\"\n | \"marquee\"\n | \"math\"\n | \"menu\"\n | \"menubar\"\n | \"menuitem\"\n | \"menuitemcheckbox\"\n | \"menuitemradio\"\n | \"navigation\"\n | \"none\"\n | \"note\"\n | \"option\"\n | \"presentation\"\n | \"progressbar\"\n | \"radio\"\n | \"radiogroup\"\n | \"region\"\n | \"row\"\n | \"rowgroup\"\n | \"rowheader\"\n | \"scrollbar\"\n | \"search\"\n | \"searchbox\"\n | \"separator\"\n | \"slider\"\n | \"spinbutton\"\n | \"status\"\n | \"switch\"\n | \"tab\"\n | \"table\"\n | \"tablist\"\n | \"tabpanel\"\n | \"term\"\n | \"textbox\"\n | \"timer\"\n | \"toolbar\"\n | \"tooltip\"\n | \"tree\"\n | \"treegrid\"\n | \"treeitem\";\n\nexport type ControlledElementSelector = { isControlledElement?: true };\n\nexport type RoleSelectorOptions = {\n method: RoleSelectorMethod;\n options: Record<string, keyof ByRoleOptions>;\n role: AriaRole | AriaRole[];\n // | \"UNKNOWN\" // This should be a `Symbol`, but it can't because this is ultimately going to be JSON stringified. This type will allow passing a custom role if the component allows it: `Box`.\n};\n\nexport type TextSelectorOptions = {\n method: TextSelectorMethod;\n options: Record<string, keyof SelectorMatcherOptions>;\n text: string;\n};\n\nexport type ElementSelectorValue = RoleSelectorOptions | TextSelectorOptions;\n\nexport type ElementSelector = {\n elementSelector: ElementSelectorValue;\n};\n\nexport type ElementChildSelectorValue = Record<\n string,\n TestSelector & ControlledElementSelector\n>;\n\nexport type ElementChildSelector = {\n children: ElementChildSelectorValue;\n};\n\nexport type AccessibleTextSelectorValue =\n | \"description\"\n | \"errorMessage\"\n | \"label\";\n\nexport type AccessibleTextSelector = {\n /** An \"accessible -> semantic\" name mapping such as \"`description` -> `hint`\" where \"description\" equates to `\"aria-description\"`. */\n accessibleText: Record<string, AccessibleTextSelectorValue>;\n};\n\nexport type TestSelector =\n | ElementChildSelector\n | ElementSelector\n | (ElementChildSelector & ElementSelector)\n | (AccessibleTextSelector & ElementSelector)\n | (ElementChildSelector & AccessibleTextSelector & ElementSelector);\n"],"mappings":"","ignoreList":[]}
@@ -204,6 +204,7 @@ const NarrowUiShellContent = ({
204
204
  appElement,
205
205
  appElementScrollingMode,
206
206
  hasStandardAppContentPadding = true,
207
+ hasSideNavProps,
207
208
  initialVisibleSections = ["TopNav", "SideNav", "AppSwitcher"],
208
209
  onError = console.error,
209
210
  optionalComponents,
@@ -303,14 +304,14 @@ const NarrowUiShellContent = ({
303
304
  }), (0, _jsxRuntime.jsxs)(StyledAppContentArea, {
304
305
  children: [(0, _jsxRuntime.jsxs)(StyledLeftSideContainer, {
305
306
  isOpen: isLeftSideMenuOpen,
306
- children: [initialVisibleSections?.includes("SideNav") && sideNavProps === undefined && (0, _jsxRuntime.jsx)(_reactErrorBoundary.ErrorBoundary, {
307
+ children: [initialVisibleSections?.includes("SideNav") && !hasSideNavProps && (0, _jsxRuntime.jsx)(_reactErrorBoundary.ErrorBoundary, {
307
308
  fallback: null,
308
309
  onError: onError,
309
310
  children: (0, _jsxRuntime.jsx)(_SideNav.SideNav, {
310
311
  isLoading: true,
311
312
  sideNavItems: _uiShellSharedConstants.emptySideNavItems
312
313
  })
313
- }), sideNavProps && (0, _jsxRuntime.jsx)(_reactErrorBoundary.ErrorBoundary, {
314
+ }), hasSideNavProps && sideNavProps && (0, _jsxRuntime.jsx)(_reactErrorBoundary.ErrorBoundary, {
314
315
  fallback: null,
315
316
  onError: onError,
316
317
  children: (0, _jsxRuntime.jsx)(StyledSideNavContainer, {
@@ -1 +1 @@
1
- {"version":3,"file":"NarrowUiShellContent.cjs","names":["_styled","_interopRequireDefault","require","_react","_reactErrorBoundary","_Button","_Close","_More","_InnerAppContainer","_OdysseyDesignTokensContext","_SideNav","_SideNavLogo","_HamburgerMenuIcon","_UiShellProvider","_uiShellSharedConstants","_useScrollState","_useMatchAppElementToUiShellAppArea","_hexToRgb","_jsxRuntime","e","__esModule","default","StyledAppContentArea","styled","gridArea","position","display","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","height","width","StyledAppContainer","shouldForwardProp","prop","appBackgroundColor","backgroundColor","overflow","StyledBannersContainer","zIndex","UI_SHELL_BASE_Z_INDEX","StyledLeftSideContainer","isOpen","overflowY","StyledRightSideContainer","odysseyDesignTokens","HueNeutralWhite","maxWidth","SIDE_NAV_WIDTH","right","StyledMenuLogo","alignItems","gap","Spacing3","StyledLogoContainer","TOP_NAV_HEIGHT","paddingBlock","Spacing4","maxHeight","StyledPageOverlay","hexToRgb","HueNeutral900","asFormattedString","replace","left","top","StyledSideNavContainer","StyledUiShellContainer","HueNeutral50","StyledTopNav","isContentScrolled","topNavBackgroundColor","boxShadow","DepthMedium","undefined","clipPath","flexDirection","justifyContent","transition","TransitionDurationMain","TransitionTimingMain","StyledTopNavMenu","minHeight","Spacing2","paddingInline","borderBottomColor","HueNeutral100","borderBottomStyle","BorderStyleMain","borderBottomWidth","BorderWidthMain","StyledTopNavSearch","NarrowUiShellContent","appElement","appElementScrollingMode","hasStandardAppContentPadding","initialVisibleSections","onError","console","error","optionalComponents","sideNavProps","topNavProps","useOdysseyDesignTokens","uiShellContext","useUiShellContext","useScrollState","sideNavContainerRef","useRef","topNavContainerRef","uiShellAppAreaRef","isLeftSideMenuOpen","setIsLeftSideMenuOpen","useState","isRightSideMenuOpen","setIsRightSideMenuOpen","closeSideMenus","useCallback","useEffect","unsubscribeFromCloseRightSideMenu","subscribeToCloseRightSideMenu","unsubscribeFromSideNavItemClicked","subscribeToCloseSideNavMenu","toggleLeftSideMenu","toggleRightSideMenu","parentContainerRef","useMatchAppElementToUiShellAppArea","paddingMode","uiShellResizableRefs","jsxs","Fragment","children","jsx","onClick","ref","banners","includes","ErrorBoundary","fallback","sideNavBackgroundColor","isCollapsible","isCollapsed","Button","startIcon","HamburgerMenuIcon","testId","variant","isLoading","_Skeleton2","SideNavLogo","logoProps","rightSideMenu","CloseIcon","MoreIcon","topNavLeftSide","SideNav","sideNavItems","emptySideNavItems","appName","hasCustomFooter","sideNavFooter","footerComponent","footerItems","isObtrusive","onCollapse","tabIndex","InnerAppContainer","MemoizedNarrowUiShellContent","exports","memo","displayName"],"sources":["../../../src/ui-shell/NarrowUiShellContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { Skeleton } from \"@mui/material\";\nimport {\n CSSProperties,\n memo,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nimport { Button } from \"../Buttons/Button.js\";\nimport type { HtmlProps } from \"../HtmlProps.js\";\nimport { CloseIcon } from \"../icons.generated/Close.js\";\nimport { MoreIcon } from \"../icons.generated/More.js\";\nimport { InnerAppContainer } from \"./InnerAppContainer.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { SideNav } from \"./SideNav/SideNav.js\";\nimport { SideNavLogo } from \"./SideNav/SideNavLogo.js\";\nimport { HamburgerMenuIcon } from \"./TopNav/HamburgerMenuIcon.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport {\n UiShellNavComponentProps,\n UiShellContentProps,\n} from \"./uiShellContentTypes.js\";\nimport {\n emptySideNavItems,\n SIDE_NAV_WIDTH,\n TOP_NAV_HEIGHT,\n UI_SHELL_BASE_Z_INDEX,\n} from \"./uiShellSharedConstants.js\";\nimport { useScrollState } from \"./useScrollState.js\";\nimport { useMatchAppElementToUiShellAppArea } from \"./useMatchAppElementToUiShellAppArea.js\";\nimport { hexToRgb } from \"../hexToRgb.js\";\n\nconst StyledAppContentArea = styled(\"div\")({\n gridArea: \"app-content\",\n position: \"relative\",\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"left-side app-container right-side\"\n `,\n gridTemplateColumns: \"auto 1fr auto\",\n gridTemplateRows: \"1fr\",\n height: \"100%\",\n width: \"100%\",\n});\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n backgroundColor: appBackgroundColor,\n gridArea: \"app-container\",\n height: \"100%\",\n overflow: \"hidden\",\n width: \"100%\",\n}));\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n});\n\nconst StyledLeftSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"isOpen\",\n})<{\n isOpen: boolean;\n}>(({ isOpen }) => ({\n display: isOpen ? \"block\" : \"none\",\n height: \"100%\",\n gridArea: \"left-side\",\n overflowY: \"auto\",\n position: \"absolute\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledRightSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"isOpen\" && prop !== \"odysseyDesignTokens\",\n})<{\n isOpen: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isOpen, odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n display: isOpen ? \"block\" : \"none\",\n gridArea: \"right-side\",\n height: \"100%\",\n maxWidth: SIDE_NAV_WIDTH,\n overflowY: \"auto\",\n position: \"absolute\",\n right: 0,\n width: SIDE_NAV_WIDTH,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledMenuLogo = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n alignItems: \"center\",\n display: \"inline-flex\",\n gap: odysseyDesignTokens.Spacing3,\n}));\n\nconst StyledLogoContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n height: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing4,\n\n \"svg, img\": {\n maxHeight: \"100%\",\n width: \"auto\",\n maxWidth: \"100%\",\n },\n}));\n\nconst StyledPageOverlay = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: hexToRgb(\n odysseyDesignTokens.HueNeutral900,\n ).asFormattedString.replace(/rgb\\((.+)\\)$/, \"rgba($1, 0.26)\"),\n gridArea: \"app-content\",\n height: \"100vh\",\n left: 0,\n position: \"absolute\",\n top: 0,\n width: \"100vw\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledSideNavContainer = styled(\"div\")({\n height: \"100%\", // Without this value, side nav won't fill up the height if the content is too short.\n});\n\nconst StyledUiShellContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"banners\"\n \"top-nav\"\n \"app-content\"\n `,\n gridTemplateColumns: \"1fr\",\n gridTemplateRows: \"auto auto 1fr\",\n height: \"100vh\",\n overflow: \"hidden\",\n width: \"100vw\",\n}));\n\nconst StyledTopNav = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isContentScrolled\" &&\n prop !== \"topNavBackgroundColor\",\n})<{\n isContentScrolled?: boolean;\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, isContentScrolled, topNavBackgroundColor }) => ({\n alignItems: \"stretch\",\n backgroundColor: odysseyDesignTokens.HueNeutralWhite || topNavBackgroundColor, // This logic doesn't make sense, but I wanted to leave it here for when we eventually make a decision on `topNavBackgroundColor`. --Kevin Ghadyani\n boxShadow: isContentScrolled ? odysseyDesignTokens.DepthMedium : undefined,\n clipPath: \"inset(0 0 -100vh 0)\",\n display: \"flex\",\n flexDirection: \"column\",\n gridArea: \"top-nav\",\n height: \"100%\",\n justifyContent: \"center\",\n position: \"relative\",\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledTopNavMenu = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"topNavBackgroundColor\",\n})<{\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, topNavBackgroundColor }) => ({\n alignItems: \"center\",\n display: \"flex\",\n gap: odysseyDesignTokens.Spacing3,\n height: \"100%\",\n justifyContent: \"space-between\",\n maxHeight: TOP_NAV_HEIGHT,\n minHeight: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n\n ...(topNavBackgroundColor === odysseyDesignTokens.HueNeutralWhite &&\n ({\n borderBottomColor: odysseyDesignTokens.HueNeutral100,\n borderBottomStyle: odysseyDesignTokens.BorderStyleMain,\n borderBottomWidth: odysseyDesignTokens.BorderWidthMain,\n } as CSSProperties)),\n}));\n\nconst StyledTopNavSearch = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n}));\n\nexport type NarrowUiShellContentProps = Pick<HtmlProps, \"testId\"> &\n Pick<UiShellNavComponentProps, \"sideNavProps\" | \"topNavProps\"> &\n UiShellContentProps;\n\nconst NarrowUiShellContent = ({\n appElement,\n appElementScrollingMode,\n hasStandardAppContentPadding = true,\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n onError = console.error,\n optionalComponents,\n sideNavProps,\n topNavProps,\n}: NarrowUiShellContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n const { isContentScrolled } = useScrollState(appElement);\n\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellAppAreaRef = useRef<HTMLDivElement>(null);\n\n const [isLeftSideMenuOpen, setIsLeftSideMenuOpen] = useState(false);\n const [isRightSideMenuOpen, setIsRightSideMenuOpen] = useState(false);\n\n const closeSideMenus = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen(false);\n }, []);\n\n useEffect(() => {\n const unsubscribeFromCloseRightSideMenu =\n uiShellContext?.subscribeToCloseRightSideMenu(() => {\n closeSideMenus();\n });\n\n const unsubscribeFromSideNavItemClicked =\n uiShellContext?.subscribeToCloseSideNavMenu(() => {\n closeSideMenus();\n });\n\n return () => {\n unsubscribeFromCloseRightSideMenu?.();\n unsubscribeFromSideNavItemClicked?.();\n };\n }, [closeSideMenus, uiShellContext]);\n\n const toggleLeftSideMenu = useCallback(() => {\n setIsRightSideMenuOpen(false);\n setIsLeftSideMenuOpen((isLeftSideMenuOpen) => !isLeftSideMenuOpen);\n }, []);\n\n const toggleRightSideMenu = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen((isRightSideMenuOpen) => !isRightSideMenuOpen);\n }, []);\n\n const { parentContainerRef } = useMatchAppElementToUiShellAppArea({\n appElement,\n appElementScrollingMode,\n paddingMode: hasStandardAppContentPadding ? \"compact\" : \"none\",\n uiShellAppAreaRef,\n uiShellResizableRefs: [\n sideNavContainerRef,\n topNavContainerRef,\n uiShellAppAreaRef,\n ],\n });\n\n return (\n <>\n {(isLeftSideMenuOpen || isRightSideMenuOpen) && (\n <StyledPageOverlay\n odysseyDesignTokens={odysseyDesignTokens}\n onClick={closeSideMenus}\n />\n )}\n\n <StyledUiShellContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={parentContainerRef}\n >\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n {(initialVisibleSections?.includes(\"TopNav\") || topNavProps) && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledTopNav\n isContentScrolled={isContentScrolled}\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.topNavBackgroundColor}\n >\n <StyledTopNavMenu\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n <StyledMenuLogo odysseyDesignTokens={odysseyDesignTokens}>\n {(sideNavProps?.isCollapsible ||\n !sideNavProps?.isCollapsed) && (\n <Button\n onClick={toggleLeftSideMenu}\n startIcon={<HamburgerMenuIcon />}\n testId=\"sidenav-menu--icon\"\n variant=\"floating\"\n />\n )}\n\n <StyledLogoContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {sideNavProps?.isLoading ? (\n // The skeleton takes the hardcoded dimensions of the Okta logo\n <Skeleton variant=\"rounded\" height={24} width={67} />\n ) : (\n <SideNavLogo {...sideNavProps?.logoProps} />\n )}\n </StyledLogoContainer>\n </StyledMenuLogo>\n\n {optionalComponents?.rightSideMenu && (\n <Button\n onClick={toggleRightSideMenu}\n startIcon={\n isRightSideMenuOpen ? <CloseIcon /> : <MoreIcon />\n }\n testId=\"userprofile-menu--icon\"\n variant=\"floating\"\n />\n )}\n </StyledTopNavMenu>\n\n {optionalComponents?.topNavLeftSide && (\n <StyledTopNavSearch odysseyDesignTokens={odysseyDesignTokens}>\n {optionalComponents?.topNavLeftSide}\n </StyledTopNavSearch>\n )}\n </StyledTopNav>\n </ErrorBoundary>\n )}\n\n <StyledAppContentArea>\n <StyledLeftSideContainer isOpen={isLeftSideMenuOpen}>\n {\n /* If SideNav should be initially visible and we have not yet received props, render SideNav with minimal inputs */\n initialVisibleSections?.includes(\"SideNav\") &&\n sideNavProps === undefined && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav isLoading sideNavItems={emptySideNavItems} />\n </ErrorBoundary>\n )\n }\n\n {sideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledSideNavContainer>\n <SideNav\n {...{\n ...{\n ...sideNavProps,\n // This hides the side nav logo or app name from showing up as we already have one in the narrow top nav.\n appName: undefined,\n logoProps: undefined,\n },\n ...(sideNavProps.hasCustomFooter &&\n optionalComponents?.sideNavFooter\n ? {\n footerComponent: optionalComponents.sideNavFooter,\n footerItems: undefined,\n hasCustomFooter: sideNavProps.hasCustomFooter,\n }\n : {\n footerItems: sideNavProps.footerItems,\n hasCustomFooter: false,\n }),\n }}\n isCollapsed={false}\n isCollapsible={false}\n isObtrusive\n onCollapse={closeSideMenus}\n />\n </StyledSideNavContainer>\n </ErrorBoundary>\n )}\n </StyledLeftSideContainer>\n\n <StyledRightSideContainer\n isOpen={isRightSideMenuOpen}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledSideNavContainer>\n {optionalComponents?.rightSideMenu}\n </StyledSideNavContainer>\n </StyledRightSideContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n tabIndex={0}\n ref={uiShellAppAreaRef}\n >\n <InnerAppContainer isContentScrolled={isContentScrolled} />\n </StyledAppContainer>\n </StyledAppContentArea>\n </StyledUiShellContainer>\n </>\n );\n};\n\nconst MemoizedNarrowUiShellContent = memo(NarrowUiShellContent);\nMemoizedNarrowUiShellContent.displayName = \"NarrowUiShellContent\";\n\nexport { MemoizedNarrowUiShellContent as NarrowUiShellContent };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"NarrowUiShellContent.cjs","names":["_styled","_interopRequireDefault","require","_react","_reactErrorBoundary","_Button","_Close","_More","_InnerAppContainer","_OdysseyDesignTokensContext","_SideNav","_SideNavLogo","_HamburgerMenuIcon","_UiShellProvider","_uiShellSharedConstants","_useScrollState","_useMatchAppElementToUiShellAppArea","_hexToRgb","_jsxRuntime","e","__esModule","default","StyledAppContentArea","styled","gridArea","position","display","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","height","width","StyledAppContainer","shouldForwardProp","prop","appBackgroundColor","backgroundColor","overflow","StyledBannersContainer","zIndex","UI_SHELL_BASE_Z_INDEX","StyledLeftSideContainer","isOpen","overflowY","StyledRightSideContainer","odysseyDesignTokens","HueNeutralWhite","maxWidth","SIDE_NAV_WIDTH","right","StyledMenuLogo","alignItems","gap","Spacing3","StyledLogoContainer","TOP_NAV_HEIGHT","paddingBlock","Spacing4","maxHeight","StyledPageOverlay","hexToRgb","HueNeutral900","asFormattedString","replace","left","top","StyledSideNavContainer","StyledUiShellContainer","HueNeutral50","StyledTopNav","isContentScrolled","topNavBackgroundColor","boxShadow","DepthMedium","undefined","clipPath","flexDirection","justifyContent","transition","TransitionDurationMain","TransitionTimingMain","StyledTopNavMenu","minHeight","Spacing2","paddingInline","borderBottomColor","HueNeutral100","borderBottomStyle","BorderStyleMain","borderBottomWidth","BorderWidthMain","StyledTopNavSearch","NarrowUiShellContent","appElement","appElementScrollingMode","hasStandardAppContentPadding","hasSideNavProps","initialVisibleSections","onError","console","error","optionalComponents","sideNavProps","topNavProps","useOdysseyDesignTokens","uiShellContext","useUiShellContext","useScrollState","sideNavContainerRef","useRef","topNavContainerRef","uiShellAppAreaRef","isLeftSideMenuOpen","setIsLeftSideMenuOpen","useState","isRightSideMenuOpen","setIsRightSideMenuOpen","closeSideMenus","useCallback","useEffect","unsubscribeFromCloseRightSideMenu","subscribeToCloseRightSideMenu","unsubscribeFromSideNavItemClicked","subscribeToCloseSideNavMenu","toggleLeftSideMenu","toggleRightSideMenu","parentContainerRef","useMatchAppElementToUiShellAppArea","paddingMode","uiShellResizableRefs","jsxs","Fragment","children","jsx","onClick","ref","banners","includes","ErrorBoundary","fallback","sideNavBackgroundColor","isCollapsible","isCollapsed","Button","startIcon","HamburgerMenuIcon","testId","variant","isLoading","_Skeleton2","SideNavLogo","logoProps","rightSideMenu","CloseIcon","MoreIcon","topNavLeftSide","SideNav","sideNavItems","emptySideNavItems","appName","hasCustomFooter","sideNavFooter","footerComponent","footerItems","isObtrusive","onCollapse","tabIndex","InnerAppContainer","MemoizedNarrowUiShellContent","exports","memo","displayName"],"sources":["../../../src/ui-shell/NarrowUiShellContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { Skeleton } from \"@mui/material\";\nimport {\n CSSProperties,\n memo,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nimport { Button } from \"../Buttons/Button.js\";\nimport type { HtmlProps } from \"../HtmlProps.js\";\nimport { CloseIcon } from \"../icons.generated/Close.js\";\nimport { MoreIcon } from \"../icons.generated/More.js\";\nimport { InnerAppContainer } from \"./InnerAppContainer.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { SideNav } from \"./SideNav/SideNav.js\";\nimport { SideNavLogo } from \"./SideNav/SideNavLogo.js\";\nimport { HamburgerMenuIcon } from \"./TopNav/HamburgerMenuIcon.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport {\n UiShellNavComponentProps,\n UiShellContentProps,\n} from \"./uiShellContentTypes.js\";\nimport {\n emptySideNavItems,\n SIDE_NAV_WIDTH,\n TOP_NAV_HEIGHT,\n UI_SHELL_BASE_Z_INDEX,\n} from \"./uiShellSharedConstants.js\";\nimport { useScrollState } from \"./useScrollState.js\";\nimport { useMatchAppElementToUiShellAppArea } from \"./useMatchAppElementToUiShellAppArea.js\";\nimport { hexToRgb } from \"../hexToRgb.js\";\n\nconst StyledAppContentArea = styled(\"div\")({\n gridArea: \"app-content\",\n position: \"relative\",\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"left-side app-container right-side\"\n `,\n gridTemplateColumns: \"auto 1fr auto\",\n gridTemplateRows: \"1fr\",\n height: \"100%\",\n width: \"100%\",\n});\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n backgroundColor: appBackgroundColor,\n gridArea: \"app-container\",\n height: \"100%\",\n overflow: \"hidden\",\n width: \"100%\",\n}));\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n});\n\nconst StyledLeftSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"isOpen\",\n})<{\n isOpen: boolean;\n}>(({ isOpen }) => ({\n display: isOpen ? \"block\" : \"none\",\n height: \"100%\",\n gridArea: \"left-side\",\n overflowY: \"auto\",\n position: \"absolute\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledRightSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"isOpen\" && prop !== \"odysseyDesignTokens\",\n})<{\n isOpen: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isOpen, odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n display: isOpen ? \"block\" : \"none\",\n gridArea: \"right-side\",\n height: \"100%\",\n maxWidth: SIDE_NAV_WIDTH,\n overflowY: \"auto\",\n position: \"absolute\",\n right: 0,\n width: SIDE_NAV_WIDTH,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledMenuLogo = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n alignItems: \"center\",\n display: \"inline-flex\",\n gap: odysseyDesignTokens.Spacing3,\n}));\n\nconst StyledLogoContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n height: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing4,\n\n \"svg, img\": {\n maxHeight: \"100%\",\n width: \"auto\",\n maxWidth: \"100%\",\n },\n}));\n\nconst StyledPageOverlay = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: hexToRgb(\n odysseyDesignTokens.HueNeutral900,\n ).asFormattedString.replace(/rgb\\((.+)\\)$/, \"rgba($1, 0.26)\"),\n gridArea: \"app-content\",\n height: \"100vh\",\n left: 0,\n position: \"absolute\",\n top: 0,\n width: \"100vw\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledSideNavContainer = styled(\"div\")({\n height: \"100%\", // Without this value, side nav won't fill up the height if the content is too short.\n});\n\nconst StyledUiShellContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"banners\"\n \"top-nav\"\n \"app-content\"\n `,\n gridTemplateColumns: \"1fr\",\n gridTemplateRows: \"auto auto 1fr\",\n height: \"100vh\",\n overflow: \"hidden\",\n width: \"100vw\",\n}));\n\nconst StyledTopNav = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isContentScrolled\" &&\n prop !== \"topNavBackgroundColor\",\n})<{\n isContentScrolled?: boolean;\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, isContentScrolled, topNavBackgroundColor }) => ({\n alignItems: \"stretch\",\n backgroundColor: odysseyDesignTokens.HueNeutralWhite || topNavBackgroundColor, // This logic doesn't make sense, but I wanted to leave it here for when we eventually make a decision on `topNavBackgroundColor`. --Kevin Ghadyani\n boxShadow: isContentScrolled ? odysseyDesignTokens.DepthMedium : undefined,\n clipPath: \"inset(0 0 -100vh 0)\",\n display: \"flex\",\n flexDirection: \"column\",\n gridArea: \"top-nav\",\n height: \"100%\",\n justifyContent: \"center\",\n position: \"relative\",\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledTopNavMenu = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"topNavBackgroundColor\",\n})<{\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, topNavBackgroundColor }) => ({\n alignItems: \"center\",\n display: \"flex\",\n gap: odysseyDesignTokens.Spacing3,\n height: \"100%\",\n justifyContent: \"space-between\",\n maxHeight: TOP_NAV_HEIGHT,\n minHeight: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n\n ...(topNavBackgroundColor === odysseyDesignTokens.HueNeutralWhite &&\n ({\n borderBottomColor: odysseyDesignTokens.HueNeutral100,\n borderBottomStyle: odysseyDesignTokens.BorderStyleMain,\n borderBottomWidth: odysseyDesignTokens.BorderWidthMain,\n } as CSSProperties)),\n}));\n\nconst StyledTopNavSearch = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n}));\n\nexport type NarrowUiShellContentProps = Pick<HtmlProps, \"testId\"> &\n Pick<UiShellNavComponentProps, \"sideNavProps\" | \"topNavProps\"> &\n UiShellContentProps;\n\nconst NarrowUiShellContent = ({\n appElement,\n appElementScrollingMode,\n hasStandardAppContentPadding = true,\n hasSideNavProps,\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n onError = console.error,\n optionalComponents,\n sideNavProps,\n topNavProps,\n}: NarrowUiShellContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n const { isContentScrolled } = useScrollState(appElement);\n\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellAppAreaRef = useRef<HTMLDivElement>(null);\n\n const [isLeftSideMenuOpen, setIsLeftSideMenuOpen] = useState(false);\n const [isRightSideMenuOpen, setIsRightSideMenuOpen] = useState(false);\n\n const closeSideMenus = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen(false);\n }, []);\n\n useEffect(() => {\n const unsubscribeFromCloseRightSideMenu =\n uiShellContext?.subscribeToCloseRightSideMenu(() => {\n closeSideMenus();\n });\n\n const unsubscribeFromSideNavItemClicked =\n uiShellContext?.subscribeToCloseSideNavMenu(() => {\n closeSideMenus();\n });\n\n return () => {\n unsubscribeFromCloseRightSideMenu?.();\n unsubscribeFromSideNavItemClicked?.();\n };\n }, [closeSideMenus, uiShellContext]);\n\n const toggleLeftSideMenu = useCallback(() => {\n setIsRightSideMenuOpen(false);\n setIsLeftSideMenuOpen((isLeftSideMenuOpen) => !isLeftSideMenuOpen);\n }, []);\n\n const toggleRightSideMenu = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen((isRightSideMenuOpen) => !isRightSideMenuOpen);\n }, []);\n\n const { parentContainerRef } = useMatchAppElementToUiShellAppArea({\n appElement,\n appElementScrollingMode,\n paddingMode: hasStandardAppContentPadding ? \"compact\" : \"none\",\n uiShellAppAreaRef,\n uiShellResizableRefs: [\n sideNavContainerRef,\n topNavContainerRef,\n uiShellAppAreaRef,\n ],\n });\n\n return (\n <>\n {(isLeftSideMenuOpen || isRightSideMenuOpen) && (\n <StyledPageOverlay\n odysseyDesignTokens={odysseyDesignTokens}\n onClick={closeSideMenus}\n />\n )}\n\n <StyledUiShellContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={parentContainerRef}\n >\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n {(initialVisibleSections?.includes(\"TopNav\") || topNavProps) && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledTopNav\n isContentScrolled={isContentScrolled}\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.topNavBackgroundColor}\n >\n <StyledTopNavMenu\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n <StyledMenuLogo odysseyDesignTokens={odysseyDesignTokens}>\n {(sideNavProps?.isCollapsible ||\n !sideNavProps?.isCollapsed) && (\n <Button\n onClick={toggleLeftSideMenu}\n startIcon={<HamburgerMenuIcon />}\n testId=\"sidenav-menu--icon\"\n variant=\"floating\"\n />\n )}\n\n <StyledLogoContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {sideNavProps?.isLoading ? (\n // The skeleton takes the hardcoded dimensions of the Okta logo\n <Skeleton variant=\"rounded\" height={24} width={67} />\n ) : (\n <SideNavLogo {...sideNavProps?.logoProps} />\n )}\n </StyledLogoContainer>\n </StyledMenuLogo>\n\n {optionalComponents?.rightSideMenu && (\n <Button\n onClick={toggleRightSideMenu}\n startIcon={\n isRightSideMenuOpen ? <CloseIcon /> : <MoreIcon />\n }\n testId=\"userprofile-menu--icon\"\n variant=\"floating\"\n />\n )}\n </StyledTopNavMenu>\n\n {optionalComponents?.topNavLeftSide && (\n <StyledTopNavSearch odysseyDesignTokens={odysseyDesignTokens}>\n {optionalComponents?.topNavLeftSide}\n </StyledTopNavSearch>\n )}\n </StyledTopNav>\n </ErrorBoundary>\n )}\n\n <StyledAppContentArea>\n <StyledLeftSideContainer isOpen={isLeftSideMenuOpen}>\n {\n /* If SideNav should be initially visible and we have not yet received props, render SideNav with minimal inputs */\n initialVisibleSections?.includes(\"SideNav\") &&\n !hasSideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav isLoading sideNavItems={emptySideNavItems} />\n </ErrorBoundary>\n )\n }\n\n {hasSideNavProps && sideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledSideNavContainer>\n <SideNav\n {...{\n ...{\n ...sideNavProps,\n // This hides the side nav logo or app name from showing up as we already have one in the narrow top nav.\n appName: undefined,\n logoProps: undefined,\n },\n ...(sideNavProps.hasCustomFooter &&\n optionalComponents?.sideNavFooter\n ? {\n footerComponent: optionalComponents.sideNavFooter,\n footerItems: undefined,\n hasCustomFooter: sideNavProps.hasCustomFooter,\n }\n : {\n footerItems: sideNavProps.footerItems,\n hasCustomFooter: false,\n }),\n }}\n isCollapsed={false}\n isCollapsible={false}\n isObtrusive\n onCollapse={closeSideMenus}\n />\n </StyledSideNavContainer>\n </ErrorBoundary>\n )}\n </StyledLeftSideContainer>\n\n <StyledRightSideContainer\n isOpen={isRightSideMenuOpen}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledSideNavContainer>\n {optionalComponents?.rightSideMenu}\n </StyledSideNavContainer>\n </StyledRightSideContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n tabIndex={0}\n ref={uiShellAppAreaRef}\n >\n <InnerAppContainer isContentScrolled={isContentScrolled} />\n </StyledAppContainer>\n </StyledAppContentArea>\n </StyledUiShellContainer>\n </>\n );\n};\n\nconst MemoizedNarrowUiShellContent = memo(NarrowUiShellContent);\nMemoizedNarrowUiShellContent.displayName = \"NarrowUiShellContent\";\n\nexport { MemoizedNarrowUiShellContent as NarrowUiShellContent };\n"],"mappings":"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","ignoreList":[]}
@@ -269,6 +269,7 @@ const SideNav = ({
269
269
  footerComponent,
270
270
  footerItems,
271
271
  hasCustomFooter,
272
+ hasSessionStorageState,
272
273
  isCollapsible,
273
274
  isCollapsed = false,
274
275
  isCompact,
@@ -284,11 +285,14 @@ const SideNav = ({
284
285
  const [hasNeighboringContent, setHasNeighboringContent] = (0, _react.useState)(false);
285
286
  const [isContentScrollable, setIsContentScrollable] = (0, _react.useState)(false);
286
287
  const [isSideNavToggleHighlighted, setIsSideNavToggleHighlighted] = (0, _react.useState)(false);
287
- const [sideNavItemsList, updateSideNavItemsList] = (0, _react.useState)(sideNavItems);
288
+ const [sideNavItemsList, updateSideNavItemsList] = (0, _react.useState)(sideNavItems || []);
289
+ const [isSideNavCollapsedLocalState, setIsSideNavCollapsedLocalState] = (0, _react.useState)(isCollapsed);
288
290
  const {
289
- sessionState: isSideNavCollapsed,
290
- setSessionState: setIsSideNavCollapsed
291
+ sessionState: isSideNavCollapsedSessionState,
292
+ setSessionState: setIsSideNavCollapsedSessionState
291
293
  } = (0, _useIsSideNavCollapsedSessionStorage.useIsSideNavCollapsedSessionStorage)(isCollapsed);
294
+ const isSideNavCollapsed = hasSessionStorageState ? isSideNavCollapsedSessionState : isSideNavCollapsedLocalState;
295
+ const setIsSideNavCollapsed = hasSessionStorageState ? setIsSideNavCollapsedSessionState : setIsSideNavCollapsedLocalState;
292
296
  const uiShellContext = (0, _UiShellProvider.useUiShellContext)();
293
297
  const odysseyDesignTokens = (0, _OdysseyDesignTokensContext.useOdysseyDesignTokens)();
294
298
  const {
@@ -299,7 +303,7 @@ const SideNav = ({
299
303
  const intersectionObserverRef = (0, _react.useRef)(null);
300
304
  const sideNavRef = (0, _react.useRef)(null);
301
305
  const blankElement = (0, _react.useMemo)(() => (0, _jsxRuntime.jsx)("div", {}), []);
302
- (0, _react.useEffect)(() => updateSideNavItemsList(sideNavItems), [sideNavItems]);
306
+ (0, _react.useEffect)(() => updateSideNavItemsList(sideNavItems || []), [sideNavItems]);
303
307
  (0, _react.useEffect)(() => {
304
308
  if (sideNavRef.current) {
305
309
  setHasNeighboringContent(sideNavRef.current.getBoundingClientRect().x > 0);