@okta/odyssey-react-mui 1.42.0 → 1.43.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 (297) hide show
  1. package/dist/cjs/DataTable/DataTable.cjs +67 -42
  2. package/dist/cjs/DataTable/DataTable.cjs.map +1 -1
  3. package/dist/cjs/Drawer.cjs +16 -14
  4. package/dist/cjs/Drawer.cjs.map +1 -1
  5. package/dist/cjs/PasswordField.cjs +1 -1
  6. package/dist/cjs/PasswordField.cjs.map +1 -1
  7. package/dist/cjs/Select.cjs +34 -43
  8. package/dist/cjs/Select.cjs.map +1 -1
  9. package/dist/cjs/Status.cjs +2 -0
  10. package/dist/cjs/Status.cjs.map +1 -1
  11. package/dist/cjs/Typography.cjs +32 -8
  12. package/dist/cjs/Typography.cjs.map +1 -1
  13. package/dist/cjs/labs/DataFilters.cjs +1 -0
  14. package/dist/cjs/labs/DataFilters.cjs.map +1 -1
  15. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs.map +1 -1
  16. package/dist/cjs/labs/DataView/CardLayoutContent.cjs.map +1 -1
  17. package/dist/cjs/labs/DataView/DataView.cjs +10 -1
  18. package/dist/cjs/labs/DataView/DataView.cjs.map +1 -1
  19. package/dist/cjs/labs/DataView/RowActions.cjs +3 -4
  20. package/dist/cjs/labs/DataView/RowActions.cjs.map +1 -1
  21. package/dist/cjs/labs/DataView/TableLayoutContent.cjs +2 -4
  22. package/dist/cjs/labs/DataView/TableLayoutContent.cjs.map +1 -1
  23. package/dist/cjs/labs/DataView/useFilterConversion.cjs.map +1 -1
  24. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs.map +1 -1
  25. package/dist/cjs/labs/OdysseyPickers/Picker.cjs +17 -11
  26. package/dist/cjs/labs/OdysseyPickers/Picker.cjs.map +1 -1
  27. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs +2 -1
  28. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs.map +1 -1
  29. package/dist/cjs/labs/OdysseyPickers/SearchDropdown.cjs +2 -3
  30. package/dist/cjs/labs/OdysseyPickers/SearchDropdown.cjs.map +1 -1
  31. package/dist/cjs/properties/ts/odyssey-react-mui.cjs +0 -1
  32. package/dist/cjs/properties/ts/odyssey-react-mui.cjs.map +1 -1
  33. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs +0 -1
  34. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs.map +1 -1
  35. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs +0 -1
  36. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs.map +1 -1
  37. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs +0 -1
  38. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs.map +1 -1
  39. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs +0 -1
  40. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs.map +1 -1
  41. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs +0 -1
  42. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs.map +1 -1
  43. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs +0 -1
  44. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs.map +1 -1
  45. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs +0 -1
  46. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs.map +1 -1
  47. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs +0 -1
  48. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs.map +1 -1
  49. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs +0 -1
  50. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs.map +1 -1
  51. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs +0 -1
  52. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs.map +1 -1
  53. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs +0 -1
  54. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs.map +1 -1
  55. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs +0 -1
  56. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs.map +1 -1
  57. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs +0 -1
  58. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs.map +1 -1
  59. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs +0 -1
  60. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs.map +1 -1
  61. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs +0 -1
  62. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs.map +1 -1
  63. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs +0 -1
  64. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs.map +1 -1
  65. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs +0 -1
  66. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs.map +1 -1
  67. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs +4 -2
  68. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs.map +1 -1
  69. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs +129 -126
  70. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs.map +1 -1
  71. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs +0 -1
  72. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs.map +1 -1
  73. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs +0 -1
  74. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs.map +1 -1
  75. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs +0 -1
  76. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs.map +1 -1
  77. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs +0 -1
  78. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs.map +1 -1
  79. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs +0 -1
  80. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs.map +1 -1
  81. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs +0 -1
  82. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs.map +1 -1
  83. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs +0 -1
  84. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs.map +1 -1
  85. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs +0 -1
  86. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs.map +1 -1
  87. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs +0 -1
  88. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs.map +1 -1
  89. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs +0 -1
  90. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs.map +1 -1
  91. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs +0 -1
  92. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs.map +1 -1
  93. package/dist/cjs/theme/components.cjs +7 -1
  94. package/dist/cjs/theme/components.cjs.map +1 -1
  95. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +1 -0
  96. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  97. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
  98. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
  99. package/dist/esm/DataTable/DataTable.js +67 -40
  100. package/dist/esm/DataTable/DataTable.js.map +1 -1
  101. package/dist/esm/Drawer.js +16 -14
  102. package/dist/esm/Drawer.js.map +1 -1
  103. package/dist/esm/PasswordField.js +1 -1
  104. package/dist/esm/PasswordField.js.map +1 -1
  105. package/dist/esm/Select.js +34 -43
  106. package/dist/esm/Select.js.map +1 -1
  107. package/dist/esm/Status.js +2 -0
  108. package/dist/esm/Status.js.map +1 -1
  109. package/dist/esm/Typography.js +32 -8
  110. package/dist/esm/Typography.js.map +1 -1
  111. package/dist/esm/labs/DataFilters.js +1 -0
  112. package/dist/esm/labs/DataFilters.js.map +1 -1
  113. package/dist/esm/labs/DataView/BulkActionsMenu.js.map +1 -1
  114. package/dist/esm/labs/DataView/CardLayoutContent.js.map +1 -1
  115. package/dist/esm/labs/DataView/DataView.js +10 -1
  116. package/dist/esm/labs/DataView/DataView.js.map +1 -1
  117. package/dist/esm/labs/DataView/RowActions.js +2 -1
  118. package/dist/esm/labs/DataView/RowActions.js.map +1 -1
  119. package/dist/esm/labs/DataView/TableLayoutContent.js +2 -4
  120. package/dist/esm/labs/DataView/TableLayoutContent.js.map +1 -1
  121. package/dist/esm/labs/DataView/useFilterConversion.js.map +1 -1
  122. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js.map +1 -1
  123. package/dist/esm/labs/OdysseyPickers/Picker.js +19 -13
  124. package/dist/esm/labs/OdysseyPickers/Picker.js.map +1 -1
  125. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js +2 -1
  126. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -1
  127. package/dist/esm/labs/OdysseyPickers/SearchDropdown.js +2 -3
  128. package/dist/esm/labs/OdysseyPickers/SearchDropdown.js.map +1 -1
  129. package/dist/esm/properties/ts/odyssey-react-mui.js +0 -1
  130. package/dist/esm/properties/ts/odyssey-react-mui.js.map +1 -1
  131. package/dist/esm/properties/ts/odyssey-react-mui_cs.js +0 -1
  132. package/dist/esm/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  133. package/dist/esm/properties/ts/odyssey-react-mui_da.js +0 -1
  134. package/dist/esm/properties/ts/odyssey-react-mui_da.js.map +1 -1
  135. package/dist/esm/properties/ts/odyssey-react-mui_de.js +0 -1
  136. package/dist/esm/properties/ts/odyssey-react-mui_de.js.map +1 -1
  137. package/dist/esm/properties/ts/odyssey-react-mui_el.js +0 -1
  138. package/dist/esm/properties/ts/odyssey-react-mui_el.js.map +1 -1
  139. package/dist/esm/properties/ts/odyssey-react-mui_es.js +0 -1
  140. package/dist/esm/properties/ts/odyssey-react-mui_es.js.map +1 -1
  141. package/dist/esm/properties/ts/odyssey-react-mui_eu.js +0 -1
  142. package/dist/esm/properties/ts/odyssey-react-mui_eu.js.map +1 -1
  143. package/dist/esm/properties/ts/odyssey-react-mui_fi.js +0 -1
  144. package/dist/esm/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  145. package/dist/esm/properties/ts/odyssey-react-mui_fr.js +0 -1
  146. package/dist/esm/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  147. package/dist/esm/properties/ts/odyssey-react-mui_ht.js +0 -1
  148. package/dist/esm/properties/ts/odyssey-react-mui_ht.js.map +1 -1
  149. package/dist/esm/properties/ts/odyssey-react-mui_hu.js +0 -1
  150. package/dist/esm/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  151. package/dist/esm/properties/ts/odyssey-react-mui_id.js +0 -1
  152. package/dist/esm/properties/ts/odyssey-react-mui_id.js.map +1 -1
  153. package/dist/esm/properties/ts/odyssey-react-mui_it.js +0 -1
  154. package/dist/esm/properties/ts/odyssey-react-mui_it.js.map +1 -1
  155. package/dist/esm/properties/ts/odyssey-react-mui_ja.js +0 -1
  156. package/dist/esm/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  157. package/dist/esm/properties/ts/odyssey-react-mui_ko.js +0 -1
  158. package/dist/esm/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  159. package/dist/esm/properties/ts/odyssey-react-mui_ms.js +0 -1
  160. package/dist/esm/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  161. package/dist/esm/properties/ts/odyssey-react-mui_nb.js +0 -1
  162. package/dist/esm/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  163. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js +0 -1
  164. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  165. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js +4 -2
  166. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
  167. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js +129 -126
  168. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
  169. package/dist/esm/properties/ts/odyssey-react-mui_pl.js +0 -1
  170. package/dist/esm/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  171. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js +0 -1
  172. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  173. package/dist/esm/properties/ts/odyssey-react-mui_ro.js +0 -1
  174. package/dist/esm/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  175. package/dist/esm/properties/ts/odyssey-react-mui_ru.js +0 -1
  176. package/dist/esm/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  177. package/dist/esm/properties/ts/odyssey-react-mui_sv.js +0 -1
  178. package/dist/esm/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  179. package/dist/esm/properties/ts/odyssey-react-mui_th.js +0 -1
  180. package/dist/esm/properties/ts/odyssey-react-mui_th.js.map +1 -1
  181. package/dist/esm/properties/ts/odyssey-react-mui_tr.js +0 -1
  182. package/dist/esm/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  183. package/dist/esm/properties/ts/odyssey-react-mui_uk.js +0 -1
  184. package/dist/esm/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  185. package/dist/esm/properties/ts/odyssey-react-mui_vi.js +0 -1
  186. package/dist/esm/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  187. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js +0 -1
  188. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  189. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js +0 -1
  190. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  191. package/dist/esm/theme/components.js +7 -1
  192. package/dist/esm/theme/components.js.map +1 -1
  193. package/dist/esm/ui-shell/SideNav/SideNav.js +1 -0
  194. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  195. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
  196. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
  197. package/dist/index.cjs +1 -1
  198. package/dist/index.d.ts +1 -1
  199. package/dist/index.mjs +1 -1
  200. package/dist/index.scss +1 -1
  201. package/dist/tsconfig.production.tsbuildinfo +1 -1
  202. package/dist/tsconfig.tsbuildinfo +1 -1
  203. package/dist/types/DataTable/DataTable.d.ts +2 -2
  204. package/dist/types/DataTable/DataTable.d.ts.map +1 -1
  205. package/dist/types/Drawer.d.ts +24 -6
  206. package/dist/types/Drawer.d.ts.map +1 -1
  207. package/dist/types/OdysseyTranslationProvider.d.ts +1 -1
  208. package/dist/types/OdysseyTranslationProvider.d.ts.map +1 -1
  209. package/dist/types/PasswordField.d.ts.map +1 -1
  210. package/dist/types/Select.d.ts.map +1 -1
  211. package/dist/types/Status.d.ts +2 -2
  212. package/dist/types/Status.d.ts.map +1 -1
  213. package/dist/types/Typography.d.ts +16 -12
  214. package/dist/types/Typography.d.ts.map +1 -1
  215. package/dist/types/i18n.d.ts +6 -29
  216. package/dist/types/i18n.d.ts.map +1 -1
  217. package/dist/types/labs/DataFilters.d.ts.map +1 -1
  218. package/dist/types/labs/DataView/BulkActionsMenu.d.ts +1 -1
  219. package/dist/types/labs/DataView/BulkActionsMenu.d.ts.map +1 -1
  220. package/dist/types/labs/DataView/CardLayoutContent.d.ts.map +1 -1
  221. package/dist/types/labs/DataView/DataView.d.ts.map +1 -1
  222. package/dist/types/labs/DataView/RowActions.d.ts +5 -4
  223. package/dist/types/labs/DataView/RowActions.d.ts.map +1 -1
  224. package/dist/types/labs/DataView/TableLayoutContent.d.ts +1 -1
  225. package/dist/types/labs/DataView/TableLayoutContent.d.ts.map +1 -1
  226. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts +4 -1
  227. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts.map +1 -1
  228. package/dist/types/labs/OdysseyPickers/Picker.d.ts +7 -7
  229. package/dist/types/labs/OdysseyPickers/Picker.d.ts.map +1 -1
  230. package/dist/types/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts.map +1 -1
  231. package/dist/types/labs/OdysseyPickers/SearchDropdown.d.ts.map +1 -1
  232. package/dist/types/properties/ts/odyssey-react-mui.d.ts +0 -1
  233. package/dist/types/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  234. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts +0 -1
  235. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  236. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts +0 -1
  237. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  238. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts +0 -1
  239. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  240. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts +0 -1
  241. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  242. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts +0 -1
  243. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  244. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts +0 -1
  245. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts.map +1 -1
  246. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts +0 -1
  247. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  248. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts +0 -1
  249. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  250. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts +0 -1
  251. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -1
  252. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts +0 -1
  253. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  254. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts +0 -1
  255. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  256. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts +0 -1
  257. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  258. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts +0 -1
  259. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  260. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts +0 -1
  261. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  262. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts +0 -1
  263. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  264. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts +0 -1
  265. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  266. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts +0 -1
  267. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  268. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts +3 -1
  269. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
  270. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts +3 -0
  271. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
  272. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts +0 -1
  273. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  274. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts +0 -1
  275. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  276. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts +0 -1
  277. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  278. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts +0 -1
  279. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  280. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts +0 -1
  281. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  282. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts +0 -1
  283. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  284. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts +0 -1
  285. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  286. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts +0 -1
  287. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  288. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts +0 -1
  289. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  290. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts +0 -1
  291. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  292. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts +0 -1
  293. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  294. package/dist/types/theme/components.d.ts.map +1 -1
  295. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  296. package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
  297. package/package.json +9 -7
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordField.cjs","names":["_react","require","_index","_Field","_reactI18next","_inputUtils","_jsxRuntime","_interopRequireDefault","e","__esModule","default","PasswordField","forwardRef","ariaDescribedBy","autoCompleteType","defaultValue","errorMessage","errorMessageList","hasInitialFocus","hint","id","idOverride","inputRef","isDisabled","isFullWidth","isOptional","hasShowPassword","isReadOnly","label","name","nameOverride","onChange","onChangeProp","onFocus","onBlur","placeholder","testId","translate","value","ref","t","useTranslation","inputType","setInputType","useState","togglePasswordVisibility","useCallback","controlledStateRef","useRef","getControlState","controlledValue","uncontrolledValue","inputValues","useInputValues","controlState","current","localInputRef","useImperativeHandle","focus","event","renderFieldComponent","errorMessageElementId","labelElementId","jsx","_InputBase2","autoComplete","autoFocus","endAdornment","_InputAdornment2","position","children","_IconButton2","onClick","ShowIcon","HideIcon","inputProps","role","readOnly","required","type","Field","fieldType","hasVisibleLabel","MemoizedPasswordField","exports","memo","displayName"],"sources":["../../src/PasswordField.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { InputAdornment, InputBase, IconButton } from \"@mui/material\";\nimport {\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n memo,\n useCallback,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\n\nimport { ShowIcon, HideIcon } from \"./icons.generated/index.js\";\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport type { HtmlProps } from \"./HtmlProps.js\";\nimport { useTranslation } from \"react-i18next\";\nimport { FocusHandle, getControlState, useInputValues } from \"./inputUtils.js\";\n\nexport type PasswordFieldProps = {\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoCompleteType?: \"current-password\" | \"new-password\";\n /**\n * initial value for input. Use when component in uncontrolled.\n */\n defaultValue?: string;\n /**\n * If `true`, the component will receive focus automatically.\n */\n hasInitialFocus?: boolean;\n /**\n * If `true`, the show/hide icon is not shown to the user\n */\n hasShowPassword?: boolean;\n /**\n * The ref forwarded to the TextField\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * Callback fired when the `input` element loses focus.\n */\n onBlur?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * Callback fired when the value is changed.\n */\n onChange?: ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>;\n /**\n * Callback fired when the `input` element get focus.\n */\n onFocus?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder?: string;\n /**\n * The value of the `input` element. Use when component is controlled.\n */\n value?: string;\n} & FieldComponentProps &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype FieldRenderProps = Partial<\n Pick<FieldComponentRenderProps, \"ariaDescribedBy\" | \"errorMessageElementId\">\n> &\n Pick<FieldComponentRenderProps, \"id\" | \"labelElementId\">;\n\nconst PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(\n (\n {\n ariaDescribedBy,\n autoCompleteType,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasInitialFocus,\n hint,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isFullWidth = false,\n isOptional = false,\n hasShowPassword = true,\n isReadOnly,\n label,\n name: nameOverride,\n onChange: onChangeProp,\n onFocus,\n onBlur,\n placeholder,\n testId,\n translate,\n value,\n },\n ref,\n ) => {\n const { t } = useTranslation();\n const [inputType, setInputType] = useState(\"password\");\n\n const togglePasswordVisibility = useCallback(() => {\n setInputType((inputType) =>\n inputType === \"password\" ? \"text\" : \"password\",\n );\n }, []);\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const localInputRef = useRef<HTMLInputElement>(null);\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const onChange = useCallback<\n ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>\n >(\n (event) => {\n onChangeProp?.(event);\n },\n [onChangeProp],\n );\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: FieldRenderProps) => (\n <InputBase\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n autoComplete={inputType === \"password\" ? autoCompleteType : \"off\"}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n endAdornment={\n hasShowPassword && (\n <InputAdornment position=\"end\">\n <IconButton\n aria-controls={id}\n aria-label={\n inputType === \"password\"\n ? t(\"passwordfield.icon.label.show\")\n : t(\"passwordfield.icon.label.hide\")\n }\n aria-pressed={inputType === \"text\"}\n onClick={togglePasswordVisibility}\n >\n {inputType === \"password\" ? <ShowIcon /> : <HideIcon />}\n </IconButton>\n </InputAdornment>\n )\n }\n id={id}\n inputProps={{\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n \"data-se\": testId,\n // role: \"textbox\" Added because password inputs don't have an implicit role assigned. This causes problems with element selection.\n role: \"textbox\",\n }}\n inputRef={localInputRef}\n name={nameOverride ?? id}\n onChange={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n placeholder={placeholder}\n readOnly={isReadOnly}\n ref={ref}\n required={!isOptional}\n translate={translate}\n type={inputType}\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\n inputValues,\n t,\n togglePasswordVisibility,\n inputType,\n nameOverride,\n onChange,\n onFocus,\n onBlur,\n placeholder,\n isOptional,\n isReadOnly,\n hasShowPassword,\n ref,\n testId,\n translate,\n ],\n );\n\n return (\n <Field\n ariaDescribedBy={ariaDescribedBy}\n errorMessage={errorMessage}\n errorMessageList={errorMessageList}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n },\n);\n\nconst MemoizedPasswordField = memo(PasswordField);\nMemoizedPasswordField.displayName = \"PasswordField\";\n\nexport { MemoizedPasswordField as PasswordField };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PasswordField.cjs","names":["_react","require","_index","_Field","_reactI18next","_inputUtils","_jsxRuntime","_interopRequireDefault","e","__esModule","default","PasswordField","forwardRef","ariaDescribedBy","autoCompleteType","defaultValue","errorMessage","errorMessageList","hasInitialFocus","hint","id","idOverride","inputRef","isDisabled","isFullWidth","isOptional","hasShowPassword","isReadOnly","label","name","nameOverride","onChange","onChangeProp","onFocus","onBlur","placeholder","testId","translate","value","ref","t","useTranslation","inputType","setInputType","useState","togglePasswordVisibility","useCallback","controlledStateRef","useRef","getControlState","controlledValue","uncontrolledValue","inputValues","useInputValues","controlState","current","localInputRef","useImperativeHandle","focus","event","renderFieldComponent","errorMessageElementId","labelElementId","jsx","_InputBase2","autoComplete","autoFocus","endAdornment","_InputAdornment2","position","children","_IconButton2","onClick","ShowIcon","HideIcon","inputProps","role","readOnly","required","type","Field","fieldType","hasVisibleLabel","MemoizedPasswordField","exports","memo","displayName"],"sources":["../../src/PasswordField.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { InputAdornment, InputBase, IconButton } from \"@mui/material\";\nimport {\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n memo,\n useCallback,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\n\nimport { ShowIcon, HideIcon } from \"./icons.generated/index.js\";\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport type { HtmlProps } from \"./HtmlProps.js\";\nimport { useTranslation } from \"react-i18next\";\nimport { FocusHandle, getControlState, useInputValues } from \"./inputUtils.js\";\n\nexport type PasswordFieldProps = {\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoCompleteType?: \"current-password\" | \"new-password\";\n /**\n * initial value for input. Use when component in uncontrolled.\n */\n defaultValue?: string;\n /**\n * If `true`, the component will receive focus automatically.\n */\n hasInitialFocus?: boolean;\n /**\n * If `true`, the show/hide icon is not shown to the user\n */\n hasShowPassword?: boolean;\n /**\n * The ref forwarded to the TextField\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * Callback fired when the `input` element loses focus.\n */\n onBlur?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * Callback fired when the value is changed.\n */\n onChange?: ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>;\n /**\n * Callback fired when the `input` element get focus.\n */\n onFocus?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder?: string;\n /**\n * The value of the `input` element. Use when component is controlled.\n */\n value?: string;\n} & FieldComponentProps &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype FieldRenderProps = Partial<\n Pick<FieldComponentRenderProps, \"ariaDescribedBy\" | \"errorMessageElementId\">\n> &\n Pick<FieldComponentRenderProps, \"id\" | \"labelElementId\">;\n\nconst PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(\n (\n {\n ariaDescribedBy,\n autoCompleteType,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasInitialFocus,\n hint,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isFullWidth = false,\n isOptional = false,\n hasShowPassword = true,\n isReadOnly,\n label,\n name: nameOverride,\n onChange: onChangeProp,\n onFocus,\n onBlur,\n placeholder,\n testId,\n translate,\n value,\n },\n ref,\n ) => {\n const { t } = useTranslation();\n const [inputType, setInputType] = useState(\"password\");\n\n const togglePasswordVisibility = useCallback(() => {\n setInputType((inputType) =>\n inputType === \"password\" ? \"text\" : \"password\",\n );\n }, []);\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const localInputRef = useRef<HTMLInputElement>(null);\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const onChange = useCallback<\n ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>\n >(\n (event) => {\n onChangeProp?.(event);\n },\n [onChangeProp],\n );\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: FieldRenderProps) => (\n <InputBase\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n autoComplete={inputType === \"password\" ? autoCompleteType : \"off\"}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n endAdornment={\n hasShowPassword && (\n <InputAdornment position=\"end\">\n <IconButton\n aria-controls={id}\n aria-label={t(\"passwordfield.icon.label.show\")}\n aria-pressed={inputType === \"text\"}\n onClick={togglePasswordVisibility}\n >\n {inputType === \"password\" ? <ShowIcon /> : <HideIcon />}\n </IconButton>\n </InputAdornment>\n )\n }\n id={id}\n inputProps={{\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n \"data-se\": testId,\n // role: \"textbox\" Added because password inputs don't have an implicit role assigned. This causes problems with element selection.\n role: \"textbox\",\n }}\n inputRef={localInputRef}\n name={nameOverride ?? id}\n onChange={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n placeholder={placeholder}\n readOnly={isReadOnly}\n ref={ref}\n required={!isOptional}\n translate={translate}\n type={inputType}\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\n inputValues,\n t,\n togglePasswordVisibility,\n inputType,\n nameOverride,\n onChange,\n onFocus,\n onBlur,\n placeholder,\n isOptional,\n isReadOnly,\n hasShowPassword,\n ref,\n testId,\n translate,\n ],\n );\n\n return (\n <Field\n ariaDescribedBy={ariaDescribedBy}\n errorMessage={errorMessage}\n errorMessageList={errorMessageList}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n },\n);\n\nconst MemoizedPasswordField = memo(PasswordField);\nMemoizedPasswordField.displayName = \"PasswordField\";\n\nexport { MemoizedPasswordField as PasswordField };\n"],"mappings":"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","ignoreList":[]}
@@ -75,57 +75,48 @@ const SelectContainer = _styled.default.div`
75
75
  `;
76
76
  const ChipsPositioningContainer = (0, _styled.default)("div", {
77
77
  shouldForwardProp: prop => prop !== "odysseyDesignTokens"
78
- })`
79
- display: flex;
80
- align-items: center;
81
- position: absolute;
82
- top: ${({
83
- odysseyDesignTokens
84
- }) => odysseyDesignTokens.Spacing0};
85
- right: ${({
86
- odysseyDesignTokens
87
- }) => odysseyDesignTokens.Spacing5};
88
- bottom: ${({
89
- odysseyDesignTokens
90
- }) => odysseyDesignTokens.Spacing0};
91
- left: ${({
78
+ })(({
92
79
  odysseyDesignTokens
93
- }) => odysseyDesignTokens.Spacing1};
94
- margin-inline-start: ${({
95
- odysseyDesignTokens
96
- }) => odysseyDesignTokens.BorderWidthMain};
97
- opacity: 1;
98
- pointer-events: none;
99
- `;
80
+ }) => {
81
+ return {
82
+ alignItems: "center",
83
+ display: "flex",
84
+ insetBlockEnd: 0,
85
+ insetBlockStart: 0,
86
+ insetInlineEnd: "25px",
87
+ insetInlineStart: "4px",
88
+ marginInlineStart: odysseyDesignTokens.BorderWidthMain,
89
+ opacity: 1,
90
+ pointerEvents: "none",
91
+ position: "absolute"
92
+ };
93
+ });
100
94
  const NonInteractiveIcon = (0, _styled.default)(_index.CloseCircleFilledIcon, {
101
95
  shouldForwardProp: prop => prop !== "odysseyDesignTokens"
102
- })`
103
- font-size: 1em;
104
- margin-inline-start: ${({
105
- odysseyDesignTokens
106
- }) => odysseyDesignTokens.Spacing2};
107
- margin-inline-end: -${({
96
+ })(({
108
97
  odysseyDesignTokens
109
- }) => odysseyDesignTokens.Spacing1};
110
- margin-block-end: -1px;
111
- `;
98
+ }) => ({
99
+ fontSize: "1em",
100
+ marginBlockEnd: "-1px",
101
+ marginInlineEnd: `-${odysseyDesignTokens.Spacing1}`,
102
+ marginInlineStart: odysseyDesignTokens.Spacing2
103
+ }));
112
104
  const ChipsInnerContainer = (0, _styled.default)(_Box2.default, {
113
105
  shouldForwardProp: prop => prop !== "odysseyDesignTokens" && prop !== "isInteractive" && prop !== "isReadOnly"
114
- })`
115
- display: flex;
116
- flex-wrap: wrap;
117
- gap: ${({
118
- odysseyDesignTokens
119
- }) => odysseyDesignTokens.Spacing1};
120
- pointer-events: none;
121
- opacity: ${({
106
+ })(({
122
107
  isInteractive,
123
- isReadOnly
124
- }) => isInteractive || isReadOnly ? 1 : 0};
125
- min-height: ${({
108
+ isReadOnly,
126
109
  odysseyDesignTokens
127
- }) => odysseyDesignTokens.Spacing6};
128
- `;
110
+ }) => ({
111
+ display: "flex",
112
+ flexWrap: "wrap",
113
+ gap: odysseyDesignTokens.Spacing1,
114
+ marginBlock: `-${odysseyDesignTokens.Spacing2}`,
115
+ marginInlineEnd: odysseyDesignTokens.Spacing1,
116
+ minHeight: odysseyDesignTokens.Spacing6,
117
+ opacity: isInteractive || isReadOnly ? 1 : 0,
118
+ pointerEvents: "none"
119
+ }));
129
120
  const {
130
121
  CONTROLLED
131
122
  } = _inputUtils.ComponentControlledState;
@@ -1 +1 @@
1
- {"version":3,"file":"Select.cjs","names":["_react","require","_styled","_interopRequireDefault","_Field","_index","_inputUtils","_OdysseyDesignTokensContext","_useNormalizedKey","_jsxRuntime","e","__esModule","default","SelectTestSelector","exports","accessibleText","errorMessage","hint","label","children","list","listItem","elementSelector","method","options","role","isControlledElement","SelectContainer","styled","div","ChipsPositioningContainer","shouldForwardProp","prop","odysseyDesignTokens","Spacing0","Spacing5","Spacing1","BorderWidthMain","NonInteractiveIcon","CloseCircleFilledIcon","Spacing2","ChipsInnerContainer","_Box2","isInteractive","isReadOnly","Spacing6","CONTROLLED","ComponentControlledState","Select","ariaDescribedBy","defaultValue","errorMessageList","hasMultipleChoices","hasMultipleChoicesProp","HintLinkComponent","id","idOverride","inputRef","isDisabled","isFullWidth","isMultiSelect","isOptional","name","nameOverride","onBlur","onChange","onChangeProp","onFocus","testId","translate","value","selectRef","useRef","useMemo","undefined","controlledStateRef","getControlState","controlledValue","uncontrolledValue","internalSelectedValues","setInternalSelectedValues","useState","current","localInputRef","useOdysseyDesignTokens","useImperativeHandle","focus","useEffect","inputValues","useInputValues","controlState","useCallback","event","child","preventDefault","target","split","normalizedOptions","normalizedOptionsMap","map","option","text","type","lang","language","Map","removeSelectedValue","selectedValue","Array","isArray","newValue","filter","internalSelectedValue","syntheticEvent","Chips","stopPropagation","hasNonInteractiveIcon","jsx","item","length","_Chip2","jsxs","Fragment","get","tabIndex","onDelete","deleteIcon","sx","pointerEvents","onMouseDown","renderedOptions","index","_ListSubheader2","isSelected","includes","_MenuItem2","selected","_Checkbox2","checked","_ListItemSecondaryAction2","CheckIcon","normalizedKey","toString","renderValue","renderFieldComponent","errorMessageElementId","labelElementId","_Select2","displayEmpty","inputProps","readOnly","el","labelId","MenuProps","maxHeight","multiple","Field","fieldType","hasVisibleLabel","MemoizedSelect","memo","displayName"],"sources":["../../src/Select.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport {\n memo,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n useImperativeHandle,\n} from \"react\";\nimport styled from \"@emotion/styled\";\nimport {\n Box as MuiBox,\n Checkbox as MuiCheckbox,\n Chip as MuiChip,\n ListItemSecondaryAction,\n ListSubheader,\n MenuItem as MuiMenuItem,\n Select as MuiSelect,\n SelectProps as MuiSelectProps,\n SelectChangeEvent,\n} from \"@mui/material\";\n\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport { CheckIcon, CloseCircleFilledIcon } from \"./icons.generated/index.js\";\nimport type { HtmlProps } from \"./HtmlProps.js\";\nimport {\n ComponentControlledState,\n FocusHandle,\n useInputValues,\n getControlState,\n} from \"./inputUtils.js\";\nimport {\n useOdysseyDesignTokens,\n DesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { TestSelector } from \"./test-selectors/index.js\";\nimport { normalizedKey } from \"./useNormalizedKey.js\";\n\nexport const SelectTestSelector = {\n accessibleText: {\n errorMessage: \"errorMessage\",\n hint: \"description\",\n label: \"label\",\n },\n children: {\n list: {\n accessibleText: {\n label: \"label\",\n },\n children: {\n listItem: {\n accessibleText: {\n label: \"label\",\n },\n elementSelector: {\n method: \"ByRole\",\n options: {\n label: \"name\",\n },\n role: \"option\",\n },\n },\n },\n isControlledElement: true,\n },\n },\n elementSelector: {\n method: \"ByRole\",\n options: {\n label: \"name\",\n },\n role: \"combobox\",\n },\n} as const satisfies TestSelector;\n\nexport type SelectOption = {\n text: string;\n type?: \"heading\" | \"option\";\n value?: string;\n language?: string;\n};\n\nconst SelectContainer = styled.div`\n position: relative;\n width: 100%;\n display: flex;\n`;\n\nconst ChipsPositioningContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>`\n display: flex;\n align-items: center;\n position: absolute;\n top: ${({ odysseyDesignTokens }) => odysseyDesignTokens.Spacing0};\n right: ${({ odysseyDesignTokens }) => odysseyDesignTokens.Spacing5};\n bottom: ${({ odysseyDesignTokens }) => odysseyDesignTokens.Spacing0};\n left: ${({ odysseyDesignTokens }) => odysseyDesignTokens.Spacing1};\n margin-inline-start: ${({ odysseyDesignTokens }) =>\n odysseyDesignTokens.BorderWidthMain};\n opacity: 1;\n pointer-events: none;\n`;\n\nconst NonInteractiveIcon = styled(CloseCircleFilledIcon, {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>`\n font-size: 1em;\n margin-inline-start: ${({ odysseyDesignTokens }) =>\n odysseyDesignTokens.Spacing2};\n margin-inline-end: -${({ odysseyDesignTokens }) => odysseyDesignTokens.Spacing1};\n margin-block-end: -1px;\n`;\n\nconst ChipsInnerContainer = styled(MuiBox, {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isInteractive\" &&\n prop !== \"isReadOnly\",\n})<{\n isInteractive?: boolean;\n isReadOnly?: boolean;\n odysseyDesignTokens: DesignTokens;\n}>`\n display: flex;\n flex-wrap: wrap;\n gap: ${({ odysseyDesignTokens }) => odysseyDesignTokens.Spacing1};\n pointer-events: none;\n opacity: ${({ isInteractive, isReadOnly }) =>\n isInteractive || isReadOnly ? 1 : 0};\n min-height: ${({ odysseyDesignTokens }) => odysseyDesignTokens.Spacing6};\n`;\n\nexport type SelectValueType<HasMultipleChoices> =\n HasMultipleChoices extends true ? string[] : string;\n\nexport type SelectProps<\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean,\n> = {\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue?: MuiSelectProps<Value>[\"defaultValue\"];\n /**\n * If `true`, the Select allows multiple selections\n */\n hasMultipleChoices?: HasMultipleChoices;\n /**\n * The ref forwarded to the Select\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * @deprecated Use `hasMultipleChoices` instead.\n */\n /** **Deprecated:** use `hasMultipleChoices` */\n isMultiSelect?: HasMultipleChoices;\n /**\n * The label text for the Select\n */\n label: string;\n /**\n * Callback fired when the Select loses focus\n */\n onBlur?: MuiSelectProps<Value>[\"onBlur\"];\n /**\n * Callback fired when the value of the Select changes\n */\n onChange?: MuiSelectProps<Value>[\"onChange\"];\n /**\n * Callback fired when the Select gains focus\n */\n onFocus?: MuiSelectProps<Value>[\"onFocus\"];\n /**\n * The options for the Select\n */\n options: (string | SelectOption)[];\n /**\n * The value or values selected in the Select\n */\n value?: Value;\n} & Pick<\n FieldComponentProps,\n | \"errorMessage\"\n | \"errorMessageList\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isFullWidth\"\n | \"isOptional\"\n | \"isReadOnly\"\n | \"name\"\n> &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype SelectRenderProps = Partial<\n Pick<FieldComponentRenderProps, \"ariaDescribedBy\" | \"errorMessageElementId\">\n> &\n Pick<FieldComponentRenderProps, \"id\" | \"labelElementId\">;\n\n/**\n * Options in Odyssey <Select> are passed as an array, which can contain any combination\n * of the following:\n * - string — A simple string. The string will be both the text and the value of the resulting option.\n * <option value=\"string\">string</option>\n *\n * - { text: string } — Same as above, but the string is contained within an object.\n * <option value=\"text\">text</option>\n *\n * - { text: string, value: string } — The option text will be text, and the option value will be value.\n * <option value=\"value\">text</option>\n *\n * - { text: string, type: \"heading\" } — Used to display a group heading with the text\n */\n\nconst { CONTROLLED } = ComponentControlledState;\nconst Select = <\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean,\n>({\n ariaDescribedBy,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasMultipleChoices: hasMultipleChoicesProp,\n hint,\n HintLinkComponent,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isFullWidth = false,\n isMultiSelect,\n isOptional = false,\n isReadOnly = false,\n label,\n name: nameOverride,\n onBlur,\n onChange: onChangeProp,\n onFocus,\n options,\n testId,\n translate,\n value,\n}: SelectProps<Value, HasMultipleChoices>) => {\n const selectRef = useRef<HTMLInputElement | HTMLTextAreaElement | null>(null);\n\n const hasMultipleChoices = useMemo(\n () =>\n hasMultipleChoicesProp === undefined\n ? isMultiSelect\n : hasMultipleChoicesProp,\n [hasMultipleChoicesProp, isMultiSelect],\n );\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const [internalSelectedValues, setInternalSelectedValues] = useState(\n controlledStateRef.current === CONTROLLED ? value : defaultValue,\n );\n\n const localInputRef = useRef<HTMLSelectElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n useEffect(() => {\n if (controlledStateRef.current === CONTROLLED) {\n setInternalSelectedValues(value);\n }\n }, [value]);\n\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const onChange = useCallback<NonNullable<MuiSelectProps<Value>[\"onChange\"]>>(\n (event, child) => {\n if (isReadOnly) {\n event.preventDefault();\n } else {\n const {\n target: { value },\n } = event;\n if (controlledStateRef.current !== CONTROLLED) {\n setInternalSelectedValues(\n (typeof value === \"string\" && hasMultipleChoices\n ? value.split(\",\")\n : value) as Value,\n );\n }\n onChangeProp?.(event, child);\n }\n },\n [hasMultipleChoices, onChangeProp, isReadOnly],\n );\n // Normalize the options array to accommodate the various\n // data types that might be passed\n const [normalizedOptions, normalizedOptionsMap] = useMemo(() => {\n const normalizedOptions = options.map((option) => {\n if (typeof option === \"object\") {\n /**\n * If the value of `option?.value is an empty string, we need to make sure that we\n * set an empty string to `value` in the normalized option so that the select component\n * can potentially set it as the selected one in the text input\n */\n const value =\n option?.value === \"\" ? option.value : option.value || option.text;\n return {\n text: option.text,\n value,\n type: option.type === \"heading\" ? \"heading\" : \"option\",\n lang: option.language,\n };\n }\n\n return { text: option, value: option, type: \"option\" };\n });\n\n const normalizedOptionsMap = new Map(\n normalizedOptions.map((option) => [option.value, option]),\n );\n return [normalizedOptions, normalizedOptionsMap];\n }, [options]);\n\n const removeSelectedValue = useCallback(\n (selectedValue: string) => {\n if (Array.isArray(internalSelectedValues)) {\n const newValue = internalSelectedValues.filter(\n (internalSelectedValue) => internalSelectedValue !== selectedValue,\n );\n\n const syntheticEvent = {\n target: { value: newValue },\n } as SelectChangeEvent<Value>;\n\n onChange(syntheticEvent, null);\n }\n },\n [internalSelectedValues, onChange],\n );\n\n const Chips = useCallback(\n ({\n isInteractive,\n isReadOnly,\n }: {\n isInteractive: boolean;\n isReadOnly?: boolean;\n }) => {\n const stopPropagation = (event: React.MouseEvent<SVGSVGElement>) =>\n event.stopPropagation();\n\n const hasNonInteractiveIcon =\n !isInteractive &&\n !isReadOnly &&\n controlledStateRef.current === CONTROLLED &&\n hasMultipleChoices;\n\n return (\n Array.isArray(internalSelectedValues) && (\n <ChipsInnerContainer\n isInteractive={isInteractive}\n isReadOnly={isReadOnly}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {internalSelectedValues.map(\n (item) =>\n item?.length > 0 && (\n <MuiChip\n key={item}\n label={\n <>\n {normalizedOptionsMap.get(item)?.text}\n {hasNonInteractiveIcon && (\n <NonInteractiveIcon\n odysseyDesignTokens={odysseyDesignTokens}\n />\n )}\n </>\n }\n tabIndex={-1}\n onDelete={\n isInteractive && controlledStateRef.current === CONTROLLED\n ? () => removeSelectedValue(item)\n : undefined\n }\n deleteIcon={\n <CloseCircleFilledIcon\n sx={{ pointerEvents: \"auto\" }}\n // We need to stop event propagation on mouse down to prevent the deletion\n // from being blocked by the Select list opening, and also ensure that\n // the pointerEvent is registered even when the parent's are not\n onMouseDown={stopPropagation}\n />\n }\n />\n ),\n )}\n </ChipsInnerContainer>\n )\n );\n },\n [\n controlledStateRef,\n hasMultipleChoices,\n internalSelectedValues,\n odysseyDesignTokens,\n removeSelectedValue,\n normalizedOptionsMap,\n ],\n );\n\n // Convert the options into the ReactNode children\n // that will populate the <Select>\n const renderedOptions = useMemo(\n () =>\n normalizedOptions.map((option, index) => {\n if (option.type === \"heading\") {\n return (\n <ListSubheader key={option.text}> {option.text} </ListSubheader>\n );\n }\n\n const isSelected = hasMultipleChoices\n ? internalSelectedValues?.includes(option.value)\n : internalSelectedValues === option.value;\n\n return (\n <MuiMenuItem\n data-empty={!option.text}\n key={normalizedKey(option.text, index.toString())}\n value={option.value}\n selected={isSelected}\n lang={option.lang}\n >\n {hasMultipleChoices && <MuiCheckbox checked={isSelected} />}\n {option.text}\n {!hasMultipleChoices && internalSelectedValues === option.value && (\n <ListItemSecondaryAction>\n <CheckIcon />\n </ListItemSecondaryAction>\n )}\n </MuiMenuItem>\n );\n }),\n [hasMultipleChoices, normalizedOptions, internalSelectedValues],\n );\n\n const renderValue = useCallback(\n (value: Value) => Array.isArray(value) && <Chips isInteractive={false} />,\n [Chips],\n );\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: SelectRenderProps) => (\n <SelectContainer>\n <MuiSelect\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n aria-errormessage={errorMessageElementId}\n displayEmpty\n id={id}\n inputProps={{\n \"data-se\": testId,\n \"aria-disabled\": isDisabled || isReadOnly,\n readOnly: isReadOnly,\n }}\n inputRef={(el: HTMLInputElement | HTMLTextAreaElement | null) => {\n if (localInputRef.current !== el) {\n (localInputRef as React.MutableRefObject<typeof el>).current = el;\n }\n selectRef.current = el;\n }}\n labelId={labelElementId}\n MenuProps={{\n sx: {\n \".MuiPaper-root\": {\n maxHeight: \"50vh\",\n },\n },\n }}\n multiple={hasMultipleChoices}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n renderValue={hasMultipleChoices ? renderValue : undefined}\n translate={translate}\n >\n {renderedOptions}\n </MuiSelect>\n {hasMultipleChoices && (\n <>\n <ChipsPositioningContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <Chips isInteractive={!isReadOnly} isReadOnly={isReadOnly} />\n </ChipsPositioningContainer>\n </>\n )}\n </SelectContainer>\n ),\n [\n Chips,\n inputValues,\n hasMultipleChoices,\n isDisabled,\n isReadOnly,\n nameOverride,\n odysseyDesignTokens,\n onBlur,\n onChange,\n onFocus,\n renderedOptions,\n renderValue,\n testId,\n translate,\n ],\n );\n\n return (\n <Field\n ariaDescribedBy={ariaDescribedBy}\n errorMessage={errorMessage}\n errorMessageList={errorMessageList}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedSelect = memo(Select);\nMemoizedSelect.displayName = \"Select\";\n\nexport { MemoizedSelect as Select };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Select.cjs","names":["_react","require","_styled","_interopRequireDefault","_Field","_index","_inputUtils","_OdysseyDesignTokensContext","_useNormalizedKey","_jsxRuntime","e","__esModule","default","SelectTestSelector","exports","accessibleText","errorMessage","hint","label","children","list","listItem","elementSelector","method","options","role","isControlledElement","SelectContainer","styled","div","ChipsPositioningContainer","shouldForwardProp","prop","odysseyDesignTokens","alignItems","display","insetBlockEnd","insetBlockStart","insetInlineEnd","insetInlineStart","marginInlineStart","BorderWidthMain","opacity","pointerEvents","position","NonInteractiveIcon","CloseCircleFilledIcon","fontSize","marginBlockEnd","marginInlineEnd","Spacing1","Spacing2","ChipsInnerContainer","_Box2","isInteractive","isReadOnly","flexWrap","gap","marginBlock","minHeight","Spacing6","CONTROLLED","ComponentControlledState","Select","ariaDescribedBy","defaultValue","errorMessageList","hasMultipleChoices","hasMultipleChoicesProp","HintLinkComponent","id","idOverride","inputRef","isDisabled","isFullWidth","isMultiSelect","isOptional","name","nameOverride","onBlur","onChange","onChangeProp","onFocus","testId","translate","value","selectRef","useRef","useMemo","undefined","controlledStateRef","getControlState","controlledValue","uncontrolledValue","internalSelectedValues","setInternalSelectedValues","useState","current","localInputRef","useOdysseyDesignTokens","useImperativeHandle","focus","useEffect","inputValues","useInputValues","controlState","useCallback","event","child","preventDefault","target","split","normalizedOptions","normalizedOptionsMap","map","option","text","type","lang","language","Map","removeSelectedValue","selectedValue","Array","isArray","newValue","filter","internalSelectedValue","syntheticEvent","Chips","stopPropagation","hasNonInteractiveIcon","jsx","item","length","_Chip2","jsxs","Fragment","get","tabIndex","onDelete","deleteIcon","sx","onMouseDown","renderedOptions","index","_ListSubheader2","isSelected","includes","_MenuItem2","selected","_Checkbox2","checked","_ListItemSecondaryAction2","CheckIcon","normalizedKey","toString","renderValue","renderFieldComponent","errorMessageElementId","labelElementId","_Select2","displayEmpty","inputProps","readOnly","el","labelId","MenuProps","maxHeight","multiple","Field","fieldType","hasVisibleLabel","MemoizedSelect","memo","displayName"],"sources":["../../src/Select.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport {\n memo,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n useImperativeHandle,\n} from \"react\";\nimport styled from \"@emotion/styled\";\nimport {\n Box as MuiBox,\n Checkbox as MuiCheckbox,\n Chip as MuiChip,\n ListItemSecondaryAction,\n ListSubheader,\n MenuItem as MuiMenuItem,\n Select as MuiSelect,\n SelectProps as MuiSelectProps,\n SelectChangeEvent,\n} from \"@mui/material\";\n\nimport { Field } from \"./Field.js\";\nimport {\n FieldComponentProps,\n FieldComponentRenderProps,\n} from \"./FieldComponentProps.js\";\nimport { CheckIcon, CloseCircleFilledIcon } from \"./icons.generated/index.js\";\nimport type { HtmlProps } from \"./HtmlProps.js\";\nimport {\n ComponentControlledState,\n FocusHandle,\n useInputValues,\n getControlState,\n} from \"./inputUtils.js\";\nimport {\n useOdysseyDesignTokens,\n DesignTokens,\n} from \"./OdysseyDesignTokensContext.js\";\nimport { TestSelector } from \"./test-selectors/index.js\";\nimport { normalizedKey } from \"./useNormalizedKey.js\";\n\nexport const SelectTestSelector = {\n accessibleText: {\n errorMessage: \"errorMessage\",\n hint: \"description\",\n label: \"label\",\n },\n children: {\n list: {\n accessibleText: {\n label: \"label\",\n },\n children: {\n listItem: {\n accessibleText: {\n label: \"label\",\n },\n elementSelector: {\n method: \"ByRole\",\n options: {\n label: \"name\",\n },\n role: \"option\",\n },\n },\n },\n isControlledElement: true,\n },\n },\n elementSelector: {\n method: \"ByRole\",\n options: {\n label: \"name\",\n },\n role: \"combobox\",\n },\n} as const satisfies TestSelector;\n\nexport type SelectOption = {\n text: string;\n type?: \"heading\" | \"option\";\n value?: string;\n language?: string;\n};\n\nconst SelectContainer = styled.div`\n position: relative;\n width: 100%;\n display: flex;\n`;\n\nconst ChipsPositioningContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => {\n return {\n alignItems: \"center\",\n display: \"flex\",\n insetBlockEnd: 0,\n insetBlockStart: 0,\n insetInlineEnd: \"25px\", // This 25px is used to align with MUI's default chip positioning logic.\n insetInlineStart: \"4px\",\n marginInlineStart: odysseyDesignTokens.BorderWidthMain,\n opacity: 1,\n pointerEvents: \"none\",\n position: \"absolute\",\n };\n});\n\nconst NonInteractiveIcon = styled(CloseCircleFilledIcon, {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n fontSize: \"1em\",\n marginBlockEnd: \"-1px\",\n marginInlineEnd: `-${odysseyDesignTokens.Spacing1}`,\n marginInlineStart: odysseyDesignTokens.Spacing2,\n}));\n\nconst ChipsInnerContainer = styled(MuiBox, {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isInteractive\" &&\n prop !== \"isReadOnly\",\n})<{\n isInteractive?: boolean;\n isReadOnly?: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isInteractive, isReadOnly, odysseyDesignTokens }) => ({\n display: \"flex\",\n flexWrap: \"wrap\",\n gap: odysseyDesignTokens.Spacing1,\n marginBlock: `-${odysseyDesignTokens.Spacing2}`,\n marginInlineEnd: odysseyDesignTokens.Spacing1,\n minHeight: odysseyDesignTokens.Spacing6,\n opacity: isInteractive || isReadOnly ? 1 : 0,\n pointerEvents: \"none\",\n}));\n\nexport type SelectValueType<HasMultipleChoices> =\n HasMultipleChoices extends true ? string[] : string;\n\nexport type SelectProps<\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean,\n> = {\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue?: MuiSelectProps<Value>[\"defaultValue\"];\n /**\n * If `true`, the Select allows multiple selections\n */\n hasMultipleChoices?: HasMultipleChoices;\n /**\n * The ref forwarded to the Select\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * @deprecated Use `hasMultipleChoices` instead.\n */\n /** **Deprecated:** use `hasMultipleChoices` */\n isMultiSelect?: HasMultipleChoices;\n /**\n * The label text for the Select\n */\n label: string;\n /**\n * Callback fired when the Select loses focus\n */\n onBlur?: MuiSelectProps<Value>[\"onBlur\"];\n /**\n * Callback fired when the value of the Select changes\n */\n onChange?: MuiSelectProps<Value>[\"onChange\"];\n /**\n * Callback fired when the Select gains focus\n */\n onFocus?: MuiSelectProps<Value>[\"onFocus\"];\n /**\n * The options for the Select\n */\n options: (string | SelectOption)[];\n /**\n * The value or values selected in the Select\n */\n value?: Value;\n} & Pick<\n FieldComponentProps,\n | \"errorMessage\"\n | \"errorMessageList\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isFullWidth\"\n | \"isOptional\"\n | \"isReadOnly\"\n | \"name\"\n> &\n Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\ntype SelectRenderProps = Partial<\n Pick<FieldComponentRenderProps, \"ariaDescribedBy\" | \"errorMessageElementId\">\n> &\n Pick<FieldComponentRenderProps, \"id\" | \"labelElementId\">;\n\n/**\n * Options in Odyssey <Select> are passed as an array, which can contain any combination\n * of the following:\n * - string — A simple string. The string will be both the text and the value of the resulting option.\n * <option value=\"string\">string</option>\n *\n * - { text: string } — Same as above, but the string is contained within an object.\n * <option value=\"text\">text</option>\n *\n * - { text: string, value: string } — The option text will be text, and the option value will be value.\n * <option value=\"value\">text</option>\n *\n * - { text: string, type: \"heading\" } — Used to display a group heading with the text\n */\n\nconst { CONTROLLED } = ComponentControlledState;\nconst Select = <\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean,\n>({\n ariaDescribedBy,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasMultipleChoices: hasMultipleChoicesProp,\n hint,\n HintLinkComponent,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isFullWidth = false,\n isMultiSelect,\n isOptional = false,\n isReadOnly = false,\n label,\n name: nameOverride,\n onBlur,\n onChange: onChangeProp,\n onFocus,\n options,\n testId,\n translate,\n value,\n}: SelectProps<Value, HasMultipleChoices>) => {\n const selectRef = useRef<HTMLInputElement | HTMLTextAreaElement | null>(null);\n\n const hasMultipleChoices = useMemo(\n () =>\n hasMultipleChoicesProp === undefined\n ? isMultiSelect\n : hasMultipleChoicesProp,\n [hasMultipleChoicesProp, isMultiSelect],\n );\n\n const controlledStateRef = useRef(\n getControlState({\n controlledValue: value,\n uncontrolledValue: defaultValue,\n }),\n );\n const [internalSelectedValues, setInternalSelectedValues] = useState(\n controlledStateRef.current === CONTROLLED ? value : defaultValue,\n );\n\n const localInputRef = useRef<HTMLSelectElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n useEffect(() => {\n if (controlledStateRef.current === CONTROLLED) {\n setInternalSelectedValues(value);\n }\n }, [value]);\n\n const inputValues = useInputValues({\n defaultValue,\n value,\n controlState: controlledStateRef.current,\n });\n\n const onChange = useCallback<NonNullable<MuiSelectProps<Value>[\"onChange\"]>>(\n (event, child) => {\n if (isReadOnly) {\n event.preventDefault();\n } else {\n const {\n target: { value },\n } = event;\n if (controlledStateRef.current !== CONTROLLED) {\n setInternalSelectedValues(\n (typeof value === \"string\" && hasMultipleChoices\n ? value.split(\",\")\n : value) as Value,\n );\n }\n onChangeProp?.(event, child);\n }\n },\n [hasMultipleChoices, onChangeProp, isReadOnly],\n );\n // Normalize the options array to accommodate the various\n // data types that might be passed\n const [normalizedOptions, normalizedOptionsMap] = useMemo(() => {\n const normalizedOptions = options.map((option) => {\n if (typeof option === \"object\") {\n /**\n * If the value of `option?.value is an empty string, we need to make sure that we\n * set an empty string to `value` in the normalized option so that the select component\n * can potentially set it as the selected one in the text input\n */\n const value =\n option?.value === \"\" ? option.value : option.value || option.text;\n return {\n text: option.text,\n value,\n type: option.type === \"heading\" ? \"heading\" : \"option\",\n lang: option.language,\n };\n }\n\n return { text: option, value: option, type: \"option\" };\n });\n\n const normalizedOptionsMap = new Map(\n normalizedOptions.map((option) => [option.value, option]),\n );\n return [normalizedOptions, normalizedOptionsMap];\n }, [options]);\n\n const removeSelectedValue = useCallback(\n (selectedValue: string) => {\n if (Array.isArray(internalSelectedValues)) {\n const newValue = internalSelectedValues.filter(\n (internalSelectedValue) => internalSelectedValue !== selectedValue,\n );\n\n const syntheticEvent = {\n target: { value: newValue },\n } as SelectChangeEvent<Value>;\n\n onChange(syntheticEvent, null);\n }\n },\n [internalSelectedValues, onChange],\n );\n\n const Chips = useCallback(\n ({\n isInteractive,\n isReadOnly,\n }: {\n isInteractive: boolean;\n isReadOnly?: boolean;\n }) => {\n const stopPropagation = (event: React.MouseEvent<SVGSVGElement>) =>\n event.stopPropagation();\n\n const hasNonInteractiveIcon =\n !isInteractive &&\n !isReadOnly &&\n controlledStateRef.current === CONTROLLED &&\n hasMultipleChoices;\n\n return (\n Array.isArray(internalSelectedValues) && (\n <ChipsInnerContainer\n isInteractive={isInteractive}\n isReadOnly={isReadOnly}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {internalSelectedValues.map(\n (item) =>\n item?.length > 0 && (\n <MuiChip\n key={item}\n label={\n <>\n {normalizedOptionsMap.get(item)?.text}\n {hasNonInteractiveIcon && (\n <NonInteractiveIcon\n odysseyDesignTokens={odysseyDesignTokens}\n />\n )}\n </>\n }\n tabIndex={-1}\n onDelete={\n isInteractive && controlledStateRef.current === CONTROLLED\n ? () => removeSelectedValue(item)\n : undefined\n }\n deleteIcon={\n <CloseCircleFilledIcon\n sx={{ pointerEvents: \"auto\" }}\n // We need to stop event propagation on mouse down to prevent the deletion\n // from being blocked by the Select list opening, and also ensure that\n // the pointerEvent is registered even when the parent's are not\n onMouseDown={stopPropagation}\n />\n }\n />\n ),\n )}\n </ChipsInnerContainer>\n )\n );\n },\n [\n controlledStateRef,\n hasMultipleChoices,\n internalSelectedValues,\n odysseyDesignTokens,\n removeSelectedValue,\n normalizedOptionsMap,\n ],\n );\n\n // Convert the options into the ReactNode children\n // that will populate the <Select>\n const renderedOptions = useMemo(\n () =>\n normalizedOptions.map((option, index) => {\n if (option.type === \"heading\") {\n return (\n <ListSubheader key={option.text}> {option.text} </ListSubheader>\n );\n }\n\n const isSelected = hasMultipleChoices\n ? internalSelectedValues?.includes(option.value)\n : internalSelectedValues === option.value;\n\n return (\n <MuiMenuItem\n data-empty={!option.text}\n key={normalizedKey(option.text, index.toString())}\n value={option.value}\n selected={isSelected}\n lang={option.lang}\n >\n {hasMultipleChoices && <MuiCheckbox checked={isSelected} />}\n {option.text}\n {!hasMultipleChoices && internalSelectedValues === option.value && (\n <ListItemSecondaryAction>\n <CheckIcon />\n </ListItemSecondaryAction>\n )}\n </MuiMenuItem>\n );\n }),\n [hasMultipleChoices, normalizedOptions, internalSelectedValues],\n );\n\n const renderValue = useCallback(\n (value: Value) => Array.isArray(value) && <Chips isInteractive={false} />,\n [Chips],\n );\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: SelectRenderProps) => (\n <SelectContainer>\n <MuiSelect\n {...inputValues}\n aria-describedby={ariaDescribedBy}\n aria-errormessage={errorMessageElementId}\n displayEmpty\n id={id}\n inputProps={{\n \"data-se\": testId,\n \"aria-disabled\": isDisabled || isReadOnly,\n readOnly: isReadOnly,\n }}\n inputRef={(el: HTMLInputElement | HTMLTextAreaElement | null) => {\n if (localInputRef.current !== el) {\n (localInputRef as React.MutableRefObject<typeof el>).current = el;\n }\n selectRef.current = el;\n }}\n labelId={labelElementId}\n MenuProps={{\n sx: {\n \".MuiPaper-root\": {\n maxHeight: \"50vh\",\n },\n },\n }}\n multiple={hasMultipleChoices}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n renderValue={hasMultipleChoices ? renderValue : undefined}\n translate={translate}\n >\n {renderedOptions}\n </MuiSelect>\n {hasMultipleChoices && (\n <>\n <ChipsPositioningContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <Chips isInteractive={!isReadOnly} isReadOnly={isReadOnly} />\n </ChipsPositioningContainer>\n </>\n )}\n </SelectContainer>\n ),\n [\n Chips,\n inputValues,\n hasMultipleChoices,\n isDisabled,\n isReadOnly,\n nameOverride,\n odysseyDesignTokens,\n onBlur,\n onChange,\n onFocus,\n renderedOptions,\n renderValue,\n testId,\n translate,\n ],\n );\n\n return (\n <Field\n ariaDescribedBy={ariaDescribedBy}\n errorMessage={errorMessage}\n errorMessageList={errorMessageList}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={idOverride}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedSelect = memo(Select);\nMemoizedSelect.displayName = \"Select\";\n\nexport { MemoizedSelect as Select };\n"],"mappings":"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","ignoreList":[]}
@@ -24,6 +24,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
24
24
  const statusSeverityValues = exports.statusSeverityValues = ["default", "error", "info", "success", "warning"];
25
25
  const statusVariantValues = exports.statusVariantValues = ["lamp", "pill"];
26
26
  const Status = ({
27
+ ariaDescribedBy,
27
28
  label,
28
29
  severity,
29
30
  testId,
@@ -33,6 +34,7 @@ const Status = ({
33
34
  const muiProps = (0, _MuiPropsContext.useMuiProps)();
34
35
  return (0, _jsxRuntime.jsx)(_Chip2.default, {
35
36
  ...muiProps,
37
+ "aria-describedby": ariaDescribedBy,
36
38
  color: severity,
37
39
  "data-se": testId,
38
40
  label: label,
@@ -1 +1 @@
1
- {"version":3,"file":"Status.cjs","names":["_react","require","_MuiPropsContext","_jsxRuntime","_interopRequireDefault","e","__esModule","default","statusSeverityValues","exports","statusVariantValues","Status","label","severity","testId","translate","variant","muiProps","useMuiProps","jsx","_Chip2","color","MemoizedStatus","memo","displayName"],"sources":["../../src/Status.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 { memo } from \"react\";\nimport { Chip } from \"@mui/material\";\n\nimport { useMuiProps } from \"./MuiPropsContext.js\";\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nexport const statusSeverityValues = [\n \"default\",\n \"error\",\n \"info\",\n \"success\",\n \"warning\",\n] as const;\nexport const statusVariantValues = [\"lamp\", \"pill\"] as const;\n\nexport type StatusProps = {\n /**\n * The text content of the Status\n */\n label: string;\n /**\n * Determine the color and icon of the Status\n */\n severity: (typeof statusSeverityValues)[number];\n /**\n * The style of the Status indicator\n */\n variant?: (typeof statusVariantValues)[number];\n} & Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst Status = ({\n label,\n severity,\n testId,\n translate,\n variant = \"pill\",\n}: StatusProps) => {\n const muiProps = useMuiProps();\n\n return (\n <Chip\n {...muiProps}\n color={severity}\n data-se={testId}\n label={label}\n translate={translate}\n variant={variant}\n />\n );\n};\n\nconst MemoizedStatus = memo(Status);\nMemoizedStatus.displayName = \"Status\";\n\nexport { MemoizedStatus as Status };\n"],"mappings":";;;;;;;AAYA,IAAAA,MAAA,GAAAC,OAAA;AAGA,IAAAC,gBAAA,GAAAD,OAAA;AAAmD,IAAAE,WAAA,GAAAF,OAAA;AAAA,SAAAG,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAfnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAQO,MAAMG,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG,CAClC,SAAS,EACT,OAAO,EACP,MAAM,EACN,SAAS,EACT,SAAS,CACD;AACH,MAAME,mBAAmB,GAAAD,OAAA,CAAAC,mBAAA,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU;AAiB5D,MAAMC,MAAM,GAAGA,CAAC;EACdC,KAAK;EACLC,QAAQ;EACRC,MAAM;EACNC,SAAS;EACTC,OAAO,GAAG;AACC,CAAC,KAAK;EACjB,MAAMC,QAAQ,GAAG,IAAAC,4BAAW,EAAC,CAAC;EAE9B,OACE,IAAAf,WAAA,CAAAgB,GAAA,EAAAC,MAAA,CAAAb,OAAA;IAAA,GACMU,QAAQ;IACZI,KAAK,EAAER,QAAS;IAChB,WAASC,MAAO;IAChBF,KAAK,EAAEA,KAAM;IACbG,SAAS,EAAEA,SAAU;IACrBC,OAAO,EAAEA;EAAQ,CAClB,CAAC;AAEN,CAAC;AAED,MAAMM,cAAc,GAAAb,OAAA,CAAAE,MAAA,GAAG,IAAAY,WAAI,EAACZ,MAAM,CAAC;AACnCW,cAAc,CAACE,WAAW,GAAG,QAAQ","ignoreList":[]}
1
+ {"version":3,"file":"Status.cjs","names":["_react","require","_MuiPropsContext","_jsxRuntime","_interopRequireDefault","e","__esModule","default","statusSeverityValues","exports","statusVariantValues","Status","ariaDescribedBy","label","severity","testId","translate","variant","muiProps","useMuiProps","jsx","_Chip2","color","MemoizedStatus","memo","displayName"],"sources":["../../src/Status.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 { memo } from \"react\";\nimport { Chip } from \"@mui/material\";\n\nimport { useMuiProps } from \"./MuiPropsContext.js\";\nimport type { HtmlProps } from \"./HtmlProps.js\";\n\nexport const statusSeverityValues = [\n \"default\",\n \"error\",\n \"info\",\n \"success\",\n \"warning\",\n] as const;\nexport const statusVariantValues = [\"lamp\", \"pill\"] as const;\n\nexport type StatusProps = {\n /**\n * The text content of the Status\n */\n label: string;\n /**\n * Determine the color and icon of the Status\n */\n severity: (typeof statusSeverityValues)[number];\n /**\n * The style of the Status indicator\n */\n variant?: (typeof statusVariantValues)[number];\n} & Pick<HtmlProps, \"ariaDescribedBy\" | \"testId\" | \"translate\">;\n\nconst Status = ({\n ariaDescribedBy,\n label,\n severity,\n testId,\n translate,\n variant = \"pill\",\n}: StatusProps) => {\n const muiProps = useMuiProps();\n\n return (\n <Chip\n {...muiProps}\n aria-describedby={ariaDescribedBy}\n color={severity}\n data-se={testId}\n label={label}\n translate={translate}\n variant={variant}\n />\n );\n};\n\nconst MemoizedStatus = memo(Status);\nMemoizedStatus.displayName = \"Status\";\n\nexport { MemoizedStatus as Status };\n"],"mappings":";;;;;;;AAYA,IAAAA,MAAA,GAAAC,OAAA;AAGA,IAAAC,gBAAA,GAAAD,OAAA;AAAmD,IAAAE,WAAA,GAAAF,OAAA;AAAA,SAAAG,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAfnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAQO,MAAMG,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG,CAClC,SAAS,EACT,OAAO,EACP,MAAM,EACN,SAAS,EACT,SAAS,CACD;AACH,MAAME,mBAAmB,GAAAD,OAAA,CAAAC,mBAAA,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU;AAiB5D,MAAMC,MAAM,GAAGA,CAAC;EACdC,eAAe;EACfC,KAAK;EACLC,QAAQ;EACRC,MAAM;EACNC,SAAS;EACTC,OAAO,GAAG;AACC,CAAC,KAAK;EACjB,MAAMC,QAAQ,GAAG,IAAAC,4BAAW,EAAC,CAAC;EAE9B,OACE,IAAAhB,WAAA,CAAAiB,GAAA,EAAAC,MAAA,CAAAd,OAAA;IAAA,GACMW,QAAQ;IACZ,oBAAkBN,eAAgB;IAClCU,KAAK,EAAER,QAAS;IAChB,WAASC,MAAO;IAChBF,KAAK,EAAEA,KAAM;IACbG,SAAS,EAAEA,SAAU;IACrBC,OAAO,EAAEA;EAAQ,CAClB,CAAC;AAEN,CAAC;AAED,MAAMM,cAAc,GAAAd,OAAA,CAAAE,MAAA,GAAG,IAAAa,WAAI,EAACb,MAAM,CAAC;AACnCY,cAAc,CAACE,WAAW,GAAG,QAAQ","ignoreList":[]}
@@ -42,11 +42,12 @@ const Typography = ({
42
42
  children,
43
43
  color,
44
44
  component: componentProp,
45
+ id,
46
+ isPresentational,
45
47
  testId,
46
48
  translate,
47
49
  typographyRef,
48
- variant = "body",
49
- isPresentational
50
+ variant = "body"
50
51
  }) => {
51
52
  const component = (0, _react.useMemo)(() => {
52
53
  if (!componentProp) {
@@ -75,11 +76,12 @@ const Typography = ({
75
76
  color: color,
76
77
  component: component,
77
78
  "data-se": testId,
79
+ id: id,
78
80
  ref: localTypographyRef,
81
+ role: isPresentational ? "presentation" : undefined,
79
82
  tabIndex: -1,
80
83
  translate: translate,
81
- variant: typographyVariantMapping[variant],
82
- role: isPresentational ? "presentation" : undefined
84
+ variant: typographyVariantMapping[variant]
83
85
  });
84
86
  };
85
87
  const MemoizedTypography = exports.Typography = (0, _react.memo)(Typography);
@@ -92,9 +94,10 @@ const Heading1 = ({
92
94
  children,
93
95
  color,
94
96
  component,
97
+ id,
98
+ isPresentational,
95
99
  testId,
96
- translate,
97
- isPresentational
100
+ translate
98
101
  }) => (0, _jsxRuntime.jsx)(Typography, {
99
102
  ariaCurrent: ariaCurrent,
100
103
  ariaDescribedBy: ariaDescribedBy,
@@ -103,10 +106,11 @@ const Heading1 = ({
103
106
  children: children,
104
107
  color: color,
105
108
  component: component,
109
+ id: id,
110
+ isPresentational: isPresentational,
106
111
  testId: testId,
107
112
  translate: translate,
108
- variant: "h1",
109
- isPresentational: isPresentational
113
+ variant: "h1"
110
114
  });
111
115
  const MemoizedHeading1 = exports.Heading1 = (0, _react.memo)(Heading1);
112
116
  MemoizedHeading1.displayName = "Heading1";
@@ -118,6 +122,7 @@ const Heading2 = ({
118
122
  children,
119
123
  color,
120
124
  component,
125
+ id,
121
126
  testId,
122
127
  translate
123
128
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -128,6 +133,7 @@ const Heading2 = ({
128
133
  children: children,
129
134
  color: color,
130
135
  component: component,
136
+ id: id,
131
137
  testId: testId,
132
138
  translate: translate,
133
139
  variant: "h2"
@@ -142,6 +148,7 @@ const Heading3 = ({
142
148
  children,
143
149
  color,
144
150
  component,
151
+ id,
145
152
  testId,
146
153
  translate
147
154
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -152,6 +159,7 @@ const Heading3 = ({
152
159
  children: children,
153
160
  color: color,
154
161
  component: component,
162
+ id: id,
155
163
  testId: testId,
156
164
  translate: translate,
157
165
  variant: "h3"
@@ -166,6 +174,7 @@ const Heading4 = ({
166
174
  children,
167
175
  color,
168
176
  component,
177
+ id,
169
178
  testId,
170
179
  translate
171
180
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -176,6 +185,7 @@ const Heading4 = ({
176
185
  children: children,
177
186
  color: color,
178
187
  component: component,
188
+ id: id,
179
189
  testId: testId,
180
190
  translate: translate,
181
191
  variant: "h4"
@@ -190,6 +200,7 @@ const Heading5 = ({
190
200
  children,
191
201
  color,
192
202
  component,
203
+ id,
193
204
  testId,
194
205
  translate
195
206
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -200,6 +211,7 @@ const Heading5 = ({
200
211
  children: children,
201
212
  color: color,
202
213
  component: component,
214
+ id: id,
203
215
  testId: testId,
204
216
  translate: translate,
205
217
  variant: "h5"
@@ -214,6 +226,7 @@ const Heading6 = ({
214
226
  children,
215
227
  color,
216
228
  component,
229
+ id,
217
230
  testId,
218
231
  translate
219
232
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -224,6 +237,7 @@ const Heading6 = ({
224
237
  children: children,
225
238
  color: color,
226
239
  component: component,
240
+ id: id,
227
241
  testId: testId,
228
242
  translate: translate,
229
243
  variant: "h6"
@@ -238,6 +252,7 @@ const Paragraph = ({
238
252
  children,
239
253
  color,
240
254
  component,
255
+ id,
241
256
  testId,
242
257
  translate
243
258
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -248,6 +263,7 @@ const Paragraph = ({
248
263
  children: children,
249
264
  color: color,
250
265
  component: component,
266
+ id: id,
251
267
  testId: testId,
252
268
  translate: translate,
253
269
  variant: "body"
@@ -262,6 +278,7 @@ const Subordinate = ({
262
278
  children,
263
279
  color,
264
280
  component,
281
+ id,
265
282
  testId,
266
283
  translate
267
284
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -272,6 +289,7 @@ const Subordinate = ({
272
289
  children: children,
273
290
  color: color,
274
291
  component: component,
292
+ id: id,
275
293
  testId: testId,
276
294
  translate: translate,
277
295
  variant: "subordinate"
@@ -286,6 +304,7 @@ const Support = ({
286
304
  children,
287
305
  color,
288
306
  component,
307
+ id,
289
308
  testId,
290
309
  translate
291
310
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -296,6 +315,7 @@ const Support = ({
296
315
  children: children,
297
316
  color: color,
298
317
  component: component,
318
+ id: id,
299
319
  testId: testId,
300
320
  translate: translate,
301
321
  variant: "support"
@@ -309,6 +329,7 @@ const Legend = ({
309
329
  children,
310
330
  color,
311
331
  component,
332
+ id,
312
333
  testId,
313
334
  translate
314
335
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -318,6 +339,7 @@ const Legend = ({
318
339
  children: children,
319
340
  color: color,
320
341
  component: component,
342
+ id: id,
321
343
  testId: testId,
322
344
  translate: translate,
323
345
  variant: "legend"
@@ -331,6 +353,7 @@ const Overline = ({
331
353
  children,
332
354
  color,
333
355
  component,
356
+ id,
334
357
  testId,
335
358
  translate
336
359
  }) => (0, _jsxRuntime.jsx)(Typography, {
@@ -340,6 +363,7 @@ const Overline = ({
340
363
  children: children,
341
364
  color: color,
342
365
  component: component,
366
+ id: id,
343
367
  testId: testId,
344
368
  translate: translate,
345
369
  variant: "overline"