UNPKG

@ledgerhq/coin-algorand

Version:
63 lines 1.82 kB
import { BigNumber } from "bignumber.js"; import { isAlgorandOperationExtra, isAlgorandOperationExtraRaw, } from "./types"; function toResourcesRaw(r) { const { rewards, nbAssets } = r; return { rewards: rewards.toString(), nbAssets, }; } function fromResourcesRaw(r) { const { rewards, nbAssets } = r; return { rewards: new BigNumber(rewards), nbAssets, }; } export function assignToAccountRaw(account, accountRaw) { const algorandAccount = account; const algorandAccountRaw = accountRaw; if (algorandAccount.algorandResources) { algorandAccountRaw.algorandResources = toResourcesRaw(algorandAccount.algorandResources); } } export function assignFromAccountRaw(accountRaw, account) { const algorandResourcesRaw = accountRaw.algorandResources; const algorandAccount = account; if (algorandResourcesRaw) { algorandAccount.algorandResources = fromResourcesRaw(algorandResourcesRaw); } } export function fromOperationExtraRaw(extraRaw) { const extra = {}; if (!isAlgorandOperationExtraRaw(extraRaw)) { return extra; } if (extraRaw.rewards) { extra.rewards = new BigNumber(extraRaw.rewards); } if (extraRaw.memo) { extra.memo = extraRaw.memo; } if (extraRaw.assetId) { extra.assetId = extraRaw.assetId; } return extra; } export function toOperationExtraRaw(extra) { const extraRaw = {}; if (!isAlgorandOperationExtra(extra)) { return extraRaw; } if (extra.rewards) { extraRaw.rewards = extra.rewards.toString(); } if (extra.memo) { extraRaw.memo = extra.memo; } if (extra.assetId) { extraRaw.assetId = extra.assetId; } return extraRaw; } //# sourceMappingURL=serialization.js.map