Browse Source

Remove getters.

Naotoshi Fujita 2 years ago
parent
commit
0bfa98610a

+ 12 - 15
dist/js/splide.js

@@ -664,18 +664,12 @@
   const LOOP = "loop";
   const FADE = "fade";
 
-  function define(object, getters) {
-    L(getters, (get, key) => {
-      Object.defineProperty(object, key, { get, enumerable: true });
-    });
-    return object;
-  }
-
   function Slide$1(Splide2, index, slideIndex, slide) {
     const event = Splide2.event.create();
     const { on, emit, bind } = event;
     const { Components, root, options } = Splide2;
     const { isNavigation, updateOnMove, i18n, pagination, slideFocus } = options;
+    const { Elements } = Components;
     const { resolve } = Components.Direction;
     const styles = wn(slide, "style");
     const label = wn(slide, ARIA_LABEL);
@@ -770,7 +764,7 @@
       if (Splide2.is(FADE)) {
         return isActive();
       }
-      const trackRect = tn(Components.Elements.track);
+      const trackRect = tn(Elements.track);
       const slideRect = tn(slide);
       const left = resolve("left", true);
       const right = resolve("right", true);
@@ -784,12 +778,13 @@
       return diff <= distance;
     }
     function pos() {
-      return un(tn(slide)[resolve("left")] - tn(Components.Elements.list)[resolve("left")]);
+      const left = resolve("left");
+      return un(tn(slide)[left] - tn(Elements.list)[left]);
     }
     function size() {
       return tn(slide)[resolve("width")];
     }
-    const self = define({
+    const self = {
       index,
       slideIndex,
       slide,
@@ -798,9 +793,11 @@
       mount,
       destroy,
       update,
+      pos,
+      size,
       style,
       isWithin
-    }, { pos, size });
+    };
     return self;
   }
 
@@ -986,11 +983,11 @@
     }
     function slideSize(index = 0, withoutGap) {
       const Slide = getAt(index);
-      return (Slide ? Slide.size : 0) + (withoutGap ? 0 : getGap());
+      return (Slide ? Slide.size() : 0) + (withoutGap ? 0 : getGap());
     }
     function totalSize(index, withoutGap) {
       const Slide = getAt(index);
-      return Slide ? Slide.pos + Slide.size + (withoutGap ? 0 : getGap()) : 0;
+      return Slide ? Slide.pos() + Slide.size() + (withoutGap ? 0 : getGap()) : 0;
     }
     function sliderSize(withoutGap) {
       return totalSize(Splide2.length - 1) - totalSize(0) + slideSize(0, withoutGap);
@@ -998,7 +995,7 @@
     function getGap() {
       const first = getAt(0);
       const second = getAt(1);
-      return first && second ? second.pos - first.pos - first.size : 0;
+      return first && second ? second.pos() - first.pos() - first.size() : 0;
     }
     function getPadding(right) {
       return parseFloat(nn(
@@ -1173,7 +1170,7 @@
     }
     function toPosition(index, trimming) {
       const Slide = Slides.getAt(index);
-      const position = Slide ? orient(Slide.pos - offset(index)) : 0;
+      const position = Slide ? orient(Slide.pos() - offset(index)) : 0;
       return trimming ? trim(position) : position;
     }
     function getPosition() {

File diff suppressed because it is too large
+ 0 - 0
dist/js/splide.min.js


BIN
dist/js/splide.min.js.gz


File diff suppressed because it is too large
+ 0 - 0
dist/js/splide.min.js.map


+ 3 - 3
src/js/components/Layout/Layout.ts

@@ -206,7 +206,7 @@ export function Layout(
    */
   function slideSize( index = 0, withoutGap?: boolean ): number {
     const Slide = getAt( index );
-    return ( Slide ? Slide.size : 0 ) + ( withoutGap ? 0 : getGap() );
+    return ( Slide ? Slide.size() : 0 ) + ( withoutGap ? 0 : getGap() );
   }
 
   /**
@@ -220,7 +220,7 @@ export function Layout(
    */
   function totalSize( index: number, withoutGap?: boolean ): number {
     const Slide = getAt( index );
-    return Slide ? Slide.pos + Slide.size + ( withoutGap ? 0 : getGap() ) : 0;
+    return Slide ? Slide.pos() + Slide.size() + ( withoutGap ? 0 : getGap() ) : 0;
   }
 
   /**
@@ -244,7 +244,7 @@ export function Layout(
   function getGap(): number {
     const first  = getAt( 0 );
     const second = getAt( 1 );
-    return first && second ? second.pos - first.pos - first.size : 0;
+    return first && second ? second.pos() - first.pos() - first.size() : 0;
   }
 
   /**

+ 1 - 1
src/js/components/Move/Move.ts

@@ -215,7 +215,7 @@ export function Move(
    */
   function toPosition( index: number, trimming?: boolean ): number {
     const Slide    = Slides.getAt( index );
-    const position = Slide ? orient( Slide.pos - offset( index ) ) : 0;
+    const position = Slide ? orient( Slide.pos() - offset( index ) ) : 0;
     return trimming ? trim( position ) : position;
   }
 

+ 10 - 6
src/js/components/Slides/Slide.ts

@@ -68,10 +68,10 @@ export interface  SlideComponent extends BaseComponent {
   readonly slide: HTMLElement;
   readonly container: HTMLElement;
   readonly isClone: boolean;
-  readonly pos: number;
-  readonly size: number;
 
   update(): void;
+  pos(): number;
+  size(): number;
   style( prop: CSSProperties, value: string | number, useContainer?: boolean ): void
   isWithin( from: number, distance: number ): boolean;
 }
@@ -93,6 +93,7 @@ export function Slide( Splide: Splide, index: number, slideIndex: number, slide:
   const { on, emit, bind } = event;
   const { Components, root, options } = Splide;
   const { isNavigation, updateOnMove, i18n, pagination, slideFocus } = options;
+  const { Elements } = Components;
   const { resolve } = Components.Direction;
   const styles    = getAttribute( slide, 'style' );
   const label     = getAttribute( slide, ARIA_LABEL );
@@ -254,7 +255,7 @@ export function Slide( Splide: Splide, index: number, slideIndex: number, slide:
       return isActive();
     }
 
-    const trackRect = rect( Components.Elements.track );
+    const trackRect = rect( Elements.track );
     const slideRect = rect( slide );
     const left      = resolve( 'left', true );
     const right     = resolve( 'right', true );
@@ -288,7 +289,8 @@ export function Slide( Splide: Splide, index: number, slideIndex: number, slide:
    * @return The slide position.
    */
   function pos(): number {
-    return abs( rect( slide )[ resolve( 'left' ) ] - rect( Components.Elements.list )[ resolve( 'left' ) ] );
+    const left = resolve( 'left' );
+    return abs( rect( slide )[ left ] - rect( Elements.list )[ left ] );
   }
 
   /**
@@ -300,7 +302,7 @@ export function Slide( Splide: Splide, index: number, slideIndex: number, slide:
     return rect( slide )[ resolve( 'width' ) ];
   }
 
-  const self = define( {
+  const self = {
     index,
     slideIndex,
     slide,
@@ -309,9 +311,11 @@ export function Slide( Splide: Splide, index: number, slideIndex: number, slide:
     mount,
     destroy,
     update,
+    pos,
+    size,
     style,
     isWithin,
-  }, { pos, size } );
+  };
 
   return self;
 }

Some files were not shown because too many files changed in this diff