UNPKG

5.14 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const client_common_1 = require("@neo-one/client-common");
4const utils_1 = require("../utils");
5const ContractParameterBase_1 = require("./ContractParameterBase");
6const ContractParameterType_1 = require("./ContractParameterType");
7class SignatureContractParameter extends ContractParameterBase_1.ContractParameterBase {
8 constructor(value) {
9 super();
10 this.type = ContractParameterType_1.ContractParameterType.Signature;
11 this.value = value;
12 this.sizeInternal = utils_1.utils.lazy(() => client_common_1.IOHelper.sizeOfVarBytesLE(this.value));
13 }
14 static deserializeWireBase(options) {
15 const { reader } = options;
16 super.deserializeContractParameterBaseWireBase(options);
17 const value = reader.readVarBytesLE();
18 return new this(value);
19 }
20 get size() {
21 return this.sizeInternal();
22 }
23 asBuffer() {
24 return this.value;
25 }
26 serializeWireBase(writer) {
27 super.serializeWireBase(writer);
28 writer.writeVarBytesLE(this.value);
29 }
30 serializeJSON(_context) {
31 return {
32 type: 'Signature',
33 value: client_common_1.JSONHelper.writeBuffer(this.value),
34 };
35 }
36}
37exports.SignatureContractParameter = SignatureContractParameter;
38
39//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNpZ25hdHVyZUNvbnRyYWN0UGFyYW1ldGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMERBQTRFO0FBRTVFLG9DQUFpQztBQUNqQyxtRUFBZ0U7QUFDaEUsbUVBQWdFO0FBT2hFLE1BQWEsMEJBQTJCLFNBQVEsNkNBSS9DO0lBYUMsWUFBbUIsS0FBYTtRQUM5QixLQUFLLEVBQUUsQ0FBQztRQUxNLFNBQUksR0FBRyw2Q0FBcUIsQ0FBQyxTQUFTLENBQUM7UUFNckQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxhQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQWhCTSxNQUFNLENBQUMsbUJBQW1CLENBQUMsT0FBbUM7UUFDbkUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUMzQixLQUFLLENBQUMsd0NBQXdDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXRDLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQVlELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTSxRQUFRO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxNQUFvQjtRQUMzQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLGFBQWEsQ0FBQyxRQUE4QjtRQUNqRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLFdBQVc7WUFDakIsS0FBSyxFQUFFLDBCQUFVLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDMUMsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTFDRCxnRUEwQ0MiLCJmaWxlIjoibmVvLW9uZS1ub2RlLWNvcmUvc3JjL2NvbnRyYWN0UGFyYW1ldGVyL1NpZ25hdHVyZUNvbnRyYWN0UGFyYW1ldGVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmluYXJ5V3JpdGVyLCBJT0hlbHBlciwgSlNPTkhlbHBlciB9IGZyb20gJ0BuZW8tb25lL2NsaWVudC1jb21tb24nO1xuaW1wb3J0IHsgRGVzZXJpYWxpemVXaXJlQmFzZU9wdGlvbnMsIFNlcmlhbGl6ZUpTT05Db250ZXh0IH0gZnJvbSAnLi4vU2VyaWFsaXphYmxlJztcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgQ29udHJhY3RQYXJhbWV0ZXJCYXNlIH0gZnJvbSAnLi9Db250cmFjdFBhcmFtZXRlckJhc2UnO1xuaW1wb3J0IHsgQ29udHJhY3RQYXJhbWV0ZXJUeXBlIH0gZnJvbSAnLi9Db250cmFjdFBhcmFtZXRlclR5cGUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25hdHVyZUNvbnRyYWN0UGFyYW1ldGVySlNPTiB7XG4gIHJlYWRvbmx5IHR5cGU6ICdTaWduYXR1cmUnO1xuICByZWFkb25seSB2YWx1ZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU2lnbmF0dXJlQ29udHJhY3RQYXJhbWV0ZXIgZXh0ZW5kcyBDb250cmFjdFBhcmFtZXRlckJhc2U8XG4gIFNpZ25hdHVyZUNvbnRyYWN0UGFyYW1ldGVyLFxuICBTaWduYXR1cmVDb250cmFjdFBhcmFtZXRlckpTT04sXG4gIENvbnRyYWN0UGFyYW1ldGVyVHlwZS5TaWduYXR1cmVcbj4ge1xuICBwdWJsaWMgc3RhdGljIGRlc2VyaWFsaXplV2lyZUJhc2Uob3B0aW9uczogRGVzZXJpYWxpemVXaXJlQmFzZU9wdGlvbnMpOiBTaWduYXR1cmVDb250cmFjdFBhcmFtZXRlciB7XG4gICAgY29uc3QgeyByZWFkZXIgfSA9IG9wdGlvbnM7XG4gICAgc3VwZXIuZGVzZXJpYWxpemVDb250cmFjdFBhcmFtZXRlckJhc2VXaXJlQmFzZShvcHRpb25zKTtcbiAgICBjb25zdCB2YWx1ZSA9IHJlYWRlci5yZWFkVmFyQnl0ZXNMRSgpO1xuXG4gICAgcmV0dXJuIG5ldyB0aGlzKHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkb25seSB0eXBlID0gQ29udHJhY3RQYXJhbWV0ZXJUeXBlLlNpZ25hdHVyZTtcbiAgcHVibGljIHJlYWRvbmx5IHZhbHVlOiBCdWZmZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgc2l6ZUludGVybmFsOiAoKSA9PiBudW1iZXI7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHZhbHVlOiBCdWZmZXIpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLnNpemVJbnRlcm5hbCA9IHV0aWxzLmxhenkoKCkgPT4gSU9IZWxwZXIuc2l6ZU9mVmFyQnl0ZXNMRSh0aGlzLnZhbHVlKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNpemUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zaXplSW50ZXJuYWwoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc0J1ZmZlcigpOiBCdWZmZXIge1xuICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICB9XG5cbiAgcHVibGljIHNlcmlhbGl6ZVdpcmVCYXNlKHdyaXRlcjogQmluYXJ5V3JpdGVyKTogdm9pZCB7XG4gICAgc3VwZXIuc2VyaWFsaXplV2lyZUJhc2Uod3JpdGVyKTtcbiAgICB3cml0ZXIud3JpdGVWYXJCeXRlc0xFKHRoaXMudmFsdWUpO1xuICB9XG5cbiAgcHVibGljIHNlcmlhbGl6ZUpTT04oX2NvbnRleHQ6IFNlcmlhbGl6ZUpTT05Db250ZXh0KTogU2lnbmF0dXJlQ29udHJhY3RQYXJhbWV0ZXJKU09OIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogJ1NpZ25hdHVyZScsXG4gICAgICB2YWx1ZTogSlNPTkhlbHBlci53cml0ZUJ1ZmZlcih0aGlzLnZhbHVlKSxcbiAgICB9O1xuICB9XG59XG4iXX0=