@pluginjs/thumbnails
Advanced tools
Comparing version 0.7.11 to 0.7.12
/*! | ||
* @pluginjs/thumbnails v0.7.11 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.12 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
@@ -180,3 +180,3 @@ * Released under the GPL-3.0 License. | ||
this.generate(); | ||
this.items = this.inner.querySelectorAll(`.${this.classes.THUMB}`); | ||
this.items = this.inner.querySelectorAll(".".concat(this.classes.THUMB)); | ||
this.setDistance(this.options.vertical); | ||
@@ -199,3 +199,3 @@ this.setItemDistance(this.options.vertical); | ||
if (Breakpoints.is(`${breakpoint}-`)) { | ||
if (Breakpoints.is("".concat(breakpoint, "-"))) { | ||
classes.addClass(this.classes.RESPONSIVE, this.element); | ||
@@ -224,3 +224,3 @@ } | ||
items.forEach(item => { | ||
const thumb = dom.closest(`.${this.classes.THUMB}`, item); | ||
const thumb = dom.closest(".".concat(this.classes.THUMB), item); | ||
let info = { | ||
@@ -240,3 +240,3 @@ src: item.getAttribute('src') || window.getComputedStyle(item)['background-image'].match(regex)[1].replace(/'/g, '').replace(/"/g, '') | ||
try { | ||
const content = JSON.parse(`{"data": ${v.replace(/'/g, '"')}}`).data; | ||
const content = JSON.parse("{\"data\": ".concat(v.replace(/'/g, '"'), "}")).data; | ||
return _objectSpread({}, result, { | ||
@@ -280,3 +280,3 @@ [k]: content | ||
dom.setData('index', index, thumb); | ||
thumb.querySelector(`.${this.classes.IMAGE}`).setAttribute('src', item.src); | ||
thumb.querySelector(".".concat(this.classes.IMAGE)).setAttribute('src', item.src); | ||
dom.append(thumb, this.inner); | ||
@@ -293,7 +293,7 @@ }); | ||
if (this.options.loader) { | ||
loader = Loader.of(dom.query(`.${this.classes.LOADER}`, item), this.options.loader); | ||
loader = Loader.of(dom.query(".".concat(this.classes.LOADER), item), this.options.loader); | ||
loader.show(); | ||
} | ||
ImageLoader.of(item.querySelector(`.${this.classes.IMAGE}`)).on('loaded', img => { | ||
ImageLoader.of(item.querySelector(".".concat(this.classes.IMAGE))).on('loaded', img => { | ||
if (this.options.loader) { | ||
@@ -303,3 +303,3 @@ loader.hide(); | ||
classes.addClass(this.classes.LOADED, dom.closest(`.${this.classes.THUMB}`, img)); | ||
classes.addClass(this.classes.LOADED, dom.closest(".".concat(this.classes.THUMB), img)); | ||
}); | ||
@@ -377,3 +377,3 @@ }); | ||
const target = dom.closest(`.${this.classes.THUMB}`, event.target); | ||
const target = dom.closest(".".concat(this.classes.THUMB), event.target); | ||
@@ -441,3 +441,3 @@ if (!target) { | ||
styled.setStyle({ | ||
transform: `${vertical ? 'translateY' : 'translateX'}(${pos}px)` | ||
transform: "".concat(vertical ? 'translateY' : 'translateX', "(").concat(pos, "px)") | ||
}, this.inner); | ||
@@ -487,3 +487,3 @@ } | ||
styled.setStyle({ | ||
transform: `${vertical ? 'translateY' : 'translateX'}(${pos}px)` | ||
transform: "".concat(vertical ? 'translateY' : 'translateX', "(").concat(pos, "px)") | ||
}, this.inner); | ||
@@ -490,0 +490,0 @@ this.pos = pos; |
/*! | ||
* @pluginjs/thumbnails v0.7.11 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.12 (https://pluginjs.com) | ||
* Copyright 2019 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,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;i>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; | ||
"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(".".concat(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("".concat(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(".".concat(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": '.concat(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(".".concat(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(".".concat(this.classes.LOADER),e),this.options.loader)).show(),ImageLoader.of(e.querySelector(".".concat(this.classes.IMAGE))).on("loaded",e=>{this.options.loader&&t.hide(),classes.addClass(this.classes.LOADED,dom.closest(".".concat(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(".".concat(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:"".concat(t?"translateY":"translateX","(").concat(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;i>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:"".concat(e?"translateY":"translateX","(").concat(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.11 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.12 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
@@ -176,3 +176,3 @@ * Released under the GPL-3.0 License. | ||
this.generate(); | ||
this.items = this.inner.querySelectorAll(`.${this.classes.THUMB}`); | ||
this.items = this.inner.querySelectorAll(".".concat(this.classes.THUMB)); | ||
this.setDistance(this.options.vertical); | ||
@@ -195,3 +195,3 @@ this.setItemDistance(this.options.vertical); | ||
if (Breakpoints.is(`${breakpoint}-`)) { | ||
if (Breakpoints.is("".concat(breakpoint, "-"))) { | ||
addClass(this.classes.RESPONSIVE, this.element); | ||
@@ -220,3 +220,3 @@ } | ||
items.forEach(item => { | ||
const thumb = closest(`.${this.classes.THUMB}`, item); | ||
const thumb = closest(".".concat(this.classes.THUMB), item); | ||
let info = { | ||
@@ -236,3 +236,3 @@ src: item.getAttribute('src') || window.getComputedStyle(item)['background-image'].match(regex)[1].replace(/'/g, '').replace(/"/g, '') | ||
try { | ||
const content = JSON.parse(`{"data": ${v.replace(/'/g, '"')}}`).data; | ||
const content = JSON.parse("{\"data\": ".concat(v.replace(/'/g, '"'), "}")).data; | ||
return _objectSpread({}, result, { | ||
@@ -276,3 +276,3 @@ [k]: content | ||
setData('index', index, thumb); | ||
thumb.querySelector(`.${this.classes.IMAGE}`).setAttribute('src', item.src); | ||
thumb.querySelector(".".concat(this.classes.IMAGE)).setAttribute('src', item.src); | ||
append(thumb, this.inner); | ||
@@ -289,7 +289,7 @@ }); | ||
if (this.options.loader) { | ||
loader = Loader.of(query(`.${this.classes.LOADER}`, item), this.options.loader); | ||
loader = Loader.of(query(".".concat(this.classes.LOADER), item), this.options.loader); | ||
loader.show(); | ||
} | ||
ImageLoader.of(item.querySelector(`.${this.classes.IMAGE}`)).on('loaded', img => { | ||
ImageLoader.of(item.querySelector(".".concat(this.classes.IMAGE))).on('loaded', img => { | ||
if (this.options.loader) { | ||
@@ -299,3 +299,3 @@ loader.hide(); | ||
addClass(this.classes.LOADED, closest(`.${this.classes.THUMB}`, img)); | ||
addClass(this.classes.LOADED, closest(".".concat(this.classes.THUMB), img)); | ||
}); | ||
@@ -373,3 +373,3 @@ }); | ||
const target = closest(`.${this.classes.THUMB}`, event.target); | ||
const target = closest(".".concat(this.classes.THUMB), event.target); | ||
@@ -437,3 +437,3 @@ if (!target) { | ||
setStyle({ | ||
transform: `${vertical ? 'translateY' : 'translateX'}(${pos}px)` | ||
transform: "".concat(vertical ? 'translateY' : 'translateX', "(").concat(pos, "px)") | ||
}, this.inner); | ||
@@ -483,3 +483,3 @@ } | ||
setStyle({ | ||
transform: `${vertical ? 'translateY' : 'translateX'}(${pos}px)` | ||
transform: "".concat(vertical ? 'translateY' : 'translateX', "(").concat(pos, "px)") | ||
}, this.inner); | ||
@@ -486,0 +486,0 @@ this.pos = pos; |
/*! | ||
* @pluginjs/thumbnails v0.7.11 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.12 (https://pluginjs.com) | ||
* Copyright 2019 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}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;i>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; | ||
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(".".concat(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("".concat(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(".".concat(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": '.concat(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(".".concat(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(".".concat(this.classes.LOADER),e),this.options.loader)).show(),ImageLoader.of(e.querySelector(".".concat(this.classes.IMAGE))).on("loaded",e=>{this.options.loader&&t.hide(),addClass(this.classes.LOADED,closest(".".concat(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(".".concat(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:"".concat(t?"translateY":"translateX","(").concat(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;i>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:"".concat(e?"translateY":"translateX","(").concat(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.11 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.12 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
@@ -4,0 +4,0 @@ * Released under the GPL-3.0 License. |
/*! | ||
* @pluginjs/thumbnails v0.7.11 (https://pluginjs.com) | ||
* @pluginjs/thumbnails v0.7.12 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
@@ -4,0 +4,0 @@ * Released under the GPL-3.0 License. |
@@ -14,3 +14,3 @@ { | ||
}, | ||
"version": "0.7.11", | ||
"version": "0.7.12", | ||
"category": "ui", | ||
@@ -53,3 +53,3 @@ "main": "dist/thumbnails.common.js", | ||
"@pluginjs/styles": "^0.7.3", | ||
"@pluginjs/swipeable": "^0.7.10", | ||
"@pluginjs/swipeable": "^0.7.11", | ||
"@pluginjs/template": "^0.7.8", | ||
@@ -83,4 +83,3 @@ "@pluginjs/utils": "^0.7.8", | ||
] | ||
}, | ||
"gitHead": "290fd3939aca081ceab305e0d4157ee0d52b45bf" | ||
} | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
108175
13
2241
Updated@pluginjs/swipeable@^0.7.11