UNPKG

@adaptabletools/adaptable

Version:

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

49 lines (48 loc) 2.37 kB
import { ApiBase } from './ApiBase'; import * as ModuleConstants from '../../Utilities/Constants/ModuleConstants'; import * as PlusMinusRedux from '../../Redux/ActionsReducers/PlusMinusRedux'; export class PlusMinusApiImpl extends ApiBase { getPlusMinusState() { return this.getAdaptableState().PlusMinus; } getAllPlusMinus(config) { const layoutSpecificPlusMinusNudges = this.handleLayoutAssociatedObjects(this.getPlusMinusState().PlusMinusNudges, 'PlusMinus', config) ?? []; return layoutSpecificPlusMinusNudges.filter((plusMinusNudge) => plusMinusNudge.Rule == undefined || plusMinusNudge.Rule.BooleanExpression != undefined); } getPlusMinusById(id) { return this.getAllPlusMinus().find((plusMinus) => plusMinus?.Uuid === id); } getAllActivePlusMinus() { return this.getAllPlusMinus().filter((plusMinusNudge) => !plusMinusNudge.IsSuspended); } getAllSuspendedPlusMinus() { return this.getAllPlusMinus().filter((plusMinusNudge) => plusMinusNudge.IsSuspended); } runPlusMinusNudge(plusMinusNudge, cellsToUpdate, direction) { let plusMinusModule = (this.getAdaptableInternalApi().getModules().get(ModuleConstants.PlusMinusModuleId)); plusMinusModule.applyPlusMinus([plusMinusNudge], cellsToUpdate, direction); } applyPlusMinus(cellUpdateRequests) { this.dispatchAction(PlusMinusRedux.PlusMinusApply(cellUpdateRequests)); } openPlusMinusSettingsPanel() { this.showModulePopup(ModuleConstants.PlusMinusModuleId); } editPlusMinusNudge(plusMinusNudge) { this.dispatchAction(PlusMinusRedux.PlusMinusNudgeEdit(plusMinusNudge)); return this.getPlusMinusById(plusMinusNudge.Uuid); } suspendPlusMinusNudge(plusMinusNudge) { this.dispatchAction(PlusMinusRedux.PlusMinusNudgeSuspend(plusMinusNudge)); return this.getPlusMinusById(plusMinusNudge.Uuid); } unSuspendPlusMinusNudge(plusMinusNudge) { this.dispatchAction(PlusMinusRedux.PlusMinusNudgeUnSuspend(plusMinusNudge)); return this.getPlusMinusById(plusMinusNudge.Uuid); } addPlusMinusNudge(plusMinusNudge) { this.addUidToAdaptableObject(plusMinusNudge); this.dispatchAction(PlusMinusRedux.PlusMinusNudgeAdd(plusMinusNudge)); return this.getPlusMinusById(plusMinusNudge.Uuid); } }