@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.
- package/lib/module/components/Auth/AuthProvider/AuthProvider.js +5 -2
- package/lib/module/components/Auth/AuthProvider/AuthProvider.js.map +1 -1
- package/lib/module/components/Auth/One/ForgotPassword/ForgotPassword.js +232 -0
- package/lib/module/components/Auth/One/ForgotPassword/ForgotPassword.js.map +1 -0
- package/lib/module/components/Auth/One/Login/LoginWithEmail.js +324 -0
- package/lib/module/components/Auth/One/Login/LoginWithEmail.js.map +1 -0
- package/lib/module/components/Auth/{Login → One/Login}/LoginWithPhone.js +13 -11
- package/lib/module/components/Auth/One/Login/LoginWithPhone.js.map +1 -0
- package/lib/module/components/Auth/One/OTP/OTP.js +301 -0
- package/lib/module/components/Auth/One/OTP/OTP.js.map +1 -0
- package/lib/module/components/Auth/One/QrLogin/QrLogin.js +479 -0
- package/lib/module/components/Auth/One/QrLogin/QrLogin.js.map +1 -0
- package/lib/module/components/Auth/One/QrLogin/components/QrViewArea.js +295 -0
- package/lib/module/components/Auth/One/QrLogin/components/QrViewArea.js.map +1 -0
- package/lib/module/components/Auth/One/SignUp/SignUp.js +362 -0
- package/lib/module/components/Auth/One/SignUp/SignUp.js.map +1 -0
- package/lib/module/components/Auth/{SplashScreen → One/SplashScreen}/SplashScreen.js +8 -5
- package/lib/module/components/Auth/One/SplashScreen/SplashScreen.js.map +1 -0
- package/lib/module/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.js +80 -0
- package/lib/module/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.js.map +1 -0
- package/lib/module/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashLottie/SplashLottie.js +1 -1
- package/lib/module/components/Auth/One/SplashScreen/components/SplashLottie/SplashLottie.js.map +1 -0
- package/lib/module/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashVideo/SplashVideo.js +42 -21
- package/lib/module/components/Auth/One/SplashScreen/components/SplashVideo/SplashVideo.js.map +1 -0
- package/lib/module/components/Auth/One/index.js +25 -0
- package/lib/module/components/Auth/One/index.js.map +1 -0
- package/lib/module/components/Auth/Two/AuthHeader/AuthHeader.js +93 -0
- package/lib/module/components/Auth/Two/AuthHeader/AuthHeader.js.map +1 -0
- package/lib/module/components/Auth/{ForgotPassword → Two/ForgotPassword}/ForgotPassword.js +55 -28
- package/lib/module/components/Auth/Two/ForgotPassword/ForgotPassword.js.map +1 -0
- package/lib/module/components/Auth/Two/Login/AuthLoginShell.js +138 -0
- package/lib/module/components/Auth/Two/Login/AuthLoginShell.js.map +1 -0
- package/lib/module/components/Auth/Two/Login/LoginWithEmail.js +226 -0
- package/lib/module/components/Auth/Two/Login/LoginWithEmail.js.map +1 -0
- package/lib/module/components/Auth/Two/Login/LoginWithPhone.js +143 -0
- package/lib/module/components/Auth/Two/Login/LoginWithPhone.js.map +1 -0
- package/lib/module/components/Auth/{OTP → Two/OTP}/OTP.js +93 -63
- package/lib/module/components/Auth/Two/OTP/OTP.js.map +1 -0
- package/lib/module/components/Auth/Two/QrLogin/QrLogin.js +479 -0
- package/lib/module/components/Auth/Two/QrLogin/QrLogin.js.map +1 -0
- package/lib/module/components/Auth/Two/QrLogin/components/QrViewArea.js +295 -0
- package/lib/module/components/Auth/Two/QrLogin/components/QrViewArea.js.map +1 -0
- package/lib/module/components/Auth/Two/SignUp/SignUp.js +379 -0
- package/lib/module/components/Auth/Two/SignUp/SignUp.js.map +1 -0
- package/lib/module/components/Auth/Two/SplashScreen/SplashScreen.js +141 -0
- package/lib/module/components/Auth/Two/SplashScreen/SplashScreen.js.map +1 -0
- package/lib/module/components/Auth/{SplashScreen → Two/SplashScreen}/components/SplashImage/SplashImage.js +1 -1
- package/lib/module/components/Auth/Two/SplashScreen/components/SplashImage/SplashImage.js.map +1 -0
- package/lib/module/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.js +63 -0
- package/lib/module/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.js.map +1 -0
- package/lib/module/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.js +157 -0
- package/lib/module/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.js.map +1 -0
- package/lib/module/components/Auth/Two/index.js +29 -0
- package/lib/module/components/Auth/Two/index.js.map +1 -0
- package/lib/module/components/Auth/index.js +7 -22
- package/lib/module/components/Auth/index.js.map +1 -1
- package/lib/module/components/BackgroundLayout/BackgroundLayout.js +7 -3
- package/lib/module/components/BackgroundLayout/BackgroundLayout.js.map +1 -1
- package/lib/module/components/BackgroundLayout/BackgroundLayoutOne.js +52 -0
- package/lib/module/components/BackgroundLayout/BackgroundLayoutOne.js.map +1 -0
- package/lib/module/components/BottomSheet/BottomSheet.js +7 -3
- package/lib/module/components/BottomSheet/BottomSheet.js.map +1 -1
- package/lib/module/components/BottomSheet/BottomSheetOne.js +170 -0
- package/lib/module/components/BottomSheet/BottomSheetOne.js.map +1 -0
- package/lib/module/components/BottomSheet/index.js +1 -0
- package/lib/module/components/BottomSheet/index.js.map +1 -1
- package/lib/module/components/Button/PrimaryBtn.js +16 -6
- package/lib/module/components/Button/PrimaryBtn.js.map +1 -1
- package/lib/module/components/Content/Card/Category/Category.js +88 -13
- package/lib/module/components/Content/Card/Category/Category.js.map +1 -1
- package/lib/module/components/Content/Card/Category/CategroyTwo.js +287 -0
- package/lib/module/components/Content/Card/Category/CategroyTwo.js.map +1 -0
- package/lib/module/components/Content/Card/NowWatching/NowWatching.js +237 -108
- package/lib/module/components/Content/Card/NowWatching/NowWatching.js.map +1 -1
- package/lib/module/components/Content/Card/Sliders/Styles/One.js +191 -132
- package/lib/module/components/Content/Card/Sliders/Styles/One.js.map +1 -1
- package/lib/module/components/Content/Card/Sliders/Styles/Three.js +714 -0
- package/lib/module/components/Content/Card/Sliders/Styles/Three.js.map +1 -0
- package/lib/module/components/Content/Card/Sliders/Styles/Two.js +139 -92
- package/lib/module/components/Content/Card/Sliders/Styles/Two.js.map +1 -1
- package/lib/module/components/Content/Card/Sliders/index.js +3 -1
- package/lib/module/components/Content/Card/Sliders/index.js.map +1 -1
- package/lib/module/components/Content/Card/Styles/Five.js +132 -48
- package/lib/module/components/Content/Card/Styles/Five.js.map +1 -1
- package/lib/module/components/Content/Card/Styles/Four.js +127 -59
- package/lib/module/components/Content/Card/Styles/Four.js.map +1 -1
- package/lib/module/components/Content/Card/Styles/One.js +126 -50
- package/lib/module/components/Content/Card/Styles/One.js.map +1 -1
- package/lib/module/components/Content/Card/Styles/RotateInOut.js +139 -53
- package/lib/module/components/Content/Card/Styles/RotateInOut.js.map +1 -1
- package/lib/module/components/Content/Card/Styles/Six.js +207 -115
- package/lib/module/components/Content/Card/Styles/Six.js.map +1 -1
- package/lib/module/components/Content/Card/Styles/Three.js +119 -94
- package/lib/module/components/Content/Card/Styles/Three.js.map +1 -1
- package/lib/module/components/Content/Card/Styles/TopTen.js +187 -171
- package/lib/module/components/Content/Card/Styles/TopTen.js.map +1 -1
- package/lib/module/components/Content/Card/Styles/Two.js +145 -64
- package/lib/module/components/Content/Card/Styles/Two.js.map +1 -1
- package/lib/module/components/Content/Card/components/AdsPoster.js +162 -0
- package/lib/module/components/Content/Card/components/AdsPoster.js.map +1 -0
- package/lib/module/components/Content/Card/components/CardPoster.js +217 -135
- package/lib/module/components/Content/Card/components/CardPoster.js.map +1 -1
- package/lib/module/components/Content/Card/components/NavigateToMore.js +26 -2
- package/lib/module/components/Content/Card/components/NavigateToMore.js.map +1 -1
- package/lib/module/components/Content/Card/components/index.js +4 -0
- package/lib/module/components/Content/Card/components/index.js.map +1 -0
- package/lib/module/components/Content/Content.js +90 -33
- package/lib/module/components/Content/Content.js.map +1 -1
- package/lib/module/components/Content/Sections.js +41 -11
- package/lib/module/components/Content/Sections.js.map +1 -1
- package/lib/module/components/Content/types.js +4 -0
- package/lib/module/components/Content/types.js.map +1 -0
- package/lib/module/components/ContentView/MoreContentList.js +1 -0
- package/lib/module/components/ContentView/MoreContentList.js.map +1 -1
- package/lib/module/components/ContentView/{ContentView.js → One/ContentViewOne.js} +6 -5
- package/lib/module/components/ContentView/One/ContentViewOne.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/AboutSection.js +2 -2
- package/lib/module/components/ContentView/One/components/AboutSection.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/CastCard.js +2 -2
- package/lib/module/components/ContentView/One/components/CastCard.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/EpisodeCard.js +5 -6
- package/lib/module/components/ContentView/One/components/EpisodeCard.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/GenreTags.js +2 -2
- package/lib/module/components/ContentView/One/components/GenreTags.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/HeroBanner.js +45 -44
- package/lib/module/components/ContentView/One/components/HeroBanner.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/MiniInfo.js +50 -5
- package/lib/module/components/ContentView/One/components/MiniInfo.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/PlayButton.js +1 -1
- package/lib/module/components/ContentView/One/components/PlayButton.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/Title.js +1 -1
- package/lib/module/components/ContentView/One/components/Title.js.map +1 -0
- package/lib/module/components/ContentView/{components → One/components}/TrailerButton.js +2 -2
- package/lib/module/components/ContentView/One/components/TrailerButton.js.map +1 -0
- package/lib/module/components/ContentView/Two/ContentViewTwo.js +220 -0
- package/lib/module/components/ContentView/Two/ContentViewTwo.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/AboutSection.js +150 -0
- package/lib/module/components/ContentView/Two/components/AboutSection.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/Details.js +156 -0
- package/lib/module/components/ContentView/Two/components/Details.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/EpisodeCard.js +425 -0
- package/lib/module/components/ContentView/Two/components/EpisodeCard.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/GenreTags.js +86 -0
- package/lib/module/components/ContentView/Two/components/GenreTags.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/HeroBanner.js +339 -0
- package/lib/module/components/ContentView/Two/components/HeroBanner.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/LikeShareActions.js +88 -0
- package/lib/module/components/ContentView/Two/components/LikeShareActions.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/MoreLikeThisContentList .js +235 -0
- package/lib/module/components/ContentView/Two/components/MoreLikeThisContentList .js.map +1 -0
- package/lib/module/components/ContentView/Two/components/PlayOrTrailer.js +120 -0
- package/lib/module/components/ContentView/Two/components/PlayOrTrailer.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/SectionTabs.js +112 -0
- package/lib/module/components/ContentView/Two/components/SectionTabs.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/Title.js +146 -0
- package/lib/module/components/ContentView/Two/components/Title.js.map +1 -0
- package/lib/module/components/ContentView/Two/components/index.js +18 -0
- package/lib/module/components/ContentView/Two/components/index.js.map +1 -0
- package/lib/module/components/ContentView/index.js +6 -1
- package/lib/module/components/ContentView/index.js.map +1 -1
- package/lib/module/components/Headers/Four.js +68 -0
- package/lib/module/components/Headers/Four.js.map +1 -0
- package/lib/module/components/Headers/Three.js +75 -24
- package/lib/module/components/Headers/Three.js.map +1 -1
- package/lib/module/components/Headers/index.js +3 -1
- package/lib/module/components/Headers/index.js.map +1 -1
- package/lib/module/components/Input/Input.js +5 -1
- package/lib/module/components/Input/Input.js.map +1 -1
- package/lib/module/components/Input/InputThree.js +157 -0
- package/lib/module/components/Input/InputThree.js.map +1 -0
- package/lib/module/components/Input/PhoneNumberInput.js.map +1 -1
- package/lib/module/components/Input/PhoneNumberInputTwo.js +316 -0
- package/lib/module/components/Input/PhoneNumberInputTwo.js.map +1 -0
- package/lib/module/components/Loader/Loader.js +14 -6
- package/lib/module/components/Loader/Loader.js.map +1 -1
- package/lib/module/components/Logo/Logo.js +42 -17
- package/lib/module/components/Logo/Logo.js.map +1 -1
- package/lib/module/components/NewRelease/NewReleaseSheet.js +227 -0
- package/lib/module/components/NewRelease/NewReleaseSheet.js.map +1 -0
- package/lib/module/components/NewRelease/index.js +4 -0
- package/lib/module/components/NewRelease/index.js.map +1 -0
- package/lib/module/components/Reels/ReelsSeries/MediaControls/BottomControls.js +92 -17
- package/lib/module/components/Reels/ReelsSeries/MediaControls/BottomControls.js.map +1 -1
- package/lib/module/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.js +65 -2
- package/lib/module/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.js.map +1 -1
- package/lib/module/components/Reels/ReelsSeries/MediaControls/RightControls.js +2 -1
- package/lib/module/components/Reels/ReelsSeries/MediaControls/RightControls.js.map +1 -1
- package/lib/module/components/Reels/ReelsSeries/Model/SettingModal.js +4 -2
- package/lib/module/components/Reels/ReelsSeries/Model/SettingModal.js.map +1 -1
- package/lib/module/components/Reels/ReelsSeries/ReelsSeries.js +80 -46
- package/lib/module/components/Reels/ReelsSeries/ReelsSeries.js.map +1 -1
- package/lib/module/components/Reels/ReelsSeries/ReelsSeriesItem.js +78 -29
- package/lib/module/components/Reels/ReelsSeries/ReelsSeriesItem.js.map +1 -1
- package/lib/module/components/Reels/ReelsSeries/components/VideoControls/QualityControl.js +21 -34
- package/lib/module/components/Reels/ReelsSeries/components/VideoControls/QualityControl.js.map +1 -1
- package/lib/module/components/Reels/ReelsSeries/useReelsWatchProgress.js +58 -0
- package/lib/module/components/Reels/ReelsSeries/useReelsWatchProgress.js.map +1 -0
- package/lib/module/components/Reels/ReelsSeries/utils/quality.js +44 -0
- package/lib/module/components/Reels/ReelsSeries/utils/quality.js.map +1 -0
- package/lib/module/components/Reels/index.js +1 -0
- package/lib/module/components/Reels/index.js.map +1 -1
- package/lib/module/components/Search/One.js +7 -4
- package/lib/module/components/Search/One.js.map +1 -1
- package/lib/module/components/Search/components/SearchCard.js +59 -7
- package/lib/module/components/Search/components/SearchCard.js.map +1 -1
- package/lib/module/components/User/PurchaseHistory/PurchaseHistory.js +2 -1
- package/lib/module/components/User/PurchaseHistory/PurchaseHistory.js.map +1 -1
- package/lib/module/components/User/WatchHistory/WatchHistory.js +1 -0
- package/lib/module/components/User/WatchHistory/WatchHistory.js.map +1 -1
- package/lib/module/components/User/WatchLater/WatchLater.js +1 -0
- package/lib/module/components/User/WatchLater/WatchLater.js.map +1 -1
- package/lib/module/components/common/AppStatusBar.js +2 -1
- package/lib/module/components/common/AppStatusBar.js.map +1 -1
- package/lib/module/components/index.js +1 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/constants/dummySections.js +47 -5
- package/lib/module/constants/dummySections.js.map +1 -1
- package/lib/module/hooks/Images/index.js +5 -0
- package/lib/module/hooks/Images/index.js.map +1 -0
- package/lib/module/hooks/Images/useImageLoader.js +168 -0
- package/lib/module/hooks/Images/useImageLoader.js.map +1 -0
- package/lib/module/hooks/Images/useImageValidation.js +36 -0
- package/lib/module/hooks/Images/useImageValidation.js.map +1 -0
- package/lib/module/hooks/index.js +3 -0
- package/lib/module/hooks/index.js.map +1 -1
- package/lib/module/hooks/useAdTracking.js +270 -0
- package/lib/module/hooks/useAdTracking.js.map +1 -0
- package/lib/module/hooks/useCards.js +164 -0
- package/lib/module/hooks/useCards.js.map +1 -0
- package/lib/module/hooks/usePaginatedSection.js +11 -6
- package/lib/module/hooks/usePaginatedSection.js.map +1 -1
- package/lib/module/hooks/useSplashCache.js +78 -60
- package/lib/module/hooks/useSplashCache.js.map +1 -1
- package/lib/module/theme/ThemeProvider.js +14 -2
- package/lib/module/theme/ThemeProvider.js.map +1 -1
- package/lib/module/theme/hook/index.js +0 -1
- package/lib/module/theme/hook/index.js.map +1 -1
- package/lib/module/theme/hook/useInternalTheme.js +21 -7
- package/lib/module/theme/hook/useInternalTheme.js.map +1 -1
- package/lib/module/theme/themes.js +2 -0
- package/lib/module/theme/themes.js.map +1 -1
- package/lib/module/theme/utils/validateColor.js +84 -0
- package/lib/module/theme/utils/validateColor.js.map +1 -0
- package/lib/module/utils/colorUtils.js +68 -0
- package/lib/module/utils/colorUtils.js.map +1 -0
- package/lib/typescript/src/components/Auth/{ForgotPassword → One/ForgotPassword}/ForgotPassword.d.ts +1 -1
- package/lib/typescript/src/components/Auth/One/ForgotPassword/ForgotPassword.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/{Login → One/Login}/LoginWithEmail.d.ts +1 -1
- package/lib/typescript/src/components/Auth/One/Login/LoginWithEmail.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/{Login → One/Login}/LoginWithPhone.d.ts +1 -1
- package/lib/typescript/src/components/Auth/One/Login/LoginWithPhone.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/{OTP → One/OTP}/OTP.d.ts +1 -1
- package/lib/typescript/src/components/Auth/One/OTP/OTP.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/{QrLogin → One/QrLogin}/QrLogin.d.ts +3 -1
- package/lib/typescript/src/components/Auth/One/QrLogin/QrLogin.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/{QrLogin → One/QrLogin}/components/QrViewArea.d.ts +1 -1
- package/lib/typescript/src/components/Auth/One/QrLogin/components/QrViewArea.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/{SignUp → One/SignUp}/SignUp.d.ts +1 -1
- package/lib/typescript/src/components/Auth/One/SignUp/SignUp.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/{SplashScreen → One/SplashScreen}/SplashScreen.d.ts +1 -1
- package/lib/typescript/src/components/Auth/One/SplashScreen/SplashScreen.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.d.ts +14 -0
- package/lib/typescript/src/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/One/SplashScreen/components/SplashLottie/SplashLottie.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/One/SplashScreen/components/SplashVideo/SplashVideo.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/One/index.d.ts +234 -0
- package/lib/typescript/src/components/Auth/One/index.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/AuthHeader/AuthHeader.d.ts +16 -0
- package/lib/typescript/src/components/Auth/Two/AuthHeader/AuthHeader.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/ForgotPassword/ForgotPassword.d.ts +53 -0
- package/lib/typescript/src/components/Auth/Two/ForgotPassword/ForgotPassword.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/Login/AuthLoginShell.d.ts +17 -0
- package/lib/typescript/src/components/Auth/Two/Login/AuthLoginShell.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/Login/LoginWithEmail.d.ts +52 -0
- package/lib/typescript/src/components/Auth/Two/Login/LoginWithEmail.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/Login/LoginWithPhone.d.ts +37 -0
- package/lib/typescript/src/components/Auth/Two/Login/LoginWithPhone.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/OTP/OTP.d.ts +63 -0
- package/lib/typescript/src/components/Auth/Two/OTP/OTP.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/QrLogin/QrLogin.d.ts +19 -0
- package/lib/typescript/src/components/Auth/Two/QrLogin/QrLogin.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/QrLogin/components/QrViewArea.d.ts +14 -0
- package/lib/typescript/src/components/Auth/Two/QrLogin/components/QrViewArea.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/SignUp/SignUp.d.ts +67 -0
- package/lib/typescript/src/components/Auth/Two/SignUp/SignUp.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/SplashScreen/SplashScreen.d.ts +35 -0
- package/lib/typescript/src/components/Auth/Two/SplashScreen/SplashScreen.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashImage/SplashImage.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.d.ts +17 -0
- package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.d.ts +20 -0
- package/lib/typescript/src/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/Two/index.d.ts +220 -0
- package/lib/typescript/src/components/Auth/Two/index.d.ts.map +1 -0
- package/lib/typescript/src/components/Auth/index.d.ts +447 -232
- package/lib/typescript/src/components/Auth/index.d.ts.map +1 -1
- package/lib/typescript/src/components/BackgroundLayout/BackgroundLayout.d.ts.map +1 -1
- package/lib/typescript/src/components/BackgroundLayout/BackgroundLayoutOne.d.ts +7 -0
- package/lib/typescript/src/components/BackgroundLayout/BackgroundLayoutOne.d.ts.map +1 -0
- package/lib/typescript/src/components/BottomSheet/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/src/components/BottomSheet/BottomSheetOne.d.ts +19 -0
- package/lib/typescript/src/components/BottomSheet/BottomSheetOne.d.ts.map +1 -0
- package/lib/typescript/src/components/BottomSheet/index.d.ts +2 -0
- package/lib/typescript/src/components/BottomSheet/index.d.ts.map +1 -1
- package/lib/typescript/src/components/Button/PrimaryBtn.d.ts +1 -0
- package/lib/typescript/src/components/Button/PrimaryBtn.d.ts.map +1 -1
- package/lib/typescript/src/components/Button/index.d.ts +1 -0
- package/lib/typescript/src/components/Button/index.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Category/Category.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Category/CategroyTwo.d.ts +26 -0
- package/lib/typescript/src/components/Content/Card/Category/CategroyTwo.d.ts.map +1 -0
- package/lib/typescript/src/components/Content/Card/NowWatching/NowWatching.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Sliders/Styles/One.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Sliders/Styles/Three.d.ts +19 -0
- package/lib/typescript/src/components/Content/Card/Sliders/Styles/Three.d.ts.map +1 -0
- package/lib/typescript/src/components/Content/Card/Sliders/Styles/Two.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Sliders/index.d.ts +11 -0
- package/lib/typescript/src/components/Content/Card/Sliders/index.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Styles/Five.d.ts +13 -1
- package/lib/typescript/src/components/Content/Card/Styles/Five.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Styles/Four.d.ts +13 -1
- package/lib/typescript/src/components/Content/Card/Styles/Four.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Styles/One.d.ts +15 -3
- package/lib/typescript/src/components/Content/Card/Styles/One.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Styles/RotateInOut.d.ts +13 -1
- package/lib/typescript/src/components/Content/Card/Styles/RotateInOut.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Styles/Six.d.ts +1 -0
- package/lib/typescript/src/components/Content/Card/Styles/Six.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Styles/Three.d.ts +13 -5
- package/lib/typescript/src/components/Content/Card/Styles/Three.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Styles/TopTen.d.ts +1 -0
- package/lib/typescript/src/components/Content/Card/Styles/TopTen.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/Styles/Two.d.ts +13 -1
- package/lib/typescript/src/components/Content/Card/Styles/Two.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/components/AdsPoster.d.ts +26 -0
- package/lib/typescript/src/components/Content/Card/components/AdsPoster.d.ts.map +1 -0
- package/lib/typescript/src/components/Content/Card/components/CardPoster.d.ts +4 -1
- package/lib/typescript/src/components/Content/Card/components/CardPoster.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/components/NavigateToMore.d.ts +3 -0
- package/lib/typescript/src/components/Content/Card/components/NavigateToMore.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Card/components/index.d.ts +2 -0
- package/lib/typescript/src/components/Content/Card/components/index.d.ts.map +1 -0
- package/lib/typescript/src/components/Content/Card/index.d.ts +76 -6
- package/lib/typescript/src/components/Content/Card/index.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Content.d.ts +2 -51
- package/lib/typescript/src/components/Content/Content.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/Sections.d.ts +2 -39
- package/lib/typescript/src/components/Content/Sections.d.ts.map +1 -1
- package/lib/typescript/src/components/Content/types.d.ts +149 -0
- package/lib/typescript/src/components/Content/types.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/MoreContentList.d.ts.map +1 -1
- package/lib/typescript/src/components/ContentView/One/ContentViewOne.d.ts +15 -0
- package/lib/typescript/src/components/ContentView/One/ContentViewOne.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/{components → One/components}/AboutSection.d.ts +1 -1
- package/lib/typescript/src/components/ContentView/One/components/AboutSection.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/{components → One/components}/CastCard.d.ts +1 -1
- package/lib/typescript/src/components/ContentView/One/components/CastCard.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/{components → One/components}/EpisodeCard.d.ts +1 -1
- package/lib/typescript/src/components/ContentView/One/components/EpisodeCard.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/{components → One/components}/GenreTags.d.ts +1 -1
- package/lib/typescript/src/components/ContentView/One/components/GenreTags.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/{components → One/components}/HeroBanner.d.ts +1 -1
- package/lib/typescript/src/components/ContentView/One/components/HeroBanner.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/{components → One/components}/MiniInfo.d.ts +1 -1
- package/lib/typescript/src/components/ContentView/One/components/MiniInfo.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/One/components/PlayButton.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/{components → One/components}/Title.d.ts +1 -1
- package/lib/typescript/src/components/ContentView/One/components/Title.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/One/components/TrailerButton.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/ContentViewTwo.d.ts +18 -0
- package/lib/typescript/src/components/ContentView/Two/ContentViewTwo.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/AboutSection.d.ts +27 -0
- package/lib/typescript/src/components/ContentView/Two/components/AboutSection.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/Details.d.ts +15 -0
- package/lib/typescript/src/components/ContentView/Two/components/Details.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/EpisodeCard.d.ts +23 -0
- package/lib/typescript/src/components/ContentView/Two/components/EpisodeCard.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/GenreTags.d.ts +22 -0
- package/lib/typescript/src/components/ContentView/Two/components/GenreTags.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/HeroBanner.d.ts +8 -0
- package/lib/typescript/src/components/ContentView/Two/components/HeroBanner.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/LikeShareActions.d.ts +25 -0
- package/lib/typescript/src/components/ContentView/Two/components/LikeShareActions.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/MoreLikeThisContentList .d.ts +26 -0
- package/lib/typescript/src/components/ContentView/Two/components/MoreLikeThisContentList .d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/PlayOrTrailer.d.ts +21 -0
- package/lib/typescript/src/components/ContentView/Two/components/PlayOrTrailer.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/SectionTabs.d.ts +28 -0
- package/lib/typescript/src/components/ContentView/Two/components/SectionTabs.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/Title.d.ts +34 -0
- package/lib/typescript/src/components/ContentView/Two/components/Title.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/Two/components/index.d.ts +15 -0
- package/lib/typescript/src/components/ContentView/Two/components/index.d.ts.map +1 -0
- package/lib/typescript/src/components/ContentView/index.d.ts +6 -1
- package/lib/typescript/src/components/ContentView/index.d.ts.map +1 -1
- package/lib/typescript/src/components/Headers/Four.d.ts +18 -0
- package/lib/typescript/src/components/Headers/Four.d.ts.map +1 -0
- package/lib/typescript/src/components/Headers/Three.d.ts +9 -1
- package/lib/typescript/src/components/Headers/Three.d.ts.map +1 -1
- package/lib/typescript/src/components/Headers/index.d.ts +1 -0
- package/lib/typescript/src/components/Headers/index.d.ts.map +1 -1
- package/lib/typescript/src/components/Input/Input.d.ts +2 -0
- package/lib/typescript/src/components/Input/Input.d.ts.map +1 -1
- package/lib/typescript/src/components/Input/InputThree.d.ts +22 -0
- package/lib/typescript/src/components/Input/InputThree.d.ts.map +1 -0
- package/lib/typescript/src/components/Input/PhoneNumberInput.d.ts.map +1 -1
- package/lib/typescript/src/components/Input/PhoneNumberInputTwo.d.ts +26 -0
- package/lib/typescript/src/components/Input/PhoneNumberInputTwo.d.ts.map +1 -0
- package/lib/typescript/src/components/Loader/Loader.d.ts +2 -0
- package/lib/typescript/src/components/Loader/Loader.d.ts.map +1 -1
- package/lib/typescript/src/components/Logo/Logo.d.ts +1 -1
- package/lib/typescript/src/components/Logo/Logo.d.ts.map +1 -1
- package/lib/typescript/src/components/NewRelease/NewReleaseSheet.d.ts +10 -0
- package/lib/typescript/src/components/NewRelease/NewReleaseSheet.d.ts.map +1 -0
- package/lib/typescript/src/components/NewRelease/index.d.ts +2 -0
- package/lib/typescript/src/components/NewRelease/index.d.ts.map +1 -0
- package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/BottomControls.d.ts +2 -0
- package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/BottomControls.d.ts.map +1 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.d.ts +1 -0
- package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.d.ts.map +1 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/MediaControls/RightControls.d.ts.map +1 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/Model/SettingModal.d.ts +2 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/Model/SettingModal.d.ts.map +1 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/ReelsSeries.d.ts +9 -2
- package/lib/typescript/src/components/Reels/ReelsSeries/ReelsSeries.d.ts.map +1 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/ReelsSeriesItem.d.ts +11 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/ReelsSeriesItem.d.ts.map +1 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/components/VideoControls/QualityControl.d.ts +11 -0
- package/lib/typescript/src/components/Reels/ReelsSeries/components/VideoControls/QualityControl.d.ts.map +1 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/types.d.ts +15 -0
- package/lib/typescript/src/components/Reels/ReelsSeries/types.d.ts.map +1 -1
- package/lib/typescript/src/components/Reels/ReelsSeries/useReelsWatchProgress.d.ts +34 -0
- package/lib/typescript/src/components/Reels/ReelsSeries/useReelsWatchProgress.d.ts.map +1 -0
- package/lib/typescript/src/components/Reels/ReelsSeries/utils/quality.d.ts +10 -0
- package/lib/typescript/src/components/Reels/ReelsSeries/utils/quality.d.ts.map +1 -0
- package/lib/typescript/src/components/Reels/index.d.ts +1 -0
- package/lib/typescript/src/components/Reels/index.d.ts.map +1 -1
- package/lib/typescript/src/components/Search/One.d.ts.map +1 -1
- package/lib/typescript/src/components/Search/components/SearchCard.d.ts +1 -0
- package/lib/typescript/src/components/Search/components/SearchCard.d.ts.map +1 -1
- package/lib/typescript/src/components/User/PurchaseHistory/PurchaseHistory.d.ts.map +1 -1
- package/lib/typescript/src/components/User/WatchHistory/WatchHistory.d.ts.map +1 -1
- package/lib/typescript/src/components/User/WatchLater/WatchLater.d.ts.map +1 -1
- package/lib/typescript/src/components/common/AppStatusBar.d.ts +1 -0
- package/lib/typescript/src/components/common/AppStatusBar.d.ts.map +1 -1
- package/lib/typescript/src/components/index.d.ts +1 -0
- package/lib/typescript/src/components/index.d.ts.map +1 -1
- package/lib/typescript/src/constants/dummySections.d.ts +8 -1
- package/lib/typescript/src/constants/dummySections.d.ts.map +1 -1
- package/lib/typescript/src/hooks/Images/index.d.ts +3 -0
- package/lib/typescript/src/hooks/Images/index.d.ts.map +1 -0
- package/lib/typescript/src/hooks/Images/useImageLoader.d.ts +36 -0
- package/lib/typescript/src/hooks/Images/useImageLoader.d.ts.map +1 -0
- package/lib/typescript/src/hooks/Images/useImageValidation.d.ts +17 -0
- package/lib/typescript/src/hooks/Images/useImageValidation.d.ts.map +1 -0
- package/lib/typescript/src/hooks/index.d.ts +3 -0
- package/lib/typescript/src/hooks/index.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useAdTracking.d.ts +39 -0
- package/lib/typescript/src/hooks/useAdTracking.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useCards.d.ts +36 -0
- package/lib/typescript/src/hooks/useCards.d.ts.map +1 -0
- package/lib/typescript/src/hooks/usePaginatedSection.d.ts +12 -2
- package/lib/typescript/src/hooks/usePaginatedSection.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useSplashCache.d.ts.map +1 -1
- package/lib/typescript/src/theme/ThemeProvider.d.ts +2 -0
- package/lib/typescript/src/theme/ThemeProvider.d.ts.map +1 -1
- package/lib/typescript/src/theme/hook/index.d.ts +0 -1
- package/lib/typescript/src/theme/hook/index.d.ts.map +1 -1
- package/lib/typescript/src/theme/hook/useInternalTheme.d.ts.map +1 -1
- package/lib/typescript/src/theme/themes.d.ts +1 -0
- package/lib/typescript/src/theme/themes.d.ts.map +1 -1
- package/lib/typescript/src/theme/utils/validateColor.d.ts +21 -0
- package/lib/typescript/src/theme/utils/validateColor.d.ts.map +1 -0
- package/lib/typescript/src/types/content/content-view.types.d.ts +40 -1
- package/lib/typescript/src/types/content/content-view.types.d.ts.map +1 -1
- package/lib/typescript/src/types/sections/index.d.ts +7 -4
- package/lib/typescript/src/types/sections/index.d.ts.map +1 -1
- package/lib/typescript/src/utils/colorUtils.d.ts +19 -0
- package/lib/typescript/src/utils/colorUtils.d.ts.map +1 -0
- package/package.json +13 -4
- package/src/components/Auth/AuthProvider/AuthProvider.tsx +6 -2
- package/src/components/Auth/One/ForgotPassword/ForgotPassword.tsx +324 -0
- package/src/components/Auth/One/Login/LoginWithEmail.tsx +455 -0
- package/src/components/Auth/{Login → One/Login}/LoginWithPhone.tsx +12 -12
- package/src/components/Auth/One/OTP/OTP.tsx +465 -0
- package/src/components/Auth/One/QrLogin/QrLogin.tsx +602 -0
- package/src/components/Auth/One/QrLogin/components/QrViewArea.tsx +423 -0
- package/src/components/Auth/One/SignUp/SignUp.tsx +479 -0
- package/src/components/Auth/{SplashScreen → One/SplashScreen}/SplashScreen.tsx +10 -6
- package/src/components/Auth/One/SplashScreen/components/SplashImage/SplashImage.tsx +103 -0
- package/src/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashLottie/SplashLottie.tsx +1 -1
- package/src/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashVideo/SplashVideo.tsx +35 -25
- package/src/components/Auth/One/index.ts +24 -0
- package/src/components/Auth/Two/AuthHeader/AuthHeader.tsx +108 -0
- package/src/components/Auth/{ForgotPassword → Two/ForgotPassword}/ForgotPassword.tsx +62 -35
- package/src/components/Auth/Two/Login/AuthLoginShell.tsx +173 -0
- package/src/components/Auth/Two/Login/LoginWithEmail.tsx +279 -0
- package/src/components/Auth/Two/Login/LoginWithPhone.tsx +188 -0
- package/src/components/Auth/{OTP → Two/OTP}/OTP.tsx +92 -81
- package/src/components/Auth/Two/QrLogin/QrLogin.tsx +602 -0
- package/src/components/Auth/Two/QrLogin/components/QrViewArea.tsx +423 -0
- package/src/components/Auth/Two/SignUp/SignUp.tsx +472 -0
- package/src/components/Auth/Two/SplashScreen/SplashScreen.tsx +248 -0
- package/src/components/Auth/{SplashScreen → Two/SplashScreen}/components/SplashImage/SplashImage.tsx +1 -1
- package/src/components/Auth/Two/SplashScreen/components/SplashLottie/SplashLottie.tsx +77 -0
- package/src/components/Auth/Two/SplashScreen/components/SplashVideo/SplashVideo.tsx +178 -0
- package/src/components/Auth/Two/index.ts +28 -0
- package/src/components/Auth/index.ts +7 -22
- package/src/components/BackgroundLayout/BackgroundLayout.tsx +2 -0
- package/src/components/BackgroundLayout/BackgroundLayoutOne.tsx +56 -0
- package/src/components/BottomSheet/BottomSheet.tsx +6 -1
- package/src/components/BottomSheet/BottomSheetOne.tsx +220 -0
- package/src/components/BottomSheet/index.ts +2 -0
- package/src/components/Button/PrimaryBtn.tsx +10 -2
- package/src/components/Content/Card/Category/Category.tsx +104 -10
- package/src/components/Content/Card/Category/CategroyTwo.tsx +429 -0
- package/src/components/Content/Card/NowWatching/NowWatching.tsx +281 -136
- package/src/components/Content/Card/Sliders/Styles/One.tsx +248 -152
- package/src/components/Content/Card/Sliders/Styles/Three.tsx +935 -0
- package/src/components/Content/Card/Sliders/Styles/Two.tsx +171 -102
- package/src/components/Content/Card/Sliders/index.ts +2 -0
- package/src/components/Content/Card/Styles/Five.tsx +162 -62
- package/src/components/Content/Card/Styles/Four.tsx +165 -85
- package/src/components/Content/Card/Styles/One.tsx +162 -71
- package/src/components/Content/Card/Styles/RotateInOut.tsx +158 -60
- package/src/components/Content/Card/Styles/Six.tsx +242 -142
- package/src/components/Content/Card/Styles/Three.tsx +160 -162
- package/src/components/Content/Card/Styles/TopTen.tsx +231 -191
- package/src/components/Content/Card/Styles/Two.tsx +183 -79
- package/src/components/Content/Card/components/AdsPoster.tsx +202 -0
- package/src/components/Content/Card/components/CardPoster.tsx +250 -151
- package/src/components/Content/Card/components/NavigateToMore.tsx +29 -1
- package/src/components/Content/Card/components/index.ts +1 -0
- package/src/components/Content/Content.tsx +103 -119
- package/src/components/Content/Sections.tsx +51 -45
- package/src/components/Content/types.ts +176 -0
- package/src/components/ContentView/MoreContentList.tsx +1 -0
- package/src/components/ContentView/{ContentView.tsx → One/ContentViewOne.tsx} +8 -7
- package/src/components/ContentView/{components → One/components}/AboutSection.tsx +3 -3
- package/src/components/ContentView/{components → One/components}/CastCard.tsx +3 -3
- package/src/components/ContentView/{components → One/components}/EpisodeCard.tsx +7 -8
- package/src/components/ContentView/{components → One/components}/GenreTags.tsx +3 -3
- package/src/components/ContentView/{components → One/components}/HeroBanner.tsx +44 -59
- package/src/components/ContentView/{components → One/components}/MiniInfo.tsx +69 -5
- package/src/components/ContentView/{components → One/components}/PlayButton.tsx +1 -1
- package/src/components/ContentView/{components → One/components}/Title.tsx +2 -2
- package/src/components/ContentView/{components → One/components}/TrailerButton.tsx +2 -2
- package/src/components/ContentView/Two/ContentViewTwo.tsx +343 -0
- package/src/components/ContentView/Two/components/AboutSection.tsx +216 -0
- package/src/components/ContentView/Two/components/Details.tsx +193 -0
- package/src/components/ContentView/Two/components/EpisodeCard.tsx +602 -0
- package/src/components/ContentView/Two/components/GenreTags.tsx +123 -0
- package/src/components/ContentView/Two/components/HeroBanner.tsx +402 -0
- package/src/components/ContentView/Two/components/LikeShareActions.tsx +125 -0
- package/src/components/ContentView/Two/components/MoreLikeThisContentList .tsx +305 -0
- package/src/components/ContentView/Two/components/PlayOrTrailer.tsx +133 -0
- package/src/components/ContentView/Two/components/SectionTabs.tsx +177 -0
- package/src/components/ContentView/Two/components/Title.tsx +226 -0
- package/src/components/ContentView/Two/components/index.ts +15 -0
- package/src/components/ContentView/index.ts +7 -1
- package/src/components/Headers/Four.tsx +83 -0
- package/src/components/Headers/Three.tsx +88 -25
- package/src/components/Headers/index.ts +2 -0
- package/src/components/Input/Input.ts +4 -0
- package/src/components/Input/InputThree.tsx +212 -0
- package/src/components/Input/PhoneNumberInput.tsx +4 -2
- package/src/components/Input/PhoneNumberInputTwo.tsx +418 -0
- package/src/components/Loader/Loader.tsx +25 -9
- package/src/components/Logo/Logo.tsx +53 -34
- package/src/components/NewRelease/NewReleaseSheet.tsx +250 -0
- package/src/components/NewRelease/index.ts +1 -0
- package/src/components/Reels/ReelsSeries/MediaControls/BottomControls.tsx +92 -27
- package/src/components/Reels/ReelsSeries/MediaControls/MediaControlsProvider.tsx +81 -1
- package/src/components/Reels/ReelsSeries/MediaControls/RightControls.tsx +4 -1
- package/src/components/Reels/ReelsSeries/Model/SettingModal.tsx +6 -3
- package/src/components/Reels/ReelsSeries/ReelsSeries.tsx +88 -55
- package/src/components/Reels/ReelsSeries/ReelsSeriesItem.tsx +92 -30
- package/src/components/Reels/ReelsSeries/components/VideoControls/QualityControl.tsx +35 -38
- package/src/components/Reels/ReelsSeries/types.ts +16 -0
- package/src/components/Reels/ReelsSeries/useReelsWatchProgress.ts +85 -0
- package/src/components/Reels/ReelsSeries/utils/quality.ts +48 -0
- package/src/components/Reels/index.ts +1 -0
- package/src/components/Search/One.tsx +8 -5
- package/src/components/Search/components/SearchCard.tsx +68 -11
- package/src/components/User/PurchaseHistory/PurchaseHistory.tsx +1 -0
- package/src/components/User/WatchHistory/WatchHistory.tsx +1 -0
- package/src/components/User/WatchLater/WatchLater.tsx +1 -0
- package/src/components/common/AppStatusBar.tsx +7 -1
- package/src/components/index.ts +1 -0
- package/src/constants/dummySections.ts +54 -3
- package/src/hooks/Images/index.ts +2 -0
- package/src/hooks/Images/useImageLoader.ts +206 -0
- package/src/hooks/Images/useImageValidation.ts +36 -0
- package/src/hooks/index.ts +3 -0
- package/src/hooks/useAdTracking.ts +349 -0
- package/src/hooks/useCards.ts +228 -0
- package/src/hooks/usePaginatedSection.ts +26 -7
- package/src/hooks/useSplashCache.ts +88 -69
- package/src/theme/ThemeProvider.tsx +15 -2
- package/src/theme/hook/index.ts +0 -1
- package/src/theme/hook/useInternalTheme.ts +22 -13
- package/src/theme/themes.ts +3 -0
- package/src/theme/utils/validateColor.ts +127 -0
- package/src/types/content/content-view.types.ts +43 -1
- package/src/types/sections/index.ts +7 -4
- package/src/utils/colorUtils.ts +70 -0
- package/lib/module/components/Auth/ForgotPassword/ForgotPassword.js.map +0 -1
- package/lib/module/components/Auth/Login/LoginWithEmail.js +0 -314
- package/lib/module/components/Auth/Login/LoginWithEmail.js.map +0 -1
- package/lib/module/components/Auth/Login/LoginWithPhone.js.map +0 -1
- package/lib/module/components/Auth/OTP/OTP.js.map +0 -1
- package/lib/module/components/Auth/QrLogin/QrLogin.js +0 -313
- package/lib/module/components/Auth/QrLogin/QrLogin.js.map +0 -1
- package/lib/module/components/Auth/QrLogin/components/QrViewArea.js +0 -243
- package/lib/module/components/Auth/QrLogin/components/QrViewArea.js.map +0 -1
- package/lib/module/components/Auth/SignUp/SignUp.js +0 -352
- package/lib/module/components/Auth/SignUp/SignUp.js.map +0 -1
- package/lib/module/components/Auth/SplashScreen/SplashScreen.js.map +0 -1
- package/lib/module/components/Auth/SplashScreen/components/SplashImage/SplashImage.js.map +0 -1
- package/lib/module/components/Auth/SplashScreen/components/SplashLottie/SplashLottie.js.map +0 -1
- package/lib/module/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.js.map +0 -1
- package/lib/module/components/ContentView/ContentView.js.map +0 -1
- package/lib/module/components/ContentView/components/AboutSection.js.map +0 -1
- package/lib/module/components/ContentView/components/CastCard.js.map +0 -1
- package/lib/module/components/ContentView/components/EpisodeCard.js.map +0 -1
- package/lib/module/components/ContentView/components/GenreTags.js.map +0 -1
- package/lib/module/components/ContentView/components/HeroBanner.js.map +0 -1
- package/lib/module/components/ContentView/components/MiniInfo.js.map +0 -1
- package/lib/module/components/ContentView/components/PlayButton.js.map +0 -1
- package/lib/module/components/ContentView/components/Title.js.map +0 -1
- package/lib/module/components/ContentView/components/TrailerButton.js.map +0 -1
- package/lib/module/theme/hook/useThemeStatusBar.js +0 -33
- package/lib/module/theme/hook/useThemeStatusBar.js.map +0 -1
- package/lib/typescript/src/components/Auth/ForgotPassword/ForgotPassword.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/Login/LoginWithEmail.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/Login/LoginWithPhone.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/OTP/OTP.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/QrLogin/QrLogin.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/QrLogin/components/QrViewArea.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/SignUp/SignUp.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/SplashScreen/SplashScreen.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/SplashScreen/components/SplashImage/SplashImage.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/SplashScreen/components/SplashLottie/SplashLottie.d.ts.map +0 -1
- package/lib/typescript/src/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/ContentView.d.ts +0 -15
- package/lib/typescript/src/components/ContentView/ContentView.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/AboutSection.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/CastCard.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/EpisodeCard.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/GenreTags.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/HeroBanner.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/MiniInfo.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/PlayButton.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/Title.d.ts.map +0 -1
- package/lib/typescript/src/components/ContentView/components/TrailerButton.d.ts.map +0 -1
- package/lib/typescript/src/theme/hook/useThemeStatusBar.d.ts +0 -10
- package/lib/typescript/src/theme/hook/useThemeStatusBar.d.ts.map +0 -1
- package/src/components/Auth/Login/LoginWithEmail.tsx +0 -441
- package/src/components/Auth/QrLogin/QrLogin.tsx +0 -342
- package/src/components/Auth/QrLogin/components/QrViewArea.tsx +0 -329
- package/src/components/Auth/SignUp/SignUp.tsx +0 -462
- package/src/theme/hook/useThemeStatusBar.ts +0 -42
- /package/lib/typescript/src/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashLottie/SplashLottie.d.ts +0 -0
- /package/lib/typescript/src/components/Auth/{SplashScreen → One/SplashScreen}/components/SplashVideo/SplashVideo.d.ts +0 -0
- /package/lib/typescript/src/components/Auth/{SplashScreen → Two/SplashScreen}/components/SplashImage/SplashImage.d.ts +0 -0
- /package/lib/typescript/src/components/ContentView/{components → One/components}/PlayButton.d.ts +0 -0
- /package/lib/typescript/src/components/ContentView/{components → One/components}/TrailerButton.d.ts +0 -0
|
@@ -3,37 +3,45 @@
|
|
|
3
3
|
* @lastModified Fri 17 Oct 2025 at 09:55 PM
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import { useEffect, useState } from 'react';
|
|
6
|
+
import { useEffect, useRef, useState } from 'react';
|
|
7
7
|
import RNFS from 'react-native-fs';
|
|
8
8
|
import CryptoJS from 'crypto-js';
|
|
9
9
|
import { MMKV } from 'react-native-mmkv';
|
|
10
|
+
import NetInfo from '@react-native-community/netinfo';
|
|
10
11
|
import { useSplashStore } from '../store/splashStore';
|
|
11
12
|
|
|
12
|
-
const
|
|
13
|
-
const
|
|
13
|
+
const mmkvStorage = new MMKV();
|
|
14
|
+
const activeDownloadTasks = new Map<string, Promise<string | null>>();
|
|
15
|
+
const DEFAULT_EXTENSION = 'bin';
|
|
16
|
+
const CACHE_FILE_PREFIX = 'splash_';
|
|
14
17
|
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
'jpeg',
|
|
20
|
-
'png',
|
|
21
|
-
'webp',
|
|
22
|
-
] as const;
|
|
18
|
+
const isNetworkOnline = async () => {
|
|
19
|
+
const state = await NetInfo.fetch();
|
|
20
|
+
return !!state.isConnected;
|
|
21
|
+
};
|
|
23
22
|
|
|
24
|
-
const
|
|
23
|
+
const getUrlExtension = (url: string): string => {
|
|
25
24
|
try {
|
|
25
|
+
if (!url || typeof url !== 'string') return DEFAULT_EXTENSION;
|
|
26
26
|
const cleanUrl = url.split('?')[0];
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
const dot = cleanUrl?.lastIndexOf('.') ?? -1;
|
|
28
|
+
if (dot === -1) return DEFAULT_EXTENSION;
|
|
29
|
+
|
|
30
|
+
const ext = cleanUrl?.substring(dot + 1).toLowerCase() ?? DEFAULT_EXTENSION;
|
|
31
|
+
if (!/^[a-z0-9]+$/i.test(ext)) return DEFAULT_EXTENSION;
|
|
32
|
+
return ext;
|
|
31
33
|
} catch {
|
|
32
|
-
return
|
|
34
|
+
return DEFAULT_EXTENSION;
|
|
33
35
|
}
|
|
34
36
|
};
|
|
35
37
|
|
|
36
|
-
const
|
|
38
|
+
const buildCachePath = (url: string, cacheKey: string, extension: string) => {
|
|
39
|
+
const ext = extension.replace(/^\./, '') || DEFAULT_EXTENSION;
|
|
40
|
+
const hash = CryptoJS.MD5(`${url}|${cacheKey}|${ext}`).toString();
|
|
41
|
+
return `${RNFS.CachesDirectoryPath}/${CACHE_FILE_PREFIX}${hash}.${ext}`;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const downloadAndCacheFile = async (
|
|
37
45
|
url: string,
|
|
38
46
|
extension: string,
|
|
39
47
|
cacheKey: string,
|
|
@@ -41,52 +49,62 @@ const downloadAndCacheAsset = async (
|
|
|
41
49
|
): Promise<string | null> => {
|
|
42
50
|
if (!url?.trim()) return null;
|
|
43
51
|
|
|
44
|
-
const
|
|
45
|
-
const hash = CryptoJS.MD5(`${url}|${cacheKey}|${ext}`).toString();
|
|
46
|
-
const localFile = `${RNFS.CachesDirectoryPath}/splash_${hash}.${ext}`;
|
|
52
|
+
const localFile = buildCachePath(url, cacheKey, extension);
|
|
47
53
|
|
|
48
|
-
if (
|
|
49
|
-
return
|
|
54
|
+
if (activeDownloadTasks.has(localFile)) {
|
|
55
|
+
return activeDownloadTasks.get(localFile)!;
|
|
50
56
|
}
|
|
51
57
|
|
|
52
58
|
const task = (async () => {
|
|
59
|
+
let oldFile: string | null = null;
|
|
60
|
+
|
|
53
61
|
try {
|
|
54
|
-
const
|
|
62
|
+
const savedPath = mmkvStorage.getString(cacheKey);
|
|
63
|
+
oldFile = savedPath && savedPath !== localFile ? savedPath : null;
|
|
55
64
|
|
|
56
|
-
if (
|
|
57
|
-
const
|
|
58
|
-
if (
|
|
59
|
-
await RNFS.unlink(oldFile).catch(() => {});
|
|
60
|
-
}
|
|
65
|
+
if (!force && savedPath === localFile) {
|
|
66
|
+
const exists = await RNFS.exists(localFile);
|
|
67
|
+
if (exists) return localFile;
|
|
61
68
|
}
|
|
62
69
|
|
|
63
|
-
if (!
|
|
64
|
-
|
|
65
|
-
if (exists && savedHash === hash) {
|
|
66
|
-
return localFile;
|
|
67
|
-
}
|
|
70
|
+
if (!(await isNetworkOnline())) {
|
|
71
|
+
return oldFile && (await RNFS.exists(oldFile)) ? oldFile : null;
|
|
68
72
|
}
|
|
69
73
|
|
|
70
|
-
const
|
|
74
|
+
const result = await RNFS.downloadFile({
|
|
71
75
|
fromUrl: url,
|
|
72
76
|
toFile: localFile,
|
|
73
77
|
cacheable: true,
|
|
74
78
|
readTimeout: 15000,
|
|
75
79
|
connectionTimeout: 10000,
|
|
76
|
-
}).promise;
|
|
80
|
+
}).promise.catch(() => null);
|
|
77
81
|
|
|
78
|
-
if (statusCode
|
|
79
|
-
|
|
80
|
-
|
|
82
|
+
if (!result || result.statusCode !== 200) {
|
|
83
|
+
const code = result?.statusCode ?? 'unknown';
|
|
84
|
+
throw new Error(`RNFS download failed (status: ${code})`);
|
|
81
85
|
}
|
|
82
|
-
|
|
83
|
-
|
|
86
|
+
|
|
87
|
+
mmkvStorage.set(cacheKey, localFile);
|
|
88
|
+
|
|
89
|
+
if (oldFile && (await RNFS.exists(oldFile))) {
|
|
90
|
+
await RNFS.unlink(oldFile).catch(() => {});
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
return localFile;
|
|
94
|
+
} catch (err) {
|
|
95
|
+
console.warn('[SplashCache] download failed:', url, err);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
if (oldFile && (await RNFS.exists(oldFile))) {
|
|
99
|
+
return oldFile;
|
|
84
100
|
}
|
|
85
101
|
|
|
86
102
|
return null;
|
|
87
|
-
})()
|
|
103
|
+
})().finally(() => {
|
|
104
|
+
activeDownloadTasks.delete(localFile);
|
|
105
|
+
});
|
|
88
106
|
|
|
89
|
-
|
|
107
|
+
activeDownloadTasks.set(localFile, task);
|
|
90
108
|
return task;
|
|
91
109
|
};
|
|
92
110
|
|
|
@@ -101,67 +119,68 @@ export const useSplashCache = ({
|
|
|
101
119
|
backgroundUrl,
|
|
102
120
|
forceDownload = false,
|
|
103
121
|
}: SplashCacheOptions) => {
|
|
104
|
-
const [
|
|
122
|
+
const [loadState, setLoadState] = useState({
|
|
105
123
|
isReady: false,
|
|
106
124
|
error: null as Error | null,
|
|
107
125
|
});
|
|
108
|
-
|
|
109
|
-
const
|
|
110
|
-
const
|
|
126
|
+
const setLogoPath = useSplashStore((s) => s.setLogoPath);
|
|
127
|
+
const setBackdropPath = useSplashStore((s) => s.setBackdropPath);
|
|
128
|
+
const isMountedRef = useRef(true);
|
|
111
129
|
|
|
112
130
|
useEffect(() => {
|
|
113
|
-
|
|
131
|
+
isMountedRef.current = true;
|
|
114
132
|
|
|
115
133
|
const syncAssets = async () => {
|
|
116
134
|
try {
|
|
117
|
-
const [
|
|
135
|
+
const [logoLocalPath, backdropLocalPath] = await Promise.all([
|
|
118
136
|
logoUrl
|
|
119
|
-
?
|
|
137
|
+
? downloadAndCacheFile(
|
|
120
138
|
logoUrl,
|
|
121
|
-
|
|
139
|
+
getUrlExtension(logoUrl),
|
|
122
140
|
'splash_logo',
|
|
123
141
|
forceDownload
|
|
124
142
|
)
|
|
125
143
|
: Promise.resolve(null),
|
|
126
144
|
backgroundUrl
|
|
127
|
-
?
|
|
145
|
+
? downloadAndCacheFile(
|
|
128
146
|
backgroundUrl,
|
|
129
|
-
|
|
147
|
+
getUrlExtension(backgroundUrl),
|
|
130
148
|
'splash_background',
|
|
131
149
|
forceDownload
|
|
132
150
|
)
|
|
133
151
|
: Promise.resolve(null),
|
|
134
152
|
]);
|
|
135
153
|
|
|
136
|
-
if (!
|
|
154
|
+
if (!isMountedRef.current) return;
|
|
137
155
|
|
|
138
|
-
if (
|
|
139
|
-
if (
|
|
156
|
+
if (logoLocalPath) setLogoPath?.(logoLocalPath);
|
|
157
|
+
if (backdropLocalPath) setBackdropPath?.(backdropLocalPath);
|
|
140
158
|
|
|
141
|
-
|
|
159
|
+
setLoadState({ isReady: true, error: null });
|
|
142
160
|
} catch (err) {
|
|
143
|
-
if (
|
|
144
|
-
|
|
145
|
-
|
|
161
|
+
if (!isMountedRef.current) return;
|
|
162
|
+
const error =
|
|
163
|
+
err instanceof Error ? err : new Error('Splash cache failed');
|
|
164
|
+
setLoadState({ isReady: true, error });
|
|
146
165
|
}
|
|
147
166
|
};
|
|
148
167
|
|
|
149
168
|
syncAssets();
|
|
169
|
+
|
|
150
170
|
return () => {
|
|
151
|
-
|
|
171
|
+
isMountedRef.current = false;
|
|
152
172
|
};
|
|
153
|
-
|
|
154
|
-
}, [logoUrl, backgroundUrl, forceDownload]);
|
|
173
|
+
}, [logoUrl, backgroundUrl, forceDownload, setLogoPath, setBackdropPath]);
|
|
155
174
|
|
|
156
|
-
const
|
|
157
|
-
const
|
|
175
|
+
const logoLocalPath = useSplashStore((s) => s.logo.localPath);
|
|
176
|
+
const backdropLocalPath = useSplashStore((s) => s.backdrop.localPath);
|
|
158
177
|
|
|
159
178
|
return {
|
|
160
|
-
state,
|
|
161
|
-
isLoading: !
|
|
179
|
+
state: loadState,
|
|
180
|
+
isLoading: !loadState.isReady,
|
|
162
181
|
data: {
|
|
163
|
-
logoPath,
|
|
164
|
-
backgroundPath:
|
|
182
|
+
logoPath: logoLocalPath,
|
|
183
|
+
backgroundPath: backdropLocalPath,
|
|
165
184
|
},
|
|
166
185
|
};
|
|
167
186
|
};
|
|
@@ -6,10 +6,13 @@
|
|
|
6
6
|
import React, {
|
|
7
7
|
createContext,
|
|
8
8
|
useContext,
|
|
9
|
+
useEffect,
|
|
9
10
|
useMemo,
|
|
10
11
|
type ReactNode,
|
|
11
12
|
} from 'react';
|
|
12
|
-
import
|
|
13
|
+
import 'react-native-gesture-handler';
|
|
14
|
+
import 'react-native-reanimated';
|
|
15
|
+
import { Platform, StyleSheet, View } from 'react-native';
|
|
13
16
|
import {
|
|
14
17
|
SafeAreaProvider,
|
|
15
18
|
initialWindowMetrics,
|
|
@@ -18,7 +21,8 @@ import { GestureHandlerRootView } from 'react-native-gesture-handler';
|
|
|
18
21
|
import { AppStatusBar } from '../components/common/AppStatusBar';
|
|
19
22
|
import { useInternalTheme } from './hook/useInternalTheme';
|
|
20
23
|
import { type ITheme, type ThemeOverride } from './themes';
|
|
21
|
-
|
|
24
|
+
import SystemNavigationBar from 'react-native-system-navigation-bar';
|
|
25
|
+
import Color from 'color';
|
|
22
26
|
type ThemeContextType = {
|
|
23
27
|
theme: {
|
|
24
28
|
dark: ITheme['colors'];
|
|
@@ -80,6 +84,15 @@ export const ZezoUIProvider: React.FC<ZezoUIProviderProps> = ({
|
|
|
80
84
|
[finalTheme.colors.background]
|
|
81
85
|
);
|
|
82
86
|
|
|
87
|
+
// Update system navigation bar (Android) with theme colors
|
|
88
|
+
useEffect(() => {
|
|
89
|
+
const isDarkBackground = Color(finalTheme.colors.background).isDark();
|
|
90
|
+
if (Platform.OS === 'android') {
|
|
91
|
+
SystemNavigationBar.setNavigationColor(
|
|
92
|
+
isDarkBackground ? '#212121' : '#FFFFFF'
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
}, [finalTheme.colors.background]);
|
|
83
96
|
return (
|
|
84
97
|
<GestureHandlerRootView style={styles.container}>
|
|
85
98
|
<SafeAreaProvider initialMetrics={initialWindowMetrics}>
|
package/src/theme/hook/index.ts
CHANGED
|
@@ -11,7 +11,9 @@ import {
|
|
|
11
11
|
type ThemeOverride,
|
|
12
12
|
type useInternalThemeReturn,
|
|
13
13
|
} from '../themes';
|
|
14
|
+
import { filterValidOverrideColors } from '../utils/validateColor';
|
|
14
15
|
import { useInternalThemeStore } from '../../store/themeStore';
|
|
16
|
+
|
|
15
17
|
import { Appearance } from 'react-native';
|
|
16
18
|
|
|
17
19
|
export const useInternalTheme = (
|
|
@@ -50,11 +52,11 @@ export const useInternalTheme = (
|
|
|
50
52
|
[isDarkMode]
|
|
51
53
|
);
|
|
52
54
|
|
|
53
|
-
// Memoize override colors
|
|
54
|
-
const overrideColors = useMemo(
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
);
|
|
55
|
+
// Memoize override colors — only valid, non-empty colors; empty/invalid skipped
|
|
56
|
+
const overrideColors = useMemo(() => {
|
|
57
|
+
const raw = isDarkMode ? (override?.dark ?? {}) : (override?.light ?? {});
|
|
58
|
+
return filterValidOverrideColors(raw) as Partial<ITheme['colors']>;
|
|
59
|
+
}, [override?.dark, override?.light, isDarkMode]);
|
|
58
60
|
|
|
59
61
|
// Memoize final theme with proper dependencies
|
|
60
62
|
const finalTheme = useMemo<ITheme>(
|
|
@@ -68,14 +70,21 @@ export const useInternalTheme = (
|
|
|
68
70
|
[baseTheme, overrideColors]
|
|
69
71
|
);
|
|
70
72
|
|
|
71
|
-
// Memoize themeFull with
|
|
72
|
-
const themeFull = useMemo(
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
73
|
+
// Memoize themeFull — only valid overrides merged with base; empty/invalid skipped
|
|
74
|
+
const themeFull = useMemo(() => {
|
|
75
|
+
const validLight = filterValidOverrideColors(override?.light);
|
|
76
|
+
const validDark = filterValidOverrideColors(override?.dark);
|
|
77
|
+
return {
|
|
78
|
+
light: {
|
|
79
|
+
...LightTheme.colors,
|
|
80
|
+
...(validLight as Partial<ITheme['colors']>),
|
|
81
|
+
} as ITheme['colors'],
|
|
82
|
+
dark: {
|
|
83
|
+
...DarkTheme.colors,
|
|
84
|
+
...(validDark as Partial<ITheme['colors']>),
|
|
85
|
+
} as ITheme['colors'],
|
|
86
|
+
};
|
|
87
|
+
}, [override?.light, override?.dark]);
|
|
79
88
|
|
|
80
89
|
return useMemo(
|
|
81
90
|
() => ({
|
package/src/theme/themes.ts
CHANGED
|
@@ -70,6 +70,7 @@ export type BaseColors = {
|
|
|
70
70
|
white: string;
|
|
71
71
|
black: string;
|
|
72
72
|
transparent: string;
|
|
73
|
+
newRelease: string;
|
|
73
74
|
backgroundLayoutGradient: string[];
|
|
74
75
|
|
|
75
76
|
heroBannerGradient: string[];
|
|
@@ -186,6 +187,7 @@ export const LightTheme: ITheme = {
|
|
|
186
187
|
white: 'rgba(255, 255, 255, 1)',
|
|
187
188
|
black: 'rgba(0, 0, 0, 1)',
|
|
188
189
|
transparent: 'rgba(0, 0, 0, 0)',
|
|
190
|
+
newRelease: 'rgba(255, 221, 51, 1)',
|
|
189
191
|
|
|
190
192
|
backgroundLayoutGradient: [
|
|
191
193
|
'rgba(255, 255, 255, 0.3)',
|
|
@@ -295,6 +297,7 @@ export const DarkTheme: ITheme = {
|
|
|
295
297
|
white: 'rgba(255, 255, 255, 1)',
|
|
296
298
|
black: 'rgba(0, 0, 0, 1)',
|
|
297
299
|
transparent: 'rgba(255, 255, 255, 0.04)',
|
|
300
|
+
newRelease: 'rgba(255, 221, 51, 1)',
|
|
298
301
|
|
|
299
302
|
backgroundLayoutGradient: [
|
|
300
303
|
'rgba(22, 21, 21, 0.65)',
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author Naresh Dhamu
|
|
3
|
+
* @lastModified Sun 08 Feb 2026
|
|
4
|
+
*
|
|
5
|
+
* Validates theme color values. Only valid colors are used for overrides.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/** Hex color: #RGB | #RRGGBB | #RRGGBBAA */
|
|
9
|
+
const HEX_REGEX = /^#([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/;
|
|
10
|
+
|
|
11
|
+
/** rgb(r, g, b) - numbers 0-255 */
|
|
12
|
+
const RGB_REGEX = /^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/;
|
|
13
|
+
|
|
14
|
+
/** rgba(r, g, b, a) */
|
|
15
|
+
const RGBA_REGEX =
|
|
16
|
+
/^rgba\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)$/;
|
|
17
|
+
|
|
18
|
+
/** React Native / CSS named colors (common set) */
|
|
19
|
+
const VALID_NAMED_COLORS = new Set([
|
|
20
|
+
'transparent',
|
|
21
|
+
'black',
|
|
22
|
+
'white',
|
|
23
|
+
'red',
|
|
24
|
+
'green',
|
|
25
|
+
'blue',
|
|
26
|
+
'yellow',
|
|
27
|
+
'orange',
|
|
28
|
+
'gray',
|
|
29
|
+
'grey',
|
|
30
|
+
'purple',
|
|
31
|
+
'pink',
|
|
32
|
+
'cyan',
|
|
33
|
+
'magenta',
|
|
34
|
+
'brown',
|
|
35
|
+
'lime',
|
|
36
|
+
'navy',
|
|
37
|
+
'teal',
|
|
38
|
+
'silver',
|
|
39
|
+
'maroon',
|
|
40
|
+
'olive',
|
|
41
|
+
'aqua',
|
|
42
|
+
'fuchsia',
|
|
43
|
+
'currentColor',
|
|
44
|
+
]);
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Returns true if the given string is a valid color (hex, rgb, rgba, or named).
|
|
48
|
+
*/
|
|
49
|
+
export function isValidColorString(value: string): boolean {
|
|
50
|
+
if (typeof value !== 'string' || value.length === 0) return false;
|
|
51
|
+
|
|
52
|
+
if (HEX_REGEX.test(value)) return true;
|
|
53
|
+
if (VALID_NAMED_COLORS.has(value.toLowerCase())) return true;
|
|
54
|
+
|
|
55
|
+
const rgbMatch = value.match(RGB_REGEX);
|
|
56
|
+
if (rgbMatch) {
|
|
57
|
+
const r = Number(rgbMatch[1]);
|
|
58
|
+
const g = Number(rgbMatch[2]);
|
|
59
|
+
const b = Number(rgbMatch[3]);
|
|
60
|
+
return r >= 0 && r <= 255 && g >= 0 && g <= 255 && b >= 0 && b <= 255;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
const rgbaMatch = value.match(RGBA_REGEX);
|
|
64
|
+
if (rgbaMatch) {
|
|
65
|
+
const r = Number(rgbaMatch[1]);
|
|
66
|
+
const g = Number(rgbaMatch[2]);
|
|
67
|
+
const b = Number(rgbaMatch[3]);
|
|
68
|
+
const a = Number(rgbaMatch[4]);
|
|
69
|
+
return (
|
|
70
|
+
r >= 0 &&
|
|
71
|
+
r <= 255 &&
|
|
72
|
+
g >= 0 &&
|
|
73
|
+
g <= 255 &&
|
|
74
|
+
b >= 0 &&
|
|
75
|
+
b <= 255 &&
|
|
76
|
+
a >= 0 &&
|
|
77
|
+
a <= 1
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Validates a single theme color value (string, string[], or nested object).
|
|
86
|
+
* Empty values (empty string, empty array, empty object) are invalid — no override.
|
|
87
|
+
*/
|
|
88
|
+
export function isValidColorValue(value: unknown): boolean {
|
|
89
|
+
if (value == null) return false;
|
|
90
|
+
|
|
91
|
+
if (typeof value === 'string') {
|
|
92
|
+
if (value.trim().length === 0) return false;
|
|
93
|
+
return isValidColorString(value);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
if (Array.isArray(value)) {
|
|
97
|
+
if (value.length === 0) return false;
|
|
98
|
+
return value.every((item) => isValidColorString(item));
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
if (typeof value === 'object' && value !== null) {
|
|
102
|
+
const entries = Object.values(value);
|
|
103
|
+
if (entries.length === 0) return false;
|
|
104
|
+
return entries.every((v) => isValidColorValue(v));
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Filters override colors to only include entries with valid, non-empty color values.
|
|
112
|
+
* Empty colors (empty string, [], {}) and invalid values are skipped — no override.
|
|
113
|
+
*/
|
|
114
|
+
export function filterValidOverrideColors<T extends Record<string, unknown>>(
|
|
115
|
+
override: T | undefined | null
|
|
116
|
+
): Partial<T> {
|
|
117
|
+
if (!override || typeof override !== 'object') return {};
|
|
118
|
+
|
|
119
|
+
const result: Partial<T> = {};
|
|
120
|
+
for (const key of Object.keys(override) as (keyof T)[]) {
|
|
121
|
+
const value = override[key];
|
|
122
|
+
if (isValidColorValue(value)) {
|
|
123
|
+
(result as Record<string, unknown>)[key as string] = value;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return result;
|
|
127
|
+
}
|
|
@@ -10,7 +10,7 @@ import type { IGetSectionData, ISectionItem } from '../../types/sections';
|
|
|
10
10
|
import type { MoreFetchData } from '../../types/hook/usePaginatedSetion';
|
|
11
11
|
import type { IHistoryItem } from '../../components/User/WatchHistory/WatchHistory';
|
|
12
12
|
import type React from 'react';
|
|
13
|
-
import type { MiniInfo } from '../../components/ContentView/components/MiniInfo';
|
|
13
|
+
import type { MiniInfo } from '../../components/ContentView/One/components/MiniInfo';
|
|
14
14
|
import type { IContentData } from '@zezosoft/zezo-ott-api-client';
|
|
15
15
|
|
|
16
16
|
// 🔷 Common Style Aliases
|
|
@@ -24,6 +24,35 @@ export type TitleStyles = {
|
|
|
24
24
|
title?: TextStyleProp;
|
|
25
25
|
subTitle?: TextStyleProp;
|
|
26
26
|
rating?: TextStyleProp;
|
|
27
|
+
releaseYear?: TextStyleProp;
|
|
28
|
+
duration?: TextStyleProp;
|
|
29
|
+
language?: TextStyleProp;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
export type LikeShareActionsStyles = {
|
|
33
|
+
container?: ViewStyleProp;
|
|
34
|
+
likeButton?: ViewStyleProp;
|
|
35
|
+
shareButton?: ViewStyleProp;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export type SectionTabsStyles = {
|
|
39
|
+
container?: ViewStyleProp;
|
|
40
|
+
tab?: ViewStyleProp;
|
|
41
|
+
title?: TextStyleProp;
|
|
42
|
+
indicator?: ViewStyleProp;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
export type DetailsStyles = {
|
|
46
|
+
container?: ViewStyleProp;
|
|
47
|
+
section?: ViewStyleProp;
|
|
48
|
+
labelText?: TextStyleProp;
|
|
49
|
+
valueText?: TextStyleProp;
|
|
50
|
+
release_year?: ViewStyleProp;
|
|
51
|
+
cast?: ViewStyleProp;
|
|
52
|
+
directors?: ViewStyleProp;
|
|
53
|
+
writers?: ViewStyleProp;
|
|
54
|
+
producers?: ViewStyleProp;
|
|
55
|
+
maturity_rating?: ViewStyleProp;
|
|
27
56
|
};
|
|
28
57
|
|
|
29
58
|
export type GenreTagStyles = {
|
|
@@ -82,6 +111,15 @@ export type PlayEventArgs = {
|
|
|
82
111
|
seekTime?: number;
|
|
83
112
|
mode?: 'fullscreen' | 'normal';
|
|
84
113
|
};
|
|
114
|
+
export type LikeShareEventArgs = {
|
|
115
|
+
id: IContentData['_id'];
|
|
116
|
+
source?: 'title' | 'card' | 'hero' | 'list';
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
// 🟩 Events
|
|
120
|
+
export type LikeResponse = {
|
|
121
|
+
is_liked: boolean;
|
|
122
|
+
};
|
|
85
123
|
|
|
86
124
|
export type ContentViewEvents = {
|
|
87
125
|
onPlay?: (args: PlayEventArgs) => void;
|
|
@@ -94,6 +132,8 @@ export type ContentViewEvents = {
|
|
|
94
132
|
onBackPress?: () => void;
|
|
95
133
|
onPressCast?: (args: { cast: IContentData }) => void;
|
|
96
134
|
moreFetchDataRecommended?: MoreFetchData<IContentData>;
|
|
135
|
+
onLikeContent?: (args: LikeShareEventArgs) => Promise<{ is_liked: boolean }>;
|
|
136
|
+
onShareContent?: (args: LikeShareEventArgs) => void;
|
|
97
137
|
};
|
|
98
138
|
|
|
99
139
|
// 🟦 Menu
|
|
@@ -122,6 +162,7 @@ export type SkeletonOverrides = Partial<{
|
|
|
122
162
|
export type HeroBannerProps = {
|
|
123
163
|
backgroundImage: IContentData['thumbnail'];
|
|
124
164
|
title: IContentData['name'];
|
|
165
|
+
titleImage?: string | null;
|
|
125
166
|
theme?: ThemeOverride;
|
|
126
167
|
isLoading?: boolean;
|
|
127
168
|
onPressPlay?: ({ is_trailer }: { is_trailer: boolean }) => void;
|
|
@@ -153,6 +194,7 @@ export type ComponentProps = {
|
|
|
153
194
|
seasonsIsLoading?: boolean;
|
|
154
195
|
recommendedContent?: ISectionItem | null;
|
|
155
196
|
events?: ContentViewEvents;
|
|
197
|
+
isLiked?: boolean;
|
|
156
198
|
heroBannerProps?: Partial<HeroBannerProps>;
|
|
157
199
|
titleStyles?: TitleStyles;
|
|
158
200
|
genreTagsStyles?: GenreTagStyles;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @author Naresh Dhamu
|
|
3
|
-
* @lastModified
|
|
3
|
+
* @lastModified Wed 24 Dec 2025 at 12:09 PM
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import type { IContentData } from '@zezosoft/zezo-ott-api-client';
|
|
7
|
-
|
|
6
|
+
import type { IContentData, IServeAd } from '@zezosoft/zezo-ott-api-client';
|
|
7
|
+
export type IAdItem = IServeAd & {
|
|
8
|
+
type: 'ads';
|
|
9
|
+
};
|
|
8
10
|
export type ISectionType =
|
|
9
11
|
| 'normal'
|
|
10
12
|
| 'card_style_2'
|
|
@@ -15,6 +17,7 @@ export type ISectionType =
|
|
|
15
17
|
| 'card_rotate_in_out'
|
|
16
18
|
| 'slider'
|
|
17
19
|
| 'slider_style_2'
|
|
20
|
+
| 'slider_style_3'
|
|
18
21
|
| 'card_series_featured_style_1'
|
|
19
22
|
| 'continue_watching'
|
|
20
23
|
| 'new_releases'
|
|
@@ -50,7 +53,7 @@ export interface IGetSectionData {
|
|
|
50
53
|
};
|
|
51
54
|
genre?: string;
|
|
52
55
|
content: {
|
|
53
|
-
data: IContentData[];
|
|
56
|
+
data: (IContentData | IAdItem)[];
|
|
54
57
|
meta: {
|
|
55
58
|
pagination: ISectionPagination;
|
|
56
59
|
};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Color utility functions
|
|
3
|
+
* @author Naresh Dhamu
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Converts a color string to rgba format with specified opacity
|
|
8
|
+
* Supports multiple color formats: rgba, rgb, hex (#RGB, #RRGGBB, #RRGGBBAA)
|
|
9
|
+
*
|
|
10
|
+
* @param color - Color string in any supported format
|
|
11
|
+
* @param opacity - Opacity value between 0 and 1 (default: 0.9)
|
|
12
|
+
* @returns Color string in rgba format with specified opacity
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* convertColorWithOpacity('rgb(255, 0, 0)', 0.5) // 'rgba(255, 0, 0, 0.5)'
|
|
16
|
+
* convertColorWithOpacity('#FF0000', 0.8) // 'rgba(255, 0, 0, 0.8)'
|
|
17
|
+
* convertColorWithOpacity('rgba(255, 0, 0, 1)', 0.5) // 'rgba(255, 0, 0, 0.5)'
|
|
18
|
+
*/
|
|
19
|
+
export const convertColorWithOpacity = (
|
|
20
|
+
color: string,
|
|
21
|
+
opacity: number = 0.9
|
|
22
|
+
): string => {
|
|
23
|
+
// Handle rgba format
|
|
24
|
+
if (color.startsWith('rgba(')) {
|
|
25
|
+
return color.replace(/rgba\(([^)]+)\)/, (match, rgb) => {
|
|
26
|
+
const values = rgb.split(',').map((v: string) => v.trim());
|
|
27
|
+
if (values.length === 4) {
|
|
28
|
+
return `rgba(${values[0]}, ${values[1]}, ${values[2]}, ${opacity})`;
|
|
29
|
+
}
|
|
30
|
+
return match;
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// Handle rgb format
|
|
35
|
+
if (color.startsWith('rgb(')) {
|
|
36
|
+
return color.replace(/rgb\(([^)]+)\)/, (match, rgb) => {
|
|
37
|
+
const values = rgb.split(',').map((v: string) => v.trim());
|
|
38
|
+
if (values.length === 3) {
|
|
39
|
+
return `rgba(${values[0]}, ${values[1]}, ${values[2]}, ${opacity})`;
|
|
40
|
+
}
|
|
41
|
+
return match;
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Handle hex format (#RGB, #RRGGBB, #RRGGBBAA)
|
|
46
|
+
if (color.startsWith('#')) {
|
|
47
|
+
const hex = color.replace('#', '');
|
|
48
|
+
let r: number, g: number, b: number;
|
|
49
|
+
|
|
50
|
+
if (hex.length === 3) {
|
|
51
|
+
// #RGB format
|
|
52
|
+
r = parseInt(hex[0]! + hex[0]!, 16);
|
|
53
|
+
g = parseInt(hex[1]! + hex[1]!, 16);
|
|
54
|
+
b = parseInt(hex[2]! + hex[2]!, 16);
|
|
55
|
+
} else if (hex.length === 6 || hex.length === 8) {
|
|
56
|
+
// #RRGGBB or #RRGGBBAA format
|
|
57
|
+
r = parseInt(hex.substring(0, 2)!, 16);
|
|
58
|
+
g = parseInt(hex.substring(2, 4)!, 16);
|
|
59
|
+
b = parseInt(hex.substring(4, 6)!, 16);
|
|
60
|
+
} else {
|
|
61
|
+
return color; // Invalid hex, return as is
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return `rgba(${r}, ${g}, ${b}, ${opacity})`;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// For other formats (named colors, etc.), return as is
|
|
68
|
+
// In a real scenario, you might want to convert named colors to rgba
|
|
69
|
+
return color;
|
|
70
|
+
};
|