@oxy.so/services 6.2.0 → 8.1.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 (922) hide show
  1. package/README.md +80 -136
  2. package/lib/commonjs/assets/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
  3. package/lib/commonjs/assets/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
  4. package/lib/commonjs/assets/assets/fonts/icons/manifest.json +5 -21
  5. package/lib/commonjs/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
  6. package/lib/commonjs/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
  7. package/lib/commonjs/assets/fonts/icons/manifest.json +5 -21
  8. package/lib/commonjs/index.js +21 -15
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/ui/boot/runProviderColdBoot.js +2 -1
  11. package/lib/commonjs/ui/boot/runProviderColdBoot.js.map +1 -1
  12. package/lib/commonjs/ui/components/OxyAccountDialogScreen.js +2 -3
  13. package/lib/commonjs/ui/components/OxyAccountDialogScreen.js.map +1 -1
  14. package/lib/commonjs/ui/components/OxyAuthChooser.js +15 -32
  15. package/lib/commonjs/ui/components/OxyAuthChooser.js.map +1 -1
  16. package/lib/commonjs/ui/components/OxySignInButton.js +1 -1
  17. package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -1
  18. package/lib/commonjs/ui/components/OxySignInRequestSurface.js.map +1 -1
  19. package/lib/commonjs/ui/components/ProfileButton.js +1 -1
  20. package/lib/commonjs/ui/components/ProfileButton.js.map +1 -1
  21. package/lib/commonjs/ui/components/authChooser/AccountsMenuView.js +2 -2
  22. package/lib/commonjs/ui/components/authChooser/AccountsMenuView.js.map +1 -1
  23. package/lib/commonjs/ui/components/authChooser/SignInRequestView.js +6 -17
  24. package/lib/commonjs/ui/components/authChooser/SignInRequestView.js.map +1 -1
  25. package/lib/commonjs/ui/components/authChooser/TroubleDisclosure.js +1 -1
  26. package/lib/commonjs/ui/components/authChooser/primitives.js +1 -102
  27. package/lib/commonjs/ui/components/authChooser/primitives.js.map +1 -1
  28. package/lib/commonjs/ui/components/authChooser/requestSurfaces.js.map +1 -1
  29. package/lib/commonjs/ui/components/authChooser/signInProgress.js.map +1 -1
  30. package/lib/commonjs/ui/components/authChooser/styles.js +0 -33
  31. package/lib/commonjs/ui/components/authChooser/styles.js.map +1 -1
  32. package/lib/commonjs/ui/components/authChooser/types.js +0 -8
  33. package/lib/commonjs/ui/components/authChooser/types.js.map +1 -1
  34. package/lib/commonjs/ui/components/signIn/InlineCommonsQr.js +1 -1
  35. package/lib/commonjs/ui/components/signIn/OxyAccountPicker.js +153 -58
  36. package/lib/commonjs/ui/components/signIn/OxyAccountPicker.js.map +1 -1
  37. package/lib/commonjs/ui/components/signIn/OxyAuthenticatorPanel.js +325 -0
  38. package/lib/commonjs/ui/components/signIn/OxyAuthenticatorPanel.js.map +1 -0
  39. package/lib/commonjs/ui/components/signIn/OxyDeleteAccountPanel.js +52 -56
  40. package/lib/commonjs/ui/components/signIn/OxyDeleteAccountPanel.js.map +1 -1
  41. package/lib/commonjs/ui/components/signIn/OxyLinkCommonsPanel.js +48 -38
  42. package/lib/commonjs/ui/components/signIn/OxyLinkCommonsPanel.js.map +1 -1
  43. package/lib/commonjs/ui/components/signIn/OxyPasswordPanel.js +141 -0
  44. package/lib/commonjs/ui/components/signIn/OxyPasswordPanel.js.map +1 -0
  45. package/lib/commonjs/ui/components/signIn/OxySignInPanel.js +496 -201
  46. package/lib/commonjs/ui/components/signIn/OxySignInPanel.js.map +1 -1
  47. package/lib/commonjs/ui/components/signIn/OxySignUpPanel.js +211 -42
  48. package/lib/commonjs/ui/components/signIn/OxySignUpPanel.js.map +1 -1
  49. package/lib/commonjs/ui/components/signIn/ReauthStep.js +186 -0
  50. package/lib/commonjs/ui/components/signIn/ReauthStep.js.map +1 -0
  51. package/lib/commonjs/ui/components/signIn/accountFlowParts.js +103 -26
  52. package/lib/commonjs/ui/components/signIn/accountFlowParts.js.map +1 -1
  53. package/lib/commonjs/ui/components/signIn/signInFlowStore.js +50 -0
  54. package/lib/commonjs/ui/components/signIn/signInFlowStore.js.map +1 -0
  55. package/lib/commonjs/ui/components/signIn/signInMethods.js +11 -25
  56. package/lib/commonjs/ui/components/signIn/signInMethods.js.map +1 -1
  57. package/lib/commonjs/ui/context/OxyContext.js +125 -119
  58. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  59. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +11 -10
  60. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
  61. package/lib/commonjs/ui/context/useOxyAccountGraph.js +4 -4
  62. package/lib/commonjs/ui/context/useOxyAccountGraph.js.map +1 -1
  63. package/lib/commonjs/ui/hooks/mutations/mutationFactory.js +1 -1
  64. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +19 -9
  65. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  66. package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js +4 -4
  67. package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js.map +1 -1
  68. package/lib/commonjs/ui/hooks/queries/queryKeys.js +23 -3
  69. package/lib/commonjs/ui/hooks/queries/queryKeys.js.map +1 -1
  70. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +8 -8
  71. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
  72. package/lib/commonjs/ui/hooks/queries/useAuthMethods.js +27 -15
  73. package/lib/commonjs/ui/hooks/queries/useAuthMethods.js.map +1 -1
  74. package/lib/commonjs/ui/hooks/queries/useFileQueries.js +5 -2
  75. package/lib/commonjs/ui/hooks/queries/useFileQueries.js.map +1 -1
  76. package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js +8 -8
  77. package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js.map +1 -1
  78. package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js +4 -3
  79. package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js.map +1 -1
  80. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +6 -6
  81. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
  82. package/lib/commonjs/ui/hooks/useAssets.js +36 -20
  83. package/lib/commonjs/ui/hooks/useAssets.js.map +1 -1
  84. package/lib/commonjs/ui/hooks/useAvatarPicker.js +6 -4
  85. package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +1 -1
  86. package/lib/commonjs/ui/hooks/useDeviceManagement.js +5 -5
  87. package/lib/commonjs/ui/hooks/useDeviceManagement.js.map +1 -1
  88. package/lib/commonjs/ui/hooks/useDeviceSwitcher.js +2 -2
  89. package/lib/commonjs/ui/hooks/useDeviceSwitcher.js.map +1 -1
  90. package/lib/commonjs/ui/hooks/useFileDownloadUrl.js +1 -4
  91. package/lib/commonjs/ui/hooks/useFileDownloadUrl.js.map +1 -1
  92. package/lib/commonjs/ui/hooks/useFollow.js +2 -2
  93. package/lib/commonjs/ui/hooks/useFollow.js.map +1 -1
  94. package/lib/commonjs/ui/hooks/useFollowTarget.js +5 -5
  95. package/lib/commonjs/ui/hooks/useFollowTarget.js.map +1 -1
  96. package/lib/commonjs/ui/hooks/useI18n.js +4 -1
  97. package/lib/commonjs/ui/hooks/useI18n.js.map +1 -1
  98. package/lib/commonjs/ui/hooks/useResolvedFileUrls.js +2 -2
  99. package/lib/commonjs/ui/hooks/useResolvedFileUrls.js.map +1 -1
  100. package/lib/commonjs/ui/hooks/useSessionManagement.js +3 -3
  101. package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
  102. package/lib/commonjs/ui/icons/subsetGlyphMaps.js +0 -16
  103. package/lib/commonjs/ui/icons/subsetGlyphMaps.js.map +1 -1
  104. package/lib/commonjs/ui/navigation/routes.js +6 -4
  105. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  106. package/lib/commonjs/ui/navigation/surfaceRegistry.js +1 -1
  107. package/lib/commonjs/ui/navigation/surfaceRegistry.js.map +1 -1
  108. package/lib/commonjs/ui/oauth/browserBridge.js +247 -0
  109. package/lib/commonjs/ui/oauth/browserBridge.js.map +1 -0
  110. package/lib/commonjs/ui/oauth/completeOAuthCode.js +1 -1
  111. package/lib/commonjs/ui/oauth/completeOAuthCode.js.map +1 -1
  112. package/lib/commonjs/ui/oauth/explicitOAuthConsent.js +1 -1
  113. package/lib/commonjs/ui/oauth/explicitOAuthConsent.js.map +1 -1
  114. package/lib/commonjs/ui/runtime/createOxyRuntime.js +9 -8
  115. package/lib/commonjs/ui/runtime/createOxyRuntime.js.map +1 -1
  116. package/lib/commonjs/ui/runtime/runtimeContext.js.map +1 -1
  117. package/lib/commonjs/ui/screens/AccountMembersScreen.js +7 -7
  118. package/lib/commonjs/ui/screens/AccountMembersScreen.js.map +1 -1
  119. package/lib/commonjs/ui/screens/AccountSecurityPanelScreen.js +35 -0
  120. package/lib/commonjs/ui/screens/AccountSecurityPanelScreen.js.map +1 -0
  121. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +3 -3
  122. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  123. package/lib/commonjs/ui/screens/AccountVerificationScreen.js +1 -1
  124. package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
  125. package/lib/commonjs/ui/screens/AppInfoScreen.js +5 -5
  126. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
  127. package/lib/commonjs/ui/screens/AvatarCropScreen.js +3 -3
  128. package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -1
  129. package/lib/commonjs/ui/screens/ChangeAvatarScreen.js +1 -1
  130. package/lib/commonjs/ui/screens/ChangeAvatarScreen.js.map +1 -1
  131. package/lib/commonjs/ui/screens/CreateAccountScreen.js +1 -1
  132. package/lib/commonjs/ui/screens/CreateAccountScreen.js.map +1 -1
  133. package/lib/commonjs/ui/screens/DeleteAccountScreen.js +19 -0
  134. package/lib/commonjs/ui/screens/DeleteAccountScreen.js.map +1 -0
  135. package/lib/commonjs/ui/screens/DomainsScreen.js +217 -0
  136. package/lib/commonjs/ui/screens/DomainsScreen.js.map +1 -0
  137. package/lib/commonjs/ui/screens/EditProfileScreen.js +1 -1
  138. package/lib/commonjs/ui/screens/EditProfileScreen.js.map +1 -1
  139. package/lib/commonjs/ui/screens/FileManagementScreen.js +25 -11
  140. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  141. package/lib/commonjs/ui/screens/HelpSupportScreen.js +1 -17
  142. package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
  143. package/lib/commonjs/ui/screens/LinkCommonsScreen.js +14 -0
  144. package/lib/commonjs/ui/screens/LinkCommonsScreen.js.map +1 -0
  145. package/lib/commonjs/ui/screens/ManageAccountScreen.js +57 -61
  146. package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
  147. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +52 -62
  148. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  149. package/lib/commonjs/ui/screens/ProfileScreen.js +5 -13
  150. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  151. package/lib/commonjs/ui/screens/SearchSettingsScreen.js +15 -24
  152. package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
  153. package/lib/commonjs/ui/screens/SignInAuthenticatorScreen.js +14 -0
  154. package/lib/commonjs/ui/screens/SignInAuthenticatorScreen.js.map +1 -0
  155. package/lib/commonjs/ui/screens/SignInPasswordScreen.js +20 -0
  156. package/lib/commonjs/ui/screens/SignInPasswordScreen.js.map +1 -0
  157. package/lib/commonjs/ui/screens/UserListScreen.js +3 -3
  158. package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
  159. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +1 -1
  160. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  161. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +25 -17
  162. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  163. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js +2 -2
  164. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  165. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +8 -14
  166. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  167. package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js +11 -9
  168. package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js.map +1 -1
  169. package/lib/commonjs/ui/session/authStore.js +4 -4
  170. package/lib/commonjs/ui/session/authStore.js.map +1 -1
  171. package/lib/commonjs/ui/session/backgroundSession.js +5 -40
  172. package/lib/commonjs/ui/session/backgroundSession.js.map +1 -1
  173. package/lib/commonjs/ui/session/createSessionClient.js +3 -3
  174. package/lib/commonjs/ui/session/createSessionClient.js.map +1 -1
  175. package/lib/commonjs/ui/session/deviceCredentialTracker.js +42 -0
  176. package/lib/commonjs/ui/session/deviceCredentialTracker.js.map +1 -0
  177. package/lib/commonjs/ui/session/identityBinding.js +3 -3
  178. package/lib/commonjs/ui/session/identityBinding.js.map +1 -1
  179. package/lib/commonjs/ui/session/index.js +6 -6
  180. package/lib/commonjs/ui/session/index.js.map +1 -1
  181. package/lib/commonjs/ui/session/sharedDeviceCredentialStore.js +2 -2
  182. package/lib/commonjs/ui/session/sharedDeviceCredentialStore.js.map +1 -1
  183. package/lib/commonjs/ui/session/tokenTransport.js +3 -3
  184. package/lib/commonjs/ui/session/tokenTransport.js.map +1 -1
  185. package/lib/commonjs/ui/stores/assetStore.js +12 -0
  186. package/lib/commonjs/ui/stores/assetStore.js.map +1 -1
  187. package/lib/commonjs/ui/stores/followStore.js +6 -6
  188. package/lib/commonjs/ui/stores/followStore.js.map +1 -1
  189. package/lib/commonjs/ui/utils/accountDeletionHandoff.js +1 -4
  190. package/lib/commonjs/ui/utils/accountDeletionHandoff.js.map +1 -1
  191. package/lib/commonjs/ui/utils/avatarUtils.js +1 -1
  192. package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
  193. package/lib/commonjs/ui/utils/deviceCredential.js +11 -4
  194. package/lib/commonjs/ui/utils/deviceCredential.js.map +1 -1
  195. package/lib/commonjs/ui/utils/fileManagement.js +0 -10
  196. package/lib/commonjs/ui/utils/fileManagement.js.map +1 -1
  197. package/lib/commonjs/ui/utils/sessionHelpers.js +2 -2
  198. package/lib/commonjs/ui/utils/sessionHelpers.js.map +1 -1
  199. package/lib/module/assets/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
  200. package/lib/module/assets/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
  201. package/lib/module/assets/assets/fonts/icons/manifest.json +5 -21
  202. package/lib/module/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
  203. package/lib/module/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
  204. package/lib/module/assets/fonts/icons/manifest.json +5 -21
  205. package/lib/module/index.js +6 -6
  206. package/lib/module/index.js.map +1 -1
  207. package/lib/module/ui/boot/runProviderColdBoot.js +2 -1
  208. package/lib/module/ui/boot/runProviderColdBoot.js.map +1 -1
  209. package/lib/module/ui/components/OxyAccountDialogScreen.js +2 -3
  210. package/lib/module/ui/components/OxyAccountDialogScreen.js.map +1 -1
  211. package/lib/module/ui/components/OxyAuthChooser.js +15 -32
  212. package/lib/module/ui/components/OxyAuthChooser.js.map +1 -1
  213. package/lib/module/ui/components/OxySignInButton.js +1 -1
  214. package/lib/module/ui/components/OxySignInButton.js.map +1 -1
  215. package/lib/module/ui/components/OxySignInRequestSurface.js.map +1 -1
  216. package/lib/module/ui/components/ProfileButton.js +1 -1
  217. package/lib/module/ui/components/ProfileButton.js.map +1 -1
  218. package/lib/module/ui/components/authChooser/AccountsMenuView.js +1 -1
  219. package/lib/module/ui/components/authChooser/AccountsMenuView.js.map +1 -1
  220. package/lib/module/ui/components/authChooser/SignInRequestView.js +6 -17
  221. package/lib/module/ui/components/authChooser/SignInRequestView.js.map +1 -1
  222. package/lib/module/ui/components/authChooser/TroubleDisclosure.js +1 -1
  223. package/lib/module/ui/components/authChooser/primitives.js +2 -103
  224. package/lib/module/ui/components/authChooser/primitives.js.map +1 -1
  225. package/lib/module/ui/components/authChooser/requestSurfaces.js.map +1 -1
  226. package/lib/module/ui/components/authChooser/signInProgress.js.map +1 -1
  227. package/lib/module/ui/components/authChooser/styles.js +0 -33
  228. package/lib/module/ui/components/authChooser/styles.js.map +1 -1
  229. package/lib/module/ui/components/authChooser/types.js +0 -8
  230. package/lib/module/ui/components/authChooser/types.js.map +1 -1
  231. package/lib/module/ui/components/signIn/InlineCommonsQr.js +1 -1
  232. package/lib/module/ui/components/signIn/OxyAccountPicker.js +155 -58
  233. package/lib/module/ui/components/signIn/OxyAccountPicker.js.map +1 -1
  234. package/lib/module/ui/components/signIn/OxyAuthenticatorPanel.js +321 -0
  235. package/lib/module/ui/components/signIn/OxyAuthenticatorPanel.js.map +1 -0
  236. package/lib/module/ui/components/signIn/OxyDeleteAccountPanel.js +54 -58
  237. package/lib/module/ui/components/signIn/OxyDeleteAccountPanel.js.map +1 -1
  238. package/lib/module/ui/components/signIn/OxyLinkCommonsPanel.js +48 -38
  239. package/lib/module/ui/components/signIn/OxyLinkCommonsPanel.js.map +1 -1
  240. package/lib/module/ui/components/signIn/OxyPasswordPanel.js +136 -0
  241. package/lib/module/ui/components/signIn/OxyPasswordPanel.js.map +1 -0
  242. package/lib/module/ui/components/signIn/OxySignInPanel.js +496 -201
  243. package/lib/module/ui/components/signIn/OxySignInPanel.js.map +1 -1
  244. package/lib/module/ui/components/signIn/OxySignUpPanel.js +212 -43
  245. package/lib/module/ui/components/signIn/OxySignUpPanel.js.map +1 -1
  246. package/lib/module/ui/components/signIn/ReauthStep.js +181 -0
  247. package/lib/module/ui/components/signIn/ReauthStep.js.map +1 -0
  248. package/lib/module/ui/components/signIn/accountFlowParts.js +97 -26
  249. package/lib/module/ui/components/signIn/accountFlowParts.js.map +1 -1
  250. package/lib/module/ui/components/signIn/signInFlowStore.js +44 -0
  251. package/lib/module/ui/components/signIn/signInFlowStore.js.map +1 -0
  252. package/lib/module/ui/components/signIn/signInMethods.js +11 -25
  253. package/lib/module/ui/components/signIn/signInMethods.js.map +1 -1
  254. package/lib/module/ui/context/OxyContext.js +121 -115
  255. package/lib/module/ui/context/OxyContext.js.map +1 -1
  256. package/lib/module/ui/context/hooks/useAuthOperations.js +7 -7
  257. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
  258. package/lib/module/ui/context/useOxyAccountGraph.js +4 -4
  259. package/lib/module/ui/context/useOxyAccountGraph.js.map +1 -1
  260. package/lib/module/ui/hooks/mutations/mutationFactory.js +1 -1
  261. package/lib/module/ui/hooks/mutations/useAccountMutations.js +19 -9
  262. package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  263. package/lib/module/ui/hooks/mutations/useServicesMutations.js +4 -4
  264. package/lib/module/ui/hooks/mutations/useServicesMutations.js.map +1 -1
  265. package/lib/module/ui/hooks/queries/queryKeys.js +23 -3
  266. package/lib/module/ui/hooks/queries/queryKeys.js.map +1 -1
  267. package/lib/module/ui/hooks/queries/useAccountQueries.js +8 -8
  268. package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
  269. package/lib/module/ui/hooks/queries/useAuthMethods.js +25 -14
  270. package/lib/module/ui/hooks/queries/useAuthMethods.js.map +1 -1
  271. package/lib/module/ui/hooks/queries/useFileQueries.js +5 -2
  272. package/lib/module/ui/hooks/queries/useFileQueries.js.map +1 -1
  273. package/lib/module/ui/hooks/queries/usePaymentQueries.js +8 -8
  274. package/lib/module/ui/hooks/queries/usePaymentQueries.js.map +1 -1
  275. package/lib/module/ui/hooks/queries/useSecurityQueries.js +4 -3
  276. package/lib/module/ui/hooks/queries/useSecurityQueries.js.map +1 -1
  277. package/lib/module/ui/hooks/queries/useServicesQueries.js +6 -6
  278. package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
  279. package/lib/module/ui/hooks/useAssets.js +36 -20
  280. package/lib/module/ui/hooks/useAssets.js.map +1 -1
  281. package/lib/module/ui/hooks/useAvatarPicker.js +6 -4
  282. package/lib/module/ui/hooks/useAvatarPicker.js.map +1 -1
  283. package/lib/module/ui/hooks/useDeviceManagement.js +4 -4
  284. package/lib/module/ui/hooks/useDeviceManagement.js.map +1 -1
  285. package/lib/module/ui/hooks/useDeviceSwitcher.js +2 -2
  286. package/lib/module/ui/hooks/useDeviceSwitcher.js.map +1 -1
  287. package/lib/module/ui/hooks/useFileDownloadUrl.js +1 -4
  288. package/lib/module/ui/hooks/useFileDownloadUrl.js.map +1 -1
  289. package/lib/module/ui/hooks/useFollow.js +2 -2
  290. package/lib/module/ui/hooks/useFollow.js.map +1 -1
  291. package/lib/module/ui/hooks/useFollowTarget.js +5 -5
  292. package/lib/module/ui/hooks/useFollowTarget.js.map +1 -1
  293. package/lib/module/ui/hooks/useI18n.js +6 -3
  294. package/lib/module/ui/hooks/useI18n.js.map +1 -1
  295. package/lib/module/ui/hooks/useResolvedFileUrls.js +2 -2
  296. package/lib/module/ui/hooks/useResolvedFileUrls.js.map +1 -1
  297. package/lib/module/ui/hooks/useSessionManagement.js +3 -3
  298. package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
  299. package/lib/module/ui/icons/subsetGlyphMaps.js +0 -16
  300. package/lib/module/ui/icons/subsetGlyphMaps.js.map +1 -1
  301. package/lib/module/ui/navigation/routes.js +6 -4
  302. package/lib/module/ui/navigation/routes.js.map +1 -1
  303. package/lib/module/ui/navigation/surfaceRegistry.js +1 -1
  304. package/lib/module/ui/navigation/surfaceRegistry.js.map +1 -1
  305. package/lib/module/ui/oauth/browserBridge.js +239 -0
  306. package/lib/module/ui/oauth/browserBridge.js.map +1 -0
  307. package/lib/module/ui/oauth/completeOAuthCode.js +1 -1
  308. package/lib/module/ui/oauth/completeOAuthCode.js.map +1 -1
  309. package/lib/module/ui/oauth/explicitOAuthConsent.js +1 -1
  310. package/lib/module/ui/oauth/explicitOAuthConsent.js.map +1 -1
  311. package/lib/module/ui/runtime/createOxyRuntime.js +4 -3
  312. package/lib/module/ui/runtime/createOxyRuntime.js.map +1 -1
  313. package/lib/module/ui/runtime/runtimeContext.js.map +1 -1
  314. package/lib/module/ui/screens/AccountMembersScreen.js +7 -7
  315. package/lib/module/ui/screens/AccountMembersScreen.js.map +1 -1
  316. package/lib/module/ui/screens/AccountSecurityPanelScreen.js +32 -0
  317. package/lib/module/ui/screens/AccountSecurityPanelScreen.js.map +1 -0
  318. package/lib/module/ui/screens/AccountSettingsScreen.js +3 -3
  319. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  320. package/lib/module/ui/screens/AccountVerificationScreen.js +1 -1
  321. package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
  322. package/lib/module/ui/screens/AppInfoScreen.js +5 -5
  323. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
  324. package/lib/module/ui/screens/AvatarCropScreen.js +3 -3
  325. package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -1
  326. package/lib/module/ui/screens/ChangeAvatarScreen.js +1 -1
  327. package/lib/module/ui/screens/ChangeAvatarScreen.js.map +1 -1
  328. package/lib/module/ui/screens/CreateAccountScreen.js +1 -1
  329. package/lib/module/ui/screens/CreateAccountScreen.js.map +1 -1
  330. package/lib/module/ui/screens/DeleteAccountScreen.js +17 -0
  331. package/lib/module/ui/screens/DeleteAccountScreen.js.map +1 -0
  332. package/lib/module/ui/screens/DomainsScreen.js +212 -0
  333. package/lib/module/ui/screens/DomainsScreen.js.map +1 -0
  334. package/lib/module/ui/screens/EditProfileScreen.js +1 -1
  335. package/lib/module/ui/screens/EditProfileScreen.js.map +1 -1
  336. package/lib/module/ui/screens/FileManagementScreen.js +25 -11
  337. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  338. package/lib/module/ui/screens/HelpSupportScreen.js +1 -17
  339. package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
  340. package/lib/module/ui/screens/LinkCommonsScreen.js +12 -0
  341. package/lib/module/ui/screens/LinkCommonsScreen.js.map +1 -0
  342. package/lib/module/ui/screens/ManageAccountScreen.js +58 -62
  343. package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
  344. package/lib/module/ui/screens/PrivacySettingsScreen.js +53 -63
  345. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  346. package/lib/module/ui/screens/ProfileScreen.js +5 -13
  347. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  348. package/lib/module/ui/screens/SearchSettingsScreen.js +16 -25
  349. package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
  350. package/lib/module/ui/screens/SignInAuthenticatorScreen.js +12 -0
  351. package/lib/module/ui/screens/SignInAuthenticatorScreen.js.map +1 -0
  352. package/lib/module/ui/screens/SignInPasswordScreen.js +18 -0
  353. package/lib/module/ui/screens/SignInPasswordScreen.js.map +1 -0
  354. package/lib/module/ui/screens/UserListScreen.js +3 -3
  355. package/lib/module/ui/screens/UserListScreen.js.map +1 -1
  356. package/lib/module/ui/screens/WelcomeNewUserScreen.js +1 -1
  357. package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  358. package/lib/module/ui/screens/trust/TrustCenterScreen.js +26 -18
  359. package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  360. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js +2 -2
  361. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  362. package/lib/module/ui/screens/trust/TrustRewardsScreen.js +9 -15
  363. package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  364. package/lib/module/ui/screens/trust/TrustRulesScreen.js +12 -10
  365. package/lib/module/ui/screens/trust/TrustRulesScreen.js.map +1 -1
  366. package/lib/module/ui/session/authStore.js +1 -1
  367. package/lib/module/ui/session/authStore.js.map +1 -1
  368. package/lib/module/ui/session/backgroundSession.js +5 -40
  369. package/lib/module/ui/session/backgroundSession.js.map +1 -1
  370. package/lib/module/ui/session/createSessionClient.js +1 -1
  371. package/lib/module/ui/session/createSessionClient.js.map +1 -1
  372. package/lib/module/ui/session/deviceCredentialTracker.js +38 -0
  373. package/lib/module/ui/session/deviceCredentialTracker.js.map +1 -0
  374. package/lib/module/ui/session/identityBinding.js +1 -1
  375. package/lib/module/ui/session/identityBinding.js.map +1 -1
  376. package/lib/module/ui/session/index.js +1 -1
  377. package/lib/module/ui/session/index.js.map +1 -1
  378. package/lib/module/ui/session/sharedDeviceCredentialStore.js +1 -1
  379. package/lib/module/ui/session/sharedDeviceCredentialStore.js.map +1 -1
  380. package/lib/module/ui/session/tokenTransport.js +3 -3
  381. package/lib/module/ui/session/tokenTransport.js.map +1 -1
  382. package/lib/module/ui/stores/assetStore.js +12 -0
  383. package/lib/module/ui/stores/assetStore.js.map +1 -1
  384. package/lib/module/ui/stores/followStore.js +6 -6
  385. package/lib/module/ui/stores/followStore.js.map +1 -1
  386. package/lib/module/ui/utils/accountDeletionHandoff.js +2 -5
  387. package/lib/module/ui/utils/accountDeletionHandoff.js.map +1 -1
  388. package/lib/module/ui/utils/avatarUtils.js +1 -1
  389. package/lib/module/ui/utils/avatarUtils.js.map +1 -1
  390. package/lib/module/ui/utils/deviceCredential.js +10 -3
  391. package/lib/module/ui/utils/deviceCredential.js.map +1 -1
  392. package/lib/module/ui/utils/fileManagement.js +0 -9
  393. package/lib/module/ui/utils/fileManagement.js.map +1 -1
  394. package/lib/module/ui/utils/sessionHelpers.js +2 -2
  395. package/lib/module/ui/utils/sessionHelpers.js.map +1 -1
  396. package/lib/typescript/commonjs/index.d.ts +5 -5
  397. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  398. package/lib/typescript/commonjs/ui/boot/runProviderColdBoot.d.ts +3 -2
  399. package/lib/typescript/commonjs/ui/boot/runProviderColdBoot.d.ts.map +1 -1
  400. package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts +2 -3
  401. package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts.map +1 -1
  402. package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts +7 -7
  403. package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts.map +1 -1
  404. package/lib/typescript/commonjs/ui/components/OxySignInRequestSurface.d.ts +2 -1
  405. package/lib/typescript/commonjs/ui/components/OxySignInRequestSurface.d.ts.map +1 -1
  406. package/lib/typescript/commonjs/ui/components/authChooser/AccountsMenuView.d.ts +1 -1
  407. package/lib/typescript/commonjs/ui/components/authChooser/AccountsMenuView.d.ts.map +1 -1
  408. package/lib/typescript/commonjs/ui/components/authChooser/SignInRequestView.d.ts +3 -4
  409. package/lib/typescript/commonjs/ui/components/authChooser/SignInRequestView.d.ts.map +1 -1
  410. package/lib/typescript/commonjs/ui/components/authChooser/TroubleDisclosure.d.ts +1 -1
  411. package/lib/typescript/commonjs/ui/components/authChooser/primitives.d.ts +1 -34
  412. package/lib/typescript/commonjs/ui/components/authChooser/primitives.d.ts.map +1 -1
  413. package/lib/typescript/commonjs/ui/components/authChooser/requestSurfaces.d.ts +2 -1
  414. package/lib/typescript/commonjs/ui/components/authChooser/requestSurfaces.d.ts.map +1 -1
  415. package/lib/typescript/commonjs/ui/components/authChooser/signInFailureMessage.d.ts +1 -1
  416. package/lib/typescript/commonjs/ui/components/authChooser/signInFailureMessage.d.ts.map +1 -1
  417. package/lib/typescript/commonjs/ui/components/authChooser/signInProgress.d.ts +2 -1
  418. package/lib/typescript/commonjs/ui/components/authChooser/signInProgress.d.ts.map +1 -1
  419. package/lib/typescript/commonjs/ui/components/authChooser/styles.d.ts +0 -33
  420. package/lib/typescript/commonjs/ui/components/authChooser/styles.d.ts.map +1 -1
  421. package/lib/typescript/commonjs/ui/components/authChooser/types.d.ts +1 -12
  422. package/lib/typescript/commonjs/ui/components/authChooser/types.d.ts.map +1 -1
  423. package/lib/typescript/commonjs/ui/components/signIn/InlineCommonsQr.d.ts +1 -1
  424. package/lib/typescript/commonjs/ui/components/signIn/InlineCommonsQr.d.ts.map +1 -1
  425. package/lib/typescript/commonjs/ui/components/signIn/OxyAccountPicker.d.ts +10 -4
  426. package/lib/typescript/commonjs/ui/components/signIn/OxyAccountPicker.d.ts.map +1 -1
  427. package/lib/typescript/commonjs/ui/components/signIn/OxyAuthenticatorPanel.d.ts +19 -0
  428. package/lib/typescript/commonjs/ui/components/signIn/OxyAuthenticatorPanel.d.ts.map +1 -0
  429. package/lib/typescript/commonjs/ui/components/signIn/OxyDeleteAccountPanel.d.ts +10 -6
  430. package/lib/typescript/commonjs/ui/components/signIn/OxyDeleteAccountPanel.d.ts.map +1 -1
  431. package/lib/typescript/commonjs/ui/components/signIn/OxyLinkCommonsPanel.d.ts +6 -6
  432. package/lib/typescript/commonjs/ui/components/signIn/OxyLinkCommonsPanel.d.ts.map +1 -1
  433. package/lib/typescript/commonjs/ui/components/signIn/OxyPasswordPanel.d.ts +15 -0
  434. package/lib/typescript/commonjs/ui/components/signIn/OxyPasswordPanel.d.ts.map +1 -0
  435. package/lib/typescript/commonjs/ui/components/signIn/OxySignInPanel.d.ts +21 -19
  436. package/lib/typescript/commonjs/ui/components/signIn/OxySignInPanel.d.ts.map +1 -1
  437. package/lib/typescript/commonjs/ui/components/signIn/OxySignUpPanel.d.ts +16 -7
  438. package/lib/typescript/commonjs/ui/components/signIn/OxySignUpPanel.d.ts.map +1 -1
  439. package/lib/typescript/commonjs/ui/components/signIn/ReauthStep.d.ts +34 -0
  440. package/lib/typescript/commonjs/ui/components/signIn/ReauthStep.d.ts.map +1 -0
  441. package/lib/typescript/commonjs/ui/components/signIn/accountFlowParts.d.ts +38 -12
  442. package/lib/typescript/commonjs/ui/components/signIn/accountFlowParts.d.ts.map +1 -1
  443. package/lib/typescript/commonjs/ui/components/signIn/signInFlowStore.d.ts +20 -0
  444. package/lib/typescript/commonjs/ui/components/signIn/signInFlowStore.d.ts.map +1 -0
  445. package/lib/typescript/commonjs/ui/components/signIn/signInMethods.d.ts +8 -21
  446. package/lib/typescript/commonjs/ui/components/signIn/signInMethods.d.ts.map +1 -1
  447. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  448. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts +2 -1
  449. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  450. package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts +4 -39
  451. package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts.map +1 -1
  452. package/lib/typescript/commonjs/ui/context/useOxyAccountGraph.d.ts +2 -1
  453. package/lib/typescript/commonjs/ui/context/useOxyAccountGraph.d.ts.map +1 -1
  454. package/lib/typescript/commonjs/ui/hooks/accountDialogSnapshot.d.ts +1 -1
  455. package/lib/typescript/commonjs/ui/hooks/accountDialogSnapshot.d.ts.map +1 -1
  456. package/lib/typescript/commonjs/ui/hooks/mutations/mutationFactory.d.ts +1 -1
  457. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +4 -4
  458. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  459. package/lib/typescript/commonjs/ui/hooks/mutations/useServicesMutations.d.ts +5 -1
  460. package/lib/typescript/commonjs/ui/hooks/mutations/useServicesMutations.d.ts.map +1 -1
  461. package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts +19 -1
  462. package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts.map +1 -1
  463. package/lib/typescript/commonjs/ui/hooks/queries/useAuthMethods.d.ts +13 -20
  464. package/lib/typescript/commonjs/ui/hooks/queries/useAuthMethods.d.ts.map +1 -1
  465. package/lib/typescript/commonjs/ui/hooks/queries/useFileQueries.d.ts +1 -1
  466. package/lib/typescript/commonjs/ui/hooks/queries/useFileQueries.d.ts.map +1 -1
  467. package/lib/typescript/commonjs/ui/hooks/queries/usePaymentQueries.d.ts +4 -4
  468. package/lib/typescript/commonjs/ui/hooks/queries/useSecurityQueries.d.ts.map +1 -1
  469. package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts +3 -5
  470. package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  471. package/lib/typescript/commonjs/ui/hooks/useAssets.d.ts +5 -5
  472. package/lib/typescript/commonjs/ui/hooks/useAssets.d.ts.map +1 -1
  473. package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts +1 -1
  474. package/lib/typescript/commonjs/ui/hooks/useDeviceSwitcher.d.ts +1 -1
  475. package/lib/typescript/commonjs/ui/hooks/useDeviceSwitcher.d.ts.map +1 -1
  476. package/lib/typescript/commonjs/ui/hooks/useFileDownloadUrl.d.ts.map +1 -1
  477. package/lib/typescript/commonjs/ui/hooks/useFollow.d.ts +1 -1
  478. package/lib/typescript/commonjs/ui/hooks/useI18n.d.ts.map +1 -1
  479. package/lib/typescript/commonjs/ui/hooks/useResolvedFileUrls.d.ts +9 -7
  480. package/lib/typescript/commonjs/ui/hooks/useResolvedFileUrls.d.ts.map +1 -1
  481. package/lib/typescript/commonjs/ui/icons/Ionicons.d.ts +1 -1
  482. package/lib/typescript/commonjs/ui/icons/Ionicons.d.ts.map +1 -1
  483. package/lib/typescript/commonjs/ui/icons/MaterialCommunityIcons.d.ts +1 -1
  484. package/lib/typescript/commonjs/ui/icons/MaterialCommunityIcons.d.ts.map +1 -1
  485. package/lib/typescript/commonjs/ui/icons/subsetGlyphMaps.d.ts +0 -16
  486. package/lib/typescript/commonjs/ui/icons/subsetGlyphMaps.d.ts.map +1 -1
  487. package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts +1 -1
  488. package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts.map +1 -1
  489. package/lib/typescript/commonjs/ui/navigation/routes.d.ts +1 -1
  490. package/lib/typescript/commonjs/ui/navigation/routes.d.ts.map +1 -1
  491. package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts +7 -5
  492. package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts.map +1 -1
  493. package/lib/typescript/commonjs/ui/oauth/browserBridge.d.ts +97 -0
  494. package/lib/typescript/commonjs/ui/oauth/browserBridge.d.ts.map +1 -0
  495. package/lib/typescript/commonjs/ui/runtime/createOxyRuntime.d.ts +6 -2
  496. package/lib/typescript/commonjs/ui/runtime/createOxyRuntime.d.ts.map +1 -1
  497. package/lib/typescript/commonjs/ui/runtime/runtimeContext.d.ts +2 -1
  498. package/lib/typescript/commonjs/ui/runtime/runtimeContext.d.ts.map +1 -1
  499. package/lib/typescript/commonjs/ui/runtime/types.d.ts +2 -1
  500. package/lib/typescript/commonjs/ui/runtime/types.d.ts.map +1 -1
  501. package/lib/typescript/commonjs/ui/screens/AccountSecurityPanelScreen.d.ts +11 -0
  502. package/lib/typescript/commonjs/ui/screens/AccountSecurityPanelScreen.d.ts.map +1 -0
  503. package/lib/typescript/commonjs/ui/screens/DeleteAccountScreen.d.ts +6 -0
  504. package/lib/typescript/commonjs/ui/screens/DeleteAccountScreen.d.ts.map +1 -0
  505. package/lib/typescript/commonjs/ui/screens/{SavesCollectionsScreen.d.ts → DomainsScreen.d.ts} +1 -1
  506. package/lib/typescript/commonjs/ui/screens/DomainsScreen.d.ts.map +1 -0
  507. package/lib/typescript/commonjs/ui/screens/FileManagementScreen.d.ts.map +1 -1
  508. package/lib/typescript/commonjs/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  509. package/lib/typescript/commonjs/ui/screens/LinkCommonsScreen.d.ts +6 -0
  510. package/lib/typescript/commonjs/ui/screens/LinkCommonsScreen.d.ts.map +1 -0
  511. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  512. package/lib/typescript/commonjs/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  513. package/lib/typescript/commonjs/ui/screens/ProfileScreen.d.ts.map +1 -1
  514. package/lib/typescript/commonjs/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  515. package/lib/typescript/commonjs/ui/screens/SignInAuthenticatorScreen.d.ts +6 -0
  516. package/lib/typescript/commonjs/ui/screens/SignInAuthenticatorScreen.d.ts.map +1 -0
  517. package/lib/typescript/commonjs/ui/screens/SignInPasswordScreen.d.ts +6 -0
  518. package/lib/typescript/commonjs/ui/screens/SignInPasswordScreen.d.ts.map +1 -0
  519. package/lib/typescript/commonjs/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  520. package/lib/typescript/commonjs/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  521. package/lib/typescript/commonjs/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  522. package/lib/typescript/commonjs/ui/session/authStore.d.ts +1 -1
  523. package/lib/typescript/commonjs/ui/session/authStore.d.ts.map +1 -1
  524. package/lib/typescript/commonjs/ui/session/backgroundSession.d.ts +3 -4
  525. package/lib/typescript/commonjs/ui/session/backgroundSession.d.ts.map +1 -1
  526. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts +2 -1
  527. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts.map +1 -1
  528. package/lib/typescript/commonjs/ui/session/deviceCredentialTracker.d.ts +23 -0
  529. package/lib/typescript/commonjs/ui/session/deviceCredentialTracker.d.ts.map +1 -0
  530. package/lib/typescript/commonjs/ui/session/identityBinding.d.ts +1 -1
  531. package/lib/typescript/commonjs/ui/session/identityBinding.d.ts.map +1 -1
  532. package/lib/typescript/commonjs/ui/session/index.d.ts +1 -1
  533. package/lib/typescript/commonjs/ui/session/index.d.ts.map +1 -1
  534. package/lib/typescript/commonjs/ui/session/nativeSecureStorage.d.ts +1 -1
  535. package/lib/typescript/commonjs/ui/session/nativeSecureStorage.d.ts.map +1 -1
  536. package/lib/typescript/commonjs/ui/session/sharedDeviceCredentialStore.d.ts +1 -1
  537. package/lib/typescript/commonjs/ui/session/sharedDeviceCredentialStore.d.ts.map +1 -1
  538. package/lib/typescript/commonjs/ui/session/tokenTransport.d.ts +3 -2
  539. package/lib/typescript/commonjs/ui/session/tokenTransport.d.ts.map +1 -1
  540. package/lib/typescript/commonjs/ui/stores/assetStore.d.ts +7 -0
  541. package/lib/typescript/commonjs/ui/stores/assetStore.d.ts.map +1 -1
  542. package/lib/typescript/commonjs/ui/types/navigation.d.ts +1 -1
  543. package/lib/typescript/commonjs/ui/types/navigation.d.ts.map +1 -1
  544. package/lib/typescript/commonjs/ui/utils/accountDeletionHandoff.d.ts.map +1 -1
  545. package/lib/typescript/commonjs/ui/utils/deviceCredential.d.ts +10 -3
  546. package/lib/typescript/commonjs/ui/utils/deviceCredential.d.ts.map +1 -1
  547. package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts +1 -5
  548. package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts.map +1 -1
  549. package/lib/typescript/module/index.d.ts +5 -5
  550. package/lib/typescript/module/index.d.ts.map +1 -1
  551. package/lib/typescript/module/ui/boot/runProviderColdBoot.d.ts +3 -2
  552. package/lib/typescript/module/ui/boot/runProviderColdBoot.d.ts.map +1 -1
  553. package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts +2 -3
  554. package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts.map +1 -1
  555. package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts +7 -7
  556. package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts.map +1 -1
  557. package/lib/typescript/module/ui/components/OxySignInRequestSurface.d.ts +2 -1
  558. package/lib/typescript/module/ui/components/OxySignInRequestSurface.d.ts.map +1 -1
  559. package/lib/typescript/module/ui/components/authChooser/AccountsMenuView.d.ts +1 -1
  560. package/lib/typescript/module/ui/components/authChooser/AccountsMenuView.d.ts.map +1 -1
  561. package/lib/typescript/module/ui/components/authChooser/SignInRequestView.d.ts +3 -4
  562. package/lib/typescript/module/ui/components/authChooser/SignInRequestView.d.ts.map +1 -1
  563. package/lib/typescript/module/ui/components/authChooser/TroubleDisclosure.d.ts +1 -1
  564. package/lib/typescript/module/ui/components/authChooser/primitives.d.ts +1 -34
  565. package/lib/typescript/module/ui/components/authChooser/primitives.d.ts.map +1 -1
  566. package/lib/typescript/module/ui/components/authChooser/requestSurfaces.d.ts +2 -1
  567. package/lib/typescript/module/ui/components/authChooser/requestSurfaces.d.ts.map +1 -1
  568. package/lib/typescript/module/ui/components/authChooser/signInFailureMessage.d.ts +1 -1
  569. package/lib/typescript/module/ui/components/authChooser/signInFailureMessage.d.ts.map +1 -1
  570. package/lib/typescript/module/ui/components/authChooser/signInProgress.d.ts +2 -1
  571. package/lib/typescript/module/ui/components/authChooser/signInProgress.d.ts.map +1 -1
  572. package/lib/typescript/module/ui/components/authChooser/styles.d.ts +0 -33
  573. package/lib/typescript/module/ui/components/authChooser/styles.d.ts.map +1 -1
  574. package/lib/typescript/module/ui/components/authChooser/types.d.ts +1 -12
  575. package/lib/typescript/module/ui/components/authChooser/types.d.ts.map +1 -1
  576. package/lib/typescript/module/ui/components/signIn/InlineCommonsQr.d.ts +1 -1
  577. package/lib/typescript/module/ui/components/signIn/InlineCommonsQr.d.ts.map +1 -1
  578. package/lib/typescript/module/ui/components/signIn/OxyAccountPicker.d.ts +10 -4
  579. package/lib/typescript/module/ui/components/signIn/OxyAccountPicker.d.ts.map +1 -1
  580. package/lib/typescript/module/ui/components/signIn/OxyAuthenticatorPanel.d.ts +19 -0
  581. package/lib/typescript/module/ui/components/signIn/OxyAuthenticatorPanel.d.ts.map +1 -0
  582. package/lib/typescript/module/ui/components/signIn/OxyDeleteAccountPanel.d.ts +10 -6
  583. package/lib/typescript/module/ui/components/signIn/OxyDeleteAccountPanel.d.ts.map +1 -1
  584. package/lib/typescript/module/ui/components/signIn/OxyLinkCommonsPanel.d.ts +6 -6
  585. package/lib/typescript/module/ui/components/signIn/OxyLinkCommonsPanel.d.ts.map +1 -1
  586. package/lib/typescript/module/ui/components/signIn/OxyPasswordPanel.d.ts +15 -0
  587. package/lib/typescript/module/ui/components/signIn/OxyPasswordPanel.d.ts.map +1 -0
  588. package/lib/typescript/module/ui/components/signIn/OxySignInPanel.d.ts +21 -19
  589. package/lib/typescript/module/ui/components/signIn/OxySignInPanel.d.ts.map +1 -1
  590. package/lib/typescript/module/ui/components/signIn/OxySignUpPanel.d.ts +16 -7
  591. package/lib/typescript/module/ui/components/signIn/OxySignUpPanel.d.ts.map +1 -1
  592. package/lib/typescript/module/ui/components/signIn/ReauthStep.d.ts +34 -0
  593. package/lib/typescript/module/ui/components/signIn/ReauthStep.d.ts.map +1 -0
  594. package/lib/typescript/module/ui/components/signIn/accountFlowParts.d.ts +38 -12
  595. package/lib/typescript/module/ui/components/signIn/accountFlowParts.d.ts.map +1 -1
  596. package/lib/typescript/module/ui/components/signIn/signInFlowStore.d.ts +20 -0
  597. package/lib/typescript/module/ui/components/signIn/signInFlowStore.d.ts.map +1 -0
  598. package/lib/typescript/module/ui/components/signIn/signInMethods.d.ts +8 -21
  599. package/lib/typescript/module/ui/components/signIn/signInMethods.d.ts.map +1 -1
  600. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  601. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts +2 -1
  602. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  603. package/lib/typescript/module/ui/context/oxyContextTypes.d.ts +4 -39
  604. package/lib/typescript/module/ui/context/oxyContextTypes.d.ts.map +1 -1
  605. package/lib/typescript/module/ui/context/useOxyAccountGraph.d.ts +2 -1
  606. package/lib/typescript/module/ui/context/useOxyAccountGraph.d.ts.map +1 -1
  607. package/lib/typescript/module/ui/hooks/accountDialogSnapshot.d.ts +1 -1
  608. package/lib/typescript/module/ui/hooks/accountDialogSnapshot.d.ts.map +1 -1
  609. package/lib/typescript/module/ui/hooks/mutations/mutationFactory.d.ts +1 -1
  610. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +4 -4
  611. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  612. package/lib/typescript/module/ui/hooks/mutations/useServicesMutations.d.ts +5 -1
  613. package/lib/typescript/module/ui/hooks/mutations/useServicesMutations.d.ts.map +1 -1
  614. package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts +19 -1
  615. package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts.map +1 -1
  616. package/lib/typescript/module/ui/hooks/queries/useAuthMethods.d.ts +13 -20
  617. package/lib/typescript/module/ui/hooks/queries/useAuthMethods.d.ts.map +1 -1
  618. package/lib/typescript/module/ui/hooks/queries/useFileQueries.d.ts +1 -1
  619. package/lib/typescript/module/ui/hooks/queries/useFileQueries.d.ts.map +1 -1
  620. package/lib/typescript/module/ui/hooks/queries/usePaymentQueries.d.ts +4 -4
  621. package/lib/typescript/module/ui/hooks/queries/useSecurityQueries.d.ts.map +1 -1
  622. package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts +3 -5
  623. package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  624. package/lib/typescript/module/ui/hooks/useAssets.d.ts +5 -5
  625. package/lib/typescript/module/ui/hooks/useAssets.d.ts.map +1 -1
  626. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts +1 -1
  627. package/lib/typescript/module/ui/hooks/useDeviceSwitcher.d.ts +1 -1
  628. package/lib/typescript/module/ui/hooks/useDeviceSwitcher.d.ts.map +1 -1
  629. package/lib/typescript/module/ui/hooks/useFileDownloadUrl.d.ts.map +1 -1
  630. package/lib/typescript/module/ui/hooks/useFollow.d.ts +1 -1
  631. package/lib/typescript/module/ui/hooks/useI18n.d.ts.map +1 -1
  632. package/lib/typescript/module/ui/hooks/useResolvedFileUrls.d.ts +9 -7
  633. package/lib/typescript/module/ui/hooks/useResolvedFileUrls.d.ts.map +1 -1
  634. package/lib/typescript/module/ui/icons/Ionicons.d.ts +1 -1
  635. package/lib/typescript/module/ui/icons/Ionicons.d.ts.map +1 -1
  636. package/lib/typescript/module/ui/icons/MaterialCommunityIcons.d.ts +1 -1
  637. package/lib/typescript/module/ui/icons/MaterialCommunityIcons.d.ts.map +1 -1
  638. package/lib/typescript/module/ui/icons/subsetGlyphMaps.d.ts +0 -16
  639. package/lib/typescript/module/ui/icons/subsetGlyphMaps.d.ts.map +1 -1
  640. package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts +1 -1
  641. package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts.map +1 -1
  642. package/lib/typescript/module/ui/navigation/routes.d.ts +1 -1
  643. package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
  644. package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts +7 -5
  645. package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts.map +1 -1
  646. package/lib/typescript/module/ui/oauth/browserBridge.d.ts +97 -0
  647. package/lib/typescript/module/ui/oauth/browserBridge.d.ts.map +1 -0
  648. package/lib/typescript/module/ui/runtime/createOxyRuntime.d.ts +6 -2
  649. package/lib/typescript/module/ui/runtime/createOxyRuntime.d.ts.map +1 -1
  650. package/lib/typescript/module/ui/runtime/runtimeContext.d.ts +2 -1
  651. package/lib/typescript/module/ui/runtime/runtimeContext.d.ts.map +1 -1
  652. package/lib/typescript/module/ui/runtime/types.d.ts +2 -1
  653. package/lib/typescript/module/ui/runtime/types.d.ts.map +1 -1
  654. package/lib/typescript/module/ui/screens/AccountSecurityPanelScreen.d.ts +11 -0
  655. package/lib/typescript/module/ui/screens/AccountSecurityPanelScreen.d.ts.map +1 -0
  656. package/lib/typescript/module/ui/screens/DeleteAccountScreen.d.ts +6 -0
  657. package/lib/typescript/module/ui/screens/DeleteAccountScreen.d.ts.map +1 -0
  658. package/lib/typescript/module/ui/screens/{SavesCollectionsScreen.d.ts → DomainsScreen.d.ts} +1 -1
  659. package/lib/typescript/module/ui/screens/DomainsScreen.d.ts.map +1 -0
  660. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
  661. package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  662. package/lib/typescript/module/ui/screens/LinkCommonsScreen.d.ts +6 -0
  663. package/lib/typescript/module/ui/screens/LinkCommonsScreen.d.ts.map +1 -0
  664. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  665. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  666. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
  667. package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  668. package/lib/typescript/module/ui/screens/SignInAuthenticatorScreen.d.ts +6 -0
  669. package/lib/typescript/module/ui/screens/SignInAuthenticatorScreen.d.ts.map +1 -0
  670. package/lib/typescript/module/ui/screens/SignInPasswordScreen.d.ts +6 -0
  671. package/lib/typescript/module/ui/screens/SignInPasswordScreen.d.ts.map +1 -0
  672. package/lib/typescript/module/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  673. package/lib/typescript/module/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  674. package/lib/typescript/module/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  675. package/lib/typescript/module/ui/session/authStore.d.ts +1 -1
  676. package/lib/typescript/module/ui/session/authStore.d.ts.map +1 -1
  677. package/lib/typescript/module/ui/session/backgroundSession.d.ts +3 -4
  678. package/lib/typescript/module/ui/session/backgroundSession.d.ts.map +1 -1
  679. package/lib/typescript/module/ui/session/createSessionClient.d.ts +2 -1
  680. package/lib/typescript/module/ui/session/createSessionClient.d.ts.map +1 -1
  681. package/lib/typescript/module/ui/session/deviceCredentialTracker.d.ts +23 -0
  682. package/lib/typescript/module/ui/session/deviceCredentialTracker.d.ts.map +1 -0
  683. package/lib/typescript/module/ui/session/identityBinding.d.ts +1 -1
  684. package/lib/typescript/module/ui/session/identityBinding.d.ts.map +1 -1
  685. package/lib/typescript/module/ui/session/index.d.ts +1 -1
  686. package/lib/typescript/module/ui/session/index.d.ts.map +1 -1
  687. package/lib/typescript/module/ui/session/nativeSecureStorage.d.ts +1 -1
  688. package/lib/typescript/module/ui/session/nativeSecureStorage.d.ts.map +1 -1
  689. package/lib/typescript/module/ui/session/sharedDeviceCredentialStore.d.ts +1 -1
  690. package/lib/typescript/module/ui/session/sharedDeviceCredentialStore.d.ts.map +1 -1
  691. package/lib/typescript/module/ui/session/tokenTransport.d.ts +3 -2
  692. package/lib/typescript/module/ui/session/tokenTransport.d.ts.map +1 -1
  693. package/lib/typescript/module/ui/stores/assetStore.d.ts +7 -0
  694. package/lib/typescript/module/ui/stores/assetStore.d.ts.map +1 -1
  695. package/lib/typescript/module/ui/types/navigation.d.ts +1 -1
  696. package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
  697. package/lib/typescript/module/ui/utils/accountDeletionHandoff.d.ts.map +1 -1
  698. package/lib/typescript/module/ui/utils/deviceCredential.d.ts +10 -3
  699. package/lib/typescript/module/ui/utils/deviceCredential.d.ts.map +1 -1
  700. package/lib/typescript/module/ui/utils/fileManagement.d.ts +1 -5
  701. package/lib/typescript/module/ui/utils/fileManagement.d.ts.map +1 -1
  702. package/package.json +4 -5
  703. package/src/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
  704. package/src/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
  705. package/src/assets/fonts/icons/manifest.json +5 -21
  706. package/src/index.ts +8 -8
  707. package/src/ui/boot/__tests__/coldBootNoIdpRedirect.test.ts +4 -4
  708. package/src/ui/boot/runProviderColdBoot.ts +3 -9
  709. package/src/ui/components/OxyAccountDialogScreen.tsx +2 -3
  710. package/src/ui/components/OxyAuthChooser.tsx +13 -36
  711. package/src/ui/components/OxySignInButton.tsx +1 -1
  712. package/src/ui/components/OxySignInRequestSurface.tsx +2 -1
  713. package/src/ui/components/ProfileButton.tsx +1 -1
  714. package/src/ui/components/authChooser/AccountsMenuView.tsx +1 -6
  715. package/src/ui/components/authChooser/SignInRequestView.tsx +5 -23
  716. package/src/ui/components/authChooser/TroubleDisclosure.tsx +1 -1
  717. package/src/ui/components/authChooser/primitives.tsx +2 -96
  718. package/src/ui/components/authChooser/requestSurfaces.tsx +2 -1
  719. package/src/ui/components/authChooser/signInFailureMessage.ts +1 -1
  720. package/src/ui/components/authChooser/signInProgress.ts +2 -1
  721. package/src/ui/components/authChooser/styles.ts +0 -33
  722. package/src/ui/components/authChooser/types.ts +1 -13
  723. package/src/ui/components/signIn/InlineCommonsQr.tsx +2 -2
  724. package/src/ui/components/signIn/OxyAccountPicker.tsx +131 -66
  725. package/src/ui/components/signIn/OxyAuthenticatorPanel.tsx +294 -0
  726. package/src/ui/components/signIn/OxyDeleteAccountPanel.tsx +48 -61
  727. package/src/ui/components/signIn/OxyLinkCommonsPanel.tsx +43 -35
  728. package/src/ui/components/signIn/OxyPasswordPanel.tsx +117 -0
  729. package/src/ui/components/signIn/OxySignInPanel.tsx +534 -214
  730. package/src/ui/components/signIn/OxySignUpPanel.tsx +186 -56
  731. package/src/ui/components/signIn/ReauthStep.tsx +201 -0
  732. package/src/ui/components/signIn/accountFlowParts.tsx +139 -33
  733. package/src/ui/components/signIn/signInFlowStore.ts +41 -0
  734. package/src/ui/components/signIn/signInMethods.ts +10 -29
  735. package/src/ui/context/OxyContext.tsx +124 -145
  736. package/src/ui/context/hooks/useAuthOperations.ts +9 -8
  737. package/src/ui/context/oxyContextTypes.ts +4 -41
  738. package/src/ui/context/useOxyAccountGraph.ts +6 -5
  739. package/src/ui/hooks/accountDialogSnapshot.ts +1 -1
  740. package/src/ui/hooks/mutations/mutationFactory.ts +1 -1
  741. package/src/ui/hooks/mutations/useAccountMutations.ts +11 -10
  742. package/src/ui/hooks/mutations/useServicesMutations.ts +4 -4
  743. package/src/ui/hooks/queries/queryKeys.ts +26 -2
  744. package/src/ui/hooks/queries/useAccountQueries.ts +8 -8
  745. package/src/ui/hooks/queries/useAuthMethods.ts +22 -19
  746. package/src/ui/hooks/queries/useFileQueries.ts +2 -2
  747. package/src/ui/hooks/queries/usePaymentQueries.ts +8 -8
  748. package/src/ui/hooks/queries/useSecurityQueries.ts +4 -3
  749. package/src/ui/hooks/queries/useServicesQueries.ts +6 -6
  750. package/src/ui/hooks/useAssets.ts +26 -31
  751. package/src/ui/hooks/useAvatarPicker.ts +4 -4
  752. package/src/ui/hooks/useDeviceManagement.ts +4 -4
  753. package/src/ui/hooks/useDeviceSwitcher.ts +2 -7
  754. package/src/ui/hooks/useFileDownloadUrl.ts +1 -5
  755. package/src/ui/hooks/useFollow.ts +2 -2
  756. package/src/ui/hooks/useFollowTarget.ts +5 -5
  757. package/src/ui/hooks/useI18n.ts +6 -3
  758. package/src/ui/hooks/useResolvedFileUrls.ts +8 -6
  759. package/src/ui/hooks/useSessionManagement.ts +3 -3
  760. package/src/ui/icons/subsetGlyphMaps.ts +0 -16
  761. package/src/ui/navigation/__tests__/getSurfaceConfig.test.ts +1 -1
  762. package/src/ui/navigation/accountDialogManager.ts +1 -1
  763. package/src/ui/navigation/routes.ts +11 -8
  764. package/src/ui/navigation/surfaceRegistry.ts +8 -6
  765. package/src/ui/oauth/__tests__/browserAuthTransport.test.ts +8 -8
  766. package/src/ui/oauth/__tests__/browserBridge.test.ts +198 -0
  767. package/src/ui/oauth/__tests__/completeOAuthCode.test.ts +1 -1
  768. package/src/ui/oauth/__tests__/explicitOAuthConsent.test.ts +11 -11
  769. package/src/ui/oauth/__tests__/sharedCompletionPath.test.ts +7 -7
  770. package/src/ui/oauth/browserBridge.ts +234 -0
  771. package/src/ui/oauth/completeOAuthCode.ts +1 -1
  772. package/src/ui/oauth/explicitOAuthConsent.ts +1 -1
  773. package/src/ui/runtime/createOxyRuntime.ts +8 -16
  774. package/src/ui/runtime/runtimeContext.tsx +2 -1
  775. package/src/ui/runtime/types.ts +2 -1
  776. package/src/ui/screens/AccountMembersScreen.tsx +7 -7
  777. package/src/ui/screens/AccountSecurityPanelScreen.tsx +26 -0
  778. package/src/ui/screens/AccountSettingsScreen.tsx +3 -3
  779. package/src/ui/screens/AccountVerificationScreen.tsx +1 -1
  780. package/src/ui/screens/AppInfoScreen.tsx +5 -5
  781. package/src/ui/screens/AvatarCropScreen.tsx +3 -3
  782. package/src/ui/screens/ChangeAvatarScreen.tsx +1 -1
  783. package/src/ui/screens/CreateAccountScreen.tsx +1 -1
  784. package/src/ui/screens/DeleteAccountScreen.tsx +13 -0
  785. package/src/ui/screens/DomainsScreen.tsx +187 -0
  786. package/src/ui/screens/EditProfileScreen.tsx +1 -1
  787. package/src/ui/screens/FileManagementScreen.tsx +15 -21
  788. package/src/ui/screens/HelpSupportScreen.tsx +0 -15
  789. package/src/ui/screens/LinkCommonsScreen.tsx +13 -0
  790. package/src/ui/screens/ManageAccountScreen.tsx +47 -82
  791. package/src/ui/screens/PrivacySettingsScreen.tsx +48 -67
  792. package/src/ui/screens/ProfileScreen.tsx +5 -10
  793. package/src/ui/screens/SearchSettingsScreen.tsx +15 -27
  794. package/src/ui/screens/SignInAuthenticatorScreen.tsx +13 -0
  795. package/src/ui/screens/SignInPasswordScreen.tsx +13 -0
  796. package/src/ui/screens/UserListScreen.tsx +3 -3
  797. package/src/ui/screens/WelcomeNewUserScreen.tsx +1 -1
  798. package/src/ui/screens/trust/TrustCenterScreen.tsx +25 -29
  799. package/src/ui/screens/trust/TrustLeaderboardScreen.tsx +2 -2
  800. package/src/ui/screens/trust/TrustRewardsScreen.tsx +9 -19
  801. package/src/ui/screens/trust/TrustRulesScreen.tsx +14 -14
  802. package/src/ui/session/__tests__/authStore.test.ts +1 -1
  803. package/src/ui/session/__tests__/backgroundSession.test.ts +2 -61
  804. package/src/ui/session/__tests__/createSessionClient.test.ts +7 -9
  805. package/src/ui/session/__tests__/sharedDeviceCredentialStore.test.ts +1 -1
  806. package/src/ui/session/__tests__/tokenTransport.test.ts +9 -7
  807. package/src/ui/session/authStore.ts +1 -7
  808. package/src/ui/session/backgroundSession.ts +5 -41
  809. package/src/ui/session/createSessionClient.ts +2 -6
  810. package/src/ui/session/deviceCredentialTracker.ts +49 -0
  811. package/src/ui/session/identityBinding.ts +1 -6
  812. package/src/ui/session/index.ts +1 -1
  813. package/src/ui/session/nativeSecureStorage.ts +1 -1
  814. package/src/ui/session/sharedDeviceCredentialStore.ts +1 -6
  815. package/src/ui/session/tokenTransport.ts +5 -4
  816. package/src/ui/stores/__tests__/followStore.test.ts +13 -15
  817. package/src/ui/stores/assetStore.ts +15 -0
  818. package/src/ui/stores/followStore.ts +7 -7
  819. package/src/ui/types/navigation.ts +2 -1
  820. package/src/ui/utils/accountDeletionHandoff.ts +2 -4
  821. package/src/ui/utils/avatarUtils.ts +1 -1
  822. package/src/ui/utils/deviceCredential.ts +11 -4
  823. package/src/ui/utils/fileManagement.ts +0 -12
  824. package/src/ui/utils/sessionHelpers.ts +2 -2
  825. package/lib/commonjs/ui/components/signIn/OxyCreateAccountPanel.js +0 -236
  826. package/lib/commonjs/ui/components/signIn/OxyCreateAccountPanel.js.map +0 -1
  827. package/lib/commonjs/ui/components/signIn/OxyRecoverAccountPanel.js +0 -170
  828. package/lib/commonjs/ui/components/signIn/OxyRecoverAccountPanel.js.map +0 -1
  829. package/lib/commonjs/ui/components/signIn/passkeyError.js +0 -46
  830. package/lib/commonjs/ui/components/signIn/passkeyError.js.map +0 -1
  831. package/lib/commonjs/ui/context/passkeyFlow.js +0 -114
  832. package/lib/commonjs/ui/context/passkeyFlow.js.map +0 -1
  833. package/lib/commonjs/ui/screens/FAQScreen.js +0 -162
  834. package/lib/commonjs/ui/screens/FAQScreen.js.map +0 -1
  835. package/lib/commonjs/ui/screens/FeedbackScreen.js +0 -601
  836. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +0 -1
  837. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +0 -968
  838. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +0 -1
  839. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +0 -132
  840. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +0 -1
  841. package/lib/commonjs/webauthn/passkeyClient.js +0 -39
  842. package/lib/commonjs/webauthn/passkeyClient.js.map +0 -1
  843. package/lib/commonjs/webauthn/passkeyClient.native.js +0 -34
  844. package/lib/commonjs/webauthn/passkeyClient.native.js.map +0 -1
  845. package/lib/commonjs/webauthn/passkeyClient.web.js +0 -57
  846. package/lib/commonjs/webauthn/passkeyClient.web.js.map +0 -1
  847. package/lib/module/ui/components/signIn/OxyCreateAccountPanel.js +0 -231
  848. package/lib/module/ui/components/signIn/OxyCreateAccountPanel.js.map +0 -1
  849. package/lib/module/ui/components/signIn/OxyRecoverAccountPanel.js +0 -165
  850. package/lib/module/ui/components/signIn/OxyRecoverAccountPanel.js.map +0 -1
  851. package/lib/module/ui/components/signIn/passkeyError.js +0 -40
  852. package/lib/module/ui/components/signIn/passkeyError.js.map +0 -1
  853. package/lib/module/ui/context/passkeyFlow.js +0 -107
  854. package/lib/module/ui/context/passkeyFlow.js.map +0 -1
  855. package/lib/module/ui/screens/FAQScreen.js +0 -157
  856. package/lib/module/ui/screens/FAQScreen.js.map +0 -1
  857. package/lib/module/ui/screens/FeedbackScreen.js +0 -599
  858. package/lib/module/ui/screens/FeedbackScreen.js.map +0 -1
  859. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +0 -963
  860. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +0 -1
  861. package/lib/module/ui/screens/SavesCollectionsScreen.js +0 -127
  862. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +0 -1
  863. package/lib/module/webauthn/passkeyClient.js +0 -33
  864. package/lib/module/webauthn/passkeyClient.js.map +0 -1
  865. package/lib/module/webauthn/passkeyClient.native.js +0 -28
  866. package/lib/module/webauthn/passkeyClient.native.js.map +0 -1
  867. package/lib/module/webauthn/passkeyClient.web.js +0 -52
  868. package/lib/module/webauthn/passkeyClient.web.js.map +0 -1
  869. package/lib/typescript/commonjs/ui/components/signIn/OxyCreateAccountPanel.d.ts +0 -24
  870. package/lib/typescript/commonjs/ui/components/signIn/OxyCreateAccountPanel.d.ts.map +0 -1
  871. package/lib/typescript/commonjs/ui/components/signIn/OxyRecoverAccountPanel.d.ts +0 -20
  872. package/lib/typescript/commonjs/ui/components/signIn/OxyRecoverAccountPanel.d.ts.map +0 -1
  873. package/lib/typescript/commonjs/ui/components/signIn/passkeyError.d.ts +0 -16
  874. package/lib/typescript/commonjs/ui/components/signIn/passkeyError.d.ts.map +0 -1
  875. package/lib/typescript/commonjs/ui/context/passkeyFlow.d.ts +0 -92
  876. package/lib/typescript/commonjs/ui/context/passkeyFlow.d.ts.map +0 -1
  877. package/lib/typescript/commonjs/ui/screens/FAQScreen.d.ts +0 -5
  878. package/lib/typescript/commonjs/ui/screens/FAQScreen.d.ts.map +0 -1
  879. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts +0 -5
  880. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +0 -1
  881. package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts +0 -5
  882. package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts.map +0 -1
  883. package/lib/typescript/commonjs/ui/screens/SavesCollectionsScreen.d.ts.map +0 -1
  884. package/lib/typescript/commonjs/webauthn/passkeyClient.d.ts +0 -20
  885. package/lib/typescript/commonjs/webauthn/passkeyClient.d.ts.map +0 -1
  886. package/lib/typescript/commonjs/webauthn/passkeyClient.native.d.ts +0 -15
  887. package/lib/typescript/commonjs/webauthn/passkeyClient.native.d.ts.map +0 -1
  888. package/lib/typescript/commonjs/webauthn/passkeyClient.web.d.ts +0 -36
  889. package/lib/typescript/commonjs/webauthn/passkeyClient.web.d.ts.map +0 -1
  890. package/lib/typescript/module/ui/components/signIn/OxyCreateAccountPanel.d.ts +0 -24
  891. package/lib/typescript/module/ui/components/signIn/OxyCreateAccountPanel.d.ts.map +0 -1
  892. package/lib/typescript/module/ui/components/signIn/OxyRecoverAccountPanel.d.ts +0 -20
  893. package/lib/typescript/module/ui/components/signIn/OxyRecoverAccountPanel.d.ts.map +0 -1
  894. package/lib/typescript/module/ui/components/signIn/passkeyError.d.ts +0 -16
  895. package/lib/typescript/module/ui/components/signIn/passkeyError.d.ts.map +0 -1
  896. package/lib/typescript/module/ui/context/passkeyFlow.d.ts +0 -92
  897. package/lib/typescript/module/ui/context/passkeyFlow.d.ts.map +0 -1
  898. package/lib/typescript/module/ui/screens/FAQScreen.d.ts +0 -5
  899. package/lib/typescript/module/ui/screens/FAQScreen.d.ts.map +0 -1
  900. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts +0 -5
  901. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +0 -1
  902. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts +0 -5
  903. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +0 -1
  904. package/lib/typescript/module/ui/screens/SavesCollectionsScreen.d.ts.map +0 -1
  905. package/lib/typescript/module/webauthn/passkeyClient.d.ts +0 -20
  906. package/lib/typescript/module/webauthn/passkeyClient.d.ts.map +0 -1
  907. package/lib/typescript/module/webauthn/passkeyClient.native.d.ts +0 -15
  908. package/lib/typescript/module/webauthn/passkeyClient.native.d.ts.map +0 -1
  909. package/lib/typescript/module/webauthn/passkeyClient.web.d.ts +0 -36
  910. package/lib/typescript/module/webauthn/passkeyClient.web.d.ts.map +0 -1
  911. package/src/ui/components/signIn/OxyCreateAccountPanel.tsx +0 -207
  912. package/src/ui/components/signIn/OxyRecoverAccountPanel.tsx +0 -154
  913. package/src/ui/components/signIn/passkeyError.ts +0 -44
  914. package/src/ui/context/__tests__/passkeyFlow.test.ts +0 -239
  915. package/src/ui/context/passkeyFlow.ts +0 -145
  916. package/src/ui/screens/FAQScreen.tsx +0 -200
  917. package/src/ui/screens/FeedbackScreen.tsx +0 -766
  918. package/src/ui/screens/PremiumSubscriptionScreen.tsx +0 -1103
  919. package/src/ui/screens/SavesCollectionsScreen.tsx +0 -167
  920. package/src/webauthn/passkeyClient.native.ts +0 -26
  921. package/src/webauthn/passkeyClient.ts +0 -31
  922. package/src/webauthn/passkeyClient.web.ts +0 -56
@@ -9,9 +9,8 @@
9
9
  * only the account dialog knows:
10
10
  *
11
11
  * - which of the controller's facts map onto the surface's props;
12
- * - which alternatives are genuine ones for the CURRENT presentation (the
13
- * passkey ceremony is pointless once the request is already being confirmed,
14
- * and a QR link is redundant while the QR itself is the primary visual);
12
+ * - which alternatives are genuine ones for the CURRENT presentation (a QR
13
+ * link is redundant while the QR itself is the primary visual);
15
14
  * - the one piece of local intent the controller has no opinion on: leaving the
16
15
  * acquisition surface via "I have Commons on another device".
17
16
  *
@@ -22,7 +21,7 @@
22
21
 
23
22
  import type React from 'react';
24
23
  import { useState } from 'react';
25
- import type { AccountDialogSnapshot } from '@oxy.so/core';
24
+ import type { AccountDialogSnapshot } from '@oxy.so/core/session';
26
25
  import OxySignInRequestSurface from '../OxySignInRequestSurface';
27
26
  import type { OxySignInSurfaceAction, SignInAlternatives, Translate } from './types';
28
27
 
@@ -50,24 +49,9 @@ const SignInRequestView: React.FC<SignInRequestViewProps> = ({
50
49
  // leads — until the user explicitly asks for the QR anyway.
51
50
  const acquiring = !failed && commonsAvailability === 'unavailable' && !qrRequested;
52
51
 
53
- // A ceremony is pointless once the request is already being confirmed, and a
54
- // ceremony FAILURE is toasted by the container — this link never renders an
55
- // error of its own (owner mandate).
56
- const passkeyAction: OxySignInSurfaceAction[] =
57
- alternatives.passkeyAvailable && signIn.phase !== 'authorized' && signIn.phase !== 'completed'
58
- ? [
59
- {
60
- key: 'passkey-signin-link',
61
- label: t('accountSwitcher.useIdentityOnDevice'),
62
- onPress: alternatives.onSignInWithPasskey,
63
- },
64
- ]
65
- : [];
66
-
67
52
  const troubleActions = ((): OxySignInSurfaceAction[] => {
68
- // Nothing about the chosen route is actionable any more — only the
69
- // authentication alternatives are.
70
- if (failed) return passkeyAction;
53
+ // Nothing about the chosen route is actionable any more: "Try again" is.
54
+ if (failed) return [];
71
55
  if (acquiring) {
72
56
  return [
73
57
  {
@@ -75,7 +59,6 @@ const SignInRequestView: React.FC<SignInRequestViewProps> = ({
75
59
  label: t('accountSwitcher.showQrAnyway'),
76
60
  onPress: () => setQrRequested(true),
77
61
  },
78
- ...passkeyAction,
79
62
  ];
80
63
  }
81
64
  return [
@@ -89,7 +72,6 @@ const SignInRequestView: React.FC<SignInRequestViewProps> = ({
89
72
  onPress: alternatives.onShowQr,
90
73
  },
91
74
  ]),
92
- ...passkeyAction,
93
75
  {
94
76
  key: 'get-commons-link',
95
77
  label: t('accountSwitcher.getCommons'),
@@ -2,7 +2,7 @@
2
2
  * The "Having trouble?" progressive disclosure (issue #691, Phase 5).
3
3
  *
4
4
  * The normal sign-in surface presents ONE primary action. Every alternative —
5
- * scanning a QR from another device, a passkey on this device, getting Commons,
5
+ * scanning a QR from another device, getting Commons,
6
6
  * creating an account — lives here, hidden until the user asks for it or the
7
7
  * chosen primary route fails.
8
8
  *
@@ -5,17 +5,10 @@
5
5
  */
6
6
 
7
7
  import type React from 'react';
8
- import { Pressable, View } from 'react-native';
9
- import MaterialCommunityIcons from '../../icons/MaterialCommunityIcons';
10
- import { Avatar } from '@oxy.so/bloom/avatar';
11
- import { BloomColorScope } from '@oxy.so/bloom/theme';
8
+ import { Pressable } from 'react-native';
12
9
  import { Text } from '@oxy.so/bloom/typography';
13
- import type { SwitcherContextRow } from '@oxy.so/core';
14
10
  import { authChooserStyles as styles } from './styles';
15
- import { resolveAccentHex, toPreset, type Theme } from './types';
16
-
17
- /** Diameter of a row avatar (the sign-in view's account rows). */
18
- const ROW_AVATAR_SIZE = 40;
11
+ import type { Theme } from './types';
19
12
 
20
13
  /**
21
14
  * A SUBORDINATE action: a small centred text link, never a button.
@@ -43,90 +36,3 @@ export const SubtleLink: React.FC<{
43
36
  <Text style={[styles.linkText, { color: theme.colors.textSecondary }]}>{label}</Text>
44
37
  </Pressable>
45
38
  );
46
-
47
- /**
48
- * A `principal acting as account` row on the sign-in entry — "continue as one of
49
- * these" rather than a choice of authentication METHOD, which is why it stays
50
- * above the primary CTA instead of behind the trouble disclosure.
51
- *
52
- * Pressing it activates the PAIR. The secondary line is the account's `@handle`:
53
- * the device directory carries a handle and no email, deliberately — it is the
54
- * minimum that renders a row for every person on the device, and this surface is
55
- * reached while signed out, where fetching anyone's profile is not an option.
56
- *
57
- * The accent comes from the row's OWN account (`context.color`, straight off the
58
- * directory), not from the theme and not from whoever is signed in. This surface
59
- * is where a device holding two people is most visible, and it is reached while
60
- * signed out — so there is no "current user" whose colour could stand in.
61
- *
62
- * `continueAsLabel` is the signed-out form. The device can list an identity
63
- * (and even mark it active) while this app holds no session, so a check there
64
- * would claim a sign-in that has not happened. Given a label, the row never
65
- * reads as current: its first line is "Continue as @handle", the account's
66
- * name moves to the second line, and it ends in a chevron like any other row.
67
- */
68
- export const AccountRow: React.FC<{
69
- context: SwitcherContextRow;
70
- /** The person this account is reached through, when that is not obvious. */
71
- operatedBy: string | null;
72
- /** Signed out: the row's "Continue as @handle" line. `null` when signed in. */
73
- continueAsLabel?: string | null;
74
- theme: Theme;
75
- activating: boolean;
76
- disabled: boolean;
77
- onPress: () => void;
78
- }> = ({ context, operatedBy, continueAsLabel = null, theme, activating, disabled, onPress }) => {
79
- const accent = resolveAccentHex(context.color, theme.colors.primary);
80
- const rowDisabled = disabled || !context.canActivate;
81
- const current = continueAsLabel === null && context.isActive;
82
- const primary = continueAsLabel ?? context.displayName;
83
- const secondary =
84
- operatedBy ??
85
- (continueAsLabel !== null ? context.displayName : context.handle ? `@${context.handle}` : null);
86
-
87
- return (
88
- <BloomColorScope colorPreset={toPreset(context.color)} asChild>
89
- <Pressable
90
- style={[
91
- styles.accountRow,
92
- {
93
- borderColor: current ? accent : theme.colors.border,
94
- backgroundColor: theme.colors.card,
95
- },
96
- rowDisabled && !activating ? styles.rowDisabled : null,
97
- ]}
98
- onPress={onPress}
99
- disabled={rowDisabled}
100
- accessibilityRole="button"
101
- accessibilityState={{ selected: current, disabled: rowDisabled }}
102
- accessibilityLabel={primary}
103
- >
104
- <View style={[styles.avatarRing, { borderColor: current ? accent : 'transparent' }]}>
105
- <Avatar
106
- source={context.avatarUrl ?? undefined}
107
- variant="thumb"
108
- name={context.displayName}
109
- size={ROW_AVATAR_SIZE}
110
- />
111
- </View>
112
- <View style={styles.rowMeta}>
113
- <Text style={[styles.rowName, { color: theme.colors.text }]} numberOfLines={1}>
114
- {primary}
115
- </Text>
116
- {secondary ? (
117
- <Text style={[styles.rowHandle, { color: theme.colors.textSecondary }]} numberOfLines={1}>
118
- {secondary}
119
- </Text>
120
- ) : null}
121
- </View>
122
- {activating ? (
123
- <MaterialCommunityIcons name="loading" size={20} color={accent} />
124
- ) : current ? (
125
- <MaterialCommunityIcons name="check-circle" size={20} color={accent} />
126
- ) : (
127
- <MaterialCommunityIcons name="chevron-right" size={20} color={theme.colors.textSecondary} />
128
- )}
129
- </Pressable>
130
- </BloomColorScope>
131
- );
132
- };
@@ -19,7 +19,8 @@ import QRCode from 'react-native-qrcode-svg';
19
19
  import { Button } from '@oxy.so/bloom/button';
20
20
  import { useTheme } from '@oxy.so/bloom/theme';
21
21
  import { Text } from '@oxy.so/bloom/typography';
22
- import type { CommonsDeliveryRoute, SignInProgress } from '@oxy.so/core';
22
+ import type { CommonsDeliveryRoute } from '@oxy.so/core';
23
+ import type { SignInProgress } from '@oxy.so/core/session';
23
24
  import { authChooserStyles as styles } from './styles';
24
25
  import type { Theme, Translate } from './types';
25
26
 
@@ -6,7 +6,7 @@
6
6
  * raw `signIn.error` is English or a server string, kept for diagnostics only.
7
7
  */
8
8
 
9
- import type { SignInFailureReason } from '@oxy.so/core';
9
+ import type { SignInFailureReason } from '@oxy.so/core/session';
10
10
  import type { Translate } from './types';
11
11
 
12
12
  /** The toast for `failure`, or `null` when there is nothing to report. */
@@ -16,7 +16,8 @@
16
16
  * Identity confirmed
17
17
  */
18
18
 
19
- import type { CommonsDeliveryRoute, SignInProgress } from '@oxy.so/core';
19
+ import type { CommonsDeliveryRoute } from '@oxy.so/core';
20
+ import type { SignInProgress } from '@oxy.so/core/session';
20
21
  import type { Translate } from './types';
21
22
 
22
23
  /**
@@ -13,39 +13,6 @@ const QR_PLATE_BG = '#FFFFFF';
13
13
  * text-link rhythm every view's fallback affordances share.
14
14
  */
15
15
  export const authChooserStyles = StyleSheet.create({
16
- rows: {
17
- width: '100%',
18
- gap: 8,
19
- },
20
- accountRow: {
21
- flexDirection: 'row',
22
- alignItems: 'center',
23
- gap: 12,
24
- borderWidth: StyleSheet.hairlineWidth,
25
- borderRadius: 16,
26
- paddingVertical: 10,
27
- paddingHorizontal: 12,
28
- },
29
- rowDisabled: {
30
- opacity: 0.6,
31
- },
32
- avatarRing: {
33
- borderRadius: 9999,
34
- borderWidth: 2,
35
- padding: 1,
36
- },
37
- rowMeta: {
38
- flex: 1,
39
- minWidth: 0,
40
- },
41
- rowName: {
42
- fontSize: 15,
43
- fontWeight: '600',
44
- },
45
- rowHandle: {
46
- fontSize: 12.5,
47
- marginTop: 1,
48
- },
49
16
  /**
50
17
  * Animated-collapse container for the account switch list — the outer clip and
51
18
  * the inner measuring wrapper. Style-based (NOT NativeWind): the container
@@ -103,15 +103,6 @@ export interface AccountsMenuActions {
103
103
  }[];
104
104
  }
105
105
 
106
- /**
107
- * Where a passkey sign-in or sign-up can run from the current surface.
108
- *
109
- * `'hub'` = web: it runs in auth.oxy.so's window over the app
110
- * (`continueOnAuth`), on every web origin.
111
- * `'none'` = native, where Commons owns identity.
112
- */
113
- export type PasskeyMode = 'hub' | 'none';
114
-
115
106
  /**
116
107
  * Everything that is NOT the sign-in surface's one primary action.
117
108
  *
@@ -121,14 +112,11 @@ export type PasskeyMode = 'hub' | 'none';
121
112
  * fails). A view never renders one of these as a button.
122
113
  */
123
114
  export interface SignInAlternatives {
124
- /** Whether a WebAuthn ceremony is reachable from this origin at all. */
125
- passkeyAvailable: boolean;
126
- onSignInWithPasskey: () => void;
127
115
  /** Fall back to the cross-device QR handoff (restarts the request). */
128
116
  onShowQr: () => void;
129
117
  /** Open the Commons store listing / landing page for this platform. */
130
118
  onGetCommons: () => void;
131
- /** Create an account: the identity-origin window on web, the Commons flow on native. */
119
+ /** Create an account, in the dialog. */
132
120
  onCreateAccount: () => void;
133
121
  }
134
122
 
@@ -22,7 +22,7 @@ import { RiCheckboxCircleLine } from '@oxy.so/bloom/icons/RiCheckboxCircleLine';
22
22
  import { RiRefreshLine } from '@oxy.so/bloom/icons/RiRefreshLine';
23
23
  import { useTheme } from '@oxy.so/bloom/theme';
24
24
  import { Text } from '@oxy.so/bloom/typography';
25
- import type { AccountDialogController } from '@oxy.so/core';
25
+ import type { AccountDialogController } from '@oxy.so/core/session';
26
26
  import { useI18n } from '../../hooks/useI18n';
27
27
  import { useAccountDialogSnapshot } from '../../hooks/accountDialogSnapshot';
28
28
 
@@ -46,7 +46,7 @@ export const InlineCommonsQr: React.FC<{ controller: AccountDialogController | n
46
46
 
47
47
  // One request for as long as the block is on screen. Withdrawn on the way
48
48
  // out only while it is still ours and still approvable: an attempt the
49
- // person started meanwhile (a passkey window, "Continue with Oxy") is theirs.
49
+ // person started meanwhile ("Continue with Oxy") is theirs.
50
50
  useEffect(() => {
51
51
  if (!controller || !shown) return;
52
52
  const { signIn: current } = controller.getSnapshot();
@@ -8,20 +8,34 @@
8
8
  * means — a switch, a "Continue as" sign-in, or activating the pair before an
9
9
  * OAuth consent — and passes the pair back, never an account id, which cannot
10
10
  * say whose route was chosen.
11
+ *
12
+ * One rounded list: each row is the account's name and `@handle` on the left,
13
+ * its avatar and a chevron on the right, with a hairline between rows that
14
+ * steps aside for a hovered row. Layout is NativeWind; hover is driven by
15
+ * `onHoverIn`/`onHoverOut` (web only), because this pipeline does not emit
16
+ * `hover:` variants — the same pattern as the account menu.
11
17
  */
12
18
 
13
19
  import type React from 'react';
14
- import { Pressable, StyleSheet, View } from 'react-native';
20
+ import { Fragment, useState } from 'react';
21
+ import { ScrollView } from 'react-native';
22
+ import { Pressable, View } from 'react-native-css/components';
23
+ import { Avatar } from '@oxy.so/bloom/avatar';
15
24
  import { RiArrowRightSLine } from '@oxy.so/bloom/icons/RiArrowRightSLine';
25
+ import { RiCheckLine } from '@oxy.so/bloom/icons/RiCheckLine';
26
+ import { RiLoader4Line } from '@oxy.so/bloom/icons/RiLoader4Line';
16
27
  import { RiUserAddLine } from '@oxy.so/bloom/icons/RiUserAddLine';
17
28
  import { useTheme } from '@oxy.so/bloom/theme';
18
29
  import { Text } from '@oxy.so/bloom/typography';
19
- import { showsPrincipalHeaders, type SwitcherContextRow, type SwitcherPrincipalRow } from '@oxy.so/core';
30
+ import { showsPrincipalHeaders, type SwitcherContextRow, type SwitcherPrincipalRow } from '@oxy.so/core/session';
20
31
  import { useI18n } from '../../hooks/useI18n';
21
- import { AccountRow } from '../authChooser/primitives';
22
- import { authChooserStyles } from '../authChooser/styles';
32
+ import { resolveAccentHex } from '../authChooser/types';
23
33
  import { OxyAuthScreen, OxyAuthScreenHeader, OxyAuthTerms } from './OxyAuthScreen';
24
34
 
35
+ /** The list scrolls past this height (`max-h-96`). */
36
+ const LIST_MAX_HEIGHT = 384;
37
+ const AVATAR_SIZE = 40;
38
+
25
39
  export interface OxyAccountPickerProps {
26
40
  /** The device's people, each with the accounts they may act as (`useDeviceSwitcher`). */
27
41
  principals: SwitcherPrincipalRow[];
@@ -35,9 +49,9 @@ export interface OxyAccountPickerProps {
35
49
  /** Disables every row while a choice is in flight. */
36
50
  isLoading?: boolean;
37
51
  /**
38
- * This origin holds no session. A row then reads "Continue as @handle" and
39
- * never as the current account: the device can list an identity as active
40
- * while nobody is signed in HERE.
52
+ * This origin holds no session. A row is then announced as "Continue as
53
+ * @handle" and never marked as the current account: the device can list an
54
+ * identity as active while nobody is signed in HERE.
41
55
  */
42
56
  signedOut?: boolean;
43
57
  }
@@ -53,77 +67,128 @@ export const OxyAccountPicker: React.FC<OxyAccountPickerProps> = ({
53
67
  }) => {
54
68
  const theme = useTheme();
55
69
  const { t } = useI18n();
70
+ const [hovered, setHovered] = useState<number | null>(null);
56
71
  // Whose route a row is only needs naming once someone holds more than one
57
72
  // account here — the same rule the account menu's group headers follow.
58
73
  const namesTheOperator = showsPrincipalHeaders(principals);
59
74
 
75
+ const rows = principals.flatMap((principal) =>
76
+ principal.contexts.map((context) => ({
77
+ context,
78
+ operatedBy:
79
+ namesTheOperator && context.isDelegated
80
+ ? t('accountSwitcher.context.operatedBy', { name: principal.displayName })
81
+ : null,
82
+ })),
83
+ );
84
+ const useAnotherIndex = rows.length;
85
+
86
+ /** The hairline under row `index`, hidden while either neighbour is hovered. */
87
+ const divider = (index: number) =>
88
+ hovered === index || hovered === index + 1 ? (
89
+ <View className="h-px mx-[8px]" />
90
+ ) : (
91
+ <View className="h-px mx-[8px] bg-border opacity-50" />
92
+ );
93
+
94
+ const rowClassName = (index: number, disabled: boolean) =>
95
+ `flex-row items-center gap-[12px] rounded-[14px] p-[8px] ${hovered === index && !disabled ? 'bg-fill' : ''} ${disabled ? 'opacity-50' : ''}`;
96
+
60
97
  return (
61
98
  <OxyAuthScreen>
62
99
  <OxyAuthScreenHeader
63
100
  title={t('signin.chooser.title')}
64
101
  description={appName ? t('signin.chooser.subtitleToApp', { app: appName }) : t('signin.chooser.subtitle')}
65
102
  />
66
- <View style={authChooserStyles.rows}>
67
- {principals.flatMap((principal) =>
68
- principal.contexts.map((context) => (
69
- <AccountRow
70
- key={context.contextId}
71
- context={context}
72
- operatedBy={
73
- namesTheOperator && context.isDelegated
74
- ? t('accountSwitcher.context.operatedBy', { name: principal.displayName })
75
- : null
76
- }
77
- continueAsLabel={
78
- signedOut
79
- ? t('signin.chooser.continueAs', {
80
- name: context.handle ? `@${context.handle}` : context.displayName,
81
- })
82
- : null
83
- }
84
- theme={theme}
85
- activating={pendingContextId === context.contextId}
86
- disabled={isLoading}
87
- onPress={() => onSelectContext(context)}
88
- />
89
- )),
90
- )}
91
- <Pressable
92
- onPress={onUseAnother}
93
- disabled={isLoading}
94
- accessibilityRole="button"
95
- accessibilityLabel={t('signin.chooser.useAnother')}
96
- style={[
97
- authChooserStyles.accountRow,
98
- { borderColor: theme.colors.border, backgroundColor: theme.colors.card },
99
- isLoading ? authChooserStyles.rowDisabled : null,
100
- ]}
101
- testID="use-another-account"
102
- >
103
- <View style={[styles.addGlyph, { backgroundColor: theme.colors.backgroundSecondary }]}>
104
- <RiUserAddLine size="md" fill={theme.colors.textSecondary} />
105
- </View>
106
- <Text style={[authChooserStyles.rowName, styles.addLabel, { color: theme.colors.text }]}>
107
- {t('signin.chooser.useAnother')}
108
- </Text>
109
- <RiArrowRightSLine size="md" fill={theme.colors.textSecondary} />
110
- </Pressable>
103
+ <View className="bg-fill-secondary rounded-[22px] overflow-hidden" testID="account-picker-list">
104
+ <ScrollView style={{ maxHeight: LIST_MAX_HEIGHT }} contentContainerStyle={{ padding: 8 }}>
105
+ {rows.map(({ context, operatedBy }, index) => {
106
+ const activating = pendingContextId === context.contextId;
107
+ const disabled = isLoading || !context.canActivate;
108
+ const current = !signedOut && context.isActive;
109
+ const accent = resolveAccentHex(context.color, theme.colors.primary);
110
+ const handle = context.handle ? `@${context.handle}` : null;
111
+ const label = signedOut
112
+ ? t('signin.chooser.continueAs', { name: handle ?? context.displayName })
113
+ : context.displayName;
114
+ return (
115
+ <Fragment key={context.contextId}>
116
+ <Pressable
117
+ className={rowClassName(index, disabled && !activating)}
118
+ onPress={() => onSelectContext(context)}
119
+ onHoverIn={() => setHovered(index)}
120
+ onHoverOut={() => setHovered((value) => (value === index ? null : value))}
121
+ disabled={disabled}
122
+ accessibilityRole="button"
123
+ accessibilityLabel={label}
124
+ accessibilityState={{ selected: current, disabled, busy: activating }}
125
+ >
126
+ <View className="flex-1 min-w-0">
127
+ <Text className="text-body text-text" style={{ fontWeight: '500' }} numberOfLines={1}>
128
+ {context.displayName}
129
+ </Text>
130
+ {operatedBy || handle ? (
131
+ <Text className="text-bodySmall text-text-secondary" numberOfLines={1}>
132
+ {operatedBy ?? handle}
133
+ </Text>
134
+ ) : null}
135
+ </View>
136
+ <View className="flex-row items-center gap-[8px] shrink-0">
137
+ <View style={{ width: AVATAR_SIZE, height: AVATAR_SIZE }}>
138
+ <Avatar
139
+ source={context.avatarUrl ?? undefined}
140
+ variant="thumb"
141
+ name={context.displayName}
142
+ size={AVATAR_SIZE}
143
+ />
144
+ {current ? (
145
+ <View
146
+ className="absolute -bottom-[2px] -right-[2px] items-center justify-center rounded-full border-2 border-background"
147
+ style={{ width: 18, height: 18, backgroundColor: accent }}
148
+ >
149
+ <RiCheckLine size="xs" fill="#ffffff" />
150
+ </View>
151
+ ) : null}
152
+ </View>
153
+ {activating ? (
154
+ <RiLoader4Line size="sm" fill={accent} />
155
+ ) : (
156
+ <RiArrowRightSLine size="sm" fill={theme.colors.textSecondary} />
157
+ )}
158
+ </View>
159
+ </Pressable>
160
+ {divider(index)}
161
+ </Fragment>
162
+ );
163
+ })}
164
+ <Pressable
165
+ className={rowClassName(useAnotherIndex, isLoading)}
166
+ onPress={onUseAnother}
167
+ onHoverIn={() => setHovered(useAnotherIndex)}
168
+ onHoverOut={() => setHovered((value) => (value === useAnotherIndex ? null : value))}
169
+ disabled={isLoading}
170
+ accessibilityRole="button"
171
+ accessibilityLabel={t('signin.chooser.useAnother')}
172
+ testID="use-another-account"
173
+ >
174
+ <View className="flex-1 min-w-0">
175
+ <Text className="text-body text-text" style={{ fontWeight: '500' }} numberOfLines={1}>
176
+ {t('signin.chooser.useAnother')}
177
+ </Text>
178
+ </View>
179
+ <View className="flex-row items-center gap-[8px] shrink-0">
180
+ <View
181
+ className="bg-fill items-center justify-center rounded-full"
182
+ style={{ width: AVATAR_SIZE, height: AVATAR_SIZE }}
183
+ >
184
+ <RiUserAddLine size="md" fill={theme.colors.textSecondary} />
185
+ </View>
186
+ <RiArrowRightSLine size="sm" fill={theme.colors.textSecondary} />
187
+ </View>
188
+ </Pressable>
189
+ </ScrollView>
111
190
  </View>
112
191
  <OxyAuthTerms />
113
192
  </OxyAuthScreen>
114
193
  );
115
194
  };
116
-
117
- const styles = StyleSheet.create({
118
- // Matches `AccountRow`'s 40px avatar plus its 2px ring and 1px gap.
119
- addGlyph: {
120
- width: 46,
121
- height: 46,
122
- borderRadius: 23,
123
- alignItems: 'center',
124
- justifyContent: 'center',
125
- },
126
- addLabel: {
127
- flex: 1,
128
- },
129
- });