@oxyhq/services 5.16.44 → 5.17.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 +29 -10
- package/lib/commonjs/core/OxyServices.js +1 -1
- package/lib/commonjs/core/index.js +20 -15
- package/lib/commonjs/core/index.js.map +1 -1
- package/lib/commonjs/core/mixins/OxyServices.auth.js +36 -53
- package/lib/commonjs/core/mixins/OxyServices.auth.js.map +1 -1
- package/lib/commonjs/core/mixins/OxyServices.user.js +10 -17
- package/lib/commonjs/core/mixins/OxyServices.user.js.map +1 -1
- package/lib/commonjs/core/services/TokenService.js +27 -13
- package/lib/commonjs/core/services/TokenService.js.map +1 -1
- package/lib/commonjs/crypto/index.js +0 -16
- package/lib/commonjs/crypto/index.js.map +1 -1
- package/lib/commonjs/crypto/keyManager.js +21 -22
- package/lib/commonjs/crypto/keyManager.js.map +1 -1
- package/lib/commonjs/crypto/polyfill.js +1 -10
- package/lib/commonjs/crypto/polyfill.js.map +1 -1
- package/lib/commonjs/crypto/signatureService.js +18 -32
- package/lib/commonjs/crypto/signatureService.js.map +1 -1
- package/lib/commonjs/index.js +13 -134
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/models/interfaces.js +0 -7
- package/lib/commonjs/models/interfaces.js.map +1 -1
- package/lib/commonjs/node/index.js +1 -10
- package/lib/commonjs/node/index.js.map +1 -1
- package/lib/commonjs/ui/components/BottomSheetRouter.js +1 -9
- package/lib/commonjs/ui/components/BottomSheetRouter.js.map +1 -1
- package/lib/commonjs/ui/context/OxyContext.js +779 -450
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js +551 -0
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -0
- package/lib/commonjs/ui/context/hooks/useDeviceManagement.js +73 -0
- package/lib/commonjs/ui/context/hooks/useDeviceManagement.js.map +1 -0
- package/lib/commonjs/ui/context/hooks/useStorage.js +79 -0
- package/lib/commonjs/ui/context/hooks/useStorage.js.map +1 -0
- package/lib/commonjs/ui/hooks/index.js +0 -20
- package/lib/commonjs/ui/hooks/index.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/index.js +0 -12
- package/lib/commonjs/ui/hooks/mutations/index.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +23 -74
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/index.js +0 -12
- package/lib/commonjs/ui/hooks/queries/index.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/queryKeys.js +1 -3
- package/lib/commonjs/ui/hooks/queries/queryKeys.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +28 -64
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +6 -4
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/useDeviceManagement.js +73 -0
- package/lib/commonjs/ui/hooks/useDeviceManagement.js.map +1 -0
- package/lib/commonjs/ui/hooks/useProfileEditing.js +5 -3
- package/lib/commonjs/ui/hooks/useProfileEditing.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionManagement.js +284 -0
- package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -0
- package/lib/commonjs/ui/index.js +2 -10
- package/lib/commonjs/ui/index.js.map +1 -1
- package/lib/commonjs/ui/navigation/routes.js +1 -5
- package/lib/commonjs/ui/navigation/routes.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountCenterScreen.js +4 -9
- package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js +19 -37
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +5 -5
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/OxyAuthScreen.js +15 -2
- package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +97 -76
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ProfileScreen.js +6 -6
- package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/commonjs/ui/stores/authStore.js +6 -54
- package/lib/commonjs/ui/stores/authStore.js.map +1 -1
- package/lib/commonjs/ui/styles/spacing.js +2 -54
- package/lib/commonjs/ui/styles/spacing.js.map +1 -1
- package/lib/commonjs/ui/utils/avatarUtils.js +12 -9
- package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
- package/lib/commonjs/ui/utils/sessionHelpers.js +1 -7
- package/lib/commonjs/ui/utils/sessionHelpers.js.map +1 -1
- package/lib/commonjs/utils/deviceManager.js +177 -0
- package/lib/commonjs/utils/deviceManager.js.map +1 -0
- package/lib/commonjs/utils/errorUtils.js +0 -13
- package/lib/commonjs/utils/errorUtils.js.map +1 -1
- package/lib/commonjs/utils/index.js +7 -0
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/commonjs/utils/sessionUtils.js +1 -8
- package/lib/commonjs/utils/sessionUtils.js.map +1 -1
- package/lib/commonjs/utils/validationUtils.js +1 -15
- package/lib/commonjs/utils/validationUtils.js.map +1 -1
- package/lib/module/core/OxyServices.js +1 -1
- package/lib/module/core/index.js +4 -6
- package/lib/module/core/index.js.map +1 -1
- package/lib/module/core/mixins/OxyServices.auth.js +36 -53
- package/lib/module/core/mixins/OxyServices.auth.js.map +1 -1
- package/lib/module/core/mixins/OxyServices.user.js +10 -17
- package/lib/module/core/mixins/OxyServices.user.js.map +1 -1
- package/lib/module/core/services/TokenService.js +27 -13
- package/lib/module/core/services/TokenService.js.map +1 -1
- package/lib/module/crypto/index.js +0 -3
- package/lib/module/crypto/index.js.map +1 -1
- package/lib/module/crypto/keyManager.js +21 -22
- package/lib/module/crypto/keyManager.js.map +1 -1
- package/lib/module/crypto/polyfill.js +1 -2
- package/lib/module/crypto/polyfill.js.map +1 -1
- package/lib/module/crypto/signatureService.js +18 -32
- package/lib/module/crypto/signatureService.js.map +1 -1
- package/lib/module/index.js +7 -19
- package/lib/module/index.js.map +1 -1
- package/lib/module/models/interfaces.js +0 -7
- package/lib/module/models/interfaces.js.map +1 -1
- package/lib/module/node/index.js +0 -3
- package/lib/module/node/index.js.map +1 -1
- package/lib/module/ui/components/BottomSheetRouter.js +2 -6
- package/lib/module/ui/components/BottomSheetRouter.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +779 -450
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/context/hooks/useAuthOperations.js +545 -0
- package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -0
- package/lib/module/ui/context/hooks/useDeviceManagement.js +68 -0
- package/lib/module/ui/context/hooks/useDeviceManagement.js.map +1 -0
- package/lib/module/ui/context/hooks/useStorage.js +74 -0
- package/lib/module/ui/context/hooks/useStorage.js.map +1 -0
- package/lib/module/ui/hooks/index.js +0 -1
- package/lib/module/ui/hooks/index.js.map +1 -1
- package/lib/module/ui/hooks/mutations/index.js +1 -1
- package/lib/module/ui/hooks/mutations/index.js.map +1 -1
- package/lib/module/ui/hooks/mutations/useAccountMutations.js +21 -71
- package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/module/ui/hooks/queries/index.js +1 -1
- package/lib/module/ui/hooks/queries/index.js.map +1 -1
- package/lib/module/ui/hooks/queries/queryKeys.js +1 -3
- package/lib/module/ui/hooks/queries/queryKeys.js.map +1 -1
- package/lib/module/ui/hooks/queries/useAccountQueries.js +27 -61
- package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/useServicesQueries.js +6 -4
- package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/module/ui/hooks/useDeviceManagement.js +68 -0
- package/lib/module/ui/hooks/useDeviceManagement.js.map +1 -0
- package/lib/module/ui/hooks/useProfileEditing.js +5 -3
- package/lib/module/ui/hooks/useProfileEditing.js.map +1 -1
- package/lib/module/ui/hooks/useSessionManagement.js +279 -0
- package/lib/module/ui/hooks/useSessionManagement.js.map +1 -0
- package/lib/module/ui/index.js +1 -2
- package/lib/module/ui/index.js.map +1 -1
- package/lib/module/ui/navigation/routes.js +1 -5
- package/lib/module/ui/navigation/routes.js.map +1 -1
- package/lib/module/ui/screens/AccountCenterScreen.js +4 -9
- package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
- package/lib/module/ui/screens/AccountSettingsScreen.js +19 -37
- package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/AccountSwitcherScreen.js +5 -5
- package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
- package/lib/module/ui/screens/OxyAuthScreen.js +15 -2
- package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
- package/lib/module/ui/screens/PrivacySettingsScreen.js +98 -77
- package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/ProfileScreen.js +6 -6
- package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/module/ui/stores/authStore.js +6 -54
- package/lib/module/ui/stores/authStore.js.map +1 -1
- package/lib/module/ui/styles/spacing.js +2 -6
- package/lib/module/ui/styles/spacing.js.map +1 -1
- package/lib/module/ui/utils/avatarUtils.js +12 -9
- package/lib/module/ui/utils/avatarUtils.js.map +1 -1
- package/lib/module/ui/utils/sessionHelpers.js +1 -7
- package/lib/module/ui/utils/sessionHelpers.js.map +1 -1
- package/lib/module/utils/deviceManager.js +171 -0
- package/lib/module/utils/deviceManager.js.map +1 -0
- package/lib/module/utils/errorUtils.js +0 -7
- package/lib/module/utils/errorUtils.js.map +1 -1
- package/lib/module/utils/index.js +1 -2
- package/lib/module/utils/index.js.map +1 -1
- package/lib/module/utils/sessionUtils.js +1 -8
- package/lib/module/utils/sessionUtils.js.map +1 -1
- package/lib/module/utils/validationUtils.js +0 -13
- package/lib/module/utils/validationUtils.js.map +1 -1
- package/lib/typescript/core/OxyServices.d.ts +1 -1
- package/lib/typescript/core/index.d.ts +3 -3
- package/lib/typescript/core/index.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.auth.d.ts +21 -44
- package/lib/typescript/core/mixins/OxyServices.auth.d.ts.map +1 -1
- package/lib/typescript/core/mixins/OxyServices.user.d.ts +1 -0
- package/lib/typescript/core/mixins/OxyServices.user.d.ts.map +1 -1
- package/lib/typescript/core/mixins/index.d.ts +8 -15
- package/lib/typescript/core/mixins/index.d.ts.map +1 -1
- package/lib/typescript/core/services/TokenService.d.ts.map +1 -1
- package/lib/typescript/crypto/index.d.ts +0 -1
- package/lib/typescript/crypto/index.d.ts.map +1 -1
- package/lib/typescript/crypto/keyManager.d.ts +2 -15
- package/lib/typescript/crypto/keyManager.d.ts.map +1 -1
- package/lib/typescript/crypto/polyfill.d.ts +1 -2
- package/lib/typescript/crypto/polyfill.d.ts.map +1 -1
- package/lib/typescript/crypto/signatureService.d.ts +0 -13
- package/lib/typescript/crypto/signatureService.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +7 -12
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/models/interfaces.d.ts +36 -5
- package/lib/typescript/models/interfaces.d.ts.map +1 -1
- package/lib/typescript/models/session.d.ts +18 -3
- package/lib/typescript/models/session.d.ts.map +1 -1
- package/lib/typescript/node/index.d.ts +0 -1
- package/lib/typescript/node/index.d.ts.map +1 -1
- package/lib/typescript/ui/components/BottomSheetRouter.d.ts +0 -5
- package/lib/typescript/ui/components/BottomSheetRouter.d.ts.map +1 -1
- package/lib/typescript/ui/components/TextField/Addons/Outline.d.ts +2 -2
- package/lib/typescript/ui/components/TextField/helpers.d.ts +2 -2
- package/lib/typescript/ui/components/TextField/types.d.ts +0 -1
- package/lib/typescript/ui/components/TextField/types.d.ts.map +1 -1
- package/lib/typescript/ui/context/OxyContext.d.ts +28 -5
- package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts +59 -0
- package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts.map +1 -0
- package/lib/typescript/ui/context/hooks/useDeviceManagement.d.ts +27 -0
- package/lib/typescript/ui/context/hooks/useDeviceManagement.d.ts.map +1 -0
- package/lib/typescript/ui/context/hooks/useStorage.d.ts +22 -0
- package/lib/typescript/ui/context/hooks/useStorage.d.ts.map +1 -0
- package/lib/typescript/ui/hooks/index.d.ts +0 -1
- package/lib/typescript/ui/hooks/index.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/mutations/index.d.ts +1 -1
- package/lib/typescript/ui/hooks/mutations/index.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts +8 -19
- package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/mutations/useServicesMutations.d.ts +1 -1
- package/lib/typescript/ui/hooks/mutations/useServicesMutations.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/queries/index.d.ts +1 -1
- package/lib/typescript/ui/hooks/queries/index.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/queries/queryKeys.d.ts +0 -2
- package/lib/typescript/ui/hooks/queries/queryKeys.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts +5 -17
- package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/useDeviceManagement.d.ts +27 -0
- package/lib/typescript/ui/hooks/useDeviceManagement.d.ts.map +1 -0
- package/lib/typescript/ui/hooks/useProfileEditing.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/useSessionManagement.d.ts +41 -0
- package/lib/typescript/ui/hooks/useSessionManagement.d.ts.map +1 -0
- package/lib/typescript/ui/index.d.ts +0 -1
- package/lib/typescript/ui/index.d.ts.map +1 -1
- package/lib/typescript/ui/navigation/routes.d.ts +1 -1
- package/lib/typescript/ui/navigation/routes.d.ts.map +1 -1
- package/lib/typescript/ui/screens/AccountCenterScreen.d.ts.map +1 -1
- package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/ui/screens/OxyAuthScreen.d.ts.map +1 -1
- package/lib/typescript/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
- package/lib/typescript/ui/stores/authStore.d.ts +1 -8
- package/lib/typescript/ui/stores/authStore.d.ts.map +1 -1
- package/lib/typescript/ui/styles/spacing.d.ts +0 -5
- package/lib/typescript/ui/styles/spacing.d.ts.map +1 -1
- package/lib/typescript/ui/utils/avatarUtils.d.ts +4 -1
- package/lib/typescript/ui/utils/avatarUtils.d.ts.map +1 -1
- package/lib/typescript/ui/utils/sessionHelpers.d.ts +0 -1
- package/lib/typescript/ui/utils/sessionHelpers.d.ts.map +1 -1
- package/lib/typescript/utils/deviceManager.d.ts +66 -0
- package/lib/typescript/utils/deviceManager.d.ts.map +1 -0
- package/lib/typescript/utils/errorUtils.d.ts +0 -6
- package/lib/typescript/utils/errorUtils.d.ts.map +1 -1
- package/lib/typescript/utils/index.d.ts +2 -0
- package/lib/typescript/utils/index.d.ts.map +1 -1
- package/lib/typescript/utils/sessionUtils.d.ts.map +1 -1
- package/lib/typescript/utils/validationUtils.d.ts +0 -8
- package/lib/typescript/utils/validationUtils.d.ts.map +1 -1
- package/package.json +1 -6
- package/src/core/OxyServices.ts +1 -1
- package/src/core/index.ts +5 -8
- package/src/core/mixins/OxyServices.auth.ts +44 -87
- package/src/core/mixins/OxyServices.user.ts +10 -18
- package/src/core/services/TokenService.ts +27 -16
- package/src/crypto/index.ts +1 -3
- package/src/crypto/keyManager.ts +21 -30
- package/src/crypto/polyfill.ts +1 -2
- package/src/crypto/signatureService.ts +19 -43
- package/src/index.ts +6 -41
- package/src/models/interfaces.ts +39 -12
- package/src/models/session.ts +19 -7
- package/src/node/index.ts +0 -3
- package/src/ui/components/BottomSheetRouter.tsx +1 -6
- package/src/ui/components/TextField/Addons/Outline.tsx +2 -2
- package/src/ui/components/TextField/helpers.tsx +2 -2
- package/src/ui/components/TextField/types.tsx +1 -1
- package/src/ui/context/OxyContext.tsx +831 -463
- package/src/ui/context/hooks/useAuthOperations.ts +620 -0
- package/src/ui/context/hooks/useDeviceManagement.ts +108 -0
- package/src/ui/context/hooks/useStorage.ts +104 -0
- package/src/ui/hooks/index.ts +1 -2
- package/src/ui/hooks/mutations/index.ts +0 -2
- package/src/ui/hooks/mutations/useAccountMutations.ts +20 -66
- package/src/ui/hooks/queries/index.ts +0 -2
- package/src/ui/hooks/queries/queryKeys.ts +0 -2
- package/src/ui/hooks/queries/useAccountQueries.ts +19 -53
- package/src/ui/hooks/queries/useServicesQueries.ts +5 -5
- package/src/ui/hooks/useDeviceManagement.ts +108 -0
- package/src/ui/hooks/useProfileEditing.ts +3 -3
- package/src/ui/hooks/useSessionManagement.ts +405 -0
- package/src/ui/index.ts +1 -2
- package/src/ui/navigation/routes.ts +2 -6
- package/src/ui/screens/AccountCenterScreen.tsx +4 -9
- package/src/ui/screens/AccountSettingsScreen.tsx +31 -49
- package/src/ui/screens/AccountSwitcherScreen.tsx +5 -5
- package/src/ui/screens/OxyAuthScreen.tsx +19 -4
- package/src/ui/screens/PrivacySettingsScreen.tsx +101 -67
- package/src/ui/screens/ProfileScreen.tsx +10 -10
- package/src/ui/stores/authStore.ts +8 -48
- package/src/ui/styles/spacing.ts +2 -15
- package/src/ui/utils/avatarUtils.ts +21 -19
- package/src/ui/utils/sessionHelpers.ts +0 -7
- package/src/utils/__tests__/validationUtils.test.ts +1 -16
- package/src/utils/deviceManager.ts +198 -0
- package/src/utils/errorUtils.ts +1 -8
- package/src/utils/index.ts +2 -1
- package/src/utils/sessionUtils.ts +0 -8
- package/src/utils/validationUtils.ts +0 -12
- package/lib/commonjs/adapters/expo/crypto.js +0 -56
- package/lib/commonjs/adapters/expo/crypto.js.map +0 -1
- package/lib/commonjs/adapters/expo/fetch.js +0 -30
- package/lib/commonjs/adapters/expo/fetch.js.map +0 -1
- package/lib/commonjs/adapters/expo/index.js +0 -48
- package/lib/commonjs/adapters/expo/index.js.map +0 -1
- package/lib/commonjs/adapters/expo/storage.js +0 -201
- package/lib/commonjs/adapters/expo/storage.js.map +0 -1
- package/lib/commonjs/adapters/index.js +0 -48
- package/lib/commonjs/adapters/index.js.map +0 -1
- package/lib/commonjs/adapters/node/crypto.js +0 -40
- package/lib/commonjs/adapters/node/crypto.js.map +0 -1
- package/lib/commonjs/adapters/node/fetch.js +0 -62
- package/lib/commonjs/adapters/node/fetch.js.map +0 -1
- package/lib/commonjs/adapters/node/index.js +0 -34
- package/lib/commonjs/adapters/node/index.js.map +0 -1
- package/lib/commonjs/adapters/node/storage.js +0 -163
- package/lib/commonjs/adapters/node/storage.js.map +0 -1
- package/lib/commonjs/core/identity-session/DeviceManager.js +0 -237
- package/lib/commonjs/core/identity-session/DeviceManager.js.map +0 -1
- package/lib/commonjs/core/identity-session/INTEGRATION_GUIDE.md +0 -287
- package/lib/commonjs/core/identity-session/IdentityManager.js +0 -400
- package/lib/commonjs/core/identity-session/IdentityManager.js.map +0 -1
- package/lib/commonjs/core/identity-session/IdentitySessionCore.js +0 -394
- package/lib/commonjs/core/identity-session/IdentitySessionCore.js.map +0 -1
- package/lib/commonjs/core/identity-session/RefreshManager.js +0 -137
- package/lib/commonjs/core/identity-session/RefreshManager.js.map +0 -1
- package/lib/commonjs/core/identity-session/SessionManager.js +0 -427
- package/lib/commonjs/core/identity-session/SessionManager.js.map +0 -1
- package/lib/commonjs/core/identity-session/createIdentitySessionCore.js +0 -24
- package/lib/commonjs/core/identity-session/createIdentitySessionCore.js.map +0 -1
- package/lib/commonjs/core/identity-session/errors.js +0 -176
- package/lib/commonjs/core/identity-session/errors.js.map +0 -1
- package/lib/commonjs/core/identity-session/index.js +0 -80
- package/lib/commonjs/core/identity-session/index.js.map +0 -1
- package/lib/commonjs/core/identity-session/types.js +0 -2
- package/lib/commonjs/core/identity-session/types.js.map +0 -1
- package/lib/commonjs/crypto/README.md +0 -142
- package/lib/commonjs/crypto/core.js +0 -147
- package/lib/commonjs/crypto/core.js.map +0 -1
- package/lib/commonjs/node/signatureService.js +0 -107
- package/lib/commonjs/node/signatureService.js.map +0 -1
- package/lib/commonjs/ui/hooks/auth/index.js +0 -37
- package/lib/commonjs/ui/hooks/auth/index.js.map +0 -1
- package/lib/commonjs/ui/hooks/auth/useUsernameValidation.js +0 -171
- package/lib/commonjs/ui/hooks/auth/useUsernameValidation.js.map +0 -1
- package/lib/commonjs/ui/hooks/useAvatarPicker.js +0 -52
- package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +0 -1
- package/lib/commonjs/ui/hooks/useIdentityTransfer.js +0 -125
- package/lib/commonjs/ui/hooks/useIdentityTransfer.js.map +0 -1
- package/lib/commonjs/ui/hooks/useTransferCodesPersistence.js +0 -81
- package/lib/commonjs/ui/hooks/useTransferCodesPersistence.js.map +0 -1
- package/lib/commonjs/ui/hooks/useTransferQueries.js +0 -85
- package/lib/commonjs/ui/hooks/useTransferQueries.js.map +0 -1
- package/lib/commonjs/ui/stores/transferStore.js +0 -157
- package/lib/commonjs/ui/stores/transferStore.js.map +0 -1
- package/lib/module/adapters/expo/crypto.js +0 -51
- package/lib/module/adapters/expo/crypto.js.map +0 -1
- package/lib/module/adapters/expo/fetch.js +0 -26
- package/lib/module/adapters/expo/fetch.js.map +0 -1
- package/lib/module/adapters/expo/index.js +0 -45
- package/lib/module/adapters/expo/index.js.map +0 -1
- package/lib/module/adapters/expo/storage.js +0 -198
- package/lib/module/adapters/expo/storage.js.map +0 -1
- package/lib/module/adapters/index.js +0 -45
- package/lib/module/adapters/index.js.map +0 -1
- package/lib/module/adapters/node/crypto.js +0 -36
- package/lib/module/adapters/node/crypto.js.map +0 -1
- package/lib/module/adapters/node/fetch.js +0 -57
- package/lib/module/adapters/node/fetch.js.map +0 -1
- package/lib/module/adapters/node/index.js +0 -31
- package/lib/module/adapters/node/index.js.map +0 -1
- package/lib/module/adapters/node/storage.js +0 -159
- package/lib/module/adapters/node/storage.js.map +0 -1
- package/lib/module/core/identity-session/DeviceManager.js +0 -232
- package/lib/module/core/identity-session/DeviceManager.js.map +0 -1
- package/lib/module/core/identity-session/INTEGRATION_GUIDE.md +0 -287
- package/lib/module/core/identity-session/IdentityManager.js +0 -395
- package/lib/module/core/identity-session/IdentityManager.js.map +0 -1
- package/lib/module/core/identity-session/IdentitySessionCore.js +0 -390
- package/lib/module/core/identity-session/IdentitySessionCore.js.map +0 -1
- package/lib/module/core/identity-session/RefreshManager.js +0 -132
- package/lib/module/core/identity-session/RefreshManager.js.map +0 -1
- package/lib/module/core/identity-session/SessionManager.js +0 -422
- package/lib/module/core/identity-session/SessionManager.js.map +0 -1
- package/lib/module/core/identity-session/createIdentitySessionCore.js +0 -21
- package/lib/module/core/identity-session/createIdentitySessionCore.js.map +0 -1
- package/lib/module/core/identity-session/errors.js +0 -170
- package/lib/module/core/identity-session/errors.js.map +0 -1
- package/lib/module/core/identity-session/index.js +0 -17
- package/lib/module/core/identity-session/index.js.map +0 -1
- package/lib/module/core/identity-session/types.js +0 -2
- package/lib/module/core/identity-session/types.js.map +0 -1
- package/lib/module/crypto/README.md +0 -142
- package/lib/module/crypto/core.js +0 -133
- package/lib/module/crypto/core.js.map +0 -1
- package/lib/module/node/signatureService.js +0 -101
- package/lib/module/node/signatureService.js.map +0 -1
- package/lib/module/ui/hooks/auth/index.js +0 -7
- package/lib/module/ui/hooks/auth/index.js.map +0 -1
- package/lib/module/ui/hooks/auth/useUsernameValidation.js +0 -167
- package/lib/module/ui/hooks/auth/useUsernameValidation.js.map +0 -1
- package/lib/module/ui/hooks/useAvatarPicker.js +0 -48
- package/lib/module/ui/hooks/useAvatarPicker.js.map +0 -1
- package/lib/module/ui/hooks/useIdentityTransfer.js +0 -121
- package/lib/module/ui/hooks/useIdentityTransfer.js.map +0 -1
- package/lib/module/ui/hooks/useTransferCodesPersistence.js +0 -77
- package/lib/module/ui/hooks/useTransferCodesPersistence.js.map +0 -1
- package/lib/module/ui/hooks/useTransferQueries.js +0 -80
- package/lib/module/ui/hooks/useTransferQueries.js.map +0 -1
- package/lib/module/ui/stores/transferStore.js +0 -152
- package/lib/module/ui/stores/transferStore.js.map +0 -1
- package/lib/typescript/adapters/expo/crypto.d.ts +0 -17
- package/lib/typescript/adapters/expo/crypto.d.ts.map +0 -1
- package/lib/typescript/adapters/expo/fetch.d.ts +0 -16
- package/lib/typescript/adapters/expo/fetch.d.ts.map +0 -1
- package/lib/typescript/adapters/expo/index.d.ts +0 -23
- package/lib/typescript/adapters/expo/index.d.ts.map +0 -1
- package/lib/typescript/adapters/expo/storage.d.ts +0 -23
- package/lib/typescript/adapters/expo/storage.d.ts.map +0 -1
- package/lib/typescript/adapters/index.d.ts +0 -17
- package/lib/typescript/adapters/index.d.ts.map +0 -1
- package/lib/typescript/adapters/node/crypto.d.ts +0 -17
- package/lib/typescript/adapters/node/crypto.d.ts.map +0 -1
- package/lib/typescript/adapters/node/fetch.d.ts +0 -16
- package/lib/typescript/adapters/node/fetch.d.ts.map +0 -1
- package/lib/typescript/adapters/node/index.d.ts +0 -23
- package/lib/typescript/adapters/node/index.d.ts.map +0 -1
- package/lib/typescript/adapters/node/storage.d.ts +0 -23
- package/lib/typescript/adapters/node/storage.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/DeviceManager.d.ts +0 -64
- package/lib/typescript/core/identity-session/DeviceManager.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/IdentityManager.d.ts +0 -88
- package/lib/typescript/core/identity-session/IdentityManager.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/IdentitySessionCore.d.ts +0 -141
- package/lib/typescript/core/identity-session/IdentitySessionCore.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/RefreshManager.d.ts +0 -36
- package/lib/typescript/core/identity-session/RefreshManager.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/SessionManager.d.ts +0 -104
- package/lib/typescript/core/identity-session/SessionManager.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/createIdentitySessionCore.d.ts +0 -11
- package/lib/typescript/core/identity-session/createIdentitySessionCore.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/errors.d.ts +0 -63
- package/lib/typescript/core/identity-session/errors.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/index.d.ts +0 -14
- package/lib/typescript/core/identity-session/index.d.ts.map +0 -1
- package/lib/typescript/core/identity-session/types.d.ts +0 -196
- package/lib/typescript/core/identity-session/types.d.ts.map +0 -1
- package/lib/typescript/crypto/core.d.ts +0 -56
- package/lib/typescript/crypto/core.d.ts.map +0 -1
- package/lib/typescript/node/signatureService.d.ts +0 -55
- package/lib/typescript/node/signatureService.d.ts.map +0 -1
- package/lib/typescript/ui/hooks/auth/index.d.ts +0 -6
- package/lib/typescript/ui/hooks/auth/index.d.ts.map +0 -1
- package/lib/typescript/ui/hooks/auth/useUsernameValidation.d.ts +0 -32
- package/lib/typescript/ui/hooks/auth/useUsernameValidation.d.ts.map +0 -1
- package/lib/typescript/ui/hooks/useAvatarPicker.d.ts +0 -18
- package/lib/typescript/ui/hooks/useAvatarPicker.d.ts.map +0 -1
- package/lib/typescript/ui/hooks/useIdentityTransfer.d.ts +0 -24
- package/lib/typescript/ui/hooks/useIdentityTransfer.d.ts.map +0 -1
- package/lib/typescript/ui/hooks/useTransferCodesPersistence.d.ts +0 -6
- package/lib/typescript/ui/hooks/useTransferCodesPersistence.d.ts.map +0 -1
- package/lib/typescript/ui/hooks/useTransferQueries.d.ts +0 -26
- package/lib/typescript/ui/hooks/useTransferQueries.d.ts.map +0 -1
- package/lib/typescript/ui/stores/transferStore.d.ts +0 -36
- package/lib/typescript/ui/stores/transferStore.d.ts.map +0 -1
- package/src/adapters/expo/crypto.ts +0 -55
- package/src/adapters/expo/fetch.ts +0 -28
- package/src/adapters/expo/index.ts +0 -51
- package/src/adapters/expo/storage.ts +0 -228
- package/src/adapters/index.ts +0 -48
- package/src/adapters/node/crypto.ts +0 -39
- package/src/adapters/node/fetch.ts +0 -59
- package/src/adapters/node/index.ts +0 -37
- package/src/adapters/node/storage.ts +0 -170
- package/src/core/identity-session/DeviceManager.ts +0 -273
- package/src/core/identity-session/INTEGRATION_GUIDE.md +0 -287
- package/src/core/identity-session/IdentityManager.ts +0 -474
- package/src/core/identity-session/IdentitySessionCore.ts +0 -464
- package/src/core/identity-session/RefreshManager.ts +0 -189
- package/src/core/identity-session/SessionManager.ts +0 -500
- package/src/core/identity-session/createIdentitySessionCore.ts +0 -19
- package/src/core/identity-session/errors.ts +0 -197
- package/src/core/identity-session/index.ts +0 -15
- package/src/core/identity-session/types.ts +0 -188
- package/src/crypto/README.md +0 -142
- package/src/crypto/__tests__/core.test.ts +0 -203
- package/src/crypto/core.ts +0 -142
- package/src/node/signatureService.ts +0 -126
- package/src/ui/hooks/auth/index.ts +0 -9
- package/src/ui/hooks/auth/useUsernameValidation.ts +0 -177
- package/src/ui/hooks/useAvatarPicker.ts +0 -62
- package/src/ui/hooks/useIdentityTransfer.ts +0 -135
- package/src/ui/hooks/useTransferCodesPersistence.ts +0 -80
- package/src/ui/hooks/useTransferQueries.ts +0 -102
- package/src/ui/stores/transferStore.ts +0 -201
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["require","_keyManager","_signatureService"
|
|
1
|
+
{"version":3,"names":["require","_keyManager","_signatureService"],"sourceRoot":"../../../src","sources":["crypto/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAQAA,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA","ignoreList":[]}
|
|
@@ -4,30 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.KeyManager = void 0;
|
|
7
|
+
var _elliptic = require("elliptic");
|
|
7
8
|
var _reactNative = require("react-native");
|
|
8
|
-
var _core = require("./core");
|
|
9
9
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } /**
|
|
10
10
|
* Key Manager - ECDSA secp256k1 Key Generation and Storage
|
|
11
11
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* This module handles secure generation, storage, and retrieval of cryptographic keys.
|
|
12
|
+
* Handles secure generation, storage, and retrieval of cryptographic keys.
|
|
15
13
|
* Private keys are stored securely using expo-secure-store and never leave the device.
|
|
16
|
-
*
|
|
17
|
-
* **IMPORTANT**: Third-party apps should NOT use KeyManager directly.
|
|
18
|
-
* Instead, use the OxyServices authentication flows which communicate with the
|
|
19
|
-
* Oxy Accounts app via deep links/QR codes to obtain user authorization.
|
|
20
|
-
*
|
|
21
|
-
* The Oxy Accounts app is the sole owner of the user's private key and identity.
|
|
22
|
-
* Other apps request authentication from the Accounts app, which signs challenges
|
|
23
|
-
* and returns authorization to the requesting app via the API.
|
|
24
|
-
*
|
|
25
|
-
* @see {@link https://github.com/OxyHQ/OxyHQServices/blob/main/packages/services/src/crypto/README.md|Crypto Module Documentation}
|
|
26
14
|
*/
|
|
27
15
|
// Lazy imports for React Native specific modules
|
|
28
16
|
let SecureStore = null;
|
|
29
17
|
let ExpoCrypto = null;
|
|
30
|
-
const ec =
|
|
18
|
+
const ec = new _elliptic.ec('secp256k1');
|
|
31
19
|
const STORAGE_KEYS = {
|
|
32
20
|
PRIVATE_KEY: 'oxy_identity_private_key',
|
|
33
21
|
PUBLIC_KEY: 'oxy_identity_public_key',
|
|
@@ -128,7 +116,6 @@ class KeyManager {
|
|
|
128
116
|
/**
|
|
129
117
|
* Invalidate cached identity state
|
|
130
118
|
* Called internally when identity is created/deleted/imported
|
|
131
|
-
* Can also be called externally to force a fresh state check (e.g., on app startup)
|
|
132
119
|
*/
|
|
133
120
|
static invalidateCache() {
|
|
134
121
|
KeyManager.cachedPublicKey = null;
|
|
@@ -420,8 +407,6 @@ class KeyManager {
|
|
|
420
407
|
return false; // Identity storage is only available on native platforms
|
|
421
408
|
}
|
|
422
409
|
try {
|
|
423
|
-
// Invalidate cache before restoring to ensure fresh state
|
|
424
|
-
KeyManager.invalidateCache();
|
|
425
410
|
const store = await initSecureStore();
|
|
426
411
|
|
|
427
412
|
// Check if backup exists
|
|
@@ -482,21 +467,34 @@ class KeyManager {
|
|
|
482
467
|
* Derive public key from a private key (without storing)
|
|
483
468
|
*/
|
|
484
469
|
static derivePublicKey(privateKey) {
|
|
485
|
-
|
|
470
|
+
const keyPair = ec.keyFromPrivate(privateKey);
|
|
471
|
+
return keyPair.getPublic('hex');
|
|
486
472
|
}
|
|
487
473
|
|
|
488
474
|
/**
|
|
489
475
|
* Validate that a string is a valid public key
|
|
490
476
|
*/
|
|
491
477
|
static isValidPublicKey(publicKey) {
|
|
492
|
-
|
|
478
|
+
try {
|
|
479
|
+
ec.keyFromPublic(publicKey, 'hex');
|
|
480
|
+
return true;
|
|
481
|
+
} catch {
|
|
482
|
+
return false;
|
|
483
|
+
}
|
|
493
484
|
}
|
|
494
485
|
|
|
495
486
|
/**
|
|
496
487
|
* Validate that a string is a valid private key
|
|
497
488
|
*/
|
|
498
489
|
static isValidPrivateKey(privateKey) {
|
|
499
|
-
|
|
490
|
+
try {
|
|
491
|
+
const keyPair = ec.keyFromPrivate(privateKey);
|
|
492
|
+
// Verify it can derive a public key
|
|
493
|
+
keyPair.getPublic('hex');
|
|
494
|
+
return true;
|
|
495
|
+
} catch {
|
|
496
|
+
return false;
|
|
497
|
+
}
|
|
500
498
|
}
|
|
501
499
|
|
|
502
500
|
/**
|
|
@@ -504,7 +502,8 @@ class KeyManager {
|
|
|
504
502
|
* Format: first 8 chars...last 8 chars
|
|
505
503
|
*/
|
|
506
504
|
static shortenPublicKey(publicKey) {
|
|
507
|
-
|
|
505
|
+
if (publicKey.length <= 20) return publicKey;
|
|
506
|
+
return `${publicKey.slice(0, 8)}...${publicKey.slice(-8)}`;
|
|
508
507
|
}
|
|
509
508
|
}
|
|
510
509
|
exports.KeyManager = KeyManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_core","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SecureStore","ExpoCrypto","ec","getEllipticCurve","STORAGE_KEYS","PRIVATE_KEY","PUBLIC_KEY","BACKUP_PRIVATE_KEY","BACKUP_PUBLIC_KEY","BACKUP_TIMESTAMP","initSecureStore","Promise","resolve","then","error","errorMessage","Error","message","String","isReactNative","navigator","product","isNodeJS","process","versions","node","isWebPlatform","Platform","OS","window","initExpoCrypto","uint8ArrayToHex","bytes","Array","from","map","b","toString","padStart","join","getSecureRandomBytes","length","Crypto","getRandomBytes","getCrypto","Function","crypto","Uint8Array","randomBytes","KeyManager","cachedPublicKey","cachedHasIdentity","invalidateCache","generateKeyPairSync","keyPair","genKeyPair","privateKey","getPrivate","publicKey","getPublic","generateKeyPair","privateKeyHex","keyFromPrivate","createIdentity","store","setItemAsync","keychainAccessible","WHEN_UNLOCKED_THIS_DEVICE_ONLY","importKeyPair","getPrivateKey","getItemAsync","__DEV__","console","warn","getPublicKey","hasIdentity","deleteIdentity","skipBackup","force","userConfirmed","backupSuccess","backupIdentity","backupError","deleteItemAsync","Date","now","verifyIdentityIntegrity","isValidPrivateKey","isValidPublicKey","derivedPublicKey","derivePublicKey","getKeyPairObject","restoreIdentityFromBackup","backupPrivateKey","backupPublicKey","restored","derivePublicKeyFromPrivate","validatePublicKey","validatePrivateKey","shortenPublicKey","shortenKey","exports","_default"],"sourceRoot":"../../../src","sources":["crypto/keyManager.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_elliptic","require","_reactNative","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SecureStore","ExpoCrypto","ec","EC","STORAGE_KEYS","PRIVATE_KEY","PUBLIC_KEY","BACKUP_PRIVATE_KEY","BACKUP_PUBLIC_KEY","BACKUP_TIMESTAMP","initSecureStore","Promise","resolve","then","error","errorMessage","Error","message","String","isReactNative","navigator","product","isNodeJS","process","versions","node","isWebPlatform","Platform","OS","window","initExpoCrypto","uint8ArrayToHex","bytes","Array","from","map","b","toString","padStart","join","getSecureRandomBytes","length","Crypto","getRandomBytes","getCrypto","Function","crypto","Uint8Array","randomBytes","KeyManager","cachedPublicKey","cachedHasIdentity","invalidateCache","generateKeyPairSync","keyPair","genKeyPair","privateKey","getPrivate","publicKey","getPublic","generateKeyPair","privateKeyHex","keyFromPrivate","createIdentity","store","setItemAsync","keychainAccessible","WHEN_UNLOCKED_THIS_DEVICE_ONLY","importKeyPair","getPrivateKey","getItemAsync","__DEV__","console","warn","getPublicKey","hasIdentity","deleteIdentity","skipBackup","force","userConfirmed","backupSuccess","backupIdentity","backupError","deleteItemAsync","Date","now","verifyIdentityIntegrity","isValidPrivateKey","isValidPublicKey","derivedPublicKey","derivePublicKey","getKeyPairObject","restoreIdentityFromBackup","backupPrivateKey","backupPublicKey","restored","keyFromPublic","shortenPublicKey","slice","exports","_default"],"sourceRoot":"../../../src","sources":["crypto/keyManager.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,14 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "Buffer", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _buffer.Buffer;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
3
|
var _buffer = require("buffer");
|
|
13
4
|
/**
|
|
14
5
|
* Crypto Polyfills for React Native
|
|
@@ -82,5 +73,5 @@ if (typeof globalObject.crypto === 'undefined') {
|
|
|
82
73
|
globalObject.crypto.getRandomValues = cryptoPolyfill.getRandomValues;
|
|
83
74
|
}
|
|
84
75
|
|
|
85
|
-
//
|
|
76
|
+
// No longer re-exporting `Buffer` from this module; import from 'buffer' where needed.
|
|
86
77
|
//# sourceMappingURL=polyfill.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_buffer","require","getGlobalObject","globalThis","global","window","self","globalObject","Buffer","expoCryptoModule","getRandomBytesSync","byteCount","Error","cryptoModule","getRandomBytes","cryptoPolyfill","getRandomValues","array","bytes","byteLength","uint8View","Uint8Array","buffer","byteOffset","set","crypto"],"sourceRoot":"../../../src","sources":["crypto/polyfill.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_buffer","require","getGlobalObject","globalThis","global","window","self","globalObject","Buffer","expoCryptoModule","getRandomBytesSync","byteCount","Error","cryptoModule","getRandomBytes","cryptoPolyfill","getRandomValues","array","bytes","byteLength","uint8View","Uint8Array","buffer","byteOffset","set","crypto"],"sourceRoot":"../../../src","sources":["crypto/polyfill.ts"],"mappings":";;AAaA,IAAAA,OAAA,GAAAC,OAAA;AAbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAGA;AACA,MAAMC,eAAe,GAAGA,CAAA,KAAyB;EAC/C,IAAI,OAAOC,UAAU,KAAK,WAAW,EAAE,OAAOA,UAAU;EACxD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE,OAAOA,MAAM;EAChD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE,OAAOA,MAAM;EAChD,IAAI,OAAOC,IAAI,KAAK,WAAW,EAAE,OAAOA,IAAI;EAC5C,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAMC,YAAY,GAAGL,eAAe,CAAC,CAAC;;AAEtC;AACA,IAAI,CAACK,YAAY,CAACC,MAAM,EAAE;EACvBD,YAAY,CAA0CC,MAAM,GAAGA,cAAM;AACxE;;AAEA;AACA;;AAKA;AACA,IAAIC,gBAAqD,GAAG,IAAI;;AAEhE;AACA;AACA;AACA;AACA,SAASC,kBAAkBA,CAACC,SAAiB,EAAc;EACzD,IAAI,CAACF,gBAAgB,EAAE;IACrB;IACA,IAAI;MACF;MACAA,gBAAgB,GAAGR,OAAO,CAAC,aAAa,CAAC;IAC3C,CAAC,CAAC,MAAM;MACN,MAAM,IAAIW,KAAK,CAAC,6DAA6D,CAAC;IAChF;EACF;EACA;EACA,MAAMC,YAAY,GAAGJ,gBAAgB;EACrC,IAAI,CAACI,YAAY,EAAE;IACjB,MAAM,IAAID,KAAK,CAAC,mCAAmC,CAAC;EACtD;EACA,OAAOC,YAAY,CAACC,cAAc,CAACH,SAAS,CAAC;AAC/C;AAEA,MAAMI,cAA0B,GAAG;EACjCC,eAAeA,CAA4BC,KAAQ,EAAK;IACtD,MAAMC,KAAK,GAAGR,kBAAkB,CAACO,KAAK,CAACE,UAAU,CAAC;IAClD,MAAMC,SAAS,GAAG,IAAIC,UAAU,CAACJ,KAAK,CAACK,MAAM,EAAEL,KAAK,CAACM,UAAU,EAAEN,KAAK,CAACE,UAAU,CAAC;IAClFC,SAAS,CAACI,GAAG,CAACN,KAAK,CAAC;IACpB,OAAOD,KAAK;EACd;AACF,CAAC;;AAED;AACA,IAAI,OAAOV,YAAY,CAACkB,MAAM,KAAK,WAAW,EAAE;EAC7ClB,YAAY,CAAuCkB,MAAM,GAAGV,cAAc;AAC7E,CAAC,MAAM,IAAI,OAAOR,YAAY,CAACkB,MAAM,CAACT,eAAe,KAAK,UAAU,EAAE;EACnET,YAAY,CAACkB,MAAM,CAAgBT,eAAe,GAAGD,cAAc,CAACC,eAAe;AACtF;;AAEA","ignoreList":[]}
|
|
@@ -4,20 +4,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.SignatureService = void 0;
|
|
7
|
+
var _elliptic = require("elliptic");
|
|
7
8
|
var _keyManager = require("./keyManager");
|
|
8
|
-
var _core = require("./core");
|
|
9
9
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } /**
|
|
10
10
|
* Signature Service - ECDSA Digital Signatures
|
|
11
11
|
*
|
|
12
12
|
* Handles signing and verification of messages using ECDSA secp256k1.
|
|
13
13
|
* Used for authenticating requests and proving identity ownership.
|
|
14
|
-
*
|
|
15
|
-
* This service provides async methods for cross-platform compatibility (React Native + Node).
|
|
16
|
-
* For Node.js-only synchronous operations, use the node/signatureService module.
|
|
17
14
|
*/
|
|
18
15
|
// Lazy import for expo-crypto
|
|
19
16
|
let ExpoCrypto = null;
|
|
20
|
-
const ec =
|
|
17
|
+
const ec = new _elliptic.ec('secp256k1');
|
|
21
18
|
|
|
22
19
|
/**
|
|
23
20
|
* Check if we're in a React Native environment
|
|
@@ -131,8 +128,9 @@ class SignatureService {
|
|
|
131
128
|
*/
|
|
132
129
|
static async verify(message, signature, publicKey) {
|
|
133
130
|
try {
|
|
131
|
+
const key = ec.keyFromPublic(publicKey, 'hex');
|
|
134
132
|
const messageHash = await sha256(message);
|
|
135
|
-
return
|
|
133
|
+
return key.verify(messageHash, signature);
|
|
136
134
|
} catch {
|
|
137
135
|
return false;
|
|
138
136
|
}
|
|
@@ -153,8 +151,9 @@ class SignatureService {
|
|
|
153
151
|
// eslint-disable-next-line @typescript-eslint/no-implied-eval
|
|
154
152
|
const getCrypto = new Function('return require("crypto")');
|
|
155
153
|
const crypto = getCrypto();
|
|
154
|
+
const key = ec.keyFromPublic(publicKey, 'hex');
|
|
156
155
|
const messageHash = crypto.createHash('sha256').update(message).digest('hex');
|
|
157
|
-
return
|
|
156
|
+
return key.verify(messageHash, signature);
|
|
158
157
|
} catch {
|
|
159
158
|
return false;
|
|
160
159
|
}
|
|
@@ -193,7 +192,8 @@ class SignatureService {
|
|
|
193
192
|
} = signedMessage;
|
|
194
193
|
|
|
195
194
|
// Check timestamp freshness
|
|
196
|
-
|
|
195
|
+
const now = Date.now();
|
|
196
|
+
if (now - timestamp > maxAgeMs) {
|
|
197
197
|
return false;
|
|
198
198
|
}
|
|
199
199
|
|
|
@@ -212,7 +212,7 @@ class SignatureService {
|
|
|
212
212
|
throw new Error('No identity found. Please create or import an identity first.');
|
|
213
213
|
}
|
|
214
214
|
const timestamp = Date.now();
|
|
215
|
-
const message =
|
|
215
|
+
const message = `auth:${publicKey}:${challenge}:${timestamp}`;
|
|
216
216
|
const signature = await SignatureService.sign(message);
|
|
217
217
|
return {
|
|
218
218
|
challenge: signature,
|
|
@@ -232,33 +232,14 @@ class SignatureService {
|
|
|
232
232
|
} = response;
|
|
233
233
|
|
|
234
234
|
// Check timestamp freshness
|
|
235
|
-
|
|
235
|
+
const now = Date.now();
|
|
236
|
+
if (now - timestamp > maxAgeMs) {
|
|
236
237
|
return false;
|
|
237
238
|
}
|
|
238
|
-
const message =
|
|
239
|
+
const message = `auth:${publicKey}:${originalChallenge}:${timestamp}`;
|
|
239
240
|
return SignatureService.verify(message, signature, publicKey);
|
|
240
241
|
}
|
|
241
242
|
|
|
242
|
-
/**
|
|
243
|
-
* Create a registration signature
|
|
244
|
-
* Used when registering a new identity with the server
|
|
245
|
-
* Format matches server expectation: oxy:register:{publicKey}:{timestamp}
|
|
246
|
-
*/
|
|
247
|
-
static async createRegistrationSignature() {
|
|
248
|
-
const publicKey = await _keyManager.KeyManager.getPublicKey();
|
|
249
|
-
if (!publicKey) {
|
|
250
|
-
throw new Error('No identity found. Please create or import an identity first.');
|
|
251
|
-
}
|
|
252
|
-
const timestamp = Date.now();
|
|
253
|
-
const message = (0, _core.buildRegistrationMessage)(publicKey, timestamp);
|
|
254
|
-
const signature = await SignatureService.sign(message);
|
|
255
|
-
return {
|
|
256
|
-
signature,
|
|
257
|
-
publicKey,
|
|
258
|
-
timestamp
|
|
259
|
-
};
|
|
260
|
-
}
|
|
261
|
-
|
|
262
243
|
/**
|
|
263
244
|
* Sign arbitrary data for API requests
|
|
264
245
|
* Creates a canonical string representation and signs it
|
|
@@ -269,7 +250,12 @@ class SignatureService {
|
|
|
269
250
|
throw new Error('No identity found. Please create or import an identity first.');
|
|
270
251
|
}
|
|
271
252
|
const timestamp = Date.now();
|
|
272
|
-
|
|
253
|
+
|
|
254
|
+
// Create canonical string representation
|
|
255
|
+
const sortedKeys = Object.keys(data).sort();
|
|
256
|
+
const canonicalParts = sortedKeys.map(key => `${key}:${JSON.stringify(data[key])}`);
|
|
257
|
+
const canonicalString = canonicalParts.join('|');
|
|
258
|
+
const message = `request:${publicKey}:${timestamp}:${canonicalString}`;
|
|
273
259
|
const signature = await SignatureService.sign(message);
|
|
274
260
|
return {
|
|
275
261
|
signature,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_elliptic","require","_keyManager","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ExpoCrypto","ec","EC","isReactNative","navigator","product","isNodeJS","process","versions","node","initExpoCrypto","Promise","resolve","then","sha256","message","Crypto","digestStringAsync","CryptoDigestAlgorithm","SHA256","getCrypto","Function","crypto","createHash","update","digest","error","SignatureService","generateChallenge","randomBytes","getRandomBytesAsync","Array","from","map","b","toString","padStart","join","hashMessage","sign","keyPair","KeyManager","getKeyPairObject","Error","messageHash","signature","toDER","signWithKey","privateKey","keyFromPrivate","verify","publicKey","key","keyFromPublic","verifySync","createSignedMessage","getPublicKey","timestamp","Date","now","messageWithTimestamp","verifySignedMessage","signedMessage","maxAgeMs","signChallenge","challenge","verifyChallengeResponse","originalChallenge","response","signRequestData","data","sortedKeys","keys","sort","canonicalParts","JSON","stringify","canonicalString","exports","_default"],"sourceRoot":"../../../src","sources":["crypto/signatureService.ts"],"mappings":"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","ignoreList":[]}
|