@codeleap/mobile 2.4.7 → 3.1.1

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 (450) hide show
  1. package/mobile-packages.code-workspace +27 -0
  2. package/package.json +25 -33
  3. package/src/components/ActionIcon/index.tsx +16 -6
  4. package/src/components/ActionIcon/styles.ts +3 -90
  5. package/src/components/ActivityIndicator/index.tsx +28 -9
  6. package/src/components/ActivityIndicator/styles.ts +2 -59
  7. package/src/components/Autocomplete/index.tsx +235 -0
  8. package/src/components/Autocomplete/styles.ts +18 -0
  9. package/src/components/Autocomplete/types.ts +75 -0
  10. package/src/components/Avatar/index.tsx +126 -0
  11. package/src/components/Avatar/styles.ts +22 -0
  12. package/src/components/AvatarGroup/index.tsx +76 -0
  13. package/src/components/AvatarGroup/styles.ts +11 -0
  14. package/src/components/Backdrop/index.tsx +14 -13
  15. package/src/components/Backdrop/styles.ts +3 -24
  16. package/src/components/Badge/index.tsx +134 -0
  17. package/src/components/Badge/styles.ts +14 -0
  18. package/src/components/Button/index.tsx +39 -49
  19. package/src/components/Button/styles.ts +6 -107
  20. package/src/components/Calendar/index.tsx +3 -3
  21. package/src/components/Calendar/style.ts +2 -31
  22. package/src/components/Checkbox/index.tsx +137 -74
  23. package/src/components/Checkbox/styles.ts +13 -73
  24. package/src/components/ContentView/index.tsx +2 -2
  25. package/src/components/ContentView/styles.ts +1 -17
  26. package/src/components/DatePickerModal/index.tsx +240 -0
  27. package/src/components/DatePickerModal/styles.ts +15 -0
  28. package/src/components/DatePickerModal/types.ts +55 -0
  29. package/src/components/Drawer/index.tsx +2 -2
  30. package/src/components/Drawer/styles.ts +4 -39
  31. package/src/components/EmptyPlaceholder/index.tsx +3 -3
  32. package/src/components/EmptyPlaceholder/styles.ts +2 -47
  33. package/src/components/FileInput/styles.ts +1 -8
  34. package/src/components/Grid/index.tsx +76 -72
  35. package/src/components/Grid/styles.ts +4 -7
  36. package/src/components/Icon/index.tsx +46 -8
  37. package/src/components/Icon/styles.ts +3 -51
  38. package/src/components/Image/index.tsx +18 -22
  39. package/src/components/Image/styles.ts +1 -14
  40. package/src/components/ImageView/Spotlight.tsx +4 -2
  41. package/src/components/ImageView/component.tsx +0 -3
  42. package/src/components/InputBase/index.tsx +101 -0
  43. package/src/components/InputBase/styles.ts +135 -0
  44. package/src/components/InputBase/types.ts +28 -0
  45. package/src/components/InputBase/utils.ts +42 -0
  46. package/src/components/InputLabel/index.tsx +3 -3
  47. package/src/components/InputLabel/styles.ts +2 -14
  48. package/src/components/List/PaginationIndicator.tsx +4 -21
  49. package/src/components/List/index.tsx +84 -46
  50. package/src/components/List/styles.ts +8 -20
  51. package/src/components/LoadingOverlay/index.tsx +45 -45
  52. package/src/components/LoadingOverlay/styles.ts +5 -27
  53. package/src/components/Modal/index.tsx +56 -32
  54. package/src/components/Modal/styles.ts +3 -114
  55. package/src/components/NumberIncrement/index.tsx +318 -0
  56. package/src/components/NumberIncrement/styles.ts +14 -0
  57. package/src/components/NumberIncrement/types.ts +44 -0
  58. package/src/components/NumberIncrement/utils.ts +27 -0
  59. package/src/components/Pager/index.tsx +120 -67
  60. package/src/components/Pager/styles.ts +2 -69
  61. package/src/components/RadioInput/index.tsx +145 -68
  62. package/src/components/RadioInput/styles.ts +8 -61
  63. package/src/components/RefreshControl/index.tsx +28 -0
  64. package/src/components/RefreshControl/styles.ts +7 -0
  65. package/src/components/Scroll/index.tsx +22 -37
  66. package/src/components/Scroll/styles.ts +2 -16
  67. package/src/components/Sections/index.tsx +116 -54
  68. package/src/components/Sections/styles.ts +7 -0
  69. package/src/components/SegmentedControl/Option.tsx +51 -0
  70. package/src/components/SegmentedControl/index.tsx +51 -67
  71. package/src/components/SegmentedControl/styles.ts +7 -63
  72. package/src/components/Select/index.tsx +268 -95
  73. package/src/components/Select/styles.ts +11 -131
  74. package/src/components/Select/types.ts +47 -11
  75. package/src/components/Slider/index.tsx +151 -94
  76. package/src/components/Slider/styles.ts +7 -72
  77. package/src/components/Slider/types.ts +18 -20
  78. package/src/components/Switch/index.tsx +115 -63
  79. package/src/components/Switch/styles.ts +13 -30
  80. package/src/components/Text/index.tsx +14 -31
  81. package/src/components/Text/styles.ts +2 -41
  82. package/src/components/TextInput/index.tsx +237 -259
  83. package/src/components/TextInput/styles.ts +6 -120
  84. package/src/components/Touchable/index.tsx +74 -27
  85. package/src/components/Touchable/styles.ts +1 -12
  86. package/src/components/View/index.tsx +11 -26
  87. package/src/components/View/styles.ts +1 -17
  88. package/src/components/components.ts +9 -5
  89. package/src/components/defaultStyles.ts +74 -61
  90. package/src/index.ts +0 -1
  91. package/src/modules/PressableRipple/index.ts +5 -0
  92. package/src/modules/PressableRipple/ripple.js +258 -0
  93. package/src/modules/PressableRipple/styles.js +22 -0
  94. package/src/modules/PressableRipple/type.ts +17 -0
  95. package/src/modules/textInputMask.tsx +13 -0
  96. package/src/types/index.ts +5 -0
  97. package/src/types/utility.ts +2 -2
  98. package/src/utils/KeyboardAware/index.ts +0 -13
  99. package/src/utils/KeyboardAware/keyboardHooks.ts +69 -79
  100. package/src/utils/hooks.ts +63 -36
  101. package/src/utils/index.ts +1 -0
  102. package/src/utils/locale.ts +7 -0
  103. package/src/utils/theme.ts +1 -21
  104. package/dist/components/ActionIcon/index.d.ts +0 -13
  105. package/dist/components/ActionIcon/index.js +0 -51
  106. package/dist/components/ActionIcon/index.js.map +0 -1
  107. package/dist/components/ActionIcon/styles.d.ts +0 -65
  108. package/dist/components/ActionIcon/styles.js +0 -61
  109. package/dist/components/ActionIcon/styles.js.map +0 -1
  110. package/dist/components/ActivityIndicator/index.d.ts +0 -15
  111. package/dist/components/ActivityIndicator/index.js +0 -55
  112. package/dist/components/ActivityIndicator/index.js.map +0 -1
  113. package/dist/components/ActivityIndicator/styles.d.ts +0 -59
  114. package/dist/components/ActivityIndicator/styles.js +0 -52
  115. package/dist/components/ActivityIndicator/styles.js.map +0 -1
  116. package/dist/components/Animated.d.ts +0 -15
  117. package/dist/components/Animated.js +0 -55
  118. package/dist/components/Animated.js.map +0 -1
  119. package/dist/components/AutoComplete/index.d.ts +0 -34
  120. package/dist/components/AutoComplete/index.js +0 -126
  121. package/dist/components/AutoComplete/index.js.map +0 -1
  122. package/dist/components/AutoComplete/styles.d.ts +0 -57
  123. package/dist/components/AutoComplete/styles.js +0 -89
  124. package/dist/components/AutoComplete/styles.js.map +0 -1
  125. package/dist/components/Backdrop/index.d.ts +0 -14
  126. package/dist/components/Backdrop/index.js +0 -59
  127. package/dist/components/Backdrop/index.js.map +0 -1
  128. package/dist/components/Backdrop/styles.d.ts +0 -53
  129. package/dist/components/Backdrop/styles.js +0 -28
  130. package/dist/components/Backdrop/styles.js.map +0 -1
  131. package/dist/components/Button/index.d.ts +0 -246
  132. package/dist/components/Button/index.js +0 -115
  133. package/dist/components/Button/index.js.map +0 -1
  134. package/dist/components/Button/styles.d.ts +0 -65
  135. package/dist/components/Button/styles.js +0 -61
  136. package/dist/components/Button/styles.js.map +0 -1
  137. package/dist/components/Calendar/index.d.ts +0 -15
  138. package/dist/components/Calendar/index.js +0 -76
  139. package/dist/components/Calendar/index.js.map +0 -1
  140. package/dist/components/Calendar/style.d.ts +0 -4
  141. package/dist/components/Calendar/style.js +0 -36
  142. package/dist/components/Calendar/style.js.map +0 -1
  143. package/dist/components/Calendar/types.d.ts +0 -95
  144. package/dist/components/Calendar/types.js +0 -3
  145. package/dist/components/Calendar/types.js.map +0 -1
  146. package/dist/components/Checkbox/index.d.ts +0 -15
  147. package/dist/components/Checkbox/index.js +0 -81
  148. package/dist/components/Checkbox/index.js.map +0 -1
  149. package/dist/components/Checkbox/styles.d.ts +0 -56
  150. package/dist/components/Checkbox/styles.js +0 -53
  151. package/dist/components/Checkbox/styles.js.map +0 -1
  152. package/dist/components/ContentView/index.d.ts +0 -12
  153. package/dist/components/ContentView/index.js +0 -62
  154. package/dist/components/ContentView/index.js.map +0 -1
  155. package/dist/components/ContentView/styles.d.ts +0 -53
  156. package/dist/components/ContentView/styles.js +0 -26
  157. package/dist/components/ContentView/styles.js.map +0 -1
  158. package/dist/components/Drawer/index.d.ts +0 -7
  159. package/dist/components/Drawer/index.js +0 -66
  160. package/dist/components/Drawer/index.js.map +0 -1
  161. package/dist/components/Drawer/styles.d.ts +0 -56
  162. package/dist/components/Drawer/styles.js +0 -39
  163. package/dist/components/Drawer/styles.js.map +0 -1
  164. package/dist/components/EmptyPlaceholder/index.d.ts +0 -25
  165. package/dist/components/EmptyPlaceholder/index.js +0 -88
  166. package/dist/components/EmptyPlaceholder/index.js.map +0 -1
  167. package/dist/components/EmptyPlaceholder/styles.d.ts +0 -55
  168. package/dist/components/EmptyPlaceholder/styles.js +0 -30
  169. package/dist/components/EmptyPlaceholder/styles.js.map +0 -1
  170. package/dist/components/FileInput/index.d.ts +0 -24
  171. package/dist/components/FileInput/index.js +0 -179
  172. package/dist/components/FileInput/index.js.map +0 -1
  173. package/dist/components/FileInput/styles.d.ts +0 -53
  174. package/dist/components/FileInput/styles.js +0 -19
  175. package/dist/components/FileInput/styles.js.map +0 -1
  176. package/dist/components/Grid/index.d.ts +0 -32
  177. package/dist/components/Grid/index.js +0 -80
  178. package/dist/components/Grid/index.js.map +0 -1
  179. package/dist/components/Grid/styles.d.ts +0 -54
  180. package/dist/components/Grid/styles.js +0 -19
  181. package/dist/components/Grid/styles.js.map +0 -1
  182. package/dist/components/Icon/index.d.ts +0 -14
  183. package/dist/components/Icon/index.js +0 -75
  184. package/dist/components/Icon/index.js.map +0 -1
  185. package/dist/components/Icon/styles.d.ts +0 -61
  186. package/dist/components/Icon/styles.js +0 -49
  187. package/dist/components/Icon/styles.js.map +0 -1
  188. package/dist/components/Image/index.d.ts +0 -25
  189. package/dist/components/Image/index.js +0 -130
  190. package/dist/components/Image/index.js.map +0 -1
  191. package/dist/components/Image/styles.d.ts +0 -55
  192. package/dist/components/Image/styles.js +0 -25
  193. package/dist/components/Image/styles.js.map +0 -1
  194. package/dist/components/ImageView/Spotlight.d.ts +0 -25
  195. package/dist/components/ImageView/Spotlight.js +0 -150
  196. package/dist/components/ImageView/Spotlight.js.map +0 -1
  197. package/dist/components/ImageView/component.d.ts +0 -5
  198. package/dist/components/ImageView/component.js +0 -50
  199. package/dist/components/ImageView/component.js.map +0 -1
  200. package/dist/components/ImageView/index.d.ts +0 -2
  201. package/dist/components/ImageView/index.js +0 -15
  202. package/dist/components/ImageView/index.js.map +0 -1
  203. package/dist/components/InputLabel/index.d.ts +0 -12
  204. package/dist/components/InputLabel/index.js +0 -58
  205. package/dist/components/InputLabel/index.js.map +0 -1
  206. package/dist/components/InputLabel/styles.d.ts +0 -4
  207. package/dist/components/InputLabel/styles.js +0 -26
  208. package/dist/components/InputLabel/styles.js.map +0 -1
  209. package/dist/components/List/PaginationIndicator.d.ts +0 -67
  210. package/dist/components/List/PaginationIndicator.js +0 -51
  211. package/dist/components/List/PaginationIndicator.js.map +0 -1
  212. package/dist/components/List/index.d.ts +0 -31
  213. package/dist/components/List/index.js +0 -77
  214. package/dist/components/List/index.js.map +0 -1
  215. package/dist/components/List/styles.d.ts +0 -54
  216. package/dist/components/List/styles.js +0 -28
  217. package/dist/components/List/styles.js.map +0 -1
  218. package/dist/components/LoadingOverlay/index.d.ts +0 -11
  219. package/dist/components/LoadingOverlay/index.js +0 -60
  220. package/dist/components/LoadingOverlay/index.js.map +0 -1
  221. package/dist/components/LoadingOverlay/styles.d.ts +0 -7
  222. package/dist/components/LoadingOverlay/styles.js +0 -34
  223. package/dist/components/LoadingOverlay/styles.js.map +0 -1
  224. package/dist/components/Modal/index.d.ts +0 -43
  225. package/dist/components/Modal/index.js +0 -147
  226. package/dist/components/Modal/index.js.map +0 -1
  227. package/dist/components/Modal/styles.d.ts +0 -58
  228. package/dist/components/Modal/styles.js +0 -74
  229. package/dist/components/Modal/styles.js.map +0 -1
  230. package/dist/components/MultiSelect/index.d.ts +0 -6
  231. package/dist/components/MultiSelect/index.js +0 -119
  232. package/dist/components/MultiSelect/index.js.map +0 -1
  233. package/dist/components/MultiSelect/styles.d.ts +0 -7
  234. package/dist/components/MultiSelect/styles.js +0 -84
  235. package/dist/components/MultiSelect/styles.js.map +0 -1
  236. package/dist/components/MultiSelect/types.d.ts +0 -43
  237. package/dist/components/MultiSelect/types.js +0 -3
  238. package/dist/components/MultiSelect/types.js.map +0 -1
  239. package/dist/components/Navigation/Navigation.d.ts +0 -3
  240. package/dist/components/Navigation/Navigation.js +0 -80
  241. package/dist/components/Navigation/Navigation.js.map +0 -1
  242. package/dist/components/Navigation/constants.d.ts +0 -5
  243. package/dist/components/Navigation/constants.js +0 -11
  244. package/dist/components/Navigation/constants.js.map +0 -1
  245. package/dist/components/Navigation/index.d.ts +0 -3
  246. package/dist/components/Navigation/index.js +0 -16
  247. package/dist/components/Navigation/index.js.map +0 -1
  248. package/dist/components/Navigation/types.d.ts +0 -26
  249. package/dist/components/Navigation/types.js +0 -8
  250. package/dist/components/Navigation/types.js.map +0 -1
  251. package/dist/components/Navigation/utils.d.ts +0 -3
  252. package/dist/components/Navigation/utils.js +0 -69
  253. package/dist/components/Navigation/utils.js.map +0 -1
  254. package/dist/components/Pager/index.d.ts +0 -26
  255. package/dist/components/Pager/index.js +0 -84
  256. package/dist/components/Pager/index.js.map +0 -1
  257. package/dist/components/Pager/styles.d.ts +0 -87
  258. package/dist/components/Pager/styles.js +0 -72
  259. package/dist/components/Pager/styles.js.map +0 -1
  260. package/dist/components/RadioInput/index.d.ts +0 -27
  261. package/dist/components/RadioInput/index.js +0 -72
  262. package/dist/components/RadioInput/index.js.map +0 -1
  263. package/dist/components/RadioInput/styles.d.ts +0 -58
  264. package/dist/components/RadioInput/styles.js +0 -50
  265. package/dist/components/RadioInput/styles.js.map +0 -1
  266. package/dist/components/Scroll/index.d.ts +0 -124
  267. package/dist/components/Scroll/index.js +0 -97
  268. package/dist/components/Scroll/index.js.map +0 -1
  269. package/dist/components/Scroll/styles.d.ts +0 -53
  270. package/dist/components/Scroll/styles.js +0 -26
  271. package/dist/components/Scroll/styles.js.map +0 -1
  272. package/dist/components/Sections/index.d.ts +0 -115
  273. package/dist/components/Sections/index.js +0 -76
  274. package/dist/components/Sections/index.js.map +0 -1
  275. package/dist/components/SegmentedControl/index.d.ts +0 -52
  276. package/dist/components/SegmentedControl/index.js +0 -131
  277. package/dist/components/SegmentedControl/index.js.map +0 -1
  278. package/dist/components/SegmentedControl/styles.d.ts +0 -60
  279. package/dist/components/SegmentedControl/styles.js +0 -43
  280. package/dist/components/SegmentedControl/styles.js.map +0 -1
  281. package/dist/components/Select/index.d.ts +0 -16
  282. package/dist/components/Select/index.js +0 -122
  283. package/dist/components/Select/index.js.map +0 -1
  284. package/dist/components/Select/styles.d.ts +0 -60
  285. package/dist/components/Select/styles.js +0 -83
  286. package/dist/components/Select/styles.js.map +0 -1
  287. package/dist/components/Select/types.d.ts +0 -43
  288. package/dist/components/Select/types.js +0 -3
  289. package/dist/components/Select/types.js.map +0 -1
  290. package/dist/components/Slider/Mark.d.ts +0 -3
  291. package/dist/components/Slider/Mark.js +0 -32
  292. package/dist/components/Slider/Mark.js.map +0 -1
  293. package/dist/components/Slider/Thumb.d.ts +0 -7
  294. package/dist/components/Slider/Thumb.js +0 -30
  295. package/dist/components/Slider/Thumb.js.map +0 -1
  296. package/dist/components/Slider/index.d.ts +0 -4
  297. package/dist/components/Slider/index.js +0 -99
  298. package/dist/components/Slider/index.js.map +0 -1
  299. package/dist/components/Slider/styles.d.ts +0 -54
  300. package/dist/components/Slider/styles.js +0 -61
  301. package/dist/components/Slider/styles.js.map +0 -1
  302. package/dist/components/Slider/types.d.ts +0 -26
  303. package/dist/components/Slider/types.js +0 -3
  304. package/dist/components/Slider/types.js.map +0 -1
  305. package/dist/components/Switch/index.d.ts +0 -14
  306. package/dist/components/Switch/index.js +0 -81
  307. package/dist/components/Switch/index.js.map +0 -1
  308. package/dist/components/Switch/styles.d.ts +0 -55
  309. package/dist/components/Switch/styles.js +0 -34
  310. package/dist/components/Switch/styles.js.map +0 -1
  311. package/dist/components/Text/index.d.ts +0 -25
  312. package/dist/components/Text/index.js +0 -121
  313. package/dist/components/Text/index.js.map +0 -1
  314. package/dist/components/Text/styles.d.ts +0 -70
  315. package/dist/components/Text/styles.js +0 -34
  316. package/dist/components/Text/styles.js.map +0 -1
  317. package/dist/components/TextInput/index.d.ts +0 -181
  318. package/dist/components/TextInput/index.js +0 -213
  319. package/dist/components/TextInput/index.js.map +0 -1
  320. package/dist/components/TextInput/styles.d.ts +0 -63
  321. package/dist/components/TextInput/styles.js +0 -65
  322. package/dist/components/TextInput/styles.js.map +0 -1
  323. package/dist/components/Touchable/index.d.ts +0 -22
  324. package/dist/components/Touchable/index.js +0 -165
  325. package/dist/components/Touchable/index.js.map +0 -1
  326. package/dist/components/Touchable/styles.d.ts +0 -58
  327. package/dist/components/Touchable/styles.js +0 -24
  328. package/dist/components/Touchable/styles.js.map +0 -1
  329. package/dist/components/View/index.d.ts +0 -25
  330. package/dist/components/View/index.js +0 -107
  331. package/dist/components/View/index.js.map +0 -1
  332. package/dist/components/View/styles.d.ts +0 -54
  333. package/dist/components/View/styles.js +0 -29
  334. package/dist/components/View/styles.js.map +0 -1
  335. package/dist/components/components.d.ts +0 -37
  336. package/dist/components/components.js +0 -50
  337. package/dist/components/components.js.map +0 -1
  338. package/dist/components/defaultStyles.d.ts +0 -1468
  339. package/dist/components/defaultStyles.js +0 -67
  340. package/dist/components/defaultStyles.js.map +0 -1
  341. package/dist/index.d.ts +0 -7
  342. package/dist/index.js +0 -39
  343. package/dist/index.js.map +0 -1
  344. package/dist/modules/documentPicker.d.ts +0 -3
  345. package/dist/modules/documentPicker.js +0 -12
  346. package/dist/modules/documentPicker.js.map +0 -1
  347. package/dist/modules/fastImage.d.ts +0 -1
  348. package/dist/modules/fastImage.js +0 -10
  349. package/dist/modules/fastImage.js.map +0 -1
  350. package/dist/modules/reactNavigation.d.ts +0 -5
  351. package/dist/modules/reactNavigation.js +0 -26
  352. package/dist/modules/reactNavigation.js.map +0 -1
  353. package/dist/modules/rnDeviceInfo.d.ts +0 -2
  354. package/dist/modules/rnDeviceInfo.js +0 -10
  355. package/dist/modules/rnDeviceInfo.js.map +0 -1
  356. package/dist/modules/textInputMask.d.ts +0 -10
  357. package/dist/modules/textInputMask.js +0 -19
  358. package/dist/modules/textInputMask.js.map +0 -1
  359. package/dist/modules/types/fileTypes.d.ts +0 -138
  360. package/dist/modules/types/fileTypes.js +0 -3
  361. package/dist/modules/types/fileTypes.js.map +0 -1
  362. package/dist/modules/types/textInputMask.d.ts +0 -7
  363. package/dist/modules/types/textInputMask.js +0 -3
  364. package/dist/modules/types/textInputMask.js.map +0 -1
  365. package/dist/types/index.d.ts +0 -1
  366. package/dist/types/index.js +0 -14
  367. package/dist/types/index.js.map +0 -1
  368. package/dist/types/utility.d.ts +0 -14
  369. package/dist/types/utility.js +0 -3
  370. package/dist/types/utility.js.map +0 -1
  371. package/dist/utils/KeyboardAware/context.d.ts +0 -13
  372. package/dist/utils/KeyboardAware/context.js +0 -63
  373. package/dist/utils/KeyboardAware/context.js.map +0 -1
  374. package/dist/utils/KeyboardAware/index.d.ts +0 -8
  375. package/dist/utils/KeyboardAware/index.js +0 -29
  376. package/dist/utils/KeyboardAware/index.js.map +0 -1
  377. package/dist/utils/KeyboardAware/keyboardHooks.d.ts +0 -26
  378. package/dist/utils/KeyboardAware/keyboardHooks.js +0 -87
  379. package/dist/utils/KeyboardAware/keyboardHooks.js.map +0 -1
  380. package/dist/utils/KeyboardAware/lib/KeyboardAwareFlatList.d.ts +0 -3
  381. package/dist/utils/KeyboardAware/lib/KeyboardAwareFlatList.js +0 -9
  382. package/dist/utils/KeyboardAware/lib/KeyboardAwareFlatList.js.map +0 -1
  383. package/dist/utils/KeyboardAware/lib/KeyboardAwareHOC.d.ts +0 -67
  384. package/dist/utils/KeyboardAware/lib/KeyboardAwareHOC.js +0 -439
  385. package/dist/utils/KeyboardAware/lib/KeyboardAwareHOC.js.map +0 -1
  386. package/dist/utils/KeyboardAware/lib/KeyboardAwareInterface.d.ts +0 -7
  387. package/dist/utils/KeyboardAware/lib/KeyboardAwareInterface.js +0 -4
  388. package/dist/utils/KeyboardAware/lib/KeyboardAwareInterface.js.map +0 -1
  389. package/dist/utils/KeyboardAware/lib/KeyboardAwareScrollView.d.ts +0 -3
  390. package/dist/utils/KeyboardAware/lib/KeyboardAwareScrollView.js +0 -10
  391. package/dist/utils/KeyboardAware/lib/KeyboardAwareScrollView.js.map +0 -1
  392. package/dist/utils/KeyboardAware/lib/KeyboardAwareSectionList.d.ts +0 -3
  393. package/dist/utils/KeyboardAware/lib/KeyboardAwareSectionList.js +0 -10
  394. package/dist/utils/KeyboardAware/lib/KeyboardAwareSectionList.js.map +0 -1
  395. package/dist/utils/KeyboardAware/types.d.ts +0 -1
  396. package/dist/utils/KeyboardAware/types.js +0 -7
  397. package/dist/utils/KeyboardAware/types.js.map +0 -1
  398. package/dist/utils/ModalManager/components.d.ts +0 -20
  399. package/dist/utils/ModalManager/components.js +0 -114
  400. package/dist/utils/ModalManager/components.js.map +0 -1
  401. package/dist/utils/ModalManager/context.d.ts +0 -48
  402. package/dist/utils/ModalManager/context.js +0 -201
  403. package/dist/utils/ModalManager/context.js.map +0 -1
  404. package/dist/utils/ModalManager/index.d.ts +0 -11
  405. package/dist/utils/ModalManager/index.js +0 -13
  406. package/dist/utils/ModalManager/index.js.map +0 -1
  407. package/dist/utils/OSAlert.d.ts +0 -32
  408. package/dist/utils/OSAlert.js +0 -143
  409. package/dist/utils/OSAlert.js.map +0 -1
  410. package/dist/utils/PermissionManager/context.d.ts +0 -53
  411. package/dist/utils/PermissionManager/context.js +0 -320
  412. package/dist/utils/PermissionManager/context.js.map +0 -1
  413. package/dist/utils/PermissionManager/index.d.ts +0 -4
  414. package/dist/utils/PermissionManager/index.js +0 -9
  415. package/dist/utils/PermissionManager/index.js.map +0 -1
  416. package/dist/utils/PermissionManager/types.d.ts +0 -13
  417. package/dist/utils/PermissionManager/types.js +0 -3
  418. package/dist/utils/PermissionManager/types.js.map +0 -1
  419. package/dist/utils/hooks.d.ts +0 -61
  420. package/dist/utils/hooks.js +0 -233
  421. package/dist/utils/hooks.js.map +0 -1
  422. package/dist/utils/index.d.ts +0 -10
  423. package/dist/utils/index.js +0 -36
  424. package/dist/utils/index.js.map +0 -1
  425. package/dist/utils/input.d.ts +0 -35
  426. package/dist/utils/input.js +0 -49
  427. package/dist/utils/input.js.map +0 -1
  428. package/dist/utils/misc.d.ts +0 -6
  429. package/dist/utils/misc.js +0 -87
  430. package/dist/utils/misc.js.map +0 -1
  431. package/dist/utils/notifications.d.ts +0 -34
  432. package/dist/utils/notifications.js +0 -268
  433. package/dist/utils/notifications.js.map +0 -1
  434. package/dist/utils/theme.d.ts +0 -42
  435. package/dist/utils/theme.js +0 -50
  436. package/dist/utils/theme.js.map +0 -1
  437. package/src/components/Animated.tsx +0 -34
  438. package/src/components/AutoComplete/index.tsx +0 -167
  439. package/src/components/AutoComplete/styles.ts +0 -150
  440. package/src/components/MultiSelect/index.tsx +0 -148
  441. package/src/components/MultiSelect/styles.ts +0 -131
  442. package/src/components/MultiSelect/types.ts +0 -51
  443. package/src/components/Slider/Mark.tsx +0 -46
  444. package/src/components/Slider/Thumb.tsx +0 -29
  445. package/src/modules/textInputMask.ts +0 -11
  446. package/src/utils/KeyboardAware/lib/KeyboardAwareFlatList.ts +0 -4
  447. package/src/utils/KeyboardAware/lib/KeyboardAwareHOC.tsx +0 -592
  448. package/src/utils/KeyboardAware/lib/KeyboardAwareInterface.ts +0 -13
  449. package/src/utils/KeyboardAware/lib/KeyboardAwareScrollView.ts +0 -6
  450. package/src/utils/KeyboardAware/lib/KeyboardAwareSectionList.ts +0 -6
@@ -1,592 +0,0 @@
1
- /* eslint-disable max-lines */
2
- /* @flow */
3
-
4
- import React from 'react'
5
-
6
- import {
7
- Keyboard,
8
- Platform,
9
- UIManager,
10
- TextInput,
11
- findNodeHandle,
12
- Animated,
13
- Dimensions,
14
- KeyboardEventName,
15
- EventSubscription,
16
- KeyboardEventListener,
17
- NativeSyntheticEvent,
18
- ScrollView,
19
- } from 'react-native'
20
- import type { KeyboardAwareInterface } from './KeyboardAwareInterface'
21
- export function isIphoneX() {
22
- const dimen = Dimensions.get('window')
23
- return (
24
- Platform.OS === 'ios' &&
25
- !Platform.isPad &&
26
- !Platform.isTVOS &&
27
- ((dimen.height === 780 || dimen.width === 780)
28
- || (dimen.height === 812 || dimen.width === 812)
29
- || (dimen.height === 844 || dimen.width === 844)
30
- || (dimen.height === 896 || dimen.width === 896)
31
- || (dimen.height === 926 || dimen.width === 926))
32
- )
33
- }
34
-
35
- const _KAM_DEFAULT_TAB_BAR_HEIGHT: number = isIphoneX() ? 83 : 49
36
- const _KAM_KEYBOARD_OPENING_TIME = 250
37
- const _KAM_EXTRA_HEIGHT = 75
38
-
39
- const supportedKeyboardEvents: KeyboardEventName[] = [
40
- 'keyboardWillShow',
41
- 'keyboardDidShow',
42
- 'keyboardWillHide',
43
- 'keyboardDidHide',
44
- 'keyboardWillChangeFrame',
45
- 'keyboardDidChangeFrame',
46
- ]
47
- const keyboardEventToCallbackName = (eventName: string) => 'on' + eventName[0].toUpperCase() + eventName.substring(1)
48
-
49
- const keyboardAwareHOCTypeEvents = supportedKeyboardEvents.reduce(
50
- (acc: Object, eventName: string) => ({
51
- ...acc,
52
- [keyboardEventToCallbackName(eventName)]: Function,
53
- }),
54
- {},
55
- )
56
-
57
- export type KeyboardAwareHOCProps = {
58
- viewIsInsideTabBar?: boolean
59
- resetScrollToCoords?: {
60
- x: number
61
- y: number
62
- }
63
- enableResetScrollToCoords?: boolean
64
- enableAutomaticScroll?: boolean
65
- extraHeight?: number
66
- extraScrollHeight?: number
67
- keyboardOpeningTime?: number
68
- onScroll?: Function
69
- update?: Function
70
- contentContainerStyle?: any
71
- enableOnAndroid?: boolean
72
- Scrollable: any
73
- innerRef?: Function
74
- hocOptions?: any
75
- } & typeof keyboardAwareHOCTypeEvents
76
- export type KeyboardAwareHOCState = {
77
- keyboardSpace: number
78
- }
79
-
80
- export type ElementLayout = {
81
- x: number
82
- y: number
83
- width: number
84
- height: number
85
- }
86
-
87
- export type ContentOffset = {
88
- x: number
89
- y: number
90
- }
91
-
92
- export type ScrollPosition = {
93
- x: number
94
- y: number
95
- animated: boolean
96
- }
97
-
98
- export type ScrollIntoViewOptions = {
99
- getScrollPosition?: (
100
- parentLayout: ElementLayout,
101
- childLayout: ElementLayout,
102
- contentOffset: ContentOffset
103
- ) => ScrollPosition
104
- }
105
-
106
- export type KeyboardAwareHOCOptions = {
107
- enableOnAndroid: boolean
108
- contentContainerStyle?: Object
109
- enableAutomaticScroll: boolean
110
- extraHeight: number
111
- extraScrollHeight: number
112
- enableResetScrollToCoords: boolean
113
- keyboardOpeningTime: number
114
- viewIsInsideTabBar: boolean
115
- refPropName: string
116
- extractNativeRef: Function
117
- }
118
-
119
- function getDisplayName(WrappedComponent: React.ComponentClass) {
120
- return (
121
- (WrappedComponent &&
122
- (WrappedComponent.displayName || WrappedComponent.name)) ||
123
- 'Component'
124
- )
125
- }
126
-
127
- const ScrollIntoViewDefaultOptions: KeyboardAwareHOCOptions = {
128
- enableOnAndroid: false,
129
- contentContainerStyle: undefined,
130
- enableAutomaticScroll: true,
131
- extraHeight: _KAM_EXTRA_HEIGHT,
132
- extraScrollHeight: 0,
133
- enableResetScrollToCoords: true,
134
- keyboardOpeningTime: _KAM_KEYBOARD_OPENING_TIME,
135
- viewIsInsideTabBar: false,
136
-
137
- // The ref prop name that will be passed to the wrapped component to obtain a ref
138
- // If your ScrollView is already wrapped, maybe the wrapper permit to get a ref
139
- // For example, with glamorous-native ScrollView, you should use "innerRef"
140
- refPropName: 'ref',
141
- // Sometimes the ref you get is a ref to a wrapped view (ex: Animated.ScrollView)
142
- // We need access to the imperative API of a real native ScrollView so we need extraction logic
143
- extractNativeRef: (ref: any) => {
144
- // getNode() permit to support Animated.ScrollView automatically, but is deprecated since RN 0.62
145
- // see https://github.com/facebook/react-native/issues/19650
146
- // see https://stackoverflow.com/questions/42051368/scrollto-is-undefined-on-animated-scrollview/48786374
147
- // see https://github.com/facebook/react-native/commit/66e72bb4e00aafbcb9f450ed5db261d98f99f82a
148
- const shouldCallGetNode = !Platform.constants || (Platform.constants.reactNativeVersion.major === 0 && Platform.constants.reactNativeVersion.minor < 62)
149
- if (ref.getNode && shouldCallGetNode) {
150
- return ref.getNode()
151
- } else {
152
- return ref
153
- }
154
- },
155
- }
156
-
157
- class KeyboardAwareScrollable extends React.Component<KeyboardAwareHOCProps, KeyboardAwareHOCState> implements KeyboardAwareInterface {
158
- _rnkasv_keyboardView: any
159
-
160
- keyboardWillShowEvent: EventSubscription
161
-
162
- keyboardWillHideEvent: EventSubscription
163
-
164
- position: ContentOffset
165
-
166
- defaultResetScrollToCoords?: { x: number; y: number }
167
-
168
- mountedComponent: boolean
169
-
170
- handleOnScroll: Function
171
-
172
- callbacks: Record<string, EventSubscription>
173
-
174
- state: KeyboardAwareHOCState
175
-
176
- static displayName = `KeyboardAware`
177
-
178
-
179
-
180
- // HOC options are used to init default props, so that these options can be overriden with component props
181
- static defaultProps = {
182
- enableAutomaticScroll: ScrollIntoViewDefaultOptions.enableAutomaticScroll,
183
- extraHeight: ScrollIntoViewDefaultOptions.extraHeight,
184
- extraScrollHeight: ScrollIntoViewDefaultOptions.extraScrollHeight,
185
- enableResetScrollToCoords: ScrollIntoViewDefaultOptions.enableResetScrollToCoords,
186
- keyboardOpeningTime: ScrollIntoViewDefaultOptions.keyboardOpeningTime,
187
- viewIsInsideTabBar: ScrollIntoViewDefaultOptions.viewIsInsideTabBar,
188
- enableOnAndroid: ScrollIntoViewDefaultOptions.enableOnAndroid,
189
- }
190
-
191
- constructor(props: KeyboardAwareHOCProps) {
192
- super(props)
193
- this.keyboardWillShowEvent = undefined
194
- this.keyboardWillHideEvent = undefined
195
- this.callbacks = {}
196
- this.position = { x: 0, y: 0 }
197
- this.defaultResetScrollToCoords = null
198
- const keyboardSpace: number = props.viewIsInsideTabBar
199
- ? _KAM_DEFAULT_TAB_BAR_HEIGHT
200
- : 0
201
- this.state = { keyboardSpace }
202
- }
203
-
204
- componentDidMount() {
205
- this.mountedComponent = true
206
- // Keyboard events
207
- if (Platform.OS === 'ios') {
208
- this.keyboardWillShowEvent = Keyboard.addListener(
209
- 'keyboardWillShow',
210
- this._updateKeyboardSpace,
211
- )
212
- this.keyboardWillHideEvent = Keyboard.addListener(
213
- 'keyboardWillHide',
214
- this._resetKeyboardSpace,
215
- )
216
- } else if (Platform.OS === 'android' && this.props.enableOnAndroid) {
217
- this.keyboardWillShowEvent = Keyboard.addListener(
218
- 'keyboardDidShow',
219
- this._updateKeyboardSpace,
220
- )
221
- this.keyboardWillHideEvent = Keyboard.addListener(
222
- 'keyboardDidHide',
223
- this._resetKeyboardSpace,
224
- )
225
- }
226
-
227
- supportedKeyboardEvents.forEach((eventName) => {
228
- const callbackName = keyboardEventToCallbackName(eventName)
229
- if (this.props[callbackName]) {
230
- this.callbacks[eventName] = Keyboard.addListener(
231
- eventName,
232
- this.props[callbackName],
233
- )
234
- }
235
- })
236
- }
237
-
238
- componentDidUpdate(prevProps: KeyboardAwareHOCProps) {
239
- if (this.props.viewIsInsideTabBar !== prevProps.viewIsInsideTabBar) {
240
- const keyboardSpace: number = this.props.viewIsInsideTabBar
241
- ? _KAM_DEFAULT_TAB_BAR_HEIGHT
242
- : 0
243
- if (this.state.keyboardSpace !== keyboardSpace) {
244
- this.setState({ keyboardSpace })
245
- }
246
- }
247
- }
248
-
249
- componentWillUnmount() {
250
- this.mountedComponent = false
251
- this.keyboardWillShowEvent && this.keyboardWillShowEvent.remove()
252
- this.keyboardWillHideEvent && this.keyboardWillHideEvent.remove()
253
- Object.values(this.callbacks).forEach((callback) => callback.remove(),
254
- )
255
- }
256
-
257
- getScrollResponder = () => {
258
- return (
259
- this._rnkasv_keyboardView &&
260
- this._rnkasv_keyboardView.getScrollResponder &&
261
- this._rnkasv_keyboardView.getScrollResponder()
262
- )
263
- }
264
-
265
- scrollToPosition = (x: number, y: number, animated = true) => {
266
- const responder = this.getScrollResponder()
267
- if (!responder) {
268
- return
269
- }
270
- if (responder.scrollResponderScrollTo) {
271
- // React Native < 0.65
272
- responder.scrollResponderScrollTo({ x, y, animated })
273
- } else if (responder.scrollTo) {
274
- // React Native >= 0.65
275
- responder.scrollTo({ x, y, animated })
276
- }
277
- }
278
-
279
- scrollToEnd = (animated = true) => {
280
- const responder = this.getScrollResponder()
281
- if (!responder) {
282
- return
283
- }
284
- if (responder.scrollResponderScrollToEnd) {
285
- // React Native < 0.65
286
- responder.scrollResponderScrollToEnd({ animated })
287
- } else if (responder.scrollToEnd) {
288
- // React Native >= 0.65
289
- responder.scrollToEnd({ animated })
290
- }
291
- }
292
-
293
- scrollForExtraHeightOnAndroid = (extraHeight: number) => {
294
- this.scrollToPosition(0, this.position.y + extraHeight, true)
295
- }
296
-
297
- /**
298
- * @param keyboardOpeningTime: takes a different keyboardOpeningTime in consideration.
299
- * @param extraHeight: takes an extra height in consideration.
300
- */
301
- scrollToFocusedInput = (
302
- reactNode: any,
303
- extraHeight?: number,
304
- keyboardOpeningTime?: number,
305
- ) => {
306
- if (extraHeight === undefined) {
307
- extraHeight = this.props.extraHeight || 0
308
- }
309
- if (keyboardOpeningTime === undefined) {
310
- keyboardOpeningTime = this.props.keyboardOpeningTime || 0
311
- }
312
- setTimeout(() => {
313
- if (!this.mountedComponent) {
314
- return
315
- }
316
- const responder = this.getScrollResponder()
317
- responder &&
318
- responder.scrollResponderScrollNativeHandleToKeyboard(
319
- reactNode,
320
- extraHeight,
321
- true,
322
- )
323
- }, keyboardOpeningTime)
324
- }
325
-
326
- scrollIntoView = async (
327
- element: React.ComponentClass,
328
- options: ScrollIntoViewOptions = {},
329
- ) => {
330
- if (!this._rnkasv_keyboardView || !element) {
331
- return
332
- }
333
-
334
- const [parentLayout, childLayout] = await Promise.all([
335
- this._measureElement(this._rnkasv_keyboardView),
336
- this._measureElement(element),
337
- ])
338
-
339
- const getScrollPosition =
340
- options.getScrollPosition || this._defaultGetScrollPosition
341
- const { x, y, animated } = getScrollPosition(
342
- parentLayout,
343
- childLayout,
344
- this.position,
345
- )
346
- this.scrollToPosition(x, y, animated)
347
- }
348
-
349
- _defaultGetScrollPosition = (
350
- parentLayout: ElementLayout,
351
- childLayout: ElementLayout,
352
- contentOffset: ContentOffset,
353
- ): ScrollPosition => {
354
- return {
355
- x: 0,
356
- y: Math.max(0, childLayout.y - parentLayout.y + contentOffset.y),
357
- animated: true,
358
- }
359
- }
360
-
361
- _measureElement = (element: React.ComponentClass): Promise<ElementLayout> => {
362
- const node = findNodeHandle(element)
363
-
364
- return new Promise((resolve: (el: ElementLayout) => void) => {
365
- UIManager.measureInWindow(
366
- node,
367
- (x: number, y: number, width: number, height: number) => {
368
- resolve({ x, y, width, height })
369
- },
370
- )
371
- })
372
- }
373
-
374
- // Keyboard actions
375
- _updateKeyboardSpace = (frames: Parameters<KeyboardEventListener>['0']) => {
376
- // Automatically scroll to focused TextInput
377
- if (this.props.enableAutomaticScroll) {
378
- let keyboardSpace: number =
379
- frames.endCoordinates.height + this.props.extraScrollHeight
380
- if (this.props.viewIsInsideTabBar) {
381
- keyboardSpace -= _KAM_DEFAULT_TAB_BAR_HEIGHT
382
- }
383
- this.setState({ keyboardSpace })
384
- const currentlyFocusedField = TextInput.State.currentlyFocusedInput ?
385
- findNodeHandle(TextInput.State.currentlyFocusedInput()) : TextInput.State.currentlyFocusedField()
386
- const responder = this.getScrollResponder()
387
- if (!currentlyFocusedField || !responder) {
388
- return
389
- }
390
- // @ts-ignore
391
- UIManager.viewIsDescendantOf(
392
- currentlyFocusedField,
393
- responder.getInnerViewNode(),
394
- (isAncestor: boolean) => {
395
- if (isAncestor) {
396
- // Check if the TextInput will be hidden by the keyboard
397
- UIManager.measureInWindow(
398
- currentlyFocusedField,
399
- (x: number, y: number, width: number, height: number) => {
400
- const textInputBottomPosition = y + height
401
- const keyboardPosition = frames.endCoordinates.screenY
402
- const totalExtraHeight =
403
- this.props.extraScrollHeight + this.props.extraHeight
404
- if (Platform.OS === 'ios') {
405
- if (
406
- textInputBottomPosition >
407
- keyboardPosition - totalExtraHeight
408
- ) {
409
- this._scrollToFocusedInputWithNodeHandle(
410
- currentlyFocusedField,
411
- )
412
- }
413
- } else {
414
- // On android, the system would scroll the text input just
415
- // above the keyboard so we just neet to scroll the extra
416
- // height part
417
- if (textInputBottomPosition > keyboardPosition) {
418
- // Since the system already scrolled the whole view up
419
- // we should reduce that amount
420
- keyboardSpace =
421
- keyboardSpace -
422
- (textInputBottomPosition - keyboardPosition)
423
- this.setState({ keyboardSpace })
424
- this.scrollForExtraHeightOnAndroid(totalExtraHeight)
425
- } else if (
426
- textInputBottomPosition >
427
- keyboardPosition - totalExtraHeight
428
- ) {
429
- this.scrollForExtraHeightOnAndroid(
430
- totalExtraHeight -
431
- (keyboardPosition - textInputBottomPosition),
432
- )
433
- }
434
- }
435
- },
436
- )
437
- }
438
- },
439
- )
440
- }
441
- if (!this.props.resetScrollToCoords) {
442
- if (!this.defaultResetScrollToCoords) {
443
- this.defaultResetScrollToCoords = this.position
444
- }
445
- }
446
- }
447
-
448
- _resetKeyboardSpace = () => {
449
- const keyboardSpace: number = this.props.viewIsInsideTabBar
450
- ? _KAM_DEFAULT_TAB_BAR_HEIGHT
451
- : 0
452
- this.setState({ keyboardSpace })
453
- // Reset scroll position after keyboard dismissal
454
- if (this.props.enableResetScrollToCoords === false) {
455
- this.defaultResetScrollToCoords = null
456
- return
457
- } else if (this.props.resetScrollToCoords) {
458
- this.scrollToPosition(
459
- this.props.resetScrollToCoords.x,
460
- this.props.resetScrollToCoords.y,
461
- true,
462
- )
463
- } else {
464
- if (this.defaultResetScrollToCoords) {
465
- this.scrollToPosition(
466
- this.defaultResetScrollToCoords.x,
467
- this.defaultResetScrollToCoords.y,
468
- true,
469
- )
470
- this.defaultResetScrollToCoords = null
471
- } else {
472
- this.scrollToPosition(0, 0, true)
473
- }
474
- }
475
- }
476
-
477
- _scrollToFocusedInputWithNodeHandle = (
478
- nodeID: number,
479
- extraHeight?: number,
480
- keyboardOpeningTime?: number,
481
- ) => {
482
- if (extraHeight === undefined) {
483
- extraHeight = this.props.extraHeight
484
- }
485
- const reactNode = findNodeHandle(nodeID)
486
- this.scrollToFocusedInput(
487
- reactNode,
488
- extraHeight + this.props.extraScrollHeight,
489
- keyboardOpeningTime !== undefined
490
- ? keyboardOpeningTime
491
- : this.props.keyboardOpeningTime || 0,
492
- )
493
- }
494
-
495
- _handleOnScroll = (
496
- e: NativeSyntheticEvent<any> & { nativeEvent: { contentOffset: number } },
497
- ) => {
498
- this.position = e.nativeEvent.contentOffset
499
- }
500
-
501
- _handleRef = (ref: React.ComponentClass<any>) => {
502
- this._rnkasv_keyboardView = ref ? this.props.hocOptions.extractNativeRef(ref) : ref
503
- if (this.props.innerRef) {
504
- this.props.innerRef(this._rnkasv_keyboardView)
505
- }
506
- }
507
-
508
- update = () => {
509
- const currentlyFocusedField = TextInput.State.currentlyFocusedInput ?
510
- findNodeHandle(TextInput.State.currentlyFocusedInput()) : TextInput.State.currentlyFocusedField()
511
- const responder = this.getScrollResponder()
512
-
513
- if (!currentlyFocusedField || !responder) {
514
- return
515
- }
516
-
517
- this._scrollToFocusedInputWithNodeHandle(currentlyFocusedField)
518
- }
519
-
520
- render() {
521
- const { enableOnAndroid, contentContainerStyle, onScroll, Scrollable } = this.props
522
- let newContentContainerStyle
523
- if (Platform.OS === 'android' && enableOnAndroid) {
524
- newContentContainerStyle = [].concat(contentContainerStyle).concat({
525
- paddingBottom:
526
- ((contentContainerStyle || {}).paddingBottom || 0) +
527
- this.state.keyboardSpace,
528
- })
529
- }
530
- const refProps = { [this.props.hocOptions.refPropName]: this._handleRef }
531
- return (
532
- <Scrollable
533
- {...refProps}
534
- keyboardDismissMode='interactive'
535
- contentInset={{ bottom: this.state.keyboardSpace }}
536
- automaticallyAdjustContentInsets={false}
537
- showsVerticalScrollIndicator={true}
538
- scrollEventThrottle={1}
539
- {...this.props}
540
- contentContainerStyle={
541
- newContentContainerStyle || contentContainerStyle
542
- }
543
- keyboardSpace={this.state.keyboardSpace}
544
- getScrollResponder={this.getScrollResponder}
545
- scrollToPosition={this.scrollToPosition}
546
- scrollToEnd={this.scrollToEnd}
547
- scrollForExtraHeightOnAndroid={this.scrollForExtraHeightOnAndroid}
548
- scrollToFocusedInput={this.scrollToFocusedInput}
549
- scrollIntoView={this.scrollIntoView}
550
- resetKeyboardSpace={this._resetKeyboardSpace}
551
- handleOnScroll={this._handleOnScroll}
552
- update={this.update}
553
- // @ts-ignore
554
- onScroll={Animated.forkEvent(onScroll, this._handleOnScroll)}
555
- />
556
- )
557
- }
558
- }
559
-
560
- function KeyboardAwareHOC(
561
- ScrollableComponent: React.ComponentClass<any>,
562
- userOptions = ScrollIntoViewDefaultOptions,
563
- ) {
564
-
565
- const hocOptions: KeyboardAwareHOCOptions = {
566
- ...ScrollIntoViewDefaultOptions,
567
- ...userOptions,
568
- }
569
-
570
- return React.forwardRef((props, ref) => <KeyboardAwareScrollable
571
- hocOptions={hocOptions}
572
- // @ts-ignore
573
- ref={ref}
574
- Scrollable={ScrollableComponent}
575
- {...props}
576
- />)
577
- }
578
-
579
- // Allow to pass options, without breaking change, and curried for composition
580
- // listenToKeyboardEvents(ScrollView);
581
- // listenToKeyboardEvents(options)(Comp);
582
- const listenToKeyboardEvents = <C extends React.ComponentType | React.ComponentClass>(configOrComp: C) => {
583
- //@ts-ignore
584
- if (typeof configOrComp === 'object' && !configOrComp.displayName) {
585
- return ((Comp: Function) => KeyboardAwareHOC(Comp as React.ComponentClass, configOrComp)) as unknown as C
586
- } else {
587
- //@ts-ignore
588
- return KeyboardAwareHOC(configOrComp) as C
589
- }
590
- }
591
-
592
- export default listenToKeyboardEvents
@@ -1,13 +0,0 @@
1
- /* @flow */
2
-
3
- export interface KeyboardAwareInterface {
4
- getScrollResponder: () => void
5
- scrollToPosition: (x: number, y: number, animated?: boolean) => void,
6
- scrollToEnd: (animated?: boolean) => void
7
- scrollForExtraHeightOnAndroid: (extraHeight: number) => void
8
- scrollToFocusedInput: (
9
- reactNode: Object,
10
- extraHeight: number,
11
- keyboardOpeningTime: number
12
- ) => void
13
- }
@@ -1,6 +0,0 @@
1
- /* @flow */
2
-
3
- import { ScrollView } from 'react-native'
4
- import listenToKeyboardEvents from './KeyboardAwareHOC'
5
-
6
- export default listenToKeyboardEvents(ScrollView)
@@ -1,6 +0,0 @@
1
- /* @flow */
2
-
3
- import { SectionList } from 'react-native'
4
- import listenToKeyboardEvents from './KeyboardAwareHOC'
5
-
6
- export default listenToKeyboardEvents(SectionList)