1 |
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).SharedUtils={})}(this,function(i){"use strict";function n(e){console.error("[BScroll warn]: "+e)}var s=function(){return(s=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};var r="undefined"!=typeof window,t=r&&navigator.userAgent.toLowerCase(),e=!(!t||!/wechatdevtools/.test(t)),o=t&&0<t.indexOf("android"),a=function(){if("string"!=typeof t)return!1;var e=/os (\d\d?_\d(_\d)?)/.exec(t);if(!e)return!1;e=e[1].split("_").map(function(e){return parseInt(e,10)});return!!(13===e[0]&&4<=e[1])}();if(i.supportsPassive=!1,r)try{var f={};Object.defineProperty(f,"passive",{get:function(){i.supportsPassive=!0}}),window.addEventListener("test-passive",function(){},f)}catch(e){}var u=function(e,t){for(var n in t)e[n]=t[n];return e};var c=r&&document.createElement("div").style,p=function(){if(!r)return!1;for(var e=0,t=[{key:"standard",value:"transform"},{key:"webkit",value:"webkitTransform"},{key:"Moz",value:"MozTransform"},{key:"O",value:"OTransform"},{key:"ms",value:"msTransform"}];e<t.length;e++){var n=t[e];if(void 0!==c[n.value])return n.key}return!1}();function v(e){return!1===p?e:"standard"===p?"transitionEnd"===e?"transitionend":e:p+e.charAt(0).toUpperCase()+e.substr(1)}function l(e,t,n,r){r=i.supportsPassive?{passive:!1,capture:!!r}:!!r;e.addEventListener(t,n,r)}function h(e,t,n,r){e.removeEventListener(t,n,{capture:!!r})}var d=p&&"standard"!==p?"-"+p.toLowerCase()+"-":"",y=v("transform"),m=v("transition"),g=r&&v("perspective")in c,w=r&&("ontouchstart"in window||e),E=r&&m in c,b={transform:y,transition:m,transitionTimingFunction:v("transitionTimingFunction"),transitionDuration:v("transitionDuration"),transitionDelay:v("transitionDelay"),transformOrigin:v("transformOrigin"),transitionEnd:v("transitionEnd"),transitionProperty:v("transitionProperty")};function T(e,t){for(var n in t)if(t[n].test(e[n]))return!0;return!1}var O=T;function C(e,t){void 0===t&&(t="click"),"mouseup"===e.type?i=e:"touchend"!==e.type&&"touchcancel"!==e.type||(i=e.changedTouches[0]);var n,r={};i&&(r.screenX=i.screenX||0,r.screenY=i.screenY||0,r.clientX=i.clientX||0,r.clientY=i.clientY||0);var i={ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,altKey:e.altKey,metaKey:e.metaKey};if("undefined"!=typeof MouseEvent)try{n=new MouseEvent(t,u(s({bubbles:!0,cancelable:!0},i),r))}catch(e){o()}else o();function o(){(n=document.createEvent("Event")).initEvent(t,!0,!0),u(n,r)}n.forwardedTouchEvent=!0,n._constructed=!0,e.target.dispatchEvent(n)}function k(e,t){t.parentNode.insertBefore(e,t)}function A(e,t){return new RegExp("(^|\\s)"+t+"(\\s|$)").test(e.className)}var D=r&&window;function M(){}var f=r?D.requestAnimationFrame||D.webkitRequestAnimationFrame||D.mozRequestAnimationFrame||D.oRequestAnimationFrame||function(e){return window.setTimeout(e,e.interval||1e3/60)}:M,y=r?D.cancelAnimationFrame||D.webkitCancelAnimationFrame||D.mozCancelAnimationFrame||D.oCancelAnimationFrame||function(e){window.clearTimeout(e)}:M,m=function(e){},x={enumerable:!0,configurable:!0,get:m,set:m};F.prototype.on=function(e,t,n){return void 0===n&&(n=this),this.hasType(e),this.events[e]||(this.events[e]=[]),this.events[e].push([t,n]),this},F.prototype.once=function(r,i,o){var s=this;void 0===o&&(o=this),this.hasType(r);var a=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];s.off(r,a);var n=i.apply(o,e);if(!0===n)return n};return a.fn=i,this.on(r,a),this},F.prototype.off=function(e,t){if(!e&&!t)return this.events={},this;if(e){if(this.hasType(e),!t)return this.events[e]=[],this;var n=this.events[e];if(!n)return this;for(var r=n.length;r--;)(n[r][0]===t||n[r][0]&&n[r][0].fn===t)&&n.splice(r,1);return this}},F.prototype.trigger=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];this.hasType(e);e=this.events[e];if(e)for(var r,i=e.length,o=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var r=Array(e),i=0,t=0;t<n;t++)for(var o=arguments[t],s=0,a=o.length;s<a;s++,i++)r[i]=o[s];return r}(e),s=0;s<i;s++){var a=o[s],f=a[0],a=a[1];if(f&&!0===(r=f.apply(a,t)))return r}},F.prototype.registerType=function(e){var t=this;e.forEach(function(e){t.eventTypes[e]=e})},F.prototype.destroy=function(){this.events={},this.eventTypes={}},F.prototype.hasType=function(e){var t=this.eventTypes;t[e]===e||n('EventEmitter has used unknown event type: "'+e+'", should be oneof ['+Object.keys(t).map(function(e){return JSON.stringify(e)})+"]")},D=F;function F(e){this.events={},this.eventTypes={},this.registerType(e)}P.prototype.destroy=function(){this.removeDOMEvents(),this.events=[]},P.prototype.addDOMEvents=function(){this.handleDOMEvents(l)},P.prototype.removeDOMEvents=function(){this.handleDOMEvents(h)},P.prototype.handleDOMEvents=function(t){var n=this,r=this.wrapper;this.events.forEach(function(e){t(r,e.name,n,!!e.capture)})},P.prototype.handleEvent=function(t){var n=t.type;this.events.some(function(e){return e.name===n&&(e.handler(t),!0)})},m=P;function P(e,t){this.wrapper=e,this.events=t,this.addDOMEvents()}i.EventEmitter=D,i.EventRegister=m,i.HTMLCollectionToArray=function(e){return Array.prototype.slice.call(e,0)},i.addClass=function(e,t){var n;A(e,t)||((n=e.className.split(" ")).push(t),e.className=n.join(" "))},i.addEvent=l,i.assert=function(e,t){if(!e)throw new Error("[BScroll] "+t)},i.before=k,i.between=function(e,t,n){return e<t?t:n<e?n:e},i.cancelAnimationFrame=y,i.click=C,i.cssVendor=d,i.dblclick=function(e){C(e,"dblclick")},i.ease={swipe:{style:"cubic-bezier(0.23, 1, 0.32, 1)",fn:function(e){return 1+--e*e*e*e*e}},swipeBounce:{style:"cubic-bezier(0.25, 0.46, 0.45, 0.94)",fn:function(e){return e*(2-e)}},bounce:{style:"cubic-bezier(0.165, 0.84, 0.44, 1)",fn:function(e){return 1- --e*e*e*e}}},i.eventTypeMap={touchstart:1,touchmove:1,touchend:1,touchcancel:1,mousedown:2,mousemove:2,mouseup:2},i.extend=u,i.findIndex=function(e,r){if(e.findIndex)return e.findIndex(r);var i=-1;return e.some(function(e,t,n){n=r(e,t,n);if(n)return i=t,n}),i},i.getClientSize=function(e){return{width:e.clientWidth,height:e.clientHeight}},i.getDistance=function(e,t){return Math.sqrt(e*e+t*t)},i.getElement=function(e){return"string"==typeof e?document.querySelector(e):e},i.getNow=function(){return window.performance&&window.performance.now&&window.performance.timing?window.performance.now()+window.performance.timing.navigationStart:+new Date},i.getRect=function(e){if(e instanceof window.SVGElement){var t=e.getBoundingClientRect();return{top:t.top,left:t.left,width:t.width,height:t.height}}return{top:e.offsetTop,left:e.offsetLeft,width:e.offsetWidth,height:e.offsetHeight}},i.hasClass=A,i.hasPerspective=g,i.hasTouch=w,i.hasTransition=E,i.inBrowser=r,i.isAndroid=o,i.isIOSBadVersion=a,i.isUndef=function(e){return null==e},i.isWeChatDevTools=e,i.offset=function(e){for(var t=0,n=0;e;)t-=e.offsetLeft,n-=e.offsetTop,e=e.offsetParent;return{left:t,top:n}},i.offsetToBody=function(e){return{left:-((e=e.getBoundingClientRect()).left+window.pageXOffset),top:-(e.top+window.pageYOffset)}},i.prepend=function(e,t){var n=t.firstChild;n?k(e,n):t.appendChild(e)},i.preventDefaultExceptionFn=T,i.propertiesProxy=function(e,t,n){x.get=function(){return function(e,t){for(var n=t.split("."),r=0;r<n.length-1;r++)if("object"!=typeof(e=e[n[r]])||!e)return;var i=n.pop();return"function"==typeof e[i]?function(){return e[i].apply(e,arguments)}:e[i]}(this,t)},x.set=function(e){!function(e,t,n){for(var r,i=t.split("."),o=0;o<i.length-1;o++)e[r=i[o]]||(e[r]={}),e=e[r];e[i.pop()]=n}(this,t,e)},Object.defineProperty(e,n,x)},i.removeChild=function(e,t){e.removeChild(t)},i.removeClass=function(e,t){A(e,t)&&(t=new RegExp("(^|\\s)"+t+"(\\s|$)","g"),e.className=e.className.replace(t," "))},i.removeEvent=h,i.requestAnimationFrame=f,i.style=b,i.tagExceptionFn=O,i.tap=function(e,t){var n=document.createEvent("Event");n.initEvent(t,!0,!0),n.pageX=e.pageX,n.pageY=e.pageY,e.target.dispatchEvent(n)},i.ua=t,i.warn=n,Object.defineProperty(i,"__esModule",{value:!0})});
|