ag-grid-community
Version:
Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
29 lines (28 loc) • 1.39 kB
TypeScript
import type { NamedBean } from '../context/bean';
import { BeanStub } from '../context/beanStub';
export declare class ColumnAnimationService extends BeanStub implements NamedBean {
beanName: "colAnimation";
private gridBodyCtrl;
private readonly executeNextFuncs;
private readonly executeLaterFuncs;
private active;
/** Cleared a VM-turn earlier than {@link active} (once `executeNextFuncs` has flushed) so a late
* {@link executeNextVMTurn} runs immediately instead of queuing behind an already-flushed batch. */
private activeNext;
private suppressAnimation;
private animationThreadCount;
/** Nesting depth: only the outermost {@link start}/{@link finish} pair drives the animation, so a wrapped
* refresh (e.g. a role-col flush re-entering via pivot-sort) can't end it early. */
private startDepth;
postConstruct(): void;
isActive(): boolean;
setSuppressAnimation(suppress: boolean): void;
/** Open an animation window; nestable — only the outermost open actually starts the animation. */
start(): void;
/** Close an animation window; the outermost close flushes the queued next/later funcs. */
finish(): void;
executeNextVMTurn(func: (...args: any[]) => any): void;
executeLaterVMTurn(func: (...args: any[]) => any): void;
private ensureAnimationCssClassPresent;
private flush;
}