react-native-ui-lib 8.1.1 → 8.1.5

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 (515) hide show
  1. package/lib/android/build.gradle +32 -0
  2. package/lib/android/src/main/AndroidManifest.xml +4 -0
  3. package/lib/android/src/main/java/com/wix/reactnativeuilib/UiLibPackageList.java +28 -0
  4. package/lib/android/src/main/java/com/wix/reactnativeuilib/dynamicfont/DynamicFontModule.java +139 -0
  5. package/lib/android/src/main/java/com/wix/reactnativeuilib/dynamicfont/DynamicFontPackage.java +28 -0
  6. package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlightFrame.java +33 -0
  7. package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlightViewTagParams.java +50 -0
  8. package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlighterView.java +167 -0
  9. package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlighterViewManager.java +131 -0
  10. package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlighterViewPackage.java +28 -0
  11. package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/UiUtils.java +50 -0
  12. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/AppContextHolder.java +52 -0
  13. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardLayout.java +213 -0
  14. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootView.java +39 -0
  15. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootViewManager.java +29 -0
  16. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootViewShadow.java +29 -0
  17. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/KeyboardInputModule.java +34 -0
  18. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/KeyboardInputPackage.java +49 -0
  19. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/ReactContextHolder.java +16 -0
  20. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/ReactScreenMonitor.java +83 -0
  21. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/ReactSoftKeyboardMonitor.java +163 -0
  22. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/utils/PredicateFunc.java +5 -0
  23. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/utils/RuntimeUtils.java +33 -0
  24. package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/utils/ViewUtils.java +65 -0
  25. package/lib/android/src/main/java/com/wix/reactnativeuilib/utils/LogForwarder.java +45 -0
  26. package/lib/android/src/main/res/layout/wheel_picker.xml +9 -0
  27. package/lib/android/src/main/res/values/colors.xml +9 -0
  28. package/lib/android/src/main/res/values/styles.xml +9 -0
  29. package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardRegistry/keyboardRegistry.api.json +50 -0
  30. package/lib/components/Keyboard/KeyboardAccessoryView/keyboardAccessoryView.api.json +58 -0
  31. package/lib/components/Keyboard/KeyboardAwareInsetsView/keyboardAwareInsetsView.api.json +14 -0
  32. package/lib/components/Keyboard/KeyboardTrackingView/keyboardTrackingView.api.json +86 -0
  33. package/lib/ios/reactnativeuilib/dynamicfont/DynamicFont.h +9 -0
  34. package/lib/ios/reactnativeuilib/dynamicfont/DynamicFont.m +115 -0
  35. package/lib/ios/reactnativeuilib/highlighterview/HighlighterView.h +19 -0
  36. package/lib/ios/reactnativeuilib/highlighterview/HighlighterView.m +216 -0
  37. package/lib/ios/reactnativeuilib/highlighterview/HighlighterViewManager.h +6 -0
  38. package/lib/ios/reactnativeuilib/highlighterview/HighlighterViewManager.m +28 -0
  39. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/Color+Interpolation.h +39 -0
  40. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/Color+Interpolation.m +160 -0
  41. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNAnimatorTemp.h +36 -0
  42. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNAnimatorTemp.m +121 -0
  43. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNInterpolable.h +48 -0
  44. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNInterpolable.m +27 -0
  45. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNInterpolation.h +16 -0
  46. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/NSValue+Interpolation.h +19 -0
  47. package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/NSValue+Interpolation.mm +155 -0
  48. package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomInputControllerTemp.h +16 -0
  49. package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomInputControllerTemp.m +450 -0
  50. package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomKeyboardViewControllerTemp.h +18 -0
  51. package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomKeyboardViewControllerTemp.m +99 -0
  52. package/lib/ios/reactnativeuilib/keyboardtrackingview/KeyboardTrackingViewTempManager.h +14 -0
  53. package/lib/ios/reactnativeuilib/keyboardtrackingview/KeyboardTrackingViewTempManager.m +827 -0
  54. package/lib/ios/reactnativeuilib/keyboardtrackingview/ObservingInputAccessoryViewTemp.h +44 -0
  55. package/lib/ios/reactnativeuilib/keyboardtrackingview/ObservingInputAccessoryViewTemp.m +171 -0
  56. package/lib/ios/reactnativeuilib/keyboardtrackingview/UIResponder+FirstResponderTemp.h +6 -0
  57. package/lib/ios/reactnativeuilib/keyboardtrackingview/UIResponder+FirstResponderTemp.m +17 -0
  58. package/lib/ios/reactnativeuilib/safearea/SafeAreaManager.h +6 -0
  59. package/lib/ios/reactnativeuilib/safearea/SafeAreaManager.m +105 -0
  60. package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerShadowView.h +5 -0
  61. package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerShadowView.m +20 -0
  62. package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerView.h +7 -0
  63. package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerView.m +76 -0
  64. package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerViewLocalData.h +9 -0
  65. package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerViewLocalData.m +14 -0
  66. package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerViewManager.h +5 -0
  67. package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerViewManager.m +26 -0
  68. package/lib/specs/HighlighterViewNativeComponent.ts +78 -0
  69. package/lib/specs/KeyboardTrackingViewNativeComponent.ts +74 -0
  70. package/package.json +2 -25
  71. package/src/assets/Assets.d.ts +5 -0
  72. package/src/assets/emojis/index.d.ts +1343 -0
  73. package/src/assets/index.d.ts +3 -0
  74. package/src/assets/internal/index.d.ts +4 -0
  75. package/src/commons/Config.d.ts +24 -0
  76. package/src/commons/Constants.d.ts +54 -0
  77. package/src/commons/UIComponent.d.ts +4 -0
  78. package/src/commons/asBaseComponent.d.ts +15 -0
  79. package/src/commons/baseComponent.d.ts +2 -0
  80. package/src/commons/forwardRef.d.ts +8 -0
  81. package/src/commons/modifiers.d.ts +118 -0
  82. package/src/commons/new.d.ts +8 -0
  83. package/src/commons/withScrollEnabler.d.ts +13 -0
  84. package/src/commons/withScrollReached.d.ts +35 -0
  85. package/src/components/WheelPicker/Item.d.ts +28 -0
  86. package/src/components/WheelPicker/WheelPicker.driver.d.ts +18 -0
  87. package/src/components/WheelPicker/WheelPickerItem.driver.d.ts +8 -0
  88. package/src/components/WheelPicker/helpers/useListMiddleIndex.d.ts +6 -0
  89. package/src/components/WheelPicker/index.d.ts +88 -0
  90. package/src/components/WheelPicker/types.d.ts +6 -0
  91. package/src/components/WheelPicker/usePresenter.d.ts +21 -0
  92. package/src/components/actionBar/index.d.ts +35 -0
  93. package/src/components/actionSheet/index.d.ts +80 -0
  94. package/src/components/animatedImage/index.d.ts +28 -0
  95. package/src/components/avatar/index.d.ts +382 -0
  96. package/src/components/badge/index.d.ts +879 -0
  97. package/src/components/baseInput/Validators.d.ts +8 -0
  98. package/src/components/baseInput/index.d.ts +29 -0
  99. package/src/components/button/Button.driver.new.d.ts +34 -0
  100. package/src/components/button/ButtonConstants.d.ts +26 -0
  101. package/src/components/button/index.d.ts +573 -0
  102. package/src/components/button/types.d.ts +157 -0
  103. package/src/components/card/CardContext.d.ts +3 -0
  104. package/src/components/card/CardImage.d.ts +20 -0
  105. package/src/components/card/CardPresenter.d.ts +12 -0
  106. package/src/components/card/CardSection.d.ts +79 -0
  107. package/src/components/card/asCardChild.d.ts +6 -0
  108. package/src/components/card/index.d.ts +120 -0
  109. package/src/components/carousel/Carousel.driver.new.d.ts +9 -0
  110. package/src/components/carousel/CarouselPresenter.d.ts +9 -0
  111. package/src/components/carousel/index.d.ts +73 -0
  112. package/src/components/carousel/types.d.ts +107 -0
  113. package/src/components/checkbox/Checkbox.driver.d.ts +15 -0
  114. package/src/components/checkbox/index.d.ts +129 -0
  115. package/src/components/chip/chip.driver.d.ts +33 -0
  116. package/src/components/chip/index.d.ts +209 -0
  117. package/src/components/chipsInput/index.d.ts +55 -0
  118. package/src/components/colorPalette/index.d.ts +116 -0
  119. package/src/components/colorPicker/ColorPickerDialog.d.ts +39 -0
  120. package/src/components/colorPicker/ColorPickerDialogHeader.d.ts +9 -0
  121. package/src/components/colorPicker/ColorPickerDialogSliders.d.ts +10 -0
  122. package/src/components/colorPicker/ColorPickerPresenter.d.ts +16 -0
  123. package/src/components/colorPicker/ColorPickerPreview.d.ts +12 -0
  124. package/src/components/colorPicker/index.d.ts +45 -0
  125. package/src/components/colorSwatch/index.d.ts +50 -0
  126. package/src/components/connectionStatusBar/index.d.ts +33 -0
  127. package/src/components/connectionStatusBar/types.d.ts +28 -0
  128. package/src/components/dash/index.d.ts +19 -0
  129. package/src/components/dateTimePicker/DateTimePicker.driver.d.ts +7 -0
  130. package/src/components/dateTimePicker/index.d.ts +288 -0
  131. package/src/components/dateTimePicker/useOldApi.d.ts +27 -0
  132. package/src/components/dialog/Dialog.driver.new.d.ts +6 -0
  133. package/src/components/dialog/DialogHeader.d.ts +4 -0
  134. package/src/components/dialog/index.d.ts +15 -0
  135. package/src/components/dialog/types.d.ts +138 -0
  136. package/src/components/dialog/useDialogContent.d.ts +13 -0
  137. package/src/components/drawer/Swipeable.d.ts +94 -0
  138. package/src/components/drawer/index.d.ts +161 -0
  139. package/src/components/expandableSection/index.d.ts +40 -0
  140. package/src/components/fadedScrollView/index.d.ts +59 -0
  141. package/src/components/fader/index.d.ts +37 -0
  142. package/src/components/featureHighlight/index.d.ts +147 -0
  143. package/src/components/floatingButton/index.d.ts +89 -0
  144. package/src/components/gradient/index.d.ts +19 -0
  145. package/src/components/gridList/index.d.ts +5 -0
  146. package/src/components/gridList/types.d.ts +29 -0
  147. package/src/components/gridList/useGridLayout.d.ts +15 -0
  148. package/src/components/gridListItem/index.d.ts +132 -0
  149. package/src/components/gridView/index.d.ts +80 -0
  150. package/src/components/hint/Hint.driver.d.ts +6 -0
  151. package/src/components/hint/Hint.driver.new.d.ts +19 -0
  152. package/src/components/hint/HintAnchor.d.ts +13 -0
  153. package/src/components/hint/HintBubble.d.ts +12 -0
  154. package/src/components/hint/HintMockChildren.d.ts +8 -0
  155. package/src/components/hint/HintOld.d.ts +196 -0
  156. package/src/components/hint/hooks/useHintAccessibility.d.ts +10 -0
  157. package/src/components/hint/hooks/useHintLayout.d.ts +13 -0
  158. package/src/components/hint/hooks/useHintPosition.d.ts +29 -0
  159. package/src/components/hint/hooks/useHintVisibility.d.ts +6 -0
  160. package/src/components/hint/index.d.ts +14 -0
  161. package/src/components/hint/types.d.ts +106 -0
  162. package/src/components/icon/index.d.ts +97 -0
  163. package/src/components/image/Image.driver.d.ts +4 -0
  164. package/src/components/image/Image.driver.new.d.ts +2 -0
  165. package/src/components/image/index.d.ts +192 -0
  166. package/src/components/listItem/ListItemPart.d.ts +15 -0
  167. package/src/components/listItem/index.d.ts +52 -0
  168. package/src/components/listItem/types.d.ts +60 -0
  169. package/src/components/loaderScreen/index.d.ts +13 -0
  170. package/src/components/loaderScreen/types.d.ts +32 -0
  171. package/src/components/marquee/index.d.ts +5 -0
  172. package/src/components/marquee/types.d.ts +35 -0
  173. package/src/components/maskedInput/index.d.ts +5 -0
  174. package/src/components/maskedInput/new.d.ts +22 -0
  175. package/src/components/modal/Modal.driver.new.d.ts +8 -0
  176. package/src/components/modal/TopBar.d.ts +89 -0
  177. package/src/components/modal/index.d.ts +64 -0
  178. package/src/components/numberInput/NumberInput.driver.d.ts +6 -0
  179. package/src/components/numberInput/Presenter.d.ts +21 -0
  180. package/src/components/numberInput/index.d.ts +57 -0
  181. package/src/components/overlay/index.d.ts +68 -0
  182. package/src/components/pageControl/index.d.ts +56 -0
  183. package/src/components/panView/index.d.ts +21 -0
  184. package/src/components/panView/panningUtil.d.ts +38 -0
  185. package/src/components/panView/usePanGesture.d.ts +49 -0
  186. package/src/components/picker/Picker.driver.new.d.ts +44 -0
  187. package/src/components/picker/PickerContext.d.ts +4 -0
  188. package/src/components/picker/PickerItem.d.ts +11 -0
  189. package/src/components/picker/PickerItemsList.d.ts +4 -0
  190. package/src/components/picker/PickerPresenter.d.ts +7 -0
  191. package/src/components/picker/PickerSelectionStatusBar.d.ts +3 -0
  192. package/src/components/picker/helpers/useFieldType.d.ts +373 -0
  193. package/src/components/picker/helpers/useImperativePickerHandle.d.ts +5 -0
  194. package/src/components/picker/helpers/useNewPickerProps.d.ts +3 -0
  195. package/src/components/picker/helpers/usePickerLabel.d.ts +17 -0
  196. package/src/components/picker/helpers/usePickerMigrationWarnings.d.ts +4 -0
  197. package/src/components/picker/helpers/usePickerSearch.d.ts +9 -0
  198. package/src/components/picker/helpers/usePickerSelection.d.ts +16 -0
  199. package/src/components/picker/index.d.ts +15 -0
  200. package/src/components/picker/types.d.ts +321 -0
  201. package/src/components/pieChart/PieSegment.d.ts +34 -0
  202. package/src/components/pieChart/index.d.ts +15 -0
  203. package/src/components/progressBar/index.d.ts +65 -0
  204. package/src/components/progressiveImage/index.d.ts +23 -0
  205. package/src/components/radioButton/RadioButton.driver.d.ts +9 -0
  206. package/src/components/radioButton/index.d.ts +121 -0
  207. package/src/components/radioGroup/RadioGroup.driver.d.ts +13 -0
  208. package/src/components/radioGroup/RadioGroupContext.d.ts +14 -0
  209. package/src/components/radioGroup/asRadioGroupChild.d.ts +2 -0
  210. package/src/components/radioGroup/index.d.ts +47 -0
  211. package/src/components/scrollBar/index.d.ts +88 -0
  212. package/src/components/searchInput/index.d.ts +37 -0
  213. package/src/components/searchInput/types.d.ts +66 -0
  214. package/src/components/sectionsWheelPicker/SectionsWheelPicker.driver.d.ts +25 -0
  215. package/src/components/sectionsWheelPicker/index.d.ts +43 -0
  216. package/src/components/segmentedControl/index.d.ts +90 -0
  217. package/src/components/segmentedControl/segment.d.ts +111 -0
  218. package/src/components/segmentedControl/useSegmentedControlPreset.d.ts +10 -0
  219. package/src/components/skeletonView/index.d.ts +163 -0
  220. package/src/components/slider/ColorSliderGroup.d.ts +13 -0
  221. package/src/components/slider/GradientSlider.d.ts +20 -0
  222. package/src/components/slider/SliderContext.d.ts +8 -0
  223. package/src/components/slider/Thumb.d.ts +32 -0
  224. package/src/components/slider/index.d.ts +31 -0
  225. package/src/components/slider/slider.driver.d.ts +5 -0
  226. package/src/components/slider/types.d.ts +197 -0
  227. package/src/components/sortableGridList/SortableItem.d.ts +6 -0
  228. package/src/components/sortableGridList/index.d.ts +5 -0
  229. package/src/components/sortableGridList/types.d.ts +34 -0
  230. package/src/components/sortableGridList/usePresenter.d.ts +21 -0
  231. package/src/components/sortableList/SortableList.driver.new.d.ts +2 -0
  232. package/src/components/sortableList/SortableListContext.d.ts +19 -0
  233. package/src/components/sortableList/SortableListItem.d.ts +8 -0
  234. package/src/components/sortableList/SortableListItem.driver.new.d.ts +11 -0
  235. package/src/components/sortableList/index.d.ts +5 -0
  236. package/src/components/sortableList/types.d.ts +48 -0
  237. package/src/components/sortableList/usePresenter.d.ts +12 -0
  238. package/src/components/stackAggregator/index.d.ts +89 -0
  239. package/src/components/stateScreen/index.d.ts +5 -0
  240. package/src/components/stateScreen/types.d.ts +30 -0
  241. package/src/components/stepper/index.d.ts +47 -0
  242. package/src/components/svgImage/index.d.ts +14 -0
  243. package/src/components/svgImage/index.web.d.ts +18 -0
  244. package/src/components/switch/index.d.ts +102 -0
  245. package/src/components/switch/switch.driver.d.ts +18 -0
  246. package/src/components/tabController/PageCarousel.d.ts +9 -0
  247. package/src/components/tabController/TabBar.d.ts +97 -0
  248. package/src/components/tabController/TabBarContext.d.ts +18 -0
  249. package/src/components/tabController/TabBarItem.d.ts +105 -0
  250. package/src/components/tabController/TabPage.d.ts +33 -0
  251. package/src/components/tabController/index.d.ts +48 -0
  252. package/src/components/tabController/useImperativeTabControllerHandle.d.ts +6 -0
  253. package/src/components/tabController/useScrollToItem.d.ts +79 -0
  254. package/src/components/text/Text.driver.d.ts +7 -0
  255. package/src/components/text/Text.driver.new.d.ts +17 -0
  256. package/src/components/text/index.d.ts +195 -0
  257. package/src/components/textField/CharCounter.d.ts +7 -0
  258. package/src/components/textField/ClearButton.d.ts +4 -0
  259. package/src/components/textField/FieldContext.d.ts +4 -0
  260. package/src/components/textField/FloatingPlaceholder.d.ts +7 -0
  261. package/src/components/textField/Input.d.ts +8 -0
  262. package/src/components/textField/Label.d.ts +7 -0
  263. package/src/components/textField/Presenter.d.ts +7 -0
  264. package/src/components/textField/TextField.driver.new.d.ts +129 -0
  265. package/src/components/textField/ValidationMessage.d.ts +7 -0
  266. package/src/components/textField/index.d.ts +114 -0
  267. package/src/components/textField/presets/outline.d.ts +737 -0
  268. package/src/components/textField/presets/underline.d.ts +735 -0
  269. package/src/components/textField/textInput/index.d.ts +1 -0
  270. package/src/components/textField/textInput/index.web.d.ts +3 -0
  271. package/src/components/textField/types.d.ts +287 -0
  272. package/src/components/textField/useFieldState.d.ts +16 -0
  273. package/src/components/textField/useImperativeInputHandle.d.ts +4 -0
  274. package/src/components/textField/usePreset.d.ts +1696 -0
  275. package/src/components/textField/validators.d.ts +9 -0
  276. package/src/components/textFieldOld/index.d.ts +71 -0
  277. package/src/components/timeline/Line.d.ts +10 -0
  278. package/src/components/timeline/Point.d.ts +9 -0
  279. package/src/components/timeline/index.d.ts +11 -0
  280. package/src/components/timeline/line.driver.d.ts +10 -0
  281. package/src/components/timeline/point.driver.d.ts +8 -0
  282. package/src/components/timeline/timeline.driver.d.ts +25 -0
  283. package/src/components/timeline/types.d.ts +50 -0
  284. package/src/components/touchableOpacity/index.d.ts +50 -0
  285. package/src/components/view/View.driver.new.d.ts +7 -0
  286. package/src/components/view/index.d.ts +46 -0
  287. package/src/components/wizard/WizardStates.d.ts +2 -0
  288. package/src/components/wizard/WizardStep.d.ts +4 -0
  289. package/src/components/wizard/index.d.ts +31 -0
  290. package/src/components/wizard/types.d.ts +90 -0
  291. package/src/helpers/AvatarHelper.d.ts +9 -0
  292. package/src/helpers/FormattingPresenter.d.ts +6 -0
  293. package/src/helpers/Profiler.d.ts +22 -0
  294. package/src/helpers/index.d.ts +3 -0
  295. package/src/hooks/index.d.ts +14 -0
  296. package/src/hooks/useCombinedRefs/index.d.ts +3 -0
  297. package/src/hooks/useDebounce/index.d.ts +5 -0
  298. package/src/hooks/useDidUpdate/index.d.ts +6 -0
  299. package/src/hooks/useHiddenLocation/index.d.ts +13 -0
  300. package/src/hooks/useHiddenLocation/index.web.d.ts +13 -0
  301. package/src/hooks/useKeyboardHeight/index.d.ts +5 -0
  302. package/src/hooks/useMeasure/index.d.ts +15 -0
  303. package/src/hooks/useModifiers/index.d.ts +3 -0
  304. package/src/hooks/useOrientation/index.d.ts +7 -0
  305. package/src/hooks/useScrollEnabler/index.d.ts +23 -0
  306. package/src/hooks/useScrollReached/index.d.ts +28 -0
  307. package/src/hooks/useScrollTo/index.d.ts +37 -0
  308. package/src/hooks/useScrollToItem/index.d.ts +65 -0
  309. package/src/hooks/useThemeProps/index.d.ts +2 -0
  310. package/src/hooks/useToggleValue/index.d.ts +2 -0
  311. package/src/incubator/TouchableOpacity.d.ts +52 -0
  312. package/src/incubator/calendar/Agenda.d.ts +4 -0
  313. package/src/incubator/calendar/CalendarContext.d.ts +4 -0
  314. package/src/incubator/calendar/CalendarItem.d.ts +5 -0
  315. package/src/incubator/calendar/Day.d.ts +4 -0
  316. package/src/incubator/calendar/Day_OLD.d.ts +4 -0
  317. package/src/incubator/calendar/Header.d.ts +4 -0
  318. package/src/incubator/calendar/Month.d.ts +4 -0
  319. package/src/incubator/calendar/TodayButton.d.ts +4 -0
  320. package/src/incubator/calendar/Week.d.ts +4 -0
  321. package/src/incubator/calendar/WeekDaysNames.d.ts +4 -0
  322. package/src/incubator/calendar/helpers/CalendarProcessor.d.ts +2 -0
  323. package/src/incubator/calendar/helpers/DataProcessor.d.ts +2 -0
  324. package/src/incubator/calendar/helpers/DateUtils.d.ts +23 -0
  325. package/src/incubator/calendar/index.d.ts +7 -0
  326. package/src/incubator/calendar/types.d.ts +118 -0
  327. package/src/incubator/expandableOverlay/ExpandableOverlay.driver.d.ts +7 -0
  328. package/src/incubator/expandableOverlay/index.d.ts +83 -0
  329. package/src/incubator/gradient/BorderGradient.d.ts +4 -0
  330. package/src/incubator/gradient/CircleGradient.d.ts +4 -0
  331. package/src/incubator/gradient/RectangleGradient.d.ts +4 -0
  332. package/src/incubator/gradient/index.d.ts +5 -0
  333. package/src/incubator/gradient/types.d.ts +26 -0
  334. package/src/incubator/gradient/useAngleTransform.d.ts +27 -0
  335. package/src/incubator/index.d.ts +9 -0
  336. package/src/incubator/slider/Slider.driver.d.ts +5 -0
  337. package/src/incubator/slider/SliderPresenter.d.ts +6 -0
  338. package/src/incubator/slider/Thumb.d.ts +24 -0
  339. package/src/incubator/slider/Track.d.ts +13 -0
  340. package/src/incubator/slider/index.d.ts +139 -0
  341. package/src/incubator/toast/Toast.driver.new.d.ts +54 -0
  342. package/src/incubator/toast/helpers/useToastAnimation.d.ts +22 -0
  343. package/src/incubator/toast/helpers/useToastPresets.d.ts +8 -0
  344. package/src/incubator/toast/helpers/useToastTimer.d.ts +6 -0
  345. package/src/incubator/toast/index.d.ts +9 -0
  346. package/src/incubator/toast/index.js +4 -1
  347. package/src/incubator/toast/types.d.ts +111 -0
  348. package/src/index.d.ts +92 -0
  349. package/src/optionalDependencies/BlurViewPackage.d.ts +2 -0
  350. package/src/optionalDependencies/BlurViewPackage.web.d.ts +2 -0
  351. package/src/optionalDependencies/DateTimePickerPackage.d.ts +2 -0
  352. package/src/optionalDependencies/FlashListPackage.d.ts +2 -0
  353. package/src/optionalDependencies/HapticFeedbackPackage.d.ts +2 -0
  354. package/src/optionalDependencies/LinearGradientPackage.d.ts +2 -0
  355. package/src/optionalDependencies/MomentPackage.d.ts +2 -0
  356. package/src/optionalDependencies/NetInfoPackage.d.ts +2 -0
  357. package/src/optionalDependencies/PostCssPackage.d.ts +5 -0
  358. package/src/optionalDependencies/ShimmerPackage.d.ts +2 -0
  359. package/src/optionalDependencies/SvgPackage.d.ts +3 -0
  360. package/src/optionalDependencies/index.d.ts +9 -0
  361. package/src/optionalDependencies/index.web.d.ts +7 -0
  362. package/src/services/HapticService.d.ts +15 -0
  363. package/src/services/LogService.d.ts +35 -0
  364. package/src/services/index.d.ts +2 -0
  365. package/src/style/borderRadiuses.d.ts +30 -0
  366. package/src/style/colorName.d.ts +8 -0
  367. package/src/style/colorNameMap.d.ts +2 -0
  368. package/src/style/colors.d.ts +274 -0
  369. package/src/style/colorsPalette.d.ts +101 -0
  370. package/src/style/components.d.ts +15 -0
  371. package/src/style/componentsColors.d.ts +5 -0
  372. package/src/style/designTokens.d.ts +69 -0
  373. package/src/style/designTokensDM.d.ts +69 -0
  374. package/src/style/dividers.d.ts +11 -0
  375. package/src/style/index.d.ts +13 -0
  376. package/src/style/scheme.d.ts +57 -0
  377. package/src/style/shadows.d.ts +223 -0
  378. package/src/style/spacings.d.ts +32 -0
  379. package/src/style/themeManager.d.ts +22 -0
  380. package/src/style/typography.d.ts +26 -0
  381. package/src/style/typographyPresets.d.ts +7 -0
  382. package/src/testkit/Component.driver.d.ts +30 -0
  383. package/src/testkit/DriverException.d.ts +12 -0
  384. package/src/testkit/UniDriver.d.ts +29 -0
  385. package/src/testkit/drivers/TestingLibraryDriver.d.ts +26 -0
  386. package/src/testkit/index.d.ts +25 -0
  387. package/src/testkit/new/Component.driver.d.ts +16 -0
  388. package/src/testkit/new/useDraggable.driver.d.ts +15 -0
  389. package/src/testkit/new/usePressable.driver.d.ts +14 -0
  390. package/src/testkit/new/useScrollable.driver.d.ts +13 -0
  391. package/src/typings/assets.d.ts +52 -0
  392. package/src/typings/common.d.ts +12 -0
  393. package/src/typings/module.d.ts +13 -0
  394. package/src/typings/recorderTypes.d.ts +13 -0
  395. package/src/uilib-test-renderer/helper.d.ts +8 -0
  396. package/src/uilib-test-renderer/index.d.ts +4 -0
  397. package/src/uilib-test-renderer/scrollViewHelper.d.ts +9 -0
  398. package/src/utils/dateUtils.d.ts +2 -0
  399. package/src/utils/imageUtils.d.ts +5 -0
  400. package/src/utils/index.d.ts +4 -0
  401. package/src/utils/styleUtils.d.ts +7 -0
  402. package/src/utils/textUtils.d.ts +8 -0
  403. package/jestSetup/jest-setup.js +0 -154
  404. package/lib/components/DynamicFonts/FontDownloader.d.js +0 -1
  405. package/lib/components/DynamicFonts/FontLoader.d.js +0 -1
  406. package/lib/components/DynamicFonts/NoPermissionsAcquirer.d.js +0 -1
  407. package/lib/components/DynamicFonts/PermissionsAcquirer.android.d.js +0 -1
  408. package/lib/components/DynamicFonts/PermissionsAcquirer.ios.d.js +0 -2
  409. package/lib/components/DynamicFonts/PermissionsAcquirer.web.d.js +0 -2
  410. package/lib/components/DynamicFonts/RNFSPackage.d.js +0 -1
  411. package/lib/components/DynamicFonts/index.d.js +0 -3
  412. package/lib/components/HighlighterOverlayView/index.d.js +0 -1
  413. package/lib/components/HighlighterOverlayView/index.web.d.js +0 -1
  414. package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/CustomKeyboardView.android.d.js +0 -2
  415. package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/CustomKeyboardView.ios.d.js +0 -2
  416. package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/CustomKeyboardViewBase.d.js +0 -2
  417. package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/index.d.js +0 -1
  418. package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/index.web.d.js +0 -1
  419. package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardRegistry/EventEmitterManager/index.d.js +0 -1
  420. package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardRegistry/index.d.js +0 -5
  421. package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardUtils/index.d.js +0 -1
  422. package/lib/components/Keyboard/KeyboardAccessoryView/TextInputKeyboardManager/TextInputKeyboardManager.android.d.js +0 -1
  423. package/lib/components/Keyboard/KeyboardAccessoryView/TextInputKeyboardManager/TextInputKeyboardManager.ios.d.js +0 -1
  424. package/lib/components/Keyboard/KeyboardAccessoryView/TextInputKeyboardManager/index.d.js +0 -1
  425. package/lib/components/Keyboard/KeyboardAccessoryView/index.d.js +0 -7
  426. package/lib/components/Keyboard/KeyboardAwareInsetsView/index.d.js +0 -1
  427. package/lib/components/Keyboard/KeyboardTrackingView/KeyboardTrackingView.android.d.js +0 -1
  428. package/lib/components/Keyboard/KeyboardTrackingView/KeyboardTrackingView.ios.d.js +0 -10
  429. package/lib/components/Keyboard/KeyboardTrackingView/index.d.js +0 -1
  430. package/lib/components/Keyboard/KeyboardTrackingView/index.web.d.js +0 -1
  431. package/lib/components/Keyboard/index.d.js +0 -4
  432. package/lib/components/SafeArea/SafeAreaInsetsManager.d.js +0 -1
  433. package/lib/components/SafeArea/SafeAreaSpacerView.d.js +0 -1
  434. package/lib/components/SafeArea/SafeAreaSpacerView.web.d.js +0 -1
  435. package/lib/components/SafeArea/index.d.js +0 -1
  436. package/lib/components/index.d.js +0 -6
  437. package/lib/scripts/releaseNative.js +0 -72
  438. package/lib/specs/HighlighterViewNativeComponent.d.js +0 -1
  439. package/lib/specs/HighlighterViewNativeComponent.js +0 -8
  440. package/lib/specs/KeyboardTrackingViewNativeComponent.d.js +0 -1
  441. package/lib/specs/KeyboardTrackingViewNativeComponent.js +0 -8
  442. package/scripts/build/.babelrc.exports.js +0 -6
  443. package/scripts/build/build.js +0 -35
  444. package/scripts/build/buildPackages/buildComponentsPackages.js +0 -18
  445. package/scripts/build/buildPackages/buildCustomPackages.js +0 -106
  446. package/scripts/build/buildPackages/index.js +0 -6
  447. package/scripts/createCalendarMockData.js +0 -37
  448. package/scripts/docs/buildDocs.js +0 -1
  449. package/scripts/prepush.js +0 -71
  450. package/scripts/release/prReleaseNotes.js +0 -6
  451. package/scripts/release/release.js +0 -99
  452. package/scripts/updateWebAssets.js +0 -88
  453. package/scripts/utils.js +0 -21
  454. package/src/assets/__tests__/Assets.spec.js +0 -110
  455. package/src/commons/__tests__/baseComponent.spec.js +0 -36
  456. package/src/commons/__tests__/constants.spec.js +0 -202
  457. package/src/commons/__tests__/modifiers.spec.js +0 -453
  458. package/src/components/WheelPicker/__tests__/index.spec.js +0 -121
  459. package/src/components/WheelPicker/__tests__/useListMiddleIndex.spec.js +0 -40
  460. package/src/components/WheelPicker/__tests__/usePresenter.spec.js +0 -87
  461. package/src/components/avatar/__tests__/index.spec.js +0 -25
  462. package/src/components/badge/__tests__/index.spec.js +0 -84
  463. package/src/components/button/__tests__/index.driver.spec.js +0 -209
  464. package/src/components/button/__tests__/index.spec.js +0 -287
  465. package/src/components/card/__tests__/CardPresenter.spec.js +0 -35
  466. package/src/components/carousel/__tests__/CarouselPresenter.spec.js +0 -52
  467. package/src/components/carousel/__tests__/index.spec.js +0 -89
  468. package/src/components/checkbox/__tests__/index.spec.js +0 -357
  469. package/src/components/chip/__tests__/index.spec.js +0 -63
  470. package/src/components/connectionStatusBar/__tests__/index.spec.js +0 -41
  471. package/src/components/dateTimePicker/__tests__/index.spec.js +0 -44
  472. package/src/components/dialog/__tests__/index.new.spec.js +0 -118
  473. package/src/components/featureHighlight/__tests__/index.spec.js +0 -76
  474. package/src/components/floatingButton/__tests__/index.spec.js +0 -229
  475. package/src/components/hint/__tests__/index.spec.js +0 -108
  476. package/src/components/image/__tests__/index.spec.js +0 -56
  477. package/src/components/maskedInput/__tests__/maskedInput.new.spec.js +0 -19
  478. package/src/components/maskedInput/__tests__/maskedInput.old.spec.js +0 -20
  479. package/src/components/modal/__tests__/index.spec.js +0 -58
  480. package/src/components/numberInput/__tests__/Presenter.spec.js +0 -374
  481. package/src/components/numberInput/__tests__/index.spec.js +0 -38
  482. package/src/components/panView/__tests__/panningUtil.spec.js +0 -693
  483. package/src/components/picker/__tests__/PickerPresenter.spec.js +0 -15
  484. package/src/components/picker/__tests__/index.spec.js +0 -364
  485. package/src/components/picker/helpers/__tests__/usePickerLabel.spec.js +0 -96
  486. package/src/components/radioButton/__tests__/index.spec.js +0 -43
  487. package/src/components/radioGroup/__tests__/index.spec.js +0 -96
  488. package/src/components/sectionsWheelPicker/__tests__/index.spec.js +0 -35
  489. package/src/components/sectionsWheelPicker/__tests__/mockSections.js +0 -28
  490. package/src/components/segmentedControl/__tests__/index.spec.js +0 -25
  491. package/src/components/slider/__tests__/index.spec.js +0 -35
  492. package/src/components/sortableGridList/__tests__/index.spec.js +0 -51
  493. package/src/components/sortableGridList/__tests__/usePresenter.spec.js +0 -231
  494. package/src/components/sortableList/__tests__/index.spec.js +0 -105
  495. package/src/components/switch/__tests__/index.spec.js +0 -96
  496. package/src/components/text/__tests__/index.driver.spec.js +0 -124
  497. package/src/components/text/__tests__/index.spec.js +0 -245
  498. package/src/components/textField/__tests__/Presenter.spec.js +0 -240
  499. package/src/components/textField/__tests__/index.driver.spec.js +0 -639
  500. package/src/components/timeline/__tests__/driver.index.spec.js +0 -133
  501. package/src/helpers/__tests__/AvatarHelper.spec.js +0 -170
  502. package/src/hooks/useDidUpdate/__tests__/useDidUpdate.spec.js +0 -80
  503. package/src/hooks/useOrientation/__tests__/useOrientation.spec.js +0 -70
  504. package/src/hooks/useToggleValue/__tests__/useToggleValue.spec.js +0 -89
  505. package/src/incubator/calendar/__tests__/DateUtils.spec.js +0 -367
  506. package/src/incubator/expandableOverlay/__tests__/index.spec.js +0 -114
  507. package/src/incubator/gradient/__tests__/useAngleTransform.spec.js +0 -126
  508. package/src/incubator/slider/__tests__/SliderPresenter.spec.js +0 -43
  509. package/src/incubator/slider/__tests__/index.spec.js +0 -34
  510. package/src/incubator/toast/__tests__/index.spec.js +0 -64
  511. package/src/style/__tests__/colors.spec.js +0 -313
  512. package/src/style/__tests__/scheme.spec.js +0 -119
  513. package/src/utils/__tests__/Playground.perf.js +0 -14
  514. package/src/utils/__tests__/imageUtils.spec.js +0 -54
  515. package/src/utils/__tests__/textUtils.spec.js +0 -446
@@ -1,639 +0,0 @@
1
- import React, { useEffect, useState } from 'react';
2
- import { render } from '@testing-library/react-native';
3
- import Constants from "../../../commons/Constants";
4
- import Assets from "../../../assets";
5
- import View from "../../../components/view";
6
- import { TextFieldDriver } from "../TextField.driver.new";
7
- import TextField from "../index";
8
- const TEXT_FIELD_TEST_ID = 'text_field_test_id';
9
- const placeholder = 'Placeholder';
10
- const label = 'Label';
11
- const hint = 'Hint';
12
- const helperText = 'Helper Text';
13
- function TestCase(textFieldProps) {
14
- const [value, setValue] = useState(textFieldProps?.value);
15
- useEffect(() => {
16
- setValue(textFieldProps?.value);
17
- }, [textFieldProps?.value]);
18
- return <View>
19
- <TextField {...textFieldProps} testID={TEXT_FIELD_TEST_ID} value={value} onChangeText={setValue} />
20
- </View>;
21
- }
22
- const validate = jest.fn(value => {
23
- return !!value;
24
- });
25
- describe('TextField', () => {
26
- afterEach(() => {
27
- jest.clearAllMocks();
28
- });
29
- describe.each(['outline', 'underline', undefined])('on %s preset', preset => {
30
- const defaultProps = {
31
- preset
32
- };
33
- describe('sanity', () => {
34
- it('should render textField', () => {
35
- const renderTree = render(<TestCase {...defaultProps} />);
36
- const textFieldDriver = TextFieldDriver({
37
- renderTree,
38
- testID: TEXT_FIELD_TEST_ID
39
- });
40
- expect(textFieldDriver.exists()).toBe(true);
41
- });
42
- it('should render textField with correct content', () => {
43
- const renderTree = render(<TestCase {...defaultProps} value={'aa'} />);
44
- const textFieldDriver = TextFieldDriver({
45
- renderTree,
46
- testID: TEXT_FIELD_TEST_ID
47
- });
48
- expect(textFieldDriver.getValue()).toEqual('aa');
49
- });
50
- it('should change the text correctly', () => {
51
- const renderTree = render(<TestCase {...defaultProps} value={'aa'} />);
52
- const textFieldDriver = TextFieldDriver({
53
- renderTree,
54
- testID: TEXT_FIELD_TEST_ID
55
- });
56
- expect(textFieldDriver.getValue()).toEqual('aa');
57
- textFieldDriver.changeText('bb');
58
- expect(textFieldDriver.getValue()).toEqual('bb');
59
- });
60
- });
61
- describe('editable', () => {
62
- it('should be editable', () => {
63
- const renderTree = render(<TestCase {...defaultProps} />);
64
- const textFieldDriver = TextFieldDriver({
65
- renderTree,
66
- testID: TEXT_FIELD_TEST_ID
67
- });
68
- expect(textFieldDriver.isEnabled()).toBe(true);
69
- });
70
- it('should render textField that is not editable', () => {
71
- const renderTree = render(<TestCase {...defaultProps} editable={false} />);
72
- const textFieldDriver = TextFieldDriver({
73
- renderTree,
74
- testID: TEXT_FIELD_TEST_ID
75
- });
76
- expect(textFieldDriver.isEnabled()).toBe(false);
77
- });
78
- });
79
- describe('readonly', () => {
80
- it('should render textField that is not readonly', () => {
81
- const renderTree = render(<TestCase {...defaultProps} />);
82
- const textFieldDriver = TextFieldDriver({
83
- renderTree,
84
- testID: TEXT_FIELD_TEST_ID
85
- });
86
- expect(textFieldDriver.isEnabled()).toBe(true);
87
- });
88
- it('should be readonly', () => {
89
- const renderTree = render(<TestCase {...defaultProps} readonly />);
90
- const textFieldDriver = TextFieldDriver({
91
- renderTree,
92
- testID: TEXT_FIELD_TEST_ID
93
- });
94
- expect(textFieldDriver.isEnabled()).toBe(false);
95
- });
96
- });
97
- describe('placeholder', () => {
98
- it('should render placeholder with correct text', () => {
99
- const renderTree = render(<TestCase {...defaultProps} placeholder={'mock placeholder'} />);
100
- const textFieldDriver = TextFieldDriver({
101
- renderTree,
102
- testID: TEXT_FIELD_TEST_ID
103
- });
104
- expect(textFieldDriver.getPlaceholder().exists()).toBe(true);
105
- expect(textFieldDriver.getPlaceholder().getText()).toEqual('mock placeholder');
106
- });
107
- it('should not render placeholder', () => {
108
- const renderTree = render(<TestCase {...defaultProps} />);
109
- const textFieldDriver = TextFieldDriver({
110
- renderTree,
111
- testID: TEXT_FIELD_TEST_ID
112
- });
113
- expect(textFieldDriver.getPlaceholder().exists()).toBe(false);
114
- });
115
- it('should not render placeholder after user changing the input text (no floating prop)', () => {
116
- const renderTree = render(<TestCase {...defaultProps} placeholder={'mock placeholder'} />);
117
- const textFieldDriver = TextFieldDriver({
118
- renderTree,
119
- testID: TEXT_FIELD_TEST_ID
120
- });
121
- expect(textFieldDriver.getPlaceholder().exists()).toBe(true);
122
- textFieldDriver.changeText('mock input value');
123
- expect(textFieldDriver.getPlaceholder().exists()).toBe(false);
124
- });
125
- it('should render placeholder (floating) after user changing text if floatingPlaceholder prop sent', () => {
126
- const renderTree = render(<TestCase {...defaultProps} placeholder={'mock placeholder'} floatingPlaceholder />);
127
- const textFieldDriver = TextFieldDriver({
128
- renderTree,
129
- testID: TEXT_FIELD_TEST_ID
130
- });
131
- expect(textFieldDriver.getPlaceholder().exists()).toBe(true);
132
- textFieldDriver.changeText('mock input value');
133
- expect(textFieldDriver.getPlaceholder().exists()).toBe(true);
134
- expect(textFieldDriver.getPlaceholder().getText()).toEqual('mock placeholder');
135
- });
136
- });
137
- describe('label', () => {
138
- it('should not render label if prop is not passed', () => {
139
- const renderTree = render(<TestCase {...defaultProps} />);
140
- const textFieldDriver = TextFieldDriver({
141
- renderTree,
142
- testID: TEXT_FIELD_TEST_ID
143
- });
144
- expect(textFieldDriver.getLabel().exists()).toBe(false);
145
- });
146
- it('should render a label', () => {
147
- const renderTree = render(<TestCase {...defaultProps} label={'mock label'} />);
148
- const textFieldDriver = TextFieldDriver({
149
- renderTree,
150
- testID: TEXT_FIELD_TEST_ID
151
- });
152
- expect(textFieldDriver.getLabel().exists()).toBe(true);
153
- expect(textFieldDriver.getLabel().getText()).toEqual('mock label');
154
- });
155
- it('should not render label if floatingPlaceholder prop is passed', () => {
156
- const renderTree = render(<TestCase {...defaultProps} label={'mock label'} floatingPlaceholder />);
157
- const textFieldDriver = TextFieldDriver({
158
- renderTree,
159
- testID: TEXT_FIELD_TEST_ID
160
- });
161
- expect(textFieldDriver.getLabel().exists()).toBe(false);
162
- });
163
- });
164
- describe('validation message', () => {
165
- it('should not render validationMessage if enableErrors is undefined', () => {
166
- const renderTree = render(<TestCase {...defaultProps} value={''} validationMessage={'mock message'} validateOnStart enableErrors={undefined} />);
167
- const textFieldDriver = TextFieldDriver({
168
- renderTree,
169
- testID: TEXT_FIELD_TEST_ID
170
- });
171
- expect(textFieldDriver.getValidationMessage().exists()).toBe(false);
172
- });
173
- it('should not render validationMessage if enableErrors is not passed (passed by the preset)', () => {
174
- const renderTree = render(<TestCase {...defaultProps} value={''} validationMessage={'mock message'} validateOnStart />);
175
- const textFieldDriver = TextFieldDriver({
176
- renderTree,
177
- testID: TEXT_FIELD_TEST_ID
178
- });
179
- expect(textFieldDriver.getValidationMessage().exists()).toBe(!!defaultProps?.preset);
180
- });
181
- it('should render validationMessage if validationMessage passed and remove it when validationMessage is changed to undefined', () => {
182
- const renderTree = render(<TestCase {...defaultProps} value={''} validationMessage={'mock message'} enableErrors />);
183
- const textFieldDriver = TextFieldDriver({
184
- renderTree,
185
- testID: TEXT_FIELD_TEST_ID
186
- });
187
- expect(textFieldDriver.getValidationMessage().exists()).toBe(true);
188
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('mock message');
189
- renderTree.rerender(<TestCase {...defaultProps} value={''} validationMessage={undefined} enableErrors />);
190
- expect(textFieldDriver.getValidationMessage().exists()).toBe(false);
191
- });
192
- it('should not render validationMessage if validationMessage is undefined and add it when validationMessage is passed', () => {
193
- const renderTree = render(<TestCase {...defaultProps} value={''} validationMessage={undefined} enableErrors />);
194
- const textFieldDriver = TextFieldDriver({
195
- renderTree,
196
- testID: TEXT_FIELD_TEST_ID
197
- });
198
- expect(textFieldDriver.getValidationMessage().exists()).toBe(false);
199
- renderTree.rerender(<TestCase {...defaultProps} value={''} validationMessage={'mock message'} enableErrors />);
200
- expect(textFieldDriver.getValidationMessage().exists()).toBe(true);
201
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('mock message');
202
- });
203
- it('should render validationMessage on start if input required and validateOnStart passed', () => {
204
- const renderTree = render(<TestCase {...defaultProps} value={''} validationMessage={'mock message'} enableErrors validateOnStart />);
205
- const textFieldDriver = TextFieldDriver({
206
- renderTree,
207
- testID: TEXT_FIELD_TEST_ID
208
- });
209
- expect(textFieldDriver.getValidationMessage().exists()).toBe(true);
210
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('mock message');
211
- });
212
- it('should render validationMessage when input is requires after changing the input to empty string', () => {
213
- const renderTree = render(<TestCase {...defaultProps} value={''} validate={'required'} validationMessage={'mock message'} enableErrors validateOnChange />);
214
- const textFieldDriver = TextFieldDriver({
215
- renderTree,
216
- testID: TEXT_FIELD_TEST_ID
217
- });
218
- expect(textFieldDriver.getValidationMessage().exists()).toBe(false);
219
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('');
220
- textFieldDriver.changeText('');
221
- expect(textFieldDriver.getValidationMessage().exists()).toBe(true);
222
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('mock message');
223
- });
224
- it('should render validationMessage when input is requires after changing the value to undefined', () => {
225
- const renderTree = render(<TestCase {...defaultProps} value={'Some text'} validate={'required'} validationMessage={'mock message'} enableErrors validateOnChange />);
226
- const textFieldDriver = TextFieldDriver({
227
- renderTree,
228
- testID: TEXT_FIELD_TEST_ID
229
- });
230
- expect(textFieldDriver.getValidationMessage().exists()).toBe(false);
231
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('');
232
- renderTree.rerender(<TestCase {...defaultProps} validate={'required'} validationMessage={'mock message'} enableErrors validateOnChange />);
233
- expect(textFieldDriver.getValidationMessage().exists()).toBe(true);
234
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('mock message');
235
- });
236
- it('should display validation error message when validation fail after blur', () => {
237
- const renderTree = render(<TestCase {...defaultProps} validate={'email'} validationMessage={'email is invalid'} enableErrors validateOnBlur />);
238
- const textFieldDriver = TextFieldDriver({
239
- renderTree,
240
- testID: TEXT_FIELD_TEST_ID
241
- });
242
- textFieldDriver.changeText('invalidEmail');
243
- textFieldDriver.blur();
244
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('email is invalid');
245
- });
246
- it('should remove validation error message after entering a valid input', () => {
247
- const renderTree = render(<TestCase {...defaultProps} value={'invalid'} validate={'email'} validationMessage={'email is invalid'} enableErrors validateOnStart validateOnChange />);
248
- const textFieldDriver = TextFieldDriver({
249
- renderTree,
250
- testID: TEXT_FIELD_TEST_ID
251
- });
252
- expect(textFieldDriver.getValidationMessage().getText()).toEqual('email is invalid');
253
- textFieldDriver.changeText('mail@mail.com');
254
- expect(textFieldDriver.getValidationMessage().exists()).toEqual(false);
255
- });
256
- });
257
- describe('validateOnBlur', () => {
258
- it('validate is called with undefined when defaultValue is not passed', () => {
259
- const renderTree = render(<TestCase {...defaultProps} validateOnBlur validationMessage={'Not valid'} validate={[validate]} />);
260
- const textFieldDriver = TextFieldDriver({
261
- renderTree,
262
- testID: TEXT_FIELD_TEST_ID
263
- });
264
- textFieldDriver.focus();
265
- textFieldDriver.blur();
266
- expect(validate).toHaveBeenCalledTimes(1);
267
- expect(validate).toHaveBeenCalledWith(undefined);
268
- });
269
- it('validate is called with defaultValue when defaultValue is passed', () => {
270
- const defaultValue = '1';
271
- const renderTree = render(<TestCase {...defaultProps} validateOnBlur validationMessage={'Not valid'} validate={[validate]} defaultValue={defaultValue} />);
272
- const textFieldDriver = TextFieldDriver({
273
- renderTree,
274
- testID: TEXT_FIELD_TEST_ID
275
- });
276
- textFieldDriver.focus();
277
- textFieldDriver.blur();
278
- expect(validate).toHaveBeenCalledTimes(1);
279
- expect(validate).toHaveBeenCalledWith(defaultValue);
280
- });
281
- });
282
- describe('validationIcon', () => {
283
- it('should display validationIcon', () => {
284
- const renderTree = render(<TestCase {...defaultProps} enableErrors validateOnStart validate={'required'} validationMessage={'This field is required'} validationIcon={{
285
- source: Assets.internal.icons.check
286
- }} />);
287
- const textFieldDriver = TextFieldDriver({
288
- renderTree,
289
- testID: TEXT_FIELD_TEST_ID
290
- });
291
- expect(textFieldDriver.getValidationMessage().exists()).toBe(true);
292
- expect(textFieldDriver.getValidationIcon().exists()).toBe(true);
293
- });
294
- it('should not display validationIcon', () => {
295
- const renderTree = render(<TestCase {...defaultProps} enableErrors validateOnStart validate={'required'} validationMessage={'This field is required'} />);
296
- const textFieldDriver = TextFieldDriver({
297
- renderTree,
298
- testID: TEXT_FIELD_TEST_ID
299
- });
300
- expect(textFieldDriver.getValidationMessage().exists()).toBe(true);
301
- expect(textFieldDriver.getValidationIcon().exists()).toBe(false);
302
- });
303
- });
304
- describe('defaultValue', () => {
305
- const props = {
306
- ...defaultProps,
307
- testID: TEXT_FIELD_TEST_ID,
308
- placeholder: 'Placeholder',
309
- defaultValue: 'someDefaultValue',
310
- value: 'someValue'
311
- };
312
- it('value should equal defaultValue on first render when value not passed', () => {
313
- const renderTree = render(<TestCase {...props} value={undefined} />);
314
- const textFieldDriver = TextFieldDriver({
315
- renderTree,
316
- testID: TEXT_FIELD_TEST_ID
317
- });
318
- expect(textFieldDriver.getValue()).toEqual('someDefaultValue');
319
- });
320
- it('value should equal value on first render when passed', () => {
321
- const renderTree = render(<TestCase {...props} defaultValue={undefined} />);
322
- const textFieldDriver = TextFieldDriver({
323
- renderTree,
324
- testID: TEXT_FIELD_TEST_ID
325
- });
326
- expect(textFieldDriver.getValue()).toEqual('someValue');
327
- });
328
- it.each`
329
- platform | isWeb
330
- ${'web'} | ${true}
331
- ${'native'} | ${false}
332
- `('on $platform should reset defaultValue when prop changed after first render', args => {
333
- Constants.isWeb = args.isWeb;
334
- const renderTree = render(<TestCase {...props} value={undefined} />);
335
- const textFieldDriver = TextFieldDriver({
336
- renderTree,
337
- testID: TEXT_FIELD_TEST_ID
338
- });
339
- renderTree.rerender(<TestCase {...props} value={undefined} defaultValue={'someUpdatedDefaultValue'} />);
340
- expect(textFieldDriver.getValue()).toEqual('someUpdatedDefaultValue');
341
- });
342
- });
343
- describe('char counter', () => {
344
- it('should render char counter', () => {
345
- const renderTree = render(<TestCase {...defaultProps} maxLength={10} showCharCounter />);
346
- const textFieldDriver = TextFieldDriver({
347
- renderTree,
348
- testID: TEXT_FIELD_TEST_ID
349
- });
350
- expect(textFieldDriver.getCharCounter().exists()).toBe(true);
351
- });
352
- it('should not render counter if maxLength prop not supplied', () => {
353
- const renderTree = render(<TestCase {...defaultProps} showCharCounter />);
354
- const textFieldDriver = TextFieldDriver({
355
- renderTree,
356
- testID: TEXT_FIELD_TEST_ID
357
- });
358
- expect(textFieldDriver.getCharCounter().exists()).toBe(false);
359
- });
360
- it('should not render counter if showCharCounter prop not supplied', () => {
361
- const renderTree = render(<TestCase {...defaultProps} maxLength={10} />);
362
- const textFieldDriver = TextFieldDriver({
363
- renderTree,
364
- testID: TEXT_FIELD_TEST_ID
365
- });
366
- expect(textFieldDriver.getCharCounter().exists()).toBe(false);
367
- });
368
- it('should render char counter with "0/10" if value not supplied', () => {
369
- const renderTree = render(<TestCase {...defaultProps} maxLength={10} showCharCounter />);
370
- const textFieldDriver = TextFieldDriver({
371
- renderTree,
372
- testID: TEXT_FIELD_TEST_ID
373
- });
374
- expect(textFieldDriver.getCharCounter().getText()).toEqual('0/10');
375
- });
376
- it('should render char counter with correct content', () => {
377
- const renderTree = render(<TestCase {...defaultProps} value={'abc'} maxLength={10} showCharCounter />);
378
- const textFieldDriver = TextFieldDriver({
379
- renderTree,
380
- testID: TEXT_FIELD_TEST_ID
381
- });
382
- expect(textFieldDriver.getCharCounter().getText()).toEqual('3/10');
383
- });
384
- it('should update char counter after changing the text', () => {
385
- const renderTree = render(<TestCase {...defaultProps} value={'ab'} maxLength={10} showCharCounter />);
386
- const textFieldDriver = TextFieldDriver({
387
- renderTree,
388
- testID: TEXT_FIELD_TEST_ID
389
- });
390
- expect(textFieldDriver.getCharCounter().getText()).toEqual('2/10');
391
- textFieldDriver.changeText('abcd');
392
- expect(textFieldDriver.getCharCounter().getText()).toEqual('4/10');
393
- });
394
- });
395
- describe('hint', () => {
396
- it('should hint text replace placeholder when input is focused', () => {
397
- const renderTree = render(<TestCase {...defaultProps} hint={hint} placeholder={placeholder} />);
398
- const textFieldDriver = TextFieldDriver({
399
- renderTree,
400
- testID: TEXT_FIELD_TEST_ID
401
- });
402
- expect(textFieldDriver.getPlaceholder().getText()).toEqual(placeholder);
403
- textFieldDriver.focus();
404
- expect(textFieldDriver.getPlaceholder().getText()).toEqual(hint);
405
- });
406
- it('should not show hint when hint prop not passed', () => {
407
- const renderTree = render(<TestCase {...defaultProps} placeholder={placeholder} />);
408
- const textFieldDriver = TextFieldDriver({
409
- renderTree,
410
- testID: TEXT_FIELD_TEST_ID
411
- });
412
- expect(textFieldDriver.getPlaceholder().getText()).toEqual(placeholder);
413
- textFieldDriver.focus();
414
- expect(textFieldDriver.getPlaceholder().getText()).toEqual(placeholder);
415
- });
416
- });
417
- describe('helperText', () => {
418
- it('should display helperText', () => {
419
- const renderTree = render(<TestCase {...defaultProps} placeholder={placeholder} hint={hint} helperText={helperText} />);
420
- const textFieldDriver = TextFieldDriver({
421
- renderTree,
422
- testID: TEXT_FIELD_TEST_ID
423
- });
424
- expect(textFieldDriver.getHelperText().exists()).toBe(true);
425
- });
426
- it('should not display helperText', () => {
427
- const renderTree = render(<TestCase {...defaultProps} placeholder={placeholder} />);
428
- const textFieldDriver = TextFieldDriver({
429
- renderTree,
430
- testID: TEXT_FIELD_TEST_ID
431
- });
432
- expect(textFieldDriver.getHelperText().exists()).toBe(false);
433
- });
434
- });
435
- describe('clear button', () => {
436
- it('should not render clear button', async () => {
437
- const renderTree = render(<TestCase {...defaultProps} />);
438
- const textFieldDriver = TextFieldDriver({
439
- renderTree,
440
- testID: TEXT_FIELD_TEST_ID
441
- });
442
- expect(await textFieldDriver.getClearButton().exists()).toBe(false);
443
- });
444
- it('should not display clear button when value is undefined', async () => {
445
- const renderTree = render(<TestCase {...defaultProps} showClearButton />);
446
- const textFieldDriver = TextFieldDriver({
447
- renderTree,
448
- testID: TEXT_FIELD_TEST_ID
449
- });
450
- const clearButtonDriver = textFieldDriver.getClearButton();
451
- expect(await clearButtonDriver.exists()).toBe(true);
452
- expect(await clearButtonDriver.visible()).toBe(false);
453
- });
454
- it('should not display clear button when value is empty', async () => {
455
- const renderTree = render(<TestCase {...defaultProps} showClearButton value={''} />);
456
- const textFieldDriver = TextFieldDriver({
457
- renderTree,
458
- testID: TEXT_FIELD_TEST_ID
459
- });
460
- const clearButtonDriver = textFieldDriver.getClearButton();
461
- expect(await clearButtonDriver.exists()).toBe(true);
462
- expect(await clearButtonDriver.visible()).toBe(false);
463
- });
464
- it('should display clear button when has value', async () => {
465
- const renderTree = render(<TestCase {...defaultProps} showClearButton value={'value'} />);
466
- const textFieldDriver = TextFieldDriver({
467
- renderTree,
468
- testID: TEXT_FIELD_TEST_ID
469
- });
470
- const clearButtonDriver = textFieldDriver.getClearButton();
471
- expect(await clearButtonDriver.exists()).toBe(true);
472
- expect(await clearButtonDriver.visible()).toBe(true);
473
- });
474
- it('should toggle clear button when value changes', async () => {
475
- const renderTree = render(<TestCase {...defaultProps} showClearButton />);
476
- const textFieldDriver = TextFieldDriver({
477
- renderTree,
478
- testID: TEXT_FIELD_TEST_ID
479
- });
480
- const clearButtonDriver = textFieldDriver.getClearButton();
481
- expect(clearButtonDriver.exists()).toBe(true);
482
- expect(await clearButtonDriver.visible()).toBe(false);
483
- textFieldDriver.changeText('b');
484
- expect(await clearButtonDriver.visible()).toBe(true);
485
- textFieldDriver.changeText('');
486
- expect(await clearButtonDriver.visible()).toBe(false);
487
- });
488
- it('should clear value when pressed', () => {
489
- const renderTree = render(<TestCase {...defaultProps} showClearButton value={'value'} />);
490
- const textFieldDriver = TextFieldDriver({
491
- renderTree,
492
- testID: TEXT_FIELD_TEST_ID
493
- });
494
- const clearButtonDriver = textFieldDriver.getClearButton();
495
- expect(clearButtonDriver.exists()).toBe(true);
496
- clearButtonDriver.press();
497
- expect(textFieldDriver.getValue()).toEqual('');
498
- });
499
- });
500
- describe('formatter', () => {
501
- const priceFormatter = Intl.NumberFormat('en-US');
502
- const props = {
503
- ...defaultProps,
504
- value: '10000',
505
- formatter: value => priceFormatter.format(Number(value))
506
- };
507
- it('should format value while not focused based on formatter prop', () => {
508
- const renderTree = render(<TestCase {...props} />);
509
- const textFieldDriver = TextFieldDriver({
510
- renderTree,
511
- testID: TEXT_FIELD_TEST_ID
512
- });
513
- expect(textFieldDriver.getValue()).toEqual('10,000');
514
- });
515
- it('should not format value while focused', () => {
516
- const renderTree = render(<TestCase {...props} />);
517
- const textFieldDriver = TextFieldDriver({
518
- renderTree,
519
- testID: TEXT_FIELD_TEST_ID
520
- });
521
- textFieldDriver.focus();
522
- expect(textFieldDriver.getValue()).toEqual('10000');
523
- });
524
- });
525
- describe('Mandatory Indication', () => {
526
- const getTestCaseDriver = props => {
527
- const renderTree = render(<TestCase {...defaultProps} {...props} />);
528
- return TextFieldDriver({
529
- renderTree,
530
- testID: TEXT_FIELD_TEST_ID
531
- });
532
- };
533
- const starReg = /.*\*$/;
534
- describe('label', () => {
535
- it('should show mandatory indication on the label when required validate passed', () => {
536
- const textFieldDriver = getTestCaseDriver({
537
- label,
538
- validate: 'required',
539
- showMandatoryIndication: true
540
- });
541
- const labelContent = textFieldDriver.getLabel().getText();
542
- expect(labelContent).toMatch(starReg);
543
- });
544
- it('should show mandatory indication on the label when required is passed in validate array', () => {
545
- const textFieldDriver = getTestCaseDriver({
546
- label,
547
- validate: ['required'],
548
- showMandatoryIndication: true
549
- });
550
- const labelContent = textFieldDriver.getLabel().getText();
551
- expect(labelContent).toMatch(starReg);
552
- });
553
- it('should show mandatory indication when required is passed in validate array with other validations', () => {
554
- const textFieldDriver = getTestCaseDriver({
555
- label,
556
- validate: ['email', 'required'],
557
- showMandatoryIndication: true
558
- });
559
- const labelContent = textFieldDriver.getLabel().getText();
560
- expect(labelContent).toMatch(starReg);
561
- });
562
- it('should not show mandatory indication on label when validate not passed', () => {
563
- const textFieldDriver = getTestCaseDriver({
564
- label,
565
- showMandatoryIndication: true
566
- });
567
- const labelText = textFieldDriver.getLabel().getText();
568
- expect(labelText).not.toMatch(starReg);
569
- });
570
- it('should not show mandatory indication on label when showMandatoryIndication not passed', () => {
571
- const textFieldDriver = getTestCaseDriver({
572
- label,
573
- validate: 'required'
574
- });
575
- const labelText = textFieldDriver.getLabel().getText();
576
- expect(labelText).not.toMatch(starReg);
577
- });
578
- it('should have mandatory indication on the label and not on the placeholder', () => {
579
- const textFieldDriver = getTestCaseDriver({
580
- placeholder,
581
- label,
582
- validate: 'required',
583
- showMandatoryIndication: true
584
- });
585
- const labelText = textFieldDriver.getLabel().getText();
586
- const placeholderText = textFieldDriver.getPlaceholder().getText();
587
- expect(labelText).toMatch(starReg);
588
- expect(placeholderText).not.toMatch(starReg);
589
- });
590
- });
591
- describe('placeholder', () => {
592
- it('should have mandatory indication on the placeholder', () => {
593
- const textFieldDriver = getTestCaseDriver({
594
- placeholder,
595
- showMandatoryIndication: true,
596
- validate: 'required'
597
- });
598
- const placeholderText = textFieldDriver.getPlaceholder().getText();
599
- expect(placeholderText).toMatch(starReg);
600
- });
601
- it('should not have mandatory indication on the placeholder when validate not passed', () => {
602
- const textFieldDriver = getTestCaseDriver({
603
- placeholder,
604
- label,
605
- showMandatoryIndication: true
606
- });
607
- const placeholderText = textFieldDriver.getPlaceholder().getText();
608
- const labelText = textFieldDriver.getLabel().getText();
609
- expect(placeholderText).not.toMatch(starReg);
610
- expect(labelText).not.toMatch(starReg);
611
- });
612
- it('should not have mandatory indication on the placeholder when showMandatoryIndication not passed', () => {
613
- const textFieldDriver = getTestCaseDriver({
614
- placeholder,
615
- label,
616
- validate: 'required'
617
- });
618
- const placeholderText = textFieldDriver.getPlaceholder().getText();
619
- const labelText = textFieldDriver.getLabel().getText();
620
- expect(placeholderText).not.toMatch(starReg);
621
- expect(labelText).not.toMatch(starReg);
622
- });
623
- });
624
- describe('floating placeholder', () => {
625
- it('should have mandatory indication on the floating placeholder', () => {
626
- const textFieldDriver = getTestCaseDriver({
627
- placeholder,
628
- floatingPlaceholder: true,
629
- floatOnFocus: true,
630
- showMandatoryIndication: true,
631
- validate: 'required'
632
- });
633
- const placeholderText = textFieldDriver.getPlaceholder().getText();
634
- expect(placeholderText).toMatch(starReg);
635
- });
636
- });
637
- });
638
- });
639
- });