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