@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
@@ -11,17 +11,16 @@ var _settingsList = require("@oxyhq/bloom/settings-list");
11
11
  var _switch = require("@oxyhq/bloom/switch");
12
12
  var _button = require("@oxyhq/bloom/button");
13
13
  var _theme = require("@oxyhq/bloom/theme");
14
- var _Header = _interopRequireDefault(require("../components/Header.js"));
15
14
  var _avatar = require("@oxyhq/bloom/avatar");
16
15
  var _loading = require("@oxyhq/bloom/loading");
17
16
  var _typography = require("@oxyhq/bloom/typography");
18
17
  var _SettingsIcon = require("../components/SettingsIcon.js");
19
18
  var _useI18n = require("../hooks/useI18n.js");
19
+ var _useSurfaceHeader = require("../hooks/useSurfaceHeader.js");
20
20
  var _useSettingToggle = require("../hooks/useSettingToggle.js");
21
21
  var _core = require("@oxyhq/core");
22
22
  var _OxyContext = require("../context/OxyContext.js");
23
23
  var _jsxRuntime = require("react/jsx-runtime");
24
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
25
24
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
26
25
  const DEFAULT_PRIVACY_SETTINGS = {
27
26
  isPrivateAccount: false,
@@ -58,6 +57,9 @@ const PrivacySettingsScreen = ({
58
57
  t,
59
58
  locale
60
59
  } = (0, _useI18n.useI18n)();
60
+ (0, _useSurfaceHeader.useSurfaceHeader)({
61
+ title: t('privacySettings.title') || 'Privacy Settings'
62
+ });
61
63
  const bloomTheme = (0, _theme.useTheme)();
62
64
  const [isLoading, setIsLoading] = (0, _react.useState)(true);
63
65
  const [blockedUsers, setBlockedUsers] = (0, _react.useState)([]);
@@ -198,316 +200,301 @@ const PrivacySettingsScreen = ({
198
200
  };
199
201
  }, [locale]);
200
202
  if (isLoading) {
201
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
202
- className: "flex-1 bg-bg",
203
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Header.default, {
204
- title: t('privacySettings.title') || 'Privacy Settings',
205
- onBack: goBack || onClose,
206
- variant: "minimal",
207
- elevation: "subtle"
208
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_loading.Loading, {
203
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
204
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_loading.Loading, {
209
205
  size: "large",
210
206
  color: bloomTheme.colors.text
211
- })]
207
+ })
212
208
  });
213
209
  }
214
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
215
- className: "flex-1 bg-bg",
216
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Header.default, {
217
- title: t('privacySettings.title') || 'Privacy Settings',
218
- onBack: goBack || onClose,
219
- variant: "minimal",
220
- elevation: "subtle"
221
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ScrollView, {
222
- className: "flex-1",
223
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
224
- className: "px-screen-margin pb-space-24",
225
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_settingsList.SettingsListGroup, {
226
- title: t('privacySettings.sections.account') || 'ACCOUNT PRIVACY',
227
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
228
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
229
- name: "lock-outline",
230
- color: bloomTheme.colors.primary
231
- }),
232
- title: t('privacySettings.isPrivateAccount') || 'Private Account',
233
- description: t('privacySettings.isPrivateAccountDesc') || 'Only approved followers can see your posts',
234
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
235
- value: settings.isPrivateAccount,
236
- onValueChange: () => toggle('isPrivateAccount'),
237
- disabled: isSaving
238
- }),
239
- showChevron: false
240
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
241
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
242
- name: "account-eye-outline",
243
- color: bloomTheme.colors.info
244
- }),
245
- title: t('privacySettings.profileVisibility') || 'Profile Visibility',
246
- description: t('privacySettings.profileVisibilityDesc') || 'Control who can view your profile',
247
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
248
- value: settings.profileVisibility,
249
- onValueChange: () => toggle('profileVisibility'),
250
- disabled: isSaving
251
- }),
252
- showChevron: false
253
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
254
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
255
- name: "circle-outline",
256
- color: bloomTheme.colors.success
257
- }),
258
- title: t('privacySettings.hideOnlineStatus') || 'Hide Online Status',
259
- description: t('privacySettings.hideOnlineStatusDesc') || 'Don\'t show when you\'re online',
260
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
261
- value: settings.hideOnlineStatus,
262
- onValueChange: () => toggle('hideOnlineStatus'),
263
- disabled: isSaving
264
- }),
265
- showChevron: false
266
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
267
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
268
- name: "clock-outline",
269
- color: bloomTheme.colors.secondary
270
- }),
271
- title: t('privacySettings.hideLastSeen') || 'Hide Last Seen',
272
- description: t('privacySettings.hideLastSeenDesc') || 'Don\'t show when you were last active',
273
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
274
- value: settings.hideLastSeen,
275
- onValueChange: () => toggle('hideLastSeen'),
276
- disabled: isSaving
277
- }),
278
- showChevron: false
279
- })]
280
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_settingsList.SettingsListGroup, {
281
- title: t('privacySettings.sections.interactions') || 'INTERACTIONS',
282
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
283
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
284
- name: "tag-outline",
285
- color: bloomTheme.colors.primary
286
- }),
287
- title: t('privacySettings.allowTagging') || 'Allow Tagging',
288
- description: t('privacySettings.allowTaggingDesc') || 'Let others tag you in posts',
289
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
290
- value: settings.allowTagging,
291
- onValueChange: () => toggle('allowTagging'),
292
- disabled: isSaving
293
- }),
294
- showChevron: false
295
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
296
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
297
- name: "at",
298
- color: bloomTheme.colors.info
299
- }),
300
- title: t('privacySettings.allowMentions') || 'Allow Mentions',
301
- description: t('privacySettings.allowMentionsDesc') || 'Let others mention you',
302
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
303
- value: settings.allowMentions,
304
- onValueChange: () => toggle('allowMentions'),
305
- disabled: isSaving
306
- }),
307
- showChevron: false
308
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
309
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
310
- name: "message-outline",
311
- color: bloomTheme.colors.success
312
- }),
313
- title: t('privacySettings.allowDirectMessages') || 'Allow Direct Messages',
314
- description: t('privacySettings.allowDirectMessagesDesc') || 'Let others send you direct messages',
315
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
316
- value: settings.allowDirectMessages,
317
- onValueChange: () => toggle('allowDirectMessages'),
318
- disabled: isSaving
319
- }),
320
- showChevron: false
321
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
322
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
323
- name: "check-all",
324
- color: bloomTheme.colors.secondary
325
- }),
326
- title: t('privacySettings.hideReadReceipts') || 'Hide Read Receipts',
327
- description: t('privacySettings.hideReadReceiptsDesc') || 'Don\'t show read receipts in messages',
328
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
329
- value: settings.hideReadReceipts,
330
- onValueChange: () => toggle('hideReadReceipts'),
331
- disabled: isSaving
332
- }),
333
- showChevron: false
334
- })]
335
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_settingsList.SettingsListGroup, {
336
- title: t('privacySettings.sections.activity') || 'ACTIVITY & DATA',
337
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
338
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
339
- name: "pulse",
340
- color: bloomTheme.colors.primary
341
- }),
342
- title: t('privacySettings.showActivity') || 'Show Activity Status',
343
- description: t('privacySettings.showActivityDesc') || 'Display your activity on your profile',
344
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
345
- value: settings.showActivity,
346
- onValueChange: () => toggle('showActivity'),
347
- disabled: isSaving
348
- }),
349
- showChevron: false
350
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
351
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
352
- name: "database-outline",
353
- color: bloomTheme.colors.info
354
- }),
355
- title: t('privacySettings.dataSharing') || 'Data Sharing',
356
- description: t('privacySettings.dataSharingDesc') || 'Allow sharing data for personalization',
357
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
358
- value: settings.dataSharing,
359
- onValueChange: () => toggle('dataSharing'),
360
- disabled: isSaving
361
- }),
362
- showChevron: false
363
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
364
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
365
- name: "map-marker-outline",
366
- color: bloomTheme.colors.warning
367
- }),
368
- title: t('privacySettings.locationSharing') || 'Location Sharing',
369
- description: t('privacySettings.locationSharingDesc') || 'Share your location',
370
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
371
- value: settings.locationSharing,
372
- onValueChange: () => toggle('locationSharing'),
373
- disabled: isSaving
374
- }),
375
- showChevron: false
376
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
377
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
378
- name: "chart-line",
379
- color: bloomTheme.colors.secondary
380
- }),
381
- title: t('privacySettings.analyticsSharing') || 'Analytics Sharing',
382
- description: t('privacySettings.analyticsSharingDesc') || 'Allow analytics data collection',
383
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
384
- value: settings.analyticsSharing,
385
- onValueChange: () => toggle('analyticsSharing'),
386
- disabled: isSaving
387
- }),
388
- showChevron: false
389
- })]
390
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_settingsList.SettingsListGroup, {
391
- title: t('privacySettings.sections.content') || 'CONTENT & SAFETY',
392
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
393
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
394
- name: "eye-off-outline",
395
- color: bloomTheme.colors.warning
396
- }),
397
- title: t('privacySettings.sensitiveContent') || 'Show Sensitive Content',
398
- description: t('privacySettings.sensitiveContentDesc') || 'Allow sensitive or explicit content',
399
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
400
- value: settings.sensitiveContent,
401
- onValueChange: () => toggle('sensitiveContent'),
402
- disabled: isSaving
403
- }),
404
- showChevron: false
405
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
406
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
407
- name: "filter-outline",
408
- color: bloomTheme.colors.success
409
- }),
410
- title: t('privacySettings.autoFilter') || 'Auto Filter',
411
- description: t('privacySettings.autoFilterDesc') || 'Automatically filter inappropriate content',
412
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
413
- value: settings.autoFilter,
414
- onValueChange: () => toggle('autoFilter'),
415
- disabled: isSaving
416
- }),
417
- showChevron: false
418
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
419
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
420
- name: "volume-off",
421
- color: bloomTheme.colors.info
422
- }),
423
- title: t('privacySettings.muteKeywords') || 'Mute Keywords',
424
- description: t('privacySettings.muteKeywordsDesc') || 'Hide posts containing muted keywords',
425
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
426
- value: settings.muteKeywords,
427
- onValueChange: () => toggle('muteKeywords'),
428
- disabled: isSaving
210
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
211
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
212
+ className: "px-screen-margin pb-space-24",
213
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_settingsList.SettingsListGroup, {
214
+ title: t('privacySettings.sections.account') || 'ACCOUNT PRIVACY',
215
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
216
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
217
+ name: "lock-outline",
218
+ color: bloomTheme.colors.primary
219
+ }),
220
+ title: t('privacySettings.isPrivateAccount') || 'Private Account',
221
+ description: t('privacySettings.isPrivateAccountDesc') || 'Only approved followers can see your posts',
222
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
223
+ value: settings.isPrivateAccount,
224
+ onValueChange: () => toggle('isPrivateAccount'),
225
+ disabled: isSaving
226
+ }),
227
+ showChevron: false
228
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
229
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
230
+ name: "account-eye-outline",
231
+ color: bloomTheme.colors.info
232
+ }),
233
+ title: t('privacySettings.profileVisibility') || 'Profile Visibility',
234
+ description: t('privacySettings.profileVisibilityDesc') || 'Control who can view your profile',
235
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
236
+ value: settings.profileVisibility,
237
+ onValueChange: () => toggle('profileVisibility'),
238
+ disabled: isSaving
239
+ }),
240
+ showChevron: false
241
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
242
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
243
+ name: "circle-outline",
244
+ color: bloomTheme.colors.success
245
+ }),
246
+ title: t('privacySettings.hideOnlineStatus') || 'Hide Online Status',
247
+ description: t('privacySettings.hideOnlineStatusDesc') || 'Don\'t show when you\'re online',
248
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
249
+ value: settings.hideOnlineStatus,
250
+ onValueChange: () => toggle('hideOnlineStatus'),
251
+ disabled: isSaving
252
+ }),
253
+ showChevron: false
254
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
255
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
256
+ name: "clock-outline",
257
+ color: bloomTheme.colors.secondary
258
+ }),
259
+ title: t('privacySettings.hideLastSeen') || 'Hide Last Seen',
260
+ description: t('privacySettings.hideLastSeenDesc') || 'Don\'t show when you were last active',
261
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
262
+ value: settings.hideLastSeen,
263
+ onValueChange: () => toggle('hideLastSeen'),
264
+ disabled: isSaving
265
+ }),
266
+ showChevron: false
267
+ })]
268
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_settingsList.SettingsListGroup, {
269
+ title: t('privacySettings.sections.interactions') || 'INTERACTIONS',
270
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
271
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
272
+ name: "tag-outline",
273
+ color: bloomTheme.colors.primary
274
+ }),
275
+ title: t('privacySettings.allowTagging') || 'Allow Tagging',
276
+ description: t('privacySettings.allowTaggingDesc') || 'Let others tag you in posts',
277
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
278
+ value: settings.allowTagging,
279
+ onValueChange: () => toggle('allowTagging'),
280
+ disabled: isSaving
281
+ }),
282
+ showChevron: false
283
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
284
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
285
+ name: "at",
286
+ color: bloomTheme.colors.info
287
+ }),
288
+ title: t('privacySettings.allowMentions') || 'Allow Mentions',
289
+ description: t('privacySettings.allowMentionsDesc') || 'Let others mention you',
290
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
291
+ value: settings.allowMentions,
292
+ onValueChange: () => toggle('allowMentions'),
293
+ disabled: isSaving
294
+ }),
295
+ showChevron: false
296
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
297
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
298
+ name: "message-outline",
299
+ color: bloomTheme.colors.success
300
+ }),
301
+ title: t('privacySettings.allowDirectMessages') || 'Allow Direct Messages',
302
+ description: t('privacySettings.allowDirectMessagesDesc') || 'Let others send you direct messages',
303
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
304
+ value: settings.allowDirectMessages,
305
+ onValueChange: () => toggle('allowDirectMessages'),
306
+ disabled: isSaving
307
+ }),
308
+ showChevron: false
309
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
310
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
311
+ name: "check-all",
312
+ color: bloomTheme.colors.secondary
313
+ }),
314
+ title: t('privacySettings.hideReadReceipts') || 'Hide Read Receipts',
315
+ description: t('privacySettings.hideReadReceiptsDesc') || 'Don\'t show read receipts in messages',
316
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
317
+ value: settings.hideReadReceipts,
318
+ onValueChange: () => toggle('hideReadReceipts'),
319
+ disabled: isSaving
320
+ }),
321
+ showChevron: false
322
+ })]
323
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_settingsList.SettingsListGroup, {
324
+ title: t('privacySettings.sections.activity') || 'ACTIVITY & DATA',
325
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
326
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
327
+ name: "pulse",
328
+ color: bloomTheme.colors.primary
329
+ }),
330
+ title: t('privacySettings.showActivity') || 'Show Activity Status',
331
+ description: t('privacySettings.showActivityDesc') || 'Display your activity on your profile',
332
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
333
+ value: settings.showActivity,
334
+ onValueChange: () => toggle('showActivity'),
335
+ disabled: isSaving
336
+ }),
337
+ showChevron: false
338
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
339
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
340
+ name: "database-outline",
341
+ color: bloomTheme.colors.info
342
+ }),
343
+ title: t('privacySettings.dataSharing') || 'Data Sharing',
344
+ description: t('privacySettings.dataSharingDesc') || 'Allow sharing data for personalization',
345
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
346
+ value: settings.dataSharing,
347
+ onValueChange: () => toggle('dataSharing'),
348
+ disabled: isSaving
349
+ }),
350
+ showChevron: false
351
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
352
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
353
+ name: "map-marker-outline",
354
+ color: bloomTheme.colors.warning
355
+ }),
356
+ title: t('privacySettings.locationSharing') || 'Location Sharing',
357
+ description: t('privacySettings.locationSharingDesc') || 'Share your location',
358
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
359
+ value: settings.locationSharing,
360
+ onValueChange: () => toggle('locationSharing'),
361
+ disabled: isSaving
362
+ }),
363
+ showChevron: false
364
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
365
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
366
+ name: "chart-line",
367
+ color: bloomTheme.colors.secondary
368
+ }),
369
+ title: t('privacySettings.analyticsSharing') || 'Analytics Sharing',
370
+ description: t('privacySettings.analyticsSharingDesc') || 'Allow analytics data collection',
371
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
372
+ value: settings.analyticsSharing,
373
+ onValueChange: () => toggle('analyticsSharing'),
374
+ disabled: isSaving
375
+ }),
376
+ showChevron: false
377
+ })]
378
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_settingsList.SettingsListGroup, {
379
+ title: t('privacySettings.sections.content') || 'CONTENT & SAFETY',
380
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
381
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
382
+ name: "eye-off-outline",
383
+ color: bloomTheme.colors.warning
384
+ }),
385
+ title: t('privacySettings.sensitiveContent') || 'Show Sensitive Content',
386
+ description: t('privacySettings.sensitiveContentDesc') || 'Allow sensitive or explicit content',
387
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
388
+ value: settings.sensitiveContent,
389
+ onValueChange: () => toggle('sensitiveContent'),
390
+ disabled: isSaving
391
+ }),
392
+ showChevron: false
393
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
394
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
395
+ name: "filter-outline",
396
+ color: bloomTheme.colors.success
397
+ }),
398
+ title: t('privacySettings.autoFilter') || 'Auto Filter',
399
+ description: t('privacySettings.autoFilterDesc') || 'Automatically filter inappropriate content',
400
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
401
+ value: settings.autoFilter,
402
+ onValueChange: () => toggle('autoFilter'),
403
+ disabled: isSaving
404
+ }),
405
+ showChevron: false
406
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
407
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
408
+ name: "volume-off",
409
+ color: bloomTheme.colors.info
410
+ }),
411
+ title: t('privacySettings.muteKeywords') || 'Mute Keywords',
412
+ description: t('privacySettings.muteKeywordsDesc') || 'Hide posts containing muted keywords',
413
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
414
+ value: settings.muteKeywords,
415
+ onValueChange: () => toggle('muteKeywords'),
416
+ disabled: isSaving
417
+ }),
418
+ showChevron: false
419
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
420
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
421
+ name: "cellphone-screenshot",
422
+ color: bloomTheme.colors.secondary
423
+ }),
424
+ title: t('privacySettings.blockScreenshots') || 'Block Screenshots',
425
+ description: t('privacySettings.blockScreenshotsDesc') || 'Prevent screenshots of your content',
426
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
427
+ value: settings.blockScreenshots,
428
+ onValueChange: () => toggle('blockScreenshots'),
429
+ disabled: isSaving
430
+ }),
431
+ showChevron: false
432
+ })]
433
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListGroup, {
434
+ title: t('privacySettings.sections.blockedUsers') || 'BLOCKED USERS',
435
+ children: isLoadingUsers ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_loading.Loading, {
436
+ size: "small",
437
+ color: bloomTheme.colors.text
438
+ }) : blockedUsers.length === 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
439
+ className: "text-text-secondary text-center p-space-40",
440
+ children: t('privacySettings.noBlockedUsers') || 'No blocked users'
441
+ }) : blockedUsers.map(blocked => {
442
+ const {
443
+ userId,
444
+ displayName,
445
+ avatar
446
+ } = extractUserInfo(blocked, 'blockedId');
447
+ const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
448
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
449
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.Avatar, {
450
+ source: avatarUri,
451
+ name: displayName,
452
+ size: 20
453
+ }),
454
+ title: displayName,
455
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.Button, {
456
+ variant: "destructive",
457
+ size: "small",
458
+ onPress: () => handleUnblock(userId),
459
+ children: t('privacySettings.unblock') || 'Unblock'
429
460
  }),
430
461
  showChevron: false
431
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
432
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
433
- name: "cellphone-screenshot",
434
- color: bloomTheme.colors.secondary
435
- }),
436
- title: t('privacySettings.blockScreenshots') || 'Block Screenshots',
437
- description: t('privacySettings.blockScreenshotsDesc') || 'Prevent screenshots of your content',
438
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_switch.Switch, {
439
- value: settings.blockScreenshots,
440
- onValueChange: () => toggle('blockScreenshots'),
441
- disabled: isSaving
462
+ }, userId);
463
+ })
464
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListGroup, {
465
+ title: t('privacySettings.sections.restrictedUsers') || 'RESTRICTED USERS',
466
+ children: isLoadingUsers ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_loading.Loading, {
467
+ size: "small",
468
+ color: bloomTheme.colors.text
469
+ }) : restrictedUsers.length === 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
470
+ className: "text-text-secondary text-center p-space-40",
471
+ children: t('privacySettings.noRestrictedUsers') || 'No restricted users'
472
+ }) : restrictedUsers.map(restricted => {
473
+ const {
474
+ userId,
475
+ displayName,
476
+ avatar
477
+ } = extractUserInfo(restricted, 'restrictedId');
478
+ const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
479
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
480
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.Avatar, {
481
+ source: avatarUri,
482
+ name: displayName,
483
+ size: 20
484
+ }),
485
+ title: displayName,
486
+ description: t('privacySettings.restrictedDescription') || 'Limited interactions',
487
+ rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.Button, {
488
+ variant: "secondary",
489
+ size: "small",
490
+ onPress: () => handleUnrestrict(userId),
491
+ children: t('privacySettings.unrestrict') || 'Unrestrict'
442
492
  }),
443
493
  showChevron: false
444
- })]
445
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListGroup, {
446
- title: t('privacySettings.sections.blockedUsers') || 'BLOCKED USERS',
447
- children: isLoadingUsers ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_loading.Loading, {
448
- size: "small",
449
- color: bloomTheme.colors.text
450
- }) : blockedUsers.length === 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
451
- className: "text-text-secondary text-center p-space-40",
452
- children: t('privacySettings.noBlockedUsers') || 'No blocked users'
453
- }) : blockedUsers.map(blocked => {
454
- const {
455
- userId,
456
- displayName,
457
- avatar
458
- } = extractUserInfo(blocked, 'blockedId');
459
- const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
460
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
461
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.Avatar, {
462
- source: avatarUri,
463
- name: displayName,
464
- size: 20
465
- }),
466
- title: displayName,
467
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.Button, {
468
- variant: "destructive",
469
- size: "small",
470
- onPress: () => handleUnblock(userId),
471
- children: t('privacySettings.unblock') || 'Unblock'
472
- }),
473
- showChevron: false
474
- }, userId);
475
- })
476
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListGroup, {
477
- title: t('privacySettings.sections.restrictedUsers') || 'RESTRICTED USERS',
478
- children: isLoadingUsers ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_loading.Loading, {
479
- size: "small",
480
- color: bloomTheme.colors.text
481
- }) : restrictedUsers.length === 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
482
- className: "text-text-secondary text-center p-space-40",
483
- children: t('privacySettings.noRestrictedUsers') || 'No restricted users'
484
- }) : restrictedUsers.map(restricted => {
485
- const {
486
- userId,
487
- displayName,
488
- avatar
489
- } = extractUserInfo(restricted, 'restrictedId');
490
- const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
491
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_settingsList.SettingsListItem, {
492
- icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.Avatar, {
493
- source: avatarUri,
494
- name: displayName,
495
- size: 20
496
- }),
497
- title: displayName,
498
- description: t('privacySettings.restrictedDescription') || 'Limited interactions',
499
- rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.Button, {
500
- variant: "secondary",
501
- size: "small",
502
- onPress: () => handleUnrestrict(userId),
503
- children: t('privacySettings.unrestrict') || 'Unrestrict'
504
- }),
505
- showChevron: false
506
- }, userId);
507
- })
508
- })]
509
- })
510
- })]
494
+ }, userId);
495
+ })
496
+ })]
497
+ })
511
498
  });
512
499
  };
513
500
  var _default = exports.default = /*#__PURE__*/_react.default.memo(PrivacySettingsScreen);