math-exercises 2.2.21 → 2.2.23

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 (144) hide show
  1. package/lib/exercises/exercise.d.ts +22 -0
  2. package/lib/exercises/exercise.d.ts.map +1 -1
  3. package/lib/exercises/math/calcul/arithmetics/divisibiltyCriteria.d.ts +8 -0
  4. package/lib/exercises/math/calcul/arithmetics/divisibiltyCriteria.d.ts.map +1 -0
  5. package/lib/exercises/math/calcul/arithmetics/divisibiltyCriteria.js +107 -0
  6. package/lib/exercises/math/calcul/arithmetics/index.d.ts +1 -0
  7. package/lib/exercises/math/calcul/arithmetics/index.d.ts.map +1 -1
  8. package/lib/exercises/math/calcul/arithmetics/index.js +1 -0
  9. package/lib/exercises/math/calcul/fractions/fractionsSumsSameDenominators.js +1 -1
  10. package/lib/exercises/math/calculLitteral/distributivity/canonicalFormDevelopment.js +1 -1
  11. package/lib/exercises/math/calculLitteral/distributivity/doubleDistributivity.js +1 -1
  12. package/lib/exercises/math/calculLitteral/distributivity/doubleDistributivityWithCoeff.js +1 -1
  13. package/lib/exercises/math/calculLitteral/distributivity/firstIdentity.js +1 -1
  14. package/lib/exercises/math/calculLitteral/distributivity/index.d.ts +1 -0
  15. package/lib/exercises/math/calculLitteral/distributivity/index.d.ts.map +1 -1
  16. package/lib/exercises/math/calculLitteral/distributivity/index.js +1 -0
  17. package/lib/exercises/math/calculLitteral/distributivity/secondIdentity.js +1 -1
  18. package/lib/exercises/math/calculLitteral/distributivity/simpleDistriXCoeff.d.ts +9 -0
  19. package/lib/exercises/math/calculLitteral/distributivity/simpleDistriXCoeff.d.ts.map +1 -0
  20. package/lib/exercises/math/calculLitteral/distributivity/simpleDistriXCoeff.js +113 -0
  21. package/lib/exercises/math/calculLitteral/distributivity/simpleDistributivity.d.ts.map +1 -1
  22. package/lib/exercises/math/calculLitteral/distributivity/simpleDistributivity.js +44 -19
  23. package/lib/exercises/math/calculLitteral/distributivity/thirdIdentity.js +1 -1
  24. package/lib/exercises/math/calculLitteral/equation/equationType1Exercise.js +1 -1
  25. package/lib/exercises/math/calculLitteral/equation/equationType2Exercise.js +1 -1
  26. package/lib/exercises/math/calculLitteral/equation/equationType3Exercise.js +1 -1
  27. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquation.js +1 -1
  28. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquationIntType1.js +1 -1
  29. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquationIntType2.js +1 -1
  30. package/lib/exercises/math/calculLitteral/equation/fractionEquation.js +1 -1
  31. package/lib/exercises/math/calculLitteral/equation/multiplicationEquation.js +1 -1
  32. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq1.js +1 -1
  33. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq2.js +1 -1
  34. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq3.js +1 -1
  35. package/lib/exercises/math/calculLitteral/factorisation/factoType1Exercise.d.ts.map +1 -1
  36. package/lib/exercises/math/calculLitteral/factorisation/factoType1Exercise.js +0 -1
  37. package/lib/exercises/math/calculLitteral/factorisation/factoType2.d.ts +11 -0
  38. package/lib/exercises/math/calculLitteral/factorisation/factoType2.d.ts.map +1 -0
  39. package/lib/exercises/math/calculLitteral/factorisation/factoType2.js +110 -0
  40. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalForm.js +1 -1
  41. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalFormWithSqrt.js +1 -1
  42. package/lib/exercises/math/calculLitteral/factorisation/index.d.ts +1 -0
  43. package/lib/exercises/math/calculLitteral/factorisation/index.d.ts.map +1 -1
  44. package/lib/exercises/math/calculLitteral/factorisation/index.js +1 -0
  45. package/lib/exercises/math/derivation/index.d.ts +0 -1
  46. package/lib/exercises/math/derivation/index.d.ts.map +1 -1
  47. package/lib/exercises/math/derivation/index.js +0 -1
  48. package/lib/exercises/math/derivation/tangent/derivativeNumberReading.d.ts +8 -0
  49. package/lib/exercises/math/derivation/tangent/derivativeNumberReading.d.ts.map +1 -0
  50. package/lib/exercises/math/derivation/tangent/derivativeNumberReading.js +102 -0
  51. package/lib/exercises/math/derivation/tangent/derivativeTangentEquationReading.d.ts +42 -0
  52. package/lib/exercises/math/derivation/tangent/derivativeTangentEquationReading.d.ts.map +1 -0
  53. package/lib/exercises/math/derivation/tangent/derivativeTangentEquationReading.js +231 -0
  54. package/lib/exercises/math/derivation/tangent/index.d.ts +2 -0
  55. package/lib/exercises/math/derivation/tangent/index.d.ts.map +1 -1
  56. package/lib/exercises/math/derivation/tangent/index.js +2 -0
  57. package/lib/exercises/math/functions/logarithm/log10PowerSimplifying.js +1 -1
  58. package/lib/exercises/math/geometry/cartesian/pointCoordinates.d.ts.map +1 -1
  59. package/lib/exercises/math/geometry/cartesian/pointCoordinates.js +1 -0
  60. package/lib/exercises/math/geometry/cartesian/pointCoordinatesNoAxisNumbers.d.ts.map +1 -1
  61. package/lib/exercises/math/geometry/cartesian/pointCoordinatesNoAxisNumbers.js +1 -1
  62. package/lib/exercises/math/geometry/cartesian/pointCoordinatesNoOrthonorm.d.ts.map +1 -1
  63. package/lib/exercises/math/geometry/cartesian/pointCoordinatesNoOrthonorm.js +1 -0
  64. package/lib/exercises/math/geometry/shapes/basicShapesNaming.d.ts.map +1 -1
  65. package/lib/exercises/math/geometry/shapes/basicShapesNaming.js +9 -17
  66. package/lib/exercises/math/geometry/vectors/index.d.ts +1 -2
  67. package/lib/exercises/math/geometry/vectors/index.d.ts.map +1 -1
  68. package/lib/exercises/math/geometry/vectors/index.js +1 -2
  69. package/lib/exercises/math/geometry/vectors/scalarProduct/index.d.ts +3 -0
  70. package/lib/exercises/math/geometry/vectors/scalarProduct/index.d.ts.map +1 -0
  71. package/lib/exercises/math/geometry/vectors/scalarProduct/index.js +19 -0
  72. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductOrthoInSquare.d.ts +9 -0
  73. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductOrthoInSquare.d.ts.map +1 -0
  74. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductOrthoInSquare.js +136 -0
  75. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductViaCoords.d.ts +8 -0
  76. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductViaCoords.d.ts.map +1 -0
  77. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductViaCoords.js +60 -0
  78. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductViaCos.d.ts +9 -0
  79. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductViaCos.d.ts.map +1 -0
  80. package/lib/exercises/math/geometry/vectors/scalarProduct/scalarProductViaCos.js +67 -0
  81. package/lib/exercises/math/geometry/vectors/vectorCoordinatesFromTwoPoints.js +1 -1
  82. package/lib/exercises/math/percent/cmToEvolution.js +1 -1
  83. package/lib/exercises/math/powers/powersDivision.js +1 -1
  84. package/lib/exercises/math/powers/powersProduct.js +1 -1
  85. package/lib/exercises/math/probaStat/calculateProbaOfBinomialDistribution.js +1 -1
  86. package/lib/exercises/math/probaStat/conditionalProbability.js +1 -1
  87. package/lib/exercises/math/probaStat/expectedValueOfBinomialProba.js +1 -1
  88. package/lib/exercises/math/probaStat/varianceOfBinomialProba.js +1 -1
  89. package/lib/exercises/math/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +1 -1
  90. package/lib/exercises/math/sequences/arithmetic/arithmeticFindTerm.js +1 -1
  91. package/lib/exercises/math/sequences/geometric/geometricExplicitFormulaUsage.js +1 -1
  92. package/lib/exercises/math/sequences/geometric/geometricFindTerm.js +1 -1
  93. package/lib/exercises/math/spaceGeometry/vectors/spaceVectorCoordinatesFromPoints.js +1 -1
  94. package/lib/exercises/math/spaceGeometry/vectors/spaceVectorNormCalculation.js +1 -1
  95. package/lib/exercises/math/trigonometry/arcValue.js +1 -1
  96. package/lib/exercises/pc/index.d.ts +3 -3
  97. package/lib/exercises/pc/index.d.ts.map +1 -1
  98. package/lib/exercises/pc/index.js +3 -3
  99. package/lib/index.d.ts +27 -9
  100. package/lib/index.d.ts.map +1 -1
  101. package/lib/math/geometry/line.d.ts +1 -0
  102. package/lib/math/geometry/line.d.ts.map +1 -1
  103. package/lib/math/geometry/line.js +3 -0
  104. package/lib/math/geometry/point.d.ts.map +1 -1
  105. package/lib/math/geometry/point.js +1 -0
  106. package/lib/math/polynomials/polynomial.js +1 -1
  107. package/lib/math/polynomials/trinom.d.ts +5 -0
  108. package/lib/math/polynomials/trinom.d.ts.map +1 -1
  109. package/lib/math/polynomials/trinom.js +12 -0
  110. package/lib/playground.d.ts.map +1 -1
  111. package/lib/playground.js +10 -12
  112. package/lib/prototypesEnhancement.d.ts +2 -1
  113. package/lib/prototypesEnhancement.d.ts.map +1 -1
  114. package/lib/prototypesEnhancement.js +2 -2
  115. package/lib/server.d.ts.map +1 -1
  116. package/lib/tree/nodes/node.d.ts +2 -0
  117. package/lib/tree/nodes/node.d.ts.map +1 -1
  118. package/lib/tree/nodes/numbers/numberNode.d.ts +4 -3
  119. package/lib/tree/nodes/numbers/numberNode.d.ts.map +1 -1
  120. package/lib/tree/nodes/numbers/numberNode.js +7 -3
  121. package/lib/tree/nodes/operators/addNode.d.ts +2 -2
  122. package/lib/tree/nodes/operators/addNode.d.ts.map +1 -1
  123. package/lib/tree/nodes/operators/addNode.js +12 -6
  124. package/lib/tree/nodes/operators/multiplyNode.d.ts +2 -1
  125. package/lib/tree/nodes/operators/multiplyNode.d.ts.map +1 -1
  126. package/lib/tree/nodes/operators/multiplyNode.js +16 -11
  127. package/lib/tree/nodes/operators/substractNode.d.ts +4 -3
  128. package/lib/tree/nodes/operators/substractNode.d.ts.map +1 -1
  129. package/lib/tree/nodes/operators/substractNode.js +12 -5
  130. package/lib/tree/parsers/affineParser.d.ts +3 -0
  131. package/lib/tree/parsers/affineParser.d.ts.map +1 -0
  132. package/lib/tree/parsers/affineParser.js +26 -0
  133. package/lib/tree/parsers/monomParser.d.ts +2 -0
  134. package/lib/tree/parsers/monomParser.d.ts.map +1 -0
  135. package/lib/tree/parsers/monomParser.js +5 -0
  136. package/lib/types/keyIds.d.ts +1 -1
  137. package/lib/types/keyIds.d.ts.map +1 -1
  138. package/lib/utils/latex/alignTex.d.ts +2 -0
  139. package/lib/utils/latex/alignTex.d.ts.map +1 -0
  140. package/lib/utils/latex/alignTex.js +20 -0
  141. package/lib/utils/latex/colorize.d.ts +2 -0
  142. package/lib/utils/latex/colorize.d.ts.map +1 -0
  143. package/lib/utils/latex/colorize.js +9 -0
  144. package/package.json +4 -1
@@ -8,7 +8,7 @@ const real_1 = require("../../../../math/numbers/reals/real");
8
8
  const sqrtNode_1 = require("../../../../tree/nodes/functions/sqrtNode");
9
9
  const addNode_1 = require("../../../../tree/nodes/operators/addNode");
10
10
  const powerNode_1 = require("../../../../tree/nodes/operators/powerNode");
11
- const alignTex_1 = require("../../../../utils/alignTex");
11
+ const alignTex_1 = require("../../../../utils/latex/alignTex");
12
12
  const getSpaceVectorNormCalculationQuestion = () => {
13
13
  const u = spaceVector_1.SpaceVectorConstructor.random("u", false);
14
14
  const correctAnswer = u.getNorm();
@@ -12,7 +12,7 @@ const tanNode_1 = require("../../../tree/nodes/functions/tanNode");
12
12
  const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
13
13
  const arcSinNode_1 = require("../../../tree/nodes/functions/arcSinNode");
14
14
  const arccosNode_1 = require("../../../tree/nodes/functions/arccosNode");
15
- const alignTex_1 = require("../../../utils/alignTex");
15
+ const alignTex_1 = require("../../../utils/latex/alignTex");
16
16
  const arctanNode_1 = require("../../../tree/nodes/functions/arctanNode");
17
17
  const getArcValueQuestion = () => {
18
18
  const trigFunctions = ["sin", "cos", "tan"];
@@ -43,8 +43,8 @@ export * from "../math/calculLitteral/equation/equationType1Exercise";
43
43
  export * from "../math/calculLitteral/equation/equationType2Exercise";
44
44
  export * from "../math/calculLitteral/equation/equationType3Exercise";
45
45
  export * from "../math/calculLitteral/equation/equationType4Exercise";
46
- export * from "../math/geometry/vectors/scalarProductViaCoords";
47
- export * from "../math/geometry/vectors/scalarProductViaCos";
46
+ export * from "../math/geometry/vectors/scalarProduct/scalarProductViaCoords";
47
+ export * from "../math/geometry/vectors/scalarProduct/scalarProductViaCos";
48
48
  export * from "../math/geometry/vectors/coordinatesReading";
49
49
  export * from "../math/functions/affines/affineExpressionReading";
50
50
  export * from "../math/geometry/thales/thales";
@@ -52,7 +52,7 @@ export * from "../math/geometry/thales/thalesCalcul";
52
52
  export * from "../math/equaDiff/equaDiffCheckSolutionFirstOrder";
53
53
  export * from "../math/equaDiff/equaDiffGeneralForme";
54
54
  export * from "../math/equaDiff/equaDiffGeneralFormeWithIC";
55
- export * from "../math/derivation/derivativeNumberReading";
55
+ export * from "../math/derivation/tangent/derivativeNumberReading";
56
56
  export * from "../math/derivation/derivative/usualderivative";
57
57
  export { thirdDegreeDerivative } from "../math/derivation/derivative/thirdDegreeDerivative";
58
58
  export { firstDegreeDerivative } from "../math/derivation/derivative/firstDegreeDerivative";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exercises/pc/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,MAAM,CAAC;AACrB,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,8BAA8B,CAAC;AAC7C,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yCAAyC,CAAC;AACxD,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AAExB,yBAAyB;AACzB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qDAAqD,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,cAAc,oCAAoC,CAAC;AACnD,cAAc,6CAA6C,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,iDAAiD,CAAC;AAChE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,mDAAmD,CAAC;AAClE,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,kDAAkD,CAAC;AACjE,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+CAA+C,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exercises/pc/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,MAAM,CAAC;AACrB,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,8BAA8B,CAAC;AAC7C,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yCAAyC,CAAC;AACxD,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AAExB,yBAAyB;AACzB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qDAAqD,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,cAAc,oCAAoC,CAAC;AACnD,cAAc,6CAA6C,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,+DAA+D,CAAC;AAC9E,cAAc,4DAA4D,CAAC;AAC3E,cAAc,6CAA6C,CAAC;AAC5D,cAAc,mDAAmD,CAAC;AAClE,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,kDAAkD,CAAC;AACjE,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oDAAoD,CAAC;AACnE,cAAc,+CAA+C,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC"}
@@ -64,8 +64,8 @@ __exportStar(require("../math/calculLitteral/equation/equationType1Exercise"), e
64
64
  __exportStar(require("../math/calculLitteral/equation/equationType2Exercise"), exports);
65
65
  __exportStar(require("../math/calculLitteral/equation/equationType3Exercise"), exports);
66
66
  __exportStar(require("../math/calculLitteral/equation/equationType4Exercise"), exports);
67
- __exportStar(require("../math/geometry/vectors/scalarProductViaCoords"), exports);
68
- __exportStar(require("../math/geometry/vectors/scalarProductViaCos"), exports);
67
+ __exportStar(require("../math/geometry/vectors/scalarProduct/scalarProductViaCoords"), exports);
68
+ __exportStar(require("../math/geometry/vectors/scalarProduct/scalarProductViaCos"), exports);
69
69
  __exportStar(require("../math/geometry/vectors/coordinatesReading"), exports);
70
70
  __exportStar(require("../math/functions/affines/affineExpressionReading"), exports);
71
71
  __exportStar(require("../math/geometry/thales/thales"), exports);
@@ -73,7 +73,7 @@ __exportStar(require("../math/geometry/thales/thalesCalcul"), exports);
73
73
  __exportStar(require("../math/equaDiff/equaDiffCheckSolutionFirstOrder"), exports);
74
74
  __exportStar(require("../math/equaDiff/equaDiffGeneralForme"), exports);
75
75
  __exportStar(require("../math/equaDiff/equaDiffGeneralFormeWithIC"), exports);
76
- __exportStar(require("../math/derivation/derivativeNumberReading"), exports);
76
+ __exportStar(require("../math/derivation/tangent/derivativeNumberReading"), exports);
77
77
  __exportStar(require("../math/derivation/derivative/usualderivative"), exports);
78
78
  var thirdDegreeDerivative_1 = require("../math/derivation/derivative/thirdDegreeDerivative");
79
79
  Object.defineProperty(exports, "thirdDegreeDerivative", { enumerable: true, get: function () { return thirdDegreeDerivative_1.thirdDegreeDerivative; } });
package/lib/index.d.ts CHANGED
@@ -20,6 +20,9 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
20
20
  }> | import("./exercises/exercise").Exercise<{
21
21
  a: number;
22
22
  b: number;
23
+ }> | import("./exercises/exercise").Exercise<{
24
+ nb: number;
25
+ divisor: number;
23
26
  }> | import("./exercises/exercise").Exercise<{
24
27
  integerFirst: boolean;
25
28
  integer: number;
@@ -188,6 +191,10 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
188
191
  affine2: number[];
189
192
  }> | import("./exercises/exercise").Exercise<{
190
193
  coeffs: number[];
194
+ }> | import("./exercises/exercise").Exercise<{
195
+ a: number;
196
+ b: number;
197
+ c: number;
191
198
  }> | import("./exercises/exercise").Exercise<{
192
199
  randNbr: number;
193
200
  }> | import("./exercises/exercise").Exercise<{
@@ -259,6 +266,12 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
259
266
  }> | import("./exercises/exercise").Exercise<{
260
267
  a: number;
261
268
  bOperand: number;
269
+ }> | import("./exercises/exercise").Exercise<{
270
+ a: number;
271
+ b: number;
272
+ c: number;
273
+ d: number;
274
+ isSubstract: boolean;
262
275
  }> | import("./exercises/exercise").Exercise<{
263
276
  b: number;
264
277
  c: number;
@@ -480,12 +493,17 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
480
493
  }> | import("./exercises/exercise").Exercise<{
481
494
  coeffs: number[];
482
495
  x: number;
496
+ }> | import("./exercises/exercise").Exercise<{
497
+ abscisse: number;
498
+ trinome: number[];
483
499
  }> | import("./exercises/exercise").Exercise<{
484
500
  A: number[];
485
501
  B: number[];
486
502
  }> | import("./exercises/exercise").Exercise<{
487
- abscisse: number;
488
- trinome: number[];
503
+ xA: number;
504
+ yA: number;
505
+ yPrimeA: any;
506
+ trinomCoeffs: number[];
489
507
  }> | import("./exercises/exercise").Exercise<{
490
508
  a: number;
491
509
  }> | import("./exercises/exercise").Exercise<{
@@ -851,16 +869,9 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
851
869
  }> | import("./exercises/exercise").Exercise<{
852
870
  uCoords: string[];
853
871
  vCoords: string[];
854
- }> | import("./exercises/exercise").Exercise<{
855
- uCoords: string[];
856
- vCoords: string[];
857
872
  }> | import("./exercises/exercise").Exercise<{
858
873
  A: number[];
859
874
  B: number[];
860
- }> | import("./exercises/exercise").Exercise<{
861
- AB: number;
862
- AC: number;
863
- trigoPoint: string;
864
875
  }> | import("./exercises/exercise").Exercise<{
865
876
  xu: number;
866
877
  yu: number;
@@ -926,6 +937,13 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
926
937
  }> | import("./exercises/exercise").Exercise<{
927
938
  x: number;
928
939
  y: number;
940
+ }> | import("./exercises/exercise").Exercise<{
941
+ uCoords: string[];
942
+ vCoords: string[];
943
+ }> | import("./exercises/exercise").Exercise<{
944
+ AB: number;
945
+ AC: number;
946
+ trigoPoint: string;
929
947
  }> | import("./exercises/exercise").Exercise<{
930
948
  trinom: number[];
931
949
  }> | import("./exercises/exercise").Exercise<{
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,OAAO,yBAAyB,CAAC;AAEjC,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAA+B,CAAC;AACnD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAA6B,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,yBAAyB,CAAC;AAEjC,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAA+B,CAAC;AACnD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAA6B,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC"}
@@ -21,6 +21,7 @@ export declare class Line {
21
21
  getEquation: (u: Vector, a: Point) => EqualNode;
22
22
  getCartesianEquation(): EqualNode;
23
23
  toTex(): string;
24
+ toTexNoLeftRight(): string;
24
25
  toGGBCommands(shouldBuildPoints: boolean, { isFixed, showLabel, showUnderlyingPointsLabel, }?: ToGGBCommandsProps): string[];
25
26
  }
26
27
  //# sourceMappingURL=line.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../../src/math/geometry/line.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAEvF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAQjE,OAAO,EAAE,KAAK,EAAoB,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,8BAAsB,eAAe;IACnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM;CAK5B;AACD,qBAAa,IAAI;IACf,MAAM,EAAE,KAAK,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC7B,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;gBACJ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,MAAM;IAoBvD,YAAY,CAAC,KAAK,EAAE,KAAK;IASzB,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,GAAE,OAAe;IAgBnD,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM;IAa5B,WAAW,MAAO,MAAM,KAAK,KAAK,KAAG,SAAS,CAmB5C;IAEF,oBAAoB,IAAI,SAAS;IAuBjC,KAAK;IAIL,aAAa,CACX,iBAAiB,EAAE,OAAO,EAC1B,EACE,OAAc,EACd,SAAiB,EACjB,yBAAgC,GACjC,GAAE,kBAAuB;CAoB7B"}
1
+ {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../../src/math/geometry/line.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAEvF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAQjE,OAAO,EAAE,KAAK,EAAoB,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,8BAAsB,eAAe;IACnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM;CAK5B;AACD,qBAAa,IAAI;IACf,MAAM,EAAE,KAAK,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC7B,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;gBACJ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,MAAM;IAoBvD,YAAY,CAAC,KAAK,EAAE,KAAK;IASzB,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,GAAE,OAAe;IAgBnD,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM;IAa5B,WAAW,MAAO,MAAM,KAAK,KAAK,KAAG,SAAS,CAmB5C;IAEF,oBAAoB,IAAI,SAAS;IAuBjC,KAAK;IAGL,gBAAgB;IAIhB,aAAa,CACX,iBAAiB,EAAE,OAAO,EAC1B,EACE,OAAc,EACd,SAAiB,EACjB,yBAAgC,GACjC,GAAE,kBAAuB;CAoB7B"}
@@ -94,6 +94,9 @@ class Line {
94
94
  toTex() {
95
95
  return this.name;
96
96
  }
97
+ toTexNoLeftRight() {
98
+ return this.name.replace("\\left", "").replace("\\right", "");
99
+ }
97
100
  toGGBCommands(shouldBuildPoints, { isFixed = true, showLabel = false, showUnderlyingPointsLabel = true, } = {}) {
98
101
  const commands = [
99
102
  `${this.ggbName}=Line(${this.pointA.name},${this.pointB.name})`,
@@ -1 +1 @@
1
- {"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../src/math/geometry/point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,uBAAuB,CAAC;AAI1D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAEvF,8BAAsB,gBAAgB;IACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAMlC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE;IAetC,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM;CAclC;AAED,qBAAa,KAAK;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,EAAE,aAAa,CAAC;IACjB,CAAC,EAAE,aAAa,CAAC;gBACL,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa;IAM5D,KAAK,IAAI,MAAM;IAGf,aAAa;;;;;;;;;;IAQb,eAAe,IAAI,MAAM;IAGzB,QAAQ,IAAI,MAAM;IAIlB,UAAU,IAAI,MAAM;IAMpB,UAAU,IAAI,MAAM;IAMpB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,SAAM,GAAG,KAAK;IAiBrC,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM;IAM5B,MAAM,CAAC,CAAC,EAAE,KAAK,GAAG,OAAO;IAGzB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;IAM5B,YAAY,CAAC,EAAE,OAAc,EAAE,SAAgB,EAAE,GAAE,kBAAuB;CAO3E"}
1
+ {"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../src/math/geometry/point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,uBAAuB,CAAC;AAI1D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAEvF,8BAAsB,gBAAgB;IACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAMlC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE;IAetC,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM;CAclC;AAED,qBAAa,KAAK;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,EAAE,aAAa,CAAC;IACjB,CAAC,EAAE,aAAa,CAAC;gBACL,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa;IAM5D,KAAK,IAAI,MAAM;IAGf,aAAa;;;;;;;;;;IAQb,eAAe,IAAI,MAAM;IAGzB,QAAQ,IAAI,MAAM;IAIlB,UAAU,IAAI,MAAM;IAMpB,UAAU,IAAI,MAAM;IAMpB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,SAAM,GAAG,KAAK;IAiBrC,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM;IAM5B,MAAM,CAAC,CAAC,EAAE,KAAK,GAAG,OAAO;IAGzB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;IAM5B,YAAY,CAAC,EAAE,OAAc,EAAE,SAAgB,EAAE,GAAE,kBAAuB;CAQ3E"}
@@ -101,6 +101,7 @@ class Point {
101
101
  `${this.name} = (${this.x.toMathString()}, ${this.y.toMathString()})`,
102
102
  `SetFixed(${this.name},${isFixed ? "true" : "false"})`,
103
103
  `ShowLabel(${this.name},${showLabel ? "true" : "false"})`,
104
+ `SetPointStyle(${this.name}, 1)`,
104
105
  ];
105
106
  }
106
107
  }
@@ -352,7 +352,7 @@ class Polynomial {
352
352
  }
353
353
  }
354
354
  if (nextCoeff) {
355
- return new addNode_1.AddNode(res, recursive(cursor - 1));
355
+ return new addNode_1.AddNode(res, recursive(cursor - 1), opts);
356
356
  }
357
357
  else {
358
358
  return res;
@@ -70,5 +70,10 @@ export declare class Trinom extends Polynomial {
70
70
  getSommet(): Point;
71
71
  getCoords(): number[];
72
72
  toPython(): string;
73
+ toGGBCommands({ name, color, label }?: {
74
+ name: string;
75
+ color: string;
76
+ label: string;
77
+ }): string[];
73
78
  }
74
79
  //# sourceMappingURL=trinom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"trinom.d.ts","sourceRoot":"","sources":["../../../src/math/polynomials/trinom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trinom.d.ts","sourceRoot":"","sources":["../../../src/math/polynomials/trinom.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ const oppositeNode_1 = require("../../tree/nodes/functions/oppositeNode");
16
16
  const gcd_1 = require("../utils/arithmetic/gcd");
17
17
  const randint_1 = require("../utils/random/randint");
18
18
  const random_1 = require("../../utils/random");
19
+ const colors_1 = require("../../geogebra/colors");
19
20
  class TrinomConstructor {
20
21
  static random(aOpts, bOpts, cOpts) {
21
22
  const a = (0, randint_1.randint)(aOpts?.min ?? -9, aOpts?.max ?? 10, aOpts?.excludes ?? [0]);
@@ -230,5 +231,16 @@ class Trinom extends polynomial_1.Polynomial {
230
231
  : ` - ${Math.abs(this.c)}`;
231
232
  return `${aString}${bString}${cString}`;
232
233
  }
234
+ toGGBCommands({ name, color, label } = { name: "f", color: colors_1.blueMain, label: "" }) {
235
+ const cmds = [`${name} = ${this.toString()}`];
236
+ if (color) {
237
+ cmds.push(`SetColor(${name}, "${color}")`);
238
+ }
239
+ if (label) {
240
+ cmds.push(`SetCaption(${name}, "${label}")`);
241
+ cmds.push(`ShowLabel(${name}, true)`);
242
+ }
243
+ return cmds;
244
+ }
233
245
  }
234
246
  exports.Trinom = Trinom;
@@ -1 +1 @@
1
- {"version":3,"file":"playground.d.ts","sourceRoot":"","sources":["../src/playground.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,UAAU,YActB,CAAC"}
1
+ {"version":3,"file":"playground.d.ts","sourceRoot":"","sources":["../src/playground.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,UAAU,YAYtB,CAAC"}
package/lib/playground.js CHANGED
@@ -2,18 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.playground = void 0;
4
4
  const playground = () => {
5
- // const node = new AddNode(
6
- // new MultiplyNode(new Affine(1, 0).toTree(), new Affine(3, 1).toTree()),
7
- // new MultiplyNode(
8
- // new ExpNode(new SqrtNode((3).toTree())),
9
- // new CosNode((3).toTree()),
10
- // ),
11
- // );
12
- // const node = new NumberNode(3);
13
- // const node = new MultiplyNode((2).toTree(), (3).toTree());
14
- // const ids = node.toIdentifiers();
15
- // const parsed = NodeConstructor.fromIdentifiers(ids);
5
+ // const affine1 = new Affine(4, 5);
6
+ // const affine2 = new Affine(2, 3);
7
+ // const tree = affine1.toTree({ toTexOptions: { color: "green" } });
8
+ // console.log(tree.opts);
9
+ // console.log(tree.toTex());
10
+ // const node = new MultiplyNode(
11
+ // affine1.toTree({ toTexOptions: { color: "green" } }),
12
+ // new (coinFlip() ? SubstractNode : AddNode)(affine2.toTree(), (1).toTree()),
13
+ // ).toTex();
16
14
  // console.log(node);
17
- // console.log(parsed);
15
+ console.log((3).toTree({ toTexOptions: { color: "red" } }));
18
16
  };
19
17
  exports.playground = playground;
@@ -1,7 +1,8 @@
1
1
  import { AlgebraicNode } from "./tree/nodes/algebraicNode";
2
+ import { NodeOptions } from "./tree/nodes/node";
2
3
  declare global {
3
4
  interface Number {
4
- toTree: () => AlgebraicNode;
5
+ toTree: (opts?: NodeOptions) => AlgebraicNode;
5
6
  frenchify: () => string;
6
7
  toScientific: (decimals?: number) => AlgebraicNode;
7
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prototypesEnhancement.d.ts","sourceRoot":"","sources":["../src/prototypesEnhancement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAS3D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,EAAE,MAAM,aAAa,CAAC;QAC5B,SAAS,EAAE,MAAM,MAAM,CAAC;QACxB,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,aAAa,CAAC;KACpD;IACD,UAAU,MAAM;QACd,MAAM,EAAE,MAAM,aAAa,CAAC;QAC5B,WAAW,EAAE,MAAM,MAAM,CAAC;KAC3B;CACF;AAqBD,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"prototypesEnhancement.d.ts","sourceRoot":"","sources":["../src/prototypesEnhancement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAQ,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAStD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,WAAW,KAAK,aAAa,CAAC;QAC9C,SAAS,EAAE,MAAM,MAAM,CAAC;QACxB,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,aAAa,CAAC;KACpD;IACD,UAAU,MAAM;QACd,MAAM,EAAE,MAAM,aAAa,CAAC;QAC5B,WAAW,EAAE,MAAM,MAAM,CAAC;KAC3B;CACF;AAqBD,OAAO,EAAE,CAAC"}
@@ -10,13 +10,13 @@ String.prototype.toTree = function () {
10
10
  String.prototype.unfrenchify = function () {
11
11
  return Number(this.valueOf().replace(",", "."));
12
12
  };
13
- Number.prototype.toTree = function () {
13
+ Number.prototype.toTree = function (opts) {
14
14
  const value = this.valueOf();
15
15
  if (value === Infinity)
16
16
  return infiniteNode_1.PlusInfinityNode;
17
17
  if (value === -Infinity)
18
18
  return infiniteNode_1.MinusInfinityNode;
19
- return new numberNode_1.NumberNode(value);
19
+ return new numberNode_1.NumberNode(value, "", "", opts);
20
20
  };
21
21
  Number.prototype.frenchify = function () {
22
22
  return (this.valueOf() + "").replace(".", ",");
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AA2CA,OAAO,yBAAyB,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAUA,OAAO,yBAAyB,CAAC"}
@@ -23,6 +23,7 @@ export type NodeOptions = {
23
23
  allowPowerOne?: boolean;
24
24
  allowSimplifySqrt?: boolean;
25
25
  forceParenthesis?: boolean;
26
+ toTexOptions?: ToTexOptions;
26
27
  };
27
28
  export type ToTexOptions = {
28
29
  displayStyle?: boolean;
@@ -32,6 +33,7 @@ export type ToTexOptions = {
32
33
  notScientific?: boolean;
33
34
  forceNoSimplification?: boolean;
34
35
  forceParenthesis?: boolean;
36
+ color?: string;
35
37
  };
36
38
  export declare enum NodeIds {
37
39
  add = 0,
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/tree/nodes/node.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,MAAM,IAAA;IACN,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,UAAU,IAAA;IACV,KAAK,IAAA;IACL,MAAM,IAAA;IACN,QAAQ,IAAA;IACR,OAAO,IAAA;IACP,MAAM,KAAA;IACN,GAAG,KAAA;CACJ;AACD,MAAM,MAAM,WAAW,GAAG;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,oBAAY,OAAO;IACjB,GAAG,IAAA;IACH,SAAS,IAAA;IACT,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,MAAM,IAAA;IACN,KAAK,IAAA;IACL,KAAK,IAAA;IACL,MAAM,IAAA;IACN,OAAO,IAAA;IACP,QAAQ,IAAA;IACR,QAAQ,KAAA;IACR,OAAO,KAAA;IACP,WAAW,KAAA;IACX,QAAQ,KAAA;IACR,KAAK,KAAA;IACL,OAAO,KAAA;IACP,KAAK,KAAA;IACL,UAAU,KAAA;IACV,gBAAgB,KAAA;IAChB,GAAG,KAAA;IACH,MAAM,KAAA;IACN,MAAM,KAAA;IACN,MAAM,KAAA;IACN,GAAG,KAAA;IACH,GAAG,KAAA;IACH,GAAG,KAAA;IACH,GAAG,KAAA;IACH,KAAK,KAAA;IACL,GAAG,KAAA;IACH,IAAI,KAAA;IACJ,QAAQ,KAAA;IACR,QAAQ,KAAA;IACR,MAAM,KAAA;IACN,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,UAAU,KAAA;IACV,kBAAkB,KAAA;CACnB;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B,iBAAiB,EAAE,CAAC,IAAI,CAAC,EAAE,WAAW,KAAK,IAAI,EAAE,CAAC;IAClD,cAAc,EAAE,CAAC,IAAI,CAAC,EAAE,WAAW,KAAK,MAAM,EAAE,CAAC;IACjD,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,KAAK,MAAM,CAAC;IAGvC,aAAa,EAAE,MAAM;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC5D"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/tree/nodes/node.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,MAAM,IAAA;IACN,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,UAAU,IAAA;IACV,KAAK,IAAA;IACL,MAAM,IAAA;IACN,QAAQ,IAAA;IACR,OAAO,IAAA;IACP,MAAM,KAAA;IACN,GAAG,KAAA;CACJ;AACD,MAAM,MAAM,WAAW,GAAG;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,oBAAY,OAAO;IACjB,GAAG,IAAA;IACH,SAAS,IAAA;IACT,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,MAAM,IAAA;IACN,KAAK,IAAA;IACL,KAAK,IAAA;IACL,MAAM,IAAA;IACN,OAAO,IAAA;IACP,QAAQ,IAAA;IACR,QAAQ,KAAA;IACR,OAAO,KAAA;IACP,WAAW,KAAA;IACX,QAAQ,KAAA;IACR,KAAK,KAAA;IACL,OAAO,KAAA;IACP,KAAK,KAAA;IACL,UAAU,KAAA;IACV,gBAAgB,KAAA;IAChB,GAAG,KAAA;IACH,MAAM,KAAA;IACN,MAAM,KAAA;IACN,MAAM,KAAA;IACN,GAAG,KAAA;IACH,GAAG,KAAA;IACH,GAAG,KAAA;IACH,GAAG,KAAA;IACH,KAAK,KAAA;IACL,GAAG,KAAA;IACH,IAAI,KAAA;IACJ,QAAQ,KAAA;IACR,QAAQ,KAAA;IACR,MAAM,KAAA;IACN,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,UAAU,KAAA;IACV,kBAAkB,KAAA;CACnB;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B,iBAAiB,EAAE,CAAC,IAAI,CAAC,EAAE,WAAW,KAAK,IAAI,EAAE,CAAC;IAClD,cAAc,EAAE,CAAC,IAAI,CAAC,EAAE,WAAW,KAAK,MAAM,EAAE,CAAC;IACjD,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,KAAK,MAAM,CAAC;IAGvC,aAAa,EAAE,MAAM;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC5D"}
@@ -1,4 +1,4 @@
1
- import { Node, NodeIds, NodeType } from "../node";
1
+ import { Node, NodeIds, NodeOptions, NodeType, ToTexOptions } from "../node";
2
2
  import { AlgebraicNode } from "../algebraicNode";
3
3
  export declare function isNumberNode(a: Node): a is NumberNode;
4
4
  export declare abstract class NumberNodeConstructor {
@@ -10,9 +10,10 @@ export declare class NumberNode implements AlgebraicNode {
10
10
  value: number;
11
11
  type: NodeType;
12
12
  isNumeric: boolean;
13
- constructor(value: number, tex?: string, mathString?: string);
13
+ opts?: NodeOptions;
14
+ constructor(value: number, tex?: string, mathString?: string, opts?: NodeOptions);
14
15
  toMathString(): string;
15
- toTex(): string;
16
+ toTex(options?: ToTexOptions): string;
16
17
  toMathjs(): string;
17
18
  toIdentifiers(): {
18
19
  id: NodeIds;
@@ -1 +1 @@
1
- {"version":3,"file":"numberNode.d.ts","sourceRoot":"","sources":["../../../../src/tree/nodes/numbers/numberNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,UAAU,CAErD;AAED,8BAAsB,qBAAqB;IACzC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,EAAO;CAGhE;AACD,qBAAa,UAAW,YAAW,aAAa;IAC9C,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAmB;IACjC,SAAS,EAAE,OAAO,CAAC;gBACP,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;IAO5D,YAAY,IAAI,MAAM;IAGtB,KAAK,IAAI,MAAM;IAGf,QAAQ;IAGR,aAAa;;;;IAMb,cAAc;IAOd,iBAAiB;IAGjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAGrC,QAAQ;IAGR,MAAM,CAAC,IAAI,EAAE,aAAa;CAG3B"}
1
+ {"version":3,"file":"numberNode.d.ts","sourceRoot":"","sources":["../../../../src/tree/nodes/numbers/numberNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,UAAU,CAErD;AAED,8BAAsB,qBAAqB;IACzC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,EAAO;CAGhE;AACD,qBAAa,UAAW,YAAW,aAAa;IAC9C,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAmB;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,WAAW,CAAC;gBAEjB,KAAK,EAAE,MAAM,EACb,GAAG,CAAC,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,WAAW;IASpB,YAAY,IAAI,MAAM;IAGtB,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM;IAKrC,QAAQ;IAGR,aAAa;;;;IAMb,cAAc;IAOd,iBAAiB;IAGjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAGrC,QAAQ;IAGR,MAAM,CAAC,IAAI,EAAE,aAAa;CAG3B"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NumberNode = exports.NumberNodeConstructor = exports.isNumberNode = void 0;
4
4
  const node_1 = require("../node");
5
5
  const randint_1 = require("../../../math/utils/random/randint");
6
+ const colorize_1 = require("../../../utils/latex/colorize");
6
7
  function isNumberNode(a) {
7
8
  return a.type === node_1.NodeType.number;
8
9
  }
@@ -14,18 +15,21 @@ class NumberNodeConstructor {
14
15
  }
15
16
  exports.NumberNodeConstructor = NumberNodeConstructor;
16
17
  class NumberNode {
17
- constructor(value, tex, mathString) {
18
+ constructor(value, tex, mathString, opts) {
18
19
  this.type = node_1.NodeType.number;
19
20
  this.value = value;
20
21
  this.tex = tex?.replace(".", ",") || (value + "").replace(".", ",");
21
22
  this.mathString = mathString || this.value + "";
22
23
  this.isNumeric = true;
24
+ this.opts = opts;
23
25
  }
24
26
  toMathString() {
25
27
  return `${this.mathString}`;
26
28
  }
27
- toTex() {
28
- return `${this.tex}`;
29
+ toTex(options) {
30
+ const opts = this.opts?.toTexOptions ?? options;
31
+ const color = opts?.color;
32
+ return (0, colorize_1.colorize)(`${this.tex}`, color);
29
33
  }
30
34
  toMathjs() {
31
35
  return this.toMathString();
@@ -1,4 +1,4 @@
1
- import { Node, NodeIds, NodeOptions, NodeType } from "../node";
1
+ import { Node, NodeIds, NodeOptions, NodeType, ToTexOptions } from "../node";
2
2
  import { CommutativeOperatorNode, OperatorIds } from "./operatorNode";
3
3
  import { AlgebraicNode, SimplifyOptions } from "../algebraicNode";
4
4
  export declare function isAddNode(a: Node): a is AddNode;
@@ -15,7 +15,7 @@ export declare class AddNode implements CommutativeOperatorNode {
15
15
  toEquivalentNodes(opts?: NodeOptions): AlgebraicNode[];
16
16
  toAllTexs(): string[];
17
17
  toAllValidTexs(opts?: NodeOptions): string[];
18
- toTex(): string;
18
+ toTex(options?: ToTexOptions): string;
19
19
  evaluate(vars: Record<string, number>): number;
20
20
  simplify(opts?: SimplifyOptions): AlgebraicNode;
21
21
  toIdentifiers(): {
@@ -1 +1 @@
1
- {"version":3,"file":"addNode.d.ts","sourceRoot":"","sources":["../../../../src/tree/nodes/operators/addNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAgB,MAAM,SAAS,CAAC;AAC7E,OAAO,EACL,uBAAuB,EACvB,WAAW,EAGZ,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOlE,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,OAAO,CAE/C;AAED,qBAAa,OAAQ,YAAW,uBAAuB;IACrD,EAAE,EAAE,WAAW,CAAC;IAChB,SAAS,EAAE,aAAa,CAAC;IACzB,UAAU,EAAE,aAAa,CAAC;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;gBAEjB,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,aAAa,EACzB,IAAI,CAAC,EAAE,WAAW;IASpB,OAAO,aAGL;IAEF,YAAY,IAAI,MAAM;IAItB,iBAAiB,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,aAAa,EAAE;IAoCtD,SAAS,IAAI,MAAM,EAAE;IAIrB,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE;IAK5C,KAAK,IAAI,MAAM;IAUf,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAMrC,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,GAAG,aAAa;IA0K/C,aAAa;;;;;;;;;IAOb,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO;CAUrC"}
1
+ {"version":3,"file":"addNode.d.ts","sourceRoot":"","sources":["../../../../src/tree/nodes/operators/addNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EACL,uBAAuB,EACvB,WAAW,EAGZ,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAQlE,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,OAAO,CAE/C;AAED,qBAAa,OAAQ,YAAW,uBAAuB;IACrD,EAAE,EAAE,WAAW,CAAC;IAChB,SAAS,EAAE,aAAa,CAAC;IACzB,UAAU,EAAE,aAAa,CAAC;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;gBAEjB,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,aAAa,EACzB,IAAI,CAAC,EAAE,WAAW;IASpB,OAAO,aAGL;IAEF,YAAY,IAAI,MAAM;IAItB,iBAAiB,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,aAAa,EAAE;IAoCtD,SAAS,IAAI,MAAM,EAAE;IAIrB,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE;IAK5C,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM;IAerC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAMrC,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,GAAG,aAAa;IA0K/C,aAAa;;;;;;;;;IAOb,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO;CAUrC"}
@@ -13,6 +13,7 @@ const oppositeNode_1 = require("../functions/oppositeNode");
13
13
  const numberNode_1 = require("../numbers/numberNode");
14
14
  const multiplyNode_1 = require("./multiplyNode");
15
15
  const fractionNode_1 = require("./fractionNode");
16
+ const colorize_1 = require("../../../utils/latex/colorize");
16
17
  function isAddNode(a) {
17
18
  return (0, operatorNode_1.isOperatorNode)(a) && a.id === operatorNode_1.OperatorIds.add;
18
19
  }
@@ -72,17 +73,22 @@ class AddNode {
72
73
  const options = opts ?? this.opts;
73
74
  return this.toEquivalentNodes(options).map((node) => node.toTex());
74
75
  }
75
- toTex() {
76
- const rightTex = this.rightChild.toTex();
77
- const leftTex = this.leftChild.toTex();
76
+ toTex(options) {
77
+ const opts = this.opts?.toTexOptions ?? options;
78
+ const color = opts?.color;
79
+ const childOpts = { ...opts };
80
+ if (color)
81
+ childOpts.color = undefined;
82
+ const rightTex = this.rightChild.toTex(childOpts);
83
+ const leftTex = this.leftChild.toTex(childOpts);
78
84
  if (rightTex === "0")
79
- return leftTex;
85
+ return (0, colorize_1.colorize)(leftTex, color);
80
86
  const tex = `${leftTex}${rightTex[0] === "-" ? "" : "+"}${rightTex}`;
81
87
  if (this.opts?.forceParenthesis) {
82
- return `\\left(${tex}\\right)`;
88
+ return (0, colorize_1.colorize)(`\\left(${tex}\\right)`, color);
83
89
  }
84
90
  else
85
- return tex;
91
+ return (0, colorize_1.colorize)(tex, color);
86
92
  }
87
93
  evaluate(vars) {
88
94
  return this.leftChild.evaluate(vars) + this.rightChild.evaluate(vars);
@@ -13,7 +13,7 @@ export declare class MultiplyNode implements CommutativeOperatorNode {
13
13
  constructor(leftChild: AlgebraicNode, rightChild: AlgebraicNode, opts?: NodeOptions);
14
14
  shuffle: () => void;
15
15
  toMathString(): string;
16
- toTex(opts?: ToTexOptions): string;
16
+ toTex(options?: ToTexOptions): string;
17
17
  toAllTexs(): string[];
18
18
  toEquivalentNodes(opts?: NodeOptions): MultiplyNode[];
19
19
  toAllValidTexs(opts?: NodeOptions): string[];
@@ -28,6 +28,7 @@ export declare class MultiplyNode implements CommutativeOperatorNode {
28
28
  };
29
29
  evaluate(vars: Record<string, number>): number;
30
30
  copy(): MultiplyNode;
31
+ canonicalOrder(): void;
31
32
  simplify(opts?: SimplifyOptions): AlgebraicNode;
32
33
  equals(node: AlgebraicNode): boolean;
33
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"multiplyNode.d.ts","sourceRoot":"","sources":["../../../../src/tree/nodes/operators/multiplyNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EACL,uBAAuB,EACvB,WAAW,EAEZ,MAAM,gBAAgB,CAAC;AAYxB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOlE,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,YAAY,CAEzD;AAED,eAAO,MAAM,iBAAiB,QAAS,aAAa,EAAE,SAWrD,CAAC;AACF,qBAAa,YAAa,YAAW,uBAAuB;IAC1D,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,EAAE,EAAE,WAAW,CAAC;IAChB,SAAS,EAAE,aAAa,CAAC;IACzB,UAAU,EAAE,aAAa,CAAC;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;gBAEjB,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,aAAa,EACzB,IAAI,CAAC,EAAE,WAAW;IAUpB,OAAO,aAGL;IAEF,YAAY,IAAI,MAAM;IAItB,KAAK,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM;IA4DlC,SAAS;IAkDT,iBAAiB,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,YAAY,EAAE;IAwFrD,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE;IAG5C,aAAa;;;;;;;;;IAYb,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIrC,IAAI;IAGJ,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,GAAG,aAAa;IA0H/C,MAAM,CAAC,IAAI,EAAE,aAAa;CAU3B"}
1
+ {"version":3,"file":"multiplyNode.d.ts","sourceRoot":"","sources":["../../../../src/tree/nodes/operators/multiplyNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EACL,uBAAuB,EACvB,WAAW,EAEZ,MAAM,gBAAgB,CAAC;AAYxB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAQlE,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,YAAY,CAEzD;AAED,eAAO,MAAM,iBAAiB,QAAS,aAAa,EAAE,SAWrD,CAAC;AACF,qBAAa,YAAa,YAAW,uBAAuB;IAC1D,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,EAAE,EAAE,WAAW,CAAC;IAChB,SAAS,EAAE,aAAa,CAAC;IACzB,UAAU,EAAE,aAAa,CAAC;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;gBAEjB,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,aAAa,EACzB,IAAI,CAAC,EAAE,WAAW;IAUpB,OAAO,aAGL;IAEF,YAAY,IAAI,MAAM;IAItB,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM;IAoErC,SAAS;IAkDT,iBAAiB,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,YAAY,EAAE;IAyFrD,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE;IAG5C,aAAa;;;;;;;;;IAYb,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIrC,IAAI;IAGJ,cAAc;IACd,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,GAAG,aAAa;IA0H/C,MAAM,CAAC,IAAI,EAAE,aAAa;CAU3B"}
@@ -18,6 +18,7 @@ const fractionNode_1 = require("./fractionNode");
18
18
  const functionNode_1 = require("../functions/functionNode");
19
19
  const addNode_1 = require("./addNode");
20
20
  const round_1 = require("../../../math/utils/round");
21
+ const colorize_1 = require("../../../utils/latex/colorize");
21
22
  function isMultiplyNode(a) {
22
23
  return (0, operatorNode_1.isOperatorNode)(a) && a.id === operatorNode_1.OperatorIds.multiply;
23
24
  }
@@ -49,14 +50,19 @@ class MultiplyNode {
49
50
  toMathString() {
50
51
  return `(${this.leftChild.toMathString()})*(${this.rightChild.toMathString()})`;
51
52
  }
52
- toTex(opts) {
53
- let leftTex = this.leftChild.toTex(opts);
54
- let rightTex = this.rightChild.toTex(opts);
53
+ toTex(options) {
54
+ const opts = this.opts?.toTexOptions ?? options;
55
+ const color = opts?.color;
56
+ const childOpts = { ...opts };
57
+ if (color)
58
+ childOpts.color = undefined;
59
+ let leftTex = this.leftChild.toTex(childOpts);
60
+ let rightTex = this.rightChild.toTex(childOpts);
55
61
  if (!opts?.forceNoSimplification &&
56
62
  (0, numberNode_1.isNumberNode)(this.leftChild) &&
57
63
  this.leftChild.value === 1 &&
58
64
  opts?.scientific === undefined) {
59
- return rightTex;
65
+ return (0, colorize_1.colorize)(rightTex, color);
60
66
  }
61
67
  if ((0, operatorNode_1.isOperatorNode)(this.leftChild)) {
62
68
  if ([operatorNode_1.OperatorIds.add, operatorNode_1.OperatorIds.substract, operatorNode_1.OperatorIds.divide].includes(this.leftChild.id))
@@ -71,7 +77,7 @@ class MultiplyNode {
71
77
  rightTex = `\\left(${rightTex}\\right)`;
72
78
  if (leftTex === "-1" && !opts?.forceNoSimplification) {
73
79
  // if (!isNumberNode(this.rightChild)) {
74
- return "-" + rightTex;
80
+ return (0, colorize_1.colorize)("-" + rightTex, color);
75
81
  // }
76
82
  }
77
83
  let showTimesSign = !opts?.forceDotSign &&
@@ -87,11 +93,11 @@ class MultiplyNode {
87
93
  const cDotSign = opts?.forceDotSign ? ` \\cdot ` : "";
88
94
  const nextIsLetter = rightTex[0].toLowerCase() !== rightTex[0].toUpperCase();
89
95
  const prevIsCommand = leftTex.match(/\\[a-z]*$/);
90
- return `${leftTex}${showTimesSign
96
+ return (0, colorize_1.colorize)(`${leftTex}${showTimesSign
91
97
  ? `\\times${nextIsLetter ? " " : ""}`
92
98
  : prevIsCommand && nextIsLetter
93
99
  ? " "
94
- : ""}${cDotSign}${rightTex}`;
100
+ : ""}${cDotSign}${rightTex}`, color);
95
101
  }
96
102
  toAllTexs() {
97
103
  const res = [];
@@ -218,6 +224,7 @@ class MultiplyNode {
218
224
  copy() {
219
225
  return new MultiplyNode(this.leftChild, this.rightChild, this.opts);
220
226
  }
227
+ canonicalOrder() { }
221
228
  simplify(opts) {
222
229
  const leftSimplified = this.leftChild.simplify(opts);
223
230
  const rightSimplified = this.rightChild.simplify(opts);
@@ -344,15 +351,13 @@ class MultiplyNode {
344
351
  exports.MultiplyNode = MultiplyNode;
345
352
  const powerSimplify = (a, b, opts) => {
346
353
  if ((0, powerNode_1.isPowerNode)(a) && (0, powerNode_1.isPowerNode)(b)) {
347
- if (a.leftChild.toTex() ===
348
- b.leftChild.toTex())
354
+ if (a.leftChild.toTex() === b.leftChild.toTex())
349
355
  return new powerNode_1.PowerNode(a.leftChild, new addNode_1.AddNode(a.rightChild, b.rightChild).simplify(opts)).simplify(opts);
350
356
  }
351
357
  if ((0, variableNode_1.isVariableNode)(a)) {
352
358
  if ((0, variableNode_1.isVariableNode)(b) && b.toTex() === a.toTex() && opts?.keepPowers)
353
359
  return new powerNode_1.PowerNode(a, new numberNode_1.NumberNode(2)).simplify(opts);
354
- if ((0, powerNode_1.isPowerNode)(b) &&
355
- b.leftChild.toTex() === a.toTex()) {
360
+ if ((0, powerNode_1.isPowerNode)(b) && b.leftChild.toTex() === a.toTex()) {
356
361
  return new powerNode_1.PowerNode(a, new addNode_1.AddNode(new numberNode_1.NumberNode(1), b.rightChild).simplify(opts)).simplify(opts);
357
362
  }
358
363
  }