@sphereon/ssi-sdk.data-store 0.29.1-unstable.93 → 0.29.1-unstable.99

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":"digitalCredential.d.ts","sourceRoot":"","sources":["../../../src/types/digitalCredential/digitalCredential.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;AAEzE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,EAAE,YAAY,CAAA;IAC1B,cAAc,EAAE,wBAAwB,CAAA;IACxC,cAAc,EAAE,cAAc,CAAA;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,qBAAqB,EAAE,yBAAyB,CAAA;IAChD,sBAAsB,CAAC,EAAE,yBAAyB,CAAA;IAClD,mBAAmB,EAAE,MAAM,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,IAAI,CAAA;IACf,aAAa,EAAE,IAAI,CAAA;IACnB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,IAAI,CAAA;CACjB,CAAA;AAED,oBAAY,YAAY;IACtB,EAAE,OAAO;IACT,EAAE,OAAO;IACT,CAAC,MAAM;IACP,CAAC,MAAM;CACR;AAED,oBAAY,wBAAwB;IAClC,OAAO,YAAY;IACnB,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,IAAI,SAAS;CACd;AAED,yBAAiB,wBAAwB,CAAC;IACxC,SAAgB,aAAa,CAAC,gBAAgB,EAAE,MAAM,4BAarD;IAED,SAAgB,WAAW,CAAC,cAAc,EAAE,wBAAwB,EAAE,YAAY,EAAE,YAAY,kFAO/F;CACF;AAED,oBAAY,yBAAyB;IACnC,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,GAAG,QAAQ;CACZ;AAED,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,oBAAY,mBAAmB;IAC7B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACpB"}
1
+ {"version":3,"file":"digitalCredential.d.ts","sourceRoot":"","sources":["../../../src/types/digitalCredential/digitalCredential.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;AAEzE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,EAAE,YAAY,CAAA;IAC1B,cAAc,EAAE,wBAAwB,CAAA;IACxC,cAAc,EAAE,cAAc,CAAA;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,qBAAqB,EAAE,yBAAyB,CAAA;IAChD,sBAAsB,CAAC,EAAE,yBAAyB,CAAA;IAClD,mBAAmB,EAAE,MAAM,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,IAAI,CAAA;IACf,aAAa,EAAE,IAAI,CAAA;IACnB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,IAAI,CAAA;CACjB,CAAA;AAED,oBAAY,YAAY;IACtB,EAAE,OAAO;IACT,EAAE,OAAO;IACT,CAAC,MAAM;IACP,CAAC,MAAM;CACR;AAED,oBAAY,wBAAwB;IAClC,OAAO,YAAY;IACnB,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,IAAI,SAAS;CACd;AAED,yBAAiB,wBAAwB,CAAC;IACxC,SAAgB,aAAa,CAAC,gBAAgB,EAAE,MAAM,4BAarD;IAED,SAAgB,WAAW,CAAC,cAAc,EAAE,wBAAwB,EAAE,YAAY,EAAE,YAAY,kFAW/F;CACF;AAED,oBAAY,yBAAyB;IACnC,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,GAAG,QAAQ;CACZ;AAED,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,oBAAY,mBAAmB;IAC7B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACpB"}
@@ -37,10 +37,14 @@ var CredentialDocumentFormat;
37
37
  CredentialDocumentFormat.fromSpecValue = fromSpecValue;
38
38
  function toSpecValue(documentFormat, documentType) {
39
39
  switch (documentFormat) {
40
- case CredentialDocumentFormat.SD_JWT: return 'vc+sd-jwt';
41
- case CredentialDocumentFormat.MDOC: return 'mso_mdoc';
42
- case CredentialDocumentFormat.JSON_LD: return documentType === DocumentType.C || documentType === DocumentType.VC ? 'ldp_vc' : 'ldp_vp';
43
- case CredentialDocumentFormat.JWT: return documentType === DocumentType.C || documentType === DocumentType.VC ? 'jwt_vc_json' : 'jwt_vp_json';
40
+ case CredentialDocumentFormat.SD_JWT:
41
+ return 'vc+sd-jwt';
42
+ case CredentialDocumentFormat.MDOC:
43
+ return 'mso_mdoc';
44
+ case CredentialDocumentFormat.JSON_LD:
45
+ return documentType === DocumentType.C || documentType === DocumentType.VC ? 'ldp_vc' : 'ldp_vp';
46
+ case CredentialDocumentFormat.JWT:
47
+ return documentType === DocumentType.C || documentType === DocumentType.VC ? 'jwt_vc_json' : 'jwt_vp_json';
44
48
  }
45
49
  }
46
50
  CredentialDocumentFormat.toSpecValue = toSpecValue;
@@ -1 +1 @@
1
- {"version":3,"file":"digitalCredential.js","sourceRoot":"","sources":["../../../src/types/digitalCredential/digitalCredential.ts"],"names":[],"mappings":";;;AAyBA,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,yBAAS,CAAA;IACT,yBAAS,CAAA;IACT,uBAAO,CAAA;IACP,uBAAO,CAAA;AACT,CAAC,EALW,YAAY,4BAAZ,YAAY,QAKvB;AAED,IAAY,wBAKX;AALD,WAAY,wBAAwB;IAClC,+CAAmB,CAAA;IACnB,uCAAW,CAAA;IACX,6CAAiB,CAAA;IACjB,yCAAa,CAAA;AACf,CAAC,EALW,wBAAwB,wCAAxB,wBAAwB,QAKnC;AAED,WAAiB,wBAAwB;IACvC,SAAgB,aAAa,CAAC,gBAAwB;QACpD,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAA;QAC7C,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,OAAO,wBAAwB,CAAC,MAAM,CAAA;QACxC,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,wBAAwB,CAAC,OAAO,CAAA;QACzC,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvE,OAAO,wBAAwB,CAAC,IAAI,CAAA;QACtC,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACnC,OAAO,wBAAwB,CAAC,GAAG,CAAA;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC,wBAAwB,MAAM,kBAAkB,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC;IAbe,sCAAa,gBAa5B,CAAA;IAED,SAAgB,WAAW,CAAC,cAAwC,EAAE,YAA0B;QAC9F,QAAQ,cAAc,EAAE,CAAC;YACvB,KAAK,wBAAwB,CAAC,MAAM,CAAC,CAAC,OAAO,WAAW,CAAA;YACxD,KAAK,wBAAwB,CAAC,IAAI,CAAC,CAAC,OAAO,UAAU,CAAA;YACrD,KAAK,wBAAwB,CAAC,OAAO,CAAC,CAAC,OAAO,YAAY,KAAK,YAAY,CAAC,CAAC,IAAI,YAAY,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;YACvI,KAAK,wBAAwB,CAAC,GAAG,CAAC,CAAC,OAAO,YAAY,KAAK,YAAY,CAAC,CAAC,IAAI,YAAY,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAA,CAAC,CAAC,aAAa,CAAA;QAC9I,CAAC;IACH,CAAC;IAPe,oCAAW,cAO1B,CAAA;AACH,CAAC,EAxBgB,wBAAwB,wCAAxB,wBAAwB,QAwBxC;AAED,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACnC,wCAAW,CAAA;IACX,gDAAmB,CAAA;IACnB,wCAAW,CAAA;AACb,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC;AAED,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,uCAAqB,CAAA;IACrB,mCAAiB,CAAA;AACnB,CAAC,EAJW,cAAc,8BAAd,cAAc,QAIzB;AAED,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,4CAAqB,CAAA;IACrB,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,mCAAnB,mBAAmB,QAI9B"}
1
+ {"version":3,"file":"digitalCredential.js","sourceRoot":"","sources":["../../../src/types/digitalCredential/digitalCredential.ts"],"names":[],"mappings":";;;AAyBA,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,yBAAS,CAAA;IACT,yBAAS,CAAA;IACT,uBAAO,CAAA;IACP,uBAAO,CAAA;AACT,CAAC,EALW,YAAY,4BAAZ,YAAY,QAKvB;AAED,IAAY,wBAKX;AALD,WAAY,wBAAwB;IAClC,+CAAmB,CAAA;IACnB,uCAAW,CAAA;IACX,6CAAiB,CAAA;IACjB,yCAAa,CAAA;AACf,CAAC,EALW,wBAAwB,wCAAxB,wBAAwB,QAKnC;AAED,WAAiB,wBAAwB;IACvC,SAAgB,aAAa,CAAC,gBAAwB;QACpD,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAA;QAC7C,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,OAAO,wBAAwB,CAAC,MAAM,CAAA;QACxC,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,wBAAwB,CAAC,OAAO,CAAA;QACzC,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvE,OAAO,wBAAwB,CAAC,IAAI,CAAA;QACtC,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACnC,OAAO,wBAAwB,CAAC,GAAG,CAAA;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC,wBAAwB,MAAM,kBAAkB,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC;IAbe,sCAAa,gBAa5B,CAAA;IAED,SAAgB,WAAW,CAAC,cAAwC,EAAE,YAA0B;QAC9F,QAAQ,cAAc,EAAE,CAAC;YACvB,KAAK,wBAAwB,CAAC,MAAM;gBAClC,OAAO,WAAW,CAAA;YACpB,KAAK,wBAAwB,CAAC,IAAI;gBAChC,OAAO,UAAU,CAAA;YACnB,KAAK,wBAAwB,CAAC,OAAO;gBACnC,OAAO,YAAY,KAAK,YAAY,CAAC,CAAC,IAAI,YAAY,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;YAClG,KAAK,wBAAwB,CAAC,GAAG;gBAC/B,OAAO,YAAY,KAAK,YAAY,CAAC,CAAC,IAAI,YAAY,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAA;QAC9G,CAAC;IACH,CAAC;IAXe,oCAAW,cAW1B,CAAA;AACH,CAAC,EA5BgB,wBAAwB,wCAAxB,wBAAwB,QA4BxC;AAED,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACnC,wCAAW,CAAA;IACX,gDAAmB,CAAA;IACnB,wCAAW,CAAA;AACb,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC;AAED,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,uCAAqB,CAAA;IACrB,mCAAiB,CAAA;AACnB,CAAC,EAJW,cAAc,8BAAd,cAAc,QAIzB;AAED,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,4CAAqB,CAAA;IACrB,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,mCAAnB,mBAAmB,QAI9B"}
@@ -1,6 +1,5 @@
1
- import { AddCredentialArgs } from '../../types';
2
1
  import { DigitalCredentialEntity } from '../../entities/digitalCredential/DigitalCredentialEntity';
3
- import { DigitalCredential, NonPersistedDigitalCredential } from '../../types';
2
+ import { AddCredentialArgs, DigitalCredential, NonPersistedDigitalCredential } from '../../types';
4
3
  export declare const nonPersistedDigitalCredentialEntityFromAddArgs: (addCredentialArgs: AddCredentialArgs) => NonPersistedDigitalCredential;
5
4
  export declare const digitalCredentialFrom: (credentialEntity: DigitalCredentialEntity) => DigitalCredential;
6
5
  export declare const digitalCredentialsFrom: (credentialEntities: Array<DigitalCredentialEntity>) => DigitalCredential[];
@@ -1 +1 @@
1
- {"version":3,"file":"MappingUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/digitalCredential/MappingUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAA;AAWlG,OAAO,EAA0C,iBAAiB,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAA;AAqEtH,eAAO,MAAM,8CAA8C,sBAAuB,iBAAiB,KAAG,6BA0BrG,CAAA;AAED,eAAO,MAAM,qBAAqB,qBAAsB,uBAAuB,KAAG,iBAIjF,CAAA;AAED,eAAO,MAAM,sBAAsB,uBAAwB,MAAM,uBAAuB,CAAC,KAAG,iBAAiB,EAE5G,CAAA"}
1
+ {"version":3,"file":"MappingUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/digitalCredential/MappingUtils.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAA;AAClG,OAAO,EAAE,iBAAiB,EAA4B,iBAAiB,EAAgB,6BAA6B,EAAE,MAAM,aAAa,CAAA;AAoEzI,eAAO,MAAM,8CAA8C,sBAAuB,iBAAiB,KAAG,6BA0BrG,CAAA;AAED,eAAO,MAAM,qBAAqB,qBAAsB,uBAAuB,KAAG,iBAIjF,CAAA;AAED,eAAO,MAAM,sBAAsB,uBAAwB,MAAM,uBAAuB,CAAC,KAAG,iBAAiB,EAE5G,CAAA"}
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.digitalCredentialsFrom = exports.digitalCredentialFrom = exports.nonPersistedDigitalCredentialEntityFromAddArgs = void 0;
4
4
  const ssi_types_1 = require("@sphereon/ssi-types");
5
- const types_1 = require("../../types");
6
5
  const utils_1 = require("@veramo/utils");
6
+ const types_1 = require("../../types");
7
7
  function determineDocumentType(raw) {
8
8
  const rawDocument = parseRawDocument(raw);
9
9
  if (!rawDocument) {
@@ -44,48 +44,47 @@ function determineCredentialDocumentFormat(documentFormat) {
44
44
  }
45
45
  }
46
46
  function getValidUntil(uniformDocument) {
47
- if ('expirationDate' in uniformDocument) {
47
+ if ('expirationDate' in uniformDocument && uniformDocument.expirationDate) {
48
48
  return new Date(uniformDocument.expirationDate);
49
49
  }
50
- else if ('validUntil' in uniformDocument) {
50
+ else if ('validUntil' in uniformDocument && uniformDocument.validUntil) {
51
51
  return new Date(uniformDocument.validUntil);
52
52
  }
53
- else if ('exp' in uniformDocument) {
53
+ else if ('exp' in uniformDocument && uniformDocument.exp) {
54
54
  return new Date(uniformDocument.exp * 1000);
55
55
  }
56
56
  return undefined;
57
57
  }
58
58
  function getValidFrom(uniformDocument) {
59
- if ('issuanceDate' in uniformDocument) {
59
+ if ('issuanceDate' in uniformDocument && uniformDocument.issuanceDate) {
60
60
  return new Date(uniformDocument.issuanceDate);
61
61
  }
62
- else if ('validFrom' in uniformDocument) {
62
+ else if ('validFrom' in uniformDocument && uniformDocument.validFrom) {
63
63
  return new Date(uniformDocument['validFrom']);
64
64
  }
65
- else if ('nbf' in uniformDocument) {
65
+ else if ('nbf' in uniformDocument && uniformDocument.nbf) {
66
66
  return new Date(uniformDocument['nbf'] * 1000);
67
67
  }
68
- else if ('iat' in uniformDocument) {
68
+ else if ('iat' in uniformDocument && uniformDocument.iat) {
69
69
  return new Date(uniformDocument['iat'] * 1000);
70
70
  }
71
71
  return undefined;
72
72
  }
73
73
  const nonPersistedDigitalCredentialEntityFromAddArgs = (addCredentialArgs) => {
74
- var _a;
74
+ var _a, _b, _c;
75
75
  const documentType = determineDocumentType(addCredentialArgs.rawDocument);
76
76
  const documentFormat = ssi_types_1.CredentialMapper.detectDocumentType(addCredentialArgs.rawDocument);
77
77
  if (documentFormat === 2 /* DocumentFormat.SD_JWT_VC */ && !((_a = addCredentialArgs.opts) === null || _a === void 0 ? void 0 : _a.hasher)) {
78
78
  throw new Error('No hasher function is provided for SD_JWT credential.');
79
79
  }
80
- const uniformDocument = documentFormat === 2 /* DocumentFormat.SD_JWT_VC */
81
- ? (0, ssi_types_1.decodeSdJwtVc)(addCredentialArgs.rawDocument, addCredentialArgs.opts.hasher).decodedPayload
82
- : documentType === types_1.DocumentType.VC || documentType === types_1.DocumentType.C
83
- ? ssi_types_1.CredentialMapper.toUniformCredential(addCredentialArgs.rawDocument)
84
- : ssi_types_1.CredentialMapper.toUniformPresentation(addCredentialArgs.rawDocument);
80
+ const hasher = (_b = addCredentialArgs.opts) === null || _b === void 0 ? void 0 : _b.hasher;
81
+ const uniformDocument = documentType === types_1.DocumentType.VC || documentType === types_1.DocumentType.C
82
+ ? ssi_types_1.CredentialMapper.toUniformCredential(addCredentialArgs.rawDocument, { hasher })
83
+ : ssi_types_1.CredentialMapper.toUniformPresentation(addCredentialArgs.rawDocument);
85
84
  const validFrom = getValidFrom(uniformDocument);
86
85
  const validUntil = getValidUntil(uniformDocument);
87
- return Object.assign(Object.assign({}, addCredentialArgs), { documentType, documentFormat: determineCredentialDocumentFormat(documentFormat), createdAt: new Date(), credentialId: uniformDocument.id, hash: (0, utils_1.computeEntryHash)(addCredentialArgs.rawDocument), uniformDocument: JSON.stringify(uniformDocument), validFrom,
88
- validUntil, lastUpdatedAt: new Date() });
86
+ const hash = (0, utils_1.computeEntryHash)(addCredentialArgs.rawDocument);
87
+ return Object.assign(Object.assign(Object.assign(Object.assign({}, addCredentialArgs), { documentType, documentFormat: determineCredentialDocumentFormat(documentFormat), createdAt: new Date(), credentialId: (_c = uniformDocument.id) !== null && _c !== void 0 ? _c : hash, hash, uniformDocument: JSON.stringify(uniformDocument), validFrom }), (validUntil && { validUntil })), { lastUpdatedAt: new Date() });
89
88
  };
90
89
  exports.nonPersistedDigitalCredentialEntityFromAddArgs = nonPersistedDigitalCredentialEntityFromAddArgs;
91
90
  const digitalCredentialFrom = (credentialEntity) => {
@@ -1 +1 @@
1
- {"version":3,"file":"MappingUtils.js","sourceRoot":"","sources":["../../../src/utils/digitalCredential/MappingUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MappingUtils.js","sourceRoot":"","sources":["../../../src/utils/digitalCredential/MappingUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-sdk.data-store",
3
- "version": "0.29.1-unstable.93+1703d1a0",
3
+ "version": "0.29.1-unstable.99+44c80a0f",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -17,9 +17,9 @@
17
17
  "@sphereon/pex": "^4.0.1",
18
18
  "@sphereon/ssi-sdk-ext.did-utils": "0.24.1-next.96",
19
19
  "@sphereon/ssi-sdk-ext.identifier-resolution": "0.24.1-next.96",
20
- "@sphereon/ssi-sdk.agent-config": "0.29.1-unstable.93+1703d1a0",
21
- "@sphereon/ssi-sdk.core": "0.29.1-unstable.93+1703d1a0",
22
- "@sphereon/ssi-types": "0.29.1-unstable.93+1703d1a0",
20
+ "@sphereon/ssi-sdk.agent-config": "0.29.1-unstable.99+44c80a0f",
21
+ "@sphereon/ssi-sdk.core": "0.29.1-unstable.99+44c80a0f",
22
+ "@sphereon/ssi-types": "0.29.1-unstable.99+44c80a0f",
23
23
  "@veramo/core": "4.2.0",
24
24
  "@veramo/utils": "4.2.0",
25
25
  "blakejs": "^1.2.1",
@@ -50,5 +50,5 @@
50
50
  "PostgreSQL",
51
51
  "Contact Store"
52
52
  ],
53
- "gitHead": "1703d1a01e2e697d9e4bcdd8e1b570372425b27a"
53
+ "gitHead": "44c80a0f3f6ec6e58ea761155d0511beabf6dfed"
54
54
  }
@@ -5,7 +5,7 @@ import {
5
5
  CredentialRole,
6
6
  CredentialStateType,
7
7
  DigitalCredential,
8
- DocumentType
8
+ DocumentType,
9
9
  } from '../../types'
10
10
  import { typeormDate, typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
11
11
 
@@ -34,7 +34,7 @@ export enum CredentialDocumentFormat {
34
34
  JSON_LD = 'JSON_LD',
35
35
  JWT = 'JWT',
36
36
  SD_JWT = 'SD_JWT',
37
- MDOC = 'MDOC'
37
+ MDOC = 'MDOC',
38
38
  }
39
39
 
40
40
  export namespace CredentialDocumentFormat {
@@ -55,10 +55,14 @@ export namespace CredentialDocumentFormat {
55
55
 
56
56
  export function toSpecValue(documentFormat: CredentialDocumentFormat, documentType: DocumentType) {
57
57
  switch (documentFormat) {
58
- case CredentialDocumentFormat.SD_JWT: return 'vc+sd-jwt'
59
- case CredentialDocumentFormat.MDOC: return 'mso_mdoc'
60
- case CredentialDocumentFormat.JSON_LD: return documentType === DocumentType.C || documentType === DocumentType.VC ? 'ldp_vc' : 'ldp_vp'
61
- case CredentialDocumentFormat.JWT: return documentType === DocumentType.C || documentType === DocumentType.VC ? 'jwt_vc_json': 'jwt_vp_json'
58
+ case CredentialDocumentFormat.SD_JWT:
59
+ return 'vc+sd-jwt'
60
+ case CredentialDocumentFormat.MDOC:
61
+ return 'mso_mdoc'
62
+ case CredentialDocumentFormat.JSON_LD:
63
+ return documentType === DocumentType.C || documentType === DocumentType.VC ? 'ldp_vc' : 'ldp_vp'
64
+ case CredentialDocumentFormat.JWT:
65
+ return documentType === DocumentType.C || documentType === DocumentType.VC ? 'jwt_vc_json' : 'jwt_vp_json'
62
66
  }
63
67
  }
64
68
  }
@@ -66,7 +70,7 @@ export namespace CredentialDocumentFormat {
66
70
  export enum CredentialCorrelationType {
67
71
  DID = 'DID',
68
72
  X509_CN = 'X509_CN',
69
- URL = 'URL'
73
+ URL = 'URL',
70
74
  }
71
75
 
72
76
  export enum CredentialRole {
@@ -1,8 +1,5 @@
1
- import { AddCredentialArgs } from '../../types'
2
- import { DigitalCredentialEntity } from '../../entities/digitalCredential/DigitalCredentialEntity'
3
1
  import {
4
2
  CredentialMapper,
5
- decodeSdJwtVc,
6
3
  DocumentFormat,
7
4
  IVerifiableCredential,
8
5
  IVerifiablePresentation,
@@ -10,8 +7,9 @@ import {
10
7
  OriginalVerifiablePresentation,
11
8
  SdJwtDecodedVerifiableCredentialPayload,
12
9
  } from '@sphereon/ssi-types'
13
- import { CredentialDocumentFormat, DocumentType, DigitalCredential, NonPersistedDigitalCredential } from '../../types'
14
10
  import { computeEntryHash } from '@veramo/utils'
11
+ import { DigitalCredentialEntity } from '../../entities/digitalCredential/DigitalCredentialEntity'
12
+ import { AddCredentialArgs, CredentialDocumentFormat, DigitalCredential, DocumentType, NonPersistedDigitalCredential } from '../../types'
15
13
 
16
14
  function determineDocumentType(raw: string): DocumentType {
17
15
  const rawDocument = parseRawDocument(raw)
@@ -56,24 +54,24 @@ function determineCredentialDocumentFormat(documentFormat: DocumentFormat): Cred
56
54
  }
57
55
 
58
56
  function getValidUntil(uniformDocument: IVerifiableCredential | IVerifiablePresentation | SdJwtDecodedVerifiableCredentialPayload): Date | undefined {
59
- if ('expirationDate' in uniformDocument) {
57
+ if ('expirationDate' in uniformDocument && uniformDocument.expirationDate) {
60
58
  return new Date(uniformDocument.expirationDate)
61
- } else if ('validUntil' in uniformDocument) {
59
+ } else if ('validUntil' in uniformDocument && uniformDocument.validUntil) {
62
60
  return new Date(uniformDocument.validUntil)
63
- } else if ('exp' in uniformDocument) {
61
+ } else if ('exp' in uniformDocument && uniformDocument.exp) {
64
62
  return new Date(uniformDocument.exp * 1000)
65
63
  }
66
64
  return undefined
67
65
  }
68
66
 
69
67
  function getValidFrom(uniformDocument: IVerifiableCredential | IVerifiablePresentation | SdJwtDecodedVerifiableCredentialPayload): Date | undefined {
70
- if ('issuanceDate' in uniformDocument) {
68
+ if ('issuanceDate' in uniformDocument && uniformDocument.issuanceDate) {
71
69
  return new Date(uniformDocument.issuanceDate)
72
- } else if ('validFrom' in uniformDocument) {
70
+ } else if ('validFrom' in uniformDocument && uniformDocument.validFrom) {
73
71
  return new Date(uniformDocument['validFrom'])
74
- } else if ('nbf' in uniformDocument) {
72
+ } else if ('nbf' in uniformDocument && uniformDocument.nbf) {
75
73
  return new Date(uniformDocument['nbf'] * 1000)
76
- } else if ('iat' in uniformDocument) {
74
+ } else if ('iat' in uniformDocument && uniformDocument.iat) {
77
75
  return new Date(uniformDocument['iat'] * 1000)
78
76
  }
79
77
  return undefined
@@ -85,24 +83,24 @@ export const nonPersistedDigitalCredentialEntityFromAddArgs = (addCredentialArgs
85
83
  if (documentFormat === DocumentFormat.SD_JWT_VC && !addCredentialArgs.opts?.hasher) {
86
84
  throw new Error('No hasher function is provided for SD_JWT credential.')
87
85
  }
86
+ const hasher = addCredentialArgs.opts?.hasher
88
87
  const uniformDocument =
89
- documentFormat === DocumentFormat.SD_JWT_VC
90
- ? decodeSdJwtVc(addCredentialArgs.rawDocument, addCredentialArgs.opts!.hasher!).decodedPayload
91
- : documentType === DocumentType.VC || documentType === DocumentType.C
92
- ? CredentialMapper.toUniformCredential(addCredentialArgs.rawDocument)
93
- : CredentialMapper.toUniformPresentation(addCredentialArgs.rawDocument)
88
+ documentType === DocumentType.VC || documentType === DocumentType.C
89
+ ? CredentialMapper.toUniformCredential(addCredentialArgs.rawDocument, { hasher })
90
+ : CredentialMapper.toUniformPresentation(addCredentialArgs.rawDocument)
94
91
  const validFrom: Date | undefined = getValidFrom(uniformDocument)
95
92
  const validUntil: Date | undefined = getValidUntil(uniformDocument)
93
+ const hash = computeEntryHash(addCredentialArgs.rawDocument)
96
94
  return {
97
95
  ...addCredentialArgs,
98
96
  documentType,
99
97
  documentFormat: determineCredentialDocumentFormat(documentFormat),
100
98
  createdAt: new Date(),
101
- credentialId: uniformDocument.id as string | undefined, // uniformDocument.id is being inferred as JsonValue somehow
102
- hash: computeEntryHash(addCredentialArgs.rawDocument),
99
+ credentialId: uniformDocument.id ?? hash,
100
+ hash,
103
101
  uniformDocument: JSON.stringify(uniformDocument),
104
102
  validFrom,
105
- validUntil,
103
+ ...(validUntil && { validUntil }),
106
104
  lastUpdatedAt: new Date(),
107
105
  }
108
106
  }