UNPKG

4.63 kBJavaScriptView Raw
1import { common, createSerializeWire, } from '@neo-one/client-common-esnext-esm';
2import { BinaryReader } from '@neo-one/node-core-esnext-esm';
3export class GetBlocksPayload {
4 constructor({ hashStart, hashStop = common.ZERO_UINT256 }) {
5 this.serializeWire = createSerializeWire(this.serializeWireBase.bind(this));
6 this.hashStart = hashStart;
7 this.hashStop = hashStop;
8 }
9 static deserializeWireBase({ reader }) {
10 const hashStart = reader.readArray(() => reader.readUInt256());
11 const hashStop = reader.readUInt256();
12 return new this({ hashStart, hashStop });
13 }
14 static deserializeWire(options) {
15 return this.deserializeWireBase({
16 context: options.context,
17 reader: new BinaryReader(options.buffer),
18 });
19 }
20 serializeWireBase(writer) {
21 writer.writeArray(this.hashStart, (value) => {
22 writer.writeUInt256(value);
23 });
24 writer.writeUInt256(this.hashStop);
25 }
26}
27
28//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkdldEJsb2Nrc1BheWxvYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLE1BQU0sRUFDTixtQkFBbUIsR0FJcEIsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFzRCxNQUFNLCtCQUErQixDQUFDO0FBTWpILE1BQU0sT0FBTyxnQkFBZ0I7SUFtQjNCLFlBQW1CLEVBQUUsU0FBUyxFQUFFLFFBQVEsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUF1QjtRQUZyRSxrQkFBYSxHQUFrQixtQkFBbUIsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFHcEcsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQXJCTSxNQUFNLENBQUMsbUJBQW1CLENBQUMsRUFBRSxNQUFNLEVBQThCO1FBQ3RFLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDL0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXRDLE9BQU8sSUFBSSxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0sTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUErQjtRQUMzRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztZQUM5QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsTUFBTSxFQUFFLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7U0FDekMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQVdNLGlCQUFpQixDQUFDLE1BQW9CO1FBQzNDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyQyxDQUFDO0NBQ0YiLCJmaWxlIjoibmVvLW9uZS1ub2RlLXByb3RvY29sL3NyYy9wYXlsb2FkL0dldEJsb2Nrc1BheWxvYWQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCaW5hcnlXcml0ZXIsXG4gIGNvbW1vbixcbiAgY3JlYXRlU2VyaWFsaXplV2lyZSxcbiAgU2VyaWFsaXphYmxlV2lyZSxcbiAgU2VyaWFsaXplV2lyZSxcbiAgVUludDI1Nixcbn0gZnJvbSAnQG5lby1vbmUvY2xpZW50LWNvbW1vbi1lc25leHQtZXNtJztcbmltcG9ydCB7IEJpbmFyeVJlYWRlciwgRGVzZXJpYWxpemVXaXJlQmFzZU9wdGlvbnMsIERlc2VyaWFsaXplV2lyZU9wdGlvbnMgfSBmcm9tICdAbmVvLW9uZS9ub2RlLWNvcmUtZXNuZXh0LWVzbSc7XG5leHBvcnQgaW50ZXJmYWNlIEdldEJsb2Nrc1BheWxvYWRBZGQge1xuICByZWFkb25seSBoYXNoU3RhcnQ6IFJlYWRvbmx5QXJyYXk8VUludDI1Nj47XG4gIHJlYWRvbmx5IGhhc2hTdG9wPzogVUludDI1Njtcbn1cblxuZXhwb3J0IGNsYXNzIEdldEJsb2Nrc1BheWxvYWQgaW1wbGVtZW50cyBTZXJpYWxpemFibGVXaXJlPEdldEJsb2Nrc1BheWxvYWQ+IHtcbiAgcHVibGljIHN0YXRpYyBkZXNlcmlhbGl6ZVdpcmVCYXNlKHsgcmVhZGVyIH06IERlc2VyaWFsaXplV2lyZUJhc2VPcHRpb25zKTogR2V0QmxvY2tzUGF5bG9hZCB7XG4gICAgY29uc3QgaGFzaFN0YXJ0ID0gcmVhZGVyLnJlYWRBcnJheSgoKSA9PiByZWFkZXIucmVhZFVJbnQyNTYoKSk7XG4gICAgY29uc3QgaGFzaFN0b3AgPSByZWFkZXIucmVhZFVJbnQyNTYoKTtcblxuICAgIHJldHVybiBuZXcgdGhpcyh7IGhhc2hTdGFydCwgaGFzaFN0b3AgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGRlc2VyaWFsaXplV2lyZShvcHRpb25zOiBEZXNlcmlhbGl6ZVdpcmVPcHRpb25zKTogR2V0QmxvY2tzUGF5bG9hZCB7XG4gICAgcmV0dXJuIHRoaXMuZGVzZXJpYWxpemVXaXJlQmFzZSh7XG4gICAgICBjb250ZXh0OiBvcHRpb25zLmNvbnRleHQsXG4gICAgICByZWFkZXI6IG5ldyBCaW5hcnlSZWFkZXIob3B0aW9ucy5idWZmZXIpLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IGhhc2hTdGFydDogUmVhZG9ubHlBcnJheTxVSW50MjU2PjtcbiAgcHVibGljIHJlYWRvbmx5IGhhc2hTdG9wOiBVSW50MjU2O1xuICBwdWJsaWMgcmVhZG9ubHkgc2VyaWFsaXplV2lyZTogU2VyaWFsaXplV2lyZSA9IGNyZWF0ZVNlcmlhbGl6ZVdpcmUodGhpcy5zZXJpYWxpemVXaXJlQmFzZS5iaW5kKHRoaXMpKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoeyBoYXNoU3RhcnQsIGhhc2hTdG9wID0gY29tbW9uLlpFUk9fVUlOVDI1NiB9OiBHZXRCbG9ja3NQYXlsb2FkQWRkKSB7XG4gICAgdGhpcy5oYXNoU3RhcnQgPSBoYXNoU3RhcnQ7XG4gICAgdGhpcy5oYXNoU3RvcCA9IGhhc2hTdG9wO1xuICB9XG5cbiAgcHVibGljIHNlcmlhbGl6ZVdpcmVCYXNlKHdyaXRlcjogQmluYXJ5V3JpdGVyKTogdm9pZCB7XG4gICAgd3JpdGVyLndyaXRlQXJyYXkodGhpcy5oYXNoU3RhcnQsICh2YWx1ZSkgPT4ge1xuICAgICAgd3JpdGVyLndyaXRlVUludDI1Nih2YWx1ZSk7XG4gICAgfSk7XG4gICAgd3JpdGVyLndyaXRlVUludDI1Nih0aGlzLmhhc2hTdG9wKTtcbiAgfVxufVxuIl19