@continuumdao/continuum-node-sdk 1.2.27 → 1.2.28
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/config/mpa-wallet.d.ts +102 -21
- package/dist/config/mpa-wallet.d.ts.map +1 -1
- package/dist/config/mpa-wallet.js +51 -15
- package/dist/config/mpa-wallet.js.map +1 -1
- package/dist/core/mpc/mpa-top-up.d.ts +2 -0
- package/dist/core/mpc/mpa-top-up.d.ts.map +1 -1
- package/dist/core/mpc/mpa-top-up.js +63 -43
- package/dist/core/mpc/mpa-top-up.js.map +1 -1
- package/dist/core/mpc/register-keygen.d.ts.map +1 -1
- package/dist/core/mpc/register-keygen.js +11 -3
- package/dist/core/mpc/register-keygen.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/** MultiSignAgentWallet on Linea Mainnet (59144). */
|
|
2
2
|
export declare const LINEA_MAINNET_DEFAULT_RPC: "https://linea-rpc.publicnode.com";
|
|
3
3
|
export declare const LINEA_MAINNET_DEFAULT_EXPLORER: "https://lineascan.build";
|
|
4
|
+
export declare const KEY_GEN_ADDRESS_KIND_ETHEREUM: "ethereum";
|
|
4
5
|
export declare const MPA_WALLET_CONTRACT_CONFIG: {
|
|
5
6
|
readonly chainId: 59144;
|
|
6
7
|
readonly contractAddress: "0x55aD6Df6d8f8824486C3fd3373f1CF29eCecF0A3";
|
|
@@ -9,11 +10,19 @@ export declare const MPA_WALLET_CONTRACT_CONFIG: {
|
|
|
9
10
|
};
|
|
10
11
|
export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
11
12
|
readonly inputs: readonly [{
|
|
12
|
-
readonly name: "
|
|
13
|
+
readonly name: "keyGenId";
|
|
14
|
+
readonly type: "string";
|
|
15
|
+
readonly internalType: "string";
|
|
16
|
+
}, {
|
|
17
|
+
readonly name: "addressKind";
|
|
18
|
+
readonly type: "string";
|
|
19
|
+
readonly internalType: "string";
|
|
20
|
+
}, {
|
|
21
|
+
readonly name: "billingAddress";
|
|
13
22
|
readonly type: "address";
|
|
14
23
|
readonly internalType: "address";
|
|
15
24
|
}];
|
|
16
|
-
readonly name: "
|
|
25
|
+
readonly name: "isKeyGenRegistered";
|
|
17
26
|
readonly outputs: readonly [{
|
|
18
27
|
readonly name: "";
|
|
19
28
|
readonly type: "bool";
|
|
@@ -23,45 +32,77 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
23
32
|
readonly type: "function";
|
|
24
33
|
}, {
|
|
25
34
|
readonly inputs: readonly [{
|
|
26
|
-
readonly name: "
|
|
35
|
+
readonly name: "keyGenId";
|
|
36
|
+
readonly type: "string";
|
|
37
|
+
readonly internalType: "string";
|
|
38
|
+
}, {
|
|
39
|
+
readonly name: "addressKind";
|
|
40
|
+
readonly type: "string";
|
|
41
|
+
readonly internalType: "string";
|
|
42
|
+
}, {
|
|
43
|
+
readonly name: "billingAddress";
|
|
27
44
|
readonly type: "address";
|
|
28
45
|
readonly internalType: "address";
|
|
29
46
|
}];
|
|
30
|
-
readonly name: "
|
|
47
|
+
readonly name: "getSubscriptionStatus";
|
|
31
48
|
readonly outputs: readonly [{
|
|
32
|
-
readonly name: "
|
|
33
|
-
readonly type: "
|
|
34
|
-
readonly internalType: "
|
|
49
|
+
readonly name: "registered";
|
|
50
|
+
readonly type: "bool";
|
|
51
|
+
readonly internalType: "bool";
|
|
52
|
+
}, {
|
|
53
|
+
readonly name: "nodeKeyHash";
|
|
54
|
+
readonly type: "bytes32";
|
|
55
|
+
readonly internalType: "bytes32";
|
|
56
|
+
}, {
|
|
57
|
+
readonly name: "paidThroughMonth";
|
|
58
|
+
readonly type: "uint32";
|
|
59
|
+
readonly internalType: "uint32";
|
|
35
60
|
}, {
|
|
36
|
-
readonly name: "
|
|
61
|
+
readonly name: "signatureCountAtMonthStart";
|
|
37
62
|
readonly type: "uint256";
|
|
38
63
|
readonly internalType: "uint256";
|
|
39
64
|
}, {
|
|
40
|
-
readonly name: "
|
|
65
|
+
readonly name: "nodeCreditBalance_";
|
|
41
66
|
readonly type: "uint256";
|
|
42
67
|
readonly internalType: "uint256";
|
|
43
68
|
}, {
|
|
44
|
-
readonly name: "
|
|
69
|
+
readonly name: "monthlyFee";
|
|
45
70
|
readonly type: "uint256";
|
|
46
71
|
readonly internalType: "uint256";
|
|
47
72
|
}, {
|
|
48
|
-
readonly name: "
|
|
49
|
-
readonly type: "
|
|
50
|
-
readonly internalType: "
|
|
73
|
+
readonly name: "freeSignaturesPerMonth";
|
|
74
|
+
readonly type: "uint256";
|
|
75
|
+
readonly internalType: "uint256";
|
|
76
|
+
}, {
|
|
77
|
+
readonly name: "overageFeePerSignature";
|
|
78
|
+
readonly type: "uint256";
|
|
79
|
+
readonly internalType: "uint256";
|
|
80
|
+
}, {
|
|
81
|
+
readonly name: "fundedForCurrentMonth";
|
|
82
|
+
readonly type: "bool";
|
|
83
|
+
readonly internalType: "bool";
|
|
51
84
|
}];
|
|
52
85
|
readonly stateMutability: "view";
|
|
53
86
|
readonly type: "function";
|
|
54
87
|
}, {
|
|
55
88
|
readonly inputs: readonly [{
|
|
56
|
-
readonly name: "
|
|
89
|
+
readonly name: "keyGenId";
|
|
90
|
+
readonly type: "string";
|
|
91
|
+
readonly internalType: "string";
|
|
92
|
+
}, {
|
|
93
|
+
readonly name: "addressKind";
|
|
94
|
+
readonly type: "string";
|
|
95
|
+
readonly internalType: "string";
|
|
96
|
+
}, {
|
|
97
|
+
readonly name: "billingAddress";
|
|
57
98
|
readonly type: "address";
|
|
58
99
|
readonly internalType: "address";
|
|
59
100
|
}, {
|
|
60
|
-
readonly name: "
|
|
101
|
+
readonly name: "currentSignatureCount";
|
|
61
102
|
readonly type: "uint256";
|
|
62
103
|
readonly internalType: "uint256";
|
|
63
104
|
}];
|
|
64
|
-
readonly name: "
|
|
105
|
+
readonly name: "getRemainingNonces";
|
|
65
106
|
readonly outputs: readonly [{
|
|
66
107
|
readonly name: "";
|
|
67
108
|
readonly type: "uint256";
|
|
@@ -71,19 +112,59 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
71
112
|
readonly type: "function";
|
|
72
113
|
}, {
|
|
73
114
|
readonly inputs: readonly [{
|
|
74
|
-
readonly name: "
|
|
115
|
+
readonly name: "keyGenId";
|
|
116
|
+
readonly type: "string";
|
|
117
|
+
readonly internalType: "string";
|
|
118
|
+
}, {
|
|
119
|
+
readonly name: "addressKind";
|
|
120
|
+
readonly type: "string";
|
|
121
|
+
readonly internalType: "string";
|
|
122
|
+
}, {
|
|
123
|
+
readonly name: "billingAddress";
|
|
75
124
|
readonly type: "address";
|
|
76
125
|
readonly internalType: "address";
|
|
126
|
+
}];
|
|
127
|
+
readonly name: "getRequiredMinimumTopUp";
|
|
128
|
+
readonly outputs: readonly [{
|
|
129
|
+
readonly name: "";
|
|
130
|
+
readonly type: "uint256";
|
|
131
|
+
readonly internalType: "uint256";
|
|
132
|
+
}];
|
|
133
|
+
readonly stateMutability: "view";
|
|
134
|
+
readonly type: "function";
|
|
135
|
+
}, {
|
|
136
|
+
readonly inputs: readonly [{
|
|
137
|
+
readonly name: "keyGenId";
|
|
138
|
+
readonly type: "string";
|
|
139
|
+
readonly internalType: "string";
|
|
77
140
|
}, {
|
|
78
|
-
readonly name: "
|
|
141
|
+
readonly name: "addressKind";
|
|
142
|
+
readonly type: "string";
|
|
143
|
+
readonly internalType: "string";
|
|
144
|
+
}, {
|
|
145
|
+
readonly name: "nodeKey";
|
|
146
|
+
readonly type: "string";
|
|
147
|
+
readonly internalType: "string";
|
|
148
|
+
}, {
|
|
149
|
+
readonly name: "amount";
|
|
150
|
+
readonly type: "uint256";
|
|
151
|
+
readonly internalType: "uint256";
|
|
152
|
+
}, {
|
|
153
|
+
readonly name: "globalNonceAtActivation";
|
|
79
154
|
readonly type: "uint256";
|
|
80
155
|
readonly internalType: "uint256";
|
|
81
156
|
}];
|
|
82
|
-
readonly name: "
|
|
157
|
+
readonly name: "deposit";
|
|
158
|
+
readonly outputs: readonly [];
|
|
159
|
+
readonly stateMutability: "nonpayable";
|
|
160
|
+
readonly type: "function";
|
|
161
|
+
}, {
|
|
162
|
+
readonly inputs: readonly [];
|
|
163
|
+
readonly name: "FEE_TOKEN";
|
|
83
164
|
readonly outputs: readonly [{
|
|
84
165
|
readonly name: "";
|
|
85
|
-
readonly type: "
|
|
86
|
-
readonly internalType: "
|
|
166
|
+
readonly type: "address";
|
|
167
|
+
readonly internalType: "address";
|
|
87
168
|
}];
|
|
88
169
|
readonly stateMutability: "view";
|
|
89
170
|
readonly type: "function";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mpa-wallet.d.ts","sourceRoot":"","sources":["../../src/config/mpa-wallet.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,eAAO,MAAM,yBAAyB,EAAG,kCAA2C,CAAC;AAErF,eAAO,MAAM,8BAA8B,EAAG,yBAAkC,CAAC;AAEjF,eAAO,MAAM,0BAA0B;;;;;CAK7B,CAAC;AAEX,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"mpa-wallet.d.ts","sourceRoot":"","sources":["../../src/config/mpa-wallet.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,eAAO,MAAM,yBAAyB,EAAG,kCAA2C,CAAC;AAErF,eAAO,MAAM,8BAA8B,EAAG,yBAAkC,CAAC;AAEjF,eAAO,MAAM,6BAA6B,EAAG,UAAmB,CAAC;AAEjE,eAAO,MAAM,0BAA0B;;;;;CAK7B,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4EtB,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAWtB,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/** MultiSignAgentWallet on Linea Mainnet (59144). */
|
|
2
2
|
export const LINEA_MAINNET_DEFAULT_RPC = 'https://linea-rpc.publicnode.com';
|
|
3
3
|
export const LINEA_MAINNET_DEFAULT_EXPLORER = 'https://lineascan.build';
|
|
4
|
+
export const KEY_GEN_ADDRESS_KIND_ETHEREUM = 'ethereum';
|
|
4
5
|
export const MPA_WALLET_CONTRACT_CONFIG = {
|
|
5
6
|
chainId: 59144,
|
|
6
7
|
contractAddress: '0x55aD6Df6d8f8824486C3fd3373f1CF29eCecF0A3',
|
|
@@ -9,45 +10,80 @@ export const MPA_WALLET_CONTRACT_CONFIG = {
|
|
|
9
10
|
};
|
|
10
11
|
export const MPA_WALLET_READ_ABI = [
|
|
11
12
|
{
|
|
12
|
-
inputs: [
|
|
13
|
-
|
|
13
|
+
inputs: [
|
|
14
|
+
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
15
|
+
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
16
|
+
{ name: 'billingAddress', type: 'address', internalType: 'address' },
|
|
17
|
+
],
|
|
18
|
+
name: 'isKeyGenRegistered',
|
|
14
19
|
outputs: [{ name: '', type: 'bool', internalType: 'bool' }],
|
|
15
20
|
stateMutability: 'view',
|
|
16
21
|
type: 'function',
|
|
17
22
|
},
|
|
18
23
|
{
|
|
19
|
-
inputs: [
|
|
20
|
-
|
|
24
|
+
inputs: [
|
|
25
|
+
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
26
|
+
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
27
|
+
{ name: 'billingAddress', type: 'address', internalType: 'address' },
|
|
28
|
+
],
|
|
29
|
+
name: 'getSubscriptionStatus',
|
|
21
30
|
outputs: [
|
|
22
|
-
{ name: '
|
|
23
|
-
{ name: '
|
|
24
|
-
{ name: '
|
|
25
|
-
{ name: '
|
|
26
|
-
{ name: '
|
|
31
|
+
{ name: 'registered', type: 'bool', internalType: 'bool' },
|
|
32
|
+
{ name: 'nodeKeyHash', type: 'bytes32', internalType: 'bytes32' },
|
|
33
|
+
{ name: 'paidThroughMonth', type: 'uint32', internalType: 'uint32' },
|
|
34
|
+
{ name: 'signatureCountAtMonthStart', type: 'uint256', internalType: 'uint256' },
|
|
35
|
+
{ name: 'nodeCreditBalance_', type: 'uint256', internalType: 'uint256' },
|
|
36
|
+
{ name: 'monthlyFee', type: 'uint256', internalType: 'uint256' },
|
|
37
|
+
{ name: 'freeSignaturesPerMonth', type: 'uint256', internalType: 'uint256' },
|
|
38
|
+
{ name: 'overageFeePerSignature', type: 'uint256', internalType: 'uint256' },
|
|
39
|
+
{ name: 'fundedForCurrentMonth', type: 'bool', internalType: 'bool' },
|
|
27
40
|
],
|
|
28
41
|
stateMutability: 'view',
|
|
29
42
|
type: 'function',
|
|
30
43
|
},
|
|
31
44
|
{
|
|
32
45
|
inputs: [
|
|
33
|
-
{ name: '
|
|
34
|
-
{ name: '
|
|
46
|
+
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
47
|
+
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
48
|
+
{ name: 'billingAddress', type: 'address', internalType: 'address' },
|
|
49
|
+
{ name: 'currentSignatureCount', type: 'uint256', internalType: 'uint256' },
|
|
35
50
|
],
|
|
36
|
-
name: '
|
|
51
|
+
name: 'getRemainingNonces',
|
|
37
52
|
outputs: [{ name: '', type: 'uint256', internalType: 'uint256' }],
|
|
38
53
|
stateMutability: 'view',
|
|
39
54
|
type: 'function',
|
|
40
55
|
},
|
|
41
56
|
{
|
|
42
57
|
inputs: [
|
|
43
|
-
{ name: '
|
|
44
|
-
{ name: '
|
|
58
|
+
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
59
|
+
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
60
|
+
{ name: 'billingAddress', type: 'address', internalType: 'address' },
|
|
45
61
|
],
|
|
46
|
-
name: '
|
|
62
|
+
name: 'getRequiredMinimumTopUp',
|
|
47
63
|
outputs: [{ name: '', type: 'uint256', internalType: 'uint256' }],
|
|
48
64
|
stateMutability: 'view',
|
|
49
65
|
type: 'function',
|
|
50
66
|
},
|
|
67
|
+
{
|
|
68
|
+
inputs: [
|
|
69
|
+
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
70
|
+
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
71
|
+
{ name: 'nodeKey', type: 'string', internalType: 'string' },
|
|
72
|
+
{ name: 'amount', type: 'uint256', internalType: 'uint256' },
|
|
73
|
+
{ name: 'globalNonceAtActivation', type: 'uint256', internalType: 'uint256' },
|
|
74
|
+
],
|
|
75
|
+
name: 'deposit',
|
|
76
|
+
outputs: [],
|
|
77
|
+
stateMutability: 'nonpayable',
|
|
78
|
+
type: 'function',
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
inputs: [],
|
|
82
|
+
name: 'FEE_TOKEN',
|
|
83
|
+
outputs: [{ name: '', type: 'address', internalType: 'address' }],
|
|
84
|
+
stateMutability: 'view',
|
|
85
|
+
type: 'function',
|
|
86
|
+
},
|
|
51
87
|
];
|
|
52
88
|
export const ERC20_ALLOWANCE_ABI = [
|
|
53
89
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mpa-wallet.js","sourceRoot":"","sources":["../../src/config/mpa-wallet.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,MAAM,CAAC,MAAM,yBAAyB,GAAG,kCAA2C,CAAC;AAErF,MAAM,CAAC,MAAM,8BAA8B,GAAG,yBAAkC,CAAC;AAEjF,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACzC,OAAO,EAAE,KAAK;IACd,eAAe,EAAE,4CAAqD;IACtE,MAAM,EAAE,yBAAyB;IACjC,gBAAgB,EAAE,8BAA8B;CACvC,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAAG;IAClC;QACC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"mpa-wallet.js","sourceRoot":"","sources":["../../src/config/mpa-wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,8 @@ export declare function getMpaWalletStatus(config: NodeSdkConfig, input: unknown
|
|
|
8
8
|
feeTokenSymbol?: string;
|
|
9
9
|
remainingNonces?: number;
|
|
10
10
|
globalNonce?: number;
|
|
11
|
+
requiredMinimumTopUpWei?: string;
|
|
12
|
+
monthlyFee?: string;
|
|
11
13
|
error?: string;
|
|
12
14
|
}>>;
|
|
13
15
|
export declare function createMpaTopUpMultiSignRequest(config: NodeSdkConfig, input: unknown): Promise<SdkResult<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mpa-top-up.d.ts","sourceRoot":"","sources":["../../../src/core/mpc/mpa-top-up.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"mpa-top-up.d.ts","sourceRoot":"","sources":["../../../src/core/mpc/mpa-top-up.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAO1D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAsC5C,wBAAsB,kBAAkB,CACvC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CACT,SAAS,CAAC;IACT,UAAU,EAAE,OAAO,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC,CACF,CA8GA;AAED,wBAAsB,8BAA8B,CACnD,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CAkHzC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createPublicClient, defineChain, formatUnits, getAddress, http, } from 'viem';
|
|
2
|
-
import { ERC20_ALLOWANCE_ABI, MPA_WALLET_CONTRACT_CONFIG, MPA_WALLET_READ_ABI, } from '../../config/mpa-wallet.js';
|
|
2
|
+
import { ERC20_ALLOWANCE_ABI, KEY_GEN_ADDRESS_KIND_ETHEREUM, MPA_WALLET_CONTRACT_CONFIG, MPA_WALLET_READ_ABI, } from '../../config/mpa-wallet.js';
|
|
3
3
|
import { MpaTopUpInputSchema, MpaWalletStatusInputSchema } from './schemas.js';
|
|
4
4
|
import { fetchGlobalNonceByKeyGenId, fetchKeyGenResult } from '../keygen.js';
|
|
5
|
+
import { nodeId } from '../general.js';
|
|
5
6
|
import { buildMultiSignProposal } from '../../evm/proposal-builder.js';
|
|
6
7
|
import { signAndSubmitMultiSignRequest } from './sign-request-body.js';
|
|
7
8
|
import { assertExecutorNativeSufficientForProposal } from './gas-preflight.js';
|
|
@@ -51,59 +52,47 @@ export async function getMpaWalletStatus(config, input) {
|
|
|
51
52
|
const globalNonceResult = await fetchGlobalNonceByKeyGenId(config, parsed.data.keyGenId);
|
|
52
53
|
const globalNonce = globalNonceResult.ok ? globalNonceResult.data : undefined;
|
|
53
54
|
const client = getMpaPublicClient();
|
|
54
|
-
const
|
|
55
|
+
const billingAddress = getAddress(eth.startsWith('0x') ? eth : `0x${eth}`);
|
|
55
56
|
const contractAddress = MPA_WALLET_CONTRACT_CONFIG.contractAddress;
|
|
57
|
+
const keyGenId = parsed.data.keyGenId;
|
|
56
58
|
try {
|
|
57
59
|
const registered = await client.readContract({
|
|
58
60
|
address: contractAddress,
|
|
59
61
|
abi: MPA_WALLET_READ_ABI,
|
|
60
|
-
functionName: '
|
|
61
|
-
args: [
|
|
62
|
+
functionName: 'isKeyGenRegistered',
|
|
63
|
+
args: [keyGenId, KEY_GEN_ADDRESS_KIND_ETHEREUM, billingAddress],
|
|
62
64
|
});
|
|
63
65
|
if (!registered) {
|
|
64
66
|
return { ok: true, data: { registered: false, globalNonce } };
|
|
65
67
|
}
|
|
66
|
-
const
|
|
68
|
+
const sub = await client.readContract({
|
|
67
69
|
address: contractAddress,
|
|
68
70
|
abi: MPA_WALLET_READ_ABI,
|
|
69
|
-
functionName: '
|
|
70
|
-
args: [
|
|
71
|
+
functionName: 'getSubscriptionStatus',
|
|
72
|
+
args: [keyGenId, KEY_GEN_ADDRESS_KIND_ETHEREUM, billingAddress],
|
|
71
73
|
});
|
|
74
|
+
const [, , , signatureCountAtMonthStart, nodeCreditBalance, monthlyFee, freeSignaturesPerMonth, , fundedForCurrentMonth] = sub;
|
|
72
75
|
const currentNonce = globalNonce ??
|
|
73
|
-
(await client.getTransactionCount({ address:
|
|
74
|
-
const
|
|
75
|
-
const freeLeft = Math.max(0, freeAllocation - currentNonce);
|
|
76
|
-
if (freeLeft > 0) {
|
|
77
|
-
const remainingNonces = await client.readContract({
|
|
78
|
-
address: contractAddress,
|
|
79
|
-
abi: MPA_WALLET_READ_ABI,
|
|
80
|
-
functionName: 'getRemainingNonces',
|
|
81
|
-
args: [keyGen, BigInt(currentNonce)],
|
|
82
|
-
});
|
|
83
|
-
return {
|
|
84
|
-
ok: true,
|
|
85
|
-
data: {
|
|
86
|
-
registered: true,
|
|
87
|
-
freeTransactionsLeft: freeLeft,
|
|
88
|
-
remainingNonces: Number(remainingNonces),
|
|
89
|
-
globalNonce: currentNonce,
|
|
90
|
-
},
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
const [remainingDepositRaw, remainingNonces] = await Promise.all([
|
|
76
|
+
(await client.getTransactionCount({ address: billingAddress, blockTag: 'pending' }));
|
|
77
|
+
const [remainingNonces, requiredTopUp] = await Promise.all([
|
|
94
78
|
client.readContract({
|
|
95
79
|
address: contractAddress,
|
|
96
80
|
abi: MPA_WALLET_READ_ABI,
|
|
97
|
-
functionName: '
|
|
98
|
-
args: [
|
|
81
|
+
functionName: 'getRemainingNonces',
|
|
82
|
+
args: [keyGenId, KEY_GEN_ADDRESS_KIND_ETHEREUM, billingAddress, BigInt(currentNonce)],
|
|
99
83
|
}),
|
|
100
84
|
client.readContract({
|
|
101
85
|
address: contractAddress,
|
|
102
86
|
abi: MPA_WALLET_READ_ABI,
|
|
103
|
-
functionName: '
|
|
104
|
-
args: [
|
|
87
|
+
functionName: 'getRequiredMinimumTopUp',
|
|
88
|
+
args: [keyGenId, KEY_GEN_ADDRESS_KIND_ETHEREUM, billingAddress],
|
|
105
89
|
}),
|
|
106
90
|
]);
|
|
91
|
+
const feeToken = await client.readContract({
|
|
92
|
+
address: contractAddress,
|
|
93
|
+
abi: MPA_WALLET_READ_ABI,
|
|
94
|
+
functionName: 'FEE_TOKEN',
|
|
95
|
+
});
|
|
107
96
|
const [symbol, decimals] = await Promise.all([
|
|
108
97
|
client.readContract({
|
|
109
98
|
address: feeToken,
|
|
@@ -117,15 +106,22 @@ export async function getMpaWalletStatus(config, input) {
|
|
|
117
106
|
}),
|
|
118
107
|
]);
|
|
119
108
|
const d = Number(decimals ?? 18);
|
|
109
|
+
const usedThisMonth = Math.max(0, currentNonce - Number(signatureCountAtMonthStart));
|
|
110
|
+
const freeLeft = fundedForCurrentMonth
|
|
111
|
+
? Math.max(0, Number(freeSignaturesPerMonth) - usedThisMonth)
|
|
112
|
+
: 0;
|
|
120
113
|
return {
|
|
121
114
|
ok: true,
|
|
122
115
|
data: {
|
|
123
116
|
registered: true,
|
|
124
|
-
freeTransactionsLeft:
|
|
125
|
-
remainingDeposit: (
|
|
117
|
+
freeTransactionsLeft: freeLeft,
|
|
118
|
+
remainingDeposit: formatUnits(nodeCreditBalance, d),
|
|
126
119
|
feeTokenSymbol: symbol ?? 'TOKEN',
|
|
127
120
|
remainingNonces: Number(remainingNonces),
|
|
128
121
|
globalNonce: currentNonce,
|
|
122
|
+
requiredMinimumTopUpWei: requiredTopUp.toString(),
|
|
123
|
+
monthlyFee: formatUnits(monthlyFee, d),
|
|
124
|
+
hasEverDeposited: nodeCreditBalance > 0n,
|
|
129
125
|
},
|
|
130
126
|
};
|
|
131
127
|
}
|
|
@@ -152,14 +148,33 @@ export async function createMpaTopUpMultiSignRequest(config, input) {
|
|
|
152
148
|
if (!eth) {
|
|
153
149
|
return { ok: false, reason: 'KeyGen has no ethereum address.' };
|
|
154
150
|
}
|
|
151
|
+
const nk = await nodeId(config);
|
|
152
|
+
if (!nk.ok)
|
|
153
|
+
return nk;
|
|
155
154
|
const client = getMpaPublicClient();
|
|
156
|
-
const
|
|
155
|
+
const billingAddress = getAddress(eth.startsWith('0x') ? eth : `0x${eth}`);
|
|
157
156
|
const mpa = MPA_WALLET_CONTRACT_CONFIG.contractAddress;
|
|
158
|
-
const
|
|
157
|
+
const keyGenId = parsed.data.keyGenId;
|
|
158
|
+
const sub = await client.readContract({
|
|
159
|
+
address: mpa,
|
|
160
|
+
abi: MPA_WALLET_READ_ABI,
|
|
161
|
+
functionName: 'getSubscriptionStatus',
|
|
162
|
+
args: [keyGenId, KEY_GEN_ADDRESS_KIND_ETHEREUM, billingAddress],
|
|
163
|
+
});
|
|
164
|
+
const monthlyFee = sub[5];
|
|
165
|
+
const [requiredTopUp, globalNonceResult] = await Promise.all([
|
|
166
|
+
client.readContract({
|
|
167
|
+
address: mpa,
|
|
168
|
+
abi: MPA_WALLET_READ_ABI,
|
|
169
|
+
functionName: 'getRequiredMinimumTopUp',
|
|
170
|
+
args: [keyGenId, KEY_GEN_ADDRESS_KIND_ETHEREUM, billingAddress],
|
|
171
|
+
}),
|
|
172
|
+
fetchGlobalNonceByKeyGenId(config, keyGenId),
|
|
173
|
+
]);
|
|
174
|
+
const feeToken = await client.readContract({
|
|
159
175
|
address: mpa,
|
|
160
176
|
abi: MPA_WALLET_READ_ABI,
|
|
161
|
-
functionName: '
|
|
162
|
-
args: [keyGen],
|
|
177
|
+
functionName: 'FEE_TOKEN',
|
|
163
178
|
});
|
|
164
179
|
const decimals = await client.readContract({
|
|
165
180
|
address: feeToken,
|
|
@@ -167,17 +182,19 @@ export async function createMpaTopUpMultiSignRequest(config, input) {
|
|
|
167
182
|
functionName: 'decimals',
|
|
168
183
|
});
|
|
169
184
|
const amountWei = BigInt(parsed.data.amountWei);
|
|
170
|
-
|
|
185
|
+
const minWei = requiredTopUp > 0n ? requiredTopUp : monthlyFee;
|
|
186
|
+
if (amountWei < minWei) {
|
|
171
187
|
return {
|
|
172
188
|
ok: false,
|
|
173
|
-
reason: `Amount below minimum
|
|
189
|
+
reason: `Amount below required minimum top-up (${formatUnits(minWei, Number(decimals ?? 18))}).`,
|
|
174
190
|
};
|
|
175
191
|
}
|
|
192
|
+
const globalNonceAtActivation = globalNonceResult.ok ? globalNonceResult.data : 0;
|
|
176
193
|
const allowance = await client.readContract({
|
|
177
194
|
address: feeToken,
|
|
178
195
|
abi: ERC20_ALLOWANCE_ABI,
|
|
179
196
|
functionName: 'allowance',
|
|
180
|
-
args: [
|
|
197
|
+
args: [billingAddress, mpa],
|
|
181
198
|
});
|
|
182
199
|
const actions = [];
|
|
183
200
|
if (allowance < amountWei) {
|
|
@@ -191,11 +208,14 @@ export async function createMpaTopUpMultiSignRequest(config, input) {
|
|
|
191
208
|
});
|
|
192
209
|
}
|
|
193
210
|
actions.push({
|
|
194
|
-
signature: 'deposit(
|
|
211
|
+
signature: 'deposit(string,string,string,uint256,uint256)',
|
|
195
212
|
contractAddress: mpa,
|
|
196
213
|
args: [
|
|
197
|
-
{ name: '
|
|
214
|
+
{ name: 'keyGenId', type: 'string', value: keyGenId },
|
|
215
|
+
{ name: 'addressKind', type: 'string', value: KEY_GEN_ADDRESS_KIND_ETHEREUM },
|
|
216
|
+
{ name: 'nodeKey', type: 'string', value: nk.data.nodeId },
|
|
198
217
|
{ name: 'amount', type: 'uint256', value: amountWei.toString() },
|
|
218
|
+
{ name: 'globalNonceAtActivation', type: 'uint256', value: String(globalNonceAtActivation) },
|
|
199
219
|
],
|
|
200
220
|
});
|
|
201
221
|
const built = await buildMultiSignProposal(config, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mpa-top-up.js","sourceRoot":"","sources":["../../../src/core/mpc/mpa-top-up.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,UAAU,EACV,IAAI,GAEJ,MAAM,MAAM,CAAC;AAEd,OAAO,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,GACnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAC,mBAAmB,EAAE,0BAA0B,EAAC,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAC,0BAA0B,EAAE,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,6BAA6B,EAAC,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAC,yCAAyC,EAAC,MAAM,oBAAoB,CAAC;AAE7E,MAAM,yBAAyB,GAAG;IACjC;QACC,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,EAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAC,CAAC;QAC7D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KAChB;IACD;QACC,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,CAAC,EAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAC,CAAC;QAC3D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KAChB;CACQ,CAAC;AAEX,SAAS,kBAAkB;IAC1B,MAAM,KAAK,GAAG,WAAW,CAAC;QACzB,EAAE,EAAE,0BAA0B,CAAC,OAAO;QACtC,IAAI,EAAE,eAAe;QACrB,cAAc,EAAE,EAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAC;QAC5D,OAAO,EAAE,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC,EAAC,EAAC;KAC/D,CAAC,CAAC;IACH,OAAO,kBAAkB,CAAC;QACzB,KAAK;QACL,SAAS,EAAE,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC;KAClD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,MAAqB,EACrB,KAAc;
|
|
1
|
+
{"version":3,"file":"mpa-top-up.js","sourceRoot":"","sources":["../../../src/core/mpc/mpa-top-up.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,UAAU,EACV,IAAI,GAEJ,MAAM,MAAM,CAAC;AAEd,OAAO,EACN,mBAAmB,EACnB,6BAA6B,EAC7B,0BAA0B,EAC1B,mBAAmB,GACnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAC,mBAAmB,EAAE,0BAA0B,EAAC,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAC,0BAA0B,EAAE,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,6BAA6B,EAAC,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAC,yCAAyC,EAAC,MAAM,oBAAoB,CAAC;AAE7E,MAAM,yBAAyB,GAAG;IACjC;QACC,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,EAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAC,CAAC;QAC7D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KAChB;IACD;QACC,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,CAAC,EAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAC,CAAC;QAC3D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KAChB;CACQ,CAAC;AAEX,SAAS,kBAAkB;IAC1B,MAAM,KAAK,GAAG,WAAW,CAAC;QACzB,EAAE,EAAE,0BAA0B,CAAC,OAAO;QACtC,IAAI,EAAE,eAAe;QACrB,cAAc,EAAE,EAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAC;QAC5D,OAAO,EAAE,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC,EAAC,EAAC;KAC/D,CAAC,CAAC;IACH,OAAO,kBAAkB,CAAC;QACzB,KAAK;QACL,SAAS,EAAE,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC;KAClD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,MAAqB,EACrB,KAAc;IAed,MAAM,MAAM,GAAG,0BAA0B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,kCAAkC;SAC7E,CAAC;IACH,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjE,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;IAC5C,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,OAAO,EAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iCAAiC,EAAC,CAAC;IAC/D,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzF,MAAM,WAAW,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9E,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAY,CAAC;IACtF,MAAM,eAAe,GAAG,0BAA0B,CAAC,eAA0B,CAAC;IAC9E,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;IAEtC,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;YAC5C,OAAO,EAAE,eAAe;YACxB,GAAG,EAAE,mBAAmB;YACxB,YAAY,EAAE,oBAAoB;YAClC,IAAI,EAAE,CAAC,QAAQ,EAAE,6BAA6B,EAAE,cAAc,CAAC;SAC/D,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,OAAO,EAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAC,UAAU,EAAE,KAAK,EAAE,WAAW,EAAC,EAAC,CAAC;QAC3D,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;YACrC,OAAO,EAAE,eAAe;YACxB,GAAG,EAAE,mBAAmB;YACxB,YAAY,EAAE,uBAAuB;YACrC,IAAI,EAAE,CAAC,QAAQ,EAAE,6BAA6B,EAAE,cAAc,CAAC;SAC/D,CAAC,CAAC;QACH,MAAM,CAAC,EAAE,AAAD,EAAG,AAAD,EAAG,0BAA0B,EAAE,iBAAiB,EAAE,UAAU,EAAE,sBAAsB,EAAE,AAAD,EAAG,qBAAqB,CAAC,GAAG,GAAG,CAAC;QAE/H,MAAM,YAAY,GACjB,WAAW;YACX,CAAC,MAAM,MAAM,CAAC,mBAAmB,CAAC,EAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAC,CAAC,CAAC,CAAC;QAEpF,MAAM,CAAC,eAAe,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1D,MAAM,CAAC,YAAY,CAAC;gBACnB,OAAO,EAAE,eAAe;gBACxB,GAAG,EAAE,mBAAmB;gBACxB,YAAY,EAAE,oBAAoB;gBAClC,IAAI,EAAE,CAAC,QAAQ,EAAE,6BAA6B,EAAE,cAAc,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;aACrF,CAAC;YACF,MAAM,CAAC,YAAY,CAAC;gBACnB,OAAO,EAAE,eAAe;gBACxB,GAAG,EAAE,mBAAmB;gBACxB,YAAY,EAAE,yBAAyB;gBACvC,IAAI,EAAE,CAAC,QAAQ,EAAE,6BAA6B,EAAE,cAAc,CAAC;aAC/D,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;YAC1C,OAAO,EAAE,eAAe;YACxB,GAAG,EAAE,mBAAmB;YACxB,YAAY,EAAE,WAAW;SACzB,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC5C,MAAM,CAAC,YAAY,CAAC;gBACnB,OAAO,EAAE,QAAQ;gBACjB,GAAG,EAAE,yBAAyB;gBAC9B,YAAY,EAAE,QAAQ;aACtB,CAAC;YACF,MAAM,CAAC,YAAY,CAAC;gBACnB,OAAO,EAAE,QAAQ;gBACjB,GAAG,EAAE,yBAAyB;gBAC9B,YAAY,EAAE,UAAU;aACxB,CAAC;SACF,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAEjC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrF,MAAM,QAAQ,GAAG,qBAAqB;YACrC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,sBAAsB,CAAC,GAAG,aAAa,CAAC;YAC7D,CAAC,CAAC,CAAC,CAAC;QAEL,OAAO;YACN,EAAE,EAAE,IAAI;YACR,IAAI,EAAE;gBACL,UAAU,EAAE,IAAI;gBAChB,oBAAoB,EAAE,QAAQ;gBAC9B,gBAAgB,EAAE,WAAW,CAAC,iBAAiB,EAAE,CAAC,CAAC;gBACnD,cAAc,EAAE,MAAM,IAAI,OAAO;gBACjC,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC;gBACxC,WAAW,EAAE,YAAY;gBACzB,uBAAuB,EAAE,aAAa,CAAC,QAAQ,EAAE;gBACjD,UAAU,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC;gBACtC,gBAAgB,EAAE,iBAAiB,GAAG,EAAE;aACxC;SACD,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,OAAO;YACN,EAAE,EAAE,IAAI;YACR,IAAI,EAAE;gBACL,UAAU,EAAE,KAAK;gBACjB,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,kCAAkC;gBAC1E,WAAW;aACX;SACD,CAAC;IACH,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CACnD,MAAqB,EACrB,KAAc;IAEd,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,EAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,2BAA2B,EAAC,CAAC;IACzD,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjE,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;IAC5C,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,OAAO,EAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iCAAiC,EAAC,CAAC;IAC/D,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IAEtB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAY,CAAC;IACtF,MAAM,GAAG,GAAG,0BAA0B,CAAC,eAA0B,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;IAEtC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QACrC,OAAO,EAAE,GAAG;QACZ,GAAG,EAAE,mBAAmB;QACxB,YAAY,EAAE,uBAAuB;QACrC,IAAI,EAAE,CAAC,QAAQ,EAAE,6BAA6B,EAAE,cAAc,CAAC;KAC/D,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAE1B,MAAM,CAAC,aAAa,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC5D,MAAM,CAAC,YAAY,CAAC;YACnB,OAAO,EAAE,GAAG;YACZ,GAAG,EAAE,mBAAmB;YACxB,YAAY,EAAE,yBAAyB;YACvC,IAAI,EAAE,CAAC,QAAQ,EAAE,6BAA6B,EAAE,cAAc,CAAC;SAC/D,CAAC;QACF,0BAA0B,CAAC,MAAM,EAAE,QAAQ,CAAC;KAC5C,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QAC1C,OAAO,EAAE,GAAG;QACZ,GAAG,EAAE,mBAAmB;QACxB,YAAY,EAAE,WAAW;KACzB,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QAC1C,OAAO,EAAE,QAAQ;QACjB,GAAG,EAAE,yBAAyB;QAC9B,YAAY,EAAE,UAAU;KACxB,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,aAAa,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;IAC/D,IAAI,SAAS,GAAG,MAAM,EAAE,CAAC;QACxB,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,yCAAyC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI;SAChG,CAAC;IACH,CAAC;IAED,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAElF,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QAC3C,OAAO,EAAE,QAAQ;QACjB,GAAG,EAAE,mBAAmB;QACxB,YAAY,EAAE,WAAW;QACzB,IAAI,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC;KAC3B,CAAC,CAAC;IAEH,MAAM,OAAO,GAIP,EAAE,CAAC;IAET,IAAI,SAAS,GAAG,SAAS,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC;YACZ,SAAS,EAAE,0BAA0B;YACrC,eAAe,EAAE,QAAQ;YACzB,IAAI,EAAE;gBACL,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAC;gBAC9C,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAC;aAC9D;SACD,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,IAAI,CAAC;QACZ,SAAS,EAAE,+CAA+C;QAC1D,eAAe,EAAE,GAAG;QACpB,IAAI,EAAE;YACL,EAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAC;YACnD,EAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,6BAA6B,EAAC;YAC3E,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAC;YACxD,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAC;YAC9D,EAAC,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,uBAAuB,CAAC,EAAC;SAC1F;KACD,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE;QAClD,YAAY,EAAE,EAAE,CAAC,IAAI;QACrB,OAAO,EAAE,0BAA0B,CAAC,OAAO;QAC3C,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,4BAA4B;QAC5D,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY;QACtC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa;QACxC,OAAO;KACP,CAAC,CAAC;IACH,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAE5B,MAAM,SAAS,GAAG,MAAM,yCAAyC,CAAC,MAAM,EAAE;QACzE,YAAY,EAAE,EAAE,CAAC,IAAI;QACrB,OAAO,EAAE,0BAA0B,CAAC,OAAO;QAC3C,QAAQ,EAAE,KAAK,CAAC,IAAI;KACpB,CAAC,CAAC;IACH,IAAI,CAAC,SAAS,CAAC,EAAE;QAAE,OAAO,SAAS,CAAC;IAEpC,OAAO,6BAA6B,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-keygen.d.ts","sourceRoot":"","sources":["../../../src/core/mpc/register-keygen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"register-keygen.d.ts","sourceRoot":"","sources":["../../../src/core/mpc/register-keygen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAK1D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAU5C,wBAAsB,qBAAqB,CAC1C,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CAwCzC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { MPA_WALLET_CONTRACT_CONFIG } from '../../config/mpa-wallet.js';
|
|
1
|
+
import { KEY_GEN_ADDRESS_KIND_ETHEREUM, MPA_WALLET_CONTRACT_CONFIG, } from '../../config/mpa-wallet.js';
|
|
2
2
|
import { RegisterKeyGenInputSchema } from './schemas.js';
|
|
3
3
|
import { fetchKeyGenResult } from '../keygen.js';
|
|
4
|
+
import { nodeId } from '../general.js';
|
|
4
5
|
import { buildMultiSignProposal } from '../../evm/proposal-builder.js';
|
|
5
6
|
import { signAndSubmitMultiSignRequest } from './sign-request-body.js';
|
|
6
7
|
import { assertExecutorNativeSufficientForProposal } from './gas-preflight.js';
|
|
@@ -13,6 +14,9 @@ export async function registerKeyGenOnLinea(config, input) {
|
|
|
13
14
|
const kg = await fetchKeyGenResult(config, parsed.data.keyGenId);
|
|
14
15
|
if (!kg.ok)
|
|
15
16
|
return kg;
|
|
17
|
+
const nk = await nodeId(config);
|
|
18
|
+
if (!nk.ok)
|
|
19
|
+
return nk;
|
|
16
20
|
const built = await buildMultiSignProposal(config, {
|
|
17
21
|
keyGenResult: kg.data,
|
|
18
22
|
chainId: MPA_WALLET_CONTRACT_CONFIG.chainId,
|
|
@@ -21,9 +25,13 @@ export async function registerKeyGenOnLinea(config, input) {
|
|
|
21
25
|
startingNonce: parsed.data.startingNonce,
|
|
22
26
|
actions: [
|
|
23
27
|
{
|
|
24
|
-
signature: 'register()',
|
|
28
|
+
signature: 'register(string,string,string)',
|
|
25
29
|
contractAddress: MPA_WALLET_CONTRACT_CONFIG.contractAddress,
|
|
26
|
-
args: [
|
|
30
|
+
args: [
|
|
31
|
+
{ name: 'keyGenId', type: 'string', value: parsed.data.keyGenId },
|
|
32
|
+
{ name: 'addressKind', type: 'string', value: KEY_GEN_ADDRESS_KIND_ETHEREUM },
|
|
33
|
+
{ name: 'nodeKey', type: 'string', value: nk.data.nodeId },
|
|
34
|
+
],
|
|
27
35
|
},
|
|
28
36
|
],
|
|
29
37
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-keygen.js","sourceRoot":"","sources":["../../../src/core/mpc/register-keygen.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"register-keygen.js","sourceRoot":"","sources":["../../../src/core/mpc/register-keygen.ts"],"names":[],"mappings":"AACA,OAAO,EACN,6BAA6B,EAC7B,0BAA0B,GAC1B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AACvD,OAAO,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,6BAA6B,EAAC,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAC,yCAAyC,EAAC,MAAM,oBAAoB,CAAC;AAE7E,MAAM,gBAAgB,GAAG,oDAAoD,CAAC;AAE9E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,MAAqB,EACrB,KAAc;IAEd,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,EAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,gCAAgC,EAAC,CAAC;IAC9D,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjE,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IAEtB,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IAEtB,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE;QAClD,YAAY,EAAE,EAAE,CAAC,IAAI;QACrB,OAAO,EAAE,0BAA0B,CAAC,OAAO;QAC3C,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,gBAAgB;QAChD,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY;QACtC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa;QACxC,OAAO,EAAE;YACR;gBACC,SAAS,EAAE,gCAAgC;gBAC3C,eAAe,EAAE,0BAA0B,CAAC,eAAe;gBAC3D,IAAI,EAAE;oBACL,EAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAC;oBAC/D,EAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,6BAA6B,EAAC;oBAC3E,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAC;iBACxD;aACD;SACD;KACD,CAAC,CAAC;IACH,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAE5B,MAAM,SAAS,GAAG,MAAM,yCAAyC,CAAC,MAAM,EAAE;QACzE,YAAY,EAAE,EAAE,CAAC,IAAI;QACrB,OAAO,EAAE,0BAA0B,CAAC,OAAO;QAC3C,QAAQ,EAAE,KAAK,CAAC,IAAI;KACpB,CAAC,CAAC;IACH,IAAI,CAAC,SAAS,CAAC,EAAE;QAAE,OAAO,SAAS,CAAC;IAEpC,OAAO,6BAA6B,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACvE,CAAC"}
|
package/package.json
CHANGED