@sphereon/oid4vci-common 0.8.2-unstable.37 → 0.8.2-unstable.38

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.
@@ -1 +1 @@
1
- {"version":3,"file":"IssuerMetadataUtils.d.ts","sourceRoot":"","sources":["../../lib/functions/IssuerMetadataUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAExB,mBAAmB,EACnB,eAAe,EACf,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAElB,wBAAgB,uBAAuB,CAAC,IAAI,CAAC,EAAE;IAC7C,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC;CACpF,GAAG,mBAAmB,EAAE,CAKxB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,CAAC,EAAE;IAC5C,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,CAAC,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC;CACpF,GAAG,mBAAmB,EAAE,CA+DxB;AAED,wBAAgB,+BAA+B,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE;IAAE,0BAA0B,EAAE,OAAO,CAAA;CAAE,YAiBvI;AAcD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,wBAAwB,EAAE,IAAI,CAAC,EAAE;IAAE,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,eAAe,EAAE,CAMzH"}
1
+ {"version":3,"file":"IssuerMetadataUtils.d.ts","sourceRoot":"","sources":["../../lib/functions/IssuerMetadataUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAExB,mBAAmB,EACnB,eAAe,EACf,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAElB,wBAAgB,uBAAuB,CAAC,IAAI,CAAC,EAAE;IAC7C,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC;CACpF,GAAG,mBAAmB,EAAE,CAKxB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,CAAC,EAAE;IAC5C,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,CAAC,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC;CACpF,GAAG,mBAAmB,EAAE,CA+DxB;AAED,wBAAgB,+BAA+B,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE;IAAE,0BAA0B,EAAE,OAAO,CAAA;CAAE,YAyBvI;AAeD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,wBAAwB,EAAE,IAAI,CAAC,EAAE;IAAE,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,eAAe,EAAE,CAMzH"}
@@ -73,23 +73,26 @@ function getSupportedCredential(opts) {
73
73
  }
74
74
  exports.getSupportedCredential = getSupportedCredential;
75
75
  function getTypesFromCredentialSupported(credentialSupported, opts) {
76
- let types = [];
76
+ const typesSet = new Set();
77
+ if (credentialSupported.id) {
78
+ typesSet.add(credentialSupported.id);
79
+ }
77
80
  if (credentialSupported.format === 'jwt_vc_json' ||
78
81
  credentialSupported.format === 'jwt_vc' ||
79
82
  credentialSupported.format === 'jwt_vc_json-ld' ||
80
83
  credentialSupported.format === 'ldp_vc') {
81
- types = credentialSupported.credential_definition.type;
84
+ credentialSupported.credential_definition.type.forEach(type => typesSet.add(type));
82
85
  }
83
86
  else if (credentialSupported.format === 'vc+sd-jwt') {
84
- types = [credentialSupported.vct];
87
+ typesSet.add(credentialSupported.vct);
85
88
  }
86
- if (!types || types.length === 0) {
89
+ if (typesSet.size === 0) {
87
90
  throw Error('Could not deduce types from credential supported');
88
91
  }
89
92
  if (opts === null || opts === void 0 ? void 0 : opts.filterVerifiableCredential) {
90
- return types.filter((type) => type !== 'VerifiableCredential');
93
+ typesSet.delete('VerifiableCredential');
91
94
  }
92
- return types;
95
+ return Array.from(typesSet);
93
96
  }
94
97
  exports.getTypesFromCredentialSupported = getTypesFromCredentialSupported;
95
98
  function arrayEqualsIgnoreOrder(a, b) {
@@ -1 +1 @@
1
- {"version":3,"file":"IssuerMetadataUtils.js","sourceRoot":"","sources":["../../lib/functions/IssuerMetadataUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IssuerMetadataUtils.js","sourceRoot":"","sources":["../../lib/functions/IssuerMetadataUtils.ts"],"names":[],"mappings":";;;AASA,SAAgB,uBAAuB,CAAC,IAKvC;IACC,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,KAAI,KAAK,CAAC,OAAO,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,EAAE;QAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,sBAAsB,iCAAM,IAAI,KAAE,KAAK,IAAG,CAAC,CAAC;KAClF;IACD,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC,iCAAM,IAAI,KAAE,KAAK,EAAE,SAAS,IAAG,CAAC,CAAC,SAAS,CAAC,CAAC;AAClF,CAAC;AAVD,0DAUC;AAED,SAAgB,sBAAsB,CAAC,IAKtC;;IACC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;IACtC,IAAI,OAA6C,CAAC;IAClD,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,KAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;QAC9C,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;KACvB;SAAM,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,KAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;QACtD,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACzB;SAAM;QACL,OAAO,GAAG,EAAE,CAAC;KACd;IAED,IAAI,CAAC,cAAc,EAAE;QACnB,OAAO,EAAE,CAAC;KACX;IACD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;IAC7B,MAAM,oBAAoB,GAA2B,cAA2C,CAAC,qBAAqB,CAAC;IAEvH,IAAI,oBAAoB,KAAK,SAAS,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3E,OAAO,EAAE,CAAC;KACX;SAAM,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACvC,OAAO,oBAAoB,CAAC;KAC7B;IACD;;OAEG;IACH,IAAI,eAAqC,CAAC;IAC1C,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,EAAE;QACf,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;YAClC,eAAe,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAChC;aAAM;YACL,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC;SAC9B;KACF;IACD,MAAM,gBAAgB,GAAuC,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAEnJ,MAAM,0BAA0B,GAA0B,EAAE,CAAC;IAC7D,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,KAAI,OAAO,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAA,KAAK,QAAQ,CAAC,IAAI,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,MAAM,MAAK,CAAC,EAAE;QACjF,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QACrE,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,CAC3C,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,eAAe,IAAI,sBAAsB,CAAC,+BAA+B,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,CAAC,CAChI,CAAC;QACF,IAAI,SAAS,EAAE;YACb,0BAA0B,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;SAC/C;KACF;IAED,IAAI,0BAA0B,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3C,mJAAmJ;QACnJ,IAAI,eAAe,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE;YACxE,eAAe,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;SAC9C;QACD,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;YACpD,MAAM,QAAQ,GAAG,+BAA+B,CAAC,GAAG,CAAC,CAAC;YACtD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE;gBAC9C,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;aACvC;YACD,OAAO,CAAC,CAAC,eAAe,IAAI,sBAAsB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1H,CAAC,CAAC,CAAC;QACH,IAAI,SAAS,EAAE;YACb,0BAA0B,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;SAC/C;KACF;IACD,OAAO,0BAA0B,CAAC;AACpC,CAAC;AApED,wDAoEC;AAED,SAAgB,+BAA+B,CAAC,mBAAwC,EAAE,IAA8C;IACtI,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;IAElC,IAAI,mBAAmB,CAAC,EAAE,EAAE;QAC1B,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;KACrC;IAED,IAAI,mBAAmB,CAAC,MAAM,KAAK,aAAa;QAC9C,mBAAmB,CAAC,MAAM,KAAK,QAAQ;QACvC,mBAAmB,CAAC,MAAM,KAAK,gBAAgB;QAC/C,mBAAmB,CAAC,MAAM,KAAK,QAAQ,EAAE;QACzC,mBAAmB,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;KACnF;SAAM,IAAI,mBAAmB,CAAC,MAAM,KAAK,WAAW,EAAE;QACrD,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAA;KACtC;IAED,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE;QACvB,MAAM,KAAK,CAAC,kDAAkD,CAAC,CAAA;KAChE;IAED,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,0BAA0B,EAAE;QACpC,QAAQ,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAA;KACxC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAC7B,CAAC;AAzBD,0EAyBC;AAGD,SAAS,sBAAsB,CAAC,CAAW,EAAE,CAAW;IACtD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE;QAC5B,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC/C,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC/C,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,KAAK,CAAC;KACrC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAGD,SAAgB,iBAAiB,CAAC,QAAkC,EAAE,IAAgC;;IACpG,MAAM,eAAe,GACnB,MAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,MAAM,CACtB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAA,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CACzI,mCAAI,EAAE,CAAC;IACV,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,WAAC,OAAA,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,mCAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA,EAAA,CAAC,CAAC;AACxH,CAAC;AAND,8CAMC"}
@@ -90,24 +90,33 @@ export function getSupportedCredential(opts?: {
90
90
  }
91
91
 
92
92
  export function getTypesFromCredentialSupported(credentialSupported: CredentialSupported, opts?: { filterVerifiableCredential: boolean }) {
93
- let types: string[] = [];
93
+ const typesSet = new Set<string>()
94
+
95
+ if (credentialSupported.id) {
96
+ typesSet.add(credentialSupported.id)
97
+ }
98
+
94
99
  if (credentialSupported.format === 'jwt_vc_json' ||
95
- credentialSupported.format === 'jwt_vc' ||
96
- credentialSupported.format === 'jwt_vc_json-ld' ||
97
- credentialSupported.format === 'ldp_vc') {
98
- types = credentialSupported.credential_definition.type;
100
+ credentialSupported.format === 'jwt_vc' ||
101
+ credentialSupported.format === 'jwt_vc_json-ld' ||
102
+ credentialSupported.format === 'ldp_vc') {
103
+ credentialSupported.credential_definition.type.forEach(type => typesSet.add(type))
99
104
  } else if (credentialSupported.format === 'vc+sd-jwt') {
100
- types = [credentialSupported.vct];
105
+ typesSet.add(credentialSupported.vct)
101
106
  }
102
- if (!types || types.length === 0) {
103
- throw Error('Could not deduce types from credential supported');
107
+
108
+ if (typesSet.size === 0) {
109
+ throw Error('Could not deduce types from credential supported')
104
110
  }
111
+
105
112
  if (opts?.filterVerifiableCredential) {
106
- return types.filter((type) => type !== 'VerifiableCredential');
113
+ typesSet.delete('VerifiableCredential')
107
114
  }
108
- return types;
115
+
116
+ return Array.from(typesSet)
109
117
  }
110
118
 
119
+
111
120
  function arrayEqualsIgnoreOrder(a: string[], b: string[]) {
112
121
  if (a.length !== b.length) return false;
113
122
  const uniqueValues = new Set([...a, ...b]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sphereon/oid4vci-common",
3
- "version": "0.8.2-unstable.37+b1e5a01",
3
+ "version": "0.8.2-unstable.38+83b86ae",
4
4
  "description": "OpenID 4 Verifiable Credential Issuance Common Types",
5
5
  "source": "lib/index.ts",
6
6
  "main": "dist/index.js",
@@ -46,5 +46,5 @@
46
46
  "publishConfig": {
47
47
  "access": "public"
48
48
  },
49
- "gitHead": "b1e5a010b1b730a148fb529aeae3fe502ce379e7"
49
+ "gitHead": "83b86ae791eeaebe1574bbc1887a59330ca6df00"
50
50
  }