mathjs 12.3.2 → 12.4.0
Sign up to get free protection for your applications and to get access to all the features.
- package/HISTORY.md +15 -0
- package/lib/browser/math.js +1 -1
- package/lib/browser/math.js.LICENSE.txt +2 -2
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/entry/pureFunctionsAny.generated.js +1 -0
- package/lib/cjs/expression/parse.js +8 -4
- package/lib/cjs/function/arithmetic/multiply.js +30 -29
- package/lib/cjs/function/arithmetic/round.js +38 -7
- package/lib/cjs/function/matrix/dot.js +3 -3
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/type/matrix/utils/matAlgo01xDSid.js +4 -4
- package/lib/cjs/type/matrix/utils/matAlgo02xDS0.js +4 -4
- package/lib/cjs/type/matrix/utils/matAlgo03xDSf.js +4 -4
- package/lib/cjs/type/matrix/utils/matAlgo04xSidSid.js +4 -4
- package/lib/cjs/type/matrix/utils/matAlgo05xSfSf.js +4 -4
- package/lib/cjs/type/matrix/utils/matAlgo06xS0S0.js +4 -4
- package/lib/cjs/type/matrix/utils/matAlgo07xSSf.js +4 -4
- package/lib/cjs/type/matrix/utils/matAlgo08xS0Sid.js +4 -4
- package/lib/cjs/type/matrix/utils/matAlgo09xS0Sf.js +4 -4
- package/lib/cjs/utils/map.js +2 -0
- package/lib/cjs/version.js +1 -1
- package/lib/esm/entry/pureFunctionsAny.generated.js +1 -0
- package/lib/esm/expression/parse.js +8 -4
- package/lib/esm/function/arithmetic/multiply.js +30 -29
- package/lib/esm/function/arithmetic/round.js +38 -7
- package/lib/esm/function/matrix/dot.js +3 -3
- package/lib/esm/type/matrix/utils/matAlgo01xDSid.js +4 -4
- package/lib/esm/type/matrix/utils/matAlgo02xDS0.js +4 -4
- package/lib/esm/type/matrix/utils/matAlgo03xDSf.js +4 -4
- package/lib/esm/type/matrix/utils/matAlgo04xSidSid.js +4 -4
- package/lib/esm/type/matrix/utils/matAlgo05xSfSf.js +4 -4
- package/lib/esm/type/matrix/utils/matAlgo06xS0S0.js +4 -4
- package/lib/esm/type/matrix/utils/matAlgo07xSSf.js +4 -4
- package/lib/esm/type/matrix/utils/matAlgo08xS0Sid.js +4 -4
- package/lib/esm/type/matrix/utils/matAlgo09xS0Sf.js +4 -4
- package/lib/esm/utils/map.js +2 -0
- package/lib/esm/version.js +1 -1
- package/package.json +7 -7
- package/types/index.d.ts +5 -5
@@ -24,10 +24,10 @@ export var createMatAlgo07xSSf = /* #__PURE__ */factory(name, dependencies, _ref
|
|
24
24
|
return function matAlgo07xSSf(a, b, callback) {
|
25
25
|
// sparse matrix arrays
|
26
26
|
var asize = a._size;
|
27
|
-
var adt = a._datatype;
|
27
|
+
var adt = a._datatype || a._data === undefined ? a._datatype : a.getDataType();
|
28
28
|
// sparse matrix arrays
|
29
29
|
var bsize = b._size;
|
30
|
-
var bdt = b._datatype;
|
30
|
+
var bdt = b._datatype || b._data === undefined ? b._datatype : b.getDataType();
|
31
31
|
|
32
32
|
// validate dimensions
|
33
33
|
if (asize.length !== bsize.length) {
|
@@ -51,7 +51,7 @@ export var createMatAlgo07xSSf = /* #__PURE__ */factory(name, dependencies, _ref
|
|
51
51
|
var cf = callback;
|
52
52
|
|
53
53
|
// process data types
|
54
|
-
if (typeof adt === 'string' && adt === bdt) {
|
54
|
+
if (typeof adt === 'string' && adt === bdt && adt !== 'mixed') {
|
55
55
|
// datatype
|
56
56
|
dt = adt;
|
57
57
|
// convert 0 to the same datatype
|
@@ -99,7 +99,7 @@ export var createMatAlgo07xSSf = /* #__PURE__ */factory(name, dependencies, _ref
|
|
99
99
|
return new DenseMatrix({
|
100
100
|
data: cdata,
|
101
101
|
size: [rows, columns],
|
102
|
-
datatype: dt
|
102
|
+
datatype: adt === a._datatype && bdt === b._datatype ? dt : undefined
|
103
103
|
});
|
104
104
|
};
|
105
105
|
function _scatter(m, j, w, x, mark) {
|
@@ -31,13 +31,13 @@ export var createMatAlgo08xS0Sid = /* #__PURE__ */factory(name, dependencies, _r
|
|
31
31
|
var aindex = a._index;
|
32
32
|
var aptr = a._ptr;
|
33
33
|
var asize = a._size;
|
34
|
-
var adt = a._datatype;
|
34
|
+
var adt = a._datatype || a._data === undefined ? a._datatype : a.getDataType();
|
35
35
|
// sparse matrix arrays
|
36
36
|
var bvalues = b._values;
|
37
37
|
var bindex = b._index;
|
38
38
|
var bptr = b._ptr;
|
39
39
|
var bsize = b._size;
|
40
|
-
var bdt = b._datatype;
|
40
|
+
var bdt = b._datatype || b._data === undefined ? b._datatype : b.getDataType();
|
41
41
|
|
42
42
|
// validate dimensions
|
43
43
|
if (asize.length !== bsize.length) {
|
@@ -68,7 +68,7 @@ export var createMatAlgo08xS0Sid = /* #__PURE__ */factory(name, dependencies, _r
|
|
68
68
|
var cf = callback;
|
69
69
|
|
70
70
|
// process data types
|
71
|
-
if (typeof adt === 'string' && adt === bdt) {
|
71
|
+
if (typeof adt === 'string' && adt === bdt && adt !== 'mixed') {
|
72
72
|
// datatype
|
73
73
|
dt = adt;
|
74
74
|
// find signature that matches (dt, dt)
|
@@ -148,7 +148,7 @@ export var createMatAlgo08xS0Sid = /* #__PURE__ */factory(name, dependencies, _r
|
|
148
148
|
index: cindex,
|
149
149
|
ptr: cptr,
|
150
150
|
size: [rows, columns],
|
151
|
-
datatype: dt
|
151
|
+
datatype: adt === a._datatype && bdt === b._datatype ? dt : undefined
|
152
152
|
});
|
153
153
|
};
|
154
154
|
});
|
@@ -31,13 +31,13 @@ export var createMatAlgo09xS0Sf = /* #__PURE__ */factory(name, dependencies, _re
|
|
31
31
|
var aindex = a._index;
|
32
32
|
var aptr = a._ptr;
|
33
33
|
var asize = a._size;
|
34
|
-
var adt = a._datatype;
|
34
|
+
var adt = a._datatype || a._data === undefined ? a._datatype : a.getDataType();
|
35
35
|
// sparse matrix arrays
|
36
36
|
var bvalues = b._values;
|
37
37
|
var bindex = b._index;
|
38
38
|
var bptr = b._ptr;
|
39
39
|
var bsize = b._size;
|
40
|
-
var bdt = b._datatype;
|
40
|
+
var bdt = b._datatype || b._data === undefined ? b._datatype : b.getDataType();
|
41
41
|
|
42
42
|
// validate dimensions
|
43
43
|
if (asize.length !== bsize.length) {
|
@@ -63,7 +63,7 @@ export var createMatAlgo09xS0Sf = /* #__PURE__ */factory(name, dependencies, _re
|
|
63
63
|
var cf = callback;
|
64
64
|
|
65
65
|
// process data types
|
66
|
-
if (typeof adt === 'string' && adt === bdt) {
|
66
|
+
if (typeof adt === 'string' && adt === bdt && adt !== 'mixed') {
|
67
67
|
// datatype
|
68
68
|
dt = adt;
|
69
69
|
// find signature that matches (dt, dt)
|
@@ -136,7 +136,7 @@ export var createMatAlgo09xS0Sf = /* #__PURE__ */factory(name, dependencies, _re
|
|
136
136
|
index: cindex,
|
137
137
|
ptr: cptr,
|
138
138
|
size: [rows, columns],
|
139
|
-
datatype: dt
|
139
|
+
datatype: adt === a._datatype && bdt === b._datatype ? dt : undefined
|
140
140
|
});
|
141
141
|
};
|
142
142
|
});
|
package/lib/esm/utils/map.js
CHANGED
@@ -12,6 +12,7 @@ import { isObject } from './is.js';
|
|
12
12
|
export class ObjectWrappingMap {
|
13
13
|
constructor(object) {
|
14
14
|
this.wrappedObject = object;
|
15
|
+
this[Symbol.iterator] = this.entries;
|
15
16
|
}
|
16
17
|
keys() {
|
17
18
|
return Object.keys(this.wrappedObject).values();
|
@@ -71,6 +72,7 @@ export class PartitionedMap {
|
|
71
72
|
this.a = a;
|
72
73
|
this.b = b;
|
73
74
|
this.bKeys = bKeys;
|
75
|
+
this[Symbol.iterator] = this.entries;
|
74
76
|
}
|
75
77
|
get(key) {
|
76
78
|
return this.bKeys.has(key) ? this.b.get(key) : this.a.get(key);
|
package/lib/esm/version.js
CHANGED
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "mathjs",
|
3
|
-
"version": "12.
|
3
|
+
"version": "12.4.0",
|
4
4
|
"description": "Math.js is an extensive math library for JavaScript and Node.js. It features a flexible expression parser with support for symbolic computation, comes with a large set of built-in functions and constants, and offers an integrated solution to work with different data types like numbers, big numbers, complex numbers, fractions, units, and matrices.",
|
5
5
|
"author": "Jos de Jong <wjosdejong@gmail.com> (https://github.com/josdejong)",
|
6
6
|
"homepage": "https://mathjs.org",
|
@@ -43,21 +43,21 @@
|
|
43
43
|
"@babel/register": "7.23.7",
|
44
44
|
"@types/assert": "1.5.10",
|
45
45
|
"@types/mocha": "10.0.6",
|
46
|
-
"@typescript-eslint/eslint-plugin": "
|
47
|
-
"@typescript-eslint/parser": "
|
46
|
+
"@typescript-eslint/eslint-plugin": "7.0.2",
|
47
|
+
"@typescript-eslint/parser": "7.0.2",
|
48
48
|
"assert": "2.1.0",
|
49
49
|
"babel-loader": "9.1.3",
|
50
50
|
"benchmark": "2.1.4",
|
51
51
|
"c8": "9.1.0",
|
52
52
|
"codecov": "3.8.3",
|
53
|
-
"core-js": "3.
|
53
|
+
"core-js": "3.36.0",
|
54
54
|
"del": "6.1.1",
|
55
55
|
"dtslint": "4.2.1",
|
56
56
|
"eslint": "8.56.0",
|
57
57
|
"eslint-config-prettier": "9.1.0",
|
58
58
|
"eslint-config-standard": "17.1.0",
|
59
59
|
"eslint-plugin-import": "2.29.1",
|
60
|
-
"eslint-plugin-mocha": "10.
|
60
|
+
"eslint-plugin-mocha": "10.3.0",
|
61
61
|
"eslint-plugin-n": "16.6.2",
|
62
62
|
"eslint-plugin-prettier": "5.1.3",
|
63
63
|
"eslint-plugin-promise": "6.1.1",
|
@@ -76,7 +76,7 @@
|
|
76
76
|
"karma-mocha-reporter": "2.2.5",
|
77
77
|
"karma-webpack": "5.0.1",
|
78
78
|
"mkdirp": "3.0.1",
|
79
|
-
"mocha": "10.
|
79
|
+
"mocha": "10.3.0",
|
80
80
|
"mocha-junit-reporter": "2.2.1",
|
81
81
|
"ndarray": "1.0.19",
|
82
82
|
"ndarray-determinant": "1.0.0",
|
@@ -90,7 +90,7 @@
|
|
90
90
|
"sylvester": "0.0.21",
|
91
91
|
"ts-node": "10.9.2",
|
92
92
|
"typescript": "5.3.3",
|
93
|
-
"webpack": "5.90.
|
93
|
+
"webpack": "5.90.3",
|
94
94
|
"zeros": "1.0.0"
|
95
95
|
},
|
96
96
|
"type": "module",
|
package/types/index.d.ts
CHANGED
@@ -2760,22 +2760,22 @@ export interface MathJsInstance extends MathJsFactory {
|
|
2760
2760
|
* @param args Multiple scalar values
|
2761
2761
|
* @returns The mode of all values
|
2762
2762
|
*/
|
2763
|
-
mode<T extends MathScalarType>(...args: T[]): T
|
2763
|
+
mode<T extends MathScalarType>(...args: T[]): T[]
|
2764
2764
|
/**
|
2765
2765
|
* @param args Multiple scalar values
|
2766
2766
|
* @returns The mode of all values
|
2767
2767
|
*/
|
2768
|
-
mode(...args: MathScalarType[]): MathScalarType
|
2768
|
+
mode(...args: MathScalarType[]): MathScalarType[]
|
2769
2769
|
/**
|
2770
2770
|
* @param A A single matrix
|
2771
|
-
* @returns The
|
2771
|
+
* @returns The mode value
|
2772
2772
|
*/
|
2773
|
-
mode<T extends MathScalarType>(A: T[] | T[][]): T
|
2773
|
+
mode<T extends MathScalarType>(A: T[] | T[][]): T[]
|
2774
2774
|
/**
|
2775
2775
|
* @param A A single matrix
|
2776
2776
|
* @returns The mode of all values
|
2777
2777
|
*/
|
2778
|
-
mode(A: MathCollection): MathScalarType
|
2778
|
+
mode(A: MathCollection): MathScalarType[]
|
2779
2779
|
|
2780
2780
|
/**
|
2781
2781
|
* Compute the product of a matrix or a list with values. In case of a
|