@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
@@ -37,9 +37,7 @@ import { useFileStore, useFiles, useUploading as useUploadingStore, useUploadAgg
37
37
  import Header from '../components/Header';
38
38
  import JustifiedPhotoGrid from '../components/photogrid/JustifiedPhotoGrid';
39
39
  import { GroupedSection } from '../components';
40
- import { useThemeStyles } from '../hooks/useThemeStyles';
41
- import { useColorScheme } from '../hooks/useColorScheme';
42
- import { normalizeTheme } from '../utils/themeUtils';
40
+ import { useTheme } from '@oxyhq/bloom/theme';
43
41
  import { useOxy } from '../context/OxyContext';
44
42
  import { useI18n } from '../hooks/useI18n';
45
43
  import { useUploadFile } from '../hooks/mutations/useAccountMutations';
@@ -351,19 +349,11 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
351
349
  [oxyServices]
352
350
  );
353
351
 
354
- // Use centralized theme styles hook for consistency
355
- const colorScheme = useColorScheme();
356
- const normalizedTheme = normalizeTheme(theme);
357
- const baseThemeStyles = useThemeStyles(normalizedTheme, colorScheme);
352
+ const bloomTheme = useTheme();
353
+ const { colors } = bloomTheme;
358
354
  // FileManagementScreen uses a slightly different light background
359
- const themeStyles = useMemo(() => ({
360
- ...baseThemeStyles,
361
- backgroundColor: baseThemeStyles.isDarkTheme ? baseThemeStyles.backgroundColor : '#f2f2f2',
362
- }), [baseThemeStyles]);
363
-
364
- // Extract commonly used theme variables
365
- const backgroundColor = themeStyles.backgroundColor;
366
- const borderColor = themeStyles.borderColor;
355
+ const backgroundColor = bloomTheme.isDark ? colors.background : '#f2f2f2';
356
+ const borderColor = colors.border;
367
357
 
368
358
  const targetUserId = userId || user?.id;
369
359
 
@@ -1155,7 +1145,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1155
1145
  width: itemWidth,
1156
1146
  height: itemWidth,
1157
1147
  marginRight: (index + 1) % itemsPerRow === 0 ? 0 : 4,
1158
- ...(selectMode && selectedIds.has(photo.id) ? { borderWidth: 2, borderColor: themeStyles.primaryColor } : {})
1148
+ ...(selectMode && selectedIds.has(photo.id) ? { borderWidth: 2, borderColor: colors.primary } : {})
1159
1149
  }
1160
1150
  ]}
1161
1151
  onPress={() => handleFileOpen(photo)}
@@ -1175,13 +1165,13 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1175
1165
  />
1176
1166
  {selectMode && (
1177
1167
  <View style={fileManagementStyles.selectionBadge}>
1178
- <Ionicons name={selectedIds.has(photo.id) ? 'checkmark-circle' : 'ellipse-outline'} size={20} color={selectedIds.has(photo.id) ? themeStyles.primaryColor : themeStyles.textColor} />
1168
+ <Ionicons name={selectedIds.has(photo.id) ? 'checkmark-circle' : 'ellipse-outline'} size={20} color={selectedIds.has(photo.id) ? colors.primary : colors.text} />
1179
1169
  </View>
1180
1170
  )}
1181
1171
  </View>
1182
1172
  </TouchableOpacity>
1183
1173
  );
1184
- }, [oxyServices, safeContainerWidth, selectMode, selectedIds, themeStyles.primaryColor, themeStyles.textColor]);
1174
+ }, [oxyServices, safeContainerWidth, selectMode, selectedIds, colors.primary, colors.text]);
1185
1175
 
1186
1176
  const renderJustifiedPhotoItem = useCallback((photo: FileMetadata, width: number, height: number, isLast: boolean) => {
1187
1177
  const downloadUrl = getSafeDownloadUrlCallback(photo, 'thumb');
@@ -1194,7 +1184,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1194
1184
  {
1195
1185
  width,
1196
1186
  height,
1197
- ...(selectMode && selectedIds.has(photo.id) ? { borderWidth: 2, borderColor: themeStyles.primaryColor } : {}),
1187
+ ...(selectMode && selectedIds.has(photo.id) ? { borderWidth: 2, borderColor: colors.primary } : {}),
1198
1188
  ...(selectMode && multiSelect && selectedIds.size > 0 && !selectedIds.has(photo.id) ? { opacity: 0.4 } : {}),
1199
1189
  },
1200
1190
  ]}
@@ -1215,13 +1205,13 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1215
1205
  />
1216
1206
  {selectMode && (
1217
1207
  <View style={fileManagementStyles.selectionBadge}>
1218
- <Ionicons name={selectedIds.has(photo.id) ? 'checkmark-circle' : 'ellipse-outline'} size={20} color={selectedIds.has(photo.id) ? themeStyles.primaryColor : themeStyles.textColor} />
1208
+ <Ionicons name={selectedIds.has(photo.id) ? 'checkmark-circle' : 'ellipse-outline'} size={20} color={selectedIds.has(photo.id) ? colors.primary : colors.text} />
1219
1209
  </View>
1220
1210
  )}
1221
1211
  </View>
1222
1212
  </TouchableOpacity>
1223
1213
  );
1224
- }, [oxyServices, selectMode, selectedIds, multiSelect, themeStyles.primaryColor, themeStyles.textColor]);
1214
+ }, [oxyServices, selectMode, selectedIds, multiSelect, colors.primary, colors.text]);
1225
1215
 
1226
1216
  // Run initial load once per targetUserId change to avoid accidental loops
1227
1217
  const lastLoadedFor = useRef<string | undefined>(undefined);
@@ -1240,12 +1230,12 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1240
1230
  const isVideo = file.contentType.startsWith('video/');
1241
1231
  const isAudio = file.contentType.startsWith('audio/');
1242
1232
  const hasPreview = isImage || isPDF || isVideo;
1243
- const borderColor = themeStyles.borderColor;
1233
+ const borderColor = colors.border;
1244
1234
 
1245
1235
  return (
1246
1236
  <View
1247
1237
  key={file.id}
1248
- style={[fileManagementStyles.fileItem, { backgroundColor: themeStyles.secondaryBackgroundColor, borderColor }, selectMode && selectedIds.has(file.id) && { borderColor: themeStyles.primaryColor, borderWidth: 2 }]}
1238
+ style={[fileManagementStyles.fileItem, { backgroundColor: colors.backgroundSecondary, borderColor }, selectMode && selectedIds.has(file.id) && { borderColor: colors.primary, borderWidth: 2 }]}
1249
1239
  >
1250
1240
  <TouchableOpacity
1251
1241
  style={fileManagementStyles.fileContent}
@@ -1270,8 +1260,8 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1270
1260
  )}
1271
1261
  {isPDF && (
1272
1262
  <View style={fileManagementStyles.pdfPreview}>
1273
- <Ionicons name="document" size={32} color={themeStyles.primaryColor} />
1274
- <Text style={[fileManagementStyles.pdfLabel, { color: themeStyles.primaryColor }]}>PDF</Text>
1263
+ <Ionicons name="document" size={32} color={colors.primary} />
1264
+ <Text style={[fileManagementStyles.pdfLabel, { color: colors.primary }]}>PDF</Text>
1275
1265
  </View>
1276
1266
  )}
1277
1267
  {isVideo && (
@@ -1299,13 +1289,13 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1299
1289
  <Ionicons
1300
1290
  name={getFileIcon(file.contentType) as React.ComponentProps<typeof Ionicons>['name']}
1301
1291
  size={32}
1302
- color={themeStyles.primaryColor}
1292
+ color={colors.primary}
1303
1293
  />
1304
1294
  </View>
1305
1295
 
1306
1296
  {selectMode && (
1307
1297
  <View style={fileManagementStyles.selectionBadge}>
1308
- <Ionicons name={selectedIds.has(file.id) ? 'checkmark-circle' : 'ellipse-outline'} size={22} color={selectedIds.has(file.id) ? themeStyles.primaryColor : themeStyles.textColor} />
1298
+ <Ionicons name={selectedIds.has(file.id) ? 'checkmark-circle' : 'ellipse-outline'} size={22} color={selectedIds.has(file.id) ? colors.primary : colors.text} />
1309
1299
  </View>
1310
1300
  )}
1311
1301
  </View>
@@ -1314,22 +1304,22 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1314
1304
  <Ionicons
1315
1305
  name={getFileIcon(file.contentType) as React.ComponentProps<typeof Ionicons>['name']}
1316
1306
  size={32}
1317
- color={themeStyles.primaryColor}
1307
+ color={colors.primary}
1318
1308
  />
1319
1309
  </View>
1320
1310
  )}
1321
1311
  </View>
1322
1312
 
1323
1313
  <View style={fileManagementStyles.fileInfo}>
1324
- <Text style={[fileManagementStyles.fileName, { color: themeStyles.textColor }]} numberOfLines={1}>
1314
+ <Text style={[fileManagementStyles.fileName, { color: colors.text }]} numberOfLines={1}>
1325
1315
  {file.filename}
1326
1316
  </Text>
1327
- <Text style={[fileManagementStyles.fileDetails, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#666666' }]}>
1317
+ <Text style={[fileManagementStyles.fileDetails, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}>
1328
1318
  {formatFileSize(file.length)} • {new Date(file.uploadDate).toLocaleDateString()}
1329
1319
  </Text>
1330
1320
  {file.metadata?.description && (
1331
1321
  <Text
1332
- style={[fileManagementStyles.fileDescription, { color: themeStyles.isDarkTheme ? '#AAAAAA' : '#888888' }]}
1322
+ style={[fileManagementStyles.fileDescription, { color: bloomTheme.isDark ? '#AAAAAA' : '#888888' }]}
1333
1323
  numberOfLines={2}
1334
1324
  >
1335
1325
  {file.metadata.description}
@@ -1343,32 +1333,32 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1343
1333
  {/* Preview button for supported files */}
1344
1334
  {hasPreview && (
1345
1335
  <TouchableOpacity
1346
- style={[fileManagementStyles.actionButton, { backgroundColor: themeStyles.isDarkTheme ? '#333333' : '#F0F0F0' }]}
1336
+ style={[fileManagementStyles.actionButton, { backgroundColor: bloomTheme.isDark ? '#333333' : '#F0F0F0' }]}
1347
1337
  onPress={() => handleFileOpen(file)}
1348
1338
  >
1349
- <Ionicons name="eye" size={20} color={themeStyles.primaryColor} />
1339
+ <Ionicons name="eye" size={20} color={colors.primary} />
1350
1340
  </TouchableOpacity>
1351
1341
  )}
1352
1342
 
1353
1343
  <TouchableOpacity
1354
- style={[fileManagementStyles.actionButton, { backgroundColor: themeStyles.isDarkTheme ? '#333333' : '#F0F0F0' }]}
1344
+ style={[fileManagementStyles.actionButton, { backgroundColor: bloomTheme.isDark ? '#333333' : '#F0F0F0' }]}
1355
1345
  onPress={() => handleFileDownload(file.id, file.filename)}
1356
1346
  >
1357
- <Ionicons name="download" size={20} color={themeStyles.primaryColor} />
1347
+ <Ionicons name="download" size={20} color={colors.primary} />
1358
1348
  </TouchableOpacity>
1359
1349
 
1360
1350
  {/* Always show delete button for debugging */}
1361
1351
  <TouchableOpacity
1362
- style={[fileManagementStyles.actionButton, { backgroundColor: themeStyles.isDarkTheme ? '#400000' : '#FFEBEE' }]}
1352
+ style={[fileManagementStyles.actionButton, { backgroundColor: bloomTheme.isDark ? '#400000' : '#FFEBEE' }]}
1363
1353
  onPress={() => {
1364
1354
  handleFileDelete(file.id, file.filename);
1365
1355
  }}
1366
1356
  disabled={deleting === file.id}
1367
1357
  >
1368
1358
  {deleting === file.id ? (
1369
- <ActivityIndicator size="small" color={themeStyles.dangerColor} />
1359
+ <ActivityIndicator size="small" color={colors.error} />
1370
1360
  ) : (
1371
- <Ionicons name="trash" size={20} color={themeStyles.dangerColor} />
1361
+ <Ionicons name="trash" size={20} color={colors.error} />
1372
1362
  )}
1373
1363
  </TouchableOpacity>
1374
1364
  </View>
@@ -1436,7 +1426,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1436
1426
  } else if (isPDF) {
1437
1427
  customIcon = (
1438
1428
  <View style={{ width: 36, height: 36, borderRadius: 18, alignItems: 'center', justifyContent: 'center', backgroundColor: '#FF6B6B20' }}>
1439
- <Ionicons name="document" size={20} color={themeStyles.primaryColor} />
1429
+ <Ionicons name="document" size={20} color={colors.primary} />
1440
1430
  </View>
1441
1431
  );
1442
1432
  }
@@ -1446,7 +1436,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1446
1436
  id: file.id,
1447
1437
  customIcon: customIcon,
1448
1438
  icon: !hasPreview ? getFileIcon(file.contentType) : undefined,
1449
- iconColor: themeStyles.primaryColor,
1439
+ iconColor: colors.primary,
1450
1440
  title: file.filename,
1451
1441
  subtitle: `${formatFileSize(file.length)} • ${new Date(file.uploadDate).toLocaleDateString()}`,
1452
1442
  theme: theme as 'light' | 'dark',
@@ -1476,39 +1466,39 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1476
1466
  <View style={fileManagementStyles.groupedActions}>
1477
1467
  {(isImage || isVideo || file.contentType.includes('pdf')) && (
1478
1468
  <TouchableOpacity
1479
- style={[fileManagementStyles.groupedActionBtn, { backgroundColor: themeStyles.isDarkTheme ? '#333333' : '#F0F0F0' }]}
1469
+ style={[fileManagementStyles.groupedActionBtn, { backgroundColor: bloomTheme.isDark ? '#333333' : '#F0F0F0' }]}
1480
1470
  onPress={() => handleFileOpen(file)}
1481
1471
  >
1482
- <Ionicons name="eye" size={18} color={themeStyles.primaryColor} />
1472
+ <Ionicons name="eye" size={18} color={colors.primary} />
1483
1473
  </TouchableOpacity>
1484
1474
  )}
1485
1475
  <TouchableOpacity
1486
- style={[fileManagementStyles.groupedActionBtn, { backgroundColor: themeStyles.isDarkTheme ? '#333333' : '#F0F0F0' }]}
1476
+ style={[fileManagementStyles.groupedActionBtn, { backgroundColor: bloomTheme.isDark ? '#333333' : '#F0F0F0' }]}
1487
1477
  onPress={() => handleFileDownload(file.id, file.filename)}
1488
1478
  >
1489
- <Ionicons name="download" size={18} color={themeStyles.primaryColor} />
1479
+ <Ionicons name="download" size={18} color={colors.primary} />
1490
1480
  </TouchableOpacity>
1491
1481
  <TouchableOpacity
1492
- style={[fileManagementStyles.groupedActionBtn, { backgroundColor: themeStyles.isDarkTheme ? '#400000' : '#FFEBEE' }]}
1482
+ style={[fileManagementStyles.groupedActionBtn, { backgroundColor: bloomTheme.isDark ? '#400000' : '#FFEBEE' }]}
1493
1483
  onPress={() => handleFileDelete(file.id, file.filename)}
1494
1484
  disabled={deleting === file.id}
1495
1485
  >
1496
1486
  {deleting === file.id ? (
1497
- <ActivityIndicator size="small" color={themeStyles.dangerColor} />
1487
+ <ActivityIndicator size="small" color={colors.error} />
1498
1488
  ) : (
1499
- <Ionicons name="trash" size={18} color={themeStyles.dangerColor} />
1489
+ <Ionicons name="trash" size={18} color={colors.error} />
1500
1490
  )}
1501
1491
  </TouchableOpacity>
1502
1492
  </View>
1503
1493
  ) : undefined,
1504
1494
  customContentBelow: file.metadata?.description ? (
1505
- <Text style={[fileManagementStyles.groupedDescription, { color: themeStyles.isDarkTheme ? '#AAAAAA' : '#666666' }]} numberOfLines={2}>
1495
+ <Text style={[fileManagementStyles.groupedDescription, { color: bloomTheme.isDark ? '#AAAAAA' : '#666666' }]} numberOfLines={2}>
1506
1496
  {file.metadata.description}
1507
1497
  </Text>
1508
1498
  ) : undefined,
1509
1499
  };
1510
1500
  });
1511
- }, [filteredFiles, theme, themeStyles, deleting, handleFileDownload, handleFileDelete, handleFileOpen, getSafeDownloadUrlCallback, selectMode, selectedIds]);
1501
+ }, [filteredFiles, theme, deleting, handleFileDownload, handleFileDelete, handleFileOpen, getSafeDownloadUrlCallback, selectMode, selectedIds]);
1512
1502
 
1513
1503
  // Scroll to selected file after selection
1514
1504
  useEffect(() => {
@@ -1646,16 +1636,16 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1646
1636
  if (photos.length === 0) {
1647
1637
  return (
1648
1638
  <View style={fileManagementStyles.emptyState}>
1649
- <Ionicons name="images-outline" size={64} color={themeStyles.isDarkTheme ? '#666666' : '#CCCCCC'} />
1650
- <Text style={[fileManagementStyles.emptyStateTitle, { color: themeStyles.textColor }]}>{t('fileManagement.emptyPhotos.title')}</Text>
1651
- <Text style={[fileManagementStyles.emptyStateDescription, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#666666' }]}> {
1639
+ <Ionicons name="images-outline" size={64} color={bloomTheme.isDark ? '#666666' : '#CCCCCC'} />
1640
+ <Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.emptyPhotos.title')}</Text>
1641
+ <Text style={[fileManagementStyles.emptyStateDescription, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}> {
1652
1642
  user?.id === targetUserId
1653
1643
  ? t('fileManagement.emptyPhotos.ownDescription')
1654
1644
  : t('fileManagement.emptyPhotos.otherDescription')
1655
1645
  } </Text>
1656
1646
  {user?.id === targetUserId && (
1657
1647
  <TouchableOpacity
1658
- style={[fileManagementStyles.emptyStateButton, { backgroundColor: themeStyles.primaryColor }]}
1648
+ style={[fileManagementStyles.emptyStateButton, { backgroundColor: colors.primary }]}
1659
1649
  onPress={handleFileUpload}
1660
1650
  disabled={uploading || isPickingDocument}
1661
1651
  >
@@ -1684,7 +1674,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1684
1674
  <RefreshControl
1685
1675
  refreshing={refreshing}
1686
1676
  onRefresh={() => loadFiles('refresh')}
1687
- tintColor={themeStyles.primaryColor}
1677
+ tintColor={colors.primary}
1688
1678
  />
1689
1679
  }
1690
1680
  showsVerticalScrollIndicator={false}
@@ -1699,8 +1689,8 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1699
1689
  >
1700
1690
  {loadingDimensions && (
1701
1691
  <View style={fileManagementStyles.dimensionsLoadingIndicator}>
1702
- <ActivityIndicator size="small" color={themeStyles.primaryColor} />
1703
- <Text style={[fileManagementStyles.dimensionsLoadingText, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#666666' }]}>{t('fileManagement.loadingPhotoLayout')}</Text>
1692
+ <ActivityIndicator size="small" color={colors.primary} />
1693
+ <Text style={[fileManagementStyles.dimensionsLoadingText, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}>{t('fileManagement.loadingPhotoLayout')}</Text>
1704
1694
  </View>
1705
1695
  )}
1706
1696
 
@@ -1711,14 +1701,14 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1711
1701
  createJustifiedRows={createJustifiedRows}
1712
1702
  renderJustifiedPhotoItem={renderJustifiedPhotoItem}
1713
1703
  renderSimplePhotoItem={renderPhotoItem}
1714
- textColor={themeStyles.textColor}
1704
+ textColor={colors.text}
1715
1705
  containerWidth={safeContainerWidth}
1716
1706
  />
1717
1707
  </ScrollView>
1718
1708
  );
1719
1709
  }, [
1720
1710
  filteredFiles,
1721
- themeStyles,
1711
+ colors,
1722
1712
  user?.id,
1723
1713
  targetUserId,
1724
1714
  uploading,
@@ -1740,9 +1730,9 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1740
1730
 
1741
1731
  const renderEmptyState = () => (
1742
1732
  <View style={fileManagementStyles.emptyState}>
1743
- <Ionicons name="folder-open-outline" size={64} color={themeStyles.isDarkTheme ? '#666666' : '#CCCCCC'} />
1744
- <Text style={[fileManagementStyles.emptyStateTitle, { color: themeStyles.textColor }]}>{t('fileManagement.emptyFiles.title')}</Text>
1745
- <Text style={[fileManagementStyles.emptyStateDescription, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#666666' }]}>
1733
+ <Ionicons name="folder-open-outline" size={64} color={bloomTheme.isDark ? '#666666' : '#CCCCCC'} />
1734
+ <Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.emptyFiles.title')}</Text>
1735
+ <Text style={[fileManagementStyles.emptyStateDescription, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}>
1746
1736
  {user?.id === targetUserId
1747
1737
  ? t('fileManagement.emptyFiles.ownDescription')
1748
1738
  : t('fileManagement.emptyFiles.otherDescription')
@@ -1750,7 +1740,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1750
1740
  </Text>
1751
1741
  {user?.id === targetUserId && (
1752
1742
  <TouchableOpacity
1753
- style={[fileManagementStyles.emptyStateButton, { backgroundColor: themeStyles.primaryColor }]}
1743
+ style={[fileManagementStyles.emptyStateButton, { backgroundColor: colors.primary }]}
1754
1744
  onPress={handleFileUpload}
1755
1745
  disabled={uploading || isPickingDocument}
1756
1746
  >
@@ -1806,7 +1796,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1806
1796
  width,
1807
1797
  height,
1808
1798
  borderRadius,
1809
- backgroundColor: themeStyles.isDarkTheme ? '#1E1E1E' : '#F5F5F5',
1799
+ backgroundColor: bloomTheme.isDark ? '#1E1E1E' : '#F5F5F5',
1810
1800
  overflow: 'hidden',
1811
1801
  position: 'relative',
1812
1802
  },
@@ -1821,7 +1811,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1821
1811
  left: 0,
1822
1812
  right: 0,
1823
1813
  bottom: 0,
1824
- backgroundColor: themeStyles.isDarkTheme ? '#1E1E1E' : '#F5F5F5',
1814
+ backgroundColor: bloomTheme.isDark ? '#1E1E1E' : '#F5F5F5',
1825
1815
  }}
1826
1816
  />
1827
1817
  {/* Shimmer gradient effect */}
@@ -1839,10 +1829,10 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1839
1829
  style={{
1840
1830
  width: skeletonContainerWidth,
1841
1831
  height: '100%',
1842
- backgroundColor: themeStyles.isDarkTheme
1832
+ backgroundColor: bloomTheme.isDark
1843
1833
  ? 'rgba(255, 255, 255, 0.08)'
1844
1834
  : 'rgba(255, 255, 255, 0.8)',
1845
- shadowColor: themeStyles.isDarkTheme ? '#000' : '#FFF',
1835
+ shadowColor: bloomTheme.isDark ? '#000' : '#FFF',
1846
1836
  shadowOffset: { width: 0, height: 0 },
1847
1837
  shadowOpacity: 0.3,
1848
1838
  shadowRadius: 10,
@@ -1862,9 +1852,9 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1862
1852
  alignItems: 'center',
1863
1853
  paddingHorizontal: 16,
1864
1854
  paddingVertical: 12,
1865
- backgroundColor: themeStyles.isDarkTheme ? '#121212' : '#FFFFFF',
1855
+ backgroundColor: bloomTheme.isDark ? '#121212' : '#FFFFFF',
1866
1856
  borderBottomWidth: StyleSheet.hairlineWidth,
1867
- borderBottomColor: themeStyles.borderColor,
1857
+ borderBottomColor: colors.border,
1868
1858
  },
1869
1859
  ]}
1870
1860
  >
@@ -1891,7 +1881,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1891
1881
  return (
1892
1882
  <View style={[fileManagementStyles.container, { backgroundColor }]}>
1893
1883
  {/* Header Skeleton */}
1894
- <View style={[fileManagementStyles.header, { borderBottomColor: themeStyles.borderColor, borderBottomWidth: StyleSheet.hairlineWidth }]}>
1884
+ <View style={[fileManagementStyles.header, { borderBottomColor: colors.border, borderBottomWidth: StyleSheet.hairlineWidth }]}>
1895
1885
  <SkeletonBox width={44} height={44} borderRadius={12} />
1896
1886
  <View style={[fileManagementStyles.headerTitleContainer, { flex: 1 }]}>
1897
1887
  <SkeletonBox width={140} height={20} style={{ marginBottom: 6 }} />
@@ -1908,14 +1898,14 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1908
1898
 
1909
1899
  {/* Search Bar Skeleton */}
1910
1900
  <View style={[fileManagementStyles.searchContainer, {
1911
- backgroundColor: themeStyles.colors.card,
1901
+ backgroundColor: colors.card,
1912
1902
  }]}>
1913
1903
  <SkeletonBox width="100%" height={44} borderRadius={12} />
1914
1904
  </View>
1915
1905
 
1916
1906
  {/* Stats Container Skeleton */}
1917
1907
  <View style={[fileManagementStyles.statsContainer, {
1918
- backgroundColor: themeStyles.colors.card,
1908
+ backgroundColor: colors.card,
1919
1909
  }]}>
1920
1910
  {[1, 2, 3].map((i) => (
1921
1911
  <View key={i} style={fileManagementStyles.statItem}>
@@ -1932,7 +1922,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1932
1922
  showsVerticalScrollIndicator={false}
1933
1923
  >
1934
1924
  <View style={{
1935
- backgroundColor: themeStyles.colors.card,
1925
+ backgroundColor: colors.card,
1936
1926
  borderRadius: 18,
1937
1927
  overflow: 'hidden',
1938
1928
  marginTop: 8,
@@ -1963,7 +1953,6 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1963
1953
  onClose={handleCloseFile}
1964
1954
  onDownload={handleFileDownload}
1965
1955
  onDelete={handleFileDelete}
1966
- themeStyles={themeStyles}
1967
1956
  isOwner={user?.id === targetUserId}
1968
1957
  />
1969
1958
  <FileDetailsModal
@@ -1972,7 +1961,6 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1972
1961
  onClose={() => setShowFileDetails(false)}
1973
1962
  onDownload={handleFileDownload}
1974
1963
  onDelete={handleFileDelete}
1975
- themeStyles={themeStyles}
1976
1964
  isOwner={user?.id === targetUserId}
1977
1965
  />
1978
1966
  </>
@@ -1998,7 +1986,6 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1998
1986
  onConfirm={handleConfirmUpload}
1999
1987
  onCancel={handleCancelUpload}
2000
1988
  onRemoveFile={removePendingFile}
2001
- themeStyles={themeStyles}
2002
1989
  inline={true}
2003
1990
  />
2004
1991
  </View>
@@ -2071,54 +2058,54 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2071
2058
  <View style={[
2072
2059
  fileManagementStyles.viewModeToggle,
2073
2060
  {
2074
- backgroundColor: themeStyles.colors.card,
2061
+ backgroundColor: colors.card,
2075
2062
  }
2076
2063
  ]}>
2077
2064
  <AnimatedButton
2078
2065
  isSelected={viewMode === 'all'}
2079
2066
  onPress={() => setViewMode('all')}
2080
2067
  icon={viewMode === 'all' ? 'folder' : 'folder-outline'}
2081
- primaryColor={themeStyles.primaryColor}
2082
- textColor={themeStyles.textColor}
2068
+ primaryColor={colors.primary}
2069
+ textColor={colors.text}
2083
2070
  style={fileManagementStyles.viewModeButton}
2084
2071
  />
2085
2072
  <AnimatedButton
2086
2073
  isSelected={viewMode === 'photos'}
2087
2074
  onPress={() => setViewMode('photos')}
2088
2075
  icon={viewMode === 'photos' ? 'image-multiple' : 'image-multiple-outline'}
2089
- primaryColor={themeStyles.primaryColor}
2090
- textColor={themeStyles.textColor}
2076
+ primaryColor={colors.primary}
2077
+ textColor={colors.text}
2091
2078
  style={fileManagementStyles.viewModeButton}
2092
2079
  />
2093
2080
  <AnimatedButton
2094
2081
  isSelected={viewMode === 'videos'}
2095
2082
  onPress={() => setViewMode('videos')}
2096
2083
  icon={viewMode === 'videos' ? 'video' : 'video-outline'}
2097
- primaryColor={themeStyles.primaryColor}
2098
- textColor={themeStyles.textColor}
2084
+ primaryColor={colors.primary}
2085
+ textColor={colors.text}
2099
2086
  style={fileManagementStyles.viewModeButton}
2100
2087
  />
2101
2088
  <AnimatedButton
2102
2089
  isSelected={viewMode === 'documents'}
2103
2090
  onPress={() => setViewMode('documents')}
2104
2091
  icon={viewMode === 'documents' ? 'file-document' : 'file-document-outline'}
2105
- primaryColor={themeStyles.primaryColor}
2106
- textColor={themeStyles.textColor}
2092
+ primaryColor={colors.primary}
2093
+ textColor={colors.text}
2107
2094
  style={fileManagementStyles.viewModeButton}
2108
2095
  />
2109
2096
  <AnimatedButton
2110
2097
  isSelected={viewMode === 'audio'}
2111
2098
  onPress={() => setViewMode('audio')}
2112
2099
  icon={viewMode === 'audio' ? 'music-note' : 'music-note-outline'}
2113
- primaryColor={themeStyles.primaryColor}
2114
- textColor={themeStyles.textColor}
2100
+ primaryColor={colors.primary}
2101
+ textColor={colors.text}
2115
2102
  style={fileManagementStyles.viewModeButton}
2116
2103
  />
2117
2104
  </View>
2118
2105
  </ScrollView>
2119
2106
  <TouchableOpacity
2120
2107
  style={[fileManagementStyles.sortButton, {
2121
- backgroundColor: themeStyles.colors.card,
2108
+ backgroundColor: colors.card,
2122
2109
  }]}
2123
2110
  onPress={() => {
2124
2111
  // Cycle through sort options: date -> size -> name -> type -> date
@@ -2139,17 +2126,17 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2139
2126
  sortBy === 'name' ? 'sort-alphabetical-variant' : 'file-document-outline'
2140
2127
  }
2141
2128
  size={16}
2142
- color={themeStyles.textColor}
2129
+ color={colors.text}
2143
2130
  />
2144
2131
  <MaterialCommunityIcons
2145
2132
  name={sortOrder === 'asc' ? 'arrow-up' : 'arrow-down'}
2146
2133
  size={14}
2147
- color={themeStyles.colors.secondaryText}
2134
+ color={colors.textSecondary}
2148
2135
  />
2149
2136
  </TouchableOpacity>
2150
2137
  {user?.id === targetUserId && (!selectMode || (selectMode && allowUploadInSelectMode)) && (
2151
2138
  <TouchableOpacity
2152
- style={[fileManagementStyles.uploadButton, { backgroundColor: themeStyles.primaryColor }]}
2139
+ style={[fileManagementStyles.uploadButton, { backgroundColor: colors.primary }]}
2153
2140
  onPress={handleFileUpload}
2154
2141
  disabled={uploading || isPickingDocument}
2155
2142
  >
@@ -2176,14 +2163,14 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2176
2163
  <View style={[
2177
2164
  fileManagementStyles.searchContainer,
2178
2165
  {
2179
- backgroundColor: themeStyles.colors.card,
2166
+ backgroundColor: colors.card,
2180
2167
  }
2181
2168
  ]}>
2182
- <Ionicons name="search" size={22} color={themeStyles.colors.icon} />
2169
+ <Ionicons name="search" size={22} color={colors.icon} />
2183
2170
  <TextInput
2184
- style={[fileManagementStyles.searchInput, { color: themeStyles.textColor }]}
2171
+ style={[fileManagementStyles.searchInput, { color: colors.text }]}
2185
2172
  placeholder={viewMode === 'photos' ? t('fileManagement.searchPhotos') : t('fileManagement.searchFiles')}
2186
- placeholderTextColor={themeStyles.colors.secondaryText}
2173
+ placeholderTextColor={colors.textSecondary}
2187
2174
  value={searchQuery}
2188
2175
  onChangeText={setSearchQuery}
2189
2176
  />
@@ -2192,7 +2179,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2192
2179
  onPress={() => setSearchQuery('')}
2193
2180
  style={fileManagementStyles.searchClearButton}
2194
2181
  >
2195
- <Ionicons name="close-circle" size={22} color={themeStyles.colors.icon} />
2182
+ <Ionicons name="close-circle" size={22} color={colors.icon} />
2196
2183
  </TouchableOpacity>
2197
2184
  )}
2198
2185
  </View>
@@ -2203,27 +2190,27 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2203
2190
  <View style={[
2204
2191
  fileManagementStyles.statsContainer,
2205
2192
  {
2206
- backgroundColor: themeStyles.colors.card,
2193
+ backgroundColor: colors.card,
2207
2194
  }
2208
2195
  ]}>
2209
2196
  <View style={fileManagementStyles.statItem}>
2210
- <Text style={[fileManagementStyles.statValue, { color: themeStyles.textColor }]}>{filteredFiles.length}</Text>
2211
- <Text style={[fileManagementStyles.statLabel, { color: themeStyles.colors.secondaryText }]}>
2197
+ <Text style={[fileManagementStyles.statValue, { color: colors.text }]}>{filteredFiles.length}</Text>
2198
+ <Text style={[fileManagementStyles.statLabel, { color: colors.textSecondary }]}>
2212
2199
  {searchQuery.length > 0 ? t('fileManagement.found') : (filteredFiles.length === 1 ? (viewMode === 'photos' ? t('fileManagement.photo') : t('fileManagement.file')) : (viewMode === 'photos' ? t('fileManagement.photos_stat') : t('fileManagement.files')))}
2213
2200
  </Text>
2214
2201
  </View>
2215
2202
  <View style={fileManagementStyles.statItem}>
2216
- <Text style={[fileManagementStyles.statValue, { color: themeStyles.textColor }]}>
2203
+ <Text style={[fileManagementStyles.statValue, { color: colors.text }]}>
2217
2204
  {formatFileSize(filteredFiles.reduce((total, file) => total + file.length, 0))}
2218
2205
  </Text>
2219
- <Text style={[fileManagementStyles.statLabel, { color: themeStyles.colors.secondaryText }]}>
2206
+ <Text style={[fileManagementStyles.statLabel, { color: colors.textSecondary }]}>
2220
2207
  {searchQuery.length > 0 ? t('fileManagement.size') : t('fileManagement.totalSize')}
2221
2208
  </Text>
2222
2209
  </View>
2223
2210
  {searchQuery.length > 0 && (
2224
2211
  <View style={fileManagementStyles.statItem}>
2225
- <Text style={[fileManagementStyles.statValue, { color: themeStyles.textColor }]}>{files.length}</Text>
2226
- <Text style={[fileManagementStyles.statLabel, { color: themeStyles.colors.secondaryText }]}>
2212
+ <Text style={[fileManagementStyles.statValue, { color: colors.text }]}>{files.length}</Text>
2213
+ <Text style={[fileManagementStyles.statLabel, { color: colors.textSecondary }]}>
2227
2214
  {t('fileManagement.total')}
2228
2215
  </Text>
2229
2216
  </View>
@@ -2243,7 +2230,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2243
2230
  <RefreshControl
2244
2231
  refreshing={refreshing}
2245
2232
  onRefresh={() => loadFiles('refresh')}
2246
- tintColor={themeStyles.primaryColor}
2233
+ tintColor={colors.primary}
2247
2234
  />
2248
2235
  }
2249
2236
  onScroll={({ nativeEvent }) => {
@@ -2257,13 +2244,13 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2257
2244
  >
2258
2245
  {filteredFiles.length === 0 && searchQuery.length > 0 ? (
2259
2246
  <View style={fileManagementStyles.emptyState}>
2260
- <Ionicons name="search" size={64} color={themeStyles.isDarkTheme ? '#666666' : '#CCCCCC'} />
2261
- <Text style={[fileManagementStyles.emptyStateTitle, { color: themeStyles.textColor }]}>{t('fileManagement.noResults.title')}</Text>
2262
- <Text style={[fileManagementStyles.emptyStateDescription, { color: themeStyles.isDarkTheme ? '#BBBBBB' : '#666666' }]}>
2247
+ <Ionicons name="search" size={64} color={bloomTheme.isDark ? '#666666' : '#CCCCCC'} />
2248
+ <Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.noResults.title')}</Text>
2249
+ <Text style={[fileManagementStyles.emptyStateDescription, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}>
2263
2250
  {t('fileManagement.noResults.description', { query: searchQuery })}
2264
2251
  </Text>
2265
2252
  <TouchableOpacity
2266
- style={[fileManagementStyles.emptyStateButton, { backgroundColor: themeStyles.primaryColor }]}
2253
+ style={[fileManagementStyles.emptyStateButton, { backgroundColor: colors.primary }]}
2267
2254
  onPress={() => setSearchQuery('')}
2268
2255
  >
2269
2256
  <Ionicons name="refresh" size={20} color="#FFFFFF" />
@@ -2275,8 +2262,8 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2275
2262
  <GroupedSection items={groupedFileItems} />
2276
2263
  {paging.loadingMore && (
2277
2264
  <View style={fileManagementStyles.loadingMoreBar}>
2278
- <ActivityIndicator size="small" color={themeStyles.primaryColor} />
2279
- <Text style={[fileManagementStyles.loadingMoreText, { color: themeStyles.textColor }]}>{t('fileManagement.loadingMore')}</Text>
2265
+ <ActivityIndicator size="small" color={colors.primary} />
2266
+ <Text style={[fileManagementStyles.loadingMoreText, { color: colors.text }]}>{t('fileManagement.loadingMore')}</Text>
2280
2267
  </View>
2281
2268
  )}
2282
2269
  </>
@@ -2291,7 +2278,6 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2291
2278
  onClose={() => setShowFileDetails(false)}
2292
2279
  onDownload={handleFileDownload}
2293
2280
  onDelete={handleFileDelete}
2294
- themeStyles={themeStyles}
2295
2281
  isOwner={user?.id === targetUserId}
2296
2282
  />
2297
2283
  )}
@@ -2299,27 +2285,27 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2299
2285
  {/* Uploading banner overlay with progress */}
2300
2286
  {!selectMode && uploading && (
2301
2287
  <View style={[fileManagementStyles.uploadBannerContainer, { pointerEvents: 'none' }]}>
2302
- <View style={[fileManagementStyles.uploadBanner, { backgroundColor: themeStyles.isDarkTheme ? '#222831EE' : '#FFFFFFEE', borderColor: themeStyles.borderColor }]}>
2303
- <Ionicons name="cloud-upload" size={18} color={themeStyles.primaryColor} />
2288
+ <View style={[fileManagementStyles.uploadBanner, { backgroundColor: bloomTheme.isDark ? '#222831EE' : '#FFFFFFEE', borderColor: colors.border }]}>
2289
+ <Ionicons name="cloud-upload" size={18} color={colors.primary} />
2304
2290
  <View style={fileManagementStyles.uploadBannerContent}>
2305
- <Text style={[fileManagementStyles.uploadBannerText, { color: themeStyles.textColor }]}>
2291
+ <Text style={[fileManagementStyles.uploadBannerText, { color: colors.text }]}>
2306
2292
  {t('fileManagement.uploading')}{uploadProgress ? ` ${uploadProgress.current}/${uploadProgress.total}` : '...'}
2307
2293
  </Text>
2308
2294
  {uploadProgress && uploadProgress.total > 0 && (
2309
- <View style={[fileManagementStyles.uploadProgressBarContainer, { backgroundColor: themeStyles.isDarkTheme ? 'rgba(255,255,255,0.1)' : 'rgba(0,0,0,0.1)' }]}>
2295
+ <View style={[fileManagementStyles.uploadProgressBarContainer, { backgroundColor: bloomTheme.isDark ? 'rgba(255,255,255,0.1)' : 'rgba(0,0,0,0.1)' }]}>
2310
2296
  <View
2311
2297
  style={[
2312
2298
  fileManagementStyles.uploadProgressBar,
2313
2299
  {
2314
2300
  width: `${(uploadProgress.current / uploadProgress.total) * 100}%`,
2315
- backgroundColor: themeStyles.primaryColor
2301
+ backgroundColor: colors.primary
2316
2302
  }
2317
2303
  ]}
2318
2304
  />
2319
2305
  </View>
2320
2306
  )}
2321
2307
  </View>
2322
- <ActivityIndicator size="small" color={themeStyles.primaryColor} />
2308
+ <ActivityIndicator size="small" color={colors.primary} />
2323
2309
  </View>
2324
2310
  </View>
2325
2311
  )}