@danielsimonjr/mathts-core 0.13.1 → 0.14.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/dist/{chunk-7BUNGMQB.js → chunk-VPK5YTKG.js} +56 -33
- package/dist/index.js +2 -2
- package/dist/internal.js +23 -14
- package/package.json +59 -59
|
@@ -19,7 +19,15 @@ var Complex = class _Complex {
|
|
|
19
19
|
* @param theta - angle in radians
|
|
20
20
|
*/
|
|
21
21
|
static fromPolar(r, theta) {
|
|
22
|
-
|
|
22
|
+
const cosT = Math.cos(theta);
|
|
23
|
+
const sinT = Math.sin(theta);
|
|
24
|
+
let re = r * cosT;
|
|
25
|
+
let im = r * sinT;
|
|
26
|
+
if (!Number.isFinite(r) && !Number.isNaN(r)) {
|
|
27
|
+
if (cosT === 0) re = cosT;
|
|
28
|
+
if (sinT === 0) im = sinT;
|
|
29
|
+
}
|
|
30
|
+
return new _Complex(re, im);
|
|
23
31
|
}
|
|
24
32
|
/**
|
|
25
33
|
* Create a Complex from a real number
|
|
@@ -914,9 +922,7 @@ function toPrecision(value, precision, options) {
|
|
|
914
922
|
if (precision && c.length < precision) {
|
|
915
923
|
c = c.concat(zeros(precision - c.length));
|
|
916
924
|
}
|
|
917
|
-
c = c.concat(
|
|
918
|
-
zeros(e - c.length + 1 + (precision && c.length < precision ? precision - c.length : 0))
|
|
919
|
-
);
|
|
925
|
+
c = c.concat(zeros(e - c.length + 1));
|
|
920
926
|
c = zeros(-e).concat(c);
|
|
921
927
|
const dot = e > 0 ? e : 0;
|
|
922
928
|
if (dot < c.length - 1) {
|
|
@@ -4461,83 +4467,87 @@ var createUnitClass = /* @__PURE__ */ factory(
|
|
|
4461
4467
|
"LUMINOUS_INTENSITY",
|
|
4462
4468
|
"AMOUNT_OF_SUBSTANCE",
|
|
4463
4469
|
"ANGLE",
|
|
4464
|
-
"BIT"
|
|
4470
|
+
"BIT",
|
|
4471
|
+
"SOLID_ANGLE"
|
|
4465
4472
|
];
|
|
4466
4473
|
const BASE_UNITS = {
|
|
4467
4474
|
NONE: {
|
|
4468
|
-
dimensions: [0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
4475
|
+
dimensions: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
4469
4476
|
},
|
|
4470
4477
|
MASS: {
|
|
4471
|
-
dimensions: [1, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
4478
|
+
dimensions: [1, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
4472
4479
|
},
|
|
4473
4480
|
LENGTH: {
|
|
4474
|
-
dimensions: [0, 1, 0, 0, 0, 0, 0, 0, 0]
|
|
4481
|
+
dimensions: [0, 1, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
4475
4482
|
},
|
|
4476
4483
|
TIME: {
|
|
4477
|
-
dimensions: [0, 0, 1, 0, 0, 0, 0, 0, 0]
|
|
4484
|
+
dimensions: [0, 0, 1, 0, 0, 0, 0, 0, 0, 0]
|
|
4478
4485
|
},
|
|
4479
4486
|
CURRENT: {
|
|
4480
|
-
dimensions: [0, 0, 0, 1, 0, 0, 0, 0, 0]
|
|
4487
|
+
dimensions: [0, 0, 0, 1, 0, 0, 0, 0, 0, 0]
|
|
4481
4488
|
},
|
|
4482
4489
|
TEMPERATURE: {
|
|
4483
|
-
dimensions: [0, 0, 0, 0, 1, 0, 0, 0, 0]
|
|
4490
|
+
dimensions: [0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
|
|
4484
4491
|
},
|
|
4485
4492
|
LUMINOUS_INTENSITY: {
|
|
4486
|
-
dimensions: [0, 0, 0, 0, 0, 1, 0, 0, 0]
|
|
4493
|
+
dimensions: [0, 0, 0, 0, 0, 1, 0, 0, 0, 0]
|
|
4487
4494
|
},
|
|
4488
4495
|
AMOUNT_OF_SUBSTANCE: {
|
|
4489
|
-
dimensions: [0, 0, 0, 0, 0, 0, 1, 0, 0]
|
|
4496
|
+
dimensions: [0, 0, 0, 0, 0, 0, 1, 0, 0, 0]
|
|
4490
4497
|
},
|
|
4491
4498
|
FORCE: {
|
|
4492
|
-
dimensions: [1, 1, -2, 0, 0, 0, 0, 0, 0]
|
|
4499
|
+
dimensions: [1, 1, -2, 0, 0, 0, 0, 0, 0, 0]
|
|
4493
4500
|
},
|
|
4494
4501
|
SURFACE: {
|
|
4495
|
-
dimensions: [0, 2, 0, 0, 0, 0, 0, 0, 0]
|
|
4502
|
+
dimensions: [0, 2, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
4496
4503
|
},
|
|
4497
4504
|
VOLUME: {
|
|
4498
|
-
dimensions: [0, 3, 0, 0, 0, 0, 0, 0, 0]
|
|
4505
|
+
dimensions: [0, 3, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
4499
4506
|
},
|
|
4500
4507
|
ENERGY: {
|
|
4501
|
-
dimensions: [1, 2, -2, 0, 0, 0, 0, 0, 0]
|
|
4508
|
+
dimensions: [1, 2, -2, 0, 0, 0, 0, 0, 0, 0]
|
|
4502
4509
|
},
|
|
4503
4510
|
POWER: {
|
|
4504
|
-
dimensions: [1, 2, -3, 0, 0, 0, 0, 0, 0]
|
|
4511
|
+
dimensions: [1, 2, -3, 0, 0, 0, 0, 0, 0, 0]
|
|
4505
4512
|
},
|
|
4506
4513
|
PRESSURE: {
|
|
4507
|
-
dimensions: [1, -1, -2, 0, 0, 0, 0, 0, 0]
|
|
4514
|
+
dimensions: [1, -1, -2, 0, 0, 0, 0, 0, 0, 0]
|
|
4508
4515
|
},
|
|
4509
4516
|
ELECTRIC_CHARGE: {
|
|
4510
|
-
dimensions: [0, 0, 1, 1, 0, 0, 0, 0, 0]
|
|
4517
|
+
dimensions: [0, 0, 1, 1, 0, 0, 0, 0, 0, 0]
|
|
4511
4518
|
},
|
|
4512
4519
|
ELECTRIC_CAPACITANCE: {
|
|
4513
|
-
dimensions: [-1, -2, 4, 2, 0, 0, 0, 0, 0]
|
|
4520
|
+
dimensions: [-1, -2, 4, 2, 0, 0, 0, 0, 0, 0]
|
|
4514
4521
|
},
|
|
4515
4522
|
ELECTRIC_POTENTIAL: {
|
|
4516
|
-
dimensions: [1, 2, -3, -1, 0, 0, 0, 0, 0]
|
|
4523
|
+
dimensions: [1, 2, -3, -1, 0, 0, 0, 0, 0, 0]
|
|
4517
4524
|
},
|
|
4518
4525
|
ELECTRIC_RESISTANCE: {
|
|
4519
|
-
dimensions: [1, 2, -3, -2, 0, 0, 0, 0, 0]
|
|
4526
|
+
dimensions: [1, 2, -3, -2, 0, 0, 0, 0, 0, 0]
|
|
4520
4527
|
},
|
|
4521
4528
|
ELECTRIC_INDUCTANCE: {
|
|
4522
|
-
dimensions: [1, 2, -2, -2, 0, 0, 0, 0, 0]
|
|
4529
|
+
dimensions: [1, 2, -2, -2, 0, 0, 0, 0, 0, 0]
|
|
4523
4530
|
},
|
|
4524
4531
|
ELECTRIC_CONDUCTANCE: {
|
|
4525
|
-
dimensions: [-1, -2, 3, 2, 0, 0, 0, 0, 0]
|
|
4532
|
+
dimensions: [-1, -2, 3, 2, 0, 0, 0, 0, 0, 0]
|
|
4526
4533
|
},
|
|
4527
4534
|
MAGNETIC_FLUX: {
|
|
4528
|
-
dimensions: [1, 2, -2, -1, 0, 0, 0, 0, 0]
|
|
4535
|
+
dimensions: [1, 2, -2, -1, 0, 0, 0, 0, 0, 0]
|
|
4529
4536
|
},
|
|
4530
4537
|
MAGNETIC_FLUX_DENSITY: {
|
|
4531
|
-
dimensions: [1, 0, -2, -1, 0, 0, 0, 0, 0]
|
|
4538
|
+
dimensions: [1, 0, -2, -1, 0, 0, 0, 0, 0, 0]
|
|
4532
4539
|
},
|
|
4533
4540
|
FREQUENCY: {
|
|
4534
|
-
dimensions: [0, 0, -1, 0, 0, 0, 0, 0, 0]
|
|
4541
|
+
dimensions: [0, 0, -1, 0, 0, 0, 0, 0, 0, 0]
|
|
4535
4542
|
},
|
|
4536
4543
|
ANGLE: {
|
|
4537
|
-
dimensions: [0, 0, 0, 0, 0, 0, 0, 1, 0]
|
|
4544
|
+
dimensions: [0, 0, 0, 0, 0, 0, 0, 1, 0, 0]
|
|
4538
4545
|
},
|
|
4539
4546
|
BIT: {
|
|
4540
|
-
dimensions: [0, 0, 0, 0, 0, 0, 0, 0, 1]
|
|
4547
|
+
dimensions: [0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
|
|
4548
|
+
},
|
|
4549
|
+
SOLID_ANGLE: {
|
|
4550
|
+
dimensions: [0, 0, 0, 0, 0, 0, 0, 0, 0, 1]
|
|
4541
4551
|
}
|
|
4542
4552
|
};
|
|
4543
4553
|
for (const key in BASE_UNITS) {
|
|
@@ -5452,9 +5462,21 @@ var createUnitClass = /* @__PURE__ */ factory(
|
|
|
5452
5462
|
value: 1,
|
|
5453
5463
|
offset: 0
|
|
5454
5464
|
},
|
|
5455
|
-
//
|
|
5456
|
-
|
|
5457
|
-
|
|
5465
|
+
// Solid angle
|
|
5466
|
+
sr: {
|
|
5467
|
+
name: "sr",
|
|
5468
|
+
base: BASE_UNITS.SOLID_ANGLE,
|
|
5469
|
+
prefixes: PREFIXES.NONE,
|
|
5470
|
+
value: 1,
|
|
5471
|
+
offset: 0
|
|
5472
|
+
},
|
|
5473
|
+
steradian: {
|
|
5474
|
+
name: "steradian",
|
|
5475
|
+
base: BASE_UNITS.SOLID_ANGLE,
|
|
5476
|
+
prefixes: PREFIXES.LONG,
|
|
5477
|
+
value: 1,
|
|
5478
|
+
offset: 0
|
|
5479
|
+
},
|
|
5458
5480
|
// Force
|
|
5459
5481
|
N: {
|
|
5460
5482
|
name: "N",
|
|
@@ -5964,6 +5986,7 @@ var createUnitClass = /* @__PURE__ */ factory(
|
|
|
5964
5986
|
LUMINOUS_INTENSITY: { unit: UNITS.cd, prefix: PREFIXES.SHORT[""] },
|
|
5965
5987
|
AMOUNT_OF_SUBSTANCE: { unit: UNITS.mol, prefix: PREFIXES.SHORT[""] },
|
|
5966
5988
|
ANGLE: { unit: UNITS.rad, prefix: PREFIXES.SHORT[""] },
|
|
5989
|
+
SOLID_ANGLE: { unit: UNITS.sr, prefix: PREFIXES.NONE[""] },
|
|
5967
5990
|
BIT: { unit: UNITS.bits, prefix: PREFIXES.SHORT[""] },
|
|
5968
5991
|
// Derived units
|
|
5969
5992
|
FORCE: { unit: UNITS.N, prefix: PREFIXES.SHORT[""] },
|
package/dist/index.js
CHANGED
|
@@ -44,7 +44,7 @@ import {
|
|
|
44
44
|
round,
|
|
45
45
|
sign,
|
|
46
46
|
subtractScalar
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-VPK5YTKG.js";
|
|
48
48
|
|
|
49
49
|
// src/types/matrix/Range.ts
|
|
50
50
|
var name = "Range";
|
|
@@ -1321,7 +1321,7 @@ function neumaierCumsum(xs, out) {
|
|
|
1321
1321
|
}
|
|
1322
1322
|
|
|
1323
1323
|
// src/index.ts
|
|
1324
|
-
var VERSION = "0.
|
|
1324
|
+
var VERSION = "0.14.1";
|
|
1325
1325
|
export {
|
|
1326
1326
|
ALL_UNITS,
|
|
1327
1327
|
BASE_UNITS,
|
package/dist/internal.js
CHANGED
|
@@ -78,7 +78,7 @@ import {
|
|
|
78
78
|
typeOf,
|
|
79
79
|
unitDependencies,
|
|
80
80
|
warnOnce
|
|
81
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-VPK5YTKG.js";
|
|
82
82
|
|
|
83
83
|
// src/error/DimensionError.ts
|
|
84
84
|
var DimensionError = class _DimensionError extends RangeError {
|
|
@@ -226,13 +226,31 @@ function format2(value, options) {
|
|
|
226
226
|
return formatBigNumberToBase(v, 16, wordSize);
|
|
227
227
|
case "auto": {
|
|
228
228
|
const optionsObj = options;
|
|
229
|
-
const lowerExp =
|
|
230
|
-
const upperExp =
|
|
229
|
+
const lowerExp = isNumber(optionsObj?.lowerExp) || isBigNumber(optionsObj?.lowerExp) ? optionsObj?.lowerExp : -3;
|
|
230
|
+
const upperExp = isNumber(optionsObj?.upperExp) || isBigNumber(optionsObj?.upperExp) ? optionsObj?.upperExp : 5;
|
|
231
231
|
if (v.isZero()) return "0";
|
|
232
232
|
let str;
|
|
233
233
|
const rounded = v.toSignificantDigits(precision);
|
|
234
234
|
const exp = rounded.e;
|
|
235
|
-
|
|
235
|
+
let condition = false;
|
|
236
|
+
if (isBigNumber(lowerExp) && isBigNumber(upperExp)) {
|
|
237
|
+
const lowerExpBn = lowerExp;
|
|
238
|
+
const upperExpBn = upperExp;
|
|
239
|
+
condition = !lowerExpBn.greaterThan(exp) && upperExpBn.greaterThan(exp);
|
|
240
|
+
} else if (isBigNumber(lowerExp)) {
|
|
241
|
+
const lowerExpBn = lowerExp;
|
|
242
|
+
const upperExpNum = upperExp;
|
|
243
|
+
condition = !lowerExpBn.greaterThan(exp) && exp < upperExpNum;
|
|
244
|
+
} else if (isBigNumber(upperExp)) {
|
|
245
|
+
const upperExpBn = upperExp;
|
|
246
|
+
const lowerExpNum = lowerExp;
|
|
247
|
+
condition = exp >= lowerExpNum && upperExpBn.greaterThan(exp);
|
|
248
|
+
} else {
|
|
249
|
+
const lowerExpNum = lowerExp;
|
|
250
|
+
const upperExpNum = upperExp;
|
|
251
|
+
condition = exp >= lowerExpNum && exp < upperExpNum;
|
|
252
|
+
}
|
|
253
|
+
if (condition) {
|
|
236
254
|
str = rounded.toFixed();
|
|
237
255
|
} else {
|
|
238
256
|
str = toExponential2(v, precision);
|
|
@@ -271,15 +289,6 @@ function toExponential2(value, precision) {
|
|
|
271
289
|
function toFixed2(value, precision) {
|
|
272
290
|
return value.toFixed(precision);
|
|
273
291
|
}
|
|
274
|
-
function _toNumberOrDefault(value, defaultValue) {
|
|
275
|
-
if (isNumber(value)) {
|
|
276
|
-
return value;
|
|
277
|
-
} else if (isBigNumber(value)) {
|
|
278
|
-
return value.toNumber();
|
|
279
|
-
} else {
|
|
280
|
-
return defaultValue;
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
292
|
|
|
284
293
|
// src/string.ts
|
|
285
294
|
function format3(value, options) {
|
|
@@ -1024,7 +1033,7 @@ function deepMap2(array, callback, skipZeros) {
|
|
|
1024
1033
|
function reduce(mat, dim, callback) {
|
|
1025
1034
|
const size = Array.isArray(mat) ? arraySize(mat) : mat.size();
|
|
1026
1035
|
if (dim < 0 || dim >= size.length) {
|
|
1027
|
-
throw new
|
|
1036
|
+
throw new DimensionError(dim, size.length, "<");
|
|
1028
1037
|
}
|
|
1029
1038
|
if (isMatrix(mat)) {
|
|
1030
1039
|
const reduced = _reduce(mat.valueOf(), dim, callback);
|
package/package.json
CHANGED
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@danielsimonjr/mathts-core",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Core types, utilities, and configuration for MathTS",
|
|
5
|
-
"author": "Daniel Simon Jr.",
|
|
6
|
-
"license": "MIT",
|
|
7
|
-
"type": "module",
|
|
8
|
-
"main": "./dist/index.js",
|
|
9
|
-
"module": "./dist/index.js",
|
|
10
|
-
"types": "./dist/index.d.ts",
|
|
11
|
-
"exports": {
|
|
12
|
-
".": {
|
|
13
|
-
"import": "./dist/index.js",
|
|
14
|
-
"types": "./dist/index.d.ts"
|
|
15
|
-
},
|
|
16
|
-
"./internal": {
|
|
17
|
-
"import": "./dist/internal.js",
|
|
18
|
-
"types": "./dist/internal.d.ts"
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
"files": [
|
|
22
|
-
"dist",
|
|
23
|
-
"README.md"
|
|
24
|
-
],
|
|
25
|
-
"scripts": {
|
|
26
|
-
"build": "tsup",
|
|
27
|
-
"dev": "tsup --watch",
|
|
28
|
-
"test": "vitest run",
|
|
29
|
-
"test:watch": "vitest",
|
|
30
|
-
"test:coverage": "vitest run --coverage",
|
|
31
|
-
"typecheck": "tsc --noEmit",
|
|
32
|
-
"lint": "eslint src --ext .ts",
|
|
33
|
-
"lint:fix": "eslint src --ext .ts --fix",
|
|
34
|
-
"clean": "rm -rf dist",
|
|
35
|
-
"build:prod": "tsup --minify --treeshake"
|
|
36
|
-
},
|
|
37
|
-
"dependencies": {
|
|
38
|
-
"typed-function": "github:danielsimonjr/typed-function"
|
|
39
|
-
},
|
|
40
|
-
"devDependencies": {
|
|
41
|
-
"@types/node": "^25.5.2",
|
|
42
|
-
"tsup": "^8.0.0",
|
|
43
|
-
"typescript": "^5.3.0",
|
|
44
|
-
"vitest": "^4.1.
|
|
45
|
-
},
|
|
46
|
-
"publishConfig": {
|
|
47
|
-
"access": "public"
|
|
48
|
-
},
|
|
49
|
-
"repository": {
|
|
50
|
-
"type": "git",
|
|
51
|
-
"url": "https://github.com/danielsimonjr/
|
|
52
|
-
"directory": "core"
|
|
53
|
-
},
|
|
54
|
-
"keywords": [
|
|
55
|
-
"math",
|
|
56
|
-
"typescript",
|
|
57
|
-
"core"
|
|
58
|
-
]
|
|
59
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@danielsimonjr/mathts-core",
|
|
3
|
+
"version": "0.14.1",
|
|
4
|
+
"description": "Core types, utilities, and configuration for MathTS",
|
|
5
|
+
"author": "Daniel Simon Jr.",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"main": "./dist/index.js",
|
|
9
|
+
"module": "./dist/index.js",
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"exports": {
|
|
12
|
+
".": {
|
|
13
|
+
"import": "./dist/index.js",
|
|
14
|
+
"types": "./dist/index.d.ts"
|
|
15
|
+
},
|
|
16
|
+
"./internal": {
|
|
17
|
+
"import": "./dist/internal.js",
|
|
18
|
+
"types": "./dist/internal.d.ts"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"files": [
|
|
22
|
+
"dist",
|
|
23
|
+
"README.md"
|
|
24
|
+
],
|
|
25
|
+
"scripts": {
|
|
26
|
+
"build": "tsup",
|
|
27
|
+
"dev": "tsup --watch",
|
|
28
|
+
"test": "vitest run",
|
|
29
|
+
"test:watch": "vitest",
|
|
30
|
+
"test:coverage": "vitest run --coverage",
|
|
31
|
+
"typecheck": "tsc --noEmit",
|
|
32
|
+
"lint": "eslint src --ext .ts",
|
|
33
|
+
"lint:fix": "eslint src --ext .ts --fix",
|
|
34
|
+
"clean": "rm -rf dist",
|
|
35
|
+
"build:prod": "tsup --minify --treeshake"
|
|
36
|
+
},
|
|
37
|
+
"dependencies": {
|
|
38
|
+
"typed-function": "github:danielsimonjr/typed-function"
|
|
39
|
+
},
|
|
40
|
+
"devDependencies": {
|
|
41
|
+
"@types/node": "^25.5.2",
|
|
42
|
+
"tsup": "^8.0.0",
|
|
43
|
+
"typescript": "^5.3.0",
|
|
44
|
+
"vitest": "^4.1.10"
|
|
45
|
+
},
|
|
46
|
+
"publishConfig": {
|
|
47
|
+
"access": "public"
|
|
48
|
+
},
|
|
49
|
+
"repository": {
|
|
50
|
+
"type": "git",
|
|
51
|
+
"url": "git+https://github.com/danielsimonjr/MathTS.git",
|
|
52
|
+
"directory": "core"
|
|
53
|
+
},
|
|
54
|
+
"keywords": [
|
|
55
|
+
"math",
|
|
56
|
+
"typescript",
|
|
57
|
+
"core"
|
|
58
|
+
]
|
|
59
|
+
}
|