@oxyhq/services 6.9.46 → 6.10.2

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 (812) hide show
  1. package/lib/commonjs/index.js +36 -13
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/ui/client.js +0 -20
  4. package/lib/commonjs/ui/client.js.map +1 -1
  5. package/lib/commonjs/ui/components/ActingAsBanner.js +0 -4
  6. package/lib/commonjs/ui/components/ActingAsBanner.js.map +1 -1
  7. package/lib/commonjs/ui/components/ActivityIndicator.js +1 -1
  8. package/lib/commonjs/ui/components/ActivityIndicator.js.map +1 -1
  9. package/lib/commonjs/ui/components/Avatar.js +0 -2
  10. package/lib/commonjs/ui/components/Avatar.js.map +1 -1
  11. package/lib/commonjs/ui/components/BottomSheet.js +33 -398
  12. package/lib/commonjs/ui/components/BottomSheet.js.map +1 -1
  13. package/lib/commonjs/ui/components/BottomSheetRouter.js +8 -0
  14. package/lib/commonjs/ui/components/BottomSheetRouter.js.map +1 -1
  15. package/lib/commonjs/ui/components/FollowButton.js +3 -5
  16. package/lib/commonjs/ui/components/FollowButton.js.map +1 -1
  17. package/lib/commonjs/ui/components/Header.js +0 -5
  18. package/lib/commonjs/ui/components/Header.js.map +1 -1
  19. package/lib/commonjs/ui/components/Icon.js +6 -7
  20. package/lib/commonjs/ui/components/Icon.js.map +1 -1
  21. package/lib/commonjs/ui/components/IconButton/IconButton.js +1 -5
  22. package/lib/commonjs/ui/components/IconButton/IconButton.js.map +1 -1
  23. package/lib/commonjs/ui/components/OxyPayButton.js +0 -2
  24. package/lib/commonjs/ui/components/OxyPayButton.js.map +1 -1
  25. package/lib/commonjs/ui/components/OxyProvider.js +100 -37
  26. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  27. package/lib/commonjs/ui/components/OxySignInButton.js +23 -9
  28. package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -1
  29. package/lib/commonjs/ui/components/ProfileCard.js +11 -8
  30. package/lib/commonjs/ui/components/ProfileCard.js.map +1 -1
  31. package/lib/commonjs/ui/components/QuickActions.js +2 -2
  32. package/lib/commonjs/ui/components/QuickActions.js.map +1 -1
  33. package/lib/commonjs/ui/components/SignInModal.js +139 -284
  34. package/lib/commonjs/ui/components/SignInModal.js.map +1 -1
  35. package/lib/commonjs/ui/components/StepBasedScreen.js +0 -2
  36. package/lib/commonjs/ui/components/StepBasedScreen.js.map +1 -1
  37. package/lib/commonjs/ui/components/TextField.js +0 -1
  38. package/lib/commonjs/ui/components/TextField.js.map +1 -1
  39. package/lib/commonjs/ui/components/TouchableRipple/TouchableRipple.native.js +1 -1
  40. package/lib/commonjs/ui/components/TouchableRipple/TouchableRipple.native.js.map +1 -1
  41. package/lib/commonjs/ui/components/feedback/feedbackStyles.js +0 -2
  42. package/lib/commonjs/ui/components/feedback/feedbackStyles.js.map +1 -1
  43. package/lib/commonjs/ui/components/fileManagement/AnimatedButton.js +0 -2
  44. package/lib/commonjs/ui/components/fileManagement/AnimatedButton.js.map +1 -1
  45. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js +80 -76
  46. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  47. package/lib/commonjs/ui/components/fileManagement/FileViewer.js +6 -8
  48. package/lib/commonjs/ui/components/fileManagement/FileViewer.js.map +1 -1
  49. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js +18 -23
  50. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js.map +1 -1
  51. package/lib/commonjs/ui/components/fileManagement/styles.js +213 -25
  52. package/lib/commonjs/ui/components/fileManagement/styles.js.map +1 -1
  53. package/lib/commonjs/ui/components/logo/LogoIcon.js +63 -0
  54. package/lib/commonjs/ui/components/logo/LogoIcon.js.map +1 -0
  55. package/lib/commonjs/ui/components/logo/LogoText.js +50 -0
  56. package/lib/commonjs/ui/components/logo/LogoText.js.map +1 -0
  57. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +54 -88
  58. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -1
  59. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js +2 -2
  60. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js.map +1 -1
  61. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js +1 -1
  62. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js.map +1 -1
  63. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js +1 -1
  64. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js.map +1 -1
  65. package/lib/commonjs/ui/components/payment/paymentStyles.js +2 -10
  66. package/lib/commonjs/ui/components/payment/paymentStyles.js.map +1 -1
  67. package/lib/commonjs/ui/components/styles/overlay.js +7 -9
  68. package/lib/commonjs/ui/components/styles/overlay.js.map +1 -1
  69. package/lib/commonjs/ui/components/theming.js +0 -1
  70. package/lib/commonjs/ui/components/theming.js.map +1 -1
  71. package/lib/commonjs/ui/context/OxyContext.js +34 -21
  72. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  73. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +1 -3
  74. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
  75. package/lib/commonjs/ui/hooks/index.js +32 -12
  76. package/lib/commonjs/ui/hooks/index.js.map +1 -1
  77. package/lib/commonjs/ui/hooks/mutations/mutationFactory.js +10 -5
  78. package/lib/commonjs/ui/hooks/mutations/mutationFactory.js.map +1 -1
  79. package/lib/commonjs/ui/hooks/mutations/mutationKeys.js +34 -0
  80. package/lib/commonjs/ui/hooks/mutations/mutationKeys.js.map +1 -0
  81. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +235 -57
  82. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  83. package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js +17 -13
  84. package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js.map +1 -1
  85. package/lib/commonjs/ui/hooks/queries/index.js +6 -0
  86. package/lib/commonjs/ui/hooks/queries/index.js.map +1 -1
  87. package/lib/commonjs/ui/hooks/queries/queryKeys.js +2 -1
  88. package/lib/commonjs/ui/hooks/queries/queryKeys.js.map +1 -1
  89. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +80 -3
  90. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
  91. package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js +36 -1
  92. package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js.map +1 -1
  93. package/lib/commonjs/ui/hooks/queryClient.js +168 -70
  94. package/lib/commonjs/ui/hooks/queryClient.js.map +1 -1
  95. package/lib/commonjs/ui/hooks/useAsyncAction.js +7 -7
  96. package/lib/commonjs/ui/hooks/useAsyncAction.js.map +1 -1
  97. package/lib/commonjs/ui/hooks/useAuth.js +0 -8
  98. package/lib/commonjs/ui/hooks/useAuth.js.map +1 -1
  99. package/lib/commonjs/ui/hooks/useAvatarPicker.js +71 -20
  100. package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +1 -1
  101. package/lib/commonjs/ui/hooks/useFileDownloadUrl.js +12 -41
  102. package/lib/commonjs/ui/hooks/useFileDownloadUrl.js.map +1 -1
  103. package/lib/commonjs/ui/hooks/useMutationStatus.js +86 -0
  104. package/lib/commonjs/ui/hooks/useMutationStatus.js.map +1 -0
  105. package/lib/commonjs/ui/hooks/useOnlineStatus.js +33 -0
  106. package/lib/commonjs/ui/hooks/useOnlineStatus.js.map +1 -0
  107. package/lib/commonjs/ui/hooks/useSessionSocket.js +101 -130
  108. package/lib/commonjs/ui/hooks/useSessionSocket.js.map +1 -1
  109. package/lib/commonjs/ui/hooks/useSettingToggle.js +4 -4
  110. package/lib/commonjs/ui/hooks/useSettingToggle.js.map +1 -1
  111. package/lib/commonjs/ui/index.js +1 -11
  112. package/lib/commonjs/ui/index.js.map +1 -1
  113. package/lib/commonjs/ui/navigation/routes.js +55 -3
  114. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  115. package/lib/commonjs/ui/screens/AccountCenterScreen.js +16 -16
  116. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  117. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +108 -123
  118. package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -1
  119. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +20 -19
  120. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  121. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +204 -161
  122. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
  123. package/lib/commonjs/ui/screens/AccountVerificationScreen.js +18 -18
  124. package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
  125. package/lib/commonjs/ui/screens/AppInfoScreen.js +22 -23
  126. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
  127. package/lib/commonjs/ui/screens/AvatarCropScreen.js +939 -0
  128. package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -0
  129. package/lib/commonjs/ui/screens/CreateManagedAccountScreen.js +13 -20
  130. package/lib/commonjs/ui/screens/CreateManagedAccountScreen.js.map +1 -1
  131. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +10 -13
  132. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
  133. package/lib/commonjs/ui/screens/FAQScreen.js +4 -4
  134. package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -1
  135. package/lib/commonjs/ui/screens/FeedbackScreen.js +17 -15
  136. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  137. package/lib/commonjs/ui/screens/FileManagementScreen.js +797 -159
  138. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  139. package/lib/commonjs/ui/screens/HelpSupportScreen.js +8 -9
  140. package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
  141. package/lib/commonjs/ui/screens/HistoryViewScreen.js +29 -21
  142. package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
  143. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +3 -5
  144. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
  145. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +5 -5
  146. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
  147. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +2 -2
  148. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +75 -73
  149. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  150. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +32 -21
  151. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  152. package/lib/commonjs/ui/screens/ProfileScreen.js +4 -3
  153. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  154. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +3 -3
  155. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  156. package/lib/commonjs/ui/screens/SessionManagementScreen.js +57 -56
  157. package/lib/commonjs/ui/screens/SessionManagementScreen.js.map +1 -1
  158. package/lib/commonjs/ui/screens/UserLinksScreen.js +2 -3
  159. package/lib/commonjs/ui/screens/UserLinksScreen.js.map +1 -1
  160. package/lib/commonjs/ui/screens/UserListScreen.js +39 -22
  161. package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
  162. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +18 -21
  163. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  164. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js +0 -3
  165. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js.map +1 -1
  166. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +6 -10
  167. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  168. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js +1 -1
  169. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js.map +1 -1
  170. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js +6 -6
  171. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
  172. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js +13 -19
  173. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js.map +1 -1
  174. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js +5 -5
  175. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
  176. package/lib/commonjs/ui/server.js +0 -5
  177. package/lib/commonjs/ui/server.js.map +1 -1
  178. package/lib/commonjs/ui/styles/authStyles.js +0 -5
  179. package/lib/commonjs/ui/styles/authStyles.js.map +1 -1
  180. package/lib/commonjs/ui/styles/index.js +0 -11
  181. package/lib/commonjs/ui/styles/index.js.map +1 -1
  182. package/lib/commonjs/ui/styles/spacing.js +1 -42
  183. package/lib/commonjs/ui/styles/spacing.js.map +1 -1
  184. package/lib/commonjs/ui/styles/theme.js +0 -4
  185. package/lib/commonjs/ui/styles/theme.js.map +1 -1
  186. package/lib/commonjs/ui/utils/fileManagement.js +58 -39
  187. package/lib/commonjs/ui/utils/fileManagement.js.map +1 -1
  188. package/lib/commonjs/ui/utils/sessionHelpers.js +3 -1
  189. package/lib/commonjs/ui/utils/sessionHelpers.js.map +1 -1
  190. package/lib/commonjs/ui/utils/userUtils.js +33 -16
  191. package/lib/commonjs/ui/utils/userUtils.js.map +1 -1
  192. package/lib/module/index.js +9 -5
  193. package/lib/module/index.js.map +1 -1
  194. package/lib/module/ui/client.js +0 -6
  195. package/lib/module/ui/client.js.map +1 -1
  196. package/lib/module/ui/components/ActingAsBanner.js +0 -4
  197. package/lib/module/ui/components/ActingAsBanner.js.map +1 -1
  198. package/lib/module/ui/components/ActivityIndicator.js +1 -1
  199. package/lib/module/ui/components/ActivityIndicator.js.map +1 -1
  200. package/lib/module/ui/components/Avatar.js +0 -2
  201. package/lib/module/ui/components/Avatar.js.map +1 -1
  202. package/lib/module/ui/components/BottomSheet.js +35 -400
  203. package/lib/module/ui/components/BottomSheet.js.map +1 -1
  204. package/lib/module/ui/components/BottomSheetRouter.js +9 -1
  205. package/lib/module/ui/components/BottomSheetRouter.js.map +1 -1
  206. package/lib/module/ui/components/FollowButton.js +2 -4
  207. package/lib/module/ui/components/FollowButton.js.map +1 -1
  208. package/lib/module/ui/components/Header.js +0 -5
  209. package/lib/module/ui/components/Header.js.map +1 -1
  210. package/lib/module/ui/components/Icon.js +6 -7
  211. package/lib/module/ui/components/Icon.js.map +1 -1
  212. package/lib/module/ui/components/IconButton/IconButton.js +1 -5
  213. package/lib/module/ui/components/IconButton/IconButton.js.map +1 -1
  214. package/lib/module/ui/components/OxyPayButton.js +0 -2
  215. package/lib/module/ui/components/OxyPayButton.js.map +1 -1
  216. package/lib/module/ui/components/OxyProvider.js +103 -40
  217. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  218. package/lib/module/ui/components/OxySignInButton.js +23 -9
  219. package/lib/module/ui/components/OxySignInButton.js.map +1 -1
  220. package/lib/module/ui/components/ProfileCard.js +11 -8
  221. package/lib/module/ui/components/ProfileCard.js.map +1 -1
  222. package/lib/module/ui/components/QuickActions.js +2 -2
  223. package/lib/module/ui/components/QuickActions.js.map +1 -1
  224. package/lib/module/ui/components/SignInModal.js +137 -284
  225. package/lib/module/ui/components/SignInModal.js.map +1 -1
  226. package/lib/module/ui/components/StepBasedScreen.js +0 -2
  227. package/lib/module/ui/components/StepBasedScreen.js.map +1 -1
  228. package/lib/module/ui/components/TextField.js +0 -1
  229. package/lib/module/ui/components/TextField.js.map +1 -1
  230. package/lib/module/ui/components/TouchableRipple/TouchableRipple.native.js +1 -1
  231. package/lib/module/ui/components/TouchableRipple/TouchableRipple.native.js.map +1 -1
  232. package/lib/module/ui/components/feedback/feedbackStyles.js +0 -2
  233. package/lib/module/ui/components/feedback/feedbackStyles.js.map +1 -1
  234. package/lib/module/ui/components/fileManagement/AnimatedButton.js +0 -1
  235. package/lib/module/ui/components/fileManagement/AnimatedButton.js.map +1 -1
  236. package/lib/module/ui/components/fileManagement/FileDetailsModal.js +80 -75
  237. package/lib/module/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  238. package/lib/module/ui/components/fileManagement/FileViewer.js +6 -7
  239. package/lib/module/ui/components/fileManagement/FileViewer.js.map +1 -1
  240. package/lib/module/ui/components/fileManagement/UploadPreview.js +18 -22
  241. package/lib/module/ui/components/fileManagement/UploadPreview.js.map +1 -1
  242. package/lib/module/ui/components/fileManagement/styles.js +212 -24
  243. package/lib/module/ui/components/fileManagement/styles.js.map +1 -1
  244. package/lib/module/ui/components/logo/LogoIcon.js +56 -0
  245. package/lib/module/ui/components/logo/LogoIcon.js.map +1 -0
  246. package/lib/module/ui/components/logo/LogoText.js +43 -0
  247. package/lib/module/ui/components/logo/LogoText.js.map +1 -0
  248. package/lib/module/ui/components/modals/DeleteAccountModal.js +55 -88
  249. package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -1
  250. package/lib/module/ui/components/payment/PaymentDetailsStep.js +1 -1
  251. package/lib/module/ui/components/payment/PaymentDetailsStep.js.map +1 -1
  252. package/lib/module/ui/components/payment/PaymentReviewStep.js +1 -1
  253. package/lib/module/ui/components/payment/PaymentReviewStep.js.map +1 -1
  254. package/lib/module/ui/components/payment/PaymentSuccessStep.js +1 -1
  255. package/lib/module/ui/components/payment/PaymentSuccessStep.js.map +1 -1
  256. package/lib/module/ui/components/payment/paymentStyles.js +2 -10
  257. package/lib/module/ui/components/payment/paymentStyles.js.map +1 -1
  258. package/lib/module/ui/components/styles/overlay.js +8 -8
  259. package/lib/module/ui/components/styles/overlay.js.map +1 -1
  260. package/lib/module/ui/components/theming.js +0 -1
  261. package/lib/module/ui/components/theming.js.map +1 -1
  262. package/lib/module/ui/context/OxyContext.js +32 -19
  263. package/lib/module/ui/context/OxyContext.js.map +1 -1
  264. package/lib/module/ui/context/hooks/useAuthOperations.js +1 -3
  265. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
  266. package/lib/module/ui/hooks/index.js +5 -3
  267. package/lib/module/ui/hooks/index.js.map +1 -1
  268. package/lib/module/ui/hooks/mutations/mutationFactory.js +6 -1
  269. package/lib/module/ui/hooks/mutations/mutationFactory.js.map +1 -1
  270. package/lib/module/ui/hooks/mutations/mutationKeys.js +30 -0
  271. package/lib/module/ui/hooks/mutations/mutationKeys.js.map +1 -0
  272. package/lib/module/ui/hooks/mutations/useAccountMutations.js +231 -52
  273. package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  274. package/lib/module/ui/hooks/mutations/useServicesMutations.js +9 -5
  275. package/lib/module/ui/hooks/mutations/useServicesMutations.js.map +1 -1
  276. package/lib/module/ui/hooks/queries/index.js +1 -1
  277. package/lib/module/ui/hooks/queries/index.js.map +1 -1
  278. package/lib/module/ui/hooks/queries/queryKeys.js +2 -1
  279. package/lib/module/ui/hooks/queries/queryKeys.js.map +1 -1
  280. package/lib/module/ui/hooks/queries/useAccountQueries.js +80 -3
  281. package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
  282. package/lib/module/ui/hooks/queries/useSecurityQueries.js +35 -1
  283. package/lib/module/ui/hooks/queries/useSecurityQueries.js.map +1 -1
  284. package/lib/module/ui/hooks/queryClient.js +166 -68
  285. package/lib/module/ui/hooks/queryClient.js.map +1 -1
  286. package/lib/module/ui/hooks/useAsyncAction.js +3 -3
  287. package/lib/module/ui/hooks/useAsyncAction.js.map +1 -1
  288. package/lib/module/ui/hooks/useAuth.js +0 -3
  289. package/lib/module/ui/hooks/useAuth.js.map +1 -1
  290. package/lib/module/ui/hooks/useAvatarPicker.js +73 -22
  291. package/lib/module/ui/hooks/useAvatarPicker.js.map +1 -1
  292. package/lib/module/ui/hooks/useFileDownloadUrl.js +11 -39
  293. package/lib/module/ui/hooks/useFileDownloadUrl.js.map +1 -1
  294. package/lib/module/ui/hooks/useMutationStatus.js +82 -0
  295. package/lib/module/ui/hooks/useMutationStatus.js.map +1 -0
  296. package/lib/module/ui/hooks/useOnlineStatus.js +29 -0
  297. package/lib/module/ui/hooks/useOnlineStatus.js.map +1 -0
  298. package/lib/module/ui/hooks/useSessionSocket.js +101 -130
  299. package/lib/module/ui/hooks/useSessionSocket.js.map +1 -1
  300. package/lib/module/ui/hooks/useSettingToggle.js +1 -1
  301. package/lib/module/ui/hooks/useSettingToggle.js.map +1 -1
  302. package/lib/module/ui/index.js +1 -10
  303. package/lib/module/ui/index.js.map +1 -1
  304. package/lib/module/ui/navigation/routes.js +54 -2
  305. package/lib/module/ui/navigation/routes.js.map +1 -1
  306. package/lib/module/ui/screens/AccountCenterScreen.js +15 -14
  307. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  308. package/lib/module/ui/screens/AccountOverviewScreen.js +96 -111
  309. package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -1
  310. package/lib/module/ui/screens/AccountSettingsScreen.js +19 -18
  311. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  312. package/lib/module/ui/screens/AccountSwitcherScreen.js +189 -145
  313. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
  314. package/lib/module/ui/screens/AccountVerificationScreen.js +15 -15
  315. package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
  316. package/lib/module/ui/screens/AppInfoScreen.js +14 -15
  317. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
  318. package/lib/module/ui/screens/AvatarCropScreen.js +936 -0
  319. package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -0
  320. package/lib/module/ui/screens/CreateManagedAccountScreen.js +11 -18
  321. package/lib/module/ui/screens/CreateManagedAccountScreen.js.map +1 -1
  322. package/lib/module/ui/screens/EditProfileFieldScreen.js +8 -11
  323. package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
  324. package/lib/module/ui/screens/FAQScreen.js +3 -3
  325. package/lib/module/ui/screens/FAQScreen.js.map +1 -1
  326. package/lib/module/ui/screens/FeedbackScreen.js +14 -12
  327. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  328. package/lib/module/ui/screens/FileManagementScreen.js +764 -125
  329. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  330. package/lib/module/ui/screens/HelpSupportScreen.js +2 -3
  331. package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
  332. package/lib/module/ui/screens/HistoryViewScreen.js +26 -17
  333. package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
  334. package/lib/module/ui/screens/LanguageSelectorScreen.js +1 -3
  335. package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
  336. package/lib/module/ui/screens/LegalDocumentsScreen.js +3 -3
  337. package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
  338. package/lib/module/ui/screens/PaymentGatewayScreen.js +2 -2
  339. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +60 -57
  340. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  341. package/lib/module/ui/screens/PrivacySettingsScreen.js +27 -16
  342. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  343. package/lib/module/ui/screens/ProfileScreen.js +4 -3
  344. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  345. package/lib/module/ui/screens/SavesCollectionsScreen.js +2 -2
  346. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  347. package/lib/module/ui/screens/SessionManagementScreen.js +48 -47
  348. package/lib/module/ui/screens/SessionManagementScreen.js.map +1 -1
  349. package/lib/module/ui/screens/UserLinksScreen.js +2 -3
  350. package/lib/module/ui/screens/UserLinksScreen.js.map +1 -1
  351. package/lib/module/ui/screens/UserListScreen.js +40 -23
  352. package/lib/module/ui/screens/UserListScreen.js.map +1 -1
  353. package/lib/module/ui/screens/WelcomeNewUserScreen.js +16 -19
  354. package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  355. package/lib/module/ui/screens/karma/KarmaAboutScreen.js +0 -3
  356. package/lib/module/ui/screens/karma/KarmaAboutScreen.js.map +1 -1
  357. package/lib/module/ui/screens/karma/KarmaCenterScreen.js +6 -10
  358. package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  359. package/lib/module/ui/screens/karma/KarmaFAQScreen.js +1 -1
  360. package/lib/module/ui/screens/karma/KarmaFAQScreen.js.map +1 -1
  361. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js +6 -6
  362. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
  363. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js +13 -19
  364. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js.map +1 -1
  365. package/lib/module/ui/screens/karma/KarmaRulesScreen.js +5 -5
  366. package/lib/module/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
  367. package/lib/module/ui/server.js +0 -4
  368. package/lib/module/ui/server.js.map +1 -1
  369. package/lib/module/ui/styles/authStyles.js +0 -5
  370. package/lib/module/ui/styles/authStyles.js.map +1 -1
  371. package/lib/module/ui/styles/index.js +0 -1
  372. package/lib/module/ui/styles/index.js.map +1 -1
  373. package/lib/module/ui/styles/spacing.js +0 -42
  374. package/lib/module/ui/styles/spacing.js.map +1 -1
  375. package/lib/module/ui/styles/theme.js +0 -4
  376. package/lib/module/ui/styles/theme.js.map +1 -1
  377. package/lib/module/ui/utils/fileManagement.js +54 -36
  378. package/lib/module/ui/utils/fileManagement.js.map +1 -1
  379. package/lib/module/ui/utils/sessionHelpers.js +3 -1
  380. package/lib/module/ui/utils/sessionHelpers.js.map +1 -1
  381. package/lib/module/ui/utils/userUtils.js +34 -16
  382. package/lib/module/ui/utils/userUtils.js.map +1 -1
  383. package/lib/typescript/commonjs/index.d.ts +7 -3
  384. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  385. package/lib/typescript/commonjs/ui/client.d.ts +0 -2
  386. package/lib/typescript/commonjs/ui/client.d.ts.map +1 -1
  387. package/lib/typescript/commonjs/ui/components/ActingAsBanner.d.ts.map +1 -1
  388. package/lib/typescript/commonjs/ui/components/Avatar.d.ts.map +1 -1
  389. package/lib/typescript/commonjs/ui/components/BottomSheet.d.ts +27 -27
  390. package/lib/typescript/commonjs/ui/components/BottomSheet.d.ts.map +1 -1
  391. package/lib/typescript/commonjs/ui/components/BottomSheetRouter.d.ts.map +1 -1
  392. package/lib/typescript/commonjs/ui/components/FollowButton.d.ts.map +1 -1
  393. package/lib/typescript/commonjs/ui/components/Header.d.ts.map +1 -1
  394. package/lib/typescript/commonjs/ui/components/Icon.d.ts +3 -2
  395. package/lib/typescript/commonjs/ui/components/Icon.d.ts.map +1 -1
  396. package/lib/typescript/commonjs/ui/components/IconButton/IconButton.d.ts.map +1 -1
  397. package/lib/typescript/commonjs/ui/components/OxyPayButton.d.ts.map +1 -1
  398. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
  399. package/lib/typescript/commonjs/ui/components/OxySignInButton.d.ts.map +1 -1
  400. package/lib/typescript/commonjs/ui/components/ProfileCard.d.ts +4 -1
  401. package/lib/typescript/commonjs/ui/components/ProfileCard.d.ts.map +1 -1
  402. package/lib/typescript/commonjs/ui/components/SignInModal.d.ts.map +1 -1
  403. package/lib/typescript/commonjs/ui/components/StepBasedScreen.d.ts.map +1 -1
  404. package/lib/typescript/commonjs/ui/components/TextField/Addons/Outline.d.ts +2 -2
  405. package/lib/typescript/commonjs/ui/components/TextField/helpers.d.ts +2 -2
  406. package/lib/typescript/commonjs/ui/components/TextField/types.d.ts +0 -1
  407. package/lib/typescript/commonjs/ui/components/TextField/types.d.ts.map +1 -1
  408. package/lib/typescript/commonjs/ui/components/TextField.d.ts +1 -1
  409. package/lib/typescript/commonjs/ui/components/TextField.d.ts.map +1 -1
  410. package/lib/typescript/commonjs/ui/components/feedback/feedbackStyles.d.ts +0 -1
  411. package/lib/typescript/commonjs/ui/components/feedback/feedbackStyles.d.ts.map +1 -1
  412. package/lib/typescript/commonjs/ui/components/fileManagement/AnimatedButton.d.ts.map +1 -1
  413. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts +1 -1
  414. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  415. package/lib/typescript/commonjs/ui/components/fileManagement/FileViewer.d.ts +0 -2
  416. package/lib/typescript/commonjs/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
  417. package/lib/typescript/commonjs/ui/components/fileManagement/UploadPreview.d.ts +3 -2
  418. package/lib/typescript/commonjs/ui/components/fileManagement/UploadPreview.d.ts.map +1 -1
  419. package/lib/typescript/commonjs/ui/components/fileManagement/styles.d.ts +200 -17
  420. package/lib/typescript/commonjs/ui/components/fileManagement/styles.d.ts.map +1 -1
  421. package/lib/typescript/commonjs/ui/components/logo/LogoIcon.d.ts +22 -0
  422. package/lib/typescript/commonjs/ui/components/logo/LogoIcon.d.ts.map +1 -0
  423. package/lib/typescript/commonjs/ui/components/logo/LogoText.d.ts +22 -0
  424. package/lib/typescript/commonjs/ui/components/logo/LogoText.d.ts.map +1 -0
  425. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts +2 -2
  426. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  427. package/lib/typescript/commonjs/ui/components/payment/paymentStyles.d.ts +0 -7
  428. package/lib/typescript/commonjs/ui/components/payment/paymentStyles.d.ts.map +1 -1
  429. package/lib/typescript/commonjs/ui/components/styles/overlay.d.ts +3 -1
  430. package/lib/typescript/commonjs/ui/components/styles/overlay.d.ts.map +1 -1
  431. package/lib/typescript/commonjs/ui/components/theming.d.ts.map +1 -1
  432. package/lib/typescript/commonjs/ui/components/types.d.ts.map +1 -1
  433. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  434. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  435. package/lib/typescript/commonjs/ui/hooks/index.d.ts +5 -3
  436. package/lib/typescript/commonjs/ui/hooks/index.d.ts.map +1 -1
  437. package/lib/typescript/commonjs/ui/hooks/mutations/mutationFactory.d.ts +11 -0
  438. package/lib/typescript/commonjs/ui/hooks/mutations/mutationFactory.d.ts.map +1 -1
  439. package/lib/typescript/commonjs/ui/hooks/mutations/mutationKeys.d.ts +25 -0
  440. package/lib/typescript/commonjs/ui/hooks/mutations/mutationKeys.d.ts.map +1 -0
  441. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +161 -9
  442. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  443. package/lib/typescript/commonjs/ui/hooks/mutations/useServicesMutations.d.ts.map +1 -1
  444. package/lib/typescript/commonjs/ui/hooks/queries/index.d.ts +1 -1
  445. package/lib/typescript/commonjs/ui/hooks/queries/index.d.ts.map +1 -1
  446. package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts +1 -0
  447. package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts.map +1 -1
  448. package/lib/typescript/commonjs/ui/hooks/queries/useAccountQueries.d.ts +22 -8
  449. package/lib/typescript/commonjs/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
  450. package/lib/typescript/commonjs/ui/hooks/queries/useSecurityQueries.d.ts +13 -3
  451. package/lib/typescript/commonjs/ui/hooks/queries/useSecurityQueries.d.ts.map +1 -1
  452. package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts +7 -5
  453. package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  454. package/lib/typescript/commonjs/ui/hooks/queryClient.d.ts +57 -9
  455. package/lib/typescript/commonjs/ui/hooks/queryClient.d.ts.map +1 -1
  456. package/lib/typescript/commonjs/ui/hooks/useAssets.d.ts +1 -1
  457. package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts +0 -1
  458. package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts.map +1 -1
  459. package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts +10 -2
  460. package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts.map +1 -1
  461. package/lib/typescript/commonjs/ui/hooks/useFileDownloadUrl.d.ts +2 -6
  462. package/lib/typescript/commonjs/ui/hooks/useFileDownloadUrl.d.ts.map +1 -1
  463. package/lib/typescript/commonjs/ui/hooks/useMutationStatus.d.ts +23 -0
  464. package/lib/typescript/commonjs/ui/hooks/useMutationStatus.d.ts.map +1 -0
  465. package/lib/typescript/commonjs/ui/hooks/useOnlineStatus.d.ts +13 -0
  466. package/lib/typescript/commonjs/ui/hooks/useOnlineStatus.d.ts.map +1 -0
  467. package/lib/typescript/commonjs/ui/hooks/useSessionSocket.d.ts +1 -2
  468. package/lib/typescript/commonjs/ui/hooks/useSessionSocket.d.ts.map +1 -1
  469. package/lib/typescript/commonjs/ui/index.d.ts +1 -4
  470. package/lib/typescript/commonjs/ui/index.d.ts.map +1 -1
  471. package/lib/typescript/commonjs/ui/navigation/routes.d.ts +48 -2
  472. package/lib/typescript/commonjs/ui/navigation/routes.d.ts.map +1 -1
  473. package/lib/typescript/commonjs/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  474. package/lib/typescript/commonjs/ui/screens/AccountOverviewScreen.d.ts.map +1 -1
  475. package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  476. package/lib/typescript/commonjs/ui/screens/AccountSwitcherScreen.d.ts.map +1 -1
  477. package/lib/typescript/commonjs/ui/screens/AppInfoScreen.d.ts.map +1 -1
  478. package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts +49 -0
  479. package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts.map +1 -0
  480. package/lib/typescript/commonjs/ui/screens/CreateManagedAccountScreen.d.ts.map +1 -1
  481. package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  482. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
  483. package/lib/typescript/commonjs/ui/screens/FileManagementScreen.d.ts.map +1 -1
  484. package/lib/typescript/commonjs/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  485. package/lib/typescript/commonjs/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  486. package/lib/typescript/commonjs/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  487. package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  488. package/lib/typescript/commonjs/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  489. package/lib/typescript/commonjs/ui/screens/ProfileScreen.d.ts.map +1 -1
  490. package/lib/typescript/commonjs/ui/screens/SessionManagementScreen.d.ts.map +1 -1
  491. package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts.map +1 -1
  492. package/lib/typescript/commonjs/ui/screens/UserListScreen.d.ts.map +1 -1
  493. package/lib/typescript/commonjs/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  494. package/lib/typescript/commonjs/ui/screens/karma/KarmaAboutScreen.d.ts.map +1 -1
  495. package/lib/typescript/commonjs/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -1
  496. package/lib/typescript/commonjs/ui/screens/karma/KarmaLeaderboardScreen.d.ts.map +1 -1
  497. package/lib/typescript/commonjs/ui/screens/karma/KarmaRewardsScreen.d.ts.map +1 -1
  498. package/lib/typescript/commonjs/ui/screens/karma/KarmaRulesScreen.d.ts.map +1 -1
  499. package/lib/typescript/commonjs/ui/server.d.ts +0 -2
  500. package/lib/typescript/commonjs/ui/server.d.ts.map +1 -1
  501. package/lib/typescript/commonjs/ui/styles/authStyles.d.ts +0 -4
  502. package/lib/typescript/commonjs/ui/styles/authStyles.d.ts.map +1 -1
  503. package/lib/typescript/commonjs/ui/styles/index.d.ts +0 -1
  504. package/lib/typescript/commonjs/ui/styles/index.d.ts.map +1 -1
  505. package/lib/typescript/commonjs/ui/styles/spacing.d.ts +0 -36
  506. package/lib/typescript/commonjs/ui/styles/spacing.d.ts.map +1 -1
  507. package/lib/typescript/commonjs/ui/styles/theme.d.ts +0 -1
  508. package/lib/typescript/commonjs/ui/styles/theme.d.ts.map +1 -1
  509. package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts +39 -12
  510. package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts.map +1 -1
  511. package/lib/typescript/commonjs/ui/utils/sessionHelpers.d.ts +3 -1
  512. package/lib/typescript/commonjs/ui/utils/sessionHelpers.d.ts.map +1 -1
  513. package/lib/typescript/commonjs/ui/utils/userUtils.d.ts +19 -18
  514. package/lib/typescript/commonjs/ui/utils/userUtils.d.ts.map +1 -1
  515. package/lib/typescript/module/index.d.ts +7 -3
  516. package/lib/typescript/module/index.d.ts.map +1 -1
  517. package/lib/typescript/module/ui/client.d.ts +0 -2
  518. package/lib/typescript/module/ui/client.d.ts.map +1 -1
  519. package/lib/typescript/module/ui/components/ActingAsBanner.d.ts.map +1 -1
  520. package/lib/typescript/module/ui/components/Avatar.d.ts.map +1 -1
  521. package/lib/typescript/module/ui/components/BottomSheet.d.ts +27 -27
  522. package/lib/typescript/module/ui/components/BottomSheet.d.ts.map +1 -1
  523. package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts.map +1 -1
  524. package/lib/typescript/module/ui/components/FollowButton.d.ts.map +1 -1
  525. package/lib/typescript/module/ui/components/Header.d.ts.map +1 -1
  526. package/lib/typescript/module/ui/components/Icon.d.ts +3 -2
  527. package/lib/typescript/module/ui/components/Icon.d.ts.map +1 -1
  528. package/lib/typescript/module/ui/components/IconButton/IconButton.d.ts.map +1 -1
  529. package/lib/typescript/module/ui/components/OxyPayButton.d.ts.map +1 -1
  530. package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
  531. package/lib/typescript/module/ui/components/OxySignInButton.d.ts.map +1 -1
  532. package/lib/typescript/module/ui/components/ProfileCard.d.ts +4 -1
  533. package/lib/typescript/module/ui/components/ProfileCard.d.ts.map +1 -1
  534. package/lib/typescript/module/ui/components/SignInModal.d.ts.map +1 -1
  535. package/lib/typescript/module/ui/components/StepBasedScreen.d.ts.map +1 -1
  536. package/lib/typescript/module/ui/components/TextField/Addons/Outline.d.ts +2 -2
  537. package/lib/typescript/module/ui/components/TextField/helpers.d.ts +2 -2
  538. package/lib/typescript/module/ui/components/TextField/types.d.ts +0 -1
  539. package/lib/typescript/module/ui/components/TextField/types.d.ts.map +1 -1
  540. package/lib/typescript/module/ui/components/TextField.d.ts +1 -1
  541. package/lib/typescript/module/ui/components/TextField.d.ts.map +1 -1
  542. package/lib/typescript/module/ui/components/feedback/feedbackStyles.d.ts +0 -1
  543. package/lib/typescript/module/ui/components/feedback/feedbackStyles.d.ts.map +1 -1
  544. package/lib/typescript/module/ui/components/fileManagement/AnimatedButton.d.ts.map +1 -1
  545. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts +1 -1
  546. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  547. package/lib/typescript/module/ui/components/fileManagement/FileViewer.d.ts +0 -2
  548. package/lib/typescript/module/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
  549. package/lib/typescript/module/ui/components/fileManagement/UploadPreview.d.ts +3 -2
  550. package/lib/typescript/module/ui/components/fileManagement/UploadPreview.d.ts.map +1 -1
  551. package/lib/typescript/module/ui/components/fileManagement/styles.d.ts +200 -17
  552. package/lib/typescript/module/ui/components/fileManagement/styles.d.ts.map +1 -1
  553. package/lib/typescript/module/ui/components/logo/LogoIcon.d.ts +22 -0
  554. package/lib/typescript/module/ui/components/logo/LogoIcon.d.ts.map +1 -0
  555. package/lib/typescript/module/ui/components/logo/LogoText.d.ts +22 -0
  556. package/lib/typescript/module/ui/components/logo/LogoText.d.ts.map +1 -0
  557. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts +2 -2
  558. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  559. package/lib/typescript/module/ui/components/payment/paymentStyles.d.ts +0 -7
  560. package/lib/typescript/module/ui/components/payment/paymentStyles.d.ts.map +1 -1
  561. package/lib/typescript/module/ui/components/styles/overlay.d.ts +3 -1
  562. package/lib/typescript/module/ui/components/styles/overlay.d.ts.map +1 -1
  563. package/lib/typescript/module/ui/components/theming.d.ts.map +1 -1
  564. package/lib/typescript/module/ui/components/types.d.ts.map +1 -1
  565. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  566. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  567. package/lib/typescript/module/ui/hooks/index.d.ts +5 -3
  568. package/lib/typescript/module/ui/hooks/index.d.ts.map +1 -1
  569. package/lib/typescript/module/ui/hooks/mutations/mutationFactory.d.ts +11 -0
  570. package/lib/typescript/module/ui/hooks/mutations/mutationFactory.d.ts.map +1 -1
  571. package/lib/typescript/module/ui/hooks/mutations/mutationKeys.d.ts +25 -0
  572. package/lib/typescript/module/ui/hooks/mutations/mutationKeys.d.ts.map +1 -0
  573. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +161 -9
  574. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  575. package/lib/typescript/module/ui/hooks/mutations/useServicesMutations.d.ts.map +1 -1
  576. package/lib/typescript/module/ui/hooks/queries/index.d.ts +1 -1
  577. package/lib/typescript/module/ui/hooks/queries/index.d.ts.map +1 -1
  578. package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts +1 -0
  579. package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts.map +1 -1
  580. package/lib/typescript/module/ui/hooks/queries/useAccountQueries.d.ts +22 -8
  581. package/lib/typescript/module/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
  582. package/lib/typescript/module/ui/hooks/queries/useSecurityQueries.d.ts +13 -3
  583. package/lib/typescript/module/ui/hooks/queries/useSecurityQueries.d.ts.map +1 -1
  584. package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts +7 -5
  585. package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  586. package/lib/typescript/module/ui/hooks/queryClient.d.ts +57 -9
  587. package/lib/typescript/module/ui/hooks/queryClient.d.ts.map +1 -1
  588. package/lib/typescript/module/ui/hooks/useAssets.d.ts +1 -1
  589. package/lib/typescript/module/ui/hooks/useAuth.d.ts +0 -1
  590. package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
  591. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts +10 -2
  592. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts.map +1 -1
  593. package/lib/typescript/module/ui/hooks/useFileDownloadUrl.d.ts +2 -6
  594. package/lib/typescript/module/ui/hooks/useFileDownloadUrl.d.ts.map +1 -1
  595. package/lib/typescript/module/ui/hooks/useMutationStatus.d.ts +23 -0
  596. package/lib/typescript/module/ui/hooks/useMutationStatus.d.ts.map +1 -0
  597. package/lib/typescript/module/ui/hooks/useOnlineStatus.d.ts +13 -0
  598. package/lib/typescript/module/ui/hooks/useOnlineStatus.d.ts.map +1 -0
  599. package/lib/typescript/module/ui/hooks/useSessionSocket.d.ts +1 -2
  600. package/lib/typescript/module/ui/hooks/useSessionSocket.d.ts.map +1 -1
  601. package/lib/typescript/module/ui/index.d.ts +1 -4
  602. package/lib/typescript/module/ui/index.d.ts.map +1 -1
  603. package/lib/typescript/module/ui/navigation/routes.d.ts +48 -2
  604. package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
  605. package/lib/typescript/module/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  606. package/lib/typescript/module/ui/screens/AccountOverviewScreen.d.ts.map +1 -1
  607. package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  608. package/lib/typescript/module/ui/screens/AccountSwitcherScreen.d.ts.map +1 -1
  609. package/lib/typescript/module/ui/screens/AppInfoScreen.d.ts.map +1 -1
  610. package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts +49 -0
  611. package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts.map +1 -0
  612. package/lib/typescript/module/ui/screens/CreateManagedAccountScreen.d.ts.map +1 -1
  613. package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  614. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
  615. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
  616. package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  617. package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  618. package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  619. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  620. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  621. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
  622. package/lib/typescript/module/ui/screens/SessionManagementScreen.d.ts.map +1 -1
  623. package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +1 -1
  624. package/lib/typescript/module/ui/screens/UserListScreen.d.ts.map +1 -1
  625. package/lib/typescript/module/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  626. package/lib/typescript/module/ui/screens/karma/KarmaAboutScreen.d.ts.map +1 -1
  627. package/lib/typescript/module/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -1
  628. package/lib/typescript/module/ui/screens/karma/KarmaLeaderboardScreen.d.ts.map +1 -1
  629. package/lib/typescript/module/ui/screens/karma/KarmaRewardsScreen.d.ts.map +1 -1
  630. package/lib/typescript/module/ui/screens/karma/KarmaRulesScreen.d.ts.map +1 -1
  631. package/lib/typescript/module/ui/server.d.ts +0 -2
  632. package/lib/typescript/module/ui/server.d.ts.map +1 -1
  633. package/lib/typescript/module/ui/styles/authStyles.d.ts +0 -4
  634. package/lib/typescript/module/ui/styles/authStyles.d.ts.map +1 -1
  635. package/lib/typescript/module/ui/styles/index.d.ts +0 -1
  636. package/lib/typescript/module/ui/styles/index.d.ts.map +1 -1
  637. package/lib/typescript/module/ui/styles/spacing.d.ts +0 -36
  638. package/lib/typescript/module/ui/styles/spacing.d.ts.map +1 -1
  639. package/lib/typescript/module/ui/styles/theme.d.ts +0 -1
  640. package/lib/typescript/module/ui/styles/theme.d.ts.map +1 -1
  641. package/lib/typescript/module/ui/utils/fileManagement.d.ts +39 -12
  642. package/lib/typescript/module/ui/utils/fileManagement.d.ts.map +1 -1
  643. package/lib/typescript/module/ui/utils/sessionHelpers.d.ts +3 -1
  644. package/lib/typescript/module/ui/utils/sessionHelpers.d.ts.map +1 -1
  645. package/lib/typescript/module/ui/utils/userUtils.d.ts +19 -18
  646. package/lib/typescript/module/ui/utils/userUtils.d.ts.map +1 -1
  647. package/lib/typescript/types/expo-vector-icons.d.ts +7 -4
  648. package/package.json +64 -31
  649. package/src/index.ts +11 -4
  650. package/src/types/expo-vector-icons.d.ts +7 -4
  651. package/src/ui/client.ts +0 -6
  652. package/src/ui/components/ActingAsBanner.tsx +0 -4
  653. package/src/ui/components/ActivityIndicator.tsx +1 -1
  654. package/src/ui/components/Avatar.tsx +0 -2
  655. package/src/ui/components/BottomSheet.tsx +41 -440
  656. package/src/ui/components/BottomSheetRouter.tsx +12 -1
  657. package/src/ui/components/FollowButton.tsx +2 -4
  658. package/src/ui/components/Header.tsx +0 -5
  659. package/src/ui/components/Icon.tsx +12 -6
  660. package/src/ui/components/IconButton/IconButton.tsx +0 -3
  661. package/src/ui/components/OxyPayButton.tsx +0 -2
  662. package/src/ui/components/OxyProvider.tsx +127 -48
  663. package/src/ui/components/OxySignInButton.tsx +21 -9
  664. package/src/ui/components/ProfileCard.tsx +13 -10
  665. package/src/ui/components/QuickActions.tsx +2 -2
  666. package/src/ui/components/SignInModal.tsx +80 -199
  667. package/src/ui/components/StepBasedScreen.tsx +0 -2
  668. package/src/ui/components/TextField/Addons/Outline.tsx +2 -2
  669. package/src/ui/components/TextField/helpers.tsx +2 -2
  670. package/src/ui/components/TextField/types.tsx +0 -1
  671. package/src/ui/components/TextField.tsx +1 -2
  672. package/src/ui/components/TouchableRipple/TouchableRipple.native.tsx +1 -1
  673. package/src/ui/components/feedback/feedbackStyles.ts +0 -2
  674. package/src/ui/components/fileManagement/AnimatedButton.tsx +0 -1
  675. package/src/ui/components/fileManagement/FileDetailsModal.tsx +71 -65
  676. package/src/ui/components/fileManagement/FileViewer.tsx +6 -9
  677. package/src/ui/components/fileManagement/UploadPreview.tsx +21 -25
  678. package/src/ui/components/fileManagement/styles.ts +206 -18
  679. package/src/ui/components/logo/LogoIcon.tsx +70 -0
  680. package/src/ui/components/logo/LogoText.tsx +70 -0
  681. package/src/ui/components/modals/DeleteAccountModal.tsx +56 -91
  682. package/src/ui/components/payment/PaymentDetailsStep.tsx +1 -1
  683. package/src/ui/components/payment/PaymentReviewStep.tsx +1 -1
  684. package/src/ui/components/payment/PaymentSuccessStep.tsx +1 -1
  685. package/src/ui/components/payment/paymentStyles.ts +0 -8
  686. package/src/ui/components/styles/overlay.tsx +17 -8
  687. package/src/ui/components/theming.tsx +0 -1
  688. package/src/ui/components/types.tsx +3 -2
  689. package/src/ui/context/OxyContext.tsx +34 -19
  690. package/src/ui/context/hooks/useAuthOperations.ts +1 -3
  691. package/src/ui/hooks/index.ts +11 -4
  692. package/src/ui/hooks/mutations/mutationFactory.ts +16 -1
  693. package/src/ui/hooks/mutations/mutationKeys.ts +28 -0
  694. package/src/ui/hooks/mutations/useAccountMutations.ts +251 -59
  695. package/src/ui/hooks/mutations/useServicesMutations.ts +10 -4
  696. package/src/ui/hooks/queries/index.ts +1 -0
  697. package/src/ui/hooks/queries/queryKeys.ts +2 -0
  698. package/src/ui/hooks/queries/useAccountQueries.ts +83 -3
  699. package/src/ui/hooks/queries/useSecurityQueries.ts +42 -2
  700. package/src/ui/hooks/queryClient.ts +194 -69
  701. package/src/ui/hooks/useAsyncAction.ts +3 -3
  702. package/src/ui/hooks/useAuth.ts +0 -2
  703. package/src/ui/hooks/useAvatarPicker.ts +108 -27
  704. package/src/ui/hooks/useFileDownloadUrl.ts +15 -39
  705. package/src/ui/hooks/useMutationStatus.ts +111 -0
  706. package/src/ui/hooks/useOnlineStatus.ts +29 -0
  707. package/src/ui/hooks/useSessionSocket.ts +136 -126
  708. package/src/ui/hooks/useSettingToggle.ts +1 -1
  709. package/src/ui/index.ts +0 -12
  710. package/src/ui/navigation/routes.ts +93 -2
  711. package/src/ui/screens/AccountCenterScreen.tsx +15 -13
  712. package/src/ui/screens/AccountOverviewScreen.tsx +94 -104
  713. package/src/ui/screens/AccountSettingsScreen.tsx +18 -17
  714. package/src/ui/screens/AccountSwitcherScreen.tsx +331 -298
  715. package/src/ui/screens/AccountVerificationScreen.tsx +15 -15
  716. package/src/ui/screens/AppInfoScreen.tsx +8 -13
  717. package/src/ui/screens/AvatarCropScreen.tsx +1073 -0
  718. package/src/ui/screens/CreateManagedAccountScreen.tsx +5 -16
  719. package/src/ui/screens/EditProfileFieldScreen.tsx +5 -10
  720. package/src/ui/screens/FAQScreen.tsx +3 -3
  721. package/src/ui/screens/FeedbackScreen.tsx +14 -12
  722. package/src/ui/screens/FileManagementScreen.tsx +885 -124
  723. package/src/ui/screens/HelpSupportScreen.tsx +2 -3
  724. package/src/ui/screens/HistoryViewScreen.tsx +24 -9
  725. package/src/ui/screens/LanguageSelectorScreen.tsx +1 -3
  726. package/src/ui/screens/LegalDocumentsScreen.tsx +3 -3
  727. package/src/ui/screens/PaymentGatewayScreen.tsx +2 -2
  728. package/src/ui/screens/PremiumSubscriptionScreen.tsx +51 -56
  729. package/src/ui/screens/PrivacySettingsScreen.tsx +22 -20
  730. package/src/ui/screens/ProfileScreen.tsx +1 -2
  731. package/src/ui/screens/SavesCollectionsScreen.tsx +2 -2
  732. package/src/ui/screens/SessionManagementScreen.tsx +35 -47
  733. package/src/ui/screens/UserLinksScreen.tsx +1 -2
  734. package/src/ui/screens/UserListScreen.tsx +30 -19
  735. package/src/ui/screens/WelcomeNewUserScreen.tsx +14 -18
  736. package/src/ui/screens/karma/KarmaAboutScreen.tsx +0 -3
  737. package/src/ui/screens/karma/KarmaCenterScreen.tsx +4 -8
  738. package/src/ui/screens/karma/KarmaFAQScreen.tsx +1 -1
  739. package/src/ui/screens/karma/KarmaLeaderboardScreen.tsx +3 -4
  740. package/src/ui/screens/karma/KarmaRewardsScreen.tsx +13 -18
  741. package/src/ui/screens/karma/KarmaRulesScreen.tsx +3 -4
  742. package/src/ui/server.ts +0 -4
  743. package/src/ui/styles/authStyles.ts +0 -5
  744. package/src/ui/styles/index.ts +0 -1
  745. package/src/ui/styles/spacing.ts +0 -43
  746. package/src/ui/styles/theme.ts +0 -4
  747. package/src/ui/utils/fileManagement.ts +66 -38
  748. package/src/ui/utils/sessionHelpers.ts +3 -1
  749. package/src/ui/utils/userUtils.ts +45 -29
  750. package/lib/commonjs/lib/sonner-safe.js +0 -32
  751. package/lib/commonjs/lib/sonner-safe.js.map +0 -1
  752. package/lib/commonjs/lib/sonner.js +0 -19
  753. package/lib/commonjs/lib/sonner.js.map +0 -1
  754. package/lib/commonjs/lib/sonner.native.js +0 -24
  755. package/lib/commonjs/lib/sonner.native.js.map +0 -1
  756. package/lib/commonjs/lib/sonner.web.js +0 -24
  757. package/lib/commonjs/lib/sonner.web.js.map +0 -1
  758. package/lib/commonjs/ui/hooks/useThemeColors.js +0 -33
  759. package/lib/commonjs/ui/hooks/useThemeColors.js.map +0 -1
  760. package/lib/commonjs/ui/hooks/useThemeStyles.js +0 -38
  761. package/lib/commonjs/ui/hooks/useThemeStyles.js.map +0 -1
  762. package/lib/commonjs/ui/styles/fonts.js +0 -84
  763. package/lib/commonjs/ui/styles/fonts.js.map +0 -1
  764. package/lib/module/lib/sonner-safe.js +0 -29
  765. package/lib/module/lib/sonner-safe.js.map +0 -1
  766. package/lib/module/lib/sonner.js +0 -14
  767. package/lib/module/lib/sonner.js.map +0 -1
  768. package/lib/module/lib/sonner.native.js +0 -19
  769. package/lib/module/lib/sonner.native.js.map +0 -1
  770. package/lib/module/lib/sonner.web.js +0 -19
  771. package/lib/module/lib/sonner.web.js.map +0 -1
  772. package/lib/module/ui/hooks/useThemeColors.js +0 -29
  773. package/lib/module/ui/hooks/useThemeColors.js.map +0 -1
  774. package/lib/module/ui/hooks/useThemeStyles.js +0 -33
  775. package/lib/module/ui/hooks/useThemeStyles.js.map +0 -1
  776. package/lib/module/ui/styles/fonts.js +0 -81
  777. package/lib/module/ui/styles/fonts.js.map +0 -1
  778. package/lib/typescript/commonjs/lib/sonner-safe.d.ts +0 -9
  779. package/lib/typescript/commonjs/lib/sonner-safe.d.ts.map +0 -1
  780. package/lib/typescript/commonjs/lib/sonner.d.ts +0 -12
  781. package/lib/typescript/commonjs/lib/sonner.d.ts.map +0 -1
  782. package/lib/typescript/commonjs/lib/sonner.native.d.ts +0 -15
  783. package/lib/typescript/commonjs/lib/sonner.native.d.ts.map +0 -1
  784. package/lib/typescript/commonjs/lib/sonner.web.d.ts +0 -15
  785. package/lib/typescript/commonjs/lib/sonner.web.d.ts.map +0 -1
  786. package/lib/typescript/commonjs/ui/hooks/useThemeColors.d.ts +0 -87
  787. package/lib/typescript/commonjs/ui/hooks/useThemeColors.d.ts.map +0 -1
  788. package/lib/typescript/commonjs/ui/hooks/useThemeStyles.d.ts +0 -22
  789. package/lib/typescript/commonjs/ui/hooks/useThemeStyles.d.ts.map +0 -1
  790. package/lib/typescript/commonjs/ui/styles/fonts.d.ts +0 -21
  791. package/lib/typescript/commonjs/ui/styles/fonts.d.ts.map +0 -1
  792. package/lib/typescript/module/lib/sonner-safe.d.ts +0 -9
  793. package/lib/typescript/module/lib/sonner-safe.d.ts.map +0 -1
  794. package/lib/typescript/module/lib/sonner.d.ts +0 -12
  795. package/lib/typescript/module/lib/sonner.d.ts.map +0 -1
  796. package/lib/typescript/module/lib/sonner.native.d.ts +0 -15
  797. package/lib/typescript/module/lib/sonner.native.d.ts.map +0 -1
  798. package/lib/typescript/module/lib/sonner.web.d.ts +0 -15
  799. package/lib/typescript/module/lib/sonner.web.d.ts.map +0 -1
  800. package/lib/typescript/module/ui/hooks/useThemeColors.d.ts +0 -87
  801. package/lib/typescript/module/ui/hooks/useThemeColors.d.ts.map +0 -1
  802. package/lib/typescript/module/ui/hooks/useThemeStyles.d.ts +0 -22
  803. package/lib/typescript/module/ui/hooks/useThemeStyles.d.ts.map +0 -1
  804. package/lib/typescript/module/ui/styles/fonts.d.ts +0 -21
  805. package/lib/typescript/module/ui/styles/fonts.d.ts.map +0 -1
  806. package/src/lib/sonner-safe.ts +0 -31
  807. package/src/lib/sonner.native.ts +0 -28
  808. package/src/lib/sonner.ts +0 -11
  809. package/src/lib/sonner.web.ts +0 -28
  810. package/src/ui/hooks/useThemeColors.ts +0 -27
  811. package/src/ui/hooks/useThemeStyles.ts +0 -50
  812. package/src/ui/styles/fonts.ts +0 -77
@@ -6,7 +6,7 @@ import {
6
6
  Linking,
7
7
  } from 'react-native';
8
8
  import type { BaseScreenProps } from '../types/navigation';
9
- import { toast } from '../../lib/sonner';
9
+ import { toast } from '@oxyhq/bloom';
10
10
  import { Header } from '../components';
11
11
  import { SettingsIcon } from '../components/SettingsIcon';
12
12
  import { useI18n } from '../hooks/useI18n';
@@ -43,7 +43,6 @@ const HelpSupportScreen: React.FC<BaseScreenProps> = ({
43
43
  }, [navigate, t]);
44
44
 
45
45
  const handleReportBug = useMemo(() => () => {
46
- // TODO: Consider implementing a dedicated bug report form instead of just email
47
46
  Linking.openURL('mailto:bugs@oxy.so?subject=Bug Report').catch(() => {
48
47
  toast.error(t('help.reportError') || 'Failed to open email client');
49
48
  });
@@ -85,7 +84,7 @@ const HelpSupportScreen: React.FC<BaseScreenProps> = ({
85
84
  {/* Resources */}
86
85
  <SettingsListGroup title={t('help.resources') || 'Resources'}>
87
86
  <SettingsListItem
88
- icon={<SettingsIcon name="file-document" color="#8E8E93" />}
87
+ icon={<SettingsIcon name="file-document" color={bloomTheme.colors.textTertiary} />}
89
88
  title={t('help.documentation.title') || 'Documentation'}
90
89
  description={t('help.documentation.subtitle') || 'User guides and tutorials'}
91
90
  onPress={() => {
@@ -1,7 +1,7 @@
1
1
  import React, { useState, useCallback } from 'react';
2
2
  import { View, StyleSheet, ScrollView } from 'react-native';
3
3
  import type { BaseScreenProps } from '../types/navigation';
4
- import { toast } from '../../lib/sonner';
4
+ import { toast } from '@oxyhq/bloom';
5
5
  import { Header, LoadingState, EmptyState } from '../components';
6
6
  import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
7
7
  import { SettingsIcon } from '../components/SettingsIcon';
@@ -11,8 +11,7 @@ import { useColorScheme } from '../hooks/useColorScheme';
11
11
  import { Colors } from '../constants/theme';
12
12
  import { normalizeColorScheme } from '../utils/themeUtils';
13
13
  import { useOxy } from '../context/OxyContext';
14
- import * as Prompt from '@oxyhq/bloom/prompt';
15
- import { usePromptControl } from '@oxyhq/bloom/prompt';
14
+ import { Dialog, useDialogControl } from '@oxyhq/bloom';
16
15
 
17
16
  interface HistoryItem { id: string; query: string; type: 'search' | 'browse'; timestamp: Date; }
18
17
 
@@ -26,8 +25,8 @@ const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, theme, goBack }
26
25
  const [history, setHistory] = useState<HistoryItem[]>([]);
27
26
  const [isLoading, setIsLoading] = useState(true);
28
27
  const [isDeleting, setIsDeleting] = useState(false);
29
- const deleteLast15Prompt = usePromptControl();
30
- const clearAllPrompt = usePromptControl();
28
+ const deleteLast15Dialog = useDialogControl();
29
+ const clearAllDialog = useDialogControl();
31
30
 
32
31
  const getStorage = async () => {
33
32
  const isRN = typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
@@ -100,14 +99,14 @@ const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, theme, goBack }
100
99
  icon={<SettingsIcon name="clock-outline" color={themeColors.iconStorage} />}
101
100
  title={t('history.deleteLast15Minutes.title') || 'Delete Last 15 Minutes'}
102
101
  description={t('history.deleteLast15Minutes.subtitle') || 'Remove recent history entries'}
103
- onPress={() => deleteLast15Prompt.open()}
102
+ onPress={() => deleteLast15Dialog.open()}
104
103
  disabled={isDeleting || history.length === 0}
105
104
  />
106
105
  <SettingsListItem
107
106
  icon={<SettingsIcon name="delete-outline" color={themeColors.iconSharing} />}
108
107
  title={t('history.clearAll.title') || 'Clear All History'}
109
108
  description={t('history.clearAll.subtitle') || 'Remove all history entries'}
110
- onPress={() => clearAllPrompt.open()}
109
+ onPress={() => clearAllDialog.open()}
111
110
  disabled={isDeleting || history.length === 0}
112
111
  />
113
112
  </SettingsListGroup>
@@ -124,8 +123,24 @@ const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, theme, goBack }
124
123
  ))}
125
124
  </SettingsListGroup>
126
125
  </ScrollView>
127
- <Prompt.Basic control={deleteLast15Prompt} title={t('history.deleteLast15Minutes.title') || 'Delete Last 15 Minutes'} description={t('history.deleteLast15Minutes.confirm') || 'Delete last 15 minutes of history?'} onConfirm={handleDeleteLast15Minutes} confirmButtonCta={t('common.actions.delete') || 'Delete'} confirmButtonColor="negative" />
128
- <Prompt.Basic control={clearAllPrompt} title={t('history.clearAll.title') || 'Clear All History'} description={t('history.clearAll.confirm') || 'Clear all history? This cannot be undone.'} onConfirm={handleClearAll} confirmButtonCta={t('history.clearAll.title') || 'Clear All'} confirmButtonColor="negative" />
126
+ <Dialog
127
+ control={deleteLast15Dialog}
128
+ title={t('history.deleteLast15Minutes.title') || 'Delete Last 15 Minutes'}
129
+ description={t('history.deleteLast15Minutes.confirm') || 'Delete last 15 minutes of history?'}
130
+ actions={[
131
+ { label: t('common.actions.delete') || 'Delete', color: 'destructive', onPress: handleDeleteLast15Minutes },
132
+ { label: t('common.cancel') || 'Cancel', color: 'cancel' },
133
+ ]}
134
+ />
135
+ <Dialog
136
+ control={clearAllDialog}
137
+ title={t('history.clearAll.title') || 'Clear All History'}
138
+ description={t('history.clearAll.confirm') || 'Clear all history? This cannot be undone.'}
139
+ actions={[
140
+ { label: t('history.clearAll.title') || 'Clear All', color: 'destructive', onPress: handleClearAll },
141
+ { label: t('common.cancel') || 'Cancel', color: 'cancel' },
142
+ ]}
143
+ />
129
144
  </View>
130
145
  );
131
146
  };
@@ -11,13 +11,12 @@ import type { BaseScreenProps } from '../types/navigation';
11
11
  import { useTheme } from '@oxyhq/bloom/theme';
12
12
  import { normalizeTheme } from '../utils/themeUtils';
13
13
  import { Ionicons } from '@expo/vector-icons';
14
- import { toast } from '../../lib/sonner';
14
+ import { toast } from '@oxyhq/bloom';
15
15
  import { Header } from '../components';
16
16
  import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
17
17
  import { useI18n } from '../hooks/useI18n';
18
18
  import { SUPPORTED_LANGUAGES } from '@oxyhq/core';
19
19
  import { useOxy } from '../context/OxyContext';
20
- import { fontFamilies } from '../styles/fonts';
21
20
 
22
21
  interface LanguageSelectorScreenProps extends BaseScreenProps { }
23
22
 
@@ -188,7 +187,6 @@ const styles = StyleSheet.create({
188
187
  bigTitle: {
189
188
  fontSize: 34,
190
189
  fontWeight: Platform.OS === 'web' ? 'bold' : undefined,
191
- fontFamily: fontFamilies.interBold,
192
190
  lineHeight: 40,
193
191
  marginBottom: 8,
194
192
  letterSpacing: -0.5,
@@ -6,7 +6,7 @@ import {
6
6
  Linking,
7
7
  } from 'react-native';
8
8
  import type { BaseScreenProps } from '../types/navigation';
9
- import { toast } from '../../lib/sonner';
9
+ import { toast } from '@oxyhq/bloom';
10
10
  import { Header, LoadingState } from '../components';
11
11
  import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
12
12
  import { SettingsIcon } from '../components/SettingsIcon';
@@ -155,13 +155,13 @@ const LegalDocumentsScreen: React.FC<BaseScreenProps> = ({
155
155
  onPress={handleOpenPolicy('contentModeration')}
156
156
  />
157
157
  <SettingsListItem
158
- icon={<SettingsIcon name="heart" color="#FF2D55" />}
158
+ icon={<SettingsIcon name="heart" color={bloomTheme.colors.error} />}
159
159
  title={t('legal.childSafety.title') || 'Child Safety Policy'}
160
160
  description={t('legal.childSafety.subtitle') || 'Protecting minors on our platform'}
161
161
  onPress={handleOpenPolicy('childSafety')}
162
162
  />
163
163
  <SettingsListItem
164
- icon={<SettingsIcon name="cookie" color="#8E8E93" />}
164
+ icon={<SettingsIcon name="cookie" color={bloomTheme.colors.textTertiary} />}
165
165
  title={t('legal.cookiePolicy.title') || 'Cookie Policy'}
166
166
  description={t('legal.cookiePolicy.subtitle') || 'How we use cookies and similar technologies'}
167
167
  onPress={handleOpenPolicy('cookie')}
@@ -153,7 +153,7 @@ const PaymentGatewayScreen: React.FC<PaymentGatewayScreenProps> = (props) => {
153
153
  }
154
154
  }, [currentStep, progressAnim, animateTransition]);
155
155
 
156
- // Pay handler - TODO: Replace with actual payment API
156
+ // Pay handler placeholder for payment integration
157
157
  const handlePay = useCallback(() => {
158
158
  setIsPaying(true);
159
159
  setTimeout(() => {
@@ -198,7 +198,7 @@ const PaymentGatewayScreen: React.FC<PaymentGatewayScreenProps> = (props) => {
198
198
  );
199
199
  }
200
200
 
201
- // FairCoin address - TODO: Replace with dynamic address from backend
201
+ // FairCoin address placeholder replaced when integration is wired up.
202
202
  const faircoinAddress = 'f1abc1234FAIRCOINADDRESS';
203
203
  const { width: windowWidth } = useWindowDimensions();
204
204
  const isMobile = windowWidth < 600;
@@ -12,10 +12,7 @@ import {
12
12
  Dimensions,
13
13
  } from 'react-native';
14
14
  import type { BaseScreenProps } from '../types/navigation';
15
- import { fontFamilies } from '../styles/fonts';
16
- import { toast } from '../../lib/sonner';
17
- import * as Prompt from '@oxyhq/bloom/prompt';
18
- import { usePromptControl } from '@oxyhq/bloom/prompt';
15
+ import { Dialog, toast, useDialogControl } from '@oxyhq/bloom';
19
16
  import { Ionicons } from '@expo/vector-icons';
20
17
  import Avatar from '../components/Avatar';
21
18
  import { useI18n } from '../hooks/useI18n';
@@ -86,8 +83,8 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
86
83
  const bloomTheme = useTheme();
87
84
 
88
85
  // Prompt controls
89
- const cancelSubscriptionPrompt = usePromptControl();
90
- const unsubscribeFeaturePrompt = usePromptControl();
86
+ const cancelSubscriptionDialog = useDialogControl();
87
+ const unsubscribeFeatureDialog = useDialogControl();
91
88
 
92
89
  // Extract commonly used colors for readability
93
90
  const textColor = bloomTheme.colors.text;
@@ -98,10 +95,8 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
98
95
  const successColor = bloomTheme.colors.success;
99
96
  const dangerColor = bloomTheme.colors.error;
100
97
  const isDarkTheme = bloomTheme.isDark;
101
- const warningColor = '#FF9500';
98
+ const warningColor = bloomTheme.colors.warning;
102
99
 
103
- // TODO: Replace mock data with actual API integration
104
- // Should fetch plans from oxyServices.getSubscriptionPlans() and individual features from oxyServices.getIndividualFeatures()
105
100
  // Oxy+ subscription plans
106
101
  const mockPlans: SubscriptionPlan[] = [
107
102
  {
@@ -417,8 +412,8 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
417
412
  };
418
413
 
419
414
  const confirmCancelSubscription = useCallback(() => {
420
- cancelSubscriptionPrompt.open();
421
- }, [cancelSubscriptionPrompt]);
415
+ cancelSubscriptionDialog.open();
416
+ }, [cancelSubscriptionDialog]);
422
417
 
423
418
  const handleCancelSubscription = useCallback(async () => {
424
419
  try {
@@ -504,8 +499,8 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
504
499
 
505
500
  const confirmFeatureUnsubscribe = useCallback((featureId: string) => {
506
501
  setPendingUnsubscribeFeatureId(featureId);
507
- unsubscribeFeaturePrompt.open();
508
- }, [unsubscribeFeaturePrompt]);
502
+ unsubscribeFeatureDialog.open();
503
+ }, [unsubscribeFeatureDialog]);
509
504
 
510
505
  const handleFeatureUnsubscribe = useCallback(async () => {
511
506
  if (!pendingUnsubscribeFeatureId) return;
@@ -551,7 +546,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
551
546
  </TouchableOpacity>
552
547
  <View style={styles.headerTitleContainer}>
553
548
  <Text style={[styles.headerTitle, { color: textColor }]}>{t('premium.title') || 'Oxy+ Subscriptions'}</Text>
554
- <Text style={[styles.currentAppText, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
549
+ <Text style={[styles.currentAppText, { color: bloomTheme.colors.textSecondary }]}>
555
550
  {t('premium.forApp', { app: getAppDisplayName(currentAppPackage) }) || `for ${getAppDisplayName(currentAppPackage)}`}
556
551
  </Text>
557
552
  </View>
@@ -594,7 +589,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
594
589
  </View>
595
590
  </View>
596
591
 
597
- <Text style={[styles.subscriptionDetail, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
592
+ <Text style={[styles.subscriptionDetail, { color: bloomTheme.colors.textSecondary }]}>
598
593
  {t('premium.current.renewsOn', { date: new Date(subscription.currentPeriodEnd).toLocaleDateString() }) || `Renews on ${new Date(subscription.currentPeriodEnd).toLocaleDateString()}`}
599
594
  </Text>
600
595
 
@@ -648,7 +643,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
648
643
  >
649
644
  <Text style={[
650
645
  styles.billingOptionText,
651
- { color: billingInterval === 'month' ? '#FFFFFF' : textColor }
646
+ { color: billingInterval === 'month' ? bloomTheme.colors.negativeForeground : textColor }
652
647
  ]}>
653
648
  {t('premium.billing.monthly') || 'Monthly'}
654
649
  </Text>
@@ -663,7 +658,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
663
658
  >
664
659
  <Text style={[
665
660
  styles.billingOptionText,
666
- { color: billingInterval === 'year' ? '#FFFFFF' : textColor }
661
+ { color: billingInterval === 'year' ? bloomTheme.colors.negativeForeground : textColor }
667
662
  ]}>
668
663
  {t('premium.billing.yearly') || 'Yearly'}
669
664
  </Text>
@@ -737,10 +732,10 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
737
732
 
738
733
  <View style={styles.planHeader}>
739
734
  <Text style={[styles.planName, { color: textColor }]}>{plan.name}</Text>
740
- <Text style={[styles.planDescription, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
735
+ <Text style={[styles.planDescription, { color: bloomTheme.colors.textSecondary }]}>
741
736
  {plan.description}
742
737
  </Text>
743
- <Text style={[styles.planAppScope, { color: isDarkTheme ? '#888888' : '#999999' }]}>
738
+ <Text style={[styles.planAppScope, { color: bloomTheme.colors.textTertiary }]}>
744
739
  {getAppScopeText()}
745
740
  </Text>
746
741
  {!availability.available && (
@@ -754,7 +749,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
754
749
  <Text style={[styles.planPrice, { color: textColor }]}>
755
750
  {pricing.formatted}
756
751
  </Text>
757
- <Text style={[styles.planInterval, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
752
+ <Text style={[styles.planInterval, { color: bloomTheme.colors.textSecondary }]}>
758
753
  {t('premium.plan.perInterval', { interval: pricing.interval }) || `per ${pricing.interval}`}
759
754
  </Text>
760
755
  </View>
@@ -773,8 +768,8 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
773
768
  <Text style={styles.currentPlanText}>{t('premium.plan.current') || 'Current Plan'}</Text>
774
769
  </View>
775
770
  ) : !availability.available ? (
776
- <View style={[styles.unavailablePlanButton, { backgroundColor: isDarkTheme ? '#444444' : '#E0E0E0' }]}>
777
- <Text style={[styles.unavailablePlanText, { color: isDarkTheme ? '#888888' : '#999999' }]}>
771
+ <View style={[styles.unavailablePlanButton, { backgroundColor: bloomTheme.colors.border }]}>
772
+ <Text style={[styles.unavailablePlanText, { color: bloomTheme.colors.textTertiary }]}>
778
773
  {t('premium.plan.notAvailableInApp') || 'Not Available in Current App'}
779
774
  </Text>
780
775
  </View>
@@ -788,11 +783,11 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
788
783
  disabled={processingPayment}
789
784
  >
790
785
  {processingPayment ? (
791
- <ActivityIndicator color="#FFFFFF" size="small" />
786
+ <ActivityIndicator color={bloomTheme.colors.negativeForeground} size="small" />
792
787
  ) : (
793
788
  <Text style={[
794
789
  styles.selectPlanText,
795
- { color: plan.isPopular ? '#FFFFFF' : textColor }
790
+ { color: plan.isPopular ? bloomTheme.colors.negativeForeground : textColor }
796
791
  ]}>
797
792
  {t('premium.actions.subscribeTo', { name: plan.name }) || `Subscribe to ${plan.name}`}
798
793
  </Text>
@@ -847,11 +842,11 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
847
842
 
848
843
  const getCategoryColor = (category: string) => {
849
844
  switch (category) {
850
- case 'analytics': return '#FF9500';
851
- case 'customization': return '#5856D6';
852
- case 'content': return '#30D158';
853
- case 'networking': return '#007AFF';
854
- case 'productivity': return '#FF3B30';
845
+ case 'analytics': return bloomTheme.colors.warning;
846
+ case 'customization': return bloomTheme.colors.secondary;
847
+ case 'content': return bloomTheme.colors.success;
848
+ case 'networking': return bloomTheme.colors.info;
849
+ case 'productivity': return bloomTheme.colors.error;
855
850
  default: return primaryColor;
856
851
  }
857
852
  };
@@ -901,10 +896,10 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
901
896
  </View>
902
897
  )}
903
898
  </View>
904
- <Text style={[styles.featureDescription, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
899
+ <Text style={[styles.featureDescription, { color: bloomTheme.colors.textSecondary }]}>
905
900
  {feature.description}
906
901
  </Text>
907
- <Text style={[styles.appScopeText, { color: isDarkTheme ? '#888888' : '#999999' }]}>
902
+ <Text style={[styles.appScopeText, { color: bloomTheme.colors.textTertiary }]}>
908
903
  {getAppScopeText()}
909
904
  </Text>
910
905
  </View>
@@ -915,7 +910,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
915
910
  <Text style={[styles.featurePrice, { color: textColor }]}>
916
911
  {pricing.formatted}
917
912
  </Text>
918
- <Text style={[styles.featureInterval, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
913
+ <Text style={[styles.featureInterval, { color: bloomTheme.colors.textSecondary }]}>
919
914
  {t('premium.plan.perInterval', { interval: pricing.interval }) || `per ${pricing.interval}`}
920
915
  </Text>
921
916
  </View>
@@ -923,13 +918,13 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
923
918
 
924
919
  {isIncludedInCurrentPlan ? (
925
920
  <View style={[styles.includedInPlanButton, { backgroundColor: primaryColor }]}>
926
- <Ionicons name="checkmark-circle" size={16} color="#FFFFFF" />
921
+ <Ionicons name="checkmark-circle" size={16} color={bloomTheme.colors.negativeForeground} />
927
922
  <Text style={styles.includedInPlanText}>{t('premium.feature.includedInPlan') || 'Included in your plan'}</Text>
928
923
  </View>
929
924
  ) : isSubscribed ? (
930
925
  <View style={styles.featureActions}>
931
926
  <View style={[styles.subscribedButton, { backgroundColor: successColor }]}>
932
- <Ionicons name="checkmark" size={16} color="#FFFFFF" />
927
+ <Ionicons name="checkmark" size={16} color={bloomTheme.colors.negativeForeground} />
933
928
  <Text style={styles.subscribedText}>{t('premium.feature.subscribed') || 'Subscribed'}</Text>
934
929
  </View>
935
930
  <TouchableOpacity
@@ -946,14 +941,14 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
946
941
  disabled={processingPayment}
947
942
  >
948
943
  {processingPayment ? (
949
- <ActivityIndicator color="#FFFFFF" size="small" />
944
+ <ActivityIndicator color={bloomTheme.colors.negativeForeground} size="small" />
950
945
  ) : (
951
946
  <Text style={styles.subscribeFeatureText}>{t('premium.actions.subscribe') || 'Subscribe'}</Text>
952
947
  )}
953
948
  </TouchableOpacity>
954
949
  ) : (
955
- <View style={[styles.unavailableButton, { backgroundColor: isDarkTheme ? '#444444' : '#E0E0E0' }]}>
956
- <Text style={[styles.unavailableText, { color: isDarkTheme ? '#888888' : '#999999' }]}>
950
+ <View style={[styles.unavailableButton, { backgroundColor: bloomTheme.colors.border }]}>
951
+ <Text style={[styles.unavailableText, { color: bloomTheme.colors.textTertiary }]}>
957
952
  Only available in subscription plans
958
953
  </Text>
959
954
  </View>
@@ -968,7 +963,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
968
963
  return (
969
964
  <View style={styles.section}>
970
965
  <Text style={[styles.sectionTitle, { color: textColor }]}>Individual Features</Text>
971
- <Text style={[styles.sectionSubtitle, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
966
+ <Text style={[styles.sectionSubtitle, { color: bloomTheme.colors.textSecondary }]}>
972
967
  Subscribe to specific features you need. Some features are included in subscription plans.
973
968
  </Text>
974
969
 
@@ -998,7 +993,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
998
993
  const testApps = ['mention', 'oxy-social', 'oxy-workspace', 'oxy-creator'];
999
994
 
1000
995
  return (
1001
- <View style={[styles.appSwitcher, { backgroundColor: isDarkTheme ? '#333333' : '#F0F0F0', borderColor }]}>
996
+ <View style={[styles.appSwitcher, { backgroundColor: bloomTheme.colors.backgroundSecondary, borderColor }]}>
1002
997
  <Text style={[styles.appSwitcherTitle, { color: textColor }]}>
1003
998
  🧪 Test App Context (Dev Only)
1004
999
  </Text>
@@ -1020,7 +1015,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
1020
1015
  >
1021
1016
  <Text style={[
1022
1017
  styles.appSwitcherButtonText,
1023
- { color: currentAppPackage === app ? '#FFFFFF' : textColor }
1018
+ { color: currentAppPackage === app ? bloomTheme.colors.negativeForeground : textColor }
1024
1019
  ]}>
1025
1020
  {app}
1026
1021
  </Text>
@@ -1052,7 +1047,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
1052
1047
  {!subscription && (
1053
1048
  <View style={styles.section}>
1054
1049
  <Text style={[styles.sectionTitle, { color: textColor }]}>{t('premium.choosePlan') || 'Choose Your Plan'}</Text>
1055
- <Text style={[styles.sectionSubtitle, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
1050
+ <Text style={[styles.sectionSubtitle, { color: bloomTheme.colors.textSecondary }]}>
1056
1051
  {t('premium.choosePlanSubtitle') || 'Unlock premium features and take your experience to the next level'}
1057
1052
  </Text>
1058
1053
  </View>
@@ -1083,7 +1078,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
1083
1078
  <Ionicons name="flash" size={24} color={primaryColor} />
1084
1079
  <View style={styles.benefitContent}>
1085
1080
  <Text style={[styles.benefitTitle, { color: textColor }]}>{t('premium.benefits.performance.title') || 'Enhanced Performance'}</Text>
1086
- <Text style={[styles.benefitDescription, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
1081
+ <Text style={[styles.benefitDescription, { color: bloomTheme.colors.textSecondary }]}>
1087
1082
  {t('premium.benefits.performance.desc') || 'Faster processing and priority access to our servers'}
1088
1083
  </Text>
1089
1084
  </View>
@@ -1093,7 +1088,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
1093
1088
  <Ionicons name="shield-checkmark" size={24} color={successColor} />
1094
1089
  <View style={styles.benefitContent}>
1095
1090
  <Text style={[styles.benefitTitle, { color: textColor }]}>{t('premium.benefits.security.title') || 'Advanced Security'}</Text>
1096
- <Text style={[styles.benefitDescription, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
1091
+ <Text style={[styles.benefitDescription, { color: bloomTheme.colors.textSecondary }]}>
1097
1092
  {t('premium.benefits.security.desc') || 'Enhanced encryption and security features'}
1098
1093
  </Text>
1099
1094
  </View>
@@ -1103,7 +1098,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
1103
1098
  <Ionicons name="headset" size={24} color={warningColor} />
1104
1099
  <View style={styles.benefitContent}>
1105
1100
  <Text style={[styles.benefitTitle, { color: textColor }]}>{t('premium.benefits.support.title') || 'Priority Support'}</Text>
1106
- <Text style={[styles.benefitDescription, { color: isDarkTheme ? '#BBBBBB' : '#666666' }]}>
1101
+ <Text style={[styles.benefitDescription, { color: bloomTheme.colors.textSecondary }]}>
1107
1102
  {t('premium.benefits.support.desc') || 'Get help faster with our premium support team'}
1108
1103
  </Text>
1109
1104
  </View>
@@ -1113,21 +1108,23 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
1113
1108
 
1114
1109
  <View style={styles.bottomSpacing} />
1115
1110
  </ScrollView>
1116
- <Prompt.Basic
1117
- control={cancelSubscriptionPrompt}
1111
+ <Dialog
1112
+ control={cancelSubscriptionDialog}
1118
1113
  title={t('premium.confirms.cancelSubTitle') || 'Cancel Subscription'}
1119
1114
  description={t('premium.confirms.cancelSub') || 'Are you sure you want to cancel your subscription? You will lose access to premium features at the end of your current billing period.'}
1120
- onConfirm={handleCancelSubscription}
1121
- confirmButtonCta={t('premium.actions.cancelSubBtn') || 'Cancel Subscription'}
1122
- confirmButtonColor='negative'
1115
+ actions={[
1116
+ { label: t('premium.actions.cancelSubBtn') || 'Cancel Subscription', color: 'destructive', onPress: handleCancelSubscription },
1117
+ { label: t('common.cancel') || 'Cancel', color: 'cancel' },
1118
+ ]}
1123
1119
  />
1124
- <Prompt.Basic
1125
- control={unsubscribeFeaturePrompt}
1120
+ <Dialog
1121
+ control={unsubscribeFeatureDialog}
1126
1122
  title={t('premium.confirms.unsubscribeFeatureTitle') || 'Unsubscribe from Feature'}
1127
1123
  description={pendingUnsubscribeFeature ? (t('premium.confirms.unsubscribeFeature', { name: pendingUnsubscribeFeature.name }) ?? `Are you sure you want to unsubscribe from ${pendingUnsubscribeFeature.name}?`) : ''}
1128
- onConfirm={handleFeatureUnsubscribe}
1129
- confirmButtonCta={t('premium.actions.unsubscribe') || 'Unsubscribe'}
1130
- confirmButtonColor='negative'
1124
+ actions={[
1125
+ { label: t('premium.actions.unsubscribe') || 'Unsubscribe', color: 'destructive', onPress: handleFeatureUnsubscribe },
1126
+ { label: t('common.cancel') || 'Cancel', color: 'cancel' },
1127
+ ]}
1131
1128
  />
1132
1129
  </View>
1133
1130
  );
@@ -1152,7 +1149,6 @@ const styles = StyleSheet.create({
1152
1149
  headerTitle: {
1153
1150
  fontSize: 20,
1154
1151
  fontWeight: '600',
1155
- fontFamily: fontFamilies.interSemiBold,
1156
1152
  },
1157
1153
  headerTitleContainer: {
1158
1154
  flex: 1,
@@ -1175,7 +1171,6 @@ const styles = StyleSheet.create({
1175
1171
  sectionTitle: {
1176
1172
  fontSize: 24,
1177
1173
  fontWeight: 'bold',
1178
- fontFamily: fontFamilies.interBold,
1179
1174
  marginBottom: 8,
1180
1175
  },
1181
1176
  sectionSubtitle: {
@@ -7,7 +7,7 @@ import {
7
7
  TouchableOpacity,
8
8
  } from 'react-native';
9
9
  import type { BaseScreenProps } from '../types/navigation';
10
- import { toast } from '../../lib/sonner';
10
+ import { toast } from '@oxyhq/bloom';
11
11
  import { Header, Avatar, LoadingState, EmptyState } from '../components';
12
12
  import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
13
13
  import { Switch } from '@oxyhq/bloom/switch';
@@ -15,6 +15,7 @@ import { useI18n } from '../hooks/useI18n';
15
15
  import { useTheme } from '@oxyhq/bloom/theme';
16
16
  import { useSettingToggles } from '../hooks/useSettingToggle';
17
17
  import type { BlockedUser, RestrictedUser } from '@oxyhq/core';
18
+ import { getAccountDisplayName } from '@oxyhq/core';
18
19
  import { useOxy } from '../context/OxyContext';
19
20
 
20
21
  interface PrivacySettings {
@@ -67,7 +68,7 @@ const PrivacySettingsScreen: React.FC<BaseScreenProps> = ({
67
68
  goBack,
68
69
  }) => {
69
70
  const { oxyServices, user } = useOxy();
70
- const { t } = useI18n();
71
+ const { t, locale } = useI18n();
71
72
  const [isLoading, setIsLoading] = useState(true);
72
73
  const [blockedUsers, setBlockedUsers] = useState<BlockedUser[]>([]);
73
74
  const [restrictedUsers, setRestrictedUsers] = useState<RestrictedUser[]>([]);
@@ -167,35 +168,36 @@ const PrivacySettingsScreen: React.FC<BaseScreenProps> = ({
167
168
  }
168
169
  }, [oxyServices, t]);
169
170
 
170
- // Helper to extract user info from blocked/restricted objects
171
+ // Helper to extract user info from blocked/restricted objects.
172
+ // Display names go through the canonical helper so the fallback chain is
173
+ // identical across every UI surface (name → username → publicKey → "Unnamed").
171
174
  const extractUserInfo = useCallback((
172
175
  item: BlockedUser | RestrictedUser,
173
176
  idField: 'blockedId' | 'restrictedId'
174
177
  ) => {
175
178
  let userIdField: string | { _id: string; username?: string; avatar?: string };
176
- let username: string;
179
+ let userShape: { username?: string };
177
180
  let avatar: string | undefined;
178
181
 
179
182
  if (idField === 'blockedId' && 'blockedId' in item) {
180
183
  userIdField = item.blockedId;
181
- username = typeof item.blockedId === 'string'
182
- ? (item.username || 'Unknown')
183
- : (item.blockedId.username || 'Unknown');
184
+ userShape = typeof item.blockedId === 'string'
185
+ ? { username: item.username }
186
+ : { username: item.blockedId.username };
184
187
  avatar = typeof item.blockedId === 'string' ? item.avatar : item.blockedId.avatar;
185
188
  } else if (idField === 'restrictedId' && 'restrictedId' in item) {
186
189
  userIdField = item.restrictedId;
187
- username = typeof item.restrictedId === 'string'
188
- ? (item.username || 'Unknown')
189
- : (item.restrictedId.username || 'Unknown');
190
+ userShape = typeof item.restrictedId === 'string'
191
+ ? { username: item.username }
192
+ : { username: item.restrictedId.username };
190
193
  avatar = typeof item.restrictedId === 'string' ? item.avatar : item.restrictedId.avatar;
191
194
  } else {
192
- // Fallback (should not happen)
193
- return { userId: '', username: 'Unknown', avatar: undefined };
195
+ return { userId: '', displayName: getAccountDisplayName(null, locale), avatar: undefined };
194
196
  }
195
197
 
196
198
  const userId = typeof userIdField === 'string' ? userIdField : userIdField._id;
197
- return { userId, username, avatar };
198
- }, []);
199
+ return { userId, displayName: getAccountDisplayName(userShape, locale), avatar };
200
+ }, [locale]);
199
201
 
200
202
  const bloomTheme = useTheme();
201
203
 
@@ -330,13 +332,13 @@ const PrivacySettingsScreen: React.FC<BaseScreenProps> = ({
330
332
  />
331
333
  ) : (
332
334
  blockedUsers.map((blocked) => {
333
- const { userId, username, avatar } = extractUserInfo(blocked, 'blockedId');
335
+ const { userId, displayName, avatar } = extractUserInfo(blocked, 'blockedId');
334
336
  const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
335
337
  return (
336
338
  <SettingsListItem
337
339
  key={userId}
338
- icon={<Avatar uri={avatarUri} name={username} size={20} />}
339
- title={username}
340
+ icon={<Avatar uri={avatarUri} name={displayName} size={20} />}
341
+ title={displayName}
340
342
  rightElement={
341
343
  <TouchableOpacity onPress={() => handleUnblock(userId)} style={[styles.actionButton, { backgroundColor: bloomTheme.colors.backgroundSecondary }]}>
342
344
  <Text style={[styles.actionButtonText, { color: bloomTheme.colors.error }]}>{t('privacySettings.unblock') || 'Unblock'}</Text>
@@ -359,13 +361,13 @@ const PrivacySettingsScreen: React.FC<BaseScreenProps> = ({
359
361
  />
360
362
  ) : (
361
363
  restrictedUsers.map((restricted) => {
362
- const { userId, username, avatar } = extractUserInfo(restricted, 'restrictedId');
364
+ const { userId, displayName, avatar } = extractUserInfo(restricted, 'restrictedId');
363
365
  const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
364
366
  return (
365
367
  <SettingsListItem
366
368
  key={userId}
367
- icon={<Avatar uri={avatarUri} name={username} size={20} />}
368
- title={username}
369
+ icon={<Avatar uri={avatarUri} name={displayName} size={20} />}
370
+ title={displayName}
369
371
  description={t('privacySettings.restrictedDescription') || 'Limited interactions'}
370
372
  rightElement={
371
373
  <TouchableOpacity onPress={() => handleUnrestrict(userId)} style={[styles.actionButton, { backgroundColor: bloomTheme.colors.backgroundSecondary }]}>
@@ -185,7 +185,7 @@ const ProfileScreen: React.FC<ProfileScreenProps> = ({ userId, username, theme,
185
185
  if (error) {
186
186
  return (
187
187
  <View style={[styles.container, { backgroundColor: bloomTheme.colors.background }]}>
188
- <View style={styles.errorHeader}>
188
+ <View style={[styles.errorHeader, { borderBottomColor: bloomTheme.colors.border }]}>
189
189
  {goBack && (
190
190
  <TouchableOpacity onPress={goBack} style={styles.backButton}>
191
191
  <Ionicons name="arrow-back" size={24} color={bloomTheme.colors.text} />
@@ -410,7 +410,6 @@ const createStyles = () => StyleSheet.create({
410
410
  paddingHorizontal: 16,
411
411
  paddingVertical: 12,
412
412
  borderBottomWidth: 1,
413
- borderBottomColor: '#E0E0E0',
414
413
  },
415
414
  backButton: {
416
415
  padding: 8,
@@ -7,7 +7,7 @@ import {
7
7
  ScrollView,
8
8
  } from 'react-native';
9
9
  import type { BaseScreenProps } from '../types/navigation';
10
- import { toast } from '../../lib/sonner';
10
+ import { toast } from '@oxyhq/bloom';
11
11
  import { Header, LoadingState, EmptyState } from '../components';
12
12
  import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
13
13
  import { SettingsIcon } from '../components/SettingsIcon';
@@ -53,7 +53,7 @@ const SavesCollectionsScreen: React.FC<BaseScreenProps> = ({
53
53
  const normalizedColorScheme = normalizeColorScheme(colorScheme);
54
54
  const themeColors = Colors[normalizedColorScheme];
55
55
  const tabActiveColor = themeColors.iconSecurity;
56
- const tabInactiveColor = bloomTheme.isDark ? '#888888' : '#666666';
56
+ const tabInactiveColor = bloomTheme.colors.textTertiary;
57
57
 
58
58
  // Load saved items and collections from API
59
59
  useEffect(() => {