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