-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathdocSlider.min.js
28 lines (28 loc) · 12.7 KB
/
docSlider.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(a){var f=0;return function(){return f<a.length?{done:!1,value:a[f++]}:{done:!0}}};$jscomp.arrayIterator=function(a){return{next:$jscomp.arrayIteratorImpl(a)}};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;
$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(a,f,d){if(a==Array.prototype||a==Object.prototype)return a;a[f]=d.value;return a};$jscomp.getGlobal=function(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var f=0;f<a.length;++f){var d=a[f];if(d&&d.Math==Math)return d}throw Error("Cannot find global object");};$jscomp.global=$jscomp.getGlobal(this);
$jscomp.IS_SYMBOL_NATIVE="function"===typeof Symbol&&"symbol"===typeof Symbol("x");$jscomp.TRUST_ES6_POLYFILLS=!$jscomp.ISOLATE_POLYFILLS||$jscomp.IS_SYMBOL_NATIVE;$jscomp.polyfills={};$jscomp.propertyToPolyfillSymbol={};$jscomp.POLYFILL_PREFIX="$jscp$";var $jscomp$lookupPolyfilledValue=function(a,f){var d=$jscomp.propertyToPolyfillSymbol[f];if(null==d)return a[f];d=a[d];return void 0!==d?d:a[f]};
$jscomp.polyfill=function(a,f,d,h){f&&($jscomp.ISOLATE_POLYFILLS?$jscomp.polyfillIsolated(a,f,d,h):$jscomp.polyfillUnisolated(a,f,d,h))};$jscomp.polyfillUnisolated=function(a,f,d,h){d=$jscomp.global;a=a.split(".");for(h=0;h<a.length-1;h++){var c=a[h];c in d||(d[c]={});d=d[c]}a=a[a.length-1];h=d[a];f=f(h);f!=h&&null!=f&&$jscomp.defineProperty(d,a,{configurable:!0,writable:!0,value:f})};
$jscomp.polyfillIsolated=function(a,f,d,h){var c=a.split(".");a=1===c.length;h=c[0];h=!a&&h in $jscomp.polyfills?$jscomp.polyfills:$jscomp.global;for(var x=0;x<c.length-1;x++){var p=c[x];p in h||(h[p]={});h=h[p]}c=c[c.length-1];d=$jscomp.IS_SYMBOL_NATIVE&&"es6"===d?h[c]:null;f=f(d);null!=f&&(a?$jscomp.defineProperty($jscomp.polyfills,c,{configurable:!0,writable:!0,value:f}):f!==d&&($jscomp.propertyToPolyfillSymbol[c]=$jscomp.IS_SYMBOL_NATIVE?$jscomp.global.Symbol(c):$jscomp.POLYFILL_PREFIX+c,c=$jscomp.propertyToPolyfillSymbol[c],
$jscomp.defineProperty(h,c,{configurable:!0,writable:!0,value:f})))};$jscomp.initSymbol=function(){};
$jscomp.polyfill("Symbol",function(a){if(a)return a;var f=function(a,f){this.$jscomp$symbol$id_=a;$jscomp.defineProperty(this,"description",{configurable:!0,writable:!0,value:f})};f.prototype.toString=function(){return this.$jscomp$symbol$id_};var d=0,h=function(a){if(this instanceof h)throw new TypeError("Symbol is not a constructor");return new f("jscomp_symbol_"+(a||"")+"_"+d++,a)};return h},"es6","es3");$jscomp.initSymbolIterator=function(){};
$jscomp.polyfill("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var f="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),d=0;d<f.length;d++){var h=$jscomp.global[f[d]];"function"===typeof h&&"function"!=typeof h.prototype[a]&&$jscomp.defineProperty(h.prototype,a,{configurable:!0,writable:!0,value:function(){return $jscomp.iteratorPrototype($jscomp.arrayIteratorImpl(this))}})}return a},"es6",
"es3");$jscomp.initSymbolAsyncIterator=function(){};$jscomp.iteratorPrototype=function(a){a={next:a};a[Symbol.iterator]=function(){return this};return a};$jscomp.iteratorFromArray=function(a,f){a instanceof String&&(a+="");var d=0,h={next:function(){if(d<a.length){var c=d++;return{value:f(c,a[c]),done:!1}}h.next=function(){return{done:!0,value:void 0}};return h.next()}};h[Symbol.iterator]=function(){return h};return h};
$jscomp.polyfill("Array.prototype.keys",function(a){return a?a:function(){return $jscomp.iteratorFromArray(this,function(a){return a})}},"es6","es3");
var docSlider=function(){var a,f,d,h,c,x,p,t,e,n,B,G,H,C,z,E,I,J,D,q,u,r,l,v,A,m,k={speed:600,easing:"ease",pager:!0,horizontal:!1,startSpeed:null,scrollReset:!1,complete:function(){},beforeChange:function(){},afterChange:function(){},setInitCss:function(b,w){var a={};a[w?"left":"top"]=100*b+"%";return a},setChangeCss:function(b,w,a,c,e){b={transitionProperty:"transform"};b.transitionDuration=a+"ms";b.transitionTimingFunction=c;b.transform="translate"+(e?"X":"Y")+"(-"+100*w+"%)";return b}},y={setOptions:function(b){if(void 0!==
b){for(var w=Object.keys(b),a=0;a<w.length;a++){var c=w[a];k[c]=b[c]}k.pager||(g.updatePager=function(){})}},createInner:function(){var b=document.querySelector(".docSlider"),a=document.createElement("div"),c=document.querySelectorAll(".docSlider > *:not(.docSlider-pager)");a.classList.add("docSlider-inner");for(var e=0;e<c.length;e++){for(var g=c[e],f=k.setInitCss(e,k.horizontal),d=0;d<Object.keys(f).length;d++){var h=Object.keys(f)[d];g.style[h]=f[h]}g.classList.add("docSlider-page");g.classList.add("docSlider-scroll");
g.setAttribute("data-ds-index",e.toString());g.setAttribute("tabindex","0");a.appendChild(g)}b.appendChild(a)},createPager:function(){if(k.pager){var b=document.querySelectorAll(".docSlider-inner > *").length;if(document.querySelector(".docSlider-pager")){b=document.querySelectorAll(".docSlider-button");for(var a=0;a<b.length;a++){var c=b[a];c.setAttribute("data-ds-jump",a.toString());c.setAttribute("tabindex","-1")}}else{a=document.createElement("nav");a.classList.add("docSlider-pager");for(c=0;c<
b;c++){var e=document.createElement("button");e.classList.add("docSlider-button");e.setAttribute("data-ds-jump",c.toString());e.setAttribute("tabindex","-1");a.appendChild(e)}document.querySelector(".docSlider").appendChild(a)}}},setData:function(){d=document.documentElement;h=document.querySelector(".docSlider");c=document.querySelectorAll(".docSlider-inner > *");x=document.querySelector(".docSlider-pager");p=document.querySelectorAll(".docSlider-pager .docSlider-button");t=c.length;n=e=0;B=k.horizontal?
"X":"Y";G=k.horizontal?"Y":"X";H="onwheel"in document?"wheel":"onmousewheel"in document?"mousewheel":"DOMMouseScroll";z=C=!0;E="elementsFromPoint"in document?"elementsFromPoint":"msElementsFromPoint";I="ontouchstart"in window;J=/iPhone|Android.+Mobile/.test(navigator.userAgent);D=0;u=q=null;r=!0;A=v=l=null;g.updatePager();g.updateClass();A=c[e];c[e].focus({preventScroll:!1})},setEvent:function(){for(var b=0;b<t;b++){var a=p[b];c[b].addEventListener("focusin",g.focusin);void 0!==a&&a.addEventListener("click",
g.pagerClick)}document.addEventListener("keyup",g.keyup);document.addEventListener(H,g.wheel);c[0].addEventListener("transitionstart",g.transitionstart);c[0].addEventListener("transitionend",g.transitionend);I&&(m={move:!1,nextX:"right",prevX:"left",nextY:"bottom",prevY:"top",X:{},Y:{}},h.addEventListener("touchstart",g.touchstart,!1),h.addEventListener("touchmove",g.touchmove,!1),h.addEventListener("touchend",g.touchend,!1));J&&(g.setFV(),window.addEventListener("resize",g.resize))},hashJump:function(){var b=
g.hashToIndex(location.hash);if(b===e)return!1;q=null===k.startSpeed?k.speed:k.startSpeed;l="anchor";q?setTimeout(function(){g.pageChange(b)},200):g.pageChange(b);return!0}},g={hashToIndex:function(b){b=b.length?(b=document.querySelector(b))&&b.hasAttribute("data-ds-index")?Number(b.getAttribute("data-ds-index")):0:0;return b},indexCheck:function(b){return 0<=b&&b<t?b:e},pageChange:function(b){"focus"!==l&&c[b].focus();A=c[b];if(b!==e){l=l?l:"focus";n=e;e=b;b=null===q?k.speed:q;for(var w=null===u?
k.easing:u,d=0;d<t;d++)for(var h=c[d],F=k.setChangeCss(d,e,b,w,k.horizontal),m=0;m<Object.keys(F).length;m++){var p=Object.keys(F)[m];h.style[p]=F[p]}b||(k.scrollReset&&g.scrollReset(c[e]),f&&g.animationReset(n),k.beforeChange(n,c[n],e,c[e],l),v=l,l=null,a&&scrollCue._updateWithDocSlider(),k.afterChange(e,c[e],n,c[n],v),v=null);u=q=null;g.updatePager();g.updateClass()}},focusin:function(){var b=Number(this.getAttribute("data-ds-index"));l=l?l:"focus";g.pageChange(b)},focusinx:function(){var b=Number(this.getAttribute("data-ds-index"));
A=c[b];if(b!==e){l=l?l:"focus";n=e;e=b;b=null===q?k.speed:q;for(var w=null===u?k.easing:u,d=0;d<t;d++)for(var h=c[d],m=k.setChangeCss(d,e,b,w,k.horizontal),p=0;p<Object.keys(m).length;p++){var r=Object.keys(m)[p];h.style[r]=m[r]}b||(k.scrollReset&&g.scrollReset(c[e]),f&&g.animationReset(n),k.beforeChange(n,c[n],e,c[e],l),v=l,l=null,a&&scrollCue._updateWithDocSlider(),k.afterChange(e,c[e],n,c[n],v),v=null);u=q=null;g.updatePager();g.updateClass()}},pagerClick:function(){if(r){var b=Number(this.getAttribute("data-ds-jump"));
l="pager";g.pageChange(b)}},updatePager:function(){for(var b=0;b<t;b++){var a=p[b];void 0!==a&&a.classList.remove("selected")}void 0!==p[e]&&p[e].classList.add("selected")},updateClass:function(){var b=c[n],a=b.getAttribute("data-ds-index"),g=Number(a)+1;b=b.hasAttribute("id")?b.getAttribute("id"):!1;var f=c[e],h=f.getAttribute("data-ds-index"),k=Number(h)+1;f=f.hasAttribute("id")?f.getAttribute("id"):!1;d.classList.remove("docSlider-index_"+a);d.classList.remove("docSlider-page_"+g);d.classList.remove("docSlider-id_"+
b);d.classList.add("docSlider-index_"+h);d.classList.add("docSlider-page_"+k);f&&d.classList.add("docSlider-id_"+f);c[n].classList.remove("docSlider-current");c[e].classList.add("docSlider-current")},keyup:function(b){if(r&&c[e]===document.activeElement){var a=b.key;b=b.shiftKey;var d=c[e];if((b&&/ |Spacebar/.test(a)||!b&&/ArrowUp|Up|PageUp/.test(a))&&g.scrollEnd(d,"top"))a=e-1;else if(!b&&/ |Spacebar|ArrowDown|Down|PageDown/.test(a)&&g.scrollEnd(d,"bottom"))a=e+1;else if(b||"Home"!==a)if(b||"End"!==
a)if(!b&&k.horizontal&&/ArrowLeft|Left/.test(a))a=e-1;else if(!b&&k.horizontal&&/ArrowRight|Right/.test(a))a=e+1;else return;else a=t-1;else a=0;g.indexCheck(a)!==e&&(l="key",g.pageChange(a))}},scrollEnd:function(b,a){switch(a){case "top":return 0>=b.scrollTop;case "bottom":return b.scrollTop>=b.scrollHeight-b.clientHeight;case "left":return 0>=b.scrollLeft;case "right":return b.scrollLeft>=b.scrollWidth-b.clientWidth;default:return a}},wheel:function(b){C&&(requestAnimationFrame(function(){C=!0;
if(r&&z){var a=b.deltaY?-b.deltaY:b.wheelDelta?b.wheelDelta:-b.detail,d=document[E](b.pageX,b.pageY);a=0<a?"top":"bottom";var f=g.indexCheck("top"===a?e-1:e+1);if(A===c[e]&&f!==e){for(var h=0;h<d.length;h++){var k=d[h];if(k.classList.contains("docSlider-scroll")&&!g.scrollEnd(k,a))return}l="scroll";g.pageChange(f)}}}),C=!1)},transitionstart:function(){z=!1;k.scrollReset&&g.scrollReset(c[e]);f&&g.animationReset(n);k.beforeChange(n,c[n],e,c[e],l);v=l;l=null},transitionend:function(){z=!0;a&&scrollCue._updateWithDocSlider();
k.afterChange(e,c[e],n,c[n],v);v=null},resize:function(){0<D&&clearTimeout(D);D=setTimeout(g.setFV,200)},setFV:function(){h.style.height=window.innerHeight+"";h.style.height=window.innerHeight+"px"},touchstart:function(b){!r||1<b.touches.length||(m.move=!1,m.X.start=b.touches[0].pageX,m.Y.start=b.touches[0].pageY)},touchmove:function(b){r&&(1<b.touches.length?b.preventDefault():(m.move=!0,m.X.move=b.changedTouches[0].pageX,m.Y.move=b.changedTouches[0].pageY))},touchend:function(b){if(!(!r||1<b.touches.length||
!m.move||(m.X.distance=m.X.move-m.X.start,m.Y.distance=m.Y.move-m.Y.start,Math.abs(m[B].distance)<Math.abs(m[G].distance)))){var a=0>m[B].distance?"next":"prev";b=g.indexCheck("next"===a?e+1:e-1);if(b!==e&&!(0===e&&"prev"===a||e===t-1&&"next"===a)){a=m[a+B];for(var c=document[E](m.X.start,m.Y.start),d=0;d<c.length;d++){var f=c[d];if(f.classList.contains("docSlider-scroll")&&!g.scrollEnd(f,a))return}l="scroll";g.pageChange(b)}}},scrollReset:function(b){b.scrollTop=0;b.scrollLeft=0},animationReset:function(b){var a=
document.querySelectorAll('[data-scpage][data-show="true"]');if(!a.length)return!1;for(var c=0;c<a.length;c++){var d=a[c],e=d.getAttribute("data-addClass");if(d.getAttribute("data-scpage")!==b+""&&(d.removeAttribute("style"),d.removeAttribute("data-show"),e)){e=e.split(" ");for(var f=0;f<e.length;f++)d.classList.remove(e[f])}}scrollCue._searchElements()}};return{init:function(b){y.setOptions(b);y.createInner();y.createPager();y.setData();y.setEvent();b=y.hashJump();a="undefined"===typeof scrollCue?
!1:scrollCue._hasDocSlider();f="undefined"===typeof scrollCue?!1:scrollCue._hasPageChangeReset();a&&scrollCue._initWithDocSlider(b);k.complete(k,docSlider.getElements())},jumpPage:function(b,a,c){void 0!==b&&(b=isNaN(b)?g.hashToIndex("#"+b.replace("#","")):g.indexCheck(0>b?t+b:b),q=void 0===a?null:a,u=void 0===c?null:c,l="jumpPage",g.pageChange(b))},nextPage:function(a,c){var b=g.indexCheck(e+1);q=void 0===a?null:a;u=void 0===c?null:c;l="nextPage";g.pageChange(b)},prevPage:function(a,c){var b=g.indexCheck(e-
1);q=void 0===a?null:a;u=void 0===c?null:c;l="prevPage";g.pageChange(b)},getOptions:function(){return k},getElements:function(){return{wrapper:h,pages:c,pager:x,buttons:p}},getCurrentIndex:function(){return e},getCurrentPage:function(){return c[e]},enable:function(a){a=(r=void 0===a?!r:a)?"0":"-1";for(var b=0;b<t;b++)c[b].setAttribute("tabindex",a)},_getWheelEnable:function(){return z}}}();