mathjs 10.6.3 → 11.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HISTORY.md +74 -1
- package/README.md +1 -1
- package/lib/browser/math.js +2 -41
- package/lib/browser/math.js.LICENSE.txt +43 -0
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/core/create.js +6 -5
- package/lib/cjs/core/function/import.js +4 -14
- package/lib/cjs/core/function/typed.js +54 -12
- package/lib/cjs/defaultInstance.js +3 -3
- package/lib/cjs/entry/allFactoriesAny.js +1 -1
- package/lib/cjs/entry/allFactoriesNumber.js +1 -1
- package/lib/cjs/entry/configReadonly.js +1 -1
- package/lib/cjs/entry/dependenciesAny/dependenciesChainClass.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesKldivergence.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +56 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +6 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSqrtm.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesStd.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesStdTransform.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny.generated.js +8 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesChainClass.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +50 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +6 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesStd.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesStdTransform.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber.generated.js +8 -0
- package/lib/cjs/entry/impureFunctionsAny.generated.js +87 -61
- package/lib/cjs/entry/impureFunctionsNumber.generated.js +93 -69
- package/lib/cjs/entry/pureFunctionsAny.generated.js +50 -45
- package/lib/cjs/entry/pureFunctionsNumber.generated.js +22 -19
- package/lib/cjs/expression/Parser.js +1 -1
- package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +8 -5
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyConstant.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyCore.js +1 -1
- package/lib/cjs/expression/node/AccessorNode.js +216 -173
- package/lib/cjs/expression/node/ArrayNode.js +206 -160
- package/lib/cjs/expression/node/AssignmentNode.js +321 -270
- package/lib/cjs/expression/node/BlockNode.js +223 -172
- package/lib/cjs/expression/node/ConditionalNode.js +253 -193
- package/lib/cjs/expression/node/ConstantNode.js +216 -171
- package/lib/cjs/expression/node/FunctionAssignmentNode.js +258 -196
- package/lib/cjs/expression/node/FunctionNode.js +456 -416
- package/lib/cjs/expression/node/IndexNode.js +256 -210
- package/lib/cjs/expression/node/Node.js +411 -378
- package/lib/cjs/expression/node/ObjectNode.js +223 -178
- package/lib/cjs/expression/node/OperatorNode.js +474 -397
- package/lib/cjs/expression/node/ParenthesisNode.js +189 -143
- package/lib/cjs/expression/node/RangeNode.js +272 -224
- package/lib/cjs/expression/node/RelationalNode.js +246 -195
- package/lib/cjs/expression/node/SymbolNode.js +219 -172
- package/lib/cjs/expression/node/utils/access.js +1 -1
- package/lib/cjs/expression/node/utils/assign.js +1 -1
- package/lib/cjs/expression/operators.js +117 -23
- package/lib/cjs/expression/parse.js +37 -19
- package/lib/cjs/expression/transform/std.transform.js +3 -1
- package/lib/cjs/factoriesAny.js +8 -0
- package/lib/cjs/factoriesNumber.js +10 -1
- package/lib/cjs/function/algebra/decomposition/qr.js +1 -1
- package/lib/cjs/function/algebra/derivative.js +25 -33
- package/lib/cjs/function/algebra/leafCount.js +0 -3
- package/lib/cjs/function/algebra/rationalize.js +78 -108
- package/lib/cjs/function/algebra/resolve.js +53 -16
- package/lib/cjs/function/algebra/simplify/util.js +1 -1
- package/lib/cjs/function/algebra/simplify.js +90 -115
- package/lib/cjs/function/algebra/{simplify/simplifyConstant.js → simplifyConstant.js} +44 -10
- package/lib/cjs/function/algebra/simplifyCore.js +196 -93
- package/lib/cjs/function/algebra/solver/lsolveAll.js +2 -2
- package/lib/cjs/function/algebra/solver/usolveAll.js +2 -2
- package/lib/cjs/function/algebra/symbolicEqual.js +14 -32
- package/lib/cjs/function/arithmetic/abs.js +7 -14
- package/lib/cjs/function/arithmetic/add.js +26 -70
- package/lib/cjs/function/arithmetic/addScalar.js +17 -9
- package/lib/cjs/function/arithmetic/cbrt.js +7 -11
- package/lib/cjs/function/arithmetic/ceil.js +56 -46
- package/lib/cjs/function/arithmetic/cube.js +5 -10
- package/lib/cjs/function/arithmetic/divide.js +7 -7
- package/lib/cjs/function/arithmetic/divideScalar.js +4 -18
- package/lib/cjs/function/arithmetic/dotDivide.js +22 -65
- package/lib/cjs/function/arithmetic/dotMultiply.js +16 -61
- package/lib/cjs/function/arithmetic/dotPow.js +30 -63
- package/lib/cjs/function/arithmetic/exp.js +8 -12
- package/lib/cjs/function/arithmetic/expm1.js +10 -10
- package/lib/cjs/function/arithmetic/fix.js +34 -28
- package/lib/cjs/function/arithmetic/floor.js +57 -47
- package/lib/cjs/function/arithmetic/gcd.js +27 -68
- package/lib/cjs/function/arithmetic/hypot.js +9 -5
- package/lib/cjs/function/arithmetic/invmod.js +2 -2
- package/lib/cjs/function/arithmetic/lcm.js +27 -68
- package/lib/cjs/function/arithmetic/log.js +10 -12
- package/lib/cjs/function/arithmetic/log10.js +5 -3
- package/lib/cjs/function/arithmetic/log1p.js +11 -7
- package/lib/cjs/function/arithmetic/log2.js +5 -3
- package/lib/cjs/function/arithmetic/mod.js +22 -64
- package/lib/cjs/function/arithmetic/multiply.js +40 -35
- package/lib/cjs/function/arithmetic/multiplyScalar.js +2 -9
- package/lib/cjs/function/arithmetic/norm.js +1 -5
- package/lib/cjs/function/arithmetic/nthRoot.js +83 -95
- package/lib/cjs/function/arithmetic/nthRoots.js +2 -2
- package/lib/cjs/function/arithmetic/round.js +56 -42
- package/lib/cjs/function/arithmetic/sign.js +14 -10
- package/lib/cjs/function/arithmetic/sqrt.js +5 -9
- package/lib/cjs/function/arithmetic/square.js +6 -10
- package/lib/cjs/function/arithmetic/subtract.js +44 -100
- package/lib/cjs/function/arithmetic/unaryMinus.js +14 -16
- package/lib/cjs/function/arithmetic/unaryPlus.js +6 -4
- package/lib/cjs/function/bitwise/bitAnd.js +17 -61
- package/lib/cjs/function/bitwise/bitNot.js +6 -4
- package/lib/cjs/function/bitwise/bitOr.js +16 -60
- package/lib/cjs/function/bitwise/bitXor.js +17 -61
- package/lib/cjs/function/bitwise/leftShift.js +69 -82
- package/lib/cjs/function/bitwise/rightArithShift.js +69 -82
- package/lib/cjs/function/bitwise/rightLogShift.js +69 -82
- package/lib/cjs/function/bitwise/useMatrixForArrayScalar.js +36 -0
- package/lib/cjs/function/complex/arg.js +5 -3
- package/lib/cjs/function/complex/conj.js +6 -7
- package/lib/cjs/function/complex/im.js +7 -8
- package/lib/cjs/function/complex/re.js +6 -10
- package/lib/cjs/function/geometry/distance.js +2 -2
- package/lib/cjs/function/logical/and.js +74 -80
- package/lib/cjs/function/logical/not.js +13 -6
- package/lib/cjs/function/logical/or.js +21 -63
- package/lib/cjs/function/logical/xor.js +21 -63
- package/lib/cjs/function/matrix/diff.js +11 -8
- package/lib/cjs/function/matrix/eigs/complexEigs.js +5 -5
- package/lib/cjs/function/matrix/fft.js +2 -2
- package/lib/cjs/function/matrix/matrixFromColumns.js +1 -1
- package/lib/cjs/function/matrix/matrixFromRows.js +1 -1
- package/lib/cjs/function/matrix/ones.js +2 -1
- package/lib/cjs/function/matrix/rotate.js +5 -5
- package/lib/cjs/function/matrix/sqrtm.js +3 -2
- package/lib/cjs/function/matrix/transpose.js +47 -48
- package/lib/cjs/function/matrix/zeros.js +2 -1
- package/lib/cjs/function/probability/factorial.js +5 -3
- package/lib/cjs/function/probability/gamma.js +38 -40
- package/lib/cjs/function/probability/kldivergence.js +5 -2
- package/lib/cjs/function/probability/lgamma.js +30 -30
- package/lib/cjs/function/probability/util/seededRNG.js +2 -2
- package/lib/cjs/function/relational/compare.js +21 -67
- package/lib/cjs/function/relational/compareNatural.js +59 -54
- package/lib/cjs/function/relational/compareText.js +10 -43
- package/lib/cjs/function/relational/compareUnits.js +24 -0
- package/lib/cjs/function/relational/equal.js +19 -80
- package/lib/cjs/function/relational/equalScalar.js +7 -9
- package/lib/cjs/function/relational/larger.js +21 -67
- package/lib/cjs/function/relational/largerEq.js +21 -67
- package/lib/cjs/function/relational/smaller.js +21 -67
- package/lib/cjs/function/relational/smallerEq.js +21 -67
- package/lib/cjs/function/relational/unequal.js +19 -80
- package/lib/cjs/function/special/erf.js +5 -3
- package/lib/cjs/function/statistics/std.js +11 -2
- package/lib/cjs/function/string/format.js +2 -2
- package/lib/cjs/function/string/hex.js +1 -2
- package/lib/cjs/function/trigonometry/acos.js +4 -8
- package/lib/cjs/function/trigonometry/acosh.js +2 -7
- package/lib/cjs/function/trigonometry/acot.js +6 -11
- package/lib/cjs/function/trigonometry/acoth.js +4 -8
- package/lib/cjs/function/trigonometry/acsc.js +6 -11
- package/lib/cjs/function/trigonometry/acsch.js +4 -8
- package/lib/cjs/function/trigonometry/asec.js +6 -10
- package/lib/cjs/function/trigonometry/asech.js +4 -8
- package/lib/cjs/function/trigonometry/asin.js +5 -10
- package/lib/cjs/function/trigonometry/asinh.js +4 -9
- package/lib/cjs/function/trigonometry/atan.js +5 -11
- package/lib/cjs/function/trigonometry/atan2.js +25 -63
- package/lib/cjs/function/trigonometry/atanh.js +4 -9
- package/lib/cjs/function/trigonometry/cos.js +11 -20
- package/lib/cjs/function/trigonometry/cosh.js +5 -19
- package/lib/cjs/function/trigonometry/cot.js +9 -15
- package/lib/cjs/function/trigonometry/coth.js +4 -15
- package/lib/cjs/function/trigonometry/csc.js +11 -17
- package/lib/cjs/function/trigonometry/csch.js +4 -15
- package/lib/cjs/function/trigonometry/sec.js +11 -17
- package/lib/cjs/function/trigonometry/sech.js +4 -15
- package/lib/cjs/function/trigonometry/sin.js +11 -21
- package/lib/cjs/function/trigonometry/sinh.js +5 -20
- package/lib/cjs/function/trigonometry/tan.js +11 -21
- package/lib/cjs/function/trigonometry/tanh.js +5 -20
- package/lib/cjs/function/trigonometry/trigUnit.js +24 -0
- package/lib/cjs/function/unit/to.js +7 -41
- package/lib/cjs/function/utils/clone.js +1 -1
- package/lib/cjs/function/utils/hasNumericValue.js +5 -1
- package/lib/cjs/function/utils/isInteger.js +6 -4
- package/lib/cjs/function/utils/isNaN.js +1 -1
- package/lib/cjs/function/utils/isNegative.js +11 -7
- package/lib/cjs/function/utils/isNumeric.js +6 -4
- package/lib/cjs/function/utils/isPositive.js +11 -7
- package/lib/cjs/function/utils/isPrime.js +5 -3
- package/lib/cjs/function/utils/isZero.js +21 -17
- package/lib/cjs/function/utils/numeric.js +11 -4
- package/lib/cjs/function/utils/typeOf.js +38 -44
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/plain/bignumber/index.js +1 -1
- package/lib/cjs/type/bignumber/BigNumber.js +2 -2
- package/lib/cjs/type/bignumber/function/bignumber.js +6 -4
- package/lib/cjs/type/boolean.js +7 -5
- package/lib/cjs/type/chain/Chain.js +23 -3
- package/lib/cjs/type/complex/Complex.js +18 -14
- package/lib/cjs/type/complex/function/complex.js +6 -4
- package/lib/cjs/type/fraction/Fraction.js +10 -6
- package/lib/cjs/type/fraction/function/fraction.js +6 -4
- package/lib/cjs/type/matrix/DenseMatrix.js +21 -6
- package/lib/cjs/type/matrix/SparseMatrix.js +12 -2
- package/lib/cjs/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +4 -4
- package/lib/cjs/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +7 -7
- package/lib/cjs/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +6 -6
- package/lib/cjs/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +5 -5
- package/lib/cjs/type/matrix/utils/matrixAlgorithmSuite.js +238 -0
- package/lib/cjs/type/number.js +6 -4
- package/lib/cjs/type/string.js +7 -5
- package/lib/cjs/type/unit/Unit.js +69 -21
- package/lib/cjs/type/unit/function/createUnit.js +2 -1
- package/lib/cjs/type/unit/function/unit.js +9 -3
- package/lib/cjs/utils/customs.js +2 -2
- package/lib/cjs/utils/emitter.js +1 -1
- package/lib/cjs/utils/function.js +2 -2
- package/lib/cjs/utils/is.js +27 -25
- package/lib/cjs/utils/latex.js +3 -3
- package/lib/cjs/utils/lruQueue.js +1 -1
- package/lib/cjs/utils/map.js +3 -3
- package/lib/cjs/utils/object.js +2 -2
- package/lib/cjs/utils/snapshot.js +30 -57
- package/lib/cjs/utils/string.js +3 -3
- package/lib/cjs/version.js +1 -1
- package/lib/esm/core/create.js +2 -1
- package/lib/esm/core/function/import.js +2 -12
- package/lib/esm/core/function/typed.js +47 -11
- package/lib/esm/entry/dependenciesAny/dependenciesChainClass.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesKldivergence.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesRationalize.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesResolve.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplify.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +34 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +4 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSqrtm.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesStd.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesStdTransform.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny.generated.js +1 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesChainClass.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesRationalize.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesResolve.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplify.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +30 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +4 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesStd.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesStdTransform.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber.generated.js +1 -0
- package/lib/esm/entry/impureFunctionsAny.generated.js +73 -48
- package/lib/esm/entry/impureFunctionsNumber.generated.js +81 -58
- package/lib/esm/entry/pureFunctionsAny.generated.js +39 -36
- package/lib/esm/entry/pureFunctionsNumber.generated.js +14 -13
- package/lib/esm/expression/embeddedDocs/embeddedDocs.js +2 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/simplifyConstant.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/simplifyCore.js +1 -1
- package/lib/esm/expression/node/AccessorNode.js +158 -153
- package/lib/esm/expression/node/ArrayNode.js +162 -154
- package/lib/esm/expression/node/AssignmentNode.js +257 -245
- package/lib/esm/expression/node/BlockNode.js +177 -163
- package/lib/esm/expression/node/ConditionalNode.js +197 -174
- package/lib/esm/expression/node/ConstantNode.js +171 -163
- package/lib/esm/expression/node/FunctionAssignmentNode.js +205 -180
- package/lib/esm/expression/node/FunctionNode.js +407 -407
- package/lib/esm/expression/node/IndexNode.js +206 -198
- package/lib/esm/expression/node/Node.js +325 -325
- package/lib/esm/expression/node/ObjectNode.js +166 -157
- package/lib/esm/expression/node/OperatorNode.js +414 -377
- package/lib/esm/expression/node/ParenthesisNode.js +146 -138
- package/lib/esm/expression/node/RangeNode.js +221 -212
- package/lib/esm/expression/node/RelationalNode.js +190 -176
- package/lib/esm/expression/node/SymbolNode.js +161 -152
- package/lib/esm/expression/operators.js +96 -4
- package/lib/esm/expression/parse.js +25 -7
- package/lib/esm/expression/transform/std.transform.js +3 -1
- package/lib/esm/factoriesAny.js +1 -0
- package/lib/esm/factoriesNumber.js +1 -0
- package/lib/esm/function/algebra/derivative.js +25 -33
- package/lib/esm/function/algebra/leafCount.js +0 -3
- package/lib/esm/function/algebra/rationalize.js +83 -114
- package/lib/esm/function/algebra/resolve.js +25 -16
- package/lib/esm/function/algebra/simplify.js +85 -113
- package/lib/esm/function/algebra/{simplify/simplifyConstant.js → simplifyConstant.js} +39 -9
- package/lib/esm/function/algebra/simplifyCore.js +192 -91
- package/lib/esm/function/algebra/symbolicEqual.js +14 -32
- package/lib/esm/function/arithmetic/abs.js +3 -16
- package/lib/esm/function/arithmetic/add.js +21 -65
- package/lib/esm/function/arithmetic/addScalar.js +11 -5
- package/lib/esm/function/arithmetic/cbrt.js +7 -10
- package/lib/esm/function/arithmetic/ceil.js +25 -25
- package/lib/esm/function/arithmetic/cube.js +5 -9
- package/lib/esm/function/arithmetic/divide.js +7 -7
- package/lib/esm/function/arithmetic/divideScalar.js +2 -19
- package/lib/esm/function/arithmetic/dotDivide.js +22 -64
- package/lib/esm/function/arithmetic/dotMultiply.js +16 -60
- package/lib/esm/function/arithmetic/dotPow.js +30 -62
- package/lib/esm/function/arithmetic/exp.js +8 -11
- package/lib/esm/function/arithmetic/expm1.js +10 -9
- package/lib/esm/function/arithmetic/fix.js +18 -18
- package/lib/esm/function/arithmetic/floor.js +26 -26
- package/lib/esm/function/arithmetic/gcd.js +26 -70
- package/lib/esm/function/arithmetic/hypot.js +7 -6
- package/lib/esm/function/arithmetic/invmod.js +1 -1
- package/lib/esm/function/arithmetic/lcm.js +26 -70
- package/lib/esm/function/arithmetic/log.js +7 -10
- package/lib/esm/function/arithmetic/log10.js +1 -3
- package/lib/esm/function/arithmetic/log1p.js +4 -6
- package/lib/esm/function/arithmetic/log2.js +1 -3
- package/lib/esm/function/arithmetic/mod.js +21 -62
- package/lib/esm/function/arithmetic/multiply.js +23 -27
- package/lib/esm/function/arithmetic/multiplyScalar.js +2 -13
- package/lib/esm/function/arithmetic/norm.js +0 -4
- package/lib/esm/function/arithmetic/nthRoot.js +41 -76
- package/lib/esm/function/arithmetic/nthRoots.js +2 -2
- package/lib/esm/function/arithmetic/round.js +26 -28
- package/lib/esm/function/arithmetic/sign.js +5 -7
- package/lib/esm/function/arithmetic/sqrt.js +5 -8
- package/lib/esm/function/arithmetic/square.js +6 -9
- package/lib/esm/function/arithmetic/subtract.js +31 -95
- package/lib/esm/function/arithmetic/unaryMinus.js +6 -16
- package/lib/esm/function/arithmetic/unaryPlus.js +2 -4
- package/lib/esm/function/bitwise/bitAnd.js +16 -59
- package/lib/esm/function/bitwise/bitNot.js +2 -4
- package/lib/esm/function/bitwise/bitOr.js +16 -59
- package/lib/esm/function/bitwise/bitXor.js +16 -59
- package/lib/esm/function/bitwise/leftShift.js +39 -61
- package/lib/esm/function/bitwise/rightArithShift.js +39 -61
- package/lib/esm/function/bitwise/rightLogShift.js +39 -61
- package/lib/esm/function/bitwise/useMatrixForArrayScalar.js +13 -0
- package/lib/esm/function/complex/arg.js +1 -3
- package/lib/esm/function/complex/conj.js +3 -12
- package/lib/esm/function/complex/im.js +4 -15
- package/lib/esm/function/complex/re.js +3 -15
- package/lib/esm/function/geometry/distance.js +2 -2
- package/lib/esm/function/logical/and.js +35 -57
- package/lib/esm/function/logical/not.js +3 -6
- package/lib/esm/function/logical/or.js +16 -61
- package/lib/esm/function/logical/xor.js +16 -61
- package/lib/esm/function/matrix/diff.js +3 -8
- package/lib/esm/function/matrix/ones.js +2 -1
- package/lib/esm/function/matrix/rotate.js +5 -5
- package/lib/esm/function/matrix/sqrtm.js +3 -2
- package/lib/esm/function/matrix/transpose.js +47 -50
- package/lib/esm/function/matrix/zeros.js +2 -1
- package/lib/esm/function/probability/factorial.js +1 -3
- package/lib/esm/function/probability/gamma.js +38 -39
- package/lib/esm/function/probability/kldivergence.js +3 -2
- package/lib/esm/function/probability/lgamma.js +29 -29
- package/lib/esm/function/relational/compare.js +21 -67
- package/lib/esm/function/relational/compareNatural.js +54 -49
- package/lib/esm/function/relational/compareText.js +10 -42
- package/lib/esm/function/relational/compareUnits.js +15 -0
- package/lib/esm/function/relational/equal.js +19 -79
- package/lib/esm/function/relational/equalScalar.js +6 -9
- package/lib/esm/function/relational/larger.js +23 -73
- package/lib/esm/function/relational/largerEq.js +23 -73
- package/lib/esm/function/relational/smaller.js +23 -73
- package/lib/esm/function/relational/smallerEq.js +23 -73
- package/lib/esm/function/relational/unequal.js +19 -79
- package/lib/esm/function/special/erf.js +1 -3
- package/lib/esm/function/statistics/std.js +10 -2
- package/lib/esm/function/string/format.js +2 -2
- package/lib/esm/function/string/hex.js +1 -2
- package/lib/esm/function/trigonometry/acos.js +4 -7
- package/lib/esm/function/trigonometry/acosh.js +2 -6
- package/lib/esm/function/trigonometry/acot.js +6 -10
- package/lib/esm/function/trigonometry/acoth.js +4 -7
- package/lib/esm/function/trigonometry/acsc.js +6 -10
- package/lib/esm/function/trigonometry/acsch.js +4 -7
- package/lib/esm/function/trigonometry/asec.js +6 -9
- package/lib/esm/function/trigonometry/asech.js +4 -7
- package/lib/esm/function/trigonometry/asin.js +5 -9
- package/lib/esm/function/trigonometry/asinh.js +4 -8
- package/lib/esm/function/trigonometry/atan.js +5 -10
- package/lib/esm/function/trigonometry/atan2.js +26 -65
- package/lib/esm/function/trigonometry/atanh.js +4 -8
- package/lib/esm/function/trigonometry/cos.js +11 -22
- package/lib/esm/function/trigonometry/cosh.js +5 -20
- package/lib/esm/function/trigonometry/cot.js +10 -20
- package/lib/esm/function/trigonometry/coth.js +6 -20
- package/lib/esm/function/trigonometry/csc.js +12 -22
- package/lib/esm/function/trigonometry/csch.js +6 -20
- package/lib/esm/function/trigonometry/sec.js +12 -22
- package/lib/esm/function/trigonometry/sech.js +6 -20
- package/lib/esm/function/trigonometry/sin.js +11 -23
- package/lib/esm/function/trigonometry/sinh.js +5 -21
- package/lib/esm/function/trigonometry/tan.js +11 -23
- package/lib/esm/function/trigonometry/tanh.js +5 -21
- package/lib/esm/function/trigonometry/trigUnit.js +15 -0
- package/lib/esm/function/unit/to.js +8 -43
- package/lib/esm/function/utils/clone.js +1 -1
- package/lib/esm/function/utils/hasNumericValue.js +3 -1
- package/lib/esm/function/utils/isInteger.js +2 -4
- package/lib/esm/function/utils/isNaN.js +1 -1
- package/lib/esm/function/utils/isNegative.js +3 -7
- package/lib/esm/function/utils/isNumeric.js +4 -10
- package/lib/esm/function/utils/isPositive.js +3 -7
- package/lib/esm/function/utils/isPrime.js +1 -3
- package/lib/esm/function/utils/isZero.js +13 -17
- package/lib/esm/function/utils/numeric.js +11 -4
- package/lib/esm/function/utils/typeOf.js +38 -44
- package/lib/esm/type/bignumber/function/bignumber.js +1 -3
- package/lib/esm/type/boolean.js +1 -3
- package/lib/esm/type/chain/Chain.js +23 -3
- package/lib/esm/type/complex/Complex.js +4 -0
- package/lib/esm/type/complex/function/complex.js +1 -3
- package/lib/esm/type/fraction/Fraction.js +4 -0
- package/lib/esm/type/fraction/function/fraction.js +1 -3
- package/lib/esm/type/matrix/DenseMatrix.js +15 -1
- package/lib/esm/type/matrix/SparseMatrix.js +9 -0
- package/lib/esm/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +2 -2
- package/lib/esm/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +5 -5
- package/lib/esm/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +4 -4
- package/lib/esm/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +3 -3
- package/lib/esm/type/matrix/utils/matrixAlgorithmSuite.js +168 -0
- package/lib/esm/type/number.js +1 -3
- package/lib/esm/type/string.js +1 -3
- package/lib/esm/type/unit/Unit.js +61 -13
- package/lib/esm/type/unit/function/createUnit.js +2 -1
- package/lib/esm/type/unit/function/unit.js +5 -3
- package/lib/esm/utils/is.js +18 -18
- package/lib/esm/utils/snapshot.js +22 -48
- package/lib/esm/version.js +1 -1
- package/package.json +21 -24
- package/types/index.d.ts +215 -183
- package/types/index.ts +358 -144
- package/lib/cjs/utils/polyfills.js +0 -14
- package/lib/esm/utils/polyfills.js +0 -12
|
@@ -27,7 +27,7 @@ var _constants = require("../../utils/bignumber/constants.js");
|
|
|
27
27
|
|
|
28
28
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
29
29
|
|
|
30
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2
|
|
30
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
31
31
|
|
|
32
32
|
var name = 'Unit';
|
|
33
33
|
var dependencies = ['?on', 'config', 'addScalar', 'subtract', 'multiplyScalar', 'divideScalar', 'pow', 'abs', 'fix', 'round', 'equal', 'isNumeric', 'format', 'number', 'Complex', 'BigNumber', 'Fraction'];
|
|
@@ -88,12 +88,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
88
88
|
this.units = u.units;
|
|
89
89
|
this.dimensions = u.dimensions;
|
|
90
90
|
} else {
|
|
91
|
-
this.units = [
|
|
92
|
-
unit: UNIT_NONE,
|
|
93
|
-
prefix: PREFIXES.NONE,
|
|
94
|
-
// link to a list with supported prefixes
|
|
95
|
-
power: 0
|
|
96
|
-
}];
|
|
91
|
+
this.units = [];
|
|
97
92
|
this.dimensions = [];
|
|
98
93
|
|
|
99
94
|
for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
|
|
@@ -115,6 +110,10 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
115
110
|
*/
|
|
116
111
|
|
|
117
112
|
|
|
113
|
+
Object.defineProperty(Unit, 'name', {
|
|
114
|
+
value: 'Unit'
|
|
115
|
+
});
|
|
116
|
+
Unit.prototype.constructor = Unit;
|
|
118
117
|
Unit.prototype.type = 'Unit';
|
|
119
118
|
Unit.prototype.isUnit = true; // private variables and functions for the Unit parser
|
|
120
119
|
|
|
@@ -477,6 +476,17 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
477
476
|
|
|
478
477
|
return unit;
|
|
479
478
|
};
|
|
479
|
+
/**
|
|
480
|
+
* Return the type of the value of this unit
|
|
481
|
+
*
|
|
482
|
+
* @memberof Unit
|
|
483
|
+
* @ return {string} type of the value of the unit
|
|
484
|
+
*/
|
|
485
|
+
|
|
486
|
+
|
|
487
|
+
Unit.prototype.valueType = function () {
|
|
488
|
+
return (0, _is.typeOf)(this.value);
|
|
489
|
+
};
|
|
480
490
|
/**
|
|
481
491
|
* Return whether the unit is derived (such as m/s, or cm^2, but not N)
|
|
482
492
|
* @memberof Unit
|
|
@@ -666,15 +676,16 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
666
676
|
return this.equalBase(other) && equal(this.value, other.value);
|
|
667
677
|
};
|
|
668
678
|
/**
|
|
669
|
-
* Multiply this unit with another one
|
|
679
|
+
* Multiply this unit with another one or with a scalar
|
|
670
680
|
* @memberof Unit
|
|
671
681
|
* @param {Unit} other
|
|
672
682
|
* @return {Unit} product of this unit and the other unit
|
|
673
683
|
*/
|
|
674
684
|
|
|
675
685
|
|
|
676
|
-
Unit.prototype.multiply = function (
|
|
686
|
+
Unit.prototype.multiply = function (_other) {
|
|
677
687
|
var res = this.clone();
|
|
688
|
+
var other = (0, _is.isUnit)(_other) ? _other : new Unit(_other);
|
|
678
689
|
|
|
679
690
|
for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
|
|
680
691
|
// Dimensions arrays may be of different lengths. Default to 0.
|
|
@@ -698,19 +709,35 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
698
709
|
res.value = null;
|
|
699
710
|
}
|
|
700
711
|
|
|
701
|
-
|
|
712
|
+
if ((0, _is.isUnit)(_other)) {
|
|
713
|
+
res.skipAutomaticSimplification = false;
|
|
714
|
+
}
|
|
715
|
+
|
|
702
716
|
return getNumericIfUnitless(res);
|
|
703
717
|
};
|
|
718
|
+
/**
|
|
719
|
+
* Divide a number by this unit
|
|
720
|
+
*
|
|
721
|
+
* @memberof Unit
|
|
722
|
+
* @param {numeric} numerator
|
|
723
|
+
* @param {unit} result of dividing numerator by this unit
|
|
724
|
+
*/
|
|
725
|
+
|
|
726
|
+
|
|
727
|
+
Unit.prototype.divideInto = function (numerator) {
|
|
728
|
+
return new Unit(numerator).divide(this);
|
|
729
|
+
};
|
|
704
730
|
/**
|
|
705
731
|
* Divide this unit by another one
|
|
706
732
|
* @memberof Unit
|
|
707
|
-
* @param {Unit} other
|
|
733
|
+
* @param {Unit | numeric} other
|
|
708
734
|
* @return {Unit} result of dividing this unit by the other unit
|
|
709
735
|
*/
|
|
710
736
|
|
|
711
737
|
|
|
712
|
-
Unit.prototype.divide = function (
|
|
738
|
+
Unit.prototype.divide = function (_other) {
|
|
713
739
|
var res = this.clone();
|
|
740
|
+
var other = (0, _is.isUnit)(_other) ? _other : new Unit(_other);
|
|
714
741
|
|
|
715
742
|
for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
|
|
716
743
|
// Dimensions arrays may be of different lengths. Default to 0.
|
|
@@ -736,7 +763,10 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
736
763
|
res.value = null;
|
|
737
764
|
}
|
|
738
765
|
|
|
739
|
-
|
|
766
|
+
if ((0, _is.isUnit)(_other)) {
|
|
767
|
+
res.skipAutomaticSimplification = false;
|
|
768
|
+
}
|
|
769
|
+
|
|
740
770
|
return getNumericIfUnitless(res);
|
|
741
771
|
};
|
|
742
772
|
/**
|
|
@@ -805,7 +835,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
805
835
|
// To give the correct, but unexpected, results for units with an offset.
|
|
806
836
|
// For example, abs(-283.15 degC) = -263.15 degC !!!
|
|
807
837
|
// We must take the offset into consideration here
|
|
808
|
-
var convert =
|
|
838
|
+
var convert = ret._numberConverter(); // convert to Fraction or BigNumber if needed
|
|
809
839
|
|
|
810
840
|
|
|
811
841
|
var unitValue = convert(ret.units[0].unit.value);
|
|
@@ -1939,9 +1969,9 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
1939
1969
|
}
|
|
1940
1970
|
}
|
|
1941
1971
|
};
|
|
1942
|
-
PREFIXES.SHORTLONG = (0, _extends2
|
|
1943
|
-
PREFIXES.BINARY_SHORT = (0, _extends2
|
|
1944
|
-
PREFIXES.BINARY_LONG = (0, _extends2
|
|
1972
|
+
PREFIXES.SHORTLONG = (0, _extends2["default"])({}, PREFIXES.SHORT, PREFIXES.LONG);
|
|
1973
|
+
PREFIXES.BINARY_SHORT = (0, _extends2["default"])({}, PREFIXES.BINARY_SHORT_SI, PREFIXES.BINARY_SHORT_IEC);
|
|
1974
|
+
PREFIXES.BINARY_LONG = (0, _extends2["default"])({}, PREFIXES.BINARY_LONG_SI, PREFIXES.BINARY_LONG_IEC);
|
|
1945
1975
|
/* Internally, each unit is represented by a value and a dimension array. The elements of the dimensions array have the following meaning:
|
|
1946
1976
|
* Index Dimension
|
|
1947
1977
|
* ----- ---------
|
|
@@ -2125,7 +2155,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
2125
2155
|
value: 1,
|
|
2126
2156
|
offset: 0
|
|
2127
2157
|
},
|
|
2128
|
-
in: {
|
|
2158
|
+
"in": {
|
|
2129
2159
|
name: 'in',
|
|
2130
2160
|
base: BASE_UNITS.LENGTH,
|
|
2131
2161
|
prefixes: PREFIXES.NONE,
|
|
@@ -3389,7 +3419,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
3389
3419
|
electronvolts: 'electronvolt',
|
|
3390
3420
|
moles: 'mole',
|
|
3391
3421
|
bit: 'bits',
|
|
3392
|
-
byte: 'bytes'
|
|
3422
|
+
"byte": 'bytes'
|
|
3393
3423
|
};
|
|
3394
3424
|
/**
|
|
3395
3425
|
* Calculate the values for the angle units.
|
|
@@ -3647,6 +3677,23 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
3647
3677
|
return x;
|
|
3648
3678
|
}
|
|
3649
3679
|
};
|
|
3680
|
+
/**
|
|
3681
|
+
* Retrieve the right converter function corresponding with this unit's
|
|
3682
|
+
* value
|
|
3683
|
+
*
|
|
3684
|
+
* @memberof Unit
|
|
3685
|
+
* @return {Function}
|
|
3686
|
+
*/
|
|
3687
|
+
|
|
3688
|
+
Unit.prototype._numberConverter = function () {
|
|
3689
|
+
var convert = Unit.typeConverters[this.valueType()];
|
|
3690
|
+
|
|
3691
|
+
if (convert) {
|
|
3692
|
+
return convert;
|
|
3693
|
+
}
|
|
3694
|
+
|
|
3695
|
+
throw new TypeError('Unsupported Unit value type "' + this.valueType() + '"');
|
|
3696
|
+
};
|
|
3650
3697
|
/**
|
|
3651
3698
|
* Retrieve the right convertor function corresponding with the type
|
|
3652
3699
|
* of provided exampleValue.
|
|
@@ -3656,6 +3703,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
3656
3703
|
* @return {Function}
|
|
3657
3704
|
*/
|
|
3658
3705
|
|
|
3706
|
+
|
|
3659
3707
|
Unit._getNumberConverter = function (type) {
|
|
3660
3708
|
if (!Unit.typeConverters[type]) {
|
|
3661
3709
|
throw new TypeError('Unsupported type "' + type + '"');
|
|
@@ -3733,7 +3781,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
3733
3781
|
|
|
3734
3782
|
|
|
3735
3783
|
Unit.createUnit = function (obj, options) {
|
|
3736
|
-
if ((0, _typeof2
|
|
3784
|
+
if ((0, _typeof2["default"])(obj) !== 'object') {
|
|
3737
3785
|
throw new TypeError("createUnit expects first parameter to be of type 'Object'");
|
|
3738
3786
|
} // Remove all units and aliases we are overriding
|
|
3739
3787
|
|
|
@@ -3823,7 +3871,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
3823
3871
|
if (obj !== '') {
|
|
3824
3872
|
definition = obj;
|
|
3825
3873
|
}
|
|
3826
|
-
} else if ((0, _typeof2
|
|
3874
|
+
} else if ((0, _typeof2["default"])(obj) === 'object') {
|
|
3827
3875
|
definition = obj.definition;
|
|
3828
3876
|
prefixes = obj.prefixes;
|
|
3829
3877
|
offset = obj.offset;
|
|
@@ -40,9 +40,10 @@ var createCreateUnit = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
40
40
|
* math.createUnit('foo')
|
|
41
41
|
* math.createUnit('knot', {definition: '0.514444444 m/s', aliases: ['knots', 'kt', 'kts']})
|
|
42
42
|
* math.createUnit('mph', '1 mile/hour')
|
|
43
|
+
* math.createUnit('km', math.unit(1000, 'm'))
|
|
43
44
|
*
|
|
44
45
|
* @param {string} name The name of the new unit. Must be unique. Example: 'knot'
|
|
45
|
-
* @param {string, Unit} definition Definition of the unit in terms of existing units. For example, '0.514444444 m / s'.
|
|
46
|
+
* @param {string, UnitDefinition, Unit} definition Definition of the unit in terms of existing units. For example, '0.514444444 m / s'.
|
|
46
47
|
* @param {Object} options (optional) An object containing any of the following properties:
|
|
47
48
|
* - `prefixes {string}` "none", "short", "long", "binary_short", or "binary_long". The default is "none".
|
|
48
49
|
* - `aliases {Array}` Array of strings. Example: ['knots', 'kt', 'kts']
|
|
@@ -55,9 +55,15 @@ var createUnitFunction = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
55
55
|
'number | BigNumber | Fraction | Complex, string': function numberBigNumberFractionComplexString(value, unit) {
|
|
56
56
|
return new Unit(value, unit);
|
|
57
57
|
},
|
|
58
|
-
'
|
|
59
|
-
|
|
60
|
-
|
|
58
|
+
'number | BigNumber | Fraction': function numberBigNumberFraction(value) {
|
|
59
|
+
// dimensionless
|
|
60
|
+
return new Unit(value);
|
|
61
|
+
},
|
|
62
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
63
|
+
return function (x) {
|
|
64
|
+
return (0, _collection.deepMap)(x, self);
|
|
65
|
+
};
|
|
66
|
+
})
|
|
61
67
|
});
|
|
62
68
|
});
|
|
63
69
|
exports.createUnitFunction = createUnitFunction;
|
package/lib/cjs/utils/customs.js
CHANGED
|
@@ -78,7 +78,7 @@ function hasSafeProperty(object, prop) {
|
|
|
78
78
|
|
|
79
79
|
|
|
80
80
|
function isSafeProperty(object, prop) {
|
|
81
|
-
if (!object || (0, _typeof2
|
|
81
|
+
if (!object || (0, _typeof2["default"])(object) !== 'object') {
|
|
82
82
|
return false;
|
|
83
83
|
} // SAFE: whitelisted
|
|
84
84
|
// e.g length
|
|
@@ -171,7 +171,7 @@ function isSafeMethod(object, method) {
|
|
|
171
171
|
}
|
|
172
172
|
|
|
173
173
|
function isPlainObject(object) {
|
|
174
|
-
return (0, _typeof2
|
|
174
|
+
return (0, _typeof2["default"])(object) === 'object' && object && object.constructor === Object;
|
|
175
175
|
}
|
|
176
176
|
|
|
177
177
|
var safeNativeProperties = {
|
package/lib/cjs/utils/emitter.js
CHANGED
|
@@ -16,7 +16,7 @@ var _tinyEmitter = _interopRequireDefault(require("tiny-emitter"));
|
|
|
16
16
|
*/
|
|
17
17
|
function mixin(obj) {
|
|
18
18
|
// create event emitter
|
|
19
|
-
var emitter = new _tinyEmitter
|
|
19
|
+
var emitter = new _tinyEmitter["default"](); // bind methods to obj (we don't want to expose the emitter.e Array...)
|
|
20
20
|
|
|
21
21
|
obj.on = emitter.on.bind(emitter);
|
|
22
22
|
obj.off = emitter.off.bind(emitter);
|
|
@@ -38,7 +38,7 @@ function memoize(fn) {
|
|
|
38
38
|
limit = limit == null ? Number.POSITIVE_INFINITY : limit;
|
|
39
39
|
hasher = hasher == null ? JSON.stringify : hasher;
|
|
40
40
|
return function memoize() {
|
|
41
|
-
if ((0, _typeof2
|
|
41
|
+
if ((0, _typeof2["default"])(memoize.cache) !== 'object') {
|
|
42
42
|
memoize.cache = {
|
|
43
43
|
values: new Map(),
|
|
44
44
|
lru: (0, _lruQueue.lruQueue)(limit || Number.POSITIVE_INFINITY)
|
|
@@ -60,7 +60,7 @@ function memoize(fn) {
|
|
|
60
60
|
|
|
61
61
|
var newVal = fn.apply(fn, args);
|
|
62
62
|
memoize.cache.values.set(hash, newVal);
|
|
63
|
-
memoize.cache.values
|
|
63
|
+
memoize.cache.values["delete"](memoize.cache.lru.hit(hash));
|
|
64
64
|
return newVal;
|
|
65
65
|
};
|
|
66
66
|
}
|
package/lib/cjs/utils/is.js
CHANGED
|
@@ -43,6 +43,7 @@ exports.isString = isString;
|
|
|
43
43
|
exports.isSymbolNode = isSymbolNode;
|
|
44
44
|
exports.isUndefined = isUndefined;
|
|
45
45
|
exports.isUnit = isUnit;
|
|
46
|
+
exports.rule2Node = rule2Node;
|
|
46
47
|
exports.typeOf = typeOf;
|
|
47
48
|
|
|
48
49
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
@@ -65,11 +66,11 @@ function isNumber(x) {
|
|
|
65
66
|
}
|
|
66
67
|
|
|
67
68
|
function isBigNumber(x) {
|
|
68
|
-
if (!x || (0, _typeof2
|
|
69
|
+
if (!x || (0, _typeof2["default"])(x) !== 'object' || typeof x.constructor !== 'function') {
|
|
69
70
|
return false;
|
|
70
71
|
}
|
|
71
72
|
|
|
72
|
-
if (x.isBigNumber === true && (0, _typeof2
|
|
73
|
+
if (x.isBigNumber === true && (0, _typeof2["default"])(x.constructor.prototype) === 'object' && x.constructor.prototype.isBigNumber === true) {
|
|
73
74
|
return true;
|
|
74
75
|
}
|
|
75
76
|
|
|
@@ -81,11 +82,11 @@ function isBigNumber(x) {
|
|
|
81
82
|
}
|
|
82
83
|
|
|
83
84
|
function isComplex(x) {
|
|
84
|
-
return x && (0, _typeof2
|
|
85
|
+
return x && (0, _typeof2["default"])(x) === 'object' && Object.getPrototypeOf(x).isComplex === true || false;
|
|
85
86
|
}
|
|
86
87
|
|
|
87
88
|
function isFraction(x) {
|
|
88
|
-
return x && (0, _typeof2
|
|
89
|
+
return x && (0, _typeof2["default"])(x) === 'object' && Object.getPrototypeOf(x).isFraction === true || false;
|
|
89
90
|
}
|
|
90
91
|
|
|
91
92
|
function isUnit(x) {
|
|
@@ -154,7 +155,7 @@ function isRegExp(x) {
|
|
|
154
155
|
}
|
|
155
156
|
|
|
156
157
|
function isObject(x) {
|
|
157
|
-
return !!(x && (0, _typeof2
|
|
158
|
+
return !!(x && (0, _typeof2["default"])(x) === 'object' && x.constructor === Object && !isComplex(x) && !isFraction(x));
|
|
158
159
|
}
|
|
159
160
|
|
|
160
161
|
function isNull(x) {
|
|
@@ -188,6 +189,21 @@ function isConditionalNode(x) {
|
|
|
188
189
|
function isConstantNode(x) {
|
|
189
190
|
return x && x.isConstantNode === true && x.constructor.prototype.isNode === true || false;
|
|
190
191
|
}
|
|
192
|
+
/* Very specialized: returns true for those nodes which in the numerator of
|
|
193
|
+
a fraction means that the division in that fraction has precedence over implicit
|
|
194
|
+
multiplication, e.g. -2/3 x parses as (-2/3) x and 3/4 x parses as (3/4) x but
|
|
195
|
+
6!/8 x parses as 6! / (8x). It is located here because it is shared between
|
|
196
|
+
parse.js and OperatorNode.js (for parsing and printing, respectively).
|
|
197
|
+
|
|
198
|
+
This should *not* be exported from mathjs, unlike most of the tests here.
|
|
199
|
+
Its name does not start with 'is' to prevent utils/snapshot.js from thinking
|
|
200
|
+
it should be exported.
|
|
201
|
+
*/
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
function rule2Node(node) {
|
|
205
|
+
return isConstantNode(node) || isOperatorNode(node) && node.args.length === 1 && isConstantNode(node.args[0]) && '-+~'.includes(node.op);
|
|
206
|
+
}
|
|
191
207
|
|
|
192
208
|
function isFunctionAssignmentNode(x) {
|
|
193
209
|
return x && x.isFunctionAssignmentNode === true && x.constructor.prototype.isNode === true || false;
|
|
@@ -230,29 +246,15 @@ function isChain(x) {
|
|
|
230
246
|
}
|
|
231
247
|
|
|
232
248
|
function typeOf(x) {
|
|
233
|
-
var t = (0, _typeof2
|
|
249
|
+
var t = (0, _typeof2["default"])(x);
|
|
234
250
|
|
|
235
251
|
if (t === 'object') {
|
|
236
|
-
// JavaScript types
|
|
237
252
|
if (x === null) return 'null';
|
|
238
|
-
if (
|
|
239
|
-
|
|
240
|
-
if (x
|
|
241
|
-
|
|
242
|
-
if (isBigNumber(x)) return 'BigNumber';
|
|
243
|
-
if (isComplex(x)) return 'Complex';
|
|
244
|
-
if (isFraction(x)) return 'Fraction';
|
|
245
|
-
if (isMatrix(x)) return 'Matrix';
|
|
246
|
-
if (isUnit(x)) return 'Unit';
|
|
247
|
-
if (isIndex(x)) return 'Index';
|
|
248
|
-
if (isRange(x)) return 'Range';
|
|
249
|
-
if (isResultSet(x)) return 'ResultSet';
|
|
250
|
-
if (isNode(x)) return x.type;
|
|
251
|
-
if (isChain(x)) return 'Chain';
|
|
252
|
-
if (isHelp(x)) return 'Help';
|
|
253
|
-
return 'Object';
|
|
253
|
+
if (isBigNumber(x)) return 'BigNumber'; // Special: weird mashup with Decimal
|
|
254
|
+
|
|
255
|
+
if (x.constructor && x.constructor.name) return x.constructor.name;
|
|
256
|
+
return 'Object'; // just in case
|
|
254
257
|
}
|
|
255
258
|
|
|
256
|
-
|
|
257
|
-
return t; // can be 'string', 'number', 'boolean', ...
|
|
259
|
+
return t; // can be 'string', 'number', 'boolean', 'function', 'bigint', ...
|
|
258
260
|
}
|
package/lib/cjs/utils/latex.js
CHANGED
|
@@ -73,8 +73,8 @@ var latexSymbols = {
|
|
|
73
73
|
Omega: '\\Omega',
|
|
74
74
|
omega: '\\omega',
|
|
75
75
|
// logic
|
|
76
|
-
true: '\\mathrm{True}',
|
|
77
|
-
false: '\\mathrm{False}',
|
|
76
|
+
"true": '\\mathrm{True}',
|
|
77
|
+
"false": '\\mathrm{False}',
|
|
78
78
|
// other
|
|
79
79
|
i: 'i',
|
|
80
80
|
// TODO use \i ??
|
|
@@ -481,7 +481,7 @@ var latexUnits = {
|
|
|
481
481
|
};
|
|
482
482
|
|
|
483
483
|
function escapeLatex(string) {
|
|
484
|
-
return (0, _escapeLatex
|
|
484
|
+
return (0, _escapeLatex["default"])(string, {
|
|
485
485
|
preserveFormatting: true
|
|
486
486
|
});
|
|
487
487
|
} // @param {string} name
|
package/lib/cjs/utils/map.js
CHANGED
|
@@ -20,7 +20,7 @@ var _customs = require("./customs.js");
|
|
|
20
20
|
|
|
21
21
|
var _is = require("./is.js");
|
|
22
22
|
|
|
23
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it
|
|
23
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
24
24
|
|
|
25
25
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
26
26
|
|
|
@@ -36,11 +36,11 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
|
|
|
36
36
|
*/
|
|
37
37
|
var ObjectWrappingMap = /*#__PURE__*/function () {
|
|
38
38
|
function ObjectWrappingMap(object) {
|
|
39
|
-
(0, _classCallCheck2
|
|
39
|
+
(0, _classCallCheck2["default"])(this, ObjectWrappingMap);
|
|
40
40
|
this.wrappedObject = object;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
(0, _createClass2
|
|
43
|
+
(0, _createClass2["default"])(ObjectWrappingMap, [{
|
|
44
44
|
key: "keys",
|
|
45
45
|
value: function keys() {
|
|
46
46
|
return Object.keys(this.wrappedObject);
|
package/lib/cjs/utils/object.js
CHANGED
|
@@ -38,7 +38,7 @@ var _is = require("./is.js");
|
|
|
38
38
|
* @return {*} clone
|
|
39
39
|
*/
|
|
40
40
|
function clone(x) {
|
|
41
|
-
var type = (0, _typeof2
|
|
41
|
+
var type = (0, _typeof2["default"])(x); // immutable primitive types
|
|
42
42
|
|
|
43
43
|
if (type === 'number' || type === 'string' || type === 'boolean' || x === null || x === undefined) {
|
|
44
44
|
return x;
|
|
@@ -213,7 +213,7 @@ function _deepFlatten(nestedObject, flattenedObject) {
|
|
|
213
213
|
if (hasOwnProperty(nestedObject, prop)) {
|
|
214
214
|
var value = nestedObject[prop];
|
|
215
215
|
|
|
216
|
-
if ((0, _typeof2
|
|
216
|
+
if ((0, _typeof2["default"])(value) === 'object' && value !== null) {
|
|
217
217
|
_deepFlatten(value, flattenedObject);
|
|
218
218
|
} else {
|
|
219
219
|
flattenedObject[prop] = value;
|
|
@@ -2,19 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
6
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
10
|
exports.createSnapshotFromFactories = createSnapshotFromFactories;
|
|
11
11
|
exports.validateBundle = validateBundle;
|
|
12
|
-
exports.validateTypeOf =
|
|
12
|
+
exports.validateTypeOf = void 0;
|
|
13
13
|
|
|
14
14
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
15
15
|
|
|
16
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
17
|
-
|
|
18
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
19
17
|
|
|
20
18
|
var _assert = _interopRequireDefault(require("assert"));
|
|
@@ -27,11 +25,14 @@ var _string = require("./string.js");
|
|
|
27
25
|
|
|
28
26
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
29
27
|
|
|
30
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null ||
|
|
28
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
29
|
|
|
32
30
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
33
31
|
|
|
34
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2
|
|
32
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
33
|
+
|
|
34
|
+
var validateTypeOf = allIsFunctions.typeOf;
|
|
35
|
+
exports.validateTypeOf = validateTypeOf;
|
|
35
36
|
|
|
36
37
|
function validateBundle(expectedBundleStructure, bundle) {
|
|
37
38
|
var originalWarn = console.warn;
|
|
@@ -101,7 +102,7 @@ function validateBundle(expectedBundleStructure, bundle) {
|
|
|
101
102
|
message = _issues$.message;
|
|
102
103
|
console.warn("".concat(issues.length, " bundle issues found"));
|
|
103
104
|
|
|
104
|
-
_assert
|
|
105
|
+
_assert["default"].strictEqual(actualType, expectedType, message);
|
|
105
106
|
}
|
|
106
107
|
} finally {
|
|
107
108
|
console.warn = originalWarn;
|
|
@@ -128,21 +129,21 @@ function createSnapshotFromFactories(factories) {
|
|
|
128
129
|
var factory = factories[factoryName];
|
|
129
130
|
var name = factory.fn;
|
|
130
131
|
var isTransformFunction = factory.meta && factory.meta.isTransformFunction;
|
|
131
|
-
var isClass = !isLowerCase(name[0]) && validateTypeOf(math[name]) === '
|
|
132
|
+
var isClass = !isLowerCase(name[0]) && validateTypeOf(math[name]) === 'function';
|
|
132
133
|
var dependenciesName = factory.fn + (isTransformFunction ? 'Transform' : '') + 'Dependencies';
|
|
133
|
-
allFactoryFunctions[factoryName] = '
|
|
134
|
+
allFactoryFunctions[factoryName] = 'function';
|
|
134
135
|
allFunctionsConstantsClasses[name] = validateTypeOf(math[name]);
|
|
135
136
|
allDependencyCollections[dependenciesName] = 'Object';
|
|
136
137
|
|
|
137
138
|
if (isTransformFunction) {
|
|
138
|
-
allTransformFunctions[name] = '
|
|
139
|
+
allTransformFunctions[name] = 'function';
|
|
139
140
|
}
|
|
140
141
|
|
|
141
142
|
if (isClass) {
|
|
142
143
|
if ((0, _string.endsWith)(name, 'Node')) {
|
|
143
|
-
allNodeClasses[name] = '
|
|
144
|
+
allNodeClasses[name] = 'function';
|
|
144
145
|
} else {
|
|
145
|
-
allClasses[name] = '
|
|
146
|
+
allClasses[name] = 'function';
|
|
146
147
|
}
|
|
147
148
|
} else {
|
|
148
149
|
allFunctionsConstants[name] = validateTypeOf(math[name]);
|
|
@@ -162,37 +163,37 @@ function createSnapshotFromFactories(factories) {
|
|
|
162
163
|
var allTypeChecks = {};
|
|
163
164
|
Object.keys(allIsFunctions).forEach(function (name) {
|
|
164
165
|
if (name.indexOf('is') === 0) {
|
|
165
|
-
allTypeChecks[name] = '
|
|
166
|
+
allTypeChecks[name] = 'function';
|
|
166
167
|
}
|
|
167
168
|
});
|
|
168
169
|
var allErrorClasses = {
|
|
169
|
-
ArgumentsError: '
|
|
170
|
-
DimensionError: '
|
|
171
|
-
IndexError: '
|
|
170
|
+
ArgumentsError: 'function',
|
|
171
|
+
DimensionError: 'function',
|
|
172
|
+
IndexError: 'function'
|
|
172
173
|
};
|
|
173
174
|
|
|
174
175
|
var expectedInstanceStructure = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, allFunctionsConstantsClasses), {}, {
|
|
175
|
-
on: '
|
|
176
|
-
off: '
|
|
177
|
-
once: '
|
|
178
|
-
emit: '
|
|
179
|
-
import: '
|
|
180
|
-
config: '
|
|
181
|
-
create: '
|
|
182
|
-
factory: '
|
|
176
|
+
on: 'function',
|
|
177
|
+
off: 'function',
|
|
178
|
+
once: 'function',
|
|
179
|
+
emit: 'function',
|
|
180
|
+
"import": 'function',
|
|
181
|
+
config: 'function',
|
|
182
|
+
create: 'function',
|
|
183
|
+
factory: 'function'
|
|
183
184
|
}, allTypeChecks), allErrorClasses), {}, {
|
|
184
185
|
expression: {
|
|
185
186
|
transform: _objectSpread({}, allTransformFunctions),
|
|
186
187
|
mathWithTransform: _objectSpread(_objectSpread({}, exclude(allFunctionsConstants, ['chain'])), {}, {
|
|
187
|
-
config: '
|
|
188
|
+
config: 'function'
|
|
188
189
|
})
|
|
189
190
|
}
|
|
190
191
|
});
|
|
191
192
|
|
|
192
193
|
var expectedES6Structure = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, exclude(allFunctionsConstantsClasses, ['E', 'false', 'Infinity', 'NaN', 'null', 'PI', 'true'])), {}, {
|
|
193
|
-
create: '
|
|
194
|
-
config: '
|
|
195
|
-
factory: '
|
|
194
|
+
create: 'function',
|
|
195
|
+
config: 'function',
|
|
196
|
+
factory: 'function',
|
|
196
197
|
_true: 'boolean',
|
|
197
198
|
_false: 'boolean',
|
|
198
199
|
_null: 'null',
|
|
@@ -208,34 +209,6 @@ function createSnapshotFromFactories(factories) {
|
|
|
208
209
|
};
|
|
209
210
|
}
|
|
210
211
|
|
|
211
|
-
function validateTypeOf(x) {
|
|
212
|
-
if (x && x.type === 'Unit') {
|
|
213
|
-
return 'Unit';
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
if (x && x.type === 'Complex') {
|
|
217
|
-
return 'Complex';
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
if (Array.isArray(x)) {
|
|
221
|
-
return 'Array';
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
if (x === null) {
|
|
225
|
-
return 'null';
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
if (typeof x === 'function') {
|
|
229
|
-
return 'Function';
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
if ((0, _typeof2.default)(x) === 'object') {
|
|
233
|
-
return 'Object';
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
return (0, _typeof2.default)(x);
|
|
237
|
-
}
|
|
238
|
-
|
|
239
212
|
function traverse(obj) {
|
|
240
213
|
var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (value, path) {};
|
|
241
214
|
var path = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
@@ -283,7 +256,7 @@ function get(object, path) {
|
|
|
283
256
|
|
|
284
257
|
|
|
285
258
|
function exclude(object, excludedProperties) {
|
|
286
|
-
var strippedObject = (0, _extends2
|
|
259
|
+
var strippedObject = (0, _extends2["default"])({}, object);
|
|
287
260
|
excludedProperties.forEach(function (excludedProperty) {
|
|
288
261
|
delete strippedObject[excludedProperty];
|
|
289
262
|
});
|