mirror of
https://github.com/planetmint/planetmint.git
synced 2025-11-24 14:35:45 +00:00
Merge branch 'refactor-backend' of github.com:planetmint/planetmint into refactor-backend
This commit is contained in:
commit
10be96b4c7
@ -28,7 +28,7 @@ class DbTransaction:
|
|||||||
inputs=Input.from_list_dict(transaction["inputs"]),
|
inputs=Input.from_list_dict(transaction["inputs"]),
|
||||||
assets=Asset.from_list_dict(transaction["assets"]),
|
assets=Asset.from_list_dict(transaction["assets"]),
|
||||||
metadata=MetaData.from_dict(transaction["metadata"]),
|
metadata=MetaData.from_dict(transaction["metadata"]),
|
||||||
script=Script.from_dict(transaction["script"]),
|
script=Script.from_dict(transaction["script"]) if "script" in transaction else None,
|
||||||
)
|
)
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
@ -53,7 +53,8 @@ class DbTransaction:
|
|||||||
@staticmethod
|
@staticmethod
|
||||||
def remove_generated_or_none_output_keys(output):
|
def remove_generated_or_none_output_keys(output):
|
||||||
output["condition"]["details"] = {k: v for k, v in output["condition"]["details"].items() if v is not None}
|
output["condition"]["details"] = {k: v for k, v in output["condition"]["details"].items() if v is not None}
|
||||||
output.pop("id")
|
if "id" in output:
|
||||||
|
output.pop("id")
|
||||||
return output
|
return output
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -113,6 +113,17 @@ class Output:
|
|||||||
transaction_id=output[5],
|
transaction_id=output[5],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def from_dict(output_dict: dict, index: int, transaction_id: str) -> Output:
|
||||||
|
return Output(
|
||||||
|
id="placeholder",
|
||||||
|
amount=int(output_dict["amount"]),
|
||||||
|
public_keys=output_dict["public_keys"],
|
||||||
|
condition=Condition.from_dict(output_dict["condition"]),
|
||||||
|
index=index,
|
||||||
|
transaction_id=transaction_id
|
||||||
|
)
|
||||||
|
|
||||||
def to_dict(self) -> dict:
|
def to_dict(self) -> dict:
|
||||||
return {
|
return {
|
||||||
"id": self.id,
|
"id": self.id,
|
||||||
|
|||||||
@ -389,7 +389,9 @@ class Planetmint(object):
|
|||||||
if input_tx is None:
|
if input_tx is None:
|
||||||
for ctxn in current_transactions:
|
for ctxn in current_transactions:
|
||||||
if ctxn.id == input_txid:
|
if ctxn.id == input_txid:
|
||||||
input_tx = ctxn
|
ctxn_dict = ctxn.to_dict()
|
||||||
|
input_tx = DbTransaction.from_dict(ctxn_dict)
|
||||||
|
_output = [Output.from_dict(output, index, ctxn.id) for index, output in enumerate(ctxn_dict["outputs"])]
|
||||||
|
|
||||||
if input_tx is None:
|
if input_tx is None:
|
||||||
raise InputDoesNotExist("input `{}` doesn't exist".format(input_txid))
|
raise InputDoesNotExist("input `{}` doesn't exist".format(input_txid))
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user