@elliemae/ds-form 3.5.0-rc.0 → 3.5.0-rc.11

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 (422) hide show
  1. package/dist/cjs/Checkbox/index.js +4 -1
  2. package/dist/cjs/Checkbox/index.js.map +1 -1
  3. package/dist/cjs/CheckboxGroup/DSCheckboxGroup.js +35 -24
  4. package/dist/cjs/CheckboxGroup/DSCheckboxGroup.js.map +2 -2
  5. package/dist/cjs/CheckboxGroup/defaultProps.js +4 -1
  6. package/dist/cjs/CheckboxGroup/defaultProps.js.map +1 -1
  7. package/dist/cjs/CheckboxGroup/index.js +4 -1
  8. package/dist/cjs/CheckboxGroup/index.js.map +1 -1
  9. package/dist/cjs/CheckboxGroup/props.js +12 -5
  10. package/dist/cjs/CheckboxGroup/props.js.map +2 -2
  11. package/dist/cjs/ComboBox/index.js +4 -1
  12. package/dist/cjs/ComboBox/index.js.map +1 -1
  13. package/dist/cjs/ComboBoxFreeSolo/ComboBoxFreeSolo.js +6 -3
  14. package/dist/cjs/ComboBoxFreeSolo/ComboBoxFreeSolo.js.map +2 -2
  15. package/dist/cjs/ComboBoxFreeSolo/components/MultiValueLabel.js +17 -6
  16. package/dist/cjs/ComboBoxFreeSolo/components/MultiValueLabel.js.map +1 -1
  17. package/dist/cjs/ComboBoxFreeSolo/components/MultiValueRemove.js +11 -5
  18. package/dist/cjs/ComboBoxFreeSolo/components/MultiValueRemove.js.map +1 -1
  19. package/dist/cjs/ComboBoxFreeSolo/components/SingleValue.js +10 -6
  20. package/dist/cjs/ComboBoxFreeSolo/components/SingleValue.js.map +1 -1
  21. package/dist/cjs/ComboBoxFreeSolo/components/SingleValueRemove.js +18 -14
  22. package/dist/cjs/ComboBoxFreeSolo/components/SingleValueRemove.js.map +1 -1
  23. package/dist/cjs/ComboBoxFreeSolo/index.js +4 -1
  24. package/dist/cjs/ComboBoxFreeSolo/index.js.map +1 -1
  25. package/dist/cjs/DateInput/DSDateInput.js +8 -4
  26. package/dist/cjs/DateInput/DSDateInput.js.map +1 -1
  27. package/dist/cjs/DateInput/components/DateInputImpl.js +23 -18
  28. package/dist/cjs/DateInput/components/DateInputImpl.js.map +2 -2
  29. package/dist/cjs/DateInput/components/DateInputs.js +37 -19
  30. package/dist/cjs/DateInput/components/DateInputs.js.map +2 -2
  31. package/dist/cjs/DateInput/components/utils.js +4 -1
  32. package/dist/cjs/DateInput/components/utils.js.map +2 -2
  33. package/dist/cjs/DateInput/defaultProps.js +4 -1
  34. package/dist/cjs/DateInput/defaultProps.js.map +1 -1
  35. package/dist/cjs/DateInput/index.js +4 -1
  36. package/dist/cjs/DateInput/index.js.map +1 -1
  37. package/dist/cjs/DateInput/props.js +34 -11
  38. package/dist/cjs/DateInput/props.js.map +1 -1
  39. package/dist/cjs/DateInputV2/components/DSDateInput.js +7 -4
  40. package/dist/cjs/DateInputV2/components/DSDateInput.js.map +1 -1
  41. package/dist/cjs/DateInputV2/components/DateInputs.js +34 -19
  42. package/dist/cjs/DateInputV2/components/DateInputs.js.map +2 -2
  43. package/dist/cjs/DateInputV2/components/helpers.js +4 -1
  44. package/dist/cjs/DateInputV2/components/helpers.js.map +1 -1
  45. package/dist/cjs/DateInputV2/components/props.js +28 -9
  46. package/dist/cjs/DateInputV2/components/props.js.map +1 -1
  47. package/dist/cjs/DateInputV2/components/propsTypes.js +4 -1
  48. package/dist/cjs/DateInputV2/components/propsTypes.js.map +2 -2
  49. package/dist/cjs/DateInputV2/components/styled.js +4 -1
  50. package/dist/cjs/DateInputV2/components/styled.js.map +1 -1
  51. package/dist/cjs/DateInputV2/components/utils.js +8 -2
  52. package/dist/cjs/DateInputV2/components/utils.js.map +2 -2
  53. package/dist/cjs/DateInputV2/index.js +4 -1
  54. package/dist/cjs/DateInputV2/index.js.map +1 -1
  55. package/dist/cjs/ExpandableInput/DSExpandableInput.js +9 -5
  56. package/dist/cjs/ExpandableInput/DSExpandableInput.js.map +1 -1
  57. package/dist/cjs/ExpandableInput/ExpandableInputImpl.js +20 -14
  58. package/dist/cjs/ExpandableInput/ExpandableInputImpl.js.map +2 -2
  59. package/dist/cjs/ExpandableInput/index.js +4 -1
  60. package/dist/cjs/ExpandableInput/index.js.map +1 -1
  61. package/dist/cjs/FloatingLabelInput/DSFloatingLabelInput.js +6 -3
  62. package/dist/cjs/FloatingLabelInput/DSFloatingLabelInput.js.map +1 -1
  63. package/dist/cjs/FloatingLabelInput/FloatingLabelInputImpl.js +35 -17
  64. package/dist/cjs/FloatingLabelInput/FloatingLabelInputImpl.js.map +2 -2
  65. package/dist/cjs/FloatingLabelInput/getSvgPath.js +4 -1
  66. package/dist/cjs/FloatingLabelInput/getSvgPath.js.map +1 -1
  67. package/dist/cjs/FloatingLabelInput/index.js +4 -1
  68. package/dist/cjs/FloatingLabelInput/index.js.map +1 -1
  69. package/dist/cjs/FormItem/DSFormItemLayout.js +68 -35
  70. package/dist/cjs/FormItem/DSFormItemLayout.js.map +1 -1
  71. package/dist/cjs/FormItem/Error/DSError.js +9 -5
  72. package/dist/cjs/FormItem/Error/DSError.js.map +1 -1
  73. package/dist/cjs/FormItem/Feedback.js +9 -5
  74. package/dist/cjs/FormItem/Feedback.js.map +1 -1
  75. package/dist/cjs/FormItem/Label/DSLabel.js +19 -10
  76. package/dist/cjs/FormItem/Label/DSLabel.js.map +2 -2
  77. package/dist/cjs/FormItem/Suffix/Suffix.js +4 -1
  78. package/dist/cjs/FormItem/Suffix/Suffix.js.map +1 -1
  79. package/dist/cjs/FormItem/ValidationFieldWrapper.js +4 -1
  80. package/dist/cjs/FormItem/ValidationFieldWrapper.js.map +1 -1
  81. package/dist/cjs/FormItem/defaultProps.js +4 -1
  82. package/dist/cjs/FormItem/defaultProps.js.map +1 -1
  83. package/dist/cjs/FormItem/index.js +4 -1
  84. package/dist/cjs/FormItem/index.js.map +1 -1
  85. package/dist/cjs/FormItem/props.js +10 -3
  86. package/dist/cjs/FormItem/props.js.map +1 -1
  87. package/dist/cjs/FormItem/variants.js +4 -1
  88. package/dist/cjs/FormItem/variants.js.map +1 -1
  89. package/dist/cjs/Input/DSInput.js +4 -1
  90. package/dist/cjs/Input/DSInput.js.map +1 -1
  91. package/dist/cjs/Input/InputAddonWrapper.js +4 -1
  92. package/dist/cjs/Input/InputAddonWrapper.js.map +1 -1
  93. package/dist/cjs/Input/InputImpl.js +4 -1
  94. package/dist/cjs/Input/InputImpl.js.map +1 -1
  95. package/dist/cjs/Input/index.js +4 -1
  96. package/dist/cjs/Input/index.js.map +1 -1
  97. package/dist/cjs/InputGroup/AddonWrapper.js +18 -5
  98. package/dist/cjs/InputGroup/AddonWrapper.js.map +1 -1
  99. package/dist/cjs/InputGroup/DSInputGroup.js +9 -5
  100. package/dist/cjs/InputGroup/DSInputGroup.js.map +1 -1
  101. package/dist/cjs/InputGroup/defaultProps.js +4 -1
  102. package/dist/cjs/InputGroup/defaultProps.js.map +1 -1
  103. package/dist/cjs/InputGroup/index.js +4 -1
  104. package/dist/cjs/InputGroup/index.js.map +1 -1
  105. package/dist/cjs/InputGroup/props.js +13 -4
  106. package/dist/cjs/InputGroup/props.js.map +1 -1
  107. package/dist/cjs/InputMask/DSInputMask.js +19 -8
  108. package/dist/cjs/InputMask/DSInputMask.js.map +1 -1
  109. package/dist/cjs/InputMask/DSInputMaskDeprecated.js +43 -33
  110. package/dist/cjs/InputMask/DSInputMaskDeprecated.js.map +2 -2
  111. package/dist/cjs/InputMask/InputMaskContext.js +4 -1
  112. package/dist/cjs/InputMask/InputMaskContext.js.map +2 -2
  113. package/dist/cjs/InputMask/MaskPipes.js +4 -1
  114. package/dist/cjs/InputMask/MaskPipes.js.map +1 -1
  115. package/dist/cjs/InputMask/MaskTypes.js +4 -1
  116. package/dist/cjs/InputMask/MaskTypes.js.map +1 -1
  117. package/dist/cjs/InputMask/addons/AutoCorrectedDatePipe.js +16 -4
  118. package/dist/cjs/InputMask/addons/AutoCorrectedDatePipe.js.map +1 -1
  119. package/dist/cjs/InputMask/defaultProps.js +4 -1
  120. package/dist/cjs/InputMask/defaultProps.js.map +1 -1
  121. package/dist/cjs/InputMask/index.js +4 -1
  122. package/dist/cjs/InputMask/index.js.map +1 -1
  123. package/dist/cjs/InputMask/mask_types/DateInputMask.js +54 -34
  124. package/dist/cjs/InputMask/mask_types/DateInputMask.js.map +1 -1
  125. package/dist/cjs/InputMask/mask_types/DateTimeInputMask.js +54 -34
  126. package/dist/cjs/InputMask/mask_types/DateTimeInputMask.js.map +1 -1
  127. package/dist/cjs/InputMask/mask_types/DictionaryInputMask.js +59 -35
  128. package/dist/cjs/InputMask/mask_types/DictionaryInputMask.js.map +1 -1
  129. package/dist/cjs/InputMask/mask_types/NumberInputMask.js +76 -57
  130. package/dist/cjs/InputMask/mask_types/NumberInputMask.js.map +1 -1
  131. package/dist/cjs/InputMask/mask_types/PhoneInputMask.js +54 -34
  132. package/dist/cjs/InputMask/mask_types/PhoneInputMask.js.map +1 -1
  133. package/dist/cjs/InputMask/mask_types/PhoneInternationalInputMask.js +54 -34
  134. package/dist/cjs/InputMask/mask_types/PhoneInternationalInputMask.js.map +1 -1
  135. package/dist/cjs/InputMask/mask_types/SsnInputMask.js +54 -34
  136. package/dist/cjs/InputMask/mask_types/SsnInputMask.js.map +1 -1
  137. package/dist/cjs/InputMask/mask_types/UsZipCodeInputMask.js +50 -34
  138. package/dist/cjs/InputMask/mask_types/UsZipCodeInputMask.js.map +1 -1
  139. package/dist/cjs/InputMask/mask_types/ZipCodeSearchInputMask.js +54 -34
  140. package/dist/cjs/InputMask/mask_types/ZipCodeSearchInputMask.js.map +1 -1
  141. package/dist/cjs/InputMask/mask_types/index.js +15 -12
  142. package/dist/cjs/InputMask/mask_types/index.js.map +1 -1
  143. package/dist/cjs/InputMask/props.js +65 -22
  144. package/dist/cjs/InputMask/props.js.map +1 -1
  145. package/dist/cjs/InputMask/types/index.js +4 -1
  146. package/dist/cjs/InputMask/types/index.js.map +1 -1
  147. package/dist/cjs/InputMask/utils/setCaretPosition.js +4 -1
  148. package/dist/cjs/InputMask/utils/setCaretPosition.js.map +1 -1
  149. package/dist/cjs/InputProtected/DSInputProtected.js +38 -31
  150. package/dist/cjs/InputProtected/DSInputProtected.js.map +1 -1
  151. package/dist/cjs/InputProtected/defaultProps.js +4 -1
  152. package/dist/cjs/InputProtected/defaultProps.js.map +1 -1
  153. package/dist/cjs/InputProtected/index.js +4 -1
  154. package/dist/cjs/InputProtected/index.js.map +1 -1
  155. package/dist/cjs/InputProtected/options.js +4 -1
  156. package/dist/cjs/InputProtected/options.js.map +1 -1
  157. package/dist/cjs/InputProtected/props.js +17 -6
  158. package/dist/cjs/InputProtected/props.js.map +1 -1
  159. package/dist/cjs/LargeInputText/DSLargeInputText.js +67 -46
  160. package/dist/cjs/LargeInputText/DSLargeInputText.js.map +1 -1
  161. package/dist/cjs/LargeInputText/defaultProps.js +4 -1
  162. package/dist/cjs/LargeInputText/defaultProps.js.map +1 -1
  163. package/dist/cjs/LargeInputText/index.js +4 -1
  164. package/dist/cjs/LargeInputText/index.js.map +1 -1
  165. package/dist/cjs/LargeInputText/props.js +46 -15
  166. package/dist/cjs/LargeInputText/props.js.map +1 -1
  167. package/dist/cjs/MenuItem/components/MenuItem/index.js +4 -1
  168. package/dist/cjs/MenuItem/components/MenuItem/index.js.map +1 -1
  169. package/dist/cjs/MenuItem/components/MenuItem/styled.js +4 -1
  170. package/dist/cjs/MenuItem/components/MenuItem/styled.js.map +1 -1
  171. package/dist/cjs/MenuItem/components/MultiMenuItem/MultiMenuItem.js +4 -1
  172. package/dist/cjs/MenuItem/components/MultiMenuItem/MultiMenuItem.js.map +1 -1
  173. package/dist/cjs/MenuItem/components/MultiMenuItem/styled.js +4 -1
  174. package/dist/cjs/MenuItem/components/MultiMenuItem/styled.js.map +1 -1
  175. package/dist/cjs/MenuItem/components/Section/index.js +4 -1
  176. package/dist/cjs/MenuItem/components/Section/index.js.map +1 -1
  177. package/dist/cjs/MenuItem/components/Section/props.js +4 -1
  178. package/dist/cjs/MenuItem/components/Section/props.js.map +1 -1
  179. package/dist/cjs/MenuItem/components/Section/styled.js +4 -1
  180. package/dist/cjs/MenuItem/components/Section/styled.js.map +1 -1
  181. package/dist/cjs/MenuItem/components/Separator/index.js +4 -1
  182. package/dist/cjs/MenuItem/components/Separator/index.js.map +1 -1
  183. package/dist/cjs/MenuItem/components/Separator/styled.js +4 -1
  184. package/dist/cjs/MenuItem/components/Separator/styled.js.map +1 -1
  185. package/dist/cjs/MenuItem/components/SingleMenuItem/SingleMenuItem.js +4 -1
  186. package/dist/cjs/MenuItem/components/SingleMenuItem/SingleMenuItem.js.map +1 -1
  187. package/dist/cjs/MenuItem/components/SubmenuItem/index.js +4 -1
  188. package/dist/cjs/MenuItem/components/SubmenuItem/index.js.map +1 -1
  189. package/dist/cjs/MenuItem/components/SubmenuItem/styled.js +4 -1
  190. package/dist/cjs/MenuItem/components/SubmenuItem/styled.js.map +1 -1
  191. package/dist/cjs/MenuItem/components/index.js +4 -1
  192. package/dist/cjs/MenuItem/components/index.js.map +1 -1
  193. package/dist/cjs/MenuItem/components/styled.js +4 -1
  194. package/dist/cjs/MenuItem/components/styled.js.map +1 -1
  195. package/dist/cjs/MenuItem/index.js +4 -1
  196. package/dist/cjs/MenuItem/index.js.map +1 -1
  197. package/dist/cjs/MenuItem/props.js +4 -1
  198. package/dist/cjs/MenuItem/props.js.map +1 -1
  199. package/dist/cjs/Radio/Circle.js +14 -10
  200. package/dist/cjs/Radio/Circle.js.map +1 -1
  201. package/dist/cjs/Radio/DSRadio.js +68 -50
  202. package/dist/cjs/Radio/DSRadio.js.map +1 -1
  203. package/dist/cjs/Radio/index.js +4 -1
  204. package/dist/cjs/Radio/index.js.map +1 -1
  205. package/dist/cjs/RadioGroup/DSRadioGroup.js +36 -25
  206. package/dist/cjs/RadioGroup/DSRadioGroup.js.map +2 -2
  207. package/dist/cjs/RadioGroup/defaultProps.js +4 -1
  208. package/dist/cjs/RadioGroup/defaultProps.js.map +1 -1
  209. package/dist/cjs/RadioGroup/index.js +4 -1
  210. package/dist/cjs/RadioGroup/index.js.map +1 -1
  211. package/dist/cjs/RadioGroup/props.js +4 -1
  212. package/dist/cjs/RadioGroup/props.js.map +2 -2
  213. package/dist/cjs/RequiredMark/RequiredMark.js +13 -8
  214. package/dist/cjs/RequiredMark/RequiredMark.js.map +1 -1
  215. package/dist/cjs/RequiredMark/index.js +4 -1
  216. package/dist/cjs/RequiredMark/index.js.map +1 -1
  217. package/dist/cjs/SearchBox/index.js +4 -1
  218. package/dist/cjs/SearchBox/index.js.map +1 -1
  219. package/dist/cjs/TextBox/index.js +4 -1
  220. package/dist/cjs/TextBox/index.js.map +1 -1
  221. package/dist/cjs/TimeInput/DSTimeInput.js +22 -9
  222. package/dist/cjs/TimeInput/DSTimeInput.js.map +1 -1
  223. package/dist/cjs/TimeInput/TimeInputImpl.js +24 -17
  224. package/dist/cjs/TimeInput/TimeInputImpl.js.map +2 -2
  225. package/dist/cjs/TimeInput/TimeInputs.js +28 -19
  226. package/dist/cjs/TimeInput/TimeInputs.js.map +2 -2
  227. package/dist/cjs/TimeInput/index.js +4 -1
  228. package/dist/cjs/TimeInput/index.js.map +1 -1
  229. package/dist/cjs/TimeInput/utils.js +4 -1
  230. package/dist/cjs/TimeInput/utils.js.map +2 -2
  231. package/dist/cjs/Toggle/DSToggle.js +6 -3
  232. package/dist/cjs/Toggle/DSToggle.js.map +1 -1
  233. package/dist/cjs/Toggle/DSToggleImpl.js +6 -2
  234. package/dist/cjs/Toggle/DSToggleImpl.js.map +2 -2
  235. package/dist/cjs/Toggle/DSToggleRender.js +49 -36
  236. package/dist/cjs/Toggle/DSToggleRender.js.map +1 -1
  237. package/dist/cjs/Toggle/index.js +4 -1
  238. package/dist/cjs/Toggle/index.js.map +1 -1
  239. package/dist/cjs/Toggle/props.js +4 -1
  240. package/dist/cjs/Toggle/props.js.map +2 -2
  241. package/dist/cjs/Toggle/toggleHelper.js +4 -1
  242. package/dist/cjs/Toggle/toggleHelper.js.map +1 -1
  243. package/dist/cjs/index.js +4 -1
  244. package/dist/cjs/index.js.map +1 -1
  245. package/dist/esm/Checkbox/index.js.map +1 -1
  246. package/dist/esm/CheckboxGroup/DSCheckboxGroup.js +31 -23
  247. package/dist/esm/CheckboxGroup/DSCheckboxGroup.js.map +2 -2
  248. package/dist/esm/CheckboxGroup/defaultProps.js.map +1 -1
  249. package/dist/esm/CheckboxGroup/index.js.map +1 -1
  250. package/dist/esm/CheckboxGroup/props.js +8 -4
  251. package/dist/esm/CheckboxGroup/props.js.map +1 -1
  252. package/dist/esm/ComboBox/index.js.map +1 -1
  253. package/dist/esm/ComboBoxFreeSolo/ComboBoxFreeSolo.js +2 -2
  254. package/dist/esm/ComboBoxFreeSolo/ComboBoxFreeSolo.js.map +1 -1
  255. package/dist/esm/ComboBoxFreeSolo/components/MultiValueLabel.js +13 -5
  256. package/dist/esm/ComboBoxFreeSolo/components/MultiValueLabel.js.map +1 -1
  257. package/dist/esm/ComboBoxFreeSolo/components/MultiValueRemove.js +7 -4
  258. package/dist/esm/ComboBoxFreeSolo/components/MultiValueRemove.js.map +1 -1
  259. package/dist/esm/ComboBoxFreeSolo/components/SingleValue.js +6 -5
  260. package/dist/esm/ComboBoxFreeSolo/components/SingleValue.js.map +1 -1
  261. package/dist/esm/ComboBoxFreeSolo/components/SingleValueRemove.js +14 -13
  262. package/dist/esm/ComboBoxFreeSolo/components/SingleValueRemove.js.map +1 -1
  263. package/dist/esm/ComboBoxFreeSolo/index.js.map +1 -1
  264. package/dist/esm/DateInput/DSDateInput.js +4 -3
  265. package/dist/esm/DateInput/DSDateInput.js.map +1 -1
  266. package/dist/esm/DateInput/components/DateInputImpl.js +19 -17
  267. package/dist/esm/DateInput/components/DateInputImpl.js.map +1 -1
  268. package/dist/esm/DateInput/components/DateInputs.js +33 -18
  269. package/dist/esm/DateInput/components/DateInputs.js.map +2 -2
  270. package/dist/esm/DateInput/components/utils.js.map +1 -1
  271. package/dist/esm/DateInput/defaultProps.js.map +1 -1
  272. package/dist/esm/DateInput/index.js.map +1 -1
  273. package/dist/esm/DateInput/props.js +30 -10
  274. package/dist/esm/DateInput/props.js.map +1 -1
  275. package/dist/esm/DateInputV2/components/DSDateInput.js +3 -3
  276. package/dist/esm/DateInputV2/components/DSDateInput.js.map +1 -1
  277. package/dist/esm/DateInputV2/components/DateInputs.js +30 -18
  278. package/dist/esm/DateInputV2/components/DateInputs.js.map +2 -2
  279. package/dist/esm/DateInputV2/components/helpers.js.map +1 -1
  280. package/dist/esm/DateInputV2/components/props.js +24 -8
  281. package/dist/esm/DateInputV2/components/props.js.map +1 -1
  282. package/dist/esm/DateInputV2/components/propsTypes.js.map +1 -1
  283. package/dist/esm/DateInputV2/components/styled.js.map +1 -1
  284. package/dist/esm/DateInputV2/components/utils.js +4 -1
  285. package/dist/esm/DateInputV2/components/utils.js.map +1 -1
  286. package/dist/esm/DateInputV2/index.js.map +1 -1
  287. package/dist/esm/ExpandableInput/DSExpandableInput.js +5 -4
  288. package/dist/esm/ExpandableInput/DSExpandableInput.js.map +1 -1
  289. package/dist/esm/ExpandableInput/ExpandableInputImpl.js +16 -13
  290. package/dist/esm/ExpandableInput/ExpandableInputImpl.js.map +2 -2
  291. package/dist/esm/ExpandableInput/index.js.map +1 -1
  292. package/dist/esm/FloatingLabelInput/DSFloatingLabelInput.js +2 -2
  293. package/dist/esm/FloatingLabelInput/DSFloatingLabelInput.js.map +1 -1
  294. package/dist/esm/FloatingLabelInput/FloatingLabelInputImpl.js +31 -16
  295. package/dist/esm/FloatingLabelInput/FloatingLabelInputImpl.js.map +2 -2
  296. package/dist/esm/FloatingLabelInput/getSvgPath.js.map +1 -1
  297. package/dist/esm/FloatingLabelInput/index.js.map +1 -1
  298. package/dist/esm/FormItem/DSFormItemLayout.js +64 -34
  299. package/dist/esm/FormItem/DSFormItemLayout.js.map +1 -1
  300. package/dist/esm/FormItem/Error/DSError.js +5 -4
  301. package/dist/esm/FormItem/Error/DSError.js.map +1 -1
  302. package/dist/esm/FormItem/Feedback.js +5 -4
  303. package/dist/esm/FormItem/Feedback.js.map +1 -1
  304. package/dist/esm/FormItem/Label/DSLabel.js +15 -9
  305. package/dist/esm/FormItem/Label/DSLabel.js.map +1 -1
  306. package/dist/esm/FormItem/Suffix/Suffix.js.map +1 -1
  307. package/dist/esm/FormItem/ValidationFieldWrapper.js.map +1 -1
  308. package/dist/esm/FormItem/defaultProps.js.map +1 -1
  309. package/dist/esm/FormItem/index.js.map +2 -2
  310. package/dist/esm/FormItem/props.js +6 -2
  311. package/dist/esm/FormItem/props.js.map +1 -1
  312. package/dist/esm/FormItem/variants.js.map +1 -1
  313. package/dist/esm/Input/DSInput.js.map +1 -1
  314. package/dist/esm/Input/InputAddonWrapper.js.map +1 -1
  315. package/dist/esm/Input/InputImpl.js.map +1 -1
  316. package/dist/esm/Input/index.js.map +2 -2
  317. package/dist/esm/InputGroup/AddonWrapper.js +14 -4
  318. package/dist/esm/InputGroup/AddonWrapper.js.map +1 -1
  319. package/dist/esm/InputGroup/DSInputGroup.js +5 -4
  320. package/dist/esm/InputGroup/DSInputGroup.js.map +1 -1
  321. package/dist/esm/InputGroup/defaultProps.js.map +1 -1
  322. package/dist/esm/InputGroup/index.js.map +2 -2
  323. package/dist/esm/InputGroup/props.js +9 -3
  324. package/dist/esm/InputGroup/props.js.map +1 -1
  325. package/dist/esm/InputMask/DSInputMask.js +15 -7
  326. package/dist/esm/InputMask/DSInputMask.js.map +1 -1
  327. package/dist/esm/InputMask/DSInputMaskDeprecated.js +39 -32
  328. package/dist/esm/InputMask/DSInputMaskDeprecated.js.map +2 -2
  329. package/dist/esm/InputMask/InputMaskContext.js.map +2 -2
  330. package/dist/esm/InputMask/MaskPipes.js.map +1 -1
  331. package/dist/esm/InputMask/MaskTypes.js.map +1 -1
  332. package/dist/esm/InputMask/addons/AutoCorrectedDatePipe.js +12 -3
  333. package/dist/esm/InputMask/addons/AutoCorrectedDatePipe.js.map +1 -1
  334. package/dist/esm/InputMask/defaultProps.js.map +1 -1
  335. package/dist/esm/InputMask/index.js.map +1 -1
  336. package/dist/esm/InputMask/mask_types/DateInputMask.js +50 -33
  337. package/dist/esm/InputMask/mask_types/DateInputMask.js.map +1 -1
  338. package/dist/esm/InputMask/mask_types/DateTimeInputMask.js +50 -33
  339. package/dist/esm/InputMask/mask_types/DateTimeInputMask.js.map +1 -1
  340. package/dist/esm/InputMask/mask_types/DictionaryInputMask.js +55 -34
  341. package/dist/esm/InputMask/mask_types/DictionaryInputMask.js.map +1 -1
  342. package/dist/esm/InputMask/mask_types/NumberInputMask.js +72 -56
  343. package/dist/esm/InputMask/mask_types/NumberInputMask.js.map +1 -1
  344. package/dist/esm/InputMask/mask_types/PhoneInputMask.js +50 -33
  345. package/dist/esm/InputMask/mask_types/PhoneInputMask.js.map +1 -1
  346. package/dist/esm/InputMask/mask_types/PhoneInternationalInputMask.js +50 -33
  347. package/dist/esm/InputMask/mask_types/PhoneInternationalInputMask.js.map +1 -1
  348. package/dist/esm/InputMask/mask_types/SsnInputMask.js +50 -33
  349. package/dist/esm/InputMask/mask_types/SsnInputMask.js.map +1 -1
  350. package/dist/esm/InputMask/mask_types/UsZipCodeInputMask.js +46 -33
  351. package/dist/esm/InputMask/mask_types/UsZipCodeInputMask.js.map +1 -1
  352. package/dist/esm/InputMask/mask_types/ZipCodeSearchInputMask.js +50 -33
  353. package/dist/esm/InputMask/mask_types/ZipCodeSearchInputMask.js.map +1 -1
  354. package/dist/esm/InputMask/mask_types/index.js +11 -11
  355. package/dist/esm/InputMask/mask_types/index.js.map +1 -1
  356. package/dist/esm/InputMask/props.js +61 -21
  357. package/dist/esm/InputMask/props.js.map +1 -1
  358. package/dist/esm/InputMask/types/index.js.map +1 -1
  359. package/dist/esm/InputMask/utils/setCaretPosition.js.map +1 -1
  360. package/dist/esm/InputProtected/DSInputProtected.js +34 -30
  361. package/dist/esm/InputProtected/DSInputProtected.js.map +1 -1
  362. package/dist/esm/InputProtected/defaultProps.js.map +1 -1
  363. package/dist/esm/InputProtected/index.js.map +1 -1
  364. package/dist/esm/InputProtected/options.js.map +1 -1
  365. package/dist/esm/InputProtected/props.js +13 -5
  366. package/dist/esm/InputProtected/props.js.map +1 -1
  367. package/dist/esm/LargeInputText/DSLargeInputText.js +63 -45
  368. package/dist/esm/LargeInputText/DSLargeInputText.js.map +1 -1
  369. package/dist/esm/LargeInputText/defaultProps.js.map +1 -1
  370. package/dist/esm/LargeInputText/index.js.map +2 -2
  371. package/dist/esm/LargeInputText/props.js +42 -14
  372. package/dist/esm/LargeInputText/props.js.map +1 -1
  373. package/dist/esm/MenuItem/components/MenuItem/index.js.map +1 -1
  374. package/dist/esm/MenuItem/components/MenuItem/styled.js.map +1 -1
  375. package/dist/esm/MenuItem/components/MultiMenuItem/MultiMenuItem.js.map +1 -1
  376. package/dist/esm/MenuItem/components/MultiMenuItem/styled.js.map +1 -1
  377. package/dist/esm/MenuItem/components/Section/index.js.map +1 -1
  378. package/dist/esm/MenuItem/components/Section/props.js.map +1 -1
  379. package/dist/esm/MenuItem/components/Section/styled.js.map +1 -1
  380. package/dist/esm/MenuItem/components/Separator/index.js.map +1 -1
  381. package/dist/esm/MenuItem/components/Separator/styled.js.map +1 -1
  382. package/dist/esm/MenuItem/components/SingleMenuItem/SingleMenuItem.js.map +1 -1
  383. package/dist/esm/MenuItem/components/SubmenuItem/index.js.map +1 -1
  384. package/dist/esm/MenuItem/components/SubmenuItem/styled.js.map +1 -1
  385. package/dist/esm/MenuItem/components/index.js.map +1 -1
  386. package/dist/esm/MenuItem/components/styled.js.map +1 -1
  387. package/dist/esm/MenuItem/index.js.map +1 -1
  388. package/dist/esm/MenuItem/props.js.map +1 -1
  389. package/dist/esm/Radio/Circle.js +10 -9
  390. package/dist/esm/Radio/Circle.js.map +1 -1
  391. package/dist/esm/Radio/DSRadio.js +64 -49
  392. package/dist/esm/Radio/DSRadio.js.map +1 -1
  393. package/dist/esm/Radio/index.js.map +1 -1
  394. package/dist/esm/RadioGroup/DSRadioGroup.js +32 -24
  395. package/dist/esm/RadioGroup/DSRadioGroup.js.map +2 -2
  396. package/dist/esm/RadioGroup/defaultProps.js.map +1 -1
  397. package/dist/esm/RadioGroup/index.js.map +1 -1
  398. package/dist/esm/RadioGroup/props.js.map +1 -1
  399. package/dist/esm/RequiredMark/RequiredMark.js +9 -7
  400. package/dist/esm/RequiredMark/RequiredMark.js.map +1 -1
  401. package/dist/esm/RequiredMark/index.js.map +1 -1
  402. package/dist/esm/SearchBox/index.js.map +1 -1
  403. package/dist/esm/TextBox/index.js.map +1 -1
  404. package/dist/esm/TimeInput/DSTimeInput.js +18 -8
  405. package/dist/esm/TimeInput/DSTimeInput.js.map +1 -1
  406. package/dist/esm/TimeInput/TimeInputImpl.js +20 -16
  407. package/dist/esm/TimeInput/TimeInputImpl.js.map +1 -1
  408. package/dist/esm/TimeInput/TimeInputs.js +24 -18
  409. package/dist/esm/TimeInput/TimeInputs.js.map +2 -2
  410. package/dist/esm/TimeInput/index.js.map +1 -1
  411. package/dist/esm/TimeInput/utils.js.map +1 -1
  412. package/dist/esm/Toggle/DSToggle.js +2 -2
  413. package/dist/esm/Toggle/DSToggle.js.map +1 -1
  414. package/dist/esm/Toggle/DSToggleImpl.js +2 -1
  415. package/dist/esm/Toggle/DSToggleImpl.js.map +2 -2
  416. package/dist/esm/Toggle/DSToggleRender.js +45 -35
  417. package/dist/esm/Toggle/DSToggleRender.js.map +1 -1
  418. package/dist/esm/Toggle/index.js.map +2 -2
  419. package/dist/esm/Toggle/props.js.map +1 -1
  420. package/dist/esm/Toggle/toggleHelper.js.map +1 -1
  421. package/dist/esm/index.js.map +1 -1
  422. package/package.json +12 -12
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/InputMask/mask_types/DateTimeInputMask.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-statements */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport { DSTextBox } from '../../TextBox';\nimport { TCharsToAdd } from '../types';\nimport { setCaretPosition } from '../utils/setCaretPosition';\n\nconst conformValue = (\n rawValue: string,\n cursorPos: number,\n lastkeycode: number,\n) => {\n const nextMaskedValue = rawValue\n .split('')\n .filter((char) => char >= '0' && char <= '9')\n .slice(0, 12);\n\n while (nextMaskedValue.length > 8 && !nextMaskedValue[8].match(/[0-2]/))\n nextMaskedValue.splice(8, 1);\n while (nextMaskedValue.length > 10 && !nextMaskedValue[10].match(/[0-5]/))\n nextMaskedValue.splice(10, 1);\n\n let maskedPos = 0;\n for (let i = 0; i < cursorPos; i += 1) {\n if (nextMaskedValue[maskedPos] === rawValue[i]) maskedPos += 1;\n }\n\n // list of [string to add, position to add]\n const charactersToAdd: TCharsToAdd = [\n ['/', 2],\n ['/', 5],\n [' ', 10],\n [':', 13],\n ];\n\n charactersToAdd.forEach(([chars, pos]) => {\n if (nextMaskedValue.length > pos) {\n nextMaskedValue.splice(pos, 0, chars);\n if (maskedPos >= pos) maskedPos += chars.length;\n }\n });\n\n if (lastkeycode !== 8 && maskedPos < nextMaskedValue.length) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos) maskedPos += chars.length;\n });\n } else if (lastkeycode === 8 && maskedPos) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos + 1) maskedPos -= chars.length;\n });\n }\n\n return { nextMaskedValue: nextMaskedValue.join(''), maskedPos };\n};\n\nconst DateTimeInputMask = ({\n focus,\n setFocus,\n setRawMask,\n cursorPosition,\n setCursorPosition,\n lastkey,\n setLastkey,\n setRawValue,\n style,\n disabled,\n className,\n name,\n maxLength,\n minLength,\n fluidWidth,\n placeholder,\n onKeyDown,\n onClick,\n onChange,\n onFocus,\n onBlur,\n onPaste,\n onKeyUp,\n hasError,\n readOnly,\n type,\n innerRef,\n clearable = false,\n leftComponent,\n rightComponent,\n value,\n ...rest\n}) => {\n const inputRef = useRef();\n const [maskedValue, setMaskedValue] = useState(value);\n\n const conform = useCallback(\n ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {\n const { nextMaskedValue, maskedPos } = conformValue(\n rawValue,\n cursorPos,\n lastkeycode,\n );\n const event = {\n target: {\n value: nextMaskedValue,\n originalValue: rawValue,\n },\n };\n if (onChange && nextMaskedValue !== maskedValue) onChange(event);\n\n setMaskedValue(nextMaskedValue);\n setRawValue(nextMaskedValue);\n\n if (shouldUpdateCursorPos) setCursorPosition({ current: maskedPos });\n },\n [maskedValue, onChange],\n );\n\n const handleOnChange = useCallback(\n (e) => {\n const { value: rawValue, selectionEnd } = e.target;\n setRawMask(rawValue);\n setRawValue(rawValue);\n setCursorPosition({ current: selectionEnd });\n setFocus(true);\n },\n [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code],\n );\n\n useLayoutEffect(() => {\n if (focus) setCaretPosition(inputRef.current, cursorPosition.current);\n }, [focus, cursorPosition]);\n\n useLayoutEffect(() => {\n // if the value changes, then re-conform the mask\n conform({\n rawValue: value,\n cursorPos: cursorPosition.current,\n lastkeycode: lastkey.code,\n shouldUpdateCursorPos: focus,\n });\n }, [focus, value, cursorPosition.current]);\n\n const handleKeyDown = useCallback(\n (e) => {\n e.stopPropagation();\n setLastkey({ key: e.key, code: e.keyCode });\n onKeyDown(e);\n },\n [onKeyDown],\n );\n\n const handleBlur = useCallback(\n (e) => {\n setFocus(false);\n onBlur(e);\n },\n [onBlur],\n );\n\n return (\n <DSTextBox\n {...rest}\n className={className}\n clearable={clearable}\n disabled={disabled}\n fluidWidth={fluidWidth}\n hasError={hasError}\n innerRef={(ref) => {\n inputRef.current = ref;\n if (innerRef) innerRef(ref);\n }}\n isActive={focus}\n leftComponent={leftComponent}\n maxLength={maxLength}\n minLength={minLength}\n name={name}\n onBlur={handleBlur}\n onChange={handleOnChange}\n onClick={onClick}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={onKeyUp}\n onPaste={onPaste}\n placeholder={placeholder}\n readOnly={readOnly}\n rightComponent={rightComponent}\n style={style}\n type={type}\n value={maskedValue}\n />\n );\n};\n\nexport { DateTimeInputMask };\nexport default DateTimeInputMask;\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,6 @@
1
1
  import * as React from "react";
2
- import React2, { useCallback, useLayoutEffect, useRef, useState } from "react";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { useCallback, useLayoutEffect, useRef, useState } from "react";
3
4
  import { DSTextBox } from "../../TextBox";
4
5
  import { setCaretPosition } from "../utils/setCaretPosition";
5
6
  const startsWith = (a, b, ignoreCase) => {
@@ -13,7 +14,9 @@ const conformValue = (rawValue, cursorPos, lastkeycode, allowedWords, ignoreCase
13
14
  let nextMaskedValue = "";
14
15
  let currentPosibleWords = allowedWords;
15
16
  for (let i = 0; i < rawValue.length; i += 1) {
16
- const matchingWords = currentPosibleWords.filter((word) => startsWith(word, nextMaskedValue + rawValue[i], ignoreCase));
17
+ const matchingWords = currentPosibleWords.filter(
18
+ (word) => startsWith(word, nextMaskedValue + rawValue[i], ignoreCase)
19
+ );
17
20
  if (matchingWords.length) {
18
21
  nextMaskedValue += rawValue[i];
19
22
  currentPosibleWords = matchingWords;
@@ -60,28 +63,40 @@ const DictionaryInputMask = ({
60
63
  }) => {
61
64
  const inputRef = useRef();
62
65
  const [maskedValue, setMaskedValue] = useState(value);
63
- const conform = useCallback(({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {
64
- const { nextMaskedValue, maskedPos } = conformValue(rawValue, cursorPos, lastkeycode, allowedWords, ignoreCase);
65
- const event = {
66
- target: {
67
- value: nextMaskedValue,
68
- originalValue: rawValue
69
- }
70
- };
71
- if (onChange && nextMaskedValue !== maskedValue)
72
- onChange(event);
73
- setMaskedValue(nextMaskedValue);
74
- setRawValue(nextMaskedValue);
75
- if (shouldUpdateCursorPos)
76
- setCursorPosition({ current: maskedPos });
77
- }, [maskedValue, onChange]);
78
- const handleOnChange = useCallback((e) => {
79
- const { value: rawValue, selectionEnd } = e.target;
80
- setRawMask(rawValue);
81
- setRawValue(rawValue);
82
- setCursorPosition({ current: selectionEnd });
83
- setFocus(true);
84
- }, [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code]);
66
+ const conform = useCallback(
67
+ ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {
68
+ const { nextMaskedValue, maskedPos } = conformValue(
69
+ rawValue,
70
+ cursorPos,
71
+ lastkeycode,
72
+ allowedWords,
73
+ ignoreCase
74
+ );
75
+ const event = {
76
+ target: {
77
+ value: nextMaskedValue,
78
+ originalValue: rawValue
79
+ }
80
+ };
81
+ if (onChange && nextMaskedValue !== maskedValue)
82
+ onChange(event);
83
+ setMaskedValue(nextMaskedValue);
84
+ setRawValue(nextMaskedValue);
85
+ if (shouldUpdateCursorPos)
86
+ setCursorPosition({ current: maskedPos });
87
+ },
88
+ [maskedValue, onChange]
89
+ );
90
+ const handleOnChange = useCallback(
91
+ (e) => {
92
+ const { value: rawValue, selectionEnd } = e.target;
93
+ setRawMask(rawValue);
94
+ setRawValue(rawValue);
95
+ setCursorPosition({ current: selectionEnd });
96
+ setFocus(true);
97
+ },
98
+ [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code]
99
+ );
85
100
  useLayoutEffect(() => {
86
101
  if (focus)
87
102
  setCaretPosition(inputRef.current, cursorPosition.current);
@@ -94,16 +109,22 @@ const DictionaryInputMask = ({
94
109
  shouldUpdateCursorPos: focus
95
110
  });
96
111
  }, [focus, value, cursorPosition.current]);
97
- const handleKeyDown = useCallback((e) => {
98
- e.stopPropagation();
99
- setLastkey({ key: e.key, code: e.keyCode });
100
- onKeyDown(e);
101
- }, [onKeyDown]);
102
- const handleBlur = useCallback((e) => {
103
- setFocus(false);
104
- onBlur(e);
105
- }, [onBlur]);
106
- return /* @__PURE__ */ React2.createElement(DSTextBox, {
112
+ const handleKeyDown = useCallback(
113
+ (e) => {
114
+ e.stopPropagation();
115
+ setLastkey({ key: e.key, code: e.keyCode });
116
+ onKeyDown(e);
117
+ },
118
+ [onKeyDown]
119
+ );
120
+ const handleBlur = useCallback(
121
+ (e) => {
122
+ setFocus(false);
123
+ onBlur(e);
124
+ },
125
+ [onBlur]
126
+ );
127
+ return /* @__PURE__ */ jsx(DSTextBox, {
107
128
  ...rest,
108
129
  className,
109
130
  clearable,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/InputMask/mask_types/DictionaryInputMask.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-loop-func */\n/* eslint-disable max-params */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport { DSTextBox } from '../../TextBox';\nimport { setCaretPosition } from '../utils/setCaretPosition';\n\nconst startsWith = (a: string, b: string, ignoreCase: boolean): boolean => {\n if (ignoreCase) {\n a = a.toLowerCase();\n b = b.toLowerCase();\n }\n return a.startsWith(b);\n};\n\nconst conformValue = (\n rawValue: string,\n cursorPos: number,\n lastkeycode: number,\n allowedWords: string[],\n ignoreCase: boolean,\n) => {\n let nextMaskedValue = '';\n let currentPosibleWords = allowedWords;\n for (let i = 0; i < rawValue.length; i += 1) {\n const matchingWords = currentPosibleWords.filter((word) =>\n startsWith(word, nextMaskedValue + rawValue[i], ignoreCase),\n );\n if (matchingWords.length) {\n nextMaskedValue += rawValue[i];\n currentPosibleWords = matchingWords;\n }\n }\n\n return { nextMaskedValue, maskedPos: cursorPos };\n};\n\nconst DictionaryInputMask = ({\n focus,\n setFocus,\n setRawMask,\n cursorPosition,\n setCursorPosition,\n lastkey,\n setLastkey,\n setRawValue,\n allowedWords,\n ignoreCase = true,\n autoFocus,\n style,\n disabled,\n className,\n name,\n maxLength,\n minLength,\n fluidWidth,\n placeholder,\n onKeyDown,\n onClick,\n onChange,\n onFocus,\n onBlur,\n onPaste,\n onKeyUp,\n hasError,\n readOnly,\n type,\n innerRef,\n clearable = false,\n leftComponent,\n rightComponent,\n value,\n ...rest\n}) => {\n const inputRef = useRef();\n const [maskedValue, setMaskedValue] = useState(value);\n\n const conform = useCallback(\n ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {\n const { nextMaskedValue, maskedPos } = conformValue(\n rawValue,\n cursorPos,\n lastkeycode,\n allowedWords,\n ignoreCase,\n );\n const event = {\n target: {\n value: nextMaskedValue,\n originalValue: rawValue,\n },\n };\n if (onChange && nextMaskedValue !== maskedValue) onChange(event);\n\n setMaskedValue(nextMaskedValue);\n setRawValue(nextMaskedValue);\n\n if (shouldUpdateCursorPos) setCursorPosition({ current: maskedPos });\n },\n [maskedValue, onChange],\n );\n\n const handleOnChange = useCallback(\n (e) => {\n const { value: rawValue, selectionEnd } = e.target;\n setRawMask(rawValue);\n setRawValue(rawValue);\n setCursorPosition({ current: selectionEnd });\n setFocus(true);\n },\n [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code],\n );\n\n useLayoutEffect(() => {\n if (focus) setCaretPosition(inputRef.current, cursorPosition.current);\n }, [focus, cursorPosition]);\n\n useLayoutEffect(() => {\n // if the value changes, then re-conform the mask\n conform({\n rawValue: value,\n cursorPos: cursorPosition.current,\n lastkeycode: lastkey.code,\n shouldUpdateCursorPos: focus,\n });\n }, [focus, value, cursorPosition.current]);\n\n const handleKeyDown = useCallback(\n (e) => {\n e.stopPropagation();\n setLastkey({ key: e.key, code: e.keyCode });\n onKeyDown(e);\n },\n [onKeyDown],\n );\n\n const handleBlur = useCallback(\n (e) => {\n setFocus(false);\n onBlur(e);\n },\n [onBlur],\n );\n\n return (\n <DSTextBox\n {...rest}\n className={className}\n clearable={clearable}\n disabled={disabled}\n fluidWidth={fluidWidth}\n hasError={hasError}\n innerRef={(ref) => {\n inputRef.current = ref;\n if (innerRef) innerRef(ref);\n }}\n isActive={focus}\n leftComponent={leftComponent}\n maxLength={maxLength}\n minLength={minLength}\n name={name}\n onBlur={handleBlur}\n onChange={handleOnChange}\n onClick={onClick}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={onKeyUp}\n onPaste={onPaste}\n placeholder={placeholder}\n readOnly={readOnly}\n rightComponent={rightComponent}\n style={style}\n type={type}\n value={maskedValue}\n />\n );\n};\n\nexport { DictionaryInputMask };\nexport default DictionaryInputMask;\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,6 @@
1
1
  import * as React from "react";
2
- import React2, { useCallback, useLayoutEffect, useRef, useState } from "react";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { useCallback, useLayoutEffect, useRef, useState } from "react";
3
4
  import { DSTextBox } from "../../TextBox";
4
5
  import { setCaretPosition } from "../utils/setCaretPosition";
5
6
  const addThousandsSeparator = (n, thousandsSeparatorSymbol) => n.replace(/\B(?=(\d{3})+(?!\d))/g, thousandsSeparatorSymbol);
@@ -21,7 +22,10 @@ const conformValue = (prevRawValue, prevCursorPos, lastkeycode, {
21
22
  const suffixIndex = prevRawValue.lastIndexOf(suffix);
22
23
  const negativeIndex = prevRawValue.indexOf("-");
23
24
  const cursorPos = prevCursorPos - (prefixIndex === -1 ? 0 : prefixIndex + prefix.length);
24
- const rawValue = prevRawValue.substring(prefixIndex === -1 ? 0 : prefixIndex + prefix.length, suffixIndex === -1 ? prevRawValue.length : suffixIndex);
25
+ const rawValue = prevRawValue.substring(
26
+ prefixIndex === -1 ? 0 : prefixIndex + prefix.length,
27
+ suffixIndex === -1 ? prevRawValue.length : suffixIndex
28
+ );
25
29
  const filteredRawValue = rawValue.split("").filter((char) => char >= "0" && char <= "9" || char === decimalSymbol || char === "-");
26
30
  let isNegative = allowNegative && negativeIndex !== -1 && (prefixIndex === -1 || negativeIndex < prefixIndex);
27
31
  let integer = "";
@@ -139,41 +143,47 @@ const NumberInputMask = ({
139
143
  }) => {
140
144
  const inputRef = useRef();
141
145
  const [maskedValue, setMaskedValue] = useState(value);
142
- const conform = useCallback(({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true, shouldCompleteDecimals = false }) => {
143
- const { nextMaskedValue, maskedPos } = conformValue(rawValue, cursorPos, lastkeycode, {
144
- prefix,
145
- suffix,
146
- includeThousandsSeparator,
147
- thousandsSeparatorSymbol,
148
- allowDecimal,
149
- decimalSymbol,
150
- decimalLimit,
151
- requireDecimal,
152
- allowNegative,
153
- allowLeadingZeroes,
154
- integerLimit,
155
- shouldCompleteDecimals
156
- });
157
- const event = {
158
- target: {
159
- value: nextMaskedValue,
160
- originalValue: rawValue
161
- }
162
- };
163
- if (onChange && nextMaskedValue !== maskedValue)
164
- onChange(event);
165
- setMaskedValue(nextMaskedValue);
166
- setRawValue(nextMaskedValue);
167
- if (shouldUpdateCursorPos)
168
- setCursorPosition({ current: maskedPos });
169
- }, [maskedValue, onChange]);
170
- const handleOnChange = useCallback((e) => {
171
- const { value: rawValue, selectionEnd } = e.target;
172
- setRawMask(rawValue);
173
- setRawValue(rawValue);
174
- setCursorPosition({ current: selectionEnd });
175
- setFocus(true);
176
- }, [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code]);
146
+ const conform = useCallback(
147
+ ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true, shouldCompleteDecimals = false }) => {
148
+ const { nextMaskedValue, maskedPos } = conformValue(rawValue, cursorPos, lastkeycode, {
149
+ prefix,
150
+ suffix,
151
+ includeThousandsSeparator,
152
+ thousandsSeparatorSymbol,
153
+ allowDecimal,
154
+ decimalSymbol,
155
+ decimalLimit,
156
+ requireDecimal,
157
+ allowNegative,
158
+ allowLeadingZeroes,
159
+ integerLimit,
160
+ shouldCompleteDecimals
161
+ });
162
+ const event = {
163
+ target: {
164
+ value: nextMaskedValue,
165
+ originalValue: rawValue
166
+ }
167
+ };
168
+ if (onChange && nextMaskedValue !== maskedValue)
169
+ onChange(event);
170
+ setMaskedValue(nextMaskedValue);
171
+ setRawValue(nextMaskedValue);
172
+ if (shouldUpdateCursorPos)
173
+ setCursorPosition({ current: maskedPos });
174
+ },
175
+ [maskedValue, onChange]
176
+ );
177
+ const handleOnChange = useCallback(
178
+ (e) => {
179
+ const { value: rawValue, selectionEnd } = e.target;
180
+ setRawMask(rawValue);
181
+ setRawValue(rawValue);
182
+ setCursorPosition({ current: selectionEnd });
183
+ setFocus(true);
184
+ },
185
+ [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code]
186
+ );
177
187
  useLayoutEffect(() => {
178
188
  if (focus)
179
189
  setCaretPosition(inputRef.current, cursorPosition.current);
@@ -186,25 +196,31 @@ const NumberInputMask = ({
186
196
  shouldUpdateCursorPos: focus
187
197
  });
188
198
  }, [focus, value, cursorPosition.current]);
189
- const handleKeyDown = useCallback((e) => {
190
- e.stopPropagation();
191
- setLastkey({ key: e.key, code: e.keyCode });
192
- onKeyDown(e);
193
- }, [onKeyDown]);
194
- const handleBlur = useCallback((e) => {
195
- setFocus(false);
196
- onBlur(e);
197
- if (requireDecimal && maskedValue !== "") {
198
- conform({
199
- rawValue: maskedValue,
200
- cursorPos: 0,
201
- lastkey: 0,
202
- shouldUpdateCursorPos: 0,
203
- shouldCompleteDecimals: true
204
- });
205
- }
206
- }, [maskedValue, requireDecimal, suffix, decimalLimit, onBlur]);
207
- return /* @__PURE__ */ React2.createElement(DSTextBox, {
199
+ const handleKeyDown = useCallback(
200
+ (e) => {
201
+ e.stopPropagation();
202
+ setLastkey({ key: e.key, code: e.keyCode });
203
+ onKeyDown(e);
204
+ },
205
+ [onKeyDown]
206
+ );
207
+ const handleBlur = useCallback(
208
+ (e) => {
209
+ setFocus(false);
210
+ onBlur(e);
211
+ if (requireDecimal && maskedValue !== "") {
212
+ conform({
213
+ rawValue: maskedValue,
214
+ cursorPos: 0,
215
+ lastkey: 0,
216
+ shouldUpdateCursorPos: 0,
217
+ shouldCompleteDecimals: true
218
+ });
219
+ }
220
+ },
221
+ [maskedValue, requireDecimal, suffix, decimalLimit, onBlur]
222
+ );
223
+ return /* @__PURE__ */ jsx(DSTextBox, {
208
224
  ...rest,
209
225
  className,
210
226
  clearable,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/InputMask/mask_types/NumberInputMask.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-params */\n/* eslint-disable max-statements */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\n\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport { DSTextBox } from '../../TextBox';\nimport { setCaretPosition } from '../utils/setCaretPosition';\n\n// http://stackoverflow.com/a/10899795/604296\nconst addThousandsSeparator = (n, thousandsSeparatorSymbol) =>\n n.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandsSeparatorSymbol);\n\nconst conformValue = (\n prevRawValue,\n prevCursorPos,\n lastkeycode,\n {\n prefix,\n suffix,\n includeThousandsSeparator,\n thousandsSeparatorSymbol,\n allowDecimal,\n decimalSymbol,\n decimalLimit,\n requireDecimal,\n allowNegative,\n allowLeadingZeroes,\n integerLimit,\n shouldCompleteDecimals,\n },\n) => {\n const prefixIndex = prevRawValue.indexOf(prefix);\n const suffixIndex = prevRawValue.lastIndexOf(suffix);\n const negativeIndex = prevRawValue.indexOf('-');\n\n const cursorPos = prevCursorPos - (prefixIndex === -1 ? 0 : prefixIndex + prefix.length);\n\n const rawValue = prevRawValue.substring(\n prefixIndex === -1 ? 0 : prefixIndex + prefix.length,\n suffixIndex === -1 ? prevRawValue.length : suffixIndex,\n );\n\n const filteredRawValue = rawValue\n .split('')\n .filter((char) => (char >= '0' && char <= '9') || char === decimalSymbol || char === '-');\n\n let isNegative = allowNegative && negativeIndex !== -1 && (prefixIndex === -1 || negativeIndex < prefixIndex);\n\n let integer = '';\n let decimal = '';\n let foundDecimalSymbol = false;\n\n const integerFits = () => integerLimit === null || integer.length < integerLimit;\n const decimalFits = () => decimalLimit === null || decimal.length < decimalLimit;\n\n filteredRawValue.forEach((char) => {\n if (allowDecimal && !foundDecimalSymbol && char === decimalSymbol) {\n foundDecimalSymbol = true;\n } else if (allowNegative && !integer.length && !foundDecimalSymbol && char === '-') {\n isNegative = true;\n } else if (char >= '0' && char <= '9') {\n if (!foundDecimalSymbol && integerFits()) {\n integer += char;\n } else if (foundDecimalSymbol && decimalFits()) {\n decimal += char;\n }\n }\n });\n\n if (requireDecimal) foundDecimalSymbol = true;\n if (!requireDecimal && !decimal?.length && lastkeycode === 8) {\n foundDecimalSymbol = false;\n }\n if (!integer && !decimal) foundDecimalSymbol = false;\n\n if (foundDecimalSymbol && !integer && decimal) {\n integer = '0';\n }\n\n if (!allowLeadingZeroes) {\n while (integer.length > 1 && integer[0] === '0') integer = integer.substring(1);\n }\n\n let nextMaskedValue = includeThousandsSeparator ? addThousandsSeparator(integer, thousandsSeparatorSymbol) : integer;\n nextMaskedValue += foundDecimalSymbol ? decimalSymbol : '';\n\n if (shouldCompleteDecimals) while (decimal.length !== decimalLimit) decimal += '0';\n\n nextMaskedValue += decimal;\n\n let maskedPos = 0;\n for (let i = 0; i < cursorPos; i += 1) {\n if (nextMaskedValue[maskedPos] === thousandsSeparatorSymbol) maskedPos += 1;\n if (nextMaskedValue[maskedPos] === rawValue[i]) maskedPos += 1;\n }\n if (nextMaskedValue.length || isNegative) {\n nextMaskedValue = prefix + nextMaskedValue;\n maskedPos += prefix.length;\n\n if (isNegative) {\n if (lastkeycode !== 8 || nextMaskedValue !== prefix) nextMaskedValue = `-${nextMaskedValue}`;\n maskedPos += 1;\n }\n\n nextMaskedValue += suffix;\n }\n\n if (lastkeycode !== 8 && maskedPos < nextMaskedValue.length) {\n if (nextMaskedValue[maskedPos] === decimalSymbol && integer.length === integerLimit) {\n maskedPos += 1;\n } else if (nextMaskedValue[maskedPos] === thousandsSeparatorSymbol) {\n maskedPos += 1;\n }\n }\n\n return {\n nextMaskedValue,\n maskedPos: Math.min(maskedPos, nextMaskedValue.length - suffix.length),\n };\n};\n\nconst NumberInputMask = ({\n focus,\n setFocus,\n setRawMask,\n cursorPosition,\n setCursorPosition,\n lastkey,\n setLastkey,\n setRawValue,\n allowDecimal,\n allowLeadingZeroes,\n allowNegative,\n autoFocus,\n className,\n clearable = false,\n decimalLimit,\n decimalSymbol,\n disabled,\n fluidWidth,\n hasError,\n includeThousandsSeparator,\n innerRef,\n integerLimit,\n leftComponent,\n maxLength,\n minLength,\n name,\n onBlur,\n onChange,\n onClick,\n onFocus,\n onKeyDown,\n onKeyUp,\n onPaste,\n placeholder,\n prefix,\n readOnly,\n requireDecimal,\n rightComponent,\n style,\n suffix,\n thousandsSeparatorSymbol,\n type,\n value,\n ...rest\n}) => {\n const inputRef = useRef();\n const [maskedValue, setMaskedValue] = useState(value);\n\n const conform = useCallback(\n ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true, shouldCompleteDecimals = false }) => {\n const { nextMaskedValue, maskedPos } = conformValue(rawValue, cursorPos, lastkeycode, {\n prefix,\n suffix,\n includeThousandsSeparator,\n thousandsSeparatorSymbol,\n allowDecimal,\n decimalSymbol,\n decimalLimit,\n requireDecimal,\n allowNegative,\n allowLeadingZeroes,\n integerLimit,\n shouldCompleteDecimals,\n });\n const event = {\n target: {\n value: nextMaskedValue,\n originalValue: rawValue,\n },\n };\n if (onChange && nextMaskedValue !== maskedValue) onChange(event);\n\n setMaskedValue(nextMaskedValue);\n setRawValue(nextMaskedValue);\n\n if (shouldUpdateCursorPos) setCursorPosition({ current: maskedPos });\n },\n [maskedValue, onChange],\n );\n\n const handleOnChange = useCallback(\n (e) => {\n const { value: rawValue, selectionEnd } = e.target;\n setRawMask(rawValue);\n setRawValue(rawValue);\n setCursorPosition({ current: selectionEnd });\n setFocus(true);\n },\n [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code],\n );\n\n useLayoutEffect(() => {\n if (focus) setCaretPosition(inputRef.current, cursorPosition.current);\n }, [focus, cursorPosition]);\n\n useLayoutEffect(() => {\n // if the value changes, then re-conform the mask\n conform({\n rawValue: value,\n cursorPos: cursorPosition.current,\n lastkeycode: lastkey.code,\n shouldUpdateCursorPos: focus,\n });\n }, [focus, value, cursorPosition.current]);\n\n const handleKeyDown = useCallback(\n (e) => {\n e.stopPropagation();\n setLastkey({ key: e.key, code: e.keyCode });\n onKeyDown(e);\n },\n [onKeyDown],\n );\n\n const handleBlur = useCallback(\n (e) => {\n setFocus(false);\n onBlur(e);\n if (requireDecimal && maskedValue !== '') {\n conform({\n rawValue: maskedValue,\n cursorPos: 0,\n lastkey: 0,\n shouldUpdateCursorPos: 0,\n shouldCompleteDecimals: true,\n });\n }\n },\n [maskedValue, requireDecimal, suffix, decimalLimit, onBlur],\n );\n\n return (\n <DSTextBox\n {...rest}\n className={className}\n clearable={clearable}\n disabled={disabled}\n fluidWidth={fluidWidth}\n hasError={hasError}\n innerRef={(ref) => {\n inputRef.current = ref;\n if (innerRef) innerRef(ref);\n }}\n isActive={focus}\n leftComponent={leftComponent}\n maxLength={maxLength}\n minLength={minLength}\n name={name}\n onBlur={handleBlur}\n onChange={handleOnChange}\n onClick={onClick}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={onKeyUp}\n onPaste={onPaste}\n placeholder={placeholder}\n readOnly={readOnly}\n rightComponent={rightComponent}\n style={style}\n type={type}\n value={maskedValue}\n />\n );\n};\n\nexport { NumberInputMask };\nexport default NumberInputMask;\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,6 @@
1
1
  import * as React from "react";
2
- import React2, { useCallback, useLayoutEffect, useRef, useState } from "react";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { useCallback, useLayoutEffect, useRef, useState } from "react";
3
4
  import { DSTextBox } from "../../TextBox";
4
5
  import { setCaretPosition } from "../utils/setCaretPosition";
5
6
  const conformValue = (rawValue, cursorPos, lastkeycode) => {
@@ -73,28 +74,38 @@ const PhoneInputMask = ({
73
74
  }) => {
74
75
  const inputRef = useRef();
75
76
  const [maskedValue, setMaskedValue] = useState(value);
76
- const conform = useCallback(({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {
77
- const { nextMaskedValue, maskedPos } = conformValue(rawValue, cursorPos, lastkeycode);
78
- const event = {
79
- target: {
80
- value: nextMaskedValue,
81
- originalValue: rawValue
82
- }
83
- };
84
- if (onChange && nextMaskedValue !== maskedValue)
85
- onChange(event);
86
- setMaskedValue(nextMaskedValue);
87
- setRawValue(nextMaskedValue);
88
- if (shouldUpdateCursorPos)
89
- setCursorPosition({ current: maskedPos });
90
- }, [maskedValue, onChange]);
91
- const handleOnChange = useCallback((e) => {
92
- const { value: rawValue, selectionEnd } = e.target;
93
- setRawMask(rawValue);
94
- setRawValue(rawValue);
95
- setCursorPosition({ current: selectionEnd });
96
- setFocus(true);
97
- }, [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code]);
77
+ const conform = useCallback(
78
+ ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {
79
+ const { nextMaskedValue, maskedPos } = conformValue(
80
+ rawValue,
81
+ cursorPos,
82
+ lastkeycode
83
+ );
84
+ const event = {
85
+ target: {
86
+ value: nextMaskedValue,
87
+ originalValue: rawValue
88
+ }
89
+ };
90
+ if (onChange && nextMaskedValue !== maskedValue)
91
+ onChange(event);
92
+ setMaskedValue(nextMaskedValue);
93
+ setRawValue(nextMaskedValue);
94
+ if (shouldUpdateCursorPos)
95
+ setCursorPosition({ current: maskedPos });
96
+ },
97
+ [maskedValue, onChange]
98
+ );
99
+ const handleOnChange = useCallback(
100
+ (e) => {
101
+ const { value: rawValue, selectionEnd } = e.target;
102
+ setRawMask(rawValue);
103
+ setRawValue(rawValue);
104
+ setCursorPosition({ current: selectionEnd });
105
+ setFocus(true);
106
+ },
107
+ [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code]
108
+ );
98
109
  useLayoutEffect(() => {
99
110
  if (focus)
100
111
  setCaretPosition(inputRef.current, cursorPosition.current);
@@ -107,16 +118,22 @@ const PhoneInputMask = ({
107
118
  shouldUpdateCursorPos: focus
108
119
  });
109
120
  }, [focus, value, cursorPosition.current]);
110
- const handleKeyDown = useCallback((e) => {
111
- e.stopPropagation();
112
- setLastkey({ key: e.key, code: e.keyCode });
113
- onKeyDown(e);
114
- }, [onKeyDown]);
115
- const handleBlur = useCallback((e) => {
116
- setFocus(false);
117
- onBlur(e);
118
- }, [onBlur]);
119
- return /* @__PURE__ */ React2.createElement(DSTextBox, {
121
+ const handleKeyDown = useCallback(
122
+ (e) => {
123
+ e.stopPropagation();
124
+ setLastkey({ key: e.key, code: e.keyCode });
125
+ onKeyDown(e);
126
+ },
127
+ [onKeyDown]
128
+ );
129
+ const handleBlur = useCallback(
130
+ (e) => {
131
+ setFocus(false);
132
+ onBlur(e);
133
+ },
134
+ [onBlur]
135
+ );
136
+ return /* @__PURE__ */ jsx(DSTextBox, {
120
137
  ...rest,
121
138
  className,
122
139
  clearable,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/InputMask/mask_types/PhoneInputMask.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport { DSTextBox } from '../../TextBox';\nimport { TCharsToAdd } from '../types';\nimport { setCaretPosition } from '../utils/setCaretPosition';\n\nconst conformValue = (rawValue, cursorPos, lastkeycode) => {\n let nextMaskedValue = rawValue\n .split('')\n .filter((char) => char >= '0' && char <= '9');\n\n while (nextMaskedValue.length && nextMaskedValue[0] === '0')\n nextMaskedValue.splice(0, 1);\n\n nextMaskedValue = nextMaskedValue.slice(0, 10);\n\n let maskedPos = 0;\n for (let i = 0; i < cursorPos; i += 1) {\n if (nextMaskedValue[maskedPos] === rawValue[i]) maskedPos += 1;\n }\n\n // list of [string to add, position to add]\nconst charactersToAdd: TCharsToAdd = [\n ['(', 0],\n [') ', 4],\n ['-', 9],\n ];\n\n charactersToAdd.forEach(([chars, pos]) => {\n if (nextMaskedValue.length > pos) {\n nextMaskedValue.splice(pos, 0, ...chars);\n if (maskedPos >= pos) maskedPos += chars.length;\n }\n });\n\n if (lastkeycode !== 8 && maskedPos < nextMaskedValue.length) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos) maskedPos += chars.length;\n });\n } else if (lastkeycode === 8 && maskedPos) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos + 1) maskedPos -= chars.length;\n });\n }\n return { nextMaskedValue: nextMaskedValue.join(''), maskedPos };\n};\n\nconst PhoneInputMask = ({\n focus,\n setFocus,\n setRawMask,\n cursorPosition,\n setCursorPosition,\n lastkey,\n setLastkey,\n setRawValue,\n style,\n disabled,\n className,\n name,\n maxLength,\n minLength,\n fluidWidth,\n placeholder,\n onKeyDown,\n onClick,\n onChange,\n onFocus,\n onBlur,\n onPaste,\n onKeyUp,\n hasError,\n readOnly,\n type,\n innerRef,\n clearable = false,\n leftComponent,\n rightComponent,\n value,\n ...rest\n}) => {\n const inputRef = useRef();\n const [maskedValue, setMaskedValue] = useState(value);\n\n const conform = useCallback(\n ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {\n const { nextMaskedValue, maskedPos } = conformValue(\n rawValue,\n cursorPos,\n lastkeycode,\n );\n const event = {\n target: {\n value: nextMaskedValue,\n originalValue: rawValue,\n },\n };\n if (onChange && nextMaskedValue !== maskedValue) onChange(event);\n\n setMaskedValue(nextMaskedValue);\n setRawValue(nextMaskedValue);\n\n if (shouldUpdateCursorPos) setCursorPosition({ current: maskedPos });\n },\n [maskedValue, onChange],\n );\n\n const handleOnChange = useCallback(\n (e) => {\n const { value: rawValue, selectionEnd } = e.target;\n setRawMask(rawValue);\n setRawValue(rawValue);\n setCursorPosition({ current: selectionEnd });\n setFocus(true);\n },\n [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code],\n );\n\n useLayoutEffect(() => {\n if (focus) setCaretPosition(inputRef.current, cursorPosition.current);\n }, [focus, cursorPosition]);\n\n useLayoutEffect(() => {\n // if the value changes, then re-conform the mask\n conform({\n rawValue: value,\n cursorPos: cursorPosition.current,\n lastkeycode: lastkey.code,\n shouldUpdateCursorPos: focus,\n });\n }, [focus, value, cursorPosition.current]);\n\n const handleKeyDown = useCallback(\n (e) => {\n e.stopPropagation();\n setLastkey({ key: e.key, code: e.keyCode });\n onKeyDown(e);\n },\n [onKeyDown],\n );\n\n const handleBlur = useCallback(\n (e) => {\n setFocus(false);\n onBlur(e);\n },\n [onBlur],\n );\n\n return (\n <DSTextBox\n {...rest}\n className={className}\n clearable={clearable}\n disabled={disabled}\n fluidWidth={fluidWidth}\n hasError={hasError}\n innerRef={(ref) => {\n inputRef.current = ref;\n if (innerRef) innerRef(ref);\n }}\n isActive={focus}\n leftComponent={leftComponent}\n maxLength={maxLength}\n minLength={minLength}\n name={name}\n onBlur={handleBlur}\n onChange={handleOnChange}\n onClick={onClick}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={onKeyUp}\n onPaste={onPaste}\n placeholder={placeholder}\n readOnly={readOnly}\n rightComponent={rightComponent}\n style={style}\n type={type}\n value={maskedValue}\n />\n );\n};\n\nexport { PhoneInputMask };\nexport default PhoneInputMask;\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,6 @@
1
1
  import * as React from "react";
2
- import React2, { useCallback, useLayoutEffect, useRef, useState } from "react";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { useCallback, useLayoutEffect, useRef, useState } from "react";
3
4
  import { DSTextBox } from "../../TextBox";
4
5
  import { setCaretPosition } from "../utils/setCaretPosition";
5
6
  const conformValue = (rawValue, cursorPos, lastkeycode) => {
@@ -73,28 +74,38 @@ const PhoneInternationalInputMask = ({
73
74
  }) => {
74
75
  const inputRef = useRef();
75
76
  const [maskedValue, setMaskedValue] = useState(value);
76
- const conform = useCallback(({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {
77
- const { nextMaskedValue, maskedPos } = conformValue(rawValue, cursorPos, lastkeycode);
78
- const event = {
79
- target: {
80
- value: nextMaskedValue,
81
- originalValue: rawValue
82
- }
83
- };
84
- if (onChange && nextMaskedValue !== maskedValue)
85
- onChange(event);
86
- setMaskedValue(nextMaskedValue);
87
- setRawValue(nextMaskedValue);
88
- if (shouldUpdateCursorPos)
89
- setCursorPosition({ current: maskedPos });
90
- }, [maskedValue, onChange]);
91
- const handleOnChange = useCallback((e) => {
92
- const { value: rawValue, selectionEnd } = e.target;
93
- setRawMask(rawValue);
94
- setRawValue(rawValue);
95
- setCursorPosition({ current: selectionEnd });
96
- setFocus(true);
97
- }, [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code]);
77
+ const conform = useCallback(
78
+ ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {
79
+ const { nextMaskedValue, maskedPos } = conformValue(
80
+ rawValue,
81
+ cursorPos,
82
+ lastkeycode
83
+ );
84
+ const event = {
85
+ target: {
86
+ value: nextMaskedValue,
87
+ originalValue: rawValue
88
+ }
89
+ };
90
+ if (onChange && nextMaskedValue !== maskedValue)
91
+ onChange(event);
92
+ setMaskedValue(nextMaskedValue);
93
+ setRawValue(nextMaskedValue);
94
+ if (shouldUpdateCursorPos)
95
+ setCursorPosition({ current: maskedPos });
96
+ },
97
+ [maskedValue, onChange]
98
+ );
99
+ const handleOnChange = useCallback(
100
+ (e) => {
101
+ const { value: rawValue, selectionEnd } = e.target;
102
+ setRawMask(rawValue);
103
+ setRawValue(rawValue);
104
+ setCursorPosition({ current: selectionEnd });
105
+ setFocus(true);
106
+ },
107
+ [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code]
108
+ );
98
109
  useLayoutEffect(() => {
99
110
  if (focus)
100
111
  setCaretPosition(inputRef.current, cursorPosition.current);
@@ -107,16 +118,22 @@ const PhoneInternationalInputMask = ({
107
118
  shouldUpdateCursorPos: focus
108
119
  });
109
120
  }, [focus, value, cursorPosition.current]);
110
- const handleKeyDown = useCallback((e) => {
111
- e.stopPropagation();
112
- setLastkey({ key: e.key, code: e.keyCode });
113
- onKeyDown(e);
114
- }, [onKeyDown]);
115
- const handleBlur = useCallback((e) => {
116
- setFocus(false);
117
- onBlur(e);
118
- }, [onBlur]);
119
- return /* @__PURE__ */ React2.createElement(DSTextBox, {
121
+ const handleKeyDown = useCallback(
122
+ (e) => {
123
+ e.stopPropagation();
124
+ setLastkey({ key: e.key, code: e.keyCode });
125
+ onKeyDown(e);
126
+ },
127
+ [onKeyDown]
128
+ );
129
+ const handleBlur = useCallback(
130
+ (e) => {
131
+ setFocus(false);
132
+ onBlur(e);
133
+ },
134
+ [onBlur]
135
+ );
136
+ return /* @__PURE__ */ jsx(DSTextBox, {
120
137
  ...rest,
121
138
  className,
122
139
  clearable,