mathjs 12.3.0 → 12.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. package/HISTORY.md +27 -0
  2. package/lib/browser/math.js +1 -1
  3. package/lib/browser/math.js.LICENSE.txt +2 -2
  4. package/lib/browser/math.js.map +1 -1
  5. package/lib/cjs/entry/configReadonly.js +1 -1
  6. package/lib/cjs/entry/dependenciesAny/dependenciesHelpClass.generated.js +2 -2
  7. package/lib/cjs/entry/dependenciesNumber/dependenciesHelpClass.generated.js +2 -2
  8. package/lib/cjs/entry/impureFunctionsAny.generated.js +14 -14
  9. package/lib/cjs/entry/impureFunctionsNumber.generated.js +1 -1
  10. package/lib/cjs/entry/pureFunctionsAny.generated.js +11 -11
  11. package/lib/cjs/expression/Help.js +21 -4
  12. package/lib/cjs/expression/node/OperatorNode.js +2 -1
  13. package/lib/cjs/expression/transform/utils/compileInlineExpression.js +5 -4
  14. package/lib/cjs/function/string/bin.js +3 -3
  15. package/lib/cjs/function/string/format.js +3 -3
  16. package/lib/cjs/function/string/hex.js +3 -3
  17. package/lib/cjs/function/string/oct.js +3 -3
  18. package/lib/cjs/header.js +2 -2
  19. package/lib/cjs/type/unit/physicalConstants.js +1 -1
  20. package/lib/cjs/utils/bignumber/formatter.js +17 -27
  21. package/lib/cjs/utils/map.js +174 -14
  22. package/lib/cjs/utils/number.js +75 -33
  23. package/lib/cjs/utils/scope.js +4 -10
  24. package/lib/cjs/version.js +1 -1
  25. package/lib/esm/entry/configReadonly.js +1 -1
  26. package/lib/esm/entry/dependenciesAny/dependenciesHelpClass.generated.js +2 -2
  27. package/lib/esm/entry/dependenciesNumber/dependenciesHelpClass.generated.js +2 -2
  28. package/lib/esm/entry/impureFunctionsAny.generated.js +16 -16
  29. package/lib/esm/entry/impureFunctionsNumber.generated.js +1 -1
  30. package/lib/esm/entry/pureFunctionsAny.generated.js +12 -12
  31. package/lib/esm/expression/Help.js +21 -4
  32. package/lib/esm/expression/node/OperatorNode.js +2 -1
  33. package/lib/esm/expression/transform/utils/compileInlineExpression.js +5 -4
  34. package/lib/esm/function/string/bin.js +3 -3
  35. package/lib/esm/function/string/format.js +3 -3
  36. package/lib/esm/function/string/hex.js +3 -3
  37. package/lib/esm/function/string/oct.js +3 -3
  38. package/lib/esm/type/unit/physicalConstants.js +1 -1
  39. package/lib/esm/utils/bignumber/formatter.js +19 -28
  40. package/lib/esm/utils/map.js +97 -1
  41. package/lib/esm/utils/number.js +76 -34
  42. package/lib/esm/utils/scope.js +5 -11
  43. package/lib/esm/version.js +1 -1
  44. package/package.json +12 -12
  45. package/types/index.d.ts +30 -18
@@ -4,12 +4,13 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.ObjectWrappingMap = void 0;
7
+ exports.PartitionedMap = exports.ObjectWrappingMap = void 0;
8
8
  exports.assign = assign;
9
9
  exports.createEmptyMap = createEmptyMap;
10
10
  exports.createMap = createMap;
11
11
  exports.isMap = isMap;
12
12
  exports.toObject = toObject;
13
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
14
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
14
15
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
16
  var _customs = require("./customs.js");
@@ -33,7 +34,7 @@ var ObjectWrappingMap = exports.ObjectWrappingMap = /*#__PURE__*/function () {
33
34
  (0, _createClass2["default"])(ObjectWrappingMap, [{
34
35
  key: "keys",
35
36
  value: function keys() {
36
- return Object.keys(this.wrappedObject);
37
+ return Object.keys(this.wrappedObject).values();
37
38
  }
38
39
  }, {
39
40
  key: "get",
@@ -51,9 +52,168 @@ var ObjectWrappingMap = exports.ObjectWrappingMap = /*#__PURE__*/function () {
51
52
  value: function has(key) {
52
53
  return (0, _customs.hasSafeProperty)(this.wrappedObject, key);
53
54
  }
55
+ }, {
56
+ key: "entries",
57
+ value: function entries() {
58
+ var _this = this;
59
+ return mapIterator(this.keys(), function (key) {
60
+ return [key, _this.get(key)];
61
+ });
62
+ }
63
+ }, {
64
+ key: "forEach",
65
+ value: function forEach(callback) {
66
+ var _iterator = _createForOfIteratorHelper(this.keys()),
67
+ _step;
68
+ try {
69
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
70
+ var key = _step.value;
71
+ callback(this.get(key), key, this);
72
+ }
73
+ } catch (err) {
74
+ _iterator.e(err);
75
+ } finally {
76
+ _iterator.f();
77
+ }
78
+ }
79
+ }, {
80
+ key: "delete",
81
+ value: function _delete(key) {
82
+ delete this.wrappedObject[key];
83
+ }
84
+ }, {
85
+ key: "clear",
86
+ value: function clear() {
87
+ var _iterator2 = _createForOfIteratorHelper(this.keys()),
88
+ _step2;
89
+ try {
90
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
91
+ var key = _step2.value;
92
+ this["delete"](key);
93
+ }
94
+ } catch (err) {
95
+ _iterator2.e(err);
96
+ } finally {
97
+ _iterator2.f();
98
+ }
99
+ }
100
+ }, {
101
+ key: "size",
102
+ get: function get() {
103
+ return Object.keys(this.wrappedObject).length;
104
+ }
54
105
  }]);
55
106
  return ObjectWrappingMap;
56
107
  }();
108
+ /**
109
+ * Create a map with two partitions: a and b.
110
+ * The set with bKeys determines which keys/values are read/written to map b,
111
+ * all other values are read/written to map a
112
+ *
113
+ * For example:
114
+ *
115
+ * const a = new Map()
116
+ * const b = new Map()
117
+ * const p = new PartitionedMap(a, b, new Set(['x', 'y']))
118
+ *
119
+ * In this case, values `x` and `y` are read/written to map `b`,
120
+ * all other values are read/written to map `a`.
121
+ */
122
+ var PartitionedMap = exports.PartitionedMap = /*#__PURE__*/function () {
123
+ /**
124
+ * @param {Map} a
125
+ * @param {Map} b
126
+ * @param {Set} bKeys
127
+ */
128
+ function PartitionedMap(a, b, bKeys) {
129
+ (0, _classCallCheck2["default"])(this, PartitionedMap);
130
+ this.a = a;
131
+ this.b = b;
132
+ this.bKeys = bKeys;
133
+ }
134
+ (0, _createClass2["default"])(PartitionedMap, [{
135
+ key: "get",
136
+ value: function get(key) {
137
+ return this.bKeys.has(key) ? this.b.get(key) : this.a.get(key);
138
+ }
139
+ }, {
140
+ key: "set",
141
+ value: function set(key, value) {
142
+ if (this.bKeys.has(key)) {
143
+ this.b.set(key, value);
144
+ } else {
145
+ this.a.set(key, value);
146
+ }
147
+ return this;
148
+ }
149
+ }, {
150
+ key: "has",
151
+ value: function has(key) {
152
+ return this.b.has(key) || this.a.has(key);
153
+ }
154
+ }, {
155
+ key: "keys",
156
+ value: function keys() {
157
+ return new Set([].concat((0, _toConsumableArray2["default"])(this.a.keys()), (0, _toConsumableArray2["default"])(this.b.keys())))[Symbol.iterator]();
158
+ }
159
+ }, {
160
+ key: "entries",
161
+ value: function entries() {
162
+ var _this2 = this;
163
+ return mapIterator(this.keys(), function (key) {
164
+ return [key, _this2.get(key)];
165
+ });
166
+ }
167
+ }, {
168
+ key: "forEach",
169
+ value: function forEach(callback) {
170
+ var _iterator3 = _createForOfIteratorHelper(this.keys()),
171
+ _step3;
172
+ try {
173
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
174
+ var key = _step3.value;
175
+ callback(this.get(key), key, this);
176
+ }
177
+ } catch (err) {
178
+ _iterator3.e(err);
179
+ } finally {
180
+ _iterator3.f();
181
+ }
182
+ }
183
+ }, {
184
+ key: "delete",
185
+ value: function _delete(key) {
186
+ return this.bKeys.has(key) ? this.b["delete"](key) : this.a["delete"](key);
187
+ }
188
+ }, {
189
+ key: "clear",
190
+ value: function clear() {
191
+ this.a.clear();
192
+ this.b.clear();
193
+ }
194
+ }, {
195
+ key: "size",
196
+ get: function get() {
197
+ return (0, _toConsumableArray2["default"])(this.keys()).length;
198
+ }
199
+ }]);
200
+ return PartitionedMap;
201
+ }();
202
+ /**
203
+ * Create a new iterator that maps over the provided iterator, applying a mapping function to each item
204
+ */
205
+ function mapIterator(it, callback) {
206
+ return {
207
+ next: function next() {
208
+ var n = it.next();
209
+ return n.done ? n : {
210
+ value: callback(n.value),
211
+ done: false
212
+ };
213
+ }
214
+ };
215
+ }
216
+
57
217
  /**
58
218
  * Creates an empty map, or whatever your platform's polyfill is.
59
219
  *
@@ -93,18 +253,18 @@ function toObject(map) {
93
253
  return map.wrappedObject;
94
254
  }
95
255
  var object = {};
96
- var _iterator = _createForOfIteratorHelper(map.keys()),
97
- _step;
256
+ var _iterator4 = _createForOfIteratorHelper(map.keys()),
257
+ _step4;
98
258
  try {
99
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
100
- var key = _step.value;
259
+ for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
260
+ var key = _step4.value;
101
261
  var value = map.get(key);
102
262
  (0, _customs.setSafeProperty)(object, key, value);
103
263
  }
104
264
  } catch (err) {
105
- _iterator.e(err);
265
+ _iterator4.e(err);
106
266
  } finally {
107
- _iterator.f();
267
+ _iterator4.f();
108
268
  }
109
269
  return object;
110
270
  }
@@ -143,17 +303,17 @@ function assign(map) {
143
303
  continue;
144
304
  }
145
305
  if (isMap(args)) {
146
- var _iterator2 = _createForOfIteratorHelper(args.keys()),
147
- _step2;
306
+ var _iterator5 = _createForOfIteratorHelper(args.keys()),
307
+ _step5;
148
308
  try {
149
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
150
- var key = _step2.value;
309
+ for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
310
+ var key = _step5.value;
151
311
  map.set(key, args.get(key));
152
312
  }
153
313
  } catch (err) {
154
- _iterator2.e(err);
314
+ _iterator5.e(err);
155
315
  } finally {
156
- _iterator2.f();
316
+ _iterator5.f();
157
317
  }
158
318
  } else if ((0, _is.isObject)(args)) {
159
319
  for (var _i2 = 0, _Object$keys = Object.keys(args); _i2 < _Object$keys.length; _i2++) {
@@ -12,6 +12,7 @@ exports.format = format;
12
12
  exports.isInteger = isInteger;
13
13
  exports.log2 = exports.log1p = exports.log10 = void 0;
14
14
  exports.nearlyEqual = nearlyEqual;
15
+ exports.normalizeFormatOptions = normalizeFormatOptions;
15
16
  exports.roundDigits = roundDigits;
16
17
  exports.sinh = exports.sign = void 0;
17
18
  exports.splitNumber = splitNumber;
@@ -42,7 +43,7 @@ function isInteger(value) {
42
43
  * @param {number} x
43
44
  * @returns {number}
44
45
  */
45
- var sign = exports.sign = /* #__PURE__ */Math.sign || function (x) {
46
+ var sign = exports.sign = Math.sign || function (x) {
46
47
  if (x > 0) {
47
48
  return 1;
48
49
  } else if (x < 0) {
@@ -57,7 +58,7 @@ var sign = exports.sign = /* #__PURE__ */Math.sign || function (x) {
57
58
  * @param {number} x
58
59
  * @returns {number}
59
60
  */
60
- var log2 = exports.log2 = /* #__PURE__ */Math.log2 || function log2(x) {
61
+ var log2 = exports.log2 = Math.log2 || function log2(x) {
61
62
  return Math.log(x) / Math.LN2;
62
63
  };
63
64
 
@@ -66,7 +67,7 @@ var log2 = exports.log2 = /* #__PURE__ */Math.log2 || function log2(x) {
66
67
  * @param {number} x
67
68
  * @returns {number}
68
69
  */
69
- var log10 = exports.log10 = /* #__PURE__ */Math.log10 || function log10(x) {
70
+ var log10 = exports.log10 = Math.log10 || function log10(x) {
70
71
  return Math.log(x) / Math.LN10;
71
72
  };
72
73
 
@@ -75,7 +76,7 @@ var log10 = exports.log10 = /* #__PURE__ */Math.log10 || function log10(x) {
75
76
  * @param {number} x
76
77
  * @returns {number}
77
78
  */
78
- var log1p = exports.log1p = /* #__PURE__ */Math.log1p || function (x) {
79
+ var log1p = exports.log1p = Math.log1p || function (x) {
79
80
  return Math.log(x + 1);
80
81
  };
81
82
 
@@ -88,7 +89,7 @@ var log1p = exports.log1p = /* #__PURE__ */Math.log1p || function (x) {
88
89
  * @param {number} x
89
90
  * @returns {number} Returns the cubic root of x
90
91
  */
91
- var cbrt = exports.cbrt = /* #__PURE__ */Math.cbrt || function cbrt(x) {
92
+ var cbrt = exports.cbrt = Math.cbrt || function cbrt(x) {
92
93
  if (x === 0) {
93
94
  return x;
94
95
  }
@@ -112,7 +113,7 @@ var cbrt = exports.cbrt = /* #__PURE__ */Math.cbrt || function cbrt(x) {
112
113
  * @param {number} x
113
114
  * @return {number} res
114
115
  */
115
- var expm1 = exports.expm1 = /* #__PURE__ */Math.expm1 || function expm1(x) {
116
+ var expm1 = exports.expm1 = Math.expm1 || function expm1(x) {
116
117
  return x >= 2e-4 || x <= -2e-4 ? Math.exp(x) - 1 : x + x * x / 2 + x * x * x / 6;
117
118
  };
118
119
 
@@ -255,30 +256,10 @@ function format(value, options) {
255
256
  } else if (isNaN(value)) {
256
257
  return 'NaN';
257
258
  }
258
-
259
- // default values for options
260
- var notation = 'auto';
261
- var precision;
262
- var wordSize;
263
- if (options) {
264
- // determine notation from options
265
- if (options.notation) {
266
- notation = options.notation;
267
- }
268
-
269
- // determine precision from options
270
- if ((0, _is.isNumber)(options)) {
271
- precision = options;
272
- } else if ((0, _is.isNumber)(options.precision)) {
273
- precision = options.precision;
274
- }
275
- if (options.wordSize) {
276
- wordSize = options.wordSize;
277
- if (typeof wordSize !== 'number') {
278
- throw new Error('Option "wordSize" must be a number');
279
- }
280
- }
281
- }
259
+ var _normalizeFormatOptio = normalizeFormatOptions(options),
260
+ notation = _normalizeFormatOptio.notation,
261
+ precision = _normalizeFormatOptio.precision,
262
+ wordSize = _normalizeFormatOptio.wordSize;
282
263
 
283
264
  // handle the various notations
284
265
  switch (notation) {
@@ -296,7 +277,7 @@ function format(value, options) {
296
277
  return formatNumberToBase(value, 16, wordSize);
297
278
  case 'auto':
298
279
  // remove trailing zeros after the decimal point
299
- return toPrecision(value, precision, options && options).replace(/((\.\d*?)(0+))($|e)/, function () {
280
+ return toPrecision(value, precision, options).replace(/((\.\d*?)(0+))($|e)/, function () {
300
281
  var digits = arguments[2];
301
282
  var e = arguments[4];
302
283
  return digits !== '.' ? digits + e : e;
@@ -306,6 +287,49 @@ function format(value, options) {
306
287
  }
307
288
  }
308
289
 
290
+ /**
291
+ * Normalize format options into an object:
292
+ * {
293
+ * notation: string,
294
+ * precision: number | undefined,
295
+ * wordSize: number | undefined
296
+ * }
297
+ */
298
+ function normalizeFormatOptions(options) {
299
+ // default values for options
300
+ var notation = 'auto';
301
+ var precision;
302
+ var wordSize;
303
+ if (options !== undefined) {
304
+ if ((0, _is.isNumber)(options)) {
305
+ precision = options;
306
+ } else if ((0, _is.isBigNumber)(options)) {
307
+ precision = options.toNumber();
308
+ } else if ((0, _is.isObject)(options)) {
309
+ if (options.precision !== undefined) {
310
+ precision = _toNumberOrThrow(options.precision, function () {
311
+ throw new Error('Option "precision" must be a number or BigNumber');
312
+ });
313
+ }
314
+ if (options.wordSize !== undefined) {
315
+ wordSize = _toNumberOrThrow(options.wordSize, function () {
316
+ throw new Error('Option "wordSize" must be a number or BigNumber');
317
+ });
318
+ }
319
+ if (options.notation) {
320
+ notation = options.notation;
321
+ }
322
+ } else {
323
+ throw new Error('Unsupported type of options, number, BigNumber, or object expected');
324
+ }
325
+ }
326
+ return {
327
+ notation: notation,
328
+ precision: precision,
329
+ wordSize: wordSize
330
+ };
331
+ }
332
+
309
333
  /**
310
334
  * Split a number into sign, coefficients, and exponent
311
335
  * @param {number | string} value
@@ -469,8 +493,8 @@ function toPrecision(value, precision, options) {
469
493
  }
470
494
 
471
495
  // determine lower and upper bound for exponential notation.
472
- var lowerExp = options && options.lowerExp !== undefined ? options.lowerExp : -3;
473
- var upperExp = options && options.upperExp !== undefined ? options.upperExp : 5;
496
+ var lowerExp = _toNumberOrDefault(options === null || options === void 0 ? void 0 : options.lowerExp, -3);
497
+ var upperExp = _toNumberOrDefault(options === null || options === void 0 ? void 0 : options.upperExp, 5);
474
498
  var split = splitNumber(value);
475
499
  var rounded = precision ? roundDigits(split, precision) : split;
476
500
  if (rounded.exponent < lowerExp || rounded.exponent >= upperExp) {
@@ -675,4 +699,22 @@ function copysign(x, y) {
675
699
  var signx = x > 0 ? true : x < 0 ? false : 1 / x === Infinity;
676
700
  var signy = y > 0 ? true : y < 0 ? false : 1 / y === Infinity;
677
701
  return signx ^ signy ? -x : x;
702
+ }
703
+ function _toNumberOrThrow(value, onError) {
704
+ if ((0, _is.isNumber)(value)) {
705
+ return value;
706
+ } else if ((0, _is.isBigNumber)(value)) {
707
+ return value.toNumber();
708
+ } else {
709
+ onError();
710
+ }
711
+ }
712
+ function _toNumberOrDefault(value, defaultValue) {
713
+ if ((0, _is.isNumber)(value)) {
714
+ return value;
715
+ } else if ((0, _is.isBigNumber)(value)) {
716
+ return value.toNumber();
717
+ } else {
718
+ return defaultValue;
719
+ }
678
720
  }
@@ -15,15 +15,9 @@ var _map = require("./map.js");
15
15
  * the remaining `args`.
16
16
  *
17
17
  * @param {Map} parentScope
18
- * @param {...any} args
19
- * @returns {Map}
18
+ * @param {Object} args
19
+ * @returns {PartitionedMap}
20
20
  */
21
- function createSubScope(parentScope) {
22
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
23
- args[_key - 1] = arguments[_key];
24
- }
25
- if (typeof parentScope.createSubScope === 'function') {
26
- return _map.assign.apply(void 0, [parentScope.createSubScope()].concat(args));
27
- }
28
- return _map.assign.apply(void 0, [(0, _map.createEmptyMap)(), parentScope].concat(args));
21
+ function createSubScope(parentScope, args) {
22
+ return new _map.PartitionedMap(parentScope, new _map.ObjectWrappingMap(args), new Set(Object.keys(args)));
29
23
  }
@@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.version = void 0;
7
- var version = exports.version = '12.3.0';
7
+ var version = exports.version = '12.3.2';
8
8
  // Note: This file is automatically generated when building math.js.
9
9
  // Changes made in this file will be overwritten.
@@ -3,7 +3,7 @@ import { DEFAULT_CONFIG } from '../core/config.js';
3
3
  import { MATRIX_OPTIONS, NUMBER_OPTIONS } from '../core/function/config.js';
4
4
 
5
5
  // create a read-only version of config
6
- export var config = /* #__PURE__ */function config(options) {
6
+ export var config = function config(options) {
7
7
  if (options) {
8
8
  throw new Error('The global config is readonly. \n' + 'Please create a mathjs instance if you want to change the default configuration. \n' + 'Example:\n' + '\n' + ' import { create, all } from \'mathjs\';\n' + ' const mathjs = create(all);\n' + ' mathjs.config({ number: \'BigNumber\' });\n');
9
9
  }
@@ -2,9 +2,9 @@
2
2
  * THIS FILE IS AUTO-GENERATED
3
3
  * DON'T MAKE CHANGES HERE
4
4
  */
5
- import { parseDependencies } from './dependenciesParse.generated.js';
5
+ import { evaluateDependencies } from './dependenciesEvaluate.generated.js';
6
6
  import { createHelpClass } from '../../factoriesAny.js';
7
7
  export var HelpDependencies = {
8
- parseDependencies,
8
+ evaluateDependencies,
9
9
  createHelpClass
10
10
  };
@@ -2,9 +2,9 @@
2
2
  * THIS FILE IS AUTO-GENERATED
3
3
  * DON'T MAKE CHANGES HERE
4
4
  */
5
- import { parseDependencies } from './dependenciesParse.generated.js';
5
+ import { evaluateDependencies } from './dependenciesEvaluate.generated.js';
6
6
  import { createHelpClass } from '../../factoriesNumber.js';
7
7
  export var HelpDependencies = {
8
- parseDependencies,
8
+ evaluateDependencies,
9
9
  createHelpClass
10
10
  };
@@ -4,10 +4,10 @@ import _extends from "@babel/runtime/helpers/extends";
4
4
  * DON'T MAKE CHANGES HERE
5
5
  */
6
6
  import { config } from './configReadonly.js';
7
- import { createNode, createObjectNode, createOperatorNode, createParenthesisNode, createRelationalNode, createArrayNode, createBlockNode, createConditionalNode, createConstantNode, createRangeNode, createReviver, createChainClass, createFunctionAssignmentNode, createChain, createIndexNode, createAccessorNode, createAssignmentNode, createSymbolNode, createFunctionNode, createParse, createResolve, createSimplifyConstant, createCompile, createHelpClass, createLeafCount, createSimplifyCore, createEvaluate, createHelp, createParserClass, createSimplify, createSymbolicEqual, createParser, createRationalize, createDerivative, createFilterTransform, createForEachTransform, createMapTransform, createApplyTransform, createOrTransform, createAndTransform, createConcatTransform, createMaxTransform, createPrintTransform, createBitAndTransform, createDiffTransform, createMinTransform, createSubsetTransform, createBitOrTransform, createCumSumTransform, createIndexTransform, createSumTransform, createRangeTransform, createRowTransform, createColumnTransform, createMeanTransform, createQuantileSeqTransform, createVarianceTransform, createStdTransform } from '../factoriesAny.js';
7
+ import { createNode, createObjectNode, createOperatorNode, createParenthesisNode, createRelationalNode, createArrayNode, createBlockNode, createConditionalNode, createConstantNode, createRangeNode, createReviver, createChainClass, createFunctionAssignmentNode, createChain, createIndexNode, createAccessorNode, createAssignmentNode, createSymbolNode, createFunctionNode, createParse, createResolve, createSimplifyConstant, createCompile, createSimplifyCore, createEvaluate, createHelpClass, createParserClass, createSimplify, createSymbolicEqual, createLeafCount, createParser, createRationalize, createDerivative, createHelp, createFilterTransform, createForEachTransform, createMapTransform, createApplyTransform, createOrTransform, createAndTransform, createConcatTransform, createMaxTransform, createPrintTransform, createBitAndTransform, createDiffTransform, createMinTransform, createSubsetTransform, createBitOrTransform, createCumSumTransform, createIndexTransform, createSumTransform, createRangeTransform, createRowTransform, createColumnTransform, createMeanTransform, createQuantileSeqTransform, createVarianceTransform, createStdTransform } from '../factoriesAny.js';
8
8
  import { BigNumber, Complex, e, _false, fineStructure, Fraction, i, _Infinity, LN10, LOG10E, Matrix, _NaN, _null, phi, Range, ResultSet, SQRT1_2,
9
9
  // eslint-disable-line camelcase
10
- sackurTetrode, tau, _true, version, DenseMatrix, efimovFactor, LN2, pi, replacer, SQRT2, typed, unaryPlus, weakMixingAngle, abs, acos, acot, acsc, addScalar, arg, asech, asinh, atan, atanh, bignumber, bitNot, boolean, clone, combinations, complex, conj, cos, cot, csc, cube, equalScalar, erf, exp, expm1, filter, forEach, format, getMatrixDataType, hex, im, isInteger, isNegative, isPositive, isZero, LOG2E, lgamma, log10, log2, map, multiplyScalar, not, number, oct, pickRandom, print, random, re, sec, sign, sin, SparseMatrix, splitUnit, square, string, subtractScalar, tan, typeOf, acosh, acsch, apply, asec, bin, combinationsWithRep, cosh, csch, isNaN, isPrime, randomInt, sech, sinh, sparse, sqrt, tanh, unaryMinus, acoth, coth, fraction, isNumeric, matrix, matrixFromFunction, mode, numeric, prod, reshape, size, squeeze, transpose, xgcd, zeros, asin, cbrt, concat, count, ctranspose, diag, divideScalar, dotDivide, equal, flatten, hasNumericValue, identity, kron, largerEq, leftShift, lsolve, matrixFromColumns, nthRoot, ones, qr, resize, rightArithShift, round, smaller, subtract, to, unequal, usolve, xor, add, atan2, bitAnd, bitOr, bitXor, catalan, compare, compareText, cumsum, deepEqual, diff, distance, dot, equalText, floor, gcd, hypot, ImmutableDenseMatrix, Index, larger, log, lsolveAll, matrixFromRows, min, mod, multiply, nthRoots, or, partitionSelect, rightLogShift, slu, subset, sum, trace, usolveAll, zpk2tf, ceil, compareNatural, composition, cross, det, dotMultiply, FibonacciHeap, fix, index, intersect, invmod, lcm, log1p, max, setCartesian, setDistinct, setIsSubset, setPowerset, smallerEq, sort, and, range, row, setDifference, setMultiplicity, setSymDifference, Spa, column, inv, lup, pinv, pow, setIntersect, setUnion, sqrtm, Unit, vacuumImpedance, wienDisplacement, atomicMass, bohrMagneton, boltzmann, conductanceQuantum, coulomb, deuteronMass, dotPow, electricConstant, elementaryCharge, expm, faraday, fft, gamma, gravitationConstant, hartreeEnergy, ifft, klitzing, loschmidt, magneticConstant, molarMass, molarPlanckConstant, neutronMass, nuclearMagneton, planckCharge, planckLength, planckTemperature, protonMass, quantumOfCirculation, reducedPlanckConstant, rydberg, secondRadiation, speedOfLight, stefanBoltzmann, thomsonCrossSection, avogadro, bohrRadius, createUnit, divide, electronMass, factorial, firstRadiation, gravity, inverseConductanceQuantum, lusolve, magneticFluxQuantum, molarMassC12, multinomial, permutations, planckMass, polynomialRoot, setSize, solveODE, stirlingS2, unit, bellNumbers, eigs, fermiCoupling, gasConstant, mean, molarVolume, planckConstant, quantileSeq, variance, classicalElectronRadius, median, corr, freqz, mad, std, zeta, norm, rotationMatrix, kldivergence, planckTime, schur, rotate, sylvester, lyap } from './pureFunctionsAny.generated.js';
10
+ sackurTetrode, tau, _true, version, DenseMatrix, efimovFactor, LN2, pi, replacer, SQRT2, typed, unaryPlus, weakMixingAngle, abs, acos, acot, acsc, addScalar, arg, asech, asinh, atan, atanh, bignumber, bitNot, boolean, clone, combinations, complex, conj, cos, cot, csc, cube, equalScalar, erf, exp, expm1, filter, forEach, format, getMatrixDataType, hex, im, isInteger, isNegative, isPositive, isZero, LOG2E, lgamma, log10, log2, map, multiplyScalar, not, number, oct, pickRandom, print, random, re, sec, sign, sin, SparseMatrix, splitUnit, square, string, subtractScalar, tan, typeOf, acosh, acsch, apply, asec, bin, combinationsWithRep, cosh, csch, isNaN, isPrime, randomInt, sech, sinh, sparse, sqrt, tanh, unaryMinus, acoth, coth, fraction, isNumeric, matrix, matrixFromFunction, mode, numeric, prod, reshape, size, squeeze, transpose, xgcd, zeros, asin, cbrt, concat, count, ctranspose, diag, divideScalar, dotDivide, equal, flatten, hasNumericValue, identity, kron, largerEq, leftShift, lsolve, matrixFromColumns, nthRoot, ones, qr, resize, rightArithShift, round, smaller, subtract, to, unequal, usolve, xor, add, atan2, bitAnd, bitOr, bitXor, catalan, compare, compareText, cumsum, deepEqual, diff, distance, dot, equalText, floor, gcd, hypot, ImmutableDenseMatrix, Index, larger, log, lsolveAll, matrixFromRows, min, mod, multiply, nthRoots, or, partitionSelect, rightLogShift, slu, subset, sum, trace, usolveAll, zpk2tf, ceil, compareNatural, composition, cross, det, dotMultiply, FibonacciHeap, fix, index, intersect, invmod, lcm, log1p, max, setCartesian, setDistinct, setIsSubset, setPowerset, smallerEq, sort, and, range, row, setDifference, setMultiplicity, setSymDifference, Spa, column, inv, lup, pinv, pow, setIntersect, setUnion, sqrtm, Unit, vacuumImpedance, wienDisplacement, atomicMass, bohrMagneton, boltzmann, conductanceQuantum, coulomb, deuteronMass, dotPow, electricConstant, elementaryCharge, expm, faraday, fft, gamma, gravitationConstant, hartreeEnergy, ifft, klitzing, loschmidt, magneticConstant, molarMass, molarPlanckConstant, neutronMass, nuclearMagneton, planckCharge, planckLength, planckTemperature, protonMass, quantumOfCirculation, reducedPlanckConstant, rydberg, secondRadiation, speedOfLight, stefanBoltzmann, thomsonCrossSection, avogadro, bohrRadius, createUnit, divide, electronMass, factorial, firstRadiation, gravity, inverseConductanceQuantum, lusolve, magneticFluxQuantum, molarMassC12, multinomial, permutations, planckMass, polynomialRoot, setSize, solveODE, stirlingS2, unit, bellNumbers, eigs, fermiCoupling, gasConstant, kldivergence, mean, molarVolume, planckConstant, quantileSeq, variance, classicalElectronRadius, median, corr, freqz, mad, std, zeta, norm, rotationMatrix, planckTime, schur, rotate, sylvester, lyap } from './pureFunctionsAny.generated.js';
11
11
  var math = {}; // NOT pure!
12
12
  var mathWithTransform = {}; // NOT pure!
13
13
  var classes = {}; // NOT pure!
@@ -129,13 +129,6 @@ export var compile = createCompile({
129
129
  parse,
130
130
  typed
131
131
  });
132
- export var Help = createHelpClass({
133
- parse
134
- });
135
- export var leafCount = createLeafCount({
136
- parse,
137
- typed
138
- });
139
132
  export var simplifyCore = createSimplifyCore({
140
133
  AccessorNode,
141
134
  ArrayNode,
@@ -160,10 +153,8 @@ export var evaluate = createEvaluate({
160
153
  parse,
161
154
  typed
162
155
  });
163
- export var help = createHelp({
164
- Help,
165
- mathWithTransform,
166
- typed
156
+ export var Help = createHelpClass({
157
+ evaluate
167
158
  });
168
159
  export var Parser = createParserClass({
169
160
  evaluate
@@ -202,6 +193,10 @@ export var symbolicEqual = createSymbolicEqual({
202
193
  simplify,
203
194
  typed
204
195
  });
196
+ export var leafCount = createLeafCount({
197
+ parse,
198
+ typed
199
+ });
205
200
  export var parser = createParser({
206
201
  Parser,
207
202
  typed
@@ -248,6 +243,11 @@ export var derivative = createDerivative({
248
243
  simplify,
249
244
  typed
250
245
  });
246
+ export var help = createHelp({
247
+ Help,
248
+ mathWithTransform,
249
+ typed
250
+ });
251
251
  _extends(math, {
252
252
  e,
253
253
  false: _false,
@@ -525,7 +525,7 @@ _extends(math, {
525
525
  eigs,
526
526
  fermiCoupling,
527
527
  gasConstant,
528
- leafCount,
528
+ kldivergence,
529
529
  mean,
530
530
  molarVolume,
531
531
  planckConstant,
@@ -534,12 +534,12 @@ _extends(math, {
534
534
  variance,
535
535
  classicalElectronRadius,
536
536
  evaluate,
537
- help,
538
537
  median,
539
538
  simplify,
540
539
  symbolicEqual,
541
540
  corr,
542
541
  freqz,
542
+ leafCount,
543
543
  mad,
544
544
  parser,
545
545
  rationalize,
@@ -548,7 +548,7 @@ _extends(math, {
548
548
  derivative,
549
549
  norm,
550
550
  rotationMatrix,
551
- kldivergence,
551
+ help,
552
552
  planckTime,
553
553
  schur,
554
554
  rotate,
@@ -151,7 +151,7 @@ export var evaluate = createEvaluate({
151
151
  typed
152
152
  });
153
153
  export var Help = createHelpClass({
154
- parse
154
+ evaluate
155
155
  });
156
156
  export var Parser = createParserClass({
157
157
  evaluate
@@ -5,7 +5,7 @@
5
5
  import { config } from './configReadonly.js';
6
6
  import { createBigNumberClass, createComplexClass, createE, createFalse, createFineStructure, createFractionClass, createI, createInfinity, createLN10, createLOG10E, createMatrixClass, createNaN, createNull, createPhi, createRangeClass, createResultSet, createSQRT1_2,
7
7
  // eslint-disable-line camelcase
8
- createSackurTetrode, createTau, createTrue, createVersion, createDenseMatrixClass, createEfimovFactor, createLN2, createPi, createReplacer, createSQRT2, createTyped, createUnaryPlus, createWeakMixingAngle, createAbs, createAcos, createAcot, createAcsc, createAddScalar, createArg, createAsech, createAsinh, createAtan, createAtanh, createBignumber, createBitNot, createBoolean, createClone, createCombinations, createComplex, createConj, createCos, createCot, createCsc, createCube, createEqualScalar, createErf, createExp, createExpm1, createFilter, createForEach, createFormat, createGetMatrixDataType, createHex, createIm, createIsInteger, createIsNegative, createIsPositive, createIsZero, createLOG2E, createLgamma, createLog10, createLog2, createMap, createMultiplyScalar, createNot, createNumber, createOct, createPickRandom, createPrint, createRandom, createRe, createSec, createSign, createSin, createSparseMatrixClass, createSplitUnit, createSquare, createString, createSubtractScalar, createTan, createTypeOf, createAcosh, createAcsch, createApply, createAsec, createBin, createCombinationsWithRep, createCosh, createCsch, createIsNaN, createIsPrime, createRandomInt, createSech, createSinh, createSparse, createSqrt, createTanh, createUnaryMinus, createAcoth, createCoth, createFraction, createIsNumeric, createMatrix, createMatrixFromFunction, createMode, createNumeric, createProd, createReshape, createSize, createSqueeze, createTranspose, createXgcd, createZeros, createAsin, createCbrt, createConcat, createCount, createCtranspose, createDiag, createDivideScalar, createDotDivide, createEqual, createFlatten, createHasNumericValue, createIdentity, createKron, createLargerEq, createLeftShift, createLsolve, createMatrixFromColumns, createNthRoot, createOnes, createQr, createResize, createRightArithShift, createRound, createSmaller, createSubtract, createTo, createUnequal, createUsolve, createXor, createAdd, createAtan2, createBitAnd, createBitOr, createBitXor, createCatalan, createCompare, createCompareText, createCumSum, createDeepEqual, createDiff, createDistance, createDot, createEqualText, createFloor, createGcd, createHypot, createImmutableDenseMatrixClass, createIndexClass, createLarger, createLog, createLsolveAll, createMatrixFromRows, createMin, createMod, createMultiply, createNthRoots, createOr, createPartitionSelect, createRightLogShift, createSlu, createSubset, createSum, createTrace, createUsolveAll, createZpk2tf, createCeil, createCompareNatural, createComposition, createCross, createDet, createDotMultiply, createFibonacciHeapClass, createFix, createIndex, createIntersect, createInvmod, createLcm, createLog1p, createMax, createSetCartesian, createSetDistinct, createSetIsSubset, createSetPowerset, createSmallerEq, createSort, createAnd, createRange, createRow, createSetDifference, createSetMultiplicity, createSetSymDifference, createSpaClass, createColumn, createInv, createLup, createPinv, createPow, createSetIntersect, createSetUnion, createSqrtm, createUnitClass, createVacuumImpedance, createWienDisplacement, createAtomicMass, createBohrMagneton, createBoltzmann, createConductanceQuantum, createCoulomb, createDeuteronMass, createDotPow, createElectricConstant, createElementaryCharge, createExpm, createFaraday, createFft, createGamma, createGravitationConstant, createHartreeEnergy, createIfft, createKlitzing, createLoschmidt, createMagneticConstant, createMolarMass, createMolarPlanckConstant, createNeutronMass, createNuclearMagneton, createPlanckCharge, createPlanckLength, createPlanckTemperature, createProtonMass, createQuantumOfCirculation, createReducedPlanckConstant, createRydberg, createSecondRadiation, createSpeedOfLight, createStefanBoltzmann, createThomsonCrossSection, createAvogadro, createBohrRadius, createCreateUnit, createDivide, createElectronMass, createFactorial, createFirstRadiation, createGravity, createInverseConductanceQuantum, createLusolve, createMagneticFluxQuantum, createMolarMassC12, createMultinomial, createPermutations, createPlanckMass, createPolynomialRoot, createSetSize, createSolveODE, createStirlingS2, createUnitFunction, createBellNumbers, createEigs, createFermiCoupling, createGasConstant, createMean, createMolarVolume, createPlanckConstant, createQuantileSeq, createVariance, createClassicalElectronRadius, createMedian, createCorr, createFreqz, createMad, createStd, createZeta, createNorm, createRotationMatrix, createKldivergence, createPlanckTime, createSchur, createRotate, createSylvester, createLyap } from '../factoriesAny.js';
8
+ createSackurTetrode, createTau, createTrue, createVersion, createDenseMatrixClass, createEfimovFactor, createLN2, createPi, createReplacer, createSQRT2, createTyped, createUnaryPlus, createWeakMixingAngle, createAbs, createAcos, createAcot, createAcsc, createAddScalar, createArg, createAsech, createAsinh, createAtan, createAtanh, createBignumber, createBitNot, createBoolean, createClone, createCombinations, createComplex, createConj, createCos, createCot, createCsc, createCube, createEqualScalar, createErf, createExp, createExpm1, createFilter, createForEach, createFormat, createGetMatrixDataType, createHex, createIm, createIsInteger, createIsNegative, createIsPositive, createIsZero, createLOG2E, createLgamma, createLog10, createLog2, createMap, createMultiplyScalar, createNot, createNumber, createOct, createPickRandom, createPrint, createRandom, createRe, createSec, createSign, createSin, createSparseMatrixClass, createSplitUnit, createSquare, createString, createSubtractScalar, createTan, createTypeOf, createAcosh, createAcsch, createApply, createAsec, createBin, createCombinationsWithRep, createCosh, createCsch, createIsNaN, createIsPrime, createRandomInt, createSech, createSinh, createSparse, createSqrt, createTanh, createUnaryMinus, createAcoth, createCoth, createFraction, createIsNumeric, createMatrix, createMatrixFromFunction, createMode, createNumeric, createProd, createReshape, createSize, createSqueeze, createTranspose, createXgcd, createZeros, createAsin, createCbrt, createConcat, createCount, createCtranspose, createDiag, createDivideScalar, createDotDivide, createEqual, createFlatten, createHasNumericValue, createIdentity, createKron, createLargerEq, createLeftShift, createLsolve, createMatrixFromColumns, createNthRoot, createOnes, createQr, createResize, createRightArithShift, createRound, createSmaller, createSubtract, createTo, createUnequal, createUsolve, createXor, createAdd, createAtan2, createBitAnd, createBitOr, createBitXor, createCatalan, createCompare, createCompareText, createCumSum, createDeepEqual, createDiff, createDistance, createDot, createEqualText, createFloor, createGcd, createHypot, createImmutableDenseMatrixClass, createIndexClass, createLarger, createLog, createLsolveAll, createMatrixFromRows, createMin, createMod, createMultiply, createNthRoots, createOr, createPartitionSelect, createRightLogShift, createSlu, createSubset, createSum, createTrace, createUsolveAll, createZpk2tf, createCeil, createCompareNatural, createComposition, createCross, createDet, createDotMultiply, createFibonacciHeapClass, createFix, createIndex, createIntersect, createInvmod, createLcm, createLog1p, createMax, createSetCartesian, createSetDistinct, createSetIsSubset, createSetPowerset, createSmallerEq, createSort, createAnd, createRange, createRow, createSetDifference, createSetMultiplicity, createSetSymDifference, createSpaClass, createColumn, createInv, createLup, createPinv, createPow, createSetIntersect, createSetUnion, createSqrtm, createUnitClass, createVacuumImpedance, createWienDisplacement, createAtomicMass, createBohrMagneton, createBoltzmann, createConductanceQuantum, createCoulomb, createDeuteronMass, createDotPow, createElectricConstant, createElementaryCharge, createExpm, createFaraday, createFft, createGamma, createGravitationConstant, createHartreeEnergy, createIfft, createKlitzing, createLoschmidt, createMagneticConstant, createMolarMass, createMolarPlanckConstant, createNeutronMass, createNuclearMagneton, createPlanckCharge, createPlanckLength, createPlanckTemperature, createProtonMass, createQuantumOfCirculation, createReducedPlanckConstant, createRydberg, createSecondRadiation, createSpeedOfLight, createStefanBoltzmann, createThomsonCrossSection, createAvogadro, createBohrRadius, createCreateUnit, createDivide, createElectronMass, createFactorial, createFirstRadiation, createGravity, createInverseConductanceQuantum, createLusolve, createMagneticFluxQuantum, createMolarMassC12, createMultinomial, createPermutations, createPlanckMass, createPolynomialRoot, createSetSize, createSolveODE, createStirlingS2, createUnitFunction, createBellNumbers, createEigs, createFermiCoupling, createGasConstant, createKldivergence, createMean, createMolarVolume, createPlanckConstant, createQuantileSeq, createVariance, createClassicalElectronRadius, createMedian, createCorr, createFreqz, createMad, createStd, createZeta, createNorm, createRotationMatrix, createPlanckTime, createSchur, createRotate, createSylvester, createLyap } from '../factoriesAny.js';
9
9
  export var BigNumber = /* #__PURE__ */createBigNumberClass({
10
10
  config
11
11
  });
@@ -1602,6 +1602,17 @@ export var gasConstant = /* #__PURE__ */createGasConstant({
1602
1602
  Unit,
1603
1603
  config
1604
1604
  });
1605
+ export var kldivergence = /* #__PURE__ */createKldivergence({
1606
+ divide,
1607
+ dotDivide,
1608
+ isNumeric,
1609
+ log,
1610
+ map,
1611
+ matrix,
1612
+ multiply,
1613
+ sum,
1614
+ typed
1615
+ });
1605
1616
  export var mean = /* #__PURE__ */createMean({
1606
1617
  add,
1607
1618
  divide,
@@ -1732,17 +1743,6 @@ export var rotationMatrix = /* #__PURE__ */createRotationMatrix({
1732
1743
  typed,
1733
1744
  unaryMinus
1734
1745
  });
1735
- export var kldivergence = /* #__PURE__ */createKldivergence({
1736
- divide,
1737
- dotDivide,
1738
- isNumeric,
1739
- log,
1740
- map,
1741
- matrix,
1742
- multiply,
1743
- sum,
1744
- typed
1745
- });
1746
1746
  export var planckTime = /* #__PURE__ */createPlanckTime({
1747
1747
  BigNumber,
1748
1748
  Unit,