@dynamic-labs-wallet/node 0.0.228 → 0.0.230
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/index.cjs.js +47 -20
- package/index.esm.js +47 -20
- package/package.json +2 -2
- package/src/client.d.ts +18 -10
- package/src/client.d.ts.map +1 -1
- package/src/mpc/mpc.d.ts +3 -2
- package/src/mpc/mpc.d.ts.map +1 -1
- package/src/utils.d.ts.map +1 -1
package/index.cjs.js
CHANGED
|
@@ -21,8 +21,8 @@ const getMPCSignatureScheme = ({ signingAlgorithm, baseRelayUrl = core.MPC_RELAY
|
|
|
21
21
|
throw new Error(`Unsupported signing algorithm: ${signingAlgorithm}`);
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
|
-
const getMPCSigner = ({ chainName, baseRelayUrl })=>{
|
|
25
|
-
const chainConfig = core.getMPCChainConfig(chainName);
|
|
24
|
+
const getMPCSigner = ({ chainName, baseRelayUrl, bitcoinConfig })=>{
|
|
25
|
+
const chainConfig = core.getMPCChainConfig(chainName, bitcoinConfig);
|
|
26
26
|
const signatureScheme = getMPCSignatureScheme({
|
|
27
27
|
signingAlgorithm: chainConfig.signingAlgorithm,
|
|
28
28
|
baseRelayUrl
|
|
@@ -152,6 +152,17 @@ const formatSolanaMessage = (message)=>{
|
|
|
152
152
|
return message;
|
|
153
153
|
}
|
|
154
154
|
};
|
|
155
|
+
const formatTonMessage = (message)=>{
|
|
156
|
+
if (typeof message === 'string') {
|
|
157
|
+
if (!isHexString(message)) {
|
|
158
|
+
return Buffer.from(message).toString('hex');
|
|
159
|
+
} else {
|
|
160
|
+
return new Uint8Array(Buffer.from(message, 'hex'));
|
|
161
|
+
}
|
|
162
|
+
} else {
|
|
163
|
+
return message;
|
|
164
|
+
}
|
|
165
|
+
};
|
|
155
166
|
const formatMessage = (chainName, message)=>{
|
|
156
167
|
switch(chainName){
|
|
157
168
|
case 'EVM':
|
|
@@ -160,6 +171,8 @@ const formatMessage = (chainName, message)=>{
|
|
|
160
171
|
return formatSolanaMessage(message);
|
|
161
172
|
case 'SUI':
|
|
162
173
|
return message;
|
|
174
|
+
case 'TON':
|
|
175
|
+
return formatTonMessage(message);
|
|
163
176
|
default:
|
|
164
177
|
throw new Error('Unsupported chain name');
|
|
165
178
|
}
|
|
@@ -319,7 +332,7 @@ class DynamicWalletClient {
|
|
|
319
332
|
});
|
|
320
333
|
this.isApiClientAuthenticated = true;
|
|
321
334
|
}
|
|
322
|
-
async dynamicServerInitializeKeyGen({ chainName, externalServerKeygenIds, thresholdSignatureScheme, dynamicRequestId, skipLock, onError, onCeremonyComplete }) {
|
|
335
|
+
async dynamicServerInitializeKeyGen({ chainName, externalServerKeygenIds, thresholdSignatureScheme, dynamicRequestId, skipLock, bitcoinConfig, onError, onCeremonyComplete }) {
|
|
323
336
|
this.ensureApiClientAuthenticated();
|
|
324
337
|
try {
|
|
325
338
|
const data = await this.apiClient.createWalletAccount({
|
|
@@ -328,6 +341,7 @@ class DynamicWalletClient {
|
|
|
328
341
|
thresholdSignatureScheme,
|
|
329
342
|
dynamicRequestId,
|
|
330
343
|
skipLock,
|
|
344
|
+
bitcoinConfig,
|
|
331
345
|
onError,
|
|
332
346
|
onCeremonyComplete
|
|
333
347
|
});
|
|
@@ -352,17 +366,20 @@ class DynamicWalletClient {
|
|
|
352
366
|
throw new Error('Error initializing keygen in externalServerInitializeKeyGen');
|
|
353
367
|
}
|
|
354
368
|
}
|
|
355
|
-
async derivePublicKey({ chainName, keyShare, derivationPath }) {
|
|
369
|
+
async derivePublicKey({ chainName, keyShare, derivationPath, bitcoinConfig }) {
|
|
356
370
|
try {
|
|
357
371
|
const mpcSigner = getMPCSigner({
|
|
358
372
|
chainName,
|
|
359
|
-
baseRelayUrl: this.baseMPCRelayApiUrl
|
|
373
|
+
baseRelayUrl: this.baseMPCRelayApiUrl,
|
|
374
|
+
bitcoinConfig
|
|
360
375
|
});
|
|
361
376
|
let publicKey;
|
|
362
377
|
if (mpcSigner instanceof node.Ecdsa) {
|
|
363
378
|
publicKey = await mpcSigner.derivePubkey(keyShare, derivationPath);
|
|
364
379
|
} else if (mpcSigner instanceof node.ExportableEd25519) {
|
|
365
380
|
publicKey = await mpcSigner.getPubkey(keyShare);
|
|
381
|
+
} else if (mpcSigner instanceof node.BIP340) {
|
|
382
|
+
publicKey = await mpcSigner.deriveTweakPubkey(keyShare, derivationPath);
|
|
366
383
|
}
|
|
367
384
|
return publicKey;
|
|
368
385
|
} catch (error) {
|
|
@@ -370,7 +387,7 @@ class DynamicWalletClient {
|
|
|
370
387
|
throw new Error('Error deriving public key in derivePublicKey');
|
|
371
388
|
}
|
|
372
389
|
}
|
|
373
|
-
async externalServerKeyGen({ chainName, roomId, dynamicServerKeygenIds, externalServerInitKeygenResults, thresholdSignatureScheme }) {
|
|
390
|
+
async externalServerKeyGen({ chainName, roomId, dynamicServerKeygenIds, externalServerInitKeygenResults, thresholdSignatureScheme, bitcoinConfig }) {
|
|
374
391
|
try {
|
|
375
392
|
// Get the chain config and the mpc signer
|
|
376
393
|
const mpcSigner = getMPCSigner({
|
|
@@ -398,12 +415,13 @@ class DynamicWalletClient {
|
|
|
398
415
|
}));
|
|
399
416
|
// only need one client keygen result to derive the public key
|
|
400
417
|
const [serverKeygenResult] = serverKeygenResults;
|
|
401
|
-
const chainConfig = core.getMPCChainConfig(chainName);
|
|
418
|
+
const chainConfig = core.getMPCChainConfig(chainName, bitcoinConfig);
|
|
402
419
|
const derivationPath = new Uint32Array(chainConfig.derivationPath);
|
|
403
420
|
const rawPublicKey = await this.derivePublicKey({
|
|
404
421
|
chainName,
|
|
405
422
|
keyShare: serverKeygenResult,
|
|
406
|
-
derivationPath
|
|
423
|
+
derivationPath,
|
|
424
|
+
bitcoinConfig
|
|
407
425
|
});
|
|
408
426
|
return {
|
|
409
427
|
rawPublicKey,
|
|
@@ -414,7 +432,7 @@ class DynamicWalletClient {
|
|
|
414
432
|
throw new Error('Error deriving public key in externalServerKeyGen');
|
|
415
433
|
}
|
|
416
434
|
}
|
|
417
|
-
async keyGen({ chainName, thresholdSignatureScheme, skipLock, onError, onCeremonyComplete }) {
|
|
435
|
+
async keyGen({ chainName, thresholdSignatureScheme, skipLock, bitcoinConfig, onError, onCeremonyComplete }) {
|
|
418
436
|
const dynamicRequestId = uuid.v4();
|
|
419
437
|
try {
|
|
420
438
|
const externalServerInitKeygenResults = await this.externalServerInitializeKeyGen({
|
|
@@ -428,6 +446,7 @@ class DynamicWalletClient {
|
|
|
428
446
|
dynamicRequestId,
|
|
429
447
|
thresholdSignatureScheme,
|
|
430
448
|
skipLock,
|
|
449
|
+
bitcoinConfig,
|
|
431
450
|
onCeremonyComplete
|
|
432
451
|
});
|
|
433
452
|
const { rawPublicKey, externalServerKeyGenResults } = await this.externalServerKeyGen({
|
|
@@ -435,7 +454,8 @@ class DynamicWalletClient {
|
|
|
435
454
|
roomId,
|
|
436
455
|
dynamicServerKeygenIds,
|
|
437
456
|
externalServerInitKeygenResults,
|
|
438
|
-
thresholdSignatureScheme
|
|
457
|
+
thresholdSignatureScheme,
|
|
458
|
+
bitcoinConfig
|
|
439
459
|
});
|
|
440
460
|
return {
|
|
441
461
|
rawPublicKey,
|
|
@@ -495,7 +515,7 @@ class DynamicWalletClient {
|
|
|
495
515
|
externalServerKeyShares: externalServerKeygenResults
|
|
496
516
|
};
|
|
497
517
|
}
|
|
498
|
-
async dynamicServerSign({ walletId, message, isFormatted, context, onError }) {
|
|
518
|
+
async dynamicServerSign({ walletId, message, isFormatted, context, bitcoinConfig, onError }) {
|
|
499
519
|
const dynamicRequestId = uuid.v4();
|
|
500
520
|
this.ensureApiClientAuthenticated();
|
|
501
521
|
// Create the room and sign the message
|
|
@@ -509,18 +529,21 @@ class DynamicWalletClient {
|
|
|
509
529
|
dynamicRequestId,
|
|
510
530
|
context: context ? JSON.parse(JSON.stringify(context, (_key, value)=>typeof value === 'bigint' ? value.toString() : value)) : undefined,
|
|
511
531
|
onError,
|
|
512
|
-
forwardMPCClientEnabled: this.forwardMPCEnabled
|
|
532
|
+
forwardMPCClientEnabled: this.forwardMPCEnabled,
|
|
533
|
+
bitcoinConfig
|
|
513
534
|
});
|
|
514
535
|
return data;
|
|
515
536
|
}
|
|
516
|
-
async externalServerSign({ chainName, message, roomId, keyShare, derivationPath, isFormatted }) {
|
|
537
|
+
async externalServerSign({ chainName, message, roomId, keyShare, derivationPath, isFormatted, bitcoinConfig }) {
|
|
517
538
|
try {
|
|
518
539
|
const mpcSigner = getMPCSigner({
|
|
519
540
|
chainName,
|
|
520
|
-
baseRelayUrl: this.baseMPCRelayApiUrl
|
|
541
|
+
baseRelayUrl: this.baseMPCRelayApiUrl,
|
|
542
|
+
bitcoinConfig
|
|
521
543
|
});
|
|
522
544
|
const formattedMessage = isFormatted ? new node.MessageHash(message) : formatMessage(chainName, message);
|
|
523
|
-
const
|
|
545
|
+
const tweak = bitcoinConfig == null ? void 0 : bitcoinConfig.tweak;
|
|
546
|
+
const signature = await mpcSigner.sign(roomId, keyShare, formattedMessage, derivationPath, tweak);
|
|
524
547
|
return signature;
|
|
525
548
|
} catch (error) {
|
|
526
549
|
this.logger.error('Error in externalServerSign', error);
|
|
@@ -569,7 +592,7 @@ class DynamicWalletClient {
|
|
|
569
592
|
throw error;
|
|
570
593
|
}
|
|
571
594
|
}
|
|
572
|
-
async sign({ accountAddress, externalServerKeyShares, message, chainName, password = undefined, isFormatted = false, context, onError }) {
|
|
595
|
+
async sign({ accountAddress, externalServerKeyShares, message, chainName, password = undefined, isFormatted = false, context, onError, bitcoinConfig }) {
|
|
573
596
|
try {
|
|
574
597
|
await this.verifyPassword({
|
|
575
598
|
accountAddress,
|
|
@@ -591,6 +614,7 @@ class DynamicWalletClient {
|
|
|
591
614
|
message,
|
|
592
615
|
isFormatted,
|
|
593
616
|
context,
|
|
617
|
+
bitcoinConfig,
|
|
594
618
|
onError
|
|
595
619
|
});
|
|
596
620
|
const derivationPath = wallet.derivationPath && wallet.derivationPath != '' ? new Uint32Array(Object.values(JSON.parse(wallet.derivationPath))) : undefined;
|
|
@@ -615,7 +639,8 @@ class DynamicWalletClient {
|
|
|
615
639
|
roomId: data.roomId,
|
|
616
640
|
keyShare: externalServerKeyShares[0],
|
|
617
641
|
derivationPath,
|
|
618
|
-
isFormatted
|
|
642
|
+
isFormatted,
|
|
643
|
+
bitcoinConfig
|
|
619
644
|
});
|
|
620
645
|
return signature;
|
|
621
646
|
}
|
|
@@ -778,7 +803,7 @@ class DynamicWalletClient {
|
|
|
778
803
|
});
|
|
779
804
|
return reshareResults;
|
|
780
805
|
}
|
|
781
|
-
async exportKey({ accountAddress, chainName, password = undefined, externalServerKeyShares }) {
|
|
806
|
+
async exportKey({ accountAddress, chainName, password = undefined, externalServerKeyShares, bitcoinConfig }) {
|
|
782
807
|
this.ensureApiClientAuthenticated();
|
|
783
808
|
await this.verifyPassword({
|
|
784
809
|
accountAddress,
|
|
@@ -796,7 +821,8 @@ class DynamicWalletClient {
|
|
|
796
821
|
}
|
|
797
822
|
const mpcSigner = getMPCSigner({
|
|
798
823
|
chainName,
|
|
799
|
-
baseRelayUrl: this.baseMPCRelayApiUrl
|
|
824
|
+
baseRelayUrl: this.baseMPCRelayApiUrl,
|
|
825
|
+
bitcoinConfig
|
|
800
826
|
});
|
|
801
827
|
const exportId = await this.getExportId({
|
|
802
828
|
chainName,
|
|
@@ -804,7 +830,8 @@ class DynamicWalletClient {
|
|
|
804
830
|
});
|
|
805
831
|
const data = await this.apiClient.exportKey({
|
|
806
832
|
walletId: wallet.walletId,
|
|
807
|
-
exportId
|
|
833
|
+
exportId,
|
|
834
|
+
bitcoinConfig
|
|
808
835
|
});
|
|
809
836
|
const keyExportRaw = await mpcSigner.exportFullPrivateKey(data.roomId, externalServerKeyShares[0], exportId);
|
|
810
837
|
if (!keyExportRaw) {
|
package/index.esm.js
CHANGED
|
@@ -20,8 +20,8 @@ const getMPCSignatureScheme = ({ signingAlgorithm, baseRelayUrl = MPC_RELAY_PROD
|
|
|
20
20
|
throw new Error(`Unsupported signing algorithm: ${signingAlgorithm}`);
|
|
21
21
|
}
|
|
22
22
|
};
|
|
23
|
-
const getMPCSigner = ({ chainName, baseRelayUrl })=>{
|
|
24
|
-
const chainConfig = getMPCChainConfig(chainName);
|
|
23
|
+
const getMPCSigner = ({ chainName, baseRelayUrl, bitcoinConfig })=>{
|
|
24
|
+
const chainConfig = getMPCChainConfig(chainName, bitcoinConfig);
|
|
25
25
|
const signatureScheme = getMPCSignatureScheme({
|
|
26
26
|
signingAlgorithm: chainConfig.signingAlgorithm,
|
|
27
27
|
baseRelayUrl
|
|
@@ -151,6 +151,17 @@ const formatSolanaMessage = (message)=>{
|
|
|
151
151
|
return message;
|
|
152
152
|
}
|
|
153
153
|
};
|
|
154
|
+
const formatTonMessage = (message)=>{
|
|
155
|
+
if (typeof message === 'string') {
|
|
156
|
+
if (!isHexString(message)) {
|
|
157
|
+
return Buffer.from(message).toString('hex');
|
|
158
|
+
} else {
|
|
159
|
+
return new Uint8Array(Buffer.from(message, 'hex'));
|
|
160
|
+
}
|
|
161
|
+
} else {
|
|
162
|
+
return message;
|
|
163
|
+
}
|
|
164
|
+
};
|
|
154
165
|
const formatMessage = (chainName, message)=>{
|
|
155
166
|
switch(chainName){
|
|
156
167
|
case 'EVM':
|
|
@@ -159,6 +170,8 @@ const formatMessage = (chainName, message)=>{
|
|
|
159
170
|
return formatSolanaMessage(message);
|
|
160
171
|
case 'SUI':
|
|
161
172
|
return message;
|
|
173
|
+
case 'TON':
|
|
174
|
+
return formatTonMessage(message);
|
|
162
175
|
default:
|
|
163
176
|
throw new Error('Unsupported chain name');
|
|
164
177
|
}
|
|
@@ -318,7 +331,7 @@ class DynamicWalletClient {
|
|
|
318
331
|
});
|
|
319
332
|
this.isApiClientAuthenticated = true;
|
|
320
333
|
}
|
|
321
|
-
async dynamicServerInitializeKeyGen({ chainName, externalServerKeygenIds, thresholdSignatureScheme, dynamicRequestId, skipLock, onError, onCeremonyComplete }) {
|
|
334
|
+
async dynamicServerInitializeKeyGen({ chainName, externalServerKeygenIds, thresholdSignatureScheme, dynamicRequestId, skipLock, bitcoinConfig, onError, onCeremonyComplete }) {
|
|
322
335
|
this.ensureApiClientAuthenticated();
|
|
323
336
|
try {
|
|
324
337
|
const data = await this.apiClient.createWalletAccount({
|
|
@@ -327,6 +340,7 @@ class DynamicWalletClient {
|
|
|
327
340
|
thresholdSignatureScheme,
|
|
328
341
|
dynamicRequestId,
|
|
329
342
|
skipLock,
|
|
343
|
+
bitcoinConfig,
|
|
330
344
|
onError,
|
|
331
345
|
onCeremonyComplete
|
|
332
346
|
});
|
|
@@ -351,17 +365,20 @@ class DynamicWalletClient {
|
|
|
351
365
|
throw new Error('Error initializing keygen in externalServerInitializeKeyGen');
|
|
352
366
|
}
|
|
353
367
|
}
|
|
354
|
-
async derivePublicKey({ chainName, keyShare, derivationPath }) {
|
|
368
|
+
async derivePublicKey({ chainName, keyShare, derivationPath, bitcoinConfig }) {
|
|
355
369
|
try {
|
|
356
370
|
const mpcSigner = getMPCSigner({
|
|
357
371
|
chainName,
|
|
358
|
-
baseRelayUrl: this.baseMPCRelayApiUrl
|
|
372
|
+
baseRelayUrl: this.baseMPCRelayApiUrl,
|
|
373
|
+
bitcoinConfig
|
|
359
374
|
});
|
|
360
375
|
let publicKey;
|
|
361
376
|
if (mpcSigner instanceof Ecdsa) {
|
|
362
377
|
publicKey = await mpcSigner.derivePubkey(keyShare, derivationPath);
|
|
363
378
|
} else if (mpcSigner instanceof ExportableEd25519) {
|
|
364
379
|
publicKey = await mpcSigner.getPubkey(keyShare);
|
|
380
|
+
} else if (mpcSigner instanceof BIP340) {
|
|
381
|
+
publicKey = await mpcSigner.deriveTweakPubkey(keyShare, derivationPath);
|
|
365
382
|
}
|
|
366
383
|
return publicKey;
|
|
367
384
|
} catch (error) {
|
|
@@ -369,7 +386,7 @@ class DynamicWalletClient {
|
|
|
369
386
|
throw new Error('Error deriving public key in derivePublicKey');
|
|
370
387
|
}
|
|
371
388
|
}
|
|
372
|
-
async externalServerKeyGen({ chainName, roomId, dynamicServerKeygenIds, externalServerInitKeygenResults, thresholdSignatureScheme }) {
|
|
389
|
+
async externalServerKeyGen({ chainName, roomId, dynamicServerKeygenIds, externalServerInitKeygenResults, thresholdSignatureScheme, bitcoinConfig }) {
|
|
373
390
|
try {
|
|
374
391
|
// Get the chain config and the mpc signer
|
|
375
392
|
const mpcSigner = getMPCSigner({
|
|
@@ -397,12 +414,13 @@ class DynamicWalletClient {
|
|
|
397
414
|
}));
|
|
398
415
|
// only need one client keygen result to derive the public key
|
|
399
416
|
const [serverKeygenResult] = serverKeygenResults;
|
|
400
|
-
const chainConfig = getMPCChainConfig(chainName);
|
|
417
|
+
const chainConfig = getMPCChainConfig(chainName, bitcoinConfig);
|
|
401
418
|
const derivationPath = new Uint32Array(chainConfig.derivationPath);
|
|
402
419
|
const rawPublicKey = await this.derivePublicKey({
|
|
403
420
|
chainName,
|
|
404
421
|
keyShare: serverKeygenResult,
|
|
405
|
-
derivationPath
|
|
422
|
+
derivationPath,
|
|
423
|
+
bitcoinConfig
|
|
406
424
|
});
|
|
407
425
|
return {
|
|
408
426
|
rawPublicKey,
|
|
@@ -413,7 +431,7 @@ class DynamicWalletClient {
|
|
|
413
431
|
throw new Error('Error deriving public key in externalServerKeyGen');
|
|
414
432
|
}
|
|
415
433
|
}
|
|
416
|
-
async keyGen({ chainName, thresholdSignatureScheme, skipLock, onError, onCeremonyComplete }) {
|
|
434
|
+
async keyGen({ chainName, thresholdSignatureScheme, skipLock, bitcoinConfig, onError, onCeremonyComplete }) {
|
|
417
435
|
const dynamicRequestId = v4();
|
|
418
436
|
try {
|
|
419
437
|
const externalServerInitKeygenResults = await this.externalServerInitializeKeyGen({
|
|
@@ -427,6 +445,7 @@ class DynamicWalletClient {
|
|
|
427
445
|
dynamicRequestId,
|
|
428
446
|
thresholdSignatureScheme,
|
|
429
447
|
skipLock,
|
|
448
|
+
bitcoinConfig,
|
|
430
449
|
onCeremonyComplete
|
|
431
450
|
});
|
|
432
451
|
const { rawPublicKey, externalServerKeyGenResults } = await this.externalServerKeyGen({
|
|
@@ -434,7 +453,8 @@ class DynamicWalletClient {
|
|
|
434
453
|
roomId,
|
|
435
454
|
dynamicServerKeygenIds,
|
|
436
455
|
externalServerInitKeygenResults,
|
|
437
|
-
thresholdSignatureScheme
|
|
456
|
+
thresholdSignatureScheme,
|
|
457
|
+
bitcoinConfig
|
|
438
458
|
});
|
|
439
459
|
return {
|
|
440
460
|
rawPublicKey,
|
|
@@ -494,7 +514,7 @@ class DynamicWalletClient {
|
|
|
494
514
|
externalServerKeyShares: externalServerKeygenResults
|
|
495
515
|
};
|
|
496
516
|
}
|
|
497
|
-
async dynamicServerSign({ walletId, message, isFormatted, context, onError }) {
|
|
517
|
+
async dynamicServerSign({ walletId, message, isFormatted, context, bitcoinConfig, onError }) {
|
|
498
518
|
const dynamicRequestId = v4();
|
|
499
519
|
this.ensureApiClientAuthenticated();
|
|
500
520
|
// Create the room and sign the message
|
|
@@ -508,18 +528,21 @@ class DynamicWalletClient {
|
|
|
508
528
|
dynamicRequestId,
|
|
509
529
|
context: context ? JSON.parse(JSON.stringify(context, (_key, value)=>typeof value === 'bigint' ? value.toString() : value)) : undefined,
|
|
510
530
|
onError,
|
|
511
|
-
forwardMPCClientEnabled: this.forwardMPCEnabled
|
|
531
|
+
forwardMPCClientEnabled: this.forwardMPCEnabled,
|
|
532
|
+
bitcoinConfig
|
|
512
533
|
});
|
|
513
534
|
return data;
|
|
514
535
|
}
|
|
515
|
-
async externalServerSign({ chainName, message, roomId, keyShare, derivationPath, isFormatted }) {
|
|
536
|
+
async externalServerSign({ chainName, message, roomId, keyShare, derivationPath, isFormatted, bitcoinConfig }) {
|
|
516
537
|
try {
|
|
517
538
|
const mpcSigner = getMPCSigner({
|
|
518
539
|
chainName,
|
|
519
|
-
baseRelayUrl: this.baseMPCRelayApiUrl
|
|
540
|
+
baseRelayUrl: this.baseMPCRelayApiUrl,
|
|
541
|
+
bitcoinConfig
|
|
520
542
|
});
|
|
521
543
|
const formattedMessage = isFormatted ? new MessageHash(message) : formatMessage(chainName, message);
|
|
522
|
-
const
|
|
544
|
+
const tweak = bitcoinConfig == null ? void 0 : bitcoinConfig.tweak;
|
|
545
|
+
const signature = await mpcSigner.sign(roomId, keyShare, formattedMessage, derivationPath, tweak);
|
|
523
546
|
return signature;
|
|
524
547
|
} catch (error) {
|
|
525
548
|
this.logger.error('Error in externalServerSign', error);
|
|
@@ -568,7 +591,7 @@ class DynamicWalletClient {
|
|
|
568
591
|
throw error;
|
|
569
592
|
}
|
|
570
593
|
}
|
|
571
|
-
async sign({ accountAddress, externalServerKeyShares, message, chainName, password = undefined, isFormatted = false, context, onError }) {
|
|
594
|
+
async sign({ accountAddress, externalServerKeyShares, message, chainName, password = undefined, isFormatted = false, context, onError, bitcoinConfig }) {
|
|
572
595
|
try {
|
|
573
596
|
await this.verifyPassword({
|
|
574
597
|
accountAddress,
|
|
@@ -590,6 +613,7 @@ class DynamicWalletClient {
|
|
|
590
613
|
message,
|
|
591
614
|
isFormatted,
|
|
592
615
|
context,
|
|
616
|
+
bitcoinConfig,
|
|
593
617
|
onError
|
|
594
618
|
});
|
|
595
619
|
const derivationPath = wallet.derivationPath && wallet.derivationPath != '' ? new Uint32Array(Object.values(JSON.parse(wallet.derivationPath))) : undefined;
|
|
@@ -614,7 +638,8 @@ class DynamicWalletClient {
|
|
|
614
638
|
roomId: data.roomId,
|
|
615
639
|
keyShare: externalServerKeyShares[0],
|
|
616
640
|
derivationPath,
|
|
617
|
-
isFormatted
|
|
641
|
+
isFormatted,
|
|
642
|
+
bitcoinConfig
|
|
618
643
|
});
|
|
619
644
|
return signature;
|
|
620
645
|
}
|
|
@@ -777,7 +802,7 @@ class DynamicWalletClient {
|
|
|
777
802
|
});
|
|
778
803
|
return reshareResults;
|
|
779
804
|
}
|
|
780
|
-
async exportKey({ accountAddress, chainName, password = undefined, externalServerKeyShares }) {
|
|
805
|
+
async exportKey({ accountAddress, chainName, password = undefined, externalServerKeyShares, bitcoinConfig }) {
|
|
781
806
|
this.ensureApiClientAuthenticated();
|
|
782
807
|
await this.verifyPassword({
|
|
783
808
|
accountAddress,
|
|
@@ -795,7 +820,8 @@ class DynamicWalletClient {
|
|
|
795
820
|
}
|
|
796
821
|
const mpcSigner = getMPCSigner({
|
|
797
822
|
chainName,
|
|
798
|
-
baseRelayUrl: this.baseMPCRelayApiUrl
|
|
823
|
+
baseRelayUrl: this.baseMPCRelayApiUrl,
|
|
824
|
+
bitcoinConfig
|
|
799
825
|
});
|
|
800
826
|
const exportId = await this.getExportId({
|
|
801
827
|
chainName,
|
|
@@ -803,7 +829,8 @@ class DynamicWalletClient {
|
|
|
803
829
|
});
|
|
804
830
|
const data = await this.apiClient.exportKey({
|
|
805
831
|
walletId: wallet.walletId,
|
|
806
|
-
exportId
|
|
832
|
+
exportId,
|
|
833
|
+
bitcoinConfig
|
|
807
834
|
});
|
|
808
835
|
const keyExportRaw = await mpcSigner.exportFullPrivateKey(data.roomId, externalServerKeyShares[0], exportId);
|
|
809
836
|
if (!keyExportRaw) {
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs-wallet/node",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.230",
|
|
4
4
|
"license": "Licensed under the Dynamic Labs, Inc. Terms Of Service (https://www.dynamic.xyz/terms-conditions)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@dynamic-labs-wallet/core": "0.0.
|
|
7
|
+
"@dynamic-labs-wallet/core": "0.0.230",
|
|
8
8
|
"@dynamic-labs-wallet/forward-mpc-client": "0.2.0",
|
|
9
9
|
"@dynamic-labs/logger": "^4.25.3",
|
|
10
10
|
"@dynamic-labs/sdk-api-core": "^0.0.801",
|
package/src/client.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BIP340KeygenResult, EcdsaKeygenResult, EcdsaSignature, MessageHash, type EcdsaPublicKey } from '#internal/node';
|
|
2
|
-
import { BackupLocation, DynamicApiClient, WalletOperation, type KeyShareBackupInfo, type ThresholdSignatureScheme } from '@dynamic-labs-wallet/core';
|
|
2
|
+
import { BackupLocation, type BitcoinConfig, DynamicApiClient, WalletOperation, type KeyShareBackupInfo, type ThresholdSignatureScheme } from '@dynamic-labs-wallet/core';
|
|
3
3
|
import type { SignMessageContext } from '@dynamic-labs/sdk-api-core';
|
|
4
4
|
import type { ServerKeyShare } from './mpc/index.js';
|
|
5
5
|
import type { ServerInitKeygenResult } from './mpc/types.js';
|
|
@@ -19,12 +19,13 @@ export declare class DynamicWalletClient {
|
|
|
19
19
|
initializeForwardMPCClient(): Promise<void>;
|
|
20
20
|
private ensureApiClientAuthenticated;
|
|
21
21
|
authenticateApiToken(authToken: string): Promise<void>;
|
|
22
|
-
dynamicServerInitializeKeyGen({ chainName, externalServerKeygenIds, thresholdSignatureScheme, dynamicRequestId, skipLock, onError, onCeremonyComplete, }: {
|
|
22
|
+
dynamicServerInitializeKeyGen({ chainName, externalServerKeygenIds, thresholdSignatureScheme, dynamicRequestId, skipLock, bitcoinConfig, onError, onCeremonyComplete, }: {
|
|
23
23
|
chainName: string;
|
|
24
24
|
externalServerKeygenIds: string[];
|
|
25
25
|
thresholdSignatureScheme: ThresholdSignatureScheme;
|
|
26
26
|
dynamicRequestId: string;
|
|
27
27
|
skipLock?: boolean;
|
|
28
|
+
bitcoinConfig?: BitcoinConfig;
|
|
28
29
|
onError?: (error: Error) => void;
|
|
29
30
|
onCeremonyComplete?: (accountAddress: string, walletId: string) => void;
|
|
30
31
|
}): Promise<import("@dynamic-labs-wallet/core").KeygenCompleteResponse>;
|
|
@@ -32,25 +33,28 @@ export declare class DynamicWalletClient {
|
|
|
32
33
|
chainName: string;
|
|
33
34
|
thresholdSignatureScheme: ThresholdSignatureScheme;
|
|
34
35
|
}): Promise<ServerInitKeygenResult[]>;
|
|
35
|
-
derivePublicKey({ chainName, keyShare, derivationPath, }: {
|
|
36
|
+
derivePublicKey({ chainName, keyShare, derivationPath, bitcoinConfig, }: {
|
|
36
37
|
chainName: string;
|
|
37
38
|
keyShare: ServerKeyShare;
|
|
38
39
|
derivationPath: Uint32Array | undefined;
|
|
39
|
-
|
|
40
|
-
|
|
40
|
+
bitcoinConfig?: BitcoinConfig;
|
|
41
|
+
}): Promise<string | EcdsaPublicKey | Uint8Array | undefined>;
|
|
42
|
+
externalServerKeyGen({ chainName, roomId, dynamicServerKeygenIds, externalServerInitKeygenResults, thresholdSignatureScheme, bitcoinConfig, }: {
|
|
41
43
|
chainName: string;
|
|
42
44
|
roomId: string;
|
|
43
45
|
dynamicServerKeygenIds: string[];
|
|
44
46
|
externalServerInitKeygenResults: ServerInitKeygenResult[];
|
|
45
47
|
thresholdSignatureScheme: ThresholdSignatureScheme;
|
|
48
|
+
bitcoinConfig?: BitcoinConfig;
|
|
46
49
|
}): Promise<{
|
|
47
50
|
rawPublicKey: EcdsaPublicKey | Uint8Array | string | undefined;
|
|
48
51
|
externalServerKeyGenResults: ServerKeyShare[];
|
|
49
52
|
}>;
|
|
50
|
-
keyGen({ chainName, thresholdSignatureScheme, skipLock, onError, onCeremonyComplete, }: {
|
|
53
|
+
keyGen({ chainName, thresholdSignatureScheme, skipLock, bitcoinConfig, onError, onCeremonyComplete, }: {
|
|
51
54
|
chainName: string;
|
|
52
55
|
thresholdSignatureScheme: ThresholdSignatureScheme;
|
|
53
56
|
skipLock?: boolean;
|
|
57
|
+
bitcoinConfig?: BitcoinConfig;
|
|
54
58
|
onError?: (error: Error) => void;
|
|
55
59
|
onCeremonyComplete?: (accountAddress: string, walletId: string) => void;
|
|
56
60
|
}): Promise<{
|
|
@@ -67,20 +71,22 @@ export declare class DynamicWalletClient {
|
|
|
67
71
|
rawPublicKey: EcdsaPublicKey | Uint8Array | string | undefined;
|
|
68
72
|
externalServerKeyShares: ServerKeyShare[];
|
|
69
73
|
}>;
|
|
70
|
-
dynamicServerSign({ walletId, message, isFormatted, context, onError, }: {
|
|
74
|
+
dynamicServerSign({ walletId, message, isFormatted, context, bitcoinConfig, onError, }: {
|
|
71
75
|
walletId: string;
|
|
72
76
|
message: string | Uint8Array;
|
|
73
77
|
isFormatted?: boolean;
|
|
74
78
|
context?: SignMessageContext;
|
|
79
|
+
bitcoinConfig?: BitcoinConfig;
|
|
75
80
|
onError?: (error: Error) => void;
|
|
76
81
|
}): Promise<import("@dynamic-labs-wallet/core").OpenRoomResponse>;
|
|
77
|
-
externalServerSign({ chainName, message, roomId, keyShare, derivationPath, isFormatted, }: {
|
|
82
|
+
externalServerSign({ chainName, message, roomId, keyShare, derivationPath, isFormatted, bitcoinConfig, }: {
|
|
78
83
|
chainName: string;
|
|
79
84
|
message: string | Uint8Array;
|
|
80
85
|
roomId: string;
|
|
81
86
|
keyShare: ServerKeyShare;
|
|
82
87
|
derivationPath: Uint32Array | undefined;
|
|
83
88
|
isFormatted?: boolean;
|
|
89
|
+
bitcoinConfig?: BitcoinConfig;
|
|
84
90
|
}): Promise<Uint8Array | EcdsaSignature>;
|
|
85
91
|
forwardMPCClientSign({ chainName, message, roomId, keyShare, derivationPath, formattedMessage, dynamicRequestId, isFormatted, }: {
|
|
86
92
|
chainName: string;
|
|
@@ -92,7 +98,7 @@ export declare class DynamicWalletClient {
|
|
|
92
98
|
dynamicRequestId: string;
|
|
93
99
|
isFormatted?: boolean;
|
|
94
100
|
}): Promise<Uint8Array | EcdsaSignature>;
|
|
95
|
-
sign({ accountAddress, externalServerKeyShares, message, chainName, password, isFormatted, context, onError, }: {
|
|
101
|
+
sign({ accountAddress, externalServerKeyShares, message, chainName, password, isFormatted, context, onError, bitcoinConfig, }: {
|
|
96
102
|
accountAddress: string;
|
|
97
103
|
externalServerKeyShares?: ServerKeyShare[];
|
|
98
104
|
message: string | Uint8Array;
|
|
@@ -100,6 +106,7 @@ export declare class DynamicWalletClient {
|
|
|
100
106
|
password?: string;
|
|
101
107
|
isFormatted?: boolean;
|
|
102
108
|
context?: SignMessageContext;
|
|
109
|
+
bitcoinConfig?: BitcoinConfig;
|
|
103
110
|
onError?: (error: Error) => void;
|
|
104
111
|
}): Promise<Uint8Array | EcdsaSignature>;
|
|
105
112
|
refreshWalletAccountShares({ accountAddress, chainName, password, externalServerKeyShares, backUpToClientShareService, }: {
|
|
@@ -147,11 +154,12 @@ export declare class DynamicWalletClient {
|
|
|
147
154
|
externalServerKeyShares?: ServerKeyShare[];
|
|
148
155
|
backUpToClientShareService?: boolean;
|
|
149
156
|
}): Promise<(EcdsaKeygenResult | BIP340KeygenResult)[]>;
|
|
150
|
-
exportKey({ accountAddress, chainName, password, externalServerKeyShares, }: {
|
|
157
|
+
exportKey({ accountAddress, chainName, password, externalServerKeyShares, bitcoinConfig, }: {
|
|
151
158
|
accountAddress: string;
|
|
152
159
|
chainName: string;
|
|
153
160
|
password?: string;
|
|
154
161
|
externalServerKeyShares?: ServerKeyShare[];
|
|
162
|
+
bitcoinConfig?: BitcoinConfig;
|
|
155
163
|
}): Promise<{
|
|
156
164
|
derivedPrivateKey: string | undefined;
|
|
157
165
|
}>;
|
package/src/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAElB,iBAAiB,EACjB,cAAc,EAGd,WAAW,EACX,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,EAShB,eAAe,EAEf,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAQrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAE7D,OAAO,KAAK,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAQ7E,qBAAa,mBAAmB;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;IAEtB,SAAS,CAAC,MAAM,wCAAU;IAE1B,SAAS,CAAC,SAAS,EAAG,gBAAgB,CAAC;IACvC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAM;IAC3D,SAAS,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACtC,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,wBAAwB,UAAS;IAC3C,SAAS,CAAC,iBAAiB,UAAS;gBAExB,EACV,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,KAAK,EACL,gBAAgB,EAChB,oBAA4B,GAC7B,EAAE,wBAAwB;IA0BrB,0BAA0B;IAYhC,OAAO,CAAC,4BAA4B;IAQ9B,oBAAoB,CAAC,SAAS,EAAE,MAAM;IAoBtC,6BAA6B,CAAC,EAClC,SAAS,EACT,uBAAuB,EACvB,wBAAwB,EACxB,gBAAgB,EAChB,QAAQ,EACR,OAAO,EACP,kBAAkB,GACnB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,uBAAuB,EAAE,MAAM,EAAE,CAAC;QAClC,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,gBAAgB,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;QACjC,kBAAkB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;KACzE;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"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"}
|
package/src/mpc/mpc.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { SigningAlgorithm } from '@dynamic-labs-wallet/core';
|
|
1
|
+
import { type BitcoinConfig, SigningAlgorithm } from '@dynamic-labs-wallet/core';
|
|
2
2
|
import { Ecdsa, ExportableEd25519, BIP340 } from '#internal/node';
|
|
3
3
|
export declare const getMPCSignatureScheme: ({ signingAlgorithm, baseRelayUrl, }: {
|
|
4
4
|
signingAlgorithm: SigningAlgorithm;
|
|
5
5
|
baseRelayUrl?: string;
|
|
6
6
|
}) => Ecdsa | ExportableEd25519 | BIP340;
|
|
7
|
-
export declare const getMPCSigner: ({ chainName, baseRelayUrl, }: {
|
|
7
|
+
export declare const getMPCSigner: ({ chainName, baseRelayUrl, bitcoinConfig, }: {
|
|
8
8
|
chainName: string;
|
|
9
9
|
baseRelayUrl?: string;
|
|
10
|
+
bitcoinConfig?: BitcoinConfig;
|
|
10
11
|
}) => Ecdsa | ExportableEd25519 | BIP340;
|
|
11
12
|
//# sourceMappingURL=mpc.d.ts.map
|
package/src/mpc/mpc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mpc.d.ts","sourceRoot":"","sources":["../../src/mpc/mpc.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"mpc.d.ts","sourceRoot":"","sources":["../../src/mpc/mpc.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAElB,gBAAgB,EAEjB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAIlE,eAAO,MAAM,qBAAqB,wCAG/B;IACD,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,uCAWA,CAAC;AAEF,eAAO,MAAM,YAAY,gDAItB;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,uCAOA,CAAC"}
|
package/src/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../packages/src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EAExB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,eAAO,MAAM,aAAa,QAAS,UAAU,WAE5C,CAAC;AAEF,eAAO,MAAM,aAAa,QAAS,MAAM,eAExC,CAAC;AAEF,eAAO,MAAM,aAAa,WAAY,MAAM,eAE3C,CAAC;AAGF,eAAO,MAAM,mBAAmB,QAAS,MAAM,KAAG,MAEjD,CAAC;AAEF,eAAO,MAAM,WAAW,QAAS,MAAM,YAKtC,CAAC;AAEF,eAAO,MAAM,mCAAmC,YAAa;IAC3D,gBAAgB,EAAE,oBAAoB,CAAC;CACxC,KAAG,kBA4CH,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,sBACZ,cAAc,EAAE,gBACrB,cAAc,EAAE,KAC7B,cAAc,EAchB,CAAC;AAEF,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,EACE,WAAe,EACf,aAAmB,EACnB,aAA2B,EAC3B,UAAe,GAChB,GAAE,WAAgB,GAClB,OAAO,CAAC,CAAC,CAAC,CA0BZ;AACD,eAAO,MAAM,gBAAgB,YAAa,MAAM,GAAG,UAAU,gBAS5D,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../packages/src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EAExB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,eAAO,MAAM,aAAa,QAAS,UAAU,WAE5C,CAAC;AAEF,eAAO,MAAM,aAAa,QAAS,MAAM,eAExC,CAAC;AAEF,eAAO,MAAM,aAAa,WAAY,MAAM,eAE3C,CAAC;AAGF,eAAO,MAAM,mBAAmB,QAAS,MAAM,KAAG,MAEjD,CAAC;AAEF,eAAO,MAAM,WAAW,QAAS,MAAM,YAKtC,CAAC;AAEF,eAAO,MAAM,mCAAmC,YAAa;IAC3D,gBAAgB,EAAE,oBAAoB,CAAC;CACxC,KAAG,kBA4CH,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,sBACZ,cAAc,EAAE,gBACrB,cAAc,EAAE,KAC7B,cAAc,EAchB,CAAC;AAEF,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,EACE,WAAe,EACf,aAAmB,EACnB,aAA2B,EAC3B,UAAe,GAChB,GAAE,WAAgB,GAClB,OAAO,CAAC,CAAC,CAAC,CA0BZ;AACD,eAAO,MAAM,gBAAgB,YAAa,MAAM,GAAG,UAAU,gBAS5D,CAAC;AA6BF,eAAO,MAAM,aAAa,cACb,MAAM,WACR,MAAM,GAAG,UAAU,KAC3B,MAAM,GAAG,UAAU,GAAG,WAaxB,CAAC"}
|