@shapeshiftoss/hdwallet-trezor-connect 1.55.4-alpha.1 → 1.55.5
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/adapter.js +163 -118
- package/dist/adapter.js.map +1 -1
- package/dist/index.js +18 -2
- package/dist/index.js.map +1 -1
- package/dist/transport.js +161 -114
- package/dist/transport.js.map +1 -1
- package/package.json +4 -4
package/dist/adapter.js
CHANGED
|
@@ -1,67 +1,101 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
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
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.TrezorAdapter = void 0;
|
|
36
|
+
const core = __importStar(require("@shapeshiftoss/hdwallet-core"));
|
|
37
|
+
const trezor = __importStar(require("@shapeshiftoss/hdwallet-trezor"));
|
|
38
|
+
const trezor_connect_1 = __importStar(require("trezor-connect"));
|
|
39
|
+
const transport_1 = require("./transport");
|
|
5
40
|
let _initialization = undefined;
|
|
6
|
-
|
|
7
|
-
keyring;
|
|
8
|
-
_deviceIDToPath = new Map();
|
|
41
|
+
class TrezorAdapter {
|
|
9
42
|
constructor(keyring, args) {
|
|
43
|
+
this._deviceIDToPath = new Map();
|
|
10
44
|
this.keyring = keyring;
|
|
11
45
|
if (!_initialization)
|
|
12
46
|
_initialization = this.connectInit(args);
|
|
13
47
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
console.info("Confirm on Trezor", event);
|
|
48
|
+
connectInit(args) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
// Collect connect events that happen during init, but don't handle them
|
|
51
|
+
// until after init has resolved. This awkward sequence is needed because we
|
|
52
|
+
// need TrezorConnect to be fully operational before we're able to process
|
|
53
|
+
// the events.
|
|
54
|
+
const connectEvents = [];
|
|
55
|
+
const connectHandler = (event) => {
|
|
56
|
+
if (event.type === trezor_connect_1.DEVICE.CONNECT) {
|
|
57
|
+
connectEvents.push(event);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
trezor_connect_1.default.on(trezor_connect_1.DEVICE_EVENT, connectHandler);
|
|
61
|
+
// TODO: using this in electron will needs some more scaffolding:
|
|
62
|
+
// https://github.com/szymonlesisz/trezor-connect-electron-boilerplate/blob/master/src/electron.js
|
|
63
|
+
yield trezor_connect_1.default.init(Object.assign(Object.assign({}, args), { popup: transport_1.POPUP, lazyLoad: false }));
|
|
64
|
+
trezor_connect_1.default.off(trezor_connect_1.DEVICE_EVENT, connectHandler);
|
|
65
|
+
for (const connectEvent of connectEvents)
|
|
66
|
+
this.handleConnectTrezor(connectEvent);
|
|
67
|
+
trezor_connect_1.default.on(trezor_connect_1.DEVICE_EVENT, (event) => {
|
|
68
|
+
if (event.type === trezor_connect_1.DEVICE.CONNECT) {
|
|
69
|
+
this.handleConnectTrezor(event);
|
|
70
|
+
}
|
|
71
|
+
else if (event.type === trezor_connect_1.DEVICE.CHANGED) {
|
|
72
|
+
this.handleChangeTrezor(event);
|
|
73
|
+
}
|
|
74
|
+
else if (event.type === trezor_connect_1.DEVICE.DISCONNECT) {
|
|
75
|
+
this.handleDisconnectTrezor(event);
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
trezor_connect_1.default.on(trezor_connect_1.TRANSPORT_EVENT, (event) => {
|
|
79
|
+
// Log TrezorConnect's event raw:
|
|
80
|
+
try {
|
|
81
|
+
const device_id = event.payload && event.payload.features ? event.payload.features.device_id : "";
|
|
82
|
+
this.keyring.emit(["Trezor", device_id, event.type], event);
|
|
83
|
+
}
|
|
84
|
+
catch (e) {
|
|
85
|
+
console.error("Could not emit Trezor transport event", event, e);
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
trezor_connect_1.default.on(trezor_connect_1.UI.ADDRESS_VALIDATION, (event) => {
|
|
89
|
+
console.info("Confirm on Trezor", event);
|
|
90
|
+
});
|
|
91
|
+
return true;
|
|
59
92
|
});
|
|
60
|
-
return true;
|
|
61
93
|
}
|
|
62
|
-
|
|
63
|
-
this
|
|
64
|
-
|
|
94
|
+
addDevice(deviceID, path) {
|
|
95
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
96
|
+
this._deviceIDToPath.set(deviceID, path);
|
|
97
|
+
yield this.initialize([{ path: path, deviceID: deviceID }]);
|
|
98
|
+
});
|
|
65
99
|
}
|
|
66
100
|
static useKeyring(keyring, args) {
|
|
67
101
|
return new TrezorAdapter(keyring, args);
|
|
@@ -69,28 +103,32 @@ export class TrezorAdapter {
|
|
|
69
103
|
get(device) {
|
|
70
104
|
return this.keyring.get(device.deviceID);
|
|
71
105
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
106
|
+
handleConnectTrezor(event) {
|
|
107
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
108
|
+
const { payload: { path, features: { device_id }, }, } = event;
|
|
109
|
+
try {
|
|
110
|
+
yield this.addDevice(device_id, path);
|
|
111
|
+
this.connectCacheFeatures(event);
|
|
112
|
+
this.keyring.emit(["Trezor", device_id, core.Events.CONNECT], device_id);
|
|
113
|
+
}
|
|
114
|
+
catch (e) {
|
|
115
|
+
console.error(e);
|
|
116
|
+
}
|
|
117
|
+
});
|
|
82
118
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
119
|
+
handleDisconnectTrezor(event) {
|
|
120
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
121
|
+
const { payload: { features: { device_id }, }, } = event;
|
|
122
|
+
try {
|
|
123
|
+
yield this.keyring.remove(device_id);
|
|
124
|
+
}
|
|
125
|
+
catch (e) {
|
|
126
|
+
console.error(e);
|
|
127
|
+
}
|
|
128
|
+
finally {
|
|
129
|
+
this.keyring.emit(["Trezor", device_id, core.Events.DISCONNECT], device_id);
|
|
130
|
+
}
|
|
131
|
+
});
|
|
94
132
|
}
|
|
95
133
|
/**
|
|
96
134
|
* Help the wallet by cacheing the Features object whenever TrezorConnect
|
|
@@ -106,50 +144,57 @@ export class TrezorAdapter {
|
|
|
106
144
|
return;
|
|
107
145
|
wallet.cacheFeatures(features);
|
|
108
146
|
}
|
|
109
|
-
|
|
110
|
-
this
|
|
147
|
+
handleChangeTrezor(event) {
|
|
148
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
149
|
+
this.connectCacheFeatures(event);
|
|
150
|
+
});
|
|
111
151
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
if (
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
152
|
+
initialize(devices) {
|
|
153
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
154
|
+
const init = yield _initialization;
|
|
155
|
+
if (!init)
|
|
156
|
+
throw new Error("Could not initialize TrezorAdapter: TrezorConnect not initialized");
|
|
157
|
+
const devicesToInitialize = devices || [];
|
|
158
|
+
for (let i = 0; i < devicesToInitialize.length; i++) {
|
|
159
|
+
const device = devicesToInitialize[i];
|
|
160
|
+
let wallet = this.keyring.get(device.deviceID);
|
|
161
|
+
if (wallet) {
|
|
162
|
+
if (device.path && !wallet.transport.device.path)
|
|
163
|
+
wallet.transport.device.path = device.path;
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
wallet = trezor.create(new transport_1.TrezorConnectTransport(device, this.keyring));
|
|
167
|
+
}
|
|
168
|
+
yield wallet.initialize();
|
|
169
|
+
this.keyring.add(wallet, device.deviceID);
|
|
126
170
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
}
|
|
130
|
-
return Object.keys(this.keyring.wallets).length;
|
|
171
|
+
return Object.keys(this.keyring.wallets).length;
|
|
172
|
+
});
|
|
131
173
|
}
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
if (
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
wallet
|
|
152
|
-
|
|
174
|
+
pairDevice() {
|
|
175
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
176
|
+
const init = yield _initialization;
|
|
177
|
+
if (!init)
|
|
178
|
+
throw new Error("Could not pair Trezor: TrezorConnect not initialized");
|
|
179
|
+
const { success, payload } = yield transport_1.TrezorConnectTransport.callQuiet(undefined, "getFeatures", {});
|
|
180
|
+
if (!success) {
|
|
181
|
+
if (payload.error === "Popup closed")
|
|
182
|
+
throw new core.PopupClosedError();
|
|
183
|
+
throw new Error(`Could not pair Trezor: '${payload.error}'`);
|
|
184
|
+
}
|
|
185
|
+
const deviceID = payload.device_id;
|
|
186
|
+
yield this.initialize([
|
|
187
|
+
{
|
|
188
|
+
path: this._deviceIDToPath.get(deviceID),
|
|
189
|
+
deviceID: deviceID,
|
|
190
|
+
},
|
|
191
|
+
]);
|
|
192
|
+
const wallet = this.keyring.get(deviceID);
|
|
193
|
+
if (wallet)
|
|
194
|
+
wallet.cacheFeatures(payload);
|
|
195
|
+
return wallet;
|
|
196
|
+
});
|
|
153
197
|
}
|
|
154
198
|
}
|
|
199
|
+
exports.TrezorAdapter = TrezorAdapter;
|
|
155
200
|
//# sourceMappingURL=adapter.js.map
|
package/dist/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./adapter"), exports);
|
|
18
|
+
__exportStar(require("./transport"), exports);
|
|
3
19
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,8CAA4B"}
|
package/dist/transport.js
CHANGED
|
@@ -1,132 +1,175 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.TrezorConnectTransport = exports.POPUP = void 0;
|
|
36
|
+
const core = __importStar(require("@shapeshiftoss/hdwallet-core"));
|
|
37
|
+
const trezor = __importStar(require("@shapeshiftoss/hdwallet-trezor"));
|
|
38
|
+
const trezor_connect_1 = __importStar(require("trezor-connect"));
|
|
39
|
+
exports.POPUP = true;
|
|
40
|
+
class TrezorConnectTransport extends trezor.TrezorTransport {
|
|
41
|
+
static cancellable(inProgress) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
try {
|
|
44
|
+
// We throw away the result, since it's either undefined, or meant for the
|
|
45
|
+
// other concurrent thread, possibly involving a different TrezorConnectTransport.
|
|
46
|
+
yield inProgress;
|
|
22
47
|
}
|
|
23
|
-
|
|
48
|
+
catch (e) {
|
|
49
|
+
// Unless it's a cancel, throw away the error, as the other context will handle it.
|
|
50
|
+
if (core.isIndexable(e) && e.type === core.HDWalletErrorType.ActionCancelled) {
|
|
51
|
+
TrezorConnectTransport.callInProgress = Promise.resolve();
|
|
52
|
+
throw e;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
});
|
|
24
56
|
}
|
|
25
57
|
constructor(device, keyring) {
|
|
26
58
|
super(keyring);
|
|
59
|
+
this.hasPopup = exports.POPUP;
|
|
27
60
|
this.device = device;
|
|
28
61
|
}
|
|
29
|
-
|
|
30
|
-
return this
|
|
31
|
-
|
|
32
|
-
async connect() {
|
|
33
|
-
TrezorConnect.on(DEVICE_EVENT, (event) => {
|
|
34
|
-
if (!this.device.path && event.features && event.path && event.features.device_id === this.device.deviceID) {
|
|
35
|
-
this.device.path = event.path;
|
|
36
|
-
}
|
|
62
|
+
getDeviceID() {
|
|
63
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
return this.device.deviceID;
|
|
37
65
|
});
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
return;
|
|
45
|
-
if (this.device.deviceID !== event.payload.device.features.device_id)
|
|
46
|
-
return;
|
|
47
|
-
// Log TrezorConnect's event raw:
|
|
48
|
-
this.emit(event.type, core.makeEvent({
|
|
49
|
-
message_type: event.type,
|
|
50
|
-
message: event,
|
|
51
|
-
from_wallet: true,
|
|
52
|
-
}));
|
|
53
|
-
// Then log it the 'unified' way:
|
|
54
|
-
if (event.type === DEVICE.PIN) {
|
|
55
|
-
this.emit(core.Events.PIN_REQUEST, core.makeEvent({
|
|
56
|
-
message_type: core.Events.PIN_REQUEST,
|
|
57
|
-
from_wallet: true,
|
|
58
|
-
}));
|
|
59
|
-
}
|
|
60
|
-
else if (event.type === "ui-request_passphrase") {
|
|
61
|
-
this.emit(core.Events.PASSPHRASE_REQUEST, core.makeEvent({
|
|
62
|
-
message_type: core.Events.PASSPHRASE_REQUEST,
|
|
63
|
-
from_wallet: true,
|
|
64
|
-
}));
|
|
65
|
-
}
|
|
66
|
-
else if (event.type === "ui-request_confirmation") {
|
|
67
|
-
if (event.payload.view == "no-backup") {
|
|
68
|
-
this.emit("NEEDS_BACKUP");
|
|
66
|
+
}
|
|
67
|
+
connect() {
|
|
68
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
69
|
+
trezor_connect_1.default.on(trezor_connect_1.DEVICE_EVENT, (event) => {
|
|
70
|
+
if (!this.device.path && event.features && event.path && event.features.device_id === this.device.deviceID) {
|
|
71
|
+
this.device.path = event.path;
|
|
69
72
|
}
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
});
|
|
74
|
+
trezor_connect_1.default.on(trezor_connect_1.UI_EVENT, (event) => {
|
|
75
|
+
if (!event.payload)
|
|
76
|
+
return;
|
|
77
|
+
if (!event.payload.device)
|
|
78
|
+
return;
|
|
79
|
+
if (!event.payload.device.features)
|
|
80
|
+
return;
|
|
81
|
+
if (this.device.deviceID !== event.payload.device.features.device_id)
|
|
82
|
+
return;
|
|
83
|
+
// Log TrezorConnect's event raw:
|
|
84
|
+
this.emit(event.type, core.makeEvent({
|
|
85
|
+
message_type: event.type,
|
|
86
|
+
message: event,
|
|
75
87
|
from_wallet: true,
|
|
76
|
-
message: kind,
|
|
77
88
|
}));
|
|
78
|
-
|
|
89
|
+
// Then log it the 'unified' way:
|
|
90
|
+
if (event.type === trezor_connect_1.DEVICE.PIN) {
|
|
91
|
+
this.emit(core.Events.PIN_REQUEST, core.makeEvent({
|
|
92
|
+
message_type: core.Events.PIN_REQUEST,
|
|
93
|
+
from_wallet: true,
|
|
94
|
+
}));
|
|
95
|
+
}
|
|
96
|
+
else if (event.type === "ui-request_passphrase") {
|
|
97
|
+
this.emit(core.Events.PASSPHRASE_REQUEST, core.makeEvent({
|
|
98
|
+
message_type: core.Events.PASSPHRASE_REQUEST,
|
|
99
|
+
from_wallet: true,
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
102
|
+
else if (event.type === "ui-request_confirmation") {
|
|
103
|
+
if (event.payload.view == "no-backup") {
|
|
104
|
+
this.emit("NEEDS_BACKUP");
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
else if (event.type === "ui-button") {
|
|
108
|
+
const kind = event.payload.code;
|
|
109
|
+
this.emit(core.Events.BUTTON_REQUEST, core.makeEvent({
|
|
110
|
+
message_type: core.Events.BUTTON_REQUEST,
|
|
111
|
+
from_wallet: true,
|
|
112
|
+
message: kind,
|
|
113
|
+
}));
|
|
114
|
+
}
|
|
115
|
+
});
|
|
79
116
|
});
|
|
80
117
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
118
|
+
cancel() {
|
|
119
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
120
|
+
TrezorConnectTransport.callInProgress = Promise.resolve();
|
|
121
|
+
yield trezor_connect_1.default.cancel();
|
|
122
|
+
});
|
|
84
123
|
}
|
|
85
|
-
static
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
result.payload.error === "
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
catch (error) {
|
|
104
|
-
if (core.isIndexable(error) && error.type === core.HDWalletErrorType.ActionCancelled) {
|
|
105
|
-
throw error;
|
|
124
|
+
static callQuiet(device, method, msg) {
|
|
125
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
126
|
+
// TrezorConnect only lets us make one call at a time. If this library is
|
|
127
|
+
// used in a concurrent environment like say, React, then we need to guard
|
|
128
|
+
// against promises resolving in strange orders. To force an ordering here,
|
|
129
|
+
// and keep wires from getting crossed, we wait for the other call to finish
|
|
130
|
+
// first, if there is one.
|
|
131
|
+
// Notify any other concurrent threads that they need to wait, making sure
|
|
132
|
+
// to clean up after we're done talking to TrezorConnect.
|
|
133
|
+
TrezorConnectTransport.callInProgress = (() => __awaiter(this, void 0, void 0, function* () {
|
|
134
|
+
yield TrezorConnectTransport.cancellable(TrezorConnectTransport.callInProgress);
|
|
135
|
+
try {
|
|
136
|
+
const result = yield trezor_connect_1.default[method](Object.assign({ device }, msg));
|
|
137
|
+
if (result.payload.error === "Popup closed" ||
|
|
138
|
+
result.payload.error === "Cancelled" ||
|
|
139
|
+
result.payload.code === "Failure_ActionCancelled")
|
|
140
|
+
throw new core.ActionCancelled();
|
|
141
|
+
return result;
|
|
106
142
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
143
|
+
catch (error) {
|
|
144
|
+
if (core.isIndexable(error) && error.type === core.HDWalletErrorType.ActionCancelled) {
|
|
145
|
+
throw error;
|
|
146
|
+
}
|
|
147
|
+
console.error("TrezorConnect isn't supposed to throw?", error);
|
|
148
|
+
}
|
|
149
|
+
finally {
|
|
150
|
+
// Avoid a TrezorConnect bug: https://github.com/trezor/connect/issues/403
|
|
151
|
+
yield new Promise((resolve) => setTimeout(resolve, 1000));
|
|
152
|
+
}
|
|
153
|
+
}))();
|
|
154
|
+
// And now we wait on our own results:
|
|
155
|
+
return TrezorConnectTransport.callInProgress;
|
|
156
|
+
});
|
|
116
157
|
}
|
|
117
|
-
|
|
118
|
-
this
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
158
|
+
call(method, msg) {
|
|
159
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
160
|
+
this.emit(method, core.makeEvent({
|
|
161
|
+
message_type: method,
|
|
162
|
+
message: this.censor(method, msg),
|
|
163
|
+
from_wallet: false,
|
|
164
|
+
}));
|
|
165
|
+
const response = yield TrezorConnectTransport.callQuiet(this.device, method, msg);
|
|
166
|
+
this.emit(method, core.makeEvent({
|
|
167
|
+
message_type: method,
|
|
168
|
+
message: response,
|
|
169
|
+
from_wallet: true,
|
|
170
|
+
}));
|
|
171
|
+
return response;
|
|
172
|
+
});
|
|
130
173
|
}
|
|
131
174
|
/**
|
|
132
175
|
* Keep sensitive data out of logs.
|
|
@@ -155,4 +198,8 @@ export class TrezorConnectTransport extends trezor.TrezorTransport {
|
|
|
155
198
|
return msg;
|
|
156
199
|
}
|
|
157
200
|
}
|
|
201
|
+
exports.TrezorConnectTransport = TrezorConnectTransport;
|
|
202
|
+
/// Gobal, shared between all instances of this class, since TrezorConnect only
|
|
203
|
+
/// allows us to make one device call at a time.
|
|
204
|
+
TrezorConnectTransport.callInProgress = Promise.resolve();
|
|
158
205
|
//# sourceMappingURL=transport.js.map
|
package/dist/transport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shapeshiftoss/hdwallet-trezor-connect",
|
|
3
|
-
"version": "1.55.
|
|
3
|
+
"version": "1.55.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -14,10 +14,10 @@
|
|
|
14
14
|
"prepublishOnly": "yarn clean && yarn build"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@shapeshiftoss/hdwallet-core": "
|
|
18
|
-
"@shapeshiftoss/hdwallet-trezor": "
|
|
17
|
+
"@shapeshiftoss/hdwallet-core": "1.55.5",
|
|
18
|
+
"@shapeshiftoss/hdwallet-trezor": "1.55.5",
|
|
19
19
|
"@trezor/rollout": "^1.2.0",
|
|
20
20
|
"trezor-connect": "^8.2.1"
|
|
21
21
|
},
|
|
22
|
-
"gitHead": "
|
|
22
|
+
"gitHead": "451552ac2086a22aabeee80f844fbafafab69576"
|
|
23
23
|
}
|