mathjs 12.2.1 → 12.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HISTORY.md +27 -0
- package/NOTICE +1 -1
- package/README.md +4 -3
- package/bin/cli.js +1 -1
- package/lib/browser/math.js +1 -1
- package/lib/browser/math.js.LICENSE.txt +3 -3
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/entry/configReadonly.js +1 -1
- package/lib/cjs/entry/dependenciesAny/dependenciesHelpClass.generated.js +2 -2
- package/lib/cjs/entry/dependenciesNumber/dependenciesHelpClass.generated.js +2 -2
- package/lib/cjs/entry/impureFunctionsAny.generated.js +14 -14
- package/lib/cjs/entry/impureFunctionsNumber.generated.js +1 -1
- package/lib/cjs/entry/pureFunctionsAny.generated.js +11 -11
- package/lib/cjs/expression/Help.js +21 -4
- package/lib/cjs/expression/node/AccessorNode.js +4 -5
- package/lib/cjs/expression/node/ArrayNode.js +4 -5
- package/lib/cjs/expression/node/AssignmentNode.js +4 -5
- package/lib/cjs/expression/node/BlockNode.js +4 -5
- package/lib/cjs/expression/node/ConditionalNode.js +4 -5
- package/lib/cjs/expression/node/ConstantNode.js +4 -5
- package/lib/cjs/expression/node/FunctionAssignmentNode.js +4 -5
- package/lib/cjs/expression/node/FunctionNode.js +5 -6
- package/lib/cjs/expression/node/IndexNode.js +4 -5
- package/lib/cjs/expression/node/ObjectNode.js +4 -5
- package/lib/cjs/expression/node/OperatorNode.js +4 -5
- package/lib/cjs/expression/node/ParenthesisNode.js +4 -5
- package/lib/cjs/expression/node/RangeNode.js +4 -5
- package/lib/cjs/expression/node/RelationalNode.js +4 -5
- package/lib/cjs/expression/node/SymbolNode.js +4 -5
- package/lib/cjs/function/string/bin.js +3 -3
- package/lib/cjs/function/string/format.js +3 -3
- package/lib/cjs/function/string/hex.js +3 -3
- package/lib/cjs/function/string/oct.js +3 -3
- package/lib/cjs/header.js +3 -3
- package/lib/cjs/type/unit/Unit.js +86 -2
- package/lib/cjs/type/unit/physicalConstants.js +1 -1
- package/lib/cjs/utils/bignumber/formatter.js +17 -27
- package/lib/cjs/utils/number.js +75 -33
- package/lib/cjs/version.js +1 -1
- package/lib/esm/entry/configReadonly.js +1 -1
- package/lib/esm/entry/dependenciesAny/dependenciesHelpClass.generated.js +2 -2
- package/lib/esm/entry/dependenciesNumber/dependenciesHelpClass.generated.js +2 -2
- package/lib/esm/entry/impureFunctionsAny.generated.js +16 -16
- package/lib/esm/entry/impureFunctionsNumber.generated.js +1 -1
- package/lib/esm/entry/pureFunctionsAny.generated.js +12 -12
- package/lib/esm/expression/Help.js +21 -4
- package/lib/esm/function/string/bin.js +3 -3
- package/lib/esm/function/string/format.js +3 -3
- package/lib/esm/function/string/hex.js +3 -3
- package/lib/esm/function/string/oct.js +3 -3
- package/lib/esm/header.js +1 -1
- package/lib/esm/type/unit/Unit.js +86 -2
- package/lib/esm/type/unit/physicalConstants.js +1 -1
- package/lib/esm/utils/bignumber/formatter.js +19 -28
- package/lib/esm/utils/number.js +76 -34
- package/lib/esm/version.js +1 -1
- package/package.json +14 -14
- package/types/index.d.ts +30 -18
@@ -8,24 +8,23 @@ exports.createObjectNode = void 0;
|
|
8
8
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
9
9
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
10
10
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
11
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
12
11
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
13
12
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
13
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
14
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
15
15
|
var _customs = require("../../utils/customs.js");
|
16
16
|
var _factory = require("../../utils/factory.js");
|
17
17
|
var _is = require("../../utils/is.js");
|
18
18
|
var _object = require("../../utils/object.js");
|
19
19
|
var _string = require("../../utils/string.js");
|
20
|
-
function
|
21
|
-
function _isNativeReflectConstruct() {
|
20
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
21
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
22
22
|
var name = 'ObjectNode';
|
23
23
|
var dependencies = ['Node'];
|
24
24
|
var createObjectNode = exports.createObjectNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
25
25
|
var Node = _ref.Node;
|
26
26
|
var ObjectNode = /*#__PURE__*/function (_Node) {
|
27
27
|
(0, _inherits2["default"])(ObjectNode, _Node);
|
28
|
-
var _super = _createSuper(ObjectNode);
|
29
28
|
/**
|
30
29
|
* @constructor ObjectNode
|
31
30
|
* @extends {Node}
|
@@ -35,7 +34,7 @@ var createObjectNode = exports.createObjectNode = /* #__PURE__ */(0, _factory.fa
|
|
35
34
|
function ObjectNode(properties) {
|
36
35
|
var _this;
|
37
36
|
(0, _classCallCheck2["default"])(this, ObjectNode);
|
38
|
-
_this =
|
37
|
+
_this = _callSuper(this, ObjectNode);
|
39
38
|
_this.properties = properties || {};
|
40
39
|
|
41
40
|
// validate input
|
@@ -7,9 +7,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
exports.createOperatorNode = void 0;
|
8
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
9
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
10
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
11
10
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
12
11
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
13
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
14
14
|
var _is = require("../../utils/is.js");
|
15
15
|
var _array = require("../../utils/array.js");
|
@@ -18,8 +18,8 @@ var _customs = require("../../utils/customs.js");
|
|
18
18
|
var _operators = require("../operators.js");
|
19
19
|
var _latex = require("../../utils/latex.js");
|
20
20
|
var _factory = require("../../utils/factory.js");
|
21
|
-
function
|
22
|
-
function _isNativeReflectConstruct() {
|
21
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
22
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
23
23
|
var name = 'OperatorNode';
|
24
24
|
var dependencies = ['Node'];
|
25
25
|
var createOperatorNode = exports.createOperatorNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -235,7 +235,6 @@ var createOperatorNode = exports.createOperatorNode = /* #__PURE__ */(0, _factor
|
|
235
235
|
}
|
236
236
|
var OperatorNode = /*#__PURE__*/function (_Node) {
|
237
237
|
(0, _inherits2["default"])(OperatorNode, _Node);
|
238
|
-
var _super = _createSuper(OperatorNode);
|
239
238
|
/**
|
240
239
|
* @constructor OperatorNode
|
241
240
|
* @extends {Node}
|
@@ -250,7 +249,7 @@ var createOperatorNode = exports.createOperatorNode = /* #__PURE__ */(0, _factor
|
|
250
249
|
function OperatorNode(op, fn, args, implicit, isPercentage) {
|
251
250
|
var _this;
|
252
251
|
(0, _classCallCheck2["default"])(this, OperatorNode);
|
253
|
-
_this =
|
252
|
+
_this = _callSuper(this, OperatorNode);
|
254
253
|
// validate input
|
255
254
|
if (typeof op !== 'string') {
|
256
255
|
throw new TypeError('string expected for parameter "op"');
|
@@ -7,21 +7,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
exports.createParenthesisNode = void 0;
|
8
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
9
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
10
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
11
10
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
12
11
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
13
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
14
14
|
var _is = require("../../utils/is.js");
|
15
15
|
var _factory = require("../../utils/factory.js");
|
16
|
-
function
|
17
|
-
function _isNativeReflectConstruct() {
|
16
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
17
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
18
18
|
var name = 'ParenthesisNode';
|
19
19
|
var dependencies = ['Node'];
|
20
20
|
var createParenthesisNode = exports.createParenthesisNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
21
21
|
var Node = _ref.Node;
|
22
22
|
var ParenthesisNode = /*#__PURE__*/function (_Node) {
|
23
23
|
(0, _inherits2["default"])(ParenthesisNode, _Node);
|
24
|
-
var _super = _createSuper(ParenthesisNode);
|
25
24
|
/**
|
26
25
|
* @constructor ParenthesisNode
|
27
26
|
* @extends {Node}
|
@@ -32,7 +31,7 @@ var createParenthesisNode = exports.createParenthesisNode = /* #__PURE__ */(0, _
|
|
32
31
|
function ParenthesisNode(content) {
|
33
32
|
var _this;
|
34
33
|
(0, _classCallCheck2["default"])(this, ParenthesisNode);
|
35
|
-
_this =
|
34
|
+
_this = _callSuper(this, ParenthesisNode);
|
36
35
|
// validate input
|
37
36
|
if (!(0, _is.isNode)(content)) {
|
38
37
|
throw new TypeError('Node expected for parameter "content"');
|
@@ -7,15 +7,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
exports.createRangeNode = void 0;
|
8
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
9
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
10
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
11
10
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
12
11
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
13
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
14
14
|
var _is = require("../../utils/is.js");
|
15
15
|
var _factory = require("../../utils/factory.js");
|
16
16
|
var _operators = require("../operators.js");
|
17
|
-
function
|
18
|
-
function _isNativeReflectConstruct() {
|
17
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
18
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
19
19
|
var name = 'RangeNode';
|
20
20
|
var dependencies = ['Node'];
|
21
21
|
var createRangeNode = exports.createRangeNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -43,7 +43,6 @@ var createRangeNode = exports.createRangeNode = /* #__PURE__ */(0, _factory.fact
|
|
43
43
|
}
|
44
44
|
var RangeNode = /*#__PURE__*/function (_Node) {
|
45
45
|
(0, _inherits2["default"])(RangeNode, _Node);
|
46
|
-
var _super = _createSuper(RangeNode);
|
47
46
|
/**
|
48
47
|
* @constructor RangeNode
|
49
48
|
* @extends {Node}
|
@@ -55,7 +54,7 @@ var createRangeNode = exports.createRangeNode = /* #__PURE__ */(0, _factory.fact
|
|
55
54
|
function RangeNode(start, end, step) {
|
56
55
|
var _this;
|
57
56
|
(0, _classCallCheck2["default"])(this, RangeNode);
|
58
|
-
_this =
|
57
|
+
_this = _callSuper(this, RangeNode);
|
59
58
|
// validate inputs
|
60
59
|
if (!(0, _is.isNode)(start)) throw new TypeError('Node expected');
|
61
60
|
if (!(0, _is.isNode)(end)) throw new TypeError('Node expected');
|
@@ -7,17 +7,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
exports.createRelationalNode = void 0;
|
8
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
9
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
10
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
11
10
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
12
11
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
13
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
14
14
|
var _operators = require("../operators.js");
|
15
15
|
var _string = require("../../utils/string.js");
|
16
16
|
var _customs = require("../../utils/customs.js");
|
17
17
|
var _latex = require("../../utils/latex.js");
|
18
18
|
var _factory = require("../../utils/factory.js");
|
19
|
-
function
|
20
|
-
function _isNativeReflectConstruct() {
|
19
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
20
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
21
21
|
var name = 'RelationalNode';
|
22
22
|
var dependencies = ['Node'];
|
23
23
|
var createRelationalNode = exports.createRelationalNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -32,7 +32,6 @@ var createRelationalNode = exports.createRelationalNode = /* #__PURE__ */(0, _fa
|
|
32
32
|
};
|
33
33
|
var RelationalNode = /*#__PURE__*/function (_Node) {
|
34
34
|
(0, _inherits2["default"])(RelationalNode, _Node);
|
35
|
-
var _super = _createSuper(RelationalNode);
|
36
35
|
/**
|
37
36
|
* A node representing a chained conditional expression, such as 'x > y > z'
|
38
37
|
*
|
@@ -47,7 +46,7 @@ var createRelationalNode = exports.createRelationalNode = /* #__PURE__ */(0, _fa
|
|
47
46
|
function RelationalNode(conditionals, params) {
|
48
47
|
var _this;
|
49
48
|
(0, _classCallCheck2["default"])(this, RelationalNode);
|
50
|
-
_this =
|
49
|
+
_this = _callSuper(this, RelationalNode);
|
51
50
|
if (!Array.isArray(conditionals)) {
|
52
51
|
throw new TypeError('Parameter conditionals must be an array');
|
53
52
|
}
|
@@ -7,15 +7,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
exports.createSymbolNode = void 0;
|
8
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
9
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
10
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
11
10
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
12
11
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
13
13
|
var _string = require("../../utils/string.js");
|
14
14
|
var _customs = require("../../utils/customs.js");
|
15
15
|
var _factory = require("../../utils/factory.js");
|
16
16
|
var _latex = require("../../utils/latex.js");
|
17
|
-
function
|
18
|
-
function _isNativeReflectConstruct() {
|
17
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
18
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
19
19
|
var name = 'SymbolNode';
|
20
20
|
var dependencies = ['math', '?Unit', 'Node'];
|
21
21
|
var createSymbolNode = exports.createSymbolNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -32,7 +32,6 @@ var createSymbolNode = exports.createSymbolNode = /* #__PURE__ */(0, _factory.fa
|
|
32
32
|
}
|
33
33
|
var SymbolNode = /*#__PURE__*/function (_Node) {
|
34
34
|
(0, _inherits2["default"])(SymbolNode, _Node);
|
35
|
-
var _super = _createSuper(SymbolNode);
|
36
35
|
/**
|
37
36
|
* @constructor SymbolNode
|
38
37
|
* @extends {Node}
|
@@ -43,7 +42,7 @@ var createSymbolNode = exports.createSymbolNode = /* #__PURE__ */(0, _factory.fa
|
|
43
42
|
function SymbolNode(name) {
|
44
43
|
var _this;
|
45
44
|
(0, _classCallCheck2["default"])(this, SymbolNode);
|
46
|
-
_this =
|
45
|
+
_this = _callSuper(this, SymbolNode);
|
47
46
|
// validate input
|
48
47
|
if (typeof name !== 'string') {
|
49
48
|
throw new TypeError('String expected for parameter "name"');
|
@@ -25,8 +25,8 @@ var dependencies = ['typed', 'format'];
|
|
25
25
|
* oct
|
26
26
|
* hex
|
27
27
|
*
|
28
|
-
* @param {number} value Value to be stringified
|
29
|
-
* @param {number} wordSize Optional word size (see `format`)
|
28
|
+
* @param {number | BigNumber} value Value to be stringified
|
29
|
+
* @param {number | BigNumber} wordSize Optional word size (see `format`)
|
30
30
|
* @return {string} The formatted value
|
31
31
|
*/
|
32
32
|
var createBin = exports.createBin = (0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -38,7 +38,7 @@ var createBin = exports.createBin = (0, _factory.factory)(name, dependencies, fu
|
|
38
38
|
notation: 'bin'
|
39
39
|
});
|
40
40
|
},
|
41
|
-
'number | BigNumber, number': function
|
41
|
+
'number | BigNumber, number | BigNumber': function numberBigNumberNumberBigNumber(n, wordSize) {
|
42
42
|
return format(n, {
|
43
43
|
notation: 'bin',
|
44
44
|
wordSize: wordSize
|
@@ -46,7 +46,7 @@ var createFormat = exports.createFormat = /* #__PURE__ */(0, _factory.factory)(n
|
|
46
46
|
* - `'bin'`, `'oct'`, or `'hex'`
|
47
47
|
* Format the number using binary, octal, or hexadecimal notation.
|
48
48
|
* For example `'0b1101'` and `'0x10fe'`.
|
49
|
-
* - `wordSize: number`
|
49
|
+
* - `wordSize: number | BigNumber`
|
50
50
|
* The word size in bits to use for formatting in binary, octal, or
|
51
51
|
* hexadecimal notation. To be used only with `'bin'`, `'oct'`, or `'hex'`
|
52
52
|
* values for `notation` option. When this option is defined the value
|
@@ -54,7 +54,7 @@ var createFormat = exports.createFormat = /* #__PURE__ */(0, _factory.factory)(n
|
|
54
54
|
* size and the size suffix is appended to the output.
|
55
55
|
* For example `format(-1, {notation: 'hex', wordSize: 8}) === '0xffi8'`.
|
56
56
|
* Default value is undefined.
|
57
|
-
* - `precision: number`
|
57
|
+
* - `precision: number | BigNumber`
|
58
58
|
* Limit the number of digits of the formatted value.
|
59
59
|
* For regular numbers, must be a number between `0` and `16`.
|
60
60
|
* For bignumbers, the maximum depends on the configured precision,
|
@@ -130,6 +130,6 @@ var createFormat = exports.createFormat = /* #__PURE__ */(0, _factory.factory)(n
|
|
130
130
|
*/
|
131
131
|
return typed(name, {
|
132
132
|
any: _string.format,
|
133
|
-
'any, Object | function | number': _string.format
|
133
|
+
'any, Object | function | number | BigNumber': _string.format
|
134
134
|
});
|
135
135
|
});
|
@@ -24,8 +24,8 @@ var dependencies = ['typed', 'format'];
|
|
24
24
|
* oct
|
25
25
|
* bin
|
26
26
|
*
|
27
|
-
* @param {number} value Value to be stringified
|
28
|
-
* @param {number} wordSize Optional word size (see `format`)
|
27
|
+
* @param {number | BigNumber} value Value to be stringified
|
28
|
+
* @param {number | BigNumber} wordSize Optional word size (see `format`)
|
29
29
|
* @return {string} The formatted value
|
30
30
|
*/
|
31
31
|
var createHex = exports.createHex = (0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -37,7 +37,7 @@ var createHex = exports.createHex = (0, _factory.factory)(name, dependencies, fu
|
|
37
37
|
notation: 'hex'
|
38
38
|
});
|
39
39
|
},
|
40
|
-
'number | BigNumber, number': function
|
40
|
+
'number | BigNumber, number | BigNumber': function numberBigNumberNumberBigNumber(n, wordSize) {
|
41
41
|
return format(n, {
|
42
42
|
notation: 'hex',
|
43
43
|
wordSize: wordSize
|
@@ -25,8 +25,8 @@ var dependencies = ['typed', 'format'];
|
|
25
25
|
* bin
|
26
26
|
* hex
|
27
27
|
*
|
28
|
-
* @param {number} value Value to be stringified
|
29
|
-
* @param {number} wordSize Optional word size (see `format`)
|
28
|
+
* @param {number | BigNumber} value Value to be stringified
|
29
|
+
* @param {number | BigNumber} wordSize Optional word size (see `format`)
|
30
30
|
* @return {string} The formatted value
|
31
31
|
*/
|
32
32
|
|
@@ -39,7 +39,7 @@ var createOct = exports.createOct = (0, _factory.factory)(name, dependencies, fu
|
|
39
39
|
notation: 'oct'
|
40
40
|
});
|
41
41
|
},
|
42
|
-
'number | BigNumber, number': function
|
42
|
+
'number | BigNumber, number | BigNumber': function numberBigNumberNumberBigNumber(n, wordSize) {
|
43
43
|
return format(n, {
|
44
44
|
notation: 'oct',
|
45
45
|
wordSize: wordSize
|
package/lib/cjs/header.js
CHANGED
@@ -6,11 +6,11 @@
|
|
6
6
|
* It features real and complex numbers, units, matrices, a large set of
|
7
7
|
* mathematical functions, and a flexible expression parser.
|
8
8
|
*
|
9
|
-
* @version 12.
|
10
|
-
* @date
|
9
|
+
* @version 12.3.1
|
10
|
+
* @date 2024-02-01
|
11
11
|
*
|
12
12
|
* @license
|
13
|
-
* Copyright (C) 2013-
|
13
|
+
* Copyright (C) 2013-2024 Jos de Jong <wjosdejong@gmail.com>
|
14
14
|
*
|
15
15
|
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
16
16
|
* use this file except in compliance with the License. You may obtain a copy
|
@@ -743,7 +743,7 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
743
743
|
Unit.prototype.abs = function () {
|
744
744
|
var ret = this.clone();
|
745
745
|
if (ret.value !== null) {
|
746
|
-
if (ret._isDerived() || ret.units[0].unit.offset === 0) {
|
746
|
+
if (ret._isDerived() || ret.units.length === 0 || ret.units[0].unit.offset === 0) {
|
747
747
|
ret.value = abs(ret.value);
|
748
748
|
} else {
|
749
749
|
// To give the correct, but unexpected, results for units with an offset.
|
@@ -786,7 +786,7 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
786
786
|
if (other.value !== null) {
|
787
787
|
throw new Error('Cannot convert to a unit with a value');
|
788
788
|
}
|
789
|
-
if (this.value === null || this._isDerived() || this.units[0].unit.offset === other.units[0].unit.offset) {
|
789
|
+
if (this.value === null || this._isDerived() || this.units.length === 0 || other.units.length === 0 || this.units[0].unit.offset === other.units[0].unit.offset) {
|
790
790
|
other.value = (0, _object.clone)(value);
|
791
791
|
} else {
|
792
792
|
/* Need to adjust value by difference in offset to convert */
|
@@ -974,6 +974,10 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
974
974
|
ret.units = proposedUnitList;
|
975
975
|
ret.fixPrefix = true;
|
976
976
|
ret.skipAutomaticSimplification = true;
|
977
|
+
if (this.value !== null) {
|
978
|
+
ret.value = null;
|
979
|
+
return this.to(ret);
|
980
|
+
}
|
977
981
|
return ret;
|
978
982
|
};
|
979
983
|
|
@@ -1254,6 +1258,16 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
1254
1258
|
value: 1e24,
|
1255
1259
|
scientific: true
|
1256
1260
|
},
|
1261
|
+
R: {
|
1262
|
+
name: 'R',
|
1263
|
+
value: 1e27,
|
1264
|
+
scientific: true
|
1265
|
+
},
|
1266
|
+
Q: {
|
1267
|
+
name: 'Q',
|
1268
|
+
value: 1e30,
|
1269
|
+
scientific: true
|
1270
|
+
},
|
1257
1271
|
d: {
|
1258
1272
|
name: 'd',
|
1259
1273
|
value: 1e-1,
|
@@ -1303,6 +1317,16 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
1303
1317
|
name: 'y',
|
1304
1318
|
value: 1e-24,
|
1305
1319
|
scientific: true
|
1320
|
+
},
|
1321
|
+
r: {
|
1322
|
+
name: 'r',
|
1323
|
+
value: 1e-27,
|
1324
|
+
scientific: true
|
1325
|
+
},
|
1326
|
+
q: {
|
1327
|
+
name: 'q',
|
1328
|
+
value: 1e-30,
|
1329
|
+
scientific: true
|
1306
1330
|
}
|
1307
1331
|
},
|
1308
1332
|
LONG: {
|
@@ -1361,6 +1385,16 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
1361
1385
|
value: 1e24,
|
1362
1386
|
scientific: true
|
1363
1387
|
},
|
1388
|
+
ronna: {
|
1389
|
+
name: 'ronna',
|
1390
|
+
value: 1e27,
|
1391
|
+
scientific: true
|
1392
|
+
},
|
1393
|
+
quetta: {
|
1394
|
+
name: 'quetta',
|
1395
|
+
value: 1e30,
|
1396
|
+
scientific: true
|
1397
|
+
},
|
1364
1398
|
deci: {
|
1365
1399
|
name: 'deci',
|
1366
1400
|
value: 1e-1,
|
@@ -1410,6 +1444,16 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
1410
1444
|
name: 'yocto',
|
1411
1445
|
value: 1e-24,
|
1412
1446
|
scientific: true
|
1447
|
+
},
|
1448
|
+
ronto: {
|
1449
|
+
name: 'ronto',
|
1450
|
+
value: 1e-27,
|
1451
|
+
scientific: true
|
1452
|
+
},
|
1453
|
+
quecto: {
|
1454
|
+
name: 'quecto',
|
1455
|
+
value: 1e-30,
|
1456
|
+
scientific: true
|
1413
1457
|
}
|
1414
1458
|
},
|
1415
1459
|
SQUARED: {
|
@@ -1468,6 +1512,16 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
1468
1512
|
value: 1e48,
|
1469
1513
|
scientific: true
|
1470
1514
|
},
|
1515
|
+
R: {
|
1516
|
+
name: 'R',
|
1517
|
+
value: 1e54,
|
1518
|
+
scientific: true
|
1519
|
+
},
|
1520
|
+
Q: {
|
1521
|
+
name: 'Q',
|
1522
|
+
value: 1e60,
|
1523
|
+
scientific: true
|
1524
|
+
},
|
1471
1525
|
d: {
|
1472
1526
|
name: 'd',
|
1473
1527
|
value: 1e-2,
|
@@ -1517,6 +1571,16 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
1517
1571
|
name: 'y',
|
1518
1572
|
value: 1e-48,
|
1519
1573
|
scientific: true
|
1574
|
+
},
|
1575
|
+
r: {
|
1576
|
+
name: 'r',
|
1577
|
+
value: 1e-54,
|
1578
|
+
scientific: true
|
1579
|
+
},
|
1580
|
+
q: {
|
1581
|
+
name: 'q',
|
1582
|
+
value: 1e-60,
|
1583
|
+
scientific: true
|
1520
1584
|
}
|
1521
1585
|
},
|
1522
1586
|
CUBIC: {
|
@@ -1575,6 +1639,16 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
1575
1639
|
value: 1e72,
|
1576
1640
|
scientific: true
|
1577
1641
|
},
|
1642
|
+
R: {
|
1643
|
+
name: 'R',
|
1644
|
+
value: 1e81,
|
1645
|
+
scientific: true
|
1646
|
+
},
|
1647
|
+
Q: {
|
1648
|
+
name: 'Q',
|
1649
|
+
value: 1e90,
|
1650
|
+
scientific: true
|
1651
|
+
},
|
1578
1652
|
d: {
|
1579
1653
|
name: 'd',
|
1580
1654
|
value: 1e-3,
|
@@ -1624,6 +1698,16 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
1624
1698
|
name: 'y',
|
1625
1699
|
value: 1e-72,
|
1626
1700
|
scientific: true
|
1701
|
+
},
|
1702
|
+
r: {
|
1703
|
+
name: 'r',
|
1704
|
+
value: 1e-81,
|
1705
|
+
scientific: true
|
1706
|
+
},
|
1707
|
+
q: {
|
1708
|
+
name: 'q',
|
1709
|
+
value: 1e-90,
|
1710
|
+
scientific: true
|
1627
1711
|
}
|
1628
1712
|
},
|
1629
1713
|
BINARY_SHORT_SI: {
|
@@ -49,7 +49,7 @@ var createAvogadro = exports.createAvogadro = /* #__PURE__ */unitFactory('avogad
|
|
49
49
|
var createBoltzmann = exports.createBoltzmann = /* #__PURE__ */unitFactory('boltzmann', '1.380649e-23', 'J K^-1');
|
50
50
|
var createFaraday = exports.createFaraday = /* #__PURE__ */unitFactory('faraday', '96485.33212331001', 'C mol^-1');
|
51
51
|
var createFirstRadiation = exports.createFirstRadiation = /* #__PURE__ */unitFactory('firstRadiation', '3.7417718521927573e-16', 'W m^2');
|
52
|
-
//
|
52
|
+
// TODO spectralRadiance = 1.1910429723971881e-16 W m^2 sr^-1
|
53
53
|
var createLoschmidt = exports.createLoschmidt = /* #__PURE__ */unitFactory('loschmidt', '2.686780111798444e25', 'm^-3');
|
54
54
|
var createGasConstant = exports.createGasConstant = /* #__PURE__ */unitFactory('gasConstant', '8.31446261815324', 'J K^-1 mol^-1');
|
55
55
|
var createMolarPlanckConstant = exports.createMolarPlanckConstant = /* #__PURE__ */unitFactory('molarPlanckConstant', '3.990312712893431e-10', 'J s mol^-1');
|
@@ -7,6 +7,7 @@ exports.format = format;
|
|
7
7
|
exports.toEngineering = toEngineering;
|
8
8
|
exports.toExponential = toExponential;
|
9
9
|
exports.toFixed = toFixed;
|
10
|
+
var _is = require("../is.js");
|
10
11
|
var _number = require("../number.js");
|
11
12
|
/**
|
12
13
|
* Formats a BigNumber in a given base
|
@@ -127,7 +128,7 @@ function formatBigNumberToBase(n, base, size) {
|
|
127
128
|
* format(12400, {notation: 'engineering'}) // returns '12.400e+3'
|
128
129
|
*
|
129
130
|
* @param {BigNumber} value
|
130
|
-
* @param {Object | Function | number} [options]
|
131
|
+
* @param {Object | Function | number | BigNumber} [options]
|
131
132
|
* @return {string} str The formatted value
|
132
133
|
*/
|
133
134
|
function format(value, options) {
|
@@ -140,30 +141,10 @@ function format(value, options) {
|
|
140
141
|
if (!value.isFinite()) {
|
141
142
|
return value.isNaN() ? 'NaN' : value.gt(0) ? 'Infinity' : '-Infinity';
|
142
143
|
}
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
var wordSize;
|
148
|
-
if (options !== undefined) {
|
149
|
-
// determine notation from options
|
150
|
-
if (options.notation) {
|
151
|
-
notation = options.notation;
|
152
|
-
}
|
153
|
-
|
154
|
-
// determine precision from options
|
155
|
-
if (typeof options === 'number') {
|
156
|
-
precision = options;
|
157
|
-
} else if (options.precision !== undefined) {
|
158
|
-
precision = options.precision;
|
159
|
-
}
|
160
|
-
if (options.wordSize) {
|
161
|
-
wordSize = options.wordSize;
|
162
|
-
if (typeof wordSize !== 'number') {
|
163
|
-
throw new Error('Option "wordSize" must be a number');
|
164
|
-
}
|
165
|
-
}
|
166
|
-
}
|
144
|
+
var _normalizeFormatOptio = (0, _number.normalizeFormatOptions)(options),
|
145
|
+
notation = _normalizeFormatOptio.notation,
|
146
|
+
precision = _normalizeFormatOptio.precision,
|
147
|
+
wordSize = _normalizeFormatOptio.wordSize;
|
167
148
|
|
168
149
|
// handle the various notations
|
169
150
|
switch (notation) {
|
@@ -183,8 +164,8 @@ function format(value, options) {
|
|
183
164
|
{
|
184
165
|
// determine lower and upper bound for exponential notation.
|
185
166
|
// TODO: implement support for upper and lower to be BigNumbers themselves
|
186
|
-
var lowerExp = options
|
187
|
-
var upperExp = options
|
167
|
+
var lowerExp = _toNumberOrDefault(options === null || options === void 0 ? void 0 : options.lowerExp, -3);
|
168
|
+
var upperExp = _toNumberOrDefault(options === null || options === void 0 ? void 0 : options.upperExp, 5);
|
188
169
|
|
189
170
|
// handle special case zero
|
190
171
|
if (value.isZero()) return '0';
|
@@ -257,4 +238,13 @@ function toExponential(value, precision) {
|
|
257
238
|
*/
|
258
239
|
function toFixed(value, precision) {
|
259
240
|
return value.toFixed(precision);
|
241
|
+
}
|
242
|
+
function _toNumberOrDefault(value, defaultValue) {
|
243
|
+
if ((0, _is.isNumber)(value)) {
|
244
|
+
return value;
|
245
|
+
} else if ((0, _is.isBigNumber)(value)) {
|
246
|
+
return value.toNumber();
|
247
|
+
} else {
|
248
|
+
return defaultValue;
|
249
|
+
}
|
260
250
|
}
|