0x0x230x

Untitled

Feb 11th, 2026
26
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.95 KB | None | 0 0
  1. import type { RoundingMode } from 'big.js';
  2. import Big from 'big.js';
  3.  
  4. Big.DP = 100;
  5. Big.NE = -100;
  6. Big.PE = 100;
  7.  
  8. export function mul(a: NumericValue, b: NumericValue) {
  9. return toBig(a).times(toBig(b)).toString();
  10. }
  11.  
  12. export function mulDiv(a: NumericValue, b: NumericValue, c: NumericValue) {
  13. return toBig(a).times(toBig(b)).div(toBig(c)).toString();
  14. }
  15.  
  16. export function div(a: NumericValue, b: NumericValue) {
  17. return toBig(a).div(toBig(b)).toString();
  18. }
  19.  
  20. export function sub(a: NumericValue, b: NumericValue) {
  21. return toBig(a).sub(toBig(b)).toString();
  22. }
  23.  
  24. export function add(a: NumericValue, b: NumericValue) {
  25. return toBig(a).plus(toBig(b)).toString();
  26. }
  27.  
  28. export function gt(a: NumericValue, b: NumericValue) {
  29. return toBig(a).gt(toBig(b));
  30. }
  31.  
  32. export function gte(a: NumericValue, b: NumericValue) {
  33. return toBig(a).gte(toBig(b));
  34. }
  35.  
  36. export function lt(a: NumericValue, b: NumericValue) {
  37. return toBig(a).lt(toBig(b));
  38. }
  39.  
  40. export function lte(a: NumericValue, b: NumericValue) {
  41. return toBig(a).lte(toBig(b));
  42. }
  43.  
  44. export function eq(a: NumericValue, b: NumericValue) {
  45. return toBig(a).eq(toBig(b));
  46. }
  47.  
  48. export function toBig(value: NumericValue): Big {
  49. return new Big(value.toString());
  50. }
  51.  
  52. export function toFixed(a: NumericValue, precision: number = 2, roundingMode: RoundingMode = 3) {
  53. return new Big(a.toString()).toFixed(precision, roundingMode);
  54. }
  55.  
  56. export function toNumber(a: NumericValue) {
  57. return new Big(a.toString()).toNumber();
  58. }
  59.  
  60. export function toString(a: NumericValue) {
  61. return new Big(a.toString()).toString();
  62. }
  63.  
  64. export function abs(a: NumericValue) {
  65. return new Big(a.toString()).abs().toString();
  66. }
  67.  
  68. export function pow(a: NumericValue, exp: number) {
  69. return new Big(a.toString()).pow(exp).toString();
  70. }
  71.  
  72. export function sqrt(a: NumericValue) {
  73. return new Big(a.toString()).sqrt().toString();
  74. }
  75.  
  76. export function toBigInt(a: NumericValue) {
  77. return BigInt(a);
  78. }
  79.  
Advertisement
Add Comment
Please, Sign In to add comment