@inco/js 0.6.9 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/dist/cjs/advancedacl/session-key.d.ts +39 -26
- package/dist/cjs/advancedacl/session-key.js +53 -136
- package/dist/cjs/attestedcompute/attested-compute.d.ts +6 -6
- package/dist/cjs/attestedcompute/attested-compute.js +5 -35
- package/dist/cjs/attesteddecrypt/attested-decrypt.d.ts +36 -21
- package/dist/cjs/attesteddecrypt/attested-decrypt.js +107 -108
- package/dist/cjs/attesteddecrypt/types.d.ts +4 -4
- package/dist/cjs/generated/es/inco/covalidator/compute/v1/types_pb.d.ts +15 -1
- package/dist/cjs/generated/es/inco/covalidator/compute/v1/types_pb.js +1 -1
- package/dist/cjs/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +13 -5
- package/dist/cjs/generated/es/inco/kms/lite/v1/kms_service_pb.js +3 -4
- package/dist/cjs/generated/lightning.d.ts +40 -0
- package/dist/cjs/generated/lightning.js +43 -1
- package/dist/cjs/generated/local-node.d.ts +11 -7
- package/dist/cjs/generated/local-node.js +28 -8
- package/dist/cjs/kms/client.d.ts +8 -4
- package/dist/cjs/kms/client.js +9 -4
- package/dist/cjs/kms/quorumClient.d.ts +58 -0
- package/dist/cjs/kms/quorumClient.js +378 -0
- package/dist/cjs/kms/thresholdPromises.d.ts +7 -0
- package/dist/cjs/kms/thresholdPromises.js +52 -0
- package/dist/cjs/lite/index.d.ts +0 -1
- package/dist/cjs/lite/index.js +1 -2
- package/dist/cjs/lite/lightning.d.ts +87 -67
- package/dist/cjs/lite/lightning.js +231 -100
- package/dist/cjs/local/local-node.d.ts +1 -2
- package/dist/cjs/local/local-node.js +2 -3
- package/dist/cjs/test/mocks.d.ts +3 -0
- package/dist/cjs/test/mocks.js +19 -1
- package/dist/esm/advancedacl/session-key.d.ts +39 -26
- package/dist/esm/advancedacl/session-key.js +44 -126
- package/dist/esm/attestedcompute/attested-compute.d.ts +6 -6
- package/dist/esm/attestedcompute/attested-compute.js +6 -36
- package/dist/esm/attesteddecrypt/attested-decrypt.d.ts +36 -21
- package/dist/esm/attesteddecrypt/attested-decrypt.js +106 -108
- package/dist/esm/attesteddecrypt/types.d.ts +4 -4
- package/dist/esm/generated/es/inco/covalidator/compute/v1/types_pb.d.ts +15 -1
- package/dist/esm/generated/es/inco/covalidator/compute/v1/types_pb.js +1 -1
- package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +13 -5
- package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.js +2 -3
- package/dist/esm/generated/lightning.d.ts +40 -0
- package/dist/esm/generated/lightning.js +43 -1
- package/dist/esm/generated/local-node.d.ts +11 -7
- package/dist/esm/generated/local-node.js +28 -8
- package/dist/esm/kms/client.d.ts +8 -4
- package/dist/esm/kms/client.js +8 -4
- package/dist/esm/kms/quorumClient.d.ts +58 -0
- package/dist/esm/kms/quorumClient.js +374 -0
- package/dist/esm/kms/thresholdPromises.d.ts +7 -0
- package/dist/esm/kms/thresholdPromises.js +49 -0
- package/dist/esm/lite/index.d.ts +0 -1
- package/dist/esm/lite/index.js +1 -2
- package/dist/esm/lite/lightning.d.ts +87 -67
- package/dist/esm/lite/lightning.js +234 -103
- package/dist/esm/local/local-node.d.ts +1 -2
- package/dist/esm/local/local-node.js +2 -3
- package/dist/esm/test/mocks.d.ts +3 -0
- package/dist/esm/test/mocks.js +17 -1
- package/dist/types/advancedacl/session-key.d.ts +39 -26
- package/dist/types/attestedcompute/attested-compute.d.ts +6 -6
- package/dist/types/attesteddecrypt/attested-decrypt.d.ts +36 -21
- package/dist/types/attesteddecrypt/types.d.ts +4 -4
- package/dist/types/generated/es/inco/covalidator/compute/v1/types_pb.d.ts +15 -1
- package/dist/types/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +13 -5
- package/dist/types/generated/lightning.d.ts +40 -0
- package/dist/types/generated/local-node.d.ts +11 -7
- package/dist/types/kms/client.d.ts +8 -4
- package/dist/types/kms/quorumClient.d.ts +58 -0
- package/dist/types/kms/thresholdPromises.d.ts +7 -0
- package/dist/types/lite/index.d.ts +0 -1
- package/dist/types/lite/lightning.d.ts +87 -67
- package/dist/types/local/local-node.d.ts +1 -2
- package/dist/types/test/mocks.d.ts +3 -0
- package/package.json +2 -2
- package/dist/cjs/attestedreveal/attested-reveal.d.ts +0 -21
- package/dist/cjs/attestedreveal/attested-reveal.js +0 -69
- package/dist/cjs/attestedreveal/index.d.ts +0 -1
- package/dist/cjs/attestedreveal/index.js +0 -18
- package/dist/cjs/attestedreveal/types.d.ts +0 -7
- package/dist/cjs/attestedreveal/types.js +0 -16
- package/dist/cjs/generated/es/cosmos_proto/cosmos_pb.d.ts +0 -174
- package/dist/cjs/generated/es/cosmos_proto/cosmos_pb.js +0 -118
- package/dist/cjs/generated/es/inco/fhe/v1/types_pb.d.ts +0 -419
- package/dist/cjs/generated/es/inco/fhe/v1/types_pb.js +0 -136
- package/dist/cjs/lite/reencrypt.d.ts +0 -21
- package/dist/cjs/lite/reencrypt.js +0 -141
- package/dist/esm/attestedreveal/attested-reveal.d.ts +0 -21
- package/dist/esm/attestedreveal/attested-reveal.js +0 -66
- package/dist/esm/attestedreveal/index.d.ts +0 -1
- package/dist/esm/attestedreveal/index.js +0 -2
- package/dist/esm/attestedreveal/types.d.ts +0 -7
- package/dist/esm/attestedreveal/types.js +0 -12
- package/dist/esm/generated/es/cosmos_proto/cosmos_pb.d.ts +0 -174
- package/dist/esm/generated/es/cosmos_proto/cosmos_pb.js +0 -115
- package/dist/esm/generated/es/inco/fhe/v1/types_pb.d.ts +0 -419
- package/dist/esm/generated/es/inco/fhe/v1/types_pb.js +0 -133
- package/dist/esm/lite/reencrypt.d.ts +0 -21
- package/dist/esm/lite/reencrypt.js +0 -131
- package/dist/types/attestedreveal/attested-reveal.d.ts +0 -21
- package/dist/types/attestedreveal/index.d.ts +0 -1
- package/dist/types/attestedreveal/types.d.ts +0 -7
- package/dist/types/generated/es/cosmos_proto/cosmos_pb.d.ts +0 -174
- package/dist/types/generated/es/inco/fhe/v1/types_pb.d.ts +0 -419
- package/dist/types/lite/reencrypt.d.ts +0 -21
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Lightning = void 0;
|
|
4
|
-
const fs = require("fs/promises");
|
|
5
4
|
const viem_1 = require("viem");
|
|
6
5
|
const chains_1 = require("viem/chains");
|
|
7
6
|
const session_key_js_1 = require("../advancedacl/session-key.js");
|
|
8
7
|
const attested_compute_js_1 = require("../attestedcompute/attested-compute.js");
|
|
9
8
|
const attested_decrypt_js_1 = require("../attesteddecrypt/attested-decrypt.js");
|
|
10
|
-
const attested_reveal_js_1 = require("../attestedreveal/attested-reveal.js");
|
|
11
9
|
const binary_js_1 = require("../binary.js");
|
|
12
10
|
const index_js_1 = require("../encryption/index.js");
|
|
13
11
|
const lightning_js_1 = require("../generated/abis/lightning.js");
|
|
@@ -15,35 +13,49 @@ const verifier_js_1 = require("../generated/abis/verifier.js");
|
|
|
15
13
|
const lightning_js_2 = require("../generated/lightning.js");
|
|
16
14
|
const local_node_js_1 = require("../generated/local-node.js");
|
|
17
15
|
const handle_js_1 = require("../handle.js");
|
|
18
|
-
const index_js_2 = require("../
|
|
16
|
+
const index_js_2 = require("../index.js");
|
|
17
|
+
const quorumClient_js_1 = require("../kms/quorumClient.js");
|
|
18
|
+
const index_js_3 = require("../local/index.js");
|
|
19
19
|
const schema_js_1 = require("../schema.js");
|
|
20
20
|
const ecies_js_1 = require("./ecies.js");
|
|
21
|
-
const reencrypt_js_1 = require("./reencrypt.js");
|
|
22
21
|
const DefaultPepper = 'testnet';
|
|
22
|
+
function isSecp256k1Keypair(value) {
|
|
23
|
+
return !!value && typeof value === 'object' && 'kp' in value;
|
|
24
|
+
}
|
|
25
|
+
function isLocalNodeEnvFileSource(value) {
|
|
26
|
+
return (!!value &&
|
|
27
|
+
typeof value === 'object' &&
|
|
28
|
+
'filePath' in value &&
|
|
29
|
+
typeof value.filePath === 'string');
|
|
30
|
+
}
|
|
23
31
|
/**
|
|
24
32
|
* The Lightning class provides a convenient way to interact with the Inco Lightning contract by binding to a specific
|
|
25
33
|
* deployment.
|
|
26
34
|
*/
|
|
27
35
|
class Lightning {
|
|
28
36
|
_deployment;
|
|
29
|
-
|
|
37
|
+
covalidatorUrls;
|
|
38
|
+
signers;
|
|
39
|
+
threshold;
|
|
30
40
|
executorAddress;
|
|
31
41
|
chainId;
|
|
32
42
|
ephemeralKeypair;
|
|
33
|
-
|
|
34
|
-
constructor(_deployment,
|
|
43
|
+
kmsQuorumClient;
|
|
44
|
+
constructor(_deployment, covalidatorUrls, signers, threshold) {
|
|
35
45
|
this._deployment = _deployment;
|
|
36
|
-
this.
|
|
46
|
+
this.covalidatorUrls = covalidatorUrls;
|
|
47
|
+
this.signers = signers;
|
|
48
|
+
this.threshold = threshold;
|
|
37
49
|
this.executorAddress = (0, binary_js_1.parseAddress)(_deployment.executorAddress);
|
|
38
50
|
this.chainId = BigInt(_deployment.chainId);
|
|
39
51
|
this.ephemeralKeypair = (0, ecies_js_1.generateSecp256k1Keypair)();
|
|
40
|
-
this.
|
|
52
|
+
this.kmsQuorumClient = quorumClient_js_1.KmsQuorumClient.fromUrls(covalidatorUrls, signers, threshold);
|
|
41
53
|
}
|
|
42
54
|
/**
|
|
43
55
|
* Get a Lightning instance bound to the latest Lightning deployment for the Base Sepolia testnet.
|
|
44
56
|
*/
|
|
45
57
|
static async baseSepoliaTestnet() {
|
|
46
|
-
return
|
|
58
|
+
return Lightning.latest('testnet', chains_1.baseSepolia.id);
|
|
47
59
|
}
|
|
48
60
|
/**
|
|
49
61
|
* Get a Lightning instance bound to our canonical Anvil-based test node and test Covalidator node
|
|
@@ -62,18 +74,33 @@ class Lightning {
|
|
|
62
74
|
*/
|
|
63
75
|
static async localNode(env) {
|
|
64
76
|
if (!env) {
|
|
65
|
-
|
|
77
|
+
const config = local_node_js_1.localNodeLightningConfig[DefaultPepper];
|
|
78
|
+
return Lightning.custom({
|
|
79
|
+
...config,
|
|
80
|
+
covalidatorUrls: [...config.covalidatorUrls],
|
|
81
|
+
signers: config.signers.map((s) => (0, binary_js_1.parseAddress)(s)),
|
|
82
|
+
});
|
|
66
83
|
}
|
|
67
84
|
if (typeof env === 'string') {
|
|
68
|
-
|
|
85
|
+
const config = local_node_js_1.localNodeLightningConfig[env];
|
|
86
|
+
return Lightning.custom({
|
|
87
|
+
...config,
|
|
88
|
+
covalidatorUrls: [...config.covalidatorUrls],
|
|
89
|
+
signers: config.signers.map((s) => (0, binary_js_1.parseAddress)(s)),
|
|
90
|
+
});
|
|
69
91
|
}
|
|
70
92
|
const conf = local_node_js_1.localNodeLightningConfig[DefaultPepper];
|
|
71
|
-
return
|
|
93
|
+
return Lightning.custom({
|
|
72
94
|
// We assume that we always run a local node as the default anvil node
|
|
73
95
|
chainId: env.COVALIDATOR_HOST_CHAIN_ID
|
|
74
96
|
? Number(env.COVALIDATOR_HOST_CHAIN_ID)
|
|
75
97
|
: conf.chainId,
|
|
76
|
-
|
|
98
|
+
covalidatorUrls: env.COVALIDATOR_URL
|
|
99
|
+
? env.COVALIDATOR_URL.split(',')
|
|
100
|
+
: [...conf.covalidatorUrls],
|
|
101
|
+
signers: env.EIP712_SIGNER_ADDRESS
|
|
102
|
+
? env.EIP712_SIGNER_ADDRESS.split(',').map((address) => (0, binary_js_1.parseAddress)(address))
|
|
103
|
+
: conf.signers.map((s) => (0, binary_js_1.parseAddress)(s)),
|
|
77
104
|
hostChainRpcUrl: env.COVALIDATOR_HOST_CHAIN_RPC_URL ??
|
|
78
105
|
conf.hostChainRpcUrl ??
|
|
79
106
|
'http://localhost:8545',
|
|
@@ -87,9 +114,19 @@ class Lightning {
|
|
|
87
114
|
*
|
|
88
115
|
* @param filePath the path to the file containing the environment variables in dotenv format
|
|
89
116
|
*/
|
|
90
|
-
static async localNodeFromEnv(
|
|
91
|
-
|
|
92
|
-
|
|
117
|
+
static async localNodeFromEnv(source) {
|
|
118
|
+
let envContent;
|
|
119
|
+
if (isLocalNodeEnvFileSource(source)) {
|
|
120
|
+
if (typeof process === 'undefined' || !process.versions?.node) {
|
|
121
|
+
throw new Error('Lightning.localNodeFromEnv with a file path is only available in Node environments.');
|
|
122
|
+
}
|
|
123
|
+
const { readFile } = await Promise.resolve().then(() => require('fs/promises'));
|
|
124
|
+
envContent = await readFile(source.filePath);
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
envContent = source;
|
|
128
|
+
}
|
|
129
|
+
const env = (0, index_js_3.parseLocalEnv)(envContent);
|
|
93
130
|
return await Lightning.localNode(env);
|
|
94
131
|
}
|
|
95
132
|
/**
|
|
@@ -105,7 +142,8 @@ class Lightning {
|
|
|
105
142
|
if (!deployment) {
|
|
106
143
|
throw new Error(`No deployment found for ${JSON.stringify(id)}`);
|
|
107
144
|
}
|
|
108
|
-
|
|
145
|
+
const { threshold, signers } = await Lightning.getThresholdAndSigners(deployment);
|
|
146
|
+
return new Lightning(deployment, Lightning.getCovalidatorUrls(deployment, threshold), signers, threshold);
|
|
109
147
|
}
|
|
110
148
|
/**
|
|
111
149
|
* Get a Lightning deployment for a local or custom node
|
|
@@ -114,7 +152,8 @@ class Lightning {
|
|
|
114
152
|
* additional fields past will be made available as part of the `deployment` property.
|
|
115
153
|
*/
|
|
116
154
|
static async custom(config) {
|
|
117
|
-
|
|
155
|
+
const { threshold, signers } = await Lightning.getContractThresholdAndSigners(config.executorAddress, config.chainId, config.hostChainRpcUrl);
|
|
156
|
+
return new Lightning(config, config.covalidatorUrls, signers, threshold);
|
|
118
157
|
}
|
|
119
158
|
static async getEciesPublicKey(client, executorAddress) {
|
|
120
159
|
const incoLightningContract = (0, viem_1.getContract)({
|
|
@@ -153,10 +192,10 @@ class Lightning {
|
|
|
153
192
|
* will not be compatible with the new version.
|
|
154
193
|
*
|
|
155
194
|
* @param pepper the pepper to use to filter the deployments
|
|
156
|
-
* @param
|
|
195
|
+
* @param chain the chain to use to filter the deployments
|
|
157
196
|
*/
|
|
158
197
|
static async latest(pepper, chainId) {
|
|
159
|
-
return
|
|
198
|
+
return Lightning.at(Lightning.latestDeployment(pepper, chainId));
|
|
160
199
|
}
|
|
161
200
|
/*
|
|
162
201
|
* Get the latest deployment for a given pepper, which usually denotes a family of deployments distinct from their
|
|
@@ -185,20 +224,11 @@ class Lightning {
|
|
|
185
224
|
return ciphertext.value;
|
|
186
225
|
}
|
|
187
226
|
/**
|
|
188
|
-
*
|
|
189
|
-
* The account associated with the walletClient must have permissions to decrypt the handle or ciphertext passed
|
|
190
|
-
* to the reencryptor function.
|
|
227
|
+
* Get the encryptor for a specific ECIES public key.
|
|
191
228
|
*
|
|
192
|
-
* @param
|
|
229
|
+
* @param eciesPubkey the ECIES public key to use for encryption
|
|
230
|
+
* @returns an Encryptor instance configured for the specified ECIES public key
|
|
193
231
|
*/
|
|
194
|
-
getReencryptor(walletClient) {
|
|
195
|
-
return (0, reencrypt_js_1.incoLiteReencryptor)({
|
|
196
|
-
walletClient,
|
|
197
|
-
kmsConnectRpcEndpointOrClient: this.kmsClient,
|
|
198
|
-
chainId: this.chainId,
|
|
199
|
-
ephemeralKeypair: this.ephemeralKeypair,
|
|
200
|
-
});
|
|
201
|
-
}
|
|
202
232
|
getEncryptor(eciesPubkey) {
|
|
203
233
|
return (0, ecies_js_1.getEciesEncryptor)({
|
|
204
234
|
pubKeyA: (0, ecies_js_1.decodeSecp256k1PublicKey)((0, viem_1.hexToBytes)((0, schema_js_1.parse)(binary_js_1.HexString, eciesPubkey))),
|
|
@@ -238,31 +268,6 @@ class Lightning {
|
|
|
238
268
|
expiresAt,
|
|
239
269
|
});
|
|
240
270
|
}
|
|
241
|
-
/**
|
|
242
|
-
* Creates a session key reencryptor for secure data reencryption operations.
|
|
243
|
-
*
|
|
244
|
-
* This method returns a reencryptor instance that can be used to perform reencryption
|
|
245
|
-
* operations using session keys. The reencryptor is configured with the provided
|
|
246
|
-
* allowance voucher and ephemeral keypair for secure communication.
|
|
247
|
-
*
|
|
248
|
-
* @param allowanceVoucherWithSig - The signed allowance voucher obtained from grantSessionKeyAllowanceVoucher
|
|
249
|
-
* @param ephemeralKeypair - The ephemeral keypair used for secure communication with the KMS make sure it has allowance to voucher
|
|
250
|
-
* @returns A reencryptor instance configured for session key operations
|
|
251
|
-
*
|
|
252
|
-
* @example
|
|
253
|
-
* ```typescript
|
|
254
|
-
* const reencryptor = await lightning.getSessionKeyRencryptor(voucher, ephemeralKeypair);
|
|
255
|
-
* const decryptedValue = await reencryptor({handle: resultHandle});
|
|
256
|
-
* ```
|
|
257
|
-
*/
|
|
258
|
-
getSessionKeyRencryptor(allowanceVoucherWithSig, ephemeralKeypair) {
|
|
259
|
-
return (0, session_key_js_1.sessionKeyReencryptor)({
|
|
260
|
-
chainId: this.chainId,
|
|
261
|
-
kmsConnectRpcEndpointOrClient: this.kmsClient,
|
|
262
|
-
ephemeralKeypair,
|
|
263
|
-
allowanceVoucherWithSig,
|
|
264
|
-
});
|
|
265
|
-
}
|
|
266
271
|
/**
|
|
267
272
|
* Updates the active session nonce for the given wallet client.
|
|
268
273
|
*
|
|
@@ -275,62 +280,142 @@ class Lightning {
|
|
|
275
280
|
updateActiveVouchersSessionNonce(walletClient) {
|
|
276
281
|
return (0, session_key_js_1.updateActiveVouchersSessionNonce)(this.executorAddress, walletClient);
|
|
277
282
|
}
|
|
278
|
-
attestedDecrypt(
|
|
279
|
-
if (
|
|
280
|
-
const
|
|
281
|
-
|
|
282
|
-
|
|
283
|
+
attestedDecrypt(walletClient, handles, arg3, arg4, arg5) {
|
|
284
|
+
if (arg3 instanceof Uint8Array) {
|
|
285
|
+
const reencryptPubKey = arg3;
|
|
286
|
+
let reencryptKeypair;
|
|
287
|
+
let backoffConfig;
|
|
288
|
+
if (arg4 && isSecp256k1Keypair(arg4)) {
|
|
289
|
+
reencryptKeypair = arg4;
|
|
290
|
+
backoffConfig = arg5;
|
|
291
|
+
}
|
|
292
|
+
else {
|
|
293
|
+
backoffConfig = arg4;
|
|
294
|
+
}
|
|
295
|
+
if (reencryptKeypair) {
|
|
296
|
+
return (0, attested_decrypt_js_1.attestedDecrypt)({
|
|
297
|
+
handles,
|
|
298
|
+
backoffConfig,
|
|
299
|
+
chainId: Number(this.chainId),
|
|
300
|
+
walletClient,
|
|
301
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
302
|
+
reencryptPubKey,
|
|
303
|
+
reencryptKeypair,
|
|
304
|
+
});
|
|
305
|
+
}
|
|
283
306
|
return (0, attested_decrypt_js_1.attestedDecrypt)({
|
|
284
307
|
handles,
|
|
285
308
|
backoffConfig,
|
|
286
309
|
chainId: Number(this.chainId),
|
|
287
310
|
walletClient,
|
|
288
|
-
|
|
311
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
312
|
+
reencryptPubKey,
|
|
289
313
|
});
|
|
290
314
|
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
315
|
+
const backoffConfig = arg3;
|
|
316
|
+
return (0, attested_decrypt_js_1.attestedDecrypt)({
|
|
317
|
+
handles,
|
|
318
|
+
backoffConfig,
|
|
319
|
+
chainId: Number(this.chainId),
|
|
320
|
+
walletClient,
|
|
321
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
attestedDecryptWithVoucher(ephemeralKeypair, allowanceVoucherWithSig, handles, arg4, arg5, arg6) {
|
|
325
|
+
if (arg4 instanceof Uint8Array) {
|
|
326
|
+
const reencryptPubKey = arg4;
|
|
327
|
+
let reencryptKeypair;
|
|
328
|
+
let backoffConfig;
|
|
329
|
+
if (arg5 && isSecp256k1Keypair(arg5)) {
|
|
330
|
+
reencryptKeypair = arg5;
|
|
331
|
+
backoffConfig = arg6;
|
|
332
|
+
}
|
|
333
|
+
else {
|
|
334
|
+
backoffConfig = arg5;
|
|
335
|
+
}
|
|
336
|
+
if (reencryptKeypair) {
|
|
337
|
+
return (0, session_key_js_1.sessionKeyAttestedDecrypt)({
|
|
338
|
+
backoffConfig,
|
|
339
|
+
chainId: Number(this.chainId),
|
|
340
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
341
|
+
ephemeralKeypair,
|
|
342
|
+
allowanceVoucherWithSig,
|
|
343
|
+
handles,
|
|
344
|
+
reencryptPubKey,
|
|
345
|
+
reencryptKeypair,
|
|
346
|
+
});
|
|
347
|
+
}
|
|
296
348
|
return (0, session_key_js_1.sessionKeyAttestedDecrypt)({
|
|
297
349
|
backoffConfig,
|
|
298
350
|
chainId: Number(this.chainId),
|
|
299
|
-
|
|
351
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
300
352
|
ephemeralKeypair,
|
|
301
353
|
allowanceVoucherWithSig,
|
|
302
354
|
handles,
|
|
355
|
+
reencryptPubKey,
|
|
303
356
|
});
|
|
304
357
|
}
|
|
358
|
+
const backoffConfig = arg4;
|
|
359
|
+
return (0, session_key_js_1.sessionKeyAttestedDecrypt)({
|
|
360
|
+
backoffConfig,
|
|
361
|
+
chainId: Number(this.chainId),
|
|
362
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
363
|
+
ephemeralKeypair,
|
|
364
|
+
allowanceVoucherWithSig,
|
|
365
|
+
handles,
|
|
366
|
+
});
|
|
305
367
|
}
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
// Wallet-client path
|
|
328
|
-
const walletClient = arg1;
|
|
329
|
-
const backoffConfig = arg5;
|
|
368
|
+
/**
|
|
369
|
+
* Get an attested compute for the given wallet client.
|
|
370
|
+
*
|
|
371
|
+
* @param walletClient - The wallet client used for signing the attested compute request
|
|
372
|
+
* @param lhsHandle - The handle to compute
|
|
373
|
+
* @param op - The operation to perform
|
|
374
|
+
* @param rhsPlaintext - The plaintext to compute with
|
|
375
|
+
* @param backoffConfig - The backoff configuration for the attested compute request
|
|
376
|
+
* @returns The decryption attestation
|
|
377
|
+
*
|
|
378
|
+
* @example
|
|
379
|
+
* ```typescript
|
|
380
|
+
* import { AttestedComputeSupportedOps } from '../lite/attested-compute.js';
|
|
381
|
+
* const lhsHandle = '0x...';
|
|
382
|
+
* const rhsPlaintext = 1337n;
|
|
383
|
+
* const op = AttestedComputeSupportedOps.Eq;
|
|
384
|
+
* const response = await lightning.attestedCompute(walletClient, lhsHandle, op, rhsPlaintext);
|
|
385
|
+
* const { plaintext, covalidatorSignature, handle } = response;
|
|
386
|
+
* ```
|
|
387
|
+
*/
|
|
388
|
+
attestedCompute(walletClient, lhsHandle, op, rhsPlaintext, backoffConfig) {
|
|
330
389
|
return (0, attested_compute_js_1.attestedCompute)({
|
|
331
390
|
walletClient,
|
|
332
|
-
|
|
391
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
392
|
+
chainId: Number(this.chainId),
|
|
393
|
+
lhsHandle,
|
|
394
|
+
op,
|
|
395
|
+
rhsPlaintext,
|
|
396
|
+
backoffConfig,
|
|
397
|
+
});
|
|
398
|
+
}
|
|
399
|
+
/**
|
|
400
|
+
* Performs attested compute via a voucher-backed session key.
|
|
401
|
+
*
|
|
402
|
+
* @example
|
|
403
|
+
* ```ts
|
|
404
|
+
* const attestation = await lightning.attestedComputeWithVoucher(
|
|
405
|
+
* ephemeralKeypair,
|
|
406
|
+
* voucher,
|
|
407
|
+
* lhsHandle,
|
|
408
|
+
* AttestedComputeSupportedOps.Eq,
|
|
409
|
+
* true,
|
|
410
|
+
* );
|
|
411
|
+
* ```
|
|
412
|
+
*/
|
|
413
|
+
attestedComputeWithVoucher(ephemeralKeypair, allowanceVoucherWithSig, lhsHandle, op, rhsPlaintext, backoffConfig) {
|
|
414
|
+
return (0, session_key_js_1.sessionKeyAttestedCompute)({
|
|
333
415
|
chainId: Number(this.chainId),
|
|
416
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
417
|
+
ephemeralKeypair,
|
|
418
|
+
allowanceVoucherWithSig,
|
|
334
419
|
lhsHandle,
|
|
335
420
|
op,
|
|
336
421
|
rhsPlaintext,
|
|
@@ -351,19 +436,19 @@ class Lightning {
|
|
|
351
436
|
* ```
|
|
352
437
|
*/
|
|
353
438
|
attestedReveal(handles, backoffConfig) {
|
|
354
|
-
return (0,
|
|
439
|
+
return (0, attested_decrypt_js_1.attestedDecrypt)({
|
|
355
440
|
handles,
|
|
356
441
|
backoffConfig,
|
|
357
442
|
chainId: Number(this.chainId),
|
|
358
|
-
|
|
443
|
+
kmsQuorumClient: this.kmsQuorumClient,
|
|
359
444
|
});
|
|
360
445
|
}
|
|
361
446
|
/**
|
|
362
447
|
* Get the GRPC endpoint for the covalidator that services this deployment.
|
|
363
448
|
*/
|
|
364
|
-
static
|
|
449
|
+
static getCovalidatorUrls(deployment, threshold) {
|
|
365
450
|
const { executorAddress, chainId, pepper } = deployment;
|
|
366
|
-
return `https://${executorAddress.toLowerCase()}.${chainId}.${pepper}.inco.org
|
|
451
|
+
return Array.from({ length: threshold }, (_, i) => `https://${executorAddress.toLowerCase()}.${chainId}.${pepper}-${i + 1}.inco.org`);
|
|
367
452
|
}
|
|
368
453
|
static isIdByName(id) {
|
|
369
454
|
return id.name !== undefined;
|
|
@@ -387,6 +472,52 @@ class Lightning {
|
|
|
387
472
|
throw new Error(`Unsupported type ${typeof value}`);
|
|
388
473
|
}
|
|
389
474
|
}
|
|
475
|
+
// Add utility method to get threshold from contract
|
|
476
|
+
static async getContractThresholdAndSigners(executorAddress, chainId, hostChainRpcUrl) {
|
|
477
|
+
const chain = (0, index_js_2.getViemChain)({ id: chainId });
|
|
478
|
+
const client = (0, viem_1.createPublicClient)({
|
|
479
|
+
chain,
|
|
480
|
+
transport: hostChainRpcUrl ? (0, viem_1.http)(hostChainRpcUrl) : (0, viem_1.http)(),
|
|
481
|
+
});
|
|
482
|
+
const incoLightningContract = (0, viem_1.getContract)({
|
|
483
|
+
abi: lightning_js_1.incoLightningAbi,
|
|
484
|
+
address: executorAddress,
|
|
485
|
+
client,
|
|
486
|
+
});
|
|
487
|
+
const incoVerifierAddress = await incoLightningContract.read.incoVerifier();
|
|
488
|
+
const incoVerifier = (0, viem_1.getContract)({
|
|
489
|
+
abi: verifier_js_1.incoVerifierAbi,
|
|
490
|
+
address: incoVerifierAddress,
|
|
491
|
+
client,
|
|
492
|
+
});
|
|
493
|
+
console.log('inco executor', incoLightningContract.address);
|
|
494
|
+
console.log('inco verifier', incoVerifier.address);
|
|
495
|
+
const threshold = await incoVerifier.read.getThreshold();
|
|
496
|
+
const signersCount = await incoVerifier.read.getSignersCount();
|
|
497
|
+
const signersPromises = [];
|
|
498
|
+
for (let i = BigInt(0); i < signersCount; i++) {
|
|
499
|
+
signersPromises.push(incoVerifier.read.getSignerAtIndex([i]));
|
|
500
|
+
}
|
|
501
|
+
const signers = await Promise.all(signersPromises);
|
|
502
|
+
return { threshold: Number(threshold), signers: signers.map(binary_js_1.parseAddress) };
|
|
503
|
+
}
|
|
504
|
+
static async getThresholdAndSigners(deployment) {
|
|
505
|
+
if (this.supportsThresholdRetrieval(deployment)) {
|
|
506
|
+
return await this.getContractThresholdAndSigners(deployment.executorAddress, deployment.chainId);
|
|
507
|
+
}
|
|
508
|
+
return this.getDefaultThresholdAndSigners();
|
|
509
|
+
}
|
|
510
|
+
// Check if the deployment supports threshold retrieval based on its version
|
|
511
|
+
static supportsThresholdRetrieval(deployment) {
|
|
512
|
+
// Assumes that the threshold retrieval is supported if the smart contract / deployment version is greater than or equal to 1.1.0
|
|
513
|
+
return deployment.version?.major >= 1 && deployment.version?.minor >= 1;
|
|
514
|
+
}
|
|
515
|
+
static getDefaultThresholdAndSigners() {
|
|
516
|
+
return {
|
|
517
|
+
threshold: 1,
|
|
518
|
+
signers: [viem_1.zeroAddress],
|
|
519
|
+
};
|
|
520
|
+
}
|
|
390
521
|
}
|
|
391
522
|
exports.Lightning = Lightning;
|
|
392
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpdGUvbGlnaHRuaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLGtDQUFrQztBQUNsQywrQkFRYztBQUNkLHdDQUEwQztBQUMxQyxrRUFNdUM7QUFFdkMsZ0ZBQXlFO0FBRXpFLGdGQUF5RTtBQUV6RSw2RUFBc0U7QUFDdEUsNENBQWdFO0FBRWhFLHFEQU1nQztBQUNoQyxpRUFBa0U7QUFDbEUsK0RBQWdFO0FBRWhFLDREQUFpRTtBQUNqRSw4REFBc0U7QUFDdEUsNENBQTJDO0FBQzNDLGdEQUFnRTtBQUdoRSw0Q0FBcUM7QUFDckMseUNBS29CO0FBQ3BCLGlEQUFtRTtBQTZCbkUsTUFBTSxhQUFhLEdBQW9CLFNBQVMsQ0FBQztBQXlCakQ7OztHQUdHO0FBQ0gsTUFBYSxTQUFTO0lBUUQ7SUFDRDtJQVJGLGVBQWUsQ0FBVTtJQUN6QixPQUFPLENBQVM7SUFFZixnQkFBZ0IsQ0FBbUI7SUFDbkMsU0FBUyxDQUE0QjtJQUV0RCxZQUNtQixXQUFjLEVBQ2YsY0FBc0I7UUFEckIsZ0JBQVcsR0FBWCxXQUFXLENBQUc7UUFDZixtQkFBYyxHQUFkLGNBQWMsQ0FBUTtRQUV0QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUEsd0JBQVksRUFBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTNDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFBLG1DQUF3QixHQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFBLDJCQUFZLEVBQUMsY0FBYyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxrQkFBa0I7UUFDN0IsT0FBTyxNQUFNLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FB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
|
|
523
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpdGUvbGlnaHRuaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQVdjO0FBQ2Qsd0NBQTBDO0FBQzFDLGtFQUt1QztBQUV2QyxnRkFBbUc7QUFFbkcsZ0ZBQXlFO0FBS3pFLDRDQUFnRTtBQUVoRSxxREFNZ0M7QUFDaEMsaUVBQWtFO0FBQ2xFLCtEQUFnRTtBQUNoRSw0REFBaUU7QUFDakUsOERBQXNFO0FBQ3RFLDRDQUEyQztBQUMzQywwQ0FBMkM7QUFDM0MsNERBQXlEO0FBQ3pELGdEQUFnRTtBQUVoRSw0Q0FBcUM7QUFDckMseUNBS29CO0FBNkJwQixNQUFNLGFBQWEsR0FBb0IsU0FBUyxDQUFDO0FBRWpELFNBQVMsa0JBQWtCLENBQUMsS0FBYztJQUN4QyxPQUFPLENBQUMsQ0FBQyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLElBQUksSUFBSSxLQUFLLENBQUM7QUFDL0QsQ0FBQztBQThCRCxTQUFTLHdCQUF3QixDQUMvQixLQUEyRDtJQUUzRCxPQUFPLENBQ0wsQ0FBQyxDQUFDLEtBQUs7UUFDUCxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQ3pCLFVBQVUsSUFBSSxLQUFLO1FBQ25CLE9BQVEsS0FBaUMsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUNoRSxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQWEsU0FBUztJQVFEO0lBQ0Q7SUFDQTtJQUNBO0lBVkYsZUFBZSxDQUFVO0lBQ3pCLE9BQU8sQ0FBUztJQUVmLGdCQUFnQixDQUFtQjtJQUNuQyxlQUFlLENBQWtCO0lBRWxELFlBQ21CLFdBQWMsRUFDZixlQUF5QixFQUN6QixPQUFrQixFQUNsQixTQUFpQjtRQUhoQixnQkFBVyxHQUFYLFdBQVcsQ0FBRztRQUNmLG9CQUFlLEdBQWYsZUFBZSxDQUFVO1FBQ3pCLFlBQU8sR0FBUCxPQUFPLENBQVc7UUFD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
|
|
@@ -4,13 +4,12 @@ export declare const LocalNodeEnv: Schema.Struct<{
|
|
|
4
4
|
STATE_DUMP: typeof Schema.String;
|
|
5
5
|
EXECUTOR_ADDRESS: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
|
|
6
6
|
ECIES_PUBLIC_KEY: Schema.TemplateLiteral<`0x${string}`>;
|
|
7
|
-
CALLBACK_ADDRESS: Schema.TemplateLiteral<`0x${string}`>;
|
|
8
7
|
SENDER_ADDRESS: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
|
|
9
8
|
SENDER_PRIVATE_KEY: Schema.TemplateLiteral<`0x${string}`>;
|
|
9
|
+
EIP712_SIGNER_ADDRESS: Schema.optional<Schema.TemplateLiteral<`0x${string}`>>;
|
|
10
10
|
PEPPER: typeof Schema.String;
|
|
11
11
|
COVALIDATOR_ECIES_PRIVATE_KEY: Schema.TemplateLiteral<`0x${string}`>;
|
|
12
12
|
COVALIDATOR_EIP712_PRIVATE_SIGNING_KEY: Schema.TemplateLiteral<`0x${string}`>;
|
|
13
|
-
COVALIDATOR_CALLBACK_PRIVATE_KEY: Schema.TemplateLiteral<`0x${string}`>;
|
|
14
13
|
COVALIDATOR_ACL_ADDR: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
|
|
15
14
|
COVALIDATOR_INCO_EXECUTOR_ADDR: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
|
|
16
15
|
COVALIDATOR_DECRYPTION_HANDLER_ADDR: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
|
|
@@ -9,13 +9,12 @@ exports.LocalNodeEnv = effect_1.Schema.Struct({
|
|
|
9
9
|
STATE_DUMP: effect_1.Schema.String,
|
|
10
10
|
EXECUTOR_ADDRESS: binary_js_1.Address,
|
|
11
11
|
ECIES_PUBLIC_KEY: binary_js_1.HexString,
|
|
12
|
-
CALLBACK_ADDRESS: binary_js_1.HexString,
|
|
13
12
|
SENDER_ADDRESS: binary_js_1.Address,
|
|
14
13
|
SENDER_PRIVATE_KEY: binary_js_1.HexString,
|
|
14
|
+
EIP712_SIGNER_ADDRESS: effect_1.Schema.optional(binary_js_1.HexString),
|
|
15
15
|
PEPPER: effect_1.Schema.String,
|
|
16
16
|
COVALIDATOR_ECIES_PRIVATE_KEY: binary_js_1.HexString,
|
|
17
17
|
COVALIDATOR_EIP712_PRIVATE_SIGNING_KEY: binary_js_1.HexString,
|
|
18
|
-
COVALIDATOR_CALLBACK_PRIVATE_KEY: binary_js_1.HexString,
|
|
19
18
|
COVALIDATOR_ACL_ADDR: binary_js_1.Address,
|
|
20
19
|
COVALIDATOR_INCO_EXECUTOR_ADDR: binary_js_1.Address,
|
|
21
20
|
COVALIDATOR_DECRYPTION_HANDLER_ADDR: binary_js_1.Address,
|
|
@@ -61,4 +60,4 @@ function parseEnv(envContent) {
|
|
|
61
60
|
}
|
|
62
61
|
return env;
|
|
63
62
|
}
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sb2NhbC9sb2NhbC1ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTBCQSxzQ0FHQztBQTdCRCxtQ0FBZ0M7QUFDaEMsNENBQWtEO0FBRXJDLFFBQUEsWUFBWSxHQUFHLGVBQU0sQ0FBQyxNQUFNLENBQUM7SUFDeEMsZ0JBQWdCLEVBQUUsbUJBQU87SUFDekIsVUFBVSxFQUFFLGVBQU0sQ0FBQyxNQUFNO0lBQ3pCLGdCQUFnQixFQUFFLG1CQUFPO0lBQ3pCLGdCQUFnQixFQUFFLHFCQUFTO0lBQzNCLGNBQWMsRUFBRSxtQkFBTztJQUN2QixrQkFBa0IsRUFBRSxxQkFBUztJQUM3QixxQkFBcUIsRUFBRSxlQUFNLENBQUMsUUFBUSxDQUFDLHFCQUFTLENBQUM7SUFDakQsTUFBTSxFQUFFLGVBQU0sQ0FBQyxNQUFNO0lBQ3JCLDZCQUE2QixFQUFFLHFCQUFTO0lBQ3hDLHNDQUFzQyxFQUFFLHFCQUFTO0lBQ2pELG9CQUFvQixFQUFFLG1CQUFPO0lBQzdCLDhCQUE4QixFQUFFLG1CQUFPO0lBQ3ZDLG1DQUFtQyxFQUFFLG1CQUFPO0lBQzVDLHlCQUF5QixFQUFFLGVBQU0sQ0FBQyxRQUFRLENBQUMsZUFBTSxDQUFDLE1BQU0sQ0FBQztJQUN6RCxlQUFlLEVBQUUsZUFBTSxDQUFDLFFBQVEsQ0FBQyxlQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLDhCQUE4QixFQUFFLGVBQU0sQ0FBQyxRQUFRLENBQUMsZUFBTSxDQUFDLE1BQU0sQ0FBQztDQUMvRCxDQUFDLENBQUM7QUFJSCxzRUFBc0U7QUFDdEUsZ0VBQWdFO0FBQ2hFLFNBQWdCLGFBQWEsQ0FBQyxZQUE4QjtJQUMxRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztJQUNsRSxPQUFPLGVBQU0sQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBWSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDeEQsQ0FBQztBQUVELFNBQVMsT0FBTyxDQUFDLFVBQTJCO0lBQzFDLE9BQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxtRkFBbUY7QUFDbkYsU0FBUyxRQUFRLENBQUMsVUFBa0I7SUFDbEMsSUFBSSxHQUFHLEdBQTJCLEVBQUUsQ0FBQztJQUNyQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXJDLGlDQUFpQztJQUNqQyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3pCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQyxJQUFJLFdBQVcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNoRCxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVDLElBQUksVUFBVSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RCLE1BQU0sR0FBRyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN4RCxJQUFJLEtBQUssR0FBRyxXQUFXLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFFekQsdUJBQXVCO2dCQUN2QixJQUNFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUM5QyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUM5QyxDQUFDO29CQUNELEtBQUssR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUMvQyxDQUFDO2dCQUVELEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7WUFDbkIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQseURBQXlEO0lBQ3pELEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDL0MsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQWUsRUFBRSxFQUFFO1lBQzlELE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMifQ==
|
package/dist/cjs/test/mocks.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Account, Chain, Transport, WalletClient } from 'viem';
|
|
2
2
|
import { vi } from 'vitest';
|
|
3
3
|
import { KmsClient } from '../kms/client.js';
|
|
4
|
+
import { KmsQuorumClient } from '../kms/quorumClient.js';
|
|
4
5
|
interface MinimalKmsClient {
|
|
5
6
|
attestedCompute: ReturnType<typeof vi.fn>;
|
|
6
7
|
attestedDecrypt: ReturnType<typeof vi.fn>;
|
|
@@ -8,5 +9,7 @@ interface MinimalKmsClient {
|
|
|
8
9
|
reencrypt: ReturnType<typeof vi.fn>;
|
|
9
10
|
}
|
|
10
11
|
export declare function createMockKmsClient(): MinimalKmsClient & KmsClient;
|
|
12
|
+
export declare function createMockQuorumClient(): KmsQuorumClient;
|
|
13
|
+
export declare function setupMockInQuorumClient(quorumClient: KmsQuorumClient, mockKmsClient: MinimalKmsClient & KmsClient): void;
|
|
11
14
|
export declare function createTestWalletClient(): WalletClient<Transport, Chain, Account>;
|
|
12
15
|
export {};
|
package/dist/cjs/test/mocks.js
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createMockKmsClient = createMockKmsClient;
|
|
4
|
+
exports.createMockQuorumClient = createMockQuorumClient;
|
|
5
|
+
exports.setupMockInQuorumClient = setupMockInQuorumClient;
|
|
4
6
|
exports.createTestWalletClient = createTestWalletClient;
|
|
5
7
|
const viem_1 = require("viem");
|
|
6
8
|
const accounts_1 = require("viem/accounts");
|
|
7
9
|
const chains_1 = require("viem/chains");
|
|
8
10
|
const vitest_1 = require("vitest");
|
|
11
|
+
const client_js_1 = require("../kms/client.js");
|
|
12
|
+
const quorumClient_js_1 = require("../kms/quorumClient.js");
|
|
9
13
|
// Create a mock that satisfies our minimal interface
|
|
10
14
|
function createMockKmsClient() {
|
|
11
15
|
return {
|
|
@@ -15,6 +19,20 @@ function createMockKmsClient() {
|
|
|
15
19
|
reencrypt: vitest_1.vi.fn(),
|
|
16
20
|
};
|
|
17
21
|
}
|
|
22
|
+
// Create a mock KmsQuorumClient from a mock KmsClient for testing
|
|
23
|
+
function createMockQuorumClient() {
|
|
24
|
+
// Use the private constructor via type casting (similar to quorumClient.test.ts)
|
|
25
|
+
const AnyClass = quorumClient_js_1.KmsQuorumClient;
|
|
26
|
+
return new AnyClass([{ url: 'https://mock-kms', signer: client_js_1.DEFAULT_COVALIDATOR_SIGNER }], 1);
|
|
27
|
+
}
|
|
28
|
+
// Helper to set up the mock client inside the quorum client
|
|
29
|
+
function setupMockInQuorumClient(quorumClient, mockKmsClient) {
|
|
30
|
+
// Access private kmss array and replace the client
|
|
31
|
+
const anyQuorumClient = quorumClient;
|
|
32
|
+
if (anyQuorumClient.kmss && anyQuorumClient.kmss.length > 0) {
|
|
33
|
+
anyQuorumClient.kmss[0].client = mockKmsClient;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
18
36
|
// Create a real wallet client for testing
|
|
19
37
|
function createTestWalletClient() {
|
|
20
38
|
const account = (0, accounts_1.privateKeyToAccount)((0, accounts_1.generatePrivateKey)());
|
|
@@ -24,4 +42,4 @@ function createTestWalletClient() {
|
|
|
24
42
|
account,
|
|
25
43
|
});
|
|
26
44
|
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdC9tb2Nrcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXdCQSxrREFPQztBQUdELHdEQU9DO0FBR0QsMERBU0M7QUFHRCx3REFXQztBQW5FRCwrQkFPYztBQUNkLDRDQUF3RTtBQUN4RSx3Q0FBc0M7QUFDdEMsbUNBQTRCO0FBQzVCLGdEQUF5RTtBQUN6RSw0REFBeUQ7QUFXekQscURBQXFEO0FBQ3JELFNBQWdCLG1CQUFtQjtJQUNqQyxPQUFPO1FBQ0wsZUFBZSxFQUFFLFdBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDeEIsZUFBZSxFQUFFLFdBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDeEIsR0FBRyxFQUFFLFdBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDWixTQUFTLEVBQUUsV0FBRSxDQUFDLEVBQUUsRUFBRTtLQUNhLENBQUM7QUFDcEMsQ0FBQztBQUVELGtFQUFrRTtBQUNsRSxTQUFnQixzQkFBc0I7SUFDcEMsaUZBQWlGO0lBQ2pGLE1BQU0sUUFBUSxHQUFRLGlDQUFlLENBQUM7SUFDdEMsT0FBTyxJQUFJLFFBQVEsQ0FDakIsQ0FBQyxFQUFFLEdBQUcsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsc0NBQTBCLEVBQUUsQ0FBQyxFQUNqRSxDQUFDLENBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCw0REFBNEQ7QUFDNUQsU0FBZ0IsdUJBQXVCLENBQ3JDLFlBQTZCLEVBQzdCLGFBQTJDO0lBRTNDLG1EQUFtRDtJQUNuRCxNQUFNLGVBQWUsR0FBRyxZQUFtQixDQUFDO0lBQzVDLElBQUksZUFBZSxDQUFDLElBQUksSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUM1RCxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUM7SUFDakQsQ0FBQztBQUNILENBQUM7QUFFRCwwQ0FBMEM7QUFDMUMsU0FBZ0Isc0JBQXNCO0lBS3BDLE1BQU0sT0FBTyxHQUFHLElBQUEsOEJBQW1CLEVBQUMsSUFBQSw2QkFBa0IsR0FBRSxDQUFDLENBQUM7SUFDMUQsT0FBTyxJQUFBLHlCQUFrQixFQUFDO1FBQ3hCLEtBQUssRUFBRSxnQkFBTyxFQUFFLHdDQUF3QztRQUN4RCxTQUFTLEVBQUUsSUFBQSxXQUFJLEVBQUMsZ0JBQWdCLENBQUM7UUFDakMsT0FBTztLQUNSLENBQUMsQ0FBQztBQUNMLENBQUMifQ==
|