@mvf/external-components 3.31.1 → 3.32.1-dev.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 (503) hide show
  1. package/Assets/BrandLogos/ExpertMarketLogo.js +11 -22
  2. package/Assets/BrandLogos/ExpertMarketLogo.js.map +1 -1
  3. package/Assets/BrandLogos/ExpertReviewsLogo.js +17 -28
  4. package/Assets/BrandLogos/ExpertReviewsLogo.js.map +1 -1
  5. package/Assets/BrandLogos/GoWizardLogo.js +10 -21
  6. package/Assets/BrandLogos/GoWizardLogo.js.map +1 -1
  7. package/Assets/BrandLogos/HearClearLogo.js +12 -23
  8. package/Assets/BrandLogos/HearClearLogo.js.map +1 -1
  9. package/Assets/BrandLogos/LasikEyesLogo.js +101 -112
  10. package/Assets/BrandLogos/LasikEyesLogo.js.map +1 -1
  11. package/Assets/BrandLogos/StartupsLogo.js +2 -13
  12. package/Assets/BrandLogos/StartupsLogo.js.map +1 -1
  13. package/Assets/BrandLogos/TechcoLogo.js +3 -14
  14. package/Assets/BrandLogos/TechcoLogo.js.map +1 -1
  15. package/Assets/BrandLogos/TheEcoExpertsLogo.js +14 -25
  16. package/Assets/BrandLogos/TheEcoExpertsLogo.js.map +1 -1
  17. package/Assets/BrandLogos/WebsiteBuilderExpertLogo.js +26 -37
  18. package/Assets/BrandLogos/WebsiteBuilderExpertLogo.js.map +1 -1
  19. package/Assets/BrandLogos/brandLogos.d.ts +0 -1
  20. package/Assets/CustomIcons/CheckboxIcon.d.ts +0 -1
  21. package/Assets/CustomIcons/CheckboxIcon.js +2 -13
  22. package/Assets/CustomIcons/CheckboxIcon.js.map +1 -1
  23. package/Assets/CustomIcons/RadioIcon.d.ts +0 -1
  24. package/Assets/CustomIcons/RadioIcon.js +2 -13
  25. package/Assets/CustomIcons/RadioIcon.js.map +1 -1
  26. package/Components/Atoms/AnimationWrapper/AnimationWrapper.d.ts +0 -1
  27. package/Components/Atoms/AnimationWrapper/AnimationWrapper.js +2 -13
  28. package/Components/Atoms/AnimationWrapper/AnimationWrapper.js.map +1 -1
  29. package/Components/Atoms/AnimationWrapper/AnimationWrapper.test.js +6 -17
  30. package/Components/Atoms/AnimationWrapper/AnimationWrapper.test.js.map +1 -1
  31. package/Components/Atoms/AnimationWrapper/AnimationWrapperStory.js +1 -12
  32. package/Components/Atoms/AnimationWrapper/AnimationWrapperStory.js.map +1 -1
  33. package/Components/Atoms/AnimationWrapper/IAnimationWrapperProps.d.ts +0 -1
  34. package/Components/Atoms/AnimationWrapper/makeAnimationWrapperStyling.js.map +1 -1
  35. package/Components/Atoms/Button/Button.js +2 -13
  36. package/Components/Atoms/Button/Button.js.map +1 -1
  37. package/Components/Atoms/Button/ButtonStory.js +1 -12
  38. package/Components/Atoms/Button/ButtonStory.js.map +1 -1
  39. package/Components/Atoms/Button/IButtonProps.d.ts +0 -1
  40. package/Components/Atoms/Button/defaultProps.d.ts +1 -1
  41. package/Components/Atoms/CardButton/CardButton.js +18 -8
  42. package/Components/Atoms/CardButton/CardButton.js.map +1 -1
  43. package/Components/Atoms/CardButton/CardButton.test.js +3 -14
  44. package/Components/Atoms/CardButton/CardButton.test.js.map +1 -1
  45. package/Components/Atoms/CardButton/CardButtonStory.js +19 -20
  46. package/Components/Atoms/CardButton/CardButtonStory.js.map +1 -1
  47. package/Components/Atoms/CircularProgress/CircularProgressStory.js +2 -13
  48. package/Components/Atoms/CircularProgress/CircularProgressStory.js.map +1 -1
  49. package/Components/Atoms/DynamicFontSizeContainer/DynamicFontSizeContainer.js +3 -14
  50. package/Components/Atoms/DynamicFontSizeContainer/DynamicFontSizeContainer.js.map +1 -1
  51. package/Components/Atoms/ErrorMessage/ErrorMessage.js +1 -12
  52. package/Components/Atoms/ErrorMessage/ErrorMessage.js.map +1 -1
  53. package/Components/Atoms/ErrorMessage/ErrorMessage.test.js +2 -13
  54. package/Components/Atoms/ErrorMessage/ErrorMessage.test.js.map +1 -1
  55. package/Components/Atoms/ErrorMessage/ErrorMessageStory.js +1 -12
  56. package/Components/Atoms/ErrorMessage/ErrorMessageStory.js.map +1 -1
  57. package/Components/Atoms/ErrorMessageProvider/ErrorMessageProvider.js +18 -19
  58. package/Components/Atoms/ErrorMessageProvider/ErrorMessageProvider.js.map +1 -1
  59. package/Components/Atoms/ErrorMessageProvider/ErrorMessageProvider.test.js +18 -19
  60. package/Components/Atoms/ErrorMessageProvider/ErrorMessageProvider.test.js.map +1 -1
  61. package/Components/Atoms/FormControl/FormControl.js +3 -1
  62. package/Components/Atoms/FormControl/FormControl.js.map +1 -1
  63. package/Components/Atoms/FormControl/FormControl.test.js +2 -13
  64. package/Components/Atoms/FormControl/FormControl.test.js.map +1 -1
  65. package/Components/Atoms/FormControl/FormControlStory.js +1 -12
  66. package/Components/Atoms/FormControl/FormControlStory.js.map +1 -1
  67. package/Components/Atoms/FormControl/makeFormControlStyles.d.ts +3 -1
  68. package/Components/Atoms/FormControl/makeFormControlStyles.js +1 -2
  69. package/Components/Atoms/FormControl/makeFormControlStyles.js.map +1 -1
  70. package/Components/Atoms/IconButton/IComponentProps.d.ts +0 -1
  71. package/Components/Atoms/IconButton/IconButtonStory.js +1 -12
  72. package/Components/Atoms/IconButton/IconButtonStory.js.map +1 -1
  73. package/Components/Atoms/IconButton/makeIconButtonStyling.d.ts +1 -1
  74. package/Components/Atoms/InfoPanel/InfoPanel.js +1 -12
  75. package/Components/Atoms/InfoPanel/InfoPanel.js.map +1 -1
  76. package/Components/Atoms/InfoPanel/InfoPanel.test.js +3 -14
  77. package/Components/Atoms/InfoPanel/InfoPanel.test.js.map +1 -1
  78. package/Components/Atoms/InfoPanel/InfoPanelStory.js +18 -19
  79. package/Components/Atoms/InfoPanel/InfoPanelStory.js.map +1 -1
  80. package/Components/Atoms/Input/IInputProps.d.ts +5 -0
  81. package/Components/Atoms/Input/Input.js +22 -11
  82. package/Components/Atoms/Input/Input.js.map +1 -1
  83. package/Components/Atoms/Input/Input.test.js +1 -12
  84. package/Components/Atoms/Input/Input.test.js.map +1 -1
  85. package/Components/Atoms/Input/InputStory.js +1 -12
  86. package/Components/Atoms/Input/InputStory.js.map +1 -1
  87. package/Components/Atoms/Input/icons.js +1 -12
  88. package/Components/Atoms/Input/icons.js.map +1 -1
  89. package/Components/Atoms/InputLabel/InputLabel.test.js +1 -12
  90. package/Components/Atoms/InputLabel/InputLabel.test.js.map +1 -1
  91. package/Components/Atoms/InputLabel/InputLabelStory.js +1 -12
  92. package/Components/Atoms/InputLabel/InputLabelStory.js.map +1 -1
  93. package/Components/Atoms/InsetCheckbox/InsetCheckbox.d.ts +0 -1
  94. package/Components/Atoms/Link/ILinkProps.d.ts +0 -1
  95. package/Components/Atoms/Link/Link.js +1 -12
  96. package/Components/Atoms/Link/Link.js.map +1 -1
  97. package/Components/Atoms/Link/Link.test.js +2 -13
  98. package/Components/Atoms/Link/Link.test.js.map +1 -1
  99. package/Components/Atoms/Link/LinkStory.js +1 -12
  100. package/Components/Atoms/Link/LinkStory.js.map +1 -1
  101. package/Components/Atoms/LoadingIndicator/LoadingIndicatorStory.js +1 -12
  102. package/Components/Atoms/LoadingIndicator/LoadingIndicatorStory.js.map +1 -1
  103. package/Components/Atoms/Modal/IModalProps.d.ts +0 -1
  104. package/Components/Atoms/Modal/Modal.d.ts +0 -1
  105. package/Components/Atoms/Modal/Modal.js +1 -12
  106. package/Components/Atoms/Modal/Modal.js.map +1 -1
  107. package/Components/Atoms/Modal/Modal.test.js +2 -13
  108. package/Components/Atoms/Modal/Modal.test.js.map +1 -1
  109. package/Components/Atoms/Modal/ModalStory.d.ts +0 -1
  110. package/Components/Atoms/Modal/ModalStory.js +1 -12
  111. package/Components/Atoms/Modal/ModalStory.js.map +1 -1
  112. package/Components/Atoms/ProgressBar/ProgressBar.js +1 -12
  113. package/Components/Atoms/ProgressBar/ProgressBar.js.map +1 -1
  114. package/Components/Atoms/Text/Text.js +1 -12
  115. package/Components/Atoms/Text/Text.js.map +1 -1
  116. package/Components/Atoms/Text/Text.test.js +1 -12
  117. package/Components/Atoms/Text/Text.test.js.map +1 -1
  118. package/Components/Atoms/Text/TextStory.js +2 -13
  119. package/Components/Atoms/Text/TextStory.js.map +1 -1
  120. package/Components/Atoms/Text/defaultProps.d.ts +1 -1
  121. package/Components/Molecules/CheckBox/CheckBox.js +23 -24
  122. package/Components/Molecules/CheckBox/CheckBox.js.map +1 -1
  123. package/Components/Molecules/CheckBox/CheckBox.test.js +11 -22
  124. package/Components/Molecules/CheckBox/CheckBox.test.js.map +1 -1
  125. package/Components/Molecules/CheckBox/CheckBoxStory.js +1 -12
  126. package/Components/Molecules/CheckBox/CheckBoxStory.js.map +1 -1
  127. package/Components/Molecules/CheckBox/ICheckboxProps.d.ts +0 -1
  128. package/Components/Molecules/DatePicker/DatePicker.js +4 -4
  129. package/Components/Molecules/DatePicker/DatePicker.js.map +1 -1
  130. package/Components/Molecules/DatePicker/DatePickerStory.js +18 -19
  131. package/Components/Molecules/DatePicker/DatePickerStory.js.map +1 -1
  132. package/Components/Molecules/DatePicker/__tests__/DatePicker.test.js +7 -18
  133. package/Components/Molecules/DatePicker/__tests__/DatePicker.test.js.map +1 -1
  134. package/Components/Molecules/DropDownSelect/DropDownSelect.js +2 -13
  135. package/Components/Molecules/DropDownSelect/DropDownSelect.js.map +1 -1
  136. package/Components/Molecules/DropDownSelect/DropDownSelect.test.js +2 -13
  137. package/Components/Molecules/DropDownSelect/DropDownSelect.test.js.map +1 -1
  138. package/Components/Molecules/DropDownSelect/DropDownSelectStory.js +18 -19
  139. package/Components/Molecules/DropDownSelect/DropDownSelectStory.js.map +1 -1
  140. package/Components/Molecules/DropDownSelect/defaultProps.d.ts +2 -2
  141. package/Components/Molecules/IconTileCheckBox/IComponentProps.d.ts +0 -1
  142. package/Components/Molecules/IconTileCheckBox/IconTileCheckBox.js +2 -13
  143. package/Components/Molecules/IconTileCheckBox/IconTileCheckBox.js.map +1 -1
  144. package/Components/Molecules/IconTileCheckBox/IconTileCheckBox.test.js +17 -7
  145. package/Components/Molecules/IconTileCheckBox/IconTileCheckBox.test.js.map +1 -1
  146. package/Components/Molecules/IconTileCheckBox/IconTileCheckBoxStory.js +1 -12
  147. package/Components/Molecules/IconTileCheckBox/IconTileCheckBoxStory.js.map +1 -1
  148. package/Components/Molecules/IconTileCheckBox/makeIconTileCheckBoxStyling.d.ts +1 -1
  149. package/Components/Molecules/IconTileRadioButton/IComponentProps.d.ts +0 -1
  150. package/Components/Molecules/IconTileRadioButton/IconTileRadioButton.js +3 -14
  151. package/Components/Molecules/IconTileRadioButton/IconTileRadioButton.js.map +1 -1
  152. package/Components/Molecules/IconTileRadioButton/IconTileRadioButton.test.js +28 -29
  153. package/Components/Molecules/IconTileRadioButton/IconTileRadioButton.test.js.map +1 -1
  154. package/Components/Molecules/IconTileRadioButton/IconTileRadioButtonStory.js +18 -19
  155. package/Components/Molecules/IconTileRadioButton/IconTileRadioButtonStory.js.map +1 -1
  156. package/Components/Molecules/IconTileRadioButton/makeIconTileRadioButtonStyling.d.ts +1 -1
  157. package/Components/Molecules/NavBar/NavBar.js +1 -12
  158. package/Components/Molecules/NavBar/NavBar.js.map +1 -1
  159. package/Components/Molecules/NavBar/NavBarStory.js +1 -12
  160. package/Components/Molecules/NavBar/NavBarStory.js.map +1 -1
  161. package/Components/Molecules/NavBar/defaultProps.d.ts +1 -1
  162. package/Components/Molecules/PhoneNumberTextField/PhoneNumberTextField.js +7 -5
  163. package/Components/Molecules/PhoneNumberTextField/PhoneNumberTextField.js.map +1 -1
  164. package/Components/Molecules/PhoneNumberTextField/PhoneNumberTextFieldStory.js +1 -12
  165. package/Components/Molecules/PhoneNumberTextField/PhoneNumberTextFieldStory.js.map +1 -1
  166. package/Components/Molecules/PhoneNumberTextFieldCustom/IPhoneNumberTextFieldProps.d.ts +59 -0
  167. package/Components/Molecules/PhoneNumberTextFieldCustom/IPhoneNumberTextFieldProps.js +3 -0
  168. package/Components/Molecules/PhoneNumberTextFieldCustom/IPhoneNumberTextFieldProps.js.map +1 -0
  169. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberCallbacks.d.ts +33 -0
  170. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberCallbacks.js +3 -0
  171. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberCallbacks.js.map +1 -0
  172. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.d.ts +7 -0
  173. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.js +218 -0
  174. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.js.map +1 -0
  175. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.d.ts +1 -0
  176. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.js +710 -0
  177. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.js.map +1 -0
  178. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.d.ts +8 -0
  179. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.js +17 -0
  180. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.js.map +1 -0
  181. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.d.ts +22 -0
  182. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.js +81 -0
  183. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.js.map +1 -0
  184. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.test.d.ts +1 -0
  185. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.test.js +300 -0
  186. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.test.js.map +1 -0
  187. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.d.ts +13 -0
  188. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.js +206 -0
  189. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.js.map +1 -0
  190. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.test.d.ts +1 -0
  191. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.test.js +187 -0
  192. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.test.js.map +1 -0
  193. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.d.ts +12 -0
  194. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.js +229 -0
  195. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.js.map +1 -0
  196. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.test.d.ts +1 -0
  197. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.test.js +281 -0
  198. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.test.js.map +1 -0
  199. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountrySelector.d.ts +11 -0
  200. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountrySelector.js +34 -0
  201. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountrySelector.js.map +1 -0
  202. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/FlagIcon.d.ts +10 -0
  203. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/FlagIcon.js +114 -0
  204. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/FlagIcon.js.map +1 -0
  205. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.d.ts +12 -0
  206. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.js +36 -0
  207. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.js.map +1 -0
  208. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.d.ts +38 -0
  209. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.js +181 -0
  210. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.js.map +1 -0
  211. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.d.ts +23 -0
  212. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.js +41 -0
  213. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.js.map +1 -0
  214. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/styling/makeFormControlPhoneNumberStyling.d.ts +10 -0
  215. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/styling/makeFormControlPhoneNumberStyling.js +147 -0
  216. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/styling/makeFormControlPhoneNumberStyling.js.map +1 -0
  217. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryData.d.ts +12 -0
  218. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryData.js +528 -0
  219. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryData.js.map +1 -0
  220. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.d.ts +16 -0
  221. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.js +180 -0
  222. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.js.map +1 -0
  223. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.test.d.ts +1 -0
  224. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.test.js +204 -0
  225. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.test.js.map +1 -0
  226. package/Components/Molecules/PhoneNumberTextFieldCustom/defaultProps.d.ts +27 -0
  227. package/Components/Molecules/PhoneNumberTextFieldCustom/defaultProps.js +42 -0
  228. package/Components/Molecules/PhoneNumberTextFieldCustom/defaultProps.js.map +1 -0
  229. package/Components/Molecules/PhoneNumberTextFieldCustom/index.d.ts +10 -0
  230. package/Components/Molecules/PhoneNumberTextFieldCustom/index.js +21 -0
  231. package/Components/Molecules/PhoneNumberTextFieldCustom/index.js.map +1 -0
  232. package/Components/Molecules/RadioButton/IRadioButtonProps.d.ts +0 -1
  233. package/Components/Molecules/RadioButton/RadioButton.js +4 -15
  234. package/Components/Molecules/RadioButton/RadioButton.js.map +1 -1
  235. package/Components/Molecules/RadioButton/RadioButton.test.js +8 -19
  236. package/Components/Molecules/RadioButton/RadioButton.test.js.map +1 -1
  237. package/Components/Molecules/RadioButton/RadioButtonStory.js +1 -12
  238. package/Components/Molecules/RadioButton/RadioButtonStory.js.map +1 -1
  239. package/Components/Molecules/ScrollContainer/ScrollContainer.js +18 -19
  240. package/Components/Molecules/ScrollContainer/ScrollContainer.js.map +1 -1
  241. package/Components/Molecules/ScrollContainer/ScrollContainer.test.js +6 -17
  242. package/Components/Molecules/ScrollContainer/ScrollContainer.test.js.map +1 -1
  243. package/Components/Molecules/ScrollContainer/ScrollContainerHelpers.js.map +1 -1
  244. package/Components/Molecules/ScrollContainer/ScrollContainerHelpers.test.js +2 -2
  245. package/Components/Molecules/ScrollContainer/ScrollContainerHelpers.test.js.map +1 -1
  246. package/Components/Molecules/ScrollContainer/ScrollContainerStory.js +3 -14
  247. package/Components/Molecules/ScrollContainer/ScrollContainerStory.js.map +1 -1
  248. package/Components/Molecules/ScrollContainer/ScrollContainerTypes.d.ts +0 -1
  249. package/Components/Molecules/SupplierCard/ISupplierCardProps.d.ts +0 -1
  250. package/Components/Molecules/SupplierCard/SupplierCard.js +1 -12
  251. package/Components/Molecules/SupplierCard/SupplierCard.js.map +1 -1
  252. package/Components/Molecules/SupplierCard/SupplierCardStory.d.ts +0 -1
  253. package/Components/Molecules/SupplierCard/SupplierCardStory.js +1 -12
  254. package/Components/Molecules/SupplierCard/SupplierCardStory.js.map +1 -1
  255. package/Components/Molecules/SupplierCard/makeSupplierCardStyling.d.ts +1 -1
  256. package/Components/Molecules/TextField/TextField.js +1 -1
  257. package/Components/Molecules/TextField/TextField.js.map +1 -1
  258. package/Components/Molecules/TextField/TextFieldStory.js +1 -12
  259. package/Components/Molecules/TextField/TextFieldStory.js.map +1 -1
  260. package/Components/Molecules/TextField/defaultProps.d.ts +1 -1
  261. package/Components/Molecules/ThankYouBanner/IThankYouBannerProps.d.ts +0 -1
  262. package/Components/Molecules/ThankYouBanner/ThankYouBanner.d.ts +0 -1
  263. package/Components/Molecules/ThankYouBanner/ThankYouBanner.js +1 -12
  264. package/Components/Molecules/ThankYouBanner/ThankYouBanner.js.map +1 -1
  265. package/Components/Molecules/ThankYouBanner/ThankYouBanner.test.js +4 -15
  266. package/Components/Molecules/ThankYouBanner/ThankYouBanner.test.js.map +1 -1
  267. package/Components/Molecules/ThankYouBanner/ThankYouBannerStory.d.ts +0 -1
  268. package/Components/Molecules/ThankYouBanner/ThankYouBannerStory.js +2 -13
  269. package/Components/Molecules/ThankYouBanner/ThankYouBannerStory.js.map +1 -1
  270. package/Components/Molecules/ThankYouBanner/icons/CelebrationIcon.js +1 -12
  271. package/Components/Molecules/ThankYouBanner/icons/CelebrationIcon.js.map +1 -1
  272. package/Components/Molecules/index.d.ts +1 -0
  273. package/Components/Molecules/index.js +3 -1
  274. package/Components/Molecules/index.js.map +1 -1
  275. package/Components/Organisms/ListLayout/ListLayout.js +2 -13
  276. package/Components/Organisms/ListLayout/ListLayout.js.map +1 -1
  277. package/Components/Organisms/ListLayout/ListLayout.test.js +2 -13
  278. package/Components/Organisms/ListLayout/ListLayout.test.js.map +1 -1
  279. package/Components/Organisms/ListLayout/ListLayoutStory.js +1 -12
  280. package/Components/Organisms/ListLayout/ListLayoutStory.js.map +1 -1
  281. package/Components/Organisms/ListLayout/defaultProps.d.ts +1 -1
  282. package/Components/Organisms/RadioGroup/RadioGroup.js +18 -19
  283. package/Components/Organisms/RadioGroup/RadioGroup.js.map +1 -1
  284. package/Components/Organisms/RadioGroup/RadioGroup.test.js +8 -19
  285. package/Components/Organisms/RadioGroup/RadioGroup.test.js.map +1 -1
  286. package/Components/Organisms/RadioGroup/RadioGroupContext.d.ts +0 -1
  287. package/Components/Organisms/RadioGroup/RadioGroupStory.js +1 -12
  288. package/Components/Organisms/RadioGroup/RadioGroupStory.js.map +1 -1
  289. package/Components/Organisms/TileLayout/IconTileCheckBoxStory.js +18 -8
  290. package/Components/Organisms/TileLayout/IconTileCheckBoxStory.js.map +1 -1
  291. package/Components/Organisms/TileLayout/IconTileRadioButtonStory.js +18 -8
  292. package/Components/Organisms/TileLayout/IconTileRadioButtonStory.js.map +1 -1
  293. package/Components/Organisms/TileLayout/TileLayout.js +2 -13
  294. package/Components/Organisms/TileLayout/TileLayout.js.map +1 -1
  295. package/Components/Organisms/TileLayout/TileLayout.test.js +1 -12
  296. package/Components/Organisms/TileLayout/TileLayout.test.js.map +1 -1
  297. package/Components/Organisms/__helpers__/Options.d.ts +3 -3
  298. package/Components/Organisms/__helpers__/Options.js +25 -15
  299. package/Components/Organisms/__helpers__/Options.js.map +1 -1
  300. package/Components/Organisms/__helpers__/generateMenuItems.js.map +1 -1
  301. package/Components/index.d.ts +1 -1
  302. package/Components/index.js +2 -1
  303. package/Components/index.js.map +1 -1
  304. package/Experiments/CRO-582/Atoms/ProgressBar/ProgressBar.js +1 -12
  305. package/Experiments/CRO-582/Atoms/ProgressBar/ProgressBar.js.map +1 -1
  306. package/Experiments/CRO-584/Atoms/CardButton/CardButton.js +18 -8
  307. package/Experiments/CRO-584/Atoms/CardButton/CardButton.js.map +1 -1
  308. package/Experiments/CRO-584/Atoms/CardButton/CardButton.test.js +3 -14
  309. package/Experiments/CRO-584/Atoms/CardButton/CardButton.test.js.map +1 -1
  310. package/Experiments/CRO-584/Atoms/CardButton/CardButtonStory.js +19 -20
  311. package/Experiments/CRO-584/Atoms/CardButton/CardButtonStory.js.map +1 -1
  312. package/Experiments/CRO-584/Atoms/ErrorMessageProvider/ErrorMessageProvider.js +18 -19
  313. package/Experiments/CRO-584/Atoms/ErrorMessageProvider/ErrorMessageProvider.js.map +1 -1
  314. package/Experiments/CRO-584/Atoms/ErrorMessageProvider/ErrorMessageProvider.test.js +18 -19
  315. package/Experiments/CRO-584/Atoms/ErrorMessageProvider/ErrorMessageProvider.test.js.map +1 -1
  316. package/Experiments/CRO-584/Atoms/FormControl/FormControl.test.js +2 -13
  317. package/Experiments/CRO-584/Atoms/FormControl/FormControl.test.js.map +1 -1
  318. package/Experiments/CRO-584/Atoms/FormControl/FormControlStory.js +1 -12
  319. package/Experiments/CRO-584/Atoms/FormControl/FormControlStory.js.map +1 -1
  320. package/Experiments/CRO-584/Atoms/Input/Input.js +19 -9
  321. package/Experiments/CRO-584/Atoms/Input/Input.js.map +1 -1
  322. package/Experiments/CRO-584/Atoms/Input/Input.test.js +1 -12
  323. package/Experiments/CRO-584/Atoms/Input/Input.test.js.map +1 -1
  324. package/Experiments/CRO-584/Atoms/Input/InputStory.js +1 -12
  325. package/Experiments/CRO-584/Atoms/Input/InputStory.js.map +1 -1
  326. package/Experiments/CRO-584/Atoms/Input/icons.js +1 -12
  327. package/Experiments/CRO-584/Atoms/Input/icons.js.map +1 -1
  328. package/Experiments/CRO-584/Atoms/InputLabel/InputLabel.test.js +1 -12
  329. package/Experiments/CRO-584/Atoms/InputLabel/InputLabel.test.js.map +1 -1
  330. package/Experiments/CRO-584/Atoms/InputLabel/InputLabelStory.js +1 -12
  331. package/Experiments/CRO-584/Atoms/InputLabel/InputLabelStory.js.map +1 -1
  332. package/Experiments/CRO-584/Atoms/Text/Text.js +1 -12
  333. package/Experiments/CRO-584/Atoms/Text/Text.js.map +1 -1
  334. package/Experiments/CRO-584/Atoms/Text/Text.test.js +1 -12
  335. package/Experiments/CRO-584/Atoms/Text/Text.test.js.map +1 -1
  336. package/Experiments/CRO-584/Atoms/Text/TextStory.js +2 -13
  337. package/Experiments/CRO-584/Atoms/Text/TextStory.js.map +1 -1
  338. package/Experiments/CRO-584/Atoms/Text/defaultProps.d.ts +1 -1
  339. package/Experiments/CRO-584/Molecules/CheckBox/CheckBox.js +23 -24
  340. package/Experiments/CRO-584/Molecules/CheckBox/CheckBox.js.map +1 -1
  341. package/Experiments/CRO-584/Molecules/CheckBox/CheckBox.test.js +11 -22
  342. package/Experiments/CRO-584/Molecules/CheckBox/CheckBox.test.js.map +1 -1
  343. package/Experiments/CRO-584/Molecules/CheckBox/CheckBoxStory.js +1 -12
  344. package/Experiments/CRO-584/Molecules/CheckBox/CheckBoxStory.js.map +1 -1
  345. package/Experiments/CRO-584/Molecules/CheckBox/ICheckboxProps.d.ts +0 -1
  346. package/Experiments/CRO-584/Molecules/IconTileCheckBox/IComponentProps.d.ts +0 -1
  347. package/Experiments/CRO-584/Molecules/IconTileCheckBox/IconTileCheckBox.js +1 -12
  348. package/Experiments/CRO-584/Molecules/IconTileCheckBox/IconTileCheckBox.js.map +1 -1
  349. package/Experiments/CRO-584/Molecules/IconTileCheckBox/IconTileCheckBox.test.js +17 -7
  350. package/Experiments/CRO-584/Molecules/IconTileCheckBox/IconTileCheckBox.test.js.map +1 -1
  351. package/Experiments/CRO-584/Molecules/IconTileCheckBox/IconTileCheckBoxStory.js +1 -12
  352. package/Experiments/CRO-584/Molecules/IconTileCheckBox/IconTileCheckBoxStory.js.map +1 -1
  353. package/Experiments/CRO-584/Molecules/IconTileRadioButton/IComponentProps.d.ts +0 -1
  354. package/Experiments/CRO-584/Molecules/IconTileRadioButton/IconTileRadioButton.js +2 -13
  355. package/Experiments/CRO-584/Molecules/IconTileRadioButton/IconTileRadioButton.js.map +1 -1
  356. package/Experiments/CRO-584/Molecules/IconTileRadioButton/IconTileRadioButton.test.js +28 -29
  357. package/Experiments/CRO-584/Molecules/IconTileRadioButton/IconTileRadioButton.test.js.map +1 -1
  358. package/Experiments/CRO-584/Molecules/IconTileRadioButton/IconTileRadioButtonStory.js +18 -19
  359. package/Experiments/CRO-584/Molecules/IconTileRadioButton/IconTileRadioButtonStory.js.map +1 -1
  360. package/Experiments/CRO-584/Molecules/RadioButton/IRadioButtonProps.d.ts +0 -1
  361. package/Experiments/CRO-584/Molecules/RadioButton/RadioButton.js +3 -14
  362. package/Experiments/CRO-584/Molecules/RadioButton/RadioButton.js.map +1 -1
  363. package/Experiments/CRO-584/Molecules/RadioButton/RadioButton.test.js +8 -19
  364. package/Experiments/CRO-584/Molecules/RadioButton/RadioButton.test.js.map +1 -1
  365. package/Experiments/CRO-584/Molecules/RadioButton/RadioButtonStory.js +1 -12
  366. package/Experiments/CRO-584/Molecules/RadioButton/RadioButtonStory.js.map +1 -1
  367. package/Experiments/CRO-584/Molecules/TextField/TextField.js +1 -1
  368. package/Experiments/CRO-584/Molecules/TextField/TextField.js.map +1 -1
  369. package/Experiments/CRO-584/Molecules/TextField/TextFieldStory.js +1 -12
  370. package/Experiments/CRO-584/Molecules/TextField/TextFieldStory.js.map +1 -1
  371. package/Experiments/CRO-584/Molecules/TextField/defaultProps.d.ts +1 -1
  372. package/Experiments/CRO-584/Organisms/ListLayout/ListLayout.js +2 -13
  373. package/Experiments/CRO-584/Organisms/ListLayout/ListLayout.js.map +1 -1
  374. package/Experiments/CRO-584/Organisms/ListLayout/ListLayout.test.js +2 -13
  375. package/Experiments/CRO-584/Organisms/ListLayout/ListLayout.test.js.map +1 -1
  376. package/Experiments/CRO-584/Organisms/ListLayout/ListLayoutStory.js +1 -12
  377. package/Experiments/CRO-584/Organisms/ListLayout/ListLayoutStory.js.map +1 -1
  378. package/Experiments/CRO-584/Organisms/ListLayout/defaultProps.d.ts +1 -1
  379. package/Experiments/CRO-584/Organisms/RadioGroup/RadioGroup.js +18 -19
  380. package/Experiments/CRO-584/Organisms/RadioGroup/RadioGroup.js.map +1 -1
  381. package/Experiments/CRO-584/Organisms/RadioGroup/RadioGroup.test.js +8 -19
  382. package/Experiments/CRO-584/Organisms/RadioGroup/RadioGroup.test.js.map +1 -1
  383. package/Experiments/CRO-584/Organisms/RadioGroup/RadioGroupContext.d.ts +0 -1
  384. package/Experiments/CRO-584/Organisms/RadioGroup/RadioGroupStory.js +1 -12
  385. package/Experiments/CRO-584/Organisms/RadioGroup/RadioGroupStory.js.map +1 -1
  386. package/Experiments/CRO-584/Organisms/TileLayout/IconTileCheckBoxStory.js +18 -8
  387. package/Experiments/CRO-584/Organisms/TileLayout/IconTileCheckBoxStory.js.map +1 -1
  388. package/Experiments/CRO-584/Organisms/TileLayout/IconTileRadioButtonStory.js +18 -8
  389. package/Experiments/CRO-584/Organisms/TileLayout/IconTileRadioButtonStory.js.map +1 -1
  390. package/Experiments/CRO-584/Organisms/TileLayout/TileLayout.js +2 -13
  391. package/Experiments/CRO-584/Organisms/TileLayout/TileLayout.js.map +1 -1
  392. package/Experiments/CRO-584/Organisms/TileLayout/TileLayout.test.js +1 -12
  393. package/Experiments/CRO-584/Organisms/TileLayout/TileLayout.test.js.map +1 -1
  394. package/Experiments/CRO-584/Organisms/__helpers__/Options.d.ts +3 -3
  395. package/Experiments/CRO-584/Organisms/__helpers__/Options.js +25 -15
  396. package/Experiments/CRO-584/Organisms/__helpers__/Options.js.map +1 -1
  397. package/Experiments/CRO-584/Organisms/__helpers__/generateMenuItems.js.map +1 -1
  398. package/Experiments/CRO-585-a/Atoms/ProgressBar/ProgressBar.js +1 -12
  399. package/Experiments/CRO-585-a/Atoms/ProgressBar/ProgressBar.js.map +1 -1
  400. package/Experiments/Example/Atoms/CardButton/CardButton.js +18 -8
  401. package/Experiments/Example/Atoms/CardButton/CardButton.js.map +1 -1
  402. package/Experiments/Example/Atoms/CardButton/CardButton.test.js +3 -14
  403. package/Experiments/Example/Atoms/CardButton/CardButton.test.js.map +1 -1
  404. package/Experiments/Example/Atoms/CardButton/CardButtonStory.js +19 -20
  405. package/Experiments/Example/Atoms/CardButton/CardButtonStory.js.map +1 -1
  406. package/Experiments/Example/Atoms/ErrorMessageProvider/ErrorMessageProvider.js +18 -19
  407. package/Experiments/Example/Atoms/ErrorMessageProvider/ErrorMessageProvider.js.map +1 -1
  408. package/Experiments/Example/Atoms/ErrorMessageProvider/ErrorMessageProvider.test.js +18 -19
  409. package/Experiments/Example/Atoms/ErrorMessageProvider/ErrorMessageProvider.test.js.map +1 -1
  410. package/Experiments/Example/Atoms/FormControl/FormControl.test.js +2 -13
  411. package/Experiments/Example/Atoms/FormControl/FormControl.test.js.map +1 -1
  412. package/Experiments/Example/Atoms/FormControl/FormControlStory.js +1 -12
  413. package/Experiments/Example/Atoms/FormControl/FormControlStory.js.map +1 -1
  414. package/Experiments/Example/Atoms/Input/Input.js +19 -9
  415. package/Experiments/Example/Atoms/Input/Input.js.map +1 -1
  416. package/Experiments/Example/Atoms/Input/Input.test.js +1 -12
  417. package/Experiments/Example/Atoms/Input/Input.test.js.map +1 -1
  418. package/Experiments/Example/Atoms/Input/InputStory.js +1 -12
  419. package/Experiments/Example/Atoms/Input/InputStory.js.map +1 -1
  420. package/Experiments/Example/Atoms/Input/icons.js +1 -12
  421. package/Experiments/Example/Atoms/Input/icons.js.map +1 -1
  422. package/Experiments/Example/Atoms/InputLabel/InputLabel.test.js +1 -12
  423. package/Experiments/Example/Atoms/InputLabel/InputLabel.test.js.map +1 -1
  424. package/Experiments/Example/Atoms/InputLabel/InputLabelStory.js +1 -12
  425. package/Experiments/Example/Atoms/InputLabel/InputLabelStory.js.map +1 -1
  426. package/Experiments/Example/Atoms/Text/Text.js +1 -12
  427. package/Experiments/Example/Atoms/Text/Text.js.map +1 -1
  428. package/Experiments/Example/Atoms/Text/Text.test.js +1 -12
  429. package/Experiments/Example/Atoms/Text/Text.test.js.map +1 -1
  430. package/Experiments/Example/Atoms/Text/TextStory.js +2 -13
  431. package/Experiments/Example/Atoms/Text/TextStory.js.map +1 -1
  432. package/Experiments/Example/Atoms/Text/defaultProps.d.ts +1 -1
  433. package/Experiments/Example/Molecules/CheckBox/CheckBox.js +21 -22
  434. package/Experiments/Example/Molecules/CheckBox/CheckBox.js.map +1 -1
  435. package/Experiments/Example/Molecules/CheckBox/CheckBox.test.js +10 -21
  436. package/Experiments/Example/Molecules/CheckBox/CheckBox.test.js.map +1 -1
  437. package/Experiments/Example/Molecules/CheckBox/CheckBoxStory.js +1 -12
  438. package/Experiments/Example/Molecules/CheckBox/CheckBoxStory.js.map +1 -1
  439. package/Experiments/Example/Molecules/CheckBox/ICheckboxProps.d.ts +0 -1
  440. package/Experiments/Example/Molecules/TextField/TextField.js +1 -1
  441. package/Experiments/Example/Molecules/TextField/TextField.js.map +1 -1
  442. package/Experiments/Example/Molecules/TextField/TextFieldStory.js +1 -12
  443. package/Experiments/Example/Molecules/TextField/TextFieldStory.js.map +1 -1
  444. package/Experiments/Example/Molecules/TextField/defaultProps.d.ts +1 -1
  445. package/Experiments/GOLD-1420/Atoms/Button/Button.js +2 -13
  446. package/Experiments/GOLD-1420/Atoms/Button/Button.js.map +1 -1
  447. package/Experiments/GOLD-1420/Atoms/Button/ButtonStory.js +1 -12
  448. package/Experiments/GOLD-1420/Atoms/Button/ButtonStory.js.map +1 -1
  449. package/Experiments/GOLD-1420/Atoms/Button/IButtonProps.d.ts +0 -1
  450. package/Experiments/GOLD-1420/Atoms/Button/defaultProps.d.ts +1 -1
  451. package/Experiments/GOLD-1420/Atoms/CircularProgress/CircularProgressStory.js +2 -13
  452. package/Experiments/GOLD-1420/Atoms/CircularProgress/CircularProgressStory.js.map +1 -1
  453. package/Experiments/GOLD-1420/Atoms/DynamicFontSizeContainer/DynamicFontSizeContainer.js +3 -14
  454. package/Experiments/GOLD-1420/Atoms/DynamicFontSizeContainer/DynamicFontSizeContainer.js.map +1 -1
  455. package/Experiments/GOLD-1420/Atoms/IconButton/IComponentProps.d.ts +0 -1
  456. package/Experiments/GOLD-1420/Atoms/IconButton/IconButtonStory.js +1 -12
  457. package/Experiments/GOLD-1420/Atoms/IconButton/IconButtonStory.js.map +1 -1
  458. package/Experiments/GOLD-1420/Atoms/IconButton/makeIconButtonStyling.d.ts +1 -1
  459. package/Experiments/GOLD-1420/Atoms/InsetCheckbox/InsetCheckbox.d.ts +0 -1
  460. package/Experiments/GOLD-1420/Molecules/NavBar/NavBar.js +1 -12
  461. package/Experiments/GOLD-1420/Molecules/NavBar/NavBar.js.map +1 -1
  462. package/Experiments/GOLD-1420/Molecules/NavBar/NavBarStory.js +1 -12
  463. package/Experiments/GOLD-1420/Molecules/NavBar/NavBarStory.js.map +1 -1
  464. package/Experiments/GOLD-1420/Molecules/NavBar/defaultProps.d.ts +1 -1
  465. package/Helpers/React/FunctionComponentWithDefaultProps.d.ts +0 -1
  466. package/Helpers/React/css.d.ts +0 -1
  467. package/Helpers/React/renderWithProviders.js +1 -12
  468. package/Helpers/React/renderWithProviders.js.map +1 -1
  469. package/Helpers/deviceSpecificHandlers.js.map +1 -1
  470. package/Helpers/useDidUpdate.js.map +1 -1
  471. package/Interfaces/Atoms/AnimationWrapper/AnimationWrapper.js.map +1 -1
  472. package/Interfaces/Atoms/Button/Button.js.map +1 -1
  473. package/Interfaces/Atoms/CircularProgress/CircularProgress.js.map +1 -1
  474. package/Interfaces/Atoms/ErrorMessage/ErrorMessage.js.map +1 -1
  475. package/Interfaces/Atoms/ErrorMessageProvider/ErrorMessageProvider.js.map +1 -1
  476. package/Interfaces/Atoms/IconButton/IconButton.js.map +1 -1
  477. package/Interfaces/Atoms/InfoPanel/InfoPanel.js.map +1 -1
  478. package/Interfaces/Atoms/Modal/Modal.js.map +1 -1
  479. package/Interfaces/Atoms/ProgressBar/ProgressBar.js.map +1 -1
  480. package/Interfaces/Atoms/Text/Text.js.map +1 -1
  481. package/Interfaces/Molecules/CheckBox/CheckBox.js.map +1 -1
  482. package/Interfaces/Molecules/DatePicker/DatePicker.js.map +1 -1
  483. package/Interfaces/Molecules/DropDownSelect/DropDownSelect.js.map +1 -1
  484. package/Interfaces/Molecules/IconTileCheckBox/IconTileCheckBox.js.map +1 -1
  485. package/Interfaces/Molecules/IconTileRadioButton/IconTileRadioButton.js.map +1 -1
  486. package/Interfaces/Molecules/NavBar/NavBar.js.map +1 -1
  487. package/Interfaces/Molecules/PhoneNumberTextField/PhoneNumberTextField.js.map +1 -1
  488. package/Interfaces/Molecules/RadioButton/RadioButton.js.map +1 -1
  489. package/Interfaces/Molecules/ScrollContainer/ScrollContainer.js.map +1 -1
  490. package/Interfaces/Molecules/SupplierCard/SupplierCard.js.map +1 -1
  491. package/Interfaces/Molecules/TextField/TextField.js.map +1 -1
  492. package/Interfaces/Molecules/ThankYouBanner/ThankYouBanner.js.map +1 -1
  493. package/Interfaces/Organisms/ListLayout/ListLayout.js.map +1 -1
  494. package/Interfaces/Organisms/RadioGroup/RadioGroup.js.map +1 -1
  495. package/Interfaces/Organisms/TileLayout/TileLayout.js.map +1 -1
  496. package/Themes/StoryThemeWrapper.js +1 -12
  497. package/Themes/StoryThemeWrapper.js.map +1 -1
  498. package/Themes/themes.js +17 -7
  499. package/Themes/themes.js.map +1 -1
  500. package/index.d.ts +1 -1
  501. package/index.js +2 -1
  502. package/index.js.map +1 -1
  503. package/package.json +3 -1
@@ -0,0 +1,710 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
54
+ var react_1 = require("@testing-library/react");
55
+ var user_event_1 = __importDefault(require("@testing-library/user-event"));
56
+ var renderWithProviders_1 = __importDefault(require("../../../Helpers/React/renderWithProviders"));
57
+ var PhoneNumberTextField_1 = __importDefault(require("./PhoneNumberTextField"));
58
+ var countryData_1 = require("./__helpers__/utils/countryData");
59
+ describe('PhoneNumberTextField', function () {
60
+ var defaultProps = {
61
+ label: 'Phone Number',
62
+ id: 'phone-input',
63
+ experimentName: 'default',
64
+ value: '',
65
+ isAnswered: false,
66
+ disabled: false,
67
+ isSafari: false,
68
+ isAutoFilledActive: false,
69
+ type: 'tel',
70
+ onBlur: jest.fn(),
71
+ onClick: jest.fn(),
72
+ };
73
+ beforeEach(function () {
74
+ jest.clearAllMocks();
75
+ });
76
+ describe('Basic Rendering', function () {
77
+ it('should display PhoneNumberTextField Component with label', function () {
78
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
79
+ expect(react_1.screen.getByText('Phone Number')).toBeInTheDocument();
80
+ });
81
+ it('should render with default country (first in list)', function () {
82
+ var countries = (0, countryData_1.getCountryData)();
83
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
84
+ // Should show the first country's flag and example
85
+ var input = react_1.screen.getByRole('textbox');
86
+ expect(input).toHaveAttribute('placeholder', countries[0].example);
87
+ });
88
+ it('should render with specified initial country', function () {
89
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { initialCountry: "GB" })));
90
+ // Should show UK's example
91
+ var input = react_1.screen.getByRole('textbox');
92
+ var ukCountry = (0, countryData_1.getCountryData)().find(function (c) { return c.code === 'GB'; });
93
+ expect(input).toHaveAttribute('placeholder', ukCountry === null || ukCountry === void 0 ? void 0 : ukCountry.example);
94
+ });
95
+ it('should have tel input type by default', function () {
96
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
97
+ var input = react_1.screen.getByRole('textbox');
98
+ expect(input).toHaveAttribute('type', 'tel');
99
+ });
100
+ it('should accept custom input type', function () {
101
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { type: "text" })));
102
+ var input = react_1.screen.getByRole('textbox');
103
+ expect(input).toHaveAttribute('type', 'text');
104
+ });
105
+ });
106
+ describe('Phone Number Input and Formatting', function () {
107
+ it('should format phone number as user types', function () { return __awaiter(void 0, void 0, void 0, function () {
108
+ var input;
109
+ return __generator(this, function (_a) {
110
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
111
+ input = react_1.screen.getByRole('textbox');
112
+ // Type a US phone number
113
+ user_event_1.default.type(input, '2023456789');
114
+ // Should be formatted
115
+ expect(input).toHaveValue('(202) 345-6789');
116
+ return [2 /*return*/];
117
+ });
118
+ }); });
119
+ it('should handle international phone number input', function () { return __awaiter(void 0, void 0, void 0, function () {
120
+ var input;
121
+ return __generator(this, function (_a) {
122
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
123
+ input = react_1.screen.getByRole('textbox');
124
+ // Type an international number
125
+ user_event_1.default.type(input, '+441212345678');
126
+ // Should be formatted and country should change
127
+ expect(input.value).toContain('121 234 5678');
128
+ return [2 /*return*/];
129
+ });
130
+ }); });
131
+ it('should call phone number change callbacks', function () { return __awaiter(void 0, void 0, void 0, function () {
132
+ var mockOnPhoneNumberChange, mockOnValidationChange, mockOnFormattedValueChange, mockOnChange, input;
133
+ return __generator(this, function (_a) {
134
+ mockOnPhoneNumberChange = jest.fn();
135
+ mockOnValidationChange = jest.fn();
136
+ mockOnFormattedValueChange = jest.fn();
137
+ mockOnChange = jest.fn();
138
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { onPhoneNumberChange: mockOnPhoneNumberChange, onValidationChange: mockOnValidationChange, onFormattedValueChange: mockOnFormattedValueChange, onChange: mockOnChange })));
139
+ input = react_1.screen.getByRole('textbox');
140
+ user_event_1.default.type(input, '2023456789');
141
+ expect(mockOnPhoneNumberChange).toHaveBeenCalled();
142
+ expect(mockOnValidationChange).toHaveBeenCalled();
143
+ expect(mockOnFormattedValueChange).toHaveBeenCalled();
144
+ expect(mockOnChange).toHaveBeenCalled();
145
+ return [2 /*return*/];
146
+ });
147
+ }); });
148
+ it('should validate phone numbers correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
149
+ var mockOnValidationChange, input, calls;
150
+ return __generator(this, function (_a) {
151
+ switch (_a.label) {
152
+ case 0:
153
+ mockOnValidationChange = jest.fn();
154
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { onValidationChange: mockOnValidationChange })));
155
+ input = react_1.screen.getByRole('textbox');
156
+ // Type a US number
157
+ user_event_1.default.type(input, '2023456789');
158
+ // Should call validation callback for each digit
159
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
160
+ expect(mockOnValidationChange).toHaveBeenCalled();
161
+ })];
162
+ case 1:
163
+ // Should call validation callback for each digit
164
+ _a.sent();
165
+ calls = mockOnValidationChange.mock.calls;
166
+ expect(calls.length).toBeGreaterThan(0);
167
+ // Check that all calls have the expected structure
168
+ calls.forEach(function (call) {
169
+ var callData = call[0];
170
+ expect(callData).toEqual(expect.objectContaining({
171
+ id: 'phone-input',
172
+ isValid: expect.any(Boolean),
173
+ phoneNumber: expect.any(String),
174
+ validationResult: expect.any(Object),
175
+ }));
176
+ });
177
+ return [2 /*return*/];
178
+ }
179
+ });
180
+ }); });
181
+ it('should show validation error for invalid numbers', function () { return __awaiter(void 0, void 0, void 0, function () {
182
+ var mockOnValidationChange, input;
183
+ return __generator(this, function (_a) {
184
+ switch (_a.label) {
185
+ case 0:
186
+ mockOnValidationChange = jest.fn();
187
+ // Error's are passed in from Chameleon - we check that the error message is displayed if the prop is passed in.
188
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { errorMessage: "Please enter a valid phone number", onValidationChange: mockOnValidationChange })));
189
+ input = react_1.screen.getByRole('textbox');
190
+ // Type incomplete number
191
+ user_event_1.default.type(input, '555');
192
+ // Should show error message from prop
193
+ expect(react_1.screen.getByText('Please enter a valid phone number')).toBeInTheDocument();
194
+ // Should call validation callback with invalid result
195
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
196
+ expect(mockOnValidationChange).toHaveBeenCalledWith(expect.objectContaining({
197
+ isValid: false,
198
+ phoneNumber: '555',
199
+ }));
200
+ })];
201
+ case 1:
202
+ // Should call validation callback with invalid result
203
+ _a.sent();
204
+ return [2 /*return*/];
205
+ }
206
+ });
207
+ }); });
208
+ it('should validate phone numbers without showing error UI when no errorMessage prop', function () { return __awaiter(void 0, void 0, void 0, function () {
209
+ var mockOnValidationChange, input;
210
+ return __generator(this, function (_a) {
211
+ switch (_a.label) {
212
+ case 0:
213
+ mockOnValidationChange = jest.fn();
214
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { onValidationChange: mockOnValidationChange })));
215
+ input = react_1.screen.getByRole('textbox');
216
+ // Type incomplete number
217
+ user_event_1.default.type(input, '555');
218
+ // Should not show any error message in UI
219
+ expect(react_1.screen.queryByText('Please enter a valid phone number')).not.toBeInTheDocument();
220
+ // But should still call validation callback with invalid result
221
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
222
+ expect(mockOnValidationChange).toHaveBeenCalledWith(expect.objectContaining({
223
+ isValid: false,
224
+ phoneNumber: '555',
225
+ }));
226
+ })];
227
+ case 1:
228
+ // But should still call validation callback with invalid result
229
+ _a.sent();
230
+ return [2 /*return*/];
231
+ }
232
+ });
233
+ }); });
234
+ });
235
+ describe('Country Selection', function () {
236
+ it('should show country selector when enableCountryChange is true (default)', function () {
237
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
238
+ var countrySelector = react_1.screen.getByRole('button', {
239
+ name: /select country/i,
240
+ });
241
+ expect(countrySelector).toBeInTheDocument();
242
+ expect(countrySelector).toHaveStyle('cursor: pointer');
243
+ });
244
+ it('should disable country selector when enableCountryChange is false', function () {
245
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { enableCountryChange: false })));
246
+ var countryDisplay = react_1.screen.getByLabelText(/country:/i);
247
+ expect(countryDisplay).toBeInTheDocument();
248
+ expect(countryDisplay).toHaveStyle('cursor: default');
249
+ });
250
+ it('should open country dropdown when country selector is clicked', function () { return __awaiter(void 0, void 0, void 0, function () {
251
+ var countrySelector;
252
+ return __generator(this, function (_a) {
253
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { useModalForCountrySelection: false })));
254
+ countrySelector = react_1.screen.getByRole('button', {
255
+ name: /select country/i,
256
+ });
257
+ user_event_1.default.click(countrySelector);
258
+ // Should open dropdown listbox
259
+ expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
260
+ return [2 /*return*/];
261
+ });
262
+ }); });
263
+ it('should open country modal when useModalForCountrySelection is true', function () { return __awaiter(void 0, void 0, void 0, function () {
264
+ var countrySelector;
265
+ return __generator(this, function (_a) {
266
+ switch (_a.label) {
267
+ case 0:
268
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { useModalForCountrySelection: true })));
269
+ countrySelector = react_1.screen.getByRole('button', {
270
+ name: /select country/i,
271
+ });
272
+ user_event_1.default.click(countrySelector);
273
+ // Should open modal
274
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
275
+ expect(react_1.screen.getByRole('dialog')).toBeInTheDocument();
276
+ })];
277
+ case 1:
278
+ // Should open modal
279
+ _a.sent();
280
+ expect(react_1.screen.getByText('Select Country')).toBeInTheDocument();
281
+ return [2 /*return*/];
282
+ }
283
+ });
284
+ }); });
285
+ it('should call onCountryChange when country is selected', function () { return __awaiter(void 0, void 0, void 0, function () {
286
+ var mockOnCountryChange, countrySelector, countries, targetCountry, countryOption;
287
+ return __generator(this, function (_a) {
288
+ mockOnCountryChange = jest.fn();
289
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { onCountryChange: mockOnCountryChange, useModalForCountrySelection: false })));
290
+ countrySelector = react_1.screen.getByRole('button', {
291
+ name: /select country/i,
292
+ });
293
+ user_event_1.default.click(countrySelector);
294
+ countries = (0, countryData_1.getCountryData)();
295
+ targetCountry = countries.find(function (c) { return c.code !== countries[0].code; });
296
+ if (targetCountry) {
297
+ countryOption = react_1.screen.getByRole('option', {
298
+ name: new RegExp(targetCountry.name),
299
+ });
300
+ user_event_1.default.click(countryOption);
301
+ expect(mockOnCountryChange).toHaveBeenCalledWith(expect.objectContaining({
302
+ selectedCountry: targetCountry,
303
+ previousCountry: countries[0],
304
+ id: 'phone-input',
305
+ }));
306
+ }
307
+ return [2 /*return*/];
308
+ });
309
+ }); });
310
+ it('should preserve and reformat phone number when country changes', function () { return __awaiter(void 0, void 0, void 0, function () {
311
+ var input, countrySelector, countries, targetCountry, countryOption;
312
+ return __generator(this, function (_a) {
313
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { useModalForCountrySelection: false })));
314
+ input = react_1.screen.getByRole('textbox');
315
+ // Type a number first
316
+ user_event_1.default.type(input, '2023456789');
317
+ expect(input).toHaveValue('(202) 345-6789');
318
+ countrySelector = react_1.screen.getByRole('button', {
319
+ name: /select country/i,
320
+ });
321
+ user_event_1.default.click(countrySelector);
322
+ countries = (0, countryData_1.getCountryData)();
323
+ targetCountry = countries.find(function (c) { return c.code !== countries[0].code; });
324
+ if (targetCountry) {
325
+ countryOption = react_1.screen.getByRole('option', {
326
+ name: new RegExp(targetCountry.name),
327
+ });
328
+ user_event_1.default.click(countryOption);
329
+ // Phone number should be preserved (though it may be reformatted for the new country)
330
+ expect(input).not.toHaveValue('');
331
+ // The original digits should still be present in some form
332
+ expect(input.value).toMatch(/2023456789/);
333
+ }
334
+ return [2 /*return*/];
335
+ });
336
+ }); });
337
+ it('should call onCountryChange when country is auto-detected from international number', function () { return __awaiter(void 0, void 0, void 0, function () {
338
+ var mockOnCountryChange, input;
339
+ return __generator(this, function (_a) {
340
+ switch (_a.label) {
341
+ case 0:
342
+ mockOnCountryChange = jest.fn();
343
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { initialCountry: "US", enableCountryChange: true, onCountryChange: mockOnCountryChange })));
344
+ input = react_1.screen.getByRole('textbox');
345
+ // Type a UK number (+44) - this should trigger auto-detection
346
+ user_event_1.default.type(input, '+441234567890');
347
+ // Should call onCountryChange for auto-detection
348
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
349
+ expect(mockOnCountryChange).toHaveBeenCalledWith(expect.objectContaining({
350
+ id: 'phone-input',
351
+ selectedCountry: expect.objectContaining({
352
+ code: 'GB',
353
+ name: 'United Kingdom',
354
+ }),
355
+ previousCountry: expect.objectContaining({
356
+ code: 'US',
357
+ }),
358
+ }));
359
+ })];
360
+ case 1:
361
+ // Should call onCountryChange for auto-detection
362
+ _a.sent();
363
+ return [2 /*return*/];
364
+ }
365
+ });
366
+ }); });
367
+ it('should call onCountryChange for different international numbers', function () { return __awaiter(void 0, void 0, void 0, function () {
368
+ var mockOnCountryChange, input;
369
+ return __generator(this, function (_a) {
370
+ switch (_a.label) {
371
+ case 0:
372
+ mockOnCountryChange = jest.fn();
373
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { initialCountry: "US", enableCountryChange: true, onCountryChange: mockOnCountryChange })));
374
+ input = react_1.screen.getByRole('textbox');
375
+ // Type a French number (+33) - this should trigger auto-detection
376
+ user_event_1.default.type(input, '+33123456789');
377
+ // Should call onCountryChange for auto-detection to France
378
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
379
+ expect(mockOnCountryChange).toHaveBeenCalledWith(expect.objectContaining({
380
+ id: 'phone-input',
381
+ selectedCountry: expect.objectContaining({
382
+ code: 'FR',
383
+ name: 'France',
384
+ }),
385
+ previousCountry: expect.objectContaining({
386
+ code: 'US',
387
+ }),
388
+ }));
389
+ })];
390
+ case 1:
391
+ // Should call onCountryChange for auto-detection to France
392
+ _a.sent();
393
+ return [2 /*return*/];
394
+ }
395
+ });
396
+ }); });
397
+ });
398
+ describe('Error States', function () {
399
+ it('should display external error message', function () {
400
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { errorMessage: "This field is required" })));
401
+ expect(react_1.screen.getByText('This field is required')).toBeInTheDocument();
402
+ });
403
+ it('should prioritize external error over validation error', function () { return __awaiter(void 0, void 0, void 0, function () {
404
+ var input;
405
+ return __generator(this, function (_a) {
406
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { errorMessage: "This field is required" })));
407
+ input = react_1.screen.getByRole('textbox');
408
+ // Type invalid number (would normally show validation error)
409
+ user_event_1.default.type(input, '123');
410
+ // Should still show external error, not validation error
411
+ expect(react_1.screen.getByText('This field is required')).toBeInTheDocument();
412
+ expect(react_1.screen.queryByText('Please enter a valid phone number')).not.toBeInTheDocument();
413
+ return [2 /*return*/];
414
+ });
415
+ }); });
416
+ });
417
+ describe('Value Prop and Controlled State', function () {
418
+ it('should parse and display value with country code', function () {
419
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { value: "+441212345678" })));
420
+ var input = react_1.screen.getByRole('textbox');
421
+ // Should show formatted UK number
422
+ expect(input.value).toContain('0121 234 5678');
423
+ });
424
+ it('should detect country from international number', function () {
425
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { value: "+441212345678" })));
426
+ // Should detect UK and show UK flag (test indirectly via placeholder)
427
+ var input = react_1.screen.getByRole('textbox');
428
+ var ukCountry = (0, countryData_1.getCountryData)().find(function (c) { return c.code === 'GB'; });
429
+ expect(input).toHaveAttribute('placeholder', ukCountry === null || ukCountry === void 0 ? void 0 : ukCountry.example);
430
+ });
431
+ });
432
+ describe('Accessibility', function () {
433
+ it('should have proper ARIA labels', function () {
434
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
435
+ var input = react_1.screen.getByRole('textbox');
436
+ expect(input).toHaveAttribute('id', 'phone-input');
437
+ var label = react_1.screen.getByText('Phone Number');
438
+ expect(label).toHaveAttribute('for', 'phone-input');
439
+ });
440
+ it('should support keyboard navigation for country selector', function () { return __awaiter(void 0, void 0, void 0, function () {
441
+ var countrySelector;
442
+ return __generator(this, function (_a) {
443
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
444
+ countrySelector = react_1.screen.getByRole('button', {
445
+ name: /select country/i,
446
+ });
447
+ // Test Enter key
448
+ countrySelector.focus();
449
+ user_event_1.default.keyboard('{Enter}');
450
+ expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
451
+ return [2 /*return*/];
452
+ });
453
+ }); });
454
+ it('should support space key for country selector', function () { return __awaiter(void 0, void 0, void 0, function () {
455
+ var countrySelector;
456
+ return __generator(this, function (_a) {
457
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
458
+ countrySelector = react_1.screen.getByRole('button', {
459
+ name: /select country/i,
460
+ });
461
+ // Test Space key
462
+ countrySelector.focus();
463
+ user_event_1.default.keyboard(' ');
464
+ expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
465
+ return [2 /*return*/];
466
+ });
467
+ }); });
468
+ });
469
+ describe('Country Search Feature', function () {
470
+ it('should enable country search by default', function () { return __awaiter(void 0, void 0, void 0, function () {
471
+ var countrySelector;
472
+ return __generator(this, function (_a) {
473
+ switch (_a.label) {
474
+ case 0:
475
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { useModalForCountrySelection: true, enableCountrySearch: true })));
476
+ countrySelector = react_1.screen.getByRole('button', {
477
+ name: /select country/i,
478
+ });
479
+ user_event_1.default.click(countrySelector);
480
+ // Should show search input in modal
481
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
482
+ expect(react_1.screen.getByPlaceholderText('Search countries...')).toBeInTheDocument();
483
+ })];
484
+ case 1:
485
+ // Should show search input in modal
486
+ _a.sent();
487
+ return [2 /*return*/];
488
+ }
489
+ });
490
+ }); });
491
+ it('should disable country search when enableCountrySearch is false', function () { return __awaiter(void 0, void 0, void 0, function () {
492
+ var countrySelector;
493
+ return __generator(this, function (_a) {
494
+ switch (_a.label) {
495
+ case 0:
496
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { enableCountrySearch: false, useModalForCountrySelection: true })));
497
+ countrySelector = react_1.screen.getByRole('button', {
498
+ name: /select country/i,
499
+ });
500
+ user_event_1.default.click(countrySelector);
501
+ // Should not show search input in modal
502
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
503
+ expect(react_1.screen.queryByPlaceholderText('Search countries...')).not.toBeInTheDocument();
504
+ })];
505
+ case 1:
506
+ // Should not show search input in modal
507
+ _a.sent();
508
+ return [2 /*return*/];
509
+ }
510
+ });
511
+ }); });
512
+ });
513
+ describe('Edge Cases', function () {
514
+ it('should handle empty value gracefully', function () {
515
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { value: "" })));
516
+ var input = react_1.screen.getByRole('textbox');
517
+ expect(input).toHaveValue('');
518
+ });
519
+ it('should handle invalid initial country code', function () {
520
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { initialCountry: "INVALID" })));
521
+ // Should fallback to first country
522
+ var countries = (0, countryData_1.getCountryData)();
523
+ var input = react_1.screen.getByRole('textbox');
524
+ expect(input).toHaveAttribute('placeholder', countries[0].example);
525
+ });
526
+ it('should handle cursor position correctly during formatting', function () { return __awaiter(void 0, void 0, void 0, function () {
527
+ var input;
528
+ return __generator(this, function (_a) {
529
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
530
+ input = react_1.screen.getByRole('textbox');
531
+ // Type partial number
532
+ user_event_1.default.type(input, '202345');
533
+ // Set cursor in middle
534
+ input.setSelectionRange(3, 3);
535
+ // Type more digits
536
+ user_event_1.default.type(input, '9');
537
+ // Cursor should be in reasonable position (exact position may vary due to formatting)
538
+ expect(input.selectionStart).toBeGreaterThan(0);
539
+ return [2 /*return*/];
540
+ });
541
+ }); });
542
+ });
543
+ describe('enableCountryChange disabled behavior', function () {
544
+ it('should not change country when typing international number and enableCountryChange is false', function () { return __awaiter(void 0, void 0, void 0, function () {
545
+ var onCountryChange, onPhoneNumberChange, input, lastCall, lastCallData;
546
+ return __generator(this, function (_a) {
547
+ switch (_a.label) {
548
+ case 0:
549
+ onCountryChange = jest.fn();
550
+ onPhoneNumberChange = jest.fn();
551
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "test-phone", label: "Phone Number", value: "", initialCountry: "US", enableCountryChange: false, onBlur: function () { }, onClick: function () { }, disabled: false, isAnswered: false, isSafari: false, isAutoFilledActive: false, type: "tel", experimentName: "test", onCountryChange: onCountryChange, onPhoneNumberChange: onPhoneNumberChange }));
552
+ input = react_1.screen.getByRole('textbox');
553
+ // Type a UK number (+44) while US is selected
554
+ user_event_1.default.type(input, '+447769481232');
555
+ // Wait for state updates
556
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
557
+ expect(onPhoneNumberChange).toHaveBeenCalled();
558
+ })];
559
+ case 1:
560
+ // Wait for state updates
561
+ _a.sent();
562
+ // Country should NOT have changed to GB
563
+ expect(onCountryChange).not.toHaveBeenCalled();
564
+ lastCall = onPhoneNumberChange.mock.calls[onPhoneNumberChange.mock.calls.length - 1];
565
+ lastCallData = lastCall[0];
566
+ expect(lastCallData.phoneNumber).toContain('+447769481232');
567
+ // Should still be using US country code context (validation should be against US)
568
+ expect(lastCallData.phoneNumber).not.toMatch(/^\+44 7769 481232$/); // UK format
569
+ return [2 /*return*/];
570
+ }
571
+ });
572
+ }); });
573
+ it('should validate against selected country only when enableCountryChange is false', function () { return __awaiter(void 0, void 0, void 0, function () {
574
+ var onValidationChange, input, lastCall, lastCallData;
575
+ return __generator(this, function (_a) {
576
+ switch (_a.label) {
577
+ case 0:
578
+ onValidationChange = jest.fn();
579
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "test-phone", label: "Phone Number", value: "", initialCountry: "US", enableCountryChange: false, onBlur: function () { }, onClick: function () { }, disabled: false, isAnswered: false, isSafari: false, isAutoFilledActive: false, type: "tel", experimentName: "test", onValidationChange: onValidationChange }));
580
+ input = react_1.screen.getByRole('textbox');
581
+ // Type a UK number that's invalid for US
582
+ user_event_1.default.type(input, '+447769481231');
583
+ // Wait for validation
584
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
585
+ expect(onValidationChange).toHaveBeenCalled();
586
+ })];
587
+ case 1:
588
+ // Wait for validation
589
+ _a.sent();
590
+ lastCall = onValidationChange.mock.calls[onValidationChange.mock.calls.length - 1];
591
+ lastCallData = lastCall[0];
592
+ expect(lastCallData.isValid).toBe(false);
593
+ return [2 /*return*/];
594
+ }
595
+ });
596
+ }); });
597
+ });
598
+ describe('disabled behavior', function () {
599
+ it('should disable country selector when disabled is true', function () {
600
+ var onCountryChange = jest.fn();
601
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "test-phone", label: "Phone Number", value: "", initialCountry: "US", enableCountryChange: true, onBlur: function () { }, onClick: function () { }, disabled: true, isAnswered: false, isSafari: false, isAutoFilledActive: false, type: "tel", experimentName: "test", onCountryChange: onCountryChange }));
602
+ // Find the country selector by its aria-label (when disabled, it's not a button)
603
+ var countrySelector = react_1.screen.getByLabelText('Country: United States');
604
+ // When disabled, the country selector should not be interactive
605
+ // It should not have a button role and should not respond to clicks
606
+ expect(countrySelector).toBeInTheDocument();
607
+ expect(countrySelector).not.toHaveAttribute('role', 'button');
608
+ // The country selector should have reduced opacity (this is handled by CSS)
609
+ // We can verify the disabled state by checking that clicking doesn't open the dropdown
610
+ user_event_1.default.click(countrySelector);
611
+ // Since it's disabled, no country change should occur
612
+ expect(onCountryChange).not.toHaveBeenCalled();
613
+ });
614
+ it('should disable both phone input and country selector when disabled is true', function () {
615
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "test-phone", label: "Phone Number", value: "", initialCountry: "US", enableCountryChange: true, onBlur: function () { }, onClick: function () { }, disabled: true, isAnswered: false, isSafari: false, isAutoFilledActive: false, type: "tel", experimentName: "test" }));
616
+ var input = react_1.screen.getByRole('textbox');
617
+ var countrySelector = react_1.screen.getByLabelText('Country: United States');
618
+ // Both should be disabled
619
+ expect(input).toBeDisabled();
620
+ expect(countrySelector).toBeInTheDocument();
621
+ // The country selector should not be clickable when disabled
622
+ user_event_1.default.click(countrySelector);
623
+ // No dropdown should appear (this is handled by the useCountrySelector hook)
624
+ // We can verify this by checking that the country selector doesn't have button role
625
+ expect(countrySelector).not.toHaveAttribute('role', 'button');
626
+ });
627
+ });
628
+ describe('Cursor Preservation', function () {
629
+ it('should preserve cursor position when editing from the beginning of a formatted number', function () { return __awaiter(void 0, void 0, void 0, function () {
630
+ var onPhoneNumberChange, input;
631
+ return __generator(this, function (_a) {
632
+ switch (_a.label) {
633
+ case 0:
634
+ onPhoneNumberChange = jest.fn();
635
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "cursor-test", label: "Phone Number", onPhoneNumberChange: onPhoneNumberChange, initialCountry: "US", experimentName: "cursor-test" }));
636
+ input = react_1.screen.getByRole('textbox');
637
+ // Type a full phone number first
638
+ user_event_1.default.type(input, '2023456789');
639
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
640
+ expect(input).toHaveValue('(202) 345-6789');
641
+ })];
642
+ case 1:
643
+ _a.sent();
644
+ // Clear and test editing from beginning
645
+ user_event_1.default.clear(input);
646
+ user_event_1.default.type(input, '+12023456789');
647
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
648
+ // Should format as international number
649
+ expect(input.value).toContain('202');
650
+ expect(input.value).toContain('345');
651
+ expect(input.value).toContain('6789');
652
+ })];
653
+ case 2:
654
+ _a.sent();
655
+ expect(onPhoneNumberChange).toHaveBeenCalled();
656
+ return [2 /*return*/];
657
+ }
658
+ });
659
+ }); });
660
+ it('should handle cursor preservation with international numbers', function () { return __awaiter(void 0, void 0, void 0, function () {
661
+ var onPhoneNumberChange, input;
662
+ return __generator(this, function (_a) {
663
+ switch (_a.label) {
664
+ case 0:
665
+ onPhoneNumberChange = jest.fn();
666
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "international-cursor-test", label: "Phone Number", onPhoneNumberChange: onPhoneNumberChange, initialCountry: "US", enableCountryChange: true, experimentName: "international-cursor-test" }));
667
+ input = react_1.screen.getByRole('textbox');
668
+ // Type an international number
669
+ user_event_1.default.type(input, '+447700900123');
670
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
671
+ expect(onPhoneNumberChange).toHaveBeenCalled();
672
+ })];
673
+ case 1:
674
+ _a.sent();
675
+ // Verify the number is formatted
676
+ expect(input.value).toContain('7700');
677
+ return [2 /*return*/];
678
+ }
679
+ });
680
+ }); });
681
+ it('should maintain cursor position when editing in the middle of a number', function () { return __awaiter(void 0, void 0, void 0, function () {
682
+ var onPhoneNumberChange, input, changeEvent;
683
+ return __generator(this, function (_a) {
684
+ switch (_a.label) {
685
+ case 0:
686
+ onPhoneNumberChange = jest.fn();
687
+ (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "middle-cursor-test", label: "Phone Number", onPhoneNumberChange: onPhoneNumberChange, initialCountry: "US", experimentName: "middle-cursor-test" }));
688
+ input = react_1.screen.getByRole('textbox');
689
+ // Type initial number
690
+ user_event_1.default.type(input, '2023456789');
691
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
692
+ expect(input).toHaveValue('(202) 345-6789');
693
+ })];
694
+ case 1:
695
+ _a.sent();
696
+ changeEvent = new Event('change', { bubbles: true });
697
+ Object.defineProperty(changeEvent, 'target', {
698
+ value: { value: '(202) 355-6789', selectionStart: 7 },
699
+ enumerable: true,
700
+ });
701
+ (0, react_1.fireEvent)(input, changeEvent);
702
+ // The component should handle the change without cursor jumping
703
+ expect(onPhoneNumberChange).toHaveBeenCalled();
704
+ return [2 /*return*/];
705
+ }
706
+ });
707
+ }); });
708
+ });
709
+ });
710
+ //# sourceMappingURL=PhoneNumberTextField.test.js.map