Support TransactionPayment.{TransactionBaseFee, TransactionByteFee} (#1493)

* Support TransactionPayment.{TransactionBaseFee, TransactionByteFee}

* Dedup

* Ordering
This commit is contained in:
Jaco Greeff
2019-10-17 15:22:39 +02:00
committed by GitHub
parent 5532daf640
commit fe3de4379f
7 changed files with 34 additions and 6 deletions
+8 -6
View File
@@ -14,14 +14,16 @@ import { drr } from '../util/drr';
type Result = [Balance, Balance, Balance, Balance, Balance];
function queryV2 (api: ApiInterfaceRx): Observable<Result> {
const paymentBase = api.consts.transactionPayment || api.consts.balances;
return of([
// get values from api.const for substrate versions post spec_version: 101
// https://github.com/paritytech/substrate/pull/2883/files#diff-5e5e1c3aec9ddfde0a9054d062ab3db9R131
api.consts.balances.creationFee as Balance,
api.consts.balances.existentialDeposit as Balance,
api.consts.balances.transactionBaseFee as Balance,
api.consts.balances.transactionByteFee as Balance,
api.consts.balances.transferFee as Balance
api.consts.balances.transferFee as Balance,
paymentBase.transactionBaseFee as Balance,
paymentBase.transactionByteFee as Balance
]);
}
@@ -30,9 +32,9 @@ function queryV1 (api: ApiInterfaceRx): Observable<Result> {
// Support older versions and get values from storage
api.query.balances.creationFee,
api.query.balances.existentialDeposit,
api.query.balances.transferFee,
api.query.balances.transactionBaseFee,
api.query.balances.transactionByteFee,
api.query.balances.transferFee
api.query.balances.transactionByteFee
]);
}
@@ -56,7 +58,7 @@ export function fees (api: ApiInterfaceRx): () => Observable<DerivedFees> {
? queryV2(api)
: queryV1(api)
).pipe(
map(([creationFee, existentialDeposit, transactionBaseFee, transactionByteFee, transferFee]): DerivedFees => ({
map(([creationFee, existentialDeposit, transferFee, transactionBaseFee, transactionByteFee]): DerivedFees => ({
creationFee,
existentialDeposit,
transactionBaseFee,