@zezosoft/zezo-ott-react-native-ui-kit 1.0.5 → 1.0.6

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 (376) hide show
  1. package/lib/module/components/Account/Account.js +4 -4
  2. package/lib/module/components/Account/Account.js.map +1 -1
  3. package/lib/module/components/Alert/AlertDialog.js +2 -2
  4. package/lib/module/components/Alert/AlertDialog.js.map +1 -1
  5. package/lib/module/components/Alert/UAAlert.js +5 -1
  6. package/lib/module/components/Alert/UAAlert.js.map +1 -1
  7. package/lib/module/components/Auth/AuthProvider/AuthProvider.js +74 -104
  8. package/lib/module/components/Auth/AuthProvider/AuthProvider.js.map +1 -1
  9. package/lib/module/components/Auth/ForgotPassword/ForgotPassword.js +4 -8
  10. package/lib/module/components/Auth/ForgotPassword/ForgotPassword.js.map +1 -1
  11. package/lib/module/components/Auth/Login/LoginWithEmail.js +7 -7
  12. package/lib/module/components/Auth/Login/LoginWithEmail.js.map +1 -1
  13. package/lib/module/components/Auth/Login/LoginWithPhone.js +6 -6
  14. package/lib/module/components/Auth/Login/LoginWithPhone.js.map +1 -1
  15. package/lib/module/components/Auth/OTP/OTP.js +5 -5
  16. package/lib/module/components/Auth/OTP/OTP.js.map +1 -1
  17. package/lib/module/components/Auth/QrLogin/QrLogin.js +8 -9
  18. package/lib/module/components/Auth/QrLogin/QrLogin.js.map +1 -1
  19. package/lib/module/components/Auth/QrLogin/components/QrViewArea.js +2 -2
  20. package/lib/module/components/Auth/QrLogin/components/QrViewArea.js.map +1 -1
  21. package/lib/module/components/Auth/SignUp/SignUp.js +9 -9
  22. package/lib/module/components/Auth/SignUp/SignUp.js.map +1 -1
  23. package/lib/module/components/Auth/SplashScreen/SplashScreen.js +14 -23
  24. package/lib/module/components/Auth/SplashScreen/SplashScreen.js.map +1 -1
  25. package/lib/module/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.js +2 -2
  26. package/lib/module/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.js.map +1 -1
  27. package/lib/module/components/BackgroundLayout/BackgroundLayout.js +5 -1
  28. package/lib/module/components/BackgroundLayout/BackgroundLayout.js.map +1 -1
  29. package/lib/module/components/BlogView/BlogView.js +8 -7
  30. package/lib/module/components/BlogView/BlogView.js.map +1 -1
  31. package/lib/module/components/Button/BackBtn.js +2 -2
  32. package/lib/module/components/Button/BackBtn.js.map +1 -1
  33. package/lib/module/components/Button/MenuBtn.js +2 -2
  34. package/lib/module/components/Button/MenuBtn.js.map +1 -1
  35. package/lib/module/components/Button/PrimaryBtn.js +2 -2
  36. package/lib/module/components/Button/PrimaryBtn.js.map +1 -1
  37. package/lib/module/components/Button/SecondaryBtn.js +2 -2
  38. package/lib/module/components/Button/SecondaryBtn.js.map +1 -1
  39. package/lib/module/components/Button/TextButton.js +2 -2
  40. package/lib/module/components/Button/TextButton.js.map +1 -1
  41. package/lib/module/components/Content/Card/Category/Category.js +3 -3
  42. package/lib/module/components/Content/Card/Category/Category.js.map +1 -1
  43. package/lib/module/components/Content/Card/NowWatching/NowWatching.js +5 -3
  44. package/lib/module/components/Content/Card/NowWatching/NowWatching.js.map +1 -1
  45. package/lib/module/components/Content/Card/Sliders/Styles/One.js +5 -5
  46. package/lib/module/components/Content/Card/Sliders/Styles/One.js.map +1 -1
  47. package/lib/module/components/Content/Card/Sliders/Styles/Two.js +3 -2
  48. package/lib/module/components/Content/Card/Sliders/Styles/Two.js.map +1 -1
  49. package/lib/module/components/Content/Card/Styles/Five.js +4 -3
  50. package/lib/module/components/Content/Card/Styles/Five.js.map +1 -1
  51. package/lib/module/components/Content/Card/Styles/Four.js +4 -3
  52. package/lib/module/components/Content/Card/Styles/Four.js.map +1 -1
  53. package/lib/module/components/Content/Card/Styles/One.js +4 -3
  54. package/lib/module/components/Content/Card/Styles/One.js.map +1 -1
  55. package/lib/module/components/Content/Card/Styles/RotateInOut.js +4 -3
  56. package/lib/module/components/Content/Card/Styles/RotateInOut.js.map +1 -1
  57. package/lib/module/components/Content/Card/Styles/Six.js +5 -3
  58. package/lib/module/components/Content/Card/Styles/Six.js.map +1 -1
  59. package/lib/module/components/Content/Card/Styles/Three.js +4 -3
  60. package/lib/module/components/Content/Card/Styles/Three.js.map +1 -1
  61. package/lib/module/components/Content/Card/Styles/TopTen.js +4 -3
  62. package/lib/module/components/Content/Card/Styles/TopTen.js.map +1 -1
  63. package/lib/module/components/Content/Card/Styles/Two.js +4 -3
  64. package/lib/module/components/Content/Card/Styles/Two.js.map +1 -1
  65. package/lib/module/components/Content/Card/components/CardPoster.js +1 -0
  66. package/lib/module/components/Content/Card/components/CardPoster.js.map +1 -1
  67. package/lib/module/components/Content/Card/components/NoContentFallback.js +2 -2
  68. package/lib/module/components/Content/Card/components/NoContentFallback.js.map +1 -1
  69. package/lib/module/components/Content/Card/components/RentOrBuyIcon.js +1 -1
  70. package/lib/module/components/Content/Card/components/RentOrBuyIcon.js.map +1 -1
  71. package/lib/module/components/Content/Card/components/ShowAllButton.js +3 -1
  72. package/lib/module/components/Content/Card/components/ShowAllButton.js.map +1 -1
  73. package/lib/module/components/ContentView/ContentView.js +5 -5
  74. package/lib/module/components/ContentView/ContentView.js.map +1 -1
  75. package/lib/module/components/ContentView/MoreContentList.js +3 -2
  76. package/lib/module/components/ContentView/MoreContentList.js.map +1 -1
  77. package/lib/module/components/ContentView/components/EpisodeCard.js +15 -6
  78. package/lib/module/components/ContentView/components/EpisodeCard.js.map +1 -1
  79. package/lib/module/components/ContentView/components/HeroBanner.js +12 -3
  80. package/lib/module/components/ContentView/components/HeroBanner.js.map +1 -1
  81. package/lib/module/components/ContentView/components/TrailerButton.js +5 -5
  82. package/lib/module/components/ContentView/components/TrailerButton.js.map +1 -1
  83. package/lib/module/components/Headers/AppHeader.js +2 -2
  84. package/lib/module/components/Headers/AppHeader.js.map +1 -1
  85. package/lib/module/components/Headers/One.js +2 -2
  86. package/lib/module/components/Headers/One.js.map +1 -1
  87. package/lib/module/components/Headers/Three.js +2 -2
  88. package/lib/module/components/Headers/Three.js.map +1 -1
  89. package/lib/module/components/Headers/Two.js +2 -2
  90. package/lib/module/components/Headers/Two.js.map +1 -1
  91. package/lib/module/components/Input/InputOne.js +2 -2
  92. package/lib/module/components/Input/InputOne.js.map +1 -1
  93. package/lib/module/components/Input/InputTwo.js +2 -2
  94. package/lib/module/components/Input/InputTwo.js.map +1 -1
  95. package/lib/module/components/Input/PhoneNumberInput.js +5 -4
  96. package/lib/module/components/Input/PhoneNumberInput.js.map +1 -1
  97. package/lib/module/components/Logo/Logo.js +2 -2
  98. package/lib/module/components/Logo/Logo.js.map +1 -1
  99. package/lib/module/components/Search/One.js +4 -4
  100. package/lib/module/components/Search/One.js.map +1 -1
  101. package/lib/module/components/Search/components/SearchCard.js +2 -2
  102. package/lib/module/components/Search/components/SearchCard.js.map +1 -1
  103. package/lib/module/components/Settings/AppSettings.js +4 -4
  104. package/lib/module/components/Settings/AppSettings.js.map +1 -1
  105. package/lib/module/components/Subscription/SubOne.js +9 -8
  106. package/lib/module/components/Subscription/SubOne.js.map +1 -1
  107. package/lib/module/components/TabBar/One.js +8 -5
  108. package/lib/module/components/TabBar/One.js.map +1 -1
  109. package/lib/module/components/TabBar/Three.js +2 -2
  110. package/lib/module/components/TabBar/Three.js.map +1 -1
  111. package/lib/module/components/TabBar/Two.js +8 -5
  112. package/lib/module/components/TabBar/Two.js.map +1 -1
  113. package/lib/module/components/Text/Text.js +3 -2
  114. package/lib/module/components/Text/Text.js.map +1 -1
  115. package/lib/module/components/User/DeviceSessions/DeviceSessions.js +4 -3
  116. package/lib/module/components/User/DeviceSessions/DeviceSessions.js.map +1 -1
  117. package/lib/module/components/User/ProfileUpdate/ProfileUpdate.js +6 -6
  118. package/lib/module/components/User/ProfileUpdate/ProfileUpdate.js.map +1 -1
  119. package/lib/module/components/User/WatchHistory/WatchHistory.js +3 -3
  120. package/lib/module/components/User/WatchHistory/WatchHistory.js.map +1 -1
  121. package/lib/module/components/User/WatchLater/WatchLater.js +5 -3
  122. package/lib/module/components/User/WatchLater/WatchLater.js.map +1 -1
  123. package/lib/module/components/User/components/UserAvatar.js +13 -10
  124. package/lib/module/components/User/components/UserAvatar.js.map +1 -1
  125. package/lib/module/components/User/components/UserSection.js +3 -3
  126. package/lib/module/components/User/components/UserSection.js.map +1 -1
  127. package/lib/module/components/common/AppStatusBar.js +41 -0
  128. package/lib/module/components/common/AppStatusBar.js.map +1 -0
  129. package/lib/module/components/layout/SafeAreaWrapper.js +2 -2
  130. package/lib/module/components/layout/SafeAreaWrapper.js.map +1 -1
  131. package/lib/module/store/splashStore.js +3 -7
  132. package/lib/module/store/splashStore.js.map +1 -1
  133. package/lib/module/store/themeStore.js +39 -0
  134. package/lib/module/store/themeStore.js.map +1 -0
  135. package/lib/module/theme/ThemeProvider.js +40 -69
  136. package/lib/module/theme/ThemeProvider.js.map +1 -1
  137. package/lib/module/theme/hook/index.js +5 -0
  138. package/lib/module/theme/hook/index.js.map +1 -0
  139. package/lib/module/theme/hook/useInternalTheme.js +46 -0
  140. package/lib/module/theme/hook/useInternalTheme.js.map +1 -0
  141. package/lib/module/theme/hook/useThemeStatusBar.js +27 -0
  142. package/lib/module/theme/hook/useThemeStatusBar.js.map +1 -0
  143. package/lib/module/theme/index.js +1 -2
  144. package/lib/module/theme/index.js.map +1 -1
  145. package/lib/module/theme/themes.js +6 -4
  146. package/lib/module/theme/themes.js.map +1 -1
  147. package/lib/typescript/src/components/Account/Account.d.ts +2 -2
  148. package/lib/typescript/src/components/Account/Account.d.ts.map +1 -1
  149. package/lib/typescript/src/components/Alert/AlertDialog.d.ts +2 -2
  150. package/lib/typescript/src/components/Alert/AlertDialog.d.ts.map +1 -1
  151. package/lib/typescript/src/components/Alert/UAAlert.d.ts +2 -2
  152. package/lib/typescript/src/components/Alert/UAAlert.d.ts.map +1 -1
  153. package/lib/typescript/src/components/Auth/AuthProvider/AuthProvider.d.ts +6 -6
  154. package/lib/typescript/src/components/Auth/AuthProvider/AuthProvider.d.ts.map +1 -1
  155. package/lib/typescript/src/components/Auth/ForgotPassword/ForgotPassword.d.ts +2 -2
  156. package/lib/typescript/src/components/Auth/ForgotPassword/ForgotPassword.d.ts.map +1 -1
  157. package/lib/typescript/src/components/Auth/Login/LoginWithEmail.d.ts +2 -2
  158. package/lib/typescript/src/components/Auth/Login/LoginWithEmail.d.ts.map +1 -1
  159. package/lib/typescript/src/components/Auth/Login/LoginWithPhone.d.ts +2 -2
  160. package/lib/typescript/src/components/Auth/Login/LoginWithPhone.d.ts.map +1 -1
  161. package/lib/typescript/src/components/Auth/OTP/OTP.d.ts +2 -2
  162. package/lib/typescript/src/components/Auth/OTP/OTP.d.ts.map +1 -1
  163. package/lib/typescript/src/components/Auth/QrLogin/QrLogin.d.ts +2 -2
  164. package/lib/typescript/src/components/Auth/QrLogin/QrLogin.d.ts.map +1 -1
  165. package/lib/typescript/src/components/Auth/QrLogin/components/QrViewArea.d.ts +2 -2
  166. package/lib/typescript/src/components/Auth/QrLogin/components/QrViewArea.d.ts.map +1 -1
  167. package/lib/typescript/src/components/Auth/SignUp/SignUp.d.ts +2 -2
  168. package/lib/typescript/src/components/Auth/SignUp/SignUp.d.ts.map +1 -1
  169. package/lib/typescript/src/components/Auth/SplashScreen/SplashScreen.d.ts +2 -2
  170. package/lib/typescript/src/components/Auth/SplashScreen/SplashScreen.d.ts.map +1 -1
  171. package/lib/typescript/src/components/Auth/index.d.ts +5 -5
  172. package/lib/typescript/src/components/Auth/index.d.ts.map +1 -1
  173. package/lib/typescript/src/components/BackgroundLayout/BackgroundLayout.d.ts +2 -2
  174. package/lib/typescript/src/components/BackgroundLayout/BackgroundLayout.d.ts.map +1 -1
  175. package/lib/typescript/src/components/BlogView/BlogView.d.ts +2 -2
  176. package/lib/typescript/src/components/BlogView/BlogView.d.ts.map +1 -1
  177. package/lib/typescript/src/components/Button/BackBtn.d.ts +2 -2
  178. package/lib/typescript/src/components/Button/BackBtn.d.ts.map +1 -1
  179. package/lib/typescript/src/components/Button/MenuBtn.d.ts +2 -2
  180. package/lib/typescript/src/components/Button/MenuBtn.d.ts.map +1 -1
  181. package/lib/typescript/src/components/Button/PrimaryBtn.d.ts +2 -2
  182. package/lib/typescript/src/components/Button/PrimaryBtn.d.ts.map +1 -1
  183. package/lib/typescript/src/components/Button/SecondaryBtn.d.ts +2 -2
  184. package/lib/typescript/src/components/Button/SecondaryBtn.d.ts.map +1 -1
  185. package/lib/typescript/src/components/Button/index.d.ts +3 -3
  186. package/lib/typescript/src/components/Content/Card/Category/Category.d.ts +2 -2
  187. package/lib/typescript/src/components/Content/Card/Category/Category.d.ts.map +1 -1
  188. package/lib/typescript/src/components/Content/Card/NowWatching/NowWatching.d.ts +2 -2
  189. package/lib/typescript/src/components/Content/Card/NowWatching/NowWatching.d.ts.map +1 -1
  190. package/lib/typescript/src/components/Content/Card/Sliders/Styles/One.d.ts +2 -2
  191. package/lib/typescript/src/components/Content/Card/Sliders/Styles/One.d.ts.map +1 -1
  192. package/lib/typescript/src/components/Content/Card/Sliders/Styles/Two.d.ts +2 -2
  193. package/lib/typescript/src/components/Content/Card/Sliders/Styles/Two.d.ts.map +1 -1
  194. package/lib/typescript/src/components/Content/Card/Sliders/index.d.ts +2 -2
  195. package/lib/typescript/src/components/Content/Card/Styles/Five.d.ts +2 -2
  196. package/lib/typescript/src/components/Content/Card/Styles/Five.d.ts.map +1 -1
  197. package/lib/typescript/src/components/Content/Card/Styles/Four.d.ts +2 -2
  198. package/lib/typescript/src/components/Content/Card/Styles/Four.d.ts.map +1 -1
  199. package/lib/typescript/src/components/Content/Card/Styles/One.d.ts +2 -2
  200. package/lib/typescript/src/components/Content/Card/Styles/One.d.ts.map +1 -1
  201. package/lib/typescript/src/components/Content/Card/Styles/RotateInOut.d.ts +2 -2
  202. package/lib/typescript/src/components/Content/Card/Styles/RotateInOut.d.ts.map +1 -1
  203. package/lib/typescript/src/components/Content/Card/Styles/Six.d.ts +2 -2
  204. package/lib/typescript/src/components/Content/Card/Styles/Six.d.ts.map +1 -1
  205. package/lib/typescript/src/components/Content/Card/Styles/Three.d.ts +2 -2
  206. package/lib/typescript/src/components/Content/Card/Styles/Three.d.ts.map +1 -1
  207. package/lib/typescript/src/components/Content/Card/Styles/TopTen.d.ts +2 -2
  208. package/lib/typescript/src/components/Content/Card/Styles/TopTen.d.ts.map +1 -1
  209. package/lib/typescript/src/components/Content/Card/Styles/Two.d.ts +2 -2
  210. package/lib/typescript/src/components/Content/Card/Styles/Two.d.ts.map +1 -1
  211. package/lib/typescript/src/components/Content/Card/components/CardPoster.d.ts.map +1 -1
  212. package/lib/typescript/src/components/Content/Card/components/NoContentFallback.d.ts +2 -2
  213. package/lib/typescript/src/components/Content/Card/components/NoContentFallback.d.ts.map +1 -1
  214. package/lib/typescript/src/components/Content/Card/components/ShowAllButton.d.ts +2 -0
  215. package/lib/typescript/src/components/Content/Card/components/ShowAllButton.d.ts.map +1 -1
  216. package/lib/typescript/src/components/Content/Card/index.d.ts +10 -10
  217. package/lib/typescript/src/components/Content/Content.d.ts +2 -2
  218. package/lib/typescript/src/components/Content/Content.d.ts.map +1 -1
  219. package/lib/typescript/src/components/Content/Sections.d.ts +2 -2
  220. package/lib/typescript/src/components/Content/Sections.d.ts.map +1 -1
  221. package/lib/typescript/src/components/ContentView/MoreContentList.d.ts +2 -2
  222. package/lib/typescript/src/components/ContentView/MoreContentList.d.ts.map +1 -1
  223. package/lib/typescript/src/components/ContentView/components/EpisodeCard.d.ts +3 -3
  224. package/lib/typescript/src/components/ContentView/components/EpisodeCard.d.ts.map +1 -1
  225. package/lib/typescript/src/components/ContentView/components/HeroBanner.d.ts +1 -1
  226. package/lib/typescript/src/components/ContentView/components/HeroBanner.d.ts.map +1 -1
  227. package/lib/typescript/src/components/ContentView/components/TrailerButton.d.ts +2 -2
  228. package/lib/typescript/src/components/ContentView/components/TrailerButton.d.ts.map +1 -1
  229. package/lib/typescript/src/components/Headers/AppHeader.d.ts +2 -2
  230. package/lib/typescript/src/components/Headers/AppHeader.d.ts.map +1 -1
  231. package/lib/typescript/src/components/Headers/One.d.ts +2 -2
  232. package/lib/typescript/src/components/Headers/One.d.ts.map +1 -1
  233. package/lib/typescript/src/components/Headers/Three.d.ts +2 -2
  234. package/lib/typescript/src/components/Headers/Three.d.ts.map +1 -1
  235. package/lib/typescript/src/components/Headers/Two.d.ts +2 -2
  236. package/lib/typescript/src/components/Headers/Two.d.ts.map +1 -1
  237. package/lib/typescript/src/components/Input/InputOne.d.ts +2 -2
  238. package/lib/typescript/src/components/Input/InputOne.d.ts.map +1 -1
  239. package/lib/typescript/src/components/Input/InputTwo.d.ts +2 -2
  240. package/lib/typescript/src/components/Input/InputTwo.d.ts.map +1 -1
  241. package/lib/typescript/src/components/Input/PhoneNumberInput.d.ts +2 -2
  242. package/lib/typescript/src/components/Input/PhoneNumberInput.d.ts.map +1 -1
  243. package/lib/typescript/src/components/Logo/Logo.d.ts +2 -2
  244. package/lib/typescript/src/components/Logo/Logo.d.ts.map +1 -1
  245. package/lib/typescript/src/components/Search/One.d.ts +2 -2
  246. package/lib/typescript/src/components/Search/One.d.ts.map +1 -1
  247. package/lib/typescript/src/components/Search/components/SearchCard.d.ts +2 -2
  248. package/lib/typescript/src/components/Search/components/SearchCard.d.ts.map +1 -1
  249. package/lib/typescript/src/components/Settings/AppSettings.d.ts +2 -2
  250. package/lib/typescript/src/components/Settings/AppSettings.d.ts.map +1 -1
  251. package/lib/typescript/src/components/Subscription/SubOne.d.ts +2 -2
  252. package/lib/typescript/src/components/Subscription/SubOne.d.ts.map +1 -1
  253. package/lib/typescript/src/components/Subscription/index.d.ts +1 -1
  254. package/lib/typescript/src/components/Subscription/index.d.ts.map +1 -1
  255. package/lib/typescript/src/components/TabBar/One.d.ts +2 -2
  256. package/lib/typescript/src/components/TabBar/One.d.ts.map +1 -1
  257. package/lib/typescript/src/components/TabBar/Three.d.ts +2 -2
  258. package/lib/typescript/src/components/TabBar/Three.d.ts.map +1 -1
  259. package/lib/typescript/src/components/TabBar/Two.d.ts +2 -2
  260. package/lib/typescript/src/components/TabBar/Two.d.ts.map +1 -1
  261. package/lib/typescript/src/components/Text/Text.d.ts +2 -0
  262. package/lib/typescript/src/components/Text/Text.d.ts.map +1 -1
  263. package/lib/typescript/src/components/User/DeviceSessions/DeviceSessions.d.ts +2 -2
  264. package/lib/typescript/src/components/User/DeviceSessions/DeviceSessions.d.ts.map +1 -1
  265. package/lib/typescript/src/components/User/ProfileUpdate/ProfileUpdate.d.ts +2 -2
  266. package/lib/typescript/src/components/User/ProfileUpdate/ProfileUpdate.d.ts.map +1 -1
  267. package/lib/typescript/src/components/User/WatchHistory/WatchHistory.d.ts +2 -2
  268. package/lib/typescript/src/components/User/WatchHistory/WatchHistory.d.ts.map +1 -1
  269. package/lib/typescript/src/components/User/WatchLater/WatchLater.d.ts +2 -2
  270. package/lib/typescript/src/components/User/WatchLater/WatchLater.d.ts.map +1 -1
  271. package/lib/typescript/src/components/User/components/UserAvatar.d.ts +2 -2
  272. package/lib/typescript/src/components/User/components/UserAvatar.d.ts.map +1 -1
  273. package/lib/typescript/src/components/User/components/UserSection.d.ts +2 -2
  274. package/lib/typescript/src/components/User/components/UserSection.d.ts.map +1 -1
  275. package/lib/typescript/src/components/common/AppStatusBar.d.ts +17 -0
  276. package/lib/typescript/src/components/common/AppStatusBar.d.ts.map +1 -0
  277. package/lib/typescript/src/components/layout/SafeAreaWrapper.d.ts +2 -2
  278. package/lib/typescript/src/components/layout/SafeAreaWrapper.d.ts.map +1 -1
  279. package/lib/typescript/src/store/themeStore.d.ts +7 -0
  280. package/lib/typescript/src/store/themeStore.d.ts.map +1 -0
  281. package/lib/typescript/src/theme/ThemeProvider.d.ts +17 -10
  282. package/lib/typescript/src/theme/ThemeProvider.d.ts.map +1 -1
  283. package/lib/typescript/src/theme/hook/index.d.ts +3 -0
  284. package/lib/typescript/src/theme/hook/index.d.ts.map +1 -0
  285. package/lib/typescript/src/theme/hook/useInternalTheme.d.ts +3 -0
  286. package/lib/typescript/src/theme/hook/useInternalTheme.d.ts.map +1 -0
  287. package/lib/typescript/src/theme/hook/useThemeStatusBar.d.ts +10 -0
  288. package/lib/typescript/src/theme/hook/useThemeStatusBar.d.ts.map +1 -0
  289. package/lib/typescript/src/theme/index.d.ts +1 -6
  290. package/lib/typescript/src/theme/index.d.ts.map +1 -1
  291. package/lib/typescript/src/theme/themes.d.ts +14 -2
  292. package/lib/typescript/src/theme/themes.d.ts.map +1 -1
  293. package/lib/typescript/src/types/content/content-view.types.d.ts +3 -3
  294. package/lib/typescript/src/types/content/content-view.types.d.ts.map +1 -1
  295. package/package.json +1 -1
  296. package/src/components/Account/Account.tsx +6 -6
  297. package/src/components/Alert/AlertDialog.tsx +4 -4
  298. package/src/components/Alert/UAAlert.tsx +5 -3
  299. package/src/components/Auth/AuthProvider/AuthProvider.tsx +106 -156
  300. package/src/components/Auth/ForgotPassword/ForgotPassword.tsx +6 -8
  301. package/src/components/Auth/Login/LoginWithEmail.tsx +9 -9
  302. package/src/components/Auth/Login/LoginWithPhone.tsx +8 -8
  303. package/src/components/Auth/OTP/OTP.tsx +7 -7
  304. package/src/components/Auth/QrLogin/QrLogin.tsx +8 -12
  305. package/src/components/Auth/QrLogin/components/QrViewArea.tsx +4 -4
  306. package/src/components/Auth/SignUp/SignUp.tsx +11 -11
  307. package/src/components/Auth/SplashScreen/SplashScreen.tsx +17 -30
  308. package/src/components/Auth/SplashScreen/components/SplashVideo/SplashVideo.tsx +2 -2
  309. package/src/components/BackgroundLayout/BackgroundLayout.tsx +5 -3
  310. package/src/components/BlogView/BlogView.tsx +13 -8
  311. package/src/components/Button/BackBtn.tsx +4 -4
  312. package/src/components/Button/MenuBtn.tsx +4 -4
  313. package/src/components/Button/PrimaryBtn.tsx +4 -4
  314. package/src/components/Button/SecondaryBtn.tsx +4 -4
  315. package/src/components/Button/TextButton.tsx +2 -2
  316. package/src/components/Content/Card/Category/Category.tsx +5 -5
  317. package/src/components/Content/Card/NowWatching/NowWatching.tsx +6 -5
  318. package/src/components/Content/Card/Sliders/Styles/One.tsx +9 -6
  319. package/src/components/Content/Card/Sliders/Styles/Two.tsx +8 -5
  320. package/src/components/Content/Card/Styles/Five.tsx +5 -5
  321. package/src/components/Content/Card/Styles/Four.tsx +5 -5
  322. package/src/components/Content/Card/Styles/One.tsx +5 -5
  323. package/src/components/Content/Card/Styles/RotateInOut.tsx +5 -5
  324. package/src/components/Content/Card/Styles/Six.tsx +9 -6
  325. package/src/components/Content/Card/Styles/Three.tsx +5 -5
  326. package/src/components/Content/Card/Styles/TopTen.tsx +5 -5
  327. package/src/components/Content/Card/Styles/Two.tsx +5 -5
  328. package/src/components/Content/Card/components/CardPoster.tsx +1 -0
  329. package/src/components/Content/Card/components/NoContentFallback.tsx +4 -4
  330. package/src/components/Content/Card/components/RentOrBuyIcon.tsx +1 -1
  331. package/src/components/Content/Card/components/ShowAllButton.tsx +6 -1
  332. package/src/components/Content/Content.tsx +2 -2
  333. package/src/components/Content/Sections.tsx +2 -2
  334. package/src/components/ContentView/ContentView.tsx +5 -5
  335. package/src/components/ContentView/MoreContentList.tsx +5 -4
  336. package/src/components/ContentView/components/EpisodeCard.tsx +21 -8
  337. package/src/components/ContentView/components/HeroBanner.tsx +10 -3
  338. package/src/components/ContentView/components/TrailerButton.tsx +6 -5
  339. package/src/components/Headers/AppHeader.tsx +4 -4
  340. package/src/components/Headers/One.tsx +4 -4
  341. package/src/components/Headers/Three.tsx +4 -4
  342. package/src/components/Headers/Two.tsx +4 -4
  343. package/src/components/Input/InputOne.tsx +4 -4
  344. package/src/components/Input/InputTwo.tsx +4 -4
  345. package/src/components/Input/PhoneNumberInput.tsx +5 -5
  346. package/src/components/Logo/Logo.tsx +4 -4
  347. package/src/components/Search/One.tsx +10 -9
  348. package/src/components/Search/components/SearchCard.tsx +4 -4
  349. package/src/components/Settings/AppSettings.tsx +6 -6
  350. package/src/components/Subscription/SubOne.tsx +15 -16
  351. package/src/components/TabBar/One.tsx +10 -6
  352. package/src/components/TabBar/Three.tsx +4 -4
  353. package/src/components/TabBar/Two.tsx +9 -6
  354. package/src/components/Text/Text.tsx +5 -2
  355. package/src/components/User/DeviceSessions/DeviceSessions.tsx +6 -5
  356. package/src/components/User/ProfileUpdate/ProfileUpdate.tsx +8 -12
  357. package/src/components/User/WatchHistory/WatchHistory.tsx +5 -5
  358. package/src/components/User/WatchLater/WatchLater.tsx +7 -6
  359. package/src/components/User/components/UserAvatar.tsx +16 -10
  360. package/src/components/User/components/UserSection.tsx +5 -5
  361. package/src/components/common/AppStatusBar.tsx +51 -0
  362. package/src/components/layout/SafeAreaWrapper.tsx +4 -4
  363. package/src/store/splashStore.ts +5 -5
  364. package/src/store/themeStore.ts +53 -0
  365. package/src/theme/ThemeProvider.tsx +40 -102
  366. package/src/theme/hook/index.ts +2 -0
  367. package/src/theme/hook/useInternalTheme.ts +61 -0
  368. package/src/theme/hook/useThemeStatusBar.ts +33 -0
  369. package/src/theme/index.ts +1 -7
  370. package/src/theme/themes.ts +20 -6
  371. package/src/types/content/content-view.types.ts +3 -3
  372. package/lib/module/theme/hook/useTheme.js +0 -45
  373. package/lib/module/theme/hook/useTheme.js.map +0 -1
  374. package/lib/typescript/src/theme/hook/useTheme.d.ts +0 -9
  375. package/lib/typescript/src/theme/hook/useTheme.d.ts.map +0 -1
  376. package/src/theme/hook/useTheme.ts +0 -45
@@ -11,10 +11,11 @@ import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
11
11
  import { Text } from '../../Text';
12
12
  import Display from '../../../utils/Display';
13
13
  import type { IContentEpisodes, IContentSeasons } from '../../../types';
14
- import type { ITheme } from '../../../theme/themes';
14
+ import type { ITheme, ThemeOverride } from '../../../theme/themes';
15
15
  import { ThumbnailCard } from '../../Content/Card/components/ThumbnailCard';
16
16
  import { RFValue } from 'react-native-responsive-fontsize';
17
17
  import RentOrBuyIcon from '../../Content/Card/components/RentOrBuyIcon';
18
+ import { useInternalTheme } from '../../../theme/hook';
18
19
 
19
20
  // Constants
20
21
  const SKELETON_COUNT = 3;
@@ -43,6 +44,7 @@ interface EpisodeCardItemProps {
43
44
  season_id: string;
44
45
  season_number: number;
45
46
  episode: IContentEpisodes;
47
+ isDarkMode: boolean;
46
48
  onPress: (e: IOnPressParams) => void;
47
49
  theme: ITheme;
48
50
  style?: React.ComponentProps<typeof TouchableOpacity>['style'];
@@ -53,7 +55,7 @@ interface EpisodeCardItemProps {
53
55
  interface EpisodeCardProps {
54
56
  seasons: IContentSeasons[];
55
57
  onPress: (e: IOnPressParams) => void;
56
- theme: ITheme;
58
+ theme?: ThemeOverride;
57
59
  isLoading?: boolean;
58
60
  mode?: 'horizontal' | 'vertical';
59
61
  }
@@ -74,6 +76,7 @@ const EpisodeCardItem = memo(
74
76
  season_number,
75
77
  episode,
76
78
  onPress,
79
+ isDarkMode,
77
80
  theme,
78
81
  style,
79
82
  thumbnailHeight,
@@ -109,15 +112,21 @@ const EpisodeCardItem = memo(
109
112
  flexDirection: isVerticalMode
110
113
  ? ('row' as const)
111
114
  : ('column' as const),
112
- borderWidth: isVerticalMode ? 0 : theme.dark ? 0 : BORDER_WIDTH,
115
+ borderWidth: isVerticalMode ? 0 : isDarkMode ? 0 : BORDER_WIDTH,
113
116
  borderColor: isVerticalMode
114
117
  ? 'transparent'
115
- : theme.dark
118
+ : isDarkMode
116
119
  ? 'transparent'
117
120
  : theme.colors.border,
118
121
  },
119
122
  ],
120
- [style, isVerticalMode, theme]
123
+ [
124
+ style,
125
+ isVerticalMode,
126
+ theme.colors.surfaceVariant,
127
+ theme.colors.border,
128
+ isDarkMode,
129
+ ]
121
130
  );
122
131
 
123
132
  const windowWidth = Display.fullWidth;
@@ -202,6 +211,7 @@ const EpisodeCardItem = memo(
202
211
  <View style={[styles.cardContent, isVerticalMode && styles.cardGrid]}>
203
212
  <View style={thumbnailStyle}>
204
213
  <RentOrBuyIcon
214
+ theme={theme}
205
215
  content_offering_type={episode.content_offering_type}
206
216
  />
207
217
  <ThumbnailCard
@@ -254,10 +264,11 @@ const EpisodeCardItem = memo(
254
264
  export const EpisodeCard = ({
255
265
  seasons,
256
266
  onPress,
257
- theme,
267
+ theme: themeOverride,
258
268
  isLoading = false,
259
269
  mode = 'horizontal',
260
270
  }: EpisodeCardProps) => {
271
+ const { isDarkMode, theme } = useInternalTheme(themeOverride);
261
272
  const [selectedSeasonIndex, setSelectedSeasonIndex] = useState(0);
262
273
  const windowWidth = Display.fullWidth;
263
274
 
@@ -324,13 +335,14 @@ export const EpisodeCard = ({
324
335
  theme={theme}
325
336
  season_id={selectedSeason._id}
326
337
  episode={item}
338
+ isDarkMode={isDarkMode}
327
339
  season_number={selectedSeason.season_number}
328
340
  onPress={onPress}
329
341
  style={{ width: cardWidth }}
330
342
  thumbnailHeight={thumbnailHeight}
331
343
  />
332
344
  ) : null,
333
- [theme, selectedSeason, onPress, cardWidth, thumbnailHeight]
345
+ [selectedSeason, theme, isDarkMode, onPress, cardWidth, thumbnailHeight]
334
346
  );
335
347
 
336
348
  const renderLoadingItem = useCallback(
@@ -338,6 +350,7 @@ export const EpisodeCard = ({
338
350
  <EpisodeCardItem
339
351
  theme={theme}
340
352
  season_id=""
353
+ isDarkMode={isDarkMode}
341
354
  season_number={0}
342
355
  episode={{
343
356
  _id: '',
@@ -361,7 +374,7 @@ export const EpisodeCard = ({
361
374
  isLoading
362
375
  />
363
376
  ),
364
- [theme, onPress, cardWidth, thumbnailHeight]
377
+ [theme, isDarkMode, onPress, cardWidth, thumbnailHeight]
365
378
  );
366
379
 
367
380
  if (isLoading) {
@@ -17,6 +17,7 @@ import MenuBtn from '../../Button/MenuBtn';
17
17
  import type { HeroBannerProps } from '../../../types/content/content-view.types';
18
18
  import { RFValue } from 'react-native-responsive-fontsize';
19
19
  import RentOrBuyIcon from '../../Content/Card/components/RentOrBuyIcon';
20
+ import { useInternalTheme } from '../../../theme/hook';
20
21
 
21
22
  const SKELETON_CIRCLE_SIZE = scale(50);
22
23
  const BANNER_HEIGHT = verticalScale(200);
@@ -26,7 +27,7 @@ const BACK_BTN_SIZE = scale(35);
26
27
  export const HeroBanner = ({
27
28
  backgroundImage,
28
29
  title,
29
- theme,
30
+ theme: themeOverride,
30
31
  isLoading = false,
31
32
  onPressPlay,
32
33
  onBackPress,
@@ -36,6 +37,7 @@ export const HeroBanner = ({
36
37
  menuActions,
37
38
  content_offering_type,
38
39
  }: HeroBannerProps) => {
40
+ const { theme } = useInternalTheme(themeOverride);
39
41
  const [hasImageLoaded, setHasImageLoaded] = useState(false);
40
42
  const [imageLoadError, setImageLoadError] = useState(false);
41
43
 
@@ -154,7 +156,7 @@ export const HeroBanner = ({
154
156
  : (renderButtons?.back?.() ??
155
157
  (onBackPress && (
156
158
  <BackBtn
157
- theme={theme}
159
+ theme={themeOverride}
158
160
  onPress={onBackPress}
159
161
  style={styles.defaultBackBtn}
160
162
  size={scale(20)}
@@ -181,7 +183,7 @@ export const HeroBanner = ({
181
183
  : menuActions &&
182
184
  (renderButtons?.menu?.() ?? (
183
185
  <MenuBtn
184
- theme={theme}
186
+ theme={themeOverride}
185
187
  style={styles.defaultMenuBtn}
186
188
  actions={menuActions}
187
189
  />
@@ -200,6 +202,7 @@ export const HeroBanner = ({
200
202
  {content_offering_type && (
201
203
  <RentOrBuyIcon
202
204
  size={30}
205
+ theme={theme}
203
206
  style={styles.rentOrBuyIcon}
204
207
  content_offering_type={content_offering_type}
205
208
  />
@@ -269,6 +272,8 @@ export const HeroBanner = ({
269
272
  <Animated.View style={styles.centeredContent}>
270
273
  {renderButtons?.play?.() ?? (
271
274
  <PlayButton
275
+ color={theme.colors.buttonText}
276
+ backgroundColor={theme.colors.button}
272
277
  onPress={() => handlePressPlay({ is_trailer: false })}
273
278
  />
274
279
  )}
@@ -277,6 +282,8 @@ export const HeroBanner = ({
277
282
  <Animated.View style={styles.trailerButtonWrapper}>
278
283
  {renderButtons?.trailer?.() ?? (
279
284
  <TrailerButton
285
+ color={theme.colors.buttonText}
286
+ backgroundColor={theme.colors.button}
280
287
  onPress={() => handlePressPlay({ is_trailer: true })}
281
288
  />
282
289
  )}
@@ -18,7 +18,7 @@ interface Props {
18
18
  onPress?: (event: GestureResponderEvent) => void;
19
19
  label?: string;
20
20
  iconSize?: number;
21
- iconColor?: string;
21
+ color?: string;
22
22
  backgroundColor?: string;
23
23
  textStyle?: TextStyle;
24
24
  style?: ViewStyle;
@@ -28,7 +28,7 @@ export const TrailerButton = ({
28
28
  onPress,
29
29
  label = 'Watch Trailer',
30
30
  iconSize = scale(18),
31
- iconColor = '#000',
31
+ color = '#000',
32
32
  backgroundColor = '#FFD700',
33
33
  textStyle,
34
34
  style,
@@ -39,8 +39,10 @@ export const TrailerButton = ({
39
39
  activeOpacity={0.8}
40
40
  style={[styles.button, { backgroundColor }, style]}
41
41
  >
42
- <PlayCircle size={iconSize} color={iconColor} />
43
- <Text style={[styles.text, textStyle]}> {label}</Text>
42
+ <PlayCircle size={iconSize} color={color} />
43
+ <Text style={[styles.text, textStyle]} color={color}>
44
+ {label}
45
+ </Text>
44
46
  </TouchableOpacity>
45
47
  );
46
48
  };
@@ -54,7 +56,6 @@ const styles = StyleSheet.create({
54
56
  alignItems: 'center',
55
57
  },
56
58
  text: {
57
- color: '#000',
58
59
  fontWeight: '600',
59
60
  fontSize: scale(12),
60
61
  marginLeft: scale(2),
@@ -12,10 +12,10 @@ import {
12
12
  type TextStyle,
13
13
  } from 'react-native';
14
14
  import { ArrowLeft } from 'lucide-react-native';
15
- import { useTheme } from '../../theme/hook/useTheme';
15
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
16
16
  import { scale, verticalScale } from 'react-native-size-matters';
17
17
  import { Text } from '../Text';
18
- import type { AppTheme } from '../../theme/themes';
18
+ import type { ThemeOverride } from '../../theme/themes';
19
19
  import { RFValue } from 'react-native-responsive-fontsize';
20
20
 
21
21
  export type AppHeaderProps = {
@@ -26,7 +26,7 @@ export type AppHeaderProps = {
26
26
  style?: StyleProp<ViewStyle>;
27
27
  titleStyle?: TextStyle;
28
28
  titleAlign?: 'center' | 'left';
29
- theme?: AppTheme;
29
+ theme?: ThemeOverride;
30
30
  };
31
31
 
32
32
  const AppHeader: React.FC<AppHeaderProps> = ({
@@ -39,7 +39,7 @@ const AppHeader: React.FC<AppHeaderProps> = ({
39
39
  titleAlign = 'center',
40
40
  theme,
41
41
  }) => {
42
- const { theme: appliedTheme } = useTheme(theme);
42
+ const { theme: appliedTheme } = useInternalTheme(theme);
43
43
 
44
44
  return (
45
45
  <View
@@ -7,15 +7,15 @@ import React, { useMemo } from 'react';
7
7
  import { Platform, Pressable, StyleSheet, View } from 'react-native';
8
8
  import { scale, verticalScale } from 'react-native-size-matters';
9
9
  import { Logo } from '../Logo/Logo';
10
- import type { AppTheme } from '../../theme/themes';
11
- import { useTheme } from '../../theme/hook/useTheme';
10
+ import type { ThemeOverride } from '../../theme/themes';
11
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
12
12
  import {
13
13
  Menu as DefaultMenuIcon,
14
14
  Search as DefaultSearchIcon,
15
15
  } from 'lucide-react-native';
16
16
 
17
17
  export interface HeaderOneProps {
18
- theme?: AppTheme;
18
+ theme?: ThemeOverride;
19
19
  logoUri: string;
20
20
  MenuIcon?: React.FC<{ width: number; height: number; color?: string }>;
21
21
  SearchIcon?: React.FC<{ width: number; height: number; color?: string }>;
@@ -34,7 +34,7 @@ const HeaderOne: React.FC<HeaderOneProps> = ({
34
34
  onSearchPress,
35
35
  isLoading,
36
36
  }) => {
37
- const { theme: appliedTheme } = useTheme(theme);
37
+ const { theme: appliedTheme } = useInternalTheme(theme);
38
38
 
39
39
  const iconColor = appliedTheme.colors?.onSurface;
40
40
  const rippleColor = appliedTheme.colors.surfaceVariant + '33';
@@ -6,13 +6,13 @@ import React from 'react';
6
6
  import { Platform, StyleSheet, View } from 'react-native';
7
7
  import { scale, verticalScale } from 'react-native-size-matters';
8
8
  import { Logo } from '../Logo/Logo';
9
- import type { AppTheme } from '../../theme/themes';
10
- import { useTheme } from '../../theme/hook/useTheme';
9
+ import type { ThemeOverride } from '../../theme/themes';
10
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
11
11
 
12
12
  export interface HeaderThreeProps {
13
13
  logoUri: string;
14
14
  category?: React.ReactNode;
15
- theme?: AppTheme;
15
+ theme?: ThemeOverride;
16
16
  isLoading?: boolean;
17
17
  }
18
18
 
@@ -22,7 +22,7 @@ const HeaderThree: React.FC<HeaderThreeProps> = ({
22
22
  theme,
23
23
  isLoading,
24
24
  }) => {
25
- const { theme: appliedTheme } = useTheme(theme);
25
+ const { theme: appliedTheme } = useInternalTheme(theme);
26
26
  return (
27
27
  <View
28
28
  style={[
@@ -6,11 +6,11 @@ import React from 'react';
6
6
  import { Platform, Pressable, StyleSheet, View } from 'react-native';
7
7
  import { scale, verticalScale } from 'react-native-size-matters';
8
8
  import { Logo } from '../Logo/Logo';
9
- import type { AppTheme } from '../../theme/themes';
10
- import { useTheme } from '../../theme/hook/useTheme';
9
+ import type { ThemeOverride } from '../../theme/themes';
10
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
11
11
  import { Menu } from 'lucide-react-native';
12
12
  export interface HeaderTwoProps {
13
- theme?: AppTheme;
13
+ theme?: ThemeOverride;
14
14
  logoUri: string;
15
15
  MenuIcon?: React.FC<{ width: number; height: number; color?: string }>;
16
16
  onMenuPress?: () => void;
@@ -24,7 +24,7 @@ const HeaderTwo: React.FC<HeaderTwoProps> = ({
24
24
  onMenuPress,
25
25
  isLoading,
26
26
  }) => {
27
- const { theme: appliedTheme } = useTheme(theme);
27
+ const { theme: appliedTheme } = useInternalTheme(theme);
28
28
 
29
29
  const rippleColor = appliedTheme.colors.surfaceVariant + '33';
30
30
  const pressedBackgroundColor = appliedTheme.colors.surfaceVariant;
@@ -15,8 +15,8 @@ import {
15
15
  } from 'react-native';
16
16
  import { Eye, EyeOff } from 'lucide-react-native';
17
17
  import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
18
- import { useTheme } from '../../theme/hook/useTheme';
19
- import type { AppTheme } from '../../theme/themes';
18
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
19
+ import type { ThemeOverride } from '../../theme/themes';
20
20
  import { RFValue } from 'react-native-responsive-fontsize';
21
21
 
22
22
  export interface InputOneProps extends Omit<TextInputProps, 'theme'> {
@@ -25,7 +25,7 @@ export interface InputOneProps extends Omit<TextInputProps, 'theme'> {
25
25
  errorMessage?: string;
26
26
  error?: boolean;
27
27
  secureTextEntry?: boolean;
28
- theme?: AppTheme;
28
+ theme?: ThemeOverride;
29
29
  label?: string;
30
30
  placeholderTextColor?: string;
31
31
  disabled?: boolean;
@@ -43,7 +43,7 @@ const InputOne: React.FC<InputOneProps> = ({
43
43
  disabled,
44
44
  ...props
45
45
  }) => {
46
- const { theme: appliedTheme } = useTheme(theme);
46
+ const { theme: appliedTheme } = useInternalTheme(theme);
47
47
  const [showPassword, setShowPassword] = useState(false);
48
48
  const isPasswordField = !!secureTextEntry;
49
49
  const inputSecure = isPasswordField && !showPassword;
@@ -16,8 +16,8 @@ import {
16
16
  } from 'react-native';
17
17
  import { Eye, EyeOff } from 'lucide-react-native';
18
18
  import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
19
- import { useTheme } from '../../theme/hook/useTheme';
20
- import type { AppTheme } from '../../theme/themes';
19
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
20
+ import type { ThemeOverride } from '../../theme/themes';
21
21
  import { RFValue } from 'react-native-responsive-fontsize';
22
22
 
23
23
  export interface InputTwoProps extends Omit<TextInputProps, 'theme'> {
@@ -26,7 +26,7 @@ export interface InputTwoProps extends Omit<TextInputProps, 'theme'> {
26
26
  errorMessage?: string;
27
27
  error?: boolean;
28
28
  secureTextEntry?: boolean;
29
- theme?: AppTheme;
29
+ theme?: ThemeOverride;
30
30
  label?: string;
31
31
  placeholderTextColor?: string;
32
32
  disabled?: boolean;
@@ -53,7 +53,7 @@ const InputTwo: React.FC<InputTwoProps> = ({
53
53
  onPressRightIcon,
54
54
  ...props
55
55
  }) => {
56
- const { theme: appliedTheme } = useTheme(theme);
56
+ const { theme: appliedTheme } = useInternalTheme(theme);
57
57
  const [showPassword, setShowPassword] = useState(false);
58
58
  const isPasswordField = !!secureTextEntry;
59
59
  const inputSecure = isPasswordField && !showPassword;
@@ -26,8 +26,8 @@ import { getExampleNumber } from 'libphonenumber-js';
26
26
  import examples from 'libphonenumber-js/mobile/examples';
27
27
  import { parsePhoneNumberFromString } from 'libphonenumber-js';
28
28
  import debounce from 'lodash.debounce';
29
- import { useTheme } from '../../theme/hook/useTheme';
30
- import type { AppTheme } from '../../theme/themes';
29
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
30
+ import type { ThemeOverride } from '../../theme/themes';
31
31
  import { RFValue } from 'react-native-responsive-fontsize';
32
32
 
33
33
  export interface PhoneNumberInputProps
@@ -44,7 +44,7 @@ export interface PhoneNumberInputProps
44
44
  errorMessage?: string;
45
45
  inputStyle?: TextStyle;
46
46
  containerStyle?: ViewStyle;
47
- theme?: AppTheme;
47
+ theme?: ThemeOverride;
48
48
  disabled?: boolean;
49
49
  }
50
50
 
@@ -79,7 +79,7 @@ const PhoneNumberInputOne: React.FC<PhoneNumberInputProps> = ({
79
79
  disabled = false,
80
80
  }) => {
81
81
  const phoneInputRef = useRef<PhoneInput>(null);
82
- const { theme: appliedTheme } = useTheme(propTheme);
82
+ const { theme: appliedTheme, isDarkMode } = useInternalTheme(propTheme);
83
83
  const [inputError, setInputError] = useState<string | null>(null);
84
84
  const [isFocused, setIsFocused] = useState<boolean>(false);
85
85
  const errorAnimation = useRef(new Animated.Value(0)).current;
@@ -343,7 +343,7 @@ const PhoneNumberInputOne: React.FC<PhoneNumberInputProps> = ({
343
343
  onFocus: () => setIsFocused(true),
344
344
  onBlur: () => setIsFocused(false),
345
345
  }}
346
- withDarkTheme={appliedTheme.dark}
346
+ withDarkTheme={isDarkMode}
347
347
  />
348
348
  </View>
349
349
  {(error || inputError) && (
@@ -13,8 +13,8 @@ import {
13
13
  import { moderateScale } from 'react-native-size-matters';
14
14
  import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
15
15
  import { useSplashCache } from '../../hooks/useSplashCache';
16
- import { useTheme } from '../../theme/hook/useTheme';
17
- import type { AppTheme } from '../../theme/themes';
16
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
17
+ import type { ThemeOverride } from '../../theme/themes';
18
18
 
19
19
  interface ILogoProps {
20
20
  width?: number;
@@ -25,7 +25,7 @@ interface ILogoProps {
25
25
  containerStyle?: StyleProp<ViewStyle>;
26
26
  aspectRatio?: number;
27
27
  fallbackUri?: string;
28
- theme?: AppTheme;
28
+ theme?: ThemeOverride;
29
29
  isLoading?: boolean;
30
30
  }
31
31
 
@@ -41,7 +41,7 @@ export const Logo: React.FC<ILogoProps> = ({
41
41
  theme,
42
42
  isLoading = false,
43
43
  }) => {
44
- const { theme: appliedTheme } = useTheme(theme);
44
+ const { theme: appliedTheme } = useInternalTheme(theme);
45
45
 
46
46
  const {
47
47
  data: { logoPath },
@@ -12,7 +12,7 @@ import {
12
12
  Keyboard,
13
13
  type ListRenderItem,
14
14
  } from 'react-native';
15
- import { useTheme } from '../../theme/hook/useTheme';
15
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
16
16
  import InputTwo from '../Input/InputTwo';
17
17
  import { LucideSearch, XCircle } from 'lucide-react-native';
18
18
  import { Text } from '../Text';
@@ -28,7 +28,7 @@ import type {
28
28
  ISectionItem,
29
29
  MoreFetchData,
30
30
  } from '../../types';
31
- import type { AppTheme } from '../../theme/themes';
31
+ import type { ThemeOverride } from '../../theme/themes';
32
32
  import { useRecentSearchesStore } from '../../store/RecentSearchesStore';
33
33
  import RecentSearchesSection from './components/RecentSearchesSection';
34
34
  import Cards from '../Content/Card';
@@ -62,7 +62,7 @@ export type SearchOneProps = {
62
62
  noResultsText?: string;
63
63
  recommendedContentCardStyles?: RecommendedCardStyles;
64
64
  skeletonConfig?: SearchCardSkeletonConfig;
65
- theme?: AppTheme;
65
+ theme?: ThemeOverride;
66
66
  recommendedContent?: ISectionItem | null;
67
67
  };
68
68
 
@@ -80,7 +80,7 @@ const SearchBar: React.FC<SearchOneProps> = ({
80
80
  theme,
81
81
  recommendedContent,
82
82
  }) => {
83
- const { theme: appliedTheme } = useTheme(theme);
83
+ const { theme: appliedTheme } = useInternalTheme(theme);
84
84
  const {
85
85
  recentSearches,
86
86
  addSearchTerm,
@@ -172,7 +172,7 @@ const SearchBar: React.FC<SearchOneProps> = ({
172
172
  type={recommendedContent.type}
173
173
  data={recommendedContent.content}
174
174
  isLoading={isLoading}
175
- theme={appliedTheme}
175
+ theme={theme}
176
176
  onPressItem={(item) => events?.onPressRecommendedItem?.({ item })}
177
177
  onPressMore={events?.onPressRecommendedMore}
178
178
  moreFetchData={events?.moreFetchDataRecommended}
@@ -184,13 +184,14 @@ const SearchBar: React.FC<SearchOneProps> = ({
184
184
  }, [
185
185
  shouldShowFooter,
186
186
  showRecent,
187
- recommendedContent,
188
187
  recentSearches,
189
- appliedTheme,
190
- clearSearches,
188
+ isLoading,
191
189
  handleTyping,
190
+ clearSearches,
191
+ appliedTheme,
192
+ recommendedContent,
193
+ theme,
192
194
  events,
193
- isLoading,
194
195
  recommendedContentCardStyles,
195
196
  ]);
196
197
 
@@ -9,8 +9,8 @@ import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
9
9
  import FastImage from 'react-native-fast-image';
10
10
  import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
11
11
 
12
- import { useTheme } from '../../../theme/hook/useTheme';
13
- import type { AppTheme } from '../../../theme/themes';
12
+ import { useInternalTheme } from '../../../theme/hook/useInternalTheme';
13
+ import type { ThemeOverride } from '../../../theme/themes';
14
14
 
15
15
  import { ThumbnailCard } from '../../Content/Card/components/ThumbnailCard';
16
16
  import { Text } from '../../Text';
@@ -34,7 +34,7 @@ export type SearchCardProps = {
34
34
  category?: string;
35
35
  isLoading?: boolean;
36
36
  onPress?: () => void;
37
- theme?: AppTheme;
37
+ theme?: ThemeOverride;
38
38
  skeletonConfig?: SearchCardSkeletonConfig;
39
39
  };
40
40
 
@@ -51,7 +51,7 @@ const SearchCard: React.FC<SearchCardProps> = ({
51
51
  theme,
52
52
  skeletonConfig,
53
53
  }) => {
54
- const { theme: appliedTheme } = useTheme(theme);
54
+ const { theme: appliedTheme } = useInternalTheme(theme);
55
55
  const {
56
56
  colors: {
57
57
  textPrimary,
@@ -20,7 +20,7 @@ import {
20
20
  type TextStyle,
21
21
  } from 'react-native';
22
22
  import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
23
- import { useTheme } from '../../theme/hook/useTheme';
23
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
24
24
  import DeviceInfo from 'react-native-device-info';
25
25
  import AppHeader from '../Headers/AppHeader';
26
26
  import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
@@ -30,7 +30,7 @@ import UserSection, {
30
30
  } from '../User/components/UserSection';
31
31
  import { Text } from '../Text';
32
32
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
33
- import type { AppTheme } from '../../theme/themes';
33
+ import type { ThemeOverride } from '../../theme/themes';
34
34
  import { RFValue } from 'react-native-responsive-fontsize';
35
35
 
36
36
  // ✅ Types
@@ -64,7 +64,7 @@ export type AppSettingsProps = {
64
64
  titleAlign?: 'left' | 'center';
65
65
  userInfo?: UserInfo;
66
66
  menuItems: MenuItem[];
67
- theme?: AppTheme;
67
+ theme?: ThemeOverride;
68
68
  isLoading?: boolean;
69
69
  versionText?: string;
70
70
  onBackPress?: () => void;
@@ -106,7 +106,7 @@ export const AppSettings: FC<AppSettingsProps> = ({
106
106
  userInfoTextStyle = {},
107
107
  menuItemStyle = {},
108
108
  }) => {
109
- const { theme: appliedTheme } = useTheme(theme);
109
+ const { theme: appliedTheme } = useInternalTheme(theme);
110
110
  const insets = useSafeAreaInsets();
111
111
  // ✅ State for toggle values
112
112
  const [toggleStates, setToggleStates] = useState<Record<string, boolean>>(
@@ -242,7 +242,7 @@ export const AppSettings: FC<AppSettingsProps> = ({
242
242
  title={title || 'Settings'}
243
243
  titleAlign={titleAlign}
244
244
  onBackPress={onBackPress}
245
- theme={appliedTheme}
245
+ theme={theme}
246
246
  />
247
247
  ))}
248
248
  <ScrollView
@@ -255,7 +255,7 @@ export const AppSettings: FC<AppSettingsProps> = ({
255
255
  >
256
256
  {userInfo && (
257
257
  <UserSection
258
- theme={appliedTheme}
258
+ theme={theme}
259
259
  userInfo={userInfo}
260
260
  avatarComponent={avatarComponent}
261
261
  isLoading={isLoading}