{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/components/collapse/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/dropdown-group.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/dropdown-form.js","webpack:///./node_modules/bootstrap-vue/esm/components/collapse/collapse.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/dropdown-header.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/dropdown-item-button.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/dropdown-item.js","webpack:///./node_modules/bootstrap-vue/esm/components/embed/embed.js","webpack:///./node_modules/bootstrap-vue/esm/components/carousel/carousel.js","webpack:///./node_modules/bootstrap-vue/esm/components/carousel/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/dropdown.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/dropdown-text.js","webpack:///./node_modules/bootstrap-vue/esm/components/embed/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/dropdown/dropdown-divider.js","webpack:///./node_modules/bootstrap-vue/esm/components/carousel/carousel-slide.js"],"names":["CollapsePlugin","components","BCollapse","plugins","VBTogglePlugin","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","configurable","writable","props","id","type","String","header","headerTag","default","headerVariant","headerClasses","Array","ariaDescribedby","BDropdownGroup","extend","name","functional","render","h","_ref","data","slots","scopedSlots","$slots","$scopedSlots","$attrs","attrs","headerId","concat","staticClass","class","variant","role","adb","ariaDescribedBy","join","trim","BDropdownForm","disabled","Boolean","formClass","children","$listeners","on","ref","tabindex","EVENT_ACCORDION","mixins","model","prop","event","isNav","accordion","visible","tag","appear","show","this","transitioning","computed","classObject","collapse","watch","newVal","oldVal","emitState","created","mounted","_this","listenOnRoot","handleToggleEvt","handleAccordionEvt","setWindowEvents","handleResize","$nextTick","safeId","emitSync","updated","deactivated","activated","beforeDestroy","methods","window","toggle","onEnter","$emit","onAfterEnter","onLeave","onAfterLeave","emitOnRoot","checkDisplayBlock","restore","$el","isBlock","display","clickHandler","evt","el","openedId","_this2","scope","close","content","directives","click","normalizeSlot","enter","afterEnter","leave","afterLeave","BDropdownHeader","active","activeClass","buttonClass","BDropdownItemButton","inject","bvDropdown","inheritAttrs","computedAttrs","bvAttrs","closeDropdown","hide","onClick","DropdownPlugin","BDropdown","BDd","BDropdownItem","BDdItem","BDropdownItemBtn","BDdItemButton","BDdItemBtn","BDdHeader","BDropdownDivider","BDdDivider","BDdForm","BDropdownText","BDdText","BDdGroup","linkClass","$props","TYPES","validator","aspect","BEmbed","DIRECTION","next","dirClass","overlayClass","prev","TRANS_DURATION","TOUCH_EVENT_COMPAT_WAIT","SWIPE_THRESHOLD","PointerType","TOUCH","PEN","TransitionEndEvents","WebkitTransition","MozTransition","OTransition","transition","getTransitionEndEvent","style","BCarousel","provide","bvCarousel","labelPrev","labelNext","labelGotoSlide","labelIndicators","interval","Number","indicators","controls","noAnimation","fade","noWrap","noTouch","noHoverPause","imgWidth","imgHeight","background","index","isSliding","transitionEndEvent","slides","direction","isPaused","touchStartX","touchDeltaX","numSlides","setSlide","pause","start","to","from","doSlide","$_interval","$_animationTimeout","$_touchTimeout","$_observer","updateSlides","setObserver","clearInterval","clearAnimationTimeout","clearTouchTimeout","_clearInterval","toString","clearTimeout","undefined","disconnect","$refs","inner","bind","subtree","childList","attributes","attributeFilter","slide","document","visibilityState","hidden","$once","setInterval","restart","contains","isCycling","calcDirection","currentSlide","nextSlide","called","onceTransEnd","events","split","setTimeout","idx","n","curIndex","nextIndex","handleClick","fn","keyCode","handleSwipe","absDeltaX","touchStart","pointerType","toUpperCase","clientX","touches","touchMove","touchEnd","_this3","prevHandler","propagation","nextHandler","href","keydown","rawName","expression","map","mouseenter","mouseleave","focusin","focusout","test","tagName","CarouselPlugin","BCarouselSlide","text","html","size","block","menuClass","toggleTag","toggleText","toggleClass","noCaret","splitHref","splitTo","splitVariant","splitClass","splitButtonType","lazy","dropdownClasses","directionClass","boundaryClass","menuClasses","right","toggleClasses","commonProps","buttonContentSlotName","$buttonChildren","buttonContentDomProps","hasNormalizedSlot","$split","btnProps","domProps","onSplitClick","$toggle","mousedown","onMousedown","$menu","onKeydown","textClass","EmbedPlugin","imgProps","imgSrc","imgAlt","imgBlank","imgBlankColor","contentVisibleUp","contentTag","caption","captionHtml","captionTag","textHtml","textTag","contentClasses","computedWidth","computedHeight","$img","dragstart","width","height","fluidGrow","$contentChildren","$content","some","$child"],"mappings":"0HAAA,0EAGIA,EAA8B,eAAc,CAC9CC,WAAY,CACVC,UAAW,QAEbC,QAAS,CACPC,eAAgB,W,kCCRpB,mIAASC,EAAQC,EAAQC,GAAkB,IAAIC,EAAOC,OAAOD,KAAKF,GAAS,GAAIG,OAAOC,sBAAuB,CAAE,IAAIC,EAAUF,OAAOC,sBAAsBJ,GAAaC,IAAgBI,EAAUA,EAAQC,QAAO,SAAUC,GAAO,OAAOJ,OAAOK,yBAAyBR,EAAQO,GAAKE,eAAgBP,EAAKQ,KAAKC,MAAMT,EAAMG,GAAY,OAAOH,EAE9U,SAASU,EAAcC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAKf,EAAQI,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAOC,EAAgBP,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmBlB,EAAQI,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAASO,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAQpM,IAAII,EAAQ,eAAsB,CACvCC,GAAI,CACFC,KAAMC,QAGRC,OAAQ,CACNF,KAAMC,QAGRE,UAAW,CACTH,KAAMC,OACNG,QAAS,UAEXC,cAAe,CACbL,KAAMC,QAGRK,cAAe,CACbN,KAAM,CAACC,OAAQM,MAAOlC,SAGxBmC,gBAAiB,CACfR,KAAMC,SAGP,QAEQQ,EAA8B,OAAIC,OAAO,CAClDC,KAAM,OACNC,YAAY,EACZd,MAAOA,EACPe,OAAQ,SAAgBC,EAAGC,GACzB,IAQIb,EARAJ,EAAQiB,EAAKjB,MACbkB,EAAOD,EAAKC,KACZC,EAAQF,EAAKE,MACbC,EAAcH,EAAKG,YACnBC,EAASF,IACTG,EAAeF,GAAe,GAC9BG,EAASL,EAAKM,OAAS,GAC3BN,EAAKM,MAAQ,GAEb,IAAIC,EAAW,MAEX,eAAkB,OAAkBH,EAAcD,IAAWrB,EAAMI,UACrEqB,EAAWzB,EAAMC,GAAK,OAAOyB,OAAO1B,EAAMC,GAAI,oBAAsB,KACpEG,EAASY,EAAEhB,EAAMK,UAAW,CAC1BsB,YAAa,kBACbC,MAAO,CAAC5B,EAAMQ,cAAehB,EAAgB,GAAI,QAAQkC,OAAO1B,EAAM6B,SAAU7B,EAAM6B,UACtFL,MAAO,CACLvB,GAAIwB,EACJK,KAAM,YAEP,eAAc,OAAkB,GAAIR,EAAcD,IAAWrB,EAAMI,SAGxE,IAAI2B,EAAM,CAACN,EAAUzB,EAAMgC,iBAAiBtD,OAAO,QAAUuD,KAAK,KAAKC,OACvE,OAAOlB,EAAE,KAAM,eAAUE,EAAM,CAC7BM,MAAO,CACLM,KAAM,kBAEN,CAAC1B,GAAUY,IAAKA,EAAE,KAAM,CAC1BW,YAAa,gBACbH,MAAOxC,EAAcA,EAAc,GAAIuC,GAAS,GAAI,CAClDtB,GAAID,EAAMC,IAAM,KAChB6B,KAAM,QACN,mBAAoBC,GAAO,QAE5B,eAAc,OAAmB,GAAIT,EAAcD,U,kCC/E1D,2GAASlD,EAAQC,EAAQC,GAAkB,IAAIC,EAAOC,OAAOD,KAAKF,GAAS,GAAIG,OAAOC,sBAAuB,CAAE,IAAIC,EAAUF,OAAOC,sBAAsBJ,GAAaC,IAAgBI,EAAUA,EAAQC,QAAO,SAAUC,GAAO,OAAOJ,OAAOK,yBAAyBR,EAAQO,GAAKE,eAAgBP,EAAKQ,KAAKC,MAAMT,EAAMG,GAAY,OAAOH,EAE9U,SAASU,EAAcC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAKf,EAAQI,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAOC,EAAgBP,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmBlB,EAAQI,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAASO,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAOpM,IAAIuC,EAA6B,OAAIvB,OAAO,CACjDC,KAAM,OACNC,YAAY,EACZd,MAAO,eAAsBhB,EAAcA,EAAc,GAAI,QAAmB,GAAI,CAClFoD,SAAU,CACRlC,KAAMmC,QACN/B,SAAS,GAEXgC,UAAW,CACTpC,KAAM,CAACC,OAAQ5B,OAAQkC,UAGvB,QACJM,OAAQ,SAAgBC,EAAGC,GACzB,IAAIjB,EAAQiB,EAAKjB,MACbkB,EAAOD,EAAKC,KACZqB,EAAWtB,EAAKsB,SAChBhB,EAASL,EAAKM,OAAS,GACvBgB,EAAatB,EAAKuB,IAAM,GAG5B,OAFAvB,EAAKM,MAAQ,GACbN,EAAKuB,GAAK,GACHzB,EAAE,KAAM,eAAUE,EAAM,CAC7BM,MAAO,CACLM,KAAM,kBAEN,CAACd,EAAE,OAAO,CACZ0B,IAAK,OACLf,YAAa,kBACbC,MAAO,CAAC5B,EAAMsC,UAAW,CACvBF,SAAUpC,EAAMoC,WAElBpC,MAAOA,EACPwB,MAAOxC,EAAcA,EAAc,GAAIuC,GAAS,GAAI,CAClDa,SAAUpC,EAAMoC,SAEhBO,SAAU3C,EAAMoC,SAAW,KAAO,OAEpCK,GAAID,GACHD,S,kCCjDP,kMAeIK,EAAkB,0BAGX5E,EAAyB,OAAI4C,OAAO,CAC7CC,KAAM,OACNgC,OAAQ,CAAC,OAAS,OAAmB,QACrCC,MAAO,CACLC,KAAM,UACNC,MAAO,SAEThD,MAAO,eAAsB,CAC3BiD,MAAO,CACL/C,KAAMmC,QACN/B,SAAS,GAEX4C,UAAW,CACThD,KAAMC,QAGRgD,QAAS,CACPjD,KAAMmC,QACN/B,SAAS,GAEX8C,IAAK,CACHlD,KAAMC,OACNG,QAAS,OAEX+C,OAAQ,CAENnD,KAAMmC,QACN/B,SAAS,IAEV,QACHY,KAAM,WACJ,MAAO,CACLoC,KAAMC,KAAKJ,QACXK,eAAe,IAGnBC,SAAU,CACRC,YAAa,WACX,MAAO,CACL,kBAAmBH,KAAKN,MACxBU,UAAWJ,KAAKC,cAChBF,KAAMC,KAAKD,OAASC,KAAKC,iBAI/BI,MAAO,CACLT,QAAS,SAAiBU,GACpBA,IAAWN,KAAKD,OAClBC,KAAKD,KAAOO,IAGhBP,KAAM,SAAcO,EAAQC,GACtBD,IAAWC,GACbP,KAAKQ,cAIXC,QAAS,WACPT,KAAKD,KAAOC,KAAKJ,SAEnBc,QAAS,WACP,IAAIC,EAAQX,KAEZA,KAAKD,KAAOC,KAAKJ,QAEjBI,KAAKY,aAAa,OAAcZ,KAAKa,iBAErCb,KAAKY,aAAavB,EAAiBW,KAAKc,oBAEpCd,KAAKN,QAEPM,KAAKe,iBAAgB,GACrBf,KAAKgB,gBAGPhB,KAAKiB,WAAU,WACbN,EAAMH,eAGRR,KAAKY,aAAa,QAAqB,SAAUlE,GAC3CA,IAAOiE,EAAMO,UACfP,EAAMM,UAAUN,EAAMQ,cAI5BC,QAAS,WAIPpB,KAAKmB,YAIPE,YAAa,WACPrB,KAAKN,OACPM,KAAKe,iBAAgB,IAKzBO,UAAW,WACLtB,KAAKN,OACPM,KAAKe,iBAAgB,GAGvBf,KAAKmB,YAEPI,cAAe,WAEbvB,KAAKD,MAAO,EAERC,KAAKN,OAAS,QAChBM,KAAKe,iBAAgB,IAGzBS,QAAS,CACPT,gBAAiB,SAAyB7B,GACxC,eAAWA,EAAIuC,OAAQ,SAAUzB,KAAKgB,aAAc,QACpD,eAAW9B,EAAIuC,OAAQ,oBAAqBzB,KAAKgB,aAAc,SAEjEU,OAAQ,WACN1B,KAAKD,MAAQC,KAAKD,MAEpB4B,QAAS,WACP3B,KAAKC,eAAgB,EAErBD,KAAK4B,MAAM,SAEbC,aAAc,WACZ7B,KAAKC,eAAgB,EACrBD,KAAK4B,MAAM,UAEbE,QAAS,WACP9B,KAAKC,eAAgB,EAErBD,KAAK4B,MAAM,SAEbG,aAAc,WACZ/B,KAAKC,eAAgB,EACrBD,KAAK4B,MAAM,WAEbpB,UAAW,WACTR,KAAK4B,MAAM,QAAS5B,KAAKD,MAEzBC,KAAKgC,WAAW,OAAahC,KAAKkB,SAAUlB,KAAKD,MAE7CC,KAAKL,WAAaK,KAAKD,MAEzBC,KAAKgC,WAAW3C,EAAiBW,KAAKkB,SAAUlB,KAAKL,YAGzDwB,SAAU,WAIRnB,KAAKgC,WAAW,OAAkBhC,KAAKkB,SAAUlB,KAAKD,OAExDkC,kBAAmB,WAIjB,IAAIC,EAAU,eAASlC,KAAKmC,IAAK,QACjC,eAAYnC,KAAKmC,IAAK,QACtB,IAAIC,EAAsC,UAA5B,eAAMpC,KAAKmC,KAAKE,QAM9B,OAJIH,GACF,eAASlC,KAAKmC,IAAK,QAGdC,GAETE,aAAc,SAAsBC,GAElC,IAAIC,EAAKD,EAAI7G,OAERsE,KAAKN,OAAU8C,GAAkC,UAA5B,eAAMxC,KAAKmC,KAAKE,UAKtC,eAAQG,EAAI,6BAA+B,eAAQ,2BAA4BA,MAC5ExC,KAAKiC,sBAERjC,KAAKD,MAAO,KAIlBc,gBAAiB,SAAyBnF,GACpCA,IAAWsE,KAAKkB,UAIpBlB,KAAK0B,UAEPZ,mBAAoB,SAA4B2B,EAAU9C,GACnDK,KAAKL,WAAaA,IAAcK,KAAKL,YAItC8C,IAAazC,KAAKkB,SAEflB,KAAKD,MACRC,KAAK0B,SAIH1B,KAAKD,MACPC,KAAK0B,WAIXV,aAAc,WAEZhB,KAAKD,KAAmC,UAA5B,eAAMC,KAAKmC,KAAKE,UAGhC7E,OAAQ,SAAgBC,GACtB,IAAIiF,EAAS1C,KAET2C,EAAQ,CACV/C,QAASI,KAAKD,KACd6C,MAAO,WACL,OAAOF,EAAO3C,MAAO,IAGrB8C,EAAUpF,EAAEuC,KAAKH,IAAK,CACxBxB,MAAO2B,KAAKG,YACZ2C,WAAY,CAAC,CACXxF,KAAM,OACNhB,MAAO0D,KAAKD,OAEd9B,MAAO,CACLvB,GAAIsD,KAAKkB,UAEXhC,GAAI,CACF6D,MAAO/C,KAAKsC,eAEb,CAACtC,KAAKgD,cAAc,OAAmBL,KAC1C,OAAOlF,EAAE,OAAY,CACnBhB,MAAO,CACLqD,OAAQE,KAAKF,QAEfZ,GAAI,CACF+D,MAAOjD,KAAK2B,QACZuB,WAAYlD,KAAK6B,aACjBsB,MAAOnD,KAAK8B,QACZsB,WAAYpD,KAAK+B,eAElB,CAACc,Q,oCC1QR,+FAASjI,EAAQC,EAAQC,GAAkB,IAAIC,EAAOC,OAAOD,KAAKF,GAAS,GAAIG,OAAOC,sBAAuB,CAAE,IAAIC,EAAUF,OAAOC,sBAAsBJ,GAAaC,IAAgBI,EAAUA,EAAQC,QAAO,SAAUC,GAAO,OAAOJ,OAAOK,yBAAyBR,EAAQO,GAAKE,eAAgBP,EAAKQ,KAAKC,MAAMT,EAAMG,GAAY,OAAOH,EAE9U,SAASU,EAAcC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAKf,EAAQI,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAOC,EAAgBP,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmBlB,EAAQI,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAASO,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAKpM,IAAII,EAAQ,eAAsB,CACvCC,GAAI,CACFC,KAAMC,QAGRiD,IAAK,CACHlD,KAAMC,OACNG,QAAS,UAEXuB,QAAS,CACP3B,KAAMC,SAGP,QAEQyG,EAA+B,OAAIhG,OAAO,CACnDC,KAAM,OACNC,YAAY,EACZd,MAAOA,EACPe,OAAQ,SAAgBC,EAAGC,GACzB,IAAIjB,EAAQiB,EAAKjB,MACbkB,EAAOD,EAAKC,KACZqB,EAAWtB,EAAKsB,SAChBhB,EAASL,EAAKM,OAAS,GAE3B,OADAN,EAAKM,MAAQ,GACNR,EAAE,KAAM,eAAUE,EAAM,CAC7BM,MAAO,CACLM,KAAM,kBAEN,CAACd,EAAEhB,EAAMoD,IAAK,CAChBzB,YAAa,kBACbC,MAAOpC,EAAgB,GAAI,QAAQkC,OAAO1B,EAAM6B,SAAU7B,EAAM6B,SAChEL,MAAOxC,EAAcA,EAAc,GAAIuC,GAAS,GAAI,CAClDtB,GAAID,EAAMC,IAAM,KAChB6B,KAAM,YAERY,IAAK,UACJH,S,kCC9CP,2GAASpE,EAAQC,EAAQC,GAAkB,IAAIC,EAAOC,OAAOD,KAAKF,GAAS,GAAIG,OAAOC,sBAAuB,CAAE,IAAIC,EAAUF,OAAOC,sBAAsBJ,GAAaC,IAAgBI,EAAUA,EAAQC,QAAO,SAAUC,GAAO,OAAOJ,OAAOK,yBAAyBR,EAAQO,GAAKE,eAAgBP,EAAKQ,KAAKC,MAAMT,EAAMG,GAAY,OAAOH,EAE9U,SAASU,EAAcC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAKf,EAAQI,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAOC,EAAgBP,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmBlB,EAAQI,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAASO,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAOpM,IAAII,EAAQ,eAAsB,CACvC6G,OAAQ,CACN3G,KAAMmC,QACN/B,SAAS,GAEXwG,YAAa,CACX5G,KAAMC,OACNG,QAAS,UAEXyG,YAAa,CACX7G,KAAM,CAACC,OAAQM,MAAOlC,SAGxB6D,SAAU,CACRlC,KAAMmC,QACN/B,SAAS,GAEXuB,QAAS,CACP3B,KAAMC,SAGP,QAEQ6G,EAAmC,OAAIpG,OAAO,CACvDC,KAAM,OACNgC,OAAQ,CAAC,OAAY,QACrBoE,OAAQ,CACNC,WAAY,CACV5G,QAAS,OAGb6G,cAAc,EACdnH,MAAOA,EACPyD,SAAU,CACR2D,cAAe,WACb,OAAOpI,EAAcA,EAAc,GAAIuE,KAAK8D,SAAU,GAAI,CACxDvF,KAAM,WACN5B,KAAM,SACNkC,SAAUmB,KAAKnB,aAIrB2C,QAAS,CACPuC,cAAe,WACT/D,KAAK2D,YACP3D,KAAK2D,WAAWK,MAAK,IAGzBC,QAAS,SAAiB1B,GACxBvC,KAAK4B,MAAM,QAASW,GACpBvC,KAAK+D,kBAGTvG,OAAQ,SAAgBC,GACtB,IAAIC,EAEJ,OAAOD,EAAE,KAAM,CACbQ,MAAO,CACLM,KAAM,iBAEP,CAACd,EAAE,SAAU,CACdW,YAAa,gBACbC,MAAO,CAAC2B,KAAKwD,aAAc9F,EAAO,GAAIzB,EAAgByB,EAAMsC,KAAKuD,YAAavD,KAAKsD,QAASrH,EAAgByB,EAAM,QAAQS,OAAO6B,KAAK1B,SAAU0B,KAAK1B,WAAa0B,KAAKsD,QAAUtD,KAAKnB,WAAYnB,IAClMO,MAAO+B,KAAK6D,cACZ3E,GAAI,CACF6D,MAAO/C,KAAKiE,SAEd9E,IAAK,UACJa,KAAKgD,uB,oCC/EZ,kJASIkB,EAA8B,eAAc,CAC9C1J,WAAY,CACV2J,UAAW,OACXC,IAAK,OACLC,cAAe,OACfC,QAAS,OACTb,oBAAqB,OACrBc,iBAAkB,OAClBC,cAAe,OACfC,WAAY,OACZpB,gBAAiB,OACjBqB,UAAW,OACXC,iBAAkB,OAClBC,WAAY,OACZhG,cAAe,OACfiG,QAAS,OACTC,cAAe,OACfC,QAAS,OACT3H,eAAgB,OAChB4H,SAAU,W,oCC5Bd,+IAASpK,EAAQC,EAAQC,GAAkB,IAAIC,EAAOC,OAAOD,KAAKF,GAAS,GAAIG,OAAOC,sBAAuB,CAAE,IAAIC,EAAUF,OAAOC,sBAAsBJ,GAAaC,IAAgBI,EAAUA,EAAQC,QAAO,SAAUC,GAAO,OAAOJ,OAAOK,yBAAyBR,EAAQO,GAAKE,eAAgBP,EAAKQ,KAAKC,MAAMT,EAAMG,GAAY,OAAOH,EAE9U,SAASU,EAAcC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAKf,EAAQI,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAOC,EAAgBP,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmBlB,EAAQI,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAASO,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAUpM,IAAII,EAAQ,eAAK,OAAY,CAAC,QAAS,cAEnC4H,EAA6B,OAAIhH,OAAO,CACjDC,KAAM,OACNgC,OAAQ,CAAC,OAAY,QACrBoE,OAAQ,CACNC,WAAY,CACV5G,QAAS,OAGb6G,cAAc,EACdnH,MAAO,eAAsBhB,EAAcA,EAAc,GAAIgB,GAAQ,GAAI,CACvEwI,UAAW,CACTtI,KAAM,CAACC,OAAQM,MAAOlC,SAGxBsD,QAAS,CACP3B,KAAMC,UAGN,QACJsD,SAAU,CACR2D,cAAe,WACb,OAAOpI,EAAcA,EAAc,GAAIuE,KAAK8D,SAAU,GAAI,CACxDvF,KAAM,eAIZiD,QAAS,CACPuC,cAAe,WACb,IAAIpD,EAAQX,KAGZ,gBAAU,WACJW,EAAMgD,YACRhD,EAAMgD,WAAWK,MAAK,OAI5BC,QAAS,SAAiB1B,GACxBvC,KAAK4B,MAAM,QAASW,GACpBvC,KAAK+D,kBAGTvG,OAAQ,SAAgBC,GACtB,IAAIwH,EAAYjF,KAAKiF,UACjB3G,EAAU0B,KAAK1B,QACfgF,EAAStD,KAAKsD,OACdzE,EAAWmB,KAAKnB,SAChBoF,EAAUjE,KAAKiE,QACnB,OAAOxG,EAAE,KAAM,CACbQ,MAAO,CACLM,KAAM,iBAEP,CAACd,EAAE,OAAO,CACXW,YAAa,gBACbC,MAAO,CAAC4G,EAAWhJ,EAAgB,GAAI,QAAQkC,OAAOG,GAAUA,KAAagF,GAAUzE,KACvFpC,MAAOuD,KAAKkF,OACZjH,MAAO+B,KAAK6D,cACZ3E,GAAI,CACF6D,MAAOkB,GAET9E,IAAK,QACJa,KAAKgD,uB,kCC7EZ,2GAAS/G,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAO3M,IAAI8I,EAAQ,CAAC,SAAU,QAAS,QAAS,SAAU,MAAO,QAAS,cAExD1I,EAAQ,eAAsB,CACvCE,KAAM,CACJA,KAAMC,OACNG,QAAS,SACTqI,UAAW,SAAmB9I,GAC5B,OAAO,eAAc6I,EAAO7I,KAGhCuD,IAAK,CACHlD,KAAMC,OACNG,QAAS,OAEXsI,OAAQ,CACN1I,KAAMC,OACNG,QAAS,UAEV,QAGQuI,EAAsB,OAAIjI,OAAO,CAC1CC,KAAM,OACNC,YAAY,EACZd,MAAOA,EACPe,OAAQ,SAAgBC,EAAGC,GACzB,IAAIjB,EAAQiB,EAAKjB,MACbkB,EAAOD,EAAKC,KACZqB,EAAWtB,EAAKsB,SACpB,OAAOvB,EAAEhB,EAAMoD,IAAK,CAClBV,IAAKxB,EAAKwB,IACVf,YAAa,mBACbC,MAAOpC,EAAgB,GAAI,oBAAoBkC,OAAO1B,EAAM4I,QAAS5I,EAAM4I,SAC1E,CAAC5H,EAAEhB,EAAME,KAAM,eAAUgB,EAAM,CAChCwB,IAAK,GACLf,YAAa,0BACXY,S,kCC3CR,0NAgBIuG,EAAY,CACdC,KAAM,CACJC,SAAU,qBACVC,aAAc,sBAEhBC,KAAM,CACJF,SAAU,sBACVC,aAAc,uBAIdE,EAAiB,IAEjBC,EAA0B,IAE1BC,EAAkB,GAElBC,EAAc,CAChBC,MAAO,QACPC,IAAK,OAGHC,EAAsB,CACxBC,iBAAkB,sBAClBC,cAAe,gBACfC,YAAa,gCACbC,WAAY,iBAGVC,EAAwB,SAA+B/D,GACzD,IAAK,IAAIlF,KAAQ4I,EACf,IAAK,eAAY1D,EAAGgE,MAAMlJ,IACxB,OAAO4I,EAAoB5I,GAO/B,OAAO,MAIEmJ,EAAyB,OAAIpJ,OAAO,CAC7CC,KAAM,OACNgC,OAAQ,CAAC,OAAS,QAClBoH,QAAS,WACP,MAAO,CACLC,WAAY3G,OAGhBT,MAAO,CACLC,KAAM,QACNC,MAAO,SAEThD,MAAO,eAAsB,CAC3BmK,UAAW,CACTjK,KAAMC,OACNG,QAAS,kBAEX8J,UAAW,CACTlK,KAAMC,OACNG,QAAS,cAEX+J,eAAgB,CACdnK,KAAMC,OACNG,QAAS,cAEXgK,gBAAiB,CACfpK,KAAMC,OACNG,QAAS,6BAEXiK,SAAU,CACRrK,KAAMsK,OACNlK,QAAS,KAEXmK,WAAY,CACVvK,KAAMmC,QACN/B,SAAS,GAEXoK,SAAU,CACRxK,KAAMmC,QACN/B,SAAS,GAEXqK,YAAa,CAEXzK,KAAMmC,QACN/B,SAAS,GAEXsK,KAAM,CAEJ1K,KAAMmC,QACN/B,SAAS,GAEXuK,OAAQ,CAEN3K,KAAMmC,QACN/B,SAAS,GAEXwK,QAAS,CAEP5K,KAAMmC,QACN/B,SAAS,GAEXyK,aAAc,CAEZ7K,KAAMmC,QACN/B,SAAS,GAEX0K,SAAU,CAER9K,KAAM,CAACsK,OAAQrK,SAGjB8K,UAAW,CAET/K,KAAM,CAACsK,OAAQrK,SAGjB+K,WAAY,CACVhL,KAAMC,QAGRN,MAAO,CACLK,KAAMsK,OACNlK,QAAS,IAEV,QACHY,KAAM,WACJ,MAAO,CACLiK,MAAO5H,KAAK1D,OAAS,EACrBuL,WAAW,EACXC,mBAAoB,KACpBC,OAAQ,GACRC,UAAW,KACXC,WAAY,eAAUjI,KAAKgH,SAAU,GAAK,GAE1CkB,YAAa,EACbC,YAAa,IAGjBjI,SAAU,CACRkI,UAAW,WACT,OAAOpI,KAAK+H,OAAOlM,SAGvBwE,MAAO,CACL/D,MAAO,SAAegE,EAAQC,GACxBD,IAAWC,GACbP,KAAKqI,SAAS,eAAU/H,EAAQ,KAGpC0G,SAAU,SAAkB1G,EAAQC,GAC9BD,IAAWC,IAKVD,GAKHN,KAAKsI,OAAM,GACXtI,KAAKuI,OAAM,IAJXvI,KAAKsI,OAAM,KAOfL,SAAU,SAAkB3H,EAAQC,GAC9BD,IAAWC,GACbP,KAAK4B,MAAMtB,EAAS,SAAW,aAGnCsH,MAAO,SAAeY,EAAIC,GACpBD,IAAOC,GAAQzI,KAAK6H,WAKxB7H,KAAK0I,QAAQF,EAAIC,KAGrBhI,QAAS,WAEPT,KAAK2I,WAAa,KAClB3I,KAAK4I,mBAAqB,KAC1B5I,KAAK6I,eAAiB,KACtB7I,KAAK8I,WAAa,KAElB9I,KAAKiI,WAAa,eAAUjI,KAAKgH,SAAU,GAAK,IAElDtG,QAAS,WAEPV,KAAK8H,mBAAqBvB,EAAsBvG,KAAKmC,MAAQ,KAE7DnC,KAAK+I,eAEL/I,KAAKgJ,aAAY,IAEnBzH,cAAe,WACbvB,KAAKiJ,gBACLjJ,KAAKkJ,wBACLlJ,KAAKmJ,oBACLnJ,KAAKgJ,aAAY,IAEnBxH,QAAS,CACPyH,cAAe,SAAUG,GACvB,SAASH,IACP,OAAOG,EAAe5N,MAAMwE,KAAMpE,WAOpC,OAJAqN,EAAcI,SAAW,WACvB,OAAOD,EAAeC,YAGjBJ,EATM,EAUb,WACAA,cAAcjJ,KAAK2I,YACnB3I,KAAK2I,WAAa,QAEpBO,sBAAuB,WACrBI,aAAatJ,KAAK4I,oBAClB5I,KAAK4I,mBAAqB,MAE5BO,kBAAmB,WACjBG,aAAatJ,KAAK6I,gBAClB7I,KAAK6I,eAAiB,MAExBG,YAAa,WACX,IAAI9J,EAAKtD,UAAUC,OAAS,QAAsB0N,IAAjB3N,UAAU,IAAmBA,UAAU,GACxEoE,KAAK8I,YAAc9I,KAAK8I,WAAWU,aACnCxJ,KAAK8I,WAAa,KAEd5J,IACFc,KAAK8I,WAAa,eAAW9I,KAAKyJ,MAAMC,MAAO1J,KAAK+I,aAAaY,KAAK3J,MAAO,CAC3E4J,SAAS,EACTC,WAAW,EACXC,YAAY,EACZC,gBAAiB,CAAC,UAKxB1B,SAAU,SAAkB2B,GAC1B,IAAIrJ,EAAQX,KAERgI,EAAYpM,UAAUC,OAAS,QAAsB0N,IAAjB3N,UAAU,GAAmBA,UAAU,GAAK,KAKpF,KAAI,QAAaqO,SAASC,iBAAmBD,SAASE,QAAtD,CAIA,IAAI7C,EAAStH,KAAKsH,OACdc,EAAYpI,KAAKoI,UAErB4B,EAAQ,eAAUA,GAEA,IAAd5B,IAKApI,KAAK6H,UAEP7H,KAAKoK,MAAM,eAAe,WAExB,gBAAU,WACR,OAAOzJ,EAAM0H,SAAS2B,EAAOhC,UAMnChI,KAAKgI,UAAYA,EAGjBhI,KAAK4H,MAAQoC,GAAS5B,EAAYd,EAASc,EAAY,EAAI,EAAI4B,EAAQ,EAAI1C,EAAS,EAAIc,EAAY,EAAI4B,EAGpG1C,GAAUtH,KAAK4H,QAAUoC,GAAShK,KAAK4H,QAAU5H,KAAK1D,OACxD0D,KAAK4B,MAAM,QAAS5B,KAAK4H,WAI7BjC,KAAM,WACJ3F,KAAKqI,SAASrI,KAAK4H,MAAQ,EAAG,SAGhCpC,KAAM,WACJxF,KAAKqI,SAASrI,KAAK4H,MAAQ,EAAG,SAGhCU,MAAO,SAAe/F,GACfA,IACHvC,KAAKiI,UAAW,GAGlBjI,KAAKiJ,iBAGPV,MAAO,SAAehG,GACfA,IACHvC,KAAKiI,UAAW,GAKlBjI,KAAKiJ,gBAEDjJ,KAAKgH,UAAYhH,KAAKoI,UAAY,IACpCpI,KAAK2I,WAAa0B,YAAYrK,KAAKwF,KAAM,eAAQ,IAAMxF,KAAKgH,aAMhEsD,QAAS,WACFtK,KAAKmC,IAAIoI,SAAS,mBACrBvK,KAAKuI,SAGTG,QAAS,SAAiBF,EAAIC,GAC5B,IAAI/F,EAAS1C,KAETwK,EAAY1L,QAAQkB,KAAKgH,UAEzBgB,EAAYhI,KAAKyK,cAAczK,KAAKgI,UAAWS,EAAMD,GACrD9C,EAAesC,EAAUtC,aACzBD,EAAWuC,EAAUvC,SAErBiF,EAAe1K,KAAK+H,OAAOU,GAC3BkC,EAAY3K,KAAK+H,OAAOS,GAE5B,GAAKkC,GAAiBC,EAAtB,CAgBA,GAVA3K,KAAK6H,WAAY,EAEb2C,GACFxK,KAAKsI,OAAM,GAGbtI,KAAK4B,MAAM,gBAAiB4G,GAE5BxI,KAAK4B,MAAM,QAAS5B,KAAK4H,OAErB5H,KAAKoH,YACP,eAASuD,EAAW,UACpB,eAAYD,EAAc,UAC1B1K,KAAK6H,WAAY,EAEjB7H,KAAKiB,WAAU,WACb,OAAOyB,EAAOd,MAAM,cAAe4G,UAEhC,CACL,eAASmC,EAAWjF,GAEpB,eAAOiF,GACP,eAASD,EAAcjF,GACvB,eAASkF,EAAWlF,GAEpB,IAAImF,GAAS,EAGTC,EAAe,SAASA,IAC1B,IAAID,EAAJ,CAOA,GAHAA,GAAS,EAGLlI,EAAOoF,mBAAoB,CAC7B,IAAIgD,EAASpI,EAAOoF,mBAAmBiD,MAAM,OAE7CD,EAAO/O,SAAQ,SAAUwG,GACvB,OAAO,eAASoI,EAAWpI,EAAKsI,EAAc,WAIlDnI,EAAOwG,wBAEP,eAAYyB,EAAWlF,GACvB,eAAYkF,EAAWjF,GACvB,eAASiF,EAAW,UACpB,eAAYD,EAAc,UAC1B,eAAYA,EAAcjF,GAC1B,eAAYiF,EAAchF,GAC1B,eAAQgF,EAAc,eAAgB,SACtC,eAAQC,EAAW,eAAgB,QACnC,eAAQD,EAAc,cAAe,QACrC,eAAQC,EAAW,cAAe,SAClCjI,EAAOmF,WAAY,EACnBnF,EAAOsF,UAAY,KAEnBtF,EAAOzB,WAAU,WACf,OAAOyB,EAAOd,MAAM,cAAe4G,QAOvC,GAAIxI,KAAK8H,mBAAoB,CAC3B,IAAIgD,EAAS9K,KAAK8H,mBAAmBiD,MAAM,OAC3CD,EAAO/O,SAAQ,SAAU0D,GACvB,OAAO,eAAQkL,EAAWlL,EAAOoL,EAAc,WAKnD7K,KAAK4I,mBAAqBoC,WAAWH,EAAcjF,GAGjD4E,GACFxK,KAAKuI,OAAM,KAIfQ,aAAc,WACZ/I,KAAKsI,OAAM,GAEXtI,KAAK+H,OAAS,eAAU,iBAAkB/H,KAAKyJ,MAAMC,OACrD,IAAItB,EAAYpI,KAAK+H,OAAOlM,OAExB+L,EAAQ,eAAQ,EAAG,eAAQ,eAAU5H,KAAK4H,OAAQQ,EAAY,IAClEpI,KAAK+H,OAAOhM,SAAQ,SAAUiO,EAAOiB,GACnC,IAAIC,EAAID,EAAM,EAEVA,IAAQrD,GACV,eAASoC,EAAO,UAChB,eAAQA,EAAO,eAAgB,UAE/B,eAAYA,EAAO,UACnB,eAAQA,EAAO,eAAgB,UAGjC,eAAQA,EAAO,gBAAiBpN,OAAOsO,IACvC,eAAQlB,EAAO,eAAgBpN,OAAOwL,OAGxCpI,KAAKqI,SAAST,GACd5H,KAAKuI,MAAMvI,KAAKiI,WAElBwC,cAAe,WACb,IAAIzC,EAAYpM,UAAUC,OAAS,QAAsB0N,IAAjB3N,UAAU,GAAmBA,UAAU,GAAK,KAChFuP,EAAWvP,UAAUC,OAAS,QAAsB0N,IAAjB3N,UAAU,GAAmBA,UAAU,GAAK,EAC/EwP,EAAYxP,UAAUC,OAAS,QAAsB0N,IAAjB3N,UAAU,GAAmBA,UAAU,GAAK,EAEpF,OAAKoM,EAIEzC,EAAUyC,GAHRoD,EAAYD,EAAW5F,EAAUC,KAAOD,EAAUI,MAK7D0F,YAAa,SAAqB9I,EAAK+I,GACrC,IAAIC,EAAUhJ,EAAIgJ,QAED,UAAbhJ,EAAI5F,MAAoB4O,IAAY,QAAcA,IAAY,SAChE,eAAUhJ,GACV+I,MAKJE,YAAa,WACX,IAAIC,EAAY,eAAQzL,KAAKmI,aAE7B,KAAIsD,GAAa3F,GAAjB,CAIA,IAAIkC,EAAYyD,EAAYzL,KAAKmI,YAGjCnI,KAAKmI,YAAc,EAEfH,EAAY,EAEdhI,KAAK2F,OACIqC,EAAY,GAErBhI,KAAKwF,SAKTkG,WAAY,SAAoBnJ,GAC1B,QAA0BwD,EAAYxD,EAAIoJ,YAAYC,eACxD5L,KAAKkI,YAAc3F,EAAIsJ,QACb,SACV7L,KAAKkI,YAAc3F,EAAIuJ,QAAQ,GAAGD,UAKtCE,UAAW,SAAmBxJ,GAExBA,EAAIuJ,SAAWvJ,EAAIuJ,QAAQjQ,OAAS,EACtCmE,KAAKmI,YAAc,EAEnBnI,KAAKmI,YAAc5F,EAAIuJ,QAAQ,GAAGD,QAAU7L,KAAKkI,aAKrD8D,SAAU,SAAkBzJ,GACtB,QAA0BwD,EAAYxD,EAAIoJ,YAAYC,iBACxD5L,KAAKmI,YAAc5F,EAAIsJ,QAAU7L,KAAKkI,aAGxClI,KAAKwL,cAQLxL,KAAKsI,OAAM,GACXtI,KAAKmJ,oBACLnJ,KAAK6I,eAAiBmC,WAAWhL,KAAKuI,MAAO1C,EAA0B,eAAQ,IAAM7F,KAAKgH,aAG9FxJ,OAAQ,SAAgBC,GACtB,IAAIwO,EAASjM,KAGT0J,EAAQjM,EAAE,MAAO,CACnB0B,IAAK,QACLd,MAAO,CAAC,kBACRJ,MAAO,CACLvB,GAAIsD,KAAKkB,OAAO,eAChB3C,KAAM,SAEP,CAACyB,KAAKgD,kBAELmE,EAAW1J,IAEf,GAAIuC,KAAKmH,SAAU,CACjB,IAAI+E,EAAc,SAAqB3J,GAEhC0J,EAAOpE,UAGV,eAAUtF,EAAK,CACb4J,aAAa,IAHfF,EAAOZ,YAAY9I,EAAK0J,EAAOtG,OAQ/ByG,EAAc,SAAqB7J,GAEhC0J,EAAOpE,UAGV,eAAUtF,EAAK,CACb4J,aAAa,IAHfF,EAAOZ,YAAY9I,EAAK0J,EAAOzG,OAQnC2B,EAAW,CAAC1J,EAAE,IAAK,CACjBY,MAAO,CAAC,yBACRJ,MAAO,CACLoO,KAAM,IACN9N,KAAM,SACN,gBAAiByB,KAAKkB,OAAO,eAC7B,gBAAiBlB,KAAK6H,UAAY,OAAS,MAE7C3I,GAAI,CACF6D,MAAOmJ,EACPI,QAASJ,IAEV,CAACzO,EAAE,OAAQ,CACZY,MAAO,CAAC,8BACRJ,MAAO,CACL,cAAe,UAEfR,EAAE,OAAQ,CACZY,MAAO,CAAC,YACP,CAAC2B,KAAK4G,cAAenJ,EAAE,IAAK,CAC7BY,MAAO,CAAC,yBACRJ,MAAO,CACLoO,KAAM,IACN9N,KAAM,SACN,gBAAiByB,KAAKkB,OAAO,eAC7B,gBAAiBlB,KAAK6H,UAAY,OAAS,MAE7C3I,GAAI,CACF6D,MAAOqJ,EACPE,QAASF,IAEV,CAAC3O,EAAE,OAAQ,CACZY,MAAO,CAAC,8BACRJ,MAAO,CACL,cAAe,UAEfR,EAAE,OAAQ,CACZY,MAAO,CAAC,YACP,CAAC2B,KAAK6G,eAIX,IAAIK,EAAazJ,EAAE,KAAM,CACvBY,MAAO,CAAC,uBACRyE,WAAY,CAAC,CACXxF,KAAM,OACNiP,QAAS,SACTjQ,MAAO0D,KAAKkH,WACZsF,WAAY,eAEdvO,MAAO,CACLvB,GAAIsD,KAAKkB,OAAO,oBAChB,cAAelB,KAAKkH,WAAa,QAAU,OAC3C,aAAclH,KAAK+G,gBACnB,YAAa/G,KAAKkB,OAAO,iBAE1BlB,KAAK+H,OAAO0E,KAAI,SAAUzC,EAAOkB,GAClC,OAAOzN,EAAE,KAAM,CACbzB,IAAK,SAASmC,OAAO+M,GACrB7M,MAAO,CACLiF,OAAQ4H,IAAMe,EAAOrE,OAEvB3J,MAAO,CACLM,KAAM,SACN7B,GAAIuP,EAAO/K,OAAO,kBAAkB/C,OAAO+M,EAAI,EAAG,MAClD9L,SAAU6M,EAAO/E,WAAa,IAAM,KACpC,eAAgBgE,IAAMe,EAAOrE,MAAQ,OAAS,QAC9C,aAAc,GAAGzJ,OAAO8N,EAAOnF,eAAgB,KAAK3I,OAAO+M,EAAI,GAC/D,mBAAoBe,EAAOlE,OAAOmD,GAAGxO,IAAM,KAC3C,gBAAiBuP,EAAO/K,OAAO,gBAEjChC,GAAI,CACF6D,MAAO,SAAeR,GACpB0J,EAAOZ,YAAY9I,GAAK,WACtB0J,EAAO5D,SAAS6C,OAGpBoB,QAAS,SAAiB/J,GACxB0J,EAAOZ,YAAY9I,GAAK,WACtB0J,EAAO5D,SAAS6C,cAMtBhM,EAAK,CACPwN,WAAY1M,KAAKwH,aAAe,OAAOxH,KAAKsI,MAC5CqE,WAAY3M,KAAKwH,aAAe,OAAOxH,KAAKsK,QAC5CsC,QAAS5M,KAAKsI,MACduE,SAAU7M,KAAKsK,QACfgC,QAAS,SAAiB/J,GACxB,IAAI,kBAAkBuK,KAAKvK,EAAI7G,OAAOqR,SAAtC,CAKA,IAAIxB,EAAUhJ,EAAIgJ,QAEdA,IAAY,QAAaA,IAAY,SACvC,eAAUhJ,GAEV0J,EAAOV,IAAY,OAAY,OAAS,cAoB9C,OAfKvL,KAAKuH,SAAW,SAIf,QACFrI,EAAG,gBAAkBc,KAAK0L,WAC1BxM,EAAG,cAAgBc,KAAKgM,WAExB9M,EAAG,eAAiBc,KAAK0L,WACzBxM,EAAG,cAAgBc,KAAK+L,UACxB7M,EAAG,aAAec,KAAKgM,WAKpBvO,EAAE,MAAO,CACdW,YAAa,WACbC,MAAO,CACL2L,OAAQhK,KAAKoH,YACb,iBAAkBpH,KAAKoH,aAAepH,KAAKqH,KAC3C,iBAAkBrH,KAAKuH,SAAW,QAAmB,QAEvDf,MAAO,CACLmB,WAAY3H,KAAK2H,YAEnB1J,MAAO,CACLM,KAAM,SACN7B,GAAIsD,KAAKkB,SACT,YAAalB,KAAK6H,UAAY,OAAS,SAEzC3I,GAAIA,GACH,CAACwK,EAAOvC,EAAUD,Q,kCChtBzB,0EAGI8F,EAEJ,eAAc,CACZxS,WAAY,CACViM,UAAW,OACXwG,eAAgB,W,kCCRpB,qNAASrS,EAAQC,EAAQC,GAAkB,IAAIC,EAAOC,OAAOD,KAAKF,GAAS,GAAIG,OAAOC,sBAAuB,CAAE,IAAIC,EAAUF,OAAOC,sBAAsBJ,GAAaC,IAAgBI,EAAUA,EAAQC,QAAO,SAAUC,GAAO,OAAOJ,OAAOK,yBAAyBR,EAAQO,GAAKE,eAAgBP,EAAKQ,KAAKC,MAAMT,EAAMG,GAAY,OAAOH,EAE9U,SAASU,EAAcC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAKf,EAAQI,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAOC,EAAgBP,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmBlB,EAAQI,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAASO,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAcpM,IAAII,EAAQ,eAAsBhB,EAAcA,EAAc,GAAI,QAAgB,GAAI,CAC3FyR,KAAM,CACJvQ,KAAMC,QAGRuQ,KAAM,CACJxQ,KAAMC,QAGR0B,QAAS,CACP3B,KAAMC,OACNG,QAAS,aAEXqQ,KAAM,CACJzQ,KAAMC,QAGRyQ,MAAO,CACL1Q,KAAMmC,QACN/B,SAAS,GAEXuQ,UAAW,CACT3Q,KAAM,CAACC,OAAQM,MAAOlC,SAGxBuS,UAAW,CACT5Q,KAAMC,OACNG,QAAS,UAEXyQ,WAAY,CAEV7Q,KAAMC,OACNG,QAAS,mBAEX0Q,YAAa,CACX9Q,KAAM,CAACC,OAAQM,MAAOlC,SAGxB0S,QAAS,CACP/Q,KAAMmC,QACN/B,SAAS,GAEXgO,MAAO,CACLpO,KAAMmC,QACN/B,SAAS,GAEX4Q,UAAW,CACThR,KAAMC,QAGRgR,QAAS,CACPjR,KAAM,CAACC,OAAQ5B,SAGjB6S,aAAc,CACZlR,KAAMC,QAGRkR,WAAY,CACVnR,KAAM,CAACC,OAAQM,MAAOlC,SAGxB+S,gBAAiB,CACfpR,KAAMC,OACNG,QAAS,SACTqI,UAAW,SAAmB9I,GAC5B,OAAO,eAAc,CAAC,SAAU,SAAU,SAAUA,KAGxD0R,KAAM,CAEJrR,KAAMmC,QACN/B,SAAS,GAEXwB,KAAM,CACJ5B,KAAMC,OACNG,QAAS,UAET,QAGOoH,EAAyB,OAAI9G,OAAO,CAC7CC,KAAM,OACNgC,OAAQ,CAAC,OAAS,OAAe,QACjC7C,MAAOA,EACPyD,SAAU,CACR+N,gBAAiB,WACf,IAAIZ,EAAQrN,KAAKqN,MACbtC,EAAQ/K,KAAK+K,MACjB,MAAO,CAAC/K,KAAKkO,eAAgBlO,KAAKmO,cAAe,CAC/CpO,KAAMC,KAAKJ,QAIX,YAAamL,IAAUsC,EAGvB,SAAUA,GAAStC,KAGvBqD,YAAa,WACX,MAAO,CAACpO,KAAKsN,UAAW,CACtB,sBAAuBtN,KAAKqO,MAC5BtO,KAAMC,KAAKJ,WAGf0O,cAAe,WACb,IAAIvD,EAAQ/K,KAAK+K,MACjB,MAAO,CAAC/K,KAAKyN,YAAa,CACxB,wBAAyB1C,EACzB,2BAA4B/K,KAAK0N,UAAY3C,MAInDvN,OAAQ,SAAgBC,GACtB,IAAImC,EAAUI,KAAKJ,QACftB,EAAU0B,KAAK1B,QACf8O,EAAOpN,KAAKoN,KACZC,EAAQrN,KAAKqN,MACbxO,EAAWmB,KAAKnB,SAChBkM,EAAQ/K,KAAK+K,MACbxM,EAAOyB,KAAKzB,KACZyF,EAAOhE,KAAKgE,KACZtC,EAAS1B,KAAK0B,OACd6M,EAAc,CAChBjQ,QAASA,EACT8O,KAAMA,EACNC,MAAOA,EACPxO,SAAUA,GAER2P,EAAwB,iBACxBC,EAAkBzO,KAAKgD,cAAcwL,GACrCE,EAAwB1O,KAAK2O,kBAAkBH,GAAyB,GAAK,eAAWxO,KAAKmN,KAAMnN,KAAKkN,MACxG0B,EAASnR,IAEb,GAAIsN,EAAO,CACT,IAAI6C,EAAU5N,KAAK4N,QACfD,EAAY3N,KAAK2N,UACjBI,EAAkB/N,KAAK+N,gBAEvBc,EAAWpT,EAAcA,EAAc,GAAI8S,GAAc,GAAI,CAC/DjQ,QAAS0B,KAAK6N,cAAgBvP,IAK5BsP,EACFiB,EAASrG,GAAKoF,EACLD,EACTkB,EAASxC,KAAOsB,EACPI,IACTc,EAASlS,KAAOoR,GAGlBa,EAASnR,EAAE,OAAS,CAClBY,MAAO2B,KAAK8N,WACZ7P,MAAO,CACLvB,GAAIsD,KAAKkB,OAAO,gBAElBzE,MAAOoS,EACPC,SAAUJ,EACVxP,GAAI,CACF6D,MAAO/C,KAAK+O,cAEd5P,IAAK,UACJsP,GAEHA,EAAkB,CAAChR,EAAE,OAAQ,CAC3BY,MAAO,CAAC,YACP,CAAC2B,KAAKwN,cACTkB,EAAwB,GAG1B,IAAIM,EAAUvR,EAAE,OAAS,CACvBW,YAAa,kBACbC,MAAO2B,KAAKsO,cACZrQ,MAAO,CACLvB,GAAIsD,KAAKkB,OAAO,eAChB,gBAAiB,OACjB,gBAAiB,eAAStB,IAE5BnD,MAAOhB,EAAcA,EAAc,GAAI8S,GAAc,GAAI,CACvD1O,IAAKG,KAAKuN,UACVF,MAAOA,IAAUtC,IAEnB+D,SAAUJ,EACVxP,GAAI,CACF+P,UAAWjP,KAAKkP,YAChBnM,MAAOrB,EACP4K,QAAS5K,GAGXvC,IAAK,UACJsP,GACCU,EAAQ1R,EAAE,KAAM,CAClBW,YAAa,gBACbC,MAAO2B,KAAKoO,YACZnQ,MAAO,CACLM,KAAMA,EACNa,SAAU,KACV,kBAAmBY,KAAKkB,OAAO6J,EAAQ,cAAgB,gBAEzD7L,GAAI,CACFoN,QAAStM,KAAKoP,WAGhBjQ,IAAK,QACJ,EAAEa,KAAKgO,MAAQpO,EAAUI,KAAKgD,cAAc,OAAmB,CAChEgB,KAAMA,IACHvG,MACL,OAAOA,EAAE,MAAO,CACdW,YAAa,sBACbC,MAAO2B,KAAKiO,gBACZhQ,MAAO,CACLvB,GAAIsD,KAAKkB,WAEV,CAAC0N,EAAQI,EAASG,Q,kCC1OzB,+FAASlT,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAMpM,IAAIyI,EAA6B,OAAIzH,OAAO,CACjDC,KAAM,OACNC,YAAY,EACZd,MAAO,eAAsB,CAC3BoD,IAAK,CACHlD,KAAMC,OACNG,QAAS,KAEXsS,UAAW,CACT1S,KAAM,CAACC,OAAQM,MAAOlC,SAGxBsD,QAAS,CACP3B,KAAMC,SAGP,QACHY,OAAQ,SAAgBC,EAAGC,GACzB,IAAIjB,EAAQiB,EAAKjB,MACbkB,EAAOD,EAAKC,KACZqB,EAAWtB,EAAKsB,SAChBa,EAAMpD,EAAMoD,IACZwP,EAAY5S,EAAM4S,UAClB/Q,EAAU7B,EAAM6B,QAChBL,EAAQN,EAAKM,OAAS,GAE1B,OADAN,EAAKM,MAAQ,GACNR,EAAE,KAAM,eAAUE,EAAM,CAC7BM,MAAO,CACLM,KAAM,kBAEN,CAACd,EAAEoC,EAAK,CACVzB,YAAa,kBACbC,MAAO,CAACgR,EAAWpT,EAAgB,GAAI,QAAQkC,OAAOG,GAAUA,IAChE7B,MAAOA,EACPwB,MAAOA,EACPkB,IAAK,QACJH,S,kCC1CP,8DAEIsQ,EAA2B,eAAc,CAC3C9U,WAAY,CACV8K,OAAQ,W,kCCJZ,+FAAS1K,EAAQC,EAAQC,GAAkB,IAAIC,EAAOC,OAAOD,KAAKF,GAAS,GAAIG,OAAOC,sBAAuB,CAAE,IAAIC,EAAUF,OAAOC,sBAAsBJ,GAAaC,IAAgBI,EAAUA,EAAQC,QAAO,SAAUC,GAAO,OAAOJ,OAAOK,yBAAyBR,EAAQO,GAAKE,eAAgBP,EAAKQ,KAAKC,MAAMT,EAAMG,GAAY,OAAOH,EAE9U,SAASU,EAAcC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAKf,EAAQI,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAOC,EAAgBP,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmBlB,EAAQI,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAASO,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAKpM,IAAII,EAAQ,eAAsB,CACvCoD,IAAK,CACHlD,KAAMC,OACNG,QAAS,OAEV,QAEQ4H,EAAgC,OAAItH,OAAO,CACpDC,KAAM,OACNC,YAAY,EACZd,MAAOA,EACPe,OAAQ,SAAgBC,EAAGC,GACzB,IAAIjB,EAAQiB,EAAKjB,MACbkB,EAAOD,EAAKC,KACZK,EAASL,EAAKM,OAAS,GAE3B,OADAN,EAAKM,MAAQ,GACNR,EAAE,KAAM,eAAUE,EAAM,CAC7BM,MAAO,CACLM,KAAM,kBAEN,CAACd,EAAEhB,EAAMoD,IAAK,CAChBzB,YAAa,mBACbH,MAAOxC,EAAcA,EAAc,GAAIuC,GAAS,GAAI,CAClDO,KAAM,YACN,mBAAoB,eAEtBY,IAAK,kB,kCCnCX,uKAASvE,EAAQC,EAAQC,GAAkB,IAAIC,EAAOC,OAAOD,KAAKF,GAAS,GAAIG,OAAOC,sBAAuB,CAAE,IAAIC,EAAUF,OAAOC,sBAAsBJ,GAAaC,IAAgBI,EAAUA,EAAQC,QAAO,SAAUC,GAAO,OAAOJ,OAAOK,yBAAyBR,EAAQO,GAAKE,eAAgBP,EAAKQ,KAAKC,MAAMT,EAAMG,GAAY,OAAOH,EAE9U,SAASU,EAAcC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAKf,EAAQI,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAOC,EAAgBP,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmBlB,EAAQI,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAASO,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAa3M,IAAIkT,EAAW,CACbC,OAAQ,CACN7S,KAAMC,QAGR6S,OAAQ,CACN9S,KAAMC,QAGR6K,SAAU,CACR9K,KAAM,CAACsK,OAAQrK,SAGjB8K,UAAW,CACT/K,KAAM,CAACsK,OAAQrK,SAGjB8S,SAAU,CACR/S,KAAMmC,QACN/B,SAAS,GAEX4S,cAAe,CACbhT,KAAMC,OACNG,QAAS,gBAGFN,EAAQ,eAAsBhB,EAAcA,EAAc,GAAI8T,GAAW,GAAI,CACtFK,iBAAkB,CAChBjT,KAAMC,QAERiT,WAAY,CACVlT,KAAMC,OACNG,QAAS,OAEX+S,QAAS,CACPnT,KAAMC,QAERmT,YAAa,CACXpT,KAAMC,QAERoT,WAAY,CACVrT,KAAMC,OACNG,QAAS,MAEXmQ,KAAM,CACJvQ,KAAMC,QAERqT,SAAU,CACRtT,KAAMC,QAERsT,QAAS,CACPvT,KAAMC,OACNG,QAAS,KAEX4K,WAAY,CACVhL,KAAMC,UAEN,QAGOqQ,EAA8B,OAAI5P,OAAO,CAClDC,KAAM,OACNgC,OAAQ,CAAC,OAAS,QAClBoE,OAAQ,CACNiD,WAAY,CACV5J,QAAS,WACP,MAAO,CAELwK,SAAS,MAKjB9K,MAAOA,EACPyD,SAAU,CACRiQ,eAAgB,WACd,MAAO,CAACnQ,KAAK4P,iBAAmB,SAAW,GAAI5P,KAAK4P,iBAAmB,KAAKzR,OAAO6B,KAAK4P,iBAAkB,UAAY,KAExHQ,cAAe,WAEb,OAAOpQ,KAAKyH,UAAYzH,KAAK2G,WAAWc,UAAY,MAEtD4I,eAAgB,WAEd,OAAOrQ,KAAK0H,WAAa1H,KAAK2G,WAAWe,WAAa,OAG1DlK,OAAQ,SAAgBC,GACtB,IAAI6S,EAAOtQ,KAAKgD,cAAc,OAE9B,IAAKsN,IAAStQ,KAAKwP,QAAUxP,KAAK0P,UAAW,CAC3C,IAAIxQ,EAAK,IAIJc,KAAK2G,WAAWY,SAAW,SAC9BrI,EAAGqR,UAAY,SAAUhO,GACvB,OAAO,eAAUA,EAAK,CACpB4J,aAAa,MAKnBmE,EAAO7S,EAAE,OAAM,CACbhB,MAAOhB,EAAcA,EAAc,GAAI,eAAW8T,EAAUvP,KAAKkF,OAAQ,OAAiByE,KAAK,KAAM,SAAU,GAAI,CACjH6G,MAAOxQ,KAAKoQ,cACZK,OAAQzQ,KAAKqQ,eACbK,WAAW,EACXrD,OAAO,IAETnO,GAAIA,IAIR,IAAIyR,EAAmB,IACvB3Q,KAAK8P,UAAW9P,KAAK+P,cAActS,EAAEuC,KAAKgQ,WAAY,CACpDlB,SAAU,eAAW9O,KAAK+P,YAAa/P,KAAK8P,cAE9C9P,KAAKkN,OAAQlN,KAAKiQ,WAAWxS,EAAEuC,KAAKkQ,QAAS,CAC3CpB,SAAU,eAAW9O,KAAKiQ,SAAUjQ,KAAKkN,QAE3ClN,KAAKgD,kBAAmB,GACpB4N,EAAWnT,IAWf,OATIkT,EAAiBE,KAAK/R,WACxB8R,EAAWnT,EAAEuC,KAAK6P,WAAY,CAC5BzR,YAAa,mBACbC,MAAO2B,KAAKmQ,gBACXQ,EAAiBlE,KAAI,SAAUqE,GAChC,OAAOA,GAAUrT,SAIdA,EAAE,MAAO,CACdW,YAAa,gBACboI,MAAO,CACLmB,WAAY3H,KAAK2H,YAAc3H,KAAK2G,WAAWgB,YAAc,MAE/D1J,MAAO,CACLvB,GAAIsD,KAAKkB,SACT3C,KAAM,aAEP,CAAC+R,EAAMM","file":"js/chunk-vendors~eb7344d5.3480eea6.js","sourcesContent":["import { BCollapse } from './collapse';\nimport { VBTogglePlugin } from '../../directives/toggle';\nimport { pluginFactory } from '../../utils/plugins';\nvar CollapsePlugin = /*#__PURE__*/pluginFactory({\n components: {\n BCollapse: BCollapse\n },\n plugins: {\n VBTogglePlugin: VBTogglePlugin\n }\n});\nexport { CollapsePlugin, BCollapse };","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue, { mergeData } from '../../vue';\nimport { NAME_DROPDOWN_GROUP } from '../../constants/components';\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_HEADER } from '../../constants/slot-names';\nimport { makePropsConfigurable } from '../../utils/config';\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot';\nimport identity from '../../utils/identity';\nexport var props = makePropsConfigurable({\n id: {\n type: String // default: null\n\n },\n header: {\n type: String // default: null\n\n },\n headerTag: {\n type: String,\n default: 'header'\n },\n headerVariant: {\n type: String // default: null\n\n },\n headerClasses: {\n type: [String, Array, Object] // default: null\n\n },\n ariaDescribedby: {\n type: String // default: null\n\n }\n}, NAME_DROPDOWN_GROUP); // @vue/component\n\nexport var BDropdownGroup = /*#__PURE__*/Vue.extend({\n name: NAME_DROPDOWN_GROUP,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n slots = _ref.slots,\n scopedSlots = _ref.scopedSlots;\n var $slots = slots();\n var $scopedSlots = scopedSlots || {};\n var $attrs = data.attrs || {};\n data.attrs = {};\n var header;\n var headerId = null;\n\n if (hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots) || props.header) {\n headerId = props.id ? \"_bv_\".concat(props.id, \"_group_dd_header\") : null;\n header = h(props.headerTag, {\n staticClass: 'dropdown-header',\n class: [props.headerClasses, _defineProperty({}, \"text-\".concat(props.variant), props.variant)],\n attrs: {\n id: headerId,\n role: 'heading'\n }\n }, normalizeSlot(SLOT_NAME_HEADER, {}, $scopedSlots, $slots) || props.header);\n }\n\n var adb = [headerId, props.ariaDescribedBy].filter(identity).join(' ').trim();\n return h('li', mergeData(data, {\n attrs: {\n role: 'presentation'\n }\n }), [header || h(), h('ul', {\n staticClass: 'list-unstyled',\n attrs: _objectSpread(_objectSpread({}, $attrs), {}, {\n id: props.id || null,\n role: 'group',\n 'aria-describedby': adb || null\n })\n }, normalizeSlot(SLOT_NAME_DEFAULT, {}, $scopedSlots, $slots))]);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue, { mergeData } from '../../vue';\nimport { NAME_DROPDOWN_FORM } from '../../constants/components';\nimport { makePropsConfigurable } from '../../utils/config';\nimport { BForm, props as formControlProps } from '../form/form'; // @vue/component\n\nexport var BDropdownForm = /*#__PURE__*/Vue.extend({\n name: NAME_DROPDOWN_FORM,\n functional: true,\n props: makePropsConfigurable(_objectSpread(_objectSpread({}, formControlProps), {}, {\n disabled: {\n type: Boolean,\n default: false\n },\n formClass: {\n type: [String, Object, Array] // default: null\n\n }\n }), NAME_DROPDOWN_FORM),\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var $attrs = data.attrs || {};\n var $listeners = data.on || {};\n data.attrs = {};\n data.on = {};\n return h('li', mergeData(data, {\n attrs: {\n role: 'presentation'\n }\n }), [h(BForm, {\n ref: 'form',\n staticClass: 'b-dropdown-form',\n class: [props.formClass, {\n disabled: props.disabled\n }],\n props: props,\n attrs: _objectSpread(_objectSpread({}, $attrs), {}, {\n disabled: props.disabled,\n // Tab index of -1 for keyboard navigation\n tabindex: props.disabled ? null : '-1'\n }),\n on: $listeners\n }, children)]);\n }\n});","import Vue from '../../vue';\nimport { NAME_COLLAPSE } from '../../constants/components';\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events';\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names';\nimport { makePropsConfigurable } from '../../utils/config';\nimport { BVCollapse } from '../../utils/bv-collapse';\nimport { addClass, hasClass, removeClass, closest, matches, getCS } from '../../utils/dom';\nimport { isBrowser } from '../../utils/env';\nimport { eventOnOff } from '../../utils/events';\nimport idMixin from '../../mixins/id';\nimport listenOnRootMixin from '../../mixins/listen-on-root';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nimport { EVENT_TOGGLE, EVENT_STATE, EVENT_STATE_REQUEST, EVENT_STATE_SYNC } from '../../directives/toggle/toggle'; // --- Constants ---\n// Accordion event name we emit on `$root`\n\nvar EVENT_ACCORDION = 'bv::collapse::accordion'; // --- Main component ---\n// @vue/component\n\nexport var BCollapse = /*#__PURE__*/Vue.extend({\n name: NAME_COLLAPSE,\n mixins: [idMixin, listenOnRootMixin, normalizeSlotMixin],\n model: {\n prop: 'visible',\n event: 'input'\n },\n props: makePropsConfigurable({\n isNav: {\n type: Boolean,\n default: false\n },\n accordion: {\n type: String // default: null\n\n },\n visible: {\n type: Boolean,\n default: false\n },\n tag: {\n type: String,\n default: 'div'\n },\n appear: {\n // If `true` (and `visible` is `true` on mount), animate initially visible\n type: Boolean,\n default: false\n }\n }, NAME_COLLAPSE),\n data: function data() {\n return {\n show: this.visible,\n transitioning: false\n };\n },\n computed: {\n classObject: function classObject() {\n return {\n 'navbar-collapse': this.isNav,\n collapse: !this.transitioning,\n show: this.show && !this.transitioning\n };\n }\n },\n watch: {\n visible: function visible(newVal) {\n if (newVal !== this.show) {\n this.show = newVal;\n }\n },\n show: function show(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.emitState();\n }\n }\n },\n created: function created() {\n this.show = this.visible;\n },\n mounted: function mounted() {\n var _this = this;\n\n this.show = this.visible; // Listen for toggle events to open/close us\n\n this.listenOnRoot(EVENT_TOGGLE, this.handleToggleEvt); // Listen to other collapses for accordion events\n\n this.listenOnRoot(EVENT_ACCORDION, this.handleAccordionEvt);\n\n if (this.isNav) {\n // Set up handlers\n this.setWindowEvents(true);\n this.handleResize();\n }\n\n this.$nextTick(function () {\n _this.emitState();\n }); // Listen for \"Sync state\" requests from `v-b-toggle`\n\n this.listenOnRoot(EVENT_STATE_REQUEST, function (id) {\n if (id === _this.safeId()) {\n _this.$nextTick(_this.emitSync);\n }\n });\n },\n updated: function updated() {\n // Emit a private event every time this component updates to ensure\n // the toggle button is in sync with the collapse's state\n // It is emitted regardless if the visible state changes\n this.emitSync();\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n if (this.isNav) {\n this.setWindowEvents(false);\n }\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n if (this.isNav) {\n this.setWindowEvents(true);\n }\n\n this.emitSync();\n },\n beforeDestroy: function beforeDestroy() {\n // Trigger state emit if needed\n this.show = false;\n\n if (this.isNav && isBrowser) {\n this.setWindowEvents(false);\n }\n },\n methods: {\n setWindowEvents: function setWindowEvents(on) {\n eventOnOff(on, window, 'resize', this.handleResize, EVENT_OPTIONS_NO_CAPTURE);\n eventOnOff(on, window, 'orientationchange', this.handleResize, EVENT_OPTIONS_NO_CAPTURE);\n },\n toggle: function toggle() {\n this.show = !this.show;\n },\n onEnter: function onEnter() {\n this.transitioning = true; // This should be moved out so we can add cancellable events\n\n this.$emit('show');\n },\n onAfterEnter: function onAfterEnter() {\n this.transitioning = false;\n this.$emit('shown');\n },\n onLeave: function onLeave() {\n this.transitioning = true; // This should be moved out so we can add cancellable events\n\n this.$emit('hide');\n },\n onAfterLeave: function onAfterLeave() {\n this.transitioning = false;\n this.$emit('hidden');\n },\n emitState: function emitState() {\n this.$emit('input', this.show); // Let `v-b-toggle` know the state of this collapse\n\n this.emitOnRoot(EVENT_STATE, this.safeId(), this.show);\n\n if (this.accordion && this.show) {\n // Tell the other collapses in this accordion to close\n this.emitOnRoot(EVENT_ACCORDION, this.safeId(), this.accordion);\n }\n },\n emitSync: function emitSync() {\n // Emit a private event every time this component updates to ensure\n // the toggle button is in sync with the collapse's state\n // It is emitted regardless if the visible state changes\n this.emitOnRoot(EVENT_STATE_SYNC, this.safeId(), this.show);\n },\n checkDisplayBlock: function checkDisplayBlock() {\n // Check to see if the collapse has `display: block !important` set\n // We can't set `display: none` directly on `this.$el`, as it would\n // trigger a new transition to start (or cancel a current one)\n var restore = hasClass(this.$el, 'show');\n removeClass(this.$el, 'show');\n var isBlock = getCS(this.$el).display === 'block';\n\n if (restore) {\n addClass(this.$el, 'show');\n }\n\n return isBlock;\n },\n clickHandler: function clickHandler(evt) {\n // If we are in a nav/navbar, close the collapse when non-disabled link clicked\n var el = evt.target;\n\n if (!this.isNav || !el || getCS(this.$el).display !== 'block') {\n /* istanbul ignore next: can't test getComputedStyle in JSDOM */\n return;\n }\n\n if (matches(el, '.nav-link,.dropdown-item') || closest('.nav-link,.dropdown-item', el)) {\n if (!this.checkDisplayBlock()) {\n // Only close the collapse if it is not forced to be `display: block !important`\n this.show = false;\n }\n }\n },\n handleToggleEvt: function handleToggleEvt(target) {\n if (target !== this.safeId()) {\n return;\n }\n\n this.toggle();\n },\n handleAccordionEvt: function handleAccordionEvt(openedId, accordion) {\n if (!this.accordion || accordion !== this.accordion) {\n return;\n }\n\n if (openedId === this.safeId()) {\n // Open this collapse if not shown\n if (!this.show) {\n this.toggle();\n }\n } else {\n // Close this collapse if shown\n if (this.show) {\n this.toggle();\n }\n }\n },\n handleResize: function handleResize() {\n // Handler for orientation/resize to set collapsed state in nav/navbar\n this.show = getCS(this.$el).display === 'block';\n }\n },\n render: function render(h) {\n var _this2 = this;\n\n var scope = {\n visible: this.show,\n close: function close() {\n return _this2.show = false;\n }\n };\n var content = h(this.tag, {\n class: this.classObject,\n directives: [{\n name: 'show',\n value: this.show\n }],\n attrs: {\n id: this.safeId()\n },\n on: {\n click: this.clickHandler\n }\n }, [this.normalizeSlot(SLOT_NAME_DEFAULT, scope)]);\n return h(BVCollapse, {\n props: {\n appear: this.appear\n },\n on: {\n enter: this.onEnter,\n afterEnter: this.onAfterEnter,\n leave: this.onLeave,\n afterLeave: this.onAfterLeave\n }\n }, [content]);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue, { mergeData } from '../../vue';\nimport { NAME_DROPDOWN_HEADER } from '../../constants/components';\nimport { makePropsConfigurable } from '../../utils/config';\nexport var props = makePropsConfigurable({\n id: {\n type: String // default: null\n\n },\n tag: {\n type: String,\n default: 'header'\n },\n variant: {\n type: String // default: null\n\n }\n}, NAME_DROPDOWN_HEADER); // @vue/component\n\nexport var BDropdownHeader = /*#__PURE__*/Vue.extend({\n name: NAME_DROPDOWN_HEADER,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var $attrs = data.attrs || {};\n data.attrs = {};\n return h('li', mergeData(data, {\n attrs: {\n role: 'presentation'\n }\n }), [h(props.tag, {\n staticClass: 'dropdown-header',\n class: _defineProperty({}, \"text-\".concat(props.variant), props.variant),\n attrs: _objectSpread(_objectSpread({}, $attrs), {}, {\n id: props.id || null,\n role: 'heading'\n }),\n ref: 'header'\n }, children)]);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue from '../../vue';\nimport { NAME_DROPDOWN_ITEM_BUTTON } from '../../constants/components';\nimport { makePropsConfigurable } from '../../utils/config';\nimport attrsMixin from '../../mixins/attrs';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nexport var props = makePropsConfigurable({\n active: {\n type: Boolean,\n default: false\n },\n activeClass: {\n type: String,\n default: 'active'\n },\n buttonClass: {\n type: [String, Array, Object] // default: null\n\n },\n disabled: {\n type: Boolean,\n default: false\n },\n variant: {\n type: String // default: null\n\n }\n}, NAME_DROPDOWN_ITEM_BUTTON); // @vue/component\n\nexport var BDropdownItemButton = /*#__PURE__*/Vue.extend({\n name: NAME_DROPDOWN_ITEM_BUTTON,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n bvDropdown: {\n default: null\n }\n },\n inheritAttrs: false,\n props: props,\n computed: {\n computedAttrs: function computedAttrs() {\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n role: 'menuitem',\n type: 'button',\n disabled: this.disabled\n });\n }\n },\n methods: {\n closeDropdown: function closeDropdown() {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true);\n }\n },\n onClick: function onClick(evt) {\n this.$emit('click', evt);\n this.closeDropdown();\n }\n },\n render: function render(h) {\n var _ref;\n\n return h('li', {\n attrs: {\n role: 'presentation'\n }\n }, [h('button', {\n staticClass: 'dropdown-item',\n class: [this.buttonClass, (_ref = {}, _defineProperty(_ref, this.activeClass, this.active), _defineProperty(_ref, \"text-\".concat(this.variant), this.variant && !(this.active || this.disabled)), _ref)],\n attrs: this.computedAttrs,\n on: {\n click: this.onClick\n },\n ref: 'button'\n }, this.normalizeSlot())]);\n }\n});","import { BDropdown } from './dropdown';\nimport { BDropdownItem } from './dropdown-item';\nimport { BDropdownItemButton } from './dropdown-item-button';\nimport { BDropdownHeader } from './dropdown-header';\nimport { BDropdownDivider } from './dropdown-divider';\nimport { BDropdownForm } from './dropdown-form';\nimport { BDropdownText } from './dropdown-text';\nimport { BDropdownGroup } from './dropdown-group';\nimport { pluginFactory } from '../../utils/plugins';\nvar DropdownPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BDropdown: BDropdown,\n BDd: BDropdown,\n BDropdownItem: BDropdownItem,\n BDdItem: BDropdownItem,\n BDropdownItemButton: BDropdownItemButton,\n BDropdownItemBtn: BDropdownItemButton,\n BDdItemButton: BDropdownItemButton,\n BDdItemBtn: BDropdownItemButton,\n BDropdownHeader: BDropdownHeader,\n BDdHeader: BDropdownHeader,\n BDropdownDivider: BDropdownDivider,\n BDdDivider: BDropdownDivider,\n BDropdownForm: BDropdownForm,\n BDdForm: BDropdownForm,\n BDropdownText: BDropdownText,\n BDdText: BDropdownText,\n BDropdownGroup: BDropdownGroup,\n BDdGroup: BDropdownGroup\n }\n});\nexport { DropdownPlugin, BDropdown, BDropdownItem, BDropdownItemButton, BDropdownHeader, BDropdownDivider, BDropdownForm, BDropdownText, BDropdownGroup };","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue from '../../vue';\nimport { NAME_DROPDOWN_ITEM } from '../../constants/components';\nimport { makePropsConfigurable } from '../../utils/config';\nimport { requestAF } from '../../utils/dom';\nimport { omit } from '../../utils/object';\nimport attrsMixin from '../../mixins/attrs';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nimport { BLink, props as BLinkProps } from '../link/link';\nexport var props = omit(BLinkProps, ['event', 'routerTag']); // @vue/component\n\nexport var BDropdownItem = /*#__PURE__*/Vue.extend({\n name: NAME_DROPDOWN_ITEM,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n bvDropdown: {\n default: null\n }\n },\n inheritAttrs: false,\n props: makePropsConfigurable(_objectSpread(_objectSpread({}, props), {}, {\n linkClass: {\n type: [String, Array, Object] // default: null\n\n },\n variant: {\n type: String // default: null\n\n }\n }), NAME_DROPDOWN_ITEM),\n computed: {\n computedAttrs: function computedAttrs() {\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n role: 'menuitem'\n });\n }\n },\n methods: {\n closeDropdown: function closeDropdown() {\n var _this = this;\n\n // Close on next animation frame to allow time to process\n requestAF(function () {\n if (_this.bvDropdown) {\n _this.bvDropdown.hide(true);\n }\n });\n },\n onClick: function onClick(evt) {\n this.$emit('click', evt);\n this.closeDropdown();\n }\n },\n render: function render(h) {\n var linkClass = this.linkClass,\n variant = this.variant,\n active = this.active,\n disabled = this.disabled,\n onClick = this.onClick;\n return h('li', {\n attrs: {\n role: 'presentation'\n }\n }, [h(BLink, {\n staticClass: 'dropdown-item',\n class: [linkClass, _defineProperty({}, \"text-\".concat(variant), variant && !(active || disabled))],\n props: this.$props,\n attrs: this.computedAttrs,\n on: {\n click: onClick\n },\n ref: 'item'\n }, this.normalizeSlot())]);\n }\n});","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue, { mergeData } from '../../vue';\nimport { NAME_EMBED } from '../../constants/components';\nimport { makePropsConfigurable } from '../../utils/config';\nimport { arrayIncludes } from '../../utils/array'; // --- Constants ---\n\nvar TYPES = ['iframe', 'embed', 'video', 'object', 'img', 'b-img', 'b-img-lazy']; // --- Props ---\n\nexport var props = makePropsConfigurable({\n type: {\n type: String,\n default: 'iframe',\n validator: function validator(value) {\n return arrayIncludes(TYPES, value);\n }\n },\n tag: {\n type: String,\n default: 'div'\n },\n aspect: {\n type: String,\n default: '16by9'\n }\n}, NAME_EMBED); // --- Main component ---\n// @vue/component\n\nexport var BEmbed = /*#__PURE__*/Vue.extend({\n name: NAME_EMBED,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.tag, {\n ref: data.ref,\n staticClass: 'embed-responsive',\n class: _defineProperty({}, \"embed-responsive-\".concat(props.aspect), props.aspect)\n }, [h(props.type, mergeData(data, {\n ref: '',\n staticClass: 'embed-responsive-item'\n }), children)]);\n }\n});","import Vue from '../../vue';\nimport { NAME_CAROUSEL } from '../../constants/components';\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events';\nimport { CODE_ENTER, CODE_LEFT, CODE_RIGHT, CODE_SPACE } from '../../constants/key-codes';\nimport noop from '../../utils/noop';\nimport observeDom from '../../utils/observe-dom';\nimport { makePropsConfigurable } from '../../utils/config';\nimport { addClass, getActiveElement, reflow, removeClass, requestAF, selectAll, setAttr } from '../../utils/dom';\nimport { isBrowser, hasTouchSupport, hasPointerEventSupport } from '../../utils/env';\nimport { eventOn, eventOff, stopEvent } from '../../utils/events';\nimport { isUndefined } from '../../utils/inspect';\nimport { mathAbs, mathFloor, mathMax, mathMin } from '../../utils/math';\nimport { toInteger } from '../../utils/number';\nimport idMixin from '../../mixins/id';\nimport normalizeSlotMixin from '../../mixins/normalize-slot'; // Slide directional classes\n\nvar DIRECTION = {\n next: {\n dirClass: 'carousel-item-left',\n overlayClass: 'carousel-item-next'\n },\n prev: {\n dirClass: 'carousel-item-right',\n overlayClass: 'carousel-item-prev'\n }\n}; // Fallback Transition duration (with a little buffer) in ms\n\nvar TRANS_DURATION = 600 + 50; // Time for mouse compat events to fire after touch\n\nvar TOUCH_EVENT_COMPAT_WAIT = 500; // Number of pixels to consider touch move a swipe\n\nvar SWIPE_THRESHOLD = 40; // PointerEvent pointer types\n\nvar PointerType = {\n TOUCH: 'touch',\n PEN: 'pen'\n}; // Transition Event names\n\nvar TransitionEndEvents = {\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'transitionend',\n OTransition: 'otransitionend oTransitionEnd',\n transition: 'transitionend'\n}; // Return the browser specific transitionEnd event name\n\nvar getTransitionEndEvent = function getTransitionEndEvent(el) {\n for (var name in TransitionEndEvents) {\n if (!isUndefined(el.style[name])) {\n return TransitionEndEvents[name];\n }\n } // Fallback\n\n /* istanbul ignore next */\n\n\n return null;\n}; // @vue/component\n\n\nexport var BCarousel = /*#__PURE__*/Vue.extend({\n name: NAME_CAROUSEL,\n mixins: [idMixin, normalizeSlotMixin],\n provide: function provide() {\n return {\n bvCarousel: this\n };\n },\n model: {\n prop: 'value',\n event: 'input'\n },\n props: makePropsConfigurable({\n labelPrev: {\n type: String,\n default: 'Previous slide'\n },\n labelNext: {\n type: String,\n default: 'Next slide'\n },\n labelGotoSlide: {\n type: String,\n default: 'Goto slide'\n },\n labelIndicators: {\n type: String,\n default: 'Select a slide to display'\n },\n interval: {\n type: Number,\n default: 5000\n },\n indicators: {\n type: Boolean,\n default: false\n },\n controls: {\n type: Boolean,\n default: false\n },\n noAnimation: {\n // Disable slide/fade animation\n type: Boolean,\n default: false\n },\n fade: {\n // Enable cross-fade animation instead of slide animation\n type: Boolean,\n default: false\n },\n noWrap: {\n // Disable wrapping/looping when start/end is reached\n type: Boolean,\n default: false\n },\n noTouch: {\n // Sniffed by carousel-slide\n type: Boolean,\n default: false\n },\n noHoverPause: {\n // Disable pause on hover\n type: Boolean,\n default: false\n },\n imgWidth: {\n // Sniffed by carousel-slide\n type: [Number, String] // default: undefined\n\n },\n imgHeight: {\n // Sniffed by carousel-slide\n type: [Number, String] // default: undefined\n\n },\n background: {\n type: String // default: undefined\n\n },\n value: {\n type: Number,\n default: 0\n }\n }, NAME_CAROUSEL),\n data: function data() {\n return {\n index: this.value || 0,\n isSliding: false,\n transitionEndEvent: null,\n slides: [],\n direction: null,\n isPaused: !(toInteger(this.interval, 0) > 0),\n // Touch event handling values\n touchStartX: 0,\n touchDeltaX: 0\n };\n },\n computed: {\n numSlides: function numSlides() {\n return this.slides.length;\n }\n },\n watch: {\n value: function value(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.setSlide(toInteger(newVal, 0));\n }\n },\n interval: function interval(newVal, oldVal) {\n if (newVal === oldVal) {\n /* istanbul ignore next */\n return;\n }\n\n if (!newVal) {\n // Pausing slide show\n this.pause(false);\n } else {\n // Restarting or Changing interval\n this.pause(true);\n this.start(false);\n }\n },\n isPaused: function isPaused(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.$emit(newVal ? 'paused' : 'unpaused');\n }\n },\n index: function index(to, from) {\n if (to === from || this.isSliding) {\n /* istanbul ignore next */\n return;\n }\n\n this.doSlide(to, from);\n }\n },\n created: function created() {\n // Create private non-reactive props\n this.$_interval = null;\n this.$_animationTimeout = null;\n this.$_touchTimeout = null;\n this.$_observer = null; // Set initial paused state\n\n this.isPaused = !(toInteger(this.interval, 0) > 0);\n },\n mounted: function mounted() {\n // Cache current browser transitionend event name\n this.transitionEndEvent = getTransitionEndEvent(this.$el) || null; // Get all slides\n\n this.updateSlides(); // Observe child changes so we can update slide list\n\n this.setObserver(true);\n },\n beforeDestroy: function beforeDestroy() {\n this.clearInterval();\n this.clearAnimationTimeout();\n this.clearTouchTimeout();\n this.setObserver(false);\n },\n methods: {\n clearInterval: function (_clearInterval) {\n function clearInterval() {\n return _clearInterval.apply(this, arguments);\n }\n\n clearInterval.toString = function () {\n return _clearInterval.toString();\n };\n\n return clearInterval;\n }(function () {\n clearInterval(this.$_interval);\n this.$_interval = null;\n }),\n clearAnimationTimeout: function clearAnimationTimeout() {\n clearTimeout(this.$_animationTimeout);\n this.$_animationTimeout = null;\n },\n clearTouchTimeout: function clearTouchTimeout() {\n clearTimeout(this.$_touchTimeout);\n this.$_touchTimeout = null;\n },\n setObserver: function setObserver() {\n var on = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n this.$_observer && this.$_observer.disconnect();\n this.$_observer = null;\n\n if (on) {\n this.$_observer = observeDom(this.$refs.inner, this.updateSlides.bind(this), {\n subtree: false,\n childList: true,\n attributes: true,\n attributeFilter: ['id']\n });\n }\n },\n // Set slide\n setSlide: function setSlide(slide) {\n var _this = this;\n\n var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n // Don't animate when page is not visible\n\n /* istanbul ignore if: difficult to test */\n if (isBrowser && document.visibilityState && document.hidden) {\n return;\n }\n\n var noWrap = this.noWrap;\n var numSlides = this.numSlides; // Make sure we have an integer (you never know!)\n\n slide = mathFloor(slide); // Don't do anything if nothing to slide to\n\n if (numSlides === 0) {\n return;\n } // Don't change slide while transitioning, wait until transition is done\n\n\n if (this.isSliding) {\n // Schedule slide after sliding complete\n this.$once('sliding-end', function () {\n // Wrap in `requestAF()` to allow the slide to properly finish to avoid glitching\n requestAF(function () {\n return _this.setSlide(slide, direction);\n });\n });\n return;\n }\n\n this.direction = direction; // Set new slide index\n // Wrap around if necessary (if no-wrap not enabled)\n\n this.index = slide >= numSlides ? noWrap ? numSlides - 1 : 0 : slide < 0 ? noWrap ? 0 : numSlides - 1 : slide; // Ensure the v-model is synched up if no-wrap is enabled\n // and user tried to slide pass either ends\n\n if (noWrap && this.index !== slide && this.index !== this.value) {\n this.$emit('input', this.index);\n }\n },\n // Previous slide\n prev: function prev() {\n this.setSlide(this.index - 1, 'prev');\n },\n // Next slide\n next: function next() {\n this.setSlide(this.index + 1, 'next');\n },\n // Pause auto rotation\n pause: function pause(evt) {\n if (!evt) {\n this.isPaused = true;\n }\n\n this.clearInterval();\n },\n // Start auto rotate slides\n start: function start(evt) {\n if (!evt) {\n this.isPaused = false;\n }\n /* istanbul ignore next: most likely will never happen, but just in case */\n\n\n this.clearInterval(); // Don't start if no interval, or less than 2 slides\n\n if (this.interval && this.numSlides > 1) {\n this.$_interval = setInterval(this.next, mathMax(1000, this.interval));\n }\n },\n // Restart auto rotate slides when focus/hover leaves the carousel\n\n /* istanbul ignore next */\n restart: function restart() {\n if (!this.$el.contains(getActiveElement())) {\n this.start();\n }\n },\n doSlide: function doSlide(to, from) {\n var _this2 = this;\n\n var isCycling = Boolean(this.interval); // Determine sliding direction\n\n var direction = this.calcDirection(this.direction, from, to);\n var overlayClass = direction.overlayClass;\n var dirClass = direction.dirClass; // Determine current and next slides\n\n var currentSlide = this.slides[from];\n var nextSlide = this.slides[to]; // Don't do anything if there aren't any slides to slide to\n\n if (!currentSlide || !nextSlide) {\n /* istanbul ignore next */\n return;\n } // Start animating\n\n\n this.isSliding = true;\n\n if (isCycling) {\n this.pause(false);\n }\n\n this.$emit('sliding-start', to); // Update v-model\n\n this.$emit('input', this.index);\n\n if (this.noAnimation) {\n addClass(nextSlide, 'active');\n removeClass(currentSlide, 'active');\n this.isSliding = false; // Notify ourselves that we're done sliding (slid)\n\n this.$nextTick(function () {\n return _this2.$emit('sliding-end', to);\n });\n } else {\n addClass(nextSlide, overlayClass); // Trigger a reflow of next slide\n\n reflow(nextSlide);\n addClass(currentSlide, dirClass);\n addClass(nextSlide, dirClass); // Transition End handler\n\n var called = false;\n /* istanbul ignore next: difficult to test */\n\n var onceTransEnd = function onceTransEnd() {\n if (called) {\n return;\n }\n\n called = true;\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n\n if (_this2.transitionEndEvent) {\n var events = _this2.transitionEndEvent.split(/\\s+/);\n\n events.forEach(function (evt) {\n return eventOff(nextSlide, evt, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE);\n });\n }\n\n _this2.clearAnimationTimeout();\n\n removeClass(nextSlide, dirClass);\n removeClass(nextSlide, overlayClass);\n addClass(nextSlide, 'active');\n removeClass(currentSlide, 'active');\n removeClass(currentSlide, dirClass);\n removeClass(currentSlide, overlayClass);\n setAttr(currentSlide, 'aria-current', 'false');\n setAttr(nextSlide, 'aria-current', 'true');\n setAttr(currentSlide, 'aria-hidden', 'true');\n setAttr(nextSlide, 'aria-hidden', 'false');\n _this2.isSliding = false;\n _this2.direction = null; // Notify ourselves that we're done sliding (slid)\n\n _this2.$nextTick(function () {\n return _this2.$emit('sliding-end', to);\n });\n }; // Set up transitionend handler\n\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n\n\n if (this.transitionEndEvent) {\n var events = this.transitionEndEvent.split(/\\s+/);\n events.forEach(function (event) {\n return eventOn(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE);\n });\n } // Fallback to setTimeout()\n\n\n this.$_animationTimeout = setTimeout(onceTransEnd, TRANS_DURATION);\n }\n\n if (isCycling) {\n this.start(false);\n }\n },\n // Update slide list\n updateSlides: function updateSlides() {\n this.pause(true); // Get all slides as DOM elements\n\n this.slides = selectAll('.carousel-item', this.$refs.inner);\n var numSlides = this.slides.length; // Keep slide number in range\n\n var index = mathMax(0, mathMin(mathFloor(this.index), numSlides - 1));\n this.slides.forEach(function (slide, idx) {\n var n = idx + 1;\n\n if (idx === index) {\n addClass(slide, 'active');\n setAttr(slide, 'aria-current', 'true');\n } else {\n removeClass(slide, 'active');\n setAttr(slide, 'aria-current', 'false');\n }\n\n setAttr(slide, 'aria-posinset', String(n));\n setAttr(slide, 'aria-setsize', String(numSlides));\n }); // Set slide as active\n\n this.setSlide(index);\n this.start(this.isPaused);\n },\n calcDirection: function calcDirection() {\n var direction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var curIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var nextIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n\n if (!direction) {\n return nextIndex > curIndex ? DIRECTION.next : DIRECTION.prev;\n }\n\n return DIRECTION[direction];\n },\n handleClick: function handleClick(evt, fn) {\n var keyCode = evt.keyCode;\n\n if (evt.type === 'click' || keyCode === CODE_SPACE || keyCode === CODE_ENTER) {\n stopEvent(evt);\n fn();\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n handleSwipe: function handleSwipe() {\n var absDeltaX = mathAbs(this.touchDeltaX);\n\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return;\n }\n\n var direction = absDeltaX / this.touchDeltaX; // Reset touch delta X\n // https://github.com/twbs/bootstrap/pull/28558\n\n this.touchDeltaX = 0;\n\n if (direction > 0) {\n // Swipe left\n this.prev();\n } else if (direction < 0) {\n // Swipe right\n this.next();\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchStart: function touchStart(evt) {\n if (hasPointerEventSupport && PointerType[evt.pointerType.toUpperCase()]) {\n this.touchStartX = evt.clientX;\n } else if (!hasPointerEventSupport) {\n this.touchStartX = evt.touches[0].clientX;\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchMove: function touchMove(evt) {\n // Ensure swiping with one touch and not pinching\n if (evt.touches && evt.touches.length > 1) {\n this.touchDeltaX = 0;\n } else {\n this.touchDeltaX = evt.touches[0].clientX - this.touchStartX;\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchEnd: function touchEnd(evt) {\n if (hasPointerEventSupport && PointerType[evt.pointerType.toUpperCase()]) {\n this.touchDeltaX = evt.clientX - this.touchStartX;\n }\n\n this.handleSwipe(); // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause(false);\n this.clearTouchTimeout();\n this.$_touchTimeout = setTimeout(this.start, TOUCH_EVENT_COMPAT_WAIT + mathMax(1000, this.interval));\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n // Wrapper for slides\n var inner = h('div', {\n ref: 'inner',\n class: ['carousel-inner'],\n attrs: {\n id: this.safeId('__BV_inner_'),\n role: 'list'\n }\n }, [this.normalizeSlot()]); // Prev and next controls\n\n var controls = h();\n\n if (this.controls) {\n var prevHandler = function prevHandler(evt) {\n /* istanbul ignore next */\n if (!_this3.isSliding) {\n _this3.handleClick(evt, _this3.prev);\n } else {\n stopEvent(evt, {\n propagation: false\n });\n }\n };\n\n var nextHandler = function nextHandler(evt) {\n /* istanbul ignore next */\n if (!_this3.isSliding) {\n _this3.handleClick(evt, _this3.next);\n } else {\n stopEvent(evt, {\n propagation: false\n });\n }\n };\n\n controls = [h('a', {\n class: ['carousel-control-prev'],\n attrs: {\n href: '#',\n role: 'button',\n 'aria-controls': this.safeId('__BV_inner_'),\n 'aria-disabled': this.isSliding ? 'true' : null\n },\n on: {\n click: prevHandler,\n keydown: prevHandler\n }\n }, [h('span', {\n class: ['carousel-control-prev-icon'],\n attrs: {\n 'aria-hidden': 'true'\n }\n }), h('span', {\n class: ['sr-only']\n }, [this.labelPrev])]), h('a', {\n class: ['carousel-control-next'],\n attrs: {\n href: '#',\n role: 'button',\n 'aria-controls': this.safeId('__BV_inner_'),\n 'aria-disabled': this.isSliding ? 'true' : null\n },\n on: {\n click: nextHandler,\n keydown: nextHandler\n }\n }, [h('span', {\n class: ['carousel-control-next-icon'],\n attrs: {\n 'aria-hidden': 'true'\n }\n }), h('span', {\n class: ['sr-only']\n }, [this.labelNext])])];\n } // Indicators\n\n\n var indicators = h('ol', {\n class: ['carousel-indicators'],\n directives: [{\n name: 'show',\n rawName: 'v-show',\n value: this.indicators,\n expression: 'indicators'\n }],\n attrs: {\n id: this.safeId('__BV_indicators_'),\n 'aria-hidden': this.indicators ? 'false' : 'true',\n 'aria-label': this.labelIndicators,\n 'aria-owns': this.safeId('__BV_inner_')\n }\n }, this.slides.map(function (slide, n) {\n return h('li', {\n key: \"slide_\".concat(n),\n class: {\n active: n === _this3.index\n },\n attrs: {\n role: 'button',\n id: _this3.safeId(\"__BV_indicator_\".concat(n + 1, \"_\")),\n tabindex: _this3.indicators ? '0' : '-1',\n 'aria-current': n === _this3.index ? 'true' : 'false',\n 'aria-label': \"\".concat(_this3.labelGotoSlide, \" \").concat(n + 1),\n 'aria-describedby': _this3.slides[n].id || null,\n 'aria-controls': _this3.safeId('__BV_inner_')\n },\n on: {\n click: function click(evt) {\n _this3.handleClick(evt, function () {\n _this3.setSlide(n);\n });\n },\n keydown: function keydown(evt) {\n _this3.handleClick(evt, function () {\n _this3.setSlide(n);\n });\n }\n }\n });\n }));\n var on = {\n mouseenter: this.noHoverPause ? noop : this.pause,\n mouseleave: this.noHoverPause ? noop : this.restart,\n focusin: this.pause,\n focusout: this.restart,\n keydown: function keydown(evt) {\n if (/input|textarea/i.test(evt.target.tagName)) {\n /* istanbul ignore next */\n return;\n }\n\n var keyCode = evt.keyCode;\n\n if (keyCode === CODE_LEFT || keyCode === CODE_RIGHT) {\n stopEvent(evt);\n\n _this3[keyCode === CODE_LEFT ? 'prev' : 'next']();\n }\n }\n }; // Touch support event handlers for environment\n\n if (!this.noTouch && hasTouchSupport) {\n // Attach appropriate listeners (prepend event name with '&' for passive mode)\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n if (hasPointerEventSupport) {\n on['&pointerdown'] = this.touchStart;\n on['&pointerup'] = this.touchEnd;\n } else {\n on['&touchstart'] = this.touchStart;\n on['&touchmove'] = this.touchMove;\n on['&touchend'] = this.touchEnd;\n }\n } // Return the carousel\n\n\n return h('div', {\n staticClass: 'carousel',\n class: {\n slide: !this.noAnimation,\n 'carousel-fade': !this.noAnimation && this.fade,\n 'pointer-event': !this.noTouch && hasTouchSupport && hasPointerEventSupport\n },\n style: {\n background: this.background\n },\n attrs: {\n role: 'region',\n id: this.safeId(),\n 'aria-busy': this.isSliding ? 'true' : 'false'\n },\n on: on\n }, [inner, controls, indicators]);\n }\n});","import { BCarousel } from './carousel';\nimport { BCarouselSlide } from './carousel-slide';\nimport { pluginFactory } from '../../utils/plugins';\nvar CarouselPlugin =\n/*#__PURE*/\npluginFactory({\n components: {\n BCarousel: BCarousel,\n BCarouselSlide: BCarouselSlide\n }\n});\nexport { CarouselPlugin, BCarousel, BCarouselSlide };","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue from '../../vue';\nimport { NAME_DROPDOWN } from '../../constants/components';\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names';\nimport { arrayIncludes } from '../../utils/array';\nimport { makePropsConfigurable } from '../../utils/config';\nimport { htmlOrText } from '../../utils/html';\nimport { toString } from '../../utils/string';\nimport dropdownMixin, { props as dropdownProps } from '../../mixins/dropdown';\nimport idMixin from '../../mixins/id';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nimport { BButton } from '../button/button'; // --- Props ---\n\nexport var props = makePropsConfigurable(_objectSpread(_objectSpread({}, dropdownProps), {}, {\n text: {\n type: String // default: null\n\n },\n html: {\n type: String // default: null\n\n },\n variant: {\n type: String,\n default: 'secondary'\n },\n size: {\n type: String // default: null\n\n },\n block: {\n type: Boolean,\n default: false\n },\n menuClass: {\n type: [String, Array, Object] // default: null\n\n },\n toggleTag: {\n type: String,\n default: 'button'\n },\n toggleText: {\n // TODO: This really should be `toggleLabel`\n type: String,\n default: 'Toggle dropdown'\n },\n toggleClass: {\n type: [String, Array, Object] // default: null\n\n },\n noCaret: {\n type: Boolean,\n default: false\n },\n split: {\n type: Boolean,\n default: false\n },\n splitHref: {\n type: String // default: undefined\n\n },\n splitTo: {\n type: [String, Object] // default: undefined\n\n },\n splitVariant: {\n type: String // default: undefined\n\n },\n splitClass: {\n type: [String, Array, Object] // default: null\n\n },\n splitButtonType: {\n type: String,\n default: 'button',\n validator: function validator(value) {\n return arrayIncludes(['button', 'submit', 'reset'], value);\n }\n },\n lazy: {\n // If true, only render menu contents when open\n type: Boolean,\n default: false\n },\n role: {\n type: String,\n default: 'menu'\n }\n}), NAME_DROPDOWN); // --- Main component ---\n// @vue/component\n\nexport var BDropdown = /*#__PURE__*/Vue.extend({\n name: NAME_DROPDOWN,\n mixins: [idMixin, dropdownMixin, normalizeSlotMixin],\n props: props,\n computed: {\n dropdownClasses: function dropdownClasses() {\n var block = this.block,\n split = this.split;\n return [this.directionClass, this.boundaryClass, {\n show: this.visible,\n // The 'btn-group' class is required in `split` mode for button alignment\n // It needs also to be applied when `block` is disabled to allow multiple\n // dropdowns to be aligned one line\n 'btn-group': split || !block,\n // When `block` is enabled and we are in `split` mode the 'd-flex' class\n // needs to be applied to allow the buttons to stretch to full width\n 'd-flex': block && split\n }];\n },\n menuClasses: function menuClasses() {\n return [this.menuClass, {\n 'dropdown-menu-right': this.right,\n show: this.visible\n }];\n },\n toggleClasses: function toggleClasses() {\n var split = this.split;\n return [this.toggleClass, {\n 'dropdown-toggle-split': split,\n 'dropdown-toggle-no-caret': this.noCaret && !split\n }];\n }\n },\n render: function render(h) {\n var visible = this.visible,\n variant = this.variant,\n size = this.size,\n block = this.block,\n disabled = this.disabled,\n split = this.split,\n role = this.role,\n hide = this.hide,\n toggle = this.toggle;\n var commonProps = {\n variant: variant,\n size: size,\n block: block,\n disabled: disabled\n };\n var buttonContentSlotName = 'button-content';\n var $buttonChildren = this.normalizeSlot(buttonContentSlotName);\n var buttonContentDomProps = this.hasNormalizedSlot(buttonContentSlotName) ? {} : htmlOrText(this.html, this.text);\n var $split = h();\n\n if (split) {\n var splitTo = this.splitTo,\n splitHref = this.splitHref,\n splitButtonType = this.splitButtonType;\n\n var btnProps = _objectSpread(_objectSpread({}, commonProps), {}, {\n variant: this.splitVariant || variant\n }); // We add these as needed due to issues with\n // defined property with `undefined`/`null` values\n\n\n if (splitTo) {\n btnProps.to = splitTo;\n } else if (splitHref) {\n btnProps.href = splitHref;\n } else if (splitButtonType) {\n btnProps.type = splitButtonType;\n }\n\n $split = h(BButton, {\n class: this.splitClass,\n attrs: {\n id: this.safeId('_BV_button_')\n },\n props: btnProps,\n domProps: buttonContentDomProps,\n on: {\n click: this.onSplitClick\n },\n ref: 'button'\n }, $buttonChildren); // Overwrite button content for the toggle when in `split` mode\n\n $buttonChildren = [h('span', {\n class: ['sr-only']\n }, [this.toggleText])];\n buttonContentDomProps = {};\n }\n\n var $toggle = h(BButton, {\n staticClass: 'dropdown-toggle',\n class: this.toggleClasses,\n attrs: {\n id: this.safeId('_BV_toggle_'),\n 'aria-haspopup': 'true',\n 'aria-expanded': toString(visible)\n },\n props: _objectSpread(_objectSpread({}, commonProps), {}, {\n tag: this.toggleTag,\n block: block && !split\n }),\n domProps: buttonContentDomProps,\n on: {\n mousedown: this.onMousedown,\n click: toggle,\n keydown: toggle // Handle ENTER, SPACE and DOWN\n\n },\n ref: 'toggle'\n }, $buttonChildren);\n var $menu = h('ul', {\n staticClass: 'dropdown-menu',\n class: this.menuClasses,\n attrs: {\n role: role,\n tabindex: '-1',\n 'aria-labelledby': this.safeId(split ? '_BV_button_' : '_BV_toggle_')\n },\n on: {\n keydown: this.onKeydown // Handle UP, DOWN and ESC\n\n },\n ref: 'menu'\n }, [!this.lazy || visible ? this.normalizeSlot(SLOT_NAME_DEFAULT, {\n hide: hide\n }) : h()]);\n return h('div', {\n staticClass: 'dropdown b-dropdown',\n class: this.dropdownClasses,\n attrs: {\n id: this.safeId()\n }\n }, [$split, $toggle, $menu]);\n }\n});","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue, { mergeData } from '../../vue';\nimport { NAME_DROPDOWN_TEXT } from '../../constants/components';\nimport { makePropsConfigurable } from '../../utils/config'; // @vue/component\n\nexport var BDropdownText = /*#__PURE__*/Vue.extend({\n name: NAME_DROPDOWN_TEXT,\n functional: true,\n props: makePropsConfigurable({\n tag: {\n type: String,\n default: 'p'\n },\n textClass: {\n type: [String, Array, Object] // default: null\n\n },\n variant: {\n type: String // default: null\n\n }\n }, NAME_DROPDOWN_TEXT),\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var tag = props.tag,\n textClass = props.textClass,\n variant = props.variant;\n var attrs = data.attrs || {};\n data.attrs = {};\n return h('li', mergeData(data, {\n attrs: {\n role: 'presentation'\n }\n }), [h(tag, {\n staticClass: 'b-dropdown-text',\n class: [textClass, _defineProperty({}, \"text-\".concat(variant), variant)],\n props: props,\n attrs: attrs,\n ref: 'text'\n }, children)]);\n }\n});","import { BEmbed } from './embed';\nimport { pluginFactory } from '../../utils/plugins';\nvar EmbedPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BEmbed: BEmbed\n }\n});\nexport { EmbedPlugin, BEmbed };","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue, { mergeData } from '../../vue';\nimport { NAME_DROPDOWN_DIVIDER } from '../../constants/components';\nimport { makePropsConfigurable } from '../../utils/config';\nexport var props = makePropsConfigurable({\n tag: {\n type: String,\n default: 'hr'\n }\n}, NAME_DROPDOWN_DIVIDER); // @vue/component\n\nexport var BDropdownDivider = /*#__PURE__*/Vue.extend({\n name: NAME_DROPDOWN_DIVIDER,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data;\n var $attrs = data.attrs || {};\n data.attrs = {};\n return h('li', mergeData(data, {\n attrs: {\n role: 'presentation'\n }\n }), [h(props.tag, {\n staticClass: 'dropdown-divider',\n attrs: _objectSpread(_objectSpread({}, $attrs), {}, {\n role: 'separator',\n 'aria-orientation': 'horizontal'\n }),\n ref: 'divider'\n })]);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue from '../../vue';\nimport { NAME_CAROUSEL_SLIDE } from '../../constants/components';\nimport { makePropsConfigurable } from '../../utils/config';\nimport { hasTouchSupport } from '../../utils/env';\nimport { stopEvent } from '../../utils/events';\nimport { htmlOrText } from '../../utils/html';\nimport { pluckProps, unprefixPropName } from '../../utils/props';\nimport idMixin from '../../mixins/id';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nimport { BImg } from '../image/img'; // --- Props ---\n\nvar imgProps = {\n imgSrc: {\n type: String // default: undefined\n\n },\n imgAlt: {\n type: String // default: undefined\n\n },\n imgWidth: {\n type: [Number, String] // default: undefined\n\n },\n imgHeight: {\n type: [Number, String] // default: undefined\n\n },\n imgBlank: {\n type: Boolean,\n default: false\n },\n imgBlankColor: {\n type: String,\n default: 'transparent'\n }\n};\nexport var props = makePropsConfigurable(_objectSpread(_objectSpread({}, imgProps), {}, {\n contentVisibleUp: {\n type: String\n },\n contentTag: {\n type: String,\n default: 'div'\n },\n caption: {\n type: String\n },\n captionHtml: {\n type: String\n },\n captionTag: {\n type: String,\n default: 'h3'\n },\n text: {\n type: String\n },\n textHtml: {\n type: String\n },\n textTag: {\n type: String,\n default: 'p'\n },\n background: {\n type: String\n }\n}), NAME_CAROUSEL_SLIDE); // --- Main component ---\n// @vue/component\n\nexport var BCarouselSlide = /*#__PURE__*/Vue.extend({\n name: NAME_CAROUSEL_SLIDE,\n mixins: [idMixin, normalizeSlotMixin],\n inject: {\n bvCarousel: {\n default: function _default() {\n return {\n // Explicitly disable touch if not a child of carousel\n noTouch: true\n };\n }\n }\n },\n props: props,\n computed: {\n contentClasses: function contentClasses() {\n return [this.contentVisibleUp ? 'd-none' : '', this.contentVisibleUp ? \"d-\".concat(this.contentVisibleUp, \"-block\") : ''];\n },\n computedWidth: function computedWidth() {\n // Use local width, or try parent width\n return this.imgWidth || this.bvCarousel.imgWidth || null;\n },\n computedHeight: function computedHeight() {\n // Use local height, or try parent height\n return this.imgHeight || this.bvCarousel.imgHeight || null;\n }\n },\n render: function render(h) {\n var $img = this.normalizeSlot('img');\n\n if (!$img && (this.imgSrc || this.imgBlank)) {\n var on = {}; // Touch support event handler\n\n /* istanbul ignore if: difficult to test in JSDOM */\n\n if (!this.bvCarousel.noTouch && hasTouchSupport) {\n on.dragstart = function (evt) {\n return stopEvent(evt, {\n propagation: false\n });\n };\n }\n\n $img = h(BImg, {\n props: _objectSpread(_objectSpread({}, pluckProps(imgProps, this.$props, unprefixPropName.bind(null, 'img'))), {}, {\n width: this.computedWidth,\n height: this.computedHeight,\n fluidGrow: true,\n block: true\n }),\n on: on\n });\n }\n\n var $contentChildren = [// Caption\n this.caption || this.captionHtml ? h(this.captionTag, {\n domProps: htmlOrText(this.captionHtml, this.caption)\n }) : false, // Text\n this.text || this.textHtml ? h(this.textTag, {\n domProps: htmlOrText(this.textHtml, this.text)\n }) : false, // Children\n this.normalizeSlot() || false];\n var $content = h();\n\n if ($contentChildren.some(Boolean)) {\n $content = h(this.contentTag, {\n staticClass: 'carousel-caption',\n class: this.contentClasses\n }, $contentChildren.map(function ($child) {\n return $child || h();\n }));\n }\n\n return h('div', {\n staticClass: 'carousel-item',\n style: {\n background: this.background || this.bvCarousel.background || null\n },\n attrs: {\n id: this.safeId(),\n role: 'listitem'\n }\n }, [$img, $content]);\n }\n});"],"sourceRoot":""}