@oxyhq/services 5.17.16 → 5.17.18
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/README.md +32 -38
- package/lib/commonjs/core/CrossDomainAuth.js +277 -0
- package/lib/commonjs/core/CrossDomainAuth.js.map +1 -0
- package/lib/commonjs/core/HttpService.js +82 -15
- package/lib/commonjs/core/HttpService.js.map +1 -1
- package/lib/commonjs/core/OxyServices.base.js +11 -3
- package/lib/commonjs/core/OxyServices.base.js.map +1 -1
- package/lib/commonjs/core/OxyServices.js +4 -1
- package/lib/commonjs/core/OxyServices.js.map +1 -1
- package/lib/commonjs/core/index.js +30 -0
- package/lib/commonjs/core/index.js.map +1 -1
- package/lib/commonjs/core/mixins/OxyServices.assets.js +16 -3
- package/lib/commonjs/core/mixins/OxyServices.assets.js.map +1 -1
- package/lib/commonjs/core/mixins/OxyServices.auth.js +73 -32
- package/lib/commonjs/core/mixins/OxyServices.auth.js.map +1 -1
- package/lib/commonjs/core/mixins/OxyServices.fedcm.js +289 -0
- package/lib/commonjs/core/mixins/OxyServices.fedcm.js.map +1 -0
- package/lib/commonjs/core/mixins/OxyServices.popup.js +352 -0
- package/lib/commonjs/core/mixins/OxyServices.popup.js.map +1 -0
- package/lib/commonjs/core/mixins/OxyServices.redirect.js +378 -0
- package/lib/commonjs/core/mixins/OxyServices.redirect.js.map +1 -0
- package/lib/commonjs/core/mixins/OxyServices.user.js +35 -24
- package/lib/commonjs/core/mixins/OxyServices.user.js.map +1 -1
- package/lib/commonjs/core/mixins/index.js +27 -15
- package/lib/commonjs/core/mixins/index.js.map +1 -1
- package/lib/commonjs/crypto/index.js +30 -0
- package/lib/commonjs/crypto/index.js.map +1 -1
- package/lib/commonjs/crypto/keyManager.js +902 -0
- package/lib/commonjs/crypto/keyManager.js.map +1 -0
- package/lib/commonjs/crypto/polyfill.js +14 -5
- package/lib/commonjs/crypto/polyfill.js.map +1 -1
- package/lib/commonjs/crypto/recoveryPhrase.js +152 -0
- package/lib/commonjs/crypto/recoveryPhrase.js.map +1 -0
- package/lib/commonjs/crypto/signatureService.js +289 -0
- package/lib/commonjs/crypto/signatureService.js.map +1 -0
- package/lib/commonjs/i18n/locales/en-US.json +1 -1
- package/lib/commonjs/index.js +40 -26
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/models/interfaces.js +0 -15
- package/lib/commonjs/models/interfaces.js.map +1 -1
- package/lib/commonjs/ui/components/BottomSheetRouter.js +9 -1
- package/lib/commonjs/ui/components/BottomSheetRouter.js.map +1 -1
- package/lib/commonjs/ui/components/Icon.js.map +1 -1
- package/lib/commonjs/ui/components/IconButton/utils.js.map +1 -1
- package/lib/commonjs/ui/components/OxyProvider.js +41 -11
- package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
- package/lib/commonjs/ui/components/TextField/Adornment/utils.js.map +1 -1
- package/lib/commonjs/ui/components/TextField/helpers.js.map +1 -1
- package/lib/commonjs/ui/components/TouchableRipple/utils.js.map +1 -1
- package/lib/commonjs/ui/components/Typography/AnimatedText.js.map +1 -1
- package/lib/commonjs/ui/context/OxyContext.js +110 -192
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js +150 -19
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useSessionManagement.js +279 -0
- package/lib/commonjs/ui/context/hooks/useSessionManagement.js.map +1 -0
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +78 -64
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +38 -51
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js +3 -3
- package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +18 -12
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/useProfileEditing.js +3 -5
- package/lib/commonjs/ui/hooks/useProfileEditing.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionManagement.js +4 -8
- package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionSocket.js +162 -315
- package/lib/commonjs/ui/hooks/useSessionSocket.js.map +1 -1
- package/lib/commonjs/ui/hooks/useStorage.js +24 -58
- package/lib/commonjs/ui/hooks/useStorage.js.map +1 -1
- package/lib/commonjs/ui/index.js +50 -21
- package/lib/commonjs/ui/index.js.map +1 -1
- package/lib/commonjs/ui/navigation/routes.js +5 -1
- package/lib/commonjs/ui/navigation/routes.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountCenterScreen.js +2 -2
- package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js +29 -24
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +3 -3
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/OxyAuthScreen.js +134 -66
- package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +6 -13
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/stores/accountStore.js +2 -4
- package/lib/commonjs/ui/stores/accountStore.js.map +1 -1
- package/lib/commonjs/ui/stores/authStore.js +45 -32
- package/lib/commonjs/ui/stores/authStore.js.map +1 -1
- package/lib/commonjs/ui/styles/spacing.js +54 -2
- package/lib/commonjs/ui/styles/spacing.js.map +1 -1
- package/lib/commonjs/ui/utils/avatarUtils.js +37 -41
- package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
- package/lib/commonjs/ui/utils/storageHelpers.js.map +1 -1
- package/lib/commonjs/utils/errorUtils.js +13 -0
- package/lib/commonjs/utils/errorUtils.js.map +1 -1
- package/lib/commonjs/utils/validationUtils.js +15 -1
- package/lib/commonjs/utils/validationUtils.js.map +1 -1
- package/lib/module/core/CrossDomainAuth.js +271 -0
- package/lib/module/core/CrossDomainAuth.js.map +1 -0
- package/lib/module/core/HttpService.js +82 -15
- package/lib/module/core/HttpService.js.map +1 -1
- package/lib/module/core/OxyServices.base.js +11 -4
- package/lib/module/core/OxyServices.base.js.map +1 -1
- package/lib/module/core/OxyServices.js +4 -1
- package/lib/module/core/OxyServices.js.map +1 -1
- package/lib/module/core/index.js +6 -1
- package/lib/module/core/index.js.map +1 -1
- package/lib/module/core/mixins/OxyServices.assets.js +16 -3
- package/lib/module/core/mixins/OxyServices.assets.js.map +1 -1
- package/lib/module/core/mixins/OxyServices.auth.js +73 -32
- package/lib/module/core/mixins/OxyServices.auth.js.map +1 -1
- package/lib/module/core/mixins/OxyServices.fedcm.js +286 -0
- package/lib/module/core/mixins/OxyServices.fedcm.js.map +1 -0
- package/lib/module/core/mixins/OxyServices.popup.js +349 -0
- package/lib/module/core/mixins/OxyServices.popup.js.map +1 -0
- package/lib/module/core/mixins/OxyServices.redirect.js +375 -0
- package/lib/module/core/mixins/OxyServices.redirect.js.map +1 -0
- package/lib/module/core/mixins/OxyServices.user.js +35 -24
- package/lib/module/core/mixins/OxyServices.user.js.map +1 -1
- package/lib/module/core/mixins/index.js +15 -3
- package/lib/module/core/mixins/index.js.map +1 -1
- package/lib/module/crypto/index.js +8 -4
- package/lib/module/crypto/index.js.map +1 -1
- package/lib/module/crypto/keyManager.js +899 -0
- package/lib/module/crypto/keyManager.js.map +1 -0
- package/lib/module/crypto/polyfill.js +6 -5
- package/lib/module/crypto/polyfill.js.map +1 -1
- package/lib/module/crypto/recoveryPhrase.js +147 -0
- package/lib/module/crypto/recoveryPhrase.js.map +1 -0
- package/lib/module/crypto/signatureService.js +286 -0
- package/lib/module/crypto/signatureService.js.map +1 -0
- package/lib/module/i18n/locales/en-US.json +1 -1
- package/lib/module/index.js +6 -9
- package/lib/module/index.js.map +1 -1
- package/lib/module/models/interfaces.js +0 -15
- package/lib/module/models/interfaces.js.map +1 -1
- package/lib/module/ui/components/BottomSheetRouter.js +6 -2
- package/lib/module/ui/components/BottomSheetRouter.js.map +1 -1
- package/lib/module/ui/components/Icon.js.map +1 -1
- package/lib/module/ui/components/IconButton/utils.js.map +1 -1
- package/lib/module/ui/components/OxyProvider.js +41 -11
- package/lib/module/ui/components/OxyProvider.js.map +1 -1
- package/lib/module/ui/components/TextField/Adornment/utils.js.map +1 -1
- package/lib/module/ui/components/TextField/helpers.js.map +1 -1
- package/lib/module/ui/components/TouchableRipple/utils.js.map +1 -1
- package/lib/module/ui/components/Typography/AnimatedText.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +112 -184
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/context/hooks/useAuthOperations.js +150 -19
- package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
- package/lib/module/ui/context/hooks/useSessionManagement.js +274 -0
- package/lib/module/ui/context/hooks/useSessionManagement.js.map +1 -0
- package/lib/module/ui/hooks/mutations/useAccountMutations.js +79 -64
- package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/module/ui/hooks/queries/useAccountQueries.js +31 -44
- package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/useSecurityQueries.js +1 -1
- package/lib/module/ui/hooks/queries/useSecurityQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/useServicesQueries.js +13 -7
- package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/module/ui/hooks/useProfileEditing.js +3 -5
- package/lib/module/ui/hooks/useProfileEditing.js.map +1 -1
- package/lib/module/ui/hooks/useSessionManagement.js +4 -8
- package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/module/ui/hooks/useSessionSocket.js +162 -315
- package/lib/module/ui/hooks/useSessionSocket.js.map +1 -1
- package/lib/module/ui/hooks/useStorage.js +25 -59
- package/lib/module/ui/hooks/useStorage.js.map +1 -1
- package/lib/module/ui/index.js +15 -10
- package/lib/module/ui/index.js.map +1 -1
- package/lib/module/ui/navigation/routes.js +5 -1
- package/lib/module/ui/navigation/routes.js.map +1 -1
- package/lib/module/ui/screens/AccountCenterScreen.js +2 -2
- package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
- package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -1
- package/lib/module/ui/screens/AccountSettingsScreen.js +29 -24
- package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/AccountSwitcherScreen.js +3 -3
- package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
- package/lib/module/ui/screens/OxyAuthScreen.js +135 -68
- package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
- package/lib/module/ui/screens/PrivacySettingsScreen.js +6 -13
- package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/module/ui/stores/accountStore.js +2 -4
- package/lib/module/ui/stores/accountStore.js.map +1 -1
- package/lib/module/ui/stores/authStore.js +45 -32
- package/lib/module/ui/stores/authStore.js.map +1 -1
- package/lib/module/ui/styles/spacing.js +6 -2
- package/lib/module/ui/styles/spacing.js.map +1 -1
- package/lib/module/ui/utils/avatarUtils.js +37 -40
- package/lib/module/ui/utils/avatarUtils.js.map +1 -1
- package/lib/module/ui/utils/storageHelpers.js.map +1 -1
- package/lib/module/utils/errorUtils.js +7 -0
- package/lib/module/utils/errorUtils.js.map +1 -1
- package/lib/module/utils/validationUtils.js +13 -0
- package/lib/module/utils/validationUtils.js.map +1 -1
- package/lib/typescript/core/CrossDomainAuth.d.ts +161 -0
- package/lib/typescript/core/CrossDomainAuth.d.ts.map +1 -0
- package/lib/typescript/core/HttpService.d.ts +1 -1
- package/lib/typescript/core/HttpService.d.ts.map +1 -1
- package/lib/typescript/core/OxyServices.base.d.ts +0 -6
- package/lib/typescript/core/OxyServices.base.d.ts.map +1 -1
- package/lib/typescript/core/OxyServices.d.ts +5 -36
- package/lib/typescript/core/OxyServices.d.ts.map +1 -1
- package/lib/typescript/core/index.d.ts +4 -0
- package/lib/typescript/core/index.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.analytics.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.assets.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.auth.d.ts +40 -20
- package/lib/typescript/core/mixins/OxyServices.auth.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.developer.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.devices.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.fedcm.d.ts +195 -0
- package/lib/typescript/core/mixins/OxyServices.fedcm.d.ts.map +1 -0
- package/lib/typescript/core/mixins/OxyServices.karma.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.language.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.location.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.payment.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.popup.d.ts +206 -0
- package/lib/typescript/core/mixins/OxyServices.popup.d.ts.map +1 -0
- package/lib/typescript/core/mixins/OxyServices.privacy.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.redirect.d.ts +246 -0
- package/lib/typescript/core/mixins/OxyServices.redirect.d.ts.map +1 -0
- package/lib/typescript/core/mixins/OxyServices.security.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.user.d.ts +6 -4
- package/lib/typescript/core/mixins/OxyServices.user.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.utility.d.ts.map +1 -1
- package/lib/typescript/core/mixins/index.d.ts +220 -8
- package/lib/typescript/core/mixins/index.d.ts.map +1 -1
- package/lib/typescript/crypto/index.d.ts +6 -3
- package/lib/typescript/crypto/index.d.ts.map +1 -1
- package/lib/typescript/crypto/keyManager.d.ts +190 -0
- package/lib/typescript/crypto/keyManager.d.ts.map +1 -0
- package/lib/typescript/crypto/polyfill.d.ts +4 -3
- package/lib/typescript/crypto/polyfill.d.ts.map +1 -1
- package/lib/typescript/crypto/recoveryPhrase.d.ts +59 -0
- package/lib/typescript/crypto/recoveryPhrase.d.ts.map +1 -0
- package/lib/typescript/crypto/signatureService.d.ts +87 -0
- package/lib/typescript/crypto/signatureService.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +5 -6
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/models/interfaces.d.ts +2 -14
- package/lib/typescript/models/interfaces.d.ts.map +1 -1
- package/lib/typescript/models/session.d.ts +0 -9
- package/lib/typescript/models/session.d.ts.map +1 -1
- package/lib/typescript/types/bip39.d.ts +32 -0
- package/lib/typescript/ui/components/BottomSheetRouter.d.ts +5 -0
- package/lib/typescript/ui/components/BottomSheetRouter.d.ts.map +1 -1
- package/lib/typescript/ui/components/IconButton/utils.d.ts +1 -1
- package/lib/typescript/ui/components/OxyProvider.d.ts.map +1 -1
- package/lib/typescript/ui/components/TextField/Addons/Outline.d.ts +2 -2
- package/lib/typescript/ui/components/TextField/Adornment/utils.d.ts +1 -1
- package/lib/typescript/ui/components/TextField/Adornment/utils.d.ts.map +1 -1
- package/lib/typescript/ui/components/TextField/helpers.d.ts +8 -8
- package/lib/typescript/ui/components/TextField/types.d.ts +1 -0
- package/lib/typescript/ui/components/TextField/types.d.ts.map +1 -1
- package/lib/typescript/ui/components/types.d.ts +4 -0
- package/lib/typescript/ui/components/types.d.ts.map +1 -1
- package/lib/typescript/ui/context/OxyContext.d.ts +57 -3
- package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts +10 -3
- package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
- package/lib/typescript/ui/context/hooks/useSessionManagement.d.ts +41 -0
- package/lib/typescript/ui/context/hooks/useSessionManagement.d.ts.map +1 -0
- package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/useProfileEditing.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/useSessionSocket.d.ts +1 -2
- package/lib/typescript/ui/hooks/useSessionSocket.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/useStorage.d.ts +3 -9
- package/lib/typescript/ui/hooks/useStorage.d.ts.map +1 -1
- package/lib/typescript/ui/index.d.ts +6 -2
- package/lib/typescript/ui/index.d.ts.map +1 -1
- package/lib/typescript/ui/navigation/routes.d.ts +1 -1
- package/lib/typescript/ui/navigation/routes.d.ts.map +1 -1
- package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/ui/screens/OxyAuthScreen.d.ts +1 -1
- package/lib/typescript/ui/screens/OxyAuthScreen.d.ts.map +1 -1
- package/lib/typescript/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
- package/lib/typescript/ui/stores/accountStore.d.ts.map +1 -1
- package/lib/typescript/ui/stores/authStore.d.ts +8 -7
- package/lib/typescript/ui/stores/authStore.d.ts.map +1 -1
- package/lib/typescript/ui/styles/spacing.d.ts +5 -0
- package/lib/typescript/ui/styles/spacing.d.ts.map +1 -1
- package/lib/typescript/ui/types/navigation.d.ts +2 -1
- package/lib/typescript/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/ui/utils/avatarUtils.d.ts +2 -13
- package/lib/typescript/ui/utils/avatarUtils.d.ts.map +1 -1
- package/lib/typescript/ui/utils/storageHelpers.d.ts +0 -3
- package/lib/typescript/ui/utils/storageHelpers.d.ts.map +1 -1
- package/lib/typescript/utils/errorUtils.d.ts +6 -0
- package/lib/typescript/utils/errorUtils.d.ts.map +1 -1
- package/lib/typescript/utils/validationUtils.d.ts +8 -0
- package/lib/typescript/utils/validationUtils.d.ts.map +1 -1
- package/package.json +8 -7
- package/src/core/CrossDomainAuth.ts +307 -0
- package/src/core/HttpService.ts +99 -16
- package/src/core/OxyServices.base.ts +20 -3
- package/src/core/OxyServices.ts +7 -3
- package/src/core/index.ts +9 -1
- package/src/core/mixins/OxyServices.assets.ts +14 -3
- package/src/core/mixins/OxyServices.auth.ts +105 -36
- package/src/core/mixins/OxyServices.fedcm.ts +315 -0
- package/src/core/mixins/OxyServices.popup.ts +402 -0
- package/src/core/mixins/OxyServices.redirect.ts +397 -0
- package/src/core/mixins/OxyServices.user.ts +39 -24
- package/src/core/mixins/index.ts +19 -3
- package/src/crypto/index.ts +16 -5
- package/src/crypto/keyManager.ts +966 -0
- package/src/crypto/polyfill.ts +6 -5
- package/src/crypto/recoveryPhrase.ts +166 -0
- package/src/crypto/signatureService.ts +323 -0
- package/src/i18n/locales/en-US.json +1 -1
- package/src/index.ts +19 -15
- package/src/models/interfaces.ts +4 -16
- package/src/models/session.ts +2 -11
- package/src/types/bip39.d.ts +32 -0
- package/src/ui/components/BottomSheetRouter.tsx +6 -1
- package/src/ui/components/Icon.tsx +1 -1
- package/src/ui/components/IconButton/utils.ts +1 -1
- package/src/ui/components/OxyProvider.tsx +44 -12
- package/src/ui/components/TextField/Addons/Outline.tsx +2 -2
- package/src/ui/components/TextField/Adornment/utils.ts +2 -2
- package/src/ui/components/TextField/helpers.tsx +10 -10
- package/src/ui/components/TextField/types.tsx +1 -1
- package/src/ui/components/TouchableRipple/utils.ts +2 -2
- package/src/ui/components/Typography/AnimatedText.tsx +2 -2
- package/src/ui/components/types.tsx +6 -0
- package/src/ui/context/OxyContext.tsx +173 -185
- package/src/ui/context/hooks/useAuthOperations.ts +177 -36
- package/src/ui/context/hooks/useSessionManagement.ts +399 -0
- package/src/ui/hooks/mutations/useAccountMutations.ts +82 -65
- package/src/ui/hooks/queries/useAccountQueries.ts +29 -35
- package/src/ui/hooks/queries/useSecurityQueries.ts +1 -1
- package/src/ui/hooks/queries/useServicesQueries.ts +14 -6
- package/src/ui/hooks/useProfileEditing.ts +3 -3
- package/src/ui/hooks/useSessionManagement.ts +5 -10
- package/src/ui/hooks/useSessionSocket.ts +46 -175
- package/src/ui/hooks/useStorage.ts +24 -76
- package/src/ui/index.ts +22 -13
- package/src/ui/navigation/routes.ts +6 -2
- package/src/ui/screens/AccountCenterScreen.tsx +2 -2
- package/src/ui/screens/AccountOverviewScreen.tsx +1 -1
- package/src/ui/screens/AccountSettingsScreen.tsx +34 -37
- package/src/ui/screens/AccountSwitcherScreen.tsx +4 -4
- package/src/ui/screens/OxyAuthScreen.tsx +138 -64
- package/src/ui/screens/PrivacySettingsScreen.tsx +6 -12
- package/src/ui/stores/accountStore.ts +1 -11
- package/src/ui/stores/authStore.ts +43 -44
- package/src/ui/styles/spacing.ts +15 -2
- package/src/ui/types/navigation.ts +2 -2
- package/src/ui/utils/avatarUtils.ts +39 -46
- package/src/ui/utils/storageHelpers.ts +0 -4
- package/src/utils/__tests__/validationUtils.test.ts +16 -1
- package/src/utils/errorUtils.ts +8 -1
- package/src/utils/validationUtils.ts +12 -0
- package/lib/commonjs/core/services/SessionService.js +0 -163
- package/lib/commonjs/core/services/SessionService.js.map +0 -1
- package/lib/commonjs/core/services/TokenService.js +0 -220
- package/lib/commonjs/core/services/TokenService.js.map +0 -1
- package/lib/commonjs/crypto/types.js +0 -2
- package/lib/commonjs/crypto/types.js.map +0 -1
- package/lib/commonjs/ui/context/OxyContextBase.js +0 -21
- package/lib/commonjs/ui/context/OxyContextBase.js.map +0 -1
- package/lib/commonjs/ui/context/hooks/useStorage.js +0 -79
- package/lib/commonjs/ui/context/hooks/useStorage.js.map +0 -1
- package/lib/commonjs/ui/hooks/useAvatarPicker.js +0 -56
- package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +0 -1
- package/lib/module/core/services/SessionService.js +0 -159
- package/lib/module/core/services/SessionService.js.map +0 -1
- package/lib/module/core/services/TokenService.js +0 -217
- package/lib/module/core/services/TokenService.js.map +0 -1
- package/lib/module/crypto/types.js +0 -2
- package/lib/module/crypto/types.js.map +0 -1
- package/lib/module/ui/context/OxyContextBase.js +0 -16
- package/lib/module/ui/context/OxyContextBase.js.map +0 -1
- package/lib/module/ui/context/hooks/useStorage.js +0 -74
- package/lib/module/ui/context/hooks/useStorage.js.map +0 -1
- package/lib/module/ui/hooks/useAvatarPicker.js +0 -50
- package/lib/module/ui/hooks/useAvatarPicker.js.map +0 -1
- package/lib/typescript/core/services/SessionService.d.ts +0 -78
- package/lib/typescript/core/services/SessionService.d.ts.map +0 -1
- package/lib/typescript/core/services/TokenService.d.ts +0 -72
- package/lib/typescript/core/services/TokenService.d.ts.map +0 -1
- package/lib/typescript/crypto/types.d.ts +0 -22
- package/lib/typescript/crypto/types.d.ts.map +0 -1
- package/lib/typescript/ui/context/OxyContextBase.d.ts +0 -63
- package/lib/typescript/ui/context/OxyContextBase.d.ts.map +0 -1
- package/lib/typescript/ui/context/hooks/useStorage.d.ts +0 -22
- package/lib/typescript/ui/context/hooks/useStorage.d.ts.map +0 -1
- package/lib/typescript/ui/hooks/useAvatarPicker.d.ts +0 -19
- package/lib/typescript/ui/hooks/useAvatarPicker.d.ts.map +0 -1
- package/src/core/services/SessionService.ts +0 -173
- package/src/core/services/TokenService.ts +0 -237
- package/src/crypto/types.ts +0 -23
- package/src/ui/context/OxyContextBase.tsx +0 -78
- package/src/ui/context/hooks/useStorage.ts +0 -104
- package/src/ui/hooks/useAvatarPicker.ts +0 -61
|
@@ -4,9 +4,8 @@ import { useMutation, useQueryClient } from '@tanstack/react-query';
|
|
|
4
4
|
import { queryKeys, invalidateAccountQueries, invalidateUserQueries } from '../queries/queryKeys';
|
|
5
5
|
import { useOxy } from '../../context/OxyContext';
|
|
6
6
|
import { toast } from '../../../lib/sonner';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
const getDeviceIdForSession = (sessions = [], sessionId) => sessionId ? sessions.find(s => s.sessionId === sessionId)?.deviceId : undefined;
|
|
7
|
+
import { refreshAvatarInStore } from '../../utils/avatarUtils';
|
|
8
|
+
import { useAuthStore } from '../../stores/authStore';
|
|
10
9
|
|
|
11
10
|
/**
|
|
12
11
|
* Update user profile with optimistic updates and offline queue support
|
|
@@ -15,8 +14,7 @@ export const useUpdateProfile = () => {
|
|
|
15
14
|
const {
|
|
16
15
|
oxyServices,
|
|
17
16
|
activeSessionId,
|
|
18
|
-
user
|
|
19
|
-
sessions
|
|
17
|
+
user
|
|
20
18
|
} = useOxy();
|
|
21
19
|
const queryClient = useQueryClient();
|
|
22
20
|
return useMutation({
|
|
@@ -25,9 +23,16 @@ export const useUpdateProfile = () => {
|
|
|
25
23
|
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
26
24
|
try {
|
|
27
25
|
// Try to get token for the session
|
|
28
|
-
await oxyServices.getTokenBySession(activeSessionId
|
|
26
|
+
await oxyServices.getTokenBySession(activeSessionId);
|
|
29
27
|
} catch (tokenError) {
|
|
30
|
-
|
|
28
|
+
// If getting token fails, might be an offline session - try syncing
|
|
29
|
+
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
30
|
+
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
31
|
+
// Session sync should be handled by the app layer
|
|
32
|
+
throw new Error('Session needs to be synced. Please try again.');
|
|
33
|
+
} else {
|
|
34
|
+
throw tokenError;
|
|
35
|
+
}
|
|
31
36
|
}
|
|
32
37
|
}
|
|
33
38
|
try {
|
|
@@ -38,7 +43,8 @@ export const useUpdateProfile = () => {
|
|
|
38
43
|
|
|
39
44
|
// Handle authentication errors
|
|
40
45
|
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
41
|
-
|
|
46
|
+
// Session sync should be handled by the app layer
|
|
47
|
+
throw new Error('Authentication failed. Please sign in again.');
|
|
42
48
|
}
|
|
43
49
|
|
|
44
50
|
// TanStack Query will automatically retry on network errors
|
|
@@ -84,30 +90,25 @@ export const useUpdateProfile = () => {
|
|
|
84
90
|
}
|
|
85
91
|
toast.error(error instanceof Error ? error.message : 'Failed to update profile');
|
|
86
92
|
},
|
|
87
|
-
// On success,
|
|
88
|
-
onSuccess:
|
|
89
|
-
logger.debug('Profile update successful', {
|
|
90
|
-
component: 'useUpdateProfile',
|
|
91
|
-
username: data.username,
|
|
92
|
-
updatedFields: Object.keys(updates)
|
|
93
|
-
});
|
|
94
|
-
|
|
93
|
+
// On success, invalidate and refetch
|
|
94
|
+
onSuccess: (data, updates) => {
|
|
95
95
|
// Update cache with server response
|
|
96
96
|
queryClient.setQueryData(queryKeys.accounts.current(), data);
|
|
97
97
|
if (activeSessionId) {
|
|
98
98
|
queryClient.setQueryData(queryKeys.users.profile(activeSessionId), data);
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
//
|
|
102
|
-
|
|
103
|
-
|
|
101
|
+
// Update authStore so frontend components see the changes immediately
|
|
102
|
+
useAuthStore.getState().setUser(data);
|
|
103
|
+
|
|
104
|
+
// If avatar was updated, refresh accountStore with cache-busted URL
|
|
105
|
+
if (updates.avatar && activeSessionId && oxyServices) {
|
|
106
|
+
refreshAvatarInStore(activeSessionId, updates.avatar, oxyServices);
|
|
104
107
|
}
|
|
105
108
|
|
|
106
|
-
//
|
|
109
|
+
// Invalidate all related queries to refresh everywhere
|
|
110
|
+
invalidateUserQueries(queryClient);
|
|
107
111
|
invalidateAccountQueries(queryClient);
|
|
108
|
-
logger.debug('Profile update complete', {
|
|
109
|
-
component: 'useUpdateProfile'
|
|
110
|
-
});
|
|
111
112
|
}
|
|
112
113
|
});
|
|
113
114
|
};
|
|
@@ -118,8 +119,7 @@ export const useUpdateProfile = () => {
|
|
|
118
119
|
export const useUploadAvatar = () => {
|
|
119
120
|
const {
|
|
120
121
|
oxyServices,
|
|
121
|
-
activeSessionId
|
|
122
|
-
sessions
|
|
122
|
+
activeSessionId
|
|
123
123
|
} = useOxy();
|
|
124
124
|
const queryClient = useQueryClient();
|
|
125
125
|
return useMutation({
|
|
@@ -127,9 +127,15 @@ export const useUploadAvatar = () => {
|
|
|
127
127
|
// Ensure we have a valid token before making the request
|
|
128
128
|
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
129
129
|
try {
|
|
130
|
-
await oxyServices.getTokenBySession(activeSessionId
|
|
130
|
+
await oxyServices.getTokenBySession(activeSessionId);
|
|
131
131
|
} catch (tokenError) {
|
|
132
|
-
|
|
132
|
+
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
133
|
+
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
134
|
+
// Session sync should be handled by the app layer
|
|
135
|
+
throw new Error('Session needs to be synced. Please try again.');
|
|
136
|
+
} else {
|
|
137
|
+
throw tokenError;
|
|
138
|
+
}
|
|
133
139
|
}
|
|
134
140
|
}
|
|
135
141
|
try {
|
|
@@ -150,7 +156,8 @@ export const useUploadAvatar = () => {
|
|
|
150
156
|
|
|
151
157
|
// Handle authentication errors
|
|
152
158
|
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
153
|
-
|
|
159
|
+
// Session sync should be handled by the app layer
|
|
160
|
+
throw new Error('Authentication failed. Please sign in again.');
|
|
154
161
|
}
|
|
155
162
|
|
|
156
163
|
// TanStack Query will automatically retry on network errors
|
|
@@ -187,35 +194,24 @@ export const useUploadAvatar = () => {
|
|
|
187
194
|
}
|
|
188
195
|
toast.error(error instanceof Error ? error.message : 'Failed to upload avatar');
|
|
189
196
|
},
|
|
190
|
-
onSuccess:
|
|
191
|
-
logger.debug('Avatar upload successful', {
|
|
192
|
-
component: 'useUploadAvatar',
|
|
193
|
-
method: 'onSuccess',
|
|
194
|
-
data
|
|
195
|
-
});
|
|
197
|
+
onSuccess: data => {
|
|
196
198
|
queryClient.setQueryData(queryKeys.accounts.current(), data);
|
|
197
199
|
if (activeSessionId) {
|
|
198
200
|
queryClient.setQueryData(queryKeys.users.profile(activeSessionId), data);
|
|
199
201
|
}
|
|
200
202
|
|
|
201
|
-
//
|
|
202
|
-
|
|
203
|
-
|
|
203
|
+
// Update authStore so frontend components see the changes immediately
|
|
204
|
+
useAuthStore.getState().setUser(data);
|
|
205
|
+
|
|
206
|
+
// Refresh accountStore with cache-busted URL if avatar was updated
|
|
207
|
+
if (data?.avatar && activeSessionId && oxyServices) {
|
|
208
|
+
refreshAvatarInStore(activeSessionId, data.avatar, oxyServices);
|
|
204
209
|
}
|
|
205
210
|
|
|
206
211
|
// Invalidate all related queries to refresh everywhere
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
// Explicitly refetch to ensure UI updates
|
|
211
|
-
await queryClient.refetchQueries({
|
|
212
|
-
queryKey: queryKeys.accounts.current()
|
|
213
|
-
});
|
|
212
|
+
invalidateUserQueries(queryClient);
|
|
213
|
+
invalidateAccountQueries(queryClient);
|
|
214
214
|
toast.success('Avatar updated successfully');
|
|
215
|
-
logger.debug('Avatar update complete - cache invalidated and refetched', {
|
|
216
|
-
component: 'useUploadAvatar',
|
|
217
|
-
method: 'onSuccess'
|
|
218
|
-
});
|
|
219
215
|
}
|
|
220
216
|
});
|
|
221
217
|
};
|
|
@@ -261,6 +257,9 @@ export const useUpdateAccountSettings = () => {
|
|
|
261
257
|
},
|
|
262
258
|
onSuccess: data => {
|
|
263
259
|
queryClient.setQueryData(queryKeys.accounts.current(), data);
|
|
260
|
+
|
|
261
|
+
// Update authStore so frontend components see the changes immediately
|
|
262
|
+
useAuthStore.getState().setUser(data);
|
|
264
263
|
invalidateAccountQueries(queryClient);
|
|
265
264
|
toast.success('Settings updated successfully');
|
|
266
265
|
},
|
|
@@ -279,7 +278,7 @@ export const useUpdatePrivacySettings = () => {
|
|
|
279
278
|
const {
|
|
280
279
|
oxyServices,
|
|
281
280
|
activeSessionId,
|
|
282
|
-
|
|
281
|
+
user
|
|
283
282
|
} = useOxy();
|
|
284
283
|
const queryClient = useQueryClient();
|
|
285
284
|
return useMutation({
|
|
@@ -287,9 +286,7 @@ export const useUpdatePrivacySettings = () => {
|
|
|
287
286
|
settings,
|
|
288
287
|
userId
|
|
289
288
|
}) => {
|
|
290
|
-
|
|
291
|
-
// Never use user?.id as it may be set to publicKey
|
|
292
|
-
const targetUserId = userId || oxyServices.getCurrentUserId();
|
|
289
|
+
const targetUserId = userId || user?.id;
|
|
293
290
|
if (!targetUserId) {
|
|
294
291
|
throw new Error('User ID is required');
|
|
295
292
|
}
|
|
@@ -298,9 +295,16 @@ export const useUpdatePrivacySettings = () => {
|
|
|
298
295
|
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
299
296
|
try {
|
|
300
297
|
// Try to get token for the session
|
|
301
|
-
await oxyServices.getTokenBySession(activeSessionId
|
|
298
|
+
await oxyServices.getTokenBySession(activeSessionId);
|
|
302
299
|
} catch (tokenError) {
|
|
303
|
-
|
|
300
|
+
// If getting token fails, might be an offline session - try syncing
|
|
301
|
+
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
302
|
+
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
303
|
+
// Session sync should be handled by the app layer
|
|
304
|
+
throw new Error('Session needs to be synced. Please try again.');
|
|
305
|
+
} else {
|
|
306
|
+
throw tokenError;
|
|
307
|
+
}
|
|
304
308
|
}
|
|
305
309
|
}
|
|
306
310
|
try {
|
|
@@ -311,7 +315,8 @@ export const useUpdatePrivacySettings = () => {
|
|
|
311
315
|
|
|
312
316
|
// Handle authentication errors
|
|
313
317
|
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
314
|
-
|
|
318
|
+
// Session sync should be handled by the app layer
|
|
319
|
+
throw new Error('Authentication failed. Please sign in again.');
|
|
315
320
|
}
|
|
316
321
|
|
|
317
322
|
// TanStack Query will automatically retry on network errors
|
|
@@ -323,7 +328,7 @@ export const useUpdatePrivacySettings = () => {
|
|
|
323
328
|
settings,
|
|
324
329
|
userId
|
|
325
330
|
}) => {
|
|
326
|
-
const targetUserId = userId ||
|
|
331
|
+
const targetUserId = userId || user?.id;
|
|
327
332
|
if (!targetUserId) return;
|
|
328
333
|
|
|
329
334
|
// Cancel outgoing refetches
|
|
@@ -365,7 +370,7 @@ export const useUpdatePrivacySettings = () => {
|
|
|
365
370
|
onError: (error, {
|
|
366
371
|
userId
|
|
367
372
|
}, context) => {
|
|
368
|
-
const targetUserId = userId ||
|
|
373
|
+
const targetUserId = userId || user?.id;
|
|
369
374
|
if (context?.previousPrivacySettings && targetUserId) {
|
|
370
375
|
queryClient.setQueryData(queryKeys.privacy.settings(targetUserId), context.previousPrivacySettings);
|
|
371
376
|
}
|
|
@@ -378,7 +383,7 @@ export const useUpdatePrivacySettings = () => {
|
|
|
378
383
|
onSuccess: (data, {
|
|
379
384
|
userId
|
|
380
385
|
}) => {
|
|
381
|
-
const targetUserId = userId ||
|
|
386
|
+
const targetUserId = userId || user?.id;
|
|
382
387
|
if (targetUserId) {
|
|
383
388
|
queryClient.setQueryData(queryKeys.privacy.settings(targetUserId), data);
|
|
384
389
|
}
|
|
@@ -390,6 +395,9 @@ export const useUpdatePrivacySettings = () => {
|
|
|
390
395
|
privacySettings: data
|
|
391
396
|
};
|
|
392
397
|
queryClient.setQueryData(queryKeys.accounts.current(), updatedUser);
|
|
398
|
+
|
|
399
|
+
// Update authStore so frontend components see the changes immediately
|
|
400
|
+
useAuthStore.getState().setUser(updatedUser);
|
|
393
401
|
}
|
|
394
402
|
invalidateAccountQueries(queryClient);
|
|
395
403
|
},
|
|
@@ -397,7 +405,7 @@ export const useUpdatePrivacySettings = () => {
|
|
|
397
405
|
onSettled: (data, error, {
|
|
398
406
|
userId
|
|
399
407
|
}) => {
|
|
400
|
-
const targetUserId = userId ||
|
|
408
|
+
const targetUserId = userId || user?.id;
|
|
401
409
|
if (targetUserId) {
|
|
402
410
|
queryClient.invalidateQueries({
|
|
403
411
|
queryKey: queryKeys.privacy.settings(targetUserId)
|
|
@@ -416,8 +424,7 @@ export const useUpdatePrivacySettings = () => {
|
|
|
416
424
|
export const useUploadFile = () => {
|
|
417
425
|
const {
|
|
418
426
|
oxyServices,
|
|
419
|
-
activeSessionId
|
|
420
|
-
sessions
|
|
427
|
+
activeSessionId
|
|
421
428
|
} = useOxy();
|
|
422
429
|
return useMutation({
|
|
423
430
|
mutationFn: async ({
|
|
@@ -430,9 +437,16 @@ export const useUploadFile = () => {
|
|
|
430
437
|
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
431
438
|
try {
|
|
432
439
|
// Try to get token for the session
|
|
433
|
-
await oxyServices.getTokenBySession(activeSessionId
|
|
440
|
+
await oxyServices.getTokenBySession(activeSessionId);
|
|
434
441
|
} catch (tokenError) {
|
|
435
|
-
|
|
442
|
+
// If getting token fails, might be an offline session - try syncing
|
|
443
|
+
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
444
|
+
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
445
|
+
// Session sync should be handled by the app layer
|
|
446
|
+
throw new Error('Session needs to be synced. Please try again.');
|
|
447
|
+
} else {
|
|
448
|
+
throw tokenError;
|
|
449
|
+
}
|
|
436
450
|
}
|
|
437
451
|
}
|
|
438
452
|
try {
|
|
@@ -443,7 +457,8 @@ export const useUploadFile = () => {
|
|
|
443
457
|
|
|
444
458
|
// Handle authentication errors
|
|
445
459
|
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
446
|
-
|
|
460
|
+
// Session sync should be handled by the app layer
|
|
461
|
+
throw new Error('Authentication failed. Please sign in again.');
|
|
447
462
|
}
|
|
448
463
|
|
|
449
464
|
// TanStack Query will automatically retry on network errors
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMutation","useQueryClient","queryKeys","invalidateAccountQueries","invalidateUserQueries","useOxy","toast","refreshAccountInStore","logger","getDeviceIdForSession","sessions","sessionId","find","s","deviceId","undefined","useUpdateProfile","oxyServices","activeSessionId","user","queryClient","mutationFn","updates","hasValidToken","getTokenBySession","tokenError","updateProfile","error","errorMessage","message","status","response","includes","onMutate","cancelQueries","queryKey","accounts","current","previousUser","getQueryData","setQueryData","users","profile","onError","context","Error","onSuccess","data","debug","component","username","updatedFields","Object","keys","useUploadAvatar","file","uploadResult","assetUpload","fileId","id","avatar","optimisticUser","uri","method","refetchQueries","success","useUpdateAccountSettings","settings","privacySettings","onSettled","invalidateQueries","useUpdatePrivacySettings","userId","targetUserId","getCurrentUserId","updatePrivacySettings","privacy","previousPrivacySettings","currentUser","updatedUser","useUploadFile","visibility","metadata","onProgress"],"sourceRoot":"../../../../../src","sources":["ui/hooks/mutations/useAccountMutations.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,cAAc,QAAQ,uBAAuB;AAGnE,SAASC,SAAS,EAAEC,wBAAwB,EAAEC,qBAAqB,QAAQ,sBAAsB;AACjG,SAASC,MAAM,QAAQ,0BAA0B;AACjD,SAASC,KAAK,QAAQ,qBAAqB;AAC3C,SAASC,qBAAqB,QAAQ,yBAAyB;AAC/D,SAASC,MAAM,QAAQ,4BAA4B;AAEnD,MAAMC,qBAAqB,GAAGA,CAACC,QAAyB,GAAG,EAAE,EAAEC,SAAwB,KACrFA,SAAS,GAAGD,QAAQ,CAACE,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACF,SAAS,KAAKA,SAAS,CAAC,EAAEG,QAAQ,GAAGC,SAAS;;AAEnF;AACA;AACA;AACA,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAM;IAAEC,WAAW;IAAEC,eAAe;IAAEC,IAAI;IAAET;EAAS,CAAC,GAAGL,MAAM,CAAC,CAAC;EACjE,MAAMe,WAAW,GAAGnB,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBqB,UAAU,EAAE,MAAOC,OAAsB,IAAK;MAC5C;MACA,IAAI,CAACL,WAAW,CAACM,aAAa,CAAC,CAAC,IAAIL,eAAe,EAAE;QACnD,IAAI;UACF;UACA,MAAMD,WAAW,CAACO,iBAAiB,CAACN,eAAe,EAAET,qBAAqB,CAACC,QAAQ,EAAEQ,eAAe,CAAC,CAAC;QACxG,CAAC,CAAC,OAAOO,UAAU,EAAE;UACnB,MAAMA,UAAU;QAClB;MACF;MAEA,IAAI;QACF,OAAO,MAAMR,WAAW,CAACS,aAAa,CAACJ,OAAO,CAAC;MACjD,CAAC,CAAC,OAAOK,KAAU,EAAE;QACnB,MAAMC,YAAY,GAAGD,KAAK,EAAEE,OAAO,IAAI,EAAE;QACzC,MAAMC,MAAM,GAAGH,KAAK,EAAEG,MAAM,IAAIH,KAAK,EAAEI,QAAQ,EAAED,MAAM;;QAEvD;QACA,IAAIA,MAAM,KAAK,GAAG,IAAIF,YAAY,CAACI,QAAQ,CAAC,yBAAyB,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,yCAAyC,CAAC,EAAE;UAC1I,MAAML,KAAK;QACb;;QAEA;QACA,MAAMA,KAAK;MACb;IACF,CAAC;IACD;IACAM,QAAQ,EAAE,MAAOX,OAAO,IAAK;MAC3B;MACA,MAAMF,WAAW,CAACc,aAAa,CAAC;QAAEC,QAAQ,EAAEjC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;;MAE3E;MACA,MAAMC,YAAY,GAAGlB,WAAW,CAACmB,YAAY,CAAOrC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIC,YAAY,EAAE;QAChBlB,WAAW,CAACoB,YAAY,CAAOtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACf,GAAGhB;QACL,CAAC,CAAC;;QAEF;QACA,IAAIJ,eAAe,EAAE;UACnBE,WAAW,CAACoB,YAAY,CAAOtC,SAAS,CAACuC,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAE;YACvE,GAAGoB,YAAY;YACf,GAAGhB;UACL,CAAC,CAAC;QACJ;MACF;MAEA,OAAO;QAAEgB;MAAa,CAAC;IACzB,CAAC;IACD;IACAK,OAAO,EAAEA,CAAChB,KAAK,EAAEL,OAAO,EAAEsB,OAAO,KAAK;MACpC,IAAIA,OAAO,EAAEN,YAAY,EAAE;QACzBlB,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEO,OAAO,CAACN,YAAY,CAAC;QAC5E,IAAIpB,eAAe,EAAE;UACnBE,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACuC,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAE0B,OAAO,CAACN,YAAY,CAAC;QAC1F;MACF;MACAhC,KAAK,CAACqB,KAAK,CAACA,KAAK,YAAYkB,KAAK,GAAGlB,KAAK,CAACE,OAAO,GAAG,0BAA0B,CAAC;IAClF,CAAC;IACD;IACAiB,SAAS,EAAE,MAAAA,CAAOC,IAAI,EAAEzB,OAAO,KAAK;MAClCd,MAAM,CAACwC,KAAK,CAAC,2BAA2B,EAAE;QACxCC,SAAS,EAAE,kBAAkB;QAC7BC,QAAQ,EAAEH,IAAI,CAACG,QAAQ;QACvBC,aAAa,EAAEC,MAAM,CAACC,IAAI,CAAC/B,OAAO;MACpC,CAAC,CAAC;;MAEF;MACAF,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEU,IAAI,CAAC;MAC5D,IAAI7B,eAAe,EAAE;QACnBE,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACuC,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAE6B,IAAI,CAAC;MAC1E;;MAEA;MACA,IAAI7B,eAAe,IAAID,WAAW,EAAE;QAClCV,qBAAqB,CAACW,eAAe,EAAE6B,IAAI,EAAE9B,WAAW,CAAC;MAC3D;;MAEA;MACAd,wBAAwB,CAACiB,WAAW,CAAC;MAErCZ,MAAM,CAACwC,KAAK,CAAC,yBAAyB,EAAE;QAAEC,SAAS,EAAE;MAAmB,CAAC,CAAC;IAC5E;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMK,eAAe,GAAGA,CAAA,KAAM;EACnC,MAAM;IAAErC,WAAW;IAAEC,eAAe;IAAER;EAAS,CAAC,GAAGL,MAAM,CAAC,CAAC;EAC3D,MAAMe,WAAW,GAAGnB,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBqB,UAAU,EAAE,MAAOkC,IAAkE,IAAK;MACxF;MACA,IAAI,CAACtC,WAAW,CAACM,aAAa,CAAC,CAAC,IAAIL,eAAe,EAAE;QACnD,IAAI;UACF,MAAMD,WAAW,CAACO,iBAAiB,CAACN,eAAe,EAAET,qBAAqB,CAACC,QAAQ,EAAEQ,eAAe,CAAC,CAAC;QACxG,CAAC,CAAC,OAAOO,UAAU,EAAE;UACnB,MAAMA,UAAU;QAClB;MACF;MAEA,IAAI;QACF;QACA,MAAM+B,YAAY,GAAG,MAAMvC,WAAW,CAACwC,WAAW,CAACF,IAAI,EAAS,QAAQ,CAAC;QACzE,MAAMG,MAAM,GAAGF,YAAY,EAAED,IAAI,EAAEI,EAAE,IAAIH,YAAY,EAAEG,EAAE,IAAIH,YAAY;QAEzE,IAAI,CAACE,MAAM,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;UACzC,MAAM,IAAIb,KAAK,CAAC,0CAA0C,CAAC;QAC7D;;QAEA;QACA,OAAO,MAAM5B,WAAW,CAACS,aAAa,CAAC;UAAEkC,MAAM,EAAEF;QAAO,CAAC,CAAC;MAC5D,CAAC,CAAC,OAAO/B,KAAU,EAAE;QACnB,MAAMC,YAAY,GAAGD,KAAK,EAAEE,OAAO,IAAI,EAAE;QACzC,MAAMC,MAAM,GAAGH,KAAK,EAAEG,MAAM,IAAIH,KAAK,EAAEI,QAAQ,EAAED,MAAM;;QAEvD;QACA,IAAIA,MAAM,KAAK,GAAG,IAAIF,YAAY,CAACI,QAAQ,CAAC,yBAAyB,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,yCAAyC,CAAC,EAAE;UAC1I,MAAML,KAAK;QACb;;QAEA;QACA,MAAMA,KAAK;MACb;IACF,CAAC;IACDM,QAAQ,EAAE,MAAOsB,IAAI,IAAK;MACxB,MAAMnC,WAAW,CAACc,aAAa,CAAC;QAAEC,QAAQ,EAAEjC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;MAC3E,MAAMC,YAAY,GAAGlB,WAAW,CAACmB,YAAY,CAAOrC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIC,YAAY,EAAE;QAChB,MAAMuB,cAAc,GAAG;UACrB,GAAGvB,YAAY;UACfsB,MAAM,EAAEL,IAAI,CAACO,GAAG,CAAE;QACpB,CAAC;QACD1C,WAAW,CAACoB,YAAY,CAAOtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEwB,cAAc,CAAC;QAC5E,IAAI3C,eAAe,EAAE;UACnBE,WAAW,CAACoB,YAAY,CAAOtC,SAAS,CAACuC,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAE2C,cAAc,CAAC;QAC1F;MACF;MAEA,OAAO;QAAEvB;MAAa,CAAC;IACzB,CAAC;IACDK,OAAO,EAAEA,CAAChB,KAAK,EAAE4B,IAAI,EAAEX,OAAO,KAAK;MACjC,IAAIA,OAAO,EAAEN,YAAY,EAAE;QACzBlB,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEO,OAAO,CAACN,YAAY,CAAC;QAC5E,IAAIpB,eAAe,EAAE;UACnBE,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACuC,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAE0B,OAAO,CAACN,YAAY,CAAC;QAC1F;MACF;MACAhC,KAAK,CAACqB,KAAK,CAACA,KAAK,YAAYkB,KAAK,GAAGlB,KAAK,CAACE,OAAO,GAAG,yBAAyB,CAAC;IACjF,CAAC;IACDiB,SAAS,EAAE,MAAOC,IAAI,IAAK;MACzBvC,MAAM,CAACwC,KAAK,CACV,0BAA0B,EAC1B;QAAEC,SAAS,EAAE,iBAAiB;QAAEc,MAAM,EAAE,WAAW;QAAEhB;MAAK,CAC5D,CAAC;MAED3B,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEU,IAAI,CAAC;MAC5D,IAAI7B,eAAe,EAAE;QACnBE,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACuC,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAE6B,IAAI,CAAC;MAC1E;;MAEA;MACA,IAAI7B,eAAe,IAAID,WAAW,EAAE;QAClCV,qBAAqB,CAACW,eAAe,EAAE6B,IAAI,EAAE9B,WAAW,CAAC;MAC3D;;MAEA;MACA,MAAMb,qBAAqB,CAACgB,WAAW,CAAC;MACxC,MAAMjB,wBAAwB,CAACiB,WAAW,CAAC;;MAE3C;MACA,MAAMA,WAAW,CAAC4C,cAAc,CAAC;QAAE7B,QAAQ,EAAEjC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;MAE5E/B,KAAK,CAAC2D,OAAO,CAAC,6BAA6B,CAAC;MAE5CzD,MAAM,CAACwC,KAAK,CACV,0DAA0D,EAC1D;QAAEC,SAAS,EAAE,iBAAiB;QAAEc,MAAM,EAAE;MAAY,CACtD,CAAC;IACH;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMG,wBAAwB,GAAGA,CAAA,KAAM;EAC5C,MAAM;IAAEjD,WAAW;IAAEC;EAAgB,CAAC,GAAGb,MAAM,CAAC,CAAC;EACjD,MAAMe,WAAW,GAAGnB,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBqB,UAAU,EAAE,MAAO8C,QAA6B,IAAK;MACnD,OAAO,MAAMlD,WAAW,CAACS,aAAa,CAAC;QAAE0C,eAAe,EAAED;MAAS,CAAC,CAAC;IACvE,CAAC;IACDlC,QAAQ,EAAE,MAAOkC,QAAQ,IAAK;MAC5B,MAAM/C,WAAW,CAACc,aAAa,CAAC;QAAEC,QAAQ,EAAEjC,SAAS,CAACkC,QAAQ,CAAC+B,QAAQ,CAAC;MAAE,CAAC,CAAC;MAC5E,MAAM7B,YAAY,GAAGlB,WAAW,CAACmB,YAAY,CAAOrC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;MAEjF,IAAIC,YAAY,EAAE;QAChBlB,WAAW,CAACoB,YAAY,CAAOtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACf8B,eAAe,EAAE;YACf,GAAG9B,YAAY,CAAC8B,eAAe;YAC/B,GAAGD;UACL;QACF,CAAC,CAAC;MACJ;MAEA,OAAO;QAAE7B;MAAa,CAAC;IACzB,CAAC;IACDK,OAAO,EAAEA,CAAChB,KAAK,EAAEwC,QAAQ,EAAEvB,OAAO,KAAK;MACrC,IAAIA,OAAO,EAAEN,YAAY,EAAE;QACzBlB,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEO,OAAO,CAACN,YAAY,CAAC;MAC9E;MACAhC,KAAK,CAACqB,KAAK,CAACA,KAAK,YAAYkB,KAAK,GAAGlB,KAAK,CAACE,OAAO,GAAG,2BAA2B,CAAC;IACnF,CAAC;IACDiB,SAAS,EAAGC,IAAI,IAAK;MACnB3B,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEU,IAAI,CAAC;MAE5D5C,wBAAwB,CAACiB,WAAW,CAAC;MACrCd,KAAK,CAAC2D,OAAO,CAAC,+BAA+B,CAAC;IAChD,CAAC;IACDI,SAAS,EAAEA,CAAA,KAAM;MACfjD,WAAW,CAACkD,iBAAiB,CAAC;QAAEnC,QAAQ,EAAEjC,SAAS,CAACkC,QAAQ,CAAC+B,QAAQ,CAAC;MAAE,CAAC,CAAC;IAC5E;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMI,wBAAwB,GAAGA,CAAA,KAAM;EAC5C,MAAM;IAAEtD,WAAW;IAAEC,eAAe;IAAER;EAAS,CAAC,GAAGL,MAAM,CAAC,CAAC;EAC3D,MAAMe,WAAW,GAAGnB,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBqB,UAAU,EAAE,MAAAA,CAAO;MAAE8C,QAAQ;MAAEK;IAA2D,CAAC,KAAK;MAC9F;MACA;MACA,MAAMC,YAAY,GAAGD,MAAM,IAAIvD,WAAW,CAACyD,gBAAgB,CAAC,CAAC;MAC7D,IAAI,CAACD,YAAY,EAAE;QACjB,MAAM,IAAI5B,KAAK,CAAC,qBAAqB,CAAC;MACxC;;MAEA;MACA,IAAI,CAAC5B,WAAW,CAACM,aAAa,CAAC,CAAC,IAAIL,eAAe,EAAE;QACnD,IAAI;UACF;UACA,MAAMD,WAAW,CAACO,iBAAiB,CAACN,eAAe,EAAET,qBAAqB,CAACC,QAAQ,EAAEQ,eAAe,CAAC,CAAC;QACxG,CAAC,CAAC,OAAOO,UAAU,EAAE;UACnB,MAAMA,UAAU;QAClB;MACF;MAEA,IAAI;QACF,OAAO,MAAMR,WAAW,CAAC0D,qBAAqB,CAACR,QAAQ,EAAEM,YAAY,CAAC;MACxE,CAAC,CAAC,OAAO9C,KAAU,EAAE;QACnB,MAAMC,YAAY,GAAGD,KAAK,EAAEE,OAAO,IAAI,EAAE;QACzC,MAAMC,MAAM,GAAGH,KAAK,EAAEG,MAAM,IAAIH,KAAK,EAAEI,QAAQ,EAAED,MAAM;;QAEvD;QACA,IAAIA,MAAM,KAAK,GAAG,IAAIF,YAAY,CAACI,QAAQ,CAAC,yBAAyB,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,yCAAyC,CAAC,EAAE;UAC1I,MAAML,KAAK;QACb;;QAEA;QACA,MAAMA,KAAK;MACb;IACF,CAAC;IACD;IACAM,QAAQ,EAAE,MAAAA,CAAO;MAAEkC,QAAQ;MAAEK;IAAO,CAAC,KAAK;MACxC,MAAMC,YAAY,GAAGD,MAAM,IAAIvD,WAAW,CAACyD,gBAAgB,CAAC,CAAC;MAC7D,IAAI,CAACD,YAAY,EAAE;;MAEnB;MACA,MAAMrD,WAAW,CAACc,aAAa,CAAC;QAAEC,QAAQ,EAAEjC,SAAS,CAAC0E,OAAO,CAACT,QAAQ,CAACM,YAAY;MAAE,CAAC,CAAC;MACvF,MAAMrD,WAAW,CAACc,aAAa,CAAC;QAAEC,QAAQ,EAAEjC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;;MAE3E;MACA,MAAMwC,uBAAuB,GAAGzD,WAAW,CAACmB,YAAY,CAACrC,SAAS,CAAC0E,OAAO,CAACT,QAAQ,CAACM,YAAY,CAAC,CAAC;MAClG,MAAMnC,YAAY,GAAGlB,WAAW,CAACmB,YAAY,CAAOrC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIwC,uBAAuB,EAAE;QAC3BzD,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAAC0E,OAAO,CAACT,QAAQ,CAACM,YAAY,CAAC,EAAE;UACjE,GAAGI,uBAAuB;UAC1B,GAAGV;QACL,CAAC,CAAC;MACJ;;MAEA;MACA,IAAI7B,YAAY,EAAE;QAChBlB,WAAW,CAACoB,YAAY,CAAOtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACf8B,eAAe,EAAE;YACf,GAAG9B,YAAY,CAAC8B,eAAe;YAC/B,GAAGD;UACL;QACF,CAAC,CAAC;MACJ;MAEA,OAAO;QAAEU,uBAAuB;QAAEvC;MAAa,CAAC;IAClD,CAAC;IACD;IACAK,OAAO,EAAEA,CAAChB,KAAK,EAAE;MAAE6C;IAAO,CAAC,EAAE5B,OAAO,KAAK;MACvC,MAAM6B,YAAY,GAAGD,MAAM,IAAIvD,WAAW,CAACyD,gBAAgB,CAAC,CAAC;MAC7D,IAAI9B,OAAO,EAAEiC,uBAAuB,IAAIJ,YAAY,EAAE;QACpDrD,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAAC0E,OAAO,CAACT,QAAQ,CAACM,YAAY,CAAC,EAAE7B,OAAO,CAACiC,uBAAuB,CAAC;MACrG;MACA,IAAIjC,OAAO,EAAEN,YAAY,EAAE;QACzBlB,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEO,OAAO,CAACN,YAAY,CAAC;MAC9E;MACAhC,KAAK,CAACqB,KAAK,CAACA,KAAK,YAAYkB,KAAK,GAAGlB,KAAK,CAACE,OAAO,GAAG,mCAAmC,CAAC;IAC3F,CAAC;IACD;IACAiB,SAAS,EAAEA,CAACC,IAAI,EAAE;MAAEyB;IAAO,CAAC,KAAK;MAC/B,MAAMC,YAAY,GAAGD,MAAM,IAAIvD,WAAW,CAACyD,gBAAgB,CAAC,CAAC;MAC7D,IAAID,YAAY,EAAE;QAChBrD,WAAW,CAACoB,YAAY,CAACtC,SAAS,CAAC0E,OAAO,CAACT,QAAQ,CAACM,YAAY,CAAC,EAAE1B,IAAI,CAAC;MAC1E;MACA;MACA,MAAM+B,WAAW,GAAG1D,WAAW,CAACmB,YAAY,CAAOrC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;MAChF,IAAIyC,WAAW,EAAE;QACf,MAAMC,WAAW,GAAG;UAClB,GAAGD,WAAW;UACdV,eAAe,EAAErB;QACnB,CAAC;QACD3B,WAAW,CAACoB,YAAY,CAAOtC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE0C,WAAW,CAAC;MAC3E;MACA5E,wBAAwB,CAACiB,WAAW,CAAC;IACvC,CAAC;IACD;IACAiD,SAAS,EAAEA,CAACtB,IAAI,EAAEpB,KAAK,EAAE;MAAE6C;IAAO,CAAC,KAAK;MACtC,MAAMC,YAAY,GAAGD,MAAM,IAAIvD,WAAW,CAACyD,gBAAgB,CAAC,CAAC;MAC7D,IAAID,YAAY,EAAE;QAChBrD,WAAW,CAACkD,iBAAiB,CAAC;UAAEnC,QAAQ,EAAEjC,SAAS,CAAC0E,OAAO,CAACT,QAAQ,CAACM,YAAY;QAAE,CAAC,CAAC;MACvF;MACArD,WAAW,CAACkD,iBAAiB,CAAC;QAAEnC,QAAQ,EAAEjC,SAAS,CAACkC,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;IAC3E;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAM2C,aAAa,GAAGA,CAAA,KAAM;EACjC,MAAM;IAAE/D,WAAW;IAAEC,eAAe;IAAER;EAAS,CAAC,GAAGL,MAAM,CAAC,CAAC;EAE3D,OAAOL,WAAW,CAAC;IACjBqB,UAAU,EAAE,MAAAA,CAAO;MACjBkC,IAAI;MACJ0B,UAAU;MACVC,QAAQ;MACRC;IAMF,CAAC,KAAK;MACJ;MACA,IAAI,CAAClE,WAAW,CAACM,aAAa,CAAC,CAAC,IAAIL,eAAe,EAAE;QACnD,IAAI;UACF;UACA,MAAMD,WAAW,CAACO,iBAAiB,CAACN,eAAe,EAAET,qBAAqB,CAACC,QAAQ,EAAEQ,eAAe,CAAC,CAAC;QACxG,CAAC,CAAC,OAAOO,UAAU,EAAE;UACnB,MAAMA,UAAU;QAClB;MACF;MAEA,IAAI;QACF,OAAO,MAAMR,WAAW,CAACwC,WAAW,CAACF,IAAI,EAAS0B,UAAU,EAAEC,QAAQ,EAAEC,UAAU,CAAC;MACrF,CAAC,CAAC,OAAOxD,KAAU,EAAE;QACnB,MAAMC,YAAY,GAAGD,KAAK,EAAEE,OAAO,IAAI,EAAE;QACzC,MAAMC,MAAM,GAAGH,KAAK,EAAEG,MAAM,IAAIH,KAAK,EAAEI,QAAQ,EAAED,MAAM;;QAEvD;QACA,IAAIA,MAAM,KAAK,GAAG,IAAIF,YAAY,CAACI,QAAQ,CAAC,yBAAyB,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,yCAAyC,CAAC,EAAE;UAC1I,MAAML,KAAK;QACb;;QAEA;QACA,MAAMA,KAAK;MACb;IACF;EACF,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useMutation","useQueryClient","queryKeys","invalidateAccountQueries","invalidateUserQueries","useOxy","toast","refreshAvatarInStore","useAuthStore","useUpdateProfile","oxyServices","activeSessionId","user","queryClient","mutationFn","updates","hasValidToken","getTokenBySession","tokenError","errorMessage","Error","message","String","includes","updateProfile","error","status","response","onMutate","cancelQueries","queryKey","accounts","current","previousUser","getQueryData","setQueryData","users","profile","onError","context","onSuccess","data","getState","setUser","avatar","useUploadAvatar","file","uploadResult","assetUpload","fileId","id","optimisticUser","uri","success","useUpdateAccountSettings","settings","privacySettings","onSettled","invalidateQueries","useUpdatePrivacySettings","userId","targetUserId","updatePrivacySettings","privacy","previousPrivacySettings","currentUser","updatedUser","useUploadFile","visibility","metadata","onProgress"],"sourceRoot":"../../../../../src","sources":["ui/hooks/mutations/useAccountMutations.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,cAAc,QAAQ,uBAAuB;AAEnE,SAASC,SAAS,EAAEC,wBAAwB,EAAEC,qBAAqB,QAAQ,sBAAsB;AACjG,SAASC,MAAM,QAAQ,0BAA0B;AACjD,SAASC,KAAK,QAAQ,qBAAqB;AAC3C,SAASC,oBAAoB,QAAQ,yBAAyB;AAC9D,SAASC,YAAY,QAAQ,wBAAwB;;AAErD;AACA;AACA;AACA,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAM;IAAEC,WAAW;IAAEC,eAAe;IAAEC;EAAK,CAAC,GAAGP,MAAM,CAAC,CAAC;EACvD,MAAMQ,WAAW,GAAGZ,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBc,UAAU,EAAE,MAAOC,OAAsB,IAAK;MAC5C;MACA,IAAI,CAACL,WAAW,CAACM,aAAa,CAAC,CAAC,IAAIL,eAAe,EAAE;QACnD,IAAI;UACF;UACA,MAAMD,WAAW,CAACO,iBAAiB,CAACN,eAAe,CAAC;QACtD,CAAC,CAAC,OAAOO,UAAU,EAAE;UACnB;UACA,MAAMC,YAAY,GAAGD,UAAU,YAAYE,KAAK,GAAGF,UAAU,CAACG,OAAO,GAAGC,MAAM,CAACJ,UAAU,CAAC;UAC1F,IAAIC,YAAY,CAACI,QAAQ,CAAC,+BAA+B,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9F;YACA,MAAM,IAAIH,KAAK,CAAC,+CAA+C,CAAC;UAClE,CAAC,MAAM;YACL,MAAMF,UAAU;UAClB;QACF;MACF;MAEA,IAAI;QACF,OAAO,MAAMR,WAAW,CAACc,aAAa,CAACT,OAAO,CAAC;MACjD,CAAC,CAAC,OAAOU,KAAU,EAAE;QACnB,MAAMN,YAAY,GAAGM,KAAK,EAAEJ,OAAO,IAAI,EAAE;QACzC,MAAMK,MAAM,GAAGD,KAAK,EAAEC,MAAM,IAAID,KAAK,EAAEE,QAAQ,EAAED,MAAM;;QAEvD;QACA,IAAIA,MAAM,KAAK,GAAG,IAAIP,YAAY,CAACI,QAAQ,CAAC,yBAAyB,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,yCAAyC,CAAC,EAAE;UAC1I;UACA,MAAM,IAAIH,KAAK,CAAC,8CAA8C,CAAC;QACjE;;QAEA;QACA,MAAMK,KAAK;MACb;IACF,CAAC;IACD;IACAG,QAAQ,EAAE,MAAOb,OAAO,IAAK;MAC3B;MACA,MAAMF,WAAW,CAACgB,aAAa,CAAC;QAAEC,QAAQ,EAAE5B,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;;MAE3E;MACA,MAAMC,YAAY,GAAGpB,WAAW,CAACqB,YAAY,CAAOhC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIC,YAAY,EAAE;QAChBpB,WAAW,CAACsB,YAAY,CAAOjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACf,GAAGlB;QACL,CAAC,CAAC;;QAEF;QACA,IAAIJ,eAAe,EAAE;UACnBE,WAAW,CAACsB,YAAY,CAAOjC,SAAS,CAACkC,KAAK,CAACC,OAAO,CAAC1B,eAAe,CAAC,EAAE;YACvE,GAAGsB,YAAY;YACf,GAAGlB;UACL,CAAC,CAAC;QACJ;MACF;MAEA,OAAO;QAAEkB;MAAa,CAAC;IACzB,CAAC;IACD;IACAK,OAAO,EAAEA,CAACb,KAAK,EAAEV,OAAO,EAAEwB,OAAO,KAAK;MACpC,IAAIA,OAAO,EAAEN,YAAY,EAAE;QACzBpB,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEO,OAAO,CAACN,YAAY,CAAC;QAC5E,IAAItB,eAAe,EAAE;UACnBE,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAACkC,KAAK,CAACC,OAAO,CAAC1B,eAAe,CAAC,EAAE4B,OAAO,CAACN,YAAY,CAAC;QAC1F;MACF;MACA3B,KAAK,CAACmB,KAAK,CAACA,KAAK,YAAYL,KAAK,GAAGK,KAAK,CAACJ,OAAO,GAAG,0BAA0B,CAAC;IAClF,CAAC;IACD;IACAmB,SAAS,EAAEA,CAACC,IAAI,EAAE1B,OAAO,KAAK;MAC5B;MACAF,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAES,IAAI,CAAC;MAC5D,IAAI9B,eAAe,EAAE;QACnBE,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAACkC,KAAK,CAACC,OAAO,CAAC1B,eAAe,CAAC,EAAE8B,IAAI,CAAC;MAC1E;;MAEA;MACAjC,YAAY,CAACkC,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACF,IAAI,CAAC;;MAErC;MACA,IAAI1B,OAAO,CAAC6B,MAAM,IAAIjC,eAAe,IAAID,WAAW,EAAE;QACpDH,oBAAoB,CAACI,eAAe,EAAEI,OAAO,CAAC6B,MAAM,EAAElC,WAAW,CAAC;MACpE;;MAEA;MACAN,qBAAqB,CAACS,WAAW,CAAC;MAClCV,wBAAwB,CAACU,WAAW,CAAC;IACvC;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMgC,eAAe,GAAGA,CAAA,KAAM;EACnC,MAAM;IAAEnC,WAAW;IAAEC;EAAgB,CAAC,GAAGN,MAAM,CAAC,CAAC;EACjD,MAAMQ,WAAW,GAAGZ,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBc,UAAU,EAAE,MAAOgC,IAAkE,IAAK;MACxF;MACA,IAAI,CAACpC,WAAW,CAACM,aAAa,CAAC,CAAC,IAAIL,eAAe,EAAE;QACnD,IAAI;UACF,MAAMD,WAAW,CAACO,iBAAiB,CAACN,eAAe,CAAC;QACtD,CAAC,CAAC,OAAOO,UAAU,EAAE;UACnB,MAAMC,YAAY,GAAGD,UAAU,YAAYE,KAAK,GAAGF,UAAU,CAACG,OAAO,GAAGC,MAAM,CAACJ,UAAU,CAAC;UAC1F,IAAIC,YAAY,CAACI,QAAQ,CAAC,+BAA+B,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9F;YACA,MAAM,IAAIH,KAAK,CAAC,+CAA+C,CAAC;UAClE,CAAC,MAAM;YACL,MAAMF,UAAU;UAClB;QACF;MACF;MAEA,IAAI;QACF;QACA,MAAM6B,YAAY,GAAG,MAAMrC,WAAW,CAACsC,WAAW,CAACF,IAAI,EAAS,QAAQ,CAAC;QACzE,MAAMG,MAAM,GAAGF,YAAY,EAAED,IAAI,EAAEI,EAAE,IAAIH,YAAY,EAAEG,EAAE,IAAIH,YAAY;QAEzE,IAAI,CAACE,MAAM,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;UACzC,MAAM,IAAI7B,KAAK,CAAC,0CAA0C,CAAC;QAC7D;;QAEA;QACA,OAAO,MAAMV,WAAW,CAACc,aAAa,CAAC;UAAEoB,MAAM,EAAEK;QAAO,CAAC,CAAC;MAC5D,CAAC,CAAC,OAAOxB,KAAU,EAAE;QACnB,MAAMN,YAAY,GAAGM,KAAK,EAAEJ,OAAO,IAAI,EAAE;QACzC,MAAMK,MAAM,GAAGD,KAAK,EAAEC,MAAM,IAAID,KAAK,EAAEE,QAAQ,EAAED,MAAM;;QAEvD;QACA,IAAIA,MAAM,KAAK,GAAG,IAAIP,YAAY,CAACI,QAAQ,CAAC,yBAAyB,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,yCAAyC,CAAC,EAAE;UAC1I;UACA,MAAM,IAAIH,KAAK,CAAC,8CAA8C,CAAC;QACjE;;QAEA;QACA,MAAMK,KAAK;MACb;IACF,CAAC;IACDG,QAAQ,EAAE,MAAOkB,IAAI,IAAK;MACxB,MAAMjC,WAAW,CAACgB,aAAa,CAAC;QAAEC,QAAQ,EAAE5B,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;MAC3E,MAAMC,YAAY,GAAGpB,WAAW,CAACqB,YAAY,CAAOhC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIC,YAAY,EAAE;QAChB,MAAMkB,cAAc,GAAG;UACrB,GAAGlB,YAAY;UACfW,MAAM,EAAEE,IAAI,CAACM,GAAG,CAAE;QACpB,CAAC;QACDvC,WAAW,CAACsB,YAAY,CAAOjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEmB,cAAc,CAAC;QAC5E,IAAIxC,eAAe,EAAE;UACnBE,WAAW,CAACsB,YAAY,CAAOjC,SAAS,CAACkC,KAAK,CAACC,OAAO,CAAC1B,eAAe,CAAC,EAAEwC,cAAc,CAAC;QAC1F;MACF;MAEA,OAAO;QAAElB;MAAa,CAAC;IACzB,CAAC;IACDK,OAAO,EAAEA,CAACb,KAAK,EAAEqB,IAAI,EAAEP,OAAO,KAAK;MACjC,IAAIA,OAAO,EAAEN,YAAY,EAAE;QACzBpB,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEO,OAAO,CAACN,YAAY,CAAC;QAC5E,IAAItB,eAAe,EAAE;UACnBE,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAACkC,KAAK,CAACC,OAAO,CAAC1B,eAAe,CAAC,EAAE4B,OAAO,CAACN,YAAY,CAAC;QAC1F;MACF;MACA3B,KAAK,CAACmB,KAAK,CAACA,KAAK,YAAYL,KAAK,GAAGK,KAAK,CAACJ,OAAO,GAAG,yBAAyB,CAAC;IACjF,CAAC;IACDmB,SAAS,EAAGC,IAAI,IAAK;MACnB5B,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAES,IAAI,CAAC;MAC5D,IAAI9B,eAAe,EAAE;QACnBE,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAACkC,KAAK,CAACC,OAAO,CAAC1B,eAAe,CAAC,EAAE8B,IAAI,CAAC;MAC1E;;MAEA;MACAjC,YAAY,CAACkC,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACF,IAAI,CAAC;;MAErC;MACA,IAAIA,IAAI,EAAEG,MAAM,IAAIjC,eAAe,IAAID,WAAW,EAAE;QAClDH,oBAAoB,CAACI,eAAe,EAAE8B,IAAI,CAACG,MAAM,EAAElC,WAAW,CAAC;MACjE;;MAEA;MACAN,qBAAqB,CAACS,WAAW,CAAC;MAClCV,wBAAwB,CAACU,WAAW,CAAC;MACrCP,KAAK,CAAC+C,OAAO,CAAC,6BAA6B,CAAC;IAC9C;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAGA,CAAA,KAAM;EAC5C,MAAM;IAAE5C,WAAW;IAAEC;EAAgB,CAAC,GAAGN,MAAM,CAAC,CAAC;EACjD,MAAMQ,WAAW,GAAGZ,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBc,UAAU,EAAE,MAAOyC,QAA6B,IAAK;MACnD,OAAO,MAAM7C,WAAW,CAACc,aAAa,CAAC;QAAEgC,eAAe,EAAED;MAAS,CAAC,CAAC;IACvE,CAAC;IACD3B,QAAQ,EAAE,MAAO2B,QAAQ,IAAK;MAC5B,MAAM1C,WAAW,CAACgB,aAAa,CAAC;QAAEC,QAAQ,EAAE5B,SAAS,CAAC6B,QAAQ,CAACwB,QAAQ,CAAC;MAAE,CAAC,CAAC;MAC5E,MAAMtB,YAAY,GAAGpB,WAAW,CAACqB,YAAY,CAAOhC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;MAEjF,IAAIC,YAAY,EAAE;QAChBpB,WAAW,CAACsB,YAAY,CAAOjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACfuB,eAAe,EAAE;YACf,GAAGvB,YAAY,CAACuB,eAAe;YAC/B,GAAGD;UACL;QACF,CAAC,CAAC;MACJ;MAEA,OAAO;QAAEtB;MAAa,CAAC;IACzB,CAAC;IACDK,OAAO,EAAEA,CAACb,KAAK,EAAE8B,QAAQ,EAAEhB,OAAO,KAAK;MACrC,IAAIA,OAAO,EAAEN,YAAY,EAAE;QACzBpB,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEO,OAAO,CAACN,YAAY,CAAC;MAC9E;MACA3B,KAAK,CAACmB,KAAK,CAACA,KAAK,YAAYL,KAAK,GAAGK,KAAK,CAACJ,OAAO,GAAG,2BAA2B,CAAC;IACnF,CAAC;IACDmB,SAAS,EAAGC,IAAI,IAAK;MACnB5B,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAES,IAAI,CAAC;;MAE5D;MACAjC,YAAY,CAACkC,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACF,IAAI,CAAC;MAErCtC,wBAAwB,CAACU,WAAW,CAAC;MACrCP,KAAK,CAAC+C,OAAO,CAAC,+BAA+B,CAAC;IAChD,CAAC;IACDI,SAAS,EAAEA,CAAA,KAAM;MACf5C,WAAW,CAAC6C,iBAAiB,CAAC;QAAE5B,QAAQ,EAAE5B,SAAS,CAAC6B,QAAQ,CAACwB,QAAQ,CAAC;MAAE,CAAC,CAAC;IAC5E;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMI,wBAAwB,GAAGA,CAAA,KAAM;EAC5C,MAAM;IAAEjD,WAAW;IAAEC,eAAe;IAAEC;EAAK,CAAC,GAAGP,MAAM,CAAC,CAAC;EACvD,MAAMQ,WAAW,GAAGZ,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBc,UAAU,EAAE,MAAAA,CAAO;MAAEyC,QAAQ;MAAEK;IAA2D,CAAC,KAAK;MAC9F,MAAMC,YAAY,GAAGD,MAAM,IAAIhD,IAAI,EAAEsC,EAAE;MACvC,IAAI,CAACW,YAAY,EAAE;QACjB,MAAM,IAAIzC,KAAK,CAAC,qBAAqB,CAAC;MACxC;;MAEA;MACA,IAAI,CAACV,WAAW,CAACM,aAAa,CAAC,CAAC,IAAIL,eAAe,EAAE;QACnD,IAAI;UACF;UACA,MAAMD,WAAW,CAACO,iBAAiB,CAACN,eAAe,CAAC;QACtD,CAAC,CAAC,OAAOO,UAAU,EAAE;UACnB;UACA,MAAMC,YAAY,GAAGD,UAAU,YAAYE,KAAK,GAAGF,UAAU,CAACG,OAAO,GAAGC,MAAM,CAACJ,UAAU,CAAC;UAC1F,IAAIC,YAAY,CAACI,QAAQ,CAAC,+BAA+B,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9F;YACA,MAAM,IAAIH,KAAK,CAAC,+CAA+C,CAAC;UAClE,CAAC,MAAM;YACL,MAAMF,UAAU;UAClB;QACF;MACF;MAEA,IAAI;QACF,OAAO,MAAMR,WAAW,CAACoD,qBAAqB,CAACP,QAAQ,EAAEM,YAAY,CAAC;MACxE,CAAC,CAAC,OAAOpC,KAAU,EAAE;QACnB,MAAMN,YAAY,GAAGM,KAAK,EAAEJ,OAAO,IAAI,EAAE;QACzC,MAAMK,MAAM,GAAGD,KAAK,EAAEC,MAAM,IAAID,KAAK,EAAEE,QAAQ,EAAED,MAAM;;QAEvD;QACA,IAAIA,MAAM,KAAK,GAAG,IAAIP,YAAY,CAACI,QAAQ,CAAC,yBAAyB,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,yCAAyC,CAAC,EAAE;UAC1I;UACA,MAAM,IAAIH,KAAK,CAAC,8CAA8C,CAAC;QACjE;;QAEA;QACA,MAAMK,KAAK;MACb;IACF,CAAC;IACD;IACAG,QAAQ,EAAE,MAAAA,CAAO;MAAE2B,QAAQ;MAAEK;IAAO,CAAC,KAAK;MACxC,MAAMC,YAAY,GAAGD,MAAM,IAAIhD,IAAI,EAAEsC,EAAE;MACvC,IAAI,CAACW,YAAY,EAAE;;MAEnB;MACA,MAAMhD,WAAW,CAACgB,aAAa,CAAC;QAAEC,QAAQ,EAAE5B,SAAS,CAAC6D,OAAO,CAACR,QAAQ,CAACM,YAAY;MAAE,CAAC,CAAC;MACvF,MAAMhD,WAAW,CAACgB,aAAa,CAAC;QAAEC,QAAQ,EAAE5B,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;;MAE3E;MACA,MAAMgC,uBAAuB,GAAGnD,WAAW,CAACqB,YAAY,CAAChC,SAAS,CAAC6D,OAAO,CAACR,QAAQ,CAACM,YAAY,CAAC,CAAC;MAClG,MAAM5B,YAAY,GAAGpB,WAAW,CAACqB,YAAY,CAAOhC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIgC,uBAAuB,EAAE;QAC3BnD,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6D,OAAO,CAACR,QAAQ,CAACM,YAAY,CAAC,EAAE;UACjE,GAAGG,uBAAuB;UAC1B,GAAGT;QACL,CAAC,CAAC;MACJ;;MAEA;MACA,IAAItB,YAAY,EAAE;QAChBpB,WAAW,CAACsB,YAAY,CAAOjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACfuB,eAAe,EAAE;YACf,GAAGvB,YAAY,CAACuB,eAAe;YAC/B,GAAGD;UACL;QACF,CAAC,CAAC;MACJ;MAEA,OAAO;QAAES,uBAAuB;QAAE/B;MAAa,CAAC;IAClD,CAAC;IACD;IACAK,OAAO,EAAEA,CAACb,KAAK,EAAE;MAAEmC;IAAO,CAAC,EAAErB,OAAO,KAAK;MACvC,MAAMsB,YAAY,GAAGD,MAAM,IAAIhD,IAAI,EAAEsC,EAAE;MACvC,IAAIX,OAAO,EAAEyB,uBAAuB,IAAIH,YAAY,EAAE;QACpDhD,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6D,OAAO,CAACR,QAAQ,CAACM,YAAY,CAAC,EAAEtB,OAAO,CAACyB,uBAAuB,CAAC;MACrG;MACA,IAAIzB,OAAO,EAAEN,YAAY,EAAE;QACzBpB,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEO,OAAO,CAACN,YAAY,CAAC;MAC9E;MACA3B,KAAK,CAACmB,KAAK,CAACA,KAAK,YAAYL,KAAK,GAAGK,KAAK,CAACJ,OAAO,GAAG,mCAAmC,CAAC;IAC3F,CAAC;IACD;IACAmB,SAAS,EAAEA,CAACC,IAAI,EAAE;MAAEmB;IAAO,CAAC,KAAK;MAC/B,MAAMC,YAAY,GAAGD,MAAM,IAAIhD,IAAI,EAAEsC,EAAE;MACvC,IAAIW,YAAY,EAAE;QAChBhD,WAAW,CAACsB,YAAY,CAACjC,SAAS,CAAC6D,OAAO,CAACR,QAAQ,CAACM,YAAY,CAAC,EAAEpB,IAAI,CAAC;MAC1E;MACA;MACA,MAAMwB,WAAW,GAAGpD,WAAW,CAACqB,YAAY,CAAOhC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;MAChF,IAAIiC,WAAW,EAAE;QACf,MAAMC,WAAW,GAAG;UAClB,GAAGD,WAAW;UACdT,eAAe,EAAEf;QACnB,CAAC;QACD5B,WAAW,CAACsB,YAAY,CAAOjC,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEkC,WAAW,CAAC;;QAEzE;QACA1D,YAAY,CAACkC,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACuB,WAAW,CAAC;MAC9C;MACA/D,wBAAwB,CAACU,WAAW,CAAC;IACvC,CAAC;IACD;IACA4C,SAAS,EAAEA,CAAChB,IAAI,EAAEhB,KAAK,EAAE;MAAEmC;IAAO,CAAC,KAAK;MACtC,MAAMC,YAAY,GAAGD,MAAM,IAAIhD,IAAI,EAAEsC,EAAE;MACvC,IAAIW,YAAY,EAAE;QAChBhD,WAAW,CAAC6C,iBAAiB,CAAC;UAAE5B,QAAQ,EAAE5B,SAAS,CAAC6D,OAAO,CAACR,QAAQ,CAACM,YAAY;QAAE,CAAC,CAAC;MACvF;MACAhD,WAAW,CAAC6C,iBAAiB,CAAC;QAAE5B,QAAQ,EAAE5B,SAAS,CAAC6B,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;IAC3E;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMmC,aAAa,GAAGA,CAAA,KAAM;EACjC,MAAM;IAAEzD,WAAW;IAAEC;EAAgB,CAAC,GAAGN,MAAM,CAAC,CAAC;EAEjD,OAAOL,WAAW,CAAC;IACjBc,UAAU,EAAE,MAAAA,CAAO;MACjBgC,IAAI;MACJsB,UAAU;MACVC,QAAQ;MACRC;IAMF,CAAC,KAAK;MACJ;MACA,IAAI,CAAC5D,WAAW,CAACM,aAAa,CAAC,CAAC,IAAIL,eAAe,EAAE;QACnD,IAAI;UACF;UACA,MAAMD,WAAW,CAACO,iBAAiB,CAACN,eAAe,CAAC;QACtD,CAAC,CAAC,OAAOO,UAAU,EAAE;UACnB;UACA,MAAMC,YAAY,GAAGD,UAAU,YAAYE,KAAK,GAAGF,UAAU,CAACG,OAAO,GAAGC,MAAM,CAACJ,UAAU,CAAC;UAC1F,IAAIC,YAAY,CAACI,QAAQ,CAAC,+BAA+B,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9F;YACA,MAAM,IAAIH,KAAK,CAAC,+CAA+C,CAAC;UAClE,CAAC,MAAM;YACL,MAAMF,UAAU;UAClB;QACF;MACF;MAEA,IAAI;QACF,OAAO,MAAMR,WAAW,CAACsC,WAAW,CAACF,IAAI,EAASsB,UAAU,EAAEC,QAAQ,EAAEC,UAAU,CAAC;MACrF,CAAC,CAAC,OAAO7C,KAAU,EAAE;QACnB,MAAMN,YAAY,GAAGM,KAAK,EAAEJ,OAAO,IAAI,EAAE;QACzC,MAAMK,MAAM,GAAGD,KAAK,EAAEC,MAAM,IAAID,KAAK,EAAEE,QAAQ,EAAED,MAAM;;QAEvD;QACA,IAAIA,MAAM,KAAK,GAAG,IAAIP,YAAY,CAACI,QAAQ,CAAC,yBAAyB,CAAC,IAAIJ,YAAY,CAACI,QAAQ,CAAC,yCAAyC,CAAC,EAAE;UAC1I;UACA,MAAM,IAAIH,KAAK,CAAC,8CAA8C,CAAC;QACjE;;QAEA;QACA,MAAMK,KAAK;MACb;IACF;EACF,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { useQuery, useQueries } from '@tanstack/react-query';
|
|
4
4
|
import { queryKeys } from './queryKeys';
|
|
5
|
-
import { useOxy } from '../../context/
|
|
6
|
-
import { logger } from '../../../utils/loggerUtils';
|
|
5
|
+
import { useOxy } from '../../context/OxyContext';
|
|
7
6
|
|
|
8
7
|
/**
|
|
9
8
|
* Get user profile by session ID
|
|
@@ -21,9 +20,9 @@ export const useUserProfile = (sessionId, options) => {
|
|
|
21
20
|
return await oxyServices.getUserBySession(sessionId);
|
|
22
21
|
},
|
|
23
22
|
enabled: options?.enabled !== false && !!sessionId,
|
|
24
|
-
staleTime:
|
|
25
|
-
//
|
|
26
|
-
gcTime:
|
|
23
|
+
staleTime: 5 * 60 * 1000,
|
|
24
|
+
// 5 minutes
|
|
25
|
+
gcTime: 30 * 60 * 1000 // 30 minutes
|
|
27
26
|
});
|
|
28
27
|
};
|
|
29
28
|
|
|
@@ -42,9 +41,8 @@ export const useUserProfiles = (sessionIds, options) => {
|
|
|
42
41
|
return results[0]?.user || null;
|
|
43
42
|
},
|
|
44
43
|
enabled: options?.enabled !== false && !!sessionId,
|
|
45
|
-
staleTime:
|
|
46
|
-
|
|
47
|
-
gcTime: 5 * 60 * 1000 // 5 minutes
|
|
44
|
+
staleTime: 5 * 60 * 1000,
|
|
45
|
+
gcTime: 30 * 60 * 1000
|
|
48
46
|
}))
|
|
49
47
|
});
|
|
50
48
|
};
|
|
@@ -61,28 +59,15 @@ export const useCurrentUser = options => {
|
|
|
61
59
|
return useQuery({
|
|
62
60
|
queryKey: queryKeys.accounts.current(),
|
|
63
61
|
queryFn: async () => {
|
|
64
|
-
logger.debug('Fetching current user', {
|
|
65
|
-
component: 'useCurrentUser',
|
|
66
|
-
sessionId: activeSessionId ?? undefined
|
|
67
|
-
});
|
|
68
62
|
if (!activeSessionId) {
|
|
69
63
|
throw new Error('No active session');
|
|
70
64
|
}
|
|
71
|
-
|
|
72
|
-
logger.debug('Current user fetched', {
|
|
73
|
-
component: 'useCurrentUser',
|
|
74
|
-
username: userData.username
|
|
75
|
-
});
|
|
76
|
-
return userData;
|
|
65
|
+
return await oxyServices.getUserBySession(activeSessionId);
|
|
77
66
|
},
|
|
78
67
|
enabled: options?.enabled !== false && isAuthenticated && !!activeSessionId,
|
|
79
|
-
staleTime:
|
|
80
|
-
//
|
|
81
|
-
gcTime:
|
|
82
|
-
// 5 minutes
|
|
83
|
-
refetchOnMount: 'always',
|
|
84
|
-
// Always refetch on mount
|
|
85
|
-
refetchOnWindowFocus: false
|
|
68
|
+
staleTime: 1 * 60 * 1000,
|
|
69
|
+
// 1 minute for current user
|
|
70
|
+
gcTime: 30 * 60 * 1000
|
|
86
71
|
});
|
|
87
72
|
};
|
|
88
73
|
|
|
@@ -102,9 +87,8 @@ export const useUserById = (userId, options) => {
|
|
|
102
87
|
return await oxyServices.getUserById(userId);
|
|
103
88
|
},
|
|
104
89
|
enabled: options?.enabled !== false && !!userId,
|
|
105
|
-
staleTime:
|
|
106
|
-
|
|
107
|
-
gcTime: 10 * 60 * 1000 // 10 minutes
|
|
90
|
+
staleTime: 5 * 60 * 1000,
|
|
91
|
+
gcTime: 30 * 60 * 1000
|
|
108
92
|
});
|
|
109
93
|
};
|
|
110
94
|
|
|
@@ -124,9 +108,8 @@ export const useUserByUsername = (username, options) => {
|
|
|
124
108
|
return await oxyServices.getProfileByUsername(username);
|
|
125
109
|
},
|
|
126
110
|
enabled: options?.enabled !== false && !!username,
|
|
127
|
-
staleTime:
|
|
128
|
-
|
|
129
|
-
gcTime: 10 * 60 * 1000 // 10 minutes
|
|
111
|
+
staleTime: 5 * 60 * 1000,
|
|
112
|
+
gcTime: 30 * 60 * 1000
|
|
130
113
|
});
|
|
131
114
|
};
|
|
132
115
|
|
|
@@ -146,9 +129,8 @@ export const useUsersBySessions = (sessionIds, options) => {
|
|
|
146
129
|
return await oxyServices.getUsersBySessions(sessionIds);
|
|
147
130
|
},
|
|
148
131
|
enabled: options?.enabled !== false && sessionIds.length > 0,
|
|
149
|
-
staleTime:
|
|
150
|
-
|
|
151
|
-
gcTime: 5 * 60 * 1000 // 5 minutes
|
|
132
|
+
staleTime: 5 * 60 * 1000,
|
|
133
|
+
gcTime: 30 * 60 * 1000
|
|
152
134
|
});
|
|
153
135
|
};
|
|
154
136
|
|
|
@@ -159,12 +141,9 @@ export const usePrivacySettings = (userId, options) => {
|
|
|
159
141
|
const {
|
|
160
142
|
oxyServices,
|
|
161
143
|
activeSessionId,
|
|
162
|
-
|
|
144
|
+
user
|
|
163
145
|
} = useOxy();
|
|
164
|
-
|
|
165
|
-
// Never use user?.id as it may be set to publicKey
|
|
166
|
-
const targetUserId = userId || oxyServices.getCurrentUserId() || undefined;
|
|
167
|
-
const deviceId = activeSessionId ? sessions.find(s => s.sessionId === activeSessionId)?.deviceId : undefined;
|
|
146
|
+
const targetUserId = userId || user?.id;
|
|
168
147
|
return useQuery({
|
|
169
148
|
queryKey: queryKeys.privacy.settings(targetUserId),
|
|
170
149
|
queryFn: async () => {
|
|
@@ -176,9 +155,16 @@ export const usePrivacySettings = (userId, options) => {
|
|
|
176
155
|
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
177
156
|
try {
|
|
178
157
|
// Try to get token for the session
|
|
179
|
-
await oxyServices.getTokenBySession(activeSessionId
|
|
158
|
+
await oxyServices.getTokenBySession(activeSessionId);
|
|
180
159
|
} catch (tokenError) {
|
|
181
|
-
|
|
160
|
+
// If getting token fails, might be an offline session - try syncing
|
|
161
|
+
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
162
|
+
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
163
|
+
// Session sync should be handled by the app layer (e.g., accounts app's useIdentity hook)
|
|
164
|
+
throw new Error('Session needs to be synced. Please try again.');
|
|
165
|
+
} else {
|
|
166
|
+
throw tokenError;
|
|
167
|
+
}
|
|
182
168
|
}
|
|
183
169
|
}
|
|
184
170
|
try {
|
|
@@ -189,7 +175,8 @@ export const usePrivacySettings = (userId, options) => {
|
|
|
189
175
|
|
|
190
176
|
// Handle authentication errors
|
|
191
177
|
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
192
|
-
|
|
178
|
+
// Session sync should be handled by the app layer
|
|
179
|
+
throw new Error('Authentication failed. Please sign in again.');
|
|
193
180
|
}
|
|
194
181
|
|
|
195
182
|
// TanStack Query will automatically retry on network errors
|
|
@@ -197,8 +184,8 @@ export const usePrivacySettings = (userId, options) => {
|
|
|
197
184
|
}
|
|
198
185
|
},
|
|
199
186
|
enabled: options?.enabled !== false && !!targetUserId,
|
|
200
|
-
staleTime:
|
|
201
|
-
//
|
|
187
|
+
staleTime: 2 * 60 * 1000,
|
|
188
|
+
// 2 minutes
|
|
202
189
|
gcTime: 10 * 60 * 1000 // 10 minutes
|
|
203
190
|
});
|
|
204
191
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useQuery","useQueries","queryKeys","useOxy","
|
|
1
|
+
{"version":3,"names":["useQuery","useQueries","queryKeys","useOxy","useUserProfile","sessionId","options","oxyServices","queryKey","users","profile","queryFn","Error","getUserBySession","enabled","staleTime","gcTime","useUserProfiles","sessionIds","queries","map","results","getUsersBySessions","user","useCurrentUser","activeSessionId","isAuthenticated","accounts","current","useUserById","userId","detail","getUserById","useUserByUsername","username","details","getProfileByUsername","useUsersBySessions","list","length","usePrivacySettings","targetUserId","id","privacy","settings","hasValidToken","getTokenBySession","tokenError","errorMessage","message","String","includes","getPrivacySettings","error","status","response"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useAccountQueries.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useQuery","queryKeys","useOxy","useSecurityActivity","options","oxyServices","activeSessionId","queryKey","security","activity","limit","offset","eventType","queryFn","Error","response","getSecurityActivity","enabled","staleTime","gcTime","useRecentSecurityActivity","recent","getRecentSecurityActivity"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useSecurityQueries.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"names":["useQuery","queryKeys","useOxy","useSecurityActivity","options","oxyServices","activeSessionId","queryKey","security","activity","limit","offset","eventType","queryFn","Error","response","getSecurityActivity","enabled","staleTime","gcTime","useRecentSecurityActivity","recent","getRecentSecurityActivity"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useSecurityQueries.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,MAAM,QAAQ,0BAA0B;AAGjD;AACA;AACA;AACA,OAAO,MAAMC,mBAAmB,GAC9BC,OAKC,IACE;EACH,MAAM;IAAEC,WAAW;IAAEC;EAAgB,CAAC,GAAGJ,MAAM,CAAC,CAAC;EAEjD,OAAOF,QAAQ,CAAC;IACdO,QAAQ,EAAEN,SAAS,CAACO,QAAQ,CAACC,QAAQ,CACnCL,OAAO,EAAEM,KAAK,EACdN,OAAO,EAAEO,MAAM,EACfP,OAAO,EAAEQ,SACX,CAAC;IACDC,OAAO,EAAE,MAAAA,CAAA,KAAY;MACnB,IAAI,CAACP,eAAe,EAAE;QACpB,MAAM,IAAIQ,KAAK,CAAC,mBAAmB,CAAC;MACtC;MAEA,MAAMC,QAAQ,GAAG,MAAMV,WAAW,CAACW,mBAAmB,CACpDZ,OAAO,EAAEM,KAAK,EACdN,OAAO,EAAEO,MAAM,EACfP,OAAO,EAAEQ,SACX,CAAC;MAED,OAAOG,QAAQ;IACjB,CAAC;IACDE,OAAO,EAAGb,OAAO,EAAEa,OAAO,KAAK,KAAK,IAAK,CAAC,CAACX,eAAe;IAC1DY,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;IAAE;IAC1BC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAE;EAC1B,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,yBAAyB,GAAGA,CAACV,KAAa,GAAG,EAAE,KAAK;EAC/D,MAAM;IAAEL,WAAW;IAAEC;EAAgB,CAAC,GAAGJ,MAAM,CAAC,CAAC;EAEjD,OAAOF,QAAQ,CAAqB;IAClCO,QAAQ,EAAEN,SAAS,CAACO,QAAQ,CAACa,MAAM,CAACX,KAAK,CAAC;IAC1CG,OAAO,EAAE,MAAAA,CAAA,KAAY;MACnB,IAAI,CAACP,eAAe,EAAE;QACpB,MAAM,IAAIQ,KAAK,CAAC,mBAAmB,CAAC;MACtC;MAEA,OAAO,MAAMT,WAAW,CAACiB,yBAAyB,CAACZ,KAAK,CAAC;IAC3D,CAAC;IACDO,OAAO,EAAE,CAAC,CAACX,eAAe;IAC1BY,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;IAAE;IAC1BC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAE;EAC1B,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { useQuery } from '@tanstack/react-query';
|
|
4
4
|
import { queryKeys } from './queryKeys';
|
|
5
|
-
import { useOxy } from '../../context/
|
|
5
|
+
import { useOxy } from '../../context/OxyContext';
|
|
6
6
|
import { fetchSessionsWithFallback, mapSessionsToClient } from '../../utils/sessionHelpers';
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -97,10 +97,8 @@ export const useUserDevices = options => {
|
|
|
97
97
|
const {
|
|
98
98
|
oxyServices,
|
|
99
99
|
isAuthenticated,
|
|
100
|
-
activeSessionId
|
|
101
|
-
sessions
|
|
100
|
+
activeSessionId
|
|
102
101
|
} = useOxy();
|
|
103
|
-
const deviceId = activeSessionId ? sessions.find(s => s.sessionId === activeSessionId)?.deviceId : undefined;
|
|
104
102
|
return useQuery({
|
|
105
103
|
queryKey: queryKeys.devices.list(),
|
|
106
104
|
queryFn: async () => {
|
|
@@ -108,9 +106,16 @@ export const useUserDevices = options => {
|
|
|
108
106
|
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
109
107
|
try {
|
|
110
108
|
// Try to get token for the session
|
|
111
|
-
await oxyServices.getTokenBySession(activeSessionId
|
|
109
|
+
await oxyServices.getTokenBySession(activeSessionId);
|
|
112
110
|
} catch (tokenError) {
|
|
113
|
-
|
|
111
|
+
// If getting token fails, might be an offline session - try syncing
|
|
112
|
+
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
113
|
+
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
114
|
+
// Session sync should be handled by the app layer
|
|
115
|
+
throw new Error('Session needs to be synced. Please try again.');
|
|
116
|
+
} else {
|
|
117
|
+
throw tokenError;
|
|
118
|
+
}
|
|
114
119
|
}
|
|
115
120
|
}
|
|
116
121
|
try {
|
|
@@ -121,7 +126,8 @@ export const useUserDevices = options => {
|
|
|
121
126
|
|
|
122
127
|
// Handle authentication errors
|
|
123
128
|
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
124
|
-
|
|
129
|
+
// Session sync should be handled by the app layer
|
|
130
|
+
throw new Error('Authentication failed. Please sign in again.');
|
|
125
131
|
}
|
|
126
132
|
|
|
127
133
|
// TanStack Query will automatically retry on network errors
|