Introduce base classes for stable and onchain coins
Propose
Change this:
Base: tt.AssetBase
Childs:
tt.Asset.Hive()
tt.Asset.Test()
tt.Asset.Tbd()
tt.Asset.Hbd()
tt.Asset.Vest()
To this:
Base: tt.AssetBase
Childs:
- tt.Asset.OnChainCoin()
Childs:
- tt.Asset.Hive()
- tt.Asset.Test()
- tt.Asset.StableCoint()
Childs:
- tt.Asset.Tbd()
- tt.Asset.Hbd()
- tt.Asset.Vest()
Usage:
- asset from node
node.asset.onchaincoin(5)
node.asset.stablecoin(5)
- attached asset factory to node
asset = tt.Asset(attach_to=node)
asset.StableCoint(5)
- hidden conversion in API
node.some_api.some_endpoint(tt.Asset.StableCoin(5))
# sends to mainnet: {"method": "some_api.some_endpoint", "params": ["5.000 HBD"]}
# sends to testnet: {"method": "some_api.some_endpoint", "params": ["5.000 TBD"]}