@oxyhq/services 5.27.0 → 6.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/README.md +113 -484
- package/lib/commonjs/index.js +82 -607
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/ui/client.js +0 -7
- package/lib/commonjs/ui/client.js.map +1 -1
- package/lib/commonjs/ui/components/SignInModal.js +2 -2
- package/lib/commonjs/ui/components/SignInModal.js.map +1 -1
- package/lib/commonjs/ui/context/OxyContext.js +13 -16
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js +6 -7
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useDeviceManagement.js +2 -2
- package/lib/commonjs/ui/context/hooks/useDeviceManagement.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useLanguageManagement.js +7 -7
- package/lib/commonjs/ui/context/hooks/useLanguageManagement.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useSessionManagement.js +3 -3
- package/lib/commonjs/ui/context/hooks/useSessionManagement.js.map +1 -1
- package/lib/commonjs/ui/hooks/useDeviceManagement.js +2 -2
- package/lib/commonjs/ui/hooks/useDeviceManagement.js.map +1 -1
- package/lib/commonjs/ui/hooks/useI18n.js +2 -2
- package/lib/commonjs/ui/hooks/useI18n.js.map +1 -1
- package/lib/commonjs/ui/hooks/useLanguageManagement.js +7 -7
- package/lib/commonjs/ui/hooks/useLanguageManagement.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionManagement.js +3 -3
- package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionSocket.js +9 -10
- package/lib/commonjs/ui/hooks/useSessionSocket.js.map +1 -1
- package/lib/commonjs/ui/index.js +1 -11
- package/lib/commonjs/ui/index.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountCenterScreen.js +3 -3
- package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AppInfoScreen.js +13 -13
- package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +2 -2
- package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FeedbackScreen.js +2 -2
- package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +3 -3
- package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/OxyAuthScreen.js +2 -2
- package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ProfileScreen.js +3 -3
- package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/UserListScreen.js +2 -2
- package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
- package/lib/commonjs/ui/server.js +1 -11
- package/lib/commonjs/ui/server.js.map +1 -1
- package/lib/commonjs/ui/stores/authStore.js +2 -2
- package/lib/commonjs/ui/stores/authStore.js.map +1 -1
- package/lib/commonjs/ui/utils/colorUtils.js +8 -8
- package/lib/commonjs/ui/utils/colorUtils.js.map +1 -1
- package/lib/commonjs/ui/utils/themeUtils.js +6 -6
- package/lib/commonjs/ui/utils/themeUtils.js.map +1 -1
- package/lib/module/index.js +30 -75
- package/lib/module/index.js.map +1 -1
- package/lib/module/ui/client.js +0 -2
- package/lib/module/ui/client.js.map +1 -1
- package/lib/module/ui/components/SignInModal.js +1 -1
- package/lib/module/ui/components/SignInModal.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +4 -4
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/context/hooks/useAuthOperations.js +2 -2
- package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
- package/lib/module/ui/context/hooks/useDeviceManagement.js +1 -1
- package/lib/module/ui/context/hooks/useDeviceManagement.js.map +1 -1
- package/lib/module/ui/context/hooks/useLanguageManagement.js +1 -1
- package/lib/module/ui/context/hooks/useLanguageManagement.js.map +1 -1
- package/lib/module/ui/context/hooks/useSessionManagement.js +1 -1
- package/lib/module/ui/context/hooks/useSessionManagement.js.map +1 -1
- package/lib/module/ui/hooks/useDeviceManagement.js +1 -1
- package/lib/module/ui/hooks/useDeviceManagement.js.map +1 -1
- package/lib/module/ui/hooks/useI18n.js +1 -1
- package/lib/module/ui/hooks/useI18n.js.map +1 -1
- package/lib/module/ui/hooks/useLanguageManagement.js +1 -1
- package/lib/module/ui/hooks/useLanguageManagement.js.map +1 -1
- package/lib/module/ui/hooks/useSessionManagement.js +1 -1
- package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/module/ui/hooks/useSessionSocket.js +2 -2
- package/lib/module/ui/hooks/useSessionSocket.js.map +1 -1
- package/lib/module/ui/index.js +0 -2
- package/lib/module/ui/index.js.map +1 -1
- package/lib/module/ui/screens/AccountCenterScreen.js +1 -1
- package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
- package/lib/module/ui/screens/AppInfoScreen.js +1 -1
- package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
- package/lib/module/ui/screens/EditProfileFieldScreen.js +1 -1
- package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
- package/lib/module/ui/screens/FeedbackScreen.js +1 -1
- package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
- package/lib/module/ui/screens/LanguageSelectorScreen.js +1 -1
- package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
- package/lib/module/ui/screens/OxyAuthScreen.js +1 -1
- package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
- package/lib/module/ui/screens/ProfileScreen.js +1 -1
- package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/module/ui/screens/UserListScreen.js +1 -1
- package/lib/module/ui/screens/UserListScreen.js.map +1 -1
- package/lib/module/ui/server.js +0 -2
- package/lib/module/ui/server.js.map +1 -1
- package/lib/module/ui/stores/authStore.js +1 -1
- package/lib/module/ui/stores/authStore.js.map +1 -1
- package/lib/module/ui/utils/colorUtils.js +1 -1
- package/lib/module/ui/utils/colorUtils.js.map +1 -1
- package/lib/module/ui/utils/themeUtils.js +1 -1
- package/lib/module/ui/utils/themeUtils.js.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +18 -35
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/client.d.ts +0 -2
- package/lib/typescript/commonjs/ui/client.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts +1 -1
- package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/fileManagement/FileViewer.d.ts +1 -1
- package/lib/typescript/commonjs/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/photogrid/JustifiedPhotoGrid.d.ts +1 -1
- package/lib/typescript/commonjs/ui/components/photogrid/JustifiedPhotoGrid.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +3 -3
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts +3 -3
- package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/hooks/useDeviceManagement.d.ts +2 -2
- package/lib/typescript/commonjs/ui/context/hooks/useDeviceManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/hooks/useLanguageManagement.d.ts +2 -2
- package/lib/typescript/commonjs/ui/context/hooks/useLanguageManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/hooks/useSessionManagement.d.ts +3 -3
- package/lib/typescript/commonjs/ui/context/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/mutations/mutationFactory.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/mutations/mutationFactory.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useSecurityQueries.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useSecurityQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAssets.d.ts +2 -2
- package/lib/typescript/commonjs/ui/hooks/useAssets.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useDeviceManagement.d.ts +2 -2
- package/lib/typescript/commonjs/ui/hooks/useDeviceManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useFileDownloadUrl.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/useFileDownloadUrl.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useFileFiltering.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/useFileFiltering.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useLanguageManagement.d.ts +2 -2
- package/lib/typescript/commonjs/ui/hooks/useLanguageManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts +3 -3
- package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useStorage.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/useStorage.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useWebSSO.d.ts +2 -2
- package/lib/typescript/commonjs/ui/hooks/useWebSSO.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/index.d.ts +0 -2
- package/lib/typescript/commonjs/ui/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/server.d.ts +0 -2
- package/lib/typescript/commonjs/ui/server.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/stores/accountStore.d.ts +1 -1
- package/lib/typescript/commonjs/ui/stores/accountStore.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/stores/assetStore.d.ts +1 -1
- package/lib/typescript/commonjs/ui/stores/assetStore.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/stores/authStore.d.ts +1 -1
- package/lib/typescript/commonjs/ui/stores/authStore.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/stores/fileStore.d.ts +1 -1
- package/lib/typescript/commonjs/ui/stores/fileStore.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/stores/followStore.d.ts +1 -1
- package/lib/typescript/commonjs/ui/stores/followStore.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/types/fileManagement.d.ts +1 -1
- package/lib/typescript/commonjs/ui/types/fileManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/authHelpers.d.ts +1 -1
- package/lib/typescript/commonjs/ui/utils/authHelpers.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/avatarUtils.d.ts +2 -2
- package/lib/typescript/commonjs/ui/utils/avatarUtils.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/colorUtils.d.ts +1 -1
- package/lib/typescript/commonjs/ui/utils/colorUtils.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/errorHandlers.d.ts +1 -1
- package/lib/typescript/commonjs/ui/utils/errorHandlers.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts +1 -1
- package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/sessionHelpers.d.ts +1 -1
- package/lib/typescript/commonjs/ui/utils/sessionHelpers.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/themeUtils.d.ts +2 -2
- package/lib/typescript/commonjs/ui/utils/themeUtils.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +18 -35
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/client.d.ts +0 -2
- package/lib/typescript/module/ui/client.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts +1 -1
- package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/fileManagement/FileViewer.d.ts +1 -1
- package/lib/typescript/module/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/photogrid/JustifiedPhotoGrid.d.ts +1 -1
- package/lib/typescript/module/ui/components/photogrid/JustifiedPhotoGrid.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/OxyContext.d.ts +3 -3
- package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts +3 -3
- package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/hooks/useDeviceManagement.d.ts +2 -2
- package/lib/typescript/module/ui/context/hooks/useDeviceManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/hooks/useLanguageManagement.d.ts +2 -2
- package/lib/typescript/module/ui/context/hooks/useLanguageManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/hooks/useSessionManagement.d.ts +3 -3
- package/lib/typescript/module/ui/context/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/mutations/mutationFactory.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/mutations/mutationFactory.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useSecurityQueries.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/queries/useSecurityQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useAssets.d.ts +2 -2
- package/lib/typescript/module/ui/hooks/useAssets.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useAuth.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useDeviceManagement.d.ts +2 -2
- package/lib/typescript/module/ui/hooks/useDeviceManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useFileDownloadUrl.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/useFileDownloadUrl.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useFileFiltering.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/useFileFiltering.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useLanguageManagement.d.ts +2 -2
- package/lib/typescript/module/ui/hooks/useLanguageManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts +3 -3
- package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useStorage.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/useStorage.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useWebSSO.d.ts +2 -2
- package/lib/typescript/module/ui/hooks/useWebSSO.d.ts.map +1 -1
- package/lib/typescript/module/ui/index.d.ts +0 -2
- package/lib/typescript/module/ui/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/server.d.ts +0 -2
- package/lib/typescript/module/ui/server.d.ts.map +1 -1
- package/lib/typescript/module/ui/stores/accountStore.d.ts +1 -1
- package/lib/typescript/module/ui/stores/accountStore.d.ts.map +1 -1
- package/lib/typescript/module/ui/stores/assetStore.d.ts +1 -1
- package/lib/typescript/module/ui/stores/assetStore.d.ts.map +1 -1
- package/lib/typescript/module/ui/stores/authStore.d.ts +1 -1
- package/lib/typescript/module/ui/stores/authStore.d.ts.map +1 -1
- package/lib/typescript/module/ui/stores/fileStore.d.ts +1 -1
- package/lib/typescript/module/ui/stores/fileStore.d.ts.map +1 -1
- package/lib/typescript/module/ui/stores/followStore.d.ts +1 -1
- package/lib/typescript/module/ui/stores/followStore.d.ts.map +1 -1
- package/lib/typescript/module/ui/types/fileManagement.d.ts +1 -1
- package/lib/typescript/module/ui/types/fileManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/authHelpers.d.ts +1 -1
- package/lib/typescript/module/ui/utils/authHelpers.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/avatarUtils.d.ts +2 -2
- package/lib/typescript/module/ui/utils/avatarUtils.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/colorUtils.d.ts +1 -1
- package/lib/typescript/module/ui/utils/colorUtils.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/errorHandlers.d.ts +1 -1
- package/lib/typescript/module/ui/utils/errorHandlers.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/fileManagement.d.ts +1 -1
- package/lib/typescript/module/ui/utils/fileManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/sessionHelpers.d.ts +1 -1
- package/lib/typescript/module/ui/utils/sessionHelpers.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/themeUtils.d.ts +2 -2
- package/lib/typescript/module/ui/utils/themeUtils.d.ts.map +1 -1
- package/package.json +40 -186
- package/src/index.ts +56 -254
- package/src/ui/client.ts +0 -4
- package/src/ui/components/SignInModal.tsx +1 -1
- package/src/ui/components/fileManagement/FileDetailsModal.tsx +1 -1
- package/src/ui/components/fileManagement/FileViewer.tsx +1 -1
- package/src/ui/components/photogrid/JustifiedPhotoGrid.tsx +1 -1
- package/src/ui/context/OxyContext.tsx +6 -6
- package/src/ui/context/hooks/useAuthOperations.ts +5 -5
- package/src/ui/context/hooks/useDeviceManagement.ts +3 -3
- package/src/ui/context/hooks/useLanguageManagement.ts +2 -2
- package/src/ui/context/hooks/useSessionManagement.ts +4 -4
- package/src/ui/hooks/mutations/mutationFactory.ts +1 -1
- package/src/ui/hooks/mutations/useAccountMutations.ts +1 -1
- package/src/ui/hooks/mutations/useServicesMutations.ts +1 -1
- package/src/ui/hooks/queries/useAccountQueries.ts +1 -1
- package/src/ui/hooks/queries/useSecurityQueries.ts +1 -1
- package/src/ui/hooks/queries/useServicesQueries.ts +1 -1
- package/src/ui/hooks/useAssets.ts +7 -7
- package/src/ui/hooks/useAuth.ts +1 -1
- package/src/ui/hooks/useDeviceManagement.ts +3 -3
- package/src/ui/hooks/useFileDownloadUrl.ts +1 -1
- package/src/ui/hooks/useFileFiltering.ts +1 -1
- package/src/ui/hooks/useI18n.ts +1 -1
- package/src/ui/hooks/useLanguageManagement.ts +2 -2
- package/src/ui/hooks/useSessionManagement.ts +4 -4
- package/src/ui/hooks/useSessionSocket.ts +2 -2
- package/src/ui/hooks/useStorage.ts +1 -1
- package/src/ui/hooks/useWebSSO.ts +2 -2
- package/src/ui/index.ts +0 -3
- package/src/ui/screens/AccountCenterScreen.tsx +1 -1
- package/src/ui/screens/AccountSwitcherScreen.tsx +2 -2
- package/src/ui/screens/AppInfoScreen.tsx +1 -1
- package/src/ui/screens/EditProfileFieldScreen.tsx +1 -1
- package/src/ui/screens/FeedbackScreen.tsx +1 -1
- package/src/ui/screens/FileManagementScreen.tsx +1 -1
- package/src/ui/screens/LanguageSelectorScreen.tsx +1 -1
- package/src/ui/screens/OxyAuthScreen.tsx +1 -1
- package/src/ui/screens/PrivacySettingsScreen.tsx +1 -1
- package/src/ui/screens/ProfileScreen.tsx +2 -2
- package/src/ui/screens/SearchSettingsScreen.tsx +1 -1
- package/src/ui/screens/SessionManagementScreen.tsx +1 -1
- package/src/ui/screens/UserListScreen.tsx +2 -2
- package/src/ui/server.ts +0 -4
- package/src/ui/stores/accountStore.ts +1 -1
- package/src/ui/stores/assetStore.ts +1 -1
- package/src/ui/stores/authStore.ts +2 -2
- package/src/ui/stores/fileStore.ts +1 -1
- package/src/ui/stores/followStore.ts +1 -1
- package/src/ui/types/fileManagement.ts +1 -1
- package/src/ui/types/navigation.ts +2 -2
- package/src/ui/utils/authHelpers.ts +1 -1
- package/src/ui/utils/avatarUtils.ts +2 -2
- package/src/ui/utils/colorUtils.ts +1 -1
- package/src/ui/utils/errorHandlers.ts +1 -1
- package/src/ui/utils/fileManagement.ts +1 -1
- package/src/ui/utils/sessionHelpers.ts +1 -1
- package/src/ui/utils/themeUtils.ts +2 -2
- package/dist/web/oxy-services.esm.js +0 -2
- package/dist/web/oxy-services.esm.js.map +0 -1
- package/dist/web/types/assets/icons/OxyServices.d.ts +0 -28
- package/dist/web/types/assets/illustrations/HighFive.d.ts +0 -8
- package/dist/web/types/constants/version.d.ts +0 -13
- package/dist/web/types/core/AuthManager.d.ts +0 -143
- package/dist/web/types/core/CrossDomainAuth.d.ts +0 -160
- package/dist/web/types/core/HttpService.d.ts +0 -163
- package/dist/web/types/core/OxyServices.base.d.ts +0 -126
- package/dist/web/types/core/OxyServices.d.ts +0 -81
- package/dist/web/types/core/OxyServices.errors.d.ts +0 -11
- package/dist/web/types/core/index.d.ts +0 -20
- package/dist/web/types/core/mixins/OxyServices.analytics.d.ts +0 -66
- package/dist/web/types/core/mixins/OxyServices.assets.d.ts +0 -135
- package/dist/web/types/core/mixins/OxyServices.auth.d.ts +0 -186
- package/dist/web/types/core/mixins/OxyServices.developer.d.ts +0 -99
- package/dist/web/types/core/mixins/OxyServices.devices.d.ts +0 -96
- package/dist/web/types/core/mixins/OxyServices.features.d.ts +0 -228
- package/dist/web/types/core/mixins/OxyServices.fedcm.d.ts +0 -200
- package/dist/web/types/core/mixins/OxyServices.karma.d.ts +0 -85
- package/dist/web/types/core/mixins/OxyServices.language.d.ts +0 -81
- package/dist/web/types/core/mixins/OxyServices.location.d.ts +0 -64
- package/dist/web/types/core/mixins/OxyServices.payment.d.ts +0 -111
- package/dist/web/types/core/mixins/OxyServices.popup.d.ts +0 -205
- package/dist/web/types/core/mixins/OxyServices.privacy.d.ts +0 -122
- package/dist/web/types/core/mixins/OxyServices.redirect.d.ts +0 -245
- package/dist/web/types/core/mixins/OxyServices.security.d.ts +0 -78
- package/dist/web/types/core/mixins/OxyServices.user.d.ts +0 -184
- package/dist/web/types/core/mixins/OxyServices.utility.d.ts +0 -93
- package/dist/web/types/core/mixins/index.d.ts +0 -30
- package/dist/web/types/core/mixins/mixinHelpers.d.ts +0 -31
- package/dist/web/types/crypto/index.d.ts +0 -11
- package/dist/web/types/crypto/keyManager.d.ts +0 -189
- package/dist/web/types/crypto/polyfill.d.ts +0 -12
- package/dist/web/types/crypto/recoveryPhrase.d.ts +0 -58
- package/dist/web/types/crypto/signatureService.d.ts +0 -86
- package/dist/web/types/i18n/index.d.ts +0 -3
- package/dist/web/types/index.d.ts +0 -62
- package/dist/web/types/lib/sonner-safe.d.ts +0 -8
- package/dist/web/types/lib/sonner.d.ts +0 -11
- package/dist/web/types/lib/sonner.web.d.ts +0 -14
- package/dist/web/types/models/interfaces.d.ts +0 -415
- package/dist/web/types/models/session.d.ts +0 -27
- package/dist/web/types/node/index.d.ts +0 -9
- package/dist/web/types/shared/index.d.ts +0 -28
- package/dist/web/types/shared/utils/colorUtils.d.ts +0 -104
- package/dist/web/types/shared/utils/debugUtils.d.ts +0 -48
- package/dist/web/types/shared/utils/errorUtils.d.ts +0 -97
- package/dist/web/types/shared/utils/index.d.ts +0 -13
- package/dist/web/types/shared/utils/networkUtils.d.ts +0 -139
- package/dist/web/types/shared/utils/themeUtils.d.ts +0 -90
- package/dist/web/types/ui/client.d.ts +0 -33
- package/dist/web/types/ui/components/ActivityIndicator.d.ts +0 -44
- package/dist/web/types/ui/components/AnimationExample.d.ts +0 -3
- package/dist/web/types/ui/components/AutoHeightScrollView.d.ts +0 -22
- package/dist/web/types/ui/components/Avatar.d.ts +0 -60
- package/dist/web/types/ui/components/BottomSheet.d.ts +0 -28
- package/dist/web/types/ui/components/BottomSheetRouter.d.ts +0 -8
- package/dist/web/types/ui/components/CrossFadeIcon.d.ts +0 -26
- package/dist/web/types/ui/components/EmptyState.d.ts +0 -7
- package/dist/web/types/ui/components/ErrorBoundary.d.ts +0 -30
- package/dist/web/types/ui/components/FollowButton.d.ts +0 -17
- package/dist/web/types/ui/components/FontLoader.d.ts +0 -14
- package/dist/web/types/ui/components/GroupedItem.d.ts +0 -23
- package/dist/web/types/ui/components/GroupedSection.d.ts +0 -24
- package/dist/web/types/ui/components/Header.d.ts +0 -37
- package/dist/web/types/ui/components/HelperText.d.ts +0 -46
- package/dist/web/types/ui/components/Icon.d.ts +0 -59
- package/dist/web/types/ui/components/IconButton/IconButton.d.ts +0 -98
- package/dist/web/types/ui/components/IconButton/utils.d.ts +0 -18
- package/dist/web/types/ui/components/LoadingState.d.ts +0 -8
- package/dist/web/types/ui/components/OxyLogo.d.ts +0 -28
- package/dist/web/types/ui/components/OxyPayButton.d.ts +0 -28
- package/dist/web/types/ui/components/OxyProvider.d.ts +0 -33
- package/dist/web/types/ui/components/OxySignInButton.d.ts +0 -64
- package/dist/web/types/ui/components/ProfileCard.d.ts +0 -17
- package/dist/web/types/ui/components/QuickActions.d.ts +0 -14
- package/dist/web/types/ui/components/Section.d.ts +0 -11
- package/dist/web/types/ui/components/SectionTitle.d.ts +0 -9
- package/dist/web/types/ui/components/SettingRow.d.ts +0 -19
- package/dist/web/types/ui/components/SignInModal.d.ts +0 -17
- package/dist/web/types/ui/components/StepBasedScreen.d.ts +0 -25
- package/dist/web/types/ui/components/Surface.d.ts +0 -75
- package/dist/web/types/ui/components/TextField/Addons/Outline.d.ts +0 -15
- package/dist/web/types/ui/components/TextField/Addons/Underline.d.ts +0 -18
- package/dist/web/types/ui/components/TextField/Adornment/TextFieldAdornment.d.ts +0 -44
- package/dist/web/types/ui/components/TextField/Adornment/TextFieldAffix.d.ts +0 -72
- package/dist/web/types/ui/components/TextField/Adornment/TextFieldIcon.d.ts +0 -77
- package/dist/web/types/ui/components/TextField/Adornment/enums.d.ts +0 -12
- package/dist/web/types/ui/components/TextField/Adornment/types.d.ts +0 -11
- package/dist/web/types/ui/components/TextField/Adornment/utils.d.ts +0 -11
- package/dist/web/types/ui/components/TextField/Label/InputLabel.d.ts +0 -4
- package/dist/web/types/ui/components/TextField/Label/LabelBackground.d.ts +0 -3
- package/dist/web/types/ui/components/TextField/TextFieldFlat.d.ts +0 -3
- package/dist/web/types/ui/components/TextField/TextFieldOutlined.d.ts +0 -3
- package/dist/web/types/ui/components/TextField/constants.d.ts +0 -31
- package/dist/web/types/ui/components/TextField/helpers.d.ts +0 -96
- package/dist/web/types/ui/components/TextField/types.d.ts +0 -155
- package/dist/web/types/ui/components/TextField.d.ts +0 -191
- package/dist/web/types/ui/components/TouchableRipple/Pressable.d.ts +0 -12
- package/dist/web/types/ui/components/TouchableRipple/TouchableRipple.d.ts +0 -61
- package/dist/web/types/ui/components/TouchableRipple/utils.d.ts +0 -10
- package/dist/web/types/ui/components/Typography/AnimatedText.d.ts +0 -34
- package/dist/web/types/ui/components/Typography/types.d.ts +0 -18
- package/dist/web/types/ui/components/WebOxyProvider.d.ts +0 -51
- package/dist/web/types/ui/components/feedback/FormInput.d.ts +0 -19
- package/dist/web/types/ui/components/feedback/ProgressIndicator.d.ts +0 -10
- package/dist/web/types/ui/components/feedback/constants.d.ts +0 -4
- package/dist/web/types/ui/components/feedback/feedbackStyles.d.ts +0 -279
- package/dist/web/types/ui/components/feedback/index.d.ts +0 -6
- package/dist/web/types/ui/components/feedback/types.d.ts +0 -45
- package/dist/web/types/ui/components/feedback/useFeedbackForm.d.ts +0 -8
- package/dist/web/types/ui/components/fileManagement/AnimatedButton.d.ts +0 -15
- package/dist/web/types/ui/components/fileManagement/FileDetailsModal.d.ts +0 -14
- package/dist/web/types/ui/components/fileManagement/FileViewer.d.ts +0 -17
- package/dist/web/types/ui/components/fileManagement/UploadPreview.d.ts +0 -20
- package/dist/web/types/ui/components/fileManagement/styles.d.ts +0 -859
- package/dist/web/types/ui/components/icon/FAIRWalletIcon.d.ts +0 -8
- package/dist/web/types/ui/components/icon/OxyIcon.d.ts +0 -9
- package/dist/web/types/ui/components/icon/index.d.ts +0 -3
- package/dist/web/types/ui/components/index.d.ts +0 -16
- package/dist/web/types/ui/components/internal/GroupedPillButtons.d.ts +0 -17
- package/dist/web/types/ui/components/internal/PinInput.d.ts +0 -22
- package/dist/web/types/ui/components/modals/DeleteAccountModal.d.ts +0 -18
- package/dist/web/types/ui/components/modals/index.d.ts +0 -1
- package/dist/web/types/ui/components/payment/PaymentDetailsStep.d.ts +0 -20
- package/dist/web/types/ui/components/payment/PaymentMethodStep.d.ts +0 -13
- package/dist/web/types/ui/components/payment/PaymentReviewStep.d.ts +0 -15
- package/dist/web/types/ui/components/payment/PaymentSuccessStep.d.ts +0 -9
- package/dist/web/types/ui/components/payment/PaymentSummaryStep.d.ts +0 -14
- package/dist/web/types/ui/components/payment/constants.d.ts +0 -6
- package/dist/web/types/ui/components/payment/index.d.ts +0 -8
- package/dist/web/types/ui/components/payment/paymentStyles.d.ts +0 -395
- package/dist/web/types/ui/components/payment/types.d.ts +0 -39
- package/dist/web/types/ui/components/photogrid/JustifiedPhotoGrid.d.ts +0 -26
- package/dist/web/types/ui/components/styles/overlay.d.ts +0 -3
- package/dist/web/types/ui/components/styles/shadow.d.ts +0 -2
- package/dist/web/types/ui/components/theming.d.ts +0 -7
- package/dist/web/types/ui/components/types.d.ts +0 -79
- package/dist/web/types/ui/components/utils/forwardRef.d.ts +0 -11
- package/dist/web/types/ui/components/utils/hasTouchHandler.d.ts +0 -5
- package/dist/web/types/ui/components/utils/roundLayoutSize.d.ts +0 -1
- package/dist/web/types/ui/components/utils/splitStyles.d.ts +0 -19
- package/dist/web/types/ui/constants/iconColors.d.ts +0 -129
- package/dist/web/types/ui/constants/spacing.d.ts +0 -32
- package/dist/web/types/ui/constants/theme.d.ts +0 -96
- package/dist/web/types/ui/context/OxyContext.d.ts +0 -74
- package/dist/web/types/ui/context/ThemeContext.d.ts +0 -18
- package/dist/web/types/ui/context/hooks/useAuthOperations.d.ts +0 -39
- package/dist/web/types/ui/context/hooks/useDeviceManagement.d.ts +0 -26
- package/dist/web/types/ui/context/hooks/useLanguageManagement.d.ts +0 -24
- package/dist/web/types/ui/context/hooks/useSessionManagement.d.ts +0 -40
- package/dist/web/types/ui/hooks/index.d.ts +0 -6
- package/dist/web/types/ui/hooks/mutations/index.d.ts +0 -8
- package/dist/web/types/ui/hooks/mutations/mutationFactory.d.ts +0 -75
- package/dist/web/types/ui/hooks/mutations/useAccountMutations.d.ts +0 -68
- package/dist/web/types/ui/hooks/mutations/useServicesMutations.d.ts +0 -22
- package/dist/web/types/ui/hooks/queries/index.d.ts +0 -10
- package/dist/web/types/ui/hooks/queries/queryKeys.d.ts +0 -64
- package/dist/web/types/ui/hooks/queries/useAccountQueries.d.ts +0 -42
- package/dist/web/types/ui/hooks/queries/useSecurityQueries.d.ts +0 -14
- package/dist/web/types/ui/hooks/queries/useServicesQueries.d.ts +0 -31
- package/dist/web/types/ui/hooks/queryClient.d.ts +0 -18
- package/dist/web/types/ui/hooks/useAssets.d.ts +0 -34
- package/dist/web/types/ui/hooks/useAsyncAction.d.ts +0 -50
- package/dist/web/types/ui/hooks/useAuth.d.ts +0 -73
- package/dist/web/types/ui/hooks/useColorScheme.d.ts +0 -7
- package/dist/web/types/ui/hooks/useDeviceManagement.d.ts +0 -26
- package/dist/web/types/ui/hooks/useFileDownloadUrl.d.ts +0 -18
- package/dist/web/types/ui/hooks/useFileFiltering.d.ts +0 -28
- package/dist/web/types/ui/hooks/useFollow.d.ts +0 -61
- package/dist/web/types/ui/hooks/useFollow.types.d.ts +0 -32
- package/dist/web/types/ui/hooks/useI18n.d.ts +0 -4
- package/dist/web/types/ui/hooks/useLanguageManagement.d.ts +0 -24
- package/dist/web/types/ui/hooks/useProfileEditing.d.ts +0 -35
- package/dist/web/types/ui/hooks/useQueryClient.d.ts +0 -6
- package/dist/web/types/ui/hooks/useSessionManagement.d.ts +0 -40
- package/dist/web/types/ui/hooks/useSessionSocket.d.ts +0 -13
- package/dist/web/types/ui/hooks/useSettingToggle.d.ts +0 -56
- package/dist/web/types/ui/hooks/useStorage.d.ts +0 -15
- package/dist/web/types/ui/hooks/useThemeColors.d.ts +0 -93
- package/dist/web/types/ui/hooks/useThemeStyles.d.ts +0 -44
- package/dist/web/types/ui/hooks/useWebSSO.d.ts +0 -57
- package/dist/web/types/ui/index.d.ts +0 -7
- package/dist/web/types/ui/isFrontend.d.ts +0 -2
- package/dist/web/types/ui/navigation/bottomSheetManager.d.ts +0 -26
- package/dist/web/types/ui/navigation/routes.d.ts +0 -5
- package/dist/web/types/ui/screens/AccountCenterScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/AccountOverviewScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/AccountSettingsScreen.d.ts +0 -7
- package/dist/web/types/ui/screens/AccountSwitcherScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/AccountVerificationScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/AppInfoScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/EditProfileFieldScreen.d.ts +0 -12
- package/dist/web/types/ui/screens/FAQScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/FeedbackScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/FileManagementScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/FollowersListScreen.d.ts +0 -8
- package/dist/web/types/ui/screens/FollowingListScreen.d.ts +0 -8
- package/dist/web/types/ui/screens/HelpSupportScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/HistoryViewScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/LanguageSelectorScreen.d.ts +0 -6
- package/dist/web/types/ui/screens/LearnMoreUsernamesScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/LegalDocumentsScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/OxyAuthScreen.d.ts +0 -16
- package/dist/web/types/ui/screens/PaymentGatewayScreen.d.ts +0 -14
- package/dist/web/types/ui/screens/PremiumSubscriptionScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/PrivacySettingsScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/ProfileScreen.d.ts +0 -8
- package/dist/web/types/ui/screens/SavesCollectionsScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/SearchSettingsScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/SessionManagementScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/UserLinksScreen.d.ts +0 -14
- package/dist/web/types/ui/screens/UserListScreen.d.ts +0 -10
- package/dist/web/types/ui/screens/WelcomeNewUserScreen.d.ts +0 -12
- package/dist/web/types/ui/screens/karma/KarmaAboutScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/karma/KarmaCenterScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/karma/KarmaFAQScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/karma/KarmaLeaderboardScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/karma/KarmaRewardsScreen.d.ts +0 -4
- package/dist/web/types/ui/screens/karma/KarmaRulesScreen.d.ts +0 -4
- package/dist/web/types/ui/server.d.ts +0 -42
- package/dist/web/types/ui/stores/accountStore.d.ts +0 -33
- package/dist/web/types/ui/stores/assetStore.d.ts +0 -53
- package/dist/web/types/ui/stores/authStore.d.ts +0 -16
- package/dist/web/types/ui/stores/fileStore.d.ts +0 -30
- package/dist/web/types/ui/stores/followStore.d.ts +0 -24
- package/dist/web/types/ui/styles/authStyles.d.ts +0 -331
- package/dist/web/types/ui/styles/fonts.d.ts +0 -20
- package/dist/web/types/ui/styles/index.d.ts +0 -4
- package/dist/web/types/ui/styles/spacing.d.ts +0 -48
- package/dist/web/types/ui/styles/theme.d.ts +0 -67
- package/dist/web/types/ui/types/fileManagement.d.ts +0 -40
- package/dist/web/types/ui/types/navigation.d.ts +0 -36
- package/dist/web/types/ui/utils/authHelpers.d.ts +0 -98
- package/dist/web/types/ui/utils/avatarUtils.d.ts +0 -33
- package/dist/web/types/ui/utils/colorUtils.d.ts +0 -9
- package/dist/web/types/ui/utils/confirmAction.d.ts +0 -6
- package/dist/web/types/ui/utils/errorHandlers.d.ts +0 -34
- package/dist/web/types/ui/utils/fileManagement.d.ts +0 -86
- package/dist/web/types/ui/utils/iconNames.d.ts +0 -111
- package/dist/web/types/ui/utils/sessionHelpers.d.ts +0 -63
- package/dist/web/types/ui/utils/storageHelpers.d.ts +0 -27
- package/dist/web/types/ui/utils/themeUtils.d.ts +0 -10
- package/dist/web/types/ui/utils/userUtils.d.ts +0 -28
- package/dist/web/types/utils/apiUtils.d.ts +0 -53
- package/dist/web/types/utils/asyncUtils.d.ts +0 -58
- package/dist/web/types/utils/cache.d.ts +0 -127
- package/dist/web/types/utils/deviceManager.d.ts +0 -65
- package/dist/web/types/utils/errorUtils.d.ts +0 -46
- package/dist/web/types/utils/hookUtils.d.ts +0 -101
- package/dist/web/types/utils/index.d.ts +0 -6
- package/dist/web/types/utils/languageUtils.d.ts +0 -37
- package/dist/web/types/utils/loggerUtils.d.ts +0 -48
- package/dist/web/types/utils/platform.d.ts +0 -40
- package/dist/web/types/utils/platformInit.d.ts +0 -8
- package/dist/web/types/utils/requestUtils.d.ts +0 -123
- package/dist/web/types/utils/sessionUtils.d.ts +0 -54
- package/dist/web/types/utils/validationUtils.d.ts +0 -85
- package/dist/web/types/web/WebOxyContext.d.ts +0 -151
- package/dist/web/types/web/index.d.ts +0 -52
- package/dist/web/types/web.d.ts +0 -53
- package/lib/commonjs/constants/version.js +0 -28
- package/lib/commonjs/constants/version.js.map +0 -1
- package/lib/commonjs/core/AuthManager.js +0 -405
- package/lib/commonjs/core/AuthManager.js.map +0 -1
- package/lib/commonjs/core/CrossDomainAuth.js +0 -277
- package/lib/commonjs/core/CrossDomainAuth.js.map +0 -1
- package/lib/commonjs/core/HttpService.js +0 -697
- package/lib/commonjs/core/HttpService.js.map +0 -1
- package/lib/commonjs/core/OxyServices.base.js +0 -291
- package/lib/commonjs/core/OxyServices.base.js.map +0 -1
- package/lib/commonjs/core/OxyServices.errors.js +0 -26
- package/lib/commonjs/core/OxyServices.errors.js.map +0 -1
- package/lib/commonjs/core/OxyServices.js +0 -149
- package/lib/commonjs/core/OxyServices.js.map +0 -1
- package/lib/commonjs/core/index.js +0 -158
- package/lib/commonjs/core/index.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.analytics.js +0 -60
- package/lib/commonjs/core/mixins/OxyServices.analytics.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.assets.js +0 -390
- package/lib/commonjs/core/mixins/OxyServices.assets.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.auth.js +0 -296
- package/lib/commonjs/core/mixins/OxyServices.auth.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.developer.js +0 -115
- package/lib/commonjs/core/mixins/OxyServices.developer.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.devices.js +0 -133
- package/lib/commonjs/core/mixins/OxyServices.devices.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.features.js +0 -372
- package/lib/commonjs/core/mixins/OxyServices.features.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.fedcm.js +0 -464
- package/lib/commonjs/core/mixins/OxyServices.fedcm.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.karma.js +0 -117
- package/lib/commonjs/core/mixins/OxyServices.karma.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.language.js +0 -124
- package/lib/commonjs/core/mixins/OxyServices.language.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.location.js +0 -55
- package/lib/commonjs/core/mixins/OxyServices.location.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.payment.js +0 -168
- package/lib/commonjs/core/mixins/OxyServices.payment.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.popup.js +0 -393
- package/lib/commonjs/core/mixins/OxyServices.popup.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.privacy.js +0 -174
- package/lib/commonjs/core/mixins/OxyServices.privacy.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.redirect.js +0 -378
- package/lib/commonjs/core/mixins/OxyServices.redirect.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.security.js +0 -96
- package/lib/commonjs/core/mixins/OxyServices.security.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.user.js +0 -393
- package/lib/commonjs/core/mixins/OxyServices.user.js.map +0 -1
- package/lib/commonjs/core/mixins/OxyServices.utility.js +0 -165
- package/lib/commonjs/core/mixins/OxyServices.utility.js.map +0 -1
- package/lib/commonjs/core/mixins/index.js +0 -75
- package/lib/commonjs/core/mixins/index.js.map +0 -1
- package/lib/commonjs/core/mixins/mixinHelpers.js +0 -62
- package/lib/commonjs/core/mixins/mixinHelpers.js.map +0 -1
- package/lib/commonjs/crypto/index.js +0 -34
- package/lib/commonjs/crypto/index.js.map +0 -1
- package/lib/commonjs/crypto/keyManager.js +0 -942
- package/lib/commonjs/crypto/keyManager.js.map +0 -1
- package/lib/commonjs/crypto/polyfill.js +0 -86
- package/lib/commonjs/crypto/polyfill.js.map +0 -1
- package/lib/commonjs/crypto/recoveryPhrase.js +0 -152
- package/lib/commonjs/crypto/recoveryPhrase.js.map +0 -1
- package/lib/commonjs/crypto/signatureService.js +0 -289
- package/lib/commonjs/crypto/signatureService.js.map +0 -1
- package/lib/commonjs/i18n/index.js +0 -76
- package/lib/commonjs/i18n/index.js.map +0 -1
- package/lib/commonjs/i18n/locales/ar-SA.json +0 -120
- package/lib/commonjs/i18n/locales/ca-ES.json +0 -120
- package/lib/commonjs/i18n/locales/de-DE.json +0 -120
- package/lib/commonjs/i18n/locales/en-US.json +0 -956
- package/lib/commonjs/i18n/locales/es-ES.json +0 -944
- package/lib/commonjs/i18n/locales/fr-FR.json +0 -120
- package/lib/commonjs/i18n/locales/it-IT.json +0 -120
- package/lib/commonjs/i18n/locales/ja-JP.json +0 -119
- package/lib/commonjs/i18n/locales/ko-KR.json +0 -120
- package/lib/commonjs/i18n/locales/pt-PT.json +0 -120
- package/lib/commonjs/i18n/locales/zh-CN.json +0 -120
- package/lib/commonjs/models/interfaces.js +0 -61
- package/lib/commonjs/models/interfaces.js.map +0 -1
- package/lib/commonjs/models/session.js +0 -2
- package/lib/commonjs/models/session.js.map +0 -1
- package/lib/commonjs/node/index.js +0 -59
- package/lib/commonjs/node/index.js.map +0 -1
- package/lib/commonjs/shared/index.js +0 -227
- package/lib/commonjs/shared/index.js.map +0 -1
- package/lib/commonjs/shared/utils/colorUtils.js +0 -161
- package/lib/commonjs/shared/utils/colorUtils.js.map +0 -1
- package/lib/commonjs/shared/utils/debugUtils.js +0 -84
- package/lib/commonjs/shared/utils/debugUtils.js.map +0 -1
- package/lib/commonjs/shared/utils/errorUtils.js +0 -190
- package/lib/commonjs/shared/utils/errorUtils.js.map +0 -1
- package/lib/commonjs/shared/utils/index.js +0 -196
- package/lib/commonjs/shared/utils/index.js.map +0 -1
- package/lib/commonjs/shared/utils/networkUtils.js +0 -213
- package/lib/commonjs/shared/utils/networkUtils.js.map +0 -1
- package/lib/commonjs/shared/utils/themeUtils.js +0 -118
- package/lib/commonjs/shared/utils/themeUtils.js.map +0 -1
- package/lib/commonjs/utils/apiUtils.js +0 -79
- package/lib/commonjs/utils/apiUtils.js.map +0 -1
- package/lib/commonjs/utils/asyncUtils.js +0 -207
- package/lib/commonjs/utils/asyncUtils.js.map +0 -1
- package/lib/commonjs/utils/cache.js +0 -259
- package/lib/commonjs/utils/cache.js.map +0 -1
- package/lib/commonjs/utils/deviceManager.js +0 -177
- package/lib/commonjs/utils/deviceManager.js.map +0 -1
- package/lib/commonjs/utils/errorUtils.js +0 -168
- package/lib/commonjs/utils/errorUtils.js.map +0 -1
- package/lib/commonjs/utils/index.js +0 -106
- package/lib/commonjs/utils/index.js.map +0 -1
- package/lib/commonjs/utils/languageUtils.js +0 -159
- package/lib/commonjs/utils/languageUtils.js.map +0 -1
- package/lib/commonjs/utils/loggerUtils.js +0 -160
- package/lib/commonjs/utils/loggerUtils.js.map +0 -1
- package/lib/commonjs/utils/platform.js +0 -129
- package/lib/commonjs/utils/platform.js.map +0 -1
- package/lib/commonjs/utils/platformInit.js +0 -13
- package/lib/commonjs/utils/platformInit.js.map +0 -1
- package/lib/commonjs/utils/platformInit.native.js +0 -16
- package/lib/commonjs/utils/platformInit.native.js.map +0 -1
- package/lib/commonjs/utils/requestUtils.js +0 -218
- package/lib/commonjs/utils/requestUtils.js.map +0 -1
- package/lib/commonjs/utils/sessionUtils.js +0 -191
- package/lib/commonjs/utils/sessionUtils.js.map +0 -1
- package/lib/commonjs/utils/validationUtils.js +0 -191
- package/lib/commonjs/utils/validationUtils.js.map +0 -1
- package/lib/commonjs/web/WebOxyContext.js +0 -384
- package/lib/commonjs/web/WebOxyContext.js.map +0 -1
- package/lib/commonjs/web/index.js +0 -319
- package/lib/commonjs/web/index.js.map +0 -1
- package/lib/commonjs/web.js +0 -659
- package/lib/commonjs/web.js.map +0 -1
- package/lib/module/constants/version.js +0 -21
- package/lib/module/constants/version.js.map +0 -1
- package/lib/module/core/AuthManager.js +0 -399
- package/lib/module/core/AuthManager.js.map +0 -1
- package/lib/module/core/CrossDomainAuth.js +0 -271
- package/lib/module/core/CrossDomainAuth.js.map +0 -1
- package/lib/module/core/HttpService.js +0 -692
- package/lib/module/core/HttpService.js.map +0 -1
- package/lib/module/core/OxyServices.base.js +0 -285
- package/lib/module/core/OxyServices.base.js.map +0 -1
- package/lib/module/core/OxyServices.errors.js +0 -20
- package/lib/module/core/OxyServices.errors.js.map +0 -1
- package/lib/module/core/OxyServices.js +0 -134
- package/lib/module/core/OxyServices.js.map +0 -1
- package/lib/module/core/index.js +0 -31
- package/lib/module/core/index.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.analytics.js +0 -56
- package/lib/module/core/mixins/OxyServices.analytics.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.assets.js +0 -386
- package/lib/module/core/mixins/OxyServices.assets.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.auth.js +0 -292
- package/lib/module/core/mixins/OxyServices.auth.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.developer.js +0 -111
- package/lib/module/core/mixins/OxyServices.developer.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.devices.js +0 -129
- package/lib/module/core/mixins/OxyServices.devices.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.features.js +0 -369
- package/lib/module/core/mixins/OxyServices.features.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.fedcm.js +0 -461
- package/lib/module/core/mixins/OxyServices.fedcm.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.karma.js +0 -113
- package/lib/module/core/mixins/OxyServices.karma.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.language.js +0 -120
- package/lib/module/core/mixins/OxyServices.language.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.location.js +0 -51
- package/lib/module/core/mixins/OxyServices.location.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.payment.js +0 -164
- package/lib/module/core/mixins/OxyServices.payment.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.popup.js +0 -390
- package/lib/module/core/mixins/OxyServices.popup.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.privacy.js +0 -170
- package/lib/module/core/mixins/OxyServices.privacy.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.redirect.js +0 -375
- package/lib/module/core/mixins/OxyServices.redirect.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.security.js +0 -92
- package/lib/module/core/mixins/OxyServices.security.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.user.js +0 -389
- package/lib/module/core/mixins/OxyServices.user.js.map +0 -1
- package/lib/module/core/mixins/OxyServices.utility.js +0 -160
- package/lib/module/core/mixins/OxyServices.utility.js.map +0 -1
- package/lib/module/core/mixins/index.js +0 -72
- package/lib/module/core/mixins/index.js.map +0 -1
- package/lib/module/core/mixins/mixinHelpers.js +0 -56
- package/lib/module/core/mixins/mixinHelpers.js.map +0 -1
- package/lib/module/crypto/index.js +0 -18
- package/lib/module/crypto/index.js.map +0 -1
- package/lib/module/crypto/keyManager.js +0 -939
- package/lib/module/crypto/keyManager.js.map +0 -1
- package/lib/module/crypto/polyfill.js +0 -78
- package/lib/module/crypto/polyfill.js.map +0 -1
- package/lib/module/crypto/recoveryPhrase.js +0 -147
- package/lib/module/crypto/recoveryPhrase.js.map +0 -1
- package/lib/module/crypto/signatureService.js +0 -286
- package/lib/module/crypto/signatureService.js.map +0 -1
- package/lib/module/i18n/index.js +0 -71
- package/lib/module/i18n/index.js.map +0 -1
- package/lib/module/i18n/locales/ar-SA.json +0 -120
- package/lib/module/i18n/locales/ca-ES.json +0 -120
- package/lib/module/i18n/locales/de-DE.json +0 -120
- package/lib/module/i18n/locales/en-US.json +0 -956
- package/lib/module/i18n/locales/es-ES.json +0 -944
- package/lib/module/i18n/locales/fr-FR.json +0 -120
- package/lib/module/i18n/locales/it-IT.json +0 -120
- package/lib/module/i18n/locales/ja-JP.json +0 -119
- package/lib/module/i18n/locales/ko-KR.json +0 -120
- package/lib/module/i18n/locales/pt-PT.json +0 -120
- package/lib/module/i18n/locales/zh-CN.json +0 -120
- package/lib/module/models/interfaces.js +0 -57
- package/lib/module/models/interfaces.js.map +0 -1
- package/lib/module/models/session.js +0 -2
- package/lib/module/models/session.js.map +0 -1
- package/lib/module/node/index.js +0 -20
- package/lib/module/node/index.js.map +0 -1
- package/lib/module/shared/index.js +0 -37
- package/lib/module/shared/index.js.map +0 -1
- package/lib/module/shared/utils/colorUtils.js +0 -150
- package/lib/module/shared/utils/colorUtils.js.map +0 -1
- package/lib/module/shared/utils/debugUtils.js +0 -75
- package/lib/module/shared/utils/debugUtils.js.map +0 -1
- package/lib/module/shared/utils/errorUtils.js +0 -176
- package/lib/module/shared/utils/errorUtils.js.map +0 -1
- package/lib/module/shared/utils/index.js +0 -21
- package/lib/module/shared/utils/index.js.map +0 -1
- package/lib/module/shared/utils/networkUtils.js +0 -202
- package/lib/module/shared/utils/networkUtils.js.map +0 -1
- package/lib/module/shared/utils/themeUtils.js +0 -109
- package/lib/module/shared/utils/themeUtils.js.map +0 -1
- package/lib/module/utils/apiUtils.js +0 -72
- package/lib/module/utils/apiUtils.js.map +0 -1
- package/lib/module/utils/asyncUtils.js +0 -192
- package/lib/module/utils/asyncUtils.js.map +0 -1
- package/lib/module/utils/cache.js +0 -250
- package/lib/module/utils/cache.js.map +0 -1
- package/lib/module/utils/deviceManager.js +0 -171
- package/lib/module/utils/deviceManager.js.map +0 -1
- package/lib/module/utils/errorUtils.js +0 -160
- package/lib/module/utils/errorUtils.js.map +0 -1
- package/lib/module/utils/index.js +0 -11
- package/lib/module/utils/index.js.map +0 -1
- package/lib/module/utils/languageUtils.js +0 -151
- package/lib/module/utils/languageUtils.js.map +0 -1
- package/lib/module/utils/loggerUtils.js +0 -149
- package/lib/module/utils/loggerUtils.js.map +0 -1
- package/lib/module/utils/platform.js +0 -118
- package/lib/module/utils/platform.js.map +0 -1
- package/lib/module/utils/platformInit.js +0 -13
- package/lib/module/utils/platformInit.js.map +0 -1
- package/lib/module/utils/platformInit.native.js +0 -16
- package/lib/module/utils/platformInit.native.js.map +0 -1
- package/lib/module/utils/requestUtils.js +0 -212
- package/lib/module/utils/requestUtils.js.map +0 -1
- package/lib/module/utils/sessionUtils.js +0 -180
- package/lib/module/utils/sessionUtils.js.map +0 -1
- package/lib/module/utils/validationUtils.js +0 -170
- package/lib/module/utils/validationUtils.js.map +0 -1
- package/lib/module/web/WebOxyContext.js +0 -377
- package/lib/module/web/WebOxyContext.js.map +0 -1
- package/lib/module/web/index.js +0 -72
- package/lib/module/web/index.js.map +0 -1
- package/lib/module/web.js +0 -76
- package/lib/module/web.js.map +0 -1
- package/lib/typescript/commonjs/constants/version.d.ts +0 -14
- package/lib/typescript/commonjs/constants/version.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/AuthManager.d.ts +0 -144
- package/lib/typescript/commonjs/core/AuthManager.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/CrossDomainAuth.d.ts +0 -161
- package/lib/typescript/commonjs/core/CrossDomainAuth.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/HttpService.d.ts +0 -164
- package/lib/typescript/commonjs/core/HttpService.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/OxyServices.base.d.ts +0 -127
- package/lib/typescript/commonjs/core/OxyServices.base.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/OxyServices.d.ts +0 -82
- package/lib/typescript/commonjs/core/OxyServices.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/OxyServices.errors.d.ts +0 -12
- package/lib/typescript/commonjs/core/OxyServices.errors.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/index.d.ts +0 -21
- package/lib/typescript/commonjs/core/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.analytics.d.ts +0 -67
- package/lib/typescript/commonjs/core/mixins/OxyServices.analytics.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.assets.d.ts +0 -136
- package/lib/typescript/commonjs/core/mixins/OxyServices.assets.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.auth.d.ts +0 -187
- package/lib/typescript/commonjs/core/mixins/OxyServices.auth.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.developer.d.ts +0 -100
- package/lib/typescript/commonjs/core/mixins/OxyServices.developer.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.devices.d.ts +0 -97
- package/lib/typescript/commonjs/core/mixins/OxyServices.devices.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.features.d.ts +0 -229
- package/lib/typescript/commonjs/core/mixins/OxyServices.features.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.fedcm.d.ts +0 -201
- package/lib/typescript/commonjs/core/mixins/OxyServices.fedcm.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.karma.d.ts +0 -86
- package/lib/typescript/commonjs/core/mixins/OxyServices.karma.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.language.d.ts +0 -82
- package/lib/typescript/commonjs/core/mixins/OxyServices.language.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.location.d.ts +0 -65
- package/lib/typescript/commonjs/core/mixins/OxyServices.location.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.payment.d.ts +0 -112
- package/lib/typescript/commonjs/core/mixins/OxyServices.payment.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.popup.d.ts +0 -206
- package/lib/typescript/commonjs/core/mixins/OxyServices.popup.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.privacy.d.ts +0 -123
- package/lib/typescript/commonjs/core/mixins/OxyServices.privacy.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.redirect.d.ts +0 -246
- package/lib/typescript/commonjs/core/mixins/OxyServices.redirect.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.security.d.ts +0 -79
- package/lib/typescript/commonjs/core/mixins/OxyServices.security.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.user.d.ts +0 -185
- package/lib/typescript/commonjs/core/mixins/OxyServices.user.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/OxyServices.utility.d.ts +0 -94
- package/lib/typescript/commonjs/core/mixins/OxyServices.utility.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/index.d.ts +0 -31
- package/lib/typescript/commonjs/core/mixins/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/core/mixins/mixinHelpers.d.ts +0 -32
- package/lib/typescript/commonjs/core/mixins/mixinHelpers.d.ts.map +0 -1
- package/lib/typescript/commonjs/crypto/index.d.ts +0 -12
- package/lib/typescript/commonjs/crypto/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/crypto/keyManager.d.ts +0 -190
- package/lib/typescript/commonjs/crypto/keyManager.d.ts.map +0 -1
- package/lib/typescript/commonjs/crypto/polyfill.d.ts +0 -13
- package/lib/typescript/commonjs/crypto/polyfill.d.ts.map +0 -1
- package/lib/typescript/commonjs/crypto/recoveryPhrase.d.ts +0 -59
- package/lib/typescript/commonjs/crypto/recoveryPhrase.d.ts.map +0 -1
- package/lib/typescript/commonjs/crypto/signatureService.d.ts +0 -87
- package/lib/typescript/commonjs/crypto/signatureService.d.ts.map +0 -1
- package/lib/typescript/commonjs/i18n/index.d.ts +0 -4
- package/lib/typescript/commonjs/i18n/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/models/interfaces.d.ts +0 -416
- package/lib/typescript/commonjs/models/interfaces.d.ts.map +0 -1
- package/lib/typescript/commonjs/models/session.d.ts +0 -28
- package/lib/typescript/commonjs/models/session.d.ts.map +0 -1
- package/lib/typescript/commonjs/node/index.d.ts +0 -10
- package/lib/typescript/commonjs/node/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/shared/index.d.ts +0 -29
- package/lib/typescript/commonjs/shared/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/shared/utils/colorUtils.d.ts +0 -105
- package/lib/typescript/commonjs/shared/utils/colorUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/shared/utils/debugUtils.d.ts +0 -49
- package/lib/typescript/commonjs/shared/utils/debugUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/shared/utils/errorUtils.d.ts +0 -98
- package/lib/typescript/commonjs/shared/utils/errorUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/shared/utils/index.d.ts +0 -14
- package/lib/typescript/commonjs/shared/utils/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/shared/utils/networkUtils.d.ts +0 -140
- package/lib/typescript/commonjs/shared/utils/networkUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/shared/utils/themeUtils.d.ts +0 -91
- package/lib/typescript/commonjs/shared/utils/themeUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/apiUtils.d.ts +0 -54
- package/lib/typescript/commonjs/utils/apiUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/asyncUtils.d.ts +0 -59
- package/lib/typescript/commonjs/utils/asyncUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/cache.d.ts +0 -128
- package/lib/typescript/commonjs/utils/cache.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/deviceManager.d.ts +0 -66
- package/lib/typescript/commonjs/utils/deviceManager.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/errorUtils.d.ts +0 -47
- package/lib/typescript/commonjs/utils/errorUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/index.d.ts +0 -7
- package/lib/typescript/commonjs/utils/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/languageUtils.d.ts +0 -38
- package/lib/typescript/commonjs/utils/languageUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/loggerUtils.d.ts +0 -49
- package/lib/typescript/commonjs/utils/loggerUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/platform.d.ts +0 -41
- package/lib/typescript/commonjs/utils/platform.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/platformInit.d.ts +0 -10
- package/lib/typescript/commonjs/utils/platformInit.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/platformInit.native.d.ts +0 -2
- package/lib/typescript/commonjs/utils/platformInit.native.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/requestUtils.d.ts +0 -124
- package/lib/typescript/commonjs/utils/requestUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/sessionUtils.d.ts +0 -55
- package/lib/typescript/commonjs/utils/sessionUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/utils/validationUtils.d.ts +0 -86
- package/lib/typescript/commonjs/utils/validationUtils.d.ts.map +0 -1
- package/lib/typescript/commonjs/web/WebOxyContext.d.ts +0 -152
- package/lib/typescript/commonjs/web/WebOxyContext.d.ts.map +0 -1
- package/lib/typescript/commonjs/web/index.d.ts +0 -53
- package/lib/typescript/commonjs/web/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/web.d.ts +0 -54
- package/lib/typescript/commonjs/web.d.ts.map +0 -1
- package/lib/typescript/module/constants/version.d.ts +0 -14
- package/lib/typescript/module/constants/version.d.ts.map +0 -1
- package/lib/typescript/module/core/AuthManager.d.ts +0 -144
- package/lib/typescript/module/core/AuthManager.d.ts.map +0 -1
- package/lib/typescript/module/core/CrossDomainAuth.d.ts +0 -161
- package/lib/typescript/module/core/CrossDomainAuth.d.ts.map +0 -1
- package/lib/typescript/module/core/HttpService.d.ts +0 -164
- package/lib/typescript/module/core/HttpService.d.ts.map +0 -1
- package/lib/typescript/module/core/OxyServices.base.d.ts +0 -127
- package/lib/typescript/module/core/OxyServices.base.d.ts.map +0 -1
- package/lib/typescript/module/core/OxyServices.d.ts +0 -82
- package/lib/typescript/module/core/OxyServices.d.ts.map +0 -1
- package/lib/typescript/module/core/OxyServices.errors.d.ts +0 -12
- package/lib/typescript/module/core/OxyServices.errors.d.ts.map +0 -1
- package/lib/typescript/module/core/index.d.ts +0 -21
- package/lib/typescript/module/core/index.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.analytics.d.ts +0 -67
- package/lib/typescript/module/core/mixins/OxyServices.analytics.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.assets.d.ts +0 -136
- package/lib/typescript/module/core/mixins/OxyServices.assets.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.auth.d.ts +0 -187
- package/lib/typescript/module/core/mixins/OxyServices.auth.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.developer.d.ts +0 -100
- package/lib/typescript/module/core/mixins/OxyServices.developer.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.devices.d.ts +0 -97
- package/lib/typescript/module/core/mixins/OxyServices.devices.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.features.d.ts +0 -229
- package/lib/typescript/module/core/mixins/OxyServices.features.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.fedcm.d.ts +0 -201
- package/lib/typescript/module/core/mixins/OxyServices.fedcm.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.karma.d.ts +0 -86
- package/lib/typescript/module/core/mixins/OxyServices.karma.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.language.d.ts +0 -82
- package/lib/typescript/module/core/mixins/OxyServices.language.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.location.d.ts +0 -65
- package/lib/typescript/module/core/mixins/OxyServices.location.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.payment.d.ts +0 -112
- package/lib/typescript/module/core/mixins/OxyServices.payment.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.popup.d.ts +0 -206
- package/lib/typescript/module/core/mixins/OxyServices.popup.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.privacy.d.ts +0 -123
- package/lib/typescript/module/core/mixins/OxyServices.privacy.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.redirect.d.ts +0 -246
- package/lib/typescript/module/core/mixins/OxyServices.redirect.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.security.d.ts +0 -79
- package/lib/typescript/module/core/mixins/OxyServices.security.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.user.d.ts +0 -185
- package/lib/typescript/module/core/mixins/OxyServices.user.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/OxyServices.utility.d.ts +0 -94
- package/lib/typescript/module/core/mixins/OxyServices.utility.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/index.d.ts +0 -31
- package/lib/typescript/module/core/mixins/index.d.ts.map +0 -1
- package/lib/typescript/module/core/mixins/mixinHelpers.d.ts +0 -32
- package/lib/typescript/module/core/mixins/mixinHelpers.d.ts.map +0 -1
- package/lib/typescript/module/crypto/index.d.ts +0 -12
- package/lib/typescript/module/crypto/index.d.ts.map +0 -1
- package/lib/typescript/module/crypto/keyManager.d.ts +0 -190
- package/lib/typescript/module/crypto/keyManager.d.ts.map +0 -1
- package/lib/typescript/module/crypto/polyfill.d.ts +0 -13
- package/lib/typescript/module/crypto/polyfill.d.ts.map +0 -1
- package/lib/typescript/module/crypto/recoveryPhrase.d.ts +0 -59
- package/lib/typescript/module/crypto/recoveryPhrase.d.ts.map +0 -1
- package/lib/typescript/module/crypto/signatureService.d.ts +0 -87
- package/lib/typescript/module/crypto/signatureService.d.ts.map +0 -1
- package/lib/typescript/module/i18n/index.d.ts +0 -4
- package/lib/typescript/module/i18n/index.d.ts.map +0 -1
- package/lib/typescript/module/models/interfaces.d.ts +0 -416
- package/lib/typescript/module/models/interfaces.d.ts.map +0 -1
- package/lib/typescript/module/models/session.d.ts +0 -28
- package/lib/typescript/module/models/session.d.ts.map +0 -1
- package/lib/typescript/module/node/index.d.ts +0 -10
- package/lib/typescript/module/node/index.d.ts.map +0 -1
- package/lib/typescript/module/shared/index.d.ts +0 -29
- package/lib/typescript/module/shared/index.d.ts.map +0 -1
- package/lib/typescript/module/shared/utils/colorUtils.d.ts +0 -105
- package/lib/typescript/module/shared/utils/colorUtils.d.ts.map +0 -1
- package/lib/typescript/module/shared/utils/debugUtils.d.ts +0 -49
- package/lib/typescript/module/shared/utils/debugUtils.d.ts.map +0 -1
- package/lib/typescript/module/shared/utils/errorUtils.d.ts +0 -98
- package/lib/typescript/module/shared/utils/errorUtils.d.ts.map +0 -1
- package/lib/typescript/module/shared/utils/index.d.ts +0 -14
- package/lib/typescript/module/shared/utils/index.d.ts.map +0 -1
- package/lib/typescript/module/shared/utils/networkUtils.d.ts +0 -140
- package/lib/typescript/module/shared/utils/networkUtils.d.ts.map +0 -1
- package/lib/typescript/module/shared/utils/themeUtils.d.ts +0 -91
- package/lib/typescript/module/shared/utils/themeUtils.d.ts.map +0 -1
- package/lib/typescript/module/utils/apiUtils.d.ts +0 -54
- package/lib/typescript/module/utils/apiUtils.d.ts.map +0 -1
- package/lib/typescript/module/utils/asyncUtils.d.ts +0 -59
- package/lib/typescript/module/utils/asyncUtils.d.ts.map +0 -1
- package/lib/typescript/module/utils/cache.d.ts +0 -128
- package/lib/typescript/module/utils/cache.d.ts.map +0 -1
- package/lib/typescript/module/utils/deviceManager.d.ts +0 -66
- package/lib/typescript/module/utils/deviceManager.d.ts.map +0 -1
- package/lib/typescript/module/utils/errorUtils.d.ts +0 -47
- package/lib/typescript/module/utils/errorUtils.d.ts.map +0 -1
- package/lib/typescript/module/utils/index.d.ts +0 -7
- package/lib/typescript/module/utils/index.d.ts.map +0 -1
- package/lib/typescript/module/utils/languageUtils.d.ts +0 -38
- package/lib/typescript/module/utils/languageUtils.d.ts.map +0 -1
- package/lib/typescript/module/utils/loggerUtils.d.ts +0 -49
- package/lib/typescript/module/utils/loggerUtils.d.ts.map +0 -1
- package/lib/typescript/module/utils/platform.d.ts +0 -41
- package/lib/typescript/module/utils/platform.d.ts.map +0 -1
- package/lib/typescript/module/utils/platformInit.d.ts +0 -10
- package/lib/typescript/module/utils/platformInit.d.ts.map +0 -1
- package/lib/typescript/module/utils/platformInit.native.d.ts +0 -2
- package/lib/typescript/module/utils/platformInit.native.d.ts.map +0 -1
- package/lib/typescript/module/utils/requestUtils.d.ts +0 -124
- package/lib/typescript/module/utils/requestUtils.d.ts.map +0 -1
- package/lib/typescript/module/utils/sessionUtils.d.ts +0 -55
- package/lib/typescript/module/utils/sessionUtils.d.ts.map +0 -1
- package/lib/typescript/module/utils/validationUtils.d.ts +0 -86
- package/lib/typescript/module/utils/validationUtils.d.ts.map +0 -1
- package/lib/typescript/module/web/WebOxyContext.d.ts +0 -152
- package/lib/typescript/module/web/WebOxyContext.d.ts.map +0 -1
- package/lib/typescript/module/web/index.d.ts +0 -53
- package/lib/typescript/module/web/index.d.ts.map +0 -1
- package/lib/typescript/module/web.d.ts +0 -54
- package/lib/typescript/module/web.d.ts.map +0 -1
- package/lib/typescript/types/bip39.d.ts +0 -32
- package/lib/typescript/types/buffer.d.ts +0 -97
- package/lib/typescript/types/color.d.ts +0 -20
- package/lib/typescript/types/elliptic.d.ts +0 -62
- package/src/constants/version.ts +0 -15
- package/src/core/AuthManager.ts +0 -436
- package/src/core/CrossDomainAuth.ts +0 -307
- package/src/core/HttpService.ts +0 -752
- package/src/core/OxyServices.base.ts +0 -334
- package/src/core/OxyServices.errors.ts +0 -26
- package/src/core/OxyServices.ts +0 -129
- package/src/core/index.ts +0 -42
- package/src/core/mixins/OxyServices.analytics.ts +0 -53
- package/src/core/mixins/OxyServices.assets.ts +0 -412
- package/src/core/mixins/OxyServices.auth.ts +0 -358
- package/src/core/mixins/OxyServices.developer.ts +0 -114
- package/src/core/mixins/OxyServices.devices.ts +0 -119
- package/src/core/mixins/OxyServices.features.ts +0 -428
- package/src/core/mixins/OxyServices.fedcm.ts +0 -494
- package/src/core/mixins/OxyServices.karma.ts +0 -111
- package/src/core/mixins/OxyServices.language.ts +0 -127
- package/src/core/mixins/OxyServices.location.ts +0 -46
- package/src/core/mixins/OxyServices.payment.ts +0 -163
- package/src/core/mixins/OxyServices.popup.ts +0 -443
- package/src/core/mixins/OxyServices.privacy.ts +0 -182
- package/src/core/mixins/OxyServices.redirect.ts +0 -397
- package/src/core/mixins/OxyServices.security.ts +0 -103
- package/src/core/mixins/OxyServices.user.ts +0 -392
- package/src/core/mixins/OxyServices.utility.ts +0 -191
- package/src/core/mixins/index.ts +0 -91
- package/src/core/mixins/mixinHelpers.ts +0 -69
- package/src/crypto/index.ts +0 -25
- package/src/crypto/keyManager.ts +0 -962
- package/src/crypto/polyfill.ts +0 -81
- package/src/crypto/recoveryPhrase.ts +0 -166
- package/src/crypto/signatureService.ts +0 -323
- package/src/i18n/index.ts +0 -75
- package/src/i18n/locales/ar-SA.json +0 -120
- package/src/i18n/locales/ca-ES.json +0 -120
- package/src/i18n/locales/de-DE.json +0 -120
- package/src/i18n/locales/en-US.json +0 -956
- package/src/i18n/locales/es-ES.json +0 -944
- package/src/i18n/locales/fr-FR.json +0 -120
- package/src/i18n/locales/it-IT.json +0 -120
- package/src/i18n/locales/ja-JP.json +0 -119
- package/src/i18n/locales/ko-KR.json +0 -120
- package/src/i18n/locales/pt-PT.json +0 -120
- package/src/i18n/locales/zh-CN.json +0 -120
- package/src/models/interfaces.ts +0 -511
- package/src/models/session.ts +0 -30
- package/src/node/index.ts +0 -17
- package/src/shared/index.ts +0 -82
- package/src/shared/utils/colorUtils.ts +0 -155
- package/src/shared/utils/debugUtils.ts +0 -73
- package/src/shared/utils/errorUtils.ts +0 -181
- package/src/shared/utils/index.ts +0 -59
- package/src/shared/utils/networkUtils.ts +0 -248
- package/src/shared/utils/themeUtils.ts +0 -115
- package/src/types/bip39.d.ts +0 -32
- package/src/types/buffer.d.ts +0 -97
- package/src/types/color.d.ts +0 -20
- package/src/types/elliptic.d.ts +0 -62
- package/src/utils/__tests__/validationUtils.test.ts +0 -236
- package/src/utils/apiUtils.ts +0 -88
- package/src/utils/asyncUtils.ts +0 -252
- package/src/utils/cache.ts +0 -264
- package/src/utils/deviceManager.ts +0 -198
- package/src/utils/errorUtils.ts +0 -216
- package/src/utils/index.ts +0 -21
- package/src/utils/languageUtils.ts +0 -174
- package/src/utils/loggerUtils.ts +0 -153
- package/src/utils/platform.ts +0 -117
- package/src/utils/platformInit.native.ts +0 -13
- package/src/utils/platformInit.ts +0 -11
- package/src/utils/requestUtils.ts +0 -237
- package/src/utils/sessionUtils.ts +0 -206
- package/src/utils/validationUtils.ts +0 -174
- package/src/web/WebOxyContext.tsx +0 -470
- package/src/web/index.ts +0 -157
- package/src/web.ts +0 -230
|
@@ -1,939 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Key Manager - ECDSA secp256k1 Key Generation and Storage
|
|
5
|
-
*
|
|
6
|
-
* Handles secure generation, storage, and retrieval of cryptographic keys.
|
|
7
|
-
* Private keys are stored securely using expo-secure-store and never leave the device.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
import { ec as EC } from 'elliptic';
|
|
11
|
-
import { isWeb, isIOS, isAndroid } from "../utils/platform.js";
|
|
12
|
-
import { logger } from "../utils/loggerUtils.js";
|
|
13
|
-
|
|
14
|
-
// Lazy imports for React Native specific modules
|
|
15
|
-
let SecureStore = null;
|
|
16
|
-
let ExpoCrypto = null;
|
|
17
|
-
const ec = new EC('secp256k1');
|
|
18
|
-
const STORAGE_KEYS = {
|
|
19
|
-
PRIVATE_KEY: 'oxy_identity_private_key',
|
|
20
|
-
PUBLIC_KEY: 'oxy_identity_public_key',
|
|
21
|
-
BACKUP_PRIVATE_KEY: 'oxy_identity_backup_private_key',
|
|
22
|
-
BACKUP_PUBLIC_KEY: 'oxy_identity_backup_public_key',
|
|
23
|
-
BACKUP_TIMESTAMP: 'oxy_identity_backup_timestamp',
|
|
24
|
-
// Shared keys accessible across all Oxy apps (iOS Keychain Group / Android Account Manager)
|
|
25
|
-
SHARED_PRIVATE_KEY: 'oxy_shared_identity_private_key',
|
|
26
|
-
SHARED_PUBLIC_KEY: 'oxy_shared_identity_public_key',
|
|
27
|
-
SHARED_SESSION_TOKEN: 'oxy_shared_session_token',
|
|
28
|
-
SHARED_SESSION_ID: 'oxy_shared_session_id'
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* iOS Keychain Access Group for sharing identities across Oxy apps
|
|
33
|
-
* All Oxy apps must have this access group enabled in their entitlements
|
|
34
|
-
* Format: [Team ID].com.oxy.shared or group.com.oxy.shared
|
|
35
|
-
*/
|
|
36
|
-
const IOS_KEYCHAIN_GROUP = 'group.com.oxy.shared';
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Android Account Manager type for shared authentication
|
|
40
|
-
* Used with sharedUserId to share sessions across apps
|
|
41
|
-
*/
|
|
42
|
-
const ANDROID_ACCOUNT_TYPE = 'com.oxy.account';
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Initialize React Native specific modules
|
|
46
|
-
* This allows the module to work in both Node.js and React Native environments
|
|
47
|
-
*/
|
|
48
|
-
async function initSecureStore() {
|
|
49
|
-
if (!SecureStore) {
|
|
50
|
-
try {
|
|
51
|
-
SecureStore = await import('expo-secure-store');
|
|
52
|
-
} catch (error) {
|
|
53
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
54
|
-
throw new Error(`Failed to load expo-secure-store: ${errorMessage}. Make sure expo-secure-store is installed and properly configured.`);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
if (!SecureStore) {
|
|
58
|
-
throw new Error('expo-secure-store module is not available');
|
|
59
|
-
}
|
|
60
|
-
return SecureStore;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Check if we're in a React Native environment
|
|
65
|
-
*/
|
|
66
|
-
function isReactNative() {
|
|
67
|
-
return typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* Check if we're in a Node.js environment
|
|
72
|
-
*/
|
|
73
|
-
function isNodeJS() {
|
|
74
|
-
return typeof process !== 'undefined' && process.versions != null && process.versions.node != null;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Check if we're on web platform
|
|
79
|
-
* Identity storage is only available on native platforms (iOS/Android)
|
|
80
|
-
*/
|
|
81
|
-
function isWebPlatform() {
|
|
82
|
-
return isWeb();
|
|
83
|
-
}
|
|
84
|
-
async function initExpoCrypto() {
|
|
85
|
-
if (!ExpoCrypto) {
|
|
86
|
-
ExpoCrypto = await import('expo-crypto');
|
|
87
|
-
}
|
|
88
|
-
return ExpoCrypto;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* Convert Uint8Array to hexadecimal string
|
|
93
|
-
* Works in both Node.js and React Native
|
|
94
|
-
*/
|
|
95
|
-
function uint8ArrayToHex(bytes) {
|
|
96
|
-
return Array.from(bytes).map(b => b.toString(16).padStart(2, '0')).join('');
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* Generate cryptographically secure random bytes
|
|
101
|
-
*/
|
|
102
|
-
async function getSecureRandomBytes(length) {
|
|
103
|
-
// In React Native, always use expo-crypto
|
|
104
|
-
if (isReactNative() || !isNodeJS()) {
|
|
105
|
-
const Crypto = await initExpoCrypto();
|
|
106
|
-
return Crypto.getRandomBytes(length);
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
// In Node.js, use Node's crypto module
|
|
110
|
-
// Use Function constructor to prevent Metro bundler from statically analyzing this require
|
|
111
|
-
// This ensures the require is only evaluated in Node.js runtime, not during Metro bundling
|
|
112
|
-
try {
|
|
113
|
-
// eslint-disable-next-line @typescript-eslint/no-implied-eval
|
|
114
|
-
const getCrypto = new Function('return require("crypto")');
|
|
115
|
-
const crypto = getCrypto();
|
|
116
|
-
return new Uint8Array(crypto.randomBytes(length));
|
|
117
|
-
} catch (error) {
|
|
118
|
-
// Fallback to expo-crypto if Node crypto fails
|
|
119
|
-
const Crypto = await initExpoCrypto();
|
|
120
|
-
return Crypto.getRandomBytes(length);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
export class KeyManager {
|
|
124
|
-
// In-memory cache for identity state (invalidated on identity changes)
|
|
125
|
-
static cachedPublicKey = null;
|
|
126
|
-
static cachedHasIdentity = null;
|
|
127
|
-
static cachedSharedPublicKey = null;
|
|
128
|
-
static cachedHasSharedIdentity = null;
|
|
129
|
-
|
|
130
|
-
/**
|
|
131
|
-
* Invalidate cached identity state
|
|
132
|
-
* Called internally when identity is created/deleted/imported
|
|
133
|
-
*/
|
|
134
|
-
static invalidateCache() {
|
|
135
|
-
KeyManager.cachedPublicKey = null;
|
|
136
|
-
KeyManager.cachedHasIdentity = null;
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
/**
|
|
140
|
-
* Invalidate cached shared identity state
|
|
141
|
-
* Called internally when shared identity is created/deleted/imported
|
|
142
|
-
*/
|
|
143
|
-
static invalidateSharedCache() {
|
|
144
|
-
KeyManager.cachedSharedPublicKey = null;
|
|
145
|
-
KeyManager.cachedHasSharedIdentity = null;
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
/**
|
|
149
|
-
* Generate a new ECDSA secp256k1 key pair
|
|
150
|
-
* Returns the keys in hexadecimal format
|
|
151
|
-
*/
|
|
152
|
-
static generateKeyPairSync() {
|
|
153
|
-
const keyPair = ec.genKeyPair();
|
|
154
|
-
return {
|
|
155
|
-
privateKey: keyPair.getPrivate('hex'),
|
|
156
|
-
publicKey: keyPair.getPublic('hex')
|
|
157
|
-
};
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
/**
|
|
161
|
-
* Generate a new key pair using secure random bytes
|
|
162
|
-
*/
|
|
163
|
-
static async generateKeyPair() {
|
|
164
|
-
const randomBytes = await getSecureRandomBytes(32);
|
|
165
|
-
const privateKeyHex = uint8ArrayToHex(randomBytes);
|
|
166
|
-
const keyPair = ec.keyFromPrivate(privateKeyHex);
|
|
167
|
-
return {
|
|
168
|
-
privateKey: keyPair.getPrivate('hex'),
|
|
169
|
-
publicKey: keyPair.getPublic('hex')
|
|
170
|
-
};
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
// ==================== SHARED IDENTITY METHODS ====================
|
|
174
|
-
// These methods enable cross-app session sharing (like Google)
|
|
175
|
-
// iOS: Uses Keychain Access Groups
|
|
176
|
-
// Android: Uses Account Manager with shared user ID
|
|
177
|
-
// =================================================================
|
|
178
|
-
|
|
179
|
-
/**
|
|
180
|
-
* Create a shared identity accessible across all Oxy apps
|
|
181
|
-
*
|
|
182
|
-
* iOS: Stores in shared keychain group (requires entitlement configuration)
|
|
183
|
-
* Android: Stores in Account Manager (requires sharedUserId in manifest)
|
|
184
|
-
*
|
|
185
|
-
* This enables true cross-app SSO - when user signs in to one Oxy app,
|
|
186
|
-
* they're automatically signed in to all other Oxy apps.
|
|
187
|
-
*
|
|
188
|
-
* @returns Public key of the shared identity
|
|
189
|
-
* @throws Error if not on native platform or if sharing is not configured
|
|
190
|
-
*/
|
|
191
|
-
static async createSharedIdentity() {
|
|
192
|
-
if (isWebPlatform()) {
|
|
193
|
-
throw new Error('Shared identity is only available on native platforms (iOS/Android).');
|
|
194
|
-
}
|
|
195
|
-
const store = await initSecureStore();
|
|
196
|
-
const {
|
|
197
|
-
privateKey,
|
|
198
|
-
publicKey
|
|
199
|
-
} = await KeyManager.generateKeyPair();
|
|
200
|
-
if (isIOS()) {
|
|
201
|
-
// iOS: Store in shared keychain group
|
|
202
|
-
// Note: keychainAccessGroup requires Keychain Sharing capability in Xcode
|
|
203
|
-
try {
|
|
204
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_PRIVATE_KEY, privateKey, {
|
|
205
|
-
keychainAccessible: store.WHEN_UNLOCKED_THIS_DEVICE_ONLY,
|
|
206
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP // This enables sharing across apps
|
|
207
|
-
}); // Type assertion: keychainAccessGroup may not be in older @types but is supported
|
|
208
|
-
|
|
209
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_PUBLIC_KEY, publicKey, {
|
|
210
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
211
|
-
});
|
|
212
|
-
} catch (error) {
|
|
213
|
-
throw new Error(`Failed to create shared identity on iOS. Ensure your app has the Keychain Sharing capability enabled with access group "${IOS_KEYCHAIN_GROUP}". Error: ${error}`);
|
|
214
|
-
}
|
|
215
|
-
} else if (isAndroid()) {
|
|
216
|
-
// Android: Store in secure store (accessible via sharedUserId)
|
|
217
|
-
// Note: All Oxy apps must have the same sharedUserId in AndroidManifest.xml
|
|
218
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_PRIVATE_KEY, privateKey, {
|
|
219
|
-
keychainAccessible: store.WHEN_UNLOCKED_THIS_DEVICE_ONLY
|
|
220
|
-
});
|
|
221
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_PUBLIC_KEY, publicKey);
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
// Update cache
|
|
225
|
-
KeyManager.cachedSharedPublicKey = publicKey;
|
|
226
|
-
KeyManager.cachedHasSharedIdentity = true;
|
|
227
|
-
if (__DEV__) {
|
|
228
|
-
logger.debug('Shared identity created successfully', {
|
|
229
|
-
component: 'KeyManager'
|
|
230
|
-
});
|
|
231
|
-
}
|
|
232
|
-
return publicKey;
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
/**
|
|
236
|
-
* Get the shared public key (accessible across all Oxy apps)
|
|
237
|
-
*
|
|
238
|
-
* @returns Shared public key or null if no shared identity exists
|
|
239
|
-
*/
|
|
240
|
-
static async getSharedPublicKey() {
|
|
241
|
-
if (isWebPlatform()) {
|
|
242
|
-
return null;
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
// Return cached value if available
|
|
246
|
-
if (KeyManager.cachedSharedPublicKey !== null) {
|
|
247
|
-
return KeyManager.cachedSharedPublicKey;
|
|
248
|
-
}
|
|
249
|
-
try {
|
|
250
|
-
const store = await initSecureStore();
|
|
251
|
-
let publicKey = null;
|
|
252
|
-
if (isIOS()) {
|
|
253
|
-
publicKey = await store.getItemAsync(STORAGE_KEYS.SHARED_PUBLIC_KEY, {
|
|
254
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
255
|
-
});
|
|
256
|
-
} else if (isAndroid()) {
|
|
257
|
-
publicKey = await store.getItemAsync(STORAGE_KEYS.SHARED_PUBLIC_KEY);
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
// Cache result
|
|
261
|
-
KeyManager.cachedSharedPublicKey = publicKey;
|
|
262
|
-
return publicKey;
|
|
263
|
-
} catch (error) {
|
|
264
|
-
if (__DEV__) {
|
|
265
|
-
logger.warn('Failed to get shared public key', {
|
|
266
|
-
component: 'KeyManager'
|
|
267
|
-
}, error);
|
|
268
|
-
}
|
|
269
|
-
KeyManager.cachedSharedPublicKey = null;
|
|
270
|
-
return null;
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
/**
|
|
275
|
-
* Get the shared private key (for signing operations)
|
|
276
|
-
*
|
|
277
|
-
* WARNING: Only use this for signing operations within the app.
|
|
278
|
-
* The private key should NEVER be transmitted or exposed.
|
|
279
|
-
*
|
|
280
|
-
* @returns Shared private key or null if no shared identity exists
|
|
281
|
-
*/
|
|
282
|
-
static async getSharedPrivateKey() {
|
|
283
|
-
if (isWebPlatform()) {
|
|
284
|
-
return null;
|
|
285
|
-
}
|
|
286
|
-
try {
|
|
287
|
-
const store = await initSecureStore();
|
|
288
|
-
let privateKey = null;
|
|
289
|
-
if (isIOS()) {
|
|
290
|
-
privateKey = await store.getItemAsync(STORAGE_KEYS.SHARED_PRIVATE_KEY, {
|
|
291
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
292
|
-
});
|
|
293
|
-
} else if (isAndroid()) {
|
|
294
|
-
privateKey = await store.getItemAsync(STORAGE_KEYS.SHARED_PRIVATE_KEY);
|
|
295
|
-
}
|
|
296
|
-
return privateKey;
|
|
297
|
-
} catch (error) {
|
|
298
|
-
if (__DEV__) {
|
|
299
|
-
logger.warn('Failed to get shared private key', {
|
|
300
|
-
component: 'KeyManager'
|
|
301
|
-
}, error);
|
|
302
|
-
}
|
|
303
|
-
return null;
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
/**
|
|
308
|
-
* Check if a shared identity exists (accessible across all Oxy apps)
|
|
309
|
-
*
|
|
310
|
-
* @returns True if shared identity exists, false otherwise
|
|
311
|
-
*/
|
|
312
|
-
static async hasSharedIdentity() {
|
|
313
|
-
if (isWebPlatform()) {
|
|
314
|
-
return false;
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
// Return cached value if available
|
|
318
|
-
if (KeyManager.cachedHasSharedIdentity !== null) {
|
|
319
|
-
return KeyManager.cachedHasSharedIdentity;
|
|
320
|
-
}
|
|
321
|
-
try {
|
|
322
|
-
const privateKey = await KeyManager.getSharedPrivateKey();
|
|
323
|
-
const hasShared = privateKey !== null;
|
|
324
|
-
|
|
325
|
-
// Cache result
|
|
326
|
-
KeyManager.cachedHasSharedIdentity = hasShared;
|
|
327
|
-
return hasShared;
|
|
328
|
-
} catch (error) {
|
|
329
|
-
if (__DEV__) {
|
|
330
|
-
logger.warn('Failed to check shared identity', {
|
|
331
|
-
component: 'KeyManager'
|
|
332
|
-
}, error);
|
|
333
|
-
}
|
|
334
|
-
KeyManager.cachedHasSharedIdentity = false;
|
|
335
|
-
return false;
|
|
336
|
-
}
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
/**
|
|
340
|
-
* Import an existing key pair as shared identity
|
|
341
|
-
*
|
|
342
|
-
* This is used when:
|
|
343
|
-
* 1. User signs in to a new Oxy app for the first time
|
|
344
|
-
* 2. User has existing identity on another Oxy app
|
|
345
|
-
* 3. We want to sync the identity across apps
|
|
346
|
-
*
|
|
347
|
-
* @param privateKey - Private key in hex format
|
|
348
|
-
* @returns Public key
|
|
349
|
-
*/
|
|
350
|
-
static async importSharedIdentity(privateKey) {
|
|
351
|
-
if (isWebPlatform()) {
|
|
352
|
-
throw new Error('Shared identity import is only available on native platforms.');
|
|
353
|
-
}
|
|
354
|
-
const store = await initSecureStore();
|
|
355
|
-
const keyPair = ec.keyFromPrivate(privateKey);
|
|
356
|
-
const publicKey = keyPair.getPublic('hex');
|
|
357
|
-
if (isIOS()) {
|
|
358
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_PRIVATE_KEY, privateKey, {
|
|
359
|
-
keychainAccessible: store.WHEN_UNLOCKED_THIS_DEVICE_ONLY,
|
|
360
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
361
|
-
});
|
|
362
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_PUBLIC_KEY, publicKey, {
|
|
363
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
364
|
-
});
|
|
365
|
-
} else if (isAndroid()) {
|
|
366
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_PRIVATE_KEY, privateKey, {
|
|
367
|
-
keychainAccessible: store.WHEN_UNLOCKED_THIS_DEVICE_ONLY
|
|
368
|
-
});
|
|
369
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_PUBLIC_KEY, publicKey);
|
|
370
|
-
}
|
|
371
|
-
|
|
372
|
-
// Update cache
|
|
373
|
-
KeyManager.cachedSharedPublicKey = publicKey;
|
|
374
|
-
KeyManager.cachedHasSharedIdentity = true;
|
|
375
|
-
if (__DEV__) {
|
|
376
|
-
logger.debug('Shared identity imported successfully', {
|
|
377
|
-
component: 'KeyManager'
|
|
378
|
-
});
|
|
379
|
-
}
|
|
380
|
-
return publicKey;
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
/**
|
|
384
|
-
* Store session information in shared storage
|
|
385
|
-
*
|
|
386
|
-
* This allows all Oxy apps to access the same session without
|
|
387
|
-
* re-authenticating. When user signs in to one app, all apps
|
|
388
|
-
* get the session automatically.
|
|
389
|
-
*
|
|
390
|
-
* @param sessionId - Session ID from authentication
|
|
391
|
-
* @param accessToken - Access token for API calls
|
|
392
|
-
*/
|
|
393
|
-
static async storeSharedSession(sessionId, accessToken) {
|
|
394
|
-
if (isWebPlatform()) {
|
|
395
|
-
return; // Not supported on web
|
|
396
|
-
}
|
|
397
|
-
try {
|
|
398
|
-
const store = await initSecureStore();
|
|
399
|
-
if (isIOS()) {
|
|
400
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_SESSION_ID, sessionId, {
|
|
401
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
402
|
-
});
|
|
403
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_SESSION_TOKEN, accessToken, {
|
|
404
|
-
keychainAccessible: store.WHEN_UNLOCKED,
|
|
405
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
406
|
-
});
|
|
407
|
-
} else if (isAndroid()) {
|
|
408
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_SESSION_ID, sessionId);
|
|
409
|
-
await store.setItemAsync(STORAGE_KEYS.SHARED_SESSION_TOKEN, accessToken);
|
|
410
|
-
}
|
|
411
|
-
if (__DEV__) {
|
|
412
|
-
logger.debug('Shared session stored successfully', {
|
|
413
|
-
component: 'KeyManager'
|
|
414
|
-
});
|
|
415
|
-
}
|
|
416
|
-
} catch (error) {
|
|
417
|
-
if (__DEV__) {
|
|
418
|
-
logger.error('Failed to store shared session', error, {
|
|
419
|
-
component: 'KeyManager'
|
|
420
|
-
});
|
|
421
|
-
}
|
|
422
|
-
throw error;
|
|
423
|
-
}
|
|
424
|
-
}
|
|
425
|
-
|
|
426
|
-
/**
|
|
427
|
-
* Get shared session information
|
|
428
|
-
*
|
|
429
|
-
* This allows any Oxy app to check if user is already signed in
|
|
430
|
-
* via another Oxy app. Enables instant cross-app SSO.
|
|
431
|
-
*
|
|
432
|
-
* @returns Session data or null if no shared session exists
|
|
433
|
-
*/
|
|
434
|
-
static async getSharedSession() {
|
|
435
|
-
if (isWebPlatform()) {
|
|
436
|
-
return null;
|
|
437
|
-
}
|
|
438
|
-
try {
|
|
439
|
-
const store = await initSecureStore();
|
|
440
|
-
let sessionId = null;
|
|
441
|
-
let accessToken = null;
|
|
442
|
-
if (isIOS()) {
|
|
443
|
-
sessionId = await store.getItemAsync(STORAGE_KEYS.SHARED_SESSION_ID, {
|
|
444
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
445
|
-
});
|
|
446
|
-
accessToken = await store.getItemAsync(STORAGE_KEYS.SHARED_SESSION_TOKEN, {
|
|
447
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
448
|
-
});
|
|
449
|
-
} else if (isAndroid()) {
|
|
450
|
-
sessionId = await store.getItemAsync(STORAGE_KEYS.SHARED_SESSION_ID);
|
|
451
|
-
accessToken = await store.getItemAsync(STORAGE_KEYS.SHARED_SESSION_TOKEN);
|
|
452
|
-
}
|
|
453
|
-
if (!sessionId || !accessToken) {
|
|
454
|
-
return null;
|
|
455
|
-
}
|
|
456
|
-
return {
|
|
457
|
-
sessionId,
|
|
458
|
-
accessToken
|
|
459
|
-
};
|
|
460
|
-
} catch (error) {
|
|
461
|
-
if (__DEV__) {
|
|
462
|
-
logger.warn('Failed to get shared session', {
|
|
463
|
-
component: 'KeyManager'
|
|
464
|
-
}, error);
|
|
465
|
-
}
|
|
466
|
-
return null;
|
|
467
|
-
}
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
/**
|
|
471
|
-
* Clear shared session (on logout)
|
|
472
|
-
*
|
|
473
|
-
* This signs out the user from ALL Oxy apps simultaneously.
|
|
474
|
-
* Call this when user explicitly logs out.
|
|
475
|
-
*/
|
|
476
|
-
static async clearSharedSession() {
|
|
477
|
-
if (isWebPlatform()) {
|
|
478
|
-
return;
|
|
479
|
-
}
|
|
480
|
-
try {
|
|
481
|
-
const store = await initSecureStore();
|
|
482
|
-
if (isIOS()) {
|
|
483
|
-
await store.deleteItemAsync(STORAGE_KEYS.SHARED_SESSION_ID, {
|
|
484
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
485
|
-
});
|
|
486
|
-
await store.deleteItemAsync(STORAGE_KEYS.SHARED_SESSION_TOKEN, {
|
|
487
|
-
keychainAccessGroup: IOS_KEYCHAIN_GROUP
|
|
488
|
-
});
|
|
489
|
-
} else if (isAndroid()) {
|
|
490
|
-
await store.deleteItemAsync(STORAGE_KEYS.SHARED_SESSION_ID);
|
|
491
|
-
await store.deleteItemAsync(STORAGE_KEYS.SHARED_SESSION_TOKEN);
|
|
492
|
-
}
|
|
493
|
-
if (__DEV__) {
|
|
494
|
-
logger.debug('Shared session cleared successfully', {
|
|
495
|
-
component: 'KeyManager'
|
|
496
|
-
});
|
|
497
|
-
}
|
|
498
|
-
} catch (error) {
|
|
499
|
-
if (__DEV__) {
|
|
500
|
-
logger.error('Failed to clear shared session', error, {
|
|
501
|
-
component: 'KeyManager'
|
|
502
|
-
});
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
|
-
}
|
|
506
|
-
|
|
507
|
-
/**
|
|
508
|
-
* Migrate local identity to shared identity
|
|
509
|
-
*
|
|
510
|
-
* Call this when upgrading existing apps to use shared identities.
|
|
511
|
-
* Copies the device-specific identity to shared storage so it can
|
|
512
|
-
* be accessed by other Oxy apps.
|
|
513
|
-
*
|
|
514
|
-
* @returns True if migration was successful, false if no local identity exists
|
|
515
|
-
*/
|
|
516
|
-
static async migrateToSharedIdentity() {
|
|
517
|
-
if (isWebPlatform()) {
|
|
518
|
-
return false;
|
|
519
|
-
}
|
|
520
|
-
try {
|
|
521
|
-
// Check if we already have a shared identity
|
|
522
|
-
const hasShared = await KeyManager.hasSharedIdentity();
|
|
523
|
-
if (hasShared) {
|
|
524
|
-
if (__DEV__) {
|
|
525
|
-
logger.debug('Shared identity already exists, skipping migration', {
|
|
526
|
-
component: 'KeyManager'
|
|
527
|
-
});
|
|
528
|
-
}
|
|
529
|
-
return true;
|
|
530
|
-
}
|
|
531
|
-
|
|
532
|
-
// Get local identity
|
|
533
|
-
const privateKey = await KeyManager.getPrivateKey();
|
|
534
|
-
if (!privateKey) {
|
|
535
|
-
if (__DEV__) {
|
|
536
|
-
logger.debug('No local identity to migrate', {
|
|
537
|
-
component: 'KeyManager'
|
|
538
|
-
});
|
|
539
|
-
}
|
|
540
|
-
return false;
|
|
541
|
-
}
|
|
542
|
-
|
|
543
|
-
// Import to shared storage
|
|
544
|
-
await KeyManager.importSharedIdentity(privateKey);
|
|
545
|
-
if (__DEV__) {
|
|
546
|
-
logger.debug('Successfully migrated local identity to shared identity', {
|
|
547
|
-
component: 'KeyManager'
|
|
548
|
-
});
|
|
549
|
-
}
|
|
550
|
-
return true;
|
|
551
|
-
} catch (error) {
|
|
552
|
-
if (__DEV__) {
|
|
553
|
-
logger.error('Failed to migrate to shared identity', error, {
|
|
554
|
-
component: 'KeyManager'
|
|
555
|
-
});
|
|
556
|
-
}
|
|
557
|
-
return false;
|
|
558
|
-
}
|
|
559
|
-
}
|
|
560
|
-
|
|
561
|
-
// ==================== END SHARED IDENTITY METHODS ====================
|
|
562
|
-
|
|
563
|
-
/**
|
|
564
|
-
* Generate and securely store a new key pair on the device
|
|
565
|
-
* Returns only the public key (private key is stored securely)
|
|
566
|
-
*/
|
|
567
|
-
static async createIdentity() {
|
|
568
|
-
if (isWebPlatform()) {
|
|
569
|
-
throw new Error('Identity creation is only available on native platforms (iOS/Android). Please use the native app to create your identity.');
|
|
570
|
-
}
|
|
571
|
-
const store = await initSecureStore();
|
|
572
|
-
const {
|
|
573
|
-
privateKey,
|
|
574
|
-
publicKey
|
|
575
|
-
} = await KeyManager.generateKeyPair();
|
|
576
|
-
await store.setItemAsync(STORAGE_KEYS.PRIVATE_KEY, privateKey, {
|
|
577
|
-
keychainAccessible: store.WHEN_UNLOCKED_THIS_DEVICE_ONLY
|
|
578
|
-
});
|
|
579
|
-
await store.setItemAsync(STORAGE_KEYS.PUBLIC_KEY, publicKey);
|
|
580
|
-
|
|
581
|
-
// Update cache
|
|
582
|
-
KeyManager.cachedPublicKey = publicKey;
|
|
583
|
-
KeyManager.cachedHasIdentity = true;
|
|
584
|
-
return publicKey;
|
|
585
|
-
}
|
|
586
|
-
|
|
587
|
-
/**
|
|
588
|
-
* Import an existing key pair (e.g., from recovery phrase)
|
|
589
|
-
*/
|
|
590
|
-
static async importKeyPair(privateKey) {
|
|
591
|
-
if (isWebPlatform()) {
|
|
592
|
-
throw new Error('Identity import is only available on native platforms (iOS/Android). Please use the native app to import your identity.');
|
|
593
|
-
}
|
|
594
|
-
const store = await initSecureStore();
|
|
595
|
-
const keyPair = ec.keyFromPrivate(privateKey);
|
|
596
|
-
const publicKey = keyPair.getPublic('hex');
|
|
597
|
-
await store.setItemAsync(STORAGE_KEYS.PRIVATE_KEY, privateKey, {
|
|
598
|
-
keychainAccessible: store.WHEN_UNLOCKED_THIS_DEVICE_ONLY
|
|
599
|
-
});
|
|
600
|
-
await store.setItemAsync(STORAGE_KEYS.PUBLIC_KEY, publicKey);
|
|
601
|
-
|
|
602
|
-
// Update cache
|
|
603
|
-
KeyManager.cachedPublicKey = publicKey;
|
|
604
|
-
KeyManager.cachedHasIdentity = true;
|
|
605
|
-
return publicKey;
|
|
606
|
-
}
|
|
607
|
-
|
|
608
|
-
/**
|
|
609
|
-
* Get the stored private key
|
|
610
|
-
* WARNING: Only use this for signing operations within the app
|
|
611
|
-
*/
|
|
612
|
-
static async getPrivateKey() {
|
|
613
|
-
if (isWebPlatform()) {
|
|
614
|
-
return null; // Identity storage is only available on native platforms
|
|
615
|
-
}
|
|
616
|
-
try {
|
|
617
|
-
const store = await initSecureStore();
|
|
618
|
-
return await store.getItemAsync(STORAGE_KEYS.PRIVATE_KEY);
|
|
619
|
-
} catch (error) {
|
|
620
|
-
// If secure store is not available, return null (no identity)
|
|
621
|
-
// This allows the app to continue functioning even if secure store fails to load
|
|
622
|
-
if (__DEV__) {
|
|
623
|
-
logger.warn('Failed to access secure store', {
|
|
624
|
-
component: 'KeyManager'
|
|
625
|
-
}, error);
|
|
626
|
-
}
|
|
627
|
-
return null;
|
|
628
|
-
}
|
|
629
|
-
}
|
|
630
|
-
|
|
631
|
-
/**
|
|
632
|
-
* Get the stored public key (cached for performance)
|
|
633
|
-
*/
|
|
634
|
-
static async getPublicKey() {
|
|
635
|
-
if (isWebPlatform()) {
|
|
636
|
-
return null; // Identity storage is only available on native platforms
|
|
637
|
-
}
|
|
638
|
-
if (KeyManager.cachedPublicKey !== null) {
|
|
639
|
-
return KeyManager.cachedPublicKey;
|
|
640
|
-
}
|
|
641
|
-
try {
|
|
642
|
-
const store = await initSecureStore();
|
|
643
|
-
const publicKey = await store.getItemAsync(STORAGE_KEYS.PUBLIC_KEY);
|
|
644
|
-
|
|
645
|
-
// Cache result (null is a valid cache value meaning no identity)
|
|
646
|
-
KeyManager.cachedPublicKey = publicKey;
|
|
647
|
-
return publicKey;
|
|
648
|
-
} catch (error) {
|
|
649
|
-
// If secure store is not available, return null (no identity)
|
|
650
|
-
// Cache null to avoid repeated failed attempts
|
|
651
|
-
KeyManager.cachedPublicKey = null;
|
|
652
|
-
if (__DEV__) {
|
|
653
|
-
logger.warn('Failed to access secure store', {
|
|
654
|
-
component: 'KeyManager'
|
|
655
|
-
}, error);
|
|
656
|
-
}
|
|
657
|
-
return null;
|
|
658
|
-
}
|
|
659
|
-
}
|
|
660
|
-
|
|
661
|
-
/**
|
|
662
|
-
* Check if an identity (key pair) exists on this device (cached for performance)
|
|
663
|
-
*/
|
|
664
|
-
static async hasIdentity() {
|
|
665
|
-
if (isWebPlatform()) {
|
|
666
|
-
return false; // Identity storage is only available on native platforms
|
|
667
|
-
}
|
|
668
|
-
if (KeyManager.cachedHasIdentity !== null) {
|
|
669
|
-
return KeyManager.cachedHasIdentity;
|
|
670
|
-
}
|
|
671
|
-
try {
|
|
672
|
-
const privateKey = await KeyManager.getPrivateKey();
|
|
673
|
-
const hasIdentity = privateKey !== null;
|
|
674
|
-
|
|
675
|
-
// Cache result
|
|
676
|
-
KeyManager.cachedHasIdentity = hasIdentity;
|
|
677
|
-
return hasIdentity;
|
|
678
|
-
} catch (error) {
|
|
679
|
-
// If we can't check, assume no identity (safer default)
|
|
680
|
-
// Cache false to avoid repeated failed attempts
|
|
681
|
-
KeyManager.cachedHasIdentity = false;
|
|
682
|
-
if (__DEV__) {
|
|
683
|
-
logger.warn('Failed to check identity', {
|
|
684
|
-
component: 'KeyManager'
|
|
685
|
-
}, error);
|
|
686
|
-
}
|
|
687
|
-
return false;
|
|
688
|
-
}
|
|
689
|
-
}
|
|
690
|
-
|
|
691
|
-
/**
|
|
692
|
-
* Delete the stored identity (both keys)
|
|
693
|
-
* Use with EXTREME caution - this is irreversible without a recovery phrase
|
|
694
|
-
* This should ONLY be called when explicitly requested by the user
|
|
695
|
-
* @param skipBackup - If true, skip backup before deletion (default: false)
|
|
696
|
-
* @param force - If true, skip confirmation checks (default: false)
|
|
697
|
-
* @param userConfirmed - If true, user has explicitly confirmed deletion (default: false)
|
|
698
|
-
*/
|
|
699
|
-
static async deleteIdentity(skipBackup = false, force = false, userConfirmed = false) {
|
|
700
|
-
if (isWebPlatform()) {
|
|
701
|
-
return; // Identity storage is only available on native platforms, nothing to delete
|
|
702
|
-
}
|
|
703
|
-
// CRITICAL SAFEGUARD: Require explicit user confirmation unless force is true
|
|
704
|
-
if (!force && !userConfirmed) {
|
|
705
|
-
throw new Error('Identity deletion requires explicit user confirmation. This is a safety measure to prevent accidental data loss.');
|
|
706
|
-
}
|
|
707
|
-
if (!force) {
|
|
708
|
-
const hasIdentity = await KeyManager.hasIdentity();
|
|
709
|
-
if (!hasIdentity) {
|
|
710
|
-
return; // Nothing to delete
|
|
711
|
-
}
|
|
712
|
-
}
|
|
713
|
-
const store = await initSecureStore();
|
|
714
|
-
|
|
715
|
-
// ALWAYS create backup before deletion unless explicitly skipped
|
|
716
|
-
if (!skipBackup) {
|
|
717
|
-
try {
|
|
718
|
-
const backupSuccess = await KeyManager.backupIdentity();
|
|
719
|
-
if (!backupSuccess && typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
720
|
-
logger.warn('Failed to backup identity before deletion - proceeding anyway', {
|
|
721
|
-
component: 'KeyManager'
|
|
722
|
-
});
|
|
723
|
-
}
|
|
724
|
-
} catch (backupError) {
|
|
725
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
726
|
-
logger.warn('Failed to backup identity before deletion', {
|
|
727
|
-
component: 'KeyManager'
|
|
728
|
-
}, backupError);
|
|
729
|
-
}
|
|
730
|
-
}
|
|
731
|
-
}
|
|
732
|
-
await store.deleteItemAsync(STORAGE_KEYS.PRIVATE_KEY);
|
|
733
|
-
await store.deleteItemAsync(STORAGE_KEYS.PUBLIC_KEY);
|
|
734
|
-
|
|
735
|
-
// Invalidate cache
|
|
736
|
-
KeyManager.invalidateCache();
|
|
737
|
-
|
|
738
|
-
// Also clear backup if force deletion
|
|
739
|
-
if (force) {
|
|
740
|
-
try {
|
|
741
|
-
await store.deleteItemAsync(STORAGE_KEYS.BACKUP_PRIVATE_KEY);
|
|
742
|
-
await store.deleteItemAsync(STORAGE_KEYS.BACKUP_PUBLIC_KEY);
|
|
743
|
-
await store.deleteItemAsync(STORAGE_KEYS.BACKUP_TIMESTAMP);
|
|
744
|
-
} catch (error) {
|
|
745
|
-
// Ignore backup deletion errors
|
|
746
|
-
}
|
|
747
|
-
}
|
|
748
|
-
}
|
|
749
|
-
|
|
750
|
-
/**
|
|
751
|
-
* Backup identity to SecureStore (separate backup storage)
|
|
752
|
-
* This provides a recovery mechanism if primary storage fails
|
|
753
|
-
*/
|
|
754
|
-
static async backupIdentity() {
|
|
755
|
-
if (isWebPlatform()) {
|
|
756
|
-
return false; // Identity storage is only available on native platforms
|
|
757
|
-
}
|
|
758
|
-
try {
|
|
759
|
-
const store = await initSecureStore();
|
|
760
|
-
const privateKey = await KeyManager.getPrivateKey();
|
|
761
|
-
const publicKey = await KeyManager.getPublicKey();
|
|
762
|
-
if (!privateKey || !publicKey) {
|
|
763
|
-
return false; // Nothing to backup
|
|
764
|
-
}
|
|
765
|
-
|
|
766
|
-
// Store backup in SecureStore (still secure, but separate from primary storage)
|
|
767
|
-
await store.setItemAsync(STORAGE_KEYS.BACKUP_PRIVATE_KEY, privateKey, {
|
|
768
|
-
keychainAccessible: store.WHEN_UNLOCKED_THIS_DEVICE_ONLY
|
|
769
|
-
});
|
|
770
|
-
await store.setItemAsync(STORAGE_KEYS.BACKUP_PUBLIC_KEY, publicKey);
|
|
771
|
-
await store.setItemAsync(STORAGE_KEYS.BACKUP_TIMESTAMP, Date.now().toString());
|
|
772
|
-
return true;
|
|
773
|
-
} catch (error) {
|
|
774
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
775
|
-
logger.error('Failed to backup identity', error, {
|
|
776
|
-
component: 'KeyManager'
|
|
777
|
-
});
|
|
778
|
-
}
|
|
779
|
-
return false;
|
|
780
|
-
}
|
|
781
|
-
}
|
|
782
|
-
|
|
783
|
-
/**
|
|
784
|
-
* Verify identity integrity - checks if keys are valid and accessible
|
|
785
|
-
*/
|
|
786
|
-
static async verifyIdentityIntegrity() {
|
|
787
|
-
if (isWebPlatform()) {
|
|
788
|
-
return false; // Identity storage is only available on native platforms
|
|
789
|
-
}
|
|
790
|
-
try {
|
|
791
|
-
const privateKey = await KeyManager.getPrivateKey();
|
|
792
|
-
const publicKey = await KeyManager.getPublicKey();
|
|
793
|
-
if (!privateKey || !publicKey) {
|
|
794
|
-
return false;
|
|
795
|
-
}
|
|
796
|
-
|
|
797
|
-
// Validate private key format
|
|
798
|
-
if (!KeyManager.isValidPrivateKey(privateKey)) {
|
|
799
|
-
return false;
|
|
800
|
-
}
|
|
801
|
-
|
|
802
|
-
// Validate public key format
|
|
803
|
-
if (!KeyManager.isValidPublicKey(publicKey)) {
|
|
804
|
-
return false;
|
|
805
|
-
}
|
|
806
|
-
|
|
807
|
-
// Verify public key can be derived from private key
|
|
808
|
-
const derivedPublicKey = KeyManager.derivePublicKey(privateKey);
|
|
809
|
-
if (derivedPublicKey !== publicKey) {
|
|
810
|
-
return false; // Keys don't match
|
|
811
|
-
}
|
|
812
|
-
|
|
813
|
-
// Verify we can create a key pair object (tests elliptic curve operations)
|
|
814
|
-
const keyPair = await KeyManager.getKeyPairObject();
|
|
815
|
-
if (!keyPair) {
|
|
816
|
-
return false;
|
|
817
|
-
}
|
|
818
|
-
return true;
|
|
819
|
-
} catch (error) {
|
|
820
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
821
|
-
logger.error('Identity integrity check failed', error, {
|
|
822
|
-
component: 'KeyManager'
|
|
823
|
-
});
|
|
824
|
-
}
|
|
825
|
-
return false;
|
|
826
|
-
}
|
|
827
|
-
}
|
|
828
|
-
|
|
829
|
-
/**
|
|
830
|
-
* Restore identity from backup if primary storage is corrupted
|
|
831
|
-
*/
|
|
832
|
-
static async restoreIdentityFromBackup() {
|
|
833
|
-
if (isWebPlatform()) {
|
|
834
|
-
return false; // Identity storage is only available on native platforms
|
|
835
|
-
}
|
|
836
|
-
try {
|
|
837
|
-
const store = await initSecureStore();
|
|
838
|
-
|
|
839
|
-
// Check if backup exists
|
|
840
|
-
const backupPrivateKey = await store.getItemAsync(STORAGE_KEYS.BACKUP_PRIVATE_KEY);
|
|
841
|
-
const backupPublicKey = await store.getItemAsync(STORAGE_KEYS.BACKUP_PUBLIC_KEY);
|
|
842
|
-
if (!backupPrivateKey || !backupPublicKey) {
|
|
843
|
-
return false; // No backup available
|
|
844
|
-
}
|
|
845
|
-
|
|
846
|
-
// Verify backup integrity
|
|
847
|
-
if (!KeyManager.isValidPrivateKey(backupPrivateKey)) {
|
|
848
|
-
return false;
|
|
849
|
-
}
|
|
850
|
-
if (!KeyManager.isValidPublicKey(backupPublicKey)) {
|
|
851
|
-
return false;
|
|
852
|
-
}
|
|
853
|
-
|
|
854
|
-
// Verify keys match
|
|
855
|
-
const derivedPublicKey = KeyManager.derivePublicKey(backupPrivateKey);
|
|
856
|
-
if (derivedPublicKey !== backupPublicKey) {
|
|
857
|
-
return false; // Backup keys don't match
|
|
858
|
-
}
|
|
859
|
-
await store.setItemAsync(STORAGE_KEYS.PRIVATE_KEY, backupPrivateKey, {
|
|
860
|
-
keychainAccessible: store.WHEN_UNLOCKED_THIS_DEVICE_ONLY
|
|
861
|
-
});
|
|
862
|
-
await store.setItemAsync(STORAGE_KEYS.PUBLIC_KEY, backupPublicKey);
|
|
863
|
-
const restored = await KeyManager.verifyIdentityIntegrity();
|
|
864
|
-
if (restored) {
|
|
865
|
-
// Update cache
|
|
866
|
-
KeyManager.cachedPublicKey = backupPublicKey;
|
|
867
|
-
KeyManager.cachedHasIdentity = true;
|
|
868
|
-
await store.setItemAsync(STORAGE_KEYS.BACKUP_TIMESTAMP, Date.now().toString());
|
|
869
|
-
return true;
|
|
870
|
-
}
|
|
871
|
-
return false;
|
|
872
|
-
} catch (error) {
|
|
873
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
874
|
-
logger.error('Failed to restore identity from backup', error, {
|
|
875
|
-
component: 'KeyManager'
|
|
876
|
-
});
|
|
877
|
-
}
|
|
878
|
-
return false;
|
|
879
|
-
}
|
|
880
|
-
}
|
|
881
|
-
|
|
882
|
-
/**
|
|
883
|
-
* Get the elliptic curve key object from the stored private key
|
|
884
|
-
* Used internally for signing operations
|
|
885
|
-
*/
|
|
886
|
-
static async getKeyPairObject() {
|
|
887
|
-
if (isWebPlatform()) {
|
|
888
|
-
return null; // Identity storage is only available on native platforms
|
|
889
|
-
}
|
|
890
|
-
const privateKey = await KeyManager.getPrivateKey();
|
|
891
|
-
if (!privateKey) return null;
|
|
892
|
-
return ec.keyFromPrivate(privateKey);
|
|
893
|
-
}
|
|
894
|
-
|
|
895
|
-
/**
|
|
896
|
-
* Derive public key from a private key (without storing)
|
|
897
|
-
*/
|
|
898
|
-
static derivePublicKey(privateKey) {
|
|
899
|
-
const keyPair = ec.keyFromPrivate(privateKey);
|
|
900
|
-
return keyPair.getPublic('hex');
|
|
901
|
-
}
|
|
902
|
-
|
|
903
|
-
/**
|
|
904
|
-
* Validate that a string is a valid public key
|
|
905
|
-
*/
|
|
906
|
-
static isValidPublicKey(publicKey) {
|
|
907
|
-
try {
|
|
908
|
-
ec.keyFromPublic(publicKey, 'hex');
|
|
909
|
-
return true;
|
|
910
|
-
} catch {
|
|
911
|
-
return false;
|
|
912
|
-
}
|
|
913
|
-
}
|
|
914
|
-
|
|
915
|
-
/**
|
|
916
|
-
* Validate that a string is a valid private key
|
|
917
|
-
*/
|
|
918
|
-
static isValidPrivateKey(privateKey) {
|
|
919
|
-
try {
|
|
920
|
-
const keyPair = ec.keyFromPrivate(privateKey);
|
|
921
|
-
// Verify it can derive a public key
|
|
922
|
-
keyPair.getPublic('hex');
|
|
923
|
-
return true;
|
|
924
|
-
} catch {
|
|
925
|
-
return false;
|
|
926
|
-
}
|
|
927
|
-
}
|
|
928
|
-
|
|
929
|
-
/**
|
|
930
|
-
* Get a shortened version of the public key for display
|
|
931
|
-
* Format: first 8 chars...last 8 chars
|
|
932
|
-
*/
|
|
933
|
-
static shortenPublicKey(publicKey) {
|
|
934
|
-
if (publicKey.length <= 20) return publicKey;
|
|
935
|
-
return `${publicKey.slice(0, 8)}...${publicKey.slice(-8)}`;
|
|
936
|
-
}
|
|
937
|
-
}
|
|
938
|
-
export default KeyManager;
|
|
939
|
-
//# sourceMappingURL=keyManager.js.map
|