Source: netAfter.js

  1. import { curry } from 'ramda'
  2. /**
  3. * Calculate the net amount after apply a tax.
  4. * <br>
  5. * is currified
  6. *
  7. * @sig Function -> Number -> Number
  8. * @param {Function} tax to be applied
  9. * @param {Number} amount gross value
  10. * @return {Number} net value after tax
  11. *
  12. * @example
  13. *
  14. * netAfter(rateAt(0.2), 1000) //=> 800
  15. * netAfter(rateAt(0.2))(1000) //=> 800
  16. *
  17. */
  18. let netAfter = (tax, amount) => amount - tax(amount)
  19. netAfter = curry(netAfter)
  20. export { netAfter }