@bitgo-beta/key-card 0.1.2-alpha.42 → 0.1.2-alpha.421
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/dist/src/drawKeycard.d.ts +3 -10
- package/dist/src/drawKeycard.d.ts.map +1 -1
- package/dist/src/drawKeycard.js +105 -26
- package/dist/src/faq.d.ts +1 -4
- package/dist/src/faq.d.ts.map +1 -1
- package/dist/src/faq.js +2 -3
- package/dist/src/generateParamsForKeyCreation.d.ts +3 -0
- package/dist/src/generateParamsForKeyCreation.d.ts.map +1 -0
- package/dist/src/generateParamsForKeyCreation.js +72 -0
- package/dist/src/generateQrData.d.ts +2 -27
- package/dist/src/generateQrData.d.ts.map +1 -1
- package/dist/src/generateQrData.js +75 -12
- package/dist/src/index.d.ts +2 -6
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +25 -9
- package/dist/src/types.d.ts +60 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +3 -0
- package/dist/src/utils.js +2 -3
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +9 -6
|
@@ -1,8 +1,41 @@
|
|
|
1
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 () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateQrData =
|
|
36
|
+
exports.generateQrData = generateQrData;
|
|
4
37
|
const sdk_api_1 = require("@bitgo-beta/sdk-api");
|
|
5
|
-
const assert = require("assert");
|
|
38
|
+
const assert = __importStar(require("assert"));
|
|
6
39
|
function getPubFromKey(key) {
|
|
7
40
|
switch (key.type) {
|
|
8
41
|
case 'blsdkg':
|
|
@@ -14,6 +47,13 @@ function getPubFromKey(key) {
|
|
|
14
47
|
}
|
|
15
48
|
}
|
|
16
49
|
function generateUserQrData(userKeychain, userMasterKey) {
|
|
50
|
+
if (userKeychain.reducedEncryptedPrv) {
|
|
51
|
+
return {
|
|
52
|
+
title: 'A: User Key',
|
|
53
|
+
description: 'This is your private key, encrypted with your wallet password.',
|
|
54
|
+
data: userKeychain.reducedEncryptedPrv,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
17
57
|
if (userKeychain.encryptedPrv) {
|
|
18
58
|
return {
|
|
19
59
|
title: 'A: User Key',
|
|
@@ -22,7 +62,7 @@ function generateUserQrData(userKeychain, userMasterKey) {
|
|
|
22
62
|
};
|
|
23
63
|
}
|
|
24
64
|
const pub = getPubFromKey(userKeychain);
|
|
25
|
-
assert(pub);
|
|
65
|
+
assert.ok(pub);
|
|
26
66
|
return {
|
|
27
67
|
title: 'A: Provided User Key',
|
|
28
68
|
description: 'This is the public key you provided for your wallet.',
|
|
@@ -31,8 +71,14 @@ function generateUserQrData(userKeychain, userMasterKey) {
|
|
|
31
71
|
};
|
|
32
72
|
}
|
|
33
73
|
function generateBackupQrData(coin, backupKeychain, { backupKeyProvider, backupMasterKey, } = {}) {
|
|
34
|
-
var _a;
|
|
35
74
|
const title = 'B: Backup Key';
|
|
75
|
+
if (backupKeychain.reducedEncryptedPrv) {
|
|
76
|
+
return {
|
|
77
|
+
title,
|
|
78
|
+
description: 'This is your backup private key, encrypted with your wallet password.',
|
|
79
|
+
data: backupKeychain.reducedEncryptedPrv,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
36
82
|
if (backupKeychain.encryptedPrv) {
|
|
37
83
|
return {
|
|
38
84
|
title,
|
|
@@ -41,8 +87,8 @@ function generateBackupQrData(coin, backupKeychain, { backupKeyProvider, backupM
|
|
|
41
87
|
};
|
|
42
88
|
}
|
|
43
89
|
if (backupKeyProvider === 'BitGo Trust' && backupKeychain.type === 'tss') {
|
|
44
|
-
const keyShares =
|
|
45
|
-
assert(
|
|
90
|
+
const keyShares = backupKeychain.keyShares?.filter((keyShare) => keyShare.to === 'backup');
|
|
91
|
+
assert.ok(keyShares?.length === 2);
|
|
46
92
|
return {
|
|
47
93
|
title: 'B: Backup Key Shares',
|
|
48
94
|
description: `These are the key shares for ${backupKeyProvider}. If BitGo Inc. goes out of business,\r\n` +
|
|
@@ -51,7 +97,7 @@ function generateBackupQrData(coin, backupKeychain, { backupKeyProvider, backupM
|
|
|
51
97
|
};
|
|
52
98
|
}
|
|
53
99
|
const pub = getPubFromKey(backupKeychain);
|
|
54
|
-
assert(pub);
|
|
100
|
+
assert.ok(pub);
|
|
55
101
|
if (backupKeyProvider) {
|
|
56
102
|
return {
|
|
57
103
|
title: 'B: Backup Key',
|
|
@@ -69,24 +115,42 @@ function generateBackupQrData(coin, backupKeychain, { backupKeyProvider, backupM
|
|
|
69
115
|
}
|
|
70
116
|
function generateBitGoQrData(bitgoKeychain) {
|
|
71
117
|
const bitgoData = getPubFromKey(bitgoKeychain);
|
|
72
|
-
assert(bitgoData);
|
|
118
|
+
assert.ok(bitgoData);
|
|
73
119
|
return {
|
|
74
120
|
title: 'C: BitGo Public Key',
|
|
75
121
|
description: 'This is the public part of the key that BitGo will use to ' + 'co-sign transactions\r\nwith you on your wallet.',
|
|
76
122
|
data: bitgoData,
|
|
77
123
|
};
|
|
78
124
|
}
|
|
79
|
-
function
|
|
125
|
+
function generateUserMasterPublicKeyQRData(publicKey) {
|
|
126
|
+
return {
|
|
127
|
+
title: 'E: Master User Public Key',
|
|
128
|
+
description: 'This is the public key used to derive the user key for the wallet. This is not stored by BitGo, and may be required for use in recovery scenarios.',
|
|
129
|
+
data: publicKey,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
function generateBackupMasterPublicKeyQRData(publicKey) {
|
|
133
|
+
return {
|
|
134
|
+
title: 'F: Master Backup Public Key',
|
|
135
|
+
description: 'This is the public key used to derive the backup key for the wallet. This is not stored by BitGo, and may be required for use in recovery scenarios.',
|
|
136
|
+
data: publicKey,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
function generateQrData({ backupKeychain, backupKeyProvider, backupMasterKey, bitgoKeychain, coin, passcodeEncryptionCode, passphrase, userKeychain, userMasterKey, userMasterPublicKey, backupMasterPublicKey, }) {
|
|
80
140
|
const qrData = {
|
|
81
141
|
user: generateUserQrData(userKeychain, userMasterKey),
|
|
142
|
+
userMasterPublicKey: userMasterPublicKey ? generateUserMasterPublicKeyQRData(userMasterPublicKey) : undefined,
|
|
82
143
|
backup: generateBackupQrData(coin, backupKeychain, {
|
|
83
144
|
backupKeyProvider,
|
|
84
145
|
backupMasterKey,
|
|
85
146
|
}),
|
|
147
|
+
backupMasterPublicKey: backupMasterPublicKey
|
|
148
|
+
? generateBackupMasterPublicKeyQRData(backupMasterPublicKey)
|
|
149
|
+
: undefined,
|
|
86
150
|
bitgo: generateBitGoQrData(bitgoKeychain),
|
|
87
151
|
};
|
|
88
152
|
if (passphrase && passcodeEncryptionCode) {
|
|
89
|
-
const encryptedWalletPasscode = sdk_api_1.encrypt(passcodeEncryptionCode, passphrase);
|
|
153
|
+
const encryptedWalletPasscode = (0, sdk_api_1.encrypt)(passcodeEncryptionCode, passphrase);
|
|
90
154
|
qrData.passcode = {
|
|
91
155
|
title: 'D: Encrypted wallet Password',
|
|
92
156
|
description: 'This is the wallet password, encrypted client-side with a key held by BitGo.',
|
|
@@ -95,5 +159,4 @@ function generateQrData({ backupKeychain, backupKeyProvider, backupMasterKey, bi
|
|
|
95
159
|
}
|
|
96
160
|
return qrData;
|
|
97
161
|
}
|
|
98
|
-
exports.generateQrData = generateQrData;
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVRckRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2VuZXJhdGVRckRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsaURBQThDO0FBQzlDLGlDQUFpQztBQXlDakMsU0FBUyxhQUFhLENBQUMsR0FBYTtJQUNsQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLEVBQUU7UUFDaEIsS0FBSyxRQUFRO1lBQ1gsT0FBTyxHQUFHLENBQUMsU0FBUyxDQUFDO1FBQ3ZCLEtBQUssS0FBSztZQUNSLE9BQU8sR0FBRyxDQUFDLGNBQWMsQ0FBQztRQUM1QixLQUFLLGFBQWE7WUFDaEIsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDO0tBQ2xCO0FBQ0gsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsWUFBc0IsRUFBRSxhQUFzQjtJQUN4RSxJQUFJLFlBQVksQ0FBQyxZQUFZLEVBQUU7UUFDN0IsT0FBTztZQUNMLEtBQUssRUFBRSxhQUFhO1lBQ3BCLFdBQVcsRUFBRSxnRUFBZ0U7WUFDN0UsSUFBSSxFQUFFLFlBQVksQ0FBQyxZQUFZO1NBQ2hDLENBQUM7S0FDSDtJQUVELE1BQU0sR0FBRyxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4QyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFWixPQUFPO1FBQ0wsS0FBSyxFQUFFLHNCQUFzQjtRQUM3QixXQUFXLEVBQUUsc0RBQXNEO1FBQ25FLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLGFBQWE7S0FDL0IsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLG9CQUFvQixDQUMzQixJQUF3QixFQUN4QixjQUF3QixFQUN4QixFQUNFLGlCQUFpQixFQUNqQixlQUFlLE1BSWIsRUFBRTs7SUFFTixNQUFNLEtBQUssR0FBRyxlQUFlLENBQUM7SUFDOUIsSUFBSSxjQUFjLENBQUMsWUFBWSxFQUFFO1FBQy9CLE9BQU87WUFDTCxLQUFLO1lBQ0wsV0FBVyxFQUFFLHVFQUF1RTtZQUNwRixJQUFJLEVBQUUsY0FBYyxDQUFDLFlBQVk7U0FDbEMsQ0FBQztLQUNIO0lBRUQsSUFBSSxpQkFBaUIsS0FBSyxhQUFhLElBQUksY0FBYyxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUU7UUFDeEUsTUFBTSxTQUFTLEdBQUcsTUFBQSxjQUFjLENBQUMsU0FBUywwQ0FBRSxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUM7UUFDM0YsTUFBTSxDQUFDLENBQUEsU0FBUyxhQUFULFNBQVMsdUJBQVQsU0FBUyxDQUFFLE1BQU0sTUFBSyxDQUFDLENBQUMsQ0FBQztRQUNoQyxPQUFPO1lBQ0wsS0FBSyxFQUFFLHNCQUFzQjtZQUM3QixXQUFXLEVBQ1QsZ0NBQWdDLGlCQUFpQiwyQ0FBMkM7Z0JBQzVGLFdBQVcsaUJBQWlCLDZDQUE2QztZQUMzRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7U0FDaEMsQ0FBQztLQUNIO0lBRUQsTUFBTSxHQUFHLEdBQUcsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVaLElBQUksaUJBQWlCLEVBQUU7UUFDckIsT0FBTztZQUNMLEtBQUssRUFBRSxlQUFlO1lBQ3RCLFdBQVcsRUFDVCxrQ0FBa0MsaUJBQWlCLFFBQVEsSUFBSSxDQUFDLElBQUkscUJBQXFCO2dCQUN6Riw0QkFBNEIsaUJBQWlCLHNEQUFzRDtZQUNyRyxJQUFJLEVBQUUsR0FBRztTQUNWLENBQUM7S0FDSDtJQUVELE9BQU87UUFDTCxLQUFLLEVBQUUsd0JBQXdCO1FBQy9CLFdBQVcsRUFBRSxzREFBc0Q7UUFDbkUsSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsZUFBZTtLQUNqQyxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQUMsYUFBdUI7SUFDbEQsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUVsQixPQUFPO1FBQ0wsS0FBSyxFQUFFLHFCQUFxQjtRQUM1QixXQUFXLEVBQ1QsNERBQTRELEdBQUcsa0RBQWtEO1FBQ25ILElBQUksRUFBRSxTQUFTO0tBQ2hCLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLEVBQzdCLGNBQWMsRUFDZCxpQkFBaUIsRUFDakIsZUFBZSxFQUNmLGFBQWEsRUFDYixJQUFJLEVBQ0osc0JBQXNCLEVBQ3RCLFVBQVUsRUFDVixZQUFZLEVBQ1osYUFBYSxHQUNRO0lBQ3JCLE1BQU0sTUFBTSxHQUFXO1FBQ3JCLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDO1FBQ3JELE1BQU0sRUFBRSxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO1lBQ2pELGlCQUFpQjtZQUNqQixlQUFlO1NBQ2hCLENBQUM7UUFDRixLQUFLLEVBQUUsbUJBQW1CLENBQUMsYUFBYSxDQUFDO0tBQzFDLENBQUM7SUFFRixJQUFJLFVBQVUsSUFBSSxzQkFBc0IsRUFBRTtRQUN4QyxNQUFNLHVCQUF1QixHQUFHLGlCQUFPLENBQUMsc0JBQXNCLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFNUUsTUFBTSxDQUFDLFFBQVEsR0FBRztZQUNoQixLQUFLLEVBQUUsOEJBQThCO1lBQ3JDLFdBQVcsRUFBRSw4RUFBOEU7WUFDM0YsSUFBSSxFQUFFLHVCQUF1QjtTQUM5QixDQUFDO0tBQ0g7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBL0JELHdDQStCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBLZXljaGFpbiB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IGVuY3J5cHQgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstYXBpJztcbmltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdlbmVyYXRlUXJEYXRhUGFyYW1zIHtcbiAgLy8gVGhlIGJhY2t1cCBrZXljaGFpbiBhcyBpdCBpcyByZXR1cm5lZCBmcm9tIHRoZSBCaXRHbyBBUEkgdXBvbiBjcmVhdGlvblxuICBiYWNrdXBLZXljaGFpbjogS2V5Y2hhaW47XG4gIC8vIFRoZSBuYW1lIG9mIHRoZSAzcmQgcGFydHkgcHJvdmlkZXIgb2YgdGhlIGJhY2t1cCBrZXkgaWYgbmVpdGhlciB0aGUgdXNlciBub3IgQml0R28gc3RvcmVzIGl0XG4gIGJhY2t1cEtleVByb3ZpZGVyPzogc3RyaW5nO1xuICAvLyBUaGUga2V5IGlkIG9mIHRoZSBiYWNrdXAga2V5LCBvbmx5IHVzZWQgZm9yIGNvbGQga2V5c1xuICBiYWNrdXBNYXN0ZXJLZXk/OiBzdHJpbmc7XG4gIC8vIFRoZSBCaXRHbyBrZXljaGFpbiBhcyBpdCBpcyByZXR1cm5lZCBmcm9tIHRoZSBCaXRHbyBBUEkgdXBvbiBjcmVhdGlvblxuICBiaXRnb0tleWNoYWluOiBLZXljaGFpbjtcbiAgLy8gVGhlIGNvaW4gb2YgdGhlIHdhbGxldCB0aGF0IHdhcy8gaXMgYWJvdXQgdG8gYmUgY3JlYXRlZFxuICBjb2luOiBSZWFkb25seTxCYXNlQ29pbj47XG4gIC8vIEEgY29kZSB0aGF0IGNhbiBiZSB1c2VkIHRvIGVuY3J5cHQgdGhlIHdhbGxldCBwYXNzd29yZCB0by5cbiAgLy8gSWYgYm90aCB0aGUgcGFzc3BocmFzZSBhbmQgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSBhcmUgcGFzc2VkLCB0aGVuIHRoaXMgY29kZSBlbmNyeXB0cyB0aGUgcGFzc3BocmFzZSB3aXRoIHRoZVxuICAvLyBwYXNzY29kZUVuY3J5cHRpb25Db2RlIGFuZCBwdXRzIHRoZSByZXN1bHQgaW50byBCb3ggRC4gQWxsb3dzIHJlY292ZXJpZXMgb2YgdGhlIHdhbGxldCBwYXNzd29yZC5cbiAgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZT86IHN0cmluZztcbiAgLy8gVGhlIHdhbGxldCBwYXNzd29yZFxuICAvLyBJZiBib3RoIHRoZSBwYXNzcGhyYXNlIGFuZCBwYXNzY29kZUVuY3J5cHRpb25Db2RlIGFyZSBwYXNzZWQsIHRoZW4gdGhpcyBjb2RlIGVuY3J5cHRzIHRoZSBwYXNzcGhyYXNlIHdpdGggdGhlXG4gIC8vIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUgYW5kIHB1dHMgdGhlIHJlc3VsdCBpbnRvIEJveCBELiBBbGxvd3MgcmVjb3ZlcmllcyBvZiB0aGUgd2FsbGV0IHBhc3N3b3JkLlxuICBwYXNzcGhyYXNlPzogc3RyaW5nO1xuICAvLyBUaGUgdXNlciBrZXljaGFpbiBhcyBpdCBpcyByZXR1cm5lZCBmcm9tIHRoZSBCaXRHbyBBUEkgdXBvbiBjcmVhdGlvblxuICB1c2VyS2V5Y2hhaW46IEtleWNoYWluO1xuICAvLyBUaGUga2V5IGlkIG9mIHRoZSB1c2VyIGtleSwgb25seSB1c2VkIGZvciBjb2xkIGtleXNcbiAgdXNlck1hc3RlcktleT86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFFyRGF0YUVudHJ5IHtcbiAgZGF0YTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBwdWJsaWNNYXN0ZXJLZXk/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXJEYXRhIHtcbiAgYmFja3VwPzogUXJEYXRhRW50cnk7XG4gIGJpdGdvPzogUXJEYXRhRW50cnk7XG4gIHBhc3Njb2RlPzogUXJEYXRhRW50cnk7XG4gIHVzZXI6IFFyRGF0YUVudHJ5O1xufVxuXG5mdW5jdGlvbiBnZXRQdWJGcm9tS2V5KGtleTogS2V5Y2hhaW4pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBzd2l0Y2ggKGtleS50eXBlKSB7XG4gICAgY2FzZSAnYmxzZGtnJzpcbiAgICAgIHJldHVybiBrZXkuY29tbW9uUHViO1xuICAgIGNhc2UgJ3Rzcyc6XG4gICAgICByZXR1cm4ga2V5LmNvbW1vbktleWNoYWluO1xuICAgIGNhc2UgJ2luZGVwZW5kZW50JzpcbiAgICAgIHJldHVybiBrZXkucHViO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdlbmVyYXRlVXNlclFyRGF0YSh1c2VyS2V5Y2hhaW46IEtleWNoYWluLCB1c2VyTWFzdGVyS2V5Pzogc3RyaW5nKTogUXJEYXRhRW50cnkge1xuICBpZiAodXNlcktleWNoYWluLmVuY3J5cHRlZFBydikge1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZTogJ0E6IFVzZXIgS2V5JyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnVGhpcyBpcyB5b3VyIHByaXZhdGUga2V5LCBlbmNyeXB0ZWQgd2l0aCB5b3VyIHdhbGxldCBwYXNzd29yZC4nLFxuICAgICAgZGF0YTogdXNlcktleWNoYWluLmVuY3J5cHRlZFBydixcbiAgICB9O1xuICB9XG5cbiAgY29uc3QgcHViID0gZ2V0UHViRnJvbUtleSh1c2VyS2V5Y2hhaW4pO1xuICBhc3NlcnQocHViKTtcblxuICByZXR1cm4ge1xuICAgIHRpdGxlOiAnQTogUHJvdmlkZWQgVXNlciBLZXknLFxuICAgIGRlc2NyaXB0aW9uOiAnVGhpcyBpcyB0aGUgcHVibGljIGtleSB5b3UgcHJvdmlkZWQgZm9yIHlvdXIgd2FsbGV0LicsXG4gICAgZGF0YTogcHViLFxuICAgIHB1YmxpY01hc3RlcktleTogdXNlck1hc3RlcktleSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVCYWNrdXBRckRhdGEoXG4gIGNvaW46IFJlYWRvbmx5PEJhc2VDb2luPixcbiAgYmFja3VwS2V5Y2hhaW46IEtleWNoYWluLFxuICB7XG4gICAgYmFja3VwS2V5UHJvdmlkZXIsXG4gICAgYmFja3VwTWFzdGVyS2V5LFxuICB9OiB7XG4gICAgYmFja3VwS2V5UHJvdmlkZXI/OiBzdHJpbmc7XG4gICAgYmFja3VwTWFzdGVyS2V5Pzogc3RyaW5nO1xuICB9ID0ge31cbik6IFFyRGF0YUVudHJ5IHtcbiAgY29uc3QgdGl0bGUgPSAnQjogQmFja3VwIEtleSc7XG4gIGlmIChiYWNrdXBLZXljaGFpbi5lbmNyeXB0ZWRQcnYpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGUsXG4gICAgICBkZXNjcmlwdGlvbjogJ1RoaXMgaXMgeW91ciBiYWNrdXAgcHJpdmF0ZSBrZXksIGVuY3J5cHRlZCB3aXRoIHlvdXIgd2FsbGV0IHBhc3N3b3JkLicsXG4gICAgICBkYXRhOiBiYWNrdXBLZXljaGFpbi5lbmNyeXB0ZWRQcnYsXG4gICAgfTtcbiAgfVxuXG4gIGlmIChiYWNrdXBLZXlQcm92aWRlciA9PT0gJ0JpdEdvIFRydXN0JyAmJiBiYWNrdXBLZXljaGFpbi50eXBlID09PSAndHNzJykge1xuICAgIGNvbnN0IGtleVNoYXJlcyA9IGJhY2t1cEtleWNoYWluLmtleVNoYXJlcz8uZmlsdGVyKChrZXlTaGFyZSkgPT4ga2V5U2hhcmUudG8gPT09ICdiYWNrdXAnKTtcbiAgICBhc3NlcnQoa2V5U2hhcmVzPy5sZW5ndGggPT09IDIpO1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZTogJ0I6IEJhY2t1cCBLZXkgU2hhcmVzJyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICBgVGhlc2UgYXJlIHRoZSBrZXkgc2hhcmVzIGZvciAke2JhY2t1cEtleVByb3ZpZGVyfS4gSWYgQml0R28gSW5jLiBnb2VzIG91dCBvZiBidXNpbmVzcyxcXHJcXG5gICtcbiAgICAgICAgYGNvbnRhY3QgJHtiYWNrdXBLZXlQcm92aWRlcn0gYW5kIHRoZXkgd2lsbCBoZWxwIHlvdSByZWNvdmVyIHlvdXIgZnVuZHMuYCxcbiAgICAgIGRhdGE6IEpTT04uc3RyaW5naWZ5KGtleVNoYXJlcyksXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IHB1YiA9IGdldFB1YkZyb21LZXkoYmFja3VwS2V5Y2hhaW4pO1xuICBhc3NlcnQocHViKTtcblxuICBpZiAoYmFja3VwS2V5UHJvdmlkZXIpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6ICdCOiBCYWNrdXAgS2V5JyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICBgVGhpcyBpcyB0aGUgcHVibGljIGtleSBoZWxkIGF0ICR7YmFja3VwS2V5UHJvdmlkZXJ9LCBhbiAke2NvaW4ubmFtZX0gcmVjb3Zlcnkgc2VydmljZS4gYCArXG4gICAgICAgIGBJZiB5b3UgbG9zZVxcclxcbnlvdXIga2V5LCAke2JhY2t1cEtleVByb3ZpZGVyfSB3aWxsIGJlIGFibGUgdG8gc2lnbiB0cmFuc2FjdGlvbnMgdG8gcmVjb3ZlciBmdW5kcy5gLFxuICAgICAgZGF0YTogcHViLFxuICAgIH07XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHRpdGxlOiAnQjogUHJvdmlkZWQgQmFja3VwIEtleScsXG4gICAgZGVzY3JpcHRpb246ICdUaGlzIGlzIHRoZSBwdWJsaWMga2V5IHlvdSBwcm92aWRlZCBmb3IgeW91ciB3YWxsZXQuJyxcbiAgICBkYXRhOiBwdWIsXG4gICAgcHVibGljTWFzdGVyS2V5OiBiYWNrdXBNYXN0ZXJLZXksXG4gIH07XG59XG5cbmZ1bmN0aW9uIGdlbmVyYXRlQml0R29RckRhdGEoYml0Z29LZXljaGFpbjogS2V5Y2hhaW4pOiBRckRhdGFFbnRyeSB7XG4gIGNvbnN0IGJpdGdvRGF0YSA9IGdldFB1YkZyb21LZXkoYml0Z29LZXljaGFpbik7XG4gIGFzc2VydChiaXRnb0RhdGEpO1xuXG4gIHJldHVybiB7XG4gICAgdGl0bGU6ICdDOiBCaXRHbyBQdWJsaWMgS2V5JyxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgICdUaGlzIGlzIHRoZSBwdWJsaWMgcGFydCBvZiB0aGUga2V5IHRoYXQgQml0R28gd2lsbCB1c2UgdG8gJyArICdjby1zaWduIHRyYW5zYWN0aW9uc1xcclxcbndpdGggeW91IG9uIHlvdXIgd2FsbGV0LicsXG4gICAgZGF0YTogYml0Z29EYXRhLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVRckRhdGEoe1xuICBiYWNrdXBLZXljaGFpbixcbiAgYmFja3VwS2V5UHJvdmlkZXIsXG4gIGJhY2t1cE1hc3RlcktleSxcbiAgYml0Z29LZXljaGFpbixcbiAgY29pbixcbiAgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSxcbiAgcGFzc3BocmFzZSxcbiAgdXNlcktleWNoYWluLFxuICB1c2VyTWFzdGVyS2V5LFxufTogR2VuZXJhdGVRckRhdGFQYXJhbXMpOiBRckRhdGEge1xuICBjb25zdCBxckRhdGE6IFFyRGF0YSA9IHtcbiAgICB1c2VyOiBnZW5lcmF0ZVVzZXJRckRhdGEodXNlcktleWNoYWluLCB1c2VyTWFzdGVyS2V5KSxcbiAgICBiYWNrdXA6IGdlbmVyYXRlQmFja3VwUXJEYXRhKGNvaW4sIGJhY2t1cEtleWNoYWluLCB7XG4gICAgICBiYWNrdXBLZXlQcm92aWRlcixcbiAgICAgIGJhY2t1cE1hc3RlcktleSxcbiAgICB9KSxcbiAgICBiaXRnbzogZ2VuZXJhdGVCaXRHb1FyRGF0YShiaXRnb0tleWNoYWluKSxcbiAgfTtcblxuICBpZiAocGFzc3BocmFzZSAmJiBwYXNzY29kZUVuY3J5cHRpb25Db2RlKSB7XG4gICAgY29uc3QgZW5jcnlwdGVkV2FsbGV0UGFzc2NvZGUgPSBlbmNyeXB0KHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsIHBhc3NwaHJhc2UpO1xuXG4gICAgcXJEYXRhLnBhc3Njb2RlID0ge1xuICAgICAgdGl0bGU6ICdEOiBFbmNyeXB0ZWQgd2FsbGV0IFBhc3N3b3JkJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnVGhpcyBpcyB0aGUgd2FsbGV0IHBhc3N3b3JkLCBlbmNyeXB0ZWQgY2xpZW50LXNpZGUgd2l0aCBhIGtleSBoZWxkIGJ5IEJpdEdvLicsXG4gICAgICBkYXRhOiBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZSxcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIHFyRGF0YTtcbn1cbiJdfQ==
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVRckRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2VuZXJhdGVRckRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFzSUEsd0NBcUNDO0FBektELGlEQUE4QztBQUM5QywrQ0FBaUM7QUFHakMsU0FBUyxhQUFhLENBQUMsR0FBYTtJQUNsQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqQixLQUFLLFFBQVE7WUFDWCxPQUFPLEdBQUcsQ0FBQyxTQUFTLENBQUM7UUFDdkIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxHQUFHLENBQUMsY0FBYyxDQUFDO1FBQzVCLEtBQUssYUFBYTtZQUNoQixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUM7SUFDbkIsQ0FBQztBQUNILENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLFlBQXNCLEVBQUUsYUFBc0I7SUFDeEUsSUFBSSxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNyQyxPQUFPO1lBQ0wsS0FBSyxFQUFFLGFBQWE7WUFDcEIsV0FBVyxFQUFFLGdFQUFnRTtZQUM3RSxJQUFJLEVBQUUsWUFBWSxDQUFDLG1CQUFtQjtTQUN2QyxDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzlCLE9BQU87WUFDTCxLQUFLLEVBQUUsYUFBYTtZQUNwQixXQUFXLEVBQUUsZ0VBQWdFO1lBQzdFLElBQUksRUFBRSxZQUFZLENBQUMsWUFBWTtTQUNoQyxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sR0FBRyxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4QyxNQUFNLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRWYsT0FBTztRQUNMLEtBQUssRUFBRSxzQkFBc0I7UUFDN0IsV0FBVyxFQUFFLHNEQUFzRDtRQUNuRSxJQUFJLEVBQUUs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YUFBYSxFQUNiLG1CQUFtQixFQUNuQixxQkFBcUIsR0FDQTtJQUNyQixNQUFNLE1BQU0sR0FBVztRQUNyQixJQUFJLEVBQUUsa0JBQWtCLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQztRQUNyRCxtQkFBbUIsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsaUNBQWlDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztRQUM3RyxNQUFNLEVBQUUsb0JBQW9CLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUNqRCxpQkFBaUI7WUFDakIsZUFBZTtTQUNoQixDQUFDO1FBQ0YscUJBQXFCLEVBQUUscUJBQXFCO1lBQzFDLENBQUMsQ0FBQyxtQ0FBbUMsQ0FBQyxxQkFBcUIsQ0FBQztZQUM1RCxDQUFDLENBQUMsU0FBUztRQUNiLEtBQUssRUFBRSxtQkFBbUIsQ0FBQyxhQUFhLENBQUM7S0FDMUMsQ0FBQztJQUVGLElBQUksVUFBVSxJQUFJLHNCQUFzQixFQUFFLENBQUM7UUFDekMsTUFBTSx1QkFBdUIsR0FBRyxJQUFBLGlCQUFPLEVBQUMsc0JBQXNCLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFNUUsTUFBTSxDQUFDLFFBQVEsR0FBRztZQUNoQixLQUFLLEVBQUUsOEJBQThCO1lBQ3JDLFdBQVcsRUFBRSw4RUFBOEU7WUFDM0YsSUFBSSxFQUFFLHVCQUF1QjtTQUM5QixDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgS2V5Y2hhaW4gfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBlbmNyeXB0IH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWFwaSc7XG5pbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IEdlbmVyYXRlUXJEYXRhUGFyYW1zLCBNYXN0ZXJQdWJsaWNLZXlRckRhdGFFbnRyeSwgUXJEYXRhLCBRckRhdGFFbnRyeSB9IGZyb20gJy4vdHlwZXMnO1xuXG5mdW5jdGlvbiBnZXRQdWJGcm9tS2V5KGtleTogS2V5Y2hhaW4pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBzd2l0Y2ggKGtleS50eXBlKSB7XG4gICAgY2FzZSAnYmxzZGtnJzpcbiAgICAgIHJldHVybiBrZXkuY29tbW9uUHViO1xuICAgIGNhc2UgJ3Rzcyc6XG4gICAgICByZXR1cm4ga2V5LmNvbW1vbktleWNoYWluO1xuICAgIGNhc2UgJ2luZGVwZW5kZW50JzpcbiAgICAgIHJldHVybiBrZXkucHViO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdlbmVyYXRlVXNlclFyRGF0YSh1c2VyS2V5Y2hhaW46IEtleWNoYWluLCB1c2VyTWFzdGVyS2V5Pzogc3RyaW5nKTogUXJEYXRhRW50cnkge1xuICBpZiAodXNlcktleWNoYWluLnJlZHVjZWRFbmNyeXB0ZWRQcnYpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6ICdBOiBVc2VyIEtleScsXG4gICAgICBkZXNjcmlwdGlvbjogJ1RoaXMgaXMgeW91ciBwcml2YXRlIGtleSwgZW5jcnlwdGVkIHdpdGggeW91ciB3YWxsZXQgcGFzc3dvcmQuJyxcbiAgICAgIGRhdGE6IHVzZXJLZXljaGFpbi5yZWR1Y2VkRW5jcnlwdGVkUHJ2LFxuICAgIH07XG4gIH1cbiAgaWYgKHVzZXJLZXljaGFpbi5lbmNyeXB0ZWRQcnYpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6ICdBOiBVc2VyIEtleScsXG4gICAgICBkZXNjcmlwdGlvbjogJ1RoaXMgaXMgeW91ciBwcml2YXRlIGtleSwgZW5jcnlwdGVkIHdpdGggeW91ciB3YWxsZXQgcGFzc3dvcmQuJyxcbiAgICAgIGRhdGE6IHVzZXJLZXljaGFpbi5lbmNyeXB0ZWRQcnYsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IHB1YiA9IGdldFB1YkZyb21LZXkodXNlcktleWNoYWluKTtcbiAgYXNzZXJ0Lm9rKHB1Yik7XG5cbiAgcmV0dXJuIHtcbiAgICB0aXRsZTogJ0E6IFByb3ZpZGVkIFVzZXIgS2V5JyxcbiAgICBkZXNjcmlwdGlvbjogJ1RoaXMgaXMgdGhlIHB1YmxpYyBrZXkgeW91IHByb3ZpZGVkIGZvciB5b3VyIHdhbGxldC4nLFxuICAgIGRhdGE6IHB1YixcbiAgICBwdWJsaWNNYXN0ZXJLZXk6IHVzZXJNYXN0ZXJLZXksXG4gIH07XG59XG5cbmZ1bmN0aW9uIGdlbmVyYXRlQmFja3VwUXJEYXRhKFxuICBjb2luOiBSZWFkb25seTxCYXNlQ29pbj4sXG4gIGJhY2t1cEtleWNoYWluOiBLZXljaGFpbixcbiAge1xuICAgIGJhY2t1cEtleVByb3ZpZGVyLFxuICAgIGJhY2t1cE1hc3RlcktleSxcbiAgfToge1xuICAgIGJhY2t1cEtleVByb3ZpZGVyPzogc3RyaW5nO1xuICAgIGJhY2t1cE1hc3RlcktleT86IHN0cmluZztcbiAgfSA9IHt9XG4pOiBRckRhdGFFbnRyeSB7XG4gIGNvbnN0IHRpdGxlID0gJ0I6IEJhY2t1cCBLZXknO1xuICBpZiAoYmFja3VwS2V5Y2hhaW4ucmVkdWNlZEVuY3J5cHRlZFBydikge1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZSxcbiAgICAgIGRlc2NyaXB0aW9uOiAnVGhpcyBpcyB5b3VyIGJhY2t1cCBwcml2YXRlIGtleSwgZW5jcnlwdGVkIHdpdGggeW91ciB3YWxsZXQgcGFzc3dvcmQuJyxcbiAgICAgIGRhdGE6IGJhY2t1cEtleWNoYWluLnJlZHVjZWRFbmNyeXB0ZWRQcnYsXG4gICAgfTtcbiAgfVxuICBpZiAoYmFja3VwS2V5Y2hhaW4uZW5jcnlwdGVkUHJ2KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRpdGxlLFxuICAgICAgZGVzY3JpcHRpb246ICdUaGlzIGlzIHlvdXIgYmFja3VwIHByaXZhdGUga2V5LCBlbmNyeXB0ZWQgd2l0aCB5b3VyIHdhbGxldCBwYXNzd29yZC4nLFxuICAgICAgZGF0YTogYmFja3VwS2V5Y2hhaW4uZW5jcnlwdGVkUHJ2LFxuICAgIH07XG4gIH1cblxuICBpZiAoYmFja3VwS2V5UHJvdmlkZXIgPT09ICdCaXRHbyBUcnVzdCcgJiYgYmFja3VwS2V5Y2hhaW4udHlwZSA9PT0gJ3RzcycpIHtcbiAgICBjb25zdCBrZXlTaGFyZXMgPSBiYWNrdXBLZXljaGFpbi5rZXlTaGFyZXM/LmZpbHRlcigoa2V5U2hhcmUpID0+IGtleVNoYXJlLnRvID09PSAnYmFja3VwJyk7XG4gICAgYXNzZXJ0Lm9rKGtleVNoYXJlcz8ubGVuZ3RoID09PSAyKTtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6ICdCOiBCYWNrdXAgS2V5IFNoYXJlcycsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgYFRoZXNlIGFyZSB0aGUga2V5IHNoYXJlcyBmb3IgJHtiYWNrdXBLZXlQcm92aWRlcn0uIElmIEJpdEdvIEluYy4gZ29lcyBvdXQgb2YgYnVzaW5lc3MsXFxyXFxuYCArXG4gICAgICAgIGBjb250YWN0ICR7YmFja3VwS2V5UHJvdmlkZXJ9IGFuZCB0aGV5IHdpbGwgaGVscCB5b3UgcmVjb3ZlciB5b3VyIGZ1bmRzLmAsXG4gICAgICBkYXRhOiBKU09OLnN0cmluZ2lmeShrZXlTaGFyZXMpLFxuICAgIH07XG4gIH1cblxuICBjb25zdCBwdWIgPSBnZXRQdWJGcm9tS2V5KGJhY2t1cEtleWNoYWluKTtcbiAgYXNzZXJ0Lm9rKHB1Yik7XG5cbiAgaWYgKGJhY2t1cEtleVByb3ZpZGVyKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRpdGxlOiAnQjogQmFja3VwIEtleScsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgYFRoaXMgaXMgdGhlIHB1YmxpYyBrZXkgaGVsZCBhdCAke2JhY2t1cEtleVByb3ZpZGVyfSwgYW4gJHtjb2luLm5hbWV9IHJlY292ZXJ5IHNlcnZpY2UuIGAgK1xuICAgICAgICBgSWYgeW91IGxvc2VcXHJcXG55b3VyIGtleSwgJHtiYWNrdXBLZXlQcm92aWRlcn0gd2lsbCBiZSBhYmxlIHRvIHNpZ24gdHJhbnNhY3Rpb25zIHRvIHJlY292ZXIgZnVuZHMuYCxcbiAgICAgIGRhdGE6IHB1YixcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0aXRsZTogJ0I6IFByb3ZpZGVkIEJhY2t1cCBLZXknLFxuICAgIGRlc2NyaXB0aW9uOiAnVGhpcyBpcyB0aGUgcHVibGljIGtleSB5b3UgcHJvdmlkZWQgZm9yIHlvdXIgd2FsbGV0LicsXG4gICAgZGF0YTogcHViLFxuICAgIHB1YmxpY01hc3RlcktleTogYmFja3VwTWFzdGVyS2V5LFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZW5lcmF0ZUJpdEdvUXJEYXRhKGJpdGdvS2V5Y2hhaW46IEtleWNoYWluKTogUXJEYXRhRW50cnkge1xuICBjb25zdCBiaXRnb0RhdGEgPSBnZXRQdWJGcm9tS2V5KGJpdGdvS2V5Y2hhaW4pO1xuICBhc3NlcnQub2soYml0Z29EYXRhKTtcblxuICByZXR1cm4ge1xuICAgIHRpdGxlOiAnQzogQml0R28gUHVibGljIEtleScsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICAnVGhpcyBpcyB0aGUgcHVibGljIHBhcnQgb2YgdGhlIGtleSB0aGF0IEJpdEdvIHdpbGwgdXNlIHRvICcgKyAnY28tc2lnbiB0cmFuc2FjdGlvbnNcXHJcXG53aXRoIHlvdSBvbiB5b3VyIHdhbGxldC4nLFxuICAgIGRhdGE6IGJpdGdvRGF0YSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVVc2VyTWFzdGVyUHVibGljS2V5UVJEYXRhKHB1YmxpY0tleTogc3RyaW5nKTogTWFzdGVyUHVibGljS2V5UXJEYXRhRW50cnkge1xuICByZXR1cm4ge1xuICAgIHRpdGxlOiAnRTogTWFzdGVyIFVzZXIgUHVibGljIEtleScsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICAnVGhpcyBpcyB0aGUgcHVibGljIGtleSB1c2VkIHRvIGRlcml2ZSB0aGUgdXNlciBrZXkgZm9yIHRoZSB3YWxsZXQuIFRoaXMgaXMgbm90IHN0b3JlZCBieSBCaXRHbywgYW5kIG1heSBiZSByZXF1aXJlZCBmb3IgdXNlIGluIHJlY292ZXJ5IHNjZW5hcmlvcy4nLFxuICAgIGRhdGE6IHB1YmxpY0tleSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVCYWNrdXBNYXN0ZXJQdWJsaWNLZXlRUkRhdGEocHVibGljS2V5OiBzdHJpbmcpOiBNYXN0ZXJQdWJsaWNLZXlRckRhdGFFbnRyeSB7XG4gIHJldHVybiB7XG4gICAgdGl0bGU6ICdGOiBNYXN0ZXIgQmFja3VwIFB1YmxpYyBLZXknLFxuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgJ1RoaXMgaXMgdGhlIHB1YmxpYyBrZXkgdXNlZCB0byBkZXJpdmUgdGhlIGJhY2t1cCBrZXkgZm9yIHRoZSB3YWxsZXQuIFRoaXMgaXMgbm90IHN0b3JlZCBieSBCaXRHbywgYW5kIG1heSBiZSByZXF1aXJlZCBmb3IgdXNlIGluIHJlY292ZXJ5IHNjZW5hcmlvcy4nLFxuICAgIGRhdGE6IHB1YmxpY0tleSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlUXJEYXRhKHtcbiAgYmFja3VwS2V5Y2hhaW4sXG4gIGJhY2t1cEtleVByb3ZpZGVyLFxuICBiYWNrdXBNYXN0ZXJLZXksXG4gIGJpdGdvS2V5Y2hhaW4sXG4gIGNvaW4sXG4gIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsXG4gIHBhc3NwaHJhc2UsXG4gIHVzZXJLZXljaGFpbixcbiAgdXNlck1hc3RlcktleSxcbiAgdXNlck1hc3RlclB1YmxpY0tleSxcbiAgYmFja3VwTWFzdGVyUHVibGljS2V5LFxufTogR2VuZXJhdGVRckRhdGFQYXJhbXMpOiBRckRhdGEge1xuICBjb25zdCBxckRhdGE6IFFyRGF0YSA9IHtcbiAgICB1c2VyOiBnZW5lcmF0ZVVzZXJRckRhdGEodXNlcktleWNoYWluLCB1c2VyTWFzdGVyS2V5KSxcbiAgICB1c2VyTWFzdGVyUHVibGljS2V5OiB1c2VyTWFzdGVyUHVibGljS2V5ID8gZ2VuZXJhdGVVc2VyTWFzdGVyUHVibGljS2V5UVJEYXRhKHVzZXJNYXN0ZXJQdWJsaWNLZXkpIDogdW5kZWZpbmVkLFxuICAgIGJhY2t1cDogZ2VuZXJhdGVCYWNrdXBRckRhdGEoY29pbiwgYmFja3VwS2V5Y2hhaW4sIHtcbiAgICAgIGJhY2t1cEtleVByb3ZpZGVyLFxuICAgICAgYmFja3VwTWFzdGVyS2V5LFxuICAgIH0pLFxuICAgIGJhY2t1cE1hc3RlclB1YmxpY0tleTogYmFja3VwTWFzdGVyUHVibGljS2V5XG4gICAgICA/IGdlbmVyYXRlQmFja3VwTWFzdGVyUHVibGljS2V5UVJEYXRhKGJhY2t1cE1hc3RlclB1YmxpY0tleSlcbiAgICAgIDogdW5kZWZpbmVkLFxuICAgIGJpdGdvOiBnZW5lcmF0ZUJpdEdvUXJEYXRhKGJpdGdvS2V5Y2hhaW4pLFxuICB9O1xuXG4gIGlmIChwYXNzcGhyYXNlICYmIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUpIHtcbiAgICBjb25zdCBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZSA9IGVuY3J5cHQocGFzc2NvZGVFbmNyeXB0aW9uQ29kZSwgcGFzc3BocmFzZSk7XG5cbiAgICBxckRhdGEucGFzc2NvZGUgPSB7XG4gICAgICB0aXRsZTogJ0Q6IEVuY3J5cHRlZCB3YWxsZXQgUGFzc3dvcmQnLFxuICAgICAgZGVzY3JpcHRpb246ICdUaGlzIGlzIHRoZSB3YWxsZXQgcGFzc3dvcmQsIGVuY3J5cHRlZCBjbGllbnQtc2lkZSB3aXRoIGEga2V5IGhlbGQgYnkgQml0R28uJyxcbiAgICAgIGRhdGE6IGVuY3J5cHRlZFdhbGxldFBhc3Njb2RlLFxuICAgIH07XG4gIH1cblxuICByZXR1cm4gcXJEYXRhO1xufVxuIl19
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { GenerateKeycardParams } from './types';
|
|
2
2
|
export * from './drawKeycard';
|
|
3
3
|
export * from './faq';
|
|
4
4
|
export * from './generateQrData';
|
|
5
5
|
export * from './utils';
|
|
6
|
-
export
|
|
7
|
-
activationCode?: string;
|
|
8
|
-
keyCardImage?: HTMLImageElement;
|
|
9
|
-
walletLabel: string;
|
|
10
|
-
}
|
|
6
|
+
export * from './types';
|
|
11
7
|
export declare function generateKeycard(params: GenerateKeycardParams): Promise<void>;
|
|
12
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEhD,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AACtB,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AAExB,wBAAsB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAelF"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
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);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -10,20 +14,32 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
15
|
};
|
|
12
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.generateKeycard =
|
|
17
|
+
exports.generateKeycard = generateKeycard;
|
|
14
18
|
const generateQrData_1 = require("./generateQrData");
|
|
15
19
|
const faq_1 = require("./faq");
|
|
16
20
|
const drawKeycard_1 = require("./drawKeycard");
|
|
21
|
+
const generateParamsForKeyCreation_1 = require("./generateParamsForKeyCreation");
|
|
17
22
|
__exportStar(require("./drawKeycard"), exports);
|
|
18
23
|
__exportStar(require("./faq"), exports);
|
|
19
24
|
__exportStar(require("./generateQrData"), exports);
|
|
20
25
|
__exportStar(require("./utils"), exports);
|
|
26
|
+
__exportStar(require("./types"), exports);
|
|
21
27
|
async function generateKeycard(params) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
28
|
+
if ('coin' in params) {
|
|
29
|
+
const questions = (0, faq_1.generateFaq)(params.coin.fullName);
|
|
30
|
+
const qrData = (0, generateQrData_1.generateQrData)(params);
|
|
31
|
+
const keycard = await (0, drawKeycard_1.drawKeycard)({ ...params, questions, qrData });
|
|
32
|
+
const label = params.walletLabel || params.coin.fullName;
|
|
33
|
+
keycard.save(`BitGo Keycard for ${label}.pdf`);
|
|
34
|
+
}
|
|
35
|
+
else if ('curve' in params) {
|
|
36
|
+
const data = (0, generateParamsForKeyCreation_1.generateParamsForKeyCreation)(params);
|
|
37
|
+
const keycard = await (0, drawKeycard_1.drawKeycard)(data);
|
|
38
|
+
const label = params.walletLabel || params.curve;
|
|
39
|
+
keycard.save(`BitGo Keycard for ${label}.pdf`);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
throw new Error('Either curve or coin must be provided');
|
|
43
|
+
}
|
|
27
44
|
}
|
|
28
|
-
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBLHFEQUF3RTtBQUN4RSwrQkFBb0M7QUFDcEMsK0NBQTRDO0FBRTVDLGdEQUE4QjtBQUM5Qix3Q0FBc0I7QUFDdEIsbURBQWlDO0FBQ2pDLDBDQUF3QjtBQVFqQixLQUFLLFVBQVUsZUFBZSxDQUFDLE1BQTZCO0lBQ2pFLE1BQU0sU0FBUyxHQUFHLGlCQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNwRCxNQUFNLE1BQU0sR0FBRywrQkFBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLE1BQU0sT0FBTyxHQUFHLE1BQU0seUJBQVcsQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLHFDQUFxQztJQUNyQyxPQUFPLENBQUMsSUFBSSxDQUFDLHFCQUFxQixNQUFNLENBQUMsV0FBVyxNQUFNLENBQUMsQ0FBQztBQUM5RCxDQUFDO0FBTkQsMENBTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZW5lcmF0ZVFyRGF0YSwgR2VuZXJhdGVRckRhdGFQYXJhbXMgfSBmcm9tICcuL2dlbmVyYXRlUXJEYXRhJztcbmltcG9ydCB7IGdlbmVyYXRlRmFxIH0gZnJvbSAnLi9mYXEnO1xuaW1wb3J0IHsgZHJhd0tleWNhcmQgfSBmcm9tICcuL2RyYXdLZXljYXJkJztcblxuZXhwb3J0ICogZnJvbSAnLi9kcmF3S2V5Y2FyZCc7XG5leHBvcnQgKiBmcm9tICcuL2ZhcSc7XG5leHBvcnQgKiBmcm9tICcuL2dlbmVyYXRlUXJEYXRhJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdlbmVyYXRlS2V5Y2FyZFBhcmFtcyBleHRlbmRzIEdlbmVyYXRlUXJEYXRhUGFyYW1zIHtcbiAgYWN0aXZhdGlvbkNvZGU/OiBzdHJpbmc7XG4gIGtleUNhcmRJbWFnZT86IEhUTUxJbWFnZUVsZW1lbnQ7XG4gIHdhbGxldExhYmVsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZW5lcmF0ZUtleWNhcmQocGFyYW1zOiBHZW5lcmF0ZUtleWNhcmRQYXJhbXMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcXVlc3Rpb25zID0gZ2VuZXJhdGVGYXEocGFyYW1zLmNvaW4uZnVsbE5hbWUpO1xuICBjb25zdCBxckRhdGEgPSBnZW5lcmF0ZVFyRGF0YShwYXJhbXMpO1xuICBjb25zdCBrZXljYXJkID0gYXdhaXQgZHJhd0tleWNhcmQoeyAuLi5wYXJhbXMsIHF1ZXN0aW9ucywgcXJEYXRhIH0pO1xuICAvLyBTYXZlIHRoZSBQREYgb24gdGhlIHVzZXIncyBicm93c2VyXG4gIGtleWNhcmQuc2F2ZShgQml0R28gS2V5Y2FyZCBmb3IgJHtwYXJhbXMud2FsbGV0TGFiZWx9LnBkZmApO1xufVxuIl19
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQVlBLDBDQWVDO0FBM0JELHFEQUFrRDtBQUNsRCwrQkFBb0M7QUFDcEMsK0NBQTRDO0FBQzVDLGlGQUE4RTtBQUc5RSxnREFBOEI7QUFDOUIsd0NBQXNCO0FBQ3RCLG1EQUFpQztBQUNqQywwQ0FBd0I7QUFDeEIsMENBQXdCO0FBRWpCLEtBQUssVUFBVSxlQUFlLENBQUMsTUFBNkI7SUFDakUsSUFBSSxNQUFNLElBQUksTUFBTSxFQUFFLENBQUM7UUFDckIsTUFBTSxTQUFTLEdBQUcsSUFBQSxpQkFBVyxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEQsTUFBTSxNQUFNLEdBQUcsSUFBQSwrQkFBYyxFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBQSx5QkFBVyxFQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDcEUsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFdBQVcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN6RCxPQUFPLENBQUMsSUFBSSxDQUFDLHFCQUFxQixLQUFLLE1BQU0sQ0FBQyxDQUFDO0lBQ2pELENBQUM7U0FBTSxJQUFJLE9BQU8sSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUM3QixNQUFNLElBQUksR0FBRyxJQUFBLDJEQUE0QixFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBQSx5QkFBVyxFQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNqRCxPQUFPLENBQUMsSUFBSSxDQUFDLHFCQUFxQixLQUFLLE1BQU0sQ0FBQyxDQUFDO0lBQ2pELENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2VuZXJhdGVRckRhdGEgfSBmcm9tICcuL2dlbmVyYXRlUXJEYXRhJztcbmltcG9ydCB7IGdlbmVyYXRlRmFxIH0gZnJvbSAnLi9mYXEnO1xuaW1wb3J0IHsgZHJhd0tleWNhcmQgfSBmcm9tICcuL2RyYXdLZXljYXJkJztcbmltcG9ydCB7IGdlbmVyYXRlUGFyYW1zRm9yS2V5Q3JlYXRpb24gfSBmcm9tICcuL2dlbmVyYXRlUGFyYW1zRm9yS2V5Q3JlYXRpb24nO1xuaW1wb3J0IHsgR2VuZXJhdGVLZXljYXJkUGFyYW1zIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZHJhd0tleWNhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9mYXEnO1xuZXhwb3J0ICogZnJvbSAnLi9nZW5lcmF0ZVFyRGF0YSc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2VuZXJhdGVLZXljYXJkKHBhcmFtczogR2VuZXJhdGVLZXljYXJkUGFyYW1zKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmICgnY29pbicgaW4gcGFyYW1zKSB7XG4gICAgY29uc3QgcXVlc3Rpb25zID0gZ2VuZXJhdGVGYXEocGFyYW1zLmNvaW4uZnVsbE5hbWUpO1xuICAgIGNvbnN0IHFyRGF0YSA9IGdlbmVyYXRlUXJEYXRhKHBhcmFtcyk7XG4gICAgY29uc3Qga2V5Y2FyZCA9IGF3YWl0IGRyYXdLZXljYXJkKHsgLi4ucGFyYW1zLCBxdWVzdGlvbnMsIHFyRGF0YSB9KTtcbiAgICBjb25zdCBsYWJlbCA9IHBhcmFtcy53YWxsZXRMYWJlbCB8fCBwYXJhbXMuY29pbi5mdWxsTmFtZTtcbiAgICBrZXljYXJkLnNhdmUoYEJpdEdvIEtleWNhcmQgZm9yICR7bGFiZWx9LnBkZmApO1xuICB9IGVsc2UgaWYgKCdjdXJ2ZScgaW4gcGFyYW1zKSB7XG4gICAgY29uc3QgZGF0YSA9IGdlbmVyYXRlUGFyYW1zRm9yS2V5Q3JlYXRpb24ocGFyYW1zKTtcbiAgICBjb25zdCBrZXljYXJkID0gYXdhaXQgZHJhd0tleWNhcmQoZGF0YSk7XG4gICAgY29uc3QgbGFiZWwgPSBwYXJhbXMud2FsbGV0TGFiZWwgfHwgcGFyYW1zLmN1cnZlO1xuICAgIGtleWNhcmQuc2F2ZShgQml0R28gS2V5Y2FyZCBmb3IgJHtsYWJlbH0ucGRmYCk7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdFaXRoZXIgY3VydmUgb3IgY29pbiBtdXN0IGJlIHByb3ZpZGVkJyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Keychain } from '@bitgo-beta/sdk-core';
|
|
2
|
+
import { BaseCoin, KeyCurve } from '@bitgo-beta/statics';
|
|
3
|
+
export interface GenerateQrDataBaseParams {
|
|
4
|
+
activationCode?: string;
|
|
5
|
+
keyCardImage?: HTMLImageElement;
|
|
6
|
+
walletLabel: string;
|
|
7
|
+
}
|
|
8
|
+
export interface GenerateQrDataForKeychainParams {
|
|
9
|
+
bitgoKeychain: Keychain;
|
|
10
|
+
curve: KeyCurve;
|
|
11
|
+
}
|
|
12
|
+
export interface GenerateQrDataParams {
|
|
13
|
+
backupKeychain: Keychain;
|
|
14
|
+
backupKeyProvider?: string;
|
|
15
|
+
backupMasterKey?: string;
|
|
16
|
+
/**
|
|
17
|
+
* @description The key used to derive the backup key using {@link backupMasterKey} as the seed.
|
|
18
|
+
*/
|
|
19
|
+
backupMasterPublicKey?: string;
|
|
20
|
+
bitgoKeychain: Keychain;
|
|
21
|
+
coin: Readonly<BaseCoin>;
|
|
22
|
+
passcodeEncryptionCode?: string;
|
|
23
|
+
passphrase?: string;
|
|
24
|
+
userKeychain: Keychain;
|
|
25
|
+
userMasterKey?: string;
|
|
26
|
+
/**
|
|
27
|
+
* @description The key used to derive the user key using {@link userMasterKey} as the seed.
|
|
28
|
+
*/
|
|
29
|
+
userMasterPublicKey?: string;
|
|
30
|
+
}
|
|
31
|
+
export type GenerateKeycardParams = GenerateQrDataBaseParams & (GenerateQrDataForKeychainParams | GenerateQrDataParams);
|
|
32
|
+
export interface IDrawKeyCard {
|
|
33
|
+
activationCode?: string;
|
|
34
|
+
keyCardImage?: HTMLImageElement;
|
|
35
|
+
qrData: QrData;
|
|
36
|
+
questions: FAQ[];
|
|
37
|
+
walletLabel?: string;
|
|
38
|
+
curve?: KeyCurve;
|
|
39
|
+
}
|
|
40
|
+
export interface FAQ {
|
|
41
|
+
question: string;
|
|
42
|
+
answer: string[];
|
|
43
|
+
}
|
|
44
|
+
export interface QrDataEntry {
|
|
45
|
+
data: string;
|
|
46
|
+
description: string;
|
|
47
|
+
title: string;
|
|
48
|
+
publicMasterKey?: string;
|
|
49
|
+
}
|
|
50
|
+
export type MasterPublicKeyQrDataEntry = Omit<QrDataEntry, 'publicMasterKey'>;
|
|
51
|
+
export interface QrData {
|
|
52
|
+
backup?: QrDataEntry;
|
|
53
|
+
backupMasterPublicKey?: MasterPublicKeyQrDataEntry;
|
|
54
|
+
bitgo?: QrDataEntry;
|
|
55
|
+
passcode?: QrDataEntry;
|
|
56
|
+
curve?: KeyCurve;
|
|
57
|
+
user: QrDataEntry;
|
|
58
|
+
userMasterPublicKey?: MasterPublicKeyQrDataEntry;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,WAAW,wBAAwB;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,+BAA+B;IAE9C,aAAa,EAAE,QAAQ,CAAC;IAExB,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IAEnC,cAAc,EAAE,QAAQ,CAAC;IAEzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,aAAa,EAAE,QAAQ,CAAC;IAExB,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAIzB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAIhC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,YAAY,EAAE,QAAQ,CAAC;IAEvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,MAAM,qBAAqB,GAAG,wBAAwB,GAAG,CAAC,+BAA+B,GAAG,oBAAoB,CAAC,CAAC;AAExH,MAAM,WAAW,YAAY;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB;AAED,MAAM,WAAW,GAAG;IAClB,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;AAE9E,MAAM,WAAW,MAAM;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,qBAAqB,CAAC,EAAE,0BAA0B,CAAC;IACnD,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,IAAI,EAAE,WAAW,CAAC;IAClB,mBAAmB,CAAC,EAAE,0BAA0B,CAAC;CAClD"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleWNoYWluIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4sIEtleUN1cnZlIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VuZXJhdGVRckRhdGFCYXNlUGFyYW1zIHtcbiAgYWN0aXZhdGlvbkNvZGU/OiBzdHJpbmc7XG4gIGtleUNhcmRJbWFnZT86IEhUTUxJbWFnZUVsZW1lbnQ7XG4gIHdhbGxldExhYmVsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VuZXJhdGVRckRhdGFGb3JLZXljaGFpblBhcmFtcyB7XG4gIC8vIFRoZSBCaXRHbyBrZXljaGFpbiBhcyBpdCBpcyByZXR1cm5lZCBmcm9tIHRoZSBCaXRHbyBBUEkgdXBvbiBjcmVhdGlvblxuICBiaXRnb0tleWNoYWluOiBLZXljaGFpbjtcbiAgLy8gVGhlIGN1cnZlIHVzZWQgZm9yIHRoZSBrZXlcbiAgY3VydmU6IEtleUN1cnZlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdlbmVyYXRlUXJEYXRhUGFyYW1zIHtcbiAgLy8gVGhlIGJhY2t1cCBrZXljaGFpbiBhcyBpdCBpcyByZXR1cm5lZCBmcm9tIHRoZSBCaXRHbyBBUEkgdXBvbiBjcmVhdGlvblxuICBiYWNrdXBLZXljaGFpbjogS2V5Y2hhaW47XG4gIC8vIFRoZSBuYW1lIG9mIHRoZSAzcmQgcGFydHkgcHJvdmlkZXIgb2YgdGhlIGJhY2t1cCBrZXkgaWYgbmVpdGhlciB0aGUgdXNlciBub3IgQml0R28gc3RvcmVzIGl0XG4gIGJhY2t1cEtleVByb3ZpZGVyPzogc3RyaW5nO1xuICAvLyBUaGUga2V5IGlkIG9mIHRoZSBiYWNrdXAga2V5LCBvbmx5IHVzZWQgZm9yIGNvbGQga2V5c1xuICBiYWNrdXBNYXN0ZXJLZXk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIGtleSB1c2VkIHRvIGRlcml2ZSB0aGUgYmFja3VwIGtleSB1c2luZyB7QGxpbmsgYmFja3VwTWFzdGVyS2V5fSBhcyB0aGUgc2VlZC5cbiAgICovXG4gIGJhY2t1cE1hc3RlclB1YmxpY0tleT86IHN0cmluZztcbiAgLy8gVGhlIEJpdEdvIGtleWNoYWluIGFzIGl0IGlzIHJldHVybmVkIGZyb20gdGhlIEJpdEdvIEFQSSB1cG9uIGNyZWF0aW9uXG4gIGJpdGdvS2V5Y2hhaW46IEtleWNoYWluO1xuICAvLyBUaGUgY29pbiBvZiB0aGUgd2FsbGV0IHRoYXQgd2FzLyBpcyBhYm91dCB0byBiZSBjcmVhdGVkXG4gIGNvaW46IFJlYWRvbmx5PEJhc2VDb2luPjtcbiAgLy8gQSBjb2RlIHRoYXQgY2FuIGJlIHVzZWQgdG8gZW5jcnlwdCB0aGUgd2FsbGV0IHBhc3N3b3JkIHRvLlxuICAvLyBJZiBib3RoIHRoZSBwYXNzcGhyYXNlIGFuZCBwYXNzY29kZUVuY3J5cHRpb25Db2RlIGFyZSBwYXNzZWQsIHRoZW4gdGhpcyBjb2RlIGVuY3J5cHRzIHRoZSBwYXNzcGhyYXNlIHdpdGggdGhlXG4gIC8vIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUgYW5kIHB1dHMgdGhlIHJlc3VsdCBpbnRvIEJveCBELiBBbGxvd3MgcmVjb3ZlcmllcyBvZiB0aGUgd2FsbGV0IHBhc3N3b3JkLlxuICBwYXNzY29kZUVuY3J5cHRpb25Db2RlPzogc3RyaW5nO1xuICAvLyBUaGUgd2FsbGV0IHBhc3N3b3JkXG4gIC8vIElmIGJvdGggdGhlIHBhc3NwaHJhc2UgYW5kIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUgYXJlIHBhc3NlZCwgdGhlbiB0aGlzIGNvZGUgZW5jcnlwdHMgdGhlIHBhc3NwaHJhc2Ugd2l0aCB0aGVcbiAgLy8gcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSBhbmQgcHV0cyB0aGUgcmVzdWx0IGludG8gQm94IEQuIEFsbG93cyByZWNvdmVyaWVzIG9mIHRoZSB3YWxsZXQgcGFzc3dvcmQuXG4gIHBhc3NwaHJhc2U/OiBzdHJpbmc7XG4gIC8vIFRoZSB1c2VyIGtleWNoYWluIGFzIGl0IGlzIHJldHVybmVkIGZyb20gdGhlIEJpdEdvIEFQSSB1cG9uIGNyZWF0aW9uXG4gIHVzZXJLZXljaGFpbjogS2V5Y2hhaW47XG4gIC8vIFRoZSBrZXkgaWQgb2YgdGhlIHVzZXIga2V5LCBvbmx5IHVzZWQgZm9yIGNvbGQga2V5c1xuICB1c2VyTWFzdGVyS2V5Pzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFRoZSBrZXkgdXNlZCB0byBkZXJpdmUgdGhlIHVzZXIga2V5IHVzaW5nIHtAbGluayB1c2VyTWFzdGVyS2V5fSBhcyB0aGUgc2VlZC5cbiAgICovXG4gIHVzZXJNYXN0ZXJQdWJsaWNLZXk/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIEdlbmVyYXRlS2V5Y2FyZFBhcmFtcyA9IEdlbmVyYXRlUXJEYXRhQmFzZVBhcmFtcyAmIChHZW5lcmF0ZVFyRGF0YUZvcktleWNoYWluUGFyYW1zIHwgR2VuZXJhdGVRckRhdGFQYXJhbXMpO1xuXG5leHBvcnQgaW50ZXJmYWNlIElEcmF3S2V5Q2FyZCB7XG4gIGFjdGl2YXRpb25Db2RlPzogc3RyaW5nO1xuICBrZXlDYXJkSW1hZ2U/OiBIVE1MSW1hZ2VFbGVtZW50O1xuICBxckRhdGE6IFFyRGF0YTtcbiAgcXVlc3Rpb25zOiBGQVFbXTtcbiAgd2FsbGV0TGFiZWw/OiBzdHJpbmc7XG4gIGN1cnZlPzogS2V5Q3VydmU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRkFRIHtcbiAgcXVlc3Rpb246IHN0cmluZztcbiAgLy8gdGhlIGFuc3dlciB0byB0aGUgcXVlc3Rpb24sIGFscmVhZHkgc3BsaXQgaW50byBpbmRpdmlkdWFsIGxpbmVzIG9mIHRleHRcbiAgYW5zd2VyOiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRckRhdGFFbnRyeSB7XG4gIGRhdGE6IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgcHVibGljTWFzdGVyS2V5Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBNYXN0ZXJQdWJsaWNLZXlRckRhdGFFbnRyeSA9IE9taXQ8UXJEYXRhRW50cnksICdwdWJsaWNNYXN0ZXJLZXknPjtcblxuZXhwb3J0IGludGVyZmFjZSBRckRhdGEge1xuICBiYWNrdXA/OiBRckRhdGFFbnRyeTtcbiAgYmFja3VwTWFzdGVyUHVibGljS2V5PzogTWFzdGVyUHVibGljS2V5UXJEYXRhRW50cnk7XG4gIGJpdGdvPzogUXJEYXRhRW50cnk7XG4gIHBhc3Njb2RlPzogUXJEYXRhRW50cnk7XG4gIGN1cnZlPzogS2V5Q3VydmU7XG4gIHVzZXI6IFFyRGF0YUVudHJ5O1xuICB1c2VyTWFzdGVyUHVibGljS2V5PzogTWFzdGVyUHVibGljS2V5UXJEYXRhRW50cnk7XG59XG4iXX0=
|
package/dist/src/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.splitKeys =
|
|
3
|
+
exports.splitKeys = splitKeys;
|
|
4
4
|
function splitKeys(key, limit) {
|
|
5
5
|
if (key.length <= limit) {
|
|
6
6
|
return [key];
|
|
@@ -13,5 +13,4 @@ function splitKeys(key, limit) {
|
|
|
13
13
|
}
|
|
14
14
|
return keys;
|
|
15
15
|
}
|
|
16
|
-
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsU0FBZ0IsU0FBUyxDQUFDLEdBQVcsRUFBRSxLQUFhO0lBQ2xELElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxLQUFLLEVBQUU7UUFDdkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ2Q7SUFFRCxNQUFNLElBQUksR0FBYSxFQUFFLENBQUM7SUFFMUIsSUFBSSxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxLQUFLLEVBQUU7UUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLFVBQVUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsR0FBRyxLQUFLLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQ3ZEO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBZEQsOEJBY0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gc3BsaXRLZXlzKGtleTogc3RyaW5nLCBsaW1pdDogbnVtYmVyKTogc3RyaW5nW10ge1xuICBpZiAoa2V5Lmxlbmd0aCA8PSBsaW1pdCkge1xuICAgIHJldHVybiBba2V5XTtcbiAgfVxuXG4gIGNvbnN0IGtleXM6IHN0cmluZ1tdID0gW107XG5cbiAgbGV0IHJpZ2h0SW5kZXggPSBsaW1pdDtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXkubGVuZ3RoOyBpICs9IGxpbWl0KSB7XG4gICAga2V5cy5wdXNoKGtleS5zdWJzdHJpbmcoaSwgcmlnaHRJbmRleCkpO1xuICAgIHJpZ2h0SW5kZXggPSBNYXRoLm1pbihyaWdodEluZGV4ICsgbGltaXQsIGtleS5sZW5ndGgpO1xuICB9XG5cbiAgcmV0dXJuIGtleXM7XG59XG4iXX0=
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw4QkFjQztBQWRELFNBQWdCLFNBQVMsQ0FBQyxHQUFXLEVBQUUsS0FBYTtJQUNsRCxJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7UUFDeEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2YsQ0FBQztJQUVELE1BQU0sSUFBSSxHQUFhLEVBQUUsQ0FBQztJQUUxQixJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDdkIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUN4QyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEdBQUcsS0FBSyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHNwbGl0S2V5cyhrZXk6IHN0cmluZywgbGltaXQ6IG51bWJlcik6IHN0cmluZ1tdIHtcbiAgaWYgKGtleS5sZW5ndGggPD0gbGltaXQpIHtcbiAgICByZXR1cm4gW2tleV07XG4gIH1cblxuICBjb25zdCBrZXlzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIGxldCByaWdodEluZGV4ID0gbGltaXQ7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwga2V5Lmxlbmd0aDsgaSArPSBsaW1pdCkge1xuICAgIGtleXMucHVzaChrZXkuc3Vic3RyaW5nKGksIHJpZ2h0SW5kZXgpKTtcbiAgICByaWdodEluZGV4ID0gTWF0aC5taW4ocmlnaHRJbmRleCArIGxpbWl0LCBrZXkubGVuZ3RoKTtcbiAgfVxuXG4gIHJldHVybiBrZXlzO1xufVxuIl19
|