@docknetwork/wallet-sdk-core 1.5.9 → 1.5.10
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/jest.config.ts +1 -1
- package/lib/credential-provider.d.ts +2 -7
- package/lib/credential-provider.d.ts.map +1 -1
- package/lib/credential-provider.js +15 -1
- package/lib/credential-provider.js.map +1 -1
- package/lib/did-provider.js +2 -2
- package/lib/did-provider.js.map +1 -1
- package/lib/ecosystem-tools.d.ts +2 -0
- package/lib/ecosystem-tools.d.ts.map +1 -1
- package/lib/ecosystem-tools.js +27 -1
- package/lib/ecosystem-tools.js.map +1 -1
- package/lib/network-resolver.d.ts +0 -1
- package/lib/network-resolver.d.ts.map +1 -1
- package/lib/network-resolver.js +1 -23
- package/lib/network-resolver.js.map +1 -1
- package/lib/types.d.ts +0 -2
- package/lib/types.d.ts.map +1 -1
- package/lib/wallet-wasm.d.ts.map +1 -1
- package/lib/wallet-wasm.js +1 -6
- package/lib/wallet-wasm.js.map +1 -1
- package/lib/wallet.d.ts +16 -0
- package/lib/wallet.d.ts.map +1 -1
- package/lib/wallet.js +29 -18
- package/lib/wallet.js.map +1 -1
- package/package.json +4 -4
- package/src/credential-provider.test.ts +105 -13
- package/src/credential-provider.ts +18 -1
- package/src/did-provider.ts +2 -2
- package/src/ecosystem-tools.ts +29 -0
- package/src/network-resolver.ts +0 -36
- package/src/types.ts +0 -4
- package/src/verification-controller.test.ts +1 -1
- package/src/wallet-wasm.ts +1 -7
- package/src/wallet.ts +24 -8
- package/tsconfig.build.tsbuildinfo +1 -1
- package/lib/account-provider.d.ts +0 -8
- package/lib/account-provider.d.ts.map +0 -1
- package/lib/account-provider.js +0 -15
- package/lib/account-provider.js.map +0 -1
- package/lib/v1-helpers.d.ts +0 -20
- package/lib/v1-helpers.d.ts.map +0 -1
- package/lib/v1-helpers.js +0 -147
- package/lib/v1-helpers.js.map +0 -1
- package/src/account-provider.ts +0 -18
- package/src/v1-helpers.ts +0 -160
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { IWallet } from './types';
|
|
2
|
-
import { Accounts } from '@docknetwork/wallet-sdk-wasm/lib/modules/accounts';
|
|
3
|
-
interface ICreateAccountsProvider {
|
|
4
|
-
wallet: IWallet;
|
|
5
|
-
}
|
|
6
|
-
export declare function createAccountProvider({ wallet }: ICreateAccountsProvider): Accounts;
|
|
7
|
-
export {};
|
|
8
|
-
//# sourceMappingURL=account-provider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"account-provider.d.ts","sourceRoot":"","sources":["../src/account-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAChC,OAAO,EAAC,QAAQ,EAAC,MAAM,mDAAmD,CAAC;AAG3E,UAAU,uBAAuB;IAC/B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,qBAAqB,CAAC,EAAC,MAAM,EAAC,EAAE,uBAAuB,YAStE"}
|
package/lib/account-provider.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createAccountProvider = void 0;
|
|
4
|
-
const accounts_1 = require("@docknetwork/wallet-sdk-wasm/lib/modules/accounts");
|
|
5
|
-
const v1_helpers_1 = require("./v1-helpers");
|
|
6
|
-
function createAccountProvider({ wallet }) {
|
|
7
|
-
const accountsModule = new accounts_1.Accounts({
|
|
8
|
-
wallet: wallet,
|
|
9
|
-
walletService: (0, v1_helpers_1.toV1WalletService)(wallet),
|
|
10
|
-
});
|
|
11
|
-
accounts_1.Accounts.instance = accountsModule;
|
|
12
|
-
return accountsModule;
|
|
13
|
-
}
|
|
14
|
-
exports.createAccountProvider = createAccountProvider;
|
|
15
|
-
//# sourceMappingURL=account-provider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"account-provider.js","sourceRoot":"","sources":["../src/account-provider.ts"],"names":[],"mappings":";;;AACA,gFAA2E;AAC3E,6CAA+C;AAM/C,SAAgB,qBAAqB,CAAC,EAAC,MAAM,EAA0B;IACrE,MAAM,cAAc,GAAG,IAAI,mBAAQ,CAAC;QAClC,MAAM,EAAE,MAAM;QACd,aAAa,EAAE,IAAA,8BAAiB,EAAC,MAAM,CAAC;KACzC,CAAC,CAAC;IAEF,mBAAgB,CAAC,QAAQ,GAAG,cAAc,CAAC;IAE5C,OAAO,cAAc,CAAC;AACxB,CAAC;AATD,sDASC"}
|
package/lib/v1-helpers.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { IWallet } from './types';
|
|
2
|
-
export declare function toV1Wallet(wallet: IWallet): Promise<IWallet>;
|
|
3
|
-
export type KeypairType = 'sr25519' | 'ed25519' | 'ecdsa';
|
|
4
|
-
/**
|
|
5
|
-
* Wallet service methods
|
|
6
|
-
* @param wallet
|
|
7
|
-
*/
|
|
8
|
-
export declare function toV1WalletService(wallet: IWallet): {
|
|
9
|
-
getDocumentById: (id: any) => Promise<any>;
|
|
10
|
-
createAccountDocuments: (params: {
|
|
11
|
-
name: string;
|
|
12
|
-
json?: string;
|
|
13
|
-
password?: string;
|
|
14
|
-
mnemonic?: string;
|
|
15
|
-
type?: KeypairType;
|
|
16
|
-
derivePath?: string;
|
|
17
|
-
hasBackup?: boolean;
|
|
18
|
-
}) => Promise<any[]>;
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=v1-helpers.d.ts.map
|
package/lib/v1-helpers.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"v1-helpers.d.ts","sourceRoot":"","sources":["../src/v1-helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,OAAO,EAAC,MAAM,SAAS,CAAC;AAS3C,wBAAsB,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CA6DlE;AAED,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE1D;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO;;qCAQN;QACrC,MAAM,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,WAAW,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB;EAgEJ"}
|
package/lib/v1-helpers.js
DELETED
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.toV1WalletService = exports.toV1Wallet = void 0;
|
|
27
|
-
const account_provider_1 = require("./account-provider");
|
|
28
|
-
const walletServiceConfigs = __importStar(require("@docknetwork/wallet-sdk-wasm/lib/services/wallet/configs"));
|
|
29
|
-
const index_1 = require("@docknetwork/wallet-sdk-wasm/lib/services/keyring/index");
|
|
30
|
-
const wallet_1 = require("@docknetwork/wallet-sdk-wasm/lib/services/wallet");
|
|
31
|
-
const uuid_1 = require("uuid");
|
|
32
|
-
async function toV1Wallet(wallet) {
|
|
33
|
-
const accounts = await (0, account_provider_1.createAccountProvider)({
|
|
34
|
-
wallet,
|
|
35
|
-
});
|
|
36
|
-
const v1Wallet = {
|
|
37
|
-
accounts: accounts,
|
|
38
|
-
create(json) {
|
|
39
|
-
return wallet.addDocument(document);
|
|
40
|
-
},
|
|
41
|
-
deleteWallet() {
|
|
42
|
-
return wallet.deleteWallet();
|
|
43
|
-
},
|
|
44
|
-
exportDocuments: (params) => {
|
|
45
|
-
return wallet_1.walletService.exportDocuments(params);
|
|
46
|
-
},
|
|
47
|
-
ensureNetwork() {
|
|
48
|
-
return Promise.resolve(undefined);
|
|
49
|
-
},
|
|
50
|
-
async query({ id, type, }) {
|
|
51
|
-
if (id) {
|
|
52
|
-
return [await wallet.getDocumentById(id)].filter(item => !!item);
|
|
53
|
-
}
|
|
54
|
-
if (type) {
|
|
55
|
-
return wallet.getDocumentsByType(type);
|
|
56
|
-
}
|
|
57
|
-
return wallet.getAllDocuments();
|
|
58
|
-
},
|
|
59
|
-
remove(id, options) {
|
|
60
|
-
return wallet.removeDocument(id);
|
|
61
|
-
},
|
|
62
|
-
add(json, options) {
|
|
63
|
-
return wallet.addDocument(json, options);
|
|
64
|
-
},
|
|
65
|
-
resolveCorrelations(id) {
|
|
66
|
-
return wallet.getDocumentCorrelations(id);
|
|
67
|
-
},
|
|
68
|
-
sync() {
|
|
69
|
-
return Promise.resolve(undefined);
|
|
70
|
-
},
|
|
71
|
-
update(json, options) {
|
|
72
|
-
return wallet.updateDocument(json, options);
|
|
73
|
-
},
|
|
74
|
-
upsert(json) {
|
|
75
|
-
return wallet.upsertDocument(json);
|
|
76
|
-
},
|
|
77
|
-
};
|
|
78
|
-
const newWallet = {
|
|
79
|
-
...v1Wallet,
|
|
80
|
-
...wallet,
|
|
81
|
-
};
|
|
82
|
-
accounts.wallet = newWallet;
|
|
83
|
-
return newWallet;
|
|
84
|
-
}
|
|
85
|
-
exports.toV1Wallet = toV1Wallet;
|
|
86
|
-
/**
|
|
87
|
-
* Wallet service methods
|
|
88
|
-
* @param wallet
|
|
89
|
-
*/
|
|
90
|
-
function toV1WalletService(wallet) {
|
|
91
|
-
return {
|
|
92
|
-
getDocumentById: id => {
|
|
93
|
-
return wallet.dataStore.documents.getDocumentById(id);
|
|
94
|
-
},
|
|
95
|
-
// accounts are not required in a wallet
|
|
96
|
-
// Ideally should move this code to the accounts provider file
|
|
97
|
-
// and make account provider available on its own package
|
|
98
|
-
createAccountDocuments: async (params) => {
|
|
99
|
-
walletServiceConfigs.validation.createAccountDocuments(params);
|
|
100
|
-
const { name, type = 'sr25519', derivePath, mnemonic, json, password, hasBackup } = params;
|
|
101
|
-
const keyringJson = json
|
|
102
|
-
? await index_1.keyringService.addFromJson({ jsonData: json, password })
|
|
103
|
-
: await index_1.keyringService.getKeyringPairJSON({ mnemonic, derivePath, type });
|
|
104
|
-
const correlations = [];
|
|
105
|
-
correlations.push({
|
|
106
|
-
'@context': ['https://w3id.org/wallet/v1'],
|
|
107
|
-
id: (0, uuid_1.v4)(),
|
|
108
|
-
type: 'KeyringPair',
|
|
109
|
-
value: keyringJson,
|
|
110
|
-
});
|
|
111
|
-
correlations.push({
|
|
112
|
-
'@context': ['https://w3id.org/wallet/v1'],
|
|
113
|
-
id: (0, uuid_1.v4)(),
|
|
114
|
-
type: 'Currency',
|
|
115
|
-
value: 0,
|
|
116
|
-
symbol: 'DOCK',
|
|
117
|
-
});
|
|
118
|
-
if (mnemonic) {
|
|
119
|
-
correlations.push({
|
|
120
|
-
'@context': ['https://w3id.org/wallet/v1'],
|
|
121
|
-
id: (0, uuid_1.v4)(),
|
|
122
|
-
type: 'Mnemonic',
|
|
123
|
-
value: mnemonic,
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
const correlationsDocs = [];
|
|
127
|
-
for (let i = 0; i < correlations.length; i++) {
|
|
128
|
-
const doc = correlations[i];
|
|
129
|
-
const addedDoc = await wallet.addDocument(doc);
|
|
130
|
-
correlationsDocs.push(addedDoc);
|
|
131
|
-
}
|
|
132
|
-
const addressDocument = await wallet.addDocument({
|
|
133
|
-
'@context': ['https://w3id.org/wallet/v1'],
|
|
134
|
-
id: keyringJson.address,
|
|
135
|
-
type: 'Address',
|
|
136
|
-
value: keyringJson.address,
|
|
137
|
-
address: keyringJson.address,
|
|
138
|
-
name,
|
|
139
|
-
hasBackup,
|
|
140
|
-
correlation: correlations.map(doc => doc.id),
|
|
141
|
-
});
|
|
142
|
-
return [addressDocument, ...correlationsDocs];
|
|
143
|
-
},
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
exports.toV1WalletService = toV1WalletService;
|
|
147
|
-
//# sourceMappingURL=v1-helpers.js.map
|
package/lib/v1-helpers.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"v1-helpers.js","sourceRoot":"","sources":["../src/v1-helpers.ts"],"names":[],"mappings":"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"}
|
package/src/account-provider.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import {IWallet} from './types';
|
|
2
|
-
import {Accounts} from '@docknetwork/wallet-sdk-wasm/src/modules/accounts';
|
|
3
|
-
import {toV1WalletService} from './v1-helpers';
|
|
4
|
-
|
|
5
|
-
interface ICreateAccountsProvider {
|
|
6
|
-
wallet: IWallet;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export function createAccountProvider({wallet}: ICreateAccountsProvider) {
|
|
10
|
-
const accountsModule = new Accounts({
|
|
11
|
-
wallet: wallet,
|
|
12
|
-
walletService: toV1WalletService(wallet),
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
(Accounts as any).instance = accountsModule;
|
|
16
|
-
|
|
17
|
-
return accountsModule;
|
|
18
|
-
}
|
package/src/v1-helpers.ts
DELETED
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
// TODO: [wallet-sdk] Cleanup wallet-sdk unnused wasm services https://dock-team.atlassian.net/browse/DCKA-1658
|
|
2
|
-
import {IV1Wallet, IWallet} from './types';
|
|
3
|
-
import {createAccountProvider} from './account-provider';
|
|
4
|
-
import {WalletDocument} from '@docknetwork/wallet-sdk-data-store/src/types';
|
|
5
|
-
import * as walletServiceConfigs from '@docknetwork/wallet-sdk-wasm/src/services/wallet/configs';
|
|
6
|
-
import {keyringService} from '@docknetwork/wallet-sdk-wasm/src/services/keyring/index';
|
|
7
|
-
import {walletService} from '@docknetwork/wallet-sdk-wasm/src/services/wallet';
|
|
8
|
-
import {v4 as uuid} from 'uuid';
|
|
9
|
-
import {EventEmitter} from 'events';
|
|
10
|
-
|
|
11
|
-
export async function toV1Wallet(wallet: IWallet): Promise<IWallet> {
|
|
12
|
-
const accounts = await createAccountProvider({
|
|
13
|
-
wallet,
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
const v1Wallet = {
|
|
17
|
-
accounts: accounts,
|
|
18
|
-
create(json: any): Promise<WalletDocument> {
|
|
19
|
-
return wallet.addDocument(document);
|
|
20
|
-
},
|
|
21
|
-
deleteWallet(): Promise<void> {
|
|
22
|
-
return wallet.deleteWallet();
|
|
23
|
-
},
|
|
24
|
-
exportDocuments: (params: {documents: any}) => {
|
|
25
|
-
return walletService.exportDocuments(params);
|
|
26
|
-
},
|
|
27
|
-
ensureNetwork(): Promise<void> {
|
|
28
|
-
return Promise.resolve(undefined);
|
|
29
|
-
},
|
|
30
|
-
async query({
|
|
31
|
-
id,
|
|
32
|
-
type,
|
|
33
|
-
}: {id?: string; type?: string} | undefined): Promise<WalletDocument[]> {
|
|
34
|
-
if (id) {
|
|
35
|
-
return [await wallet.getDocumentById(id)].filter(item => !!item);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
if (type) {
|
|
39
|
-
return wallet.getDocumentsByType(type);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
return wallet.getAllDocuments();
|
|
43
|
-
},
|
|
44
|
-
remove(id: string, options: any): Promise<void> {
|
|
45
|
-
return wallet.removeDocument(id);
|
|
46
|
-
},
|
|
47
|
-
add(json: any, options): Promise<WalletDocument> {
|
|
48
|
-
return wallet.addDocument(json, options);
|
|
49
|
-
},
|
|
50
|
-
resolveCorrelations(id: string): Promise<WalletDocument[]> {
|
|
51
|
-
return wallet.getDocumentCorrelations(id);
|
|
52
|
-
},
|
|
53
|
-
sync(): Promise<void> {
|
|
54
|
-
return Promise.resolve(undefined);
|
|
55
|
-
},
|
|
56
|
-
update(json: any, options): Promise<WalletDocument> {
|
|
57
|
-
return wallet.updateDocument(json, options);
|
|
58
|
-
},
|
|
59
|
-
upsert(json: any): Promise<WalletDocument> {
|
|
60
|
-
return wallet.upsertDocument(json);
|
|
61
|
-
},
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
const newWallet = {
|
|
65
|
-
...v1Wallet,
|
|
66
|
-
...wallet,
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
(accounts as any).wallet = newWallet;
|
|
70
|
-
|
|
71
|
-
return newWallet;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
export type KeypairType = 'sr25519' | 'ed25519' | 'ecdsa';
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* Wallet service methods
|
|
78
|
-
* @param wallet
|
|
79
|
-
*/
|
|
80
|
-
export function toV1WalletService(wallet: IWallet) {
|
|
81
|
-
return {
|
|
82
|
-
getDocumentById: id => {
|
|
83
|
-
return wallet.dataStore.documents.getDocumentById(id);
|
|
84
|
-
},
|
|
85
|
-
// accounts are not required in a wallet
|
|
86
|
-
// Ideally should move this code to the accounts provider file
|
|
87
|
-
// and make account provider available on its own package
|
|
88
|
-
createAccountDocuments: async (params: {
|
|
89
|
-
name: string;
|
|
90
|
-
json?: string;
|
|
91
|
-
password?: string;
|
|
92
|
-
mnemonic?: string;
|
|
93
|
-
type?: KeypairType;
|
|
94
|
-
derivePath?: string;
|
|
95
|
-
hasBackup?: boolean;
|
|
96
|
-
}) => {
|
|
97
|
-
walletServiceConfigs.validation.createAccountDocuments(params);
|
|
98
|
-
|
|
99
|
-
const {
|
|
100
|
-
name,
|
|
101
|
-
type = 'sr25519',
|
|
102
|
-
derivePath,
|
|
103
|
-
mnemonic,
|
|
104
|
-
json,
|
|
105
|
-
password,
|
|
106
|
-
hasBackup
|
|
107
|
-
} = params;
|
|
108
|
-
|
|
109
|
-
const keyringJson = json
|
|
110
|
-
? await keyringService.addFromJson({jsonData: json, password})
|
|
111
|
-
: await keyringService.getKeyringPairJSON({mnemonic, derivePath, type});
|
|
112
|
-
const correlations: any[] = [];
|
|
113
|
-
|
|
114
|
-
correlations.push({
|
|
115
|
-
'@context': ['https://w3id.org/wallet/v1'],
|
|
116
|
-
id: uuid(),
|
|
117
|
-
type: 'KeyringPair',
|
|
118
|
-
value: keyringJson,
|
|
119
|
-
});
|
|
120
|
-
|
|
121
|
-
correlations.push({
|
|
122
|
-
'@context': ['https://w3id.org/wallet/v1'],
|
|
123
|
-
id: uuid(),
|
|
124
|
-
type: 'Currency',
|
|
125
|
-
value: 0,
|
|
126
|
-
symbol: 'DOCK',
|
|
127
|
-
});
|
|
128
|
-
|
|
129
|
-
if (mnemonic) {
|
|
130
|
-
correlations.push({
|
|
131
|
-
'@context': ['https://w3id.org/wallet/v1'],
|
|
132
|
-
id: uuid(),
|
|
133
|
-
type: 'Mnemonic',
|
|
134
|
-
value: mnemonic,
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
const correlationsDocs = [];
|
|
139
|
-
|
|
140
|
-
for (let i = 0; i < correlations.length; i++) {
|
|
141
|
-
const doc = correlations[i];
|
|
142
|
-
const addedDoc = await wallet.addDocument(doc);
|
|
143
|
-
correlationsDocs.push(addedDoc);
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
const addressDocument = await wallet.addDocument({
|
|
147
|
-
'@context': ['https://w3id.org/wallet/v1'],
|
|
148
|
-
id: keyringJson.address,
|
|
149
|
-
type: 'Address',
|
|
150
|
-
value: keyringJson.address,
|
|
151
|
-
address: keyringJson.address,
|
|
152
|
-
name,
|
|
153
|
-
hasBackup,
|
|
154
|
-
correlation: correlations.map(doc => doc.id),
|
|
155
|
-
});
|
|
156
|
-
|
|
157
|
-
return [addressDocument, ...correlationsDocs];
|
|
158
|
-
},
|
|
159
|
-
};
|
|
160
|
-
}
|