@bifold/core 2.12.12 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/animated/CredentialAdded.js +12 -2
- package/lib/commonjs/components/animated/CredentialAdded.js.map +1 -1
- package/lib/commonjs/components/animated/CredentialPending.js +12 -2
- package/lib/commonjs/components/animated/CredentialPending.js.map +1 -1
- package/lib/commonjs/components/inputs/BiometryControl.js +29 -5
- package/lib/commonjs/components/inputs/BiometryControl.js.map +1 -1
- package/lib/commonjs/components/listItems/ContactCredentialListItem.js +8 -9
- package/lib/commonjs/components/listItems/ContactCredentialListItem.js.map +1 -1
- package/lib/commonjs/components/listItems/NotificationListItem.js +22 -18
- package/lib/commonjs/components/listItems/NotificationListItem.js.map +1 -1
- package/lib/commonjs/components/misc/CredentialCardGen.js.map +1 -1
- package/lib/commonjs/components/misc/QRScanner.js +2 -2
- package/lib/commonjs/components/misc/QRScanner.js.map +1 -1
- package/lib/commonjs/components/modals/ConfirmPINModal.js +0 -1
- package/lib/commonjs/components/modals/ConfirmPINModal.js.map +1 -1
- package/lib/commonjs/components/views/CredentialDetailPrimaryHeader.js +1 -1
- package/lib/commonjs/components/views/CredentialDetailPrimaryHeader.js.map +1 -1
- package/lib/commonjs/components/views/HomeFooterView.js +2 -2
- package/lib/commonjs/components/views/HomeFooterView.js.map +1 -1
- package/lib/commonjs/container-impl.js +4 -2
- package/lib/commonjs/container-impl.js.map +1 -1
- package/lib/commonjs/contexts/activity.js +4 -4
- package/lib/commonjs/contexts/activity.js.map +1 -1
- package/lib/commonjs/contexts/auth.js +44 -27
- package/lib/commonjs/contexts/auth.js.map +1 -1
- package/lib/commonjs/hooks/chat-messages.js +12 -12
- package/lib/commonjs/hooks/chat-messages.js.map +1 -1
- package/lib/commonjs/hooks/connections.js +3 -2
- package/lib/commonjs/hooks/connections.js.map +1 -1
- package/lib/commonjs/hooks/credentials.js.map +1 -1
- package/lib/commonjs/hooks/notifications.js +10 -8
- package/lib/commonjs/hooks/notifications.js.map +1 -1
- package/lib/commonjs/hooks/oob.js +14 -6
- package/lib/commonjs/hooks/oob.js.map +1 -1
- package/lib/commonjs/hooks/proofs.js.map +1 -1
- package/lib/commonjs/hooks/useBifoldAgentSetup.js +22 -20
- package/lib/commonjs/hooks/useBifoldAgentSetup.js.map +1 -1
- package/lib/commonjs/index.js +9 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/localization/en/en.json +8 -1
- package/lib/commonjs/localization/fr/fr.json +8 -1
- package/lib/commonjs/localization/pt-br/pt-br.json +8 -1
- package/lib/commonjs/modules/history/context/historyManager.js.map +1 -1
- package/lib/commonjs/modules/openid/components/OpenIDCredentialCard.js +2 -2
- package/lib/commonjs/modules/openid/components/OpenIDCredentialCard.js.map +1 -1
- package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js +35 -31
- package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
- package/lib/commonjs/modules/openid/credentialRecord.js +114 -0
- package/lib/commonjs/modules/openid/credentialRecord.js.map +1 -0
- package/lib/commonjs/modules/openid/display.js +38 -34
- package/lib/commonjs/modules/openid/display.js.map +1 -1
- package/lib/commonjs/modules/openid/displayProof.js +2 -2
- package/lib/commonjs/modules/openid/displayProof.js.map +1 -1
- package/lib/commonjs/modules/openid/hooks/openid.js +12 -15
- package/lib/commonjs/modules/openid/hooks/openid.js.map +1 -1
- package/lib/commonjs/modules/openid/hooks/useAcceptReplacement.js +16 -19
- package/lib/commonjs/modules/openid/hooks/useAcceptReplacement.js.map +1 -1
- package/lib/commonjs/modules/openid/hooks/useDeclineReplacement.js +1 -10
- package/lib/commonjs/modules/openid/hooks/useDeclineReplacement.js.map +1 -1
- package/lib/commonjs/modules/openid/hooks/useExpiredNotifications.js +1 -1
- package/lib/commonjs/modules/openid/hooks/useExpiredNotifications.js.map +1 -1
- package/lib/commonjs/modules/openid/hooks/useUpgradeExpiredCredential.js +8 -42
- package/lib/commonjs/modules/openid/hooks/useUpgradeExpiredCredential.js.map +1 -1
- package/lib/commonjs/modules/openid/metadata.js +2 -0
- package/lib/commonjs/modules/openid/metadata.js.map +1 -1
- package/lib/commonjs/modules/openid/notification.js +5 -4
- package/lib/commonjs/modules/openid/notification.js.map +1 -1
- package/lib/commonjs/modules/openid/offerResolve.js +49 -76
- package/lib/commonjs/modules/openid/offerResolve.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/operations.js +37 -0
- package/lib/commonjs/modules/openid/refresh/operations.js.map +1 -0
- package/lib/commonjs/modules/openid/refresh/reIssuance.js +24 -30
- package/lib/commonjs/modules/openid/refresh/reIssuance.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js +46 -61
- package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/refreshToken.js +13 -13
- package/lib/commonjs/modules/openid/refresh/refreshToken.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/registry.js +1 -1
- package/lib/commonjs/modules/openid/refresh/registry.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/types.js +11 -1
- package/lib/commonjs/modules/openid/refresh/types.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/verifyCredentialStatus.js +7 -7
- package/lib/commonjs/modules/openid/refresh/verifyCredentialStatus.js.map +1 -1
- package/lib/commonjs/modules/openid/resolverProof.js +16 -103
- package/lib/commonjs/modules/openid/resolverProof.js.map +1 -1
- package/lib/commonjs/modules/openid/screens/OpenIDConnection.js +11 -23
- package/lib/commonjs/modules/openid/screens/OpenIDConnection.js.map +1 -1
- package/lib/commonjs/modules/openid/screens/OpenIDCredentialOffer.js +10 -6
- package/lib/commonjs/modules/openid/screens/OpenIDCredentialOffer.js.map +1 -1
- package/lib/commonjs/modules/openid/screens/OpenIDProofPresentation.js +1 -1
- package/lib/commonjs/modules/openid/screens/OpenIDProofPresentation.js.map +1 -1
- package/lib/commonjs/modules/openid/types.js.map +1 -1
- package/lib/commonjs/modules/openid/utils/utils.js +31 -32
- package/lib/commonjs/modules/openid/utils/utils.js.map +1 -1
- package/lib/commonjs/navigators/MainStack.js +3 -3
- package/lib/commonjs/navigators/MainStack.js.map +1 -1
- package/lib/commonjs/navigators/TabStack.js +5 -3
- package/lib/commonjs/navigators/TabStack.js.map +1 -1
- package/lib/commonjs/screens/Chat.js +3 -3
- package/lib/commonjs/screens/Chat.js.map +1 -1
- package/lib/commonjs/screens/ConfigureMediator.js +10 -10
- package/lib/commonjs/screens/ConfigureMediator.js.map +1 -1
- package/lib/commonjs/screens/Connection.js +2 -2
- package/lib/commonjs/screens/Connection.js.map +1 -1
- package/lib/commonjs/screens/ContactDetails.js +7 -7
- package/lib/commonjs/screens/ContactDetails.js.map +1 -1
- package/lib/commonjs/screens/CredentialDetails.js +15 -8
- package/lib/commonjs/screens/CredentialDetails.js.map +1 -1
- package/lib/commonjs/screens/CredentialOffer.js +11 -9
- package/lib/commonjs/screens/CredentialOffer.js.map +1 -1
- package/lib/commonjs/screens/CredentialOfferAccept.js +2 -2
- package/lib/commonjs/screens/CredentialOfferAccept.js.map +1 -1
- package/lib/commonjs/screens/Home.js +1 -1
- package/lib/commonjs/screens/Home.js.map +1 -1
- package/lib/commonjs/screens/ListContacts.js +2 -2
- package/lib/commonjs/screens/ListContacts.js.map +1 -1
- package/lib/commonjs/screens/ListCredentials.js +3 -2
- package/lib/commonjs/screens/ListCredentials.js.map +1 -1
- package/lib/commonjs/screens/MobileVerifierLoading.js +1 -1
- package/lib/commonjs/screens/MobileVerifierLoading.js.map +1 -1
- package/lib/commonjs/screens/ProofDetails.js +4 -4
- package/lib/commonjs/screens/ProofDetails.js.map +1 -1
- package/lib/commonjs/screens/ProofRequest.js +32 -23
- package/lib/commonjs/screens/ProofRequest.js.map +1 -1
- package/lib/commonjs/screens/ProofRequestAccept.js +7 -7
- package/lib/commonjs/screens/ProofRequestAccept.js.map +1 -1
- package/lib/commonjs/screens/ProofRequestUsageHistory.js +6 -6
- package/lib/commonjs/screens/ProofRequestUsageHistory.js.map +1 -1
- package/lib/commonjs/screens/ProofRequesting.js +3 -3
- package/lib/commonjs/screens/ProofRequesting.js.map +1 -1
- package/lib/commonjs/screens/RenameWallet.js +6 -7
- package/lib/commonjs/screens/RenameWallet.js.map +1 -1
- package/lib/commonjs/screens/Settings.js +4 -2
- package/lib/commonjs/screens/Settings.js.map +1 -1
- package/lib/commonjs/types/credentials.js.map +1 -1
- package/lib/commonjs/utils/agent.js +45 -36
- package/lib/commonjs/utils/agent.js.map +1 -1
- package/lib/commonjs/utils/anonCredsProofRequestMapper.js +4 -2
- package/lib/commonjs/utils/anonCredsProofRequestMapper.js.map +1 -1
- package/lib/commonjs/utils/contacts.js +3 -3
- package/lib/commonjs/utils/contacts.js.map +1 -1
- package/lib/commonjs/utils/credential.js +21 -4
- package/lib/commonjs/utils/credential.js.map +1 -1
- package/lib/commonjs/utils/helpers.js +57 -52
- package/lib/commonjs/utils/helpers.js.map +1 -1
- package/lib/commonjs/utils/mediatorhelpers.js +10 -10
- package/lib/commonjs/utils/mediatorhelpers.js.map +1 -1
- package/lib/commonjs/utils/migration.js +18 -12
- package/lib/commonjs/utils/migration.js.map +1 -1
- package/lib/commonjs/utils/oca.js.map +1 -1
- package/lib/commonjs/wallet/map-to-card.js +2 -2
- package/lib/commonjs/wallet/map-to-card.js.map +1 -1
- package/lib/module/components/animated/CredentialAdded.js +12 -2
- package/lib/module/components/animated/CredentialAdded.js.map +1 -1
- package/lib/module/components/animated/CredentialPending.js +12 -2
- package/lib/module/components/animated/CredentialPending.js.map +1 -1
- package/lib/module/components/buttons/Button.js +2 -1
- package/lib/module/components/buttons/Button.js.map +1 -1
- package/lib/module/components/inputs/BiometryControl.js +30 -6
- package/lib/module/components/inputs/BiometryControl.js.map +1 -1
- package/lib/module/components/listItems/ContactCredentialListItem.js +3 -3
- package/lib/module/components/listItems/ContactCredentialListItem.js.map +1 -1
- package/lib/module/components/listItems/NotificationListItem.js +22 -18
- package/lib/module/components/listItems/NotificationListItem.js.map +1 -1
- package/lib/module/components/misc/CredentialCardGen.js.map +1 -1
- package/lib/module/components/misc/QRScanner.js +2 -2
- package/lib/module/components/misc/QRScanner.js.map +1 -1
- package/lib/module/components/modals/ConfirmPINModal.js +0 -1
- package/lib/module/components/modals/ConfirmPINModal.js.map +1 -1
- package/lib/module/components/views/CredentialDetailPrimaryHeader.js +1 -1
- package/lib/module/components/views/CredentialDetailPrimaryHeader.js.map +1 -1
- package/lib/module/components/views/HomeFooterView.js +2 -2
- package/lib/module/components/views/HomeFooterView.js.map +1 -1
- package/lib/module/container-impl.js +4 -2
- package/lib/module/container-impl.js.map +1 -1
- package/lib/module/contexts/activity.js +4 -4
- package/lib/module/contexts/activity.js.map +1 -1
- package/lib/module/contexts/auth.js +45 -27
- package/lib/module/contexts/auth.js.map +1 -1
- package/lib/module/hooks/chat-messages.js +12 -12
- package/lib/module/hooks/chat-messages.js.map +1 -1
- package/lib/module/hooks/connections.js +4 -3
- package/lib/module/hooks/connections.js.map +1 -1
- package/lib/module/hooks/credentials.js.map +1 -1
- package/lib/module/hooks/notifications.js +10 -8
- package/lib/module/hooks/notifications.js.map +1 -1
- package/lib/module/hooks/oob.js +15 -7
- package/lib/module/hooks/oob.js.map +1 -1
- package/lib/module/hooks/proofs.js.map +1 -1
- package/lib/module/hooks/useBifoldAgentSetup.js +23 -21
- package/lib/module/hooks/useBifoldAgentSetup.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/localization/en/en.json +8 -1
- package/lib/module/localization/fr/fr.json +8 -1
- package/lib/module/localization/pt-br/pt-br.json +8 -1
- package/lib/module/modules/history/context/historyManager.js.map +1 -1
- package/lib/module/modules/openid/components/OpenIDCredentialCard.js +2 -2
- package/lib/module/modules/openid/components/OpenIDCredentialCard.js.map +1 -1
- package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js +36 -32
- package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
- package/lib/module/modules/openid/credentialRecord.js +98 -0
- package/lib/module/modules/openid/credentialRecord.js.map +1 -0
- package/lib/module/modules/openid/display.js +38 -34
- package/lib/module/modules/openid/display.js.map +1 -1
- package/lib/module/modules/openid/displayProof.js +2 -2
- package/lib/module/modules/openid/displayProof.js.map +1 -1
- package/lib/module/modules/openid/hooks/openid.js +12 -15
- package/lib/module/modules/openid/hooks/openid.js.map +1 -1
- package/lib/module/modules/openid/hooks/useAcceptReplacement.js +16 -19
- package/lib/module/modules/openid/hooks/useAcceptReplacement.js.map +1 -1
- package/lib/module/modules/openid/hooks/useDeclineReplacement.js +2 -11
- package/lib/module/modules/openid/hooks/useDeclineReplacement.js.map +1 -1
- package/lib/module/modules/openid/hooks/useExpiredNotifications.js +1 -1
- package/lib/module/modules/openid/hooks/useExpiredNotifications.js.map +1 -1
- package/lib/module/modules/openid/hooks/useUpgradeExpiredCredential.js +8 -42
- package/lib/module/modules/openid/hooks/useUpgradeExpiredCredential.js.map +1 -1
- package/lib/module/modules/openid/metadata.js +3 -1
- package/lib/module/modules/openid/metadata.js.map +1 -1
- package/lib/module/modules/openid/notification.js +5 -4
- package/lib/module/modules/openid/notification.js.map +1 -1
- package/lib/module/modules/openid/offerResolve.js +51 -78
- package/lib/module/modules/openid/offerResolve.js.map +1 -1
- package/lib/module/modules/openid/refresh/operations.js +31 -0
- package/lib/module/modules/openid/refresh/operations.js.map +1 -0
- package/lib/module/modules/openid/refresh/reIssuance.js +24 -30
- package/lib/module/modules/openid/refresh/reIssuance.js.map +1 -1
- package/lib/module/modules/openid/refresh/refreshOrchestrator.js +48 -62
- package/lib/module/modules/openid/refresh/refreshOrchestrator.js.map +1 -1
- package/lib/module/modules/openid/refresh/refreshToken.js +13 -13
- package/lib/module/modules/openid/refresh/refreshToken.js.map +1 -1
- package/lib/module/modules/openid/refresh/registry.js +1 -1
- package/lib/module/modules/openid/refresh/registry.js.map +1 -1
- package/lib/module/modules/openid/refresh/types.js +11 -0
- package/lib/module/modules/openid/refresh/types.js.map +1 -1
- package/lib/module/modules/openid/refresh/verifyCredentialStatus.js +7 -7
- package/lib/module/modules/openid/refresh/verifyCredentialStatus.js.map +1 -1
- package/lib/module/modules/openid/resolverProof.js +16 -99
- package/lib/module/modules/openid/resolverProof.js.map +1 -1
- package/lib/module/modules/openid/screens/OpenIDConnection.js +11 -23
- package/lib/module/modules/openid/screens/OpenIDConnection.js.map +1 -1
- package/lib/module/modules/openid/screens/OpenIDCredentialOffer.js +10 -6
- package/lib/module/modules/openid/screens/OpenIDCredentialOffer.js.map +1 -1
- package/lib/module/modules/openid/screens/OpenIDProofPresentation.js +1 -1
- package/lib/module/modules/openid/screens/OpenIDProofPresentation.js.map +1 -1
- package/lib/module/modules/openid/types.js.map +1 -1
- package/lib/module/modules/openid/utils/utils.js +31 -31
- package/lib/module/modules/openid/utils/utils.js.map +1 -1
- package/lib/module/navigators/MainStack.js +3 -3
- package/lib/module/navigators/MainStack.js.map +1 -1
- package/lib/module/navigators/TabStack.js +5 -3
- package/lib/module/navigators/TabStack.js.map +1 -1
- package/lib/module/screens/Chat.js +3 -3
- package/lib/module/screens/Chat.js.map +1 -1
- package/lib/module/screens/ConfigureMediator.js +7 -7
- package/lib/module/screens/ConfigureMediator.js.map +1 -1
- package/lib/module/screens/Connection.js +2 -2
- package/lib/module/screens/Connection.js.map +1 -1
- package/lib/module/screens/ContactDetails.js +7 -7
- package/lib/module/screens/ContactDetails.js.map +1 -1
- package/lib/module/screens/CredentialDetails.js +15 -8
- package/lib/module/screens/CredentialDetails.js.map +1 -1
- package/lib/module/screens/CredentialOffer.js +11 -9
- package/lib/module/screens/CredentialOffer.js.map +1 -1
- package/lib/module/screens/CredentialOfferAccept.js +2 -2
- package/lib/module/screens/CredentialOfferAccept.js.map +1 -1
- package/lib/module/screens/Home.js +1 -1
- package/lib/module/screens/Home.js.map +1 -1
- package/lib/module/screens/ListContacts.js +2 -2
- package/lib/module/screens/ListContacts.js.map +1 -1
- package/lib/module/screens/ListCredentials.js +3 -2
- package/lib/module/screens/ListCredentials.js.map +1 -1
- package/lib/module/screens/MobileVerifierLoading.js +1 -1
- package/lib/module/screens/MobileVerifierLoading.js.map +1 -1
- package/lib/module/screens/ProofDetails.js +4 -4
- package/lib/module/screens/ProofDetails.js.map +1 -1
- package/lib/module/screens/ProofRequest.js +33 -24
- package/lib/module/screens/ProofRequest.js.map +1 -1
- package/lib/module/screens/ProofRequestAccept.js +7 -7
- package/lib/module/screens/ProofRequestAccept.js.map +1 -1
- package/lib/module/screens/ProofRequestUsageHistory.js +6 -6
- package/lib/module/screens/ProofRequestUsageHistory.js.map +1 -1
- package/lib/module/screens/ProofRequesting.js +3 -3
- package/lib/module/screens/ProofRequesting.js.map +1 -1
- package/lib/module/screens/RenameWallet.js +6 -7
- package/lib/module/screens/RenameWallet.js.map +1 -1
- package/lib/module/screens/Settings.js +4 -2
- package/lib/module/screens/Settings.js.map +1 -1
- package/lib/module/types/credentials.js.map +1 -1
- package/lib/module/utils/agent.js +47 -39
- package/lib/module/utils/agent.js.map +1 -1
- package/lib/module/utils/anonCredsProofRequestMapper.js +4 -2
- package/lib/module/utils/anonCredsProofRequestMapper.js.map +1 -1
- package/lib/module/utils/contacts.js +3 -3
- package/lib/module/utils/contacts.js.map +1 -1
- package/lib/module/utils/credential.js +21 -4
- package/lib/module/utils/credential.js.map +1 -1
- package/lib/module/utils/helpers.js +58 -53
- package/lib/module/utils/helpers.js.map +1 -1
- package/lib/module/utils/mediatorhelpers.js +10 -10
- package/lib/module/utils/mediatorhelpers.js.map +1 -1
- package/lib/module/utils/migration.js +17 -12
- package/lib/module/utils/migration.js.map +1 -1
- package/lib/module/utils/oca.js.map +1 -1
- package/lib/module/wallet/map-to-card.js +2 -2
- package/lib/module/wallet/map-to-card.js.map +1 -1
- package/lib/typescript/src/components/animated/CredentialAdded.d.ts.map +1 -1
- package/lib/typescript/src/components/animated/CredentialPending.d.ts.map +1 -1
- package/lib/typescript/src/components/buttons/Button.d.ts +3 -2
- package/lib/typescript/src/components/buttons/Button.d.ts.map +1 -1
- package/lib/typescript/src/components/inputs/BiometryControl.d.ts.map +1 -1
- package/lib/typescript/src/components/listItems/ContactCredentialListItem.d.ts +3 -4
- package/lib/typescript/src/components/listItems/ContactCredentialListItem.d.ts.map +1 -1
- package/lib/typescript/src/components/listItems/ContactListItem.d.ts +2 -2
- package/lib/typescript/src/components/listItems/ContactListItem.d.ts.map +1 -1
- package/lib/typescript/src/components/listItems/NotificationListItem.d.ts +2 -2
- package/lib/typescript/src/components/listItems/NotificationListItem.d.ts.map +1 -1
- package/lib/typescript/src/components/misc/CredentialCard10.d.ts +2 -2
- package/lib/typescript/src/components/misc/CredentialCard10.d.ts.map +1 -1
- package/lib/typescript/src/components/modals/ConfirmPINModal.d.ts.map +1 -1
- package/lib/typescript/src/components/views/CredentialDetailPrimaryHeader.d.ts +2 -2
- package/lib/typescript/src/components/views/CredentialDetailPrimaryHeader.d.ts.map +1 -1
- package/lib/typescript/src/container-impl.d.ts.map +1 -1
- package/lib/typescript/src/contexts/activity.d.ts.map +1 -1
- package/lib/typescript/src/contexts/auth.d.ts.map +1 -1
- package/lib/typescript/src/hooks/chat-messages.d.ts +2 -2
- package/lib/typescript/src/hooks/chat-messages.d.ts.map +1 -1
- package/lib/typescript/src/hooks/connections.d.ts +4 -4
- package/lib/typescript/src/hooks/connections.d.ts.map +1 -1
- package/lib/typescript/src/hooks/credentials.d.ts +2 -2
- package/lib/typescript/src/hooks/credentials.d.ts.map +1 -1
- package/lib/typescript/src/hooks/notifications.d.ts +3 -2
- package/lib/typescript/src/hooks/notifications.d.ts.map +1 -1
- package/lib/typescript/src/hooks/oob.d.ts +2 -2
- package/lib/typescript/src/hooks/oob.d.ts.map +1 -1
- package/lib/typescript/src/hooks/proofs.d.ts +2 -2
- package/lib/typescript/src/hooks/proofs.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useBifoldAgentSetup.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/modules/history/context/historyManager.d.ts +1 -2
- package/lib/typescript/src/modules/history/context/historyManager.d.ts.map +1 -1
- package/lib/typescript/src/modules/history/types/index.d.ts +1 -1
- package/lib/typescript/src/modules/history/types/index.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts +6 -5
- package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/credentialRecord.d.ts +19 -0
- package/lib/typescript/src/modules/openid/credentialRecord.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/display.d.ts +2 -3
- package/lib/typescript/src/modules/openid/display.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/hooks/openid.d.ts +2 -2
- package/lib/typescript/src/modules/openid/hooks/openid.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/hooks/useAcceptReplacement.d.ts +2 -4
- package/lib/typescript/src/modules/openid/hooks/useAcceptReplacement.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/hooks/useDeclineReplacement.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/hooks/useUpgradeExpiredCredential.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/metadata.d.ts +23 -18
- package/lib/typescript/src/modules/openid/metadata.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/notification.d.ts +3 -2
- package/lib/typescript/src/modules/openid/notification.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/offerResolve.d.ts +10 -16
- package/lib/typescript/src/modules/openid/offerResolve.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/refresh/operations.d.ts +13 -0
- package/lib/typescript/src/modules/openid/refresh/operations.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/refresh/reIssuance.d.ts +4 -7
- package/lib/typescript/src/modules/openid/refresh/reIssuance.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/refresh/refreshOrchestrator.d.ts +2 -5
- package/lib/typescript/src/modules/openid/refresh/refreshOrchestrator.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/refresh/refreshToken.d.ts +3 -2
- package/lib/typescript/src/modules/openid/refresh/refreshToken.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/refresh/types.d.ts +18 -6
- package/lib/typescript/src/modules/openid/refresh/types.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/refresh/verifyCredentialStatus.d.ts +4 -4
- package/lib/typescript/src/modules/openid/refresh/verifyCredentialStatus.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/resolverProof.d.ts +7 -24
- package/lib/typescript/src/modules/openid/resolverProof.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/screens/OpenIDConnection.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/screens/OpenIDCredentialOffer.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/types.d.ts +6 -6
- package/lib/typescript/src/modules/openid/types.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/utils/utils.d.ts +0 -2
- package/lib/typescript/src/modules/openid/utils/utils.d.ts.map +1 -1
- package/lib/typescript/src/screens/ConfigureMediator.d.ts.map +1 -1
- package/lib/typescript/src/screens/Connection.d.ts.map +1 -1
- package/lib/typescript/src/screens/CredentialDetails.d.ts.map +1 -1
- package/lib/typescript/src/screens/Home.d.ts.map +1 -1
- package/lib/typescript/src/screens/ProofDetails.d.ts.map +1 -1
- package/lib/typescript/src/screens/ProofRequest.d.ts.map +1 -1
- package/lib/typescript/src/screens/RenameWallet.d.ts.map +1 -1
- package/lib/typescript/src/types/credentials.d.ts +3 -2
- package/lib/typescript/src/types/credentials.d.ts.map +1 -1
- package/lib/typescript/src/types/navigators.d.ts +2 -2
- package/lib/typescript/src/types/navigators.d.ts.map +1 -1
- package/lib/typescript/src/types/proof-items.d.ts +4 -4
- package/lib/typescript/src/types/proof-items.d.ts.map +1 -1
- package/lib/typescript/src/utils/agent.d.ts +29 -14
- package/lib/typescript/src/utils/agent.d.ts.map +1 -1
- package/lib/typescript/src/utils/contacts.d.ts +2 -2
- package/lib/typescript/src/utils/contacts.d.ts.map +1 -1
- package/lib/typescript/src/utils/cred-def.d.ts +1 -1
- package/lib/typescript/src/utils/cred-def.d.ts.map +1 -1
- package/lib/typescript/src/utils/credential.d.ts +5 -5
- package/lib/typescript/src/utils/credential.d.ts.map +1 -1
- package/lib/typescript/src/utils/helpers.d.ts +28 -28
- package/lib/typescript/src/utils/helpers.d.ts.map +1 -1
- package/lib/typescript/src/utils/mediatorhelpers.d.ts.map +1 -1
- package/lib/typescript/src/utils/migration.d.ts.map +1 -1
- package/lib/typescript/src/utils/oca.d.ts +2 -2
- package/lib/typescript/src/utils/oca.d.ts.map +1 -1
- package/lib/typescript/src/utils/schema.d.ts +1 -1
- package/lib/typescript/src/utils/schema.d.ts.map +1 -1
- package/lib/typescript/src/wallet/map-to-card.d.ts +1 -1
- package/lib/typescript/src/wallet/map-to-card.d.ts.map +1 -1
- package/package.json +32 -27
|
@@ -4,45 +4,34 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.RefreshOrchestrator = void 0;
|
|
7
|
-
var _core = require("@credo-ts/core");
|
|
8
|
-
var _refreshToken = require("./refreshToken");
|
|
9
|
-
var _reIssuance = require("./reIssuance");
|
|
10
7
|
var _types = require("./types");
|
|
11
8
|
var _registry = require("./registry");
|
|
12
9
|
var _verifyCredentialStatus = require("./verifyCredentialStatus");
|
|
13
10
|
var _metadata = require("../metadata");
|
|
11
|
+
var _credentialRecord = require("../credentialRecord");
|
|
12
|
+
var _operations = require("./operations");
|
|
14
13
|
// modules/openid/refresh/RefreshOrchestrator.ts
|
|
15
14
|
|
|
16
|
-
const defaultToLite = rec => {
|
|
17
|
-
var _rec$createdAt;
|
|
18
|
-
return {
|
|
19
|
-
id: rec.id,
|
|
20
|
-
// best-effort: SdJwt/W3C both expose claimFormat via tags in many setups.
|
|
21
|
-
// Fallback to JwtVc if unknown so UI has *some* value.
|
|
22
|
-
format: rec instanceof _core.W3cCredentialRecord && _core.ClaimFormat.JwtVc || rec instanceof _core.SdJwtVcRecord && _core.ClaimFormat.SdJwtVc || _core.ClaimFormat.JwtVc,
|
|
23
|
-
createdAt: (_rec$createdAt = rec.createdAt) === null || _rec$createdAt === void 0 ? void 0 : _rec$createdAt.toISOString(),
|
|
24
|
-
issuer: undefined
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
15
|
class RefreshOrchestrator {
|
|
28
16
|
intervalOn = false; // interval enabled?
|
|
29
17
|
runningOnce = false; // a run is in progress?
|
|
30
18
|
|
|
31
19
|
recentlyIssued = new Map();
|
|
32
|
-
checkStatusOnly = true;
|
|
33
20
|
constructor(logger, bridge, opts) {
|
|
34
21
|
this.logger = logger;
|
|
35
22
|
this.opts = {
|
|
36
23
|
intervalMs: 15 * 60 * 1000,
|
|
37
24
|
autoStart: true,
|
|
25
|
+
flowType: _types.OpenIDCredentialRefreshFlowType.FullReplacement,
|
|
38
26
|
onError: e => this.logger.error(String(e)),
|
|
39
27
|
listRecords: async () => [],
|
|
40
|
-
toLite:
|
|
28
|
+
toLite: _credentialRecord.toOpenIDCredentialLite,
|
|
41
29
|
...(opts ?? {})
|
|
42
30
|
};
|
|
43
31
|
logger.info(`🔧 [RefreshOrchestrator] initialized -> ${JSON.stringify({
|
|
44
32
|
intervalMs: this.opts.intervalMs,
|
|
45
|
-
autoStart: this.opts.autoStart
|
|
33
|
+
autoStart: this.opts.autoStart,
|
|
34
|
+
flowType: this.opts.flowType
|
|
46
35
|
})}`);
|
|
47
36
|
bridge.onReady(agent => {
|
|
48
37
|
this.agent = agent;
|
|
@@ -65,7 +54,8 @@ class RefreshOrchestrator {
|
|
|
65
54
|
};
|
|
66
55
|
this.logger.info(`🔧 [RefreshOrchestrator] configure -> ${JSON.stringify({
|
|
67
56
|
intervalMs: this.opts.intervalMs,
|
|
68
|
-
autoStart: this.opts.autoStart
|
|
57
|
+
autoStart: this.opts.autoStart,
|
|
58
|
+
flowType: this.opts.flowType
|
|
69
59
|
})}`);
|
|
70
60
|
const nowIntervalMs = this.opts.intervalMs ?? null;
|
|
71
61
|
const nowAutoStart = this.opts.autoStart ?? true;
|
|
@@ -139,8 +129,11 @@ class RefreshOrchestrator {
|
|
|
139
129
|
for (const rec of records) {
|
|
140
130
|
// don’t block whole batch if one fails
|
|
141
131
|
try {
|
|
142
|
-
|
|
143
|
-
|
|
132
|
+
if (this.opts.flowType === _types.OpenIDCredentialRefreshFlowType.FullReplacement) {
|
|
133
|
+
await this.refreshRecord(rec);
|
|
134
|
+
} else {
|
|
135
|
+
await this.checkRecordStatus(rec);
|
|
136
|
+
}
|
|
144
137
|
} catch (e) {
|
|
145
138
|
var _this$opts$onError, _this$opts;
|
|
146
139
|
this.logger.error(`💥 [Refresh] record ${rec.id} failed: ${String(e)}`);
|
|
@@ -171,6 +164,7 @@ class RefreshOrchestrator {
|
|
|
171
164
|
shouldSkip,
|
|
172
165
|
markRefreshing,
|
|
173
166
|
clearRefreshing,
|
|
167
|
+
clearExpired,
|
|
174
168
|
upsert,
|
|
175
169
|
markInvalid,
|
|
176
170
|
setLastSweep
|
|
@@ -195,19 +189,22 @@ class RefreshOrchestrator {
|
|
|
195
189
|
this.logger.info(`🧭 [Refresh] check credential ${id}`);
|
|
196
190
|
try {
|
|
197
191
|
// 3) verification
|
|
198
|
-
const
|
|
192
|
+
const status = await (0, _verifyCredentialStatus.verifyCredentialStatus)(rec, this.logger);
|
|
199
193
|
const now = Date.now();
|
|
200
194
|
const meta = (0, _metadata.getRefreshCredentialMetadata)(rec) ?? {};
|
|
201
|
-
meta.lastCheckResult =
|
|
195
|
+
meta.lastCheckResult = status;
|
|
202
196
|
meta.lastCheckedAt = now;
|
|
203
197
|
meta.attemptCount = (meta.attemptCount ?? 0) + 1;
|
|
204
198
|
(0, _metadata.setRefreshCredentialMetadata)(rec, meta);
|
|
205
199
|
await (0, _metadata.persistCredentialRecord)(this.agent.context, rec);
|
|
206
|
-
if (
|
|
200
|
+
if (status === _types.RefreshStatus.Valid) {
|
|
207
201
|
this.logger.info(`✅ [Refresh] valid → ${id}`);
|
|
208
|
-
|
|
202
|
+
clearExpired(id);
|
|
203
|
+
} else if (status === _types.RefreshStatus.Invalid) {
|
|
209
204
|
this.logger.info(`❌ [Refresh] invalid → ${id}`);
|
|
210
|
-
markInvalid(id);
|
|
205
|
+
markInvalid(id);
|
|
206
|
+
} else {
|
|
207
|
+
this.logger.warn(`⚠️ [Refresh] status check error → ${id}`);
|
|
211
208
|
}
|
|
212
209
|
setLastSweep(new Date(now).toISOString());
|
|
213
210
|
} catch (error) {
|
|
@@ -224,9 +221,8 @@ class RefreshOrchestrator {
|
|
|
224
221
|
markRefreshing,
|
|
225
222
|
clearRefreshing,
|
|
226
223
|
clearExpired,
|
|
227
|
-
markExpiredWithReplacement,
|
|
228
|
-
blockAsFailed,
|
|
229
224
|
blockAsSucceeded,
|
|
225
|
+
markInvalid,
|
|
230
226
|
upsert
|
|
231
227
|
} = _registry.credentialRegistry.getState();
|
|
232
228
|
const id = rec.id;
|
|
@@ -249,8 +245,8 @@ class RefreshOrchestrator {
|
|
|
249
245
|
this.logger.info(`🧭 [Refresh] check credential ${id}`);
|
|
250
246
|
try {
|
|
251
247
|
// 3) verification
|
|
252
|
-
const
|
|
253
|
-
if (
|
|
248
|
+
const status = await (0, _verifyCredentialStatus.verifyCredentialStatus)(rec, this.logger);
|
|
249
|
+
if (status === _types.RefreshStatus.Valid) {
|
|
254
250
|
this.logger.info(`✅ [Refresh] valid → ${id}`);
|
|
255
251
|
// If it was previously expired for any reason, clear that and block as succeeded
|
|
256
252
|
clearExpired(id);
|
|
@@ -258,6 +254,15 @@ class RefreshOrchestrator {
|
|
|
258
254
|
// blockAsSucceeded(id)
|
|
259
255
|
return;
|
|
260
256
|
}
|
|
257
|
+
if (status === _types.RefreshStatus.Error) {
|
|
258
|
+
this.logger.warn(`⚠️ [Refresh] status check failed; deferring re-issue → ${id}`);
|
|
259
|
+
await (0, _metadata.markOpenIDCredentialStatus)({
|
|
260
|
+
credential: rec,
|
|
261
|
+
status: _types.RefreshStatus.Error,
|
|
262
|
+
agentContext: this.agent.context
|
|
263
|
+
});
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
261
266
|
|
|
262
267
|
// Invalid case:
|
|
263
268
|
|
|
@@ -266,48 +271,28 @@ class RefreshOrchestrator {
|
|
|
266
271
|
status: _types.RefreshStatus.Invalid,
|
|
267
272
|
agentContext: this.agent.context
|
|
268
273
|
});
|
|
269
|
-
|
|
270
|
-
// 4) needs refresh → get access token
|
|
271
274
|
this.logger.info(`♻️ [Refresh] invalid, attempting re-issue → ${id}`);
|
|
272
|
-
const
|
|
273
|
-
logger: this.logger,
|
|
274
|
-
cred: rec,
|
|
275
|
-
agentContext: this.agent.context
|
|
276
|
-
});
|
|
277
|
-
if (!token) {
|
|
278
|
-
const msg = `no refresh token available`;
|
|
279
|
-
this.logger.warn(`⚠️ [Refresh] ${msg} for ${id}`);
|
|
280
|
-
blockAsFailed(id, msg);
|
|
281
|
-
return;
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
// 5) re-issue
|
|
285
|
-
const newRecord = await (0, _reIssuance.reissueCredentialWithAccessToken)({
|
|
275
|
+
const newRecord = await (0, _operations.refreshAndQueueReplacement)({
|
|
286
276
|
agent: this.agent,
|
|
287
277
|
logger: this.logger,
|
|
288
278
|
record: rec,
|
|
289
|
-
|
|
279
|
+
toLite: this.opts.toLite
|
|
290
280
|
});
|
|
291
|
-
if (newRecord) {
|
|
292
|
-
|
|
293
|
-
// Queue a replacement for UI/notifications and block the old one as succeeded
|
|
294
|
-
markExpiredWithReplacement(id, this.opts.toLite(newRecord));
|
|
295
|
-
blockAsSucceeded(id);
|
|
296
|
-
this.recentlyIssued.set(newRecord.id, newRecord);
|
|
297
|
-
} else {
|
|
298
|
-
const msg = `re-issue returned no record`;
|
|
281
|
+
if (!newRecord) {
|
|
282
|
+
const msg = 'credential refresh did not yield a replacement';
|
|
299
283
|
this.logger.warn(`⚠️ [Refresh] ${msg} for ${id}`);
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
credential: rec,
|
|
303
|
-
status: _types.RefreshStatus.Invalid,
|
|
304
|
-
agentContext: this.agent.context
|
|
305
|
-
});
|
|
284
|
+
markInvalid(id);
|
|
285
|
+
return;
|
|
306
286
|
}
|
|
287
|
+
this.logger.info(`💾 [Refresh] new credential → ${newRecord.id}`);
|
|
288
|
+
blockAsSucceeded(id);
|
|
289
|
+
this.recentlyIssued.set(newRecord.id, newRecord);
|
|
307
290
|
} catch (e) {
|
|
291
|
+
var _this$opts$onError4, _this$opts4;
|
|
308
292
|
const err = String(e);
|
|
309
293
|
this.logger.error(`💥 [Refresh] error on ${id}: ${err}`);
|
|
310
|
-
|
|
294
|
+
(_this$opts$onError4 = (_this$opts4 = this.opts).onError) === null || _this$opts$onError4 === void 0 || _this$opts$onError4.call(_this$opts4, e);
|
|
295
|
+
markInvalid(id);
|
|
311
296
|
} finally {
|
|
312
297
|
// 6) clear in-flight marker
|
|
313
298
|
clearRefreshing(id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_core","require","_refreshToken","_reIssuance","_types","_registry","_verifyCredentialStatus","_metadata","defaultToLite","rec","_rec$createdAt","id","format","W3cCredentialRecord","ClaimFormat","JwtVc","SdJwtVcRecord","SdJwtVc","createdAt","toISOString","issuer","undefined","RefreshOrchestrator","intervalOn","runningOnce","recentlyIssued","Map","checkStatusOnly","constructor","logger","bridge","opts","intervalMs","autoStart","onError","e","error","String","listRecords","toLite","info","JSON","stringify","onReady","agent","start","configure","next","prev","agentReady","nowIntervalMs","nowAutoStart","stop","isRunning","timer","setInterval","runOnce","clearInterval","reason","_this$agent","warn","isInitialized","records","length","checkRecordStatus","_this$opts$onError","_this$opts","call","_this$opts$onError2","_this$opts2","setIntervalMs","resolveFull","get","shouldSkip","markRefreshing","clearRefreshing","upsert","markInvalid","setLastSweep","credentialRegistry","getState","isValid","verifyCredentialStatus","now","Date","meta","getRefreshCredentialMetadata","lastCheckResult","RefreshStatus","Valid","Invalid","lastCheckedAt","attemptCount","setRefreshCredentialMetadata","persistCredentialRecord","context","_this$opts$onError3","_this$opts3","refreshRecord","clearExpired","markExpiredWithReplacement","blockAsFailed","blockAsSucceeded","markOpenIDCredentialStatus","credential","status","agentContext","token","refreshAccessToken","cred","msg","newRecord","reissueCredentialWithAccessToken","record","tokenResponse","set","err","exports"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshOrchestrator.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_types","require","_registry","_verifyCredentialStatus","_metadata","_credentialRecord","_operations","RefreshOrchestrator","intervalOn","runningOnce","recentlyIssued","Map","constructor","logger","bridge","opts","intervalMs","autoStart","flowType","OpenIDCredentialRefreshFlowType","FullReplacement","onError","e","error","String","listRecords","toLite","toOpenIDCredentialLite","info","JSON","stringify","onReady","agent","start","configure","next","prev","agentReady","nowIntervalMs","nowAutoStart","stop","isRunning","timer","setInterval","runOnce","clearInterval","undefined","reason","_this$agent","warn","isInitialized","records","length","rec","refreshRecord","checkRecordStatus","_this$opts$onError","_this$opts","id","call","_this$opts$onError2","_this$opts2","setIntervalMs","resolveFull","get","shouldSkip","markRefreshing","clearRefreshing","clearExpired","upsert","markInvalid","setLastSweep","credentialRegistry","getState","status","verifyCredentialStatus","now","Date","meta","getRefreshCredentialMetadata","lastCheckResult","lastCheckedAt","attemptCount","setRefreshCredentialMetadata","persistCredentialRecord","context","RefreshStatus","Valid","Invalid","toISOString","_this$opts$onError3","_this$opts3","blockAsSucceeded","Error","markOpenIDCredentialStatus","credential","agentContext","newRecord","refreshAndQueueReplacement","record","msg","set","_this$opts$onError4","_this$opts4","err","exports"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshOrchestrator.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,20 +20,16 @@ async function refreshAccessToken({
|
|
|
20
20
|
logger.info(`[refreshAccessToken] Found refresh metadata for credential: ${cred.id}`);
|
|
21
21
|
const {
|
|
22
22
|
refreshToken,
|
|
23
|
-
|
|
23
|
+
tokenEndpoint
|
|
24
24
|
} = refreshMetaData;
|
|
25
25
|
try {
|
|
26
|
-
if (!
|
|
27
|
-
throw new Error('No
|
|
26
|
+
if (!tokenEndpoint) {
|
|
27
|
+
throw new Error('No token endpoint found in the credential offer metadata');
|
|
28
28
|
}
|
|
29
|
-
logger.info(`[refreshAccessToken] Found
|
|
30
|
-
|
|
31
|
-
// Build token endpoint: <AS>/token?force=false
|
|
32
|
-
// React-Native-safe URL build
|
|
33
|
-
const tokenUrl = (authServer.endsWith('/') ? authServer.slice(0, -1) : authServer) + '/token?force=false';
|
|
34
|
-
// const tokenUrl = new URL('token', authServer)
|
|
35
|
-
// tokenUrl.searchParams.set('force', 'false')
|
|
29
|
+
logger.info(`[refreshAccessToken] Found token endpoint for credential: ${cred.id}: ${tokenEndpoint}`);
|
|
36
30
|
|
|
31
|
+
// Build token endpoint:
|
|
32
|
+
const tokenUrl = tokenEndpoint.endsWith('/') ? tokenEndpoint.slice(0, -1) : tokenEndpoint;
|
|
37
33
|
logger.info(`[refreshAccessToken] Refreshing access token at URL: ${tokenUrl} for credential: ${cred.id}`);
|
|
38
34
|
const body = new URLSearchParams({
|
|
39
35
|
grant_type: 'refresh_token',
|
|
@@ -51,20 +47,24 @@ async function refreshAccessToken({
|
|
|
51
47
|
},
|
|
52
48
|
body: body.toString()
|
|
53
49
|
});
|
|
54
|
-
logger.info(`[refreshAccessToken]
|
|
50
|
+
logger.info(`[refreshAccessToken] Token endpoint response status: ${res.status}`);
|
|
55
51
|
if (!res.ok) {
|
|
56
52
|
const errText = await res.text();
|
|
57
53
|
throw new Error(`Refresh failed ${res.status}: ${errText}`);
|
|
58
54
|
}
|
|
59
55
|
const data = await res.json();
|
|
60
|
-
logger.info(`[refreshAccessToken]
|
|
56
|
+
logger.info(`[refreshAccessToken] Token refresh succeeded: ${JSON.stringify({
|
|
57
|
+
token_type: data.token_type,
|
|
58
|
+
expires_in: data.expires_in,
|
|
59
|
+
has_access_token: Boolean(data.access_token),
|
|
60
|
+
has_refresh_token: Boolean(data.refresh_token)
|
|
61
|
+
})}`);
|
|
61
62
|
|
|
62
63
|
// If refresh token rotated, persist it
|
|
63
64
|
if (data.refresh_token && data.refresh_token !== refreshToken) {
|
|
64
65
|
logger.info(`[refreshAccessToken] Refresh token rotated; saving new one`);
|
|
65
66
|
(0, _metadata.setRefreshCredentialMetadata)(cred, {
|
|
66
67
|
...refreshMetaData,
|
|
67
|
-
authServer: authServer,
|
|
68
68
|
refreshToken: data.refresh_token
|
|
69
69
|
});
|
|
70
70
|
await (0, _metadata.persistCredentialRecord)(agentContext, cred);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_metadata","require","refreshAccessToken","logger","cred","agentContext","info","id","refreshMetaData","getRefreshCredentialMetadata","error","refreshToken","
|
|
1
|
+
{"version":3,"names":["_metadata","require","refreshAccessToken","logger","cred","agentContext","info","id","refreshMetaData","getRefreshCredentialMetadata","error","refreshToken","tokenEndpoint","Error","tokenUrl","endsWith","slice","body","URLSearchParams","grant_type","refresh_token","pre_authorized_code","pre_authorized_code_alt","user_pin","res","fetch","toString","method","headers","accept","status","ok","errText","text","data","json","JSON","stringify","token_type","expires_in","has_access_token","Boolean","access_token","has_refresh_token","setRefreshCredentialMetadata","persistCredentialRecord"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshToken.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -111,7 +111,7 @@ const credentialRegistry = exports.credentialRegistry = (0, _vanilla.createStore
|
|
|
111
111
|
shouldSkip: id => {
|
|
112
112
|
const s = get();
|
|
113
113
|
if (s.refreshing[id]) return true; // in-progress
|
|
114
|
-
if (s.expired.includes(id)) return true; // replacement already queued
|
|
114
|
+
if (s.expired.includes(id) && Boolean(s.replacements[id])) return true; // replacement already queued
|
|
115
115
|
if (s.blocked[id]) return true; // previously succeeded/failed
|
|
116
116
|
return false;
|
|
117
117
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_vanilla","require","credentialRegistry","exports","createStore","set","get","byId","expired","checked","replacements","refreshing","blocked","lastSweepAt","undefined","upsert","cred","s","id","markRefreshing","clearRefreshing","_drop","rest","markExpiredWithReplacement","oldId","replacement","includes","markInvalid","acceptReplacement","repl","restRepl","filter","x","reason","at","Date","toISOString","clearExpired","blockAsSucceeded","blockAsFailed","error","unblock","shouldSkip","setLastSweep","iso","reset","readRegistry","getState","mutateRegistry","updater","setState","selectOldIdByReplacementId","replacementId","Object","entries"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/registry.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_vanilla","require","credentialRegistry","exports","createStore","set","get","byId","expired","checked","replacements","refreshing","blocked","lastSweepAt","undefined","upsert","cred","s","id","markRefreshing","clearRefreshing","_drop","rest","markExpiredWithReplacement","oldId","replacement","includes","markInvalid","acceptReplacement","repl","restRepl","filter","x","reason","at","Date","toISOString","clearExpired","blockAsSucceeded","blockAsFailed","error","unblock","shouldSkip","Boolean","setLastSweep","iso","reset","readRegistry","getState","mutateRegistry","updater","setState","selectOldIdByReplacementId","replacementId","Object","entries"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/registry.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,13 +3,23 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.RefreshStatus = exports.OpenIDCustomNotificationType = void 0;
|
|
6
|
+
exports.RefreshStatus = exports.OpenIDCustomNotificationType = exports.OpenIDCredentialRefreshFlowType = void 0;
|
|
7
7
|
let RefreshStatus = exports.RefreshStatus = /*#__PURE__*/function (RefreshStatus) {
|
|
8
8
|
RefreshStatus["Valid"] = "valid";
|
|
9
9
|
RefreshStatus["Invalid"] = "invalid";
|
|
10
10
|
RefreshStatus["Error"] = "error";
|
|
11
11
|
return RefreshStatus;
|
|
12
12
|
}({});
|
|
13
|
+
/**
|
|
14
|
+
* Controls how invalid OpenID credentials are handled after status checks.
|
|
15
|
+
* - InvalidThenOnDemand: show invalid notification; replacement is attempted on user action.
|
|
16
|
+
* - FullReplacement: orchestrator attempts replacement immediately and surfaces replacement notification when available.
|
|
17
|
+
*/
|
|
18
|
+
let OpenIDCredentialRefreshFlowType = exports.OpenIDCredentialRefreshFlowType = /*#__PURE__*/function (OpenIDCredentialRefreshFlowType) {
|
|
19
|
+
OpenIDCredentialRefreshFlowType["InvalidThenOnDemand"] = "invalid-then-on-demand";
|
|
20
|
+
OpenIDCredentialRefreshFlowType["FullReplacement"] = "full-replacement";
|
|
21
|
+
return OpenIDCredentialRefreshFlowType;
|
|
22
|
+
}({});
|
|
13
23
|
let OpenIDCustomNotificationType = exports.OpenIDCustomNotificationType = /*#__PURE__*/function (OpenIDCustomNotificationType) {
|
|
14
24
|
OpenIDCustomNotificationType["CredentialReplacementAvailable"] = "CustomNotificationOpenIDCredential";
|
|
15
25
|
OpenIDCustomNotificationType["CredentialExpired"] = "CredentialExpired";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RefreshStatus","exports","OpenIDCustomNotificationType"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/types.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["RefreshStatus","exports","OpenIDCredentialRefreshFlowType","OpenIDCustomNotificationType"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/types.ts"],"mappings":";;;;;;IAeYA,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAMzB;AACA;AACA;AACA;AACA;AAJA,IAKYE,+BAA+B,GAAAD,OAAA,CAAAC,+BAAA,0BAA/BA,+BAA+B;EAA/BA,+BAA+B;EAA/BA,+BAA+B;EAAA,OAA/BA,+BAA+B;AAAA;AAAA,IAkD/BC,4BAA4B,GAAAF,OAAA,CAAAE,4BAAA,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA","ignoreList":[]}
|
|
@@ -5,30 +5,30 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.verifyCredentialStatus = verifyCredentialStatus;
|
|
7
7
|
var _jwtStatusList = require("@sd-jwt/jwt-status-list");
|
|
8
|
+
var _types = require("./types");
|
|
8
9
|
// modules/openid/refresh/verifyCredentialStatus.ts
|
|
9
10
|
|
|
10
11
|
/**
|
|
11
12
|
* Verifies credential status for Sd-JWT credentials using status lists.
|
|
12
13
|
* Non–Sd-JWT credentials (W3C jwt_vc_json without status list, or mdoc) are treated as valid here.
|
|
13
|
-
* Returns true if valid; false if revoked/invalid or on error.
|
|
14
14
|
*/
|
|
15
15
|
async function verifyCredentialStatus(rec, logger) {
|
|
16
16
|
try {
|
|
17
17
|
// Only Sd-JWT creds have compactSdJwtVc in this codebase
|
|
18
|
-
if (!('compactSdJwtVc' in rec)) return
|
|
18
|
+
if (!('compactSdJwtVc' in rec)) return _types.RefreshStatus.Valid;
|
|
19
19
|
logger === null || logger === void 0 || logger.info(`[Verifier] Verifying credential status for Sd-JWT credential: ${rec.id}`);
|
|
20
|
-
const ref = (0, _jwtStatusList.getStatusListFromJWT)(rec.
|
|
20
|
+
const ref = (0, _jwtStatusList.getStatusListFromJWT)(rec.firstCredential.compact);
|
|
21
21
|
const res = await fetch(ref.uri);
|
|
22
22
|
if (!res.ok) throw new Error(`HTTP ${res.status}`);
|
|
23
23
|
const jwt = await res.text();
|
|
24
24
|
const list = (0, _jwtStatusList.getListFromStatusListJWT)(jwt);
|
|
25
|
-
const
|
|
26
|
-
logger === null || logger === void 0 || logger.info(`${
|
|
27
|
-
return
|
|
25
|
+
const status = list.getStatus(ref.idx) === 0 ? _types.RefreshStatus.Valid : _types.RefreshStatus.Invalid;
|
|
26
|
+
logger === null || logger === void 0 || logger.info(`${status === _types.RefreshStatus.Valid ? '✅' : '❌'} [Verifier] ${rec.id} → ${status}`);
|
|
27
|
+
return status;
|
|
28
28
|
} catch (e) {
|
|
29
29
|
var _logger$error;
|
|
30
30
|
logger === null || logger === void 0 || (_logger$error = logger.error) === null || _logger$error === void 0 || _logger$error.call(logger, `💥 [Verifier] ${'id' in rec ? rec.id : 'unknown'} verify failed: ${String(e)}`);
|
|
31
|
-
return
|
|
31
|
+
return _types.RefreshStatus.Error;
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
//# sourceMappingURL=verifyCredentialStatus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_jwtStatusList","require","verifyCredentialStatus","rec","logger","info","id","ref","getStatusListFromJWT","
|
|
1
|
+
{"version":3,"names":["_jwtStatusList","require","_types","verifyCredentialStatus","rec","logger","RefreshStatus","Valid","info","id","ref","getStatusListFromJWT","firstCredential","compact","res","fetch","uri","ok","Error","status","jwt","text","list","getListFromStatusListJWT","getStatus","idx","Invalid","e","_logger$error","error","call","String"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/verifyCredentialStatus.ts"],"mappings":";;;;;;AAEA,IAAAA,cAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAJA;;AAQA;AACA;AACA;AACA;AACO,eAAeE,sBAAsBA,CAACC,GAAY,EAAEC,MAAqB,EAA0B;EACxG,IAAI;IACF;IACA,IAAI,EAAE,gBAAgB,IAAID,GAAG,CAAC,EAAE,OAAOE,oBAAa,CAACC,KAAK;IAE1DF,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEG,IAAI,CAAC,iEAAiEJ,GAAG,CAACK,EAAE,EAAE,CAAC;IAEvF,MAAMC,GAAG,GAAG,IAAAC,mCAAoB,EAACP,GAAG,CAACQ,eAAe,CAACC,OAAO,CAAC;IAC7D,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAACL,GAAG,CAACM,GAAG,CAAC;IAChC,IAAI,CAACF,GAAG,CAACG,EAAE,EAAE,MAAM,IAAIC,KAAK,CAAC,QAAQJ,GAAG,CAACK,MAAM,EAAE,CAAC;IAClD,MAAMC,GAAG,GAAG,MAAMN,GAAG,CAACO,IAAI,CAAC,CAAC;IAE5B,MAAMC,IAAI,GAAG,IAAAC,uCAAwB,EAACH,GAAG,CAAC;IAC1C,MAAMD,MAAM,GAAGG,IAAI,CAACE,SAAS,CAACd,GAAG,CAACe,GAAG,CAAC,KAAK,CAAC,GAAGnB,oBAAa,CAACC,KAAK,GAAGD,oBAAa,CAACoB,OAAO;IAE1FrB,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEG,IAAI,CAAC,GAAGW,MAAM,KAAKb,oBAAa,CAACC,KAAK,GAAG,GAAG,GAAG,GAAG,eAAeH,GAAG,CAACK,EAAE,MAAMU,MAAM,EAAE,CAAC;IAC9F,OAAOA,MAAM;EACf,CAAC,CAAC,OAAOQ,CAAC,EAAE;IAAA,IAAAC,aAAA;IACVvB,MAAM,aAANA,MAAM,gBAAAuB,aAAA,GAANvB,MAAM,CAAEwB,KAAK,cAAAD,aAAA,eAAbA,aAAA,CAAAE,IAAA,CAAAzB,MAAM,EAAU,iBAAiB,IAAI,IAAID,GAAG,GAAGA,GAAG,CAACK,EAAE,GAAG,SAAS,mBAAmBsB,MAAM,CAACJ,CAAC,CAAC,EAAE,CAAC;IAChG,OAAOrB,oBAAa,CAACY,KAAK;EAC5B;AACF","ignoreList":[]}
|
|
@@ -3,15 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.extractCertificateFromAuthorizationRequest = void 0;
|
|
7
6
|
exports.fetchInvitationDataUrl = fetchInvitationDataUrl;
|
|
8
7
|
exports.shareProof = exports.getCredentialsForProofRequest = void 0;
|
|
9
|
-
exports.withTrustedCertificate = withTrustedCertificate;
|
|
10
|
-
var _core = require("@credo-ts/core");
|
|
11
|
-
var _queryString = _interopRequireDefault(require("query-string"));
|
|
12
8
|
var _utils = require("./utils/utils");
|
|
13
9
|
var _reactNative = require("react-native");
|
|
14
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
10
|
function handleTextResponse(text) {
|
|
16
11
|
// If the text starts with 'ey' we assume it's a JWT and thus an OpenID authorization request
|
|
17
12
|
if (text.startsWith('ey')) {
|
|
@@ -92,107 +87,28 @@ async function fetchInvitationDataUrl(dataUrl) {
|
|
|
92
87
|
throw new Error(`[retrieve_invitation_error] Unable to retrieve invitation: ${error}`);
|
|
93
88
|
}
|
|
94
89
|
}
|
|
95
|
-
const extractCertificateFromJwt = jwt => {
|
|
96
|
-
const jwtHeader = _core.Jwt.fromSerializedJwt(jwt).header;
|
|
97
|
-
return Array.isArray(jwtHeader.x5c) && typeof jwtHeader.x5c[0] === 'string' ? jwtHeader.x5c[0] : null;
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* This is a temp method to allow for untrusted certificates to still work with the wallet.
|
|
102
|
-
*/
|
|
103
|
-
const extractCertificateFromAuthorizationRequest = async ({
|
|
104
|
-
data,
|
|
105
|
-
uri
|
|
106
|
-
}) => {
|
|
107
|
-
try {
|
|
108
|
-
if (data) {
|
|
109
|
-
return {
|
|
110
|
-
data,
|
|
111
|
-
certificate: extractCertificateFromJwt(data)
|
|
112
|
-
};
|
|
113
|
-
}
|
|
114
|
-
if (uri) {
|
|
115
|
-
const query = _queryString.default.parseUrl(uri).query;
|
|
116
|
-
if (query.request_uri && typeof query.request_uri === 'string') {
|
|
117
|
-
const result = await fetchInvitationDataUrl(query.request_uri);
|
|
118
|
-
if (result.success && result.result.type === 'openid-authorization-request' && typeof result.result.data === 'string') {
|
|
119
|
-
return {
|
|
120
|
-
data: result.result.data,
|
|
121
|
-
certificate: extractCertificateFromJwt(result.result.data)
|
|
122
|
-
};
|
|
123
|
-
}
|
|
124
|
-
} else if (query.request && typeof query.request === 'string') {
|
|
125
|
-
const _res = {
|
|
126
|
-
data: query.request,
|
|
127
|
-
certificate: extractCertificateFromJwt(query.request)
|
|
128
|
-
};
|
|
129
|
-
return _res;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
return {
|
|
133
|
-
data: null,
|
|
134
|
-
certificate: null
|
|
135
|
-
};
|
|
136
|
-
} catch {
|
|
137
|
-
return {
|
|
138
|
-
data: null,
|
|
139
|
-
certificate: null
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
};
|
|
143
|
-
exports.extractCertificateFromAuthorizationRequest = extractCertificateFromAuthorizationRequest;
|
|
144
|
-
async function withTrustedCertificate(agent, certificate, method) {
|
|
145
|
-
const x509ModuleConfig = agent.dependencyManager.resolve(_core.X509ModuleConfig);
|
|
146
|
-
const currentTrustedCertificates = x509ModuleConfig.trustedCertificates ? [...x509ModuleConfig.trustedCertificates] : [];
|
|
147
|
-
try {
|
|
148
|
-
if (certificate) agent.x509.addTrustedCertificate(certificate);
|
|
149
|
-
return await method();
|
|
150
|
-
} finally {
|
|
151
|
-
if (certificate) x509ModuleConfig.setTrustedCertificates(currentTrustedCertificates);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
//This settings should be moved to an injectable config
|
|
156
|
-
const allowUntrustedCertificates = false;
|
|
157
90
|
const getCredentialsForProofRequest = async ({
|
|
158
91
|
agent,
|
|
159
|
-
|
|
160
|
-
uri
|
|
92
|
+
request
|
|
161
93
|
}) => {
|
|
162
|
-
let requestUri = uri;
|
|
163
94
|
try {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
data: newData = null
|
|
167
|
-
} = allowUntrustedCertificates ? await extractCertificateFromAuthorizationRequest({
|
|
168
|
-
data,
|
|
169
|
-
uri
|
|
170
|
-
}) : {};
|
|
171
|
-
if (newData) {
|
|
172
|
-
// FIXME: Credo only support request string, but we already parsed it before. So we construct an request here
|
|
173
|
-
// but in the future we need to support the parsed request in Credo directly
|
|
174
|
-
requestUri = `openid://?request=${encodeURIComponent(newData)}`;
|
|
175
|
-
} else if (uri) {
|
|
176
|
-
requestUri = uri;
|
|
177
|
-
} else {
|
|
178
|
-
throw new Error('Either data or uri must be provided');
|
|
179
|
-
}
|
|
180
|
-
agent.config.logger.info(`$$Receiving openid uri ${requestUri}`);
|
|
181
|
-
|
|
182
|
-
// Temp solution to add and remove the trusted certificate
|
|
183
|
-
const resolved = await withTrustedCertificate(agent, certificate, () => {
|
|
184
|
-
return agent.modules.openId4VcHolder.resolveSiopAuthorizationRequest(requestUri);
|
|
185
|
-
});
|
|
95
|
+
agent.config.logger.info(`$$Receiving openid authorization request ${request}`);
|
|
96
|
+
const resolved = await agent.modules.openid4vc.holder.resolveOpenId4VpAuthorizationRequest(request);
|
|
186
97
|
if (!resolved.presentationExchange) {
|
|
187
98
|
throw new Error('No presentation exchange found in authorization request.');
|
|
188
99
|
}
|
|
189
|
-
|
|
100
|
+
const requestRecord = {
|
|
190
101
|
...resolved.presentationExchange,
|
|
191
|
-
|
|
192
|
-
verifierHostName: resolved.
|
|
102
|
+
authorizationRequestPayload: resolved.authorizationRequestPayload,
|
|
103
|
+
verifierHostName: resolved.authorizationRequestPayload.response_uri ? (0, _utils.getHostNameFromUrl)(String(resolved.authorizationRequestPayload.response_uri)) : undefined,
|
|
193
104
|
createdAt: new Date(),
|
|
194
|
-
type: 'OpenId4VPRequestRecord'
|
|
105
|
+
type: 'OpenId4VPRequestRecord',
|
|
106
|
+
verifier: {
|
|
107
|
+
clientIdPrefix: resolved.verifier.clientIdPrefix,
|
|
108
|
+
effectiveClientId: resolved.verifier.effectiveClientId
|
|
109
|
+
}
|
|
195
110
|
};
|
|
111
|
+
return requestRecord;
|
|
196
112
|
} catch (err) {
|
|
197
113
|
agent.config.logger.error(`Parsing presentation request: ${(err === null || err === void 0 ? void 0 : err.message) ?? err}`);
|
|
198
114
|
throw err;
|
|
@@ -203,8 +119,7 @@ const shareProof = async ({
|
|
|
203
119
|
agent,
|
|
204
120
|
authorizationRequest,
|
|
205
121
|
credentialsForRequest,
|
|
206
|
-
selectedCredentials
|
|
207
|
-
allowUntrustedCertificate = false
|
|
122
|
+
selectedCredentials
|
|
208
123
|
}) => {
|
|
209
124
|
if (!credentialsForRequest.areRequirementsSatisfied) {
|
|
210
125
|
throw new Error('Requirements from proof request are not satisfied');
|
|
@@ -219,14 +134,12 @@ const shareProof = async ({
|
|
|
219
134
|
return [entry.inputDescriptorId, [credential.credentialRecord]];
|
|
220
135
|
})));
|
|
221
136
|
try {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
const result = await withTrustedCertificate(agent, certificate, () => agent.modules.openId4VcHolder.acceptSiopAuthorizationRequest({
|
|
225
|
-
authorizationRequest,
|
|
137
|
+
const result = await agent.openid4vc.holder.acceptOpenId4VpAuthorizationRequest({
|
|
138
|
+
authorizationRequest: authorizationRequest,
|
|
226
139
|
presentationExchange: {
|
|
227
140
|
credentials
|
|
228
141
|
}
|
|
229
|
-
})
|
|
142
|
+
});
|
|
230
143
|
|
|
231
144
|
// if redirect_uri is provided, open it in the browser
|
|
232
145
|
// Even if the response returned an error, we must open this uri
|