{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/components/card/card-img.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card.js","webpack:///./node_modules/bootstrap-vue/esm/components/image/img.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-title.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-body.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-footer.js","webpack:///./node_modules/bootstrap-vue/esm/utils/css-escape.js","webpack:///./node_modules/bootstrap-vue/esm/components/layout/form-row.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-text.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-invalid-feedback.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-valid-feedback.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-group/form-group.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-custom.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-size.js","webpack:///./node_modules/bootstrap-vue/esm/components/layout/col.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-header.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-sub-title.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-state.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/card.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-text.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-control.js"],"names":["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","bottom","end","start","top","BCardImg","extend","name","functional","props","render","h","_ref","data","src","alt","width","height","baseClass","right","left","class","attrs","cardImgProps","bind","imgSrc","required","card","align","noBody","BCard","_class","slots","scopedSlots","imgLeft","imgRight","imgStart","imgEnd","imgBottom","header","headerHtml","footer","footerHtml","textVariant","bgVariant","borderVariant","$scopedSlots","$slots","slotScope","$imgFirst","$imgLast","$img","$header","hasHeaderSlot","domProps","html","$content","overlay","staticClass","$footer","hasFooterSlot","tag","concat","BLANK_TEMPLATE","makeBlankImgSrc","color","encodeURIComponent","replace","blank","blankColor","block","center","fluid","fluidGrow","rounded","sizes","srcset","thumbnail","BImg","join","title","titleTag","BCardTitle","children","bodyClass","BCardBody","_ref2","bodyBgVariant","bodyBorderVariant","bodyTextVariant","$title","$subTitle","subTitle","bodyTag","footerClass","BCardFooter","footerBgVariant","footerBorderVariant","footerTextVariant","footerTag","escapeChar","firstCharCode","charCodeAt","split","reduce","result","char","index","charCode","toString","BFormRow","id","inline","BFormText","ariaLive","forceShow","role","state","tooltip","BFormInvalidFeedback","show","BFormValidFeedback","INPUTS","INPUT_SELECTOR","map","v","LEGEND_INTERACTIVE_ELEMENTS","breakpoint","description","disabled","feedbackAriaLive","invalidFeedback","label","labelClass","labelFor","labelSize","labelSrOnly","validFeedback","validated","BFormGroup","mixins","this","ariaDescribedby","computed","contentColProps","getColProps","$props","labelAlignClasses","getAlignClasses","labelColProps","isHorizontal","watch","newValue","oldValue","updateAriaDescribedby","mounted","_this","$nextTick","methods","prefix","propValue","identity","$input","$refs","content","attr","newIds","oldIds","ids","array","indexOf","trim","onLegendClick","event","tagName","inputs","computedState","normalizeSlot","safeId","isFieldset","$label","labelContent","labelId","labelTag","for","on","click","tabindex","$invalidFeedback","invalidFeedbackContent","invalidFeedbackId","$validFeedback","validFeedbackContent","validFeedbackId","$description","descriptionContent","descriptionId","ref","stateClass","computedAriaInvalid","plain","formCustomMixin","custom","size","formSizeMixin","sizeFormClass","ALIGN_SELF_VALUES","computeBreakpoint","type","className","computeBreakpointClass","breakpointPropMap","generateProps","breakpoints","breakpointCol","breakpointOffset","breakpointOrder","col","offset","order","alignSelf","cols","BCol","_classList$push","classList","_keys","c","hasColClasses","some","test","headerClass","BCardHeader","headerBgVariant","headerBorderVariant","headerTextVariant","headerTag","subTitleTag","subTitleTextVariant","BCardSubTitle","formStateMixin","ariaInvalid","textTag","BCardText","SELECTOR","autofocus","form","formControlMixin","handleAutofocus","activated","el","$el"],"mappings":"gUAAA,SAASA,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,EASpM,IAAI,EAAQ,eAAsB,eAASZ,EAAcA,EAAc,GAAI,eAAK,OAAW,CAAC,MAAO,MAAO,QAAS,SAAU,OAAQ,WAAY,GAAI,CAC1JgB,OAAQ,eAAS,QAAmB,GACpCC,IAAK,eAAS,QAAmB,GACjCC,MAAO,eAAS,QAAmB,GACnCC,IAAK,eAAS,QAAmB,MAC9B,QAGMC,EAAwB,aAAIC,OAAO,CAC5CC,KAAM,OACNC,YAAY,EACZC,MAAO,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAIH,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZC,EAAML,EAAMK,IACZC,EAAMN,EAAMM,IACZC,EAAQP,EAAMO,MACdC,EAASR,EAAMQ,OACfC,EAAY,WAYhB,OAVIT,EAAML,IACRc,GAAa,OACJT,EAAMU,OAASV,EAAMP,IAC9BgB,GAAa,SACJT,EAAMR,OACfiB,GAAa,WACJT,EAAMW,MAAQX,EAAMN,SAC7Be,GAAa,SAGRP,EAAE,MAAO,eAAUE,EAAM,CAC9BQ,MAAOH,EACPI,MAAO,CACLR,IAAKA,EACLC,IAAKA,EACLC,MAAOA,EACPC,OAAQA,SClDhB,SAAS,EAAQ5C,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,SAAS,EAAcW,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAAyB,MAAhBF,UAAUD,GAAaC,UAAUD,GAAK,GAAQA,EAAI,EAAK,EAAQX,OAAOc,IAAS,GAAMC,SAAQ,SAAUC,GAAO,EAAgBN,EAAQM,EAAKF,EAAOE,OAAsBhB,OAAOkB,0BAA6BlB,OAAOmB,iBAAiBT,EAAQV,OAAOkB,0BAA0BJ,IAAmB,EAAQd,OAAOc,IAASC,SAAQ,SAAUC,GAAOhB,OAAOoB,eAAeV,EAAQM,EAAKhB,OAAOK,yBAAyBS,EAAQE,OAAe,OAAON,EAE7gB,SAAS,EAAgBW,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAgB3M,IAAI0B,EAAe,eAAU,EAAe,OAAeC,KAAK,KAAM,QACtED,EAAaE,OAAOC,UAAW,EACxB,IAAI,EAAQ,eAAsB,eAAS,EAAc,EAAc,EAAc,EAAc,EAAc,EAAc,GAAI,QAAiB,QAAmB,QAAmBH,GAAeI,EAAA,MAAY,GAAI,CAC9NC,MAAO,eAAS,QAChBC,OAAQ,eAAS,QAAmB,MACjC,QAGMC,EAAqB,aAAIxB,OAAO,CACzCC,KAAM,OACNC,YAAY,EACZC,MAAO,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAImB,EAEAtB,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZmB,EAAQpB,EAAKoB,MACbC,EAAcrB,EAAKqB,YACnBR,EAAShB,EAAMgB,OACfS,EAAUzB,EAAMyB,QAChBC,EAAW1B,EAAM0B,SACjBC,EAAW3B,EAAM2B,SACjBC,EAAS5B,EAAM4B,OACfC,EAAY7B,EAAM6B,UAClBC,EAAS9B,EAAM8B,OACfC,EAAa/B,EAAM+B,WACnBC,EAAShC,EAAMgC,OACfC,EAAajC,EAAMiC,WACnBd,EAAQnB,EAAMmB,MACde,EAAclC,EAAMkC,YACpBC,EAAYnC,EAAMmC,UAClBC,EAAgBpC,EAAMoC,cACtBC,EAAeb,GAAe,GAC9Bc,EAASf,IACTgB,EAAY,GACZC,EAAYtC,IACZuC,EAAWvC,IAEf,GAAIc,EAAQ,CACV,IAAI0B,EAAOxC,EAAEN,EAAU,CACrBI,MAAO,eAAWc,EAAcd,EAAO,OAAiBe,KAAK,KAAM,UAGjEc,EACFY,EAAWC,EAEXF,EAAYE,EAIhB,IAAIC,EAAUzC,IACV0C,EAAgB,eAAkB,OAAkBP,EAAcC,IAElEM,GAAiBd,GAAUC,KAC7BY,EAAUzC,EAAE,OAAa,CACvBF,MAAO,eAAW,OAAkBA,GACpC6C,SAAUD,EAAgB,GAAK,OAAAE,EAAA,MAAWf,EAAYD,IACrD,eAAc,OAAkBS,EAAWF,EAAcC,KAG9D,IAAIS,EAAW,eAAc,OAAmBR,EAAWF,EAAcC,GAEpEtC,EAAMoB,SACT2B,EAAW7C,EAAE,OAAW,CACtBF,MAAO,eAAW,OAAgBA,IACjC+C,GAGC/C,EAAMgD,SAAWhC,IACnB+B,EAAW7C,EAAE,MAAO,CAClB+C,YAAa,qBACZ,CAACT,EAAWO,EAAUN,IAEzBD,EAAYtC,IACZuC,EAAWvC,MAIf,IAAIgD,EAAUhD,IACViD,EAAgB,eAAkB,OAAkBd,EAAcC,GAStE,OAPIa,GAAiBnB,GAAUC,KAC7BiB,EAAUhD,EAAE,OAAa,CACvBF,MAAO,eAAW,OAAkBA,GACpC6C,SAAUD,EAAgB,GAAK,OAAAE,EAAA,MAAWb,EAAYD,IACrD,eAAc,OAAkBO,EAAWF,EAAcC,KAGvDpC,EAAEF,EAAMoD,IAAK,eAAUhD,EAAM,CAClC6C,YAAa,OACbrC,OAAQU,EAAS,CACf,WAAYG,GAAWE,EACvB,oBAAqBD,GAAYE,MAAaH,GAAWE,IACxD,EAAgBL,EAAQ,QAAQ+B,OAAOlC,GAAQA,GAAQ,EAAgBG,EAAQ,MAAM+B,OAAOlB,GAAYA,GAAY,EAAgBb,EAAQ,UAAU+B,OAAOjB,GAAgBA,GAAgB,EAAgBd,EAAQ,QAAQ+B,OAAOnB,GAAcA,GAAcZ,KACjQ,CAACkB,EAAWG,EAASI,EAAUG,EAAST,Q,kCCnHhD,yMAASzD,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAa3M,IAAIkE,EAAiB,0LAEjBC,EAAkB,SAAyBhD,EAAOC,EAAQgD,GAC5D,IAAInD,EAAMoD,mBAAmBH,EAAeI,QAAQ,OAAQ,eAASnD,IAAQmD,QAAQ,OAAQ,eAASlD,IAASkD,QAAQ,OAAQF,IAC/H,MAAO,oCAAoCH,OAAOhD,IAIzCL,EAAQ,eAAsB,CACvCM,IAAK,eAAS,QACdqD,MAAO,eAAS,QAAmB,GACnCC,WAAY,eAAS,OAAkB,eACvCC,MAAO,eAAS,QAAmB,GACnCC,OAAQ,eAAS,QAAmB,GACpCC,MAAO,eAAS,QAAmB,GAEnCC,UAAW,eAAS,QAAmB,GACvCxD,OAAQ,eAAS,QACjBG,KAAM,eAAS,QAAmB,GAClCD,MAAO,eAAS,QAAmB,GAUnCuD,QAAS,eAAS,QAA0B,GAC5CC,MAAO,eAAS,QAChB7D,IAAK,eAAS,QACd8D,OAAQ,eAAS,QACjBC,UAAW,eAAS,QAAmB,GACvC7D,MAAO,eAAS,SACf,QAGQ8D,EAAoB,aAAIxE,OAAO,CACxCC,KAAM,OACNC,YAAY,EACZC,MAAOA,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAImB,EAEAtB,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZE,EAAMN,EAAMM,IACZD,EAAML,EAAMK,IACZwD,EAAQ7D,EAAM6D,MACdG,EAAYhE,EAAMgE,UAClBC,EAAUjE,EAAMiE,QAChB1D,EAAQ,eAAUP,EAAMO,QAAU,KAClCC,EAAS,eAAUR,EAAMQ,SAAW,KACpCW,EAAQ,KACRgD,EAAS,eAAOnE,EAAMmE,QAAQjG,OAAO,QAAUoG,KAAK,KACpDJ,EAAQ,eAAOlE,EAAMkE,OAAOhG,OAAO,QAAUoG,KAAK,KA8BtD,OA5BItE,EAAM2D,SACHnD,GAAUD,EACbC,EAASD,GACCA,GAASC,IACnBD,EAAQC,GAGLD,GAAUC,IACbD,EAAQ,EACRC,EAAS,GAIXH,EAAMkD,EAAgBhD,EAAOC,EAAQR,EAAM4D,YAAc,eAEzDO,EAAS,KACTD,EAAQ,MAGNlE,EAAMW,KACRQ,EAAQ,aACCnB,EAAMU,MACfS,EAAQ,cACCnB,EAAM8D,SACf3C,EAAQ,UACR0C,GAAQ,GAGH3D,EAAE,MAAO,eAAUE,EAAM,CAC9BS,MAAO,CACLR,IAAKA,EACLC,IAAKA,EACLC,MAAOA,EAAQ,eAASA,GAAS,KACjCC,OAAQA,EAAS,eAASA,GAAU,KACpC2D,OAAQA,GAAU,KAClBD,MAAOA,GAAS,MAElBtD,OAAQU,EAAS,CACf,gBAAiBtB,EAAMoE,UACvB,YAAapE,EAAM+D,OAASC,EAC5B,QAASA,EACTC,QAAqB,KAAZA,IAA8B,IAAZA,GAC1BjF,EAAgBsC,EAAQ,WAAW+B,OAAOY,GAAU,eAASA,IAAwB,KAAZA,GAAiBjF,EAAgBsC,EAAQH,EAAOA,GAAQnC,EAAgBsC,EAAQ,UAAWuC,GAAQvC,U,kCCjHrL,gJAMWtB,EAAQ,eAAsB,CACvCuE,MAAO,eAAS,QAChBC,SAAU,eAAS,OAAkB,OACpC,QAGQC,EAA0B,aAAI5E,OAAO,CAC9CC,KAAM,OACNC,YAAY,EACZC,MAAOA,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAIH,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SACpB,OAAOxE,EAAEF,EAAMwE,SAAU,eAAUpE,EAAM,CACvC6C,YAAa,eACXyB,GAAY,eAAS1E,EAAMuE,Y,kCCtBnC,6LAAS5G,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,EAWpM,IAAIY,EAAQ,eAAsB,eAASxB,EAAcA,EAAcA,EAAcA,EAAc,GAAI,QAAa,QAAgB,eAAU,OAAW,OAAeuC,KAAK,KAAM,UAAW,GAAI,CACvM4D,UAAW,eAAS,QACpB3B,QAAS,eAAS,QAAmB,MAClC,QAGM4B,EAAyB,aAAI/E,OAAO,CAC7CC,KAAM,OACNC,YAAY,EACZC,MAAOA,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAI0E,EAEA7E,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SAChBI,EAAgB9E,EAAM8E,cACtBC,EAAoB/E,EAAM+E,kBAC1BC,EAAkBhF,EAAMgF,gBACxBC,EAAS/E,IAETF,EAAMuE,QACRU,EAAS/E,EAAE,OAAY,CACrBF,MAAO,eAAW,OAAYA,MAIlC,IAAIkF,EAAYhF,IAShB,OAPIF,EAAMmF,WACRD,EAAYhF,EAAE,OAAe,CAC3BF,MAAO,eAAW,OAAeA,GACjCY,MAAO,CAAC,WAILV,EAAEF,EAAMoF,QAAS,eAAUhF,EAAM,CACtC6C,YAAa,YACbrC,MAAO,EAAEiE,EAAQ,CACf,mBAAoB7E,EAAMgD,SACzBhE,EAAgB6F,EAAO,MAAMxB,OAAOyB,GAAgBA,GAAgB9F,EAAgB6F,EAAO,UAAUxB,OAAO0B,GAAoBA,GAAoB/F,EAAgB6F,EAAO,QAAQxB,OAAO2B,GAAkBA,GAAkBH,GAAQ7E,EAAM2E,aAC7O,CAACM,EAAQC,EAAWR,Q,oCCxD5B,iLAAS/G,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,IAAIY,EAAQ,eAAsB,eAASxB,EAAcA,EAAc,GAAI,eAAU,OAAY,OAAeuC,KAAK,KAAM,YAAa,GAAI,CACjJiB,OAAQ,eAAS,QACjBqD,YAAa,eAAS,QACtBpD,WAAY,eAAS,WAClB,QAGMqD,EAA2B,aAAIzF,OAAO,CAC/CC,KAAM,OACNC,YAAY,EACZC,MAAOA,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAI0E,EAEA7E,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SAChBa,EAAkBvF,EAAMuF,gBACxBC,EAAsBxF,EAAMwF,oBAC5BC,EAAoBzF,EAAMyF,kBAC9B,OAAOvF,EAAEF,EAAM0F,UAAW,eAAUtF,EAAM,CACxC6C,YAAa,cACbrC,MAAO,CAACZ,EAAMqF,aAAcR,EAAQ,GAAI7F,EAAgB6F,EAAO,MAAMxB,OAAOkC,GAAkBA,GAAkBvG,EAAgB6F,EAAO,UAAUxB,OAAOmC,GAAsBA,GAAsBxG,EAAgB6F,EAAO,QAAQxB,OAAOoC,GAAoBA,GAAoBZ,IAClRhC,SAAU6B,EAAW,GAAK,eAAW1E,EAAMiC,WAAYjC,EAAMgC,UAC3D0C,O,wKCpCJiB,EAAa,SAAoBtG,GACnC,MAAO,KAAOA,GAKL,EAAY,SAAmBA,GACxCA,EAAQ,eAASA,GACjB,IAAIT,EAASS,EAAMT,OACfgH,EAAgBvG,EAAMwG,WAAW,GACrC,OAAOxG,EAAMyG,MAAM,IAAIC,QAAO,SAAUC,EAAQC,EAAMC,GACpD,IAAIC,EAAW9G,EAAMwG,WAAWK,GAEhC,OAAiB,IAAbC,EACKH,EAAS,IAKL,MAAbG,GACAA,GAAY,GAAUA,GAAY,IACxB,IAAVD,GAAeC,GAAY,IAAUA,GAAY,IAEvC,IAAVD,GAAeC,GAAY,IAAUA,GAAY,IAA4B,KAAlBP,EAElDI,EAASL,EAAW,GAAGtC,OAAO8C,EAASC,SAAS,IAAK,MAKpD,IAAVF,GACa,KAAbC,GACW,IAAXvH,EAESoH,EAASL,EAAWM,GAK7BE,GAAY,KACC,KAAbA,GACa,KAAbA,GACAA,GAAY,IAAUA,GAAY,IAClCA,GAAY,IAAUA,GAAY,IAClCA,GAAY,IAAUA,GAAY,IAEzBH,EAASC,EAKXD,EAASL,EAAWM,KAC1B,K,gJCjDM,EAAQ,eAAsB,CACvC7C,IAAK,eAAS,OAAkB,QAC/B,QAGQiD,EAAwB,aAAIxG,OAAO,CAC5CC,KAAM,OACNC,YAAY,EACZC,MAAO,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAIH,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SACpB,OAAOxE,EAAEF,EAAMoD,IAAK,eAAUhD,EAAM,CAClC6C,YAAa,aACXyB,MCpBR,SAAS1F,EAAgBI,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAOpM,IAAI,EAAQ,eAAsB,CACvCkH,GAAI,eAAS,QACbC,OAAQ,eAAS,QAAmB,GACpCnD,IAAK,eAAS,OAAkB,SAChClB,YAAa,eAAS,OAAkB,UACvC,QAGQsE,EAAyB,aAAI3G,OAAO,CAC7CC,KAAM,OACNC,YAAY,EACZC,MAAO,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAIH,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SACpB,OAAOxE,EAAEF,EAAMoD,IAAK,eAAUhD,EAAM,CAClCQ,MAAO5B,EAAgB,CACrB,aAAcgB,EAAMuG,QACnB,QAAQlD,OAAOrD,EAAMkC,aAAclC,EAAMkC,aAC5CrB,MAAO,CACLyF,GAAItG,EAAMsG,MAEV5B,MCzBG,EAAQ,eAAsB,CACvC+B,SAAU,eAAS,QACnBC,UAAW,eAAS,QAAmB,GACvCJ,GAAI,eAAS,QACbK,KAAM,eAAS,QAEfC,MAAO,eAAS,OAAmB,MACnCxD,IAAK,eAAS,OAAkB,OAChCyD,QAAS,eAAS,QAAmB,IACpC,QAGQC,EAAoC,aAAIjH,OAAO,CACxDC,KAAM,OACNC,YAAY,EACZC,MAAO,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAIH,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SAChBmC,EAAU7G,EAAM6G,QAChBJ,EAAWzG,EAAMyG,SACjBM,GAA2B,IAApB/G,EAAM0G,YAAsC,IAAhB1G,EAAM4G,MAC7C,OAAO1G,EAAEF,EAAMoD,IAAK,eAAUhD,EAAM,CAClCQ,MAAO,CACL,UAAWmG,EACX,oBAAqBF,EACrB,kBAAmBA,GAErBhG,MAAO,CACLyF,GAAItG,EAAMsG,IAAM,KAChBK,KAAM3G,EAAM2G,MAAQ,KACpB,YAAaF,GAAY,KACzB,cAAeA,EAAW,OAAS,QAEnC/B,MCnCG,EAAQ,eAAsB,CACvC+B,SAAU,eAAS,QACnBC,UAAW,eAAS,QAAmB,GACvCJ,GAAI,eAAS,QACbK,KAAM,eAAS,QAEfC,MAAO,eAAS,OAAmB,MACnCxD,IAAK,eAAS,OAAkB,OAChCyD,QAAS,eAAS,QAAmB,IACpC,QAGQG,EAAkC,aAAInH,OAAO,CACtDC,KAAM,OACNC,YAAY,EACZC,MAAO,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAIH,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SAChBmC,EAAU7G,EAAM6G,QAChBJ,EAAWzG,EAAMyG,SACjBM,GAA2B,IAApB/G,EAAM0G,YAAsC,IAAhB1G,EAAM4G,MAC7C,OAAO1G,EAAEF,EAAMoD,IAAK,eAAUhD,EAAM,CAClCQ,MAAO,CACL,UAAWmG,EACX,kBAAmBF,EACnB,gBAAiBA,GAEnBhG,MAAO,CACLyF,GAAItG,EAAMsG,IAAM,KAChBK,KAAM3G,EAAM2G,MAAQ,KACpB,YAAaF,GAAY,KACzB,cAAeA,EAAW,OAAS,QAEnC/B,MCxCR,SAAS/G,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,GAAO,EAAgBN,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,SAAS,EAAgBW,EAAKL,EAAKM,GAAiK,OAApJN,KAAOK,EAAOrB,OAAOoB,eAAeC,EAAKL,EAAK,CAAEM,MAAOA,EAAOhB,YAAY,EAAMiB,cAAc,EAAMC,UAAU,IAAkBH,EAAIL,GAAOM,EAAgBD,EAyB3M,IAAI6H,EAAS,CAAC,QAAS,SAAU,YAE7BC,EAAiBD,EAAOE,KAAI,SAAUC,GACxC,MAAO,GAAG/D,OAAO+D,EAAG,uBACnB9C,OAEC+C,EAA8B,GAAGhE,OAAO4D,EAAQ,CAAC,IAAK,SAAU,UAGzD,EAAgB,WACzB,OAAO,eAAsB,eAASzI,EAAcA,EAAcA,EAAcA,EAAc,GAAI,QAAU,QAAiB,iBAAyBuH,QAAO,SAAU/F,EAAOsH,GAO5K,OALAtH,EAAM,eAAesH,EAAY,gBAAkB,eAAS,QAE5DtH,EAAM,eAAesH,EAAY,eAAiB,eAAS,QAE3DtH,EAAM,eAAesH,EAAY,cAAgB,eAAS,QACnDtH,IACN,eAAO,QAAS,GAAI,CACrBuH,YAAa,eAAS,QACtBC,SAAU,eAAS,QAAmB,GACtCC,iBAAkB,eAAS,OAAkB,aAC7CC,gBAAiB,eAAS,QAC1BC,MAAO,eAAS,QAChBC,WAAY,eAAS,QACrBC,SAAU,eAAS,QACnBC,UAAW,eAAS,QACpBC,YAAa,eAAS,QAAmB,GACzClB,QAAS,eAAS,QAAmB,GACrCmB,cAAe,eAAS,QACxBC,UAAW,eAAS,QAAmB,MACpC,SAMIC,EAAa,CACtBpI,KAAM,OACNqI,OAAQ,CAAC,OAAS,OAAgB,QAElC,YAME,cAFOC,KAAKpI,MAELoI,KAAKpI,MAAQ,KAGtBI,KAAM,WACJ,MAAO,CACLiI,gBAAiB,OAGrBC,SAAU,CACRC,gBAAiB,WACf,OAAOH,KAAKI,YAAYJ,KAAKK,OAAQ,YAEvCC,kBAAmB,WACjB,OAAON,KAAKO,gBAAgBP,KAAKK,OAAQ,UAE3CG,cAAe,WACb,OAAOR,KAAKI,YAAYJ,KAAKK,OAAQ,UAEvCI,aAAc,WAGZ,OAAO,eAAKT,KAAKG,iBAAiB3J,OAAS,GAAK,eAAKwJ,KAAKQ,eAAehK,OAAS,IAGtFkK,MAAO,CACLT,gBAAiB,SAAyBU,EAAUC,GAC9CD,IAAaC,GACfZ,KAAKa,sBAAsBF,EAAUC,KAI3CE,QAAS,WACP,IAAIC,EAAQf,KAEZA,KAAKgB,WAAU,WAGbD,EAAMF,sBAAsBE,EAAMd,qBAGtCgB,QAAS,CACPV,gBAAiB,SAAyB3I,EAAOsJ,GAC/C,OAAO,iBAAyBvD,QAAO,SAAUC,EAAQsB,GACvD,IAAIiC,EAAYvJ,EAAM,eAAesH,EAAY,GAAGjE,OAAOiG,EAAQ,YAAc,KAMjF,OAJIC,GACFvD,EAAO1H,KAAK,CAAC,OAAQgJ,EAAYiC,GAAWrL,OAAOsL,EAAA,MAAUlF,KAAK,MAG7D0B,IACN,KAELwC,YAAa,SAAqBxI,EAAOsJ,GACvC,OAAO,iBAAyBvD,QAAO,SAAUC,EAAQsB,GACvD,IAAIiC,EAAYvJ,EAAM,eAAesH,EAAY,GAAGjE,OAAOiG,EAAQ,UAmBnE,OAhBAC,EAA0B,KAAdA,IAA0BA,IAAa,GAE9C,eAAUA,IAA4B,SAAdA,IAE3BA,EAAY,eAAUA,EAAW,GAEjCA,EAAYA,EAAY,GAAIA,GAM1BA,IACFvD,EAAOsB,IAAe,eAAUiC,GAAa,MAAQ,SAAWA,GAG3DvD,IACN,KAKLiD,sBAAuB,SAA+BF,EAAUC,GAC9D,IAAInB,EAAWO,KAAKP,SAEpB,GAAI,QAAcA,EAAU,CAE1B,IAAI4B,EAAS,eAAO,IAAIpG,OAAO,EAAUwE,IAAYO,KAAKsB,MAAMC,SAEhE,GAAIF,EAAQ,CACV,IAAIG,EAAO,mBACPC,GAAUd,GAAY,IAAIjD,MAAM,QAChCgE,GAAUd,GAAY,IAAIlD,MAAM,QAGhCiE,GAAO,eAAQN,EAAQG,IAAS,IAAI9D,MAAM,QAAgB5H,QAAO,SAAUoI,GAC7E,OAAQ,OAAA0D,EAAA,MAAcF,EAAQxD,MAC7BjD,OAAOwG,GAAQ3L,QAAO,SAAUoI,EAAIJ,EAAO6D,GAC5C,OAAOA,EAAIE,QAAQ3D,KAAQJ,KAC1BhI,OAAOsL,EAAA,MAAUlF,KAAK,KAAK4F,OAE1BH,EACF,eAAQN,EAAQG,EAAMG,GAEtB,eAAWN,EAAQG,MAK3BO,cAAe,SAAuBC,GAIpC,IAAIhC,KAAKP,SAAT,CAIA,IAAIpJ,EAAS2L,EAAM3L,OACf4L,EAAU5L,EAASA,EAAO4L,QAAU,GAKxC,IAAsD,IAAlDhD,EAA4B4C,QAAQI,GAAxC,CAKA,IAAIC,EAAS,eAAUpD,EAAgBkB,KAAKsB,MAAMC,SAASzL,OAAO,QAE5C,IAAlBoM,EAAO1L,QACT,eAAa0L,EAAO,QAI1BrK,OAAQ,SAAgBC,GACtB,IAAI0G,EAAQwB,KAAKmC,cACb9C,EAAmBW,KAAKX,iBACxBoB,EAAeT,KAAKS,aACpBhB,EAAWO,KAAKP,SAChB2C,EAAgBpC,KAAKoC,cACrBC,EAASrC,KAAKqC,OACd5D,EAAUuB,KAAKvB,QACfP,EAAKmE,IACLC,GAAc7C,EACd8C,EAASzK,IACT0K,EAAeJ,EAAc,SAAoBpC,KAAKT,MACtDkD,EAAUD,EAAeH,EAAO,cAAgB,KAEpD,GAAIG,GAAgB/B,EAAc,CAChC,IAAIf,EAAYM,KAAKN,UACjBc,EAAgBR,KAAKQ,cACrBkC,EAAWJ,EAAa,SAAW,QAEnCtC,KAAKL,aACH6C,IACFD,EAASzK,EAAE4K,EAAU,CACnBlK,MAAO,UACPC,MAAO,CACLyF,GAAIuE,EACJE,IAAKlD,GAAY,OAElB,CAAC+C,KAGND,EAASzK,EAAE2I,EAAe,OAAO,MAAO,CACtC7I,MAAO6I,EAAeD,EAAgB,IACrC,CAAC+B,KAEJA,EAASzK,EAAE2I,EAAe,OAAOiC,EAAU,CACzCE,GAAIN,EAAa,CACfO,MAAO7C,KAAK+B,eACV,GACJnK,MAAO6I,EAAerK,EAAcA,EAAc,GAAIoK,GAAgB,GAAI,CACxExF,IAAK0H,IACF,GACLjK,MAAO,CACLyF,GAAIuE,EACJE,IAAKlD,GAAY,KAGjBqD,SAAUR,EAAa,KAAO,MAEhC9J,MAAO,CACP8J,EAAa,mBAAqB,GAIlC7B,GAAgB6B,EAAa,iBAAmB,IAC/C7B,GAAgB6B,EAAa,OAAS,GAEtC7B,GAAiB6B,EAAyB,GAAZ,UAAgB5C,EAAY,kBAAkBzE,OAAOyE,GAAa,GAAIM,KAAKM,kBAAmBN,KAAKR,aACjI,CAACgD,IAIR,IAAIO,EAAmBjL,IACnBkL,EAAyBZ,EAAc,SAA+BpC,KAAKV,gBAC3E2D,EAAoBD,EAAyBX,EAAO,yBAA2B,KAE/EW,IACFD,EAAmBjL,EAAE4G,EAAsB,CACzC9G,MAAO,CACLyG,SAAUgB,EACVnB,GAAI+E,EACJ1E,KAAMc,EAAmB,QAAU,KAEnCb,MAAOA,EACPC,QAASA,GAEXhG,MAAO,CACLqK,SAAUE,EAAyB,KAAO,OAE3C,CAACA,KAGN,IAAIE,EAAiBpL,IACjBqL,EAAuBf,EAAc,SAA6BpC,KAAKJ,cACvEwD,EAAkBD,EAAuBd,EAAO,uBAAyB,KAEzEc,IACFD,EAAiBpL,EAAE8G,EAAoB,CACrChH,MAAO,CACLyG,SAAUgB,EACVnB,GAAIkF,EACJ7E,KAAMc,EAAmB,QAAU,KAEnCb,MAAOA,EACPC,QAASA,GAEXhG,MAAO,CACLqK,SAAUK,EAAuB,KAAO,OAEzC,CAACA,KAGN,IAAIE,EAAevL,IACfwL,EAAqBlB,EAAc,SAA0BpC,KAAKb,YAClEoE,EAAgBD,EAAqBjB,EAAO,oBAAsB,KAElEiB,IACFD,EAAevL,EAAEsG,EAAW,CAC1B3F,MAAO,CACLyF,GAAIqF,EACJT,SAAU,OAEX,CAACQ,KAON,IAAIrD,EAAkBD,KAAKC,gBAAkB,CAACsD,GAAyB,IAAV/E,EAAkByE,EAAoB,MAAgB,IAAVzE,EAAiB4E,EAAkB,MAAMtN,OAAOsL,EAAA,MAAUlF,KAAK,MAAQ,KAC5KvB,EAAW7C,EAAE2I,EAAe,OAAO,MAAO,CAC5C7I,MAAO6I,EAAeT,KAAKG,gBAAkB,GAC7CqD,IAAK,WACJ,CAACpB,EAAc,OAAmB,CACnCnC,gBAAiBA,EACjBsD,cAAeA,EACfrF,GAAIA,EACJuE,QAASA,KACL3K,IAAKiL,EAAkBG,EAAgBG,IAK7C,OAAOvL,EAAEwK,EAAa,WAAa7B,EAAexC,EAAW,MAAO,CAClEpD,YAAa,aACbrC,MAAO,CAAC,CACN,gBAAiBwH,KAAKH,WACrBG,KAAKyD,YACRhL,MAAO,CACLyF,GAAIA,EACJkB,SAAUkD,EAAatC,KAAKZ,SAAW,KACvCb,KAAM+D,EAAa,KAAO,QAC1B,eAAgBtC,KAAK0D,oBAGrB,kBAAmBpB,GAAc7B,EAAegC,EAAU,OAE3DhC,GAAgB6B,EAAa,CAACxK,EAAEmG,EAAU,CAACsE,EAAQ5H,KAAc,CAAC4H,EAAQ5H,O,kCClWjF,4GAIW/C,EAAQ,eAAsB,CACvC+L,MAAO,eAAS,QAAmB,IAClC,gBAGQC,EAAkB,aAAInM,OAAO,CACtCG,MAAOA,EACPsI,SAAU,CACR2D,OAAQ,WACN,OAAQ7D,KAAK2D,W,kCCbnB,4GAIW/L,EAAQ,eAAsB,CACvCkM,KAAM,eAAS,SACd,gBAGQC,EAAgB,aAAItM,OAAO,CACpCG,MAAOA,EACPsI,SAAU,CACR8D,cAAe,WACb,MAAO,CAAChE,KAAK8D,KAAO,gBAAgB7I,OAAO+E,KAAK8D,MAAQ,W,kCCb9D,+LAASvO,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,EAe3M,IAAIiN,EAAoB,CAAC,OAAQ,QAAS,MAAO,SAAU,WAAY,WAGnEC,EAAoB,SAA2BC,EAAMjF,EAAYjI,GACnE,IAAImN,EAAYD,EAEhB,IAAI,eAAkBlN,KAAoB,IAAVA,EAWhC,OAPIiI,IACFkF,GAAa,IAAInJ,OAAOiE,IAMb,QAATiF,GAA6B,KAAVlN,IAA0B,IAAVA,GAMvCmN,GAAa,IAAInJ,OAAOhE,GACjB,eAAUmN,IALR,eAAUA,IASjBC,EAAyB,eAAQH,GAEjCI,EAAoB,eAAO,MAGpBC,EAAgB,WAEzB,IAAIC,EAAc,iBAAyB1O,OAAO,QAE9C2O,EAAgBD,EAAY7G,QAAO,SAAU/F,EAAOsH,GAEtD,OADAtH,EAAMsH,GAAc,eAAS,QACtBtH,IACN,eAAO,OAEN8M,EAAmBF,EAAY7G,QAAO,SAAU/F,EAAOsH,GAEzD,OADAtH,EAAM,eAAesH,EAAY,WAAa,eAAS,QAChDtH,IACN,eAAO,OAEN+M,EAAkBH,EAAY7G,QAAO,SAAU/F,EAAOsH,GAExD,OADAtH,EAAM,eAAesH,EAAY,UAAY,eAAS,QAC/CtH,IACN,eAAO,OASV,OANA0M,EAAoB,eAAO,eAAO,MAAO,CACvCM,IAAK,eAAKH,GACVI,OAAQ,eAAKH,GACbI,MAAO,eAAKH,KAGP,eAAsB,eAASvO,EAAcA,EAAcA,EAAcA,EAAc,GAAIqO,GAAgBC,GAAmBC,GAAkB,GAAI,CAEzJI,UAAW,eAAS,OAAkB,MAAM,SAAU9N,GACpD,OAAO,eAAcgN,EAAmBhN,MAG1C2N,IAAK,eAAS,QAAmB,GAEjCI,KAAM,eAAS,QACfH,OAAQ,eAAS,QACjBC,MAAO,eAAS,QAChB9J,IAAK,eAAS,OAAkB,UAC7B,SAMIiK,EAAO,CAChBvN,KAAM,OACNC,YAAY,EAEZ,YAME,cAFOqI,KAAKpI,MAELoI,KAAKpI,MAAQ2M,KAGtB1M,OAAQ,SAAgBC,EAAGC,GACzB,IAAImN,EAEAtN,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SAChB0I,EAAOpN,EAAMoN,KACbH,EAASjN,EAAMiN,OACfC,EAAQlN,EAAMkN,MACdC,EAAYnN,EAAMmN,UAClBI,EAAY,GAEhB,IAAK,IAAIhB,KAAQG,EAIf,IAFA,IAAIc,EAAQd,EAAkBH,GAErB7N,EAAI,EAAGA,EAAI8O,EAAM5O,OAAQF,IAAK,CAErC,IAAI+O,EAAIhB,EAAuBF,EAAMiB,EAAM9O,GAAGgF,QAAQ6I,EAAM,IAAKvM,EAAMwN,EAAM9O,KAEzE+O,GACFF,EAAUjP,KAAKmP,GAKrB,IAAIC,EAAgBH,EAAUI,MAAK,SAAUnB,GAC3C,OAAO,OAAaoB,KAAKpB,MAM3B,OAJAe,EAAUjP,MAAMgP,EAAkB,CAEhCN,IAAKhN,EAAMgN,MAAQU,IAAkBN,GACpCpO,EAAgBsO,EAAiB,OAAOjK,OAAO+J,GAAOA,GAAOpO,EAAgBsO,EAAiB,UAAUjK,OAAO4J,GAASA,GAASjO,EAAgBsO,EAAiB,SAASjK,OAAO6J,GAAQA,GAAQlO,EAAgBsO,EAAiB,cAAcjK,OAAO8J,GAAYA,GAAYG,IAC5QpN,EAAEF,EAAMoD,IAAK,eAAUhD,EAAM,CAClCQ,MAAO2M,IACL7I,M,kCChJR,iLAAS/G,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,IAAIY,EAAQ,eAAsB,eAASxB,EAAcA,EAAc,GAAI,eAAU,OAAY,OAAeuC,KAAK,KAAM,YAAa,GAAI,CACjJe,OAAQ,eAAS,QACjB+L,YAAa,eAAS,QACtB9L,WAAY,eAAS,WAClB,QAGM+L,EAA2B,aAAIjO,OAAO,CAC/CC,KAAM,OACNC,YAAY,EACZC,MAAOA,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAI0E,EAEA7E,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SAChBqJ,EAAkB/N,EAAM+N,gBACxBC,EAAsBhO,EAAMgO,oBAC5BC,EAAoBjO,EAAMiO,kBAC9B,OAAO/N,EAAEF,EAAMkO,UAAW,eAAU9N,EAAM,CACxC6C,YAAa,cACbrC,MAAO,CAACZ,EAAM6N,aAAchJ,EAAQ,GAAI7F,EAAgB6F,EAAO,MAAMxB,OAAO0K,GAAkBA,GAAkB/O,EAAgB6F,EAAO,UAAUxB,OAAO2K,GAAsBA,GAAsBhP,EAAgB6F,EAAO,QAAQxB,OAAO4K,GAAoBA,GAAoBpJ,IAClRhC,SAAU6B,EAAW,GAAK,eAAW1E,EAAM+B,WAAY/B,EAAM8B,UAC3D4C,O,kCCtCR,gJAMW1E,EAAQ,eAAsB,CACvCmF,SAAU,eAAS,QACnBgJ,YAAa,eAAS,OAAkB,MACxCC,oBAAqB,eAAS,OAAkB,UAC/C,QAGQC,EAA6B,aAAIxO,OAAO,CACjDC,KAAM,OACNC,YAAY,EACZC,MAAOA,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAIH,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SACpB,OAAOxE,EAAEF,EAAMmO,YAAa,eAAU/N,EAAM,CAC1C6C,YAAa,gBACbrC,MAAO,CAACZ,EAAMoO,oBAAsB,QAAQ/K,OAAOrD,EAAMoO,qBAAuB,QAC9E1J,GAAY,eAAS1E,EAAMmF,e,kCCxBnC,wHAaWnF,EAAQ,eAAsB,CAEvC4G,MAAO,eAAS,OAAmB,OAClC,aAGQ0H,EAAiB,aAAIzO,OAAO,CACrCG,MAAOA,EACPsI,SAAU,CACRiC,cAAe,WAEb,OAAO,eAAUnC,KAAKxB,OAASwB,KAAKxB,MAAQ,MAE9CiF,WAAY,WACV,IAAIjF,EAAQwB,KAAKmC,cACjB,OAAiB,IAAV3D,EAAiB,YAAuB,IAAVA,EAAkB,aAAe,MAExEkF,oBAAqB,WACnB,IAAIyC,EAAcnG,KAAKmG,YAEvB,OAAoB,IAAhBA,GAAwC,SAAhBA,GAA0C,KAAhBA,IAIxB,IAAvBnG,KAAKmC,cAHH,OAGsCgE,O,kCCrCrD,sFAKWvO,EAAQ,eAAsB,CACvCmC,UAAW,eAAS,QACpBC,cAAe,eAAS,QACxBgB,IAAK,eAAS,OAAkB,OAChClB,YAAa,eAAS,SACrB,QAGoB,aAAIrC,OAAO,CAChCG,MAAOA,K,kCCdT,kGAKWA,EAAQ,eAAsB,CACvCwO,QAAS,eAAS,OAAkB,MACnC,QAGQC,EAAyB,aAAI5O,OAAO,CAC7CC,KAAM,OACNC,YAAY,EACZC,MAAOA,EACPC,OAAQ,SAAgBC,EAAGC,GACzB,IAAIH,EAAQG,EAAKH,MACbI,EAAOD,EAAKC,KACZsE,EAAWvE,EAAKuE,SACpB,OAAOxE,EAAEF,EAAMwO,QAAS,eAAUpO,EAAM,CACtC6C,YAAa,cACXyB,O,kCCpBR,wHAKIgK,EAAW,0BAEJ1O,EAAQ,eAAsB,CACvC2O,UAAW,eAAS,QAAmB,GACvCnH,SAAU,eAAS,QAAmB,GACtCoH,KAAM,eAAS,QACftI,GAAI,eAAS,QACbxG,KAAM,eAAS,QACfmB,SAAU,eAAS,QAAmB,IACrC,gBAGQ4N,EAAmB,aAAIhP,OAAO,CACvCG,MAAOA,EACPkJ,QAAS,WACPd,KAAK0G,mBAIPC,UAAW,WACT3G,KAAK0G,mBAEPzF,QAAS,CACPyF,gBAAiB,WACf,IAAI3F,EAAQf,KAEZA,KAAKgB,WAAU,WACb,gBAAU,WACR,IAAI4F,EAAK7F,EAAM8F,IAEX9F,EAAMwF,WAAa,eAAUK,KAC1B,eAAQA,EAAIN,KACfM,EAAK,eAAON,EAAUM,IAGxB,eAAaA","file":"js/chunk-75a984f9.75908cb0.js","sourcesContent":["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_CARD_IMG } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { pick, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { props as BImgProps } from '../image/img'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, pick(BImgProps, ['src', 'alt', 'width', 'height', 'left', 'right'])), {}, {\n bottom: makeProp(PROP_TYPE_BOOLEAN, false),\n end: makeProp(PROP_TYPE_BOOLEAN, false),\n start: makeProp(PROP_TYPE_BOOLEAN, false),\n top: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD_IMG); // --- Main component ---\n// @vue/component\n\nexport var BCardImg = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_IMG,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data;\n var src = props.src,\n alt = props.alt,\n width = props.width,\n height = props.height;\n var baseClass = 'card-img';\n\n if (props.top) {\n baseClass += '-top';\n } else if (props.right || props.end) {\n baseClass += '-right';\n } else if (props.bottom) {\n baseClass += '-bottom';\n } else if (props.left || props.start) {\n baseClass += '-left';\n }\n\n return h('img', mergeData(data, {\n class: baseClass,\n attrs: {\n src: src,\n alt: alt,\n width: width,\n height: height\n }\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, mergeData } from '../../vue';\nimport { NAME_CARD } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_FOOTER, SLOT_NAME_HEADER } from '../../constants/slots';\nimport { htmlOrText } from '../../utils/html';\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot';\nimport { sortKeys } from '../../utils/object';\nimport { copyProps, makeProp, makePropsConfigurable, pluckProps, prefixPropName, unprefixPropName } from '../../utils/props';\nimport { props as cardProps } from '../../mixins/card';\nimport { BCardBody, props as BCardBodyProps } from './card-body';\nimport { BCardHeader, props as BCardHeaderProps } from './card-header';\nimport { BCardFooter, props as BCardFooterProps } from './card-footer';\nimport { BCardImg, props as BCardImgProps } from './card-img'; // --- Props ---\n\nvar cardImgProps = copyProps(BCardImgProps, prefixPropName.bind(null, 'img'));\ncardImgProps.imgSrc.required = false;\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, BCardBodyProps), BCardHeaderProps), BCardFooterProps), cardImgProps), cardProps), {}, {\n align: makeProp(PROP_TYPE_STRING),\n noBody: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD); // --- Main component ---\n// @vue/component\n\nexport var BCard = /*#__PURE__*/Vue.extend({\n name: NAME_CARD,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _class;\n\n var props = _ref.props,\n data = _ref.data,\n slots = _ref.slots,\n scopedSlots = _ref.scopedSlots;\n var imgSrc = props.imgSrc,\n imgLeft = props.imgLeft,\n imgRight = props.imgRight,\n imgStart = props.imgStart,\n imgEnd = props.imgEnd,\n imgBottom = props.imgBottom,\n header = props.header,\n headerHtml = props.headerHtml,\n footer = props.footer,\n footerHtml = props.footerHtml,\n align = props.align,\n textVariant = props.textVariant,\n bgVariant = props.bgVariant,\n borderVariant = props.borderVariant;\n var $scopedSlots = scopedSlots || {};\n var $slots = slots();\n var slotScope = {};\n var $imgFirst = h();\n var $imgLast = h();\n\n if (imgSrc) {\n var $img = h(BCardImg, {\n props: pluckProps(cardImgProps, props, unprefixPropName.bind(null, 'img'))\n });\n\n if (imgBottom) {\n $imgLast = $img;\n } else {\n $imgFirst = $img;\n }\n }\n\n var $header = h();\n var hasHeaderSlot = hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots);\n\n if (hasHeaderSlot || header || headerHtml) {\n $header = h(BCardHeader, {\n props: pluckProps(BCardHeaderProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n }, normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots));\n }\n\n var $content = normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots); // Wrap content in `` when `noBody` prop set\n\n if (!props.noBody) {\n $content = h(BCardBody, {\n props: pluckProps(BCardBodyProps, props)\n }, $content); // When the `overlap` prop is set we need to wrap the `` and ``\n // into a relative positioned wrapper to don't distract a potential header or footer\n\n if (props.overlay && imgSrc) {\n $content = h('div', {\n staticClass: 'position-relative'\n }, [$imgFirst, $content, $imgLast]); // Reset image variables since they are already in the wrapper\n\n $imgFirst = h();\n $imgLast = h();\n }\n }\n\n var $footer = h();\n var hasFooterSlot = hasNormalizedSlot(SLOT_NAME_FOOTER, $scopedSlots, $slots);\n\n if (hasFooterSlot || footer || footerHtml) {\n $footer = h(BCardFooter, {\n props: pluckProps(BCardFooterProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(footerHtml, footer)\n }, normalizeSlot(SLOT_NAME_FOOTER, slotScope, $scopedSlots, $slots));\n }\n\n return h(props.tag, mergeData(data, {\n staticClass: 'card',\n class: (_class = {\n 'flex-row': imgLeft || imgStart,\n 'flex-row-reverse': (imgRight || imgEnd) && !(imgLeft || imgStart)\n }, _defineProperty(_class, \"text-\".concat(align), align), _defineProperty(_class, \"bg-\".concat(bgVariant), bgVariant), _defineProperty(_class, \"border-\".concat(borderVariant), borderVariant), _defineProperty(_class, \"text-\".concat(textVariant), textVariant), _class)\n }), [$imgFirst, $header, $content, $footer, $imgLast]);\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_IMG } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { concat } from '../../utils/array';\nimport { identity } from '../../utils/identity';\nimport { isString } from '../../utils/inspect';\nimport { toInteger } from '../../utils/number';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { toString } from '../../utils/string'; // --- Constants --\n// Blank image with fill template\n\nvar BLANK_TEMPLATE = '' + '' + ''; // --- Helper methods ---\n\nvar makeBlankImgSrc = function makeBlankImgSrc(width, height, color) {\n var src = encodeURIComponent(BLANK_TEMPLATE.replace('%{w}', toString(width)).replace('%{h}', toString(height)).replace('%{f}', color));\n return \"data:image/svg+xml;charset=UTF-8,\".concat(src);\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable({\n alt: makeProp(PROP_TYPE_STRING),\n blank: makeProp(PROP_TYPE_BOOLEAN, false),\n blankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n center: makeProp(PROP_TYPE_BOOLEAN, false),\n fluid: makeProp(PROP_TYPE_BOOLEAN, false),\n // Gives fluid images class `w-100` to make them grow to fit container\n fluidGrow: makeProp(PROP_TYPE_BOOLEAN, false),\n height: makeProp(PROP_TYPE_NUMBER_STRING),\n left: makeProp(PROP_TYPE_BOOLEAN, false),\n right: makeProp(PROP_TYPE_BOOLEAN, false),\n // Possible values:\n // `false`: no rounding of corners\n // `true`: slightly rounded corners\n // 'top': top corners rounded\n // 'right': right corners rounded\n // 'bottom': bottom corners rounded\n // 'left': left corners rounded\n // 'circle': circle/oval\n // '0': force rounding off\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n sizes: makeProp(PROP_TYPE_ARRAY_STRING),\n src: makeProp(PROP_TYPE_STRING),\n srcset: makeProp(PROP_TYPE_ARRAY_STRING),\n thumbnail: makeProp(PROP_TYPE_BOOLEAN, false),\n width: makeProp(PROP_TYPE_NUMBER_STRING)\n}, NAME_IMG); // --- Main component ---\n// @vue/component\n\nexport var BImg = /*#__PURE__*/Vue.extend({\n name: NAME_IMG,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _class;\n\n var props = _ref.props,\n data = _ref.data;\n var alt = props.alt,\n src = props.src,\n block = props.block,\n fluidGrow = props.fluidGrow,\n rounded = props.rounded;\n var width = toInteger(props.width) || null;\n var height = toInteger(props.height) || null;\n var align = null;\n var srcset = concat(props.srcset).filter(identity).join(',');\n var sizes = concat(props.sizes).filter(identity).join(',');\n\n if (props.blank) {\n if (!height && width) {\n height = width;\n } else if (!width && height) {\n width = height;\n }\n\n if (!width && !height) {\n width = 1;\n height = 1;\n } // Make a blank SVG image\n\n\n src = makeBlankImgSrc(width, height, props.blankColor || 'transparent'); // Disable srcset and sizes\n\n srcset = null;\n sizes = null;\n }\n\n if (props.left) {\n align = 'float-left';\n } else if (props.right) {\n align = 'float-right';\n } else if (props.center) {\n align = 'mx-auto';\n block = true;\n }\n\n return h('img', mergeData(data, {\n attrs: {\n src: src,\n alt: alt,\n width: width ? toString(width) : null,\n height: height ? toString(height) : null,\n srcset: srcset || null,\n sizes: sizes || null\n },\n class: (_class = {\n 'img-thumbnail': props.thumbnail,\n 'img-fluid': props.fluid || fluidGrow,\n 'w-100': fluidGrow,\n rounded: rounded === '' || rounded === true\n }, _defineProperty(_class, \"rounded-\".concat(rounded), isString(rounded) && rounded !== ''), _defineProperty(_class, align, align), _defineProperty(_class, 'd-block', block), _class)\n }));\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_CARD_TITLE } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { toString } from '../../utils/string'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n title: makeProp(PROP_TYPE_STRING),\n titleTag: makeProp(PROP_TYPE_STRING, 'h4')\n}, NAME_CARD_TITLE); // --- Main component ---\n// @vue/component\n\nexport var BCardTitle = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_TITLE,\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.titleTag, mergeData(data, {\n staticClass: 'card-title'\n }), children || toString(props.title));\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_CARD_BODY } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { sortKeys } from '../../utils/object';\nimport { copyProps, makeProp, makePropsConfigurable, pluckProps, prefixPropName } from '../../utils/props';\nimport { props as cardProps } from '../../mixins/card';\nimport { BCardTitle, props as titleProps } from './card-title';\nimport { BCardSubTitle, props as subTitleProps } from './card-sub-title'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, titleProps), subTitleProps), copyProps(cardProps, prefixPropName.bind(null, 'body'))), {}, {\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n overlay: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD_BODY); // --- Main component ---\n// @vue/component\n\nexport var BCardBody = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_BODY,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var bodyBgVariant = props.bodyBgVariant,\n bodyBorderVariant = props.bodyBorderVariant,\n bodyTextVariant = props.bodyTextVariant;\n var $title = h();\n\n if (props.title) {\n $title = h(BCardTitle, {\n props: pluckProps(titleProps, props)\n });\n }\n\n var $subTitle = h();\n\n if (props.subTitle) {\n $subTitle = h(BCardSubTitle, {\n props: pluckProps(subTitleProps, props),\n class: ['mb-2']\n });\n }\n\n return h(props.bodyTag, mergeData(data, {\n staticClass: 'card-body',\n class: [(_ref2 = {\n 'card-img-overlay': props.overlay\n }, _defineProperty(_ref2, \"bg-\".concat(bodyBgVariant), bodyBgVariant), _defineProperty(_ref2, \"border-\".concat(bodyBorderVariant), bodyBorderVariant), _defineProperty(_ref2, \"text-\".concat(bodyTextVariant), bodyTextVariant), _ref2), props.bodyClass]\n }), [$title, $subTitle, 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, mergeData } from '../../vue';\nimport { NAME_CARD_FOOTER } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { htmlOrText } from '../../utils/html';\nimport { sortKeys } from '../../utils/object';\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props';\nimport { props as BCardProps } from '../../mixins/card'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, copyProps(BCardProps, prefixPropName.bind(null, 'footer'))), {}, {\n footer: makeProp(PROP_TYPE_STRING),\n footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n footerHtml: makeProp(PROP_TYPE_STRING)\n})), NAME_CARD_FOOTER); // --- Main component ---\n// @vue/component\n\nexport var BCardFooter = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_FOOTER,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var footerBgVariant = props.footerBgVariant,\n footerBorderVariant = props.footerBorderVariant,\n footerTextVariant = props.footerTextVariant;\n return h(props.footerTag, mergeData(data, {\n staticClass: 'card-footer',\n class: [props.footerClass, (_ref2 = {}, _defineProperty(_ref2, \"bg-\".concat(footerBgVariant), footerBgVariant), _defineProperty(_ref2, \"border-\".concat(footerBorderVariant), footerBorderVariant), _defineProperty(_ref2, \"text-\".concat(footerTextVariant), footerTextVariant), _ref2)],\n domProps: children ? {} : htmlOrText(props.footerHtml, props.footer)\n }), children);\n }\n});","import { toString } from './string';\n\nvar escapeChar = function escapeChar(value) {\n return '\\\\' + value;\n}; // The `cssEscape()` util is based on this `CSS.escape()` polyfill:\n// https://github.com/mathiasbynens/CSS.escape\n\n\nexport var cssEscape = function cssEscape(value) {\n value = toString(value);\n var length = value.length;\n var firstCharCode = value.charCodeAt(0);\n return value.split('').reduce(function (result, char, index) {\n var charCode = value.charCodeAt(index); // If the character is NULL (U+0000), use (U+FFFD) as replacement\n\n if (charCode === 0x0000) {\n return result + \"\\uFFFD\";\n } // If the character ...\n\n\n if ( // ... is U+007F OR\n charCode === 0x007f || // ... is in the range [\\1-\\1F] (U+0001 to U+001F) OR ...\n charCode >= 0x0001 && charCode <= 0x001f || // ... is the first character and is in the range [0-9] (U+0030 to U+0039) OR ...\n index === 0 && charCode >= 0x0030 && charCode <= 0x0039 || // ... is the second character and is in the range [0-9] (U+0030 to U+0039)\n // and the first character is a `-` (U+002D) ...\n index === 1 && charCode >= 0x0030 && charCode <= 0x0039 && firstCharCode === 0x002d) {\n // ... https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n return result + escapeChar(\"\".concat(charCode.toString(16), \" \"));\n } // If the character ...\n\n\n if ( // ... is the first character AND ...\n index === 0 && // ... is a `-` (U+002D) AND ...\n charCode === 0x002d && // ... there is no second character ...\n length === 1) {\n // ... use the escaped character\n return result + escapeChar(char);\n } // If the character ...\n\n\n if ( // ... is greater than or equal to U+0080 OR ...\n charCode >= 0x0080 || // ... is `-` (U+002D) OR ...\n charCode === 0x002d || // ... is `_` (U+005F) OR ...\n charCode === 0x005f || // ... is in the range [0-9] (U+0030 to U+0039) OR ...\n charCode >= 0x0030 && charCode <= 0x0039 || // ... is in the range [A-Z] (U+0041 to U+005A) OR ...\n charCode >= 0x0041 && charCode <= 0x005a || // ... is in the range [a-z] (U+0061 to U+007A) ...\n charCode >= 0x0061 && charCode <= 0x007a) {\n // ... use the character itself\n return result + char;\n } // Otherwise use the escaped character\n // See: https://drafts.csswg.org/cssom/#escape-a-character\n\n\n return result + escapeChar(char);\n }, '');\n};","import { Vue, mergeData } from '../../vue';\nimport { NAME_FORM_ROW } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_FORM_ROW); // --- Main component ---\n// @vue/component\n\nexport var BFormRow = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_ROW,\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, mergeData(data, {\n staticClass: 'form-row'\n }), children);\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_FORM_TEXT } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n id: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'small'),\n textVariant: makeProp(PROP_TYPE_STRING, 'muted')\n}, NAME_FORM_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BFormText = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_TEXT,\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, mergeData(data, {\n class: _defineProperty({\n 'form-text': !props.inline\n }, \"text-\".concat(props.textVariant), props.textVariant),\n attrs: {\n id: props.id\n }\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_FORM_INVALID_FEEDBACK } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n ariaLive: makeProp(PROP_TYPE_STRING),\n forceShow: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING),\n // Tri-state prop: `true`, `false`, or `null`\n state: makeProp(PROP_TYPE_BOOLEAN, null),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false)\n}, NAME_FORM_INVALID_FEEDBACK); // --- Main component ---\n// @vue/component\n\nexport var BFormInvalidFeedback = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_INVALID_FEEDBACK,\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 tooltip = props.tooltip,\n ariaLive = props.ariaLive;\n var show = props.forceShow === true || props.state === false;\n return h(props.tag, mergeData(data, {\n class: {\n 'd-block': show,\n 'invalid-feedback': !tooltip,\n 'invalid-tooltip': tooltip\n },\n attrs: {\n id: props.id || null,\n role: props.role || null,\n 'aria-live': ariaLive || null,\n 'aria-atomic': ariaLive ? 'true' : null\n }\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_FORM_VALID_FEEDBACK } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n ariaLive: makeProp(PROP_TYPE_STRING),\n forceShow: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING),\n // Tri-state prop: `true`, `false`, or `null`\n state: makeProp(PROP_TYPE_BOOLEAN, null),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false)\n}, NAME_FORM_VALID_FEEDBACK); // --- Main component ---\n// @vue/component\n\nexport var BFormValidFeedback = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_VALID_FEEDBACK,\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 tooltip = props.tooltip,\n ariaLive = props.ariaLive;\n var show = props.forceShow === true || props.state === true;\n return h(props.tag, mergeData(data, {\n class: {\n 'd-block': show,\n 'valid-feedback': !tooltip,\n 'valid-tooltip': tooltip\n },\n attrs: {\n id: props.id || null,\n role: props.role || null,\n 'aria-live': ariaLive || null,\n 'aria-atomic': ariaLive ? 'true' : null\n }\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 { NAME_FORM_GROUP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { RX_SPACE_SPLIT } from '../../constants/regex';\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_DESCRIPTION, SLOT_NAME_INVALID_FEEDBACK, SLOT_NAME_LABEL, SLOT_NAME_VALID_FEEDBACK } from '../../constants/slots';\nimport { arrayIncludes } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { cssEscape } from '../../utils/css-escape';\nimport { select, selectAll, isVisible, setAttr, removeAttr, getAttr, attemptFocus } from '../../utils/dom';\nimport { identity } from '../../utils/identity';\nimport { isBoolean } from '../../utils/inspect';\nimport { toInteger } from '../../utils/number';\nimport { create, keys, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props';\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state';\nimport { idMixin, props as idProps } from '../../mixins/id';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BCol } from '../layout/col';\nimport { BFormRow } from '../layout/form-row';\nimport { BFormText } from '../form/form-text';\nimport { BFormInvalidFeedback } from '../form/form-invalid-feedback';\nimport { BFormValidFeedback } from '../form/form-valid-feedback'; // --- Constants ---\n\nvar INPUTS = ['input', 'select', 'textarea']; // Selector for finding first input in the form group\n\nvar INPUT_SELECTOR = INPUTS.map(function (v) {\n return \"\".concat(v, \":not([disabled])\");\n}).join(); // A list of interactive elements (tag names) inside ``'s legend\n\nvar LEGEND_INTERACTIVE_ELEMENTS = [].concat(INPUTS, ['a', 'button', 'label']); // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formStateProps), getBreakpointsUpCached().reduce(function (props, breakpoint) {\n // i.e. 'content-cols', 'content-cols-sm', 'content-cols-md', ...\n props[suffixPropName(breakpoint, 'contentCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING); // i.e. 'label-align', 'label-align-sm', 'label-align-md', ...\n\n props[suffixPropName(breakpoint, 'labelAlign')] = makeProp(PROP_TYPE_STRING); // i.e. 'label-cols', 'label-cols-sm', 'label-cols-md', ...\n\n props[suffixPropName(breakpoint, 'labelCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING);\n return props;\n }, create(null))), {}, {\n description: makeProp(PROP_TYPE_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n feedbackAriaLive: makeProp(PROP_TYPE_STRING, 'assertive'),\n invalidFeedback: makeProp(PROP_TYPE_STRING),\n label: makeProp(PROP_TYPE_STRING),\n labelClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n labelFor: makeProp(PROP_TYPE_STRING),\n labelSize: makeProp(PROP_TYPE_STRING),\n labelSrOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false),\n validFeedback: makeProp(PROP_TYPE_STRING),\n validated: makeProp(PROP_TYPE_BOOLEAN, false)\n })), NAME_FORM_GROUP);\n}; // --- Main component ---\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\n\nexport var BFormGroup = {\n name: NAME_FORM_GROUP,\n mixins: [idMixin, formStateMixin, normalizeSlotMixin],\n\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props; // eslint-disable-next-line no-return-assign\n\n return this.props = generateProps();\n },\n\n data: function data() {\n return {\n ariaDescribedby: null\n };\n },\n computed: {\n contentColProps: function contentColProps() {\n return this.getColProps(this.$props, 'content');\n },\n labelAlignClasses: function labelAlignClasses() {\n return this.getAlignClasses(this.$props, 'label');\n },\n labelColProps: function labelColProps() {\n return this.getColProps(this.$props, 'label');\n },\n isHorizontal: function isHorizontal() {\n // Determine if the form group will be rendered horizontal\n // based on the existence of 'content-col' or 'label-col' props\n return keys(this.contentColProps).length > 0 || keys(this.labelColProps).length > 0;\n }\n },\n watch: {\n ariaDescribedby: function ariaDescribedby(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.updateAriaDescribedby(newValue, oldValue);\n }\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\n // Set `aria-describedby` on the input specified by `labelFor`\n // We do this in a `$nextTick()` to ensure the children have finished rendering\n _this.updateAriaDescribedby(_this.ariaDescribedby);\n });\n },\n methods: {\n getAlignClasses: function getAlignClasses(props, prefix) {\n return getBreakpointsUpCached().reduce(function (result, breakpoint) {\n var propValue = props[suffixPropName(breakpoint, \"\".concat(prefix, \"Align\"))] || null;\n\n if (propValue) {\n result.push(['text', breakpoint, propValue].filter(identity).join('-'));\n }\n\n return result;\n }, []);\n },\n getColProps: function getColProps(props, prefix) {\n return getBreakpointsUpCached().reduce(function (result, breakpoint) {\n var propValue = props[suffixPropName(breakpoint, \"\".concat(prefix, \"Cols\"))]; // Handle case where the prop's value is an empty string,\n // which represents `true`\n\n propValue = propValue === '' ? true : propValue || false;\n\n if (!isBoolean(propValue) && propValue !== 'auto') {\n // Convert to column size to number\n propValue = toInteger(propValue, 0); // Ensure column size is greater than `0`\n\n propValue = propValue > 0 ? propValue : false;\n } // Add the prop to the list of props to give to ``\n // If breakpoint is '' (`${prefix}Cols` is `true`), then we use\n // the 'col' prop to make equal width at 'xs'\n\n\n if (propValue) {\n result[breakpoint || (isBoolean(propValue) ? 'col' : 'cols')] = propValue;\n }\n\n return result;\n }, {});\n },\n // Sets the `aria-describedby` attribute on the input if `labelFor` is set\n // Optionally accepts a string of IDs to remove as the second parameter\n // Preserves any `aria-describedby` value(s) user may have on input\n updateAriaDescribedby: function updateAriaDescribedby(newValue, oldValue) {\n var labelFor = this.labelFor;\n\n if (IS_BROWSER && labelFor) {\n // We need to escape `labelFor` since it can be user-provided\n var $input = select(\"#\".concat(cssEscape(labelFor)), this.$refs.content);\n\n if ($input) {\n var attr = 'aria-describedby';\n var newIds = (newValue || '').split(RX_SPACE_SPLIT);\n var oldIds = (oldValue || '').split(RX_SPACE_SPLIT); // Update ID list, preserving any original IDs\n // and ensuring the ID's are unique\n\n var ids = (getAttr($input, attr) || '').split(RX_SPACE_SPLIT).filter(function (id) {\n return !arrayIncludes(oldIds, id);\n }).concat(newIds).filter(function (id, index, ids) {\n return ids.indexOf(id) === index;\n }).filter(identity).join(' ').trim();\n\n if (ids) {\n setAttr($input, attr, ids);\n } else {\n removeAttr($input, attr);\n }\n }\n }\n },\n onLegendClick: function onLegendClick(event) {\n // Don't do anything if `labelFor` is set\n\n /* istanbul ignore next: clicking a label will focus the input, so no need to test */\n if (this.labelFor) {\n return;\n }\n\n var target = event.target;\n var tagName = target ? target.tagName : ''; // If clicked an interactive element inside legend,\n // we just let the default happen\n\n /* istanbul ignore next */\n\n if (LEGEND_INTERACTIVE_ELEMENTS.indexOf(tagName) !== -1) {\n return;\n } // If only a single input, focus it, emulating label behaviour\n\n\n var inputs = selectAll(INPUT_SELECTOR, this.$refs.content).filter(isVisible);\n\n if (inputs.length === 1) {\n attemptFocus(inputs[0]);\n }\n }\n },\n render: function render(h) {\n var state = this.computedState,\n feedbackAriaLive = this.feedbackAriaLive,\n isHorizontal = this.isHorizontal,\n labelFor = this.labelFor,\n normalizeSlot = this.normalizeSlot,\n safeId = this.safeId,\n tooltip = this.tooltip;\n var id = safeId();\n var isFieldset = !labelFor;\n var $label = h();\n var labelContent = normalizeSlot(SLOT_NAME_LABEL) || this.label;\n var labelId = labelContent ? safeId('_BV_label_') : null;\n\n if (labelContent || isHorizontal) {\n var labelSize = this.labelSize,\n labelColProps = this.labelColProps;\n var labelTag = isFieldset ? 'legend' : 'label';\n\n if (this.labelSrOnly) {\n if (labelContent) {\n $label = h(labelTag, {\n class: 'sr-only',\n attrs: {\n id: labelId,\n for: labelFor || null\n }\n }, [labelContent]);\n }\n\n $label = h(isHorizontal ? BCol : 'div', {\n props: isHorizontal ? labelColProps : {}\n }, [$label]);\n } else {\n $label = h(isHorizontal ? BCol : labelTag, {\n on: isFieldset ? {\n click: this.onLegendClick\n } : {},\n props: isHorizontal ? _objectSpread(_objectSpread({}, labelColProps), {}, {\n tag: labelTag\n }) : {},\n attrs: {\n id: labelId,\n for: labelFor || null,\n // We add a `tabindex` to legend so that screen readers\n // will properly read the `aria-labelledby` in IE\n tabindex: isFieldset ? '-1' : null\n },\n class: [// Hide the focus ring on the legend\n isFieldset ? 'bv-no-focus-ring' : '', // When horizontal or if a legend is rendered, add 'col-form-label' class\n // for correct sizing as Bootstrap has inconsistent font styling for\n // legend in non-horizontal form groups\n // See: https://github.com/twbs/bootstrap/issues/27805\n isHorizontal || isFieldset ? 'col-form-label' : '', // Emulate label padding top of `0` on legend when not horizontal\n !isHorizontal && isFieldset ? 'pt-0' : '', // If not horizontal and not a legend, we add 'd-block' class to label\n // so that label-align works\n !isHorizontal && !isFieldset ? 'd-block' : '', labelSize ? \"col-form-label-\".concat(labelSize) : '', this.labelAlignClasses, this.labelClass]\n }, [labelContent]);\n }\n }\n\n var $invalidFeedback = h();\n var invalidFeedbackContent = normalizeSlot(SLOT_NAME_INVALID_FEEDBACK) || this.invalidFeedback;\n var invalidFeedbackId = invalidFeedbackContent ? safeId('_BV_feedback_invalid_') : null;\n\n if (invalidFeedbackContent) {\n $invalidFeedback = h(BFormInvalidFeedback, {\n props: {\n ariaLive: feedbackAriaLive,\n id: invalidFeedbackId,\n role: feedbackAriaLive ? 'alert' : null,\n // If state is explicitly `false`, always show the feedback\n state: state,\n tooltip: tooltip\n },\n attrs: {\n tabindex: invalidFeedbackContent ? '-1' : null\n }\n }, [invalidFeedbackContent]);\n }\n\n var $validFeedback = h();\n var validFeedbackContent = normalizeSlot(SLOT_NAME_VALID_FEEDBACK) || this.validFeedback;\n var validFeedbackId = validFeedbackContent ? safeId('_BV_feedback_valid_') : null;\n\n if (validFeedbackContent) {\n $validFeedback = h(BFormValidFeedback, {\n props: {\n ariaLive: feedbackAriaLive,\n id: validFeedbackId,\n role: feedbackAriaLive ? 'alert' : null,\n // If state is explicitly `true`, always show the feedback\n state: state,\n tooltip: tooltip\n },\n attrs: {\n tabindex: validFeedbackContent ? '-1' : null\n }\n }, [validFeedbackContent]);\n }\n\n var $description = h();\n var descriptionContent = normalizeSlot(SLOT_NAME_DESCRIPTION) || this.description;\n var descriptionId = descriptionContent ? safeId('_BV_description_') : null;\n\n if (descriptionContent) {\n $description = h(BFormText, {\n attrs: {\n id: descriptionId,\n tabindex: '-1'\n }\n }, [descriptionContent]);\n } // Update `ariaDescribedby`\n // Screen readers will read out any content linked to by `aria-describedby`\n // even if the content is hidden with `display: none;`, hence we only include\n // feedback IDs if the form group's state is explicitly valid or invalid\n\n\n var ariaDescribedby = this.ariaDescribedby = [descriptionId, state === false ? invalidFeedbackId : null, state === true ? validFeedbackId : null].filter(identity).join(' ') || null;\n var $content = h(isHorizontal ? BCol : 'div', {\n props: isHorizontal ? this.contentColProps : {},\n ref: 'content'\n }, [normalizeSlot(SLOT_NAME_DEFAULT, {\n ariaDescribedby: ariaDescribedby,\n descriptionId: descriptionId,\n id: id,\n labelId: labelId\n }) || h(), $invalidFeedback, $validFeedback, $description]); // Return it wrapped in a form group\n // Note: Fieldsets do not support adding `row` or `form-row` directly\n // to them due to browser specific render issues, so we move the `form-row`\n // to an inner wrapper div when horizontal and using a fieldset\n\n return h(isFieldset ? 'fieldset' : isHorizontal ? BFormRow : 'div', {\n staticClass: 'form-group',\n class: [{\n 'was-validated': this.validated\n }, this.stateClass],\n attrs: {\n id: id,\n disabled: isFieldset ? this.disabled : null,\n role: isFieldset ? null : 'group',\n 'aria-invalid': this.computedAriaInvalid,\n // Only apply `aria-labelledby` if we are a horizontal fieldset\n // as the legend is no longer a direct child of fieldset\n 'aria-labelledby': isFieldset && isHorizontal ? labelId : null\n }\n }, isHorizontal && isFieldset ? [h(BFormRow, [$label, $content])] : [$label, $content]);\n }\n};","import { Vue } from '../vue';\nimport { PROP_TYPE_BOOLEAN } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n plain: makeProp(PROP_TYPE_BOOLEAN, false)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formCustomMixin = Vue.extend({\n props: props,\n computed: {\n custom: function custom() {\n return !this.plain;\n }\n }\n});","import { Vue } from '../vue';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n size: makeProp(PROP_TYPE_STRING)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formSizeMixin = Vue.extend({\n props: props,\n computed: {\n sizeFormClass: function sizeFormClass() {\n return [this.size ? \"form-control-\".concat(this.size) : null];\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 { mergeData } from '../../vue';\nimport { NAME_COL } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { RX_COL_CLASS } from '../../constants/regex';\nimport { arrayIncludes } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { identity } from '../../utils/identity';\nimport { isUndefinedOrNull } from '../../utils/inspect';\nimport { memoize } from '../../utils/memoize';\nimport { assign, create, keys, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props';\nimport { lowerCase } from '../../utils/string'; // --- Constants ---\n\nvar ALIGN_SELF_VALUES = ['auto', 'start', 'end', 'center', 'baseline', 'stretch']; // --- Helper methods ---\n// Compute a breakpoint class name\n\nvar computeBreakpoint = function computeBreakpoint(type, breakpoint, value) {\n var className = type;\n\n if (isUndefinedOrNull(value) || value === false) {\n return undefined;\n }\n\n if (breakpoint) {\n className += \"-\".concat(breakpoint);\n } // Handling the boolean style prop when accepting `[Boolean, String, Number]`\n // means Vue will not convert `` to `sm: true` for us\n // Since the default is `false`, '' indicates the prop's presence\n\n\n if (type === 'col' && (value === '' || value === true)) {\n // .col-md\n return lowerCase(className);\n } // .order-md-6\n\n\n className += \"-\".concat(value);\n return lowerCase(className);\n}; // Memoized function for better performance on generating class names\n\n\nvar computeBreakpointClass = memoize(computeBreakpoint); // Cached copy of the breakpoint prop names\n\nvar breakpointPropMap = create(null); // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n // Grab the breakpoints from the cached config (exclude the '' (xs) breakpoint)\n var breakpoints = getBreakpointsUpCached().filter(identity); // i.e. 'col-sm', 'col-md-6', 'col-lg-auto', ...\n\n var breakpointCol = breakpoints.reduce(function (props, breakpoint) {\n props[breakpoint] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING);\n return props;\n }, create(null)); // i.e. 'offset-md-1', 'offset-lg-12', ...\n\n var breakpointOffset = breakpoints.reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'offset')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // i.e. 'order-md-1', 'order-lg-12', ...\n\n var breakpointOrder = breakpoints.reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'order')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // For loop doesn't need to check `.hasOwnProperty()`\n // when using an object created from `null`\n\n breakpointPropMap = assign(create(null), {\n col: keys(breakpointCol),\n offset: keys(breakpointOffset),\n order: keys(breakpointOrder)\n }); // Return the generated props\n\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, breakpointCol), breakpointOffset), breakpointOrder), {}, {\n // Flex alignment\n alignSelf: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(ALIGN_SELF_VALUES, value);\n }),\n // Generic flexbox 'col' (xs)\n col: makeProp(PROP_TYPE_BOOLEAN, false),\n // i.e. 'col-1', 'col-2', 'col-auto', ...\n cols: makeProp(PROP_TYPE_NUMBER_STRING),\n offset: makeProp(PROP_TYPE_NUMBER_STRING),\n order: makeProp(PROP_TYPE_NUMBER_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n })), NAME_COL);\n}; // --- Main component ---\n// We do not use Vue.extend here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\n\nexport var BCol = {\n name: NAME_COL,\n functional: true,\n\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards.\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props; // eslint-disable-next-line no-return-assign\n\n return this.props = generateProps();\n },\n\n render: function render(h, _ref) {\n var _classList$push;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var cols = props.cols,\n offset = props.offset,\n order = props.order,\n alignSelf = props.alignSelf;\n var classList = []; // Loop through `col`, `offset`, `order` breakpoint props\n\n for (var type in breakpointPropMap) {\n // Returns colSm, offset, offsetSm, orderMd, etc.\n var _keys = breakpointPropMap[type];\n\n for (var i = 0; i < _keys.length; i++) {\n // computeBreakpoint(col, colSm => Sm, value=[String, Number, Boolean])\n var c = computeBreakpointClass(type, _keys[i].replace(type, ''), props[_keys[i]]); // If a class is returned, push it onto the array.\n\n if (c) {\n classList.push(c);\n }\n }\n }\n\n var hasColClasses = classList.some(function (className) {\n return RX_COL_CLASS.test(className);\n });\n classList.push((_classList$push = {\n // Default to .col if no other col-{bp}-* classes generated nor `cols` specified.\n col: props.col || !hasColClasses && !cols\n }, _defineProperty(_classList$push, \"col-\".concat(cols), cols), _defineProperty(_classList$push, \"offset-\".concat(offset), offset), _defineProperty(_classList$push, \"order-\".concat(order), order), _defineProperty(_classList$push, \"align-self-\".concat(alignSelf), alignSelf), _classList$push));\n return h(props.tag, mergeData(data, {\n class: classList\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, mergeData } from '../../vue';\nimport { NAME_CARD_HEADER } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { htmlOrText } from '../../utils/html';\nimport { sortKeys } from '../../utils/object';\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props';\nimport { props as BCardProps } from '../../mixins/card'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, copyProps(BCardProps, prefixPropName.bind(null, 'header'))), {}, {\n header: makeProp(PROP_TYPE_STRING),\n headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerHtml: makeProp(PROP_TYPE_STRING)\n})), NAME_CARD_HEADER); // --- Main component ---\n// @vue/component\n\nexport var BCardHeader = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_HEADER,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var headerBgVariant = props.headerBgVariant,\n headerBorderVariant = props.headerBorderVariant,\n headerTextVariant = props.headerTextVariant;\n return h(props.headerTag, mergeData(data, {\n staticClass: 'card-header',\n class: [props.headerClass, (_ref2 = {}, _defineProperty(_ref2, \"bg-\".concat(headerBgVariant), headerBgVariant), _defineProperty(_ref2, \"border-\".concat(headerBorderVariant), headerBorderVariant), _defineProperty(_ref2, \"text-\".concat(headerTextVariant), headerTextVariant), _ref2)],\n domProps: children ? {} : htmlOrText(props.headerHtml, props.header)\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_CARD_SUB_TITLE } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { toString } from '../../utils/string'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n subTitle: makeProp(PROP_TYPE_STRING),\n subTitleTag: makeProp(PROP_TYPE_STRING, 'h6'),\n subTitleTextVariant: makeProp(PROP_TYPE_STRING, 'muted')\n}, NAME_CARD_SUB_TITLE); // --- Main component ---\n// @vue/component\n\nexport var BCardSubTitle = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_SUB_TITLE,\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.subTitleTag, mergeData(data, {\n staticClass: 'card-subtitle',\n class: [props.subTitleTextVariant ? \"text-\".concat(props.subTitleTextVariant) : null]\n }), children || toString(props.subTitle));\n }\n});","/* Form control contextual state class computation\n *\n * Returned class is either 'is-valid' or 'is-invalid' based on the 'state' prop\n * state can be one of five values:\n * - true for is-valid\n * - false for is-invalid\n * - null for no contextual state\n */\nimport { Vue } from '../vue';\nimport { PROP_TYPE_BOOLEAN } from '../constants/props';\nimport { isBoolean } from '../utils/inspect';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n // Tri-state prop: true, false, null (or undefined)\n state: makeProp(PROP_TYPE_BOOLEAN, null)\n}, 'formState'); // --- Mixin ---\n// @vue/component\n\nexport var formStateMixin = Vue.extend({\n props: props,\n computed: {\n computedState: function computedState() {\n // If not a boolean, ensure that value is null\n return isBoolean(this.state) ? this.state : null;\n },\n stateClass: function stateClass() {\n var state = this.computedState;\n return state === true ? 'is-valid' : state === false ? 'is-invalid' : null;\n },\n computedAriaInvalid: function computedAriaInvalid() {\n var ariaInvalid = this.ariaInvalid;\n\n if (ariaInvalid === true || ariaInvalid === 'true' || ariaInvalid === '') {\n return 'true';\n }\n\n return this.computedState === false ? 'true' : ariaInvalid;\n }\n }\n});","import { Vue } from '../vue';\nimport { NAME_CARD } from '../constants/components';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n bgVariant: makeProp(PROP_TYPE_STRING),\n borderVariant: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n textVariant: makeProp(PROP_TYPE_STRING)\n}, NAME_CARD); // --- Mixin ---\n// @vue/component\n\nexport var cardMixin = Vue.extend({\n props: props\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_CARD_TEXT } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n textTag: makeProp(PROP_TYPE_STRING, 'p')\n}, NAME_CARD_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BCardText = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_TEXT,\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.textTag, mergeData(data, {\n staticClass: 'card-text'\n }), children);\n }\n});","import { Vue } from '../vue';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { attemptFocus, isVisible, matches, requestAF, select } from '../utils/dom';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Constants ---\n\nvar SELECTOR = 'input, textarea, select'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n autofocus: makeProp(PROP_TYPE_BOOLEAN, false),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n form: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n name: makeProp(PROP_TYPE_STRING),\n required: makeProp(PROP_TYPE_BOOLEAN, false)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formControlMixin = Vue.extend({\n props: props,\n mounted: function mounted() {\n this.handleAutofocus();\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n this.handleAutofocus();\n },\n methods: {\n handleAutofocus: function handleAutofocus() {\n var _this = this;\n\n this.$nextTick(function () {\n requestAF(function () {\n var el = _this.$el;\n\n if (_this.autofocus && isVisible(el)) {\n if (!matches(el, SELECTOR)) {\n el = select(SELECTOR, el);\n }\n\n attemptFocus(el);\n }\n });\n });\n }\n }\n});"],"sourceRoot":""}