1 | ;
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const client_common_1 = require("@neo-one/client-common");
|
4 | const utils_1 = require("../utils");
|
5 | class Output extends client_common_1.OutputModel {
|
6 | constructor() {
|
7 | super(...arguments);
|
8 | this.equals = utils_1.utils.equals(Output, this, (other) => client_common_1.common.uInt256Equal(this.asset, other.asset) &&
|
9 | this.value.eq(other.value) &&
|
10 | client_common_1.common.uInt160Equal(this.address, other.address));
|
11 | this.toKeyString = utils_1.utils.toKeyString(Output, () => `${client_common_1.common.uInt256ToString(this.asset)}:${this.value.toString(10)}:${client_common_1.common.uInt160ToString(this.address)}`);
|
12 | }
|
13 | static deserializeWireBase({ reader }) {
|
14 | const asset = reader.readUInt256();
|
15 | const value = reader.readFixed8();
|
16 | const address = reader.readUInt160();
|
17 | return new this({ asset, value, address });
|
18 | }
|
19 | static deserializeWire(options) {
|
20 | return this.deserializeWireBase({
|
21 | context: options.context,
|
22 | reader: new utils_1.BinaryReader(options.buffer),
|
23 | });
|
24 | }
|
25 | clone({ value = this.value }) {
|
26 | return new Output({
|
27 | asset: this.asset,
|
28 | value,
|
29 | address: this.address,
|
30 | });
|
31 | }
|
32 | serializeJSON(context, index) {
|
33 | return {
|
34 | n: index,
|
35 | asset: client_common_1.JSONHelper.writeUInt256(this.asset),
|
36 | value: client_common_1.JSONHelper.writeFixed8(this.value),
|
37 | address: client_common_1.crypto.scriptHashToAddress({
|
38 | addressVersion: context.addressVersion,
|
39 | scriptHash: this.address,
|
40 | }),
|
41 | };
|
42 | }
|
43 | }
|
44 | exports.Output = Output;
|
45 |
|
46 | //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk91dHB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBEQUFzRztBQUl0RyxvQ0FBK0M7QUFPL0MsTUFBYSxNQUFPLFNBQVEsMkJBQVc7SUFBdkM7O1FBZ0JrQixXQUFNLEdBQVcsYUFBSyxDQUFDLE1BQU0sQ0FDM0MsTUFBTSxFQUNOLElBQUksRUFDSixDQUFDLEtBQUssRUFBRSxFQUFFLENBQ1Isc0JBQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDMUIsc0JBQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQ25ELENBQUM7UUFDYyxnQkFBVyxHQUFHLGFBQUssQ0FBQyxXQUFXLENBQzdDLE1BQU0sRUFDTixHQUFHLEVBQUUsQ0FBQyxHQUFHLHNCQUFNLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxzQkFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FDakgsQ0FBQztJQXFCSixDQUFDO0lBL0NRLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLE1BQU0sRUFBOEI7UUFDdEUsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25DLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFckMsT0FBTyxJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUErQjtRQUMzRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztZQUM5QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsTUFBTSxFQUFFLElBQUksb0JBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1NBQ3pDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFlTSxLQUFLLENBQUMsRUFBRSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBMkI7UUFDMUQsT0FBTyxJQUFJLE1BQU0sQ0FBQztZQUNoQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsS0FBSztZQUNMLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztTQUN0QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sYUFBYSxDQUFDLE9BQTZCLEVBQUUsS0FBYTtRQUMvRCxPQUFPO1lBQ0wsQ0FBQyxFQUFFLEtBQUs7WUFDUixLQUFLLEVBQUUsMEJBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUMxQyxLQUFLLEVBQUUsMEJBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUN6QyxPQUFPLEVBQUUsc0JBQU0sQ0FBQyxtQkFBbUIsQ0FBQztnQkFDbEMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO2dCQUN0QyxVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU87YUFDekIsQ0FBQztTQUNILENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFoREQsd0JBZ0RDIiwiZmlsZSI6Im5lby1vbmUtbm9kZS1jb3JlL3NyYy90cmFuc2FjdGlvbi9PdXRwdXQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21tb24sIGNyeXB0bywgSlNPTkhlbHBlciwgT3V0cHV0SlNPTiwgT3V0cHV0TW9kZWwsIFVJbnQyNTYgfSBmcm9tICdAbmVvLW9uZS9jbGllbnQtY29tbW9uJztcbmltcG9ydCB7IEJOIH0gZnJvbSAnYm4uanMnO1xuaW1wb3J0IHsgRXF1YWxzLCBFcXVhdGFibGVLZXkgfSBmcm9tICcuLi9FcXVhdGFibGUnO1xuaW1wb3J0IHsgRGVzZXJpYWxpemVXaXJlQmFzZU9wdGlvbnMsIERlc2VyaWFsaXplV2lyZU9wdGlvbnMsIFNlcmlhbGl6ZUpTT05Db250ZXh0IH0gZnJvbSAnLi4vU2VyaWFsaXphYmxlJztcbmltcG9ydCB7IEJpbmFyeVJlYWRlciwgdXRpbHMgfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3V0cHV0S2V5IHtcbiAgcmVhZG9ubHkgaGFzaDogVUludDI1NjtcbiAgcmVhZG9ubHkgaW5kZXg6IG51bWJlcjtcbn1cblxuZXhwb3J0IGNsYXNzIE91dHB1dCBleHRlbmRzIE91dHB1dE1vZGVsIGltcGxlbWVudHMgRXF1YXRhYmxlS2V5IHtcbiAgcHVibGljIHN0YXRpYyBkZXNlcmlhbGl6ZVdpcmVCYXNlKHsgcmVhZGVyIH06IERlc2VyaWFsaXplV2lyZUJhc2VPcHRpb25zKTogT3V0cHV0IHtcbiAgICBjb25zdCBhc3NldCA9IHJlYWRlci5yZWFkVUludDI1NigpO1xuICAgIGNvbnN0IHZhbHVlID0gcmVhZGVyLnJlYWRGaXhlZDgoKTtcbiAgICBjb25zdCBhZGRyZXNzID0gcmVhZGVyLnJlYWRVSW50MTYwKCk7XG5cbiAgICByZXR1cm4gbmV3IHRoaXMoeyBhc3NldCwgdmFsdWUsIGFkZHJlc3MgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGRlc2VyaWFsaXplV2lyZShvcHRpb25zOiBEZXNlcmlhbGl6ZVdpcmVPcHRpb25zKTogT3V0cHV0IHtcbiAgICByZXR1cm4gdGhpcy5kZXNlcmlhbGl6ZVdpcmVCYXNlKHtcbiAgICAgIGNvbnRleHQ6IG9wdGlvbnMuY29udGV4dCxcbiAgICAgIHJlYWRlcjogbmV3IEJpbmFyeVJlYWRlcihvcHRpb25zLmJ1ZmZlciksXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgZXF1YWxzOiBFcXVhbHMgPSB1dGlscy5lcXVhbHMoXG4gICAgT3V0cHV0LFxuICAgIHRoaXMsXG4gICAgKG90aGVyKSA9PlxuICAgICAgY29tbW9uLnVJbnQyNTZFcXVhbCh0aGlzLmFzc2V0LCBvdGhlci5hc3NldCkgJiZcbiAgICAgIHRoaXMudmFsdWUuZXEob3RoZXIudmFsdWUpICYmXG4gICAgICBjb21tb24udUludDE2MEVxdWFsKHRoaXMuYWRkcmVzcywgb3RoZXIuYWRkcmVzcyksXG4gICk7XG4gIHB1YmxpYyByZWFkb25seSB0b0tleVN0cmluZyA9IHV0aWxzLnRvS2V5U3RyaW5nKFxuICAgIE91dHB1dCxcbiAgICAoKSA9PiBgJHtjb21tb24udUludDI1NlRvU3RyaW5nKHRoaXMuYXNzZXQpfToke3RoaXMudmFsdWUudG9TdHJpbmcoMTApfToke2NvbW1vbi51SW50MTYwVG9TdHJpbmcodGhpcy5hZGRyZXNzKX1gLFxuICApO1xuXG4gIHB1YmxpYyBjbG9uZSh7IHZhbHVlID0gdGhpcy52YWx1ZSB9OiB7IHJlYWRvbmx5IHZhbHVlPzogQk4gfSk6IE91dHB1dCB7XG4gICAgcmV0dXJuIG5ldyBPdXRwdXQoe1xuICAgICAgYXNzZXQ6IHRoaXMuYXNzZXQsXG4gICAgICB2YWx1ZSxcbiAgICAgIGFkZHJlc3M6IHRoaXMuYWRkcmVzcyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzZXJpYWxpemVKU09OKGNvbnRleHQ6IFNlcmlhbGl6ZUpTT05Db250ZXh0LCBpbmRleDogbnVtYmVyKTogT3V0cHV0SlNPTiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG46IGluZGV4LFxuICAgICAgYXNzZXQ6IEpTT05IZWxwZXIud3JpdGVVSW50MjU2KHRoaXMuYXNzZXQpLFxuICAgICAgdmFsdWU6IEpTT05IZWxwZXIud3JpdGVGaXhlZDgodGhpcy52YWx1ZSksXG4gICAgICBhZGRyZXNzOiBjcnlwdG8uc2NyaXB0SGFzaFRvQWRkcmVzcyh7XG4gICAgICAgIGFkZHJlc3NWZXJzaW9uOiBjb250ZXh0LmFkZHJlc3NWZXJzaW9uLFxuICAgICAgICBzY3JpcHRIYXNoOiB0aGlzLmFkZHJlc3MsXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|