Socket
Socket
Sign inDemoInstall

react-pannable

Package Overview
Dependencies
Maintainers
1
Versions
105
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-pannable - npm Package Compare versions

Comparing version 3.0.0 to 3.1.0

2

dist/react-pannable.min.js

@@ -1,1 +0,1 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],t):t((e=e||self).ReactPannable={},e.React)}(this,(function(e,t){"use strict";var n="default"in t?t.default:t;function i(e,t){if(null==e)return{};var n,i,r={},o=Object.keys(e);for(i=0;o.length>i;i++)0>t.indexOf(n=o[i])&&(r[n]=e[n]);return r}function r(){return(r=Object.assign||function(e){for(var t=1;arguments.length>t;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var o=0,a={target:null,startPoint:null,movePoint:null,moveTime:null,translation:null,velocity:null,interval:null};function l(e,t){switch(t.type){case"disable":case"end":return function(e,t){return e.target?a:e}(e);case"track":return function(e,t){return{target:t.target,startPoint:t.point,movePoint:t.point,moveTime:t.now,translation:null,velocity:null,interval:null}}(0,t);case"move":return function(e,t){var n=e.target,i=e.startPoint,r=e.movePoint,l=e.moveTime,c=e.translation,u=t.point,s=t.now,d=t.shouldStart;if(!n)return e;var f=s-l,h={x:u.x-i.x,y:u.y-i.y},p={x:(u.x-r.x)/f,y:(u.y-r.y)/f};if(c)return{target:n,startPoint:i,movePoint:u,moveTime:s,translation:h,velocity:p,interval:f};if(o>=Math.sqrt(Math.pow(h.x,2)+Math.pow(h.y,2)))return{target:n,startPoint:i,movePoint:u,moveTime:s,translation:null,velocity:null,interval:null};if(!d({target:n,translation:h,velocity:p,interval:f}))return a;return{target:n,startPoint:u,movePoint:u,moveTime:s,translation:{x:0,y:0},velocity:p,interval:f}}(e,t);default:return e}}var c="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?t.useLayoutEffect:t.useEffect;function u(e){var n=t.useRef(e);return t.useEffect((function(){n.current=e})),n}var s={create:function(e){var t=e.transformTranslate,n=e.userSelect,r=i(e,["transformTranslate","userSelect"]);return t&&function(e,t){t.transform="translate3d("+e[0]+"px, "+e[1]+"px, 0)",t.WebkitTransform="translate3d("+e[0]+"px, "+e[1]+"px, 0)",t.msTransform="translate("+e[0]+"px, "+e[1]+"px)"}(t,r),n&&function(e,t){t.userSelect=e,t.WebkitUserSelect=e,t.msUserSelect=e}(n,r),r}},d=function(){},f=function(){};void 0!==typeof window&&(d=window.addEventListener,f=window.removeEventListener);function h(e){var o=e.enabled,h=e.shouldStart,p=e.onStart,v=e.onMove,m=e.onEnd,y=e.onCancel,g=e.children,w=i(e,["enabled","shouldStart","onStart","onMove","onEnd","onCancel","children"]),b=t.useReducer(l,a),x=b[0],E=b[1],S=u(x),C=t.useRef(null),I=t.useRef({touchSupported:!1});I.current.state=x,I.current.shouldStart=h;var T=x.target,z=x.translation,M={target:T,translation:z,velocity:x.velocity,interval:x.interval},O=S.current;c((function(){function e(e,t){E({type:"track",target:e,point:t,now:(new Date).getTime()})}function t(t){if(I.current.touchSupported=!0,t.touches&&1===t.touches.length){var n=t.touches[0];e(n.target,{x:n.pageX,y:n.pageY})}}function n(e){I.current.state.translation&&e.preventDefault()}function i(t){I.current.touchSupported||e(t.target,{x:t.pageX,y:t.pageY})}if(o){var r=C.current;if(!r.addEventListener)return;return r.addEventListener("touchstart",t,!1),r.addEventListener("touchmove",n,!1),r.addEventListener("mousedown",i,!1),function(){r.removeEventListener("touchstart",t,!1),r.removeEventListener("touchmove",n,!1),r.removeEventListener("mousedown",i,!1)}}}),[o]),c((function(){function e(e){E({type:"move",point:e,now:(new Date).getTime(),shouldStart:I.current.shouldStart})}function t(){E({type:"end"})}function n(t){var n=t.touches[0];I.current.state.translation&&t.preventDefault(),e({x:n.pageX,y:n.pageY})}function i(e){I.current.state.translation&&e.preventDefault(),t()}function r(t){t.preventDefault(),e({x:t.pageX,y:t.pageY})}function o(e){e.preventDefault(),t()}if(T)return I.current.touchSupported?(T.addEventListener("touchmove",n,!1),T.addEventListener("touchend",i,!1),T.addEventListener("touchcancel",i,!1),function(){T.removeEventListener("touchmove",n,!1),T.removeEventListener("touchend",i,!1),T.removeEventListener("touchcancel",i,!1)}):(d("mousemove",r,!1),d("mouseup",o,!1),function(){f("mousemove",r,!1),f("mouseup",o,!1)})}),[T]),c((function(){O.translation!==z&&(z?O.translation?v(M):p(M):O.translation&&(o?m(M):y(M)))})),t.useMemo((function(){o||E({type:"disable"})}),[o]);var R={};z&&Object.assign(R,s.create({touchAction:"none",pointerEvents:"none",userSelect:"none"})),w.style&&Object.assign(R,w.style),w.style=R;var L="function"==typeof g?g(x):g;return n.createElement("div",r({},w,{ref:C}),L)}h.defaultProps={enabled:!0,shouldStart:function(){return!0},onStart:function(){},onMove:function(){},onEnd:function(){},onCancel:function(){}};var p=n.createContext({visibleRect:null,resizeContent:function(){}});function v(e){var t=0,n=0;if("undefined"!=typeof window&&(t=e.offsetWidth,n=e.offsetHeight,window.getComputedStyle)){var i=window.getComputedStyle(e)||{};i.paddingLeft&&(t-=parseInt(i.paddingLeft,10)),i.paddingRight&&(t-=parseInt(i.paddingRight,10)),i.borderLeftWidth&&(t-=parseInt(i.borderLeftWidth,10)),i.borderRightWidth&&(t-=parseInt(i.borderRightWidth,10)),i.paddingTop&&(n-=parseInt(i.paddingTop,10)),i.paddingBottom&&(n-=parseInt(i.paddingBottom,10)),i.borderTopWidth&&(n-=parseInt(i.borderTopWidth,10)),i.borderBottomWidth&&(n-=parseInt(i.borderBottomWidth,10))}return{width:t,height:n}}function m(e,t){return e===t||!(!e||!t)&&(e.width===t.width&&e.height===t.height)}function y(e){var o=e.width,a=e.height,l=e.children,s=i(e,["width","height","children"]),d=t.useState(null),f=d[0],h=d[1],y=u(f),g=t.useContext(p),w=t.useRef(null),b=y.current,x=t.useCallback((function(){}),[]),E=t.useCallback((function(){return w.current}),[]),S=t.useCallback((function(){var e=v(w.current);h(e)}),[]);c((function(){m(b,f)||f&&g.resizeContent(f),f||S()})),t.useMemo((function(){var e=null;"number"==typeof o&&"number"==typeof a&&(e={width:o,height:a}),h(e)}),[o,a]);var C={position:"relative"},I={position:"absolute"};"number"==typeof o&&(I.width=o),"number"==typeof a&&(I.height=a),f&&(C.width=f.width,C.height=f.height),s.style&&Object.assign(C,s.style),s.style=C;var T="function"==typeof l?l(f,{getResizeNode:E,calculateSize:S}):l;return n.createElement(p.Provider,{value:r({},g,{resizeContent:x})},n.createElement("div",s,n.createElement("div",{ref:w,style:I},T)))}function g(e,t){return e(t={exports:{}},t.exports),t.exports}y.defaultProps={width:null,height:null},y.PadContent=!0;var w=g((function(e){(e.exports={}).forEach=function(e,t){for(var n=0;e.length>n;n++){var i=t(e[n]);if(i)return i}}})),b=g((function(e){var t=e.exports={};t.isIE=function(e){return(-1!==(t=navigator.userAgent.toLowerCase()).indexOf("msie")||-1!==t.indexOf("trident")||-1!==t.indexOf(" edge/"))&&(!e||e===function(){var e=3,t=document.createElement("div"),n=t.getElementsByTagName("i");do{t.innerHTML="\x3c!--[if gt IE "+ ++e+"]><i></i><![endif]--\x3e"}while(n[0]);return e>4?e:void 0}());var t},t.isLegacyOpera=function(){return!!window.opera}})),x=g((function(e){(e.exports={}).getOption=function(e,t,n){var i=e[t];if(null==i&&void 0!==n)return n;return i}})),E=function(e){var t=(e=e||{}).reporter,n=x.getOption(e,"async",!0),i=x.getOption(e,"auto",!0);i&&!n&&(t&&t.warn("Invalid options combination. auto=true and async=false is invalid. Setting async=true."),n=!0);var r,o=S(),a=!1;function l(){for(a=!0;o.size();){var e=o;o=S(),e.process()}a=!1}function c(){r=setTimeout(l,0)}return{add:function(e,t){!a&&i&&n&&0===o.size()&&c(),o.add(e,t)},force:function(e){a||(void 0===e&&(e=n),r&&(clearTimeout(r),r=null),e?c():l())}}};function S(){var e={},t=0,n=0,i=0;return{add:function(r,o){o||(o=r,r=0),r>n?n=r:i>r&&(i=r),e[r]||(e[r]=[]),e[r].push(o),t++},process:function(){for(var t=i;n>=t;t++)for(var r=e[t],o=0;r.length>o;o++){(0,r[o])()}},size:function(){return t}}}var C="_erd";function I(e){return e[C]}var T={initState:function(e){return e[C]={},I(e)},getState:I,cleanState:function(e){delete e[C]}},z=w.forEach,M=function(e){var t=(e=e||{}).reporter,n=e.batchProcessor,i=e.stateHandler.getState,r=e.idHandler;if(!n)throw Error("Missing required dependency: batchProcessor");if(!t)throw Error("Missing required dependency: reporter.");var o=function(){var e=document.createElement("div");e.style.cssText="position: absolute; width: 1000px; height: 1000px; visibility: hidden; margin: 0; padding: 0;";var t=document.createElement("div");t.style.cssText="position: absolute; width: 500px; height: 500px; overflow: scroll; visibility: none; top: -1500px; left: -1500px; visibility: hidden; margin: 0; padding: 0;",t.appendChild(e),document.body.insertBefore(t,document.body.firstChild);var n=500-t.clientWidth,i=500-t.clientHeight;return document.body.removeChild(t),{width:n,height:i}}(),a="erd_scroll_detection_container";function l(e,n,i){if(e.addEventListener)e.addEventListener(n,i);else{if(!e.attachEvent)return t.error("[scroll] Don't know how to add event listeners.");e.attachEvent("on"+n,i)}}function c(e,n,i){if(e.removeEventListener)e.removeEventListener(n,i);else{if(!e.detachEvent)return t.error("[scroll] Don't know how to remove event listeners.");e.detachEvent("on"+n,i)}}function u(e){return i(e).container.childNodes[0].childNodes[0].childNodes[0]}function s(e){return i(e).container.childNodes[0].childNodes[0].childNodes[1]}return function(e,t){if(!document.getElementById(e)){var n=t+"_animation",i="/* Created by the element-resize-detector library. */\n";i+="."+t+" > div::-webkit-scrollbar { display: none; }\n\n",i+="."+(t+"_animation_active")+" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: "+n+"; animation-name: "+n+"; }\n",i+="@-webkit-keyframes "+n+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\n",function(t,n){n=n||function(e){document.head.appendChild(e)};var i=document.createElement("style");i.innerHTML=t,i.id=e,n(i)}(i+="@keyframes "+n+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }")}}("erd_scroll_detection_scrollbar_style",a),{makeDetectable:function(e,c,d){function f(){if(e.debug){var n=Array.prototype.slice.call(arguments);if(n.unshift(r.get(c),"Scroll: "),t.log.apply)t.log.apply(null,n);else for(var i=0;n.length>i;i++)t.log(n[i])}}function h(e){var t=i(e).container.childNodes[0],n=window.getComputedStyle(t);return!n.width||-1===n.width.indexOf("px")}function p(){var e=window.getComputedStyle(c),t={};return t.position=e.position,t.width=c.offsetWidth,t.height=c.offsetHeight,t.top=e.top,t.right=e.right,t.bottom=e.bottom,t.left=e.left,t.widthCSS=e.width,t.heightCSS=e.height,t}function v(){if(f("storeStyle invoked."),i(c)){var e=p();i(c).style=e}else f("Aborting because element has been uninstalled")}function m(e,t,n){i(e).lastWidth=t,i(e).lastHeight=n}function y(){return 2*o.width+1}function g(){return 2*o.height+1}function w(e){return e+10+y()}function b(e){return e+10+g()}function x(e,t,n){var i=u(e),r=s(e),o=w(t),a=b(n),l=function(e){return 2*e+y()}(t),c=function(e){return 2*e+g()}(n);i.scrollLeft=o,i.scrollTop=a,r.scrollLeft=l,r.scrollTop=c}function E(){var e=i(c).container;if(!e){(e=document.createElement("div")).className=a,e.style.cssText="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0; padding: 0;",i(c).container=e,function(e){e.className+=" "+a+"_animation_active"}(e),c.appendChild(e);var t=function(){i(c).onRendered&&i(c).onRendered()};l(e,"animationstart",t),i(c).onAnimationStart=t}return e}function S(){if(f("Injecting elements"),i(c)){!function(){var e=i(c).style;if("static"===e.position){c.style.position="relative";var n=function(e,t,n,i){var r=n[i];"auto"!==r&&"0"!==function(e){return e.replace(/[^-\d\.]/g,"")}(r)&&(e.warn("An element that is positioned static has style."+i+"="+r+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+i+" will be set to 0. Element: ",t),t.style[i]=0)};n(t,c,e,"top"),n(t,c,e,"right"),n(t,c,e,"bottom"),n(t,c,e,"left")}}();var e=i(c).container;e||(e=E());var n,r,u,s,d=o.width,h=o.height,p="position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; "+("left: "+(n=(n=-(1+d))?n+"px":"0")+"; top: "+(r=(r=-(1+h))?r+"px":"0")+"; right: "+(s=(s=-d)?s+"px":"0")+"; bottom: "+(u=(u=-h)?u+"px":"0")+";"),v=document.createElement("div"),m=document.createElement("div"),y=document.createElement("div"),g=document.createElement("div"),w=document.createElement("div"),b=document.createElement("div");v.dir="ltr",v.style.cssText="position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;",v.className=a,m.className=a,m.style.cssText=p,y.style.cssText="position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;",g.style.cssText="position: absolute; left: 0; top: 0;",w.style.cssText="position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;",b.style.cssText="position: absolute; width: 200%; height: 200%;",y.appendChild(g),w.appendChild(b),m.appendChild(y),m.appendChild(w),v.appendChild(m),e.appendChild(v),l(y,"scroll",x),l(w,"scroll",S),i(c).onExpandScroll=x,i(c).onShrinkScroll=S}else f("Aborting because element has been uninstalled");function x(){i(c).onExpand&&i(c).onExpand()}function S(){i(c).onShrink&&i(c).onShrink()}}function C(){function o(e,t,n){var i=function(e){return u(e).childNodes[0]}(e),r=w(t),o=b(n);i.style.width=r+"px",i.style.height=o+"px"}function a(a){var u=c.offsetWidth,s=c.offsetHeight;f("Storing current size",u,s),m(c,u,s),n.add(0,(function(){if(i(c))if(l()){if(e.debug)c.offsetWidth===u&&c.offsetHeight===s||t.warn(r.get(c),"Scroll: Size changed before updating detector elements.");o(c,u,s)}else f("Aborting because element container has not been initialized");else f("Aborting because element has been uninstalled")})),n.add(1,(function(){i(c)?l()?x(c,u,s):f("Aborting because element container has not been initialized"):f("Aborting because element has been uninstalled")})),a&&n.add(2,(function(){i(c)?l()?a():f("Aborting because element container has not been initialized"):f("Aborting because element has been uninstalled")}))}function l(){return!!i(c).container}function d(){f("notifyListenersIfNeeded invoked");var e=i(c);return void 0===i(c).lastNotifiedWidth&&e.lastWidth===e.startSize.width&&e.lastHeight===e.startSize.height?f("Not notifying: Size is the same as the start size, and there has been no notification yet."):e.lastWidth===e.lastNotifiedWidth&&e.lastHeight===e.lastNotifiedHeight?f("Not notifying: Size already notified"):(f("Current size not notified, notifying..."),e.lastNotifiedWidth=e.lastWidth,e.lastNotifiedHeight=e.lastHeight,void z(i(c).listeners,(function(e){e(c)})))}function p(){if(f("Scroll detected."),h(c))f("Scroll event fired while unrendered. Ignoring...");else{var e=c.offsetWidth,t=c.offsetHeight;e!==i(c).lastWidth||t!==i(c).lastHeight?(f("Element size changed."),a(d)):f("Element size has not changed ("+e+"x"+t+").")}}if(f("registerListenersAndPositionElements invoked."),i(c)){i(c).onRendered=function(){if(f("startanimation triggered."),h(c))f("Ignoring since element is still unrendered...");else{f("Element rendered.");var e=u(c),t=s(c);0!==e.scrollLeft&&0!==e.scrollTop&&0!==t.scrollLeft&&0!==t.scrollTop||(f("Scrollbars out of sync. Updating detector elements..."),a(d))}},i(c).onExpand=p,i(c).onShrink=p;var v=i(c).style;o(c,v.width,v.height)}else f("Aborting because element has been uninstalled")}function I(){if(f("finalizeDomMutation invoked."),i(c)){var e=i(c).style;m(c,e.width,e.height),x(c,e.width,e.height)}else f("Aborting because element has been uninstalled")}function T(){d(c)}function M(){var e;f("Installing..."),i(c).listeners=[],e=p(),i(c).startSize={width:e.width,height:e.height},f("Element start size",i(c).startSize),n.add(0,v),n.add(1,S),n.add(2,C),n.add(3,I),n.add(4,T)}d||(d=c,c=e,e=null),e=e||{},f("Making detectable..."),!function(e){return!function(e){return e===e.ownerDocument.body||e.ownerDocument.body.contains(e)}(e)||null===window.getComputedStyle(e)}(c)?M():(f("Element is detached"),E(),f("Waiting until element is attached..."),i(c).onRendered=function(){f("Element is now attached"),M()})},addListener:function(e,t){if(!i(e).listeners.push)throw Error("Cannot add listener to an element that is not detectable.");i(e).listeners.push(t)},uninstall:function(e){var t=i(e);t&&(t.onExpandScroll&&c(u(e),"scroll",t.onExpandScroll),t.onShrinkScroll&&c(s(e),"scroll",t.onShrinkScroll),t.onAnimationStart&&c(t.container,"animationstart",t.onAnimationStart),t.container&&e.removeChild(t.container))}}},O=w.forEach;function R(e){return Array.isArray(e)||void 0!==e.length}function L(e){if(Array.isArray(e))return e;var t=[];return O(e,(function(e){t.push(e)})),t}function k(e){return e&&1===e.nodeType}function P(e,t,n){var i=e[t];return null==i&&void 0!==n?n:i}var H=null;"undefined"!=typeof window&&(H=function(e){var t,n;if((e=e||{}).idHandler)t={get:function(t){return e.idHandler.get(t,!0)},set:e.idHandler.set};else{var i=function(e){var t=e.idGenerator,n=e.stateHandler.getState;return{get:function(e){var t=n(e);return t&&void 0!==t.id?t.id:null},set:function(e){var i=n(e);if(!i)throw Error("setId required the element to have a resize detection state.");var r=t.generate();return i.id=r,r}}}({idGenerator:(n=1,{generate:function(){return n++}}),stateHandler:T});t=i}var r=e.reporter;r||(r=function(e){function t(){}var n={log:t,warn:t,error:t};if(!e&&window.console){var i=function(e,t){e[t]=function(){var e=console[t];if(e.apply)e.apply(console,arguments);else for(var n=0;arguments.length>n;n++)e(arguments[n])}};i(n,"log"),i(n,"warn"),i(n,"error")}return n}(!1===r));var o=P(e,"batchProcessor",E({reporter:r})),a={};a.callOnAdd=!!P(e,"callOnAdd",!0),a.debug=!!P(e,"debug",!1);var l,c=function(e){var t={};function n(n){var i=e.get(n);return void 0===i?[]:t[i]||[]}return{get:n,add:function(n,i){var r=e.get(n);t[r]||(t[r]=[]),t[r].push(i)},removeListener:function(e,t){for(var i=n(e),r=0,o=i.length;o>r;++r)if(i[r]===t){i.splice(r,1);break}},removeAllListeners:function(e){var t=n(e);t&&(t.length=0)}}}(t),u=function(e){var t=e.stateHandler.getState;return{isDetectable:function(e){var n=t(e);return n&&!!n.isDetectable},markAsDetectable:function(e){t(e).isDetectable=!0},isBusy:function(e){return!!t(e).busy},markBusy:function(e,n){t(e).busy=!!n}}}({stateHandler:T}),s=P(e,"strategy","object"),d={reporter:r,batchProcessor:o,stateHandler:T,idHandler:t};if("scroll"===s&&(b.isLegacyOpera()?(r.warn("Scroll strategy is not supported on legacy Opera. Changing to object strategy."),s="object"):b.isIE(9)&&(r.warn("Scroll strategy is not supported on IE9. Changing to object strategy."),s="object")),"scroll"===s)l=M(d);else{if("object"!==s)throw Error("Invalid strategy name: "+s);l=function(e){var t=(e=e||{}).reporter,n=e.batchProcessor,i=e.stateHandler.getState;if(!t)throw Error("Missing required dependency: reporter.");function r(e){return i(e).object}return{makeDetectable:function(e,r,o){o||(o=r,r=e,e=null),e=e||{},b.isIE(8)?o(r):function(e,r){var o="display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; padding: 0; margin: 0; opacity: 0; z-index: -1000; pointer-events: none;",a=!1,l=window.getComputedStyle(e),c=e.offsetWidth,u=e.offsetHeight;function s(){function n(){if("static"===l.position){e.style.position="relative";var n=function(e,t,n,i){var r=n[i];"auto"!==r&&"0"!==function(e){return e.replace(/[^-\d\.]/g,"")}(r)&&(e.warn("An element that is positioned static has style."+i+"="+r+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+i+" will be set to 0. Element: ",t),t.style[i]=0)};n(t,e,l,"top"),n(t,e,l,"right"),n(t,e,l,"bottom"),n(t,e,l,"left")}}""!==l.position&&(n(),a=!0);var c=document.createElement("object");c.style.cssText=o,c.tabIndex=-1,c.type="text/html",c.setAttribute("aria-hidden","true"),c.onload=function(){a||n(),function e(t,n){t.contentDocument?n(t.contentDocument):setTimeout((function(){e(t,n)}),100)}(this,(function(t){r(e)}))},b.isIE()||(c.data="about:blank"),e.appendChild(c),i(e).object=c,b.isIE()&&(c.data="about:blank")}i(e).startSize={width:c,height:u},n?n.add(s):s()}(r,o)},addListener:function(e,t){if(!r(e))throw Error("Element is not detectable by this strategy.");function n(){t(e)}b.isIE(8)?(i(e).object={proxy:n},e.attachEvent("onresize",n)):r(e).contentDocument.defaultView.addEventListener("resize",n)},uninstall:function(e){b.isIE(8)?e.detachEvent("onresize",i(e).object.proxy):e.removeChild(r(e)),delete i(e).object}}}(d)}var f={};return{listenTo:function(e,n,i){function o(e){var t=c.get(e);O(t,(function(t){t(e)}))}function s(e,t,n){c.add(t,n),e&&n(t)}if(i||(i=n,n=e,e={}),!n)throw Error("At least one element required.");if(!i)throw Error("Listener required.");if(k(n))n=[n];else{if(!R(n))return r.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");n=L(n)}var d=0,h=P(e,"callOnAdd",a.callOnAdd),p=P(e,"onReady",(function(){})),v=P(e,"debug",a.debug);O(n,(function(e){T.getState(e)||(T.initState(e),t.set(e));var a=t.get(e);if(v&&r.log("Attaching listener to element",a,e),!u.isDetectable(e))return v&&r.log(a,"Not detectable."),u.isBusy(e)?(v&&r.log(a,"System busy making it detectable"),s(h,e,i),f[a]=f[a]||[],void f[a].push((function(){++d===n.length&&p()}))):(v&&r.log(a,"Making detectable..."),u.markBusy(e,!0),l.makeDetectable({debug:v},e,(function(e){if(v&&r.log(a,"onElementDetectable"),T.getState(e)){u.markAsDetectable(e),u.markBusy(e,!1),l.addListener(e,o),s(h,e,i);var t=T.getState(e);if(t&&t.startSize)t.startSize.width===e.offsetWidth&&t.startSize.height===e.offsetHeight||o(e);f[a]&&O(f[a],(function(e){e()}))}else v&&r.log(a,"Element uninstalled before being detectable.");delete f[a],++d===n.length&&p()})));v&&r.log(a,"Already detecable, adding listener."),s(h,e,i),d++})),d===n.length&&p()},removeListener:c.removeListener,removeAllListeners:c.removeAllListeners,uninstall:function(e){if(!e)return r.error("At least one element is required.");if(k(e))e=[e];else{if(!R(e))return r.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");e=L(e)}O(e,(function(e){c.removeAllListeners(e),l.uninstall(e),T.cleanState(e)}))}}}({strategy:"scroll"}));var A=H,W=r({},y.defaultProps);function D(e){var i=e.width,r=e.height,o=e.children,a=t.useRef(null);return c((function(){if(("number"!=typeof i||"number"!=typeof r)&&A){var e=a.current.getResizeNode();return A.listenTo(e,(function(){return a.current.calculateSize()})),function(){return A.uninstall(e)}}}),[i,r]),n.createElement(y,e,(function(e,t){return a.current=t,"function"==typeof o?o(e,t):o}))}D.defaultProps=W,D.PadContent=!0;var j=function(){},N=function(){};if("undefined"!=typeof window){j=window.requestAnimationFrame,N=window.cancelAnimationFrame;for(var B=["ms","moz","webkit","o"],V=0,q=0;4>q&&!j;++q)j=window[B[q]+"RequestAnimationFrame"],N=window[B[q]+"CancelAnimationFrame"]||window[B[q]+"CancelRequestAnimationFrame"];j||(j=function(e){var t=(new Date).getTime(),n=Math.max(0,16-(t-V)),i=window.setTimeout((function(){e(t+n)}),n);return V=t+n,i},N=function(e){clearTimeout(e)})}function _(e,t){var n=t.x,i=t.y,r=Math.sqrt(n*n+i*i);return 0===r?{x:0,y:0}:{x:e*(n/r),y:e*(i/r)}}function F(e,t,n,i){if(i){var r="y"===i?["y","height"]:["x","width"],o=r[0];if(!e[o])return 0;var a=0>e[o]?-1:1;return a*Math.min(a*e[o],Math.sqrt(2*(.5*t[r[1]])*a*n[o]))}"number"==typeof n&&(n=_(n,e));var l={x:F(e,t,n,"x"),y:F(e,t,n,"y")};return l.x===e.x&&l.y===e.y?e:l}function X(e,t,n,i,r,o){if(o){var a="y"===o?["y","height"]:["x","width"],l=a[0],c=a[1],u=t[c],s=Math.min(u-n[c],0),d=e[l];return i&&u>0&&(s=u*Math.ceil(s/u)),d>0?d=0:s>d?d=s:!r&&i&&u>0&&(d=u*Math.round(d/u)),d}var f={x:X(e,t,n,i,r,"x"),y:X(e,t,n,i,r,"y")};return f.x===e.x&&f.y===e.y?e:f}function Y(e,t,n,i,r,o){if(o){var a="y"===o?["y","height"]:["x","width"],l=a[0],c=a[1],u=e[l];if(i&&n[c]>0){var s=u/n[c];u=n[c]*(s=t[l]>.5?Math.ceil(s):-.5>t[l]?Math.floor(s):Math.round(s))}else r[l]&&(u+=.5*t[l]*(t[l]/r[l]));return u}return"number"==typeof r&&(r=_(r,t)),{x:Y(e,t,n,i,r,"x"),y:Y(e,t,n,i,r,"y")}}function G(e,t,n,i){var r=(new Date).getTime(),o=0;if(!t)return{endOffset:e,rate:t,duration:o,startTime:r};var a,l={x:e.x-n.x,y:e.y-n.y},c=Math.sqrt(Math.pow(l.x,2)+Math.pow(l.y,2));if(c){var u=Math.sqrt(.5*Math.pow(a=(i.x*l.x+i.y*l.y)/c,2)+t*c),s=(u-a)/t;0>s&&(u=a,s=0),o=s+u/t}else a=Math.sqrt(Math.pow(i.x,2)+Math.pow(i.y,2)),o=(Math.sqrt(2)+1)*a/t;return{endOffset:e,rate:t,duration:o,startTime:r,points:{x:[n.x,n.x+i.x*(o/3),e.x,e.x],y:[n.y,n.y+i.y*(o/3),e.y,e.y]}}}var U=.025,J=.0025,K={size:{width:0,height:0},contentSize:{width:0,height:0},contentOffset:{x:0,y:0},contentVelocity:{x:0,y:0},drag:null,deceleration:null,options:[!1,!1,!0,!0],pannable:a};function Q(e,t){return function(e,t){var n=e.size,i=e.contentSize,o=e.contentOffset,a=e.contentVelocity,l=e.drag,c=e.deceleration,u=e.options[0],s=U;if(c){var d=c.endOffset;if(d!==X(d,n,i,u,!0)&&o!==X(o,n,i,u,!0)){var f=a;return c.rate!==s&&(f=F(f,n,s),d=Y(o,f,n,u,s)),d=X(d,n,i,u,!0),r({},e,{contentVelocity:f,drag:null,deceleration:G(d,s,o,f)})}}else if(!l){var h=X(o,n,i,u);if(o!==h){var p=Y(h,{x:0,y:0},n,u,s);return r({},e,{drag:null,deceleration:G(p,s,o,a)})}}return e}(function(e,t){switch(t.type){case"setPannable":return function(e,t){return r({},e,{pannable:t.value})}(e,t);case"setOptions":return function(e,t){return r({},e,{options:t.value})}(e,t);case"setSize":return function(e,t){return r({},e,{size:t.value})}(e,t);case"setContentSize":return function(e,t){return r({},e,{contentSize:t.value})}(e,t);case"dragStart":return function(e,t){var n=e.contentOffset,i=e.pannable.velocity,o={x:1,y:1};e.options[1]&&(Math.abs(i.x)>Math.abs(i.y)?o.y=0:o.x=0);return r({},e,{contentVelocity:{x:o.x*i.x,y:o.y*i.y},drag:{direction:o,startOffset:n},deceleration:null})}(e);case"dragMove":return function(e,t){var n=e.contentOffset,i=e.drag,o=e.options,a=e.pannable,l=a.translation,c=a.interval,u=function e(t,n,i,r,o){if(o){var a="y"===o?["y","height","width"]:["x","width","height"],l=a[0],c=a[1],u=a[2],s=t[l],d=Math.min(i[c]-r[c],0),f=.5*Math.min(i[c],i[u]);return s>0?n[l]?f*(1-f/(f+s)):0:d>s?n[l]?d-f*(1-f/(f-s+d)):d:s}var h={x:e(t,n,i,r,"x"),y:e(t,n,i,r,"y")};return h.x===t.x&&h.y===t.y?t:h}({x:i.startOffset.x+i.direction.x*l.x,y:i.startOffset.y+i.direction.y*l.y},{x:o[2],y:o[3]},e.size,e.contentSize);return r({},e,{contentOffset:u,contentVelocity:{x:(u.x-n.x)/c,y:(u.y-n.y)/c},drag:i,deceleration:null})}(e);case"dragEnd":return function(e,t){var n=e.size,i=e.contentOffset,o=e.options[0],a=J,l=e.contentVelocity;o&&(l=F(l,n,a=U));var c=Y(i,l,n,o,a);return r({},e,{contentVelocity:l,drag:null,deceleration:G(c,a,i,l)})}(e);case"dragCancel":return function(e,t){var n=e.contentOffset,i=e.contentVelocity,o=U,a=Y(e.drag.startOffset,{x:0,y:0},e.size,e.options[0],o);return r({},e,{drag:null,deceleration:G(a,o,n,i)})}(e);case"decelerate":return function(e,t){var n=e.deceleration,i=t.now;if(!n)return e;var o=function e(t,n,i){var o=t.duration,a=t.endOffset,l=1;if(o>0&&(l=(n-t.startTime)/o),i){var c,u=("y"===i?["y"]:["x"])[0],s=t.points[u],d=s[0],f=s[1],h=s[2],p=s[3],v=d-3*(d-f)*l+3*(d-2*f+h)*Math.pow(l,2)-(d-3*f+3*h-p)*Math.pow(l,3),m=(-3*(d-f)+6*(d-2*f+h)*l-3*(d-3*f+3*h-p)*Math.pow(l,2))/o;return(c={})[u+"Offset"]=v,c[u+"Velocity"]=m,c}if(0>l||l>=1)return{offset:a,velocity:{x:0,y:0},didEnd:!0};var y=r({},e(t,n,"x"),{},e(t,n,"y"));return{offset:{x:y.xOffset,y:y.yOffset},velocity:{x:y.xVelocity,y:y.yVelocity},didEnd:!1}}(n,i);return r({},e,{contentOffset:o.offset,contentVelocity:o.velocity,drag:null,deceleration:o.didEnd?null:n})}(e,t);case"scrollTo":return Z(e,t);case"scrollToRect":return function(e,t){var n=t.animated,i=function e(t,n,i,r,o){if(o){var a="y"===o?["y","height"]:["x","width"],l=a[0],c=a[1],u=-t[l],s=r[c]-t[c];if("auto"===n[l]){var d=0>s?-1:1;u+=d*Math.max(0,Math.min(d*(i[l]-u),d*s))}else"start"===n[l]?n[l]=0:"center"===n[l]?n[l]=.5:"end"===n[l]&&(n[l]=1),("number"!=typeof n[l]||isNaN(n[l]))&&(n[l]=.5),u+=n[l]*s;return u}"object"!=typeof n&&(n={x:n,y:n});return{x:e(t,n,i,r,"x"),y:e(t,n,i,r,"y")}}(t.rect,t.align,e.contentOffset,e.size);return Z(e,{type:"scrollTo",offset:i,animated:n})}(e,t);default:return e}}(e,t))}function Z(e,t){var n=e.contentOffset,i=e.contentVelocity,o=t.point,a=e.drag,l=e.deceleration,c=t.offset,u=void 0===c?{x:0,y:0}:c,s=t.animated;return o&&(u={x:-o.x,y:-o.y}),u.x===n.x&&u.y===n.y?e:(a&&(s=!1),s?r({},e,{deceleration:G(Y(u,{x:0,y:0},e.size,e.options[0],U),U,n,i)}):(a?a=r({},a,{startOffset:{x:a.startOffset.x+u.x-n.x,y:a.startOffset.y+u.y-n.y}}):l=l?G({x:l.endOffset.x+u.x-n.x,y:l.endOffset.y+u.y-n.y},l.rate,u,i):G(u),r({},e,{contentOffset:u,drag:a,deceleration:l})))}var $=r({width:0,height:0,pagingEnabled:!1,directionalLockEnabled:!1,alwaysBounceX:!0,alwaysBounceY:!0,scrollTo:null,scrollToRect:null,onScroll:function(){},onDragStart:function(){},onDragEnd:function(){},onDecelerationStart:function(){},onDecelerationEnd:function(){},onContentResize:function(){}},h.defaultProps);function ee(e){var o=e.width,a=e.height,l=e.pagingEnabled,d=e.directionalLockEnabled,f=e.alwaysBounceX,v=e.alwaysBounceY,y=e.scrollTo,g=e.scrollToRect,w=e.onScroll,b=e.onDragStart,x=e.onDragEnd,E=e.onDecelerationStart,S=e.onDecelerationEnd,C=e.onContentResize,I=e.children,T=i(e,["width","height","pagingEnabled","directionalLockEnabled","alwaysBounceX","alwaysBounceY","scrollTo","scrollToRect","onScroll","onDragStart","onDragEnd","onDecelerationStart","onDecelerationEnd","onContentResize","children"]),z=T.enabled,M=T.shouldStart,O=t.useReducer(Q,K),R=O[0],L=O[1],k=u(R),P=R.size,H=R.contentSize,A=R.contentOffset,W=R.drag,B=R.deceleration,V=R.pannable,q={size:P,contentSize:H,contentOffset:A,contentVelocity:R.contentVelocity,dragging:!!W,decelerating:!!B},_=k.current,F=t.useCallback((function(e){m(H,e)||L({type:"setContentSize",value:e})}),[H]),X=t.useCallback((function(e){return!(d&&!function(e,t,n){var i=Math.abs(e.x)>Math.abs(e.y)?"width":"height";return n[i]>t[i]}(e.velocity,P,H))&&M(e)}),[M,d,P,H]);c((function(){_.pannable.translation!==V.translation&&(V.translation?L(_.pannable.translation?{type:"dragMove"}:{type:"dragStart"}):_.pannable.translation&&L(z?{type:"dragEnd"}:{type:"dragCancel"})),_.contentSize!==H&&C(H),_.contentOffset!==A&&w(q),_.drag!==W&&(_.drag?W||x(q):b(q)),_.deceleration!==B&&(_.deceleration?B||S(q):E(q))})),c((function(){if(R.deceleration){var e=j((function(){L({type:"decelerate",now:(new Date).getTime()})}));return function(){N(e)}}}),[R]),t.useMemo((function(){L({type:"setSize",value:{width:o,height:a}})}),[o,a]),t.useMemo((function(){L({type:"setOptions",value:[l,d,f,v]})}),[l,d,f,v]),t.useMemo((function(){y&&L(r({type:"scrollTo"},y))}),[y]),t.useMemo((function(){g&&L(r({type:"scrollToRect"},g))}),[g]),T.shouldStart=X;var Y={overflow:"hidden",position:"relative",width:P.width,height:P.height};return T.style&&Object.assign(Y,T.style),T.style=Y,n.createElement(p.Provider,{value:{visibleRect:{x:-A.x,y:-A.y,width:P.width,height:P.height},resizeContent:F}},n.createElement(h,T,(function(e){V!==e&&L({type:"setPannable",value:e});var i=s.create({position:"relative",width:H.width,height:H.height,transformTranslate:[A.x,A.y],willChange:"transform"}),r="function"==typeof I?I(R):I;return t.isValidElement(r)&&r.type.PadContent?(r.props.style&&Object.assign(i,r.props.style),r=t.cloneElement(r,{style:i,ref:r.ref})):r=n.createElement(D,{style:i},r),r})))}function te(e,t,n){if(!t)return t;if(n){var i,o="y"===n?["y","height"]:["x","width"],a=o[0],l=o[1];return(i={})[a]=t[a]-e[a],i[l]=t[l],i}return r({},te(e,t,"x"),{},te(e,t,"y"))}function ne(e,t,n){if(!t)return!0;if(n){var i="y"===n?["y","height"]:["x","width"],r=i[0],o=i[1];return e[r]+e[o]>=t[r]-.25*t[o]&&t[r]+1.25*t[o]>=e[r]}return ne(e,t,"x")&&ne(e,t,"y")}function ie(){}ee.defaultProps=$;function re(e){var o=e.width,a=e.height,l=e.direction,s=e.rowSpacing,d=e.columnSpacing,f=e.itemCount,h=e.itemWidth,v=e.itemHeight,y=e.renderItem,g=e.children,w=i(e,["width","height","direction","rowSpacing","columnSpacing","itemCount","itemWidth","itemHeight","renderItem","children"]),b=t.useMemo((function(){return function(e){var t,n,i=e.itemCount,r={width:e.itemWidth,height:e.itemHeight},o={row:e.rowSpacing,column:e.columnSpacing},a="x"===e.direction?["y","x","height","width","column","row"]:["x","y","width","height","row","column"],l=a[0],c=a[1],u=a[2],s=a[3],d=a[4],f=a[5],h={width:e.width,height:e.height}[u],p=0,v=0,m=0,y=[];"number"!=typeof h?(m=i,0===r[u]?h=0:(h=i*r[u],i>1&&(h+=(i-1)*o[f]))):0===r[u]?m=i:(m=1,h>r[u]&&(m+=Math.floor((h-r[u])/(r[u]+o[f]))));m>0&&(v=Math.ceil(i/m));for(var g=0;v>g;g++){g>0&&(p+=o[d]);for(var w=0;m>w;w++){var b,x,E=w+g*m,S=0;if(m>1&&(S+=Math.round(w*((h-r[u])/(m-1)))),E>=i)break;y.push(((x={rect:(b={},b[l]=S,b[c]=p,b[u]=r[u],b[s]=r[s],b)})[d+"Index"]=g,x[f+"Index"]=w,x.itemIndex=E,x))}p+=r[s]}return{size:(t={},t[u]=h,t[s]=p,t),count:(n={},n[d]=v,n[f]=m,n),layoutList:y}}({direction:l,width:o,height:a,rowSpacing:s,columnSpacing:d,itemCount:f,itemWidth:h,itemHeight:v})}),[l,o,a,s,d,f,h,v]),x=u(b),E=t.useContext(p),S=b.size,C=b.layoutList,I=x.current,T=t.useCallback((function(){}),[]);c((function(){E.resizeContent(S)}),[]),c((function(){m(I.size,S)||E.resizeContent(S)}));var z={position:"relative"};S&&(z.width=S.width,z.height=S.height),w.style&&Object.assign(z,w.style),w.style=z;var M=C.map((function(e){return function(e){var i=e.rect,o=e.itemIndex,a=e.visibleRect,l=e.needsRender,c=e.Item,u=!1,s=y(e),d="GridContent_"+o,f={position:"absolute",left:i.x,top:i.y,width:i.width,height:i.height};return t.isValidElement(s)&&s.type===c&&(void 0!==s.props.forceRender&&(u=s.props.forceRender),s.key&&(d=s.key),s=s.props.children),l||u?(t.isValidElement(s)?(s.props.style&&Object.assign(f,s.props.style),s=t.cloneElement(s,{style:f,ref:s.ref})):s=n.createElement("div",{style:f},s),n.createElement(p.Provider,{key:d,value:r({},E,{visibleRect:a,resizeContent:T})},s)):null}(r({},e,{visibleRect:te(e.rect,E.visibleRect),needsRender:ne(e.rect,E.visibleRect),Item:ie}))}));return"function"==typeof g&&g(b),n.createElement("div",w,M)}function oe(){}re.defaultProps={width:null,height:null,direction:"y",rowSpacing:0,columnSpacing:0,itemCount:0,itemWidth:0,itemHeight:0,renderItem:function(){return null}},re.PadContent=!0;function ae(e){var o=e.width,a=e.height,l=e.direction,s=e.spacing,d=e.itemCount,f=e.estimatedItemWidth,h=e.estimatedItemHeight,v=e.renderItem,g=e.children,w=i(e,["width","height","direction","spacing","itemCount","estimatedItemWidth","estimatedItemHeight","renderItem","children"]),b=t.useState([]),x=b[0],E=b[1],S=t.useState({}),C=S[0],I=S[1],T=t.useMemo((function(){return function(e,t,n){var i,r=e.spacing,o=e.itemCount,a=e.estimatedItemWidth,l=e.estimatedItemHeight,c={width:e.width,height:e.height},u="x"===e.direction?["y","x","height","width"]:["x","y","width","height"],s=u[0],d=u[1],f=u[2],h=u[3],p=0,v=0,m=[],y={};"number"==typeof c[f]&&(y[f]=c[f]);for(var g=0;o>g;g++){var w,b=t[g]||null,x=n[b]||null,E=((w={})[s]=0,w[d]=v,w);x?Object.assign(E,x):(E[f]=void 0!==y[f]?y[f]:"function"==typeof a?a(g):a,E[h]="function"==typeof l?l(g):l),m.push({rect:E,itemIndex:g,itemHash:b,itemSize:x}),E[h]>0&&(v+=E[h],o-1>g&&(v+=r)),E[f]>p&&(p=E[f])}return{size:(i={},i[f]=p,i[h]=v,i),fixed:y,layoutList:m}}({width:o,height:a,direction:l,spacing:s,itemCount:d,estimatedItemWidth:f,estimatedItemHeight:h},x,C)}),[o,a,l,s,d,f,h,x,C]),z=u(T),M=t.useContext(p),O=T.size,R=T.fixed,L=T.layoutList,k=z.current,P=[];c((function(){M.resizeContent(O)}),[]),c((function(){m(k.size,O)||M.resizeContent(O)}));var H={position:"relative"};O&&(H.width=O.width,H.height=O.height),w.style&&Object.assign(H,w.style),w.style=H;var A=L.map((function(e){return function(e){var i,o=e.rect,a=e.itemIndex,l=e.itemSize,c=e.visibleRect,u=e.needsRender,s=e.Item,d=!1,f=v(e),h="ListContent_"+a,g={position:"absolute",left:o.x,top:o.y,width:o.width,height:o.height};t.isValidElement(f)&&f.type===s&&(void 0!==f.props.forceRender&&(d=f.props.forceRender),f.key&&(h=f.key),void 0!==f.props.hash&&(i=f.props.hash),f=f.props.children),void 0===i&&(i=h);var w=!u&&!d;if(l||-1===P.indexOf(i)||(w=!0),P[a]=i,w)return null;var b,x={};return l?Object.assign(x,l):("number"==typeof R.width&&(x.width=R.width),"number"==typeof R.height&&(x.height=R.height)),t.isValidElement(f)&&f.type.PadContent?(f.props.style&&Object.assign(g,f.props.style),"number"==typeof f.props.width&&(x.width=f.props.width),"number"==typeof f.props.height&&(x.height=f.props.height),f=t.cloneElement(f,r({},x,{style:g,ref:f.ref}))):f=n.createElement(y,r({},x,{style:g}),f),n.createElement(p.Provider,{key:h,value:r({},M,{visibleRect:c,resizeContent:(b=i,function(e){I((function(t){var n;return m(t[b],e)?t:r({},t,((n={})[b]=e,n))}))})})},f)}(r({},e,{visibleRect:te(e.rect,M.visibleRect),needsRender:ne(e.rect,M.visibleRect),Item:oe}))}));return function(e,t){if(e===t)return!0;if(!e||!t)return!1;if(e.length!==t.length)return!1;for(var n=0;e.length>n;n++)if(e[n]!==t[n])return!1;return!0}(x,P)||E(P),"function"==typeof g&&g(T),n.createElement("div",w,A)}ae.defaultProps={width:null,height:null,direction:"y",spacing:0,itemCount:0,estimatedItemWidth:0,estimatedItemHeight:0,renderItem:function(){return null}},ae.PadContent=!0;function le(e){var o=e.width,a=e.height,l=e.onResize,s=e.children,d=i(e,["width","height","onResize","children"]),f=t.useState(null),h=f[0],p=f[1],y=u(h),g=t.useRef(null),w=y.current,b=t.useCallback((function(){var e=v(g.current);p(e)}),[]);c((function(){m(w,h)||h&&l(h),h||b()})),c((function(){if(("number"!=typeof o||"number"!=typeof a)&&A){var e=g.current;return A.listenTo(e,(function(){return b()})),function(){return A.uninstall(e)}}}),[o,a]),t.useMemo((function(){var e=null;"number"==typeof o&&"number"==typeof a&&(e={width:o,height:a}),p(e)}),[o,a]),d.style=r({width:ce(o),height:ce(a)},d.style);var x=null;return h&&(x="function"==typeof s?s(h):s),n.createElement("div",r({},d,{ref:g}),x)}function ce(e){return null==e||""===e?"100%":e}le.defaultProps={width:null,height:null,onResize:function(){}};var ue={mouseEntered:!1,loopCount:1,loopOffset:0,loopWidth:0,scrollTo:null,options:["x",!0],pad:K};function se(e,t){switch(t.type){case"setMouseEntered":return function(e,t){return r({},e,{mouseEntered:t.value})}(e,t);case"setPad":return function(e,t){var n=r({},e,{pad:t.value});return n=de(n=function(e,t){var n,i=e.loopCount,o=e.loopOffset,a=e.options,l=a[0],c=e.pad,u=c.contentOffset,s=c.size,d=c.contentSize;if(a[1]){var f=function(e,t,n,i,r){var o;if(1===i)return[e,0];var a="y"===r?["height","y","x"]:["width","x","y"],l=a[0],c=a[1],u=a[2],s=n[l],d=t[l],f=s/i,h=.5*(s-f-d),p=0,v=d-s,m=e[c],y=0;if(p-=h,m>=(v+=h)&&p>=m)return[e,0];v>m?y=Math.floor((p-m)/f):m>p&&(y=-Math.floor((m-v)/f));return[(o={},o[c]=m+=f*y,o[u]=e[u],o),y]}(u,s,d,i,l),h=f[0],p=f[1];u!==h&&((n=n||r({},e)).loopOffset=o+p,n.scrollTo={offset:h,animated:!1})}return n||e}(n))}(e,t);case"setOptions":return function(e,t){var n=r({},e,{options:t.value});return n=de(n)}(e,t);case"setScrollTo":return function(e,t){return r({},e,{scrollTo:t.value})}(e,t);case"playNext":return function(e,t){var n=e.pad,i=function(e,t,n,i,r){var o,a="y"===r?["height","y","x"]:["width","x","y"],l=a[0],c=a[1],u=a[2],s=t[l],d=Math.min(s-n[l],0),f=e[c];i&&s>0&&(d=s*Math.ceil(d/s));f=f>d?Math.max(d,f-s):0;return(o={})[c]=f,o[u]=e[u],o}(n.contentOffset,n.size,n.contentSize,n.pagingEnabled,e.options[0]);return r({},e,{scrollTo:{offset:i,animated:!0}})}(e);default:return e}}function de(e,t){var n=e.options,i=e.pad;return r({},e,{},function(e,t,n,i,r){var o="y"===r?"height":"width",a=e[o],l=t[o],c=l/n;if(!i||0===l||0===a)return{loopCount:1,loopOffset:0,loopWidth:c};return{loopCount:2+Math.floor(a/c),loopWidth:c}}(i.size,i.contentSize,e.loopCount,n[1],n[0]))}var fe=r({direction:"x",loop:!0,autoplayEnabled:!0,autoplayInterval:5e3},ee.defaultProps,{pagingEnabled:!0,directionalLockEnabled:!0});function he(e){var r=e.direction,o=e.loop,a=e.autoplayEnabled,l=e.autoplayInterval,c=e.children,u=i(e,["direction","loop","autoplayEnabled","autoplayInterval","children"]),s=u.scrollTo,d=u.onMouseEnter,f=u.onMouseLeave,h=t.useReducer(se,ue),p=h[0],v=h[1],m=p.mouseEntered,y=p.loopCount,g=p.loopOffset,w=p.scrollTo,b=p.pad,x=t.useCallback((function(e){v({type:"setMouseEntered",value:!0}),d&&d(e)}),[d]),E=t.useCallback((function(e){v({type:"setMouseEntered",value:!1}),f&&f(e)}),[f]);return t.useEffect((function(){if(a&&!m&&!b.drag&&!b.deceleration){var e=setTimeout((function(){v({type:"playNext"})}),l);return function(){clearTimeout(e)}}}),[a,l,m,b.drag,b.deceleration]),t.useMemo((function(){v({type:"setOptions",value:[r,o]})}),[o,r]),t.useMemo((function(){v({type:"setScrollTo",value:s})}),[s]),u.scrollTo=w,"x"===r?u.alwaysBounceY=!1:u.alwaysBounceX=!1,a&&(u.onMouseEnter=x,u.onMouseLeave=E),n.createElement(ee,u,(function(e){b!==e&&v({type:"setPad",value:e});var t="function"==typeof c?c(p):c;return n.createElement(ae,{direction:r,itemCount:y,renderItem:function(e){return n.createElement(e.Item,{key:e.itemIndex+g,hash:"loop"},t)}})}))}var pe={activeIndex:0,itemCount:0,scrollTo:null,player:ue};function ve(e,t){switch(t.type){case"setPlayer":return function(e,t){var n=t.value,i=n.options[0],o=n.pad,a=o.contentOffset,l=o.size,c=o.contentSize,u=function(e,t,n){var i=e["y"===n?"height":"width"],r=0;i>0&&(r=Math.ceil(t/i));return r}(l,n.loopWidth,i),s=0;if(u>0){var d=function(e,t,n,i){var r="y"===i?["height","y"]:["width","x"],o=r[0],a=r[1],l=t[o],c=0;if(l>0){c=Math.round(-Math.max(Math.min(l-n[o],0),Math.min(e[a],0))/l)}return c}(a,l,c,i);s=d%u}return r({},e,{player:n,itemCount:u,activeIndex:s})}(e,t);case"setScrollTo":return function(e,t){return r({},e,{scrollTo:t.value})}(e,t);case"scrollToIndex":return function(e,t){var n=e.activeIndex,i=e.player.options[0],o=e.player.pad,a=o.contentOffset,l=o.size,c=t.animated,u=t.index;if(0===e.itemCount)return e;"function"==typeof u&&(u=u(e));if(u===n)return e;var s=function(e,t,n,i){var r,o="y"===i?["height","y","x"]:["width","x","y"],a=o[1],l=o[2];return(r={})[a]=t[a]-e*n[o[0]],r[l]=t[l],r}(u-n,a,l,i);return r({},e,{scrollTo:{offset:s,animated:c}})}(e,t);default:return e}}var me=r({itemCount:0,renderItem:function(){return null},onActiveIndexChange:function(){},scrollToIndex:null},he.defaultProps=fe);function ye(e){var o=e.itemCount,a=e.renderItem,l=e.onActiveIndexChange,s=e.scrollToIndex,d=e.children,f=i(e,["itemCount","renderItem","onActiveIndexChange","scrollToIndex","children"]),h=f.width,p=f.height,v=f.direction,m=f.scrollTo,y=t.useReducer(ve,pe),g=y[0],w=y[1],b=u(g),x=g.activeIndex,E=g.scrollTo,S=g.player,C={activeIndex:x,itemCount:g.itemCount},I=b.current;c((function(){I.activeIndex!==x&&l(C)})),t.useMemo((function(){w({type:"setScrollTo",value:m})}),[m]),t.useMemo((function(){s&&w(r({type:"scrollToIndex"},s))}),[s]),f.scrollTo=E;var T="function"==typeof d?d(C):d;return n.createElement(t.Fragment,null,n.createElement(he,f,(function(e){return S!==e&&w({type:"setPlayer",value:e}),n.createElement(re,{width:h,height:p,itemWidth:h,itemHeight:p,direction:v,itemCount:o,renderItem:a})})),T)}ye.defaultProps=me;var ge={scrollToRect:null,scrolling:!1,pad:K};function we(e,t){switch(t.type){case"setPad":return function(e,t){return r({},e,{pad:t.value})}(e,t);case"setScrollToRect":return function(e,t){return r({},e,{scrollToRect:t.value})}(e,t);case"scrollToIndex":return function(e,t){var n=t.list,i=t.index,o=void 0===i?0:i,a=n.box,l=n.body,c={x:0,y:0,width:0,height:0};a&&(c=a.layoutList[1].rect);if(l){var u=l.layoutList[o];u&&(c={x:c.x+u.rect.x,y:c.y+u.rect.y,width:u.rect.width,height:u.rect.height})}return r({},e,{scrollToRect:{rect:c,align:t.align,animated:t.animated},scrolling:!0})}(e,t);case"endScrolling":return function(e,t){return r({},e,{scrolling:!1})}(e);default:return e}}var be=r({direction:"y",spacing:0,itemCount:0,estimatedItemWidth:0,estimatedItemHeight:0,renderItem:function(){return null},renderHeader:function(){return null},renderFooter:function(){return null},scrollToIndex:null},ee.defaultProps,{directionalLockEnabled:!0});function xe(e){var o=e.direction,a=e.spacing,l=e.itemCount,s=e.estimatedItemWidth,d=e.estimatedItemHeight,f=e.renderItem,h=e.renderHeader,p=e.renderFooter,v=e.scrollToIndex,m=i(e,["direction","spacing","itemCount","estimatedItemWidth","estimatedItemHeight","renderItem","renderHeader","renderFooter","scrollToIndex","children"]),y=m.width,g=m.height,w=m.scrollToRect,b=t.useReducer(we,ge),x=b[0],E=b[1],S=u(x),C=t.useRef({}),I=x.scrollToRect,T=x.scrolling,z=x.pad,M=S.current;return c((function(){M.pad.contentSize!==z.contentSize&&T&&v&&E(r({type:"scrollToIndex"},v,{list:C.current}))})),t.useEffect((function(){M.pad.deceleration!==z.deceleration&&!z.deceleration&&T&&E({type:"endScrolling"})})),t.useMemo((function(){E({type:"setScrollToRect",value:w})}),[w]),t.useMemo((function(){v&&E(r({type:"scrollToIndex"},v,{list:C.current}))}),[v]),m.scrollToRect=I,"x"===o?m.alwaysBounceY=!1:m.alwaysBounceX=!1,n.createElement(ee,m,(function(e){z!==e&&E({type:"setPad",value:e});var t={width:y,height:g,direction:o,itemCount:3,renderItem:function(e){var t=e.itemIndex,i=e.Item;return 0===t?h(e):2===t?p(e):n.createElement(i,{forceRender:!0},n.createElement(ae,{width:y,height:g,direction:o,spacing:a,itemCount:l,estimatedItemWidth:s,estimatedItemHeight:d,renderItem:f},(function(e){C.current.body=e})))}};return n.createElement(ae,t,(function(e){C.current.box=e}))}))}xe.defaultProps=be,e.AutoResizing=le,e.Carousel=ye,e.GeneralContent=D,e.GridContent=re,e.Infinite=xe,e.ItemContent=y,e.ListContent=ae,e.Pad=ee,e.Pannable=h,e.Player=he,Object.defineProperty(e,"__esModule",{value:!0})}));
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],t):t((e=e||self).ReactPannable={},e.React)}(this,(function(e,t){"use strict";var n="default"in t?t.default:t;function i(e,t){if(null==e)return{};var n,i,r={},o=Object.keys(e);for(i=0;o.length>i;i++)0>t.indexOf(n=o[i])&&(r[n]=e[n]);return r}function r(){return(r=Object.assign||function(e){for(var t=1;arguments.length>t;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var o=0,a={target:null,startPoint:null,movePoint:null,moveTime:null,translation:null,velocity:null,interval:null};function l(e,t){switch(t.type){case"disable":case"end":return function(e,t){return e.target?a:e}(e);case"track":return function(e,t){return{target:t.target,startPoint:t.point,movePoint:t.point,moveTime:t.now,translation:null,velocity:null,interval:null}}(0,t);case"move":return function(e,t){var n=e.target,i=e.startPoint,r=e.movePoint,l=e.moveTime,c=e.translation,u=t.point,s=t.now,d=t.shouldStart;if(!n)return e;var f=s-l,h={x:u.x-i.x,y:u.y-i.y},p={x:(u.x-r.x)/f,y:(u.y-r.y)/f};if(c)return{target:n,startPoint:i,movePoint:u,moveTime:s,translation:h,velocity:p,interval:f};if(o>=Math.sqrt(Math.pow(h.x,2)+Math.pow(h.y,2)))return{target:n,startPoint:i,movePoint:u,moveTime:s,translation:null,velocity:null,interval:null};if(!d({target:n,translation:h,velocity:p,interval:f}))return a;return{target:n,startPoint:u,movePoint:u,moveTime:s,translation:{x:0,y:0},velocity:p,interval:f}}(e,t);default:return e}}var c="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?t.useLayoutEffect:t.useEffect;function u(e){var n=t.useRef(e);return t.useEffect((function(){n.current=e})),n}var s={create:function(e){var t=e.transformTranslate,n=e.userSelect,r=i(e,["transformTranslate","userSelect"]);return t&&function(e,t){t.transform="translate3d("+e[0]+"px, "+e[1]+"px, 0)",t.WebkitTransform="translate3d("+e[0]+"px, "+e[1]+"px, 0)",t.msTransform="translate("+e[0]+"px, "+e[1]+"px)"}(t,r),n&&function(e,t){t.userSelect=e,t.WebkitUserSelect=e,t.msUserSelect=e}(n,r),r}},d=function(){},f=function(){};void 0!==typeof window&&(d=window.addEventListener,f=window.removeEventListener);function h(e){var o=e.enabled,h=e.shouldStart,p=e.onStart,v=e.onMove,m=e.onEnd,y=e.onCancel,g=e.children,w=i(e,["enabled","shouldStart","onStart","onMove","onEnd","onCancel","children"]),b=t.useReducer(l,a),x=b[0],E=b[1],S=u(x),C=t.useRef(null),I=t.useRef({touchSupported:!1});I.current.state=x,I.current.shouldStart=h;var T=x.target,z=x.translation,M={target:T,translation:z,velocity:x.velocity,interval:x.interval},O=S.current;c((function(){function e(e,t){E({type:"track",target:e,point:t,now:(new Date).getTime()})}function t(t){if(I.current.touchSupported=!0,t.touches&&1===t.touches.length){var n=t.touches[0];e(n.target,{x:n.pageX,y:n.pageY})}}function n(e){I.current.state.translation&&e.preventDefault()}function i(t){I.current.touchSupported||e(t.target,{x:t.pageX,y:t.pageY})}if(o){var r=C.current;if(!r.addEventListener)return;return r.addEventListener("touchstart",t,!1),r.addEventListener("touchmove",n,!1),r.addEventListener("mousedown",i,!1),function(){r.removeEventListener("touchstart",t,!1),r.removeEventListener("touchmove",n,!1),r.removeEventListener("mousedown",i,!1)}}}),[o]),c((function(){function e(e){E({type:"move",point:e,now:(new Date).getTime(),shouldStart:I.current.shouldStart})}function t(){E({type:"end"})}function n(t){var n=t.touches[0];I.current.state.translation&&t.preventDefault(),e({x:n.pageX,y:n.pageY})}function i(e){I.current.state.translation&&e.preventDefault(),t()}function r(t){t.preventDefault(),e({x:t.pageX,y:t.pageY})}function o(e){e.preventDefault(),t()}if(T)return I.current.touchSupported?(T.addEventListener("touchmove",n,!1),T.addEventListener("touchend",i,!1),T.addEventListener("touchcancel",i,!1),function(){T.removeEventListener("touchmove",n,!1),T.removeEventListener("touchend",i,!1),T.removeEventListener("touchcancel",i,!1)}):(d("mousemove",r,!1),d("mouseup",o,!1),function(){f("mousemove",r,!1),f("mouseup",o,!1)})}),[T]),c((function(){O.translation!==z&&(z?O.translation?v(M):p(M):O.translation&&(o?m(M):y(M)))})),t.useMemo((function(){o||E({type:"disable"})}),[o]);var R={};z&&Object.assign(R,s.create({touchAction:"none",pointerEvents:"none",userSelect:"none"})),w.style&&Object.assign(R,w.style),w.style=R;var k="function"==typeof g?g(x):g;return n.createElement("div",r({},w,{ref:C}),k)}h.defaultProps={enabled:!0,shouldStart:function(){return!0},onStart:function(){},onMove:function(){},onEnd:function(){},onCancel:function(){}};var p=n.createContext({visibleRect:null,resizeContent:function(){}});function v(e){var t=0,n=0;if("undefined"!=typeof window&&(t=e.offsetWidth,n=e.offsetHeight,window.getComputedStyle)){var i=window.getComputedStyle(e)||{};i.paddingLeft&&(t-=parseInt(i.paddingLeft,10)),i.paddingRight&&(t-=parseInt(i.paddingRight,10)),i.borderLeftWidth&&(t-=parseInt(i.borderLeftWidth,10)),i.borderRightWidth&&(t-=parseInt(i.borderRightWidth,10)),i.paddingTop&&(n-=parseInt(i.paddingTop,10)),i.paddingBottom&&(n-=parseInt(i.paddingBottom,10)),i.borderTopWidth&&(n-=parseInt(i.borderTopWidth,10)),i.borderBottomWidth&&(n-=parseInt(i.borderBottomWidth,10))}return{width:t,height:n}}function m(e,t){return e===t||!(!e||!t)&&(e.width===t.width&&e.height===t.height)}function y(e){var o=e.width,a=e.height,l=e.children,s=i(e,["width","height","children"]),d=t.useState(null),f=d[0],h=d[1],y=u(f),g=t.useContext(p),w=t.useRef(null),b=y.current,x=t.useCallback((function(){}),[]),E=t.useCallback((function(){return w.current}),[]),S=t.useCallback((function(){var e=v(w.current);h(e)}),[]);c((function(){m(b,f)||f&&g.resizeContent(f),f||S()})),t.useMemo((function(){var e=null;"number"==typeof o&&"number"==typeof a&&(e={width:o,height:a}),h(e)}),[o,a]);var C={position:"relative"},I={position:"absolute"};"number"==typeof o&&(I.width=o),"number"==typeof a&&(I.height=a),f&&(C.width=f.width,C.height=f.height),s.style&&Object.assign(C,s.style),s.style=C;var T="function"==typeof l?l(f,{getResizeNode:E,calculateSize:S}):l;return n.createElement(p.Provider,{value:r({},g,{resizeContent:x})},n.createElement("div",s,n.createElement("div",{ref:w,style:I},T)))}function g(e,t){return e(t={exports:{}},t.exports),t.exports}y.defaultProps={width:null,height:null},y.PadContent=!0;var w=g((function(e){(e.exports={}).forEach=function(e,t){for(var n=0;e.length>n;n++){var i=t(e[n]);if(i)return i}}})),b=g((function(e){var t=e.exports={};t.isIE=function(e){return(-1!==(t=navigator.userAgent.toLowerCase()).indexOf("msie")||-1!==t.indexOf("trident")||-1!==t.indexOf(" edge/"))&&(!e||e===function(){var e=3,t=document.createElement("div"),n=t.getElementsByTagName("i");do{t.innerHTML="\x3c!--[if gt IE "+ ++e+"]><i></i><![endif]--\x3e"}while(n[0]);return e>4?e:void 0}());var t},t.isLegacyOpera=function(){return!!window.opera}})),x=g((function(e){(e.exports={}).getOption=function(e,t,n){var i=e[t];if(null==i&&void 0!==n)return n;return i}})),E=function(e){var t=(e=e||{}).reporter,n=x.getOption(e,"async",!0),i=x.getOption(e,"auto",!0);i&&!n&&(t&&t.warn("Invalid options combination. auto=true and async=false is invalid. Setting async=true."),n=!0);var r,o=S(),a=!1;function l(){for(a=!0;o.size();){var e=o;o=S(),e.process()}a=!1}function c(){r=setTimeout(l,0)}return{add:function(e,t){!a&&i&&n&&0===o.size()&&c(),o.add(e,t)},force:function(e){a||(void 0===e&&(e=n),r&&(clearTimeout(r),r=null),e?c():l())}}};function S(){var e={},t=0,n=0,i=0;return{add:function(r,o){o||(o=r,r=0),r>n?n=r:i>r&&(i=r),e[r]||(e[r]=[]),e[r].push(o),t++},process:function(){for(var t=i;n>=t;t++)for(var r=e[t],o=0;r.length>o;o++){(0,r[o])()}},size:function(){return t}}}var C="_erd";function I(e){return e[C]}var T={initState:function(e){return e[C]={},I(e)},getState:I,cleanState:function(e){delete e[C]}},z=w.forEach,M=function(e){var t=(e=e||{}).reporter,n=e.batchProcessor,i=e.stateHandler.getState,r=e.idHandler;if(!n)throw Error("Missing required dependency: batchProcessor");if(!t)throw Error("Missing required dependency: reporter.");var o=function(){var e=document.createElement("div");e.style.cssText="position: absolute; width: 1000px; height: 1000px; visibility: hidden; margin: 0; padding: 0;";var t=document.createElement("div");t.style.cssText="position: absolute; width: 500px; height: 500px; overflow: scroll; visibility: none; top: -1500px; left: -1500px; visibility: hidden; margin: 0; padding: 0;",t.appendChild(e),document.body.insertBefore(t,document.body.firstChild);var n=500-t.clientWidth,i=500-t.clientHeight;return document.body.removeChild(t),{width:n,height:i}}(),a="erd_scroll_detection_container";function l(e,n,i){if(e.addEventListener)e.addEventListener(n,i);else{if(!e.attachEvent)return t.error("[scroll] Don't know how to add event listeners.");e.attachEvent("on"+n,i)}}function c(e,n,i){if(e.removeEventListener)e.removeEventListener(n,i);else{if(!e.detachEvent)return t.error("[scroll] Don't know how to remove event listeners.");e.detachEvent("on"+n,i)}}function u(e){return i(e).container.childNodes[0].childNodes[0].childNodes[0]}function s(e){return i(e).container.childNodes[0].childNodes[0].childNodes[1]}return function(e,t){if(!document.getElementById(e)){var n=t+"_animation",i="/* Created by the element-resize-detector library. */\n";i+="."+t+" > div::-webkit-scrollbar { display: none; }\n\n",i+="."+(t+"_animation_active")+" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: "+n+"; animation-name: "+n+"; }\n",i+="@-webkit-keyframes "+n+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\n",function(t,n){n=n||function(e){document.head.appendChild(e)};var i=document.createElement("style");i.innerHTML=t,i.id=e,n(i)}(i+="@keyframes "+n+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }")}}("erd_scroll_detection_scrollbar_style",a),{makeDetectable:function(e,c,d){function f(){if(e.debug){var n=Array.prototype.slice.call(arguments);if(n.unshift(r.get(c),"Scroll: "),t.log.apply)t.log.apply(null,n);else for(var i=0;n.length>i;i++)t.log(n[i])}}function h(e){var t=i(e).container.childNodes[0],n=window.getComputedStyle(t);return!n.width||-1===n.width.indexOf("px")}function p(){var e=window.getComputedStyle(c),t={};return t.position=e.position,t.width=c.offsetWidth,t.height=c.offsetHeight,t.top=e.top,t.right=e.right,t.bottom=e.bottom,t.left=e.left,t.widthCSS=e.width,t.heightCSS=e.height,t}function v(){if(f("storeStyle invoked."),i(c)){var e=p();i(c).style=e}else f("Aborting because element has been uninstalled")}function m(e,t,n){i(e).lastWidth=t,i(e).lastHeight=n}function y(){return 2*o.width+1}function g(){return 2*o.height+1}function w(e){return e+10+y()}function b(e){return e+10+g()}function x(e,t,n){var i=u(e),r=s(e),o=w(t),a=b(n),l=function(e){return 2*e+y()}(t),c=function(e){return 2*e+g()}(n);i.scrollLeft=o,i.scrollTop=a,r.scrollLeft=l,r.scrollTop=c}function E(){var e=i(c).container;if(!e){(e=document.createElement("div")).className=a,e.style.cssText="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0; padding: 0;",i(c).container=e,function(e){e.className+=" "+a+"_animation_active"}(e),c.appendChild(e);var t=function(){i(c).onRendered&&i(c).onRendered()};l(e,"animationstart",t),i(c).onAnimationStart=t}return e}function S(){if(f("Injecting elements"),i(c)){!function(){var e=i(c).style;if("static"===e.position){c.style.position="relative";var n=function(e,t,n,i){var r=n[i];"auto"!==r&&"0"!==function(e){return e.replace(/[^-\d\.]/g,"")}(r)&&(e.warn("An element that is positioned static has style."+i+"="+r+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+i+" will be set to 0. Element: ",t),t.style[i]=0)};n(t,c,e,"top"),n(t,c,e,"right"),n(t,c,e,"bottom"),n(t,c,e,"left")}}();var e=i(c).container;e||(e=E());var n,r,u,s,d=o.width,h=o.height,p="position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; "+("left: "+(n=(n=-(1+d))?n+"px":"0")+"; top: "+(r=(r=-(1+h))?r+"px":"0")+"; right: "+(s=(s=-d)?s+"px":"0")+"; bottom: "+(u=(u=-h)?u+"px":"0")+";"),v=document.createElement("div"),m=document.createElement("div"),y=document.createElement("div"),g=document.createElement("div"),w=document.createElement("div"),b=document.createElement("div");v.dir="ltr",v.style.cssText="position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;",v.className=a,m.className=a,m.style.cssText=p,y.style.cssText="position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;",g.style.cssText="position: absolute; left: 0; top: 0;",w.style.cssText="position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;",b.style.cssText="position: absolute; width: 200%; height: 200%;",y.appendChild(g),w.appendChild(b),m.appendChild(y),m.appendChild(w),v.appendChild(m),e.appendChild(v),l(y,"scroll",x),l(w,"scroll",S),i(c).onExpandScroll=x,i(c).onShrinkScroll=S}else f("Aborting because element has been uninstalled");function x(){i(c).onExpand&&i(c).onExpand()}function S(){i(c).onShrink&&i(c).onShrink()}}function C(){function o(e,t,n){var i=function(e){return u(e).childNodes[0]}(e),r=w(t),o=b(n);i.style.width=r+"px",i.style.height=o+"px"}function a(a){var u=c.offsetWidth,s=c.offsetHeight;f("Storing current size",u,s),m(c,u,s),n.add(0,(function(){if(i(c))if(l()){if(e.debug)c.offsetWidth===u&&c.offsetHeight===s||t.warn(r.get(c),"Scroll: Size changed before updating detector elements.");o(c,u,s)}else f("Aborting because element container has not been initialized");else f("Aborting because element has been uninstalled")})),n.add(1,(function(){i(c)?l()?x(c,u,s):f("Aborting because element container has not been initialized"):f("Aborting because element has been uninstalled")})),a&&n.add(2,(function(){i(c)?l()?a():f("Aborting because element container has not been initialized"):f("Aborting because element has been uninstalled")}))}function l(){return!!i(c).container}function d(){f("notifyListenersIfNeeded invoked");var e=i(c);return void 0===i(c).lastNotifiedWidth&&e.lastWidth===e.startSize.width&&e.lastHeight===e.startSize.height?f("Not notifying: Size is the same as the start size, and there has been no notification yet."):e.lastWidth===e.lastNotifiedWidth&&e.lastHeight===e.lastNotifiedHeight?f("Not notifying: Size already notified"):(f("Current size not notified, notifying..."),e.lastNotifiedWidth=e.lastWidth,e.lastNotifiedHeight=e.lastHeight,void z(i(c).listeners,(function(e){e(c)})))}function p(){if(f("Scroll detected."),h(c))f("Scroll event fired while unrendered. Ignoring...");else{var e=c.offsetWidth,t=c.offsetHeight;e!==i(c).lastWidth||t!==i(c).lastHeight?(f("Element size changed."),a(d)):f("Element size has not changed ("+e+"x"+t+").")}}if(f("registerListenersAndPositionElements invoked."),i(c)){i(c).onRendered=function(){if(f("startanimation triggered."),h(c))f("Ignoring since element is still unrendered...");else{f("Element rendered.");var e=u(c),t=s(c);0!==e.scrollLeft&&0!==e.scrollTop&&0!==t.scrollLeft&&0!==t.scrollTop||(f("Scrollbars out of sync. Updating detector elements..."),a(d))}},i(c).onExpand=p,i(c).onShrink=p;var v=i(c).style;o(c,v.width,v.height)}else f("Aborting because element has been uninstalled")}function I(){if(f("finalizeDomMutation invoked."),i(c)){var e=i(c).style;m(c,e.width,e.height),x(c,e.width,e.height)}else f("Aborting because element has been uninstalled")}function T(){d(c)}function M(){var e;f("Installing..."),i(c).listeners=[],e=p(),i(c).startSize={width:e.width,height:e.height},f("Element start size",i(c).startSize),n.add(0,v),n.add(1,S),n.add(2,C),n.add(3,I),n.add(4,T)}d||(d=c,c=e,e=null),e=e||{},f("Making detectable..."),!function(e){return!function(e){return e===e.ownerDocument.body||e.ownerDocument.body.contains(e)}(e)||null===window.getComputedStyle(e)}(c)?M():(f("Element is detached"),E(),f("Waiting until element is attached..."),i(c).onRendered=function(){f("Element is now attached"),M()})},addListener:function(e,t){if(!i(e).listeners.push)throw Error("Cannot add listener to an element that is not detectable.");i(e).listeners.push(t)},uninstall:function(e){var t=i(e);t&&(t.onExpandScroll&&c(u(e),"scroll",t.onExpandScroll),t.onShrinkScroll&&c(s(e),"scroll",t.onShrinkScroll),t.onAnimationStart&&c(t.container,"animationstart",t.onAnimationStart),t.container&&e.removeChild(t.container))}}},O=w.forEach;function R(e){return Array.isArray(e)||void 0!==e.length}function k(e){if(Array.isArray(e))return e;var t=[];return O(e,(function(e){t.push(e)})),t}function L(e){return e&&1===e.nodeType}function P(e,t,n){var i=e[t];return null==i&&void 0!==n?n:i}var H=null;"undefined"!=typeof window&&(H=function(e){var t,n;if((e=e||{}).idHandler)t={get:function(t){return e.idHandler.get(t,!0)},set:e.idHandler.set};else{var i=function(e){var t=e.idGenerator,n=e.stateHandler.getState;return{get:function(e){var t=n(e);return t&&void 0!==t.id?t.id:null},set:function(e){var i=n(e);if(!i)throw Error("setId required the element to have a resize detection state.");var r=t.generate();return i.id=r,r}}}({idGenerator:(n=1,{generate:function(){return n++}}),stateHandler:T});t=i}var r=e.reporter;r||(r=function(e){function t(){}var n={log:t,warn:t,error:t};if(!e&&window.console){var i=function(e,t){e[t]=function(){var e=console[t];if(e.apply)e.apply(console,arguments);else for(var n=0;arguments.length>n;n++)e(arguments[n])}};i(n,"log"),i(n,"warn"),i(n,"error")}return n}(!1===r));var o=P(e,"batchProcessor",E({reporter:r})),a={};a.callOnAdd=!!P(e,"callOnAdd",!0),a.debug=!!P(e,"debug",!1);var l,c=function(e){var t={};function n(n){var i=e.get(n);return void 0===i?[]:t[i]||[]}return{get:n,add:function(n,i){var r=e.get(n);t[r]||(t[r]=[]),t[r].push(i)},removeListener:function(e,t){for(var i=n(e),r=0,o=i.length;o>r;++r)if(i[r]===t){i.splice(r,1);break}},removeAllListeners:function(e){var t=n(e);t&&(t.length=0)}}}(t),u=function(e){var t=e.stateHandler.getState;return{isDetectable:function(e){var n=t(e);return n&&!!n.isDetectable},markAsDetectable:function(e){t(e).isDetectable=!0},isBusy:function(e){return!!t(e).busy},markBusy:function(e,n){t(e).busy=!!n}}}({stateHandler:T}),s=P(e,"strategy","object"),d={reporter:r,batchProcessor:o,stateHandler:T,idHandler:t};if("scroll"===s&&(b.isLegacyOpera()?(r.warn("Scroll strategy is not supported on legacy Opera. Changing to object strategy."),s="object"):b.isIE(9)&&(r.warn("Scroll strategy is not supported on IE9. Changing to object strategy."),s="object")),"scroll"===s)l=M(d);else{if("object"!==s)throw Error("Invalid strategy name: "+s);l=function(e){var t=(e=e||{}).reporter,n=e.batchProcessor,i=e.stateHandler.getState;if(!t)throw Error("Missing required dependency: reporter.");function r(e){return i(e).object}return{makeDetectable:function(e,r,o){o||(o=r,r=e,e=null),e=e||{},b.isIE(8)?o(r):function(e,r){var o="display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; padding: 0; margin: 0; opacity: 0; z-index: -1000; pointer-events: none;",a=!1,l=window.getComputedStyle(e),c=e.offsetWidth,u=e.offsetHeight;function s(){function n(){if("static"===l.position){e.style.position="relative";var n=function(e,t,n,i){var r=n[i];"auto"!==r&&"0"!==function(e){return e.replace(/[^-\d\.]/g,"")}(r)&&(e.warn("An element that is positioned static has style."+i+"="+r+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+i+" will be set to 0. Element: ",t),t.style[i]=0)};n(t,e,l,"top"),n(t,e,l,"right"),n(t,e,l,"bottom"),n(t,e,l,"left")}}""!==l.position&&(n(),a=!0);var c=document.createElement("object");c.style.cssText=o,c.tabIndex=-1,c.type="text/html",c.setAttribute("aria-hidden","true"),c.onload=function(){a||n(),function e(t,n){t.contentDocument?n(t.contentDocument):setTimeout((function(){e(t,n)}),100)}(this,(function(t){r(e)}))},b.isIE()||(c.data="about:blank"),e.appendChild(c),i(e).object=c,b.isIE()&&(c.data="about:blank")}i(e).startSize={width:c,height:u},n?n.add(s):s()}(r,o)},addListener:function(e,t){if(!r(e))throw Error("Element is not detectable by this strategy.");function n(){t(e)}b.isIE(8)?(i(e).object={proxy:n},e.attachEvent("onresize",n)):r(e).contentDocument.defaultView.addEventListener("resize",n)},uninstall:function(e){b.isIE(8)?e.detachEvent("onresize",i(e).object.proxy):e.removeChild(r(e)),delete i(e).object}}}(d)}var f={};return{listenTo:function(e,n,i){function o(e){var t=c.get(e);O(t,(function(t){t(e)}))}function s(e,t,n){c.add(t,n),e&&n(t)}if(i||(i=n,n=e,e={}),!n)throw Error("At least one element required.");if(!i)throw Error("Listener required.");if(L(n))n=[n];else{if(!R(n))return r.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");n=k(n)}var d=0,h=P(e,"callOnAdd",a.callOnAdd),p=P(e,"onReady",(function(){})),v=P(e,"debug",a.debug);O(n,(function(e){T.getState(e)||(T.initState(e),t.set(e));var a=t.get(e);if(v&&r.log("Attaching listener to element",a,e),!u.isDetectable(e))return v&&r.log(a,"Not detectable."),u.isBusy(e)?(v&&r.log(a,"System busy making it detectable"),s(h,e,i),f[a]=f[a]||[],void f[a].push((function(){++d===n.length&&p()}))):(v&&r.log(a,"Making detectable..."),u.markBusy(e,!0),l.makeDetectable({debug:v},e,(function(e){if(v&&r.log(a,"onElementDetectable"),T.getState(e)){u.markAsDetectable(e),u.markBusy(e,!1),l.addListener(e,o),s(h,e,i);var t=T.getState(e);if(t&&t.startSize)t.startSize.width===e.offsetWidth&&t.startSize.height===e.offsetHeight||o(e);f[a]&&O(f[a],(function(e){e()}))}else v&&r.log(a,"Element uninstalled before being detectable.");delete f[a],++d===n.length&&p()})));v&&r.log(a,"Already detecable, adding listener."),s(h,e,i),d++})),d===n.length&&p()},removeListener:c.removeListener,removeAllListeners:c.removeAllListeners,uninstall:function(e){if(!e)return r.error("At least one element is required.");if(L(e))e=[e];else{if(!R(e))return r.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");e=k(e)}O(e,(function(e){c.removeAllListeners(e),l.uninstall(e),T.cleanState(e)}))}}}({strategy:"scroll"}));var A=H,W=r({},y.defaultProps);function D(e){var i=e.width,r=e.height,o=e.children,a=t.useRef(null);return c((function(){if(("number"!=typeof i||"number"!=typeof r)&&A){var e=a.current.getResizeNode();return A.listenTo(e,(function(){return a.current.calculateSize()})),function(){return A.uninstall(e)}}}),[i,r]),n.createElement(y,e,(function(e,t){return a.current=t,"function"==typeof o?o(e,t):o}))}D.defaultProps=W,D.PadContent=!0;var j=function(){},N=function(){};if("undefined"!=typeof window){j=window.requestAnimationFrame,N=window.cancelAnimationFrame;for(var B=["ms","moz","webkit","o"],V=0,q=0;4>q&&!j;++q)j=window[B[q]+"RequestAnimationFrame"],N=window[B[q]+"CancelAnimationFrame"]||window[B[q]+"CancelRequestAnimationFrame"];j||(j=function(e){var t=(new Date).getTime(),n=Math.max(0,16-(t-V)),i=window.setTimeout((function(){e(t+n)}),n);return V=t+n,i},N=function(e){clearTimeout(e)})}function _(e,t){var n=t.x,i=t.y,r=Math.sqrt(n*n+i*i);return 0===r?{x:0,y:0}:{x:e*(n/r),y:e*(i/r)}}function F(e,t,n,i){if(i){var r="y"===i?["y","height"]:["x","width"],o=r[0];if(!e[o])return 0;var a=0>e[o]?-1:1;return a*Math.min(a*e[o],Math.sqrt(2*(.5*t[r[1]])*a*n[o]))}"number"==typeof n&&(n=_(n,e));var l={x:F(e,t,n,"x"),y:F(e,t,n,"y")};return l.x===e.x&&l.y===e.y?e:l}function X(e,t,n,i,r,o){if(o){var a="y"===o?["y","height"]:["x","width"],l=a[0],c=a[1],u=t[c],s=Math.min(u-n[c],0),d=e[l];return i&&u>0&&(s=u*Math.ceil(s/u)),d>0?d=0:s>d?d=s:!r&&i&&u>0&&(d=u*Math.round(d/u)),d}var f={x:X(e,t,n,i,r,"x"),y:X(e,t,n,i,r,"y")};return f.x===e.x&&f.y===e.y?e:f}function Y(e,t,n,i,r,o){if(o){var a="y"===o?["y","height"]:["x","width"],l=a[0],c=a[1],u=e[l];if(i&&n[c]>0){var s=u/n[c];u=n[c]*(s=t[l]>.5?Math.ceil(s):-.5>t[l]?Math.floor(s):Math.round(s))}else r[l]&&(u+=.5*t[l]*(t[l]/r[l]));return u}return"number"==typeof r&&(r=_(r,t)),{x:Y(e,t,n,i,r,"x"),y:Y(e,t,n,i,r,"y")}}function G(e,t,n,i){var r=(new Date).getTime(),o=0;if(!t)return{endOffset:e,rate:t,duration:o,startTime:r};var a,l={x:e.x-n.x,y:e.y-n.y},c=Math.sqrt(Math.pow(l.x,2)+Math.pow(l.y,2));if(c){var u=Math.sqrt(.5*Math.pow(a=(i.x*l.x+i.y*l.y)/c,2)+t*c),s=(u-a)/t;0>s&&(u=a,s=0),o=s+u/t}else a=Math.sqrt(Math.pow(i.x,2)+Math.pow(i.y,2)),o=(Math.sqrt(2)+1)*a/t;return{endOffset:e,rate:t,duration:o,startTime:r,points:{x:[n.x,n.x+i.x*(o/3),e.x,e.x],y:[n.y,n.y+i.y*(o/3),e.y,e.y]}}}var U=.025,J=.0025,K={size:{width:0,height:0},contentSize:{width:0,height:0},contentOffset:{x:0,y:0},contentVelocity:{x:0,y:0},drag:null,deceleration:null,options:[!1,!1,!0,!0],pannable:a};function Q(e,t){return function(e,t){var n=e.size,i=e.contentSize,o=e.contentOffset,a=e.contentVelocity,l=e.drag,c=e.deceleration,u=e.options[0],s=U;if(c){var d=c.endOffset;if(d!==X(d,n,i,u,!0)&&o!==X(o,n,i,u,!0)){var f=a;return c.rate!==s&&(f=F(f,n,s),d=Y(o,f,n,u,s)),d=X(d,n,i,u,!0),r({},e,{contentVelocity:f,drag:null,deceleration:G(d,s,o,f)})}}else if(!l){var h=X(o,n,i,u);if(o!==h){var p=Y(h,{x:0,y:0},n,u,s);return r({},e,{drag:null,deceleration:G(p,s,o,a)})}}return e}(function(e,t){switch(t.type){case"setPannable":return function(e,t){return r({},e,{pannable:t.value})}(e,t);case"setOptions":return function(e,t){return r({},e,{options:t.value})}(e,t);case"setSize":return function(e,t){return r({},e,{size:t.value})}(e,t);case"setContentSize":return function(e,t){return r({},e,{contentSize:t.value})}(e,t);case"dragStart":return function(e,t){var n=e.contentOffset,i=e.pannable.velocity,o={x:1,y:1};e.options[1]&&(Math.abs(i.x)>Math.abs(i.y)?o.y=0:o.x=0);return r({},e,{contentVelocity:{x:o.x*i.x,y:o.y*i.y},drag:{direction:o,startOffset:n},deceleration:null})}(e);case"dragMove":return function(e,t){var n=e.contentOffset,i=e.drag,o=e.options,a=e.pannable,l=a.translation,c=a.interval,u=function e(t,n,i,r,o){if(o){var a="y"===o?["y","height","width"]:["x","width","height"],l=a[0],c=a[1],u=a[2],s=t[l],d=Math.min(i[c]-r[c],0),f=.5*Math.min(i[c],i[u]);return s>0?n[l]?f*(1-f/(f+s)):0:d>s?n[l]?d-f*(1-f/(f-s+d)):d:s}var h={x:e(t,n,i,r,"x"),y:e(t,n,i,r,"y")};return h.x===t.x&&h.y===t.y?t:h}({x:i.startOffset.x+i.direction.x*l.x,y:i.startOffset.y+i.direction.y*l.y},{x:o[2],y:o[3]},e.size,e.contentSize);return r({},e,{contentOffset:u,contentVelocity:{x:(u.x-n.x)/c,y:(u.y-n.y)/c},drag:i,deceleration:null})}(e);case"dragEnd":return function(e,t){var n=e.size,i=e.contentOffset,o=e.options[0],a=J,l=e.contentVelocity;o&&(l=F(l,n,a=U));var c=Y(i,l,n,o,a);return r({},e,{contentVelocity:l,drag:null,deceleration:G(c,a,i,l)})}(e);case"dragCancel":return function(e,t){var n=e.contentOffset,i=e.contentVelocity,o=U,a=Y(e.drag.startOffset,{x:0,y:0},e.size,e.options[0],o);return r({},e,{drag:null,deceleration:G(a,o,n,i)})}(e);case"decelerate":return function(e,t){var n=e.deceleration,i=t.now;if(!n)return e;var o=function e(t,n,i){var o=t.duration,a=t.endOffset,l=1;if(o>0&&(l=(n-t.startTime)/o),i){var c,u=("y"===i?["y"]:["x"])[0],s=t.points[u],d=s[0],f=s[1],h=s[2],p=s[3],v=d-3*(d-f)*l+3*(d-2*f+h)*Math.pow(l,2)-(d-3*f+3*h-p)*Math.pow(l,3),m=(-3*(d-f)+6*(d-2*f+h)*l-3*(d-3*f+3*h-p)*Math.pow(l,2))/o;return(c={})[u+"Offset"]=v,c[u+"Velocity"]=m,c}if(0>l||l>=1)return{offset:a,velocity:{x:0,y:0},didEnd:!0};var y=r({},e(t,n,"x"),{},e(t,n,"y"));return{offset:{x:y.xOffset,y:y.yOffset},velocity:{x:y.xVelocity,y:y.yVelocity},didEnd:!1}}(n,i);return r({},e,{contentOffset:o.offset,contentVelocity:o.velocity,drag:null,deceleration:o.didEnd?null:n})}(e,t);case"scrollTo":return Z(e,t);case"scrollToRect":return function(e,t){var n=t.animated,i=function e(t,n,i,r,o){if(o){var a="y"===o?["y","height"]:["x","width"],l=a[0],c=a[1],u=-t[l],s=r[c]-t[c];if("auto"===n[l]){var d=0>s?-1:1;u+=d*Math.max(0,Math.min(d*(i[l]-u),d*s))}else"start"===n[l]?n[l]=0:"center"===n[l]?n[l]=.5:"end"===n[l]&&(n[l]=1),("number"!=typeof n[l]||isNaN(n[l]))&&(n[l]=.5),u+=n[l]*s;return u}"object"!=typeof n&&(n={x:n,y:n});return{x:e(t,n,i,r,"x"),y:e(t,n,i,r,"y")}}(t.rect,t.align,e.contentOffset,e.size);return Z(e,{type:"scrollTo",offset:i,animated:n})}(e,t);default:return e}}(e,t))}function Z(e,t){var n=e.contentOffset,i=e.contentVelocity,o=t.point,a=e.drag,l=e.deceleration,c=t.offset,u=void 0===c?{x:0,y:0}:c,s=t.animated;return o&&(u={x:-o.x,y:-o.y}),u.x===n.x&&u.y===n.y?e:(a&&(s=!1),s?r({},e,{deceleration:G(Y(u,{x:0,y:0},e.size,e.options[0],U),U,n,i)}):(a?a=r({},a,{startOffset:{x:a.startOffset.x+u.x-n.x,y:a.startOffset.y+u.y-n.y}}):l=l?G({x:l.endOffset.x+u.x-n.x,y:l.endOffset.y+u.y-n.y},l.rate,u,i):G(u),r({},e,{contentOffset:u,drag:a,deceleration:l})))}var $=r({width:0,height:0,pagingEnabled:!1,directionalLockEnabled:!1,alwaysBounceX:!0,alwaysBounceY:!0,onScroll:function(){},onDragStart:function(){},onDragEnd:function(){},onDecelerationStart:function(){},onDecelerationEnd:function(){},onContentResize:function(){},renderBackground:function(){return null},renderOverlay:function(){return null},scrollTo:null,scrollToRect:null},h.defaultProps);function ee(e){var o=e.width,a=e.height,l=e.pagingEnabled,d=e.directionalLockEnabled,f=e.alwaysBounceX,v=e.alwaysBounceY,y=e.onScroll,g=e.onDragStart,w=e.onDragEnd,b=e.onDecelerationStart,x=e.onDecelerationEnd,E=e.onContentResize,S=e.renderBackground,C=e.renderOverlay,I=e.scrollTo,T=e.scrollToRect,z=e.children,M=i(e,["width","height","pagingEnabled","directionalLockEnabled","alwaysBounceX","alwaysBounceY","onScroll","onDragStart","onDragEnd","onDecelerationStart","onDecelerationEnd","onContentResize","renderBackground","renderOverlay","scrollTo","scrollToRect","children"]),O=M.enabled,R=M.shouldStart,k=t.useReducer(Q,K),L=k[0],P=k[1],H=u(L),A=L.size,W=L.contentSize,B=L.contentOffset,V=L.drag,q=L.deceleration,_=L.pannable,F={size:A,contentSize:W,contentOffset:B,contentVelocity:L.contentVelocity,dragging:!!V,decelerating:!!q},X=H.current,Y=t.useCallback((function(e){m(W,e)||P({type:"setContentSize",value:e})}),[W]),G=t.useCallback((function(e){return!(d&&!function(e,t,n){var i=Math.abs(e.x)>Math.abs(e.y)?"width":"height";return n[i]>t[i]}(e.velocity,A,W))&&R(e)}),[R,d,A,W]);c((function(){X.pannable.translation!==_.translation&&(_.translation?P(X.pannable.translation?{type:"dragMove"}:{type:"dragStart"}):X.pannable.translation&&P(O?{type:"dragEnd"}:{type:"dragCancel"})),X.contentSize!==W&&E(W),X.contentOffset!==B&&y(F),X.drag!==V&&(X.drag?V||w(F):g(F)),X.deceleration!==q&&(X.deceleration?q||x(F):b(F))})),c((function(){if(L.deceleration){var e=j((function(){P({type:"decelerate",now:(new Date).getTime()})}));return function(){N(e)}}}),[L]),t.useMemo((function(){P({type:"setSize",value:{width:o,height:a}})}),[o,a]),t.useMemo((function(){P({type:"setOptions",value:[l,d,f,v]})}),[l,d,f,v]),t.useMemo((function(){I&&P(r({type:"scrollTo"},I))}),[I]),t.useMemo((function(){T&&P(r({type:"scrollToRect"},T))}),[T]),M.shouldStart=G;var U={overflow:"hidden",position:"relative",width:A.width,height:A.height};return M.style&&Object.assign(U,M.style),M.style=U,n.createElement(h,M,(function(e){var i;return _!==e&&P({type:"setPannable",value:e}),n.createElement(p.Provider,{value:{visibleRect:{x:-B.x,y:-B.y,width:A.width,height:A.height},resizeContent:Y}},null==(i=S(F))?null:n.createElement("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0}},i),function(){var e=s.create({position:"absolute",width:W.width,height:W.height,transformTranslate:[B.x,B.y],willChange:"transform"}),i="function"==typeof z?z(L):z;return t.isValidElement(i)&&i.type.PadContent?(i.props.style&&Object.assign(e,i.props.style),i=t.cloneElement(i,{style:e,ref:i.ref})):i=n.createElement(D,{style:e},i),i}(),C(F))}))}function te(e,t,n){if(!t)return t;if(n){var i,o="y"===n?["y","height"]:["x","width"],a=o[0],l=o[1];return(i={})[a]=t[a]-e[a],i[l]=t[l],i}return r({},te(e,t,"x"),{},te(e,t,"y"))}function ne(e,t,n){if(!t)return!0;if(n){var i="y"===n?["y","height"]:["x","width"],r=i[0],o=i[1];return e[r]+e[o]>=t[r]-.25*t[o]&&t[r]+1.25*t[o]>=e[r]}return ne(e,t,"x")&&ne(e,t,"y")}function ie(){}ee.defaultProps=$;function re(e){var o=e.width,a=e.height,l=e.direction,s=e.rowSpacing,d=e.columnSpacing,f=e.itemCount,h=e.itemWidth,v=e.itemHeight,y=e.renderItem,g=e.children,w=i(e,["width","height","direction","rowSpacing","columnSpacing","itemCount","itemWidth","itemHeight","renderItem","children"]),b=t.useMemo((function(){return function(e){var t,n,i=e.itemCount,r={width:e.itemWidth,height:e.itemHeight},o={row:e.rowSpacing,column:e.columnSpacing},a="x"===e.direction?["y","x","height","width","column","row"]:["x","y","width","height","row","column"],l=a[0],c=a[1],u=a[2],s=a[3],d=a[4],f=a[5],h={width:e.width,height:e.height}[u],p=0,v=0,m=0,y=[];"number"!=typeof h?(m=i,0===r[u]?h=0:(h=i*r[u],i>1&&(h+=(i-1)*o[f]))):0===r[u]?m=i:(m=1,h>r[u]&&(m+=Math.floor((h-r[u])/(r[u]+o[f]))));m>0&&(v=Math.ceil(i/m));for(var g=0;v>g;g++){g>0&&(p+=o[d]);for(var w=0;m>w;w++){var b,x,E=w+g*m,S=0;if(m>1&&(S+=Math.round(w*((h-r[u])/(m-1)))),E>=i)break;y.push(((x={rect:(b={},b[l]=S,b[c]=p,b[u]=r[u],b[s]=r[s],b)})[d+"Index"]=g,x[f+"Index"]=w,x.itemIndex=E,x))}p+=r[s]}return{size:(t={},t[u]=h,t[s]=p,t),count:(n={},n[d]=v,n[f]=m,n),layoutList:y}}({direction:l,width:o,height:a,rowSpacing:s,columnSpacing:d,itemCount:f,itemWidth:h,itemHeight:v})}),[l,o,a,s,d,f,h,v]),x=u(b),E=t.useContext(p),S=b.size,C=b.layoutList,I=x.current,T=t.useCallback((function(){}),[]);c((function(){E.resizeContent(S)}),[]),c((function(){m(I.size,S)||E.resizeContent(S)}));var z={position:"relative"};S&&(z.width=S.width,z.height=S.height),w.style&&Object.assign(z,w.style),w.style=z;var M=C.map((function(e){return function(e){var i=e.rect,o=e.itemIndex,a=e.visibleRect,l=e.needsRender,c=e.Item,u=!1,s=y(e),d="GridContent_"+o,f={position:"absolute",left:i.x,top:i.y,width:i.width,height:i.height};return t.isValidElement(s)&&s.type===c&&(void 0!==s.props.forceRender&&(u=s.props.forceRender),s.key&&(d=s.key),s=s.props.children),l||u?(t.isValidElement(s)?(s.props.style&&Object.assign(f,s.props.style),s=t.cloneElement(s,{style:f,ref:s.ref})):s=n.createElement("div",{style:f},s),n.createElement(p.Provider,{key:d,value:r({},E,{visibleRect:a,resizeContent:T})},s)):null}(r({},e,{visibleRect:te(e.rect,E.visibleRect),needsRender:ne(e.rect,E.visibleRect),Item:ie}))}));return"function"==typeof g&&g(b),n.createElement("div",w,M)}function oe(){}re.defaultProps={width:null,height:null,direction:"y",rowSpacing:0,columnSpacing:0,itemCount:0,itemWidth:0,itemHeight:0,renderItem:function(){return null}},re.PadContent=!0;function ae(e){var o=e.width,a=e.height,l=e.direction,s=e.spacing,d=e.itemCount,f=e.estimatedItemWidth,h=e.estimatedItemHeight,v=e.renderItem,g=e.children,w=i(e,["width","height","direction","spacing","itemCount","estimatedItemWidth","estimatedItemHeight","renderItem","children"]),b=t.useState([]),x=b[0],E=b[1],S=t.useState({}),C=S[0],I=S[1],T=t.useMemo((function(){return function(e,t,n){var i,r=e.spacing,o=e.itemCount,a=e.estimatedItemWidth,l=e.estimatedItemHeight,c={width:e.width,height:e.height},u="x"===e.direction?["y","x","height","width"]:["x","y","width","height"],s=u[0],d=u[1],f=u[2],h=u[3],p=0,v=0,m=[],y={};"number"==typeof c[f]&&(y[f]=c[f]);for(var g=0;o>g;g++){var w,b=t[g]||null,x=n[b]||null,E=((w={})[s]=0,w[d]=v,w);x?Object.assign(E,x):(E[f]=void 0!==y[f]?y[f]:"function"==typeof a?a(g):a,E[h]="function"==typeof l?l(g):l),m.push({rect:E,itemIndex:g,itemHash:b,itemSize:x}),E[h]>0&&(v+=E[h],o-1>g&&(v+=r)),E[f]>p&&(p=E[f])}return{size:(i={},i[f]=p,i[h]=v,i),fixed:y,layoutList:m}}({width:o,height:a,direction:l,spacing:s,itemCount:d,estimatedItemWidth:f,estimatedItemHeight:h},x,C)}),[o,a,l,s,d,f,h,x,C]),z=u(T),M=t.useContext(p),O=T.size,R=T.fixed,k=T.layoutList,L=z.current,P=[];c((function(){M.resizeContent(O)}),[]),c((function(){m(L.size,O)||M.resizeContent(O)}));var H={position:"relative"};O&&(H.width=O.width,H.height=O.height),w.style&&Object.assign(H,w.style),w.style=H;var A=k.map((function(e){return function(e){var i,o=e.rect,a=e.itemIndex,l=e.itemSize,c=e.visibleRect,u=e.needsRender,s=e.Item,d=!1,f=v(e),h="ListContent_"+a,g={position:"absolute",left:o.x,top:o.y,width:o.width,height:o.height};t.isValidElement(f)&&f.type===s&&(void 0!==f.props.forceRender&&(d=f.props.forceRender),f.key&&(h=f.key),void 0!==f.props.hash&&(i=f.props.hash),f=f.props.children),void 0===i&&(i=h);var w=!u&&!d;if(l||-1===P.indexOf(i)||(w=!0),P[a]=i,w)return null;var b,x={};return l?Object.assign(x,l):("number"==typeof R.width&&(x.width=R.width),"number"==typeof R.height&&(x.height=R.height)),t.isValidElement(f)&&f.type.PadContent?(f.props.style&&Object.assign(g,f.props.style),"number"==typeof f.props.width&&(x.width=f.props.width),"number"==typeof f.props.height&&(x.height=f.props.height),f=t.cloneElement(f,r({},x,{style:g,ref:f.ref}))):f=n.createElement(y,r({},x,{style:g}),f),n.createElement(p.Provider,{key:h,value:r({},M,{visibleRect:c,resizeContent:(b=i,function(e){I((function(t){var n;return m(t[b],e)?t:r({},t,((n={})[b]=e,n))}))})})},f)}(r({},e,{visibleRect:te(e.rect,M.visibleRect),needsRender:ne(e.rect,M.visibleRect),Item:oe}))}));return function(e,t){if(e===t)return!0;if(!e||!t)return!1;if(e.length!==t.length)return!1;for(var n=0;e.length>n;n++)if(e[n]!==t[n])return!1;return!0}(x,P)||E(P),"function"==typeof g&&g(T),n.createElement("div",w,A)}ae.defaultProps={width:null,height:null,direction:"y",spacing:0,itemCount:0,estimatedItemWidth:0,estimatedItemHeight:0,renderItem:function(){return null}},ae.PadContent=!0;function le(e){var o=e.width,a=e.height,l=e.onResize,s=e.children,d=i(e,["width","height","onResize","children"]),f=t.useState(null),h=f[0],p=f[1],y=u(h),g=t.useRef(null),w=y.current,b=t.useCallback((function(){var e=v(g.current);p(e)}),[]);c((function(){m(w,h)||h&&l(h),h||b()})),c((function(){if(("number"!=typeof o||"number"!=typeof a)&&A){var e=g.current;return A.listenTo(e,(function(){return b()})),function(){return A.uninstall(e)}}}),[o,a]),t.useMemo((function(){var e=null;"number"==typeof o&&"number"==typeof a&&(e={width:o,height:a}),p(e)}),[o,a]),d.style=r({width:ce(o),height:ce(a)},d.style);var x=null;return h&&(x="function"==typeof s?s(h):s),n.createElement("div",r({},d,{ref:g}),x)}function ce(e){return null==e||""===e?"100%":e}le.defaultProps={width:null,height:null,onResize:function(){}};var ue={mouseEntered:!1,loopCount:1,loopOffset:0,loopWidth:0,scrollTo:null,options:["x",!0],pad:K};function se(e,t){switch(t.type){case"setMouseEntered":return function(e,t){return r({},e,{mouseEntered:t.value})}(e,t);case"setPad":return function(e,t){var n=r({},e,{pad:t.value});return n=de(n=function(e,t){var n,i=e.loopCount,o=e.loopOffset,a=e.options,l=a[0],c=e.pad,u=c.contentOffset,s=c.size,d=c.contentSize;if(a[1]){var f=function(e,t,n,i,r){var o;if(1===i)return[e,0];var a="y"===r?["height","y","x"]:["width","x","y"],l=a[0],c=a[1],u=a[2],s=n[l],d=t[l],f=s/i,h=.5*(s-f-d),p=0,v=d-s,m=e[c],y=0;if(p-=h,m>=(v+=h)&&p>=m)return[e,0];v>m?y=Math.floor((p-m)/f):m>p&&(y=-Math.floor((m-v)/f));return[(o={},o[c]=m+=f*y,o[u]=e[u],o),y]}(u,s,d,i,l),h=f[0],p=f[1];u!==h&&((n=n||r({},e)).loopOffset=o+p,n.scrollTo={offset:h,animated:!1})}return n||e}(n))}(e,t);case"setOptions":return function(e,t){var n=r({},e,{options:t.value});return n=de(n)}(e,t);case"setScrollTo":return function(e,t){return r({},e,{scrollTo:t.value})}(e,t);case"playNext":return function(e,t){var n=e.pad,i=function(e,t,n,i,r){var o,a="y"===r?["height","y","x"]:["width","x","y"],l=a[0],c=a[1],u=a[2],s=t[l],d=Math.min(s-n[l],0),f=e[c];i&&s>0&&(d=s*Math.ceil(d/s));f=f>d?Math.max(d,f-s):0;return(o={})[c]=f,o[u]=e[u],o}(n.contentOffset,n.size,n.contentSize,n.pagingEnabled,e.options[0]);return r({},e,{scrollTo:{offset:i,animated:!0}})}(e);default:return e}}function de(e,t){var n=e.options,i=e.pad;return r({},e,{},function(e,t,n,i,r){var o="y"===r?"height":"width",a=e[o],l=t[o],c=l/n;if(!i||0===l||0===a)return{loopCount:1,loopOffset:0,loopWidth:c};return{loopCount:2+Math.floor(a/c),loopWidth:c}}(i.size,i.contentSize,e.loopCount,n[1],n[0]))}var fe=r({direction:"x",loop:!0,autoplayEnabled:!0,autoplayInterval:5e3},ee.defaultProps,{pagingEnabled:!0,directionalLockEnabled:!0});function he(e){var r=e.direction,o=e.loop,a=e.autoplayEnabled,l=e.autoplayInterval,c=e.children,u=i(e,["direction","loop","autoplayEnabled","autoplayInterval","children"]),s=u.scrollTo,d=u.onMouseEnter,f=u.onMouseLeave,h=t.useReducer(se,ue),p=h[0],v=h[1],m=p.mouseEntered,y=p.loopCount,g=p.loopOffset,w=p.scrollTo,b=p.pad,x=t.useCallback((function(e){v({type:"setMouseEntered",value:!0}),d&&d(e)}),[d]),E=t.useCallback((function(e){v({type:"setMouseEntered",value:!1}),f&&f(e)}),[f]);return t.useEffect((function(){if(a&&!m&&!b.drag&&!b.deceleration){var e=setTimeout((function(){v({type:"playNext"})}),l);return function(){clearTimeout(e)}}}),[a,l,m,b.drag,b.deceleration]),t.useMemo((function(){v({type:"setOptions",value:[r,o]})}),[o,r]),t.useMemo((function(){v({type:"setScrollTo",value:s})}),[s]),u.scrollTo=w,"x"===r?u.alwaysBounceY=!1:u.alwaysBounceX=!1,a&&(u.onMouseEnter=x,u.onMouseLeave=E),n.createElement(ee,u,(function(e){b!==e&&v({type:"setPad",value:e});var t="function"==typeof c?c(p):c;return n.createElement(ae,{direction:r,itemCount:y,renderItem:function(e){return n.createElement(e.Item,{key:e.itemIndex+g,hash:"loop"},t)}})}))}var pe={activeIndex:0,itemCount:0,scrollTo:null,player:ue};function ve(e,t){switch(t.type){case"setPlayer":return function(e,t){var n=t.value,i=n.options[0],o=n.pad,a=o.contentOffset,l=o.size,c=o.contentSize,u=function(e,t,n){var i=e["y"===n?"height":"width"],r=0;i>0&&(r=Math.ceil(t/i));return r}(l,n.loopWidth,i),s=0;if(u>0){var d=function(e,t,n,i){var r="y"===i?["height","y"]:["width","x"],o=r[0],a=r[1],l=t[o],c=0;if(l>0){c=Math.round(-Math.max(Math.min(l-n[o],0),Math.min(e[a],0))/l)}return c}(a,l,c,i);s=d%u}return r({},e,{player:n,itemCount:u,activeIndex:s})}(e,t);case"setScrollTo":return function(e,t){return r({},e,{scrollTo:t.value})}(e,t);case"scrollToIndex":return function(e,t){var n=e.activeIndex,i=e.player.options[0],o=e.player.pad,a=o.contentOffset,l=o.size,c=t.animated,u=t.index;if(0===e.itemCount)return e;"function"==typeof u&&(u=u(e));if(u===n)return e;var s=function(e,t,n,i){var r,o="y"===i?["height","y","x"]:["width","x","y"],a=o[1],l=o[2];return(r={})[a]=t[a]-e*n[o[0]],r[l]=t[l],r}(u-n,a,l,i);return r({},e,{scrollTo:{offset:s,animated:c}})}(e,t);default:return e}}var me=r({itemCount:0,renderItem:function(){return null},onActiveIndexChange:function(){},scrollToIndex:null},he.defaultProps=fe);function ye(e){var o=e.itemCount,a=e.renderItem,l=e.onActiveIndexChange,s=e.scrollToIndex,d=e.children,f=i(e,["itemCount","renderItem","onActiveIndexChange","scrollToIndex","children"]),h=f.width,p=f.height,v=f.direction,m=f.scrollTo,y=f.renderOverlay,g=t.useReducer(ve,pe),w=g[0],b=g[1],x=u(w),E=w.activeIndex,S=w.scrollTo,C=w.player,I={activeIndex:E,itemCount:w.itemCount},T=x.current;return c((function(){T.activeIndex!==E&&l(I)})),t.useMemo((function(){b({type:"setScrollTo",value:m})}),[m]),t.useMemo((function(){s&&b(r({type:"scrollToIndex"},s))}),[s]),f.scrollTo=S,f.renderOverlay=function(e){var i="function"==typeof d?d(w):d;return n.createElement(t.Fragment,null,y(e),i)},n.createElement(he,f,(function(e){return C!==e&&b({type:"setPlayer",value:e}),n.createElement(re,{width:h,height:p,itemWidth:h,itemHeight:p,direction:v,itemCount:o,renderItem:a})}))}ye.defaultProps=me;var ge={scrollToRect:null,scrolling:!1,pad:K};function we(e,t){switch(t.type){case"setPad":return function(e,t){return r({},e,{pad:t.value})}(e,t);case"setScrollToRect":return function(e,t){return r({},e,{scrollToRect:t.value})}(e,t);case"scrollToIndex":return function(e,t){var n=t.list,i=t.index,o=void 0===i?0:i,a=n.box,l=n.body,c={x:0,y:0,width:0,height:0};a&&(c=a.layoutList[1].rect);if(l){var u=l.layoutList[o];u&&(c={x:c.x+u.rect.x,y:c.y+u.rect.y,width:u.rect.width,height:u.rect.height})}return r({},e,{scrollToRect:{rect:c,align:t.align,animated:t.animated},scrolling:!0})}(e,t);case"endScrolling":return function(e,t){return r({},e,{scrolling:!1})}(e);default:return e}}var be=r({direction:"y",spacing:0,itemCount:0,estimatedItemWidth:0,estimatedItemHeight:0,renderItem:function(){return null},renderHeader:function(){return null},renderFooter:function(){return null},scrollToIndex:null},ee.defaultProps,{directionalLockEnabled:!0});function xe(e){var o=e.direction,a=e.spacing,l=e.itemCount,s=e.estimatedItemWidth,d=e.estimatedItemHeight,f=e.renderItem,h=e.renderHeader,p=e.renderFooter,v=e.scrollToIndex,m=e.children,y=i(e,["direction","spacing","itemCount","estimatedItemWidth","estimatedItemHeight","renderItem","renderHeader","renderFooter","scrollToIndex","children"]),g=y.width,w=y.height,b=y.scrollToRect,x=t.useReducer(we,ge),E=x[0],S=x[1],C=u(E),I=t.useRef({}),T=E.scrollToRect,z=E.scrolling,M=E.pad,O=C.current;return c((function(){O.pad.contentSize!==M.contentSize&&z&&v&&S(r({type:"scrollToIndex"},v,{list:I.current}))})),t.useEffect((function(){O.pad.deceleration!==M.deceleration&&!M.deceleration&&z&&S({type:"endScrolling"})})),t.useMemo((function(){S({type:"setScrollToRect",value:b})}),[b]),t.useMemo((function(){v&&S(r({type:"scrollToIndex"},v,{list:I.current}))}),[v]),y.scrollToRect=T,"x"===o?y.alwaysBounceY=!1:y.alwaysBounceX=!1,"function"==typeof m&&m(E),n.createElement(ee,y,(function(e){M!==e&&S({type:"setPad",value:e});var t={width:g,height:w,direction:o,itemCount:3,renderItem:function(e){var t=e.itemIndex,i=e.Item;return 0===t?h(e):2===t?p(e):n.createElement(i,{forceRender:!0},n.createElement(ae,{width:g,height:w,direction:o,spacing:a,itemCount:l,estimatedItemWidth:s,estimatedItemHeight:d,renderItem:f},(function(e){I.current.body=e})))}};return n.createElement(ae,t,(function(e){I.current.box=e}))}))}xe.defaultProps=be,e.AutoResizing=le,e.Carousel=ye,e.GeneralContent=D,e.GridContent=re,e.Infinite=xe,e.ItemContent=y,e.ListContent=ae,e.Pad=ee,e.PadContext=p,e.Pannable=h,e.Player=he,Object.defineProperty(e,"__esModule",{value:!0})}));

@@ -30,3 +30,4 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";

direction = playerProps.direction,
playerScrollTo = playerProps.scrollTo;
playerScrollTo = playerProps.scrollTo,
renderOverlay = playerProps.renderOverlay;

@@ -66,4 +67,9 @@ var _useReducer = useReducer(reducer, initialState),

playerProps.scrollTo = scrollTo;
var element = typeof children === 'function' ? children(output) : children;
return React.createElement(Fragment, null, React.createElement(Player, playerProps, function (nextPlayer) {
playerProps.renderOverlay = function (padAttrs) {
var element = typeof children === 'function' ? children(state) : children;
return React.createElement(Fragment, null, renderOverlay(padAttrs), element);
};
return React.createElement(Player, playerProps, function (nextPlayer) {
if (player !== nextPlayer) {

@@ -86,3 +92,3 @@ dispatch({

return React.createElement(GridContent, gridProps);
}), element);
});
}

@@ -89,0 +95,0 @@

import Pad from './Pad';
import PadContext from './PadContext';
import Pannable from './Pannable';

@@ -10,2 +11,2 @@ import GeneralContent from './GeneralContent';

export * from './infinite';
export { Pad, Pannable, GeneralContent, GridContent, ListContent, ItemContent, AutoResizing };
export { Pad, PadContext, Pannable, GeneralContent, GridContent, ListContent, ItemContent, AutoResizing };

@@ -100,2 +100,6 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";

if (typeof children === 'function') {
children(state);
}
return React.createElement(Pad, padProps, function (nextPad) {

@@ -102,0 +106,0 @@ if (pad !== nextPad) {

@@ -21,4 +21,2 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";

alwaysBounceY: true,
scrollTo: null,
scrollToRect: null,
onScroll: function onScroll() {},

@@ -29,3 +27,11 @@ onDragStart: function onDragStart() {},

onDecelerationEnd: function onDecelerationEnd() {},
onContentResize: function onContentResize() {}
onContentResize: function onContentResize() {},
renderBackground: function renderBackground() {
return null;
},
renderOverlay: function renderOverlay() {
return null;
},
scrollTo: null,
scrollToRect: null
}, Pannable.defaultProps);

@@ -40,4 +46,2 @@

alwaysBounceY = props.alwaysBounceY,
scrollTo = props.scrollTo,
scrollToRect = props.scrollToRect,
onScroll = props.onScroll,

@@ -49,4 +53,8 @@ onDragStart = props.onDragStart,

onContentResize = props.onContentResize,
renderBackground = props.renderBackground,
renderOverlay = props.renderOverlay,
scrollTo = props.scrollTo,
scrollToRect = props.scrollToRect,
children = props.children,
pannableProps = _objectWithoutPropertiesLoose(props, ["width", "height", "pagingEnabled", "directionalLockEnabled", "alwaysBounceX", "alwaysBounceY", "scrollTo", "scrollToRect", "onScroll", "onDragStart", "onDragEnd", "onDecelerationStart", "onDecelerationEnd", "onContentResize", "children"]);
pannableProps = _objectWithoutPropertiesLoose(props, ["width", "height", "pagingEnabled", "directionalLockEnabled", "alwaysBounceX", "alwaysBounceY", "onScroll", "onDragStart", "onDragEnd", "onDecelerationStart", "onDecelerationEnd", "onContentResize", "renderBackground", "renderOverlay", "scrollTo", "scrollToRect", "children"]);

@@ -185,36 +193,6 @@ var enabled = pannableProps.enabled,

}, [scrollToRect]);
pannableProps.shouldStart = shouldPannableStart;
var elemStyle = {
overflow: 'hidden',
position: 'relative',
width: size.width,
height: size.height
};
if (pannableProps.style) {
Object.assign(elemStyle, pannableProps.style);
}
pannableProps.style = elemStyle;
var visibleRect = {
x: -contentOffset.x,
y: -contentOffset.y,
width: size.width,
height: size.height
};
return React.createElement(PadContext.Provider, {
value: {
visibleRect: visibleRect,
resizeContent: resizeContent
}
}, React.createElement(Pannable, pannableProps, function (nextPannable) {
if (pannable !== nextPannable) {
dispatch({
type: 'setPannable',
value: nextPannable
});
}
function buildContent() {
var contentStyle = StyleSheet.create({
position: 'relative',
position: 'absolute',
width: contentSize.width,

@@ -243,3 +221,61 @@ height: contentSize.height,

return element;
}));
}
function buildBackground() {
var element = renderBackground(output);
if (element === null || element === undefined) {
return null;
}
var elemStyle = {
position: 'absolute',
top: 0,
left: 0,
right: 0,
bottom: 0
};
return React.createElement("div", {
style: elemStyle
}, element);
}
function buildOverlay() {
return renderOverlay(output);
}
pannableProps.shouldStart = shouldPannableStart;
var elemStyle = {
overflow: 'hidden',
position: 'relative',
width: size.width,
height: size.height
};
if (pannableProps.style) {
Object.assign(elemStyle, pannableProps.style);
}
pannableProps.style = elemStyle;
return React.createElement(Pannable, pannableProps, function (nextPannable) {
if (pannable !== nextPannable) {
dispatch({
type: 'setPannable',
value: nextPannable
});
}
var visibleRect = {
x: -contentOffset.x,
y: -contentOffset.y,
width: size.width,
height: size.height
};
return React.createElement(PadContext.Provider, {
value: {
visibleRect: visibleRect,
resizeContent: resizeContent
}
}, buildBackground(), buildContent(), buildOverlay());
});
}

@@ -246,0 +282,0 @@

@@ -45,3 +45,4 @@ "use strict";

direction = playerProps.direction,
playerScrollTo = playerProps.scrollTo;
playerScrollTo = playerProps.scrollTo,
renderOverlay = playerProps.renderOverlay;

@@ -81,4 +82,9 @@ var _useReducer = (0, _react.useReducer)(_carouselReducer.reducer, _carouselReducer.initialState),

playerProps.scrollTo = scrollTo;
var element = typeof children === 'function' ? children(output) : children;
return _react["default"].createElement(_react.Fragment, null, _react["default"].createElement(_Player["default"], playerProps, function (nextPlayer) {
playerProps.renderOverlay = function (padAttrs) {
var element = typeof children === 'function' ? children(state) : children;
return _react["default"].createElement(_react.Fragment, null, renderOverlay(padAttrs), element);
};
return _react["default"].createElement(_Player["default"], playerProps, function (nextPlayer) {
if (player !== nextPlayer) {

@@ -101,3 +107,3 @@ dispatch({

return _react["default"].createElement(_GridContent["default"], gridProps);
}), element);
});
}

@@ -104,0 +110,0 @@

@@ -8,2 +8,3 @@ "use strict";

Pad: true,
PadContext: true,
Pannable: true,

@@ -21,2 +22,6 @@ GeneralContent: true,

var _PadContext = _interopRequireDefault(require("./PadContext"));
exports.PadContext = _PadContext["default"];
var _Pannable = _interopRequireDefault(require("./Pannable"));

@@ -23,0 +28,0 @@

@@ -115,2 +115,6 @@ "use strict";

if (typeof children === 'function') {
children(state);
}
return _react["default"].createElement(_Pad["default"], padProps, function (nextPad) {

@@ -117,0 +121,0 @@ if (pad !== nextPad) {

@@ -41,4 +41,2 @@ "use strict";

alwaysBounceY: true,
scrollTo: null,
scrollToRect: null,
onScroll: function onScroll() {},

@@ -49,3 +47,11 @@ onDragStart: function onDragStart() {},

onDecelerationEnd: function onDecelerationEnd() {},
onContentResize: function onContentResize() {}
onContentResize: function onContentResize() {},
renderBackground: function renderBackground() {
return null;
},
renderOverlay: function renderOverlay() {
return null;
},
scrollTo: null,
scrollToRect: null
}, _Pannable["default"].defaultProps);

@@ -60,4 +66,2 @@

alwaysBounceY = props.alwaysBounceY,
scrollTo = props.scrollTo,
scrollToRect = props.scrollToRect,
onScroll = props.onScroll,

@@ -69,4 +73,8 @@ onDragStart = props.onDragStart,

onContentResize = props.onContentResize,
renderBackground = props.renderBackground,
renderOverlay = props.renderOverlay,
scrollTo = props.scrollTo,
scrollToRect = props.scrollToRect,
children = props.children,
pannableProps = (0, _objectWithoutPropertiesLoose2["default"])(props, ["width", "height", "pagingEnabled", "directionalLockEnabled", "alwaysBounceX", "alwaysBounceY", "scrollTo", "scrollToRect", "onScroll", "onDragStart", "onDragEnd", "onDecelerationStart", "onDecelerationEnd", "onContentResize", "children"]);
pannableProps = (0, _objectWithoutPropertiesLoose2["default"])(props, ["width", "height", "pagingEnabled", "directionalLockEnabled", "alwaysBounceX", "alwaysBounceY", "onScroll", "onDragStart", "onDragEnd", "onDecelerationStart", "onDecelerationEnd", "onContentResize", "renderBackground", "renderOverlay", "scrollTo", "scrollToRect", "children"]);
var enabled = pannableProps.enabled,

@@ -204,36 +212,6 @@ shouldStart = pannableProps.shouldStart;

}, [scrollToRect]);
pannableProps.shouldStart = shouldPannableStart;
var elemStyle = {
overflow: 'hidden',
position: 'relative',
width: size.width,
height: size.height
};
if (pannableProps.style) {
Object.assign(elemStyle, pannableProps.style);
}
pannableProps.style = elemStyle;
var visibleRect = {
x: -contentOffset.x,
y: -contentOffset.y,
width: size.width,
height: size.height
};
return _react["default"].createElement(_PadContext["default"].Provider, {
value: {
visibleRect: visibleRect,
resizeContent: resizeContent
}
}, _react["default"].createElement(_Pannable["default"], pannableProps, function (nextPannable) {
if (pannable !== nextPannable) {
dispatch({
type: 'setPannable',
value: nextPannable
});
}
function buildContent() {
var contentStyle = _StyleSheet["default"].create({
position: 'relative',
position: 'absolute',
width: contentSize.width,

@@ -263,3 +241,61 @@ height: contentSize.height,

return element;
}));
}
function buildBackground() {
var element = renderBackground(output);
if (element === null || element === undefined) {
return null;
}
var elemStyle = {
position: 'absolute',
top: 0,
left: 0,
right: 0,
bottom: 0
};
return _react["default"].createElement("div", {
style: elemStyle
}, element);
}
function buildOverlay() {
return renderOverlay(output);
}
pannableProps.shouldStart = shouldPannableStart;
var elemStyle = {
overflow: 'hidden',
position: 'relative',
width: size.width,
height: size.height
};
if (pannableProps.style) {
Object.assign(elemStyle, pannableProps.style);
}
pannableProps.style = elemStyle;
return _react["default"].createElement(_Pannable["default"], pannableProps, function (nextPannable) {
if (pannable !== nextPannable) {
dispatch({
type: 'setPannable',
value: nextPannable
});
}
var visibleRect = {
x: -contentOffset.x,
y: -contentOffset.y,
width: size.width,
height: size.height
};
return _react["default"].createElement(_PadContext["default"].Provider, {
value: {
visibleRect: visibleRect,
resizeContent: resizeContent
}
}, buildBackground(), buildContent(), buildOverlay());
});
}

@@ -266,0 +302,0 @@

{
"name": "react-pannable",
"version": "3.0.0",
"version": "3.1.0",
"description": "Flexible and Customizable Layouts for Scrolling Content with React",

@@ -81,3 +81,3 @@ "keywords": [

"eslint": "^6.7.2",
"eslint-config-react-app": "^5.0.2",
"eslint-config-react-app": "^5.1.0",
"eslint-plugin-flowtype": "^3.13.0",

@@ -84,0 +84,0 @@ "eslint-plugin-import": "^2.18.2",

@@ -25,3 +25,9 @@ import React, { Fragment, useMemo, useReducer } from 'react';

} = props;
const { width, height, direction, scrollTo: playerScrollTo } = playerProps;
const {
width,
height,
direction,
scrollTo: playerScrollTo,
renderOverlay,
} = playerProps;
const [state, dispatch] = useReducer(reducer, initialState);

@@ -51,28 +57,33 @@ const prevStateRef = usePrevRef(state);

playerProps.scrollTo = scrollTo;
playerProps.renderOverlay = padAttrs => {
const element = typeof children === 'function' ? children(state) : children;
const element = typeof children === 'function' ? children(output) : children;
return (
<Fragment>
{renderOverlay(padAttrs)}
{element}
</Fragment>
);
};
return (
<Fragment>
<Player {...playerProps}>
{nextPlayer => {
if (player !== nextPlayer) {
dispatch({ type: 'setPlayer', value: nextPlayer });
}
<Player {...playerProps}>
{nextPlayer => {
if (player !== nextPlayer) {
dispatch({ type: 'setPlayer', value: nextPlayer });
}
const gridProps = {
width,
height,
itemWidth: width,
itemHeight: height,
direction,
itemCount: gridItemCount,
renderItem,
};
const gridProps = {
width,
height,
itemWidth: width,
itemHeight: height,
direction,
itemCount: gridItemCount,
renderItem,
};
return <GridContent {...gridProps} />;
}}
</Player>
{element}
</Fragment>
return <GridContent {...gridProps} />;
}}
</Player>
);

@@ -79,0 +90,0 @@ }

import Pad from './Pad';
import PadContext from './PadContext';
import Pannable from './Pannable';

@@ -13,2 +14,3 @@ import GeneralContent from './GeneralContent';

Pad,
PadContext,
Pannable,

@@ -15,0 +17,0 @@ GeneralContent,

@@ -86,2 +86,6 @@ import React, { useReducer, useMemo, useRef, useEffect } from 'react';

if (typeof children === 'function') {
children(state);
}
return (

@@ -88,0 +92,0 @@ <Pad {...padProps}>

@@ -28,4 +28,2 @@ import React, {

alwaysBounceY: true,
scrollTo: null,
scrollToRect: null,
onScroll: () => {},

@@ -37,2 +35,6 @@ onDragStart: () => {},

onContentResize: () => {},
renderBackground: () => null,
renderOverlay: () => null,
scrollTo: null,
scrollToRect: null,
...Pannable.defaultProps,

@@ -49,4 +51,2 @@ };

alwaysBounceY,
scrollTo,
scrollToRect,
onScroll,

@@ -58,2 +58,6 @@ onDragStart,

onContentResize,
renderBackground,
renderOverlay,
scrollTo,
scrollToRect,
children,

@@ -189,2 +193,51 @@ ...pannableProps

function buildContent() {
const contentStyle = StyleSheet.create({
position: 'absolute',
width: contentSize.width,
height: contentSize.height,
transformTranslate: [contentOffset.x, contentOffset.y],
willChange: 'transform',
});
let element = typeof children === 'function' ? children(state) : children;
if (isValidElement(element) && element.type.PadContent) {
if (element.props.style) {
Object.assign(contentStyle, element.props.style);
}
element = cloneElement(element, {
style: contentStyle,
ref: element.ref,
});
} else {
element = <GeneralContent style={contentStyle}>{element}</GeneralContent>;
}
return element;
}
function buildBackground() {
const element = renderBackground(output);
if (element === null || element === undefined) {
return null;
}
const elemStyle = {
position: 'absolute',
top: 0,
left: 0,
right: 0,
bottom: 0,
};
return <div style={elemStyle}>{element}</div>;
}
function buildOverlay() {
return renderOverlay(output);
}
pannableProps.shouldStart = shouldPannableStart;

@@ -205,47 +258,25 @@

const visibleRect = {
x: -contentOffset.x,
y: -contentOffset.y,
width: size.width,
height: size.height,
};
return (
<PadContext.Provider value={{ visibleRect, resizeContent }}>
<Pannable {...pannableProps}>
{nextPannable => {
if (pannable !== nextPannable) {
dispatch({ type: 'setPannable', value: nextPannable });
}
<Pannable {...pannableProps}>
{nextPannable => {
if (pannable !== nextPannable) {
dispatch({ type: 'setPannable', value: nextPannable });
}
const contentStyle = StyleSheet.create({
position: 'relative',
width: contentSize.width,
height: contentSize.height,
transformTranslate: [contentOffset.x, contentOffset.y],
willChange: 'transform',
});
const visibleRect = {
x: -contentOffset.x,
y: -contentOffset.y,
width: size.width,
height: size.height,
};
let element =
typeof children === 'function' ? children(state) : children;
if (isValidElement(element) && element.type.PadContent) {
if (element.props.style) {
Object.assign(contentStyle, element.props.style);
}
element = cloneElement(element, {
style: contentStyle,
ref: element.ref,
});
} else {
element = (
<GeneralContent style={contentStyle}>{element}</GeneralContent>
);
}
return element;
}}
</Pannable>
</PadContext.Provider>
return (
<PadContext.Provider value={{ visibleRect, resizeContent }}>
{buildBackground()}
{buildContent()}
{buildOverlay()}
</PadContext.Provider>
);
}}
</Pannable>
);

@@ -252,0 +283,0 @@ }

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc