@bifold/core 3.0.0 → 3.0.2
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/LoadingSpinner.js +5 -4
- package/lib/commonjs/components/animated/LoadingSpinner.js.map +1 -1
- package/lib/commonjs/components/buttons/Button.js +2 -6
- package/lib/commonjs/components/buttons/Button.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/NotificationListItem.js +5 -1
- package/lib/commonjs/components/listItems/NotificationListItem.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/record/Record.js +11 -5
- package/lib/commonjs/components/record/Record.js.map +1 -1
- package/lib/commonjs/components/views/HomeFooterView.js +3 -2
- package/lib/commonjs/components/views/HomeFooterView.js.map +1 -1
- package/lib/commonjs/components/views/KeyboardView.js +5 -3
- package/lib/commonjs/components/views/KeyboardView.js.map +1 -1
- package/lib/commonjs/components/views/ScreenWrapper.js +9 -5
- package/lib/commonjs/components/views/ScreenWrapper.js.map +1 -1
- package/lib/commonjs/constants.js +2 -0
- package/lib/commonjs/constants.js.map +1 -1
- package/lib/commonjs/container-api.js +8 -2
- package/lib/commonjs/container-api.js.map +1 -1
- package/lib/commonjs/container-impl.js +9 -3
- package/lib/commonjs/container-impl.js.map +1 -1
- package/lib/commonjs/contexts/auth.js +47 -45
- package/lib/commonjs/contexts/auth.js.map +1 -1
- package/lib/commonjs/contexts/reducers/store.js +16 -1
- package/lib/commonjs/contexts/reducers/store.js.map +1 -1
- package/lib/commonjs/contexts/store.js +3 -0
- package/lib/commonjs/contexts/store.js.map +1 -1
- package/lib/commonjs/hooks/attestation.js +83 -0
- package/lib/commonjs/hooks/attestation.js.map +1 -0
- package/lib/commonjs/hooks/notifications.js +4 -2
- package/lib/commonjs/hooks/notifications.js.map +1 -1
- package/lib/commonjs/hooks/useBifoldAgentSetup.js +5 -13
- 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 +11 -1
- package/lib/commonjs/localization/fr/fr.json +11 -1
- package/lib/commonjs/localization/pt-br/pt-br.json +11 -1
- package/lib/commonjs/modules/openid/components/OpenIDCredentialCard.js.map +1 -1
- package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js +86 -48
- 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 +0 -3
- package/lib/commonjs/modules/openid/display.js.map +1 -1
- package/lib/commonjs/modules/openid/displayProof.js +118 -1
- package/lib/commonjs/modules/openid/displayProof.js.map +1 -1
- package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.js +56 -0
- package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.js.map +1 -0
- package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.js +104 -0
- package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.js.map +1 -0
- package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.js +87 -0
- package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.js.map +1 -0
- package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.js +50 -0
- package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.js.map +1 -0
- package/lib/commonjs/modules/openid/hooks/openid.js +6 -8
- 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/offerResolve.js +34 -58
- 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 +7 -10
- package/lib/commonjs/modules/openid/refresh/reIssuance.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js +60 -63
- package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/refreshToken.js +12 -12
- 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 +6 -6
- package/lib/commonjs/modules/openid/refresh/verifyCredentialStatus.js.map +1 -1
- package/lib/commonjs/modules/openid/resolverProof.js +114 -124
- package/lib/commonjs/modules/openid/resolverProof.js.map +1 -1
- package/lib/commonjs/modules/openid/screens/OpenIDConnection.js +14 -25
- package/lib/commonjs/modules/openid/screens/OpenIDConnection.js.map +1 -1
- package/lib/commonjs/modules/openid/screens/OpenIDCredentialDetails.js +5 -2
- package/lib/commonjs/modules/openid/screens/OpenIDCredentialDetails.js.map +1 -1
- package/lib/commonjs/modules/openid/screens/OpenIDProofChangeCredential.js +6 -11
- package/lib/commonjs/modules/openid/screens/OpenIDProofChangeCredential.js.map +1 -1
- package/lib/commonjs/modules/openid/screens/OpenIDProofPresentation.js +45 -188
- package/lib/commonjs/modules/openid/screens/OpenIDProofPresentation.js.map +1 -1
- package/lib/commonjs/modules/openid/types.js.map +1 -1
- package/lib/commonjs/navigators/DeliveryStack.js +2 -1
- package/lib/commonjs/navigators/DeliveryStack.js.map +1 -1
- package/lib/commonjs/navigators/TabStack.js +5 -3
- package/lib/commonjs/navigators/TabStack.js.map +1 -1
- package/lib/commonjs/navigators/defaultLayoutOptions.js +2 -1
- package/lib/commonjs/navigators/defaultLayoutOptions.js.map +1 -1
- package/lib/commonjs/navigators/defaultStackOptions.js +1 -1
- package/lib/commonjs/navigators/defaultStackOptions.js.map +1 -1
- package/lib/commonjs/onboarding.js +6 -3
- package/lib/commonjs/onboarding.js.map +1 -1
- package/lib/commonjs/screens/Connection.js +9 -28
- package/lib/commonjs/screens/Connection.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/ListCredentials.js +8 -2
- package/lib/commonjs/screens/ListCredentials.js.map +1 -1
- package/lib/commonjs/screens/Settings.js +1 -1
- package/lib/commonjs/screens/Settings.js.map +1 -1
- package/lib/commonjs/screens/Splash.js +21 -2
- package/lib/commonjs/screens/Splash.js.map +1 -1
- package/lib/commonjs/theme.js +2 -1
- package/lib/commonjs/theme.js.map +1 -1
- package/lib/commonjs/utils/agent.js +13 -3
- package/lib/commonjs/utils/agent.js.map +1 -1
- package/lib/commonjs/utils/helpers.js +0 -2
- package/lib/commonjs/utils/helpers.js.map +1 -1
- package/lib/commonjs/utils/network.js +16 -0
- package/lib/commonjs/utils/network.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/LoadingSpinner.js +4 -3
- package/lib/module/components/animated/LoadingSpinner.js.map +1 -1
- package/lib/module/components/buttons/Button.js +4 -7
- 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/NotificationListItem.js +5 -1
- package/lib/module/components/listItems/NotificationListItem.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/record/Record.js +12 -6
- package/lib/module/components/record/Record.js.map +1 -1
- package/lib/module/components/views/HomeFooterView.js +3 -2
- package/lib/module/components/views/HomeFooterView.js.map +1 -1
- package/lib/module/components/views/KeyboardView.js +6 -4
- package/lib/module/components/views/KeyboardView.js.map +1 -1
- package/lib/module/components/views/ScreenWrapper.js +9 -5
- package/lib/module/components/views/ScreenWrapper.js.map +1 -1
- package/lib/module/constants.js +2 -0
- package/lib/module/constants.js.map +1 -1
- package/lib/module/container-api.js +7 -1
- package/lib/module/container-api.js.map +1 -1
- package/lib/module/container-impl.js +9 -3
- package/lib/module/container-impl.js.map +1 -1
- package/lib/module/contexts/auth.js +47 -44
- package/lib/module/contexts/auth.js.map +1 -1
- package/lib/module/contexts/reducers/store.js +16 -1
- package/lib/module/contexts/reducers/store.js.map +1 -1
- package/lib/module/contexts/store.js +3 -0
- package/lib/module/contexts/store.js.map +1 -1
- package/lib/module/hooks/attestation.js +75 -0
- package/lib/module/hooks/attestation.js.map +1 -0
- package/lib/module/hooks/notifications.js +4 -2
- package/lib/module/hooks/notifications.js.map +1 -1
- package/lib/module/hooks/useBifoldAgentSetup.js +5 -13
- 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 +11 -1
- package/lib/module/localization/fr/fr.json +11 -1
- package/lib/module/localization/pt-br/pt-br.json +11 -1
- package/lib/module/modules/openid/components/OpenIDCredentialCard.js.map +1 -1
- package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js +87 -49
- 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 +0 -3
- package/lib/module/modules/openid/display.js.map +1 -1
- package/lib/module/modules/openid/displayProof.js +116 -1
- package/lib/module/modules/openid/displayProof.js.map +1 -1
- package/lib/module/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.js +49 -0
- package/lib/module/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.js.map +1 -0
- package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.js +97 -0
- package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.js.map +1 -0
- package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.js +80 -0
- package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.js.map +1 -0
- package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.js +44 -0
- package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.js.map +1 -0
- package/lib/module/modules/openid/hooks/openid.js +6 -8
- 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/offerResolve.js +34 -58
- 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 +7 -10
- package/lib/module/modules/openid/refresh/reIssuance.js.map +1 -1
- package/lib/module/modules/openid/refresh/refreshOrchestrator.js +62 -64
- package/lib/module/modules/openid/refresh/refreshOrchestrator.js.map +1 -1
- package/lib/module/modules/openid/refresh/refreshToken.js +12 -12
- 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 +6 -6
- package/lib/module/modules/openid/refresh/verifyCredentialStatus.js.map +1 -1
- package/lib/module/modules/openid/resolverProof.js +115 -121
- package/lib/module/modules/openid/resolverProof.js.map +1 -1
- package/lib/module/modules/openid/screens/OpenIDConnection.js +14 -25
- package/lib/module/modules/openid/screens/OpenIDConnection.js.map +1 -1
- package/lib/module/modules/openid/screens/OpenIDCredentialDetails.js +5 -2
- package/lib/module/modules/openid/screens/OpenIDCredentialDetails.js.map +1 -1
- package/lib/module/modules/openid/screens/OpenIDProofChangeCredential.js +6 -11
- package/lib/module/modules/openid/screens/OpenIDProofChangeCredential.js.map +1 -1
- package/lib/module/modules/openid/screens/OpenIDProofPresentation.js +47 -191
- package/lib/module/modules/openid/screens/OpenIDProofPresentation.js.map +1 -1
- package/lib/module/modules/openid/types.js.map +1 -1
- package/lib/module/navigators/DeliveryStack.js +2 -1
- package/lib/module/navigators/DeliveryStack.js.map +1 -1
- package/lib/module/navigators/TabStack.js +5 -3
- package/lib/module/navigators/TabStack.js.map +1 -1
- package/lib/module/navigators/defaultLayoutOptions.js +2 -1
- package/lib/module/navigators/defaultLayoutOptions.js.map +1 -1
- package/lib/module/navigators/defaultStackOptions.js +1 -1
- package/lib/module/navigators/defaultStackOptions.js.map +1 -1
- package/lib/module/onboarding.js +6 -3
- package/lib/module/onboarding.js.map +1 -1
- package/lib/module/screens/Connection.js +9 -28
- package/lib/module/screens/Connection.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/ListCredentials.js +9 -3
- package/lib/module/screens/ListCredentials.js.map +1 -1
- package/lib/module/screens/Settings.js +1 -1
- package/lib/module/screens/Settings.js.map +1 -1
- package/lib/module/screens/Splash.js +21 -2
- package/lib/module/screens/Splash.js.map +1 -1
- package/lib/module/theme.js +2 -1
- package/lib/module/theme.js.map +1 -1
- package/lib/module/utils/agent.js +13 -4
- package/lib/module/utils/agent.js.map +1 -1
- package/lib/module/utils/helpers.js +0 -2
- package/lib/module/utils/helpers.js.map +1 -1
- package/lib/module/utils/network.js +15 -0
- package/lib/module/utils/network.js.map +1 -1
- package/lib/module/wallet/map-to-card.js +3 -3
- package/lib/module/wallet/map-to-card.js.map +1 -1
- package/lib/typescript/src/components/animated/LoadingSpinner.d.ts +2 -1
- package/lib/typescript/src/components/animated/LoadingSpinner.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/NotificationListItem.d.ts.map +1 -1
- package/lib/typescript/src/components/modals/ConfirmPINModal.d.ts.map +1 -1
- package/lib/typescript/src/components/record/Record.d.ts +1 -0
- package/lib/typescript/src/components/record/Record.d.ts.map +1 -1
- package/lib/typescript/src/components/views/HomeFooterView.d.ts.map +1 -1
- package/lib/typescript/src/components/views/KeyboardView.d.ts +3 -2
- package/lib/typescript/src/components/views/KeyboardView.d.ts.map +1 -1
- package/lib/typescript/src/components/views/ScreenWrapper.d.ts +5 -1
- package/lib/typescript/src/components/views/ScreenWrapper.d.ts.map +1 -1
- package/lib/typescript/src/constants.d.ts +3 -1
- package/lib/typescript/src/constants.d.ts.map +1 -1
- package/lib/typescript/src/container-api.d.ts +12 -0
- package/lib/typescript/src/container-api.d.ts.map +1 -1
- package/lib/typescript/src/container-impl.d.ts +3 -0
- package/lib/typescript/src/container-impl.d.ts.map +1 -1
- package/lib/typescript/src/contexts/auth.d.ts +0 -1
- package/lib/typescript/src/contexts/auth.d.ts.map +1 -1
- package/lib/typescript/src/contexts/reducers/store.d.ts +5 -1
- package/lib/typescript/src/contexts/reducers/store.d.ts.map +1 -1
- package/lib/typescript/src/contexts/store.d.ts.map +1 -1
- package/lib/typescript/src/hooks/attestation.d.ts +4 -0
- package/lib/typescript/src/hooks/attestation.d.ts.map +1 -0
- package/lib/typescript/src/hooks/notifications.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/openid/components/OpenIDCredentialCard.d.ts +2 -2
- package/lib/typescript/src/modules/openid/components/OpenIDCredentialCard.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts +7 -6
- 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/displayProof.d.ts +4 -29
- package/lib/typescript/src/modules/openid/displayProof.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.d.ts +23 -0
- package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.d.ts +13 -0
- package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.d.ts +14 -0
- package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.d.ts +9 -0
- package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.d.ts.map +1 -0
- 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 +9 -8
- package/lib/typescript/src/modules/openid/metadata.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/offerResolve.d.ts +9 -15
- 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 +3 -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 +15 -4
- package/lib/typescript/src/modules/openid/refresh/types.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/refresh/verifyCredentialStatus.d.ts +2 -2
- package/lib/typescript/src/modules/openid/refresh/verifyCredentialStatus.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/resolverProof.d.ts +32 -30
- 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/OpenIDCredentialDetails.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/screens/OpenIDProofChangeCredential.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/screens/OpenIDProofPresentation.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/types.d.ts +34 -4
- package/lib/typescript/src/modules/openid/types.d.ts.map +1 -1
- package/lib/typescript/src/navigators/defaultLayoutOptions.d.ts.map +1 -1
- package/lib/typescript/src/onboarding.d.ts +1 -1
- package/lib/typescript/src/onboarding.d.ts.map +1 -1
- package/lib/typescript/src/screens/Connection.d.ts.map +1 -1
- package/lib/typescript/src/screens/Home.d.ts.map +1 -1
- package/lib/typescript/src/screens/ListCredentials.d.ts.map +1 -1
- package/lib/typescript/src/screens/Splash.d.ts.map +1 -1
- package/lib/typescript/src/theme.d.ts +1 -0
- package/lib/typescript/src/theme.d.ts.map +1 -1
- package/lib/typescript/src/types/config.d.ts +1 -0
- package/lib/typescript/src/types/config.d.ts.map +1 -1
- package/lib/typescript/src/types/credentials.d.ts +2 -2
- package/lib/typescript/src/types/credentials.d.ts.map +1 -1
- package/lib/typescript/src/types/state.d.ts +4 -0
- package/lib/typescript/src/types/state.d.ts.map +1 -1
- package/lib/typescript/src/utils/agent.d.ts +7 -3
- package/lib/typescript/src/utils/agent.d.ts.map +1 -1
- package/lib/typescript/src/utils/helpers.d.ts.map +1 -1
- package/lib/typescript/src/utils/network.d.ts +1 -0
- package/lib/typescript/src/utils/network.d.ts.map +1 -1
- package/lib/typescript/src/wallet/map-to-card.d.ts.map +1 -1
- package/package.json +30 -29
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["OpenId4VciCredentialFormatProfile","DidJwk","DidKey","Kms","extractOpenId4VcCredentialMetadata","setOpenId4VcCredentialMetadata","resolveOpenId4VciOffer","agent","data","uri","authorization","offerUri","encodeURIComponent","JSON","stringify","
|
|
1
|
+
{"version":3,"names":["OpenId4VciCredentialFormatProfile","DidJwk","DidKey","Kms","extractOpenId4VcCredentialMetadata","setOpenId4VcCredentialMetadata","getCredentialConfigurationIdsToRequest","resolvedCredentialOffer","credentialConfigurationIdsToRequest","credentialConfigurationIds","Object","keys","offeredCredentialConfigurations","length","Error","credentialConfigurationId","resolveOpenId4VciOffer","agent","data","uri","authorization","offerUri","encodeURIComponent","JSON","stringify","config","logger","info","openid4vc","holder","resolveCredentialOffer","acquirePreAuthorizedAccessToken","txCode","requestToken","customCredentialBindingResolver","supportedDidMethods","supportsAllDidMethods","supportsJwk","credentialFormat","proofTypes","_proofTypes$jwt","didMethod","includes","undefined","key","kms","createKeyForSignatureAlgorithm","algorithm","jwt","supportedSignatureAlgorithms","publicJwk","PublicJwk","fromPublicJwk","didResult","dids","create","method","options","keyId","didState","state","didUrl","fromDid","did","verificationMethodId","didKey","fingerprint","didUrls","SdJwtVc","MsoMdoc","join","receiveCredentialFromOpenId4VciOffer","tokenResponse","clientId","credentials","requestCredentials","verifyCredentialStatus","allowedProofOfPossessionSignatureAlgorithms","credentialBindingResolver","firstCredential","record","requestedCredentialConfiguration","openId4VcMetadata","id","metadata","credentialIssuer","credential_issuer","display"],"sourceRoot":"../../../../src","sources":["modules/openid/offerResolve.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { toOpenIDCredentialLite } from '../credentialRecord';
|
|
2
|
+
import { refreshAccessToken } from './refreshToken';
|
|
3
|
+
import { credentialRegistry } from './registry';
|
|
4
|
+
import { reissueCredentialWithAccessToken } from './reIssuance';
|
|
5
|
+
export async function refreshAndQueueReplacement({
|
|
6
|
+
agent,
|
|
7
|
+
logger,
|
|
8
|
+
record,
|
|
9
|
+
toLite = toOpenIDCredentialLite
|
|
10
|
+
}) {
|
|
11
|
+
const token = await refreshAccessToken({
|
|
12
|
+
logger,
|
|
13
|
+
cred: record,
|
|
14
|
+
agentContext: agent.context
|
|
15
|
+
});
|
|
16
|
+
if (!token) {
|
|
17
|
+
return undefined;
|
|
18
|
+
}
|
|
19
|
+
const newRecord = await reissueCredentialWithAccessToken({
|
|
20
|
+
agent,
|
|
21
|
+
logger,
|
|
22
|
+
record,
|
|
23
|
+
tokenResponse: token
|
|
24
|
+
});
|
|
25
|
+
if (!newRecord) {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
credentialRegistry.getState().markExpiredWithReplacement(record.id, toLite(newRecord));
|
|
29
|
+
return newRecord;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=operations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["toOpenIDCredentialLite","refreshAccessToken","credentialRegistry","reissueCredentialWithAccessToken","refreshAndQueueReplacement","agent","logger","record","toLite","token","cred","agentContext","context","undefined","newRecord","tokenResponse","getState","markExpiredWithReplacement","id"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/operations.ts"],"mappings":"AAEA,SAAiCA,sBAAsB,QAAQ,qBAAqB;AACpF,SAASC,kBAAkB,QAAQ,gBAAgB;AACnD,SAASC,kBAAkB,QAAQ,YAAY;AAC/C,SAASC,gCAAgC,QAAQ,cAAc;AAU/D,OAAO,eAAeC,0BAA0BA,CAAC;EAC/CC,KAAK;EACLC,MAAM;EACNC,MAAM;EACNC,MAAM,GAAGR;AACc,CAAC,EAAE;EAC1B,MAAMS,KAAK,GAAG,MAAMR,kBAAkB,CAAC;IAAEK,MAAM;IAAEI,IAAI,EAAEH,MAAM;IAAEI,YAAY,EAAEN,KAAK,CAACO;EAAQ,CAAC,CAAC;EAC7F,IAAI,CAACH,KAAK,EAAE;IACV,OAAOI,SAAS;EAClB;EAEA,MAAMC,SAAS,GAAG,MAAMX,gCAAgC,CAAC;IACvDE,KAAK;IACLC,MAAM;IACNC,MAAM;IACNQ,aAAa,EAAEN;EACjB,CAAC,CAAC;EAEF,IAAI,CAACK,SAAS,EAAE;IACd,OAAOD,SAAS;EAClB;EAEAX,kBAAkB,CAACc,QAAQ,CAAC,CAAC,CAACC,0BAA0B,CAACV,MAAM,CAACW,EAAE,EAAEV,MAAM,CAACM,SAAS,CAAC,CAAC;EACtF,OAAOA,SAAS;AAClB","ignoreList":[]}
|
|
@@ -6,8 +6,7 @@ export async function reissueCredentialWithAccessToken({
|
|
|
6
6
|
logger,
|
|
7
7
|
record,
|
|
8
8
|
tokenResponse,
|
|
9
|
-
clientId
|
|
10
|
-
pidSchemes
|
|
9
|
+
clientId
|
|
11
10
|
}) {
|
|
12
11
|
if (!record) {
|
|
13
12
|
throw new Error('No credential record provided for re-issuance.');
|
|
@@ -29,26 +28,23 @@ export async function reissueCredentialWithAccessToken({
|
|
|
29
28
|
logger.info('*** Starting to get new credential via re-issuance flow ***');
|
|
30
29
|
// Request a **new** credential using the *existing* configuration id
|
|
31
30
|
|
|
32
|
-
const creds = await agent.
|
|
31
|
+
const creds = await agent.openid4vc.holder.requestCredentials({
|
|
33
32
|
resolvedCredentialOffer,
|
|
34
33
|
accessToken: tokenResponse.access_token,
|
|
35
34
|
tokenType: tokenResponse.token_type || 'Bearer',
|
|
36
35
|
cNonce: tokenResponse.c_nonce,
|
|
37
36
|
clientId,
|
|
38
|
-
|
|
37
|
+
credentialConfigurationIds: [credentialConfigurationId],
|
|
39
38
|
verifyCredentialStatus: false,
|
|
40
39
|
// you’ll check after storing
|
|
41
40
|
allowedProofOfPossessionSignatureAlgorithms: ['EdDSA', 'ES256'],
|
|
42
41
|
credentialBindingResolver: async opts => customCredentialBindingResolver({
|
|
43
42
|
agent,
|
|
44
43
|
supportedDidMethods: opts.supportedDidMethods,
|
|
45
|
-
|
|
44
|
+
proofTypes: opts.proofTypes,
|
|
46
45
|
supportsAllDidMethods: opts.supportsAllDidMethods,
|
|
47
46
|
supportsJwk: opts.supportsJwk,
|
|
48
|
-
credentialFormat: opts.credentialFormat
|
|
49
|
-
// supportedCredentialId: opts.supportedCredentialId,
|
|
50
|
-
resolvedCredentialOffer: resolvedCredentialOffer,
|
|
51
|
-
pidSchemes
|
|
47
|
+
credentialFormat: opts.credentialFormat
|
|
52
48
|
})
|
|
53
49
|
});
|
|
54
50
|
logger.info('*** New credential received via re-issuance flow ***.');
|
|
@@ -70,7 +66,8 @@ export async function reissueCredentialWithAccessToken({
|
|
|
70
66
|
// })
|
|
71
67
|
// }
|
|
72
68
|
|
|
73
|
-
const
|
|
69
|
+
const requestedCredentialConfiguration = resolvedCredentialOffer.offeredCredentialConfigurations[credentialConfigurationId];
|
|
70
|
+
const openId4VcMetadata = extractOpenId4VcCredentialMetadata(requestedCredentialConfiguration, {
|
|
74
71
|
id: resolvedCredentialOffer.metadata.credentialIssuer.credential_issuer,
|
|
75
72
|
display: resolvedCredentialOffer.metadata.credentialIssuer.display
|
|
76
73
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["customCredentialBindingResolver","extractOpenId4VcCredentialMetadata","getRefreshCredentialMetadata","setOpenId4VcCredentialMetadata","setRefreshCredentialMetadata","RefreshStatus","reissueCredentialWithAccessToken","agent","logger","record","tokenResponse","clientId","
|
|
1
|
+
{"version":3,"names":["customCredentialBindingResolver","extractOpenId4VcCredentialMetadata","getRefreshCredentialMetadata","setOpenId4VcCredentialMetadata","setRefreshCredentialMetadata","RefreshStatus","reissueCredentialWithAccessToken","agent","logger","record","tokenResponse","clientId","Error","refreshMetaData","credentialConfigurationId","resolvedCredentialOffer","access_token","info","creds","openid4vc","holder","requestCredentials","accessToken","tokenType","token_type","cNonce","c_nonce","credentialConfigurationIds","verifyCredentialStatus","allowedProofOfPossessionSignatureAlgorithms","credentialBindingResolver","opts","supportedDidMethods","proofTypes","supportsAllDidMethods","supportsJwk","credentialFormat","firstCredential","credentials","newRecord","requestedCredentialConfiguration","offeredCredentialConfigurations","openId4VcMetadata","id","metadata","credentialIssuer","credential_issuer","display","refreshToken","refresh_token","lastCheckedAt","Date","now","lastCheckResult","Valid"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/reIssuance.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,48 +1,49 @@
|
|
|
1
1
|
// modules/openid/refresh/RefreshOrchestrator.ts
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import { reissueCredentialWithAccessToken } from './reIssuance';
|
|
5
|
-
import { RefreshStatus } from './types';
|
|
2
|
+
|
|
3
|
+
import { OpenIDCredentialRefreshFlowType, RefreshStatus } from './types';
|
|
6
4
|
import { credentialRegistry } from './registry';
|
|
7
5
|
import { verifyCredentialStatus } from './verifyCredentialStatus';
|
|
8
6
|
import { getRefreshCredentialMetadata, markOpenIDCredentialStatus, persistCredentialRecord, setRefreshCredentialMetadata } from '../metadata';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return {
|
|
12
|
-
id: rec.id,
|
|
13
|
-
// best-effort: SdJwt/W3C both expose claimFormat via tags in many setups.
|
|
14
|
-
// Fallback to JwtVc if unknown so UI has *some* value.
|
|
15
|
-
format: rec instanceof W3cCredentialRecord && ClaimFormat.JwtVc || rec instanceof SdJwtVcRecord && ClaimFormat.SdJwtW3cVc || ClaimFormat.JwtVc,
|
|
16
|
-
// TODO: Won't these checks against ClaimFormat always be true?
|
|
17
|
-
createdAt: (_rec$createdAt = rec.createdAt) === null || _rec$createdAt === void 0 ? void 0 : _rec$createdAt.toISOString(),
|
|
18
|
-
issuer: undefined
|
|
19
|
-
};
|
|
20
|
-
};
|
|
7
|
+
import { toOpenIDCredentialLite } from '../credentialRecord';
|
|
8
|
+
import { refreshAndQueueReplacement } from './operations';
|
|
21
9
|
export class RefreshOrchestrator {
|
|
22
10
|
intervalOn = false; // interval enabled?
|
|
23
11
|
runningOnce = false; // a run is in progress?
|
|
24
|
-
|
|
12
|
+
startupRunTriggered = false;
|
|
25
13
|
recentlyIssued = new Map();
|
|
26
|
-
checkStatusOnly = true;
|
|
27
14
|
constructor(logger, bridge, opts) {
|
|
28
15
|
this.logger = logger;
|
|
29
16
|
this.opts = {
|
|
30
17
|
intervalMs: 15 * 60 * 1000,
|
|
31
18
|
autoStart: true,
|
|
19
|
+
runOnStart: false,
|
|
20
|
+
flowType: OpenIDCredentialRefreshFlowType.FullReplacement,
|
|
32
21
|
onError: e => this.logger.error(String(e)),
|
|
33
22
|
listRecords: async () => [],
|
|
34
|
-
toLite:
|
|
23
|
+
toLite: toOpenIDCredentialLite,
|
|
35
24
|
...(opts ?? {})
|
|
36
25
|
};
|
|
37
26
|
logger.info(`🔧 [RefreshOrchestrator] initialized -> ${JSON.stringify({
|
|
38
27
|
intervalMs: this.opts.intervalMs,
|
|
39
|
-
autoStart: this.opts.autoStart
|
|
28
|
+
autoStart: this.opts.autoStart,
|
|
29
|
+
runOnStart: this.opts.runOnStart,
|
|
30
|
+
flowType: this.opts.flowType
|
|
40
31
|
})}`);
|
|
41
32
|
bridge.onReady(agent => {
|
|
42
33
|
this.agent = agent;
|
|
43
34
|
this.logger.info('🪝 [RefreshOrchestrator] Agent ready');
|
|
35
|
+
if (this.opts.runOnStart && !this.startupRunTriggered) {
|
|
36
|
+
this.startupRunTriggered = true;
|
|
37
|
+
void this.runOnce('startup');
|
|
38
|
+
}
|
|
44
39
|
if (this.opts.autoStart && this.opts.intervalMs) this.start();
|
|
45
40
|
}, true);
|
|
41
|
+
bridge.onChange(agent => {
|
|
42
|
+
if (agent) return;
|
|
43
|
+
this.agent = undefined;
|
|
44
|
+
this.logger.info('🪝 [RefreshOrchestrator] Agent cleared');
|
|
45
|
+
this.stop();
|
|
46
|
+
});
|
|
46
47
|
}
|
|
47
48
|
configure(next) {
|
|
48
49
|
const prev = {
|
|
@@ -59,7 +60,9 @@ export class RefreshOrchestrator {
|
|
|
59
60
|
};
|
|
60
61
|
this.logger.info(`🔧 [RefreshOrchestrator] configure -> ${JSON.stringify({
|
|
61
62
|
intervalMs: this.opts.intervalMs,
|
|
62
|
-
autoStart: this.opts.autoStart
|
|
63
|
+
autoStart: this.opts.autoStart,
|
|
64
|
+
runOnStart: this.opts.runOnStart,
|
|
65
|
+
flowType: this.opts.flowType
|
|
63
66
|
})}`);
|
|
64
67
|
const nowIntervalMs = this.opts.intervalMs ?? null;
|
|
65
68
|
const nowAutoStart = this.opts.autoStart ?? true;
|
|
@@ -133,8 +136,11 @@ export class RefreshOrchestrator {
|
|
|
133
136
|
for (const rec of records) {
|
|
134
137
|
// don’t block whole batch if one fails
|
|
135
138
|
try {
|
|
136
|
-
|
|
137
|
-
|
|
139
|
+
if (this.opts.flowType === OpenIDCredentialRefreshFlowType.FullReplacement) {
|
|
140
|
+
await this.refreshRecord(rec);
|
|
141
|
+
} else {
|
|
142
|
+
await this.checkRecordStatus(rec);
|
|
143
|
+
}
|
|
138
144
|
} catch (e) {
|
|
139
145
|
var _this$opts$onError, _this$opts;
|
|
140
146
|
this.logger.error(`💥 [Refresh] record ${rec.id} failed: ${String(e)}`);
|
|
@@ -165,6 +171,7 @@ export class RefreshOrchestrator {
|
|
|
165
171
|
shouldSkip,
|
|
166
172
|
markRefreshing,
|
|
167
173
|
clearRefreshing,
|
|
174
|
+
clearExpired,
|
|
168
175
|
upsert,
|
|
169
176
|
markInvalid,
|
|
170
177
|
setLastSweep
|
|
@@ -189,19 +196,22 @@ export class RefreshOrchestrator {
|
|
|
189
196
|
this.logger.info(`🧭 [Refresh] check credential ${id}`);
|
|
190
197
|
try {
|
|
191
198
|
// 3) verification
|
|
192
|
-
const
|
|
199
|
+
const status = await verifyCredentialStatus(rec, this.logger);
|
|
193
200
|
const now = Date.now();
|
|
194
201
|
const meta = getRefreshCredentialMetadata(rec) ?? {};
|
|
195
|
-
meta.lastCheckResult =
|
|
202
|
+
meta.lastCheckResult = status;
|
|
196
203
|
meta.lastCheckedAt = now;
|
|
197
204
|
meta.attemptCount = (meta.attemptCount ?? 0) + 1;
|
|
198
205
|
setRefreshCredentialMetadata(rec, meta);
|
|
199
206
|
await persistCredentialRecord(this.agent.context, rec);
|
|
200
|
-
if (
|
|
207
|
+
if (status === RefreshStatus.Valid) {
|
|
201
208
|
this.logger.info(`✅ [Refresh] valid → ${id}`);
|
|
202
|
-
|
|
209
|
+
clearExpired(id);
|
|
210
|
+
} else if (status === RefreshStatus.Invalid) {
|
|
203
211
|
this.logger.info(`❌ [Refresh] invalid → ${id}`);
|
|
204
|
-
markInvalid(id);
|
|
212
|
+
markInvalid(id);
|
|
213
|
+
} else {
|
|
214
|
+
this.logger.warn(`⚠️ [Refresh] status check error → ${id}`);
|
|
205
215
|
}
|
|
206
216
|
setLastSweep(new Date(now).toISOString());
|
|
207
217
|
} catch (error) {
|
|
@@ -218,9 +228,8 @@ export class RefreshOrchestrator {
|
|
|
218
228
|
markRefreshing,
|
|
219
229
|
clearRefreshing,
|
|
220
230
|
clearExpired,
|
|
221
|
-
markExpiredWithReplacement,
|
|
222
|
-
blockAsFailed,
|
|
223
231
|
blockAsSucceeded,
|
|
232
|
+
markInvalid,
|
|
224
233
|
upsert
|
|
225
234
|
} = credentialRegistry.getState();
|
|
226
235
|
const id = rec.id;
|
|
@@ -243,8 +252,8 @@ export class RefreshOrchestrator {
|
|
|
243
252
|
this.logger.info(`🧭 [Refresh] check credential ${id}`);
|
|
244
253
|
try {
|
|
245
254
|
// 3) verification
|
|
246
|
-
const
|
|
247
|
-
if (
|
|
255
|
+
const status = await verifyCredentialStatus(rec, this.logger);
|
|
256
|
+
if (status === RefreshStatus.Valid) {
|
|
248
257
|
this.logger.info(`✅ [Refresh] valid → ${id}`);
|
|
249
258
|
// If it was previously expired for any reason, clear that and block as succeeded
|
|
250
259
|
clearExpired(id);
|
|
@@ -252,6 +261,15 @@ export class RefreshOrchestrator {
|
|
|
252
261
|
// blockAsSucceeded(id)
|
|
253
262
|
return;
|
|
254
263
|
}
|
|
264
|
+
if (status === RefreshStatus.Error) {
|
|
265
|
+
this.logger.warn(`⚠️ [Refresh] status check failed; deferring re-issue → ${id}`);
|
|
266
|
+
await markOpenIDCredentialStatus({
|
|
267
|
+
credential: rec,
|
|
268
|
+
status: RefreshStatus.Error,
|
|
269
|
+
agentContext: this.agent.context
|
|
270
|
+
});
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
255
273
|
|
|
256
274
|
// Invalid case:
|
|
257
275
|
|
|
@@ -260,48 +278,28 @@ export class RefreshOrchestrator {
|
|
|
260
278
|
status: RefreshStatus.Invalid,
|
|
261
279
|
agentContext: this.agent.context
|
|
262
280
|
});
|
|
263
|
-
|
|
264
|
-
// 4) needs refresh → get access token
|
|
265
281
|
this.logger.info(`♻️ [Refresh] invalid, attempting re-issue → ${id}`);
|
|
266
|
-
const
|
|
267
|
-
logger: this.logger,
|
|
268
|
-
cred: rec,
|
|
269
|
-
agentContext: this.agent.context
|
|
270
|
-
});
|
|
271
|
-
if (!token) {
|
|
272
|
-
const msg = `no refresh token available`;
|
|
273
|
-
this.logger.warn(`⚠️ [Refresh] ${msg} for ${id}`);
|
|
274
|
-
blockAsFailed(id, msg);
|
|
275
|
-
return;
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
// 5) re-issue
|
|
279
|
-
const newRecord = await reissueCredentialWithAccessToken({
|
|
282
|
+
const newRecord = await refreshAndQueueReplacement({
|
|
280
283
|
agent: this.agent,
|
|
281
284
|
logger: this.logger,
|
|
282
285
|
record: rec,
|
|
283
|
-
|
|
286
|
+
toLite: this.opts.toLite
|
|
284
287
|
});
|
|
285
|
-
if (newRecord) {
|
|
286
|
-
|
|
287
|
-
// Queue a replacement for UI/notifications and block the old one as succeeded
|
|
288
|
-
markExpiredWithReplacement(id, this.opts.toLite(newRecord));
|
|
289
|
-
blockAsSucceeded(id);
|
|
290
|
-
this.recentlyIssued.set(newRecord.id, newRecord);
|
|
291
|
-
} else {
|
|
292
|
-
const msg = `re-issue returned no record`;
|
|
288
|
+
if (!newRecord) {
|
|
289
|
+
const msg = 'credential refresh did not yield a replacement';
|
|
293
290
|
this.logger.warn(`⚠️ [Refresh] ${msg} for ${id}`);
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
credential: rec,
|
|
297
|
-
status: RefreshStatus.Invalid,
|
|
298
|
-
agentContext: this.agent.context
|
|
299
|
-
});
|
|
291
|
+
markInvalid(id);
|
|
292
|
+
return;
|
|
300
293
|
}
|
|
294
|
+
this.logger.info(`💾 [Refresh] new credential → ${newRecord.id}`);
|
|
295
|
+
blockAsSucceeded(id);
|
|
296
|
+
this.recentlyIssued.set(newRecord.id, newRecord);
|
|
301
297
|
} catch (e) {
|
|
298
|
+
var _this$opts$onError4, _this$opts4;
|
|
302
299
|
const err = String(e);
|
|
303
300
|
this.logger.error(`💥 [Refresh] error on ${id}: ${err}`);
|
|
304
|
-
|
|
301
|
+
(_this$opts$onError4 = (_this$opts4 = this.opts).onError) === null || _this$opts$onError4 === void 0 || _this$opts$onError4.call(_this$opts4, e);
|
|
302
|
+
markInvalid(id);
|
|
305
303
|
} finally {
|
|
306
304
|
// 6) clear in-flight marker
|
|
307
305
|
clearRefreshing(id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ClaimFormat","SdJwtVcRecord","W3cCredentialRecord","refreshAccessToken","reissueCredentialWithAccessToken","RefreshStatus","credentialRegistry","verifyCredentialStatus","getRefreshCredentialMetadata","markOpenIDCredentialStatus","persistCredentialRecord","setRefreshCredentialMetadata","defaultToLite","rec","_rec$createdAt","id","format","JwtVc","SdJwtW3cVc","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","getState","isValid","now","Date","meta","lastCheckResult","Valid","Invalid","lastCheckedAt","attemptCount","context","_this$opts$onError3","_this$opts3","refreshRecord","clearExpired","markExpiredWithReplacement","blockAsFailed","blockAsSucceeded","credential","status","agentContext","token","cred","msg","newRecord","record","tokenResponse","set","err"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshOrchestrator.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["OpenIDCredentialRefreshFlowType","RefreshStatus","credentialRegistry","verifyCredentialStatus","getRefreshCredentialMetadata","markOpenIDCredentialStatus","persistCredentialRecord","setRefreshCredentialMetadata","toOpenIDCredentialLite","refreshAndQueueReplacement","RefreshOrchestrator","intervalOn","runningOnce","startupRunTriggered","recentlyIssued","Map","constructor","logger","bridge","opts","intervalMs","autoStart","runOnStart","flowType","FullReplacement","onError","e","error","String","listRecords","toLite","info","JSON","stringify","onReady","agent","runOnce","start","onChange","undefined","stop","configure","next","prev","agentReady","nowIntervalMs","nowAutoStart","isRunning","timer","setInterval","clearInterval","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","getState","status","now","Date","meta","lastCheckResult","lastCheckedAt","attemptCount","context","Valid","Invalid","toISOString","_this$opts$onError3","_this$opts3","blockAsSucceeded","Error","credential","agentContext","newRecord","record","msg","set","_this$opts$onError4","_this$opts4","err"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshOrchestrator.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,20 +14,16 @@ export async function refreshAccessToken({
|
|
|
14
14
|
logger.info(`[refreshAccessToken] Found refresh metadata for credential: ${cred.id}`);
|
|
15
15
|
const {
|
|
16
16
|
refreshToken,
|
|
17
|
-
|
|
17
|
+
tokenEndpoint
|
|
18
18
|
} = refreshMetaData;
|
|
19
19
|
try {
|
|
20
|
-
if (!
|
|
21
|
-
throw new Error('No
|
|
20
|
+
if (!tokenEndpoint) {
|
|
21
|
+
throw new Error('No token endpoint found in the credential offer metadata');
|
|
22
22
|
}
|
|
23
|
-
logger.info(`[refreshAccessToken] Found
|
|
23
|
+
logger.info(`[refreshAccessToken] Found token endpoint for credential: ${cred.id}: ${tokenEndpoint}`);
|
|
24
24
|
|
|
25
25
|
// Build token endpoint:
|
|
26
|
-
|
|
27
|
-
const tokenUrl = authServer.endsWith('/') ? authServer.slice(0, -1) : authServer;
|
|
28
|
-
// const tokenUrl = new URL('token', authServer)
|
|
29
|
-
// tokenUrl.searchParams.set('force', 'false')
|
|
30
|
-
|
|
26
|
+
const tokenUrl = tokenEndpoint.endsWith('/') ? tokenEndpoint.slice(0, -1) : tokenEndpoint;
|
|
31
27
|
logger.info(`[refreshAccessToken] Refreshing access token at URL: ${tokenUrl} for credential: ${cred.id}`);
|
|
32
28
|
const body = new URLSearchParams({
|
|
33
29
|
grant_type: 'refresh_token',
|
|
@@ -45,20 +41,24 @@ export async function refreshAccessToken({
|
|
|
45
41
|
},
|
|
46
42
|
body: body.toString()
|
|
47
43
|
});
|
|
48
|
-
logger.info(`[refreshAccessToken]
|
|
44
|
+
logger.info(`[refreshAccessToken] Token endpoint response status: ${res.status}`);
|
|
49
45
|
if (!res.ok) {
|
|
50
46
|
const errText = await res.text();
|
|
51
47
|
throw new Error(`Refresh failed ${res.status}: ${errText}`);
|
|
52
48
|
}
|
|
53
49
|
const data = await res.json();
|
|
54
|
-
logger.info(`[refreshAccessToken]
|
|
50
|
+
logger.info(`[refreshAccessToken] Token refresh succeeded: ${JSON.stringify({
|
|
51
|
+
token_type: data.token_type,
|
|
52
|
+
expires_in: data.expires_in,
|
|
53
|
+
has_access_token: Boolean(data.access_token),
|
|
54
|
+
has_refresh_token: Boolean(data.refresh_token)
|
|
55
|
+
})}`);
|
|
55
56
|
|
|
56
57
|
// If refresh token rotated, persist it
|
|
57
58
|
if (data.refresh_token && data.refresh_token !== refreshToken) {
|
|
58
59
|
logger.info(`[refreshAccessToken] Refresh token rotated; saving new one`);
|
|
59
60
|
setRefreshCredentialMetadata(cred, {
|
|
60
61
|
...refreshMetaData,
|
|
61
|
-
authServer: authServer,
|
|
62
62
|
refreshToken: data.refresh_token
|
|
63
63
|
});
|
|
64
64
|
await persistCredentialRecord(agentContext, cred);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getRefreshCredentialMetadata","persistCredentialRecord","setRefreshCredentialMetadata","refreshAccessToken","logger","cred","agentContext","info","id","refreshMetaData","error","refreshToken","
|
|
1
|
+
{"version":3,"names":["getRefreshCredentialMetadata","persistCredentialRecord","setRefreshCredentialMetadata","refreshAccessToken","logger","cred","agentContext","info","id","refreshMetaData","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"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshToken.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -106,7 +106,7 @@ export const credentialRegistry = createStore((set, get) => ({
|
|
|
106
106
|
shouldSkip: id => {
|
|
107
107
|
const s = get();
|
|
108
108
|
if (s.refreshing[id]) return true; // in-progress
|
|
109
|
-
if (s.expired.includes(id)) return true; // replacement already queued
|
|
109
|
+
if (s.expired.includes(id) && Boolean(s.replacements[id])) return true; // replacement already queued
|
|
110
110
|
if (s.blocked[id]) return true; // previously succeeded/failed
|
|
111
111
|
return false;
|
|
112
112
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createStore","credentialRegistry","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":["createStore","credentialRegistry","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":"AACA,SAASA,WAAW,QAAQ,iBAAiB;;AAiB7C;;AA4DA,OAAO,MAAMC,kBAAkB,GAAGD,WAAW,CAAgB,CAACE,GAAG,EAAEC,GAAG,MAAM;EAC1EC,IAAI,EAAE,CAAC,CAAC;EACRC,OAAO,EAAE,EAAE;EACXC,OAAO,EAAE,EAAE;EACXC,YAAY,EAAE,CAAC,CAAC;EAChBC,UAAU,EAAE,CAAC,CAAC;EACdC,OAAO,EAAE,CAAC,CAAC;EACXC,WAAW,EAAEC,SAAS;EAEtBC,MAAM,EAAGC,IAAI,IAAKX,GAAG,CAAEY,CAAC,KAAM;IAAEV,IAAI,EAAE;MAAE,GAAGU,CAAC,CAACV,IAAI;MAAE,CAACS,IAAI,CAACE,EAAE,GAAGF;IAAK;EAAE,CAAC,CAAC,CAAC;EAExEG,cAAc,EAAGD,EAAE,IAAKb,GAAG,CAAEY,CAAC,KAAM;IAAEN,UAAU,EAAE;MAAE,GAAGM,CAAC,CAACN,UAAU;MAAE,CAACO,EAAE,GAAG;IAAK;EAAE,CAAC,CAAC,CAAC;EAErFE,eAAe,EAAGF,EAAE,IAClBb,GAAG,CAAEY,CAAC,IAAK;IACT;IACA,MAAM;MAAE,CAACC,EAAE,GAAGG,KAAK;MAAE,GAAGC;IAAK,CAAC,GAAGL,CAAC,CAACN,UAAU;IAC7C,OAAO;MAAEA,UAAU,EAAEW;IAAK,CAAC;EAC7B,CAAC,CAAC;EAEJC,0BAA0B,EAAEA,CAACC,KAAK,EAAEC,WAAW,KAC7CpB,GAAG,CAAEY,CAAC,KAAM;IACVT,OAAO,EAAES,CAAC,CAACT,OAAO,CAACkB,QAAQ,CAACF,KAAK,CAAC,GAAGP,CAAC,CAACT,OAAO,GAAG,CAAC,GAAGS,CAAC,CAACT,OAAO,EAAEgB,KAAK,CAAC;IACtEf,OAAO,EAAEQ,CAAC,CAACR,OAAO,CAACiB,QAAQ,CAACF,KAAK,CAAC,GAAGP,CAAC,CAACR,OAAO,GAAG,CAAC,GAAGQ,CAAC,CAACR,OAAO,EAAEe,KAAK,CAAC;IACtEd,YAAY,EAAE;MAAE,GAAGO,CAAC,CAACP,YAAY;MAAE,CAACc,KAAK,GAAGC;IAAY;EAC1D,CAAC,CAAC,CAAC;EAELE,WAAW,EAAGT,EAAE,IACdb,GAAG,CAAEY,CAAC,KAAM;IACVT,OAAO,EAAES,CAAC,CAACT,OAAO,CAACkB,QAAQ,CAACR,EAAE,CAAC,GAAGD,CAAC,CAACT,OAAO,GAAG,CAAC,GAAGS,CAAC,CAACT,OAAO,EAAEU,EAAE,CAAC;IAChET,OAAO,EAAEQ,CAAC,CAACR,OAAO,CAACiB,QAAQ,CAACR,EAAE,CAAC,GAAGD,CAAC,CAACR,OAAO,GAAG,CAAC,GAAGQ,CAAC,CAACR,OAAO,EAAES,EAAE;EACjE,CAAC,CAAC,CAAC;EAELU,iBAAiB,EAAGJ,KAAK,IACvBnB,GAAG,CAAEY,CAAC,IAAK;IACT,MAAMY,IAAI,GAAGZ,CAAC,CAACP,YAAY,CAACc,KAAK,CAAC;IAClC,IAAI,CAACK,IAAI,EAAE,OAAOZ,CAAC;IACnB,MAAMV,IAAI,GAAG;MAAE,GAAGU,CAAC,CAACV;IAAK,CAAC;IAC1B,OAAOA,IAAI,CAACiB,KAAK,CAAC;IAClBjB,IAAI,CAACsB,IAAI,CAACX,EAAE,CAAC,GAAGW,IAAI;IACpB;IACA,MAAM;MAAE,CAACL,KAAK,GAAGH,KAAK;MAAE,GAAGS;IAAS,CAAC,GAAGb,CAAC,CAACP,YAAY;IACtD,OAAO;MACLH,IAAI;MACJG,YAAY,EAAEoB,QAAQ;MACtBtB,OAAO,EAAES,CAAC,CAACT,OAAO,CAACuB,MAAM,CAAEC,CAAC,IAAKA,CAAC,KAAKR,KAAK,CAAC;MAC7C;MACAZ,OAAO,EAAE;QAAE,GAAGK,CAAC,CAACL,OAAO;QAAE,CAACY,KAAK,GAAG;UAAES,MAAM,EAAE,WAAW;UAAEC,EAAE,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC;QAAE;MAAE;IAC1F,CAAC;EACH,CAAC,CAAC;EAEJC,YAAY,EAAGnB,EAAE,IACfb,GAAG,CAAEY,CAAC,KAAM;IACVT,OAAO,EAAES,CAAC,CAACT,OAAO,CAACuB,MAAM,CAAEC,CAAC,IAAKA,CAAC,KAAKd,EAAE;EAC3C,CAAC,CAAC,CAAC;EAELoB,gBAAgB,EAAGpB,EAAE,IACnBb,GAAG,CAAEY,CAAC,KAAM;IACVL,OAAO,EAAE;MAAE,GAAGK,CAAC,CAACL,OAAO;MAAE,CAACM,EAAE,GAAG;QAAEe,MAAM,EAAE,WAAW;QAAEC,EAAE,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC;MAAE;IAAE;EACvF,CAAC,CAAC,CAAC;EAELG,aAAa,EAAEA,CAACrB,EAAE,EAAEsB,KAAK,KACvBnC,GAAG,CAAEY,CAAC,KAAM;IACVL,OAAO,EAAE;MAAE,GAAGK,CAAC,CAACL,OAAO;MAAE,CAACM,EAAE,GAAG;QAAEe,MAAM,EAAE,QAAQ;QAAEC,EAAE,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;QAAEI;MAAM;IAAE;EAC3F,CAAC,CAAC,CAAC;EAELC,OAAO,EAAGvB,EAAE,IACVb,GAAG,CAAEY,CAAC,IAAK;IACT;IACA,MAAM;MAAE,CAACC,EAAE,GAAGG,KAAK;MAAE,GAAGC;IAAK,CAAC,GAAGL,CAAC,CAACL,OAAO;IAC1C,OAAO;MAAEA,OAAO,EAAEU;IAAK,CAAC;EAC1B,CAAC,CAAC;EAEJoB,UAAU,EAAGxB,EAAE,IAAK;IAClB,MAAMD,CAAC,GAAGX,GAAG,CAAC,CAAC;IACf,IAAIW,CAAC,CAACN,UAAU,CAACO,EAAE,CAAC,EAAE,OAAO,IAAI,EAAC;IAClC,IAAID,CAAC,CAACT,OAAO,CAACkB,QAAQ,CAACR,EAAE,CAAC,IAAIyB,OAAO,CAAC1B,CAAC,CAACP,YAAY,CAACQ,EAAE,CAAC,CAAC,EAAE,OAAO,IAAI,EAAC;IACvE,IAAID,CAAC,CAACL,OAAO,CAACM,EAAE,CAAC,EAAE,OAAO,IAAI,EAAC;IAC/B,OAAO,KAAK;EACd,CAAC;EAED0B,YAAY,EAAGC,GAAG,IAAKxC,GAAG,CAAC;IAAEQ,WAAW,EAAEgC;EAAI,CAAC,CAAC;EAEhDC,KAAK,EAAEA,CAAA,KACLzC,GAAG,CAAC;IACFE,IAAI,EAAE,CAAC,CAAC;IACRC,OAAO,EAAE,EAAE;IACXC,OAAO,EAAE,EAAE;IACXC,YAAY,EAAE,CAAC,CAAC;IAChBC,UAAU,EAAE,CAAC,CAAC;IACdC,OAAO,EAAE,CAAC,CAAC;IACXC,WAAW,EAAEC;EACf,CAAC;AACL,CAAC,CAAC,CAAC;;AAEH;AACA,OAAO,MAAMiC,YAAY,GAAGA,CAAA,KAAM3C,kBAAkB,CAAC4C,QAAQ,CAAC,CAAC;AAC/D,OAAO,MAAMC,cAAc,GAAIC,OAAmC,IAChE9C,kBAAkB,CAAC+C,QAAQ,CAAElC,CAAC,IAAK;EACjCiC,OAAO,CAACjC,CAAC,CAAC;EACV,OAAOA,CAAC;AACV,CAAC,CAAC;AAEJ,OAAO,MAAMmC,0BAA0B,GAAIC,aAAqB,IAAyB;EACvF,MAAM;IAAE3C;EAAa,CAAC,GAAGN,kBAAkB,CAAC4C,QAAQ,CAAC,CAAC;EACtD,KAAK,MAAM,CAACxB,KAAK,EAAEK,IAAI,CAAC,IAAIyB,MAAM,CAACC,OAAO,CAAC7C,YAAY,CAAC,EAAE;IACxD,IAAImB,IAAI,CAACX,EAAE,KAAKmC,aAAa,EAAE,OAAO7B,KAAK;EAC7C;EACA,OAAOV,SAAS;AAClB,CAAC","ignoreList":[]}
|
|
@@ -4,6 +4,17 @@ export let RefreshStatus = /*#__PURE__*/function (RefreshStatus) {
|
|
|
4
4
|
RefreshStatus["Error"] = "error";
|
|
5
5
|
return RefreshStatus;
|
|
6
6
|
}({});
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Controls how invalid OpenID credentials are handled after status checks.
|
|
10
|
+
* - InvalidThenOnDemand: show invalid notification; replacement is attempted on user action.
|
|
11
|
+
* - FullReplacement: orchestrator attempts replacement immediately and surfaces replacement notification when available.
|
|
12
|
+
*/
|
|
13
|
+
export let OpenIDCredentialRefreshFlowType = /*#__PURE__*/function (OpenIDCredentialRefreshFlowType) {
|
|
14
|
+
OpenIDCredentialRefreshFlowType["InvalidThenOnDemand"] = "invalid-then-on-demand";
|
|
15
|
+
OpenIDCredentialRefreshFlowType["FullReplacement"] = "full-replacement";
|
|
16
|
+
return OpenIDCredentialRefreshFlowType;
|
|
17
|
+
}({});
|
|
7
18
|
export let OpenIDCustomNotificationType = /*#__PURE__*/function (OpenIDCustomNotificationType) {
|
|
8
19
|
OpenIDCustomNotificationType["CredentialReplacementAvailable"] = "CustomNotificationOpenIDCredential";
|
|
9
20
|
OpenIDCustomNotificationType["CredentialExpired"] = "CredentialExpired";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RefreshStatus","OpenIDCustomNotificationType"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/types.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["RefreshStatus","OpenIDCredentialRefreshFlowType","OpenIDCustomNotificationType"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/types.ts"],"mappings":"AAeA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;;AAMzB;AACA;AACA;AACA;AACA;AACA,WAAYC,+BAA+B,0BAA/BA,+BAA+B;EAA/BA,+BAA+B;EAA/BA,+BAA+B;EAAA,OAA/BA,+BAA+B;AAAA;AAmD3C,WAAYC,4BAA4B,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA","ignoreList":[]}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
// modules/openid/refresh/verifyCredentialStatus.ts
|
|
2
2
|
|
|
3
3
|
import { getListFromStatusListJWT, getStatusListFromJWT } from '@sd-jwt/jwt-status-list';
|
|
4
|
+
import { RefreshStatus } from './types';
|
|
4
5
|
/**
|
|
5
6
|
* Verifies credential status for Sd-JWT credentials using status lists.
|
|
6
7
|
* Non–Sd-JWT credentials (W3C jwt_vc_json without status list, or mdoc) are treated as valid here.
|
|
7
|
-
* Returns true if valid; false if revoked/invalid or on error.
|
|
8
8
|
*/
|
|
9
9
|
export async function verifyCredentialStatus(rec, logger) {
|
|
10
10
|
try {
|
|
11
11
|
// Only Sd-JWT creds have compactSdJwtVc in this codebase
|
|
12
|
-
if (!('compactSdJwtVc' in rec)) return
|
|
12
|
+
if (!('compactSdJwtVc' in rec)) return RefreshStatus.Valid;
|
|
13
13
|
logger === null || logger === void 0 || logger.info(`[Verifier] Verifying credential status for Sd-JWT credential: ${rec.id}`);
|
|
14
14
|
const ref = getStatusListFromJWT(rec.firstCredential.compact);
|
|
15
15
|
const res = await fetch(ref.uri);
|
|
16
16
|
if (!res.ok) throw new Error(`HTTP ${res.status}`);
|
|
17
17
|
const jwt = await res.text();
|
|
18
18
|
const list = getListFromStatusListJWT(jwt);
|
|
19
|
-
const
|
|
20
|
-
logger === null || logger === void 0 || logger.info(`${
|
|
21
|
-
return
|
|
19
|
+
const status = list.getStatus(ref.idx) === 0 ? RefreshStatus.Valid : RefreshStatus.Invalid;
|
|
20
|
+
logger === null || logger === void 0 || logger.info(`${status === RefreshStatus.Valid ? '✅' : '❌'} [Verifier] ${rec.id} → ${status}`);
|
|
21
|
+
return status;
|
|
22
22
|
} catch (e) {
|
|
23
23
|
var _logger$error;
|
|
24
24
|
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)}`);
|
|
25
|
-
return
|
|
25
|
+
return RefreshStatus.Error;
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
//# sourceMappingURL=verifyCredentialStatus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getListFromStatusListJWT","getStatusListFromJWT","verifyCredentialStatus","rec","logger","info","id","ref","firstCredential","compact","res","fetch","uri","ok","Error","status","jwt","text","list","getStatus","idx","e","_logger$error","error","call","String"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/verifyCredentialStatus.ts"],"mappings":"AAAA;;AAEA,SAASA,wBAAwB,EAAEC,oBAAoB,QAAQ,yBAAyB;
|
|
1
|
+
{"version":3,"names":["getListFromStatusListJWT","getStatusListFromJWT","RefreshStatus","verifyCredentialStatus","rec","logger","Valid","info","id","ref","firstCredential","compact","res","fetch","uri","ok","Error","status","jwt","text","list","getStatus","idx","Invalid","e","_logger$error","error","call","String"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/verifyCredentialStatus.ts"],"mappings":"AAAA;;AAEA,SAASA,wBAAwB,EAAEC,oBAAoB,QAAQ,yBAAyB;AAExF,SAASC,aAAa,QAAQ,SAAS;AAIvC;AACA;AACA;AACA;AACA,OAAO,eAAeC,sBAAsBA,CAACC,GAAY,EAAEC,MAAqB,EAA0B;EACxG,IAAI;IACF;IACA,IAAI,EAAE,gBAAgB,IAAID,GAAG,CAAC,EAAE,OAAOF,aAAa,CAACI,KAAK;IAE1DD,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEE,IAAI,CAAC,iEAAiEH,GAAG,CAACI,EAAE,EAAE,CAAC;IAEvF,MAAMC,GAAG,GAAGR,oBAAoB,CAACG,GAAG,CAACM,eAAe,CAACC,OAAO,CAAC;IAC7D,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAACJ,GAAG,CAACK,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,GAAGpB,wBAAwB,CAACkB,GAAG,CAAC;IAC1C,MAAMD,MAAM,GAAGG,IAAI,CAACC,SAAS,CAACZ,GAAG,CAACa,GAAG,CAAC,KAAK,CAAC,GAAGpB,aAAa,CAACI,KAAK,GAAGJ,aAAa,CAACqB,OAAO;IAE1FlB,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEE,IAAI,CAAC,GAAGU,MAAM,KAAKf,aAAa,CAACI,KAAK,GAAG,GAAG,GAAG,GAAG,eAAeF,GAAG,CAACI,EAAE,MAAMS,MAAM,EAAE,CAAC;IAC9F,OAAOA,MAAM;EACf,CAAC,CAAC,OAAOO,CAAC,EAAE;IAAA,IAAAC,aAAA;IACVpB,MAAM,aAANA,MAAM,gBAAAoB,aAAA,GAANpB,MAAM,CAAEqB,KAAK,cAAAD,aAAA,eAAbA,aAAA,CAAAE,IAAA,CAAAtB,MAAM,EAAU,iBAAiB,IAAI,IAAID,GAAG,GAAGA,GAAG,CAACI,EAAE,GAAG,SAAS,mBAAmBoB,MAAM,CAACJ,CAAC,CAAC,EAAE,CAAC;IAChG,OAAOtB,aAAa,CAACc,KAAK;EAC5B;AACF","ignoreList":[]}
|