@cortex-js/compute-engine 0.30.1 → 0.31.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.
Files changed (149) hide show
  1. package/dist/compute-engine.esm.js +9837 -7504
  2. package/dist/compute-engine.min.esm.js +49 -53
  3. package/dist/compute-engine.min.umd.js +49 -53
  4. package/dist/compute-engine.umd.js +9837 -7504
  5. package/dist/math-json.esm.js +19 -5
  6. package/dist/math-json.min.esm.js +19 -5
  7. package/dist/math-json.min.umd.js +2 -2
  8. package/dist/math-json.umd.js +19 -5
  9. package/dist/types/common/ansi-codes.d.ts +1 -1
  10. package/dist/types/common/configuration-change.d.ts +1 -1
  11. package/dist/types/common/fuzzy-string-match.d.ts +1 -1
  12. package/dist/types/common/grapheme-splitter.d.ts +1 -1
  13. package/dist/types/common/interruptible.d.ts +1 -1
  14. package/dist/types/common/one-of.d.ts +1 -1
  15. package/dist/types/common/signals.d.ts +1 -1
  16. package/dist/types/common/type/ast-nodes.d.ts +146 -0
  17. package/dist/types/common/type/boxed-type.d.ts +1 -1
  18. package/dist/types/common/type/lexer.d.ts +51 -0
  19. package/dist/types/common/type/parse.d.ts +208 -1
  20. package/dist/types/common/type/parser.d.ts +45 -0
  21. package/dist/types/common/type/primitive.d.ts +1 -1
  22. package/dist/types/common/type/serialize.d.ts +1 -1
  23. package/dist/types/common/type/subtype.d.ts +1 -1
  24. package/dist/types/common/type/type-builder.d.ts +32 -0
  25. package/dist/types/common/type/types.d.ts +1 -1
  26. package/dist/types/common/type/utils.d.ts +1 -1
  27. package/dist/types/common/utils.d.ts +22 -1
  28. package/dist/types/compute-engine/assume.d.ts +1 -1
  29. package/dist/types/compute-engine/boxed-expression/abstract-boxed-expression.d.ts +4 -4
  30. package/dist/types/compute-engine/boxed-expression/apply.d.ts +1 -1
  31. package/dist/types/compute-engine/boxed-expression/arithmetic-add.d.ts +1 -1
  32. package/dist/types/compute-engine/boxed-expression/arithmetic-mul-div.d.ts +1 -1
  33. package/dist/types/compute-engine/boxed-expression/arithmetic-power.d.ts +1 -1
  34. package/dist/types/compute-engine/boxed-expression/ascii-math.d.ts +1 -1
  35. package/dist/types/compute-engine/boxed-expression/box.d.ts +1 -1
  36. package/dist/types/compute-engine/boxed-expression/boxed-dictionary.d.ts +7 -5
  37. package/dist/types/compute-engine/boxed-expression/boxed-function.d.ts +3 -3
  38. package/dist/types/compute-engine/boxed-expression/boxed-number.d.ts +1 -1
  39. package/dist/types/compute-engine/boxed-expression/boxed-operator-definition.d.ts +1 -1
  40. package/dist/types/compute-engine/boxed-expression/boxed-patterns.d.ts +104 -1
  41. package/dist/types/compute-engine/boxed-expression/boxed-string.d.ts +1 -1
  42. package/dist/types/compute-engine/boxed-expression/boxed-symbol.d.ts +3 -3
  43. package/dist/types/compute-engine/boxed-expression/boxed-tensor.d.ts +3 -3
  44. package/dist/types/compute-engine/boxed-expression/boxed-value-definition.d.ts +1 -1
  45. package/dist/types/compute-engine/boxed-expression/cache.d.ts +1 -1
  46. package/dist/types/compute-engine/boxed-expression/canonical-utils.d.ts +1 -1
  47. package/dist/types/compute-engine/boxed-expression/canonical.d.ts +1 -1
  48. package/dist/types/compute-engine/boxed-expression/compare.d.ts +1 -1
  49. package/dist/types/compute-engine/boxed-expression/expand.d.ts +1 -1
  50. package/dist/types/compute-engine/boxed-expression/expression-map.d.ts +1 -1
  51. package/dist/types/compute-engine/boxed-expression/factor.d.ts +1 -1
  52. package/dist/types/compute-engine/boxed-expression/flatten.d.ts +1 -1
  53. package/dist/types/compute-engine/boxed-expression/hold.d.ts +1 -1
  54. package/dist/types/compute-engine/boxed-expression/match.d.ts +8 -1
  55. package/dist/types/compute-engine/boxed-expression/negate.d.ts +1 -1
  56. package/dist/types/compute-engine/boxed-expression/numerics.d.ts +1 -1
  57. package/dist/types/compute-engine/boxed-expression/order.d.ts +1 -1
  58. package/dist/types/compute-engine/boxed-expression/polynomials.d.ts +58 -1
  59. package/dist/types/compute-engine/boxed-expression/product.d.ts +1 -1
  60. package/dist/types/compute-engine/boxed-expression/rules.d.ts +2 -2
  61. package/dist/types/compute-engine/boxed-expression/serialize.d.ts +1 -1
  62. package/dist/types/compute-engine/boxed-expression/sgn.d.ts +1 -1
  63. package/dist/types/compute-engine/boxed-expression/simplify.d.ts +1 -1
  64. package/dist/types/compute-engine/boxed-expression/solve.d.ts +1 -1
  65. package/dist/types/compute-engine/boxed-expression/terms.d.ts +1 -1
  66. package/dist/types/compute-engine/boxed-expression/trigonometry.d.ts +1 -1
  67. package/dist/types/compute-engine/boxed-expression/utils.d.ts +11 -1
  68. package/dist/types/compute-engine/boxed-expression/validate.d.ts +10 -1
  69. package/dist/types/compute-engine/collection-utils.d.ts +1 -1
  70. package/dist/types/compute-engine/compilation/base-compiler.d.ts +31 -0
  71. package/dist/types/compute-engine/{compile.d.ts → compilation/javascript-target.d.ts} +20 -32
  72. package/dist/types/compute-engine/compilation/types.d.ts +83 -0
  73. package/dist/types/compute-engine/cost-function.d.ts +1 -1
  74. package/dist/types/compute-engine/function-utils.d.ts +1 -1
  75. package/dist/types/compute-engine/global-types.d.ts +75 -17
  76. package/dist/types/compute-engine/index.d.ts +4 -1
  77. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-algebra.d.ts +1 -1
  78. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-arithmetic.d.ts +1 -1
  79. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-calculus.d.ts +1 -1
  80. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-complex.d.ts +1 -1
  81. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-core.d.ts +1 -1
  82. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-linear-algebra.d.ts +1 -1
  83. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-logic.d.ts +1 -1
  84. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-other.d.ts +1 -1
  85. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-relational-operators.d.ts +1 -1
  86. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-sets.d.ts +1 -1
  87. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-statistics.d.ts +1 -1
  88. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-symbols.d.ts +1 -1
  89. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-trigonometry.d.ts +1 -1
  90. package/dist/types/compute-engine/latex-syntax/dictionary/definitions.d.ts +1 -1
  91. package/dist/types/compute-engine/latex-syntax/parse-symbol.d.ts +1 -1
  92. package/dist/types/compute-engine/latex-syntax/parse.d.ts +1 -1
  93. package/dist/types/compute-engine/latex-syntax/serialize-number.d.ts +1 -1
  94. package/dist/types/compute-engine/latex-syntax/serializer-style.d.ts +1 -1
  95. package/dist/types/compute-engine/latex-syntax/serializer.d.ts +1 -1
  96. package/dist/types/compute-engine/latex-syntax/tokenizer.d.ts +1 -1
  97. package/dist/types/compute-engine/latex-syntax/types.d.ts +2 -2
  98. package/dist/types/compute-engine/latex-syntax/utils.d.ts +1 -1
  99. package/dist/types/compute-engine/library/arithmetic.d.ts +1 -1
  100. package/dist/types/compute-engine/library/calculus.d.ts +1 -1
  101. package/dist/types/compute-engine/library/collections.d.ts +1 -1
  102. package/dist/types/compute-engine/library/combinatorics.d.ts +1 -1
  103. package/dist/types/compute-engine/library/complex.d.ts +1 -1
  104. package/dist/types/compute-engine/library/control-structures.d.ts +1 -1
  105. package/dist/types/compute-engine/library/core.d.ts +1 -1
  106. package/dist/types/compute-engine/library/invisible-operator.d.ts +1 -1
  107. package/dist/types/compute-engine/library/library.d.ts +1 -1
  108. package/dist/types/compute-engine/library/linear-algebra.d.ts +1 -1
  109. package/dist/types/compute-engine/library/logic.d.ts +1 -1
  110. package/dist/types/compute-engine/library/number-theory.d.ts +1 -1
  111. package/dist/types/compute-engine/library/polynomials.d.ts +1 -1
  112. package/dist/types/compute-engine/library/random-expression.d.ts +1 -1
  113. package/dist/types/compute-engine/library/relational-operator.d.ts +1 -1
  114. package/dist/types/compute-engine/library/sets.d.ts +1 -1
  115. package/dist/types/compute-engine/library/statistics.d.ts +1 -1
  116. package/dist/types/compute-engine/library/trigonometry.d.ts +1 -1
  117. package/dist/types/compute-engine/library/utils.d.ts +1 -1
  118. package/dist/types/compute-engine/numeric-value/big-numeric-value.d.ts +1 -1
  119. package/dist/types/compute-engine/numeric-value/exact-numeric-value.d.ts +1 -1
  120. package/dist/types/compute-engine/numeric-value/machine-numeric-value.d.ts +1 -1
  121. package/dist/types/compute-engine/numeric-value/types.d.ts +1 -1
  122. package/dist/types/compute-engine/numerics/bigint.d.ts +1 -1
  123. package/dist/types/compute-engine/numerics/expression.d.ts +1 -1
  124. package/dist/types/compute-engine/numerics/interval.d.ts +1 -1
  125. package/dist/types/compute-engine/numerics/monte-carlo.d.ts +1 -1
  126. package/dist/types/compute-engine/numerics/numeric-bigint.d.ts +1 -1
  127. package/dist/types/compute-engine/numerics/numeric-bignum.d.ts +1 -1
  128. package/dist/types/compute-engine/numerics/numeric-complex.d.ts +1 -1
  129. package/dist/types/compute-engine/numerics/numeric.d.ts +1 -1
  130. package/dist/types/compute-engine/numerics/primes.d.ts +1 -1
  131. package/dist/types/compute-engine/numerics/rationals.d.ts +1 -1
  132. package/dist/types/compute-engine/numerics/richardson.d.ts +1 -1
  133. package/dist/types/compute-engine/numerics/special-functions.d.ts +1 -1
  134. package/dist/types/compute-engine/numerics/statistics.d.ts +1 -1
  135. package/dist/types/compute-engine/numerics/strings.d.ts +1 -1
  136. package/dist/types/compute-engine/numerics/types.d.ts +1 -1
  137. package/dist/types/compute-engine/symbolic/antiderivative.d.ts +1 -1
  138. package/dist/types/compute-engine/symbolic/derivative.d.ts +1 -1
  139. package/dist/types/compute-engine/symbolic/distribute.d.ts +1 -1
  140. package/dist/types/compute-engine/symbolic/simplify-rules.d.ts +1 -1
  141. package/dist/types/compute-engine/tensor/tensor-fields.d.ts +1 -1
  142. package/dist/types/compute-engine/tensor/tensors.d.ts +1 -1
  143. package/dist/types/compute-engine/types.d.ts +1 -1
  144. package/dist/types/compute-engine.d.ts +1 -1
  145. package/dist/types/math-json/symbols.d.ts +1 -1
  146. package/dist/types/math-json/types.d.ts +4 -2
  147. package/dist/types/math-json/utils.d.ts +7 -1
  148. package/dist/types/math-json.d.ts +2 -2
  149. package/package.json +11 -10
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function asLatexString(s: unknown): string | null;
3
3
  export declare function isRelationalOperator(name: string | undefined): boolean;
4
4
  export declare function isInequalityOperator(operator: string | undefined): boolean;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export type CanonicalArithmeticOperators = 'Add' | 'Negate' | 'Multiply' | 'Divide' | 'Power' | 'Sqrt' | 'Root' | 'Ln';
3
3
  export declare const ARITHMETIC_LIBRARY: SymbolDefinitions[];
4
4
  export declare function isPrime(expr: BoxedExpression): boolean | undefined;
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const CALCULUS_LIBRARY: SymbolDefinitions[];
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const DEFAULT_LINSPACE_COUNT = 50;
3
3
  export declare const COLLECTIONS_LIBRARY: SymbolDefinitions;
4
4
  /**
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const COMBINATORICS_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const COMPLEX_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const CONTROL_STRUCTURES_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const CORE_LIBRARY: SymbolDefinitions[];
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function canonicalInvisibleOperator(ops: ReadonlyArray<BoxedExpression>, { engine: ce }: {
3
3
  engine: ComputeEngine;
4
4
  }): BoxedExpression | null;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  import type { SymbolDefinitions, ComputeEngine } from '../global-types';
3
3
  export declare function getStandardLibrary(categories: LibraryCategory[] | LibraryCategory | 'all'): readonly SymbolDefinitions[];
4
4
  export declare const LIBRARIES: {
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const LINEAR_ALGEBRA_LIBRARY: SymbolDefinitions[];
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const LOGIC_LIBRARY: SymbolDefinitions;
3
3
  export declare function simplifyLogicFunction(x: BoxedExpression): {
4
4
  value: BoxedExpression;
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const NUMBER_THEORY_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const POLYNOMIALS_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function randomExpression(level?: number): Expression;
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const RELOP_LIBRARY: SymbolDefinitions;
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const SETS_LIBRARY: SymbolDefinitions;
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const STATISTICS_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const TRIGONOMETRY_LIBRARY: SymbolDefinitions[];
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export type IndexingSet = {
3
3
  index: string | undefined;
4
4
  lower: number;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  import { BigNumFactory, NumericValue, NumericValueData } from './types';
3
3
  import { ExactNumericValue } from './exact-numeric-value';
4
4
  import { Expression } from '../../math-json/types';
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  import { Rational, SmallInteger } from '../numerics/types';
3
3
  import { BigNumFactory, ExactNumericValueData, NumericValue, NumericValueFactory } from './types';
4
4
  import { Expression } from '../../math-json/types';
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  import { BigNumFactory, NumericValue, NumericValueData } from './types';
3
3
  import type { Expression } from '../../math-json/types';
4
4
  import type { SmallInteger } from '../numerics/types';
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  *
3
3
  * ## THEORY OF OPERATIONS
4
4
  *
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function bigint(a: Decimal | number | bigint | string): bigint | null;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function bigintValue(expr: Expression | null | undefined): bigint | null;
3
3
  /** Output a shorthand if possible */
4
4
  export declare function numberToExpression(num: number | bigint, fractionalDigits?: string | number): Expression;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  /** An interval is a continuous set of real numbers */
3
3
  export type Interval = {
4
4
  start: number;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  estimate: number;
3
3
  error: number;
4
4
  };
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function lcm(a: bigint, b: bigint): bigint;
3
3
  /** Return `[factor, root]` such that
4
4
  * pow(n, 1/exponent) = factor * pow(root, 1/exponent)
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function gcd(a: BigNum, b: BigNum): BigNum;
3
3
  export declare function lcm(a: BigNum, b: BigNum): BigNum;
4
4
  export declare function factorial2(ce: IBigNum, n: BigNum): BigNum;
@@ -1,3 +1,3 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function gamma(c: Complex): Complex;
3
3
  export declare function gammaln(c: Complex): Complex;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const MACHINE_PRECISION_BITS = 53;
3
3
  export declare const MACHINE_PRECISION: number;
4
4
  export declare const DEFAULT_TOLERANCE = 1e-10;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function primeFactors(n: number): {
3
3
  [factor: number]: number;
4
4
  };
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function isRational(x: any | null): x is Rational;
3
3
  export declare function isMachineRational(x: any | null): x is [SmallInteger, SmallInteger];
4
4
  export declare function isBigRational(x: any | null): x is [bigint, bigint];
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
 
3
3
  Translated from https://github.com/JuliaMath/Richardson.jl/blob/master/src/Richardson.jl
4
4
 
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  import type { BigNum } from './types';
3
3
  export declare function gammaln(z: number): number;
4
4
  export declare function gamma(z: number): number;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  import type { BigNum } from './types';
3
3
  export declare function mean(values: Iterable<number>): number;
4
4
  export declare function bigMean(bignum: BigNumFactory, values: Iterable<BigNum>): BigNum;
@@ -1,2 +1,2 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare function numberToString(num: number | bigint, fractionalDigits?: number | string): string;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  type IsInteger<N extends number> = `${N}` extends `${string}.${string}` ? never : `${N}` extends `-${string}.${string}` ? never : number;
3
3
  /** A `SmallInteger` is an integer < 1e6
4
4
  * @category Numerics
@@ -1,3 +1,3 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  /** Calculate the antiderivative of fn, as an expression (not a function) */
3
3
  export declare function antiderivative(fn: BoxedExpression, index: string): BoxedExpression;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  /**
3
3
  *
4
4
  * @param fn The function to differentiate, a function literal.
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  /**
3
3
  *
4
4
  */
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  /**
3
3
  * @todo: a set to "tidy" an expression. Different from a canonical form, but
4
4
  * inline with the user's expectations.
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  import { BoxedExpression, ComputeEngine, DataTypeMap, TensorDataType, TensorField } from '../global-types';
3
3
  /** @category Tensors */
4
4
  export declare function makeTensorField<DT extends keyof DataTypeMap>(ce: ComputeEngine, dtype: DT): TensorField<DataTypeMap[DT]>;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  /** @category Tensors */
3
3
  export declare abstract class AbstractTensor<DT extends keyof DataTypeMap> implements Tensor<DT> {
4
4
  private ce;
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export * from '../math-json/types';
3
3
  export * from '../common/type/boxed-type';
4
4
  export * from '../common/type/types';
@@ -1,3 +1,3 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export { ComputeEngine } from './compute-engine/index';
3
3
  export * from './compute-engine/types';
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  * Return true if the string is a valid symbol.
3
3
  *
4
4
  * Check for symbols matching a profile of [Unicode UAX31](https://unicode.org/reports/tr31/)
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  * The following properties can be added to any MathJSON expression
3
3
  * to provide additional information about the expression.
4
4
  *
@@ -102,8 +102,10 @@ export type MathJsonFunctionObject = {
102
102
  fn: [MathJsonSymbol, ...Expression[]];
103
103
  } & MathJsonAttributes;
104
104
  /** @category MathJSON */
105
+ export type DictionaryValue = boolean | number | string | ExpressionObject | ReadonlyArray<DictionaryValue>;
106
+ /** @category MathJSON */
105
107
  export type MathJsonDictionaryObject = {
106
- dict: Record<string, Expression>;
108
+ dict: Record<string, DictionaryValue>;
107
109
  } & MathJsonAttributes;
108
110
  /**
109
111
  * @category MathJSON
@@ -1,4 +1,4 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export declare const MISSING: Expression;
3
3
  export declare function isNumberExpression(expr: Expression | null): expr is number | string | MathJsonNumberObject;
4
4
  export declare function isNumberObject(expr: Expression | null): expr is MathJsonNumberObject;
@@ -6,6 +6,12 @@ export declare function isSymbolObject(expr: Expression | null): expr is MathJso
6
6
  export declare function isStringObject(expr: Expression | null): expr is MathJsonStringObject;
7
7
  export declare function isDictionaryObject(expr: Expression | null): expr is MathJsonDictionaryObject;
8
8
  export declare function isFunctionObject(expr: Expression | null): expr is MathJsonFunctionObject;
9
+ export declare function isExpressionObject(expr: Expression | null): expr is ExpressionObject;
10
+ /**
11
+ * Returns true if `expr` has at least one recognized metadata property
12
+ * (`latex` or `wikidata`) with a non-undefined value.
13
+ */
14
+ export declare function hasMetaData(expr: Expression | null): expr is ExpressionObject & Partial<MathJsonAttributes>;
9
15
  /** If expr is a string literal, return it.
10
16
  *
11
17
  * A string literal is a JSON string that begins and ends with
@@ -1,3 +1,3 @@
1
- /* 0.30.1 */
1
+ /* 0.31.0 */
2
2
  export { isSymbolObject, isStringObject, isFunctionObject, stringValue, operator, operand, symbol, mapArgs, dictionaryFromExpression, } from './math-json/utils';
3
- export declare const version = "0.30.1";
3
+ export declare const version = "0.31.0";
package/package.json CHANGED
@@ -1,17 +1,18 @@
1
1
  {
2
- "version": "0.30.1",
2
+ "version": "0.31.0",
3
3
  "scripts": {
4
4
  "doc": "bash ./scripts/doc.sh",
5
5
  "build": "bash ./scripts/build.sh",
6
6
  "clean": "bash ./scripts/clean.sh",
7
7
  "coverage": "bash ./scripts/test.sh coverage",
8
8
  "dist": "bash ./scripts/build.sh production; bash ./scripts/test.sh",
9
- "lint": "eslint --fix src/",
10
9
  "prepare": "bash ./scripts/build.sh production",
11
10
  "start": "bash ./scripts/start.sh",
12
11
  "snapshot": "bash ./scripts/test.sh snapshot",
13
12
  "version": "bash ./scripts/version.sh",
14
- "test": "bash ./scripts/test.sh"
13
+ "test": "bash ./scripts/test.sh",
14
+ "lint": "eslint src --ext .ts --fix && prettier --write 'src/**/*.{ts,js,css,md}'",
15
+ "typecheck": "tsc --target es2022 -d --moduleResolution node --allowImportingTsExtensions true --emitDeclarationOnly --outDir /tmp/typecheck ./src/compute-engine.ts"
15
16
  },
16
17
  "name": "@cortex-js/compute-engine",
17
18
  "description": "Symbolic computing and numeric evaluations for JavaScript and Node.js",
@@ -43,15 +44,15 @@
43
44
  "exports": {
44
45
  ".": {
45
46
  "types": "./dist/types/compute-engine.d.ts",
46
- "browser": "./dist/compute-engine.min.umd.js",
47
47
  "import": "./dist/compute-engine.min.esm.js",
48
48
  "require": "./dist/compute-engine.min.umd.js",
49
49
  "default": "./dist/compute-engine.min.esm.js"
50
50
  }
51
51
  },
52
- "main": "./dist/compute-engine.min.umd.js",
52
+ "main": "./dist/compute-engine.min.esm.js",
53
53
  "module": "./dist/compute-engine.min.esm.js",
54
54
  "browser": "./dist/compute-engine.min.umd.js",
55
+ "unpkg": "./dist/compute-engine.min.umd.js",
55
56
  "types": "./dist/types/compute-engine.d.ts",
56
57
  "engines": {
57
58
  "npm": ">=10.5.0",
@@ -68,7 +69,7 @@
68
69
  "chalk": "^5.3.0",
69
70
  "check-node-version": "^4.2.1",
70
71
  "concat-md": "^0.5.1",
71
- "esbuild": "^0.25.6",
72
+ "esbuild": "^0.25.8",
72
73
  "eslint": "^8.56.0",
73
74
  "eslint-config-prettier": "^9.0.0",
74
75
  "eslint-plugin-import": "^2.28.1",
@@ -81,10 +82,10 @@
81
82
  "prettier-2": "npm:prettier@^2",
82
83
  "serve-http": "^1.0.7",
83
84
  "ts-jest": "^29.4.0",
84
- "ts-node": "^10.9.1",
85
- "typedoc": "^0.27.6",
86
- "typedoc-plugin-markdown": "^4.4.1",
87
- "typedoc-plugin-no-inherit": "^1.5.0",
85
+ "ts-node": "^10.9.2",
86
+ "typedoc": "^0.28.8",
87
+ "typedoc-plugin-markdown": "^4.8.0",
88
+ "typedoc-plugin-no-inherit": "^1.6.1",
88
89
  "typescript": "^5.8.3",
89
90
  "update-notifier": "^7.0.0"
90
91
  },