@oxyhq/services 13.0.2 → 13.0.3

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 (362) hide show
  1. package/lib/commonjs/index.js +0 -11
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/ui/components/AccountMenuButton.js +8 -10
  4. package/lib/commonjs/ui/components/AccountMenuButton.js.map +1 -1
  5. package/lib/commonjs/ui/components/AccountSwitcher.js +65 -35
  6. package/lib/commonjs/ui/components/AccountSwitcher.js.map +1 -1
  7. package/lib/commonjs/ui/context/OxyContext.js +124 -93
  8. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  9. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +2 -2
  10. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
  11. package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js +12 -12
  12. package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js.map +1 -1
  13. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +8 -7
  14. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
  15. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +11 -6
  16. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  17. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +3 -3
  18. package/lib/commonjs/ui/screens/CreateAccountScreen.js +6 -4
  19. package/lib/commonjs/ui/screens/CreateAccountScreen.js.map +1 -1
  20. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +8 -7
  21. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
  22. package/lib/commonjs/ui/screens/FileManagementScreen.js +13 -13
  23. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  24. package/lib/commonjs/ui/screens/HistoryViewScreen.js +7 -7
  25. package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
  26. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +5 -5
  27. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
  28. package/lib/commonjs/ui/screens/ManageAccountScreen.js +17 -18
  29. package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
  30. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +3 -3
  31. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  32. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +9 -9
  33. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  34. package/lib/commonjs/ui/screens/ProfileScreen.js +1 -1
  35. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  36. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +4 -4
  37. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  38. package/lib/commonjs/ui/screens/SearchSettingsScreen.js +6 -6
  39. package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
  40. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +6 -6
  41. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  42. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +4 -4
  43. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  44. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +4 -4
  45. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  46. package/lib/module/index.js +0 -5
  47. package/lib/module/index.js.map +1 -1
  48. package/lib/module/ui/components/AccountMenuButton.js +8 -10
  49. package/lib/module/ui/components/AccountMenuButton.js.map +1 -1
  50. package/lib/module/ui/components/AccountSwitcher.js +65 -35
  51. package/lib/module/ui/components/AccountSwitcher.js.map +1 -1
  52. package/lib/module/ui/context/OxyContext.js +124 -93
  53. package/lib/module/ui/context/OxyContext.js.map +1 -1
  54. package/lib/module/ui/hooks/queries/useAccountQueries.js +2 -2
  55. package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
  56. package/lib/module/ui/hooks/queries/usePaymentQueries.js +12 -12
  57. package/lib/module/ui/hooks/queries/usePaymentQueries.js.map +1 -1
  58. package/lib/module/ui/hooks/queries/useServicesQueries.js +9 -7
  59. package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
  60. package/lib/module/ui/screens/AccountSettingsScreen.js +11 -6
  61. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  62. package/lib/module/ui/screens/AccountSwitcherScreen.js +3 -3
  63. package/lib/module/ui/screens/CreateAccountScreen.js +6 -4
  64. package/lib/module/ui/screens/CreateAccountScreen.js.map +1 -1
  65. package/lib/module/ui/screens/EditProfileFieldScreen.js +8 -7
  66. package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
  67. package/lib/module/ui/screens/FileManagementScreen.js +13 -13
  68. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  69. package/lib/module/ui/screens/HistoryViewScreen.js +7 -7
  70. package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
  71. package/lib/module/ui/screens/LanguageSelectorScreen.js +5 -5
  72. package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
  73. package/lib/module/ui/screens/ManageAccountScreen.js +17 -18
  74. package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
  75. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +3 -3
  76. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  77. package/lib/module/ui/screens/PrivacySettingsScreen.js +9 -9
  78. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  79. package/lib/module/ui/screens/ProfileScreen.js +1 -1
  80. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  81. package/lib/module/ui/screens/SavesCollectionsScreen.js +4 -4
  82. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  83. package/lib/module/ui/screens/SearchSettingsScreen.js +6 -6
  84. package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
  85. package/lib/module/ui/screens/WelcomeNewUserScreen.js +6 -6
  86. package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  87. package/lib/module/ui/screens/trust/TrustCenterScreen.js +4 -4
  88. package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  89. package/lib/module/ui/screens/trust/TrustRewardsScreen.js +4 -4
  90. package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  91. package/lib/typescript/commonjs/index.d.ts +0 -1
  92. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  93. package/lib/typescript/commonjs/ui/components/AccountMenuButton.d.ts +5 -7
  94. package/lib/typescript/commonjs/ui/components/AccountMenuButton.d.ts.map +1 -1
  95. package/lib/typescript/commonjs/ui/components/AccountSwitcher.d.ts.map +1 -1
  96. package/lib/typescript/commonjs/ui/components/ActivityIndicator.d.ts +1 -1
  97. package/lib/typescript/commonjs/ui/components/ActivityIndicator.d.ts.map +1 -1
  98. package/lib/typescript/commonjs/ui/components/CrossFadeIcon.d.ts +2 -1
  99. package/lib/typescript/commonjs/ui/components/CrossFadeIcon.d.ts.map +1 -1
  100. package/lib/typescript/commonjs/ui/components/FontLoader.d.ts +1 -1
  101. package/lib/typescript/commonjs/ui/components/FontLoader.d.ts.map +1 -1
  102. package/lib/typescript/commonjs/ui/components/HelperText.d.ts +1 -1
  103. package/lib/typescript/commonjs/ui/components/HelperText.d.ts.map +1 -1
  104. package/lib/typescript/commonjs/ui/components/TextField/Addons/Outline.d.ts +2 -1
  105. package/lib/typescript/commonjs/ui/components/TextField/Addons/Outline.d.ts.map +1 -1
  106. package/lib/typescript/commonjs/ui/components/TextField/Addons/Underline.d.ts +2 -1
  107. package/lib/typescript/commonjs/ui/components/TextField/Addons/Underline.d.ts.map +1 -1
  108. package/lib/typescript/commonjs/ui/components/TextField/Adornment/TextFieldAffix.d.ts +1 -1
  109. package/lib/typescript/commonjs/ui/components/TextField/Adornment/TextFieldIcon.d.ts +1 -1
  110. package/lib/typescript/commonjs/ui/components/TextField/Label/InputLabel.d.ts +1 -1
  111. package/lib/typescript/commonjs/ui/components/TextField/Label/LabelBackground.d.ts +2 -1
  112. package/lib/typescript/commonjs/ui/components/TextField/Label/LabelBackground.d.ts.map +1 -1
  113. package/lib/typescript/commonjs/ui/components/TextField/TextFieldFlat.d.ts +2 -1
  114. package/lib/typescript/commonjs/ui/components/TextField/TextFieldFlat.d.ts.map +1 -1
  115. package/lib/typescript/commonjs/ui/components/TextField/TextFieldOutlined.d.ts +2 -1
  116. package/lib/typescript/commonjs/ui/components/TextField/TextFieldOutlined.d.ts.map +1 -1
  117. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +11 -26
  118. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  119. package/lib/typescript/commonjs/ui/context/ThemeContext.d.ts +1 -1
  120. package/lib/typescript/commonjs/ui/context/ThemeContext.d.ts.map +1 -1
  121. package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  122. package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  123. package/lib/typescript/commonjs/ui/screens/AccountSwitcherScreen.d.ts +3 -3
  124. package/lib/typescript/commonjs/ui/screens/CreateAccountScreen.d.ts.map +1 -1
  125. package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  126. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  127. package/lib/typescript/module/index.d.ts +60 -61
  128. package/lib/typescript/module/index.d.ts.map +1 -1
  129. package/lib/typescript/module/ui/client.d.ts +26 -26
  130. package/lib/typescript/module/ui/client.d.ts.map +1 -1
  131. package/lib/typescript/module/ui/components/AccountMenuButton.d.ts +5 -7
  132. package/lib/typescript/module/ui/components/AccountMenuButton.d.ts.map +1 -1
  133. package/lib/typescript/module/ui/components/AccountSwitcher.d.ts +1 -1
  134. package/lib/typescript/module/ui/components/AccountSwitcher.d.ts.map +1 -1
  135. package/lib/typescript/module/ui/components/ActivityIndicator.d.ts +2 -2
  136. package/lib/typescript/module/ui/components/ActivityIndicator.d.ts.map +1 -1
  137. package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts +1 -1
  138. package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts.map +1 -1
  139. package/lib/typescript/module/ui/components/CrossFadeIcon.d.ts +4 -3
  140. package/lib/typescript/module/ui/components/CrossFadeIcon.d.ts.map +1 -1
  141. package/lib/typescript/module/ui/components/FontLoader.d.ts +1 -1
  142. package/lib/typescript/module/ui/components/FontLoader.d.ts.map +1 -1
  143. package/lib/typescript/module/ui/components/HelperText.d.ts +1 -1
  144. package/lib/typescript/module/ui/components/HelperText.d.ts.map +1 -1
  145. package/lib/typescript/module/ui/components/Icon.d.ts +1 -1
  146. package/lib/typescript/module/ui/components/Icon.d.ts.map +1 -1
  147. package/lib/typescript/module/ui/components/IconButton/IconButton.d.ts +3 -3
  148. package/lib/typescript/module/ui/components/IconButton/IconButton.d.ts.map +1 -1
  149. package/lib/typescript/module/ui/components/IconButton/utils.d.ts +1 -1
  150. package/lib/typescript/module/ui/components/IconButton/utils.d.ts.map +1 -1
  151. package/lib/typescript/module/ui/components/OxyPayButton.d.ts +1 -1
  152. package/lib/typescript/module/ui/components/OxyPayButton.d.ts.map +1 -1
  153. package/lib/typescript/module/ui/components/OxyProvider.d.ts +1 -1
  154. package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
  155. package/lib/typescript/module/ui/components/StepBasedScreen.d.ts +2 -2
  156. package/lib/typescript/module/ui/components/StepBasedScreen.d.ts.map +1 -1
  157. package/lib/typescript/module/ui/components/Surface.d.ts +2 -2
  158. package/lib/typescript/module/ui/components/Surface.d.ts.map +1 -1
  159. package/lib/typescript/module/ui/components/TextField/Addons/Outline.d.ts +3 -2
  160. package/lib/typescript/module/ui/components/TextField/Addons/Outline.d.ts.map +1 -1
  161. package/lib/typescript/module/ui/components/TextField/Addons/Underline.d.ts +3 -2
  162. package/lib/typescript/module/ui/components/TextField/Addons/Underline.d.ts.map +1 -1
  163. package/lib/typescript/module/ui/components/TextField/Adornment/TextFieldAdornment.d.ts +3 -3
  164. package/lib/typescript/module/ui/components/TextField/Adornment/TextFieldAdornment.d.ts.map +1 -1
  165. package/lib/typescript/module/ui/components/TextField/Adornment/TextFieldAffix.d.ts +3 -3
  166. package/lib/typescript/module/ui/components/TextField/Adornment/TextFieldAffix.d.ts.map +1 -1
  167. package/lib/typescript/module/ui/components/TextField/Adornment/TextFieldIcon.d.ts +4 -4
  168. package/lib/typescript/module/ui/components/TextField/Adornment/TextFieldIcon.d.ts.map +1 -1
  169. package/lib/typescript/module/ui/components/TextField/Adornment/types.d.ts +1 -1
  170. package/lib/typescript/module/ui/components/TextField/Adornment/types.d.ts.map +1 -1
  171. package/lib/typescript/module/ui/components/TextField/Adornment/utils.d.ts +1 -1
  172. package/lib/typescript/module/ui/components/TextField/Adornment/utils.d.ts.map +1 -1
  173. package/lib/typescript/module/ui/components/TextField/Label/InputLabel.d.ts +2 -2
  174. package/lib/typescript/module/ui/components/TextField/Label/InputLabel.d.ts.map +1 -1
  175. package/lib/typescript/module/ui/components/TextField/Label/LabelBackground.d.ts +3 -2
  176. package/lib/typescript/module/ui/components/TextField/Label/LabelBackground.d.ts.map +1 -1
  177. package/lib/typescript/module/ui/components/TextField/TextFieldFlat.d.ts +3 -2
  178. package/lib/typescript/module/ui/components/TextField/TextFieldFlat.d.ts.map +1 -1
  179. package/lib/typescript/module/ui/components/TextField/TextFieldOutlined.d.ts +3 -2
  180. package/lib/typescript/module/ui/components/TextField/TextFieldOutlined.d.ts.map +1 -1
  181. package/lib/typescript/module/ui/components/TextField/helpers.d.ts +3 -3
  182. package/lib/typescript/module/ui/components/TextField/helpers.d.ts.map +1 -1
  183. package/lib/typescript/module/ui/components/TextField/types.d.ts +1 -1
  184. package/lib/typescript/module/ui/components/TextField/types.d.ts.map +1 -1
  185. package/lib/typescript/module/ui/components/TextField.d.ts +4 -4
  186. package/lib/typescript/module/ui/components/TextField.d.ts.map +1 -1
  187. package/lib/typescript/module/ui/components/TouchableRipple/TouchableRipple.d.ts +3 -3
  188. package/lib/typescript/module/ui/components/TouchableRipple/TouchableRipple.d.ts.map +1 -1
  189. package/lib/typescript/module/ui/components/TouchableRipple/TouchableRipple.native.d.ts +3 -3
  190. package/lib/typescript/module/ui/components/TouchableRipple/TouchableRipple.native.d.ts.map +1 -1
  191. package/lib/typescript/module/ui/components/TouchableRipple/utils.d.ts +1 -1
  192. package/lib/typescript/module/ui/components/TouchableRipple/utils.d.ts.map +1 -1
  193. package/lib/typescript/module/ui/components/Typography/AnimatedText.d.ts +3 -3
  194. package/lib/typescript/module/ui/components/Typography/AnimatedText.d.ts.map +1 -1
  195. package/lib/typescript/module/ui/components/accountMenuRows.d.ts +1 -1
  196. package/lib/typescript/module/ui/components/accountMenuRows.d.ts.map +1 -1
  197. package/lib/typescript/module/ui/components/feedback/ProgressIndicator.d.ts +1 -1
  198. package/lib/typescript/module/ui/components/feedback/ProgressIndicator.d.ts.map +1 -1
  199. package/lib/typescript/module/ui/components/feedback/constants.d.ts +1 -1
  200. package/lib/typescript/module/ui/components/feedback/constants.d.ts.map +1 -1
  201. package/lib/typescript/module/ui/components/feedback/useFeedbackForm.d.ts +1 -1
  202. package/lib/typescript/module/ui/components/feedback/useFeedbackForm.d.ts.map +1 -1
  203. package/lib/typescript/module/ui/components/payment/PaymentDetailsStep.d.ts +1 -1
  204. package/lib/typescript/module/ui/components/payment/PaymentDetailsStep.d.ts.map +1 -1
  205. package/lib/typescript/module/ui/components/payment/PaymentMethodStep.d.ts +1 -1
  206. package/lib/typescript/module/ui/components/payment/PaymentMethodStep.d.ts.map +1 -1
  207. package/lib/typescript/module/ui/components/payment/PaymentReviewStep.d.ts +1 -1
  208. package/lib/typescript/module/ui/components/payment/PaymentReviewStep.d.ts.map +1 -1
  209. package/lib/typescript/module/ui/components/payment/PaymentSuccessStep.d.ts +1 -1
  210. package/lib/typescript/module/ui/components/payment/PaymentSuccessStep.d.ts.map +1 -1
  211. package/lib/typescript/module/ui/components/payment/PaymentSummaryStep.d.ts +1 -1
  212. package/lib/typescript/module/ui/components/payment/PaymentSummaryStep.d.ts.map +1 -1
  213. package/lib/typescript/module/ui/components/payment/constants.d.ts +1 -1
  214. package/lib/typescript/module/ui/components/payment/constants.d.ts.map +1 -1
  215. package/lib/typescript/module/ui/components/payment/paymentStyles.d.ts +1 -1
  216. package/lib/typescript/module/ui/components/payment/paymentStyles.d.ts.map +1 -1
  217. package/lib/typescript/module/ui/components/theming.d.ts +1 -1
  218. package/lib/typescript/module/ui/components/theming.d.ts.map +1 -1
  219. package/lib/typescript/module/ui/context/OxyContext.d.ts +14 -29
  220. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  221. package/lib/typescript/module/ui/context/ThemeContext.d.ts +1 -1
  222. package/lib/typescript/module/ui/context/ThemeContext.d.ts.map +1 -1
  223. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts +2 -2
  224. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  225. package/lib/typescript/module/ui/hooks/queries/usePaymentQueries.d.ts +1 -1
  226. package/lib/typescript/module/ui/hooks/queries/usePaymentQueries.d.ts.map +1 -1
  227. package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  228. package/lib/typescript/module/ui/hooks/queryClient.d.ts +1 -1
  229. package/lib/typescript/module/ui/hooks/queryClient.d.ts.map +1 -1
  230. package/lib/typescript/module/ui/hooks/useAuth.d.ts +1 -1
  231. package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
  232. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts +1 -1
  233. package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts.map +1 -1
  234. package/lib/typescript/module/ui/hooks/useLanguageManagement.d.ts +1 -1
  235. package/lib/typescript/module/ui/hooks/useLanguageManagement.d.ts.map +1 -1
  236. package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts +1 -1
  237. package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts.map +1 -1
  238. package/lib/typescript/module/ui/hooks/useStorage.d.ts +1 -1
  239. package/lib/typescript/module/ui/hooks/useStorage.d.ts.map +1 -1
  240. package/lib/typescript/module/ui/index.d.ts +28 -28
  241. package/lib/typescript/module/ui/index.d.ts.map +1 -1
  242. package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts +1 -1
  243. package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts.map +1 -1
  244. package/lib/typescript/module/ui/navigation/routes.d.ts +1 -1
  245. package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
  246. package/lib/typescript/module/ui/screens/AccountMembersScreen.d.ts +1 -1
  247. package/lib/typescript/module/ui/screens/AccountMembersScreen.d.ts.map +1 -1
  248. package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts +1 -1
  249. package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  250. package/lib/typescript/module/ui/screens/AccountSwitcherScreen.d.ts +4 -4
  251. package/lib/typescript/module/ui/screens/AccountSwitcherScreen.d.ts.map +1 -1
  252. package/lib/typescript/module/ui/screens/AccountVerificationScreen.d.ts +1 -1
  253. package/lib/typescript/module/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  254. package/lib/typescript/module/ui/screens/AppInfoScreen.d.ts +1 -1
  255. package/lib/typescript/module/ui/screens/AppInfoScreen.d.ts.map +1 -1
  256. package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts +1 -1
  257. package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts.map +1 -1
  258. package/lib/typescript/module/ui/screens/ConnectedAppsScreen.d.ts +1 -1
  259. package/lib/typescript/module/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
  260. package/lib/typescript/module/ui/screens/CreateAccountScreen.d.ts +1 -1
  261. package/lib/typescript/module/ui/screens/CreateAccountScreen.d.ts.map +1 -1
  262. package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts +1 -1
  263. package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  264. package/lib/typescript/module/ui/screens/FAQScreen.d.ts +1 -1
  265. package/lib/typescript/module/ui/screens/FAQScreen.d.ts.map +1 -1
  266. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts +1 -1
  267. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
  268. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts +1 -1
  269. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
  270. package/lib/typescript/module/ui/screens/FollowersListScreen.d.ts +1 -1
  271. package/lib/typescript/module/ui/screens/FollowersListScreen.d.ts.map +1 -1
  272. package/lib/typescript/module/ui/screens/FollowingListScreen.d.ts +1 -1
  273. package/lib/typescript/module/ui/screens/FollowingListScreen.d.ts.map +1 -1
  274. package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts +1 -1
  275. package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  276. package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts +1 -1
  277. package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  278. package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts +1 -1
  279. package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  280. package/lib/typescript/module/ui/screens/LearnMoreUsernamesScreen.d.ts +1 -1
  281. package/lib/typescript/module/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
  282. package/lib/typescript/module/ui/screens/LegalDocumentsScreen.d.ts +1 -1
  283. package/lib/typescript/module/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  284. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts +1 -1
  285. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  286. package/lib/typescript/module/ui/screens/NotificationsScreen.d.ts +1 -1
  287. package/lib/typescript/module/ui/screens/NotificationsScreen.d.ts.map +1 -1
  288. package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts +1 -1
  289. package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  290. package/lib/typescript/module/ui/screens/PaymentGatewayScreen.d.ts +2 -2
  291. package/lib/typescript/module/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  292. package/lib/typescript/module/ui/screens/PreferencesScreen.d.ts +1 -1
  293. package/lib/typescript/module/ui/screens/PreferencesScreen.d.ts.map +1 -1
  294. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts +1 -1
  295. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  296. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts +1 -1
  297. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  298. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts +1 -1
  299. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
  300. package/lib/typescript/module/ui/screens/SavesCollectionsScreen.d.ts +1 -1
  301. package/lib/typescript/module/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  302. package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts +1 -1
  303. package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  304. package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts +1 -1
  305. package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +1 -1
  306. package/lib/typescript/module/ui/screens/UserListScreen.d.ts +1 -1
  307. package/lib/typescript/module/ui/screens/UserListScreen.d.ts.map +1 -1
  308. package/lib/typescript/module/ui/screens/WelcomeNewUserScreen.d.ts +1 -1
  309. package/lib/typescript/module/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  310. package/lib/typescript/module/ui/screens/trust/TrustAboutScreen.d.ts +1 -1
  311. package/lib/typescript/module/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
  312. package/lib/typescript/module/ui/screens/trust/TrustCenterScreen.d.ts +1 -1
  313. package/lib/typescript/module/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
  314. package/lib/typescript/module/ui/screens/trust/TrustFAQScreen.d.ts +1 -1
  315. package/lib/typescript/module/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
  316. package/lib/typescript/module/ui/screens/trust/TrustLeaderboardScreen.d.ts +1 -1
  317. package/lib/typescript/module/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
  318. package/lib/typescript/module/ui/screens/trust/TrustRewardsScreen.d.ts +1 -1
  319. package/lib/typescript/module/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
  320. package/lib/typescript/module/ui/screens/trust/TrustRulesScreen.d.ts +1 -1
  321. package/lib/typescript/module/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
  322. package/lib/typescript/module/ui/server.d.ts +2 -2
  323. package/lib/typescript/module/ui/server.d.ts.map +1 -1
  324. package/lib/typescript/module/ui/types/fileManagement.d.ts +1 -1
  325. package/lib/typescript/module/ui/types/fileManagement.d.ts.map +1 -1
  326. package/lib/typescript/module/ui/types/navigation.d.ts +1 -1
  327. package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
  328. package/lib/typescript/module/ui/utils/fileManagement.d.ts +1 -1
  329. package/lib/typescript/module/ui/utils/fileManagement.d.ts.map +1 -1
  330. package/package.json +21 -20
  331. package/src/index.ts +0 -5
  332. package/src/ui/components/AccountMenuButton.tsx +9 -11
  333. package/src/ui/components/AccountSwitcher.tsx +71 -37
  334. package/src/ui/context/OxyContext.tsx +127 -122
  335. package/src/ui/hooks/queries/useAccountQueries.ts +2 -2
  336. package/src/ui/hooks/queries/usePaymentQueries.ts +12 -12
  337. package/src/ui/hooks/queries/useServicesQueries.ts +9 -6
  338. package/src/ui/screens/AccountSettingsScreen.tsx +9 -5
  339. package/src/ui/screens/AccountSwitcherScreen.tsx +3 -3
  340. package/src/ui/screens/CreateAccountScreen.tsx +6 -4
  341. package/src/ui/screens/EditProfileFieldScreen.tsx +8 -7
  342. package/src/ui/screens/FileManagementScreen.tsx +13 -13
  343. package/src/ui/screens/HistoryViewScreen.tsx +7 -7
  344. package/src/ui/screens/LanguageSelectorScreen.tsx +5 -5
  345. package/src/ui/screens/ManageAccountScreen.tsx +17 -18
  346. package/src/ui/screens/PremiumSubscriptionScreen.tsx +3 -3
  347. package/src/ui/screens/PrivacySettingsScreen.tsx +9 -9
  348. package/src/ui/screens/ProfileScreen.tsx +1 -1
  349. package/src/ui/screens/SavesCollectionsScreen.tsx +5 -5
  350. package/src/ui/screens/SearchSettingsScreen.tsx +6 -6
  351. package/src/ui/screens/WelcomeNewUserScreen.tsx +6 -6
  352. package/src/ui/screens/trust/TrustCenterScreen.tsx +5 -5
  353. package/src/ui/screens/trust/TrustRewardsScreen.tsx +4 -4
  354. package/lib/commonjs/ui/components/ActiveAccountBanner.js +0 -144
  355. package/lib/commonjs/ui/components/ActiveAccountBanner.js.map +0 -1
  356. package/lib/module/ui/components/ActiveAccountBanner.js +0 -141
  357. package/lib/module/ui/components/ActiveAccountBanner.js.map +0 -1
  358. package/lib/typescript/commonjs/ui/components/ActiveAccountBanner.d.ts +0 -4
  359. package/lib/typescript/commonjs/ui/components/ActiveAccountBanner.d.ts.map +0 -1
  360. package/lib/typescript/module/ui/components/ActiveAccountBanner.d.ts +0 -4
  361. package/lib/typescript/module/ui/components/ActiveAccountBanner.d.ts.map +0 -1
  362. package/src/ui/components/ActiveAccountBanner.tsx +0 -130
@@ -85,12 +85,12 @@ export const AccountSwitcherView = ({
85
85
  const {
86
86
  activeSessionId,
87
87
  switchSession,
88
+ switchToAccount,
88
89
  removeSession,
89
90
  logout,
90
91
  logoutAll,
91
92
  accounts,
92
- actingAs,
93
- setActingAs,
93
+ user,
94
94
  oxyServices
95
95
  } = useOxy();
96
96
  const {
@@ -104,6 +104,7 @@ export const AccountSwitcherView = ({
104
104
  accounts: deviceAccounts
105
105
  } = useDeviceAccounts();
106
106
  const [busySessionId, setBusySessionId] = useState(null);
107
+ const [switchingAccountId, setSwitchingAccountId] = useState(null);
107
108
  const [removingSessionId, setRemovingSessionId] = useState(null);
108
109
  const [signingOut, setSigningOut] = useState(false);
109
110
  const [signingOutAll, setSigningOutAll] = useState(false);
@@ -118,28 +119,36 @@ export const AccountSwitcherView = ({
118
119
  const others = built.filter(row => !row.isActive);
119
120
  return [...current, ...others];
120
121
  }, [deviceAccounts]);
121
- const isSwitching = busySessionId !== null;
122
+ const isSwitching = busySessionId !== null || switchingAccountId !== null;
122
123
  const actionDisabled = isSwitching || signingOut || signingOutAll;
123
124
 
125
+ // Account ids that are already signed in as REAL device sessions. After a
126
+ // `switchToAccount` the target becomes a device session (and the personal
127
+ // account always is one), so it would otherwise appear BOTH as a device row
128
+ // (Section A) and a graph row (Section B). We dedupe by hiding such accounts
129
+ // from the graph — they show in Section A, where the active one is flagged
130
+ // current.
131
+ const deviceUserIds = useMemo(() => new Set(deviceAccounts.map(account => account.user.id).filter(id => Boolean(id))), [deviceAccounts]);
132
+
124
133
  // --- Account graph (Section B) ---
134
+ // The switchable graph minus accounts that are already device sessions
135
+ // (deduped into Section A). This is the set Section B renders and searches.
136
+ const graphAccounts = useMemo(() => accounts.filter(node => !deviceUserIds.has(node.accountId)), [accounts, deviceUserIds]);
125
137
  const filtered = useMemo(() => {
126
138
  const q = query.trim().toLowerCase();
127
- if (!q) return accounts;
128
- return accounts.filter(node => {
139
+ if (!q) return graphAccounts;
140
+ return graphAccounts.filter(node => {
129
141
  const name = getAccountDisplayName(node.account, locale).toLowerCase();
130
142
  const username = (node.account?.username ?? '').toLowerCase();
131
143
  return name.includes(q) || username.includes(q);
132
144
  });
133
- }, [accounts, query, locale]);
145
+ }, [graphAccounts, query, locale]);
134
146
  const yourAccounts = useMemo(() => toTree(filtered.filter(node => node.relationship !== 'member')), [filtered]);
135
147
  const sharedAccounts = useMemo(() => toTree(filtered.filter(node => node.relationship === 'member')), [filtered]);
136
148
  const handleSwitchDevice = useCallback(async sessionId => {
137
149
  if (busySessionId) return;
138
- // Tapping the already-active sign-in returns to that sign-in's own
139
- // personal account (clearing any account-graph switch). When already on
140
- // the personal account this just closes.
150
+ // Tapping the already-active sign-in just closes it IS the current account.
141
151
  if (sessionId === activeSessionId) {
142
- if (actingAs !== null) setActingAs(null);
143
152
  onClose();
144
153
  return;
145
154
  }
@@ -147,9 +156,6 @@ export const AccountSwitcherView = ({
147
156
  try {
148
157
  await onBeforeSessionChange?.();
149
158
  await switchSession(sessionId);
150
- // The active sign-in changed; any account-graph switch belonged to the
151
- // previous sign-in, so the new sign-in starts on its personal account.
152
- if (actingAs !== null) setActingAs(null);
153
159
  toast.success(t('accountSwitcher.toasts.switchSuccess') || 'Switched account');
154
160
  onClose();
155
161
  } catch (error) {
@@ -162,7 +168,7 @@ export const AccountSwitcherView = ({
162
168
  } finally {
163
169
  setBusySessionId(null);
164
170
  }
165
- }, [activeSessionId, busySessionId, actingAs, setActingAs, switchSession, t, onClose, onBeforeSessionChange]);
171
+ }, [activeSessionId, busySessionId, switchSession, t, onClose, onBeforeSessionChange]);
166
172
  const handleRemoveDevice = useCallback(async sessionId => {
167
173
  if (sessionId === activeSessionId || removingSessionId) return;
168
174
  setRemovingSessionId(sessionId);
@@ -212,15 +218,41 @@ export const AccountSwitcherView = ({
212
218
  setSigningOutAll(false);
213
219
  }
214
220
  }, [signingOutAll, logoutAll, t, onClose, onBeforeSessionChange]);
215
- const handleSelectAccount = useCallback(node => {
216
- // The personal (self) account = no delegation (acting-as null).
217
- setActingAs(node.relationship === 'self' ? null : node.accountId);
218
- onClose();
219
- }, [setActingAs, onClose]);
221
+ const handleSelectAccount = useCallback(async node => {
222
+ if (switchingAccountId) return;
223
+ // Already the active account → just close (it would also be deduped from
224
+ // the graph, but guard defensively).
225
+ if (node.accountId === user?.id) {
226
+ onClose();
227
+ return;
228
+ }
229
+ setSwitchingAccountId(node.accountId);
230
+ try {
231
+ await onBeforeSessionChange?.();
232
+ // Switching INTO a graph account is a REAL session switch — the whole
233
+ // app becomes that account (no delegation header).
234
+ await switchToAccount(node.accountId);
235
+ toast.success(t('accountSwitcher.toasts.switchSuccess') || 'Switched account');
236
+ onClose();
237
+ } catch (error) {
238
+ if (!isDev()) {
239
+ loggerUtil.warn('Switch account failed', {
240
+ component: 'AccountSwitcher'
241
+ }, error);
242
+ }
243
+ toast.error(t('accountSwitcher.toasts.switchFailed') || 'Failed to switch account');
244
+ } finally {
245
+ setSwitchingAccountId(null);
246
+ }
247
+ }, [switchingAccountId, user?.id, switchToAccount, t, onClose, onBeforeSessionChange]);
220
248
  const renderAccountNode = useCallback((node, isChild) => {
221
249
  const displayName = getAccountDisplayName(node.account, locale);
222
250
  const username = node.account?.username ? `@${node.account.username}` : null;
223
- const active = node.relationship === 'self' ? actingAs === null : actingAs === node.accountId;
251
+ // Current account = the active session's user. After a real-session
252
+ // switch `user` IS this account (such accounts are normally deduped out of
253
+ // the graph, but the check stays correct/defensive if one lingers).
254
+ const active = node.accountId === user?.id;
255
+ const isNodeSwitching = switchingAccountId === node.accountId;
224
256
  const role = node.callerMembership?.role;
225
257
  const avatarUri = node.account?.avatar ? oxyServices.getFileDownloadUrl(node.account.avatar, 'thumb') : undefined;
226
258
  const permissions = node.callerMembership?.permissions ?? [];
@@ -233,10 +265,11 @@ export const AccountSwitcherView = ({
233
265
  selected: active
234
266
  },
235
267
  onPress: () => handleSelectAccount(node),
268
+ disabled: isSwitching,
236
269
  activeOpacity: 0.6,
237
270
  style: [styles.accountRow, isChild && styles.childRow, active && {
238
271
  backgroundColor: colors.primarySubtle
239
- }],
272
+ }, isSwitching && !isNodeSwitching && styles.rowDisabled],
240
273
  children: [/*#__PURE__*/_jsx(Avatar, {
241
274
  uri: avatarUri,
242
275
  name: displayName,
@@ -285,13 +318,16 @@ export const AccountSwitcherView = ({
285
318
  size: 16,
286
319
  color: colors.textSecondary
287
320
  })
288
- }) : null, active ? /*#__PURE__*/_jsx(Ionicons, {
321
+ }) : null, isNodeSwitching ? /*#__PURE__*/_jsx(ActivityIndicator, {
322
+ color: colors.primary,
323
+ size: "small"
324
+ }) : active ? /*#__PURE__*/_jsx(Ionicons, {
289
325
  name: "checkmark",
290
326
  size: 20,
291
327
  color: colors.primary
292
328
  }) : null]
293
329
  }, `node-${node.accountId}`);
294
- }, [actingAs, colors, handleSelectAccount, locale, onOpenAccountSettings, oxyServices, t]);
330
+ }, [user?.id, switchingAccountId, isSwitching, colors, handleSelectAccount, locale, onOpenAccountSettings, oxyServices, t]);
295
331
  const renderTree = useCallback(entries => entries.map(entry => /*#__PURE__*/_jsxs(View, {
296
332
  children: [renderAccountNode(entry.root, false), entry.children.map(child => renderAccountNode(child, true))]
297
333
  }, `tree-${entry.root.accountId}`)), [renderAccountNode]);
@@ -308,11 +344,9 @@ export const AccountSwitcherView = ({
308
344
  }), deviceRows.map(row => {
309
345
  const isBusy = busySessionId === row.sessionId;
310
346
  const isRemoving = removingSessionId === row.sessionId;
311
- // The active sign-in is THE current account only when no
312
- // account-graph switch is in effect; otherwise a switched-into
313
- // account is current and this row reads as the signed-in (but not
314
- // active) account — tappable to return to it.
315
- const isCurrentAccount = row.isActive && actingAs === null;
347
+ // The active device session IS the current account there is no
348
+ // separate acting-as concept; switching makes `user` that account.
349
+ const isCurrentAccount = row.isActive;
316
350
  return /*#__PURE__*/_jsxs(TouchableOpacity, {
317
351
  accessibilityRole: "menuitem",
318
352
  accessibilityLabel: row.displayName,
@@ -351,11 +385,7 @@ export const AccountSwitcherView = ({
351
385
  name: "checkmark",
352
386
  size: 20,
353
387
  color: colors.primary
354
- }) : row.isActive ?
355
- // Active sign-in while switched into another account:
356
- // no current-checkmark, no sign-out (can't sign out the
357
- // active session here) — tap the row to return to it.
358
- null : isRemoving ? /*#__PURE__*/_jsx(ActivityIndicator, {
388
+ }) : isRemoving ? /*#__PURE__*/_jsx(ActivityIndicator, {
359
389
  color: colors.textSecondary,
360
390
  size: "small"
361
391
  }) : /*#__PURE__*/_jsx(TouchableOpacity, {
@@ -410,11 +440,11 @@ export const AccountSwitcherView = ({
410
440
  }],
411
441
  children: t('accountMenu.addAnother') || 'Add another account'
412
442
  })]
413
- }), accounts.length > 0 ? /*#__PURE__*/_jsxs(_Fragment, {
443
+ }), graphAccounts.length > 0 ? /*#__PURE__*/_jsxs(_Fragment, {
414
444
  children: [/*#__PURE__*/_jsx(Divider, {
415
445
  color: colors.border,
416
446
  spacing: 4
417
- }), accounts.length > 6 ? /*#__PURE__*/_jsxs(View, {
447
+ }), graphAccounts.length > 6 ? /*#__PURE__*/_jsxs(View, {
418
448
  style: [styles.searchBox, {
419
449
  backgroundColor: colors.card,
420
450
  borderColor: colors.border
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","View","Text","TextInput","TouchableOpacity","StyleSheet","ScrollView","Modal","Pressable","Platform","ActivityIndicator","Ionicons","toast","useDialogControl","Dialog","Divider","useTheme","getAccountDisplayName","isDev","logger","loggerUtil","Avatar","useOxy","useI18n","buildAccountRows","useDeviceAccounts","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","isWeb","OS","PANEL_WIDTH","toTree","nodes","byId","Map","map","node","accountId","childrenOf","parentAccountId","has","arr","get","push","set","rendered","Set","result","isRoot","children","root","add","child","AccountSwitcherView","onClose","onAddAccount","onNavigateManage","onCreateAccount","onOpenAccountSettings","onBeforeSessionChange","activeSessionId","switchSession","removeSession","logout","logoutAll","accounts","actingAs","setActingAs","oxyServices","t","locale","colors","deviceAccounts","busySessionId","setBusySessionId","removingSessionId","setRemovingSessionId","signingOut","setSigningOut","signingOutAll","setSigningOutAll","query","setQuery","signOutDialog","signOutAllDialog","deviceRows","built","current","filter","row","isActive","others","isSwitching","actionDisabled","filtered","q","trim","toLowerCase","name","account","username","includes","yourAccounts","relationship","sharedAccounts","handleSwitchDevice","sessionId","success","error","warn","component","handleRemoveDevice","performSignOut","performSignOutAll","handleSelectAccount","renderAccountNode","isChild","displayName","active","role","callerMembership","avatarUri","avatar","getFileDownloadUrl","undefined","permissions","canManage","showSettings","accessibilityRole","accessibilityLabel","accessibilityState","selected","onPress","activeOpacity","style","styles","accountRow","childRow","backgroundColor","primarySubtle","uri","size","accountInfo","nameRow","accountName","color","text","numberOfLines","roleBadge","card","roleBadgeText","textSecondary","accountEmail","hitSlop","top","bottom","left","right","settingsButton","primary","renderTree","entries","entry","scroll","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","keyboardShouldPersistTaps","sectionLabel","isBusy","isRemoving","isCurrentAccount","disabled","rowDisabled","accountNameActive","secondary","switchingRow","switchingText","actionRow","icon","actionText","length","border","spacing","searchBox","borderColor","value","onChangeText","placeholder","placeholderTextColor","searchInput","autoCapitalize","autoCorrect","open","control","title","description","actions","label","AccountSwitcher","anchor","containerRef","document","onKey","event","key","stopPropagation","addEventListener","removeEventListener","anchorStyle","panelStyles","panelBase","panelWeb","background","panelNative","visible","transparent","animationType","onRequestClose","webOverlay","nativeOverlay","ref","create","flex","position","justifyContent","borderRadius","shadowColor","shadowOpacity","shadowRadius","shadowOffset","width","height","elevation","overflow","maxHeight","borderWidth","marginHorizontal","borderTopLeftRadius","borderTopRightRadius","paddingBottom","flexGrow","paddingVertical","fontSize","fontWeight","textTransform","letterSpacing","paddingHorizontal","paddingTop","flexDirection","alignItems","gap","paddingLeft","opacity","minWidth","flexShrink","marginTop","marginVertical","padding"],"sourceRoot":"../../../../src","sources":["ui/components/AccountSwitcher.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","View","Text","TextInput","TouchableOpacity","StyleSheet","ScrollView","Modal","Pressable","Platform","ActivityIndicator","Ionicons","toast","useDialogControl","Dialog","Divider","useTheme","getAccountDisplayName","isDev","logger","loggerUtil","Avatar","useOxy","useI18n","buildAccountRows","useDeviceAccounts","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","isWeb","OS","PANEL_WIDTH","toTree","nodes","byId","Map","map","node","accountId","childrenOf","parentAccountId","has","arr","get","push","set","rendered","Set","result","isRoot","children","root","add","child","AccountSwitcherView","onClose","onAddAccount","onNavigateManage","onCreateAccount","onOpenAccountSettings","onBeforeSessionChange","activeSessionId","switchSession","switchToAccount","removeSession","logout","logoutAll","accounts","user","oxyServices","t","locale","colors","deviceAccounts","busySessionId","setBusySessionId","switchingAccountId","setSwitchingAccountId","removingSessionId","setRemovingSessionId","signingOut","setSigningOut","signingOutAll","setSigningOutAll","query","setQuery","signOutDialog","signOutAllDialog","deviceRows","built","current","filter","row","isActive","others","isSwitching","actionDisabled","deviceUserIds","account","id","Boolean","graphAccounts","filtered","q","trim","toLowerCase","name","username","includes","yourAccounts","relationship","sharedAccounts","handleSwitchDevice","sessionId","success","error","warn","component","handleRemoveDevice","performSignOut","performSignOutAll","handleSelectAccount","renderAccountNode","isChild","displayName","active","isNodeSwitching","role","callerMembership","avatarUri","avatar","getFileDownloadUrl","undefined","permissions","canManage","showSettings","accessibilityRole","accessibilityLabel","accessibilityState","selected","onPress","disabled","activeOpacity","style","styles","accountRow","childRow","backgroundColor","primarySubtle","rowDisabled","uri","size","accountInfo","nameRow","accountName","color","text","numberOfLines","roleBadge","card","roleBadgeText","textSecondary","accountEmail","hitSlop","top","bottom","left","right","settingsButton","primary","renderTree","entries","entry","scroll","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","keyboardShouldPersistTaps","sectionLabel","isBusy","isRemoving","isCurrentAccount","accountNameActive","secondary","switchingRow","switchingText","actionRow","icon","actionText","length","border","spacing","searchBox","borderColor","value","onChangeText","placeholder","placeholderTextColor","searchInput","autoCapitalize","autoCorrect","open","control","title","description","actions","label","AccountSwitcher","anchor","containerRef","document","onKey","event","key","stopPropagation","addEventListener","removeEventListener","anchorStyle","panelStyles","panelBase","panelWeb","background","panelNative","visible","transparent","animationType","onRequestClose","webOverlay","nativeOverlay","ref","create","flex","position","justifyContent","borderRadius","shadowColor","shadowOpacity","shadowRadius","shadowOffset","width","height","elevation","overflow","maxHeight","borderWidth","marginHorizontal","borderTopLeftRadius","borderTopRightRadius","paddingBottom","flexGrow","paddingVertical","fontSize","fontWeight","textTransform","letterSpacing","paddingHorizontal","paddingTop","flexDirection","alignItems","gap","paddingLeft","opacity","minWidth","flexShrink","marginTop","marginVertical","padding"],"sourceRoot":"../../../../src","sources":["ui/components/AccountSwitcher.tsx"],"mappings":";;AACA,SAASA,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AACzE,SACIC,IAAI,EACJC,IAAI,EACJC,SAAS,EACTC,gBAAgB,EAChBC,UAAU,EACVC,UAAU,EACVC,KAAK,EACLC,SAAS,EACTC,QAAQ,EACRC,iBAAiB,QAEd,cAAc;AACrB,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,KAAK,EAAEC,gBAAgB,EAAEC,MAAM,QAAQ,cAAc;AAC9D,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,qBAAqB,EAAEC,KAAK,EAAEC,MAAM,IAAIC,UAAU,QAAQ,aAAa;AAEhF,OAAOC,MAAM,MAAM,aAAU;AAC7B,SAASC,MAAM,QAAQ,0BAAuB;AAC9C,SAASC,OAAO,QAAQ,qBAAkB;AAC1C,SAASC,gBAAgB,QAAyB,sBAAmB;AACrE,SAASC,iBAAiB,QAAQ,+BAA4B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAG/D,MAAMC,KAAK,GAAGvB,QAAQ,CAACwB,EAAE,KAAK,KAAK;AACnC,MAAMC,WAAW,GAAG,GAAG;;AAEvB;AACA;AACA;AACA;AACA;;AAqBA;AACA;AACA;AACA;AACA;AACA,SAASC,MAAMA,CAACC,KAAoB,EAAe;EAC/C,MAAMC,IAAI,GAAG,IAAIC,GAAG,CAACF,KAAK,CAACG,GAAG,CAAEC,IAAI,IAAK,CAACA,IAAI,CAACC,SAAS,EAAED,IAAI,CAAC,CAAC,CAAC;EACjE,MAAME,UAAU,GAAG,IAAIJ,GAAG,CAAwB,CAAC;EACnD,KAAK,MAAME,IAAI,IAAIJ,KAAK,EAAE;IACtB,IAAII,IAAI,CAACG,eAAe,IAAIN,IAAI,CAACO,GAAG,CAACJ,IAAI,CAACG,eAAe,CAAC,EAAE;MACxD,MAAME,GAAG,GAAGH,UAAU,CAACI,GAAG,CAACN,IAAI,CAACG,eAAe,CAAC,IAAI,EAAE;MACtDE,GAAG,CAACE,IAAI,CAACP,IAAI,CAAC;MACdE,UAAU,CAACM,GAAG,CAACR,IAAI,CAACG,eAAe,EAAEE,GAAG,CAAC;IAC7C;EACJ;EACA,MAAMI,QAAQ,GAAG,IAAIC,GAAG,CAAS,CAAC;EAClC,MAAMC,MAAmB,GAAG,EAAE;EAC9B,KAAK,MAAMX,IAAI,IAAIJ,KAAK,EAAE;IACtB,MAAMgB,MAAM,GAAG,CAACZ,IAAI,CAACG,eAAe,IAAI,CAACN,IAAI,CAACO,GAAG,CAACJ,IAAI,CAACG,eAAe,CAAC;IACvE,IAAI,CAACS,MAAM,EAAE;IACb,MAAMC,QAAQ,GAAGX,UAAU,CAACI,GAAG,CAACN,IAAI,CAACC,SAAS,CAAC,IAAI,EAAE;IACrDU,MAAM,CAACJ,IAAI,CAAC;MAAEO,IAAI,EAAEd,IAAI;MAAEa;IAAS,CAAC,CAAC;IACrCJ,QAAQ,CAACM,GAAG,CAACf,IAAI,CAACC,SAAS,CAAC;IAC5B,KAAK,MAAMe,KAAK,IAAIH,QAAQ,EAAEJ,QAAQ,CAACM,GAAG,CAACC,KAAK,CAACf,SAAS,CAAC;EAC/D;EACA,KAAK,MAAMD,IAAI,IAAIJ,KAAK,EAAE;IACtB,IAAI,CAACa,QAAQ,CAACL,GAAG,CAACJ,IAAI,CAACC,SAAS,CAAC,EAAE;MAC/BU,MAAM,CAACJ,IAAI,CAAC;QAAEO,IAAI,EAAEd,IAAI;QAAEa,QAAQ,EAAE;MAAG,CAAC,CAAC;MACzCJ,QAAQ,CAACM,GAAG,CAACf,IAAI,CAACC,SAAS,CAAC;IAChC;EACJ;EACA,OAAOU,MAAM;AACjB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMM,mBAAqD,GAAGA,CAAC;EAClEC,OAAO;EACPC,YAAY;EACZC,gBAAgB;EAChBC,eAAe;EACfC,qBAAqB;EACrBC;AACJ,CAAC,KAAK;EACF,MAAM;IACFC,eAAe;IACfC,aAAa;IACbC,eAAe;IACfC,aAAa;IACbC,MAAM;IACNC,SAAS;IACTC,QAAQ;IACRC,IAAI;IACJC;EACJ,CAAC,GAAGlD,MAAM,CAAC,CAAC;EACZ,MAAM;IAAEmD,CAAC;IAAEC;EAAO,CAAC,GAAGnD,OAAO,CAAC,CAAC;EAC/B,MAAM;IAAEoD;EAAO,CAAC,GAAG3D,QAAQ,CAAC,CAAC;EAE7B,MAAM;IAAEsD,QAAQ,EAAEM;EAAe,CAAC,GAAGnD,iBAAiB,CAAC,CAAC;EAExD,MAAM,CAACoD,aAAa,EAAEC,gBAAgB,CAAC,GAAG9E,QAAQ,CAAgB,IAAI,CAAC;EACvE,MAAM,CAAC+E,kBAAkB,EAAEC,qBAAqB,CAAC,GAAGhF,QAAQ,CAAgB,IAAI,CAAC;EACjF,MAAM,CAACiF,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGlF,QAAQ,CAAgB,IAAI,CAAC;EAC/E,MAAM,CAACmF,UAAU,EAAEC,aAAa,CAAC,GAAGpF,QAAQ,CAAC,KAAK,CAAC;EACnD,MAAM,CAACqF,aAAa,EAAEC,gBAAgB,CAAC,GAAGtF,QAAQ,CAAC,KAAK,CAAC;EACzD,MAAM,CAACuF,KAAK,EAAEC,QAAQ,CAAC,GAAGxF,QAAQ,CAAC,EAAE,CAAC;EAEtC,MAAMyF,aAAa,GAAG5E,gBAAgB,CAAC,CAAC;EACxC,MAAM6E,gBAAgB,GAAG7E,gBAAgB,CAAC,CAAC;EAE3C,MAAM8E,UAAU,GAAG7F,OAAO,CAAe,MAAM;IAC3C,MAAM8F,KAAK,GAAGpE,gBAAgB,CAAC;MAAE8C,QAAQ,EAAEM;IAAe,CAAC,CAAC;IAC5D,MAAMiB,OAAO,GAAGD,KAAK,CAACE,MAAM,CAAEC,GAAG,IAAKA,GAAG,CAACC,QAAQ,CAAC;IACnD,MAAMC,MAAM,GAAGL,KAAK,CAACE,MAAM,CAAEC,GAAG,IAAK,CAACA,GAAG,CAACC,QAAQ,CAAC;IACnD,OAAO,CAAC,GAAGH,OAAO,EAAE,GAAGI,MAAM,CAAC;EAClC,CAAC,EAAE,CAACrB,cAAc,CAAC,CAAC;EAEpB,MAAMsB,WAAW,GAAGrB,aAAa,KAAK,IAAI,IAAIE,kBAAkB,KAAK,IAAI;EACzE,MAAMoB,cAAc,GAAGD,WAAW,IAAIf,UAAU,IAAIE,aAAa;;EAEjE;EACA;EACA;EACA;EACA;EACA;EACA,MAAMe,aAAa,GAAGtG,OAAO,CACzB,MAAM,IAAIoD,GAAG,CAAC0B,cAAc,CAACrC,GAAG,CAAE8D,OAAO,IAAKA,OAAO,CAAC9B,IAAI,CAAC+B,EAAE,CAAC,CAACR,MAAM,CAAEQ,EAAE,IAAmBC,OAAO,CAACD,EAAE,CAAC,CAAC,CAAC,EACzG,CAAC1B,cAAc,CACnB,CAAC;;EAED;EACA;EACA;EACA,MAAM4B,aAAa,GAAG1G,OAAO,CACzB,MAAMwE,QAAQ,CAACwB,MAAM,CAAEtD,IAAI,IAAK,CAAC4D,aAAa,CAACxD,GAAG,CAACJ,IAAI,CAACC,SAAS,CAAC,CAAC,EACnE,CAAC6B,QAAQ,EAAE8B,aAAa,CAC5B,CAAC;EAED,MAAMK,QAAQ,GAAG3G,OAAO,CAAgB,MAAM;IAC1C,MAAM4G,CAAC,GAAGnB,KAAK,CAACoB,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;IACpC,IAAI,CAACF,CAAC,EAAE,OAAOF,aAAa;IAC5B,OAAOA,aAAa,CAACV,MAAM,CAAEtD,IAAI,IAAK;MAClC,MAAMqE,IAAI,GAAG5F,qBAAqB,CAACuB,IAAI,CAAC6D,OAAO,EAAE3B,MAAM,CAAC,CAACkC,WAAW,CAAC,CAAC;MACtE,MAAME,QAAQ,GAAG,CAACtE,IAAI,CAAC6D,OAAO,EAAES,QAAQ,IAAI,EAAE,EAAEF,WAAW,CAAC,CAAC;MAC7D,OAAOC,IAAI,CAACE,QAAQ,CAACL,CAAC,CAAC,IAAII,QAAQ,CAACC,QAAQ,CAACL,CAAC,CAAC;IACnD,CAAC,CAAC;EACN,CAAC,EAAE,CAACF,aAAa,EAAEjB,KAAK,EAAEb,MAAM,CAAC,CAAC;EAElC,MAAMsC,YAAY,GAAGlH,OAAO,CACxB,MAAMqC,MAAM,CAACsE,QAAQ,CAACX,MAAM,CAAEtD,IAAI,IAAKA,IAAI,CAACyE,YAAY,KAAK,QAAQ,CAAC,CAAC,EACvE,CAACR,QAAQ,CACb,CAAC;EACD,MAAMS,cAAc,GAAGpH,OAAO,CAC1B,MAAMqC,MAAM,CAACsE,QAAQ,CAACX,MAAM,CAAEtD,IAAI,IAAKA,IAAI,CAACyE,YAAY,KAAK,QAAQ,CAAC,CAAC,EACvE,CAACR,QAAQ,CACb,CAAC;EAED,MAAMU,kBAAkB,GAAGvH,WAAW,CAAC,MAAOwH,SAAiB,IAAK;IAChE,IAAIvC,aAAa,EAAE;IACnB;IACA,IAAIuC,SAAS,KAAKpD,eAAe,EAAE;MAC/BN,OAAO,CAAC,CAAC;MACT;IACJ;IACAoB,gBAAgB,CAACsC,SAAS,CAAC;IAC3B,IAAI;MACA,MAAMrD,qBAAqB,GAAG,CAAC;MAC/B,MAAME,aAAa,CAACmD,SAAS,CAAC;MAC9BxG,KAAK,CAACyG,OAAO,CAAC5C,CAAC,CAAC,sCAAsC,CAAC,IAAI,kBAAkB,CAAC;MAC9Ef,OAAO,CAAC,CAAC;IACb,CAAC,CAAC,OAAO4D,KAAK,EAAE;MACZ,IAAI,CAACpG,KAAK,CAAC,CAAC,EAAE;QACVE,UAAU,CAACmG,IAAI,CAAC,uBAAuB,EAAE;UAAEC,SAAS,EAAE;QAAkB,CAAC,EAAEF,KAAgB,CAAC;MAChG;MACA1G,KAAK,CAAC0G,KAAK,CAAC7C,CAAC,CAAC,qCAAqC,CAAC,IAAI,0BAA0B,CAAC;IACvF,CAAC,SAAS;MACNK,gBAAgB,CAAC,IAAI,CAAC;IAC1B;EACJ,CAAC,EAAE,CAACd,eAAe,EAAEa,aAAa,EAAEZ,aAAa,EAAEQ,CAAC,EAAEf,OAAO,EAAEK,qBAAqB,CAAC,CAAC;EAEtF,MAAM0D,kBAAkB,GAAG7H,WAAW,CAAC,MAAOwH,SAAiB,IAAK;IAChE,IAAIA,SAAS,KAAKpD,eAAe,IAAIiB,iBAAiB,EAAE;IACxDC,oBAAoB,CAACkC,SAAS,CAAC;IAC/B,IAAI;MACA,MAAMjD,aAAa,CAACiD,SAAS,CAAC;MAC9BxG,KAAK,CAACyG,OAAO,CAAC5C,CAAC,CAAC,0BAA0B,CAAC,IAAI,YAAY,CAAC;IAChE,CAAC,CAAC,OAAO6C,KAAK,EAAE;MACZlG,UAAU,CAACmG,IAAI,CAAC,uBAAuB,EAAE;QAAEC,SAAS,EAAE;MAAkB,CAAC,EAAEF,KAAgB,CAAC;MAC5F1G,KAAK,CAAC0G,KAAK,CAAC7C,CAAC,CAAC,6BAA6B,CAAC,IAAI,oBAAoB,CAAC;IACzE,CAAC,SAAS;MACNS,oBAAoB,CAAC,IAAI,CAAC;IAC9B;EACJ,CAAC,EAAE,CAAClB,eAAe,EAAEiB,iBAAiB,EAAEd,aAAa,EAAEM,CAAC,CAAC,CAAC;EAE1D,MAAMiD,cAAc,GAAG9H,WAAW,CAAC,YAAY;IAC3C,IAAIuF,UAAU,EAAE;IAChBC,aAAa,CAAC,IAAI,CAAC;IACnB,IAAI;MACA,MAAMrB,qBAAqB,GAAG,CAAC;MAC/B,MAAMK,MAAM,CAAC,CAAC;MACdxD,KAAK,CAACyG,OAAO,CAAC5C,CAAC,CAAC,0BAA0B,CAAC,IAAI,YAAY,CAAC;MAC5Df,OAAO,CAAC,CAAC;IACb,CAAC,CAAC,OAAO4D,KAAK,EAAE;MACZlG,UAAU,CAACmG,IAAI,CAAC,iBAAiB,EAAE;QAAEC,SAAS,EAAE;MAAkB,CAAC,EAAEF,KAAgB,CAAC;MACtF1G,KAAK,CAAC0G,KAAK,CAAC7C,CAAC,CAAC,6BAA6B,CAAC,IAAI,oBAAoB,CAAC;IACzE,CAAC,SAAS;MACNW,aAAa,CAAC,KAAK,CAAC;IACxB;EACJ,CAAC,EAAE,CAACD,UAAU,EAAEf,MAAM,EAAEK,CAAC,EAAEf,OAAO,EAAEK,qBAAqB,CAAC,CAAC;EAE3D,MAAM4D,iBAAiB,GAAG/H,WAAW,CAAC,YAAY;IAC9C,IAAIyF,aAAa,EAAE;IACnBC,gBAAgB,CAAC,IAAI,CAAC;IACtB,IAAI;MACA,MAAMvB,qBAAqB,GAAG,CAAC;MAC/B,MAAMM,SAAS,CAAC,CAAC;MACjBzD,KAAK,CAACyG,OAAO,CAAC5C,CAAC,CAAC,0CAA0C,CAAC,IAAI,4BAA4B,CAAC;MAC5Ff,OAAO,CAAC,CAAC;IACb,CAAC,CAAC,OAAO4D,KAAK,EAAE;MACZlG,UAAU,CAACmG,IAAI,CAAC,qBAAqB,EAAE;QAAEC,SAAS,EAAE;MAAkB,CAAC,EAAEF,KAAgB,CAAC;MAC1F1G,KAAK,CAAC0G,KAAK,CAAC7C,CAAC,CAAC,gCAAgC,CAAC,IAAI,oCAAoC,CAAC;IAC5F,CAAC,SAAS;MACNa,gBAAgB,CAAC,KAAK,CAAC;IAC3B;EACJ,CAAC,EAAE,CAACD,aAAa,EAAEhB,SAAS,EAAEI,CAAC,EAAEf,OAAO,EAAEK,qBAAqB,CAAC,CAAC;EAEjE,MAAM6D,mBAAmB,GAAGhI,WAAW,CAAC,MAAO4C,IAAiB,IAAK;IACjE,IAAIuC,kBAAkB,EAAE;IACxB;IACA;IACA,IAAIvC,IAAI,CAACC,SAAS,KAAK8B,IAAI,EAAE+B,EAAE,EAAE;MAC7B5C,OAAO,CAAC,CAAC;MACT;IACJ;IACAsB,qBAAqB,CAACxC,IAAI,CAACC,SAAS,CAAC;IACrC,IAAI;MACA,MAAMsB,qBAAqB,GAAG,CAAC;MAC/B;MACA;MACA,MAAMG,eAAe,CAAC1B,IAAI,CAACC,SAAS,CAAC;MACrC7B,KAAK,CAACyG,OAAO,CAAC5C,CAAC,CAAC,sCAAsC,CAAC,IAAI,kBAAkB,CAAC;MAC9Ef,OAAO,CAAC,CAAC;IACb,CAAC,CAAC,OAAO4D,KAAK,EAAE;MACZ,IAAI,CAACpG,KAAK,CAAC,CAAC,EAAE;QACVE,UAAU,CAACmG,IAAI,CAAC,uBAAuB,EAAE;UAAEC,SAAS,EAAE;QAAkB,CAAC,EAAEF,KAAgB,CAAC;MAChG;MACA1G,KAAK,CAAC0G,KAAK,CAAC7C,CAAC,CAAC,qCAAqC,CAAC,IAAI,0BAA0B,CAAC;IACvF,CAAC,SAAS;MACNO,qBAAqB,CAAC,IAAI,CAAC;IAC/B;EACJ,CAAC,EAAE,CAACD,kBAAkB,EAAER,IAAI,EAAE+B,EAAE,EAAEpC,eAAe,EAAEO,CAAC,EAAEf,OAAO,EAAEK,qBAAqB,CAAC,CAAC;EAEtF,MAAM8D,iBAAiB,GAAGjI,WAAW,CAAC,CAAC4C,IAAiB,EAAEsF,OAAgB,KAAK;IAC3E,MAAMC,WAAW,GAAG9G,qBAAqB,CAACuB,IAAI,CAAC6D,OAAO,EAAE3B,MAAM,CAAC;IAC/D,MAAMoC,QAAQ,GAAGtE,IAAI,CAAC6D,OAAO,EAAES,QAAQ,GAAG,IAAItE,IAAI,CAAC6D,OAAO,CAACS,QAAQ,EAAE,GAAG,IAAI;IAC5E;IACA;IACA;IACA,MAAMkB,MAAM,GAAGxF,IAAI,CAACC,SAAS,KAAK8B,IAAI,EAAE+B,EAAE;IAC1C,MAAM2B,eAAe,GAAGlD,kBAAkB,KAAKvC,IAAI,CAACC,SAAS;IAC7D,MAAMyF,IAAI,GAAG1F,IAAI,CAAC2F,gBAAgB,EAAED,IAAI;IACxC,MAAME,SAAS,GAAG5F,IAAI,CAAC6D,OAAO,EAAEgC,MAAM,GAChC7D,WAAW,CAAC8D,kBAAkB,CAAC9F,IAAI,CAAC6D,OAAO,CAACgC,MAAM,EAAE,OAAO,CAAC,GAC5DE,SAAS;IACf,MAAMC,WAAW,GAAGhG,IAAI,CAAC2F,gBAAgB,EAAEK,WAAW,IAAI,EAAE;IAC5D,MAAMC,SAAS,GAAGjG,IAAI,CAACyE,YAAY,KAAK,QAAQ,IACzCuB,WAAW,CAACzB,QAAQ,CAAC,gBAAgB,CAAC,IACtCyB,WAAW,CAACzB,QAAQ,CAAC,cAAc,CAAC;IAC3C,MAAM2B,YAAY,GAAGlG,IAAI,CAACyE,YAAY,KAAK,MAAM,IAAI,CAAC,CAACnD,qBAAqB,IAAI2E,SAAS;IAEzF,oBACI5G,KAAA,CAACzB,gBAAgB;MAEbuI,iBAAiB,EAAC,UAAU;MAC5BC,kBAAkB,EAAEb,WAAY;MAChCc,kBAAkB,EAAE;QAAEC,QAAQ,EAAEd;MAAO,CAAE;MACzCe,OAAO,EAAEA,CAAA,KAAMnB,mBAAmB,CAACpF,IAAI,CAAE;MACzCwG,QAAQ,EAAE9C,WAAY;MACtB+C,aAAa,EAAE,GAAI;MACnBC,KAAK,EAAE,CACHC,MAAM,CAACC,UAAU,EACjBtB,OAAO,IAAIqB,MAAM,CAACE,QAAQ,EAC1BrB,MAAM,IAAI;QAAEsB,eAAe,EAAE3E,MAAM,CAAC4E;MAAc,CAAC,EACnDrD,WAAW,IAAI,CAAC+B,eAAe,IAAIkB,MAAM,CAACK,WAAW,CACvD;MAAAnG,QAAA,gBAEF1B,IAAA,CAACN,MAAM;QAACoI,GAAG,EAAErB,SAAU;QAACvB,IAAI,EAAEkB,WAAY;QAAC2B,IAAI,EAAE5B,OAAO,GAAG,EAAE,GAAG;MAAG,CAAE,CAAC,eACtEjG,KAAA,CAAC5B,IAAI;QAACiJ,KAAK,EAAEC,MAAM,CAACQ,WAAY;QAAAtG,QAAA,gBAC5BxB,KAAA,CAAC5B,IAAI;UAACiJ,KAAK,EAAEC,MAAM,CAACS,OAAQ;UAAAvG,QAAA,gBACxB1B,IAAA,CAACzB,IAAI;YAACgJ,KAAK,EAAE,CAACC,MAAM,CAACU,WAAW,EAAE;cAAEC,KAAK,EAAEnF,MAAM,CAACoF;YAAK,CAAC,CAAE;YAACC,aAAa,EAAE,CAAE;YAAA3G,QAAA,EACvE0E;UAAW,CACV,CAAC,EACNG,IAAI,gBACDvG,IAAA,CAAC1B,IAAI;YAACiJ,KAAK,EAAE,CAACC,MAAM,CAACc,SAAS,EAAE;cAAEX,eAAe,EAAE3E,MAAM,CAACuF;YAAK,CAAC,CAAE;YAAA7G,QAAA,eAC9D1B,IAAA,CAACzB,IAAI;cAACgJ,KAAK,EAAE,CAACC,MAAM,CAACgB,aAAa,EAAE;gBAAEL,KAAK,EAAEnF,MAAM,CAACyF;cAAc,CAAC,CAAE;cAAA/G,QAAA,EAChEoB,CAAC,CAAC,kBAAkByD,IAAI,QAAQ,CAAC,IAAIA;YAAI,CACxC;UAAC,CACL,CAAC,GACP,IAAI;QAAA,CACN,CAAC,EACNpB,QAAQ,gBACLnF,IAAA,CAACzB,IAAI;UAACgJ,KAAK,EAAE,CAACC,MAAM,CAACkB,YAAY,EAAE;YAAEP,KAAK,EAAEnF,MAAM,CAACyF;UAAc,CAAC,CAAE;UAACJ,aAAa,EAAE,CAAE;UAAA3G,QAAA,EACjFyD;QAAQ,CACP,CAAC,GACP,IAAI;MAAA,CACN,CAAC,EACN4B,YAAY,gBACT/G,IAAA,CAACvB,gBAAgB;QACbuI,iBAAiB,EAAC,QAAQ;QAC1BC,kBAAkB,EAAEnE,CAAC,CAAC,yBAAyB,CAAC,IAAI,kBAAmB;QACvEsE,OAAO,EAAEA,CAAA,KAAMjF,qBAAqB,GAAGtB,IAAI,CAACC,SAAS,CAAE;QACvD6H,OAAO,EAAE;UAAEC,GAAG,EAAE,CAAC;UAAEC,MAAM,EAAE,CAAC;UAAEC,IAAI,EAAE,CAAC;UAAEC,KAAK,EAAE;QAAE,CAAE;QAClDxB,KAAK,EAAEC,MAAM,CAACwB,cAAe;QAAAtH,QAAA,eAE7B1B,IAAA,CAAChB,QAAQ;UAACkG,IAAI,EAAC,kBAAkB;UAAC6C,IAAI,EAAE,EAAG;UAACI,KAAK,EAAEnF,MAAM,CAACyF;QAAc,CAAE;MAAC,CAC7D,CAAC,GACnB,IAAI,EACPnC,eAAe,gBACZtG,IAAA,CAACjB,iBAAiB;QAACoJ,KAAK,EAAEnF,MAAM,CAACiG,OAAQ;QAAClB,IAAI,EAAC;MAAO,CAAE,CAAC,GACzD1B,MAAM,gBACNrG,IAAA,CAAChB,QAAQ;QAACkG,IAAI,EAAC,WAAW;QAAC6C,IAAI,EAAE,EAAG;QAACI,KAAK,EAAEnF,MAAM,CAACiG;MAAQ,CAAE,CAAC,GAC9D,IAAI;IAAA,GAjDH,QAAQpI,IAAI,CAACC,SAAS,EAkDb,CAAC;EAE3B,CAAC,EAAE,CAAC8B,IAAI,EAAE+B,EAAE,EAAEvB,kBAAkB,EAAEmB,WAAW,EAAEvB,MAAM,EAAEiD,mBAAmB,EAAElD,MAAM,EAAEZ,qBAAqB,EAAEU,WAAW,EAAEC,CAAC,CAAC,CAAC;EAE3H,MAAMoG,UAAU,GAAGjL,WAAW,CAAEkL,OAAoB,IAChDA,OAAO,CAACvI,GAAG,CAAEwI,KAAK,iBACdlJ,KAAA,CAAC5B,IAAI;IAAAoD,QAAA,GACAwE,iBAAiB,CAACkD,KAAK,CAACzH,IAAI,EAAE,KAAK,CAAC,EACpCyH,KAAK,CAAC1H,QAAQ,CAACd,GAAG,CAAEiB,KAAK,IAAKqE,iBAAiB,CAACrE,KAAK,EAAE,IAAI,CAAC,CAAC;EAAA,GAFvD,QAAQuH,KAAK,CAACzH,IAAI,CAACb,SAAS,EAGjC,CACT,CACJ,EAAE,CAACoF,iBAAiB,CAAC,CAAC;EAEvB,oBACIhG,KAAA,CAACvB,UAAU;IACP4I,KAAK,EAAEC,MAAM,CAAC6B,MAAO;IACrBC,qBAAqB,EAAE9B,MAAM,CAAC+B,aAAc;IAC5CC,4BAA4B,EAAE,KAAM;IACpCC,yBAAyB,EAAC,SAAS;IAAA/H,QAAA,gBAGnC1B,IAAA,CAACzB,IAAI;MAACgJ,KAAK,EAAE,CAACC,MAAM,CAACkC,YAAY,EAAE;QAAEvB,KAAK,EAAEnF,MAAM,CAACyF;MAAc,CAAC,CAAE;MAAA/G,QAAA,EAC/DoB,CAAC,CAAC,qCAAqC,CAAC,IAAI;IAAgB,CAC3D,CAAC,EACNkB,UAAU,CAACpD,GAAG,CAAEwD,GAAG,IAAK;MACrB,MAAMuF,MAAM,GAAGzG,aAAa,KAAKkB,GAAG,CAACqB,SAAS;MAC9C,MAAMmE,UAAU,GAAGtG,iBAAiB,KAAKc,GAAG,CAACqB,SAAS;MACtD;MACA;MACA,MAAMoE,gBAAgB,GAAGzF,GAAG,CAACC,QAAQ;MACrC,oBACInE,KAAA,CAACzB,gBAAgB;QAEbuI,iBAAiB,EAAC,UAAU;QAC5BC,kBAAkB,EAAE7C,GAAG,CAACgC,WAAY;QACpCc,kBAAkB,EAAE;UAAEC,QAAQ,EAAE0C;QAAiB,CAAE;QACnDzC,OAAO,EAAEA,CAAA,KAAM5B,kBAAkB,CAACpB,GAAG,CAACqB,SAAS,CAAE;QACjD4B,QAAQ,EAAEwC,gBAAgB,IAAIF,MAAM,IAAIpF,WAAY;QACpD+C,aAAa,EAAE,GAAI;QACnBC,KAAK,EAAE,CACHC,MAAM,CAACC,UAAU,EACjBoC,gBAAgB,IAAI;UAAElC,eAAe,EAAE3E,MAAM,CAAC4E;QAAc,CAAC,EAC7DrD,WAAW,IAAI,CAACH,GAAG,CAACC,QAAQ,IAAImD,MAAM,CAACK,WAAW,CACpD;QAAAnG,QAAA,gBAEF1B,IAAA,CAACN,MAAM;UAACoI,GAAG,EAAE1D,GAAG,CAACqC,SAAU;UAACvB,IAAI,EAAEd,GAAG,CAACgC,WAAY;UAAC2B,IAAI,EAAE3D,GAAG,CAACC,QAAQ,GAAG,EAAE,GAAG;QAAG,CAAE,CAAC,eACnFnE,KAAA,CAAC5B,IAAI;UAACiJ,KAAK,EAAEC,MAAM,CAACQ,WAAY;UAAAtG,QAAA,gBAC5B1B,IAAA,CAACzB,IAAI;YACDgJ,KAAK,EAAE,CAACC,MAAM,CAACU,WAAW,EAAE;cAAEC,KAAK,EAAEnF,MAAM,CAACoF;YAAK,CAAC,EAAEhE,GAAG,CAACC,QAAQ,IAAImD,MAAM,CAACsC,iBAAiB,CAAE;YAC9FzB,aAAa,EAAE,CAAE;YAAA3G,QAAA,EAEhB0C,GAAG,CAACgC;UAAW,CACd,CAAC,EACNhC,GAAG,CAAC2F,SAAS,gBACV/J,IAAA,CAACzB,IAAI;YAACgJ,KAAK,EAAE,CAACC,MAAM,CAACkB,YAAY,EAAE;cAAEP,KAAK,EAAEnF,MAAM,CAACyF;YAAc,CAAC,CAAE;YAACJ,aAAa,EAAE,CAAE;YAAA3G,QAAA,EACjF0C,GAAG,CAAC2F;UAAS,CACZ,CAAC,GACP,IAAI;QAAA,CACN,CAAC,EACNJ,MAAM,gBACH3J,IAAA,CAACjB,iBAAiB;UAACoJ,KAAK,EAAEnF,MAAM,CAACiG,OAAQ;UAAClB,IAAI,EAAC;QAAO,CAAE,CAAC,GACzD8B,gBAAgB,gBAChB7J,IAAA,CAAChB,QAAQ;UAACkG,IAAI,EAAC,WAAW;UAAC6C,IAAI,EAAE,EAAG;UAACI,KAAK,EAAEnF,MAAM,CAACiG;QAAQ,CAAE,CAAC,GAC9DW,UAAU,gBACV5J,IAAA,CAACjB,iBAAiB;UAACoJ,KAAK,EAAEnF,MAAM,CAACyF,aAAc;UAACV,IAAI,EAAC;QAAO,CAAE,CAAC,gBAE/D/H,IAAA,CAACvB,gBAAgB;UACbuI,iBAAiB,EAAC,QAAQ;UAC1BC,kBAAkB,EACdnE,CAAC,CAAC,4BAA4B,EAAE;YAAEoC,IAAI,EAAEd,GAAG,CAACgC;UAAY,CAAC,CAAC,IACvD,YAAYhC,GAAG,CAACgC,WAAW,EACjC;UACDgB,OAAO,EAAEA,CAAA,KAAMtB,kBAAkB,CAAC1B,GAAG,CAACqB,SAAS,CAAE;UACjD4B,QAAQ,EAAE9C,WAAW,IAAIjB,iBAAiB,KAAK,IAAK;UACpDqF,OAAO,EAAE;YAAEC,GAAG,EAAE,CAAC;YAAEC,MAAM,EAAE,CAAC;YAAEC,IAAI,EAAE,CAAC;YAAEC,KAAK,EAAE;UAAE,CAAE;UAClDxB,KAAK,EAAEC,MAAM,CAACwB,cAAe;UAAAtH,QAAA,eAE7B1B,IAAA,CAAChB,QAAQ;YAACkG,IAAI,EAAC,iBAAiB;YAAC6C,IAAI,EAAE,EAAG;YAACI,KAAK,EAAEnF,MAAM,CAACyF;UAAc,CAAE;QAAC,CAC5D,CACrB;MAAA,GA/CI,UAAUrE,GAAG,CAACqB,SAAS,EAgDd,CAAC;IAE3B,CAAC,CAAC,EAEDlB,WAAW,gBACRrE,KAAA,CAAC5B,IAAI;MAACiJ,KAAK,EAAEC,MAAM,CAACwC,YAAa;MAAAtI,QAAA,gBAC7B1B,IAAA,CAACjB,iBAAiB;QAACoJ,KAAK,EAAEnF,MAAM,CAACyF,aAAc;QAACV,IAAI,EAAC;MAAO,CAAE,CAAC,eAC/D/H,IAAA,CAACzB,IAAI;QAACgJ,KAAK,EAAE,CAACC,MAAM,CAACyC,aAAa,EAAE;UAAE9B,KAAK,EAAEnF,MAAM,CAACyF;QAAc,CAAC,CAAE;QAAA/G,QAAA,EAChEoB,CAAC,CAAC,uBAAuB,CAAC,IAAI;MAAoB,CACjD,CAAC;IAAA,CACL,CAAC,GACP,IAAI,eAER5C,KAAA,CAACzB,gBAAgB;MACbuI,iBAAiB,EAAC,UAAU;MAC5BC,kBAAkB,EAAEnE,CAAC,CAAC,wBAAwB,CAAC,IAAI,qBAAsB;MACzEsE,OAAO,EAAEA,CAAA,KAAM;QAAErF,OAAO,CAAC,CAAC;QAAEC,YAAY,CAAC,CAAC;MAAE,CAAE;MAC9CqF,QAAQ,EAAE7C,cAAe;MACzB8C,aAAa,EAAE,GAAI;MACnBC,KAAK,EAAE,CAACC,MAAM,CAAC0C,SAAS,EAAE1F,cAAc,IAAIgD,MAAM,CAACK,WAAW,CAAE;MAAAnG,QAAA,gBAEhE1B,IAAA,CAAChB,QAAQ;QAACkG,IAAI,EAAC,oBAAoB;QAAC6C,IAAI,EAAE,EAAG;QAACI,KAAK,EAAEnF,MAAM,CAACmH;MAAK,CAAE,CAAC,eACpEnK,IAAA,CAACzB,IAAI;QAACgJ,KAAK,EAAE,CAACC,MAAM,CAAC4C,UAAU,EAAE;UAAEjC,KAAK,EAAEnF,MAAM,CAACoF;QAAK,CAAC,CAAE;QAAA1G,QAAA,EACpDoB,CAAC,CAAC,wBAAwB,CAAC,IAAI;MAAqB,CACnD,CAAC;IAAA,CACO,CAAC,EAGlB+B,aAAa,CAACwF,MAAM,GAAG,CAAC,gBACrBnK,KAAA,CAAAE,SAAA;MAAAsB,QAAA,gBACI1B,IAAA,CAACZ,OAAO;QAAC+I,KAAK,EAAEnF,MAAM,CAACsH,MAAO;QAACC,OAAO,EAAE;MAAE,CAAE,CAAC,EAE5C1F,aAAa,CAACwF,MAAM,GAAG,CAAC,gBACrBnK,KAAA,CAAC5B,IAAI;QAACiJ,KAAK,EAAE,CAACC,MAAM,CAACgD,SAAS,EAAE;UAAE7C,eAAe,EAAE3E,MAAM,CAACuF,IAAI;UAAEkC,WAAW,EAAEzH,MAAM,CAACsH;QAAO,CAAC,CAAE;QAAA5I,QAAA,gBAC1F1B,IAAA,CAAChB,QAAQ;UAACkG,IAAI,EAAC,QAAQ;UAAC6C,IAAI,EAAE,EAAG;UAACI,KAAK,EAAEnF,MAAM,CAACyF;QAAc,CAAE,CAAC,eACjEzI,IAAA,CAACxB,SAAS;UACNkM,KAAK,EAAE9G,KAAM;UACb+G,YAAY,EAAE9G,QAAS;UACvB+G,WAAW,EAAE9H,CAAC,CAAC,mCAAmC,CAAC,IAAI,iBAAkB;UACzE+H,oBAAoB,EAAE7H,MAAM,CAACyF,aAAc;UAC3ClB,KAAK,EAAE,CAACC,MAAM,CAACsD,WAAW,EAAE;YAAE3C,KAAK,EAAEnF,MAAM,CAACoF;UAAK,CAAC,CAAE;UACpD2C,cAAc,EAAC,MAAM;UACrBC,WAAW,EAAE;QAAM,CACtB,CAAC;MAAA,CACA,CAAC,GACP,IAAI,EAEP3F,YAAY,CAACgF,MAAM,GAAG,CAAC,gBACpBnK,KAAA,CAAAE,SAAA;QAAAsB,QAAA,gBACI1B,IAAA,CAACzB,IAAI;UAACgJ,KAAK,EAAE,CAACC,MAAM,CAACkC,YAAY,EAAE;YAAEvB,KAAK,EAAEnF,MAAM,CAACyF;UAAc,CAAC,CAAE;UAAA/G,QAAA,EAC/DoB,CAAC,CAAC,uCAAuC,CAAC,IAAI;QAAe,CAC5D,CAAC,EACNoG,UAAU,CAAC7D,YAAY,CAAC;MAAA,CAC3B,CAAC,GACH,IAAI,EAEPE,cAAc,CAAC8E,MAAM,GAAG,CAAC,gBACtBnK,KAAA,CAAAE,SAAA;QAAAsB,QAAA,gBACI1B,IAAA,CAACzB,IAAI;UAACgJ,KAAK,EAAE,CAACC,MAAM,CAACkC,YAAY,EAAE;YAAEvB,KAAK,EAAEnF,MAAM,CAACyF;UAAc,CAAC,CAAE;UAAA/G,QAAA,EAC/DoB,CAAC,CAAC,wCAAwC,CAAC,IAAI;QAAiB,CAC/D,CAAC,EACNoG,UAAU,CAAC3D,cAAc,CAAC;MAAA,CAC7B,CAAC,GACH,IAAI;IAAA,CACV,CAAC,GACH,IAAI,eAERvF,IAAA,CAACZ,OAAO;MAAC+I,KAAK,EAAEnF,MAAM,CAACsH,MAAO;MAACC,OAAO,EAAE;IAAE,CAAE,CAAC,eAG7CrK,KAAA,CAACzB,gBAAgB;MACbuI,iBAAiB,EAAC,UAAU;MAC5BC,kBAAkB,EAAEnE,CAAC,CAAC,uBAAuB,CAAC,IAAI,gBAAiB;MACnEsE,OAAO,EAAEA,CAAA,KAAM;QAAErF,OAAO,CAAC,CAAC;QAAEG,eAAe,CAAC,CAAC;MAAE,CAAE;MACjDmF,QAAQ,EAAE7C,cAAe;MACzB8C,aAAa,EAAE,GAAI;MACnBC,KAAK,EAAE,CAACC,MAAM,CAAC0C,SAAS,EAAE1F,cAAc,IAAIgD,MAAM,CAACK,WAAW,CAAE;MAAAnG,QAAA,gBAEhE1B,IAAA,CAAChB,QAAQ;QAACkG,IAAI,EAAC,oBAAoB;QAAC6C,IAAI,EAAE,EAAG;QAACI,KAAK,EAAEnF,MAAM,CAACmH;MAAK,CAAE,CAAC,eACpEnK,IAAA,CAACzB,IAAI;QAACgJ,KAAK,EAAE,CAACC,MAAM,CAAC4C,UAAU,EAAE;UAAEjC,KAAK,EAAEnF,MAAM,CAACoF;QAAK,CAAC,CAAE;QAAA1G,QAAA,EACpDoB,CAAC,CAAC,uBAAuB,CAAC,IAAI;MAAgB,CAC7C,CAAC;IAAA,CACO,CAAC,eAEnB5C,KAAA,CAACzB,gBAAgB;MACbuI,iBAAiB,EAAC,UAAU;MAC5BC,kBAAkB,EAAEnE,CAAC,CAAC,oBAAoB,CAAC,IAAI,yBAA0B;MACzEsE,OAAO,EAAEA,CAAA,KAAM;QAAErF,OAAO,CAAC,CAAC;QAAEE,gBAAgB,CAAC,CAAC;MAAE,CAAE;MAClDoF,QAAQ,EAAE7C,cAAe;MACzB8C,aAAa,EAAE,GAAI;MACnBC,KAAK,EAAE,CAACC,MAAM,CAAC0C,SAAS,EAAE1F,cAAc,IAAIgD,MAAM,CAACK,WAAW,CAAE;MAAAnG,QAAA,gBAEhE1B,IAAA,CAAChB,QAAQ;QAACkG,IAAI,EAAC,kBAAkB;QAAC6C,IAAI,EAAE,EAAG;QAACI,KAAK,EAAEnF,MAAM,CAACmH;MAAK,CAAE,CAAC,eAClEnK,IAAA,CAACzB,IAAI;QAACgJ,KAAK,EAAE,CAACC,MAAM,CAAC4C,UAAU,EAAE;UAAEjC,KAAK,EAAEnF,MAAM,CAACoF;QAAK,CAAC,CAAE;QAAA1G,QAAA,EACpDoB,CAAC,CAAC,oBAAoB,CAAC,IAAI;MAAyB,CACnD,CAAC;IAAA,CACO,CAAC,eAEnB5C,KAAA,CAACzB,gBAAgB;MACbuI,iBAAiB,EAAC,UAAU;MAC5BC,kBAAkB,EAAEnE,CAAC,CAAC,wBAAwB,CAAC,IAAI,UAAW;MAC9DsE,OAAO,EAAEA,CAAA,KAAMtD,aAAa,CAACmH,IAAI,CAAC,CAAE;MACpC5D,QAAQ,EAAE7C,cAAe;MACzB8C,aAAa,EAAE,GAAI;MACnBC,KAAK,EAAE,CAACC,MAAM,CAAC0C,SAAS,EAAE1F,cAAc,IAAIgD,MAAM,CAACK,WAAW,CAAE;MAAAnG,QAAA,GAE/D8B,UAAU,gBACPxD,IAAA,CAACjB,iBAAiB;QAACoJ,KAAK,EAAEnF,MAAM,CAAC2C,KAAM;QAACoC,IAAI,EAAC;MAAO,CAAE,CAAC,gBAEvD/H,IAAA,CAAChB,QAAQ;QAACkG,IAAI,EAAC,iBAAiB;QAAC6C,IAAI,EAAE,EAAG;QAACI,KAAK,EAAEnF,MAAM,CAAC2C;MAAM,CAAE,CACpE,eACD3F,IAAA,CAACzB,IAAI;QAACgJ,KAAK,EAAE,CAACC,MAAM,CAAC4C,UAAU,EAAE;UAAEjC,KAAK,EAAEnF,MAAM,CAAC2C;QAAM,CAAC,CAAE;QAAAjE,QAAA,EACrDoB,CAAC,CAAC,wBAAwB,CAAC,IAAI;MAAU,CACxC,CAAC;IAAA,CACO,CAAC,EAElBkB,UAAU,CAACqG,MAAM,GAAG,CAAC,gBAClBnK,KAAA,CAACzB,gBAAgB;MACbuI,iBAAiB,EAAC,UAAU;MAC5BC,kBAAkB,EAAEnE,CAAC,CAAC,wBAAwB,CAAC,IAAI,0BAA2B;MAC9EsE,OAAO,EAAEA,CAAA,KAAMrD,gBAAgB,CAACkH,IAAI,CAAC,CAAE;MACvC5D,QAAQ,EAAE7C,cAAe;MACzB8C,aAAa,EAAE,GAAI;MACnBC,KAAK,EAAE,CAACC,MAAM,CAAC0C,SAAS,EAAE1F,cAAc,IAAIgD,MAAM,CAACK,WAAW,CAAE;MAAAnG,QAAA,GAE/DgC,aAAa,gBACV1D,IAAA,CAACjB,iBAAiB;QAACoJ,KAAK,EAAEnF,MAAM,CAAC2C,KAAM;QAACoC,IAAI,EAAC;MAAO,CAAE,CAAC,gBAEvD/H,IAAA,CAAChB,QAAQ;QAACkG,IAAI,EAAC,iBAAiB;QAAC6C,IAAI,EAAE,EAAG;QAACI,KAAK,EAAEnF,MAAM,CAAC2C;MAAM,CAAE,CACpE,eACD3F,IAAA,CAACzB,IAAI;QAACgJ,KAAK,EAAE,CAACC,MAAM,CAAC4C,UAAU,EAAE;UAAEjC,KAAK,EAAEnF,MAAM,CAAC2C;QAAM,CAAC,CAAE;QAAAjE,QAAA,EACrDoB,CAAC,CAAC,wBAAwB,CAAC,IAAI;MAA0B,CACxD,CAAC;IAAA,CACO,CAAC,GACnB,IAAI,eAER9C,IAAA,CAACb,MAAM;MACH+L,OAAO,EAAEpH,aAAc;MACvBqH,KAAK,EAAErI,CAAC,CAAC,wBAAwB,CAAC,IAAI,UAAW;MACjDsI,WAAW,EAAEtI,CAAC,CAAC,yBAAyB,CAAC,IAAI,oCAAqC;MAClFuI,OAAO,EAAE,CACL;QAAEC,KAAK,EAAExI,CAAC,CAAC,wBAAwB,CAAC,IAAI,UAAU;QAAEqF,KAAK,EAAE,aAAa;QAAEf,OAAO,EAAErB;MAAe,CAAC,EACnG;QAAEuF,KAAK,EAAExI,CAAC,CAAC,eAAe,CAAC,IAAI,QAAQ;QAAEqF,KAAK,EAAE;MAAS,CAAC;IAC5D,CACL,CAAC,eACFnI,IAAA,CAACb,MAAM;MACH+L,OAAO,EAAEnH,gBAAiB;MAC1BoH,KAAK,EAAErI,CAAC,CAAC,wBAAwB,CAAC,IAAI,0BAA2B;MACjEsI,WAAW,EAAEtI,CAAC,CAAC,4BAA4B,CAAC,IAAI,oDAAqD;MACrGuI,OAAO,EAAE,CACL;QAAEC,KAAK,EAAExI,CAAC,CAAC,wBAAwB,CAAC,IAAI,0BAA0B;QAAEqF,KAAK,EAAE,aAAa;QAAEf,OAAO,EAAEpB;MAAkB,CAAC,EACtH;QAAEsF,KAAK,EAAExI,CAAC,CAAC,eAAe,CAAC,IAAI,QAAQ;QAAEqF,KAAK,EAAE;MAAS,CAAC;IAC5D,CACL,CAAC;EAAA,CACM,CAAC;AAErB,CAAC;AAQD;AACA;AACA;AACA;AACA;AACA,MAAMoD,eAA+C,GAAGA,CAAC;EAAEN,IAAI;EAAEO,MAAM;EAAE,GAAGH;AAAQ,CAAC,KAAK;EACtF,MAAM;IAAEvI;EAAE,CAAC,GAAGlD,OAAO,CAAC,CAAC;EACvB,MAAM;IAAEoD;EAAO,CAAC,GAAG3D,QAAQ,CAAC,CAAC;EAC7B,MAAMoM,YAAY,GAAGrN,MAAM,CAAc,IAAI,CAAC;EAC9C,MAAM;IAAE2D;EAAQ,CAAC,GAAGsJ,OAAO;EAE3BnN,SAAS,CAAC,MAAM;IACZ,IAAI,CAAC+M,IAAI,IAAI,CAAC5K,KAAK,IAAI,OAAOqL,QAAQ,KAAK,WAAW,EAAE;MACpD,OAAO9E,SAAS;IACpB;IACA,MAAM+E,KAAK,GAAIC,KAAoB,IAAK;MACpC,IAAIA,KAAK,CAACC,GAAG,KAAK,QAAQ,EAAE;QACxBD,KAAK,CAACE,eAAe,CAAC,CAAC;QACvB/J,OAAO,CAAC,CAAC;MACb;IACJ,CAAC;IACD2J,QAAQ,CAACK,gBAAgB,CAAC,SAAS,EAAEJ,KAAK,EAAE,IAAI,CAAC;IACjD,OAAO,MAAMD,QAAQ,CAACM,mBAAmB,CAAC,SAAS,EAAEL,KAAK,EAAE,IAAI,CAAC;EACrE,CAAC,EAAE,CAACV,IAAI,EAAElJ,OAAO,CAAC,CAAC;EAEnB,IAAI,CAACkJ,IAAI,EAAE;IACP,OAAO,IAAI;EACf;EAEA,MAAMgB,WAAsB,GAAGT,MAAM,GAC/B;IACE,IAAIA,MAAM,CAAC5C,GAAG,KAAKhC,SAAS,GAAG;MAAEgC,GAAG,EAAE4C,MAAM,CAAC5C;IAAI,CAAC,GAAG,IAAI,CAAC;IAC1D,IAAI4C,MAAM,CAAC3C,MAAM,KAAKjC,SAAS,GAAG;MAAEiC,MAAM,EAAE2C,MAAM,CAAC3C;IAAO,CAAC,GAAG,IAAI,CAAC;IACnE,IAAI2C,MAAM,CAAC1C,IAAI,KAAKlC,SAAS,GAAG;MAAEkC,IAAI,EAAE0C,MAAM,CAAC1C;IAAK,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI0C,MAAM,CAACzC,KAAK,KAAKnC,SAAS,GAAG;MAAEmC,KAAK,EAAEyC,MAAM,CAACzC;IAAM,CAAC,GAAG,IAAI;EACnE,CAAC,GACC;IAAEH,GAAG,EAAE,EAAE;IAAEG,KAAK,EAAE;EAAG,CAAC;EAE5B,MAAMmD,WAAwB,GAAG7L,KAAK,GAChC,CAACmH,MAAM,CAAC2E,SAAS,EAAE3E,MAAM,CAAC4E,QAAQ,EAAEH,WAAW,EAAE;IAAEtE,eAAe,EAAE3E,MAAM,CAACqJ,UAAU;IAAE5B,WAAW,EAAEzH,MAAM,CAACsH;EAAO,CAAC,CAAC,GACpH,CAAC9C,MAAM,CAAC2E,SAAS,EAAE3E,MAAM,CAAC8E,WAAW,EAAE;IAAE3E,eAAe,EAAE3E,MAAM,CAACqJ;EAAW,CAAC,CAAC;EAEpF,oBACIrM,IAAA,CAACpB,KAAK;IAAC2N,OAAO,EAAEtB,IAAK;IAACuB,WAAW;IAACC,aAAa,EAAEpM,KAAK,GAAG,MAAM,GAAG,OAAQ;IAACqM,cAAc,EAAErB,OAAO,CAACtJ,OAAQ;IAAAL,QAAA,eACvG1B,IAAA,CAACnB,SAAS;MACNmI,iBAAiB,EAAC,QAAQ;MAC1BC,kBAAkB,EAAEnE,CAAC,CAAC,sBAAsB,CAAC,IAAI,OAAQ;MACzDsE,OAAO,EAAEiE,OAAO,CAACtJ,OAAQ;MACzBwF,KAAK,EAAElH,KAAK,GAAGmH,MAAM,CAACmF,UAAU,GAAGnF,MAAM,CAACoF,aAAc;MAAAlL,QAAA,eAExD1B,IAAA,CAACnB,SAAS;QACNgO,GAAG,EAAEpB,YAAa;QAClBrE,OAAO,EAAEA,CAAA,KAAMR,SAAU;QACzBW,KAAK,EAAE2E,WAAY;QACnBlF,iBAAiB,EAAC,MAAM;QACxBC,kBAAkB,EAAEnE,CAAC,CAAC,uBAAuB,CAAC,IAAI,kBAAmB;QAAApB,QAAA,eAErE1B,IAAA,CAAC8B,mBAAmB;UAAA,GAAKuJ;QAAO,CAAG;MAAC,CAC7B;IAAC,CACL;EAAC,CACT,CAAC;AAEhB,CAAC;AAED,MAAM7D,MAAM,GAAG9I,UAAU,CAACoO,MAAM,CAAC;EAC7BH,UAAU,EAAE;IACRI,IAAI,EAAE,CAAC;IACPpF,eAAe,EAAE,aAAa;IAC9BqF,QAAQ,EAAE;EACd,CAAC;EACDJ,aAAa,EAAE;IACXG,IAAI,EAAE,CAAC;IACPpF,eAAe,EAAE,kBAAkB;IACnCsF,cAAc,EAAE;EACpB,CAAC;EACDd,SAAS,EAAE;IACPe,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,MAAM;IACnBC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,EAAE;IAChBC,YAAY,EAAE;MAAEC,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAE,CAAC;IACrCC,SAAS,EAAE,EAAE;IACbC,QAAQ,EAAE;EACd,CAAC;EACDtB,QAAQ,EAAE;IACNY,QAAQ,EAAE,UAAU;IACpBO,KAAK,EAAEhN,WAAW;IAClBoN,SAAS,EAAE,KAAK;IAChBC,WAAW,EAAE;EACjB,CAAC;EACDtB,WAAW,EAAE;IACTuB,gBAAgB,EAAE,CAAC;IACnBC,mBAAmB,EAAE,EAAE;IACvBC,oBAAoB,EAAE,EAAE;IACxBC,aAAa,EAAE,EAAE;IACjBL,SAAS,EAAE;EACf,CAAC;EACDtE,MAAM,EAAE;IACJ4E,QAAQ,EAAE;EACd,CAAC;EACD1E,aAAa,EAAE;IACX2E,eAAe,EAAE;EACrB,CAAC;EACDxE,YAAY,EAAE;IACVyE,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,aAAa,EAAE,WAAW;IAC1BC,aAAa,EAAE,GAAG;IAClBC,iBAAiB,EAAE,EAAE;IACrBC,UAAU,EAAE,EAAE;IACdR,aAAa,EAAE;EACnB,CAAC;EACDvG,UAAU,EAAE;IACRgH,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBH,iBAAiB,EAAE,EAAE;IACrBL,eAAe,EAAE,EAAE;IACnBS,GAAG,EAAE;EACT,CAAC;EACDjH,QAAQ,EAAE;IACNkH,WAAW,EAAE;EACjB,CAAC;EACD/G,WAAW,EAAE;IACTgH,OAAO,EAAE;EACb,CAAC;EACD7G,WAAW,EAAE;IACT+E,IAAI,EAAE,CAAC;IACP+B,QAAQ,EAAE;EACd,CAAC;EACD7G,OAAO,EAAE;IACLwG,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE;EACT,CAAC;EACDzG,WAAW,EAAE;IACTiG,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBW,UAAU,EAAE;EAChB,CAAC;EACDjF,iBAAiB,EAAE;IACfsE,UAAU,EAAE;EAChB,CAAC;EACD1F,YAAY,EAAE;IACVyF,QAAQ,EAAE,EAAE;IACZa,SAAS,EAAE;EACf,CAAC;EACD1G,SAAS,EAAE;IACPiG,iBAAiB,EAAE,CAAC;IACpBL,eAAe,EAAE,CAAC;IAClBhB,YAAY,EAAE;EAClB,CAAC;EACD1E,aAAa,EAAE;IACX2F,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,aAAa,EAAE;EACnB,CAAC;EACDrF,cAAc,EAAE;IACZuE,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVkB,UAAU,EAAE,QAAQ;IACpBzB,cAAc,EAAE,QAAQ;IACxBC,YAAY,EAAE;EAClB,CAAC;EACDlD,YAAY,EAAE;IACVyE,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBzB,cAAc,EAAE,QAAQ;IACxBiB,eAAe,EAAE,CAAC;IAClBS,GAAG,EAAE;EACT,CAAC;EACD1E,aAAa,EAAE;IACXkE,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EAChB,CAAC;EACD5D,SAAS,EAAE;IACPiE,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,CAAC;IACNd,gBAAgB,EAAE,EAAE;IACpBoB,cAAc,EAAE,CAAC;IACjBV,iBAAiB,EAAE,EAAE;IACrBf,MAAM,EAAE,EAAE;IACVN,YAAY,EAAE,EAAE;IAChBU,WAAW,EAAE;EACjB,CAAC;EACD9C,WAAW,EAAE;IACTiC,IAAI,EAAE,CAAC;IACPoB,QAAQ,EAAE,EAAE;IACZe,OAAO,EAAE;EACb,CAAC;EACDhF,SAAS,EAAE;IACPuE,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBH,iBAAiB,EAAE,EAAE;IACrBL,eAAe,EAAE,EAAE;IACnBS,GAAG,EAAE;EACT,CAAC;EACDvE,UAAU,EAAE;IACR+D,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EAChB;AACJ,CAAC,CAAC;AAEF,eAAe7C,eAAe","ignoreList":[]}
@@ -1091,6 +1091,29 @@ export const OxyProvider = ({
1091
1091
  }, priorSessionReadError);
1092
1092
  }
1093
1093
  }
1094
+
1095
+ // LAST-ACTIVE-ACCOUNT priority (web multi-account). When the user has an
1096
+ // explicit persisted active slot (`oxy_active_authuser`, written on every
1097
+ // device sign-in / account SWITCH / cookie restore), the multi-account
1098
+ // refresh-cookie restore is the ONLY cold-boot step that honors WHICH slot
1099
+ // was last active — `restoreViaRefreshCookie` selects it via
1100
+ // `selectActiveRefreshAccount(accounts, readActiveAuthuser())`. The
1101
+ // `fedcm-silent` and per-apex `silent-iframe` steps only ever recover the
1102
+ // PRIMARY central IdP session, so if either ran first they would clobber a
1103
+ // switched (managed/org) account back to the primary on reload — the exact
1104
+ // "switch is lost on reload" regression. So when a slot selection exists we
1105
+ // run cookie-restore BEFORE those probes (and disable the later duplicate).
1106
+ //
1107
+ // Read ONCE here (synchronously usable by the step `enabled` gates below).
1108
+ // It is non-null ONLY on first-party `*.oxy.so` web apps that persist the
1109
+ // slot — a cross-apex RP never writes it (its restore funnels through
1110
+ // `handleWebSSOSession`, which does not touch the authuser), and native has
1111
+ // no localStorage, so both keep their existing order untouched. The
1112
+ // earlier `stored-session` step still runs first (FIX-A latency), and when
1113
+ // a slot exists but its cookies have all lapsed, cookie-restore simply
1114
+ // returns no accounts and the chain falls through to the cross-domain
1115
+ // fallbacks exactly as before.
1116
+ const prioritizeMultiAccount = isWebBrowser() && readActiveAuthuser() !== null;
1094
1117
  try {
1095
1118
  const outcome = await runColdBoot({
1096
1119
  steps: [{
@@ -1195,6 +1218,32 @@ export const OxyProvider = ({
1195
1218
  session: true
1196
1219
  };
1197
1220
  }
1221
+ }, {
1222
+ // 2.75) LAST-ACTIVE multi-account restore (WEB, prioritized). Runs
1223
+ // ONLY when an explicit persisted slot selection exists
1224
+ // (`prioritizeMultiAccount`) — i.e. the user previously signed in or
1225
+ // SWITCHED accounts on this first-party app. It runs BEFORE the
1226
+ // `fedcm-silent` / `silent-iframe` probes (which only ever recover the
1227
+ // PRIMARY central session) so a switched managed/org account survives
1228
+ // reload instead of being clobbered back to the primary. The restore
1229
+ // itself is the SAME `restoreViaRefreshCookie` as the terminal-tier
1230
+ // step below: it rotates every device-local `oxy_rt_<authuser>` cookie
1231
+ // and picks the persisted slot via `selectActiveRefreshAccount`,
1232
+ // committing it (token + state + durable persistence + `markAuthResolved`).
1233
+ // When no slot is persisted this is disabled and the original order is
1234
+ // unchanged; when the slot's cookies have lapsed it returns no accounts
1235
+ // and the chain falls through to the cross-domain fallbacks below.
1236
+ id: 'cookie-restore-active',
1237
+ enabled: () => prioritizeMultiAccount,
1238
+ run: async () => {
1239
+ const restored = await restoreViaRefreshCookie();
1240
+ return restored ? {
1241
+ kind: 'session',
1242
+ session: true
1243
+ } : {
1244
+ kind: 'skip'
1245
+ };
1246
+ }
1198
1247
  }, {
1199
1248
  // 3) FedCM silent reauthn (Chrome) against the CENTRAL IdP
1200
1249
  // (auth.oxy.so). `silentSignInWithFedCM` plants the access token
@@ -1278,8 +1327,15 @@ export const OxyProvider = ({
1278
1327
  // is correct; cross-domain restore is handled by the SSO bounce.
1279
1328
  // FIX-D: `restoreViaRefreshCookie` bounds the request with
1280
1329
  // `COOKIE_RESTORE_TIMEOUT` so a cross-domain stall cannot hang here.
1330
+ //
1331
+ // Disabled when `prioritizeMultiAccount` already ran the
1332
+ // `cookie-restore-active` step above (an explicit persisted slot) — that
1333
+ // earlier step is the identical restore, so this terminal-tier copy
1334
+ // would be a redundant second `refreshAllSessions`. It still runs in the
1335
+ // common no-persisted-slot case (e.g. first visit to a first-party app
1336
+ // whose central refresh cookies already exist).
1281
1337
  id: 'cookie-restore',
1282
- enabled: () => isWebBrowser(),
1338
+ enabled: () => isWebBrowser() && !prioritizeMultiAccount,
1283
1339
  run: async () => {
1284
1340
  const restored = await restoreViaRefreshCookie();
1285
1341
  return restored ? {
@@ -1760,42 +1816,8 @@ export const OxyProvider = ({
1760
1816
  });
1761
1817
 
1762
1818
  // --- Account graph state ---
1763
- const [actingAs, setActingAsState] = useState(null);
1764
1819
  const [accounts, setAccounts] = useState([]);
1765
1820
 
1766
- // Latest `actingAs`, mirrored into a ref so `refreshAccounts` can reconcile a
1767
- // stale switch without taking `actingAs` as a dependency (which would re-run
1768
- // the account load on every switch). See the reconciliation block below.
1769
- const actingAsRef = useRef(actingAs);
1770
- actingAsRef.current = actingAs;
1771
- // `setActingAs` is declared after `refreshAccounts`; route the reconciliation
1772
- // clear through a ref so the load callback can call the latest implementation.
1773
- const setActingAsRef = useRef(null);
1774
-
1775
- // Restore actingAs from storage on startup
1776
- useEffect(() => {
1777
- if (!storage || !initialized) return;
1778
- let mounted = true;
1779
- (async () => {
1780
- try {
1781
- const stored = await storage.getItem(`${storageKeyPrefix}_acting_as`);
1782
- if (mounted && stored) {
1783
- setActingAsState(stored);
1784
- oxyServices.setActingAs(stored);
1785
- }
1786
- } catch (err) {
1787
- if (__DEV__) {
1788
- loggerUtil.debug('Failed to restore actingAs from storage', {
1789
- component: 'OxyContext'
1790
- }, err);
1791
- }
1792
- }
1793
- })();
1794
- return () => {
1795
- mounted = false;
1796
- };
1797
- }, [storage, initialized, storageKeyPrefix, oxyServices]);
1798
-
1799
1821
  // Load the unified account graph when authenticated
1800
1822
  const refreshAccounts = useCallback(async () => {
1801
1823
  if (!isAuthenticated || !tokenReady || !oxyServices.getAccessToken()) {
@@ -1805,15 +1827,6 @@ export const OxyProvider = ({
1805
1827
  try {
1806
1828
  const list = await oxyServices.listAccounts();
1807
1829
  setAccounts(list);
1808
- // Reconcile a stale switch: if the active account was switched INTO an id
1809
- // that is no longer accessible (account removed/archived, or it belonged
1810
- // to a now-inactive sign-in), drop back to the personal account so the
1811
- // app never keeps sending a dead `X-Acting-As` header. `list` is the
1812
- // authoritative accessible set on a successful fetch.
1813
- const current = actingAsRef.current;
1814
- if (current && !list.some(node => node.accountId === current)) {
1815
- setActingAsRef.current?.(null);
1816
- }
1817
1830
  } catch (err) {
1818
1831
  if (isUnauthorizedStatus(err)) {
1819
1832
  setAccounts([]);
@@ -1832,48 +1845,72 @@ export const OxyProvider = ({
1832
1845
  refreshAccounts();
1833
1846
  }
1834
1847
  }, [isAuthenticated, initialized, tokenReady, refreshAccounts]);
1835
- const setActingAs = useCallback(accountId => {
1836
- oxyServices.setActingAs(accountId);
1837
- setActingAsState(accountId);
1838
- // Switching the acting-as identity changes every server response, but React
1839
- // Query keys are not namespaced by the acting-as target, so the cache would
1840
- // otherwise keep serving the previous account's data. Invalidate everything
1841
- // so each query refetches under the new identity (the next request carries
1842
- // the updated `X-Acting-As` header). `invalidateQueries` (not `clear`) keeps
1843
- // the account list/switcher populated mid-switch instead of blanking out.
1844
- queryClient.invalidateQueries();
1845
- // Persist to storage
1846
- if (storage) {
1847
- if (accountId) {
1848
- storage.setItem(`${storageKeyPrefix}_acting_as`, accountId).catch(persistError => {
1849
- loggerUtil.debug('Failed to persist acting-as account', {
1850
- component: 'OxyContext'
1851
- }, persistError);
1852
- });
1853
- } else {
1854
- storage.removeItem(`${storageKeyPrefix}_acting_as`).catch(persistError => {
1855
- loggerUtil.debug('Failed to clear acting-as account', {
1856
- component: 'OxyContext'
1857
- }, persistError);
1858
- });
1848
+
1849
+ // Switch the active session INTO an account from the unified graph. In the
1850
+ // REAL-SESSION model this is identical to switching device sign-ins: mint a
1851
+ // real session for the target and make the whole app that account. The removed
1852
+ // `X-Acting-As` delegation header is gone `oxyServices.switchToAccount`
1853
+ // plants the minted access token (the refresh token is the server-set httpOnly
1854
+ // `oxy_rt_<authuser>` cookie, so the session joins the device multi-account set
1855
+ // and survives reload / `refresh-all`). We then commit the session into context
1856
+ // state the SAME way sign-in / `switchSession` do, refresh the account graph,
1857
+ // and invalidate every query so all data reloads as the new account.
1858
+ const switchToAccount = useCallback(async accountId => {
1859
+ const result = await oxyServices.switchToAccount(accountId);
1860
+ if (!result?.user || !result?.sessionId) {
1861
+ throw new Error('Account switch did not return a valid session');
1862
+ }
1863
+
1864
+ // `oxyServices.switchToAccount` already planted `result.accessToken` as the
1865
+ // active token; mirror the minted session into the multi-account store and
1866
+ // mark it current, recording the device `authuser` slot so web silent-switch
1867
+ // and the device account chooser can address it.
1868
+ const now = new Date();
1869
+ const clientSession = {
1870
+ sessionId: result.sessionId,
1871
+ deviceId: result.deviceId || '',
1872
+ expiresAt: result.expiresAt || new Date(now.getTime() + DEFAULT_SESSION_VALIDITY_MS).toISOString(),
1873
+ lastActive: now.toISOString(),
1874
+ userId: result.user.id?.toString() ?? '',
1875
+ isCurrent: true,
1876
+ ...(typeof result.authuser === 'number' ? {
1877
+ authuser: result.authuser
1878
+ } : null)
1879
+ };
1880
+ updateSessions([clientSession], {
1881
+ merge: true
1882
+ });
1883
+ setActiveSessionId(result.sessionId);
1884
+ if (isWebBrowser() && typeof result.authuser === 'number') {
1885
+ writeActiveAuthuser(result.authuser);
1886
+ }
1887
+ await persistSessionDurably(result.sessionId);
1888
+
1889
+ // Fetch the canonical User for the new account (the switch result carries
1890
+ // only MinimalUserData); fall back to that minimal shape if the profile
1891
+ // fetch fails so the app still reflects the switched identity.
1892
+ let fullUser;
1893
+ try {
1894
+ fullUser = await oxyServices.getCurrentUser();
1895
+ } catch (profileError) {
1896
+ if (__DEV__) {
1897
+ loggerUtil.debug('Failed to fetch full user after account switch; using switch result user', {
1898
+ component: 'OxyContext',
1899
+ method: 'switchToAccount'
1900
+ }, profileError);
1859
1901
  }
1902
+ fullUser = result.user;
1860
1903
  }
1861
- }, [oxyServices, storage, storageKeyPrefix, queryClient]);
1862
- setActingAsRef.current = setActingAs;
1863
-
1864
- // The account switched into, resolved from the loaded graph.
1865
- const actingAsAccount = useMemo(() => {
1866
- if (!actingAs) return null;
1867
- return accounts.find(node => node.accountId === actingAs) ?? null;
1868
- }, [actingAs, accounts]);
1869
-
1870
- // The effective ACTIVE account presented across the app: the switched-into
1871
- // account's user when a switch is set and resolved, otherwise the signed-in
1872
- // user's own personal account. Derived (no effect) so identity surfaces always
1873
- // render the current account without separate syncing. Falls back to `user`
1874
- // while a just-set switch has not yet resolved in `accounts`, so the header
1875
- // never flashes empty mid-switch.
1876
- const activeAccount = useMemo(() => actingAs && actingAsAccount ? actingAsAccount.account : user, [actingAs, actingAsAccount, user]);
1904
+ loginSuccess(fullUser);
1905
+ onAuthStateChange?.(fullUser);
1906
+
1907
+ // Reload the switchable account graph (the new active account's relationships
1908
+ // differ) and invalidate every query so all data refetches as the new
1909
+ // account the deviceAccounts probe re-enumerates the multi-account set so
1910
+ // the switched account now appears as a device session.
1911
+ await refreshAccounts();
1912
+ queryClient.invalidateQueries();
1913
+ }, [oxyServices, updateSessions, setActiveSessionId, persistSessionDurably, loginSuccess, onAuthStateChange, refreshAccounts, queryClient]);
1877
1914
  const createAccountFn = useCallback(async data => {
1878
1915
  const account = await oxyServices.createAccount(data);
1879
1916
  await refreshAccounts();
@@ -1920,14 +1957,11 @@ export const OxyProvider = ({
1920
1957
  useFollow: useFollowHook,
1921
1958
  showBottomSheet: showBottomSheetForContext,
1922
1959
  openAvatarPicker,
1923
- actingAs,
1924
1960
  accounts,
1925
- actingAsAccount,
1926
- activeAccount,
1927
- setActingAs,
1961
+ switchToAccount,
1928
1962
  refreshAccounts,
1929
1963
  createAccount: createAccountFn
1930
- }), [activeSessionId, signIn, signInWithPassword, handleWebSSOSession, currentLanguage, currentLanguageMetadata, currentLanguageName, currentNativeLanguageName, error, getDeviceSessions, hasAccessToken, canUsePrivateApi, isPrivateApiPending, getPublicKey, hasIdentity, isAuthenticated, isLoading, logout, logoutAll, logoutAllDeviceSessions, oxyServices, storageKeyPrefix, clientId, refreshSessionsWithUser, sessions, setLanguage, storage, switchSessionForContext, tokenReady, hasAccessToken, canUsePrivateApi, isPrivateApiPending, authResolved, updateDeviceName, clearAllAccountData, useFollowHook, user, showBottomSheetForContext, openAvatarPicker, actingAs, accounts, actingAsAccount, activeAccount, setActingAs, refreshAccounts, createAccountFn]);
1964
+ }), [activeSessionId, signIn, signInWithPassword, handleWebSSOSession, currentLanguage, currentLanguageMetadata, currentLanguageName, currentNativeLanguageName, error, getDeviceSessions, hasAccessToken, canUsePrivateApi, isPrivateApiPending, getPublicKey, hasIdentity, isAuthenticated, isLoading, logout, logoutAll, logoutAllDeviceSessions, oxyServices, storageKeyPrefix, clientId, refreshSessionsWithUser, sessions, setLanguage, storage, switchSessionForContext, tokenReady, hasAccessToken, canUsePrivateApi, isPrivateApiPending, authResolved, updateDeviceName, clearAllAccountData, useFollowHook, user, showBottomSheetForContext, openAvatarPicker, accounts, switchToAccount, refreshAccounts, createAccountFn]);
1931
1965
  return /*#__PURE__*/_jsx(OxyContext.Provider, {
1932
1966
  value: contextValue,
1933
1967
  children: ssoCallbackIntercepting ? null : children
@@ -1986,11 +2020,8 @@ const LOADING_STATE = {
1986
2020
  clientId: null,
1987
2021
  oxyServices: LOADING_STATE_OXY_SERVICES,
1988
2022
  openAvatarPicker: () => {},
1989
- actingAs: null,
1990
2023
  accounts: [],
1991
- actingAsAccount: null,
1992
- activeAccount: null,
1993
- setActingAs: () => {},
2024
+ switchToAccount: () => rejectMissingProvider(),
1994
2025
  refreshAccounts: () => rejectMissingProvider(),
1995
2026
  createAccount: () => rejectMissingProvider()
1996
2027
  };