@kiroboio/fct-core
Version:
Kirobo.io FCT Core library
103 lines • 6.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FCT_VAULT_ADDRESS = exports.CALL_TYPE_MSG_REV = exports.CALL_TYPE_MSG = exports.CALL_TYPE = exports.ValidationOperator = exports.VAR_FCT_MESSAGE_HASH = exports.VARX_TX_GAS_PRICE = exports.VAR_TX_GAS_PRICE = exports.VARX_FCT_MESSAGE_HASH = exports.ActivatorAddress = exports.InvestorAddress = exports.MinerAddress = exports.SolverAddress = exports.ValidationBase = exports.ComputedBaseBytes32 = exports.ComputedBaseAddress = exports.BackMulticallOutputVariableBaseBytes32 = exports.BackMulticallOutputVariableBaseAddress = exports.MulticallOutputVariableBaseBytes32 = exports.MulticallOutputVariableBaseAddress = exports.MaxBackOutputVariableBytes32 = exports.MaxBackOutputVariableAddress = exports.BackOutputVariableBaseBytes32 = exports.BackOutputVariableBaseAddress = exports.MaxOutputVariableBytes32 = exports.MaxOutputVariableAddress = exports.OutputVariableBaseBytes32 = exports.OutputVariableBaseAddress = exports.ExternalVariableBaseBytes32 = exports.ExternalVariableBaseAddress = exports.EMPTY_HASH = exports.multicallContracts = void 0;
exports.isVariable = isVariable;
const ethers_1 = require("ethers");
const { keccak256, toUtf8Bytes } = ethers_1.ethers.utils;
exports.multicallContracts = {
1: "0xcA11bde05977b3631167028862bE2a173976CA11",
42161: "0xcA11bde05977b3631167028862bE2a173976CA11",
10: "0xcA11bde05977b3631167028862bE2a173976CA11",
8453: "0xcA11bde05977b3631167028862bE2a173976CA11",
//
// Testnets
11155111: "0xcA11bde05977b3631167028862bE2a173976CA11",
5: "0xcA11bde05977b3631167028862bE2a173976CA11",
421613: "0xcA11bde05977b3631167028862bE2a173976CA11",
};
exports.EMPTY_HASH = "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470";
// EXTERNAL VARIABLES
exports.ExternalVariableBaseAddress = "0xFC00000000000000000000000000000000000000";
exports.ExternalVariableBaseBytes32 = "0xFC00000000000000000000000000000000000000000000000000000000000000";
// OUTPUT VARIABLES
// = 0xFD00000000000000000000000000000| 00000 | 0000
// The max value is = FD00000000000000000000000000010000000000;
exports.OutputVariableBaseAddress = "0xFD00000000000000000000000000000000000000";
exports.OutputVariableBaseBytes32 = "0xFD00000000000000000000000000000000000000000000000000000000000000";
exports.MaxOutputVariableAddress = "0xFD00000000000000000000000000010000000000";
exports.MaxOutputVariableBytes32 = "0xFD00000000000000000000000000000000000000000000000000010000000000";
exports.BackOutputVariableBaseAddress = "0xFDB0000000000000000000000000000000000000";
exports.BackOutputVariableBaseBytes32 = "0xFDB0000000000000000000000000000000000000000000000000000000000000";
exports.MaxBackOutputVariableAddress = "0xFDB0000000000000000000000000010000000000";
exports.MaxBackOutputVariableBytes32 = "0xFDB0000000000000000000000000000000000000000000000000010000000000";
// MULTICALL OUTPUT VARIABLES
exports.MulticallOutputVariableBaseAddress = "0xEE00000000000000000000000000000000000000";
exports.MulticallOutputVariableBaseBytes32 = "0xEE00000000000000000000000000000000000000000000000000000000000000";
exports.BackMulticallOutputVariableBaseAddress = "0xEF00000000000000000000000000000000000000";
exports.BackMulticallOutputVariableBaseBytes32 = "0xEF00000000000000000000000000000000000000000000000000000000000000";
// COMPUTED VARIABLES
exports.ComputedBaseAddress = "0xFE00000000000000000000000000000000000000";
exports.ComputedBaseBytes32 = "0xFE00000000000000000000000000000000000000000000000000000000000000";
exports.ValidationBase = "0xE900000000000000000000000000000000000000000000000000000000000000";
exports.SolverAddress = "0xFA0B000000000000000000000000000000000000";
exports.MinerAddress = "0xFA0A000000000000000000000000000000000000";
exports.InvestorAddress = "0xFA0C000000000000000000000000000000000000";
exports.ActivatorAddress = "0xFA0D000000000000000000000000000000000000";
exports.VARX_FCT_MESSAGE_HASH = "0xFB0D000000000000000000000000000000000000000000000000000000000000";
exports.VAR_TX_GAS_PRICE = "0x00FB0C000000000000000000000000000000000000";
exports.VARX_TX_GAS_PRICE = "0xFB0C000000000000000000000000000000000000000000000000000000000000";
exports.VAR_FCT_MESSAGE_HASH = "0x00FB0D000000000000000000000000000000000000";
const allVariables = [
exports.ExternalVariableBaseBytes32,
exports.OutputVariableBaseBytes32,
exports.BackOutputVariableBaseBytes32,
exports.MulticallOutputVariableBaseBytes32,
exports.BackMulticallOutputVariableBaseBytes32,
exports.ComputedBaseBytes32,
exports.ValidationBase,
exports.SolverAddress,
exports.MinerAddress,
exports.InvestorAddress,
exports.ActivatorAddress,
exports.VARX_FCT_MESSAGE_HASH,
exports.VAR_TX_GAS_PRICE,
exports.VARX_TX_GAS_PRICE,
exports.VAR_FCT_MESSAGE_HASH,
].map((variable) => variable.toLowerCase());
exports.ValidationOperator = {
equal: keccak256(toUtf8Bytes("equal")),
"not equal": keccak256(toUtf8Bytes("not equal")),
"greater than": keccak256(toUtf8Bytes("greater than")),
"greater equal than": keccak256(toUtf8Bytes("greater equal than")),
or: keccak256(toUtf8Bytes("or")),
"or not": keccak256(toUtf8Bytes("or not")),
and: keccak256(toUtf8Bytes("and")),
"and not": keccak256(toUtf8Bytes("and not")),
};
exports.CALL_TYPE = {
ACTION: "0",
VIEW_ONLY: "1",
LIBRARY: "2",
LIBRARY_VIEW_ONLY: "3",
};
exports.CALL_TYPE_MSG = {
ACTION: "action",
VIEW_ONLY: "view only",
LIBRARY: "library: action",
LIBRARY_VIEW_ONLY: "library: view only",
};
// Reverse Call Type MSG
exports.CALL_TYPE_MSG_REV = {
action: "ACTION",
"view only": "VIEW_ONLY",
"library: action": "LIBRARY",
"library: view only": "LIBRARY_VIEW_ONLY",
};
exports.FCT_VAULT_ADDRESS = "FCT_VAULT_ADDRESS";
function isVariable(value) {
if (typeof value !== "string")
return false;
const hexString = value.toLowerCase().slice(0, 15);
return allVariables.some((variable) => variable.startsWith(hexString));
}
//# sourceMappingURL=misc.js.map