You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							225 lines
						
					
					
						
							3.9 KiB
						
					
					
				
			
		
		
	
	
							225 lines
						
					
					
						
							3.9 KiB
						
					
					
				| "use strict";
 | |
| 
 | |
| exports.__esModule = true;
 | |
| exports["default"] = void 0;
 | |
| 
 | |
| function last() {
 | |
|   var _ref;
 | |
| 
 | |
|   return _ref = arguments.length - 1, _ref < 0 || arguments.length <= _ref ? undefined : arguments[_ref];
 | |
| }
 | |
| 
 | |
| function negation(a) {
 | |
|   return -a;
 | |
| }
 | |
| 
 | |
| function addition(a, b) {
 | |
|   return a + b;
 | |
| }
 | |
| 
 | |
| function subtraction(a, b) {
 | |
|   return a - b;
 | |
| }
 | |
| 
 | |
| function multiplication(a, b) {
 | |
|   return a * b;
 | |
| }
 | |
| 
 | |
| function division(a, b) {
 | |
|   return a / b;
 | |
| }
 | |
| 
 | |
| function factorial(a) {
 | |
|   if (a % 1 || !(+a >= 0)) return NaN;
 | |
|   if (a > 170) return Infinity;else if (a === 0) return 1;else {
 | |
|     return a * factorial(a - 1);
 | |
|   }
 | |
| }
 | |
| 
 | |
| function power(a, b) {
 | |
|   return Math.pow(a, b);
 | |
| }
 | |
| 
 | |
| function sqrt(a) {
 | |
|   return Math.sqrt(a);
 | |
| }
 | |
| 
 | |
| function max() {
 | |
|   return Math.max.apply(Math, arguments);
 | |
| }
 | |
| 
 | |
| function min() {
 | |
|   return Math.min.apply(Math, arguments);
 | |
| }
 | |
| 
 | |
| function comma() {
 | |
|   return Array.of.apply(Array, arguments);
 | |
| }
 | |
| 
 | |
| var defaultMathSymbols = {
 | |
|   symbols: {
 | |
|     '!': {
 | |
|       postfix: {
 | |
|         symbol: '!',
 | |
|         f: factorial,
 | |
|         notation: 'postfix',
 | |
|         precedence: 6,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 1
 | |
|       },
 | |
|       symbol: '!',
 | |
|       regSymbol: '!'
 | |
|     },
 | |
|     '^': {
 | |
|       infix: {
 | |
|         symbol: '^',
 | |
|         f: power,
 | |
|         notation: 'infix',
 | |
|         precedence: 5,
 | |
|         rightToLeft: 1,
 | |
|         argCount: 2
 | |
|       },
 | |
|       symbol: '^',
 | |
|       regSymbol: '\\^'
 | |
|     },
 | |
|     '*': {
 | |
|       infix: {
 | |
|         symbol: '*',
 | |
|         f: multiplication,
 | |
|         notation: 'infix',
 | |
|         precedence: 4,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 2
 | |
|       },
 | |
|       symbol: '*',
 | |
|       regSymbol: '\\*'
 | |
|     },
 | |
|     '/': {
 | |
|       infix: {
 | |
|         symbol: '/',
 | |
|         f: division,
 | |
|         notation: 'infix',
 | |
|         precedence: 4,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 2
 | |
|       },
 | |
|       symbol: '/',
 | |
|       regSymbol: '/'
 | |
|     },
 | |
|     '+': {
 | |
|       infix: {
 | |
|         symbol: '+',
 | |
|         f: addition,
 | |
|         notation: 'infix',
 | |
|         precedence: 2,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 2
 | |
|       },
 | |
|       prefix: {
 | |
|         symbol: '+',
 | |
|         f: last,
 | |
|         notation: 'prefix',
 | |
|         precedence: 3,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 1
 | |
|       },
 | |
|       symbol: '+',
 | |
|       regSymbol: '\\+'
 | |
|     },
 | |
|     '-': {
 | |
|       infix: {
 | |
|         symbol: '-',
 | |
|         f: subtraction,
 | |
|         notation: 'infix',
 | |
|         precedence: 2,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 2
 | |
|       },
 | |
|       prefix: {
 | |
|         symbol: '-',
 | |
|         f: negation,
 | |
|         notation: 'prefix',
 | |
|         precedence: 3,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 1
 | |
|       },
 | |
|       symbol: '-',
 | |
|       regSymbol: '-'
 | |
|     },
 | |
|     ',': {
 | |
|       infix: {
 | |
|         symbol: ',',
 | |
|         f: comma,
 | |
|         notation: 'infix',
 | |
|         precedence: 1,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 2
 | |
|       },
 | |
|       symbol: ',',
 | |
|       regSymbol: ','
 | |
|     },
 | |
|     '(': {
 | |
|       prefix: {
 | |
|         symbol: '(',
 | |
|         f: last,
 | |
|         notation: 'prefix',
 | |
|         precedence: 0,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 1
 | |
|       },
 | |
|       symbol: '(',
 | |
|       regSymbol: '\\('
 | |
|     },
 | |
|     ')': {
 | |
|       postfix: {
 | |
|         symbol: ')',
 | |
|         f: undefined,
 | |
|         notation: 'postfix',
 | |
|         precedence: 0,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 1
 | |
|       },
 | |
|       symbol: ')',
 | |
|       regSymbol: '\\)'
 | |
|     },
 | |
|     min: {
 | |
|       func: {
 | |
|         symbol: 'min',
 | |
|         f: min,
 | |
|         notation: 'func',
 | |
|         precedence: 0,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 1
 | |
|       },
 | |
|       symbol: 'min',
 | |
|       regSymbol: 'min\\b'
 | |
|     },
 | |
|     max: {
 | |
|       func: {
 | |
|         symbol: 'max',
 | |
|         f: max,
 | |
|         notation: 'func',
 | |
|         precedence: 0,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 1
 | |
|       },
 | |
|       symbol: 'max',
 | |
|       regSymbol: 'max\\b'
 | |
|     },
 | |
|     sqrt: {
 | |
|       func: {
 | |
|         symbol: 'sqrt',
 | |
|         f: sqrt,
 | |
|         notation: 'func',
 | |
|         precedence: 0,
 | |
|         rightToLeft: 0,
 | |
|         argCount: 1
 | |
|       },
 | |
|       symbol: 'sqrt',
 | |
|       regSymbol: 'sqrt\\b'
 | |
|     }
 | |
|   }
 | |
| };
 | |
| var _default = defaultMathSymbols;
 | |
| exports["default"] = _default;
 | |
| module.exports = exports.default; |