@oxyhq/services 13.3.0 → 14.0.1

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 (245) hide show
  1. package/lib/commonjs/index.js +11 -16
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/ui/components/AccountMenu.js +103 -65
  4. package/lib/commonjs/ui/components/AccountMenu.js.map +1 -1
  5. package/lib/commonjs/ui/components/AccountSwitcher.js +84 -126
  6. package/lib/commonjs/ui/components/AccountSwitcher.js.map +1 -1
  7. package/lib/commonjs/ui/components/ProfileMenu.js +140 -153
  8. package/lib/commonjs/ui/components/ProfileMenu.js.map +1 -1
  9. package/lib/commonjs/ui/components/SignInModal.js +4 -4
  10. package/lib/commonjs/ui/components/SignInModal.js.map +1 -1
  11. package/lib/commonjs/ui/context/OxyContext.js +506 -466
  12. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  13. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +59 -57
  14. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
  15. package/lib/commonjs/ui/context/inSessionTokenRefresh.js +23 -42
  16. package/lib/commonjs/ui/context/inSessionTokenRefresh.js.map +1 -1
  17. package/lib/commonjs/ui/context/silentSessionRestore.js +12 -21
  18. package/lib/commonjs/ui/context/silentSessionRestore.js.map +1 -1
  19. package/lib/commonjs/ui/hooks/useAuth.js +4 -3
  20. package/lib/commonjs/ui/hooks/useAuth.js.map +1 -1
  21. package/lib/commonjs/ui/hooks/useOxyAuthSession.js +12 -7
  22. package/lib/commonjs/ui/hooks/useOxyAuthSession.js.map +1 -1
  23. package/lib/commonjs/ui/hooks/useSessionManagement.js +17 -65
  24. package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
  25. package/lib/commonjs/ui/hooks/useSwitchableAccounts.js +288 -0
  26. package/lib/commonjs/ui/hooks/useSwitchableAccounts.js.map +1 -0
  27. package/lib/commonjs/ui/hooks/useWebSSO.js +12 -191
  28. package/lib/commonjs/ui/hooks/useWebSSO.js.map +1 -1
  29. package/lib/commonjs/ui/screens/OxyAuthScreen.js +2 -2
  30. package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
  31. package/lib/commonjs/ui/session/createSessionClient.js +28 -0
  32. package/lib/commonjs/ui/session/createSessionClient.js.map +1 -0
  33. package/lib/commonjs/ui/session/index.js +52 -0
  34. package/lib/commonjs/ui/session/index.js.map +1 -0
  35. package/lib/commonjs/ui/session/projectSessionState.js +86 -0
  36. package/lib/commonjs/ui/session/projectSessionState.js.map +1 -0
  37. package/lib/commonjs/ui/session/sessionClientHost.js +30 -0
  38. package/lib/commonjs/ui/session/sessionClientHost.js.map +1 -0
  39. package/lib/commonjs/ui/session/tokenTransport.js +77 -0
  40. package/lib/commonjs/ui/session/tokenTransport.js.map +1 -0
  41. package/lib/commonjs/ui/utils/activeAuthuser.js +35 -79
  42. package/lib/commonjs/ui/utils/activeAuthuser.js.map +1 -1
  43. package/lib/commonjs/ui/utils/sessionHelpers.js +1 -51
  44. package/lib/commonjs/ui/utils/sessionHelpers.js.map +1 -1
  45. package/lib/commonjs/utils/deviceFlowSignIn.js +70 -15
  46. package/lib/commonjs/utils/deviceFlowSignIn.js.map +1 -1
  47. package/lib/module/index.js +5 -4
  48. package/lib/module/index.js.map +1 -1
  49. package/lib/module/ui/components/AccountMenu.js +103 -65
  50. package/lib/module/ui/components/AccountMenu.js.map +1 -1
  51. package/lib/module/ui/components/AccountSwitcher.js +85 -127
  52. package/lib/module/ui/components/AccountSwitcher.js.map +1 -1
  53. package/lib/module/ui/components/ProfileMenu.js +143 -156
  54. package/lib/module/ui/components/ProfileMenu.js.map +1 -1
  55. package/lib/module/ui/components/SignInModal.js +4 -4
  56. package/lib/module/ui/components/SignInModal.js.map +1 -1
  57. package/lib/module/ui/context/OxyContext.js +510 -470
  58. package/lib/module/ui/context/OxyContext.js.map +1 -1
  59. package/lib/module/ui/context/hooks/useAuthOperations.js +61 -60
  60. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
  61. package/lib/module/ui/context/inSessionTokenRefresh.js +24 -43
  62. package/lib/module/ui/context/inSessionTokenRefresh.js.map +1 -1
  63. package/lib/module/ui/context/silentSessionRestore.js +12 -20
  64. package/lib/module/ui/context/silentSessionRestore.js.map +1 -1
  65. package/lib/module/ui/hooks/useAuth.js +4 -3
  66. package/lib/module/ui/hooks/useAuth.js.map +1 -1
  67. package/lib/module/ui/hooks/useOxyAuthSession.js +12 -7
  68. package/lib/module/ui/hooks/useOxyAuthSession.js.map +1 -1
  69. package/lib/module/ui/hooks/useSessionManagement.js +18 -66
  70. package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
  71. package/lib/module/ui/hooks/useSwitchableAccounts.js +283 -0
  72. package/lib/module/ui/hooks/useSwitchableAccounts.js.map +1 -0
  73. package/lib/module/ui/hooks/useWebSSO.js +13 -192
  74. package/lib/module/ui/hooks/useWebSSO.js.map +1 -1
  75. package/lib/module/ui/screens/OxyAuthScreen.js +2 -2
  76. package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
  77. package/lib/module/ui/session/createSessionClient.js +25 -0
  78. package/lib/module/ui/session/createSessionClient.js.map +1 -0
  79. package/lib/module/ui/session/index.js +17 -0
  80. package/lib/module/ui/session/index.js.map +1 -0
  81. package/lib/module/ui/session/projectSessionState.js +79 -0
  82. package/lib/module/ui/session/projectSessionState.js.map +1 -0
  83. package/lib/module/ui/session/sessionClientHost.js +26 -0
  84. package/lib/module/ui/session/sessionClientHost.js.map +1 -0
  85. package/lib/module/ui/session/tokenTransport.js +74 -0
  86. package/lib/module/ui/session/tokenTransport.js.map +1 -0
  87. package/lib/module/ui/utils/activeAuthuser.js +34 -76
  88. package/lib/module/ui/utils/activeAuthuser.js.map +1 -1
  89. package/lib/module/ui/utils/sessionHelpers.js +0 -49
  90. package/lib/module/ui/utils/sessionHelpers.js.map +1 -1
  91. package/lib/module/utils/deviceFlowSignIn.js +71 -16
  92. package/lib/module/utils/deviceFlowSignIn.js.map +1 -1
  93. package/lib/typescript/commonjs/index.d.ts +2 -3
  94. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  95. package/lib/typescript/commonjs/ui/components/AccountMenu.d.ts +4 -2
  96. package/lib/typescript/commonjs/ui/components/AccountMenu.d.ts.map +1 -1
  97. package/lib/typescript/commonjs/ui/components/AccountSwitcher.d.ts +7 -8
  98. package/lib/typescript/commonjs/ui/components/AccountSwitcher.d.ts.map +1 -1
  99. package/lib/typescript/commonjs/ui/components/ProfileMenu.d.ts +12 -9
  100. package/lib/typescript/commonjs/ui/components/ProfileMenu.d.ts.map +1 -1
  101. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +16 -13
  102. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  103. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts +27 -3
  104. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  105. package/lib/typescript/commonjs/ui/context/inSessionTokenRefresh.d.ts +22 -17
  106. package/lib/typescript/commonjs/ui/context/inSessionTokenRefresh.d.ts.map +1 -1
  107. package/lib/typescript/commonjs/ui/context/silentSessionRestore.d.ts +12 -18
  108. package/lib/typescript/commonjs/ui/context/silentSessionRestore.d.ts.map +1 -1
  109. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +1 -0
  110. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  111. package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts +1 -1
  112. package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts.map +1 -1
  113. package/lib/typescript/commonjs/ui/hooks/useOxyAuthSession.d.ts +2 -2
  114. package/lib/typescript/commonjs/ui/hooks/useOxyAuthSession.d.ts.map +1 -1
  115. package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts.map +1 -1
  116. package/lib/typescript/commonjs/ui/hooks/useSwitchableAccounts.d.ts +162 -0
  117. package/lib/typescript/commonjs/ui/hooks/useSwitchableAccounts.d.ts.map +1 -0
  118. package/lib/typescript/commonjs/ui/hooks/useWebSSO.d.ts +13 -52
  119. package/lib/typescript/commonjs/ui/hooks/useWebSSO.d.ts.map +1 -1
  120. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts +15 -0
  121. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts.map +1 -0
  122. package/lib/typescript/commonjs/ui/session/index.d.ts +15 -0
  123. package/lib/typescript/commonjs/ui/session/index.d.ts.map +1 -0
  124. package/lib/typescript/commonjs/ui/session/projectSessionState.d.ts +45 -0
  125. package/lib/typescript/commonjs/ui/session/projectSessionState.d.ts.map +1 -0
  126. package/lib/typescript/commonjs/ui/session/sessionClientHost.d.ts +14 -0
  127. package/lib/typescript/commonjs/ui/session/sessionClientHost.d.ts.map +1 -0
  128. package/lib/typescript/commonjs/ui/session/tokenTransport.d.ts +24 -0
  129. package/lib/typescript/commonjs/ui/session/tokenTransport.d.ts.map +1 -0
  130. package/lib/typescript/commonjs/ui/utils/activeAuthuser.d.ts +21 -29
  131. package/lib/typescript/commonjs/ui/utils/activeAuthuser.d.ts.map +1 -1
  132. package/lib/typescript/commonjs/ui/utils/sessionHelpers.d.ts +0 -19
  133. package/lib/typescript/commonjs/ui/utils/sessionHelpers.d.ts.map +1 -1
  134. package/lib/typescript/commonjs/utils/deviceFlowSignIn.d.ts +51 -19
  135. package/lib/typescript/commonjs/utils/deviceFlowSignIn.d.ts.map +1 -1
  136. package/lib/typescript/module/index.d.ts +2 -3
  137. package/lib/typescript/module/index.d.ts.map +1 -1
  138. package/lib/typescript/module/ui/components/AccountMenu.d.ts +4 -2
  139. package/lib/typescript/module/ui/components/AccountMenu.d.ts.map +1 -1
  140. package/lib/typescript/module/ui/components/AccountSwitcher.d.ts +7 -8
  141. package/lib/typescript/module/ui/components/AccountSwitcher.d.ts.map +1 -1
  142. package/lib/typescript/module/ui/components/ProfileMenu.d.ts +12 -9
  143. package/lib/typescript/module/ui/components/ProfileMenu.d.ts.map +1 -1
  144. package/lib/typescript/module/ui/context/OxyContext.d.ts +16 -13
  145. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  146. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts +27 -3
  147. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  148. package/lib/typescript/module/ui/context/inSessionTokenRefresh.d.ts +22 -17
  149. package/lib/typescript/module/ui/context/inSessionTokenRefresh.d.ts.map +1 -1
  150. package/lib/typescript/module/ui/context/silentSessionRestore.d.ts +12 -18
  151. package/lib/typescript/module/ui/context/silentSessionRestore.d.ts.map +1 -1
  152. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +1 -0
  153. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  154. package/lib/typescript/module/ui/hooks/useAuth.d.ts +1 -1
  155. package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
  156. package/lib/typescript/module/ui/hooks/useOxyAuthSession.d.ts +2 -2
  157. package/lib/typescript/module/ui/hooks/useOxyAuthSession.d.ts.map +1 -1
  158. package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts.map +1 -1
  159. package/lib/typescript/module/ui/hooks/useSwitchableAccounts.d.ts +162 -0
  160. package/lib/typescript/module/ui/hooks/useSwitchableAccounts.d.ts.map +1 -0
  161. package/lib/typescript/module/ui/hooks/useWebSSO.d.ts +13 -52
  162. package/lib/typescript/module/ui/hooks/useWebSSO.d.ts.map +1 -1
  163. package/lib/typescript/module/ui/session/createSessionClient.d.ts +15 -0
  164. package/lib/typescript/module/ui/session/createSessionClient.d.ts.map +1 -0
  165. package/lib/typescript/module/ui/session/index.d.ts +15 -0
  166. package/lib/typescript/module/ui/session/index.d.ts.map +1 -0
  167. package/lib/typescript/module/ui/session/projectSessionState.d.ts +45 -0
  168. package/lib/typescript/module/ui/session/projectSessionState.d.ts.map +1 -0
  169. package/lib/typescript/module/ui/session/sessionClientHost.d.ts +14 -0
  170. package/lib/typescript/module/ui/session/sessionClientHost.d.ts.map +1 -0
  171. package/lib/typescript/module/ui/session/tokenTransport.d.ts +24 -0
  172. package/lib/typescript/module/ui/session/tokenTransport.d.ts.map +1 -0
  173. package/lib/typescript/module/ui/utils/activeAuthuser.d.ts +21 -29
  174. package/lib/typescript/module/ui/utils/activeAuthuser.d.ts.map +1 -1
  175. package/lib/typescript/module/ui/utils/sessionHelpers.d.ts +0 -19
  176. package/lib/typescript/module/ui/utils/sessionHelpers.d.ts.map +1 -1
  177. package/lib/typescript/module/utils/deviceFlowSignIn.d.ts +51 -19
  178. package/lib/typescript/module/utils/deviceFlowSignIn.d.ts.map +1 -1
  179. package/package.json +4 -4
  180. package/src/index.ts +9 -8
  181. package/src/ui/components/AccountMenu.tsx +117 -70
  182. package/src/ui/components/AccountSwitcher.tsx +88 -134
  183. package/src/ui/components/ProfileMenu.tsx +158 -162
  184. package/src/ui/components/SignInModal.tsx +5 -5
  185. package/src/ui/context/OxyContext.tsx +560 -475
  186. package/src/ui/context/hooks/useAuthOperations.ts +72 -63
  187. package/src/ui/context/inSessionTokenRefresh.ts +23 -42
  188. package/src/ui/context/silentSessionRestore.ts +12 -26
  189. package/src/ui/hooks/useAuth.ts +4 -3
  190. package/src/ui/hooks/useOxyAuthSession.ts +13 -8
  191. package/src/ui/hooks/useSessionManagement.ts +16 -87
  192. package/src/ui/hooks/useSwitchableAccounts.ts +397 -0
  193. package/src/ui/hooks/useWebSSO.ts +13 -227
  194. package/src/ui/screens/OxyAuthScreen.tsx +2 -2
  195. package/src/ui/session/__tests__/createSessionClient.test.ts +41 -0
  196. package/src/ui/session/__tests__/projectSessionState.test.ts +114 -0
  197. package/src/ui/session/__tests__/sessionClientHost.test.ts +43 -0
  198. package/src/ui/session/__tests__/tokenTransport.test.ts +142 -0
  199. package/src/ui/session/createSessionClient.ts +21 -0
  200. package/src/ui/session/index.ts +19 -0
  201. package/src/ui/session/projectSessionState.ts +85 -0
  202. package/src/ui/session/sessionClientHost.ts +27 -0
  203. package/src/ui/session/tokenTransport.ts +76 -0
  204. package/src/ui/utils/activeAuthuser.ts +34 -76
  205. package/src/ui/utils/sessionHelpers.ts +0 -66
  206. package/src/utils/__tests__/deviceFlowSignIn.test.ts +243 -34
  207. package/src/utils/deviceFlowSignIn.ts +98 -21
  208. package/lib/commonjs/ui/components/accountMenuRows.js +0 -33
  209. package/lib/commonjs/ui/components/accountMenuRows.js.map +0 -1
  210. package/lib/commonjs/ui/hooks/useDeviceAccounts.js +0 -280
  211. package/lib/commonjs/ui/hooks/useDeviceAccounts.js.map +0 -1
  212. package/lib/commonjs/ui/hooks/useSessionSocket.js +0 -203
  213. package/lib/commonjs/ui/hooks/useSessionSocket.js.map +0 -1
  214. package/lib/commonjs/utils/silentGuardKey.js +0 -54
  215. package/lib/commonjs/utils/silentGuardKey.js.map +0 -1
  216. package/lib/module/ui/components/accountMenuRows.js +0 -29
  217. package/lib/module/ui/components/accountMenuRows.js.map +0 -1
  218. package/lib/module/ui/hooks/useDeviceAccounts.js +0 -276
  219. package/lib/module/ui/hooks/useDeviceAccounts.js.map +0 -1
  220. package/lib/module/ui/hooks/useSessionSocket.js +0 -199
  221. package/lib/module/ui/hooks/useSessionSocket.js.map +0 -1
  222. package/lib/module/utils/silentGuardKey.js +0 -49
  223. package/lib/module/utils/silentGuardKey.js.map +0 -1
  224. package/lib/typescript/commonjs/ui/components/accountMenuRows.d.ts +0 -34
  225. package/lib/typescript/commonjs/ui/components/accountMenuRows.d.ts.map +0 -1
  226. package/lib/typescript/commonjs/ui/hooks/useDeviceAccounts.d.ts +0 -133
  227. package/lib/typescript/commonjs/ui/hooks/useDeviceAccounts.d.ts.map +0 -1
  228. package/lib/typescript/commonjs/ui/hooks/useSessionSocket.d.ts +0 -14
  229. package/lib/typescript/commonjs/ui/hooks/useSessionSocket.d.ts.map +0 -1
  230. package/lib/typescript/commonjs/utils/silentGuardKey.d.ts +0 -31
  231. package/lib/typescript/commonjs/utils/silentGuardKey.d.ts.map +0 -1
  232. package/lib/typescript/module/ui/components/accountMenuRows.d.ts +0 -34
  233. package/lib/typescript/module/ui/components/accountMenuRows.d.ts.map +0 -1
  234. package/lib/typescript/module/ui/hooks/useDeviceAccounts.d.ts +0 -133
  235. package/lib/typescript/module/ui/hooks/useDeviceAccounts.d.ts.map +0 -1
  236. package/lib/typescript/module/ui/hooks/useSessionSocket.d.ts +0 -14
  237. package/lib/typescript/module/ui/hooks/useSessionSocket.d.ts.map +0 -1
  238. package/lib/typescript/module/utils/silentGuardKey.d.ts +0 -31
  239. package/lib/typescript/module/utils/silentGuardKey.d.ts.map +0 -1
  240. package/src/ui/components/accountMenuRows.ts +0 -48
  241. package/src/ui/hooks/useDeviceAccounts.ts +0 -344
  242. package/src/ui/hooks/useSessionSocket.ts +0 -233
  243. package/src/ui/utils/__tests__/activeAuthuser.test.ts +0 -75
  244. package/src/utils/__tests__/silentGuardKey.test.ts +0 -82
  245. package/src/utils/silentGuardKey.ts +0 -46
@@ -15,7 +15,7 @@ var _divider = require("@oxyhq/bloom/divider");
15
15
  var _core = require("@oxyhq/core");
16
16
  var _OxyContext = require("../context/OxyContext.js");
17
17
  var _useI18n = require("../hooks/useI18n.js");
18
- var _useDeviceAccounts = require("../hooks/useDeviceAccounts.js");
18
+ var _useSwitchableAccounts = require("../hooks/useSwitchableAccounts.js");
19
19
  var _jsxRuntime = require("react/jsx-runtime");
20
20
  const isWeb = _reactNative.Platform.OS === 'web';
21
21
 
@@ -31,31 +31,32 @@ const MENU_WIDTH = 300;
31
31
  * Native ignores the anchor and docks the panel to the bottom as a sheet.
32
32
  */
33
33
 
34
- /** Everything `ProfileMenuContent` needs, minus the `open` flag (always open). */
35
-
36
34
  /**
37
- * Clean device-account switcher, modeled on the inbox `AccountMenu` and styled
38
- * with react-native `StyleSheet` + the Bloom theme (via `useTheme`) so it
39
- * renders in EVERY consumer regardless of NativeWind. Lists every account
40
- * signed in on this device (from {@link useDeviceAccounts}); tapping a row
41
- * switches, and each inactive row carries a sign-out icon. Below the list:
42
- * Add account, Manage account, optional View profile, and Sign out of all.
35
+ * Clean account switcher, written with react-native `StyleSheet` + Bloom
36
+ * theme colors (the package convention no NativeWind, which is only an
37
+ * optional peer and absent in the primary `accounts` consumer). Lists EVERY
38
+ * switchable account from {@link useSwitchableAccounts}
39
+ * device sign-ins AND linked graph accounts (owned orgs + shared-with-you)
40
+ * and routes EVERY switch through the context's single
41
+ * `switchToAccount(accountId)` dispatcher (there is no separate device-only
42
+ * path). Each on-device inactive row carries a per-account sign-out icon;
43
+ * graph-only rows carry a role badge and indent under their parent. Below the
44
+ * list: Add account, Manage account, optional View profile, and Sign out of all.
43
45
  *
44
- * Heavy hooks (device accounts / refresh-all, Bloom dialog/toast controls, the
45
- * escape-key listener) live here so they run ONLY while the menu is open — the
46
- * outer {@link ProfileMenu} mounts this only when `open`. This component may
47
- * therefore assume it is always open.
46
+ * Renders as an upward-opening popover anchored to the trigger on web, and a
47
+ * bottom-sheet style modal on native.
48
48
  */
49
- const ProfileMenuContent = ({
49
+ const ProfileMenu = ({
50
+ open,
50
51
  onClose,
52
+ anchor,
51
53
  onNavigateManage,
52
54
  onAddAccount,
53
55
  onNavigateProfile,
54
56
  onBeforeSessionChange
55
57
  }) => {
56
58
  const {
57
- activeSessionId,
58
- switchSession,
59
+ switchToAccount,
59
60
  logoutAll,
60
61
  removeSession
61
62
  } = (0, _OxyContext.useOxy)();
@@ -67,23 +68,29 @@ const ProfileMenuContent = ({
67
68
  } = (0, _theme.useTheme)();
68
69
  const {
69
70
  accounts
70
- } = (0, _useDeviceAccounts.useDeviceAccounts)();
71
- const [busySessionId, setBusySessionId] = (0, _react.useState)(null);
71
+ } = (0, _useSwitchableAccounts.useSwitchableAccounts)();
72
+ const [busyAccountId, setBusyAccountId] = (0, _react.useState)(null);
72
73
  const [removingSessionId, setRemovingSessionId] = (0, _react.useState)(null);
73
74
  const [signingOutAll, setSigningOutAll] = (0, _react.useState)(false);
74
75
  const signOutAllDialog = (0, _bloom.useDialogControl)();
75
- const isSwitching = busySessionId !== null;
76
+ const isSwitching = busyAccountId !== null;
76
77
  const actionDisabled = isSwitching || removingSessionId !== null || signingOutAll;
77
78
 
78
- // Switch to a non-active account through the SDK's canonical switch path.
79
- const handleSwitch = (0, _react.useCallback)(async sessionId => {
80
- if (sessionId === activeSessionId || busySessionId) {
79
+ // Account ids currently in the list used to decide whether a graph-only
80
+ // row is a CHILD (its parent is also shown) so it can be indented.
81
+ const listedAccountIds = (0, _react.useMemo)(() => new Set(accounts.map(account => account.accountId)), [accounts]);
82
+
83
+ // The ONE uniform switch path: every row (device or linked) routes through
84
+ // `switchToAccount(accountId)`. It reuses the device session when the account
85
+ // is already signed in here, and mints one only on first entry.
86
+ const handleSwitch = (0, _react.useCallback)(async account => {
87
+ if (account.isCurrent || busyAccountId) {
81
88
  return;
82
89
  }
83
- setBusySessionId(sessionId);
90
+ setBusyAccountId(account.accountId);
84
91
  try {
85
92
  await onBeforeSessionChange?.();
86
- await switchSession(sessionId);
93
+ await switchToAccount(account.accountId);
87
94
  _bloom.toast.success(t('accountSwitcher.toasts.switchSuccess') || 'Switched account');
88
95
  onClose();
89
96
  } catch (error) {
@@ -94,14 +101,14 @@ const ProfileMenuContent = ({
94
101
  }
95
102
  _bloom.toast.error(t('accountSwitcher.toasts.switchFailed') || 'Failed to switch account');
96
103
  } finally {
97
- setBusySessionId(null);
104
+ setBusyAccountId(null);
98
105
  }
99
- }, [activeSessionId, busySessionId, switchSession, t, onClose, onBeforeSessionChange]);
106
+ }, [busyAccountId, switchToAccount, t, onClose, onBeforeSessionChange]);
100
107
 
101
108
  // Sign out a specific inactive account without switching/clearing the active
102
109
  // one. The menu stays open so the user can keep managing accounts.
103
110
  const handleRemove = (0, _react.useCallback)(async sessionId => {
104
- if (sessionId === activeSessionId || removingSessionId) {
111
+ if (removingSessionId) {
105
112
  return;
106
113
  }
107
114
  setRemovingSessionId(sessionId);
@@ -116,7 +123,7 @@ const ProfileMenuContent = ({
116
123
  } finally {
117
124
  setRemovingSessionId(null);
118
125
  }
119
- }, [activeSessionId, removingSessionId, removeSession, t]);
126
+ }, [removingSessionId, removeSession, t]);
120
127
  const performSignOutAll = (0, _react.useCallback)(async () => {
121
128
  if (signingOutAll) {
122
129
  return;
@@ -137,10 +144,9 @@ const ProfileMenuContent = ({
137
144
  }
138
145
  }, [signingOutAll, logoutAll, t, onClose, onBeforeSessionChange]);
139
146
 
140
- // Escape-to-close (web only). This component only mounts while open, so the
141
- // listener is attached exactly for the menu's lifetime.
147
+ // Escape-to-close (web only).
142
148
  (0, _react.useEffect)(() => {
143
- if (!isWeb || typeof document === 'undefined') {
149
+ if (!open || !isWeb || typeof document === 'undefined') {
144
150
  return undefined;
145
151
  }
146
152
  const onKey = event => {
@@ -151,25 +157,58 @@ const ProfileMenuContent = ({
151
157
  };
152
158
  document.addEventListener('keydown', onKey, true);
153
159
  return () => document.removeEventListener('keydown', onKey, true);
154
- }, [onClose]);
155
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
156
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.ScrollView, {
160
+ }, [open, onClose]);
161
+ if (!open) {
162
+ return null;
163
+ }
164
+
165
+ // Web: anchor the panel to the measured trigger. When the anchor pins `top`
166
+ // the panel opens DOWNWARD from the trigger; otherwise it pins `bottom` and
167
+ // opens UPWARD (the default footer behavior). With no anchor captured, fall
168
+ // back to a bottom-left placement. Native ignores this (the panel docks to
169
+ // the bottom via the overlay's flex-end).
170
+ const panelAnchorStyle = isWeb ? {
171
+ position: 'absolute',
172
+ width: MENU_WIDTH,
173
+ left: anchor?.left ?? 8,
174
+ ...(typeof anchor?.top === 'number' ? {
175
+ top: anchor.top
176
+ } : {
177
+ bottom: anchor?.bottom ?? 8
178
+ })
179
+ } : undefined;
180
+ const content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable
181
+ // Swallow taps inside the panel so they never reach the overlay's
182
+ // outside-tap-to-close handler.
183
+ , {
184
+ onPress: () => undefined,
185
+ style: [isWeb ? styles.panelWeb : styles.panelNative, {
186
+ backgroundColor: colors.background
187
+ }, isWeb ? {
188
+ borderColor: colors.border
189
+ } : null, panelAnchorStyle, styles.panelBounds, styles.shadow],
190
+ accessibilityRole: "menu",
191
+ accessibilityLabel: t('accountMenu.label') || 'Account menu',
192
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.ScrollView, {
157
193
  style: styles.scroll,
158
194
  contentContainerStyle: styles.scrollContent,
159
195
  showsVerticalScrollIndicator: false,
160
196
  children: [accounts.map(account => {
161
197
  const isActive = account.isCurrent;
162
- const isBusy = busySessionId === account.sessionId;
163
- const isRemoving = removingSessionId === account.sessionId;
198
+ const isBusy = busyAccountId === account.accountId;
199
+ const sessionId = account.sessionId;
200
+ const isRemoving = sessionId ? removingSessionId === sessionId : false;
201
+ const isChild = Boolean(account.parentAccountId && listedAccountIds.has(account.parentAccountId));
202
+ const role = account.callerMembership?.role;
164
203
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
165
204
  accessibilityRole: "menuitem",
166
205
  accessibilityLabel: account.displayName,
167
206
  accessibilityState: {
168
207
  selected: isActive
169
208
  },
170
- onPress: () => handleSwitch(account.sessionId),
209
+ onPress: () => handleSwitch(account),
171
210
  disabled: isActive || isBusy || isSwitching,
172
- style: [styles.accountRow, isActive && {
211
+ style: [styles.accountRow, isChild && styles.childRow, isActive && {
173
212
  backgroundColor: colors.backgroundSecondary
174
213
  }, isSwitching && !isActive && styles.rowDimmed],
175
214
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.Avatar, {
@@ -177,15 +216,28 @@ const ProfileMenuContent = ({
177
216
  uri: account.avatarUrl,
178
217
  variant: "thumb",
179
218
  name: account.displayName,
180
- size: isActive ? 40 : 32
219
+ size: isActive ? 40 : isChild ? 28 : 32
181
220
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
182
221
  style: styles.accountInfo,
183
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
184
- style: [isActive ? styles.accountNameActive : styles.accountName, {
185
- color: colors.text
186
- }],
187
- numberOfLines: 1,
188
- children: account.displayName
222
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
223
+ style: styles.nameRow,
224
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
225
+ style: [styles.accountName, {
226
+ color: colors.text
227
+ }, isActive && styles.accountNameActive],
228
+ numberOfLines: 1,
229
+ children: account.displayName
230
+ }), role ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
231
+ style: [styles.roleBadge, {
232
+ backgroundColor: colors.card
233
+ }],
234
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
235
+ style: [styles.roleBadgeText, {
236
+ color: colors.textSecondary
237
+ }],
238
+ children: t(`accounts.roles.${role}.label`) || role
239
+ })
240
+ }) : null]
189
241
  }), account.email ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
190
242
  style: [styles.accountEmail, {
191
243
  color: colors.textSecondary
@@ -203,12 +255,12 @@ const ProfileMenuContent = ({
203
255
  }) : isRemoving ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
204
256
  color: colors.textSecondary,
205
257
  size: "small"
206
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
258
+ }) : sessionId ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
207
259
  accessibilityRole: "button",
208
260
  accessibilityLabel: t('accountMenu.signOutAccount', {
209
261
  name: account.displayName
210
262
  }) || `Sign out ${account.displayName}`,
211
- onPress: () => handleRemove(account.sessionId),
263
+ onPress: () => handleRemove(sessionId),
212
264
  disabled: actionDisabled,
213
265
  hitSlop: {
214
266
  top: 8,
@@ -222,8 +274,8 @@ const ProfileMenuContent = ({
222
274
  size: 18,
223
275
  color: colors.textSecondary
224
276
  })
225
- })]
226
- }, `account-${account.sessionId}`);
277
+ }) : null]
278
+ }, `account-${account.accountId}`);
227
279
  }), isSwitching ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
228
280
  style: styles.switchingRow,
229
281
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
@@ -276,7 +328,7 @@ const ProfileMenuContent = ({
276
328
  accessibilityLabel: t('accountMenu.signOutAll') || 'Sign out of all accounts',
277
329
  onPress: () => signOutAllDialog.open(),
278
330
  disabled: actionDisabled,
279
- style: [styles.signOutAllRow, actionDisabled && styles.rowDimmed],
331
+ style: [styles.actionRow, actionDisabled && styles.rowDimmed],
280
332
  children: [signingOutAll ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
281
333
  color: colors.error,
282
334
  size: "small"
@@ -291,6 +343,19 @@ const ProfileMenuContent = ({
291
343
  children: t('accountMenu.signOutAll') || 'Sign out of all accounts'
292
344
  })]
293
345
  })]
346
+ })
347
+ });
348
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Modal, {
349
+ visible: open,
350
+ transparent: true,
351
+ animationType: isWeb ? 'fade' : 'slide',
352
+ onRequestClose: onClose,
353
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
354
+ accessibilityRole: "button",
355
+ accessibilityLabel: t('common.actions.close') || 'Close',
356
+ onPress: onClose,
357
+ style: isWeb ? styles.webOverlay : styles.nativeOverlay,
358
+ children: content
294
359
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_bloom.Dialog, {
295
360
  control: signOutAllDialog,
296
361
  title: t('accountMenu.signOutAll') || 'Sign out of all accounts',
@@ -307,84 +372,6 @@ const ProfileMenuContent = ({
307
372
  });
308
373
  };
309
374
 
310
- /**
311
- * Public wrapper. The RN `Modal` shell is ALWAYS mounted (only `visible` toggles)
312
- * so the react-native-web portal is created up front — mounting a web `Modal`
313
- * already-`visible` is fragile (the first interaction can be eaten / the button
314
- * "does nothing"). Only the heavy {@link ProfileMenuContent} mounts when open,
315
- * keeping the account hooks off the render path when the menu is closed. On
316
- * native that closed render is `<Modal visible={false}>{null}</Modal>` → no heavy
317
- * hooks run (preserving the native-drawer crash fix).
318
- *
319
- * This outer component calls ONLY light, always-safe hooks (`useTheme`,
320
- * `useI18n` for the overlay a11y label) and computes the panel/overlay layout.
321
- */
322
- const ProfileMenu = ({
323
- open,
324
- onClose,
325
- anchor,
326
- onNavigateManage,
327
- onAddAccount,
328
- onNavigateProfile,
329
- onBeforeSessionChange
330
- }) => {
331
- const {
332
- t
333
- } = (0, _useI18n.useI18n)();
334
- const {
335
- colors
336
- } = (0, _theme.useTheme)();
337
-
338
- // Web: anchor the panel to the measured trigger. When the anchor pins `top`
339
- // the panel opens DOWNWARD from the trigger; otherwise it pins `bottom` and
340
- // opens UPWARD (the default footer behavior). With no anchor captured, fall
341
- // back to a bottom-left placement. Native ignores this (the panel docks to
342
- // the bottom via the overlay's flex-end).
343
- const panelAnchorStyle = isWeb ? {
344
- position: 'absolute',
345
- width: MENU_WIDTH,
346
- left: anchor?.left ?? 8,
347
- ...(typeof anchor?.top === 'number' ? {
348
- top: anchor.top
349
- } : {
350
- bottom: anchor?.bottom ?? 8
351
- })
352
- } : undefined;
353
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Modal, {
354
- visible: open,
355
- transparent: true,
356
- animationType: isWeb ? 'fade' : 'slide',
357
- onRequestClose: onClose,
358
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
359
- accessibilityRole: "button",
360
- accessibilityLabel: t('common.actions.close') || 'Close',
361
- onPress: onClose,
362
- style: isWeb ? styles.webOverlay : styles.nativeOverlay,
363
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable
364
- // Swallow taps inside the panel so they never reach the overlay's
365
- // outside-tap-to-close handler.
366
- , {
367
- onPress: () => undefined,
368
- style: [isWeb ? styles.panelWeb : styles.panelNative, {
369
- backgroundColor: colors.background
370
- }, isWeb && {
371
- borderColor: colors.border
372
- }, panelAnchorStyle, styles.panelBounds, styles.shadow],
373
- accessibilityRole: "menu",
374
- accessibilityLabel: t('accountMenu.label') || 'Account menu',
375
- children: open ? /*#__PURE__*/(0, _jsxRuntime.jsx)(ProfileMenuContent, {
376
- onClose: onClose,
377
- anchor: anchor,
378
- onNavigateManage: onNavigateManage,
379
- onAddAccount: onAddAccount,
380
- onNavigateProfile: onNavigateProfile,
381
- onBeforeSessionChange: onBeforeSessionChange
382
- }) : null
383
- })
384
- })
385
- });
386
- };
387
-
388
375
  /** Bottom-section action row (Add account / Manage / View profile). */
389
376
  const ActionRow = ({
390
377
  icon,
@@ -411,7 +398,8 @@ const ActionRow = ({
411
398
  })]
412
399
  });
413
400
  const styles = _reactNative.StyleSheet.create({
414
- // Overlay (`flex-1 relative` web / `flex-1 justify-end` + scrim native).
401
+ // Overlay: web is a positioning context for the anchored panel; native dims
402
+ // the backdrop and docks the sheet to the bottom.
415
403
  webOverlay: {
416
404
  flex: 1,
417
405
  position: 'relative'
@@ -421,24 +409,23 @@ const styles = _reactNative.StyleSheet.create({
421
409
  justifyContent: 'flex-end',
422
410
  backgroundColor: 'rgba(0,0,0,0.32)'
423
411
  },
424
- // Panel shell — web popover (`overflow-hidden rounded-2xl border`).
412
+ // Panel shell — web popover / native bottom sheet.
425
413
  panelWeb: {
426
414
  overflow: 'hidden',
427
415
  borderRadius: 16,
428
416
  borderWidth: 1
429
417
  },
430
- // Panel shell — native bottom sheet (`overflow-hidden rounded-t-3xl pb-3`).
431
418
  panelNative: {
432
419
  overflow: 'hidden',
433
420
  borderTopLeftRadius: 24,
434
421
  borderTopRightRadius: 24,
435
422
  paddingBottom: 12
436
423
  },
437
- // Shared `maxHeight: '85%'` cap applied to both panel variants.
424
+ // Shared height cap applied to both panel variants.
438
425
  panelBounds: {
439
426
  maxHeight: '85%'
440
427
  },
441
- // The panel's drop shadow dynamic elevation with no class equivalent.
428
+ // The panel's drop shadow (dynamic elevation).
442
429
  shadow: {
443
430
  shadowColor: '#000',
444
431
  shadowOpacity: 0.18,
@@ -449,14 +436,12 @@ const styles = _reactNative.StyleSheet.create({
449
436
  },
450
437
  elevation: 12
451
438
  },
452
- // Scroll region (`grow-0` + `py-1` content).
453
439
  scroll: {
454
440
  flexGrow: 0
455
441
  },
456
442
  scrollContent: {
457
443
  paddingVertical: 4
458
444
  },
459
- // Account row (`flex-row items-center gap-3 px-4 py-2.5`).
460
445
  accountRow: {
461
446
  flexDirection: 'row',
462
447
  alignItems: 'center',
@@ -464,28 +449,41 @@ const styles = _reactNative.StyleSheet.create({
464
449
  paddingHorizontal: 16,
465
450
  paddingVertical: 10
466
451
  },
467
- // `opacity-40` dim applied to disabled / non-active-while-switching rows.
452
+ childRow: {
453
+ paddingLeft: 40
454
+ },
468
455
  rowDimmed: {
469
456
  opacity: 0.4
470
457
  },
471
- // Identity block (`min-w-0 flex-1`).
472
458
  accountInfo: {
473
459
  flex: 1,
474
460
  minWidth: 0
475
461
  },
476
- // Inactive account name (`font-medium`).
462
+ nameRow: {
463
+ flexDirection: 'row',
464
+ alignItems: 'center',
465
+ gap: 6
466
+ },
477
467
  accountName: {
478
- fontWeight: '500'
468
+ fontWeight: '500',
469
+ flexShrink: 1
479
470
  },
480
- // Active account name (`font-semibold`).
481
471
  accountNameActive: {
482
472
  fontWeight: '600'
483
473
  },
484
- // Secondary email line (`text-xs`).
485
474
  accountEmail: {
486
475
  fontSize: 12
487
476
  },
488
- // Per-row sign-out button (`h-7 w-7 items-center justify-center rounded-full opacity-60`).
477
+ roleBadge: {
478
+ paddingHorizontal: 6,
479
+ paddingVertical: 1,
480
+ borderRadius: 8
481
+ },
482
+ roleBadgeText: {
483
+ fontSize: 10,
484
+ fontWeight: '600',
485
+ textTransform: 'capitalize'
486
+ },
489
487
  rowSignOutButton: {
490
488
  width: 28,
491
489
  height: 28,
@@ -494,7 +492,6 @@ const styles = _reactNative.StyleSheet.create({
494
492
  borderRadius: 9999,
495
493
  opacity: 0.6
496
494
  },
497
- // Switching indicator (`flex-row items-center justify-center gap-2 py-2`).
498
495
  switchingRow: {
499
496
  flexDirection: 'row',
500
497
  alignItems: 'center',
@@ -506,7 +503,6 @@ const styles = _reactNative.StyleSheet.create({
506
503
  fontSize: 12,
507
504
  fontWeight: '500'
508
505
  },
509
- // Bottom action rows (`flex-row items-center gap-3 px-4 py-3`).
510
506
  actionRow: {
511
507
  flexDirection: 'row',
512
508
  alignItems: 'center',
@@ -514,15 +510,6 @@ const styles = _reactNative.StyleSheet.create({
514
510
  paddingHorizontal: 16,
515
511
  paddingVertical: 12
516
512
  },
517
- // Sign-out-of-all row shares the action-row geometry.
518
- signOutAllRow: {
519
- flexDirection: 'row',
520
- alignItems: 'center',
521
- gap: 12,
522
- paddingHorizontal: 16,
523
- paddingVertical: 12
524
- },
525
- // Action / sign-out label (`font-medium`).
526
513
  actionText: {
527
514
  fontWeight: '500'
528
515
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_vectorIcons","_avatar","_typography","_theme","_bloom","_divider","_core","_OxyContext","_useI18n","_useDeviceAccounts","_jsxRuntime","isWeb","Platform","OS","MENU_WIDTH","ProfileMenuContent","onClose","onNavigateManage","onAddAccount","onNavigateProfile","onBeforeSessionChange","activeSessionId","switchSession","logoutAll","removeSession","useOxy","t","useI18n","colors","useTheme","accounts","useDeviceAccounts","busySessionId","setBusySessionId","useState","removingSessionId","setRemovingSessionId","signingOutAll","setSigningOutAll","signOutAllDialog","useDialogControl","isSwitching","actionDisabled","handleSwitch","useCallback","sessionId","toast","success","error","isDev","loggerUtil","warn","component","handleRemove","performSignOutAll","useEffect","document","undefined","onKey","event","key","stopPropagation","addEventListener","removeEventListener","jsxs","Fragment","children","ScrollView","style","styles","scroll","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","map","account","isActive","isCurrent","isBusy","isRemoving","Pressable","accessibilityRole","accessibilityLabel","displayName","accessibilityState","selected","onPress","disabled","accountRow","backgroundColor","backgroundSecondary","rowDimmed","jsx","Avatar","source","user","avatar","uri","avatarUrl","variant","name","size","View","accountInfo","Text","accountNameActive","accountName","color","text","numberOfLines","email","accountEmail","textSecondary","ActivityIndicator","primary","MaterialCommunityIcons","hitSlop","top","bottom","left","right","rowSignOutButton","switchingRow","switchingText","Divider","border","spacing","ActionRow","icon","iconColor","textColor","label","open","signOutAllRow","actionText","Dialog","control","title","description","actions","ProfileMenu","anchor","panelAnchorStyle","position","width","Modal","visible","transparent","animationType","onRequestClose","webOverlay","nativeOverlay","panelWeb","panelNative","background","borderColor","panelBounds","shadow","actionRow","StyleSheet","create","flex","justifyContent","overflow","borderRadius","borderWidth","borderTopLeftRadius","borderTopRightRadius","paddingBottom","maxHeight","shadowColor","shadowOpacity","shadowRadius","shadowOffset","height","elevation","flexGrow","paddingVertical","flexDirection","alignItems","gap","paddingHorizontal","opacity","minWidth","fontWeight","fontSize","_default","exports","default"],"sourceRoot":"../../../../src","sources":["ui/components/ProfileMenu.tsx"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAUA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAR,OAAA;AACA,IAAAS,WAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AACA,IAAAW,kBAAA,GAAAX,OAAA;AAA+D,IAAAY,WAAA,GAAAZ,OAAA;AAE/D,MAAMa,KAAK,GAAGC,qBAAQ,CAACC,EAAE,KAAK,KAAK;;AAEnC;AACA,MAAMC,UAAU,GAAG,GAAG;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAyBA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,kBAAqD,GAAGA,CAAC;EAC3DC,OAAO;EACPC,gBAAgB;EAChBC,YAAY;EACZC,iBAAiB;EACjBC;AACJ,CAAC,KAAK;EACF,MAAM;IACFC,eAAe;IACfC,aAAa;IACbC,SAAS;IACTC;EACJ,CAAC,GAAG,IAAAC,kBAAM,EAAC,CAAC;EACZ,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,gBAAO,EAAC,CAAC;EACvB,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAE7B,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,oCAAiB,EAAC,CAAC;EAExC,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAC,eAAQ,EAAgB,IAAI,CAAC;EACvE,MAAM,CAACC,iBAAiB,EAAEC,oBAAoB,CAAC,GAAG,IAAAF,eAAQ,EAAgB,IAAI,CAAC;EAC/E,MAAM,CAACG,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAJ,eAAQ,EAAC,KAAK,CAAC;EAEzD,MAAMK,gBAAgB,GAAG,IAAAC,uBAAgB,EAAC,CAAC;EAE3C,MAAMC,WAAW,GAAGT,aAAa,KAAK,IAAI;EAC1C,MAAMU,cAAc,GAAGD,WAAW,IAAIN,iBAAiB,KAAK,IAAI,IAAIE,aAAa;;EAEjF;EACA,MAAMM,YAAY,GAAG,IAAAC,kBAAW,EAAC,MAAOC,SAAiB,IAAK;IAC1D,IAAIA,SAAS,KAAKxB,eAAe,IAAIW,aAAa,EAAE;MAChD;IACJ;IACAC,gBAAgB,CAACY,SAAS,CAAC;IAC3B,IAAI;MACA,MAAMzB,qBAAqB,GAAG,CAAC;MAC/B,MAAME,aAAa,CAACuB,SAAS,CAAC;MAC9BC,YAAK,CAACC,OAAO,CAACrB,CAAC,CAAC,sCAAsC,CAAC,IAAI,kBAAkB,CAAC;MAC9EV,OAAO,CAAC,CAAC;IACb,CAAC,CAAC,OAAOgC,KAAK,EAAE;MACZ,IAAI,CAAC,IAAAC,WAAK,EAAC,CAAC,EAAE;QACVC,YAAU,CAACC,IAAI,CAAC,uBAAuB,EAAE;UAAEC,SAAS,EAAE;QAAc,CAAC,EAAEJ,KAAgB,CAAC;MAC5F;MACAF,YAAK,CAACE,KAAK,CAACtB,CAAC,CAAC,qCAAqC,CAAC,IAAI,0BAA0B,CAAC;IACvF,CAAC,SAAS;MACNO,gBAAgB,CAAC,IAAI,CAAC;IAC1B;EACJ,CAAC,EAAE,CAACZ,eAAe,EAAEW,aAAa,EAAEV,aAAa,EAAEI,CAAC,EAAEV,OAAO,EAAEI,qBAAqB,CAAC,CAAC;;EAEtF;EACA;EACA,MAAMiC,YAAY,GAAG,IAAAT,kBAAW,EAAC,MAAOC,SAAiB,IAAK;IAC1D,IAAIA,SAAS,KAAKxB,eAAe,IAAIc,iBAAiB,EAAE;MACpD;IACJ;IACAC,oBAAoB,CAACS,SAAS,CAAC;IAC/B,IAAI;MACA,MAAMrB,aAAa,CAACqB,SAAS,CAAC;MAC9BC,YAAK,CAACC,OAAO,CAACrB,CAAC,CAAC,0BAA0B,CAAC,IAAI,YAAY,CAAC;IAChE,CAAC,CAAC,OAAOsB,KAAK,EAAE;MACZE,YAAU,CAACC,IAAI,CAAC,uBAAuB,EAAE;QAAEC,SAAS,EAAE;MAAc,CAAC,EAAEJ,KAAgB,CAAC;MACxFF,YAAK,CAACE,KAAK,CAACtB,CAAC,CAAC,6BAA6B,CAAC,IAAI,oBAAoB,CAAC;IACzE,CAAC,SAAS;MACNU,oBAAoB,CAAC,IAAI,CAAC;IAC9B;EACJ,CAAC,EAAE,CAACf,eAAe,EAAEc,iBAAiB,EAAEX,aAAa,EAAEE,CAAC,CAAC,CAAC;EAE1D,MAAM4B,iBAAiB,GAAG,IAAAV,kBAAW,EAAC,YAAY;IAC9C,IAAIP,aAAa,EAAE;MACf;IACJ;IACAC,gBAAgB,CAAC,IAAI,CAAC;IACtB,IAAI;MACA,MAAMlB,qBAAqB,GAAG,CAAC;MAC/B,MAAMG,SAAS,CAAC,CAAC;MACjBuB,YAAK,CAACC,OAAO,CAACrB,CAAC,CAAC,0CAA0C,CAAC,IAAI,4BAA4B,CAAC;MAC5FV,OAAO,CAAC,CAAC;IACb,CAAC,CAAC,OAAOgC,KAAK,EAAE;MACZE,YAAU,CAACC,IAAI,CAAC,qBAAqB,EAAE;QAAEC,SAAS,EAAE;MAAc,CAAC,EAAEJ,KAAgB,CAAC;MACtFF,YAAK,CAACE,KAAK,CAACtB,CAAC,CAAC,gCAAgC,CAAC,IAAI,oCAAoC,CAAC;IAC5F,CAAC,SAAS;MACNY,gBAAgB,CAAC,KAAK,CAAC;IAC3B;EACJ,CAAC,EAAE,CAACD,aAAa,EAAEd,SAAS,EAAEG,CAAC,EAAEV,OAAO,EAAEI,qBAAqB,CAAC,CAAC;;EAEjE;EACA;EACA,IAAAmC,gBAAS,EAAC,MAAM;IACZ,IAAI,CAAC5C,KAAK,IAAI,OAAO6C,QAAQ,KAAK,WAAW,EAAE;MAC3C,OAAOC,SAAS;IACpB;IACA,MAAMC,KAAK,GAAIC,KAAoB,IAAK;MACpC,IAAIA,KAAK,CAACC,GAAG,KAAK,QAAQ,EAAE;QACxBD,KAAK,CAACE,eAAe,CAAC,CAAC;QACvB7C,OAAO,CAAC,CAAC;MACb;IACJ,CAAC;IACDwC,QAAQ,CAACM,gBAAgB,CAAC,SAAS,EAAEJ,KAAK,EAAE,IAAI,CAAC;IACjD,OAAO,MAAMF,QAAQ,CAACO,mBAAmB,CAAC,SAAS,EAAEL,KAAK,EAAE,IAAI,CAAC;EACrE,CAAC,EAAE,CAAC1C,OAAO,CAAC,CAAC;EAEb,oBACI,IAAAN,WAAA,CAAAsD,IAAA,EAAAtD,WAAA,CAAAuD,QAAA;IAAAC,QAAA,gBACI,IAAAxD,WAAA,CAAAsD,IAAA,EAACjE,YAAA,CAAAoE,UAAU;MACPC,KAAK,EAAEC,MAAM,CAACC,MAAO;MACrBC,qBAAqB,EAAEF,MAAM,CAACG,aAAc;MAC5CC,4BAA4B,EAAE,KAAM;MAAAP,QAAA,GAGnCpC,QAAQ,CAAC4C,GAAG,CAAEC,OAAO,IAAK;QACvB,MAAMC,QAAQ,GAAGD,OAAO,CAACE,SAAS;QAClC,MAAMC,MAAM,GAAG9C,aAAa,KAAK2C,OAAO,CAAC9B,SAAS;QAClD,MAAMkC,UAAU,GAAG5C,iBAAiB,KAAKwC,OAAO,CAAC9B,SAAS;QAC1D,oBACI,IAAAnC,WAAA,CAAAsD,IAAA,EAACjE,YAAA,CAAAiF,SAAS;UAENC,iBAAiB,EAAC,UAAU;UAC5BC,kBAAkB,EAAEP,OAAO,CAACQ,WAAY;UACxCC,kBAAkB,EAAE;YAAEC,QAAQ,EAAET;UAAS,CAAE;UAC3CU,OAAO,EAAEA,CAAA,KAAM3C,YAAY,CAACgC,OAAO,CAAC9B,SAAS,CAAE;UAC/C0C,QAAQ,EAAEX,QAAQ,IAAIE,MAAM,IAAIrC,WAAY;UAC5C2B,KAAK,EAAE,CACHC,MAAM,CAACmB,UAAU,EACjBZ,QAAQ,IAAI;YAAEa,eAAe,EAAE7D,MAAM,CAAC8D;UAAoB,CAAC,EAC3DjD,WAAW,IAAI,CAACmC,QAAQ,IAAIP,MAAM,CAACsB,SAAS,CAC9C;UAAAzB,QAAA,gBAEF,IAAAxD,WAAA,CAAAkF,GAAA,EAAC3F,OAAA,CAAA4F,MAAM;YACHC,MAAM,EAAEnB,OAAO,CAACoB,IAAI,CAACC,MAAM,IAAIvC,SAAU;YACzCwC,GAAG,EAAEtB,OAAO,CAACuB,SAAU;YACvBC,OAAO,EAAC,OAAO;YACfC,IAAI,EAAEzB,OAAO,CAACQ,WAAY;YAC1BkB,IAAI,EAAEzB,QAAQ,GAAG,EAAE,GAAG;UAAG,CAC5B,CAAC,eACF,IAAAlE,WAAA,CAAAsD,IAAA,EAACjE,YAAA,CAAAuG,IAAI;YAAClC,KAAK,EAAEC,MAAM,CAACkC,WAAY;YAAArC,QAAA,gBAC5B,IAAAxD,WAAA,CAAAkF,GAAA,EAAC1F,WAAA,CAAAsG,IAAI;cACDpC,KAAK,EAAE,CACHQ,QAAQ,GAAGP,MAAM,CAACoC,iBAAiB,GAAGpC,MAAM,CAACqC,WAAW,EACxD;gBAAEC,KAAK,EAAE/E,MAAM,CAACgF;cAAK,CAAC,CACxB;cACFC,aAAa,EAAE,CAAE;cAAA3C,QAAA,EAEhBS,OAAO,CAACQ;YAAW,CAClB,CAAC,EACNR,OAAO,CAACmC,KAAK,gBACV,IAAApG,WAAA,CAAAkF,GAAA,EAAC1F,WAAA,CAAAsG,IAAI;cACDpC,KAAK,EAAE,CAACC,MAAM,CAAC0C,YAAY,EAAE;gBAAEJ,KAAK,EAAE/E,MAAM,CAACoF;cAAc,CAAC,CAAE;cAC9DH,aAAa,EAAE,CAAE;cAAA3C,QAAA,EAEhBS,OAAO,CAACmC;YAAK,CACZ,CAAC,GACP,IAAI;UAAA,CACN,CAAC,EACNhC,MAAM,gBACH,IAAApE,WAAA,CAAAkF,GAAA,EAAC7F,YAAA,CAAAkH,iBAAiB;YAACN,KAAK,EAAE/E,MAAM,CAACsF,OAAQ;YAACb,IAAI,EAAC;UAAO,CAAE,CAAC,GACzDzB,QAAQ,gBACR,IAAAlE,WAAA,CAAAkF,GAAA,EAAC5F,YAAA,CAAAmH,sBAAsB;YAACf,IAAI,EAAC,OAAO;YAACC,IAAI,EAAE,EAAG;YAACM,KAAK,EAAE/E,MAAM,CAACsF;UAAQ,CAAE,CAAC,GACxEnC,UAAU,gBACV,IAAArE,WAAA,CAAAkF,GAAA,EAAC7F,YAAA,CAAAkH,iBAAiB;YAACN,KAAK,EAAE/E,MAAM,CAACoF,aAAc;YAACX,IAAI,EAAC;UAAO,CAAE,CAAC,gBAE/D,IAAA3F,WAAA,CAAAkF,GAAA,EAAC7F,YAAA,CAAAiF,SAAS;YACNC,iBAAiB,EAAC,QAAQ;YAC1BC,kBAAkB,EACdxD,CAAC,CAAC,4BAA4B,EAAE;cAAE0E,IAAI,EAAEzB,OAAO,CAACQ;YAAY,CAAC,CAAC,IAC3D,YAAYR,OAAO,CAACQ,WAAW,EACrC;YACDG,OAAO,EAAEA,CAAA,KAAMjC,YAAY,CAACsB,OAAO,CAAC9B,SAAS,CAAE;YAC/C0C,QAAQ,EAAE7C,cAAe;YACzB0E,OAAO,EAAE;cAAEC,GAAG,EAAE,CAAC;cAAEC,MAAM,EAAE,CAAC;cAAEC,IAAI,EAAE,CAAC;cAAEC,KAAK,EAAE;YAAE,CAAE;YAClDpD,KAAK,EAAEC,MAAM,CAACoD,gBAAiB;YAAAvD,QAAA,eAE/B,IAAAxD,WAAA,CAAAkF,GAAA,EAAC5F,YAAA,CAAAmH,sBAAsB;cACnBf,IAAI,EAAC,QAAQ;cACbC,IAAI,EAAE,EAAG;cACTM,KAAK,EAAE/E,MAAM,CAACoF;YAAc,CAC/B;UAAC,CACK,CACd;QAAA,GA9DI,WAAWrC,OAAO,CAAC9B,SAAS,EA+D1B,CAAC;MAEpB,CAAC,CAAC,EAGDJ,WAAW,gBACR,IAAA/B,WAAA,CAAAsD,IAAA,EAACjE,YAAA,CAAAuG,IAAI;QAAClC,KAAK,EAAEC,MAAM,CAACqD,YAAa;QAAAxD,QAAA,gBAC7B,IAAAxD,WAAA,CAAAkF,GAAA,EAAC7F,YAAA,CAAAkH,iBAAiB;UAACN,KAAK,EAAE/E,MAAM,CAACoF,aAAc;UAACX,IAAI,EAAC;QAAO,CAAE,CAAC,eAC/D,IAAA3F,WAAA,CAAAkF,GAAA,EAAC1F,WAAA,CAAAsG,IAAI;UAACpC,KAAK,EAAE,CAACC,MAAM,CAACsD,aAAa,EAAE;YAAEhB,KAAK,EAAE/E,MAAM,CAACoF;UAAc,CAAC,CAAE;UAAA9C,QAAA,EAChExC,CAAC,CAAC,uBAAuB,CAAC,IAAI;QAAoB,CACjD,CAAC;MAAA,CACL,CAAC,GACP,IAAI,eAER,IAAAhB,WAAA,CAAAkF,GAAA,EAACvF,QAAA,CAAAuH,OAAO;QAACjB,KAAK,EAAE/E,MAAM,CAACiG,MAAO;QAACC,OAAO,EAAE;MAAE,CAAE,CAAC,eAG7C,IAAApH,WAAA,CAAAkF,GAAA,EAACmC,SAAS;QACNC,IAAI,EAAC,sBAAsB;QAC3BC,SAAS,EAAErG,MAAM,CAACoG,IAAK;QACvBE,SAAS,EAAEtG,MAAM,CAACgF,IAAK;QACvBuB,KAAK,EAAEzG,CAAC,CAAC,wBAAwB,CAAC,IAAI,qBAAsB;QAC5D6D,QAAQ,EAAE7C,cAAe;QACzB4C,OAAO,EAAEA,CAAA,KAAM;UACXtE,OAAO,CAAC,CAAC;UACTE,YAAY,CAAC,CAAC;QAClB;MAAE,CACL,CAAC,eAGF,IAAAR,WAAA,CAAAkF,GAAA,EAACmC,SAAS;QACNC,IAAI,EAAC,aAAa;QAClBC,SAAS,EAAErG,MAAM,CAACoG,IAAK;QACvBE,SAAS,EAAEtG,MAAM,CAACgF,IAAK;QACvBuB,KAAK,EAAEzG,CAAC,CAAC,oBAAoB,CAAC,IAAI,yBAA0B;QAC5D6D,QAAQ,EAAE7C,cAAe;QACzB4C,OAAO,EAAEA,CAAA,KAAM;UACXtE,OAAO,CAAC,CAAC;UACTC,gBAAgB,CAAC,CAAC;QACtB;MAAE,CACL,CAAC,EAGDE,iBAAiB,gBACd,IAAAT,WAAA,CAAAkF,GAAA,EAACmC,SAAS;QACNC,IAAI,EAAC,iBAAiB;QACtBC,SAAS,EAAErG,MAAM,CAACoG,IAAK;QACvBE,SAAS,EAAEtG,MAAM,CAACgF,IAAK;QACvBuB,KAAK,EAAEzG,CAAC,CAAC,yBAAyB,CAAC,IAAI,cAAe;QACtD6D,QAAQ,EAAE7C,cAAe;QACzB4C,OAAO,EAAEA,CAAA,KAAM;UACXtE,OAAO,CAAC,CAAC;UACTG,iBAAiB,CAAC,CAAC;QACvB;MAAE,CACL,CAAC,GACF,IAAI,eAGR,IAAAT,WAAA,CAAAkF,GAAA,EAACvF,QAAA,CAAAuH,OAAO;QAACjB,KAAK,EAAE/E,MAAM,CAACiG,MAAO;QAACC,OAAO,EAAE;MAAE,CAAE,CAAC,eAC7C,IAAApH,WAAA,CAAAsD,IAAA,EAACjE,YAAA,CAAAiF,SAAS;QACNC,iBAAiB,EAAC,UAAU;QAC5BC,kBAAkB,EAAExD,CAAC,CAAC,wBAAwB,CAAC,IAAI,0BAA2B;QAC9E4D,OAAO,EAAEA,CAAA,KAAM/C,gBAAgB,CAAC6F,IAAI,CAAC,CAAE;QACvC7C,QAAQ,EAAE7C,cAAe;QACzB0B,KAAK,EAAE,CAACC,MAAM,CAACgE,aAAa,EAAE3F,cAAc,IAAI2B,MAAM,CAACsB,SAAS,CAAE;QAAAzB,QAAA,GAEjE7B,aAAa,gBACV,IAAA3B,WAAA,CAAAkF,GAAA,EAAC7F,YAAA,CAAAkH,iBAAiB;UAACN,KAAK,EAAE/E,MAAM,CAACoB,KAAM;UAACqD,IAAI,EAAC;QAAO,CAAE,CAAC,gBAEvD,IAAA3F,WAAA,CAAAkF,GAAA,EAAC5F,YAAA,CAAAmH,sBAAsB;UAACf,IAAI,EAAC,QAAQ;UAACC,IAAI,EAAE,EAAG;UAACM,KAAK,EAAE/E,MAAM,CAACoB;QAAM,CAAE,CACzE,eACD,IAAAtC,WAAA,CAAAkF,GAAA,EAAC1F,WAAA,CAAAsG,IAAI;UAACpC,KAAK,EAAE,CAACC,MAAM,CAACiE,UAAU,EAAE;YAAE3B,KAAK,EAAE/E,MAAM,CAACoB;UAAM,CAAC,CAAE;UAAAkB,QAAA,EACrDxC,CAAC,CAAC,wBAAwB,CAAC,IAAI;QAA0B,CACxD,CAAC;MAAA,CACA,CAAC;IAAA,CACJ,CAAC,eAEb,IAAAhB,WAAA,CAAAkF,GAAA,EAACxF,MAAA,CAAAmI,MAAM;MACHC,OAAO,EAAEjG,gBAAiB;MAC1BkG,KAAK,EAAE/G,CAAC,CAAC,wBAAwB,CAAC,IAAI,0BAA2B;MACjEgH,WAAW,EAAEhH,CAAC,CAAC,4BAA4B,CAAC,IAAI,oDAAqD;MACrGiH,OAAO,EAAE,CACL;QACIR,KAAK,EAAEzG,CAAC,CAAC,wBAAwB,CAAC,IAAI,0BAA0B;QAChEiF,KAAK,EAAE,aAAa;QACpBrB,OAAO,EAAEhC;MACb,CAAC,EACD;QAAE6E,KAAK,EAAEzG,CAAC,CAAC,eAAe,CAAC,IAAI,QAAQ;QAAEiF,KAAK,EAAE;MAAS,CAAC;IAC5D,CACL,CAAC;EAAA,CACJ,CAAC;AAEX,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMiC,WAAuC,GAAGA,CAAC;EAC7CR,IAAI;EACJpH,OAAO;EACP6H,MAAM;EACN5H,gBAAgB;EAChBC,YAAY;EACZC,iBAAiB;EACjBC;AACJ,CAAC,KAAK;EACF,MAAM;IAAEM;EAAE,CAAC,GAAG,IAAAC,gBAAO,EAAC,CAAC;EACvB,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;;EAE7B;EACA;EACA;EACA;EACA;EACA,MAAMiH,gBAAuC,GAAGnI,KAAK,GAC/C;IACEoI,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAElI,UAAU;IACjByG,IAAI,EAAEsB,MAAM,EAAEtB,IAAI,IAAI,CAAC;IACvB,IAAI,OAAOsB,MAAM,EAAExB,GAAG,KAAK,QAAQ,GAC7B;MAAEA,GAAG,EAAEwB,MAAM,CAACxB;IAAI,CAAC,GACnB;MAAEC,MAAM,EAAEuB,MAAM,EAAEvB,MAAM,IAAI;IAAE,CAAC;EACzC,CAAC,GACC7D,SAAS;EAEf,oBACI,IAAA/C,WAAA,CAAAkF,GAAA,EAAC7F,YAAA,CAAAkJ,KAAK;IACFC,OAAO,EAAEd,IAAK;IACde,WAAW;IACXC,aAAa,EAAEzI,KAAK,GAAG,MAAM,GAAG,OAAQ;IACxC0I,cAAc,EAAErI,OAAQ;IAAAkD,QAAA,eAExB,IAAAxD,WAAA,CAAAkF,GAAA,EAAC7F,YAAA,CAAAiF,SAAS;MACNC,iBAAiB,EAAC,QAAQ;MAC1BC,kBAAkB,EAAExD,CAAC,CAAC,sBAAsB,CAAC,IAAI,OAAQ;MACzD4D,OAAO,EAAEtE,OAAQ;MACjBoD,KAAK,EAAEzD,KAAK,GAAG0D,MAAM,CAACiF,UAAU,GAAGjF,MAAM,CAACkF,aAAc;MAAArF,QAAA,eAExD,IAAAxD,WAAA,CAAAkF,GAAA,EAAC7F,YAAA,CAAAiF;MACG;MACA;MAAA;QACAM,OAAO,EAAEA,CAAA,KAAM7B,SAAU;QACzBW,KAAK,EAAE,CACHzD,KAAK,GAAG0D,MAAM,CAACmF,QAAQ,GAAGnF,MAAM,CAACoF,WAAW,EAC5C;UAAEhE,eAAe,EAAE7D,MAAM,CAAC8H;QAAW,CAAC,EACtC/I,KAAK,IAAI;UAAEgJ,WAAW,EAAE/H,MAAM,CAACiG;QAAO,CAAC,EACvCiB,gBAAgB,EAChBzE,MAAM,CAACuF,WAAW,EAClBvF,MAAM,CAACwF,MAAM,CACf;QACF5E,iBAAiB,EAAC,MAAM;QACxBC,kBAAkB,EAAExD,CAAC,CAAC,mBAAmB,CAAC,IAAI,cAAe;QAAAwC,QAAA,EAE5DkE,IAAI,gBACD,IAAA1H,WAAA,CAAAkF,GAAA,EAAC7E,kBAAkB;UACfC,OAAO,EAAEA,OAAQ;UACjB6H,MAAM,EAAEA,MAAO;UACf5H,gBAAgB,EAAEA,gBAAiB;UACnCC,YAAY,EAAEA,YAAa;UAC3BC,iBAAiB,EAAEA,iBAAkB;UACrCC,qBAAqB,EAAEA;QAAsB,CAChD,CAAC,GACF;MAAI,CACD;IAAC,CACL;EAAC,CACT,CAAC;AAEhB,CAAC;;AAED;AACA,MAAM2G,SAOJ,GAAGA,CAAC;EAAEC,IAAI;EAAEC,SAAS;EAAEC,SAAS;EAAEC,KAAK;EAAE5C,QAAQ;EAAED;AAAQ,CAAC,kBAC1D,IAAA5E,WAAA,CAAAsD,IAAA,EAACjE,YAAA,CAAAiF,SAAS;EACNC,iBAAiB,EAAC,UAAU;EAC5BC,kBAAkB,EAAEiD,KAAM;EAC1B7C,OAAO,EAAEA,OAAQ;EACjBC,QAAQ,EAAEA,QAAS;EACnBnB,KAAK,EAAE,CAACC,MAAM,CAACyF,SAAS,EAAEvE,QAAQ,IAAIlB,MAAM,CAACsB,SAAS,CAAE;EAAAzB,QAAA,gBAExD,IAAAxD,WAAA,CAAAkF,GAAA,EAAC5F,YAAA,CAAAmH,sBAAsB;IAACf,IAAI,EAAE4B,IAAK;IAAC3B,IAAI,EAAE,EAAG;IAACM,KAAK,EAAEsB;EAAU,CAAE,CAAC,eAClE,IAAAvH,WAAA,CAAAkF,GAAA,EAAC1F,WAAA,CAAAsG,IAAI;IAACpC,KAAK,EAAE,CAACC,MAAM,CAACiE,UAAU,EAAE;MAAE3B,KAAK,EAAEuB;IAAU,CAAC,CAAE;IAAAhE,QAAA,EAAEiE;EAAK,CAAO,CAAC;AAAA,CAC/D,CACd;AAED,MAAM9D,MAAM,GAAG0F,uBAAU,CAACC,MAAM,CAAC;EAC7B;EACAV,UAAU,EAAE;IACRW,IAAI,EAAE,CAAC;IACPlB,QAAQ,EAAE;EACd,CAAC;EACDQ,aAAa,EAAE;IACXU,IAAI,EAAE,CAAC;IACPC,cAAc,EAAE,UAAU;IAC1BzE,eAAe,EAAE;EACrB,CAAC;EACD;EACA+D,QAAQ,EAAE;IACNW,QAAQ,EAAE,QAAQ;IAClBC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE;EACjB,CAAC;EACD;EACAZ,WAAW,EAAE;IACTU,QAAQ,EAAE,QAAQ;IAClBG,mBAAmB,EAAE,EAAE;IACvBC,oBAAoB,EAAE,EAAE;IACxBC,aAAa,EAAE;EACnB,CAAC;EACD;EACAZ,WAAW,EAAE;IACTa,SAAS,EAAE;EACf,CAAC;EACD;EACAZ,MAAM,EAAE;IACJa,WAAW,EAAE,MAAM;IACnBC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,EAAE;IAChBC,YAAY,EAAE;MAAE7B,KAAK,EAAE,CAAC;MAAE8B,MAAM,EAAE;IAAE,CAAC;IACrCC,SAAS,EAAE;EACf,CAAC;EACD;EACAzG,MAAM,EAAE;IACJ0G,QAAQ,EAAE;EACd,CAAC;EACDxG,aAAa,EAAE;IACXyG,eAAe,EAAE;EACrB,CAAC;EACD;EACAzF,UAAU,EAAE;IACR0F,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,EAAE;IACPC,iBAAiB,EAAE,EAAE;IACrBJ,eAAe,EAAE;EACrB,CAAC;EACD;EACAtF,SAAS,EAAE;IACP2F,OAAO,EAAE;EACb,CAAC;EACD;EACA/E,WAAW,EAAE;IACT0D,IAAI,EAAE,CAAC;IACPsB,QAAQ,EAAE;EACd,CAAC;EACD;EACA7E,WAAW,EAAE;IACT8E,UAAU,EAAE;EAChB,CAAC;EACD;EACA/E,iBAAiB,EAAE;IACf+E,UAAU,EAAE;EAChB,CAAC;EACD;EACAzE,YAAY,EAAE;IACV0E,QAAQ,EAAE;EACd,CAAC;EACD;EACAhE,gBAAgB,EAAE;IACduB,KAAK,EAAE,EAAE;IACT8B,MAAM,EAAE,EAAE;IACVK,UAAU,EAAE,QAAQ;IACpBjB,cAAc,EAAE,QAAQ;IACxBE,YAAY,EAAE,IAAI;IAClBkB,OAAO,EAAE;EACb,CAAC;EACD;EACA5D,YAAY,EAAE;IACVwD,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBjB,cAAc,EAAE,QAAQ;IACxBkB,GAAG,EAAE,CAAC;IACNH,eAAe,EAAE;EACrB,CAAC;EACDtD,aAAa,EAAE;IACX8D,QAAQ,EAAE,EAAE;IACZD,UAAU,EAAE;EAChB,CAAC;EACD;EACA1B,SAAS,EAAE;IACPoB,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,EAAE;IACPC,iBAAiB,EAAE,EAAE;IACrBJ,eAAe,EAAE;EACrB,CAAC;EACD;EACA5C,aAAa,EAAE;IACX6C,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,EAAE;IACPC,iBAAiB,EAAE,EAAE;IACrBJ,eAAe,EAAE;EACrB,CAAC;EACD;EACA3C,UAAU,EAAE;IACRkD,UAAU,EAAE;EAChB;AACJ,CAAC,CAAC;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEYhD,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_vectorIcons","_avatar","_typography","_theme","_bloom","_divider","_core","_OxyContext","_useI18n","_useSwitchableAccounts","_jsxRuntime","isWeb","Platform","OS","MENU_WIDTH","ProfileMenu","open","onClose","anchor","onNavigateManage","onAddAccount","onNavigateProfile","onBeforeSessionChange","switchToAccount","logoutAll","removeSession","useOxy","t","useI18n","colors","useTheme","accounts","useSwitchableAccounts","busyAccountId","setBusyAccountId","useState","removingSessionId","setRemovingSessionId","signingOutAll","setSigningOutAll","signOutAllDialog","useDialogControl","isSwitching","actionDisabled","listedAccountIds","useMemo","Set","map","account","accountId","handleSwitch","useCallback","isCurrent","toast","success","error","isDev","loggerUtil","warn","component","handleRemove","sessionId","performSignOutAll","useEffect","document","undefined","onKey","event","key","stopPropagation","addEventListener","removeEventListener","panelAnchorStyle","position","width","left","top","bottom","content","jsx","Pressable","onPress","style","styles","panelWeb","panelNative","backgroundColor","background","borderColor","border","panelBounds","shadow","accessibilityRole","accessibilityLabel","children","jsxs","ScrollView","scroll","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","isActive","isBusy","isRemoving","isChild","Boolean","parentAccountId","has","role","callerMembership","displayName","accessibilityState","selected","disabled","accountRow","childRow","backgroundSecondary","rowDimmed","Avatar","source","user","avatar","uri","avatarUrl","variant","name","size","View","accountInfo","nameRow","Text","accountName","color","text","accountNameActive","numberOfLines","roleBadge","card","roleBadgeText","textSecondary","email","accountEmail","ActivityIndicator","primary","MaterialCommunityIcons","hitSlop","right","rowSignOutButton","switchingRow","switchingText","Divider","spacing","ActionRow","icon","iconColor","textColor","label","actionRow","actionText","Modal","visible","transparent","animationType","onRequestClose","webOverlay","nativeOverlay","Dialog","control","title","description","actions","StyleSheet","create","flex","justifyContent","overflow","borderRadius","borderWidth","borderTopLeftRadius","borderTopRightRadius","paddingBottom","maxHeight","shadowColor","shadowOpacity","shadowRadius","shadowOffset","height","elevation","flexGrow","paddingVertical","flexDirection","alignItems","gap","paddingHorizontal","paddingLeft","opacity","minWidth","fontWeight","flexShrink","fontSize","textTransform","_default","exports","default"],"sourceRoot":"../../../../src","sources":["ui/components/ProfileMenu.tsx"],"mappings":"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","ignoreList":[]}
@@ -65,7 +65,7 @@ const SignInModal = () => {
65
65
  const theme = (0, _theme.useTheme)();
66
66
  const {
67
67
  oxyServices,
68
- switchSession,
68
+ handleWebSession,
69
69
  clientId
70
70
  } = (0, _OxyContext.useOxy)();
71
71
 
@@ -86,7 +86,7 @@ const SignInModal = () => {
86
86
  theme: theme,
87
87
  insets: insets,
88
88
  oxyServices: oxyServices,
89
- switchSession: switchSession,
89
+ handleWebSession: handleWebSession,
90
90
  clientId: clientId
91
91
  });
92
92
  };
@@ -94,7 +94,7 @@ const SignInModalContent = ({
94
94
  theme,
95
95
  insets,
96
96
  oxyServices,
97
- switchSession,
97
+ handleWebSession,
98
98
  clientId
99
99
  }) => {
100
100
  const {
@@ -106,7 +106,7 @@ const SignInModalContent = ({
106
106
  openAuthApproval,
107
107
  openSameDeviceApproval,
108
108
  retry
109
- } = (0, _useOxyAuthSession.useOxyAuthSession)(oxyServices, clientId, switchSession, {
109
+ } = (0, _useOxyAuthSession.useOxyAuthSession)(oxyServices, clientId, handleWebSession, {
110
110
  onSignedIn: hideSignInModal
111
111
  });
112
112