@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
@@ -19,10 +19,10 @@ import { Play } from 'lucide-react-native';
19
19
  import { Text } from '../../../../Text';
20
20
  import Display from '../../../../../utils/Display';
21
21
  import type { IContentData, ISectionContent } from '../../../../../types';
22
- import type { AppTheme } from '../../../../../theme/themes';
23
- import { useTheme } from '../../../../../theme/hook/useTheme';
22
+ import { useInternalTheme } from '../../../../../theme/hook/useInternalTheme';
24
23
  import { RFValue } from 'react-native-responsive-fontsize';
25
24
  import RentOrBuyIcon from '../../components/RentOrBuyIcon';
25
+ import type { ThemeOverride } from '../../../../../theme/themes';
26
26
 
27
27
  // Constants
28
28
  const DEFAULT_SKELETON_COUNT = 3;
@@ -38,7 +38,7 @@ type SliderOneProps = {
38
38
  showPlayIcon?: boolean;
39
39
  isLoading?: boolean;
40
40
  skeletonCount?: number;
41
- theme?: AppTheme;
41
+ theme?: ThemeOverride;
42
42
  } & AccessibilityProps;
43
43
 
44
44
  // ImageTouchable component
@@ -74,7 +74,7 @@ const SliderOne: React.FC<SliderOneProps> = ({
74
74
  accessibilityLabel = 'Content carousel',
75
75
  accessibilityHint = 'Swipe to view content',
76
76
  }) => {
77
- const { theme: appliedTheme } = useTheme(theme);
77
+ const { theme: appliedTheme } = useInternalTheme(theme);
78
78
  const contentData = useMemo(() => data?.data ?? [], [data]);
79
79
  const [activeIndex, setActiveIndex] = useState<number>(0);
80
80
 
@@ -90,7 +90,10 @@ const SliderOne: React.FC<SliderOneProps> = ({
90
90
  ({ item }: { item: IContentData }) => (
91
91
  <View style={styles.sliderContainer}>
92
92
  <ImageTouchable onImagePress={() => onPressItem?.(item)}>
93
- <RentOrBuyIcon content_offering_type={item.content_offering_type} />
93
+ <RentOrBuyIcon
94
+ theme={appliedTheme}
95
+ content_offering_type={item.content_offering_type}
96
+ />
94
97
  <FastImage
95
98
  source={{
96
99
  uri: item.thumbnail,
@@ -139,7 +142,7 @@ const SliderOne: React.FC<SliderOneProps> = ({
139
142
  </ImageTouchable>
140
143
  </View>
141
144
  ),
142
- [onPressItem, showPlayIcon, appliedTheme.colors]
145
+ [appliedTheme, showPlayIcon, onPressItem]
143
146
  );
144
147
 
145
148
  // Render skeleton item
@@ -15,13 +15,13 @@ import FastImage from 'react-native-fast-image';
15
15
  import LinearGradient from 'react-native-linear-gradient';
16
16
  import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
17
17
  import { Text } from '../../../../Text';
18
- import { useTheme } from '../../../../../theme/hook/useTheme';
18
+ import { useInternalTheme } from '../../../../../theme/hook/useInternalTheme';
19
19
  import Display from '../../../../../utils/Display';
20
20
  import { ThumbnailCard } from '../../components/ThumbnailCard';
21
21
  import type { IContentData, ISectionContent } from '../../../../../types';
22
- import type { AppTheme } from '../../../../../theme/themes';
23
22
  import { RFValue } from 'react-native-responsive-fontsize';
24
23
  import RentOrBuyIcon from '../../components/RentOrBuyIcon';
24
+ import type { ThemeOverride } from '../../../../../theme/themes';
25
25
 
26
26
  const FULL_WIDTH = Display.fullWidth;
27
27
  const FULL_HEIGHT = FULL_WIDTH * (9 / 16);
@@ -31,7 +31,7 @@ type SliderTwoProps = {
31
31
  onPressItem?: (item: IContentData) => void;
32
32
  isLoading?: boolean;
33
33
  skeletonCount?: number;
34
- theme?: AppTheme;
34
+ theme?: ThemeOverride;
35
35
  } & AccessibilityProps;
36
36
 
37
37
  const SliderTwo: React.FC<SliderTwoProps> = ({
@@ -43,7 +43,7 @@ const SliderTwo: React.FC<SliderTwoProps> = ({
43
43
  accessibilityHint = 'Swipe to view content',
44
44
  theme,
45
45
  }) => {
46
- const { theme: appliedTheme } = useTheme(theme);
46
+ const { theme: appliedTheme } = useInternalTheme(theme);
47
47
  const contentData = useMemo(() => data?.data ?? [], [data]);
48
48
  const [activeIndex, setActiveIndex] = useState(0);
49
49
  const gradientColors = useMemo(
@@ -75,7 +75,10 @@ const SliderTwo: React.FC<SliderTwoProps> = ({
75
75
  accessibilityRole="button"
76
76
  accessibilityLabel={`View ${item.name}`}
77
77
  >
78
- <RentOrBuyIcon content_offering_type={item.content_offering_type} />
78
+ <RentOrBuyIcon
79
+ theme={appliedTheme}
80
+ content_offering_type={item.content_offering_type}
81
+ />
79
82
  <ThumbnailCard
80
83
  thumbnailUri={item.thumbnail}
81
84
  theme={appliedTheme}
@@ -23,8 +23,8 @@ import FastImage from 'react-native-fast-image';
23
23
  import CardPoster from '../components/CardPoster';
24
24
  import NavigateToMore from '../components/NavigateToMore';
25
25
  import { usePaginatedSection } from '../../../../hooks/usePaginatedSection';
26
- import { useTheme } from '../../../../theme/hook/useTheme';
27
- import type { AppTheme, ITheme } from '../../../../theme/themes';
26
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
27
+ import type { ITheme, ThemeOverride } from '../../../../theme/themes';
28
28
  import type {
29
29
  IContentData,
30
30
  IGetSectionData,
@@ -38,7 +38,7 @@ const DEFAULT_BORDER_RADIUS = moderateScale(5);
38
38
  const DEFAULT_SKELETON_COUNT = 3;
39
39
 
40
40
  type MovieCardFiveProps = {
41
- theme?: AppTheme;
41
+ theme?: ThemeOverride;
42
42
  title: string;
43
43
  section_id: string;
44
44
  type: IGetSectionData['type'];
@@ -83,7 +83,7 @@ const MovieCardFive: React.FC<MovieCardFiveProps> = ({
83
83
  accessibilityLabel,
84
84
  accessibilityHint,
85
85
  }) => {
86
- const { theme: appliedTheme } = useTheme(theme);
86
+ const { theme: appliedTheme } = useInternalTheme(theme);
87
87
  const flatListRef = useRef<FlatList<IContentData>>(null);
88
88
  const onEndReachedCalledDuringMomentum = useRef(false);
89
89
  const styles = useMemo(
@@ -220,7 +220,7 @@ const MovieCardFive: React.FC<MovieCardFiveProps> = ({
220
220
  titleStyle,
221
221
  ]}
222
222
  containerStyle={styles.navigateToMoreContainer}
223
- showAllProps={{ iconColor: appliedTheme.colors.textPrimary }}
223
+ showAllProps={{ iconColor: appliedTheme.colors.textPrimary, theme }}
224
224
  />
225
225
  <FlatList
226
226
  ref={flatListRef}
@@ -20,7 +20,7 @@ import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
20
20
  import { moderateScale, verticalScale } from 'react-native-size-matters';
21
21
  import { usePaginatedSection } from '../../../../hooks/usePaginatedSection';
22
22
  import NavigateToMore from '../components/NavigateToMore';
23
- import { useTheme } from '../../../../theme/hook/useTheme';
23
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
24
24
  import CardPoster from '../components/CardPoster';
25
25
  import FastImage from 'react-native-fast-image';
26
26
  import type {
@@ -29,7 +29,7 @@ import type {
29
29
  ISectionContent,
30
30
  MoreFetchData,
31
31
  } from '../../../../types';
32
- import type { AppTheme, ITheme } from '../../../../theme/themes';
32
+ import type { ITheme, ThemeOverride } from '../../../../theme/themes';
33
33
  import { RFValue } from 'react-native-responsive-fontsize';
34
34
 
35
35
  // default values
@@ -62,7 +62,7 @@ type MovieCardFourProps = {
62
62
  titleStyle?: StyleProp<TextStyle>;
63
63
  itemStyle?: StyleProp<ViewStyle>;
64
64
  isLoading?: boolean;
65
- theme?: AppTheme;
65
+ theme?: ThemeOverride;
66
66
  } & AccessibilityProps;
67
67
 
68
68
  const MovieCardFour: React.FC<MovieCardFourProps> = ({
@@ -88,7 +88,7 @@ const MovieCardFour: React.FC<MovieCardFourProps> = ({
88
88
  }) => {
89
89
  const flatListRef = useRef<FlatList<IContentData>>(null);
90
90
  const onEndReachedCalledDuringMomentum = useRef(false);
91
- const { theme: appliedTheme } = useTheme(theme);
91
+ const { theme: appliedTheme } = useInternalTheme(theme);
92
92
 
93
93
  const styles = useMemo(
94
94
  () => getStyles(appliedTheme, itemWidth, itemHeight, borderRadius),
@@ -228,7 +228,7 @@ const MovieCardFour: React.FC<MovieCardFourProps> = ({
228
228
  titleStyle,
229
229
  ]}
230
230
  containerStyle={styles.navigateToMoreContainer}
231
- showAllProps={{ iconColor: appliedTheme.colors.textPrimary }}
231
+ showAllProps={{ iconColor: appliedTheme.colors.textPrimary, theme }}
232
232
  />
233
233
  <FlatList
234
234
  ref={flatListRef}
@@ -18,7 +18,7 @@ import {
18
18
  import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
19
19
  import FastImage from 'react-native-fast-image';
20
20
  import { moderateScale, verticalScale } from 'react-native-size-matters';
21
- import { useTheme } from '../../../../theme/hook/useTheme';
21
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
22
22
  import CardPoster from '../components/CardPoster';
23
23
  import NavigateToMore from '../components/NavigateToMore';
24
24
  import { usePaginatedSection } from '../../../../hooks/usePaginatedSection';
@@ -28,7 +28,7 @@ import type {
28
28
  ISectionContent,
29
29
  MoreFetchData,
30
30
  } from '../../../../types';
31
- import type { AppTheme, ITheme } from '../../../../theme/themes';
31
+ import type { ITheme, ThemeOverride } from '../../../../theme/themes';
32
32
  import { RFValue } from 'react-native-responsive-fontsize';
33
33
 
34
34
  // Constants
@@ -61,7 +61,7 @@ type MovieCardProps = {
61
61
  titleStyle?: StyleProp<TextStyle>;
62
62
  itemStyle?: StyleProp<ViewStyle>;
63
63
  isLoading?: boolean;
64
- theme?: AppTheme;
64
+ theme?: ThemeOverride;
65
65
  } & AccessibilityProps;
66
66
 
67
67
  const MovieCard: React.FC<MovieCardProps> = ({
@@ -87,7 +87,7 @@ const MovieCard: React.FC<MovieCardProps> = ({
87
87
  }) => {
88
88
  const flatListRef = useRef<FlatList<IContentData>>(null);
89
89
  const onEndReachedCalledDuringMomentum = useRef(false);
90
- const { theme: appliedTheme } = useTheme(theme);
90
+ const { theme: appliedTheme } = useInternalTheme(theme);
91
91
 
92
92
  const styles = useMemo(
93
93
  () => getStyles(appliedTheme, itemWidth, itemHeight, borderRadius),
@@ -230,7 +230,7 @@ const MovieCard: React.FC<MovieCardProps> = ({
230
230
  titleStyle,
231
231
  ]}
232
232
  containerStyle={styles.navigateToMoreContainer}
233
- showAllProps={{ iconColor: appliedTheme.colors.textPrimary }}
233
+ showAllProps={{ iconColor: appliedTheme.colors.textPrimary, theme }}
234
234
  />
235
235
  <FlatList
236
236
  ref={flatListRef}
@@ -19,7 +19,7 @@ import Carousel from 'react-native-snap-carousel';
19
19
  import { moderateScale, verticalScale } from 'react-native-size-matters';
20
20
  import { debounce } from 'lodash';
21
21
 
22
- import { useTheme } from '../../../../theme/hook/useTheme';
22
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
23
23
  import CardPoster from '../components/CardPoster';
24
24
  import NavigateToMore from '../components/NavigateToMore';
25
25
 
@@ -30,7 +30,7 @@ import type {
30
30
  ISectionContent,
31
31
  MoreFetchData,
32
32
  } from '../../../../types';
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
  const { width, height } = Dimensions.get('window');
@@ -80,7 +80,7 @@ type Props = {
80
80
  titleStyle?: StyleProp<TextStyle>;
81
81
  itemStyle?: StyleProp<ViewStyle>;
82
82
  isLoading?: boolean;
83
- theme?: AppTheme;
83
+ theme?: ThemeOverride;
84
84
  };
85
85
 
86
86
  const RotateCarousel: React.FC<Props> = ({
@@ -102,7 +102,7 @@ const RotateCarousel: React.FC<Props> = ({
102
102
  isLoading = false,
103
103
  theme,
104
104
  }) => {
105
- const { theme: appliedTheme } = useTheme(theme);
105
+ const { theme: appliedTheme } = useInternalTheme(theme);
106
106
  const carouselRef = useRef<any>(null);
107
107
 
108
108
  // Memoized dynamic styles
@@ -289,7 +289,7 @@ const RotateCarousel: React.FC<Props> = ({
289
289
  titleStyle,
290
290
  ]}
291
291
  containerStyle={staticStyles.navigateToMoreContainer}
292
- showAllProps={{ iconColor: appliedTheme.colors.textPrimary }}
292
+ showAllProps={{ iconColor: appliedTheme.colors.textPrimary, theme }}
293
293
  />
294
294
  )}
295
295
  <Carousel
@@ -20,12 +20,12 @@ import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
20
20
  import { moderateScale, verticalScale } from 'react-native-size-matters';
21
21
  import FastImage from 'react-native-fast-image';
22
22
 
23
- import { useTheme } from '../../../../theme/hook/useTheme';
23
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
24
24
  import NavigateToMore from '../components/NavigateToMore';
25
25
  import { ThumbnailCard } from '../components/ThumbnailCard';
26
26
  import { Text } from '../../../Text';
27
27
  import { usePaginatedSection } from '../../../../hooks/usePaginatedSection';
28
- import type { AppTheme } from '../../../../theme/themes';
28
+ import type { ThemeOverride } from '../../../../theme/themes';
29
29
  import type {
30
30
  IContentData,
31
31
  IGetSectionData,
@@ -39,7 +39,7 @@ const DEFAULT_BORDER_RADIUS = moderateScale(5);
39
39
  const DEFAULT_SKELETON_COUNT = 3;
40
40
 
41
41
  type MovieCardSixProps = {
42
- theme?: AppTheme;
42
+ theme?: ThemeOverride;
43
43
  title: string;
44
44
  section_id: string;
45
45
  type: IGetSectionData['type'];
@@ -81,7 +81,7 @@ const MovieCardSix: React.FC<MovieCardSixProps> = ({
81
81
  }) => {
82
82
  const flatListRef = useRef<FlatList<IContentData>>(null);
83
83
  const onEndReachedCalledDuringMomentum = useRef(false);
84
- const { theme: appliedTheme } = useTheme(theme);
84
+ const { theme: appliedTheme } = useInternalTheme(theme);
85
85
 
86
86
  const paginated = usePaginatedSection(
87
87
  section_id,
@@ -124,7 +124,10 @@ const MovieCardSix: React.FC<MovieCardSixProps> = ({
124
124
  onPress={() => handleItemPress(item)}
125
125
  activeOpacity={0.8}
126
126
  >
127
- <RentOrBuyIcon content_offering_type={item.content_offering_type} />
127
+ <RentOrBuyIcon
128
+ theme={appliedTheme}
129
+ content_offering_type={item.content_offering_type}
130
+ />
128
131
  <ThumbnailCard
129
132
  thumbnailUri={item.thumbnail}
130
133
  theme={appliedTheme}
@@ -228,7 +231,7 @@ const MovieCardSix: React.FC<MovieCardSixProps> = ({
228
231
  titleStyle,
229
232
  ]}
230
233
  containerStyle={styles.navigateToMoreContainer}
231
- showAllProps={{ iconColor: appliedTheme.colors.textPrimary }}
234
+ showAllProps={{ iconColor: appliedTheme.colors.textPrimary, theme }}
232
235
  />
233
236
  <FlatList
234
237
  ref={flatListRef}
@@ -21,7 +21,7 @@ import { debounce } from 'lodash';
21
21
 
22
22
  import { usePaginatedSection } from '../../../../hooks/usePaginatedSection';
23
23
 
24
- import { useTheme } from '../../../../theme/hook/useTheme';
24
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
25
25
  import CardPoster from '../components/CardPoster';
26
26
  import NavigateToMore from '../components/NavigateToMore';
27
27
  import type {
@@ -30,7 +30,7 @@ import type {
30
30
  ISectionContent,
31
31
  MoreFetchData,
32
32
  } from '../../../../types';
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
  const { width, height } = Dimensions.get('window');
@@ -80,7 +80,7 @@ type Props = {
80
80
  titleStyle?: StyleProp<TextStyle>;
81
81
  itemStyle?: StyleProp<ViewStyle>;
82
82
  isLoading?: boolean;
83
- theme?: AppTheme;
83
+ theme?: ThemeOverride;
84
84
  };
85
85
 
86
86
  const MovieCardThree: React.FC<Props> = ({
@@ -102,7 +102,7 @@ const MovieCardThree: React.FC<Props> = ({
102
102
  isLoading = false,
103
103
  theme,
104
104
  }) => {
105
- const { theme: appliedTheme } = useTheme(theme);
105
+ const { theme: appliedTheme } = useInternalTheme(theme);
106
106
 
107
107
  const carouselRef = useRef<any>(null);
108
108
 
@@ -288,7 +288,7 @@ const MovieCardThree: React.FC<Props> = ({
288
288
  titleStyle,
289
289
  ]}
290
290
  containerStyle={staticStyles.navigateToMoreContainer}
291
- showAllProps={{ iconColor: appliedTheme.colors.textPrimary }}
291
+ showAllProps={{ iconColor: appliedTheme.colors.textPrimary, theme }}
292
292
  />
293
293
  )}
294
294
  <Carousel
@@ -17,7 +17,7 @@ import {
17
17
  } from 'react-native';
18
18
  import SkeletonPlaceholder from 'react-native-skeleton-placeholder';
19
19
  import { moderateScale, scale, verticalScale } from 'react-native-size-matters';
20
- import { useTheme } from '../../../../theme/hook/useTheme';
20
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
21
21
  import NavigateToMore from '../components/NavigateToMore';
22
22
  import { usePaginatedSection } from '../../../../hooks/usePaginatedSection';
23
23
  import type {
@@ -26,7 +26,7 @@ import type {
26
26
  ISectionContent,
27
27
  MoreFetchData,
28
28
  } from '../../../../types';
29
- import type { AppTheme, ITheme } from '../../../../theme/themes';
29
+ import type { ITheme, ThemeOverride } from '../../../../theme/themes';
30
30
  import FastImage from 'react-native-fast-image';
31
31
  import LinearGradient from 'react-native-linear-gradient';
32
32
  import { Text } from '../../../Text';
@@ -58,7 +58,7 @@ type TopTenCardProps = {
58
58
  titleStyle?: StyleProp<TextStyle>;
59
59
  itemStyle?: StyleProp<ViewStyle>;
60
60
  isLoading?: boolean;
61
- theme?: AppTheme;
61
+ theme?: ThemeOverride;
62
62
  } & AccessibilityProps;
63
63
 
64
64
  const TopTenCard: React.FC<TopTenCardProps> = ({
@@ -83,7 +83,7 @@ const TopTenCard: React.FC<TopTenCardProps> = ({
83
83
  }) => {
84
84
  const flatListRef = useRef<FlatList<IContentData>>(null);
85
85
  const onEndReachedDuringMomentum = useRef(false);
86
- const { theme: appliedTheme } = useTheme(theme);
86
+ const { theme: appliedTheme } = useInternalTheme(theme);
87
87
  const styles = useMemo(
88
88
  () => getStyles(appliedTheme, itemWidth, itemHeight, borderRadius),
89
89
  [appliedTheme, itemWidth, itemHeight, borderRadius]
@@ -240,7 +240,7 @@ const TopTenCard: React.FC<TopTenCardProps> = ({
240
240
  }
241
241
  titleStyle={[styles.title, titleStyle]}
242
242
  containerStyle={styles.navigateToMoreContainer}
243
- showAllProps={{ iconColor: appliedTheme.colors.textPrimary }}
243
+ showAllProps={{ iconColor: appliedTheme.colors.textPrimary, theme }}
244
244
  />
245
245
  <FlatList
246
246
  ref={flatListRef}
@@ -27,8 +27,8 @@ import type {
27
27
  ISectionContent,
28
28
  MoreFetchData,
29
29
  } from '../../../../types';
30
- import type { AppTheme, ITheme } from '../../../../theme/themes';
31
- import { useTheme } from '../../../../theme/hook/useTheme';
30
+ import type { ITheme, ThemeOverride } from '../../../../theme/themes';
31
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
32
32
  import NavigateToMore from '../components/NavigateToMore';
33
33
  import CardPoster from '../components/CardPoster';
34
34
  import { RFValue } from 'react-native-responsive-fontsize';
@@ -61,7 +61,7 @@ type MovieCardTwoProps = {
61
61
  titleStyle?: StyleProp<TextStyle>;
62
62
  itemStyle?: StyleProp<ViewStyle>;
63
63
  isLoading?: boolean;
64
- theme?: AppTheme;
64
+ theme?: ThemeOverride;
65
65
  } & AccessibilityProps;
66
66
 
67
67
  const MovieCardTwo: React.FC<MovieCardTwoProps> = ({
@@ -87,7 +87,7 @@ const MovieCardTwo: React.FC<MovieCardTwoProps> = ({
87
87
  const flatListRef = useRef<FlatList<IContentData>>(null);
88
88
 
89
89
  const onEndReachedCalledDuringMomentum = useRef(false);
90
- const { theme: appliedTheme } = useTheme(theme);
90
+ const { theme: appliedTheme } = useInternalTheme(theme);
91
91
 
92
92
  const styles = useMemo(
93
93
  () => getStyles(appliedTheme, itemWidth, borderRadius),
@@ -238,7 +238,7 @@ const MovieCardTwo: React.FC<MovieCardTwoProps> = ({
238
238
  { color: appliedTheme.colors.textPrimary },
239
239
  titleStyle,
240
240
  ]}
241
- showAllProps={{ iconColor: appliedTheme.colors.textPrimary }}
241
+ showAllProps={{ iconColor: appliedTheme.colors.textPrimary, theme }}
242
242
  />
243
243
  <FlatList
244
244
  ref={flatListRef}
@@ -81,6 +81,7 @@ const CardPoster: React.FC<CardPosterProps> = ({
81
81
  >
82
82
  {!showSkeleton && content_offering_type && (
83
83
  <RentOrBuyIcon
84
+ theme={theme}
84
85
  key={posterUri}
85
86
  content_offering_type={content_offering_type}
86
87
  />
@@ -17,15 +17,15 @@ import Animated, {
17
17
  } from 'react-native-reanimated';
18
18
  import { scale, verticalScale } from 'react-native-size-matters';
19
19
  import { Text } from '../../../Text';
20
- import { useTheme } from '../../../../theme/hook/useTheme';
21
- import type { AppTheme } from '../../../../theme/themes';
20
+ import { useInternalTheme } from '../../../../theme/hook/useInternalTheme';
21
+ import type { ThemeOverride } from '../../../../theme/themes';
22
22
  import { RFValue } from 'react-native-responsive-fontsize';
23
23
 
24
24
  type NoContentFallbackProps = {
25
25
  message?: string;
26
26
  retryText?: string;
27
27
  onRetry?: () => void;
28
- theme?: AppTheme;
28
+ theme?: ThemeOverride;
29
29
  emoji?: string;
30
30
  style?: StyleProp<ViewStyle>;
31
31
  };
@@ -38,7 +38,7 @@ const NoContentFallback = ({
38
38
  emoji = '😔',
39
39
  style,
40
40
  }: NoContentFallbackProps) => {
41
- const { theme: appliedTheme } = useTheme(theme);
41
+ const { theme: appliedTheme } = useInternalTheme(theme);
42
42
  const scaleValue = useSharedValue(1);
43
43
 
44
44
  const handlePressIn = useCallback(() => {
@@ -51,7 +51,7 @@ const RentOrBuyIcon: React.FC<RentOrBuyIconProps> = ({
51
51
  const typeUpper = content_offering_type.toUpperCase();
52
52
  if (!['PREMIUM', 'BUY_OR_RENT'].includes(typeUpper)) return null;
53
53
 
54
- const fillColor = theme?.colors.primary || '#CA091E';
54
+ const fillColor = theme?.colors.premiumIcon || '#CA091E';
55
55
 
56
56
  const positionStyle: ViewStyle = (() => {
57
57
  switch (position) {
@@ -17,6 +17,7 @@ import { moderateScale, scale } from 'react-native-size-matters';
17
17
  import { Text } from '../../../Text';
18
18
  import { ChevronRight } from 'lucide-react-native';
19
19
  import { RFValue } from 'react-native-responsive-fontsize';
20
+ import type { ThemeOverride } from '../../../../theme/themes';
20
21
  export type ShowAllButtonProps = {
21
22
  text?: string;
22
23
  onPress?: (event: GestureResponderEvent) => void;
@@ -27,6 +28,7 @@ export type ShowAllButtonProps = {
27
28
  containerStyle?: StyleProp<ViewStyle>;
28
29
  iconPosition?: 'left' | 'right';
29
30
  IconComponent?: React.ReactNode;
31
+ theme?: ThemeOverride;
30
32
  };
31
33
 
32
34
  const ShowAllButton: React.FC<ShowAllButtonProps> = ({
@@ -39,6 +41,7 @@ const ShowAllButton: React.FC<ShowAllButtonProps> = ({
39
41
  IconComponent,
40
42
  textStyle,
41
43
  containerStyle,
44
+ theme: overrideTheme,
42
45
  }): React.ReactElement => {
43
46
  const icon = IconComponent ?? (
44
47
  <View style={styles.iconWrapper}>
@@ -54,7 +57,9 @@ const ShowAllButton: React.FC<ShowAllButtonProps> = ({
54
57
  >
55
58
  <View style={[styles.innerRow, { columnGap: moderateScale(gap) }]}>
56
59
  {iconPosition === 'left' && icon}
57
- <Text style={[styles.text, textStyle]}>{text}</Text>
60
+ <Text style={[styles.text, textStyle]} theme={overrideTheme}>
61
+ {text}
62
+ </Text>
58
63
  {iconPosition === 'right' && icon}
59
64
  </View>
60
65
  </TouchableOpacity>
@@ -24,7 +24,7 @@ import { dummySections } from '../../constants/dummySections';
24
24
  import CategoryCard, { type ICategory } from './Card/Category/Category';
25
25
  import NoContentFallback from './Card/components/NoContentFallback';
26
26
  import type { IHistoryItem } from './Card/NowWatching/NowWatching';
27
- import type { AppTheme } from '../../theme/themes';
27
+ import type { ThemeOverride } from '../../theme/themes';
28
28
 
29
29
  export interface ICustomComponentsForContent {
30
30
  type: string;
@@ -56,7 +56,7 @@ export interface IContentProps {
56
56
  | StyleProp<ViewStyle>
57
57
  | AnimatedStyle<StyleProp<ViewStyle>>;
58
58
  onEndReached?: () => void;
59
- theme?: AppTheme;
59
+ theme?: ThemeOverride;
60
60
  autoSwitchTheme?: boolean;
61
61
  events?: {
62
62
  onPressItem?: (item: IContentData) => void;
@@ -8,7 +8,7 @@ import Cards from './Card';
8
8
  import type { IContentData, IGetSectionData, MoreFetchData } from '../../types';
9
9
  import type { IHistoryItem } from './Card/NowWatching/NowWatching';
10
10
  import type { ICategory } from './Card/Category/Category';
11
- import type { AppTheme } from '../../theme/themes';
11
+ import type { ThemeOverride } from '../../theme/themes';
12
12
  import type { IContentLoading } from './Content';
13
13
 
14
14
  export interface ICustomComponentsForSections {
@@ -25,7 +25,7 @@ export interface IProps {
25
25
  };
26
26
  name: string;
27
27
  customComponents?: ICustomComponentsForSections[];
28
- theme?: AppTheme;
28
+ theme?: ThemeOverride;
29
29
  index: number;
30
30
  section_id: string;
31
31
  events?: {
@@ -8,7 +8,7 @@ import { HeroBanner } from './components/HeroBanner';
8
8
  import { GenreTags } from './components/GenreTags';
9
9
  import { AboutSection } from './components/AboutSection';
10
10
  import { Title } from './components/Title';
11
- import { useTheme } from '../../theme/hook/useTheme';
11
+ import { useInternalTheme } from '../../theme/hook/useInternalTheme';
12
12
  import { CastCard } from './components/CastCard';
13
13
  import Cards from '../Content/Card';
14
14
  import { scale } from 'react-native-size-matters';
@@ -31,7 +31,7 @@ export const ContentView = ({
31
31
  history,
32
32
  episodeCardMode,
33
33
  }: ComponentProps) => {
34
- const { theme: appliedTheme } = useTheme(theme);
34
+ const { theme: appliedTheme } = useInternalTheme(theme);
35
35
  const seekTime = history?.currentTime || 0;
36
36
  const isComplete = history?.completed || false;
37
37
  const currentEpisode = history?.current_episode;
@@ -44,7 +44,7 @@ export const ContentView = ({
44
44
  <HeroBanner
45
45
  backgroundImage={content?.thumbnail}
46
46
  title={content?.name}
47
- theme={appliedTheme}
47
+ theme={theme}
48
48
  isLoading={isLoading}
49
49
  content_offering_type={content?.content_offering_type}
50
50
  onPressPlay={({ is_trailer }) =>
@@ -105,7 +105,7 @@ export const ContentView = ({
105
105
  });
106
106
  }
107
107
  }}
108
- theme={appliedTheme}
108
+ theme={theme}
109
109
  mode={episodeCardMode ?? 'horizontal'}
110
110
  />
111
111
  )}
@@ -117,7 +117,7 @@ export const ContentView = ({
117
117
  type={recommendedContent.type}
118
118
  data={recommendedContent.content}
119
119
  isLoading={isLoading}
120
- theme={appliedTheme}
120
+ theme={theme}
121
121
  onPressItem={(item) => events?.onPressRecommendedItem?.({ item })}
122
122
  onPressMore={events?.onPressRecommendedMore}
123
123
  moreFetchData={events?.moreFetchDataRecommended}
@@ -19,8 +19,8 @@ import { View } from '../View';
19
19
  import AppHeader, { type AppHeaderProps } from '../Headers/AppHeader';
20
20
  import { RFValue } from 'react-native-responsive-fontsize';
21
21
  import CardPoster from '../Content/Card/components/CardPoster';
22
- import type { AppTheme } from '../../theme/themes';
23
- import { useTheme } from '../../theme';
22
+ import type { ThemeOverride } from '../../theme/themes';
23
+ import { useInternalTheme } from '../../theme/hook';
24
24
  import Animated from 'react-native-reanimated';
25
25
  import { Search } from 'lucide-react-native';
26
26
 
@@ -31,7 +31,7 @@ interface Props {
31
31
  isLoading?: boolean;
32
32
  error?: boolean | string | Error;
33
33
  errorText?: string;
34
- theme?: AppTheme;
34
+ theme?: ThemeOverride;
35
35
  moreDataIsLoading?: boolean;
36
36
  onEndReached?: () => void;
37
37
  skeletonCount?: number;
@@ -61,7 +61,7 @@ const MoreContentList: React.FC<Props> = ({
61
61
  refreshing = false,
62
62
  onRefresh,
63
63
  }) => {
64
- const { theme: appliedTheme } = useTheme(theme);
64
+ const { theme: appliedTheme } = useInternalTheme(theme);
65
65
  const onEndReachedCalledDuringMomentum = useRef(false);
66
66
  const isEmpty = !isLoading && (!contentList || contentList.length === 0);
67
67
 
@@ -208,6 +208,7 @@ const MoreContentList: React.FC<Props> = ({
208
208
  <Search size={scale(23)} color={appliedTheme.colors.onBackground} />
209
209
  )
210
210
  }
211
+ theme={theme}
211
212
  {...headerProps}
212
213
  />
213
214
  {renderContent()}