@taquito/beacon-wallet 24.2.0 → 24.3.0-beta.0
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/lib/errors.js +2 -2
- package/dist/lib/taquito-beacon-wallet.js +147 -187
- package/dist/lib/version.js +2 -2
- package/dist/taquito-beacon-wallet.es6.js +152 -215
- package/dist/taquito-beacon-wallet.es6.js.map +1 -1
- package/dist/taquito-beacon-wallet.umd.js +328 -391
- package/dist/taquito-beacon-wallet.umd.js.map +1 -1
- package/dist/types/errors.d.ts +2 -2
- package/dist/types/taquito-beacon-wallet.d.ts +2 -2
- package/package.json +23 -10
- package/LICENSE +0 -202
|
@@ -1,45 +1,13 @@
|
|
|
1
|
-
import { Regions, getDAppClientInstance,
|
|
1
|
+
import { Regions, getDAppClientInstance, PermissionScope, SigningType } from '@ecadlabs/beacon-dapp';
|
|
2
2
|
export { BeaconEvent } from '@ecadlabs/beacon-dapp';
|
|
3
3
|
import { PermissionDeniedError, UnsupportedActionError } from '@taquito/core';
|
|
4
4
|
import toBuffer from 'typedarray-to-buffer';
|
|
5
5
|
import { createTransferOperation, createTransferTicketOperation, createIncreasePaidStorageOperation, createOriginationOperation, createSetDelegateOperation, createRegisterGlobalConstantOperation } from '@taquito/taquito';
|
|
6
6
|
import { hex2buf, mergebuf, buf2hex } from '@taquito/utils';
|
|
7
7
|
|
|
8
|
-
/******************************************************************************
|
|
9
|
-
Copyright (c) Microsoft Corporation.
|
|
10
|
-
|
|
11
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
12
|
-
purpose with or without fee is hereby granted.
|
|
13
|
-
|
|
14
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
15
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
16
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
17
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
18
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
19
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
20
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
21
|
-
***************************************************************************** */
|
|
22
|
-
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
function __awaiter(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
|
-
|
|
35
|
-
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
36
|
-
var e = new Error(message);
|
|
37
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
38
|
-
};
|
|
39
|
-
|
|
40
8
|
/**
|
|
41
9
|
* @category Error
|
|
42
|
-
*
|
|
10
|
+
* Error that indicates the Beacon wallet not being initialized
|
|
43
11
|
*/
|
|
44
12
|
class BeaconWalletNotInitialized extends PermissionDeniedError {
|
|
45
13
|
constructor() {
|
|
@@ -51,7 +19,7 @@ class BeaconWalletNotInitialized extends PermissionDeniedError {
|
|
|
51
19
|
}
|
|
52
20
|
/**
|
|
53
21
|
* @category Error
|
|
54
|
-
*
|
|
22
|
+
* Error that indicates missing required permission scopes
|
|
55
23
|
*/
|
|
56
24
|
class MissingRequiredScopes extends PermissionDeniedError {
|
|
57
25
|
constructor(requiredScopes) {
|
|
@@ -64,8 +32,8 @@ class MissingRequiredScopes extends PermissionDeniedError {
|
|
|
64
32
|
|
|
65
33
|
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT!
|
|
66
34
|
const VERSION = {
|
|
67
|
-
"commitHash": "
|
|
68
|
-
"version": "24.
|
|
35
|
+
"commitHash": "27675679db6515e8b092195ef5c58c2c0ea5f5c8",
|
|
36
|
+
"version": "24.3.0-beta.0"
|
|
69
37
|
};
|
|
70
38
|
|
|
71
39
|
/**
|
|
@@ -115,9 +83,11 @@ const TAQUITO_CURATED_MATRIX_NODES = {
|
|
|
115
83
|
};
|
|
116
84
|
class BeaconWallet {
|
|
117
85
|
constructor(options) {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
86
|
+
const matrixNodes = {
|
|
87
|
+
...TAQUITO_CURATED_MATRIX_NODES,
|
|
88
|
+
...(options.matrixNodes ?? {}),
|
|
89
|
+
};
|
|
90
|
+
this.client = getDAppClientInstance({ ...options, matrixNodes });
|
|
121
91
|
}
|
|
122
92
|
validateRequiredScopesOrFail(permissionScopes, requiredScopes) {
|
|
123
93
|
const mandatoryScope = new Set(requiredScopes);
|
|
@@ -130,155 +100,130 @@ class BeaconWallet {
|
|
|
130
100
|
throw new MissingRequiredScopes(Array.from(mandatoryScope));
|
|
131
101
|
}
|
|
132
102
|
}
|
|
133
|
-
requestPermissions(request) {
|
|
134
|
-
|
|
135
|
-
yield this.client.requestPermissions(request);
|
|
136
|
-
});
|
|
103
|
+
async requestPermissions(request) {
|
|
104
|
+
await this.client.requestPermissions(request);
|
|
137
105
|
}
|
|
138
|
-
getPKH() {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
return account.address;
|
|
145
|
-
});
|
|
106
|
+
async getPKH() {
|
|
107
|
+
const account = await this.client.getActiveAccount();
|
|
108
|
+
if (!account) {
|
|
109
|
+
throw new BeaconWalletNotInitialized();
|
|
110
|
+
}
|
|
111
|
+
return account.address;
|
|
146
112
|
}
|
|
147
|
-
getPK() {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
return (_a = account.publicKey) !== null && _a !== void 0 ? _a : '';
|
|
155
|
-
});
|
|
113
|
+
async getPK() {
|
|
114
|
+
const account = await this.client.getActiveAccount();
|
|
115
|
+
if (!account) {
|
|
116
|
+
throw new BeaconWalletNotInitialized();
|
|
117
|
+
}
|
|
118
|
+
return account.publicKey ?? '';
|
|
156
119
|
}
|
|
157
|
-
mapTransferParamsToWalletParams(params) {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
return this.removeDefaultParams(walletParams, yield createTransferOperation(this.formatParameters(walletParams)));
|
|
169
|
-
});
|
|
120
|
+
async mapTransferParamsToWalletParams(params) {
|
|
121
|
+
let walletParams;
|
|
122
|
+
await this.client.showPrepare();
|
|
123
|
+
try {
|
|
124
|
+
walletParams = await params();
|
|
125
|
+
}
|
|
126
|
+
catch (err) {
|
|
127
|
+
await this.client.hideUI(['alert']);
|
|
128
|
+
throw err;
|
|
129
|
+
}
|
|
130
|
+
return this.removeDefaultParams(walletParams, await createTransferOperation(this.formatParameters(walletParams)));
|
|
170
131
|
}
|
|
171
|
-
mapTransferTicketParamsToWalletParams(params) {
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
return this.removeDefaultParams(walletParams, yield createTransferTicketOperation(this.formatParameters(walletParams)));
|
|
183
|
-
});
|
|
132
|
+
async mapTransferTicketParamsToWalletParams(params) {
|
|
133
|
+
let walletParams;
|
|
134
|
+
await this.client.showPrepare();
|
|
135
|
+
try {
|
|
136
|
+
walletParams = await params();
|
|
137
|
+
}
|
|
138
|
+
catch (err) {
|
|
139
|
+
await this.client.hideUI(['alert']);
|
|
140
|
+
throw err;
|
|
141
|
+
}
|
|
142
|
+
return this.removeDefaultParams(walletParams, await createTransferTicketOperation(this.formatParameters(walletParams)));
|
|
184
143
|
}
|
|
185
|
-
mapStakeParamsToWalletParams(params) {
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
return this.removeDefaultParams(walletParams, yield createTransferOperation(this.formatParameters(walletParams)));
|
|
197
|
-
});
|
|
144
|
+
async mapStakeParamsToWalletParams(params) {
|
|
145
|
+
let walletParams;
|
|
146
|
+
await this.client.showPrepare();
|
|
147
|
+
try {
|
|
148
|
+
walletParams = await params();
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
await this.client.hideUI(['alert']);
|
|
152
|
+
throw err;
|
|
153
|
+
}
|
|
154
|
+
return this.removeDefaultParams(walletParams, await createTransferOperation(this.formatParameters(walletParams)));
|
|
198
155
|
}
|
|
199
|
-
mapUnstakeParamsToWalletParams(params) {
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
return this.removeDefaultParams(walletParams, yield createTransferOperation(this.formatParameters(walletParams)));
|
|
211
|
-
});
|
|
156
|
+
async mapUnstakeParamsToWalletParams(params) {
|
|
157
|
+
let walletParams;
|
|
158
|
+
await this.client.showPrepare();
|
|
159
|
+
try {
|
|
160
|
+
walletParams = await params();
|
|
161
|
+
}
|
|
162
|
+
catch (err) {
|
|
163
|
+
await this.client.hideUI(['alert']);
|
|
164
|
+
throw err;
|
|
165
|
+
}
|
|
166
|
+
return this.removeDefaultParams(walletParams, await createTransferOperation(this.formatParameters(walletParams)));
|
|
212
167
|
}
|
|
213
|
-
mapFinalizeUnstakeParamsToWalletParams(params) {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
return this.removeDefaultParams(walletParams, yield createTransferOperation(this.formatParameters(walletParams)));
|
|
225
|
-
});
|
|
168
|
+
async mapFinalizeUnstakeParamsToWalletParams(params) {
|
|
169
|
+
let walletParams;
|
|
170
|
+
await this.client.showPrepare();
|
|
171
|
+
try {
|
|
172
|
+
walletParams = await params();
|
|
173
|
+
}
|
|
174
|
+
catch (err) {
|
|
175
|
+
await this.client.hideUI(['alert']);
|
|
176
|
+
throw err;
|
|
177
|
+
}
|
|
178
|
+
return this.removeDefaultParams(walletParams, await createTransferOperation(this.formatParameters(walletParams)));
|
|
226
179
|
}
|
|
227
|
-
mapIncreasePaidStorageWalletParams(params) {
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
return this.removeDefaultParams(walletParams, yield createIncreasePaidStorageOperation(this.formatParameters(walletParams)));
|
|
239
|
-
});
|
|
180
|
+
async mapIncreasePaidStorageWalletParams(params) {
|
|
181
|
+
let walletParams;
|
|
182
|
+
await this.client.showPrepare();
|
|
183
|
+
try {
|
|
184
|
+
walletParams = await params();
|
|
185
|
+
}
|
|
186
|
+
catch (err) {
|
|
187
|
+
await this.client.hideUI(['alert']);
|
|
188
|
+
throw err;
|
|
189
|
+
}
|
|
190
|
+
return this.removeDefaultParams(walletParams, await createIncreasePaidStorageOperation(this.formatParameters(walletParams)));
|
|
240
191
|
}
|
|
241
|
-
mapOriginateParamsToWalletParams(params) {
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
return this.removeDefaultParams(walletParams, yield createOriginationOperation(this.formatParameters(walletParams)));
|
|
253
|
-
});
|
|
192
|
+
async mapOriginateParamsToWalletParams(params) {
|
|
193
|
+
let walletParams;
|
|
194
|
+
await this.client.showPrepare();
|
|
195
|
+
try {
|
|
196
|
+
walletParams = await params();
|
|
197
|
+
}
|
|
198
|
+
catch (err) {
|
|
199
|
+
await this.client.hideUI(['alert']);
|
|
200
|
+
throw err;
|
|
201
|
+
}
|
|
202
|
+
return this.removeDefaultParams(walletParams, await createOriginationOperation(this.formatParameters(walletParams)));
|
|
254
203
|
}
|
|
255
|
-
mapDelegateParamsToWalletParams(params) {
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
return this.removeDefaultParams(walletParams, yield createSetDelegateOperation(this.formatParameters(walletParams)));
|
|
267
|
-
});
|
|
204
|
+
async mapDelegateParamsToWalletParams(params) {
|
|
205
|
+
let walletParams;
|
|
206
|
+
await this.client.showPrepare();
|
|
207
|
+
try {
|
|
208
|
+
walletParams = await params();
|
|
209
|
+
}
|
|
210
|
+
catch (err) {
|
|
211
|
+
await this.client.hideUI(['alert']);
|
|
212
|
+
throw err;
|
|
213
|
+
}
|
|
214
|
+
return this.removeDefaultParams(walletParams, await createSetDelegateOperation(this.formatParameters(walletParams)));
|
|
268
215
|
}
|
|
269
|
-
mapRegisterGlobalConstantParamsToWalletParams(params) {
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
return this.removeDefaultParams(walletParams, yield createRegisterGlobalConstantOperation(this.formatParameters(walletParams)));
|
|
281
|
-
});
|
|
216
|
+
async mapRegisterGlobalConstantParamsToWalletParams(params) {
|
|
217
|
+
let walletParams;
|
|
218
|
+
await this.client.showPrepare();
|
|
219
|
+
try {
|
|
220
|
+
walletParams = await params();
|
|
221
|
+
}
|
|
222
|
+
catch (err) {
|
|
223
|
+
await this.client.hideUI(['alert']);
|
|
224
|
+
throw err;
|
|
225
|
+
}
|
|
226
|
+
return this.removeDefaultParams(walletParams, await createRegisterGlobalConstantOperation(this.formatParameters(walletParams)));
|
|
282
227
|
}
|
|
283
228
|
formatParameters(params) {
|
|
284
229
|
if (params.fee) {
|
|
@@ -307,20 +252,18 @@ class BeaconWallet {
|
|
|
307
252
|
}
|
|
308
253
|
return operatedParams;
|
|
309
254
|
}
|
|
310
|
-
sendOperations(params) {
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
return transactionHash;
|
|
320
|
-
});
|
|
255
|
+
async sendOperations(params) {
|
|
256
|
+
const account = await this.client.getActiveAccount();
|
|
257
|
+
if (!account) {
|
|
258
|
+
throw new BeaconWalletNotInitialized();
|
|
259
|
+
}
|
|
260
|
+
const permissions = account.scopes;
|
|
261
|
+
this.validateRequiredScopesOrFail(permissions, [PermissionScope.OPERATION_REQUEST]);
|
|
262
|
+
const { transactionHash } = await this.client.requestOperation({ operationDetails: params });
|
|
263
|
+
return transactionHash;
|
|
321
264
|
}
|
|
322
265
|
/**
|
|
323
|
-
*
|
|
266
|
+
* Disconnect the wallet and remove all Beacon data from localStorage.
|
|
324
267
|
*
|
|
325
268
|
* This is the recommended way to end a user session (logout). It calls
|
|
326
269
|
* `client.destroy()` under the hood, which clears the active account,
|
|
@@ -332,13 +275,11 @@ class BeaconWallet {
|
|
|
332
275
|
*
|
|
333
276
|
* For switching accounts without a full logout, use {@link clearActiveAccount} instead.
|
|
334
277
|
*/
|
|
335
|
-
disconnect() {
|
|
336
|
-
|
|
337
|
-
yield this.client.destroy();
|
|
338
|
-
});
|
|
278
|
+
async disconnect() {
|
|
279
|
+
await this.client.destroy();
|
|
339
280
|
}
|
|
340
281
|
/**
|
|
341
|
-
*
|
|
282
|
+
* Clear the active account without destroying the Beacon session.
|
|
342
283
|
*
|
|
343
284
|
* This removes the active account reference from local storage but does
|
|
344
285
|
* **not** clear other Beacon state such as the cached relay node
|
|
@@ -349,28 +290,24 @@ class BeaconWallet {
|
|
|
349
290
|
*
|
|
350
291
|
* @see {@link disconnect}
|
|
351
292
|
*/
|
|
352
|
-
clearActiveAccount() {
|
|
353
|
-
|
|
354
|
-
yield this.client.setActiveAccount();
|
|
355
|
-
});
|
|
293
|
+
async clearActiveAccount() {
|
|
294
|
+
await this.client.setActiveAccount();
|
|
356
295
|
}
|
|
357
|
-
sign(bytes, watermark) {
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
signingType,
|
|
371
|
-
});
|
|
372
|
-
return signature;
|
|
296
|
+
async sign(bytes, watermark) {
|
|
297
|
+
let bb = hex2buf(bytes);
|
|
298
|
+
if (typeof watermark !== 'undefined') {
|
|
299
|
+
bb = mergebuf(watermark, bb);
|
|
300
|
+
}
|
|
301
|
+
const watermarkedBytes = buf2hex(toBuffer(bb));
|
|
302
|
+
const signingType = this.getSigningType(watermark);
|
|
303
|
+
if (signingType !== SigningType.OPERATION) {
|
|
304
|
+
throw new UnsupportedActionError(`Taquito Beacon Wallet currently only supports signing operations, not ${signingType}`);
|
|
305
|
+
}
|
|
306
|
+
const { signature } = await this.client.requestSignPayload({
|
|
307
|
+
payload: watermarkedBytes,
|
|
308
|
+
signingType,
|
|
373
309
|
});
|
|
310
|
+
return signature;
|
|
374
311
|
}
|
|
375
312
|
getSigningType(watermark) {
|
|
376
313
|
if (!watermark || watermark.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taquito-beacon-wallet.es6.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"taquito-beacon-wallet.es6.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|