@zezosoft/zezo-ott-react-native-ui-kit 1.0.0 → 1.0.2

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 (351) hide show
  1. package/README.md +1 -1
  2. package/lib/module/components/Account/Account.js +7 -6
  3. package/lib/module/components/Account/Account.js.map +1 -1
  4. package/lib/module/components/Auth/ForgotPassword/ForgotPassword.js +39 -27
  5. package/lib/module/components/Auth/ForgotPassword/ForgotPassword.js.map +1 -1
  6. package/lib/module/components/Auth/Login/LoginWithEmail.js +39 -25
  7. package/lib/module/components/Auth/Login/LoginWithEmail.js.map +1 -1
  8. package/lib/module/components/Auth/Login/LoginWithPhone.js +34 -25
  9. package/lib/module/components/Auth/Login/LoginWithPhone.js.map +1 -1
  10. package/lib/module/components/Auth/OTP/OTP.js +61 -42
  11. package/lib/module/components/Auth/OTP/OTP.js.map +1 -1
  12. package/lib/module/components/Auth/SignUp/SignUp.js +41 -26
  13. package/lib/module/components/Auth/SignUp/SignUp.js.map +1 -1
  14. package/lib/module/components/Auth/SplashScreen/SplashScreen.js +132 -0
  15. package/lib/module/components/Auth/SplashScreen/SplashScreen.js.map +1 -0
  16. package/lib/module/components/Auth/SplashScreen/components/SplashImage/SplashImage.js +61 -0
  17. package/lib/module/components/Auth/SplashScreen/components/SplashImage/SplashImage.js.map +1 -0
  18. package/lib/module/components/{SplashScreen → Auth/SplashScreen}/components/SplashLottie/SplashLottie.js +8 -17
  19. package/lib/module/components/Auth/SplashScreen/components/SplashLottie/SplashLottie.js.map +1 -0
  20. package/lib/module/components/{SplashScreen → Auth/SplashScreen}/components/SplashVideo/SplashVideo.js +25 -11
  21. package/lib/module/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.js.map +1 -0
  22. package/lib/module/components/Auth/index.js +3 -1
  23. package/lib/module/components/Auth/index.js.map +1 -1
  24. package/lib/module/components/BackgroundLayout/BackgroundLayout.js +77 -57
  25. package/lib/module/components/BackgroundLayout/BackgroundLayout.js.map +1 -1
  26. package/lib/module/components/BlogView/BlogView.js +28 -9
  27. package/lib/module/components/BlogView/BlogView.js.map +1 -1
  28. package/lib/module/components/Button/BackBtn.js +1 -1
  29. package/lib/module/components/Button/BackBtn.js.map +1 -1
  30. package/lib/module/components/Button/MenuBtn.js +5 -3
  31. package/lib/module/components/Button/MenuBtn.js.map +1 -1
  32. package/lib/module/components/Button/PrimaryBtn.js +3 -2
  33. package/lib/module/components/Button/PrimaryBtn.js.map +1 -1
  34. package/lib/module/components/Button/TextButton.js +3 -2
  35. package/lib/module/components/Button/TextButton.js.map +1 -1
  36. package/lib/module/components/Content/Card/Category/Category.js +3 -2
  37. package/lib/module/components/Content/Card/Category/Category.js.map +1 -1
  38. package/lib/module/components/Content/Card/NowWatching/NowWatching.js +10 -7
  39. package/lib/module/components/Content/Card/NowWatching/NowWatching.js.map +1 -1
  40. package/lib/module/components/Content/Card/Sliders/Styles/One.js +6 -4
  41. package/lib/module/components/Content/Card/Sliders/Styles/One.js.map +1 -1
  42. package/lib/module/components/Content/Card/Sliders/Styles/Two.js +3 -2
  43. package/lib/module/components/Content/Card/Sliders/Styles/Two.js.map +1 -1
  44. package/lib/module/components/Content/Card/Sliders/index.js +1 -1
  45. package/lib/module/components/Content/Card/Sliders/index.js.map +1 -1
  46. package/lib/module/components/Content/Card/Styles/Five.js +7 -6
  47. package/lib/module/components/Content/Card/Styles/Five.js.map +1 -1
  48. package/lib/module/components/Content/Card/Styles/Four.js +9 -7
  49. package/lib/module/components/Content/Card/Styles/Four.js.map +1 -1
  50. package/lib/module/components/Content/Card/Styles/One.js +33 -70
  51. package/lib/module/components/Content/Card/Styles/One.js.map +1 -1
  52. package/lib/module/components/Content/Card/Styles/RotateInOut.js +6 -5
  53. package/lib/module/components/Content/Card/Styles/RotateInOut.js.map +1 -1
  54. package/lib/module/components/Content/Card/Styles/Six.js +7 -5
  55. package/lib/module/components/Content/Card/Styles/Six.js.map +1 -1
  56. package/lib/module/components/Content/Card/Styles/Three.js +6 -5
  57. package/lib/module/components/Content/Card/Styles/Three.js.map +1 -1
  58. package/lib/module/components/Content/Card/Styles/TopTen.js +10 -12
  59. package/lib/module/components/Content/Card/Styles/TopTen.js.map +1 -1
  60. package/lib/module/components/Content/Card/Styles/Two.js +8 -6
  61. package/lib/module/components/Content/Card/Styles/Two.js.map +1 -1
  62. package/lib/module/components/Content/Card/components/CardPoster.js +17 -9
  63. package/lib/module/components/Content/Card/components/CardPoster.js.map +1 -1
  64. package/lib/module/components/Content/Card/components/NavigateToMore.js +4 -3
  65. package/lib/module/components/Content/Card/components/NavigateToMore.js.map +1 -1
  66. package/lib/module/components/Content/Card/components/NoContentFallback.js +5 -4
  67. package/lib/module/components/Content/Card/components/NoContentFallback.js.map +1 -1
  68. package/lib/module/components/Content/Card/components/ThumbnailCard.js +2 -1
  69. package/lib/module/components/Content/Card/components/ThumbnailCard.js.map +1 -1
  70. package/lib/module/components/Content/Content.js +21 -7
  71. package/lib/module/components/Content/Content.js.map +1 -1
  72. package/lib/module/components/Content/Sections.js +1 -1
  73. package/lib/module/components/Content/Sections.js.map +1 -1
  74. package/lib/module/components/ContentView/ContentView.js +8 -6
  75. package/lib/module/components/ContentView/ContentView.js.map +1 -1
  76. package/lib/module/components/ContentView/MoreContentList.js +211 -0
  77. package/lib/module/components/ContentView/MoreContentList.js.map +1 -0
  78. package/lib/module/components/ContentView/components/AboutSection.js +5 -4
  79. package/lib/module/components/ContentView/components/AboutSection.js.map +1 -1
  80. package/lib/module/components/ContentView/components/CastCard.js +5 -4
  81. package/lib/module/components/ContentView/components/CastCard.js.map +1 -1
  82. package/lib/module/components/ContentView/components/EpisodeCard.js +23 -3
  83. package/lib/module/components/ContentView/components/EpisodeCard.js.map +1 -1
  84. package/lib/module/components/ContentView/components/GenreTags.js +2 -1
  85. package/lib/module/components/ContentView/components/GenreTags.js.map +1 -1
  86. package/lib/module/components/ContentView/components/HeroBanner.js +14 -5
  87. package/lib/module/components/ContentView/components/HeroBanner.js.map +1 -1
  88. package/lib/module/components/ContentView/components/Title.js +4 -3
  89. package/lib/module/components/ContentView/components/Title.js.map +1 -1
  90. package/lib/module/components/ContentView/index.js +1 -0
  91. package/lib/module/components/ContentView/index.js.map +1 -1
  92. package/lib/module/components/Headers/AppHeader.js +20 -25
  93. package/lib/module/components/Headers/AppHeader.js.map +1 -1
  94. package/lib/module/components/Headers/One.js +1 -1
  95. package/lib/module/components/Headers/Three.js +5 -3
  96. package/lib/module/components/Headers/Three.js.map +1 -1
  97. package/lib/module/components/Headers/Two.js +5 -3
  98. package/lib/module/components/Headers/Two.js.map +1 -1
  99. package/lib/module/components/Input/InputOne.js +6 -4
  100. package/lib/module/components/Input/InputOne.js.map +1 -1
  101. package/lib/module/components/Input/InputTwo.js +5 -4
  102. package/lib/module/components/Input/InputTwo.js.map +1 -1
  103. package/lib/module/components/Input/PhoneNumberInput.js +12 -11
  104. package/lib/module/components/Input/PhoneNumberInput.js.map +1 -1
  105. package/lib/module/components/Keyboard/HideKeyboard.js +40 -12
  106. package/lib/module/components/Keyboard/HideKeyboard.js.map +1 -1
  107. package/lib/module/components/Logo/Logo.js +2 -1
  108. package/lib/module/components/Logo/Logo.js.map +1 -1
  109. package/lib/module/components/Search/One.js +6 -4
  110. package/lib/module/components/Search/One.js.map +1 -1
  111. package/lib/module/components/Search/components/RecentSearchesSection.js +10 -9
  112. package/lib/module/components/Search/components/RecentSearchesSection.js.map +1 -1
  113. package/lib/module/components/Search/components/SearchCard.js +6 -5
  114. package/lib/module/components/Search/components/SearchCard.js.map +1 -1
  115. package/lib/module/components/Settings/AppSettings.js +5 -4
  116. package/lib/module/components/Settings/AppSettings.js.map +1 -1
  117. package/lib/module/components/Subscription/SubOne.js +16 -15
  118. package/lib/module/components/Subscription/SubOne.js.map +1 -1
  119. package/lib/module/components/TabBar/One.js +5 -3
  120. package/lib/module/components/TabBar/One.js.map +1 -1
  121. package/lib/module/components/TabBar/Three.js +18 -14
  122. package/lib/module/components/TabBar/Three.js.map +1 -1
  123. package/lib/module/components/TabBar/Two.js +4 -2
  124. package/lib/module/components/TabBar/Two.js.map +1 -1
  125. package/lib/module/components/Text/Text.js +4 -4
  126. package/lib/module/components/Text/Text.js.map +1 -1
  127. package/lib/module/components/User/DeviceSessions/DeviceSessions.js +7 -6
  128. package/lib/module/components/User/DeviceSessions/DeviceSessions.js.map +1 -1
  129. package/lib/module/components/User/WatchHistory/WatchHistory.js +6 -7
  130. package/lib/module/components/User/WatchHistory/WatchHistory.js.map +1 -1
  131. package/lib/module/components/User/WatchLater/WatchLater.js +12 -9
  132. package/lib/module/components/User/WatchLater/WatchLater.js.map +1 -1
  133. package/lib/module/components/User/components/UserAvatar.js +1 -1
  134. package/lib/module/components/User/components/UserAvatar.js.map +1 -1
  135. package/lib/module/components/User/components/UserSection.js +5 -4
  136. package/lib/module/components/User/components/UserSection.js.map +1 -1
  137. package/lib/module/components/index.js +0 -1
  138. package/lib/module/components/index.js.map +1 -1
  139. package/lib/module/components/layout/SafeAreaWrapper.js +12 -11
  140. package/lib/module/components/layout/SafeAreaWrapper.js.map +1 -1
  141. package/lib/module/hooks/useInitSplashCacheSync.js +67 -63
  142. package/lib/module/hooks/useInitSplashCacheSync.js.map +1 -1
  143. package/lib/module/hooks/useKeyboard.js +7 -9
  144. package/lib/module/hooks/useKeyboard.js.map +1 -1
  145. package/lib/module/hooks/usePaginatedSection.js +10 -3
  146. package/lib/module/hooks/usePaginatedSection.js.map +1 -1
  147. package/lib/module/theme/ThemeProvider.js +55 -52
  148. package/lib/module/theme/ThemeProvider.js.map +1 -1
  149. package/lib/module/theme/hook/useTheme.js +45 -0
  150. package/lib/module/theme/hook/useTheme.js.map +1 -0
  151. package/lib/module/theme/index.js +1 -0
  152. package/lib/module/theme/index.js.map +1 -1
  153. package/lib/module/theme/themes.js +1 -1
  154. package/lib/typescript/src/components/Account/Account.d.ts.map +1 -1
  155. package/lib/typescript/src/components/Auth/ForgotPassword/ForgotPassword.d.ts +9 -6
  156. package/lib/typescript/src/components/Auth/ForgotPassword/ForgotPassword.d.ts.map +1 -1
  157. package/lib/typescript/src/components/Auth/Login/LoginWithEmail.d.ts +6 -2
  158. package/lib/typescript/src/components/Auth/Login/LoginWithEmail.d.ts.map +1 -1
  159. package/lib/typescript/src/components/Auth/Login/LoginWithPhone.d.ts +6 -2
  160. package/lib/typescript/src/components/Auth/Login/LoginWithPhone.d.ts.map +1 -1
  161. package/lib/typescript/src/components/Auth/OTP/OTP.d.ts +7 -3
  162. package/lib/typescript/src/components/Auth/OTP/OTP.d.ts.map +1 -1
  163. package/lib/typescript/src/components/Auth/SignUp/SignUp.d.ts +6 -2
  164. package/lib/typescript/src/components/Auth/SignUp/SignUp.d.ts.map +1 -1
  165. package/lib/typescript/src/components/Auth/SplashScreen/SplashScreen.d.ts +34 -0
  166. package/lib/typescript/src/components/Auth/SplashScreen/SplashScreen.d.ts.map +1 -0
  167. package/lib/typescript/src/components/{SplashScreen → Auth/SplashScreen}/components/SplashImage/SplashImage.d.ts +2 -3
  168. package/lib/typescript/src/components/Auth/SplashScreen/components/SplashImage/SplashImage.d.ts.map +1 -0
  169. package/lib/typescript/src/components/{SplashScreen → Auth/SplashScreen}/components/SplashLottie/SplashLottie.d.ts +1 -1
  170. package/lib/typescript/src/components/Auth/SplashScreen/components/SplashLottie/SplashLottie.d.ts.map +1 -0
  171. package/lib/typescript/src/components/{SplashScreen → Auth/SplashScreen}/components/SplashVideo/SplashVideo.d.ts +1 -1
  172. package/lib/typescript/src/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.d.ts.map +1 -0
  173. package/lib/typescript/src/components/Auth/index.d.ts +49 -11
  174. package/lib/typescript/src/components/Auth/index.d.ts.map +1 -1
  175. package/lib/typescript/src/components/BackgroundLayout/BackgroundLayout.d.ts +5 -4
  176. package/lib/typescript/src/components/BackgroundLayout/BackgroundLayout.d.ts.map +1 -1
  177. package/lib/typescript/src/components/BlogView/BlogView.d.ts +1 -0
  178. package/lib/typescript/src/components/BlogView/BlogView.d.ts.map +1 -1
  179. package/lib/typescript/src/components/Button/MenuBtn.d.ts +1 -8
  180. package/lib/typescript/src/components/Button/MenuBtn.d.ts.map +1 -1
  181. package/lib/typescript/src/components/Button/PrimaryBtn.d.ts.map +1 -1
  182. package/lib/typescript/src/components/Button/TextButton.d.ts.map +1 -1
  183. package/lib/typescript/src/components/Content/Card/Category/Category.d.ts.map +1 -1
  184. package/lib/typescript/src/components/Content/Card/NowWatching/NowWatching.d.ts.map +1 -1
  185. package/lib/typescript/src/components/Content/Card/Sliders/Styles/One.d.ts.map +1 -1
  186. package/lib/typescript/src/components/Content/Card/Sliders/Styles/Two.d.ts.map +1 -1
  187. package/lib/typescript/src/components/Content/Card/Sliders/index.d.ts +1 -1
  188. package/lib/typescript/src/components/Content/Card/Styles/Five.d.ts.map +1 -1
  189. package/lib/typescript/src/components/Content/Card/Styles/Four.d.ts.map +1 -1
  190. package/lib/typescript/src/components/Content/Card/Styles/One.d.ts.map +1 -1
  191. package/lib/typescript/src/components/Content/Card/Styles/RotateInOut.d.ts.map +1 -1
  192. package/lib/typescript/src/components/Content/Card/Styles/Six.d.ts.map +1 -1
  193. package/lib/typescript/src/components/Content/Card/Styles/Three.d.ts.map +1 -1
  194. package/lib/typescript/src/components/Content/Card/Styles/TopTen.d.ts.map +1 -1
  195. package/lib/typescript/src/components/Content/Card/Styles/Two.d.ts.map +1 -1
  196. package/lib/typescript/src/components/Content/Card/components/CardPoster.d.ts +4 -0
  197. package/lib/typescript/src/components/Content/Card/components/CardPoster.d.ts.map +1 -1
  198. package/lib/typescript/src/components/Content/Card/components/NavigateToMore.d.ts.map +1 -1
  199. package/lib/typescript/src/components/Content/Card/components/NoContentFallback.d.ts.map +1 -1
  200. package/lib/typescript/src/components/Content/Card/components/ThumbnailCard.d.ts.map +1 -1
  201. package/lib/typescript/src/components/Content/Content.d.ts +1 -0
  202. package/lib/typescript/src/components/Content/Content.d.ts.map +1 -1
  203. package/lib/typescript/src/components/ContentView/MoreContentList.d.ts +27 -0
  204. package/lib/typescript/src/components/ContentView/MoreContentList.d.ts.map +1 -0
  205. package/lib/typescript/src/components/ContentView/components/AboutSection.d.ts.map +1 -1
  206. package/lib/typescript/src/components/ContentView/components/CastCard.d.ts.map +1 -1
  207. package/lib/typescript/src/components/ContentView/components/EpisodeCard.d.ts.map +1 -1
  208. package/lib/typescript/src/components/ContentView/components/GenreTags.d.ts.map +1 -1
  209. package/lib/typescript/src/components/ContentView/components/HeroBanner.d.ts.map +1 -1
  210. package/lib/typescript/src/components/ContentView/components/Title.d.ts.map +1 -1
  211. package/lib/typescript/src/components/ContentView/index.d.ts +1 -0
  212. package/lib/typescript/src/components/ContentView/index.d.ts.map +1 -1
  213. package/lib/typescript/src/components/Headers/AppHeader.d.ts.map +1 -1
  214. package/lib/typescript/src/components/Headers/Three.d.ts +1 -0
  215. package/lib/typescript/src/components/Headers/Three.d.ts.map +1 -1
  216. package/lib/typescript/src/components/Headers/Two.d.ts +1 -0
  217. package/lib/typescript/src/components/Headers/Two.d.ts.map +1 -1
  218. package/lib/typescript/src/components/Input/InputOne.d.ts.map +1 -1
  219. package/lib/typescript/src/components/Input/InputTwo.d.ts.map +1 -1
  220. package/lib/typescript/src/components/Input/PhoneNumberInput.d.ts.map +1 -1
  221. package/lib/typescript/src/components/Keyboard/HideKeyboard.d.ts +1 -1
  222. package/lib/typescript/src/components/Keyboard/HideKeyboard.d.ts.map +1 -1
  223. package/lib/typescript/src/components/Logo/Logo.d.ts.map +1 -1
  224. package/lib/typescript/src/components/Search/One.d.ts.map +1 -1
  225. package/lib/typescript/src/components/Search/components/RecentSearchesSection.d.ts.map +1 -1
  226. package/lib/typescript/src/components/Search/components/SearchCard.d.ts.map +1 -1
  227. package/lib/typescript/src/components/Settings/AppSettings.d.ts.map +1 -1
  228. package/lib/typescript/src/components/Subscription/SubOne.d.ts.map +1 -1
  229. package/lib/typescript/src/components/Subscription/index.d.ts.map +1 -1
  230. package/lib/typescript/src/components/TabBar/One.d.ts.map +1 -1
  231. package/lib/typescript/src/components/TabBar/Three.d.ts +2 -2
  232. package/lib/typescript/src/components/TabBar/Three.d.ts.map +1 -1
  233. package/lib/typescript/src/components/TabBar/Two.d.ts.map +1 -1
  234. package/lib/typescript/src/components/User/DeviceSessions/DeviceSessions.d.ts.map +1 -1
  235. package/lib/typescript/src/components/User/WatchHistory/WatchHistory.d.ts.map +1 -1
  236. package/lib/typescript/src/components/User/WatchLater/WatchLater.d.ts.map +1 -1
  237. package/lib/typescript/src/components/User/components/UserSection.d.ts.map +1 -1
  238. package/lib/typescript/src/components/index.d.ts +0 -1
  239. package/lib/typescript/src/components/index.d.ts.map +1 -1
  240. package/lib/typescript/src/components/layout/SafeAreaWrapper.d.ts +2 -4
  241. package/lib/typescript/src/components/layout/SafeAreaWrapper.d.ts.map +1 -1
  242. package/lib/typescript/src/hooks/useInitSplashCacheSync.d.ts +1 -1
  243. package/lib/typescript/src/hooks/useInitSplashCacheSync.d.ts.map +1 -1
  244. package/lib/typescript/src/hooks/useKeyboard.d.ts.map +1 -1
  245. package/lib/typescript/src/hooks/usePaginatedSection.d.ts +1 -0
  246. package/lib/typescript/src/hooks/usePaginatedSection.d.ts.map +1 -1
  247. package/lib/typescript/src/theme/ThemeProvider.d.ts +8 -4
  248. package/lib/typescript/src/theme/ThemeProvider.d.ts.map +1 -1
  249. package/lib/typescript/src/theme/hook/useTheme.d.ts +9 -0
  250. package/lib/typescript/src/theme/hook/useTheme.d.ts.map +1 -0
  251. package/lib/typescript/src/theme/index.d.ts +1 -0
  252. package/lib/typescript/src/theme/index.d.ts.map +1 -1
  253. package/lib/typescript/src/types/content/content-view.types.d.ts +7 -3
  254. package/lib/typescript/src/types/content/content-view.types.d.ts.map +1 -1
  255. package/package.json +3 -2
  256. package/src/components/Account/Account.tsx +7 -6
  257. package/src/components/Auth/ForgotPassword/ForgotPassword.tsx +51 -32
  258. package/src/components/Auth/Login/LoginWithEmail.tsx +45 -26
  259. package/src/components/Auth/Login/LoginWithPhone.tsx +38 -24
  260. package/src/components/Auth/OTP/OTP.tsx +96 -61
  261. package/src/components/Auth/SignUp/SignUp.tsx +49 -31
  262. package/src/components/Auth/SplashScreen/SplashScreen.tsx +166 -0
  263. package/src/components/Auth/SplashScreen/components/SplashImage/SplashImage.tsx +66 -0
  264. package/src/components/{SplashScreen → Auth/SplashScreen}/components/SplashLottie/SplashLottie.tsx +7 -19
  265. package/src/components/{SplashScreen → Auth/SplashScreen}/components/SplashVideo/SplashVideo.tsx +23 -14
  266. package/src/components/Auth/index.ts +3 -1
  267. package/src/components/BackgroundLayout/BackgroundLayout.tsx +72 -50
  268. package/src/components/BlogView/BlogView.tsx +29 -9
  269. package/src/components/Button/BackBtn.tsx +1 -1
  270. package/src/components/Button/MenuBtn.tsx +6 -9
  271. package/src/components/Button/PrimaryBtn.tsx +3 -2
  272. package/src/components/Button/TextButton.tsx +3 -2
  273. package/src/components/Content/Card/Category/Category.tsx +3 -2
  274. package/src/components/Content/Card/NowWatching/NowWatching.tsx +15 -8
  275. package/src/components/Content/Card/Sliders/Styles/One.tsx +4 -3
  276. package/src/components/Content/Card/Sliders/Styles/Two.tsx +3 -2
  277. package/src/components/Content/Card/Sliders/index.ts +1 -1
  278. package/src/components/Content/Card/Styles/Five.tsx +7 -6
  279. package/src/components/Content/Card/Styles/Four.tsx +7 -6
  280. package/src/components/Content/Card/Styles/One.tsx +44 -111
  281. package/src/components/Content/Card/Styles/RotateInOut.tsx +5 -5
  282. package/src/components/Content/Card/Styles/Six.tsx +7 -5
  283. package/src/components/Content/Card/Styles/Three.tsx +5 -5
  284. package/src/components/Content/Card/Styles/TopTen.tsx +10 -14
  285. package/src/components/Content/Card/Styles/Two.tsx +9 -7
  286. package/src/components/Content/Card/components/CardPoster.tsx +24 -11
  287. package/src/components/Content/Card/components/NavigateToMore.tsx +4 -3
  288. package/src/components/Content/Card/components/NoContentFallback.tsx +5 -4
  289. package/src/components/Content/Card/components/ThumbnailCard.tsx +2 -1
  290. package/src/components/Content/Content.tsx +38 -7
  291. package/src/components/Content/Sections.tsx +1 -1
  292. package/src/components/ContentView/ContentView.tsx +6 -6
  293. package/src/components/ContentView/MoreContentList.tsx +238 -0
  294. package/src/components/ContentView/components/AboutSection.tsx +5 -4
  295. package/src/components/ContentView/components/CastCard.tsx +5 -4
  296. package/src/components/ContentView/components/EpisodeCard.tsx +30 -4
  297. package/src/components/ContentView/components/GenreTags.tsx +2 -1
  298. package/src/components/ContentView/components/HeroBanner.tsx +10 -6
  299. package/src/components/ContentView/components/Title.tsx +4 -3
  300. package/src/components/ContentView/index.ts +1 -0
  301. package/src/components/Headers/AppHeader.tsx +20 -34
  302. package/src/components/Headers/One.tsx +1 -1
  303. package/src/components/Headers/Three.tsx +4 -3
  304. package/src/components/Headers/Two.tsx +4 -3
  305. package/src/components/Input/InputOne.tsx +6 -4
  306. package/src/components/Input/InputTwo.tsx +5 -4
  307. package/src/components/Input/PhoneNumberInput.tsx +12 -11
  308. package/src/components/Keyboard/HideKeyboard.tsx +41 -15
  309. package/src/components/Logo/Logo.tsx +2 -1
  310. package/src/components/Search/One.tsx +6 -5
  311. package/src/components/Search/components/RecentSearchesSection.tsx +10 -9
  312. package/src/components/Search/components/SearchCard.tsx +6 -5
  313. package/src/components/Settings/AppSettings.tsx +14 -13
  314. package/src/components/Subscription/SubOne.tsx +16 -15
  315. package/src/components/TabBar/One.tsx +6 -3
  316. package/src/components/TabBar/Three.tsx +28 -14
  317. package/src/components/TabBar/Two.tsx +4 -2
  318. package/src/components/Text/Text.tsx +4 -4
  319. package/src/components/User/DeviceSessions/DeviceSessions.tsx +7 -6
  320. package/src/components/User/WatchHistory/WatchHistory.tsx +5 -7
  321. package/src/components/User/WatchLater/WatchLater.tsx +12 -9
  322. package/src/components/User/components/UserAvatar.tsx +1 -1
  323. package/src/components/User/components/UserSection.tsx +5 -4
  324. package/src/components/index.ts +0 -1
  325. package/src/components/layout/SafeAreaWrapper.tsx +16 -9
  326. package/src/hooks/useInitSplashCacheSync.ts +74 -87
  327. package/src/hooks/useKeyboard.ts +9 -8
  328. package/src/hooks/usePaginatedSection.ts +7 -3
  329. package/src/theme/ThemeProvider.tsx +59 -55
  330. package/src/theme/hook/useTheme.ts +41 -0
  331. package/src/theme/index.ts +1 -0
  332. package/src/theme/themes.ts +1 -1
  333. package/src/types/content/content-view.types.ts +4 -2
  334. package/lib/module/components/SplashScreen/SplashScreen.js +0 -109
  335. package/lib/module/components/SplashScreen/SplashScreen.js.map +0 -1
  336. package/lib/module/components/SplashScreen/components/SplashImage/SplashImage.js +0 -68
  337. package/lib/module/components/SplashScreen/components/SplashImage/SplashImage.js.map +0 -1
  338. package/lib/module/components/SplashScreen/components/SplashLottie/SplashLottie.js.map +0 -1
  339. package/lib/module/components/SplashScreen/components/SplashVideo/SplashVideo.js.map +0 -1
  340. package/lib/module/components/SplashScreen/index.js +0 -9
  341. package/lib/module/components/SplashScreen/index.js.map +0 -1
  342. package/lib/typescript/src/components/SplashScreen/SplashScreen.d.ts +0 -32
  343. package/lib/typescript/src/components/SplashScreen/SplashScreen.d.ts.map +0 -1
  344. package/lib/typescript/src/components/SplashScreen/components/SplashImage/SplashImage.d.ts.map +0 -1
  345. package/lib/typescript/src/components/SplashScreen/components/SplashLottie/SplashLottie.d.ts.map +0 -1
  346. package/lib/typescript/src/components/SplashScreen/components/SplashVideo/SplashVideo.d.ts.map +0 -1
  347. package/lib/typescript/src/components/SplashScreen/index.d.ts +0 -6
  348. package/lib/typescript/src/components/SplashScreen/index.d.ts.map +0 -1
  349. package/src/components/SplashScreen/SplashScreen.tsx +0 -131
  350. package/src/components/SplashScreen/components/SplashImage/SplashImage.tsx +0 -84
  351. package/src/components/SplashScreen/index.ts +0 -6
@@ -15,8 +15,9 @@ import {
15
15
  } from 'react-native';
16
16
  import { Eye, EyeOff } from 'lucide-react-native';
17
17
  import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
18
- import { useTheme } from '../../theme/ThemeProvider';
18
+ import { useTheme } from '../../theme/hook/useTheme';
19
19
  import type { AppTheme } from '../../theme/themes';
20
+ import { RFValue } from 'react-native-responsive-fontsize';
20
21
 
21
22
  export interface InputOneProps extends Omit<TextInputProps, 'theme'> {
22
23
  containerStyle?: ViewStyle;
@@ -95,6 +96,7 @@ const InputOne: React.FC<InputOneProps> = ({
95
96
  editable={!disabled}
96
97
  placeholderTextColor={placeholderTextColor || (disabled ? textDisabled : textSecondary)}
97
98
  secureTextEntry={inputSecure}
99
+ textContentType={isPasswordField ? 'oneTimeCode' : props.textContentType || 'none'}
98
100
  style={[
99
101
  styles.input,
100
102
  {
@@ -135,7 +137,7 @@ const styles = StyleSheet.create({
135
137
  paddingHorizontal: scale(4)
136
138
  },
137
139
  label: {
138
- fontSize: scale(12),
140
+ fontSize: RFValue(10),
139
141
  fontWeight: '500',
140
142
  backgroundColor: 'transparent'
141
143
  },
@@ -149,11 +151,11 @@ const styles = StyleSheet.create({
149
151
  input: {
150
152
  flex: 1,
151
153
  width: '100%',
152
- fontSize: scale(16),
154
+ fontSize: RFValue(14),
153
155
  minHeight: verticalScale(30)
154
156
  },
155
157
  errorText: {
156
- fontSize: scale(12),
158
+ fontSize: RFValue(10),
157
159
  marginTop: verticalScale(4),
158
160
  marginLeft: scale(8)
159
161
  }
@@ -16,8 +16,9 @@ import {
16
16
  } from 'react-native';
17
17
  import { Eye, EyeOff } from 'lucide-react-native';
18
18
  import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
19
- import { useTheme } from '../../theme/ThemeProvider';
19
+ import { useTheme } from '../../theme/hook/useTheme';
20
20
  import type { AppTheme } from '../../theme/themes';
21
+ import { RFValue } from 'react-native-responsive-fontsize';
21
22
 
22
23
  export interface InputTwoProps extends Omit<TextInputProps, 'theme'> {
23
24
  containerStyle?: ViewStyle;
@@ -158,7 +159,7 @@ const styles = StyleSheet.create({
158
159
  paddingHorizontal: scale(4)
159
160
  },
160
161
  label: {
161
- fontSize: scale(12),
162
+ fontSize: RFValue(11),
162
163
  fontWeight: '500',
163
164
  backgroundColor: 'transparent'
164
165
  },
@@ -176,12 +177,12 @@ const styles = StyleSheet.create({
176
177
  },
177
178
  input: {
178
179
  flex: 1,
179
- fontSize: scale(16),
180
+ fontSize: RFValue(14),
180
181
  minHeight: verticalScale(30),
181
182
  padding: 0
182
183
  },
183
184
  errorText: {
184
- fontSize: scale(12),
185
+ fontSize: RFValue(11),
185
186
  marginTop: verticalScale(4),
186
187
  marginLeft: scale(8)
187
188
  }
@@ -20,8 +20,9 @@ import { getExampleNumber } from 'libphonenumber-js';
20
20
  import examples from 'libphonenumber-js/mobile/examples';
21
21
  import { parsePhoneNumberFromString } from 'libphonenumber-js';
22
22
  import debounce from 'lodash.debounce';
23
- import { useTheme } from '../../theme/ThemeProvider';
23
+ import { useTheme } from '../../theme/hook/useTheme';
24
24
  import type { AppTheme } from '../../theme/themes';
25
+ import { RFValue } from 'react-native-responsive-fontsize';
25
26
 
26
27
  export interface PhoneNumberInputProps extends Pick<AccessibilityProps, 'accessibilityLabel' | 'accessibilityHint'> {
27
28
  value: string;
@@ -99,7 +100,7 @@ const PhoneNumberInputOne: React.FC<PhoneNumberInputProps> = ({
99
100
  onChangeText({
100
101
  fullNumber: '',
101
102
  formattedNumber: formattedText,
102
- countryCode: inputCallingCode ? `+${inputCallingCode}` : ''
103
+ countryCode: inputCallingCode
103
104
  });
104
105
  return;
105
106
  }
@@ -109,7 +110,7 @@ const PhoneNumberInputOne: React.FC<PhoneNumberInputProps> = ({
109
110
  onChangeText({
110
111
  fullNumber: '',
111
112
  formattedNumber: formattedText,
112
- countryCode: inputCallingCode ? `+${inputCallingCode}` : ''
113
+ countryCode: inputCallingCode
113
114
  });
114
115
  return;
115
116
  }
@@ -119,7 +120,7 @@ const PhoneNumberInputOne: React.FC<PhoneNumberInputProps> = ({
119
120
  onChangeText({
120
121
  fullNumber: '',
121
122
  formattedNumber: formattedText,
122
- countryCode: `+${inputCallingCode}`
123
+ countryCode: inputCallingCode
123
124
  });
124
125
  return;
125
126
  }
@@ -129,7 +130,7 @@ const PhoneNumberInputOne: React.FC<PhoneNumberInputProps> = ({
129
130
  onChangeText({
130
131
  fullNumber: '',
131
132
  formattedNumber: formattedText,
132
- countryCode: `+${inputCallingCode}`
133
+ countryCode: inputCallingCode
133
134
  });
134
135
  return;
135
136
  }
@@ -142,14 +143,14 @@ const PhoneNumberInputOne: React.FC<PhoneNumberInputProps> = ({
142
143
  onChangeText({
143
144
  fullNumber: e164,
144
145
  formattedNumber: formattedText,
145
- countryCode: `+${inputCallingCode}`
146
+ countryCode: inputCallingCode
146
147
  });
147
148
  } else {
148
149
  setInputError('Please enter a valid phone number');
149
150
  onChangeText({
150
151
  fullNumber: '',
151
152
  formattedNumber: formattedText,
152
- countryCode: `+${inputCallingCode}`
153
+ countryCode: inputCallingCode
153
154
  });
154
155
  }
155
156
  },
@@ -329,7 +330,7 @@ const styles = StyleSheet.create({
329
330
  borderRadius: scale(4)
330
331
  },
331
332
  label: {
332
- fontSize: scale(12),
333
+ fontSize: RFValue(10),
333
334
  fontWeight: '500',
334
335
  letterSpacing: 0.3
335
336
  },
@@ -359,12 +360,12 @@ const styles = StyleSheet.create({
359
360
  },
360
361
  textInput: {
361
362
  flex: 1,
362
- fontSize: scale(18),
363
+ fontSize: RFValue(16),
363
364
  padding: 0,
364
365
  fontWeight: '400'
365
366
  },
366
367
  codeTextStyle: {
367
- fontSize: scale(18),
368
+ fontSize: RFValue(16),
368
369
  fontWeight: '500'
369
370
  },
370
371
  countryPickerButtonStyle: {
@@ -373,7 +374,7 @@ const styles = StyleSheet.create({
373
374
  marginLeft: scale(-4)
374
375
  },
375
376
  errorText: {
376
- fontSize: scale(12),
377
+ fontSize: RFValue(10),
377
378
  marginTop: verticalScale(8),
378
379
  marginLeft: scale(12),
379
380
  fontWeight: '400',
@@ -1,17 +1,19 @@
1
1
  /**
2
2
  * @author Naresh Dhamu
3
- * @lastModified Mon 16 Jun 2025 at 12:35 PM
3
+ * @lastModified Fri 08 Aug 2025 at 08:14 AM
4
4
  */
5
- import React from 'react';
5
+ import React, { useEffect, useRef } from 'react';
6
6
  import {
7
7
  TouchableWithoutFeedback,
8
8
  Keyboard,
9
9
  KeyboardAvoidingView,
10
- Platform,
11
10
  StyleSheet,
11
+ Animated,
12
+ Platform,
13
+ StatusBar,
12
14
  type ViewStyle
13
15
  } from 'react-native';
14
- import { verticalScale } from 'react-native-size-matters';
16
+ import { scale } from 'react-native-size-matters';
15
17
 
16
18
  interface HideKeyboardProps {
17
19
  children: React.ReactNode;
@@ -23,24 +25,48 @@ interface HideKeyboardProps {
23
25
  const HideKeyboard: React.FC<HideKeyboardProps> = ({
24
26
  children,
25
27
  containerStyle,
26
- behavior = Platform.OS === 'ios' ? 'padding' : 'padding',
27
- keyboardVerticalOffset = Platform.OS === 'ios' ? verticalScale(-90) : verticalScale(-40)
28
+ behavior = 'padding',
29
+ keyboardVerticalOffset = scale(-160)
28
30
  }) => {
31
+ const fadeAnim = useRef(new Animated.Value(1)).current;
32
+
33
+ // Platform-based offset
34
+ const offset = keyboardVerticalOffset ?? (Platform.OS === 'ios' ? 0 : (StatusBar.currentHeight ?? 0));
35
+
36
+ useEffect(() => {
37
+ const showEvent = Platform.OS === 'ios' ? 'keyboardWillShow' : 'keyboardDidShow';
38
+ const hideEvent = Platform.OS === 'ios' ? 'keyboardWillHide' : 'keyboardDidHide';
39
+
40
+ const showSub = Keyboard.addListener(showEvent, () => {
41
+ Animated.timing(fadeAnim, {
42
+ toValue: 0.98,
43
+ duration: 250,
44
+ useNativeDriver: true
45
+ }).start();
46
+ });
47
+
48
+ const hideSub = Keyboard.addListener(hideEvent, () => {
49
+ Animated.timing(fadeAnim, {
50
+ toValue: 1,
51
+ duration: 250,
52
+ useNativeDriver: true
53
+ }).start();
54
+ });
55
+
56
+ return () => {
57
+ showSub.remove();
58
+ hideSub.remove();
59
+ };
60
+ }, [fadeAnim]);
61
+
29
62
  return (
30
63
  <KeyboardAvoidingView
31
64
  style={[styles.keyboardAvoidingView, containerStyle]}
32
65
  behavior={behavior}
33
- keyboardVerticalOffset={keyboardVerticalOffset}
34
- enabled={true}
66
+ keyboardVerticalOffset={offset}
35
67
  >
36
68
  <TouchableWithoutFeedback onPress={Keyboard.dismiss} accessible={false}>
37
- <KeyboardAvoidingView
38
- style={[styles.keyboardAvoidingView, containerStyle]}
39
- behavior={behavior}
40
- keyboardVerticalOffset={keyboardVerticalOffset}
41
- >
42
- {children}
43
- </KeyboardAvoidingView>
69
+ <Animated.View style={{ flex: 1, transform: [{ scale: fadeAnim }] }}>{children}</Animated.View>
44
70
  </TouchableWithoutFeedback>
45
71
  </KeyboardAvoidingView>
46
72
  );
@@ -7,7 +7,7 @@ import { Image, View, type StyleProp, type ImageStyle, type ViewStyle } from 're
7
7
  import { moderateScale } from 'react-native-size-matters';
8
8
  import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
9
9
  import { useInitSplashCacheSync } from '../../hooks/useInitSplashCacheSync';
10
- import { useTheme } from '../../theme';
10
+ import { useTheme } from '../../theme/hook/useTheme';
11
11
  import type { AppTheme } from '../../theme/themes';
12
12
 
13
13
  interface ILogoProps {
@@ -71,6 +71,7 @@ export const Logo: React.FC<ILogoProps> = ({
71
71
  backgroundColor={appliedTheme.colors.skeletonBaseColor}
72
72
  highlightColor={appliedTheme.colors.skeletonHighlightColor}
73
73
  speed={1000}
74
+ borderRadius={4}
74
75
  >
75
76
  <SkeletonPlaceholder.Item
76
77
  alignSelf="center"
@@ -5,11 +5,11 @@
5
5
 
6
6
  import React, { memo, useCallback, useMemo } from 'react';
7
7
  import { View, StyleSheet, Platform, FlatList, Keyboard, type ListRenderItem } from 'react-native';
8
- import { useTheme } from '../../theme';
8
+ import { useTheme } from '../../theme/hook/useTheme';
9
9
  import InputTwo from '../Input/InputTwo';
10
10
  import { LucideSearch, XCircle } from 'lucide-react-native';
11
11
  import { Text } from '../Text';
12
- import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
12
+ import { scale, verticalScale } from 'react-native-size-matters';
13
13
  import HideKeyboard from '../Keyboard/HideKeyboard';
14
14
  import SearchCard, { type SearchCardSkeletonConfig } from './components/SearchCard';
15
15
  import { useDebounce } from '../../hooks/useDebounce';
@@ -19,6 +19,7 @@ import { useRecentSearchesStore } from '../../store/RecentSearchesStore';
19
19
  import RecentSearchesSection from './components/RecentSearchesSection';
20
20
  import Cards from '../Content/Card';
21
21
  import type { RecommendedCardStyles } from '../../types/content/content-view.types';
22
+ import { RFValue } from 'react-native-responsive-fontsize';
22
23
 
23
24
  // Types
24
25
  export type ISearchItem = IContentData;
@@ -190,7 +191,7 @@ const SearchBar: React.FC<SearchOneProps> = ({
190
191
  />
191
192
  </View>
192
193
 
193
- <HideKeyboard>
194
+ <HideKeyboard keyboardVerticalOffset={scale(10)}>
194
195
  <FlatList
195
196
  data={isLoading ? skeletonItems : results}
196
197
  keyExtractor={(item, idx) => item?._id || `item-${idx}`}
@@ -218,10 +219,10 @@ const styles = StyleSheet.create({
218
219
  paddingHorizontal: scale(16)
219
220
  },
220
221
  recommendedTitle: {
221
- fontSize: moderateScale(16)
222
+ fontSize: RFValue(13)
222
223
  },
223
224
  emptyText: {
224
- fontSize: moderateScale(14),
225
+ fontSize: RFValue(12),
225
226
  textAlign: 'center',
226
227
  marginTop: verticalScale(20)
227
228
  }
@@ -10,6 +10,7 @@ import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
10
10
  import { scale } from 'react-native-size-matters';
11
11
  import { Text } from '../../Text';
12
12
  import type { ITheme } from '../../../theme/themes';
13
+ import { RFValue } from 'react-native-responsive-fontsize';
13
14
 
14
15
  type Props = {
15
16
  recentSearches: string[];
@@ -74,7 +75,7 @@ const RecentSearchesSection: React.FC<Props> = ({ recentSearches, isLoading, onP
74
75
  accessibilityLabel={`Search for ${item}`}
75
76
  activeOpacity={0.7}
76
77
  >
77
- <RotateCcw size={scale(16)} color={textPrimary} style={styles.pillIcon} />
78
+ <RotateCcw size={scale(15)} color={textPrimary} style={styles.pillIcon} />
78
79
  <Text style={[styles.pillText, { color: textPrimary }]} numberOfLines={1} ellipsizeMode="tail">
79
80
  {item}
80
81
  </Text>
@@ -92,7 +93,7 @@ export default memo(RecentSearchesSection);
92
93
 
93
94
  const styles = StyleSheet.create({
94
95
  container: {
95
- paddingVertical: scale(12),
96
+ paddingVertical: scale(10),
96
97
  backgroundColor: 'transparent'
97
98
  },
98
99
  headerRow: {
@@ -102,12 +103,12 @@ const styles = StyleSheet.create({
102
103
  marginBottom: scale(12)
103
104
  },
104
105
  recentSearchText: {
105
- fontSize: scale(14),
106
- fontWeight: '700',
106
+ fontSize: RFValue(12),
107
+ fontWeight: '600',
107
108
  letterSpacing: 0.2
108
109
  },
109
110
  clearAllText: {
110
- fontSize: scale(12),
111
+ fontSize: RFValue(10),
111
112
  fontWeight: '500',
112
113
  textDecorationLine: 'underline'
113
114
  },
@@ -124,15 +125,15 @@ const styles = StyleSheet.create({
124
125
  flexDirection: 'row',
125
126
  alignItems: 'center',
126
127
  borderRadius: scale(5),
127
- paddingHorizontal: scale(11),
128
+ paddingHorizontal: scale(10),
128
129
  borderWidth: scale(0.5),
129
- paddingVertical: scale(6),
130
+ paddingVertical: scale(5),
130
131
  marginRight: scale(6.5),
131
132
  marginBottom: scale(6),
132
133
  maxWidth: scale(150)
133
134
  },
134
135
  pillText: {
135
- fontSize: scale(12),
136
+ fontSize: RFValue(10),
136
137
  fontWeight: '500',
137
138
  flexShrink: 1
138
139
  },
@@ -146,7 +147,7 @@ const styles = StyleSheet.create({
146
147
  marginBottom: scale(6)
147
148
  },
148
149
  noResultsText: {
149
- fontSize: scale(12),
150
+ fontSize: RFValue(11),
150
151
  fontStyle: 'italic',
151
152
  opacity: 0.7
152
153
  }
@@ -9,11 +9,12 @@ import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
9
9
  import FastImage from 'react-native-fast-image';
10
10
  import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
11
11
 
12
- import { useTheme } from '../../../theme';
12
+ import { useTheme } from '../../../theme/hook/useTheme';
13
13
  import type { AppTheme } from '../../../theme/themes';
14
14
 
15
15
  import { ThumbnailCard } from '../../Content/Card/components/ThumbnailCard';
16
16
  import { Text } from '../../Text';
17
+ import { RFValue } from 'react-native-responsive-fontsize';
17
18
 
18
19
  /**
19
20
  * Configuration for SearchCard skeleton rendering.
@@ -170,13 +171,13 @@ const styles = StyleSheet.create({
170
171
  justifyContent: 'flex-start'
171
172
  },
172
173
  title: {
173
- fontSize: moderateScale(14),
174
- fontWeight: '700',
174
+ fontSize: RFValue(10),
175
+ fontWeight: '600',
175
176
  lineHeight: moderateScale(20),
176
177
  marginTop: verticalScale(2)
177
178
  },
178
179
  description: {
179
- fontSize: moderateScale(12),
180
+ fontSize: RFValue(9),
180
181
  fontWeight: '400',
181
182
  lineHeight: moderateScale(16),
182
183
  marginLeft: scale(1),
@@ -184,7 +185,7 @@ const styles = StyleSheet.create({
184
185
  flexShrink: 1
185
186
  },
186
187
  categoryTextLine: {
187
- fontSize: moderateScale(12),
188
+ fontSize: RFValue(9),
188
189
  textTransform: 'capitalize',
189
190
  fontWeight: '500',
190
191
  marginLeft: scale(1),
@@ -6,7 +6,7 @@
6
6
  import React, { useState, isValidElement, cloneElement, type FC, type ReactElement } from 'react';
7
7
  import { View, ScrollView, StyleSheet, Switch, TouchableOpacity, type ViewStyle, type TextStyle } from 'react-native';
8
8
  import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
9
- import { useTheme } from '../../theme';
9
+ import { useTheme } from '../../theme/hook/useTheme';
10
10
  import DeviceInfo from 'react-native-device-info';
11
11
  import AppHeader from '../Headers/AppHeader';
12
12
  import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
@@ -14,6 +14,7 @@ import UserSection, { type UserInfo, type UserInfoTextStyle } from '../User/comp
14
14
  import { Text } from '../Text';
15
15
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
16
16
  import type { AppTheme } from '../../theme/themes';
17
+ import { RFValue } from 'react-native-responsive-fontsize';
17
18
 
18
19
  // ✅ Types
19
20
  interface ToggleMenuItem {
@@ -206,7 +207,7 @@ export const AppSettings: FC<AppSettingsProps> = ({
206
207
  />
207
208
  ))}
208
209
  <ScrollView
209
- contentContainerStyle={[styles.scrollContent, { paddingBottom: verticalScale(40) + insets.bottom }]}
210
+ contentContainerStyle={[styles.scrollContent, { paddingBottom: verticalScale(60) + insets.bottom }]}
210
211
  showsVerticalScrollIndicator={false}
211
212
  keyboardShouldPersistTaps="handled"
212
213
  >
@@ -241,13 +242,13 @@ export const AppSettings: FC<AppSettingsProps> = ({
241
242
 
242
243
  // ✅ Styles
243
244
  const styles = StyleSheet.create({
244
- container: { flex: 1 } as ViewStyle,
245
+ container: { flex: 1 },
245
246
  scrollContent: {
246
247
  paddingHorizontal: scale(12)
247
248
  },
248
249
  menuList: {
249
250
  marginBottom: verticalScale(16)
250
- } as ViewStyle,
251
+ },
251
252
  menuItem: {
252
253
  flexDirection: 'row',
253
254
  alignItems: 'center',
@@ -257,31 +258,31 @@ const styles = StyleSheet.create({
257
258
  borderRadius: moderateScale(8),
258
259
  marginBottom: verticalScale(10),
259
260
  position: 'relative'
260
- } as ViewStyle,
261
+ },
261
262
  menuIcon: {
262
263
  marginRight: scale(10),
263
264
  alignItems: 'center',
264
265
  justifyContent: 'center'
265
- } as ViewStyle,
266
+ },
266
267
  menuLabel: {
267
268
  flex: 1,
268
- fontSize: moderateScale(14),
269
+ fontSize: RFValue(12),
269
270
  fontWeight: '500'
270
- } as TextStyle,
271
+ },
271
272
  menuItemContent: {
272
273
  flex: 1,
273
274
  flexDirection: 'row',
274
275
  alignItems: 'center'
275
- } as ViewStyle,
276
+ },
276
277
  switchStyle: {
277
278
  transform: [{ scaleX: 1 }, { scaleY: 1 }]
278
- } as ViewStyle,
279
+ },
279
280
  versionContainer: {
280
281
  alignItems: 'center',
281
282
  justifyContent: 'center'
282
- } as ViewStyle,
283
+ },
283
284
  versionText: {
284
- fontSize: moderateScale(12),
285
+ fontSize: RFValue(10),
285
286
  opacity: 0.6
286
- } as TextStyle
287
+ }
287
288
  });
@@ -6,15 +6,16 @@
6
6
  import React, { memo, useCallback, useMemo } from 'react';
7
7
  import { View, StyleSheet, TouchableOpacity, ActivityIndicator } from 'react-native';
8
8
  import Carousel from 'react-native-reanimated-carousel';
9
- import { moderateScale, scale, verticalScale } from 'react-native-size-matters';
9
+ import { scale, verticalScale } from 'react-native-size-matters';
10
10
  import LinearGradient from 'react-native-linear-gradient';
11
11
  import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
12
12
  import Animated, { FadeIn, FadeOut } from 'react-native-reanimated';
13
13
  import { Text } from '../Text';
14
14
  import AppHeader from '../Headers/AppHeader';
15
- import { useTheme } from '../../theme';
15
+ import { useTheme } from '../../theme/hook/useTheme';
16
16
  import Display from '../../utils/Display';
17
17
  import type { AppTheme } from '../../theme/themes';
18
+ import { RFValue } from 'react-native-responsive-fontsize';
18
19
 
19
20
  export type Plan = {
20
21
  id: string;
@@ -215,7 +216,7 @@ const styles = StyleSheet.create({
215
216
  container: { flex: 1 },
216
217
  content: { flex: 1, paddingTop: verticalScale(16) },
217
218
  heading: {
218
- fontSize: moderateScale(22),
219
+ fontSize: RFValue(21),
219
220
  fontWeight: '700',
220
221
  textAlign: 'center',
221
222
  marginBottom: verticalScale(12),
@@ -223,13 +224,13 @@ const styles = StyleSheet.create({
223
224
  },
224
225
  subText: {
225
226
  textAlign: 'center',
226
- fontSize: moderateScale(13),
227
+ fontSize: RFValue(12),
227
228
  fontWeight: '400',
228
229
  marginBottom: verticalScale(12),
229
230
  marginHorizontal: scale(16)
230
231
  },
231
232
  errorMessage: {
232
- fontSize: moderateScale(14),
233
+ fontSize: RFValue(13),
233
234
  fontWeight: '600',
234
235
  textAlign: 'center',
235
236
  marginVertical: verticalScale(12)
@@ -253,22 +254,22 @@ const styles = StyleSheet.create({
253
254
  elevation: 5
254
255
  },
255
256
  cardTitle: {
256
- fontSize: moderateScale(18),
257
+ fontSize: RFValue(17),
257
258
  fontWeight: '700',
258
259
  marginBottom: verticalScale(8)
259
260
  },
260
261
  price: {
261
- fontSize: moderateScale(44),
262
+ fontSize: RFValue(43),
262
263
  fontWeight: 'bold',
263
264
  marginBottom: verticalScale(4)
264
265
  },
265
266
  per: {
266
- fontSize: moderateScale(14),
267
+ fontSize: RFValue(13),
267
268
  textTransform: 'capitalize',
268
269
  marginBottom: verticalScale(6)
269
270
  },
270
271
  platforms: {
271
- fontSize: moderateScale(14),
272
+ fontSize: RFValue(13),
272
273
  textTransform: 'capitalize',
273
274
  textAlign: 'center',
274
275
  marginBottom: verticalScale(8)
@@ -280,7 +281,7 @@ const styles = StyleSheet.create({
280
281
  paddingHorizontal: scale(16)
281
282
  },
282
283
  benefit: {
283
- fontSize: moderateScale(13)
284
+ fontSize: RFValue(12)
284
285
  },
285
286
  subscribeButton: {
286
287
  paddingVertical: verticalScale(10),
@@ -290,18 +291,18 @@ const styles = StyleSheet.create({
290
291
  marginTop: verticalScale(15)
291
292
  },
292
293
  subscribeText: {
293
- fontSize: moderateScale(15),
294
+ fontSize: RFValue(14),
294
295
  fontWeight: '700'
295
296
  },
296
297
  info: {
297
- fontSize: moderateScale(12),
298
+ fontSize: RFValue(11),
298
299
  textAlign: 'center',
299
300
  fontWeight: '400',
300
301
  marginVertical: verticalScale(8),
301
302
  marginHorizontal: scale(16)
302
303
  },
303
304
  cancelText: {
304
- fontSize: moderateScale(12),
305
+ fontSize: RFValue(11),
305
306
  textAlign: 'center',
306
307
  fontWeight: '400',
307
308
  marginBottom: verticalScale(16),
@@ -314,7 +315,7 @@ const styles = StyleSheet.create({
314
315
  paddingHorizontal: scale(16)
315
316
  },
316
317
  extraContentTextText: {
317
- fontSize: moderateScale(11),
318
+ fontSize: RFValue(10),
318
319
  marginHorizontal: scale(16),
319
320
  fontWeight: '400',
320
321
  textAlign: 'center'
@@ -329,7 +330,7 @@ const styles = StyleSheet.create({
329
330
  zIndex: 10
330
331
  },
331
332
  popularText: {
332
- fontSize: moderateScale(13),
333
+ fontSize: RFValue(12),
333
334
  textTransform: 'uppercase',
334
335
  fontWeight: '700'
335
336
  }
@@ -7,9 +7,10 @@ import React, { useState } from 'react';
7
7
  import { View, Pressable, Platform, StyleSheet } from 'react-native';
8
8
  import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
9
9
  import { scale } from 'react-native-size-matters';
10
- import { useTheme } from '../../theme/';
10
+ import { useTheme } from '../../theme/hook/useTheme';
11
11
  import { Text } from '../Text';
12
12
  import type { AppTheme, ITheme } from '../../theme/themes';
13
+ import { RFValue } from 'react-native-responsive-fontsize';
13
14
 
14
15
  type ITab = {
15
16
  key: string;
@@ -117,10 +118,12 @@ const TabBarOne = ({ tabs, theme, onTabPress, renderIcon }: TabBarOneProps) => {
117
118
  screenOptions={{
118
119
  headerShown: false,
119
120
  tabBarShowLabel: false,
121
+ tabBarHideOnKeyboard: true,
122
+
120
123
  tabBarStyle: {
121
124
  position: 'absolute',
122
125
  bottom: 0,
123
- height: Platform.OS === 'ios' ? scale(95) : scale(80),
126
+ height: scale(80),
124
127
  backgroundColor: appliedTheme.colors.background + '80',
125
128
  borderTopColor: appliedTheme.colors.border,
126
129
  borderTopWidth: 0.5,
@@ -193,7 +196,7 @@ const styles = StyleSheet.create({
193
196
  },
194
197
  label: {
195
198
  marginTop: scale(4),
196
- fontSize: scale(11),
199
+ fontSize: RFValue(10),
197
200
  textAlign: 'center'
198
201
  }
199
202
  });