mathjs 14.6.0 → 14.8.0
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 +17 -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/core/function/config.js +0 -1
- package/lib/cjs/entry/dependenciesAny/dependenciesNullish.generated.js +25 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesNullishTransform.generated.js +25 -0
- package/lib/cjs/entry/dependenciesAny.generated.js +14 -0
- package/lib/cjs/entry/impureFunctionsAny.generated.js +8 -0
- package/lib/cjs/entry/pureFunctionsAny.generated.js +10 -3
- package/lib/cjs/expression/Parser.js +35 -1
- package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +2 -0
- package/lib/cjs/expression/embeddedDocs/function/logical/nullish.js +14 -0
- package/lib/cjs/expression/node/FunctionAssignmentNode.js +3 -1
- package/lib/cjs/expression/operators.js +7 -0
- package/lib/cjs/expression/parse.js +18 -2
- package/lib/cjs/expression/transform/nullish.transform.js +43 -0
- package/lib/cjs/factoriesAny.js +14 -0
- package/lib/cjs/function/logical/nullish.js +87 -0
- package/lib/cjs/function/matrix/range.js +7 -5
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/type/matrix/DenseMatrix.js +21 -17
- package/lib/cjs/type/string.js +4 -4
- package/lib/cjs/version.js +1 -1
- package/lib/esm/core/function/config.js +0 -1
- package/lib/esm/entry/dependenciesAny/dependenciesNullish.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny/dependenciesNullishTransform.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny.generated.js +2 -0
- package/lib/esm/entry/impureFunctionsAny.generated.js +10 -2
- package/lib/esm/entry/pureFunctionsAny.generated.js +8 -1
- package/lib/esm/expression/Parser.js +35 -1
- package/lib/esm/expression/embeddedDocs/embeddedDocs.js +2 -0
- package/lib/esm/expression/embeddedDocs/function/logical/nullish.js +8 -0
- package/lib/esm/expression/node/FunctionAssignmentNode.js +3 -1
- package/lib/esm/expression/operators.js +7 -0
- package/lib/esm/expression/parse.js +18 -2
- package/lib/esm/expression/transform/nullish.transform.js +37 -0
- package/lib/esm/factoriesAny.js +2 -0
- package/lib/esm/function/logical/nullish.js +81 -0
- package/lib/esm/function/matrix/range.js +7 -5
- package/lib/esm/type/matrix/DenseMatrix.js +21 -17
- package/lib/esm/type/string.js +4 -4
- package/lib/esm/version.js +1 -1
- package/package.json +15 -16
- package/types/index.d.ts +19 -1
- package/types/tslint.json +0 -6
@@ -225,6 +225,8 @@ export { nthRootDependencies } from './dependenciesAny/dependenciesNthRoot.gener
|
|
225
225
|
export { nthRootsDependencies } from './dependenciesAny/dependenciesNthRoots.generated.js';
|
226
226
|
export { nuclearMagnetonDependencies } from './dependenciesAny/dependenciesNuclearMagneton.generated.js';
|
227
227
|
export { nullDependencies } from './dependenciesAny/dependenciesNull.generated.js';
|
228
|
+
export { nullishDependencies } from './dependenciesAny/dependenciesNullish.generated.js';
|
229
|
+
export { nullishTransformDependencies } from './dependenciesAny/dependenciesNullishTransform.generated.js';
|
228
230
|
export { numberDependencies } from './dependenciesAny/dependenciesNumber.generated.js';
|
229
231
|
export { numericDependencies } from './dependenciesAny/dependenciesNumeric.generated.js';
|
230
232
|
export { ObjectNodeDependencies } from './dependenciesAny/dependenciesObjectNode.generated.js';
|
@@ -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, createAccessorNode, createAssignmentNode, createIndexNode, createSymbolNode, createFunctionNode, createParse, createResolve, createSimplifyConstant, createCompile, createSimplifyCore, createEvaluate, createHelpClass, createParserClass, createSimplify, createSymbolicEqual, createLeafCount, createParser, createRationalize, createDerivative, createHelp, createMapSlicesTransform, createFilterTransform, createForEachTransform, createMapTransform, createOrTransform, createAndTransform, createConcatTransform, createIndexTransform, createPrintTransform, createSumTransform, createBitAndTransform, createMinTransform, createSubsetTransform, createBitOrTransform, createCumSumTransform, createDiffTransform, createMaxTransform, 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, createAccessorNode, createAssignmentNode, createIndexNode, createSymbolNode, createFunctionNode, createParse, createResolve, createSimplifyConstant, createCompile, createSimplifyCore, createEvaluate, createHelpClass, createParserClass, createSimplify, createSymbolicEqual, createLeafCount, createParser, createRationalize, createDerivative, createHelp, createMapSlicesTransform, createFilterTransform, createForEachTransform, createMapTransform, createOrTransform, createAndTransform, createConcatTransform, createIndexTransform, createPrintTransform, createSumTransform, createBitAndTransform, createMinTransform, createNullishTransform, createSubsetTransform, createBitOrTransform, createCumSumTransform, createDiffTransform, createMaxTransform, 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, weakMixingAngle, abs, acos, acot, acsc, addScalar, arg, asech, asinh, atan, atanh, bigint, bitNot, boolean, clone, combinations, complex, conj, cos, cot, csc, cube, equalScalar, erf, exp, expm1, filter, flatten, 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, toBest, typeOf, acosh, acsch, asec, bignumber, combinationsWithRep, cosh, csch, isNaN, isPrime, mapSlices, matrix, matrixFromFunction, ones, randomInt, reshape, sech, sinh, sparse, sqrt, squeeze, tanh, transpose, xgcd, zeros, acoth, asin, bin, concat, coth, ctranspose, diag, dotMultiply, equal, fraction, identity, isNumeric, kron, largerEq, leftShift, mode, nthRoot, numeric, prod, resize, rightArithShift, round, size, smaller, to, unaryMinus, unequal, xor, add, atan2, bitAnd, bitOr, bitXor, cbrt, compare, compareText, count, deepEqual, divideScalar, dotDivide, equalText, floor, gcd, hasNumericValue, hypot, ImmutableDenseMatrix, Index, larger, log, lsolve, matrixFromColumns, max, min, mod, nthRoots, or, partitionSelect, qr, rightLogShift, smallerEq, subset, subtract, trace, usolve, catalan, compareNatural, composition, diff, distance, dot, FibonacciHeap, index, invmod, lcm, log1p, lsolveAll, matrixFromRows, multiply, range, row, setCartesian, setDistinct, setIsSubset, setPowerset, slu, sort, unaryPlus, usolveAll, zpk2tf, and, ceil, column, cross, det, fix, inv, pinv, pow, setDifference, setMultiplicity, setSymDifference, Spa, sqrtm, sum, Unit, vacuumImpedance, wienDisplacement, atomicMass, bohrMagneton, boltzmann, conductanceQuantum, coulomb, createUnit, deuteronMass, dotPow, electricConstant, elementaryCharge, expm, faraday, fft, gamma, gravitationConstant, hartreeEnergy, ifft, inverseConductanceQuantum, klitzing, loschmidt, magneticConstant, molarMass, molarPlanckConstant, neutronMass, nuclearMagneton, planckCharge, planckLength, planckTemperature, protonMass, quantumOfCirculation, reducedPlanckConstant, rydberg, secondRadiation, setSize, speedOfLight, stefanBoltzmann, thomsonCrossSection, avogadro, bohrRadius, coulombConstant, divide, electronMass, factorial, firstRadiation, gravity, intersect, lup, magneticFluxQuantum, molarMassC12, multinomial, permutations, planckMass, polynomialRoot, setIntersect, solveODE, stirlingS2, unit, bellNumbers, cumsum, eigs, fermiCoupling, gasConstant, kldivergence, lusolve, mean, molarVolume, planckConstant, quantileSeq, setUnion, variance, classicalElectronRadius, median, corr, freqz, mad, std, zeta, norm, rotationMatrix, planckTime, schur, rotate, sylvester, lyap } from './pureFunctionsAny.generated.js';
|
10
|
+
sackurTetrode, tau, _true, version, DenseMatrix, efimovFactor, LN2, pi, replacer, SQRT2, typed, weakMixingAngle, abs, acos, acot, acsc, addScalar, arg, asech, asinh, atan, atanh, bigint, bitNot, boolean, clone, combinations, complex, conj, cos, cot, csc, cube, equalScalar, erf, exp, expm1, filter, flatten, 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, toBest, typeOf, acosh, acsch, asec, bignumber, combinationsWithRep, cosh, csch, isNaN, isPrime, mapSlices, matrix, matrixFromFunction, ones, randomInt, reshape, sech, sinh, sparse, sqrt, squeeze, tanh, transpose, xgcd, zeros, acoth, asin, bin, concat, coth, ctranspose, diag, dotMultiply, equal, fraction, identity, isNumeric, kron, largerEq, leftShift, mode, nthRoot, numeric, prod, resize, rightArithShift, round, size, smaller, to, unaryMinus, unequal, xor, add, atan2, bitAnd, bitOr, bitXor, cbrt, compare, compareText, count, deepEqual, divideScalar, dotDivide, equalText, floor, gcd, hasNumericValue, hypot, ImmutableDenseMatrix, Index, larger, log, lsolve, matrixFromColumns, max, min, mod, nthRoots, nullish, or, partitionSelect, qr, rightLogShift, smallerEq, subset, subtract, trace, usolve, catalan, compareNatural, composition, diff, distance, dot, FibonacciHeap, index, invmod, lcm, log1p, lsolveAll, matrixFromRows, multiply, range, row, setCartesian, setDistinct, setIsSubset, setPowerset, slu, sort, unaryPlus, usolveAll, zpk2tf, and, ceil, column, cross, det, fix, inv, pinv, pow, setDifference, setMultiplicity, setSymDifference, Spa, sqrtm, sum, Unit, vacuumImpedance, wienDisplacement, atomicMass, bohrMagneton, boltzmann, conductanceQuantum, coulomb, createUnit, deuteronMass, dotPow, electricConstant, elementaryCharge, expm, faraday, fft, gamma, gravitationConstant, hartreeEnergy, ifft, inverseConductanceQuantum, klitzing, loschmidt, magneticConstant, molarMass, molarPlanckConstant, neutronMass, nuclearMagneton, planckCharge, planckLength, planckTemperature, protonMass, quantumOfCirculation, reducedPlanckConstant, rydberg, secondRadiation, setSize, speedOfLight, stefanBoltzmann, thomsonCrossSection, avogadro, bohrRadius, coulombConstant, divide, electronMass, factorial, firstRadiation, gravity, intersect, lup, magneticFluxQuantum, molarMassC12, multinomial, permutations, planckMass, polynomialRoot, setIntersect, solveODE, stirlingS2, unit, bellNumbers, cumsum, eigs, fermiCoupling, gasConstant, kldivergence, lusolve, mean, molarVolume, planckConstant, quantileSeq, setUnion, 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!
|
@@ -402,6 +402,7 @@ _extends(math, {
|
|
402
402
|
min,
|
403
403
|
mod,
|
404
404
|
nthRoots,
|
405
|
+
nullish,
|
405
406
|
or,
|
406
407
|
partitionSelect,
|
407
408
|
qr,
|
@@ -617,6 +618,13 @@ _extends(mathWithTransform, math, {
|
|
617
618
|
smaller,
|
618
619
|
typed
|
619
620
|
}),
|
621
|
+
nullish: createNullishTransform({
|
622
|
+
deepEqual,
|
623
|
+
flatten,
|
624
|
+
matrix,
|
625
|
+
size,
|
626
|
+
typed
|
627
|
+
}),
|
620
628
|
subset: createSubsetTransform({
|
621
629
|
add,
|
622
630
|
matrix,
|
@@ -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, createWeakMixingAngle, createAbs, createAcos, createAcot, createAcsc, createAddScalar, createArg, createAsech, createAsinh, createAtan, createAtanh, createBigint, createBitNot, createBoolean, createClone, createCombinations, createComplex, createConj, createCos, createCot, createCsc, createCube, createEqualScalar, createErf, createExp, createExpm1, createFilter, createFlatten, 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, createToBest, createTypeOf, createAcosh, createAcsch, createAsec, createBignumber, createCombinationsWithRep, createCosh, createCsch, createIsNaN, createIsPrime, createMapSlices, createMatrix, createMatrixFromFunction, createOnes, createRandomInt, createReshape, createSech, createSinh, createSparse, createSqrt, createSqueeze, createTanh, createTranspose, createXgcd, createZeros, createAcoth, createAsin, createBin, createConcat, createCoth, createCtranspose, createDiag, createDotMultiply, createEqual, createFraction, createIdentity, createIsNumeric, createKron, createLargerEq, createLeftShift, createMode, createNthRoot, createNumeric, createProd, createResize, createRightArithShift, createRound, createSize, createSmaller, createTo, createUnaryMinus, createUnequal, createXor, createAdd, createAtan2, createBitAnd, createBitOr, createBitXor, createCbrt, createCompare, createCompareText, createCount, createDeepEqual, createDivideScalar, createDotDivide, createEqualText, createFloor, createGcd, createHasNumericValue, createHypot, createImmutableDenseMatrixClass, createIndexClass, createLarger, createLog, createLsolve, createMatrixFromColumns, createMax, createMin, createMod, createNthRoots, createOr, createPartitionSelect, createQr, createRightLogShift, createSmallerEq, createSubset, createSubtract, createTrace, createUsolve, createCatalan, createCompareNatural, createComposition, createDiff, createDistance, createDot, createFibonacciHeapClass, createIndex, createInvmod, createLcm, createLog1p, createLsolveAll, createMatrixFromRows, createMultiply, createRange, createRow, createSetCartesian, createSetDistinct, createSetIsSubset, createSetPowerset, createSlu, createSort, createUnaryPlus, createUsolveAll, createZpk2tf, createAnd, createCeil, createColumn, createCross, createDet, createFix, createInv, createPinv, createPow, createSetDifference, createSetMultiplicity, createSetSymDifference, createSpaClass, createSqrtm, createSum, createUnitClass, createVacuumImpedance, createWienDisplacement, createAtomicMass, createBohrMagneton, createBoltzmann, createConductanceQuantum, createCoulomb, createCreateUnit, createDeuteronMass, createDotPow, createElectricConstant, createElementaryCharge, createExpm, createFaraday, createFft, createGamma, createGravitationConstant, createHartreeEnergy, createIfft, createInverseConductanceQuantum, createKlitzing, createLoschmidt, createMagneticConstant, createMolarMass, createMolarPlanckConstant, createNeutronMass, createNuclearMagneton, createPlanckCharge, createPlanckLength, createPlanckTemperature, createProtonMass, createQuantumOfCirculation, createReducedPlanckConstant, createRydberg, createSecondRadiation, createSetSize, createSpeedOfLight, createStefanBoltzmann, createThomsonCrossSection, createAvogadro, createBohrRadius, createCoulombConstant, createDivide, createElectronMass, createFactorial, createFirstRadiation, createGravity, createIntersect, createLup, createMagneticFluxQuantum, createMolarMassC12, createMultinomial, createPermutations, createPlanckMass, createPolynomialRoot, createSetIntersect, createSolveODE, createStirlingS2, createUnitFunction, createBellNumbers, createCumSum, createEigs, createFermiCoupling, createGasConstant, createKldivergence, createLusolve, createMean, createMolarVolume, createPlanckConstant, createQuantileSeq, createSetUnion, createVariance, createClassicalElectronRadius, createMedian, createCorr, createFreqz, createMad, createStd, createZeta, createNorm, createRotationMatrix, createPlanckTime, createSchur, createRotate, createSylvester, createLyap } from '../factoriesAny.js';
|
8
|
+
createSackurTetrode, createTau, createTrue, createVersion, createDenseMatrixClass, createEfimovFactor, createLN2, createPi, createReplacer, createSQRT2, createTyped, createWeakMixingAngle, createAbs, createAcos, createAcot, createAcsc, createAddScalar, createArg, createAsech, createAsinh, createAtan, createAtanh, createBigint, createBitNot, createBoolean, createClone, createCombinations, createComplex, createConj, createCos, createCot, createCsc, createCube, createEqualScalar, createErf, createExp, createExpm1, createFilter, createFlatten, 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, createToBest, createTypeOf, createAcosh, createAcsch, createAsec, createBignumber, createCombinationsWithRep, createCosh, createCsch, createIsNaN, createIsPrime, createMapSlices, createMatrix, createMatrixFromFunction, createOnes, createRandomInt, createReshape, createSech, createSinh, createSparse, createSqrt, createSqueeze, createTanh, createTranspose, createXgcd, createZeros, createAcoth, createAsin, createBin, createConcat, createCoth, createCtranspose, createDiag, createDotMultiply, createEqual, createFraction, createIdentity, createIsNumeric, createKron, createLargerEq, createLeftShift, createMode, createNthRoot, createNumeric, createProd, createResize, createRightArithShift, createRound, createSize, createSmaller, createTo, createUnaryMinus, createUnequal, createXor, createAdd, createAtan2, createBitAnd, createBitOr, createBitXor, createCbrt, createCompare, createCompareText, createCount, createDeepEqual, createDivideScalar, createDotDivide, createEqualText, createFloor, createGcd, createHasNumericValue, createHypot, createImmutableDenseMatrixClass, createIndexClass, createLarger, createLog, createLsolve, createMatrixFromColumns, createMax, createMin, createMod, createNthRoots, createNullish, createOr, createPartitionSelect, createQr, createRightLogShift, createSmallerEq, createSubset, createSubtract, createTrace, createUsolve, createCatalan, createCompareNatural, createComposition, createDiff, createDistance, createDot, createFibonacciHeapClass, createIndex, createInvmod, createLcm, createLog1p, createLsolveAll, createMatrixFromRows, createMultiply, createRange, createRow, createSetCartesian, createSetDistinct, createSetIsSubset, createSetPowerset, createSlu, createSort, createUnaryPlus, createUsolveAll, createZpk2tf, createAnd, createCeil, createColumn, createCross, createDet, createFix, createInv, createPinv, createPow, createSetDifference, createSetMultiplicity, createSetSymDifference, createSpaClass, createSqrtm, createSum, createUnitClass, createVacuumImpedance, createWienDisplacement, createAtomicMass, createBohrMagneton, createBoltzmann, createConductanceQuantum, createCoulomb, createCreateUnit, createDeuteronMass, createDotPow, createElectricConstant, createElementaryCharge, createExpm, createFaraday, createFft, createGamma, createGravitationConstant, createHartreeEnergy, createIfft, createInverseConductanceQuantum, createKlitzing, createLoschmidt, createMagneticConstant, createMolarMass, createMolarPlanckConstant, createNeutronMass, createNuclearMagneton, createPlanckCharge, createPlanckLength, createPlanckTemperature, createProtonMass, createQuantumOfCirculation, createReducedPlanckConstant, createRydberg, createSecondRadiation, createSetSize, createSpeedOfLight, createStefanBoltzmann, createThomsonCrossSection, createAvogadro, createBohrRadius, createCoulombConstant, createDivide, createElectronMass, createFactorial, createFirstRadiation, createGravity, createIntersect, createLup, createMagneticFluxQuantum, createMolarMassC12, createMultinomial, createPermutations, createPlanckMass, createPolynomialRoot, createSetIntersect, createSolveODE, createStirlingS2, createUnitFunction, createBellNumbers, createCumSum, createEigs, createFermiCoupling, createGasConstant, createKldivergence, createLusolve, createMean, createMolarVolume, createPlanckConstant, createQuantileSeq, createSetUnion, 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
|
});
|
@@ -771,6 +771,13 @@ export var nthRoots = /* #__PURE__ */createNthRoots({
|
|
771
771
|
divideScalar,
|
772
772
|
typed
|
773
773
|
});
|
774
|
+
export var nullish = /* #__PURE__ */createNullish({
|
775
|
+
deepEqual,
|
776
|
+
flatten,
|
777
|
+
matrix,
|
778
|
+
size,
|
779
|
+
typed
|
780
|
+
});
|
774
781
|
export var or = /* #__PURE__ */createOr({
|
775
782
|
DenseMatrix,
|
776
783
|
concat,
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { factory } from '../utils/factory.js';
|
2
|
+
import { isFunction } from '../utils/is.js';
|
2
3
|
import { createEmptyMap, toObject } from '../utils/map.js';
|
3
4
|
var name = 'Parser';
|
4
5
|
var dependencies = ['evaluate', 'parse'];
|
@@ -154,7 +155,40 @@ export var createParserClass = /* #__PURE__ */factory(name, dependencies, _ref =
|
|
154
155
|
Parser.prototype.clear = function () {
|
155
156
|
this.scope.clear();
|
156
157
|
};
|
158
|
+
Parser.prototype.toJSON = function () {
|
159
|
+
var json = {
|
160
|
+
mathjs: 'Parser',
|
161
|
+
variables: {},
|
162
|
+
functions: {}
|
163
|
+
};
|
164
|
+
for (var [_name2, value] of this.scope) {
|
165
|
+
if (isFunction(value)) {
|
166
|
+
if (!isExpressionFunction(value)) {
|
167
|
+
throw new Error("Cannot serialize external function ".concat(_name2));
|
168
|
+
}
|
169
|
+
json.functions[_name2] = "".concat(value.syntax, " = ").concat(value.expr);
|
170
|
+
} else {
|
171
|
+
json.variables[_name2] = value;
|
172
|
+
}
|
173
|
+
}
|
174
|
+
return json;
|
175
|
+
};
|
176
|
+
Parser.fromJSON = function (json) {
|
177
|
+
var parser = new Parser();
|
178
|
+
Object.entries(json.variables).forEach(_ref2 => {
|
179
|
+
var [name, value] = _ref2;
|
180
|
+
return parser.set(name, value);
|
181
|
+
});
|
182
|
+
Object.entries(json.functions).forEach(_ref3 => {
|
183
|
+
var [_name, fn] = _ref3;
|
184
|
+
return parser.evaluate(fn);
|
185
|
+
});
|
186
|
+
return parser;
|
187
|
+
};
|
157
188
|
return Parser;
|
158
189
|
}, {
|
159
190
|
isClass: true
|
160
|
-
});
|
191
|
+
});
|
192
|
+
function isExpressionFunction(value) {
|
193
|
+
return typeof value === 'function' && typeof value.syntax === 'string' && typeof value.expr === 'string';
|
194
|
+
}
|
@@ -112,6 +112,7 @@ import { distanceDocs } from './function/geometry/distance.js';
|
|
112
112
|
import { intersectDocs } from './function/geometry/intersect.js';
|
113
113
|
import { andDocs } from './function/logical/and.js';
|
114
114
|
import { notDocs } from './function/logical/not.js';
|
115
|
+
import { nullishDocs } from './function/logical/nullish.js';
|
115
116
|
import { orDocs } from './function/logical/or.js';
|
116
117
|
import { xorDocs } from './function/logical/xor.js';
|
117
118
|
import { mapSlicesDocs } from './function/matrix/mapSlices.js';
|
@@ -581,6 +582,7 @@ export var embeddedDocs = {
|
|
581
582
|
// functions - logical
|
582
583
|
and: andDocs,
|
583
584
|
not: notDocs,
|
585
|
+
nullish: nullishDocs,
|
584
586
|
or: orDocs,
|
585
587
|
xor: xorDocs,
|
586
588
|
// functions - matrix
|
@@ -0,0 +1,8 @@
|
|
1
|
+
export var nullishDocs = {
|
2
|
+
name: 'nullish',
|
3
|
+
category: 'Logical',
|
4
|
+
syntax: ['x ?? y', 'nullish(x, y)'],
|
5
|
+
description: 'Nullish coalescing operator. Returns the right-hand operand when the left-hand operand is null or undefined, and otherwise returns the left-hand operand.',
|
6
|
+
examples: ['null ?? 42', 'undefined ?? 42', '0 ?? 42', 'false ?? 42', 'null ?? undefined ?? 42'],
|
7
|
+
seealso: ['and', 'or', 'not']
|
8
|
+
};
|
@@ -98,7 +98,8 @@ export var createFunctionAssignmentNode = /* #__PURE__ */factory(name, dependenc
|
|
98
98
|
});
|
99
99
|
|
100
100
|
// compile the function expression with the child args
|
101
|
-
var
|
101
|
+
var expr = this.expr;
|
102
|
+
var evalExpr = expr._compile(math, childArgNames);
|
102
103
|
var name = this.name;
|
103
104
|
var params = this.params;
|
104
105
|
var signature = join(this.types, ',');
|
@@ -114,6 +115,7 @@ export var createFunctionAssignmentNode = /* #__PURE__ */factory(name, dependenc
|
|
114
115
|
};
|
115
116
|
var fn = typed(name, signatures);
|
116
117
|
fn.syntax = syntax;
|
118
|
+
fn.expr = expr.toString();
|
117
119
|
scope.set(name, fn);
|
118
120
|
return fn;
|
119
121
|
};
|
@@ -221,6 +221,13 @@ export var properties = [{
|
|
221
221
|
associativity: 'right',
|
222
222
|
associativeWith: []
|
223
223
|
}
|
224
|
+
}, {
|
225
|
+
// nullish coalescing
|
226
|
+
'OperatorNode:nullish': {
|
227
|
+
op: '??',
|
228
|
+
associativity: 'left',
|
229
|
+
associativeWith: []
|
230
|
+
}
|
224
231
|
}, {
|
225
232
|
// factorial
|
226
233
|
'OperatorNode:factorial': {
|
@@ -47,7 +47,7 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, _ref => {
|
|
47
47
|
* node1.compile().evaluate() // 5
|
48
48
|
*
|
49
49
|
* let scope = {a:3, b:4}
|
50
|
-
* const node2 = math.parse('a * b')
|
50
|
+
* const node2 = math.parse('a * b')
|
51
51
|
* node2.evaluate(scope) // 12
|
52
52
|
* const code2 = node2.compile()
|
53
53
|
* code2.evaluate(scope) // 12
|
@@ -129,6 +129,7 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, _ref => {
|
|
129
129
|
'=': true,
|
130
130
|
':': true,
|
131
131
|
'?': true,
|
132
|
+
'??': true,
|
132
133
|
'==': true,
|
133
134
|
'!=': true,
|
134
135
|
'<': true,
|
@@ -1108,7 +1109,7 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, _ref => {
|
|
1108
1109
|
*/
|
1109
1110
|
function parsePow(state) {
|
1110
1111
|
var node, name, fn, params;
|
1111
|
-
node =
|
1112
|
+
node = parseNullishCoalescing(state);
|
1112
1113
|
if (state.token === '^' || state.token === '.^') {
|
1113
1114
|
name = state.token;
|
1114
1115
|
fn = name === '^' ? 'pow' : 'dotPow';
|
@@ -1119,6 +1120,21 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, _ref => {
|
|
1119
1120
|
return node;
|
1120
1121
|
}
|
1121
1122
|
|
1123
|
+
/**
|
1124
|
+
* nullish coalescing operator
|
1125
|
+
* @return {Node} node
|
1126
|
+
* @private
|
1127
|
+
*/
|
1128
|
+
function parseNullishCoalescing(state) {
|
1129
|
+
var node = parseLeftHandOperators(state);
|
1130
|
+
while (state.token === '??') {
|
1131
|
+
// eslint-disable-line no-unmodified-loop-condition
|
1132
|
+
getTokenSkipNewline(state);
|
1133
|
+
node = new OperatorNode('??', 'nullish', [node, parseLeftHandOperators(state)]);
|
1134
|
+
}
|
1135
|
+
return node;
|
1136
|
+
}
|
1137
|
+
|
1122
1138
|
/**
|
1123
1139
|
* Left hand operators: factorial x!, ctranspose x'
|
1124
1140
|
* @return {Node} node
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import { createNullish } from '../../function/logical/nullish.js';
|
2
|
+
import { factory } from '../../utils/factory.js';
|
3
|
+
import { isCollection } from '../../utils/is.js';
|
4
|
+
var name = 'nullish';
|
5
|
+
var dependencies = ['typed', 'matrix', 'size', 'flatten', 'deepEqual'];
|
6
|
+
export var createNullishTransform = /* #__PURE__ */factory(name, dependencies, _ref => {
|
7
|
+
var {
|
8
|
+
typed,
|
9
|
+
matrix,
|
10
|
+
size,
|
11
|
+
flatten,
|
12
|
+
deepEqual
|
13
|
+
} = _ref;
|
14
|
+
var nullish = createNullish({
|
15
|
+
typed,
|
16
|
+
matrix,
|
17
|
+
size,
|
18
|
+
flatten,
|
19
|
+
deepEqual
|
20
|
+
});
|
21
|
+
function nullishTransform(args, math, scope) {
|
22
|
+
var left = args[0].compile().evaluate(scope);
|
23
|
+
|
24
|
+
// If left is not a collection and not nullish, short-circuit and return it
|
25
|
+
if (!isCollection(left) && left != null && left !== undefined) {
|
26
|
+
return left;
|
27
|
+
}
|
28
|
+
|
29
|
+
// Otherwise evaluate right and apply full nullish semantics (incl. element-wise)
|
30
|
+
var right = args[1].compile().evaluate(scope);
|
31
|
+
return nullish(left, right);
|
32
|
+
}
|
33
|
+
nullishTransform.rawArgs = true;
|
34
|
+
return nullishTransform;
|
35
|
+
}, {
|
36
|
+
isTransformFunction: true
|
37
|
+
});
|
package/lib/esm/factoriesAny.js
CHANGED
@@ -66,6 +66,7 @@ export { createConj } from './function/complex/conj.js';
|
|
66
66
|
export { createIm } from './function/complex/im.js';
|
67
67
|
export { createRe } from './function/complex/re.js';
|
68
68
|
export { createNot } from './function/logical/not.js';
|
69
|
+
export { createNullish } from './function/logical/nullish.js';
|
69
70
|
export { createOr } from './function/logical/or.js';
|
70
71
|
export { createXor } from './function/logical/xor.js';
|
71
72
|
export { createConcat } from './function/matrix/concat.js';
|
@@ -294,5 +295,6 @@ export { createVarianceTransform } from './expression/transform/variance.transfo
|
|
294
295
|
export { createPrintTransform } from './expression/transform/print.transform.js';
|
295
296
|
export { createAndTransform } from './expression/transform/and.transform.js';
|
296
297
|
export { createOrTransform } from './expression/transform/or.transform.js';
|
298
|
+
export { createNullishTransform } from './expression/transform/nullish.transform.js';
|
297
299
|
export { createBitAndTransform } from './expression/transform/bitAnd.transform.js';
|
298
300
|
export { createBitOrTransform } from './expression/transform/bitOr.transform.js';
|
@@ -0,0 +1,81 @@
|
|
1
|
+
import { factory } from '../../utils/factory.js';
|
2
|
+
import { createMatAlgo03xDSf } from '../../type/matrix/utils/matAlgo03xDSf.js';
|
3
|
+
import { createMatAlgo14xDs } from '../../type/matrix/utils/matAlgo14xDs.js';
|
4
|
+
import { createMatAlgo13xDD } from '../../type/matrix/utils/matAlgo13xDD.js';
|
5
|
+
import { DimensionError } from '../../error/DimensionError.js';
|
6
|
+
var name = 'nullish';
|
7
|
+
var dependencies = ['typed', 'matrix', 'size', 'flatten', 'deepEqual'];
|
8
|
+
export var createNullish = /* #__PURE__ */factory(name, dependencies, _ref => {
|
9
|
+
var {
|
10
|
+
typed,
|
11
|
+
matrix,
|
12
|
+
size,
|
13
|
+
flatten,
|
14
|
+
deepEqual
|
15
|
+
} = _ref;
|
16
|
+
var matAlgo03xDSf = createMatAlgo03xDSf({
|
17
|
+
typed
|
18
|
+
});
|
19
|
+
var matAlgo14xDs = createMatAlgo14xDs({
|
20
|
+
typed
|
21
|
+
});
|
22
|
+
var matAlgo13xDD = createMatAlgo13xDD({
|
23
|
+
typed
|
24
|
+
});
|
25
|
+
|
26
|
+
/**
|
27
|
+
* Nullish coalescing operator (??). Returns the right-hand side operand
|
28
|
+
* when the left-hand side operand is null or undefined, and otherwise
|
29
|
+
* returns the left-hand side operand.
|
30
|
+
*
|
31
|
+
* For matrices, the function is evaluated element wise.
|
32
|
+
*
|
33
|
+
* Syntax:
|
34
|
+
*
|
35
|
+
* math.nullish(x, y)
|
36
|
+
*
|
37
|
+
* Examples:
|
38
|
+
*
|
39
|
+
* math.nullish(null, 42) // returns 42
|
40
|
+
* math.nullish(undefined, 42) // returns 42
|
41
|
+
* math.nullish(0, 42) // returns 0
|
42
|
+
* math.nullish(false, 42) // returns false
|
43
|
+
* math.nullish('', 42) // returns ''
|
44
|
+
*
|
45
|
+
* // Object property access with fallback
|
46
|
+
* const obj = {foo: 7, bar: 3}
|
47
|
+
* math.nullish(obj.baz, 0) // returns 0
|
48
|
+
*
|
49
|
+
* See also:
|
50
|
+
*
|
51
|
+
* and, or, not
|
52
|
+
*
|
53
|
+
* @param {*} x First value to check
|
54
|
+
* @param {*} y Fallback value
|
55
|
+
* @return {*} Returns y when x is null or undefined, otherwise returns x
|
56
|
+
*/
|
57
|
+
|
58
|
+
return typed(name, {
|
59
|
+
// Scalar and SparseMatrix-first short-circuit handlers
|
60
|
+
'number|bigint|Complex|BigNumber|Fraction|Unit|string|boolean|SparseMatrix, any': (x, _y) => x,
|
61
|
+
'null, any': (_x, y) => y,
|
62
|
+
'undefined, any': (_x, y) => y,
|
63
|
+
// SparseMatrix-first with collection RHS: enforce exact shape match
|
64
|
+
'SparseMatrix, Array | Matrix': (x, y) => {
|
65
|
+
var sx = flatten(size(x).valueOf()); // work around #3529/#3530
|
66
|
+
var sy = flatten(size(y).valueOf());
|
67
|
+
if (deepEqual(sx, sy)) return x;
|
68
|
+
throw new DimensionError(sx, sy);
|
69
|
+
},
|
70
|
+
// DenseMatrix-first handlers (no broadcasting between collections)
|
71
|
+
'DenseMatrix, DenseMatrix': typed.referToSelf(self => (x, y) => matAlgo13xDD(x, y, self)),
|
72
|
+
'DenseMatrix, SparseMatrix': typed.referToSelf(self => (x, y) => matAlgo03xDSf(x, y, self, false)),
|
73
|
+
'DenseMatrix, Array': typed.referToSelf(self => (x, y) => matAlgo13xDD(x, matrix(y), self)),
|
74
|
+
'DenseMatrix, any': typed.referToSelf(self => (x, y) => matAlgo14xDs(x, y, self, false)),
|
75
|
+
// Array-first handlers (bridge via matrix() where needed)
|
76
|
+
'Array, Array': typed.referToSelf(self => (x, y) => matAlgo13xDD(matrix(x), matrix(y), self).valueOf()),
|
77
|
+
'Array, DenseMatrix': typed.referToSelf(self => (x, y) => matAlgo13xDD(matrix(x), y, self)),
|
78
|
+
'Array, SparseMatrix': typed.referToSelf(self => (x, y) => matAlgo03xDSf(matrix(x), y, self, false)),
|
79
|
+
'Array, any': typed.referToSelf(self => (x, y) => matAlgo14xDs(matrix(x), y, self, false).valueOf())
|
80
|
+
});
|
81
|
+
});
|
@@ -16,7 +16,7 @@ export var createRange = /* #__PURE__ */factory(name, dependencies, _ref => {
|
|
16
16
|
isPositive
|
17
17
|
} = _ref;
|
18
18
|
/**
|
19
|
-
* Create
|
19
|
+
* Create a matrix or array containing a range of values.
|
20
20
|
* By default, the range end is excluded. This can be customized by providing
|
21
21
|
* an extra parameter `includeEnd`.
|
22
22
|
*
|
@@ -44,10 +44,12 @@ export var createRange = /* #__PURE__ */factory(name, dependencies, _ref => {
|
|
44
44
|
* - `includeEnd: boolean`
|
45
45
|
* Option to specify whether to include the end or not. False by default.
|
46
46
|
*
|
47
|
-
*
|
48
|
-
*
|
49
|
-
*
|
50
|
-
*
|
47
|
+
* The function returns a `DenseMatrix` when the library is configured with
|
48
|
+
* `config = { matrix: 'Matrix' }, and returns an Array otherwise.
|
49
|
+
* Note that the type of the returned values is taken from the type of the
|
50
|
+
* provided start/end value. If only one of these is a built-in `number` type,
|
51
|
+
* it will be promoted to the type of the other endpoint. However, in the case
|
52
|
+
* of Unit values, both endpoints must have compatible units, and the return
|
51
53
|
* value will have compatible units as well.
|
52
54
|
*
|
53
55
|
* Examples:
|
@@ -672,24 +672,28 @@ export var createDenseMatrixClass = /* #__PURE__ */factory(name, dependencies, _
|
|
672
672
|
}
|
673
673
|
return;
|
674
674
|
}
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
index[depth] = _i0;
|
685
|
-
yield {
|
686
|
-
value: value[_i0],
|
687
|
-
index: index.slice()
|
688
|
-
};
|
689
|
-
}
|
675
|
+
|
676
|
+
// Multi-dimensional matrix: iterate over all elements
|
677
|
+
var index = Array(maxDepth + 1).fill(0);
|
678
|
+
var totalElements = this._size.reduce((a, b) => a * b, 1);
|
679
|
+
for (var count = 0; count < totalElements; count++) {
|
680
|
+
// Traverse to the current element using indices
|
681
|
+
var current = this._data;
|
682
|
+
for (var d = 0; d < maxDepth; d++) {
|
683
|
+
current = current[index[d]];
|
690
684
|
}
|
691
|
-
|
692
|
-
|
685
|
+
yield {
|
686
|
+
value: current[index[maxDepth]],
|
687
|
+
index: index.slice()
|
688
|
+
};
|
689
|
+
|
690
|
+
// Increment indices for next element
|
691
|
+
for (var _d = maxDepth; _d >= 0; _d--) {
|
692
|
+
index[_d]++;
|
693
|
+
if (index[_d] < this._size[_d]) break;
|
694
|
+
index[_d] = 0;
|
695
|
+
}
|
696
|
+
}
|
693
697
|
};
|
694
698
|
|
695
699
|
/**
|
package/lib/esm/type/string.js
CHANGED
@@ -17,13 +17,13 @@ export var createString = /* #__PURE__ */factory(name, dependencies, _ref => {
|
|
17
17
|
*
|
18
18
|
* Examples:
|
19
19
|
*
|
20
|
-
* math.string(4.2)
|
21
|
-
* math.string(math.complex(3, 2) // returns string '3 + 2i'
|
20
|
+
* math.string(4.2) // returns string '4.2'
|
21
|
+
* math.string(math.complex(3, 2)) // returns string '3 + 2i'
|
22
22
|
*
|
23
23
|
* const u = math.unit(5, 'km')
|
24
|
-
* math.string(u.to('m'))
|
24
|
+
* math.string(u.to('m')) // returns string '5000 m'
|
25
25
|
*
|
26
|
-
* math.string([true, false])
|
26
|
+
* math.string([true, false]) // returns ['true', 'false']
|
27
27
|
*
|
28
28
|
* See also:
|
29
29
|
*
|
package/lib/esm/version.js
CHANGED
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "mathjs",
|
3
|
-
"version": "14.
|
3
|
+
"version": "14.8.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",
|
@@ -36,31 +36,30 @@
|
|
36
36
|
"typed-function": "^4.2.1"
|
37
37
|
},
|
38
38
|
"devDependencies": {
|
39
|
-
"@babel/core": "7.28.
|
39
|
+
"@babel/core": "7.28.4",
|
40
40
|
"@babel/plugin-transform-object-assign": "7.27.1",
|
41
41
|
"@babel/plugin-transform-optional-catch-binding": "7.27.1",
|
42
|
-
"@babel/plugin-transform-runtime": "7.28.
|
43
|
-
"@babel/preset-env": "7.28.
|
44
|
-
"@babel/register": "7.
|
42
|
+
"@babel/plugin-transform-runtime": "7.28.3",
|
43
|
+
"@babel/preset-env": "7.28.3",
|
44
|
+
"@babel/register": "7.28.3",
|
45
45
|
"@types/assert": "1.5.11",
|
46
46
|
"@types/mocha": "10.0.10",
|
47
|
-
"@typescript-eslint/eslint-plugin": "8.
|
48
|
-
"@typescript-eslint/parser": "8.
|
47
|
+
"@typescript-eslint/eslint-plugin": "8.44.1",
|
48
|
+
"@typescript-eslint/parser": "8.44.1",
|
49
49
|
"assert": "2.1.0",
|
50
50
|
"babel-loader": "10.0.0",
|
51
51
|
"c8": "10.1.3",
|
52
52
|
"codecov": "3.8.3",
|
53
|
-
"
|
54
|
-
"del": "8.0.0",
|
55
|
-
"dtslint": "4.2.1",
|
53
|
+
"del": "8.0.1",
|
56
54
|
"eigen": "0.2.2",
|
55
|
+
"es-check": "9.3.1",
|
57
56
|
"eslint": "8.57.1",
|
58
57
|
"eslint-config-prettier": "9.1.0",
|
59
58
|
"eslint-config-standard": "17.1.0",
|
60
59
|
"eslint-plugin-import": "2.32.0",
|
61
60
|
"eslint-plugin-mocha": "10.5.0",
|
62
61
|
"eslint-plugin-n": "16.6.2",
|
63
|
-
"eslint-plugin-prettier": "5.5.
|
62
|
+
"eslint-plugin-prettier": "5.5.4",
|
64
63
|
"eslint-plugin-promise": "6.6.0",
|
65
64
|
"expect-type": "1.2.2",
|
66
65
|
"expr-eval": "2.0.2",
|
@@ -78,7 +77,7 @@
|
|
78
77
|
"karma-webdriver-launcher": "1.0.8",
|
79
78
|
"karma-webpack": "5.0.1",
|
80
79
|
"mkdirp": "3.0.1",
|
81
|
-
"mocha": "11.7.
|
80
|
+
"mocha": "11.7.2",
|
82
81
|
"mocha-junit-reporter": "2.2.1",
|
83
82
|
"ndarray": "1.0.19",
|
84
83
|
"ndarray-determinant": "1.0.0",
|
@@ -90,10 +89,10 @@
|
|
90
89
|
"process": "0.11.10",
|
91
90
|
"sinon": "21.0.0",
|
92
91
|
"sylvester": "0.0.21",
|
93
|
-
"tinybench": "
|
92
|
+
"tinybench": "5.0.1",
|
94
93
|
"ts-node": "10.9.2",
|
95
|
-
"typescript": "5.
|
96
|
-
"webpack": "5.
|
94
|
+
"typescript": "5.9.2",
|
95
|
+
"webpack": "5.101.3",
|
97
96
|
"zeros": "1.0.0"
|
98
97
|
},
|
99
98
|
"type": "module",
|
@@ -149,7 +148,7 @@
|
|
149
148
|
"test": "npm run test:src && npm run lint",
|
150
149
|
"test:src": "mocha test/unit-tests",
|
151
150
|
"test:generated": "mocha test/generated-code-tests",
|
152
|
-
"test:node": "mocha test/node-tests/*.test.js test/node-tests/**/*.test.js",
|
151
|
+
"test:node": "mocha test/node-tests/*.test.{js,cjs,mjs} test/node-tests/**/*.test.{js,cjs,mjs}",
|
153
152
|
"test:all": "npm run test:src && npm run test:generated && npm run test:node && npm run test:types",
|
154
153
|
"test:browser": "karma start test/browser-test-config/local-karma.js",
|
155
154
|
"test:lambdatest": "karma start test/browser-test-config/lambdatest-karma.js",
|
package/types/index.d.ts
CHANGED
@@ -1904,6 +1904,14 @@ export interface MathJsInstance extends MathJsFactory {
|
|
1904
1904
|
*/
|
1905
1905
|
det(x: MathCollection): number
|
1906
1906
|
|
1907
|
+
/**
|
1908
|
+
* Calculate the difference between adjacent elements of a matrix or array.
|
1909
|
+
* @param x A matrix or array
|
1910
|
+
* @param dim The dimension to apply the difference on.
|
1911
|
+
* @returns A matrix or array containing the differences
|
1912
|
+
*/
|
1913
|
+
diff<T extends MathCollection>(x: T, dim?: number | BigNumber): T
|
1914
|
+
|
1907
1915
|
/**
|
1908
1916
|
* Create a diagonal matrix or retrieve the diagonal of a matrix. When x
|
1909
1917
|
* is a vector, a matrix with vector x on the diagonal will be returned.
|
@@ -4079,7 +4087,8 @@ export const {
|
|
4079
4087
|
concatTransformDependencies,
|
4080
4088
|
stdTransformDependencies,
|
4081
4089
|
sumTransformDependencies,
|
4082
|
-
varianceTransformDependencies
|
4090
|
+
varianceTransformDependencies,
|
4091
|
+
printTransformDependencies
|
4083
4092
|
}: Record<string, FactoryFunctionMap>
|
4084
4093
|
|
4085
4094
|
export interface Matrix<T = MathGeneric> {
|
@@ -5805,6 +5814,15 @@ export interface MathJsChain<TValue> {
|
|
5805
5814
|
y: MathCollection
|
5806
5815
|
): MathJsChain<MathCollection>
|
5807
5816
|
|
5817
|
+
/**
|
5818
|
+
* Calculate the difference between adjacent elements of the chained matrix or array.
|
5819
|
+
* @param dim The dimension to apply the difference on.
|
5820
|
+
*/
|
5821
|
+
diff<T extends MathCollection>(
|
5822
|
+
this: MathJsChain<T>,
|
5823
|
+
dim?: number | BigNumber
|
5824
|
+
): MathJsChain<T>
|
5825
|
+
|
5808
5826
|
/**
|
5809
5827
|
* Calculate the determinant of a matrix.
|
5810
5828
|
*/
|