1 | ;
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const client_common_1 = require("@neo-one/client-common");
|
4 | const Serializable_1 = require("../Serializable");
|
5 | const utils_1 = require("../utils");
|
6 | class ActionBase {
|
7 | constructor({ type, version, index, scriptHash }) {
|
8 | this.serializeWire = Serializable_1.createSerializeWire(this.serializeWireBase.bind(this));
|
9 | this.type = type;
|
10 | this.version = version === undefined ? this.constructor.VERSION : version;
|
11 | this.index = index;
|
12 | this.scriptHash = scriptHash;
|
13 | }
|
14 | static deserializeWireBase(_options) {
|
15 | throw new Error('Not Implemented');
|
16 | }
|
17 | static deserializeWire(options) {
|
18 | return this.deserializeWireBase({
|
19 | context: options.context,
|
20 | reader: new utils_1.BinaryReader(options.buffer),
|
21 | });
|
22 | }
|
23 | serializeWireBase(writer) {
|
24 | writer.writeUInt8(this.type);
|
25 | writer.writeUInt8(this.version);
|
26 | writer.writeUInt64LE(this.index);
|
27 | writer.writeUInt160(this.scriptHash);
|
28 | }
|
29 | serializeActionBaseJSON(_context) {
|
30 | return {
|
31 | version: this.version,
|
32 | index: client_common_1.JSONHelper.writeUInt64(this.index),
|
33 | scriptHash: client_common_1.JSONHelper.writeUInt160(this.scriptHash),
|
34 | };
|
35 | }
|
36 | }
|
37 | ActionBase.VERSION = 0;
|
38 | ActionBase.deserializeActionBaseWireBase = ({ reader }) => {
|
39 | const type = reader.readUInt8();
|
40 | const version = reader.readUInt8();
|
41 | const index = reader.readUInt64LE();
|
42 | const scriptHash = reader.readUInt160();
|
43 | return {
|
44 | type,
|
45 | version,
|
46 | index,
|
47 | scriptHash,
|
48 | };
|
49 | };
|
50 | exports.ActionBase = ActionBase;
|
51 |
|
52 | //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFjdGlvbkJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwwREFBMkY7QUFFM0Ysa0RBT3lCO0FBQ3pCLG9DQUF3QztBQWN4QyxNQUFhLFVBQVU7SUFrQ3JCLFlBQW1CLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUErQjtRQUZwRSxrQkFBYSxHQUFrQixrQ0FBbUIsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFHcEcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsV0FBaUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUNqRyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBdEJNLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxRQUFvQztRQUNwRSxNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxlQUFlLENBQUMsT0FBK0I7UUFDM0QsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7WUFDOUIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1lBQ3hCLE1BQU0sRUFBRSxJQUFJLG9CQUFZLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztTQUN6QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBZU0saUJBQWlCLENBQUMsTUFBb0I7UUFDM0MsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLHVCQUF1QixDQUFDLFFBQThCO1FBQzNELE9BQU87WUFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsS0FBSyxFQUFFLDBCQUFVLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDekMsVUFBVSxFQUFFLDBCQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7U0FDckQsQ0FBQztJQUNKLENBQUM7O0FBckRzQixrQkFBTyxHQUFHLENBQUMsQ0FBQztBQUVaLHdDQUE2QixHQUFHLENBQUMsRUFBRSxNQUFNLEVBQThCLEVBQUUsRUFBRTtJQUNoRyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25DLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFeEMsT0FBTztRQUNMLElBQUk7UUFDSixPQUFPO1FBQ1AsS0FBSztRQUNMLFVBQVU7S0FDWCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBZkosZ0NBdURDIiwiZmlsZSI6Im5lby1vbmUtbm9kZS1jb3JlL3NyYy9hY3Rpb24vQWN0aW9uQmFzZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbkJhc2VKU09OLCBCaW5hcnlXcml0ZXIsIEpTT05IZWxwZXIsIFVJbnQxNjAgfSBmcm9tICdAbmVvLW9uZS9jbGllbnQtY29tbW9uJztcbmltcG9ydCB7IEJOIH0gZnJvbSAnYm4uanMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VyaWFsaXplV2lyZSxcbiAgRGVzZXJpYWxpemVXaXJlQmFzZU9wdGlvbnMsXG4gIERlc2VyaWFsaXplV2lyZU9wdGlvbnMsXG4gIFNlcmlhbGl6YWJsZVdpcmUsXG4gIFNlcmlhbGl6ZUpTT05Db250ZXh0LFxuICBTZXJpYWxpemVXaXJlLFxufSBmcm9tICcuLi9TZXJpYWxpemFibGUnO1xuaW1wb3J0IHsgQmluYXJ5UmVhZGVyIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgQWN0aW9uVHlwZSB9IGZyb20gJy4vQWN0aW9uVHlwZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQmFzZUFkZCB7XG4gIHJlYWRvbmx5IHZlcnNpb24/OiBudW1iZXI7XG4gIHJlYWRvbmx5IGluZGV4OiBCTjtcbiAgcmVhZG9ubHkgc2NyaXB0SGFzaDogVUludDE2MDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25CYXNlQWRkV2l0aFR5cGU8VHlwZSBleHRlbmRzIEFjdGlvblR5cGU+IGV4dGVuZHMgQWN0aW9uQmFzZUFkZCB7XG4gIHJlYWRvbmx5IHR5cGU6IFR5cGU7XG59XG5cbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZSBuby1hbnlcbmV4cG9ydCBjbGFzcyBBY3Rpb25CYXNlPFQgPSBhbnksIFR5cGUgZXh0ZW5kcyBBY3Rpb25UeXBlID0gQWN0aW9uVHlwZT4gaW1wbGVtZW50cyBTZXJpYWxpemFibGVXaXJlPFQ+IHtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBWRVJTSU9OID0gMDtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGRlc2VyaWFsaXplQWN0aW9uQmFzZVdpcmVCYXNlID0gKHsgcmVhZGVyIH06IERlc2VyaWFsaXplV2lyZUJhc2VPcHRpb25zKSA9PiB7XG4gICAgY29uc3QgdHlwZSA9IHJlYWRlci5yZWFkVUludDgoKTtcbiAgICBjb25zdCB2ZXJzaW9uID0gcmVhZGVyLnJlYWRVSW50OCgpO1xuICAgIGNvbnN0IGluZGV4ID0gcmVhZGVyLnJlYWRVSW50NjRMRSgpO1xuICAgIGNvbnN0IHNjcmlwdEhhc2ggPSByZWFkZXIucmVhZFVJbnQxNjAoKTtcblxuICAgIHJldHVybiB7XG4gICAgICB0eXBlLFxuICAgICAgdmVyc2lvbixcbiAgICAgIGluZGV4LFxuICAgICAgc2NyaXB0SGFzaCxcbiAgICB9O1xuICB9O1xuXG4gIHB1YmxpYyBzdGF0aWMgZGVzZXJpYWxpemVXaXJlQmFzZShfb3B0aW9uczogRGVzZXJpYWxpemVXaXJlQmFzZU9wdGlvbnMpOiBBY3Rpb25CYXNlIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBJbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBkZXNlcmlhbGl6ZVdpcmUob3B0aW9uczogRGVzZXJpYWxpemVXaXJlT3B0aW9ucyk6IEFjdGlvbkJhc2Uge1xuICAgIHJldHVybiB0aGlzLmRlc2VyaWFsaXplV2lyZUJhc2Uoe1xuICAgICAgY29udGV4dDogb3B0aW9ucy5jb250ZXh0LFxuICAgICAgcmVhZGVyOiBuZXcgQmluYXJ5UmVhZGVyKG9wdGlvbnMuYnVmZmVyKSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkb25seSB0eXBlOiBUeXBlO1xuICBwdWJsaWMgcmVhZG9ubHkgdmVyc2lvbjogbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgaW5kZXg6IEJOO1xuICBwdWJsaWMgcmVhZG9ubHkgc2NyaXB0SGFzaDogVUludDE2MDtcbiAgcHVibGljIHJlYWRvbmx5IHNlcmlhbGl6ZVdpcmU6IFNlcmlhbGl6ZVdpcmUgPSBjcmVhdGVTZXJpYWxpemVXaXJlKHRoaXMuc2VyaWFsaXplV2lyZUJhc2UuYmluZCh0aGlzKSk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHsgdHlwZSwgdmVyc2lvbiwgaW5kZXgsIHNjcmlwdEhhc2ggfTogQWN0aW9uQmFzZUFkZFdpdGhUeXBlPFR5cGU+KSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLnZlcnNpb24gPSB2ZXJzaW9uID09PSB1bmRlZmluZWQgPyAodGhpcy5jb25zdHJ1Y3RvciBhcyB0eXBlb2YgQWN0aW9uQmFzZSkuVkVSU0lPTiA6IHZlcnNpb247XG4gICAgdGhpcy5pbmRleCA9IGluZGV4O1xuICAgIHRoaXMuc2NyaXB0SGFzaCA9IHNjcmlwdEhhc2g7XG4gIH1cblxuICBwdWJsaWMgc2VyaWFsaXplV2lyZUJhc2Uod3JpdGVyOiBCaW5hcnlXcml0ZXIpOiB2b2lkIHtcbiAgICB3cml0ZXIud3JpdGVVSW50OCh0aGlzLnR5cGUpO1xuICAgIHdyaXRlci53cml0ZVVJbnQ4KHRoaXMudmVyc2lvbik7XG4gICAgd3JpdGVyLndyaXRlVUludDY0TEUodGhpcy5pbmRleCk7XG4gICAgd3JpdGVyLndyaXRlVUludDE2MCh0aGlzLnNjcmlwdEhhc2gpO1xuICB9XG5cbiAgcHVibGljIHNlcmlhbGl6ZUFjdGlvbkJhc2VKU09OKF9jb250ZXh0OiBTZXJpYWxpemVKU09OQ29udGV4dCk6IEFjdGlvbkJhc2VKU09OIHtcbiAgICByZXR1cm4ge1xuICAgICAgdmVyc2lvbjogdGhpcy52ZXJzaW9uLFxuICAgICAgaW5kZXg6IEpTT05IZWxwZXIud3JpdGVVSW50NjQodGhpcy5pbmRleCksXG4gICAgICBzY3JpcHRIYXNoOiBKU09OSGVscGVyLndyaXRlVUludDE2MCh0aGlzLnNjcmlwdEhhc2gpLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|