@inco/js 0.1.31 → 0.1.33
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 +28 -57
- package/dist/binary.js +67 -0
- package/dist/chain.js +24 -0
- package/dist/encryption/encryption.js +98 -0
- package/dist/encryption/index.cjs +132 -123
- package/dist/encryption/index.js +2 -0
- package/dist/encryption/index.mjs +132 -123
- package/dist/fhevm/fhe-environment.js +8 -0
- package/dist/fhevm/fhevm.js +139 -0
- package/dist/fhevm/index.js +2 -0
- package/dist/fhevm/reencrypt.js +123 -0
- package/dist/fhevm/tfhe.js +324 -0
- package/dist/fhevm/types.js +26 -0
- package/dist/generated/abis/addTwo.js +59 -0
- package/dist/generated/abis/inco-fhevm.js +6242 -0
- package/dist/generated/abis/index.js +3 -0
- package/dist/generated/abis/lightning.js +12489 -0
- package/dist/generated/es/cosmos/ics23/v1/proofs_pb.js +198 -0
- package/dist/generated/es/cosmos/msg/v1/msg_pb.js +33 -0
- package/dist/generated/es/cosmos_proto/cosmos_pb.js +115 -0
- package/dist/generated/es/google/api/annotations_pb.js +27 -0
- package/dist/generated/es/google/api/http_pb.js +34 -0
- package/dist/generated/es/inco/fhe/v1/events_pb.js +21 -0
- package/dist/generated/es/inco/fhe/v1/genesis_pb.js +46 -0
- package/dist/generated/es/inco/fhe/v1/query_pb.js +108 -0
- package/dist/generated/es/inco/fhe/v1/tx_pb.js +108 -0
- package/dist/generated/es/inco/fhe/v1/types_pb.js +133 -0
- package/dist/generated/es/inco/kms/lite/v1/kms_service_pb.js +43 -0
- package/dist/generated/es/inco/kms/lite/v1/types_pb.js +44 -0
- package/dist/generated/es/inco/preflight/v1/genesis_pb.js +20 -0
- package/dist/generated/es/inco/preflight/v1/query_pb.js +38 -0
- package/dist/generated/es/inco/preflight/v1/tx_pb.js +48 -0
- package/dist/generated/es/inco/preflight/v1/types_pb.js +34 -0
- package/dist/generated/es/kms/base_pb.js +238 -0
- package/dist/generated/es/sf/ethereum/type/v2/type_pb.js +571 -0
- package/dist/generated/fhe-environments.js +15 -0
- package/dist/generated/lightning.js +399 -0
- package/dist/generated/local-node.js +8 -0
- package/dist/generated/ts/amino/amino.js +8 -0
- package/dist/generated/ts/cometbft/abci/v1/types.js +5063 -0
- package/dist/generated/ts/cometbft/crypto/v1/keys.js +105 -0
- package/dist/generated/ts/cometbft/crypto/v1/proof.js +430 -0
- package/dist/generated/ts/cometbft/types/v1/params.js +713 -0
- package/dist/generated/ts/cometbft/types/v1/validator.js +353 -0
- package/dist/generated/ts/cosmos/app/v1alpha1/module.js +218 -0
- package/dist/generated/ts/cosmos/msg/v1/msg.js +8 -0
- package/dist/generated/ts/cosmos_proto/cosmos.js +211 -0
- package/dist/generated/ts/gogoproto/gogo.js +8 -0
- package/dist/generated/ts/google/api/annotations.js +8 -0
- package/dist/generated/ts/google/api/http.js +353 -0
- package/dist/generated/ts/google/protobuf/descriptor.js +5070 -0
- package/dist/generated/ts/google/protobuf/duration.js +90 -0
- package/dist/generated/ts/google/protobuf/timestamp.js +90 -0
- package/dist/generated/ts/google/protobuf/wrappers.js +506 -0
- package/dist/generated/ts/inco/abci/v1/types.js +70 -0
- package/dist/generated/ts/inco/fhe/module/v1/module.js +63 -0
- package/dist/generated/ts/inco/fhe/v1/events.js +187 -0
- package/dist/generated/ts/inco/fhe/v1/genesis.js +711 -0
- package/dist/generated/ts/inco/fhe/v1/query.js +1391 -0
- package/dist/generated/ts/inco/fhe/v1/tx.js +1233 -0
- package/dist/generated/ts/inco/fhe/v1/types.js +985 -0
- package/dist/generated/ts/inco/originchain/module/v1/module.js +63 -0
- package/dist/generated/ts/inco/originchain/v1/abci.js +328 -0
- package/dist/generated/ts/inco/originchain/v1/events.js +213 -0
- package/dist/generated/ts/inco/originchain/v1/genesis.js +66 -0
- package/dist/generated/ts/inco/originchain/v1/query.js +277 -0
- package/dist/generated/ts/inco/originchain/v1/tx.js +137 -0
- package/dist/generated/ts/inco/originchain/v1/types.js +200 -0
- package/dist/generated/ts/inco/preflight/module/v1/module.js +63 -0
- package/dist/generated/ts/inco/preflight/v1/genesis.js +182 -0
- package/dist/generated/ts/inco/preflight/v1/query.js +256 -0
- package/dist/generated/ts/inco/preflight/v1/tx.js +445 -0
- package/dist/generated/ts/inco/preflight/v1/types.js +395 -0
- package/dist/handle.js +94 -0
- package/dist/index.cjs +140 -131
- package/dist/index.js +6 -0
- package/dist/index.mjs +140 -131
- package/dist/l1/client.js +93 -0
- package/dist/l1/index.js +3 -0
- package/dist/l1/preflight.js +39 -0
- package/dist/lite/deployments.js +17 -0
- package/dist/lite/ecies.js +124 -0
- package/dist/lite/hadu.js +36 -0
- package/dist/lite/index.cjs +186 -146
- package/dist/lite/index.js +7 -0
- package/dist/lite/index.mjs +3890 -3788
- package/dist/lite/lightning.js +179 -0
- package/dist/lite/reencrypt.d.ts +1 -0
- package/dist/lite/reencrypt.js +148 -0
- package/dist/local/index.cjs +25 -2573
- package/dist/local/index.js +2 -0
- package/dist/local/index.mjs +5352 -7837
- package/dist/local/local-node.js +24 -0
- package/dist/reencryption/eip712.js +81 -0
- package/dist/reencryption/index.cjs +132 -123
- package/dist/reencryption/index.js +3 -0
- package/dist/reencryption/index.mjs +132 -123
- package/dist/reencryption/types.js +2 -0
- package/dist/schema.js +15 -0
- package/dist/viem.d.ts +53 -52
- package/dist/viem.js +8 -0
- package/package.json +11 -48
@@ -0,0 +1,24 @@
|
|
1
|
+
import { Address, HexString } from '@inco/pega/lib/hex';
|
2
|
+
import * as dotenv from 'dotenv';
|
3
|
+
import { Schema } from 'effect';
|
4
|
+
export const LocalNodeEnv = Schema.Struct({
|
5
|
+
DEPLOYER_ADDRESS: Address,
|
6
|
+
STATE_DUMP: Schema.String,
|
7
|
+
ADD_TWO_ADDRESS: Address,
|
8
|
+
EXECUTOR_ADDRESS: Address,
|
9
|
+
ECIES_PUBLIC_KEY: HexString,
|
10
|
+
CALLBACK_ADDRESS: HexString,
|
11
|
+
SENDER_ADDRESS: Address,
|
12
|
+
SENDER_PRIVATE_KEY: HexString,
|
13
|
+
PEPPER: Schema.String,
|
14
|
+
COVALIDATOR_ECIES_PRIVATE_KEY: HexString,
|
15
|
+
COVALIDATOR_CALLBACK_PRIVATE_KEY: HexString,
|
16
|
+
COVALIDATOR_ACL_ADDR: Address,
|
17
|
+
COVALIDATOR_INCO_EXECUTOR_ADDR: Address,
|
18
|
+
COVALIDATOR_DECRYPTION_HANDLER_ADDR: Address,
|
19
|
+
});
|
20
|
+
export function parseLocalEnv(envFileContents) {
|
21
|
+
const envObj = dotenv.parse(envFileContents);
|
22
|
+
return Schema.decodeUnknownSync(LocalNodeEnv)(envObj);
|
23
|
+
}
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2NhbC9sb2NhbC1ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEQsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVoQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUN4QyxnQkFBZ0IsRUFBRSxPQUFPO0lBQ3pCLFVBQVUsRUFBRSxNQUFNLENBQUMsTUFBTTtJQUN6QixlQUFlLEVBQUUsT0FBTztJQUN4QixnQkFBZ0IsRUFBRSxPQUFPO0lBQ3pCLGdCQUFnQixFQUFFLFNBQVM7SUFDM0IsZ0JBQWdCLEVBQUUsU0FBUztJQUMzQixjQUFjLEVBQUUsT0FBTztJQUN2QixrQkFBa0IsRUFBRSxTQUFTO0lBQzdCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtJQUNyQiw2QkFBNkIsRUFBRSxTQUFTO0lBQ3hDLGdDQUFnQyxFQUFFLFNBQVM7SUFDM0Msb0JBQW9CLEVBQUUsT0FBTztJQUM3Qiw4QkFBOEIsRUFBRSxPQUFPO0lBQ3ZDLG1DQUFtQyxFQUFFLE9BQU87Q0FDN0MsQ0FBQyxDQUFDO0FBSUgsTUFBTSxVQUFVLGFBQWEsQ0FBQyxlQUFnQztJQUM1RCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzdDLE9BQU8sTUFBTSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3hELENBQUMifQ==
|
@@ -0,0 +1,81 @@
|
|
1
|
+
import { Schema } from 'effect';
|
2
|
+
import { HexString } from '../binary';
|
3
|
+
import { getActiveLightningDeployment } from '../lite/deployments';
|
4
|
+
// An effect Schema representing a base EIP712 typed message, without any
|
5
|
+
// custom message types, as defined in EIP-712.
|
6
|
+
const baseEIP712 = Schema.Struct({
|
7
|
+
domain: Schema.Struct({
|
8
|
+
chainId: Schema.BigInt,
|
9
|
+
name: Schema.String,
|
10
|
+
version: Schema.String,
|
11
|
+
verifyingContract: Schema.optional(HexString),
|
12
|
+
// If salt is needed, it can be added here. Currently, none of the Incolite
|
13
|
+
// features need this.
|
14
|
+
}),
|
15
|
+
primaryType: Schema.String,
|
16
|
+
types: Schema.Record({
|
17
|
+
key: Schema.String,
|
18
|
+
value: Schema.Array(Schema.Struct({
|
19
|
+
name: Schema.String,
|
20
|
+
type: Schema.String,
|
21
|
+
})),
|
22
|
+
}),
|
23
|
+
});
|
24
|
+
// This function creates the payload that will be signed by the user. It is used to verify that the
|
25
|
+
// user has access to the private key that corresponds to the ephemeral public key in the payload.
|
26
|
+
// If the last argument is provided, it will be used as the contract address.
|
27
|
+
//
|
28
|
+
// The `message` argument must have the same keys as the all the `name` values
|
29
|
+
// in the `primaryTypeFields` argument.
|
30
|
+
export function createEIP712Payload({ chainId, primaryType, primaryTypeFields, message, verifyingContract, domainName, domainVersion, }) {
|
31
|
+
const types = {
|
32
|
+
// This refers to the domain the contract is hosted on.
|
33
|
+
EIP712Domain: [
|
34
|
+
{ name: 'name', type: 'string' },
|
35
|
+
{ name: 'version', type: 'string' },
|
36
|
+
{ name: 'chainId', type: 'uint256' },
|
37
|
+
],
|
38
|
+
// Refer to primaryType.
|
39
|
+
[primaryType]: primaryTypeFields,
|
40
|
+
};
|
41
|
+
if (verifyingContract) {
|
42
|
+
types.EIP712Domain.push({ name: 'verifyingContract', type: 'address' });
|
43
|
+
}
|
44
|
+
// Check that the message has the same keys as the primaryTypeFields.
|
45
|
+
const messageKeys = Object.keys(message);
|
46
|
+
const primaryTypeFieldsKeys = primaryTypeFields.map((field) => field.name);
|
47
|
+
if (messageKeys.length !== primaryTypeFieldsKeys.length) {
|
48
|
+
throw new Error('Message keys do not match primaryTypeFields keys');
|
49
|
+
}
|
50
|
+
for (const key of messageKeys) {
|
51
|
+
if (!primaryTypeFieldsKeys.includes(key)) {
|
52
|
+
throw new Error(`Message key ${key} does not match primaryTypeFields key`);
|
53
|
+
}
|
54
|
+
}
|
55
|
+
// TODO: We could also check that the types of the values are correct here.
|
56
|
+
if (!domainVersion) {
|
57
|
+
const incoLite = getActiveLightningDeployment(chainId);
|
58
|
+
// See Version.sol for the format of the version string.
|
59
|
+
domainVersion = `${incoLite.version.major}_${incoLite.version.minor}_${incoLite.version.patch}`;
|
60
|
+
}
|
61
|
+
const msgParams = {
|
62
|
+
types,
|
63
|
+
// This defines the message you're proposing the user to sign, is dapp-specific, and contains
|
64
|
+
// anything you want. There are no required fields. Be as explicit as possible when building out
|
65
|
+
// the message schema.
|
66
|
+
// This refers to the keys of the following types object.
|
67
|
+
primaryType,
|
68
|
+
domain: {
|
69
|
+
// Give a user-friendly name to the specific contract you're signing for.
|
70
|
+
name: domainName ?? 'incoLite',
|
71
|
+
// This identifies the latest version.
|
72
|
+
version: domainVersion,
|
73
|
+
// This defines the network, in this case, Mainnet.
|
74
|
+
chainId,
|
75
|
+
verifyingContract,
|
76
|
+
},
|
77
|
+
message,
|
78
|
+
};
|
79
|
+
return msgParams;
|
80
|
+
}
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWlwNzEyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JlZW5jcnlwdGlvbi9laXA3MTIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVoQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRW5FLHlFQUF5RTtBQUN6RSwrQ0FBK0M7QUFDL0MsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUMvQixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUNwQixPQUFPLEVBQUUsTUFBTSxDQUFDLE1BQU07UUFDdEIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1FBQ25CLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTTtRQUN0QixpQkFBaUIsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztRQUM3QywyRUFBMkU7UUFDM0Usc0JBQXNCO0tBQ3ZCLENBQUM7SUFDRixXQUFXLEVBQUUsTUFBTSxDQUFDLE1BQU07SUFDMUIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDbkIsR0FBRyxFQUFFLE1BQU0sQ0FBQyxNQUFNO1FBQ2xCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxDQUNqQixNQUFNLENBQUMsTUFBTSxDQUFDO1lBQ1osSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1lBQ25CLElBQUksRUFBRSxNQUFNLENBQUMsTUFBTTtTQUNwQixDQUFDLENBQ0g7S0FDRixDQUFDO0NBQ0gsQ0FBQyxDQUFDO0FBU0gsbUdBQW1HO0FBQ25HLGtHQUFrRztBQUNsRyw2RUFBNkU7QUFDN0UsRUFBRTtBQUNGLDhFQUE4RTtBQUM5RSx1Q0FBdUM7QUFDdkMsTUFBTSxVQUFVLG1CQUFtQixDQUFxRCxFQUN0RixPQUFPLEVBQ1AsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixPQUFPLEVBQ1AsaUJBQWlCLEVBQ2pCLFVBQVUsRUFDVixhQUFhLEdBU2Q7SUFDQyxNQUFNLEtBQUssR0FBRztRQUNaLHVEQUF1RDtRQUN2RCxZQUFZLEVBQUU7WUFDWixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUNoQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUNuQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtTQUNyQztRQUNELHdCQUF3QjtRQUN4QixDQUFDLFdBQVcsQ0FBQyxFQUFFLGlCQUFpQjtLQUNqQyxDQUFDO0lBRUYsSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1FBQ3RCLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxxRUFBcUU7SUFDckUsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN6QyxNQUFNLHFCQUFxQixHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNFLElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN4RCxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUNELEtBQUssTUFBTSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsZUFBZSxHQUFHLHVDQUF1QyxDQUFDLENBQUM7UUFDN0UsQ0FBQztJQUNILENBQUM7SUFDRCwyRUFBMkU7SUFFM0UsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ25CLE1BQU0sUUFBUSxHQUFHLDRCQUE0QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELHdEQUF3RDtRQUN4RCxhQUFhLEdBQUcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2xHLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRztRQUNoQixLQUFLO1FBQ0wsNkZBQTZGO1FBQzdGLGdHQUFnRztRQUNoRyxzQkFBc0I7UUFDdEIseURBQXlEO1FBQ3pELFdBQVc7UUFDWCxNQUFNLEVBQUU7WUFDTix5RUFBeUU7WUFDekUsSUFBSSxFQUFFLFVBQVUsSUFBSSxVQUFVO1lBQzlCLHNDQUFzQztZQUN0QyxPQUFPLEVBQUUsYUFBYTtZQUN0QixtREFBbUQ7WUFDbkQsT0FBTztZQUNQLGlCQUFpQjtTQUNsQjtRQUNELE9BQU87S0FDUixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyJ9
|