@exromany/lido-csm-sdk
Version:
[](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [](h
203 lines • 8.19 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.LidoSDKCsm = void 0;
const accounting_sdk_js_1 = require("./accounting-sdk/accounting-sdk.js");
const bond_sdk_js_1 = require("./bond-sdk/bond-sdk.js");
const bus_registry_js_1 = require("./common/class-primitives/bus-registry.js");
const index_js_1 = require("./common/index.js");
const core_sdk_js_1 = require("./core-sdk/core-sdk.js");
const deposit_data_sdk_js_1 = require("./deposit-data-sdk/deposit-data-sdk.js");
const deposit_queue_sdk_js_1 = require("./deposit-queue-sdk/deposit-queue-sdk.js");
const events_sdk_js_1 = require("./events-sdk/events-sdk.js");
const fees_monitoring_sdk_js_1 = require("./fees-monitoring-sdk/fees-monitoring-sdk.js");
const frame_sdk_js_1 = require("./frame-sdk/frame-sdk.js");
const ics_gate_sdk_js_1 = require("./ics-gate-sdk/ics-gate-sdk.js");
const keys_cache_sdk_js_1 = require("./keys-cache-sdk/keys-cache-sdk.js");
const keys_sdk_js_1 = require("./keys-sdk/keys-sdk.js");
const keys_with_status_sdk_js_1 = require("./keys-with-status-sdk/keys-with-status-sdk.js");
const module_sdk_js_1 = require("./module-sdk/module-sdk.js");
const operator_sdk_js_1 = require("./operator-sdk/operator-sdk.js");
const parameters_sdk_js_1 = require("./parameters-sdk/parameters-sdk.js");
const permissionless_gate_sdk_js_1 = require("./permissionless-gate-sdk/permissionless-gate-sdk.js");
const rewards_sdk_js_1 = require("./rewards-sdk/rewards-sdk.js");
const roles_sdk_js_1 = require("./roles-sdk/roles-sdk.js");
const discovery_sdk_js_1 = require("./discovery-sdk/discovery-sdk.js");
const stealing_sdk_js_1 = require("./stealing-sdk/stealing-sdk.js");
const strikes_sdk_js_1 = require("./strikes-sdk/strikes-sdk.js");
const tx_sdk_js_1 = require("./tx-sdk/tx-sdk.js");
class LidoSDKCsm {
constructor(props) {
Object.defineProperty(this, "core", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "tx", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "module", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "accounting", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "parameters", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "operator", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "rewards", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "keys", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "keysWithStatus", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "keysCache", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "bond", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "roles", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "permissionlessGate", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "icsGate", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "strikes", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "events", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "frame", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "depositQueue", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "depositData", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "stealing", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "discovery", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "feesMonitoring", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
const coreProps = prepareCoreProps(props);
const bus = new bus_registry_js_1.BusRegistry();
this.core = new core_sdk_js_1.CoreSDK(coreProps);
const commonProps = { ...props, core: this.core, bus };
this.tx = new tx_sdk_js_1.TxSDK(commonProps, 'tx');
this.module = new module_sdk_js_1.ModuleSDK(commonProps, 'module');
this.accounting = new accounting_sdk_js_1.AccountingSDK(commonProps, 'accounting');
this.permissionlessGate = new permissionless_gate_sdk_js_1.PermissionlessGateSDK(commonProps);
this.icsGate = new ics_gate_sdk_js_1.IcsGateSDK(commonProps);
this.parameters = new parameters_sdk_js_1.ParametersSDK(commonProps, 'parameters');
this.operator = new operator_sdk_js_1.OperatorSDK(commonProps, 'operator');
this.keys = new keys_sdk_js_1.KeysSDK(commonProps);
this.keysWithStatus = new keys_with_status_sdk_js_1.KeysWithStatusSDK(commonProps, 'keysWithStatus');
this.keysCache = new keys_cache_sdk_js_1.KeysCacheSDK(commonProps, 'keysCache');
this.bond = new bond_sdk_js_1.BondSDK(commonProps);
this.roles = new roles_sdk_js_1.RolesSDK(commonProps);
this.strikes = new strikes_sdk_js_1.StrikesSDK(commonProps, 'strikes');
this.rewards = new rewards_sdk_js_1.RewardsSDK(commonProps);
this.frame = new frame_sdk_js_1.FrameSDK(commonProps, 'frame');
this.events = new events_sdk_js_1.EventsSDK(commonProps, 'events');
this.depositQueue = new deposit_queue_sdk_js_1.DepositQueueSDK(commonProps);
this.depositData = new deposit_data_sdk_js_1.DepositDataSDK(commonProps);
this.stealing = new stealing_sdk_js_1.StealingSDK(commonProps);
this.feesMonitoring = new fees_monitoring_sdk_js_1.FeesMonitoringSDK(commonProps);
this.discovery = new discovery_sdk_js_1.DiscoverySDK(commonProps, 'discovery');
}
}
exports.LidoSDKCsm = LidoSDKCsm;
const prepareCoreProps = (props) => {
const chainId = props.core.chain.id;
return {
...props,
contractAddresses: {
...index_js_1.CSM_CONTRACT_ADDRESSES[chainId],
...props.overridedAddresses,
},
moduleName: index_js_1.CONTRACT_NAMES.csModule,
moduleId: index_js_1.CSM_MODULE_IDS[chainId],
deploymentBlockNumber: index_js_1.CSM_DEPLOYMENT_BLOCK_NUMBERS[chainId],
};
};
//# sourceMappingURL=lido-sdk-csm.js.map