@oxyhq/services 22.8.7 → 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 (502) 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/OxyAccountDialogScreen.js +150 -0
  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/OxyProvider.js +9 -29
  9. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  10. package/lib/commonjs/ui/components/ProfileButton.js +1 -1
  11. package/lib/commonjs/ui/components/RequireOxyAuth.js +1 -1
  12. package/lib/commonjs/ui/components/SurfaceHeaderAction.js +63 -0
  13. package/lib/commonjs/ui/components/SurfaceHeaderAction.js.map +1 -0
  14. package/lib/commonjs/ui/components/SurfaceScreen.js +193 -0
  15. package/lib/commonjs/ui/components/SurfaceScreen.js.map +1 -0
  16. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js +46 -29
  17. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  18. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +47 -23
  19. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -1
  20. package/lib/commonjs/ui/components/oxyAuthChooserStyles.js +22 -12
  21. package/lib/commonjs/ui/components/oxyAuthChooserStyles.js.map +1 -1
  22. package/lib/commonjs/ui/components/surfaces/ActionSheetSurface.js +83 -0
  23. package/lib/commonjs/ui/components/surfaces/ActionSheetSurface.js.map +1 -0
  24. package/lib/commonjs/ui/context/OxyContext.js +49 -4
  25. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  26. package/lib/commonjs/ui/hooks/useAvatarPicker.js +34 -39
  27. package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +1 -1
  28. package/lib/commonjs/ui/hooks/useSurfaceHeader.js +46 -0
  29. package/lib/commonjs/ui/hooks/useSurfaceHeader.js.map +1 -0
  30. package/lib/commonjs/ui/hooks/useSwitchableAccounts.js +1 -1
  31. package/lib/commonjs/ui/navigation/accountDialogManager.js +14 -2
  32. package/lib/commonjs/ui/navigation/accountDialogManager.js.map +1 -1
  33. package/lib/commonjs/ui/navigation/bottomSheetManager.js +38 -56
  34. package/lib/commonjs/ui/navigation/bottomSheetManager.js.map +1 -1
  35. package/lib/commonjs/ui/navigation/routes.js +7 -57
  36. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  37. package/lib/commonjs/ui/navigation/surfaceBackBridge.js +68 -0
  38. package/lib/commonjs/ui/navigation/surfaceBackBridge.js.map +1 -0
  39. package/lib/commonjs/ui/navigation/surfaceNavStack.js +98 -0
  40. package/lib/commonjs/ui/navigation/surfaceNavStack.js.map +1 -0
  41. package/lib/commonjs/ui/navigation/surfaceRegistry.js +152 -0
  42. package/lib/commonjs/ui/navigation/surfaceRegistry.js.map +1 -0
  43. package/lib/commonjs/ui/navigation/surfaces.js +256 -0
  44. package/lib/commonjs/ui/navigation/surfaces.js.map +1 -0
  45. package/lib/commonjs/ui/screens/AccountMembersScreen.js +214 -283
  46. package/lib/commonjs/ui/screens/AccountMembersScreen.js.map +1 -1
  47. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +88 -118
  48. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  49. package/lib/commonjs/ui/screens/AccountVerificationScreen.js +22 -36
  50. package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
  51. package/lib/commonjs/ui/screens/AppInfoScreen.js +219 -226
  52. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
  53. package/lib/commonjs/ui/screens/AvatarCropScreen.js +10 -14
  54. package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -1
  55. package/lib/commonjs/ui/screens/ConnectedAppsScreen.js +24 -39
  56. package/lib/commonjs/ui/screens/ConnectedAppsScreen.js.map +1 -1
  57. package/lib/commonjs/ui/screens/CreateAccountScreen.js +136 -158
  58. package/lib/commonjs/ui/screens/CreateAccountScreen.js.map +1 -1
  59. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +29 -36
  60. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
  61. package/lib/commonjs/ui/screens/EditProfileScreen.js +101 -109
  62. package/lib/commonjs/ui/screens/EditProfileScreen.js.map +1 -1
  63. package/lib/commonjs/ui/screens/FAQScreen.js +10 -15
  64. package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -1
  65. package/lib/commonjs/ui/screens/FeedbackScreen.js +8 -16
  66. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  67. package/lib/commonjs/ui/screens/FileManagementScreen.js +219 -206
  68. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  69. package/lib/commonjs/ui/screens/HelpSupportScreen.js +62 -69
  70. package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
  71. package/lib/commonjs/ui/screens/HistoryViewScreen.js +63 -79
  72. package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
  73. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +69 -98
  74. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
  75. package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js +8 -14
  76. package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
  77. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +77 -94
  78. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
  79. package/lib/commonjs/ui/screens/ManageAccountScreen.js +99 -134
  80. package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
  81. package/lib/commonjs/ui/screens/NotificationsScreen.js +69 -76
  82. package/lib/commonjs/ui/screens/NotificationsScreen.js.map +1 -1
  83. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +3 -8
  84. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  85. package/lib/commonjs/ui/screens/PreferencesScreen.js +67 -74
  86. package/lib/commonjs/ui/screens/PreferencesScreen.js.map +1 -1
  87. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +55 -91
  88. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  89. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +291 -304
  90. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  91. package/lib/commonjs/ui/screens/ProfileScreen.js +100 -114
  92. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  93. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +38 -45
  94. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  95. package/lib/commonjs/ui/screens/SearchSettingsScreen.js +44 -57
  96. package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
  97. package/lib/commonjs/ui/screens/UserLinksScreen.js +24 -31
  98. package/lib/commonjs/ui/screens/UserLinksScreen.js.map +1 -1
  99. package/lib/commonjs/ui/screens/UserListScreen.js +14 -24
  100. package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
  101. package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js +1 -1
  102. package/lib/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.js +9 -7
  103. package/lib/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.js.map +1 -1
  104. package/lib/commonjs/ui/screens/trust/TrustAboutScreen.js +66 -75
  105. package/lib/commonjs/ui/screens/trust/TrustAboutScreen.js.map +1 -1
  106. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +111 -139
  107. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  108. package/lib/commonjs/ui/screens/trust/TrustFAQScreen.js +13 -20
  109. package/lib/commonjs/ui/screens/trust/TrustFAQScreen.js.map +1 -1
  110. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js +14 -27
  111. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  112. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +68 -85
  113. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  114. package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js +28 -36
  115. package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js.map +1 -1
  116. package/lib/commonjs/ui/types/surfaceScreen.js +6 -0
  117. package/lib/commonjs/ui/types/surfaceScreen.js.map +1 -0
  118. package/lib/module/index.js +12 -5
  119. package/lib/module/index.js.map +1 -1
  120. package/lib/module/ui/components/OxyAccountDialogScreen.js +145 -0
  121. package/lib/module/ui/components/OxyAccountDialogScreen.js.map +1 -0
  122. package/lib/module/ui/components/OxyAuthChooser.js +137 -40
  123. package/lib/module/ui/components/OxyAuthChooser.js.map +1 -1
  124. package/lib/module/ui/components/OxyConsentScreen.js +1 -1
  125. package/lib/module/ui/components/OxyProvider.js +10 -30
  126. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  127. package/lib/module/ui/components/ProfileButton.js +1 -1
  128. package/lib/module/ui/components/RequireOxyAuth.js +1 -1
  129. package/lib/module/ui/components/SurfaceHeaderAction.js +58 -0
  130. package/lib/module/ui/components/SurfaceHeaderAction.js.map +1 -0
  131. package/lib/module/ui/components/SurfaceScreen.js +188 -0
  132. package/lib/module/ui/components/SurfaceScreen.js.map +1 -0
  133. package/lib/module/ui/components/fileManagement/FileDetailsModal.js +46 -29
  134. package/lib/module/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  135. package/lib/module/ui/components/modals/DeleteAccountModal.js +46 -23
  136. package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -1
  137. package/lib/module/ui/components/oxyAuthChooserStyles.js +22 -12
  138. package/lib/module/ui/components/oxyAuthChooserStyles.js.map +1 -1
  139. package/lib/module/ui/components/surfaces/ActionSheetSurface.js +78 -0
  140. package/lib/module/ui/components/surfaces/ActionSheetSurface.js.map +1 -0
  141. package/lib/module/ui/context/OxyContext.js +49 -4
  142. package/lib/module/ui/context/OxyContext.js.map +1 -1
  143. package/lib/module/ui/hooks/useAvatarPicker.js +34 -39
  144. package/lib/module/ui/hooks/useAvatarPicker.js.map +1 -1
  145. package/lib/module/ui/hooks/useSurfaceHeader.js +42 -0
  146. package/lib/module/ui/hooks/useSurfaceHeader.js.map +1 -0
  147. package/lib/module/ui/hooks/useSwitchableAccounts.js +1 -1
  148. package/lib/module/ui/navigation/accountDialogManager.js +14 -2
  149. package/lib/module/ui/navigation/accountDialogManager.js.map +1 -1
  150. package/lib/module/ui/navigation/bottomSheetManager.js +37 -53
  151. package/lib/module/ui/navigation/bottomSheetManager.js.map +1 -1
  152. package/lib/module/ui/navigation/routes.js +6 -56
  153. package/lib/module/ui/navigation/routes.js.map +1 -1
  154. package/lib/module/ui/navigation/surfaceBackBridge.js +63 -0
  155. package/lib/module/ui/navigation/surfaceBackBridge.js.map +1 -0
  156. package/lib/module/ui/navigation/surfaceNavStack.js +95 -0
  157. package/lib/module/ui/navigation/surfaceNavStack.js.map +1 -0
  158. package/lib/module/ui/navigation/surfaceRegistry.js +146 -0
  159. package/lib/module/ui/navigation/surfaceRegistry.js.map +1 -0
  160. package/lib/module/ui/navigation/surfaces.js +244 -0
  161. package/lib/module/ui/navigation/surfaces.js.map +1 -0
  162. package/lib/module/ui/screens/AccountMembersScreen.js +218 -286
  163. package/lib/module/ui/screens/AccountMembersScreen.js.map +1 -1
  164. package/lib/module/ui/screens/AccountSettingsScreen.js +92 -121
  165. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  166. package/lib/module/ui/screens/AccountVerificationScreen.js +25 -38
  167. package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
  168. package/lib/module/ui/screens/AppInfoScreen.js +220 -227
  169. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
  170. package/lib/module/ui/screens/AvatarCropScreen.js +10 -14
  171. package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -1
  172. package/lib/module/ui/screens/ConnectedAppsScreen.js +26 -40
  173. package/lib/module/ui/screens/ConnectedAppsScreen.js.map +1 -1
  174. package/lib/module/ui/screens/CreateAccountScreen.js +139 -160
  175. package/lib/module/ui/screens/CreateAccountScreen.js.map +1 -1
  176. package/lib/module/ui/screens/EditProfileFieldScreen.js +32 -38
  177. package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
  178. package/lib/module/ui/screens/EditProfileScreen.js +102 -110
  179. package/lib/module/ui/screens/EditProfileScreen.js.map +1 -1
  180. package/lib/module/ui/screens/FAQScreen.js +11 -15
  181. package/lib/module/ui/screens/FAQScreen.js.map +1 -1
  182. package/lib/module/ui/screens/FeedbackScreen.js +10 -17
  183. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  184. package/lib/module/ui/screens/FileManagementScreen.js +222 -208
  185. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  186. package/lib/module/ui/screens/HelpSupportScreen.js +64 -70
  187. package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
  188. package/lib/module/ui/screens/HistoryViewScreen.js +65 -81
  189. package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
  190. package/lib/module/ui/screens/LanguageSelectorScreen.js +71 -99
  191. package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
  192. package/lib/module/ui/screens/LearnMoreUsernamesScreen.js +10 -15
  193. package/lib/module/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
  194. package/lib/module/ui/screens/LegalDocumentsScreen.js +78 -94
  195. package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
  196. package/lib/module/ui/screens/ManageAccountScreen.js +102 -137
  197. package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
  198. package/lib/module/ui/screens/NotificationsScreen.js +71 -77
  199. package/lib/module/ui/screens/NotificationsScreen.js.map +1 -1
  200. package/lib/module/ui/screens/PaymentGatewayScreen.js +4 -9
  201. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  202. package/lib/module/ui/screens/PreferencesScreen.js +69 -75
  203. package/lib/module/ui/screens/PreferencesScreen.js.map +1 -1
  204. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +58 -93
  205. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  206. package/lib/module/ui/screens/PrivacySettingsScreen.js +293 -305
  207. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  208. package/lib/module/ui/screens/ProfileScreen.js +102 -116
  209. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  210. package/lib/module/ui/screens/SavesCollectionsScreen.js +40 -46
  211. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  212. package/lib/module/ui/screens/SearchSettingsScreen.js +46 -58
  213. package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
  214. package/lib/module/ui/screens/UserLinksScreen.js +26 -32
  215. package/lib/module/ui/screens/UserLinksScreen.js.map +1 -1
  216. package/lib/module/ui/screens/UserListScreen.js +14 -24
  217. package/lib/module/ui/screens/UserListScreen.js.map +1 -1
  218. package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js +1 -1
  219. package/lib/module/ui/screens/fileManagement/hooks/useFileUploadState.js +8 -7
  220. package/lib/module/ui/screens/fileManagement/hooks/useFileUploadState.js.map +1 -1
  221. package/lib/module/ui/screens/trust/TrustAboutScreen.js +67 -75
  222. package/lib/module/ui/screens/trust/TrustAboutScreen.js.map +1 -1
  223. package/lib/module/ui/screens/trust/TrustCenterScreen.js +112 -139
  224. package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  225. package/lib/module/ui/screens/trust/TrustFAQScreen.js +15 -21
  226. package/lib/module/ui/screens/trust/TrustFAQScreen.js.map +1 -1
  227. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js +14 -26
  228. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  229. package/lib/module/ui/screens/trust/TrustRewardsScreen.js +69 -85
  230. package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  231. package/lib/module/ui/screens/trust/TrustRulesScreen.js +30 -37
  232. package/lib/module/ui/screens/trust/TrustRulesScreen.js.map +1 -1
  233. package/lib/module/ui/types/surfaceScreen.js +4 -0
  234. package/lib/module/ui/types/surfaceScreen.js.map +1 -0
  235. package/lib/typescript/commonjs/index.d.ts +2 -0
  236. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  237. package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts +39 -0
  238. package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts.map +1 -0
  239. package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts +3 -3
  240. package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts.map +1 -1
  241. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts +3 -2
  242. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
  243. package/lib/typescript/commonjs/ui/components/ProfileButton.d.ts +2 -2
  244. package/lib/typescript/commonjs/ui/components/RequireOxyAuth.d.ts +1 -1
  245. package/lib/typescript/commonjs/ui/components/SurfaceHeaderAction.d.ts +16 -0
  246. package/lib/typescript/commonjs/ui/components/SurfaceHeaderAction.d.ts.map +1 -0
  247. package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts +26 -0
  248. package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts.map +1 -0
  249. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts +14 -4
  250. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  251. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts +17 -2
  252. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  253. package/lib/typescript/commonjs/ui/components/oxyAuthChooserStyles.d.ts +19 -9
  254. package/lib/typescript/commonjs/ui/components/oxyAuthChooserStyles.d.ts.map +1 -1
  255. package/lib/typescript/commonjs/ui/components/surfaces/ActionSheetSurface.d.ts +38 -0
  256. package/lib/typescript/commonjs/ui/components/surfaces/ActionSheetSurface.d.ts.map +1 -0
  257. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  258. package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts +7 -11
  259. package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts.map +1 -1
  260. package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts +31 -0
  261. package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts.map +1 -0
  262. package/lib/typescript/commonjs/ui/hooks/useSwitchableAccounts.d.ts +1 -1
  263. package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts +14 -2
  264. package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts.map +1 -1
  265. package/lib/typescript/commonjs/ui/navigation/bottomSheetManager.d.ts +24 -16
  266. package/lib/typescript/commonjs/ui/navigation/bottomSheetManager.d.ts.map +1 -1
  267. package/lib/typescript/commonjs/ui/navigation/routes.d.ts +2 -60
  268. package/lib/typescript/commonjs/ui/navigation/routes.d.ts.map +1 -1
  269. package/lib/typescript/commonjs/ui/navigation/surfaceBackBridge.d.ts +16 -0
  270. package/lib/typescript/commonjs/ui/navigation/surfaceBackBridge.d.ts.map +1 -0
  271. package/lib/typescript/commonjs/ui/navigation/surfaceNavStack.d.ts +51 -0
  272. package/lib/typescript/commonjs/ui/navigation/surfaceNavStack.d.ts.map +1 -0
  273. package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts +135 -0
  274. package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts.map +1 -0
  275. package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts +79 -0
  276. package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts.map +1 -0
  277. package/lib/typescript/commonjs/ui/screens/AccountMembersScreen.d.ts.map +1 -1
  278. package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  279. package/lib/typescript/commonjs/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  280. package/lib/typescript/commonjs/ui/screens/AppInfoScreen.d.ts.map +1 -1
  281. package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts +0 -4
  282. package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts.map +1 -1
  283. package/lib/typescript/commonjs/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
  284. package/lib/typescript/commonjs/ui/screens/CreateAccountScreen.d.ts.map +1 -1
  285. package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  286. package/lib/typescript/commonjs/ui/screens/EditProfileScreen.d.ts.map +1 -1
  287. package/lib/typescript/commonjs/ui/screens/FAQScreen.d.ts.map +1 -1
  288. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
  289. package/lib/typescript/commonjs/ui/screens/FileManagementScreen.d.ts.map +1 -1
  290. package/lib/typescript/commonjs/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  291. package/lib/typescript/commonjs/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  292. package/lib/typescript/commonjs/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  293. package/lib/typescript/commonjs/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
  294. package/lib/typescript/commonjs/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  295. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts +1 -1
  296. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  297. package/lib/typescript/commonjs/ui/screens/NotificationsScreen.d.ts.map +1 -1
  298. package/lib/typescript/commonjs/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  299. package/lib/typescript/commonjs/ui/screens/PreferencesScreen.d.ts.map +1 -1
  300. package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  301. package/lib/typescript/commonjs/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  302. package/lib/typescript/commonjs/ui/screens/ProfileScreen.d.ts.map +1 -1
  303. package/lib/typescript/commonjs/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  304. package/lib/typescript/commonjs/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  305. package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts.map +1 -1
  306. package/lib/typescript/commonjs/ui/screens/UserListScreen.d.ts.map +1 -1
  307. package/lib/typescript/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.d.ts.map +1 -1
  308. package/lib/typescript/commonjs/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
  309. package/lib/typescript/commonjs/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  310. package/lib/typescript/commonjs/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
  311. package/lib/typescript/commonjs/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
  312. package/lib/typescript/commonjs/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  313. package/lib/typescript/commonjs/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  314. package/lib/typescript/commonjs/ui/types/navigation.d.ts +8 -0
  315. package/lib/typescript/commonjs/ui/types/navigation.d.ts.map +1 -1
  316. package/lib/typescript/commonjs/ui/types/surfaceScreen.d.ts +38 -0
  317. package/lib/typescript/commonjs/ui/types/surfaceScreen.d.ts.map +1 -0
  318. package/lib/typescript/module/index.d.ts +2 -0
  319. package/lib/typescript/module/index.d.ts.map +1 -1
  320. package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts +39 -0
  321. package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts.map +1 -0
  322. package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts +3 -3
  323. package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts.map +1 -1
  324. package/lib/typescript/module/ui/components/OxyProvider.d.ts +3 -2
  325. package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
  326. package/lib/typescript/module/ui/components/ProfileButton.d.ts +2 -2
  327. package/lib/typescript/module/ui/components/RequireOxyAuth.d.ts +1 -1
  328. package/lib/typescript/module/ui/components/SurfaceHeaderAction.d.ts +16 -0
  329. package/lib/typescript/module/ui/components/SurfaceHeaderAction.d.ts.map +1 -0
  330. package/lib/typescript/module/ui/components/SurfaceScreen.d.ts +26 -0
  331. package/lib/typescript/module/ui/components/SurfaceScreen.d.ts.map +1 -0
  332. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts +14 -4
  333. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  334. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts +17 -2
  335. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  336. package/lib/typescript/module/ui/components/oxyAuthChooserStyles.d.ts +19 -9
  337. package/lib/typescript/module/ui/components/oxyAuthChooserStyles.d.ts.map +1 -1
  338. package/lib/typescript/module/ui/components/surfaces/ActionSheetSurface.d.ts +38 -0
  339. package/lib/typescript/module/ui/components/surfaces/ActionSheetSurface.d.ts.map +1 -0
  340. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  341. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts +7 -11
  342. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts.map +1 -1
  343. package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts +31 -0
  344. package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts.map +1 -0
  345. package/lib/typescript/module/ui/hooks/useSwitchableAccounts.d.ts +1 -1
  346. package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts +14 -2
  347. package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts.map +1 -1
  348. package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts +24 -16
  349. package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts.map +1 -1
  350. package/lib/typescript/module/ui/navigation/routes.d.ts +2 -60
  351. package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
  352. package/lib/typescript/module/ui/navigation/surfaceBackBridge.d.ts +16 -0
  353. package/lib/typescript/module/ui/navigation/surfaceBackBridge.d.ts.map +1 -0
  354. package/lib/typescript/module/ui/navigation/surfaceNavStack.d.ts +51 -0
  355. package/lib/typescript/module/ui/navigation/surfaceNavStack.d.ts.map +1 -0
  356. package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts +135 -0
  357. package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts.map +1 -0
  358. package/lib/typescript/module/ui/navigation/surfaces.d.ts +79 -0
  359. package/lib/typescript/module/ui/navigation/surfaces.d.ts.map +1 -0
  360. package/lib/typescript/module/ui/screens/AccountMembersScreen.d.ts.map +1 -1
  361. package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  362. package/lib/typescript/module/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  363. package/lib/typescript/module/ui/screens/AppInfoScreen.d.ts.map +1 -1
  364. package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts +0 -4
  365. package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts.map +1 -1
  366. package/lib/typescript/module/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
  367. package/lib/typescript/module/ui/screens/CreateAccountScreen.d.ts.map +1 -1
  368. package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  369. package/lib/typescript/module/ui/screens/EditProfileScreen.d.ts.map +1 -1
  370. package/lib/typescript/module/ui/screens/FAQScreen.d.ts.map +1 -1
  371. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
  372. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
  373. package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  374. package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  375. package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  376. package/lib/typescript/module/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
  377. package/lib/typescript/module/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  378. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts +1 -1
  379. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  380. package/lib/typescript/module/ui/screens/NotificationsScreen.d.ts.map +1 -1
  381. package/lib/typescript/module/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  382. package/lib/typescript/module/ui/screens/PreferencesScreen.d.ts.map +1 -1
  383. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  384. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  385. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
  386. package/lib/typescript/module/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  387. package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  388. package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +1 -1
  389. package/lib/typescript/module/ui/screens/UserListScreen.d.ts.map +1 -1
  390. package/lib/typescript/module/ui/screens/fileManagement/hooks/useFileUploadState.d.ts.map +1 -1
  391. package/lib/typescript/module/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
  392. package/lib/typescript/module/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  393. package/lib/typescript/module/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
  394. package/lib/typescript/module/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
  395. package/lib/typescript/module/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  396. package/lib/typescript/module/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  397. package/lib/typescript/module/ui/types/navigation.d.ts +8 -0
  398. package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
  399. package/lib/typescript/module/ui/types/surfaceScreen.d.ts +38 -0
  400. package/lib/typescript/module/ui/types/surfaceScreen.d.ts.map +1 -0
  401. package/package.json +2 -2
  402. package/src/index.ts +12 -5
  403. package/src/ui/components/OxyAccountDialogScreen.tsx +148 -0
  404. package/src/ui/components/OxyAuthChooser.tsx +153 -33
  405. package/src/ui/components/OxyConsentScreen.tsx +1 -1
  406. package/src/ui/components/OxyProvider.tsx +12 -34
  407. package/src/ui/components/ProfileButton.tsx +2 -2
  408. package/src/ui/components/RequireOxyAuth.tsx +1 -1
  409. package/src/ui/components/SurfaceHeaderAction.tsx +60 -0
  410. package/src/ui/components/SurfaceScreen.tsx +226 -0
  411. package/src/ui/components/fileManagement/FileDetailsModal.tsx +50 -36
  412. package/src/ui/components/modals/DeleteAccountModal.tsx +47 -26
  413. package/src/ui/components/oxyAuthChooserStyles.ts +22 -12
  414. package/src/ui/components/surfaces/ActionSheetSurface.tsx +98 -0
  415. package/src/ui/context/OxyContext.tsx +43 -3
  416. package/src/ui/hooks/useAvatarPicker.ts +53 -66
  417. package/src/ui/hooks/useSurfaceHeader.ts +56 -0
  418. package/src/ui/hooks/useSwitchableAccounts.ts +1 -1
  419. package/src/ui/navigation/__tests__/getSurfaceConfig.test.ts +39 -0
  420. package/src/ui/navigation/__tests__/surfaceNavStack.test.ts +68 -0
  421. package/src/ui/navigation/accountDialogManager.ts +14 -2
  422. package/src/ui/navigation/bottomSheetManager.ts +46 -73
  423. package/src/ui/navigation/routes.ts +7 -106
  424. package/src/ui/navigation/surfaceBackBridge.ts +69 -0
  425. package/src/ui/navigation/surfaceNavStack.ts +110 -0
  426. package/src/ui/navigation/surfaceRegistry.ts +240 -0
  427. package/src/ui/navigation/surfaces.ts +272 -0
  428. package/src/ui/screens/AccountMembersScreen.tsx +39 -100
  429. package/src/ui/screens/AccountSettingsScreen.tsx +32 -54
  430. package/src/ui/screens/AccountVerificationScreen.tsx +23 -51
  431. package/src/ui/screens/AppInfoScreen.tsx +6 -13
  432. package/src/ui/screens/AvatarCropScreen.tsx +8 -17
  433. package/src/ui/screens/ConnectedAppsScreen.tsx +39 -60
  434. package/src/ui/screens/CreateAccountScreen.tsx +13 -39
  435. package/src/ui/screens/EditProfileFieldScreen.tsx +30 -48
  436. package/src/ui/screens/EditProfileScreen.tsx +7 -16
  437. package/src/ui/screens/FAQScreen.tsx +9 -13
  438. package/src/ui/screens/FeedbackScreen.tsx +8 -22
  439. package/src/ui/screens/FileManagementScreen.tsx +191 -188
  440. package/src/ui/screens/HelpSupportScreen.tsx +7 -13
  441. package/src/ui/screens/HistoryViewScreen.tsx +26 -31
  442. package/src/ui/screens/LanguageSelectorScreen.tsx +12 -46
  443. package/src/ui/screens/LearnMoreUsernamesScreen.tsx +8 -16
  444. package/src/ui/screens/LegalDocumentsScreen.tsx +7 -22
  445. package/src/ui/screens/ManageAccountScreen.tsx +96 -165
  446. package/src/ui/screens/NotificationsScreen.tsx +7 -13
  447. package/src/ui/screens/PaymentGatewayScreen.tsx +3 -10
  448. package/src/ui/screens/PreferencesScreen.tsx +7 -13
  449. package/src/ui/screens/PremiumSubscriptionScreen.tsx +52 -90
  450. package/src/ui/screens/PrivacySettingsScreen.tsx +9 -21
  451. package/src/ui/screens/ProfileScreen.tsx +9 -11
  452. package/src/ui/screens/SavesCollectionsScreen.tsx +7 -13
  453. package/src/ui/screens/SearchSettingsScreen.tsx +9 -21
  454. package/src/ui/screens/UserLinksScreen.tsx +7 -14
  455. package/src/ui/screens/UserListScreen.tsx +2 -5
  456. package/src/ui/screens/fileManagement/PhotoPickerSection.tsx +1 -1
  457. package/src/ui/screens/fileManagement/hooks/useFileUploadState.ts +9 -7
  458. package/src/ui/screens/trust/TrustAboutScreen.tsx +10 -17
  459. package/src/ui/screens/trust/TrustCenterScreen.tsx +9 -28
  460. package/src/ui/screens/trust/TrustFAQScreen.tsx +15 -18
  461. package/src/ui/screens/trust/TrustLeaderboardScreen.tsx +3 -5
  462. package/src/ui/screens/trust/TrustRewardsScreen.tsx +11 -26
  463. package/src/ui/screens/trust/TrustRulesScreen.tsx +10 -13
  464. package/src/ui/types/navigation.ts +8 -0
  465. package/src/ui/types/surfaceScreen.ts +38 -0
  466. package/lib/commonjs/ui/components/BottomSheet.js +0 -49
  467. package/lib/commonjs/ui/components/BottomSheet.js.map +0 -1
  468. package/lib/commonjs/ui/components/BottomSheetRouter.js +0 -298
  469. package/lib/commonjs/ui/components/BottomSheetRouter.js.map +0 -1
  470. package/lib/commonjs/ui/components/Header.js +0 -305
  471. package/lib/commonjs/ui/components/Header.js.map +0 -1
  472. package/lib/commonjs/ui/components/OxyAccountDialog.js +0 -259
  473. package/lib/commonjs/ui/components/OxyAccountDialog.js.map +0 -1
  474. package/lib/module/ui/components/BottomSheet.js +0 -45
  475. package/lib/module/ui/components/BottomSheet.js.map +0 -1
  476. package/lib/module/ui/components/BottomSheetRouter.js +0 -292
  477. package/lib/module/ui/components/BottomSheetRouter.js.map +0 -1
  478. package/lib/module/ui/components/Header.js +0 -299
  479. package/lib/module/ui/components/Header.js.map +0 -1
  480. package/lib/module/ui/components/OxyAccountDialog.js +0 -254
  481. package/lib/module/ui/components/OxyAccountDialog.js.map +0 -1
  482. package/lib/typescript/commonjs/ui/components/BottomSheet.d.ts +0 -29
  483. package/lib/typescript/commonjs/ui/components/BottomSheet.d.ts.map +0 -1
  484. package/lib/typescript/commonjs/ui/components/BottomSheetRouter.d.ts +0 -9
  485. package/lib/typescript/commonjs/ui/components/BottomSheetRouter.d.ts.map +0 -1
  486. package/lib/typescript/commonjs/ui/components/Header.d.ts +0 -33
  487. package/lib/typescript/commonjs/ui/components/Header.d.ts.map +0 -1
  488. package/lib/typescript/commonjs/ui/components/OxyAccountDialog.d.ts +0 -37
  489. package/lib/typescript/commonjs/ui/components/OxyAccountDialog.d.ts.map +0 -1
  490. package/lib/typescript/module/ui/components/BottomSheet.d.ts +0 -29
  491. package/lib/typescript/module/ui/components/BottomSheet.d.ts.map +0 -1
  492. package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts +0 -9
  493. package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts.map +0 -1
  494. package/lib/typescript/module/ui/components/Header.d.ts +0 -33
  495. package/lib/typescript/module/ui/components/Header.d.ts.map +0 -1
  496. package/lib/typescript/module/ui/components/OxyAccountDialog.d.ts +0 -37
  497. package/lib/typescript/module/ui/components/OxyAccountDialog.d.ts.map +0 -1
  498. package/src/ui/components/BottomSheet.tsx +0 -48
  499. package/src/ui/components/BottomSheetRouter.tsx +0 -310
  500. package/src/ui/components/Header.tsx +0 -224
  501. package/src/ui/components/OxyAccountDialog.tsx +0 -243
  502. package/src/ui/navigation/__tests__/getSheetConfig.test.ts +0 -36
@@ -0,0 +1,39 @@
1
+ /**
2
+ * OxyAccountDialogScreen — the ONE unified account dialog BODY for `@oxyhq/services`.
3
+ *
4
+ * The header (title/subtitle per view + back button) around the headless chooser
5
+ * logic, which lives in `OxyAuthChooser` — the account switcher, sign-in,
6
+ * sign-up, and QR views are ALL there, extracted so the same chooser can be
7
+ * mounted bare by a future host with no Dialog chrome (e.g. an auth.oxy.so hub
8
+ * page driving the cross-origin passkey popup, b2). This file owns ONLY the
9
+ * header + the scroll body.
10
+ *
11
+ * It is presented as the `AccountDialog` route on the shared Bloom SURFACE STACK
12
+ * (`@oxyhq/bloom/surfaces`) — `OxyContext.openAccountDialog` calls
13
+ * `presentDetached('AccountDialog', …, { placement: { base: 'bottom', md:
14
+ * 'center' }, dismissOnBackdrop: false, maxWidth: 420 })`, so the STACK owns the
15
+ * responsive `<Dialog>` chrome and this component renders only its content. That
16
+ * replaces the previous standalone controlled `<Dialog open={isAccountDialogOpen}>`
17
+ * mount: dismissal now flows through the stack (backdrop/swipe disabled), and the
18
+ * header close button (and `OxyAuthChooser`'s `onComplete`) drive
19
+ * `useOxy().closeAccountDialog`, which dismisses the surface and runs its exit
20
+ * animation. The view-enum (`accounts|signin|qr|add|signup`) stays internal here,
21
+ * driven by the shared `AccountDialogController` in `@oxyhq/core`.
22
+ */
23
+ import type React from 'react';
24
+ /**
25
+ * The unified account dialog BODY — the header + `OxyAuthChooser` chooser.
26
+ *
27
+ * Presented as the `AccountDialog` surface (route) on the shared Bloom surface
28
+ * stack; the surface owns the `<Dialog>` chrome (responsive `{ base: 'bottom',
29
+ * md: 'center' }` placement, `dismissOnBackdrop={false}`, `maxWidth={420}` — set
30
+ * by `OxyContext` when it presents this surface), so this component renders ONLY
31
+ * the content. Open it via `useOxy().openAccountDialog(view?)` or the imperative
32
+ * `openAccountDialog('signin')`; the view-enum (`accounts|signin|qr|add|signup`)
33
+ * stays internal here, driven by the shared `AccountDialogController` in
34
+ * `@oxyhq/core`. Closing routes through `useOxy().closeAccountDialog`, which
35
+ * dismisses the surface and runs its exit animation.
36
+ */
37
+ declare const OxyAccountDialogScreen: React.FC;
38
+ export default OxyAccountDialogScreen;
39
+ //# sourceMappingURL=OxyAccountDialogScreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OxyAccountDialogScreen.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyAccountDialogScreen.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,sBAAsB,EAAE,KAAK,CAAC,EA0CnC,CAAC;AA0DF,eAAe,sBAAsB,CAAC"}
@@ -4,8 +4,8 @@
4
4
  *
5
5
  * A thin React Native binding over the headless `AccountDialogController` in
6
6
  * `@oxyhq/core` (bound via `useSyncExternalStore`) — the same data/state
7
- * machine {@link OxyAccountDialog} renders, extracted so it can be mounted in
8
- * TWO places: wrapped in Bloom's `<Dialog>` by `OxyAccountDialog` (the normal
7
+ * machine {@link OxyAccountDialogScreen} renders, extracted so it can be mounted in
8
+ * TWO places: wrapped in Bloom's `<Dialog>` by `OxyAccountDialogScreen` (the normal
9
9
  * in-app surface), and mounted bare by a future auth.oxy.so hub page for the
10
10
  * cross-origin passkey popup (b2) — same chooser, two hosts, two completion
11
11
  * strategies via the `onComplete` prop. Neither host duplicates view logic.
@@ -51,7 +51,7 @@ export interface OxyAuthChooserProps {
51
51
  onComplete?: () => void;
52
52
  }
53
53
  /**
54
- * The account switcher + sign-in/sign-up chooser. Mounted by `OxyAccountDialog`
54
+ * The account switcher + sign-in/sign-up chooser. Mounted by `OxyAccountDialogScreen`
55
55
  * (wrapped in Bloom's `<Dialog>`) today; mountable bare by any future host that
56
56
  * supplies its own `onComplete`.
57
57
  */
@@ -1 +1 @@
1
- {"version":3,"file":"OxyAuthChooser.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyAuthChooser.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA0C/B,MAAM,WAAW,mBAAmB;IAClC,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AA8BD;;;;GAIG;AACH,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAwOjD,CAAC;AA8iBF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"OxyAuthChooser.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyAuthChooser.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA6C/B,MAAM,WAAW,mBAAmB;IAClC,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AA8BD;;;;GAIG;AACH,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAwOjD,CAAC;AAmqBF,eAAe,cAAc,CAAC"}
@@ -5,8 +5,9 @@ import type { OxyProviderProps } from '../types/navigation';
5
5
  *
6
6
  * Provides authentication, session management, query client, and UI overlays.
7
7
  * Wraps its own overlay stack in SafeAreaProvider and GestureHandlerRootView so
8
- * BottomSheetRouter and OxyAccountDialog can safely render even when a consuming
9
- * app has not mounted those providers yet.
8
+ * the shared Bloom SURFACE STACK (`<SurfaceProvider>` / `<SurfaceHost>`) which
9
+ * hosts every SDK surface (the ~35 bottom-sheet routes + the AccountDialog) — can
10
+ * safely render even when a consuming app has not mounted those providers yet.
10
11
  *
11
12
  * Usage:
12
13
  * ```tsx
@@ -1 +1 @@
1
- {"version":3,"file":"OxyProvider.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmE,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AAIjH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAqE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA2OrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"OxyProvider.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AAI7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAgD5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAyOrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -18,7 +18,7 @@ export interface ProfileButtonProps {
18
18
  onNavigateProfile?: () => void;
19
19
  /**
20
20
  * Retained for source compatibility. The trigger now opens the unified
21
- * `OxyAccountDialog` (a centered / bottom-sheet modal) rather than an
21
+ * `OxyAccountDialogScreen` (a centered / bottom-sheet modal) rather than an
22
22
  * anchored popover, so popover placement no longer applies.
23
23
  */
24
24
  placement?: 'up' | 'down' | 'auto';
@@ -34,7 +34,7 @@ export interface ProfileButtonProps {
34
34
  /**
35
35
  * Self-contained sidebar account trigger, modeled on Bluesky's ProfileCard and
36
36
  * the Oxy inbox's `MailboxDrawer` footer. Pressing it opens the unified
37
- * {@link OxyAccountDialog} — the single account switcher + sign-in surface — via
37
+ * {@link OxyAccountDialogScreen} — the single account switcher + sign-in surface — via
38
38
  * `useOxy().openAccountDialog`.
39
39
  *
40
40
  * Three auth states from {@link useAuth}:
@@ -15,7 +15,7 @@
15
15
  * neutral loading state so the signed-out wall never flashes before the
16
16
  * device-first cold boot concludes (the documented cold-boot race).
17
17
  *
18
- * Styling follows the sibling `OxyAccountDialog`/`OxySignInButton` pattern —
18
+ * Styling follows the sibling `OxyAccountDialogScreen`/`OxySignInButton` pattern —
19
19
  * `useTheme()` + `StyleSheet` (NOT NativeWind), so the gate renders correctly in
20
20
  * EVERY consumer, including apps that do not run NativeWind (e.g. the accounts
21
21
  * app).
@@ -0,0 +1,16 @@
1
+ import type React from 'react';
2
+ export interface SurfaceHeaderActionProps {
3
+ /** Button label (e.g. a translated "Save"). */
4
+ label: string;
5
+ onPress: () => void;
6
+ /** Show a spinner instead of the label (also disables the button). */
7
+ loading?: boolean;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * A filled pill action for a surface's nav-header right slot — the canonical
12
+ * "Save" affordance. Pass a memoized instance to `useSurfaceHeader({ right })`
13
+ * so the header does not thrash between renders.
14
+ */
15
+ export declare const SurfaceHeaderAction: React.FC<SurfaceHeaderActionProps>;
16
+ //# sourceMappingURL=SurfaceHeaderAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SurfaceHeaderAction.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/SurfaceHeaderAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,MAAM,WAAW,wBAAwB;IACvC,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAuBlE,CAAC"}
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import type { SurfaceControls } from '@oxyhq/bloom/surfaces';
3
+ import type { SurfaceNavStack } from '../navigation/surfaceNavStack';
4
+ import { type SurfacePresentation } from '../navigation/surfaceRegistry';
5
+ export interface SurfaceScreenProps {
6
+ /** This surface's route history (the NAV-WITHIN axis). */
7
+ navStack: SurfaceNavStack;
8
+ /** Bloom's per-surface controls (dismiss / present a child) — the DEPTH axis. */
9
+ surface: SurfaceControls;
10
+ /** This surface's presentation, so `navigate` knows when to drill in vs. stack. */
11
+ presentation: SurfacePresentation;
12
+ /** Whether backdrop / Escape / back may dismiss at the root frame. Defaults to true. */
13
+ dismissOnBackdrop?: boolean;
14
+ }
15
+ /**
16
+ * Binds one SDK surface to its content: resolves the lazy screen for the current
17
+ * nav-stack frame and renders it inside the error boundary with the per-surface
18
+ * navigation props. Mounted by `surfaces.present` as the Bloom surface's content.
19
+ *
20
+ * Dismissal is driven through the nav stack's `closing` flag (watched in an
21
+ * effect) rather than a captured-controls call, so a dismiss requested before
22
+ * this surface mounted still resolves the Bloom surface exactly once.
23
+ */
24
+ declare function SurfaceScreen({ navStack, surface, presentation, dismissOnBackdrop, }: SurfaceScreenProps): React.JSX.Element | null;
25
+ export default SurfaceScreen;
26
+ //# sourceMappingURL=SurfaceScreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SurfaceScreen.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/SurfaceScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoE,MAAM,OAAO,CAAC;AAKzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAI7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAoB,KAAK,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AA+D3F,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,QAAQ,EAAE,eAAe,CAAC;IAC1B,iFAAiF;IACjF,OAAO,EAAE,eAAe,CAAC;IACzB,mFAAmF;IACnF,YAAY,EAAE,mBAAmB,CAAC;IAClC,wFAAwF;IACxF,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,iBAAS,aAAa,CAAC,EACrB,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,iBAAwB,GACzB,EAAE,kBAAkB,4BA6HpB;AAED,eAAe,aAAa,CAAC"}
@@ -1,14 +1,24 @@
1
1
  import type React from 'react';
2
- import { type DialogControlProps } from '@oxyhq/bloom';
2
+ import { type SurfaceControls } from '@oxyhq/bloom/surfaces';
3
3
  import type { FileMetadata } from '@oxyhq/core';
4
4
  interface FileDetailsModalProps {
5
- control: DialogControlProps;
6
- file: FileMetadata | null;
5
+ /** The presenting surface's controls (from `surfaces.present`). */
6
+ surface: SurfaceControls;
7
+ file: FileMetadata;
7
8
  onDownload: (fileId: string, filename: string) => void;
8
9
  onDelete: (fileId: string, filename: string) => void;
9
10
  isOwner: boolean;
10
- onClose?: () => void;
11
11
  }
12
+ /**
13
+ * File-detail panel — a rich presented surface (NOT a yes/no confirm): a file's
14
+ * icon + metadata plus download / delete / cancel actions. Each action first
15
+ * dismisses this surface, then runs its handler, so a follow-up delete confirm
16
+ * stacks cleanly above whatever remains. Presented via {@link presentFileDetails}.
17
+ */
12
18
  export declare const FileDetailsModal: React.FC<FileDetailsModalProps>;
19
+ /** Options accepted by {@link presentFileDetails} (everything but `surface`). */
20
+ type PresentFileDetailsOptions = Omit<FileDetailsModalProps, 'surface'>;
21
+ /** Present the file-detail panel on the shared surface stack. */
22
+ export declare function presentFileDetails(options: PresentFileDetailsOptions): void;
13
23
  export {};
14
24
  //# sourceMappingURL=FileDetailsModal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileDetailsModal.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/fileManagement/FileDetailsModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAU,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAE/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD,UAAU,qBAAqB;IAC3B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAgG5D,CAAC"}
1
+ {"version":3,"file":"FileDetailsModal.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/fileManagement/FileDetailsModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EAAY,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD,UAAU,qBAAqB;IAC3B,mEAAmE;IACnE,OAAO,EAAE,eAAe,CAAC;IACzB,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,OAAO,EAAE,OAAO,CAAC;CACpB;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA6F5D,CAAC;AAEF,iFAAiF;AACjF,KAAK,yBAAyB,GAAG,IAAI,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;AAExE,iEAAiE;AACjE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,IAAI,CAI3E"}
@@ -1,11 +1,26 @@
1
1
  import type React from 'react';
2
- import { type DialogControlProps } from '@oxyhq/bloom';
2
+ import { type SurfaceControls } from '@oxyhq/bloom/surfaces';
3
3
  interface DeleteAccountModalProps {
4
- control: DialogControlProps;
4
+ /** The presenting surface's controls (from `surfaces.present`). */
5
+ surface: SurfaceControls;
5
6
  username: string;
6
7
  onDelete: (confirmText: string) => Promise<void>;
7
8
  t: (key: string, params?: Record<string, string>) => string | undefined;
8
9
  }
10
+ /**
11
+ * Delete-account confirmation — a rich presented surface (NOT a yes/no confirm):
12
+ * the user must retype their username, then the destructive action runs
13
+ * `onDelete`. On success the surface is dismissed with `true` (the presenter
14
+ * then signs out + closes); cancel dismisses with `false`. Presented via
15
+ * {@link presentDeleteAccount}.
16
+ */
9
17
  declare const DeleteAccountModal: React.FC<DeleteAccountModalProps>;
18
+ /** Options accepted by {@link presentDeleteAccount} (everything but `surface`). */
19
+ type PresentDeleteAccountOptions = Omit<DeleteAccountModalProps, 'surface'>;
20
+ /**
21
+ * Present the delete-account confirmation on the shared surface stack. Resolves
22
+ * `true` once the account is deleted, `false` if cancelled/dismissed.
23
+ */
24
+ export declare function presentDeleteAccount(options: PresentDeleteAccountOptions): Promise<boolean>;
10
25
  export default DeleteAccountModal;
11
26
  //# sourceMappingURL=DeleteAccountModal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteAccountModal.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/modals/DeleteAccountModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAU,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAG/D,UAAU,uBAAuB;IAC7B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;CAC3E;AAED,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA6FzD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"DeleteAccountModal.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/modals/DeleteAccountModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,EAAY,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEvE,UAAU,uBAAuB;IAC7B,mEAAmE;IACnE,OAAO,EAAE,eAAe,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;CAC3E;AAED;;;;;;GAMG;AACH,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA4FzD,CAAC;AAEF,mFAAmF;AACnF,KAAK,2BAA2B,GAAG,IAAI,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;AAE5E;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,OAAO,CAAC,CAI3F;AAED,eAAe,kBAAkB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Shared styles for `OxyAuthChooser`'s views. Extracted from `OxyAccountDialog`
2
+ * Shared styles for `OxyAuthChooser`'s views. Extracted from `OxyAccountDialogScreen`
3
3
  * so both the Dialog-wrapped host and any bare host (e.g. a future
4
4
  * auth.oxy.so hub page) render identically without duplicating a StyleSheet.
5
5
  */
@@ -37,15 +37,29 @@ export declare const authChooserStyles: {
37
37
  fontSize: number;
38
38
  marginTop: number;
39
39
  };
40
- addRow: {
40
+ /** Prominent current-account header (Google-style collapsed row). */
41
+ currentAccountRow: {
41
42
  flexDirection: "row";
42
43
  alignItems: "center";
43
44
  gap: number;
44
- borderWidth: number;
45
- borderStyle: "dashed";
46
- borderRadius: number;
47
45
  paddingVertical: number;
48
46
  paddingHorizontal: number;
47
+ };
48
+ currentAccountMeta: {
49
+ flex: number;
50
+ minWidth: number;
51
+ };
52
+ currentAccountName: {
53
+ fontSize: number;
54
+ fontWeight: "700";
55
+ };
56
+ currentAccountEmail: {
57
+ fontSize: number;
58
+ marginTop: number;
59
+ };
60
+ manageButton: {
61
+ width: "100%";
62
+ borderRadius: number;
49
63
  marginTop: number;
50
64
  };
51
65
  addBadge: {
@@ -56,10 +70,6 @@ export declare const authChooserStyles: {
56
70
  alignItems: "center";
57
71
  justifyContent: "center";
58
72
  };
59
- footerLinks: {
60
- alignItems: "center";
61
- marginTop: number;
62
- };
63
73
  footerLink: {
64
74
  alignSelf: "center";
65
75
  paddingVertical: number;
@@ -1 +1 @@
1
- {"version":3,"file":"oxyAuthChooserStyles.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/oxyAuthChooserStyles.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0H5B,CAAC"}
1
+ {"version":3,"file":"oxyAuthChooserStyles.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/oxyAuthChooserStyles.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkC5B,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkGrE,CAAC"}
@@ -0,0 +1,38 @@
1
+ import type React from 'react';
2
+ import { type SurfaceControls } from '@oxyhq/bloom/surfaces';
3
+ /**
4
+ * A single choice in an {@link ActionSheetSurface} — a labelled button that
5
+ * resolves the surface with `value` when pressed.
6
+ */
7
+ export interface ActionSheetOption<T extends string> {
8
+ label: string;
9
+ value: T;
10
+ /** Render as a destructive (negative) button. */
11
+ destructive?: boolean;
12
+ }
13
+ export interface ActionSheetSurfaceProps<T extends string> {
14
+ /** The presenting surface's controls (from `surfaces.present`). */
15
+ surface: SurfaceControls;
16
+ /** Headline. */
17
+ title: string;
18
+ /** Optional supporting copy. */
19
+ message?: string;
20
+ /** The choices; each dismisses the surface with its `value`. */
21
+ options: ActionSheetOption<T>[];
22
+ /** Cancel button label — dismisses with `undefined`. */
23
+ cancelLabel: string;
24
+ }
25
+ /**
26
+ * A multi-choice action sheet rendered as a shared-stack surface — the
27
+ * many-option counterpart to Bloom's two-way `surfaces.confirm`. Each option
28
+ * button resolves the surface's `present()` promise with that option's `value`;
29
+ * cancel / backdrop / Escape resolve `undefined`. Presented via
30
+ * {@link presentActionSheet}.
31
+ */
32
+ export declare function ActionSheetSurface<T extends string>({ surface, title, message, options, cancelLabel, }: ActionSheetSurfaceProps<T>): React.ReactElement;
33
+ /**
34
+ * Present an {@link ActionSheetSurface} on the shared stack and resolve with the
35
+ * chosen option `value`, or `undefined` if cancelled/dismissed.
36
+ */
37
+ export declare function presentActionSheet<T extends string>(options: Omit<ActionSheetSurfaceProps<T>, 'surface'>): Promise<T | undefined>;
38
+ //# sourceMappingURL=ActionSheetSurface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionSheetSurface.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/surfaces/ActionSheetSurface.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAY,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEvE;;;GAGG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,MAAM;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;IACT,iDAAiD;IACjD,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB,CAAC,CAAC,SAAS,MAAM;IACrD,mEAAmE;IACnE,OAAO,EAAE,eAAe,CAAC;IACzB,gBAAgB;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IAChC,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;CACvB;AAKD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAAE,EACjD,OAAO,EACP,KAAK,EACL,OAAO,EACP,OAAO,EACP,WAAW,GACd,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAuCjD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAC/C,OAAO,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,GACrD,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAIxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA2D/B,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EAExB,MAAM,mBAAmB,CAAC;AAY3B,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAIlF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA29BzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,mCAAc,CAAC;AAmE9C,eAAO,MAAM,MAAM,QAAO,eAMzB,CAAC"}
1
+ {"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA4D/B,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EAExB,MAAM,mBAAmB,CAAC;AAY3B,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAIlF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAkgCzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,mCAAc,CAAC;AAmE9C,eAAO,MAAM,MAAM,QAAO,eAMzB,CAAC"}
@@ -3,10 +3,11 @@
3
3
  *
4
4
  * Extracts avatar selection logic from OxyContext for better modularity.
5
5
  *
6
- * Flow:
7
- * 1. Open the FileManagement bottom sheet in select mode for image files.
8
- * 2. After the user picks an image, route to the AvatarCrop screen so they
9
- * can square-crop + zoom before the avatar is set.
6
+ * Flow (typed promises over the shared surface stack — no callback props):
7
+ * 1. `surfaces.present('FileManagement', …)` opens the image-only picker and
8
+ * resolves with the picked file (or `undefined` if the user cancels).
9
+ * 2. Resolve a private-safe source URL, then `surfaces.present('AvatarCrop', …)`
10
+ * opens the square-crop editor and resolves with the cropped JPEG.
10
11
  * 3. The cropped JPEG is uploaded as a NEW file via `oxyServices.assetUpload`
11
12
  * and that file becomes the user's avatar.
12
13
  *
@@ -15,19 +16,14 @@
15
16
  */
16
17
  import type { OxyServices } from '@oxyhq/core';
17
18
  import type { QueryClient } from '@tanstack/react-query';
18
- import type { RouteName } from '../navigation/routes';
19
19
  interface UseAvatarPickerOptions {
20
20
  oxyServices: OxyServices;
21
21
  currentLanguage: string | null | undefined;
22
22
  activeSessionId: string | null;
23
23
  queryClient: QueryClient;
24
- showBottomSheet: (config: {
25
- screen: RouteName;
26
- props?: Record<string, unknown>;
27
- }) => void;
28
24
  }
29
- export declare function useAvatarPicker({ oxyServices, currentLanguage, activeSessionId, queryClient, showBottomSheet, }: UseAvatarPickerOptions): {
30
- openAvatarPicker: () => void;
25
+ export declare function useAvatarPicker({ oxyServices, currentLanguage, activeSessionId, queryClient, }: UseAvatarPickerOptions): {
26
+ openAvatarPicker: () => Promise<void>;
31
27
  };
32
28
  export {};
33
29
  //# sourceMappingURL=useAvatarPicker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAvatarPicker.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useAvatarPicker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAgB,WAAW,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAItD,UAAU,sBAAsB;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,EAAE,WAAW,CAAC;IACzB,eAAe,EAAE,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;CAC3F;AAkBD,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,eAAe,EACf,eAAe,EACf,WAAW,EACX,eAAe,GAChB,EAAE,sBAAsB;;EA8GxB"}
1
+ {"version":3,"file":"useAvatarPicker.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useAvatarPicker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAMzD,UAAU,sBAAsB;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,EAAE,WAAW,CAAC;CAC1B;AAkBD,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,eAAe,EACf,eAAe,EACf,WAAW,GACZ,EAAE,sBAAsB;;EAkGxB"}
@@ -0,0 +1,31 @@
1
+ import type { DialogHeaderConfig } from '@oxyhq/bloom/dialog';
2
+ /**
3
+ * The header content a mounted surface screen contributes at runtime: its
4
+ * (translated) title/subtitle and optional slot nodes. Back/close affordances
5
+ * are owned by the surface host (`SurfaceScreen`) — a screen never wires them.
6
+ *
7
+ * A `right` slot is the canonical place for a screen-state action (e.g. a Save
8
+ * button whose disabled/loading state reflects the form). Slot nodes MUST be
9
+ * referentially stable (memoize them with `useMemo`) so the header does not
10
+ * thrash.
11
+ */
12
+ export type SurfaceHeaderContent = Pick<DialogHeaderConfig, 'title' | 'subtitle' | 'largeTitle' | 'left' | 'right' | 'onBack'>;
13
+ interface SurfaceHeaderContextValue {
14
+ setContent: (content: SurfaceHeaderContent | null) => void;
15
+ }
16
+ /**
17
+ * Provided by {@link ../components/SurfaceScreen}. Bridges a screen's runtime
18
+ * header contribution up to the host, which merges it with the back/close
19
+ * wiring and drives the Dialog's own nav header. `null` outside a surface (or in
20
+ * a headerless surface), so {@link useSurfaceHeader} is a safe no-op there.
21
+ */
22
+ export declare const SurfaceHeaderContext: import("react").Context<SurfaceHeaderContextValue | null>;
23
+ /**
24
+ * Declare the Dialog nav header's content from within a surface screen — its
25
+ * title/subtitle and any action slot. Merges over nothing (the host owns
26
+ * back/close), replaces on change, and clears on unmount. Call it unconditionally;
27
+ * it is a no-op outside a header-mode surface.
28
+ */
29
+ export declare function useSurfaceHeader(content: SurfaceHeaderContent | null | undefined): void;
30
+ export {};
31
+ //# sourceMappingURL=useSurfaceHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSurfaceHeader.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useSurfaceHeader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D;;;;;;;;;GASG;AACH,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,kBAAkB,EAClB,OAAO,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAClE,CAAC;AAEF,UAAU,yBAAyB;IACjC,UAAU,EAAE,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5D;AAED;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,2DAAwD,CAAC;AAE1F;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAmBvF"}
@@ -13,7 +13,7 @@ export interface UseSwitchableAccountsResult {
13
13
  * real per-account name / email / avatar / color.
14
14
  *
15
15
  * This is a thin binding over the shared `AccountDialogController` in
16
- * `@oxyhq/core` (the SAME headless source the {@link OxyAccountDialog} renders),
16
+ * `@oxyhq/core` (the SAME headless source the {@link OxyAccountDialogScreen} renders),
17
17
  * so there is ONE projection (`projectSwitchableAccounts`) and one switch path
18
18
  * (`controller.switchTo`) across the whole SDK — the local duplicate projection
19
19
  * this hook used to own has been removed. Every switch routes through
@@ -1,8 +1,20 @@
1
1
  /**
2
- * Imperative controls for the unified {@link OxyAccountDialog}.
2
+ * Imperative, outside-React entry points for the unified `OxyAccountDialogScreen`.
3
+ *
4
+ * These delegate to the live handles the mounted `OxyProvider` registers via
5
+ * {@link registerAccountDialogControls}. Under the hood `open`/`close` present
6
+ * and dismiss the `AccountDialog` surface on the shared Bloom surface stack
7
+ * (`OxyContext.openAccountDialog` → `presentDetached('AccountDialog', …)`), so
8
+ * whether the dialog is open is owned by that stack — this module is only the
9
+ * thin bridge that reaches the provider's controller (which sets the dialog
10
+ * view) from a non-React call site.
3
11
  */
4
12
  import type { AccountDialogView } from '@oxyhq/core';
5
- /** Live open/close handles registered by the mounted provider. */
13
+ /**
14
+ * Live open/close handles registered by the mounted provider. `open` presents
15
+ * the `AccountDialog` surface (and points its view); `close` dismisses it. Both
16
+ * are stack operations — this interface never carries visibility state.
17
+ */
6
18
  export interface AccountDialogControls {
7
19
  open: (view?: AccountDialogView) => void;
8
20
  close: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"accountDialogManager.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/accountDialogManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,kEAAkE;AAClE,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACzC,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAKD,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,IAAI,CAOrF;AAED,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAEhE;AAED,oDAAoD;AACpD,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,sFAAsF;AACtF,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAIpE;AAED,sDAAsD;AACtD,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAKzF"}
1
+ {"version":3,"file":"accountDialogManager.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/accountDialogManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACzC,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAKD,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,IAAI,CAOrF;AAED,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAEhE;AAED,oDAAoD;AACpD,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,sFAAsF;AACtF,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAIpE;AAED,sDAAsD;AACtD,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAKzF"}
@@ -1,27 +1,35 @@
1
1
  import type { RouteName } from './routes';
2
2
  /**
3
- * Bottom Sheet State Manager
3
+ * Bottom-sheet manager the INTERNAL adapter that keeps the historical
4
+ * `showBottomSheet` / `closeBottomSheet` API working on top of the new Bloom
5
+ * surface stack (`navigation/surfaces.ts`). The public signatures are unchanged;
6
+ * this file just re-expresses them as thin calls into the typed surface layer.
7
+ *
8
+ * The old single-surface store is gone: `showBottomSheet` now open-or-navigates
9
+ * the "base" (top-most) route surface, and cross-presentation targets (the
10
+ * full-bleed image picker) stack a NEW surface on top — Bloom coordinates the
11
+ * z-order / backdrop / dismiss so nothing clashes.
12
+ */
13
+ /**
14
+ * Open a bottom-sheet route. If the top-most active surface hosts the SAME
15
+ * presentation (the common all-sheets case) the route is drilled into it; a route
16
+ * with a different presentation (the image picker's full-bleed surface) is
17
+ * presented as a NEW surface on top. Opening with no active surface presents the
18
+ * first one.
19
+ *
20
+ * `fullScreen` is accepted for signature compatibility and ignored — a route's
21
+ * surface is now derived from its registry config, not a per-call flag.
4
22
  */
5
- export interface BottomSheetState {
6
- currentScreen: RouteName | null;
7
- screenProps: Record<string, unknown>;
8
- currentStep?: number;
9
- history: Array<{
10
- screen: RouteName;
11
- props: Record<string, unknown>;
12
- step?: number;
13
- }>;
14
- isOpen: boolean;
15
- fullScreen: boolean;
16
- }
17
- export declare const bottomSheetStore: import("zustand").StoreApi<BottomSheetState>;
18
- export declare const getState: () => BottomSheetState;
19
23
  export declare const showBottomSheet: (screenOrConfig: RouteName | {
20
24
  screen: RouteName;
21
25
  props?: Record<string, unknown>;
22
26
  fullScreen?: boolean;
23
27
  }) => void;
28
+ /** Dismiss the whole bottom-sheet session (every active route surface). */
24
29
  export declare const closeBottomSheet: () => void;
30
+ /**
31
+ * Step back within the top-most surface's route history. Returns `true` when a
32
+ * frame was popped, `false` when the surface is already at its root frame.
33
+ */
25
34
  export declare const goBack: () => boolean;
26
- export declare const updateState: (updates: Partial<BottomSheetState>) => void;
27
35
  //# sourceMappingURL=bottomSheetManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bottomSheetManager.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/bottomSheetManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1C;;GAEG;AAEH,MAAM,WAAW,gBAAgB;IAC7B,aAAa,EAAE,SAAS,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrF,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;CACvB;AAWD,eAAO,MAAM,gBAAgB,8CAAoD,CAAC;AAElF,eAAO,MAAM,QAAQ,wBAAoC,CAAC;AAE1D,eAAO,MAAM,eAAe,GACxB,gBAAgB,SAAS,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,KACzG,IA8BF,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,IAEnC,CAAC;AAEF,eAAO,MAAM,MAAM,QAAO,OAezB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,SAAS,OAAO,CAAC,gBAAgB,CAAC,SAE7D,CAAC"}
1
+ {"version":3,"file":"bottomSheetManager.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/bottomSheetManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAK1C;;;;;;;;;;GAUG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GAC1B,gBACI,SAAS,GACT;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,KAC/E,IAeF,CAAC;AAEF,2EAA2E;AAC3E,eAAO,MAAM,gBAAgB,QAAO,IAEnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,QAAO,OAGzB,CAAC"}
@@ -1,64 +1,6 @@
1
- import type { ComponentType, ReactNode } from 'react';
1
+ import type { ComponentType } from 'react';
2
2
  import type { BaseScreenProps } from '../types/navigation';
3
- export type RouteName = 'ManageAccount' | 'AccountVerification' | 'PaymentGateway' | 'Profile' | 'LanguageSelector' | 'PrivacySettings' | 'SearchSettings' | 'FileManagement' | 'HelpSupport' | 'FAQ' | 'Feedback' | 'LegalDocuments' | 'AppInfo' | 'PremiumSubscription' | 'WelcomeNewUser' | 'UserLinks' | 'HistoryView' | 'SavesCollections' | 'EditProfile' | 'EditProfileField' | 'LearnMoreUsernames' | 'TrustCenter' | 'TrustLeaderboard' | 'TrustRewards' | 'TrustRules' | 'AboutTrust' | 'TrustFAQ' | 'FollowersList' | 'FollowingList' | 'CreateAccount' | 'AccountMembers' | 'AccountSettings' | 'AvatarCrop' | 'Notifications' | 'ConnectedApps' | 'Preferences';
3
+ export type RouteName = 'ManageAccount' | 'AccountVerification' | 'PaymentGateway' | 'Profile' | 'LanguageSelector' | 'PrivacySettings' | 'SearchSettings' | 'FileManagement' | 'HelpSupport' | 'FAQ' | 'Feedback' | 'LegalDocuments' | 'AppInfo' | 'PremiumSubscription' | 'WelcomeNewUser' | 'UserLinks' | 'HistoryView' | 'SavesCollections' | 'EditProfile' | 'EditProfileField' | 'LearnMoreUsernames' | 'TrustCenter' | 'TrustLeaderboard' | 'TrustRewards' | 'TrustRules' | 'AboutTrust' | 'TrustFAQ' | 'FollowersList' | 'FollowingList' | 'CreateAccount' | 'AccountMembers' | 'AccountSettings' | 'AvatarCrop' | 'Notifications' | 'ConnectedApps' | 'Preferences' | 'AccountDialog';
4
4
  export declare const getScreenComponent: (routeName: RouteName) => ComponentType<BaseScreenProps> | undefined;
5
5
  export declare const isValidRoute: (routeName: string) => routeName is RouteName;
6
- /**
7
- * Configuration that BottomSheetRouter applies to the underlying BottomSheet
8
- * for a given route. Adding new options here is additive — never rename or
9
- * remove fields without bumping the consumer surface as a breaking change.
10
- */
11
- export interface SheetRouteConfig {
12
- /**
13
- * Which surface hosts the route. `'sheet'` (default) renders the screen in
14
- * the in-tree `BottomSheet`. `'dialog'` renders it in a responsive Bloom
15
- * `<Dialog>` (bottom-sheet on narrow, centered card on `md+`) — used for the
16
- * flagship image picker, which reads better as a centered panel on wide
17
- * viewports than a full-width sheet. `BottomSheetRouter` keeps BOTH surfaces
18
- * mounted and routes the active screen into exactly one based on this value.
19
- */
20
- presentation: 'sheet' | 'dialog';
21
- /**
22
- * When `false`, BottomSheet skips its internal ScrollView and lets the
23
- * screen own scrolling. Required for screens that render a FlatList,
24
- * SectionList, or any other VirtualizedList — nesting one inside a
25
- * plain ScrollView breaks windowing and triggers a RN warning.
26
- *
27
- * Ignored for `presentation: 'dialog'` routes — those don't render in the
28
- * in-tree `BottomSheet` at all.
29
- */
30
- scrollable: boolean;
31
- /**
32
- * Controls the body-pan activation strategy on the underlying bloom
33
- * `BottomSheet`. `true` uses RNGH's `manualActivation` with scroll-handoff
34
- * (recommended for scrollable content — the only RNGH 2.x pattern that
35
- * doesn't steal vertical events from the inner scroller on Android).
36
- * `false` uses an always-active body pan that gates on scroll offset.
37
- *
38
- * Defaults to `true` for all routes — matches the historical in-tree
39
- * BottomSheet behavior. Per-route opt-out is possible if a screen needs
40
- * the always-active pan instead.
41
- */
42
- manualActivation: boolean;
43
- /**
44
- * When `true`, the backdrop dims proportionally with drag distance (iOS
45
- * Photos style). Defaults to `true` for all routes — matches the
46
- * historical in-tree BottomSheet behavior.
47
- */
48
- dynamicBackdrop: boolean;
49
- /**
50
- * Optional custom handle slot. When provided, replaces the default
51
- * 36×5 pill drag handle. The handle remains unconditionally draggable
52
- * via the dedicated handle gesture (when `manualActivation` is `true`).
53
- * Use sparingly — screens should default to the standard handle for
54
- * platform consistency.
55
- */
56
- handleComponent?: () => ReactNode;
57
- }
58
- /**
59
- * Returns the bottom-sheet configuration for a route. Defaults match the
60
- * pre-refactor in-tree `BottomSheet` (scrollable, manualActivation,
61
- * dynamicBackdrop). Routes opt out per-field as needed.
62
- */
63
- export declare const getSheetConfig: (routeName: RouteName | null, screenProps: Record<string, unknown>) => SheetRouteConfig;
64
6
  //# sourceMappingURL=routes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAO3D,MAAM,MAAM,SAAS,GACf,eAAe,GACf,qBAAqB,GACrB,gBAAgB,GAChB,SAAS,GACT,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,aAAa,GACb,KAAK,GACL,UAAU,GACV,gBAAgB,GAChB,SAAS,GACT,qBAAqB,GACrB,gBAAgB,GAChB,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,aAAa,GACb,kBAAkB,GAClB,oBAAoB,GACpB,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,UAAU,GACV,eAAe,GACf,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,YAAY,GACZ,eAAe,GACf,eAAe,GACf,aAAa,CAAC;AAkDpB,eAAO,MAAM,kBAAkB,GAAI,WAAW,SAAS,KAAG,aAAa,CAAC,eAAe,CAAC,GAAG,SAsB1F,CAAC;AAIF,eAAO,MAAM,YAAY,GAAI,WAAW,MAAM,KAAG,SAAS,IAAI,SAE7D,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;;;;;OAOG;IACH,YAAY,EAAE,OAAO,GAAG,QAAQ,CAAC;IACjC;;;;;;;;OAQG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;;;;;;;;;OAUG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,SAAS,CAAC;CACrC;AAgCD;;;;GAIG;AACH,eAAO,MAAM,cAAc,GACvB,WAAW,SAAS,GAAG,IAAI,EAC3B,aAAa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KACrC,gBAWF,CAAC"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAO3D,MAAM,MAAM,SAAS,GACf,eAAe,GACf,qBAAqB,GACrB,gBAAgB,GAChB,SAAS,GACT,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,aAAa,GACb,KAAK,GACL,UAAU,GACV,gBAAgB,GAChB,SAAS,GACT,qBAAqB,GACrB,gBAAgB,GAChB,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,aAAa,GACb,kBAAkB,GAClB,oBAAoB,GACpB,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,UAAU,GACV,eAAe,GACf,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,YAAY,GACZ,eAAe,GACf,eAAe,GACf,aAAa,GACb,eAAe,CAAC;AAsDtB,eAAO,MAAM,kBAAkB,GAAI,WAAW,SAAS,KAAG,aAAa,CAAC,eAAe,CAAC,GAAG,SAsB1F,CAAC;AAIF,eAAO,MAAM,YAAY,GAAI,WAAW,MAAM,KAAG,SAAS,IAAI,SAE7D,CAAC"}