@dynamic-labs-wallet/evm 0.0.62 → 0.0.63
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 +20 -2
- package/index.esm.js +21 -3
- package/package.json +2 -2
- package/src/client/client.d.ts.map +1 -1
- package/src/utils.d.ts +4 -2
- package/src/utils.d.ts.map +1 -1
package/index.cjs.js
CHANGED
|
@@ -23,8 +23,17 @@ const ERROR_SIGN_MESSAGE = 'Error signing message';
|
|
|
23
23
|
const ERROR_ACCOUNT_ADDRESS_REQUIRED = 'Account address is required';
|
|
24
24
|
const ERROR_VERIFY_MESSAGE_SIGNATURE = 'Error verifying message signature';
|
|
25
25
|
|
|
26
|
-
const formatEVMMessage = (
|
|
27
|
-
|
|
26
|
+
const formatEVMMessage = (message_)=>{
|
|
27
|
+
const message = (()=>{
|
|
28
|
+
if (typeof message_ === 'string') return viem.stringToHex(message_);
|
|
29
|
+
if (typeof message_.raw === 'string') return message_.raw;
|
|
30
|
+
return viem.bytesToHex(message_.raw);
|
|
31
|
+
})();
|
|
32
|
+
const prefix = viem.stringToHex(`${EVM_SIGN_MESSAGE_PREFIX}${viem.size(message)}`);
|
|
33
|
+
return viem.concat([
|
|
34
|
+
prefix,
|
|
35
|
+
message
|
|
36
|
+
]);
|
|
28
37
|
};
|
|
29
38
|
const serializeECDSASignature = (signature)=>{
|
|
30
39
|
return viem.serializeSignature({
|
|
@@ -43,6 +52,11 @@ class DynamicEvmWalletClient extends browser.DynamicWalletClient {
|
|
|
43
52
|
}
|
|
44
53
|
async createWalletAccount({ thresholdSignatureScheme, password = undefined, onError }) {
|
|
45
54
|
try {
|
|
55
|
+
// Create a promise that will resolve when the ceremony is complete
|
|
56
|
+
let ceremonyCeremonyCompleteResolver;
|
|
57
|
+
const ceremonyCompletePromise = new Promise((resolve)=>{
|
|
58
|
+
ceremonyCeremonyCompleteResolver = resolve;
|
|
59
|
+
});
|
|
46
60
|
// Generate key shares for given threshold signature scheme (TSS)
|
|
47
61
|
const { rawPublicKey, clientKeyShares } = await this.keyGen({
|
|
48
62
|
chainName: this.chainName,
|
|
@@ -58,8 +72,12 @@ class DynamicEvmWalletClient extends browser.DynamicWalletClient {
|
|
|
58
72
|
thresholdSignatureScheme,
|
|
59
73
|
clientKeySharesBackupInfo: browser.getClientKeyShareBackupInfo()
|
|
60
74
|
});
|
|
75
|
+
// Resolve the promise when ceremony is complete
|
|
76
|
+
ceremonyCeremonyCompleteResolver(undefined);
|
|
61
77
|
}
|
|
62
78
|
});
|
|
79
|
+
// Wait for the ceremony to complete before proceeding
|
|
80
|
+
await ceremonyCompletePromise;
|
|
63
81
|
if (!rawPublicKey || !clientKeyShares) {
|
|
64
82
|
throw new Error(ERROR_KEYGEN_FAILED);
|
|
65
83
|
}
|
package/index.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DynamicWalletClient, getClientKeyShareBackupInfo, WalletOperation, MessageHash } from '@dynamic-labs-wallet/browser';
|
|
2
|
-
import { serializeSignature, createPublicClient, http, getAddress, serializeTransaction } from 'viem';
|
|
2
|
+
import { stringToHex, bytesToHex, size, concat, serializeSignature, createPublicClient, http, getAddress, serializeTransaction } from 'viem';
|
|
3
3
|
import { mainnet } from 'viem/chains';
|
|
4
4
|
|
|
5
5
|
function _extends() {
|
|
@@ -21,8 +21,17 @@ const ERROR_SIGN_MESSAGE = 'Error signing message';
|
|
|
21
21
|
const ERROR_ACCOUNT_ADDRESS_REQUIRED = 'Account address is required';
|
|
22
22
|
const ERROR_VERIFY_MESSAGE_SIGNATURE = 'Error verifying message signature';
|
|
23
23
|
|
|
24
|
-
const formatEVMMessage = (
|
|
25
|
-
|
|
24
|
+
const formatEVMMessage = (message_)=>{
|
|
25
|
+
const message = (()=>{
|
|
26
|
+
if (typeof message_ === 'string') return stringToHex(message_);
|
|
27
|
+
if (typeof message_.raw === 'string') return message_.raw;
|
|
28
|
+
return bytesToHex(message_.raw);
|
|
29
|
+
})();
|
|
30
|
+
const prefix = stringToHex(`${EVM_SIGN_MESSAGE_PREFIX}${size(message)}`);
|
|
31
|
+
return concat([
|
|
32
|
+
prefix,
|
|
33
|
+
message
|
|
34
|
+
]);
|
|
26
35
|
};
|
|
27
36
|
const serializeECDSASignature = (signature)=>{
|
|
28
37
|
return serializeSignature({
|
|
@@ -41,6 +50,11 @@ class DynamicEvmWalletClient extends DynamicWalletClient {
|
|
|
41
50
|
}
|
|
42
51
|
async createWalletAccount({ thresholdSignatureScheme, password = undefined, onError }) {
|
|
43
52
|
try {
|
|
53
|
+
// Create a promise that will resolve when the ceremony is complete
|
|
54
|
+
let ceremonyCeremonyCompleteResolver;
|
|
55
|
+
const ceremonyCompletePromise = new Promise((resolve)=>{
|
|
56
|
+
ceremonyCeremonyCompleteResolver = resolve;
|
|
57
|
+
});
|
|
44
58
|
// Generate key shares for given threshold signature scheme (TSS)
|
|
45
59
|
const { rawPublicKey, clientKeyShares } = await this.keyGen({
|
|
46
60
|
chainName: this.chainName,
|
|
@@ -56,8 +70,12 @@ class DynamicEvmWalletClient extends DynamicWalletClient {
|
|
|
56
70
|
thresholdSignatureScheme,
|
|
57
71
|
clientKeySharesBackupInfo: getClientKeyShareBackupInfo()
|
|
58
72
|
});
|
|
73
|
+
// Resolve the promise when ceremony is complete
|
|
74
|
+
ceremonyCeremonyCompleteResolver(undefined);
|
|
59
75
|
}
|
|
60
76
|
});
|
|
77
|
+
// Wait for the ceremony to complete before proceeding
|
|
78
|
+
await ceremonyCompletePromise;
|
|
61
79
|
if (!rawPublicKey || !clientKeyShares) {
|
|
62
80
|
throw new Error(ERROR_KEYGEN_FAILED);
|
|
63
81
|
}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs-wallet/evm",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.63",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@dynamic-labs-wallet/browser": "0.0.
|
|
6
|
+
"@dynamic-labs-wallet/browser": "0.0.63"
|
|
7
7
|
},
|
|
8
8
|
"peerDependencies": {
|
|
9
9
|
"viem": "^2.22.1"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EAEd,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EAIzB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,KAAK,EAEV,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAE7B,MAAM,MAAM,CAAC;AAWd,qBAAa,sBAAuB,SAAQ,mBAAmB;IAC7D,QAAQ,CAAC,SAAS,SAAS;gBAEf,EACV,aAAa,EACb,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,KAAK,GACN,EAAE,wBAAwB;IAW3B,sBAAsB,CAAC,EACrB,KAAK,EACL,MAAM,GACP,EAAE;QACD,KAAK,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,YAAY;IAOV,mBAAmB,CAAC,EACxB,wBAAwB,EACxB,QAAoB,EACpB,OAAO,GACR,EAAE;QACD,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC;QACV,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,cAAc,GAAG,UAAU,GAAG,SAAS,CAAC;QACtD,eAAe,EAAE,cAAc,EAAE,CAAC;KACnC,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}
|
package/src/utils.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { EcdsaSignature } from '@dynamic-labs-wallet/browser';
|
|
2
|
-
export declare const formatEVMMessage: (
|
|
1
|
+
import type { EcdsaSignature } from '@dynamic-labs-wallet/browser';
|
|
2
|
+
export declare const formatEVMMessage: (message_: string | {
|
|
3
|
+
raw: string | Uint8Array;
|
|
4
|
+
}) => `0x${string}`;
|
|
3
5
|
export declare const serializeECDSASignature: (signature: EcdsaSignature) => `0x${string}`;
|
|
4
6
|
//# sourceMappingURL=utils.d.ts.map
|
package/src/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../packages/src/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../packages/src/utils.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,eAAO,MAAM,gBAAgB,aACjB,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,kBAUhD,CAAC;AAEF,eAAO,MAAM,uBAAuB,cAAe,cAAc,kBAMhE,CAAC"}
|