@oxyhq/services 6.9.32 → 6.9.34

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 (352) hide show
  1. package/lib/commonjs/ui/components/Avatar.js +5 -3
  2. package/lib/commonjs/ui/components/Avatar.js.map +1 -1
  3. package/lib/commonjs/ui/components/BottomSheet.js +2 -2
  4. package/lib/commonjs/ui/components/BottomSheet.js.map +1 -1
  5. package/lib/commonjs/ui/components/BottomSheetRouter.js +3 -4
  6. package/lib/commonjs/ui/components/BottomSheetRouter.js.map +1 -1
  7. package/lib/commonjs/ui/components/FollowButton.js +13 -65
  8. package/lib/commonjs/ui/components/FollowButton.js.map +1 -1
  9. package/lib/commonjs/ui/components/GroupedItem.js +12 -18
  10. package/lib/commonjs/ui/components/GroupedItem.js.map +1 -1
  11. package/lib/commonjs/ui/components/Header.js +11 -18
  12. package/lib/commonjs/ui/components/Header.js.map +1 -1
  13. package/lib/commonjs/ui/components/HelperText.js +6 -14
  14. package/lib/commonjs/ui/components/HelperText.js.map +1 -1
  15. package/lib/commonjs/ui/components/OxyLogo.js +4 -2
  16. package/lib/commonjs/ui/components/OxyLogo.js.map +1 -1
  17. package/lib/commonjs/ui/components/ProfileCard.js +13 -20
  18. package/lib/commonjs/ui/components/ProfileCard.js.map +1 -1
  19. package/lib/commonjs/ui/components/QuickActions.js +9 -13
  20. package/lib/commonjs/ui/components/QuickActions.js.map +1 -1
  21. package/lib/commonjs/ui/components/SectionTitle.js +2 -8
  22. package/lib/commonjs/ui/components/SectionTitle.js.map +1 -1
  23. package/lib/commonjs/ui/components/SignInModal.js +10 -16
  24. package/lib/commonjs/ui/components/SignInModal.js.map +1 -1
  25. package/lib/commonjs/ui/components/TextField/TextFieldFlat.js +6 -4
  26. package/lib/commonjs/ui/components/TextField/TextFieldFlat.js.map +1 -1
  27. package/lib/commonjs/ui/components/TextField/TextFieldOutlined.js +6 -4
  28. package/lib/commonjs/ui/components/TextField/TextFieldOutlined.js.map +1 -1
  29. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js +36 -51
  30. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  31. package/lib/commonjs/ui/components/fileManagement/FileViewer.js +68 -82
  32. package/lib/commonjs/ui/components/fileManagement/FileViewer.js.map +1 -1
  33. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js +35 -48
  34. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js.map +1 -1
  35. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +22 -34
  36. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -1
  37. package/lib/commonjs/ui/components/theming.js +14 -1
  38. package/lib/commonjs/ui/components/theming.js.map +1 -1
  39. package/lib/commonjs/ui/screens/AccountCenterScreen.js +15 -27
  40. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  41. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +44 -49
  42. package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -1
  43. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +22 -29
  44. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  45. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +2 -25
  46. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
  47. package/lib/commonjs/ui/screens/AccountVerificationScreen.js +20 -40
  48. package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
  49. package/lib/commonjs/ui/screens/AppInfoScreen.js +28 -24
  50. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
  51. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +25 -29
  52. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
  53. package/lib/commonjs/ui/screens/FAQScreen.js +26 -27
  54. package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -1
  55. package/lib/commonjs/ui/screens/FeedbackScreen.js +70 -108
  56. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  57. package/lib/commonjs/ui/screens/FileManagementScreen.js +106 -119
  58. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  59. package/lib/commonjs/ui/screens/HelpSupportScreen.js +13 -10
  60. package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
  61. package/lib/commonjs/ui/screens/HistoryViewScreen.js +13 -10
  62. package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
  63. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +9 -13
  64. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
  65. package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js +19 -20
  66. package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
  67. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +16 -14
  68. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
  69. package/lib/commonjs/ui/screens/OxyAuthScreen.js +33 -60
  70. package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
  71. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +2 -5
  72. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  73. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +10 -16
  74. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  75. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +65 -69
  76. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  77. package/lib/commonjs/ui/screens/ProfileScreen.js +79 -110
  78. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  79. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +16 -13
  80. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  81. package/lib/commonjs/ui/screens/SearchSettingsScreen.js +13 -17
  82. package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
  83. package/lib/commonjs/ui/screens/SessionManagementScreen.js +17 -30
  84. package/lib/commonjs/ui/screens/SessionManagementScreen.js.map +1 -1
  85. package/lib/commonjs/ui/screens/UserLinksScreen.js +6 -12
  86. package/lib/commonjs/ui/screens/UserLinksScreen.js.map +1 -1
  87. package/lib/commonjs/ui/screens/UserListScreen.js +41 -35
  88. package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
  89. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +15 -14
  90. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  91. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js +7 -12
  92. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js.map +1 -1
  93. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +25 -23
  94. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  95. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js +9 -17
  96. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js.map +1 -1
  97. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js +6 -11
  98. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
  99. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js +18 -22
  100. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js.map +1 -1
  101. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js +6 -11
  102. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
  103. package/lib/module/ui/components/Avatar.js +5 -3
  104. package/lib/module/ui/components/Avatar.js.map +1 -1
  105. package/lib/module/ui/components/BottomSheet.js +2 -2
  106. package/lib/module/ui/components/BottomSheet.js.map +1 -1
  107. package/lib/module/ui/components/BottomSheetRouter.js +3 -4
  108. package/lib/module/ui/components/BottomSheetRouter.js.map +1 -1
  109. package/lib/module/ui/components/FollowButton.js +12 -64
  110. package/lib/module/ui/components/FollowButton.js.map +1 -1
  111. package/lib/module/ui/components/GroupedItem.js +12 -18
  112. package/lib/module/ui/components/GroupedItem.js.map +1 -1
  113. package/lib/module/ui/components/Header.js +11 -18
  114. package/lib/module/ui/components/Header.js.map +1 -1
  115. package/lib/module/ui/components/HelperText.js +6 -15
  116. package/lib/module/ui/components/HelperText.js.map +1 -1
  117. package/lib/module/ui/components/OxyLogo.js +4 -2
  118. package/lib/module/ui/components/OxyLogo.js.map +1 -1
  119. package/lib/module/ui/components/ProfileCard.js +13 -20
  120. package/lib/module/ui/components/ProfileCard.js.map +1 -1
  121. package/lib/module/ui/components/QuickActions.js +9 -13
  122. package/lib/module/ui/components/QuickActions.js.map +1 -1
  123. package/lib/module/ui/components/SectionTitle.js +2 -8
  124. package/lib/module/ui/components/SectionTitle.js.map +1 -1
  125. package/lib/module/ui/components/SignInModal.js +10 -16
  126. package/lib/module/ui/components/SignInModal.js.map +1 -1
  127. package/lib/module/ui/components/TextField/TextFieldFlat.js +6 -4
  128. package/lib/module/ui/components/TextField/TextFieldFlat.js.map +1 -1
  129. package/lib/module/ui/components/TextField/TextFieldOutlined.js +6 -4
  130. package/lib/module/ui/components/TextField/TextFieldOutlined.js.map +1 -1
  131. package/lib/module/ui/components/fileManagement/FileDetailsModal.js +36 -51
  132. package/lib/module/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  133. package/lib/module/ui/components/fileManagement/FileViewer.js +68 -82
  134. package/lib/module/ui/components/fileManagement/FileViewer.js.map +1 -1
  135. package/lib/module/ui/components/fileManagement/UploadPreview.js +35 -48
  136. package/lib/module/ui/components/fileManagement/UploadPreview.js.map +1 -1
  137. package/lib/module/ui/components/modals/DeleteAccountModal.js +22 -34
  138. package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -1
  139. package/lib/module/ui/components/theming.js +15 -2
  140. package/lib/module/ui/components/theming.js.map +1 -1
  141. package/lib/module/ui/screens/AccountCenterScreen.js +14 -26
  142. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  143. package/lib/module/ui/screens/AccountOverviewScreen.js +45 -50
  144. package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -1
  145. package/lib/module/ui/screens/AccountSettingsScreen.js +21 -28
  146. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  147. package/lib/module/ui/screens/AccountSwitcherScreen.js +2 -25
  148. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
  149. package/lib/module/ui/screens/AccountVerificationScreen.js +21 -41
  150. package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
  151. package/lib/module/ui/screens/AppInfoScreen.js +28 -24
  152. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
  153. package/lib/module/ui/screens/EditProfileFieldScreen.js +25 -29
  154. package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
  155. package/lib/module/ui/screens/FAQScreen.js +26 -27
  156. package/lib/module/ui/screens/FAQScreen.js.map +1 -1
  157. package/lib/module/ui/screens/FeedbackScreen.js +70 -108
  158. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  159. package/lib/module/ui/screens/FileManagementScreen.js +106 -119
  160. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  161. package/lib/module/ui/screens/HelpSupportScreen.js +13 -10
  162. package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
  163. package/lib/module/ui/screens/HistoryViewScreen.js +13 -10
  164. package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
  165. package/lib/module/ui/screens/LanguageSelectorScreen.js +9 -13
  166. package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
  167. package/lib/module/ui/screens/LearnMoreUsernamesScreen.js +19 -20
  168. package/lib/module/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
  169. package/lib/module/ui/screens/LegalDocumentsScreen.js +16 -14
  170. package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
  171. package/lib/module/ui/screens/OxyAuthScreen.js +33 -60
  172. package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
  173. package/lib/module/ui/screens/PaymentGatewayScreen.js +2 -5
  174. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  175. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +10 -16
  176. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  177. package/lib/module/ui/screens/PrivacySettingsScreen.js +65 -69
  178. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  179. package/lib/module/ui/screens/ProfileScreen.js +77 -108
  180. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  181. package/lib/module/ui/screens/SavesCollectionsScreen.js +16 -13
  182. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  183. package/lib/module/ui/screens/SearchSettingsScreen.js +13 -17
  184. package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
  185. package/lib/module/ui/screens/SessionManagementScreen.js +17 -30
  186. package/lib/module/ui/screens/SessionManagementScreen.js.map +1 -1
  187. package/lib/module/ui/screens/UserLinksScreen.js +6 -12
  188. package/lib/module/ui/screens/UserLinksScreen.js.map +1 -1
  189. package/lib/module/ui/screens/UserListScreen.js +39 -33
  190. package/lib/module/ui/screens/UserListScreen.js.map +1 -1
  191. package/lib/module/ui/screens/WelcomeNewUserScreen.js +15 -14
  192. package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  193. package/lib/module/ui/screens/karma/KarmaAboutScreen.js +7 -12
  194. package/lib/module/ui/screens/karma/KarmaAboutScreen.js.map +1 -1
  195. package/lib/module/ui/screens/karma/KarmaCenterScreen.js +25 -23
  196. package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  197. package/lib/module/ui/screens/karma/KarmaFAQScreen.js +8 -16
  198. package/lib/module/ui/screens/karma/KarmaFAQScreen.js.map +1 -1
  199. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js +6 -11
  200. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
  201. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js +17 -21
  202. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js.map +1 -1
  203. package/lib/module/ui/screens/karma/KarmaRulesScreen.js +6 -11
  204. package/lib/module/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
  205. package/lib/typescript/commonjs/ui/components/BottomSheet.d.ts.map +1 -1
  206. package/lib/typescript/commonjs/ui/components/FollowButton.d.ts +0 -11
  207. package/lib/typescript/commonjs/ui/components/FollowButton.d.ts.map +1 -1
  208. package/lib/typescript/commonjs/ui/components/GroupedItem.d.ts.map +1 -1
  209. package/lib/typescript/commonjs/ui/components/Header.d.ts.map +1 -1
  210. package/lib/typescript/commonjs/ui/components/HelperText.d.ts.map +1 -1
  211. package/lib/typescript/commonjs/ui/components/ProfileCard.d.ts.map +1 -1
  212. package/lib/typescript/commonjs/ui/components/QuickActions.d.ts.map +1 -1
  213. package/lib/typescript/commonjs/ui/components/SectionTitle.d.ts.map +1 -1
  214. package/lib/typescript/commonjs/ui/components/SignInModal.d.ts.map +1 -1
  215. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts +2 -2
  216. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  217. package/lib/typescript/commonjs/ui/components/fileManagement/FileViewer.d.ts +2 -2
  218. package/lib/typescript/commonjs/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
  219. package/lib/typescript/commonjs/ui/components/fileManagement/UploadPreview.d.ts +2 -2
  220. package/lib/typescript/commonjs/ui/components/fileManagement/UploadPreview.d.ts.map +1 -1
  221. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  222. package/lib/typescript/commonjs/ui/components/theming.d.ts.map +1 -1
  223. package/lib/typescript/commonjs/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  224. package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  225. package/lib/typescript/commonjs/ui/screens/AccountSwitcherScreen.d.ts.map +1 -1
  226. package/lib/typescript/commonjs/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  227. package/lib/typescript/commonjs/ui/screens/AppInfoScreen.d.ts.map +1 -1
  228. package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  229. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
  230. package/lib/typescript/commonjs/ui/screens/FileManagementScreen.d.ts.map +1 -1
  231. package/lib/typescript/commonjs/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  232. package/lib/typescript/commonjs/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  233. package/lib/typescript/commonjs/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  234. package/lib/typescript/commonjs/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  235. package/lib/typescript/commonjs/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  236. package/lib/typescript/commonjs/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  237. package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  238. package/lib/typescript/commonjs/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  239. package/lib/typescript/commonjs/ui/screens/ProfileScreen.d.ts.map +1 -1
  240. package/lib/typescript/commonjs/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  241. package/lib/typescript/commonjs/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  242. package/lib/typescript/commonjs/ui/screens/SessionManagementScreen.d.ts.map +1 -1
  243. package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts.map +1 -1
  244. package/lib/typescript/commonjs/ui/screens/UserListScreen.d.ts.map +1 -1
  245. package/lib/typescript/commonjs/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  246. package/lib/typescript/commonjs/ui/screens/karma/KarmaAboutScreen.d.ts.map +1 -1
  247. package/lib/typescript/commonjs/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -1
  248. package/lib/typescript/commonjs/ui/screens/karma/KarmaFAQScreen.d.ts.map +1 -1
  249. package/lib/typescript/commonjs/ui/screens/karma/KarmaLeaderboardScreen.d.ts.map +1 -1
  250. package/lib/typescript/commonjs/ui/screens/karma/KarmaRewardsScreen.d.ts.map +1 -1
  251. package/lib/typescript/commonjs/ui/screens/karma/KarmaRulesScreen.d.ts.map +1 -1
  252. package/lib/typescript/module/ui/components/BottomSheet.d.ts.map +1 -1
  253. package/lib/typescript/module/ui/components/FollowButton.d.ts +0 -11
  254. package/lib/typescript/module/ui/components/FollowButton.d.ts.map +1 -1
  255. package/lib/typescript/module/ui/components/GroupedItem.d.ts.map +1 -1
  256. package/lib/typescript/module/ui/components/Header.d.ts.map +1 -1
  257. package/lib/typescript/module/ui/components/HelperText.d.ts.map +1 -1
  258. package/lib/typescript/module/ui/components/ProfileCard.d.ts.map +1 -1
  259. package/lib/typescript/module/ui/components/QuickActions.d.ts.map +1 -1
  260. package/lib/typescript/module/ui/components/SectionTitle.d.ts.map +1 -1
  261. package/lib/typescript/module/ui/components/SignInModal.d.ts.map +1 -1
  262. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts +2 -2
  263. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  264. package/lib/typescript/module/ui/components/fileManagement/FileViewer.d.ts +2 -2
  265. package/lib/typescript/module/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
  266. package/lib/typescript/module/ui/components/fileManagement/UploadPreview.d.ts +2 -2
  267. package/lib/typescript/module/ui/components/fileManagement/UploadPreview.d.ts.map +1 -1
  268. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  269. package/lib/typescript/module/ui/components/theming.d.ts.map +1 -1
  270. package/lib/typescript/module/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  271. package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  272. package/lib/typescript/module/ui/screens/AccountSwitcherScreen.d.ts.map +1 -1
  273. package/lib/typescript/module/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  274. package/lib/typescript/module/ui/screens/AppInfoScreen.d.ts.map +1 -1
  275. package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  276. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
  277. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
  278. package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  279. package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  280. package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  281. package/lib/typescript/module/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  282. package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  283. package/lib/typescript/module/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  284. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  285. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  286. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
  287. package/lib/typescript/module/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  288. package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  289. package/lib/typescript/module/ui/screens/SessionManagementScreen.d.ts.map +1 -1
  290. package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +1 -1
  291. package/lib/typescript/module/ui/screens/UserListScreen.d.ts.map +1 -1
  292. package/lib/typescript/module/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  293. package/lib/typescript/module/ui/screens/karma/KarmaAboutScreen.d.ts.map +1 -1
  294. package/lib/typescript/module/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -1
  295. package/lib/typescript/module/ui/screens/karma/KarmaFAQScreen.d.ts.map +1 -1
  296. package/lib/typescript/module/ui/screens/karma/KarmaLeaderboardScreen.d.ts.map +1 -1
  297. package/lib/typescript/module/ui/screens/karma/KarmaRewardsScreen.d.ts.map +1 -1
  298. package/lib/typescript/module/ui/screens/karma/KarmaRulesScreen.d.ts.map +1 -1
  299. package/lib/typescript/nativewind-env.d.ts +1 -0
  300. package/package.json +8 -2
  301. package/src/nativewind-env.d.ts +1 -0
  302. package/src/ui/components/Avatar.tsx +3 -3
  303. package/src/ui/components/BottomSheet.tsx +2 -3
  304. package/src/ui/components/BottomSheetRouter.tsx +2 -2
  305. package/src/ui/components/FollowButton.tsx +14 -50
  306. package/src/ui/components/GroupedItem.tsx +8 -15
  307. package/src/ui/components/Header.tsx +7 -15
  308. package/src/ui/components/HelperText.tsx +4 -15
  309. package/src/ui/components/OxyLogo.tsx +2 -2
  310. package/src/ui/components/ProfileCard.tsx +14 -17
  311. package/src/ui/components/QuickActions.tsx +12 -14
  312. package/src/ui/components/SectionTitle.tsx +1 -7
  313. package/src/ui/components/SignInModal.tsx +4 -6
  314. package/src/ui/components/TextField/TextFieldFlat.tsx +4 -4
  315. package/src/ui/components/TextField/TextFieldOutlined.tsx +4 -4
  316. package/src/ui/components/fileManagement/FileDetailsModal.tsx +23 -22
  317. package/src/ui/components/fileManagement/FileViewer.tsx +57 -45
  318. package/src/ui/components/fileManagement/UploadPreview.tsx +23 -28
  319. package/src/ui/components/modals/DeleteAccountModal.tsx +13 -12
  320. package/src/ui/components/theming.tsx +15 -2
  321. package/src/ui/screens/AccountCenterScreen.tsx +10 -13
  322. package/src/ui/screens/AccountOverviewScreen.tsx +39 -39
  323. package/src/ui/screens/AccountSettingsScreen.tsx +15 -19
  324. package/src/ui/screens/AccountSwitcherScreen.tsx +1 -23
  325. package/src/ui/screens/AccountVerificationScreen.tsx +15 -33
  326. package/src/ui/screens/AppInfoScreen.tsx +28 -24
  327. package/src/ui/screens/EditProfileFieldScreen.tsx +24 -26
  328. package/src/ui/screens/FAQScreen.tsx +23 -23
  329. package/src/ui/screens/FeedbackScreen.tsx +47 -38
  330. package/src/ui/screens/FileManagementScreen.tsx +102 -116
  331. package/src/ui/screens/HelpSupportScreen.tsx +12 -8
  332. package/src/ui/screens/HistoryViewScreen.tsx +12 -8
  333. package/src/ui/screens/LanguageSelectorScreen.tsx +8 -11
  334. package/src/ui/screens/LearnMoreUsernamesScreen.tsx +17 -17
  335. package/src/ui/screens/LegalDocumentsScreen.tsx +14 -10
  336. package/src/ui/screens/OxyAuthScreen.tsx +17 -27
  337. package/src/ui/screens/PaymentGatewayScreen.tsx +1 -3
  338. package/src/ui/screens/PremiumSubscriptionScreen.tsx +10 -7
  339. package/src/ui/screens/PrivacySettingsScreen.tsx +63 -65
  340. package/src/ui/screens/ProfileScreen.tsx +54 -58
  341. package/src/ui/screens/SavesCollectionsScreen.tsx +15 -11
  342. package/src/ui/screens/SearchSettingsScreen.tsx +11 -13
  343. package/src/ui/screens/SessionManagementScreen.tsx +12 -12
  344. package/src/ui/screens/UserLinksScreen.tsx +4 -8
  345. package/src/ui/screens/UserListScreen.tsx +34 -46
  346. package/src/ui/screens/WelcomeNewUserScreen.tsx +11 -6
  347. package/src/ui/screens/karma/KarmaAboutScreen.tsx +6 -10
  348. package/src/ui/screens/karma/KarmaCenterScreen.tsx +23 -19
  349. package/src/ui/screens/karma/KarmaFAQScreen.tsx +7 -14
  350. package/src/ui/screens/karma/KarmaLeaderboardScreen.tsx +5 -9
  351. package/src/ui/screens/karma/KarmaRewardsScreen.tsx +15 -17
  352. package/src/ui/screens/karma/KarmaRulesScreen.tsx +5 -9
@@ -14,8 +14,10 @@ import type { BaseScreenProps } from '../../types/navigation';
14
14
  import { fontFamilies } from '../../styles/fonts';
15
15
  import { Ionicons } from '@expo/vector-icons';
16
16
  import { useI18n } from '../../hooks/useI18n';
17
- import { useThemeStyles } from '../../hooks/useThemeStyles';
17
+ import { useTheme } from '@oxyhq/bloom/theme';
18
18
  import { useColorScheme } from '../../hooks/useColorScheme';
19
+ import { Colors } from '../../constants/theme';
20
+ import { normalizeColorScheme } from '../../utils/themeUtils';
19
21
  import { darkenColor } from '../../utils/colorUtils';
20
22
  import { useOxy } from '../../context/OxyContext';
21
23
 
@@ -32,19 +34,21 @@ const KarmaCenterScreen: React.FC<BaseScreenProps> = ({
32
34
  const [isLoading, setIsLoading] = useState(true);
33
35
  const [error, setError] = useState<string | null>(null);
34
36
 
37
+ const bloomTheme = useTheme();
35
38
  const colorScheme = useColorScheme();
36
- const themeStyles = useThemeStyles(theme || 'light', colorScheme);
39
+ const normalizedColorScheme = normalizeColorScheme(colorScheme);
40
+ const themeColors = Colors[normalizedColorScheme];
37
41
  // Override primaryColor for Karma screens (purple instead of blue)
38
42
  const primaryColor = '#d169e5';
39
- const dangerColor = themeStyles.dangerColor || '#D32F2F';
40
- const mutedTextColor = themeStyles.isDarkTheme ? '#BBBBBB' : '#888888';
43
+ const dangerColor = bloomTheme.colors.error || '#D32F2F';
44
+ const mutedTextColor = bloomTheme.isDark ? '#BBBBBB' : '#888888';
41
45
 
42
46
  // Icon colors from theme
43
- const iconLeaderboard = themeStyles.colors.iconPayments;
44
- const iconRules = themeStyles.colors.iconSecurity;
45
- const iconAbout = themeStyles.colors.iconPayments;
46
- const iconRewards = themeStyles.colors.iconStorage;
47
- const iconFAQ = themeStyles.colors.iconPersonalInfo;
47
+ const iconLeaderboard = themeColors.iconPayments;
48
+ const iconRules = themeColors.iconSecurity;
49
+ const iconAbout = themeColors.iconPayments;
50
+ const iconRewards = themeColors.iconStorage;
51
+ const iconFAQ = themeColors.iconPersonalInfo;
48
52
 
49
53
  useEffect(() => {
50
54
  if (!user) return;
@@ -66,26 +70,26 @@ const KarmaCenterScreen: React.FC<BaseScreenProps> = ({
66
70
 
67
71
  if (!isAuthenticated) {
68
72
  return (
69
- <View style={[styles.container, { backgroundColor: themeStyles.backgroundColor }]}>
70
- <Text style={[styles.message, { color: themeStyles.textColor }]}>{t('common.status.notSignedIn') || 'Not signed in'}</Text>
73
+ <View style={styles.container} className="bg-background">
74
+ <Text style={[styles.message, { color: bloomTheme.colors.text }]}>{t('common.status.notSignedIn') || 'Not signed in'}</Text>
71
75
  </View>
72
76
  );
73
77
  }
74
78
 
75
79
  if (isLoading) {
76
80
  return (
77
- <View style={[styles.container, { backgroundColor: themeStyles.backgroundColor, justifyContent: 'center' }]}>
81
+ <View style={[styles.container, { justifyContent: 'center' }]} className="bg-background">
78
82
  <ActivityIndicator size="large" color={primaryColor} />
79
83
  </View>
80
84
  );
81
85
  }
82
86
 
83
87
  return (
84
- <View style={[styles.container, { backgroundColor: themeStyles.backgroundColor }]}>
88
+ <View style={styles.container} className="bg-background">
85
89
  <ScrollView style={styles.scrollView} contentContainerStyle={styles.scrollContainer}>
86
90
  <View style={styles.walletHeader}>
87
91
  <Text style={[styles.karmaAmount, { color: primaryColor }]}>{karmaTotal ?? 0}</Text>
88
- <Text style={[styles.karmaLabel, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#888888' }]}>
92
+ <Text style={[styles.karmaLabel, { color: bloomTheme.isDark ? '#BBBBBB' : '#888888' }]}>
89
93
  {t('karma.center.balance') || 'Karma Balance'}
90
94
  </Text>
91
95
  <View style={styles.actionContainer}>
@@ -128,24 +132,24 @@ const KarmaCenterScreen: React.FC<BaseScreenProps> = ({
128
132
  {t('karma.center.info') || 'Karma can only be earned by positive actions in the Oxy Ecosystem. It cannot be sent or received directly.'}
129
133
  </Text>
130
134
  </View>
131
- <Text style={[styles.sectionTitle, { color: themeStyles.textColor }]}>
135
+ <Text style={[styles.sectionTitle, { color: bloomTheme.colors.text }]}>
132
136
  {t('karma.center.history') || 'Karma History'}
133
137
  </Text>
134
138
  <View style={styles.historyContainer}>
135
139
  {karmaHistory.length === 0 ? (
136
- <Text style={{ color: themeStyles.textColor, textAlign: 'center', marginTop: 16 }}>
140
+ <Text style={{ color: bloomTheme.colors.text, textAlign: 'center', marginTop: 16 }}>
137
141
  {t('karma.center.noHistory') || 'No karma history yet.'}
138
142
  </Text>
139
143
  ) : (
140
144
  karmaHistory.map((entry: any) => (
141
- <View key={entry.id} style={[styles.historyItem, { borderColor: themeStyles.borderColor }]}>
145
+ <View key={entry.id} style={[styles.historyItem, { borderColor: bloomTheme.colors.border }]}>
142
146
  <Text style={[styles.historyPoints, { color: entry.points > 0 ? primaryColor : dangerColor }]}>
143
147
  {entry.points > 0 ? '+' : ''}{entry.points}
144
148
  </Text>
145
- <Text style={[styles.historyDesc, { color: themeStyles.textColor }]}>
149
+ <Text style={[styles.historyDesc, { color: bloomTheme.colors.text }]}>
146
150
  {entry.reason || (t('karma.center.noDescription') || 'No description')}
147
151
  </Text>
148
- <Text style={[styles.historyDate, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#888888' }]}>
152
+ <Text style={[styles.historyDate, { color: bloomTheme.isDark ? '#BBBBBB' : '#888888' }]}>
149
153
  {entry.createdAt ? new Date(entry.createdAt).toLocaleString() : ''}
150
154
  </Text>
151
155
  </View>
@@ -4,8 +4,8 @@ import type { BaseScreenProps } from '../../types/navigation';
4
4
  import { Ionicons } from '@expo/vector-icons';
5
5
  import { Header, GroupedItem } from '../../components';
6
6
  import { useI18n } from '../../hooks/useI18n';
7
- import { useThemeStyles } from '../../hooks/useThemeStyles';
8
- import { normalizeTheme, normalizeColorScheme } from '../../utils/themeUtils';
7
+ import { useTheme } from '@oxyhq/bloom/theme';
8
+ import { normalizeColorScheme } from '../../utils/themeUtils';
9
9
  import { useColorScheme } from '../../hooks/useColorScheme';
10
10
  import { Colors } from '../../constants/theme';
11
11
 
@@ -26,17 +26,10 @@ const KarmaFAQScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
26
26
  const [search, setSearch] = useState('');
27
27
 
28
28
  // Memoize theme-related calculations to prevent unnecessary recalculations
29
- const normalizedTheme = normalizeTheme(theme);
30
- const baseThemeStyles = useThemeStyles(normalizedTheme);
29
+ const bloomTheme = useTheme();
31
30
  const colorScheme = useColorScheme();
32
31
  const normalizedColorScheme = normalizeColorScheme(colorScheme);
33
32
  const colors = Colors[normalizedColorScheme];
34
- const themeStyles = useMemo(() => ({
35
- ...baseThemeStyles,
36
- primaryColor: '#d169e5',
37
- inputBg: baseThemeStyles.isDarkTheme ? '#23232b' : '#f2f2f7',
38
- inputBorder: baseThemeStyles.borderColor,
39
- }), [baseThemeStyles]);
40
33
 
41
34
  // Memoize filtered FAQs to prevent filtering on every render
42
35
  const faqs = useMemo(() => FAQ_KEYS.map(key => ({
@@ -61,7 +54,7 @@ const KarmaFAQScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
61
54
  }, []);
62
55
 
63
56
  return (
64
- <View style={[styles.container, { backgroundColor: themeStyles.backgroundColor }]}>
57
+ <View style={styles.container} className="bg-background">
65
58
  <Header
66
59
  title={t('karma.faq.title') || 'Karma FAQ'}
67
60
  subtitle={t('karma.faq.subtitle') || 'Frequently asked questions about karma'}
@@ -77,9 +70,9 @@ const KarmaFAQScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
77
70
  <View style={[styles.searchContainer, { backgroundColor: colors.card }]}>
78
71
  <Ionicons name="search" size={22} color={colors.icon} />
79
72
  <TextInput
80
- style={[styles.searchInput, { color: themeStyles.textColor }]}
73
+ style={[styles.searchInput, { color: bloomTheme.colors.text }]}
81
74
  placeholder={t('karma.faq.search') || 'Search FAQ...'}
82
- placeholderTextColor={themeStyles.isDarkTheme ? '#BBBBBB' : '#888888'}
75
+ placeholderTextColor={bloomTheme.isDark ? '#BBBBBB' : '#888888'}
83
76
  value={search}
84
77
  onChangeText={setSearch}
85
78
  returnKeyType="search"
@@ -114,7 +107,7 @@ const KarmaFAQScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
114
107
  />
115
108
  {isExpanded && (
116
109
  <View style={[styles.answerContainer, { backgroundColor: colors.card }, isLast && styles.lastAnswerContainer]}>
117
- <Text style={[styles.answer, { color: themeStyles.textColor }]}>
110
+ <Text style={[styles.answer, { color: bloomTheme.colors.text }]}>
118
111
  {faq.a}
119
112
  </Text>
120
113
  </View>
@@ -5,9 +5,7 @@ import type { BaseScreenProps } from '../../types/navigation';
5
5
  import Avatar from '../../components/Avatar';
6
6
  import { Header } from '../../components';
7
7
  import { useI18n } from '../../hooks/useI18n';
8
- import { useThemeStyles } from '../../hooks/useThemeStyles';
9
- import { normalizeTheme } from '../../utils/themeUtils';
10
- import { useColorScheme } from '../../hooks/useColorScheme';
8
+ import { useTheme } from '@oxyhq/bloom/theme';
11
9
  import { useOxy } from '../../context/OxyContext';
12
10
 
13
11
  const KarmaLeaderboardScreen: React.FC<BaseScreenProps> = ({ goBack, theme, navigate }) => {
@@ -18,9 +16,7 @@ const KarmaLeaderboardScreen: React.FC<BaseScreenProps> = ({ goBack, theme, navi
18
16
  const [isLoading, setIsLoading] = useState(true);
19
17
  const [error, setError] = useState<string | null>(null);
20
18
 
21
- const colorScheme = useColorScheme();
22
- const normalizedTheme = normalizeTheme(theme);
23
- const themeStyles = useThemeStyles(normalizedTheme, colorScheme);
19
+ const bloomTheme = useTheme();
24
20
  // Override primaryColor for Karma screens (purple instead of blue)
25
21
  const primaryColor = '#d169e5';
26
22
 
@@ -34,7 +30,7 @@ const KarmaLeaderboardScreen: React.FC<BaseScreenProps> = ({ goBack, theme, navi
34
30
  }, [oxyServices]);
35
31
 
36
32
  return (
37
- <View style={[styles.container, { backgroundColor: themeStyles.backgroundColor }]}>
33
+ <View style={styles.container} className="bg-background">
38
34
  <Header
39
35
  title={t('karma.leaderboard.title') || 'Karma Leaderboard'}
40
36
  subtitle={t('karma.leaderboard.subtitle') || 'Top contributors in the community'}
@@ -49,7 +45,7 @@ const KarmaLeaderboardScreen: React.FC<BaseScreenProps> = ({ goBack, theme, navi
49
45
  ) : (
50
46
  <ScrollView contentContainerStyle={styles.listContainer}>
51
47
  {leaderboard.length === 0 ? (
52
- <Text style={[styles.placeholder, { color: themeStyles.textColor }]}>{t('karma.leaderboard.empty') || 'No leaderboard data.'}</Text>
48
+ <Text style={[styles.placeholder, { color: bloomTheme.colors.text }]}>{t('karma.leaderboard.empty') || 'No leaderboard data.'}</Text>
53
49
  ) : (
54
50
  leaderboard.map((entry, idx) => (
55
51
  <TouchableOpacity
@@ -60,7 +56,7 @@ const KarmaLeaderboardScreen: React.FC<BaseScreenProps> = ({ goBack, theme, navi
60
56
  >
61
57
  <Text style={[styles.rank, { color: primaryColor }]}>{idx + 1}</Text>
62
58
  <Avatar name={entry.username || 'User'} size={40} style={styles.avatar} />
63
- <Text style={[styles.username, { color: themeStyles.textColor }]}>{entry.username || entry.userId}</Text>
59
+ <Text style={[styles.username, { color: bloomTheme.colors.text }]}>{entry.username || entry.userId}</Text>
64
60
  <Text style={[styles.karma, { color: primaryColor }]}>{entry.total}</Text>
65
61
  </TouchableOpacity>
66
62
  ))
@@ -5,8 +5,8 @@ import type { BaseScreenProps } from '../../types/navigation';
5
5
  import { Header } from '../../components';
6
6
  import { Ionicons } from '@expo/vector-icons';
7
7
  import { useI18n } from '../../hooks/useI18n';
8
- import { useThemeStyles } from '../../hooks/useThemeStyles';
9
- import { normalizeTheme, normalizeColorScheme } from '../../utils/themeUtils';
8
+ import { useTheme } from '@oxyhq/bloom/theme';
9
+ import { normalizeColorScheme } from '../../utils/themeUtils';
10
10
  import { useColorScheme } from '../../hooks/useColorScheme';
11
11
  import { Colors } from '../../constants/theme';
12
12
  import { useOxy } from '../../context/OxyContext';
@@ -31,15 +31,13 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
31
31
  const [karmaTotal, setKarmaTotal] = useState<number>(0);
32
32
  const [isLoading, setIsLoading] = useState(true);
33
33
 
34
- const normalizedTheme = normalizeTheme(theme);
35
- const baseThemeStyles = useThemeStyles(normalizedTheme);
34
+ const bloomTheme = useTheme();
36
35
  const colorScheme = useColorScheme();
37
36
  const normalizedColorScheme = normalizeColorScheme(colorScheme);
38
37
  const colors = Colors[normalizedColorScheme];
39
38
  const themeStyles = useMemo(() => ({
40
- ...baseThemeStyles,
41
39
  primaryColor: '#d169e5',
42
- }), [baseThemeStyles]);
40
+ }), []);
43
41
 
44
42
  useEffect(() => {
45
43
  if (!user || !isAuthenticated) {
@@ -322,10 +320,10 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
322
320
  )}
323
321
  </View>
324
322
 
325
- <Text style={[styles.achievementName, { color: themeStyles.textColor, opacity: isLocked ? 0.5 : 1 }]}>
323
+ <Text style={[styles.achievementName, { color: bloomTheme.colors.text, opacity: isLocked ? 0.5 : 1 }]}>
326
324
  {achievement.name}
327
325
  </Text>
328
- <Text style={[styles.achievementDescription, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#888888', opacity: isLocked ? 0.5 : 1 }]}>
326
+ <Text style={[styles.achievementDescription, { color: bloomTheme.isDark ? '#BBBBBB' : '#888888', opacity: isLocked ? 0.5 : 1 }]}>
329
327
  {achievement.description}
330
328
  </Text>
331
329
  </View>
@@ -334,7 +332,7 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
334
332
 
335
333
  if (!isAuthenticated) {
336
334
  return (
337
- <View style={[styles.container, { backgroundColor: themeStyles.backgroundColor }]}>
335
+ <View style={styles.container} className="bg-background">
338
336
  <Header
339
337
  title={t('karma.rewards.title') || 'Karma Rewards'}
340
338
  subtitle={t('karma.rewards.subtitle') || 'Unlock special features and recognition'}
@@ -342,7 +340,7 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
342
340
  elevation="subtle"
343
341
  />
344
342
  <View style={styles.centerContent}>
345
- <Text style={[styles.message, { color: themeStyles.textColor }]}>
343
+ <Text style={[styles.message, { color: bloomTheme.colors.text }]}>
346
344
  {t('common.status.notSignedIn') || 'Not signed in'}
347
345
  </Text>
348
346
  </View>
@@ -351,7 +349,7 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
351
349
  }
352
350
 
353
351
  return (
354
- <View style={[styles.container, { backgroundColor: themeStyles.backgroundColor }]}>
352
+ <View style={styles.container} className="bg-background">
355
353
  <Header
356
354
  title={t('karma.rewards.title') || 'Karma Rewards'}
357
355
  subtitle={t('karma.rewards.subtitle') || 'Unlock special features and recognition'}
@@ -369,7 +367,7 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
369
367
  <Text style={[styles.currentKarma, { color: themeStyles.primaryColor }]}>
370
368
  {karmaTotal}
371
369
  </Text>
372
- <Text style={[styles.karmaLabel, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#888888' }]}>
370
+ <Text style={[styles.karmaLabel, { color: bloomTheme.isDark ? '#BBBBBB' : '#888888' }]}>
373
371
  {t('karma.center.balance') || 'Karma Points'}
374
372
  </Text>
375
373
  </View>
@@ -377,13 +375,13 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
377
375
  <Text style={[styles.achievementCount, { color: themeStyles.primaryColor }]}>
378
376
  {unlockedAchievements.length}
379
377
  </Text>
380
- <Text style={[styles.achievementCountLabel, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#888888' }]}>
378
+ <Text style={[styles.achievementCountLabel, { color: bloomTheme.isDark ? '#BBBBBB' : '#888888' }]}>
381
379
  {t('karma.achievements.unlocked') || 'Achievements'}
382
380
  </Text>
383
381
  </View>
384
382
  </View>
385
383
  <View style={styles.progressBarContainer}>
386
- <View style={[styles.progressBar, { backgroundColor: themeStyles.borderColor }]}>
384
+ <View style={[styles.progressBar, { backgroundColor: bloomTheme.colors.border }]}>
387
385
  <View
388
386
  style={[
389
387
  styles.progressBarFill,
@@ -394,7 +392,7 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
394
392
  ]}
395
393
  />
396
394
  </View>
397
- <Text style={[styles.progressText, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#888888' }]}>
395
+ <Text style={[styles.progressText, { color: bloomTheme.isDark ? '#BBBBBB' : '#888888' }]}>
398
396
  {unlockedAchievements.length} / {achievements.length}
399
397
  </Text>
400
398
  </View>
@@ -403,7 +401,7 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
403
401
  {/* Unlocked Achievements */}
404
402
  {unlockedAchievements.length > 0 && (
405
403
  <>
406
- <Text style={[styles.sectionTitle, { color: themeStyles.textColor }]}>
404
+ <Text style={[styles.sectionTitle, { color: bloomTheme.colors.text }]}>
407
405
  {t('karma.achievements.unlocked') || 'Unlocked Achievements'}
408
406
  </Text>
409
407
  <View style={styles.achievementsGrid}>
@@ -415,7 +413,7 @@ const KarmaRewardsScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
415
413
  {/* Locked Achievements */}
416
414
  {lockedAchievements.length > 0 && (
417
415
  <>
418
- <Text style={[styles.sectionTitle, { color: themeStyles.textColor }]}>
416
+ <Text style={[styles.sectionTitle, { color: bloomTheme.colors.text }]}>
419
417
  {t('karma.achievements.locked') || 'Locked Achievements'}
420
418
  </Text>
421
419
  <View style={styles.achievementsGrid}>
@@ -4,9 +4,7 @@ import { View, Text, StyleSheet, ScrollView, ActivityIndicator } from 'react-nat
4
4
  import type { BaseScreenProps } from '../../types/navigation';
5
5
  import { Header } from '../../components';
6
6
  import { useI18n } from '../../hooks/useI18n';
7
- import { useThemeStyles } from '../../hooks/useThemeStyles';
8
- import { normalizeTheme } from '../../utils/themeUtils';
9
- import { useColorScheme } from '../../hooks/useColorScheme';
7
+ import { useTheme } from '@oxyhq/bloom/theme';
10
8
  import { useOxy } from '../../context/OxyContext';
11
9
 
12
10
  const KarmaRulesScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
@@ -17,9 +15,7 @@ const KarmaRulesScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
17
15
  const [isLoading, setIsLoading] = useState(true);
18
16
  const [error, setError] = useState<string | null>(null);
19
17
 
20
- const colorScheme = useColorScheme();
21
- const normalizedTheme = normalizeTheme(theme);
22
- const themeStyles = useThemeStyles(normalizedTheme, colorScheme);
18
+ const bloomTheme = useTheme();
23
19
  // Override primaryColor for Karma screens (purple instead of blue)
24
20
  const primaryColor = '#d169e5';
25
21
 
@@ -33,7 +29,7 @@ const KarmaRulesScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
33
29
  }, [oxyServices]);
34
30
 
35
31
  return (
36
- <View style={[styles.container, { backgroundColor: themeStyles.backgroundColor }]}>
32
+ <View style={styles.container} className="bg-background">
37
33
  <Header
38
34
  title={t('karma.rules.title') || 'Karma Rules'}
39
35
  subtitle={t('karma.rules.subtitle') || 'How to earn karma points'}
@@ -48,11 +44,11 @@ const KarmaRulesScreen: React.FC<BaseScreenProps> = ({ goBack, theme }) => {
48
44
  ) : (
49
45
  <ScrollView contentContainerStyle={styles.listContainer}>
50
46
  {rules.length === 0 ? (
51
- <Text style={[styles.placeholder, { color: themeStyles.textColor }]}>{t('karma.rules.empty') || 'No rules found.'}</Text>
47
+ <Text style={[styles.placeholder, { color: bloomTheme.colors.text }]}>{t('karma.rules.empty') || 'No rules found.'}</Text>
52
48
  ) : (
53
49
  rules.map((rule, idx) => (
54
50
  <View key={rule.id || idx} style={styles.ruleRow}>
55
- <Text style={[styles.ruleDesc, { color: themeStyles.textColor }]}>{rule.description}</Text>
51
+ <Text style={[styles.ruleDesc, { color: bloomTheme.colors.text }]}>{rule.description}</Text>
56
52
  </View>
57
53
  ))
58
54
  )}