@oxyhq/services 22.9.0 → 22.10.0

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 (428) hide show
  1. package/lib/commonjs/index.js +24 -5
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/ui/components/{OxyAccountDialog.js → OxyAccountDialogScreen.js} +25 -125
  4. package/lib/commonjs/ui/components/OxyAccountDialogScreen.js.map +1 -0
  5. package/lib/commonjs/ui/components/OxyAuthChooser.js +137 -40
  6. package/lib/commonjs/ui/components/OxyAuthChooser.js.map +1 -1
  7. package/lib/commonjs/ui/components/OxyConsentScreen.js +1 -1
  8. package/lib/commonjs/ui/components/ProfileButton.js +1 -1
  9. package/lib/commonjs/ui/components/RequireOxyAuth.js +1 -1
  10. package/lib/commonjs/ui/components/SurfaceHeaderAction.js +63 -0
  11. package/lib/commonjs/ui/components/SurfaceHeaderAction.js.map +1 -0
  12. package/lib/commonjs/ui/components/SurfaceScreen.js +52 -5
  13. package/lib/commonjs/ui/components/SurfaceScreen.js.map +1 -1
  14. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js +46 -29
  15. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  16. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +47 -23
  17. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -1
  18. package/lib/commonjs/ui/components/oxyAuthChooserStyles.js +22 -12
  19. package/lib/commonjs/ui/components/oxyAuthChooserStyles.js.map +1 -1
  20. package/lib/commonjs/ui/components/surfaces/ActionSheetSurface.js +83 -0
  21. package/lib/commonjs/ui/components/surfaces/ActionSheetSurface.js.map +1 -0
  22. package/lib/commonjs/ui/context/OxyContext.js +23 -9
  23. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  24. package/lib/commonjs/ui/hooks/useAvatarPicker.js +34 -39
  25. package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +1 -1
  26. package/lib/commonjs/ui/hooks/useSurfaceHeader.js +46 -0
  27. package/lib/commonjs/ui/hooks/useSurfaceHeader.js.map +1 -0
  28. package/lib/commonjs/ui/hooks/useSwitchableAccounts.js +1 -1
  29. package/lib/commonjs/ui/navigation/accountDialogManager.js +14 -2
  30. package/lib/commonjs/ui/navigation/accountDialogManager.js.map +1 -1
  31. package/lib/commonjs/ui/navigation/routes.js +3 -3
  32. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  33. package/lib/commonjs/ui/navigation/surfaceBackBridge.js +68 -0
  34. package/lib/commonjs/ui/navigation/surfaceBackBridge.js.map +1 -0
  35. package/lib/commonjs/ui/navigation/surfaceRegistry.js +52 -8
  36. package/lib/commonjs/ui/navigation/surfaceRegistry.js.map +1 -1
  37. package/lib/commonjs/ui/navigation/surfaces.js +42 -5
  38. package/lib/commonjs/ui/navigation/surfaces.js.map +1 -1
  39. package/lib/commonjs/ui/screens/AccountMembersScreen.js +214 -283
  40. package/lib/commonjs/ui/screens/AccountMembersScreen.js.map +1 -1
  41. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +88 -118
  42. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  43. package/lib/commonjs/ui/screens/AccountVerificationScreen.js +22 -36
  44. package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
  45. package/lib/commonjs/ui/screens/AppInfoScreen.js +219 -226
  46. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
  47. package/lib/commonjs/ui/screens/AvatarCropScreen.js +10 -14
  48. package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -1
  49. package/lib/commonjs/ui/screens/ConnectedAppsScreen.js +24 -39
  50. package/lib/commonjs/ui/screens/ConnectedAppsScreen.js.map +1 -1
  51. package/lib/commonjs/ui/screens/CreateAccountScreen.js +136 -158
  52. package/lib/commonjs/ui/screens/CreateAccountScreen.js.map +1 -1
  53. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +29 -36
  54. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
  55. package/lib/commonjs/ui/screens/EditProfileScreen.js +101 -109
  56. package/lib/commonjs/ui/screens/EditProfileScreen.js.map +1 -1
  57. package/lib/commonjs/ui/screens/FAQScreen.js +10 -15
  58. package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -1
  59. package/lib/commonjs/ui/screens/FeedbackScreen.js +8 -16
  60. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  61. package/lib/commonjs/ui/screens/FileManagementScreen.js +219 -206
  62. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  63. package/lib/commonjs/ui/screens/HelpSupportScreen.js +62 -69
  64. package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
  65. package/lib/commonjs/ui/screens/HistoryViewScreen.js +63 -79
  66. package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
  67. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +69 -98
  68. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
  69. package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js +8 -14
  70. package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
  71. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +77 -94
  72. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
  73. package/lib/commonjs/ui/screens/ManageAccountScreen.js +99 -134
  74. package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
  75. package/lib/commonjs/ui/screens/NotificationsScreen.js +69 -76
  76. package/lib/commonjs/ui/screens/NotificationsScreen.js.map +1 -1
  77. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +3 -8
  78. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  79. package/lib/commonjs/ui/screens/PreferencesScreen.js +67 -74
  80. package/lib/commonjs/ui/screens/PreferencesScreen.js.map +1 -1
  81. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +55 -91
  82. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  83. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +291 -304
  84. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  85. package/lib/commonjs/ui/screens/ProfileScreen.js +100 -114
  86. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  87. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +38 -45
  88. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  89. package/lib/commonjs/ui/screens/SearchSettingsScreen.js +44 -57
  90. package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
  91. package/lib/commonjs/ui/screens/UserLinksScreen.js +24 -31
  92. package/lib/commonjs/ui/screens/UserLinksScreen.js.map +1 -1
  93. package/lib/commonjs/ui/screens/UserListScreen.js +14 -24
  94. package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
  95. package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js +1 -1
  96. package/lib/commonjs/ui/screens/trust/TrustAboutScreen.js +66 -75
  97. package/lib/commonjs/ui/screens/trust/TrustAboutScreen.js.map +1 -1
  98. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +111 -139
  99. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  100. package/lib/commonjs/ui/screens/trust/TrustFAQScreen.js +13 -20
  101. package/lib/commonjs/ui/screens/trust/TrustFAQScreen.js.map +1 -1
  102. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js +14 -27
  103. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  104. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +68 -85
  105. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  106. package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js +28 -36
  107. package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js.map +1 -1
  108. package/lib/module/index.js +12 -5
  109. package/lib/module/index.js.map +1 -1
  110. package/lib/module/ui/components/{OxyAccountDialog.js → OxyAccountDialogScreen.js} +27 -127
  111. package/lib/module/ui/components/OxyAccountDialogScreen.js.map +1 -0
  112. package/lib/module/ui/components/OxyAuthChooser.js +137 -40
  113. package/lib/module/ui/components/OxyAuthChooser.js.map +1 -1
  114. package/lib/module/ui/components/OxyConsentScreen.js +1 -1
  115. package/lib/module/ui/components/ProfileButton.js +1 -1
  116. package/lib/module/ui/components/RequireOxyAuth.js +1 -1
  117. package/lib/module/ui/components/SurfaceHeaderAction.js +58 -0
  118. package/lib/module/ui/components/SurfaceHeaderAction.js.map +1 -0
  119. package/lib/module/ui/components/SurfaceScreen.js +53 -6
  120. package/lib/module/ui/components/SurfaceScreen.js.map +1 -1
  121. package/lib/module/ui/components/fileManagement/FileDetailsModal.js +46 -29
  122. package/lib/module/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  123. package/lib/module/ui/components/modals/DeleteAccountModal.js +46 -23
  124. package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -1
  125. package/lib/module/ui/components/oxyAuthChooserStyles.js +22 -12
  126. package/lib/module/ui/components/oxyAuthChooserStyles.js.map +1 -1
  127. package/lib/module/ui/components/surfaces/ActionSheetSurface.js +78 -0
  128. package/lib/module/ui/components/surfaces/ActionSheetSurface.js.map +1 -0
  129. package/lib/module/ui/context/OxyContext.js +23 -9
  130. package/lib/module/ui/context/OxyContext.js.map +1 -1
  131. package/lib/module/ui/hooks/useAvatarPicker.js +34 -39
  132. package/lib/module/ui/hooks/useAvatarPicker.js.map +1 -1
  133. package/lib/module/ui/hooks/useSurfaceHeader.js +42 -0
  134. package/lib/module/ui/hooks/useSurfaceHeader.js.map +1 -0
  135. package/lib/module/ui/hooks/useSwitchableAccounts.js +1 -1
  136. package/lib/module/ui/navigation/accountDialogManager.js +14 -2
  137. package/lib/module/ui/navigation/accountDialogManager.js.map +1 -1
  138. package/lib/module/ui/navigation/routes.js +3 -3
  139. package/lib/module/ui/navigation/routes.js.map +1 -1
  140. package/lib/module/ui/navigation/surfaceBackBridge.js +63 -0
  141. package/lib/module/ui/navigation/surfaceBackBridge.js.map +1 -0
  142. package/lib/module/ui/navigation/surfaceRegistry.js +52 -8
  143. package/lib/module/ui/navigation/surfaceRegistry.js.map +1 -1
  144. package/lib/module/ui/navigation/surfaces.js +42 -5
  145. package/lib/module/ui/navigation/surfaces.js.map +1 -1
  146. package/lib/module/ui/screens/AccountMembersScreen.js +218 -286
  147. package/lib/module/ui/screens/AccountMembersScreen.js.map +1 -1
  148. package/lib/module/ui/screens/AccountSettingsScreen.js +92 -121
  149. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  150. package/lib/module/ui/screens/AccountVerificationScreen.js +25 -38
  151. package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
  152. package/lib/module/ui/screens/AppInfoScreen.js +220 -227
  153. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
  154. package/lib/module/ui/screens/AvatarCropScreen.js +10 -14
  155. package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -1
  156. package/lib/module/ui/screens/ConnectedAppsScreen.js +26 -40
  157. package/lib/module/ui/screens/ConnectedAppsScreen.js.map +1 -1
  158. package/lib/module/ui/screens/CreateAccountScreen.js +139 -160
  159. package/lib/module/ui/screens/CreateAccountScreen.js.map +1 -1
  160. package/lib/module/ui/screens/EditProfileFieldScreen.js +32 -38
  161. package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
  162. package/lib/module/ui/screens/EditProfileScreen.js +102 -110
  163. package/lib/module/ui/screens/EditProfileScreen.js.map +1 -1
  164. package/lib/module/ui/screens/FAQScreen.js +11 -15
  165. package/lib/module/ui/screens/FAQScreen.js.map +1 -1
  166. package/lib/module/ui/screens/FeedbackScreen.js +10 -17
  167. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  168. package/lib/module/ui/screens/FileManagementScreen.js +222 -208
  169. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  170. package/lib/module/ui/screens/HelpSupportScreen.js +64 -70
  171. package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
  172. package/lib/module/ui/screens/HistoryViewScreen.js +65 -81
  173. package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
  174. package/lib/module/ui/screens/LanguageSelectorScreen.js +71 -99
  175. package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
  176. package/lib/module/ui/screens/LearnMoreUsernamesScreen.js +10 -15
  177. package/lib/module/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
  178. package/lib/module/ui/screens/LegalDocumentsScreen.js +78 -94
  179. package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
  180. package/lib/module/ui/screens/ManageAccountScreen.js +102 -137
  181. package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
  182. package/lib/module/ui/screens/NotificationsScreen.js +71 -77
  183. package/lib/module/ui/screens/NotificationsScreen.js.map +1 -1
  184. package/lib/module/ui/screens/PaymentGatewayScreen.js +4 -9
  185. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  186. package/lib/module/ui/screens/PreferencesScreen.js +69 -75
  187. package/lib/module/ui/screens/PreferencesScreen.js.map +1 -1
  188. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +58 -93
  189. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  190. package/lib/module/ui/screens/PrivacySettingsScreen.js +293 -305
  191. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  192. package/lib/module/ui/screens/ProfileScreen.js +102 -116
  193. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  194. package/lib/module/ui/screens/SavesCollectionsScreen.js +40 -46
  195. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  196. package/lib/module/ui/screens/SearchSettingsScreen.js +46 -58
  197. package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
  198. package/lib/module/ui/screens/UserLinksScreen.js +26 -32
  199. package/lib/module/ui/screens/UserLinksScreen.js.map +1 -1
  200. package/lib/module/ui/screens/UserListScreen.js +14 -24
  201. package/lib/module/ui/screens/UserListScreen.js.map +1 -1
  202. package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js +1 -1
  203. package/lib/module/ui/screens/trust/TrustAboutScreen.js +67 -75
  204. package/lib/module/ui/screens/trust/TrustAboutScreen.js.map +1 -1
  205. package/lib/module/ui/screens/trust/TrustCenterScreen.js +112 -139
  206. package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  207. package/lib/module/ui/screens/trust/TrustFAQScreen.js +15 -21
  208. package/lib/module/ui/screens/trust/TrustFAQScreen.js.map +1 -1
  209. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js +14 -26
  210. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  211. package/lib/module/ui/screens/trust/TrustRewardsScreen.js +69 -85
  212. package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  213. package/lib/module/ui/screens/trust/TrustRulesScreen.js +30 -37
  214. package/lib/module/ui/screens/trust/TrustRulesScreen.js.map +1 -1
  215. package/lib/typescript/commonjs/index.d.ts +2 -0
  216. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  217. package/lib/typescript/commonjs/ui/components/{OxyAccountDialog.d.ts → OxyAccountDialogScreen.d.ts} +4 -4
  218. package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts.map +1 -0
  219. package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts +3 -3
  220. package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts.map +1 -1
  221. package/lib/typescript/commonjs/ui/components/ProfileButton.d.ts +2 -2
  222. package/lib/typescript/commonjs/ui/components/RequireOxyAuth.d.ts +1 -1
  223. package/lib/typescript/commonjs/ui/components/SurfaceHeaderAction.d.ts +16 -0
  224. package/lib/typescript/commonjs/ui/components/SurfaceHeaderAction.d.ts.map +1 -0
  225. package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts +4 -2
  226. package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts.map +1 -1
  227. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts +14 -4
  228. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  229. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts +17 -2
  230. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  231. package/lib/typescript/commonjs/ui/components/oxyAuthChooserStyles.d.ts +19 -9
  232. package/lib/typescript/commonjs/ui/components/oxyAuthChooserStyles.d.ts.map +1 -1
  233. package/lib/typescript/commonjs/ui/components/surfaces/ActionSheetSurface.d.ts +38 -0
  234. package/lib/typescript/commonjs/ui/components/surfaces/ActionSheetSurface.d.ts.map +1 -0
  235. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  236. package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts +7 -11
  237. package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts.map +1 -1
  238. package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts +31 -0
  239. package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts.map +1 -0
  240. package/lib/typescript/commonjs/ui/hooks/useSwitchableAccounts.d.ts +1 -1
  241. package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts +14 -2
  242. package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts.map +1 -1
  243. package/lib/typescript/commonjs/ui/navigation/surfaceBackBridge.d.ts +16 -0
  244. package/lib/typescript/commonjs/ui/navigation/surfaceBackBridge.d.ts.map +1 -0
  245. package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts +31 -13
  246. package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts.map +1 -1
  247. package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts.map +1 -1
  248. package/lib/typescript/commonjs/ui/screens/AccountMembersScreen.d.ts.map +1 -1
  249. package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  250. package/lib/typescript/commonjs/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  251. package/lib/typescript/commonjs/ui/screens/AppInfoScreen.d.ts.map +1 -1
  252. package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts +0 -4
  253. package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts.map +1 -1
  254. package/lib/typescript/commonjs/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
  255. package/lib/typescript/commonjs/ui/screens/CreateAccountScreen.d.ts.map +1 -1
  256. package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  257. package/lib/typescript/commonjs/ui/screens/EditProfileScreen.d.ts.map +1 -1
  258. package/lib/typescript/commonjs/ui/screens/FAQScreen.d.ts.map +1 -1
  259. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
  260. package/lib/typescript/commonjs/ui/screens/FileManagementScreen.d.ts.map +1 -1
  261. package/lib/typescript/commonjs/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  262. package/lib/typescript/commonjs/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  263. package/lib/typescript/commonjs/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  264. package/lib/typescript/commonjs/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
  265. package/lib/typescript/commonjs/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  266. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts +1 -1
  267. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  268. package/lib/typescript/commonjs/ui/screens/NotificationsScreen.d.ts.map +1 -1
  269. package/lib/typescript/commonjs/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  270. package/lib/typescript/commonjs/ui/screens/PreferencesScreen.d.ts.map +1 -1
  271. package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  272. package/lib/typescript/commonjs/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  273. package/lib/typescript/commonjs/ui/screens/ProfileScreen.d.ts.map +1 -1
  274. package/lib/typescript/commonjs/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  275. package/lib/typescript/commonjs/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  276. package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts.map +1 -1
  277. package/lib/typescript/commonjs/ui/screens/UserListScreen.d.ts.map +1 -1
  278. package/lib/typescript/commonjs/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
  279. package/lib/typescript/commonjs/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  280. package/lib/typescript/commonjs/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
  281. package/lib/typescript/commonjs/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
  282. package/lib/typescript/commonjs/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  283. package/lib/typescript/commonjs/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  284. package/lib/typescript/commonjs/ui/types/navigation.d.ts +8 -0
  285. package/lib/typescript/commonjs/ui/types/navigation.d.ts.map +1 -1
  286. package/lib/typescript/module/index.d.ts +2 -0
  287. package/lib/typescript/module/index.d.ts.map +1 -1
  288. package/lib/typescript/module/ui/components/{OxyAccountDialog.d.ts → OxyAccountDialogScreen.d.ts} +4 -4
  289. package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts.map +1 -0
  290. package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts +3 -3
  291. package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts.map +1 -1
  292. package/lib/typescript/module/ui/components/ProfileButton.d.ts +2 -2
  293. package/lib/typescript/module/ui/components/RequireOxyAuth.d.ts +1 -1
  294. package/lib/typescript/module/ui/components/SurfaceHeaderAction.d.ts +16 -0
  295. package/lib/typescript/module/ui/components/SurfaceHeaderAction.d.ts.map +1 -0
  296. package/lib/typescript/module/ui/components/SurfaceScreen.d.ts +4 -2
  297. package/lib/typescript/module/ui/components/SurfaceScreen.d.ts.map +1 -1
  298. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts +14 -4
  299. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  300. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts +17 -2
  301. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  302. package/lib/typescript/module/ui/components/oxyAuthChooserStyles.d.ts +19 -9
  303. package/lib/typescript/module/ui/components/oxyAuthChooserStyles.d.ts.map +1 -1
  304. package/lib/typescript/module/ui/components/surfaces/ActionSheetSurface.d.ts +38 -0
  305. package/lib/typescript/module/ui/components/surfaces/ActionSheetSurface.d.ts.map +1 -0
  306. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  307. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts +7 -11
  308. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts.map +1 -1
  309. package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts +31 -0
  310. package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts.map +1 -0
  311. package/lib/typescript/module/ui/hooks/useSwitchableAccounts.d.ts +1 -1
  312. package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts +14 -2
  313. package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts.map +1 -1
  314. package/lib/typescript/module/ui/navigation/surfaceBackBridge.d.ts +16 -0
  315. package/lib/typescript/module/ui/navigation/surfaceBackBridge.d.ts.map +1 -0
  316. package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts +31 -13
  317. package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts.map +1 -1
  318. package/lib/typescript/module/ui/navigation/surfaces.d.ts.map +1 -1
  319. package/lib/typescript/module/ui/screens/AccountMembersScreen.d.ts.map +1 -1
  320. package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  321. package/lib/typescript/module/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  322. package/lib/typescript/module/ui/screens/AppInfoScreen.d.ts.map +1 -1
  323. package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts +0 -4
  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/CreateAccountScreen.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/EditProfileScreen.d.ts.map +1 -1
  329. package/lib/typescript/module/ui/screens/FAQScreen.d.ts.map +1 -1
  330. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
  331. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
  332. package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  333. package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  334. package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  335. package/lib/typescript/module/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
  336. package/lib/typescript/module/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  337. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts +1 -1
  338. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  339. package/lib/typescript/module/ui/screens/NotificationsScreen.d.ts.map +1 -1
  340. package/lib/typescript/module/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  341. package/lib/typescript/module/ui/screens/PreferencesScreen.d.ts.map +1 -1
  342. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  343. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  344. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
  345. package/lib/typescript/module/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  346. package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  347. package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +1 -1
  348. package/lib/typescript/module/ui/screens/UserListScreen.d.ts.map +1 -1
  349. package/lib/typescript/module/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
  350. package/lib/typescript/module/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  351. package/lib/typescript/module/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
  352. package/lib/typescript/module/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
  353. package/lib/typescript/module/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  354. package/lib/typescript/module/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  355. package/lib/typescript/module/ui/types/navigation.d.ts +8 -0
  356. package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
  357. package/package.json +2 -2
  358. package/src/index.ts +12 -5
  359. package/src/ui/components/{OxyAccountDialog.tsx → OxyAccountDialogScreen.tsx} +21 -110
  360. package/src/ui/components/OxyAuthChooser.tsx +153 -33
  361. package/src/ui/components/OxyConsentScreen.tsx +1 -1
  362. package/src/ui/components/ProfileButton.tsx +2 -2
  363. package/src/ui/components/RequireOxyAuth.tsx +1 -1
  364. package/src/ui/components/SurfaceHeaderAction.tsx +60 -0
  365. package/src/ui/components/SurfaceScreen.tsx +66 -6
  366. package/src/ui/components/fileManagement/FileDetailsModal.tsx +50 -36
  367. package/src/ui/components/modals/DeleteAccountModal.tsx +47 -26
  368. package/src/ui/components/oxyAuthChooserStyles.ts +22 -12
  369. package/src/ui/components/surfaces/ActionSheetSurface.tsx +98 -0
  370. package/src/ui/context/OxyContext.tsx +22 -8
  371. package/src/ui/hooks/useAvatarPicker.ts +53 -66
  372. package/src/ui/hooks/useSurfaceHeader.ts +56 -0
  373. package/src/ui/hooks/useSwitchableAccounts.ts +1 -1
  374. package/src/ui/navigation/__tests__/surfaceNavStack.test.ts +68 -0
  375. package/src/ui/navigation/accountDialogManager.ts +14 -2
  376. package/src/ui/navigation/routes.ts +3 -3
  377. package/src/ui/navigation/surfaceBackBridge.ts +69 -0
  378. package/src/ui/navigation/surfaceRegistry.ts +80 -14
  379. package/src/ui/navigation/surfaces.ts +33 -5
  380. package/src/ui/screens/AccountMembersScreen.tsx +39 -100
  381. package/src/ui/screens/AccountSettingsScreen.tsx +32 -54
  382. package/src/ui/screens/AccountVerificationScreen.tsx +23 -51
  383. package/src/ui/screens/AppInfoScreen.tsx +6 -13
  384. package/src/ui/screens/AvatarCropScreen.tsx +8 -17
  385. package/src/ui/screens/ConnectedAppsScreen.tsx +39 -60
  386. package/src/ui/screens/CreateAccountScreen.tsx +13 -39
  387. package/src/ui/screens/EditProfileFieldScreen.tsx +30 -48
  388. package/src/ui/screens/EditProfileScreen.tsx +7 -16
  389. package/src/ui/screens/FAQScreen.tsx +9 -13
  390. package/src/ui/screens/FeedbackScreen.tsx +8 -22
  391. package/src/ui/screens/FileManagementScreen.tsx +191 -188
  392. package/src/ui/screens/HelpSupportScreen.tsx +7 -13
  393. package/src/ui/screens/HistoryViewScreen.tsx +26 -31
  394. package/src/ui/screens/LanguageSelectorScreen.tsx +12 -46
  395. package/src/ui/screens/LearnMoreUsernamesScreen.tsx +8 -16
  396. package/src/ui/screens/LegalDocumentsScreen.tsx +7 -22
  397. package/src/ui/screens/ManageAccountScreen.tsx +96 -165
  398. package/src/ui/screens/NotificationsScreen.tsx +7 -13
  399. package/src/ui/screens/PaymentGatewayScreen.tsx +3 -10
  400. package/src/ui/screens/PreferencesScreen.tsx +7 -13
  401. package/src/ui/screens/PremiumSubscriptionScreen.tsx +52 -90
  402. package/src/ui/screens/PrivacySettingsScreen.tsx +9 -21
  403. package/src/ui/screens/ProfileScreen.tsx +9 -11
  404. package/src/ui/screens/SavesCollectionsScreen.tsx +7 -13
  405. package/src/ui/screens/SearchSettingsScreen.tsx +9 -21
  406. package/src/ui/screens/UserLinksScreen.tsx +7 -14
  407. package/src/ui/screens/UserListScreen.tsx +2 -5
  408. package/src/ui/screens/fileManagement/PhotoPickerSection.tsx +1 -1
  409. package/src/ui/screens/trust/TrustAboutScreen.tsx +10 -17
  410. package/src/ui/screens/trust/TrustCenterScreen.tsx +9 -28
  411. package/src/ui/screens/trust/TrustFAQScreen.tsx +15 -18
  412. package/src/ui/screens/trust/TrustLeaderboardScreen.tsx +3 -5
  413. package/src/ui/screens/trust/TrustRewardsScreen.tsx +11 -26
  414. package/src/ui/screens/trust/TrustRulesScreen.tsx +10 -13
  415. package/src/ui/types/navigation.ts +8 -0
  416. package/lib/commonjs/ui/components/Header.js +0 -305
  417. package/lib/commonjs/ui/components/Header.js.map +0 -1
  418. package/lib/commonjs/ui/components/OxyAccountDialog.js.map +0 -1
  419. package/lib/module/ui/components/Header.js +0 -299
  420. package/lib/module/ui/components/Header.js.map +0 -1
  421. package/lib/module/ui/components/OxyAccountDialog.js.map +0 -1
  422. package/lib/typescript/commonjs/ui/components/Header.d.ts +0 -33
  423. package/lib/typescript/commonjs/ui/components/Header.d.ts.map +0 -1
  424. package/lib/typescript/commonjs/ui/components/OxyAccountDialog.d.ts.map +0 -1
  425. package/lib/typescript/module/ui/components/Header.d.ts +0 -33
  426. package/lib/typescript/module/ui/components/Header.d.ts.map +0 -1
  427. package/lib/typescript/module/ui/components/OxyAccountDialog.d.ts.map +0 -1
  428. package/src/ui/components/Header.tsx +0 -224
@@ -1,22 +1,22 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { useState, useCallback, useEffect } from 'react';
4
- import { View, ScrollView } from 'react-native';
4
+ import { View } from 'react-native';
5
5
  import { toast } from '@oxyhq/bloom';
6
6
  import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
7
7
  import { Switch } from '@oxyhq/bloom/switch';
8
8
  import { Button } from '@oxyhq/bloom/button';
9
9
  import { useTheme } from '@oxyhq/bloom/theme';
10
- import Header from "../components/Header.js";
11
10
  import { Avatar } from '@oxyhq/bloom/avatar';
12
11
  import { Loading } from '@oxyhq/bloom/loading';
13
12
  import { Text } from '@oxyhq/bloom/typography';
14
13
  import { SettingsIcon } from "../components/SettingsIcon.js";
15
14
  import { useI18n } from "../hooks/useI18n.js";
15
+ import { useSurfaceHeader } from "../hooks/useSurfaceHeader.js";
16
16
  import { useSettingToggles } from "../hooks/useSettingToggle.js";
17
17
  import { getAccountDisplayName } from '@oxyhq/core';
18
18
  import { useOxy } from "../context/OxyContext.js";
19
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
19
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
20
20
  const DEFAULT_PRIVACY_SETTINGS = {
21
21
  isPrivateAccount: false,
22
22
  hideOnlineStatus: false,
@@ -52,6 +52,9 @@ const PrivacySettingsScreen = ({
52
52
  t,
53
53
  locale
54
54
  } = useI18n();
55
+ useSurfaceHeader({
56
+ title: t('privacySettings.title') || 'Privacy Settings'
57
+ });
55
58
  const bloomTheme = useTheme();
56
59
  const [isLoading, setIsLoading] = useState(true);
57
60
  const [blockedUsers, setBlockedUsers] = useState([]);
@@ -192,316 +195,301 @@ const PrivacySettingsScreen = ({
192
195
  };
193
196
  }, [locale]);
194
197
  if (isLoading) {
195
- return /*#__PURE__*/_jsxs(View, {
196
- className: "flex-1 bg-bg",
197
- children: [/*#__PURE__*/_jsx(Header, {
198
- title: t('privacySettings.title') || 'Privacy Settings',
199
- onBack: goBack || onClose,
200
- variant: "minimal",
201
- elevation: "subtle"
202
- }), /*#__PURE__*/_jsx(Loading, {
198
+ return /*#__PURE__*/_jsx(_Fragment, {
199
+ children: /*#__PURE__*/_jsx(Loading, {
203
200
  size: "large",
204
201
  color: bloomTheme.colors.text
205
- })]
202
+ })
206
203
  });
207
204
  }
208
- return /*#__PURE__*/_jsxs(View, {
209
- className: "flex-1 bg-bg",
210
- children: [/*#__PURE__*/_jsx(Header, {
211
- title: t('privacySettings.title') || 'Privacy Settings',
212
- onBack: goBack || onClose,
213
- variant: "minimal",
214
- elevation: "subtle"
215
- }), /*#__PURE__*/_jsx(ScrollView, {
216
- className: "flex-1",
217
- children: /*#__PURE__*/_jsxs(View, {
218
- className: "px-screen-margin pb-space-24",
219
- children: [/*#__PURE__*/_jsxs(SettingsListGroup, {
220
- title: t('privacySettings.sections.account') || 'ACCOUNT PRIVACY',
221
- children: [/*#__PURE__*/_jsx(SettingsListItem, {
222
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
223
- name: "lock-outline",
224
- color: bloomTheme.colors.primary
225
- }),
226
- title: t('privacySettings.isPrivateAccount') || 'Private Account',
227
- description: t('privacySettings.isPrivateAccountDesc') || 'Only approved followers can see your posts',
228
- rightElement: /*#__PURE__*/_jsx(Switch, {
229
- value: settings.isPrivateAccount,
230
- onValueChange: () => toggle('isPrivateAccount'),
231
- disabled: isSaving
232
- }),
233
- showChevron: false
234
- }), /*#__PURE__*/_jsx(SettingsListItem, {
235
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
236
- name: "account-eye-outline",
237
- color: bloomTheme.colors.info
238
- }),
239
- title: t('privacySettings.profileVisibility') || 'Profile Visibility',
240
- description: t('privacySettings.profileVisibilityDesc') || 'Control who can view your profile',
241
- rightElement: /*#__PURE__*/_jsx(Switch, {
242
- value: settings.profileVisibility,
243
- onValueChange: () => toggle('profileVisibility'),
244
- disabled: isSaving
245
- }),
246
- showChevron: false
247
- }), /*#__PURE__*/_jsx(SettingsListItem, {
248
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
249
- name: "circle-outline",
250
- color: bloomTheme.colors.success
251
- }),
252
- title: t('privacySettings.hideOnlineStatus') || 'Hide Online Status',
253
- description: t('privacySettings.hideOnlineStatusDesc') || 'Don\'t show when you\'re online',
254
- rightElement: /*#__PURE__*/_jsx(Switch, {
255
- value: settings.hideOnlineStatus,
256
- onValueChange: () => toggle('hideOnlineStatus'),
257
- disabled: isSaving
258
- }),
259
- showChevron: false
260
- }), /*#__PURE__*/_jsx(SettingsListItem, {
261
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
262
- name: "clock-outline",
263
- color: bloomTheme.colors.secondary
264
- }),
265
- title: t('privacySettings.hideLastSeen') || 'Hide Last Seen',
266
- description: t('privacySettings.hideLastSeenDesc') || 'Don\'t show when you were last active',
267
- rightElement: /*#__PURE__*/_jsx(Switch, {
268
- value: settings.hideLastSeen,
269
- onValueChange: () => toggle('hideLastSeen'),
270
- disabled: isSaving
271
- }),
272
- showChevron: false
273
- })]
274
- }), /*#__PURE__*/_jsxs(SettingsListGroup, {
275
- title: t('privacySettings.sections.interactions') || 'INTERACTIONS',
276
- children: [/*#__PURE__*/_jsx(SettingsListItem, {
277
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
278
- name: "tag-outline",
279
- color: bloomTheme.colors.primary
280
- }),
281
- title: t('privacySettings.allowTagging') || 'Allow Tagging',
282
- description: t('privacySettings.allowTaggingDesc') || 'Let others tag you in posts',
283
- rightElement: /*#__PURE__*/_jsx(Switch, {
284
- value: settings.allowTagging,
285
- onValueChange: () => toggle('allowTagging'),
286
- disabled: isSaving
287
- }),
288
- showChevron: false
289
- }), /*#__PURE__*/_jsx(SettingsListItem, {
290
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
291
- name: "at",
292
- color: bloomTheme.colors.info
293
- }),
294
- title: t('privacySettings.allowMentions') || 'Allow Mentions',
295
- description: t('privacySettings.allowMentionsDesc') || 'Let others mention you',
296
- rightElement: /*#__PURE__*/_jsx(Switch, {
297
- value: settings.allowMentions,
298
- onValueChange: () => toggle('allowMentions'),
299
- disabled: isSaving
300
- }),
301
- showChevron: false
302
- }), /*#__PURE__*/_jsx(SettingsListItem, {
303
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
304
- name: "message-outline",
305
- color: bloomTheme.colors.success
306
- }),
307
- title: t('privacySettings.allowDirectMessages') || 'Allow Direct Messages',
308
- description: t('privacySettings.allowDirectMessagesDesc') || 'Let others send you direct messages',
309
- rightElement: /*#__PURE__*/_jsx(Switch, {
310
- value: settings.allowDirectMessages,
311
- onValueChange: () => toggle('allowDirectMessages'),
312
- disabled: isSaving
313
- }),
314
- showChevron: false
315
- }), /*#__PURE__*/_jsx(SettingsListItem, {
316
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
317
- name: "check-all",
318
- color: bloomTheme.colors.secondary
319
- }),
320
- title: t('privacySettings.hideReadReceipts') || 'Hide Read Receipts',
321
- description: t('privacySettings.hideReadReceiptsDesc') || 'Don\'t show read receipts in messages',
322
- rightElement: /*#__PURE__*/_jsx(Switch, {
323
- value: settings.hideReadReceipts,
324
- onValueChange: () => toggle('hideReadReceipts'),
325
- disabled: isSaving
326
- }),
327
- showChevron: false
328
- })]
329
- }), /*#__PURE__*/_jsxs(SettingsListGroup, {
330
- title: t('privacySettings.sections.activity') || 'ACTIVITY & DATA',
331
- children: [/*#__PURE__*/_jsx(SettingsListItem, {
332
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
333
- name: "pulse",
334
- color: bloomTheme.colors.primary
335
- }),
336
- title: t('privacySettings.showActivity') || 'Show Activity Status',
337
- description: t('privacySettings.showActivityDesc') || 'Display your activity on your profile',
338
- rightElement: /*#__PURE__*/_jsx(Switch, {
339
- value: settings.showActivity,
340
- onValueChange: () => toggle('showActivity'),
341
- disabled: isSaving
342
- }),
343
- showChevron: false
344
- }), /*#__PURE__*/_jsx(SettingsListItem, {
345
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
346
- name: "database-outline",
347
- color: bloomTheme.colors.info
348
- }),
349
- title: t('privacySettings.dataSharing') || 'Data Sharing',
350
- description: t('privacySettings.dataSharingDesc') || 'Allow sharing data for personalization',
351
- rightElement: /*#__PURE__*/_jsx(Switch, {
352
- value: settings.dataSharing,
353
- onValueChange: () => toggle('dataSharing'),
354
- disabled: isSaving
355
- }),
356
- showChevron: false
357
- }), /*#__PURE__*/_jsx(SettingsListItem, {
358
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
359
- name: "map-marker-outline",
360
- color: bloomTheme.colors.warning
361
- }),
362
- title: t('privacySettings.locationSharing') || 'Location Sharing',
363
- description: t('privacySettings.locationSharingDesc') || 'Share your location',
364
- rightElement: /*#__PURE__*/_jsx(Switch, {
365
- value: settings.locationSharing,
366
- onValueChange: () => toggle('locationSharing'),
367
- disabled: isSaving
368
- }),
369
- showChevron: false
370
- }), /*#__PURE__*/_jsx(SettingsListItem, {
371
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
372
- name: "chart-line",
373
- color: bloomTheme.colors.secondary
374
- }),
375
- title: t('privacySettings.analyticsSharing') || 'Analytics Sharing',
376
- description: t('privacySettings.analyticsSharingDesc') || 'Allow analytics data collection',
377
- rightElement: /*#__PURE__*/_jsx(Switch, {
378
- value: settings.analyticsSharing,
379
- onValueChange: () => toggle('analyticsSharing'),
380
- disabled: isSaving
381
- }),
382
- showChevron: false
383
- })]
384
- }), /*#__PURE__*/_jsxs(SettingsListGroup, {
385
- title: t('privacySettings.sections.content') || 'CONTENT & SAFETY',
386
- children: [/*#__PURE__*/_jsx(SettingsListItem, {
387
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
388
- name: "eye-off-outline",
389
- color: bloomTheme.colors.warning
390
- }),
391
- title: t('privacySettings.sensitiveContent') || 'Show Sensitive Content',
392
- description: t('privacySettings.sensitiveContentDesc') || 'Allow sensitive or explicit content',
393
- rightElement: /*#__PURE__*/_jsx(Switch, {
394
- value: settings.sensitiveContent,
395
- onValueChange: () => toggle('sensitiveContent'),
396
- disabled: isSaving
397
- }),
398
- showChevron: false
399
- }), /*#__PURE__*/_jsx(SettingsListItem, {
400
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
401
- name: "filter-outline",
402
- color: bloomTheme.colors.success
403
- }),
404
- title: t('privacySettings.autoFilter') || 'Auto Filter',
405
- description: t('privacySettings.autoFilterDesc') || 'Automatically filter inappropriate content',
406
- rightElement: /*#__PURE__*/_jsx(Switch, {
407
- value: settings.autoFilter,
408
- onValueChange: () => toggle('autoFilter'),
409
- disabled: isSaving
410
- }),
411
- showChevron: false
412
- }), /*#__PURE__*/_jsx(SettingsListItem, {
413
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
414
- name: "volume-off",
415
- color: bloomTheme.colors.info
416
- }),
417
- title: t('privacySettings.muteKeywords') || 'Mute Keywords',
418
- description: t('privacySettings.muteKeywordsDesc') || 'Hide posts containing muted keywords',
419
- rightElement: /*#__PURE__*/_jsx(Switch, {
420
- value: settings.muteKeywords,
421
- onValueChange: () => toggle('muteKeywords'),
422
- disabled: isSaving
205
+ return /*#__PURE__*/_jsx(_Fragment, {
206
+ children: /*#__PURE__*/_jsxs(View, {
207
+ className: "px-screen-margin pb-space-24",
208
+ children: [/*#__PURE__*/_jsxs(SettingsListGroup, {
209
+ title: t('privacySettings.sections.account') || 'ACCOUNT PRIVACY',
210
+ children: [/*#__PURE__*/_jsx(SettingsListItem, {
211
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
212
+ name: "lock-outline",
213
+ color: bloomTheme.colors.primary
214
+ }),
215
+ title: t('privacySettings.isPrivateAccount') || 'Private Account',
216
+ description: t('privacySettings.isPrivateAccountDesc') || 'Only approved followers can see your posts',
217
+ rightElement: /*#__PURE__*/_jsx(Switch, {
218
+ value: settings.isPrivateAccount,
219
+ onValueChange: () => toggle('isPrivateAccount'),
220
+ disabled: isSaving
221
+ }),
222
+ showChevron: false
223
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
224
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
225
+ name: "account-eye-outline",
226
+ color: bloomTheme.colors.info
227
+ }),
228
+ title: t('privacySettings.profileVisibility') || 'Profile Visibility',
229
+ description: t('privacySettings.profileVisibilityDesc') || 'Control who can view your profile',
230
+ rightElement: /*#__PURE__*/_jsx(Switch, {
231
+ value: settings.profileVisibility,
232
+ onValueChange: () => toggle('profileVisibility'),
233
+ disabled: isSaving
234
+ }),
235
+ showChevron: false
236
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
237
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
238
+ name: "circle-outline",
239
+ color: bloomTheme.colors.success
240
+ }),
241
+ title: t('privacySettings.hideOnlineStatus') || 'Hide Online Status',
242
+ description: t('privacySettings.hideOnlineStatusDesc') || 'Don\'t show when you\'re online',
243
+ rightElement: /*#__PURE__*/_jsx(Switch, {
244
+ value: settings.hideOnlineStatus,
245
+ onValueChange: () => toggle('hideOnlineStatus'),
246
+ disabled: isSaving
247
+ }),
248
+ showChevron: false
249
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
250
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
251
+ name: "clock-outline",
252
+ color: bloomTheme.colors.secondary
253
+ }),
254
+ title: t('privacySettings.hideLastSeen') || 'Hide Last Seen',
255
+ description: t('privacySettings.hideLastSeenDesc') || 'Don\'t show when you were last active',
256
+ rightElement: /*#__PURE__*/_jsx(Switch, {
257
+ value: settings.hideLastSeen,
258
+ onValueChange: () => toggle('hideLastSeen'),
259
+ disabled: isSaving
260
+ }),
261
+ showChevron: false
262
+ })]
263
+ }), /*#__PURE__*/_jsxs(SettingsListGroup, {
264
+ title: t('privacySettings.sections.interactions') || 'INTERACTIONS',
265
+ children: [/*#__PURE__*/_jsx(SettingsListItem, {
266
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
267
+ name: "tag-outline",
268
+ color: bloomTheme.colors.primary
269
+ }),
270
+ title: t('privacySettings.allowTagging') || 'Allow Tagging',
271
+ description: t('privacySettings.allowTaggingDesc') || 'Let others tag you in posts',
272
+ rightElement: /*#__PURE__*/_jsx(Switch, {
273
+ value: settings.allowTagging,
274
+ onValueChange: () => toggle('allowTagging'),
275
+ disabled: isSaving
276
+ }),
277
+ showChevron: false
278
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
279
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
280
+ name: "at",
281
+ color: bloomTheme.colors.info
282
+ }),
283
+ title: t('privacySettings.allowMentions') || 'Allow Mentions',
284
+ description: t('privacySettings.allowMentionsDesc') || 'Let others mention you',
285
+ rightElement: /*#__PURE__*/_jsx(Switch, {
286
+ value: settings.allowMentions,
287
+ onValueChange: () => toggle('allowMentions'),
288
+ disabled: isSaving
289
+ }),
290
+ showChevron: false
291
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
292
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
293
+ name: "message-outline",
294
+ color: bloomTheme.colors.success
295
+ }),
296
+ title: t('privacySettings.allowDirectMessages') || 'Allow Direct Messages',
297
+ description: t('privacySettings.allowDirectMessagesDesc') || 'Let others send you direct messages',
298
+ rightElement: /*#__PURE__*/_jsx(Switch, {
299
+ value: settings.allowDirectMessages,
300
+ onValueChange: () => toggle('allowDirectMessages'),
301
+ disabled: isSaving
302
+ }),
303
+ showChevron: false
304
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
305
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
306
+ name: "check-all",
307
+ color: bloomTheme.colors.secondary
308
+ }),
309
+ title: t('privacySettings.hideReadReceipts') || 'Hide Read Receipts',
310
+ description: t('privacySettings.hideReadReceiptsDesc') || 'Don\'t show read receipts in messages',
311
+ rightElement: /*#__PURE__*/_jsx(Switch, {
312
+ value: settings.hideReadReceipts,
313
+ onValueChange: () => toggle('hideReadReceipts'),
314
+ disabled: isSaving
315
+ }),
316
+ showChevron: false
317
+ })]
318
+ }), /*#__PURE__*/_jsxs(SettingsListGroup, {
319
+ title: t('privacySettings.sections.activity') || 'ACTIVITY & DATA',
320
+ children: [/*#__PURE__*/_jsx(SettingsListItem, {
321
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
322
+ name: "pulse",
323
+ color: bloomTheme.colors.primary
324
+ }),
325
+ title: t('privacySettings.showActivity') || 'Show Activity Status',
326
+ description: t('privacySettings.showActivityDesc') || 'Display your activity on your profile',
327
+ rightElement: /*#__PURE__*/_jsx(Switch, {
328
+ value: settings.showActivity,
329
+ onValueChange: () => toggle('showActivity'),
330
+ disabled: isSaving
331
+ }),
332
+ showChevron: false
333
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
334
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
335
+ name: "database-outline",
336
+ color: bloomTheme.colors.info
337
+ }),
338
+ title: t('privacySettings.dataSharing') || 'Data Sharing',
339
+ description: t('privacySettings.dataSharingDesc') || 'Allow sharing data for personalization',
340
+ rightElement: /*#__PURE__*/_jsx(Switch, {
341
+ value: settings.dataSharing,
342
+ onValueChange: () => toggle('dataSharing'),
343
+ disabled: isSaving
344
+ }),
345
+ showChevron: false
346
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
347
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
348
+ name: "map-marker-outline",
349
+ color: bloomTheme.colors.warning
350
+ }),
351
+ title: t('privacySettings.locationSharing') || 'Location Sharing',
352
+ description: t('privacySettings.locationSharingDesc') || 'Share your location',
353
+ rightElement: /*#__PURE__*/_jsx(Switch, {
354
+ value: settings.locationSharing,
355
+ onValueChange: () => toggle('locationSharing'),
356
+ disabled: isSaving
357
+ }),
358
+ showChevron: false
359
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
360
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
361
+ name: "chart-line",
362
+ color: bloomTheme.colors.secondary
363
+ }),
364
+ title: t('privacySettings.analyticsSharing') || 'Analytics Sharing',
365
+ description: t('privacySettings.analyticsSharingDesc') || 'Allow analytics data collection',
366
+ rightElement: /*#__PURE__*/_jsx(Switch, {
367
+ value: settings.analyticsSharing,
368
+ onValueChange: () => toggle('analyticsSharing'),
369
+ disabled: isSaving
370
+ }),
371
+ showChevron: false
372
+ })]
373
+ }), /*#__PURE__*/_jsxs(SettingsListGroup, {
374
+ title: t('privacySettings.sections.content') || 'CONTENT & SAFETY',
375
+ children: [/*#__PURE__*/_jsx(SettingsListItem, {
376
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
377
+ name: "eye-off-outline",
378
+ color: bloomTheme.colors.warning
379
+ }),
380
+ title: t('privacySettings.sensitiveContent') || 'Show Sensitive Content',
381
+ description: t('privacySettings.sensitiveContentDesc') || 'Allow sensitive or explicit content',
382
+ rightElement: /*#__PURE__*/_jsx(Switch, {
383
+ value: settings.sensitiveContent,
384
+ onValueChange: () => toggle('sensitiveContent'),
385
+ disabled: isSaving
386
+ }),
387
+ showChevron: false
388
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
389
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
390
+ name: "filter-outline",
391
+ color: bloomTheme.colors.success
392
+ }),
393
+ title: t('privacySettings.autoFilter') || 'Auto Filter',
394
+ description: t('privacySettings.autoFilterDesc') || 'Automatically filter inappropriate content',
395
+ rightElement: /*#__PURE__*/_jsx(Switch, {
396
+ value: settings.autoFilter,
397
+ onValueChange: () => toggle('autoFilter'),
398
+ disabled: isSaving
399
+ }),
400
+ showChevron: false
401
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
402
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
403
+ name: "volume-off",
404
+ color: bloomTheme.colors.info
405
+ }),
406
+ title: t('privacySettings.muteKeywords') || 'Mute Keywords',
407
+ description: t('privacySettings.muteKeywordsDesc') || 'Hide posts containing muted keywords',
408
+ rightElement: /*#__PURE__*/_jsx(Switch, {
409
+ value: settings.muteKeywords,
410
+ onValueChange: () => toggle('muteKeywords'),
411
+ disabled: isSaving
412
+ }),
413
+ showChevron: false
414
+ }), /*#__PURE__*/_jsx(SettingsListItem, {
415
+ icon: /*#__PURE__*/_jsx(SettingsIcon, {
416
+ name: "cellphone-screenshot",
417
+ color: bloomTheme.colors.secondary
418
+ }),
419
+ title: t('privacySettings.blockScreenshots') || 'Block Screenshots',
420
+ description: t('privacySettings.blockScreenshotsDesc') || 'Prevent screenshots of your content',
421
+ rightElement: /*#__PURE__*/_jsx(Switch, {
422
+ value: settings.blockScreenshots,
423
+ onValueChange: () => toggle('blockScreenshots'),
424
+ disabled: isSaving
425
+ }),
426
+ showChevron: false
427
+ })]
428
+ }), /*#__PURE__*/_jsx(SettingsListGroup, {
429
+ title: t('privacySettings.sections.blockedUsers') || 'BLOCKED USERS',
430
+ children: isLoadingUsers ? /*#__PURE__*/_jsx(Loading, {
431
+ size: "small",
432
+ color: bloomTheme.colors.text
433
+ }) : blockedUsers.length === 0 ? /*#__PURE__*/_jsx(Text, {
434
+ className: "text-text-secondary text-center p-space-40",
435
+ children: t('privacySettings.noBlockedUsers') || 'No blocked users'
436
+ }) : blockedUsers.map(blocked => {
437
+ const {
438
+ userId,
439
+ displayName,
440
+ avatar
441
+ } = extractUserInfo(blocked, 'blockedId');
442
+ const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
443
+ return /*#__PURE__*/_jsx(SettingsListItem, {
444
+ icon: /*#__PURE__*/_jsx(Avatar, {
445
+ source: avatarUri,
446
+ name: displayName,
447
+ size: 20
448
+ }),
449
+ title: displayName,
450
+ rightElement: /*#__PURE__*/_jsx(Button, {
451
+ variant: "destructive",
452
+ size: "small",
453
+ onPress: () => handleUnblock(userId),
454
+ children: t('privacySettings.unblock') || 'Unblock'
423
455
  }),
424
456
  showChevron: false
425
- }), /*#__PURE__*/_jsx(SettingsListItem, {
426
- icon: /*#__PURE__*/_jsx(SettingsIcon, {
427
- name: "cellphone-screenshot",
428
- color: bloomTheme.colors.secondary
429
- }),
430
- title: t('privacySettings.blockScreenshots') || 'Block Screenshots',
431
- description: t('privacySettings.blockScreenshotsDesc') || 'Prevent screenshots of your content',
432
- rightElement: /*#__PURE__*/_jsx(Switch, {
433
- value: settings.blockScreenshots,
434
- onValueChange: () => toggle('blockScreenshots'),
435
- disabled: isSaving
457
+ }, userId);
458
+ })
459
+ }), /*#__PURE__*/_jsx(SettingsListGroup, {
460
+ title: t('privacySettings.sections.restrictedUsers') || 'RESTRICTED USERS',
461
+ children: isLoadingUsers ? /*#__PURE__*/_jsx(Loading, {
462
+ size: "small",
463
+ color: bloomTheme.colors.text
464
+ }) : restrictedUsers.length === 0 ? /*#__PURE__*/_jsx(Text, {
465
+ className: "text-text-secondary text-center p-space-40",
466
+ children: t('privacySettings.noRestrictedUsers') || 'No restricted users'
467
+ }) : restrictedUsers.map(restricted => {
468
+ const {
469
+ userId,
470
+ displayName,
471
+ avatar
472
+ } = extractUserInfo(restricted, 'restrictedId');
473
+ const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
474
+ return /*#__PURE__*/_jsx(SettingsListItem, {
475
+ icon: /*#__PURE__*/_jsx(Avatar, {
476
+ source: avatarUri,
477
+ name: displayName,
478
+ size: 20
479
+ }),
480
+ title: displayName,
481
+ description: t('privacySettings.restrictedDescription') || 'Limited interactions',
482
+ rightElement: /*#__PURE__*/_jsx(Button, {
483
+ variant: "secondary",
484
+ size: "small",
485
+ onPress: () => handleUnrestrict(userId),
486
+ children: t('privacySettings.unrestrict') || 'Unrestrict'
436
487
  }),
437
488
  showChevron: false
438
- })]
439
- }), /*#__PURE__*/_jsx(SettingsListGroup, {
440
- title: t('privacySettings.sections.blockedUsers') || 'BLOCKED USERS',
441
- children: isLoadingUsers ? /*#__PURE__*/_jsx(Loading, {
442
- size: "small",
443
- color: bloomTheme.colors.text
444
- }) : blockedUsers.length === 0 ? /*#__PURE__*/_jsx(Text, {
445
- className: "text-text-secondary text-center p-space-40",
446
- children: t('privacySettings.noBlockedUsers') || 'No blocked users'
447
- }) : blockedUsers.map(blocked => {
448
- const {
449
- userId,
450
- displayName,
451
- avatar
452
- } = extractUserInfo(blocked, 'blockedId');
453
- const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
454
- return /*#__PURE__*/_jsx(SettingsListItem, {
455
- icon: /*#__PURE__*/_jsx(Avatar, {
456
- source: avatarUri,
457
- name: displayName,
458
- size: 20
459
- }),
460
- title: displayName,
461
- rightElement: /*#__PURE__*/_jsx(Button, {
462
- variant: "destructive",
463
- size: "small",
464
- onPress: () => handleUnblock(userId),
465
- children: t('privacySettings.unblock') || 'Unblock'
466
- }),
467
- showChevron: false
468
- }, userId);
469
- })
470
- }), /*#__PURE__*/_jsx(SettingsListGroup, {
471
- title: t('privacySettings.sections.restrictedUsers') || 'RESTRICTED USERS',
472
- children: isLoadingUsers ? /*#__PURE__*/_jsx(Loading, {
473
- size: "small",
474
- color: bloomTheme.colors.text
475
- }) : restrictedUsers.length === 0 ? /*#__PURE__*/_jsx(Text, {
476
- className: "text-text-secondary text-center p-space-40",
477
- children: t('privacySettings.noRestrictedUsers') || 'No restricted users'
478
- }) : restrictedUsers.map(restricted => {
479
- const {
480
- userId,
481
- displayName,
482
- avatar
483
- } = extractUserInfo(restricted, 'restrictedId');
484
- const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
485
- return /*#__PURE__*/_jsx(SettingsListItem, {
486
- icon: /*#__PURE__*/_jsx(Avatar, {
487
- source: avatarUri,
488
- name: displayName,
489
- size: 20
490
- }),
491
- title: displayName,
492
- description: t('privacySettings.restrictedDescription') || 'Limited interactions',
493
- rightElement: /*#__PURE__*/_jsx(Button, {
494
- variant: "secondary",
495
- size: "small",
496
- onPress: () => handleUnrestrict(userId),
497
- children: t('privacySettings.unrestrict') || 'Unrestrict'
498
- }),
499
- showChevron: false
500
- }, userId);
501
- })
502
- })]
503
- })
504
- })]
489
+ }, userId);
490
+ })
491
+ })]
492
+ })
505
493
  });
506
494
  };
507
495
  export default /*#__PURE__*/React.memo(PrivacySettingsScreen);