@zezosoft/zezo-ott-react-native-ui-kit 1.1.2 → 1.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (667) hide show
  1. package/lib/module/components/Auth/AuthProvider/AuthProvider.js +5 -2
  2. package/lib/module/components/Auth/AuthProvider/AuthProvider.js.map +1 -1
  3. package/lib/module/components/Auth/One/ForgotPassword/ForgotPassword.js +232 -0
  4. package/lib/module/components/Auth/One/ForgotPassword/ForgotPassword.js.map +1 -0
  5. package/lib/module/components/Auth/One/Login/LoginWithEmail.js +324 -0
  6. package/lib/module/components/Auth/One/Login/LoginWithEmail.js.map +1 -0
  7. package/lib/module/components/Auth/{Login → One/Login}/LoginWithPhone.js +13 -11
  8. package/lib/module/components/Auth/One/Login/LoginWithPhone.js.map +1 -0
  9. package/lib/module/components/Auth/One/OTP/OTP.js +301 -0
  10. package/lib/module/components/Auth/One/OTP/OTP.js.map +1 -0
  11. package/lib/module/components/Auth/One/QrLogin/QrLogin.js +479 -0
  12. package/lib/module/components/Auth/One/QrLogin/QrLogin.js.map +1 -0
  13. package/lib/module/components/Auth/One/QrLogin/components/QrViewArea.js +295 -0
  14. package/lib/module/components/Auth/One/QrLogin/components/QrViewArea.js.map +1 -0
  15. package/lib/module/components/Auth/One/SignUp/SignUp.js +362 -0
  16. package/lib/module/components/Auth/One/SignUp/SignUp.js.map +1 -0
  17. package/lib/module/components/Auth/{SplashScreen → One/SplashScreen}/SplashScreen.js +8 -5
  18. package/lib/module/components/Auth/One/SplashScreen/SplashScreen.js.map +1 -0
  19. package/lib/module/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.js +80 -0
  20. package/lib/module/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.js.map +1 -0
  21. package/lib/module/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashLottie/SplashLottie.js +1 -1
  22. package/lib/module/components/Auth/One/SplashScreen/components/SplashLottie/SplashLottie.js.map +1 -0
  23. package/lib/module/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashVideo/SplashVideo.js +42 -21
  24. package/lib/module/components/Auth/One/SplashScreen/components/SplashVideo/SplashVideo.js.map +1 -0
  25. package/lib/module/components/Auth/One/index.js +25 -0
  26. package/lib/module/components/Auth/One/index.js.map +1 -0
  27. package/lib/module/components/Auth/Two/AuthHeader/AuthHeader.js +93 -0
  28. package/lib/module/components/Auth/Two/AuthHeader/AuthHeader.js.map +1 -0
  29. package/lib/module/components/Auth/{ForgotPassword → Two/ForgotPassword}/ForgotPassword.js +55 -28
  30. package/lib/module/components/Auth/Two/ForgotPassword/ForgotPassword.js.map +1 -0
  31. package/lib/module/components/Auth/Two/Login/AuthLoginShell.js +138 -0
  32. package/lib/module/components/Auth/Two/Login/AuthLoginShell.js.map +1 -0
  33. package/lib/module/components/Auth/Two/Login/LoginWithEmail.js +226 -0
  34. package/lib/module/components/Auth/Two/Login/LoginWithEmail.js.map +1 -0
  35. package/lib/module/components/Auth/Two/Login/LoginWithPhone.js +143 -0
  36. package/lib/module/components/Auth/Two/Login/LoginWithPhone.js.map +1 -0
  37. package/lib/module/components/Auth/{OTP → Two/OTP}/OTP.js +93 -63
  38. package/lib/module/components/Auth/Two/OTP/OTP.js.map +1 -0
  39. package/lib/module/components/Auth/Two/QrLogin/QrLogin.js +479 -0
  40. package/lib/module/components/Auth/Two/QrLogin/QrLogin.js.map +1 -0
  41. package/lib/module/components/Auth/Two/QrLogin/components/QrViewArea.js +295 -0
  42. package/lib/module/components/Auth/Two/QrLogin/components/QrViewArea.js.map +1 -0
  43. package/lib/module/components/Auth/Two/SignUp/SignUp.js +379 -0
  44. package/lib/module/components/Auth/Two/SignUp/SignUp.js.map +1 -0
  45. package/lib/module/components/Auth/Two/SplashScreen/SplashScreen.js +141 -0
  46. package/lib/module/components/Auth/Two/SplashScreen/SplashScreen.js.map +1 -0
  47. package/lib/module/components/Auth/{SplashScreen → Two/SplashScreen}/components/SplashImage/SplashImage.js +1 -1
  48. package/lib/module/components/Auth/Two/SplashScreen/components/SplashImage/SplashImage.js.map +1 -0
  49. package/lib/module/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.js +63 -0
  50. package/lib/module/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.js.map +1 -0
  51. package/lib/module/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.js +157 -0
  52. package/lib/module/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.js.map +1 -0
  53. package/lib/module/components/Auth/Two/index.js +29 -0
  54. package/lib/module/components/Auth/Two/index.js.map +1 -0
  55. package/lib/module/components/Auth/index.js +7 -22
  56. package/lib/module/components/Auth/index.js.map +1 -1
  57. package/lib/module/components/BackgroundLayout/BackgroundLayout.js +7 -3
  58. package/lib/module/components/BackgroundLayout/BackgroundLayout.js.map +1 -1
  59. package/lib/module/components/BackgroundLayout/BackgroundLayoutOne.js +52 -0
  60. package/lib/module/components/BackgroundLayout/BackgroundLayoutOne.js.map +1 -0
  61. package/lib/module/components/BottomSheet/BottomSheet.js +7 -3
  62. package/lib/module/components/BottomSheet/BottomSheet.js.map +1 -1
  63. package/lib/module/components/BottomSheet/BottomSheetOne.js +170 -0
  64. package/lib/module/components/BottomSheet/BottomSheetOne.js.map +1 -0
  65. package/lib/module/components/BottomSheet/index.js +1 -0
  66. package/lib/module/components/BottomSheet/index.js.map +1 -1
  67. package/lib/module/components/Button/PrimaryBtn.js +16 -6
  68. package/lib/module/components/Button/PrimaryBtn.js.map +1 -1
  69. package/lib/module/components/Content/Card/Category/Category.js +88 -13
  70. package/lib/module/components/Content/Card/Category/Category.js.map +1 -1
  71. package/lib/module/components/Content/Card/Category/CategroyTwo.js +287 -0
  72. package/lib/module/components/Content/Card/Category/CategroyTwo.js.map +1 -0
  73. package/lib/module/components/Content/Card/NowWatching/NowWatching.js +237 -108
  74. package/lib/module/components/Content/Card/NowWatching/NowWatching.js.map +1 -1
  75. package/lib/module/components/Content/Card/Sliders/Styles/One.js +191 -132
  76. package/lib/module/components/Content/Card/Sliders/Styles/One.js.map +1 -1
  77. package/lib/module/components/Content/Card/Sliders/Styles/Three.js +714 -0
  78. package/lib/module/components/Content/Card/Sliders/Styles/Three.js.map +1 -0
  79. package/lib/module/components/Content/Card/Sliders/Styles/Two.js +139 -92
  80. package/lib/module/components/Content/Card/Sliders/Styles/Two.js.map +1 -1
  81. package/lib/module/components/Content/Card/Sliders/index.js +3 -1
  82. package/lib/module/components/Content/Card/Sliders/index.js.map +1 -1
  83. package/lib/module/components/Content/Card/Styles/Five.js +132 -48
  84. package/lib/module/components/Content/Card/Styles/Five.js.map +1 -1
  85. package/lib/module/components/Content/Card/Styles/Four.js +127 -59
  86. package/lib/module/components/Content/Card/Styles/Four.js.map +1 -1
  87. package/lib/module/components/Content/Card/Styles/One.js +126 -50
  88. package/lib/module/components/Content/Card/Styles/One.js.map +1 -1
  89. package/lib/module/components/Content/Card/Styles/RotateInOut.js +139 -53
  90. package/lib/module/components/Content/Card/Styles/RotateInOut.js.map +1 -1
  91. package/lib/module/components/Content/Card/Styles/Six.js +207 -115
  92. package/lib/module/components/Content/Card/Styles/Six.js.map +1 -1
  93. package/lib/module/components/Content/Card/Styles/Three.js +119 -94
  94. package/lib/module/components/Content/Card/Styles/Three.js.map +1 -1
  95. package/lib/module/components/Content/Card/Styles/TopTen.js +187 -171
  96. package/lib/module/components/Content/Card/Styles/TopTen.js.map +1 -1
  97. package/lib/module/components/Content/Card/Styles/Two.js +145 -64
  98. package/lib/module/components/Content/Card/Styles/Two.js.map +1 -1
  99. package/lib/module/components/Content/Card/components/AdsPoster.js +162 -0
  100. package/lib/module/components/Content/Card/components/AdsPoster.js.map +1 -0
  101. package/lib/module/components/Content/Card/components/CardPoster.js +217 -135
  102. package/lib/module/components/Content/Card/components/CardPoster.js.map +1 -1
  103. package/lib/module/components/Content/Card/components/NavigateToMore.js +26 -2
  104. package/lib/module/components/Content/Card/components/NavigateToMore.js.map +1 -1
  105. package/lib/module/components/Content/Card/components/index.js +4 -0
  106. package/lib/module/components/Content/Card/components/index.js.map +1 -0
  107. package/lib/module/components/Content/Content.js +90 -33
  108. package/lib/module/components/Content/Content.js.map +1 -1
  109. package/lib/module/components/Content/Sections.js +41 -11
  110. package/lib/module/components/Content/Sections.js.map +1 -1
  111. package/lib/module/components/Content/types.js +4 -0
  112. package/lib/module/components/Content/types.js.map +1 -0
  113. package/lib/module/components/ContentView/MoreContentList.js +1 -0
  114. package/lib/module/components/ContentView/MoreContentList.js.map +1 -1
  115. package/lib/module/components/ContentView/{ContentView.js → One/ContentViewOne.js} +6 -5
  116. package/lib/module/components/ContentView/One/ContentViewOne.js.map +1 -0
  117. package/lib/module/components/ContentView/{components → One/components}/AboutSection.js +2 -2
  118. package/lib/module/components/ContentView/One/components/AboutSection.js.map +1 -0
  119. package/lib/module/components/ContentView/{components → One/components}/CastCard.js +2 -2
  120. package/lib/module/components/ContentView/One/components/CastCard.js.map +1 -0
  121. package/lib/module/components/ContentView/{components → One/components}/EpisodeCard.js +5 -6
  122. package/lib/module/components/ContentView/One/components/EpisodeCard.js.map +1 -0
  123. package/lib/module/components/ContentView/{components → One/components}/GenreTags.js +2 -2
  124. package/lib/module/components/ContentView/One/components/GenreTags.js.map +1 -0
  125. package/lib/module/components/ContentView/{components → One/components}/HeroBanner.js +45 -44
  126. package/lib/module/components/ContentView/One/components/HeroBanner.js.map +1 -0
  127. package/lib/module/components/ContentView/{components → One/components}/MiniInfo.js +50 -5
  128. package/lib/module/components/ContentView/One/components/MiniInfo.js.map +1 -0
  129. package/lib/module/components/ContentView/{components → One/components}/PlayButton.js +1 -1
  130. package/lib/module/components/ContentView/One/components/PlayButton.js.map +1 -0
  131. package/lib/module/components/ContentView/{components → One/components}/Title.js +1 -1
  132. package/lib/module/components/ContentView/One/components/Title.js.map +1 -0
  133. package/lib/module/components/ContentView/{components → One/components}/TrailerButton.js +2 -2
  134. package/lib/module/components/ContentView/One/components/TrailerButton.js.map +1 -0
  135. package/lib/module/components/ContentView/Two/ContentViewTwo.js +220 -0
  136. package/lib/module/components/ContentView/Two/ContentViewTwo.js.map +1 -0
  137. package/lib/module/components/ContentView/Two/components/AboutSection.js +150 -0
  138. package/lib/module/components/ContentView/Two/components/AboutSection.js.map +1 -0
  139. package/lib/module/components/ContentView/Two/components/Details.js +156 -0
  140. package/lib/module/components/ContentView/Two/components/Details.js.map +1 -0
  141. package/lib/module/components/ContentView/Two/components/EpisodeCard.js +425 -0
  142. package/lib/module/components/ContentView/Two/components/EpisodeCard.js.map +1 -0
  143. package/lib/module/components/ContentView/Two/components/GenreTags.js +86 -0
  144. package/lib/module/components/ContentView/Two/components/GenreTags.js.map +1 -0
  145. package/lib/module/components/ContentView/Two/components/HeroBanner.js +339 -0
  146. package/lib/module/components/ContentView/Two/components/HeroBanner.js.map +1 -0
  147. package/lib/module/components/ContentView/Two/components/LikeShareActions.js +88 -0
  148. package/lib/module/components/ContentView/Two/components/LikeShareActions.js.map +1 -0
  149. package/lib/module/components/ContentView/Two/components/MoreLikeThisContentList .js +235 -0
  150. package/lib/module/components/ContentView/Two/components/MoreLikeThisContentList .js.map +1 -0
  151. package/lib/module/components/ContentView/Two/components/PlayOrTrailer.js +120 -0
  152. package/lib/module/components/ContentView/Two/components/PlayOrTrailer.js.map +1 -0
  153. package/lib/module/components/ContentView/Two/components/SectionTabs.js +112 -0
  154. package/lib/module/components/ContentView/Two/components/SectionTabs.js.map +1 -0
  155. package/lib/module/components/ContentView/Two/components/Title.js +146 -0
  156. package/lib/module/components/ContentView/Two/components/Title.js.map +1 -0
  157. package/lib/module/components/ContentView/Two/components/index.js +18 -0
  158. package/lib/module/components/ContentView/Two/components/index.js.map +1 -0
  159. package/lib/module/components/ContentView/index.js +6 -1
  160. package/lib/module/components/ContentView/index.js.map +1 -1
  161. package/lib/module/components/Headers/Four.js +68 -0
  162. package/lib/module/components/Headers/Four.js.map +1 -0
  163. package/lib/module/components/Headers/Three.js +75 -24
  164. package/lib/module/components/Headers/Three.js.map +1 -1
  165. package/lib/module/components/Headers/index.js +3 -1
  166. package/lib/module/components/Headers/index.js.map +1 -1
  167. package/lib/module/components/Input/Input.js +5 -1
  168. package/lib/module/components/Input/Input.js.map +1 -1
  169. package/lib/module/components/Input/InputThree.js +157 -0
  170. package/lib/module/components/Input/InputThree.js.map +1 -0
  171. package/lib/module/components/Input/PhoneNumberInput.js.map +1 -1
  172. package/lib/module/components/Input/PhoneNumberInputTwo.js +316 -0
  173. package/lib/module/components/Input/PhoneNumberInputTwo.js.map +1 -0
  174. package/lib/module/components/Loader/Loader.js +14 -6
  175. package/lib/module/components/Loader/Loader.js.map +1 -1
  176. package/lib/module/components/Logo/Logo.js +42 -17
  177. package/lib/module/components/Logo/Logo.js.map +1 -1
  178. package/lib/module/components/NewRelease/NewReleaseSheet.js +227 -0
  179. package/lib/module/components/NewRelease/NewReleaseSheet.js.map +1 -0
  180. package/lib/module/components/NewRelease/index.js +4 -0
  181. package/lib/module/components/NewRelease/index.js.map +1 -0
  182. package/lib/module/components/Reels/ReelsSeries/MediaControls/BottomControls.js +92 -17
  183. package/lib/module/components/Reels/ReelsSeries/MediaControls/BottomControls.js.map +1 -1
  184. package/lib/module/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.js +65 -2
  185. package/lib/module/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.js.map +1 -1
  186. package/lib/module/components/Reels/ReelsSeries/MediaControls/RightControls.js +2 -1
  187. package/lib/module/components/Reels/ReelsSeries/MediaControls/RightControls.js.map +1 -1
  188. package/lib/module/components/Reels/ReelsSeries/Model/SettingModal.js +4 -2
  189. package/lib/module/components/Reels/ReelsSeries/Model/SettingModal.js.map +1 -1
  190. package/lib/module/components/Reels/ReelsSeries/ReelsSeries.js +80 -46
  191. package/lib/module/components/Reels/ReelsSeries/ReelsSeries.js.map +1 -1
  192. package/lib/module/components/Reels/ReelsSeries/ReelsSeriesItem.js +78 -29
  193. package/lib/module/components/Reels/ReelsSeries/ReelsSeriesItem.js.map +1 -1
  194. package/lib/module/components/Reels/ReelsSeries/components/VideoControls/QualityControl.js +21 -34
  195. package/lib/module/components/Reels/ReelsSeries/components/VideoControls/QualityControl.js.map +1 -1
  196. package/lib/module/components/Reels/ReelsSeries/useReelsWatchProgress.js +58 -0
  197. package/lib/module/components/Reels/ReelsSeries/useReelsWatchProgress.js.map +1 -0
  198. package/lib/module/components/Reels/ReelsSeries/utils/quality.js +44 -0
  199. package/lib/module/components/Reels/ReelsSeries/utils/quality.js.map +1 -0
  200. package/lib/module/components/Reels/index.js +1 -0
  201. package/lib/module/components/Reels/index.js.map +1 -1
  202. package/lib/module/components/Search/One.js +7 -4
  203. package/lib/module/components/Search/One.js.map +1 -1
  204. package/lib/module/components/Search/components/SearchCard.js +59 -7
  205. package/lib/module/components/Search/components/SearchCard.js.map +1 -1
  206. package/lib/module/components/User/PurchaseHistory/PurchaseHistory.js +2 -1
  207. package/lib/module/components/User/PurchaseHistory/PurchaseHistory.js.map +1 -1
  208. package/lib/module/components/User/WatchHistory/WatchHistory.js +1 -0
  209. package/lib/module/components/User/WatchHistory/WatchHistory.js.map +1 -1
  210. package/lib/module/components/User/WatchLater/WatchLater.js +1 -0
  211. package/lib/module/components/User/WatchLater/WatchLater.js.map +1 -1
  212. package/lib/module/components/common/AppStatusBar.js +2 -1
  213. package/lib/module/components/common/AppStatusBar.js.map +1 -1
  214. package/lib/module/components/index.js +1 -0
  215. package/lib/module/components/index.js.map +1 -1
  216. package/lib/module/constants/dummySections.js +47 -5
  217. package/lib/module/constants/dummySections.js.map +1 -1
  218. package/lib/module/hooks/Images/index.js +5 -0
  219. package/lib/module/hooks/Images/index.js.map +1 -0
  220. package/lib/module/hooks/Images/useImageLoader.js +168 -0
  221. package/lib/module/hooks/Images/useImageLoader.js.map +1 -0
  222. package/lib/module/hooks/Images/useImageValidation.js +36 -0
  223. package/lib/module/hooks/Images/useImageValidation.js.map +1 -0
  224. package/lib/module/hooks/index.js +3 -0
  225. package/lib/module/hooks/index.js.map +1 -1
  226. package/lib/module/hooks/useAdTracking.js +270 -0
  227. package/lib/module/hooks/useAdTracking.js.map +1 -0
  228. package/lib/module/hooks/useCards.js +164 -0
  229. package/lib/module/hooks/useCards.js.map +1 -0
  230. package/lib/module/hooks/usePaginatedSection.js +11 -6
  231. package/lib/module/hooks/usePaginatedSection.js.map +1 -1
  232. package/lib/module/hooks/useSplashCache.js +78 -60
  233. package/lib/module/hooks/useSplashCache.js.map +1 -1
  234. package/lib/module/theme/ThemeProvider.js +14 -2
  235. package/lib/module/theme/ThemeProvider.js.map +1 -1
  236. package/lib/module/theme/hook/index.js +0 -1
  237. package/lib/module/theme/hook/index.js.map +1 -1
  238. package/lib/module/theme/hook/useInternalTheme.js +21 -7
  239. package/lib/module/theme/hook/useInternalTheme.js.map +1 -1
  240. package/lib/module/theme/themes.js +2 -0
  241. package/lib/module/theme/themes.js.map +1 -1
  242. package/lib/module/theme/utils/validateColor.js +84 -0
  243. package/lib/module/theme/utils/validateColor.js.map +1 -0
  244. package/lib/module/utils/colorUtils.js +68 -0
  245. package/lib/module/utils/colorUtils.js.map +1 -0
  246. package/lib/typescript/src/components/Auth/{ForgotPassword → One/ForgotPassword}/ForgotPassword.d.ts +1 -1
  247. package/lib/typescript/src/components/Auth/One/ForgotPassword/ForgotPassword.d.ts.map +1 -0
  248. package/lib/typescript/src/components/Auth/{Login → One/Login}/LoginWithEmail.d.ts +1 -1
  249. package/lib/typescript/src/components/Auth/One/Login/LoginWithEmail.d.ts.map +1 -0
  250. package/lib/typescript/src/components/Auth/{Login → One/Login}/LoginWithPhone.d.ts +1 -1
  251. package/lib/typescript/src/components/Auth/One/Login/LoginWithPhone.d.ts.map +1 -0
  252. package/lib/typescript/src/components/Auth/{OTP → One/OTP}/OTP.d.ts +1 -1
  253. package/lib/typescript/src/components/Auth/One/OTP/OTP.d.ts.map +1 -0
  254. package/lib/typescript/src/components/Auth/{QrLogin → One/QrLogin}/QrLogin.d.ts +3 -1
  255. package/lib/typescript/src/components/Auth/One/QrLogin/QrLogin.d.ts.map +1 -0
  256. package/lib/typescript/src/components/Auth/{QrLogin → One/QrLogin}/components/QrViewArea.d.ts +1 -1
  257. package/lib/typescript/src/components/Auth/One/QrLogin/components/QrViewArea.d.ts.map +1 -0
  258. package/lib/typescript/src/components/Auth/{SignUp → One/SignUp}/SignUp.d.ts +1 -1
  259. package/lib/typescript/src/components/Auth/One/SignUp/SignUp.d.ts.map +1 -0
  260. package/lib/typescript/src/components/Auth/{SplashScreen → One/SplashScreen}/SplashScreen.d.ts +1 -1
  261. package/lib/typescript/src/components/Auth/One/SplashScreen/SplashScreen.d.ts.map +1 -0
  262. package/lib/typescript/src/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.d.ts +14 -0
  263. package/lib/typescript/src/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.d.ts.map +1 -0
  264. package/lib/typescript/src/components/Auth/One/SplashScreen/components/SplashLottie/SplashLottie.d.ts.map +1 -0
  265. package/lib/typescript/src/components/Auth/One/SplashScreen/components/SplashVideo/SplashVideo.d.ts.map +1 -0
  266. package/lib/typescript/src/components/Auth/One/index.d.ts +234 -0
  267. package/lib/typescript/src/components/Auth/One/index.d.ts.map +1 -0
  268. package/lib/typescript/src/components/Auth/Two/AuthHeader/AuthHeader.d.ts +16 -0
  269. package/lib/typescript/src/components/Auth/Two/AuthHeader/AuthHeader.d.ts.map +1 -0
  270. package/lib/typescript/src/components/Auth/Two/ForgotPassword/ForgotPassword.d.ts +53 -0
  271. package/lib/typescript/src/components/Auth/Two/ForgotPassword/ForgotPassword.d.ts.map +1 -0
  272. package/lib/typescript/src/components/Auth/Two/Login/AuthLoginShell.d.ts +17 -0
  273. package/lib/typescript/src/components/Auth/Two/Login/AuthLoginShell.d.ts.map +1 -0
  274. package/lib/typescript/src/components/Auth/Two/Login/LoginWithEmail.d.ts +52 -0
  275. package/lib/typescript/src/components/Auth/Two/Login/LoginWithEmail.d.ts.map +1 -0
  276. package/lib/typescript/src/components/Auth/Two/Login/LoginWithPhone.d.ts +37 -0
  277. package/lib/typescript/src/components/Auth/Two/Login/LoginWithPhone.d.ts.map +1 -0
  278. package/lib/typescript/src/components/Auth/Two/OTP/OTP.d.ts +63 -0
  279. package/lib/typescript/src/components/Auth/Two/OTP/OTP.d.ts.map +1 -0
  280. package/lib/typescript/src/components/Auth/Two/QrLogin/QrLogin.d.ts +19 -0
  281. package/lib/typescript/src/components/Auth/Two/QrLogin/QrLogin.d.ts.map +1 -0
  282. package/lib/typescript/src/components/Auth/Two/QrLogin/components/QrViewArea.d.ts +14 -0
  283. package/lib/typescript/src/components/Auth/Two/QrLogin/components/QrViewArea.d.ts.map +1 -0
  284. package/lib/typescript/src/components/Auth/Two/SignUp/SignUp.d.ts +67 -0
  285. package/lib/typescript/src/components/Auth/Two/SignUp/SignUp.d.ts.map +1 -0
  286. package/lib/typescript/src/components/Auth/Two/SplashScreen/SplashScreen.d.ts +35 -0
  287. package/lib/typescript/src/components/Auth/Two/SplashScreen/SplashScreen.d.ts.map +1 -0
  288. package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashImage/SplashImage.d.ts.map +1 -0
  289. package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.d.ts +17 -0
  290. package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.d.ts.map +1 -0
  291. package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.d.ts +20 -0
  292. package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.d.ts.map +1 -0
  293. package/lib/typescript/src/components/Auth/Two/index.d.ts +220 -0
  294. package/lib/typescript/src/components/Auth/Two/index.d.ts.map +1 -0
  295. package/lib/typescript/src/components/Auth/index.d.ts +447 -232
  296. package/lib/typescript/src/components/Auth/index.d.ts.map +1 -1
  297. package/lib/typescript/src/components/BackgroundLayout/BackgroundLayout.d.ts.map +1 -1
  298. package/lib/typescript/src/components/BackgroundLayout/BackgroundLayoutOne.d.ts +7 -0
  299. package/lib/typescript/src/components/BackgroundLayout/BackgroundLayoutOne.d.ts.map +1 -0
  300. package/lib/typescript/src/components/BottomSheet/BottomSheet.d.ts.map +1 -1
  301. package/lib/typescript/src/components/BottomSheet/BottomSheetOne.d.ts +19 -0
  302. package/lib/typescript/src/components/BottomSheet/BottomSheetOne.d.ts.map +1 -0
  303. package/lib/typescript/src/components/BottomSheet/index.d.ts +2 -0
  304. package/lib/typescript/src/components/BottomSheet/index.d.ts.map +1 -1
  305. package/lib/typescript/src/components/Button/PrimaryBtn.d.ts +1 -0
  306. package/lib/typescript/src/components/Button/PrimaryBtn.d.ts.map +1 -1
  307. package/lib/typescript/src/components/Button/index.d.ts +1 -0
  308. package/lib/typescript/src/components/Button/index.d.ts.map +1 -1
  309. package/lib/typescript/src/components/Content/Card/Category/Category.d.ts.map +1 -1
  310. package/lib/typescript/src/components/Content/Card/Category/CategroyTwo.d.ts +26 -0
  311. package/lib/typescript/src/components/Content/Card/Category/CategroyTwo.d.ts.map +1 -0
  312. package/lib/typescript/src/components/Content/Card/NowWatching/NowWatching.d.ts.map +1 -1
  313. package/lib/typescript/src/components/Content/Card/Sliders/Styles/One.d.ts.map +1 -1
  314. package/lib/typescript/src/components/Content/Card/Sliders/Styles/Three.d.ts +19 -0
  315. package/lib/typescript/src/components/Content/Card/Sliders/Styles/Three.d.ts.map +1 -0
  316. package/lib/typescript/src/components/Content/Card/Sliders/Styles/Two.d.ts.map +1 -1
  317. package/lib/typescript/src/components/Content/Card/Sliders/index.d.ts +11 -0
  318. package/lib/typescript/src/components/Content/Card/Sliders/index.d.ts.map +1 -1
  319. package/lib/typescript/src/components/Content/Card/Styles/Five.d.ts +13 -1
  320. package/lib/typescript/src/components/Content/Card/Styles/Five.d.ts.map +1 -1
  321. package/lib/typescript/src/components/Content/Card/Styles/Four.d.ts +13 -1
  322. package/lib/typescript/src/components/Content/Card/Styles/Four.d.ts.map +1 -1
  323. package/lib/typescript/src/components/Content/Card/Styles/One.d.ts +15 -3
  324. package/lib/typescript/src/components/Content/Card/Styles/One.d.ts.map +1 -1
  325. package/lib/typescript/src/components/Content/Card/Styles/RotateInOut.d.ts +13 -1
  326. package/lib/typescript/src/components/Content/Card/Styles/RotateInOut.d.ts.map +1 -1
  327. package/lib/typescript/src/components/Content/Card/Styles/Six.d.ts +1 -0
  328. package/lib/typescript/src/components/Content/Card/Styles/Six.d.ts.map +1 -1
  329. package/lib/typescript/src/components/Content/Card/Styles/Three.d.ts +13 -5
  330. package/lib/typescript/src/components/Content/Card/Styles/Three.d.ts.map +1 -1
  331. package/lib/typescript/src/components/Content/Card/Styles/TopTen.d.ts +1 -0
  332. package/lib/typescript/src/components/Content/Card/Styles/TopTen.d.ts.map +1 -1
  333. package/lib/typescript/src/components/Content/Card/Styles/Two.d.ts +13 -1
  334. package/lib/typescript/src/components/Content/Card/Styles/Two.d.ts.map +1 -1
  335. package/lib/typescript/src/components/Content/Card/components/AdsPoster.d.ts +26 -0
  336. package/lib/typescript/src/components/Content/Card/components/AdsPoster.d.ts.map +1 -0
  337. package/lib/typescript/src/components/Content/Card/components/CardPoster.d.ts +4 -1
  338. package/lib/typescript/src/components/Content/Card/components/CardPoster.d.ts.map +1 -1
  339. package/lib/typescript/src/components/Content/Card/components/NavigateToMore.d.ts +3 -0
  340. package/lib/typescript/src/components/Content/Card/components/NavigateToMore.d.ts.map +1 -1
  341. package/lib/typescript/src/components/Content/Card/components/index.d.ts +2 -0
  342. package/lib/typescript/src/components/Content/Card/components/index.d.ts.map +1 -0
  343. package/lib/typescript/src/components/Content/Card/index.d.ts +76 -6
  344. package/lib/typescript/src/components/Content/Card/index.d.ts.map +1 -1
  345. package/lib/typescript/src/components/Content/Content.d.ts +2 -51
  346. package/lib/typescript/src/components/Content/Content.d.ts.map +1 -1
  347. package/lib/typescript/src/components/Content/Sections.d.ts +2 -39
  348. package/lib/typescript/src/components/Content/Sections.d.ts.map +1 -1
  349. package/lib/typescript/src/components/Content/types.d.ts +149 -0
  350. package/lib/typescript/src/components/Content/types.d.ts.map +1 -0
  351. package/lib/typescript/src/components/ContentView/MoreContentList.d.ts.map +1 -1
  352. package/lib/typescript/src/components/ContentView/One/ContentViewOne.d.ts +15 -0
  353. package/lib/typescript/src/components/ContentView/One/ContentViewOne.d.ts.map +1 -0
  354. package/lib/typescript/src/components/ContentView/{components → One/components}/AboutSection.d.ts +1 -1
  355. package/lib/typescript/src/components/ContentView/One/components/AboutSection.d.ts.map +1 -0
  356. package/lib/typescript/src/components/ContentView/{components → One/components}/CastCard.d.ts +1 -1
  357. package/lib/typescript/src/components/ContentView/One/components/CastCard.d.ts.map +1 -0
  358. package/lib/typescript/src/components/ContentView/{components → One/components}/EpisodeCard.d.ts +1 -1
  359. package/lib/typescript/src/components/ContentView/One/components/EpisodeCard.d.ts.map +1 -0
  360. package/lib/typescript/src/components/ContentView/{components → One/components}/GenreTags.d.ts +1 -1
  361. package/lib/typescript/src/components/ContentView/One/components/GenreTags.d.ts.map +1 -0
  362. package/lib/typescript/src/components/ContentView/{components → One/components}/HeroBanner.d.ts +1 -1
  363. package/lib/typescript/src/components/ContentView/One/components/HeroBanner.d.ts.map +1 -0
  364. package/lib/typescript/src/components/ContentView/{components → One/components}/MiniInfo.d.ts +1 -1
  365. package/lib/typescript/src/components/ContentView/One/components/MiniInfo.d.ts.map +1 -0
  366. package/lib/typescript/src/components/ContentView/One/components/PlayButton.d.ts.map +1 -0
  367. package/lib/typescript/src/components/ContentView/{components → One/components}/Title.d.ts +1 -1
  368. package/lib/typescript/src/components/ContentView/One/components/Title.d.ts.map +1 -0
  369. package/lib/typescript/src/components/ContentView/One/components/TrailerButton.d.ts.map +1 -0
  370. package/lib/typescript/src/components/ContentView/Two/ContentViewTwo.d.ts +18 -0
  371. package/lib/typescript/src/components/ContentView/Two/ContentViewTwo.d.ts.map +1 -0
  372. package/lib/typescript/src/components/ContentView/Two/components/AboutSection.d.ts +27 -0
  373. package/lib/typescript/src/components/ContentView/Two/components/AboutSection.d.ts.map +1 -0
  374. package/lib/typescript/src/components/ContentView/Two/components/Details.d.ts +15 -0
  375. package/lib/typescript/src/components/ContentView/Two/components/Details.d.ts.map +1 -0
  376. package/lib/typescript/src/components/ContentView/Two/components/EpisodeCard.d.ts +23 -0
  377. package/lib/typescript/src/components/ContentView/Two/components/EpisodeCard.d.ts.map +1 -0
  378. package/lib/typescript/src/components/ContentView/Two/components/GenreTags.d.ts +22 -0
  379. package/lib/typescript/src/components/ContentView/Two/components/GenreTags.d.ts.map +1 -0
  380. package/lib/typescript/src/components/ContentView/Two/components/HeroBanner.d.ts +8 -0
  381. package/lib/typescript/src/components/ContentView/Two/components/HeroBanner.d.ts.map +1 -0
  382. package/lib/typescript/src/components/ContentView/Two/components/LikeShareActions.d.ts +25 -0
  383. package/lib/typescript/src/components/ContentView/Two/components/LikeShareActions.d.ts.map +1 -0
  384. package/lib/typescript/src/components/ContentView/Two/components/MoreLikeThisContentList .d.ts +26 -0
  385. package/lib/typescript/src/components/ContentView/Two/components/MoreLikeThisContentList .d.ts.map +1 -0
  386. package/lib/typescript/src/components/ContentView/Two/components/PlayOrTrailer.d.ts +21 -0
  387. package/lib/typescript/src/components/ContentView/Two/components/PlayOrTrailer.d.ts.map +1 -0
  388. package/lib/typescript/src/components/ContentView/Two/components/SectionTabs.d.ts +28 -0
  389. package/lib/typescript/src/components/ContentView/Two/components/SectionTabs.d.ts.map +1 -0
  390. package/lib/typescript/src/components/ContentView/Two/components/Title.d.ts +34 -0
  391. package/lib/typescript/src/components/ContentView/Two/components/Title.d.ts.map +1 -0
  392. package/lib/typescript/src/components/ContentView/Two/components/index.d.ts +15 -0
  393. package/lib/typescript/src/components/ContentView/Two/components/index.d.ts.map +1 -0
  394. package/lib/typescript/src/components/ContentView/index.d.ts +6 -1
  395. package/lib/typescript/src/components/ContentView/index.d.ts.map +1 -1
  396. package/lib/typescript/src/components/Headers/Four.d.ts +18 -0
  397. package/lib/typescript/src/components/Headers/Four.d.ts.map +1 -0
  398. package/lib/typescript/src/components/Headers/Three.d.ts +9 -1
  399. package/lib/typescript/src/components/Headers/Three.d.ts.map +1 -1
  400. package/lib/typescript/src/components/Headers/index.d.ts +1 -0
  401. package/lib/typescript/src/components/Headers/index.d.ts.map +1 -1
  402. package/lib/typescript/src/components/Input/Input.d.ts +2 -0
  403. package/lib/typescript/src/components/Input/Input.d.ts.map +1 -1
  404. package/lib/typescript/src/components/Input/InputThree.d.ts +22 -0
  405. package/lib/typescript/src/components/Input/InputThree.d.ts.map +1 -0
  406. package/lib/typescript/src/components/Input/PhoneNumberInput.d.ts.map +1 -1
  407. package/lib/typescript/src/components/Input/PhoneNumberInputTwo.d.ts +26 -0
  408. package/lib/typescript/src/components/Input/PhoneNumberInputTwo.d.ts.map +1 -0
  409. package/lib/typescript/src/components/Loader/Loader.d.ts +2 -0
  410. package/lib/typescript/src/components/Loader/Loader.d.ts.map +1 -1
  411. package/lib/typescript/src/components/Logo/Logo.d.ts +1 -1
  412. package/lib/typescript/src/components/Logo/Logo.d.ts.map +1 -1
  413. package/lib/typescript/src/components/NewRelease/NewReleaseSheet.d.ts +10 -0
  414. package/lib/typescript/src/components/NewRelease/NewReleaseSheet.d.ts.map +1 -0
  415. package/lib/typescript/src/components/NewRelease/index.d.ts +2 -0
  416. package/lib/typescript/src/components/NewRelease/index.d.ts.map +1 -0
  417. package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/BottomControls.d.ts +2 -0
  418. package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/BottomControls.d.ts.map +1 -1
  419. package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.d.ts +1 -0
  420. package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.d.ts.map +1 -1
  421. package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/RightControls.d.ts.map +1 -1
  422. package/lib/typescript/src/components/Reels/ReelsSeries/Model/SettingModal.d.ts +2 -1
  423. package/lib/typescript/src/components/Reels/ReelsSeries/Model/SettingModal.d.ts.map +1 -1
  424. package/lib/typescript/src/components/Reels/ReelsSeries/ReelsSeries.d.ts +9 -2
  425. package/lib/typescript/src/components/Reels/ReelsSeries/ReelsSeries.d.ts.map +1 -1
  426. package/lib/typescript/src/components/Reels/ReelsSeries/ReelsSeriesItem.d.ts +11 -1
  427. package/lib/typescript/src/components/Reels/ReelsSeries/ReelsSeriesItem.d.ts.map +1 -1
  428. package/lib/typescript/src/components/Reels/ReelsSeries/components/VideoControls/QualityControl.d.ts +11 -0
  429. package/lib/typescript/src/components/Reels/ReelsSeries/components/VideoControls/QualityControl.d.ts.map +1 -1
  430. package/lib/typescript/src/components/Reels/ReelsSeries/types.d.ts +15 -0
  431. package/lib/typescript/src/components/Reels/ReelsSeries/types.d.ts.map +1 -1
  432. package/lib/typescript/src/components/Reels/ReelsSeries/useReelsWatchProgress.d.ts +34 -0
  433. package/lib/typescript/src/components/Reels/ReelsSeries/useReelsWatchProgress.d.ts.map +1 -0
  434. package/lib/typescript/src/components/Reels/ReelsSeries/utils/quality.d.ts +10 -0
  435. package/lib/typescript/src/components/Reels/ReelsSeries/utils/quality.d.ts.map +1 -0
  436. package/lib/typescript/src/components/Reels/index.d.ts +1 -0
  437. package/lib/typescript/src/components/Reels/index.d.ts.map +1 -1
  438. package/lib/typescript/src/components/Search/One.d.ts.map +1 -1
  439. package/lib/typescript/src/components/Search/components/SearchCard.d.ts +1 -0
  440. package/lib/typescript/src/components/Search/components/SearchCard.d.ts.map +1 -1
  441. package/lib/typescript/src/components/User/PurchaseHistory/PurchaseHistory.d.ts.map +1 -1
  442. package/lib/typescript/src/components/User/WatchHistory/WatchHistory.d.ts.map +1 -1
  443. package/lib/typescript/src/components/User/WatchLater/WatchLater.d.ts.map +1 -1
  444. package/lib/typescript/src/components/common/AppStatusBar.d.ts +1 -0
  445. package/lib/typescript/src/components/common/AppStatusBar.d.ts.map +1 -1
  446. package/lib/typescript/src/components/index.d.ts +1 -0
  447. package/lib/typescript/src/components/index.d.ts.map +1 -1
  448. package/lib/typescript/src/constants/dummySections.d.ts +8 -1
  449. package/lib/typescript/src/constants/dummySections.d.ts.map +1 -1
  450. package/lib/typescript/src/hooks/Images/index.d.ts +3 -0
  451. package/lib/typescript/src/hooks/Images/index.d.ts.map +1 -0
  452. package/lib/typescript/src/hooks/Images/useImageLoader.d.ts +36 -0
  453. package/lib/typescript/src/hooks/Images/useImageLoader.d.ts.map +1 -0
  454. package/lib/typescript/src/hooks/Images/useImageValidation.d.ts +17 -0
  455. package/lib/typescript/src/hooks/Images/useImageValidation.d.ts.map +1 -0
  456. package/lib/typescript/src/hooks/index.d.ts +3 -0
  457. package/lib/typescript/src/hooks/index.d.ts.map +1 -1
  458. package/lib/typescript/src/hooks/useAdTracking.d.ts +39 -0
  459. package/lib/typescript/src/hooks/useAdTracking.d.ts.map +1 -0
  460. package/lib/typescript/src/hooks/useCards.d.ts +36 -0
  461. package/lib/typescript/src/hooks/useCards.d.ts.map +1 -0
  462. package/lib/typescript/src/hooks/usePaginatedSection.d.ts +12 -2
  463. package/lib/typescript/src/hooks/usePaginatedSection.d.ts.map +1 -1
  464. package/lib/typescript/src/hooks/useSplashCache.d.ts.map +1 -1
  465. package/lib/typescript/src/theme/ThemeProvider.d.ts +2 -0
  466. package/lib/typescript/src/theme/ThemeProvider.d.ts.map +1 -1
  467. package/lib/typescript/src/theme/hook/index.d.ts +0 -1
  468. package/lib/typescript/src/theme/hook/index.d.ts.map +1 -1
  469. package/lib/typescript/src/theme/hook/useInternalTheme.d.ts.map +1 -1
  470. package/lib/typescript/src/theme/themes.d.ts +1 -0
  471. package/lib/typescript/src/theme/themes.d.ts.map +1 -1
  472. package/lib/typescript/src/theme/utils/validateColor.d.ts +21 -0
  473. package/lib/typescript/src/theme/utils/validateColor.d.ts.map +1 -0
  474. package/lib/typescript/src/types/content/content-view.types.d.ts +40 -1
  475. package/lib/typescript/src/types/content/content-view.types.d.ts.map +1 -1
  476. package/lib/typescript/src/types/sections/index.d.ts +7 -4
  477. package/lib/typescript/src/types/sections/index.d.ts.map +1 -1
  478. package/lib/typescript/src/utils/colorUtils.d.ts +19 -0
  479. package/lib/typescript/src/utils/colorUtils.d.ts.map +1 -0
  480. package/package.json +13 -4
  481. package/src/components/Auth/AuthProvider/AuthProvider.tsx +6 -2
  482. package/src/components/Auth/One/ForgotPassword/ForgotPassword.tsx +324 -0
  483. package/src/components/Auth/One/Login/LoginWithEmail.tsx +455 -0
  484. package/src/components/Auth/{Login → One/Login}/LoginWithPhone.tsx +12 -12
  485. package/src/components/Auth/One/OTP/OTP.tsx +465 -0
  486. package/src/components/Auth/One/QrLogin/QrLogin.tsx +602 -0
  487. package/src/components/Auth/One/QrLogin/components/QrViewArea.tsx +423 -0
  488. package/src/components/Auth/One/SignUp/SignUp.tsx +479 -0
  489. package/src/components/Auth/{SplashScreen → One/SplashScreen}/SplashScreen.tsx +10 -6
  490. package/src/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.tsx +103 -0
  491. package/src/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashLottie/SplashLottie.tsx +1 -1
  492. package/src/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashVideo/SplashVideo.tsx +35 -25
  493. package/src/components/Auth/One/index.ts +24 -0
  494. package/src/components/Auth/Two/AuthHeader/AuthHeader.tsx +108 -0
  495. package/src/components/Auth/{ForgotPassword → Two/ForgotPassword}/ForgotPassword.tsx +62 -35
  496. package/src/components/Auth/Two/Login/AuthLoginShell.tsx +173 -0
  497. package/src/components/Auth/Two/Login/LoginWithEmail.tsx +279 -0
  498. package/src/components/Auth/Two/Login/LoginWithPhone.tsx +188 -0
  499. package/src/components/Auth/{OTP → Two/OTP}/OTP.tsx +92 -81
  500. package/src/components/Auth/Two/QrLogin/QrLogin.tsx +602 -0
  501. package/src/components/Auth/Two/QrLogin/components/QrViewArea.tsx +423 -0
  502. package/src/components/Auth/Two/SignUp/SignUp.tsx +472 -0
  503. package/src/components/Auth/Two/SplashScreen/SplashScreen.tsx +248 -0
  504. package/src/components/Auth/{SplashScreen → Two/SplashScreen}/components/SplashImage/SplashImage.tsx +1 -1
  505. package/src/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.tsx +77 -0
  506. package/src/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.tsx +178 -0
  507. package/src/components/Auth/Two/index.ts +28 -0
  508. package/src/components/Auth/index.ts +7 -22
  509. package/src/components/BackgroundLayout/BackgroundLayout.tsx +2 -0
  510. package/src/components/BackgroundLayout/BackgroundLayoutOne.tsx +56 -0
  511. package/src/components/BottomSheet/BottomSheet.tsx +6 -1
  512. package/src/components/BottomSheet/BottomSheetOne.tsx +220 -0
  513. package/src/components/BottomSheet/index.ts +2 -0
  514. package/src/components/Button/PrimaryBtn.tsx +10 -2
  515. package/src/components/Content/Card/Category/Category.tsx +104 -10
  516. package/src/components/Content/Card/Category/CategroyTwo.tsx +429 -0
  517. package/src/components/Content/Card/NowWatching/NowWatching.tsx +281 -136
  518. package/src/components/Content/Card/Sliders/Styles/One.tsx +248 -152
  519. package/src/components/Content/Card/Sliders/Styles/Three.tsx +935 -0
  520. package/src/components/Content/Card/Sliders/Styles/Two.tsx +171 -102
  521. package/src/components/Content/Card/Sliders/index.ts +2 -0
  522. package/src/components/Content/Card/Styles/Five.tsx +162 -62
  523. package/src/components/Content/Card/Styles/Four.tsx +165 -85
  524. package/src/components/Content/Card/Styles/One.tsx +162 -71
  525. package/src/components/Content/Card/Styles/RotateInOut.tsx +158 -60
  526. package/src/components/Content/Card/Styles/Six.tsx +242 -142
  527. package/src/components/Content/Card/Styles/Three.tsx +160 -162
  528. package/src/components/Content/Card/Styles/TopTen.tsx +231 -191
  529. package/src/components/Content/Card/Styles/Two.tsx +183 -79
  530. package/src/components/Content/Card/components/AdsPoster.tsx +202 -0
  531. package/src/components/Content/Card/components/CardPoster.tsx +250 -151
  532. package/src/components/Content/Card/components/NavigateToMore.tsx +29 -1
  533. package/src/components/Content/Card/components/index.ts +1 -0
  534. package/src/components/Content/Content.tsx +103 -119
  535. package/src/components/Content/Sections.tsx +51 -45
  536. package/src/components/Content/types.ts +176 -0
  537. package/src/components/ContentView/MoreContentList.tsx +1 -0
  538. package/src/components/ContentView/{ContentView.tsx → One/ContentViewOne.tsx} +8 -7
  539. package/src/components/ContentView/{components → One/components}/AboutSection.tsx +3 -3
  540. package/src/components/ContentView/{components → One/components}/CastCard.tsx +3 -3
  541. package/src/components/ContentView/{components → One/components}/EpisodeCard.tsx +7 -8
  542. package/src/components/ContentView/{components → One/components}/GenreTags.tsx +3 -3
  543. package/src/components/ContentView/{components → One/components}/HeroBanner.tsx +44 -59
  544. package/src/components/ContentView/{components → One/components}/MiniInfo.tsx +69 -5
  545. package/src/components/ContentView/{components → One/components}/PlayButton.tsx +1 -1
  546. package/src/components/ContentView/{components → One/components}/Title.tsx +2 -2
  547. package/src/components/ContentView/{components → One/components}/TrailerButton.tsx +2 -2
  548. package/src/components/ContentView/Two/ContentViewTwo.tsx +343 -0
  549. package/src/components/ContentView/Two/components/AboutSection.tsx +216 -0
  550. package/src/components/ContentView/Two/components/Details.tsx +193 -0
  551. package/src/components/ContentView/Two/components/EpisodeCard.tsx +602 -0
  552. package/src/components/ContentView/Two/components/GenreTags.tsx +123 -0
  553. package/src/components/ContentView/Two/components/HeroBanner.tsx +402 -0
  554. package/src/components/ContentView/Two/components/LikeShareActions.tsx +125 -0
  555. package/src/components/ContentView/Two/components/MoreLikeThisContentList .tsx +305 -0
  556. package/src/components/ContentView/Two/components/PlayOrTrailer.tsx +133 -0
  557. package/src/components/ContentView/Two/components/SectionTabs.tsx +177 -0
  558. package/src/components/ContentView/Two/components/Title.tsx +226 -0
  559. package/src/components/ContentView/Two/components/index.ts +15 -0
  560. package/src/components/ContentView/index.ts +7 -1
  561. package/src/components/Headers/Four.tsx +83 -0
  562. package/src/components/Headers/Three.tsx +88 -25
  563. package/src/components/Headers/index.ts +2 -0
  564. package/src/components/Input/Input.ts +4 -0
  565. package/src/components/Input/InputThree.tsx +212 -0
  566. package/src/components/Input/PhoneNumberInput.tsx +4 -2
  567. package/src/components/Input/PhoneNumberInputTwo.tsx +418 -0
  568. package/src/components/Loader/Loader.tsx +25 -9
  569. package/src/components/Logo/Logo.tsx +53 -34
  570. package/src/components/NewRelease/NewReleaseSheet.tsx +250 -0
  571. package/src/components/NewRelease/index.ts +1 -0
  572. package/src/components/Reels/ReelsSeries/MediaControls/BottomControls.tsx +92 -27
  573. package/src/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.tsx +81 -1
  574. package/src/components/Reels/ReelsSeries/MediaControls/RightControls.tsx +4 -1
  575. package/src/components/Reels/ReelsSeries/Model/SettingModal.tsx +6 -3
  576. package/src/components/Reels/ReelsSeries/ReelsSeries.tsx +88 -55
  577. package/src/components/Reels/ReelsSeries/ReelsSeriesItem.tsx +92 -30
  578. package/src/components/Reels/ReelsSeries/components/VideoControls/QualityControl.tsx +35 -38
  579. package/src/components/Reels/ReelsSeries/types.ts +16 -0
  580. package/src/components/Reels/ReelsSeries/useReelsWatchProgress.ts +85 -0
  581. package/src/components/Reels/ReelsSeries/utils/quality.ts +48 -0
  582. package/src/components/Reels/index.ts +1 -0
  583. package/src/components/Search/One.tsx +8 -5
  584. package/src/components/Search/components/SearchCard.tsx +68 -11
  585. package/src/components/User/PurchaseHistory/PurchaseHistory.tsx +1 -0
  586. package/src/components/User/WatchHistory/WatchHistory.tsx +1 -0
  587. package/src/components/User/WatchLater/WatchLater.tsx +1 -0
  588. package/src/components/common/AppStatusBar.tsx +7 -1
  589. package/src/components/index.ts +1 -0
  590. package/src/constants/dummySections.ts +54 -3
  591. package/src/hooks/Images/index.ts +2 -0
  592. package/src/hooks/Images/useImageLoader.ts +206 -0
  593. package/src/hooks/Images/useImageValidation.ts +36 -0
  594. package/src/hooks/index.ts +3 -0
  595. package/src/hooks/useAdTracking.ts +349 -0
  596. package/src/hooks/useCards.ts +228 -0
  597. package/src/hooks/usePaginatedSection.ts +26 -7
  598. package/src/hooks/useSplashCache.ts +88 -69
  599. package/src/theme/ThemeProvider.tsx +15 -2
  600. package/src/theme/hook/index.ts +0 -1
  601. package/src/theme/hook/useInternalTheme.ts +22 -13
  602. package/src/theme/themes.ts +3 -0
  603. package/src/theme/utils/validateColor.ts +127 -0
  604. package/src/types/content/content-view.types.ts +43 -1
  605. package/src/types/sections/index.ts +7 -4
  606. package/src/utils/colorUtils.ts +70 -0
  607. package/lib/module/components/Auth/ForgotPassword/ForgotPassword.js.map +0 -1
  608. package/lib/module/components/Auth/Login/LoginWithEmail.js +0 -314
  609. package/lib/module/components/Auth/Login/LoginWithEmail.js.map +0 -1
  610. package/lib/module/components/Auth/Login/LoginWithPhone.js.map +0 -1
  611. package/lib/module/components/Auth/OTP/OTP.js.map +0 -1
  612. package/lib/module/components/Auth/QrLogin/QrLogin.js +0 -313
  613. package/lib/module/components/Auth/QrLogin/QrLogin.js.map +0 -1
  614. package/lib/module/components/Auth/QrLogin/components/QrViewArea.js +0 -243
  615. package/lib/module/components/Auth/QrLogin/components/QrViewArea.js.map +0 -1
  616. package/lib/module/components/Auth/SignUp/SignUp.js +0 -352
  617. package/lib/module/components/Auth/SignUp/SignUp.js.map +0 -1
  618. package/lib/module/components/Auth/SplashScreen/SplashScreen.js.map +0 -1
  619. package/lib/module/components/Auth/SplashScreen/components/SplashImage/SplashImage.js.map +0 -1
  620. package/lib/module/components/Auth/SplashScreen/components/SplashLottie/SplashLottie.js.map +0 -1
  621. package/lib/module/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.js.map +0 -1
  622. package/lib/module/components/ContentView/ContentView.js.map +0 -1
  623. package/lib/module/components/ContentView/components/AboutSection.js.map +0 -1
  624. package/lib/module/components/ContentView/components/CastCard.js.map +0 -1
  625. package/lib/module/components/ContentView/components/EpisodeCard.js.map +0 -1
  626. package/lib/module/components/ContentView/components/GenreTags.js.map +0 -1
  627. package/lib/module/components/ContentView/components/HeroBanner.js.map +0 -1
  628. package/lib/module/components/ContentView/components/MiniInfo.js.map +0 -1
  629. package/lib/module/components/ContentView/components/PlayButton.js.map +0 -1
  630. package/lib/module/components/ContentView/components/Title.js.map +0 -1
  631. package/lib/module/components/ContentView/components/TrailerButton.js.map +0 -1
  632. package/lib/module/theme/hook/useThemeStatusBar.js +0 -33
  633. package/lib/module/theme/hook/useThemeStatusBar.js.map +0 -1
  634. package/lib/typescript/src/components/Auth/ForgotPassword/ForgotPassword.d.ts.map +0 -1
  635. package/lib/typescript/src/components/Auth/Login/LoginWithEmail.d.ts.map +0 -1
  636. package/lib/typescript/src/components/Auth/Login/LoginWithPhone.d.ts.map +0 -1
  637. package/lib/typescript/src/components/Auth/OTP/OTP.d.ts.map +0 -1
  638. package/lib/typescript/src/components/Auth/QrLogin/QrLogin.d.ts.map +0 -1
  639. package/lib/typescript/src/components/Auth/QrLogin/components/QrViewArea.d.ts.map +0 -1
  640. package/lib/typescript/src/components/Auth/SignUp/SignUp.d.ts.map +0 -1
  641. package/lib/typescript/src/components/Auth/SplashScreen/SplashScreen.d.ts.map +0 -1
  642. package/lib/typescript/src/components/Auth/SplashScreen/components/SplashImage/SplashImage.d.ts.map +0 -1
  643. package/lib/typescript/src/components/Auth/SplashScreen/components/SplashLottie/SplashLottie.d.ts.map +0 -1
  644. package/lib/typescript/src/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.d.ts.map +0 -1
  645. package/lib/typescript/src/components/ContentView/ContentView.d.ts +0 -15
  646. package/lib/typescript/src/components/ContentView/ContentView.d.ts.map +0 -1
  647. package/lib/typescript/src/components/ContentView/components/AboutSection.d.ts.map +0 -1
  648. package/lib/typescript/src/components/ContentView/components/CastCard.d.ts.map +0 -1
  649. package/lib/typescript/src/components/ContentView/components/EpisodeCard.d.ts.map +0 -1
  650. package/lib/typescript/src/components/ContentView/components/GenreTags.d.ts.map +0 -1
  651. package/lib/typescript/src/components/ContentView/components/HeroBanner.d.ts.map +0 -1
  652. package/lib/typescript/src/components/ContentView/components/MiniInfo.d.ts.map +0 -1
  653. package/lib/typescript/src/components/ContentView/components/PlayButton.d.ts.map +0 -1
  654. package/lib/typescript/src/components/ContentView/components/Title.d.ts.map +0 -1
  655. package/lib/typescript/src/components/ContentView/components/TrailerButton.d.ts.map +0 -1
  656. package/lib/typescript/src/theme/hook/useThemeStatusBar.d.ts +0 -10
  657. package/lib/typescript/src/theme/hook/useThemeStatusBar.d.ts.map +0 -1
  658. package/src/components/Auth/Login/LoginWithEmail.tsx +0 -441
  659. package/src/components/Auth/QrLogin/QrLogin.tsx +0 -342
  660. package/src/components/Auth/QrLogin/components/QrViewArea.tsx +0 -329
  661. package/src/components/Auth/SignUp/SignUp.tsx +0 -462
  662. package/src/theme/hook/useThemeStatusBar.ts +0 -42
  663. /package/lib/typescript/src/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashLottie/SplashLottie.d.ts +0 -0
  664. /package/lib/typescript/src/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashVideo/SplashVideo.d.ts +0 -0
  665. /package/lib/typescript/src/components/Auth/{SplashScreen → Two/SplashScreen}/components/SplashImage/SplashImage.d.ts +0 -0
  666. /package/lib/typescript/src/components/ContentView/{components → One/components}/PlayButton.d.ts +0 -0
  667. /package/lib/typescript/src/components/ContentView/{components → One/components}/TrailerButton.d.ts +0 -0
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * @author Naresh Dhamu
3
- * @lastModified Sat 25 Oct 2025 at 04:01 PM
3
+ * @lastModified Wed 24 Dec 2025 at 04:01 PM
4
4
  */
5
5
 
6
- import React, { useState, useEffect, useMemo, useCallback } from 'react';
6
+ import React, { useMemo } from 'react';
7
7
  import { View, StyleSheet, type StyleProp, type ViewStyle } from 'react-native';
8
8
  import FastImage, {
9
9
  type ResizeMode,
@@ -16,12 +16,26 @@ import { ImageOff } from 'lucide-react-native';
16
16
  import type { ITheme } from '../../../../theme/themes';
17
17
  import RentOrBuyIcon from './RentOrBuyIcon';
18
18
  import type { IContentData } from '@zezosoft/zezo-ott-api-client';
19
+ import { useImageLoader } from '../../../../hooks';
20
+ import LinearGradient from 'react-native-linear-gradient';
21
+ import { RFValue } from 'react-native-responsive-fontsize';
22
+ import { convertColorWithOpacity } from '../../../../utils/colorUtils';
19
23
 
20
- // Module-level cache to track successfully loaded images
21
- const loadedImageCache = new Set<string>();
24
+ // Rank number styling constants
25
+ const RANK_NUMBER_SIZE = scale(40);
26
+ const RANK_NUMBER_BORDER_RADIUS = scale(30);
27
+ const RANK_NUMBER_TEXT_SIZE = RFValue(25);
28
+ const RANK_NUMBER_TEXT_MARGIN_TOP = scale(2);
29
+ const RANK_NUMBER_TEXT_MARGIN_RIGHT = scale(6);
30
+ const GRADIENT_START = { x: 1, y: 0.5 };
31
+ const GRADIENT_END = { x: 0.5, y: 1 };
32
+
33
+ // Vertical badge styling constants
34
+ const VERTICAL_BADGE_TEXT_SIZE = RFValue(7.5);
22
35
 
23
36
  export type CardPosterProps = {
24
37
  content_offering_type?: IContentData['content_offering_type'];
38
+ contentType?: IContentData['type'];
25
39
  posterUri: string;
26
40
  theme: ITheme;
27
41
  isLoading?: boolean;
@@ -29,63 +43,58 @@ export type CardPosterProps = {
29
43
  posterWrapperStyle?: StyleProp<ViewStyle>;
30
44
  imageStyle?: ImageStyle;
31
45
  resizeMode?: ResizeMode;
46
+ showRankNumber?: boolean;
47
+ rankNumber?: number;
48
+ };
49
+
50
+ // ----------------------------------
51
+ // Image Fallback
52
+ // ----------------------------------
53
+ type ImageFallbackProps = {
54
+ errorColor: string;
55
+ bg: string;
32
56
  };
33
57
 
58
+ const ImageFallback = React.memo<ImageFallbackProps>(({ errorColor, bg }) => (
59
+ <View
60
+ style={[styles.absolute, styles.center, { backgroundColor: bg }]}
61
+ accessible
62
+ accessibilityRole="image"
63
+ accessibilityLabel="Image failed to load"
64
+ >
65
+ <ImageOff size={scale(18)} color={errorColor} />
66
+ <Text style={styles.fallbackText} color={errorColor}>
67
+ Image Failed
68
+ </Text>
69
+ </View>
70
+ ));
71
+
72
+ ImageFallback.displayName = 'ImageFallback';
34
73
  const CardPoster: React.FC<CardPosterProps> = ({
35
74
  content_offering_type,
75
+ contentType,
36
76
  posterUri,
37
77
  theme,
38
- isLoading = false,
39
78
  borderRadius = scale(6),
40
79
  posterWrapperStyle,
41
80
  imageStyle,
81
+ isLoading = false,
42
82
  resizeMode = FastImage.resizeMode.cover,
83
+ showRankNumber = false,
84
+ rankNumber,
43
85
  }) => {
44
- const [imageLoading, setImageLoading] = useState(true);
45
- const [imageError, setImageError] = useState(false);
46
-
47
- const hasValidPoster = useMemo(() => {
48
- if (!posterUri || typeof posterUri !== 'string') return false;
49
- const cleaned = posterUri.trim();
50
- return (
51
- (cleaned.startsWith('http://') || cleaned.startsWith('https://')) &&
52
- /\.(jpg|jpeg|png|webp|gif|bmp)$/i.test(cleaned)
53
- );
54
- }, [posterUri]);
55
-
56
- // Reset image loading state when isLoading prop changes
57
- useEffect(() => {
58
- if (isLoading) {
59
- setImageLoading(true);
60
- setImageError(false);
61
- }
62
- }, [isLoading]);
63
-
64
- useEffect(() => {
65
- if (hasValidPoster) {
66
- // Check if this image was already loaded successfully before
67
- const isAlreadyLoaded = loadedImageCache.has(posterUri);
68
-
69
- if (isAlreadyLoaded) {
70
- // Image was loaded before, skip loading state
71
- setImageLoading(false);
72
- setImageError(false);
73
- } else {
74
- // Image not loaded before, show loading
75
- setImageLoading(true);
76
- setImageError(false);
77
- FastImage.preload([{ uri: posterUri }]);
78
- }
79
- } else {
80
- setImageLoading(false);
81
- setImageError(true);
82
- }
83
- }, [posterUri, hasValidPoster]);
84
-
85
- const showSkeleton = useMemo(
86
- () => isLoading || (imageLoading && !imageError && hasValidPoster),
87
- [isLoading, imageLoading, imageError, hasValidPoster]
88
- );
86
+ const {
87
+ showSkeleton,
88
+ showFallback,
89
+ hasValidImage,
90
+ imageSource,
91
+ imageLoading,
92
+ handleLoad,
93
+ handleError,
94
+ } = useImageLoader({
95
+ imageUri: posterUri,
96
+ isLoading,
97
+ });
89
98
 
90
99
  // Memoize theme colors
91
100
  const themeColors = useMemo(
@@ -95,141 +104,174 @@ const CardPoster: React.FC<CardPosterProps> = ({
95
104
  skeletonHighlightColor: theme.colors.skeletonHighlightColor,
96
105
  error: theme.colors.error,
97
106
  errorContainer: theme.colors.errorContainer,
107
+ border: theme.colors.border,
98
108
  }),
99
109
  [theme.colors]
100
110
  );
101
111
 
102
- const fallbackImageStyle: ImageStyle = useMemo(
103
- () => ({
104
- width: '100%',
105
- aspectRatio: 2 / 3,
106
- borderRadius,
107
- position: 'absolute',
108
- top: 0,
109
- left: 0,
110
- }),
111
- [borderRadius]
112
- );
113
-
114
- // Memoize FastImage source
115
- const imageSource = useMemo(
116
- () => ({
117
- uri: posterUri,
118
- cache: FastImage.cacheControl.immutable,
119
- priority: FastImage.priority.normal,
120
- }),
121
- [posterUri]
122
- );
123
-
124
- // Memoize callback handlers
125
- const handleLoadStart = useCallback(() => {
126
- // Only set loading if image is not already in cache
127
- if (!loadedImageCache.has(posterUri)) {
128
- setImageLoading(true);
129
- setImageError(false);
130
- }
131
- }, [posterUri]);
132
-
133
- const handleLoad = useCallback(() => {
134
- setImageLoading(false);
135
- setImageError(false);
136
- // Add to cache when successfully loaded
137
- loadedImageCache.add(posterUri);
138
- }, [posterUri]);
139
-
140
- const handleError = useCallback(() => {
141
- setImageLoading(false);
142
- setImageError(true);
143
- }, []);
144
-
145
112
  // Memoize wrapper style
146
113
  const wrapperStyle = useMemo(
147
114
  () => [
148
115
  styles.posterWrapper,
149
- { borderRadius, backgroundColor: themeColors.background },
116
+ {
117
+ width: '100%' as const,
118
+ aspectRatio: 2 / 3,
119
+ borderRadius,
120
+ backgroundColor: themeColors.background,
121
+ borderWidth: showSkeleton ? scale(0.5) : showFallback ? scale(0.3) : 0,
122
+ borderColor: showSkeleton
123
+ ? themeColors.border
124
+ : showFallback
125
+ ? themeColors.error
126
+ : 'transparent',
127
+ } as ViewStyle,
150
128
  posterWrapperStyle,
151
129
  ],
152
- [borderRadius, themeColors.background, posterWrapperStyle]
153
- );
154
-
155
- // Memoize skeleton wrapper style
156
- const skeletonWrapperStyle = useMemo(
157
- () => [styles.skeletonWrapper, { borderRadius }],
158
- [borderRadius]
130
+ [
131
+ borderRadius,
132
+ themeColors.background,
133
+ themeColors.border,
134
+ themeColors.error,
135
+ showSkeleton,
136
+ showFallback,
137
+ posterWrapperStyle,
138
+ ]
159
139
  );
160
140
 
161
141
  // Memoize skeleton item style
162
- const skeletonItemStyle = useMemo(
163
- () => [styles.skeleton, { borderRadius }],
164
- [borderRadius]
165
- );
166
142
 
167
- // Memoize image style array
143
+ // Memoize image style array - hide image until it successfully loads
168
144
  const imageStyleArray = useMemo(
169
145
  () => [
170
- fallbackImageStyle,
171
- showSkeleton ? styles.hidden : styles.visible,
146
+ styles.absolute,
147
+ // Hide image when skeleton is showing or image is still loading
148
+ showSkeleton || imageLoading ? styles.hidden : styles.visible,
172
149
  imageStyle,
173
150
  ],
174
- [fallbackImageStyle, showSkeleton, imageStyle]
151
+ [showSkeleton, imageLoading, imageStyle]
175
152
  );
176
153
 
177
- // Memoize fallback wrapper style
178
- const fallbackWrapperStyle = useMemo(
179
- () => [
180
- styles.fallbackWrapper,
181
- {
182
- borderRadius,
183
- backgroundColor: themeColors.background,
184
- borderColor: themeColors.error,
185
- },
186
- ],
187
- [borderRadius, themeColors.background, themeColors.error]
154
+ // Check if content type is vertical
155
+ const isVerticalContent = useMemo(
156
+ () => contentType === 'VERTICAL_STREAM',
157
+ [contentType]
188
158
  );
189
159
 
190
- // Memoize fallback inner style
191
- const fallbackInnerStyle = useMemo(
192
- () => [styles.fallback, { backgroundColor: themeColors.errorContainer }],
193
- [themeColors.errorContainer]
194
- );
160
+ // Memoize vertical badge gradient colors using primary colors
161
+ const verticalBadgeColors = useMemo(() => {
162
+ const primary = theme.colors.primary;
163
+ const secondary = theme.colors.secondary || primary;
164
+
165
+ return [
166
+ convertColorWithOpacity(primary, 0.9),
167
+ convertColorWithOpacity(secondary, 0.9),
168
+ ];
169
+ }, [theme.colors.primary, theme.colors.secondary]);
170
+
171
+ // Derived visibility flags for clearer JSX conditions
172
+ const shouldShowRentOrBuyIcon =
173
+ !showSkeleton && !showFallback && !!content_offering_type;
174
+ const shouldShowVerticalBadge =
175
+ !showSkeleton && !showFallback && isVerticalContent;
176
+ const shouldShowFallback = !isLoading && !showSkeleton && showFallback;
177
+ const shouldShowRankNumber = !showSkeleton && !!showRankNumber;
195
178
 
196
179
  return (
197
180
  <View style={wrapperStyle}>
198
- {!showSkeleton && content_offering_type && (
181
+ {/* Rent/Buy */}
182
+ {shouldShowRentOrBuyIcon && (
199
183
  <RentOrBuyIcon
200
- theme={theme}
201
184
  key={posterUri}
202
185
  content_offering_type={content_offering_type}
186
+ theme={theme}
203
187
  />
204
188
  )}
189
+
190
+ {/* Vertical Badge */}
191
+ {shouldShowVerticalBadge && (
192
+ <View
193
+ style={[
194
+ styles.verticalBadgeContainer,
195
+ showRankNumber && styles.verticalBadgeContainerRight,
196
+ ]}
197
+ accessible
198
+ accessibilityRole="text"
199
+ accessibilityLabel="Vertical video"
200
+ >
201
+ <LinearGradient
202
+ colors={verticalBadgeColors}
203
+ start={{ x: 0, y: 0 }}
204
+ end={{ x: 1, y: 0 }}
205
+ style={[
206
+ styles.verticalBadge,
207
+ showRankNumber && styles.verticalBadgeRight,
208
+ ]}
209
+ >
210
+ <Text style={styles.verticalBadgeText} color="#FFFFFF">
211
+ VERTICAL
212
+ </Text>
213
+ </LinearGradient>
214
+ </View>
215
+ )}
216
+
217
+ {/* Skeleton */}
205
218
  {showSkeleton && (
206
- <View style={skeletonWrapperStyle}>
219
+ <View style={[styles.absolute]}>
207
220
  <SkeletonPlaceholder
208
221
  backgroundColor={themeColors.skeletonBaseColor}
209
222
  highlightColor={themeColors.skeletonHighlightColor}
210
223
  >
211
- <SkeletonPlaceholder.Item style={skeletonItemStyle} />
224
+ <SkeletonPlaceholder.Item width="100%" height="100%" />
212
225
  </SkeletonPlaceholder>
213
226
  </View>
214
227
  )}
215
- {hasValidPoster && (
228
+
229
+ {/* Valid Image - Render when has valid image, but keep hidden until loaded */}
230
+ {hasValidImage && !showFallback && (
216
231
  <FastImage
232
+ key={`${posterUri}-image`}
217
233
  source={imageSource}
218
234
  style={imageStyleArray}
219
235
  resizeMode={resizeMode}
220
- onLoadStart={handleLoadStart}
221
236
  onLoad={handleLoad}
222
237
  onError={handleError}
223
238
  />
224
239
  )}
225
- {!showSkeleton && (!hasValidPoster || imageError) && (
226
- <View style={fallbackWrapperStyle}>
227
- <View style={fallbackInnerStyle}>
228
- <ImageOff size={scale(18)} color={themeColors.error} />
229
- <Text style={styles.fallbackText} color={themeColors.error}>
230
- Image Failed
240
+
241
+ {/* Fallback */}
242
+ {shouldShowFallback && (
243
+ <ImageFallback
244
+ key={`${posterUri}-fallback`}
245
+ errorColor={themeColors.error}
246
+ bg={themeColors.errorContainer}
247
+ />
248
+ )}
249
+
250
+ {/* Rank Number */}
251
+ {shouldShowRankNumber && (
252
+ <View
253
+ style={styles.numberContainer}
254
+ accessible
255
+ accessibilityRole="text"
256
+ accessibilityLabel={
257
+ typeof rankNumber === 'number'
258
+ ? `Rank ${rankNumber}`
259
+ : 'Rank number'
260
+ }
261
+ >
262
+ <LinearGradient
263
+ colors={theme.colors.backgroundLayoutGradient}
264
+ start={GRADIENT_START}
265
+ end={GRADIENT_END}
266
+ style={[styles.rankNumberBox]}
267
+ >
268
+ <Text
269
+ style={styles.rankNumberText}
270
+ color={theme.colors.textPrimary}
271
+ >
272
+ {rankNumber ?? ''}
231
273
  </Text>
232
- </View>
274
+ </LinearGradient>
233
275
  </View>
234
276
  )}
235
277
  </View>
@@ -240,27 +282,23 @@ export default React.memo(CardPoster);
240
282
 
241
283
  const styles = StyleSheet.create({
242
284
  posterWrapper: {
243
- width: '100%',
244
- aspectRatio: 2 / 3,
245
285
  overflow: 'hidden',
246
286
  position: 'relative',
247
287
  },
248
- skeletonWrapper: {
249
- position: 'absolute',
250
- top: 0,
251
- left: 0,
252
- width: '100%',
253
- aspectRatio: 2 / 3,
288
+
289
+ absolute: {
290
+ ...StyleSheet.absoluteFillObject,
291
+ },
292
+ center: {
293
+ justifyContent: 'center',
294
+ alignItems: 'center',
254
295
  },
255
- skeleton: { width: '100%', aspectRatio: 2 / 3 },
256
296
  visible: { opacity: 1 },
257
297
  hidden: { opacity: 0 },
258
298
  fallbackWrapper: {
259
299
  position: 'absolute',
260
300
  top: 0,
261
301
  left: 0,
262
- width: '100%',
263
- aspectRatio: 2 / 3,
264
302
  borderWidth: scale(1),
265
303
  alignItems: 'center',
266
304
  justifyContent: 'center',
@@ -269,10 +307,71 @@ const styles = StyleSheet.create({
269
307
  position: 'absolute',
270
308
  top: 0,
271
309
  left: 0,
272
- width: '100%',
273
- aspectRatio: 2 / 3,
274
310
  alignItems: 'center',
275
311
  justifyContent: 'center',
276
312
  },
277
313
  fallbackText: { marginTop: scale(4), fontSize: 10 },
314
+ numberContainer: {
315
+ position: 'absolute',
316
+ bottom: -1,
317
+ left: 0,
318
+ zIndex: 10,
319
+ },
320
+ rankNumberBox: {
321
+ width: RANK_NUMBER_SIZE,
322
+ height: RANK_NUMBER_SIZE,
323
+ borderTopRightRadius: RANK_NUMBER_BORDER_RADIUS,
324
+ justifyContent: 'center',
325
+ alignItems: 'center',
326
+ },
327
+ rankNumberText: {
328
+ fontSize: RANK_NUMBER_TEXT_SIZE,
329
+ fontWeight: '900',
330
+ textShadowColor: 'rgba(0, 0, 0, 0.6)',
331
+ textShadowOffset: { width: 1, height: 1 },
332
+ textShadowRadius: 3,
333
+ marginTop: RANK_NUMBER_TEXT_MARGIN_TOP,
334
+ marginRight: RANK_NUMBER_TEXT_MARGIN_RIGHT,
335
+ letterSpacing: 0.5,
336
+ },
337
+ verticalBadgeContainer: {
338
+ position: 'absolute',
339
+ bottom: 0,
340
+ left: 0,
341
+ right: 0,
342
+ zIndex: 15,
343
+ shadowColor: '#000',
344
+ shadowOffset: { width: 0, height: -2 },
345
+ shadowOpacity: 0.3,
346
+ shadowRadius: 4,
347
+ elevation: 6,
348
+ },
349
+ verticalBadgeContainerRight: {
350
+ left: 'auto',
351
+ right: 0,
352
+ width: 'auto',
353
+ },
354
+ verticalBadge: {
355
+ width: '100%',
356
+ paddingHorizontal: scale(8),
357
+ paddingVertical: scale(4),
358
+ alignItems: 'center',
359
+ justifyContent: 'center',
360
+ borderRadius: 0,
361
+ },
362
+ verticalBadgeRight: {
363
+ width: 'auto',
364
+ paddingHorizontal: scale(10),
365
+ borderTopLeftRadius: scale(4),
366
+ },
367
+ verticalBadgeText: {
368
+ fontSize: VERTICAL_BADGE_TEXT_SIZE,
369
+ fontWeight: '700',
370
+ letterSpacing: scale(0.5),
371
+ textAlign: 'center',
372
+ textShadowColor: 'rgba(0, 0, 0, 0.3)',
373
+ textShadowOffset: { width: 0, height: 1 },
374
+ textShadowRadius: 2,
375
+ includeFontPadding: false,
376
+ },
278
377
  });
@@ -11,10 +11,13 @@ import {
11
11
  type TextStyle,
12
12
  type ViewStyle,
13
13
  } from 'react-native';
14
- import { verticalScale } from 'react-native-size-matters';
14
+ import { moderateScale, verticalScale } from 'react-native-size-matters';
15
+ import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
15
16
  import ShowAllButton, { type ShowAllButtonProps } from './ShowAllButton';
16
17
  import { Text } from '../../../Text';
17
18
  import { RFValue } from 'react-native-responsive-fontsize';
19
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
20
+ import type { ThemeOverride } from '../../../../theme/themes';
18
21
 
19
22
  interface IProps {
20
23
  title: string;
@@ -22,6 +25,8 @@ interface IProps {
22
25
  titleStyle?: StyleProp<TextStyle>;
23
26
  containerStyle?: StyleProp<ViewStyle>;
24
27
  showAllProps?: Partial<ShowAllButtonProps>;
28
+ isLoading?: boolean;
29
+ theme?: ThemeOverride;
25
30
  }
26
31
 
27
32
  const NavigateToMore: React.FC<IProps> = ({
@@ -30,7 +35,30 @@ const NavigateToMore: React.FC<IProps> = ({
30
35
  titleStyle,
31
36
  containerStyle,
32
37
  showAllProps,
38
+ isLoading = false,
39
+ theme,
33
40
  }): React.ReactElement => {
41
+ const { theme: appliedTheme } = useInternalTheme(theme);
42
+
43
+ if (isLoading) {
44
+ return (
45
+ <SkeletonPlaceholder
46
+ highlightColor={appliedTheme.colors.skeletonHighlightColor}
47
+ backgroundColor={appliedTheme.colors.skeletonBaseColor}
48
+ >
49
+ <View style={[styles.container, containerStyle]}>
50
+ <View style={styles.titleWrapper}>
51
+ <SkeletonPlaceholder.Item
52
+ width={moderateScale(100)}
53
+ height={verticalScale(14)}
54
+ borderRadius={moderateScale(4)}
55
+ />
56
+ </View>
57
+ </View>
58
+ </SkeletonPlaceholder>
59
+ );
60
+ }
61
+
34
62
  return (
35
63
  <View style={[styles.container, containerStyle]}>
36
64
  <View style={styles.titleWrapper}>
@@ -0,0 +1 @@
1
+ export * from './AdsPoster';