@nexara/nativeflow 0.1.8 → 0.1.10

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 (291) hide show
  1. package/lib/commonjs/assets/svg/Check.js.map +1 -1
  2. package/lib/commonjs/assets/svg/X.js.map +1 -1
  3. package/lib/commonjs/assets/svg/index.js.map +1 -1
  4. package/lib/commonjs/components/Avatar/AvatarImage.js.map +1 -1
  5. package/lib/commonjs/components/Avatar/AvatarText.js.map +1 -1
  6. package/lib/commonjs/components/Avatar/index.js.map +1 -1
  7. package/lib/commonjs/components/Button/Button.js +9 -4
  8. package/lib/commonjs/components/Button/Button.js.map +1 -1
  9. package/lib/commonjs/components/Button/utils.js +17 -10
  10. package/lib/commonjs/components/Button/utils.js.map +1 -1
  11. package/lib/commonjs/components/CheckBox/CheckBox.js.map +1 -1
  12. package/lib/commonjs/components/Chip/Chip.js.map +1 -1
  13. package/lib/commonjs/components/Chip/utils.js.map +1 -1
  14. package/lib/commonjs/components/Dialog/Dialog.js.map +1 -1
  15. package/lib/commonjs/components/Dialog/DialogBody.js.map +1 -1
  16. package/lib/commonjs/components/Dialog/DialogDescription.js.map +1 -1
  17. package/lib/commonjs/components/Dialog/DialogFoot.js.map +1 -1
  18. package/lib/commonjs/components/Dialog/DialogHead.js.map +1 -1
  19. package/lib/commonjs/components/Dialog/index.js.map +1 -1
  20. package/lib/commonjs/components/Divider/Divider.js.map +1 -1
  21. package/lib/commonjs/components/Grid/Grid.js.map +1 -1
  22. package/lib/commonjs/components/Icon/Icon.js.map +1 -1
  23. package/lib/commonjs/components/IconButton/IconButton.js.map +1 -1
  24. package/lib/commonjs/components/Link/Link.js.map +1 -1
  25. package/lib/commonjs/components/Menu/Menu.js.map +1 -1
  26. package/lib/commonjs/components/Menu/MenuItem.js.map +1 -1
  27. package/lib/commonjs/components/Menu/MenuItemLabel.js.map +1 -1
  28. package/lib/commonjs/components/Menu/calculations.js.map +1 -1
  29. package/lib/commonjs/components/Menu/index.js.map +1 -1
  30. package/lib/commonjs/components/Portal/Portal.js.map +1 -1
  31. package/lib/commonjs/components/Portal/PortalContext.js.map +1 -1
  32. package/lib/commonjs/components/Portal/PortalProvider.js.map +1 -1
  33. package/lib/commonjs/components/Progress/Progress.js.map +1 -1
  34. package/lib/commonjs/components/Provider/ContextManager.js.map +1 -1
  35. package/lib/commonjs/components/Provider/NativeProvider.js.map +1 -1
  36. package/lib/commonjs/components/Radio/RadioGroup.js.map +1 -1
  37. package/lib/commonjs/components/Radio/RadioItem.js.map +1 -1
  38. package/lib/commonjs/components/Radio/index.js.map +1 -1
  39. package/lib/commonjs/components/Slider/Slider.js.map +1 -1
  40. package/lib/commonjs/components/Stack/HStack.js.map +1 -1
  41. package/lib/commonjs/components/Stack/VStack.js.map +1 -1
  42. package/lib/commonjs/components/Stack/index.js.map +1 -1
  43. package/lib/commonjs/components/StyledComponents/StyledText.js +3 -1
  44. package/lib/commonjs/components/StyledComponents/StyledText.js.map +1 -1
  45. package/lib/commonjs/components/StyledComponents/StyledView.js.map +1 -1
  46. package/lib/commonjs/components/StyledComponents/index.js.map +1 -1
  47. package/lib/commonjs/components/Surface/Surface.js +3 -3
  48. package/lib/commonjs/components/Surface/Surface.js.map +1 -1
  49. package/lib/commonjs/components/Switch/Switch.js.map +1 -1
  50. package/lib/commonjs/components/TouchableRipple/TouchableRipple.js.map +1 -1
  51. package/lib/commonjs/components/UserInput/UserInput.js.map +1 -1
  52. package/lib/commonjs/components/UserInput/UserInputV2.js.map +1 -1
  53. package/lib/commonjs/components/UserInput/generateColors.js.map +1 -1
  54. package/lib/commonjs/constants/breakPoints.js.map +1 -1
  55. package/lib/commonjs/constants/dialogSizes.js.map +1 -1
  56. package/lib/commonjs/constants/index.js.map +1 -1
  57. package/lib/commonjs/constants/theme.js.map +1 -1
  58. package/lib/commonjs/constants/typographySizes.js.map +1 -1
  59. package/lib/commonjs/helpers/CalculateGridSize.js +1 -1
  60. package/lib/commonjs/helpers/CalculateGridSize.js.map +1 -1
  61. package/lib/commonjs/helpers/DeviceSizeCategory.js.map +1 -1
  62. package/lib/commonjs/helpers/ResponsiveCalculations.js +4 -1
  63. package/lib/commonjs/helpers/ResponsiveCalculations.js.map +1 -1
  64. package/lib/commonjs/helpers/index.js.map +1 -1
  65. package/lib/commonjs/hooks/index.js.map +1 -1
  66. package/lib/commonjs/hooks/useColorScheme.js.map +1 -1
  67. package/lib/commonjs/hooks/useConditionalWindowDimension.js.map +1 -1
  68. package/lib/commonjs/hooks/useScalingMode.js.map +1 -1
  69. package/lib/commonjs/hooks/useTheme.js.map +1 -1
  70. package/lib/commonjs/index.d.js.map +1 -1
  71. package/lib/commonjs/index.js.map +1 -1
  72. package/lib/commonjs/themes/DarkTheme.js.map +1 -1
  73. package/lib/commonjs/themes/LightTheme.js.map +1 -1
  74. package/lib/commonjs/themes/index.js.map +1 -1
  75. package/lib/commonjs/types/avatar.type.js.map +1 -1
  76. package/lib/commonjs/types/button.type.js.map +1 -1
  77. package/lib/commonjs/types/checkbox.type.js.map +1 -1
  78. package/lib/commonjs/types/chip.type.js.map +1 -1
  79. package/lib/commonjs/types/common.type.js.map +1 -1
  80. package/lib/commonjs/types/dialog.type.js.map +1 -1
  81. package/lib/commonjs/types/divider.type.js.map +1 -1
  82. package/lib/commonjs/types/grid.type.js.map +1 -1
  83. package/lib/commonjs/types/index.js.map +1 -1
  84. package/lib/commonjs/types/link.type.js.map +1 -1
  85. package/lib/commonjs/types/menu.type.js.map +1 -1
  86. package/lib/commonjs/types/progress.type.js.map +1 -1
  87. package/lib/commonjs/types/radio.type.js.map +1 -1
  88. package/lib/commonjs/types/stack.type.js.map +1 -1
  89. package/lib/commonjs/types/styledComponents.type.js.map +1 -1
  90. package/lib/commonjs/types/surface.type.js.map +1 -1
  91. package/lib/commonjs/types/switch.type.js.map +1 -1
  92. package/lib/commonjs/types/userInput.type.js.map +1 -1
  93. package/lib/commonjs/utils/index.js.map +1 -1
  94. package/lib/module/assets/svg/Check.js.map +1 -1
  95. package/lib/module/assets/svg/X.js.map +1 -1
  96. package/lib/module/assets/svg/index.js.map +1 -1
  97. package/lib/module/components/Avatar/AvatarImage.js.map +1 -1
  98. package/lib/module/components/Avatar/AvatarText.js.map +1 -1
  99. package/lib/module/components/Avatar/index.js.map +1 -1
  100. package/lib/module/components/Button/Button.js +10 -5
  101. package/lib/module/components/Button/Button.js.map +1 -1
  102. package/lib/module/components/Button/utils.js +17 -10
  103. package/lib/module/components/Button/utils.js.map +1 -1
  104. package/lib/module/components/CheckBox/CheckBox.js.map +1 -1
  105. package/lib/module/components/Chip/Chip.js.map +1 -1
  106. package/lib/module/components/Chip/utils.js.map +1 -1
  107. package/lib/module/components/Dialog/Dialog.js.map +1 -1
  108. package/lib/module/components/Dialog/DialogBody.js.map +1 -1
  109. package/lib/module/components/Dialog/DialogDescription.js.map +1 -1
  110. package/lib/module/components/Dialog/DialogFoot.js.map +1 -1
  111. package/lib/module/components/Dialog/DialogHead.js.map +1 -1
  112. package/lib/module/components/Dialog/index.js.map +1 -1
  113. package/lib/module/components/Divider/Divider.js.map +1 -1
  114. package/lib/module/components/Grid/Grid.js.map +1 -1
  115. package/lib/module/components/Icon/Icon.js.map +1 -1
  116. package/lib/module/components/IconButton/IconButton.js.map +1 -1
  117. package/lib/module/components/Link/Link.js.map +1 -1
  118. package/lib/module/components/Menu/Menu.js.map +1 -1
  119. package/lib/module/components/Menu/MenuItem.js.map +1 -1
  120. package/lib/module/components/Menu/MenuItemLabel.js.map +1 -1
  121. package/lib/module/components/Menu/calculations.js.map +1 -1
  122. package/lib/module/components/Menu/index.js.map +1 -1
  123. package/lib/module/components/Portal/Portal.js.map +1 -1
  124. package/lib/module/components/Portal/PortalContext.js.map +1 -1
  125. package/lib/module/components/Portal/PortalProvider.js.map +1 -1
  126. package/lib/module/components/Progress/Progress.js.map +1 -1
  127. package/lib/module/components/Provider/ContextManager.js.map +1 -1
  128. package/lib/module/components/Provider/NativeProvider.js.map +1 -1
  129. package/lib/module/components/Radio/RadioGroup.js.map +1 -1
  130. package/lib/module/components/Radio/RadioItem.js.map +1 -1
  131. package/lib/module/components/Radio/index.js.map +1 -1
  132. package/lib/module/components/Slider/Slider.js.map +1 -1
  133. package/lib/module/components/Stack/HStack.js.map +1 -1
  134. package/lib/module/components/Stack/VStack.js.map +1 -1
  135. package/lib/module/components/Stack/index.js.map +1 -1
  136. package/lib/module/components/StyledComponents/StyledText.js +3 -1
  137. package/lib/module/components/StyledComponents/StyledText.js.map +1 -1
  138. package/lib/module/components/StyledComponents/StyledView.js.map +1 -1
  139. package/lib/module/components/StyledComponents/index.js.map +1 -1
  140. package/lib/module/components/Surface/Surface.js +3 -3
  141. package/lib/module/components/Surface/Surface.js.map +1 -1
  142. package/lib/module/components/Switch/Switch.js.map +1 -1
  143. package/lib/module/components/TouchableRipple/TouchableRipple.js.map +1 -1
  144. package/lib/module/components/UserInput/UserInput.js.map +1 -1
  145. package/lib/module/components/UserInput/UserInputV2.js.map +1 -1
  146. package/lib/module/components/UserInput/generateColors.js.map +1 -1
  147. package/lib/module/constants/breakPoints.js.map +1 -1
  148. package/lib/module/constants/dialogSizes.js.map +1 -1
  149. package/lib/module/constants/index.js.map +1 -1
  150. package/lib/module/constants/theme.js.map +1 -1
  151. package/lib/module/constants/typographySizes.js.map +1 -1
  152. package/lib/module/helpers/CalculateGridSize.js +1 -1
  153. package/lib/module/helpers/CalculateGridSize.js.map +1 -1
  154. package/lib/module/helpers/DeviceSizeCategory.js.map +1 -1
  155. package/lib/module/helpers/ResponsiveCalculations.js +4 -1
  156. package/lib/module/helpers/ResponsiveCalculations.js.map +1 -1
  157. package/lib/module/helpers/index.js.map +1 -1
  158. package/lib/module/hooks/index.js.map +1 -1
  159. package/lib/module/hooks/useColorScheme.js.map +1 -1
  160. package/lib/module/hooks/useConditionalWindowDimension.js.map +1 -1
  161. package/lib/module/hooks/useScalingMode.js.map +1 -1
  162. package/lib/module/hooks/useTheme.js.map +1 -1
  163. package/lib/module/index.d.js.map +1 -1
  164. package/lib/module/index.js.map +1 -1
  165. package/lib/module/themes/DarkTheme.js.map +1 -1
  166. package/lib/module/themes/LightTheme.js.map +1 -1
  167. package/lib/module/themes/index.js.map +1 -1
  168. package/lib/module/types/avatar.type.js.map +1 -1
  169. package/lib/module/types/button.type.js.map +1 -1
  170. package/lib/module/types/checkbox.type.js.map +1 -1
  171. package/lib/module/types/chip.type.js.map +1 -1
  172. package/lib/module/types/common.type.js.map +1 -1
  173. package/lib/module/types/dialog.type.js.map +1 -1
  174. package/lib/module/types/divider.type.js.map +1 -1
  175. package/lib/module/types/grid.type.js.map +1 -1
  176. package/lib/module/types/index.js.map +1 -1
  177. package/lib/module/types/link.type.js.map +1 -1
  178. package/lib/module/types/menu.type.js.map +1 -1
  179. package/lib/module/types/progress.type.js.map +1 -1
  180. package/lib/module/types/radio.type.js.map +1 -1
  181. package/lib/module/types/stack.type.js.map +1 -1
  182. package/lib/module/types/styledComponents.type.js.map +1 -1
  183. package/lib/module/types/surface.type.js.map +1 -1
  184. package/lib/module/types/switch.type.js.map +1 -1
  185. package/lib/module/types/userInput.type.js.map +1 -1
  186. package/lib/module/utils/index.js.map +1 -1
  187. package/lib/typescript/commonjs/src/components/Button/Button.d.ts.map +1 -1
  188. package/lib/typescript/commonjs/src/components/Button/utils.d.ts +2 -1
  189. package/lib/typescript/commonjs/src/components/Button/utils.d.ts.map +1 -1
  190. package/lib/typescript/commonjs/src/components/UserInput/UserInput.d.ts.map +1 -1
  191. package/lib/typescript/commonjs/src/helpers/ResponsiveCalculations.d.ts.map +1 -1
  192. package/lib/typescript/commonjs/src/types/button.type.d.ts +2 -0
  193. package/lib/typescript/commonjs/src/types/button.type.d.ts.map +1 -1
  194. package/lib/typescript/commonjs/src/types/surface.type.d.ts +1 -1
  195. package/lib/typescript/commonjs/src/types/surface.type.d.ts.map +1 -1
  196. package/lib/typescript/module/src/components/Button/Button.d.ts.map +1 -1
  197. package/lib/typescript/module/src/components/Button/utils.d.ts +2 -1
  198. package/lib/typescript/module/src/components/Button/utils.d.ts.map +1 -1
  199. package/lib/typescript/module/src/components/UserInput/UserInput.d.ts.map +1 -1
  200. package/lib/typescript/module/src/helpers/ResponsiveCalculations.d.ts.map +1 -1
  201. package/lib/typescript/module/src/types/button.type.d.ts +2 -0
  202. package/lib/typescript/module/src/types/button.type.d.ts.map +1 -1
  203. package/lib/typescript/module/src/types/surface.type.d.ts +1 -1
  204. package/lib/typescript/module/src/types/surface.type.d.ts.map +1 -1
  205. package/package.json +2 -2
  206. package/src/assets/svg/Check.tsx +16 -16
  207. package/src/assets/svg/X.tsx +15 -15
  208. package/src/assets/svg/index.ts +1 -1
  209. package/src/components/Avatar/AvatarImage.tsx +33 -33
  210. package/src/components/Avatar/AvatarText.tsx +34 -34
  211. package/src/components/Avatar/index.ts +8 -8
  212. package/src/components/Button/Button.tsx +216 -205
  213. package/src/components/Button/utils.ts +152 -141
  214. package/src/components/CheckBox/CheckBox.tsx +118 -118
  215. package/src/components/Chip/Chip.tsx +82 -82
  216. package/src/components/Chip/utils.ts +109 -109
  217. package/src/components/Dialog/Dialog.tsx +124 -124
  218. package/src/components/Dialog/DialogBody.tsx +31 -31
  219. package/src/components/Dialog/DialogDescription.tsx +27 -27
  220. package/src/components/Dialog/DialogFoot.tsx +35 -35
  221. package/src/components/Dialog/DialogHead.tsx +50 -50
  222. package/src/components/Dialog/index.ts +10 -10
  223. package/src/components/Divider/Divider.tsx +22 -22
  224. package/src/components/Grid/Grid.tsx +61 -61
  225. package/src/components/Icon/Icon.tsx +31 -31
  226. package/src/components/IconButton/IconButton.tsx +44 -44
  227. package/src/components/Link/Link.tsx +38 -38
  228. package/src/components/Menu/Menu.tsx +142 -142
  229. package/src/components/Menu/MenuItem.tsx +33 -33
  230. package/src/components/Menu/MenuItemLabel.tsx +21 -21
  231. package/src/components/Menu/calculations.ts +33 -33
  232. package/src/components/Menu/index.ts +7 -7
  233. package/src/components/Portal/Portal.tsx +18 -18
  234. package/src/components/Portal/PortalContext.tsx +9 -9
  235. package/src/components/Portal/PortalProvider.tsx +36 -36
  236. package/src/components/Progress/Progress.tsx +66 -66
  237. package/src/components/Provider/ContextManager.tsx +8 -8
  238. package/src/components/Provider/NativeProvider.tsx +72 -72
  239. package/src/components/Radio/RadioGroup.tsx +39 -39
  240. package/src/components/Radio/RadioItem.tsx +72 -72
  241. package/src/components/Radio/index.ts +8 -8
  242. package/src/components/Slider/Slider.tsx +45 -45
  243. package/src/components/Stack/HStack.tsx +32 -32
  244. package/src/components/Stack/VStack.tsx +26 -26
  245. package/src/components/Stack/index.ts +8 -8
  246. package/src/components/StyledComponents/StyledText.tsx +49 -49
  247. package/src/components/StyledComponents/StyledView.tsx +44 -44
  248. package/src/components/StyledComponents/index.tsx +5 -5
  249. package/src/components/Surface/Surface.tsx +31 -31
  250. package/src/components/Switch/Switch.tsx +36 -36
  251. package/src/components/TouchableRipple/TouchableRipple.tsx +92 -92
  252. package/src/components/UserInput/UserInput.tsx +135 -135
  253. package/src/components/UserInput/UserInputV2.tsx +132 -132
  254. package/src/components/UserInput/generateColors.ts +13 -13
  255. package/src/constants/breakPoints.ts +17 -17
  256. package/src/constants/dialogSizes.ts +11 -11
  257. package/src/constants/index.ts +2 -2
  258. package/src/constants/theme.ts +32 -32
  259. package/src/constants/typographySizes.ts +19 -19
  260. package/src/helpers/CalculateGridSize.ts +25 -25
  261. package/src/helpers/DeviceSizeCategory.ts +21 -21
  262. package/src/helpers/ResponsiveCalculations.ts +107 -104
  263. package/src/helpers/index.ts +2 -2
  264. package/src/hooks/index.ts +3 -3
  265. package/src/hooks/useColorScheme.tsx +11 -11
  266. package/src/hooks/useConditionalWindowDimension.tsx +7 -7
  267. package/src/hooks/useScalingMode.tsx +6 -6
  268. package/src/hooks/useTheme.tsx +12 -12
  269. package/src/index.d.ts +2 -2
  270. package/src/index.ts +52 -52
  271. package/src/themes/DarkTheme.ts +177 -177
  272. package/src/themes/LightTheme.ts +88 -88
  273. package/src/themes/index.ts +3 -3
  274. package/src/types/avatar.type.ts +40 -40
  275. package/src/types/button.type.ts +79 -76
  276. package/src/types/checkbox.type.ts +64 -64
  277. package/src/types/chip.type.ts +65 -65
  278. package/src/types/common.type.ts +109 -109
  279. package/src/types/dialog.type.ts +89 -89
  280. package/src/types/divider.type.ts +15 -15
  281. package/src/types/grid.type.ts +71 -71
  282. package/src/types/index.ts +16 -16
  283. package/src/types/link.type.ts +14 -14
  284. package/src/types/menu.type.ts +100 -100
  285. package/src/types/progress.type.ts +15 -15
  286. package/src/types/radio.type.ts +78 -78
  287. package/src/types/stack.type.ts +46 -46
  288. package/src/types/styledComponents.type.ts +70 -70
  289. package/src/types/surface.type.ts +19 -19
  290. package/src/types/switch.type.ts +39 -39
  291. package/src/types/userInput.type.ts +98 -98
@@ -1,92 +1,92 @@
1
- // import React from 'react';
2
- // import { Pressable, StyleSheet } from "react-native";
3
- // import type { ViewStyle, StyleProp, PressableProps } from "react-native";
4
- // import { Gesture, GestureDetector, GestureHandlerRootView } from 'react-native-gesture-handler';
5
- // import Animated, { useAnimatedStyle, useSharedValue, withTiming, } from 'react-native-reanimated';
6
- // import { StyledView } from '../StyledComponents';
7
-
8
-
9
- // type TouchableRippleProps = PressableProps & {
10
- // rippleColor?: string;
11
- // style?: StyleProp<ViewStyle>;
12
- // children?: React.ReactNode;
13
- // }
14
-
15
- // const TouchableRipple: React.FC<TouchableRippleProps> = ({
16
- // rippleColor = '#b6b6b681',
17
- // style,
18
- // children,
19
- // ...rest
20
- // }) => {
21
-
22
- // const positionX = useSharedValue(0);
23
- // const positionY = useSharedValue(0);
24
- // const overlayHeight = useSharedValue(0);
25
- // const overlayWidth = useSharedValue(0);
26
- // const scale = useSharedValue(0);
27
- // const opacity = useSharedValue(1);
28
-
29
- // const STYLES = StyleSheet.create({
30
- // OVERLAY: {
31
- // position: 'absolute',
32
- // top: 0,
33
- // left: 0,
34
- // zIndex: -1
35
- // }
36
- // });
37
-
38
- // const effectAnimatedStyle = useAnimatedStyle(() => {
39
- // const radius = Math.sqrt(overlayWidth.value ** 2 + overlayHeight.value ** 2);
40
- // return {
41
- // height: radius * 2,
42
- // width: radius * 2,
43
- // opacity: opacity.value,
44
- // borderRadius: radius,
45
- // backgroundColor: rippleColor,
46
- // transform: [
47
- // { translateX: positionX.value - radius },
48
- // { translateY: positionY.value - radius },
49
- // {
50
- // scale: scale.value
51
- // }
52
- // ]
53
- // }
54
- // });
55
-
56
- // const onGesturePress = !props.disabled ? Gesture.Tap().runOnJS(true).onTouchesDown(({ allTouches }: { allTouches: any }) => {
57
- // positionX.value = allTouches[0].x;
58
- // positionY.value = allTouches[0].y;
59
- // opacity.value = 1;
60
- // scale.value = 0;
61
- // scale.value = withTiming(1, { duration: 600 });
62
- // }).onTouchesUp(() => {
63
- // opacity.value = withTiming(0, { duration: 800 });
64
- // }).onTouchesCancelled(() => {
65
- // opacity.value = withTiming(0, { duration: 800 });
66
- // }) : Gesture.Simultaneous();
67
-
68
-
69
- // return (<>
70
- // <GestureHandlerRootView style={{ width: '100%' }}>
71
- // <GestureDetector gesture={onGesturePress}>
72
- // <Pressable
73
- // {...rest}
74
- // >
75
- // <StyledView
76
- // overflow='hidden'
77
- // onLayout={({ nativeEvent: { layout: { height, width } } }) => {
78
- // overlayHeight.value = height;
79
- // overlayWidth.value = width;
80
- // }}
81
- // style={style}
82
- // >
83
- // {children}
84
- // <Animated.View style={[STYLES.OVERLAY, effectAnimatedStyle]} />
85
- // </StyledView>
86
- // </Pressable>
87
- // </GestureDetector>
88
- // </GestureHandlerRootView>
89
- // </>);
90
- // };
91
- // export default TouchableRipple;
92
- // export type { TouchableRippleProps };
1
+ // import React from 'react';
2
+ // import { Pressable, StyleSheet } from "react-native";
3
+ // import type { ViewStyle, StyleProp, PressableProps } from "react-native";
4
+ // import { Gesture, GestureDetector, GestureHandlerRootView } from 'react-native-gesture-handler';
5
+ // import Animated, { useAnimatedStyle, useSharedValue, withTiming, } from 'react-native-reanimated';
6
+ // import { StyledView } from '../StyledComponents';
7
+
8
+
9
+ // type TouchableRippleProps = PressableProps & {
10
+ // rippleColor?: string;
11
+ // style?: StyleProp<ViewStyle>;
12
+ // children?: React.ReactNode;
13
+ // }
14
+
15
+ // const TouchableRipple: React.FC<TouchableRippleProps> = ({
16
+ // rippleColor = '#b6b6b681',
17
+ // style,
18
+ // children,
19
+ // ...rest
20
+ // }) => {
21
+
22
+ // const positionX = useSharedValue(0);
23
+ // const positionY = useSharedValue(0);
24
+ // const overlayHeight = useSharedValue(0);
25
+ // const overlayWidth = useSharedValue(0);
26
+ // const scale = useSharedValue(0);
27
+ // const opacity = useSharedValue(1);
28
+
29
+ // const STYLES = StyleSheet.create({
30
+ // OVERLAY: {
31
+ // position: 'absolute',
32
+ // top: 0,
33
+ // left: 0,
34
+ // zIndex: -1
35
+ // }
36
+ // });
37
+
38
+ // const effectAnimatedStyle = useAnimatedStyle(() => {
39
+ // const radius = Math.sqrt(overlayWidth.value ** 2 + overlayHeight.value ** 2);
40
+ // return {
41
+ // height: radius * 2,
42
+ // width: radius * 2,
43
+ // opacity: opacity.value,
44
+ // borderRadius: radius,
45
+ // backgroundColor: rippleColor,
46
+ // transform: [
47
+ // { translateX: positionX.value - radius },
48
+ // { translateY: positionY.value - radius },
49
+ // {
50
+ // scale: scale.value
51
+ // }
52
+ // ]
53
+ // }
54
+ // });
55
+
56
+ // const onGesturePress = !props.disabled ? Gesture.Tap().runOnJS(true).onTouchesDown(({ allTouches }: { allTouches: any }) => {
57
+ // positionX.value = allTouches[0].x;
58
+ // positionY.value = allTouches[0].y;
59
+ // opacity.value = 1;
60
+ // scale.value = 0;
61
+ // scale.value = withTiming(1, { duration: 600 });
62
+ // }).onTouchesUp(() => {
63
+ // opacity.value = withTiming(0, { duration: 800 });
64
+ // }).onTouchesCancelled(() => {
65
+ // opacity.value = withTiming(0, { duration: 800 });
66
+ // }) : Gesture.Simultaneous();
67
+
68
+
69
+ // return (<>
70
+ // <GestureHandlerRootView style={{ width: '100%' }}>
71
+ // <GestureDetector gesture={onGesturePress}>
72
+ // <Pressable
73
+ // {...rest}
74
+ // >
75
+ // <StyledView
76
+ // overflow='hidden'
77
+ // onLayout={({ nativeEvent: { layout: { height, width } } }) => {
78
+ // overlayHeight.value = height;
79
+ // overlayWidth.value = width;
80
+ // }}
81
+ // style={style}
82
+ // >
83
+ // {children}
84
+ // <Animated.View style={[STYLES.OVERLAY, effectAnimatedStyle]} />
85
+ // </StyledView>
86
+ // </Pressable>
87
+ // </GestureDetector>
88
+ // </GestureHandlerRootView>
89
+ // </>);
90
+ // };
91
+ // export default TouchableRipple;
92
+ // export type { TouchableRippleProps };
@@ -1,136 +1,136 @@
1
- import { forwardRef, useMemo, useState } from 'react';
2
- import { TextInput, StyleSheet, type ViewStyle } from 'react-native';
3
- import type { TextStyle } from 'react-native';
4
- import { responsiveFontSize, verticalScale, horizontalScale } from '../../helpers/ResponsiveCalculations';
5
- import { useTheme } from '../../hooks';
6
- import { StyledText, StyledView } from '../StyledComponents';
7
- import type { UserInputProps } from '../../types';
8
- import generateColors from './generateColors';
9
-
10
- const UserInput = forwardRef<TextInput, UserInputProps>(({
11
- variant = 'standard',
12
- label,
13
- bg,
14
- br = 10,
15
- stroke = 1,
16
- labelColor,
17
- textScale = {
18
- label: 'sm',
19
- inputText: 'sm',
20
- helperText: 'xs',
21
- },
22
- inputTextColor,
23
- strokeColor,
24
- cursorColor,
25
- placeholderColor,
26
- inputFs,
27
- labelFs,
28
- helperTextFS,
29
- placeholder = 'Please enter...',
30
- disabled = false,
31
- isError = false,
32
- helperText,
33
- multiline = false,
34
- renderLeftIcon,
35
- renderRightIcon,
36
- styles,
37
- ...rest
38
- }, ref) => {
39
-
40
- const [isFocused, setIsFocused] = useState(false);
41
-
42
- const theme: any = useTheme();
43
- const STYLES = useMemo(Styles, []);
44
-
45
- const {
46
- computedCursorColor,
47
- computedPlaceholderColor,
48
- computedLabelColor
49
- } = useMemo(() => generateColors(theme, isError, cursorColor, placeholderColor, labelColor), [theme, isError, cursorColor, placeholderColor, labelColor]);
50
-
51
- const dynamicStyles = {
52
- INPUT_CONT: {
53
- alignItems: multiline ? 'flex-start' : 'center' as ViewStyle['alignItems'],
54
- backgroundColor: disabled && theme.colors.states.disabled || isFocused && theme.colors.states.focus || (bg ?? theme.colors.background.default),
55
- borderColor: isError && theme.colors.semantic.danger || isFocused && theme.colors.brand.primary || (strokeColor ?? theme.colors.border.default),
56
- borderWidth: variant === 'standard' ? 0 : stroke,
57
- borderBottomWidth: stroke,
58
- borderRadius: verticalScale(br),
59
- height: multiline ? undefined : verticalScale(47),
60
- paddingVertical: multiline ? horizontalScale(10) : undefined,
61
- },
62
- INPUT: {
63
- color: disabled ? theme.colors.typography.disabled : isError ? theme.colors.semantic.danger : inputTextColor ?? theme.colors.typography.primary,
64
- //@ts-ignore
65
- fontSize: responsiveFontSize(inputFs ?? theme.sizes.typography[textScale.inputText]),
66
- textAlignVertical: (multiline ? 'top' : 'center') as TextStyle['textAlignVertical'],
67
- minHeight: multiline ? 100 : undefined,
68
- maxHeight: multiline ? 150 : undefined,
69
- },
70
- ERROR_HELPER_TEXT: {
71
- color: theme.colors.semantic.danger,
72
- }
73
- };
74
-
75
- return (<>
76
- <StyledView gap={verticalScale(5)} style={styles?.mainContainer} w='100%'>
77
- {
78
- label &&
79
- <StyledText fScale={textScale?.label} fs={labelFs} color={computedLabelColor} style={styles?.label}>{label}</StyledText>
80
- }
81
- <StyledView
82
- style={[STYLES.INPUT_CONT, dynamicStyles.INPUT_CONT, styles?.inputContainer]}
83
- >
84
- {
85
- renderLeftIcon
86
- }
87
- <TextInput
88
- ref={ref}
89
- style={[STYLES.INPUT, dynamicStyles.INPUT, styles?.input]}
90
- placeholder={placeholder}
91
- placeholderTextColor={computedPlaceholderColor}
92
- editable={!disabled}
93
- multiline={multiline}
94
- cursorColor={computedCursorColor}
95
- onFocus={() => setIsFocused(true)}
96
- onBlur={() => setIsFocused(false)}
97
- {...rest}
98
- />
99
- {
100
- renderRightIcon
101
- }
102
- </StyledView>
103
- {
104
- (isError && helperText) &&
105
- <StyledText
106
- fScale={textScale?.helperText}
107
- fs={helperTextFS}
108
- style={[
109
- STYLES.ERROR_HELPER_TEXT,
110
- dynamicStyles.ERROR_HELPER_TEXT,
111
- styles?.helperText
112
- ]}
113
- >
114
- {helperText}
115
- </StyledText>
116
- }
117
- </StyledView>
118
- </>)
119
- });
120
- export default UserInput;
121
- export type { UserInputProps };
122
-
123
- const Styles = () => StyleSheet.create({
124
- INPUT_CONT: {
125
- flexDirection: 'row',
126
- paddingHorizontal: horizontalScale(14),
127
- gap: horizontalScale(10),
128
- },
129
- INPUT: {
130
- padding: 0,
131
- flex: 1,
132
- },
133
- ERROR_HELPER_TEXT: {
134
- paddingHorizontal: 5
135
- }
1
+ import { forwardRef, useMemo, useState } from 'react';
2
+ import { TextInput, StyleSheet, type ViewStyle } from 'react-native';
3
+ import type { TextStyle } from 'react-native';
4
+ import { responsiveFontSize, verticalScale, horizontalScale } from '../../helpers/ResponsiveCalculations';
5
+ import { useTheme } from '../../hooks';
6
+ import { StyledText, StyledView } from '../StyledComponents';
7
+ import type { UserInputProps } from '../../types';
8
+ import generateColors from './generateColors';
9
+
10
+ const UserInput = forwardRef<TextInput, UserInputProps>(({
11
+ variant = 'standard',
12
+ label,
13
+ bg,
14
+ br = 10,
15
+ stroke = 1,
16
+ labelColor,
17
+ textScale = {
18
+ label: 'sm',
19
+ inputText: 'sm',
20
+ helperText: 'xs',
21
+ },
22
+ inputTextColor,
23
+ strokeColor,
24
+ cursorColor,
25
+ placeholderColor,
26
+ inputFs,
27
+ labelFs,
28
+ helperTextFS,
29
+ placeholder = 'Please enter...',
30
+ disabled = false,
31
+ isError = false,
32
+ helperText,
33
+ multiline = false,
34
+ renderLeftIcon,
35
+ renderRightIcon,
36
+ styles,
37
+ ...rest
38
+ }, ref) => {
39
+
40
+ const [isFocused, setIsFocused] = useState(false);
41
+
42
+ const theme: any = useTheme();
43
+ const STYLES = useMemo(Styles, []);
44
+
45
+ const {
46
+ computedCursorColor,
47
+ computedPlaceholderColor,
48
+ computedLabelColor
49
+ } = useMemo(() => generateColors(theme, isError, cursorColor, placeholderColor, labelColor), [theme, isError, cursorColor, placeholderColor, labelColor]);
50
+
51
+ const dynamicStyles = {
52
+ INPUT_CONT: {
53
+ alignItems: multiline ? 'flex-start' : 'center' as ViewStyle['alignItems'],
54
+ backgroundColor: disabled && theme.colors.states.disabled || isFocused && theme.colors.states.focus || (bg ?? theme.colors.background.default),
55
+ borderColor: isError && theme.colors.semantic.danger || isFocused && theme.colors.brand.primary || (strokeColor ?? theme.colors.border.default),
56
+ borderWidth: variant === 'standard' ? 0 : stroke,
57
+ borderBottomWidth: stroke,
58
+ borderRadius: verticalScale(br),
59
+ height: multiline ? undefined : verticalScale(47),
60
+ paddingVertical: multiline ? horizontalScale(10) : undefined,
61
+ },
62
+ INPUT: {
63
+ color: disabled ? theme.colors.typography.disabled : isError ? theme.colors.semantic.danger : inputTextColor ?? theme.colors.typography.primary,
64
+ //@ts-ignore
65
+ fontSize: responsiveFontSize(inputFs ?? theme.sizes.typography[textScale.inputText]),
66
+ textAlignVertical: (multiline ? 'top' : 'center') as TextStyle['textAlignVertical'],
67
+ minHeight: multiline ? 100 : undefined,
68
+ maxHeight: multiline ? 150 : undefined,
69
+ },
70
+ ERROR_HELPER_TEXT: {
71
+ color: theme.colors.semantic.danger,
72
+ }
73
+ };
74
+
75
+ return (<>
76
+ <StyledView gap={verticalScale(5)} style={styles?.mainContainer} w='100%'>
77
+ {
78
+ label &&
79
+ <StyledText fScale={textScale?.label} fs={labelFs} color={computedLabelColor} style={styles?.label}>{label}</StyledText>
80
+ }
81
+ <StyledView
82
+ style={[STYLES.INPUT_CONT, dynamicStyles.INPUT_CONT, styles?.inputContainer]}
83
+ >
84
+ {
85
+ renderLeftIcon
86
+ }
87
+ <TextInput
88
+ ref={ref}
89
+ style={[STYLES.INPUT, dynamicStyles.INPUT, styles?.input]}
90
+ placeholder={placeholder}
91
+ placeholderTextColor={computedPlaceholderColor}
92
+ editable={!disabled}
93
+ multiline={multiline}
94
+ cursorColor={computedCursorColor}
95
+ onFocus={() => setIsFocused(true)}
96
+ onBlur={() => setIsFocused(false)}
97
+ {...rest}
98
+ />
99
+ {
100
+ renderRightIcon
101
+ }
102
+ </StyledView>
103
+ {
104
+ (isError && helperText) &&
105
+ <StyledText
106
+ fScale={textScale?.helperText}
107
+ fs={helperTextFS}
108
+ style={[
109
+ STYLES.ERROR_HELPER_TEXT,
110
+ dynamicStyles.ERROR_HELPER_TEXT,
111
+ styles?.helperText
112
+ ]}
113
+ >
114
+ {helperText}
115
+ </StyledText>
116
+ }
117
+ </StyledView>
118
+ </>)
119
+ });
120
+ export default UserInput;
121
+ export type { UserInputProps };
122
+
123
+ const Styles = () => StyleSheet.create({
124
+ INPUT_CONT: {
125
+ flexDirection: 'row',
126
+ paddingHorizontal: horizontalScale(14),
127
+ gap: horizontalScale(10),
128
+ },
129
+ INPUT: {
130
+ padding: 0,
131
+ flex: 1,
132
+ },
133
+ ERROR_HELPER_TEXT: {
134
+ paddingHorizontal: 5
135
+ }
136
136
  });