Skip to content

Commit

Permalink
Merge pull request #17 from terraswap/feat/apply-cremation-tax
Browse files Browse the repository at this point in the history
feat: add tax_amount for Cremation token
  • Loading branch information
jbamlee authored Oct 12, 2023
2 parents ed1f1c0 + f3dea38 commit 2671f81
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions src/collector/log-finder/nonnativeTransferLF.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ export function createNonnativeTransferLogFinder(height?: number): ReturningLogF
return tflokiMapper(match)
}

if (match[5]?.key === 'tax_amount') {
return cremationMapper(match)
}

return defaultMapper(match)
})
}
Expand Down Expand Up @@ -45,6 +49,32 @@ function tflokiMapper(match: Attributes): NonnativeTransferTransformed {
}


function cremationMapper(match: Attributes): NonnativeTransferTransformed {
const transformed = {
addresses: { from: "", to: "" },
assets: { token: "", amount: "" },
}
let taxAmount = "0";
match.forEach(m => {
if (m.key === "from") {
transformed.addresses.from = m.value
}
if (m.key === "to") {
transformed.addresses.to = m.value
}
if (m.key === "_contract_address" || m.key === "contract_address") {
transformed.assets.token = m.value
}
if (m.key === "amount") {
transformed.assets.amount = m.value
}
if (m.key === "tax_amount") {
taxAmount = m.value
}
})
transformed.assets.amount = num(transformed.assets.amount).minus(num(taxAmount)).toString()
return transformed
}

function defaultMapper(match: Attributes): NonnativeTransferTransformed {
const transformed = {
Expand Down

0 comments on commit 2671f81

Please sign in to comment.