ng-virtual-list 18.12.3 → 18.12.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -20,8 +20,9 @@ export class Animator {
|
|
|
20
20
|
_diff = 0;
|
|
21
21
|
_startValue = 0;
|
|
22
22
|
_endValue = 0;
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
_prevPos = 0;
|
|
24
|
+
updateTo(end) {
|
|
25
|
+
this._endValue = end;
|
|
25
26
|
this._diff = this._endValue - this._startValue;
|
|
26
27
|
return this.hasAnimation();
|
|
27
28
|
}
|
|
@@ -33,7 +34,8 @@ export class Animator {
|
|
|
33
34
|
this._startValue = startValue;
|
|
34
35
|
this._endValue = endValue;
|
|
35
36
|
const startTime = performance.now();
|
|
36
|
-
let isCanceled = false,
|
|
37
|
+
let isCanceled = false, startPosDelta = 0, delta = 0, prevTime = startTime, isFinished = false;
|
|
38
|
+
this._prevPos = startValue;
|
|
37
39
|
this._diff = this._endValue - this._startValue;
|
|
38
40
|
const step = (currentTime) => {
|
|
39
41
|
if (id !== this._currentId) {
|
|
@@ -44,22 +46,22 @@ export class Animator {
|
|
|
44
46
|
}
|
|
45
47
|
const cPos = getPropValue?.() || 0;
|
|
46
48
|
let startDelta = 0;
|
|
47
|
-
if (cPos !==
|
|
48
|
-
startDelta = cPos -
|
|
49
|
+
if (cPos !== this._prevPos) {
|
|
50
|
+
startDelta = cPos - this._prevPos;
|
|
49
51
|
startPosDelta += startDelta;
|
|
50
52
|
}
|
|
51
|
-
const elapsed = currentTime - startTime, progress = this._startValue ===
|
|
53
|
+
const elapsed = currentTime - startTime, progress = this._startValue === this._endValue ? 1 : Math.min(duration > 0 ? elapsed / duration : 0, 1), easedProgress = easingFunction(progress), val = (withDelta ? startPosDelta : 0) + this._startValue + this._diff * easedProgress, currentValue = val, t = performance.now();
|
|
52
54
|
isFinished = progress === 1;
|
|
53
|
-
delta = currentValue - startDelta -
|
|
55
|
+
delta = currentValue - startDelta - this._prevPos;
|
|
54
56
|
const frameTimestamp = t - prevTime, actualFrameTimestamp = frameTimestamp < ANIMATOR_MIN_TIMESTAMP ? ANIMATOR_MIN_TIMESTAMP : frameTimestamp;
|
|
55
57
|
prevTime = t;
|
|
56
|
-
|
|
58
|
+
this._prevPos = currentValue;
|
|
57
59
|
if (onUpdate !== undefined) {
|
|
58
60
|
const data = {
|
|
59
61
|
id,
|
|
60
62
|
delta,
|
|
61
63
|
elapsed,
|
|
62
|
-
value:
|
|
64
|
+
value: currentValue,
|
|
63
65
|
timestamp: actualFrameTimestamp,
|
|
64
66
|
};
|
|
65
67
|
onUpdate(data);
|
|
@@ -71,7 +73,7 @@ export class Animator {
|
|
|
71
73
|
id,
|
|
72
74
|
delta,
|
|
73
75
|
elapsed,
|
|
74
|
-
value:
|
|
76
|
+
value: currentValue,
|
|
75
77
|
timestamp: actualFrameTimestamp,
|
|
76
78
|
};
|
|
77
79
|
onComplete(data);
|
|
@@ -98,4 +100,4 @@ export class Animator {
|
|
|
98
100
|
this.stop();
|
|
99
101
|
}
|
|
100
102
|
}
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9hbmltYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsMEJBQTBCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDakcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUdwQzs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxRQUFRO0lBQ1gsTUFBTSxDQUFDLE9BQU8sR0FBVyxDQUFDLENBQUM7SUFFM0IsWUFBWSxHQUFXLENBQUMsQ0FBQztJQUVqQyxJQUFJLFFBQVEsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWpELElBQUksVUFBVSxLQUFLLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXZELFVBQVUsR0FBVyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBRTlDLElBQUksRUFBRSxLQUFLLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFFNUIsVUFBVTtRQUNoQixPQUFPLFFBQVEsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sS0FBSyxNQUFNLENBQUMsZ0JBQWdCO1lBQ3BFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTyxLQUFLLEdBQVcsQ0FBQyxDQUFDO0lBRWxCLFdBQVcsR0FBVyxDQUFDLENBQUM7SUFFeEIsU0FBUyxHQUFXLENBQUMsQ0FBQztJQUU5QixRQUFRLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUMvQyxPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsT0FBTyxDQUFDLE1BQXVCO1FBQzdCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVaLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUVyQixNQUFNLEVBQ0osU0FBUyxHQUFHLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxHQUFHLDBCQUEwQixFQUMzRixZQUFZLEVBQUUsY0FBYyxHQUFHLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVSxHQUNoRSxHQUFHLE1BQU0sQ0FBQztRQUVYLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBRTFCLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNwQyxJQUFJLFVBQVUsR0FBRyxLQUFLLEVBQUUsT0FBTyxHQUFHLFVBQVUsRUFBRSxhQUFhLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsUUFBUSxHQUFHLFNBQVMsRUFBRSxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3JILElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBRS9DLE1BQU0sSUFBSSxHQUFHLENBQUMsV0FBbUIsRUFBRSxFQUFFO1lBQ25DLElBQUksRUFBRSxLQUFLLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDM0IsVUFBVSxHQUFHLElBQUksQ0FBQztZQUNwQixDQUFDO1lBRUQsSUFBSSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ2pCLE9BQU87WUFDVCxDQUFDO1lBRUQsTUFBTSxJQUFJLEdBQUcsWUFBWSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbkMsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLElBQUksSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUNyQixVQUFVLEdBQUcsSUFBSSxHQUFHLE9BQU8sQ0FBQztnQkFDNUIsYUFBYSxJQUFJLFVBQVUsQ0FBQztZQUM5QixDQUFDO1lBRUQsTUFBTSxPQUFPLEdBQUcsV0FBVyxHQUFHLFNBQVMsRUFDckMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUNqRyxhQUFhLEdBQUcsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUN4QyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLGFBQWEsRUFDckYsWUFBWSxHQUFHLEdBQUcsRUFDbEIsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUV4QixVQUFVLEdBQUcsUUFBUSxLQUFLLENBQUMsQ0FBQztZQUU1QixLQUFLLEdBQUcsWUFBWSxHQUFHLFVBQVUsR0FBRyxPQUFPLENBQUM7WUFFNUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxHQUFHLFFBQVEsRUFDakMsb0JBQW9CLEdBQUcsY0FBYyxHQUFHLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO1lBRTNHLFFBQVEsR0FBRyxDQUFDLENBQUM7WUFDYixPQUFPLEdBQUcsWUFBWSxDQUFDO1lBRXZCLElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUMzQixNQUFNLElBQUksR0FBd0I7b0JBQ2hDLEVBQUU7b0JBQ0YsS0FBSztvQkFDTCxPQUFPO29CQUNQLEtBQUssRUFBRSxDQUFDLFNBQVMsSUFBSSxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsWUFBWTtvQkFDekQsU0FBUyxFQUFFLG9CQUFvQjtpQkFDaEMsQ0FBQztnQkFDRixRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakIsQ0FBQztZQUVELElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ2YsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDdkIsSUFBSSxVQUFVLEtBQUssU0FBUyxFQUFFLENBQUM7b0JBQzdCLE1BQU0sSUFBSSxHQUF3Qjt3QkFDaEMsRUFBRTt3QkFDRixLQUFLO3dCQUNMLE9BQU87d0JBQ1AsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxRQUFRO3dCQUMxQyxTQUFTLEVBQUUsb0JBQW9CO3FCQUNoQyxDQUFDO29CQUNGLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbkIsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsWUFBWSxHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xELENBQUM7UUFDSCxDQUFDLENBQUE7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWEsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDM0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWEsQ0FBQyxDQUFDO1FBQ2xCLG9CQUFvQixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBTklNQVRPUl9NSU5fVElNRVNUQU1QLCBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTiwgREVGQVVMVF9XSVRIX0RFTFRBIH0gZnJvbSAnLi9jb25zdCc7XHJcbmltcG9ydCB7IGVhc2VMaW5lYXIgfSBmcm9tICcuL2Vhc2UnO1xyXG5pbXBvcnQgeyBJQW5pbWF0b3JQYXJhbXMsIElBbmltYXRvclVwZGF0ZURhdGEgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xyXG5cclxuLyoqXHJcbiAqIEFuaW1hdG9yXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iL21haW4vbGlicmFyeS9zcmMvdXRpbHMvYW5pbWF0b3IvYW5pbWF0b3IudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgQW5pbWF0b3Ige1xyXG4gIHByaXZhdGUgc3RhdGljIF9uZXh0SWQ6IG51bWJlciA9IDA7XHJcblxyXG4gIHByaXZhdGUgX2FuaW1hdGlvbklkOiBudW1iZXIgPSAwO1xyXG5cclxuICBnZXQgYW5pbWF0ZWQoKSB7IHJldHVybiB0aGlzLl9hbmltYXRpb25JZCA+IC0xOyB9XHJcblxyXG4gIGdldCBpc0FuaW1hdGVkKCkgeyByZXR1cm4gdGhpcy5oYXNBbmltYXRpb24odGhpcy5fY3VycmVudElkKTsgfVxyXG5cclxuICBwcml2YXRlIF9jdXJyZW50SWQ6IG51bWJlciA9IEFuaW1hdG9yLl9uZXh0SWQ7XHJcblxyXG4gIGdldCBpZCgpIHsgcmV0dXJuIHRoaXMuX2N1cnJlbnRJZDsgfVxyXG5cclxuICBwcml2YXRlIGdlbmVyYXRlSWQoKSB7XHJcbiAgICByZXR1cm4gQW5pbWF0b3IuX25leHRJZCA9IEFuaW1hdG9yLl9uZXh0SWQgPT09IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXHJcbiAgICAgID8gMCA6IEFuaW1hdG9yLl9uZXh0SWQgKyAxO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZGlmZjogbnVtYmVyID0gMDtcclxuXHJcbiAgcHJpdmF0ZSBfc3RhcnRWYWx1ZTogbnVtYmVyID0gMDtcclxuXHJcbiAgcHJpdmF0ZSBfZW5kVmFsdWU6IG51bWJlciA9IDA7XHJcblxyXG4gIHVwZGF0ZVRvKHZhbHVlOiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIHRoaXMuX2VuZFZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLl9kaWZmID0gdGhpcy5fZW5kVmFsdWUgLSB0aGlzLl9zdGFydFZhbHVlO1xyXG4gICAgcmV0dXJuIHRoaXMuaGFzQW5pbWF0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBhbmltYXRlKHBhcmFtczogSUFuaW1hdG9yUGFyYW1zKSB7XHJcbiAgICB0aGlzLnN0b3AoKTtcclxuXHJcbiAgICBjb25zdCBpZCA9IHRoaXMuZ2VuZXJhdGVJZCgpO1xyXG4gICAgdGhpcy5fY3VycmVudElkID0gaWQ7XHJcblxyXG4gICAgY29uc3Qge1xyXG4gICAgICB3aXRoRGVsdGEgPSBERUZBVUxUX1dJVEhfREVMVEEsIHN0YXJ0VmFsdWUsIGVuZFZhbHVlLCBkdXJhdGlvbiA9IERFRkFVTFRfQU5JTUFUSU9OX0RVUkFUSU9OLFxyXG4gICAgICBnZXRQcm9wVmFsdWUsIGVhc2luZ0Z1bmN0aW9uID0gZWFzZUxpbmVhciwgb25VcGRhdGUsIG9uQ29tcGxldGUsXHJcbiAgICB9ID0gcGFyYW1zO1xyXG5cclxuICAgIHRoaXMuX3N0YXJ0VmFsdWUgPSBzdGFydFZhbHVlO1xyXG4gICAgdGhpcy5fZW5kVmFsdWUgPSBlbmRWYWx1ZTtcclxuXHJcbiAgICBjb25zdCBzdGFydFRpbWUgPSBwZXJmb3JtYW5jZS5ub3coKTtcclxuICAgIGxldCBpc0NhbmNlbGVkID0gZmFsc2UsIHByZXZQb3MgPSBzdGFydFZhbHVlLCBzdGFydFBvc0RlbHRhID0gMCwgZGVsdGEgPSAwLCBwcmV2VGltZSA9IHN0YXJ0VGltZSwgaXNGaW5pc2hlZCA9IGZhbHNlO1xyXG4gICAgdGhpcy5fZGlmZiA9IHRoaXMuX2VuZFZhbHVlIC0gdGhpcy5fc3RhcnRWYWx1ZTtcclxuXHJcbiAgICBjb25zdCBzdGVwID0gKGN1cnJlbnRUaW1lOiBudW1iZXIpID0+IHtcclxuICAgICAgaWYgKGlkICE9PSB0aGlzLl9jdXJyZW50SWQpIHtcclxuICAgICAgICBpc0NhbmNlbGVkID0gdHJ1ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCEhaXNDYW5jZWxlZCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3QgY1BvcyA9IGdldFByb3BWYWx1ZT8uKCkgfHwgMDtcclxuICAgICAgbGV0IHN0YXJ0RGVsdGEgPSAwO1xyXG4gICAgICBpZiAoY1BvcyAhPT0gcHJldlBvcykge1xyXG4gICAgICAgIHN0YXJ0RGVsdGEgPSBjUG9zIC0gcHJldlBvcztcclxuICAgICAgICBzdGFydFBvc0RlbHRhICs9IHN0YXJ0RGVsdGE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGVsYXBzZWQgPSBjdXJyZW50VGltZSAtIHN0YXJ0VGltZSxcclxuICAgICAgICBwcm9ncmVzcyA9IHRoaXMuX3N0YXJ0VmFsdWUgPT09IGVuZFZhbHVlID8gMSA6IE1hdGgubWluKGR1cmF0aW9uID4gMCA/IGVsYXBzZWQgLyBkdXJhdGlvbiA6IDAsIDEpLFxyXG4gICAgICAgIGVhc2VkUHJvZ3Jlc3MgPSBlYXNpbmdGdW5jdGlvbihwcm9ncmVzcyksXHJcbiAgICAgICAgdmFsID0gKHdpdGhEZWx0YSA/IHN0YXJ0UG9zRGVsdGEgOiAwKSArIHRoaXMuX3N0YXJ0VmFsdWUgKyB0aGlzLl9kaWZmICogZWFzZWRQcm9ncmVzcyxcclxuICAgICAgICBjdXJyZW50VmFsdWUgPSB2YWwsXHJcbiAgICAgICAgdCA9IHBlcmZvcm1hbmNlLm5vdygpO1xyXG5cclxuICAgICAgaXNGaW5pc2hlZCA9IHByb2dyZXNzID09PSAxO1xyXG5cclxuICAgICAgZGVsdGEgPSBjdXJyZW50VmFsdWUgLSBzdGFydERlbHRhIC0gcHJldlBvcztcclxuXHJcbiAgICAgIGNvbnN0IGZyYW1lVGltZXN0YW1wID0gdCAtIHByZXZUaW1lLFxyXG4gICAgICAgIGFjdHVhbEZyYW1lVGltZXN0YW1wID0gZnJhbWVUaW1lc3RhbXAgPCBBTklNQVRPUl9NSU5fVElNRVNUQU1QID8gQU5JTUFUT1JfTUlOX1RJTUVTVEFNUCA6IGZyYW1lVGltZXN0YW1wO1xyXG5cclxuICAgICAgcHJldlRpbWUgPSB0O1xyXG4gICAgICBwcmV2UG9zID0gY3VycmVudFZhbHVlO1xyXG5cclxuICAgICAgaWYgKG9uVXBkYXRlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICBjb25zdCBkYXRhOiBJQW5pbWF0b3JVcGRhdGVEYXRhID0ge1xyXG4gICAgICAgICAgaWQsXHJcbiAgICAgICAgICBkZWx0YSxcclxuICAgICAgICAgIGVsYXBzZWQsXHJcbiAgICAgICAgICB2YWx1ZTogIXdpdGhEZWx0YSAmJiBpc0ZpbmlzaGVkID8gZW5kVmFsdWUgOiBjdXJyZW50VmFsdWUsXHJcbiAgICAgICAgICB0aW1lc3RhbXA6IGFjdHVhbEZyYW1lVGltZXN0YW1wLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgb25VcGRhdGUoZGF0YSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChpc0ZpbmlzaGVkKSB7XHJcbiAgICAgICAgdGhpcy5fYW5pbWF0aW9uSWQgPSAtMTtcclxuICAgICAgICBpZiAob25Db21wbGV0ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBjb25zdCBkYXRhOiBJQW5pbWF0b3JVcGRhdGVEYXRhID0ge1xyXG4gICAgICAgICAgICBpZCxcclxuICAgICAgICAgICAgZGVsdGEsXHJcbiAgICAgICAgICAgIGVsYXBzZWQsXHJcbiAgICAgICAgICAgIHZhbHVlOiB3aXRoRGVsdGEgPyBjdXJyZW50VmFsdWUgOiBlbmRWYWx1ZSxcclxuICAgICAgICAgICAgdGltZXN0YW1wOiBhY3R1YWxGcmFtZVRpbWVzdGFtcCxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICBvbkNvbXBsZXRlKGRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLl9hbmltYXRpb25JZCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZShzdGVwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX2FuaW1hdGlvbklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApO1xyXG5cclxuICAgIHJldHVybiB0aGlzLl9jdXJyZW50SWQ7XHJcbiAgfVxyXG5cclxuICBoYXNBbmltYXRpb24oaWQ6IG51bWJlciA9IC0xKSB7XHJcbiAgICBpZiAoKHRoaXMuX2N1cnJlbnRJZCA9PT0gaWQgfHwgaWQgPT09IC0xKSAmJiB0aGlzLmFuaW1hdGVkKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgc3RvcChpZDogbnVtYmVyID0gLTEpIHtcclxuICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKGlkID09PSAtMSA/IHRoaXMuX2FuaW1hdGlvbklkIDogaWQpO1xyXG4gICAgdGhpcy5fYW5pbWF0aW9uSWQgPSAtMTtcclxuICB9XHJcblxyXG4gIGRpc3Bvc2UoKSB7XHJcbiAgICB0aGlzLnN0b3AoKTtcclxuICB9XHJcbn1cclxuIl19
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9hbmltYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsMEJBQTBCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDakcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUdwQzs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxRQUFRO0lBQ1gsTUFBTSxDQUFDLE9BQU8sR0FBVyxDQUFDLENBQUM7SUFFM0IsWUFBWSxHQUFXLENBQUMsQ0FBQztJQUVqQyxJQUFJLFFBQVEsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWpELElBQUksVUFBVSxLQUFLLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXZELFVBQVUsR0FBVyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBRTlDLElBQUksRUFBRSxLQUFLLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFFNUIsVUFBVTtRQUNoQixPQUFPLFFBQVEsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sS0FBSyxNQUFNLENBQUMsZ0JBQWdCO1lBQ3BFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTyxLQUFLLEdBQVcsQ0FBQyxDQUFDO0lBRWxCLFdBQVcsR0FBVyxDQUFDLENBQUM7SUFFeEIsU0FBUyxHQUFXLENBQUMsQ0FBQztJQUV0QixRQUFRLEdBQVcsQ0FBQyxDQUFDO0lBRTdCLFFBQVEsQ0FBQyxHQUFXO1FBQ2xCLElB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SUFBSSxDQUFDLEtBQWEsQ0FBQyxDQUFDO1FBQ2xCLG9CQUFvQixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBTklNQVRPUl9NSU5fVElNRVNUQU1QLCBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTiwgREVGQVVMVF9XSVRIX0RFTFRBIH0gZnJvbSAnLi9jb25zdCc7XHJcbmltcG9ydCB7IGVhc2VMaW5lYXIgfSBmcm9tICcuL2Vhc2UnO1xyXG5pbXBvcnQgeyBJQW5pbWF0b3JQYXJhbXMsIElBbmltYXRvclVwZGF0ZURhdGEgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xyXG5cclxuLyoqXHJcbiAqIEFuaW1hdG9yXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iL21haW4vbGlicmFyeS9zcmMvdXRpbHMvYW5pbWF0b3IvYW5pbWF0b3IudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgQW5pbWF0b3Ige1xyXG4gIHByaXZhdGUgc3RhdGljIF9uZXh0SWQ6IG51bWJlciA9IDA7XHJcblxyXG4gIHByaXZhdGUgX2FuaW1hdGlvbklkOiBudW1iZXIgPSAwO1xyXG5cclxuICBnZXQgYW5pbWF0ZWQoKSB7IHJldHVybiB0aGlzLl9hbmltYXRpb25JZCA+IC0xOyB9XHJcblxyXG4gIGdldCBpc0FuaW1hdGVkKCkgeyByZXR1cm4gdGhpcy5oYXNBbmltYXRpb24odGhpcy5fY3VycmVudElkKTsgfVxyXG5cclxuICBwcml2YXRlIF9jdXJyZW50SWQ6IG51bWJlciA9IEFuaW1hdG9yLl9uZXh0SWQ7XHJcblxyXG4gIGdldCBpZCgpIHsgcmV0dXJuIHRoaXMuX2N1cnJlbnRJZDsgfVxyXG5cclxuICBwcml2YXRlIGdlbmVyYXRlSWQoKSB7XHJcbiAgICByZXR1cm4gQW5pbWF0b3IuX25leHRJZCA9IEFuaW1hdG9yLl9uZXh0SWQgPT09IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXHJcbiAgICAgID8gMCA6IEFuaW1hdG9yLl9uZXh0SWQgKyAxO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZGlmZjogbnVtYmVyID0gMDtcclxuXHJcbiAgcHJpdmF0ZSBfc3RhcnRWYWx1ZTogbnVtYmVyID0gMDtcclxuXHJcbiAgcHJpdmF0ZSBfZW5kVmFsdWU6IG51bWJlciA9IDA7XHJcblxyXG4gIHByaXZhdGUgX3ByZXZQb3M6IG51bWJlciA9IDA7XHJcblxyXG4gIHVwZGF0ZVRvKGVuZDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLl9lbmRWYWx1ZSA9IGVuZDtcclxuICAgIHRoaXMuX2RpZmYgPSB0aGlzLl9lbmRWYWx1ZSAtIHRoaXMuX3N0YXJ0VmFsdWU7XHJcbiAgICByZXR1cm4gdGhpcy5oYXNBbmltYXRpb24oKTtcclxuICB9XHJcblxyXG4gIGFuaW1hdGUocGFyYW1zOiBJQW5pbWF0b3JQYXJhbXMpIHtcclxuICAgIHRoaXMuc3RvcCgpO1xyXG5cclxuICAgIGNvbnN0IGlkID0gdGhpcy5nZW5lcmF0ZUlkKCk7XHJcbiAgICB0aGlzLl9jdXJyZW50SWQgPSBpZDtcclxuXHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHdpdGhEZWx0YSA9IERFRkFVTFRfV0lUSF9ERUxUQSwgc3RhcnRWYWx1ZSwgZW5kVmFsdWUsIGR1cmF0aW9uID0gREVGQVVMVF9BTklNQVRJT05fRFVSQVRJT04sXHJcbiAgICAgIGdldFByb3BWYWx1ZSwgZWFzaW5nRnVuY3Rpb24gPSBlYXNlTGluZWFyLCBvblVwZGF0ZSwgb25Db21wbGV0ZSxcclxuICAgIH0gPSBwYXJhbXM7XHJcblxyXG4gICAgdGhpcy5fc3RhcnRWYWx1ZSA9IHN0YXJ0VmFsdWU7XHJcbiAgICB0aGlzLl9lbmRWYWx1ZSA9IGVuZFZhbHVlO1xyXG5cclxuICAgIGNvbnN0IHN0YXJ0VGltZSA9IHBlcmZvcm1hbmNlLm5vdygpO1xyXG4gICAgbGV0IGlzQ2FuY2VsZWQgPSBmYWxzZSwgc3RhcnRQb3NEZWx0YSA9IDAsIGRlbHRhID0gMCwgcHJldlRpbWUgPSBzdGFydFRpbWUsIGlzRmluaXNoZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuX3ByZXZQb3MgPSBzdGFydFZhbHVlO1xyXG4gICAgdGhpcy5fZGlmZiA9IHRoaXMuX2VuZFZhbHVlIC0gdGhpcy5fc3RhcnRWYWx1ZTtcclxuXHJcbiAgICBjb25zdCBzdGVwID0gKGN1cnJlbnRUaW1lOiBudW1iZXIpID0+IHtcclxuICAgICAgaWYgKGlkICE9PSB0aGlzLl9jdXJyZW50SWQpIHtcclxuICAgICAgICBpc0NhbmNlbGVkID0gdHJ1ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCEhaXNDYW5jZWxlZCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3QgY1BvcyA9IGdldFByb3BWYWx1ZT8uKCkgfHwgMDtcclxuICAgICAgbGV0IHN0YXJ0RGVsdGEgPSAwO1xyXG4gICAgICBpZiAoY1BvcyAhPT0gdGhpcy5fcHJldlBvcykge1xyXG4gICAgICAgIHN0YXJ0RGVsdGEgPSBjUG9zIC0gdGhpcy5fcHJldlBvcztcclxuICAgICAgICBzdGFydFBvc0RlbHRhICs9IHN0YXJ0RGVsdGE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGVsYXBzZWQgPSBjdXJyZW50VGltZSAtIHN0YXJ0VGltZSxcclxuICAgICAgICBwcm9ncmVzcyA9IHRoaXMuX3N0YXJ0VmFsdWUgPT09IHRoaXMuX2VuZFZhbHVlID8gMSA6IE1hdGgubWluKGR1cmF0aW9uID4gMCA/IGVsYXBzZWQgLyBkdXJhdGlvbiA6IDAsIDEpLFxyXG4gICAgICAgIGVhc2VkUHJvZ3Jlc3MgPSBlYXNpbmdGdW5jdGlvbihwcm9ncmVzcyksXHJcbiAgICAgICAgdmFsID0gKHdpdGhEZWx0YSA/IHN0YXJ0UG9zRGVsdGEgOiAwKSArIHRoaXMuX3N0YXJ0VmFsdWUgKyB0aGlzLl9kaWZmICogZWFzZWRQcm9ncmVzcyxcclxuICAgICAgICBjdXJyZW50VmFsdWUgPSB2YWwsXHJcbiAgICAgICAgdCA9IHBlcmZvcm1hbmNlLm5vdygpO1xyXG5cclxuICAgICAgaXNGaW5pc2hlZCA9IHByb2dyZXNzID09PSAxO1xyXG5cclxuICAgICAgZGVsdGEgPSBjdXJyZW50VmFsdWUgLSBzdGFydERlbHRhIC0gdGhpcy5fcHJldlBvcztcclxuXHJcbiAgICAgIGNvbnN0IGZyYW1lVGltZXN0YW1wID0gdCAtIHByZXZUaW1lLFxyXG4gICAgICAgIGFjdHVhbEZyYW1lVGltZXN0YW1wID0gZnJhbWVUaW1lc3RhbXAgPCBBTklNQVRPUl9NSU5fVElNRVNUQU1QID8gQU5JTUFUT1JfTUlOX1RJTUVTVEFNUCA6IGZyYW1lVGltZXN0YW1wO1xyXG5cclxuICAgICAgcHJldlRpbWUgPSB0O1xyXG4gICAgICB0aGlzLl9wcmV2UG9zID0gY3VycmVudFZhbHVlO1xyXG5cclxuICAgICAgaWYgKG9uVXBkYXRlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICBjb25zdCBkYXRhOiBJQW5pbWF0b3JVcGRhdGVEYXRhID0ge1xyXG4gICAgICAgICAgaWQsXHJcbiAgICAgICAgICBkZWx0YSxcclxuICAgICAgICAgIGVsYXBzZWQsXHJcbiAgICAgICAgICB2YWx1ZTogY3VycmVudFZhbHVlLFxyXG4gICAgICAgICAgdGltZXN0YW1wOiBhY3R1YWxGcmFtZVRpbWVzdGFtcCxcclxuICAgICAgICB9O1xyXG4gICAgICAgIG9uVXBkYXRlKGRhdGEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoaXNGaW5pc2hlZCkge1xyXG4gICAgICAgIHRoaXMuX2FuaW1hdGlvbklkID0gLTE7XHJcbiAgICAgICAgaWYgKG9uQ29tcGxldGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgY29uc3QgZGF0YTogSUFuaW1hdG9yVXBkYXRlRGF0YSA9IHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgICAgIGRlbHRhLFxyXG4gICAgICAgICAgICBlbGFwc2VkLFxyXG4gICAgICAgICAgICB2YWx1ZTogY3VycmVudFZhbHVlLFxyXG4gICAgICAgICAgICB0aW1lc3RhbXA6IGFjdHVhbEZyYW1lVGltZXN0YW1wLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICAgIG9uQ29tcGxldGUoZGF0YSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuX2FuaW1hdGlvbklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5fYW5pbWF0aW9uSWQgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoc3RlcCk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRJZDtcclxuICB9XHJcblxyXG4gIGhhc0FuaW1hdGlvbihpZDogbnVtYmVyID0gLTEpIHtcclxuICAgIGlmICgodGhpcy5fY3VycmVudElkID09PSBpZCB8fCBpZCA9PT0gLTEpICYmIHRoaXMuYW5pbWF0ZWQpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzdG9wKGlkOiBudW1iZXIgPSAtMSkge1xyXG4gICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUoaWQgPT09IC0xID8gdGhpcy5fYW5pbWF0aW9uSWQgOiBpZCk7XHJcbiAgICB0aGlzLl9hbmltYXRpb25JZCA9IC0xO1xyXG4gIH1cclxuXHJcbiAgZGlzcG9zZSgpIHtcclxuICAgIHRoaXMuc3RvcCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -3972,8 +3972,9 @@ class Animator {
|
|
|
3972
3972
|
_diff = 0;
|
|
3973
3973
|
_startValue = 0;
|
|
3974
3974
|
_endValue = 0;
|
|
3975
|
-
|
|
3976
|
-
|
|
3975
|
+
_prevPos = 0;
|
|
3976
|
+
updateTo(end) {
|
|
3977
|
+
this._endValue = end;
|
|
3977
3978
|
this._diff = this._endValue - this._startValue;
|
|
3978
3979
|
return this.hasAnimation();
|
|
3979
3980
|
}
|
|
@@ -3985,7 +3986,8 @@ class Animator {
|
|
|
3985
3986
|
this._startValue = startValue;
|
|
3986
3987
|
this._endValue = endValue;
|
|
3987
3988
|
const startTime = performance.now();
|
|
3988
|
-
let isCanceled = false,
|
|
3989
|
+
let isCanceled = false, startPosDelta = 0, delta = 0, prevTime = startTime, isFinished = false;
|
|
3990
|
+
this._prevPos = startValue;
|
|
3989
3991
|
this._diff = this._endValue - this._startValue;
|
|
3990
3992
|
const step = (currentTime) => {
|
|
3991
3993
|
if (id !== this._currentId) {
|
|
@@ -3996,22 +3998,22 @@ class Animator {
|
|
|
3996
3998
|
}
|
|
3997
3999
|
const cPos = getPropValue?.() || 0;
|
|
3998
4000
|
let startDelta = 0;
|
|
3999
|
-
if (cPos !==
|
|
4000
|
-
startDelta = cPos -
|
|
4001
|
+
if (cPos !== this._prevPos) {
|
|
4002
|
+
startDelta = cPos - this._prevPos;
|
|
4001
4003
|
startPosDelta += startDelta;
|
|
4002
4004
|
}
|
|
4003
|
-
const elapsed = currentTime - startTime, progress = this._startValue ===
|
|
4005
|
+
const elapsed = currentTime - startTime, progress = this._startValue === this._endValue ? 1 : Math.min(duration > 0 ? elapsed / duration : 0, 1), easedProgress = easingFunction(progress), val = (withDelta ? startPosDelta : 0) + this._startValue + this._diff * easedProgress, currentValue = val, t = performance.now();
|
|
4004
4006
|
isFinished = progress === 1;
|
|
4005
|
-
delta = currentValue - startDelta -
|
|
4007
|
+
delta = currentValue - startDelta - this._prevPos;
|
|
4006
4008
|
const frameTimestamp = t - prevTime, actualFrameTimestamp = frameTimestamp < ANIMATOR_MIN_TIMESTAMP ? ANIMATOR_MIN_TIMESTAMP : frameTimestamp;
|
|
4007
4009
|
prevTime = t;
|
|
4008
|
-
|
|
4010
|
+
this._prevPos = currentValue;
|
|
4009
4011
|
if (onUpdate !== undefined) {
|
|
4010
4012
|
const data = {
|
|
4011
4013
|
id,
|
|
4012
4014
|
delta,
|
|
4013
4015
|
elapsed,
|
|
4014
|
-
value:
|
|
4016
|
+
value: currentValue,
|
|
4015
4017
|
timestamp: actualFrameTimestamp,
|
|
4016
4018
|
};
|
|
4017
4019
|
onUpdate(data);
|
|
@@ -4023,7 +4025,7 @@ class Animator {
|
|
|
4023
4025
|
id,
|
|
4024
4026
|
delta,
|
|
4025
4027
|
elapsed,
|
|
4026
|
-
value:
|
|
4028
|
+
value: currentValue,
|
|
4027
4029
|
timestamp: actualFrameTimestamp,
|
|
4028
4030
|
};
|
|
4029
4031
|
onComplete(data);
|