@cortex-js/compute-engine 0.57.0 → 0.58.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/dist/compile.esm.js +690 -53
- package/dist/compile.min.esm.js +251 -51
- package/dist/compile.min.umd.cjs +251 -51
- package/dist/compile.umd.cjs +690 -53
- package/dist/compute-engine.esm.js +1079 -132
- package/dist/compute-engine.min.esm.js +271 -71
- package/dist/compute-engine.min.umd.cjs +270 -70
- package/dist/compute-engine.umd.cjs +1079 -132
- package/dist/core.esm.js +1078 -131
- package/dist/core.min.esm.js +269 -69
- package/dist/core.min.umd.cjs +269 -69
- package/dist/core.umd.cjs +1078 -131
- package/dist/interval.esm.js +132 -15
- package/dist/interval.min.esm.js +6 -6
- package/dist/interval.min.umd.cjs +6 -6
- package/dist/interval.umd.cjs +132 -15
- package/dist/latex-syntax.esm.js +132 -15
- package/dist/latex-syntax.min.esm.js +6 -6
- package/dist/latex-syntax.min.umd.cjs +6 -6
- package/dist/latex-syntax.umd.cjs +132 -15
- package/dist/math-json.esm.js +2 -2
- package/dist/math-json.min.esm.js +2 -2
- package/dist/math-json.min.umd.cjs +2 -2
- package/dist/math-json.umd.cjs +2 -2
- package/dist/numerics.esm.js +38 -3
- package/dist/numerics.min.esm.js +3 -3
- package/dist/numerics.min.umd.cjs +4 -4
- package/dist/numerics.umd.cjs +38 -3
- package/dist/types/big-decimal/big-decimal.d.ts +1 -1
- package/dist/types/big-decimal/index.d.ts +1 -1
- package/dist/types/big-decimal/transcendentals.d.ts +1 -1
- package/dist/types/big-decimal/utils.d.ts +1 -1
- package/dist/types/common/ansi-codes.d.ts +1 -1
- package/dist/types/common/configuration-change.d.ts +1 -1
- package/dist/types/common/fuzzy-string-match.d.ts +1 -1
- package/dist/types/common/grapheme-splitter.d.ts +1 -1
- package/dist/types/common/interruptible.d.ts +1 -1
- package/dist/types/common/one-of.d.ts +1 -1
- package/dist/types/common/signals.d.ts +1 -1
- package/dist/types/common/type/ast-nodes.d.ts +1 -1
- package/dist/types/common/type/boxed-type.d.ts +1 -1
- package/dist/types/common/type/lexer.d.ts +1 -1
- package/dist/types/common/type/parse.d.ts +1 -1
- package/dist/types/common/type/parser.d.ts +1 -1
- package/dist/types/common/type/primitive.d.ts +1 -1
- package/dist/types/common/type/reduce.d.ts +1 -1
- package/dist/types/common/type/serialize.d.ts +1 -1
- package/dist/types/common/type/subtype.d.ts +1 -1
- package/dist/types/common/type/type-builder.d.ts +1 -1
- package/dist/types/common/type/types.d.ts +1 -1
- package/dist/types/common/type/utils.d.ts +1 -1
- package/dist/types/common/utils.d.ts +1 -1
- package/dist/types/compile.d.ts +1 -1
- package/dist/types/compute-engine/assume.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/abstract-boxed-expression.d.ts +3 -1
- package/dist/types/compute-engine/boxed-expression/apply.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-add.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-mul-div.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-power.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/ascii-math.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/box.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-dictionary.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-function.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-number.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-operator-definition.d.ts +7 -1
- package/dist/types/compute-engine/boxed-expression/boxed-patterns.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-string.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-symbol.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-tensor.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-value-definition.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/cache.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/canonical-utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/canonical.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/compare.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/constants.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/expand.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/expression-map.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/factor.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/flatten.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/hold.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/inequality-bounds.d.ts +22 -10
- package/dist/types/compute-engine/boxed-expression/init-lazy-refs.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/invisible-operator.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/match.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/negate.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/numerics.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/order.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/pattern-utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/polynomial-degree.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/polynomials.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/predicates.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/rules.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/serialize.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/sgn.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/simplify.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/solve-linear-system.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/solve.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/stochastic-equal.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/type-guards.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/validate.d.ts +1 -1
- package/dist/types/compute-engine/collection-utils.d.ts +1 -1
- package/dist/types/compute-engine/compilation/base-compiler.d.ts +8 -1
- package/dist/types/compute-engine/compilation/compile-expression.d.ts +1 -1
- package/dist/types/compute-engine/compilation/constant-folding.d.ts +1 -1
- package/dist/types/compute-engine/compilation/glsl-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/gpu-target.d.ts +44 -1
- package/dist/types/compute-engine/compilation/interval-javascript-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/javascript-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/python-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/types.d.ts +1 -1
- package/dist/types/compute-engine/compilation/wgsl-target.d.ts +1 -1
- package/dist/types/compute-engine/cost-function.d.ts +1 -1
- package/dist/types/compute-engine/engine-assumptions.d.ts +1 -1
- package/dist/types/compute-engine/engine-cache.d.ts +1 -1
- package/dist/types/compute-engine/engine-common-symbols.d.ts +1 -1
- package/dist/types/compute-engine/engine-compilation-targets.d.ts +1 -1
- package/dist/types/compute-engine/engine-configuration-lifecycle.d.ts +1 -1
- package/dist/types/compute-engine/engine-declarations.d.ts +1 -1
- package/dist/types/compute-engine/engine-expression-entrypoints.d.ts +1 -1
- package/dist/types/compute-engine/engine-extension-contracts.d.ts +1 -1
- package/dist/types/compute-engine/engine-library-bootstrap.d.ts +1 -1
- package/dist/types/compute-engine/engine-numeric-configuration.d.ts +1 -1
- package/dist/types/compute-engine/engine-runtime-state.d.ts +4 -1
- package/dist/types/compute-engine/engine-scope.d.ts +1 -1
- package/dist/types/compute-engine/engine-sequences.d.ts +1 -1
- package/dist/types/compute-engine/engine-simplification-rules.d.ts +1 -1
- package/dist/types/compute-engine/engine-startup-coordinator.d.ts +1 -1
- package/dist/types/compute-engine/engine-type-resolver.d.ts +1 -1
- package/dist/types/compute-engine/engine-validation-entrypoints.d.ts +1 -1
- package/dist/types/compute-engine/free-functions.d.ts +1 -1
- package/dist/types/compute-engine/function-utils.d.ts +1 -1
- package/dist/types/compute-engine/global-types.d.ts +1 -1
- package/dist/types/compute-engine/index.d.ts +17 -2
- package/dist/types/compute-engine/interval/arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/interval/comparison.d.ts +1 -1
- package/dist/types/compute-engine/interval/elementary.d.ts +1 -1
- package/dist/types/compute-engine/interval/index.d.ts +1 -1
- package/dist/types/compute-engine/interval/trigonometric.d.ts +1 -1
- package/dist/types/compute-engine/interval/types.d.ts +1 -1
- package/dist/types/compute-engine/interval/util.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/default-dictionary.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-algebra.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-calculus.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-colors.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-complex.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-core.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-linear-algebra.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-logic.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-other.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-relational-operators.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-sets.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-statistics.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-symbols.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-units.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/indexed-types.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/latex-syntax.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse-number.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse-symbol.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serialize-dms.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serialize-number.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serializer-style.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serializer.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/tokenizer.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/types.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/utils.d.ts +1 -1
- package/dist/types/compute-engine/library/arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/library/calculus.d.ts +1 -1
- package/dist/types/compute-engine/library/collections.d.ts +1 -1
- package/dist/types/compute-engine/library/colors.d.ts +1 -1
- package/dist/types/compute-engine/library/combinatorics.d.ts +1 -1
- package/dist/types/compute-engine/library/complex.d.ts +1 -1
- package/dist/types/compute-engine/library/control-structures.d.ts +1 -1
- package/dist/types/compute-engine/library/core.d.ts +1 -1
- package/dist/types/compute-engine/library/fractals.d.ts +1 -1
- package/dist/types/compute-engine/library/library.d.ts +1 -1
- package/dist/types/compute-engine/library/linear-algebra.d.ts +1 -1
- package/dist/types/compute-engine/library/logic-analysis.d.ts +1 -1
- package/dist/types/compute-engine/library/logic.d.ts +1 -1
- package/dist/types/compute-engine/library/number-theory.d.ts +1 -1
- package/dist/types/compute-engine/library/polynomials.d.ts +1 -1
- package/dist/types/compute-engine/library/quantity-arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/library/random-expression.d.ts +1 -1
- package/dist/types/compute-engine/library/relational-operator.d.ts +1 -1
- package/dist/types/compute-engine/library/sets.d.ts +1 -1
- package/dist/types/compute-engine/library/statistics.d.ts +1 -1
- package/dist/types/compute-engine/library/trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/library/type-handlers.d.ts +1 -1
- package/dist/types/compute-engine/library/unit-data.d.ts +1 -1
- package/dist/types/compute-engine/library/units.d.ts +1 -1
- package/dist/types/compute-engine/library/utils.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/big-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/exact-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/machine-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/types.d.ts +1 -1
- package/dist/types/compute-engine/numerics/bigint.d.ts +1 -1
- package/dist/types/compute-engine/numerics/expression.d.ts +1 -1
- package/dist/types/compute-engine/numerics/interval.d.ts +1 -1
- package/dist/types/compute-engine/numerics/linear-algebra.d.ts +1 -1
- package/dist/types/compute-engine/numerics/monte-carlo.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-bigint.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-bignum.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-complex.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric.d.ts +1 -1
- package/dist/types/compute-engine/numerics/primes.d.ts +1 -1
- package/dist/types/compute-engine/numerics/random.d.ts +23 -0
- package/dist/types/compute-engine/numerics/rationals.d.ts +1 -1
- package/dist/types/compute-engine/numerics/richardson.d.ts +1 -1
- package/dist/types/compute-engine/numerics/special-functions.d.ts +1 -1
- package/dist/types/compute-engine/numerics/statistics.d.ts +1 -1
- package/dist/types/compute-engine/numerics/strings.d.ts +1 -1
- package/dist/types/compute-engine/numerics/types.d.ts +1 -1
- package/dist/types/compute-engine/numerics/unit-data.d.ts +1 -1
- package/dist/types/compute-engine/oeis.d.ts +1 -1
- package/dist/types/compute-engine/sequence.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/antiderivative.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/derivative.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/distribute.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu-cost.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu-transforms.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/logic-utils.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-abs.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-divide.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-factorial.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-hyperbolic.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-infinity.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-log.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-logic.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-power.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-product.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-rules.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-sum.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-trig.d.ts +1 -1
- package/dist/types/compute-engine/tensor/tensor-fields.d.ts +1 -1
- package/dist/types/compute-engine/tensor/tensors.d.ts +1 -1
- package/dist/types/compute-engine/types-definitions.d.ts +1 -1
- package/dist/types/compute-engine/types-engine.d.ts +34 -1
- package/dist/types/compute-engine/types-evaluation.d.ts +1 -1
- package/dist/types/compute-engine/types-expression.d.ts +69 -1
- package/dist/types/compute-engine/types-kernel-evaluation.d.ts +1 -1
- package/dist/types/compute-engine/types-kernel-serialization.d.ts +1 -1
- package/dist/types/compute-engine/types-serialization.d.ts +1 -1
- package/dist/types/compute-engine/types.d.ts +1 -1
- package/dist/types/compute-engine.d.ts +1 -1
- package/dist/types/core.d.ts +1 -1
- package/dist/types/interval.d.ts +1 -1
- package/dist/types/latex-syntax.d.ts +2 -2
- package/dist/types/math-json/symbols.d.ts +1 -1
- package/dist/types/math-json/types.d.ts +1 -1
- package/dist/types/math-json/utils.d.ts +1 -1
- package/dist/types/math-json.d.ts +2 -2
- package/dist/types/numerics.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** LatexSyntax 0.
|
|
1
|
+
/** LatexSyntax 0.58.0 */
|
|
2
2
|
(function(global,factory){typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'],factory):(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.LatexSyntax = {}));})(this, (function (exports) { 'use strict';
|
|
3
3
|
var LatexSyntax = (() => {
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -3170,7 +3170,42 @@ var LatexSyntax = (() => {
|
|
|
3170
3170
|
if (b === "nothing") return a;
|
|
3171
3171
|
if (isSubtype(a, b)) return b;
|
|
3172
3172
|
if (isSubtype(b, a)) return a;
|
|
3173
|
-
|
|
3173
|
+
const sup = superType(a, b);
|
|
3174
|
+
if (LOSSY_SUPERTYPE.has(sup)) return unionTypes(a, b);
|
|
3175
|
+
return sup;
|
|
3176
|
+
}
|
|
3177
|
+
var LOSSY_SUPERTYPE = /* @__PURE__ */ new Set([
|
|
3178
|
+
"scalar",
|
|
3179
|
+
"value",
|
|
3180
|
+
"function",
|
|
3181
|
+
"expression",
|
|
3182
|
+
"collection",
|
|
3183
|
+
"indexed_collection",
|
|
3184
|
+
"list",
|
|
3185
|
+
"set",
|
|
3186
|
+
"tuple",
|
|
3187
|
+
"record",
|
|
3188
|
+
"dictionary",
|
|
3189
|
+
"map",
|
|
3190
|
+
"any"
|
|
3191
|
+
]);
|
|
3192
|
+
function unionTypes(a, b) {
|
|
3193
|
+
const members = [];
|
|
3194
|
+
const push = (t) => {
|
|
3195
|
+
if (typeof t === "object" && t.kind === "union") {
|
|
3196
|
+
for (const m of t.types) push(m);
|
|
3197
|
+
return;
|
|
3198
|
+
}
|
|
3199
|
+
const key = typeof t === "string" ? t : JSON.stringify(t);
|
|
3200
|
+
if (!members.some(
|
|
3201
|
+
(m) => (typeof m === "string" ? m : JSON.stringify(m)) === key
|
|
3202
|
+
))
|
|
3203
|
+
members.push(t);
|
|
3204
|
+
};
|
|
3205
|
+
push(a);
|
|
3206
|
+
push(b);
|
|
3207
|
+
if (members.length === 1) return members[0];
|
|
3208
|
+
return { kind: "union", types: members };
|
|
3174
3209
|
}
|
|
3175
3210
|
function narrow(...types) {
|
|
3176
3211
|
if (types.length === 0) return "nothing";
|
|
@@ -4058,15 +4093,16 @@ var LatexSyntax = (() => {
|
|
|
4058
4093
|
precedence: ASSIGNMENT_PRECEDENCE,
|
|
4059
4094
|
parse: parseAssign
|
|
4060
4095
|
},
|
|
4061
|
-
// General colon operator (type annotation, mapping notation)
|
|
4062
|
-
// Precedence below
|
|
4063
|
-
// and below arrows (270) so
|
|
4096
|
+
// General colon operator (type annotation, mapping notation, Desmos piecewise)
|
|
4097
|
+
// Precedence below comparisons (245) so `cond : val` (Desmos compact piecewise)
|
|
4098
|
+
// parses as `Colon(cond, val)`, and below arrows (270) so
|
|
4099
|
+
// `f: A \to B` parses as `Colon(f, To(A, B))`.
|
|
4064
4100
|
{
|
|
4065
4101
|
name: "Colon",
|
|
4066
4102
|
latexTrigger: ":",
|
|
4067
4103
|
kind: "infix",
|
|
4068
4104
|
associativity: "right",
|
|
4069
|
-
precedence:
|
|
4105
|
+
precedence: 240,
|
|
4070
4106
|
serialize: (serializer, expr) => joinLatex([
|
|
4071
4107
|
serializer.serialize(operand(expr, 1)),
|
|
4072
4108
|
"\\colon",
|
|
@@ -4077,7 +4113,7 @@ var LatexSyntax = (() => {
|
|
|
4077
4113
|
latexTrigger: "\\colon",
|
|
4078
4114
|
kind: "infix",
|
|
4079
4115
|
associativity: "right",
|
|
4080
|
-
precedence:
|
|
4116
|
+
precedence: 240,
|
|
4081
4117
|
parse: "Colon"
|
|
4082
4118
|
},
|
|
4083
4119
|
{
|
|
@@ -5647,7 +5683,10 @@ var LatexSyntax = (() => {
|
|
|
5647
5683
|
p.skipVisualSpace();
|
|
5648
5684
|
const isComma = p.peek === ",";
|
|
5649
5685
|
p.index = saved;
|
|
5650
|
-
return
|
|
5686
|
+
if (isComma) return true;
|
|
5687
|
+
if (peekKeyword(p, "where")) return true;
|
|
5688
|
+
if (peekKeyword(p, "with")) return true;
|
|
5689
|
+
return false;
|
|
5651
5690
|
}
|
|
5652
5691
|
};
|
|
5653
5692
|
const elements = [];
|
|
@@ -5688,6 +5727,25 @@ var LatexSyntax = (() => {
|
|
|
5688
5727
|
parser.skipVisualSpace();
|
|
5689
5728
|
} while (parser.match(","));
|
|
5690
5729
|
if (bindings.length === 0) return null;
|
|
5730
|
+
const forStart = parser.index;
|
|
5731
|
+
if (matchKeyword(parser, "for")) {
|
|
5732
|
+
const loop = parseForComprehension(parser, lhs, until);
|
|
5733
|
+
if (loop) {
|
|
5734
|
+
const block2 = [];
|
|
5735
|
+
for (const b of bindings) {
|
|
5736
|
+
const normalized = normalizeLocalAssign(b);
|
|
5737
|
+
if (operator(normalized) === "Assign") {
|
|
5738
|
+
block2.push(["Declare", operand(normalized, 1)]);
|
|
5739
|
+
block2.push(normalized);
|
|
5740
|
+
} else {
|
|
5741
|
+
block2.push(normalized);
|
|
5742
|
+
}
|
|
5743
|
+
}
|
|
5744
|
+
block2.push(loop);
|
|
5745
|
+
return ["Block", ...block2];
|
|
5746
|
+
}
|
|
5747
|
+
parser.index = forStart;
|
|
5748
|
+
}
|
|
5691
5749
|
const block = [];
|
|
5692
5750
|
for (const b of bindings) {
|
|
5693
5751
|
const normalized = normalizeLocalAssign(b);
|
|
@@ -5901,6 +5959,17 @@ var LatexSyntax = (() => {
|
|
|
5901
5959
|
const upperExpr = openRight ? ["Open", upper] : upper;
|
|
5902
5960
|
return ["Interval", lowerExpr, upperExpr];
|
|
5903
5961
|
}
|
|
5962
|
+
var COMPARISON_HEADS = /* @__PURE__ */ new Set([
|
|
5963
|
+
"Less",
|
|
5964
|
+
"LessEqual",
|
|
5965
|
+
"Greater",
|
|
5966
|
+
"GreaterEqual",
|
|
5967
|
+
"Equal",
|
|
5968
|
+
"NotEqual",
|
|
5969
|
+
"And",
|
|
5970
|
+
"Or",
|
|
5971
|
+
"Not"
|
|
5972
|
+
]);
|
|
5904
5973
|
var DEFINITIONS_SETS = [
|
|
5905
5974
|
//
|
|
5906
5975
|
// Constants
|
|
@@ -6159,18 +6228,58 @@ var LatexSyntax = (() => {
|
|
|
6159
6228
|
closeTrigger: "}",
|
|
6160
6229
|
parse: (_parser, body) => {
|
|
6161
6230
|
if (isEmptySequence(body)) return "EmptySet";
|
|
6231
|
+
if (operator(body) == "Delimiter" && stringValue(operand(body, 2)) === ",") {
|
|
6232
|
+
body = operand(body, 1);
|
|
6233
|
+
}
|
|
6162
6234
|
const h = operator(body);
|
|
6163
|
-
if (h === "Divides"
|
|
6235
|
+
if (h === "Divides") {
|
|
6164
6236
|
const expr = operand(body, 1);
|
|
6165
6237
|
const condition = operand(body, 2);
|
|
6166
6238
|
if (expr !== null && condition !== null)
|
|
6167
6239
|
return ["Set", expr, ["Condition", condition]];
|
|
6168
6240
|
}
|
|
6169
|
-
if (
|
|
6170
|
-
|
|
6241
|
+
if (h === "Colon") {
|
|
6242
|
+
const lhs = operand(body, 1);
|
|
6243
|
+
const rhs = operand(body, 2);
|
|
6244
|
+
if (lhs !== null && rhs !== null) {
|
|
6245
|
+
const lhsOp = operator(lhs);
|
|
6246
|
+
if (lhsOp !== null && COMPARISON_HEADS.has(lhsOp)) {
|
|
6247
|
+
return ["Which", lhs, rhs];
|
|
6248
|
+
}
|
|
6249
|
+
return ["Set", lhs, ["Condition", rhs]];
|
|
6250
|
+
}
|
|
6251
|
+
}
|
|
6252
|
+
if (h === "Sequence") {
|
|
6253
|
+
const elements = operands(body);
|
|
6254
|
+
const colonElements = elements.filter((el) => operator(el) === "Colon");
|
|
6255
|
+
const allPiecewise = colonElements.length > 0 && colonElements.every((el) => {
|
|
6256
|
+
const lhs = operand(el, 1);
|
|
6257
|
+
const lhsOp = lhs !== null ? operator(lhs) : null;
|
|
6258
|
+
return lhsOp !== null && COMPARISON_HEADS.has(lhsOp);
|
|
6259
|
+
});
|
|
6260
|
+
if (allPiecewise) {
|
|
6261
|
+
const whichOps = [];
|
|
6262
|
+
for (let i = 0; i < elements.length; i++) {
|
|
6263
|
+
const el = elements[i];
|
|
6264
|
+
if (operator(el) === "Colon") {
|
|
6265
|
+
const cond = operand(el, 1);
|
|
6266
|
+
const val = operand(el, 2);
|
|
6267
|
+
if (cond === null || val === null) {
|
|
6268
|
+
return ["Set", ...elements];
|
|
6269
|
+
}
|
|
6270
|
+
whichOps.push(cond, val);
|
|
6271
|
+
} else {
|
|
6272
|
+
if (i !== elements.length - 1) {
|
|
6273
|
+
return ["Set", ...elements];
|
|
6274
|
+
}
|
|
6275
|
+
whichOps.push("True", el);
|
|
6276
|
+
}
|
|
6277
|
+
}
|
|
6278
|
+
return ["Which", ...whichOps];
|
|
6279
|
+
}
|
|
6280
|
+
return ["Set", ...elements];
|
|
6171
6281
|
}
|
|
6172
|
-
|
|
6173
|
-
return ["Set", ...operands(body)];
|
|
6282
|
+
return ["Set", body];
|
|
6174
6283
|
},
|
|
6175
6284
|
serialize: (serializer, expr) => {
|
|
6176
6285
|
if (nops(expr) === 2 && operator(operand(expr, 2)) === "Condition") {
|
|
@@ -8174,7 +8283,8 @@ var LatexSyntax = (() => {
|
|
|
8174
8283
|
minPrec: MULTIPLICATION_PRECEDENCE,
|
|
8175
8284
|
condition: (parser2) => trigCommands[parser2.peek] || (until?.condition?.(parser2) ?? false)
|
|
8176
8285
|
});
|
|
8177
|
-
const
|
|
8286
|
+
const head = fn === "Arctan" && args?.length === 2 ? "Arctan2" : fn;
|
|
8287
|
+
const appliedFn = args === null ? fn : typeof head === "string" ? [head, ...args] : ["Apply", head, ...args];
|
|
8178
8288
|
return sup === null ? appliedFn : ["Power", appliedFn, sup];
|
|
8179
8289
|
};
|
|
8180
8290
|
}
|
|
@@ -10297,10 +10407,17 @@ var LatexSyntax = (() => {
|
|
|
10297
10407
|
// The capitalized library entries already exist; these are pure parse
|
|
10298
10408
|
// aliases so the lowercase names don't land in `unsupported-operator`.
|
|
10299
10409
|
// ---------------------------------------------------------------------------
|
|
10410
|
+
{ latexTrigger: "\\operatorname{count}", parse: "Length" },
|
|
10300
10411
|
{ latexTrigger: "\\operatorname{random}", parse: "Random" },
|
|
10301
10412
|
{ latexTrigger: "\\operatorname{shuffle}", parse: "Shuffle" },
|
|
10302
10413
|
{ latexTrigger: "\\operatorname{repeat}", parse: "Repeat" },
|
|
10303
10414
|
{ latexTrigger: "\\operatorname{join}", parse: "Join" },
|
|
10415
|
+
{ latexTrigger: "\\operatorname{range}", parse: "Range" },
|
|
10416
|
+
// Note: `\operatorname{with}` (Desmos's local-binding clause) is intentionally
|
|
10417
|
+
// NOT registered here. Use the math-notation equivalent `\operatorname{where}`
|
|
10418
|
+
// (with `\coloneq` for bindings), or register `with` as a custom dictionary
|
|
10419
|
+
// entry at the integration layer — see the "Desmos-Specific Syntax — Prefer
|
|
10420
|
+
// Custom LaTeX Dictionary" section in COMPUTE_ENGINE.md for a worked example.
|
|
10304
10421
|
// ---------------------------------------------------------------------------
|
|
10305
10422
|
// Geometric primitive heads. Registered as known typed heads so consumers
|
|
10306
10423
|
// can branch on the operator name; CE itself doesn't render them. The
|
|
@@ -15754,7 +15871,7 @@ var LatexSyntax = (() => {
|
|
|
15754
15871
|
}
|
|
15755
15872
|
|
|
15756
15873
|
// src/latex-syntax.ts
|
|
15757
|
-
var version = "0.
|
|
15874
|
+
var version = "0.58.0";
|
|
15758
15875
|
return __toCommonJS(latex_syntax_exports);
|
|
15759
15876
|
})();
|
|
15760
15877
|
Object.assign(exports, LatexSyntax); Object.defineProperty(exports, '__esModule', { value: true });}));
|
package/dist/math-json.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** Compute Engine 0.
|
|
1
|
+
/** Compute Engine 0.58.0 */
|
|
2
2
|
|
|
3
3
|
// src/math-json/utils.ts
|
|
4
4
|
function isNumberObject(expr) {
|
|
@@ -115,7 +115,7 @@ function expressionToDictionaryValue(expr) {
|
|
|
115
115
|
}
|
|
116
116
|
|
|
117
117
|
// src/math-json.ts
|
|
118
|
-
var version = "0.
|
|
118
|
+
var version = "0.58.0";
|
|
119
119
|
export {
|
|
120
120
|
dictionaryFromExpression,
|
|
121
121
|
isFunctionObject,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/** Compute Engine 0.
|
|
2
|
-
function b(n){return n!==null&&typeof n=="object"&&"num"in n}function s(n){return n!==null&&typeof n=="object"&&"sym"in n}function f(n){return n!==null&&typeof n=="object"&&"str"in n}function M(n){return n!==null&&typeof n=="object"&&"dict"in n&&typeof n.dict=="object"&&!Array.isArray(n.dict)&&n.dict!==null}function r(n){return n!==null&&typeof n=="object"&&"fn"in n&&Array.isArray(n.fn)&&n.fn.length>0&&typeof n.fn[0]=="string"}function c(n){return n==null?null:typeof n=="object"&&"str"in n?n.str:typeof n!="string"?null:n.length>=2&&n.at(0)==="'"&&n.at(-1)==="'"?n.substring(1,n.length-1):j(n)||y(n)?null:n}function l(n){return Array.isArray(n)?n[0]:n==null?"":r(n)?n.fn[0]:""}function h(n){return Array.isArray(n)?n.slice(1):n!==void 0&&r(n)?n.fn.slice(1):[]}function d(n,t){return Array.isArray(n)?n[t]??null:n===null||!r(n)?null:n.fn[t]??null}function J(n){return n==null?0:Array.isArray(n)?Math.max(0,n.length-1):r(n)?Math.max(0,n.fn.length-1):0}function m(n){return typeof n=="string"&&y(n)?n.length>=2&&n.at(0)==="`"&&n.at(-1)==="`"?n.slice(1,-1):n:n==null?null:s(n)?n.sym:null}function a(n){let t=l(n);if(t==="KeyValuePair"||t==="Tuple"||t==="Pair"){let[i,o]=h(n),e=c(i);return e?[e,o??"Nothing"]:null}return null}function E(n){if(n===null)return null;if(M(n))return n;let t=a(n);if(t)return{[t[0]]:t[1]};if(l(n)==="Dictionary"){let i={},o=h(n);for(let e=1;e<J(n);e++){let u=a(o[e]);u&&(i[u[0]]=O(u[1])??"Nothing")}return{dict:i}}return null}function g(n,t){let i=null;if(Array.isArray(n)&&(i=n),r(n)&&(i=n.fn),i===null)return[];let o=1,e=[];for(;o<i.length;)e.push(t(i[o])),o+=1;return e}function j(n){return/^(nan|oo|\+oo|-oo|infinity|\+infinity|-infinity)$/i.test(n)||/^[+-]?(0|[1-9][0-9]*)(\.[0-9]+)?(\([0-9]+\))?([eE][+-]?[0-9]+)?$/.test(n)}function y(n){return/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(n)||n.length>=2&&n[0]==="`"&&n[n.length-1]==="`"}function O(n){return n==null?null:f(n)?n.str:b(n)?parseFloat(n.num):s(n)?n.sym:typeof n=="string"||typeof n=="number"?n:Array.isArray(n)?{fn:n}:n}var S="0.
|
|
1
|
+
/** Compute Engine 0.58.0 */
|
|
2
|
+
function b(n){return n!==null&&typeof n=="object"&&"num"in n}function s(n){return n!==null&&typeof n=="object"&&"sym"in n}function f(n){return n!==null&&typeof n=="object"&&"str"in n}function M(n){return n!==null&&typeof n=="object"&&"dict"in n&&typeof n.dict=="object"&&!Array.isArray(n.dict)&&n.dict!==null}function r(n){return n!==null&&typeof n=="object"&&"fn"in n&&Array.isArray(n.fn)&&n.fn.length>0&&typeof n.fn[0]=="string"}function c(n){return n==null?null:typeof n=="object"&&"str"in n?n.str:typeof n!="string"?null:n.length>=2&&n.at(0)==="'"&&n.at(-1)==="'"?n.substring(1,n.length-1):j(n)||y(n)?null:n}function l(n){return Array.isArray(n)?n[0]:n==null?"":r(n)?n.fn[0]:""}function h(n){return Array.isArray(n)?n.slice(1):n!==void 0&&r(n)?n.fn.slice(1):[]}function d(n,t){return Array.isArray(n)?n[t]??null:n===null||!r(n)?null:n.fn[t]??null}function J(n){return n==null?0:Array.isArray(n)?Math.max(0,n.length-1):r(n)?Math.max(0,n.fn.length-1):0}function m(n){return typeof n=="string"&&y(n)?n.length>=2&&n.at(0)==="`"&&n.at(-1)==="`"?n.slice(1,-1):n:n==null?null:s(n)?n.sym:null}function a(n){let t=l(n);if(t==="KeyValuePair"||t==="Tuple"||t==="Pair"){let[i,o]=h(n),e=c(i);return e?[e,o??"Nothing"]:null}return null}function E(n){if(n===null)return null;if(M(n))return n;let t=a(n);if(t)return{[t[0]]:t[1]};if(l(n)==="Dictionary"){let i={},o=h(n);for(let e=1;e<J(n);e++){let u=a(o[e]);u&&(i[u[0]]=O(u[1])??"Nothing")}return{dict:i}}return null}function g(n,t){let i=null;if(Array.isArray(n)&&(i=n),r(n)&&(i=n.fn),i===null)return[];let o=1,e=[];for(;o<i.length;)e.push(t(i[o])),o+=1;return e}function j(n){return/^(nan|oo|\+oo|-oo|infinity|\+infinity|-infinity)$/i.test(n)||/^[+-]?(0|[1-9][0-9]*)(\.[0-9]+)?(\([0-9]+\))?([eE][+-]?[0-9]+)?$/.test(n)}function y(n){return/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(n)||n.length>=2&&n[0]==="`"&&n[n.length-1]==="`"}function O(n){return n==null?null:f(n)?n.str:b(n)?parseFloat(n.num):s(n)?n.sym:typeof n=="string"||typeof n=="number"?n:Array.isArray(n)?{fn:n}:n}var S="0.58.0";export{E as dictionaryFromExpression,r as isFunctionObject,f as isStringObject,s as isSymbolObject,g as mapArgs,d as operand,l as operator,c as stringValue,m as symbol,S as version};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** MathJSON 0.
|
|
1
|
+
/** MathJSON 0.58.0 */
|
|
2
2
|
(function(global,factory){typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'],factory):(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.MathJson = {}));})(this, (function (exports) { 'use strict';
|
|
3
|
-
var MathJson=(()=>{var a=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var j=Object.prototype.hasOwnProperty;var O=(n,t)=>{for(var i in t)a(n,i,{get:t[i],enumerable:!0})},A=(n,t,i,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of g(t))!j.call(n,e)&&e!==i&&a(n,e,{get:()=>t[e],enumerable:!(o=E(t,e))||o.enumerable});return n};var S=n=>A(a({},"__esModule",{value:!0}),n);var T={};O(T,{dictionaryFromExpression:()=>d,isFunctionObject:()=>r,isStringObject:()=>f,isSymbolObject:()=>u,mapArgs:()=>J,operand:()=>b,operator:()=>s,stringValue:()=>c,symbol:()=>M,version:()=>V});function N(n){return n!==null&&typeof n=="object"&&"num"in n}function u(n){return n!==null&&typeof n=="object"&&"sym"in n}function f(n){return n!==null&&typeof n=="object"&&"str"in n}function p(n){return n!==null&&typeof n=="object"&&"dict"in n&&typeof n.dict=="object"&&!Array.isArray(n.dict)&&n.dict!==null}function r(n){return n!==null&&typeof n=="object"&&"fn"in n&&Array.isArray(n.fn)&&n.fn.length>0&&typeof n.fn[0]=="string"}function c(n){return n==null?null:typeof n=="object"&&"str"in n?n.str:typeof n!="string"?null:n.length>=2&&n.at(0)==="'"&&n.at(-1)==="'"?n.substring(1,n.length-1):k(n)||m(n)?null:n}function s(n){return Array.isArray(n)?n[0]:n==null?"":r(n)?n.fn[0]:""}function y(n){return Array.isArray(n)?n.slice(1):n!==void 0&&r(n)?n.fn.slice(1):[]}function b(n,t){return Array.isArray(n)?n[t]??null:n===null||!r(n)?null:n.fn[t]??null}function D(n){return n==null?0:Array.isArray(n)?Math.max(0,n.length-1):r(n)?Math.max(0,n.fn.length-1):0}function M(n){return typeof n=="string"&&m(n)?n.length>=2&&n.at(0)==="`"&&n.at(-1)==="`"?n.slice(1,-1):n:n==null?null:u(n)?n.sym:null}function h(n){let t=s(n);if(t==="KeyValuePair"||t==="Tuple"||t==="Pair"){let[i,o]=y(n),e=c(i);return e?[e,o??"Nothing"]:null}return null}function d(n){if(n===null)return null;if(p(n))return n;let t=h(n);if(t)return{[t[0]]:t[1]};if(s(n)==="Dictionary"){let i={},o=y(n);for(let e=1;e<D(n);e++){let l=h(o[e]);l&&(i[l[0]]=F(l[1])??"Nothing")}return{dict:i}}return null}function J(n,t){let i=null;if(Array.isArray(n)&&(i=n),r(n)&&(i=n.fn),i===null)return[];let o=1,e=[];for(;o<i.length;)e.push(t(i[o])),o+=1;return e}function k(n){return/^(nan|oo|\+oo|-oo|infinity|\+infinity|-infinity)$/i.test(n)||/^[+-]?(0|[1-9][0-9]*)(\.[0-9]+)?(\([0-9]+\))?([eE][+-]?[0-9]+)?$/.test(n)}function m(n){return/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(n)||n.length>=2&&n[0]==="`"&&n[n.length-1]==="`"}function F(n){return n==null?null:f(n)?n.str:N(n)?parseFloat(n.num):u(n)?n.sym:typeof n=="string"||typeof n=="number"?n:Array.isArray(n)?{fn:n}:n}var V="0.
|
|
3
|
+
var MathJson=(()=>{var a=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var j=Object.prototype.hasOwnProperty;var O=(n,t)=>{for(var i in t)a(n,i,{get:t[i],enumerable:!0})},A=(n,t,i,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of g(t))!j.call(n,e)&&e!==i&&a(n,e,{get:()=>t[e],enumerable:!(o=E(t,e))||o.enumerable});return n};var S=n=>A(a({},"__esModule",{value:!0}),n);var T={};O(T,{dictionaryFromExpression:()=>d,isFunctionObject:()=>r,isStringObject:()=>f,isSymbolObject:()=>u,mapArgs:()=>J,operand:()=>b,operator:()=>s,stringValue:()=>c,symbol:()=>M,version:()=>V});function N(n){return n!==null&&typeof n=="object"&&"num"in n}function u(n){return n!==null&&typeof n=="object"&&"sym"in n}function f(n){return n!==null&&typeof n=="object"&&"str"in n}function p(n){return n!==null&&typeof n=="object"&&"dict"in n&&typeof n.dict=="object"&&!Array.isArray(n.dict)&&n.dict!==null}function r(n){return n!==null&&typeof n=="object"&&"fn"in n&&Array.isArray(n.fn)&&n.fn.length>0&&typeof n.fn[0]=="string"}function c(n){return n==null?null:typeof n=="object"&&"str"in n?n.str:typeof n!="string"?null:n.length>=2&&n.at(0)==="'"&&n.at(-1)==="'"?n.substring(1,n.length-1):k(n)||m(n)?null:n}function s(n){return Array.isArray(n)?n[0]:n==null?"":r(n)?n.fn[0]:""}function y(n){return Array.isArray(n)?n.slice(1):n!==void 0&&r(n)?n.fn.slice(1):[]}function b(n,t){return Array.isArray(n)?n[t]??null:n===null||!r(n)?null:n.fn[t]??null}function D(n){return n==null?0:Array.isArray(n)?Math.max(0,n.length-1):r(n)?Math.max(0,n.fn.length-1):0}function M(n){return typeof n=="string"&&m(n)?n.length>=2&&n.at(0)==="`"&&n.at(-1)==="`"?n.slice(1,-1):n:n==null?null:u(n)?n.sym:null}function h(n){let t=s(n);if(t==="KeyValuePair"||t==="Tuple"||t==="Pair"){let[i,o]=y(n),e=c(i);return e?[e,o??"Nothing"]:null}return null}function d(n){if(n===null)return null;if(p(n))return n;let t=h(n);if(t)return{[t[0]]:t[1]};if(s(n)==="Dictionary"){let i={},o=y(n);for(let e=1;e<D(n);e++){let l=h(o[e]);l&&(i[l[0]]=F(l[1])??"Nothing")}return{dict:i}}return null}function J(n,t){let i=null;if(Array.isArray(n)&&(i=n),r(n)&&(i=n.fn),i===null)return[];let o=1,e=[];for(;o<i.length;)e.push(t(i[o])),o+=1;return e}function k(n){return/^(nan|oo|\+oo|-oo|infinity|\+infinity|-infinity)$/i.test(n)||/^[+-]?(0|[1-9][0-9]*)(\.[0-9]+)?(\([0-9]+\))?([eE][+-]?[0-9]+)?$/.test(n)}function m(n){return/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(n)||n.length>=2&&n[0]==="`"&&n[n.length-1]==="`"}function F(n){return n==null?null:f(n)?n.str:N(n)?parseFloat(n.num):u(n)?n.sym:typeof n=="string"||typeof n=="number"?n:Array.isArray(n)?{fn:n}:n}var V="0.58.0";return S(T);})();
|
|
4
4
|
Object.assign(exports, MathJson); Object.defineProperty(exports, '__esModule', { value: true });}));
|
package/dist/math-json.umd.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** MathJSON 0.
|
|
1
|
+
/** MathJSON 0.58.0 */
|
|
2
2
|
(function(global,factory){typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'],factory):(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.MathJson = {}));})(this, (function (exports) { 'use strict';
|
|
3
3
|
var MathJson = (() => {
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -149,7 +149,7 @@ var MathJson = (() => {
|
|
|
149
149
|
}
|
|
150
150
|
|
|
151
151
|
// src/math-json.ts
|
|
152
|
-
var version = "0.
|
|
152
|
+
var version = "0.58.0";
|
|
153
153
|
return __toCommonJS(math_json_exports);
|
|
154
154
|
})();
|
|
155
155
|
Object.assign(exports, MathJson); Object.defineProperty(exports, '__esModule', { value: true });}));
|
package/dist/numerics.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** Compute Engine 0.
|
|
1
|
+
/** Compute Engine 0.58.0 */
|
|
2
2
|
|
|
3
3
|
// src/compute-engine/numeric-value/types.ts
|
|
4
4
|
var NumericValue = class {
|
|
@@ -5124,7 +5124,42 @@ function widen2(a, b) {
|
|
|
5124
5124
|
if (b === "nothing") return a;
|
|
5125
5125
|
if (isSubtype(a, b)) return b;
|
|
5126
5126
|
if (isSubtype(b, a)) return a;
|
|
5127
|
-
|
|
5127
|
+
const sup = superType(a, b);
|
|
5128
|
+
if (LOSSY_SUPERTYPE.has(sup)) return unionTypes(a, b);
|
|
5129
|
+
return sup;
|
|
5130
|
+
}
|
|
5131
|
+
var LOSSY_SUPERTYPE = /* @__PURE__ */ new Set([
|
|
5132
|
+
"scalar",
|
|
5133
|
+
"value",
|
|
5134
|
+
"function",
|
|
5135
|
+
"expression",
|
|
5136
|
+
"collection",
|
|
5137
|
+
"indexed_collection",
|
|
5138
|
+
"list",
|
|
5139
|
+
"set",
|
|
5140
|
+
"tuple",
|
|
5141
|
+
"record",
|
|
5142
|
+
"dictionary",
|
|
5143
|
+
"map",
|
|
5144
|
+
"any"
|
|
5145
|
+
]);
|
|
5146
|
+
function unionTypes(a, b) {
|
|
5147
|
+
const members = [];
|
|
5148
|
+
const push = (t) => {
|
|
5149
|
+
if (typeof t === "object" && t.kind === "union") {
|
|
5150
|
+
for (const m of t.types) push(m);
|
|
5151
|
+
return;
|
|
5152
|
+
}
|
|
5153
|
+
const key = typeof t === "string" ? t : JSON.stringify(t);
|
|
5154
|
+
if (!members.some(
|
|
5155
|
+
(m) => (typeof m === "string" ? m : JSON.stringify(m)) === key
|
|
5156
|
+
))
|
|
5157
|
+
members.push(t);
|
|
5158
|
+
};
|
|
5159
|
+
push(a);
|
|
5160
|
+
push(b);
|
|
5161
|
+
if (members.length === 1) return members[0];
|
|
5162
|
+
return { kind: "union", types: members };
|
|
5128
5163
|
}
|
|
5129
5164
|
function widen(...types) {
|
|
5130
5165
|
if (types.length === 0) return "nothing";
|
|
@@ -8475,7 +8510,7 @@ function gammaln2(c) {
|
|
|
8475
8510
|
}
|
|
8476
8511
|
|
|
8477
8512
|
// src/numerics.ts
|
|
8478
|
-
var version = "0.
|
|
8513
|
+
var version = "0.58.0";
|
|
8479
8514
|
export {
|
|
8480
8515
|
BigNumericValue,
|
|
8481
8516
|
DEFAULT_PRECISION,
|