constants.js 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.createVersion = exports.createUppercasePi = exports.createUppercaseE = exports.createTrue = exports.createTau = exports.createSQRT2 = exports.createSQRT1_2 = exports.createPi = exports.createPhi = exports.createNull = exports.createNaN = exports.createLOG2E = exports.createLOG10E = exports.createLN2 = exports.createLN10 = exports.createInfinity = exports.createI = exports.createFalse = exports.createE = void 0;
  6. var _factory = require("./utils/factory.js");
  7. var _version = require("./version.js");
  8. var _constants = require("./utils/bignumber/constants.js");
  9. var _index = require("./plain/number/index.js");
  10. var createTrue = /* #__PURE__ */(0, _factory.factory)('true', [], function () {
  11. return true;
  12. });
  13. exports.createTrue = createTrue;
  14. var createFalse = /* #__PURE__ */(0, _factory.factory)('false', [], function () {
  15. return false;
  16. });
  17. exports.createFalse = createFalse;
  18. var createNull = /* #__PURE__ */(0, _factory.factory)('null', [], function () {
  19. return null;
  20. });
  21. exports.createNull = createNull;
  22. var createInfinity = /* #__PURE__ */recreateFactory('Infinity', ['config', '?BigNumber'], function (_ref) {
  23. var config = _ref.config,
  24. BigNumber = _ref.BigNumber;
  25. return config.number === 'BigNumber' ? new BigNumber(Infinity) : Infinity;
  26. });
  27. exports.createInfinity = createInfinity;
  28. var createNaN = /* #__PURE__ */recreateFactory('NaN', ['config', '?BigNumber'], function (_ref2) {
  29. var config = _ref2.config,
  30. BigNumber = _ref2.BigNumber;
  31. return config.number === 'BigNumber' ? new BigNumber(NaN) : NaN;
  32. });
  33. exports.createNaN = createNaN;
  34. var createPi = /* #__PURE__ */recreateFactory('pi', ['config', '?BigNumber'], function (_ref3) {
  35. var config = _ref3.config,
  36. BigNumber = _ref3.BigNumber;
  37. return config.number === 'BigNumber' ? (0, _constants.createBigNumberPi)(BigNumber) : _index.pi;
  38. });
  39. exports.createPi = createPi;
  40. var createTau = /* #__PURE__ */recreateFactory('tau', ['config', '?BigNumber'], function (_ref4) {
  41. var config = _ref4.config,
  42. BigNumber = _ref4.BigNumber;
  43. return config.number === 'BigNumber' ? (0, _constants.createBigNumberTau)(BigNumber) : _index.tau;
  44. });
  45. exports.createTau = createTau;
  46. var createE = /* #__PURE__ */recreateFactory('e', ['config', '?BigNumber'], function (_ref5) {
  47. var config = _ref5.config,
  48. BigNumber = _ref5.BigNumber;
  49. return config.number === 'BigNumber' ? (0, _constants.createBigNumberE)(BigNumber) : _index.e;
  50. });
  51. // golden ratio, (1+sqrt(5))/2
  52. exports.createE = createE;
  53. var createPhi = /* #__PURE__ */recreateFactory('phi', ['config', '?BigNumber'], function (_ref6) {
  54. var config = _ref6.config,
  55. BigNumber = _ref6.BigNumber;
  56. return config.number === 'BigNumber' ? (0, _constants.createBigNumberPhi)(BigNumber) : _index.phi;
  57. });
  58. exports.createPhi = createPhi;
  59. var createLN2 = /* #__PURE__ */recreateFactory('LN2', ['config', '?BigNumber'], function (_ref7) {
  60. var config = _ref7.config,
  61. BigNumber = _ref7.BigNumber;
  62. return config.number === 'BigNumber' ? new BigNumber(2).ln() : Math.LN2;
  63. });
  64. exports.createLN2 = createLN2;
  65. var createLN10 = /* #__PURE__ */recreateFactory('LN10', ['config', '?BigNumber'], function (_ref8) {
  66. var config = _ref8.config,
  67. BigNumber = _ref8.BigNumber;
  68. return config.number === 'BigNumber' ? new BigNumber(10).ln() : Math.LN10;
  69. });
  70. exports.createLN10 = createLN10;
  71. var createLOG2E = /* #__PURE__ */recreateFactory('LOG2E', ['config', '?BigNumber'], function (_ref9) {
  72. var config = _ref9.config,
  73. BigNumber = _ref9.BigNumber;
  74. return config.number === 'BigNumber' ? new BigNumber(1).div(new BigNumber(2).ln()) : Math.LOG2E;
  75. });
  76. exports.createLOG2E = createLOG2E;
  77. var createLOG10E = /* #__PURE__ */recreateFactory('LOG10E', ['config', '?BigNumber'], function (_ref10) {
  78. var config = _ref10.config,
  79. BigNumber = _ref10.BigNumber;
  80. return config.number === 'BigNumber' ? new BigNumber(1).div(new BigNumber(10).ln()) : Math.LOG10E;
  81. });
  82. exports.createLOG10E = createLOG10E;
  83. var createSQRT1_2 = /* #__PURE__ */recreateFactory(
  84. // eslint-disable-line camelcase
  85. 'SQRT1_2', ['config', '?BigNumber'], function (_ref11) {
  86. var config = _ref11.config,
  87. BigNumber = _ref11.BigNumber;
  88. return config.number === 'BigNumber' ? new BigNumber('0.5').sqrt() : Math.SQRT1_2;
  89. });
  90. exports.createSQRT1_2 = createSQRT1_2;
  91. var createSQRT2 = /* #__PURE__ */recreateFactory('SQRT2', ['config', '?BigNumber'], function (_ref12) {
  92. var config = _ref12.config,
  93. BigNumber = _ref12.BigNumber;
  94. return config.number === 'BigNumber' ? new BigNumber(2).sqrt() : Math.SQRT2;
  95. });
  96. exports.createSQRT2 = createSQRT2;
  97. var createI = /* #__PURE__ */recreateFactory('i', ['Complex'], function (_ref13) {
  98. var Complex = _ref13.Complex;
  99. return Complex.I;
  100. });
  101. // for backward compatibility with v5
  102. exports.createI = createI;
  103. var createUppercasePi = /* #__PURE__ */(0, _factory.factory)('PI', ['pi'], function (_ref14) {
  104. var pi = _ref14.pi;
  105. return pi;
  106. });
  107. exports.createUppercasePi = createUppercasePi;
  108. var createUppercaseE = /* #__PURE__ */(0, _factory.factory)('E', ['e'], function (_ref15) {
  109. var e = _ref15.e;
  110. return e;
  111. });
  112. exports.createUppercaseE = createUppercaseE;
  113. var createVersion = /* #__PURE__ */(0, _factory.factory)('version', [], function () {
  114. return _version.version;
  115. });
  116. // helper function to create a factory with a flag recreateOnConfigChange
  117. // idea: allow passing optional properties to be attached to the factory function as 4th argument?
  118. exports.createVersion = createVersion;
  119. function recreateFactory(name, dependencies, create) {
  120. return (0, _factory.factory)(name, dependencies, create, {
  121. recreateOnConfigChange: true
  122. });
  123. }