@xyo-network/xl1-cli 1.19.4 → 1.19.5
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/cli-min.mjs +216 -179
- package/package.json +3 -3
package/dist/cli-min.mjs
CHANGED
|
@@ -201982,6 +201982,44 @@ async function createChain(signer, stakingTokenAddress, initialBlockProducer, re
|
|
|
201982
201982
|
];
|
|
201983
201983
|
}
|
|
201984
201984
|
__name$e(createChain, "createChain");
|
|
201985
|
+
var EthHashRegEx = HexRegExMinMaxMixedCaseWithPrefix(32, 32);
|
|
201986
|
+
var EthHashZod = string$2().regex(EthHashRegEx, {
|
|
201987
|
+
message: "Invalid address format"
|
|
201988
|
+
});
|
|
201989
|
+
var EvmStakeAddedEventNameZod = literal$2("StakeAdded");
|
|
201990
|
+
var EvmStakeRemovedEventNameZod = literal$2("StakeRemoved");
|
|
201991
|
+
var EvmStakeWithdrawnEventNameZod = literal$2("StakeWithdrawn");
|
|
201992
|
+
var EvmStakeEventNameZod = union$1([
|
|
201993
|
+
EvmStakeAddedEventNameZod,
|
|
201994
|
+
EvmStakeRemovedEventNameZod,
|
|
201995
|
+
EvmStakeWithdrawnEventNameZod
|
|
201996
|
+
]);
|
|
201997
|
+
var EvmStakeEventArgsZod = tuple([
|
|
201998
|
+
EthAddressZod,
|
|
201999
|
+
EthAddressZod,
|
|
202000
|
+
bigint$1(),
|
|
202001
|
+
bigint$1()
|
|
202002
|
+
]);
|
|
202003
|
+
var EvmStakeEventZod = object$4({
|
|
202004
|
+
address: EthAddressZod,
|
|
202005
|
+
args: EvmStakeEventArgsZod,
|
|
202006
|
+
blockHash: EthHashZod,
|
|
202007
|
+
blockNumber: number$3(),
|
|
202008
|
+
eventName: EvmStakeEventNameZod,
|
|
202009
|
+
transactionHash: EthHashZod,
|
|
202010
|
+
transactionIndex: number$3()
|
|
202011
|
+
});
|
|
202012
|
+
EvmStakeEventZod.extend({
|
|
202013
|
+
eventName: EvmStakeAddedEventNameZod
|
|
202014
|
+
});
|
|
202015
|
+
EvmStakeEventZod.extend({
|
|
202016
|
+
eventName: EvmStakeRemovedEventNameZod
|
|
202017
|
+
});
|
|
202018
|
+
EvmStakeEventZod.extend({
|
|
202019
|
+
eventName: EvmStakeWithdrawnEventNameZod
|
|
202020
|
+
});
|
|
202021
|
+
|
|
202022
|
+
// src/drivers/EvmStakeEventsViewer.ts
|
|
201985
202023
|
function _ts_decorate$5(decorators, target, key, desc) {
|
|
201986
202024
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
201987
202025
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -201989,6 +202027,170 @@ function _ts_decorate$5(decorators, target, key, desc) {
|
|
|
201989
202027
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
201990
202028
|
}
|
|
201991
202029
|
__name$e(_ts_decorate$5, "_ts_decorate");
|
|
202030
|
+
var EvmStakeEventsViewer = class _EvmStakeEventsViewer extends AbstractCreatableProvider {
|
|
202031
|
+
static {
|
|
202032
|
+
__name$e(this, "EvmStakeEventsViewer");
|
|
202033
|
+
}
|
|
202034
|
+
static defaultMoniker = StakeEventsViewerMoniker;
|
|
202035
|
+
static dependencies = [];
|
|
202036
|
+
static monikers = [
|
|
202037
|
+
StakeEventsViewerMoniker
|
|
202038
|
+
];
|
|
202039
|
+
moniker = _EvmStakeEventsViewer.defaultMoniker;
|
|
202040
|
+
eventCache = /* @__PURE__ */ new Map();
|
|
202041
|
+
get contract() {
|
|
202042
|
+
return assertEx(this.params.contract, () => new Error("Contract not defined"));
|
|
202043
|
+
}
|
|
202044
|
+
get deploymentBlock() {
|
|
202045
|
+
return this.params.deploymentBlock ?? 0;
|
|
202046
|
+
}
|
|
202047
|
+
async positionCount(range) {
|
|
202048
|
+
const events = await this.stakeEvents(range);
|
|
202049
|
+
const positionIds = events.map((e) => e.args.id);
|
|
202050
|
+
return Math.max(-1, ...positionIds) + 1;
|
|
202051
|
+
}
|
|
202052
|
+
stakeEvents(range = [
|
|
202053
|
+
0,
|
|
202054
|
+
"latest"
|
|
202055
|
+
], filter) {
|
|
202056
|
+
const allEvents = [
|
|
202057
|
+
...this.eventCache.values()
|
|
202058
|
+
];
|
|
202059
|
+
const result = allEvents.filter((e) => {
|
|
202060
|
+
if (range[1] !== "latest" && e.time > range[1]) {
|
|
202061
|
+
return false;
|
|
202062
|
+
}
|
|
202063
|
+
if (e.time < range[0]) {
|
|
202064
|
+
return false;
|
|
202065
|
+
}
|
|
202066
|
+
if (isDefined(filter?.name) && e.name !== filter.name) {
|
|
202067
|
+
return false;
|
|
202068
|
+
}
|
|
202069
|
+
if (isDefined(filter?.args?.id) && e.args.id !== filter.args.id) {
|
|
202070
|
+
return false;
|
|
202071
|
+
}
|
|
202072
|
+
if (isDefined(filter?.args?.staked) && e.args.staked !== filter.args.staked) {
|
|
202073
|
+
return false;
|
|
202074
|
+
}
|
|
202075
|
+
if (isDefined(filter?.args?.staker) && e.args.staker !== filter.args.staker) {
|
|
202076
|
+
return false;
|
|
202077
|
+
}
|
|
202078
|
+
return true;
|
|
202079
|
+
});
|
|
202080
|
+
return result;
|
|
202081
|
+
}
|
|
202082
|
+
onEventHandler(staked, staker, id, amount, event, throwOnInvalid = false) {
|
|
202083
|
+
const validatedEventResult = EvmStakeEventZod.safeParse(event);
|
|
202084
|
+
if (validatedEventResult.error) {
|
|
202085
|
+
this.logger?.warn(`Received invalid stake event [${event.eventName}/${event.blockNumber}], ignoring...`);
|
|
202086
|
+
this.logger?.warn(` - ${validatedEventResult.error.message}`);
|
|
202087
|
+
if (throwOnInvalid) {
|
|
202088
|
+
throw new Error(`Invalid stake event: ${validatedEventResult.error.message}`);
|
|
202089
|
+
}
|
|
202090
|
+
return;
|
|
202091
|
+
}
|
|
202092
|
+
const validatedEvent = validatedEventResult.data;
|
|
202093
|
+
const { eventName, blockNumber } = validatedEvent;
|
|
202094
|
+
this.logger?.log(`Processing ${eventName} event for stake ID ${id} at block ${blockNumber}`);
|
|
202095
|
+
const cacheKey = `${Number(id)}|${eventName}|${staker}`;
|
|
202096
|
+
const existingStakeEvent = this.eventCache.get(cacheKey);
|
|
202097
|
+
const stakeEvent = {
|
|
202098
|
+
name: eventName,
|
|
202099
|
+
args: {
|
|
202100
|
+
id: Number(id),
|
|
202101
|
+
staked: toAddress(staked),
|
|
202102
|
+
staker: toAddress(staker),
|
|
202103
|
+
amount: asAttoXL1(amount)
|
|
202104
|
+
},
|
|
202105
|
+
time: blockNumber
|
|
202106
|
+
};
|
|
202107
|
+
if (isDefined(existingStakeEvent)) {
|
|
202108
|
+
this.logger?.warn(`Received ${eventName} event for stake ID ${id} that is already cached, updating cache...`);
|
|
202109
|
+
this.logger?.warn("1");
|
|
202110
|
+
this.logger?.warn("Previous event", existingStakeEvent);
|
|
202111
|
+
this.logger?.warn("2");
|
|
202112
|
+
this.logger?.warn("New event", stakeEvent);
|
|
202113
|
+
this.logger?.warn("3");
|
|
202114
|
+
}
|
|
202115
|
+
this.eventCache.set(cacheKey, stakeEvent);
|
|
202116
|
+
return stakeEvent;
|
|
202117
|
+
}
|
|
202118
|
+
async startHandler() {
|
|
202119
|
+
try {
|
|
202120
|
+
const currentEthBlock = assertEx(await this.contract.runner?.provider?.getBlockNumber(), () => new Error("Failed to egt currentEthBlock"));
|
|
202121
|
+
await this.contract.on(this.contract.getEvent("StakeAdded"), (staked, staker, id, amount, event) => {
|
|
202122
|
+
this.onEventHandler(staked, staker, id, amount, event);
|
|
202123
|
+
});
|
|
202124
|
+
await this.contract.on(this.contract.getEvent("StakeRemoved"), (staked, staker, id, amount, event) => {
|
|
202125
|
+
this.onEventHandler(staked, staker, id, amount, event);
|
|
202126
|
+
});
|
|
202127
|
+
await this.contract.on(this.contract.getEvent("StakeWithdrawn"), (staked, staker, id, amount, event) => {
|
|
202128
|
+
this.onEventHandler(staked, staker, id, amount, event);
|
|
202129
|
+
});
|
|
202130
|
+
await this.loadHistoricalEvents(currentEthBlock);
|
|
202131
|
+
} catch (error) {
|
|
202132
|
+
this.logger?.error("EthereumChainStakeEvents failed to start:", error);
|
|
202133
|
+
throw error;
|
|
202134
|
+
}
|
|
202135
|
+
}
|
|
202136
|
+
async loadHistoricalEvents(currentEthBlock) {
|
|
202137
|
+
const allStakeEvents = (await Promise.all([
|
|
202138
|
+
this.stakeEventsNative([
|
|
202139
|
+
this.deploymentBlock,
|
|
202140
|
+
currentEthBlock
|
|
202141
|
+
], {
|
|
202142
|
+
name: "StakeAdded"
|
|
202143
|
+
}),
|
|
202144
|
+
this.stakeEventsNative([
|
|
202145
|
+
this.deploymentBlock,
|
|
202146
|
+
currentEthBlock
|
|
202147
|
+
], {
|
|
202148
|
+
name: "StakeRemoved"
|
|
202149
|
+
}),
|
|
202150
|
+
this.stakeEventsNative([
|
|
202151
|
+
this.deploymentBlock,
|
|
202152
|
+
currentEthBlock
|
|
202153
|
+
], {
|
|
202154
|
+
name: "StakeWithdrawn"
|
|
202155
|
+
})
|
|
202156
|
+
])).flat().toSorted((a, b) => a.time - b.time);
|
|
202157
|
+
console.warn(`Caching ${allStakeEvents.length} stake events from chain starting at block ${this.deploymentBlock}`);
|
|
202158
|
+
for (const event of allStakeEvents) {
|
|
202159
|
+
this.eventCache.set(`${Number(event.args.id)}|${event.name}|${event.args.staker}`, event);
|
|
202160
|
+
}
|
|
202161
|
+
}
|
|
202162
|
+
async stakeEventsNative(range = [
|
|
202163
|
+
0,
|
|
202164
|
+
"latest"
|
|
202165
|
+
], filter) {
|
|
202166
|
+
const name = filter?.name;
|
|
202167
|
+
if (isDefined(name)) {
|
|
202168
|
+
const stakedFilter = filter?.args?.staked;
|
|
202169
|
+
const stakerFilter = filter?.args?.staker;
|
|
202170
|
+
const stakedFilterEth = isDefined(stakedFilter) ? toEthAddress(stakedFilter) : void 0;
|
|
202171
|
+
const stakerFilterEth = isDefined(stakerFilter) ? toEthAddress(stakerFilter) : void 0;
|
|
202172
|
+
let ethEvents = [];
|
|
202173
|
+
const ethFilter = this.contract.filters[name](stakedFilterEth, stakerFilterEth);
|
|
202174
|
+
ethEvents = await this.contract.queryFilter(ethFilter, range[0], range[1]);
|
|
202175
|
+
return ethEvents.map((e) => {
|
|
202176
|
+
assertEx(e.eventName === name, () => `Event name mismatch expected '${name}' but got '${e.eventName}'`);
|
|
202177
|
+
return this.onEventHandler(e.args.staked, e.args.by, e.args.id, e.args.amount, e, true);
|
|
202178
|
+
}).filter(exists$2);
|
|
202179
|
+
} else {
|
|
202180
|
+
throw new Error("Only filtered stake events (by name) are supported");
|
|
202181
|
+
}
|
|
202182
|
+
}
|
|
202183
|
+
};
|
|
202184
|
+
EvmStakeEventsViewer = _ts_decorate$5([
|
|
202185
|
+
creatableProvider()
|
|
202186
|
+
], EvmStakeEventsViewer);
|
|
202187
|
+
function _ts_decorate2$3(decorators, target, key, desc) {
|
|
202188
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
202189
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
202190
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
202191
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
202192
|
+
}
|
|
202193
|
+
__name$e(_ts_decorate2$3, "_ts_decorate");
|
|
201992
202194
|
var ethStakeToStake = /* @__PURE__ */ __name$e((ethStake) => {
|
|
201993
202195
|
const stake = {
|
|
201994
202196
|
id: Number(ethStake.id),
|
|
@@ -202001,16 +202203,16 @@ var ethStakeToStake = /* @__PURE__ */ __name$e((ethStake) => {
|
|
|
202001
202203
|
};
|
|
202002
202204
|
return stake;
|
|
202003
202205
|
}, "ethStakeToStake");
|
|
202004
|
-
var
|
|
202206
|
+
var EvmStakeViewer = class _EvmStakeViewer extends AbstractCreatableProvider {
|
|
202005
202207
|
static {
|
|
202006
|
-
__name$e(this, "
|
|
202208
|
+
__name$e(this, "EvmStakeViewer");
|
|
202007
202209
|
}
|
|
202008
202210
|
static defaultMoniker = StakeViewerMoniker;
|
|
202009
202211
|
static dependencies = [];
|
|
202010
202212
|
static monikers = [
|
|
202011
202213
|
StakeViewerMoniker
|
|
202012
202214
|
];
|
|
202013
|
-
moniker =
|
|
202215
|
+
moniker = _EvmStakeViewer.defaultMoniker;
|
|
202014
202216
|
_callMutex = new Mutex$1();
|
|
202015
202217
|
_deploymentBlock = 0;
|
|
202016
202218
|
_stakeCache = /* @__PURE__ */ new Map();
|
|
@@ -202211,174 +202413,9 @@ var EthereumChainStakeViewer = class _EthereumChainStakeViewer extends AbstractC
|
|
|
202211
202413
|
}
|
|
202212
202414
|
}
|
|
202213
202415
|
};
|
|
202214
|
-
|
|
202215
|
-
creatableProvider()
|
|
202216
|
-
], EthereumChainStakeViewer);
|
|
202217
|
-
function _ts_decorate2$3(decorators, target, key, desc) {
|
|
202218
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
202219
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
202220
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
202221
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
202222
|
-
}
|
|
202223
|
-
__name$e(_ts_decorate2$3, "_ts_decorate");
|
|
202224
|
-
var isStakeLogEventName = /* @__PURE__ */ __name$e((name) => {
|
|
202225
|
-
return isString$1(name) && [
|
|
202226
|
-
"StakeAdded",
|
|
202227
|
-
"StakeRemoved",
|
|
202228
|
-
"StakeWithdrawn"
|
|
202229
|
-
].includes(name);
|
|
202230
|
-
}, "isStakeLogEventName");
|
|
202231
|
-
var EthereumChainStakeEventsViewer = class _EthereumChainStakeEventsViewer extends AbstractCreatableProvider {
|
|
202232
|
-
static {
|
|
202233
|
-
__name$e(this, "EthereumChainStakeEventsViewer");
|
|
202234
|
-
}
|
|
202235
|
-
static defaultMoniker = StakeEventsViewerMoniker;
|
|
202236
|
-
static dependencies = [];
|
|
202237
|
-
static monikers = [
|
|
202238
|
-
StakeEventsViewerMoniker
|
|
202239
|
-
];
|
|
202240
|
-
moniker = _EthereumChainStakeEventsViewer.defaultMoniker;
|
|
202241
|
-
eventCache = /* @__PURE__ */ new Map();
|
|
202242
|
-
get contract() {
|
|
202243
|
-
return assertEx(this.params.contract, () => new Error("Contract not defined"));
|
|
202244
|
-
}
|
|
202245
|
-
get deploymentBlock() {
|
|
202246
|
-
return this.params.deploymentBlock ?? 0;
|
|
202247
|
-
}
|
|
202248
|
-
async positionCount(range) {
|
|
202249
|
-
const events = await this.stakeEvents(range);
|
|
202250
|
-
const positionIds = events.map((e) => e.args.id);
|
|
202251
|
-
return Math.max(-1, ...positionIds) + 1;
|
|
202252
|
-
}
|
|
202253
|
-
stakeEvents(range = [
|
|
202254
|
-
0,
|
|
202255
|
-
"latest"
|
|
202256
|
-
], filter) {
|
|
202257
|
-
const allEvents = [
|
|
202258
|
-
...this.eventCache.values()
|
|
202259
|
-
];
|
|
202260
|
-
const result = allEvents.filter((e) => {
|
|
202261
|
-
if (range[1] !== "latest" && e.time > range[1]) {
|
|
202262
|
-
return false;
|
|
202263
|
-
}
|
|
202264
|
-
if (e.time < range[0]) {
|
|
202265
|
-
return false;
|
|
202266
|
-
}
|
|
202267
|
-
if (isDefined(filter?.name) && e.name !== filter.name) {
|
|
202268
|
-
return false;
|
|
202269
|
-
}
|
|
202270
|
-
if (isDefined(filter?.args?.id) && e.args.id !== filter.args.id) {
|
|
202271
|
-
return false;
|
|
202272
|
-
}
|
|
202273
|
-
if (isDefined(filter?.args?.staked) && e.args.staked !== filter.args.staked) {
|
|
202274
|
-
return false;
|
|
202275
|
-
}
|
|
202276
|
-
if (isDefined(filter?.args?.staker) && e.args.staker !== filter.args.staker) {
|
|
202277
|
-
return false;
|
|
202278
|
-
}
|
|
202279
|
-
return true;
|
|
202280
|
-
});
|
|
202281
|
-
return result;
|
|
202282
|
-
}
|
|
202283
|
-
onEventHandler(staked, staker, id, amount, { eventName, blockNumber }) {
|
|
202284
|
-
if (blockNumber === void 0) {
|
|
202285
|
-
this.logger?.warn(`Received ${eventName} event with ${blockNumber} blockNumber, ignoring...`);
|
|
202286
|
-
return;
|
|
202287
|
-
}
|
|
202288
|
-
if (!isStakeLogEventName(eventName)) {
|
|
202289
|
-
this.logger?.warn(`Received event with unsupported name '${eventName}'`);
|
|
202290
|
-
return;
|
|
202291
|
-
}
|
|
202292
|
-
this.logger?.log(`Processing ${eventName} event for stake ID ${id} at block ${blockNumber}`);
|
|
202293
|
-
const cacheKey = `${Number(id)}|${eventName}|${staker}`;
|
|
202294
|
-
const existingStakeEvent = this.eventCache.get(cacheKey);
|
|
202295
|
-
const stakeEvent = {
|
|
202296
|
-
name: eventName,
|
|
202297
|
-
args: {
|
|
202298
|
-
id: Number(id),
|
|
202299
|
-
staked: toAddress(staked),
|
|
202300
|
-
staker: toAddress(staker),
|
|
202301
|
-
amount: asAttoXL1(amount)
|
|
202302
|
-
},
|
|
202303
|
-
time: blockNumber
|
|
202304
|
-
};
|
|
202305
|
-
if (isDefined(existingStakeEvent)) {
|
|
202306
|
-
this.logger?.warn(`Received ${eventName} event for stake ID ${id} that is already cached, updating cache...`);
|
|
202307
|
-
this.logger?.warn("1");
|
|
202308
|
-
this.logger?.warn("Previous event", existingStakeEvent);
|
|
202309
|
-
this.logger?.warn("2");
|
|
202310
|
-
this.logger?.warn("New event", stakeEvent);
|
|
202311
|
-
this.logger?.warn("3");
|
|
202312
|
-
}
|
|
202313
|
-
this.eventCache.set(cacheKey, stakeEvent);
|
|
202314
|
-
return stakeEvent;
|
|
202315
|
-
}
|
|
202316
|
-
async startHandler() {
|
|
202317
|
-
try {
|
|
202318
|
-
const currentEthBlock = assertEx(await this.contract.runner?.provider?.getBlockNumber(), () => new Error("Failed to egt currentEthBlock"));
|
|
202319
|
-
await this.contract.on(this.contract.getEvent("StakeAdded"), (staked, staker, id, amount, event) => {
|
|
202320
|
-
this.onEventHandler(staked, staker, id, amount, event);
|
|
202321
|
-
});
|
|
202322
|
-
await this.contract.on(this.contract.getEvent("StakeRemoved"), (staked, staker, id, amount, event) => {
|
|
202323
|
-
this.onEventHandler(staked, staker, id, amount, event);
|
|
202324
|
-
});
|
|
202325
|
-
await this.contract.on(this.contract.getEvent("StakeWithdrawn"), (staked, staker, id, amount, event) => {
|
|
202326
|
-
this.onEventHandler(staked, staker, id, amount, event);
|
|
202327
|
-
});
|
|
202328
|
-
const allStakeEvents = (await Promise.all([
|
|
202329
|
-
this.stakeEventsNative([
|
|
202330
|
-
this.deploymentBlock,
|
|
202331
|
-
currentEthBlock
|
|
202332
|
-
], {
|
|
202333
|
-
name: "StakeAdded"
|
|
202334
|
-
}),
|
|
202335
|
-
this.stakeEventsNative([
|
|
202336
|
-
this.deploymentBlock,
|
|
202337
|
-
currentEthBlock
|
|
202338
|
-
], {
|
|
202339
|
-
name: "StakeRemoved"
|
|
202340
|
-
}),
|
|
202341
|
-
this.stakeEventsNative([
|
|
202342
|
-
this.deploymentBlock,
|
|
202343
|
-
currentEthBlock
|
|
202344
|
-
], {
|
|
202345
|
-
name: "StakeWithdrawn"
|
|
202346
|
-
})
|
|
202347
|
-
])).flat().toSorted((a, b) => a.time - b.time);
|
|
202348
|
-
console.warn(`Caching ${allStakeEvents.length} stake events from chain starting at block ${this.deploymentBlock}`);
|
|
202349
|
-
for (const event of allStakeEvents) {
|
|
202350
|
-
this.eventCache.set(`${Number(event.args.id)}|${event.name}|${event.args.staker}`, event);
|
|
202351
|
-
}
|
|
202352
|
-
} catch (error) {
|
|
202353
|
-
this.logger?.error("EthereumChainStakeEvents failed to start:", error);
|
|
202354
|
-
throw error;
|
|
202355
|
-
}
|
|
202356
|
-
}
|
|
202357
|
-
async stakeEventsNative(range = [
|
|
202358
|
-
0,
|
|
202359
|
-
"latest"
|
|
202360
|
-
], filter) {
|
|
202361
|
-
const name = filter?.name;
|
|
202362
|
-
if (isDefined(name)) {
|
|
202363
|
-
const stakedFilter = filter?.args?.staked;
|
|
202364
|
-
const stakerFilter = filter?.args?.staker;
|
|
202365
|
-
const stakedFilterEth = isDefined(stakedFilter) ? toEthAddress(stakedFilter) : void 0;
|
|
202366
|
-
const stakerFilterEth = isDefined(stakerFilter) ? toEthAddress(stakerFilter) : void 0;
|
|
202367
|
-
let ethEvents = [];
|
|
202368
|
-
const ethFilter = this.contract.filters[name](stakedFilterEth, stakerFilterEth);
|
|
202369
|
-
ethEvents = await this.contract.queryFilter(ethFilter, range[0], range[1]);
|
|
202370
|
-
return ethEvents.map((e) => {
|
|
202371
|
-
assertEx(e.eventName === name, () => `Event name mismatch expected '${name}' but got '${e.eventName}'`);
|
|
202372
|
-
return this.onEventHandler(e.args.staked, e.args.by, e.args.id, e.args.amount, e);
|
|
202373
|
-
}).filter(exists$2);
|
|
202374
|
-
} else {
|
|
202375
|
-
throw new Error("Only filtered stake events (by name) are supported");
|
|
202376
|
-
}
|
|
202377
|
-
}
|
|
202378
|
-
};
|
|
202379
|
-
EthereumChainStakeEventsViewer = _ts_decorate2$3([
|
|
202416
|
+
EvmStakeViewer = _ts_decorate2$3([
|
|
202380
202417
|
creatableProvider()
|
|
202381
|
-
],
|
|
202418
|
+
], EvmStakeViewer);
|
|
202382
202419
|
var AbstractEvmProvider = class extends AbstractCreatableProvider {
|
|
202383
202420
|
static {
|
|
202384
202421
|
__name$e(this, "AbstractEvmProvider");
|
|
@@ -297899,19 +297936,19 @@ async function initEvmChainStakeViewer(context, config, logger) {
|
|
|
297899
297936
|
});
|
|
297900
297937
|
const contractAddress = assertEx(config.chain.id, () => "Missing config.evm.chainId");
|
|
297901
297938
|
const contract = IStakedXyoChain__factory.connect(toEthAddress(contractAddress), provider2);
|
|
297902
|
-
const stakeEventsViewer = await
|
|
297939
|
+
const stakeEventsViewer = await EvmStakeEventsViewer.create({
|
|
297903
297940
|
contract,
|
|
297904
297941
|
logger,
|
|
297905
297942
|
context
|
|
297906
297943
|
});
|
|
297907
|
-
assertEx(await stakeEventsViewer.start(), () => "Failed to start
|
|
297908
|
-
const stakeChainViewer = await
|
|
297944
|
+
assertEx(await stakeEventsViewer.start(), () => "Failed to start EvmStakeEvents reader");
|
|
297945
|
+
const stakeChainViewer = await EvmStakeViewer.create({
|
|
297909
297946
|
contract,
|
|
297910
297947
|
stakeEventsViewer,
|
|
297911
297948
|
logger,
|
|
297912
297949
|
context
|
|
297913
297950
|
});
|
|
297914
|
-
assertEx(await stakeChainViewer.start(), () => "Failed to start
|
|
297951
|
+
assertEx(await stakeChainViewer.start(), () => "Failed to start EvmStake viewer");
|
|
297915
297952
|
return stakeChainViewer;
|
|
297916
297953
|
}
|
|
297917
297954
|
__name$6(initEvmChainStakeViewer, "initEvmChainStakeViewer");
|
|
@@ -298770,12 +298807,12 @@ async function getServer$3(params) {
|
|
|
298770
298807
|
});
|
|
298771
298808
|
const contractAddress = assertEx(config.chain.id, () => "Missing config.chain.chainId");
|
|
298772
298809
|
const contract = IStakedXyoChain__factory.connect(toEthAddress(contractAddress), provider);
|
|
298773
|
-
locator.register(
|
|
298810
|
+
locator.register(EvmStakeEventsViewer.factory(EvmStakeEventsViewer.dependencies, {
|
|
298774
298811
|
contract
|
|
298775
298812
|
}));
|
|
298776
|
-
const stakeEventsViewer = await locator.getInstance(
|
|
298777
|
-
assertEx(await stakeEventsViewer.start(), () => "Failed to start
|
|
298778
|
-
locator.register(
|
|
298813
|
+
const stakeEventsViewer = await locator.getInstance(EvmStakeEventsViewer.defaultMoniker);
|
|
298814
|
+
assertEx(await stakeEventsViewer.start(), () => "Failed to start EvmStakeEventsViewer");
|
|
298815
|
+
locator.register(EvmStakeViewer.factory(EvmStakeViewer.dependencies, {
|
|
298779
298816
|
contract,
|
|
298780
298817
|
stakeEventsViewer
|
|
298781
298818
|
}));
|
|
@@ -350450,7 +350487,7 @@ var waitForHostPort = /* @__PURE__ */ __name((host, port) => {
|
|
|
350450
350487
|
|
|
350451
350488
|
// src/runCLI.ts
|
|
350452
350489
|
var configuration;
|
|
350453
|
-
var version = isDefined("1.19.
|
|
350490
|
+
var version = isDefined("1.19.4") ? "1.19.4" : "unknown";
|
|
350454
350491
|
var getContextFromConfig = /* @__PURE__ */ __name(async (configuration2) => {
|
|
350455
350492
|
const logger = initLogger(configuration2);
|
|
350456
350493
|
const orchestrator = await Orchestrator.create({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/xl1-cli",
|
|
3
|
-
"version": "1.19.
|
|
3
|
+
"version": "1.19.5",
|
|
4
4
|
"description": "XYO Layer One CLI",
|
|
5
5
|
"homepage": "https://xylabs.com",
|
|
6
6
|
"bugs": {
|
|
@@ -75,8 +75,8 @@
|
|
|
75
75
|
"@xyo-network/payload-model": "~5.3.2",
|
|
76
76
|
"@xyo-network/wallet": "~5.3.2",
|
|
77
77
|
"@xyo-network/wallet-model": "~5.3.2",
|
|
78
|
-
"@xyo-network/xl1-cli-lib": "~1.19.
|
|
79
|
-
"@xyo-network/xl1-sdk": "~1.21.
|
|
78
|
+
"@xyo-network/xl1-cli-lib": "~1.19.5",
|
|
79
|
+
"@xyo-network/xl1-sdk": "~1.21.10",
|
|
80
80
|
"async-mutex": "~0.5.0",
|
|
81
81
|
"dotenv": "~17.2.3",
|
|
82
82
|
"eslint": "^9.39.2",
|