diff --git a/e2e/claim-revocation.e2e.ts b/e2e/claim-revocation.e2e.ts index 0ff0c419..5398633d 100644 --- a/e2e/claim-revocation.e2e.ts +++ b/e2e/claim-revocation.e2e.ts @@ -1,4 +1,9 @@ -import { providers, Wallet } from 'ethers'; +import { providers, Wallet, utils } from 'ethers'; +import { + CredentialStatusPurpose, + CredentialStatusType, + Credential, +} from '@ew-did-registry/credentials-interface'; import { initWithPrivateKeySigner, ProviderType, @@ -10,12 +15,15 @@ import { CacheClient, IIssuerDefinition, IRevokerDefinition, + RoleCredentialSubject, } from '../src'; import { replenish, root, rpcUrl, setupENS } from './utils/setup-contracts'; import { setLogger } from '../src/config/logger.config'; import { ConsoleLogger } from '../src/utils/logger'; import { addressOf } from '@ew-did-registry/did-ethr-resolver'; +const { id } = utils; + const provider = new providers.JsonRpcProvider(rpcUrl); const mockGetRoleDefinition = jest.fn(); @@ -34,6 +42,22 @@ jest.mock('../src/modules/cache-client/cache-client.service', () => { issueClaim: mockIssueClaim, getAllowedRolesByIssuer: mockGetAllowedRoles, getClaimById: mockGetClaimById, + addStatusToCredential: ( + credential: Credential + ): Credential => { + return { + ...credential, + credentialStatus: { + id: `https://energyweb.org/credential/${id( + JSON.stringify(credential) + )}#list`, + type: CredentialStatusType.StatusList2021Entry, + statusPurpose: CredentialStatusPurpose.REVOCATION, + statusListIndex: '1', + statusListCredential: `https://identitycache.org/v1/status-list/${credential.id}`, + }, + }; + }, }; }), }; diff --git a/e2e/claims.service.e2e.ts b/e2e/claims.service.e2e.ts index cf1840db..aeedc403 100644 --- a/e2e/claims.service.e2e.ts +++ b/e2e/claims.service.e2e.ts @@ -5,6 +5,12 @@ import { import { Methods, Chain } from '@ew-did-registry/did'; import { addressOf } from '@ew-did-registry/did-ethr-resolver'; import { KeyTags } from '@ew-did-registry/did-resolver-interface'; +import { + CredentialStatusPurpose, + CredentialStatusType, + VerifiablePresentation, + Credential, +} from '@ew-did-registry/credentials-interface'; import { providers, utils, Wallet } from 'ethers'; import { AssetsService, @@ -20,6 +26,7 @@ import { MessagingService, IClaimIssuance, SignerT, + RoleCredentialSubject, } from '../src'; import { replenish, root, rpcUrl, setupENS } from './utils/setup-contracts'; import { ClaimManager__factory } from '../ethers/factories/ClaimManager__factory'; @@ -27,9 +34,8 @@ import { ProofVerifier } from '@ew-did-registry/claims'; import { ClaimManager } from '../ethers/ClaimManager'; import { setLogger } from '../src/config/logger.config'; import { ConsoleLogger, LogLevel } from '../src/utils/logger'; -import { VerifiablePresentation } from '@ew-did-registry/credentials-interface'; -const { namehash } = utils; +const { namehash, id } = utils; const provider = new providers.JsonRpcProvider(rpcUrl); const staticIssuer = Wallet.createRandom().connect(provider); @@ -108,6 +114,22 @@ jest.mock('../src/modules/cache-client/cache-client.service', () => { issueClaim: mockIssueClaim, rejectClaim: mockRejectClaim, getAllowedRolesByIssuer: mockGetAllowedRoles, + addStatusToCredential: ( + credential: Credential + ): Credential => { + return { + ...credential, + credentialStatus: { + id: `https://energyweb.org/credential/${id( + JSON.stringify(credential) + )}#list`, + type: CredentialStatusType.StatusList2021Entry, + statusPurpose: CredentialStatusPurpose.REVOCATION, + statusListIndex: '1', + statusListCredential: `https://identitycache.org/v1/status-list/${credential.id}`, + }, + }; + }, }; }), }; diff --git a/e2e/verifiable-credentials.service.e2e.ts b/e2e/verifiable-credentials.service.e2e.ts index c3b28513..480eb0ff 100644 --- a/e2e/verifiable-credentials.service.e2e.ts +++ b/e2e/verifiable-credentials.service.e2e.ts @@ -1,4 +1,4 @@ -import { Wallet } from 'ethers'; +import { Wallet, utils } from 'ethers'; import axios from 'axios'; import { v4 as uuid } from 'uuid'; import { @@ -14,19 +14,42 @@ import { VerifiableCredentialsServiceBase, } from '../src/modules/verifiable-credentials'; import { + CredentialStatusType, VC_API_EXCHANGE, VerifiableCredential, VpRequest, VpRequestInteractServiceType, VpRequestQueryType, + Credential, + CredentialStatusPurpose, } from '@ew-did-registry/credentials-interface'; +const { id } = utils; + jest.mock('axios'); const getClaimsBySubject = jest.fn(); jest.mock('../src/modules/cache-client/cache-client.service', () => { return { CacheClient: jest.fn().mockImplementation(() => { - return { getClaimsBySubject }; + return { + getClaimsBySubject, + addStatusToCredential: ( + credential: Credential + ): Credential => { + return { + ...credential, + credentialStatus: { + id: `https://energyweb.org/credential/${id( + JSON.stringify(credential) + )}#list`, + type: CredentialStatusType.StatusList2021Entry, + statusPurpose: CredentialStatusPurpose.REVOCATION, + statusListIndex: '1', + statusListCredential: `https://identitycache.org/v1/status-list/${credential.id}`, + }, + }; + }, + }; }), }; }); @@ -332,7 +355,6 @@ describe('Verifiable credentials tests', () => { }); }); - // TODO: add tests for credential exchange describe('Verifiable credentials exchange', () => { const vpRequest: VpRequest = { query: [ @@ -387,13 +409,21 @@ describe('Verifiable credentials tests', () => { ]); (axios as jest.Mocked).post.mockImplementation((url) => { return Promise.resolve({ - data: url === exchangeUrl ? { errors: [], vpRequest } : '', + data: url === exchangeUrl ? vpRequest : '', }); }); getClaimsBySubject.mockResolvedValue([{ vp }]); }); test('initiateExchange() should return presentation matching presentation request', async () => { + (axios as jest.Mocked).post.mockImplementationOnce( + (url) => { + return Promise.resolve({ + data: url === exchangeUrl ? vpRequest : '', + }); + } + ); + const [{ selectResults }] = await verifiableCredentialsService.initiateExchange({ type: VC_API_EXCHANGE, diff --git a/package-lock.json b/package-lock.json index 02fa679f..45710cf7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "iam-client-lib", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "iam-client-lib", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "license": "GPL-3.0-or-later", "dependencies": { "@energyweb/credential-governance": "^1.0.1-alpha.36.0", @@ -14,17 +14,17 @@ "@energyweb/onchain-claims": "^1.0.1-alpha.46.0", "@energyweb/staking-pool": "^1.0.0-rc.14", "@ensdomains/ens": "^0.6.2", - "@ew-did-registry/claims": "^0.6.3-alpha.577.0", - "@ew-did-registry/credentials-interface": "^0.6.3-alpha.577.0", - "@ew-did-registry/did": "^0.6.3-alpha.577.0", - "@ew-did-registry/did-document": "^0.6.3-alpha.577.0", - "@ew-did-registry/did-ethr-resolver": "^0.6.3-alpha.577.0", - "@ew-did-registry/did-ipfs-store": "^0.6.3-alpha.577.0", + "@ew-did-registry/claims": "^0.6.3-alpha.590.0", + "@ew-did-registry/credentials-interface": "^0.6.3-alpha.590.0", + "@ew-did-registry/did": "^0.6.3-alpha.590.0", + "@ew-did-registry/did-document": "^0.6.3-alpha.590.0", + "@ew-did-registry/did-ethr-resolver": "^0.6.3-alpha.590.0", + "@ew-did-registry/did-ipfs-store": "^0.6.3-alpha.590.0", "@ew-did-registry/did-resolver-interface": "^0.6.3-alpha.577.0", - "@ew-did-registry/jwt": "^0.6.3-alpha.577.0", - "@ew-did-registry/keys": "^0.6.3-alpha.577.0", - "@ew-did-registry/proxyidentity": "^0.6.3-alpha.577.0", - "@ew-did-registry/revocation": "^0.6.3-alpha.571.0", + "@ew-did-registry/jwt": "^0.6.3-alpha.590.0", + "@ew-did-registry/keys": "^0.6.3-alpha.590.0", + "@ew-did-registry/proxyidentity": "^0.6.3-alpha.590.0", + "@ew-did-registry/revocation": "^0.6.3-alpha.590.0", "@gnosis.pm/safe-apps-provider": "^0.11.0", "@gnosis.pm/safe-apps-sdk": "^7.3.0", "@metamask/detect-provider": "^1.2.0", @@ -50,10 +50,10 @@ "uuid": "^7.0.3" }, "devDependencies": { - "@babel/core": "7.18.2", + "@babel/core": "7.18.0", "@babel/plugin-transform-regenerator": "7.18.0", "@babel/plugin-transform-runtime": "^7.17.0", - "@babel/preset-env": "7.18.2", + "@babel/preset-env": "7.18.0", "@babel/runtime": "^7.17.2", "@energyweb/eslint-config": "^0.0.2", "@energyweb/prettier-config": "^0.0.1", @@ -164,21 +164,21 @@ } }, "node_modules/@babel/core": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz", - "integrity": "sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.0.tgz", + "integrity": "sha512-Xyw74OlJwDijToNi0+6BBI5mLLR5+5R3bcSH80LXzjzEGEUlvNzujEE71BaD/ApEZHAvFI/Mlmp4M5lIkdeeWw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-compilation-targets": "^7.18.2", + "@babel/generator": "^7.18.0", + "@babel/helper-compilation-targets": "^7.17.10", "@babel/helper-module-transforms": "^7.18.0", - "@babel/helpers": "^7.18.2", + "@babel/helpers": "^7.18.0", "@babel/parser": "^7.18.0", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.2", - "@babel/types": "^7.18.2", + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -194,12 +194,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", - "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.0.tgz", + "integrity": "sha512-81YO9gGx6voPXlvYdZBliFXAZU8vZ9AZ6z+CjlmcnaeOcYSFbMTpdeDUO9xD9dh/68Vq03I8ZspfUTPfitcDHg==", "dev": true, "dependencies": { - "@babel/types": "^7.18.2", + "@babel/types": "^7.18.0", "@jridgewell/gen-mapping": "^0.3.0", "jsesc": "^2.5.1" }, @@ -247,9 +247,9 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", - "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "version": "7.17.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.10.tgz", + "integrity": "sha512-gh3RxjWbauw/dFiU/7whjd0qN9K6nPJMqe6+Er7rOavFh0CQUSwhAE3IcTho2rywPJFxej6TUUHDkWcYI6gGqQ==", "dev": true, "dependencies": { "@babel/compat-data": "^7.17.10", @@ -321,10 +321,13 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", - "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", + "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, "engines": { "node": ">=6.9.0" } @@ -461,12 +464,12 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", - "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", "dev": true, "dependencies": { - "@babel/types": "^7.18.2" + "@babel/types": "^7.17.0" }, "engines": { "node": ">=6.9.0" @@ -530,14 +533,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", - "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.0.tgz", + "integrity": "sha512-AE+HMYhmlMIbho9nbvicHyxFwhrO+xhKB6AhRxzl8w46Yj0VXTZjEsAoBVC7rB2I0jzX+yWyVybnO08qkfx6kg==", "dev": true, "dependencies": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.2", - "@babel/types": "^7.18.2" + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" }, "engines": { "node": ">=6.9.0" @@ -1336,14 +1339,14 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz", - "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.0.tgz", + "integrity": "sha512-cCeR0VZWtfxWS4YueAK2qtHtBPJRSaJcMlbS8jhSIm/A3E2Kpro4W1Dn4cqJtp59dtWfXjQwK7SPKF8ghs7rlw==", "dev": true, "dependencies": { "@babel/helper-module-transforms": "^7.18.0", "@babel/helper-plugin-utils": "^7.17.12", - "@babel/helper-simple-access": "^7.18.2", + "@babel/helper-simple-access": "^7.17.7", "babel-plugin-dynamic-import-node": "^2.3.3" }, "engines": { @@ -1582,9 +1585,9 @@ } }, "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.2.tgz", - "integrity": "sha512-/cmuBVw9sZBGZVOMkpAEaVLwm4JmK2GZ1dFKOGGpMzEHWFmyZZ59lUU0PdRr8YNYeQdNzTDwuxP2X2gzydTc9g==", + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.17.12.tgz", + "integrity": "sha512-kAKJ7DX1dSRa2s7WN1xUAuaQmkTpN+uig4wCKWivVXIObqGbVTUlSavHyfI2iZvz89GFAMGm9p2DBJ4Y1Tp0hw==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.17.12" @@ -1660,13 +1663,13 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.2.tgz", - "integrity": "sha512-PfpdxotV6afmXMU47S08F9ZKIm2bJIQ0YbAAtDfIENX7G1NUAXigLREh69CWDjtgUy7dYn7bsMzkgdtAlmS68Q==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.0.tgz", + "integrity": "sha512-cP74OMs7ECLPeG1reiCQ/D/ypyOxgfm8uR6HRYV23vTJ7Lu1nbgj9DQDo/vH59gnn7GOAwtTDPPYV4aXzsMKHA==", "dev": true, "dependencies": { "@babel/compat-data": "^7.17.10", - "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-compilation-targets": "^7.17.10", "@babel/helper-plugin-utils": "^7.17.12", "@babel/helper-validator-option": "^7.16.7", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.17.12", @@ -1711,12 +1714,12 @@ "@babel/plugin-transform-dotall-regex": "^7.16.7", "@babel/plugin-transform-duplicate-keys": "^7.17.12", "@babel/plugin-transform-exponentiation-operator": "^7.16.7", - "@babel/plugin-transform-for-of": "^7.18.1", + "@babel/plugin-transform-for-of": "^7.17.12", "@babel/plugin-transform-function-name": "^7.16.7", "@babel/plugin-transform-literals": "^7.17.12", "@babel/plugin-transform-member-expression-literals": "^7.16.7", "@babel/plugin-transform-modules-amd": "^7.18.0", - "@babel/plugin-transform-modules-commonjs": "^7.18.2", + "@babel/plugin-transform-modules-commonjs": "^7.18.0", "@babel/plugin-transform-modules-systemjs": "^7.18.0", "@babel/plugin-transform-modules-umd": "^7.18.0", "@babel/plugin-transform-named-capturing-groups-regex": "^7.17.12", @@ -1729,12 +1732,12 @@ "@babel/plugin-transform-shorthand-properties": "^7.16.7", "@babel/plugin-transform-spread": "^7.17.12", "@babel/plugin-transform-sticky-regex": "^7.16.7", - "@babel/plugin-transform-template-literals": "^7.18.2", + "@babel/plugin-transform-template-literals": "^7.17.12", "@babel/plugin-transform-typeof-symbol": "^7.17.12", "@babel/plugin-transform-unicode-escapes": "^7.16.7", "@babel/plugin-transform-unicode-regex": "^7.16.7", "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.2", + "@babel/types": "^7.18.0", "babel-plugin-polyfill-corejs2": "^0.3.0", "babel-plugin-polyfill-corejs3": "^0.5.0", "babel-plugin-polyfill-regenerator": "^0.3.0", @@ -1807,19 +1810,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz", - "integrity": "sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.0.tgz", + "integrity": "sha512-oNOO4vaoIQoGjDQ84LgtF/IAlxlyqL4TUuoQ7xLkQETFaHkY1F7yazhB4Kt3VcZGL0ZF/jhrEpnXqUb0M7V3sw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-environment-visitor": "^7.18.2", + "@babel/generator": "^7.18.0", + "@babel/helper-environment-visitor": "^7.16.7", "@babel/helper-function-name": "^7.17.9", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", "@babel/parser": "^7.18.0", - "@babel/types": "^7.18.2", + "@babel/types": "^7.18.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -1828,9 +1831,9 @@ } }, "node_modules/@babel/types": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.2.tgz", - "integrity": "sha512-0On6B8A4/+mFUto5WERt3EEuG1NznDirvwca1O8UwXQHVY8g3R7OzYgxXdOfMwLO08UrpUD/2+3Bclyq+/C94Q==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.0.tgz", + "integrity": "sha512-vhAmLPAiC8j9K2GnsnLPCIH5wCrPpYIVBCWRBFDCB7Y/BXLqi/O+1RSTTM2bsmg6U/551+FCf9PNPxjABmxHTw==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.16.7", @@ -3617,18 +3620,18 @@ } }, "node_modules/@ew-did-registry/claims": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/claims/-/claims-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-Y3ruTwySYaW/hEjk+ZQZ2zEdrVA2ALqY5Mfn/n17Tjnj2ikVrNZdE9Nfqa4qdzhFPWm0cfCJLzNZAbu/3rLUdQ==", - "dependencies": { - "@ew-did-registry/did": "0.6.3-alpha.577.0", - "@ew-did-registry/did-document": "0.6.3-alpha.577.0", - "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.577.0", - "@ew-did-registry/did-ipfs-store": "0.6.3-alpha.577.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/did-store-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/jwt": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/claims/-/claims-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-R8zpYIixcpnvzO8DF1vzqt73RBJ37ynFeX00TiLHcMoGcTnOgIK5Co/FyMqTRkBNtZZdo16tkk3V8o4LrZAsxg==", + "dependencies": { + "@ew-did-registry/did": "0.6.3-alpha.590.0", + "@ew-did-registry/did-document": "0.6.3-alpha.590.0", + "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.590.0", + "@ew-did-registry/did-ipfs-store": "0.6.3-alpha.590.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/did-store-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/jwt": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "@types/sjcl": "1.0.28", "base64url": "^3.0.1", "eciesjs": "^0.3.4", @@ -3637,9 +3640,9 @@ } }, "node_modules/@ew-did-registry/credentials-interface": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/credentials-interface/-/credentials-interface-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-F7sffefU5LKZ9NlqqckijhoNPehcwzagfKeGZWxwfjgaS+XR9SZux493dvXDJypnwOyRiot0O/w5PBXudntOUA==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/credentials-interface/-/credentials-interface-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-NqXCyxFOe71g17HWpQkoAADPazZBUAly8lCcFC/9hE+Cp6ks8D64Ftzz41+t5k5/XIYOwu1+ovWuVadbbQqkQw==", "dependencies": { "@ethersproject/abstract-signer": "5.6.0", "@sphereon/pex": "^1.0.2", @@ -3670,64 +3673,64 @@ } }, "node_modules/@ew-did-registry/did": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did/-/did-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-6v0rzExZgZ6+Og4uyA1RVuTv/RU+vWSDi23kJEgJwC4gkQiqB3Vh0aGX4Y3jw5UifyVdzJKekxSKMoEpXZ7uUA==" + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did/-/did-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-0ysumTnera340qv5abF5cPwH5A6xI508N6rFR7n4kDZHRKGBpeiSdh3hZs81MivMwjIk7w3wJWPQe9mkNFa8tQ==" }, "node_modules/@ew-did-registry/did-document": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-document/-/did-document-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-ioMJGZQM2BW4GoBkMffdKFSehm0k5h/IWoXU/+Wf56VGspmU4fWF0LIyU9JzG/F2Kby6OHPmNoJdygzthh268g==", - "dependencies": { - "@ew-did-registry/did": "0.6.3-alpha.577.0", - "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.577.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-document/-/did-document-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-tDRXtL53LDNB5WL+k9vK2DDjrgN/EUZTbpxC0kmSu1kq3Dz2jRS+Ye0J+n1tX8eSv10AVx0DhRBuTMVJnw0ewA==", + "dependencies": { + "@ew-did-registry/did": "0.6.3-alpha.590.0", + "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.590.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "^5.6.1" } }, "node_modules/@ew-did-registry/did-ethr-resolver": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-ethr-resolver/-/did-ethr-resolver-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-kCOEZdESikEktXoVMNB+CmmhHq0curb+7tz18efxldmwRMfhSWHdLuxpD3Jf2pqmgbSNstc7j26GqOlIq2Tm3w==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-ethr-resolver/-/did-ethr-resolver-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-00Xq50eeIU1vj4BDGBAkKrBrGTKkzdxbxseOK3Rc53cMBKV/yQqlLm/jLRfTK5mPRvBWStosB1/wmi45FUDgMA==", "dependencies": { - "@ew-did-registry/did": "0.6.3-alpha.577.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/did": "0.6.3-alpha.590.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "^5.6.1" } }, "node_modules/@ew-did-registry/did-ipfs-store": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-ipfs-store/-/did-ipfs-store-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-npszDdXsXu8GzL5XStSGj6ar1y/XUlKbzSxkYxMYT5ebhtPG/fHf/LfzsgXnqr/YQZ7Ul9ZWoTJk7Jri4PcESQ==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-ipfs-store/-/did-ipfs-store-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-kbo6S2KKkd9hWgHMtBLPFjWWpICAX0qTaMxLWqcH9dnuO97MuwoZN5/gG4sVxM6rY5i0afmr2P3LLZhWGxfqQA==", "dependencies": { - "@ew-did-registry/did-store-interface": "0.6.3-alpha.577.0", + "@ew-did-registry/did-store-interface": "0.6.3-alpha.590.0", "bl": "^4.0.2", "ipfs-http-client": "^43.0.0" } }, "node_modules/@ew-did-registry/did-resolver-interface": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-resolver-interface/-/did-resolver-interface-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-sFs70Q6pF+4MlRPCr9bU1sRM8V/k63U/x5qJJIh6/4FpqiKyz6eiRaiuHkjEiU6YyQVPx7W3LPSIVfPh60QUmw==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-resolver-interface/-/did-resolver-interface-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-vrHOpQfz/Fh9gCcTU1fiuY3YFE88qJOJ1JN9La64IFa6fxSNpJgQsp957ZRuahHaEiPKbwSu17TYeFTWdVtK2g==", "dependencies": { - "@ew-did-registry/did": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/did": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "^5.6.1" } }, "node_modules/@ew-did-registry/did-store-interface": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-store-interface/-/did-store-interface-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-HoasfUuStvfnsjlHg7Cnwdl6/NehEO1Asz4N7RH5Cil1iGj51AOShb5fhHHtHS42eqt9lhLDMMFZvnKWaEpgNw==" + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-store-interface/-/did-store-interface-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-1PNxOGGLWdP08KhrM8B0TlR+XK/4ptyCvfEAW5wf2TlGfoarIk1PxujnJUPijtsCD+ARa8cRfSyP5JI2dpyoYg==" }, "node_modules/@ew-did-registry/jwt": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/jwt/-/jwt-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-/CyUcmK/QG2ldH7DLbH0gRKeJ6HWfiDQJhj/8EQoQOW8XpO1gmvS0QSgYZ7aPy/rmvgZ8XMqcnEWkyxgHB3wIw==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/jwt/-/jwt-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-qDxRHx7DqWHJabAfpoB3BgRoEndhps5jJqaGrc+4IOvKEZBtzIgjOConuU7AIgC6asN2eZ9rAOybN8QeNAzFqg==", "dependencies": { - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "base64url": "^3.0.1", "ec-key": "0.0.4", "ethereumjs-util": "^7.0.5", @@ -3737,9 +3740,9 @@ } }, "node_modules/@ew-did-registry/keys": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/keys/-/keys-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-tLOwTSRMBjLuZ1IUTLjEQfmHFoNKyL8rkfqa7NQAlqwXZot9LzNcPZHvobqeVPDgH7bp//sfd4mG04JDQjL1YQ==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/keys/-/keys-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-C8TwolcNM9gQtztP0tZKslqtrecHAtnR+SYJFGCE4ebUnNRbLaj9O8p/VF1hv43fGRsnR1eEeObqPrrf/sK1mw==", "dependencies": { "bn.js": "5.2.0", "ec-key": "0.0.4", @@ -3755,26 +3758,26 @@ "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" }, "node_modules/@ew-did-registry/proxyidentity": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/proxyidentity/-/proxyidentity-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-tkbRrzApk3PEUL9/rjFO/6AmcphJJS7gxyT8i2xP9i0aH+rE4eBTabq5bEw5Umi9v1F4BQ725pZl9Z5xh1BF6A==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/proxyidentity/-/proxyidentity-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-kDQINaJVAn9/KB5GAhHf/ymeY/79NIAYgJT1sbNlvGRl5gy7VR0u1qNDggoJ3BZzefxWZNv1yrH5M62BrIXL5g==", "dependencies": { - "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.577.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.590.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "^5.6.1" } }, "node_modules/@ew-did-registry/revocation": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/revocation/-/revocation-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-cdokWdghVzxTpTo6x//v23N2zcbASjbB/2KRB3o3c/0FMDDi0dKQaxm2ujJbJZQqgI4y0uYrE+amhaGR1h04UA==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/revocation/-/revocation-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-O2O7tppfVhoZFhA07UyYi5370VEmyIxtsLLZuhmevYIlLKq2IaTWjhxA30wtF76V7f71gwjfEB4L7dhaOz4GIA==", "dependencies": { "@energyweb/iam-contracts": "3.3.0", - "@ew-did-registry/did": "0.6.3-alpha.577.0", + "@ew-did-registry/did": "0.6.3-alpha.590.0", "@ew-did-registry/did-ethr-resolver": "0.6.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "5.4.7" } }, @@ -11223,7 +11226,7 @@ "node_modules/delimit-stream": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/delimit-stream/-/delimit-stream-0.1.0.tgz", - "integrity": "sha1-m4MZR3wOX4rrPONXrjBfwl6hzSs=" + "integrity": "sha512-a02fiQ7poS5CnjiJBAsjGLPp5EwVoGHNeu9sziBd9huppRfsAFIpv5zNLv0V1gbop53ilngAf5Kf331AwcoRBQ==" }, "node_modules/depd": { "version": "2.0.0", @@ -19415,7 +19418,7 @@ "node_modules/json-text-sequence": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/json-text-sequence/-/json-text-sequence-0.1.1.tgz", - "integrity": "sha1-py8hfcSvxGKf/1/rME3BvVGi89I=", + "integrity": "sha512-L3mEegEWHRekSHjc7+sc8eJhba9Clq1PZ8kMkzf8OxElhXc8O4TS5MwcVlj9aEbm5dr81N90WHC5nAz3UO971w==", "dependencies": { "delimit-stream": "0.1.0" } @@ -32035,21 +32038,21 @@ "dev": true }, "@babel/core": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz", - "integrity": "sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.0.tgz", + "integrity": "sha512-Xyw74OlJwDijToNi0+6BBI5mLLR5+5R3bcSH80LXzjzEGEUlvNzujEE71BaD/ApEZHAvFI/Mlmp4M5lIkdeeWw==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-compilation-targets": "^7.18.2", + "@babel/generator": "^7.18.0", + "@babel/helper-compilation-targets": "^7.17.10", "@babel/helper-module-transforms": "^7.18.0", - "@babel/helpers": "^7.18.2", + "@babel/helpers": "^7.18.0", "@babel/parser": "^7.18.0", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.2", - "@babel/types": "^7.18.2", + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -32058,12 +32061,12 @@ } }, "@babel/generator": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", - "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.0.tgz", + "integrity": "sha512-81YO9gGx6voPXlvYdZBliFXAZU8vZ9AZ6z+CjlmcnaeOcYSFbMTpdeDUO9xD9dh/68Vq03I8ZspfUTPfitcDHg==", "dev": true, "requires": { - "@babel/types": "^7.18.2", + "@babel/types": "^7.18.0", "@jridgewell/gen-mapping": "^0.3.0", "jsesc": "^2.5.1" }, @@ -32101,9 +32104,9 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", - "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "version": "7.17.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.10.tgz", + "integrity": "sha512-gh3RxjWbauw/dFiU/7whjd0qN9K6nPJMqe6+Er7rOavFh0CQUSwhAE3IcTho2rywPJFxej6TUUHDkWcYI6gGqQ==", "dev": true, "requires": { "@babel/compat-data": "^7.17.10", @@ -32154,10 +32157,13 @@ } }, "@babel/helper-environment-visitor": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", - "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", - "dev": true + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", + "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } }, "@babel/helper-explode-assignable-expression": { "version": "7.16.7", @@ -32261,12 +32267,12 @@ } }, "@babel/helper-simple-access": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", - "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", "dev": true, "requires": { - "@babel/types": "^7.18.2" + "@babel/types": "^7.17.0" } }, "@babel/helper-skip-transparent-expression-wrappers": { @@ -32312,14 +32318,14 @@ } }, "@babel/helpers": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", - "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.0.tgz", + "integrity": "sha512-AE+HMYhmlMIbho9nbvicHyxFwhrO+xhKB6AhRxzl8w46Yj0VXTZjEsAoBVC7rB2I0jzX+yWyVybnO08qkfx6kg==", "dev": true, "requires": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.2", - "@babel/types": "^7.18.2" + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" } }, "@babel/highlight": { @@ -32839,14 +32845,14 @@ } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz", - "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.0.tgz", + "integrity": "sha512-cCeR0VZWtfxWS4YueAK2qtHtBPJRSaJcMlbS8jhSIm/A3E2Kpro4W1Dn4cqJtp59dtWfXjQwK7SPKF8ghs7rlw==", "dev": true, "requires": { "@babel/helper-module-transforms": "^7.18.0", "@babel/helper-plugin-utils": "^7.17.12", - "@babel/helper-simple-access": "^7.18.2", + "@babel/helper-simple-access": "^7.17.7", "babel-plugin-dynamic-import-node": "^2.3.3" } }, @@ -32995,9 +33001,9 @@ } }, "@babel/plugin-transform-template-literals": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.2.tgz", - "integrity": "sha512-/cmuBVw9sZBGZVOMkpAEaVLwm4JmK2GZ1dFKOGGpMzEHWFmyZZ59lUU0PdRr8YNYeQdNzTDwuxP2X2gzydTc9g==", + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.17.12.tgz", + "integrity": "sha512-kAKJ7DX1dSRa2s7WN1xUAuaQmkTpN+uig4wCKWivVXIObqGbVTUlSavHyfI2iZvz89GFAMGm9p2DBJ4Y1Tp0hw==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.17.12" @@ -33043,13 +33049,13 @@ } }, "@babel/preset-env": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.2.tgz", - "integrity": "sha512-PfpdxotV6afmXMU47S08F9ZKIm2bJIQ0YbAAtDfIENX7G1NUAXigLREh69CWDjtgUy7dYn7bsMzkgdtAlmS68Q==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.0.tgz", + "integrity": "sha512-cP74OMs7ECLPeG1reiCQ/D/ypyOxgfm8uR6HRYV23vTJ7Lu1nbgj9DQDo/vH59gnn7GOAwtTDPPYV4aXzsMKHA==", "dev": true, "requires": { "@babel/compat-data": "^7.17.10", - "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-compilation-targets": "^7.17.10", "@babel/helper-plugin-utils": "^7.17.12", "@babel/helper-validator-option": "^7.16.7", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.17.12", @@ -33094,12 +33100,12 @@ "@babel/plugin-transform-dotall-regex": "^7.16.7", "@babel/plugin-transform-duplicate-keys": "^7.17.12", "@babel/plugin-transform-exponentiation-operator": "^7.16.7", - "@babel/plugin-transform-for-of": "^7.18.1", + "@babel/plugin-transform-for-of": "^7.17.12", "@babel/plugin-transform-function-name": "^7.16.7", "@babel/plugin-transform-literals": "^7.17.12", "@babel/plugin-transform-member-expression-literals": "^7.16.7", "@babel/plugin-transform-modules-amd": "^7.18.0", - "@babel/plugin-transform-modules-commonjs": "^7.18.2", + "@babel/plugin-transform-modules-commonjs": "^7.18.0", "@babel/plugin-transform-modules-systemjs": "^7.18.0", "@babel/plugin-transform-modules-umd": "^7.18.0", "@babel/plugin-transform-named-capturing-groups-regex": "^7.17.12", @@ -33112,12 +33118,12 @@ "@babel/plugin-transform-shorthand-properties": "^7.16.7", "@babel/plugin-transform-spread": "^7.17.12", "@babel/plugin-transform-sticky-regex": "^7.16.7", - "@babel/plugin-transform-template-literals": "^7.18.2", + "@babel/plugin-transform-template-literals": "^7.17.12", "@babel/plugin-transform-typeof-symbol": "^7.17.12", "@babel/plugin-transform-unicode-escapes": "^7.16.7", "@babel/plugin-transform-unicode-regex": "^7.16.7", "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.2", + "@babel/types": "^7.18.0", "babel-plugin-polyfill-corejs2": "^0.3.0", "babel-plugin-polyfill-corejs3": "^0.5.0", "babel-plugin-polyfill-regenerator": "^0.3.0", @@ -33169,27 +33175,27 @@ } }, "@babel/traverse": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz", - "integrity": "sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.0.tgz", + "integrity": "sha512-oNOO4vaoIQoGjDQ84LgtF/IAlxlyqL4TUuoQ7xLkQETFaHkY1F7yazhB4Kt3VcZGL0ZF/jhrEpnXqUb0M7V3sw==", "dev": true, "requires": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-environment-visitor": "^7.18.2", + "@babel/generator": "^7.18.0", + "@babel/helper-environment-visitor": "^7.16.7", "@babel/helper-function-name": "^7.17.9", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", "@babel/parser": "^7.18.0", - "@babel/types": "^7.18.2", + "@babel/types": "^7.18.0", "debug": "^4.1.0", "globals": "^11.1.0" } }, "@babel/types": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.2.tgz", - "integrity": "sha512-0On6B8A4/+mFUto5WERt3EEuG1NznDirvwca1O8UwXQHVY8g3R7OzYgxXdOfMwLO08UrpUD/2+3Bclyq+/C94Q==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.0.tgz", + "integrity": "sha512-vhAmLPAiC8j9K2GnsnLPCIH5wCrPpYIVBCWRBFDCB7Y/BXLqi/O+1RSTTM2bsmg6U/551+FCf9PNPxjABmxHTw==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.16.7", @@ -34322,18 +34328,18 @@ } }, "@ew-did-registry/claims": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/claims/-/claims-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-Y3ruTwySYaW/hEjk+ZQZ2zEdrVA2ALqY5Mfn/n17Tjnj2ikVrNZdE9Nfqa4qdzhFPWm0cfCJLzNZAbu/3rLUdQ==", - "requires": { - "@ew-did-registry/did": "0.6.3-alpha.577.0", - "@ew-did-registry/did-document": "0.6.3-alpha.577.0", - "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.577.0", - "@ew-did-registry/did-ipfs-store": "0.6.3-alpha.577.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/did-store-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/jwt": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/claims/-/claims-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-R8zpYIixcpnvzO8DF1vzqt73RBJ37ynFeX00TiLHcMoGcTnOgIK5Co/FyMqTRkBNtZZdo16tkk3V8o4LrZAsxg==", + "requires": { + "@ew-did-registry/did": "0.6.3-alpha.590.0", + "@ew-did-registry/did-document": "0.6.3-alpha.590.0", + "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.590.0", + "@ew-did-registry/did-ipfs-store": "0.6.3-alpha.590.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/did-store-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/jwt": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "@types/sjcl": "1.0.28", "base64url": "^3.0.1", "eciesjs": "^0.3.4", @@ -34342,9 +34348,9 @@ } }, "@ew-did-registry/credentials-interface": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/credentials-interface/-/credentials-interface-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-F7sffefU5LKZ9NlqqckijhoNPehcwzagfKeGZWxwfjgaS+XR9SZux493dvXDJypnwOyRiot0O/w5PBXudntOUA==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/credentials-interface/-/credentials-interface-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-NqXCyxFOe71g17HWpQkoAADPazZBUAly8lCcFC/9hE+Cp6ks8D64Ftzz41+t5k5/XIYOwu1+ovWuVadbbQqkQw==", "requires": { "@ethersproject/abstract-signer": "5.6.0", "@sphereon/pex": "^1.0.2", @@ -34367,64 +34373,64 @@ } }, "@ew-did-registry/did": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did/-/did-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-6v0rzExZgZ6+Og4uyA1RVuTv/RU+vWSDi23kJEgJwC4gkQiqB3Vh0aGX4Y3jw5UifyVdzJKekxSKMoEpXZ7uUA==" + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did/-/did-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-0ysumTnera340qv5abF5cPwH5A6xI508N6rFR7n4kDZHRKGBpeiSdh3hZs81MivMwjIk7w3wJWPQe9mkNFa8tQ==" }, "@ew-did-registry/did-document": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-document/-/did-document-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-ioMJGZQM2BW4GoBkMffdKFSehm0k5h/IWoXU/+Wf56VGspmU4fWF0LIyU9JzG/F2Kby6OHPmNoJdygzthh268g==", - "requires": { - "@ew-did-registry/did": "0.6.3-alpha.577.0", - "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.577.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-document/-/did-document-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-tDRXtL53LDNB5WL+k9vK2DDjrgN/EUZTbpxC0kmSu1kq3Dz2jRS+Ye0J+n1tX8eSv10AVx0DhRBuTMVJnw0ewA==", + "requires": { + "@ew-did-registry/did": "0.6.3-alpha.590.0", + "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.590.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "^5.6.1" } }, "@ew-did-registry/did-ethr-resolver": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-ethr-resolver/-/did-ethr-resolver-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-kCOEZdESikEktXoVMNB+CmmhHq0curb+7tz18efxldmwRMfhSWHdLuxpD3Jf2pqmgbSNstc7j26GqOlIq2Tm3w==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-ethr-resolver/-/did-ethr-resolver-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-00Xq50eeIU1vj4BDGBAkKrBrGTKkzdxbxseOK3Rc53cMBKV/yQqlLm/jLRfTK5mPRvBWStosB1/wmi45FUDgMA==", "requires": { - "@ew-did-registry/did": "0.6.3-alpha.577.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/did": "0.6.3-alpha.590.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "^5.6.1" } }, "@ew-did-registry/did-ipfs-store": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-ipfs-store/-/did-ipfs-store-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-npszDdXsXu8GzL5XStSGj6ar1y/XUlKbzSxkYxMYT5ebhtPG/fHf/LfzsgXnqr/YQZ7Ul9ZWoTJk7Jri4PcESQ==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-ipfs-store/-/did-ipfs-store-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-kbo6S2KKkd9hWgHMtBLPFjWWpICAX0qTaMxLWqcH9dnuO97MuwoZN5/gG4sVxM6rY5i0afmr2P3LLZhWGxfqQA==", "requires": { - "@ew-did-registry/did-store-interface": "0.6.3-alpha.577.0", + "@ew-did-registry/did-store-interface": "0.6.3-alpha.590.0", "bl": "^4.0.2", "ipfs-http-client": "^43.0.0" } }, "@ew-did-registry/did-resolver-interface": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-resolver-interface/-/did-resolver-interface-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-sFs70Q6pF+4MlRPCr9bU1sRM8V/k63U/x5qJJIh6/4FpqiKyz6eiRaiuHkjEiU6YyQVPx7W3LPSIVfPh60QUmw==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-resolver-interface/-/did-resolver-interface-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-vrHOpQfz/Fh9gCcTU1fiuY3YFE88qJOJ1JN9La64IFa6fxSNpJgQsp957ZRuahHaEiPKbwSu17TYeFTWdVtK2g==", "requires": { - "@ew-did-registry/did": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/did": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "^5.6.1" } }, "@ew-did-registry/did-store-interface": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/did-store-interface/-/did-store-interface-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-HoasfUuStvfnsjlHg7Cnwdl6/NehEO1Asz4N7RH5Cil1iGj51AOShb5fhHHtHS42eqt9lhLDMMFZvnKWaEpgNw==" + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/did-store-interface/-/did-store-interface-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-1PNxOGGLWdP08KhrM8B0TlR+XK/4ptyCvfEAW5wf2TlGfoarIk1PxujnJUPijtsCD+ARa8cRfSyP5JI2dpyoYg==" }, "@ew-did-registry/jwt": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/jwt/-/jwt-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-/CyUcmK/QG2ldH7DLbH0gRKeJ6HWfiDQJhj/8EQoQOW8XpO1gmvS0QSgYZ7aPy/rmvgZ8XMqcnEWkyxgHB3wIw==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/jwt/-/jwt-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-qDxRHx7DqWHJabAfpoB3BgRoEndhps5jJqaGrc+4IOvKEZBtzIgjOConuU7AIgC6asN2eZ9rAOybN8QeNAzFqg==", "requires": { - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "base64url": "^3.0.1", "ec-key": "0.0.4", "ethereumjs-util": "^7.0.5", @@ -34434,9 +34440,9 @@ } }, "@ew-did-registry/keys": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/keys/-/keys-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-tLOwTSRMBjLuZ1IUTLjEQfmHFoNKyL8rkfqa7NQAlqwXZot9LzNcPZHvobqeVPDgH7bp//sfd4mG04JDQjL1YQ==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/keys/-/keys-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-C8TwolcNM9gQtztP0tZKslqtrecHAtnR+SYJFGCE4ebUnNRbLaj9O8p/VF1hv43fGRsnR1eEeObqPrrf/sK1mw==", "requires": { "bn.js": "5.2.0", "ec-key": "0.0.4", @@ -34454,26 +34460,26 @@ } }, "@ew-did-registry/proxyidentity": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/proxyidentity/-/proxyidentity-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-tkbRrzApk3PEUL9/rjFO/6AmcphJJS7gxyT8i2xP9i0aH+rE4eBTabq5bEw5Umi9v1F4BQ725pZl9Z5xh1BF6A==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/proxyidentity/-/proxyidentity-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-kDQINaJVAn9/KB5GAhHf/ymeY/79NIAYgJT1sbNlvGRl5gy7VR0u1qNDggoJ3BZzefxWZNv1yrH5M62BrIXL5g==", "requires": { - "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.577.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/did-ethr-resolver": "0.6.3-alpha.590.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "^5.6.1" } }, "@ew-did-registry/revocation": { - "version": "0.6.3-alpha.577.0", - "resolved": "https://registry.npmjs.org/@ew-did-registry/revocation/-/revocation-0.6.3-alpha.577.0.tgz", - "integrity": "sha512-cdokWdghVzxTpTo6x//v23N2zcbASjbB/2KRB3o3c/0FMDDi0dKQaxm2ujJbJZQqgI4y0uYrE+amhaGR1h04UA==", + "version": "0.6.3-alpha.590.0", + "resolved": "https://registry.npmjs.org/@ew-did-registry/revocation/-/revocation-0.6.3-alpha.590.0.tgz", + "integrity": "sha512-O2O7tppfVhoZFhA07UyYi5370VEmyIxtsLLZuhmevYIlLKq2IaTWjhxA30wtF76V7f71gwjfEB4L7dhaOz4GIA==", "requires": { "@energyweb/iam-contracts": "3.3.0", - "@ew-did-registry/did": "0.6.3-alpha.577.0", + "@ew-did-registry/did": "0.6.3-alpha.590.0", "@ew-did-registry/did-ethr-resolver": "0.6.0", - "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.577.0", - "@ew-did-registry/keys": "0.6.3-alpha.577.0", + "@ew-did-registry/did-resolver-interface": "0.6.3-alpha.590.0", + "@ew-did-registry/keys": "0.6.3-alpha.590.0", "ethers": "5.4.7" }, "dependencies": { @@ -40380,7 +40386,7 @@ "delimit-stream": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/delimit-stream/-/delimit-stream-0.1.0.tgz", - "integrity": "sha1-m4MZR3wOX4rrPONXrjBfwl6hzSs=" + "integrity": "sha512-a02fiQ7poS5CnjiJBAsjGLPp5EwVoGHNeu9sziBd9huppRfsAFIpv5zNLv0V1gbop53ilngAf5Kf331AwcoRBQ==" }, "depd": { "version": "2.0.0", @@ -46709,7 +46715,7 @@ "json-text-sequence": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/json-text-sequence/-/json-text-sequence-0.1.1.tgz", - "integrity": "sha1-py8hfcSvxGKf/1/rME3BvVGi89I=", + "integrity": "sha512-L3mEegEWHRekSHjc7+sc8eJhba9Clq1PZ8kMkzf8OxElhXc8O4TS5MwcVlj9aEbm5dr81N90WHC5nAz3UO971w==", "requires": { "delimit-stream": "0.1.0" } diff --git a/package.json b/package.json index 67bbd29f..cd1d3f81 100644 --- a/package.json +++ b/package.json @@ -66,17 +66,17 @@ "@energyweb/onchain-claims": "^1.0.1-alpha.46.0", "@energyweb/staking-pool": "^1.0.0-rc.14", "@ensdomains/ens": "^0.6.2", - "@ew-did-registry/claims": "^0.6.3-alpha.577.0", - "@ew-did-registry/credentials-interface": "^0.6.3-alpha.577.0", - "@ew-did-registry/did": "^0.6.3-alpha.577.0", - "@ew-did-registry/did-document": "^0.6.3-alpha.577.0", - "@ew-did-registry/did-ethr-resolver": "^0.6.3-alpha.577.0", - "@ew-did-registry/did-ipfs-store": "^0.6.3-alpha.577.0", + "@ew-did-registry/claims": "^0.6.3-alpha.590.0", + "@ew-did-registry/credentials-interface": "^0.6.3-alpha.590.0", + "@ew-did-registry/did": "^0.6.3-alpha.590.0", + "@ew-did-registry/did-document": "^0.6.3-alpha.590.0", + "@ew-did-registry/did-ethr-resolver": "^0.6.3-alpha.590.0", + "@ew-did-registry/did-ipfs-store": "^0.6.3-alpha.590.0", "@ew-did-registry/did-resolver-interface": "^0.6.3-alpha.577.0", - "@ew-did-registry/jwt": "^0.6.3-alpha.577.0", - "@ew-did-registry/keys": "^0.6.3-alpha.577.0", - "@ew-did-registry/proxyidentity": "^0.6.3-alpha.577.0", - "@ew-did-registry/revocation": "^0.6.3-alpha.571.0", + "@ew-did-registry/jwt": "^0.6.3-alpha.590.0", + "@ew-did-registry/keys": "^0.6.3-alpha.590.0", + "@ew-did-registry/proxyidentity": "^0.6.3-alpha.590.0", + "@ew-did-registry/revocation": "^0.6.3-alpha.590.0", "@gnosis.pm/safe-apps-provider": "^0.11.0", "@gnosis.pm/safe-apps-sdk": "^7.3.0", "@metamask/detect-provider": "^1.2.0", diff --git a/src/modules/cache-client/cache-client.service.ts b/src/modules/cache-client/cache-client.service.ts index d007860f..4f7326ec 100644 --- a/src/modules/cache-client/cache-client.service.ts +++ b/src/modules/cache-client/cache-client.service.ts @@ -2,6 +2,10 @@ import axios, { AxiosError, AxiosInstance, AxiosResponse } from 'axios'; import { stringify } from 'qs'; import { IRoleDefinition } from '@energyweb/credential-governance'; import { IDIDDocument } from '@ew-did-registry/did-resolver-interface'; +import { + Credential, + StatusList2021Entry, +} from '@ew-did-registry/credentials-interface'; import { IApp, IOrganization, IRole } from '../domains/domains.types'; import { AssetHistory } from '../assets/assets.types'; import { @@ -27,6 +31,7 @@ import { } from './cache-client.types'; import { SearchType } from '.'; import { getLogger } from '../../config/logger.config'; +import { RoleCredentialSubject } from '../verifiable-credentials'; export class CacheClient implements ICacheClient { public pubKeyAndIdentityToken: IPubKeyAndIdentityToken | undefined; @@ -410,6 +415,27 @@ export class CacheClient implements ICacheClient { return data; } + /** + * Sets location of the credential status + * + * @param credential unsigned credential + * @returns credential with reference to status location + */ + async addStatusToCredential( + credential: Credential + ): Promise< + Credential & { + credentialStatus: StatusList2021Entry; + } + > { + const { data } = await this._httpClient.post< + Credential & { + credentialStatus: StatusList2021Entry; + } + >('/status-list/entries', credential); + return data; + } + private async refreshToken(): Promise { getLogger().debug('[CACHE CLIENT] Refreshing token'); if (!this.refresh_token) return undefined; diff --git a/src/modules/claims/claims.service.ts b/src/modules/claims/claims.service.ts index 3d68f291..45ac2d2f 100644 --- a/src/modules/claims/claims.service.ts +++ b/src/modules/claims/claims.service.ts @@ -369,6 +369,7 @@ export class ClaimsService { registrationTypes, issuerFields, publishOnChain = true, + credentialStatus, }: IssueClaimRequestOptions): Promise { const { claimData, sub } = this._didRegistry.jwt.decode(token) as { claimData: { claimType: string; claimTypeVersion: number }; @@ -432,6 +433,7 @@ export class ClaimsService { namespace: role, version: version.toString(), issuerFields, + credentialStatus, }), ]); message.issuedToken = issuedToken; @@ -1180,6 +1182,7 @@ export class ClaimsService { namespace: options.namespace, version: options.version, issuerFields: options.issuerFields, + credentialStatus: options.credentialStatus, }); const vp = await this._verifiableCredentialService.createVerifiablePresentation([ diff --git a/src/modules/claims/claims.types.ts b/src/modules/claims/claims.types.ts index 9f2e0788..3ebc8f2f 100644 --- a/src/modules/claims/claims.types.ts +++ b/src/modules/claims/claims.types.ts @@ -1,7 +1,11 @@ import { utils } from 'ethers'; -import { VerifiablePresentation } from '@ew-did-registry/credentials-interface'; +import { + VerifiablePresentation, + StatusList2021Entry, +} from '@ew-did-registry/credentials-interface'; import { ClaimData } from '../did-registry'; import { IMessage } from '../messaging/messaging.types'; +import { IssuerFields } from '../verifiable-credentials'; export interface IClaimRequest extends IMessage { token: string; @@ -176,6 +180,9 @@ export interface IssueClaimRequestOptions { /** Indicates whether to publish role on-chain or not (default: false) */ publishOnChain?: boolean; + + /** Indicates if credential is actual of the time of verification */ + credentialStatus?: StatusList2021Entry; } export interface RegisterOnchainOptions { @@ -287,6 +294,9 @@ export interface IssueVerifiablePresentationOptions { /** Issuers fields that role is requiring */ issuerFields?: { key: string; value: string | number }[]; + + /** Indicates if credential is actual of the time of verification */ + credentialStatus?: StatusList2021Entry; } export interface ApproveRolePublishingOptions { @@ -374,3 +384,10 @@ export interface ClaimRevocationDetailsResult { revoker: string; timestamp: number; } + +export interface AddSsiCredentialStatusOptions { + sub: string; + role: string; + version: number; + issuerFields?: IssuerFields[]; +} diff --git a/src/modules/verifiable-credentials/types/verifiable-credentials.types.ts b/src/modules/verifiable-credentials/types/verifiable-credentials.types.ts index 896d825c..c5529ec3 100644 --- a/src/modules/verifiable-credentials/types/verifiable-credentials.types.ts +++ b/src/modules/verifiable-credentials/types/verifiable-credentials.types.ts @@ -1,3 +1,4 @@ +import { StatusList2021Entry } from '@ew-did-registry/credentials-interface'; import { IPresentationDefinition, SelectResults } from '@sphereon/pex'; import { IssuerFields } from './role-credential.types'; @@ -23,6 +24,9 @@ export interface RoleCredentialSubjectParams { /* Expiration date of credential */ expirationDate?: Date; + + /** Indicates if credential is actual of time of verification */ + credentialStatus?: StatusList2021Entry; } export interface ProofOptions { diff --git a/src/modules/verifiable-credentials/verifiable-credentials-base.service.ts b/src/modules/verifiable-credentials/verifiable-credentials-base.service.ts index fa30bc56..5023b121 100644 --- a/src/modules/verifiable-credentials/verifiable-credentials-base.service.ts +++ b/src/modules/verifiable-credentials/verifiable-credentials-base.service.ts @@ -157,12 +157,7 @@ export abstract class VerifiableCredentialsServiceBase { throw new Error('Only VC-API exchange is supported'); } - const { - data: { errors, vpRequest }, - } = await axios.post<{ errors: string[]; vpRequest: VpRequest }>(url); - if (errors.length > 0) { - throw new Error(`Error initiating exchange: ${JSON.stringify(errors)}`); - } + const { data: vpRequest } = await axios.post(url); const credentialQuery = vpRequest.query.find( (q) => q.type === VpRequestQueryType.presentationDefinition )?.credentialQuery as VpRequestPresentationDefinitionQuery[]; @@ -234,7 +229,12 @@ export abstract class VerifiableCredentialsServiceBase { ): Promise> { const did = this._signerService.didHex; - const credentialObject = this.createCredential(credentialParams); + let credentialObject = this.createCredential(credentialParams); + if (!credentialObject.credentialStatus) { + credentialObject = await this._cacheClient.addStatusToCredential( + credentialObject + ); + } const eip712MessageSchema = { // TODO: generate types from the credential ...JSON.parse(JSON.stringify(verifiableCredentialEIP712Types)), @@ -522,7 +522,7 @@ export abstract class VerifiableCredentialsServiceBase { * @param {RoleCredentialSubjectParams} params verifiable presentation or credential * @returns Energy Web credential */ - private createCredential( + public createCredential( params: RoleCredentialSubjectParams ): Credential { const credential: Credential = {