@salutejs/plasma-new-hope 0.336.0-canary.2219.17638454714.0 → 0.336.0-canary.2219.17693950410.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 (267) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.css +3 -0
  2. package/cjs/components/CodeField/CodeField.css +7 -6
  3. package/cjs/components/CodeField/CodeField.js +63 -27
  4. package/cjs/components/CodeField/CodeField.js.map +1 -1
  5. package/cjs/components/CodeField/CodeField.styles.js +7 -1
  6. package/cjs/components/CodeField/CodeField.styles.js.map +1 -1
  7. package/cjs/components/CodeField/{CodeField.styles_ebdpd0.css → CodeField.styles_14p25hi.css} +1 -0
  8. package/cjs/components/CodeField/hooks/useWebOTP.js +95 -0
  9. package/cjs/components/CodeField/hooks/useWebOTP.js.map +1 -0
  10. package/cjs/components/CodeField/utils/handleCodeError.js +2 -2
  11. package/cjs/components/CodeField/utils/handleCodeError.js.map +1 -1
  12. package/cjs/components/CodeField/utils/handleItemError.js +14 -4
  13. package/cjs/components/CodeField/utils/handleItemError.js.map +1 -1
  14. package/cjs/components/CodeField/utils/isWebOTPSupported.js +10 -0
  15. package/cjs/components/CodeField/utils/isWebOTPSupported.js.map +1 -0
  16. package/cjs/components/Combobox/ComboboxNew/Combobox.css +3 -0
  17. package/cjs/components/Combobox/ComboboxNew/Combobox.js +54 -56
  18. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  19. package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js +1 -4
  20. package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  21. package/cjs/components/DatePicker/RangeDate/RangeDate.css +3 -0
  22. package/cjs/components/DatePicker/RangeDate/RangeDate.js +30 -22
  23. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  24. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +3 -0
  25. package/cjs/components/DatePicker/SingleDate/SingleDate.css +3 -0
  26. package/cjs/components/Pagination/Pagination.css +3 -0
  27. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +3 -0
  28. package/cjs/components/Popover/Popover.js +4 -1
  29. package/cjs/components/Popover/Popover.js.map +1 -1
  30. package/cjs/components/Range/Range.css +3 -0
  31. package/cjs/components/Select/Select.css +3 -0
  32. package/cjs/components/Select/Select.js +23 -11
  33. package/cjs/components/Select/Select.js.map +1 -1
  34. package/cjs/components/Select/hooks/usePathMaps.js +1 -4
  35. package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
  36. package/cjs/components/Select/ui/Target/Target.css +3 -0
  37. package/cjs/components/Select/ui/Target/Target.js +0 -2
  38. package/cjs/components/Select/ui/Target/Target.js.map +1 -1
  39. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.css +3 -0
  40. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -49
  41. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  42. package/cjs/components/Slider/Slider.css +3 -0
  43. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +3 -0
  44. package/cjs/components/Table/Table.css +3 -0
  45. package/cjs/components/Table/ui/Cell/Cell.css +3 -0
  46. package/cjs/components/Table/ui/EditableCell/EditableCell.css +3 -0
  47. package/cjs/components/Table/ui/HeadCell/HeadCell.css +3 -0
  48. package/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +3 -0
  49. package/cjs/components/TextField/TextField.js +19 -3
  50. package/cjs/components/TextField/TextField.js.map +1 -1
  51. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.css +58 -0
  52. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +86 -0
  53. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js.map +1 -0
  54. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +25 -0
  55. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js.map +1 -0
  56. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_y9tozi.css +2 -0
  57. package/cjs/index.css +10 -6
  58. package/emotion/cjs/components/CodeField/CodeField.js +61 -23
  59. package/emotion/cjs/components/CodeField/CodeField.styles.js +18 -11
  60. package/emotion/cjs/components/CodeField/hooks/useWebOTP.js +246 -0
  61. package/emotion/cjs/components/CodeField/utils/handleCodeError.js +2 -2
  62. package/emotion/cjs/components/CodeField/utils/handleItemError.js +12 -3
  63. package/emotion/cjs/components/CodeField/utils/index.js +4 -0
  64. package/emotion/cjs/components/CodeField/utils/isWebOTPSupported.js +13 -0
  65. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +57 -64
  66. package/emotion/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js +2 -5
  67. package/emotion/cjs/components/Combobox/ComboboxNew/utils/index.js +0 -4
  68. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +24 -22
  69. package/emotion/cjs/components/Popover/Popover.js +3 -1
  70. package/emotion/cjs/components/Select/Select.js +26 -9
  71. package/emotion/cjs/components/Select/hooks/usePathMaps.js +2 -5
  72. package/emotion/cjs/components/Select/ui/Target/Target.js +1 -2
  73. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -71
  74. package/emotion/cjs/components/Select/utils/index.js +0 -4
  75. package/emotion/cjs/components/TextField/TextField.js +20 -4
  76. package/emotion/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +78 -0
  77. package/emotion/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +49 -0
  78. package/emotion/cjs/components/TextField/ui/index.js +12 -3
  79. package/emotion/cjs/examples/components/Range/Range.config.js +8 -7
  80. package/emotion/es/components/CodeField/CodeField.js +64 -26
  81. package/emotion/es/components/CodeField/CodeField.styles.js +15 -11
  82. package/emotion/es/components/CodeField/hooks/useWebOTP.js +236 -0
  83. package/emotion/es/components/CodeField/utils/handleCodeError.js +2 -2
  84. package/emotion/es/components/CodeField/utils/handleItemError.js +12 -3
  85. package/emotion/es/components/CodeField/utils/index.js +1 -0
  86. package/emotion/es/components/CodeField/utils/isWebOTPSupported.js +3 -0
  87. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +58 -65
  88. package/emotion/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js +2 -5
  89. package/emotion/es/components/Combobox/ComboboxNew/utils/index.js +0 -1
  90. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +24 -22
  91. package/emotion/es/components/Popover/Popover.js +4 -2
  92. package/emotion/es/components/Select/Select.js +26 -9
  93. package/emotion/es/components/Select/hooks/usePathMaps.js +2 -5
  94. package/emotion/es/components/Select/ui/Target/Target.js +1 -2
  95. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -72
  96. package/emotion/es/components/Select/utils/index.js +0 -1
  97. package/emotion/es/components/TextField/TextField.js +21 -5
  98. package/emotion/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +63 -0
  99. package/emotion/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +27 -0
  100. package/emotion/es/components/TextField/ui/index.js +1 -0
  101. package/emotion/es/examples/components/Range/Range.config.js +8 -7
  102. package/es/components/Autocomplete/Autocomplete.css +3 -0
  103. package/es/components/CodeField/CodeField.css +7 -6
  104. package/es/components/CodeField/CodeField.js +66 -30
  105. package/es/components/CodeField/CodeField.js.map +1 -1
  106. package/es/components/CodeField/CodeField.styles.js +7 -2
  107. package/es/components/CodeField/CodeField.styles.js.map +1 -1
  108. package/es/components/CodeField/{CodeField.styles_ebdpd0.css → CodeField.styles_14p25hi.css} +1 -0
  109. package/es/components/CodeField/hooks/useWebOTP.js +91 -0
  110. package/es/components/CodeField/hooks/useWebOTP.js.map +1 -0
  111. package/es/components/CodeField/utils/handleCodeError.js +2 -2
  112. package/es/components/CodeField/utils/handleCodeError.js.map +1 -1
  113. package/es/components/CodeField/utils/handleItemError.js +14 -4
  114. package/es/components/CodeField/utils/handleItemError.js.map +1 -1
  115. package/es/components/CodeField/utils/isWebOTPSupported.js +6 -0
  116. package/es/components/CodeField/utils/isWebOTPSupported.js.map +1 -0
  117. package/es/components/Combobox/ComboboxNew/Combobox.css +3 -0
  118. package/es/components/Combobox/ComboboxNew/Combobox.js +55 -57
  119. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  120. package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js +1 -4
  121. package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  122. package/es/components/DatePicker/RangeDate/RangeDate.css +3 -0
  123. package/es/components/DatePicker/RangeDate/RangeDate.js +30 -22
  124. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  125. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +3 -0
  126. package/es/components/DatePicker/SingleDate/SingleDate.css +3 -0
  127. package/es/components/Pagination/Pagination.css +3 -0
  128. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +3 -0
  129. package/es/components/Popover/Popover.js +4 -1
  130. package/es/components/Popover/Popover.js.map +1 -1
  131. package/es/components/Range/Range.css +3 -0
  132. package/es/components/Select/Select.css +3 -0
  133. package/es/components/Select/Select.js +23 -11
  134. package/es/components/Select/Select.js.map +1 -1
  135. package/es/components/Select/hooks/usePathMaps.js +1 -4
  136. package/es/components/Select/hooks/usePathMaps.js.map +1 -1
  137. package/es/components/Select/ui/Target/Target.css +3 -0
  138. package/es/components/Select/ui/Target/Target.js +0 -2
  139. package/es/components/Select/ui/Target/Target.js.map +1 -1
  140. package/es/components/Select/ui/Target/ui/Textfield/Textfield.css +3 -0
  141. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -50
  142. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  143. package/es/components/Slider/Slider.css +3 -0
  144. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +3 -0
  145. package/es/components/Table/Table.css +3 -0
  146. package/es/components/Table/ui/Cell/Cell.css +3 -0
  147. package/es/components/Table/ui/EditableCell/EditableCell.css +3 -0
  148. package/es/components/Table/ui/HeadCell/HeadCell.css +3 -0
  149. package/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +3 -0
  150. package/es/components/TextField/TextField.js +19 -3
  151. package/es/components/TextField/TextField.js.map +1 -1
  152. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.css +58 -0
  153. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +78 -0
  154. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js.map +1 -0
  155. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +21 -0
  156. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js.map +1 -0
  157. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_y9tozi.css +2 -0
  158. package/es/index.css +10 -6
  159. package/package.json +2 -2
  160. package/styled-components/cjs/components/CodeField/CodeField.js +61 -23
  161. package/styled-components/cjs/components/CodeField/CodeField.styles.js +14 -5
  162. package/styled-components/cjs/components/CodeField/hooks/useWebOTP.js +246 -0
  163. package/styled-components/cjs/components/CodeField/utils/handleCodeError.js +2 -2
  164. package/styled-components/cjs/components/CodeField/utils/handleItemError.js +12 -3
  165. package/styled-components/cjs/components/CodeField/utils/index.js +4 -0
  166. package/styled-components/cjs/components/CodeField/utils/isWebOTPSupported.js +13 -0
  167. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +57 -64
  168. package/styled-components/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js +2 -5
  169. package/styled-components/cjs/components/Combobox/ComboboxNew/utils/index.js +0 -4
  170. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +24 -22
  171. package/styled-components/cjs/components/Popover/Popover.js +3 -1
  172. package/styled-components/cjs/components/Select/Select.js +26 -9
  173. package/styled-components/cjs/components/Select/hooks/usePathMaps.js +2 -5
  174. package/styled-components/cjs/components/Select/ui/Target/Target.js +1 -2
  175. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -71
  176. package/styled-components/cjs/components/Select/utils/index.js +0 -4
  177. package/styled-components/cjs/components/TextField/TextField.js +19 -3
  178. package/styled-components/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +78 -0
  179. package/styled-components/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +114 -0
  180. package/styled-components/cjs/components/TextField/ui/index.js +12 -3
  181. package/styled-components/cjs/examples/components/Combobox/Combobox.js +15 -0
  182. package/styled-components/cjs/examples/components/Range/Range.config.js +46 -0
  183. package/styled-components/es/components/CodeField/CodeField.js +64 -26
  184. package/styled-components/es/components/CodeField/CodeField.styles.js +11 -5
  185. package/styled-components/es/components/CodeField/hooks/useWebOTP.js +236 -0
  186. package/styled-components/es/components/CodeField/utils/handleCodeError.js +2 -2
  187. package/styled-components/es/components/CodeField/utils/handleItemError.js +12 -3
  188. package/styled-components/es/components/CodeField/utils/index.js +1 -0
  189. package/styled-components/es/components/CodeField/utils/isWebOTPSupported.js +3 -0
  190. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +58 -65
  191. package/styled-components/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js +2 -5
  192. package/styled-components/es/components/Combobox/ComboboxNew/utils/index.js +0 -1
  193. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +24 -22
  194. package/styled-components/es/components/Popover/Popover.js +4 -2
  195. package/styled-components/es/components/Select/Select.js +26 -9
  196. package/styled-components/es/components/Select/hooks/usePathMaps.js +2 -5
  197. package/styled-components/es/components/Select/ui/Target/Target.js +1 -2
  198. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -72
  199. package/styled-components/es/components/Select/utils/index.js +0 -1
  200. package/styled-components/es/components/TextField/TextField.js +20 -4
  201. package/styled-components/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +63 -0
  202. package/styled-components/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +92 -0
  203. package/styled-components/es/components/TextField/ui/index.js +1 -0
  204. package/styled-components/es/examples/components/Range/Range.config.js +46 -0
  205. package/types/components/CodeField/CodeField.d.ts.map +1 -1
  206. package/types/components/CodeField/CodeField.styles.d.ts +1 -0
  207. package/types/components/CodeField/CodeField.styles.d.ts.map +1 -1
  208. package/types/components/CodeField/hooks/useWebOTP.d.ts +20 -0
  209. package/types/components/CodeField/hooks/useWebOTP.d.ts.map +1 -0
  210. package/types/components/CodeField/utils/handleCodeError.d.ts +2 -2
  211. package/types/components/CodeField/utils/handleCodeError.d.ts.map +1 -1
  212. package/types/components/CodeField/utils/handleItemError.d.ts +3 -2
  213. package/types/components/CodeField/utils/handleItemError.d.ts.map +1 -1
  214. package/types/components/CodeField/utils/index.d.ts +1 -0
  215. package/types/components/CodeField/utils/index.d.ts.map +1 -1
  216. package/types/components/CodeField/utils/isWebOTPSupported.d.ts +2 -0
  217. package/types/components/CodeField/utils/isWebOTPSupported.d.ts.map +1 -0
  218. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  219. package/types/components/Combobox/ComboboxNew/hooks/getPathMaps.d.ts +1 -2
  220. package/types/components/Combobox/ComboboxNew/hooks/getPathMaps.d.ts.map +1 -1
  221. package/types/components/Combobox/ComboboxNew/utils/index.d.ts +0 -1
  222. package/types/components/Combobox/ComboboxNew/utils/index.d.ts.map +1 -1
  223. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  224. package/types/components/Popover/Popover.d.ts.map +1 -1
  225. package/types/components/Select/Select.d.ts.map +1 -1
  226. package/types/components/Select/hooks/usePathMaps.d.ts +1 -2
  227. package/types/components/Select/hooks/usePathMaps.d.ts.map +1 -1
  228. package/types/components/Select/ui/Target/Target.d.ts +0 -1
  229. package/types/components/Select/ui/Target/Target.d.ts.map +1 -1
  230. package/types/components/Select/ui/Target/Target.types.d.ts +1 -2
  231. package/types/components/Select/ui/Target/Target.types.d.ts.map +1 -1
  232. package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
  233. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts +1 -1
  234. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts.map +1 -1
  235. package/types/components/Select/utils/index.d.ts +0 -1
  236. package/types/components/Select/utils/index.d.ts.map +1 -1
  237. package/types/components/TextField/TextField.d.ts.map +1 -1
  238. package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.d.ts +21 -0
  239. package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.d.ts.map +1 -0
  240. package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.d.ts +3 -0
  241. package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.d.ts.map +1 -0
  242. package/types/components/TextField/ui/index.d.ts +1 -0
  243. package/types/components/TextField/ui/index.d.ts.map +1 -1
  244. package/types/examples/components/Range/Range.config.d.ts +1 -0
  245. package/types/examples/components/Range/Range.config.d.ts.map +1 -1
  246. package/types/examples/components/Range/Range.d.ts +1 -0
  247. package/types/examples/components/Range/Range.d.ts.map +1 -1
  248. package/cjs/components/Combobox/ComboboxNew/utils/getRemovedElement.js +0 -17
  249. package/cjs/components/Combobox/ComboboxNew/utils/getRemovedElement.js.map +0 -1
  250. package/cjs/components/Select/utils/getRemovedElement.js +0 -17
  251. package/cjs/components/Select/utils/getRemovedElement.js.map +0 -1
  252. package/emotion/cjs/components/Combobox/ComboboxNew/utils/getRemovedElement.js +0 -20
  253. package/emotion/cjs/components/Select/utils/getRemovedElement.js +0 -20
  254. package/emotion/es/components/Combobox/ComboboxNew/utils/getRemovedElement.js +0 -10
  255. package/emotion/es/components/Select/utils/getRemovedElement.js +0 -10
  256. package/es/components/Combobox/ComboboxNew/utils/getRemovedElement.js +0 -13
  257. package/es/components/Combobox/ComboboxNew/utils/getRemovedElement.js.map +0 -1
  258. package/es/components/Select/utils/getRemovedElement.js +0 -13
  259. package/es/components/Select/utils/getRemovedElement.js.map +0 -1
  260. package/styled-components/cjs/components/Combobox/ComboboxNew/utils/getRemovedElement.js +0 -20
  261. package/styled-components/cjs/components/Select/utils/getRemovedElement.js +0 -20
  262. package/styled-components/es/components/Combobox/ComboboxNew/utils/getRemovedElement.js +0 -10
  263. package/styled-components/es/components/Select/utils/getRemovedElement.js +0 -10
  264. package/types/components/Combobox/ComboboxNew/utils/getRemovedElement.d.ts +0 -2
  265. package/types/components/Combobox/ComboboxNew/utils/getRemovedElement.d.ts.map +0 -1
  266. package/types/components/Select/utils/getRemovedElement.d.ts +0 -2
  267. package/types/components/Select/utils/getRemovedElement.d.ts.map +0 -1
@@ -68,6 +68,9 @@
68
68
  .TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding:var(--plasma-textfield__chip-padding);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);-webkit-scroll-snap-align:center;-moz-scroll-snap-align:center;-ms-scroll-snap-align:center;scroll-snap-align:center;-webkit-scroll-snap-stop:normal;-moz-scroll-snap-stop:normal;-ms-scroll-snap-stop:normal;scroll-snap-stop:normal;position:relative;}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd.TextFieldChip_styles_14q069b_focusVisible__9f1b34fd:focus::before,.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
69
69
  .TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd{display:block;-webkit-flex:none;-ms-flex:none;flex:none;background:none;border:none;outline:none;padding:0;white-space:nowrap;cursor:pointer;font-family:var(--plasma-textfield-font-family);font-size:var(--plasma-textfield-font-size);font-style:var(--plasma-textfield-font-style);font-weight:var(--plasma-textfield-font-weight);-webkit-letter-spacing:var(--plasma-textfield-letter-spacing);-moz-letter-spacing:var(--plasma-textfield-letter-spacing);-ms-letter-spacing:var(--plasma-textfield-letter-spacing);letter-spacing:var(--plasma-textfield-letter-spacing);line-height:var(--plasma-textfield-line-height);color:var(--plasma-textfield-color);position:relative;}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd.TextFieldChip_styles_14q069b_focusVisible__9f1b34fd:focus::before,.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd:after{content:',';}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd:last-child:after{content:'';}
70
70
 
71
+ .TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding:var(--plasma-textfield__chip-padding);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);--plasma-chip-disabled-opacity:0.4;position:relative;}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7.TextFieldChipNew_styles_y9tozi_focusVisible__d1734be7:focus::before,.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
72
+ .TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7{display:block;-webkit-flex:none;-ms-flex:none;flex:none;background:none;border:none;outline:none;padding:0;white-space:nowrap;cursor:pointer;font-family:var(--plasma-textfield-font-family);font-size:var(--plasma-textfield-font-size);font-style:var(--plasma-textfield-font-style);font-weight:var(--plasma-textfield-font-weight);-webkit-letter-spacing:var(--plasma-textfield-letter-spacing);-moz-letter-spacing:var(--plasma-textfield-letter-spacing);-ms-letter-spacing:var(--plasma-textfield-letter-spacing);letter-spacing:var(--plasma-textfield-letter-spacing);line-height:var(--plasma-textfield-line-height);color:var(--plasma-textfield-color);position:relative;}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7.TextFieldChipNew_styles_y9tozi_focusVisible__d1734be7:focus::before,.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7:after{content:',';}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7:last-child:after{content:'';}
73
+
71
74
  .IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
72
75
 
73
76
  .TextField_1lzb2r1_bpunezx__7d079491{display:block;}
@@ -1,9 +1,10 @@
1
- .CodeField_styles_ebdpd0_b1xx9skx__3407b383{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:-webkit-min-content;width:-moz-min-content;width:min-content;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}.CodeField_styles_ebdpd0_b1xx9skx__3407b383.CodeField_styles_ebdpd0_codefieldCaptionAlignLeft__3407b383{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}
2
- .CodeField_styles_ebdpd0_c1wzspax__3407b383{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
3
- .CodeField_styles_ebdpd0_c7swj1z__3407b383{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
4
- .CodeField_styles_ebdpd0_s13uxcg8__3407b383{width:var(--plasma-codefield-separator-width);}
5
- .CodeField_styles_ebdpd0_ig5h1kg__3407b383{box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;outline:none;pointer-events:none;text-align:center;}
6
- .CodeField_styles_ebdpd0_c1jpzjak__3407b383{text-align:var(--c1jpzjak-0);-webkit-align-self:var(--c1jpzjak-0);-ms-flex-item-align:var(--c1jpzjak-0);align-self:var(--c1jpzjak-0);width:var(--c1jpzjak-1);white-space:pre-line;}
1
+ .CodeField_styles_14p25hi_b1xx9skx__a0f2e82d{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:-webkit-min-content;width:-moz-min-content;width:min-content;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}.CodeField_styles_14p25hi_b1xx9skx__a0f2e82d.CodeField_styles_14p25hi_codefieldCaptionAlignLeft__a0f2e82d{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}
2
+ .CodeField_styles_14p25hi_c1wzspax__a0f2e82d{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
3
+ .CodeField_styles_14p25hi_c7swj1z__a0f2e82d{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
4
+ .CodeField_styles_14p25hi_s13uxcg8__a0f2e82d{width:var(--plasma-codefield-separator-width);}
5
+ .CodeField_styles_14p25hi_ig5h1kg__a0f2e82d{box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;outline:none;pointer-events:none;text-align:center;}
6
+ .CodeField_styles_14p25hi_c1jpzjak__a0f2e82d{text-align:var(--c1jpzjak-0);-webkit-align-self:var(--c1jpzjak-0);-ms-flex-item-align:var(--c1jpzjak-0);align-self:var(--c1jpzjak-0);width:var(--c1jpzjak-1);white-space:pre-line;}
7
+ .CodeField_styles_14p25hi_h1x845wl__a0f2e82d{display:none;}
7
8
 
8
9
  .base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_c1jpzjak__e66aaab8{color:var(--plasma-codefield-caption-color);}.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_c1jpzjak__e66aaab8.base_9a5yza_codefieldCaptionError__e66aaab8{color:var(--plasma-codefield-caption-color-error);}.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_ig5h1kg__e66aaab8{color:var(--plasma-codefield-code-color);caret-color:var(--plasma-codefield-caret-color);background-color:var(--plasma-codefield-background-color);box-shadow:inset 0 0 0 var(--plasma-codefield-border-width) var(--plasma-codefield-border-color);}.base_9a5yza_b1g41h91__e66aaab8:hover .base_9a5yza_codefieldItemHoverEnabled__e66aaab8{background-color:var(--plasma-codefield-background-color-hover);box-shadow:inset 0 0 0 var(--plasma-codefield-border-width) var(--plasma-codefield-border-color-hover);}.base_9a5yza_b1g41h91__e66aaab8:focus-within .base_9a5yza_ig5h1kg__e66aaab8:focus-within{background-color:var(--plasma-codefield-background-color-focus);box-shadow:inset 0 0 0 var(--plasma-codefield-border-width) var(--plasma-codefield-border-color-focus);}.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldCodeErrorAnimation__e66aaab8{-webkit-animation:base_9a5yza_shakingErrorB1g41h91__e66aaab8 0.3s forwards;animation:base_9a5yza_shakingErrorB1g41h91__e66aaab8 0.3s forwards;}.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldCodeError__e66aaab8 .base_9a5yza_ig5h1kg__e66aaab8{color:var(--plasma-codefield-code-color-error);background-color:var(--plasma-codefield-background-error-color);box-shadow:inset 0 0 0 var(--plasma-codefield-border-width) var(--plasma-codefield-border-error-color);}.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldCodeError__e66aaab8:focus-within .base_9a5yza_ig5h1kg__e66aaab8{background-color:var(--plasma-codefield-background-error-color);box-shadow:inset 0 0 0 var(--plasma-codefield-border-width) var(--plasma-codefield-border-error-color);}.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldCodeError__e66aaab8.base_9a5yza_codefieldCodeErrorFade__e66aaab8 .base_9a5yza_ig5h1kg__e66aaab8{-webkit-animation:base_9a5yza_fadeErrorB1g41h91__e66aaab8 0.3s forwards;animation:base_9a5yza_fadeErrorB1g41h91__e66aaab8 0.3s forwards;}.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldItemErrorAnimation__e66aaab8{-webkit-animation:base_9a5yza_shakingErrorB1g41h91__e66aaab8 0.3s forwards;animation:base_9a5yza_shakingErrorB1g41h91__e66aaab8 0.3s forwards;}.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldItemError__e66aaab8,.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldItemError__e66aaab8:focus-within{color:var(--plasma-codefield-code-color-error);background-color:var(--plasma-codefield-background-error-color);box-shadow:inset 0 0 0 var(--plasma-codefield-border-width) var(--plasma-codefield-border-error-color);}.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldItemError__e66aaab8.base_9a5yza_codefieldCodeErrorFade__e66aaab8,.base_9a5yza_b1g41h91__e66aaab8.base_9a5yza_b1g41h91__e66aaab8 .base_9a5yza_codefieldItemError__e66aaab8:focus-within.base_9a5yza_codefieldCodeErrorFade__e66aaab8{-webkit-animation:base_9a5yza_shakingErrorB1g41h91__e66aaab8 0.3s forwards :local(fadeError-b1g41h91) 0.3s :local(forwards);animation:base_9a5yza_shakingErrorB1g41h91__e66aaab8 0.3s forwards :local(fadeError-b1g41h91) 0.3s :local(forwards);}@-webkit-keyframes base_9a5yza_shakingErrorB1g41h91__e66aaab8{14%{-webkit-transform:translateX(-0.125rem);-ms-transform:translateX(-0.125rem);transform:translateX(-0.125rem);}28%{-webkit-transform:translateX(0.125rem);-ms-transform:translateX(0.125rem);transform:translateX(0.125rem);}42%{-webkit-transform:translateX(-0.125rem);-ms-transform:translateX(-0.125rem);transform:translateX(-0.125rem);}57%{-webkit-transform:translateX(0.125rem);-ms-transform:translateX(0.125rem);transform:translateX(0.125rem);}71%{-webkit-transform:translateX(-0.125rem);-ms-transform:translateX(-0.125rem);transform:translateX(-0.125rem);}85%{-webkit-transform:translateX(0.125rem);-ms-transform:translateX(0.125rem);transform:translateX(0.125rem);}100%{-webkit-transform:translateX(-0.125rem);-ms-transform:translateX(-0.125rem);transform:translateX(-0.125rem);}}@keyframes base_9a5yza_shakingErrorB1g41h91__e66aaab8{14%{-webkit-transform:translateX(-0.125rem);-ms-transform:translateX(-0.125rem);transform:translateX(-0.125rem);}28%{-webkit-transform:translateX(0.125rem);-ms-transform:translateX(0.125rem);transform:translateX(0.125rem);}42%{-webkit-transform:translateX(-0.125rem);-ms-transform:translateX(-0.125rem);transform:translateX(-0.125rem);}57%{-webkit-transform:translateX(0.125rem);-ms-transform:translateX(0.125rem);transform:translateX(0.125rem);}71%{-webkit-transform:translateX(-0.125rem);-ms-transform:translateX(-0.125rem);transform:translateX(-0.125rem);}85%{-webkit-transform:translateX(0.125rem);-ms-transform:translateX(0.125rem);transform:translateX(0.125rem);}100%{-webkit-transform:translateX(-0.125rem);-ms-transform:translateX(-0.125rem);transform:translateX(-0.125rem);}}@-webkit-keyframes base_9a5yza_fadeErrorB1g41h91__e66aaab8{50%{color:var(--plasma-codefield-code-color-error);}100%{color:transparent;}}@keyframes base_9a5yza_fadeErrorB1g41h91__e66aaab8{50%{color:var(--plasma-codefield-code-color-error);}100%{color:transparent;}}
9
10
 
@@ -1,24 +1,27 @@
1
- import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends, defineProperty as _defineProperty, toConsumableArray as _toConsumableArray } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
- import React, { forwardRef, useState, useRef, useCallback, Fragment } from 'react';
1
+ import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends, objectSpread2 as _objectSpread2, defineProperty as _defineProperty, toConsumableArray as _toConsumableArray } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import React, { forwardRef, useState, useRef, useCallback, useEffect, Fragment } from 'react';
3
3
  import cls from 'classnames';
4
4
  import { FORBIDDEN_KEYS, BACKSPACE_KEY, ONLY_DIGITS_PATTERN } from './utils/constants.js';
5
5
  import { classes } from './CodeField.tokens.js';
6
- import { CodeWrapper, CodeGroup, ItemInput, Separator, CaptionWrapper, base } from './CodeField.styles.js';
6
+ import { CodeWrapper, CodeGroup, ItemInput, Separator, CaptionWrapper, HiddenInput, base } from './CodeField.styles.js';
7
7
  import { base as base$1 } from './variations/_view/base.js';
8
8
  import { base as base$2 } from './variations/_size/base.js';
9
9
  import { base as base$3 } from './variations/_shape/base.js';
10
10
  import { base as base$4 } from './variations/_disabled/base.js';
11
+ import { useWebOTP } from './hooks/useWebOTP.js';
11
12
  import { getCodeValue, getPlaceholderValue, getFieldPattern } from './utils/initialValuesHelper.js';
12
13
  import { useCodeHook } from '../../hooks/useCodeHook.js';
13
14
  import { useDidMountEffect } from '../../hooks/useDidMountEffect.js';
14
15
  import { handleCodeError } from './utils/handleCodeError.js';
15
16
  import { getSizeValueFromProp } from '../../utils/getSizeValueFromProp.js';
17
+ import { isWebOTPSupported } from './utils/isWebOTPSupported.js';
16
18
  import { handleItemError } from './utils/handleItemError.js';
17
19
 
18
20
  var _Separator;
19
21
  var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "shape", "view", "size", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
20
22
  var codeFieldRoot = function codeFieldRoot(Root) {
21
23
  return /*#__PURE__*/forwardRef(function (_ref, ref) {
24
+ var _autocompleteRef$curr;
22
25
  var className = _ref.className,
23
26
  outerValue = _ref.value,
24
27
  placeholder = _ref.placeholder,
@@ -47,10 +50,11 @@ var codeFieldRoot = function codeFieldRoot(Root) {
47
50
  onChange = _ref.onChange,
48
51
  onFullCodeEnter = _ref.onFullCodeEnter,
49
52
  rest = _objectWithoutProperties(_ref, _excluded);
50
- var _useState = useState(getCodeValue(codeLength, outerValue || '')),
53
+ var _useState = useState(getCodeValue(codeLength, '')),
51
54
  _useState2 = _slicedToArray(_useState, 2),
52
- code = _useState2[0],
53
- setCode = _useState2[1];
55
+ innerValue = _useState2[0],
56
+ setInnerValue = _useState2[1];
57
+ var code = typeof outerValue === 'string' ? getCodeValue(codeLength, outerValue) : innerValue;
54
58
  var _useState3 = useState(code.join('')),
55
59
  _useState4 = _slicedToArray(_useState3, 2),
56
60
  originalValue = _useState4[0],
@@ -58,10 +62,12 @@ var codeFieldRoot = function codeFieldRoot(Root) {
58
62
  var inputRefs = useRef([]);
59
63
  var inputContainerRef = useRef(null);
60
64
  var captionRef = useRef(null);
65
+ var autocompleteRef = useRef(null);
61
66
  var fieldPattern = getFieldPattern(allowedSymbols);
62
67
  var placeholderValue = getPlaceholderValue(codeLength, placeholder);
63
68
  var parts = codeLength === 6 ? 2 : 1;
64
69
  var widthValue = width ? getSizeValueFromProp(width, 'rem') : undefined;
70
+ var isWebOTPEnabled = autoComplete === 'one-time-code' && !disabled && isWebOTPSupported();
65
71
  var getLastActiveIndex = function getLastActiveIndex() {
66
72
  if (code.length && code.length < codeLength) {
67
73
  return code.length;
@@ -71,6 +77,22 @@ var codeFieldRoot = function codeFieldRoot(Root) {
71
77
  });
72
78
  return lastEmptyIndex >= 0 ? lastEmptyIndex : codeLength - 1;
73
79
  };
80
+ var codeSetter = function codeSetter(newCode) {
81
+ var originalCode = newCode.join('');
82
+ setInnerValue(getCodeValue(codeLength, originalCode));
83
+ setOriginalValue(originalCode);
84
+ if (onChange) {
85
+ onChange(originalCode);
86
+ }
87
+ };
88
+ useWebOTP({
89
+ codeString: originalValue,
90
+ enableSMSAutoRead: autoComplete === 'one-time-code',
91
+ disabled: Boolean(disabled),
92
+ codeLength: codeLength,
93
+ codeSetter: codeSetter,
94
+ onFullCodeEnter: onFullCodeEnter
95
+ });
74
96
  var handleClick = function handleClick() {
75
97
  if (disabled) {
76
98
  return;
@@ -90,28 +112,33 @@ var codeFieldRoot = function codeFieldRoot(Root) {
90
112
  return;
91
113
  }
92
114
  if (key === BACKSPACE_KEY) {
93
- if (index > 0 && code[index] === '') {
94
- var _inputRefs$current;
95
- (_inputRefs$current = inputRefs.current[index - 1]) === null || _inputRefs$current === void 0 || _inputRefs$current.focus();
115
+ if (index > 0) {
116
+ var _inputRefs$current$in;
117
+ var newCode = _toConsumableArray(code);
118
+ newCode[index] = '';
119
+ if (index >= codeLength - 1 && code[index]) {
120
+ codeSetter(newCode);
121
+ return;
122
+ }
123
+ if (!code[index]) {
124
+ var _inputRefs$current;
125
+ newCode[index - 1] = '';
126
+ (_inputRefs$current = inputRefs.current[index - 1]) === null || _inputRefs$current === void 0 || _inputRefs$current.focus();
127
+ }
128
+ (_inputRefs$current$in = inputRefs.current[index]) === null || _inputRefs$current$in === void 0 || _inputRefs$current$in.classList.remove(classes.itemError);
129
+ codeSetter(newCode);
96
130
  }
97
131
  }
98
132
  };
99
- var codeSetter = function codeSetter(newCode) {
100
- setCode(newCode);
101
- setOriginalValue(newCode.join(''));
102
- if (onChange) {
103
- onChange(newCode.join(''));
104
- }
105
- };
106
133
  var handleChange = function handleChange(event, index) {
107
- var _inputRefs$current$in;
134
+ var _inputRefs$current$in2;
108
135
  if (disabled) {
109
136
  return;
110
137
  }
111
138
  var rawSymbol = event.currentTarget.value;
112
139
  var symbol = rawSymbol.charAt(rawSymbol.length - 1);
113
140
  var newCode = _toConsumableArray(code);
114
- (_inputRefs$current$in = inputRefs.current[index]) === null || _inputRefs$current$in === void 0 || _inputRefs$current$in.classList.remove(classes.itemError);
141
+ (_inputRefs$current$in2 = inputRefs.current[index]) === null || _inputRefs$current$in2 === void 0 || _inputRefs$current$in2.classList.remove(classes.itemError);
115
142
  if (isError) {
116
143
  var _captionRef$current;
117
144
  (_captionRef$current = captionRef.current) === null || _captionRef$current === void 0 || _captionRef$current.classList.remove(classes.captionError);
@@ -123,6 +150,9 @@ var codeFieldRoot = function codeFieldRoot(Root) {
123
150
  setIsError(false);
124
151
  }
125
152
  }
153
+ if (!symbol) {
154
+ return;
155
+ }
126
156
  if (!fieldPattern) {
127
157
  newCode[index] = symbol;
128
158
  codeSetter(newCode);
@@ -132,11 +162,6 @@ var codeFieldRoot = function codeFieldRoot(Root) {
132
162
  }
133
163
  return;
134
164
  }
135
- if (!symbol) {
136
- newCode[index] = '';
137
- codeSetter(newCode);
138
- return;
139
- }
140
165
  if (fieldPattern.test(symbol)) {
141
166
  newCode[index] = symbol.charAt(symbol.length - 1);
142
167
  codeSetter(newCode);
@@ -152,8 +177,9 @@ var codeFieldRoot = function codeFieldRoot(Root) {
152
177
  index: index,
153
178
  newCode: newCode,
154
179
  inputRefs: inputRefs,
155
- setCode: setCode,
156
- codeSetter: codeSetter
180
+ setInnerValue: setInnerValue,
181
+ codeSetter: codeSetter,
182
+ onChange: onChange
157
183
  });
158
184
  }
159
185
  };
@@ -199,12 +225,19 @@ var codeFieldRoot = function codeFieldRoot(Root) {
199
225
  inputRefs: inputRefs,
200
226
  inputContainerRef: inputContainerRef,
201
227
  captionRef: captionRef,
202
- setCode: setCode,
228
+ setInnerValue: setInnerValue,
203
229
  codeSetter: codeSetter
204
230
  });
205
231
  }
206
232
  }, [isError]);
207
- return /*#__PURE__*/React.createElement(Root, _extends({
233
+ useEffect(function () {
234
+ if (disabled || !autocompleteRef.current) {
235
+ return;
236
+ }
237
+ var autocompleteCode = autocompleteRef.current.value.split('');
238
+ codeSetter(autocompleteCode);
239
+ }, [(_autocompleteRef$curr = autocompleteRef.current) === null || _autocompleteRef$curr === void 0 ? void 0 : _autocompleteRef$curr.value, disabled]);
240
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Root, _extends({
208
241
  ref: ref,
209
242
  view: view,
210
243
  size: size,
@@ -212,7 +245,7 @@ var codeFieldRoot = function codeFieldRoot(Root) {
212
245
  disabled: disabled,
213
246
  onClick: handleClick,
214
247
  className: cls(className, _defineProperty({}, classes.captionAlignLeft, captionAlign === 'left'))
215
- }, rest), /*#__PURE__*/React.createElement(CodeWrapper, {
248
+ }, !isWebOTPEnabled && _objectSpread2({}, rest)), /*#__PURE__*/React.createElement(CodeWrapper, {
216
249
  ref: inputContainerRef
217
250
  }, _toConsumableArray(Array(parts)).map(function (_, partIndex) {
218
251
  return /*#__PURE__*/React.createElement(Fragment, {
@@ -228,7 +261,6 @@ var codeFieldRoot = function codeFieldRoot(Root) {
228
261
  },
229
262
  className: cls(_defineProperty(_defineProperty({}, classes.segmented, shape === 'segmented'), classes.hoverEnabled, !disabled && inputCorrectIndex >= originalValue.length)),
230
263
  value: code[inputCorrectIndex] || '',
231
- autoComplete: autoComplete,
232
264
  onChange: function onChange(e) {
233
265
  handleChange(e, inputCorrectIndex);
234
266
  },
@@ -245,7 +277,11 @@ var codeFieldRoot = function codeFieldRoot(Root) {
245
277
  ref: captionRef,
246
278
  captionAlign: captionAlign,
247
279
  widthValue: widthValue
248
- }, caption));
280
+ }, caption), isWebOTPEnabled && /*#__PURE__*/React.createElement(HiddenInput, _extends({
281
+ ref: autocompleteRef,
282
+ autoComplete: autoComplete,
283
+ tabIndex: -1
284
+ }, rest))));
249
285
  });
250
286
  };
251
287
  var codeFieldConfig = {
@@ -1 +1 @@
1
- {"version":3,"file":"CodeField.js","sources":["../../../src/components/CodeField/CodeField.tsx"],"sourcesContent":["import React, { forwardRef, Fragment, useCallback, useRef, useState } from 'react';\nimport cls from 'classnames';\nimport type { ChangeEvent, KeyboardEvent, ClipboardEvent } from 'react';\nimport type { RootProps } from 'src/engines';\nimport { useDidMountEffect } from 'src/hooks';\nimport { getSizeValueFromProp } from 'src/utils';\n\nimport { useCodeHook } from '../../hooks';\n\nimport type { CodeFieldProps } from './CodeField.types';\nimport { BACKSPACE_KEY, FORBIDDEN_KEYS, ONLY_DIGITS_PATTERN } from './utils/constants';\nimport { getCodeValue, getFieldPattern, getPlaceholderValue, handleCodeError, handleItemError } from './utils';\nimport { classes } from './CodeField.tokens';\nimport { base, CaptionWrapper, CodeGroup, CodeWrapper, ItemInput, Separator } from './CodeField.styles';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as shapeCSS } from './variations/_shape/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\n\nexport const codeFieldRoot = (Root: RootProps<HTMLDivElement, CodeFieldProps>) =>\n forwardRef<HTMLInputElement, CodeFieldProps>(\n (\n {\n className,\n value: outerValue,\n placeholder,\n autoFocus,\n codeLength = 6,\n caption,\n captionAlign = 'left',\n width,\n shape = 'default',\n view,\n size,\n disabled,\n isError,\n allowedSymbols = ONLY_DIGITS_PATTERN,\n itemErrorBehavior = 'remove-symbol',\n codeErrorBehavior = 'remove-code',\n autoComplete = 'one-time-code',\n setIsError,\n onChange,\n onFullCodeEnter,\n ...rest\n },\n ref,\n ) => {\n const [code, setCode] = useState<Array<string>>(getCodeValue(codeLength, outerValue || ''));\n const [originalValue, setOriginalValue] = useState<string>(code.join(''));\n\n const inputRefs = useRef<Array<HTMLInputElement>>([]);\n const inputContainerRef = useRef<HTMLDivElement | null>(null);\n const captionRef = useRef<HTMLDivElement | null>(null);\n\n const fieldPattern = getFieldPattern(allowedSymbols);\n const placeholderValue = getPlaceholderValue(codeLength, placeholder);\n const parts = codeLength === 6 ? 2 : 1;\n\n const widthValue = width ? getSizeValueFromProp(width, 'rem') : undefined;\n\n const getLastActiveIndex = () => {\n if (code.length && code.length < codeLength) {\n return code.length;\n }\n\n const lastEmptyIndex = code.findIndex((digit) => digit === '');\n return lastEmptyIndex >= 0 ? lastEmptyIndex : codeLength - 1;\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n\n const lastActiveIndex = getLastActiveIndex();\n\n if (inputRefs.current[lastActiveIndex]) {\n inputRefs.current[lastActiveIndex].focus();\n }\n };\n\n const handleOnKeyDown = (event: KeyboardEvent<HTMLInputElement>, index: number) => {\n if (disabled) {\n return;\n }\n\n const { key } = event;\n if (FORBIDDEN_KEYS.includes(key)) {\n event.preventDefault();\n\n return;\n }\n\n if (key === BACKSPACE_KEY) {\n if (index > 0 && code[index] === '') {\n inputRefs.current[index - 1]?.focus();\n }\n }\n };\n\n const codeSetter = (newCode: Array<string>) => {\n setCode(newCode);\n setOriginalValue(newCode.join(''));\n\n if (onChange) {\n onChange(newCode.join(''));\n }\n };\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>, index: number) => {\n if (disabled) {\n return;\n }\n\n const rawSymbol = event.currentTarget.value;\n const symbol = rawSymbol.charAt(rawSymbol.length - 1);\n const newCode = [...code];\n\n inputRefs.current[index]?.classList.remove(classes.itemError);\n if (isError) {\n captionRef.current?.classList.remove(classes.captionError);\n\n if (codeErrorBehavior === 'keep') {\n inputContainerRef.current?.classList.remove(classes.codeError, classes.codeErrorAnimation);\n }\n\n if (setIsError) {\n setIsError(false);\n }\n }\n\n if (!fieldPattern) {\n newCode[index] = symbol;\n codeSetter(newCode);\n\n if (symbol && index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n\n return;\n }\n\n if (!symbol) {\n newCode[index] = '';\n codeSetter(newCode);\n\n return;\n }\n\n if (fieldPattern.test(symbol)) {\n newCode[index] = symbol.charAt(symbol.length - 1);\n codeSetter(newCode);\n\n if (index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n } else {\n newCode[index] = symbol.charAt(symbol.length - 1);\n\n handleItemError({\n currentSymbol: symbol,\n itemErrorBehavior,\n index,\n newCode,\n inputRefs,\n setCode,\n codeSetter,\n });\n }\n };\n\n const handlePaste = (event: ClipboardEvent<HTMLInputElement>) => {\n const newCode = [...code];\n\n if (disabled) {\n return;\n }\n\n event.preventDefault();\n\n const rawData = event.clipboardData.getData('text/plain');\n\n const pastedData = (fieldPattern\n ? rawData\n .split('')\n .map((symb) => symb.match(fieldPattern)?.[0] || '')\n .filter(Boolean) || []\n : rawData.split('')\n ).slice(0, codeLength);\n\n pastedData.forEach((element, index) => {\n newCode[index] = element;\n });\n\n const activeIndex = Math.min(pastedData.length, codeLength - 1);\n inputRefs.current[activeIndex]?.focus();\n\n codeSetter(newCode);\n };\n\n const handleFullCodeEnter = useCallback((fullCode: string) => {\n if (onFullCodeEnter) {\n onFullCodeEnter(fullCode);\n }\n }, []);\n\n useCodeHook({\n inputRefs,\n codeLength,\n disabled,\n autoFocus,\n originalValue,\n getLastActiveIndex,\n handleFullCodeEnter,\n });\n\n useDidMountEffect(() => {\n if (isError) {\n handleCodeError({\n codeLength,\n codeErrorBehavior,\n currentCode: code,\n inputRefs,\n inputContainerRef,\n captionRef,\n setCode,\n codeSetter,\n });\n }\n }, [isError]);\n\n return (\n <Root\n ref={ref}\n view={view}\n size={size}\n shape={shape}\n disabled={disabled}\n onClick={handleClick}\n className={cls(className, {\n [classes.captionAlignLeft]: captionAlign === 'left',\n })}\n {...rest}\n >\n <CodeWrapper ref={inputContainerRef}>\n {[...Array(parts)].map((_, partIndex) => (\n <Fragment key={partIndex}>\n <CodeGroup role=\"group\">\n {[...Array(codeLength / parts)].map((_, i) => {\n const inputCorrectIndex = i + (codeLength / parts) * partIndex;\n\n return (\n <ItemInput\n key={partIndex + i + partIndex * i}\n ref={(element: HTMLInputElement) => {\n inputRefs.current[inputCorrectIndex] = element;\n }}\n className={cls({\n [classes.segmented]: shape === 'segmented',\n [classes.hoverEnabled]:\n !disabled && inputCorrectIndex >= originalValue.length,\n })}\n value={code[inputCorrectIndex] || ''}\n autoComplete={autoComplete}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n handleChange(e, inputCorrectIndex);\n }}\n onKeyDown={(e: KeyboardEvent<HTMLInputElement>) => {\n handleOnKeyDown(e, inputCorrectIndex);\n }}\n onPaste={handlePaste}\n tabIndex={\n !disabled && originalValue.length === inputCorrectIndex ? 0 : -1\n }\n {...(placeholderValue && {\n placeholder: placeholderValue[inputCorrectIndex],\n })}\n />\n );\n })}\n </CodeGroup>\n {partIndex !== parts - 1 && <Separator />}\n </Fragment>\n ))}\n </CodeWrapper>\n {caption && (\n <CaptionWrapper ref={captionRef} captionAlign={captionAlign} widthValue={widthValue}>\n {caption}\n </CaptionWrapper>\n )}\n </Root>\n );\n },\n );\n\nexport const codeFieldConfig = {\n name: 'CodeField',\n tag: 'div',\n layout: codeFieldRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n shape: {\n css: shapeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n shape: 'default',\n },\n};\n"],"names":["codeFieldRoot","Root","forwardRef","_ref","ref","className","outerValue","value","placeholder","autoFocus","_ref$codeLength","codeLength","caption","_ref$captionAlign","captionAlign","width","_ref$shape","shape","view","size","disabled","isError","_ref$allowedSymbols","allowedSymbols","ONLY_DIGITS_PATTERN","_ref$itemErrorBehavio","itemErrorBehavior","_ref$codeErrorBehavio","codeErrorBehavior","_ref$autoComplete","autoComplete","setIsError","onChange","onFullCodeEnter","rest","_objectWithoutProperties","_excluded","_useState","useState","getCodeValue","_useState2","_slicedToArray","code","setCode","_useState3","join","_useState4","originalValue","setOriginalValue","inputRefs","useRef","inputContainerRef","captionRef","fieldPattern","getFieldPattern","placeholderValue","getPlaceholderValue","parts","widthValue","getSizeValueFromProp","undefined","getLastActiveIndex","length","lastEmptyIndex","findIndex","digit","handleClick","lastActiveIndex","current","focus","handleOnKeyDown","event","index","key","FORBIDDEN_KEYS","includes","preventDefault","BACKSPACE_KEY","_inputRefs$current","codeSetter","newCode","handleChange","_inputRefs$current$in","rawSymbol","currentTarget","symbol","charAt","_toConsumableArray","classList","remove","classes","itemError","_captionRef$current","captionError","_inputContainerRef$cu","codeError","codeErrorAnimation","_inputRefs$current2","test","_inputRefs$current3","handleItemError","currentSymbol","handlePaste","_inputRefs$current$ac","rawData","clipboardData","getData","pastedData","split","map","symb","_symb$match","match","filter","Boolean","slice","forEach","element","activeIndex","Math","min","handleFullCodeEnter","useCallback","fullCode","useCodeHook","useDidMountEffect","handleCodeError","currentCode","React","createElement","_extends","onClick","cls","_defineProperty","captionAlignLeft","CodeWrapper","Array","_","partIndex","Fragment","CodeGroup","role","i","inputCorrectIndex","ItemInput","segmented","hoverEnabled","e","onKeyDown","onPaste","tabIndex","_Separator","Separator","CaptionWrapper","codeFieldConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","shapeCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"CodeField.js","sources":["../../../src/components/CodeField/CodeField.tsx"],"sourcesContent":["import React, { forwardRef, Fragment, useCallback, useEffect, useRef, useState } from 'react';\nimport cls from 'classnames';\nimport type { ChangeEvent, KeyboardEvent, ClipboardEvent } from 'react';\nimport type { RootProps } from 'src/engines';\nimport { useDidMountEffect } from 'src/hooks';\nimport { getSizeValueFromProp } from 'src/utils';\n\nimport { useCodeHook } from '../../hooks';\n\nimport type { CodeFieldProps } from './CodeField.types';\nimport { BACKSPACE_KEY, FORBIDDEN_KEYS, ONLY_DIGITS_PATTERN } from './utils/constants';\nimport {\n getCodeValue,\n getFieldPattern,\n getPlaceholderValue,\n handleCodeError,\n handleItemError,\n isWebOTPSupported,\n} from './utils';\nimport { classes } from './CodeField.tokens';\nimport { base, CaptionWrapper, CodeGroup, CodeWrapper, HiddenInput, ItemInput, Separator } from './CodeField.styles';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as shapeCSS } from './variations/_shape/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { useWebOTP } from './hooks/useWebOTP';\n\nexport const codeFieldRoot = (Root: RootProps<HTMLDivElement, CodeFieldProps>) =>\n forwardRef<HTMLInputElement, CodeFieldProps>(\n (\n {\n className,\n value: outerValue,\n placeholder,\n autoFocus,\n codeLength = 6,\n caption,\n captionAlign = 'left',\n width,\n shape = 'default',\n view,\n size,\n disabled,\n isError,\n allowedSymbols = ONLY_DIGITS_PATTERN,\n itemErrorBehavior = 'remove-symbol',\n codeErrorBehavior = 'remove-code',\n autoComplete = 'one-time-code',\n setIsError,\n onChange,\n onFullCodeEnter,\n ...rest\n },\n ref,\n ) => {\n const [innerValue, setInnerValue] = useState<Array<string>>(getCodeValue(codeLength, ''));\n const code = typeof outerValue === 'string' ? getCodeValue(codeLength, outerValue) : innerValue;\n\n const [originalValue, setOriginalValue] = useState<string>(code.join(''));\n\n const inputRefs = useRef<Array<HTMLInputElement>>([]);\n const inputContainerRef = useRef<HTMLDivElement | null>(null);\n const captionRef = useRef<HTMLDivElement | null>(null);\n const autocompleteRef = useRef<HTMLInputElement | null>(null);\n\n const fieldPattern = getFieldPattern(allowedSymbols);\n const placeholderValue = getPlaceholderValue(codeLength, placeholder);\n const parts = codeLength === 6 ? 2 : 1;\n\n const widthValue = width ? getSizeValueFromProp(width, 'rem') : undefined;\n const isWebOTPEnabled = autoComplete === 'one-time-code' && !disabled && isWebOTPSupported();\n\n const getLastActiveIndex = () => {\n if (code.length && code.length < codeLength) {\n return code.length;\n }\n\n const lastEmptyIndex = code.findIndex((digit) => digit === '');\n return lastEmptyIndex >= 0 ? lastEmptyIndex : codeLength - 1;\n };\n\n const codeSetter = (newCode: Array<string>) => {\n const originalCode = newCode.join('');\n\n setInnerValue(getCodeValue(codeLength, originalCode));\n setOriginalValue(originalCode);\n\n if (onChange) {\n onChange(originalCode);\n }\n };\n\n useWebOTP({\n codeString: originalValue,\n enableSMSAutoRead: autoComplete === 'one-time-code',\n disabled: Boolean(disabled),\n codeLength,\n codeSetter,\n onFullCodeEnter,\n });\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n\n const lastActiveIndex = getLastActiveIndex();\n\n if (inputRefs.current[lastActiveIndex]) {\n inputRefs.current[lastActiveIndex].focus();\n }\n };\n\n const handleOnKeyDown = (event: KeyboardEvent<HTMLInputElement>, index: number) => {\n if (disabled) {\n return;\n }\n\n const { key } = event;\n if (FORBIDDEN_KEYS.includes(key)) {\n event.preventDefault();\n\n return;\n }\n\n if (key === BACKSPACE_KEY) {\n if (index > 0) {\n const newCode = [...code];\n\n newCode[index] = '';\n\n if (index >= codeLength - 1 && code[index]) {\n codeSetter(newCode);\n return;\n }\n\n if (!code[index]) {\n newCode[index - 1] = '';\n inputRefs.current[index - 1]?.focus();\n }\n\n inputRefs.current[index]?.classList.remove(classes.itemError);\n codeSetter(newCode);\n }\n }\n };\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>, index: number) => {\n if (disabled) {\n return;\n }\n\n const rawSymbol = event.currentTarget.value;\n const symbol = rawSymbol.charAt(rawSymbol.length - 1);\n const newCode = [...code];\n\n inputRefs.current[index]?.classList.remove(classes.itemError);\n if (isError) {\n captionRef.current?.classList.remove(classes.captionError);\n\n if (codeErrorBehavior === 'keep') {\n inputContainerRef.current?.classList.remove(classes.codeError, classes.codeErrorAnimation);\n }\n\n if (setIsError) {\n setIsError(false);\n }\n }\n\n if (!symbol) {\n return;\n }\n\n if (!fieldPattern) {\n newCode[index] = symbol;\n codeSetter(newCode);\n\n if (symbol && index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n\n return;\n }\n\n if (fieldPattern.test(symbol)) {\n newCode[index] = symbol.charAt(symbol.length - 1);\n codeSetter(newCode);\n\n if (index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n } else {\n newCode[index] = symbol.charAt(symbol.length - 1);\n\n handleItemError({\n currentSymbol: symbol,\n itemErrorBehavior,\n index,\n newCode,\n inputRefs,\n setInnerValue,\n codeSetter,\n onChange,\n });\n }\n };\n\n const handlePaste = (event: ClipboardEvent<HTMLInputElement>) => {\n const newCode = [...code];\n\n if (disabled) {\n return;\n }\n\n event.preventDefault();\n\n const rawData = event.clipboardData.getData('text/plain');\n\n const pastedData = (fieldPattern\n ? rawData\n .split('')\n .map((symb) => symb.match(fieldPattern)?.[0] || '')\n .filter(Boolean) || []\n : rawData.split('')\n ).slice(0, codeLength);\n\n pastedData.forEach((element, index) => {\n newCode[index] = element;\n });\n\n const activeIndex = Math.min(pastedData.length, codeLength - 1);\n inputRefs.current[activeIndex]?.focus();\n\n codeSetter(newCode);\n };\n\n const handleFullCodeEnter = useCallback((fullCode: string) => {\n if (onFullCodeEnter) {\n onFullCodeEnter(fullCode);\n }\n }, []);\n\n useCodeHook({\n inputRefs,\n codeLength,\n disabled,\n autoFocus,\n originalValue,\n getLastActiveIndex,\n handleFullCodeEnter,\n });\n\n useDidMountEffect(() => {\n if (isError) {\n handleCodeError({\n codeLength,\n codeErrorBehavior,\n currentCode: code,\n inputRefs,\n inputContainerRef,\n captionRef,\n setInnerValue,\n codeSetter,\n });\n }\n }, [isError]);\n\n useEffect(() => {\n if (disabled || !autocompleteRef.current) {\n return;\n }\n\n const autocompleteCode = autocompleteRef.current.value.split('');\n codeSetter(autocompleteCode);\n }, [autocompleteRef.current?.value, disabled]);\n\n return (\n <>\n <Root\n ref={ref}\n view={view}\n size={size}\n shape={shape}\n disabled={disabled}\n onClick={handleClick}\n className={cls(className, {\n [classes.captionAlignLeft]: captionAlign === 'left',\n })}\n {...(!isWebOTPEnabled && { ...rest })}\n >\n <CodeWrapper ref={inputContainerRef}>\n {[...Array(parts)].map((_, partIndex) => (\n <Fragment key={partIndex}>\n <CodeGroup role=\"group\">\n {[...Array(codeLength / parts)].map((_, i) => {\n const inputCorrectIndex = i + (codeLength / parts) * partIndex;\n\n return (\n <ItemInput\n key={partIndex + i + partIndex * i}\n ref={(element: HTMLInputElement) => {\n inputRefs.current[inputCorrectIndex] = element;\n }}\n className={cls({\n [classes.segmented]: shape === 'segmented',\n [classes.hoverEnabled]:\n !disabled && inputCorrectIndex >= originalValue.length,\n })}\n value={code[inputCorrectIndex] || ''}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n handleChange(e, inputCorrectIndex);\n }}\n onKeyDown={(e: KeyboardEvent<HTMLInputElement>) => {\n handleOnKeyDown(e, inputCorrectIndex);\n }}\n onPaste={handlePaste}\n tabIndex={\n !disabled && originalValue.length === inputCorrectIndex ? 0 : -1\n }\n {...(placeholderValue && {\n placeholder: placeholderValue[inputCorrectIndex],\n })}\n />\n );\n })}\n </CodeGroup>\n {partIndex !== parts - 1 && <Separator />}\n </Fragment>\n ))}\n </CodeWrapper>\n\n {caption && (\n <CaptionWrapper ref={captionRef} captionAlign={captionAlign} widthValue={widthValue}>\n {caption}\n </CaptionWrapper>\n )}\n\n {isWebOTPEnabled && (\n <HiddenInput ref={autocompleteRef} autoComplete={autoComplete} tabIndex={-1} {...rest} />\n )}\n </Root>\n </>\n );\n },\n );\n\nexport const codeFieldConfig = {\n name: 'CodeField',\n tag: 'div',\n layout: codeFieldRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n shape: {\n css: shapeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n shape: 'default',\n },\n};\n"],"names":["codeFieldRoot","Root","forwardRef","_ref","ref","_autocompleteRef$curr","className","outerValue","value","placeholder","autoFocus","_ref$codeLength","codeLength","caption","_ref$captionAlign","captionAlign","width","_ref$shape","shape","view","size","disabled","isError","_ref$allowedSymbols","allowedSymbols","ONLY_DIGITS_PATTERN","_ref$itemErrorBehavio","itemErrorBehavior","_ref$codeErrorBehavio","codeErrorBehavior","_ref$autoComplete","autoComplete","setIsError","onChange","onFullCodeEnter","rest","_objectWithoutProperties","_excluded","_useState","useState","getCodeValue","_useState2","_slicedToArray","innerValue","setInnerValue","code","_useState3","join","_useState4","originalValue","setOriginalValue","inputRefs","useRef","inputContainerRef","captionRef","autocompleteRef","fieldPattern","getFieldPattern","placeholderValue","getPlaceholderValue","parts","widthValue","getSizeValueFromProp","undefined","isWebOTPEnabled","isWebOTPSupported","getLastActiveIndex","length","lastEmptyIndex","findIndex","digit","codeSetter","newCode","originalCode","useWebOTP","codeString","enableSMSAutoRead","Boolean","handleClick","lastActiveIndex","current","focus","handleOnKeyDown","event","index","key","FORBIDDEN_KEYS","includes","preventDefault","BACKSPACE_KEY","_inputRefs$current$in","_toConsumableArray","_inputRefs$current","classList","remove","classes","itemError","handleChange","_inputRefs$current$in2","rawSymbol","currentTarget","symbol","charAt","_captionRef$current","captionError","_inputContainerRef$cu","codeError","codeErrorAnimation","_inputRefs$current2","test","_inputRefs$current3","handleItemError","currentSymbol","handlePaste","_inputRefs$current$ac","rawData","clipboardData","getData","pastedData","split","map","symb","_symb$match","match","filter","slice","forEach","element","activeIndex","Math","min","handleFullCodeEnter","useCallback","fullCode","useCodeHook","useDidMountEffect","handleCodeError","currentCode","useEffect","autocompleteCode","React","createElement","Fragment","_extends","onClick","cls","_defineProperty","captionAlignLeft","_objectSpread","CodeWrapper","Array","_","partIndex","CodeGroup","role","i","inputCorrectIndex","ItemInput","segmented","hoverEnabled","e","onKeyDown","onPaste","tabIndex","_Separator","Separator","CaptionWrapper","HiddenInput","codeFieldConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","shapeCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import './CodeField.styles_ebdpd0.css';
1
+ import './CodeField.styles_14p25hi.css';
2
2
  import { styled } from '@linaria/react';
3
3
 
4
4
  var base = "b1xx9skx";
@@ -43,6 +43,11 @@ var CaptionWrapper = /*#__PURE__*/styled('div')({
43
43
  "c1jpzjak-1": [/*#__PURE__*/_exp5()]
44
44
  }
45
45
  });
46
+ var HiddenInput = /*#__PURE__*/styled('input')({
47
+ name: "HiddenInput",
48
+ "class": "h1x845wl",
49
+ propsAsIs: false
50
+ });
46
51
 
47
- export { CaptionWrapper, CodeGroup, CodeWrapper, ItemInput, Separator, base };
52
+ export { CaptionWrapper, CodeGroup, CodeWrapper, HiddenInput, ItemInput, Separator, base };
48
53
  //# sourceMappingURL=CodeField.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodeField.styles.js","sources":["../../../src/components/CodeField/CodeField.styles.ts"],"sourcesContent":["import { css } from '@linaria/core';\nimport { styled } from '@linaria/react';\n\nimport { classes, tokens } from './CodeField.tokens';\n\nexport const base = css`\n display: flex;\n flex-direction: column;\n justify-content: center;\n width: min-content;\n align-items: center;\n\n &.${classes.captionAlignLeft} {\n align-items: flex-start;\n }\n`;\n\nexport const CodeWrapper = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const CodeGroup = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const Separator = styled.div`\n width: var(${tokens.separatorWidth});\n`;\n\nexport const ItemInput = styled.input`\n box-sizing: border-box;\n appearance: none;\n border: 0;\n padding: 0;\n outline: none;\n pointer-events: none;\n text-align: center;\n`;\n\nexport const CaptionWrapper = styled.div<{ captionAlign: 'left' | 'center'; widthValue?: string }>`\n text-align: ${({ captionAlign }) => captionAlign};\n align-self: ${({ captionAlign }) => captionAlign};\n width: ${({ widthValue }) => widthValue || 'auto'};\n white-space: pre-line;\n`;\n"],"names":["base","CodeWrapper","styled","name","class","propsAsIs","CodeGroup","Separator","ItemInput","_exp4","_ref","captionAlign","_exp5","_ref2","widthValue","CaptionWrapper","vars"],"mappings":";;AAKO,IAAMA,IAAI,GAUhB,WAAA;AAEM,IAAMC,WAAW,gBAAGC,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAGhC,EAAA;AAEM,IAAMC,SAAS,gBAAGJ,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,WAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAG9B,EAAA;AAEM,IAAME,SAAS,gBAAGL,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,WAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAE9B,EAAA;AAEM,IAAMG,SAAS,gBAAGN,MAAM,CAAA,OAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,WAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAQ9B,EAAA;AAAC,IAAAI,KAAA,GAtCgBA,SAsChBA,KAAAA,GAAA;AAAA,EAAA,OAIgB,UAAAC,IAAA,EAAA;AAAA,IAAA,IAAGC,YAAAA,GAAAA,IAAAA,CAAAA,YAAAA,CAAAA;AAAAA,IAAAA,OAAmBA,YAAY,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAAA,IAAAC,KAAA,GA1ClCA,SA0CkCA,KAAAA,GAAA;AAAA,EAAA,OACvC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,UAAAA,GAAAA,KAAAA,CAAAA,UAAAA,CAAAA;IAAAA,OAAiBA,UAAU,IAAI,MAAM,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAH9C,IAAMC,cAAc,gBAAGb,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,gBAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAAW,EAAAA,IAAA,EAAA;AAAA,IAAA,YAAA,EAAA,cAElBP,KAAkC,EAAA,CAAA;AAAA,IAAA,YAAA,EAAA,cACvCG,KAAwC,EAAA,CAAA;AAAA,GAAA;AAAA,CAEpD;;;;"}
1
+ {"version":3,"file":"CodeField.styles.js","sources":["../../../src/components/CodeField/CodeField.styles.ts"],"sourcesContent":["import { css } from '@linaria/core';\nimport { styled } from '@linaria/react';\n\nimport { classes, tokens } from './CodeField.tokens';\n\nexport const base = css`\n display: flex;\n flex-direction: column;\n justify-content: center;\n width: min-content;\n align-items: center;\n\n &.${classes.captionAlignLeft} {\n align-items: flex-start;\n }\n`;\n\nexport const CodeWrapper = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const CodeGroup = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const Separator = styled.div`\n width: var(${tokens.separatorWidth});\n`;\n\nexport const ItemInput = styled.input`\n box-sizing: border-box;\n appearance: none;\n border: 0;\n padding: 0;\n outline: none;\n pointer-events: none;\n text-align: center;\n`;\n\nexport const CaptionWrapper = styled.div<{ captionAlign: 'left' | 'center'; widthValue?: string }>`\n text-align: ${({ captionAlign }) => captionAlign};\n align-self: ${({ captionAlign }) => captionAlign};\n width: ${({ widthValue }) => widthValue || 'auto'};\n white-space: pre-line;\n`;\n\nexport const HiddenInput = styled.input`\n display: none;\n`;\n"],"names":["base","CodeWrapper","styled","name","class","propsAsIs","CodeGroup","Separator","ItemInput","_exp4","_ref","captionAlign","_exp5","_ref2","widthValue","CaptionWrapper","vars","HiddenInput"],"mappings":";;AAKO,IAAMA,IAAI,GAUhB,WAAA;AAEM,IAAMC,WAAW,gBAAGC,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAGhC,EAAA;AAEM,IAAMC,SAAS,gBAAGJ,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,WAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAG9B,EAAA;AAEM,IAAME,SAAS,gBAAGL,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,WAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAE9B,EAAA;AAEM,IAAMG,SAAS,gBAAGN,MAAM,CAAA,OAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,WAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAQ9B,EAAA;AAAC,IAAAI,KAAA,GAtCgBA,SAsChBA,KAAAA,GAAA;AAAA,EAAA,OAIgB,UAAAC,IAAA,EAAA;AAAA,IAAA,IAAGC,YAAAA,GAAAA,IAAAA,CAAAA,YAAAA,CAAAA;AAAAA,IAAAA,OAAmBA,YAAY,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAAA,IAAAC,KAAA,GA1ClCA,SA0CkCA,KAAAA,GAAA;AAAA,EAAA,OACvC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,UAAAA,GAAAA,KAAAA,CAAAA,UAAAA,CAAAA;IAAAA,OAAiBA,UAAU,IAAI,MAAM,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAH9C,IAAMC,cAAc,gBAAGb,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,gBAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAAW,EAAAA,IAAA,EAAA;AAAA,IAAA,YAAA,EAAA,cAElBP,KAAkC,EAAA,CAAA;AAAA,IAAA,YAAA,EAAA,cACvCG,KAAwC,EAAA,CAAA;AAAA,GAAA;AAAA,CAEpD,EAAA;AAEM,IAAMK,WAAW,gBAAGf,MAAM,CAAA,OAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAEhC;;;;"}
@@ -4,3 +4,4 @@
4
4
  .s13uxcg8{width:var(--plasma-codefield-separator-width);}
5
5
  .ig5h1kg{box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;outline:none;pointer-events:none;text-align:center;}
6
6
  .c1jpzjak{text-align:var(--c1jpzjak-0);-webkit-align-self:var(--c1jpzjak-0);-ms-flex-item-align:var(--c1jpzjak-0);align-self:var(--c1jpzjak-0);width:var(--c1jpzjak-1);white-space:pre-line;}
7
+ .h1x845wl{display:none;}
@@ -0,0 +1,91 @@
1
+ import { asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { useRef, useCallback, useEffect } from 'react';
3
+ import { isWebOTPSupported } from '../utils/isWebOTPSupported.js';
4
+ import { getCodeValue } from '../utils/initialValuesHelper.js';
5
+
6
+ var isOTPCredential = function isOTPCredential(credential) {
7
+ return credential !== null && 'code' in credential;
8
+ };
9
+ var useWebOTP = function useWebOTP(_ref) {
10
+ var codeString = _ref.codeString,
11
+ enableSMSAutoRead = _ref.enableSMSAutoRead,
12
+ disabled = _ref.disabled,
13
+ codeLength = _ref.codeLength,
14
+ codeSetter = _ref.codeSetter,
15
+ onFullCodeEnter = _ref.onFullCodeEnter;
16
+ var abortControllerRef = useRef(null);
17
+ var startWebOTPListener = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
18
+ var otp, otpCode, newCode;
19
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
20
+ while (1) switch (_context.prev = _context.next) {
21
+ case 0:
22
+ if (!(!enableSMSAutoRead || disabled || !isWebOTPSupported())) {
23
+ _context.next = 2;
24
+ break;
25
+ }
26
+ return _context.abrupt("return");
27
+ case 2:
28
+ if (abortControllerRef.current) {
29
+ abortControllerRef.current.abort();
30
+ }
31
+ abortControllerRef.current = new AbortController();
32
+ _context.prev = 4;
33
+ _context.next = 7;
34
+ return navigator.credentials.get({
35
+ otp: {
36
+ transport: ['sms']
37
+ },
38
+ signal: abortControllerRef.current.signal
39
+ });
40
+ case 7:
41
+ otp = _context.sent;
42
+ if (otp && isOTPCredential(otp) && otp.code) {
43
+ otpCode = otp.code;
44
+ if (otpCode.length === codeLength) {
45
+ newCode = getCodeValue(codeLength, otpCode);
46
+ codeSetter(newCode);
47
+ if (onFullCodeEnter) {
48
+ onFullCodeEnter(otpCode);
49
+ }
50
+ }
51
+ }
52
+ _context.next = 14;
53
+ break;
54
+ case 11:
55
+ _context.prev = 11;
56
+ _context.t0 = _context["catch"](4);
57
+ if (_context.t0 instanceof DOMException) {
58
+ if (_context.t0.name !== 'AbortError' && _context.t0.name !== 'NotAllowedError') {
59
+ console.warn('Web OTP API error:', _context.t0);
60
+ }
61
+ } else if (_context.t0 instanceof Error) {
62
+ console.warn('Web OTP API error:', _context.t0);
63
+ } else {
64
+ console.warn('Unknown Web OTP API error:', _context.t0);
65
+ }
66
+ case 14:
67
+ case "end":
68
+ return _context.stop();
69
+ }
70
+ }, _callee, null, [[4, 11]]);
71
+ })), [enableSMSAutoRead, disabled, codeLength, onFullCodeEnter]);
72
+ var stopWebOTPListener = useCallback(function () {
73
+ if (abortControllerRef.current) {
74
+ abortControllerRef.current.abort();
75
+ abortControllerRef.current = null;
76
+ }
77
+ }, []);
78
+ useEffect(function () {
79
+ if (isWebOTPSupported() && codeString === '' && enableSMSAutoRead && !disabled) {
80
+ startWebOTPListener();
81
+ } else {
82
+ stopWebOTPListener();
83
+ }
84
+ return function () {
85
+ stopWebOTPListener();
86
+ };
87
+ }, [codeString, enableSMSAutoRead, disabled, startWebOTPListener, stopWebOTPListener]);
88
+ };
89
+
90
+ export { useWebOTP };
91
+ //# sourceMappingURL=useWebOTP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWebOTP.js","sources":["../../../../src/components/CodeField/hooks/useWebOTP.ts"],"sourcesContent":["import { useCallback, useEffect, useRef } from 'react';\n\nimport { getCodeValue, isWebOTPSupported } from '../utils';\n\ntype UseWebOTPProps = {\n codeString: string;\n enableSMSAutoRead: boolean;\n disabled: boolean;\n codeLength: number;\n codeSetter: (newCode: Array<string>) => void;\n onFullCodeEnter?: (code: string) => void;\n};\n\ntype OTPTransport = 'sms';\n\ninterface OTPCredential extends Credential {\n code: string;\n}\n\ndeclare global {\n interface CredentialRequestOptions {\n otp?: {\n transport: OTPTransport[];\n };\n signal?: AbortSignal;\n }\n}\n\nconst isOTPCredential = (credential: Credential | null): credential is OTPCredential => {\n return credential !== null && 'code' in credential;\n};\n\nexport const useWebOTP = ({\n codeString,\n enableSMSAutoRead,\n disabled,\n codeLength,\n codeSetter,\n onFullCodeEnter,\n}: UseWebOTPProps) => {\n const abortControllerRef = useRef<AbortController | null>(null);\n\n const startWebOTPListener = useCallback(async () => {\n if (!enableSMSAutoRead || disabled || !isWebOTPSupported()) {\n return;\n }\n\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n }\n\n abortControllerRef.current = new AbortController();\n\n try {\n const otp = await navigator.credentials.get({\n otp: { transport: ['sms'] as OTPTransport[] },\n signal: abortControllerRef.current.signal,\n });\n\n if (otp && isOTPCredential(otp) && otp.code) {\n const otpCode = otp.code;\n\n if (otpCode.length === codeLength) {\n const newCode = getCodeValue(codeLength, otpCode);\n codeSetter(newCode);\n\n if (onFullCodeEnter) {\n onFullCodeEnter(otpCode);\n }\n }\n }\n } catch (err) {\n if (err instanceof DOMException) {\n if (err.name !== 'AbortError' && err.name !== 'NotAllowedError') {\n console.warn('Web OTP API error:', err);\n }\n } else if (err instanceof Error) {\n console.warn('Web OTP API error:', err);\n } else {\n console.warn('Unknown Web OTP API error:', err);\n }\n }\n }, [enableSMSAutoRead, disabled, codeLength, onFullCodeEnter]);\n\n const stopWebOTPListener = useCallback(() => {\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n abortControllerRef.current = null;\n }\n }, []);\n\n useEffect(() => {\n if (isWebOTPSupported() && codeString === '' && enableSMSAutoRead && !disabled) {\n startWebOTPListener();\n } else {\n stopWebOTPListener();\n }\n\n return () => {\n stopWebOTPListener();\n };\n }, [codeString, enableSMSAutoRead, disabled, startWebOTPListener, stopWebOTPListener]);\n};\n"],"names":["isOTPCredential","credential","useWebOTP","_ref","codeString","enableSMSAutoRead","disabled","codeLength","codeSetter","onFullCodeEnter","abortControllerRef","useRef","startWebOTPListener","useCallback","_asyncToGenerator","_regeneratorRuntime","mark","_callee","otp","otpCode","newCode","wrap","_callee$","_context","prev","next","isWebOTPSupported","abrupt","current","abort","AbortController","navigator","credentials","get","transport","signal","sent","code","length","getCodeValue","t0","DOMException","name","console","warn","Error","stop","stopWebOTPListener","useEffect"],"mappings":"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"}
@@ -11,7 +11,7 @@ var handleCodeError = function handleCodeError(_ref) {
11
11
  inputRefs = _ref.inputRefs,
12
12
  inputContainerRef = _ref.inputContainerRef,
13
13
  captionRef = _ref.captionRef,
14
- setCode = _ref.setCode,
14
+ setInnerValue = _ref.setInnerValue,
15
15
  codeSetter = _ref.codeSetter;
16
16
  if (!inputContainerRef.current) {
17
17
  return;
@@ -25,7 +25,7 @@ var handleCodeError = function handleCodeError(_ref) {
25
25
  var newCode = _toConsumableArray(currentCode);
26
26
  newCode.pop();
27
27
  codeSetter(newCode);
28
- setCode(currentCode);
28
+ setInnerValue(currentCode);
29
29
  (_inputContainerRef$cu = inputContainerRef.current) === null || _inputContainerRef$cu === void 0 || _inputContainerRef$cu.classList.remove(classes.codeErrorAnimation);
30
30
  setTimeout(function () {
31
31
  var _inputRefs$current, _inputRefs$current2;
@@ -1 +1 @@
1
- {"version":3,"file":"handleCodeError.js","sources":["../../../../src/components/CodeField/utils/handleCodeError.ts"],"sourcesContent":["import { Dispatch, MutableRefObject, SetStateAction } from 'react';\n\nimport type { CodeErrorBehavior } from '../CodeField.types';\nimport { classes } from '../CodeField.tokens';\n\nimport { ANIMATION_TIMEOUT } from './constants';\nimport { getCodeValue } from './initialValuesHelper';\n\ntype ValidateSymbolsArgs = {\n codeLength: number;\n codeErrorBehavior: CodeErrorBehavior;\n currentCode: Array<string>;\n inputContainerRef: MutableRefObject<HTMLDivElement | null>;\n inputRefs: MutableRefObject<Array<HTMLInputElement | null>>;\n captionRef: MutableRefObject<HTMLDivElement | null>;\n setCode: Dispatch<SetStateAction<Array<string>>>;\n codeSetter: (newCode: Array<string>) => void;\n};\n\nexport const handleCodeError = ({\n codeLength,\n codeErrorBehavior,\n currentCode,\n inputRefs,\n inputContainerRef,\n captionRef,\n setCode,\n codeSetter,\n}: ValidateSymbolsArgs) => {\n if (!inputContainerRef.current) {\n return;\n }\n\n switch (codeErrorBehavior) {\n case 'keep':\n inputContainerRef.current.classList.add(classes.codeError, classes.codeErrorAnimation);\n captionRef.current?.classList.add(classes.captionError);\n\n setTimeout(() => {\n const newCode = [...currentCode];\n\n newCode.pop();\n codeSetter(newCode);\n setCode(currentCode);\n\n inputContainerRef.current?.classList.remove(classes.codeErrorAnimation);\n\n setTimeout(() => {\n inputRefs.current[inputRefs.current.length - 1]?.setSelectionRange(0, 1);\n inputRefs.current[inputRefs.current.length - 1]?.focus();\n }, 0);\n }, ANIMATION_TIMEOUT);\n\n break;\n case 'remove-code':\n default:\n inputContainerRef.current.classList.add(\n classes.codeError,\n classes.codeErrorAnimation,\n classes.codeErrorFade,\n );\n captionRef.current?.classList.add(classes.captionError);\n\n setTimeout(() => {\n codeSetter(getCodeValue(codeLength, ''));\n\n inputRefs.current[0]?.focus();\n inputContainerRef.current?.classList.remove(\n classes.codeError,\n classes.codeErrorAnimation,\n classes.codeErrorFade,\n );\n }, ANIMATION_TIMEOUT);\n }\n};\n"],"names":["handleCodeError","_ref","_captionRef$current","_captionRef$current2","codeLength","codeErrorBehavior","currentCode","inputRefs","inputContainerRef","captionRef","setCode","codeSetter","current","classList","add","classes","codeError","codeErrorAnimation","captionError","setTimeout","_inputContainerRef$cu","newCode","_toConsumableArray","pop","remove","_inputRefs$current","_inputRefs$current2","length","setSelectionRange","focus","ANIMATION_TIMEOUT","codeErrorFade","_inputRefs$current$","_inputContainerRef$cu2","getCodeValue"],"mappings":"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"}
1
+ {"version":3,"file":"handleCodeError.js","sources":["../../../../src/components/CodeField/utils/handleCodeError.ts"],"sourcesContent":["import { Dispatch, MutableRefObject, SetStateAction } from 'react';\n\nimport type { CodeErrorBehavior } from '../CodeField.types';\nimport { classes } from '../CodeField.tokens';\n\nimport { ANIMATION_TIMEOUT } from './constants';\nimport { getCodeValue } from './initialValuesHelper';\n\ntype ValidateSymbolsArgs = {\n codeLength: number;\n codeErrorBehavior: CodeErrorBehavior;\n currentCode: Array<string>;\n inputContainerRef: MutableRefObject<HTMLDivElement | null>;\n inputRefs: MutableRefObject<Array<HTMLInputElement | null>>;\n captionRef: MutableRefObject<HTMLDivElement | null>;\n setInnerValue: Dispatch<SetStateAction<Array<string>>>;\n codeSetter: (newCode: Array<string>) => void;\n};\n\nexport const handleCodeError = ({\n codeLength,\n codeErrorBehavior,\n currentCode,\n inputRefs,\n inputContainerRef,\n captionRef,\n setInnerValue,\n codeSetter,\n}: ValidateSymbolsArgs) => {\n if (!inputContainerRef.current) {\n return;\n }\n\n switch (codeErrorBehavior) {\n case 'keep':\n inputContainerRef.current.classList.add(classes.codeError, classes.codeErrorAnimation);\n captionRef.current?.classList.add(classes.captionError);\n\n setTimeout(() => {\n const newCode = [...currentCode];\n\n newCode.pop();\n codeSetter(newCode);\n setInnerValue(currentCode);\n\n inputContainerRef.current?.classList.remove(classes.codeErrorAnimation);\n\n setTimeout(() => {\n inputRefs.current[inputRefs.current.length - 1]?.setSelectionRange(0, 1);\n inputRefs.current[inputRefs.current.length - 1]?.focus();\n }, 0);\n }, ANIMATION_TIMEOUT);\n\n break;\n case 'remove-code':\n default:\n inputContainerRef.current.classList.add(\n classes.codeError,\n classes.codeErrorAnimation,\n classes.codeErrorFade,\n );\n captionRef.current?.classList.add(classes.captionError);\n\n setTimeout(() => {\n codeSetter(getCodeValue(codeLength, ''));\n\n inputRefs.current[0]?.focus();\n inputContainerRef.current?.classList.remove(\n classes.codeError,\n classes.codeErrorAnimation,\n classes.codeErrorFade,\n );\n }, ANIMATION_TIMEOUT);\n }\n};\n"],"names":["handleCodeError","_ref","_captionRef$current","_captionRef$current2","codeLength","codeErrorBehavior","currentCode","inputRefs","inputContainerRef","captionRef","setInnerValue","codeSetter","current","classList","add","classes","codeError","codeErrorAnimation","captionError","setTimeout","_inputContainerRef$cu","newCode","_toConsumableArray","pop","remove","_inputRefs$current","_inputRefs$current2","length","setSelectionRange","focus","ANIMATION_TIMEOUT","codeErrorFade","_inputRefs$current$","_inputContainerRef$cu2","getCodeValue"],"mappings":"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"}