@oxyhq/services 11.0.0 → 11.1.1

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 (434) hide show
  1. package/lib/commonjs/index.js +7 -0
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/ui/components/AccountMenu.js +9 -5
  4. package/lib/commonjs/ui/components/AccountMenu.js.map +1 -1
  5. package/lib/commonjs/ui/components/AnotherDeviceQR.js +51 -56
  6. package/lib/commonjs/ui/components/AnotherDeviceQR.js.map +1 -1
  7. package/lib/commonjs/ui/components/BottomSheetRouter.js +1 -0
  8. package/lib/commonjs/ui/components/BottomSheetRouter.js.map +1 -1
  9. package/lib/commonjs/ui/components/FollowButton.js +18 -5
  10. package/lib/commonjs/ui/components/FollowButton.js.map +1 -1
  11. package/lib/commonjs/ui/components/OxyLogo.js +1 -1
  12. package/lib/commonjs/ui/components/OxyLogo.js.map +1 -1
  13. package/lib/commonjs/ui/components/OxyProvider.js +23 -7
  14. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  15. package/lib/commonjs/ui/components/SignInModal.js +20 -1
  16. package/lib/commonjs/ui/components/SignInModal.js.map +1 -1
  17. package/lib/commonjs/ui/components/fileManagement/FileViewer.js +19 -9
  18. package/lib/commonjs/ui/components/fileManagement/FileViewer.js.map +1 -1
  19. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js +4 -2
  20. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js.map +1 -1
  21. package/lib/commonjs/ui/context/OxyContext.js +153 -19
  22. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  23. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +6 -17
  24. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
  25. package/lib/commonjs/ui/hooks/mutations/mutationFactory.js +5 -5
  26. package/lib/commonjs/ui/hooks/mutations/mutationFactory.js.map +1 -1
  27. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +38 -38
  28. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  29. package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js +2 -2
  30. package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js.map +1 -1
  31. package/lib/commonjs/ui/hooks/queries/queryKeys.js +3 -3
  32. package/lib/commonjs/ui/hooks/queries/queryKeys.js.map +1 -1
  33. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +1 -1
  34. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
  35. package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js +16 -12
  36. package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js.map +1 -1
  37. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +10 -6
  38. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
  39. package/lib/commonjs/ui/hooks/queryClient.js +6 -5
  40. package/lib/commonjs/ui/hooks/queryClient.js.map +1 -1
  41. package/lib/commonjs/ui/hooks/useOxyAuthSession.js +40 -2
  42. package/lib/commonjs/ui/hooks/useOxyAuthSession.js.map +1 -1
  43. package/lib/commonjs/ui/hooks/useProfileEditing.js +21 -0
  44. package/lib/commonjs/ui/hooks/useProfileEditing.js.map +1 -1
  45. package/lib/commonjs/ui/hooks/useSessionManagement.js +3 -3
  46. package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
  47. package/lib/commonjs/ui/screens/AccountVerificationScreen.js +100 -108
  48. package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
  49. package/lib/commonjs/ui/screens/AppInfoScreen.js +227 -273
  50. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
  51. package/lib/commonjs/ui/screens/AvatarCropScreen.js +10 -4
  52. package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -1
  53. package/lib/commonjs/ui/screens/ConnectedAppsScreen.js +20 -37
  54. package/lib/commonjs/ui/screens/ConnectedAppsScreen.js.map +1 -1
  55. package/lib/commonjs/ui/screens/CreateManagedAccountScreen.js +89 -201
  56. package/lib/commonjs/ui/screens/CreateManagedAccountScreen.js.map +1 -1
  57. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +80 -208
  58. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
  59. package/lib/commonjs/ui/screens/FAQScreen.js +56 -208
  60. package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -1
  61. package/lib/commonjs/ui/screens/FeedbackScreen.js +303 -352
  62. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  63. package/lib/commonjs/ui/screens/FileManagementScreen.js +20 -20
  64. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  65. package/lib/commonjs/ui/screens/HelpSupportScreen.js +77 -89
  66. package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
  67. package/lib/commonjs/ui/screens/HistoryViewScreen.js +43 -58
  68. package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
  69. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +67 -90
  70. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
  71. package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js +77 -177
  72. package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
  73. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +113 -107
  74. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
  75. package/lib/commonjs/ui/screens/ManageAccountScreen.js +55 -114
  76. package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
  77. package/lib/commonjs/ui/screens/NotificationsScreen.js +67 -85
  78. package/lib/commonjs/ui/screens/NotificationsScreen.js.map +1 -1
  79. package/lib/commonjs/ui/screens/OxyAuthScreen.js +71 -135
  80. package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
  81. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +15 -9
  82. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  83. package/lib/commonjs/ui/screens/PreferencesScreen.js +65 -83
  84. package/lib/commonjs/ui/screens/PreferencesScreen.js.map +1 -1
  85. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +378 -1023
  86. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  87. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +294 -242
  88. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  89. package/lib/commonjs/ui/screens/ProfileScreen.js +194 -333
  90. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  91. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +57 -97
  92. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  93. package/lib/commonjs/ui/screens/SearchSettingsScreen.js +41 -41
  94. package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
  95. package/lib/commonjs/ui/screens/UserLinksScreen.js +17 -24
  96. package/lib/commonjs/ui/screens/UserLinksScreen.js.map +1 -1
  97. package/lib/commonjs/ui/screens/UserListScreen.js +83 -214
  98. package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
  99. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +115 -77
  100. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  101. package/lib/commonjs/ui/screens/trust/TrustAboutScreen.js +70 -57
  102. package/lib/commonjs/ui/screens/trust/TrustAboutScreen.js.map +1 -1
  103. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +136 -332
  104. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  105. package/lib/commonjs/ui/screens/trust/TrustFAQScreen.js +47 -137
  106. package/lib/commonjs/ui/screens/trust/TrustFAQScreen.js.map +1 -1
  107. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js +182 -115
  108. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  109. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +138 -214
  110. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  111. package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js +54 -92
  112. package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js.map +1 -1
  113. package/lib/commonjs/ui/utils/activeAuthuser.js +15 -9
  114. package/lib/commonjs/ui/utils/activeAuthuser.js.map +1 -1
  115. package/lib/commonjs/ui/utils/avatarUtils.js +1 -1
  116. package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
  117. package/lib/module/index.js +2 -0
  118. package/lib/module/index.js.map +1 -1
  119. package/lib/module/ui/components/AccountMenu.js +10 -6
  120. package/lib/module/ui/components/AccountMenu.js.map +1 -1
  121. package/lib/module/ui/components/AnotherDeviceQR.js +50 -56
  122. package/lib/module/ui/components/AnotherDeviceQR.js.map +1 -1
  123. package/lib/module/ui/components/BottomSheetRouter.js +2 -1
  124. package/lib/module/ui/components/BottomSheetRouter.js.map +1 -1
  125. package/lib/module/ui/components/FollowButton.js +18 -5
  126. package/lib/module/ui/components/FollowButton.js.map +1 -1
  127. package/lib/module/ui/components/OxyLogo.js +1 -1
  128. package/lib/module/ui/components/OxyLogo.js.map +1 -1
  129. package/lib/module/ui/components/OxyProvider.js +23 -7
  130. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  131. package/lib/module/ui/components/SignInModal.js +20 -1
  132. package/lib/module/ui/components/SignInModal.js.map +1 -1
  133. package/lib/module/ui/components/fileManagement/FileViewer.js +19 -9
  134. package/lib/module/ui/components/fileManagement/FileViewer.js.map +1 -1
  135. package/lib/module/ui/components/fileManagement/UploadPreview.js +4 -2
  136. package/lib/module/ui/components/fileManagement/UploadPreview.js.map +1 -1
  137. package/lib/module/ui/context/OxyContext.js +154 -20
  138. package/lib/module/ui/context/OxyContext.js.map +1 -1
  139. package/lib/module/ui/context/hooks/useAuthOperations.js +6 -17
  140. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
  141. package/lib/module/ui/hooks/mutations/mutationFactory.js +5 -5
  142. package/lib/module/ui/hooks/mutations/mutationFactory.js.map +1 -1
  143. package/lib/module/ui/hooks/mutations/useAccountMutations.js +38 -38
  144. package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  145. package/lib/module/ui/hooks/mutations/useServicesMutations.js +2 -2
  146. package/lib/module/ui/hooks/mutations/useServicesMutations.js.map +1 -1
  147. package/lib/module/ui/hooks/queries/queryKeys.js +3 -3
  148. package/lib/module/ui/hooks/queries/queryKeys.js.map +1 -1
  149. package/lib/module/ui/hooks/queries/useAccountQueries.js +1 -1
  150. package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
  151. package/lib/module/ui/hooks/queries/usePaymentQueries.js +16 -12
  152. package/lib/module/ui/hooks/queries/usePaymentQueries.js.map +1 -1
  153. package/lib/module/ui/hooks/queries/useServicesQueries.js +9 -6
  154. package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
  155. package/lib/module/ui/hooks/queryClient.js +6 -5
  156. package/lib/module/ui/hooks/queryClient.js.map +1 -1
  157. package/lib/module/ui/hooks/useOxyAuthSession.js +40 -2
  158. package/lib/module/ui/hooks/useOxyAuthSession.js.map +1 -1
  159. package/lib/module/ui/hooks/useProfileEditing.js +21 -0
  160. package/lib/module/ui/hooks/useProfileEditing.js.map +1 -1
  161. package/lib/module/ui/hooks/useSessionManagement.js +4 -3
  162. package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
  163. package/lib/module/ui/screens/AccountVerificationScreen.js +101 -109
  164. package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
  165. package/lib/module/ui/screens/AppInfoScreen.js +228 -275
  166. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
  167. package/lib/module/ui/screens/AvatarCropScreen.js +10 -4
  168. package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -1
  169. package/lib/module/ui/screens/ConnectedAppsScreen.js +19 -39
  170. package/lib/module/ui/screens/ConnectedAppsScreen.js.map +1 -1
  171. package/lib/module/ui/screens/CreateManagedAccountScreen.js +90 -202
  172. package/lib/module/ui/screens/CreateManagedAccountScreen.js.map +1 -1
  173. package/lib/module/ui/screens/EditProfileFieldScreen.js +77 -205
  174. package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
  175. package/lib/module/ui/screens/FAQScreen.js +55 -207
  176. package/lib/module/ui/screens/FAQScreen.js.map +1 -1
  177. package/lib/module/ui/screens/FeedbackScreen.js +301 -350
  178. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  179. package/lib/module/ui/screens/FileManagementScreen.js +20 -20
  180. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  181. package/lib/module/ui/screens/HelpSupportScreen.js +78 -90
  182. package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
  183. package/lib/module/ui/screens/HistoryViewScreen.js +44 -59
  184. package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
  185. package/lib/module/ui/screens/LanguageSelectorScreen.js +68 -91
  186. package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
  187. package/lib/module/ui/screens/LearnMoreUsernamesScreen.js +75 -177
  188. package/lib/module/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
  189. package/lib/module/ui/screens/LegalDocumentsScreen.js +116 -108
  190. package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
  191. package/lib/module/ui/screens/ManageAccountScreen.js +52 -112
  192. package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
  193. package/lib/module/ui/screens/NotificationsScreen.js +68 -86
  194. package/lib/module/ui/screens/NotificationsScreen.js.map +1 -1
  195. package/lib/module/ui/screens/OxyAuthScreen.js +69 -134
  196. package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
  197. package/lib/module/ui/screens/PaymentGatewayScreen.js +16 -10
  198. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  199. package/lib/module/ui/screens/PreferencesScreen.js +66 -84
  200. package/lib/module/ui/screens/PreferencesScreen.js.map +1 -1
  201. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +366 -1012
  202. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  203. package/lib/module/ui/screens/PrivacySettingsScreen.js +295 -243
  204. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  205. package/lib/module/ui/screens/ProfileScreen.js +192 -331
  206. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  207. package/lib/module/ui/screens/SavesCollectionsScreen.js +58 -98
  208. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  209. package/lib/module/ui/screens/SearchSettingsScreen.js +42 -42
  210. package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
  211. package/lib/module/ui/screens/UserLinksScreen.js +18 -25
  212. package/lib/module/ui/screens/UserLinksScreen.js.map +1 -1
  213. package/lib/module/ui/screens/UserListScreen.js +81 -212
  214. package/lib/module/ui/screens/UserListScreen.js.map +1 -1
  215. package/lib/module/ui/screens/WelcomeNewUserScreen.js +114 -76
  216. package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  217. package/lib/module/ui/screens/trust/TrustAboutScreen.js +69 -57
  218. package/lib/module/ui/screens/trust/TrustAboutScreen.js.map +1 -1
  219. package/lib/module/ui/screens/trust/TrustCenterScreen.js +135 -332
  220. package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  221. package/lib/module/ui/screens/trust/TrustFAQScreen.js +48 -138
  222. package/lib/module/ui/screens/trust/TrustFAQScreen.js.map +1 -1
  223. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js +184 -117
  224. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  225. package/lib/module/ui/screens/trust/TrustRewardsScreen.js +132 -208
  226. package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  227. package/lib/module/ui/screens/trust/TrustRulesScreen.js +58 -94
  228. package/lib/module/ui/screens/trust/TrustRulesScreen.js.map +1 -1
  229. package/lib/module/ui/utils/activeAuthuser.js +15 -9
  230. package/lib/module/ui/utils/activeAuthuser.js.map +1 -1
  231. package/lib/module/ui/utils/avatarUtils.js +1 -1
  232. package/lib/module/ui/utils/avatarUtils.js.map +1 -1
  233. package/lib/typescript/commonjs/index.d.ts +2 -0
  234. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  235. package/lib/typescript/commonjs/ui/components/AccountMenu.d.ts +2 -0
  236. package/lib/typescript/commonjs/ui/components/AccountMenu.d.ts.map +1 -1
  237. package/lib/typescript/commonjs/ui/components/AnotherDeviceQR.d.ts +12 -2
  238. package/lib/typescript/commonjs/ui/components/AnotherDeviceQR.d.ts.map +1 -1
  239. package/lib/typescript/commonjs/ui/components/BottomSheetRouter.d.ts.map +1 -1
  240. package/lib/typescript/commonjs/ui/components/FollowButton.d.ts.map +1 -1
  241. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts +3 -2
  242. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
  243. package/lib/typescript/commonjs/ui/components/SignInModal.d.ts.map +1 -1
  244. package/lib/typescript/commonjs/ui/components/TouchableRipple/TouchableRipple.native.d.ts +1 -1
  245. package/lib/typescript/commonjs/ui/components/TouchableRipple/TouchableRipple.native.d.ts.map +1 -1
  246. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +34 -0
  247. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  248. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  249. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +6 -0
  250. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  251. package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts +3 -3
  252. package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts.map +1 -1
  253. package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  254. package/lib/typescript/commonjs/ui/hooks/queryClient.d.ts.map +1 -1
  255. package/lib/typescript/commonjs/ui/hooks/useOxyAuthSession.d.ts +22 -0
  256. package/lib/typescript/commonjs/ui/hooks/useOxyAuthSession.d.ts.map +1 -1
  257. package/lib/typescript/commonjs/ui/hooks/useProfileEditing.d.ts +3 -0
  258. package/lib/typescript/commonjs/ui/hooks/useProfileEditing.d.ts.map +1 -1
  259. package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts +2 -1
  260. package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts.map +1 -1
  261. package/lib/typescript/commonjs/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  262. package/lib/typescript/commonjs/ui/screens/AppInfoScreen.d.ts.map +1 -1
  263. package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts.map +1 -1
  264. package/lib/typescript/commonjs/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
  265. package/lib/typescript/commonjs/ui/screens/CreateManagedAccountScreen.d.ts.map +1 -1
  266. package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  267. package/lib/typescript/commonjs/ui/screens/FAQScreen.d.ts.map +1 -1
  268. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
  269. package/lib/typescript/commonjs/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  270. package/lib/typescript/commonjs/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  271. package/lib/typescript/commonjs/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  272. package/lib/typescript/commonjs/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
  273. package/lib/typescript/commonjs/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  274. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  275. package/lib/typescript/commonjs/ui/screens/NotificationsScreen.d.ts.map +1 -1
  276. package/lib/typescript/commonjs/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  277. package/lib/typescript/commonjs/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  278. package/lib/typescript/commonjs/ui/screens/PreferencesScreen.d.ts.map +1 -1
  279. package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  280. package/lib/typescript/commonjs/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  281. package/lib/typescript/commonjs/ui/screens/ProfileScreen.d.ts.map +1 -1
  282. package/lib/typescript/commonjs/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  283. package/lib/typescript/commonjs/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  284. package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts.map +1 -1
  285. package/lib/typescript/commonjs/ui/screens/UserListScreen.d.ts.map +1 -1
  286. package/lib/typescript/commonjs/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  287. package/lib/typescript/commonjs/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
  288. package/lib/typescript/commonjs/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  289. package/lib/typescript/commonjs/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
  290. package/lib/typescript/commonjs/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
  291. package/lib/typescript/commonjs/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  292. package/lib/typescript/commonjs/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  293. package/lib/typescript/commonjs/ui/utils/activeAuthuser.d.ts.map +1 -1
  294. package/lib/typescript/module/index.d.ts +2 -0
  295. package/lib/typescript/module/index.d.ts.map +1 -1
  296. package/lib/typescript/module/ui/components/AccountMenu.d.ts +2 -0
  297. package/lib/typescript/module/ui/components/AccountMenu.d.ts.map +1 -1
  298. package/lib/typescript/module/ui/components/AnotherDeviceQR.d.ts +12 -2
  299. package/lib/typescript/module/ui/components/AnotherDeviceQR.d.ts.map +1 -1
  300. package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts.map +1 -1
  301. package/lib/typescript/module/ui/components/FollowButton.d.ts.map +1 -1
  302. package/lib/typescript/module/ui/components/OxyProvider.d.ts +3 -2
  303. package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
  304. package/lib/typescript/module/ui/components/SignInModal.d.ts.map +1 -1
  305. package/lib/typescript/module/ui/components/TouchableRipple/TouchableRipple.native.d.ts +1 -1
  306. package/lib/typescript/module/ui/components/TouchableRipple/TouchableRipple.native.d.ts.map +1 -1
  307. package/lib/typescript/module/ui/context/OxyContext.d.ts +34 -0
  308. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  309. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  310. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +6 -0
  311. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  312. package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts +3 -3
  313. package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts.map +1 -1
  314. package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  315. package/lib/typescript/module/ui/hooks/queryClient.d.ts.map +1 -1
  316. package/lib/typescript/module/ui/hooks/useOxyAuthSession.d.ts +22 -0
  317. package/lib/typescript/module/ui/hooks/useOxyAuthSession.d.ts.map +1 -1
  318. package/lib/typescript/module/ui/hooks/useProfileEditing.d.ts +3 -0
  319. package/lib/typescript/module/ui/hooks/useProfileEditing.d.ts.map +1 -1
  320. package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts +2 -1
  321. package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts.map +1 -1
  322. package/lib/typescript/module/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  323. package/lib/typescript/module/ui/screens/AppInfoScreen.d.ts.map +1 -1
  324. package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts.map +1 -1
  325. package/lib/typescript/module/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
  326. package/lib/typescript/module/ui/screens/CreateManagedAccountScreen.d.ts.map +1 -1
  327. package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  328. package/lib/typescript/module/ui/screens/FAQScreen.d.ts.map +1 -1
  329. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
  330. package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  331. package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  332. package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  333. package/lib/typescript/module/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
  334. package/lib/typescript/module/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  335. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  336. package/lib/typescript/module/ui/screens/NotificationsScreen.d.ts.map +1 -1
  337. package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  338. package/lib/typescript/module/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  339. package/lib/typescript/module/ui/screens/PreferencesScreen.d.ts.map +1 -1
  340. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  341. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  342. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
  343. package/lib/typescript/module/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  344. package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  345. package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +1 -1
  346. package/lib/typescript/module/ui/screens/UserListScreen.d.ts.map +1 -1
  347. package/lib/typescript/module/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  348. package/lib/typescript/module/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
  349. package/lib/typescript/module/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  350. package/lib/typescript/module/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
  351. package/lib/typescript/module/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
  352. package/lib/typescript/module/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  353. package/lib/typescript/module/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  354. package/lib/typescript/module/ui/utils/activeAuthuser.d.ts.map +1 -1
  355. package/lib/typescript/types/expo-haptics.d.ts +42 -0
  356. package/package.json +8 -3
  357. package/src/index.ts +2 -0
  358. package/src/types/expo-haptics.d.ts +42 -0
  359. package/src/ui/components/AccountMenu.tsx +11 -5
  360. package/src/ui/components/AnotherDeviceQR.tsx +53 -45
  361. package/src/ui/components/BottomSheetRouter.tsx +2 -1
  362. package/src/ui/components/FollowButton.tsx +24 -5
  363. package/src/ui/components/OxyLogo.tsx +1 -1
  364. package/src/ui/components/OxyProvider.tsx +22 -8
  365. package/src/ui/components/SignInModal.tsx +21 -2
  366. package/src/ui/components/TouchableRipple/TouchableRipple.native.tsx +1 -1
  367. package/src/ui/components/fileManagement/FileViewer.tsx +9 -9
  368. package/src/ui/components/fileManagement/UploadPreview.tsx +2 -2
  369. package/src/ui/context/OxyContext.tsx +178 -21
  370. package/src/ui/context/hooks/useAuthOperations.ts +6 -17
  371. package/src/ui/hooks/mutations/mutationFactory.ts +5 -5
  372. package/src/ui/hooks/mutations/useAccountMutations.ts +38 -38
  373. package/src/ui/hooks/mutations/useServicesMutations.ts +2 -2
  374. package/src/ui/hooks/queries/queryKeys.ts +6 -3
  375. package/src/ui/hooks/queries/useAccountQueries.ts +1 -1
  376. package/src/ui/hooks/queries/usePaymentQueries.ts +12 -12
  377. package/src/ui/hooks/queries/useServicesQueries.ts +9 -6
  378. package/src/ui/hooks/queryClient.ts +5 -5
  379. package/src/ui/hooks/useOxyAuthSession.ts +76 -2
  380. package/src/ui/hooks/useProfileEditing.ts +24 -0
  381. package/src/ui/hooks/useSessionManagement.ts +9 -6
  382. package/src/ui/screens/AccountVerificationScreen.tsx +101 -113
  383. package/src/ui/screens/AppInfoScreen.tsx +200 -238
  384. package/src/ui/screens/AvatarCropScreen.tsx +17 -4
  385. package/src/ui/screens/ConnectedAppsScreen.tsx +16 -34
  386. package/src/ui/screens/CreateManagedAccountScreen.tsx +94 -170
  387. package/src/ui/screens/EditProfileFieldScreen.tsx +77 -190
  388. package/src/ui/screens/FAQScreen.tsx +77 -208
  389. package/src/ui/screens/FeedbackScreen.tsx +330 -239
  390. package/src/ui/screens/FileManagementScreen.tsx +20 -20
  391. package/src/ui/screens/HelpSupportScreen.tsx +67 -82
  392. package/src/ui/screens/HistoryViewScreen.tsx +32 -38
  393. package/src/ui/screens/LanguageSelectorScreen.tsx +79 -93
  394. package/src/ui/screens/LearnMoreUsernamesScreen.tsx +81 -164
  395. package/src/ui/screens/LegalDocumentsScreen.tsx +184 -123
  396. package/src/ui/screens/ManageAccountScreen.tsx +48 -114
  397. package/src/ui/screens/NotificationsScreen.tsx +107 -106
  398. package/src/ui/screens/OxyAuthScreen.tsx +76 -109
  399. package/src/ui/screens/PaymentGatewayScreen.tsx +16 -7
  400. package/src/ui/screens/PreferencesScreen.tsx +96 -116
  401. package/src/ui/screens/PremiumSubscriptionScreen.tsx +419 -872
  402. package/src/ui/screens/PrivacySettingsScreen.tsx +203 -185
  403. package/src/ui/screens/ProfileScreen.tsx +162 -246
  404. package/src/ui/screens/SavesCollectionsScreen.tsx +78 -125
  405. package/src/ui/screens/SearchSettingsScreen.tsx +52 -41
  406. package/src/ui/screens/UserLinksScreen.tsx +18 -25
  407. package/src/ui/screens/UserListScreen.tsx +95 -188
  408. package/src/ui/screens/WelcomeNewUserScreen.tsx +109 -36
  409. package/src/ui/screens/trust/TrustAboutScreen.tsx +52 -41
  410. package/src/ui/screens/trust/TrustCenterScreen.tsx +184 -222
  411. package/src/ui/screens/trust/TrustFAQScreen.tsx +64 -124
  412. package/src/ui/screens/trust/TrustLeaderboardScreen.tsx +190 -67
  413. package/src/ui/screens/trust/TrustRewardsScreen.tsx +147 -182
  414. package/src/ui/screens/trust/TrustRulesScreen.tsx +77 -50
  415. package/src/ui/utils/activeAuthuser.ts +15 -9
  416. package/src/ui/utils/avatarUtils.ts +1 -1
  417. package/lib/commonjs/ui/components/feedback/FormInput.js +0 -72
  418. package/lib/commonjs/ui/components/feedback/FormInput.js.map +0 -1
  419. package/lib/commonjs/ui/components/feedback/feedbackStyles.js +0 -261
  420. package/lib/commonjs/ui/components/feedback/feedbackStyles.js.map +0 -1
  421. package/lib/module/ui/components/feedback/FormInput.js +0 -67
  422. package/lib/module/ui/components/feedback/FormInput.js.map +0 -1
  423. package/lib/module/ui/components/feedback/feedbackStyles.js +0 -256
  424. package/lib/module/ui/components/feedback/feedbackStyles.js.map +0 -1
  425. package/lib/typescript/commonjs/ui/components/feedback/FormInput.d.ts +0 -20
  426. package/lib/typescript/commonjs/ui/components/feedback/FormInput.d.ts.map +0 -1
  427. package/lib/typescript/commonjs/ui/components/feedback/feedbackStyles.d.ts +0 -279
  428. package/lib/typescript/commonjs/ui/components/feedback/feedbackStyles.d.ts.map +0 -1
  429. package/lib/typescript/module/ui/components/feedback/FormInput.d.ts +0 -20
  430. package/lib/typescript/module/ui/components/feedback/FormInput.d.ts.map +0 -1
  431. package/lib/typescript/module/ui/components/feedback/feedbackStyles.d.ts +0 -279
  432. package/lib/typescript/module/ui/components/feedback/feedbackStyles.d.ts.map +0 -1
  433. package/src/ui/components/feedback/FormInput.tsx +0 -84
  434. package/src/ui/components/feedback/feedbackStyles.ts +0 -246
@@ -1029,8 +1029,8 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1029
1029
 
1030
1030
  const bloomTheme = useTheme();
1031
1031
  const { colors } = bloomTheme;
1032
- // FileManagementScreen uses a slightly different light background
1033
- const backgroundColor = bloomTheme.isDark ? colors.background : '#f2f2f2';
1032
+ // FileManagementScreen uses a slightly elevated page background.
1033
+ const backgroundColor = colors.backgroundSecondary;
1034
1034
  const borderColor = colors.border;
1035
1035
 
1036
1036
  const targetUserId = userId || user?.id;
@@ -1984,12 +1984,12 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
1984
1984
  <Text style={[fileManagementStyles.fileName, { color: colors.text }]} numberOfLines={1}>
1985
1985
  {file.filename}
1986
1986
  </Text>
1987
- <Text style={[fileManagementStyles.fileDetails, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}>
1987
+ <Text style={[fileManagementStyles.fileDetails, { color: colors.textSecondary }]}>
1988
1988
  {formatFileSize(file.length)} • {new Date(file.uploadDate).toLocaleDateString()}
1989
1989
  </Text>
1990
1990
  {file.metadata?.description && (
1991
1991
  <Text
1992
- style={[fileManagementStyles.fileDescription, { color: bloomTheme.isDark ? '#AAAAAA' : '#888888' }]}
1992
+ style={[fileManagementStyles.fileDescription, { color: colors.textTertiary }]}
1993
1993
  numberOfLines={2}
1994
1994
  >
1995
1995
  {file.metadata.description}
@@ -2003,7 +2003,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2003
2003
  {/* Preview button for supported files */}
2004
2004
  {hasPreview && (
2005
2005
  <TouchableOpacity
2006
- style={[fileManagementStyles.actionButton, { backgroundColor: bloomTheme.isDark ? '#333333' : '#F0F0F0' }]}
2006
+ style={[fileManagementStyles.actionButton, { backgroundColor: colors.backgroundSecondary }]}
2007
2007
  onPress={() => handleFileOpen(file)}
2008
2008
  >
2009
2009
  <Ionicons name="eye" size={20} color={colors.primary} />
@@ -2011,7 +2011,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2011
2011
  )}
2012
2012
 
2013
2013
  <TouchableOpacity
2014
- style={[fileManagementStyles.actionButton, { backgroundColor: bloomTheme.isDark ? '#333333' : '#F0F0F0' }]}
2014
+ style={[fileManagementStyles.actionButton, { backgroundColor: colors.backgroundSecondary }]}
2015
2015
  onPress={() => handleFileDownload(file.id, file.filename)}
2016
2016
  >
2017
2017
  <Ionicons name="download" size={20} color={colors.primary} />
@@ -2019,7 +2019,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2019
2019
 
2020
2020
  {/* Always show delete button for debugging */}
2021
2021
  <TouchableOpacity
2022
- style={[fileManagementStyles.actionButton, { backgroundColor: bloomTheme.isDark ? '#400000' : '#FFEBEE' }]}
2022
+ style={[fileManagementStyles.actionButton, { backgroundColor: colors.negativeSubtle }]}
2023
2023
  onPress={() => confirmFileDelete(file.id, file.filename)}
2024
2024
  disabled={deleting === file.id}
2025
2025
  >
@@ -2119,20 +2119,20 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2119
2119
  <View style={fileManagementStyles.groupedActions}>
2120
2120
  {(isImage || isVideo || file.contentType.includes('pdf')) && (
2121
2121
  <TouchableOpacity
2122
- style={[fileManagementStyles.groupedActionBtn, { backgroundColor: bloomTheme.isDark ? '#333333' : '#F0F0F0' }]}
2122
+ style={[fileManagementStyles.groupedActionBtn, { backgroundColor: colors.backgroundSecondary }]}
2123
2123
  onPress={() => handleFileOpen(file)}
2124
2124
  >
2125
2125
  <Ionicons name="eye" size={18} color={colors.primary} />
2126
2126
  </TouchableOpacity>
2127
2127
  )}
2128
2128
  <TouchableOpacity
2129
- style={[fileManagementStyles.groupedActionBtn, { backgroundColor: bloomTheme.isDark ? '#333333' : '#F0F0F0' }]}
2129
+ style={[fileManagementStyles.groupedActionBtn, { backgroundColor: colors.backgroundSecondary }]}
2130
2130
  onPress={() => handleFileDownload(file.id, file.filename)}
2131
2131
  >
2132
2132
  <Ionicons name="download" size={18} color={colors.primary} />
2133
2133
  </TouchableOpacity>
2134
2134
  <TouchableOpacity
2135
- style={[fileManagementStyles.groupedActionBtn, { backgroundColor: bloomTheme.isDark ? '#400000' : '#FFEBEE' }]}
2135
+ style={[fileManagementStyles.groupedActionBtn, { backgroundColor: colors.negativeSubtle }]}
2136
2136
  onPress={() => confirmFileDelete(file.id, file.filename)}
2137
2137
  disabled={deleting === file.id}
2138
2138
  >
@@ -2284,9 +2284,9 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2284
2284
  if (photos.length === 0) {
2285
2285
  return (
2286
2286
  <View style={fileManagementStyles.emptyState}>
2287
- <Ionicons name="images-outline" size={64} color={bloomTheme.isDark ? '#666666' : '#CCCCCC'} />
2287
+ <Ionicons name="images-outline" size={64} color={colors.textTertiary} />
2288
2288
  <Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.emptyPhotos.title')}</Text>
2289
- <Text style={[fileManagementStyles.emptyStateDescription, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}> {
2289
+ <Text style={[fileManagementStyles.emptyStateDescription, { color: colors.textSecondary }]}> {
2290
2290
  user?.id === targetUserId
2291
2291
  ? t('fileManagement.emptyPhotos.ownDescription')
2292
2292
  : t('fileManagement.emptyPhotos.otherDescription')
@@ -2338,7 +2338,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2338
2338
  {loadingDimensions && (
2339
2339
  <View style={fileManagementStyles.dimensionsLoadingIndicator}>
2340
2340
  <ActivityIndicator size="small" color={colors.primary} />
2341
- <Text style={[fileManagementStyles.dimensionsLoadingText, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}>{t('fileManagement.loadingPhotoLayout')}</Text>
2341
+ <Text style={[fileManagementStyles.dimensionsLoadingText, { color: colors.textSecondary }]}>{t('fileManagement.loadingPhotoLayout')}</Text>
2342
2342
  </View>
2343
2343
  )}
2344
2344
 
@@ -2378,9 +2378,9 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2378
2378
 
2379
2379
  const renderEmptyState = () => (
2380
2380
  <View style={fileManagementStyles.emptyState}>
2381
- <Ionicons name="folder-open-outline" size={64} color={bloomTheme.isDark ? '#666666' : '#CCCCCC'} />
2381
+ <Ionicons name="folder-open-outline" size={64} color={colors.textTertiary} />
2382
2382
  <Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.emptyFiles.title')}</Text>
2383
- <Text style={[fileManagementStyles.emptyStateDescription, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}>
2383
+ <Text style={[fileManagementStyles.emptyStateDescription, { color: colors.textSecondary }]}>
2384
2384
  {user?.id === targetUserId
2385
2385
  ? t('fileManagement.emptyFiles.ownDescription')
2386
2386
  : t('fileManagement.emptyFiles.otherDescription')
@@ -2444,7 +2444,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2444
2444
  width,
2445
2445
  height,
2446
2446
  borderRadius,
2447
- backgroundColor: bloomTheme.isDark ? '#1E1E1E' : '#F5F5F5',
2447
+ backgroundColor: colors.backgroundSecondary,
2448
2448
  overflow: 'hidden',
2449
2449
  position: 'relative',
2450
2450
  },
@@ -2459,7 +2459,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2459
2459
  left: 0,
2460
2460
  right: 0,
2461
2461
  bottom: 0,
2462
- backgroundColor: bloomTheme.isDark ? '#1E1E1E' : '#F5F5F5',
2462
+ backgroundColor: colors.backgroundSecondary,
2463
2463
  }}
2464
2464
  />
2465
2465
  {/* Shimmer gradient effect */}
@@ -2500,7 +2500,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2500
2500
  alignItems: 'center',
2501
2501
  paddingHorizontal: 16,
2502
2502
  paddingVertical: 12,
2503
- backgroundColor: bloomTheme.isDark ? '#121212' : '#FFFFFF',
2503
+ backgroundColor: colors.background,
2504
2504
  borderBottomWidth: StyleSheet.hairlineWidth,
2505
2505
  borderBottomColor: colors.border,
2506
2506
  },
@@ -2965,9 +2965,9 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
2965
2965
  >
2966
2966
  {filteredFiles.length === 0 && searchQuery.length > 0 ? (
2967
2967
  <View style={fileManagementStyles.emptyState}>
2968
- <Ionicons name="search" size={64} color={bloomTheme.isDark ? '#666666' : '#CCCCCC'} />
2968
+ <Ionicons name="search" size={64} color={colors.textTertiary} />
2969
2969
  <Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.noResults.title')}</Text>
2970
- <Text style={[fileManagementStyles.emptyStateDescription, { color: bloomTheme.isDark ? '#BBBBBB' : '#666666' }]}>
2970
+ <Text style={[fileManagementStyles.emptyStateDescription, { color: colors.textSecondary }]}>
2971
2971
  {t('fileManagement.noResults.description', { query: searchQuery })}
2972
2972
  </Text>
2973
2973
  <TouchableOpacity
@@ -1,32 +1,20 @@
1
1
  import React, { useMemo } from 'react';
2
- import {
3
- View,
4
- StyleSheet,
5
- ScrollView,
6
- Linking,
7
- } from 'react-native';
2
+ import { View, ScrollView, Linking } from 'react-native';
8
3
  import type { BaseScreenProps } from '../types/navigation';
9
4
  import { toast } from '@oxyhq/bloom';
5
+ import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
6
+ import { useTheme } from '@oxyhq/bloom/theme';
10
7
  import Header from '../components/Header';
11
8
  import { SettingsIcon } from '../components/SettingsIcon';
12
9
  import { useI18n } from '../hooks/useI18n';
13
- import { useTheme } from '@oxyhq/bloom/theme';
14
- import { useColorScheme } from '../hooks/useColorScheme';
15
- import { Colors } from '../constants/theme';
16
- import { normalizeColorScheme } from '@oxyhq/core';
17
- import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
18
10
 
19
11
  const HelpSupportScreen: React.FC<BaseScreenProps> = ({
20
12
  onClose,
21
- theme,
22
13
  goBack,
23
14
  navigate,
24
15
  }) => {
25
16
  const { t } = useI18n();
26
17
  const bloomTheme = useTheme();
27
- const colorScheme = useColorScheme();
28
- const normalizedColorScheme = normalizeColorScheme(colorScheme);
29
- const themeColors = Colors[normalizedColorScheme];
30
18
 
31
19
  const handleContactSupport = useMemo(() => () => {
32
20
  Linking.openURL('mailto:support@oxy.so?subject=Support Request').catch(() => {
@@ -48,85 +36,82 @@ const HelpSupportScreen: React.FC<BaseScreenProps> = ({
48
36
  });
49
37
  }, [t]);
50
38
 
39
+ const handleDocumentation = useMemo(() => () => {
40
+ Linking.openURL('https://developer.oxy.so/docs').catch(() => {
41
+ toast.error(t('help.linkError') || 'Failed to open link');
42
+ });
43
+ }, [t]);
44
+
45
+ const handleCommunity = useMemo(() => () => {
46
+ Linking.openURL('https://community.oxy.so').catch(() => {
47
+ toast.error(t('help.linkError') || 'Failed to open link');
48
+ });
49
+ }, [t]);
50
+
51
+ const handleDevelopersPortal = useMemo(() => () => {
52
+ Linking.openURL('https://developer.oxy.so').catch(() => {
53
+ toast.error(t('help.linkError') || 'Failed to open link');
54
+ });
55
+ }, [t]);
56
+
51
57
  return (
52
- <View style={[styles.container, { backgroundColor: bloomTheme.colors.background }]}>
58
+ <View className="flex-1 bg-bg">
53
59
  <Header
54
60
  title={t('help.title') || 'Help & Support'}
55
-
56
61
  onBack={goBack || onClose}
57
62
  variant="minimal"
58
63
  elevation="subtle"
59
64
  />
60
65
 
61
- <ScrollView style={styles.content}>
62
- {/* Help Options */}
63
- <SettingsListGroup title={t('help.options') || 'Get Help'}>
64
- <SettingsListItem
65
- icon={<SettingsIcon name="help-circle" color={themeColors.iconSecurity} />}
66
- title={t('help.faq.title') || 'Frequently Asked Questions'}
67
- description={t('help.faq.subtitle') || 'Find answers to common questions'}
68
- onPress={handleFAQ}
69
- />
70
- <SettingsListItem
71
- icon={<SettingsIcon name="email" color={themeColors.iconPersonalInfo} />}
72
- title={t('help.contact.title') || 'Contact Support'}
73
- description={t('help.contact.subtitle') || 'Get help from our support team'}
74
- onPress={handleContactSupport}
75
- />
76
- <SettingsListItem
77
- icon={<SettingsIcon name="bug" color={themeColors.iconStorage} />}
78
- title={t('help.reportBug.title') || 'Report a Bug'}
79
- description={t('help.reportBug.subtitle') || 'Help us improve by reporting issues'}
80
- onPress={handleReportBug}
81
- />
82
- </SettingsListGroup>
66
+ <ScrollView className="flex-1">
67
+ <View className="px-screen-margin pb-space-24">
68
+ {/* Help Options */}
69
+ <SettingsListGroup title={t('help.options') || 'Get Help'}>
70
+ <SettingsListItem
71
+ icon={<SettingsIcon name="help-circle" color={bloomTheme.colors.info} />}
72
+ title={t('help.faq.title') || 'Frequently Asked Questions'}
73
+ description={t('help.faq.subtitle') || 'Find answers to common questions'}
74
+ onPress={handleFAQ}
75
+ />
76
+ <SettingsListItem
77
+ icon={<SettingsIcon name="email" color={bloomTheme.colors.success} />}
78
+ title={t('help.contact.title') || 'Contact Support'}
79
+ description={t('help.contact.subtitle') || 'Get help from our support team'}
80
+ onPress={handleContactSupport}
81
+ />
82
+ <SettingsListItem
83
+ icon={<SettingsIcon name="bug" color={bloomTheme.colors.warning} />}
84
+ title={t('help.reportBug.title') || 'Report a Bug'}
85
+ description={t('help.reportBug.subtitle') || 'Help us improve by reporting issues'}
86
+ onPress={handleReportBug}
87
+ />
88
+ </SettingsListGroup>
83
89
 
84
- {/* Resources */}
85
- <SettingsListGroup title={t('help.resources') || 'Resources'}>
86
- <SettingsListItem
87
- icon={<SettingsIcon name="file-document" color={bloomTheme.colors.textTertiary} />}
88
- title={t('help.documentation.title') || 'Documentation'}
89
- description={t('help.documentation.subtitle') || 'User guides and tutorials'}
90
- onPress={() => {
91
- Linking.openURL('https://developer.oxy.so/docs').catch(() => {
92
- toast.error(t('help.linkError') || 'Failed to open link');
93
- });
94
- }}
95
- />
96
- <SettingsListItem
97
- icon={<SettingsIcon name="account-group" color={themeColors.iconData} />}
98
- title={t('help.community.title') || 'Community'}
99
- description={t('help.community.subtitle') || 'Join our community'}
100
- onPress={() => {
101
- Linking.openURL('https://community.oxy.so').catch(() => {
102
- toast.error(t('help.linkError') || 'Failed to open link');
103
- });
104
- }}
105
- />
106
- <SettingsListItem
107
- icon={<SettingsIcon name="code-tags" color={themeColors.iconSharing} />}
108
- title={t('help.developersPortal.title') || 'Developers Portal'}
109
- description={t('help.developersPortal.subtitle') || 'API documentation and developer resources'}
110
- onPress={() => {
111
- Linking.openURL('https://developer.oxy.so').catch(() => {
112
- toast.error(t('help.linkError') || 'Failed to open link');
113
- });
114
- }}
115
- />
116
- </SettingsListGroup>
90
+ {/* Resources */}
91
+ <SettingsListGroup title={t('help.resources') || 'Resources'}>
92
+ <SettingsListItem
93
+ icon={<SettingsIcon name="file-document" color={bloomTheme.colors.textTertiary} />}
94
+ title={t('help.documentation.title') || 'Documentation'}
95
+ description={t('help.documentation.subtitle') || 'User guides and tutorials'}
96
+ onPress={handleDocumentation}
97
+ />
98
+ <SettingsListItem
99
+ icon={<SettingsIcon name="account-group" color={bloomTheme.colors.secondary} />}
100
+ title={t('help.community.title') || 'Community'}
101
+ description={t('help.community.subtitle') || 'Join our community'}
102
+ onPress={handleCommunity}
103
+ />
104
+ <SettingsListItem
105
+ icon={<SettingsIcon name="code-tags" color={bloomTheme.colors.error} />}
106
+ title={t('help.developersPortal.title') || 'Developers Portal'}
107
+ description={t('help.developersPortal.subtitle') || 'API documentation and developer resources'}
108
+ onPress={handleDevelopersPortal}
109
+ />
110
+ </SettingsListGroup>
111
+ </View>
117
112
  </ScrollView>
118
113
  </View>
119
114
  );
120
115
  };
121
116
 
122
- const styles = StyleSheet.create({
123
- container: {
124
- flex: 1,
125
- },
126
- content: {
127
- flex: 1,
128
- padding: 16,
129
- },
130
- });
131
-
132
117
  export default React.memo(HelpSupportScreen);
@@ -1,5 +1,5 @@
1
1
  import React, { useState, useCallback } from 'react';
2
- import { View, StyleSheet, ScrollView } from 'react-native';
2
+ import { View, ScrollView } from 'react-native';
3
3
  import type { BaseScreenProps } from '../types/navigation';
4
4
  import { toast } from '@oxyhq/bloom';
5
5
  import Header from '../components/Header';
@@ -9,21 +9,15 @@ import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list'
9
9
  import { SettingsIcon } from '../components/SettingsIcon';
10
10
  import { useI18n } from '../hooks/useI18n';
11
11
  import { useTheme } from '@oxyhq/bloom/theme';
12
- import { useColorScheme } from '../hooks/useColorScheme';
13
- import { Colors } from '../constants/theme';
14
- import { normalizeColorScheme } from '@oxyhq/core';
15
12
  import { useOxy } from '../context/OxyContext';
16
13
  import { Dialog, useDialogControl } from '@oxyhq/bloom';
17
14
 
18
15
  interface HistoryItem { id: string; query: string; type: 'search' | 'browse'; timestamp: Date; }
19
16
 
20
- const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, theme, goBack }) => {
17
+ const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, goBack }) => {
21
18
  const { user } = useOxy();
22
19
  const { t } = useI18n();
23
20
  const bloomTheme = useTheme();
24
- const colorScheme = useColorScheme();
25
- const normalizedColorScheme = normalizeColorScheme(colorScheme);
26
- const themeColors = Colors[normalizedColorScheme];
27
21
  const [history, setHistory] = useState<HistoryItem[]>([]);
28
22
  const [isLoading, setIsLoading] = useState(true);
29
23
  const [isDeleting, setIsDeleting] = useState(false);
@@ -93,37 +87,39 @@ const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, theme, goBack }
93
87
  };
94
88
 
95
89
  return (
96
- <View style={[styles.container, { backgroundColor: bloomTheme.colors.background }]}>
90
+ <View className="flex-1 bg-bg">
97
91
  <Header title={t('history.title') || 'History'} onBack={goBack || onClose} variant="minimal" elevation="subtle" />
98
- <ScrollView style={styles.content}>
99
- <SettingsListGroup title={t('history.actions') || 'Actions'}>
100
- <SettingsListItem
101
- icon={<SettingsIcon name="clock-outline" color={themeColors.iconStorage} />}
102
- title={t('history.deleteLast15Minutes.title') || 'Delete Last 15 Minutes'}
103
- description={t('history.deleteLast15Minutes.subtitle') || 'Remove recent history entries'}
104
- onPress={() => deleteLast15Dialog.open()}
105
- disabled={isDeleting || history.length === 0}
106
- />
107
- <SettingsListItem
108
- icon={<SettingsIcon name="delete-outline" color={themeColors.iconSharing} />}
109
- title={t('history.clearAll.title') || 'Clear All History'}
110
- description={t('history.clearAll.subtitle') || 'Remove all history entries'}
111
- onPress={() => clearAllDialog.open()}
112
- disabled={isDeleting || history.length === 0}
113
- />
114
- </SettingsListGroup>
115
- <SettingsListGroup title={t('history.recent') || 'Recent History'}>
116
- {isLoading ? <LoadingState message={t('history.loading') || 'Loading history...'} color={bloomTheme.colors.text} />
117
- : history.length === 0 ? <EmptyState message={t('history.empty') || 'No history yet'} textColor={bloomTheme.colors.text} />
118
- : history.map(item => (
92
+ <ScrollView className="flex-1">
93
+ <View className="px-screen-margin pb-space-24">
94
+ <SettingsListGroup title={t('history.actions') || 'Actions'}>
119
95
  <SettingsListItem
120
- key={item.id}
121
- icon={<SettingsIcon name={item.type === 'search' ? 'magnify' : 'earth'} color={item.type === 'search' ? themeColors.iconSecurity : themeColors.iconPersonalInfo} />}
122
- title={item.query}
123
- description={formatTime(item.timestamp)}
96
+ icon={<SettingsIcon name="clock-outline" color={bloomTheme.colors.warning} />}
97
+ title={t('history.deleteLast15Minutes.title') || 'Delete Last 15 Minutes'}
98
+ description={t('history.deleteLast15Minutes.subtitle') || 'Remove recent history entries'}
99
+ onPress={() => deleteLast15Dialog.open()}
100
+ disabled={isDeleting || history.length === 0}
124
101
  />
125
- ))}
126
- </SettingsListGroup>
102
+ <SettingsListItem
103
+ icon={<SettingsIcon name="delete-outline" color={bloomTheme.colors.error} />}
104
+ title={t('history.clearAll.title') || 'Clear All History'}
105
+ description={t('history.clearAll.subtitle') || 'Remove all history entries'}
106
+ onPress={() => clearAllDialog.open()}
107
+ disabled={isDeleting || history.length === 0}
108
+ />
109
+ </SettingsListGroup>
110
+ <SettingsListGroup title={t('history.recent') || 'Recent History'}>
111
+ {isLoading ? <LoadingState message={t('history.loading') || 'Loading history...'} color={bloomTheme.colors.text} />
112
+ : history.length === 0 ? <EmptyState message={t('history.empty') || 'No history yet'} textColor={bloomTheme.colors.text} />
113
+ : history.map(item => (
114
+ <SettingsListItem
115
+ key={item.id}
116
+ icon={<SettingsIcon name={item.type === 'search' ? 'magnify' : 'earth'} color={item.type === 'search' ? bloomTheme.colors.info : bloomTheme.colors.primary} />}
117
+ title={item.query}
118
+ description={formatTime(item.timestamp)}
119
+ />
120
+ ))}
121
+ </SettingsListGroup>
122
+ </View>
127
123
  </ScrollView>
128
124
  <Dialog
129
125
  control={deleteLast15Dialog}
@@ -147,6 +143,4 @@ const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, theme, goBack }
147
143
  );
148
144
  };
149
145
 
150
- const styles = StyleSheet.create({ container: { flex: 1 }, content: { flex: 1, padding: 16 } });
151
-
152
146
  export default React.memo(HistoryViewScreen);