@egjs/flicking 4.6.1 → 4.6.2
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.
- package/declaration/control/Control.d.ts +1 -1
- package/dist/flicking.esm.js +132 -138
- package/dist/flicking.esm.js.map +1 -1
- package/dist/flicking.js +132 -138
- package/dist/flicking.js.map +1 -1
- package/dist/flicking.min.js +2 -2
- package/dist/flicking.min.js.map +1 -1
- package/dist/flicking.pkgd.js +132 -138
- package/dist/flicking.pkgd.js.map +1 -1
- package/dist/flicking.pkgd.min.js +2 -2
- package/dist/flicking.pkgd.min.js.map +1 -1
- package/package.json +1 -1
- package/src/cfc/sync.ts +3 -1
- package/src/control/Control.ts +2 -2
- package/src/control/FreeControl.ts +1 -1
- package/src/control/SnapControl.ts +1 -1
- package/src/control/StrictControl.ts +1 -1
- package/src/control/states/AnimatingState.ts +4 -1
- package/src/control/states/DraggingState.ts +7 -2
- package/src/renderer/Renderer.ts +16 -14
package/package.json
CHANGED
package/src/cfc/sync.ts
CHANGED
|
@@ -85,7 +85,9 @@ export default (flicking: Flicking, diffResult: DiffResult<any>, rendered: any[]
|
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
-
|
|
88
|
+
if (diffResult.added.length > 0 || diffResult.removed.length > 0) {
|
|
89
|
+
renderer.updateAfterPanelChange(added, removed);
|
|
90
|
+
}
|
|
89
91
|
};
|
|
90
92
|
|
|
91
93
|
const batchInsert = (renderer: Renderer, diffResult: DiffResult<any>, addedElements: any[], startIdx: number, endIdx?: number) => {
|
package/src/control/Control.ts
CHANGED
|
@@ -171,7 +171,7 @@ abstract class Control {
|
|
|
171
171
|
* @chainable
|
|
172
172
|
* @return {Promise<void>}
|
|
173
173
|
*/
|
|
174
|
-
public updatePosition(
|
|
174
|
+
public updatePosition(progressInPanel: number): void { // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
175
175
|
const flicking = getFlickingAttached(this._flicking);
|
|
176
176
|
const camera = flicking.camera;
|
|
177
177
|
const activePanel = this._activePanel;
|
|
@@ -321,7 +321,7 @@ abstract class Control {
|
|
|
321
321
|
}
|
|
322
322
|
}
|
|
323
323
|
|
|
324
|
-
protected _triggerIndexChangeEvent(panel: Panel, position: number, axesEvent?: OnRelease)
|
|
324
|
+
protected _triggerIndexChangeEvent(panel: Panel, position: number, axesEvent?: OnRelease) {
|
|
325
325
|
const flicking = getFlickingAttached(this._flicking);
|
|
326
326
|
const triggeringEvent = panel !== this._activePanel ? EVENTS.WILL_CHANGE : EVENTS.WILL_RESTORE;
|
|
327
327
|
const camera = flicking.camera;
|
|
@@ -106,7 +106,7 @@ class FreeControl extends Control {
|
|
|
106
106
|
* </ko>
|
|
107
107
|
* @return {Promise<void>} A Promise which will be resolved after reaching the target position<ko>해당 좌표 도달시에 resolve되는 Promise</ko>
|
|
108
108
|
*/
|
|
109
|
-
public
|
|
109
|
+
public moveToPosition(position: number, duration: number, axesEvent?: OnRelease) {
|
|
110
110
|
const flicking = getFlickingAttached(this._flicking);
|
|
111
111
|
|
|
112
112
|
const camera = flicking.camera;
|
|
@@ -84,7 +84,7 @@ class SnapControl extends Control {
|
|
|
84
84
|
* </ko>
|
|
85
85
|
* @return {Promise<void>} A Promise which will be resolved after reaching the target position<ko>해당 좌표 도달시에 resolve되는 Promise</ko>
|
|
86
86
|
*/
|
|
87
|
-
public
|
|
87
|
+
public moveToPosition(position: number, duration: number, axesEvent?: OnRelease) {
|
|
88
88
|
const flicking = getFlickingAttached(this._flicking);
|
|
89
89
|
const camera = flicking.camera;
|
|
90
90
|
const activeAnchor = camera.findActiveAnchor();
|
|
@@ -187,7 +187,7 @@ class StrictControl extends Control {
|
|
|
187
187
|
* </ko>
|
|
188
188
|
* @return {Promise<void>} A Promise which will be resolved after reaching the target position<ko>해당 좌표 도달시에 resolve되는 Promise</ko>
|
|
189
189
|
*/
|
|
190
|
-
public
|
|
190
|
+
public moveToPosition(position: number, duration: number, axesEvent?: OnRelease) {
|
|
191
191
|
const flicking = getFlickingAttached(this._flicking);
|
|
192
192
|
const camera = flicking.camera;
|
|
193
193
|
const activePanel = this._activePanel;
|
|
@@ -65,7 +65,10 @@ class AnimatingState extends State {
|
|
|
65
65
|
axesEvent
|
|
66
66
|
}));
|
|
67
67
|
|
|
68
|
-
|
|
68
|
+
const targetPanel = this._targetPanel;
|
|
69
|
+
if (targetPanel) {
|
|
70
|
+
control.setActive(targetPanel, control.activePanel, axesEvent.isTrusted);
|
|
71
|
+
}
|
|
69
72
|
}
|
|
70
73
|
}
|
|
71
74
|
|
|
@@ -34,7 +34,7 @@ class DraggingState extends State {
|
|
|
34
34
|
this._moveToChangedPosition(ctx);
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
public onRelease(ctx: Parameters<State["onRelease"]>[0])
|
|
37
|
+
public onRelease(ctx: Parameters<State["onRelease"]>[0]) {
|
|
38
38
|
const { flicking, axesEvent, transitTo } = ctx;
|
|
39
39
|
|
|
40
40
|
// Update last position to cope with Axes's animating behavior
|
|
@@ -55,7 +55,12 @@ class DraggingState extends State {
|
|
|
55
55
|
const position = axesEvent.destPos[AXES.POSITION_KEY];
|
|
56
56
|
const duration = Math.max(axesEvent.duration, flicking.duration);
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
try {
|
|
59
|
+
void control.moveToPosition(position, duration, axesEvent);
|
|
60
|
+
} catch (err) {
|
|
61
|
+
transitTo(STATE_TYPE.IDLE);
|
|
62
|
+
axesEvent.setTo({ [AXES.POSITION_KEY]: flicking.camera.position }, 0);
|
|
63
|
+
}
|
|
59
64
|
}
|
|
60
65
|
}
|
|
61
66
|
|
package/src/renderer/Renderer.ts
CHANGED
|
@@ -337,24 +337,26 @@ abstract class Renderer {
|
|
|
337
337
|
|
|
338
338
|
void this.render();
|
|
339
339
|
|
|
340
|
-
if (!
|
|
341
|
-
if (
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
targetIndex
|
|
340
|
+
if (!flicking.animating) {
|
|
341
|
+
if (!activePanel || activePanel.removed) {
|
|
342
|
+
if (panels.length <= 0) {
|
|
343
|
+
// All panels removed
|
|
344
|
+
camera.lookAt(0);
|
|
345
|
+
} else {
|
|
346
|
+
let targetIndex = activePanel?.index ?? 0;
|
|
347
|
+
if (targetIndex > panels.length - 1) {
|
|
348
|
+
targetIndex = panels.length - 1;
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
void control.moveToPanel(panels[targetIndex], {
|
|
352
|
+
duration: 0
|
|
353
|
+
}).catch(() => void 0);
|
|
348
354
|
}
|
|
349
|
-
|
|
350
|
-
void control.moveToPanel(
|
|
355
|
+
} else {
|
|
356
|
+
void control.moveToPanel(activePanel, {
|
|
351
357
|
duration: 0
|
|
352
358
|
}).catch(() => void 0);
|
|
353
359
|
}
|
|
354
|
-
} else {
|
|
355
|
-
void control.moveToPanel(control.activePanel!, {
|
|
356
|
-
duration: 0
|
|
357
|
-
}).catch(() => void 0);
|
|
358
360
|
}
|
|
359
361
|
|
|
360
362
|
flicking.camera.updateOffset();
|