UNPKG

@adaptabletools/adaptable

Version:

Powerful AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements

36 lines (35 loc) 1.39 kB
import { MathOperation } from '../../AdaptableState/Common/Enums'; import NumberExtensions from '../../Utilities/Extensions/NumberExtensions'; export const shortcutOperationList = [ MathOperation.Add, MathOperation.Subtract, MathOperation.Multiply, MathOperation.Divide, ]; export const SHORTCUT_PREVIEW_EXAMPLE_VALUE = 100; const shortcutOperationSymbols = { [MathOperation.Add]: '+', [MathOperation.Subtract]: '−', [MathOperation.Multiply]: '×', [MathOperation.Divide]: '÷', }; export function getShortcutOperationSymbol(operation) { return shortcutOperationSymbols[operation]; } export function calculateShortcutResult(cellValue, shortcutValue, operation) { if (operation === MathOperation.Divide && shortcutValue === 0) { return null; } switch (operation) { case MathOperation.Add: return NumberExtensions.avoidJavascriptPrecisionIssues(cellValue + shortcutValue); case MathOperation.Subtract: return NumberExtensions.avoidJavascriptPrecisionIssues(cellValue - shortcutValue); case MathOperation.Multiply: return NumberExtensions.avoidJavascriptPrecisionIssues(cellValue * shortcutValue); case MathOperation.Divide: return NumberExtensions.avoidJavascriptPrecisionIssues(cellValue / shortcutValue); default: return null; } }