@okta/odyssey-react-mui 1.4.0 → 1.6.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 (298) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/Accordion.js +52 -0
  3. package/dist/Accordion.js.map +1 -0
  4. package/dist/Autocomplete.js +8 -1
  5. package/dist/Autocomplete.js.map +1 -1
  6. package/dist/Breadcrumbs.js +2 -2
  7. package/dist/Breadcrumbs.js.map +1 -1
  8. package/dist/Callout.js +3 -3
  9. package/dist/Callout.js.map +1 -1
  10. package/dist/CheckboxGroup.js +5 -1
  11. package/dist/CheckboxGroup.js.map +1 -1
  12. package/dist/Dialog.js +3 -0
  13. package/dist/Dialog.js.map +1 -1
  14. package/dist/Field.js +8 -6
  15. package/dist/Field.js.map +1 -1
  16. package/dist/NativeSelect.js +26 -14
  17. package/dist/NativeSelect.js.map +1 -1
  18. package/dist/PasswordField.js +6 -2
  19. package/dist/PasswordField.js.map +1 -1
  20. package/dist/RadioGroup.js +5 -1
  21. package/dist/RadioGroup.js.map +1 -1
  22. package/dist/Select.js +31 -26
  23. package/dist/Select.js.map +1 -1
  24. package/dist/TextField.js +7 -1
  25. package/dist/TextField.js.map +1 -1
  26. package/dist/index.js +2 -0
  27. package/dist/index.js.map +1 -1
  28. package/dist/properties/ts/odyssey-react-mui_cs.js +4 -0
  29. package/dist/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  30. package/dist/properties/ts/odyssey-react-mui_da.js +4 -0
  31. package/dist/properties/ts/odyssey-react-mui_da.js.map +1 -1
  32. package/dist/properties/ts/odyssey-react-mui_de.js +4 -0
  33. package/dist/properties/ts/odyssey-react-mui_de.js.map +1 -1
  34. package/dist/properties/ts/odyssey-react-mui_el.js +4 -0
  35. package/dist/properties/ts/odyssey-react-mui_el.js.map +1 -1
  36. package/dist/properties/ts/odyssey-react-mui_es.js +4 -0
  37. package/dist/properties/ts/odyssey-react-mui_es.js.map +1 -1
  38. package/dist/properties/ts/odyssey-react-mui_fi.js +4 -0
  39. package/dist/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  40. package/dist/properties/ts/odyssey-react-mui_fr.js +4 -0
  41. package/dist/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  42. package/dist/properties/ts/odyssey-react-mui_hu.js +4 -0
  43. package/dist/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  44. package/dist/properties/ts/odyssey-react-mui_id.js +4 -0
  45. package/dist/properties/ts/odyssey-react-mui_id.js.map +1 -1
  46. package/dist/properties/ts/odyssey-react-mui_it.js +4 -0
  47. package/dist/properties/ts/odyssey-react-mui_it.js.map +1 -1
  48. package/dist/properties/ts/odyssey-react-mui_ja.js +4 -0
  49. package/dist/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  50. package/dist/properties/ts/odyssey-react-mui_ko.js +4 -0
  51. package/dist/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  52. package/dist/properties/ts/odyssey-react-mui_ms.js +4 -0
  53. package/dist/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  54. package/dist/properties/ts/odyssey-react-mui_nb.js +4 -0
  55. package/dist/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  56. package/dist/properties/ts/odyssey-react-mui_nl_NL.js +4 -0
  57. package/dist/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  58. package/dist/properties/ts/odyssey-react-mui_pl.js +4 -0
  59. package/dist/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  60. package/dist/properties/ts/odyssey-react-mui_pt_BR.js +4 -0
  61. package/dist/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  62. package/dist/properties/ts/odyssey-react-mui_ro.js +4 -0
  63. package/dist/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  64. package/dist/properties/ts/odyssey-react-mui_ru.js +4 -0
  65. package/dist/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  66. package/dist/properties/ts/odyssey-react-mui_sv.js +4 -0
  67. package/dist/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  68. package/dist/properties/ts/odyssey-react-mui_th.js +4 -0
  69. package/dist/properties/ts/odyssey-react-mui_th.js.map +1 -1
  70. package/dist/properties/ts/odyssey-react-mui_tr.js +4 -0
  71. package/dist/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  72. package/dist/properties/ts/odyssey-react-mui_uk.js +4 -0
  73. package/dist/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  74. package/dist/properties/ts/odyssey-react-mui_vi.js +4 -0
  75. package/dist/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  76. package/dist/properties/ts/odyssey-react-mui_zh_CN.js +4 -0
  77. package/dist/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  78. package/dist/properties/ts/odyssey-react-mui_zh_TW.js +4 -0
  79. package/dist/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  80. package/dist/src/Accordion.d.ts +53 -0
  81. package/dist/src/Accordion.d.ts.map +1 -0
  82. package/dist/src/Autocomplete.d.ts.map +1 -1
  83. package/dist/src/Breadcrumbs.d.ts +1 -1
  84. package/dist/src/Breadcrumbs.d.ts.map +1 -1
  85. package/dist/src/CheckboxGroup.d.ts.map +1 -1
  86. package/dist/src/Dialog.d.ts.map +1 -1
  87. package/dist/src/Field.d.ts +3 -1
  88. package/dist/src/Field.d.ts.map +1 -1
  89. package/dist/src/NativeSelect.d.ts.map +1 -1
  90. package/dist/src/PasswordField.d.ts +3 -3
  91. package/dist/src/PasswordField.d.ts.map +1 -1
  92. package/dist/src/RadioGroup.d.ts +3 -2
  93. package/dist/src/RadioGroup.d.ts.map +1 -1
  94. package/dist/src/SearchField.d.ts +3 -3
  95. package/dist/src/Select.d.ts +14 -8
  96. package/dist/src/Select.d.ts.map +1 -1
  97. package/dist/src/TextField.d.ts +4 -4
  98. package/dist/src/TextField.d.ts.map +1 -1
  99. package/dist/src/i18n.d.ts +104 -0
  100. package/dist/src/i18n.d.ts.map +1 -1
  101. package/dist/src/icons.generated/Add.d.ts +1 -1
  102. package/dist/src/icons.generated/AddCircle.d.ts +1 -1
  103. package/dist/src/icons.generated/Apps.d.ts +1 -1
  104. package/dist/src/icons.generated/ArrowDown.d.ts +1 -1
  105. package/dist/src/icons.generated/ArrowLeft.d.ts +1 -1
  106. package/dist/src/icons.generated/ArrowLowerLeft.d.ts +1 -1
  107. package/dist/src/icons.generated/ArrowLowerRight.d.ts +1 -1
  108. package/dist/src/icons.generated/ArrowRight.d.ts +1 -1
  109. package/dist/src/icons.generated/ArrowUnsorted.d.ts +1 -1
  110. package/dist/src/icons.generated/ArrowUp.d.ts +1 -1
  111. package/dist/src/icons.generated/ArrowUpperLeft.d.ts +1 -1
  112. package/dist/src/icons.generated/ArrowUpperRight.d.ts +1 -1
  113. package/dist/src/icons.generated/Bug.d.ts +1 -1
  114. package/dist/src/icons.generated/Calendar.d.ts +1 -1
  115. package/dist/src/icons.generated/Call.d.ts +1 -1
  116. package/dist/src/icons.generated/Chat.d.ts +1 -1
  117. package/dist/src/icons.generated/Check.d.ts +1 -1
  118. package/dist/src/icons.generated/CheckCircleFilled.d.ts +1 -1
  119. package/dist/src/icons.generated/ChevronDown.d.ts +1 -1
  120. package/dist/src/icons.generated/ChevronLeft.d.ts +1 -1
  121. package/dist/src/icons.generated/ChevronRight.d.ts +1 -1
  122. package/dist/src/icons.generated/ChevronUp.d.ts +1 -1
  123. package/dist/src/icons.generated/Clock.d.ts +1 -1
  124. package/dist/src/icons.generated/Close.d.ts +1 -1
  125. package/dist/src/icons.generated/CloseCircleFilled.d.ts +1 -1
  126. package/dist/src/icons.generated/CollapseLeft.d.ts +1 -1
  127. package/dist/src/icons.generated/CollapseRight.d.ts +1 -1
  128. package/dist/src/icons.generated/Copy.d.ts +1 -1
  129. package/dist/src/icons.generated/DangerDiamond.d.ts +1 -1
  130. package/dist/src/icons.generated/DangerDiamondFilled.d.ts +1 -1
  131. package/dist/src/icons.generated/Delete.d.ts +1 -1
  132. package/dist/src/icons.generated/Deny.d.ts +1 -1
  133. package/dist/src/icons.generated/Devices.d.ts +1 -1
  134. package/dist/src/icons.generated/Directory.d.ts +1 -1
  135. package/dist/src/icons.generated/Documentation.d.ts +1 -1
  136. package/dist/src/icons.generated/Download.d.ts +1 -1
  137. package/dist/src/icons.generated/DragIndicator.d.ts +1 -1
  138. package/dist/src/icons.generated/Edit.d.ts +1 -1
  139. package/dist/src/icons.generated/ExpandLeft.d.ts +1 -1
  140. package/dist/src/icons.generated/ExpandRight.d.ts +1 -1
  141. package/dist/src/icons.generated/ExternalLink.d.ts +1 -1
  142. package/dist/src/icons.generated/Filter.d.ts +1 -1
  143. package/dist/src/icons.generated/Folder.d.ts +1 -1
  144. package/dist/src/icons.generated/Globe.d.ts +1 -1
  145. package/dist/src/icons.generated/Grid.d.ts +1 -1
  146. package/dist/src/icons.generated/Group.d.ts +1 -1
  147. package/dist/src/icons.generated/Hide.d.ts +1 -1
  148. package/dist/src/icons.generated/Home.d.ts +1 -1
  149. package/dist/src/icons.generated/InformationCircle.d.ts +1 -1
  150. package/dist/src/icons.generated/InformationCircleFilled.d.ts +1 -1
  151. package/dist/src/icons.generated/Link.d.ts +1 -1
  152. package/dist/src/icons.generated/List.d.ts +1 -1
  153. package/dist/src/icons.generated/Lock.d.ts +1 -1
  154. package/dist/src/icons.generated/More.d.ts +1 -1
  155. package/dist/src/icons.generated/Notification.d.ts +1 -1
  156. package/dist/src/icons.generated/Pause.d.ts +1 -1
  157. package/dist/src/icons.generated/QuestionCircle.d.ts +1 -1
  158. package/dist/src/icons.generated/QuestionCircleFilled.d.ts +1 -1
  159. package/dist/src/icons.generated/Refresh.d.ts +1 -1
  160. package/dist/src/icons.generated/Reset.d.ts +1 -1
  161. package/dist/src/icons.generated/Resume.d.ts +1 -1
  162. package/dist/src/icons.generated/Search.d.ts +1 -1
  163. package/dist/src/icons.generated/Server.d.ts +1 -1
  164. package/dist/src/icons.generated/Settings.d.ts +1 -1
  165. package/dist/src/icons.generated/Show.d.ts +1 -1
  166. package/dist/src/icons.generated/Subtract.d.ts +1 -1
  167. package/dist/src/icons.generated/Sync.d.ts +1 -1
  168. package/dist/src/icons.generated/Unlock.d.ts +1 -1
  169. package/dist/src/icons.generated/Upload.d.ts +1 -1
  170. package/dist/src/icons.generated/User.d.ts +1 -1
  171. package/dist/src/icons.generated/Video.d.ts +1 -1
  172. package/dist/src/icons.generated/Warning.d.ts +1 -1
  173. package/dist/src/icons.generated/WarningFilled.d.ts +1 -1
  174. package/dist/src/index.d.ts +2 -0
  175. package/dist/src/index.d.ts.map +1 -1
  176. package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts +4 -0
  177. package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  178. package/dist/src/properties/ts/odyssey-react-mui_da.d.ts +4 -0
  179. package/dist/src/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  180. package/dist/src/properties/ts/odyssey-react-mui_de.d.ts +4 -0
  181. package/dist/src/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  182. package/dist/src/properties/ts/odyssey-react-mui_el.d.ts +4 -0
  183. package/dist/src/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  184. package/dist/src/properties/ts/odyssey-react-mui_es.d.ts +4 -0
  185. package/dist/src/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  186. package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts +4 -0
  187. package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  188. package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts +4 -0
  189. package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  190. package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts +4 -0
  191. package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  192. package/dist/src/properties/ts/odyssey-react-mui_id.d.ts +4 -0
  193. package/dist/src/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  194. package/dist/src/properties/ts/odyssey-react-mui_it.d.ts +4 -0
  195. package/dist/src/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  196. package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts +4 -0
  197. package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  198. package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts +4 -0
  199. package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  200. package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts +4 -0
  201. package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  202. package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts +4 -0
  203. package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  204. package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts +4 -0
  205. package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  206. package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts +4 -0
  207. package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  208. package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts +4 -0
  209. package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  210. package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts +4 -0
  211. package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  212. package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts +4 -0
  213. package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  214. package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts +4 -0
  215. package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  216. package/dist/src/properties/ts/odyssey-react-mui_th.d.ts +4 -0
  217. package/dist/src/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  218. package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts +4 -0
  219. package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  220. package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts +4 -0
  221. package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  222. package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts +4 -0
  223. package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  224. package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts +4 -0
  225. package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  226. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts +4 -0
  227. package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  228. package/dist/src/theme/components.d.ts.map +1 -1
  229. package/dist/theme/components.js +136 -13
  230. package/dist/theme/components.js.map +1 -1
  231. package/dist/tsconfig.production.tsbuildinfo +1 -1
  232. package/package.json +3 -3
  233. package/src/Accordion.tsx +94 -0
  234. package/src/Autocomplete.tsx +11 -1
  235. package/src/Breadcrumbs.tsx +3 -3
  236. package/src/Callout.tsx +1 -1
  237. package/src/CheckboxGroup.tsx +7 -2
  238. package/src/Dialog.tsx +7 -1
  239. package/src/Field.tsx +14 -6
  240. package/src/NativeSelect.tsx +7 -2
  241. package/src/PasswordField.tsx +8 -3
  242. package/src/RadioGroup.tsx +9 -4
  243. package/src/Select.tsx +71 -45
  244. package/src/TextField.tsx +5 -1
  245. package/src/index.ts +2 -0
  246. package/src/properties/translations/odyssey-react-mui_cs.properties +4 -0
  247. package/src/properties/translations/odyssey-react-mui_da.properties +4 -0
  248. package/src/properties/translations/odyssey-react-mui_de.properties +4 -0
  249. package/src/properties/translations/odyssey-react-mui_el.properties +4 -0
  250. package/src/properties/translations/odyssey-react-mui_es.properties +4 -0
  251. package/src/properties/translations/odyssey-react-mui_fi.properties +4 -0
  252. package/src/properties/translations/odyssey-react-mui_fr.properties +4 -0
  253. package/src/properties/translations/odyssey-react-mui_hu.properties +4 -0
  254. package/src/properties/translations/odyssey-react-mui_id.properties +4 -0
  255. package/src/properties/translations/odyssey-react-mui_it.properties +4 -0
  256. package/src/properties/translations/odyssey-react-mui_ja.properties +4 -0
  257. package/src/properties/translations/odyssey-react-mui_ko.properties +4 -0
  258. package/src/properties/translations/odyssey-react-mui_ms.properties +4 -0
  259. package/src/properties/translations/odyssey-react-mui_nb.properties +4 -0
  260. package/src/properties/translations/odyssey-react-mui_nl_NL.properties +4 -0
  261. package/src/properties/translations/odyssey-react-mui_pl.properties +4 -0
  262. package/src/properties/translations/odyssey-react-mui_pt_BR.properties +4 -0
  263. package/src/properties/translations/odyssey-react-mui_ro.properties +4 -0
  264. package/src/properties/translations/odyssey-react-mui_ru.properties +4 -0
  265. package/src/properties/translations/odyssey-react-mui_sv.properties +4 -0
  266. package/src/properties/translations/odyssey-react-mui_th.properties +4 -0
  267. package/src/properties/translations/odyssey-react-mui_tr.properties +4 -0
  268. package/src/properties/translations/odyssey-react-mui_uk.properties +4 -0
  269. package/src/properties/translations/odyssey-react-mui_vi.properties +4 -0
  270. package/src/properties/translations/odyssey-react-mui_zh_CN.properties +4 -0
  271. package/src/properties/translations/odyssey-react-mui_zh_TW.properties +4 -0
  272. package/src/properties/ts/odyssey-react-mui_cs.ts +1 -1
  273. package/src/properties/ts/odyssey-react-mui_da.ts +1 -1
  274. package/src/properties/ts/odyssey-react-mui_de.ts +1 -1
  275. package/src/properties/ts/odyssey-react-mui_el.ts +1 -1
  276. package/src/properties/ts/odyssey-react-mui_es.ts +1 -1
  277. package/src/properties/ts/odyssey-react-mui_fi.ts +1 -1
  278. package/src/properties/ts/odyssey-react-mui_fr.ts +1 -1
  279. package/src/properties/ts/odyssey-react-mui_hu.ts +1 -1
  280. package/src/properties/ts/odyssey-react-mui_id.ts +1 -1
  281. package/src/properties/ts/odyssey-react-mui_it.ts +1 -1
  282. package/src/properties/ts/odyssey-react-mui_ja.ts +1 -1
  283. package/src/properties/ts/odyssey-react-mui_ko.ts +1 -1
  284. package/src/properties/ts/odyssey-react-mui_ms.ts +1 -1
  285. package/src/properties/ts/odyssey-react-mui_nb.ts +1 -1
  286. package/src/properties/ts/odyssey-react-mui_nl_NL.ts +1 -1
  287. package/src/properties/ts/odyssey-react-mui_pl.ts +1 -1
  288. package/src/properties/ts/odyssey-react-mui_pt_BR.ts +1 -1
  289. package/src/properties/ts/odyssey-react-mui_ro.ts +1 -1
  290. package/src/properties/ts/odyssey-react-mui_ru.ts +1 -1
  291. package/src/properties/ts/odyssey-react-mui_sv.ts +1 -1
  292. package/src/properties/ts/odyssey-react-mui_th.ts +1 -1
  293. package/src/properties/ts/odyssey-react-mui_tr.ts +1 -1
  294. package/src/properties/ts/odyssey-react-mui_uk.ts +1 -1
  295. package/src/properties/ts/odyssey-react-mui_vi.ts +1 -1
  296. package/src/properties/ts/odyssey-react-mui_zh_CN.ts +1 -1
  297. package/src/properties/ts/odyssey-react-mui_zh_TW.ts +1 -1
  298. package/src/theme/components.tsx +153 -11
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordField.js","names":["forwardRef","memo","useCallback","useState","ShowIcon","HideIcon","Field","useTranslation","jsx","_jsx","PasswordField","_ref","ref","autoCompleteType","errorMessage","hasInitialFocus","hint","id","idOverride","isDisabled","isOptional","hasShowPassword","isReadOnly","label","name","nameOverride","onChange","onFocus","onBlur","placeholder","testId","value","t","inputType","setInputType","togglePasswordVisibility","renderFieldComponent","_ref2","ariaDescribedBy","_InputBase","autoComplete","autoFocus","endAdornment","_InputAdornment","position","children","_IconButton","onClick","inputProps","role","readOnly","required","type","fieldType","hasVisibleLabel","MemoizedPasswordField","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 useState,\n} from \"react\";\n\nimport { ShowIcon, HideIcon } from \"./icons.generated\";\nimport { Field } from \"./Field\";\nimport type { SeleniumProps } from \"./SeleniumProps\";\nimport { useTranslation } from \"react-i18next\";\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 * If `error` is not undefined, the `input` will indicate an error.\n */\n errorMessage?: 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 helper text content.\n */\n hint?: string;\n /**\n * The id of the `input` element.\n */\n id?: string;\n /**\n * If `true`, the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * If `true`, the `input` element is not required.\n */\n isOptional?: boolean;\n /**\n * It prevents the user from changing the value of the field\n */\n isReadOnly?: boolean;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * The name of the `input` element. Defaults to the `id` if not set.\n */\n name?: 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, required for a controlled component.\n */\n value?: string;\n} & SeleniumProps;\n\nconst PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(\n (\n {\n autoCompleteType,\n errorMessage,\n hasInitialFocus,\n hint,\n id: idOverride,\n isDisabled = false,\n isOptional = false,\n hasShowPassword = true,\n isReadOnly,\n label,\n name: nameOverride,\n onChange,\n onFocus,\n onBlur,\n placeholder,\n testId,\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 renderFieldComponent = useCallback(\n ({ ariaDescribedBy, id }) => (\n <InputBase\n aria-describedby={ariaDescribedBy}\n autoComplete={autoCompleteType}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n data-se={testId}\n endAdornment={\n hasShowPassword && (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={\n inputType === \"password\"\n ? t(\"passwordfield.icon.label.show\")\n : t(\"passwordfield.icon.label.hide\")\n }\n onClick={togglePasswordVisibility}\n >\n {inputType === \"password\" ? <ShowIcon /> : <HideIcon />}\n </IconButton>\n </InputAdornment>\n )\n }\n id={id}\n inputProps={{ role: \"textbox\" }}\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 type={inputType}\n value={value}\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\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 value,\n ]\n );\n\n return (\n <Field\n errorMessage={errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\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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"}
1
+ {"version":3,"file":"PasswordField.js","names":["forwardRef","memo","useCallback","useState","ShowIcon","HideIcon","Field","useTranslation","jsx","_jsx","PasswordField","_ref","ref","autoCompleteType","errorMessage","hasInitialFocus","hint","id","idOverride","isDisabled","isOptional","hasShowPassword","isReadOnly","label","name","nameOverride","onChange","onFocus","onBlur","placeholder","testId","value","t","inputType","setInputType","togglePasswordVisibility","renderFieldComponent","_ref2","ariaDescribedBy","errorMessageElementId","labelElementId","_InputBase","autoComplete","autoFocus","endAdornment","_InputAdornment","position","children","_IconButton","onClick","inputProps","role","readOnly","required","type","fieldType","hasVisibleLabel","MemoizedPasswordField","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 useState,\n} from \"react\";\n\nimport { ShowIcon, HideIcon } from \"./icons.generated\";\nimport { Field } from \"./Field\";\nimport type { SeleniumProps } from \"./SeleniumProps\";\nimport { useTranslation } from \"react-i18next\";\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 * If `error` is not undefined, the `input` will indicate an error.\n */\n errorMessage?: 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 helper text content.\n */\n hint?: string;\n /**\n * The id of the `input` element.\n */\n id?: string;\n /**\n * If `true`, the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * If `true`, the `input` element is not required.\n */\n isOptional?: boolean;\n /**\n * It prevents the user from changing the value of the field\n */\n isReadOnly?: boolean;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * The name of the `input` element. Defaults to the `id` if not set.\n */\n name?: 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, required for a controlled component.\n */\n value?: string;\n} & SeleniumProps;\n\nconst PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(\n (\n {\n autoCompleteType,\n errorMessage,\n hasInitialFocus,\n hint,\n id: idOverride,\n isDisabled = false,\n isOptional = false,\n hasShowPassword = true,\n isReadOnly,\n label,\n name: nameOverride,\n onChange,\n onFocus,\n onBlur,\n placeholder,\n testId,\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 renderFieldComponent = useCallback(\n ({ ariaDescribedBy, errorMessageElementId, id, labelElementId }) => (\n <InputBase\n aria-describedby={ariaDescribedBy}\n autoComplete={inputType === \"password\" ? autoCompleteType : \"off\"}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n data-se={testId}\n endAdornment={\n hasShowPassword && (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={\n inputType === \"password\"\n ? t(\"passwordfield.icon.label.show\")\n : t(\"passwordfield.icon.label.hide\")\n }\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 // role: \"textbox\" Added because password inputs don't have an implicit role assigned. This causes problems with element selection.\n role: \"textbox\",\n }}\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 type={inputType}\n value={value}\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\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 value,\n ]\n );\n\n return (\n <Field\n errorMessage={errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\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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"}
@@ -30,10 +30,14 @@ const RadioGroup = _ref => {
30
30
  const renderFieldComponent = useCallback(_ref2 => {
31
31
  let {
32
32
  ariaDescribedBy,
33
- id
33
+ errorMessageElementId,
34
+ id,
35
+ labelElementId
34
36
  } = _ref2;
35
37
  return _jsx(_RadioGroup, {
36
38
  "aria-describedby": ariaDescribedBy,
39
+ "aria-errormessage": errorMessageElementId,
40
+ "aria-labelledby": labelElementId,
37
41
  "data-se": testId,
38
42
  defaultValue: defaultValue,
39
43
  id: id,
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroup.js","names":["memo","useCallback","Field","jsx","_jsx","RadioGroup","_ref","children","defaultValue","errorMessage","hint","id","idOverride","isDisabled","label","name","nameOverride","onChange","testId","value","renderFieldComponent","_ref2","ariaDescribedBy","_RadioGroup","fieldType","hasVisibleLabel","MemoizedRadioGroup","displayName"],"sources":["../src/RadioGroup.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 { RadioGroup as MuiRadioGroup } from \"@mui/material\";\nimport { ChangeEventHandler, memo, ReactElement, useCallback } from \"react\";\n\nimport { Radio, RadioProps } from \"./Radio\";\nimport { Field } from \"./Field\";\nimport type { SeleniumProps } from \"./SeleniumProps\";\n\nexport type RadioGroupProps = {\n /**\n * The Radio components within the group. Must include two or more.\n */\n children: Array<ReactElement<typeof Radio>>;\n /**\n * The text value of the Radio that should be selected by default\n */\n defaultValue?: string;\n /**\n * The error text for an invalid RadioGroup\n */\n errorMessage?: string;\n /**\n * Optional hint text\n */\n hint?: string;\n /**\n * The id of the `input` element.\n */\n id?: string;\n /**\n * Disables the whole RadioGroup\n */\n isDisabled?: boolean;\n /**\n * The text label for the RadioGroup\n */\n label: string;\n /**\n * The name of the `input` element. Defaults to the `id` if not set.\n */\n name?: string;\n /**\n * Listen for changes in the browser that change `value`\n */\n onChange?: ChangeEventHandler<EventTarget>;\n /**\n * The `value` on the selected Radio\n */\n value?: RadioProps[\"value\"];\n} & SeleniumProps;\n\nconst RadioGroup = ({\n children,\n defaultValue,\n errorMessage,\n hint,\n id: idOverride,\n isDisabled,\n label,\n name: nameOverride,\n onChange,\n testId,\n value,\n}: RadioGroupProps) => {\n const renderFieldComponent = useCallback(\n ({ ariaDescribedBy, id }) => (\n <MuiRadioGroup\n aria-describedby={ariaDescribedBy}\n data-se={testId}\n defaultValue={defaultValue}\n id={id}\n name={nameOverride ?? id}\n onChange={onChange}\n value={value}\n >\n {children}\n </MuiRadioGroup>\n ),\n [children, defaultValue, nameOverride, onChange, testId, value]\n );\n\n return (\n <Field\n errorMessage={errorMessage}\n fieldType=\"group\"\n hasVisibleLabel={false}\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedRadioGroup = memo(RadioGroup);\nMemoizedRadioGroup.displayName = \"RadioGroup\";\n\nexport { MemoizedRadioGroup as RadioGroup };\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,SAA6BA,IAAI,EAAgBC,WAAW,QAAQ,OAAO;AAAC,SAGnEC,KAAK;AAAA,SAAAC,GAAA,IAAAC,IAAA;AA8Cd,MAAMC,UAAU,GAAGC,IAAA,IAYI;EAAA,IAZH;IAClBC,QAAQ;IACRC,YAAY;IACZC,YAAY;IACZC,IAAI;IACJC,EAAE,EAAEC,UAAU;IACdC,UAAU;IACVC,KAAK;IACLC,IAAI,EAAEC,YAAY;IAClBC,QAAQ;IACRC,MAAM;IACNC;EACe,CAAC,GAAAb,IAAA;EAChB,MAAMc,oBAAoB,GAAGnB,WAAW,CACtCoB,KAAA;IAAA,IAAC;MAAEC,eAAe;MAAEX;IAAG,CAAC,GAAAU,KAAA;IAAA,OACtBjB,IAAA,CAAAmB,WAAA;MACE,oBAAkBD,eAAgB;MAClC,WAASJ,MAAO;MAChBV,YAAY,EAAEA,YAAa;MAC3BG,EAAE,EAAEA,EAAG;MACPI,IAAI,EAAEC,YAAY,IAAIL,EAAG;MACzBM,QAAQ,EAAEA,QAAS;MACnBE,KAAK,EAAEA,KAAM;MAAAZ,QAAA,EAEZA;IAAQ,CACI,CAAC;EAAA,CACjB,EACD,CAACA,QAAQ,EAAEC,YAAY,EAAEQ,YAAY,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,KAAK,CAChE,CAAC;EAED,OACEf,IAAA,CAACF,KAAK;IACJO,YAAY,EAAEA,YAAa;IAC3Be,SAAS,EAAC,OAAO;IACjBC,eAAe,EAAE,KAAM;IACvBf,IAAI,EAAEA,IAAK;IACXC,EAAE,EAAEC,UAAW;IACfC,UAAU,EAAEA,UAAW;IACvBC,KAAK,EAAEA,KAAM;IACbM,oBAAoB,EAAEA;EAAqB,CAC5C,CAAC;AAEN,CAAC;AAED,MAAMM,kBAAkB,GAAG1B,IAAI,CAACK,UAAU,CAAC;AAC3CqB,kBAAkB,CAACC,WAAW,GAAG,YAAY;AAE7C,SAASD,kBAAkB,IAAIrB,UAAU"}
1
+ {"version":3,"file":"RadioGroup.js","names":["memo","useCallback","Field","jsx","_jsx","RadioGroup","_ref","children","defaultValue","errorMessage","hint","id","idOverride","isDisabled","label","name","nameOverride","onChange","testId","value","renderFieldComponent","_ref2","ariaDescribedBy","errorMessageElementId","labelElementId","_RadioGroup","fieldType","hasVisibleLabel","MemoizedRadioGroup","displayName"],"sources":["../src/RadioGroup.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 RadioGroup as MuiRadioGroup,\n type RadioGroupProps as MuiRadioGroupProps,\n} from \"@mui/material\";\nimport { memo, ReactElement, useCallback } from \"react\";\n\nimport { Radio, RadioProps } from \"./Radio\";\nimport { Field } from \"./Field\";\nimport type { SeleniumProps } from \"./SeleniumProps\";\n\nexport type RadioGroupProps = {\n /**\n * The Radio components within the group. Must include two or more.\n */\n children: Array<ReactElement<typeof Radio>>;\n /**\n * The text value of the Radio that should be selected by default\n */\n defaultValue?: string;\n /**\n * The error text for an invalid RadioGroup\n */\n errorMessage?: string;\n /**\n * Optional hint text\n */\n hint?: string;\n /**\n * The id of the `input` element.\n */\n id?: string;\n /**\n * Disables the whole RadioGroup\n */\n isDisabled?: boolean;\n /**\n * The text label for the RadioGroup\n */\n label: string;\n /**\n * The name of the `input` element. Defaults to the `id` if not set.\n */\n name?: string;\n /**\n * Listen for changes in the browser that change `value`\n */\n onChange?: MuiRadioGroupProps[\"onChange\"];\n /**\n * The `value` on the selected Radio\n */\n value?: RadioProps[\"value\"];\n} & SeleniumProps;\n\nconst RadioGroup = ({\n children,\n defaultValue,\n errorMessage,\n hint,\n id: idOverride,\n isDisabled,\n label,\n name: nameOverride,\n onChange,\n testId,\n value,\n}: RadioGroupProps) => {\n const renderFieldComponent = useCallback(\n ({ ariaDescribedBy, errorMessageElementId, id, labelElementId }) => (\n <MuiRadioGroup\n aria-describedby={ariaDescribedBy}\n aria-errormessage={errorMessageElementId}\n aria-labelledby={labelElementId}\n data-se={testId}\n defaultValue={defaultValue}\n id={id}\n name={nameOverride ?? id}\n onChange={onChange}\n value={value}\n >\n {children}\n </MuiRadioGroup>\n ),\n [children, defaultValue, nameOverride, onChange, testId, value]\n );\n\n return (\n <Field\n errorMessage={errorMessage}\n fieldType=\"group\"\n hasVisibleLabel={false}\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedRadioGroup = memo(RadioGroup);\nMemoizedRadioGroup.displayName = \"RadioGroup\";\n\nexport { MemoizedRadioGroup as RadioGroup };\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAMA,SAASA,IAAI,EAAgBC,WAAW,QAAQ,OAAO;AAAC,SAG/CC,KAAK;AAAA,SAAAC,GAAA,IAAAC,IAAA;AA8Cd,MAAMC,UAAU,GAAGC,IAAA,IAYI;EAAA,IAZH;IAClBC,QAAQ;IACRC,YAAY;IACZC,YAAY;IACZC,IAAI;IACJC,EAAE,EAAEC,UAAU;IACdC,UAAU;IACVC,KAAK;IACLC,IAAI,EAAEC,YAAY;IAClBC,QAAQ;IACRC,MAAM;IACNC;EACe,CAAC,GAAAb,IAAA;EAChB,MAAMc,oBAAoB,GAAGnB,WAAW,CACtCoB,KAAA;IAAA,IAAC;MAAEC,eAAe;MAAEC,qBAAqB;MAAEZ,EAAE;MAAEa;IAAe,CAAC,GAAAH,KAAA;IAAA,OAC7DjB,IAAA,CAAAqB,WAAA;MACE,oBAAkBH,eAAgB;MAClC,qBAAmBC,qBAAsB;MACzC,mBAAiBC,cAAe;MAChC,WAASN,MAAO;MAChBV,YAAY,EAAEA,YAAa;MAC3BG,EAAE,EAAEA,EAAG;MACPI,IAAI,EAAEC,YAAY,IAAIL,EAAG;MACzBM,QAAQ,EAAEA,QAAS;MACnBE,KAAK,EAAEA,KAAM;MAAAZ,QAAA,EAEZA;IAAQ,CACI,CAAC;EAAA,CACjB,EACD,CAACA,QAAQ,EAAEC,YAAY,EAAEQ,YAAY,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,KAAK,CAChE,CAAC;EAED,OACEf,IAAA,CAACF,KAAK;IACJO,YAAY,EAAEA,YAAa;IAC3BiB,SAAS,EAAC,OAAO;IACjBC,eAAe,EAAE,KAAM;IACvBjB,IAAI,EAAEA,IAAK;IACXC,EAAE,EAAEC,UAAW;IACfC,UAAU,EAAEA,UAAW;IACvBC,KAAK,EAAEA,KAAM;IACbM,oBAAoB,EAAEA;EAAqB,CAC5C,CAAC;AAEN,CAAC;AAED,MAAMQ,kBAAkB,GAAG5B,IAAI,CAACK,UAAU,CAAC;AAC3CuB,kBAAkB,CAACC,WAAW,GAAG,YAAY;AAE7C,SAASD,kBAAkB,IAAIvB,UAAU"}
package/dist/Select.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import _Select from "@mui/material/Select";
2
2
  import _MenuItem from "@mui/material/MenuItem";
3
+ import _ListItemSecondaryAction from "@mui/material/ListItemSecondaryAction";
3
4
  import _Checkbox from "@mui/material/Checkbox";
4
5
  import _ListSubheader from "@mui/material/ListSubheader";
5
6
  import _Box from "@mui/material/Box";
@@ -18,44 +19,43 @@ import _Chip from "@mui/material/Chip";
18
19
 
19
20
  import { memo, useCallback, useMemo, useState } from "react";
20
21
  import { Field } from "./Field.js";
22
+ import { CheckIcon } from "./icons.generated/index.js";
21
23
  import { jsx as _jsx } from "react/jsx-runtime";
22
24
  import { jsxs as _jsxs } from "react/jsx-runtime";
23
25
  const Select = _ref => {
24
26
  let {
25
27
  errorMessage,
28
+ hasMultipleChoices: hasMultipleChoicesProp,
26
29
  hint,
27
30
  id: idOverride,
28
31
  isDisabled = false,
29
- isMultiSelect = false,
32
+ isMultiSelect,
30
33
  isOptional = false,
31
34
  label,
32
35
  name: nameOverride,
33
36
  onBlur,
34
37
  onChange: onChangeProp,
35
38
  onFocus,
36
- value,
39
+ options,
37
40
  testId,
38
- options
41
+ value
39
42
  } = _ref;
40
- if (typeof value === "undefined") {
41
- value = isMultiSelect ? [] : "";
42
- }
43
- const [selectedValue, setSelectedValue] = useState(value);
43
+ const hasMultipleChoices = useMemo(() => hasMultipleChoicesProp === undefined ? isMultiSelect : hasMultipleChoicesProp, [hasMultipleChoicesProp, isMultiSelect]);
44
+ const formattedValueForMultiSelect = isMultiSelect ? [] : "";
45
+ const [selectedValue, setSelectedValue] = useState(value === undefined ? formattedValueForMultiSelect : value);
44
46
  const onChange = useCallback((event, child) => {
45
- const {
46
- target: {
47
- value
47
+ const valueFromEvent = event.target.value;
48
+ if (typeof valueFromEvent === "string") {
49
+ if (hasMultipleChoices) {
50
+ setSelectedValue(valueFromEvent.split(","));
51
+ } else {
52
+ setSelectedValue(valueFromEvent);
48
53
  }
49
- } = event;
50
- if (isMultiSelect) {
51
- setSelectedValue(typeof value === "string" ? value.split(",") : value);
52
54
  } else {
53
- setSelectedValue(value);
55
+ setSelectedValue(valueFromEvent);
54
56
  }
55
- if (onChangeProp) {
56
- onChangeProp(event, child);
57
- }
58
- }, [isMultiSelect, onChangeProp, setSelectedValue]);
57
+ onChangeProp?.(event, child);
58
+ }, [hasMultipleChoices, onChangeProp, setSelectedValue]);
59
59
  const normalizedOptions = useMemo(() => options.map(option => typeof option === "object" ? {
60
60
  text: option.text,
61
61
  value: option.value || option.text,
@@ -93,31 +93,36 @@ const Select = _ref => {
93
93
  }
94
94
  return _jsxs(_MenuItem, {
95
95
  value: option.value,
96
- children: [isMultiSelect && _jsx(_Checkbox, {
96
+ children: [hasMultipleChoices && _jsx(_Checkbox, {
97
97
  checked: selectedValue.includes(option.value)
98
- }), option.text]
98
+ }), option.text, selectedValue == option.value && _jsx(_ListItemSecondaryAction, {
99
+ children: _jsx(CheckIcon, {})
100
+ })]
99
101
  }, option.value);
100
- }), [isMultiSelect, normalizedOptions, selectedValue]);
102
+ }), [hasMultipleChoices, normalizedOptions, selectedValue]);
101
103
  const renderFieldComponent = useCallback(_ref2 => {
102
104
  let {
103
105
  ariaDescribedBy,
104
- id
106
+ errorMessageElementId,
107
+ id,
108
+ labelElementId
105
109
  } = _ref2;
106
110
  return _jsx(_Select, {
107
111
  "aria-describedby": ariaDescribedBy,
112
+ "aria-errormessage": errorMessageElementId,
108
113
  children: children,
109
114
  "data-se": testId,
110
115
  id: id,
111
- labelId: label,
112
- multiple: isMultiSelect,
116
+ labelId: labelElementId,
117
+ multiple: hasMultipleChoices,
113
118
  name: nameOverride ?? id,
114
119
  onBlur: onBlur,
115
120
  onChange: onChange,
116
121
  onFocus: onFocus,
117
- renderValue: isMultiSelect ? renderValue : undefined,
122
+ renderValue: hasMultipleChoices ? renderValue : undefined,
118
123
  value: selectedValue
119
124
  });
120
- }, [children, isMultiSelect, label, nameOverride, onBlur, onChange, onFocus, renderValue, selectedValue, testId]);
125
+ }, [children, hasMultipleChoices, nameOverride, onBlur, onChange, onFocus, renderValue, selectedValue, testId]);
121
126
  return _jsx(Field, {
122
127
  errorMessage: errorMessage,
123
128
  fieldType: "single",
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["memo","useCallback","useMemo","useState","Field","jsx","_jsx","jsxs","_jsxs","Select","_ref","errorMessage","hint","id","idOverride","isDisabled","isMultiSelect","isOptional","label","name","nameOverride","onBlur","onChange","onChangeProp","onFocus","value","testId","options","selectedValue","setSelectedValue","event","child","target","split","normalizedOptions","map","option","text","type","renderValue","selected","undefined","renderedChips","item","selectedOption","find","_Chip","filter","Boolean","length","_Box","children","_ListSubheader","_MenuItem","_Checkbox","checked","includes","renderFieldComponent","_ref2","ariaDescribedBy","_Select","labelId","multiple","fieldType","hasVisibleLabel","MemoizedSelect","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 { ReactNode, memo, useCallback, useMemo, useState } from \"react\";\nimport {\n Box,\n Chip,\n Checkbox as MuiCheckbox,\n ListSubheader,\n MenuItem,\n Select as MuiSelect,\n SelectChangeEvent,\n} from \"@mui/material\";\nimport { SelectProps as MuiSelectProps } from \"@mui/material\";\nimport { Field } from \"./Field\";\nimport type { SeleniumProps } from \"./SeleniumProps\";\n\nexport type SelectOption = {\n text: string;\n type?: \"heading\" | \"option\";\n value?: string;\n};\n\nexport type SelectProps = {\n /**\n * The error message for the Select\n */\n errorMessage?: string;\n /**\n * The hint text for the Select\n */\n hint?: string;\n /**\n * The id attribute of the Select\n */\n id?: string;\n /**\n * If `true`, the Select is disabled\n */\n isDisabled?: boolean;\n /**\n * If `true`, the Select allows multiple selections\n */\n isMultiSelect?: boolean;\n /**\n * If `true`, the Select is optional\n */\n isOptional?: boolean;\n /**\n * The label text for the Select\n */\n label: string;\n /**\n * The name of the `input` element. Defaults to the `id` if not set.\n */\n name?: string;\n /**\n * Callback fired when the Select loses focus\n */\n onBlur?: MuiSelectProps[\"onBlur\"];\n /**\n * Callback fired when the value of the Select changes\n */\n onChange?: MuiSelectProps[\"onChange\"];\n /**\n * Callback fired when the Select gains focus\n */\n onFocus?: MuiSelectProps[\"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?: string | string[];\n} & SeleniumProps;\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 Select = ({\n errorMessage,\n hint,\n id: idOverride,\n isDisabled = false,\n isMultiSelect = false,\n isOptional = false,\n label,\n name: nameOverride,\n onBlur,\n onChange: onChangeProp,\n onFocus,\n value,\n testId,\n options,\n}: SelectProps) => {\n // If there's no value set, we set it to a blank string (if it's a single-select)\n // or an empty array (if it's a multi-select)\n if (typeof value === \"undefined\") {\n value = isMultiSelect ? [] : \"\";\n }\n\n const [selectedValue, setSelectedValue] = useState<string | string[]>(value);\n\n const onChange = useCallback(\n (event: SelectChangeEvent<string | string[]>, child: ReactNode) => {\n const {\n target: { value },\n } = event;\n\n // Set the field value, with some additional logic to handle array values\n // for multi-selects\n if (isMultiSelect) {\n setSelectedValue(typeof value === \"string\" ? value.split(\",\") : value);\n } else {\n setSelectedValue(value);\n }\n\n // Trigger the onChange event, if one has been passed\n if (onChangeProp) {\n onChangeProp(event, child);\n }\n },\n [isMultiSelect, onChangeProp, setSelectedValue]\n );\n\n // Normalize the options array to accommodate the various\n // data types that might be passed\n const normalizedOptions = useMemo(\n () =>\n options.map((option) =>\n typeof option === \"object\"\n ? {\n text: option.text,\n value: option.value || option.text,\n type: option.type === \"heading\" ? \"heading\" : \"option\",\n }\n : { text: option, value: option, type: \"option\" }\n ),\n [options]\n );\n\n const renderValue = useCallback(\n (selected: string | string[]) => {\n // If the selected value isn't an array, then we don't need to display\n // chips and should fall back to the default render behavior\n if (typeof selected === \"string\") {\n return undefined;\n }\n\n // Convert the selected options array into <Chip>s\n const renderedChips = selected\n .map((item: string) => {\n const selectedOption = normalizedOptions.find(\n (option) => option.value === item\n );\n\n if (!selectedOption) {\n return null;\n }\n\n return <Chip key={item} label={selectedOption.text} />;\n })\n .filter(Boolean);\n\n if (renderedChips.length === 0) {\n return null;\n }\n\n // We need the <Box> to surround the <Chip>s for\n // proper styling\n return <Box>{renderedChips}</Box>;\n },\n [normalizedOptions]\n );\n\n // Convert the options into the ReactNode children\n // that will populate the <Select>\n const children = useMemo(\n () =>\n normalizedOptions.map((option) => {\n if (option.type === \"heading\") {\n return <ListSubheader key={option.text}>{option.text}</ListSubheader>;\n }\n\n return (\n <MenuItem key={option.value} value={option.value}>\n {isMultiSelect && (\n <MuiCheckbox checked={selectedValue.includes(option.value)} />\n )}\n {option.text}\n </MenuItem>\n );\n }),\n [isMultiSelect, normalizedOptions, selectedValue]\n );\n\n const renderFieldComponent = useCallback(\n ({ ariaDescribedBy, id }) => (\n <MuiSelect\n aria-describedby={ariaDescribedBy}\n children={children}\n data-se={testId}\n id={id}\n labelId={label}\n multiple={isMultiSelect}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n renderValue={isMultiSelect ? renderValue : undefined}\n value={selectedValue}\n />\n ),\n [\n children,\n isMultiSelect,\n label,\n nameOverride,\n onBlur,\n onChange,\n onFocus,\n renderValue,\n selectedValue,\n testId,\n ]\n );\n\n return (\n <Field\n errorMessage={errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\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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"}
1
+ {"version":3,"file":"Select.js","names":["memo","useCallback","useMemo","useState","Field","CheckIcon","jsx","_jsx","jsxs","_jsxs","Select","_ref","errorMessage","hasMultipleChoices","hasMultipleChoicesProp","hint","id","idOverride","isDisabled","isMultiSelect","isOptional","label","name","nameOverride","onBlur","onChange","onChangeProp","onFocus","options","testId","value","undefined","formattedValueForMultiSelect","selectedValue","setSelectedValue","event","child","valueFromEvent","target","split","normalizedOptions","map","option","text","type","renderValue","selected","renderedChips","item","selectedOption","find","_Chip","filter","Boolean","length","_Box","children","_ListSubheader","_MenuItem","_Checkbox","checked","includes","_ListItemSecondaryAction","renderFieldComponent","_ref2","ariaDescribedBy","errorMessageElementId","labelElementId","_Select","labelId","multiple","fieldType","hasVisibleLabel","MemoizedSelect","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 { memo, useCallback, useMemo, useState } from \"react\";\nimport {\n Box,\n Checkbox as MuiCheckbox,\n Chip,\n ListItemSecondaryAction,\n ListSubheader,\n MenuItem,\n Select as MuiSelect,\n} from \"@mui/material\";\nimport { SelectProps as MuiSelectProps } from \"@mui/material\";\nimport { Field } from \"./Field\";\nimport type { SeleniumProps } from \"./SeleniumProps\";\nimport { CheckIcon } from \"./icons.generated\";\n\nexport type SelectOption = {\n text: string;\n type?: \"heading\" | \"option\";\n value?: string;\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 error message for the Select\n */\n errorMessage?: string;\n /**\n * If `true`, the Select allows multiple selections\n */\n hasMultipleChoices?: HasMultipleChoices;\n /**\n * The hint text for the Select\n */\n hint?: string;\n /**\n * The id attribute of the Select\n */\n id?: string;\n /**\n * If `true`, the Select is disabled\n */\n isDisabled?: boolean;\n /**\n * @deprecated Use `hasMultipleChoices` instead.\n */\n /** **Deprecated:** use `hasMultipleChoices` */\n isMultiSelect?: HasMultipleChoices;\n /**\n * If `true`, the Select is optional\n */\n isOptional?: boolean;\n /**\n * The label text for the Select\n */\n label: string;\n /**\n * The name of the `input` element. Defaults to the `id` if not set.\n */\n name?: 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} & SeleniumProps;\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 Select = <\n Value extends SelectValueType<HasMultipleChoices>,\n HasMultipleChoices extends boolean\n>({\n errorMessage,\n hasMultipleChoices: hasMultipleChoicesProp,\n hint,\n id: idOverride,\n isDisabled = false,\n isMultiSelect,\n isOptional = false,\n label,\n name: nameOverride,\n onBlur,\n onChange: onChangeProp,\n onFocus,\n options,\n testId,\n value,\n}: SelectProps<Value, HasMultipleChoices>) => {\n const hasMultipleChoices = useMemo(\n () =>\n hasMultipleChoicesProp === undefined\n ? isMultiSelect\n : hasMultipleChoicesProp,\n [hasMultipleChoicesProp, isMultiSelect]\n );\n\n const formattedValueForMultiSelect = isMultiSelect\n ? ([] as string[] as Value)\n : (\"\" as string as Value);\n\n const [selectedValue, setSelectedValue] = useState(\n value === undefined ? formattedValueForMultiSelect : value\n );\n\n const onChange = useCallback<NonNullable<MuiSelectProps<Value>[\"onChange\"]>>(\n (event, child) => {\n const valueFromEvent = event.target.value;\n\n if (typeof valueFromEvent === \"string\") {\n if (hasMultipleChoices) {\n setSelectedValue(valueFromEvent.split(\",\") as Value);\n } else {\n setSelectedValue(valueFromEvent as Value);\n }\n } else {\n setSelectedValue(valueFromEvent);\n }\n\n onChangeProp?.(event, child);\n },\n [hasMultipleChoices, onChangeProp, setSelectedValue]\n );\n\n // Normalize the options array to accommodate the various\n // data types that might be passed\n const normalizedOptions = useMemo(\n () =>\n options.map((option) =>\n typeof option === \"object\"\n ? {\n text: option.text,\n value: option.value || option.text,\n type: option.type === \"heading\" ? \"heading\" : \"option\",\n }\n : { text: option, value: option, type: \"option\" }\n ),\n [options]\n );\n\n const renderValue = useCallback(\n (selected: Value) => {\n // If the selected value isn't an array, then we don't need to display\n // chips and should fall back to the default render behavior\n if (typeof selected === \"string\") {\n return undefined;\n }\n\n // Convert the selected options array into <Chip>s\n const renderedChips = selected\n .map((item: string) => {\n const selectedOption = normalizedOptions.find(\n (option) => option.value === item\n );\n\n if (!selectedOption) {\n return null;\n }\n\n return <Chip key={item} label={selectedOption.text} />;\n })\n .filter(Boolean);\n\n if (renderedChips.length === 0) {\n return null;\n }\n\n // We need the <Box> to surround the <Chip>s for\n // proper styling\n return <Box>{renderedChips}</Box>;\n },\n [normalizedOptions]\n );\n\n // Convert the options into the ReactNode children\n // that will populate the <Select>\n const children = useMemo(\n () =>\n normalizedOptions.map((option) => {\n if (option.type === \"heading\") {\n return <ListSubheader key={option.text}>{option.text}</ListSubheader>;\n }\n\n return (\n <MenuItem key={option.value} value={option.value}>\n {hasMultipleChoices && (\n <MuiCheckbox checked={selectedValue.includes(option.value)} />\n )}\n {option.text}\n {selectedValue == option.value && (\n <ListItemSecondaryAction>\n <CheckIcon />\n </ListItemSecondaryAction>\n )}\n </MenuItem>\n );\n }),\n [hasMultipleChoices, normalizedOptions, selectedValue]\n );\n\n const renderFieldComponent = useCallback(\n ({ ariaDescribedBy, errorMessageElementId, id, labelElementId }) => (\n <MuiSelect\n aria-describedby={ariaDescribedBy}\n aria-errormessage={errorMessageElementId}\n children={children}\n data-se={testId}\n id={id}\n labelId={labelElementId}\n multiple={hasMultipleChoices}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n renderValue={hasMultipleChoices ? renderValue : undefined}\n value={selectedValue}\n />\n ),\n [\n children,\n hasMultipleChoices,\n nameOverride,\n onBlur,\n onChange,\n onFocus,\n renderValue,\n selectedValue,\n testId,\n ]\n );\n\n return (\n <Field\n errorMessage={errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\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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"}
package/dist/TextField.js CHANGED
@@ -41,9 +41,15 @@ const TextField = forwardRef((_ref, ref) => {
41
41
  const renderFieldComponent = useCallback(_ref2 => {
42
42
  let {
43
43
  ariaDescribedBy,
44
- id
44
+ errorMessageElementId,
45
+ id,
46
+ labelElementId
45
47
  } = _ref2;
46
48
  return _jsx(_InputBase, {
49
+ inputProps: {
50
+ "aria-errormessage": errorMessageElementId,
51
+ "aria-labelledby": labelElementId
52
+ },
47
53
  "aria-describedby": ariaDescribedBy,
48
54
  autoComplete: autoCompleteType,
49
55
  autoFocus: hasInitialFocus,
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.js","names":["forwardRef","memo","useCallback","Field","jsx","_jsx","textFieldTypeValues","TextField","_ref","ref","autoCompleteType","hasInitialFocus","endAdornment","errorMessage","hint","id","idOverride","isDisabled","isMultiline","isOptional","isReadOnly","label","name","nameOverride","onBlur","onChange","onFocus","placeholder","startAdornment","testId","type","value","renderFieldComponent","_ref2","ariaDescribedBy","_InputBase","autoComplete","autoFocus","_InputAdornment","position","children","multiline","readOnly","required","fieldType","hasVisibleLabel","MemoizedTextField","displayName"],"sources":["../src/TextField.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 } from \"@mui/material\";\nimport {\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n InputHTMLAttributes,\n memo,\n ReactElement,\n useCallback,\n} from \"react\";\n\nimport { Field } from \"./Field\";\nimport { SeleniumProps } from \"./SeleniumProps\";\n\nexport const textFieldTypeValues = [\n \"email\",\n \"number\",\n \"tel\",\n \"text\",\n \"url\",\n] as const;\n\nexport type TextFieldProps = {\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?: InputHTMLAttributes<HTMLInputElement>[\"autoComplete\"];\n /**\n * End `InputAdornment` for this component.\n */\n endAdornment?: string | ReactElement;\n /**\n * If `error` is not undefined, the `input` will indicate an error.\n */\n errorMessage?: string;\n /**\n * If `true`, the component will receive focus automatically.\n */\n hasInitialFocus?: boolean;\n /**\n * The helper text content.\n */\n hint?: string;\n /**\n * The id of the `input` element.\n */\n id?: string;\n /**\n * If `true`, the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * If `true`, a [TextareaAutosize](/material-ui/react-textarea-autosize/) element is rendered.\n */\n isMultiline?: boolean;\n /**\n * If `true`, the `input` element is not required.\n */\n isOptional?: boolean;\n /**\n * It prevents the user from changing the value of the field\n */\n isReadOnly?: boolean;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * The name of the `input` element. Defaults to the `id` if not set.\n */\n name?: 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 * Start `InputAdornment` for this component.\n */\n startAdornment?: string | ReactElement;\n /**\n * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).\n */\n type?: (typeof textFieldTypeValues)[number];\n /**\n * The value of the `input` element, required for a controlled component.\n */\n value?: string;\n} & SeleniumProps;\n\nconst TextField = forwardRef<HTMLInputElement, TextFieldProps>(\n (\n {\n autoCompleteType,\n hasInitialFocus,\n endAdornment,\n errorMessage,\n hint,\n id: idOverride,\n isDisabled = false,\n isMultiline = false,\n isOptional = false,\n isReadOnly,\n label,\n name: nameOverride,\n onBlur,\n onChange,\n onFocus,\n placeholder,\n startAdornment,\n testId,\n type = \"text\",\n value,\n },\n ref\n ) => {\n const renderFieldComponent = useCallback(\n ({ ariaDescribedBy, id }) => (\n <InputBase\n aria-describedby={ariaDescribedBy}\n autoComplete={autoCompleteType}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n data-se={testId}\n endAdornment={\n endAdornment && (\n <InputAdornment position=\"end\">{endAdornment}</InputAdornment>\n )\n }\n id={id}\n multiline={isMultiline}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n placeholder={placeholder}\n readOnly={isReadOnly}\n ref={ref}\n required={!isOptional}\n startAdornment={\n startAdornment && (\n <InputAdornment position=\"start\">{startAdornment}</InputAdornment>\n )\n }\n type={type}\n value={value}\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\n endAdornment,\n isMultiline,\n nameOverride,\n onChange,\n onFocus,\n onBlur,\n placeholder,\n isOptional,\n isReadOnly,\n ref,\n startAdornment,\n testId,\n type,\n value,\n ]\n );\n\n return (\n <Field\n errorMessage={errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n }\n);\n\nconst MemoizedTextField = memo(TextField);\nMemoizedTextField.displayName = \"TextField\";\n\nexport { MemoizedTextField as TextField };\n"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,SAGEA,UAAU,EAEVC,IAAI,EAEJC,WAAW,QACN,OAAO;AAAC,SAENC,KAAK;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAGd,OAAO,MAAMC,mBAAmB,GAAG,CACjC,OAAO,EACP,QAAQ,EACR,KAAK,EACL,MAAM,EACN,KAAK,CACG;AAmFV,MAAMC,SAAS,GAAGP,UAAU,CAC1B,CAAAQ,IAAA,EAuBEC,GAAG,KACA;EAAA,IAvBH;IACEC,gBAAgB;IAChBC,eAAe;IACfC,YAAY;IACZC,YAAY;IACZC,IAAI;IACJC,EAAE,EAAEC,UAAU;IACdC,UAAU,GAAG,KAAK;IAClBC,WAAW,GAAG,KAAK;IACnBC,UAAU,GAAG,KAAK;IAClBC,UAAU;IACVC,KAAK;IACLC,IAAI,EAAEC,YAAY;IAClBC,MAAM;IACNC,QAAQ;IACRC,OAAO;IACPC,WAAW;IACXC,cAAc;IACdC,MAAM;IACNC,IAAI,GAAG,MAAM;IACbC;EACF,CAAC,GAAAvB,IAAA;EAGD,MAAMwB,oBAAoB,GAAG9B,WAAW,CACtC+B,KAAA;IAAA,IAAC;MAAEC,eAAe;MAAEnB;IAAG,CAAC,GAAAkB,KAAA;IAAA,OACtB5B,IAAA,CAAA8B,UAAA;MACE,oBAAkBD,eAAgB;MAClCE,YAAY,EAAE1B,gBAAiB;MAE/B2B,SAAS,EAAE1B,eAAgB;MAC3B,WAASkB,MAAO;MAChBjB,YAAY,EACVA,YAAY,IACVP,IAAA,CAAAiC,eAAA;QAAgBC,QAAQ,EAAC,KAAK;QAAAC,QAAA,EAAE5B;MAAY,CAAiB,CAEhE;MACDG,EAAE,EAAEA,EAAG;MACP0B,SAAS,EAAEvB,WAAY;MACvBI,IAAI,EAAEC,YAAY,IAAIR,EAAG;MACzBS,MAAM,EAAEA,MAAO;MACfC,QAAQ,EAAEA,QAAS;MACnBC,OAAO,EAAEA,OAAQ;MACjBC,WAAW,EAAEA,WAAY;MACzBe,QAAQ,EAAEtB,UAAW;MACrBX,GAAG,EAAEA,GAAI;MACTkC,QAAQ,EAAE,CAACxB,UAAW;MACtBS,cAAc,EACZA,cAAc,IACZvB,IAAA,CAAAiC,eAAA;QAAgBC,QAAQ,EAAC,OAAO;QAAAC,QAAA,EAAEZ;MAAc,CAAiB,CAEpE;MACDE,IAAI,EAAEA,IAAK;MACXC,KAAK,EAAEA;IAAM,CACd,CAAC;EAAA,CACH,EACD,CACErB,gBAAgB,EAChBC,eAAe,EACfC,YAAY,EACZM,WAAW,EACXK,YAAY,EACZE,QAAQ,EACRC,OAAO,EACPF,MAAM,EACNG,WAAW,EACXR,UAAU,EACVC,UAAU,EACVX,GAAG,EACHmB,cAAc,EACdC,MAAM,EACNC,IAAI,EACJC,KAAK,CAET,CAAC;EAED,OACE1B,IAAA,CAACF,KAAK;IACJU,YAAY,EAAEA,YAAa;IAC3B+B,SAAS,EAAC,QAAQ;IAClBC,eAAe;IACf/B,IAAI,EAAEA,IAAK;IACXC,EAAE,EAAEC,UAAW;IACfC,UAAU,EAAEA,UAAW;IACvBE,UAAU,EAAEA,UAAW;IACvBE,KAAK,EAAEA,KAAM;IACbW,oBAAoB,EAAEA;EAAqB,CAC5C,CAAC;AAEN,CACF,CAAC;AAED,MAAMc,iBAAiB,GAAG7C,IAAI,CAACM,SAAS,CAAC;AACzCuC,iBAAiB,CAACC,WAAW,GAAG,WAAW;AAE3C,SAASD,iBAAiB,IAAIvC,SAAS"}
1
+ {"version":3,"file":"TextField.js","names":["forwardRef","memo","useCallback","Field","jsx","_jsx","textFieldTypeValues","TextField","_ref","ref","autoCompleteType","hasInitialFocus","endAdornment","errorMessage","hint","id","idOverride","isDisabled","isMultiline","isOptional","isReadOnly","label","name","nameOverride","onBlur","onChange","onFocus","placeholder","startAdornment","testId","type","value","renderFieldComponent","_ref2","ariaDescribedBy","errorMessageElementId","labelElementId","_InputBase","inputProps","autoComplete","autoFocus","_InputAdornment","position","children","multiline","readOnly","required","fieldType","hasVisibleLabel","MemoizedTextField","displayName"],"sources":["../src/TextField.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 } from \"@mui/material\";\nimport {\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n InputHTMLAttributes,\n memo,\n ReactElement,\n useCallback,\n} from \"react\";\n\nimport { Field } from \"./Field\";\nimport { SeleniumProps } from \"./SeleniumProps\";\n\nexport const textFieldTypeValues = [\n \"email\",\n \"number\",\n \"tel\",\n \"text\",\n \"url\",\n] as const;\n\nexport type TextFieldProps = {\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?: InputHTMLAttributes<HTMLInputElement>[\"autoComplete\"];\n /**\n * End `InputAdornment` for this component.\n */\n endAdornment?: string | ReactElement;\n /**\n * If `error` is not undefined, the `input` will indicate an error.\n */\n errorMessage?: string;\n /**\n * If `true`, the component will receive focus automatically.\n */\n hasInitialFocus?: boolean;\n /**\n * The helper text content.\n */\n hint?: string;\n /**\n * The id of the `input` element.\n */\n id?: string;\n /**\n * If `true`, the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * If `true`, a [TextareaAutosize](/material-ui/react-textarea-autosize/) element is rendered.\n */\n isMultiline?: boolean;\n /**\n * If `true`, the `input` element is not required.\n */\n isOptional?: boolean;\n /**\n * It prevents the user from changing the value of the field\n */\n isReadOnly?: boolean;\n /**\n * The label for the `input` element.\n */\n label: string;\n /**\n * The name of the `input` element. Defaults to the `id` if not set.\n */\n name?: 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 * Start `InputAdornment` for this component.\n */\n startAdornment?: string | ReactElement;\n /**\n * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).\n */\n type?: (typeof textFieldTypeValues)[number];\n /**\n * The value of the `input` element, required for a controlled component.\n */\n value?: string;\n} & SeleniumProps;\n\nconst TextField = forwardRef<HTMLInputElement, TextFieldProps>(\n (\n {\n autoCompleteType,\n hasInitialFocus,\n endAdornment,\n errorMessage,\n hint,\n id: idOverride,\n isDisabled = false,\n isMultiline = false,\n isOptional = false,\n isReadOnly,\n label,\n name: nameOverride,\n onBlur,\n onChange,\n onFocus,\n placeholder,\n startAdornment,\n testId,\n type = \"text\",\n value,\n },\n ref\n ) => {\n const renderFieldComponent = useCallback(\n ({ ariaDescribedBy, errorMessageElementId, id, labelElementId }) => (\n <InputBase\n inputProps={{\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n }}\n aria-describedby={ariaDescribedBy}\n autoComplete={autoCompleteType}\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n data-se={testId}\n endAdornment={\n endAdornment && (\n <InputAdornment position=\"end\">{endAdornment}</InputAdornment>\n )\n }\n id={id}\n multiline={isMultiline}\n name={nameOverride ?? id}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n placeholder={placeholder}\n readOnly={isReadOnly}\n ref={ref}\n required={!isOptional}\n startAdornment={\n startAdornment && (\n <InputAdornment position=\"start\">{startAdornment}</InputAdornment>\n )\n }\n type={type}\n value={value}\n />\n ),\n [\n autoCompleteType,\n hasInitialFocus,\n endAdornment,\n isMultiline,\n nameOverride,\n onChange,\n onFocus,\n onBlur,\n placeholder,\n isOptional,\n isReadOnly,\n ref,\n startAdornment,\n testId,\n type,\n value,\n ]\n );\n\n return (\n <Field\n errorMessage={errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n id={idOverride}\n isDisabled={isDisabled}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n }\n);\n\nconst MemoizedTextField = memo(TextField);\nMemoizedTextField.displayName = \"TextField\";\n\nexport { MemoizedTextField as TextField };\n"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,SAGEA,UAAU,EAEVC,IAAI,EAEJC,WAAW,QACN,OAAO;AAAC,SAENC,KAAK;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAGd,OAAO,MAAMC,mBAAmB,GAAG,CACjC,OAAO,EACP,QAAQ,EACR,KAAK,EACL,MAAM,EACN,KAAK,CACG;AAmFV,MAAMC,SAAS,GAAGP,UAAU,CAC1B,CAAAQ,IAAA,EAuBEC,GAAG,KACA;EAAA,IAvBH;IACEC,gBAAgB;IAChBC,eAAe;IACfC,YAAY;IACZC,YAAY;IACZC,IAAI;IACJC,EAAE,EAAEC,UAAU;IACdC,UAAU,GAAG,KAAK;IAClBC,WAAW,GAAG,KAAK;IACnBC,UAAU,GAAG,KAAK;IAClBC,UAAU;IACVC,KAAK;IACLC,IAAI,EAAEC,YAAY;IAClBC,MAAM;IACNC,QAAQ;IACRC,OAAO;IACPC,WAAW;IACXC,cAAc;IACdC,MAAM;IACNC,IAAI,GAAG,MAAM;IACbC;EACF,CAAC,GAAAvB,IAAA;EAGD,MAAMwB,oBAAoB,GAAG9B,WAAW,CACtC+B,KAAA;IAAA,IAAC;MAAEC,eAAe;MAAEC,qBAAqB;MAAEpB,EAAE;MAAEqB;IAAe,CAAC,GAAAH,KAAA;IAAA,OAC7D5B,IAAA,CAAAgC,UAAA;MACEC,UAAU,EAAE;QACV,mBAAmB,EAAEH,qBAAqB;QAC1C,iBAAiB,EAAEC;MACrB,CAAE;MACF,oBAAkBF,eAAgB;MAClCK,YAAY,EAAE7B,gBAAiB;MAE/B8B,SAAS,EAAE7B,eAAgB;MAC3B,WAASkB,MAAO;MAChBjB,YAAY,EACVA,YAAY,IACVP,IAAA,CAAAoC,eAAA;QAAgBC,QAAQ,EAAC,KAAK;QAAAC,QAAA,EAAE/B;MAAY,CAAiB,CAEhE;MACDG,EAAE,EAAEA,EAAG;MACP6B,SAAS,EAAE1B,WAAY;MACvBI,IAAI,EAAEC,YAAY,IAAIR,EAAG;MACzBS,MAAM,EAAEA,MAAO;MACfC,QAAQ,EAAEA,QAAS;MACnBC,OAAO,EAAEA,OAAQ;MACjBC,WAAW,EAAEA,WAAY;MACzBkB,QAAQ,EAAEzB,UAAW;MACrBX,GAAG,EAAEA,GAAI;MACTqC,QAAQ,EAAE,CAAC3B,UAAW;MACtBS,cAAc,EACZA,cAAc,IACZvB,IAAA,CAAAoC,eAAA;QAAgBC,QAAQ,EAAC,OAAO;QAAAC,QAAA,EAAEf;MAAc,CAAiB,CAEpE;MACDE,IAAI,EAAEA,IAAK;MACXC,KAAK,EAAEA;IAAM,CACd,CAAC;EAAA,CACH,EACD,CACErB,gBAAgB,EAChBC,eAAe,EACfC,YAAY,EACZM,WAAW,EACXK,YAAY,EACZE,QAAQ,EACRC,OAAO,EACPF,MAAM,EACNG,WAAW,EACXR,UAAU,EACVC,UAAU,EACVX,GAAG,EACHmB,cAAc,EACdC,MAAM,EACNC,IAAI,EACJC,KAAK,CAET,CAAC;EAED,OACE1B,IAAA,CAACF,KAAK;IACJU,YAAY,EAAEA,YAAa;IAC3BkC,SAAS,EAAC,QAAQ;IAClBC,eAAe;IACflC,IAAI,EAAEA,IAAK;IACXC,EAAE,EAAEC,UAAW;IACfC,UAAU,EAAEA,UAAW;IACvBE,UAAU,EAAEA,UAAW;IACvBE,KAAK,EAAEA,KAAM;IACbW,oBAAoB,EAAEA;EAAqB,CAC5C,CAAC;AAEN,CACF,CAAC;AAED,MAAMiB,iBAAiB,GAAGhD,IAAI,CAACM,SAAS,CAAC;AACzC0C,iBAAiB,CAACC,WAAW,GAAG,WAAW;AAE3C,SAASD,iBAAiB,IAAI1C,SAAS"}
package/dist/index.js CHANGED
@@ -13,6 +13,7 @@
13
13
  export { deepmerge, visuallyHidden } from "@mui/utils";
14
14
  export { createTheme, CssBaseline, DialogContentText, Divider, InputAdornment, InputBase, ListItemIcon, ListItemText, ListSubheader, MenuList, Paper, ScopedCssBaseline, ThemeProvider } from "@mui/material";
15
15
  export { useOdysseyDesignTokens } from "./OdysseyDesignTokensContext.js";
16
+ export * from "./Accordion.js";
16
17
  export * from "./Autocomplete.js";
17
18
  export * from "./Banner.js";
18
19
  export * from "./Box.js";
@@ -22,6 +23,7 @@ export * from "./Callout.js";
22
23
  export * from "./Checkbox.js";
23
24
  export * from "./CheckboxGroup.js";
24
25
  export * from "./CircularProgress.js";
26
+ export * from "./createShadowDom.js";
25
27
  export * from "./createUniqueId.js";
26
28
  export * from "./Dialog.js";
27
29
  export * from "./Fieldset.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["deepmerge","visuallyHidden","createTheme","CssBaseline","DialogContentText","Divider","InputAdornment","InputBase","ListItemIcon","ListItemText","ListSubheader","MenuList","Paper","ScopedCssBaseline","ThemeProvider","useOdysseyDesignTokens","odysseyTranslate"],"sources":["../src/index.ts"],"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\nexport { deepmerge, visuallyHidden } from \"@mui/utils\";\n\nexport {\n createTheme,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n CssBaseline,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n DialogContentText,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n Divider,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n InputAdornment,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n InputBase,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n ListItemIcon,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n ListItemText,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n ListSubheader,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n MenuList,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n Paper,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n ScopedCssBaseline,\n ThemeProvider,\n} from \"@mui/material\";\n\nexport type {\n CssBaselineProps,\n DialogContentTextProps,\n DividerProps,\n InputAdornmentProps,\n InputBaseProps,\n ListItemIconProps,\n ListItemTextProps,\n ListSubheaderProps,\n MenuListProps,\n PaperProps,\n ScopedCssBaselineProps,\n ThemeOptions,\n} from \"@mui/material\";\n\nexport { useOdysseyDesignTokens } from \"./OdysseyDesignTokensContext\";\n\nexport * from \"./Autocomplete\";\nexport * from \"./Banner\";\nexport * from \"./Box\";\nexport * from \"./Breadcrumbs\";\nexport * from \"./Button\";\nexport * from \"./Callout\";\nexport * from \"./Checkbox\";\nexport * from \"./CheckboxGroup\";\nexport * from \"./CircularProgress\";\nexport * from \"./createUniqueId\";\nexport * from \"./Dialog\";\nexport * from \"./Fieldset\";\nexport * from \"./Form\";\nexport * from \"./Link\";\nexport * from \"./MenuButton\";\nexport * from \"./MenuItem\";\nexport * from \"./NativeSelect\";\nexport * from \"./NullElement\";\nexport * from \"./OdysseyCacheProvider\";\nexport { odysseyTranslate } from \"./i18n\";\nexport * from \"./OdysseyProvider\";\nexport * from \"./OdysseyThemeProvider\";\nexport * from \"./OdysseyTranslationProvider\";\nexport * from \"./PasswordField\";\nexport * from \"./Radio\";\nexport * from \"./RadioGroup\";\nexport * from \"./ScreenReaderText\";\nexport * from \"./SearchField\";\nexport * from \"./Select\";\nexport * from \"./Status\";\nexport * from \"./Tabs\";\nexport * from \"./Tag\";\nexport * from \"./TagList\";\nexport * from \"./TextField\";\nexport * from \"./theme\";\nexport * from \"./Toast\";\nexport * from \"./ToastStack\";\nexport * from \"./Tooltip\";\nexport * from \"./Typography\";\nexport * from \"./useUniqueId\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,SAAS,EAAEC,cAAc,QAAQ,YAAY;AAEtD,SACEC,WAAW,EAEXC,WAAW,EAEXC,iBAAiB,EAEjBC,OAAO,EAEPC,cAAc,EAEdC,SAAS,EAETC,YAAY,EAEZC,YAAY,EAEZC,aAAa,EAEbC,QAAQ,EAERC,KAAK,EAELC,iBAAiB,EACjBC,aAAa,QACR,eAAe;AAAC,SAiBdC,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAqBtBC,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":["deepmerge","visuallyHidden","createTheme","CssBaseline","DialogContentText","Divider","InputAdornment","InputBase","ListItemIcon","ListItemText","ListSubheader","MenuList","Paper","ScopedCssBaseline","ThemeProvider","useOdysseyDesignTokens","odysseyTranslate"],"sources":["../src/index.ts"],"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\nexport { deepmerge, visuallyHidden } from \"@mui/utils\";\n\nexport {\n createTheme,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n CssBaseline,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n DialogContentText,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n Divider,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n InputAdornment,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n InputBase,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n ListItemIcon,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n ListItemText,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n ListSubheader,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n MenuList,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n Paper,\n /** @deprecated Will be removed in a future Odyssey version in lieu of a wrapped version. */\n ScopedCssBaseline,\n ThemeProvider,\n} from \"@mui/material\";\n\nexport type {\n CssBaselineProps,\n DialogContentTextProps,\n DividerProps,\n InputAdornmentProps,\n InputBaseProps,\n ListItemIconProps,\n ListItemTextProps,\n ListSubheaderProps,\n MenuListProps,\n PaperProps,\n ScopedCssBaselineProps,\n ThemeOptions,\n} from \"@mui/material\";\n\nexport { useOdysseyDesignTokens } from \"./OdysseyDesignTokensContext\";\n\nexport * from \"./Accordion\";\nexport * from \"./Autocomplete\";\nexport * from \"./Banner\";\nexport * from \"./Box\";\nexport * from \"./Breadcrumbs\";\nexport * from \"./Button\";\nexport * from \"./Callout\";\nexport * from \"./Checkbox\";\nexport * from \"./CheckboxGroup\";\nexport * from \"./CircularProgress\";\nexport * from \"./createShadowDom\";\nexport * from \"./createUniqueId\";\nexport * from \"./Dialog\";\nexport * from \"./Fieldset\";\nexport * from \"./Form\";\nexport * from \"./Link\";\nexport * from \"./MenuButton\";\nexport * from \"./MenuItem\";\nexport * from \"./NativeSelect\";\nexport * from \"./NullElement\";\nexport * from \"./OdysseyCacheProvider\";\nexport { odysseyTranslate } from \"./i18n\";\nexport * from \"./OdysseyProvider\";\nexport * from \"./OdysseyThemeProvider\";\nexport * from \"./OdysseyTranslationProvider\";\nexport * from \"./PasswordField\";\nexport * from \"./Radio\";\nexport * from \"./RadioGroup\";\nexport * from \"./ScreenReaderText\";\nexport * from \"./SearchField\";\nexport * from \"./Select\";\nexport * from \"./Status\";\nexport * from \"./Tabs\";\nexport * from \"./Tag\";\nexport * from \"./TagList\";\nexport * from \"./TextField\";\nexport * from \"./theme\";\nexport * from \"./Toast\";\nexport * from \"./ToastStack\";\nexport * from \"./Tooltip\";\nexport * from \"./Typography\";\nexport * from \"./useUniqueId\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,SAAS,EAAEC,cAAc,QAAQ,YAAY;AAEtD,SACEC,WAAW,EAEXC,WAAW,EAEXC,iBAAiB,EAEjBC,OAAO,EAEPC,cAAc,EAEdC,SAAS,EAETC,YAAY,EAEZC,YAAY,EAEZC,aAAa,EAEbC,QAAQ,EAERC,KAAK,EAELC,iBAAiB,EACjBC,aAAa,QACR,eAAe;AAAC,SAiBdC,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAuBtBC,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Domovská stránka",
3
+ "breadcrumbs.label.text": "Drobečková navigace",
2
4
  "fielderror.screenreader.text": "Chyba",
3
5
  "fieldlabel.optional.text": "Volitelné",
4
6
  "fieldlabel.required.text": "Povinné",
7
+ "passwordfield.icon.label.show": "Zobrazit heslo",
8
+ "passwordfield.icon.label.hide": "Skrýt heslo",
5
9
  "severity.error": "chyba",
6
10
  "severity.info": "informace",
7
11
  "severity.success": "úspěch",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_cs.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_cs.ts"],"sourcesContent":["export const translation = {\"fielderror.screenreader.text\":\"Chyba\",\"fieldlabel.optional.text\":\"Volitelné\",\"fieldlabel.required.text\":\"Povinné\",\"severity.error\":\"chyba\",\"severity.info\":\"informace\",\"severity.success\":\"úspěch\",\"severity.warning\":\"upozornění\",\"table.error\":\"Chyba při načítání dat\",\"table.fetchedrows.text\":\"Byl načten {{totalRows}} řádek\",\"table.fetchedrows.text_plural\":\"Celkem načteno řádků: {{totalRows}}\",\"table.rows.text\":\"{{totalRows}} řádek\",\"table.rows.text_plural\":\"Počet řádků: {{totalRows}}\",\"toast.close.text\":\"zavřít\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,8BAA8B,EAAC,OAAO;EAAC,0BAA0B,EAAC,WAAW;EAAC,0BAA0B,EAAC,SAAS;EAAC,gBAAgB,EAAC,OAAO;EAAC,eAAe,EAAC,WAAW;EAAC,kBAAkB,EAAC,QAAQ;EAAC,kBAAkB,EAAC,YAAY;EAAC,aAAa,EAAC,wBAAwB;EAAC,wBAAwB,EAAC,gCAAgC;EAAC,+BAA+B,EAAC,qCAAqC;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,4BAA4B;EAAC,kBAAkB,EAAC;AAAQ,CAAC"}
1
+ {"version":3,"file":"odyssey-react-mui_cs.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_cs.ts"],"sourcesContent":["export const translation = {\"breadcrumbs.home.text\":\"Domovská stránka\",\"breadcrumbs.label.text\":\"Drobečková navigace\",\"fielderror.screenreader.text\":\"Chyba\",\"fieldlabel.optional.text\":\"Volitelné\",\"fieldlabel.required.text\":\"Povinné\",\"passwordfield.icon.label.show\":\"Zobrazit heslo\",\"passwordfield.icon.label.hide\":\"Skrýt heslo\",\"severity.error\":\"chyba\",\"severity.info\":\"informace\",\"severity.success\":\"úspěch\",\"severity.warning\":\"upozornění\",\"table.error\":\"Chyba při načítání dat\",\"table.fetchedrows.text\":\"Byl načten {{totalRows}} řádek\",\"table.fetchedrows.text_plural\":\"Celkem načteno řádků: {{totalRows}}\",\"table.rows.text\":\"{{totalRows}} řádek\",\"table.rows.text_plural\":\"Počet řádků: {{totalRows}}\",\"toast.close.text\":\"zavřít\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,uBAAuB,EAAC,kBAAkB;EAAC,wBAAwB,EAAC,qBAAqB;EAAC,8BAA8B,EAAC,OAAO;EAAC,0BAA0B,EAAC,WAAW;EAAC,0BAA0B,EAAC,SAAS;EAAC,+BAA+B,EAAC,gBAAgB;EAAC,+BAA+B,EAAC,aAAa;EAAC,gBAAgB,EAAC,OAAO;EAAC,eAAe,EAAC,WAAW;EAAC,kBAAkB,EAAC,QAAQ;EAAC,kBAAkB,EAAC,YAAY;EAAC,aAAa,EAAC,wBAAwB;EAAC,wBAAwB,EAAC,gCAAgC;EAAC,+BAA+B,EAAC,qCAAqC;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,4BAA4B;EAAC,kBAAkB,EAAC;AAAQ,CAAC"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Start",
3
+ "breadcrumbs.label.text": "Rasp",
2
4
  "fielderror.screenreader.text": "Fejl",
3
5
  "fieldlabel.optional.text": "Valgfrit",
4
6
  "fieldlabel.required.text": "Påkrævet",
7
+ "passwordfield.icon.label.show": "Vis adgangskode",
8
+ "passwordfield.icon.label.hide": "Skjul adgangskode",
5
9
  "severity.error": "fejl",
6
10
  "severity.info": "oplysninger",
7
11
  "severity.success": "fuldført",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_da.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_da.ts"],"sourcesContent":["export const translation = {\"fielderror.screenreader.text\":\"Fejl\",\"fieldlabel.optional.text\":\"Valgfrit\",\"fieldlabel.required.text\":\"Påkrævet\",\"severity.error\":\"fejl\",\"severity.info\":\"oplysninger\",\"severity.success\":\"fuldført\",\"severity.warning\":\"advarsel\",\"table.error\":\"Fejl ved indlæsning af data.\",\"table.fetchedrows.text\":\"Hentet {{totalRows}} række\",\"table.fetchedrows.text_plural\":\"Hentet {{totalRows}} total antal rækker\",\"table.rows.text\":\"{{totalRows}} række\",\"table.rows.text_plural\":\"{{totalRows}} rækker\",\"toast.close.text\":\"luk\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,8BAA8B,EAAC,MAAM;EAAC,0BAA0B,EAAC,UAAU;EAAC,0BAA0B,EAAC,UAAU;EAAC,gBAAgB,EAAC,MAAM;EAAC,eAAe,EAAC,aAAa;EAAC,kBAAkB,EAAC,UAAU;EAAC,kBAAkB,EAAC,UAAU;EAAC,aAAa,EAAC,8BAA8B;EAAC,wBAAwB,EAAC,4BAA4B;EAAC,+BAA+B,EAAC,yCAAyC;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,sBAAsB;EAAC,kBAAkB,EAAC;AAAK,CAAC"}
1
+ {"version":3,"file":"odyssey-react-mui_da.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_da.ts"],"sourcesContent":["export const translation = {\"breadcrumbs.home.text\":\"Start\",\"breadcrumbs.label.text\":\"Rasp\",\"fielderror.screenreader.text\":\"Fejl\",\"fieldlabel.optional.text\":\"Valgfrit\",\"fieldlabel.required.text\":\"Påkrævet\",\"passwordfield.icon.label.show\":\"Vis adgangskode\",\"passwordfield.icon.label.hide\":\"Skjul adgangskode\",\"severity.error\":\"fejl\",\"severity.info\":\"oplysninger\",\"severity.success\":\"fuldført\",\"severity.warning\":\"advarsel\",\"table.error\":\"Fejl ved indlæsning af data.\",\"table.fetchedrows.text\":\"Hentet {{totalRows}} række\",\"table.fetchedrows.text_plural\":\"Hentet {{totalRows}} total antal rækker\",\"table.rows.text\":\"{{totalRows}} række\",\"table.rows.text_plural\":\"{{totalRows}} rækker\",\"toast.close.text\":\"luk\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,uBAAuB,EAAC,OAAO;EAAC,wBAAwB,EAAC,MAAM;EAAC,8BAA8B,EAAC,MAAM;EAAC,0BAA0B,EAAC,UAAU;EAAC,0BAA0B,EAAC,UAAU;EAAC,+BAA+B,EAAC,iBAAiB;EAAC,+BAA+B,EAAC,mBAAmB;EAAC,gBAAgB,EAAC,MAAM;EAAC,eAAe,EAAC,aAAa;EAAC,kBAAkB,EAAC,UAAU;EAAC,kBAAkB,EAAC,UAAU;EAAC,aAAa,EAAC,8BAA8B;EAAC,wBAAwB,EAAC,4BAA4B;EAAC,+BAA+B,EAAC,yCAAyC;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,sBAAsB;EAAC,kBAAkB,EAAC;AAAK,CAAC"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Home",
3
+ "breadcrumbs.label.text": "Breadcrumbs",
2
4
  "fielderror.screenreader.text": "Fehler",
3
5
  "fieldlabel.optional.text": "Optional",
4
6
  "fieldlabel.required.text": "Erforderlich",
7
+ "passwordfield.icon.label.show": "Passwort anzeigen",
8
+ "passwordfield.icon.label.hide": "Passwort verbergen",
5
9
  "severity.error": "Fehler",
6
10
  "severity.info": "Infos",
7
11
  "severity.success": "Erfolg",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_de.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_de.ts"],"sourcesContent":["export const translation = {\"fielderror.screenreader.text\":\"Fehler\",\"fieldlabel.optional.text\":\"Optional\",\"fieldlabel.required.text\":\"Erforderlich\",\"severity.error\":\"Fehler\",\"severity.info\":\"Infos\",\"severity.success\":\"Erfolg\",\"severity.warning\":\"Warnung\",\"table.error\":\"Fehler beim Laden der Daten.\",\"table.fetchedrows.text\":\"{{totalRows}} Zeile abgerufen\",\"table.fetchedrows.text_plural\":\"{{totalRows}} Zeilen insgesamt abgerufen\",\"table.rows.text\":\"{{totalRows}} Zeile\",\"table.rows.text_plural\":\"{{totalRows}} Zeilen\",\"toast.close.text\":\"schließen\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,8BAA8B,EAAC,QAAQ;EAAC,0BAA0B,EAAC,UAAU;EAAC,0BAA0B,EAAC,cAAc;EAAC,gBAAgB,EAAC,QAAQ;EAAC,eAAe,EAAC,OAAO;EAAC,kBAAkB,EAAC,QAAQ;EAAC,kBAAkB,EAAC,SAAS;EAAC,aAAa,EAAC,8BAA8B;EAAC,wBAAwB,EAAC,+BAA+B;EAAC,+BAA+B,EAAC,0CAA0C;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,sBAAsB;EAAC,kBAAkB,EAAC;AAAW,CAAC"}
1
+ {"version":3,"file":"odyssey-react-mui_de.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_de.ts"],"sourcesContent":["export const translation = {\"breadcrumbs.home.text\":\"Home\",\"breadcrumbs.label.text\":\"Breadcrumbs\",\"fielderror.screenreader.text\":\"Fehler\",\"fieldlabel.optional.text\":\"Optional\",\"fieldlabel.required.text\":\"Erforderlich\",\"passwordfield.icon.label.show\":\"Passwort anzeigen\",\"passwordfield.icon.label.hide\":\"Passwort verbergen\",\"severity.error\":\"Fehler\",\"severity.info\":\"Infos\",\"severity.success\":\"Erfolg\",\"severity.warning\":\"Warnung\",\"table.error\":\"Fehler beim Laden der Daten.\",\"table.fetchedrows.text\":\"{{totalRows}} Zeile abgerufen\",\"table.fetchedrows.text_plural\":\"{{totalRows}} Zeilen insgesamt abgerufen\",\"table.rows.text\":\"{{totalRows}} Zeile\",\"table.rows.text_plural\":\"{{totalRows}} Zeilen\",\"toast.close.text\":\"schließen\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,uBAAuB,EAAC,MAAM;EAAC,wBAAwB,EAAC,aAAa;EAAC,8BAA8B,EAAC,QAAQ;EAAC,0BAA0B,EAAC,UAAU;EAAC,0BAA0B,EAAC,cAAc;EAAC,+BAA+B,EAAC,mBAAmB;EAAC,+BAA+B,EAAC,oBAAoB;EAAC,gBAAgB,EAAC,QAAQ;EAAC,eAAe,EAAC,OAAO;EAAC,kBAAkB,EAAC,QAAQ;EAAC,kBAAkB,EAAC,SAAS;EAAC,aAAa,EAAC,8BAA8B;EAAC,wBAAwB,EAAC,+BAA+B;EAAC,+BAA+B,EAAC,0CAA0C;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,sBAAsB;EAAC,kBAAkB,EAAC;AAAW,CAAC"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Αρχική σελίδα",
3
+ "breadcrumbs.label.text": "Τμήματα δυναμικής διαδρομής",
2
4
  "fielderror.screenreader.text": "Σφάλμα",
3
5
  "fieldlabel.optional.text": "Προαιρετικό",
4
6
  "fieldlabel.required.text": "Απαιτείται",
7
+ "passwordfield.icon.label.show": "Εμφάνιση κωδικού πρόσβασης",
8
+ "passwordfield.icon.label.hide": "Απόκρυψη κωδικού πρόσβασης",
5
9
  "severity.error": "σφάλμα",
6
10
  "severity.info": "πληροφορίες",
7
11
  "severity.success": "επιτυχία",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_el.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_el.ts"],"sourcesContent":["export const translation = {\"fielderror.screenreader.text\":\"Σφάλμα\",\"fieldlabel.optional.text\":\"Προαιρετικό\",\"fieldlabel.required.text\":\"Απαιτείται\",\"severity.error\":\"σφάλμα\",\"severity.info\":\"πληροφορίες\",\"severity.success\":\"επιτυχία\",\"severity.warning\":\"προειδοποίηση\",\"table.error\":\"Σφάλμα κατά τη φόρτωση δεδομένων.\",\"table.fetchedrows.text\":\"Ανακτήθηκε {{totalRows}} σειρά\",\"table.fetchedrows.text_plural\":\"Ανακτήθηκαν συνολικά {{totalRows}} σειρές\",\"table.rows.text\":\"{{totalRows}} σειρά\",\"table.rows.text_plural\":\"{{totalRows}} σειρές\",\"toast.close.text\":\"κλείσιμο\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,8BAA8B,EAAC,QAAQ;EAAC,0BAA0B,EAAC,aAAa;EAAC,0BAA0B,EAAC,YAAY;EAAC,gBAAgB,EAAC,QAAQ;EAAC,eAAe,EAAC,aAAa;EAAC,kBAAkB,EAAC,UAAU;EAAC,kBAAkB,EAAC,eAAe;EAAC,aAAa,EAAC,mCAAmC;EAAC,wBAAwB,EAAC,gCAAgC;EAAC,+BAA+B,EAAC,2CAA2C;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,sBAAsB;EAAC,kBAAkB,EAAC;AAAU,CAAC"}
1
+ {"version":3,"file":"odyssey-react-mui_el.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_el.ts"],"sourcesContent":["export const translation = {\"breadcrumbs.home.text\":\"Αρχική σελίδα\",\"breadcrumbs.label.text\":\"Τμήματα δυναμικής διαδρομής\",\"fielderror.screenreader.text\":\"Σφάλμα\",\"fieldlabel.optional.text\":\"Προαιρετικό\",\"fieldlabel.required.text\":\"Απαιτείται\",\"passwordfield.icon.label.show\":\"Εμφάνιση κωδικού πρόσβασης\",\"passwordfield.icon.label.hide\":\"Απόκρυψη κωδικού πρόσβασης\",\"severity.error\":\"σφάλμα\",\"severity.info\":\"πληροφορίες\",\"severity.success\":\"επιτυχία\",\"severity.warning\":\"προειδοποίηση\",\"table.error\":\"Σφάλμα κατά τη φόρτωση δεδομένων.\",\"table.fetchedrows.text\":\"Ανακτήθηκε {{totalRows}} σειρά\",\"table.fetchedrows.text_plural\":\"Ανακτήθηκαν συνολικά {{totalRows}} σειρές\",\"table.rows.text\":\"{{totalRows}} σειρά\",\"table.rows.text_plural\":\"{{totalRows}} σειρές\",\"toast.close.text\":\"κλείσιμο\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,uBAAuB,EAAC,eAAe;EAAC,wBAAwB,EAAC,6BAA6B;EAAC,8BAA8B,EAAC,QAAQ;EAAC,0BAA0B,EAAC,aAAa;EAAC,0BAA0B,EAAC,YAAY;EAAC,+BAA+B,EAAC,4BAA4B;EAAC,+BAA+B,EAAC,4BAA4B;EAAC,gBAAgB,EAAC,QAAQ;EAAC,eAAe,EAAC,aAAa;EAAC,kBAAkB,EAAC,UAAU;EAAC,kBAAkB,EAAC,eAAe;EAAC,aAAa,EAAC,mCAAmC;EAAC,wBAAwB,EAAC,gCAAgC;EAAC,+BAA+B,EAAC,2CAA2C;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,sBAAsB;EAAC,kBAAkB,EAAC;AAAU,CAAC"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Inicio",
3
+ "breadcrumbs.label.text": "Rutas de navegación",
2
4
  "fielderror.screenreader.text": "Error",
3
5
  "fieldlabel.optional.text": "Opcional",
4
6
  "fieldlabel.required.text": "Obligatorio",
7
+ "passwordfield.icon.label.show": "Mostrar contraseña",
8
+ "passwordfield.icon.label.hide": "Ocultar contraseña",
5
9
  "severity.error": "error",
6
10
  "severity.info": "información",
7
11
  "severity.success": "correcto",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_es.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_es.ts"],"sourcesContent":["export const translation = {\"fielderror.screenreader.text\":\"Error\",\"fieldlabel.optional.text\":\"Opcional\",\"fieldlabel.required.text\":\"Obligatorio\",\"severity.error\":\"error\",\"severity.info\":\"información\",\"severity.success\":\"correcto\",\"severity.warning\":\"advertencia\",\"table.error\":\"Error al cargar datos.\",\"table.fetchedrows.text\":\"Se ha recuperado {{totalRows}} fila\",\"table.fetchedrows.text_plural\":\"Se ha recuperado un total de {{totalRows}} filas\",\"table.rows.text\":\"{{totalRows}} fila\",\"table.rows.text_plural\":\"{{totalRows}} filas\",\"toast.close.text\":\"cerrar\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,8BAA8B,EAAC,OAAO;EAAC,0BAA0B,EAAC,UAAU;EAAC,0BAA0B,EAAC,aAAa;EAAC,gBAAgB,EAAC,OAAO;EAAC,eAAe,EAAC,aAAa;EAAC,kBAAkB,EAAC,UAAU;EAAC,kBAAkB,EAAC,aAAa;EAAC,aAAa,EAAC,wBAAwB;EAAC,wBAAwB,EAAC,qCAAqC;EAAC,+BAA+B,EAAC,kDAAkD;EAAC,iBAAiB,EAAC,oBAAoB;EAAC,wBAAwB,EAAC,qBAAqB;EAAC,kBAAkB,EAAC;AAAQ,CAAC"}
1
+ {"version":3,"file":"odyssey-react-mui_es.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_es.ts"],"sourcesContent":["export const translation = {\"breadcrumbs.home.text\":\"Inicio\",\"breadcrumbs.label.text\":\"Rutas de navegación\",\"fielderror.screenreader.text\":\"Error\",\"fieldlabel.optional.text\":\"Opcional\",\"fieldlabel.required.text\":\"Obligatorio\",\"passwordfield.icon.label.show\":\"Mostrar contraseña\",\"passwordfield.icon.label.hide\":\"Ocultar contraseña\",\"severity.error\":\"error\",\"severity.info\":\"información\",\"severity.success\":\"correcto\",\"severity.warning\":\"advertencia\",\"table.error\":\"Error al cargar datos.\",\"table.fetchedrows.text\":\"Se ha recuperado {{totalRows}} fila\",\"table.fetchedrows.text_plural\":\"Se ha recuperado un total de {{totalRows}} filas\",\"table.rows.text\":\"{{totalRows}} fila\",\"table.rows.text_plural\":\"{{totalRows}} filas\",\"toast.close.text\":\"cerrar\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,uBAAuB,EAAC,QAAQ;EAAC,wBAAwB,EAAC,qBAAqB;EAAC,8BAA8B,EAAC,OAAO;EAAC,0BAA0B,EAAC,UAAU;EAAC,0BAA0B,EAAC,aAAa;EAAC,+BAA+B,EAAC,oBAAoB;EAAC,+BAA+B,EAAC,oBAAoB;EAAC,gBAAgB,EAAC,OAAO;EAAC,eAAe,EAAC,aAAa;EAAC,kBAAkB,EAAC,UAAU;EAAC,kBAAkB,EAAC,aAAa;EAAC,aAAa,EAAC,wBAAwB;EAAC,wBAAwB,EAAC,qCAAqC;EAAC,+BAA+B,EAAC,kDAAkD;EAAC,iBAAiB,EAAC,oBAAoB;EAAC,wBAAwB,EAAC,qBAAqB;EAAC,kBAAkB,EAAC;AAAQ,CAAC"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Aloitussivu",
3
+ "breadcrumbs.label.text": "Linkkipolku",
2
4
  "fielderror.screenreader.text": "Virhe",
3
5
  "fieldlabel.optional.text": "Valinnainen",
4
6
  "fieldlabel.required.text": "Pakollinen",
7
+ "passwordfield.icon.label.show": "Näytä salasana",
8
+ "passwordfield.icon.label.hide": "Piilota salasana",
5
9
  "severity.error": "virhe",
6
10
  "severity.info": "tietoa",
7
11
  "severity.success": "onnistui",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_fi.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_fi.ts"],"sourcesContent":["export const translation = {\"fielderror.screenreader.text\":\"Virhe\",\"fieldlabel.optional.text\":\"Valinnainen\",\"fieldlabel.required.text\":\"Pakollinen\",\"severity.error\":\"virhe\",\"severity.info\":\"tietoa\",\"severity.success\":\"onnistui\",\"severity.warning\":\"varoitus\",\"table.error\":\"Virhe tietojen lataamisessa.\",\"table.fetchedrows.text\":\"Haettu {{totalRows}} rivi\",\"table.fetchedrows.text_plural\":\"Haettu yhteensä {{totalRows}} riviä\",\"table.rows.text\":\"{{totalRows}} rivi\",\"table.rows.text_plural\":\"{{totalRows}} riviä\",\"toast.close.text\":\"sulje\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,8BAA8B,EAAC,OAAO;EAAC,0BAA0B,EAAC,aAAa;EAAC,0BAA0B,EAAC,YAAY;EAAC,gBAAgB,EAAC,OAAO;EAAC,eAAe,EAAC,QAAQ;EAAC,kBAAkB,EAAC,UAAU;EAAC,kBAAkB,EAAC,UAAU;EAAC,aAAa,EAAC,8BAA8B;EAAC,wBAAwB,EAAC,2BAA2B;EAAC,+BAA+B,EAAC,qCAAqC;EAAC,iBAAiB,EAAC,oBAAoB;EAAC,wBAAwB,EAAC,qBAAqB;EAAC,kBAAkB,EAAC;AAAO,CAAC"}
1
+ {"version":3,"file":"odyssey-react-mui_fi.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_fi.ts"],"sourcesContent":["export const translation = {\"breadcrumbs.home.text\":\"Aloitussivu\",\"breadcrumbs.label.text\":\"Linkkipolku\",\"fielderror.screenreader.text\":\"Virhe\",\"fieldlabel.optional.text\":\"Valinnainen\",\"fieldlabel.required.text\":\"Pakollinen\",\"passwordfield.icon.label.show\":\"Näytä salasana\",\"passwordfield.icon.label.hide\":\"Piilota salasana\",\"severity.error\":\"virhe\",\"severity.info\":\"tietoa\",\"severity.success\":\"onnistui\",\"severity.warning\":\"varoitus\",\"table.error\":\"Virhe tietojen lataamisessa.\",\"table.fetchedrows.text\":\"Haettu {{totalRows}} rivi\",\"table.fetchedrows.text_plural\":\"Haettu yhteensä {{totalRows}} riviä\",\"table.rows.text\":\"{{totalRows}} rivi\",\"table.rows.text_plural\":\"{{totalRows}} riviä\",\"toast.close.text\":\"sulje\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,uBAAuB,EAAC,aAAa;EAAC,wBAAwB,EAAC,aAAa;EAAC,8BAA8B,EAAC,OAAO;EAAC,0BAA0B,EAAC,aAAa;EAAC,0BAA0B,EAAC,YAAY;EAAC,+BAA+B,EAAC,gBAAgB;EAAC,+BAA+B,EAAC,kBAAkB;EAAC,gBAAgB,EAAC,OAAO;EAAC,eAAe,EAAC,QAAQ;EAAC,kBAAkB,EAAC,UAAU;EAAC,kBAAkB,EAAC,UAAU;EAAC,aAAa,EAAC,8BAA8B;EAAC,wBAAwB,EAAC,2BAA2B;EAAC,+BAA+B,EAAC,qCAAqC;EAAC,iBAAiB,EAAC,oBAAoB;EAAC,wBAAwB,EAAC,qBAAqB;EAAC,kBAAkB,EAAC;AAAO,CAAC"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Accueil",
3
+ "breadcrumbs.label.text": "Fil d'Ariane",
2
4
  "fielderror.screenreader.text": "Erreur",
3
5
  "fieldlabel.optional.text": "Facultatif",
4
6
  "fieldlabel.required.text": "Obligatoire",
7
+ "passwordfield.icon.label.show": "Afficher le mot de passe",
8
+ "passwordfield.icon.label.hide": "Masquer le mot de passe",
5
9
  "severity.error": "erreur",
6
10
  "severity.info": "informations",
7
11
  "severity.success": "opération réussie",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_fr.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_fr.ts"],"sourcesContent":["export const translation = {\"fielderror.screenreader.text\":\"Erreur\",\"fieldlabel.optional.text\":\"Facultatif\",\"fieldlabel.required.text\":\"Obligatoire\",\"severity.error\":\"erreur\",\"severity.info\":\"informations\",\"severity.success\":\"opération réussie\",\"severity.warning\":\"avertissement\",\"table.error\":\"Erreur lors du chargement des données.\",\"table.fetchedrows.text\":\"{{totalRows}} ligne extraite\",\"table.fetchedrows.text_plural\":\"{{totalRows}} lignes extraites au total\",\"table.rows.text\":\"{{totalRows}} ligne\",\"table.rows.text_plural\":\"{{totalRows}} lignes\",\"toast.close.text\":\"fermer\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,8BAA8B,EAAC,QAAQ;EAAC,0BAA0B,EAAC,YAAY;EAAC,0BAA0B,EAAC,aAAa;EAAC,gBAAgB,EAAC,QAAQ;EAAC,eAAe,EAAC,cAAc;EAAC,kBAAkB,EAAC,mBAAmB;EAAC,kBAAkB,EAAC,eAAe;EAAC,aAAa,EAAC,wCAAwC;EAAC,wBAAwB,EAAC,8BAA8B;EAAC,+BAA+B,EAAC,yCAAyC;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,sBAAsB;EAAC,kBAAkB,EAAC;AAAQ,CAAC"}
1
+ {"version":3,"file":"odyssey-react-mui_fr.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_fr.ts"],"sourcesContent":["export const translation = {\"breadcrumbs.home.text\":\"Accueil\",\"breadcrumbs.label.text\":\"Fil d'Ariane\",\"fielderror.screenreader.text\":\"Erreur\",\"fieldlabel.optional.text\":\"Facultatif\",\"fieldlabel.required.text\":\"Obligatoire\",\"passwordfield.icon.label.show\":\"Afficher le mot de passe\",\"passwordfield.icon.label.hide\":\"Masquer le mot de passe\",\"severity.error\":\"erreur\",\"severity.info\":\"informations\",\"severity.success\":\"opération réussie\",\"severity.warning\":\"avertissement\",\"table.error\":\"Erreur lors du chargement des données.\",\"table.fetchedrows.text\":\"{{totalRows}} ligne extraite\",\"table.fetchedrows.text_plural\":\"{{totalRows}} lignes extraites au total\",\"table.rows.text\":\"{{totalRows}} ligne\",\"table.rows.text_plural\":\"{{totalRows}} lignes\",\"toast.close.text\":\"fermer\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,uBAAuB,EAAC,SAAS;EAAC,wBAAwB,EAAC,cAAc;EAAC,8BAA8B,EAAC,QAAQ;EAAC,0BAA0B,EAAC,YAAY;EAAC,0BAA0B,EAAC,aAAa;EAAC,+BAA+B,EAAC,0BAA0B;EAAC,+BAA+B,EAAC,yBAAyB;EAAC,gBAAgB,EAAC,QAAQ;EAAC,eAAe,EAAC,cAAc;EAAC,kBAAkB,EAAC,mBAAmB;EAAC,kBAAkB,EAAC,eAAe;EAAC,aAAa,EAAC,wCAAwC;EAAC,wBAAwB,EAAC,8BAA8B;EAAC,+BAA+B,EAAC,yCAAyC;EAAC,iBAAiB,EAAC,qBAAqB;EAAC,wBAAwB,EAAC,sBAAsB;EAAC,kBAAkB,EAAC;AAAQ,CAAC"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Kezdőlap",
3
+ "breadcrumbs.label.text": "Webmorzsák",
2
4
  "fielderror.screenreader.text": "Hiba",
3
5
  "fieldlabel.optional.text": "Nem kötelező",
4
6
  "fieldlabel.required.text": "Kötelező",
7
+ "passwordfield.icon.label.show": "Jelszó megjelenítése",
8
+ "passwordfield.icon.label.hide": "Jelszó elrejtése",
5
9
  "severity.error": "hiba",
6
10
  "severity.info": "információ",
7
11
  "severity.success": "sikeres",
@@ -1 +1 @@
1
- {"version":3,"file":"odyssey-react-mui_hu.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_hu.ts"],"sourcesContent":["export const translation = {\"fielderror.screenreader.text\":\"Hiba\",\"fieldlabel.optional.text\":\"Nem kötelező\",\"fieldlabel.required.text\":\"Kötelező\",\"severity.error\":\"hiba\",\"severity.info\":\"információ\",\"severity.success\":\"sikeres\",\"severity.warning\":\"figyelmeztetés\",\"table.error\":\"Hiba történt az adatok betöltésekor.\",\"table.fetchedrows.text\":\"{{totalRows}} sor beolvasva\",\"table.fetchedrows.text_plural\":\"Összesen {{totalRows}} sor beolvasva\",\"table.rows.text\":\"{{totalRows}} sor\",\"table.rows.text_plural\":\"{{totalRows}} sor\",\"toast.close.text\":\"bezárás\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,8BAA8B,EAAC,MAAM;EAAC,0BAA0B,EAAC,cAAc;EAAC,0BAA0B,EAAC,UAAU;EAAC,gBAAgB,EAAC,MAAM;EAAC,eAAe,EAAC,YAAY;EAAC,kBAAkB,EAAC,SAAS;EAAC,kBAAkB,EAAC,gBAAgB;EAAC,aAAa,EAAC,sCAAsC;EAAC,wBAAwB,EAAC,6BAA6B;EAAC,+BAA+B,EAAC,sCAAsC;EAAC,iBAAiB,EAAC,mBAAmB;EAAC,wBAAwB,EAAC,mBAAmB;EAAC,kBAAkB,EAAC;AAAS,CAAC"}
1
+ {"version":3,"file":"odyssey-react-mui_hu.js","names":["translation"],"sources":["../../../src/properties/ts/odyssey-react-mui_hu.ts"],"sourcesContent":["export const translation = {\"breadcrumbs.home.text\":\"Kezdőlap\",\"breadcrumbs.label.text\":\"Webmorzsák\",\"fielderror.screenreader.text\":\"Hiba\",\"fieldlabel.optional.text\":\"Nem kötelező\",\"fieldlabel.required.text\":\"Kötelező\",\"passwordfield.icon.label.show\":\"Jelszó megjelenítése\",\"passwordfield.icon.label.hide\":\"Jelszó elrejtése\",\"severity.error\":\"hiba\",\"severity.info\":\"információ\",\"severity.success\":\"sikeres\",\"severity.warning\":\"figyelmeztetés\",\"table.error\":\"Hiba történt az adatok betöltésekor.\",\"table.fetchedrows.text\":\"{{totalRows}} sor beolvasva\",\"table.fetchedrows.text_plural\":\"Összesen {{totalRows}} sor beolvasva\",\"table.rows.text\":\"{{totalRows}} sor\",\"table.rows.text_plural\":\"{{totalRows}} sor\",\"toast.close.text\":\"bezárás\"};"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EAAC,uBAAuB,EAAC,UAAU;EAAC,wBAAwB,EAAC,YAAY;EAAC,8BAA8B,EAAC,MAAM;EAAC,0BAA0B,EAAC,cAAc;EAAC,0BAA0B,EAAC,UAAU;EAAC,+BAA+B,EAAC,sBAAsB;EAAC,+BAA+B,EAAC,kBAAkB;EAAC,gBAAgB,EAAC,MAAM;EAAC,eAAe,EAAC,YAAY;EAAC,kBAAkB,EAAC,SAAS;EAAC,kBAAkB,EAAC,gBAAgB;EAAC,aAAa,EAAC,sCAAsC;EAAC,wBAAwB,EAAC,6BAA6B;EAAC,+BAA+B,EAAC,sCAAsC;EAAC,iBAAiB,EAAC,mBAAmB;EAAC,wBAAwB,EAAC,mBAAmB;EAAC,kBAAkB,EAAC;AAAS,CAAC"}
@@ -1,7 +1,11 @@
1
1
  export const translation = {
2
+ "breadcrumbs.home.text": "Beranda",
3
+ "breadcrumbs.label.text": "Breadcrumb",
2
4
  "fielderror.screenreader.text": "Kesalahan",
3
5
  "fieldlabel.optional.text": "Opsional",
4
6
  "fieldlabel.required.text": "Wajib diisi",
7
+ "passwordfield.icon.label.show": "Tampilkan kata sandi",
8
+ "passwordfield.icon.label.hide": "Sembunyikan kata sandi",
5
9
  "severity.error": "kesalahan",
6
10
  "severity.info": "info",
7
11
  "severity.success": "berhasil",