@bifold/core 2.10.2 → 2.11.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/listItems/NotificationListItem.js +19 -11
- package/lib/commonjs/components/listItems/NotificationListItem.js.map +1 -1
- package/lib/commonjs/components/misc/CredentialCard.js +3 -1
- package/lib/commonjs/components/misc/CredentialCard.js.map +1 -1
- package/lib/commonjs/components/misc/CredentialCard10.js +13 -5
- package/lib/commonjs/components/misc/CredentialCard10.js.map +1 -1
- package/lib/commonjs/components/misc/CredentialCard11.js +25 -22
- package/lib/commonjs/components/misc/CredentialCard11.js.map +1 -1
- package/lib/commonjs/components/views/CredentialDetailPrimaryHeader.js +8 -7
- package/lib/commonjs/components/views/CredentialDetailPrimaryHeader.js.map +1 -1
- package/lib/commonjs/components/views/KeyboardView.js +19 -4
- package/lib/commonjs/components/views/KeyboardView.js.map +1 -1
- package/lib/commonjs/constants.js +1 -0
- package/lib/commonjs/constants.js.map +1 -1
- package/lib/commonjs/container-api.js +3 -1
- package/lib/commonjs/container-api.js.map +1 -1
- package/lib/commonjs/container-impl.js +16 -0
- package/lib/commonjs/container-impl.js.map +1 -1
- package/lib/commonjs/hooks/notifications.js +4 -2
- package/lib/commonjs/hooks/notifications.js.map +1 -1
- package/lib/commonjs/hooks/useBifoldAgentSetup.js +5 -3
- package/lib/commonjs/hooks/useBifoldAgentSetup.js.map +1 -1
- package/lib/commonjs/index.js +16 -0
- 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/openid/components/OpenIDCredentialCard.js +41 -1
- package/lib/commonjs/modules/openid/components/OpenIDCredentialCard.js.map +1 -1
- package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js +34 -111
- package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
- package/lib/commonjs/modules/openid/hooks/openid.js +38 -6
- package/lib/commonjs/modules/openid/hooks/openid.js.map +1 -1
- package/lib/commonjs/modules/openid/hooks/useAcceptReplacement.js +82 -0
- package/lib/commonjs/modules/openid/hooks/useAcceptReplacement.js.map +1 -0
- package/lib/commonjs/modules/openid/hooks/useCredentialErrorsFromRegistry.js +60 -0
- package/lib/commonjs/modules/openid/hooks/useCredentialErrorsFromRegistry.js.map +1 -0
- package/lib/commonjs/modules/openid/hooks/useDeclineReplacement.js +84 -0
- package/lib/commonjs/modules/openid/hooks/useDeclineReplacement.js.map +1 -0
- package/lib/commonjs/modules/openid/hooks/useOpenIdReplacementNavigation.js +55 -0
- package/lib/commonjs/modules/openid/hooks/useOpenIdReplacementNavigation.js.map +1 -0
- package/lib/commonjs/modules/openid/hooks/useReplacementNotifications.js +82 -0
- package/lib/commonjs/modules/openid/hooks/useReplacementNotifications.js.map +1 -0
- package/lib/commonjs/modules/openid/metadata.js +60 -1
- package/lib/commonjs/modules/openid/metadata.js.map +1 -1
- package/lib/commonjs/modules/openid/notification.js +42 -0
- package/lib/commonjs/modules/openid/notification.js.map +1 -0
- package/lib/commonjs/modules/openid/offerResolve.js +6 -0
- package/lib/commonjs/modules/openid/offerResolve.js.map +1 -1
- package/lib/commonjs/modules/openid/refresh/reIssuance.js +95 -0
- package/lib/commonjs/modules/openid/refresh/reIssuance.js.map +1 -0
- package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js +265 -0
- package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js.map +1 -0
- package/lib/commonjs/modules/openid/refresh/refreshToken.js +78 -0
- package/lib/commonjs/modules/openid/refresh/refreshToken.js.map +1 -0
- package/lib/commonjs/modules/openid/refresh/registery.js +143 -0
- package/lib/commonjs/modules/openid/refresh/registery.js.map +1 -0
- package/lib/commonjs/modules/openid/refresh/types.js +17 -0
- package/lib/commonjs/modules/openid/refresh/types.js.map +1 -0
- package/lib/commonjs/modules/openid/refresh/verifyCredentialStatus.js +34 -0
- package/lib/commonjs/modules/openid/refresh/verifyCredentialStatus.js.map +1 -0
- package/lib/commonjs/modules/openid/screens/OpenIDCredentialOffer.js +39 -2
- package/lib/commonjs/modules/openid/screens/OpenIDCredentialOffer.js.map +1 -1
- package/lib/commonjs/modules/openid/utils/utils.js +66 -0
- package/lib/commonjs/modules/openid/utils/utils.js.map +1 -1
- package/lib/commonjs/screens/CredentialDetails.js +28 -6
- package/lib/commonjs/screens/CredentialDetails.js.map +1 -1
- package/lib/commonjs/screens/CredentialOffer.js +6 -9
- package/lib/commonjs/screens/CredentialOffer.js.map +1 -1
- package/lib/commonjs/screens/CredentialOfferAccept.js +18 -2
- package/lib/commonjs/screens/CredentialOfferAccept.js.map +1 -1
- package/lib/commonjs/screens/Developer.js +26 -0
- package/lib/commonjs/screens/Developer.js.map +1 -1
- package/lib/commonjs/screens/Home.js +39 -1
- package/lib/commonjs/screens/Home.js.map +1 -1
- package/lib/commonjs/screens/ListCredentials.js +2 -2
- package/lib/commonjs/screens/ListCredentials.js.map +1 -1
- package/lib/commonjs/screens/ProofChangeCredential.js +3 -3
- package/lib/commonjs/screens/ProofChangeCredential.js.map +1 -1
- package/lib/commonjs/screens/ProofRequest.js +4 -4
- package/lib/commonjs/screens/ProofRequest.js.map +1 -1
- package/lib/commonjs/services/AgentBridge.js +90 -0
- package/lib/commonjs/services/AgentBridge.js.map +1 -0
- package/lib/commonjs/types/credentials.js +9 -0
- package/lib/commonjs/types/credentials.js.map +1 -1
- package/lib/commonjs/utils/agent.js +1 -1
- package/lib/commonjs/utils/agent.js.map +1 -1
- package/lib/commonjs/utils/cred-def.js +50 -43
- package/lib/commonjs/utils/cred-def.js.map +1 -1
- package/lib/commonjs/utils/credential.js +217 -1
- package/lib/commonjs/utils/credential.js.map +1 -1
- package/lib/commonjs/utils/helpers.js +83 -22
- package/lib/commonjs/utils/helpers.js.map +1 -1
- package/lib/module/components/listItems/NotificationListItem.js +19 -11
- package/lib/module/components/listItems/NotificationListItem.js.map +1 -1
- package/lib/module/components/misc/CredentialCard.js +3 -1
- package/lib/module/components/misc/CredentialCard.js.map +1 -1
- package/lib/module/components/misc/CredentialCard10.js +14 -6
- package/lib/module/components/misc/CredentialCard10.js.map +1 -1
- package/lib/module/components/misc/CredentialCard11.js +17 -14
- package/lib/module/components/misc/CredentialCard11.js.map +1 -1
- package/lib/module/components/views/CredentialDetailPrimaryHeader.js +9 -8
- package/lib/module/components/views/CredentialDetailPrimaryHeader.js.map +1 -1
- package/lib/module/components/views/KeyboardView.js +19 -4
- package/lib/module/components/views/KeyboardView.js.map +1 -1
- package/lib/module/constants.js +1 -0
- package/lib/module/constants.js.map +1 -1
- package/lib/module/container-api.js +3 -1
- package/lib/module/container-api.js.map +1 -1
- package/lib/module/container-impl.js +16 -0
- package/lib/module/container-impl.js.map +1 -1
- package/lib/module/hooks/notifications.js +4 -2
- package/lib/module/hooks/notifications.js.map +1 -1
- package/lib/module/hooks/useBifoldAgentSetup.js +5 -3
- package/lib/module/hooks/useBifoldAgentSetup.js.map +1 -1
- package/lib/module/index.js +3 -1
- 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/openid/components/OpenIDCredentialCard.js +41 -1
- package/lib/module/modules/openid/components/OpenIDCredentialCard.js.map +1 -1
- package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js +34 -111
- package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
- package/lib/module/modules/openid/hooks/openid.js +38 -5
- package/lib/module/modules/openid/hooks/openid.js.map +1 -1
- package/lib/module/modules/openid/hooks/useAcceptReplacement.js +76 -0
- package/lib/module/modules/openid/hooks/useAcceptReplacement.js.map +1 -0
- package/lib/module/modules/openid/hooks/useCredentialErrorsFromRegistry.js +54 -0
- package/lib/module/modules/openid/hooks/useCredentialErrorsFromRegistry.js.map +1 -0
- package/lib/module/modules/openid/hooks/useDeclineReplacement.js +77 -0
- package/lib/module/modules/openid/hooks/useDeclineReplacement.js.map +1 -0
- package/lib/module/modules/openid/hooks/useOpenIdReplacementNavigation.js +47 -0
- package/lib/module/modules/openid/hooks/useOpenIdReplacementNavigation.js.map +1 -0
- package/lib/module/modules/openid/hooks/useReplacementNotifications.js +75 -0
- package/lib/module/modules/openid/hooks/useReplacementNotifications.js.map +1 -0
- package/lib/module/modules/openid/metadata.js +52 -1
- package/lib/module/modules/openid/metadata.js.map +1 -1
- package/lib/module/modules/openid/notification.js +38 -0
- package/lib/module/modules/openid/notification.js.map +1 -0
- package/lib/module/modules/openid/offerResolve.js +7 -1
- package/lib/module/modules/openid/offerResolve.js.map +1 -1
- package/lib/module/modules/openid/refresh/reIssuance.js +89 -0
- package/lib/module/modules/openid/refresh/reIssuance.js.map +1 -0
- package/lib/module/modules/openid/refresh/refreshOrchestrator.js +257 -0
- package/lib/module/modules/openid/refresh/refreshOrchestrator.js.map +1 -0
- package/lib/module/modules/openid/refresh/refreshToken.js +72 -0
- package/lib/module/modules/openid/refresh/refreshToken.js.map +1 -0
- package/lib/module/modules/openid/refresh/registery.js +135 -0
- package/lib/module/modules/openid/refresh/registery.js.map +1 -0
- package/lib/module/modules/openid/refresh/types.js +11 -0
- package/lib/module/modules/openid/refresh/types.js.map +1 -0
- package/lib/module/modules/openid/refresh/verifyCredentialStatus.js +28 -0
- package/lib/module/modules/openid/refresh/verifyCredentialStatus.js.map +1 -0
- package/lib/module/modules/openid/screens/OpenIDCredentialOffer.js +39 -2
- package/lib/module/modules/openid/screens/OpenIDCredentialOffer.js.map +1 -1
- package/lib/module/modules/openid/utils/utils.js +64 -1
- package/lib/module/modules/openid/utils/utils.js.map +1 -1
- package/lib/module/screens/CredentialDetails.js +29 -7
- package/lib/module/screens/CredentialDetails.js.map +1 -1
- package/lib/module/screens/CredentialOffer.js +7 -10
- package/lib/module/screens/CredentialOffer.js.map +1 -1
- package/lib/module/screens/CredentialOfferAccept.js +19 -3
- package/lib/module/screens/CredentialOfferAccept.js.map +1 -1
- package/lib/module/screens/Developer.js +27 -1
- package/lib/module/screens/Developer.js.map +1 -1
- package/lib/module/screens/Home.js +41 -3
- package/lib/module/screens/Home.js.map +1 -1
- package/lib/module/screens/ListCredentials.js +1 -1
- package/lib/module/screens/ListCredentials.js.map +1 -1
- package/lib/module/screens/ProofChangeCredential.js +1 -1
- package/lib/module/screens/ProofChangeCredential.js.map +1 -1
- package/lib/module/screens/ProofRequest.js +1 -1
- package/lib/module/screens/ProofRequest.js.map +1 -1
- package/lib/module/services/AgentBridge.js +83 -0
- package/lib/module/services/AgentBridge.js.map +1 -0
- package/lib/module/types/credentials.js +8 -1
- package/lib/module/types/credentials.js.map +1 -1
- package/lib/module/utils/agent.js +2 -2
- package/lib/module/utils/agent.js.map +1 -1
- package/lib/module/utils/cred-def.js +46 -43
- package/lib/module/utils/cred-def.js.map +1 -1
- package/lib/module/utils/credential.js +210 -0
- package/lib/module/utils/credential.js.map +1 -1
- package/lib/module/utils/helpers.js +80 -22
- package/lib/module/utils/helpers.js.map +1 -1
- package/lib/typescript/src/components/listItems/NotificationListItem.d.ts.map +1 -1
- package/lib/typescript/src/components/misc/CredentialCard.d.ts +1 -2
- package/lib/typescript/src/components/misc/CredentialCard.d.ts.map +1 -1
- package/lib/typescript/src/components/misc/CredentialCard10.d.ts.map +1 -1
- package/lib/typescript/src/components/misc/CredentialCard11.d.ts +1 -5
- package/lib/typescript/src/components/misc/CredentialCard11.d.ts.map +1 -1
- package/lib/typescript/src/components/views/CredentialDetailPrimaryHeader.d.ts.map +1 -1
- package/lib/typescript/src/components/views/KeyboardView.d.ts +14 -0
- package/lib/typescript/src/components/views/KeyboardView.d.ts.map +1 -1
- package/lib/typescript/src/constants.d.ts +2 -1
- package/lib/typescript/src/constants.d.ts.map +1 -1
- package/lib/typescript/src/container-api.d.ts +8 -0
- package/lib/typescript/src/container-api.d.ts.map +1 -1
- package/lib/typescript/src/container-impl.d.ts +2 -0
- package/lib/typescript/src/container-impl.d.ts.map +1 -1
- package/lib/typescript/src/hooks/notifications.d.ts +2 -1
- 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 +4 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/components/OpenIDCredentialCard.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts +1 -2
- package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/hooks/openid.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/hooks/useAcceptReplacement.d.ts +11 -0
- package/lib/typescript/src/modules/openid/hooks/useAcceptReplacement.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/hooks/useCredentialErrorsFromRegistry.d.ts +9 -0
- package/lib/typescript/src/modules/openid/hooks/useCredentialErrorsFromRegistry.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/hooks/useDeclineReplacement.d.ts +16 -0
- package/lib/typescript/src/modules/openid/hooks/useDeclineReplacement.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/hooks/useOpenIdReplacementNavigation.d.ts +8 -0
- package/lib/typescript/src/modules/openid/hooks/useOpenIdReplacementNavigation.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/hooks/useReplacementNotifications.d.ts +6 -0
- package/lib/typescript/src/modules/openid/hooks/useReplacementNotifications.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/metadata.d.ts +27 -2
- package/lib/typescript/src/modules/openid/metadata.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/notification.d.ts +16 -0
- package/lib/typescript/src/modules/openid/notification.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/offerResolve.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/refresh/reIssuance.d.ts +19 -0
- package/lib/typescript/src/modules/openid/refresh/reIssuance.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/refresh/refreshOrchestrator.d.ts +25 -0
- package/lib/typescript/src/modules/openid/refresh/refreshOrchestrator.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/refresh/refreshToken.d.ts +9 -0
- package/lib/typescript/src/modules/openid/refresh/refreshToken.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/refresh/registery.d.ts +55 -0
- package/lib/typescript/src/modules/openid/refresh/registery.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/refresh/types.d.ts +59 -0
- package/lib/typescript/src/modules/openid/refresh/types.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/refresh/verifyCredentialStatus.d.ts +11 -0
- package/lib/typescript/src/modules/openid/refresh/verifyCredentialStatus.d.ts.map +1 -0
- package/lib/typescript/src/modules/openid/screens/OpenIDCredentialOffer.d.ts.map +1 -1
- package/lib/typescript/src/modules/openid/utils/utils.d.ts +4 -0
- package/lib/typescript/src/modules/openid/utils/utils.d.ts.map +1 -1
- package/lib/typescript/src/screens/CredentialDetails.d.ts.map +1 -1
- package/lib/typescript/src/screens/CredentialOffer.d.ts.map +1 -1
- package/lib/typescript/src/screens/CredentialOfferAccept.d.ts.map +1 -1
- package/lib/typescript/src/screens/Developer.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/services/AgentBridge.d.ts +31 -0
- package/lib/typescript/src/services/AgentBridge.d.ts.map +1 -0
- package/lib/typescript/src/types/credentials.d.ts +5 -0
- package/lib/typescript/src/types/credentials.d.ts.map +1 -1
- package/lib/typescript/src/types/notification.d.ts +4 -0
- package/lib/typescript/src/types/notification.d.ts.map +1 -1
- package/lib/typescript/src/utils/agent.d.ts.map +1 -1
- package/lib/typescript/src/utils/cred-def.d.ts +8 -3
- package/lib/typescript/src/utils/cred-def.d.ts.map +1 -1
- package/lib/typescript/src/utils/credential.d.ts +36 -0
- package/lib/typescript/src/utils/credential.d.ts.map +1 -1
- package/lib/typescript/src/utils/helpers.d.ts +5 -1
- package/lib/typescript/src/utils/helpers.d.ts.map +1 -1
- package/package.json +10 -4
- package/lib/commonjs/modules/openid/refresh/refreshMetadata.js +0 -25
- package/lib/commonjs/modules/openid/refresh/refreshMetadata.js.map +0 -1
- package/lib/module/modules/openid/refresh/refreshMetadata.js +0 -18
- package/lib/module/modules/openid/refresh/refreshMetadata.js.map +0 -1
- package/lib/typescript/src/modules/openid/refresh/refreshMetadata.d.ts +0 -20
- package/lib/typescript/src/modules/openid/refresh/refreshMetadata.d.ts.map +0 -1
|
@@ -3,58 +3,34 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.fallbackDefaultCredentialNameValue = exports.defaultCredDefTag = void 0;
|
|
7
|
+
exports.getCredDefTag = getCredDefTag;
|
|
6
8
|
exports.getCredentialName = getCredentialName;
|
|
9
|
+
exports.getSchemaName = getSchemaName;
|
|
7
10
|
exports.parsedCredDefName = parsedCredDefName;
|
|
8
11
|
exports.parsedCredDefNameFromCredential = parsedCredDefNameFromCredential;
|
|
9
12
|
var _anoncreds = require("@credo-ts/anoncreds");
|
|
10
13
|
var _schema = require("./schema");
|
|
14
|
+
var _credential = require("./credential");
|
|
15
|
+
// Fallback default credential name when no other name is available
|
|
16
|
+
const fallbackDefaultCredentialNameValue = exports.fallbackDefaultCredentialNameValue = 'Credential';
|
|
17
|
+
|
|
18
|
+
// Default credential definition tag value
|
|
19
|
+
const defaultCredDefTag = exports.defaultCredDefTag = 'default';
|
|
20
|
+
|
|
11
21
|
// Normalize incoming identifiers by trimming whitespace and converting empty strings to undefined
|
|
12
22
|
function normalizeId(id) {
|
|
13
23
|
if (typeof id !== 'string') return undefined;
|
|
14
24
|
const trimmed = id.trim();
|
|
15
25
|
return trimmed.length > 0 ? trimmed : undefined;
|
|
16
26
|
}
|
|
17
|
-
async function getCredentialName(credDefId, schemaId
|
|
27
|
+
async function getCredentialName(credDefId, schemaId) {
|
|
18
28
|
const normalizedCredDefId = normalizeId(credDefId);
|
|
19
29
|
const normalizedSchemaId = normalizeId(schemaId);
|
|
20
|
-
const isWebvh = !!(normalizedCredDefId !== null && normalizedCredDefId !== void 0 && normalizedCredDefId.toLowerCase().startsWith('did:webvh:') || normalizedSchemaId !== null && normalizedSchemaId !== void 0 && normalizedSchemaId.toLowerCase().startsWith('did:webvh:'));
|
|
21
|
-
if (isWebvh) {
|
|
22
|
-
return parseWebVHCredDefId(normalizedCredDefId, normalizedSchemaId, agent);
|
|
23
|
-
}
|
|
24
30
|
return parseIndyCredDefId(normalizedCredDefId, normalizedSchemaId);
|
|
25
31
|
}
|
|
26
|
-
async function parseWebVHCredDefId(credDefId, schemaId, agent) {
|
|
27
|
-
var _agent$modules;
|
|
28
|
-
let name = 'Credential';
|
|
29
|
-
if (!(agent !== null && agent !== void 0 && (_agent$modules = agent.modules) !== null && _agent$modules !== void 0 && _agent$modules.anoncreds)) {
|
|
30
|
-
return name;
|
|
31
|
-
}
|
|
32
|
-
if (credDefId) {
|
|
33
|
-
try {
|
|
34
|
-
const {
|
|
35
|
-
credentialDefinition: result
|
|
36
|
-
} = await agent.modules.anoncreds.getCredentialDefinition(credDefId);
|
|
37
|
-
name = (result === null || result === void 0 ? void 0 : result.tag) ?? name;
|
|
38
|
-
} catch {
|
|
39
|
-
var _agent$config;
|
|
40
|
-
agent === null || agent === void 0 || (_agent$config = agent.config) === null || _agent$config === void 0 || (_agent$config = _agent$config.logger) === null || _agent$config === void 0 || _agent$config.info('parseWebVHCredDefId: Credential definition not found, using default name');
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
if ((name.toLowerCase() === 'default' || name.toLowerCase() === 'credential') && schemaId) {
|
|
44
|
-
try {
|
|
45
|
-
const {
|
|
46
|
-
schema: result
|
|
47
|
-
} = await agent.modules.anoncreds.getSchema(schemaId);
|
|
48
|
-
name = (result === null || result === void 0 ? void 0 : result.name) ?? name;
|
|
49
|
-
} catch {
|
|
50
|
-
var _agent$config2;
|
|
51
|
-
agent === null || agent === void 0 || (_agent$config2 = agent.config) === null || _agent$config2 === void 0 || (_agent$config2 = _agent$config2.logger) === null || _agent$config2 === void 0 || _agent$config2.info('parseWebVHCredDefId: Schema definition not found, using default name');
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
return name || 'Credential';
|
|
55
|
-
}
|
|
56
32
|
function parseIndyCredDefId(credDefId, schemaId) {
|
|
57
|
-
let name =
|
|
33
|
+
let name = fallbackDefaultCredentialNameValue;
|
|
58
34
|
if (credDefId) {
|
|
59
35
|
try {
|
|
60
36
|
const parsedCredDef = (0, _anoncreds.parseIndyCredentialDefinitionId)(credDefId);
|
|
@@ -63,17 +39,17 @@ function parseIndyCredDefId(credDefId, schemaId) {
|
|
|
63
39
|
// If parsing fails, keep the default name
|
|
64
40
|
}
|
|
65
41
|
}
|
|
66
|
-
if (name.toLowerCase() ===
|
|
42
|
+
if (name.toLowerCase() === defaultCredDefTag || name.toLowerCase() === fallbackDefaultCredentialNameValue.toLowerCase()) {
|
|
67
43
|
if (schemaId) {
|
|
68
44
|
try {
|
|
69
45
|
const parsedSchema = (0, _anoncreds.parseIndySchemaId)(schemaId);
|
|
70
46
|
name = (parsedSchema === null || parsedSchema === void 0 ? void 0 : parsedSchema.schemaName) ?? name;
|
|
71
47
|
} catch {
|
|
72
48
|
// If parsing fails, keep the default name
|
|
73
|
-
name =
|
|
49
|
+
name = fallbackDefaultCredentialNameValue;
|
|
74
50
|
}
|
|
75
51
|
} else {
|
|
76
|
-
name =
|
|
52
|
+
name = fallbackDefaultCredentialNameValue;
|
|
77
53
|
}
|
|
78
54
|
}
|
|
79
55
|
return name;
|
|
@@ -82,10 +58,41 @@ function credentialDefinition(credential) {
|
|
|
82
58
|
var _credential$metadata$;
|
|
83
59
|
return (_credential$metadata$ = credential.metadata.get(_anoncreds.AnonCredsCredentialMetadataKey)) === null || _credential$metadata$ === void 0 ? void 0 : _credential$metadata$.credentialDefinitionId;
|
|
84
60
|
}
|
|
85
|
-
|
|
86
|
-
|
|
61
|
+
function getSchemaName(credential) {
|
|
62
|
+
const metadata = credential.metadata.get(_anoncreds.AnonCredsCredentialMetadataKey);
|
|
63
|
+
const schemaName = metadata === null || metadata === void 0 ? void 0 : metadata.schemaName;
|
|
64
|
+
return schemaName;
|
|
65
|
+
}
|
|
66
|
+
function getCredDefTag(credential) {
|
|
67
|
+
const metadata = credential.metadata.get(_anoncreds.AnonCredsCredentialMetadataKey);
|
|
68
|
+
const credDefTag = metadata === null || metadata === void 0 ? void 0 : metadata.credDefTag;
|
|
69
|
+
return credDefTag;
|
|
70
|
+
}
|
|
71
|
+
async function parsedCredDefNameFromCredential(credential, agent, logger) {
|
|
72
|
+
// Ensure metadata is cached if agent is provided
|
|
73
|
+
if (agent) {
|
|
74
|
+
try {
|
|
75
|
+
await (0, _credential.ensureCredentialMetadata)(credential, agent, undefined, logger);
|
|
76
|
+
} catch (error) {
|
|
77
|
+
// If metadata restoration fails, we'll fall back to parsing IDs or default name
|
|
78
|
+
logger === null || logger === void 0 || logger.warn('Failed to restore credential metadata in parsedCredDefNameFromCredential', {
|
|
79
|
+
error: error
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// Check if we have cached metadata
|
|
85
|
+
const cachedSchemaName = getSchemaName(credential);
|
|
86
|
+
if (cachedSchemaName) {
|
|
87
|
+
// Use the priority waterfall logic (OCA name > credDefTag > schemaName > fallback)
|
|
88
|
+
return (0, _credential.getEffectiveCredentialName)(credential);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
// Fallback: parse the IDs if metadata is not cached and no agent to resolve
|
|
92
|
+
const fallbackName = await getCredentialName(credentialDefinition(credential), (0, _schema.credentialSchema)(credential));
|
|
93
|
+
return fallbackName;
|
|
87
94
|
}
|
|
88
|
-
async function parsedCredDefName(credentialDefinitionId, schemaId
|
|
89
|
-
return getCredentialName(credentialDefinitionId, schemaId
|
|
95
|
+
async function parsedCredDefName(credentialDefinitionId, schemaId) {
|
|
96
|
+
return getCredentialName(credentialDefinitionId, schemaId);
|
|
90
97
|
}
|
|
91
98
|
//# sourceMappingURL=cred-def.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_anoncreds","require","_schema","normalizeId","id","undefined","trimmed","trim","length","getCredentialName","credDefId","schemaId","
|
|
1
|
+
{"version":3,"names":["_anoncreds","require","_schema","_credential","fallbackDefaultCredentialNameValue","exports","defaultCredDefTag","normalizeId","id","undefined","trimmed","trim","length","getCredentialName","credDefId","schemaId","normalizedCredDefId","normalizedSchemaId","parseIndyCredDefId","name","parsedCredDef","parseIndyCredentialDefinitionId","tag","toLowerCase","parsedSchema","parseIndySchemaId","schemaName","credentialDefinition","credential","_credential$metadata$","metadata","get","AnonCredsCredentialMetadataKey","credentialDefinitionId","getSchemaName","getCredDefTag","credDefTag","parsedCredDefNameFromCredential","agent","logger","ensureCredentialMetadata","error","warn","cachedSchemaName","getEffectiveCredentialName","fallbackName","credentialSchema","parsedCredDefName"],"sourceRoot":"../../../src","sources":["utils/cred-def.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,10 +3,17 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.credentialTextColor = void 0;
|
|
7
|
+
exports.ensureCredentialMetadata = ensureCredentialMetadata;
|
|
8
|
+
exports.getCredentialIdentifiers = void 0;
|
|
9
|
+
exports.getEffectiveCredentialName = getEffectiveCredentialName;
|
|
10
|
+
exports.isValidAnonCredsCredential = void 0;
|
|
11
|
+
exports.isValidCredentialName = isValidCredentialName;
|
|
12
|
+
exports.toImageSource = void 0;
|
|
7
13
|
var _anoncreds = require("@credo-ts/anoncreds");
|
|
8
14
|
var _core = require("@credo-ts/core");
|
|
9
15
|
var _luminance = require("./luminance");
|
|
16
|
+
var _credDef = require("./cred-def");
|
|
10
17
|
const isValidAnonCredsCredential = credential => {
|
|
11
18
|
return credential && (credential.state === _core.CredentialState.OfferReceived || Boolean(credential.metadata.get(_anoncreds.AnonCredsCredentialMetadataKey)) && credential.credentials.find(c => c.credentialRecordType === 'anoncreds' || c.credentialRecordType === 'w3c'));
|
|
12
19
|
};
|
|
@@ -37,5 +44,214 @@ const getCredentialIdentifiers = credential => {
|
|
|
37
44
|
schemaId: (_credential$metadata$2 = credential.metadata.get(_anoncreds.AnonCredsCredentialMetadataKey)) === null || _credential$metadata$2 === void 0 ? void 0 : _credential$metadata$2.schemaId
|
|
38
45
|
};
|
|
39
46
|
};
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Attempts to resolve schema and credDef IDs from credential format data.
|
|
50
|
+
*/
|
|
40
51
|
exports.getCredentialIdentifiers = getCredentialIdentifiers;
|
|
52
|
+
async function resolveIdsFromFormatData(credential, agent, logger) {
|
|
53
|
+
try {
|
|
54
|
+
const {
|
|
55
|
+
offer
|
|
56
|
+
} = await agent.credentials.getFormatData(credential.id);
|
|
57
|
+
const formatOfferData = (offer === null || offer === void 0 ? void 0 : offer.anoncreds) ?? (offer === null || offer === void 0 ? void 0 : offer.indy);
|
|
58
|
+
|
|
59
|
+
// Type guard to check if formatOfferData has the expected structure
|
|
60
|
+
if (formatOfferData && typeof formatOfferData === 'object' && 'schema_id' in formatOfferData && typeof formatOfferData.schema_id === 'string') {
|
|
61
|
+
return {
|
|
62
|
+
schemaId: formatOfferData.schema_id,
|
|
63
|
+
credDefId: 'cred_def_id' in formatOfferData && typeof formatOfferData.cred_def_id === 'string' ? formatOfferData.cred_def_id : undefined
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
} catch (error) {
|
|
67
|
+
logger === null || logger === void 0 || logger.error('Failed to get format data', {
|
|
68
|
+
error: error
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
return {};
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Resolves schema name from the given schema ID.
|
|
76
|
+
*/
|
|
77
|
+
async function resolveSchemaName(schemaId, agent, logger) {
|
|
78
|
+
try {
|
|
79
|
+
const {
|
|
80
|
+
schema: resolvedSchema
|
|
81
|
+
} = await agent.modules.anoncreds.getSchema(schemaId);
|
|
82
|
+
const schemaName = resolvedSchema === null || resolvedSchema === void 0 ? void 0 : resolvedSchema.name;
|
|
83
|
+
logger === null || logger === void 0 || logger.debug('Resolved schema name', {
|
|
84
|
+
schemaId,
|
|
85
|
+
schemaName
|
|
86
|
+
});
|
|
87
|
+
return schemaName;
|
|
88
|
+
} catch (error) {
|
|
89
|
+
logger === null || logger === void 0 || logger.warn('Failed to resolve schema', {
|
|
90
|
+
error: error,
|
|
91
|
+
schemaId
|
|
92
|
+
});
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Resolves credential definition tag from the given cred def ID.
|
|
99
|
+
*/
|
|
100
|
+
async function resolveCredDefTag(credDefId, agent, logger) {
|
|
101
|
+
try {
|
|
102
|
+
const {
|
|
103
|
+
credentialDefinition: resolvedCredDef
|
|
104
|
+
} = await agent.modules.anoncreds.getCredentialDefinition(credDefId);
|
|
105
|
+
const credDefTag = resolvedCredDef === null || resolvedCredDef === void 0 ? void 0 : resolvedCredDef.tag;
|
|
106
|
+
logger === null || logger === void 0 || logger.debug('Resolved credential definition tag', {
|
|
107
|
+
credDefId,
|
|
108
|
+
credDefTag
|
|
109
|
+
});
|
|
110
|
+
return credDefTag;
|
|
111
|
+
} catch (error) {
|
|
112
|
+
logger === null || logger === void 0 || logger.warn('Failed to resolve credential definition', {
|
|
113
|
+
error: error,
|
|
114
|
+
credDefId
|
|
115
|
+
});
|
|
116
|
+
return undefined;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Determines the IDs to use for resolution, preferring offer data over existing metadata.
|
|
122
|
+
*/
|
|
123
|
+
async function determineSchemaAndCredDefIds(credential, agent, offerData, existingMetadata, logger) {
|
|
124
|
+
let schemaId = (offerData === null || offerData === void 0 ? void 0 : offerData.schema_id) || (existingMetadata === null || existingMetadata === void 0 ? void 0 : existingMetadata.schemaId);
|
|
125
|
+
let credDefId = (offerData === null || offerData === void 0 ? void 0 : offerData.cred_def_id) || (existingMetadata === null || existingMetadata === void 0 ? void 0 : existingMetadata.credentialDefinitionId);
|
|
126
|
+
const needsResolution = !schemaId || !credDefId;
|
|
127
|
+
if (needsResolution) {
|
|
128
|
+
const resolvedIds = await resolveIdsFromFormatData(credential, agent, logger);
|
|
129
|
+
schemaId = schemaId || resolvedIds.schemaId;
|
|
130
|
+
credDefId = credDefId || resolvedIds.credDefId;
|
|
131
|
+
}
|
|
132
|
+
return {
|
|
133
|
+
schemaId,
|
|
134
|
+
credDefId
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* Updates credential metadata with resolved schema name and cred def tag.
|
|
140
|
+
*/
|
|
141
|
+
async function updateCredentialMetadata(params) {
|
|
142
|
+
const {
|
|
143
|
+
credential,
|
|
144
|
+
agent,
|
|
145
|
+
existingMetadata,
|
|
146
|
+
schemaId,
|
|
147
|
+
credDefId,
|
|
148
|
+
schemaName,
|
|
149
|
+
credDefTag,
|
|
150
|
+
logger
|
|
151
|
+
} = params;
|
|
152
|
+
const metadataToStore = {
|
|
153
|
+
...existingMetadata,
|
|
154
|
+
schemaId,
|
|
155
|
+
credentialDefinitionId: credDefId,
|
|
156
|
+
schemaName,
|
|
157
|
+
credDefTag
|
|
158
|
+
};
|
|
159
|
+
credential.metadata.add(_anoncreds.AnonCredsCredentialMetadataKey, metadataToStore);
|
|
160
|
+
await agent.credentials.update(credential);
|
|
161
|
+
logger === null || logger === void 0 || logger.info('Credential metadata ensured', {
|
|
162
|
+
credentialId: credential.id,
|
|
163
|
+
schemaName,
|
|
164
|
+
credDefTag,
|
|
165
|
+
wasUpdated: true
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Ensures credential has all required metadata cached. If any metadata is missing,
|
|
171
|
+
* it will be resolved and added to the credential.
|
|
172
|
+
*
|
|
173
|
+
* @param credential - The credential record to ensure metadata for
|
|
174
|
+
* @param agent - The agent instance for resolving schema/credDef
|
|
175
|
+
* @param offerData - Optional offer data containing schema_id and cred_def_id
|
|
176
|
+
* @param logger - Optional logger instance for logging
|
|
177
|
+
* @returns Promise<boolean> - Returns true if metadata was updated, false otherwise
|
|
178
|
+
*/
|
|
179
|
+
async function ensureCredentialMetadata(credential, agent, offerData, logger) {
|
|
180
|
+
var _agent$modules;
|
|
181
|
+
if (!(agent !== null && agent !== void 0 && (_agent$modules = agent.modules) !== null && _agent$modules !== void 0 && _agent$modules.anoncreds)) {
|
|
182
|
+
return false;
|
|
183
|
+
}
|
|
184
|
+
const existingMetadata = credential.metadata.get(_anoncreds.AnonCredsCredentialMetadataKey);
|
|
185
|
+
const {
|
|
186
|
+
schemaId,
|
|
187
|
+
credDefId
|
|
188
|
+
} = await determineSchemaAndCredDefIds(credential, agent, offerData, existingMetadata, logger);
|
|
189
|
+
|
|
190
|
+
// Check what's missing
|
|
191
|
+
const needsSchemaName = !(existingMetadata !== null && existingMetadata !== void 0 && existingMetadata.schemaName) && schemaId;
|
|
192
|
+
const needsCredDefTag = !(existingMetadata !== null && existingMetadata !== void 0 && existingMetadata.credDefTag) && credDefId;
|
|
193
|
+
const hasAllMetadata = !needsSchemaName && !needsCredDefTag;
|
|
194
|
+
if (hasAllMetadata) {
|
|
195
|
+
return false;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// Resolve missing metadata
|
|
199
|
+
const schemaName = needsSchemaName && schemaId ? await resolveSchemaName(schemaId, agent, logger) : existingMetadata === null || existingMetadata === void 0 ? void 0 : existingMetadata.schemaName;
|
|
200
|
+
const credDefTag = needsCredDefTag && credDefId ? await resolveCredDefTag(credDefId, agent, logger) : existingMetadata === null || existingMetadata === void 0 ? void 0 : existingMetadata.credDefTag;
|
|
201
|
+
await updateCredentialMetadata({
|
|
202
|
+
credential,
|
|
203
|
+
agent,
|
|
204
|
+
existingMetadata,
|
|
205
|
+
schemaId,
|
|
206
|
+
credDefId,
|
|
207
|
+
schemaName,
|
|
208
|
+
credDefTag,
|
|
209
|
+
logger
|
|
210
|
+
});
|
|
211
|
+
return true;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* Validates whether a credential name is meaningful and should be used for display.
|
|
216
|
+
* Returns false for undefined, empty, whitespace-only, or default placeholder names.
|
|
217
|
+
*
|
|
218
|
+
* @param name - The name to validate
|
|
219
|
+
* @returns true if the name is valid and meaningful, false otherwise
|
|
220
|
+
*/
|
|
221
|
+
function isValidCredentialName(name) {
|
|
222
|
+
return !!(name && name !== _credDef.defaultCredDefTag && name !== _credDef.fallbackDefaultCredentialNameValue && name.trim() !== '');
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* Determines the effective credential name using a priority waterfall:
|
|
227
|
+
* 1. OCA Bundle name (if present and meaningful)
|
|
228
|
+
* 2. Credential definition tag (if present)
|
|
229
|
+
* 3. Schema name (if present)
|
|
230
|
+
* 4. Default fallback name
|
|
231
|
+
*
|
|
232
|
+
* @param credential - The credential record
|
|
233
|
+
* @param ocaName - The name from OCA meta overlay
|
|
234
|
+
* @returns The effective name to use for display
|
|
235
|
+
*/
|
|
236
|
+
function getEffectiveCredentialName(credential, ocaName) {
|
|
237
|
+
// 1. Try OCA Bundle name
|
|
238
|
+
if (isValidCredentialName(ocaName)) {
|
|
239
|
+
return ocaName;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
// 2. Try credential definition tag
|
|
243
|
+
const credDefTag = (0, _credDef.getCredDefTag)(credential);
|
|
244
|
+
if (isValidCredentialName(credDefTag)) {
|
|
245
|
+
return credDefTag;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
// 3. Try schema name
|
|
249
|
+
const schemaName = (0, _credDef.getSchemaName)(credential);
|
|
250
|
+
if (isValidCredentialName(schemaName)) {
|
|
251
|
+
return schemaName;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
// 4. Return default fallback
|
|
255
|
+
return _credDef.fallbackDefaultCredentialNameValue;
|
|
256
|
+
}
|
|
41
257
|
//# sourceMappingURL=credential.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_anoncreds","require","_core","_luminance","isValidAnonCredsCredential","credential","state","CredentialState","OfferReceived","Boolean","metadata","get","AnonCredsCredentialMetadataKey","credentials","find","c","credentialRecordType","exports","credentialTextColor","ColorPalette","hex","midpoint","luminanceForHexColor","grayscale","darkGrey","white","toImageSource","source","uri","getCredentialIdentifiers","_credential$metadata$","_credential$metadata$2","credentialDefinitionId","schemaId"],"sourceRoot":"../../../src","sources":["utils/credential.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_anoncreds","require","_core","_luminance","_credDef","isValidAnonCredsCredential","credential","state","CredentialState","OfferReceived","Boolean","metadata","get","AnonCredsCredentialMetadataKey","credentials","find","c","credentialRecordType","exports","credentialTextColor","ColorPalette","hex","midpoint","luminanceForHexColor","grayscale","darkGrey","white","toImageSource","source","uri","getCredentialIdentifiers","_credential$metadata$","_credential$metadata$2","credentialDefinitionId","schemaId","resolveIdsFromFormatData","agent","logger","offer","getFormatData","id","formatOfferData","anoncreds","indy","schema_id","credDefId","cred_def_id","undefined","error","resolveSchemaName","schema","resolvedSchema","modules","getSchema","schemaName","name","debug","warn","resolveCredDefTag","credentialDefinition","resolvedCredDef","getCredentialDefinition","credDefTag","tag","determineSchemaAndCredDefIds","offerData","existingMetadata","needsResolution","resolvedIds","updateCredentialMetadata","params","metadataToStore","add","update","info","credentialId","wasUpdated","ensureCredentialMetadata","_agent$modules","needsSchemaName","needsCredDefTag","hasAllMetadata","isValidCredentialName","defaultCredDefTag","fallbackDefaultCredentialNameValue","trim","getEffectiveCredentialName","ocaName","getCredDefTag","getSchemaName"],"sourceRoot":"../../../src","sources":["utils/credential.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.b64decode = b64decode;
|
|
7
7
|
exports.b64encode = b64encode;
|
|
8
|
-
exports.evaluatePredicates = exports.credentialSortFn = exports.credDefIdFromRestrictions = exports.createTempConnectionInvitation = exports.createConnectionInvitation = exports.connectFromScanOrDeepLink = exports.connectFromInvitation = void 0;
|
|
8
|
+
exports.evaluatePredicates = exports.credentialSortFn = exports.credNameFromRestriction = exports.credDefIdFromRestrictions = exports.createTempConnectionInvitation = exports.createConnectionInvitation = exports.connectFromScanOrDeepLink = exports.connectFromInvitation = void 0;
|
|
9
9
|
exports.firstValidCredential = firstValidCredential;
|
|
10
10
|
exports.formatIfDate = formatIfDate;
|
|
11
11
|
exports.formatTime = formatTime;
|
|
@@ -40,7 +40,7 @@ Object.defineProperty(exports, "parsedSchema", {
|
|
|
40
40
|
return _schema.parsedSchema;
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
|
-
exports.sortCredentialsForAutoSelect = exports.schemaIdFromRestrictions = exports.retrieveCredentialsForProof = exports.removeExistingInvitationsById = exports.processProofPredicates = exports.processProofAttributes = void 0;
|
|
43
|
+
exports.sortCredentialsForAutoSelect = exports.schemaIdFromRestrictions = exports.retrieveCredentialsForProof = exports.resolveSchemaName = exports.resolveCredDefTag = exports.removeExistingInvitationsById = exports.processProofPredicates = exports.processProofAttributes = void 0;
|
|
44
44
|
exports.useConnectionImageUrl = useConnectionImageUrl;
|
|
45
45
|
exports.useCredentialConnectionLabel = useCredentialConnectionLabel;
|
|
46
46
|
var _anoncreds = require("@credo-ts/anoncreds");
|
|
@@ -60,6 +60,7 @@ var _error = require("../types/error");
|
|
|
60
60
|
var _navigators = require("../types/navigators");
|
|
61
61
|
var _anonCredsProofRequestMapper = require("./anonCredsProofRequestMapper");
|
|
62
62
|
var _credDef = require("./cred-def");
|
|
63
|
+
var _credential = require("./credential");
|
|
63
64
|
var _parsers = require("./parsers");
|
|
64
65
|
var _mediatorhelpers = require("./mediatorhelpers");
|
|
65
66
|
var _schema = require("./schema");
|
|
@@ -289,6 +290,54 @@ const credentialSortFn = (a, b) => {
|
|
|
289
290
|
}
|
|
290
291
|
};
|
|
291
292
|
exports.credentialSortFn = credentialSortFn;
|
|
293
|
+
const resolveCredDefTag = async (cred_def_id, agent) => {
|
|
294
|
+
var _agent$modules;
|
|
295
|
+
if (cred_def_id && agent !== null && agent !== void 0 && (_agent$modules = agent.modules) !== null && _agent$modules !== void 0 && _agent$modules.anoncreds) {
|
|
296
|
+
try {
|
|
297
|
+
const {
|
|
298
|
+
credentialDefinition
|
|
299
|
+
} = await agent.modules.anoncreds.getCredentialDefinition(cred_def_id);
|
|
300
|
+
if (credentialDefinition !== null && credentialDefinition !== void 0 && credentialDefinition.tag && credentialDefinition.tag.toLowerCase() !== _credDef.defaultCredDefTag && credentialDefinition.tag !== _credDef.fallbackDefaultCredentialNameValue) {
|
|
301
|
+
return credentialDefinition.tag;
|
|
302
|
+
}
|
|
303
|
+
} catch (error) {
|
|
304
|
+
// Failed to resolve credential definition, return undefined
|
|
305
|
+
// This is expected when the credential definition doesn't exist or isn't accessible
|
|
306
|
+
// eslint-disable-next-line no-console
|
|
307
|
+
console.debug('Failed to resolve credential definition tag', {
|
|
308
|
+
cred_def_id,
|
|
309
|
+
error
|
|
310
|
+
});
|
|
311
|
+
return undefined;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
return undefined;
|
|
315
|
+
};
|
|
316
|
+
exports.resolveCredDefTag = resolveCredDefTag;
|
|
317
|
+
const resolveSchemaName = async (schema_id, agent) => {
|
|
318
|
+
var _agent$modules2;
|
|
319
|
+
if (schema_id && agent !== null && agent !== void 0 && (_agent$modules2 = agent.modules) !== null && _agent$modules2 !== void 0 && _agent$modules2.anoncreds) {
|
|
320
|
+
try {
|
|
321
|
+
const {
|
|
322
|
+
schema
|
|
323
|
+
} = await agent.modules.anoncreds.getSchema(schema_id);
|
|
324
|
+
if (schema !== null && schema !== void 0 && schema.name && schema.name !== _credDef.fallbackDefaultCredentialNameValue) {
|
|
325
|
+
return schema.name;
|
|
326
|
+
}
|
|
327
|
+
} catch (error) {
|
|
328
|
+
// Failed to resolve schema, return undefined
|
|
329
|
+
// This is expected when the schema doesn't exist or isn't accessible
|
|
330
|
+
// eslint-disable-next-line no-console
|
|
331
|
+
console.debug('Failed to resolve schema name', {
|
|
332
|
+
schema_id,
|
|
333
|
+
error
|
|
334
|
+
});
|
|
335
|
+
return undefined;
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
return undefined;
|
|
339
|
+
};
|
|
340
|
+
exports.resolveSchemaName = resolveSchemaName;
|
|
292
341
|
const credNameFromRestriction = async (queries, agent) => {
|
|
293
342
|
let schema_name = '';
|
|
294
343
|
let cred_def_id = '';
|
|
@@ -298,12 +347,28 @@ const credNameFromRestriction = async (queries, agent) => {
|
|
|
298
347
|
cred_def_id = (query === null || query === void 0 ? void 0 : query.cred_def_id) ?? cred_def_id;
|
|
299
348
|
schema_id = (query === null || query === void 0 ? void 0 : query.schema_id) ?? schema_id;
|
|
300
349
|
});
|
|
301
|
-
|
|
350
|
+
|
|
351
|
+
// Priority 1: Provided restriction schema name (from schema_name in restriction if meaningful)
|
|
352
|
+
if (schema_name && schema_name.toLowerCase() !== _credDef.defaultCredDefTag && schema_name.toLowerCase() !== _credDef.fallbackDefaultCredentialNameValue.toLowerCase()) {
|
|
302
353
|
return schema_name;
|
|
303
|
-
} else {
|
|
304
|
-
return await (0, _credDef.getCredentialName)(cred_def_id, schema_id, agent);
|
|
305
354
|
}
|
|
355
|
+
|
|
356
|
+
// Priority 2: Try to resolve credential definition tag
|
|
357
|
+
const credDefTag = await resolveCredDefTag(cred_def_id, agent);
|
|
358
|
+
if (credDefTag) {
|
|
359
|
+
return credDefTag;
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
// Priority 3: Try to resolve schema name
|
|
363
|
+
const schemaName = await resolveSchemaName(schema_id, agent);
|
|
364
|
+
if (schemaName) {
|
|
365
|
+
return schemaName;
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
// Priority 4: Return default fallback
|
|
369
|
+
return _credDef.fallbackDefaultCredentialNameValue;
|
|
306
370
|
};
|
|
371
|
+
exports.credNameFromRestriction = credNameFromRestriction;
|
|
307
372
|
const credDefIdFromRestrictions = queries => {
|
|
308
373
|
var _queries$filter$;
|
|
309
374
|
return (queries === null || queries === void 0 || (_queries$filter$ = queries.filter(rstr => rstr.cred_def_id)[0]) === null || _queries$filter$ === void 0 ? void 0 : _queries$filter$.cred_def_id) ?? '';
|
|
@@ -491,12 +556,6 @@ const processProofAttributes = async (t, request, credentials, credentialRecords
|
|
|
491
556
|
}
|
|
492
557
|
//iterate over all credentials that satisfy the proof
|
|
493
558
|
for (const credential of credentialList) {
|
|
494
|
-
var _credential$credentia, _credential$credentia2;
|
|
495
|
-
let credName = key;
|
|
496
|
-
if (credential !== null && credential !== void 0 && (_credential$credentia = credential.credentialInfo) !== null && _credential$credentia !== void 0 && _credential$credentia.credentialDefinitionId || credential !== null && credential !== void 0 && (_credential$credentia2 = credential.credentialInfo) !== null && _credential$credentia2 !== void 0 && _credential$credentia2.schemaId) {
|
|
497
|
-
var _credential$credentia3, _credential$credentia4;
|
|
498
|
-
credName = await (0, _credDef.getCredentialName)(credential === null || credential === void 0 || (_credential$credentia3 = credential.credentialInfo) === null || _credential$credentia3 === void 0 ? void 0 : _credential$credentia3.credentialDefinitionId, credential === null || credential === void 0 || (_credential$credentia4 = credential.credentialInfo) === null || _credential$credentia4 === void 0 ? void 0 : _credential$credentia4.schemaId, agent);
|
|
499
|
-
}
|
|
500
559
|
let revoked = false;
|
|
501
560
|
let credExchangeRecord = undefined;
|
|
502
561
|
if (credential) {
|
|
@@ -506,17 +565,20 @@ const processProofAttributes = async (t, request, credentials, credentialRecords
|
|
|
506
565
|
} else {
|
|
507
566
|
continue;
|
|
508
567
|
}
|
|
568
|
+
|
|
569
|
+
// Use cached metadata if we have the credential record
|
|
570
|
+
const credName = credExchangeRecord ? (0, _credential.getEffectiveCredentialName)(credExchangeRecord) : key;
|
|
509
571
|
for (const attributeName of [...(names ?? (name && [name]) ?? [])]) {
|
|
510
572
|
var _processedAttributes$4;
|
|
511
573
|
if (!processedAttributes[credential.credentialId]) {
|
|
512
|
-
var _credential$
|
|
574
|
+
var _credential$credentia, _credential$credentia2;
|
|
513
575
|
// init processedAttributes object
|
|
514
576
|
processedAttributes[credential.credentialId] = {
|
|
515
577
|
credExchangeRecord,
|
|
516
578
|
altCredentials,
|
|
517
579
|
credId: credential === null || credential === void 0 ? void 0 : credential.credentialId,
|
|
518
|
-
schemaId: (credential === null || credential === void 0 || (_credential$
|
|
519
|
-
credDefId: (credential === null || credential === void 0 || (_credential$
|
|
580
|
+
schemaId: (credential === null || credential === void 0 || (_credential$credentia = credential.credentialInfo) === null || _credential$credentia === void 0 ? void 0 : _credential$credentia.schemaId) ?? proofSchemaId,
|
|
581
|
+
credDefId: (credential === null || credential === void 0 || (_credential$credentia2 = credential.credentialInfo) === null || _credential$credentia2 === void 0 ? void 0 : _credential$credentia2.credentialDefinitionId) ?? proofCredDefId,
|
|
520
582
|
credName,
|
|
521
583
|
attributes: []
|
|
522
584
|
};
|
|
@@ -623,7 +685,7 @@ const processProofPredicates = async (request, credentials, credentialRecords, g
|
|
|
623
685
|
}
|
|
624
686
|
}
|
|
625
687
|
for (const credential of credentialList) {
|
|
626
|
-
var _requestedProofPredic,
|
|
688
|
+
var _requestedProofPredic, _processedPredicates$3;
|
|
627
689
|
let revoked = false;
|
|
628
690
|
let credExchangeRecord = undefined;
|
|
629
691
|
if (credential) {
|
|
@@ -641,11 +703,9 @@ const processProofPredicates = async (request, credentials, credentialRecords, g
|
|
|
641
703
|
...(credential === null || credential === void 0 ? void 0 : credential.credentialInfo)
|
|
642
704
|
};
|
|
643
705
|
const credNameRestriction = await credNameFromRestriction((_requestedProofPredic = requestedProofPredicates[key]) === null || _requestedProofPredic === void 0 ? void 0 : _requestedProofPredic.restrictions, agent);
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
credName = await (0, _credDef.getCredentialName)(credential === null || credential === void 0 || (_credential$credentia9 = credential.credentialInfo) === null || _credential$credentia9 === void 0 ? void 0 : _credential$credentia9.credentialDefinitionId, credential === null || credential === void 0 || (_credential$credentia0 = credential.credentialInfo) === null || _credential$credentia0 === void 0 ? void 0 : _credential$credentia0.schemaId, agent);
|
|
648
|
-
}
|
|
706
|
+
|
|
707
|
+
// Use cached metadata if we have the credential record
|
|
708
|
+
const credName = credExchangeRecord ? (0, _credential.getEffectiveCredentialName)(credExchangeRecord) : credNameRestriction ?? key;
|
|
649
709
|
if (!processedPredicates[credential.credentialId]) {
|
|
650
710
|
processedPredicates[credential.credentialId] = {
|
|
651
711
|
altCredentials,
|
|
@@ -871,9 +931,10 @@ const sortCredentialsForAutoSelect = credentials => {
|
|
|
871
931
|
* received invitations exist
|
|
872
932
|
* @param agent an Agent instance
|
|
873
933
|
* @param invitationId specifically a *received* invitation id
|
|
934
|
+
* @param logger optional logger instance
|
|
874
935
|
*/
|
|
875
936
|
exports.sortCredentialsForAutoSelect = sortCredentialsForAutoSelect;
|
|
876
|
-
const removeExistingInvitationsById = async (agent, invitationId) => {
|
|
937
|
+
const removeExistingInvitationsById = async (agent, invitationId, logger) => {
|
|
877
938
|
// This is implemented just as findByReceivedInvitationId is
|
|
878
939
|
// in Credo only this is able to return multiple if they exist
|
|
879
940
|
const oobRecords = (await (agent === null || agent === void 0 ? void 0 : agent.oob.findAllByQuery({
|
|
@@ -882,7 +943,7 @@ const removeExistingInvitationsById = async (agent, invitationId) => {
|
|
|
882
943
|
}))) || [];
|
|
883
944
|
for (const r of oobRecords) {
|
|
884
945
|
await (agent === null || agent === void 0 ? void 0 : agent.oob.deleteById(r.id));
|
|
885
|
-
|
|
946
|
+
logger === null || logger === void 0 || logger.info('Successfully removed an existing oob invitation');
|
|
886
947
|
}
|
|
887
948
|
};
|
|
888
949
|
|