@docknetwork/wallet-sdk-wasm 1.4.0 → 1.5.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/{account-3c88155a.js → account-bf00e5c0.js} +5 -5
- package/lib/{account-8f5cbc4d.js → account-e48dc9b6.js} +5 -5
- package/lib/core/polkadot-utils.js +18 -4
- package/lib/core/polkadot-utils.mjs +15 -2
- package/lib/index.js +14 -17
- package/lib/index.mjs +14 -17
- package/lib/modules/account.js +9 -5
- package/lib/modules/account.mjs +9 -5
- package/lib/modules/accounts.js +9 -5
- package/lib/modules/accounts.mjs +9 -5
- package/lib/modules/network-manager.js +4 -2
- package/lib/modules/network-manager.mjs +4 -2
- package/lib/modules/wallet.js +12 -8
- package/lib/modules/wallet.mjs +12 -8
- package/lib/rpc-server.js +14 -17
- package/lib/rpc-server.mjs +14 -17
- package/lib/services/blockchain/configs.js +7 -0
- package/lib/services/blockchain/configs.mjs +3 -0
- package/lib/services/{dock → blockchain}/index.android.js +3 -4
- package/lib/services/{dock → blockchain}/index.android.mjs +3 -4
- package/lib/services/{dock → blockchain}/index.ios.js +3 -4
- package/lib/services/{dock → blockchain}/index.ios.mjs +3 -4
- package/lib/services/blockchain/index.js +30 -0
- package/lib/services/blockchain/index.mjs +22 -0
- package/lib/services/{dock → blockchain}/service-rpc.js +5 -7
- package/lib/services/{dock → blockchain}/service-rpc.mjs +5 -7
- package/lib/services/blockchain/service.js +212 -0
- package/lib/services/blockchain/service.mjs +206 -0
- package/lib/services/credential/bbs-revocation.js +33 -61
- package/lib/services/credential/bbs-revocation.mjs +34 -62
- package/lib/services/credential/bound-check.js +0 -8
- package/lib/services/credential/bound-check.mjs +1 -5
- package/lib/services/credential/index.js +20 -23
- package/lib/services/credential/index.mjs +20 -23
- package/lib/services/credential/pex-helpers.js +134 -34
- package/lib/services/credential/pex-helpers.mjs +133 -35
- package/lib/services/credential/service.js +54 -55
- package/lib/services/credential/service.mjs +43 -41
- package/lib/services/credential/utils.js +12 -18
- package/lib/services/credential/utils.mjs +11 -14
- package/lib/services/dids/config.js +8 -0
- package/lib/services/dids/config.mjs +8 -0
- package/lib/services/dids/index.js +8 -7
- package/lib/services/dids/index.mjs +8 -7
- package/lib/services/dids/service-rpc.js +2 -2
- package/lib/services/dids/service-rpc.mjs +2 -2
- package/lib/services/dids/service.js +22 -32
- package/lib/services/dids/service.mjs +22 -32
- package/lib/services/edv/hmac.js +5 -0
- package/lib/services/edv/hmac.mjs +5 -0
- package/lib/services/edv/index.js +10 -8
- package/lib/services/edv/index.mjs +10 -8
- package/lib/services/edv/service-rpc.js +4 -0
- package/lib/services/edv/service-rpc.mjs +4 -0
- package/lib/services/edv/service.js +26 -10
- package/lib/services/edv/service.mjs +25 -10
- package/lib/services/example/service.js +3 -1
- package/lib/services/example/service.mjs +3 -1
- package/lib/services/index.js +12 -15
- package/lib/services/index.mjs +12 -15
- package/lib/services/keyring/configs.js +12 -0
- package/lib/services/keyring/configs.mjs +12 -0
- package/lib/services/keyring/service.js +5 -0
- package/lib/services/keyring/service.mjs +5 -0
- package/lib/services/pex/service.js +17 -15
- package/lib/services/pex/service.mjs +17 -15
- package/lib/services/substrate/api-utils.js +18 -6
- package/lib/services/substrate/api-utils.mjs +18 -6
- package/lib/services/substrate/index.js +13 -6
- package/lib/services/substrate/index.mjs +13 -6
- package/lib/services/substrate/service.js +16 -9
- package/lib/services/substrate/service.mjs +16 -9
- package/lib/services/test-utils.js +27 -18
- package/lib/services/test-utils.mjs +27 -18
- package/lib/services/trust-registry/index.js +16 -5
- package/lib/services/trust-registry/index.mjs +16 -5
- package/lib/services/trust-registry/service.js +26 -10
- package/lib/services/trust-registry/service.mjs +26 -10
- package/lib/services/util-crypto/configs.js +3 -0
- package/lib/services/util-crypto/configs.mjs +3 -0
- package/lib/services/util-crypto/service-rpc.js +6 -0
- package/lib/services/util-crypto/service-rpc.mjs +6 -0
- package/lib/services/util-crypto/service.js +5 -0
- package/lib/services/util-crypto/service.mjs +6 -1
- package/lib/setup-nodejs.js +14 -17
- package/lib/setup-nodejs.mjs +14 -17
- package/lib/setup-tests.js +14 -17
- package/lib/setup-tests.mjs +14 -17
- package/lib/src/core/polkadot-utils.d.ts +1 -0
- package/lib/src/core/polkadot-utils.d.ts.map +1 -1
- package/lib/src/modules/network-manager.d.ts +1 -0
- package/lib/src/modules/network-manager.d.ts.map +1 -1
- package/lib/src/services/blockchain/configs.d.ts +8 -0
- package/lib/src/services/blockchain/configs.d.ts.map +1 -0
- package/lib/src/services/blockchain/index.d.ts +2 -0
- package/lib/src/services/blockchain/index.d.ts.map +1 -0
- package/lib/src/services/{dock → blockchain}/service.d.ts +12 -11
- package/lib/src/services/blockchain/service.d.ts.map +1 -0
- package/lib/src/services/credential/bbs-revocation.d.ts.map +1 -1
- package/lib/src/services/credential/bound-check.d.ts +0 -4
- package/lib/src/services/credential/bound-check.d.ts.map +1 -1
- package/lib/src/services/credential/index.d.ts +2 -7
- package/lib/src/services/credential/index.d.ts.map +1 -1
- package/lib/src/services/credential/pex-helpers.d.ts +5 -3
- package/lib/src/services/credential/pex-helpers.d.ts.map +1 -1
- package/lib/src/services/credential/service.d.ts +2 -7
- package/lib/src/services/credential/service.d.ts.map +1 -1
- package/lib/src/services/credential/utils.d.ts.map +1 -1
- package/lib/src/services/dids/config.d.ts +5 -0
- package/lib/src/services/dids/config.d.ts.map +1 -1
- package/lib/src/services/dids/service-rpc.d.ts +1 -1
- package/lib/src/services/dids/service-rpc.d.ts.map +1 -1
- package/lib/src/services/dids/service.d.ts +9 -7
- package/lib/src/services/dids/service.d.ts.map +1 -1
- package/lib/src/services/edv/hmac.d.ts +1 -0
- package/lib/src/services/edv/hmac.d.ts.map +1 -1
- package/lib/src/services/edv/service.d.ts +5 -0
- package/lib/src/services/edv/service.d.ts.map +1 -1
- package/lib/src/services/example/service.d.ts.map +1 -1
- package/lib/src/services/keyring/configs.d.ts +6 -0
- package/lib/src/services/keyring/configs.d.ts.map +1 -1
- package/lib/src/services/pex/service.d.ts.map +1 -1
- package/lib/src/services/trust-registry/service.d.ts.map +1 -1
- package/lib/src/services/util-crypto/configs.d.ts +1 -0
- package/lib/src/services/util-crypto/configs.d.ts.map +1 -1
- package/lib/src/services/util-crypto/service.d.ts +1 -0
- package/lib/src/services/util-crypto/service.d.ts.map +1 -1
- package/lib/test/setup-test-state.js +10 -6
- package/lib/test/setup-test-state.mjs +10 -6
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -7
- package/src/core/polkadot-utils.js +14 -3
- package/src/modules/network-manager.ts +5 -2
- package/src/modules/wallet.ts +5 -5
- package/src/services/blockchain/configs.ts +11 -0
- package/src/services/blockchain/index.android.js +3 -0
- package/src/services/blockchain/index.ios.js +3 -0
- package/src/services/blockchain/index.js +1 -0
- package/src/services/blockchain/index.test.js +34 -0
- package/src/services/{dock → blockchain}/service-rpc.js +5 -6
- package/src/services/blockchain/service.ts +261 -0
- package/src/services/credential/bbs-revocation.ts +42 -90
- package/src/services/credential/bound-check.test.ts +2 -5
- package/src/services/credential/bound-check.ts +0 -5
- package/src/services/credential/index.test.js +148 -7
- package/src/services/credential/pex-helpers.js +132 -34
- package/src/services/credential/pex-helpers.test.js +284 -27
- package/src/services/credential/service.ts +44 -27
- package/src/services/credential/utils.js +5 -14
- package/src/services/dids/config.ts +15 -0
- package/src/services/dids/index.test.js +5 -46
- package/src/services/dids/service-rpc.ts +2 -2
- package/src/services/dids/service.ts +17 -34
- package/src/services/edv/hmac.ts +13 -0
- package/src/services/edv/index.test.js +22 -0
- package/src/services/edv/service-rpc.js +4 -0
- package/src/services/edv/service.ts +22 -0
- package/src/services/example/service.ts +3 -1
- package/src/services/index.js +2 -2
- package/src/services/keyring/configs.ts +21 -0
- package/src/services/keyring/service.ts +13 -0
- package/src/services/pex/service.ts +29 -18
- package/src/services/pex/tests/pex-service.test.js +163 -6
- package/src/services/substrate/api-utils.test.js +7 -7
- package/src/services/substrate/api-utils.ts +3 -3
- package/src/services/substrate/service.ts +6 -6
- package/src/services/test-utils.js +13 -11
- package/src/services/trust-registry/index.test.js +6 -4
- package/src/services/trust-registry/service.ts +13 -7
- package/src/services/util-crypto/configs.ts +4 -0
- package/src/services/util-crypto/service-rpc.js +6 -0
- package/src/services/util-crypto/service.ts +8 -0
- package/src/test/setup-test-state.js +2 -2
- package/lib/services/dock/configs.js +0 -18
- package/lib/services/dock/configs.mjs +0 -10
- package/lib/services/dock/index.js +0 -18
- package/lib/services/dock/index.mjs +0 -10
- package/lib/services/dock/service.js +0 -136
- package/lib/services/dock/service.mjs +0 -128
- package/lib/src/services/dock/configs.d.ts +0 -7
- package/lib/src/services/dock/configs.d.ts.map +0 -1
- package/lib/src/services/dock/index.d.ts +0 -2
- package/lib/src/services/dock/index.d.ts.map +0 -1
- package/lib/src/services/dock/service.d.ts.map +0 -1
- package/src/services/dock/configs.ts +0 -12
- package/src/services/dock/index.android.js +0 -3
- package/src/services/dock/index.ios.js +0 -3
- package/src/services/dock/index.js +0 -1
- package/src/services/dock/index.test.js +0 -48
- package/src/services/dock/service.ts +0 -159
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {DOCK_TOKEN_UNIT} from '../../core/format-utils';
|
|
2
2
|
import {TestFixtures} from '../../fixtures';
|
|
3
3
|
import {once} from '../../modules/event-manager';
|
|
4
|
-
import {
|
|
4
|
+
import {blockchainService} from '../blockchain/service';
|
|
5
5
|
import {mockDockService, setMockTransactionError} from '../test-utils';
|
|
6
6
|
import {signAndSend} from './api-utils';
|
|
7
7
|
import {substrateService} from './service';
|
|
@@ -16,8 +16,8 @@ describe('ApiUtils', () => {
|
|
|
16
16
|
describe('signAndSend', () => {
|
|
17
17
|
it('expect to send tokens', async () => {
|
|
18
18
|
const account = TestFixtures.account1.getKeyring();
|
|
19
|
-
|
|
20
|
-
const extrinsic =
|
|
19
|
+
blockchainService.dock.setAccount(account);
|
|
20
|
+
const extrinsic = blockchainService.dock.api.tx.balances.transfer(
|
|
21
21
|
TestFixtures.account2.address,
|
|
22
22
|
1,
|
|
23
23
|
);
|
|
@@ -32,8 +32,8 @@ describe('ApiUtils', () => {
|
|
|
32
32
|
|
|
33
33
|
it('expect to get error: Inability to pay fees', async () => {
|
|
34
34
|
const account = TestFixtures.noBalanceAccount.getKeyring();
|
|
35
|
-
|
|
36
|
-
const extrinsic =
|
|
35
|
+
blockchainService.dock.setAccount(account);
|
|
36
|
+
const extrinsic = blockchainService.dock.api.tx.balances.transfer(
|
|
37
37
|
TestFixtures.account2.address,
|
|
38
38
|
1,
|
|
39
39
|
);
|
|
@@ -49,11 +49,11 @@ describe('ApiUtils', () => {
|
|
|
49
49
|
|
|
50
50
|
it('expect to get error: Not enough balance', async () => {
|
|
51
51
|
const account = TestFixtures.account1.getKeyring();
|
|
52
|
-
|
|
52
|
+
blockchainService.dock.setAccount(account);
|
|
53
53
|
const balance = await substrateService.getAccountBalance({
|
|
54
54
|
address: TestFixtures.account1.address,
|
|
55
55
|
});
|
|
56
|
-
const extrinsic =
|
|
56
|
+
const extrinsic = blockchainService.dock.api.tx.balances.transfer(
|
|
57
57
|
TestFixtures.account2.address,
|
|
58
58
|
balance * 2 * DOCK_TOKEN_UNIT,
|
|
59
59
|
);
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import assert from 'assert';
|
|
3
3
|
import {EventEmitter} from 'events';
|
|
4
4
|
import {Logger} from '../../core/logger';
|
|
5
|
-
import {
|
|
5
|
+
import {blockchainService} from '../blockchain/service';
|
|
6
6
|
|
|
7
7
|
export const extrisicErrorsFilter = ({event}) => {
|
|
8
|
-
return
|
|
8
|
+
return blockchainService.dock.api.events.system.ExtrinsicFailed.is(event);
|
|
9
9
|
};
|
|
10
10
|
|
|
11
11
|
export const mapEventToErrorMessage = ({event}) => {
|
|
@@ -16,7 +16,7 @@ export const mapEventToErrorMessage = ({event}) => {
|
|
|
16
16
|
|
|
17
17
|
if (error.isModule) {
|
|
18
18
|
// for module errors, we have the section indexed, lookup
|
|
19
|
-
const decoded =
|
|
19
|
+
const decoded = blockchainService.dock.api.registry.findMetaError(error.asModule);
|
|
20
20
|
const {docs, method, section} = decoded;
|
|
21
21
|
|
|
22
22
|
return `${section}.${method}: ${docs.join(' ')}`;
|
|
@@ -3,7 +3,7 @@ import assert from 'assert';
|
|
|
3
3
|
import BigNumber from 'bignumber.js';
|
|
4
4
|
import BN from 'bn.js';
|
|
5
5
|
import {DOCK_TOKEN_UNIT, getPlainDockAmount} from '../../core/format-utils';
|
|
6
|
-
import {
|
|
6
|
+
import {blockchainService} from '../blockchain/service';
|
|
7
7
|
import {signAndSend} from './api-utils';
|
|
8
8
|
import {
|
|
9
9
|
GetAccountBalanceParams,
|
|
@@ -36,13 +36,13 @@ export class SubstrateService {
|
|
|
36
36
|
validation.getAccountBalance(params);
|
|
37
37
|
|
|
38
38
|
console.log('ensure dock ready');
|
|
39
|
-
await
|
|
39
|
+
await blockchainService.ensureBlockchainReady();
|
|
40
40
|
|
|
41
41
|
console.log('ensure dock ready done');
|
|
42
42
|
|
|
43
43
|
const {
|
|
44
44
|
data: {free},
|
|
45
|
-
} = await
|
|
45
|
+
} = await blockchainService.dock.api.query.system.account(params.address);
|
|
46
46
|
|
|
47
47
|
return free.toNumber() / DOCK_TOKEN_UNIT;
|
|
48
48
|
}
|
|
@@ -58,9 +58,9 @@ export class SubstrateService {
|
|
|
58
58
|
password: '',
|
|
59
59
|
});
|
|
60
60
|
|
|
61
|
-
|
|
61
|
+
blockchainService.dock.setAccount(account);
|
|
62
62
|
|
|
63
|
-
const extrinsic =
|
|
63
|
+
const extrinsic = blockchainService.dock.api.tx.balances.transfer(
|
|
64
64
|
toAddress,
|
|
65
65
|
amount,
|
|
66
66
|
);
|
|
@@ -81,7 +81,7 @@ export class SubstrateService {
|
|
|
81
81
|
jsonData: keyPair,
|
|
82
82
|
password: '',
|
|
83
83
|
});
|
|
84
|
-
const {dock} =
|
|
84
|
+
const {dock} = blockchainService;
|
|
85
85
|
|
|
86
86
|
dock.setAccount(account);
|
|
87
87
|
|
|
@@ -4,11 +4,11 @@ import BigNumber from 'bignumber.js';
|
|
|
4
4
|
import {DOCK_TOKEN_UNIT} from '../core/format-utils';
|
|
5
5
|
import {TestFixtures} from '../fixtures';
|
|
6
6
|
import {NetworkManager} from '../modules/network-manager';
|
|
7
|
-
import {dockService, getDock, setDock} from './dock/service';
|
|
8
7
|
import {keyringService} from './keyring';
|
|
9
8
|
import {RpcService} from './rpc-service-client';
|
|
10
9
|
import {walletService} from './wallet';
|
|
11
10
|
import Keyring from '@polkadot/keyring';
|
|
11
|
+
import {blockchainService} from './blockchain/service';
|
|
12
12
|
|
|
13
13
|
export async function initializeWalletService() {
|
|
14
14
|
await cryptoWaitReady();
|
|
@@ -50,21 +50,21 @@ export async function mockDockService() {
|
|
|
50
50
|
let sdkMock;
|
|
51
51
|
|
|
52
52
|
if (API_MOCK_DISABLED) {
|
|
53
|
-
return
|
|
53
|
+
return blockchainService.init({
|
|
54
54
|
address: NetworkManager.getInstance().getNetworkInfo().substrateUrl,
|
|
55
55
|
});
|
|
56
56
|
} else {
|
|
57
57
|
sdkMock = mockDockSdkConnection();
|
|
58
|
-
await
|
|
58
|
+
await blockchainService.init({
|
|
59
59
|
address: NetworkManager.getInstance().getNetworkInfo().substrateUrl,
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
const _dockSdk =
|
|
63
|
+
const _dockSdk = blockchainService.dock;
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
blockchainService.isDockReady = true;
|
|
66
66
|
|
|
67
|
-
|
|
67
|
+
blockchainService.dock = {
|
|
68
68
|
api: {
|
|
69
69
|
events: {
|
|
70
70
|
system: {
|
|
@@ -125,11 +125,11 @@ export async function mockDockService() {
|
|
|
125
125
|
};
|
|
126
126
|
|
|
127
127
|
return () => {
|
|
128
|
-
|
|
128
|
+
blockchainService.dock = _dockSdk;
|
|
129
129
|
if (sdkMock) {
|
|
130
130
|
sdkMock.clear();
|
|
131
131
|
}
|
|
132
|
-
|
|
132
|
+
blockchainService.disconnect();
|
|
133
133
|
};
|
|
134
134
|
}
|
|
135
135
|
|
|
@@ -164,7 +164,7 @@ export async function setupTestWallet() {
|
|
|
164
164
|
|
|
165
165
|
export function mockDockSdkConnection(connectionError) {
|
|
166
166
|
const result = 'result';
|
|
167
|
-
const dock =
|
|
167
|
+
const dock = blockchainService.dock;
|
|
168
168
|
const mocks = [
|
|
169
169
|
jest.spyOn(dock, 'init').mockImplementation(() => {
|
|
170
170
|
if (connectionError) {
|
|
@@ -178,7 +178,7 @@ export function mockDockSdkConnection(connectionError) {
|
|
|
178
178
|
|
|
179
179
|
let currentAccount;
|
|
180
180
|
|
|
181
|
-
|
|
181
|
+
blockchainService.dock = {
|
|
182
182
|
...dock,
|
|
183
183
|
setAccount(account) {
|
|
184
184
|
currentAccount = account;
|
|
@@ -229,7 +229,7 @@ export function mockDockSdkConnection(connectionError) {
|
|
|
229
229
|
return kr.createFromUri('//Alice');
|
|
230
230
|
}),
|
|
231
231
|
},
|
|
232
|
-
}
|
|
232
|
+
};
|
|
233
233
|
|
|
234
234
|
return {
|
|
235
235
|
result,
|
|
@@ -255,6 +255,8 @@ export function assertRpcService(
|
|
|
255
255
|
const rpcService = new ServiceClass();
|
|
256
256
|
const validationTmp = {};
|
|
257
257
|
|
|
258
|
+
assert(rpcService.serviceName === service.name, 'service name mismatch');
|
|
259
|
+
|
|
258
260
|
Object.keys(validation).forEach(key => {
|
|
259
261
|
validationTmp[key] = validation[key];
|
|
260
262
|
validation[key] = () => true;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {blockchainService} from '../blockchain/service';
|
|
2
2
|
|
|
3
3
|
import {trustRegistryService as service} from './service';
|
|
4
4
|
import {
|
|
@@ -23,7 +23,7 @@ describe('TrustRegistryService', () => {
|
|
|
23
23
|
const result = await service.getTrustRegistries(params);
|
|
24
24
|
|
|
25
25
|
const queryObject =
|
|
26
|
-
|
|
26
|
+
blockchainService.dock.trustRegistry.registriesInfo.mock.calls[0][0];
|
|
27
27
|
expect(queryObject.issuers.AnyOf).toHaveLength(1);
|
|
28
28
|
expect(queryObject.verifiers.AnyOf).toHaveLength(1);
|
|
29
29
|
expect(queryObject.schemaIds.AnyOf[0]).toEqual(
|
|
@@ -42,10 +42,12 @@ describe('TrustRegistryService', () => {
|
|
|
42
42
|
};
|
|
43
43
|
const result = await service.getTrustRegistryVerifiers(params);
|
|
44
44
|
const queryObject =
|
|
45
|
-
|
|
45
|
+
blockchainService.dock.trustRegistry.registrySchemasMetadata.mock
|
|
46
|
+
.calls[0][0];
|
|
46
47
|
|
|
47
48
|
expect(
|
|
48
|
-
|
|
49
|
+
blockchainService.dock.trustRegistry.registrySchemasMetadata.mock
|
|
50
|
+
.calls[0][1],
|
|
49
51
|
).toEqual(trustRegistryId);
|
|
50
52
|
expect(queryObject.issuers.AnyOf).toHaveLength(1);
|
|
51
53
|
expect(queryObject.schemaIds[0]).toEqual(
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
// @ts-nocheck
|
|
2
2
|
import {serviceName} from './configs';
|
|
3
|
-
import {typedHexDID} from '@docknetwork/sdk/utils/did/typed-did/helpers';
|
|
4
3
|
import {createHash} from 'crypto';
|
|
5
|
-
import {
|
|
4
|
+
import {blockchainService} from '../blockchain/service';
|
|
6
5
|
import {validation} from './configs';
|
|
7
6
|
|
|
7
|
+
|
|
8
|
+
// TODO: Implement this function when the Trust Registry support is added to the SDK
|
|
9
|
+
function typedHexDID(resolver, issuerDID) {
|
|
10
|
+
return issuerDID;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
// Trust Registry Service is not supported in the current version of the SDK
|
|
8
14
|
class TrustRegistryService {
|
|
9
15
|
constructor() {
|
|
10
16
|
this.name = serviceName;
|
|
@@ -35,7 +41,7 @@ class TrustRegistryService {
|
|
|
35
41
|
}
|
|
36
42
|
|
|
37
43
|
if (issuerDID) {
|
|
38
|
-
const issuerDIDMethodKey = typedHexDID(
|
|
44
|
+
const issuerDIDMethodKey = typedHexDID(blockchainService.dock.api, issuerDID);
|
|
39
45
|
queryOptions.issuers = {
|
|
40
46
|
AnyOf: [issuerDIDMethodKey],
|
|
41
47
|
};
|
|
@@ -43,7 +49,7 @@ class TrustRegistryService {
|
|
|
43
49
|
|
|
44
50
|
if (verifierDID) {
|
|
45
51
|
const verifierDIDMethodKey = typedHexDID(
|
|
46
|
-
|
|
52
|
+
blockchainService.dock.api,
|
|
47
53
|
verifierDID,
|
|
48
54
|
);
|
|
49
55
|
queryOptions.verifiers = {
|
|
@@ -51,7 +57,7 @@ class TrustRegistryService {
|
|
|
51
57
|
};
|
|
52
58
|
}
|
|
53
59
|
|
|
54
|
-
const registryInfo = await
|
|
60
|
+
const registryInfo = await blockchainService.dock.trustRegistry?.registriesInfo(
|
|
55
61
|
queryOptions,
|
|
56
62
|
);
|
|
57
63
|
|
|
@@ -65,11 +71,11 @@ class TrustRegistryService {
|
|
|
65
71
|
const schemaIdHex = '0x' + hashedId;
|
|
66
72
|
|
|
67
73
|
const issuerDIDMethodKey = issuerDID
|
|
68
|
-
? typedHexDID(
|
|
74
|
+
? typedHexDID(blockchainService.dock.api, issuerDID)
|
|
69
75
|
: null;
|
|
70
76
|
|
|
71
77
|
const metadata =
|
|
72
|
-
await
|
|
78
|
+
await blockchainService.dock.trustRegistry.registrySchemasMetadata(
|
|
73
79
|
{
|
|
74
80
|
schemaIds: [schemaIdHex],
|
|
75
81
|
...(issuerDIDMethodKey && {
|
|
@@ -17,6 +17,10 @@ export const validation = {
|
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
19
|
|
|
20
|
+
mnemonicToMiniSecret(phrase: string) {
|
|
21
|
+
assert(typeof phrase === 'string', 'invalid mnemonic phrase');
|
|
22
|
+
},
|
|
23
|
+
|
|
20
24
|
mnemonicValidate(phrase: string) {
|
|
21
25
|
assert(typeof phrase === 'string', 'invalid mnemonic phrase');
|
|
22
26
|
},
|
|
@@ -12,6 +12,12 @@ export class UtilCryptoServiceRpc extends RpcService {
|
|
|
12
12
|
return this.call('mnemonicGenerate', numWords);
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
+
mnemonicToMiniSecret(phrase: string): Promise<any> {
|
|
16
|
+
validation.mnemonicToMiniSecret(phrase);
|
|
17
|
+
|
|
18
|
+
return this.call('mnemonicToMiniSecret', phrase);
|
|
19
|
+
}
|
|
20
|
+
|
|
15
21
|
mnemonicValidate(phrase: string): Promise<any> {
|
|
16
22
|
validation.mnemonicValidate(phrase);
|
|
17
23
|
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
cryptoWaitReady,
|
|
7
7
|
keyExtractSuri,
|
|
8
8
|
mnemonicGenerate,
|
|
9
|
+
mnemonicToMiniSecret,
|
|
9
10
|
mnemonicValidate,
|
|
10
11
|
} from '@polkadot/util-crypto';
|
|
11
12
|
import assert from 'assert';
|
|
@@ -14,6 +15,7 @@ import {validation} from './configs';
|
|
|
14
15
|
export class UtilCryptoService {
|
|
15
16
|
rpcMethods = [
|
|
16
17
|
UtilCryptoService.prototype.mnemonicGenerate,
|
|
18
|
+
UtilCryptoService.prototype.mnemonicToMiniSecret,
|
|
17
19
|
UtilCryptoService.prototype.mnemonicValidate,
|
|
18
20
|
UtilCryptoService.prototype.cryptoWaitReady,
|
|
19
21
|
UtilCryptoService.prototype.cryptoIsReady,
|
|
@@ -33,6 +35,12 @@ export class UtilCryptoService {
|
|
|
33
35
|
return mnemonicGenerate(numWords);
|
|
34
36
|
}
|
|
35
37
|
|
|
38
|
+
mnemonicToMiniSecret(phrase) {
|
|
39
|
+
validation.mnemonicToMiniSecret(phrase);
|
|
40
|
+
|
|
41
|
+
return mnemonicToMiniSecret(phrase);
|
|
42
|
+
}
|
|
43
|
+
|
|
36
44
|
isBase64(value) {
|
|
37
45
|
if (typeof value !== 'string') {
|
|
38
46
|
return false;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {TestFixtures} from '../fixtures';
|
|
2
2
|
import {NetworkManager} from '../modules/network-manager';
|
|
3
3
|
import {Wallet} from '../modules/wallet';
|
|
4
|
-
import {
|
|
4
|
+
import {blockchainService} from '../services/blockchain';
|
|
5
5
|
import {mockDockService} from '../services/test-utils';
|
|
6
6
|
import promiseMemoize from 'promise-memoize';
|
|
7
7
|
import {setStorage} from '../core/storage';
|
|
@@ -29,7 +29,7 @@ export const getTestWallet: Wallet = promiseMemoize(async () => {
|
|
|
29
29
|
mnemonic: TestFixtures.noBalanceAccount.mnemonic,
|
|
30
30
|
});
|
|
31
31
|
|
|
32
|
-
await
|
|
32
|
+
await blockchainService.init({
|
|
33
33
|
address: NetworkManager.getInstance().getNetworkInfo().substrateUrl,
|
|
34
34
|
});
|
|
35
35
|
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var assert = require('assert');
|
|
6
|
-
|
|
7
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
-
|
|
9
|
-
var assert__default = /*#__PURE__*/_interopDefaultLegacy(assert);
|
|
10
|
-
|
|
11
|
-
// @ts-nocheck
|
|
12
|
-
const validation = {
|
|
13
|
-
init(params) {
|
|
14
|
-
assert__default["default"](!!params.address, `invalid substrate address ${params.address}`);
|
|
15
|
-
},
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
exports.validation = validation;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var services_dock_service = require('./service.js');
|
|
6
|
-
require('@docknetwork/dock-blockchain-api');
|
|
7
|
-
require('@docknetwork/credential-sdk/resolver');
|
|
8
|
-
require('@docknetwork/dock-blockchain-modules');
|
|
9
|
-
require('@docknetwork/crypto-wasm-ts/lib/index');
|
|
10
|
-
require('events');
|
|
11
|
-
require('../../core/logger.js');
|
|
12
|
-
require('../../modules/event-manager.js');
|
|
13
|
-
require('assert');
|
|
14
|
-
require('./configs.js');
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
exports.dockService = services_dock_service.dockService;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export { dockService } from './service.mjs';
|
|
2
|
-
import '@docknetwork/dock-blockchain-api';
|
|
3
|
-
import '@docknetwork/credential-sdk/resolver';
|
|
4
|
-
import '@docknetwork/dock-blockchain-modules';
|
|
5
|
-
import '@docknetwork/crypto-wasm-ts/lib/index';
|
|
6
|
-
import 'events';
|
|
7
|
-
import '../../core/logger.mjs';
|
|
8
|
-
import '../../modules/event-manager.mjs';
|
|
9
|
-
import 'assert';
|
|
10
|
-
import './configs.mjs';
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var dockBlockchainApi = require('@docknetwork/dock-blockchain-api');
|
|
6
|
-
var resolver = require('@docknetwork/credential-sdk/resolver');
|
|
7
|
-
var dockBlockchainModules = require('@docknetwork/dock-blockchain-modules');
|
|
8
|
-
var index = require('@docknetwork/crypto-wasm-ts/lib/index');
|
|
9
|
-
var events = require('events');
|
|
10
|
-
var core_logger = require('../../core/logger.js');
|
|
11
|
-
var modules_eventManager = require('../../modules/event-manager.js');
|
|
12
|
-
var services_dock_configs = require('./configs.js');
|
|
13
|
-
require('assert');
|
|
14
|
-
|
|
15
|
-
// @ts-nocheck
|
|
16
|
-
let dockInstance;
|
|
17
|
-
function getDock() {
|
|
18
|
-
return dockInstance;
|
|
19
|
-
}
|
|
20
|
-
function setDock(instance) {
|
|
21
|
-
dockInstance = instance;
|
|
22
|
-
}
|
|
23
|
-
// Create a resolver in order to lookup DIDs for verifying
|
|
24
|
-
const universalResolverUrl = 'https://uniresolver.io';
|
|
25
|
-
class AnyDIDResolver extends resolver.ResolverRouter {
|
|
26
|
-
method = resolver.WILDCARD;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
*
|
|
30
|
-
*/
|
|
31
|
-
class DockService {
|
|
32
|
-
dock;
|
|
33
|
-
modules;
|
|
34
|
-
didModule;
|
|
35
|
-
isDockReady = false;
|
|
36
|
-
resolver;
|
|
37
|
-
static Events = {
|
|
38
|
-
DOCK_READY: 'dock-ready',
|
|
39
|
-
};
|
|
40
|
-
rpcMethods = [
|
|
41
|
-
DockService.prototype.disconnect,
|
|
42
|
-
DockService.prototype.ensureDockReady,
|
|
43
|
-
DockService.prototype.init,
|
|
44
|
-
DockService.prototype.isApiConnected,
|
|
45
|
-
DockService.prototype.getAddress,
|
|
46
|
-
];
|
|
47
|
-
constructor() {
|
|
48
|
-
this.name = 'dock';
|
|
49
|
-
this.dock = new dockBlockchainApi.DockAPI();
|
|
50
|
-
this.didModule = new dockBlockchainModules.DockDIDModule(this.dock);
|
|
51
|
-
this.modules = new dockBlockchainModules.DockCoreModules(this.dock);
|
|
52
|
-
dockInstance = this.dock;
|
|
53
|
-
this.emitter = new events.EventEmitter();
|
|
54
|
-
this.resolver = this.createDIDResolver();
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
*
|
|
58
|
-
* @returns
|
|
59
|
-
*/
|
|
60
|
-
async ensureDockReady() {
|
|
61
|
-
if (this.isDockReady) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
return modules_eventManager.once(this.emitter, DockService.Events.DOCK_READY);
|
|
65
|
-
}
|
|
66
|
-
createDIDResolver() {
|
|
67
|
-
return new AnyDIDResolver([
|
|
68
|
-
new resolver.DIDKeyResolver(),
|
|
69
|
-
new resolver.DIDResolver(this.didModule),
|
|
70
|
-
new resolver.UniversalResolver(universalResolverUrl),
|
|
71
|
-
]);
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
*
|
|
75
|
-
* @param {*} params
|
|
76
|
-
* @returns
|
|
77
|
-
*/
|
|
78
|
-
async init(params) {
|
|
79
|
-
services_dock_configs.validation.init(params);
|
|
80
|
-
if (this.dock.isConnected) {
|
|
81
|
-
await this.dock.disconnect();
|
|
82
|
-
}
|
|
83
|
-
core_logger.Logger.info(`Attempt to initialized substrate at: ${params.address}`);
|
|
84
|
-
await getDock().init(params);
|
|
85
|
-
this.address = params.address;
|
|
86
|
-
this.resolver = this.createDIDResolver();
|
|
87
|
-
if (process.env.NODE_ENV !== 'test' || process.env.API_MOCK_DISABLED === 'true') {
|
|
88
|
-
await index.initializeWasm();
|
|
89
|
-
}
|
|
90
|
-
core_logger.Logger.info(`Substrate initialized at: ${params.address}`);
|
|
91
|
-
this._setDockReady(true);
|
|
92
|
-
return true;
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
*
|
|
96
|
-
* @returns
|
|
97
|
-
*/
|
|
98
|
-
async disconnect() {
|
|
99
|
-
const result = await this.dock.disconnect();
|
|
100
|
-
this._setDockReady(false);
|
|
101
|
-
return result;
|
|
102
|
-
}
|
|
103
|
-
async waitDockReady() {
|
|
104
|
-
return new Promise(resolve => {
|
|
105
|
-
if (this.isDockReady) {
|
|
106
|
-
resolve();
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
this.emitter.once(DockService.Events.DOCK_READY, resolve);
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
*
|
|
115
|
-
* @returns
|
|
116
|
-
*/
|
|
117
|
-
async isApiConnected() {
|
|
118
|
-
return this.isDockReady;
|
|
119
|
-
}
|
|
120
|
-
async getAddress() {
|
|
121
|
-
return this.dock.address;
|
|
122
|
-
}
|
|
123
|
-
_setDockReady(isDockReady) {
|
|
124
|
-
this.isDockReady = isDockReady;
|
|
125
|
-
if (isDockReady) {
|
|
126
|
-
this.emitter.emit(DockService.Events.DOCK_READY);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
const dockService = new DockService();
|
|
131
|
-
|
|
132
|
-
exports.DockService = DockService;
|
|
133
|
-
exports.dockService = dockService;
|
|
134
|
-
exports.getDock = getDock;
|
|
135
|
-
exports.setDock = setDock;
|
|
136
|
-
exports.universalResolverUrl = universalResolverUrl;
|