diff --git a/package-lock.json b/package-lock.json index d1f4503f..a3de0784 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,9 +23,9 @@ "@babel/preset-typescript": "^7.22.5", "@cosmjs/proto-signing": "^0.32.4", "@digitalbazaar/x25519-key-agreement-key-2020": "2.1.0", - "@docknetwork/cheqd-blockchain-api": "4.1.1", + "@docknetwork/cheqd-blockchain-api": "4.2.1", "@docknetwork/cheqd-blockchain-modules": "4.0.8", - "@docknetwork/credential-sdk": "0.54.16", + "@docknetwork/credential-sdk": "0.54.18", "@inquirer/checkbox": "^1.3.8", "@inquirer/input": "^1.2.8", "@inquirer/prompts": "^3.0.3", @@ -2397,9 +2397,9 @@ } }, "node_modules/@borewit/text-codec": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@borewit/text-codec/-/text-codec-0.2.1.tgz", - "integrity": "sha512-k7vvKPbf7J2fZ5klGRD9AeKfUvojuZIQ3BT5u7Jfv+puwXkUBUT5PVyMDfJZpy30CBDXGMgw7fguK/lpOMBvgw==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@borewit/text-codec/-/text-codec-0.2.2.tgz", + "integrity": "sha512-DDaRehssg1aNrH4+2hnj1B7vnUGEjU6OIlyRdkMd0aUdIUvKXrJfXsy8LVtXAy7DRvYVluWbMspsRhz2lcW0mQ==", "license": "MIT", "funding": { "type": "github", @@ -2419,9 +2419,9 @@ "license": "Apache-2.0" }, "node_modules/@cheqd/sdk": { - "version": "5.4.3", - "resolved": "https://registry.npmjs.org/@cheqd/sdk/-/sdk-5.4.3.tgz", - "integrity": "sha512-ewi08YKsOkqwlYlHg8ocxOhuuXQQprq9+XoGY5ZR+5i3zpw2CggDHiSPfSjrF8EhVFk0JcMo3vfFRoksdjpb8w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@cheqd/sdk/-/sdk-5.5.0.tgz", + "integrity": "sha512-vtmu8GsGSvR0w08kRX1CXI+lwU5K+qJg+zxh3rQiSsid36DiakmrQAJF2bNsGhyDYDT0GjObsKohHxoiBXX0pw==", "license": "Apache-2.0", "workspaces": [ "esm", @@ -2429,7 +2429,7 @@ ], "dependencies": { "@cheqd/ts-proto": "^4.2.0", - "@cheqd/ts-proto-cjs": "npm:@cheqd/ts-proto@^2.6.0", + "@cheqd/ts-proto-cjs": "npm:@cheqd/ts-proto@~2.6.0", "@cosmjs/amino": "^0.36.2", "@cosmjs/amino-cjs": "npm:@cosmjs/amino@~0.30.1", "@cosmjs/crypto": "^0.36.2", @@ -2558,14 +2558,14 @@ } }, "node_modules/@cheqd/ts-proto": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@cheqd/ts-proto/-/ts-proto-4.2.0.tgz", - "integrity": "sha512-0/pKFSDtERs5euLW0mcry3Lr9mguDY3Sr+W9uzs7Iru6HEBxs+LjwcpaFr9073wlsKF9fLhsCDHvDJDwNxePkg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@cheqd/ts-proto/-/ts-proto-4.2.1.tgz", + "integrity": "sha512-8O15Qaj/lyb/zNsKlUfP79XDnZw7lEToeONV8ji04AkFKf+hzPQNXhTMWp7Wf/vywUEzrHYZa1I4DITT6QmCJA==", "license": "Apache-2.0", "dependencies": { "@bufbuild/protobuf": "^2.5.1", "long": "^5.3.2", - "protobufjs": "^7.5.3" + "protobufjs": "^8.0.0" }, "engines": { "node": ">=22.0.0" @@ -2586,6 +2586,30 @@ "node": ">=20" } }, + "node_modules/@cheqd/ts-proto-cjs/node_modules/protobufjs": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.5.tgz", + "integrity": "sha512-3wY1AxV+VBNW8Yypfd1yQY9pXnqTAN+KwQxL8iYm3/BjKYMNg4i0owhEe26PWDOMaIrzeeF98Lqd5NGz4omiIg==", + "hasInstallScript": true, + "license": "BSD-3-Clause", + "dependencies": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/@cnakazawa/watch": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", @@ -2630,9 +2654,9 @@ "license": "Apache-2.0" }, "node_modules/@confio/ics23/node_modules/protobufjs": { - "version": "6.11.4", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz", - "integrity": "sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==", + "version": "6.11.5", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.5.tgz", + "integrity": "sha512-OKjVH3hDoXdIZ/s5MLv8O2X0s+wOxGfV7ar6WFSKGaSAxi/6gYn3px5POS4vi+mc/0zCOdL7Jkwrj0oT1Yst2A==", "hasInstallScript": true, "license": "BSD-3-Clause", "dependencies": { @@ -2934,9 +2958,9 @@ "license": "Apache-2.0" }, "node_modules/@cosmjs/proto-signing-cjs/node_modules/protobufjs": { - "version": "6.11.4", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz", - "integrity": "sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==", + "version": "6.11.5", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.5.tgz", + "integrity": "sha512-OKjVH3hDoXdIZ/s5MLv8O2X0s+wOxGfV7ar6WFSKGaSAxi/6gYn3px5POS4vi+mc/0zCOdL7Jkwrj0oT1Yst2A==", "hasInstallScript": true, "license": "BSD-3-Clause", "dependencies": { @@ -3152,9 +3176,9 @@ "license": "Apache-2.0" }, "node_modules/@cosmjs/stargate-cjs/node_modules/protobufjs": { - "version": "6.11.4", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz", - "integrity": "sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==", + "version": "6.11.5", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.5.tgz", + "integrity": "sha512-OKjVH3hDoXdIZ/s5MLv8O2X0s+wOxGfV7ar6WFSKGaSAxi/6gYn3px5POS4vi+mc/0zCOdL7Jkwrj0oT1Yst2A==", "hasInstallScript": true, "license": "BSD-3-Clause", "dependencies": { @@ -3954,12 +3978,12 @@ } }, "node_modules/@docknetwork/cheqd-blockchain-api": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@docknetwork/cheqd-blockchain-api/-/cheqd-blockchain-api-4.1.1.tgz", - "integrity": "sha512-I1YsexfImHltf27x+p54hIMED2a3y+rprJgPmQeqrPt2mGQstjTVZUQLcetxyYmWqpt11L/RUefVGcSJSm1UIQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@docknetwork/cheqd-blockchain-api/-/cheqd-blockchain-api-4.2.1.tgz", + "integrity": "sha512-935KAigvzHM3Rh+1tdCIPJS25xPsFQQ86KTOayPQakOTar1/dVQrdQQwcz9WfkQlQN0uCvsPYt2muqidP2agOw==", "license": "MIT", "dependencies": { - "@cheqd/sdk": "5.4.3", + "@cheqd/sdk": "5.5.0", "@cheqd/ts-proto": "^4.2.0", "p-limit": "^6.1.0" }, @@ -3983,9 +4007,9 @@ } }, "node_modules/@docknetwork/credential-sdk": { - "version": "0.54.16", - "resolved": "https://registry.npmjs.org/@docknetwork/credential-sdk/-/credential-sdk-0.54.16.tgz", - "integrity": "sha512-A+EcOssWCvHYtmLwWdWIsQlRXI0tLJx2ZezZH8zWF/bpERIJCka/hRMy8OQwBfPoOMOTz8Og/HgGnLkD/mlZ4g==", + "version": "0.54.18", + "resolved": "https://registry.npmjs.org/@docknetwork/credential-sdk/-/credential-sdk-0.54.18.tgz", + "integrity": "sha512-4lyWuzSU4dfxvf6SAAeymYdMNUrLh2w7xY7nDYsaOXLfGzX7bqbEH4Kk7Ld8gTzhpHjRMp033R/VVulfVwzOjw==", "license": "MIT", "dependencies": { "@astronautlabs/jsonpath": "^1.1.2", @@ -12994,9 +13018,9 @@ "license": "MIT" }, "node_modules/@stablelib/ed25519": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@stablelib/ed25519/-/ed25519-2.0.2.tgz", - "integrity": "sha512-d/lJ5sgzhtmpMIbKFWfev+i6WebBdIzzBpMzXtZdvUijoksjXosYFNqytoMj7cRshNj+/XTLYnnVMdZfd+penw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stablelib/ed25519/-/ed25519-2.1.0.tgz", + "integrity": "sha512-8GLWoJur9nJiErABKHs5MjceSiYJJ2n8QP9k8Q5x6GWU2y5oAQ6qzPh8kCgQy5aHlUxcmRA1frQ5Gu2bHoIDPw==", "license": "MIT", "dependencies": { "@stablelib/random": "^2.0.1", @@ -19351,9 +19375,9 @@ "license": "Apache-2.0" }, "node_modules/cosmjs-types-cjs/node_modules/protobufjs": { - "version": "6.11.4", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz", - "integrity": "sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==", + "version": "6.11.5", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.5.tgz", + "integrity": "sha512-OKjVH3hDoXdIZ/s5MLv8O2X0s+wOxGfV7ar6WFSKGaSAxi/6gYn3px5POS4vi+mc/0zCOdL7Jkwrj0oT1Yst2A==", "hasInstallScript": true, "license": "BSD-3-Clause", "dependencies": { @@ -20148,9 +20172,9 @@ } }, "node_modules/did-jwt-cjs/node_modules/@scure/base": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-2.0.0.tgz", - "integrity": "sha512-3E1kpuZginKkek01ovG8krQ0Z44E3DHPjc5S2rjJw9lZn3KSQOs8S7wqikF/AH7iRanHypj85uGyxk0XAyC37w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-2.2.0.tgz", + "integrity": "sha512-b8XEupJibegiXV+tDUseI8oLQc8ei3d/4Jkb2RpbHh3MfE054ov3uIz2dhFkB3FI8iwYkEh0gGCApkrYggkPNg==", "license": "MIT", "funding": { "url": "https://paulmillr.com/funding/" @@ -20181,9 +20205,9 @@ } }, "node_modules/did-jwt/node_modules/@scure/base": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-2.0.0.tgz", - "integrity": "sha512-3E1kpuZginKkek01ovG8krQ0Z44E3DHPjc5S2rjJw9lZn3KSQOs8S7wqikF/AH7iRanHypj85uGyxk0XAyC37w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-2.2.0.tgz", + "integrity": "sha512-b8XEupJibegiXV+tDUseI8oLQc8ei3d/4Jkb2RpbHh3MfE054ov3uIz2dhFkB3FI8iwYkEh0gGCApkrYggkPNg==", "license": "MIT", "funding": { "url": "https://paulmillr.com/funding/" @@ -23026,9 +23050,9 @@ } }, "node_modules/file-type": { - "version": "21.3.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-21.3.0.tgz", - "integrity": "sha512-8kPJMIGz1Yt/aPEwOsrR97ZyZaD1Iqm8PClb1nYFclUCkBi0Ma5IsYNQzvSFS9ib51lWyIw5mIT9rWzI/xjpzA==", + "version": "21.3.4", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-21.3.4.tgz", + "integrity": "sha512-Ievi/yy8DS3ygGvT47PjSfdFoX+2isQueoYP1cntFW1JLYAuS4GD7NUPGg4zv2iZfV52uDyk5w5Z0TdpRS6Q1g==", "license": "MIT", "dependencies": { "@tokenizer/inflate": "^0.4.1", @@ -38839,9 +38863,9 @@ } }, "node_modules/protobufjs": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.4.tgz", - "integrity": "sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-8.0.1.tgz", + "integrity": "sha512-NWWCCscLjs+cOKF/s/XVNFRW7Yih0fdH+9brffR5NZCy8k42yRdl5KlWKMVXuI1vfCoy4o1z80XR/W/QUb3V3w==", "hasInstallScript": true, "license": "BSD-3-Clause", "dependencies": { @@ -42877,9 +42901,9 @@ } }, "node_modules/strtok3": { - "version": "10.3.4", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-10.3.4.tgz", - "integrity": "sha512-KIy5nylvC5le1OdaaoCJ07L+8iQzJHGH6pWDuzS+d07Cu7n1MZ2x26P8ZKIWfbK02+XIL8Mp4RkWeqdUCrDMfg==", + "version": "10.3.5", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-10.3.5.tgz", + "integrity": "sha512-ki4hZQfh5rX0QDLLkOCj+h+CVNkqmp/CMf8v8kZpkNVK6jGQooMytqzLZYUVYIZcFZ6yDB70EfD8POcFXiF5oA==", "license": "MIT", "dependencies": { "@tokenizer/token": "^0.3.0" @@ -44774,9 +44798,9 @@ } }, "node_modules/uint8arrays": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.1.0.tgz", - "integrity": "sha512-vA6nFepEmlSKkMBnLBaUMVvAC4G3CTmO58C12y4sq6WPDOR7mOFYOi7GlrQ4djeSbP6JG9Pv9tJDM97PedRSww==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.1.1.tgz", + "integrity": "sha512-9muQwa4wZG4dKi9gMAIBtnk2Pw87SRpvWTH6lOGm19V2Uqxr4uomUf2PGqPnWc+qs06sN8owUU4jfcoWOcfwVQ==", "license": "Apache-2.0 OR MIT", "dependencies": { "multiformats": "^13.0.0" @@ -48184,9 +48208,9 @@ "@astronautlabs/jsonpath": "^1.1.2", "@cedar-policy/cedar-wasm": "^4.5.0", "@cosmjs/proto-signing": "^0.32.4", - "@docknetwork/cheqd-blockchain-api": "4.1.1", + "@docknetwork/cheqd-blockchain-api": "4.2.1", "@docknetwork/cheqd-blockchain-modules": "4.0.8", - "@docknetwork/credential-sdk": "0.54.16", + "@docknetwork/credential-sdk": "0.54.18", "@docknetwork/universal-wallet": "^2.0.1", "@docknetwork/vc-delegation-engine": "1.0.3", "@docknetwork/wallet-sdk-dids": "^1.7.6", diff --git a/package.json b/package.json index 9c678fd3..b1297e22 100644 --- a/package.json +++ b/package.json @@ -92,9 +92,9 @@ "@babel/preset-typescript": "^7.22.5", "@cosmjs/proto-signing": "^0.32.4", "@digitalbazaar/x25519-key-agreement-key-2020": "2.1.0", - "@docknetwork/cheqd-blockchain-api": "4.1.1", + "@docknetwork/cheqd-blockchain-api": "4.2.1", "@docknetwork/cheqd-blockchain-modules": "4.0.8", - "@docknetwork/credential-sdk": "0.54.16", + "@docknetwork/credential-sdk": "0.54.18", "@inquirer/checkbox": "^1.3.8", "@inquirer/input": "^1.2.8", "@inquirer/prompts": "^3.0.3", diff --git a/packages/wasm/package.json b/packages/wasm/package.json index 9a7d2370..88a1df46 100644 --- a/packages/wasm/package.json +++ b/packages/wasm/package.json @@ -21,9 +21,9 @@ "@astronautlabs/jsonpath": "^1.1.2", "@cedar-policy/cedar-wasm": "^4.5.0", "@cosmjs/proto-signing": "^0.32.4", - "@docknetwork/cheqd-blockchain-api": "4.1.1", + "@docknetwork/cheqd-blockchain-api": "4.2.1", "@docknetwork/cheqd-blockchain-modules": "4.0.8", - "@docknetwork/credential-sdk": "0.54.16", + "@docknetwork/credential-sdk": "0.54.18", "@docknetwork/universal-wallet": "^2.0.1", "@docknetwork/vc-delegation-engine": "1.0.3", "@docknetwork/wallet-sdk-dids": "^1.7.6", diff --git a/packages/wasm/src/services/credential/index.test.js b/packages/wasm/src/services/credential/index.test.js index e0037cca..8a02c51b 100644 --- a/packages/wasm/src/services/credential/index.test.js +++ b/packages/wasm/src/services/credential/index.test.js @@ -1,8 +1,10 @@ import {assertRpcService, getPromiseError} from '../test-utils'; -import {credentialService as service} from './service'; +import { + credentialService as service, + credentialUtils as serviceCredentialUtils, + pexUtils, +} from './service'; import {validation} from './config'; -import * as credentialUtils from '@docknetwork/credential-sdk/vc'; -import * as pexUtils from '@docknetwork/credential-sdk/pex'; import {CredentialServiceRPC} from './service-rpc'; import {OpenID4VCIClientV1_0_13} from '@sphereon/oid4vci-client'; import {didService} from '../dids/service'; @@ -14,17 +16,19 @@ describe('Credential Service', () => { const mockCreatePresentation = jest.fn(); const mockDeriveCredentials = jest.fn(() => []); - jest.spyOn(credentialUtils, 'Presentation').mockImplementation(() => { - return { - addCredentialToPresent: mockAddCredentialToPresent, - addAttributeToReveal: mockAddAttributeToReveal, - createPresentation: mockCreatePresentation, - deriveCredentials: mockDeriveCredentials, - presBuilder: { - enforceBounds: jest.fn(), - }, - }; - }); + jest + .spyOn(serviceCredentialUtils, 'Presentation') + .mockImplementation(() => { + return { + addCredentialToPresent: mockAddCredentialToPresent, + addAttributeToReveal: mockAddAttributeToReveal, + createPresentation: mockCreatePresentation, + deriveCredentials: mockDeriveCredentials, + presBuilder: { + enforceBounds: jest.fn(), + }, + }; + }); }); it('ServiceRpc', () => { assertRpcService(CredentialServiceRPC, service, validation); @@ -35,7 +39,7 @@ describe('Credential Service', () => { }); it('expect to verify credential', async () => { jest - .spyOn(credentialUtils, 'verifyCredential') + .spyOn(serviceCredentialUtils, 'verifyCredential') .mockImplementationOnce(async () => ({verified: true})); const credential = { '@context': [ @@ -87,7 +91,7 @@ describe('Credential Service', () => { }, }; await service.verifyCredential({credential}); - expect(credentialUtils.verifyCredential).toBeCalled(); + expect(serviceCredentialUtils.verifyCredential).toBeCalled(); }); it('should create a vc', async () => { const subject = { @@ -312,7 +316,7 @@ describe('Credential Service', () => { credentials, }); - const bbsPresentation = new credentialUtils.Presentation(); + const bbsPresentation = new serviceCredentialUtils.Presentation(); expect(bbsPresentation.addCredentialToPresent).toBeCalledWith( credential, expect.any(Object), @@ -382,7 +386,7 @@ describe('Credential Service', () => { credentials, }); - const bbsPresentation = new credentialUtils.Presentation(); + const bbsPresentation = new serviceCredentialUtils.Presentation(); expect(bbsPresentation.addCredentialToPresent).toBeCalledWith( credential, expect.any(Object), diff --git a/packages/wasm/src/services/credential/service.ts b/packages/wasm/src/services/credential/service.ts index d2cd4e5d..863905f5 100644 --- a/packages/wasm/src/services/credential/service.ts +++ b/packages/wasm/src/services/credential/service.ts @@ -18,10 +18,10 @@ import {OpenID4VCIClientV1_0_13} from '@sphereon/oid4vci-client'; import {Alg} from '@sphereon/oid4vci-common'; import {getKeypairFromDoc} from '@docknetwork/universal-wallet/methods/keypairs'; import {hexToU8a} from '@docknetwork/credential-sdk/utils'; +import * as credentialSdkVc from '@docknetwork/credential-sdk/vc'; import { VerifiablePresentation, Presentation, - verifyCredential, verifyPresentation, VerifiableCredential, getSuiteFromKeyDoc, @@ -49,6 +49,12 @@ import {getPexRequiredAttributes, shouldSkipAttribute, findMatchingDescriptor} f import {didService} from '../dids/service'; import {isSDJWTCredential as checkIsSDJWT, credentialToW3C as convertCredentialToW3C, verifySDJWT, createSDJWTPresentation} from './sd-jwt'; + +export const credentialUtils = {...credentialSdkVc}; +export const pexUtils = { + generatePresentationFromPexRequest, + GeneratePresentationStatus, +}; /** * PEX (Presentation Exchange) instance for credential filtering * @private @@ -365,7 +371,7 @@ class CredentialService { return verifySDJWT(credential); } - const result = await verifyCredential(credential, { + const result = await credentialUtils.verifyCredential(credential, { resolver: blockchainService.resolver, revocationApi: {dock: blockchainService.dock}, }); @@ -606,7 +612,7 @@ class CredentialService { validation.createBBSPresentation(params); const {credentials} = params; - const bbsPlusPresentation = new Presentation(); + const bbsPlusPresentation = new credentialUtils.Presentation(); for (const {credential, attributesToReveal} of credentials) { const idx = await bbsPlusPresentation.addCredentialToPresent(credential, { resolver: blockchainService.resolver, @@ -738,7 +744,7 @@ class CredentialService { async deriveVCFromPresentation(params) { validation.deriveVCFromPresentation(params); const {credentials, options = {}, proofRequest} = params; - const presentation = new Presentation(); + const presentation = new credentialUtils.Presentation(); const selectedCredentials = credentials.map(({credential}) => credential); let descriptorBounds = []; @@ -864,7 +870,7 @@ class CredentialService { resolvedKeyDoc.signer = resolvedKeyDoc.signer(); } - const result = await generatePresentationFromPexRequest({ + const result = await pexUtils.generatePresentationFromPexRequest({ credentials: credentials.map(c => c.credential), pexRequest, holderKeyDoc: resolvedKeyDoc, @@ -882,7 +888,7 @@ class CredentialService { }, }); - if (result.status !== GeneratePresentationStatus.SUCCESS) { + if (result.status !== pexUtils.GeneratePresentationStatus.SUCCESS) { throw result.error || new Error(`Presentation generation failed: ${result.status}`); }