@oxyhq/services 15.0.0 → 17.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/index.js +25 -55
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/ui/client.js +0 -14
- package/lib/commonjs/ui/client.js.map +1 -1
- package/lib/commonjs/ui/components/OxyAccountDialog.js +764 -0
- package/lib/commonjs/ui/components/OxyAccountDialog.js.map +1 -0
- package/lib/commonjs/ui/components/OxyProvider.js +11 -6
- package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
- package/lib/commonjs/ui/components/OxySignInButton.js +10 -21
- package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -1
- package/lib/commonjs/ui/components/ProfileButton.js +25 -112
- package/lib/commonjs/ui/components/ProfileButton.js.map +1 -1
- package/lib/commonjs/ui/components/RequireOxyAuth.js +299 -0
- package/lib/commonjs/ui/components/RequireOxyAuth.js.map +1 -0
- package/lib/commonjs/ui/context/OxyContext.js +106 -2
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/mutationKeys.js +1 -1
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +10 -10
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/queryKeys.js +1 -1
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +7 -8
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/useAuth.js +19 -30
- package/lib/commonjs/ui/hooks/useAuth.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSwitchableAccounts.js +37 -267
- package/lib/commonjs/ui/hooks/useSwitchableAccounts.js.map +1 -1
- package/lib/commonjs/ui/index.js +5 -40
- package/lib/commonjs/ui/index.js.map +1 -1
- package/lib/commonjs/ui/navigation/accountDialogManager.js +91 -0
- package/lib/commonjs/ui/navigation/accountDialogManager.js.map +1 -0
- package/lib/commonjs/ui/navigation/routes.js +0 -2
- package/lib/commonjs/ui/navigation/routes.js.map +1 -1
- package/lib/commonjs/ui/screens/ConnectedAppsScreen.js +17 -18
- package/lib/commonjs/ui/screens/ConnectedAppsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ManageAccountScreen.js +4 -3
- package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/commonjs/ui/session/createSessionClient.js +10 -2
- package/lib/commonjs/ui/session/createSessionClient.js.map +1 -1
- package/lib/module/index.js +20 -17
- package/lib/module/index.js.map +1 -1
- package/lib/module/ui/client.js +1 -2
- package/lib/module/ui/client.js.map +1 -1
- package/lib/module/ui/components/OxyAccountDialog.js +761 -0
- package/lib/module/ui/components/OxyAccountDialog.js.map +1 -0
- package/lib/module/ui/components/OxyProvider.js +11 -6
- package/lib/module/ui/components/OxyProvider.js.map +1 -1
- package/lib/module/ui/components/OxySignInButton.js +10 -21
- package/lib/module/ui/components/OxySignInButton.js.map +1 -1
- package/lib/module/ui/components/ProfileButton.js +26 -112
- package/lib/module/ui/components/ProfileButton.js.map +1 -1
- package/lib/module/ui/components/RequireOxyAuth.js +294 -0
- package/lib/module/ui/components/RequireOxyAuth.js.map +1 -0
- package/lib/module/ui/context/OxyContext.js +107 -3
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/hooks/mutations/mutationKeys.js +1 -1
- package/lib/module/ui/hooks/mutations/useAccountMutations.js +8 -8
- package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/module/ui/hooks/queries/queryKeys.js +1 -1
- package/lib/module/ui/hooks/queries/useAccountQueries.js +5 -6
- package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/module/ui/hooks/useAuth.js +19 -30
- package/lib/module/ui/hooks/useAuth.js.map +1 -1
- package/lib/module/ui/hooks/useSwitchableAccounts.js +38 -267
- package/lib/module/ui/hooks/useSwitchableAccounts.js.map +1 -1
- package/lib/module/ui/index.js +1 -5
- package/lib/module/ui/index.js.map +1 -1
- package/lib/module/ui/navigation/accountDialogManager.js +81 -0
- package/lib/module/ui/navigation/accountDialogManager.js.map +1 -0
- package/lib/module/ui/navigation/routes.js +0 -2
- package/lib/module/ui/navigation/routes.js.map +1 -1
- package/lib/module/ui/screens/ConnectedAppsScreen.js +19 -20
- package/lib/module/ui/screens/ConnectedAppsScreen.js.map +1 -1
- package/lib/module/ui/screens/ManageAccountScreen.js +4 -3
- package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/module/ui/session/createSessionClient.js +10 -2
- package/lib/module/ui/session/createSessionClient.js.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +6 -13
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/client.d.ts +0 -4
- package/lib/typescript/commonjs/ui/client.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyAccountDialog.d.ts +35 -0
- package/lib/typescript/commonjs/ui/components/OxyAccountDialog.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts +2 -2
- package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxySignInButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/ProfileButton.d.ts +11 -23
- package/lib/typescript/commonjs/ui/components/ProfileButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/RequireOxyAuth.d.ts +55 -0
- package/lib/typescript/commonjs/ui/components/RequireOxyAuth.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +13 -1
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +4 -4
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useAccountQueries.d.ts +6 -7
- package/lib/typescript/commonjs/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSwitchableAccounts.d.ts +13 -152
- package/lib/typescript/commonjs/ui/hooks/useSwitchableAccounts.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/index.d.ts +2 -5
- package/lib/typescript/commonjs/ui/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts +49 -0
- package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/navigation/routes.d.ts +1 -1
- package/lib/typescript/commonjs/ui/navigation/routes.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts +1 -1
- package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts +9 -2
- package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/types/navigation.d.ts +9 -0
- package/lib/typescript/commonjs/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/storageHelpers.d.ts +7 -7
- package/lib/typescript/module/index.d.ts +6 -13
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/client.d.ts +0 -4
- package/lib/typescript/module/ui/client.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyAccountDialog.d.ts +35 -0
- package/lib/typescript/module/ui/components/OxyAccountDialog.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/OxyProvider.d.ts +2 -2
- package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxySignInButton.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/ProfileButton.d.ts +11 -23
- package/lib/typescript/module/ui/components/ProfileButton.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/RequireOxyAuth.d.ts +55 -0
- package/lib/typescript/module/ui/components/RequireOxyAuth.d.ts.map +1 -0
- package/lib/typescript/module/ui/context/OxyContext.d.ts +13 -1
- package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +4 -4
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useAccountQueries.d.ts +6 -7
- package/lib/typescript/module/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useSwitchableAccounts.d.ts +13 -152
- package/lib/typescript/module/ui/hooks/useSwitchableAccounts.d.ts.map +1 -1
- package/lib/typescript/module/ui/index.d.ts +2 -5
- package/lib/typescript/module/ui/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts +49 -0
- package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts.map +1 -0
- package/lib/typescript/module/ui/navigation/routes.d.ts +1 -1
- package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts +1 -1
- package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/session/createSessionClient.d.ts +9 -2
- package/lib/typescript/module/ui/session/createSessionClient.d.ts.map +1 -1
- package/lib/typescript/module/ui/types/navigation.d.ts +9 -0
- package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/storageHelpers.d.ts +7 -7
- package/package.json +4 -4
- package/src/index.ts +23 -28
- package/src/ui/client.ts +0 -4
- package/src/ui/components/OxyAccountDialog.tsx +760 -0
- package/src/ui/components/OxyProvider.tsx +12 -6
- package/src/ui/components/OxySignInButton.tsx +10 -21
- package/src/ui/components/ProfileButton.tsx +23 -126
- package/src/ui/components/RequireOxyAuth.tsx +266 -0
- package/src/ui/context/OxyContext.tsx +146 -7
- package/src/ui/hooks/mutations/mutationKeys.ts +1 -1
- package/src/ui/hooks/mutations/useAccountMutations.ts +8 -8
- package/src/ui/hooks/queries/queryKeys.ts +1 -1
- package/src/ui/hooks/queries/useAccountQueries.ts +8 -9
- package/src/ui/hooks/useAuth.ts +19 -31
- package/src/ui/hooks/useSwitchableAccounts.ts +42 -376
- package/src/ui/index.ts +2 -5
- package/src/ui/navigation/accountDialogManager.ts +84 -0
- package/src/ui/navigation/routes.ts +1 -5
- package/src/ui/screens/ConnectedAppsScreen.tsx +23 -24
- package/src/ui/screens/ManageAccountScreen.tsx +3 -2
- package/src/ui/session/createSessionClient.ts +9 -1
- package/src/ui/types/navigation.ts +9 -0
- package/src/ui/utils/storageHelpers.ts +7 -7
- package/lib/commonjs/ui/components/AccountMenu.js +0 -598
- package/lib/commonjs/ui/components/AccountMenu.js.map +0 -1
- package/lib/commonjs/ui/components/AccountMenuButton.js +0 -135
- package/lib/commonjs/ui/components/AccountMenuButton.js.map +0 -1
- package/lib/commonjs/ui/components/AccountSwitcher.js +0 -780
- package/lib/commonjs/ui/components/AccountSwitcher.js.map +0 -1
- package/lib/commonjs/ui/components/AnotherDeviceQR.js +0 -116
- package/lib/commonjs/ui/components/AnotherDeviceQR.js.map +0 -1
- package/lib/commonjs/ui/components/ProfileMenu.js +0 -518
- package/lib/commonjs/ui/components/ProfileMenu.js.map +0 -1
- package/lib/commonjs/ui/components/SignInAccountChooser.js +0 -189
- package/lib/commonjs/ui/components/SignInAccountChooser.js.map +0 -1
- package/lib/commonjs/ui/components/SignInModal.js +0 -600
- package/lib/commonjs/ui/components/SignInModal.js.map +0 -1
- package/lib/commonjs/ui/hooks/useOxyAuthSession.js +0 -501
- package/lib/commonjs/ui/hooks/useOxyAuthSession.js.map +0 -1
- package/lib/commonjs/ui/hooks/usePasswordSignIn.js +0 -170
- package/lib/commonjs/ui/hooks/usePasswordSignIn.js.map +0 -1
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +0 -51
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +0 -1
- package/lib/commonjs/ui/screens/OxyAuthScreen.js +0 -312
- package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +0 -1
- package/lib/commonjs/utils/deviceFlowSignIn.js +0 -109
- package/lib/commonjs/utils/deviceFlowSignIn.js.map +0 -1
- package/lib/module/ui/components/AccountMenu.js +0 -593
- package/lib/module/ui/components/AccountMenu.js.map +0 -1
- package/lib/module/ui/components/AccountMenuButton.js +0 -130
- package/lib/module/ui/components/AccountMenuButton.js.map +0 -1
- package/lib/module/ui/components/AccountSwitcher.js +0 -774
- package/lib/module/ui/components/AccountSwitcher.js.map +0 -1
- package/lib/module/ui/components/AnotherDeviceQR.js +0 -110
- package/lib/module/ui/components/AnotherDeviceQR.js.map +0 -1
- package/lib/module/ui/components/ProfileMenu.js +0 -514
- package/lib/module/ui/components/ProfileMenu.js.map +0 -1
- package/lib/module/ui/components/SignInAccountChooser.js +0 -183
- package/lib/module/ui/components/SignInAccountChooser.js.map +0 -1
- package/lib/module/ui/components/SignInModal.js +0 -591
- package/lib/module/ui/components/SignInModal.js.map +0 -1
- package/lib/module/ui/hooks/useOxyAuthSession.js +0 -495
- package/lib/module/ui/hooks/useOxyAuthSession.js.map +0 -1
- package/lib/module/ui/hooks/usePasswordSignIn.js +0 -165
- package/lib/module/ui/hooks/usePasswordSignIn.js.map +0 -1
- package/lib/module/ui/screens/AccountSwitcherScreen.js +0 -48
- package/lib/module/ui/screens/AccountSwitcherScreen.js.map +0 -1
- package/lib/module/ui/screens/OxyAuthScreen.js +0 -306
- package/lib/module/ui/screens/OxyAuthScreen.js.map +0 -1
- package/lib/module/utils/deviceFlowSignIn.js +0 -106
- package/lib/module/utils/deviceFlowSignIn.js.map +0 -1
- package/lib/typescript/commonjs/ui/components/AccountMenu.d.ts +0 -47
- package/lib/typescript/commonjs/ui/components/AccountMenu.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/components/AccountMenuButton.d.ts +0 -26
- package/lib/typescript/commonjs/ui/components/AccountMenuButton.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/components/AccountSwitcher.d.ts +0 -46
- package/lib/typescript/commonjs/ui/components/AccountSwitcher.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/components/AnotherDeviceQR.d.ts +0 -34
- package/lib/typescript/commonjs/ui/components/AnotherDeviceQR.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/components/ProfileMenu.d.ts +0 -49
- package/lib/typescript/commonjs/ui/components/ProfileMenu.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/components/SignInAccountChooser.d.ts +0 -29
- package/lib/typescript/commonjs/ui/components/SignInAccountChooser.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/components/SignInModal.d.ts +0 -28
- package/lib/typescript/commonjs/ui/components/SignInModal.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/hooks/useOxyAuthSession.d.ts +0 -105
- package/lib/typescript/commonjs/ui/hooks/useOxyAuthSession.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/hooks/usePasswordSignIn.d.ts +0 -31
- package/lib/typescript/commonjs/ui/hooks/usePasswordSignIn.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/screens/AccountSwitcherScreen.d.ts +0 -11
- package/lib/typescript/commonjs/ui/screens/AccountSwitcherScreen.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/screens/OxyAuthScreen.d.ts +0 -22
- package/lib/typescript/commonjs/ui/screens/OxyAuthScreen.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/deviceFlowSignIn.d.ts +0 -97
- package/lib/typescript/commonjs/utils/deviceFlowSignIn.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/AccountMenu.d.ts +0 -47
- package/lib/typescript/module/ui/components/AccountMenu.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/AccountMenuButton.d.ts +0 -26
- package/lib/typescript/module/ui/components/AccountMenuButton.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/AccountSwitcher.d.ts +0 -46
- package/lib/typescript/module/ui/components/AccountSwitcher.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/AnotherDeviceQR.d.ts +0 -34
- package/lib/typescript/module/ui/components/AnotherDeviceQR.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/ProfileMenu.d.ts +0 -49
- package/lib/typescript/module/ui/components/ProfileMenu.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/SignInAccountChooser.d.ts +0 -29
- package/lib/typescript/module/ui/components/SignInAccountChooser.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/SignInModal.d.ts +0 -28
- package/lib/typescript/module/ui/components/SignInModal.d.ts.map +0 -1
- package/lib/typescript/module/ui/hooks/useOxyAuthSession.d.ts +0 -105
- package/lib/typescript/module/ui/hooks/useOxyAuthSession.d.ts.map +0 -1
- package/lib/typescript/module/ui/hooks/usePasswordSignIn.d.ts +0 -31
- package/lib/typescript/module/ui/hooks/usePasswordSignIn.d.ts.map +0 -1
- package/lib/typescript/module/ui/screens/AccountSwitcherScreen.d.ts +0 -11
- package/lib/typescript/module/ui/screens/AccountSwitcherScreen.d.ts.map +0 -1
- package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts +0 -22
- package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts.map +0 -1
- package/lib/typescript/module/utils/deviceFlowSignIn.d.ts +0 -97
- package/lib/typescript/module/utils/deviceFlowSignIn.d.ts.map +0 -1
- package/src/ui/components/AccountMenu.tsx +0 -645
- package/src/ui/components/AccountMenuButton.tsx +0 -126
- package/src/ui/components/AccountSwitcher.tsx +0 -751
- package/src/ui/components/AnotherDeviceQR.tsx +0 -119
- package/src/ui/components/ProfileMenu.tsx +0 -564
- package/src/ui/components/SignInAccountChooser.tsx +0 -162
- package/src/ui/components/SignInModal.tsx +0 -530
- package/src/ui/hooks/useOxyAuthSession.ts +0 -635
- package/src/ui/hooks/usePasswordSignIn.ts +0 -207
- package/src/ui/screens/AccountSwitcherScreen.tsx +0 -43
- package/src/ui/screens/OxyAuthScreen.tsx +0 -324
- package/src/utils/__tests__/deviceFlowSignIn.test.ts +0 -231
- package/src/utils/deviceFlowSignIn.ts +0 -152
|
@@ -28,7 +28,7 @@ export const mutationKeys = {
|
|
|
28
28
|
updateDeviceName: ['mutation', 'session', 'updateDeviceName'],
|
|
29
29
|
removeDevice: ['mutation', 'session', 'removeDevice']
|
|
30
30
|
},
|
|
31
|
-
// Connected apps (
|
|
31
|
+
// Connected apps (OAuth grants)
|
|
32
32
|
connectedApps: {
|
|
33
33
|
revoke: ['mutation', 'connectedApps', 'revoke']
|
|
34
34
|
}
|
|
@@ -99,7 +99,7 @@ export const useUpdateProfile = () => {
|
|
|
99
99
|
refreshAvatarInStore(activeSessionId, updates.avatar, oxyServices);
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
-
// Invalidate all related queries so every consumer (
|
|
102
|
+
// Invalidate all related queries so every consumer (the account dialog,
|
|
103
103
|
// session lists, managed accounts, etc.) refetches the fresh profile.
|
|
104
104
|
// This is critical right after `username` is set the first time, when
|
|
105
105
|
// every cached "session profile" still reports the user as unnamed.
|
|
@@ -624,12 +624,12 @@ export const useUpdateUserPreferences = () => {
|
|
|
624
624
|
};
|
|
625
625
|
|
|
626
626
|
/**
|
|
627
|
-
* Revoke the
|
|
628
|
-
* Removes the
|
|
629
|
-
* "Connected apps" list — next sign-in
|
|
627
|
+
* Revoke the current user's grant for a connected application (by its
|
|
628
|
+
* `applicationId`). Removes the grant so the app no longer appears in the user's
|
|
629
|
+
* "Connected apps" list — next sign-in for that app will require explicit
|
|
630
630
|
* re-consent.
|
|
631
631
|
*/
|
|
632
|
-
export const
|
|
632
|
+
export const useRevokeConnectedApp = () => {
|
|
633
633
|
const {
|
|
634
634
|
oxyServices,
|
|
635
635
|
activeSessionId
|
|
@@ -637,14 +637,14 @@ export const useRevokeAuthorizedApp = () => {
|
|
|
637
637
|
const queryClient = useQueryClient();
|
|
638
638
|
return useMutation({
|
|
639
639
|
mutationKey: [...mutationKeys.connectedApps.revoke],
|
|
640
|
-
mutationFn: async
|
|
641
|
-
return authenticatedApiCall(oxyServices, activeSessionId, () => oxyServices.
|
|
640
|
+
mutationFn: async applicationId => {
|
|
641
|
+
return authenticatedApiCall(oxyServices, activeSessionId, () => oxyServices.revokeAppGrant(applicationId));
|
|
642
642
|
},
|
|
643
643
|
onSuccess: () => {
|
|
644
644
|
invalidateConnectedAppsQueries(queryClient);
|
|
645
645
|
},
|
|
646
646
|
onError: error => {
|
|
647
|
-
toast.error(error instanceof Error ? error.message : 'Failed to revoke
|
|
647
|
+
toast.error(error instanceof Error ? error.message : 'Failed to revoke connected app');
|
|
648
648
|
}
|
|
649
649
|
});
|
|
650
650
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMutation","useQueryClient","authenticatedApiCall","queryKeys","invalidateAccountQueries","invalidateConnectedAppsQueries","invalidateUserQueries","invalidateSessionQueries","mutationKeys","useOxy","toast","refreshAvatarInStore","useAuthStore","useUpdateProfile","oxyServices","activeSessionId","user","queryClient","mutationKey","account","updateProfile","mutationFn","updates","onMutate","cancelQueries","queryKey","accounts","current","previousUser","getQueryData","optimisticUser","name","setQueryData","users","profile","onError","error","context","changedKeys","Object","keys","partialRollback","reduce","acc","key","currentProfile","Error","message","onSuccess","data","getState","setUser","avatar","useUploadAvatar","uploadAvatar","file","uploadResult","assetUpload","fileId","id","uri","_file","previousAvatar","success","useUpdateAccountSettings","mutation","updateSettings","currentUser","userId","updatedPrivacy","updatePrivacySettings","privacySettings","settings","previousPrivacy","partialPrivacyRollback","onSettled","invalidateQueries","mutate","mutateAsync","useUpdatePrivacySettings","targetUserId","privacy","previousPrivacySettings","length","currentPrivacy","incoming","requested","previous","updatedUser","useUpdateNotificationPreferences","updateNotificationPreferences","preferences","notificationPreferences","_preferences","useUpdateUserPreferences","updateUserPreferences","userPreferences","useRevokeAuthorizedApp","connectedApps","revoke","origin","revokeAuthorizedApp","useUploadFile","uploadFile","visibility","metadata","onProgress"],"sourceRoot":"../../../../../src","sources":["ui/hooks/mutations/useAccountMutations.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useMutation","useQueryClient","authenticatedApiCall","queryKeys","invalidateAccountQueries","invalidateConnectedAppsQueries","invalidateUserQueries","invalidateSessionQueries","mutationKeys","useOxy","toast","refreshAvatarInStore","useAuthStore","useUpdateProfile","oxyServices","activeSessionId","user","queryClient","mutationKey","account","updateProfile","mutationFn","updates","onMutate","cancelQueries","queryKey","accounts","current","previousUser","getQueryData","optimisticUser","name","setQueryData","users","profile","onError","error","context","changedKeys","Object","keys","partialRollback","reduce","acc","key","currentProfile","Error","message","onSuccess","data","getState","setUser","avatar","useUploadAvatar","uploadAvatar","file","uploadResult","assetUpload","fileId","id","uri","_file","previousAvatar","success","useUpdateAccountSettings","mutation","updateSettings","currentUser","userId","updatedPrivacy","updatePrivacySettings","privacySettings","settings","previousPrivacy","partialPrivacyRollback","onSettled","invalidateQueries","mutate","mutateAsync","useUpdatePrivacySettings","targetUserId","privacy","previousPrivacySettings","length","currentPrivacy","incoming","requested","previous","updatedUser","useUpdateNotificationPreferences","updateNotificationPreferences","preferences","notificationPreferences","_preferences","useUpdateUserPreferences","updateUserPreferences","userPreferences","useRevokeConnectedApp","connectedApps","revoke","applicationId","revokeAppGrant","useUploadFile","uploadFile","visibility","metadata","onProgress"],"sourceRoot":"../../../../../src","sources":["ui/hooks/mutations/useAccountMutations.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -64,7 +64,7 @@ export const queryKeys = {
|
|
|
64
64
|
all: ['storage'],
|
|
65
65
|
usage: accountScope => [...queryKeys.storage.all, 'usage', accountScope]
|
|
66
66
|
},
|
|
67
|
-
// Connected apps (
|
|
67
|
+
// Connected apps (OAuth grants the user has authorized)
|
|
68
68
|
connectedApps: {
|
|
69
69
|
all: ['connectedApps'],
|
|
70
70
|
list: () => [...queryKeys.connectedApps.all, 'list']
|
|
@@ -213,12 +213,11 @@ export const useUsersBySessions = (sessionIds, options) => {
|
|
|
213
213
|
};
|
|
214
214
|
|
|
215
215
|
/**
|
|
216
|
-
* List the
|
|
217
|
-
*
|
|
218
|
-
*
|
|
219
|
-
* RP catalog. Drives the "Connected apps" management screen.
|
|
216
|
+
* List the third-party OAuth applications the current user has connected via
|
|
217
|
+
* the consent flow (`GET /auth/grants`). Drives the "Connected apps" management
|
|
218
|
+
* screen.
|
|
220
219
|
*/
|
|
221
|
-
export const
|
|
220
|
+
export const useConnectedApps = options => {
|
|
222
221
|
const {
|
|
223
222
|
oxyServices,
|
|
224
223
|
activeSessionId,
|
|
@@ -227,7 +226,7 @@ export const useAuthorizedApps = options => {
|
|
|
227
226
|
return useQuery({
|
|
228
227
|
queryKey: queryKeys.connectedApps.list(),
|
|
229
228
|
queryFn: async () => {
|
|
230
|
-
return authenticatedApiCall(oxyServices, activeSessionId, () => oxyServices.
|
|
229
|
+
return authenticatedApiCall(oxyServices, activeSessionId, () => oxyServices.listConnectedApps());
|
|
231
230
|
},
|
|
232
231
|
enabled: options?.enabled !== false && isAuthenticated,
|
|
233
232
|
staleTime: 30 * 1000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useQuery","useQueries","useQueryClient","authenticatedApiCall","queryKeys","mutationKeys","useOxy","useAuthStore","useUserProfile","sessionId","options","oxyServices","queryKey","users","profile","queryFn","Error","getUserBySession","enabled","staleTime","gcTime","useUserProfiles","sessionIds","queries","map","results","getUsersBySessions","user","useCurrentUser","activeSessionId","isAuthenticated","queryClient","query","accounts","current","data","userWriteMutationsInFlight","isMutating","mutationKey","account","updateProfile","uploadAvatar","updateSettings","updatePrivacySettings","storedUser","getState","incomingUpdatedAt","parseUpdatedAt","updatedAt","storedUpdatedAt","setUser","value","Number","isFinite","Date","t","getTime","parse","useUserById","userId","detail","getUserById","useUserByUsername","username","details","getProfileByUsername","useUsersBySessions","list","length","
|
|
1
|
+
{"version":3,"names":["useEffect","useQuery","useQueries","useQueryClient","authenticatedApiCall","queryKeys","mutationKeys","useOxy","useAuthStore","useUserProfile","sessionId","options","oxyServices","queryKey","users","profile","queryFn","Error","getUserBySession","enabled","staleTime","gcTime","useUserProfiles","sessionIds","queries","map","results","getUsersBySessions","user","useCurrentUser","activeSessionId","isAuthenticated","queryClient","query","accounts","current","data","userWriteMutationsInFlight","isMutating","mutationKey","account","updateProfile","uploadAvatar","updateSettings","updatePrivacySettings","storedUser","getState","incomingUpdatedAt","parseUpdatedAt","updatedAt","storedUpdatedAt","setUser","value","Number","isFinite","Date","t","getTime","parse","useUserById","userId","detail","getUserById","useUserByUsername","username","details","getProfileByUsername","useUsersBySessions","list","length","useConnectedApps","connectedApps","listConnectedApps","usePrivacySettings","targetUserId","id","privacy","settings","getPrivacySettings"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useAccountQueries.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -28,7 +28,6 @@
|
|
|
28
28
|
import { useCallback } from 'react';
|
|
29
29
|
import { useOxy } from "../context/OxyContext.js";
|
|
30
30
|
import { isWebBrowser } from "../utils/isWebBrowser.js";
|
|
31
|
-
import { showSignInModal } from "../components/SignInModal.js";
|
|
32
31
|
/**
|
|
33
32
|
* Unified auth hook for all Oxy apps
|
|
34
33
|
*
|
|
@@ -57,43 +56,33 @@ export function useAuth() {
|
|
|
57
56
|
hasIdentity,
|
|
58
57
|
getPublicKey,
|
|
59
58
|
showBottomSheet,
|
|
60
|
-
openAvatarPicker
|
|
59
|
+
openAvatarPicker,
|
|
60
|
+
openAccountDialog
|
|
61
61
|
} = useOxy();
|
|
62
62
|
const signIn = useCallback(async publicKey => {
|
|
63
|
-
//
|
|
64
|
-
//
|
|
65
|
-
// already restored a session if one existed; an explicit click presents the
|
|
66
|
-
// SDK sign-in surface (password / QR device flow / add account).
|
|
67
|
-
if (isWebBrowser() && !publicKey) {
|
|
68
|
-
showSignInModal();
|
|
69
|
-
// Resolves when the modal commits a session; the caller typically reacts
|
|
70
|
-
// to `isAuthenticated` rather than this promise.
|
|
71
|
-
return new Promise(() => undefined);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
// Native: use the cryptographic identity directly when a public key is given.
|
|
63
|
+
// Native: sign in directly with the cryptographic identity when a public key
|
|
64
|
+
// is provided, or an existing keychain identity is found.
|
|
75
65
|
if (publicKey) {
|
|
76
66
|
return oxySignIn(publicKey);
|
|
77
67
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
68
|
+
if (!isWebBrowser()) {
|
|
69
|
+
const hasExisting = await hasIdentity();
|
|
70
|
+
if (hasExisting) {
|
|
71
|
+
const existingKey = await getPublicKey();
|
|
72
|
+
if (existingKey) {
|
|
73
|
+
return oxySignIn(existingKey);
|
|
74
|
+
}
|
|
85
75
|
}
|
|
86
76
|
}
|
|
87
77
|
|
|
88
|
-
//
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
}, [oxySignIn, hasIdentity, getPublicKey, showBottomSheet]);
|
|
78
|
+
// Web, or native without a keychain identity: open the unified account dialog
|
|
79
|
+
// on its sign-in view (device flow / QR / password hand-off). There is NO
|
|
80
|
+
// automatic navigation to a login page — the device-first cold boot already
|
|
81
|
+
// restored a session if one existed. The caller reacts to `isAuthenticated`,
|
|
82
|
+
// so this promise intentionally never resolves.
|
|
83
|
+
openAccountDialog('signin');
|
|
84
|
+
return new Promise(() => undefined);
|
|
85
|
+
}, [oxySignIn, hasIdentity, getPublicKey, openAccountDialog]);
|
|
97
86
|
const signOut = useCallback(async () => {
|
|
98
87
|
await logout();
|
|
99
88
|
}, [logout]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useOxy","isWebBrowser","
|
|
1
|
+
{"version":3,"names":["useCallback","useOxy","isWebBrowser","useAuth","user","isAuthenticated","isLoading","isTokenReady","hasAccessToken","canUsePrivateApi","isPrivateApiPending","isAuthResolved","error","signIn","oxySignIn","logout","logoutAll","refreshSessions","oxyServices","hasIdentity","getPublicKey","showBottomSheet","openAvatarPicker","openAccountDialog","publicKey","hasExisting","existingKey","Promise","undefined","signOut","signOutAll","refresh","isReady"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAuth.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,WAAW,QAAQ,OAAO;AACnC,SAASC,MAAM,QAAQ,0BAAuB;AAE9C,SAASC,YAAY,QAAQ,0BAAuB;AAkFpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,OAAOA,CAAA,EAAkB;EACvC,MAAM;IACJC,IAAI;IACJC,eAAe;IACfC,SAAS;IACTC,YAAY;IACZC,cAAc;IACdC,gBAAgB;IAChBC,mBAAmB;IACnBC,cAAc;IACdC,KAAK;IACLC,MAAM,EAAEC,SAAS;IACjBC,MAAM;IACNC,SAAS;IACTC,eAAe;IACfC,WAAW;IACXC,WAAW;IACXC,YAAY;IACZC,eAAe;IACfC,gBAAgB;IAChBC;EACF,CAAC,GAAGtB,MAAM,CAAC,CAAC;EAEZ,MAAMY,MAAM,GAAGb,WAAW,CAAC,MAAOwB,SAAkB,IAAoB;IACtE;IACA;IACA,IAAIA,SAAS,EAAE;MACb,OAAOV,SAAS,CAACU,SAAS,CAAC;IAC7B;IACA,IAAI,CAACtB,YAAY,CAAC,CAAC,EAAE;MACnB,MAAMuB,WAAW,GAAG,MAAMN,WAAW,CAAC,CAAC;MACvC,IAAIM,WAAW,EAAE;QACf,MAAMC,WAAW,GAAG,MAAMN,YAAY,CAAC,CAAC;QACxC,IAAIM,WAAW,EAAE;UACf,OAAOZ,SAAS,CAACY,WAAW,CAAC;QAC/B;MACF;IACF;;IAEA;IACA;IACA;IACA;IACA;IACAH,iBAAiB,CAAC,QAAQ,CAAC;IAC3B,OAAO,IAAII,OAAO,CAAO,MAAMC,SAAS,CAAC;EAC3C,CAAC,EAAE,CAACd,SAAS,EAAEK,WAAW,EAAEC,YAAY,EAAEG,iBAAiB,CAAC,CAAC;EAE7D,MAAMM,OAAO,GAAG7B,WAAW,CAAC,YAA2B;IACrD,MAAMe,MAAM,CAAC,CAAC;EAChB,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,MAAMe,UAAU,GAAG9B,WAAW,CAAC,YAA2B;IACxD,MAAMgB,SAAS,CAAC,CAAC;EACnB,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,MAAMe,OAAO,GAAG/B,WAAW,CAAC,YAA2B;IACrD,MAAMiB,eAAe,CAAC,CAAC;EACzB,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAErB,OAAO;IACL;IACAb,IAAI;IACJC,eAAe;IACfC,SAAS,EAAEA,SAAS,IAAI,CAACK,cAAc;IACvCqB,OAAO,EAAEzB,YAAY;IACrBC,cAAc;IACdC,gBAAgB;IAChBC,mBAAmB;IACnBC,cAAc;IACdC,KAAK;IAEL;IACAC,MAAM;IACNgB,OAAO;IACPC,UAAU;IACVC,OAAO;IAEP;IACAb,WAAW;IACXG,eAAe;IACfC;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -1,283 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useMemo } from 'react';
|
|
4
|
-
import { useQuery } from '@tanstack/react-query';
|
|
5
|
-
import { getAccountDisplayName, getAccountFallbackHandle } from '@oxyhq/core';
|
|
3
|
+
import { useCallback, useMemo, useSyncExternalStore } from 'react';
|
|
6
4
|
import { useOxy } from "../context/OxyContext.js";
|
|
7
|
-
import { useI18n } from "./useI18n.js";
|
|
8
|
-
import { queryKeys } from "./queries/queryKeys.js";
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* The per-account user shape carried by a {@link SwitchableAccount}. The SDK's
|
|
12
|
-
* canonical {@link User} document — either the freshest `useOxy().user` (the
|
|
13
|
-
* active row), a profile resolved via `oxyServices.getUsersByIds()` (every other
|
|
14
|
-
* device row), or the `account` document embedded in an account-graph node.
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* One account the signed-in user can switch INTO, in the uniform switch model.
|
|
19
|
-
*
|
|
20
|
-
* A switchable account is either a device sign-in, an account-graph node (owned
|
|
21
|
-
* org / shared-with-you), or BOTH (an account that has been switched into
|
|
22
|
-
* becomes a device session while still being a graph node — the two are deduped
|
|
23
|
-
* into a single row). Every row carries a canonical `accountId` (the uniform
|
|
24
|
-
* switch key passed to `switchToAccount`); `sessionId` is present IFF the
|
|
25
|
-
* account is currently signed in on THIS device.
|
|
26
|
-
*/
|
|
27
|
-
|
|
28
|
-
/** The minimal device-session shape {@link buildSwitchableAccounts} reads. */
|
|
29
|
-
|
|
30
5
|
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
* Primary signal: `entry.sessionId === activeSessionId` — both are projected
|
|
34
|
-
* from the same `SessionClient` state, so this normally matches exactly.
|
|
35
|
-
* Fallbacks exist only to bridge the brief window between the two sequential
|
|
36
|
-
* `updateSessions` / `setActiveSessionId` calls in `OxyContext.syncFromClient`,
|
|
37
|
-
* applied only when the `sessionId` match found nothing AND the user is
|
|
38
|
-
* authenticated:
|
|
39
|
-
* 1. Match the live `user.id` against each entry's per-account user id.
|
|
40
|
-
* 2. If still nothing and there is exactly one account, mark that one current.
|
|
41
|
-
*
|
|
42
|
-
* At most ONE entry is ever marked current. Runs over DEVICE rows only (graph
|
|
43
|
-
* rows are never active — the active account is always a device session), so the
|
|
44
|
-
* single-account fallback counts device rows.
|
|
45
|
-
*
|
|
46
|
-
* Pure & side-effect free so it is unit-testable without rendering React.
|
|
6
|
+
* Stable empty snapshot for the no-provider loading state, so `useSyncExternalStore`
|
|
7
|
+
* always has a getSnapshot that returns a constant reference before mount.
|
|
47
8
|
*/
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
const byUser = bySession.map(account => {
|
|
62
|
-
if (!matched && account.user.id === liveUserId) {
|
|
63
|
-
matched = true;
|
|
64
|
-
return {
|
|
65
|
-
...account,
|
|
66
|
-
isCurrent: true
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
return account;
|
|
70
|
-
});
|
|
71
|
-
if (matched) {
|
|
72
|
-
return byUser;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
// Authenticated, nothing matched, but there is exactly one account → it must
|
|
77
|
-
// be the current one.
|
|
78
|
-
if (bySession.length === 1) {
|
|
79
|
-
return [{
|
|
80
|
-
...bySession[0],
|
|
81
|
-
isCurrent: true
|
|
82
|
-
}];
|
|
9
|
+
const EMPTY_SNAPSHOT = {
|
|
10
|
+
view: 'accounts',
|
|
11
|
+
accounts: [],
|
|
12
|
+
activeAccountId: null,
|
|
13
|
+
loading: false,
|
|
14
|
+
error: null,
|
|
15
|
+
switchingAccountId: null,
|
|
16
|
+
signIn: {
|
|
17
|
+
phase: 'idle',
|
|
18
|
+
authorizeCode: null,
|
|
19
|
+
qrPayload: null,
|
|
20
|
+
expiresAt: null,
|
|
21
|
+
error: null
|
|
83
22
|
}
|
|
84
|
-
|
|
85
|
-
}
|
|
23
|
+
};
|
|
86
24
|
|
|
87
25
|
/**
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
* (
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
const {
|
|
99
|
-
sessions,
|
|
100
|
-
activeSessionId,
|
|
101
|
-
liveUser,
|
|
102
|
-
isAuthenticated,
|
|
103
|
-
graph,
|
|
104
|
-
profilesById,
|
|
105
|
-
locale,
|
|
106
|
-
resolveAvatarUrl
|
|
107
|
-
} = input;
|
|
108
|
-
|
|
109
|
-
// Nothing is switchable when signed out — never surface a lingering device
|
|
110
|
-
// session or graph node once the user is unauthenticated.
|
|
111
|
-
if (!isAuthenticated) {
|
|
112
|
-
return [];
|
|
113
|
-
}
|
|
114
|
-
const toRow = (accountUser, opts) => {
|
|
115
|
-
const displayName = getAccountDisplayName(accountUser, locale);
|
|
116
|
-
const handle = getAccountFallbackHandle(accountUser);
|
|
117
|
-
const secondaryHandle = handle ? `@${handle}` : null;
|
|
118
|
-
return {
|
|
119
|
-
accountId: accountUser.id?.toString() ?? '',
|
|
120
|
-
sessionId: opts.sessionId,
|
|
121
|
-
authuser: opts.authuser,
|
|
122
|
-
isCurrent: Boolean(opts.sessionId) && opts.sessionId === activeSessionId,
|
|
123
|
-
onDevice: Boolean(opts.sessionId),
|
|
124
|
-
relationship: opts.relationship,
|
|
125
|
-
kind: opts.kind,
|
|
126
|
-
parentAccountId: opts.parentAccountId,
|
|
127
|
-
callerMembership: opts.callerMembership,
|
|
128
|
-
displayName,
|
|
129
|
-
// Real email, or the `@handle` fallback (NEVER synthesized).
|
|
130
|
-
email: accountUser.email ?? secondaryHandle,
|
|
131
|
-
avatarUrl: resolveAvatarUrl(accountUser.avatar),
|
|
132
|
-
color: accountUser.color ?? null,
|
|
133
|
-
user: accountUser
|
|
134
|
-
};
|
|
135
|
-
};
|
|
136
|
-
|
|
137
|
-
// --- Device rows ---
|
|
138
|
-
const built = sessions.flatMap(session => {
|
|
139
|
-
const isCurrent = session.sessionId === activeSessionId;
|
|
140
|
-
// The active row always uses the live `user` — freshest available —
|
|
141
|
-
// regardless of whether the batch profile fetch has resolved yet.
|
|
142
|
-
const accountUser = isCurrent && liveUser ? liveUser : session.userId ? profilesById.get(session.userId) : undefined;
|
|
143
|
-
if (!accountUser) {
|
|
144
|
-
return [];
|
|
145
|
-
}
|
|
146
|
-
return [toRow(accountUser, {
|
|
147
|
-
sessionId: session.sessionId,
|
|
148
|
-
authuser: session.authuser
|
|
149
|
-
})];
|
|
150
|
-
});
|
|
151
|
-
const flagged = markCurrentAccount(built, activeSessionId, liveUser?.id ?? null, isAuthenticated);
|
|
152
|
-
|
|
153
|
-
// The signed-in user must ALWAYS be represented, even before the device
|
|
154
|
-
// session set has synced (e.g. immediately after cold boot). Synthesize a
|
|
155
|
-
// single current row from the live `useOxy().user` in that case.
|
|
156
|
-
const deviceRows = flagged.length === 0 && isAuthenticated && liveUser && activeSessionId ? [toRow(liveUser, {
|
|
157
|
-
sessionId: activeSessionId
|
|
158
|
-
})] : flagged;
|
|
159
|
-
|
|
160
|
-
// --- Merge graph nodes, deduping by account id ---
|
|
161
|
-
const byAccountId = new Map();
|
|
162
|
-
const order = [];
|
|
163
|
-
const remember = row => {
|
|
164
|
-
if (!row.accountId || byAccountId.has(row.accountId)) {
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
byAccountId.set(row.accountId, row);
|
|
168
|
-
order.push(row.accountId);
|
|
169
|
-
};
|
|
170
|
-
for (const row of deviceRows) {
|
|
171
|
-
remember(row);
|
|
172
|
-
}
|
|
173
|
-
for (const node of graph) {
|
|
174
|
-
const existing = byAccountId.get(node.accountId);
|
|
175
|
-
if (existing) {
|
|
176
|
-
// On-device account that is ALSO in the graph: enrich the device row
|
|
177
|
-
// with graph metadata; keep its (freshest) profile + sessionId.
|
|
178
|
-
byAccountId.set(node.accountId, {
|
|
179
|
-
...existing,
|
|
180
|
-
relationship: node.relationship,
|
|
181
|
-
kind: node.kind,
|
|
182
|
-
parentAccountId: node.parentAccountId,
|
|
183
|
-
callerMembership: node.callerMembership
|
|
184
|
-
});
|
|
185
|
-
continue;
|
|
186
|
-
}
|
|
187
|
-
// Graph-only account (owned org / shared, not yet a device session).
|
|
188
|
-
remember(toRow(node.account, {
|
|
189
|
-
relationship: node.relationship,
|
|
190
|
-
kind: node.kind,
|
|
191
|
-
parentAccountId: node.parentAccountId,
|
|
192
|
-
callerMembership: node.callerMembership
|
|
193
|
-
}));
|
|
194
|
-
}
|
|
195
|
-
return order.flatMap(id => {
|
|
196
|
-
const row = byAccountId.get(id);
|
|
197
|
-
return row ? [row] : [];
|
|
198
|
-
});
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
/**
|
|
202
|
-
* Resolve every account the signed-in user can switch into — device sign-ins
|
|
203
|
-
* AND linked graph accounts (owned orgs + shared-with-you) — as one flat list
|
|
204
|
-
* with real per-account name / email / avatar / color, deduped by account id.
|
|
205
|
-
*
|
|
206
|
-
* ## Data sources
|
|
207
|
-
*
|
|
208
|
-
* - Device sign-ins: `useOxy().sessions` — a `ClientSession[]` projected by
|
|
209
|
-
* `OxyContext.syncFromClient` from the server-authoritative `SessionClient`.
|
|
210
|
-
* Each session carries only `sessionId` + `userId`, so this hook additionally
|
|
211
|
-
* fetches every device account's profile via `oxyServices.getUsersByIds()`.
|
|
212
|
-
* The ACTIVE row always uses `useOxy().user` directly (the freshest copy).
|
|
213
|
-
* - Linked accounts: `useOxy().accounts` — the `AccountNode[]` graph the context
|
|
214
|
-
* loads from `GET /accounts`. Each node already embeds its `account` `User`
|
|
215
|
-
* document, so graph-only rows need no extra fetch.
|
|
216
|
-
*
|
|
217
|
-
* An account present as BOTH a device session and a graph node is deduped into
|
|
218
|
-
* ONE row (see {@link buildSwitchableAccounts}). EVERY row switches the same
|
|
219
|
-
* way — through `useOxy().switchToAccount(row.accountId)`.
|
|
220
|
-
*
|
|
221
|
-
* ## Error handling
|
|
222
|
-
*
|
|
223
|
-
* `getUsersByIds()` resolves to `[]` on a failed chunk (logged internally)
|
|
224
|
-
* rather than throwing. Device accounts whose profile could not be resolved are
|
|
225
|
-
* omitted until a subsequent fetch succeeds (except the active one, which never
|
|
226
|
-
* depends on this fetch); graph accounts are unaffected.
|
|
26
|
+
* Every account the signed-in user can switch into — device sign-ins AND linked
|
|
27
|
+
* graph accounts (owned orgs + shared-with-you) — as one flat, deduped list with
|
|
28
|
+
* real per-account name / email / avatar / color.
|
|
29
|
+
*
|
|
30
|
+
* This is a thin binding over the shared `AccountDialogController` in
|
|
31
|
+
* `@oxyhq/core` (the SAME headless source the {@link OxyAccountDialog} renders),
|
|
32
|
+
* so there is ONE projection (`projectSwitchableAccounts`) and one switch path
|
|
33
|
+
* (`controller.switchTo`) across the whole SDK — the local duplicate projection
|
|
34
|
+
* this hook used to own has been removed. Every switch routes through
|
|
35
|
+
* `useOxy().switchToAccount(accountId)` (or the dialog's row press).
|
|
227
36
|
*/
|
|
228
37
|
export function useSwitchableAccounts() {
|
|
229
38
|
const {
|
|
230
|
-
|
|
231
|
-
sessions,
|
|
232
|
-
activeSessionId,
|
|
233
|
-
user,
|
|
234
|
-
isAuthenticated,
|
|
235
|
-
accounts: graph
|
|
39
|
+
accountDialogController: controller
|
|
236
40
|
} = useOxy();
|
|
237
|
-
const
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
const ids = new Set();
|
|
245
|
-
for (const session of sessions ?? []) {
|
|
246
|
-
if (session.userId) {
|
|
247
|
-
ids.add(session.userId);
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
return Array.from(ids).sort();
|
|
251
|
-
}, [sessions]);
|
|
252
|
-
const profilesQuery = useQuery({
|
|
253
|
-
queryKey: queryKeys.users.list(accountIds),
|
|
254
|
-
queryFn: () => oxyServices.getUsersByIds(accountIds),
|
|
255
|
-
enabled: isAuthenticated && accountIds.length > 0,
|
|
256
|
-
staleTime: 5 * 60 * 1000,
|
|
257
|
-
// 5 minutes — matches useUserProfile's convention
|
|
258
|
-
gcTime: 30 * 60 * 1000 // 30 minutes
|
|
259
|
-
});
|
|
260
|
-
const profilesById = useMemo(() => {
|
|
261
|
-
const map = new Map();
|
|
262
|
-
for (const profile of profilesQuery.data ?? []) {
|
|
263
|
-
map.set(profile.id, profile);
|
|
264
|
-
}
|
|
265
|
-
return map;
|
|
266
|
-
}, [profilesQuery.data]);
|
|
267
|
-
const accounts = useMemo(() => buildSwitchableAccounts({
|
|
268
|
-
sessions: sessions ?? [],
|
|
269
|
-
activeSessionId: activeSessionId ?? null,
|
|
270
|
-
liveUser: user ?? null,
|
|
271
|
-
isAuthenticated,
|
|
272
|
-
graph: graph ?? [],
|
|
273
|
-
profilesById,
|
|
274
|
-
locale,
|
|
275
|
-
resolveAvatarUrl: avatar => avatar ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined
|
|
276
|
-
}), [sessions, activeSessionId, user, isAuthenticated, graph, profilesById, locale, oxyServices]);
|
|
41
|
+
const subscribe = useCallback(listener => controller ? controller.subscribe(listener) : () => undefined, [controller]);
|
|
42
|
+
const getSnapshot = useCallback(() => controller ? controller.getSnapshot() : EMPTY_SNAPSHOT, [controller]);
|
|
43
|
+
const snapshot = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
44
|
+
const currentSessionId = useMemo(() => {
|
|
45
|
+
const active = snapshot.accounts.find(account => account.accountId === snapshot.activeAccountId);
|
|
46
|
+
return active?.sessionId ?? null;
|
|
47
|
+
}, [snapshot]);
|
|
277
48
|
return {
|
|
278
|
-
accounts,
|
|
279
|
-
isLoading:
|
|
280
|
-
currentSessionId
|
|
49
|
+
accounts: snapshot.accounts,
|
|
50
|
+
isLoading: snapshot.loading,
|
|
51
|
+
currentSessionId
|
|
281
52
|
};
|
|
282
53
|
}
|
|
283
54
|
//# sourceMappingURL=useSwitchableAccounts.js.map
|