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 PublicKeyContractParameter extends ContractParameterBase_1.ContractParameterBase {
|
7 | constructor(value) {
|
8 | super();
|
9 | this.type = ContractParameterType_1.ContractParameterType.PublicKey;
|
10 | this.value = value;
|
11 | this.sizeInternal = client_common_1.utils.lazy(() => client_common_1.IOHelper.sizeOfECPoint(this.value));
|
12 | }
|
13 | static deserializeWireBase(options) {
|
14 | const { reader } = options;
|
15 | super.deserializeContractParameterBaseWireBase(options);
|
16 | const value = reader.readECPoint();
|
17 | return new this(value);
|
18 | }
|
19 | get size() {
|
20 | return this.sizeInternal();
|
21 | }
|
22 | asBuffer() {
|
23 | return client_common_1.common.ecPointToBuffer(this.value);
|
24 | }
|
25 | serializeWireBase(writer) {
|
26 | super.serializeWireBase(writer);
|
27 | writer.writeECPoint(this.value);
|
28 | }
|
29 | serializeJSON(_context) {
|
30 | return {
|
31 | type: 'PublicKey',
|
32 | value: client_common_1.JSONHelper.writeECPoint(this.value),
|
33 | };
|
34 | }
|
35 | }
|
36 | exports.PublicKeyContractParameter = PublicKeyContractParameter;
|
37 |
|
38 | //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlB1YmxpY0tleUNvbnRyYWN0UGFyYW1ldGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMERBUWdDO0FBRWhDLG1FQUFnRTtBQUNoRSxtRUFBZ0U7QUFFaEUsTUFBYSwwQkFBMkIsU0FBUSw2Q0FJL0M7SUFhQyxZQUFtQixLQUFjO1FBQy9CLEtBQUssRUFBRSxDQUFDO1FBTE0sU0FBSSxHQUFHLDZDQUFxQixDQUFDLFNBQVMsQ0FBQztRQU1yRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsWUFBWSxHQUFHLHFCQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUFRLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFoQk0sTUFBTSxDQUFDLG1CQUFtQixDQUFDLE9BQW1DO1FBQ25FLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDM0IsS0FBSyxDQUFDLHdDQUF3QyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVuQyxPQUFPLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFZRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sc0JBQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxNQUFvQjtRQUMzQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVNLGFBQWEsQ0FBQyxRQUE4QjtRQUNqRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLFdBQVc7WUFDakIsS0FBSyxFQUFFLDBCQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDM0MsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTFDRCxnRUEwQ0MiLCJmaWxlIjoibmVvLW9uZS1ub2RlLWNvcmUvc3JjL2NvbnRyYWN0UGFyYW1ldGVyL1B1YmxpY0tleUNvbnRyYWN0UGFyYW1ldGVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmluYXJ5V3JpdGVyLFxuICBjb21tb24sXG4gIEVDUG9pbnQsXG4gIElPSGVscGVyLFxuICBKU09OSGVscGVyLFxuICBQdWJsaWNLZXlDb250cmFjdFBhcmFtZXRlckpTT04sXG4gIHV0aWxzLFxufSBmcm9tICdAbmVvLW9uZS9jbGllbnQtY29tbW9uJztcbmltcG9ydCB7IERlc2VyaWFsaXplV2lyZUJhc2VPcHRpb25zLCBTZXJpYWxpemVKU09OQ29udGV4dCB9IGZyb20gJy4uL1NlcmlhbGl6YWJsZSc7XG5pbXBvcnQgeyBDb250cmFjdFBhcmFtZXRlckJhc2UgfSBmcm9tICcuL0NvbnRyYWN0UGFyYW1ldGVyQmFzZSc7XG5pbXBvcnQgeyBDb250cmFjdFBhcmFtZXRlclR5cGUgfSBmcm9tICcuL0NvbnRyYWN0UGFyYW1ldGVyVHlwZSc7XG5cbmV4cG9ydCBjbGFzcyBQdWJsaWNLZXlDb250cmFjdFBhcmFtZXRlciBleHRlbmRzIENvbnRyYWN0UGFyYW1ldGVyQmFzZTxcbiAgUHVibGljS2V5Q29udHJhY3RQYXJhbWV0ZXIsXG4gIFB1YmxpY0tleUNvbnRyYWN0UGFyYW1ldGVySlNPTixcbiAgQ29udHJhY3RQYXJhbWV0ZXJUeXBlLlB1YmxpY0tleVxuPiB7XG4gIHB1YmxpYyBzdGF0aWMgZGVzZXJpYWxpemVXaXJlQmFzZShvcHRpb25zOiBEZXNlcmlhbGl6ZVdpcmVCYXNlT3B0aW9ucyk6IFB1YmxpY0tleUNvbnRyYWN0UGFyYW1ldGVyIHtcbiAgICBjb25zdCB7IHJlYWRlciB9ID0gb3B0aW9ucztcbiAgICBzdXBlci5kZXNlcmlhbGl6ZUNvbnRyYWN0UGFyYW1ldGVyQmFzZVdpcmVCYXNlKG9wdGlvbnMpO1xuICAgIGNvbnN0IHZhbHVlID0gcmVhZGVyLnJlYWRFQ1BvaW50KCk7XG5cbiAgICByZXR1cm4gbmV3IHRoaXModmFsdWUpO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IHR5cGUgPSBDb250cmFjdFBhcmFtZXRlclR5cGUuUHVibGljS2V5O1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IEVDUG9pbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgc2l6ZUludGVybmFsOiAoKSA9PiBudW1iZXI7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHZhbHVlOiBFQ1BvaW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5zaXplSW50ZXJuYWwgPSB1dGlscy5sYXp5KCgpID0+IElPSGVscGVyLnNpemVPZkVDUG9pbnQodGhpcy52YWx1ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldCBzaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZUludGVybmFsKCk7XG4gIH1cblxuICBwdWJsaWMgYXNCdWZmZXIoKTogQnVmZmVyIHtcbiAgICByZXR1cm4gY29tbW9uLmVjUG9pbnRUb0J1ZmZlcih0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXJpYWxpemVXaXJlQmFzZSh3cml0ZXI6IEJpbmFyeVdyaXRlcik6IHZvaWQge1xuICAgIHN1cGVyLnNlcmlhbGl6ZVdpcmVCYXNlKHdyaXRlcik7XG4gICAgd3JpdGVyLndyaXRlRUNQb2ludCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXJpYWxpemVKU09OKF9jb250ZXh0OiBTZXJpYWxpemVKU09OQ29udGV4dCk6IFB1YmxpY0tleUNvbnRyYWN0UGFyYW1ldGVySlNPTiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6ICdQdWJsaWNLZXknLFxuICAgICAgdmFsdWU6IEpTT05IZWxwZXIud3JpdGVFQ1BvaW50KHRoaXMudmFsdWUpLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|