import { TrUtils } from '../utils/tr-utils'; const Big = require('big.js'); export function addition(num1: number, num2: number, ...params: number[]) { num1=TrUtils.SetValueToZeroIfNull(num1); num2=TrUtils.SetValueToZeroIfNull(num2); const bigNo1 = Big(num1); const bigNo2 = Big(num2); let resp = bigNo1.plus(bigNo2); params.forEach((param: any) => { param=TrUtils.SetValueToZeroIfNull(param); const paramNo = Big(param); resp = resp.plus(paramNo); }); return resp.toNumber(); } export function subtraction(num1: number, num2: number, ...params: number[]) { num1=TrUtils.SetValueToZeroIfNull(num1); num2=TrUtils.SetValueToZeroIfNull(num2); const bigNo1 = Big(num1); const bigNo2 = Big(num2); let resp = bigNo1.minus(bigNo2); params.forEach((param: any) => { param=TrUtils.SetValueToZeroIfNull(param); const paramNo = Big(param); resp = resp.minus(paramNo); }); return resp.toNumber(); } export function multiply(num1: number, num2: number, ...params: number[]) { num1=TrUtils.SetValueToZeroIfNull(num1); num2=TrUtils.SetValueToZeroIfNull(num2); const bigNo1 = Big(num1); const bigNo2 = Big(num2); let resp = bigNo1.mul(bigNo2); params.forEach((param: any) => { param=TrUtils.SetValueToZeroIfNull(param); const paramNo = Big(param); resp = resp.mul(paramNo); }); return resp.toNumber(); } export function division(num1: number, num2: number, ...params: number[]) { num1=TrUtils.SetValueToZeroIfNull(num1); num2=TrUtils.SetValueToZeroIfNull(num2); const bigNo1 = Big(num1); const bigNo2 = Big(num2); let resp = bigNo1.div(bigNo2); params.forEach((param: any) => { param=TrUtils.SetValueToZeroIfNull(param); const paramNo = Big(param); resp = resp.div(paramNo); }); return resp.toNumber(); }