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