@sphereon/ssi-sdk.oid4vci-holder 0.33.1-next.2 → 0.33.1-next.68
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/dist/index.cjs +3143 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +786 -0
- package/dist/index.d.ts +785 -11
- package/dist/index.js +3112 -31
- package/dist/index.js.map +1 -1
- package/package.json +44 -33
- package/src/agent/OID4VCIHolder.ts +8 -5
- package/dist/agent/OID4VCIHolder.d.ts +0 -59
- package/dist/agent/OID4VCIHolder.d.ts.map +0 -1
- package/dist/agent/OID4VCIHolder.js +0 -884
- package/dist/agent/OID4VCIHolder.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/link-handler/index.d.ts +0 -31
- package/dist/link-handler/index.d.ts.map +0 -1
- package/dist/link-handler/index.js +0 -65
- package/dist/link-handler/index.js.map +0 -1
- package/dist/listeners/headlessStateNavListener.d.ts +0 -3
- package/dist/listeners/headlessStateNavListener.d.ts.map +0 -1
- package/dist/listeners/headlessStateNavListener.js +0 -45
- package/dist/listeners/headlessStateNavListener.js.map +0 -1
- package/dist/localization/Localization.d.ts +0 -9
- package/dist/localization/Localization.d.ts.map +0 -1
- package/dist/localization/Localization.js +0 -46
- package/dist/localization/Localization.js.map +0 -1
- package/dist/localization/translations/en.json +0 -19
- package/dist/localization/translations/nl.json +0 -18
- package/dist/machines/firstPartyMachine.d.ts +0 -15
- package/dist/machines/firstPartyMachine.d.ts.map +0 -1
- package/dist/machines/firstPartyMachine.js +0 -222
- package/dist/machines/firstPartyMachine.js.map +0 -1
- package/dist/machines/oid4vciMachine.d.ts +0 -7
- package/dist/machines/oid4vciMachine.d.ts.map +0 -1
- package/dist/machines/oid4vciMachine.js +0 -727
- package/dist/machines/oid4vciMachine.js.map +0 -1
- package/dist/mappers/OIDC4VCIBrandingMapper.d.ts +0 -16
- package/dist/mappers/OIDC4VCIBrandingMapper.d.ts.map +0 -1
- package/dist/mappers/OIDC4VCIBrandingMapper.js +0 -201
- package/dist/mappers/OIDC4VCIBrandingMapper.js.map +0 -1
- package/dist/services/FirstPartyMachineServices.d.ts +0 -9
- package/dist/services/FirstPartyMachineServices.d.ts.map +0 -1
- package/dist/services/FirstPartyMachineServices.js +0 -53
- package/dist/services/FirstPartyMachineServices.js.map +0 -1
- package/dist/services/OID4VCIHolderService.d.ts +0 -28
- package/dist/services/OID4VCIHolderService.d.ts.map +0 -1
- package/dist/services/OID4VCIHolderService.js +0 -524
- package/dist/services/OID4VCIHolderService.js.map +0 -1
- package/dist/types/FirstPartyMachine.d.ts +0 -112
- package/dist/types/FirstPartyMachine.d.ts.map +0 -1
- package/dist/types/FirstPartyMachine.js +0 -30
- package/dist/types/FirstPartyMachine.js.map +0 -1
- package/dist/types/IOID4VCIHolder.d.ts +0 -558
- package/dist/types/IOID4VCIHolder.d.ts.map +0 -1
- package/dist/types/IOID4VCIHolder.js +0 -114
- package/dist/types/IOID4VCIHolder.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,40 +1,52 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sphereon/ssi-sdk.oid4vci-holder",
|
|
3
|
-
"version": "0.33.1-next.
|
|
3
|
+
"version": "0.33.1-next.68+b6c8b366",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.cjs",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
"react-native": "./dist/index.js",
|
|
11
|
+
"import": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js"
|
|
14
|
+
},
|
|
15
|
+
"require": {
|
|
16
|
+
"types": "./dist/index.d.cts",
|
|
17
|
+
"require": "./dist/index.cjs"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
7
20
|
"veramo": {
|
|
8
21
|
"pluginInterfaces": {
|
|
9
22
|
"IOID4VCIHolder": "./src/types/IOID4VCIHolder.ts"
|
|
10
23
|
}
|
|
11
24
|
},
|
|
12
25
|
"scripts": {
|
|
13
|
-
"build": "
|
|
14
|
-
"build:clean": "tsc --build --clean && tsc --build"
|
|
26
|
+
"build": "tsup --config ../../tsup.config.ts --tsconfig ../../tsconfig.tsup.json"
|
|
15
27
|
},
|
|
16
28
|
"dependencies": {
|
|
17
|
-
"@sphereon/did-auth-siop": "0.17.
|
|
29
|
+
"@sphereon/did-auth-siop": "0.17.1-next.39",
|
|
18
30
|
"@sphereon/kmp-mdoc-core": "0.2.0-SNAPSHOT.26",
|
|
19
|
-
"@sphereon/oid4vci-client": "0.17.
|
|
20
|
-
"@sphereon/oid4vci-common": "0.17.
|
|
21
|
-
"@sphereon/ssi-sdk-ext.did-utils": "0.28.
|
|
22
|
-
"@sphereon/ssi-sdk-ext.identifier-resolution": "0.28.
|
|
23
|
-
"@sphereon/ssi-sdk-ext.jwt-service": "0.28.
|
|
24
|
-
"@sphereon/ssi-sdk-ext.key-utils": "0.28.
|
|
25
|
-
"@sphereon/ssi-sdk.contact-manager": "0.33.1-next.
|
|
26
|
-
"@sphereon/ssi-sdk.core": "0.33.1-next.
|
|
27
|
-
"@sphereon/ssi-sdk.credential-store": "0.33.1-next.
|
|
28
|
-
"@sphereon/ssi-sdk.credential-validation": "0.33.1-next.
|
|
29
|
-
"@sphereon/ssi-sdk.data-store": "0.33.1-next.
|
|
30
|
-
"@sphereon/ssi-sdk.issuance-branding": "0.33.1-next.
|
|
31
|
-
"@sphereon/ssi-sdk.mdl-mdoc": "0.33.1-next.
|
|
32
|
-
"@sphereon/ssi-sdk.oidf-client": "0.33.1-next.
|
|
33
|
-
"@sphereon/ssi-sdk.sd-jwt": "0.33.1-next.
|
|
34
|
-
"@sphereon/ssi-sdk.siopv2-oid4vp-common": "0.33.1-next.
|
|
35
|
-
"@sphereon/ssi-sdk.siopv2-oid4vp-op-auth": "0.33.1-next.
|
|
36
|
-
"@sphereon/ssi-sdk.xstate-machine-persistence": "0.33.1-next.
|
|
37
|
-
"@sphereon/ssi-types": "0.33.1-next.
|
|
31
|
+
"@sphereon/oid4vci-client": "0.17.1-next.39",
|
|
32
|
+
"@sphereon/oid4vci-common": "0.17.1-next.39",
|
|
33
|
+
"@sphereon/ssi-sdk-ext.did-utils": "0.28.1-next.53",
|
|
34
|
+
"@sphereon/ssi-sdk-ext.identifier-resolution": "0.28.1-next.53",
|
|
35
|
+
"@sphereon/ssi-sdk-ext.jwt-service": "0.28.1-next.53",
|
|
36
|
+
"@sphereon/ssi-sdk-ext.key-utils": "0.28.1-next.53",
|
|
37
|
+
"@sphereon/ssi-sdk.contact-manager": "0.33.1-next.68+b6c8b366",
|
|
38
|
+
"@sphereon/ssi-sdk.core": "0.33.1-next.68+b6c8b366",
|
|
39
|
+
"@sphereon/ssi-sdk.credential-store": "0.33.1-next.68+b6c8b366",
|
|
40
|
+
"@sphereon/ssi-sdk.credential-validation": "0.33.1-next.68+b6c8b366",
|
|
41
|
+
"@sphereon/ssi-sdk.data-store": "0.33.1-next.68+b6c8b366",
|
|
42
|
+
"@sphereon/ssi-sdk.issuance-branding": "0.33.1-next.68+b6c8b366",
|
|
43
|
+
"@sphereon/ssi-sdk.mdl-mdoc": "0.33.1-next.68+b6c8b366",
|
|
44
|
+
"@sphereon/ssi-sdk.oidf-client": "0.33.1-next.68+b6c8b366",
|
|
45
|
+
"@sphereon/ssi-sdk.sd-jwt": "0.33.1-next.68+b6c8b366",
|
|
46
|
+
"@sphereon/ssi-sdk.siopv2-oid4vp-common": "0.33.1-next.68+b6c8b366",
|
|
47
|
+
"@sphereon/ssi-sdk.siopv2-oid4vp-op-auth": "0.33.1-next.68+b6c8b366",
|
|
48
|
+
"@sphereon/ssi-sdk.xstate-machine-persistence": "0.33.1-next.68+b6c8b366",
|
|
49
|
+
"@sphereon/ssi-types": "0.33.1-next.68+b6c8b366",
|
|
38
50
|
"@veramo/core": "4.2.0",
|
|
39
51
|
"@veramo/data-store": "4.2.0",
|
|
40
52
|
"@veramo/utils": "4.2.0",
|
|
@@ -46,8 +58,8 @@
|
|
|
46
58
|
"xstate": "^4.38.3"
|
|
47
59
|
},
|
|
48
60
|
"devDependencies": {
|
|
49
|
-
"@sphereon/oid4vc-common": "0.17.
|
|
50
|
-
"@sphereon/ssi-sdk-ext.did-resolver-jwk": "0.28.
|
|
61
|
+
"@sphereon/oid4vc-common": "0.17.1-next.39",
|
|
62
|
+
"@sphereon/ssi-sdk-ext.did-resolver-jwk": "0.28.1-next.53",
|
|
51
63
|
"@sphereon/ssi-sdk.siopv2-oid4vp-common": "workspace:*",
|
|
52
64
|
"@types/i18n-js": "^3.8.9",
|
|
53
65
|
"@types/lodash.memoize": "^4.1.9",
|
|
@@ -55,12 +67,12 @@
|
|
|
55
67
|
"@veramo/remote-client": "4.2.0",
|
|
56
68
|
"@veramo/remote-server": "4.2.0",
|
|
57
69
|
"nock": "^13.5.4",
|
|
58
|
-
"typeorm": "
|
|
59
|
-
"typescript": "5.
|
|
70
|
+
"typeorm": "0.3.20",
|
|
71
|
+
"typescript": "5.8.3"
|
|
60
72
|
},
|
|
61
73
|
"files": [
|
|
62
|
-
"dist
|
|
63
|
-
"src
|
|
74
|
+
"dist",
|
|
75
|
+
"src",
|
|
64
76
|
"README.md",
|
|
65
77
|
"plugin.schema.json",
|
|
66
78
|
"LICENSE"
|
|
@@ -77,6 +89,5 @@
|
|
|
77
89
|
"OID4VCI",
|
|
78
90
|
"State Machine"
|
|
79
91
|
],
|
|
80
|
-
"
|
|
81
|
-
"gitHead": "6f7f40b94beb385369fede046c3912bd0c053408"
|
|
92
|
+
"gitHead": "b6c8b36636fa3777494f55860d6a75f2e5a5611e"
|
|
82
93
|
}
|
|
@@ -47,6 +47,7 @@ import {
|
|
|
47
47
|
} from '@sphereon/ssi-sdk.data-store'
|
|
48
48
|
import {
|
|
49
49
|
CredentialMapper,
|
|
50
|
+
type CredentialProofFormat,
|
|
50
51
|
HasherSync,
|
|
51
52
|
IVerifiableCredential,
|
|
52
53
|
JoseSignatureAlgorithm,
|
|
@@ -65,7 +66,6 @@ import {
|
|
|
65
66
|
IDIDManager,
|
|
66
67
|
IKeyManager,
|
|
67
68
|
IResolver,
|
|
68
|
-
ProofFormat,
|
|
69
69
|
VerifiableCredential,
|
|
70
70
|
W3CVerifiableCredential,
|
|
71
71
|
} from '@veramo/core'
|
|
@@ -195,7 +195,7 @@ export async function verifyEBSICredentialIssuer(args: VerifyEBSICredentialIssue
|
|
|
195
195
|
throw Error('The issuer of the VC cannot be trusted')
|
|
196
196
|
}
|
|
197
197
|
|
|
198
|
-
const payload = await response.json()
|
|
198
|
+
const payload = (await response.json()) as VerifyEBSICredentialIssuerResult
|
|
199
199
|
|
|
200
200
|
if (!payload.attributes.some((a: Attribute) => issuerType.includes(a.issuerType))) {
|
|
201
201
|
throw Error(`The issuer type is required to be one of: ${issuerType.join(', ')}`)
|
|
@@ -930,8 +930,11 @@ export class OID4VCIHolder implements IAgentPlugin {
|
|
|
930
930
|
if (CredentialMapper.isWrappedSdJwtVerifiableCredential(wrappedIssuerVC)) {
|
|
931
931
|
issuer = trimmed(wrappedIssuerVC.decoded?.sub)
|
|
932
932
|
} else if (CredentialMapper.isWrappedW3CVerifiableCredential(wrappedIssuerVC)) {
|
|
933
|
-
|
|
934
|
-
|
|
933
|
+
issuer =
|
|
934
|
+
trimmed(wrappedIssuerVC.credential?.sub) ??
|
|
935
|
+
// @ts-ignore
|
|
936
|
+
trimmed(wrappedIssuerVC.credential?.credentialSubject?.id) ??
|
|
937
|
+
trimmed(this.idFromW3cCredentialSubject(wrappedIssuerVC))
|
|
935
938
|
} else if (CredentialMapper.isWrappedMdocCredential(wrappedIssuerVC)) {
|
|
936
939
|
return Promise.reject(Error('mdoc not yet supported'))
|
|
937
940
|
}
|
|
@@ -963,7 +966,7 @@ export class OID4VCIHolder implements IAgentPlugin {
|
|
|
963
966
|
logger.log(`Issuer for self-issued credential will be: ${issuer}`)
|
|
964
967
|
|
|
965
968
|
const holderCredentialToSign = wrappedIssuerVC.decoded
|
|
966
|
-
let proofFormat:
|
|
969
|
+
let proofFormat: CredentialProofFormat = 'lds'
|
|
967
970
|
if (wrappedIssuerVC.format.includes('jwt') && !wrappedIssuerVC.format.includes('mso_mdoc')) {
|
|
968
971
|
holderCredentialToSign.iss = issuer
|
|
969
972
|
proofFormat = 'jwt'
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { Jwt } from '@sphereon/oid4vci-common';
|
|
2
|
-
import { IIdentifierResolution, ManagedIdentifierOptsOrResult } from '@sphereon/ssi-sdk-ext.identifier-resolution';
|
|
3
|
-
import { IJwtService } from '@sphereon/ssi-sdk-ext.jwt-service';
|
|
4
|
-
import { IAgentContext, IAgentPlugin, IDIDManager, IKeyManager, IResolver } from '@veramo/core';
|
|
5
|
-
import { IOID4VCIHolder, OID4VCIHolderEvent, OID4VCIHolderOptions, RequiredContext, VerifyEBSICredentialIssuerArgs, VerifyEBSICredentialIssuerResult } from '../types/IOID4VCIHolder';
|
|
6
|
-
import 'cross-fetch/polyfill';
|
|
7
|
-
/**
|
|
8
|
-
* {@inheritDoc IOID4VCIHolder}
|
|
9
|
-
*/
|
|
10
|
-
export declare const oid4vciHolderContextMethods: Array<string>;
|
|
11
|
-
export declare function signCallback(identifier: ManagedIdentifierOptsOrResult, context: IAgentContext<IKeyManager & IDIDManager & IResolver & IIdentifierResolution & IJwtService>, nonce?: string): (jwt: Jwt, kid?: string) => Promise<string>;
|
|
12
|
-
export declare function verifyEBSICredentialIssuer(args: VerifyEBSICredentialIssuerArgs): Promise<VerifyEBSICredentialIssuerResult>;
|
|
13
|
-
export declare class OID4VCIHolder implements IAgentPlugin {
|
|
14
|
-
private readonly hasher?;
|
|
15
|
-
readonly eventTypes: Array<OID4VCIHolderEvent>;
|
|
16
|
-
readonly methods: IOID4VCIHolder;
|
|
17
|
-
private readonly vcFormatPreferences;
|
|
18
|
-
private readonly jsonldCryptographicSuitePreferences;
|
|
19
|
-
private readonly didMethodPreferences;
|
|
20
|
-
private readonly jwtCryptographicSuitePreferences;
|
|
21
|
-
private static readonly DEFAULT_MOBILE_REDIRECT_URI;
|
|
22
|
-
private readonly defaultAuthorizationRequestOpts;
|
|
23
|
-
private readonly onContactIdentityCreated?;
|
|
24
|
-
private readonly onCredentialStored?;
|
|
25
|
-
private readonly onIdentifierCreated?;
|
|
26
|
-
private readonly onVerifyEBSICredentialIssuer?;
|
|
27
|
-
constructor(options?: OID4VCIHolderOptions);
|
|
28
|
-
onEvent(event: any, context: RequiredContext): Promise<void>;
|
|
29
|
-
/**
|
|
30
|
-
* FIXME: This method can only be used locally. Creating the interpreter should be local to where the agent is running
|
|
31
|
-
*/
|
|
32
|
-
private oid4vciHolderGetMachineInterpreter;
|
|
33
|
-
/**
|
|
34
|
-
* This method is run before the machine starts! So there is no concept of the state machine context or states yet
|
|
35
|
-
*
|
|
36
|
-
* The result of this method can be directly passed into the start method of the state machine
|
|
37
|
-
* @param args
|
|
38
|
-
* @param context
|
|
39
|
-
* @private
|
|
40
|
-
*/
|
|
41
|
-
private oid4vciHolderStart;
|
|
42
|
-
private oid4vciHolderCreateCredentialsToSelectFrom;
|
|
43
|
-
private oid4vciHolderGetContact;
|
|
44
|
-
private oid4vciHolderGetCredentials;
|
|
45
|
-
private oid4vciHolderGetCredential;
|
|
46
|
-
private oid4vciHolderAddContactIdentity;
|
|
47
|
-
private oid4vciHolderGetIssuerBranding;
|
|
48
|
-
private oid4vciHolderStoreIssuerBranding;
|
|
49
|
-
private oid4vciHolderAssertValidCredentials;
|
|
50
|
-
private oid4vciHolderStoreCredentialBranding;
|
|
51
|
-
private oid4vciHolderStoreCredentials;
|
|
52
|
-
private oid4vciHolderSendNotification;
|
|
53
|
-
private getFederationTrust;
|
|
54
|
-
private oid4vciHolderGetIssuerMetadata;
|
|
55
|
-
private determineSubjectCorrelation;
|
|
56
|
-
private idFromW3cCredentialSubject;
|
|
57
|
-
private getCredentialDefinition;
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=OID4VCIHolder.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OID4VCIHolder.d.ts","sourceRoot":"","sources":["../../src/agent/OID4VCIHolder.ts"],"names":[],"mappings":"AACA,OAAO,EAaL,GAAG,EAGJ,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EACL,qBAAqB,EAQrB,6BAA6B,EAC9B,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAAE,WAAW,EAAa,MAAM,mCAAmC,CAAA;AA8B1E,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,WAAW,EACX,WAAW,EACX,SAAS,EAIV,MAAM,cAAc,CAAA;AAKrB,OAAO,EAaL,cAAc,EAGd,kBAAkB,EAClB,oBAAoB,EAUpB,eAAe,EAQf,8BAA8B,EAC9B,gCAAgC,EACjC,MAAM,yBAAyB,CAAA;AAYhC,OAAO,sBAAsB,CAAA;AAG7B;;GAEG;AAGH,eAAO,MAAM,2BAA2B,EAAE,KAAK,CAAC,MAAM,CAYrD,CAAA;AAID,wBAAgB,YAAY,CAC1B,UAAU,EAAE,6BAA6B,EACzC,OAAO,EAAE,aAAa,CAAC,WAAW,GAAG,WAAW,GAAG,SAAS,GAAG,qBAAqB,GAAG,WAAW,CAAC,EACnG,KAAK,CAAC,EAAE,MAAM,SAEK,GAAG,QAAQ,MAAM,qBAyBrC;AAED,wBAAsB,0BAA0B,CAAC,IAAI,EAAE,8BAA8B,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAwBhI;AAED,qBAAa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAY;IACpC,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAI7C;IAED,QAAQ,CAAC,OAAO,EAAE,cAAc,CAe/B;IAED,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8E;IAClH,OAAO,CAAC,QAAQ,CAAC,mCAAmC,CAMnD;IACD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAMpC;IACD,OAAO,CAAC,QAAQ,CAAC,gCAAgC,CAIhD;IACD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAA6C;IAChG,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAuF;IACvI,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAuD;IACjG,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAiD;IACrF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAkD;IACvF,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAqF;gBAEvH,OAAO,CAAC,EAAE,oBAAoB;IAoC7B,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBzE;;OAEG;YACW,kCAAkC;IA6ChD;;;;;;;OAOG;YACW,kBAAkB;YA4GlB,0CAA0C;YAsD1C,uBAAuB;YAqDvB,2BAA2B;YA6C3B,0BAA0B;YAwF1B,+BAA+B;YAoD/B,8BAA8B;YA8B9B,gCAAgC;YA2BhC,mCAAmC;YAgBnC,oCAAoC;YAiCpC,6BAA6B;YAsL7B,6BAA6B;YAkB7B,kBAAkB;YAkClB,8BAA8B;IAK5C,OAAO,CAAC,2BAA2B;IA2BnC,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,uBAAuB;CAMhC"}
|