- Foldable left panel (user profile) and right panel (task details) - Clicking a task in the list or graph node selects it and shows details - Both views (task list + graph) always mounted via absolute inset-0 for correct canvas dimensions; tabs toggle visibility with opacity - Graph node selection animation: other nodes repel outward (charge -600), then selected node smoothly slides to center (500ms cubic ease-out), then charge restores to -120 and graph stabilizes - Graph re-fits on tab switch and panel resize via ResizeObserver - Fix UUID string IDs throughout (backend returns UUIDs, not integers) - Add TaskDetailPanel, UserPanel components - Add CLAUDE.md project documentation Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
723 lines
18 KiB
TypeScript
723 lines
18 KiB
TypeScript
type EasingFunction = (amount: number) => number;
|
|
type EasingFunctionGroup = {
|
|
In: EasingFunction;
|
|
Out: EasingFunction;
|
|
InOut: EasingFunction;
|
|
};
|
|
/**
|
|
* The Ease class provides a collection of easing functions for use with tween.js.
|
|
*/
|
|
declare const Easing: Readonly<{
|
|
Linear: Readonly<EasingFunctionGroup & {
|
|
None: EasingFunction;
|
|
}>;
|
|
Quadratic: Readonly<EasingFunctionGroup>;
|
|
Cubic: Readonly<EasingFunctionGroup>;
|
|
Quartic: Readonly<EasingFunctionGroup>;
|
|
Quintic: Readonly<EasingFunctionGroup>;
|
|
Sinusoidal: Readonly<EasingFunctionGroup>;
|
|
Exponential: Readonly<EasingFunctionGroup>;
|
|
Circular: Readonly<EasingFunctionGroup>;
|
|
Elastic: Readonly<EasingFunctionGroup>;
|
|
Back: Readonly<EasingFunctionGroup>;
|
|
Bounce: Readonly<EasingFunctionGroup>;
|
|
generatePow(power?: number): EasingFunctionGroup;
|
|
}>;
|
|
|
|
/**
|
|
*
|
|
*/
|
|
type InterpolationFunction = (v: number[], k: number) => number;
|
|
/**
|
|
*
|
|
*/
|
|
declare const Interpolation: {
|
|
Linear: (v: number[], k: number) => number;
|
|
Bezier: (v: number[], k: number) => number;
|
|
CatmullRom: (v: number[], k: number) => number;
|
|
Utils: {
|
|
Linear: (p0: number, p1: number, t: number) => number;
|
|
Bernstein: (n: number, i: number) => number;
|
|
Factorial: (n: number) => number;
|
|
CatmullRom: (p0: number, p1: number, p2: number, p3: number, t: number) => number;
|
|
};
|
|
};
|
|
|
|
/**
|
|
* Tween.js - Licensed under the MIT license
|
|
* https://github.com/tweenjs/tween.js
|
|
* ----------------------------------------------
|
|
*
|
|
* See https://github.com/tweenjs/tween.js/graphs/contributors for the full list of contributors.
|
|
* Thank you all, you're awesome!
|
|
*/
|
|
|
|
declare class Tween<T extends UnknownProps = any> {
|
|
static autoStartOnUpdate: boolean;
|
|
private _isPaused;
|
|
private _pauseStart;
|
|
private _valuesStart;
|
|
private _valuesEnd;
|
|
private _valuesStartRepeat;
|
|
private _duration;
|
|
private _isDynamic;
|
|
private _initialRepeat;
|
|
private _repeat;
|
|
private _repeatDelayTime?;
|
|
private _yoyo;
|
|
private _isPlaying;
|
|
private _reversed;
|
|
private _delayTime;
|
|
private _startTime;
|
|
private _easingFunction;
|
|
private _interpolationFunction;
|
|
private _chainedTweens;
|
|
private _onStartCallback?;
|
|
private _onStartCallbackFired;
|
|
private _onEveryStartCallback?;
|
|
private _onEveryStartCallbackFired;
|
|
private _onUpdateCallback?;
|
|
private _onRepeatCallback?;
|
|
private _onCompleteCallback?;
|
|
private _onStopCallback?;
|
|
private _id;
|
|
private _isChainStopped;
|
|
private _propertiesAreSetUp;
|
|
private _object;
|
|
private _group?;
|
|
/**
|
|
* @param object - The object whose properties this Tween will animate.
|
|
* @param group - The object whose properties this Tween will animate.
|
|
*/
|
|
constructor(object: T, group?: Group);
|
|
/**
|
|
* @deprecated The group parameter is now deprecated, instead use `new
|
|
* Tween(object)` then `group.add(tween)` to add a tween to a group. Use
|
|
* `new Tween(object, true)` to restore the old behavior for now, but this
|
|
* will be removed in the future.
|
|
*/
|
|
constructor(object: T, group: true);
|
|
getId(): number;
|
|
isPlaying(): boolean;
|
|
isPaused(): boolean;
|
|
getDuration(): number;
|
|
to(target: UnknownProps, duration?: number): this;
|
|
duration(duration?: number): this;
|
|
dynamic(dynamic?: boolean): this;
|
|
start(time?: number, overrideStartingValues?: boolean): this;
|
|
startFromCurrentValues(time?: number): this;
|
|
private _setupProperties;
|
|
stop(): this;
|
|
end(): this;
|
|
pause(time?: number): this;
|
|
resume(time?: number): this;
|
|
stopChainedTweens(): this;
|
|
/**
|
|
* Removes the tween from the current group it is in, if any, then adds the
|
|
* tween to the specified `group`.
|
|
*/
|
|
group(group: Group): this;
|
|
/**
|
|
* @deprecated The argless call signature has been removed. Use
|
|
* `tween.group(group)` or `group.add(tween)`, instead.
|
|
*/
|
|
group(): this;
|
|
/**
|
|
* Removes the tween from whichever group it is in.
|
|
*/
|
|
remove(): this;
|
|
delay(amount?: number): this;
|
|
repeat(times?: number): this;
|
|
repeatDelay(amount?: number): this;
|
|
yoyo(yoyo?: boolean): this;
|
|
easing(easingFunction?: EasingFunction): this;
|
|
interpolation(interpolationFunction?: InterpolationFunction): this;
|
|
chain(...tweens: Array<Tween<any>>): this;
|
|
onStart(callback?: (object: T) => void): this;
|
|
onEveryStart(callback?: (object: T) => void): this;
|
|
onUpdate(callback?: (object: T, elapsed: number) => void): this;
|
|
onRepeat(callback?: (object: T) => void): this;
|
|
onComplete(callback?: (object: T) => void): this;
|
|
onStop(callback?: (object: T) => void): this;
|
|
private _goToEnd;
|
|
/**
|
|
* @returns true if the tween is still playing after the update, false
|
|
* otherwise (calling update on a paused tween still returns true because
|
|
* it is still playing, just paused).
|
|
*
|
|
* @param autoStart - When true, calling update will implicitly call start()
|
|
* as well. Note, if you stop() or end() the tween, but are still calling
|
|
* update(), it will start again!
|
|
*/
|
|
update(time?: number, autoStart?: boolean): boolean;
|
|
private _updateProperties;
|
|
private _handleRelativeValue;
|
|
private _swapEndStartRepeatValues;
|
|
}
|
|
type UnknownProps = Record<string, any>;
|
|
|
|
/**
|
|
* Controlling groups of tweens
|
|
*
|
|
* Using the TWEEN singleton to manage your tweens can cause issues in large apps with many components.
|
|
* In these cases, you may want to create your own smaller groups of tween
|
|
*/
|
|
declare class Group {
|
|
private _tweens;
|
|
private _tweensAddedDuringUpdate;
|
|
constructor(...tweens: Tween[]);
|
|
getAll(): Array<Tween>;
|
|
removeAll(): void;
|
|
add(...tweens: Tween[]): void;
|
|
remove(...tweens: Tween[]): void;
|
|
/** Return true if all tweens in the group are not paused or playing. */
|
|
allStopped(): boolean;
|
|
update(time?: number): void;
|
|
/**
|
|
* @deprecated The `preserve` parameter is now defaulted to `true` and will
|
|
* be removed in a future major release, at which point all tweens of a
|
|
* group will always be preserved when calling update. To migrate, always
|
|
* use `group.add(tween)` or `group.remove(tween)` to manually add or remove
|
|
* tweens, and do not rely on tweens being automatically added or removed.
|
|
*/
|
|
update(time?: number, preserve?: boolean): void;
|
|
}
|
|
|
|
declare const now: () => number;
|
|
|
|
/**
|
|
* Utils
|
|
*/
|
|
declare class Sequence {
|
|
private static _nextId;
|
|
static nextId(): number;
|
|
}
|
|
|
|
declare const VERSION = "25.0.0";
|
|
|
|
declare const nextId: typeof Sequence.nextId;
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
declare const getAll: () => Tween<any>[];
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
declare const removeAll: () => void;
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
declare const add: (...tweens: Tween<any>[]) => void;
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
declare const remove: (...tweens: Tween<any>[]) => void;
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
declare const update: {
|
|
(time?: number | undefined): void;
|
|
(time?: number | undefined, preserve?: boolean | undefined): void;
|
|
};
|
|
|
|
declare const exports: {
|
|
Easing: Readonly<{
|
|
Linear: Readonly<EasingFunctionGroup & {
|
|
None: EasingFunction;
|
|
}>;
|
|
Quadratic: Readonly<EasingFunctionGroup>;
|
|
Cubic: Readonly<EasingFunctionGroup>;
|
|
Quartic: Readonly<EasingFunctionGroup>;
|
|
Quintic: Readonly<EasingFunctionGroup>;
|
|
Sinusoidal: Readonly<EasingFunctionGroup>;
|
|
Exponential: Readonly<EasingFunctionGroup>;
|
|
Circular: Readonly<EasingFunctionGroup>;
|
|
Elastic: Readonly<EasingFunctionGroup>;
|
|
Back: Readonly<EasingFunctionGroup>;
|
|
Bounce: Readonly<EasingFunctionGroup>;
|
|
generatePow(power?: number): EasingFunctionGroup;
|
|
}>;
|
|
Group: typeof Group;
|
|
Interpolation: {
|
|
Linear: (v: number[], k: number) => number;
|
|
Bezier: (v: number[], k: number) => number;
|
|
CatmullRom: (v: number[], k: number) => number;
|
|
Utils: {
|
|
Linear: (p0: number, p1: number, t: number) => number;
|
|
Bernstein: (n: number, i: number) => number;
|
|
Factorial: (n: number) => number;
|
|
CatmullRom: (p0: number, p1: number, p2: number, p3: number, t: number) => number;
|
|
};
|
|
};
|
|
now: () => number;
|
|
Sequence: typeof Sequence;
|
|
nextId: typeof Sequence.nextId;
|
|
Tween: typeof Tween;
|
|
VERSION: string;
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
getAll: () => Tween<any>[];
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
removeAll: () => void;
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
add: (...tweens: Tween<any>[]) => void;
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
remove: (...tweens: Tween<any>[]) => void;
|
|
/**
|
|
* @deprecated The global TWEEN Group will be removed in a following major
|
|
* release. To migrate, create a `new Group()` instead of using `TWEEN` as a
|
|
* group.
|
|
*
|
|
* Old code:
|
|
*
|
|
* ```js
|
|
* import * as TWEEN from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new TWEEN.Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* TWEEN.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*
|
|
* New code:
|
|
*
|
|
* ```js
|
|
* import {Tween, Group} from '@tweenjs/tween.js'
|
|
*
|
|
* //...
|
|
*
|
|
* const tween = new Tween(obj)
|
|
* const tween2 = new TWEEN.Tween(obj2)
|
|
*
|
|
* //...
|
|
*
|
|
* const group = new Group()
|
|
* group.add(tween)
|
|
* group.add(tween2)
|
|
*
|
|
* //...
|
|
*
|
|
* requestAnimationFrame(function loop(time) {
|
|
* group.update(time)
|
|
* requestAnimationFrame(loop)
|
|
* })
|
|
* ```
|
|
*/
|
|
update: {
|
|
(time?: number | undefined): void;
|
|
(time?: number | undefined, preserve?: boolean | undefined): void;
|
|
};
|
|
};
|
|
|
|
export { Easing, Group, Interpolation, Sequence, Tween, VERSION, add, exports as default, getAll, nextId, now, remove, removeAll, update };
|