@egjs/flicking 4.11.5-beta.0 → 4.11.5-beta.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@egjs/flicking",
3
- "version": "4.11.5-beta.0",
3
+ "version": "4.11.5-beta.2",
4
4
  "description": "Everyday 30 million people experience. It's reliable, flexible and extendable carousel.",
5
5
  "main": "dist/flicking.cjs.js",
6
6
  "module": "dist/flicking.esm.js",
package/src/Flicking.ts CHANGED
@@ -218,7 +218,6 @@ class Flicking extends Component<FlickingEvents> {
218
218
  * @see Viewport
219
219
  */
220
220
  public get viewport() { return this._viewport; }
221
- public get autoResizer() { return this._autoResizer; }
222
221
  // Internal States
223
222
  /**
224
223
  * Whether Flicking's {@link Flicking#init init()} is called.
@@ -32,6 +32,7 @@ class Camera {
32
32
  private _mode: CameraMode;
33
33
  private _el: HTMLElement;
34
34
  private _transform: string;
35
+ private _lookedOffset: number;
35
36
  private _position: number;
36
37
  private _alignPos: number;
37
38
  private _offset: number;
@@ -292,6 +293,8 @@ class Camera {
292
293
  * @return {this}
293
294
  */
294
295
  public lookAt(pos: number): void {
296
+ const prevOffset = this._offset;
297
+ const isChangedOffset = this._lookedOffset !== prevOffset;
295
298
  const flicking = getFlickingAttached(this._flicking);
296
299
  const prevPos = this._position;
297
300
 
@@ -301,10 +304,15 @@ class Camera {
301
304
  this._checkNeedPanel();
302
305
  this._checkReachEnd(prevPos, pos);
303
306
 
304
- if (toggled) {
307
+ if (isChangedOffset || toggled) {
305
308
  void flicking.renderer.render().then(() => {
306
309
  this.updateOffset();
310
+ this._lookedOffset = this._offset;
307
311
  });
312
+ } else if (isChangedOffset) {
313
+ // sync offset for renderOnlyVisible on resize
314
+ this.updateOffset();
315
+ this._lookedOffset = this._offset;
308
316
  } else {
309
317
  this.applyTransform();
310
318
  }
@@ -36,11 +36,7 @@ class AutoResizer {
36
36
  ? new ResizeObserver(this._skipFirstResize)
37
37
  : new ResizeObserver(this._onResize);
38
38
 
39
- [
40
- flicking.viewport.element,
41
- ...(flicking.camera.element ? [flicking.camera.element] : []),
42
- ...flicking.panels.map(panel => panel.element),
43
- ].forEach((element) => { resizeObserver.observe(element) });
39
+ resizeObserver.observe(flicking.viewport.element);
44
40
 
45
41
  this._resizeObserver = resizeObserver;
46
42
  } else {
@@ -72,6 +68,7 @@ class AutoResizer {
72
68
  const flicking = this._flicking;
73
69
  const resizeDebounce = flicking.resizeDebounce;
74
70
  const maxResizeDebounce = flicking.maxResizeDebounce;
71
+
75
72
  if (resizeDebounce <= 0) {
76
73
  void flicking.resize();
77
74
  } else {
@@ -335,10 +335,6 @@ abstract class Renderer {
335
335
  // Update camera & control
336
336
  this._updateCameraAndControl();
337
337
 
338
- if (flicking.autoResize) {
339
- flicking.autoResizer.enable();
340
- }
341
-
342
338
  void this.render();
343
339
 
344
340
  if (!flicking.animating) {