@continuumdao/continuum-node-sdk 1.2.28 → 1.2.29
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 +60 -29
- package/dist/config/mpa-wallet.d.ts.map +1 -1
- package/dist/config/mpa-wallet.js +35 -13
- package/dist/config/mpa-wallet.js.map +1 -1
- package/dist/config/paths.d.ts +2 -0
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +12 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/core/mpc/mpa-billing-ops.d.ts +29 -0
- package/dist/core/mpc/mpa-billing-ops.d.ts.map +1 -0
- package/dist/core/mpc/mpa-billing-ops.js +473 -0
- package/dist/core/mpc/mpa-billing-ops.js.map +1 -0
- package/dist/core/mpc/mpa-top-up.d.ts.map +1 -1
- package/dist/core/mpc/mpa-top-up.js +17 -25
- 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 +1 -6
- package/dist/core/mpc/register-keygen.js.map +1 -1
- package/dist/core/mpc/schemas.d.ts +47 -0
- package/dist/core/mpc/schemas.d.ts.map +1 -1
- package/dist/core/mpc/schemas.js +35 -0
- package/dist/core/mpc/schemas.js.map +1 -1
- package/dist/core/vpn/schemas.d.ts +181 -0
- package/dist/core/vpn/schemas.d.ts.map +1 -0
- package/dist/core/vpn/schemas.js +112 -0
- package/dist/core/vpn/schemas.js.map +1 -0
- package/dist/core/vpn/vpn-admin.d.ts +22 -0
- package/dist/core/vpn/vpn-admin.d.ts.map +1 -0
- package/dist/core/vpn/vpn-admin.js +88 -0
- package/dist/core/vpn/vpn-admin.js.map +1 -0
- package/dist/core/vpn/vpn-egress.d.ts +30 -0
- package/dist/core/vpn/vpn-egress.d.ts.map +1 -0
- package/dist/core/vpn/vpn-egress.js +91 -0
- package/dist/core/vpn/vpn-egress.js.map +1 -0
- package/dist/core/vpn/vpn-files.d.ts +14 -0
- package/dist/core/vpn/vpn-files.d.ts.map +1 -0
- package/dist/core/vpn/vpn-files.js +32 -0
- package/dist/core/vpn/vpn-files.js.map +1 -0
- package/dist/core/vpn/vpn-host-binding.d.ts +4 -0
- package/dist/core/vpn/vpn-host-binding.d.ts.map +1 -0
- package/dist/core/vpn/vpn-host-binding.js +6 -0
- package/dist/core/vpn/vpn-host-binding.js.map +1 -0
- package/dist/core/vpn/vpn-parse.d.ts +115 -0
- package/dist/core/vpn/vpn-parse.d.ts.map +1 -0
- package/dist/core/vpn/vpn-parse.js +238 -0
- package/dist/core/vpn/vpn-parse.js.map +1 -0
- package/dist/core/vpn/vpn-signed.d.ts +13 -0
- package/dist/core/vpn/vpn-signed.d.ts.map +1 -0
- package/dist/core/vpn/vpn-signed.js +39 -0
- package/dist/core/vpn/vpn-signed.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -1
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/mpc.d.ts.map +1 -1
- package/dist/mcp/mpc.js +33 -2
- package/dist/mcp/mpc.js.map +1 -1
- package/dist/mcp/register.d.ts +1 -0
- package/dist/mcp/register.d.ts.map +1 -1
- package/dist/mcp/register.js +4 -0
- package/dist/mcp/register.js.map +1 -1
- package/dist/mcp/vpn.d.ts +4 -0
- package/dist/mcp/vpn.d.ts.map +1 -0
- package/dist/mcp/vpn.js +107 -0
- package/dist/mcp/vpn.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
/** MultiSignAgentWallet on Linea Mainnet (59144). */
|
|
1
|
+
/** MultiSignAgentWallet on Linea Mainnet (59144). Must match mpc-auth fee_params.go and continuumdao-node-app. */
|
|
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
4
|
export declare const KEY_GEN_ADDRESS_KIND_ETHEREUM: "ethereum";
|
|
5
|
+
/** Deposit without month activation (contract sentinel). */
|
|
6
|
+
export declare const MPA_DEPOSIT_ONLY_NONCE: string;
|
|
5
7
|
export declare const MPA_WALLET_CONTRACT_CONFIG: {
|
|
6
8
|
readonly chainId: 59144;
|
|
7
|
-
readonly contractAddress: "
|
|
9
|
+
readonly contractAddress: "0x7B651B7a0fa2b0ae56B4A1099F1Ca19De849e39B";
|
|
8
10
|
readonly rpcUrl: "https://linea-rpc.publicnode.com";
|
|
9
11
|
readonly blockExplorerUrl: "https://lineascan.build";
|
|
10
12
|
};
|
|
13
|
+
/** MkII MultiSignAgentWallet read ABI (no billingAddress). */
|
|
11
14
|
export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
12
15
|
readonly inputs: readonly [{
|
|
13
16
|
readonly name: "keyGenId";
|
|
@@ -17,10 +20,6 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
17
20
|
readonly name: "addressKind";
|
|
18
21
|
readonly type: "string";
|
|
19
22
|
readonly internalType: "string";
|
|
20
|
-
}, {
|
|
21
|
-
readonly name: "billingAddress";
|
|
22
|
-
readonly type: "address";
|
|
23
|
-
readonly internalType: "address";
|
|
24
23
|
}];
|
|
25
24
|
readonly name: "isKeyGenRegistered";
|
|
26
25
|
readonly outputs: readonly [{
|
|
@@ -39,20 +38,12 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
39
38
|
readonly name: "addressKind";
|
|
40
39
|
readonly type: "string";
|
|
41
40
|
readonly internalType: "string";
|
|
42
|
-
}, {
|
|
43
|
-
readonly name: "billingAddress";
|
|
44
|
-
readonly type: "address";
|
|
45
|
-
readonly internalType: "address";
|
|
46
41
|
}];
|
|
47
42
|
readonly name: "getSubscriptionStatus";
|
|
48
43
|
readonly outputs: readonly [{
|
|
49
44
|
readonly name: "registered";
|
|
50
45
|
readonly type: "bool";
|
|
51
46
|
readonly internalType: "bool";
|
|
52
|
-
}, {
|
|
53
|
-
readonly name: "nodeKeyHash";
|
|
54
|
-
readonly type: "bytes32";
|
|
55
|
-
readonly internalType: "bytes32";
|
|
56
47
|
}, {
|
|
57
48
|
readonly name: "paidThroughMonth";
|
|
58
49
|
readonly type: "uint32";
|
|
@@ -62,7 +53,7 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
62
53
|
readonly type: "uint256";
|
|
63
54
|
readonly internalType: "uint256";
|
|
64
55
|
}, {
|
|
65
|
-
readonly name: "
|
|
56
|
+
readonly name: "keyGenCreditBalance_";
|
|
66
57
|
readonly type: "uint256";
|
|
67
58
|
readonly internalType: "uint256";
|
|
68
59
|
}, {
|
|
@@ -81,6 +72,10 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
81
72
|
readonly name: "fundedForCurrentMonth";
|
|
82
73
|
readonly type: "bool";
|
|
83
74
|
readonly internalType: "bool";
|
|
75
|
+
}, {
|
|
76
|
+
readonly name: "purchasedOverageSignatures";
|
|
77
|
+
readonly type: "uint256";
|
|
78
|
+
readonly internalType: "uint256";
|
|
84
79
|
}];
|
|
85
80
|
readonly stateMutability: "view";
|
|
86
81
|
readonly type: "function";
|
|
@@ -93,10 +88,6 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
93
88
|
readonly name: "addressKind";
|
|
94
89
|
readonly type: "string";
|
|
95
90
|
readonly internalType: "string";
|
|
96
|
-
}, {
|
|
97
|
-
readonly name: "billingAddress";
|
|
98
|
-
readonly type: "address";
|
|
99
|
-
readonly internalType: "address";
|
|
100
91
|
}, {
|
|
101
92
|
readonly name: "currentSignatureCount";
|
|
102
93
|
readonly type: "uint256";
|
|
@@ -119,10 +110,6 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
119
110
|
readonly name: "addressKind";
|
|
120
111
|
readonly type: "string";
|
|
121
112
|
readonly internalType: "string";
|
|
122
|
-
}, {
|
|
123
|
-
readonly name: "billingAddress";
|
|
124
|
-
readonly type: "address";
|
|
125
|
-
readonly internalType: "address";
|
|
126
113
|
}];
|
|
127
114
|
readonly name: "getRequiredMinimumTopUp";
|
|
128
115
|
readonly outputs: readonly [{
|
|
@@ -141,22 +128,66 @@ export declare const MPA_WALLET_READ_ABI: readonly [{
|
|
|
141
128
|
readonly name: "addressKind";
|
|
142
129
|
readonly type: "string";
|
|
143
130
|
readonly internalType: "string";
|
|
144
|
-
}
|
|
131
|
+
}];
|
|
132
|
+
readonly name: "getKeyGenWithdrawAuthority";
|
|
133
|
+
readonly outputs: readonly [{
|
|
134
|
+
readonly name: "";
|
|
135
|
+
readonly type: "address";
|
|
136
|
+
readonly internalType: "address";
|
|
137
|
+
}];
|
|
138
|
+
readonly stateMutability: "view";
|
|
139
|
+
readonly type: "function";
|
|
140
|
+
}, {
|
|
141
|
+
readonly inputs: readonly [{
|
|
145
142
|
readonly name: "nodeKey";
|
|
146
143
|
readonly type: "string";
|
|
147
144
|
readonly internalType: "string";
|
|
148
145
|
}, {
|
|
149
|
-
readonly name: "
|
|
146
|
+
readonly name: "hostBinding";
|
|
147
|
+
readonly type: "bytes32";
|
|
148
|
+
readonly internalType: "bytes32";
|
|
149
|
+
}];
|
|
150
|
+
readonly name: "getVpnSubscriptionStatus";
|
|
151
|
+
readonly outputs: readonly [{
|
|
152
|
+
readonly name: "registered";
|
|
153
|
+
readonly type: "bool";
|
|
154
|
+
readonly internalType: "bool";
|
|
155
|
+
}, {
|
|
156
|
+
readonly name: "paidThroughMonth";
|
|
157
|
+
readonly type: "uint32";
|
|
158
|
+
readonly internalType: "uint32";
|
|
159
|
+
}, {
|
|
160
|
+
readonly name: "vpnCreditBalance_";
|
|
150
161
|
readonly type: "uint256";
|
|
151
162
|
readonly internalType: "uint256";
|
|
152
163
|
}, {
|
|
153
|
-
readonly name: "
|
|
164
|
+
readonly name: "vpnMonthlyFee";
|
|
154
165
|
readonly type: "uint256";
|
|
155
166
|
readonly internalType: "uint256";
|
|
167
|
+
}, {
|
|
168
|
+
readonly name: "fundedForCurrentMonth";
|
|
169
|
+
readonly type: "bool";
|
|
170
|
+
readonly internalType: "bool";
|
|
156
171
|
}];
|
|
157
|
-
readonly
|
|
158
|
-
readonly
|
|
159
|
-
|
|
172
|
+
readonly stateMutability: "view";
|
|
173
|
+
readonly type: "function";
|
|
174
|
+
}, {
|
|
175
|
+
readonly inputs: readonly [{
|
|
176
|
+
readonly name: "nodeKey";
|
|
177
|
+
readonly type: "string";
|
|
178
|
+
readonly internalType: "string";
|
|
179
|
+
}, {
|
|
180
|
+
readonly name: "hostBinding";
|
|
181
|
+
readonly type: "bytes32";
|
|
182
|
+
readonly internalType: "bytes32";
|
|
183
|
+
}];
|
|
184
|
+
readonly name: "getVpnWithdrawAuthority";
|
|
185
|
+
readonly outputs: readonly [{
|
|
186
|
+
readonly name: "";
|
|
187
|
+
readonly type: "address";
|
|
188
|
+
readonly internalType: "address";
|
|
189
|
+
}];
|
|
190
|
+
readonly stateMutability: "view";
|
|
160
191
|
readonly type: "function";
|
|
161
192
|
}, {
|
|
162
193
|
readonly inputs: readonly [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mpa-wallet.d.ts","sourceRoot":"","sources":["../../src/config/mpa-wallet.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"mpa-wallet.d.ts","sourceRoot":"","sources":["../../src/config/mpa-wallet.ts"],"names":[],"mappings":"AAAA,kHAAkH;AAClH,eAAO,MAAM,yBAAyB,EAAG,kCAA2C,CAAC;AAErF,eAAO,MAAM,8BAA8B,EAAG,yBAAkC,CAAC;AAEjF,eAAO,MAAM,6BAA6B,EAAG,UAAmB,CAAC;AAEjE,4DAA4D;AAC5D,eAAO,MAAM,sBAAsB,QAA+B,CAAC;AAEnE,eAAO,MAAM,0BAA0B;;;;;CAK7B,CAAC;AAEX,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+FtB,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAWtB,CAAC"}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
|
-
/** MultiSignAgentWallet on Linea Mainnet (59144). */
|
|
1
|
+
/** MultiSignAgentWallet on Linea Mainnet (59144). Must match mpc-auth fee_params.go and continuumdao-node-app. */
|
|
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
4
|
export const KEY_GEN_ADDRESS_KIND_ETHEREUM = 'ethereum';
|
|
5
|
+
/** Deposit without month activation (contract sentinel). */
|
|
6
|
+
export const MPA_DEPOSIT_ONLY_NONCE = (2n ** 256n - 1n).toString();
|
|
5
7
|
export const MPA_WALLET_CONTRACT_CONFIG = {
|
|
6
8
|
chainId: 59144,
|
|
7
|
-
contractAddress: '
|
|
9
|
+
contractAddress: '0x7B651B7a0fa2b0ae56B4A1099F1Ca19De849e39B',
|
|
8
10
|
rpcUrl: LINEA_MAINNET_DEFAULT_RPC,
|
|
9
11
|
blockExplorerUrl: LINEA_MAINNET_DEFAULT_EXPLORER,
|
|
10
12
|
};
|
|
13
|
+
/** MkII MultiSignAgentWallet read ABI (no billingAddress). */
|
|
11
14
|
export const MPA_WALLET_READ_ABI = [
|
|
12
15
|
{
|
|
13
16
|
inputs: [
|
|
14
17
|
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
15
18
|
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
16
|
-
{ name: 'billingAddress', type: 'address', internalType: 'address' },
|
|
17
19
|
],
|
|
18
20
|
name: 'isKeyGenRegistered',
|
|
19
21
|
outputs: [{ name: '', type: 'bool', internalType: 'bool' }],
|
|
@@ -24,19 +26,18 @@ export const MPA_WALLET_READ_ABI = [
|
|
|
24
26
|
inputs: [
|
|
25
27
|
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
26
28
|
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
27
|
-
{ name: 'billingAddress', type: 'address', internalType: 'address' },
|
|
28
29
|
],
|
|
29
30
|
name: 'getSubscriptionStatus',
|
|
30
31
|
outputs: [
|
|
31
32
|
{ name: 'registered', type: 'bool', internalType: 'bool' },
|
|
32
|
-
{ name: 'nodeKeyHash', type: 'bytes32', internalType: 'bytes32' },
|
|
33
33
|
{ name: 'paidThroughMonth', type: 'uint32', internalType: 'uint32' },
|
|
34
34
|
{ name: 'signatureCountAtMonthStart', type: 'uint256', internalType: 'uint256' },
|
|
35
|
-
{ name: '
|
|
35
|
+
{ name: 'keyGenCreditBalance_', type: 'uint256', internalType: 'uint256' },
|
|
36
36
|
{ name: 'monthlyFee', type: 'uint256', internalType: 'uint256' },
|
|
37
37
|
{ name: 'freeSignaturesPerMonth', type: 'uint256', internalType: 'uint256' },
|
|
38
38
|
{ name: 'overageFeePerSignature', type: 'uint256', internalType: 'uint256' },
|
|
39
39
|
{ name: 'fundedForCurrentMonth', type: 'bool', internalType: 'bool' },
|
|
40
|
+
{ name: 'purchasedOverageSignatures', type: 'uint256', internalType: 'uint256' },
|
|
40
41
|
],
|
|
41
42
|
stateMutability: 'view',
|
|
42
43
|
type: 'function',
|
|
@@ -45,7 +46,6 @@ export const MPA_WALLET_READ_ABI = [
|
|
|
45
46
|
inputs: [
|
|
46
47
|
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
47
48
|
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
48
|
-
{ name: 'billingAddress', type: 'address', internalType: 'address' },
|
|
49
49
|
{ name: 'currentSignatureCount', type: 'uint256', internalType: 'uint256' },
|
|
50
50
|
],
|
|
51
51
|
name: 'getRemainingNonces',
|
|
@@ -57,7 +57,6 @@ export const MPA_WALLET_READ_ABI = [
|
|
|
57
57
|
inputs: [
|
|
58
58
|
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
59
59
|
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
60
|
-
{ name: 'billingAddress', type: 'address', internalType: 'address' },
|
|
61
60
|
],
|
|
62
61
|
name: 'getRequiredMinimumTopUp',
|
|
63
62
|
outputs: [{ name: '', type: 'uint256', internalType: 'uint256' }],
|
|
@@ -68,13 +67,36 @@ export const MPA_WALLET_READ_ABI = [
|
|
|
68
67
|
inputs: [
|
|
69
68
|
{ name: 'keyGenId', type: 'string', internalType: 'string' },
|
|
70
69
|
{ name: 'addressKind', type: 'string', internalType: 'string' },
|
|
70
|
+
],
|
|
71
|
+
name: 'getKeyGenWithdrawAuthority',
|
|
72
|
+
outputs: [{ name: '', type: 'address', internalType: 'address' }],
|
|
73
|
+
stateMutability: 'view',
|
|
74
|
+
type: 'function',
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
inputs: [
|
|
71
78
|
{ name: 'nodeKey', type: 'string', internalType: 'string' },
|
|
72
|
-
{ name: '
|
|
73
|
-
{ name: 'globalNonceAtActivation', type: 'uint256', internalType: 'uint256' },
|
|
79
|
+
{ name: 'hostBinding', type: 'bytes32', internalType: 'bytes32' },
|
|
74
80
|
],
|
|
75
|
-
name: '
|
|
76
|
-
outputs: [
|
|
77
|
-
|
|
81
|
+
name: 'getVpnSubscriptionStatus',
|
|
82
|
+
outputs: [
|
|
83
|
+
{ name: 'registered', type: 'bool', internalType: 'bool' },
|
|
84
|
+
{ name: 'paidThroughMonth', type: 'uint32', internalType: 'uint32' },
|
|
85
|
+
{ name: 'vpnCreditBalance_', type: 'uint256', internalType: 'uint256' },
|
|
86
|
+
{ name: 'vpnMonthlyFee', type: 'uint256', internalType: 'uint256' },
|
|
87
|
+
{ name: 'fundedForCurrentMonth', type: 'bool', internalType: 'bool' },
|
|
88
|
+
],
|
|
89
|
+
stateMutability: 'view',
|
|
90
|
+
type: 'function',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
inputs: [
|
|
94
|
+
{ name: 'nodeKey', type: 'string', internalType: 'string' },
|
|
95
|
+
{ name: 'hostBinding', type: 'bytes32', internalType: 'bytes32' },
|
|
96
|
+
],
|
|
97
|
+
name: 'getVpnWithdrawAuthority',
|
|
98
|
+
outputs: [{ name: '', type: 'address', internalType: 'address' }],
|
|
99
|
+
stateMutability: 'view',
|
|
78
100
|
type: 'function',
|
|
79
101
|
},
|
|
80
102
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mpa-wallet.js","sourceRoot":"","sources":["../../src/config/mpa-wallet.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"mpa-wallet.js","sourceRoot":"","sources":["../../src/config/mpa-wallet.ts"],"names":[],"mappings":"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"}
|
package/dist/config/paths.d.ts
CHANGED
|
@@ -7,5 +7,7 @@ export declare function addedKeysDir(mpcConfigPath: string): string;
|
|
|
7
7
|
export declare function expandHome(filePath: string): string;
|
|
8
8
|
export declare function resolveMpcConfigPath(configPath: string): string;
|
|
9
9
|
export declare function bootstrapKeyDir(mpcConfigPath: string): string;
|
|
10
|
+
/** Writable agent folder (Docker: `/app/user_folder`, host bind mount). */
|
|
11
|
+
export declare function resolveUserFolderPath(override?: string): string;
|
|
10
12
|
export declare function buildManagementBaseUrl(baseUrl: string, managementPort: number): string;
|
|
11
13
|
//# sourceMappingURL=paths.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/config/paths.ts"],"names":[],"mappings":"AAGA,0GAA0G;AAC1G,eAAO,MAAM,QAAQ,SAAS,CAAC;AAC/B,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAChD,eAAO,MAAM,mBAAmB,QAA2C,CAAC;AAE5E,wFAAwF;AACxF,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUnD;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAO/D;AAED,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,sBAAsB,CACrC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACpB,MAAM,CAGR"}
|
|
1
|
+
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/config/paths.ts"],"names":[],"mappings":"AAGA,0GAA0G;AAC1G,eAAO,MAAM,QAAQ,SAAS,CAAC;AAC/B,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAChD,eAAO,MAAM,mBAAmB,QAA2C,CAAC;AAE5E,wFAAwF;AACxF,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUnD;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAO/D;AAED,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAU/D;AAED,wBAAgB,sBAAsB,CACrC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACpB,MAAM,CAGR"}
|
package/dist/config/paths.js
CHANGED
|
@@ -27,6 +27,18 @@ export function resolveMpcConfigPath(configPath) {
|
|
|
27
27
|
export function bootstrapKeyDir(mpcConfigPath) {
|
|
28
28
|
return path.join(resolveMpcConfigPath(mpcConfigPath), 'bootstrap_key');
|
|
29
29
|
}
|
|
30
|
+
/** Writable agent folder (Docker: `/app/user_folder`, host bind mount). */
|
|
31
|
+
export function resolveUserFolderPath(override) {
|
|
32
|
+
const trimmed = override?.trim();
|
|
33
|
+
if (trimmed) {
|
|
34
|
+
return expandHome(trimmed);
|
|
35
|
+
}
|
|
36
|
+
const fromEnv = process.env['MPC_AUTH_USER_FOLDER']?.trim();
|
|
37
|
+
if (fromEnv) {
|
|
38
|
+
return expandHome(fromEnv);
|
|
39
|
+
}
|
|
40
|
+
return '/app/user_folder';
|
|
41
|
+
}
|
|
30
42
|
export function buildManagementBaseUrl(baseUrl, managementPort) {
|
|
31
43
|
const trimmed = baseUrl.replace(/\/+$/, '');
|
|
32
44
|
return `${trimmed}:${managementPort}`;
|
package/dist/config/paths.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/config/paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,0GAA0G;AAC1G,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAChD,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;AAE5E,wFAAwF;AACxF,MAAM,UAAU,YAAY,CAAC,aAAqB;IACjD,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAAgB;IAC1C,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,UAAkB;IACtD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC/C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,aAAqB;IACpD,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAE,eAAe,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,sBAAsB,CACrC,OAAe,EACf,cAAsB;IAEtB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,OAAO,GAAG,OAAO,IAAI,cAAc,EAAE,CAAC;AACvC,CAAC"}
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/config/paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,0GAA0G;AAC1G,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAChD,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;AAE5E,wFAAwF;AACxF,MAAM,UAAU,YAAY,CAAC,aAAqB;IACjD,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAAgB;IAC1C,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,UAAkB;IACtD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC/C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,aAAqB;IACpD,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAE,eAAe,CAAC,CAAC;AACxE,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,QAAiB;IACtD,MAAM,OAAO,GAAG,QAAQ,EAAE,IAAI,EAAE,CAAC;IACjC,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,IAAI,EAAE,CAAC;IAC5D,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,sBAAsB,CACrC,OAAe,EACf,cAAsB;IAEtB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,OAAO,GAAG,OAAO,IAAI,cAAc,EAAE,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { NodeSdkConfig } from '../../config/schema.js';
|
|
2
|
+
import type { SdkResult } from '../result.js';
|
|
3
|
+
export declare function createMpaSyncBillingMultiSignRequest(config: NodeSdkConfig, input: unknown): Promise<SdkResult<{
|
|
4
|
+
requestId: string;
|
|
5
|
+
}>>;
|
|
6
|
+
export declare function createMpaOveragePurchaseMultiSignRequest(config: NodeSdkConfig, input: unknown): Promise<SdkResult<{
|
|
7
|
+
requestId: string;
|
|
8
|
+
}>>;
|
|
9
|
+
export declare function registerVpnOnLinea(config: NodeSdkConfig, input: unknown): Promise<SdkResult<{
|
|
10
|
+
requestId: string;
|
|
11
|
+
}>>;
|
|
12
|
+
export declare function createMpaVpnDepositMultiSignRequest(config: NodeSdkConfig, input: unknown): Promise<SdkResult<{
|
|
13
|
+
requestId: string;
|
|
14
|
+
}>>;
|
|
15
|
+
export declare function createMpaSyncVpnBillingMultiSignRequest(config: NodeSdkConfig, input: unknown): Promise<SdkResult<{
|
|
16
|
+
requestId: string;
|
|
17
|
+
}>>;
|
|
18
|
+
export declare function getMpaVpnStatus(config: NodeSdkConfig, input: unknown): Promise<SdkResult<{
|
|
19
|
+
registered: boolean;
|
|
20
|
+
nodeKey?: string;
|
|
21
|
+
hostBinding?: string;
|
|
22
|
+
fundedForCurrentMonth?: boolean;
|
|
23
|
+
paidThroughMonth?: number;
|
|
24
|
+
vpnCreditBalance?: string;
|
|
25
|
+
vpnMonthlyFee?: string;
|
|
26
|
+
feeTokenSymbol?: string;
|
|
27
|
+
error?: string;
|
|
28
|
+
}>>;
|
|
29
|
+
//# sourceMappingURL=mpa-billing-ops.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mpa-billing-ops.d.ts","sourceRoot":"","sources":["../../../src/core/mpc/mpa-billing-ops.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAO1D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAsM5C,wBAAsB,oCAAoC,CACzD,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CAqEzC;AAED,wBAAsB,wCAAwC,CAC7D,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CAkGzC;AAED,wBAAsB,kBAAkB,CACvC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CA8BzC;AAED,wBAAsB,mCAAmC,CACxD,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CA6CzC;AAED,wBAAsB,uCAAuC,CAC5D,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CAoEzC;AAED,wBAAsB,eAAe,CACpC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,OAAO,GACZ,OAAO,CACT,SAAS,CAAC;IACT,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC,CACF,CAoDA"}
|