You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.8 KiB
51 lines
1.8 KiB
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.waitToProve = waitToProve;
|
|
const withdrawal_js_1 = require("../errors/withdrawal.js");
|
|
const getWithdrawals_js_1 = require("../utils/getWithdrawals.js");
|
|
const getPortalVersion_js_1 = require("./getPortalVersion.js");
|
|
const waitForNextGame_js_1 = require("./waitForNextGame.js");
|
|
const waitForNextL2Output_js_1 = require("./waitForNextL2Output.js");
|
|
async function waitToProve(client, parameters) {
|
|
const { gameLimit, receipt } = parameters;
|
|
const [withdrawal] = (0, getWithdrawals_js_1.getWithdrawals)(receipt);
|
|
if (!withdrawal)
|
|
throw new withdrawal_js_1.ReceiptContainsNoWithdrawalsError({
|
|
hash: receipt.transactionHash,
|
|
});
|
|
const portalVersion = await (0, getPortalVersion_js_1.getPortalVersion)(client, parameters);
|
|
if (portalVersion.major < 3) {
|
|
const output = await (0, waitForNextL2Output_js_1.waitForNextL2Output)(client, {
|
|
...parameters,
|
|
l2BlockNumber: receipt.blockNumber,
|
|
});
|
|
return {
|
|
game: {
|
|
extraData: '0x',
|
|
index: output.outputIndex,
|
|
l2BlockNumber: output.l2BlockNumber,
|
|
metadata: '0x',
|
|
rootClaim: output.outputRoot,
|
|
timestamp: output.timestamp,
|
|
},
|
|
output,
|
|
withdrawal,
|
|
};
|
|
}
|
|
const game = await (0, waitForNextGame_js_1.waitForNextGame)(client, {
|
|
...parameters,
|
|
limit: gameLimit,
|
|
l2BlockNumber: receipt.blockNumber,
|
|
});
|
|
return {
|
|
game,
|
|
output: {
|
|
l2BlockNumber: game.l2BlockNumber,
|
|
outputIndex: game.index,
|
|
outputRoot: game.rootClaim,
|
|
timestamp: game.timestamp,
|
|
},
|
|
withdrawal,
|
|
};
|
|
}
|
|
//# sourceMappingURL=waitToProve.js.map
|