-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path9-d2869d873a1b30f89b75.js.map
1 lines (1 loc) · 131 KB
/
9-d2869d873a1b30f89b75.js.map
1
{"version":3,"sources":["webpack:///./node_modules/@widgetbot/embed-api/dist/index.js","webpack:///./node_modules/@widgetbot/embed-api/dist/api.js","webpack:///./node_modules/react-waypoint/es/index.js","webpack:///./node_modules/consolidated-events/lib/index.esm.js","webpack:///./node_modules/react-is/index.js","webpack:///./node_modules/react-is/cjs/react-is.production.min.js","webpack:///./node_modules/gatsby-image/index.js","webpack:///./node_modules/react-scrollspy/lib/Scrollspy.js","webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js","webpack:///./node_modules/@babel/runtime/helpers/inherits.js","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/classnames/index.js","webpack:///./node_modules/react-scrollspy/lib/throttle.js","webpack:///./node_modules/smoothscroll-polyfill/dist/smoothscroll.js","webpack:///./node_modules/@widgetbot/react-embed/dist/index.js","webpack:///./node_modules/@widgetbot/embed-api/dist/client.js","webpack:///./node_modules/@widgetbot/embed-api/dist/server.js","webpack:///./node_modules/@widgetbot/react-embed/dist/elements.js","webpack:///./node_modules/@widgetbot/react-embed/dist/util.js"],"names":["Object","defineProperty","exports","value","api_1","__webpack_require__","API","default","client_1","Client","server_1","Server","this","listeners","prototype","socketEvent","raw","message","JSON","parse","e","widgetbot","id","event_1","event","data_1","data","forEach","listener","on","callback","push","console","debug","global","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","n","consolidated_events__WEBPACK_IMPORTED_MODULE_1__","prop_types__WEBPACK_IMPORTED_MODULE_2__","prop_types__WEBPACK_IMPORTED_MODULE_2___default","react_is__WEBPACK_IMPORTED_MODULE_3__","computeOffsetPixels","offset","contextHeight","str","pixelOffset","isNaN","parseFloat","isFinite","slice","percentOffset","parseOffsetAsPercentage","constants","above","inside","below","invisible","errorMessage","ensureChildrenIsValid","children","a","Children","only","Error","isDOMElement","Component","type","errorMessage$1","timeout","timeoutQueue","onNextTick","cb","setTimeout","item","shift","isSubscribed","index","indexOf","splice","length","clearTimeout","_createClass","defineProperties","target","props","i","descriptor","enumerable","configurable","writable","key","Constructor","protoProps","staticProps","defaultProps","topOffset","bottomOffset","horizontal","onEnter","onLeave","onPositionChange","fireOnRapidScroll","BaseClass","PureComponent","Waypoint","_BaseClass","instance","TypeError","_classCallCheck","_this","self","call","ReferenceError","_possibleConstructorReturn","__proto__","getPrototypeOf","refElement","_ref","subClass","superClass","create","constructor","setPrototypeOf","_inherits","_this2","getWindow","cancelOnNextTick","ref","ensureRefIsProvidedByChild","_handleScroll","bind","scrollableAncestor","_findScrollableAncestor","scrollEventListenerUnsubscribe","passive","resizeEventListenerUnsubscribe","window","newProps","_this3","_props","resolveScrollableAncestorProp","node","parentNode","document","body","style","getComputedStyle","overflow","getPropertyValue","bounds","_getBounds","currentPosition","viewportBottom","viewportTop","waypointTop","waypointBottom","getCurrentPosition","previousPosition","_previousPosition","callbackArg","isRapidScrollDown","isRapidScrollUp","_ref$getBoundingClien","getBoundingClientRect","left","top","right","bottom","contextScrollTop","innerWidth","innerHeight","offsetWidth","offsetHeight","_props2","_this4","createElement","fontSize","current","cloneElement","innerRef","propTypes","bool","func","any","oneOfType","string","number","displayName","__webpack_exports__","d","addEventListener","CAN_USE_DOM","memoized","canUsePassiveEventListeners","undefined","removeEventListener","supportsPassiveOption","opts","get","noop","testPassiveEventListeners","ensureCanMutateNextEventHandlers","eventHandlers","handlers","nextHandlers","TargetEventHandlers","events","getEventHandlers","eventName","options","normalizedEventOptions","String","capture","once","handleEvent","handler","add","EVENT_HANDLERS_KEY","eventOptions","normalizeEventOptions","module","b","Symbol","for","c","f","g","h","k","l","m","p","q","r","t","u","$$typeof","v","typeOf","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","ForwardRef","Fragment","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","isValidElementType","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","_interopRequireDefault","__esModule","io","_inheritsLoose2","_assertThisInitialized2","_objectWithoutPropertiesLoose2","_extends2","_react","_propTypes","convertProps","convertedProps","resolutions","fixed","sizes","fluid","imageCache","inImageCache","src","WeakMap","listenToIntersections","el","observer","IntersectionObserver","entries","entry","has","isIntersecting","intersectionRatio","unobserve","delete","rootMargin","observe","set","noscriptImg","srcSetWebp","srcSet","title","alt","width","height","crossOrigin","Img","forwardRef","onLoad","onError","otherProps","position","objectFit","objectPosition","object","Image","_React$Component","isVisible","IOSupported","fadeIn","seenBefore","critical","hasNoScript","state","imgLoaded","imgCached","imageRef","createRef","handleImageLoaded","handleRef","_proto","componentDidMount","onStartLoad","wasCached","img","complete","componentWillUnmount","cleanUpListeners","imageInCache","setState","currentSrc","render","_convertProps","className","_convertProps$style","_convertProps$imgStyl","imgStyle","_convertProps$placeho","placeholderStyle","placeholderClassName","backgroundColor","Tag","itemProp","shouldReveal","shouldFadeIn","imageStyle","opacity","transition","bgColor","delayHideStyle","transitionDelay","imagePlaceholderStyle","placeholderImageProps","image","stringify","paddingBottom","aspectRatio","base64","tracedSVG","dangerouslySetInnerHTML","__html","_image","divStyle","display","fixedObject","shape","isRequired","srcWebp","fluidObject","_default","_defineProperty2","_toConsumableArray2","_classCallCheck2","_possibleConstructorReturn2","_getPrototypeOf2","_createClass2","_inherits2","_classnames","_throttle","Scrollspy","targetItems","inViewState","isScrolledPast","_handleSpy","items","arrayOf","currentClassName","scrolledPastClassName","componentTag","rootEl","onUpdate","map","getElementById","array","val","newArray","max","_getScrollDimension","scrollTop","doc","querySelector","documentElement","scrollHeight","targets","elemsInView","elemsOutView","viewStatusList","hasInViewAlready","currentContent","isInView","_isInView","isLastItem","isScrolled","_isScrolled","_isAtBottom","pop","apply","_fillArray","inView","outView","scrolledPast","_getScrolledPast","rootRect","_this$props","rect","winH","scrollBottom","elTop","elBottom","_this$_getScrollDimen2","some","hasFoundInView","elemensViewState","_getElemsViewState","currentStatuses","_update","prevStatuses","every","_spy","_initSpyTarget","_initFromProps","onEvent","offEvent","_this$props2","counter","child","idx","_classNames","ChildTag","childClass","concat","itemClass","arrayWithoutHoles","iterableToArray","nonIterableSpread","arr","Array","isArray","arr2","iter","iterator","toString","from","_typeof","assertThisInitialized","_typeof2","obj","_getPrototypeOf","o","_defineProperties","_setPrototypeOf","__WEBPACK_AMD_DEFINE_RESULT__","hasOwn","hasOwnProperty","classNames","classes","arguments","arg","argType","inner","join","fn","last","timer","threshold","now","Date","polyfill","w","__forceSmoothScrollPolyfill__","userAgent","HTMLElement","SCROLL_TIME","original","scroll","scrollTo","scrollBy","elementScroll","scrollElement","scrollIntoView","performance","ROUNDING_TOLERANCE","navigator","RegExp","test","shouldBailOut","smoothScroll","scrollX","pageXOffset","scrollY","pageYOffset","scrollLeft","SyntaxError","behavior","scrollableParent","isScrollable","host","findScrollableParent","parentRects","clientRects","x","y","firstArg","hasScrollableSpace","axis","clientHeight","clientWidth","scrollWidth","canOverflow","overflowValue","isScrollableY","isScrollableX","step","context","currentX","currentY","elapsed","startTime","Math","cos","PI","startX","startY","method","scrollable","requestAnimationFrame","extendStatics","__extends","__","__assign","assign","s","embed_api_1","React","elements_1","util_1","WidgetBot","_super","url","generateUUID","api","iframe","getDerivedStateFromProps","shard","server","channel","searchParams","onAPI","_a","defer","Root","Embed","__export","embed_api_2","emit","parent","parsed","contentWindow","postMessage","targetOrigin","client","borderRadius","verticalAlign","border","getTime","replace","random","floor","keys","encodeURIComponent"],"mappings":"0FACAA,OAAAC,eAAAC,EAAA,cAA8CC,OAAA,IAC9C,IAAAC,EAAYC,EAAQ,KACpBH,EAAAI,IAAAF,EAAAG,QACA,IAAAC,EAAeH,EAAQ,KACvBH,EAAAO,OAAAD,EAAAD,QACA,IAAAG,EAAeL,EAAQ,KACvBH,EAAAS,OAAAD,EAAAH,0CCNAP,OAAAC,eAAAC,EAAA,cAA8CC,OAAA,IAC9C,IAAAG,EAAA,WACA,SAAAA,IACAM,KAAAC,UAAA,GA+BA,OA7BAP,EAAAQ,UAAAC,YAAA,SAAAC,GACA,IACA,IAAAC,EAAAC,KAAAC,MAAAH,GAEA,MAAAI,GACA,OAEA,GAAAH,aAAAjB,SACA,IAAAiB,EAAAI,WACAJ,EAAAK,KAAAV,KAAAU,GAAA,CACA,IAAAC,EAAAN,EAAAO,MAAAC,EAAAR,EAAAS,KACAb,EAAAD,KAAAC,UAAAU,GACAV,GACAA,EAAAc,QAAA,SAAAC,GAAuD,OAAAA,EAAAH,OASvDnB,EAAAQ,UAAAe,GAAA,SAAAL,EAAAM,GACAlB,KAAAC,UAAAW,KACAZ,KAAAC,UAAAW,GAAA,IACAZ,KAAAC,UAAAW,GACAO,KAAAD,GACAE,QAAAC,MAAA,mBAAAT,EAAA,IAAAM,IAEAxB,EAjCA,GAmCAJ,EAAAK,QAAAD,qCCrCA,SAAA4B,GAAA,IAAAC,EAAA9B,EAAA,GAAA+B,EAAA/B,EAAAgC,EAAAF,GAAAG,EAAAjC,EAAA,KAAAkC,EAAAlC,EAAA,GAAAmC,EAAAnC,EAAAgC,EAAAE,GAAAE,EAAApC,EAAA,KAiDA,SAAAqC,EAAAC,EAAAC,GACA,IAdAC,EAcAC,GAdAD,EAcAF,GAbAI,MAAAC,WAAAH,KAAAI,SAAAJ,GACAG,WAAAH,GACG,OAAAA,EAAAK,OAAA,GACHF,WAAAH,EAAAK,MAAA,YADG,GAaH,oBAAAJ,EACA,OAAAA,EAGA,IAAAK,EAvCA,SAAAN,GACA,SAAAA,EAAAK,OAAA,GACA,OAAAF,WAAAH,EAAAK,MAAA,WAqCAE,CAAAT,GACA,uBAAAQ,EACAA,EAAAP,OADA,EAKA,IAAAS,EAAA,CACAC,MAAA,QACAC,OAAA,SACAC,MAAA,QACAC,UAAA,aASA,IAAAC,EAAA,2GAQA,SAAAC,EAAAC,GACA,GAAAA,EACA,IACMxB,EAAAyB,EAAKC,SAAAC,KAAAH,GACN,MAAAxC,GACL,UAAA4C,MAAAN,IAYA,SAAAO,EAAAC,GACA,uBAAAA,EAAAC,KAGA,IAAAC,EAAA,kMAqDA,IAAAC,OAAA,EACAC,EAAA,GAEA,SAAAC,EAAAC,GACAF,EAAAvC,KAAAyC,GAEAH,IACAA,EAAAI,WAAA,WACAJ,EAAA,KAKA,IAFA,IAAAK,OAAA,EAEAA,EAAAJ,EAAAK,SACAD,KAEK,IAGL,IAAAE,GAAA,EAEA,kBAqBA,OApBA,WACA,GAAAA,EAAA,CAIAA,GAAA,EAEA,IAAAC,EAAAP,EAAAQ,QAAAN,IACA,IAAAK,IAIAP,EAAAS,OAAAF,EAAA,IAEAP,EAAAU,QAAAX,IACAY,aAAAZ,GACAA,EAAA,SAjBA,GAoCA,IAAAa,EAAA,WAAgC,SAAAC,EAAAC,EAAAC,GAA2C,QAAAC,EAAA,EAAgBA,EAAAD,EAAAL,OAAkBM,IAAA,CAAO,IAAAC,EAAAF,EAAAC,GAA2BC,EAAAC,WAAAD,EAAAC,aAAA,EAAwDD,EAAAE,cAAA,EAAgC,UAAAF,MAAAG,UAAA,GAAuD1F,OAAAC,eAAAmF,EAAAG,EAAAI,IAAAJ,IAA+D,gBAAAK,EAAAC,EAAAC,GAA2L,OAAlID,GAAAV,EAAAS,EAAA9E,UAAA+E,GAAqEC,GAAAX,EAAAS,EAAAE,GAA6DF,GAAxhB,GAQA,IAAAG,EAAA,CACAC,UAAA,MACAC,aAAA,MACAC,YAAA,EACAC,QAAA,WAGA,OAFA,aADA,GAKAC,QAAA,WAGA,OAFA,aADA,GAKAC,iBAAA,WAGA,OAFA,aADA,GAMAC,mBAAA,GAIAC,OAA4B,IAALnE,EAAAyB,EAAK2C,cAAiCpE,EAAAyB,EAAK2C,cAAiBpE,EAAAyB,EAAKK,UAIxFuC,EAAA,SAAAC,GAGA,SAAAD,EAAApB,IArCA,SAAAsB,EAAAf,GAAiD,KAAAe,aAAAf,GAA0C,UAAAgB,UAAA,qCAsC3FC,CAAAjG,KAAA6F,GAEA,IAAAK,EAtCA,SAAAC,EAAAC,GAAiD,IAAAD,EAAa,UAAAE,eAAA,6DAAyF,OAAAD,GAAA,iBAAAA,GAAA,mBAAAA,EAAAD,EAAAC,EAsCvJE,CAAAtG,MAAA6F,EAAAU,WAAAnH,OAAAoH,eAAAX,IAAAO,KAAApG,KAAAyE,IAKA,OAHAyB,EAAAO,WAAA,SAAAjG,GACA,OAAA0F,EAAAQ,KAAAlG,GAEA0F,EAiVA,OA1XA,SAAAS,EAAAC,GAA0C,sBAAAA,GAAA,OAAAA,EAA+D,UAAAZ,UAAA,kEAAAY,GAAuGD,EAAAzG,UAAAd,OAAAyH,OAAAD,KAAA1G,UAAA,CAAyE4G,YAAA,CAAevH,MAAAoH,EAAA/B,YAAA,EAAAE,UAAA,EAAAD,cAAA,KAA6E+B,IAAAxH,OAAA2H,eAAA3H,OAAA2H,eAAAJ,EAAAC,GAAAD,EAAAJ,UAAAK,GA+BrXI,CAAAnB,EA4VCF,GA/UDrB,EAAAuB,EAAA,EACAd,IAAA,qBACAxF,MAAA,WAKA,OAJA,WACAwD,EAAA/C,KAAAyE,MAAAzB,WAFA,IAOG,CACH+B,IAAA,oBACAxF,MAAA,WAgCA,OA/BA,WACA,IAAA0H,EAAAjH,KAEA6F,EAAAqB,cAOAlH,KAAAmH,iBAAAxD,EAAA,WACAsD,EAAAE,iBAAA,KA9KA,SAAAnE,EAAAoE,GACA,GAAApE,IAAAK,EAAAL,KAAAoE,EACA,UAAAhE,MAAAI,GA+KA6D,CAAAJ,EAAAxC,MAAAzB,SAAAiE,EAAAP,MAEAO,EAAAK,cAAAL,EAAAK,cAAAC,KAAAN,GACAA,EAAAO,mBAAAP,EAAAQ,0BAMAR,EAAAS,+BAAkDtI,OAAAsC,EAAA,EAAAtC,CAAgB6H,EAAAO,mBAAA,SAAAP,EAAAK,cAAA,CAA6DK,SAAA,IAE/HV,EAAAW,+BAAkDxI,OAAAsC,EAAA,EAAAtC,CAAgByI,OAAA,SAAAZ,EAAAK,cAAA,CAA0CK,SAAA,IAE5GV,EAAAK,cAAA,UA5BA,IAkCG,CACHvC,IAAA,4BACAxF,MAAA,WAKA,OAJA,SAAAuI,GACA/E,EAAA+E,EAAA9E,WAFA,IAOG,CACH+B,IAAA,qBACAxF,MAAA,WA8BA,OA7BA,WACA,IAAAwI,EAAA/H,KAEA6F,EAAAqB,aAIAlH,KAAAwH,qBAYAxH,KAAAmH,mBAIAnH,KAAAmH,iBAAAxD,EAAA,WACAoE,EAAAZ,iBAAA,KACAY,EAAAT,cAAA,WA1BA,IAgCG,CACHvC,IAAA,uBACAxF,MAAA,WAkBA,OAjBA,WACAsG,EAAAqB,cAIAlH,KAAA0H,gCACA1H,KAAA0H,iCAEA1H,KAAA4H,gCACA5H,KAAA4H,iCAGA5H,KAAAmH,kBACAnH,KAAAmH,qBAdA,IA8BG,CACHpC,IAAA,0BACAxF,MAAA,WAmCA,OAlCA,WACA,IAAAyI,EAAAhI,KAAAyE,MACAa,EAAA0C,EAAA1C,WACAkC,EAAAQ,EAAAR,mBAGA,GAAAA,EACA,OA/LA,SAAAA,GAIA,iBAAAA,EACAlG,EAAAuG,OAGAL,EAuLAS,CAAAT,GAKA,IAFA,IAAAU,EAAAlI,KAAA0G,KAEAwB,EAAAC,YAAA,CAGA,IAFAD,IAAAC,cAEAC,SAAAC,KAEA,OAAAR,OAGA,IAAAS,EAAAT,OAAAU,iBAAAL,GAEAM,GADAlD,EAAAgD,EAAAG,iBAAA,cAAAH,EAAAG,iBAAA,gBACAH,EAAAG,iBAAA,YAEA,YAAAD,GAAA,WAAAA,EACA,OAAAN,EAMA,OAAAL,QAhCA,IA4CG,CACH9C,IAAA,gBACAxF,MAAA,WAoEA,OAnEA,SAAAqB,GACA,GAAAZ,KAAA0G,KAAA,CAKA,IAAAgC,EAAA1I,KAAA2I,aACAC,EA1TA,SAAAF,GACA,OAAAA,EAAAG,eAAAH,EAAAI,aAAA,EACArG,EAAAI,UAIA6F,EAAAI,aAAAJ,EAAAK,aAAAL,EAAAK,aAAAL,EAAAG,eACApG,EAAAE,OAIA+F,EAAAI,aAAAJ,EAAAM,gBAAAN,EAAAM,gBAAAN,EAAAG,eACApG,EAAAE,OAIA+F,EAAAK,aAAAL,EAAAI,aAAAJ,EAAAG,gBAAAH,EAAAM,eACAvG,EAAAE,OAGA+F,EAAAG,eAAAH,EAAAK,YACAtG,EAAAG,MAGA8F,EAAAK,YAAAL,EAAAI,YACArG,EAAAC,MAGAD,EAAAI,UA8RAoG,CAAAP,GACAQ,EAAAlJ,KAAAmJ,kBAUA,GAFAnJ,KAAAmJ,kBAAAP,EAEAM,IAAAN,EAAA,CAKA,IAAAQ,EAAA,CACAR,kBACAM,mBACAtI,QACAmI,YAAAL,EAAAK,YACAC,eAAAN,EAAAM,eACAF,YAAAJ,EAAAI,YACAD,eAAAH,EAAAG,gBAEA7I,KAAAyE,MAAAgB,iBAAAW,KAAApG,KAAAoJ,GAEAR,IAAAnG,EAAAE,OACA3C,KAAAyE,MAAAc,QAAAa,KAAApG,KAAAoJ,GACSF,IAAAzG,EAAAE,QACT3C,KAAAyE,MAAAe,QAAAY,KAAApG,KAAAoJ,GAGA,IAAAC,EAAAH,IAAAzG,EAAAG,OAAAgG,IAAAnG,EAAAC,MACA4G,EAAAJ,IAAAzG,EAAAC,OAAAkG,IAAAnG,EAAAG,MAEA5C,KAAAyE,MAAAiB,oBAAA2D,GAAAC,KAGAtJ,KAAAyE,MAAAc,QAAAa,KAAApG,KAAA,CACA4I,gBAAAnG,EAAAE,OACAuG,mBACAtI,QACAmI,YAAAL,EAAAK,YACAC,eAAAN,EAAAM,eACAF,YAAAJ,EAAAI,YACAD,eAAAH,EAAAG,iBAEA7I,KAAAyE,MAAAe,QAAAY,KAAApG,KAAA,CACA4I,kBACAM,iBAAAzG,EAAAE,OACA/B,QACAmI,YAAAL,EAAAK,YACAC,eAAAN,EAAAM,eACAF,YAAAJ,EAAAI,YACAD,eAAAH,EAAAG,qBA/DA,IAsEG,CACH9D,IAAA,aACAxF,MAAA,WA8CA,OA7CA,WACA,IAAA+F,EAAAtF,KAAAyE,MAAAa,WAEAiE,EAAAvJ,KAAA0G,KAAA8C,wBACAC,EAAAF,EAAAE,KACAC,EAAAH,EAAAG,IACAC,EAAAJ,EAAAI,MACAC,EAAAL,EAAAK,OAEAb,EAAAzD,EAAAmE,EAAAC,EACAV,EAAA1D,EAAAqE,EAAAC,EAEA5H,OAAA,EACA6H,OAAA,EACA7J,KAAAwH,qBAAAK,QACA7F,EAAAsD,EAAAuC,OAAAiC,WAAAjC,OAAAkC,YACAF,EAAA,IAEA7H,EAAAsD,EAAAtF,KAAAwH,mBAAAwC,YAAAhK,KAAAwH,mBAAAyC,aACAJ,EAAAvE,EAAAtF,KAAAwH,mBAAAgC,wBAAAC,KAAAzJ,KAAAwH,mBAAAgC,wBAAAE,KAUA,IAAAQ,EAAAlK,KAAAyE,MACAY,EAAA6E,EAAA7E,aAOA,OACA0D,cACAC,iBACAF,YAAAe,EAPA/H,EAFAoI,EAAA9E,UAEApD,GAQA6G,eANAgB,EAAA7H,EADAF,EAAAuD,EAAArD,KAnCA,IAqDG,CACH+C,IAAA,SACAxF,MAAA,WAmCA,OAlCA,WACA,IAAA4K,EAAAnK,KAEAgD,EAAAhD,KAAAyE,MAAAzB,SAGA,IAAAA,EAGA,OAAiBxB,EAAAyB,EAAKmH,cAAA,QAAwBhD,IAAApH,KAAAyG,WAAA6B,MAAA,CAA+B+B,SAAA,KAG7E,GAAAhH,EAAAL,IAAsC5D,OAAAyC,EAAA,aAAAzC,CAAY4D,EAAAO,MAAA,CAClD,IAAA6D,EACA,SAAAc,GACAiC,EAAA1D,WAAAyB,GACAlF,EAAAoE,MACA,mBAAApE,EAAAoE,IACApE,EAAAoE,IAAAc,GAEAlF,EAAAoE,IAAAkD,QAAApC,IAQA,OAAiB1G,EAAAyB,EAAKsH,aAAAvH,EAAA,CAAyBoE,QAG/C,OAAe5F,EAAAyB,EAAKsH,aAAAvH,EAAA,CAAyBwH,SAAAxK,KAAAyG,cAhC7C,MAuCAZ,EA5VA,GAgWAA,EAAA4E,UAAA,CACAzH,SAAYpB,EAAAqB,EAASiF,KACrB7G,MAASO,EAAAqB,EAASyH,KAClBnF,QAAW3D,EAAAqB,EAAS0H,KACpBnF,QAAW5D,EAAAqB,EAAS0H,KACpBlF,iBAAoB7D,EAAAqB,EAAS0H,KAC7BjF,kBAAqB9D,EAAAqB,EAASyH,KAC9BlD,mBAAsB5F,EAAAqB,EAAS2H,IAC/BtF,WAAc1D,EAAAqB,EAASyH,KASvBtF,UAAaxD,EAAAqB,EAAS4H,UAAA,CAAYjJ,EAAAqB,EAAS6H,OAASlJ,EAAAqB,EAAS8H,SAG7D1F,aAAgBzD,EAAAqB,EAAS4H,UAAA,CAAYjJ,EAAAqB,EAAS6H,OAASlJ,EAAAqB,EAAS8H,UAGhElF,EAAAnD,MAAAD,EAAAC,MACAmD,EAAAjD,MAAAH,EAAAG,MACAiD,EAAAlD,OAAAF,EAAAE,OACAkD,EAAAhD,UAAAJ,EAAAI,UACAgD,EAAAqB,UAAA,WACA,uBAAAW,OACA,OAAAA,QAGAhC,EAAAV,eACAU,EAAAmF,YAAA,WAEeC,EAAA,yDC7nBfxL,EAAAyL,EAAAD,EAAA,sBAAAE,IAAA,IAAAC,IAAA,oBAAAvD,gBAAAO,WAAAP,OAAAO,SAAAgC,eAmCA,IAAAiB,OAAA,EAEA,SAAAC,IAIA,YAHAC,IAAAF,IACAA,EAnCA,WACA,IAAAD,EACA,SAGA,IAAAvD,OAAAsD,mBAAAtD,OAAA2D,sBAAApM,OAAAC,eACA,SAGA,IAAAoM,GAAA,EACA,IACA,IAAAC,EAAAtM,OAAAC,eAAA,GAAuC,WAEvCsM,IACA,WACAF,GAAA,KAMAG,EAAA,aACA/D,OAAAsD,iBAAA,0BAAAS,EAAAF,GACA7D,OAAA2D,oBAAA,0BAAAI,EAAAF,GACG,MAAAlL,IAIH,OAAAiL,EAOAI,IAEAR,EAiDA,SAAAS,EAAAC,GACAA,EAAAC,WAAAD,EAAAE,eAEAF,EAAAE,aAAAF,EAAAC,SAAA1J,SAIA,SAAA4J,EAAA1H,GACAxE,KAAAwE,SACAxE,KAAAmM,OAAA,GAGAD,EAAAhM,UAAAkM,iBAAA,WAeA,OAdA,SAAAC,EAAAC,GACA,IAvCAC,EAuCAxH,EAAAyH,OAAAH,GAAA,IAAAG,QAvCAD,EAuCAD,IAhCA,IAAAC,EACA,KAWAA,EAAAE,SAAA,IACAF,EAAA5E,SAAA,IACA4E,EAAAG,MAAA,GAnBA,GA+CA,OARA1M,KAAAmM,OAAApH,KACA/E,KAAAmM,OAAApH,GAAA,CACAiH,SAAA,GACAW,iBAAApB,GAEAvL,KAAAmM,OAAApH,GAAAkH,aAAAjM,KAAAmM,OAAApH,GAAAiH,UAGAhM,KAAAmM,OAAApH,IAZA,GAkBAmH,EAAAhM,UAAAyM,YAAA,WAeA,OAdA,SAAAN,EAAAC,EAAA1L,GACA,IAAAmL,EAAA/L,KAAAoM,iBAAAC,EAAAC,GACAP,EAAAC,SAAAD,EAAAE,aACAF,EAAAC,SAAAjL,QAAA,SAAA6L,GACAA,GAKAA,EAAAhM,MAVA,GAkBAsL,EAAAhM,UAAA2M,IAAA,WAoDA,OAnDA,SAAAR,EAAArL,EAAAsL,GACA,IAAApG,EAAAlG,KAGA+L,EAAA/L,KAAAoM,iBAAAC,EAAAC,GAEAR,EAAAC,GAEA,IAAAA,EAAAE,aAAA7H,SACA2H,EAAAY,YAAA3M,KAAA2M,YAAApF,KAAAvH,KAAAqM,EAAAC,GAEAtM,KAAAwE,OAAA2G,iBAAAkB,EAAAN,EAAAY,YAAAL,IAGAP,EAAAE,aAAA9K,KAAAH,GAEA,IAAAgD,GAAA,EAgCA,OA9BA,WACA,GAAAA,EAAA,CAIAA,GAAA,EAEA8H,EAAAC,GACA,IAAA9H,EAAA8H,EAAAE,aAAA/H,QAAAlD,GACA+K,EAAAE,aAAA9H,OAAAF,EAAA,GAEA,IAAA8H,EAAAE,aAAA7H,SAIA8B,EAAA1B,QAMA0B,EAAA1B,OAAAgH,oBAAAa,EAAAN,EAAAY,YAAAL,GAGAP,EAAAY,iBAAApB,MA3CA,GAuDA,IAAAuB,EAAA,mCAGA,SAAA3B,EAAA3G,EAAA6H,EAAArL,EAAAsL,GACA9H,EAAAsI,KAEAtI,EAAAsI,GAAA,IAAAZ,EAAA1H,IAEA,IAAA+H,EA7JA,SAAAQ,GACA,GAAAA,EAIA,OAAAzB,IAQAyB,IAHAA,EAAAN,QAmJAO,CAAAV,GACA,OAAA9H,EAAAsI,GAAAD,IAAAR,EAAArL,EAAAuL,sCCvMAU,EAAA3N,QAAmBG,EAAQ,uCCMdL,OAAAC,eAAAC,EAAA,cAA4CC,OAAA,IACzD,IAAA2N,EAAA,mBAAAC,eAAAC,IAAAC,EAAAH,EAAAC,OAAAC,IAAA,uBAAAlC,EAAAgC,EAAAC,OAAAC,IAAA,sBAAA5M,EAAA0M,EAAAC,OAAAC,IAAA,wBAAAE,EAAAJ,EAAAC,OAAAC,IAAA,2BAAAG,EAAAL,EAAAC,OAAAC,IAAA,wBAAAI,EAAAN,EAAAC,OAAAC,IAAA,wBAAAK,EAAAP,EAAAC,OAAAC,IAAA,uBAAAM,EAAAR,EAAAC,OAAAC,IAAA,0BAAAO,EAAAT,EAAAC,OAAAC,IAAA,+BAAA3L,EAAAyL,EAAAC,OAAAC,IAAA,2BAAAQ,EAAAV,EAAAC,OAAAC,IAAA,wBAAAS,EAAAX,EAAAC,OAAAC,IAAA,cACA,MAAAU,EAAAZ,EAAAC,OAAAC,IAAA,oBAAyC,SAAAW,EAAA9K,GAAc,oBAAAA,GAAA,OAAAA,EAAA,CAAkC,IAAA+K,EAAA/K,EAAAgL,SAAiB,OAAAD,GAAU,KAAAX,EAAA,OAAApK,IAAAM,MAA0B,KAAAmK,EAAA,KAAAC,EAAA,KAAAnN,EAAA,KAAA+M,EAAA,KAAAD,EAAA,KAAAM,EAAA,OAAA3K,EAAmD,eAAAA,OAAAgL,UAAkC,KAAAR,EAAA,KAAAhM,EAAA,KAAA+L,EAAA,OAAAvK,EAA8B,eAAA+K,GAAkB,KAAAF,EAAA,KAAAD,EAAA,KAAA3C,EAAA,OAAA8C,IAAgC,SAAAE,EAAAjL,GAAc,OAAA8K,EAAA9K,KAAA0K,EAAgBrO,EAAA6O,OAAAJ,EAAiBzO,EAAA8O,UAAAV,EAAoBpO,EAAA+O,eAAAV,EAAyBrO,EAAAgP,gBAAAb,EAA0BnO,EAAAiP,gBAAAf,EAA0BlO,EAAAkP,QAAAnB,EAAkB/N,EAAAmP,WAAAhN,EACrdnC,EAAAoP,SAAAlO,EAAmBlB,EAAAqP,KAAAb,EAAexO,EAAAsP,KAAAf,EAAevO,EAAAuP,OAAA3D,EAAiB5L,EAAAwP,SAAAvB,EAAmBjO,EAAAyP,WAAAzB,EAAqBhO,EAAA0P,SAAApB,EAAmBtO,EAAA2P,mBAAA,SAAAhM,GAAuC,uBAAAA,GAAA,mBAAAA,OAAAzC,GAAAyC,IAAA0K,GAAA1K,IAAAsK,GAAAtK,IAAAqK,GAAArK,IAAA2K,GAAA,iBAAA3K,GAAA,OAAAA,MAAAgL,WAAAH,GAAA7K,EAAAgL,WAAAJ,GAAA5K,EAAAgL,WAAAT,GAAAvK,EAAAgL,WAAAR,GAAAxK,EAAAgL,WAAAxM,IAAsMnC,EAAA4P,YAAA,SAAAjM,GAAgC,OAAAiL,EAAAjL,IAAA8K,EAAA9K,KAAAyK,GAAuBpO,EAAA6P,iBAAAjB,EAA2B5O,EAAA8P,kBAAA,SAAAnM,GAAsC,OAAA8K,EAAA9K,KAAAwK,GAClenO,EAAA+P,kBAAA,SAAApM,GAAsC,OAAA8K,EAAA9K,KAAAuK,GAAiBlO,EAAAgQ,UAAA,SAAArM,GAA8B,uBAAAA,GAAA,OAAAA,KAAAgL,WAAAZ,GAAqD/N,EAAAiQ,aAAA,SAAAtM,GAAiC,OAAA8K,EAAA9K,KAAAxB,GAAiBnC,EAAAkQ,WAAA,SAAAvM,GAA+B,OAAA8K,EAAA9K,KAAAzC,GAAiBlB,EAAAmQ,OAAA,SAAAxM,GAA2B,OAAA8K,EAAA9K,KAAA6K,GAAiBxO,EAAAoQ,OAAA,SAAAzM,GAA2B,OAAA8K,EAAA9K,KAAA4K,GAAiBvO,EAAAqQ,SAAA,SAAA1M,GAA6B,OAAA8K,EAAA9K,KAAAiI,GAAiB5L,EAAAsQ,WAAA,SAAA3M,GAA+B,OAAA8K,EAAA9K,KAAAsK,GAAiBjO,EAAAuQ,aAAA,SAAA5M,GAAiC,OAAA8K,EAAA9K,KAAAqK,GACnchO,EAAAwQ,WAAA,SAAA7M,GAA+B,OAAA8K,EAAA9K,KAAA2K,qCCZ/B,IAAAmC,EAA6BtQ,EAAQ,GAErCH,EAAA0Q,YAAA,EACA1Q,EAAAK,aAAA,EAEA,IA+CAsQ,EA/CAC,EAAAH,EAA6CtQ,EAAQ,IAErD0Q,EAAAJ,EAAqDtQ,EAAQ,KAE7D2Q,EAAAL,EAA4DtQ,EAAQ,KAEpE4Q,EAAAN,EAAuCtQ,EAAQ,KAE/C6Q,EAAAP,EAAoCtQ,EAAQ,IAE5C8Q,EAAAR,EAAwCtQ,EAAQ,IAGhD+Q,EAAA,SAAA/L,GACA,IAAAgM,GAAA,EAAAJ,EAAA1Q,SAAA,GAAgD8E,GAYhD,OAVAgM,EAAAC,cACAD,EAAAE,MAAAF,EAAAC,mBACAD,EAAAC,aAGAD,EAAAG,QACAH,EAAAI,MAAAJ,EAAAG,aACAH,EAAAG,OAGAH,GAKAK,EAAA1R,OAAAyH,OAAA,IAEAkK,EAAA,SAAAtM,GACA,IAAAgM,EAAAD,EAAA/L,GAEAuM,EAAAP,EAAAI,MAAAJ,EAAAI,MAAAG,IAAAP,EAAAE,MAAAK,IACA,OAAAF,EAAAE,KAAA,GAWA/Q,EAAA,IAAAgR,QAwBA,IAAAC,EAAA,SAAAC,EAAAvN,GACA,IAAAwN,QAtBA,IAAAnB,GAAA,oBAAApI,eAAAwJ,uBACApB,EAAA,IAAApI,OAAAwJ,qBAAA,SAAAC,GACAA,EAAAvQ,QAAA,SAAAwQ,GACA,GAAAtR,EAAAuR,IAAAD,EAAA/M,QAAA,CACA,IAAAZ,EAAA3D,EAAA0L,IAAA4F,EAAA/M,SAEA+M,EAAAE,gBAAAF,EAAAG,kBAAA,KACAzB,EAAA0B,UAAAJ,EAAA/M,QACAvE,EAAA2R,OAAAL,EAAA/M,QACAZ,SAIK,CACLiO,WAAA,WAIA5B,GAWA,OALAmB,IACAA,EAAAU,QAAAX,GACAlR,EAAA8R,IAAAZ,EAAAvN,IAGA,WACAwN,EAAAO,UAAAR,GACAlR,EAAA2R,OAAAT,KAIAa,EAAA,SAAAvN,GAGA,IAAAuM,EAAAvM,EAAAuM,IAAA,QAAAvM,EAAAuM,IAAA,eAEAJ,EAAAnM,EAAAmM,MAAA,UAAAnM,EAAAmM,MAAA,QACAqB,EAAAxN,EAAAwN,WAAA,sCAAAxN,EAAAwN,WAAA,KAAArB,EAAA,QACAsB,EAAAzN,EAAAyN,OAAA,WAAAzN,EAAAyN,OAAA,QACAC,EAAA1N,EAAA0N,MAAA,UAAA1N,EAAA0N,MAAA,QACAC,EAAA3N,EAAA2N,IAAA,QAAA3N,EAAA2N,IAAA,eAKA,kBAAAH,EAAA,SAHAxN,EAAA4N,MAAA,UAAA5N,EAAA4N,MAAA,UACA5N,EAAA6N,OAAA,WAAA7N,EAAA6N,OAAA,SAEA1B,EAAAsB,EAAAlB,EAAAoB,EAAAD,GADA1N,EAAA8N,YAAA,gBAAA9N,EAAA8N,YAAA,SACA,+HAGAC,EAAAlC,EAAA3Q,QAAA8S,WAAA,SAAAhO,EAAA2C,GACA,IAAAwJ,EAAAnM,EAAAmM,MACAsB,EAAAzN,EAAAyN,OACAlB,EAAAvM,EAAAuM,IACA1I,EAAA7D,EAAA6D,MACAoK,EAAAjO,EAAAiO,OACAC,EAAAlO,EAAAkO,QACAC,GAAA,EAAAxC,EAAAzQ,SAAA8E,EAAA,qDACA,OAAA6L,EAAA3Q,QAAAyK,cAAA,SAAAiG,EAAA1Q,SAAA,CACAiR,QACAsB,SACAlB,OACG4B,EAAA,CACHF,SACAC,UACAvL,MACAkB,OAAA,EAAA+H,EAAA1Q,SAAA,CACAkT,SAAA,WACAnJ,IAAA,EACAD,KAAA,EACA4I,MAAA,OACAC,OAAA,OACAQ,UAAA,QACAC,eAAA,UACKzK,QAILkK,EAAA/H,UAAA,CACAnC,MAAAiI,EAAA5Q,QAAAqT,OACAL,QAAApC,EAAA5Q,QAAAgL,KACA+H,OAAAnC,EAAA5Q,QAAAgL,MAGA,IAAAsI,EAEA,SAAAC,GAGA,SAAAD,EAAAxO,GACA,IAAAyB,EAEAA,EAAAgN,EAAA9M,KAAApG,KAAAyE,IAAAzE,KAEA,IAAAmT,GAAA,EAGAC,GAAA,EACAC,EAAA5O,EAAA4O,OAGAC,EAAAvC,EAAAtM,IAEA6O,GAAA,oBAAAzL,eAAAwJ,uBACA8B,GAAA,EACAC,GAAA,GAIA,oBAAAvL,SACAsL,GAAA,GAIA1O,EAAA8O,WACAJ,GAAA,EACAC,GAAA,GAGA,IAAAI,IAAA/O,EAAA8O,WAAA9O,EAAA4O,QAaA,OAZAnN,EAAAuN,MAAA,CACAN,YACAO,WA3BA,EA4BAC,WA3BA,EA4BAP,cACAC,SACAG,cACAF,cAEApN,EAAA0N,SAAAtD,EAAA3Q,QAAAkU,YACA3N,EAAA4N,kBAAA5N,EAAA4N,kBAAAvM,MAAA,EAAA4I,EAAAxQ,UAAA,EAAAwQ,EAAAxQ,SAAAuG,KACAA,EAAA6N,UAAA7N,EAAA6N,UAAAxM,MAAA,EAAA4I,EAAAxQ,UAAA,EAAAwQ,EAAAxQ,SAAAuG,KACAA,GA7CA,EAAAgK,EAAAvQ,SAAAsT,EAAAC,GAgDA,IAAAc,EAAAf,EAAA/S,UAmOA,OAjOA8T,EAAAC,kBAAA,WAOA,GANAjU,KAAAyT,MAAAN,WAAA,mBAAAnT,KAAAyE,MAAAyP,aACAlU,KAAAyE,MAAAyP,YAAA,CACAC,UAAApD,EAAA/Q,KAAAyE,SAIAzE,KAAAyE,MAAA8O,SAAA,CACA,IAAAa,EAAApU,KAAA4T,SAAAtJ,QAEA8J,KAAAC,UACArU,KAAA8T,sBAKAE,EAAAM,qBAAA,WACAtU,KAAAuU,kBACAvU,KAAAuU,oBAIAP,EAAAD,UAAA,SAAA3M,GACA,IAAAH,EAAAjH,KAEAA,KAAAyT,MAAAL,aAAAhM,IACApH,KAAAuU,iBAAArD,EAAA9J,EAAA,WACA,IAAAoN,EAAAzD,EAAA9J,EAAAxC,OAEAwC,EAAAwM,MAAAN,WAAA,mBAAAlM,EAAAxC,MAAAyP,aACAjN,EAAAxC,MAAAyP,YAAA,CACAC,UAAAK,IAQAvN,EAAAwN,SAAA,CACAtB,WAAA,GACS,WACT,OAAAlM,EAAAwN,SAAA,CACAf,UAAAc,EACAb,YAAA1M,EAAA2M,SAAAtJ,QAAAoK,mBAOAV,EAAAF,kBAAA,WAzMA,IAAArP,EACAgM,EAEAO,EAHAvM,EA0MAzE,KAAAyE,MAzMAgM,EAAAD,EAAA/L,GAEAuM,EAAAP,EAAAI,MAAAJ,EAAAI,MAAAG,IAAAP,EAAAE,MAAAK,IACAF,EAAAE,IAAA,EAuMAhR,KAAAyU,SAAA,CACAf,WAAA,IAGA1T,KAAAyT,MAAAH,YACAtT,KAAAyU,SAAA,CACApB,QAAA,IAIArT,KAAAyE,MAAAiO,QACA1S,KAAAyE,MAAAiO,UAIAsB,EAAAW,OAAA,WACA,IAAAC,EAAApE,EAAAxQ,KAAAyE,OACA0N,EAAAyC,EAAAzC,MACAC,EAAAwC,EAAAxC,IACAyC,EAAAD,EAAAC,UACAC,EAAAF,EAAAtM,MACAA,OAAA,IAAAwM,EAAA,GAAmDA,EACnDC,EAAAH,EAAAI,SACAA,OAAA,IAAAD,EAAA,GAAwDA,EACxDE,EAAAL,EAAAM,iBACAA,OAAA,IAAAD,EAAA,GAAgEA,EAChEE,EAAAP,EAAAO,qBACAtE,EAAA+D,EAAA/D,MACAF,EAAAiE,EAAAjE,MACAyE,EAAAR,EAAAQ,gBACAC,EAAAT,EAAAS,IACAC,EAAAV,EAAAU,SAEAC,EAAAvV,KAAAyT,MAAAC,YAAA,IAAA1T,KAAAyT,MAAAJ,OACAmC,GAAA,IAAAxV,KAAAyT,MAAAJ,SAAArT,KAAAyT,MAAAE,UAEA8B,GAAA,EAAApF,EAAA1Q,SAAA,CACA+V,QAAAH,EAAA,IACAI,WAAAH,EAAA,uBACKR,GACLY,EAAA,kBAAAR,EAAA,YAAAA,EACAS,EAAA,CACAC,gBAPA,QASAC,GAAA,EAAA1F,EAAA1Q,SAAA,CACA+V,QAAA1V,KAAAyT,MAAAC,UAAA,KACK8B,GAAAK,EAAAb,EAAAE,GACLc,EAAA,CACA7D,QACAC,IAAApS,KAAAyT,MAAAN,UAAA,GAAAf,EACA9J,MAAAyN,EACAlB,UAAAM,GAGA,GAAAtE,EAAA,CACA,IAAAoF,EAAApF,EACA,OAAAP,EAAA3Q,QAAAyK,cAAAiL,EAAA,CACAR,cAAA,4BACAvM,OAAA,EAAA+H,EAAA1Q,SAAA,CACAkT,SAAA,WACArK,SAAA,UACSF,GACTlB,IAAApH,KAAA+T,UACAhP,IAAA,SAAAzE,KAAA4V,UAAAD,EAAA/D,SACO5B,EAAA3Q,QAAAyK,cAAAiL,EAAA,CACP/M,MAAA,CACA+J,MAAA,OACA8D,cAAA,IAAAF,EAAAG,YAAA,OAEOR,GAAAtF,EAAA3Q,QAAAyK,cAAAiL,EAAA,CACPlD,QACA7J,OAAA,EAAA+H,EAAA1Q,SAAA,CACAyV,gBAAAQ,EACA/C,SAAA,WACAnJ,IAAA,EACAE,OAAA,EACA8L,QAAA1V,KAAAyT,MAAAC,UAAA,IACA/J,MAAA,EACAF,KAAA,GACS+L,GAAAK,KACFI,EAAAI,QAAA/F,EAAA3Q,QAAAyK,cAAAoI,GAAA,EAAAnC,EAAA1Q,SAAA,CACPqR,IAAAiF,EAAAI,QACOL,IAAAC,EAAAK,WAAAhG,EAAA3Q,QAAAyK,cAAAoI,GAAA,EAAAnC,EAAA1Q,SAAA,CACPqR,IAAAiF,EAAAK,WACON,IAAAhW,KAAAyT,MAAAN,WAAA7C,EAAA3Q,QAAAyK,cAAA,eAAA6L,EAAAhE,YAAA3B,EAAA3Q,QAAAyK,cAAA,UACP7G,KAAA,aACA2O,OAAA+D,EAAAhE,WACArB,MAAAqF,EAAArF,QACON,EAAA3Q,QAAAyK,cAAAoI,EAAA,CACPJ,MACAD,QACAvB,MAAAqF,EAAArF,MACAI,IAAAiF,EAAAjF,IACAuB,YAAAvS,KAAAyE,MAAA8N,YACAL,OAAA+D,EAAA/D,OACA5J,MAAAmN,EACArO,IAAApH,KAAA4T,SACAlB,OAAA1S,KAAA8T,kBACAnB,QAAA3S,KAAAyE,MAAAkO,QACA2C,cACOtV,KAAAyT,MAAAD,aAAAlD,EAAA3Q,QAAAyK,cAAA,YACPmM,wBAAA,CACAC,OAAAxE,GAAA,EAAA3B,EAAA1Q,SAAA,CACAyS,MACAD,SACW8D,QAKX,GAAAtF,EAAA,CACA,IAAA8F,EAAA9F,EACA+F,GAAA,EAAArG,EAAA1Q,SAAA,CACAkT,SAAA,WACArK,SAAA,SACAmO,QAAA,eACAtE,MAAAoE,EAAApE,MACAC,OAAAmE,EAAAnE,QACOhK,GAMP,MAJA,YAAAA,EAAAqO,gBACAD,EAAAC,QAGArG,EAAA3Q,QAAAyK,cAAAiL,EAAA,CACAR,cAAA,4BACAvM,MAAAoO,EACAtP,IAAApH,KAAA+T,UACAhP,IAAA,SAAAzE,KAAA4V,UAAAO,EAAAvE,SACO0D,GAAAtF,EAAA3Q,QAAAyK,cAAAiL,EAAA,CACPlD,QACA7J,OAAA,EAAA+H,EAAA1Q,SAAA,CACAyV,gBAAAQ,EACAvD,MAAAoE,EAAApE,MACAqD,QAAA1V,KAAAyT,MAAAC,UAAA,IACApB,OAAAmE,EAAAnE,QACSkD,GAAAK,KACFY,EAAAJ,QAAA/F,EAAA3Q,QAAAyK,cAAAoI,GAAA,EAAAnC,EAAA1Q,SAAA,CACPqR,IAAAyF,EAAAJ,QACOL,IAAAS,EAAAH,WAAAhG,EAAA3Q,QAAAyK,cAAAoI,GAAA,EAAAnC,EAAA1Q,SAAA,CACPqR,IAAAyF,EAAAH,WACON,IAAAhW,KAAAyT,MAAAN,WAAA7C,EAAA3Q,QAAAyK,cAAA,eAAAqM,EAAAxE,YAAA3B,EAAA3Q,QAAAyK,cAAA,UACP7G,KAAA,aACA2O,OAAAuE,EAAAxE,WACArB,MAAA6F,EAAA7F,QACON,EAAA3Q,QAAAyK,cAAAoI,EAAA,CACPJ,MACAD,QACAE,MAAAoE,EAAApE,MACAC,OAAAmE,EAAAnE,OACA1B,MAAA6F,EAAA7F,MACAI,IAAAyF,EAAAzF,IACAuB,YAAAvS,KAAAyE,MAAA8N,YACAL,OAAAuE,EAAAvE,OACA5J,MAAAmN,EACArO,IAAApH,KAAA4T,SACAlB,OAAA1S,KAAA8T,kBACAnB,QAAA3S,KAAAyE,MAAAkO,QACA2C,cACOtV,KAAAyT,MAAAD,aAAAlD,EAAA3Q,QAAAyK,cAAA,YACPmM,wBAAA,CACAC,OAAAxE,GAAA,EAAA3B,EAAA1Q,SAAA,CACAyS,MACAD,SACWsE,QAKX,aAGAxD,EApRA,CAqRC3C,EAAA3Q,QAAA2D,WAED2P,EAAA9N,aAAA,CACAoO,UAAA,EACAF,QAAA,EACAjB,IAAA,GACAiD,IAAA,OAGA,IAAAuB,EAAArG,EAAA5Q,QAAAkX,MAAA,CACAxE,MAAA9B,EAAA5Q,QAAAoL,OAAA+L,WACAxE,OAAA/B,EAAA5Q,QAAAoL,OAAA+L,WACA9F,IAAAT,EAAA5Q,QAAAmL,OAAAgM,WACA5E,OAAA3B,EAAA5Q,QAAAmL,OAAAgM,WACAT,OAAA9F,EAAA5Q,QAAAmL,OACAwL,UAAA/F,EAAA5Q,QAAAmL,OACAiM,QAAAxG,EAAA5Q,QAAAmL,OACAmH,WAAA1B,EAAA5Q,QAAAmL,SAGAkM,EAAAzG,EAAA5Q,QAAAkX,MAAA,CACAT,YAAA7F,EAAA5Q,QAAAoL,OAAA+L,WACA9F,IAAAT,EAAA5Q,QAAAmL,OAAAgM,WACA5E,OAAA3B,EAAA5Q,QAAAmL,OAAAgM,WACAlG,MAAAL,EAAA5Q,QAAAmL,OAAAgM,WACAT,OAAA9F,EAAA5Q,QAAAmL,OACAwL,UAAA/F,EAAA5Q,QAAAmL,OACAiM,QAAAxG,EAAA5Q,QAAAmL,OACAmH,WAAA1B,EAAA5Q,QAAAmL,SAGAmI,EAAAxI,UAAA,CACAiG,YAAAkG,EACAhG,MAAAoG,EACArG,MAAAiG,EACA/F,MAAAmG,EACA3D,OAAA9C,EAAA5Q,QAAA+K,KACAyH,MAAA5B,EAAA5Q,QAAAmL,OACAsH,IAAA7B,EAAA5Q,QAAAmL,OACA+J,UAAAtE,EAAA5Q,QAAAkL,UAAA,CAAA0F,EAAA5Q,QAAAmL,OAAAyF,EAAA5Q,QAAAqT,SAEAO,SAAAhD,EAAA5Q,QAAA+K,KACA6H,YAAAhC,EAAA5Q,QAAAkL,UAAA,CAAA0F,EAAA5Q,QAAAmL,OAAAyF,EAAA5Q,QAAA+K,OACApC,MAAAiI,EAAA5Q,QAAAqT,OACAgC,SAAAzE,EAAA5Q,QAAAqT,OACAkC,iBAAA3E,EAAA5Q,QAAAqT,OACAmC,qBAAA5E,EAAA5Q,QAAAmL,OACAsK,gBAAA7E,EAAA5Q,QAAAkL,UAAA,CAAA0F,EAAA5Q,QAAAmL,OAAAyF,EAAA5Q,QAAA+K,OACAgI,OAAAnC,EAAA5Q,QAAAgL,KACAgI,QAAApC,EAAA5Q,QAAAgL,KACAuJ,YAAA3D,EAAA5Q,QAAAgL,KACA0K,IAAA9E,EAAA5Q,QAAAmL,OACAwK,SAAA/E,EAAA5Q,QAAAmL,QAEA,IAAAmM,EAAAhE,EACA3T,EAAAK,QAAAsX,oCC5dA,IAAAlH,EAA6BtQ,EAAQ,GAErCL,OAAAC,eAAAC,EAAA,cACAC,OAAA,IAEAD,EAAAK,aAAA,EAEA,IAAA0Q,EAAAN,EAAuCtQ,EAAQ,KAE/CyX,EAAAnH,EAA8CtQ,EAAQ,KAEtD0X,EAAApH,EAAiDtQ,EAAQ,MAEzD2X,EAAArH,EAA8CtQ,EAAQ,MAEtD4X,EAAAtH,EAAyDtQ,EAAQ,MAEjE6X,EAAAvH,EAA8CtQ,EAAQ,MAEtD0Q,EAAAJ,EAAqDtQ,EAAQ,KAE7D8X,EAAAxH,EAA2CtQ,EAAQ,MAEnD+X,EAAAzH,EAAwCtQ,EAAQ,MAEhD8Q,EAAAR,EAAwCtQ,EAAQ,IAEhD6Q,EAAAP,EAAoCtQ,EAAQ,IAE5CgY,EAAA1H,EAAyCtQ,EAAQ,MAEjDiY,EAAA3H,EAAuCtQ,EAAQ,MAQ/C,IAAAkY,EAEA,SAAAzE,GA8BA,SAAAyE,EAAAlT,GACA,IAAAyB,EAYA,OAVA,EAAAkR,EAAAzX,SAAAK,KAAA2X,IACAzR,GAAA,EAAAmR,EAAA1X,SAAAK,MAAA,EAAAsX,EAAA3X,SAAAgY,GAAAvR,KAAApG,KAAAyE,KACAgP,MAAA,CACAmE,YAAA,GACAC,YAAA,GACAC,eAAA,IAIA5R,EAAA6R,WAAA7R,EAAA6R,WAAAxQ,MAAA,EAAA4I,EAAAxQ,SAAAuG,IACAA,EA0PA,OApSA,EAAAsR,EAAA7X,SAAAgY,EAAAzE,IACA,EAAAqE,EAAA5X,SAAAgY,EAAA,OACA5S,IAAA,YACA4G,IAAA,WACA,OACAqM,MAAAzH,EAAA5Q,QAAAsY,QAAA1H,EAAA5Q,QAAAmL,QAAAgM,WACAoB,iBAAA3H,EAAA5Q,QAAAmL,OAAAgM,WACAqB,sBAAA5H,EAAA5Q,QAAAmL,OACAxC,MAAAiI,EAAA5Q,QAAAqT,OACAoF,aAAA7H,EAAA5Q,QAAAkL,UAAA,CAAA0F,EAAA5Q,QAAAmL,OAAAyF,EAAA5Q,QAAAgL,OACA5I,OAAAwO,EAAA5Q,QAAAoL,OACAsN,OAAA9H,EAAA5Q,QAAAmL,OACAwN,SAAA/H,EAAA5Q,QAAAgL,QAGG,CACH5F,IAAA,eACA4G,IAAA,WACA,OACAqM,MAAA,GACAE,iBAAA,GACA5P,MAAA,GACA8P,aAAA,KACArW,OAAA,EACAuW,SAAA,mBAqBA,EAAAf,EAAA5X,SAAAgY,EAAA,EACA5S,IAAA,iBACAxF,MAAA,SAAAyY,GAIA,OAHAA,EAAAO,IAAA,SAAAzU,GACA,OAAAsE,SAAAoQ,eAAA1U,OAKG,CACHiB,IAAA,aACAxF,MAAA,SAAAkZ,EAAAC,GAGA,IAFA,IAAAC,EAAA,GAEAjU,EAAA,EAAAkU,EAAAH,EAAArU,OAAyCM,EAAAkU,EAASlU,IAClDiU,EAAAjU,GAAAgU,EAGA,OAAAC,IAEG,CACH5T,IAAA,cACAxF,MAAA,WACA,OAAAS,KAAA6Y,sBAAAC,UAAA,IAEG,CACH/T,IAAA,sBACAxF,MAAA,WACA,IAAAwZ,EAAA3Q,SACAiQ,EAAArY,KAAAyE,MAAA4T,OAGA,OACAS,UAHAT,EAAAU,EAAAC,cAAAX,GAAAS,UAAAC,EAAAE,gBAAAH,WAAAC,EAAA1Q,KAAAF,WAAA2Q,WAAAC,EAAA1Q,KAAAyQ,UAIAI,aAHAb,EAAAU,EAAAC,cAAAX,GAAAa,aAAAH,EAAAE,gBAAAC,cAAAH,EAAA1Q,KAAAF,WAAA+Q,cAAAH,EAAA1Q,KAAA6Q,gBAMG,CACHnU,IAAA,qBACAxF,MAAA,SAAA4Z,GAOA,IANA,IAAAC,EAAA,GACAC,EAAA,GACAC,EAAA,GACA1B,EAAAuB,GAAAnZ,KAAAyT,MAAAmE,YACA2B,GAAA,EAEA7U,EAAA,EAAAkU,EAAAhB,EAAAxT,OAA+CM,EAAAkU,EAASlU,IAAA,CACxD,IAAA8U,EAAA5B,EAAAlT,GACA+U,GAAAF,GAAAvZ,KAAA0Z,UAAAF,GAEAC,GACAF,GAAA,EACAH,EAAAjY,KAAAqY,IAEAH,EAAAlY,KAAAqY,GAGA,IAAAG,EAAAjV,IAAAkU,EAAA,EAEAgB,EAAA5Z,KAAA6Z,cAGA7Z,KAAA8Z,eAAA9Z,KAAA0Z,UAAAF,KAAAC,GAAAE,GAAAC,IAGAP,EAAAU,MACAV,EAAAlY,KAAA6Y,MAAAX,GAAA,EAAAlC,EAAAxX,SAAAyZ,IACAA,EAAA,CAAAI,GACAF,EAAAtZ,KAAAia,WAAAX,GAAA,GACAG,GAAA,GAGAH,EAAAnY,KAAAsY,GAGA,OACAS,OAAAd,EACAe,QAAAd,EACAC,iBACAc,aAAApa,KAAAyE,MAAA0T,uBAAAnY,KAAAqa,iBAAAf,MAGG,CACHvU,IAAA,YACAxF,MAAA,SAAA4R,GACA,IAAAA,EACA,SAGA,IAGAmJ,EAHAC,EAAAva,KAAAyE,MACA4T,EAAAkC,EAAAlC,OACAtW,EAAAwY,EAAAxY,OAGAsW,IACAiC,EAAAlS,SAAA4Q,cAAAX,GAAA7O,yBAGA,IAAAgR,EAAArJ,EAAA3H,wBACAiR,EAAApC,EAAAiC,EAAAhI,OAAAzK,OAAAkC,YAGA+O,EADA9Y,KAAA6Y,sBACAC,UAEA4B,EAAA5B,EAAA2B,EACAE,EAAAtC,EAAAmC,EAAA9Q,IAAAoP,EAAAwB,EAAA5Q,IAAA3H,EAAAyY,EAAA9Q,IAAAoP,EAAA/W,EACA6Y,EAAAD,EAAAxJ,EAAAlH,aACA,OAAA0Q,EAAAD,GAAAE,EAAA9B,IAEG,CACH/T,IAAA,cACAxF,MAAA,WACA,IAAA8Y,EAAArY,KAAAyE,MAAA4T,OAEAwC,EAAA7a,KAAA6Y,sBACAC,EAAA+B,EAAA/B,UACAI,EAAA2B,EAAA3B,aAIA,OADAJ,GADAT,EAAAjQ,SAAA4Q,cAAAX,GAAA7O,wBAAA8I,OAAAzK,OAAAkC,cACAmP,IAGG,CACHnU,IAAA,mBACAxF,MAAA,SAAA+Z,GACA,IAAAA,EAAAwB,KAAA,SAAAhX,GACA,OAAAA,IAEA,OAAAwV,EAGA,IAAAyB,GAAA,EASA,OARAzB,EAAAf,IAAA,SAAAzU,GACA,OAAAA,IAAAiX,GACAA,GAAA,GACA,IAGAA,MAIG,CACHhW,IAAA,OACAxF,MAAA,SAAA4Z,GACA,IAAAlS,EAAAjH,KAEAgb,EAAAhb,KAAAib,mBAAA9B,GAEA+B,EAAAlb,KAAAyT,MAAAoE,YACA7X,KAAAyU,SAAA,CACAoD,YAAAmD,EAAA1B,eACAxB,eAAAkD,EAAAZ,cACO,WACPnT,EAAAkU,QAAAD,OAGG,CACHnW,IAAA,UACAxF,MAAA,SAAA6b,GArNA,IAAAnY,EAAAiK,GAAAjK,EAsNAjD,KAAAyT,MAAAoE,YAtNA3K,EAsNAkO,EArNAnY,EAAAmB,SAAA8I,EAAA9I,QAAAnB,EAAAoY,MAAA,SAAAvX,EAAAG,GACA,OAAAH,IAAAoJ,EAAAjJ,OAwNAjE,KAAAyE,MAAA6T,SAAAtY,KAAAyT,MAAAmE,YAAA5X,KAAAyT,MAAAoE,YAAA3T,SAAA,OAEG,CACHa,IAAA,aACAxF,MAAA,YACA,EAAAmY,EAAA/X,SAAAK,KAAAsb,OAAA,OAEG,CACHvW,IAAA,iBACAxF,MAAA,WACA,IAAAqY,EAAA5X,KAAAub,eAAAvb,KAAAyE,MAAAuT,OAEAhY,KAAAyU,SAAA,CACAmD,gBAGA5X,KAAAsb,KAAA1D,KAEG,CACH7S,IAAA,WACAxF,MAAA,YACAS,KAAAyE,MAAA4T,OAAAjQ,SAAA4Q,cAAAhZ,KAAAyE,MAAA4T,QAAAxQ,QACA2D,oBAAA,SAAAxL,KAAA+X,cAEG,CACHhT,IAAA,UACAxF,MAAA,YACAS,KAAAyE,MAAA4T,OAAAjQ,SAAA4Q,cAAAhZ,KAAAyE,MAAA4T,QAAAxQ,QACAsD,iBAAA,SAAAnL,KAAA+X,cAEG,CACHhT,IAAA,oBACAxF,MAAA,WACAS,KAAAwb,iBAEAxb,KAAAyb,YAEG,CACH1W,IAAA,uBACAxF,MAAA,WACAS,KAAA0b,aAEG,CACH3W,IAAA,4BACAxF,MAAA,WACAS,KAAAwb,mBAEG,CACHzW,IAAA,SACAxF,MAAA,WACA,IAAAwI,EAAA/H,KAEAqV,EAAArV,KAAAyE,MAAA2T,aACAuD,EAAA3b,KAAAyE,MACAzB,EAAA2Y,EAAA3Y,SACA6R,EAAA8G,EAAA9G,UACAsD,EAAAwD,EAAAxD,sBACA7P,EAAAqT,EAAArT,MACAsT,EAAA,EAEA5D,EAAA1H,EAAA3Q,QAAAuD,SAAAqV,IAAAvV,EAAA,SAAA6Y,EAAAC,GACA,IAAAC,EAEA,IAAAF,EACA,YAGA,IAAAG,EAAAH,EAAAtY,KACAuU,EAAAK,GAAApQ,EAAA0L,MAAAqE,eAAAgE,GACAG,GAAA,EAAAxE,EAAA9X,UAAAoc,EAAA,IAAmE,EAAA7E,EAAAvX,SAAAoc,EAAA,GAAAG,OAAAL,EAAApX,MAAAoQ,WAAAgH,EAAApX,MAAAoQ,YAAA,EAAAqC,EAAAvX,SAAAoc,EAAA,GAAAG,OAAAnU,EAAAtD,MAAAyT,kBAAAnQ,EAAA0L,MAAAoE,YAAAiE,KAAA,EAAA5E,EAAAvX,SAAAoc,EAAA,GAAAG,OAAAnU,EAAAtD,MAAA0T,uBAAAL,GAAAiE,IACnE,OAAAzL,EAAA3Q,QAAAyK,cAAA4R,GAAA,EAAA3L,EAAA1Q,SAAA,GAA+Ekc,EAAApX,MAAA,CAC/EoQ,UAAAoH,EACAlX,IAAA6W,MACSC,EAAApX,MAAAzB,YAGTmZ,GAAA,EAAA1E,EAAA9X,UAAA,EAAAuX,EAAAvX,SAAA,GAA+E,GAAAuc,OAAArH,OAC/E,OAAAvE,EAAA3Q,QAAAyK,cAAAiL,EAAA,CACAR,UAAAsH,EACA7T,SACO0P,OAGPL,EArSA,CAsSCrH,EAAA3Q,QAAA2D,WAEDhE,EAAAK,QAAAgY,uBCnVA,IAAAyE,EAAwB3c,EAAQ,KAEhC4c,EAAsB5c,EAAQ,KAE9B6c,EAAwB7c,EAAQ,KAMhCwN,EAAA3N,QAJA,SAAAid,GACA,OAAAH,EAAAG,IAAAF,EAAAE,IAAAD,wBCGArP,EAAA3N,QAVA,SAAAid,GACA,GAAAC,MAAAC,QAAAF,GAAA,CACA,QAAA7X,EAAA,EAAAgY,EAAA,IAAAF,MAAAD,EAAAnY,QAAiDM,EAAA6X,EAAAnY,OAAgBM,IACjEgY,EAAAhY,GAAA6X,EAAA7X,GAGA,OAAAgY,uBCFAzP,EAAA3N,QAJA,SAAAqd,GACA,GAAAxP,OAAAyP,YAAAxd,OAAAud,IAAA,uBAAAvd,OAAAc,UAAA2c,SAAAzW,KAAAuW,GAAA,OAAAH,MAAAM,KAAAH,uBCGA1P,EAAA3N,QAJA,WACA,UAAA0G,UAAA,uECKAiH,EAAA3N,QANA,SAAAyG,EAAAf,GACA,KAAAe,aAAAf,GACA,UAAAgB,UAAA,2DCFA,IAAA+W,EAActd,EAAQ,KAEtBud,EAA4Bvd,EAAQ,IAUpCwN,EAAA3N,QARA,SAAA6G,EAAAC,GACA,OAAAA,GAAA,WAAA2W,EAAA3W,IAAA,mBAAAA,EAIA4W,EAAA7W,GAHAC,sBCNA,SAAA6W,EAAAC,GAA6U,OAA1OD,EAA3E,mBAAA9P,QAAA,iBAAAA,OAAAyP,SAA2E,SAAAM,GAAoC,cAAAA,GAA+B,SAAAA,GAAoC,OAAAA,GAAA,mBAAA/P,QAAA+P,EAAApW,cAAAqG,QAAA+P,IAAA/P,OAAAjN,UAAA,gBAAAgd,IAAmIA,GAE7U,SAAAH,EAAAG,GAWA,MAVA,mBAAA/P,QAAA,WAAA8P,EAAA9P,OAAAyP,UACA3P,EAAA3N,QAAAyd,EAAA,SAAAG,GACA,OAAAD,EAAAC,IAGAjQ,EAAA3N,QAAAyd,EAAA,SAAAG,GACA,OAAAA,GAAA,mBAAA/P,QAAA+P,EAAApW,cAAAqG,QAAA+P,IAAA/P,OAAAjN,UAAA,SAAA+c,EAAAC,IAIAH,EAAAG,GAGAjQ,EAAA3N,QAAAyd,qBChBA,SAAAI,EAAAC,GAIA,OAHAnQ,EAAA3N,QAAA6d,EAAA/d,OAAA2H,eAAA3H,OAAAoH,eAAA,SAAA4W,GACA,OAAAA,EAAA7W,WAAAnH,OAAAoH,eAAA4W,IAEAD,EAAAC,GAGAnQ,EAAA3N,QAAA6d,qBCPA,SAAAE,EAAA7Y,EAAAC,GACA,QAAAC,EAAA,EAAiBA,EAAAD,EAAAL,OAAkBM,IAAA,CACnC,IAAAC,EAAAF,EAAAC,GACAC,EAAAC,WAAAD,EAAAC,aAAA,EACAD,EAAAE,cAAA,EACA,UAAAF,MAAAG,UAAA,GACA1F,OAAAC,eAAAmF,EAAAG,EAAAI,IAAAJ,IAUAsI,EAAA3N,QANA,SAAA0F,EAAAC,EAAAC,GAGA,OAFAD,GAAAoY,EAAArY,EAAA9E,UAAA+E,GACAC,GAAAmY,EAAArY,EAAAE,GACAF,wBCbA,IAAA+B,EAAqBtH,EAAQ,KAiB7BwN,EAAA3N,QAfA,SAAAqH,EAAAC,GACA,sBAAAA,GAAA,OAAAA,EACA,UAAAZ,UAAA,sDAGAW,EAAAzG,UAAAd,OAAAyH,OAAAD,KAAA1G,UAAA,CACA4G,YAAA,CACAvH,MAAAoH,EACA7B,UAAA,EACAD,cAAA,KAGA+B,GAAAG,EAAAJ,EAAAC,uBCdA,SAAA0W,EAAAF,EAAAxP,GAMA,OALAX,EAAA3N,QAAAge,EAAAle,OAAA2H,gBAAA,SAAAqW,EAAAxP,GAEA,OADAwP,EAAA7W,UAAAqH,EACAwP,GAGAE,EAAAF,EAAAxP,GAGAX,EAAA3N,QAAAge,uBCTA,IAAAC,GAOA,WACA,aAEA,IAAAC,EAAA,GAAgBC,eAEhB,SAAAC,IAGA,IAFA,IAAAC,EAAA,GAEAjZ,EAAA,EAAiBA,EAAAkZ,UAAAxZ,OAAsBM,IAAA,CACvC,IAAAmZ,EAAAD,UAAAlZ,GACA,GAAAmZ,EAAA,CAEA,IAAAC,SAAAD,EAEA,cAAAC,GAAA,WAAAA,EACAH,EAAAxc,KAAA0c,QACI,GAAArB,MAAAC,QAAAoB,MAAAzZ,OAAA,CACJ,IAAA2Z,EAAAL,EAAA1D,MAAA,KAAA6D,GACAE,GACAJ,EAAAxc,KAAA4c,QAEI,cAAAD,EACJ,QAAA/Y,KAAA8Y,EACAL,EAAApX,KAAAyX,EAAA9Y,IAAA8Y,EAAA9Y,IACA4Y,EAAAxc,KAAA4D,IAMA,OAAA4Y,EAAAK,KAAA,KAGkC/Q,EAAA3N,SAClCoe,EAAA/d,QAAA+d,EACAzQ,EAAA3N,QAAAoe,QAKGnS,KAFsBgS,EAAA,WACzB,OAAAG,GACG1D,MAAA1a,EAFoB,OAEpB2N,EAAA3N,QAAAie,GAxCH,qCCLAne,OAAAC,eAAAC,EAAA,cACAC,OAAA,IAEAD,EAAAK,aAAA,EAEA,IAqBAsX,EArBA,SAAAgH,GACA,IACAC,EACAC,EAFAC,EAAAR,UAAAxZ,OAAA,QAAAmH,IAAAqS,UAAA,GAAAA,UAAA,OAGA,kBACA,IAAAS,GAAA,IAAAC,KACAJ,GAAAG,EAAAH,EAAAE,GAGA/Z,aAAA8Z,GACAA,EAAAta,WAAA,WACAqa,EAAAG,EACAJ,KACOG,KAEPF,EAAAG,EACAJ,OAMA3e,EAAAK,QAAAsX,wBC5BA,WACA,aAwaAhK,EAAA3N,QAAA,CAAsBif,SAratB,WAEA,IAAAC,EAAA3W,OACAqD,EAAA9C,SAGA,KACA,mBAAA8C,EAAA+N,gBAAA3Q,QACA,IAAAkW,EAAAC,+BAFA,CAQA,IAuBAC,EAvBAlQ,EAAAgQ,EAAAG,aAAAH,EAAAhQ,QACAoQ,EAAA,IAGAC,EAAA,CACAC,OAAAN,EAAAM,QAAAN,EAAAO,SACAC,SAAAR,EAAAQ,SACAC,cAAAzQ,EAAAtO,UAAA4e,QAAAI,EACAC,eAAA3Q,EAAAtO,UAAAif,gBAIAd,EACAG,EAAAY,aAAAZ,EAAAY,YAAAf,IACAG,EAAAY,YAAAf,IAAA9W,KAAAiX,EAAAY,aACAd,KAAAD,IAmBAgB,GAXAX,EAWAF,EAAAc,UAAAZ,UARA,IAAAa,OAFA,6BAEAvB,KAAA,MAAAwB,KAAAd,GAQA,KA0LAF,EAAAM,OAAAN,EAAAO,SAAA,gBAEAxT,IAAAqS,UAAA,MAKA,IAAA6B,EAAA7B,UAAA,IAoBA8B,EAAAtZ,KACAoY,EACAtT,EAAA7C,UACAkD,IAAAqS,UAAA,GAAAnU,OACAmU,UAAA,GAAAnU,KACA+U,EAAAmB,SAAAnB,EAAAoB,iBACArU,IAAAqS,UAAA,GAAAlU,MACAkU,UAAA,GAAAlU,IACA8U,EAAAqB,SAAArB,EAAAsB,aA3BAjB,EAAAC,OAAA1Y,KACAoY,OACAjT,IAAAqS,UAAA,GAAAnU,KACAmU,UAAA,GAAAnU,KACA,iBAAAmU,UAAA,GACAA,UAAA,GACAY,EAAAmB,SAAAnB,EAAAoB,iBAEArU,IAAAqS,UAAA,GAAAlU,IACAkU,UAAA,GAAAlU,SACA6B,IAAAqS,UAAA,GACAA,UAAA,GACAY,EAAAqB,SAAArB,EAAAsB,eAoBAtB,EAAAQ,SAAA,gBAEAzT,IAAAqS,UAAA,KAKA6B,EAAA7B,UAAA,IACAiB,EAAAG,SAAA5Y,KACAoY,OACAjT,IAAAqS,UAAA,GAAAnU,KACAmU,UAAA,GAAAnU,KACA,iBAAAmU,UAAA,GAAAA,UAAA,UACArS,IAAAqS,UAAA,GAAAlU,IACAkU,UAAA,GAAAlU,SACA6B,IAAAqS,UAAA,GAAAA,UAAA,MAOA8B,EAAAtZ,KACAoY,EACAtT,EAAA7C,OACAuV,UAAA,GAAAnU,MAAA+U,EAAAmB,SAAAnB,EAAAoB,eACAhC,UAAA,GAAAlU,KAAA8U,EAAAqB,SAAArB,EAAAsB,gBAKAtR,EAAAtO,UAAA4e,OAAAtQ,EAAAtO,UAAA6e,SAAA,WAEA,QAAAxT,IAAAqS,UAAA,GAKA,QAAA6B,EAAA7B,UAAA,KAqBA,IAAAnU,EAAAmU,UAAA,GAAAnU,KACAC,EAAAkU,UAAA,GAAAlU,IAGAgW,EAAAtZ,KACApG,KACAA,UACA,IAAAyJ,EAAAzJ,KAAA+f,aAAAtW,OACA,IAAAC,EAAA1J,KAAA8Y,YAAApP,OA7BA,CAEA,oBAAAkU,UAAA,SAAArS,IAAAqS,UAAA,GACA,UAAAoC,YAAA,gCAGAnB,EAAAI,cAAA7Y,KACApG,UAEAuL,IAAAqS,UAAA,GAAAnU,OACAmU,UAAA,GAAAnU,KACA,iBAAAmU,UAAA,KAAAA,UAAA,GAAA5d,KAAA+f,gBAEAxU,IAAAqS,UAAA,GAAAlU,MACAkU,UAAA,GAAAlU,SACA6B,IAAAqS,UAAA,KAAAA,UAAA,GAAA5d,KAAA8Y,aAmBAtK,EAAAtO,UAAA8e,SAAA,gBAEAzT,IAAAqS,UAAA,MAKA,IAAA6B,EAAA7B,UAAA,IAcA5d,KAAA8e,OAAA,CACArV,OAAAmU,UAAA,GAAAnU,KAAAzJ,KAAA+f,WACArW,MAAAkU,UAAA,GAAAlU,IAAA1J,KAAA8Y,UACAmH,SAAArC,UAAA,GAAAqC,WAhBApB,EAAAI,cAAA7Y,KACApG,UACAuL,IAAAqS,UAAA,GAAAnU,OACAmU,UAAA,GAAAnU,KAAAzJ,KAAA+f,aACAnC,UAAA,GAAA5d,KAAA+f,gBACAxU,IAAAqS,UAAA,GAAAlU,MACAkU,UAAA,GAAAlU,IAAA1J,KAAA8Y,YACA8E,UAAA,GAAA5d,KAAA8Y,aAcAtK,EAAAtO,UAAAif,eAAA,WAEA,QAAAM,EAAA7B,UAAA,KAUA,IAAAsC,EAzOA,SAAA/O,GACA,KAAAA,IAAAjG,EAAA7C,OAAA,IAAA8X,EAAAhP,IACAA,IAAAhJ,YAAAgJ,EAAAiP,KAGA,OAAAjP,EAoOAkP,CAAArgB,MACAsgB,EAAAJ,EAAA1W,wBACA+W,EAAAvgB,KAAAwJ,wBAEA0W,IAAAhV,EAAA7C,MAEAqX,EAAAtZ,KACApG,KACAkgB,EACAA,EAAAH,WAAAQ,EAAA9W,KAAA6W,EAAA7W,KACAyW,EAAApH,UAAAyH,EAAA7W,IAAA4W,EAAA5W,KAIA,UAAA8U,EAAAjW,iBAAA2X,GAAArN,UACA2L,EAAAQ,SAAA,CACAvV,KAAA6W,EAAA7W,KACAC,IAAA4W,EAAA5W,IACAuW,SAAA,YAKAzB,EAAAQ,SAAA,CACAvV,KAAA8W,EAAA9W,KACAC,IAAA6W,EAAA7W,IACAuW,SAAA,gBAnCApB,EAAAM,eAAA/Y,KACApG,UACAuL,IAAAqS,UAAA,IAAAA,UAAA,KAnUA,SAAAsB,EAAAsB,EAAAC,GACAzgB,KAAA+f,WAAAS,EACAxgB,KAAA8Y,UAAA2H,EAmBA,SAAAhB,EAAAiB,GACA,GACA,OAAAA,GACA,iBAAAA,QACAnV,IAAAmV,EAAAT,UACA,SAAAS,EAAAT,UACA,YAAAS,EAAAT,SAIA,SAGA,oBAAAS,GAAA,WAAAA,EAAAT,SAEA,SAIA,UAAAja,UACA,oCACA0a,EAAAT,SACA,yDAWA,SAAAU,EAAAxP,EAAAyP,GACA,YAAAA,EACAzP,EAAA0P,aAAAxB,EAAAlO,EAAA+H,aAGA,MAAA0H,EACAzP,EAAA2P,YAAAzB,EAAAlO,EAAA4P,iBADA,EAYA,SAAAC,EAAA7P,EAAAyP,GACA,IAAAK,EAAAzC,EAAAjW,iBAAA4I,EAAA,iBAAAyP,GAEA,eAAAK,GAAA,WAAAA,EAUA,SAAAd,EAAAhP,GACA,IAAA+P,EAAAP,EAAAxP,EAAA,MAAA6P,EAAA7P,EAAA,KACAgQ,EAAAR,EAAAxP,EAAA,MAAA6P,EAAA7P,EAAA,KAEA,OAAA+P,GAAAC,EAuBA,SAAAC,EAAAC,GACA,IACA9hB,EACA+hB,EACAC,EAxGA9T,EAyGA+T,GAJAnD,IAIAgD,EAAAI,WAAA7C,EAzGAnR,EA4GA+T,IAAA,IAAAA,EAGAjiB,EA9GA,MAAAmiB,KAAAC,IAAAD,KAAAE,GAAAnU,IAgHA6T,EAAAD,EAAAQ,QAAAR,EAAAb,EAAAa,EAAAQ,QAAAtiB,EACAgiB,EAAAF,EAAAS,QAAAT,EAAAZ,EAAAY,EAAAS,QAAAviB,EAEA8hB,EAAAU,OAAA3b,KAAAib,EAAAW,WAAAV,EAAAC,GAGAD,IAAAD,EAAAb,GAAAe,IAAAF,EAAAZ,GACAjC,EAAAyD,sBAAAb,EAAA7Z,KAAAiX,EAAA6C,IAYA,SAAA3B,EAAAvO,EAAAqP,EAAAC,GACA,IAAAuB,EACAH,EACAC,EACAC,EACAN,EAAApD,IAGAlN,IAAAjG,EAAA7C,MACA2Z,EAAAxD,EACAqD,EAAArD,EAAAmB,SAAAnB,EAAAoB,YACAkC,EAAAtD,EAAAqB,SAAArB,EAAAsB,YACAiC,EAAAlD,EAAAC,SAEAkD,EAAA7Q,EACA0Q,EAAA1Q,EAAA4O,WACA+B,EAAA3Q,EAAA2H,UACAiJ,EAAA7C,GAIAkC,EAAA,CACAY,aACAD,SACAN,YACAI,SACAC,SACAtB,IACAC,SAxOA,qCCAA,IACAyB,EADAC,EAAAniB,WAAAmiB,YACAD,EAAA9iB,OAAA2H,gBACA,CAAUR,UAAA,cAAgBiW,OAAA,SAAAtR,EAAAgC,GAAsChC,EAAA3E,UAAA2G,IAChE,SAAAhC,EAAAgC,GAAyB,QAAAU,KAAAV,IAAAuQ,eAAA7P,KAAA1C,EAAA0C,GAAAV,EAAAU,KACzB,SAAA1C,EAAAgC,GAEA,SAAAkV,IAAuBpiB,KAAA8G,YAAAoE,EADvBgX,EAAAhX,EAAAgC,GAEAhC,EAAAhL,UAAA,OAAAgN,EAAA9N,OAAAyH,OAAAqG,IAAAkV,EAAAliB,UAAAgN,EAAAhN,UAAA,IAAAkiB,KAGAC,EAAAriB,WAAAqiB,UAAAjjB,OAAAkjB,QAAA,SAAAvU,GACA,QAAAwU,EAAA7d,EAAA,EAAAjD,EAAAmc,UAAAxZ,OAA4CM,EAAAjD,EAAOiD,IAEnD,QAAAkJ,KADA2U,EAAA3E,UAAAlZ,GACAtF,OAAAc,UAAAud,eAAArX,KAAAmc,EAAA3U,KACAG,EAAAH,GAAA2U,EAAA3U,IAEA,OAAAG,GAKA3O,OAAAC,eAAAC,EAAA,cAA8CC,OAAA,IAC9C,IAAAijB,EAAkB/iB,EAAQ,KAC1BgjB,EAAYhjB,EAAQ,GACpBijB,EAAiBjjB,EAAQ,KACzBkjB,EAAaljB,EAAQ,KACrBmjB,EAAA,SAAAC,GAEA,SAAAD,IACA,IAAA1c,EAAA,OAAA2c,KAAA7I,MAAAha,KAAA4d,YAAA5d,KASA,OARAkG,EAAAuN,MAAA,CACAqP,IAAA,KACApiB,GAAAiiB,EAAAI,gBAEA7c,EAAA8c,IAAA,IAAAR,EAAA3iB,OAAA,CACAa,GAAAwF,EAAAuN,MAAA/S,GACAuiB,OAAA,OAEA/c,EAuBA,OAlCAic,EAAAS,EAAAC,GAaAD,EAAAM,yBAAA,SAAAze,EAAAgP,GAEA,OAAgBqP,IADhBre,EAAA0e,MAAA,aAAA1e,EAAA2e,QAAA3e,EAAA4e,QAAA,IAAA5e,EAAA4e,QAAA,QAAAV,EAAAW,aAAAjB,EAAA,GAAgJ5d,EAAA6H,QAAA,CAAkB0W,IAAAvP,EAAA/S,QAGlKkiB,EAAA1iB,UAAA+T,kBAAA,WACA,IAAAsP,EAAAvjB,KAAAyE,MAAA8e,MACAA,GACAA,EAAAvjB,KAAAgjB,MAEAJ,EAAA1iB,UAAAyU,OAAA,WACA,IAAAzO,EAAAlG,KACAwjB,EAAAxjB,KAAAyE,MAAAgf,EAAAD,EAAAC,MAAA5O,EAAA2O,EAAA3O,UAAAvM,EAAAkb,EAAAlb,MAAAgK,EAAAkR,EAAAlR,OAAAD,EAAAmR,EAAAnR,MACA,OAAAoQ,EAAArY,cAAA,OAA4CyK,YAAAvM,MAAA+Z,EAAA,GAAyCK,EAAAgB,KAAA,CAAmBrR,QAAAC,WAA+BhK,IACvIma,EAAArY,cAAA,UAA2C4G,IAAAyS,EAAA,GAAAzjB,KAAAyT,MAAAqP,IAAA1b,IAAA,SAAAA,GAAwD,OAAAlB,EAAA8c,IAAAC,OAAA7b,GAAmCkB,MAAAoa,EAAAiB,UAEtIf,EAAAzd,aAAA,CACAie,OAAA,qBACAD,MAAA,uBACA7W,QAAA,GACAmX,OAAA,GAEAb,EAnCA,CAoCCH,EAAA7c,eACDtG,EAAAK,QAAAijB,EA7CA,SAAAjV,GACA,QAAAC,KAAAD,EAAArO,EAAAme,eAAA7P,KAAAtO,EAAAsO,GAAAD,EAAAC,IA6CAgW,CAASnkB,EAAQ,MACjB,IAAAokB,EAAkBpkB,EAAQ,KAC1BH,EAAAI,IAAAmkB,EAAAhkB,yCClEA,IACAqiB,EADAC,EAAAniB,WAAAmiB,YACAD,EAAA9iB,OAAA2H,gBACA,CAAUR,UAAA,cAAgBiW,OAAA,SAAAtR,EAAAgC,GAAsChC,EAAA3E,UAAA2G,IAChE,SAAAhC,EAAAgC,GAAyB,QAAAU,KAAAV,IAAAuQ,eAAA7P,KAAA1C,EAAA0C,GAAAV,EAAAU,KACzB,SAAA1C,EAAAgC,GAEA,SAAAkV,IAAuBpiB,KAAA8G,YAAAoE,EADvBgX,EAAAhX,EAAAgC,GAEAhC,EAAAhL,UAAA,OAAAgN,EAAA9N,OAAAyH,OAAAqG,IAAAkV,EAAAliB,UAAAgN,EAAAhN,UAAA,IAAAkiB,KAGAhjB,OAAAC,eAAAC,EAAA,cAA8CC,OAAA,IAC9C,IACAM,EAAA,SAAAgjB,GAEA,SAAAhjB,EAAAyM,GACA,IAAApG,EAAA2c,EAAAzc,KAAApG,YAcA,OAbAkG,EAAAkd,OAAA,CACAU,KAAA,SAAAljB,EAAAE,GACA,IAAAb,EAAAiG,EAAAjG,UAAAW,GACAX,GACAA,EAAAc,QAAA,SAAAC,GAA2D,OAAAA,EAAAF,OAI3D1B,OAAAkjB,OAAApc,EAAAoG,GACAzE,OAAAsD,iBAAA,mBAAAqY,GACA,IAAA1iB,EAAA0iB,EAAA1iB,KACA,OAAAoF,EAAA/F,YAAAW,KAEAoF,EAsBA,OAtCAic,EAAAtiB,EAAAgjB,GAuBAhjB,EAAAK,UAAA4jB,KAAA,SAAAljB,EAAAE,GACA,IAAA+G,OAAAkc,OACA,SACA,IAAAC,EAAA1jB,KAAA4V,UAAA,CACAzV,WAAA,EACAC,GAAAV,KAAAU,GACAE,QACAE,SAEA,QAAAd,KAAAijB,OAAAgB,gBACAjkB,KAAAijB,OAAAgB,cAAAC,YAAAF,EAAA,MACA,IAIAnkB,EAvCA,CADYJ,EAAQ,KAyCnBE,SACDL,EAAAK,QAAAE,oCCrDA,IACAqiB,EADAC,EAAAniB,WAAAmiB,YACAD,EAAA9iB,OAAA2H,gBACA,CAAUR,UAAA,cAAgBiW,OAAA,SAAAtR,EAAAgC,GAAsChC,EAAA3E,UAAA2G,IAChE,SAAAhC,EAAAgC,GAAyB,QAAAU,KAAAV,IAAAuQ,eAAA7P,KAAA1C,EAAA0C,GAAAV,EAAAU,KACzB,SAAA1C,EAAAgC,GAEA,SAAAkV,IAAuBpiB,KAAA8G,YAAAoE,EADvBgX,EAAAhX,EAAAgC,GAEAhC,EAAAhL,UAAA,OAAAgN,EAAA9N,OAAAyH,OAAAqG,IAAAkV,EAAAliB,UAAAgN,EAAAhN,UAAA,IAAAkiB,KAGAhjB,OAAAC,eAAAC,EAAA,cAA8CC,OAAA,IAC9C,IACAQ,EAAA,SAAA8iB,GAEA,SAAA9iB,EAAAuM,GACA,IAAApG,EAAA2c,EAAAzc,KAAApG,YAeA,OAdAkG,EAAAie,aAAA,IACAje,EAAAke,OAAA,CACAN,KAAA,SAAAljB,EAAAE,GACA,IAAAb,EAAAiG,EAAAjG,UAAAW,GACAX,GACAA,EAAAc,QAAA,SAAAC,GAA2D,OAAAA,EAAAF,OAI3D1B,OAAAkjB,OAAApc,EAAAoG,GACAzE,OAAAsD,iBAAA,mBAAAqY,GACA,IAAA1iB,EAAA0iB,EAAA1iB,KACA,OAAAoF,EAAA/F,YAAAW,KAEAoF,EAoBA,OArCAic,EAAApiB,EAAA8iB,GAwBA9iB,EAAAG,UAAA4jB,KAAA,SAAAljB,EAAAE,GAEA,GADAM,QAAAC,MAAA,qBAAAT,EAAA,IAAAE,IACA+G,OAAAkc,OACA,SACA,IAAAC,EAAA1jB,KAAA4V,UAAA,CACAzV,WAAA,EACAC,GAAAV,KAAAU,GACAE,QACAE,SAGA,OADA+G,OAAAkc,OAAAG,YAAAF,EAAAhkB,KAAAmkB,eACA,GAEApkB,EAtCA,CADYN,EAAQ,KAwCnBE,SACDL,EAAAK,QAAAI,oCCpDA,IAAAsiB,EAAAriB,WAAAqiB,UAAAjjB,OAAAkjB,QAAA,SAAAvU,GACA,QAAAwU,EAAA7d,EAAA,EAAAjD,EAAAmc,UAAAxZ,OAA4CM,EAAAjD,EAAOiD,IAEnD,QAAAkJ,KADA2U,EAAA3E,UAAAlZ,GACAtF,OAAAc,UAAAud,eAAArX,KAAAmc,EAAA3U,KACAG,EAAAH,GAAA2U,EAAA3U,IAEA,OAAAG,GAEA3O,OAAAC,eAAAC,EAAA,cAA8CC,OAAA,IAC9CD,EAAAokB,KAAA,SAAAF,GACA,IAAAnR,EAAAmR,EAAAnR,MAAAC,EAAAkR,EAAAlR,OACA,OAAA+P,EAAA,GAAuB/P,GAAA,CAAcA,YAAA,KAAAA,GAA2CD,GAAA,CAAcA,WAAA,KAAAA,GAAuC,CAAIsE,QAAA,eAAAnO,SAAA,SAAA4M,gBAAA,kBAAAiP,aAAA,EAAAC,cAAA,SAEzIhlB,EAAAqkB,MAAA,CACAtR,MAAA,OACAC,OAAA,OACAiS,OAAA,0CChBAnlB,OAAAC,eAAAC,EAAA,cAA8CC,OAAA,IAa9CD,EAAAyjB,aAZA,WACA,IAAA7X,GAAA,IAAAoT,MAAAkG,UAKA,MAJA,oBAAApF,aACA,mBAAAA,YAAAf,MACAnT,GAAAkU,YAAAf,OAEA,uCAAAoG,QAAA,iBAAApX,GACA,IAAAS,GAAA5C,EAAA,GAAAwW,KAAAgD,UAAA,KAEA,OADAxZ,EAAAwW,KAAAiD,MAAAzZ,EAAA,KACA,MAAAmC,EAAAS,EAAA,EAAAA,EAAA,GAAA+O,SAAA,OAIAvd,EAAAgkB,aAAA,SAAApG,GAEA,YADA,IAAAA,IAAyBA,EAAA,IACzB,IACA9d,OAAAwlB,KAAA1H,GACA3E,IAAA,SAAA9K,GAA+B,OAAAoX,mBAAApX,GAAA,IAAAoX,mBAAA3H,EAAAzP,MAC/BuQ,KAAA","file":"9-d2869d873a1b30f89b75.js","sourcesContent":["\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nvar api_1 = require(\"./api\");\r\nexports.API = api_1.default;\r\nvar client_1 = require(\"./client\");\r\nexports.Client = client_1.default;\r\nvar server_1 = require(\"./server\");\r\nexports.Server = server_1.default;\r\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nvar API = /** @class */ (function () {\r\n function API() {\r\n this.listeners = {};\r\n }\r\n API.prototype.socketEvent = function (raw) {\r\n try {\r\n var message = JSON.parse(raw);\r\n }\r\n catch (e) {\r\n return;\r\n }\r\n if (message instanceof Object &&\r\n message.widgetbot === true &&\r\n message.id === this.id) {\r\n var event_1 = message.event, data_1 = message.data;\r\n var listeners = this.listeners[event_1];\r\n if (listeners) {\r\n listeners.forEach(function (listener) { return listener(data_1); });\r\n }\r\n }\r\n };\r\n /**\r\n * Listens to events from the client\r\n * @param event Event name\r\n * @param data Event data\r\n */\r\n API.prototype.on = function (event, callback) {\r\n if (!this.listeners[event])\r\n this.listeners[event] = [];\r\n var listeners = this.listeners[event];\r\n listeners.push(callback);\r\n console.debug(\"[embed-api] on '\" + event + \"'\", callback);\r\n };\r\n return API;\r\n}());\r\nexports.default = API;\r\n","import React from 'react';\nimport { addEventListener } from 'consolidated-events';\nimport PropTypes from 'prop-types';\nimport { isForwardRef } from 'react-is';\n\n/**\n * Attempts to parse the offset provided as a prop as a percentage. For\n * instance, if the component has been provided with the string \"20%\" as\n * a value of one of the offset props. If the value matches, then it returns\n * a numeric version of the prop. For instance, \"20%\" would become `0.2`.\n * If `str` isn't a percentage, then `undefined` will be returned.\n *\n * @param {string} str The value of an offset prop to be converted to a\n * number.\n * @return {number|undefined} The numeric version of `str`. Undefined if `str`\n * was not a percentage.\n */\nfunction parseOffsetAsPercentage(str) {\n if (str.slice(-1) === '%') {\n return parseFloat(str.slice(0, -1)) / 100;\n }\n}\n\n/**\n * Attempts to parse the offset provided as a prop as a pixel value. If\n * parsing fails, then `undefined` is returned. Three examples of values that\n * will be successfully parsed are:\n * `20`\n * \"20px\"\n * \"20\"\n *\n * @param {string|number} str A string of the form \"{number}\" or \"{number}px\",\n * or just a number.\n * @return {number|undefined} The numeric version of `str`. Undefined if `str`\n * was neither a number nor string ending in \"px\".\n */\nfunction parseOffsetAsPixels(str) {\n if (!isNaN(parseFloat(str)) && isFinite(str)) {\n return parseFloat(str);\n } else if (str.slice(-2) === 'px') {\n return parseFloat(str.slice(0, -2));\n }\n}\n\n/**\n * @param {string|number} offset\n * @param {number} contextHeight\n * @return {number} A number representing `offset` converted into pixels.\n */\nfunction computeOffsetPixels(offset, contextHeight) {\n var pixelOffset = parseOffsetAsPixels(offset);\n\n if (typeof pixelOffset === 'number') {\n return pixelOffset;\n }\n\n var percentOffset = parseOffsetAsPercentage(offset);\n if (typeof percentOffset === 'number') {\n return percentOffset * contextHeight;\n }\n}\n\nvar constants = {\n above: 'above',\n inside: 'inside',\n below: 'below',\n invisible: 'invisible'\n};\n\nfunction debugLog() {\n if (process.env.NODE_ENV !== 'production') {\n console.log(arguments); // eslint-disable-line no-console\n }\n}\n\nvar errorMessage = '<Waypoint> expected to receive a single React element child.\\n\\n' + 'See https://goo.gl/LrBNgw for more info.';\n\n/**\n * Raise an error if more that one child was provided to \"children\"\n *\n * @param {?React.element} children\n * @return {undefined}\n */\nfunction ensureChildrenIsValid(children) {\n if (children) {\n try {\n React.Children.only(children);\n } catch (e) {\n throw new Error(errorMessage);\n }\n }\n}\n\n/**\n * When an element's type is a string, it represents a DOM node with that tag name\n * https://facebook.github.io/react/blog/2015/12/18/react-components-elements-and-instances.html#dom-elements\n *\n * @param {React.element} Component\n * @return {bool} Whether the component is a DOM Element\n */\nfunction isDOMElement(Component) {\n return typeof Component.type === 'string';\n}\n\nvar errorMessage$1 = '<Waypoint> needs a DOM element to compute boundaries. The child you passed is neither a ' + 'DOM element (e.g. <div>) nor does it use the innerRef prop.\\n\\n' + 'See https://goo.gl/LrBNgw for more info.';\n\n/**\n * Raise an error if \"children\" is not a DOM Element and there is no ref provided to Waypoint\n *\n * @param {?React.element} children\n * @param {?HTMLElement} ref\n * @return {undefined}\n */\nfunction ensureRefIsProvidedByChild(children, ref) {\n if (children && !isDOMElement(children) && !ref) {\n throw new Error(errorMessage$1);\n }\n}\n\n/**\n * @param {object} bounds An object with bounds data for the waypoint and\n * scrollable parent\n * @return {string} The current position of the waypoint in relation to the\n * visible portion of the scrollable parent. One of `constants.above`,\n * `constants.below`, or `constants.inside`.\n */\nfunction getCurrentPosition(bounds) {\n if (bounds.viewportBottom - bounds.viewportTop === 0) {\n return constants.invisible;\n }\n\n // top is within the viewport\n if (bounds.viewportTop <= bounds.waypointTop && bounds.waypointTop <= bounds.viewportBottom) {\n return constants.inside;\n }\n\n // bottom is within the viewport\n if (bounds.viewportTop <= bounds.waypointBottom && bounds.waypointBottom <= bounds.viewportBottom) {\n return constants.inside;\n }\n\n // top is above the viewport and bottom is below the viewport\n if (bounds.waypointTop <= bounds.viewportTop && bounds.viewportBottom <= bounds.waypointBottom) {\n return constants.inside;\n }\n\n if (bounds.viewportBottom < bounds.waypointTop) {\n return constants.below;\n }\n\n if (bounds.waypointTop < bounds.viewportTop) {\n return constants.above;\n }\n\n return constants.invisible;\n}\n\nvar timeout = void 0;\nvar timeoutQueue = [];\n\nfunction onNextTick(cb) {\n timeoutQueue.push(cb);\n\n if (!timeout) {\n timeout = setTimeout(function () {\n timeout = null;\n\n // Drain the timeoutQueue\n var item = void 0;\n // eslint-disable-next-line no-cond-assign\n while (item = timeoutQueue.shift()) {\n item();\n }\n }, 0);\n }\n\n var isSubscribed = true;\n\n return function () {\n function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n isSubscribed = false;\n\n var index = timeoutQueue.indexOf(cb);\n if (index === -1) {\n return;\n }\n\n timeoutQueue.splice(index, 1);\n\n if (!timeoutQueue.length && timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n }\n\n return unsubscribe;\n }();\n}\n\nfunction resolveScrollableAncestorProp(scrollableAncestor) {\n // When Waypoint is rendered on the server, `window` is not available.\n // To make Waypoint easier to work with, we allow this to be specified in\n // string form and safely convert to `window` here.\n if (scrollableAncestor === 'window') {\n return global.window;\n }\n\n return scrollableAncestor;\n}\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar defaultProps = {\n topOffset: '0px',\n bottomOffset: '0px',\n horizontal: false,\n onEnter: function () {\n function onEnter() {}\n\n return onEnter;\n }(),\n onLeave: function () {\n function onLeave() {}\n\n return onLeave;\n }(),\n onPositionChange: function () {\n function onPositionChange() {}\n\n return onPositionChange;\n }(),\n\n fireOnRapidScroll: true\n};\n\n// React.PureComponent was added in React 15.3.0\nvar BaseClass = typeof React.PureComponent !== 'undefined' ? React.PureComponent : React.Component;\n\n// Calls a function when you scroll to the element.\n\nvar Waypoint = function (_BaseClass) {\n _inherits(Waypoint, _BaseClass);\n\n function Waypoint(props) {\n _classCallCheck(this, Waypoint);\n\n var _this = _possibleConstructorReturn(this, (Waypoint.__proto__ || Object.getPrototypeOf(Waypoint)).call(this, props));\n\n _this.refElement = function (e) {\n return _this._ref = e;\n };\n return _this;\n }\n\n _createClass(Waypoint, [{\n key: 'componentWillMount',\n value: function () {\n function componentWillMount() {\n ensureChildrenIsValid(this.props.children);\n }\n\n return componentWillMount;\n }()\n }, {\n key: 'componentDidMount',\n value: function () {\n function componentDidMount() {\n var _this2 = this;\n\n if (!Waypoint.getWindow()) {\n return;\n }\n\n // this._ref may occasionally not be set at this time. To help ensure that\n // this works smoothly and to avoid layout thrashing, we want to delay the\n // initial execution until the next tick.\n this.cancelOnNextTick = onNextTick(function () {\n _this2.cancelOnNextTick = null;\n\n // Berofe doing anything, we want to check that this._ref is avaliable in Waypoint\n ensureRefIsProvidedByChild(_this2.props.children, _this2._ref);\n\n _this2._handleScroll = _this2._handleScroll.bind(_this2);\n _this2.scrollableAncestor = _this2._findScrollableAncestor();\n\n if (process.env.NODE_ENV !== 'production' && _this2.props.debug) {\n debugLog('scrollableAncestor', _this2.scrollableAncestor);\n }\n\n _this2.scrollEventListenerUnsubscribe = addEventListener(_this2.scrollableAncestor, 'scroll', _this2._handleScroll, { passive: true });\n\n _this2.resizeEventListenerUnsubscribe = addEventListener(window, 'resize', _this2._handleScroll, { passive: true });\n\n _this2._handleScroll(null);\n });\n }\n\n return componentDidMount;\n }()\n }, {\n key: 'componentWillReceiveProps',\n value: function () {\n function componentWillReceiveProps(newProps) {\n ensureChildrenIsValid(newProps.children);\n }\n\n return componentWillReceiveProps;\n }()\n }, {\n key: 'componentDidUpdate',\n value: function () {\n function componentDidUpdate() {\n var _this3 = this;\n\n if (!Waypoint.getWindow()) {\n return;\n }\n\n if (!this.scrollableAncestor) {\n // The Waypoint has not yet initialized.\n return;\n }\n\n // The element may have moved, so we need to recompute its position on the\n // page. This happens via handleScroll in a way that forces layout to be\n // computed.\n //\n // We want this to be deferred to avoid forcing layout during render, which\n // causes layout thrashing. And, if we already have this work enqueued, we\n // can just wait for that to happen instead of enqueueing again.\n if (this.cancelOnNextTick) {\n return;\n }\n\n this.cancelOnNextTick = onNextTick(function () {\n _this3.cancelOnNextTick = null;\n _this3._handleScroll(null);\n });\n }\n\n return componentDidUpdate;\n }()\n }, {\n key: 'componentWillUnmount',\n value: function () {\n function componentWillUnmount() {\n if (!Waypoint.getWindow()) {\n return;\n }\n\n if (this.scrollEventListenerUnsubscribe) {\n this.scrollEventListenerUnsubscribe();\n }\n if (this.resizeEventListenerUnsubscribe) {\n this.resizeEventListenerUnsubscribe();\n }\n\n if (this.cancelOnNextTick) {\n this.cancelOnNextTick();\n }\n }\n\n return componentWillUnmount;\n }()\n\n /**\n * Traverses up the DOM to find an ancestor container which has an overflow\n * style that allows for scrolling.\n *\n * @return {Object} the closest ancestor element with an overflow style that\n * allows for scrolling. If none is found, the `window` object is returned\n * as a fallback.\n */\n\n }, {\n key: '_findScrollableAncestor',\n value: function () {\n function _findScrollableAncestor() {\n var _props = this.props,\n horizontal = _props.horizontal,\n scrollableAncestor = _props.scrollableAncestor;\n\n\n if (scrollableAncestor) {\n return resolveScrollableAncestorProp(scrollableAncestor);\n }\n\n var node = this._ref;\n\n while (node.parentNode) {\n node = node.parentNode;\n\n if (node === document.body) {\n // We've reached all the way to the root node.\n return window;\n }\n\n var style = window.getComputedStyle(node);\n var overflowDirec = horizontal ? style.getPropertyValue('overflow-x') : style.getPropertyValue('overflow-y');\n var overflow = overflowDirec || style.getPropertyValue('overflow');\n\n if (overflow === 'auto' || overflow === 'scroll') {\n return node;\n }\n }\n\n // A scrollable ancestor element was not found, which means that we need to\n // do stuff on window.\n return window;\n }\n\n return _findScrollableAncestor;\n }()\n\n /**\n * @param {Object} event the native scroll event coming from the scrollable\n * ancestor, or resize event coming from the window. Will be undefined if\n * called by a React lifecyle method\n */\n\n }, {\n key: '_handleScroll',\n value: function () {\n function _handleScroll(event) {\n if (!this._ref) {\n // There's a chance we end up here after the component has been unmounted.\n return;\n }\n\n var bounds = this._getBounds();\n var currentPosition = getCurrentPosition(bounds);\n var previousPosition = this._previousPosition;\n\n if (process.env.NODE_ENV !== 'production' && this.props.debug) {\n debugLog('currentPosition', currentPosition);\n debugLog('previousPosition', previousPosition);\n }\n\n // Save previous position as early as possible to prevent cycles\n this._previousPosition = currentPosition;\n\n if (previousPosition === currentPosition) {\n // No change since last trigger\n return;\n }\n\n var callbackArg = {\n currentPosition: currentPosition,\n previousPosition: previousPosition,\n event: event,\n waypointTop: bounds.waypointTop,\n waypointBottom: bounds.waypointBottom,\n viewportTop: bounds.viewportTop,\n viewportBottom: bounds.viewportBottom\n };\n this.props.onPositionChange.call(this, callbackArg);\n\n if (currentPosition === constants.inside) {\n this.props.onEnter.call(this, callbackArg);\n } else if (previousPosition === constants.inside) {\n this.props.onLeave.call(this, callbackArg);\n }\n\n var isRapidScrollDown = previousPosition === constants.below && currentPosition === constants.above;\n var isRapidScrollUp = previousPosition === constants.above && currentPosition === constants.below;\n\n if (this.props.fireOnRapidScroll && (isRapidScrollDown || isRapidScrollUp)) {\n // If the scroll event isn't fired often enough to occur while the\n // waypoint was visible, we trigger both callbacks anyway.\n this.props.onEnter.call(this, {\n currentPosition: constants.inside,\n previousPosition: previousPosition,\n event: event,\n waypointTop: bounds.waypointTop,\n waypointBottom: bounds.waypointBottom,\n viewportTop: bounds.viewportTop,\n viewportBottom: bounds.viewportBottom\n });\n this.props.onLeave.call(this, {\n currentPosition: currentPosition,\n previousPosition: constants.inside,\n event: event,\n waypointTop: bounds.waypointTop,\n waypointBottom: bounds.waypointBottom,\n viewportTop: bounds.viewportTop,\n viewportBottom: bounds.viewportBottom\n });\n }\n }\n\n return _handleScroll;\n }()\n }, {\n key: '_getBounds',\n value: function () {\n function _getBounds() {\n var horizontal = this.props.horizontal;\n\n var _ref$getBoundingClien = this._ref.getBoundingClientRect(),\n left = _ref$getBoundingClien.left,\n top = _ref$getBoundingClien.top,\n right = _ref$getBoundingClien.right,\n bottom = _ref$getBoundingClien.bottom;\n\n var waypointTop = horizontal ? left : top;\n var waypointBottom = horizontal ? right : bottom;\n\n var contextHeight = void 0;\n var contextScrollTop = void 0;\n if (this.scrollableAncestor === window) {\n contextHeight = horizontal ? window.innerWidth : window.innerHeight;\n contextScrollTop = 0;\n } else {\n contextHeight = horizontal ? this.scrollableAncestor.offsetWidth : this.scrollableAncestor.offsetHeight;\n contextScrollTop = horizontal ? this.scrollableAncestor.getBoundingClientRect().left : this.scrollableAncestor.getBoundingClientRect().top;\n }\n\n if (process.env.NODE_ENV !== 'production' && this.props.debug) {\n debugLog('waypoint top', waypointTop);\n debugLog('waypoint bottom', waypointBottom);\n debugLog('scrollableAncestor height', contextHeight);\n debugLog('scrollableAncestor scrollTop', contextScrollTop);\n }\n\n var _props2 = this.props,\n bottomOffset = _props2.bottomOffset,\n topOffset = _props2.topOffset;\n\n var topOffsetPx = computeOffsetPixels(topOffset, contextHeight);\n var bottomOffsetPx = computeOffsetPixels(bottomOffset, contextHeight);\n var contextBottom = contextScrollTop + contextHeight;\n\n return {\n waypointTop: waypointTop,\n waypointBottom: waypointBottom,\n viewportTop: contextScrollTop + topOffsetPx,\n viewportBottom: contextBottom - bottomOffsetPx\n };\n }\n\n return _getBounds;\n }()\n\n /**\n * @return {Object}\n */\n\n }, {\n key: 'render',\n value: function () {\n function render() {\n var _this4 = this;\n\n var children = this.props.children;\n\n\n if (!children) {\n // We need an element that we can locate in the DOM to determine where it is\n // rendered relative to the top of its context.\n return React.createElement('span', { ref: this.refElement, style: { fontSize: 0 } });\n }\n\n if (isDOMElement(children) || isForwardRef(children.type)) {\n var ref = function () {\n function ref(node) {\n _this4.refElement(node);\n if (children.ref) {\n if (typeof children.ref === 'function') {\n children.ref(node);\n } else {\n children.ref.current = node;\n }\n }\n }\n\n return ref;\n }();\n\n return React.cloneElement(children, { ref: ref });\n }\n\n return React.cloneElement(children, { innerRef: this.refElement });\n }\n\n return render;\n }()\n }]);\n\n return Waypoint;\n}(BaseClass);\n\n\nWaypoint.propTypes = {\n children: PropTypes.node,\n debug: PropTypes.bool,\n onEnter: PropTypes.func,\n onLeave: PropTypes.func,\n onPositionChange: PropTypes.func,\n fireOnRapidScroll: PropTypes.bool,\n scrollableAncestor: PropTypes.any,\n horizontal: PropTypes.bool,\n\n // `topOffset` can either be a number, in which case its a distance from the\n // top of the container in pixels, or a string value. Valid string values are\n // of the form \"20px\", which is parsed as pixels, or \"20%\", which is parsed\n // as a percentage of the height of the containing element.\n // For instance, if you pass \"-20%\", and the containing element is 100px tall,\n // then the waypoint will be triggered when it has been scrolled 20px beyond\n // the top of the containing element.\n topOffset: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n // `bottomOffset` is like `topOffset`, but for the bottom of the container.\n bottomOffset: PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n};\n\nWaypoint.above = constants.above;\nWaypoint.below = constants.below;\nWaypoint.inside = constants.inside;\nWaypoint.invisible = constants.invisible;\nWaypoint.getWindow = function () {\n if (typeof window !== 'undefined') {\n return window;\n }\n};\nWaypoint.defaultProps = defaultProps;\nWaypoint.displayName = 'Waypoint';\n\nexport default Waypoint;\n","var CAN_USE_DOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\n// Adapted from Modernizr\n// https://github.com/Modernizr/Modernizr/blob/acb3f0d9/feature-detects/dom/passiveeventlisteners.js#L26-L37\nfunction testPassiveEventListeners() {\n if (!CAN_USE_DOM) {\n return false;\n }\n\n if (!window.addEventListener || !window.removeEventListener || !Object.defineProperty) {\n return false;\n }\n\n var supportsPassiveOption = false;\n try {\n var opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line getter-return\n get: function () {\n function get() {\n supportsPassiveOption = true;\n }\n\n return get;\n }()\n });\n var noop = function noop() {};\n window.addEventListener('testPassiveEventSupport', noop, opts);\n window.removeEventListener('testPassiveEventSupport', noop, opts);\n } catch (e) {\n // do nothing\n }\n\n return supportsPassiveOption;\n}\n\nvar memoized = void 0;\n\nfunction canUsePassiveEventListeners() {\n if (memoized === undefined) {\n memoized = testPassiveEventListeners();\n }\n return memoized;\n}\n\nfunction normalizeEventOptions(eventOptions) {\n if (!eventOptions) {\n return undefined;\n }\n\n if (!canUsePassiveEventListeners()) {\n // If the browser does not support the passive option, then it is expecting\n // a boolean for the options argument to specify whether it should use\n // capture or not. In more modern browsers, this is passed via the `capture`\n // option, so let's just hoist that value up.\n return !!eventOptions.capture;\n }\n\n return eventOptions;\n}\n\n/* eslint-disable no-bitwise */\n\n/**\n * Generate a unique key for any set of event options\n */\nfunction eventOptionsKey(normalizedEventOptions) {\n if (!normalizedEventOptions) {\n return 0;\n }\n\n // If the browser does not support passive event listeners, the normalized\n // event options will be a boolean.\n if (normalizedEventOptions === true) {\n return 100;\n }\n\n // At this point, the browser supports passive event listeners, so we expect\n // the event options to be an object with possible properties of capture,\n // passive, and once.\n //\n // We want to consistently return the same value, regardless of the order of\n // these properties, so let's use binary maths to assign each property to a\n // bit, and then add those together (with an offset to account for the\n // booleans at the beginning of this function).\n var capture = normalizedEventOptions.capture << 0;\n var passive = normalizedEventOptions.passive << 1;\n var once = normalizedEventOptions.once << 2;\n return capture + passive + once;\n}\n\nfunction ensureCanMutateNextEventHandlers(eventHandlers) {\n if (eventHandlers.handlers === eventHandlers.nextHandlers) {\n // eslint-disable-next-line no-param-reassign\n eventHandlers.nextHandlers = eventHandlers.handlers.slice();\n }\n}\n\nfunction TargetEventHandlers(target) {\n this.target = target;\n this.events = {};\n}\n\nTargetEventHandlers.prototype.getEventHandlers = function () {\n function getEventHandlers(eventName, options) {\n var key = String(eventName) + ' ' + String(eventOptionsKey(options));\n\n if (!this.events[key]) {\n this.events[key] = {\n handlers: [],\n handleEvent: undefined\n };\n this.events[key].nextHandlers = this.events[key].handlers;\n }\n\n return this.events[key];\n }\n\n return getEventHandlers;\n}();\n\nTargetEventHandlers.prototype.handleEvent = function () {\n function handleEvent(eventName, options, event) {\n var eventHandlers = this.getEventHandlers(eventName, options);\n eventHandlers.handlers = eventHandlers.nextHandlers;\n eventHandlers.handlers.forEach(function (handler) {\n if (handler) {\n // We need to check for presence here because a handler function may\n // cause later handlers to get removed. This can happen if you for\n // instance have a waypoint that unmounts another waypoint as part of an\n // onEnter/onLeave handler.\n handler(event);\n }\n });\n }\n\n return handleEvent;\n}();\n\nTargetEventHandlers.prototype.add = function () {\n function add(eventName, listener, options) {\n var _this = this;\n\n // options has already been normalized at this point.\n var eventHandlers = this.getEventHandlers(eventName, options);\n\n ensureCanMutateNextEventHandlers(eventHandlers);\n\n if (eventHandlers.nextHandlers.length === 0) {\n eventHandlers.handleEvent = this.handleEvent.bind(this, eventName, options);\n\n this.target.addEventListener(eventName, eventHandlers.handleEvent, options);\n }\n\n eventHandlers.nextHandlers.push(listener);\n\n var isSubscribed = true;\n var unsubscribe = function () {\n function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n isSubscribed = false;\n\n ensureCanMutateNextEventHandlers(eventHandlers);\n var index = eventHandlers.nextHandlers.indexOf(listener);\n eventHandlers.nextHandlers.splice(index, 1);\n\n if (eventHandlers.nextHandlers.length === 0) {\n // All event handlers have been removed, so we want to remove the event\n // listener from the target node.\n\n if (_this.target) {\n // There can be a race condition where the target may no longer exist\n // when this function is called, e.g. when a React component is\n // unmounting. Guarding against this prevents the following error:\n //\n // Cannot read property 'removeEventListener' of undefined\n _this.target.removeEventListener(eventName, eventHandlers.handleEvent, options);\n }\n\n eventHandlers.handleEvent = undefined;\n }\n }\n\n return unsubscribe;\n }();\n return unsubscribe;\n }\n\n return add;\n}();\n\nvar EVENT_HANDLERS_KEY = '__consolidated_events_handlers__';\n\n// eslint-disable-next-line import/prefer-default-export\nfunction addEventListener(target, eventName, listener, options) {\n if (!target[EVENT_HANDLERS_KEY]) {\n // eslint-disable-next-line no-param-reassign\n target[EVENT_HANDLERS_KEY] = new TargetEventHandlers(target);\n }\n var normalizedEventOptions = normalizeEventOptions(options);\n return target[EVENT_HANDLERS_KEY].add(eventName, listener, normalizedEventOptions);\n}\n\nexport { addEventListener };\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/** @license React v16.8.6\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';Object.defineProperty(exports,\"__esModule\",{value:!0});\nvar b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?Symbol.for(\"react.memo\"):\n60115,r=b?Symbol.for(\"react.lazy\"):60116;function t(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case h:return a;default:return u}}case r:case q:case d:return u}}}function v(a){return t(a)===m}exports.typeOf=t;exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;\nexports.Fragment=e;exports.Lazy=r;exports.Memo=q;exports.Portal=d;exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||\"object\"===typeof a&&null!==a&&(a.$$typeof===r||a.$$typeof===q||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n)};exports.isAsyncMode=function(a){return v(a)||t(a)===l};exports.isConcurrentMode=v;exports.isContextConsumer=function(a){return t(a)===k};\nexports.isContextProvider=function(a){return t(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return t(a)===n};exports.isFragment=function(a){return t(a)===e};exports.isLazy=function(a){return t(a)===r};exports.isMemo=function(a){return t(a)===q};exports.isPortal=function(a){return t(a)===d};exports.isProfiler=function(a){return t(a)===g};exports.isStrictMode=function(a){return t(a)===f};\nexports.isSuspense=function(a){return t(a)===p};\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\n// Handle legacy names for image queries.\nvar convertProps = function convertProps(props) {\n var convertedProps = (0, _extends2.default)({}, props);\n\n if (convertedProps.resolutions) {\n convertedProps.fixed = convertedProps.resolutions;\n delete convertedProps.resolutions;\n }\n\n if (convertedProps.sizes) {\n convertedProps.fluid = convertedProps.sizes;\n delete convertedProps.sizes;\n }\n\n return convertedProps;\n}; // Cache if we've seen an image before so we don't bother with\n// lazy-loading & fading in on subsequent mounts.\n\n\nvar imageCache = Object.create({});\n\nvar inImageCache = function inImageCache(props) {\n var convertedProps = convertProps(props); // Find src\n\n var src = convertedProps.fluid ? convertedProps.fluid.src : convertedProps.fixed.src;\n return imageCache[src] || false;\n};\n\nvar activateCacheForImage = function activateCacheForImage(props) {\n var convertedProps = convertProps(props); // Find src\n\n var src = convertedProps.fluid ? convertedProps.fluid.src : convertedProps.fixed.src;\n imageCache[src] = true;\n};\n\nvar io;\nvar listeners = new WeakMap();\n\nfunction getIO() {\n if (typeof io === \"undefined\" && typeof window !== \"undefined\" && window.IntersectionObserver) {\n io = new window.IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (listeners.has(entry.target)) {\n var cb = listeners.get(entry.target); // Edge doesn't currently support isIntersecting, so also test for an intersectionRatio > 0\n\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n io.unobserve(entry.target);\n listeners.delete(entry.target);\n cb();\n }\n }\n });\n }, {\n rootMargin: \"200px\"\n });\n }\n\n return io;\n}\n\nvar listenToIntersections = function listenToIntersections(el, cb) {\n var observer = getIO();\n\n if (observer) {\n observer.observe(el);\n listeners.set(el, cb);\n }\n\n return function () {\n observer.unobserve(el);\n listeners.delete(el);\n };\n};\n\nvar noscriptImg = function noscriptImg(props) {\n // Check if prop exists before adding each attribute to the string output below to prevent\n // HTML validation issues caused by empty values like width=\"\" and height=\"\"\n var src = props.src ? \"src=\\\"\" + props.src + \"\\\" \" : \"src=\\\"\\\" \"; // required attribute\n\n var sizes = props.sizes ? \"sizes=\\\"\" + props.sizes + \"\\\" \" : \"\";\n var srcSetWebp = props.srcSetWebp ? \"<source type='image/webp' srcset=\\\"\" + props.srcSetWebp + \"\\\" \" + sizes + \"/>\" : \"\";\n var srcSet = props.srcSet ? \"srcset=\\\"\" + props.srcSet + \"\\\" \" : \"\";\n var title = props.title ? \"title=\\\"\" + props.title + \"\\\" \" : \"\";\n var alt = props.alt ? \"alt=\\\"\" + props.alt + \"\\\" \" : \"alt=\\\"\\\" \"; // required attribute\n\n var width = props.width ? \"width=\\\"\" + props.width + \"\\\" \" : \"\";\n var height = props.height ? \"height=\\\"\" + props.height + \"\\\" \" : \"\";\n var crossOrigin = props.crossOrigin ? \"crossorigin=\\\"\" + props.crossOrigin + \"\\\" \" : \"\";\n return \"<picture>\" + srcSetWebp + \"<img \" + width + height + sizes + srcSet + src + alt + title + crossOrigin + \"style=\\\"position:absolute;top:0;left:0;opacity:1;width:100%;height:100%;object-fit:cover;object-position:center\\\"/></picture>\";\n};\n\nvar Img = _react.default.forwardRef(function (props, ref) {\n var sizes = props.sizes,\n srcSet = props.srcSet,\n src = props.src,\n style = props.style,\n onLoad = props.onLoad,\n onError = props.onError,\n otherProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"sizes\", \"srcSet\", \"src\", \"style\", \"onLoad\", \"onError\"]);\n return _react.default.createElement(\"img\", (0, _extends2.default)({\n sizes: sizes,\n srcSet: srcSet,\n src: src\n }, otherProps, {\n onLoad: onLoad,\n onError: onError,\n ref: ref,\n style: (0, _extends2.default)({\n position: \"absolute\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: \"100%\",\n objectFit: \"cover\",\n objectPosition: \"center\"\n }, style)\n }));\n});\n\nImg.propTypes = {\n style: _propTypes.default.object,\n onError: _propTypes.default.func,\n onLoad: _propTypes.default.func\n};\n\nvar Image =\n/*#__PURE__*/\nfunction (_React$Component) {\n (0, _inheritsLoose2.default)(Image, _React$Component);\n\n function Image(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this; // default settings for browser without Intersection Observer available\n\n var isVisible = true;\n var imgLoaded = false;\n var imgCached = false;\n var IOSupported = false;\n var fadeIn = props.fadeIn; // If this image has already been loaded before then we can assume it's\n // already in the browser cache so it's cheap to just show directly.\n\n var seenBefore = inImageCache(props); // browser with Intersection Observer available\n\n if (!seenBefore && typeof window !== \"undefined\" && window.IntersectionObserver) {\n isVisible = false;\n IOSupported = true;\n } // Never render image during SSR\n\n\n if (typeof window === \"undefined\") {\n isVisible = false;\n } // Force render for critical images\n\n\n if (props.critical) {\n isVisible = true;\n IOSupported = false;\n }\n\n var hasNoScript = !(props.critical && !props.fadeIn);\n _this.state = {\n isVisible: isVisible,\n imgLoaded: imgLoaded,\n imgCached: imgCached,\n IOSupported: IOSupported,\n fadeIn: fadeIn,\n hasNoScript: hasNoScript,\n seenBefore: seenBefore\n };\n _this.imageRef = _react.default.createRef();\n _this.handleImageLoaded = _this.handleImageLoaded.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));\n return _this;\n }\n\n var _proto = Image.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n if (this.state.isVisible && typeof this.props.onStartLoad === \"function\") {\n this.props.onStartLoad({\n wasCached: inImageCache(this.props)\n });\n }\n\n if (this.props.critical) {\n var img = this.imageRef.current;\n\n if (img && img.complete) {\n this.handleImageLoaded();\n }\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this.cleanUpListeners) {\n this.cleanUpListeners();\n }\n };\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n if (this.state.IOSupported && ref) {\n this.cleanUpListeners = listenToIntersections(ref, function () {\n var imageInCache = inImageCache(_this2.props);\n\n if (!_this2.state.isVisible && typeof _this2.props.onStartLoad === \"function\") {\n _this2.props.onStartLoad({\n wasCached: imageInCache\n });\n } // imgCached and imgLoaded must update after isVisible,\n // Once isVisible is true, imageRef becomes accessible, which imgCached needs access to.\n // imgLoaded and imgCached are in a 2nd setState call to be changed together,\n // avoiding initiating unnecessary animation frames from style changes.\n\n\n _this2.setState({\n isVisible: true\n }, function () {\n return _this2.setState({\n imgLoaded: imageInCache,\n imgCached: !!_this2.imageRef.current.currentSrc\n });\n });\n });\n }\n };\n\n _proto.handleImageLoaded = function handleImageLoaded() {\n activateCacheForImage(this.props);\n this.setState({\n imgLoaded: true\n });\n\n if (this.state.seenBefore) {\n this.setState({\n fadeIn: false\n });\n }\n\n if (this.props.onLoad) {\n this.props.onLoad();\n }\n };\n\n _proto.render = function render() {\n var _convertProps = convertProps(this.props),\n title = _convertProps.title,\n alt = _convertProps.alt,\n className = _convertProps.className,\n _convertProps$style = _convertProps.style,\n style = _convertProps$style === void 0 ? {} : _convertProps$style,\n _convertProps$imgStyl = _convertProps.imgStyle,\n imgStyle = _convertProps$imgStyl === void 0 ? {} : _convertProps$imgStyl,\n _convertProps$placeho = _convertProps.placeholderStyle,\n placeholderStyle = _convertProps$placeho === void 0 ? {} : _convertProps$placeho,\n placeholderClassName = _convertProps.placeholderClassName,\n fluid = _convertProps.fluid,\n fixed = _convertProps.fixed,\n backgroundColor = _convertProps.backgroundColor,\n Tag = _convertProps.Tag,\n itemProp = _convertProps.itemProp;\n\n var shouldReveal = this.state.imgLoaded || this.state.fadeIn === false;\n var shouldFadeIn = this.state.fadeIn === true && !this.state.imgCached;\n var durationFadeIn = \"0.5s\";\n var imageStyle = (0, _extends2.default)({\n opacity: shouldReveal ? 1 : 0,\n transition: shouldFadeIn ? \"opacity \" + durationFadeIn : \"none\"\n }, imgStyle);\n var bgColor = typeof backgroundColor === \"boolean\" ? \"lightgray\" : backgroundColor;\n var delayHideStyle = {\n transitionDelay: durationFadeIn\n };\n var imagePlaceholderStyle = (0, _extends2.default)({\n opacity: this.state.imgLoaded ? 0 : 1\n }, shouldFadeIn && delayHideStyle, imgStyle, placeholderStyle);\n var placeholderImageProps = {\n title: title,\n alt: !this.state.isVisible ? alt : \"\",\n style: imagePlaceholderStyle,\n className: placeholderClassName\n };\n\n if (fluid) {\n var image = fluid;\n return _react.default.createElement(Tag, {\n className: (className ? className : \"\") + \" gatsby-image-wrapper\",\n style: (0, _extends2.default)({\n position: \"relative\",\n overflow: \"hidden\"\n }, style),\n ref: this.handleRef,\n key: \"fluid-\" + JSON.stringify(image.srcSet)\n }, _react.default.createElement(Tag, {\n style: {\n width: \"100%\",\n paddingBottom: 100 / image.aspectRatio + \"%\"\n }\n }), bgColor && _react.default.createElement(Tag, {\n title: title,\n style: (0, _extends2.default)({\n backgroundColor: bgColor,\n position: \"absolute\",\n top: 0,\n bottom: 0,\n opacity: !this.state.imgLoaded ? 1 : 0,\n right: 0,\n left: 0\n }, shouldFadeIn && delayHideStyle)\n }), image.base64 && _react.default.createElement(Img, (0, _extends2.default)({\n src: image.base64\n }, placeholderImageProps)), image.tracedSVG && _react.default.createElement(Img, (0, _extends2.default)({\n src: image.tracedSVG\n }, placeholderImageProps)), this.state.isVisible && _react.default.createElement(\"picture\", null, image.srcSetWebp && _react.default.createElement(\"source\", {\n type: \"image/webp\",\n srcSet: image.srcSetWebp,\n sizes: image.sizes\n }), _react.default.createElement(Img, {\n alt: alt,\n title: title,\n sizes: image.sizes,\n src: image.src,\n crossOrigin: this.props.crossOrigin,\n srcSet: image.srcSet,\n style: imageStyle,\n ref: this.imageRef,\n onLoad: this.handleImageLoaded,\n onError: this.props.onError,\n itemProp: itemProp\n })), this.state.hasNoScript && _react.default.createElement(\"noscript\", {\n dangerouslySetInnerHTML: {\n __html: noscriptImg((0, _extends2.default)({\n alt: alt,\n title: title\n }, image))\n }\n }));\n }\n\n if (fixed) {\n var _image = fixed;\n var divStyle = (0, _extends2.default)({\n position: \"relative\",\n overflow: \"hidden\",\n display: \"inline-block\",\n width: _image.width,\n height: _image.height\n }, style);\n\n if (style.display === \"inherit\") {\n delete divStyle.display;\n }\n\n return _react.default.createElement(Tag, {\n className: (className ? className : \"\") + \" gatsby-image-wrapper\",\n style: divStyle,\n ref: this.handleRef,\n key: \"fixed-\" + JSON.stringify(_image.srcSet)\n }, bgColor && _react.default.createElement(Tag, {\n title: title,\n style: (0, _extends2.default)({\n backgroundColor: bgColor,\n width: _image.width,\n opacity: !this.state.imgLoaded ? 1 : 0,\n height: _image.height\n }, shouldFadeIn && delayHideStyle)\n }), _image.base64 && _react.default.createElement(Img, (0, _extends2.default)({\n src: _image.base64\n }, placeholderImageProps)), _image.tracedSVG && _react.default.createElement(Img, (0, _extends2.default)({\n src: _image.tracedSVG\n }, placeholderImageProps)), this.state.isVisible && _react.default.createElement(\"picture\", null, _image.srcSetWebp && _react.default.createElement(\"source\", {\n type: \"image/webp\",\n srcSet: _image.srcSetWebp,\n sizes: _image.sizes\n }), _react.default.createElement(Img, {\n alt: alt,\n title: title,\n width: _image.width,\n height: _image.height,\n sizes: _image.sizes,\n src: _image.src,\n crossOrigin: this.props.crossOrigin,\n srcSet: _image.srcSet,\n style: imageStyle,\n ref: this.imageRef,\n onLoad: this.handleImageLoaded,\n onError: this.props.onError,\n itemProp: itemProp\n })), this.state.hasNoScript && _react.default.createElement(\"noscript\", {\n dangerouslySetInnerHTML: {\n __html: noscriptImg((0, _extends2.default)({\n alt: alt,\n title: title\n }, _image))\n }\n }));\n }\n\n return null;\n };\n\n return Image;\n}(_react.default.Component);\n\nImage.defaultProps = {\n critical: false,\n fadeIn: true,\n alt: \"\",\n Tag: \"div\"\n};\n\nvar fixedObject = _propTypes.default.shape({\n width: _propTypes.default.number.isRequired,\n height: _propTypes.default.number.isRequired,\n src: _propTypes.default.string.isRequired,\n srcSet: _propTypes.default.string.isRequired,\n base64: _propTypes.default.string,\n tracedSVG: _propTypes.default.string,\n srcWebp: _propTypes.default.string,\n srcSetWebp: _propTypes.default.string\n});\n\nvar fluidObject = _propTypes.default.shape({\n aspectRatio: _propTypes.default.number.isRequired,\n src: _propTypes.default.string.isRequired,\n srcSet: _propTypes.default.string.isRequired,\n sizes: _propTypes.default.string.isRequired,\n base64: _propTypes.default.string,\n tracedSVG: _propTypes.default.string,\n srcWebp: _propTypes.default.string,\n srcSetWebp: _propTypes.default.string\n});\n\nImage.propTypes = {\n resolutions: fixedObject,\n sizes: fluidObject,\n fixed: fixedObject,\n fluid: fluidObject,\n fadeIn: _propTypes.default.bool,\n title: _propTypes.default.string,\n alt: _propTypes.default.string,\n className: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object]),\n // Support Glamor's css prop.\n critical: _propTypes.default.bool,\n crossOrigin: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),\n style: _propTypes.default.object,\n imgStyle: _propTypes.default.object,\n placeholderStyle: _propTypes.default.object,\n placeholderClassName: _propTypes.default.string,\n backgroundColor: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),\n onLoad: _propTypes.default.func,\n onError: _propTypes.default.func,\n onStartLoad: _propTypes.default.func,\n Tag: _propTypes.default.string,\n itemProp: _propTypes.default.string\n};\nvar _default = Image;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/toConsumableArray\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\n\nvar _throttle = _interopRequireDefault(require(\"./throttle\"));\n\nfunction isEqualArray(a, b) {\n return a.length === b.length && a.every(function (item, index) {\n return item === b[index];\n });\n}\n\nvar Scrollspy =\n/*#__PURE__*/\nfunction (_React$Component) {\n (0, _inherits2.default)(Scrollspy, _React$Component);\n (0, _createClass2.default)(Scrollspy, null, [{\n key: \"propTypes\",\n get: function get() {\n return {\n items: _propTypes.default.arrayOf(_propTypes.default.string).isRequired,\n currentClassName: _propTypes.default.string.isRequired,\n scrolledPastClassName: _propTypes.default.string,\n style: _propTypes.default.object,\n componentTag: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func]),\n offset: _propTypes.default.number,\n rootEl: _propTypes.default.string,\n onUpdate: _propTypes.default.func\n };\n }\n }, {\n key: \"defaultProps\",\n get: function get() {\n return {\n items: [],\n currentClassName: '',\n style: {},\n componentTag: 'ul',\n offset: 0,\n onUpdate: function onUpdate() {}\n };\n }\n }]);\n\n function Scrollspy(props) {\n var _this;\n\n (0, _classCallCheck2.default)(this, Scrollspy);\n _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(Scrollspy).call(this, props));\n _this.state = {\n targetItems: [],\n inViewState: [],\n isScrolledPast: [] // manually bind as ES6 does not apply this\n // auto binding as React.createClass does\n\n };\n _this._handleSpy = _this._handleSpy.bind((0, _assertThisInitialized2.default)(_this));\n return _this;\n }\n\n (0, _createClass2.default)(Scrollspy, [{\n key: \"_initSpyTarget\",\n value: function _initSpyTarget(items) {\n var targetItems = items.map(function (item) {\n return document.getElementById(item);\n });\n return targetItems;\n } // https://github.com/makotot/react-scrollspy/pull/45\n\n }, {\n key: \"_fillArray\",\n value: function _fillArray(array, val) {\n var newArray = [];\n\n for (var i = 0, max = array.length; i < max; i++) {\n newArray[i] = val;\n }\n\n return newArray;\n }\n }, {\n key: \"_isScrolled\",\n value: function _isScrolled() {\n return this._getScrollDimension().scrollTop > 0;\n }\n }, {\n key: \"_getScrollDimension\",\n value: function _getScrollDimension() {\n var doc = document;\n var rootEl = this.props.rootEl;\n var scrollTop = rootEl ? doc.querySelector(rootEl).scrollTop : doc.documentElement.scrollTop || doc.body.parentNode.scrollTop || doc.body.scrollTop;\n var scrollHeight = rootEl ? doc.querySelector(rootEl).scrollHeight : doc.documentElement.scrollHeight || doc.body.parentNode.scrollHeight || doc.body.scrollHeight;\n return {\n scrollTop: scrollTop,\n scrollHeight: scrollHeight\n };\n }\n }, {\n key: \"_getElemsViewState\",\n value: function _getElemsViewState(targets) {\n var elemsInView = [];\n var elemsOutView = [];\n var viewStatusList = [];\n var targetItems = targets ? targets : this.state.targetItems;\n var hasInViewAlready = false;\n\n for (var i = 0, max = targetItems.length; i < max; i++) {\n var currentContent = targetItems[i];\n var isInView = hasInViewAlready ? false : this._isInView(currentContent);\n\n if (isInView) {\n hasInViewAlready = true;\n elemsInView.push(currentContent);\n } else {\n elemsOutView.push(currentContent);\n }\n\n var isLastItem = i === max - 1;\n\n var isScrolled = this._isScrolled(); // https://github.com/makotot/react-scrollspy/pull/26#issue-167413769\n\n\n var isLastShortItemAtBottom = this._isAtBottom() && this._isInView(currentContent) && !isInView && isLastItem && isScrolled;\n\n if (isLastShortItemAtBottom) {\n elemsOutView.pop();\n elemsOutView.push.apply(elemsOutView, (0, _toConsumableArray2.default)(elemsInView));\n elemsInView = [currentContent];\n viewStatusList = this._fillArray(viewStatusList, false);\n isInView = true;\n }\n\n viewStatusList.push(isInView);\n }\n\n return {\n inView: elemsInView,\n outView: elemsOutView,\n viewStatusList: viewStatusList,\n scrolledPast: this.props.scrolledPastClassName && this._getScrolledPast(viewStatusList)\n };\n }\n }, {\n key: \"_isInView\",\n value: function _isInView(el) {\n if (!el) {\n return false;\n }\n\n var _this$props = this.props,\n rootEl = _this$props.rootEl,\n offset = _this$props.offset;\n var rootRect;\n\n if (rootEl) {\n rootRect = document.querySelector(rootEl).getBoundingClientRect();\n }\n\n var rect = el.getBoundingClientRect();\n var winH = rootEl ? rootRect.height : window.innerHeight;\n\n var _this$_getScrollDimen = this._getScrollDimension(),\n scrollTop = _this$_getScrollDimen.scrollTop;\n\n var scrollBottom = scrollTop + winH;\n var elTop = rootEl ? rect.top + scrollTop - rootRect.top + offset : rect.top + scrollTop + offset;\n var elBottom = elTop + el.offsetHeight;\n return elTop < scrollBottom && elBottom > scrollTop;\n }\n }, {\n key: \"_isAtBottom\",\n value: function _isAtBottom() {\n var rootEl = this.props.rootEl;\n\n var _this$_getScrollDimen2 = this._getScrollDimension(),\n scrollTop = _this$_getScrollDimen2.scrollTop,\n scrollHeight = _this$_getScrollDimen2.scrollHeight;\n\n var winH = rootEl ? document.querySelector(rootEl).getBoundingClientRect().height : window.innerHeight;\n var scrolledToBottom = scrollTop + winH >= scrollHeight;\n return scrolledToBottom;\n }\n }, {\n key: \"_getScrolledPast\",\n value: function _getScrolledPast(viewStatusList) {\n if (!viewStatusList.some(function (item) {\n return item;\n })) {\n return viewStatusList;\n }\n\n var hasFoundInView = false;\n var scrolledPastItems = viewStatusList.map(function (item) {\n if (item && !hasFoundInView) {\n hasFoundInView = true;\n return false;\n }\n\n return !hasFoundInView;\n });\n return scrolledPastItems;\n }\n }, {\n key: \"_spy\",\n value: function _spy(targets) {\n var _this2 = this;\n\n var elemensViewState = this._getElemsViewState(targets);\n\n var currentStatuses = this.state.inViewState;\n this.setState({\n inViewState: elemensViewState.viewStatusList,\n isScrolledPast: elemensViewState.scrolledPast\n }, function () {\n _this2._update(currentStatuses);\n });\n }\n }, {\n key: \"_update\",\n value: function _update(prevStatuses) {\n if (isEqualArray(this.state.inViewState, prevStatuses)) {\n return;\n }\n\n this.props.onUpdate(this.state.targetItems[this.state.inViewState.indexOf(true)]);\n }\n }, {\n key: \"_handleSpy\",\n value: function _handleSpy() {\n (0, _throttle.default)(this._spy(), 100);\n }\n }, {\n key: \"_initFromProps\",\n value: function _initFromProps() {\n var targetItems = this._initSpyTarget(this.props.items);\n\n this.setState({\n targetItems: targetItems\n });\n\n this._spy(targetItems);\n }\n }, {\n key: \"offEvent\",\n value: function offEvent() {\n var el = this.props.rootEl ? document.querySelector(this.props.rootEl) : window;\n el.removeEventListener('scroll', this._handleSpy);\n }\n }, {\n key: \"onEvent\",\n value: function onEvent() {\n var el = this.props.rootEl ? document.querySelector(this.props.rootEl) : window;\n el.addEventListener('scroll', this._handleSpy);\n }\n }, {\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this._initFromProps();\n\n this.onEvent();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.offEvent();\n }\n }, {\n key: \"componentWillReceiveProps\",\n value: function componentWillReceiveProps() {\n this._initFromProps();\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this3 = this;\n\n var Tag = this.props.componentTag;\n var _this$props2 = this.props,\n children = _this$props2.children,\n className = _this$props2.className,\n scrolledPastClassName = _this$props2.scrolledPastClassName,\n style = _this$props2.style;\n var counter = 0;\n\n var items = _react.default.Children.map(children, function (child, idx) {\n var _classNames;\n\n if (!child) {\n return null;\n }\n\n var ChildTag = child.type;\n var isScrolledPast = scrolledPastClassName && _this3.state.isScrolledPast[idx];\n var childClass = (0, _classnames.default)((_classNames = {}, (0, _defineProperty2.default)(_classNames, \"\".concat(child.props.className), child.props.className), (0, _defineProperty2.default)(_classNames, \"\".concat(_this3.props.currentClassName), _this3.state.inViewState[idx]), (0, _defineProperty2.default)(_classNames, \"\".concat(_this3.props.scrolledPastClassName), isScrolledPast), _classNames));\n return _react.default.createElement(ChildTag, (0, _extends2.default)({}, child.props, {\n className: childClass,\n key: counter++\n }), child.props.children);\n });\n\n var itemClass = (0, _classnames.default)((0, _defineProperty2.default)({}, \"\".concat(className), className));\n return _react.default.createElement(Tag, {\n className: itemClass,\n style: style\n }, items);\n }\n }]);\n return Scrollspy;\n}(_react.default.Component);\n\nexports.default = Scrollspy;","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n }\n}\n\nmodule.exports = _arrayWithoutHoles;","function _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nmodule.exports = _nonIterableSpread;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","var _typeof = require(\"../helpers/typeof\");\n\nvar assertThisInitialized = require(\"./assertThisInitialized\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;","function _typeof2(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof2(obj); }\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && _typeof2(Symbol.iterator) === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return _typeof2(obj);\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : _typeof2(obj);\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;","/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar throttle = function throttle(fn) {\n var threshold = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 100;\n var last;\n var timer;\n return function () {\n var now = +new Date();\n var timePassed = !!last && now < last + threshold;\n\n if (timePassed) {\n clearTimeout(timer);\n timer = setTimeout(function () {\n last = now;\n fn();\n }, threshold);\n } else {\n last = now;\n fn();\n }\n };\n};\n\nvar _default = throttle;\nexports.default = _default;","/* smoothscroll v0.4.4 - 2019 - Dustan Kasten, Jeremias Menichelli - MIT License */\n(function () {\n 'use strict';\n\n // polyfill\n function polyfill() {\n // aliases\n var w = window;\n var d = document;\n\n // return if scroll behavior is supported and polyfill is not forced\n if (\n 'scrollBehavior' in d.documentElement.style &&\n w.__forceSmoothScrollPolyfill__ !== true\n ) {\n return;\n }\n\n // globals\n var Element = w.HTMLElement || w.Element;\n var SCROLL_TIME = 468;\n\n // object gathering original scroll methods\n var original = {\n scroll: w.scroll || w.scrollTo,\n scrollBy: w.scrollBy,\n elementScroll: Element.prototype.scroll || scrollElement,\n scrollIntoView: Element.prototype.scrollIntoView\n };\n\n // define timing method\n var now =\n w.performance && w.performance.now\n ? w.performance.now.bind(w.performance)\n : Date.now;\n\n /**\n * indicates if a the current browser is made by Microsoft\n * @method isMicrosoftBrowser\n * @param {String} userAgent\n * @returns {Boolean}\n */\n function isMicrosoftBrowser(userAgent) {\n var userAgentPatterns = ['MSIE ', 'Trident/', 'Edge/'];\n\n return new RegExp(userAgentPatterns.join('|')).test(userAgent);\n }\n\n /*\n * IE has rounding bug rounding down clientHeight and clientWidth and\n * rounding up scrollHeight and scrollWidth causing false positives\n * on hasScrollableSpace\n */\n var ROUNDING_TOLERANCE = isMicrosoftBrowser(w.navigator.userAgent) ? 1 : 0;\n\n /**\n * changes scroll position inside an element\n * @method scrollElement\n * @param {Number} x\n * @param {Number} y\n * @returns {undefined}\n */\n function scrollElement(x, y) {\n this.scrollLeft = x;\n this.scrollTop = y;\n }\n\n /**\n * returns result of applying ease math function to a number\n * @method ease\n * @param {Number} k\n * @returns {Number}\n */\n function ease(k) {\n return 0.5 * (1 - Math.cos(Math.PI * k));\n }\n\n /**\n * indicates if a smooth behavior should be applied\n * @method shouldBailOut\n * @param {Number|Object} firstArg\n * @returns {Boolean}\n */\n function shouldBailOut(firstArg) {\n if (\n firstArg === null ||\n typeof firstArg !== 'object' ||\n firstArg.behavior === undefined ||\n firstArg.behavior === 'auto' ||\n firstArg.behavior === 'instant'\n ) {\n // first argument is not an object/null\n // or behavior is auto, instant or undefined\n return true;\n }\n\n if (typeof firstArg === 'object' && firstArg.behavior === 'smooth') {\n // first argument is an object and behavior is smooth\n return false;\n }\n\n // throw error when behavior is not supported\n throw new TypeError(\n 'behavior member of ScrollOptions ' +\n firstArg.behavior +\n ' is not a valid value for enumeration ScrollBehavior.'\n );\n }\n\n /**\n * indicates if an element has scrollable space in the provided axis\n * @method hasScrollableSpace\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function hasScrollableSpace(el, axis) {\n if (axis === 'Y') {\n return el.clientHeight + ROUNDING_TOLERANCE < el.scrollHeight;\n }\n\n if (axis === 'X') {\n return el.clientWidth + ROUNDING_TOLERANCE < el.scrollWidth;\n }\n }\n\n /**\n * indicates if an element has a scrollable overflow property in the axis\n * @method canOverflow\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function canOverflow(el, axis) {\n var overflowValue = w.getComputedStyle(el, null)['overflow' + axis];\n\n return overflowValue === 'auto' || overflowValue === 'scroll';\n }\n\n /**\n * indicates if an element can be scrolled in either axis\n * @method isScrollable\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function isScrollable(el) {\n var isScrollableY = hasScrollableSpace(el, 'Y') && canOverflow(el, 'Y');\n var isScrollableX = hasScrollableSpace(el, 'X') && canOverflow(el, 'X');\n\n return isScrollableY || isScrollableX;\n }\n\n /**\n * finds scrollable parent of an element\n * @method findScrollableParent\n * @param {Node} el\n * @returns {Node} el\n */\n function findScrollableParent(el) {\n while (el !== d.body && isScrollable(el) === false) {\n el = el.parentNode || el.host;\n }\n\n return el;\n }\n\n /**\n * self invoked function that, given a context, steps through scrolling\n * @method step\n * @param {Object} context\n * @returns {undefined}\n */\n function step(context) {\n var time = now();\n var value;\n var currentX;\n var currentY;\n var elapsed = (time - context.startTime) / SCROLL_TIME;\n\n // avoid elapsed times higher than one\n elapsed = elapsed > 1 ? 1 : elapsed;\n\n // apply easing to elapsed time\n value = ease(elapsed);\n\n currentX = context.startX + (context.x - context.startX) * value;\n currentY = context.startY + (context.y - context.startY) * value;\n\n context.method.call(context.scrollable, currentX, currentY);\n\n // scroll more if we have not reached our destination\n if (currentX !== context.x || currentY !== context.y) {\n w.requestAnimationFrame(step.bind(w, context));\n }\n }\n\n /**\n * scrolls window or element with a smooth behavior\n * @method smoothScroll\n * @param {Object|Node} el\n * @param {Number} x\n * @param {Number} y\n * @returns {undefined}\n */\n function smoothScroll(el, x, y) {\n var scrollable;\n var startX;\n var startY;\n var method;\n var startTime = now();\n\n // define scroll context\n if (el === d.body) {\n scrollable = w;\n startX = w.scrollX || w.pageXOffset;\n startY = w.scrollY || w.pageYOffset;\n method = original.scroll;\n } else {\n scrollable = el;\n startX = el.scrollLeft;\n startY = el.scrollTop;\n method = scrollElement;\n }\n\n // scroll looping over a frame\n step({\n scrollable: scrollable,\n method: method,\n startTime: startTime,\n startX: startX,\n startY: startY,\n x: x,\n y: y\n });\n }\n\n // ORIGINAL METHODS OVERRIDES\n // w.scroll and w.scrollTo\n w.scroll = w.scrollTo = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.scroll.call(\n w,\n arguments[0].left !== undefined\n ? arguments[0].left\n : typeof arguments[0] !== 'object'\n ? arguments[0]\n : w.scrollX || w.pageXOffset,\n // use top prop, second argument if present or fallback to scrollY\n arguments[0].top !== undefined\n ? arguments[0].top\n : arguments[1] !== undefined\n ? arguments[1]\n : w.scrollY || w.pageYOffset\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n w,\n d.body,\n arguments[0].left !== undefined\n ? ~~arguments[0].left\n : w.scrollX || w.pageXOffset,\n arguments[0].top !== undefined\n ? ~~arguments[0].top\n : w.scrollY || w.pageYOffset\n );\n };\n\n // w.scrollBy\n w.scrollBy = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0])) {\n original.scrollBy.call(\n w,\n arguments[0].left !== undefined\n ? arguments[0].left\n : typeof arguments[0] !== 'object' ? arguments[0] : 0,\n arguments[0].top !== undefined\n ? arguments[0].top\n : arguments[1] !== undefined ? arguments[1] : 0\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n w,\n d.body,\n ~~arguments[0].left + (w.scrollX || w.pageXOffset),\n ~~arguments[0].top + (w.scrollY || w.pageYOffset)\n );\n };\n\n // Element.prototype.scroll and Element.prototype.scrollTo\n Element.prototype.scroll = Element.prototype.scrollTo = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n // if one number is passed, throw error to match Firefox implementation\n if (typeof arguments[0] === 'number' && arguments[1] === undefined) {\n throw new SyntaxError('Value could not be converted');\n }\n\n original.elementScroll.call(\n this,\n // use left prop, first number argument or fallback to scrollLeft\n arguments[0].left !== undefined\n ? ~~arguments[0].left\n : typeof arguments[0] !== 'object' ? ~~arguments[0] : this.scrollLeft,\n // use top prop, second argument or fallback to scrollTop\n arguments[0].top !== undefined\n ? ~~arguments[0].top\n : arguments[1] !== undefined ? ~~arguments[1] : this.scrollTop\n );\n\n return;\n }\n\n var left = arguments[0].left;\n var top = arguments[0].top;\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n this,\n this,\n typeof left === 'undefined' ? this.scrollLeft : ~~left,\n typeof top === 'undefined' ? this.scrollTop : ~~top\n );\n };\n\n // Element.prototype.scrollBy\n Element.prototype.scrollBy = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.elementScroll.call(\n this,\n arguments[0].left !== undefined\n ? ~~arguments[0].left + this.scrollLeft\n : ~~arguments[0] + this.scrollLeft,\n arguments[0].top !== undefined\n ? ~~arguments[0].top + this.scrollTop\n : ~~arguments[1] + this.scrollTop\n );\n\n return;\n }\n\n this.scroll({\n left: ~~arguments[0].left + this.scrollLeft,\n top: ~~arguments[0].top + this.scrollTop,\n behavior: arguments[0].behavior\n });\n };\n\n // Element.prototype.scrollIntoView\n Element.prototype.scrollIntoView = function() {\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.scrollIntoView.call(\n this,\n arguments[0] === undefined ? true : arguments[0]\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n var scrollableParent = findScrollableParent(this);\n var parentRects = scrollableParent.getBoundingClientRect();\n var clientRects = this.getBoundingClientRect();\n\n if (scrollableParent !== d.body) {\n // reveal element inside parent\n smoothScroll.call(\n this,\n scrollableParent,\n scrollableParent.scrollLeft + clientRects.left - parentRects.left,\n scrollableParent.scrollTop + clientRects.top - parentRects.top\n );\n\n // reveal parent in viewport unless is fixed\n if (w.getComputedStyle(scrollableParent).position !== 'fixed') {\n w.scrollBy({\n left: parentRects.left,\n top: parentRects.top,\n behavior: 'smooth'\n });\n }\n } else {\n // reveal element in viewport\n w.scrollBy({\n left: clientRects.left,\n top: clientRects.top,\n behavior: 'smooth'\n });\n }\n };\n }\n\n if (typeof exports === 'object' && typeof module !== 'undefined') {\n // commonjs\n module.exports = { polyfill: polyfill };\n } else {\n // global\n polyfill();\n }\n\n}());\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n};\nfunction __export(m) {\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\n}\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar embed_api_1 = require(\"@widgetbot/embed-api\");\nvar React = require(\"react\");\nvar elements_1 = require(\"./elements\");\nvar util_1 = require(\"./util\");\nvar WidgetBot = /** @class */ (function (_super) {\n __extends(WidgetBot, _super);\n function WidgetBot() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.state = {\n url: null,\n id: util_1.generateUUID()\n };\n _this.api = new embed_api_1.Client({\n id: _this.state.id,\n iframe: null\n });\n return _this;\n }\n WidgetBot.getDerivedStateFromProps = function (props, state) {\n var url = props.shard + \"/channels/\" + props.server + (props.channel ? \"/\" + props.channel : '') + \"/\" + util_1.searchParams(__assign({}, props.options, { api: state.id }));\n return { url: url };\n };\n WidgetBot.prototype.componentDidMount = function () {\n var onAPI = this.props.onAPI;\n if (onAPI)\n onAPI(this.api);\n };\n WidgetBot.prototype.render = function () {\n var _this = this;\n var _a = this.props, defer = _a.defer, className = _a.className, style = _a.style, height = _a.height, width = _a.width;\n return (React.createElement(\"div\", { className: className, style: __assign({}, elements_1.Root({ width: width, height: height }), style) },\n React.createElement(\"iframe\", { src: defer ? '' : this.state.url, ref: function (ref) { return (_this.api.iframe = ref); }, style: elements_1.Embed })));\n };\n WidgetBot.defaultProps = {\n server: '299881420891881473',\n shard: 'https://widgetbot.io',\n options: {},\n defer: false\n };\n return WidgetBot;\n}(React.PureComponent));\nexports.default = WidgetBot;\n__export(require(\"@widgetbot/embed-api\"));\nvar embed_api_2 = require(\"@widgetbot/embed-api\");\nexports.API = embed_api_2.Client;\n","\"use strict\";\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nvar api_1 = require(\"./api\");\r\nvar Client = /** @class */ (function (_super) {\r\n __extends(Client, _super);\r\n function Client(options) {\r\n var _this = _super.call(this) || this;\r\n _this.server = {\r\n emit: function (event, data) {\r\n var listeners = _this.listeners[event];\r\n if (listeners) {\r\n listeners.forEach(function (listener) { return listener(data); });\r\n }\r\n }\r\n };\r\n Object.assign(_this, options);\r\n window.addEventListener('message', function (_a) {\r\n var data = _a.data;\r\n return _this.socketEvent(data);\r\n });\r\n return _this;\r\n }\r\n /**\r\n * Emits an event to the client\r\n * @param event Event name\r\n * @param data Event data\r\n */\r\n Client.prototype.emit = function (event, data) {\r\n if (!window.parent)\r\n return false;\r\n var parsed = JSON.stringify({\r\n widgetbot: true,\r\n id: this.id,\r\n event: event,\r\n data: data\r\n });\r\n if (this.iframe.contentWindow) {\r\n this.iframe.contentWindow.postMessage(parsed, '*');\r\n return true;\r\n }\r\n return false;\r\n };\r\n return Client;\r\n}(api_1.default));\r\nexports.default = Client;\r\n","\"use strict\";\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nvar api_1 = require(\"./api\");\r\nvar Server = /** @class */ (function (_super) {\r\n __extends(Server, _super);\r\n function Server(options) {\r\n var _this = _super.call(this) || this;\r\n _this.targetOrigin = '*';\r\n _this.client = {\r\n emit: function (event, data) {\r\n var listeners = _this.listeners[event];\r\n if (listeners) {\r\n listeners.forEach(function (listener) { return listener(data); });\r\n }\r\n }\r\n };\r\n Object.assign(_this, options);\r\n window.addEventListener('message', function (_a) {\r\n var data = _a.data;\r\n return _this.socketEvent(data);\r\n });\r\n return _this;\r\n }\r\n /**\r\n * Emits an event to the client\r\n * @param event Event name\r\n * @param data Event data\r\n */\r\n Server.prototype.emit = function (event, data) {\r\n console.debug(\"[embed-api] emit '\" + event + \"'\", data);\r\n if (!window.parent)\r\n return false;\r\n var parsed = JSON.stringify({\r\n widgetbot: true,\r\n id: this.id,\r\n event: event,\r\n data: data\r\n });\r\n window.parent.postMessage(parsed, this.targetOrigin);\r\n return true;\r\n };\r\n return Server;\r\n}(api_1.default));\r\nexports.default = Server;\r\n","\"use strict\";\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Root = function (_a) {\n var width = _a.width, height = _a.height;\n return (__assign({}, (height && { height: +height ? height + \"px\" : height }), (width && { width: +width ? width + \"px\" : width }), { display: 'inline-block', overflow: 'hidden', backgroundColor: 'rgb(54, 57, 62)', borderRadius: 7, verticalAlign: 'top' }));\n};\nexports.Embed = {\n width: '100%',\n height: '100%',\n border: 'none'\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction generateUUID() {\n var d = new Date().getTime();\n if (typeof performance !== 'undefined' &&\n typeof performance.now === 'function') {\n d += performance.now(); // use high-precision timer if available\n }\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n var r = (d + Math.random() * 16) % 16 | 0;\n d = Math.floor(d / 16);\n return (c === 'x' ? r : (r & 0x3) | 0x8).toString(16);\n });\n}\nexports.generateUUID = generateUUID;\nexports.searchParams = function (obj) {\n if (obj === void 0) { obj = {}; }\n return '?' +\n Object.keys(obj)\n .map(function (k) { return encodeURIComponent(k) + \"=\" + encodeURIComponent(obj[k]); })\n .join('&');\n};\n"],"sourceRoot":""}