|
@@ -70,11 +70,7 @@ class MMGenTxFile(MMGenObject):
|
|
|
'comment': MMGenTxComment,
|
|
'comment': MMGenTxComment,
|
|
|
'coin_txid': CoinTxID,
|
|
'coin_txid': CoinTxID,
|
|
|
'sent_timestamp': None,
|
|
'sent_timestamp': None,
|
|
|
- 'is_swap': None,
|
|
|
|
|
- 'swap_proto': None,
|
|
|
|
|
- 'swap_quote_expiry': None,
|
|
|
|
|
- 'swap_recv_addr_mmid': None,
|
|
|
|
|
- 'swap_recv_asset_spec': None}
|
|
|
|
|
|
|
+ 'is_swap': None}
|
|
|
|
|
|
|
|
def __init__(self, tx):
|
|
def __init__(self, tx):
|
|
|
self.tx = tx
|
|
self.tx = tx
|
|
@@ -112,6 +108,11 @@ class MMGenTxFile(MMGenObject):
|
|
|
if k in data:
|
|
if k in data:
|
|
|
setattr(tx, k, v(data[k]) if v else data[k])
|
|
setattr(tx, k, v(data[k]) if v else data[k])
|
|
|
|
|
|
|
|
|
|
+ if tx.is_swap:
|
|
|
|
|
+ for k, v in tx.swap_attrs.items():
|
|
|
|
|
+ if k in data:
|
|
|
|
|
+ setattr(tx, k, v(data[k]) if v else data[k])
|
|
|
|
|
+
|
|
|
for k in ('inputs', 'outputs'):
|
|
for k in ('inputs', 'outputs'):
|
|
|
setattr(tx, k, eval_io_data(tx, data[k], desc=k))
|
|
setattr(tx, k, eval_io_data(tx, data[k], desc=k))
|
|
|
|
|
|
|
@@ -277,7 +278,9 @@ class MMGenTxFile(MMGenObject):
|
|
|
for e in tx.outputs]
|
|
for e in tx.outputs]
|
|
|
} | {
|
|
} | {
|
|
|
k: getattr(tx, k) for k in self.extra_attrs if getattr(tx, k)
|
|
k: getattr(tx, k) for k in self.extra_attrs if getattr(tx, k)
|
|
|
- })
|
|
|
|
|
|
|
+ } | ({
|
|
|
|
|
+ k: getattr(tx, k) for k in tx.swap_attrs if getattr(tx, k, None)
|
|
|
|
|
+ } if tx.is_swap else {}))
|
|
|
return '{{"{}":{},"chksum":"{}"}}'.format(self.data_label, data, make_chksum_6(data))
|
|
return '{{"{}":{},"chksum":"{}"}}'.format(self.data_label, data, make_chksum_6(data))
|
|
|
|
|
|
|
|
fmt_data = {'json': format_data_json, 'legacy': format_data_legacy}[tx.file_format]()
|
|
fmt_data = {'json': format_data_json, 'legacy': format_data_legacy}[tx.file_format]()
|