leap-node
Version:
[](https://codecov.io/gh/leapdao/leap-node) [](https://quay.io/re
26 lines (21 loc) • 723 B
JavaScript
/**
* Copyright (c) 2018-present, Leap DAO (leapdao.org)
*
* This source code is licensed under the Mozilla Public License Version 2.0
* found in the LICENSE file in the root directory of this source tree.
*/
const { Type } = require('leap-core');
module.exports = (state, tx, bridgeState) => {
if (tx.type !== Type.EPOCH_LENGTH_V1) {
throw new Error('epochLength tx V1 expected');
}
const [expectedEpochLength] = bridgeState.epochLengths[
state.epoch.epochLengthIndex + 1
];
const { epochLength } = tx.options;
if (expectedEpochLength !== epochLength) {
throw new Error('Wrong epoch length');
}
state.epoch.epochLengthIndex += 1;
state.epoch.epochLength = tx.options.epochLength;
};