@pluginjs/thumbnails
Advanced tools
Comparing version 0.7.2 to 0.7.3
/*! | ||
* @pluginjs/thumbnails v0.7.2 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.3 (https://pluginjs.com) | ||
* Copyright 2018 Creation Studio Limited | ||
@@ -58,2 +58,40 @@ * Released under the GPL-3.0 License. | ||
function _slicedToArray(arr, i) { | ||
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); | ||
} | ||
function _arrayWithHoles(arr) { | ||
if (Array.isArray(arr)) return arr; | ||
} | ||
function _iterableToArrayLimit(arr, i) { | ||
var _arr = []; | ||
var _n = true; | ||
var _d = false; | ||
var _e = undefined; | ||
try { | ||
for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { | ||
_arr.push(_s.value); | ||
if (i && _arr.length === i) break; | ||
} | ||
} catch (err) { | ||
_d = true; | ||
_e = err; | ||
} finally { | ||
try { | ||
if (!_n && _i["return"] != null) _i["return"](); | ||
} finally { | ||
if (_d) throw _e; | ||
} | ||
} | ||
return _arr; | ||
} | ||
function _nonIterableRest() { | ||
throw new TypeError("Invalid attempt to destructure non-iterable instance"); | ||
} | ||
const namespace = 'thumbnails'; | ||
@@ -119,3 +157,4 @@ const events$1 = { | ||
}), _dec(_class = _dec2(_class = _dec3(_class = _dec4(_class = _dec5(_class = _dec6(_class = class Thumbnails extends Component { | ||
constructor(element, options = {}) { | ||
constructor(element) { | ||
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
super(element); | ||
@@ -194,3 +233,7 @@ this.setupOptions(options); | ||
const _data = Object.entries(item.dataset).reduce((result, [k, v]) => { | ||
const _data = Object.entries(item.dataset).reduce((result, _ref) => { | ||
let _ref2 = _slicedToArray(_ref, 2), | ||
k = _ref2[0], | ||
v = _ref2[1]; | ||
try { | ||
@@ -345,7 +388,10 @@ const content = JSON.parse(`{"data": ${v.replace(/'/g, '"')}}`).data; | ||
getItemPos(index, center = false) { | ||
getItemPos(index) { | ||
let center = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; | ||
return (center ? this.distance / 2 : this.distance) - this.distance * (index + 1) - this.gutter * index; | ||
} | ||
setPos(index, vertical = false, animation = true) { | ||
setPos(index) { | ||
let vertical = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; | ||
let animation = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; | ||
const mode = this.options.mode; | ||
@@ -398,3 +444,4 @@ let pos = 0; | ||
resetPos(vertical = false) { | ||
resetPos() { | ||
let vertical = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; | ||
const wrapDistance = this.wrapDistance; | ||
@@ -437,3 +484,6 @@ this.setDistance(this.options.vertical); | ||
go(index, change = true, animation = true) { | ||
go(index) { | ||
let change = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; | ||
let animation = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; | ||
if (this.is('disable')) { | ||
@@ -440,0 +490,0 @@ return; |
/*! | ||
* @pluginjs/thumbnails v0.7.2 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.3 (https://pluginjs.com) | ||
* Copyright 2018 Creation Studio Limited | ||
* Released under the GPL-3.0 License. | ||
*/ | ||
"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var anime=_interopDefault(require("animejs")),Component=_interopDefault(require("@pluginjs/component")),templateEngine=_interopDefault(require("@pluginjs/template")),styled=require("@pluginjs/styled"),classes=require("@pluginjs/classes"),events=require("@pluginjs/events"),dom=require("@pluginjs/dom"),utils=require("@pluginjs/utils"),decorator=require("@pluginjs/decorator"),Swipeable=_interopDefault(require("@pluginjs/swipeable")),ImageLoader=_interopDefault(require("@pluginjs/image-loader")),Loader=_interopDefault(require("@pluginjs/loader")),Breakpoints=_interopDefault(require("@pluginjs/breakpoints"));function _defineProperty(e,s,t){return s in e?Object.defineProperty(e,s,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[s]=t,e}function _objectSpread(e){for(var s=1;s<arguments.length;s++){var t=null!=arguments[s]?arguments[s]:{},i=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.forEach(function(s){_defineProperty(e,s,t[s])})}return e}const namespace="thumbnails",events$1={READY:"ready",ENABLE:"enable",DISABLE:"disable",DESTROY:"destroy",CHANGE:"change",PREV:"prev",NEXT:"next"},classes$1={NAMESPACE:"pj-thumb",THEME:"{namespace}s--{theme}",THUMBS:"{namespace}s",INNER:"{namespace}s-inner",THUMB:"{namespace}",LOADER:"{namespace}-loader",LOADED:"{namespace}-loaded",VIDEO:"{namespace}-video",IMAGE:"{namespace}-img",VERTICAL:"{namespace}s-vertical",ACTIVE:"{namespace}-active",DISABLED:"{namespace}-disabled",RESPONSIVE:"{namespace}-responsive"},methods=["enable","disable","destroy","next","prev","go"],defaults={templates:{inner:()=>'<div class="{classes.INNER}"></div>',thumb:()=>'<div class="{classes.THUMB}"><div class="{classes.LOADER}"></div><img class="{classes.IMAGE}"></div>'},data:"html",delegate:"img",vertical:!1,current:0,mode:"full",loader:{theme:"ring",color:"#000",size:"lg"},breakpoint:null},dependencies=["anime"];var _dec,_dec2,_dec3,_dec4,_dec5,_dec6,_class;let Thumbnails=(_dec=decorator.themeable())(_class=(_dec2=decorator.styleable(classes$1))(_class=(_dec3=decorator.eventable(events$1))(_class=(_dec4=decorator.stateable())(_class=(_dec5=decorator.optionable(defaults,!0))(_class=(_dec6=decorator.register(namespace,{methods:methods,dependencies:dependencies}))(_class=class extends Component{constructor(e,s={}){super(e),this.setupOptions(s),this.distance=0,this.pos=0,this.current=null,this.dif=null,this.setupClasses(),this.setupStates(),this.initialize()}initialize(){!this.options.data||this.options.data.length<0||(this.options.breakpoint&&this.initBreakpoints(),this.data="html"===this.options.data?this.parseHtml():this.options.data,this.generate(),this.items=this.inner.querySelectorAll(`.${this.classes.THUMB}`),this.setDistance(this.options.vertical),this.setItemDistance(this.options.vertical),this.go(this.options.current||0,!1,!1),this.initImageLoader(),this.initSwipeable(),this.bind(),this.enter("initialized"),this.trigger(events$1.READY))}initBreakpoints(){if(Breakpoints.init(),Breakpoints.all().includes(this.options.breakpoint)){const e=this.options.breakpoint,s=this;Breakpoints.is(`${e}-`)&&classes.addClass(this.classes.RESPONSIVE,this.element),Breakpoints.to(e,{enter(){classes.addClass(s.classes.RESPONSIVE,s.element)},leave(){classes.removeClass(s.classes.RESPONSIVE,s.element)}})}}parseHtml(){const e=[],s=this.element.querySelectorAll(this.options.delegate),t=new RegExp(/\((.+?)\)/);return s.length>0&&s.forEach(s=>{const i=dom.closest(`.${this.classes.THUMB}`,s);let n={src:s.getAttribute("src")||window.getComputedStyle(s)["background-image"].match(t)[1].replace(/'/g,"").replace(/"/g,"")};i&&(n.type=classes.hasClass(this.classes.VIDEO,i)?"video":"image");const a=Object.entries(s.dataset).reduce((e,[s,t])=>{try{return _objectSpread({},e,{[s]:JSON.parse(`{"data": ${t.replace(/'/g,'"')}}`).data})}catch(i){return _objectSpread({},e,{[s]:t})}},{});n=utils.deepMerge(n,a),e.push(n)}),e}generate(){classes.addClass(this.classes.THUMBS,this.element),this.options.theme&&classes.addClass(this.getThemeClass(),this.element),this.options.vertical&&classes.addClass(this.classes.VERTICAL,this.element),this.inner=this.getElement("inner"),this.data.forEach((e,s)=>{const t=this.getElement("thumb");"video"===e.type&&classes.addClass(this.classes.VIDEO,t),dom.setData("index",s,t),t.querySelector(`.${this.classes.IMAGE}`).setAttribute("src",e.src),dom.append(t,this.inner)}),this.element.innerHTML="",dom.append(this.inner,this.element)}initImageLoader(){this.items.forEach(e=>{let s="";this.options.loader&&(s=Loader.of(dom.query(`.${this.classes.LOADER}`,e),this.options.loader)).show(),ImageLoader.of(e.querySelector(`.${this.classes.IMAGE}`)).on("loaded",e=>{this.options.loader&&s.hide(),classes.addClass(this.classes.LOADED,dom.closest(`.${this.classes.THUMB}`,e))})})}initSwipeable(){const e=this,s=()=>{this.pos=this.swipeable.position[this.options.vertical?"y":"x"]};this.swipeable=Swipeable.of(this.inner,{rebound:!0,decay:!0,axis:this.options.vertical?"y":"x",reboundPos:"center"===this.options.mode?50:100,offset:"center"===this.options.mode?this.distance/2:0,onStart(){e.enter("dragged")},onDecayend(){s()},onReboundend(){s()},onEnd(){s()}})}getElement(e){const s=this.options.templates[e];let t="";return t=templateEngine.render(s.call(this),{classes:this.classes}),dom.parseHTML(t)}setDistance(e){this.wrapDistance=e?styled.outerHeight(this.element):styled.outerWidth(this.element),this.innerDistance=e?this.inner.scrollHeight:this.inner.scrollWidth}setItemDistance(e){this.length=this.items.length,this.distance=0,this.gutter=this.length>0?parseInt(window.getComputedStyle(this.items[1])[e?"margin-top":"margin-left"],10):0,this.length>0&&(this.distance=e?styled.outerHeight(this.items[0]):styled.outerWidth(this.items[0]))}bind(){events.bindEvent(this.eventName("click"),e=>{if(this.is("dragged"))return this.leave("dragged"),!1;if(this.is("disable")||this.swipeable.is("paning"))return!1;const s=dom.closest(`.${this.classes.THUMB}`,e.target);if(!s)return!1;const t=Number(dom.getData("index",s));return this.go(t)},this.element)}unbind(){events.removeEvent(this.eventName(),this.element)}getItemPos(e,s=!1){return(s?this.distance/2:this.distance)-this.distance*(e+1)-this.gutter*e}setPos(e,s=!1,t=!0){const i=this.options.mode;let n=0;if("full"===i){if(this.innerDistance>this.wrapDistance){const s=this.wrapDistance-this.innerDistance;if(null===this.current){const t=this.getItemPos(e);n=s<t?t:s}else if(this.current===this.length-1&&0===e)n=0;else if(0===this.current&&e===this.length-1)n=s;else{const t=this.pos;if(e>this.current){const e=t-this.distance-this.gutter;n=s<e?e:s}else if(e<this.current){const e=t+this.distance+this.gutter;n=e>0?0:e}}}}else"center"===i&&(n=Math.min(this.wrapDistance,this.innerDistance)/2+this.getItemPos(e,!0));if(t){const e={targets:this.inner,easing:"linear",duration:300};e[s?"translateY":"translateX"]=n,anime(e)}else styled.setStyle({transform:`${s?"translateY":"translateX"}(${n}px)`},this.inner);this.pos=n}resetPos(e=!1){const s=this.wrapDistance;if(this.setDistance(this.options.vertical),this.wrapDistance===s)return;this.setItemDistance(this.options.vertical);const t=this.pos,i=this.wrapDistance-this.innerDistance;let n=0;null===this.dif&&(this.dif=i),"center"===this.options.mode?n=Math.min(this.wrapDistance,this.innerDistance)/2+this.getItemPos(this.current,!0):((n=this.current===this.length-1?t+(i-this.dif):t)>0&&(n=0),n<i&&(n=i)),this.dif=i,styled.setStyle({transform:`${e?"translateY":"translateX"}(${n}px)`},this.inner),this.pos=n}go(e,s=!0,t=!0){this.is("disable")||e<0||e>this.length||e===this.current||(this.setPos(e,this.options.vertical,t),classes.removeClass(this.classes.ACTIVE,this.items[this.current]),classes.addClass(this.classes.ACTIVE,this.items[e]),this.current=e,s&&this.trigger(events$1.CHANGE))}next(){this.is("disable")||(this.go(this.current+1),this.trigger(events$1.NEXT))}prev(){this.is("disable")||(this.go(this.current-1),this.trigger(events$1.PREV))}resize(){this.resetPos(this.options.vertical)}enable(){this.is("disable")&&(classes.removeClass(this.classes.DISABLED,this.element),this.element.disable=!1,this.leave("disable")),this.trigger(events$1.ENABLE)}disable(){this.is("disable")||(classes.addClass(this.classes.DISABLED,this.element),this.element.disable=!0,this.enter("disable")),this.trigger(events$1.DISABLE)}destroy(){this.is("initialized")&&(this.unbind(),!0===this.options.vertical&&classes.removeClass(this.classes.VERTICAL,this.element),this.options.theme&&classes.removeClass(this.getThemeClass(),this.element),this.is("disabled")&&(classes.removeClass(this.classes.DISABLED,this.element),this.element.disable=!1),this.leave("initialized")),this.trigger(events$1.DESTROY),super.destroy()}})||_class)||_class)||_class)||_class)||_class)||_class;module.exports=Thumbnails; | ||
"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var anime=_interopDefault(require("animejs")),Component=_interopDefault(require("@pluginjs/component")),templateEngine=_interopDefault(require("@pluginjs/template")),styled=require("@pluginjs/styled"),classes=require("@pluginjs/classes"),events=require("@pluginjs/events"),dom=require("@pluginjs/dom"),utils=require("@pluginjs/utils"),decorator=require("@pluginjs/decorator"),Swipeable=_interopDefault(require("@pluginjs/swipeable")),ImageLoader=_interopDefault(require("@pluginjs/image-loader")),Loader=_interopDefault(require("@pluginjs/loader")),Breakpoints=_interopDefault(require("@pluginjs/breakpoints"));function _defineProperty(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{},i=Object.keys(s);"function"==typeof Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(s).filter(function(e){return Object.getOwnPropertyDescriptor(s,e).enumerable}))),i.forEach(function(t){_defineProperty(e,t,s[t])})}return e}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArrayLimit(e,t){var s=[],i=!0,n=!1,a=void 0;try{for(var r,l=e[Symbol.iterator]();!(i=(r=l.next()).done)&&(s.push(r.value),!t||s.length!==t);i=!0);}catch(e){n=!0,a=e}finally{try{i||null==l.return||l.return()}finally{if(n)throw a}}return s}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}const namespace="thumbnails",events$1={READY:"ready",ENABLE:"enable",DISABLE:"disable",DESTROY:"destroy",CHANGE:"change",PREV:"prev",NEXT:"next"},classes$1={NAMESPACE:"pj-thumb",THEME:"{namespace}s--{theme}",THUMBS:"{namespace}s",INNER:"{namespace}s-inner",THUMB:"{namespace}",LOADER:"{namespace}-loader",LOADED:"{namespace}-loaded",VIDEO:"{namespace}-video",IMAGE:"{namespace}-img",VERTICAL:"{namespace}s-vertical",ACTIVE:"{namespace}-active",DISABLED:"{namespace}-disabled",RESPONSIVE:"{namespace}-responsive"},methods=["enable","disable","destroy","next","prev","go"],defaults={templates:{inner:()=>'<div class="{classes.INNER}"></div>',thumb:()=>'<div class="{classes.THUMB}"><div class="{classes.LOADER}"></div><img class="{classes.IMAGE}"></div>'},data:"html",delegate:"img",vertical:!1,current:0,mode:"full",loader:{theme:"ring",color:"#000",size:"lg"},breakpoint:null},dependencies=["anime"];var _dec,_dec2,_dec3,_dec4,_dec5,_dec6,_class;let Thumbnails=(_dec=decorator.themeable())(_class=(_dec2=decorator.styleable(classes$1))(_class=(_dec3=decorator.eventable(events$1))(_class=(_dec4=decorator.stateable())(_class=(_dec5=decorator.optionable(defaults,!0))(_class=(_dec6=decorator.register(namespace,{methods:methods,dependencies:dependencies}))(_class=class extends Component{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(e),this.setupOptions(t),this.distance=0,this.pos=0,this.current=null,this.dif=null,this.setupClasses(),this.setupStates(),this.initialize()}initialize(){!this.options.data||this.options.data.length<0||(this.options.breakpoint&&this.initBreakpoints(),this.data="html"===this.options.data?this.parseHtml():this.options.data,this.generate(),this.items=this.inner.querySelectorAll(`.${this.classes.THUMB}`),this.setDistance(this.options.vertical),this.setItemDistance(this.options.vertical),this.go(this.options.current||0,!1,!1),this.initImageLoader(),this.initSwipeable(),this.bind(),this.enter("initialized"),this.trigger(events$1.READY))}initBreakpoints(){if(Breakpoints.init(),Breakpoints.all().includes(this.options.breakpoint)){const e=this.options.breakpoint,t=this;Breakpoints.is(`${e}-`)&&classes.addClass(this.classes.RESPONSIVE,this.element),Breakpoints.to(e,{enter(){classes.addClass(t.classes.RESPONSIVE,t.element)},leave(){classes.removeClass(t.classes.RESPONSIVE,t.element)}})}}parseHtml(){const e=[],t=this.element.querySelectorAll(this.options.delegate),s=new RegExp(/\((.+?)\)/);return t.length>0&&t.forEach(t=>{const i=dom.closest(`.${this.classes.THUMB}`,t);let n={src:t.getAttribute("src")||window.getComputedStyle(t)["background-image"].match(s)[1].replace(/'/g,"").replace(/"/g,"")};i&&(n.type=classes.hasClass(this.classes.VIDEO,i)?"video":"image");const a=Object.entries(t.dataset).reduce((e,t)=>{let s=_slicedToArray(t,2),i=s[0],n=s[1];try{return _objectSpread({},e,{[i]:JSON.parse(`{"data": ${n.replace(/'/g,'"')}}`).data})}catch(t){return _objectSpread({},e,{[i]:n})}},{});n=utils.deepMerge(n,a),e.push(n)}),e}generate(){classes.addClass(this.classes.THUMBS,this.element),this.options.theme&&classes.addClass(this.getThemeClass(),this.element),this.options.vertical&&classes.addClass(this.classes.VERTICAL,this.element),this.inner=this.getElement("inner"),this.data.forEach((e,t)=>{const s=this.getElement("thumb");"video"===e.type&&classes.addClass(this.classes.VIDEO,s),dom.setData("index",t,s),s.querySelector(`.${this.classes.IMAGE}`).setAttribute("src",e.src),dom.append(s,this.inner)}),this.element.innerHTML="",dom.append(this.inner,this.element)}initImageLoader(){this.items.forEach(e=>{let t="";this.options.loader&&(t=Loader.of(dom.query(`.${this.classes.LOADER}`,e),this.options.loader)).show(),ImageLoader.of(e.querySelector(`.${this.classes.IMAGE}`)).on("loaded",e=>{this.options.loader&&t.hide(),classes.addClass(this.classes.LOADED,dom.closest(`.${this.classes.THUMB}`,e))})})}initSwipeable(){const e=this,t=()=>{this.pos=this.swipeable.position[this.options.vertical?"y":"x"]};this.swipeable=Swipeable.of(this.inner,{rebound:!0,decay:!0,axis:this.options.vertical?"y":"x",reboundPos:"center"===this.options.mode?50:100,offset:"center"===this.options.mode?this.distance/2:0,onStart(){e.enter("dragged")},onDecayend(){t()},onReboundend(){t()},onEnd(){t()}})}getElement(e){const t=this.options.templates[e];let s="";return s=templateEngine.render(t.call(this),{classes:this.classes}),dom.parseHTML(s)}setDistance(e){this.wrapDistance=e?styled.outerHeight(this.element):styled.outerWidth(this.element),this.innerDistance=e?this.inner.scrollHeight:this.inner.scrollWidth}setItemDistance(e){this.length=this.items.length,this.distance=0,this.gutter=this.length>0?parseInt(window.getComputedStyle(this.items[1])[e?"margin-top":"margin-left"],10):0,this.length>0&&(this.distance=e?styled.outerHeight(this.items[0]):styled.outerWidth(this.items[0]))}bind(){events.bindEvent(this.eventName("click"),e=>{if(this.is("dragged"))return this.leave("dragged"),!1;if(this.is("disable")||this.swipeable.is("paning"))return!1;const t=dom.closest(`.${this.classes.THUMB}`,e.target);if(!t)return!1;const s=Number(dom.getData("index",t));return this.go(s)},this.element)}unbind(){events.removeEvent(this.eventName(),this.element)}getItemPos(e){return(arguments.length>1&&void 0!==arguments[1]&&arguments[1]?this.distance/2:this.distance)-this.distance*(e+1)-this.gutter*e}setPos(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];const i=this.options.mode;let n=0;if("full"===i){if(this.innerDistance>this.wrapDistance){const t=this.wrapDistance-this.innerDistance;if(null===this.current){const s=this.getItemPos(e);n=t<s?s:t}else if(this.current===this.length-1&&0===e)n=0;else if(0===this.current&&e===this.length-1)n=t;else{const s=this.pos;if(e>this.current){const e=s-this.distance-this.gutter;n=t<e?e:t}else if(e<this.current){const e=s+this.distance+this.gutter;n=e>0?0:e}}}}else"center"===i&&(n=Math.min(this.wrapDistance,this.innerDistance)/2+this.getItemPos(e,!0));if(s){const e={targets:this.inner,easing:"linear",duration:300};e[t?"translateY":"translateX"]=n,anime(e)}else styled.setStyle({transform:`${t?"translateY":"translateX"}(${n}px)`},this.inner);this.pos=n}resetPos(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=this.wrapDistance;if(this.setDistance(this.options.vertical),this.wrapDistance===t)return;this.setItemDistance(this.options.vertical);const s=this.pos,i=this.wrapDistance-this.innerDistance;let n=0;null===this.dif&&(this.dif=i),"center"===this.options.mode?n=Math.min(this.wrapDistance,this.innerDistance)/2+this.getItemPos(this.current,!0):((n=this.current===this.length-1?s+(i-this.dif):s)>0&&(n=0),n<i&&(n=i)),this.dif=i,styled.setStyle({transform:`${e?"translateY":"translateX"}(${n}px)`},this.inner),this.pos=n}go(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],s=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];this.is("disable")||e<0||e>this.length||e===this.current||(this.setPos(e,this.options.vertical,s),classes.removeClass(this.classes.ACTIVE,this.items[this.current]),classes.addClass(this.classes.ACTIVE,this.items[e]),this.current=e,t&&this.trigger(events$1.CHANGE))}next(){this.is("disable")||(this.go(this.current+1),this.trigger(events$1.NEXT))}prev(){this.is("disable")||(this.go(this.current-1),this.trigger(events$1.PREV))}resize(){this.resetPos(this.options.vertical)}enable(){this.is("disable")&&(classes.removeClass(this.classes.DISABLED,this.element),this.element.disable=!1,this.leave("disable")),this.trigger(events$1.ENABLE)}disable(){this.is("disable")||(classes.addClass(this.classes.DISABLED,this.element),this.element.disable=!0,this.enter("disable")),this.trigger(events$1.DISABLE)}destroy(){this.is("initialized")&&(this.unbind(),!0===this.options.vertical&&classes.removeClass(this.classes.VERTICAL,this.element),this.options.theme&&classes.removeClass(this.getThemeClass(),this.element),this.is("disabled")&&(classes.removeClass(this.classes.DISABLED,this.element),this.element.disable=!1),this.leave("initialized")),this.trigger(events$1.DESTROY),super.destroy()}})||_class)||_class)||_class)||_class)||_class)||_class;module.exports=Thumbnails; |
/*! | ||
* @pluginjs/thumbnails v0.7.2 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.3 (https://pluginjs.com) | ||
* Copyright 2018 Creation Studio Limited | ||
@@ -54,2 +54,40 @@ * Released under the GPL-3.0 License. | ||
function _slicedToArray(arr, i) { | ||
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); | ||
} | ||
function _arrayWithHoles(arr) { | ||
if (Array.isArray(arr)) return arr; | ||
} | ||
function _iterableToArrayLimit(arr, i) { | ||
var _arr = []; | ||
var _n = true; | ||
var _d = false; | ||
var _e = undefined; | ||
try { | ||
for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { | ||
_arr.push(_s.value); | ||
if (i && _arr.length === i) break; | ||
} | ||
} catch (err) { | ||
_d = true; | ||
_e = err; | ||
} finally { | ||
try { | ||
if (!_n && _i["return"] != null) _i["return"](); | ||
} finally { | ||
if (_d) throw _e; | ||
} | ||
} | ||
return _arr; | ||
} | ||
function _nonIterableRest() { | ||
throw new TypeError("Invalid attempt to destructure non-iterable instance"); | ||
} | ||
const namespace = 'thumbnails'; | ||
@@ -115,3 +153,4 @@ const events = { | ||
}), _dec(_class = _dec2(_class = _dec3(_class = _dec4(_class = _dec5(_class = _dec6(_class = class Thumbnails extends Component { | ||
constructor(element, options = {}) { | ||
constructor(element) { | ||
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
super(element); | ||
@@ -190,3 +229,7 @@ this.setupOptions(options); | ||
const _data = Object.entries(item.dataset).reduce((result, [k, v]) => { | ||
const _data = Object.entries(item.dataset).reduce((result, _ref) => { | ||
let _ref2 = _slicedToArray(_ref, 2), | ||
k = _ref2[0], | ||
v = _ref2[1]; | ||
try { | ||
@@ -341,7 +384,10 @@ const content = JSON.parse(`{"data": ${v.replace(/'/g, '"')}}`).data; | ||
getItemPos(index, center = false) { | ||
getItemPos(index) { | ||
let center = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; | ||
return (center ? this.distance / 2 : this.distance) - this.distance * (index + 1) - this.gutter * index; | ||
} | ||
setPos(index, vertical = false, animation = true) { | ||
setPos(index) { | ||
let vertical = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; | ||
let animation = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; | ||
const mode = this.options.mode; | ||
@@ -394,3 +440,4 @@ let pos = 0; | ||
resetPos(vertical = false) { | ||
resetPos() { | ||
let vertical = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; | ||
const wrapDistance = this.wrapDistance; | ||
@@ -433,3 +480,6 @@ this.setDistance(this.options.vertical); | ||
go(index, change = true, animation = true) { | ||
go(index) { | ||
let change = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; | ||
let animation = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; | ||
if (this.is('disable')) { | ||
@@ -436,0 +486,0 @@ return; |
/*! | ||
* @pluginjs/thumbnails v0.7.2 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.3 (https://pluginjs.com) | ||
* Copyright 2018 Creation Studio Limited | ||
* Released under the GPL-3.0 License. | ||
*/ | ||
import anime from"animejs";import Component from"@pluginjs/component";import templateEngine from"@pluginjs/template";import{setStyle,outerWidth,outerHeight}from"@pluginjs/styled";import{addClass,removeClass,hasClass}from"@pluginjs/classes";import{bindEvent,removeEvent}from"@pluginjs/events";import{closest,append,parseHTML,getData,setData,query}from"@pluginjs/dom";import{deepMerge}from"@pluginjs/utils";import{eventable,register,stateable,styleable,themeable,optionable}from"@pluginjs/decorator";import Swipeable from"@pluginjs/swipeable";import ImageLoader from"@pluginjs/image-loader";import Loader from"@pluginjs/loader";import Breakpoints from"@pluginjs/breakpoints";function _defineProperty(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{},i=Object.keys(s);"function"==typeof Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(s).filter(function(e){return Object.getOwnPropertyDescriptor(s,e).enumerable}))),i.forEach(function(t){_defineProperty(e,t,s[t])})}return e}const namespace="thumbnails",events={READY:"ready",ENABLE:"enable",DISABLE:"disable",DESTROY:"destroy",CHANGE:"change",PREV:"prev",NEXT:"next"},classes={NAMESPACE:"pj-thumb",THEME:"{namespace}s--{theme}",THUMBS:"{namespace}s",INNER:"{namespace}s-inner",THUMB:"{namespace}",LOADER:"{namespace}-loader",LOADED:"{namespace}-loaded",VIDEO:"{namespace}-video",IMAGE:"{namespace}-img",VERTICAL:"{namespace}s-vertical",ACTIVE:"{namespace}-active",DISABLED:"{namespace}-disabled",RESPONSIVE:"{namespace}-responsive"},methods=["enable","disable","destroy","next","prev","go"],defaults={templates:{inner:()=>'<div class="{classes.INNER}"></div>',thumb:()=>'<div class="{classes.THUMB}"><div class="{classes.LOADER}"></div><img class="{classes.IMAGE}"></div>'},data:"html",delegate:"img",vertical:!1,current:0,mode:"full",loader:{theme:"ring",color:"#000",size:"lg"},breakpoint:null},dependencies=["anime"];var _dec,_dec2,_dec3,_dec4,_dec5,_dec6,_class;let Thumbnails=(_dec=themeable())(_class=(_dec2=styleable(classes))(_class=(_dec3=eventable(events))(_class=(_dec4=stateable())(_class=(_dec5=optionable(defaults,!0))(_class=(_dec6=register(namespace,{methods:methods,dependencies:dependencies}))(_class=class extends Component{constructor(e,t={}){super(e),this.setupOptions(t),this.distance=0,this.pos=0,this.current=null,this.dif=null,this.setupClasses(),this.setupStates(),this.initialize()}initialize(){!this.options.data||this.options.data.length<0||(this.options.breakpoint&&this.initBreakpoints(),this.data="html"===this.options.data?this.parseHtml():this.options.data,this.generate(),this.items=this.inner.querySelectorAll(`.${this.classes.THUMB}`),this.setDistance(this.options.vertical),this.setItemDistance(this.options.vertical),this.go(this.options.current||0,!1,!1),this.initImageLoader(),this.initSwipeable(),this.bind(),this.enter("initialized"),this.trigger(events.READY))}initBreakpoints(){if(Breakpoints.init(),Breakpoints.all().includes(this.options.breakpoint)){const e=this.options.breakpoint,t=this;Breakpoints.is(`${e}-`)&&addClass(this.classes.RESPONSIVE,this.element),Breakpoints.to(e,{enter(){addClass(t.classes.RESPONSIVE,t.element)},leave(){removeClass(t.classes.RESPONSIVE,t.element)}})}}parseHtml(){const e=[],t=this.element.querySelectorAll(this.options.delegate),s=new RegExp(/\((.+?)\)/);return t.length>0&&t.forEach(t=>{const i=closest(`.${this.classes.THUMB}`,t);let n={src:t.getAttribute("src")||window.getComputedStyle(t)["background-image"].match(s)[1].replace(/'/g,"").replace(/"/g,"")};i&&(n.type=hasClass(this.classes.VIDEO,i)?"video":"image");const a=Object.entries(t.dataset).reduce((e,[t,s])=>{try{return _objectSpread({},e,{[t]:JSON.parse(`{"data": ${s.replace(/'/g,'"')}}`).data})}catch(i){return _objectSpread({},e,{[t]:s})}},{});n=deepMerge(n,a),e.push(n)}),e}generate(){addClass(this.classes.THUMBS,this.element),this.options.theme&&addClass(this.getThemeClass(),this.element),this.options.vertical&&addClass(this.classes.VERTICAL,this.element),this.inner=this.getElement("inner"),this.data.forEach((e,t)=>{const s=this.getElement("thumb");"video"===e.type&&addClass(this.classes.VIDEO,s),setData("index",t,s),s.querySelector(`.${this.classes.IMAGE}`).setAttribute("src",e.src),append(s,this.inner)}),this.element.innerHTML="",append(this.inner,this.element)}initImageLoader(){this.items.forEach(e=>{let t="";this.options.loader&&(t=Loader.of(query(`.${this.classes.LOADER}`,e),this.options.loader)).show(),ImageLoader.of(e.querySelector(`.${this.classes.IMAGE}`)).on("loaded",e=>{this.options.loader&&t.hide(),addClass(this.classes.LOADED,closest(`.${this.classes.THUMB}`,e))})})}initSwipeable(){const e=this,t=()=>{this.pos=this.swipeable.position[this.options.vertical?"y":"x"]};this.swipeable=Swipeable.of(this.inner,{rebound:!0,decay:!0,axis:this.options.vertical?"y":"x",reboundPos:"center"===this.options.mode?50:100,offset:"center"===this.options.mode?this.distance/2:0,onStart(){e.enter("dragged")},onDecayend(){t()},onReboundend(){t()},onEnd(){t()}})}getElement(e){const t=this.options.templates[e];let s="";return s=templateEngine.render(t.call(this),{classes:this.classes}),parseHTML(s)}setDistance(e){this.wrapDistance=e?outerHeight(this.element):outerWidth(this.element),this.innerDistance=e?this.inner.scrollHeight:this.inner.scrollWidth}setItemDistance(e){this.length=this.items.length,this.distance=0,this.gutter=this.length>0?parseInt(window.getComputedStyle(this.items[1])[e?"margin-top":"margin-left"],10):0,this.length>0&&(this.distance=e?outerHeight(this.items[0]):outerWidth(this.items[0]))}bind(){bindEvent(this.eventName("click"),e=>{if(this.is("dragged"))return this.leave("dragged"),!1;if(this.is("disable")||this.swipeable.is("paning"))return!1;const t=closest(`.${this.classes.THUMB}`,e.target);if(!t)return!1;const s=Number(getData("index",t));return this.go(s)},this.element)}unbind(){removeEvent(this.eventName(),this.element)}getItemPos(e,t=!1){return(t?this.distance/2:this.distance)-this.distance*(e+1)-this.gutter*e}setPos(e,t=!1,s=!0){const i=this.options.mode;let n=0;if("full"===i){if(this.innerDistance>this.wrapDistance){const t=this.wrapDistance-this.innerDistance;if(null===this.current){const s=this.getItemPos(e);n=t<s?s:t}else if(this.current===this.length-1&&0===e)n=0;else if(0===this.current&&e===this.length-1)n=t;else{const s=this.pos;if(e>this.current){const e=s-this.distance-this.gutter;n=t<e?e:t}else if(e<this.current){const e=s+this.distance+this.gutter;n=e>0?0:e}}}}else"center"===i&&(n=Math.min(this.wrapDistance,this.innerDistance)/2+this.getItemPos(e,!0));if(s){const e={targets:this.inner,easing:"linear",duration:300};e[t?"translateY":"translateX"]=n,anime(e)}else setStyle({transform:`${t?"translateY":"translateX"}(${n}px)`},this.inner);this.pos=n}resetPos(e=!1){const t=this.wrapDistance;if(this.setDistance(this.options.vertical),this.wrapDistance===t)return;this.setItemDistance(this.options.vertical);const s=this.pos,i=this.wrapDistance-this.innerDistance;let n=0;null===this.dif&&(this.dif=i),"center"===this.options.mode?n=Math.min(this.wrapDistance,this.innerDistance)/2+this.getItemPos(this.current,!0):((n=this.current===this.length-1?s+(i-this.dif):s)>0&&(n=0),n<i&&(n=i)),this.dif=i,setStyle({transform:`${e?"translateY":"translateX"}(${n}px)`},this.inner),this.pos=n}go(e,t=!0,s=!0){this.is("disable")||e<0||e>this.length||e===this.current||(this.setPos(e,this.options.vertical,s),removeClass(this.classes.ACTIVE,this.items[this.current]),addClass(this.classes.ACTIVE,this.items[e]),this.current=e,t&&this.trigger(events.CHANGE))}next(){this.is("disable")||(this.go(this.current+1),this.trigger(events.NEXT))}prev(){this.is("disable")||(this.go(this.current-1),this.trigger(events.PREV))}resize(){this.resetPos(this.options.vertical)}enable(){this.is("disable")&&(removeClass(this.classes.DISABLED,this.element),this.element.disable=!1,this.leave("disable")),this.trigger(events.ENABLE)}disable(){this.is("disable")||(addClass(this.classes.DISABLED,this.element),this.element.disable=!0,this.enter("disable")),this.trigger(events.DISABLE)}destroy(){this.is("initialized")&&(this.unbind(),!0===this.options.vertical&&removeClass(this.classes.VERTICAL,this.element),this.options.theme&&removeClass(this.getThemeClass(),this.element),this.is("disabled")&&(removeClass(this.classes.DISABLED,this.element),this.element.disable=!1),this.leave("initialized")),this.trigger(events.DESTROY),super.destroy()}})||_class)||_class)||_class)||_class)||_class)||_class;export default Thumbnails; | ||
import anime from"animejs";import Component from"@pluginjs/component";import templateEngine from"@pluginjs/template";import{setStyle,outerWidth,outerHeight}from"@pluginjs/styled";import{addClass,removeClass,hasClass}from"@pluginjs/classes";import{bindEvent,removeEvent}from"@pluginjs/events";import{closest,append,parseHTML,getData,setData,query}from"@pluginjs/dom";import{deepMerge}from"@pluginjs/utils";import{eventable,register,stateable,styleable,themeable,optionable}from"@pluginjs/decorator";import Swipeable from"@pluginjs/swipeable";import ImageLoader from"@pluginjs/image-loader";import Loader from"@pluginjs/loader";import Breakpoints from"@pluginjs/breakpoints";function _defineProperty(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{},i=Object.keys(s);"function"==typeof Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(s).filter(function(e){return Object.getOwnPropertyDescriptor(s,e).enumerable}))),i.forEach(function(t){_defineProperty(e,t,s[t])})}return e}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArrayLimit(e,t){var s=[],i=!0,n=!1,a=void 0;try{for(var r,l=e[Symbol.iterator]();!(i=(r=l.next()).done)&&(s.push(r.value),!t||s.length!==t);i=!0);}catch(e){n=!0,a=e}finally{try{i||null==l.return||l.return()}finally{if(n)throw a}}return s}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}const namespace="thumbnails",events={READY:"ready",ENABLE:"enable",DISABLE:"disable",DESTROY:"destroy",CHANGE:"change",PREV:"prev",NEXT:"next"},classes={NAMESPACE:"pj-thumb",THEME:"{namespace}s--{theme}",THUMBS:"{namespace}s",INNER:"{namespace}s-inner",THUMB:"{namespace}",LOADER:"{namespace}-loader",LOADED:"{namespace}-loaded",VIDEO:"{namespace}-video",IMAGE:"{namespace}-img",VERTICAL:"{namespace}s-vertical",ACTIVE:"{namespace}-active",DISABLED:"{namespace}-disabled",RESPONSIVE:"{namespace}-responsive"},methods=["enable","disable","destroy","next","prev","go"],defaults={templates:{inner:()=>'<div class="{classes.INNER}"></div>',thumb:()=>'<div class="{classes.THUMB}"><div class="{classes.LOADER}"></div><img class="{classes.IMAGE}"></div>'},data:"html",delegate:"img",vertical:!1,current:0,mode:"full",loader:{theme:"ring",color:"#000",size:"lg"},breakpoint:null},dependencies=["anime"];var _dec,_dec2,_dec3,_dec4,_dec5,_dec6,_class;let Thumbnails=(_dec=themeable())(_class=(_dec2=styleable(classes))(_class=(_dec3=eventable(events))(_class=(_dec4=stateable())(_class=(_dec5=optionable(defaults,!0))(_class=(_dec6=register(namespace,{methods:methods,dependencies:dependencies}))(_class=class extends Component{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(e),this.setupOptions(t),this.distance=0,this.pos=0,this.current=null,this.dif=null,this.setupClasses(),this.setupStates(),this.initialize()}initialize(){!this.options.data||this.options.data.length<0||(this.options.breakpoint&&this.initBreakpoints(),this.data="html"===this.options.data?this.parseHtml():this.options.data,this.generate(),this.items=this.inner.querySelectorAll(`.${this.classes.THUMB}`),this.setDistance(this.options.vertical),this.setItemDistance(this.options.vertical),this.go(this.options.current||0,!1,!1),this.initImageLoader(),this.initSwipeable(),this.bind(),this.enter("initialized"),this.trigger(events.READY))}initBreakpoints(){if(Breakpoints.init(),Breakpoints.all().includes(this.options.breakpoint)){const e=this.options.breakpoint,t=this;Breakpoints.is(`${e}-`)&&addClass(this.classes.RESPONSIVE,this.element),Breakpoints.to(e,{enter(){addClass(t.classes.RESPONSIVE,t.element)},leave(){removeClass(t.classes.RESPONSIVE,t.element)}})}}parseHtml(){const e=[],t=this.element.querySelectorAll(this.options.delegate),s=new RegExp(/\((.+?)\)/);return t.length>0&&t.forEach(t=>{const i=closest(`.${this.classes.THUMB}`,t);let n={src:t.getAttribute("src")||window.getComputedStyle(t)["background-image"].match(s)[1].replace(/'/g,"").replace(/"/g,"")};i&&(n.type=hasClass(this.classes.VIDEO,i)?"video":"image");const a=Object.entries(t.dataset).reduce((e,t)=>{let s=_slicedToArray(t,2),i=s[0],n=s[1];try{return _objectSpread({},e,{[i]:JSON.parse(`{"data": ${n.replace(/'/g,'"')}}`).data})}catch(t){return _objectSpread({},e,{[i]:n})}},{});n=deepMerge(n,a),e.push(n)}),e}generate(){addClass(this.classes.THUMBS,this.element),this.options.theme&&addClass(this.getThemeClass(),this.element),this.options.vertical&&addClass(this.classes.VERTICAL,this.element),this.inner=this.getElement("inner"),this.data.forEach((e,t)=>{const s=this.getElement("thumb");"video"===e.type&&addClass(this.classes.VIDEO,s),setData("index",t,s),s.querySelector(`.${this.classes.IMAGE}`).setAttribute("src",e.src),append(s,this.inner)}),this.element.innerHTML="",append(this.inner,this.element)}initImageLoader(){this.items.forEach(e=>{let t="";this.options.loader&&(t=Loader.of(query(`.${this.classes.LOADER}`,e),this.options.loader)).show(),ImageLoader.of(e.querySelector(`.${this.classes.IMAGE}`)).on("loaded",e=>{this.options.loader&&t.hide(),addClass(this.classes.LOADED,closest(`.${this.classes.THUMB}`,e))})})}initSwipeable(){const e=this,t=()=>{this.pos=this.swipeable.position[this.options.vertical?"y":"x"]};this.swipeable=Swipeable.of(this.inner,{rebound:!0,decay:!0,axis:this.options.vertical?"y":"x",reboundPos:"center"===this.options.mode?50:100,offset:"center"===this.options.mode?this.distance/2:0,onStart(){e.enter("dragged")},onDecayend(){t()},onReboundend(){t()},onEnd(){t()}})}getElement(e){const t=this.options.templates[e];let s="";return s=templateEngine.render(t.call(this),{classes:this.classes}),parseHTML(s)}setDistance(e){this.wrapDistance=e?outerHeight(this.element):outerWidth(this.element),this.innerDistance=e?this.inner.scrollHeight:this.inner.scrollWidth}setItemDistance(e){this.length=this.items.length,this.distance=0,this.gutter=this.length>0?parseInt(window.getComputedStyle(this.items[1])[e?"margin-top":"margin-left"],10):0,this.length>0&&(this.distance=e?outerHeight(this.items[0]):outerWidth(this.items[0]))}bind(){bindEvent(this.eventName("click"),e=>{if(this.is("dragged"))return this.leave("dragged"),!1;if(this.is("disable")||this.swipeable.is("paning"))return!1;const t=closest(`.${this.classes.THUMB}`,e.target);if(!t)return!1;const s=Number(getData("index",t));return this.go(s)},this.element)}unbind(){removeEvent(this.eventName(),this.element)}getItemPos(e){return(arguments.length>1&&void 0!==arguments[1]&&arguments[1]?this.distance/2:this.distance)-this.distance*(e+1)-this.gutter*e}setPos(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];const i=this.options.mode;let n=0;if("full"===i){if(this.innerDistance>this.wrapDistance){const t=this.wrapDistance-this.innerDistance;if(null===this.current){const s=this.getItemPos(e);n=t<s?s:t}else if(this.current===this.length-1&&0===e)n=0;else if(0===this.current&&e===this.length-1)n=t;else{const s=this.pos;if(e>this.current){const e=s-this.distance-this.gutter;n=t<e?e:t}else if(e<this.current){const e=s+this.distance+this.gutter;n=e>0?0:e}}}}else"center"===i&&(n=Math.min(this.wrapDistance,this.innerDistance)/2+this.getItemPos(e,!0));if(s){const e={targets:this.inner,easing:"linear",duration:300};e[t?"translateY":"translateX"]=n,anime(e)}else setStyle({transform:`${t?"translateY":"translateX"}(${n}px)`},this.inner);this.pos=n}resetPos(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=this.wrapDistance;if(this.setDistance(this.options.vertical),this.wrapDistance===t)return;this.setItemDistance(this.options.vertical);const s=this.pos,i=this.wrapDistance-this.innerDistance;let n=0;null===this.dif&&(this.dif=i),"center"===this.options.mode?n=Math.min(this.wrapDistance,this.innerDistance)/2+this.getItemPos(this.current,!0):((n=this.current===this.length-1?s+(i-this.dif):s)>0&&(n=0),n<i&&(n=i)),this.dif=i,setStyle({transform:`${e?"translateY":"translateX"}(${n}px)`},this.inner),this.pos=n}go(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],s=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];this.is("disable")||e<0||e>this.length||e===this.current||(this.setPos(e,this.options.vertical,s),removeClass(this.classes.ACTIVE,this.items[this.current]),addClass(this.classes.ACTIVE,this.items[e]),this.current=e,t&&this.trigger(events.CHANGE))}next(){this.is("disable")||(this.go(this.current+1),this.trigger(events.NEXT))}prev(){this.is("disable")||(this.go(this.current-1),this.trigger(events.PREV))}resize(){this.resetPos(this.options.vertical)}enable(){this.is("disable")&&(removeClass(this.classes.DISABLED,this.element),this.element.disable=!1,this.leave("disable")),this.trigger(events.ENABLE)}disable(){this.is("disable")||(addClass(this.classes.DISABLED,this.element),this.element.disable=!0,this.enter("disable")),this.trigger(events.DISABLE)}destroy(){this.is("initialized")&&(this.unbind(),!0===this.options.vertical&&removeClass(this.classes.VERTICAL,this.element),this.options.theme&&removeClass(this.getThemeClass(),this.element),this.is("disabled")&&(removeClass(this.classes.DISABLED,this.element),this.element.disable=!1),this.leave("initialized")),this.trigger(events.DESTROY),super.destroy()}})||_class)||_class)||_class)||_class)||_class)||_class;export default Thumbnails; |
/*! | ||
* @pluginjs/thumbnails v0.7.2 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.3 (https://pluginjs.com) | ||
* Copyright 2018 Creation Studio Limited | ||
@@ -4,0 +4,0 @@ * Released under the GPL-3.0 License. |
/*! | ||
* @pluginjs/thumbnails v0.7.2 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.3 (https://pluginjs.com) | ||
* Copyright 2018 Creation Studio Limited | ||
@@ -4,0 +4,0 @@ * Released under the GPL-3.0 License. |
@@ -14,3 +14,3 @@ { | ||
}, | ||
"version": "0.7.2", | ||
"version": "0.7.3", | ||
"category": "ui", | ||
@@ -41,17 +41,17 @@ "main": "dist/thumbnails.common.js", | ||
"dependencies": { | ||
"@pluginjs/breakpoints": "^0.7.2", | ||
"@pluginjs/classes": "^0.7.2", | ||
"@pluginjs/component": "^0.7.2", | ||
"@pluginjs/decorator": "^0.7.2", | ||
"@pluginjs/dom": "^0.7.2", | ||
"@pluginjs/events": "^0.7.2", | ||
"@pluginjs/factory": "^0.7.2", | ||
"@pluginjs/image-loader": "^0.7.2", | ||
"@pluginjs/is": "^0.7.2", | ||
"@pluginjs/loader": "^0.7.2", | ||
"@pluginjs/styled": "^0.7.2", | ||
"@pluginjs/breakpoints": "^0.7.3", | ||
"@pluginjs/classes": "^0.7.3", | ||
"@pluginjs/component": "^0.7.3", | ||
"@pluginjs/decorator": "^0.7.3", | ||
"@pluginjs/dom": "^0.7.3", | ||
"@pluginjs/events": "^0.7.3", | ||
"@pluginjs/factory": "^0.7.3", | ||
"@pluginjs/image-loader": "^0.7.3", | ||
"@pluginjs/is": "^0.7.3", | ||
"@pluginjs/loader": "^0.7.3", | ||
"@pluginjs/styled": "^0.7.3", | ||
"@pluginjs/styles": "^0.7.1", | ||
"@pluginjs/swipeable": "^0.7.2", | ||
"@pluginjs/template": "^0.7.2", | ||
"@pluginjs/utils": "^0.7.2", | ||
"@pluginjs/swipeable": "^0.7.3", | ||
"@pluginjs/template": "^0.7.3", | ||
"@pluginjs/utils": "^0.7.3", | ||
"animejs": "*" | ||
@@ -62,3 +62,3 @@ }, | ||
"@pluginjs/browserslist-config": "^1.2.2", | ||
"@pluginjs/cli": "^0.7.2", | ||
"@pluginjs/cli": "^0.7.3", | ||
"babel-jest": "*", | ||
@@ -85,3 +85,3 @@ "jest": "*", | ||
}, | ||
"gitHead": "f18c85114d702b75d2d67e57e43b51100f161f31" | ||
"gitHead": "304f657f71c8be62068380bd34fdc7f003082a24" | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
129936
14
2824
Updated@pluginjs/breakpoints@^0.7.3
Updated@pluginjs/classes@^0.7.3
Updated@pluginjs/component@^0.7.3
Updated@pluginjs/decorator@^0.7.3
Updated@pluginjs/dom@^0.7.3
Updated@pluginjs/events@^0.7.3
Updated@pluginjs/factory@^0.7.3
Updated@pluginjs/is@^0.7.3
Updated@pluginjs/loader@^0.7.3
Updated@pluginjs/styled@^0.7.3
Updated@pluginjs/swipeable@^0.7.3
Updated@pluginjs/template@^0.7.3
Updated@pluginjs/utils@^0.7.3