@okta/odyssey-react-mui 1.21.2 → 1.23.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 (593) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/@types/i18next.d.js.map +1 -1
  3. package/dist/Autocomplete.js +106 -38
  4. package/dist/Autocomplete.js.map +1 -1
  5. package/dist/Callout.js +12 -24
  6. package/dist/Callout.js.map +1 -1
  7. package/dist/Checkbox.js +26 -11
  8. package/dist/Checkbox.js.map +1 -1
  9. package/dist/CheckboxGroup.js +14 -3
  10. package/dist/CheckboxGroup.js.map +1 -1
  11. package/dist/DataTable/DataTable.js +10 -2
  12. package/dist/DataTable/DataTable.js.map +1 -1
  13. package/dist/DataTable/useScrollIndication.js +9 -5
  14. package/dist/DataTable/useScrollIndication.js.map +1 -1
  15. package/dist/Field.js +3 -1
  16. package/dist/Field.js.map +1 -1
  17. package/dist/FileUploader/FileUploadIllustration.js.map +1 -0
  18. package/dist/FileUploader/FileUploadPreview.js.map +1 -0
  19. package/dist/{labs/FileUpload.js → FileUploader/FileUploader.js} +6 -5
  20. package/dist/FileUploader/FileUploader.js.map +1 -0
  21. package/dist/FileUploader/index.js +13 -0
  22. package/dist/FileUploader/index.js.map +1 -0
  23. package/dist/OdysseyCacheProvider.js +4 -3
  24. package/dist/OdysseyCacheProvider.js.map +1 -1
  25. package/dist/OdysseyProvider.js +10 -3
  26. package/dist/OdysseyProvider.js.map +1 -1
  27. package/dist/OdysseyThemeProvider.js +3 -2
  28. package/dist/OdysseyThemeProvider.js.map +1 -1
  29. package/dist/Radio.js +33 -6
  30. package/dist/Radio.js.map +1 -1
  31. package/dist/RadioGroup.js +17 -5
  32. package/dist/RadioGroup.js.map +1 -1
  33. package/dist/Select.js +89 -31
  34. package/dist/Select.js.map +1 -1
  35. package/dist/{labs/Switch.js → Switch.js} +77 -23
  36. package/dist/Switch.js.map +1 -0
  37. package/dist/Tabs.js +7 -9
  38. package/dist/Tabs.js.map +1 -1
  39. package/dist/Tag.js +102 -4
  40. package/dist/Tag.js.map +1 -1
  41. package/dist/TextField.js +16 -39
  42. package/dist/TextField.js.map +1 -1
  43. package/dist/Toast.js +2 -2
  44. package/dist/Toast.js.map +1 -1
  45. package/dist/ToastStack.js.map +1 -1
  46. package/dist/createShadowDomElements.js +43 -0
  47. package/dist/createShadowDomElements.js.map +1 -0
  48. package/dist/i18n.js +1 -1
  49. package/dist/i18n.js.map +1 -1
  50. package/dist/index.js +3 -2
  51. package/dist/index.js.map +1 -1
  52. package/dist/index.scss +96 -8
  53. package/dist/labs/AppTile.js +124 -0
  54. package/dist/labs/AppTile.js.map +1 -0
  55. package/dist/labs/DataView/BulkActionsMenu.js.map +1 -0
  56. package/dist/labs/{DataComponents/StackContent.js → DataView/CardLayoutContent.js} +14 -14
  57. package/dist/labs/DataView/CardLayoutContent.js.map +1 -0
  58. package/dist/labs/{DataComponents/StackCard.js → DataView/DataCard.js} +6 -6
  59. package/dist/labs/DataView/DataCard.js.map +1 -0
  60. package/dist/labs/{DataComponents → DataView}/DataTable.js +6 -2
  61. package/dist/labs/DataView/DataTable.js.map +1 -0
  62. package/dist/labs/{DataComponents → DataView}/DataView.js +79 -30
  63. package/dist/labs/DataView/DataView.js.map +1 -0
  64. package/dist/labs/DataView/DetailPanel.js.map +1 -0
  65. package/dist/labs/DataView/LayoutSwitcher.js.map +1 -0
  66. package/dist/labs/DataView/RowActions.js.map +1 -0
  67. package/dist/labs/{DataComponents/TableContent.js → DataView/TableLayoutContent.js} +34 -20
  68. package/dist/labs/DataView/TableLayoutContent.js.map +1 -0
  69. package/dist/labs/{DataComponents → DataView}/TableSettings.js +2 -2
  70. package/dist/labs/DataView/TableSettings.js.map +1 -0
  71. package/dist/labs/DataView/componentTypes.js.map +1 -0
  72. package/dist/labs/{DataComponents → DataView}/constants.js +2 -2
  73. package/dist/labs/DataView/constants.js.map +1 -0
  74. package/dist/labs/DataView/dataTypes.js.map +1 -0
  75. package/dist/labs/DataView/fetchData.js.map +1 -0
  76. package/dist/labs/{DataComponents → DataView}/index.js +0 -1
  77. package/dist/labs/DataView/index.js.map +1 -0
  78. package/dist/labs/DataView/tableConstants.js.map +1 -0
  79. package/dist/labs/DataView/useFilterConversion.js.map +1 -0
  80. package/dist/labs/DateField.js +2 -0
  81. package/dist/labs/DateField.js.map +1 -1
  82. package/dist/labs/DatePicker.js +5 -1
  83. package/dist/labs/DatePicker.js.map +1 -1
  84. package/dist/labs/SideNav/CollapseIcon.js +44 -0
  85. package/dist/labs/SideNav/CollapseIcon.js.map +1 -0
  86. package/dist/labs/SideNav/OktaLogo.js +36 -0
  87. package/dist/labs/SideNav/OktaLogo.js.map +1 -0
  88. package/dist/labs/SideNav/SideNav.js +335 -0
  89. package/dist/labs/SideNav/SideNav.js.map +1 -0
  90. package/dist/labs/SideNav/SideNavFooterContent.js +49 -0
  91. package/dist/labs/SideNav/SideNavFooterContent.js.map +1 -0
  92. package/dist/labs/SideNav/SideNavHeader.js +81 -0
  93. package/dist/labs/SideNav/SideNavHeader.js.map +1 -0
  94. package/dist/labs/SideNav/SideNavItemContent.js +157 -0
  95. package/dist/labs/SideNav/SideNavItemContent.js.map +1 -0
  96. package/dist/labs/SideNav/SideNavItemLinkContent.js +71 -0
  97. package/dist/labs/SideNav/SideNavItemLinkContent.js.map +1 -0
  98. package/dist/labs/SideNav/index.js +14 -0
  99. package/dist/labs/SideNav/index.js.map +1 -0
  100. package/dist/labs/SideNav/types.js +2 -0
  101. package/dist/labs/SideNav/types.js.map +1 -0
  102. package/dist/labs/TopNav.js +2 -1
  103. package/dist/labs/TopNav.js.map +1 -1
  104. package/dist/labs/index.js +3 -4
  105. package/dist/labs/index.js.map +1 -1
  106. package/dist/labs/useDateFieldsTranslations.js +1 -1
  107. package/dist/labs/useDateFieldsTranslations.js.map +1 -1
  108. package/dist/properties/ts/odyssey-react-mui.js +3 -1
  109. package/dist/properties/ts/odyssey-react-mui.js.map +1 -1
  110. package/dist/properties/ts/odyssey-react-mui_cs.js +17 -3
  111. package/dist/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  112. package/dist/properties/ts/odyssey-react-mui_da.js +17 -3
  113. package/dist/properties/ts/odyssey-react-mui_da.js.map +1 -1
  114. package/dist/properties/ts/odyssey-react-mui_de.js +16 -2
  115. package/dist/properties/ts/odyssey-react-mui_de.js.map +1 -1
  116. package/dist/properties/ts/odyssey-react-mui_el.js +18 -4
  117. package/dist/properties/ts/odyssey-react-mui_el.js.map +1 -1
  118. package/dist/properties/ts/odyssey-react-mui_es.js +17 -3
  119. package/dist/properties/ts/odyssey-react-mui_es.js.map +1 -1
  120. package/dist/properties/ts/odyssey-react-mui_fi.js +17 -3
  121. package/dist/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  122. package/dist/properties/ts/odyssey-react-mui_fr.js +17 -3
  123. package/dist/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  124. package/dist/properties/ts/odyssey-react-mui_ht.js +18 -4
  125. package/dist/properties/ts/odyssey-react-mui_ht.js.map +1 -1
  126. package/dist/properties/ts/odyssey-react-mui_hu.js +17 -3
  127. package/dist/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  128. package/dist/properties/ts/odyssey-react-mui_id.js +17 -3
  129. package/dist/properties/ts/odyssey-react-mui_id.js.map +1 -1
  130. package/dist/properties/ts/odyssey-react-mui_it.js +17 -3
  131. package/dist/properties/ts/odyssey-react-mui_it.js.map +1 -1
  132. package/dist/properties/ts/odyssey-react-mui_ja.js +16 -2
  133. package/dist/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  134. package/dist/properties/ts/odyssey-react-mui_ko.js +16 -2
  135. package/dist/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  136. package/dist/properties/ts/odyssey-react-mui_ms.js +17 -3
  137. package/dist/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  138. package/dist/properties/ts/odyssey-react-mui_nb.js +17 -3
  139. package/dist/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  140. package/dist/properties/ts/odyssey-react-mui_nl_NL.js +17 -3
  141. package/dist/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  142. package/dist/properties/ts/odyssey-react-mui_pl.js +17 -3
  143. package/dist/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  144. package/dist/properties/ts/odyssey-react-mui_pt_BR.js +17 -3
  145. package/dist/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  146. package/dist/properties/ts/odyssey-react-mui_ro.js +17 -3
  147. package/dist/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  148. package/dist/properties/ts/odyssey-react-mui_ru.js +17 -3
  149. package/dist/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  150. package/dist/properties/ts/odyssey-react-mui_sv.js +17 -3
  151. package/dist/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  152. package/dist/properties/ts/odyssey-react-mui_th.js +16 -2
  153. package/dist/properties/ts/odyssey-react-mui_th.js.map +1 -1
  154. package/dist/properties/ts/odyssey-react-mui_tr.js +17 -3
  155. package/dist/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  156. package/dist/properties/ts/odyssey-react-mui_uk.js +17 -3
  157. package/dist/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  158. package/dist/properties/ts/odyssey-react-mui_vi.js +17 -3
  159. package/dist/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  160. package/dist/properties/ts/odyssey-react-mui_zh_CN.js +16 -2
  161. package/dist/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  162. package/dist/properties/ts/odyssey-react-mui_zh_TW.js +16 -2
  163. package/dist/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  164. package/dist/src/Autocomplete.d.ts +30 -0
  165. package/dist/src/Autocomplete.d.ts.map +1 -1
  166. package/dist/src/Callout.d.ts +11 -23
  167. package/dist/src/Callout.d.ts.map +1 -1
  168. package/dist/src/Checkbox.d.ts +2 -2
  169. package/dist/src/Checkbox.d.ts.map +1 -1
  170. package/dist/src/CheckboxGroup.d.ts +3 -3
  171. package/dist/src/CheckboxGroup.d.ts.map +1 -1
  172. package/dist/src/DataTable/DataTable.d.ts +9 -1
  173. package/dist/src/DataTable/DataTable.d.ts.map +1 -1
  174. package/dist/src/DataTable/useScrollIndication.d.ts.map +1 -1
  175. package/dist/src/Field.d.ts +3 -2
  176. package/dist/src/Field.d.ts.map +1 -1
  177. package/dist/src/FileUploader/FileUploadIllustration.d.ts.map +1 -0
  178. package/dist/src/{labs → FileUploader}/FileUploadPreview.d.ts +2 -2
  179. package/dist/src/FileUploader/FileUploadPreview.d.ts.map +1 -0
  180. package/dist/src/{labs/FileUpload.d.ts → FileUploader/FileUploader.d.ts} +5 -4
  181. package/dist/src/FileUploader/FileUploader.d.ts.map +1 -0
  182. package/dist/src/FileUploader/index.d.ts +13 -0
  183. package/dist/src/FileUploader/index.d.ts.map +1 -0
  184. package/dist/src/NativeSelect.d.ts +1 -1
  185. package/dist/src/OdysseyCacheProvider.d.ts +7 -3
  186. package/dist/src/OdysseyCacheProvider.d.ts.map +1 -1
  187. package/dist/src/OdysseyProvider.d.ts +1 -1
  188. package/dist/src/OdysseyProvider.d.ts.map +1 -1
  189. package/dist/src/OdysseyThemeProvider.d.ts +3 -1
  190. package/dist/src/OdysseyThemeProvider.d.ts.map +1 -1
  191. package/dist/src/OdysseyTranslationProvider.d.ts +1 -1
  192. package/dist/src/OdysseyTranslationProvider.d.ts.map +1 -1
  193. package/dist/src/PasswordField.d.ts +1 -1
  194. package/dist/src/Radio.d.ts +6 -8
  195. package/dist/src/Radio.d.ts.map +1 -1
  196. package/dist/src/RadioGroup.d.ts +4 -5
  197. package/dist/src/RadioGroup.d.ts.map +1 -1
  198. package/dist/src/SearchField.d.ts +1 -1
  199. package/dist/src/Select.d.ts +38 -2
  200. package/dist/src/Select.d.ts.map +1 -1
  201. package/dist/src/{labs/Switch.d.ts → Switch.d.ts} +8 -4
  202. package/dist/src/Switch.d.ts.map +1 -0
  203. package/dist/src/Tabs.d.ts +6 -8
  204. package/dist/src/Tabs.d.ts.map +1 -1
  205. package/dist/src/Tag.d.ts +7 -1
  206. package/dist/src/Tag.d.ts.map +1 -1
  207. package/dist/src/TextField.d.ts +17 -40
  208. package/dist/src/TextField.d.ts.map +1 -1
  209. package/dist/src/ToastStack.d.ts +2 -2
  210. package/dist/src/ToastStack.d.ts.map +1 -1
  211. package/dist/src/{createShadowRootElement.d.ts → createShadowDomElements.d.ts} +6 -1
  212. package/dist/src/createShadowDomElements.d.ts.map +1 -0
  213. package/dist/src/i18n.d.ts +2 -2
  214. package/dist/src/i18n.d.ts.map +1 -1
  215. package/dist/src/index.d.ts +3 -2
  216. package/dist/src/index.d.ts.map +1 -1
  217. package/dist/src/labs/AppTile.d.ts +39 -0
  218. package/dist/src/labs/AppTile.d.ts.map +1 -0
  219. package/dist/src/labs/DataView/BulkActionsMenu.d.ts.map +1 -0
  220. package/dist/src/labs/{DataComponents/StackContent.d.ts → DataView/CardLayoutContent.d.ts} +7 -7
  221. package/dist/src/labs/DataView/CardLayoutContent.d.ts.map +1 -0
  222. package/dist/src/labs/{DataComponents/StackCard.d.ts → DataView/DataCard.d.ts} +4 -4
  223. package/dist/src/labs/DataView/DataCard.d.ts.map +1 -0
  224. package/dist/src/labs/DataView/DataTable.d.ts +16 -0
  225. package/dist/src/labs/DataView/DataTable.d.ts.map +1 -0
  226. package/dist/src/labs/{DataComponents → DataView}/DataView.d.ts +1 -1
  227. package/dist/src/labs/DataView/DataView.d.ts.map +1 -0
  228. package/dist/src/labs/{DataComponents → DataView}/DetailPanel.d.ts +2 -2
  229. package/dist/src/labs/DataView/DetailPanel.d.ts.map +1 -0
  230. package/dist/src/labs/DataView/LayoutSwitcher.d.ts.map +1 -0
  231. package/dist/src/labs/DataView/RowActions.d.ts.map +1 -0
  232. package/dist/src/labs/{DataComponents/TableContent.d.ts → DataView/TableLayoutContent.d.ts} +8 -7
  233. package/dist/src/labs/DataView/TableLayoutContent.d.ts.map +1 -0
  234. package/dist/src/labs/{DataComponents → DataView}/TableSettings.d.ts +3 -3
  235. package/dist/src/labs/DataView/TableSettings.d.ts.map +1 -0
  236. package/dist/src/labs/{DataComponents → DataView}/componentTypes.d.ts +21 -9
  237. package/dist/src/labs/DataView/componentTypes.d.ts.map +1 -0
  238. package/dist/src/labs/{DataComponents → DataView}/constants.d.ts +1 -1
  239. package/dist/src/labs/DataView/constants.d.ts.map +1 -0
  240. package/dist/src/labs/DataView/dataTypes.d.ts.map +1 -0
  241. package/dist/src/labs/DataView/fetchData.d.ts.map +1 -0
  242. package/dist/src/labs/{DataComponents → DataView}/index.d.ts +0 -1
  243. package/dist/src/labs/DataView/index.d.ts.map +1 -0
  244. package/dist/src/labs/DataView/tableConstants.d.ts.map +1 -0
  245. package/dist/src/labs/{DataComponents → DataView}/useFilterConversion.d.ts +2 -2
  246. package/dist/src/labs/DataView/useFilterConversion.d.ts.map +1 -0
  247. package/dist/src/labs/DateField.d.ts +2 -2
  248. package/dist/src/labs/DateField.d.ts.map +1 -1
  249. package/dist/src/labs/DatePicker.d.ts +2 -2
  250. package/dist/src/labs/DatePicker.d.ts.map +1 -1
  251. package/dist/src/labs/SideNav/CollapseIcon.d.ts +17 -0
  252. package/dist/src/labs/SideNav/CollapseIcon.d.ts.map +1 -0
  253. package/dist/src/labs/SideNav/OktaLogo.d.ts +14 -0
  254. package/dist/src/labs/SideNav/OktaLogo.d.ts.map +1 -0
  255. package/dist/src/labs/SideNav/SideNav.d.ts +16 -0
  256. package/dist/src/labs/SideNav/SideNav.d.ts.map +1 -0
  257. package/dist/{test-selectors/odysseyTestSelectors.js → src/labs/SideNav/SideNavFooterContent.d.ts} +6 -9
  258. package/dist/src/labs/SideNav/SideNavFooterContent.d.ts.map +1 -0
  259. package/dist/src/labs/SideNav/SideNavHeader.d.ts +16 -0
  260. package/dist/src/labs/SideNav/SideNavHeader.d.ts.map +1 -0
  261. package/dist/src/labs/SideNav/SideNavItemContent.d.ts +33 -0
  262. package/dist/src/labs/SideNav/SideNavItemContent.d.ts.map +1 -0
  263. package/dist/src/labs/SideNav/SideNavItemLinkContent.d.ts +16 -0
  264. package/dist/src/labs/SideNav/SideNavItemLinkContent.d.ts.map +1 -0
  265. package/dist/src/labs/SideNav/index.d.ts +14 -0
  266. package/dist/src/labs/SideNav/index.d.ts.map +1 -0
  267. package/dist/src/labs/{SideNav.d.ts → SideNav/types.d.ts} +54 -33
  268. package/dist/src/labs/SideNav/types.d.ts.map +1 -0
  269. package/dist/src/labs/TopNav.d.ts +1 -0
  270. package/dist/src/labs/TopNav.d.ts.map +1 -1
  271. package/dist/src/labs/index.d.ts +2 -3
  272. package/dist/src/labs/index.d.ts.map +1 -1
  273. package/dist/src/properties/ts/odyssey-react-mui.d.ts +2 -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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +16 -2
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  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 +15 -1
  328. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  329. package/dist/src/test-selectors/getByQuerySelector.d.ts +148 -0
  330. package/dist/src/test-selectors/getByQuerySelector.d.ts.map +1 -0
  331. package/dist/src/test-selectors/getComputedAccessibleErrorMessageText.d.ts +14 -0
  332. package/dist/src/test-selectors/getComputedAccessibleErrorMessageText.d.ts.map +1 -0
  333. package/dist/src/test-selectors/getComputedAccessibleText.d.ts +23 -0
  334. package/dist/src/test-selectors/getComputedAccessibleText.d.ts.map +1 -0
  335. package/dist/src/test-selectors/index.d.ts +2 -2
  336. package/dist/src/test-selectors/index.d.ts.map +1 -1
  337. package/{src/test-selectors/odysseyTestSelectors.ts → dist/src/test-selectors/interpolateString.d.ts} +4 -11
  338. package/dist/src/test-selectors/interpolateString.d.ts.map +1 -0
  339. package/dist/src/test-selectors/linkedHtmlSelectors.d.ts +24 -0
  340. package/dist/src/test-selectors/linkedHtmlSelectors.d.ts.map +1 -0
  341. package/dist/src/test-selectors/queryOdysseySelector.d.ts +5755 -0
  342. package/dist/src/test-selectors/queryOdysseySelector.d.ts.map +1 -0
  343. package/dist/src/test-selectors/querySelector.d.ts +59 -3613
  344. package/dist/src/test-selectors/querySelector.d.ts.map +1 -1
  345. package/dist/src/test-selectors/sanityChecks.d.ts +18 -0
  346. package/dist/src/test-selectors/sanityChecks.d.ts.map +1 -0
  347. package/dist/src/test-selectors/testSelector.d.ts +46 -0
  348. package/dist/src/test-selectors/testSelector.d.ts.map +1 -0
  349. package/dist/src/theme/components.d.ts +3 -1
  350. package/dist/src/theme/components.d.ts.map +1 -1
  351. package/dist/src/theme/createOdysseyMuiTheme.d.ts +3 -1
  352. package/dist/src/theme/createOdysseyMuiTheme.d.ts.map +1 -1
  353. package/dist/test-selectors/getByQuerySelector.js +64 -0
  354. package/dist/test-selectors/getByQuerySelector.js.map +1 -0
  355. package/dist/test-selectors/getComputedAccessibleErrorMessageText.js +25 -0
  356. package/dist/test-selectors/getComputedAccessibleErrorMessageText.js.map +1 -0
  357. package/dist/test-selectors/getComputedAccessibleText.js +24 -0
  358. package/dist/test-selectors/getComputedAccessibleText.js.map +1 -0
  359. package/dist/test-selectors/index.js +2 -2
  360. package/dist/test-selectors/index.js.map +1 -1
  361. package/dist/test-selectors/interpolateString.js +25 -0
  362. package/dist/test-selectors/interpolateString.js.map +1 -0
  363. package/dist/test-selectors/linkedHtmlSelectors.js +34 -0
  364. package/dist/test-selectors/linkedHtmlSelectors.js.map +1 -0
  365. package/dist/test-selectors/queryOdysseySelector.js +26 -0
  366. package/dist/test-selectors/queryOdysseySelector.js.map +1 -0
  367. package/dist/test-selectors/querySelector.js +82 -58
  368. package/dist/test-selectors/querySelector.js.map +1 -1
  369. package/dist/test-selectors/sanityChecks.js +33 -0
  370. package/dist/test-selectors/sanityChecks.js.map +1 -0
  371. package/dist/test-selectors/testSelector.js +2 -0
  372. package/dist/test-selectors/testSelector.js.map +1 -0
  373. package/dist/test-selectors/testSelectors.json +1 -1
  374. package/dist/theme/components.js +231 -146
  375. package/dist/theme/components.js.map +1 -1
  376. package/dist/theme/createOdysseyMuiTheme.js +3 -2
  377. package/dist/theme/createOdysseyMuiTheme.js.map +1 -1
  378. package/dist/tsconfig.production.tsbuildinfo +1 -1
  379. package/dist/tsconfig.tsbuildinfo +1 -1
  380. package/jest.setup.js +3 -0
  381. package/package.json +5 -5
  382. package/scripts/generateTestSelectorsJson.ts +1 -1
  383. package/src/@types/i18next.d.ts +1 -1
  384. package/src/Autocomplete.tsx +140 -45
  385. package/src/Callout.tsx +13 -25
  386. package/src/Checkbox.tsx +39 -9
  387. package/src/CheckboxGroup.tsx +20 -4
  388. package/src/DataTable/DataTable.tsx +24 -1
  389. package/src/DataTable/useScrollIndication.tsx +11 -4
  390. package/src/Field.tsx +5 -2
  391. package/src/{labs → FileUploader}/FileUploadPreview.tsx +3 -3
  392. package/src/{labs/FileUpload.tsx → FileUploader/FileUploader.tsx} +7 -6
  393. package/src/FileUploader/index.ts +13 -0
  394. package/src/OdysseyCacheProvider.test.tsx +1 -0
  395. package/src/OdysseyCacheProvider.tsx +18 -4
  396. package/src/OdysseyProvider.tsx +12 -4
  397. package/src/OdysseyThemeProvider.tsx +6 -2
  398. package/src/Radio.tsx +41 -12
  399. package/src/RadioGroup.tsx +26 -7
  400. package/src/Select.tsx +116 -45
  401. package/src/{labs/Switch.tsx → Switch.tsx} +95 -41
  402. package/src/Tabs.tsx +8 -10
  403. package/src/Tag.tsx +134 -3
  404. package/src/TextField.tsx +18 -41
  405. package/src/Toast.tsx +1 -1
  406. package/src/ToastStack.tsx +2 -2
  407. package/src/createShadowDomElements.ts +53 -0
  408. package/src/i18n.ts +3 -3
  409. package/src/index.ts +7 -2
  410. package/src/labs/AppTile.tsx +200 -0
  411. package/src/labs/{DataComponents/StackContent.tsx → DataView/CardLayoutContent.tsx} +24 -19
  412. package/src/labs/{DataComponents/StackCard.tsx → DataView/DataCard.tsx} +7 -7
  413. package/src/labs/{DataComponents → DataView}/DataTable.tsx +8 -4
  414. package/src/labs/DataView/DataView.test.tsx +158 -0
  415. package/src/labs/{DataComponents → DataView}/DataView.tsx +119 -42
  416. package/src/labs/{DataComponents → DataView}/DetailPanel.tsx +2 -2
  417. package/src/labs/{DataComponents/TableContent.tsx → DataView/TableLayoutContent.tsx} +59 -27
  418. package/src/labs/{DataComponents → DataView}/TableSettings.tsx +5 -4
  419. package/src/labs/{DataComponents → DataView}/componentTypes.ts +24 -9
  420. package/src/labs/{DataComponents → DataView}/constants.tsx +2 -2
  421. package/src/labs/{DataComponents → DataView}/index.tsx +0 -1
  422. package/src/labs/{DataComponents → DataView}/useFilterConversion.ts +2 -2
  423. package/src/labs/DateField.tsx +3 -0
  424. package/src/labs/DatePicker.tsx +12 -1
  425. package/src/labs/SideNav/CollapseIcon.tsx +48 -0
  426. package/src/labs/SideNav/OktaLogo.tsx +39 -0
  427. package/src/labs/SideNav/SideNav.tsx +486 -0
  428. package/src/labs/SideNav/SideNavFooterContent.tsx +64 -0
  429. package/src/labs/SideNav/SideNavHeader.tsx +88 -0
  430. package/src/labs/SideNav/SideNavItemContent.tsx +216 -0
  431. package/src/labs/SideNav/SideNavItemLinkContent.tsx +87 -0
  432. package/src/labs/SideNav/index.ts +15 -0
  433. package/src/labs/SideNav/types.ts +152 -0
  434. package/src/labs/TopNav.tsx +3 -1
  435. package/src/labs/index.ts +3 -4
  436. package/src/labs/useDateFieldsTranslations.ts +1 -1
  437. package/src/properties/odyssey-react-mui.properties +2 -1
  438. package/src/properties/translations/odyssey-react-mui_cs.properties +15 -3
  439. package/src/properties/translations/odyssey-react-mui_da.properties +15 -3
  440. package/src/properties/translations/odyssey-react-mui_de.properties +14 -2
  441. package/src/properties/translations/odyssey-react-mui_el.properties +16 -4
  442. package/src/properties/translations/odyssey-react-mui_es.properties +15 -3
  443. package/src/properties/translations/odyssey-react-mui_fi.properties +15 -3
  444. package/src/properties/translations/odyssey-react-mui_fr.properties +15 -3
  445. package/src/properties/translations/odyssey-react-mui_ht.properties +17 -6
  446. package/src/properties/translations/odyssey-react-mui_hu.properties +15 -3
  447. package/src/properties/translations/odyssey-react-mui_id.properties +15 -3
  448. package/src/properties/translations/odyssey-react-mui_it.properties +15 -3
  449. package/src/properties/translations/odyssey-react-mui_ja.properties +14 -2
  450. package/src/properties/translations/odyssey-react-mui_ko.properties +14 -2
  451. package/src/properties/translations/odyssey-react-mui_ms.properties +15 -3
  452. package/src/properties/translations/odyssey-react-mui_nb.properties +15 -3
  453. package/src/properties/translations/odyssey-react-mui_nl_NL.properties +15 -3
  454. package/src/properties/translations/odyssey-react-mui_pl.properties +15 -3
  455. package/src/properties/translations/odyssey-react-mui_pt_BR.properties +15 -3
  456. package/src/properties/translations/odyssey-react-mui_ro.properties +15 -3
  457. package/src/properties/translations/odyssey-react-mui_ru.properties +15 -3
  458. package/src/properties/translations/odyssey-react-mui_sv.properties +15 -3
  459. package/src/properties/translations/odyssey-react-mui_th.properties +14 -2
  460. package/src/properties/translations/odyssey-react-mui_tr.properties +15 -3
  461. package/src/properties/translations/odyssey-react-mui_uk.properties +15 -3
  462. package/src/properties/translations/odyssey-react-mui_vi.properties +15 -3
  463. package/src/properties/translations/odyssey-react-mui_zh_CN.properties +14 -2
  464. package/src/properties/translations/odyssey-react-mui_zh_TW.properties +14 -2
  465. package/src/properties/ts/odyssey-react-mui.ts +1 -1
  466. package/src/properties/ts/odyssey-react-mui_cs.ts +1 -1
  467. package/src/properties/ts/odyssey-react-mui_da.ts +1 -1
  468. package/src/properties/ts/odyssey-react-mui_de.ts +1 -1
  469. package/src/properties/ts/odyssey-react-mui_el.ts +1 -1
  470. package/src/properties/ts/odyssey-react-mui_es.ts +1 -1
  471. package/src/properties/ts/odyssey-react-mui_fi.ts +1 -1
  472. package/src/properties/ts/odyssey-react-mui_fr.ts +1 -1
  473. package/src/properties/ts/odyssey-react-mui_ht.ts +1 -1
  474. package/src/properties/ts/odyssey-react-mui_hu.ts +1 -1
  475. package/src/properties/ts/odyssey-react-mui_id.ts +1 -1
  476. package/src/properties/ts/odyssey-react-mui_it.ts +1 -1
  477. package/src/properties/ts/odyssey-react-mui_ja.ts +1 -1
  478. package/src/properties/ts/odyssey-react-mui_ko.ts +1 -1
  479. package/src/properties/ts/odyssey-react-mui_ms.ts +1 -1
  480. package/src/properties/ts/odyssey-react-mui_nb.ts +1 -1
  481. package/src/properties/ts/odyssey-react-mui_nl_NL.ts +1 -1
  482. package/src/properties/ts/odyssey-react-mui_pl.ts +1 -1
  483. package/src/properties/ts/odyssey-react-mui_pt_BR.ts +1 -1
  484. package/src/properties/ts/odyssey-react-mui_ro.ts +1 -1
  485. package/src/properties/ts/odyssey-react-mui_ru.ts +1 -1
  486. package/src/properties/ts/odyssey-react-mui_sv.ts +1 -1
  487. package/src/properties/ts/odyssey-react-mui_th.ts +1 -1
  488. package/src/properties/ts/odyssey-react-mui_tr.ts +1 -1
  489. package/src/properties/ts/odyssey-react-mui_uk.ts +1 -1
  490. package/src/properties/ts/odyssey-react-mui_vi.ts +1 -1
  491. package/src/properties/ts/odyssey-react-mui_zh_CN.ts +1 -1
  492. package/src/properties/ts/odyssey-react-mui_zh_TW.ts +1 -1
  493. package/src/test-selectors/getByQuerySelector.ts +176 -0
  494. package/src/test-selectors/getComputedAccessibleErrorMessageText.ts +52 -0
  495. package/src/test-selectors/getComputedAccessibleText.ts +36 -0
  496. package/src/test-selectors/index.ts +2 -2
  497. package/src/test-selectors/interpolateString.ts +41 -0
  498. package/src/test-selectors/linkedHtmlSelectors.ts +73 -0
  499. package/src/test-selectors/queryOdysseySelector.ts +36 -0
  500. package/src/test-selectors/querySelector.ts +221 -170
  501. package/src/test-selectors/sanityChecks.ts +53 -0
  502. package/src/test-selectors/testSelector.ts +143 -0
  503. package/src/theme/components.tsx +238 -150
  504. package/src/theme/createOdysseyMuiTheme.ts +4 -1
  505. package/dist/createShadowRootElement.js +0 -26
  506. package/dist/createShadowRootElement.js.map +0 -1
  507. package/dist/labs/DataComponents/BulkActionsMenu.js.map +0 -1
  508. package/dist/labs/DataComponents/DataStack.js +0 -85
  509. package/dist/labs/DataComponents/DataStack.js.map +0 -1
  510. package/dist/labs/DataComponents/DataTable.js.map +0 -1
  511. package/dist/labs/DataComponents/DataView.js.map +0 -1
  512. package/dist/labs/DataComponents/DetailPanel.js.map +0 -1
  513. package/dist/labs/DataComponents/LayoutSwitcher.js.map +0 -1
  514. package/dist/labs/DataComponents/RowActions.js.map +0 -1
  515. package/dist/labs/DataComponents/StackCard.js.map +0 -1
  516. package/dist/labs/DataComponents/StackContent.js.map +0 -1
  517. package/dist/labs/DataComponents/TableContent.js.map +0 -1
  518. package/dist/labs/DataComponents/TableSettings.js.map +0 -1
  519. package/dist/labs/DataComponents/componentTypes.js.map +0 -1
  520. package/dist/labs/DataComponents/constants.js.map +0 -1
  521. package/dist/labs/DataComponents/dataTypes.js.map +0 -1
  522. package/dist/labs/DataComponents/fetchData.js.map +0 -1
  523. package/dist/labs/DataComponents/index.js.map +0 -1
  524. package/dist/labs/DataComponents/tableConstants.js.map +0 -1
  525. package/dist/labs/DataComponents/useFilterConversion.js.map +0 -1
  526. package/dist/labs/FileUpload.js.map +0 -1
  527. package/dist/labs/FileUploadIllustration.js.map +0 -1
  528. package/dist/labs/FileUploadPreview.js.map +0 -1
  529. package/dist/labs/SideNav.js +0 -478
  530. package/dist/labs/SideNav.js.map +0 -1
  531. package/dist/labs/Switch.js.map +0 -1
  532. package/dist/src/createShadowRootElement.d.ts.map +0 -1
  533. package/dist/src/labs/DataComponents/BulkActionsMenu.d.ts.map +0 -1
  534. package/dist/src/labs/DataComponents/DataStack.d.ts +0 -20
  535. package/dist/src/labs/DataComponents/DataStack.d.ts.map +0 -1
  536. package/dist/src/labs/DataComponents/DataTable.d.ts +0 -16
  537. package/dist/src/labs/DataComponents/DataTable.d.ts.map +0 -1
  538. package/dist/src/labs/DataComponents/DataView.d.ts.map +0 -1
  539. package/dist/src/labs/DataComponents/DetailPanel.d.ts.map +0 -1
  540. package/dist/src/labs/DataComponents/LayoutSwitcher.d.ts.map +0 -1
  541. package/dist/src/labs/DataComponents/RowActions.d.ts.map +0 -1
  542. package/dist/src/labs/DataComponents/StackCard.d.ts.map +0 -1
  543. package/dist/src/labs/DataComponents/StackContent.d.ts.map +0 -1
  544. package/dist/src/labs/DataComponents/TableContent.d.ts.map +0 -1
  545. package/dist/src/labs/DataComponents/TableSettings.d.ts.map +0 -1
  546. package/dist/src/labs/DataComponents/componentTypes.d.ts.map +0 -1
  547. package/dist/src/labs/DataComponents/constants.d.ts.map +0 -1
  548. package/dist/src/labs/DataComponents/dataTypes.d.ts.map +0 -1
  549. package/dist/src/labs/DataComponents/fetchData.d.ts.map +0 -1
  550. package/dist/src/labs/DataComponents/index.d.ts.map +0 -1
  551. package/dist/src/labs/DataComponents/tableConstants.d.ts.map +0 -1
  552. package/dist/src/labs/DataComponents/useFilterConversion.d.ts.map +0 -1
  553. package/dist/src/labs/FileUpload.d.ts.map +0 -1
  554. package/dist/src/labs/FileUploadIllustration.d.ts.map +0 -1
  555. package/dist/src/labs/FileUploadPreview.d.ts.map +0 -1
  556. package/dist/src/labs/SideNav.d.ts.map +0 -1
  557. package/dist/src/labs/Switch.d.ts.map +0 -1
  558. package/dist/src/test-selectors/featureTestSelector.d.ts +0 -31
  559. package/dist/src/test-selectors/featureTestSelector.d.ts.map +0 -1
  560. package/dist/src/test-selectors/odysseyTestSelectors.d.ts +0 -120
  561. package/dist/src/test-selectors/odysseyTestSelectors.d.ts.map +0 -1
  562. package/dist/test-selectors/featureTestSelector.js +0 -2
  563. package/dist/test-selectors/featureTestSelector.js.map +0 -1
  564. package/dist/test-selectors/odysseyTestSelectors.js.map +0 -1
  565. package/src/createShadowRootElement.ts +0 -31
  566. package/src/labs/DataComponents/DataStack.tsx +0 -105
  567. package/src/labs/SideNav.tsx +0 -745
  568. package/src/test-selectors/featureTestSelector.ts +0 -41
  569. /package/dist/{labs → FileUploader}/FileUploadIllustration.js +0 -0
  570. /package/dist/{labs → FileUploader}/FileUploadPreview.js +0 -0
  571. /package/dist/labs/{DataComponents → DataView}/BulkActionsMenu.js +0 -0
  572. /package/dist/labs/{DataComponents → DataView}/DetailPanel.js +0 -0
  573. /package/dist/labs/{DataComponents → DataView}/LayoutSwitcher.js +0 -0
  574. /package/dist/labs/{DataComponents → DataView}/RowActions.js +0 -0
  575. /package/dist/labs/{DataComponents → DataView}/componentTypes.js +0 -0
  576. /package/dist/labs/{DataComponents → DataView}/dataTypes.js +0 -0
  577. /package/dist/labs/{DataComponents → DataView}/fetchData.js +0 -0
  578. /package/dist/labs/{DataComponents → DataView}/tableConstants.js +0 -0
  579. /package/dist/labs/{DataComponents → DataView}/useFilterConversion.js +0 -0
  580. /package/dist/src/{labs → FileUploader}/FileUploadIllustration.d.ts +0 -0
  581. /package/dist/src/labs/{DataComponents → DataView}/BulkActionsMenu.d.ts +0 -0
  582. /package/dist/src/labs/{DataComponents → DataView}/LayoutSwitcher.d.ts +0 -0
  583. /package/dist/src/labs/{DataComponents → DataView}/RowActions.d.ts +0 -0
  584. /package/dist/src/labs/{DataComponents → DataView}/dataTypes.d.ts +0 -0
  585. /package/dist/src/labs/{DataComponents → DataView}/fetchData.d.ts +0 -0
  586. /package/dist/src/labs/{DataComponents → DataView}/tableConstants.d.ts +0 -0
  587. /package/src/{labs → FileUploader}/FileUploadIllustration.tsx +0 -0
  588. /package/src/labs/{DataComponents → DataView}/BulkActionsMenu.tsx +0 -0
  589. /package/src/labs/{DataComponents → DataView}/LayoutSwitcher.tsx +0 -0
  590. /package/src/labs/{DataComponents → DataView}/RowActions.tsx +0 -0
  591. /package/src/labs/{DataComponents → DataView}/dataTypes.ts +0 -0
  592. /package/src/labs/{DataComponents → DataView}/fetchData.ts +0 -0
  593. /package/src/labs/{DataComponents → DataView}/tableConstants.tsx +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"querySelector.d.ts","sourceRoot":"","sources":["../../../src/test-selectors/querySelector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,OAAO,EAEP,KAAK,cAAc,EAIpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,eAAO,MAAM,iBAAiB,WACpB,MAAM,UACN,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,oBAoBxC,CAAC;AA4CF,eAAO,MAAM,aAAa,GAAI,aAAa,SAAS,mBAAmB,8DAIpE;IACD;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC,OAAO,OAAO,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,aAAa,SAAS,YAAY,GAC7C,MAAM,CACJ,aAAa,CAAC,UAAU,CAAC,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,EAC1D,MAAM,GAAG,MAAM,CAChB,GACD,KAAK,CAAC;IACV,aAAa,EAAE,aAAa,CAAC;CAC9B;;cAuCQ,WAAW,SAAS,MAAM,CAAC,OAAO,aAAa,EAAE,SAAS,CAAC,eAC7C,WAAW,iBACT,CAAC,OAAO,aAAa,EAAE,SAAS,CAAC,CAAC,WAAW,CAAC,SAAS,YAAY,GAC9E,MAAM,CACJ,CAAC,OAAO,aAAa,EAAE,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,EAC3F,MAAM,GAAG,MAAM,CAChB,GACD,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAelB,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,aAAa,SAAS,MAAM,OAAO,oBAAoB,4CAKtD;IACD,MAAM,EAAE,UAAU,CAChB,OAAO,aAAa,CAAC,CAAC,OAAO,oBAAoB,EAAE,aAAa,CAAC,CAAC,CACnE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACf;;OAEG;IACH,aAAa,EAAE,aAAa,CAAC;IAC7B;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CACvB,OAAO,aAAa,CAAC,CAAC,OAAO,oBAAoB,EAAE,aAAa,CAAC,CAAC,CACnE,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;CACtB;;cA5CQ,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDhB,CAAC"}
1
+ {"version":3,"file":"querySelector.d.ts","sourceRoot":"","sources":["../../../src/test-selectors/querySelector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,QAAQ,EACb,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAI9B,MAAM,MAAM,uBAAuB,CACjC,iBAAiB,SAAS,YAAY,EACtC,gBAAgB,SAAS,WAAW,IAClC;IACF;;OAEG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;CAChC,GAAG,CAAC,iBAAiB,SAAS,eAAe,GAC1C,iBAAiB,CAAC,iBAAiB,CAAC,SAAS;IAC3C,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,GACC,IAAI,SAAS,QAAQ,EAAE,GACrB;IACE;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;CACpB,GACD,MAAM,GACR,MAAM,GACR,MAAM,CAAC,GACT,CAAC,iBAAiB,SAAS,eAAe,GACtC;IACE;;OAEG;IACH,OAAO,EAAE,MAAM,CACb,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,EACrD,MAAM,GAAG,MAAM,CAChB,CAAC;CACH,GACD,MAAM,CAAC,CAAC;AAEd,eAAO,MAAM,cAAc,GACzB,iBAAiB,SAAS,YAAY,EACtC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC5D,gBAAgB,SAAS,WAAW,wFAOnC;IACD,gBAAgB,EAAE,WAAW,CAAC;IAC9B,WAAW,EAAE,gBAAgB,CAAC;IAC9B,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,YAAY,EAAE,iBAAiB,CAAC;CACjC,6FA8CA,CAAC;AAEF,eAAO,MAAM,aAAa,GACvB,iBAAiB,SAAS,YAAY,gBAIvB,iBAAiB,MAEhC,gBAAgB,SAAS,WAAW,iBAC5B;IACL;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;CACtB,GAAG,uBAAuB,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;aAkGlC,gBAAgB,SAAS,KAAK,GACtD,WAAW,GACX,WAAW,GAAG,IAAI;uBAEC,iBAAiB,SAAS,sBAAsB,IAzFvE,SAAS,SAAS,iBAAiB,SAAS,sBAAsB,GAC9D,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,GACzC,KAAK,aAEE,SAAS,cAuFd,KAAK;iBACiB,iBAAiB,SAAS,oBAAoB,IApE1E,SAAS,SAAS,iBAAiB,SAAS,oBAAoB,GAC5D,MAAM,iBAAiB,CAAC,UAAU,CAAC,GACnC,MAAM,oBAAoB,EAC9B,gBAAgB,SAAS,WAAW,sBAExB;QACV,IAAI,EAAE,SAAS,CAAC;KACjB,GAAG,uBAAuB,CACzB,iBAAiB,SAAS,oBAAoB,GAC1C,iBAAiB,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,GACxC,YAAY,EAChB,gBAAgB,CACjB;;mTApCD,SAAS;uaA2BgB,WAAW;;;YAnJxC;;eAEG;;;kBAIO,MAAM,IAAI;;YAIZ;;eAEG;kBACG,IAAI,CAAC,MAAM,CAAC;;YAOpB;;eAEG;;;;yQAkGL,SAAS;;;QA8FL,KAAK;CAEZ,CAAC"}
@@ -0,0 +1,18 @@
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
+ export declare class ElementError extends Error {
13
+ constructor(message: string, element: HTMLElement);
14
+ }
15
+ export declare const normalizeText: (text: string) => string;
16
+ export declare const getWindow: (htmlElement: HTMLElement) => Window & typeof globalThis;
17
+ export declare const validateHtmlElement: (htmlElement: HTMLElement) => void;
18
+ //# sourceMappingURL=sanityChecks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanityChecks.d.ts","sourceRoot":"","sources":["../../../src/test-selectors/sanityChecks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;CAOlD;AAED,eAAO,MAAM,aAAa,SAAU,MAAM,WAEzC,CAAC;AAEF,eAAO,MAAM,SAAS,gBAAiB,WAAW,+BAUjD,CAAC;AAEF,eAAO,MAAM,mBAAmB,gBAAiB,WAAW,SAY3D,CAAC"}
@@ -0,0 +1,46 @@
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
+ import { type ByRoleOptions, type SelectorMatcherOptions } from "@testing-library/dom";
13
+ import { type RoleSelectorMethod, type TextSelectorMethod } from "./getByQuerySelector";
14
+ /**
15
+ * 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.
16
+ * @see https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/react/index.d.ts#L2815
17
+ */
18
+ export type AriaRole = "alert" | "alertdialog" | "application" | "article" | "banner" | "button" | "cell" | "checkbox" | "columnheader" | "combobox" | "complementary" | "contentinfo" | "definition" | "dialog" | "directory" | "document" | "feed" | "figure" | "form" | "grid" | "gridcell" | "group" | "heading" | "img" | "link" | "list" | "listbox" | "listitem" | "log" | "main" | "marquee" | "math" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "navigation" | "none" | "note" | "option" | "presentation" | "progressbar" | "radio" | "radiogroup" | "region" | "row" | "rowgroup" | "rowheader" | "scrollbar" | "search" | "searchbox" | "separator" | "slider" | "spinbutton" | "status" | "switch" | "tab" | "table" | "tablist" | "tabpanel" | "term" | "textbox" | "timer" | "toolbar" | "tooltip" | "tree" | "treegrid" | "treeitem";
19
+ export type ControlledElementSelector = {
20
+ isControlledElement?: true;
21
+ };
22
+ export type RoleSelectorOptions = {
23
+ method: RoleSelectorMethod;
24
+ options: Record<string, keyof ByRoleOptions>;
25
+ role: AriaRole | AriaRole[];
26
+ };
27
+ export type TextSelectorOptions = {
28
+ method: TextSelectorMethod;
29
+ options: Record<string, keyof SelectorMatcherOptions>;
30
+ text: string;
31
+ };
32
+ export type ElementSelectorValue = RoleSelectorOptions | TextSelectorOptions;
33
+ export type ElementSelector = {
34
+ elementSelector: ElementSelectorValue;
35
+ };
36
+ export type ElementChildSelectorValue = Record<string, TestSelector & ControlledElementSelector>;
37
+ export type ElementChildSelector = {
38
+ children: ElementChildSelectorValue;
39
+ };
40
+ export type AccessibleTextSelectorValue = "description" | "errorMessage" | "label";
41
+ export type AccessibleTextSelector = {
42
+ /** An "accessible -> semantic" name mapping such as "`description` -> `hint`" where "description" equates to `"aria-description"`. */
43
+ accessibleText: Record<string, AccessibleTextSelectorValue>;
44
+ };
45
+ export type TestSelector = ElementChildSelector | ElementSelector | (ElementChildSelector & ElementSelector) | (AccessibleTextSelector & ElementSelector) | (ElementChildSelector & AccessibleTextSelector & ElementSelector);
46
+ //# sourceMappingURL=testSelector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testSelector.d.ts","sourceRoot":"","sources":["../../../src/test-selectors/testSelector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC5B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACxB,MAAM,sBAAsB,CAAC;AAE9B;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,aAAa,GACb,aAAa,GACb,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,UAAU,GACV,cAAc,GACd,UAAU,GACV,eAAe,GACf,aAAa,GACb,YAAY,GACZ,QAAQ,GACR,WAAW,GACX,UAAU,GACV,MAAM,GACN,QAAQ,GACR,MAAM,GACN,MAAM,GACN,UAAU,GACV,OAAO,GACP,SAAS,GACT,KAAK,GACL,MAAM,GACN,MAAM,GACN,SAAS,GACT,UAAU,GACV,KAAK,GACL,MAAM,GACN,SAAS,GACT,MAAM,GACN,MAAM,GACN,SAAS,GACT,UAAU,GACV,kBAAkB,GAClB,eAAe,GACf,YAAY,GACZ,MAAM,GACN,MAAM,GACN,QAAQ,GACR,cAAc,GACd,aAAa,GACb,OAAO,GACP,YAAY,GACZ,QAAQ,GACR,KAAK,GACL,UAAU,GACV,WAAW,GACX,WAAW,GACX,QAAQ,GACR,WAAW,GACX,WAAW,GACX,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,QAAQ,GACR,KAAK,GACL,OAAO,GACP,SAAS,GACT,UAAU,GACV,MAAM,GACN,SAAS,GACT,OAAO,GACP,SAAS,GACT,SAAS,GACT,MAAM,GACN,UAAU,GACV,UAAU,CAAC;AAEf,MAAM,MAAM,yBAAyB,GAAG;IAAE,mBAAmB,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAEvE,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,aAAa,CAAC,CAAC;IAC7C,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE,CAAC;CAE7B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,sBAAsB,CAAC,CAAC;IACtD,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAE7E,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,oBAAoB,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAC5C,MAAM,EACN,YAAY,GAAG,yBAAyB,CACzC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,yBAAyB,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GACnC,aAAa,GACb,cAAc,GACd,OAAO,CAAC;AAEZ,MAAM,MAAM,sBAAsB,GAAG;IACnC,sIAAsI;IACtI,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;CAC7D,CAAC;AAEF,MAAM,MAAM,YAAY,GACpB,oBAAoB,GACpB,eAAe,GACf,CAAC,oBAAoB,GAAG,eAAe,CAAC,GACxC,CAAC,sBAAsB,GAAG,eAAe,CAAC,GAC1C,CAAC,oBAAoB,GAAG,sBAAsB,GAAG,eAAe,CAAC,CAAC"}
@@ -11,8 +11,10 @@
11
11
  */
12
12
  import { ThemeOptions } from "@mui/material";
13
13
  import { DesignTokens } from "./theme";
14
- export declare const components: ({ odysseyTokens, shadowDomElement, }: {
14
+ export declare const components: ({ odysseyTokens, shadowDomElement, shadowRootElement, }: {
15
15
  odysseyTokens: DesignTokens;
16
+ /** @deprecated use `shadowRootElement` */
16
17
  shadowDomElement?: HTMLElement;
18
+ shadowRootElement?: HTMLElement;
17
19
  }) => ThemeOptions["components"];
18
20
  //# sourceMappingURL=components.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/theme/components.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAwC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AASvC,eAAO,MAAM,UAAU,yCAGpB;IACD,aAAa,EAAE,YAAY,CAAC;IAC5B,gBAAgB,CAAC,EAAE,WAAW,CAAC;CAChC,KAAG,YAAY,CAAC,YAAY,CAy5F5B,CAAC"}
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/theme/components.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAwC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AASvC,eAAO,MAAM,UAAU,4DAIpB;IACD,aAAa,EAAE,YAAY,CAAC;IAC5B,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,iBAAiB,CAAC,EAAE,WAAW,CAAC;CACjC,KAAG,YAAY,CAAC,YAAY,CA8+F5B,CAAC"}
@@ -16,8 +16,10 @@ import "./palette.types";
16
16
  import "./typography.types";
17
17
  export type DesignTokens = typeof Tokens;
18
18
  export type DesignTokensOverride = Partial<typeof Tokens>;
19
- export declare const createOdysseyMuiTheme: ({ odysseyTokens, shadowDomElement, }: {
19
+ export declare const createOdysseyMuiTheme: ({ odysseyTokens, shadowDomElement, shadowRootElement, }: {
20
20
  odysseyTokens: DesignTokens;
21
+ /** @deprecated Use `shadowRootElement` */
21
22
  shadowDomElement?: HTMLElement;
23
+ shadowRootElement?: HTMLElement;
22
24
  }) => import("@mui/material/styles").Theme;
23
25
  //# sourceMappingURL=createOdysseyMuiTheme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createOdysseyMuiTheme.d.ts","sourceRoot":"","sources":["../../../src/theme/createOdysseyMuiTheme.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AAQtD,OAAO,oBAAoB,CAAC;AAC5B,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,oBAAoB,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,OAAO,MAAM,CAAC;AACzC,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,OAAO,MAAM,CAAC,CAAC;AAE1D,eAAO,MAAM,qBAAqB,yCAG/B;IACD,aAAa,EAAE,YAAY,CAAC;IAC5B,gBAAgB,CAAC,EAAE,WAAW,CAAC;CAChC,yCAWG,CAAC"}
1
+ {"version":3,"file":"createOdysseyMuiTheme.d.ts","sourceRoot":"","sources":["../../../src/theme/createOdysseyMuiTheme.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AAQtD,OAAO,oBAAoB,CAAC;AAC5B,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,oBAAoB,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,OAAO,MAAM,CAAC;AACzC,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,OAAO,MAAM,CAAC,CAAC;AAE1D,eAAO,MAAM,qBAAqB,4DAI/B;IACD,aAAa,EAAE,YAAY,CAAC;IAC5B,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,iBAAiB,CAAC,EAAE,WAAW,CAAC;CACjC,yCAWG,CAAC"}
@@ -0,0 +1,64 @@
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 { within } from "@testing-library/dom";
14
+ export const executeTestingLibraryMethod = ({
15
+ canvas,
16
+ queryMethod,
17
+ selectionMethod
18
+ }) => canvas[queryMethod.concat(selectionMethod)];
19
+ export const getByQuerySelector = ({
20
+ element,
21
+ queryMethod,
22
+ queryOptions,
23
+ role,
24
+ selectionMethod,
25
+ text
26
+ }) => {
27
+ const canvas = within(element);
28
+ const capturedElement = selectionMethod === "ByRole" ? executeTestingLibraryMethod({
29
+ canvas,
30
+ queryMethod,
31
+ selectionMethod
32
+ })(role, queryOptions) : executeTestingLibraryMethod({
33
+ canvas,
34
+ queryMethod,
35
+ selectionMethod
36
+ })(text, queryOptions);
37
+ return capturedElement;
38
+ };
39
+ export const getByRoleQuerySelector = ({
40
+ element,
41
+ queryMethod,
42
+ queryOptions,
43
+ role
44
+ }) => getByQuerySelector({
45
+ element,
46
+ queryMethod,
47
+ queryOptions,
48
+ role,
49
+ selectionMethod: "ByRole"
50
+ });
51
+ export const getByTextQuerySelector = ({
52
+ element,
53
+ queryMethod,
54
+ queryOptions,
55
+ selectionMethod,
56
+ text
57
+ }) => getByQuerySelector({
58
+ element,
59
+ queryMethod,
60
+ queryOptions,
61
+ selectionMethod,
62
+ text
63
+ });
64
+ //# sourceMappingURL=getByQuerySelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getByQuerySelector.js","names":["within","executeTestingLibraryMethod","canvas","queryMethod","selectionMethod","concat","getByQuerySelector","element","queryOptions","role","text","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":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAEEA,MAAM,QAMD,sBAAsB;AAqD7B,OAAO,MAAMC,2BAA2B,GAAGA,CAEzC;EACAC,MAAM;EACNC,WAAW;EACXC;AAKF,CAAC,KACCF,MAAM,CACJC,WAAW,CAACE,MAAM,CAACD,eAAe,CAAC,CAIpC;AAEH,OAAO,MAAME,kBAAkB,GAAGA,CAEhC;EACAC,OAAO;EACPJ,WAAW;EACXK,YAAY;EACZC,IAAI;EACJL,eAAe;EACfM;AAiBF,CAAC,KAAK;EACJ,MAAMR,MAAM,GAAGF,MAAM,CAACO,OAAO,CAAC;EAE9B,MAAMI,eAAe,GACnBP,eAAe,KAAK,QAAQ,GACxBH,2BAA2B,CAAgB;IACzCC,MAAM;IACNC,WAAW;IACXC;EACF,CAAC,CAAC,CAACK,IAAI,EAAED,YAAY,CAAC,GACtBP,2BAA2B,CAAgB;IACzCC,MAAM;IACNC,WAAW;IACXC;EACF,CAAC,CAAC,CAACM,IAAI,EAAEF,YAAY,CAAC;EAE5B,OAAOG,eAAe;AAGxB,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAGA,CAAuC;EAC3EL,OAAO;EACPJ,WAAW;EACXK,YAAY;EACZC;AAMF,CAAC,KACCH,kBAAkB,CAAC;EACjBC,OAAO;EACPJ,WAAW;EACXK,YAAY;EACZC,IAAI;EACJL,eAAe,EAAE;AACnB,CAAC,CAAC;AAEJ,OAAO,MAAMS,sBAAsB,GAAGA,CAAuC;EAC3EN,OAAO;EACPJ,WAAW;EACXK,YAAY;EACZJ,eAAe;EACfM;AAOF,CAAC,KACCJ,kBAAkB,CAAC;EACjBC,OAAO;EACPJ,WAAW;EACXK,YAAY;EACZJ,eAAe;EACfM;AACF,CAAC,CAAC"}
@@ -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
+ import { normalizeText, validateHtmlElement } from "./sanityChecks.js";
13
+ export const getComputedAccessibleErrorMessageText = htmlElement => {
14
+ validateHtmlElement(htmlElement);
15
+ const ariaErrorMessageId = htmlElement.getAttribute("aria-errormessage");
16
+ if (Boolean(ariaErrorMessageId) && /\s+/.test(ariaErrorMessageId || "")) {
17
+ throw new Error("`aria-errormessage` needs to have a single `id`.".concat("\n", `Received: ${ariaErrorMessageId}`));
18
+ }
19
+ const ariaInvalid = htmlElement.getAttribute("aria-invalid");
20
+ if (!htmlElement.hasAttribute("aria-invalid") || ariaInvalid === "false") {
21
+ throw new Error("`aria-invalid` must be `true` when getting an accessible error message.".concat("\n", `Received: ${ariaInvalid}`));
22
+ }
23
+ return normalizeText(htmlElement.ownerDocument.getElementById(ariaErrorMessageId || "")?.textContent ?? "");
24
+ };
25
+ //# sourceMappingURL=getComputedAccessibleErrorMessageText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getComputedAccessibleErrorMessageText.js","names":["normalizeText","validateHtmlElement","getComputedAccessibleErrorMessageText","htmlElement","ariaErrorMessageId","getAttribute","Boolean","test","Error","concat","ariaInvalid","hasAttribute","ownerDocument","getElementById","textContent"],"sources":["../../src/test-selectors/getComputedAccessibleErrorMessageText.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 { normalizeText, validateHtmlElement } from \"./sanityChecks\";\n\n// Code modified from: https://github.com/testing-library/jest-dom/blob/main/src/to-have-accessible-errormessage.js\n\n/** @see https://www.w3.org/TR/wai-aria-1.2/#aria-errormessage */\nexport const getComputedAccessibleErrorMessageText = (\n htmlElement: HTMLElement,\n) => {\n validateHtmlElement(htmlElement);\n\n const ariaErrorMessageId = htmlElement.getAttribute(\"aria-errormessage\");\n\n // `aria-errormessage` only supports a single `id`.\n if (Boolean(ariaErrorMessageId) && /\\s+/.test(ariaErrorMessageId || \"\")) {\n throw new Error(\n \"`aria-errormessage` needs to have a single `id`.\".concat(\n \"\\n\",\n `Received: ${ariaErrorMessageId}`,\n ),\n );\n }\n\n /** @see https://www.w3.org/TR/wai-aria-1.2/#aria-invalid */\n const ariaInvalid = htmlElement.getAttribute(\"aria-invalid\");\n\n // `aria-invalid` only supports `true` when getting an error message.\n if (!htmlElement.hasAttribute(\"aria-invalid\") || ariaInvalid === \"false\") {\n throw new Error(\n \"`aria-invalid` must be `true` when getting an accessible error message.\".concat(\n \"\\n\",\n `Received: ${ariaInvalid}`,\n ),\n );\n }\n\n return normalizeText(\n htmlElement.ownerDocument.getElementById(ariaErrorMessageId || \"\")\n ?.textContent ?? \"\",\n );\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA,SAYSA,aAAa,EAAEC,mBAAmB;AAK3C,OAAO,MAAMC,qCAAqC,GAChDC,WAAwB,IACrB;EACHF,mBAAmB,CAACE,WAAW,CAAC;EAEhC,MAAMC,kBAAkB,GAAGD,WAAW,CAACE,YAAY,CAAC,mBAAmB,CAAC;EAGxE,IAAIC,OAAO,CAACF,kBAAkB,CAAC,IAAI,KAAK,CAACG,IAAI,CAACH,kBAAkB,IAAI,EAAE,CAAC,EAAE;IACvE,MAAM,IAAII,KAAK,CACb,kDAAkD,CAACC,MAAM,CACvD,IAAI,EACH,aAAYL,kBAAmB,EAClC,CACF,CAAC;EACH;EAGA,MAAMM,WAAW,GAAGP,WAAW,CAACE,YAAY,CAAC,cAAc,CAAC;EAG5D,IAAI,CAACF,WAAW,CAACQ,YAAY,CAAC,cAAc,CAAC,IAAID,WAAW,KAAK,OAAO,EAAE;IACxE,MAAM,IAAIF,KAAK,CACb,yEAAyE,CAACC,MAAM,CAC9E,IAAI,EACH,aAAYC,WAAY,EAC3B,CACF,CAAC;EACH;EAEA,OAAOV,aAAa,CAClBG,WAAW,CAACS,aAAa,CAACC,cAAc,CAACT,kBAAkB,IAAI,EAAE,CAAC,EAC9DU,WAAW,IAAI,EACrB,CAAC;AACH,CAAC"}
@@ -0,0 +1,24 @@
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 { computeAccessibleName, computeAccessibleDescription } from "dom-accessibility-api";
14
+ import { getComputedAccessibleErrorMessageText } from "./getComputedAccessibleErrorMessageText.js";
15
+ export const accessibleTextSelector = {
16
+ description: computeAccessibleDescription,
17
+ errorMessage: getComputedAccessibleErrorMessageText,
18
+ label: computeAccessibleName
19
+ };
20
+ export const getComputedAccessibleText = ({
21
+ element,
22
+ type
23
+ }) => accessibleTextSelector[type](element);
24
+ //# sourceMappingURL=getComputedAccessibleText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getComputedAccessibleText.js","names":["computeAccessibleName","computeAccessibleDescription","getComputedAccessibleErrorMessageText","accessibleTextSelector","description","errorMessage","label","getComputedAccessibleText","element","type"],"sources":["../../src/test-selectors/getComputedAccessibleText.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 computeAccessibleName,\n computeAccessibleDescription,\n} from \"dom-accessibility-api\";\n\nimport { type AccessibleTextSelectorValue } from \"./testSelector\";\nimport { getComputedAccessibleErrorMessageText } from \"./getComputedAccessibleErrorMessageText\";\n\nexport const accessibleTextSelector = {\n description: computeAccessibleDescription,\n errorMessage: getComputedAccessibleErrorMessageText,\n label: computeAccessibleName,\n} as const satisfies Record<\n AccessibleTextSelectorValue,\n (element: HTMLElement) => string\n>;\n\nexport const getComputedAccessibleText = ({\n element,\n type,\n}: {\n element: HTMLElement;\n type: AccessibleTextSelectorValue;\n}) => accessibleTextSelector[type](element);\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SACEA,qBAAqB,EACrBC,4BAA4B,QACvB,uBAAuB;AAAC,SAGtBC,qCAAqC;AAE9C,OAAO,MAAMC,sBAAsB,GAAG;EACpCC,WAAW,EAAEH,4BAA4B;EACzCI,YAAY,EAAEH,qCAAqC;EACnDI,KAAK,EAAEN;AACT,CAGC;AAED,OAAO,MAAMO,yBAAyB,GAAGA,CAAC;EACxCC,OAAO;EACPC;AAIF,CAAC,KAAKN,sBAAsB,CAACM,IAAI,CAAC,CAACD,OAAO,CAAC"}
@@ -9,7 +9,7 @@
9
9
  *
10
10
  * See the License for the specific language governing permissions and limitations under the License.
11
11
  */
12
- export * from "./featureTestSelector.js";
12
+ export * from "./queryOdysseySelector.js";
13
13
  export * from "./querySelector.js";
14
- export * from "./odysseyTestSelectors.js";
14
+ export * from "./testSelector.js";
15
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/test-selectors/index.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\nexport * from \"./featureTestSelector\";\nexport * from \"./querySelector\";\nexport * from \"./odysseyTestSelectors\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA;AAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/test-selectors/index.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\nexport * from \"./queryOdysseySelector\";\nexport * from \"./querySelector\";\nexport * from \"./testSelector\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA;AAAA;AAAA"}
@@ -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
+ export const isRegExpString = string => /^\/*(.+)\/$/.test(string);
14
+ export const interpolateString = (string, replacements) => {
15
+ const interpolatedString = eval(`
16
+ ${Object.entries(replacements).map(([variableName, value]) => `const ${variableName} = ${typeof value === "string" ? JSON.stringify(value) : value};`).join("")}
17
+
18
+ \`${string}\`
19
+ `);
20
+ if (isRegExpString(interpolatedString)) {
21
+ return eval(interpolatedString);
22
+ }
23
+ return interpolatedString;
24
+ };
25
+ //# sourceMappingURL=interpolateString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolateString.js","names":["isRegExpString","string","test","interpolateString","replacements","interpolatedString","eval","Object","entries","map","variableName","value","JSON","stringify","join"],"sources":["../../src/test-selectors/interpolateString.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\nexport const isRegExpString = (string: string) => /^\\/*(.+)\\/$/.test(string);\n\n/** @deprecated This function is only to be used to interpolate strings in unit tests. It uses `eval` internally which could be unsafe if it wasn't done explicitly in our testing environment. */\nexport const interpolateString = (\n string: string,\n replacements: Record<string, string | RegExp>,\n) => {\n // Writes out all replacement pairs as \"const variableName = value\" because we don't know which we want. Then at the end, we `return` the value we want by simply adding it as the last thing in eval'd code.\n const interpolatedString = eval(`\n ${Object.entries(replacements)\n .map(\n ([variableName, value]) =>\n `const ${variableName} = ${\n typeof value === \"string\" ? JSON.stringify(value) : value\n };`,\n )\n .join(\"\")}\n\n \\`${string}\\`\n `) as string;\n\n if (isRegExpString(interpolatedString)) {\n // If this string matches the RegExp format, we know that it's a RegExp, and we'll evaluate it to one. TypeScript has no way of knowing the resulting type, so we have to set that ourselves.\n return eval(interpolatedString) as RegExp;\n }\n\n // This interpolated string is just a string.\n return interpolatedString;\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,MAAMA,cAAc,GAAIC,MAAc,IAAK,aAAa,CAACC,IAAI,CAACD,MAAM,CAAC;AAG5E,OAAO,MAAME,iBAAiB,GAAGA,CAC/BF,MAAc,EACdG,YAA6C,KAC1C;EAEH,MAAMC,kBAAkB,GAAGC,IAAI,CAAE;AACnC,MAAMC,MAAM,CAACC,OAAO,CAACJ,YAAY,CAAC,CAC3BK,GAAG,CACF,CAAC,CAACC,YAAY,EAAEC,KAAK,CAAC,KACnB,SAAQD,YAAa,MACpB,OAAOC,KAAK,KAAK,QAAQ,GAAGC,IAAI,CAACC,SAAS,CAACF,KAAK,CAAC,GAAGA,KACrD,GACL,CAAC,CACAG,IAAI,CAAC,EAAE,CAAE;AAChB;AACA,QAAQb,MAAO;AACf,GAAG,CAAW;EAEZ,IAAID,cAAc,CAACK,kBAAkB,CAAC,EAAE;IAEtC,OAAOC,IAAI,CAACD,kBAAkB,CAAC;EACjC;EAGA,OAAOA,kBAAkB;AAC3B,CAAC"}
@@ -0,0 +1,34 @@
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
+ import { ElementError } from "./sanityChecks.js";
13
+ import { getRole } from "dom-accessibility-api";
14
+ export const getControlledElement = ({
15
+ element,
16
+ role
17
+ }) => {
18
+ if (element instanceof HTMLInputElement && element.list) {
19
+ return element.list;
20
+ }
21
+ if (element.getAttribute("aria-expanded") === "false") {
22
+ throw new ElementError("Popup isn't open in ARIA; therefore, it cannot be captured.", element);
23
+ }
24
+ const linkedElementIds = element.getAttribute("aria-controls") || element.getAttribute("aria-owns");
25
+ if (!linkedElementIds) {
26
+ throw new ElementError("Popup isn't linked; therefore, it cannot be captured.", element);
27
+ }
28
+ const linkedElement = linkedElementIds.split(" ").map(linkedElementId => element.ownerDocument.getElementById(linkedElementId)).filter(linkedElement => Boolean(linkedElement)).find(linkedElement => role ? getRole(linkedElement) === role : Boolean(linkedElement));
29
+ if (!linkedElement) {
30
+ throw new ElementError("Controlled element isn't available; therefore, it cannot be captured.", element);
31
+ }
32
+ return linkedElement;
33
+ };
34
+ //# sourceMappingURL=linkedHtmlSelectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linkedHtmlSelectors.js","names":["ElementError","getRole","getControlledElement","element","role","HTMLInputElement","list","getAttribute","linkedElementIds","linkedElement","split","map","linkedElementId","ownerDocument","getElementById","filter","Boolean","find"],"sources":["../../src/test-selectors/linkedHtmlSelectors.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 { type AriaRole } from \"react\";\nimport { ElementError } from \"./sanityChecks\";\nimport { getRole } from \"dom-accessibility-api\";\n\n/**\n * For `aria-haspopup`:\n * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-haspopup\n * For `datalist`:\n * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist\n */\nexport const getControlledElement = ({\n element,\n role,\n}: {\n element: HTMLElement;\n /** If this element controls multiple items, it might be valuable to help narrow down the specific item's `role`. */\n role?: AriaRole;\n}) => {\n if (element instanceof HTMLInputElement && element.list) {\n return element.list;\n }\n\n if (element.getAttribute(\"aria-expanded\") === \"false\") {\n throw new ElementError(\n \"Popup isn't open in ARIA; therefore, it cannot be captured.\",\n element,\n );\n }\n\n const linkedElementIds =\n element.getAttribute(\"aria-controls\") || element.getAttribute(\"aria-owns\");\n\n if (!linkedElementIds) {\n throw new ElementError(\n \"Popup isn't linked; therefore, it cannot be captured.\",\n element,\n );\n }\n\n const linkedElement = linkedElementIds\n .split(\" \")\n .map((linkedElementId) =>\n element.ownerDocument.getElementById(linkedElementId),\n )\n // This can be `.filter(Boolean)` when Inferred Type Predicates is in TypeScript (which should be part of the version we're using): https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-5.html#:~:text=Inferred%20Type%20Predicates,Thanks%20Dan!\n .filter((linkedElement): linkedElement is HTMLElement =>\n Boolean(linkedElement),\n )\n .find((linkedElement) =>\n role ? getRole(linkedElement) === role : Boolean(linkedElement),\n );\n\n if (!linkedElement) {\n throw new ElementError(\n \"Controlled element isn't available; therefore, it cannot be captured.\",\n element,\n );\n }\n\n return linkedElement;\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA,SAaSA,YAAY;AACrB,SAASC,OAAO,QAAQ,uBAAuB;AAQ/C,OAAO,MAAMC,oBAAoB,GAAGA,CAAC;EACnCC,OAAO;EACPC;AAKF,CAAC,KAAK;EACJ,IAAID,OAAO,YAAYE,gBAAgB,IAAIF,OAAO,CAACG,IAAI,EAAE;IACvD,OAAOH,OAAO,CAACG,IAAI;EACrB;EAEA,IAAIH,OAAO,CAACI,YAAY,CAAC,eAAe,CAAC,KAAK,OAAO,EAAE;IACrD,MAAM,IAAIP,YAAY,CACpB,6DAA6D,EAC7DG,OACF,CAAC;EACH;EAEA,MAAMK,gBAAgB,GACpBL,OAAO,CAACI,YAAY,CAAC,eAAe,CAAC,IAAIJ,OAAO,CAACI,YAAY,CAAC,WAAW,CAAC;EAE5E,IAAI,CAACC,gBAAgB,EAAE;IACrB,MAAM,IAAIR,YAAY,CACpB,uDAAuD,EACvDG,OACF,CAAC;EACH;EAEA,MAAMM,aAAa,GAAGD,gBAAgB,CACnCE,KAAK,CAAC,GAAG,CAAC,CACVC,GAAG,CAAEC,eAAe,IACnBT,OAAO,CAACU,aAAa,CAACC,cAAc,CAACF,eAAe,CACtD,CAAC,CAEAG,MAAM,CAAEN,aAAa,IACpBO,OAAO,CAACP,aAAa,CACvB,CAAC,CACAQ,IAAI,CAAER,aAAa,IAClBL,IAAI,GAAGH,OAAO,CAACQ,aAAa,CAAC,KAAKL,IAAI,GAAGY,OAAO,CAACP,aAAa,CAChE,CAAC;EAEH,IAAI,CAACA,aAAa,EAAE;IAClB,MAAM,IAAIT,YAAY,CACpB,uEAAuE,EACvEG,OACF,CAAC;EACH;EAEA,OAAOM,aAAa;AACtB,CAAC"}
@@ -0,0 +1,26 @@
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
+ import { querySelector } from "./querySelector.js";
13
+ import { AutocompleteTestSelector } from "../Autocomplete.js";
14
+ import { CalloutTestSelector } from "../Callout.js";
15
+ import { SelectTestSelector } from "../Select.js";
16
+ import { TabsTestSelector } from "../Tabs.js";
17
+ import { TextFieldTestSelector } from "../TextField.js";
18
+ export const odysseyTestSelector = {
19
+ Autocomplete: AutocompleteTestSelector,
20
+ Callout: CalloutTestSelector,
21
+ Select: SelectTestSelector,
22
+ Tabs: TabsTestSelector,
23
+ TextField: TextFieldTestSelector
24
+ };
25
+ export const queryOdysseySelector = componentName => querySelector(odysseyTestSelector[componentName]);
26
+ //# sourceMappingURL=queryOdysseySelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryOdysseySelector.js","names":["querySelector","AutocompleteTestSelector","CalloutTestSelector","SelectTestSelector","TabsTestSelector","TextFieldTestSelector","odysseyTestSelector","Autocomplete","Callout","Select","Tabs","TextField","queryOdysseySelector","componentName"],"sources":["../../src/test-selectors/queryOdysseySelector.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 { querySelector } from \"./querySelector\";\nimport { type TestSelector } from \"./testSelector\";\nimport { AutocompleteTestSelector } from \"../Autocomplete\";\nimport { CalloutTestSelector } from \"../Callout\";\nimport { SelectTestSelector } from \"../Select\";\nimport { TabsTestSelector } from \"../Tabs\";\nimport { TextFieldTestSelector } from \"../TextField\";\n\nexport const odysseyTestSelector = {\n Autocomplete: AutocompleteTestSelector,\n Callout: CalloutTestSelector,\n Select: SelectTestSelector,\n Tabs: TabsTestSelector,\n TextField: TextFieldTestSelector,\n} as const satisfies Record<string, TestSelector>;\n\nexport const queryOdysseySelector = <\n ComponentName extends keyof typeof odysseyTestSelector,\n>(\n /**\n * Name of the component you want to select within.\n */\n componentName: ComponentName,\n) => querySelector(odysseyTestSelector[componentName]);\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA,SAYSA,aAAa;AAAA,SAEbC,wBAAwB;AAAA,SACxBC,mBAAmB;AAAA,SACnBC,kBAAkB;AAAA,SAClBC,gBAAgB;AAAA,SAChBC,qBAAqB;AAE9B,OAAO,MAAMC,mBAAmB,GAAG;EACjCC,YAAY,EAAEN,wBAAwB;EACtCO,OAAO,EAAEN,mBAAmB;EAC5BO,MAAM,EAAEN,kBAAkB;EAC1BO,IAAI,EAAEN,gBAAgB;EACtBO,SAAS,EAAEN;AACb,CAAiD;AAEjD,OAAO,MAAMO,oBAAoB,GAM/BC,aAA4B,IACzBb,aAAa,CAACM,mBAAmB,CAACO,aAAa,CAAC,CAAC"}
@@ -9,70 +9,94 @@
9
9
  *
10
10
  * See the License for the specific language governing permissions and limitations under the License.
11
11
  */
12
-
13
- import { within } from "@testing-library/dom";
14
- import { odysseyTestSelectors } from "./odysseyTestSelectors.js";
15
- export const interpolateString = (string, values) => {
16
- const interpolatedString = eval(`
17
- ${Object.entries(values).map(([key, value]) => `const ${key} = ${typeof value === "string" ? JSON.stringify(value) : value};`).join("")}
18
-
19
- \`${string}\`
20
- `);
21
- if (/^\/*(.+)\/$/.test(interpolatedString)) {
22
- return eval(interpolatedString);
23
- }
24
- return interpolatedString;
25
- };
26
- const getByQuerySelector = ({
27
- canvas,
28
- method,
29
- options,
12
+ import { getComputedAccessibleText } from "./getComputedAccessibleText.js";
13
+ import { getByRoleQuerySelector, getByTextQuerySelector } from "./getByQuerySelector.js";
14
+ import { getControlledElement } from "./linkedHtmlSelectors.js";
15
+ import { ElementError } from "./sanityChecks.js";
16
+ export const captureElement = ({
17
+ containerElement,
18
+ queryMethod,
19
+ querySelectorOptions,
30
20
  role,
31
- text
21
+ testSelector
32
22
  }) => {
33
- if (method === "ByRole") {
34
- return canvas.getByRole(role, options);
35
- } else if (method === "ByLabelText") {
36
- return canvas.getByLabelText(text, options);
37
- } else if (method === "ByPlaceholderText") {
38
- return canvas.getByPlaceholderText(text, options);
39
- } else if (method === "ByText") {
40
- return canvas.getByText(text, options);
23
+ if ("elementSelector" in testSelector && querySelectorOptions) {
24
+ const sharedProps = {
25
+ element: containerElement,
26
+ queryMethod,
27
+ queryOptions: Object.fromEntries(Object.entries(testSelector.elementSelector.options).map(([testSelectorOptionKey, testingLibraryOptionKey]) => [testingLibraryOptionKey, querySelectorOptions[testSelectorOptionKey]]))
28
+ };
29
+ if (testSelector.elementSelector.method === "ByRole") {
30
+ return getByRoleQuerySelector({
31
+ ...sharedProps,
32
+ role: Array.isArray(testSelector.elementSelector.role) || role ? role || "" : testSelector.elementSelector.role
33
+ });
34
+ }
35
+ return getByTextQuerySelector({
36
+ ...sharedProps,
37
+ selectionMethod: testSelector.elementSelector.method,
38
+ text: testSelector.elementSelector.text
39
+ });
40
+ } else if ("isControlledElement" in testSelector && testSelector.isControlledElement) {
41
+ try {
42
+ return getControlledElement({
43
+ element: containerElement
44
+ });
45
+ } catch (error) {
46
+ if (queryMethod === "query") {
47
+ return null;
48
+ }
49
+ throw error;
50
+ }
41
51
  }
42
52
  return null;
43
53
  };
44
- export const querySelector = ({
45
- canvas,
46
- templateArgs: templateArgsProp,
47
- testSelectors
48
- }) => {
49
- const element = "selector" in testSelectors ? getByQuerySelector({
50
- canvas,
51
- method: testSelectors.selector.method,
52
- options: templateArgsProp && testSelectors.selector.options ? Object.fromEntries(Object.entries(testSelectors.selector.options).map(([key, value]) => [key, interpolateString(value, templateArgsProp)])) : testSelectors.selector.options,
53
- ...(testSelectors.selector.method === "ByRole" ? {
54
- role: templateArgsProp ? interpolateString(testSelectors.selector?.role, templateArgsProp) : testSelectors.selector?.role
55
- } : {
56
- text: templateArgsProp ? interpolateString(testSelectors.selector?.text, templateArgsProp) : testSelectors.selector?.text
57
- })
58
- }) : null;
59
- const select = "feature" in testSelectors ? (featureName, templateArgs) => querySelector({
60
- canvas: element ? within(element) : canvas,
61
- templateArgs,
62
- testSelectors: testSelectors.feature[featureName]
63
- }) : null;
54
+ export const querySelector = testSelector => props => {
55
+ const {
56
+ element: containerElement,
57
+ queryMethod
58
+ } = props;
59
+ const capturedElement = captureElement({
60
+ containerElement,
61
+ queryMethod: queryMethod || "get",
62
+ querySelectorOptions: "options" in props ? props.options : undefined,
63
+ role: "role" in props ? props.role : undefined,
64
+ testSelector
65
+ });
66
+ const getAccessibleText = labelName => {
67
+ if (!capturedElement) {
68
+ throw new ElementError("No child HTML element available", containerElement);
69
+ }
70
+ if (!("accessibleText" in testSelector)) {
71
+ throw new Error("Missing `accessibleText` in `TestSelector`");
72
+ }
73
+ return getComputedAccessibleText({
74
+ element: capturedElement,
75
+ type: testSelector.accessibleText[labelName]
76
+ });
77
+ };
78
+ const selectChild = childProps => {
79
+ if (!capturedElement) {
80
+ throw new ElementError("No child HTML element available", containerElement);
81
+ }
82
+ if (!("children" in testSelector)) {
83
+ throw new Error("Missing `children` in `TestSelector`");
84
+ }
85
+ return querySelector(testSelector.children[childProps.name])({
86
+ element: capturedElement,
87
+ queryMethod: childProps.queryMethod,
88
+ ...("options" in childProps && childProps.options ? {
89
+ options: childProps.options
90
+ } : {}),
91
+ ...("role" in childProps && childProps.role ? {
92
+ role: childProps.role
93
+ } : {})
94
+ });
95
+ };
64
96
  return {
65
- element,
66
- select
97
+ element: capturedElement,
98
+ getAccessibleText: getAccessibleText,
99
+ selectChild: selectChild
67
100
  };
68
101
  };
69
- export const queryOdysseySelector = ({
70
- canvas,
71
- componentName,
72
- templateArgs
73
- }) => querySelector({
74
- canvas,
75
- templateArgs,
76
- testSelectors: odysseyTestSelectors[componentName]
77
- });
78
102
  //# sourceMappingURL=querySelector.js.map