{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/icons/icon.js","webpack:///./src/@core/layouts/components/Logo.vue?cd8d","webpack:///./src/@core/layouts/components/Logo.vue","webpack:///./node_modules/bootstrap-vue/esm/components/form/form.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-img.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card.js","webpack:///./src/@core/components/toastification/ToastificationContent.vue?eb8e","webpack:///src/@core/components/toastification/ToastificationContent.vue","webpack:///./src/@core/components/toastification/ToastificationContent.vue?270b","webpack:///./src/@core/components/toastification/ToastificationContent.vue","webpack:///./node_modules/bootstrap-vue/esm/directives/tooltip/tooltip.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-prepend.js","webpack:///./src/views/pages/authentication/Login-v1.vue?a509","webpack:///src/views/pages/authentication/Login-v1.vue","webpack:///./src/views/pages/authentication/Login-v1.vue?7976","webpack:///./src/views/pages/authentication/Login-v1.vue","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-addon.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/input-group/input-group.js","webpack:///./node_modules/bootstrap-vue/esm/components/alert/alert.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-body.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-footer.js","webpack:///./src/@core/auth/jwt/jwtDefaultConfig.js","webpack:///./src/@core/auth/jwt/jwtService.js","webpack:///./src/@core/auth/jwt/useJwt.js","webpack:///./src/auth/jwt/useJwt.js","webpack:///./src/sag-core/permissions.js","webpack:///./src/auth/utils.js","webpack:///./src/sag-core/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-tooltip.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-custom.js","webpack:///./src/views/pages/authentication/Login-v1.vue?c773","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-header.js","webpack:///./src/@core/mixins/ui/forms.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-sub-title.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-checkbox/form-checkbox.js","webpack:///./node_modules/bootstrap-vue/esm/utils/loose-index-of.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-append.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-text.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-radio-check.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/card.js","webpack:///./src/@core/components/toastification/ToastificationContent.vue?5b91","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-text.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-popper.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-tooltip-template.js","webpack:///./node_modules/bootstrap-vue/esm/components/avatar/avatar.js","webpack:///./node_modules/bootstrap-vue/esm/utils/noop.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","findIconComponent","ctx","iconName","components","$options","iconComponent","$parent","props","icon","stacked","BIcon","extend","name","functional","render","h","_ref","data","parent","replace","concat","_vm","this","_h","$createElement","_c","_self","attrs","staticClass","staticStyle","staticRenderFns","script","component","id","inline","novalidate","validated","BForm","children","class","bottom","end","start","top","BCardImg","src","alt","width","height","baseClass","right","left","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","$footer","hasFooterSlot","tag","variant","_s","title","_e","text","on","$event","$emit","hideClose","BAvatar","type","String","default","Boolean","BV_TOOLTIP","DefaultTrigger","validTriggers","focus","hover","click","blur","manual","htmlRE","noninteractiveRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","parseBindings","bindings","vnode","config","undefined","trigger","placement","fallbackPlacement","container","animation","offset","interactive","disabled","delay","boundary","boundaryPadding","customClass","show","hide","arg","modifiers","mod","test","slice","selectedTriggers","join","trim","toLowerCase","split","applyTooltip","el","context","_scopeId","__bv_prev_data__","$on","updateData","triggers","noFade","oldData","newData","prop","removeTooltip","$destroy","VBTooltip","componentUpdated","$nextTick","unbind","BInputGroupPrepend","append","appLogoImage","_v","ref","_u","fn","invalid","preventDefault","login","errors","model","user","callback","$$v","$set","expression","passwordFieldType","passwordToggleIcon","togglePasswordVisibility","status","directives","BButton","BAlert","BFormInput","BFormGroup","BCardTitle","BLink","VuexyLogo","BCardText","BInputGroup","BInputGroupAppend","BFormCheckbox","ValidationProvider","ValidationObserver","BImg","mixins","userEmail","password","email","workCode","passWord","mounted","$toast","ToastificationContent","position","methods","$refs","loginForm","validate","then","success","api","apiGetUserInfo","response","error_msg","computed","console","log","isText","BInputGroupAddon","BLANK_TEMPLATE","makeBlankImgSrc","color","encodeURIComponent","blank","blankColor","block","center","fluid","fluidGrow","rounded","sizes","srcset","thumbnail","titleTag","appendHtml","prepend","prependHtml","size","$prepend","hasPrependSlot","$append","hasAppendSlot","role","_watch","_makeModelMixin","defaultValue","modelMixin","mixin","modelProps","MODEL_PROP_NAME","MODEL_EVENT_NAME","event","parseCountDown","parseShow","dismissLabel","dismissible","fade","countDown","localShow","watch","newValue","_this","clearCountDownInterval","$_countDownTimeout","setTimeout","created","$_filterTimer","beforeDestroy","dismiss","clearTimeout","$alert","$dismissButton","normalizeSlot","bodyClass","BCardBody","_ref2","bodyBgVariant","bodyBorderVariant","bodyTextVariant","$title","$subTitle","subTitle","bodyTag","footerClass","BCardFooter","footerBgVariant","footerBorderVariant","footerTextVariant","footerTag","loginEndpoint","registerEndpoint","refreshEndpoint","logoutEndpoint","tokenType","storageTokenKeyName","storageRefreshTokenKeyName","JwtService","axiosIns","jwtOverrideConfig","jwtDefaultConfig","jwtConfig","interceptors","request","use","accessToken","getToken","headers","Authorization","error","Promise","reject","originalRequest","isAlreadyFetchingAccessToken","refreshToken","r","setToken","setRefreshToken","onAccessTokenFetched","retryOriginalRequest","resolve","addSubscriber","subscribers","localStorage","getItem","setItem","args","post","getRefreshToken","useJwt","jwt","axios","permission","permissionDictionary","checkPermissionByName","searchDictionarySource","find","e","includes","getHomeRouteForLoggedInUser","tools","utils","userRole","MODAL_SELECTOR","ROOT_EVENT_NAME_MODAL_HIDDEN","SIDEBAR_SELECTOR","CONTAINER_SELECTOR","DROPDOWN_CLASS","DROPDOWN_OPEN_SELECTOR","DATA_TITLE_ATTR","templateData","content","arrowPadding","BVTooltip","activeTrigger","templateType","computedId","computedDelay","computedTriggers","sort","isWithActiveTrigger","computedTemplateData","newTriggers","oldTriggers","unListen","listen","handleTemplateUpdate","oldValue","disable","enable","_this2","$_tip","$_hoverTimeout","$_hoverState","$_visibleInterval","$_enabled","$_noop","$once","getTarget","document","body","scopeId","updated","deactivated","forceHide","setWhileOpenListeners","clearHoverTimeout","clearVisibilityInterval","destroyTemplate","getTemplate","_this3","titleUpdated","fixTitle","createTemplateAndShow","getContainer","Template","$tip","propsData","getPlacementTarget","getBoundary","onTemplateShow","onTemplateShown","onTemplateHide","onTemplateHidden","handleEvent","$mount","appendChild","createElement","hideTemplate","clearActiveTriggers","localPlacementTarget","_unused","removeAriaDescribedby","restoreTitle","getTemplateElement","$el","_this4","dropdownOpen","showEvt","buildEvent","cancelable","emitEvent","defaultPrevented","addAriaDescribedby","force","tip","hideEvt","prevHoverState","leave","getTargetId","isInModal","isDropdown","clearInterval","desc","_this5","d","options","relatedTarget","componentId","vueTarget","bvEvent","emitOnRoot","_this6","setRootListener","_this7","events","$root","method","doHide","doShow","doDisable","doEnable","setModalListener","setDropdownListener","visibleCheck","setOnTouchStartListener","_this8","setInterval","parentNode","_this9","documentElement","__vue__","enter","eventTarget","currentTarget","toggle","_this10","_this11","plain","formCustomMixin","custom","headerClass","BCardHeader","headerBgVariant","headerBorderVariant","headerTextVariant","headerTag","subTitleTag","subTitleTextVariant","BCardSubTitle","_objectSpread2","array","MODEL_PROP_NAME_INDETERMINATE","MODEL_EVENT_NAME_INDETERMINATE","inject","bvGroup","from","isChecked","checked","computedLocalChecked","isRadio","setIndeterminate","computedLocalCheckedWatcher","$input","input","indeterminate","handleChange","_ref$target","uncheckedValue","localChecked","index","isGroup","state","BInputGroupText","_methods","ariaLabel","ariaLabelledby","button","buttonVariant","formRadioCheckMixin","inheritAttrs","hasFocus","get","set","isBtnMode","buttons","isPlain","isCustom","isSwitch","switches","switch","isInline","isDisabled","isRequired","computedName","groupName","computedForm","form","computedSize","computedState","computedButtonVariant","buttonClasses","computedAttrs","bvAttrs","safeId","stateClass","change","handleFocus","$button","$label","for","style","textTag","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","TOPLEFT","TOPRIGHT","RIGHTTOP","RIGHTBOTTOM","BOTTOMLEFT","BOTTOMRIGHT","LEFTTOP","LEFTBOTTOM","OffsetMap","BVPopper","attachment","getAttachment","popperConfig","getOffset","flip","behavior","arrow","element","preventOverflow","padding","boundariesElement","onCreate","originalPlacement","popperPlacementChange","onUpdate","$_popper","popperCreate","handleDestroy","beforeMount","updatePopper","destroyPopper","destroyed","removeChild","toUpperCase","arrowOffset","destroy","scheduleUpdate","renderTemplate","appear","beforeEnter","afterEnter","beforeLeave","afterLeave","BVTooltipTemplate","extends","templateClasses","noninteractive","templateAttributes","$attrs","tabindex","scopedStyleAttrs","templateListeners","mouseenter","mouseleave","focusin","focusout","innerHTML","CLASS_NAME","SIZES","FONT_SIZE_SCALE","BADGE_FONT_SIZE_SCALE","computeSize","linkProps","badge","badgeLeft","badgeOffset","badgeTop","badgeVariant","buttonType","square","bvAvatarGroup","localSrc","computedVariant","computedRounded","fontStyle","fontSize","indexOf","marginStyle","overlapScale","marginLeft","marginRight","badgeStyle","onImgError","onClick","_class2","link","hasNormalizedSlot","$badge","hasBadgeSlot","badgeText","componentData","noop"],"mappings":"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","file":"js/chunk-6ada08f5.ebecceaa.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_ICON } from '../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { RX_ICON_PREFIX } from '../constants/regex';\nimport { omit, sortKeys } from '../utils/object';\nimport { makeProp, makePropsConfigurable } from '../utils/props';\nimport { pascalCase, trim } from '../utils/string';\nimport { BIconBlank } from './icons';\nimport { props as BVIconBaseProps } from './helpers/icon-base'; // --- Helper methods ---\n\nvar findIconComponent = function findIconComponent(ctx, iconName) {\n if (!ctx) {\n return null;\n }\n\n var components = (ctx.$options || {}).components;\n var iconComponent = components[iconName];\n return iconComponent || findIconComponent(ctx.$parent, iconName);\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, omit(BVIconBaseProps, ['content', 'stacked'])), {}, {\n icon: makeProp(PROP_TYPE_STRING),\n stacked: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_ICON); // --- Main component ---\n// Helper BIcon component\n// Requires the requested icon component to be installed\n// @vue/component\n\nexport var BIcon = /*#__PURE__*/Vue.extend({\n name: NAME_ICON,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props,\n parent = _ref.parent;\n var icon = pascalCase(trim(props.icon || '')).replace(RX_ICON_PREFIX, ''); // If parent context exists, we check to see if the icon has been registered\n // either locally in the parent component, or globally at the `$root` level\n // If not registered, we render a blank icon\n\n return h(icon ? findIconComponent(parent, \"BIcon\".concat(icon)) || BIconBlank : BIconBlank, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n icon: null\n })\n }));\n }\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"viewBox\":\"0 0 139 95\",\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"xmlns:xlink\":\"http://www.w3.org/1999/xlink\",\"height\":\"24\"}},[_c('defs',[_c('linearGradient',{attrs:{\"id\":\"linearGradient-1\",\"x1\":\"100%\",\"y1\":\"10.5120544%\",\"x2\":\"50%\",\"y2\":\"89.4879456%\"}},[_c('stop',{attrs:{\"stop-color\":\"#000000\",\"offset\":\"0%\"}}),_c('stop',{attrs:{\"stop-color\":\"#FFFFFF\",\"offset\":\"100%\"}})],1),_c('linearGradient',{attrs:{\"id\":\"linearGradient-2\",\"x1\":\"64.0437835%\",\"y1\":\"46.3276743%\",\"x2\":\"37.373316%\",\"y2\":\"100%\"}},[_c('stop',{attrs:{\"stop-color\":\"#EEEEEE\",\"stop-opacity\":\"0\",\"offset\":\"0%\"}}),_c('stop',{attrs:{\"stop-color\":\"#FFFFFF\",\"offset\":\"100%\"}})],1)],1),_c('g',{attrs:{\"id\":\"Page-1\",\"stroke\":\"none\",\"stroke-width\":\"1\",\"fill\":\"none\",\"fill-rule\":\"evenodd\"}},[_c('g',{attrs:{\"id\":\"Artboard\",\"transform\":\"translate(-400.000000, -178.000000)\"}},[_c('g',{attrs:{\"id\":\"Group\",\"transform\":\"translate(400.000000, 178.000000)\"}},[_c('path',{staticClass:\"text-primary\",staticStyle:{\"fill\":\"currentColor\"},attrs:{\"id\":\"Path\",\"d\":\"M-5.68434189e-14,2.84217094e-14 L39.1816085,2.84217094e-14 L69.3453773,32.2519224 L101.428699,2.84217094e-14 L138.784583,2.84217094e-14 L138.784199,29.8015838 C137.958931,37.3510206 135.784352,42.5567762 132.260463,45.4188507 C128.736573,48.2809251 112.33867,64.5239941 83.0667527,94.1480575 L56.2750821,94.1480575 L6.71554594,44.4188507 C2.46876683,39.9813776 0.345377275,35.1089553 0.345377275,29.8015838 C0.345377275,24.4942122 0.230251516,14.560351 -5.68434189e-14,2.84217094e-14 Z\"}}),_c('path',{attrs:{\"id\":\"Path1\",\"d\":\"M69.3453773,32.2519224 L101.428699,1.42108547e-14 L138.784583,1.42108547e-14 L138.784199,29.8015838 C137.958931,37.3510206 135.784352,42.5567762 132.260463,45.4188507 C128.736573,48.2809251 112.33867,64.5239941 83.0667527,94.1480575 L56.2750821,94.1480575 L32.8435758,70.5039241 L69.3453773,32.2519224 Z\",\"fill\":\"url(#linearGradient-1)\",\"opacity\":\"0.2\"}}),_c('polygon',{attrs:{\"id\":\"Path-2\",\"fill\":\"#000000\",\"opacity\":\"0.049999997\",\"points\":\"69.3922914 32.4202615 32.8435758 70.5039241 54.0490008 16.1851325\"}}),_c('polygon',{attrs:{\"id\":\"Path-21\",\"fill\":\"#000000\",\"opacity\":\"0.099999994\",\"points\":\"69.3922914 32.4202615 32.8435758 70.5039241 58.3683556 20.7402338\"}}),_c('polygon',{attrs:{\"id\":\"Path-3\",\"fill\":\"url(#linearGradient-2)\",\"opacity\":\"0.099999994\",\"points\":\"101.428699 0 83.0667527 94.1480575 130.378721 47.0740288\"}})])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Logo.vue?vue&type=template&id=61705788&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { Vue, mergeData } from '../../vue';\nimport { NAME_FORM } 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 novalidate: makeProp(PROP_TYPE_BOOLEAN, false),\n validated: makeProp(PROP_TYPE_BOOLEAN, false)\n}, NAME_FORM); // --- Main component ---\n// @vue/component\n\nexport var BForm = /*#__PURE__*/Vue.extend({\n name: NAME_FORM,\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('form', mergeData(data, {\n class: {\n 'form-inline': props.inline,\n 'was-validated': props.validated\n },\n attrs: {\n id: props.id,\n novalidate: props.novalidate\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 { 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});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"toastification\"},[_c('div',{staticClass:\"d-flex align-items-start\"},[_c('b-avatar',{staticClass:\"mr-75 flex-shrink-0\",attrs:{\"variant\":_vm.variant,\"size\":\"1.8rem\"}},[_c('feather-icon',{attrs:{\"icon\":_vm.icon,\"size\":\"15\"}})],1),_c('div',{staticClass:\"d-flex flex-grow-1\"},[_c('div',[(_vm.title)?_c('h5',{staticClass:\"mb-0 font-weight-bolder toastification-title\",class:(\"text-\" + _vm.variant),domProps:{\"textContent\":_vm._s(_vm.title)}}):_vm._e(),(_vm.text)?_c('small',{staticClass:\"d-inline-block text-body\",domProps:{\"innerHTML\":_vm._s(_vm.text)}}):_vm._e()]),_c('span',{staticClass:\"cursor-pointer toastification-close-icon ml-auto \",on:{\"click\":function($event){return _vm.$emit('close-toast')}}},[(!_vm.hideClose)?_c('feather-icon',{staticClass:\"text-body\",attrs:{\"icon\":\"XIcon\"}}):_vm._e()],1)])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToastificationContent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToastificationContent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ToastificationContent.vue?vue&type=template&id=169b1955&scoped=true&\"\nimport script from \"./ToastificationContent.vue?vue&type=script&lang=js&\"\nexport * from \"./ToastificationContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ToastificationContent.vue?vue&type=style&index=0&id=169b1955&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"169b1955\",\n null\n \n)\n\nexport default component.exports","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_TOOLTIP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { EVENT_NAME_SHOW } from '../../constants/events';\nimport { concat } from '../../utils/array';\nimport { getComponentConfig } from '../../utils/config';\nimport { getScopeId } from '../../utils/get-scope-id';\nimport { identity } from '../../utils/identity';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { toInteger } from '../../utils/number';\nimport { keys } from '../../utils/object';\nimport { BVTooltip } from '../../components/tooltip/helpers/bv-tooltip'; // Key which we use to store tooltip object on element\n\nvar BV_TOOLTIP = '__BV_Tooltip__'; // Default trigger\n\nvar DefaultTrigger = 'hover focus'; // Valid event triggers\n\nvar validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n}; // Directive modifier test regular expressions. Pre-compile for performance\n\nvar htmlRE = /^html$/i;\nvar noninteractiveRE = /^noninteractive$/i;\nvar noFadeRE = /^nofade$/i;\nvar placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i;\nvar boundaryRE = /^(window|viewport|scrollParent)$/i;\nvar delayRE = /^d\\d+$/i;\nvar delayShowRE = /^ds\\d+$/i;\nvar delayHideRE = /^dh\\d+$/i;\nvar offsetRE = /^o-?\\d+$/i;\nvar variantRE = /^v-.+$/i;\nvar spacesRE = /\\s+/; // Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\n\nvar parseBindings = function parseBindings(bindings, vnode)\n/* istanbul ignore next: not easy to test */\n{\n // We start out with a basic config\n var config = {\n title: undefined,\n trigger: '',\n // Default set below if needed\n placement: 'top',\n fallbackPlacement: 'flip',\n container: false,\n // Default of body\n animation: true,\n offset: 0,\n id: null,\n html: false,\n interactive: true,\n disabled: false,\n delay: getComponentConfig(NAME_TOOLTIP, 'delay', 50),\n boundary: String(getComponentConfig(NAME_TOOLTIP, 'boundary', 'scrollParent')),\n boundaryPadding: toInteger(getComponentConfig(NAME_TOOLTIP, 'boundaryPadding', 5), 0),\n variant: getComponentConfig(NAME_TOOLTIP, 'variant'),\n customClass: getComponentConfig(NAME_TOOLTIP, 'customClass')\n }; // Process `bindings.value`\n\n if (isString(bindings.value) || isNumber(bindings.value)) {\n // Value is tooltip content (HTML optionally supported)\n config.title = bindings.value;\n } else if (isFunction(bindings.value)) {\n // Title generator function\n config.title = bindings.value;\n } else if (isPlainObject(bindings.value)) {\n // Value is config object, so merge\n config = _objectSpread(_objectSpread({}, config), bindings.value);\n } // If title is not provided, try title attribute\n\n\n if (isUndefined(config.title)) {\n // Try attribute\n var data = vnode.data || {};\n config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined;\n } // Normalize delay\n\n\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n };\n } // If argument, assume element ID of container element\n\n\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = \"#\".concat(bindings.arg);\n } // Process modifiers\n\n\n keys(bindings.modifiers).forEach(function (mod) {\n if (htmlRE.test(mod)) {\n // Title allows HTML\n config.html = true;\n } else if (noninteractiveRE.test(mod)) {\n // Noninteractive\n config.interactive = false;\n } else if (noFadeRE.test(mod)) {\n // No animation\n config.animation = false;\n } else if (placementRE.test(mod)) {\n // Placement of tooltip\n config.placement = mod;\n } else if (boundaryRE.test(mod)) {\n // Boundary of tooltip\n mod = mod === 'scrollparent' ? 'scrollParent' : mod;\n config.boundary = mod;\n } else if (delayRE.test(mod)) {\n // Delay value\n var delay = toInteger(mod.slice(1), 0);\n config.delay.show = delay;\n config.delay.hide = delay;\n } else if (delayShowRE.test(mod)) {\n // Delay show value\n config.delay.show = toInteger(mod.slice(2), 0);\n } else if (delayHideRE.test(mod)) {\n // Delay hide value\n config.delay.hide = toInteger(mod.slice(2), 0);\n } else if (offsetRE.test(mod)) {\n // Offset value, negative allowed\n config.offset = toInteger(mod.slice(1), 0);\n } else if (variantRE.test(mod)) {\n // Variant\n config.variant = mod.slice(2) || null;\n }\n }); // Special handling of event trigger modifiers trigger is\n // a space separated list\n\n var selectedTriggers = {}; // Parse current config object trigger\n\n concat(config.trigger || '').filter(identity).join(' ').trim().toLowerCase().split(spacesRE).forEach(function (trigger) {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true;\n }\n }); // Parse modifiers for triggers\n\n keys(bindings.modifiers).forEach(function (mod) {\n mod = mod.toLowerCase();\n\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true;\n }\n }); // Sanitize triggers\n\n config.trigger = keys(selectedTriggers).join(' ');\n\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus';\n }\n\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger;\n } // Return the config\n\n\n return config;\n}; // Add/update Tooltip on our element\n\n\nvar applyTooltip = function applyTooltip(el, bindings, vnode) {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return;\n }\n\n var config = parseBindings(bindings, vnode);\n\n if (!el[BV_TOOLTIP]) {\n var $parent = vnode.context;\n el[BV_TOOLTIP] = new BVTooltip({\n parent: $parent,\n // Add the parent's scoped style attribute data\n _scopeId: getScopeId($parent, undefined)\n });\n el[BV_TOOLTIP].__bv_prev_data__ = {};\n el[BV_TOOLTIP].$on(EVENT_NAME_SHOW, function ()\n /* istanbul ignore next: for now */\n {\n // Before showing the tooltip, we update the title if it is a function\n if (isFunction(config.title)) {\n el[BV_TOOLTIP].updateData({\n title: config.title(el)\n });\n }\n });\n }\n\n var data = {\n title: config.title,\n triggers: config.trigger,\n placement: config.placement,\n fallbackPlacement: config.fallbackPlacement,\n variant: config.variant,\n customClass: config.customClass,\n container: config.container,\n boundary: config.boundary,\n delay: config.delay,\n offset: config.offset,\n noFade: !config.animation,\n id: config.id,\n interactive: config.interactive,\n disabled: config.disabled,\n html: config.html\n };\n var oldData = el[BV_TOOLTIP].__bv_prev_data__;\n el[BV_TOOLTIP].__bv_prev_data__ = data;\n\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n var newData = {\n target: el\n };\n keys(data).forEach(function (prop) {\n // We only pass data properties that have changed\n if (data[prop] !== oldData[prop]) {\n // if title is a function, we execute it here\n newData[prop] = prop === 'title' && isFunction(data[prop]) ? data[prop](el) : data[prop];\n }\n });\n el[BV_TOOLTIP].updateData(newData);\n }\n}; // Remove Tooltip on our element\n\n\nvar removeTooltip = function removeTooltip(el) {\n if (el[BV_TOOLTIP]) {\n el[BV_TOOLTIP].$destroy();\n el[BV_TOOLTIP] = null;\n }\n\n delete el[BV_TOOLTIP];\n}; // Export our directive\n\n\nexport var VBTooltip = {\n bind: function bind(el, bindings, vnode) {\n applyTooltip(el, bindings, vnode);\n },\n // We use `componentUpdated` here instead of `update`, as the former\n // waits until the containing component and children have finished updating\n componentUpdated: function componentUpdated(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent render update loops\n vnode.context.$nextTick(function () {\n applyTooltip(el, bindings, vnode);\n });\n },\n unbind: function unbind(el) {\n removeTooltip(el);\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_INPUT_GROUP_PREPEND } from '../../constants/components';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'; // --- Props ---\n\nexport var props = makePropsConfigurable(omit(BInputGroupAddonProps, ['append']), NAME_INPUT_GROUP_PREPEND); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupPrepend = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_PREPEND,\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 // Pass all our data down to child, and set `append` to `true`\n return h(BInputGroupAddon, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n append: false\n })\n }), children);\n }\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"auth-wrapper auth-v1 px-2\"},[_c('div',{staticClass:\"auth-inner py-2\"},[_c('b-card',{staticClass:\"mb-0\"},[_c('b-link',{staticClass:\"brand-logo\"},[_c('b-img',{attrs:{\"src\":_vm.appLogoImage,\"width\":\"48\",\"alt\":\"logo\"}}),_c('h2',{staticClass:\"brand-text text-primary my-auto ml-1 text-dark\"},[_vm._v(\" SAG \")])],1),_c('b-card-title',{staticClass:\"mb-1\"},[_vm._v(\" Welcome to SAG! 👋 \")]),_c('b-card-text',{staticClass:\"mb-2\"},[_vm._v(\" Please sign-in to your account and start the adventure \")]),_c('validation-observer',{ref:\"loginForm\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar invalid = ref.invalid;\nreturn [_c('b-form',{staticClass:\"auth-login-form mt-2\",on:{\"submit\":function($event){$event.preventDefault();return _vm.login.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label-for\":\"email\",\"label\":\"Employee ID\"}},[_c('validation-provider',{attrs:{\"name\":\"Employee ID\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b-form-input',{attrs:{\"id\":\"email\",\"name\":\"login-email\",\"state\":errors.length > 0 ? false : null,\"placeholder\":\"Employee ID\",\"autofocus\":\"\"},model:{value:(_vm.user.workCode),callback:function ($$v) {_vm.$set(_vm.user, \"workCode\", $$v)},expression:\"user.workCode\"}}),_c('small',{staticClass:\"text-danger\"},[_vm._v(_vm._s(errors[0]))])]}}],null,true)})],1),_c('b-form-group',[_c('div',{staticClass:\"d-flex justify-content-between\"},[_c('label',{attrs:{\"for\":\"password\"}},[_vm._v(\"Password\")])]),_c('validation-provider',{attrs:{\"name\":\"Password\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b-input-group',{staticClass:\"input-group-merge\",class:errors.length > 0 ? 'is-invalid' : null},[_c('b-form-input',{staticClass:\"form-control-merge\",attrs:{\"id\":\"password\",\"type\":_vm.passwordFieldType,\"state\":errors.length > 0 ? false : null,\"name\":\"login-password\",\"placeholder\":\"Password\"},model:{value:(_vm.user.passWord),callback:function ($$v) {_vm.$set(_vm.user, \"passWord\", $$v)},expression:\"user.passWord\"}}),_c('b-input-group-append',{attrs:{\"is-text\":\"\"}},[_c('feather-icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":_vm.passwordToggleIcon},on:{\"click\":_vm.togglePasswordVisibility}})],1)],1),_c('small',{staticClass:\"text-danger\"},[_vm._v(_vm._s(errors[0]))])]}}],null,true)})],1),_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"id\":\"remember-me\",\"name\":\"checkbox-1\"},model:{value:(_vm.status),callback:function ($$v) {_vm.status=$$v},expression:\"status\"}},[_vm._v(\" Remember Me \")])],1),_c('b-button',{attrs:{\"variant\":\"primary\",\"type\":\"submit\",\"block\":\"\",\"disabled\":invalid}},[_vm._v(\" Sign in \")])],1)]}}])})],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login-v1.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login-v1.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Login-v1.vue?vue&type=template&id=5ababce8&\"\nimport script from \"./Login-v1.vue?vue&type=script&lang=js&\"\nexport * from \"./Login-v1.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Login-v1.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_ADDON } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupText } from './input-group-text'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n append: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n isText: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP_ADDON); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupAddon = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_ADDON,\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 append = props.append;\n return h(props.tag, mergeData(data, {\n class: {\n 'input-group-append': append,\n 'input-group-prepend': !append\n },\n attrs: {\n id: props.id\n }\n }), props.isText ? [h(BInputGroupText, children)] : 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_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 _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_INPUT_GROUP } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_APPEND, SLOT_NAME_DEFAULT, SLOT_NAME_PREPEND } from '../../constants/slots';\nimport { htmlOrText } from '../../utils/html';\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAppend } from './input-group-append';\nimport { BInputGroupPrepend } from './input-group-prepend';\nimport { BInputGroupText } from './input-group-text'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n append: makeProp(PROP_TYPE_STRING),\n appendHtml: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n prepend: makeProp(PROP_TYPE_STRING),\n prependHtml: makeProp(PROP_TYPE_STRING),\n size: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP); // --- Main component ---\n// @vue/component\n\nexport var BInputGroup = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_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 prepend = props.prepend,\n prependHtml = props.prependHtml,\n append = props.append,\n appendHtml = props.appendHtml,\n size = props.size;\n var $scopedSlots = scopedSlots || {};\n var $slots = slots();\n var slotScope = {};\n var $prepend = h();\n var hasPrependSlot = hasNormalizedSlot(SLOT_NAME_PREPEND, $scopedSlots, $slots);\n\n if (hasPrependSlot || prepend || prependHtml) {\n $prepend = h(BInputGroupPrepend, [hasPrependSlot ? normalizeSlot(SLOT_NAME_PREPEND, slotScope, $scopedSlots, $slots) : h(BInputGroupText, {\n domProps: htmlOrText(prependHtml, prepend)\n })]);\n }\n\n var $append = h();\n var hasAppendSlot = hasNormalizedSlot(SLOT_NAME_APPEND, $scopedSlots, $slots);\n\n if (hasAppendSlot || append || appendHtml) {\n $append = h(BInputGroupAppend, [hasAppendSlot ? normalizeSlot(SLOT_NAME_APPEND, slotScope, $scopedSlots, $slots) : h(BInputGroupText, {\n domProps: htmlOrText(appendHtml, append)\n })]);\n }\n\n return h(props.tag, mergeData(data, {\n staticClass: 'input-group',\n class: _defineProperty({}, \"input-group-\".concat(size), size),\n attrs: {\n id: props.id || null,\n role: 'group'\n }\n }), [$prepend, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots), $append]);\n }\n});","var _watch;\n\nfunction 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 { COMPONENT_UID_KEY, Vue } from '../../vue';\nimport { NAME_ALERT } from '../../constants/components';\nimport { EVENT_NAME_DISMISSED, EVENT_NAME_DISMISS_COUNT_DOWN } from '../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_DISMISS } from '../../constants/slots';\nimport { requestAF } from '../../utils/dom';\nimport { isBoolean, isNumeric } from '../../utils/inspect';\nimport { makeModelMixin } from '../../utils/model';\nimport { toInteger } from '../../utils/number';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BButtonClose } from '../button/button-close';\nimport { BVTransition } from '../transition/bv-transition'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('show', {\n type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n defaultValue: false\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event; // --- Helper methods ---\n// Convert `show` value to a number\n\n\nvar parseCountDown = function parseCountDown(show) {\n if (show === '' || isBoolean(show)) {\n return 0;\n }\n\n show = toInteger(show, 0);\n return show > 0 ? show : 0;\n}; // Convert `show` value to a boolean\n\n\nvar parseShow = function parseShow(show) {\n if (show === '' || show === true) {\n return true;\n }\n\n if (toInteger(show, 0) < 1) {\n // Boolean will always return false for the above comparison\n return false;\n }\n\n return !!show;\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, modelProps), {}, {\n dismissLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n dismissible: makeProp(PROP_TYPE_BOOLEAN, false),\n fade: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING, 'info')\n})), NAME_ALERT); // --- Main component ---\n// @vue/component\n\nexport var BAlert = /*#__PURE__*/Vue.extend({\n name: NAME_ALERT,\n mixins: [modelMixin, normalizeSlotMixin],\n props: props,\n data: function data() {\n return {\n countDown: 0,\n // If initially shown, we need to set these for SSR\n localShow: parseShow(this[MODEL_PROP_NAME])\n };\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function (newValue) {\n this.countDown = parseCountDown(newValue);\n this.localShow = parseShow(newValue);\n }), _defineProperty(_watch, \"countDown\", function countDown(newValue) {\n var _this = this;\n\n this.clearCountDownInterval();\n var show = this[MODEL_PROP_NAME]; // Ignore if `show` transitions to a boolean value\n\n if (isNumeric(show)) {\n this.$emit(EVENT_NAME_DISMISS_COUNT_DOWN, newValue); // Update the v-model if needed\n\n if (show !== newValue) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n\n if (newValue > 0) {\n this.localShow = true;\n this.$_countDownTimeout = setTimeout(function () {\n _this.countDown--;\n }, 1000);\n } else {\n // Slightly delay the hide to allow any UI updates\n this.$nextTick(function () {\n requestAF(function () {\n _this.localShow = false;\n });\n });\n }\n }\n }), _defineProperty(_watch, \"localShow\", function localShow(newValue) {\n var show = this[MODEL_PROP_NAME]; // Only emit dismissed events for dismissible or auto-dismissing alerts\n\n if (!newValue && (this.dismissible || isNumeric(show))) {\n this.$emit(EVENT_NAME_DISMISSED);\n } // Only emit booleans if we weren't passed a number via v-model\n\n\n if (!isNumeric(show) && show !== newValue) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n }), _watch),\n created: function created() {\n // Create private non-reactive props\n this.$_filterTimer = null;\n var show = this[MODEL_PROP_NAME];\n this.countDown = parseCountDown(show);\n this.localShow = parseShow(show);\n },\n beforeDestroy: function beforeDestroy() {\n this.clearCountDownInterval();\n },\n methods: {\n dismiss: function dismiss() {\n this.clearCountDownInterval();\n this.countDown = 0;\n this.localShow = false;\n },\n clearCountDownInterval: function clearCountDownInterval() {\n clearTimeout(this.$_countDownTimeout);\n this.$_countDownTimeout = null;\n }\n },\n render: function render(h) {\n var $alert = h();\n\n if (this.localShow) {\n var dismissible = this.dismissible,\n variant = this.variant;\n var $dismissButton = h();\n\n if (dismissible) {\n // Add dismiss button\n $dismissButton = h(BButtonClose, {\n attrs: {\n 'aria-label': this.dismissLabel\n },\n on: {\n click: this.dismiss\n }\n }, [this.normalizeSlot(SLOT_NAME_DISMISS)]);\n }\n\n $alert = h('div', {\n staticClass: 'alert',\n class: _defineProperty({\n 'alert-dismissible': dismissible\n }, \"alert-\".concat(variant), variant),\n attrs: {\n role: 'alert',\n 'aria-live': 'polite',\n 'aria-atomic': true\n },\n key: this[COMPONENT_UID_KEY]\n }, [$dismissButton, this.normalizeSlot()]);\n }\n\n return h(BVTransition, {\n props: {\n noFade: !this.fade\n }\n }, [$alert]);\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});","export default {\r\n // Endpoints\r\n loginEndpoint: '/jwt/login',\r\n registerEndpoint: '/jwt/register',\r\n refreshEndpoint: '/jwt/refresh-token',\r\n logoutEndpoint: '/jwt/logout',\r\n\r\n // This will be prefixed in authorization header with token\r\n // e.g. Authorization: Bearer \r\n tokenType: 'Bearer',\r\n\r\n // Value of this property will be used as key to store JWT token in storage\r\n storageTokenKeyName: 'accessToken',\r\n storageRefreshTokenKeyName: 'refreshToken',\r\n}\r\n","import jwtDefaultConfig from './jwtDefaultConfig.js'\r\n\r\nexport default class JwtService {\r\n // Will be used by this service for making API calls\r\n axiosIns = null\r\n\r\n // jwtConfig <= Will be used by this service\r\n jwtConfig = { ...jwtDefaultConfig }\r\n\r\n // For Refreshing Token\r\n isAlreadyFetchingAccessToken = false\r\n\r\n // For Refreshing Token\r\n subscribers = []\r\n\r\n constructor(axiosIns, jwtOverrideConfig) {\r\n this.axiosIns = axiosIns\r\n this.jwtConfig = { ...this.jwtConfig, ...jwtOverrideConfig }\r\n\r\n // Request Interceptor\r\n this.axiosIns.interceptors.request.use(\r\n config => {\r\n // Get token from localStorage\r\n const accessToken = this.getToken()\r\n\r\n // If token is present add it to request's Authorization Header\r\n if (accessToken) {\r\n // eslint-disable-next-line no-param-reassign\r\n config.headers.Authorization = `${this.jwtConfig.tokenType} ${accessToken}`\r\n }\r\n return config\r\n },\r\n error => Promise.reject(error),\r\n )\r\n\r\n // Add request/response interceptor\r\n this.axiosIns.interceptors.response.use(\r\n response => response,\r\n error => {\r\n // const { config, response: { status } } = error\r\n const { config, response } = error\r\n const originalRequest = config\r\n\r\n // if (status === 401) {\r\n if (response && response.status === 401) {\r\n if (!this.isAlreadyFetchingAccessToken) {\r\n this.isAlreadyFetchingAccessToken = true\r\n this.refreshToken().then(r => {\r\n this.isAlreadyFetchingAccessToken = false\r\n\r\n // Update accessToken in localStorage\r\n this.setToken(r.data.accessToken)\r\n this.setRefreshToken(r.data.refreshToken)\r\n\r\n this.onAccessTokenFetched(r.data.accessToken)\r\n })\r\n }\r\n const retryOriginalRequest = new Promise(resolve => {\r\n this.addSubscriber(accessToken => {\r\n // Make sure to assign accessToken according to your response.\r\n // Check: https://pixinvent.ticksy.com/ticket/2413870\r\n // Change Authorization header\r\n originalRequest.headers.Authorization = `${this.jwtConfig.tokenType} ${accessToken}`\r\n resolve(this.axiosIns(originalRequest))\r\n })\r\n })\r\n return retryOriginalRequest\r\n }\r\n return Promise.reject(error)\r\n },\r\n )\r\n }\r\n\r\n onAccessTokenFetched(accessToken) {\r\n this.subscribers = this.subscribers.filter(callback => callback(accessToken))\r\n }\r\n\r\n addSubscriber(callback) {\r\n this.subscribers.push(callback)\r\n }\r\n\r\n getToken() {\r\n return localStorage.getItem(this.jwtConfig.storageTokenKeyName)\r\n }\r\n\r\n getRefreshToken() {\r\n return localStorage.getItem(this.jwtConfig.storageRefreshTokenKeyName)\r\n }\r\n\r\n setToken(value) {\r\n localStorage.setItem(this.jwtConfig.storageTokenKeyName, value)\r\n }\r\n\r\n setRefreshToken(value) {\r\n localStorage.setItem(this.jwtConfig.storageRefreshTokenKeyName, value)\r\n }\r\n\r\n login(...args) {\r\n return this.axiosIns.post(this.jwtConfig.loginEndpoint, ...args)\r\n }\r\n\r\n register(...args) {\r\n return this.axiosIns.post(this.jwtConfig.registerEndpoint, ...args)\r\n }\r\n\r\n refreshToken() {\r\n return this.axiosIns.post(this.jwtConfig.refreshEndpoint, {\r\n refreshToken: this.getRefreshToken(),\r\n })\r\n }\r\n}\r\n","import JwtService from './jwtService.js'\r\n\r\nexport default function useJwt(axiosIns, jwtOverrideConfig) {\r\n const jwt = new JwtService(axiosIns, jwtOverrideConfig)\r\n\r\n return {\r\n jwt,\r\n }\r\n}\r\n","import useJwt from '@core/auth/jwt/useJwt'\r\nimport axios from '@axios'\r\n\r\nconst { jwt } = useJwt(axios, {})\r\nexport default jwt\r\n","const permission = {\r\n permissionDictionary: {\r\n /* \r\n 設定權限,元件name將比對Array(value)內字串,得到與後台對應權限名稱(key)\r\n */\r\n 'Permissions1': ['查詢', 'Query'],\r\n 'Permissions2': ['新增', 'Insert'],\r\n 'Permissions3': ['修改', 'Update'],\r\n 'Permissions4': ['刪除', 'Delete'],\r\n 'Permissions5': ['細增', 'InsertList'],\r\n 'Permissions6': ['細修', 'UpdateList'],\r\n 'Permissions7': ['細刪', 'DeleteList'],\r\n 'Permissions8': ['瀏覽', 'Preview'],\r\n 'Permissions9': ['列印', 'Print'],\r\n 'Permissions10': ['預留1', 'Reserve1'],\r\n 'Permissions11': ['預留2', 'Reserve2'],\r\n 'Permissions12': ['預留3', 'Reserve3'],\r\n 'Permissions13': ['預留4', 'Reserve4'],\r\n 'Permissions14': ['預留5', 'Reserve5'],\r\n 'Permissions15': ['預留6', 'Reserve6']\r\n },\r\n\r\n checkPermissionByName(name){\r\n let searchDictionarySource = this.permissionDictionary\r\n \r\n for(let key in searchDictionarySource){\r\n if(searchDictionarySource[key].find(e => \r\n {\r\n return (name.toLowerCase()).includes(e.toLowerCase())\r\n }\r\n )){\r\n return key\r\n }\r\n }\r\n\r\n return null\r\n }\r\n}\r\n\r\nexport default permission","import useJwt from '@/auth/jwt/useJwt'\r\nimport store from '@/store'\r\nimport utils from '@/sag-core'\r\n/**\r\n * Return if user is logged in\r\n * This is completely up to you and how you want to store the token in your frontend application\r\n * e.g. If you are using cookies to store the application please update this function\r\n */\r\n// eslint-disable-next-line arrow-body-style\r\nexport const isUserLoggedIn = () => {\r\n let userToken = utils.getUserToken()\r\n\r\n return userToken\r\n}\r\n\r\nexport const getUserData = () => {\r\n return store.state.webConfig.userData\r\n}\r\n\r\n/**\r\n * This function is used for demo purpose route navigation\r\n * In real app you won't need this function because your app will navigate to same route for each users regardless of ability\r\n * Please note role field is just for showing purpose it's not used by anything in frontend\r\n * We are checking role just for ease\r\n * NOTE: If you have different pages to navigate based on user ability then this function can be useful. However, you need to update it.\r\n * @param {String} userRole Role of user\r\n */\r\nexport const getHomeRouteForLoggedInUser = userRole => {\r\n if (userRole === 'admin') return '/'\r\n if (userRole === 'client') return { name: 'access-control' }\r\n return { name: 'auth-login' }\r\n}\r\n","import permissions from './permissions.js'\r\nimport tools from './tools.js'\r\nimport utils from './utils.js'\r\n\r\nexport default {\r\n permissions,\r\n tools,\r\n utils\r\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\n// Tooltip \"Class\" (Built as a renderless Vue instance)\n//\n// Handles trigger events, etc.\n// Instantiates template on demand\nimport { COMPONENT_UID_KEY, Vue } from '../../../vue';\nimport { NAME_MODAL, NAME_TOOLTIP_HELPER } from '../../../constants/components';\nimport { EVENT_NAME_DISABLE, EVENT_NAME_DISABLED, EVENT_NAME_ENABLE, EVENT_NAME_ENABLED, EVENT_NAME_FOCUSIN, EVENT_NAME_FOCUSOUT, EVENT_NAME_HIDDEN, EVENT_NAME_HIDE, EVENT_NAME_MOUSEENTER, EVENT_NAME_MOUSELEAVE, EVENT_NAME_SHOW, EVENT_NAME_SHOWN, EVENT_OPTIONS_NO_CAPTURE, HOOK_EVENT_NAME_BEFORE_DESTROY, HOOK_EVENT_NAME_DESTROYED } from '../../../constants/events';\nimport { arrayIncludes, concat, from as arrayFrom } from '../../../utils/array';\nimport { attemptFocus, closest, contains, getAttr, getById, hasAttr, hasClass, isDisabled, isElement, isVisible, removeAttr, requestAF, select, setAttr } from '../../../utils/dom';\nimport { eventOff, eventOn, eventOnOff, getRootActionEventName, getRootEventName } from '../../../utils/events';\nimport { getScopeId } from '../../../utils/get-scope-id';\nimport { identity } from '../../../utils/identity';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../../utils/inspect';\nimport { looseEqual } from '../../../utils/loose-equal';\nimport { mathMax } from '../../../utils/math';\nimport { noop } from '../../../utils/noop';\nimport { toInteger } from '../../../utils/number';\nimport { keys } from '../../../utils/object';\nimport { warn } from '../../../utils/warn';\nimport { BvEvent } from '../../../utils/bv-event.class';\nimport { listenOnRootMixin } from '../../../mixins/listen-on-root';\nimport { BVTooltipTemplate } from './bv-tooltip-template'; // --- Constants ---\n// Modal container selector for appending tooltip/popover\n\nvar MODAL_SELECTOR = '.modal-content'; // Modal `$root` hidden event\n\nvar ROOT_EVENT_NAME_MODAL_HIDDEN = getRootEventName(NAME_MODAL, EVENT_NAME_HIDDEN); // Sidebar container selector for appending tooltip/popover\n\nvar SIDEBAR_SELECTOR = '.b-sidebar'; // For finding the container to append to\n\nvar CONTAINER_SELECTOR = [MODAL_SELECTOR, SIDEBAR_SELECTOR].join(', '); // For dropdown sniffing\n\nvar DROPDOWN_CLASS = 'dropdown';\nvar DROPDOWN_OPEN_SELECTOR = '.dropdown-menu.show'; // Data attribute to temporary store the `title` attribute's value\n\nvar DATA_TITLE_ATTR = 'data-original-title'; // Data specific to popper and template\n// We don't use props, as we need reactivity (we can't pass reactive props)\n\nvar templateData = {\n // Text string or Scoped slot function\n title: '',\n // Text string or Scoped slot function\n content: '',\n // String\n variant: null,\n // String, Array, Object\n customClass: null,\n // String or array of Strings (overwritten by BVPopper)\n triggers: '',\n // String (overwritten by BVPopper)\n placement: 'auto',\n // String or array of strings\n fallbackPlacement: 'flip',\n // Element or Component reference (or function that returns element) of\n // the element that will have the trigger events bound, and is also\n // default element for positioning\n target: null,\n // HTML ID, Element or Component reference\n container: null,\n // 'body'\n // Boolean\n noFade: false,\n // 'scrollParent', 'viewport', 'window', Element, or Component reference\n boundary: 'scrollParent',\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels (Number)\n boundaryPadding: 5,\n // Arrow offset (Number)\n offset: 0,\n // Hover/focus delay (Number or Object)\n delay: 0,\n // Arrow of Tooltip/popover will try and stay away from\n // the edge of tooltip/popover edge by this many pixels\n arrowPadding: 6,\n // Interactive state (Boolean)\n interactive: true,\n // Disabled state (Boolean)\n disabled: false,\n // ID to use for tooltip/popover\n id: null,\n // Flag used by directives only, for HTML content\n html: false\n}; // --- Main component ---\n// @vue/component\n\nexport var BVTooltip = /*#__PURE__*/Vue.extend({\n name: NAME_TOOLTIP_HELPER,\n mixins: [listenOnRootMixin],\n data: function data() {\n return _objectSpread(_objectSpread({}, templateData), {}, {\n // State management data\n activeTrigger: {\n // manual: false,\n hover: false,\n click: false,\n focus: false\n },\n localShow: false\n });\n },\n computed: {\n templateType: function templateType() {\n // Overwritten by BVPopover\n return 'tooltip';\n },\n computedId: function computedId() {\n return this.id || \"__bv_\".concat(this.templateType, \"_\").concat(this[COMPONENT_UID_KEY], \"__\");\n },\n computedDelay: function computedDelay() {\n // Normalizes delay into object form\n var delay = {\n show: 0,\n hide: 0\n };\n\n if (isPlainObject(this.delay)) {\n delay.show = mathMax(toInteger(this.delay.show, 0), 0);\n delay.hide = mathMax(toInteger(this.delay.hide, 0), 0);\n } else if (isNumber(this.delay) || isString(this.delay)) {\n delay.show = delay.hide = mathMax(toInteger(this.delay, 0), 0);\n }\n\n return delay;\n },\n computedTriggers: function computedTriggers() {\n // Returns the triggers in sorted array form\n // TODO: Switch this to object form for easier lookup\n return concat(this.triggers).filter(identity).join(' ').trim().toLowerCase().split(/\\s+/).sort();\n },\n isWithActiveTrigger: function isWithActiveTrigger() {\n for (var trigger in this.activeTrigger) {\n if (this.activeTrigger[trigger]) {\n return true;\n }\n }\n\n return false;\n },\n computedTemplateData: function computedTemplateData() {\n var title = this.title,\n content = this.content,\n variant = this.variant,\n customClass = this.customClass,\n noFade = this.noFade,\n interactive = this.interactive;\n return {\n title: title,\n content: content,\n variant: variant,\n customClass: customClass,\n noFade: noFade,\n interactive: interactive\n };\n }\n },\n watch: {\n computedTriggers: function computedTriggers(newTriggers, oldTriggers) {\n var _this = this;\n\n // Triggers have changed, so re-register them\n\n /* istanbul ignore next */\n if (!looseEqual(newTriggers, oldTriggers)) {\n this.$nextTick(function () {\n // Disable trigger listeners\n _this.unListen(); // Clear any active triggers that are no longer in the list of triggers\n\n\n oldTriggers.forEach(function (trigger) {\n if (!arrayIncludes(newTriggers, trigger)) {\n if (_this.activeTrigger[trigger]) {\n _this.activeTrigger[trigger] = false;\n }\n }\n }); // Re-enable the trigger listeners\n\n _this.listen();\n });\n }\n },\n computedTemplateData: function computedTemplateData() {\n // If any of the while open reactive \"props\" change,\n // ensure that the template updates accordingly\n this.handleTemplateUpdate();\n },\n title: function title(newValue, oldValue) {\n // Make sure to hide the tooltip when the title is set empty\n if (newValue !== oldValue && !newValue) {\n this.hide();\n }\n },\n disabled: function disabled(newValue) {\n if (newValue) {\n this.disable();\n } else {\n this.enable();\n }\n }\n },\n created: function created() {\n var _this2 = this;\n\n // Create non-reactive properties\n this.$_tip = null;\n this.$_hoverTimeout = null;\n this.$_hoverState = '';\n this.$_visibleInterval = null;\n this.$_enabled = !this.disabled;\n this.$_noop = noop.bind(this); // Destroy ourselves when the parent is destroyed\n\n if (this.$parent) {\n this.$parent.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, function () {\n _this2.$nextTick(function () {\n // In a `requestAF()` to release control back to application\n requestAF(function () {\n _this2.$destroy();\n });\n });\n });\n }\n\n this.$nextTick(function () {\n var target = _this2.getTarget();\n\n if (target && contains(document.body, target)) {\n // Copy the parent's scoped style attribute\n _this2.scopeId = getScopeId(_this2.$parent); // Set up all trigger handlers and listeners\n\n _this2.listen();\n } else {\n /* istanbul ignore next */\n warn(isString(_this2.target) ? \"Unable to find target element by ID \\\"#\".concat(_this2.target, \"\\\" in document.\") : 'The provided target is no valid HTML element.', _this2.templateType);\n }\n });\n },\n\n /* istanbul ignore next */\n updated: function updated() {\n // Usually called when the slots/data changes\n this.$nextTick(this.handleTemplateUpdate);\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n // In a keepalive that has been deactivated, so hide\n // the tooltip/popover if it is showing\n this.forceHide();\n },\n beforeDestroy: function beforeDestroy() {\n // Remove all handler/listeners\n this.unListen();\n this.setWhileOpenListeners(false); // Clear any timeouts/intervals\n\n this.clearHoverTimeout();\n this.clearVisibilityInterval(); // Destroy the template\n\n this.destroyTemplate(); // Remove any other private properties created during create\n\n this.$_noop = null;\n },\n methods: {\n // --- Methods for creating and destroying the template ---\n getTemplate: function getTemplate() {\n // Overridden by BVPopover\n return BVTooltipTemplate;\n },\n updateData: function updateData() {\n var _this3 = this;\n\n var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Method for updating popper/template data\n // We only update data if it exists, and has not changed\n var titleUpdated = false;\n keys(templateData).forEach(function (prop) {\n if (!isUndefined(data[prop]) && _this3[prop] !== data[prop]) {\n _this3[prop] = data[prop];\n\n if (prop === 'title') {\n titleUpdated = true;\n }\n }\n }); // If the title has updated, we may need to handle the `title`\n // attribute on the trigger target\n // We only do this while the template is open\n\n if (titleUpdated && this.localShow) {\n this.fixTitle();\n }\n },\n createTemplateAndShow: function createTemplateAndShow() {\n // Creates the template instance and show it\n var container = this.getContainer();\n var Template = this.getTemplate();\n var $tip = this.$_tip = new Template({\n parent: this,\n // The following is not reactive to changes in the props data\n propsData: {\n // These values cannot be changed while template is showing\n id: this.computedId,\n html: this.html,\n placement: this.placement,\n fallbackPlacement: this.fallbackPlacement,\n target: this.getPlacementTarget(),\n boundary: this.getBoundary(),\n // Ensure the following are integers\n offset: toInteger(this.offset, 0),\n arrowPadding: toInteger(this.arrowPadding, 0),\n boundaryPadding: toInteger(this.boundaryPadding, 0)\n }\n }); // We set the initial reactive data (values that can be changed while open)\n\n this.handleTemplateUpdate(); // Template transition phase events (handled once only)\n // When the template has mounted, but not visibly shown yet\n\n $tip.$once(EVENT_NAME_SHOW, this.onTemplateShow); // When the template has completed showing\n\n $tip.$once(EVENT_NAME_SHOWN, this.onTemplateShown); // When the template has started to hide\n\n $tip.$once(EVENT_NAME_HIDE, this.onTemplateHide); // When the template has completed hiding\n\n $tip.$once(EVENT_NAME_HIDDEN, this.onTemplateHidden); // When the template gets destroyed for any reason\n\n $tip.$once(HOOK_EVENT_NAME_DESTROYED, this.destroyTemplate); // Convenience events from template\n // To save us from manually adding/removing DOM\n // listeners to tip element when it is open\n\n $tip.$on(EVENT_NAME_FOCUSIN, this.handleEvent);\n $tip.$on(EVENT_NAME_FOCUSOUT, this.handleEvent);\n $tip.$on(EVENT_NAME_MOUSEENTER, this.handleEvent);\n $tip.$on(EVENT_NAME_MOUSELEAVE, this.handleEvent); // Mount (which triggers the `show`)\n\n $tip.$mount(container.appendChild(document.createElement('div'))); // Template will automatically remove its markup from DOM when hidden\n },\n hideTemplate: function hideTemplate() {\n // Trigger the template to start hiding\n // The template will emit the `hide` event after this and\n // then emit the `hidden` event once it is fully hidden\n // The `hook:destroyed` will also be called (safety measure)\n this.$_tip && this.$_tip.hide(); // Clear out any stragging active triggers\n\n this.clearActiveTriggers(); // Reset the hover state\n\n this.$_hoverState = '';\n },\n // Destroy the template instance and reset state\n destroyTemplate: function destroyTemplate() {\n this.setWhileOpenListeners(false);\n this.clearHoverTimeout();\n this.$_hoverState = '';\n this.clearActiveTriggers();\n this.localPlacementTarget = null;\n\n try {\n this.$_tip.$destroy();\n } catch (_unused) {}\n\n this.$_tip = null;\n this.removeAriaDescribedby();\n this.restoreTitle();\n this.localShow = false;\n },\n getTemplateElement: function getTemplateElement() {\n return this.$_tip ? this.$_tip.$el : null;\n },\n handleTemplateUpdate: function handleTemplateUpdate() {\n var _this4 = this;\n\n // Update our template title/content \"props\"\n // So that the template updates accordingly\n var $tip = this.$_tip;\n\n if ($tip) {\n var props = ['title', 'content', 'variant', 'customClass', 'noFade', 'interactive']; // Only update the values if they have changed\n\n props.forEach(function (prop) {\n if ($tip[prop] !== _this4[prop]) {\n $tip[prop] = _this4[prop];\n }\n });\n }\n },\n // --- Show/Hide handlers ---\n // Show the tooltip\n show: function show() {\n var target = this.getTarget();\n\n if (!target || !contains(document.body, target) || !isVisible(target) || this.dropdownOpen() || (isUndefinedOrNull(this.title) || this.title === '') && (isUndefinedOrNull(this.content) || this.content === '')) {\n // If trigger element isn't in the DOM or is not visible, or\n // is on an open dropdown toggle, or has no content, then\n // we exit without showing\n return;\n } // If tip already exists, exit early\n\n\n if (this.$_tip || this.localShow) {\n /* istanbul ignore next */\n return;\n } // In the process of showing\n\n\n this.localShow = true; // Create a cancelable BvEvent\n\n var showEvt = this.buildEvent(EVENT_NAME_SHOW, {\n cancelable: true\n });\n this.emitEvent(showEvt); // Don't show if event cancelled\n\n /* istanbul ignore if */\n\n if (showEvt.defaultPrevented) {\n // Destroy the template (if for some reason it was created)\n this.destroyTemplate();\n return;\n } // Fix the title attribute on target\n\n\n this.fixTitle(); // Set aria-describedby on target\n\n this.addAriaDescribedby(); // Create and show the tooltip\n\n this.createTemplateAndShow();\n },\n hide: function hide() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n // Hide the tooltip\n var tip = this.getTemplateElement();\n /* istanbul ignore if */\n\n if (!tip || !this.localShow) {\n this.restoreTitle();\n return;\n } // Emit cancelable BvEvent 'hide'\n // We disable cancelling if `force` is true\n\n\n var hideEvt = this.buildEvent(EVENT_NAME_HIDE, {\n cancelable: !force\n });\n this.emitEvent(hideEvt);\n /* istanbul ignore if: ignore for now */\n\n if (hideEvt.defaultPrevented) {\n // Don't hide if event cancelled\n return;\n } // Tell the template to hide\n\n\n this.hideTemplate();\n },\n forceHide: function forceHide() {\n // Forcefully hides/destroys the template, regardless of any active triggers\n var tip = this.getTemplateElement();\n\n if (!tip || !this.localShow) {\n /* istanbul ignore next */\n return;\n } // Disable while open listeners/watchers\n // This is also done in the template `hide` event handler\n\n\n this.setWhileOpenListeners(false); // Clear any hover enter/leave event\n\n this.clearHoverTimeout();\n this.$_hoverState = '';\n this.clearActiveTriggers(); // Disable the fade animation on the template\n\n if (this.$_tip) {\n this.$_tip.noFade = true;\n } // Hide the tip (with force = true)\n\n\n this.hide(true);\n },\n enable: function enable() {\n this.$_enabled = true; // Create a non-cancelable BvEvent\n\n this.emitEvent(this.buildEvent(EVENT_NAME_ENABLED));\n },\n disable: function disable() {\n this.$_enabled = false; // Create a non-cancelable BvEvent\n\n this.emitEvent(this.buildEvent(EVENT_NAME_DISABLED));\n },\n // --- Handlers for template events ---\n // When template is inserted into DOM, but not yet shown\n onTemplateShow: function onTemplateShow() {\n // Enable while open listeners/watchers\n this.setWhileOpenListeners(true);\n },\n // When template show transition completes\n onTemplateShown: function onTemplateShown() {\n var prevHoverState = this.$_hoverState;\n this.$_hoverState = '';\n /* istanbul ignore next: occasional Node 10 coverage error */\n\n if (prevHoverState === 'out') {\n this.leave(null);\n } // Emit a non-cancelable BvEvent 'shown'\n\n\n this.emitEvent(this.buildEvent(EVENT_NAME_SHOWN));\n },\n // When template is starting to hide\n onTemplateHide: function onTemplateHide() {\n // Disable while open listeners/watchers\n this.setWhileOpenListeners(false);\n },\n // When template has completed closing (just before it self destructs)\n onTemplateHidden: function onTemplateHidden() {\n // Destroy the template\n this.destroyTemplate(); // Emit a non-cancelable BvEvent 'shown'\n\n this.emitEvent(this.buildEvent(EVENT_NAME_HIDDEN));\n },\n // --- Helper methods ---\n getTarget: function getTarget() {\n var target = this.target;\n\n if (isString(target)) {\n target = getById(target.replace(/^#/, ''));\n } else if (isFunction(target)) {\n target = target();\n } else if (target) {\n target = target.$el || target;\n }\n\n return isElement(target) ? target : null;\n },\n getPlacementTarget: function getPlacementTarget() {\n // This is the target that the tooltip will be placed on, which may not\n // necessarily be the same element that has the trigger event listeners\n // For now, this is the same as target\n // TODO:\n // Add in child selector support\n // Add in visibility checks for this element\n // Fallback to target if not found\n return this.getTarget();\n },\n getTargetId: function getTargetId() {\n // Returns the ID of the trigger element\n var target = this.getTarget();\n return target && target.id ? target.id : null;\n },\n getContainer: function getContainer() {\n // Handle case where container may be a component ref\n var container = this.container ? this.container.$el || this.container : false;\n var body = document.body;\n var target = this.getTarget(); // If we are in a modal, we append to the modal, If we\n // are in a sidebar, we append to the sidebar, else append\n // to body, unless a container is specified\n // TODO:\n // Template should periodically check to see if it is in dom\n // And if not, self destruct (if container got v-if'ed out of DOM)\n // Or this could possibly be part of the visibility check\n\n return container === false ? closest(CONTAINER_SELECTOR, target) || body :\n /*istanbul ignore next */\n isString(container) ?\n /*istanbul ignore next */\n getById(container.replace(/^#/, '')) || body :\n /*istanbul ignore next */\n body;\n },\n getBoundary: function getBoundary() {\n return this.boundary ? this.boundary.$el || this.boundary : 'scrollParent';\n },\n isInModal: function isInModal() {\n var target = this.getTarget();\n return target && closest(MODAL_SELECTOR, target);\n },\n isDropdown: function isDropdown() {\n // Returns true if trigger is a dropdown\n var target = this.getTarget();\n return target && hasClass(target, DROPDOWN_CLASS);\n },\n dropdownOpen: function dropdownOpen() {\n // Returns true if trigger is a dropdown and the dropdown menu is open\n var target = this.getTarget();\n return this.isDropdown() && target && select(DROPDOWN_OPEN_SELECTOR, target);\n },\n clearHoverTimeout: function clearHoverTimeout() {\n clearTimeout(this.$_hoverTimeout);\n this.$_hoverTimeout = null;\n },\n clearVisibilityInterval: function clearVisibilityInterval() {\n clearInterval(this.$_visibleInterval);\n this.$_visibleInterval = null;\n },\n clearActiveTriggers: function clearActiveTriggers() {\n for (var trigger in this.activeTrigger) {\n this.activeTrigger[trigger] = false;\n }\n },\n addAriaDescribedby: function addAriaDescribedby() {\n // Add aria-describedby on trigger element, without removing any other IDs\n var target = this.getTarget();\n var desc = getAttr(target, 'aria-describedby') || '';\n desc = desc.split(/\\s+/).concat(this.computedId).join(' ').trim(); // Update/add aria-described by\n\n setAttr(target, 'aria-describedby', desc);\n },\n removeAriaDescribedby: function removeAriaDescribedby() {\n var _this5 = this;\n\n // Remove aria-describedby on trigger element, without removing any other IDs\n var target = this.getTarget();\n var desc = getAttr(target, 'aria-describedby') || '';\n desc = desc.split(/\\s+/).filter(function (d) {\n return d !== _this5.computedId;\n }).join(' ').trim(); // Update or remove aria-describedby\n\n if (desc) {\n /* istanbul ignore next */\n setAttr(target, 'aria-describedby', desc);\n } else {\n removeAttr(target, 'aria-describedby');\n }\n },\n fixTitle: function fixTitle() {\n // If the target has a `title` attribute,\n // remove it and store it on a data attribute\n var target = this.getTarget();\n\n if (hasAttr(target, 'title')) {\n // Get `title` attribute value and remove it from target\n var title = getAttr(target, 'title');\n setAttr(target, 'title', ''); // Only set the data attribute when the value is truthy\n\n if (title) {\n setAttr(target, DATA_TITLE_ATTR, title);\n }\n }\n },\n restoreTitle: function restoreTitle() {\n // If the target had a `title` attribute,\n // restore it and remove the data attribute\n var target = this.getTarget();\n\n if (hasAttr(target, DATA_TITLE_ATTR)) {\n // Get data attribute value and remove it from target\n var title = getAttr(target, DATA_TITLE_ATTR);\n removeAttr(target, DATA_TITLE_ATTR); // Only restore the `title` attribute when the value is truthy\n\n if (title) {\n setAttr(target, 'title', title);\n }\n }\n },\n // --- BvEvent helpers ---\n buildEvent: function buildEvent(type) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n // Defaults to a non-cancellable event\n return new BvEvent(type, _objectSpread({\n cancelable: false,\n target: this.getTarget(),\n relatedTarget: this.getTemplateElement() || null,\n componentId: this.computedId,\n vueTarget: this\n }, options));\n },\n emitEvent: function emitEvent(bvEvent) {\n var type = bvEvent.type;\n this.emitOnRoot(getRootEventName(this.templateType, type), bvEvent);\n this.$emit(type, bvEvent);\n },\n // --- Event handler setup methods ---\n listen: function listen() {\n var _this6 = this;\n\n // Enable trigger event handlers\n var el = this.getTarget();\n\n if (!el) {\n /* istanbul ignore next */\n return;\n } // Listen for global show/hide events\n\n\n this.setRootListener(true); // Set up our listeners on the target trigger element\n\n this.computedTriggers.forEach(function (trigger) {\n if (trigger === 'click') {\n eventOn(el, 'click', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'focus') {\n eventOn(el, 'focusin', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n eventOn(el, 'focusout', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'blur') {\n // Used to close $tip when element looses focus\n\n /* istanbul ignore next */\n eventOn(el, 'focusout', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'hover') {\n eventOn(el, 'mouseenter', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n eventOn(el, 'mouseleave', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n }\n }, this);\n },\n\n /* istanbul ignore next */\n unListen: function unListen() {\n var _this7 = this;\n\n // Remove trigger event handlers\n var events = ['click', 'focusin', 'focusout', 'mouseenter', 'mouseleave'];\n var target = this.getTarget(); // Stop listening for global show/hide/enable/disable events\n\n this.setRootListener(false); // Clear out any active target listeners\n\n events.forEach(function (event) {\n target && eventOff(target, event, _this7.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n }, this);\n },\n setRootListener: function setRootListener(on) {\n // Listen for global `bv::{hide|show}::{tooltip|popover}` hide request event\n var $root = this.$root;\n\n if ($root) {\n var method = on ? '$on' : '$off';\n var type = this.templateType;\n $root[method](getRootActionEventName(type, EVENT_NAME_HIDE), this.doHide);\n $root[method](getRootActionEventName(type, EVENT_NAME_SHOW), this.doShow);\n $root[method](getRootActionEventName(type, EVENT_NAME_DISABLE), this.doDisable);\n $root[method](getRootActionEventName(type, EVENT_NAME_ENABLE), this.doEnable);\n }\n },\n setWhileOpenListeners: function setWhileOpenListeners(on) {\n // Events that are only registered when the template is showing\n // Modal close events\n this.setModalListener(on); // Dropdown open events (if we are attached to a dropdown)\n\n this.setDropdownListener(on); // Periodic $element visibility check\n // For handling when tip target is in , tabs, carousel, etc\n\n this.visibleCheck(on); // On-touch start listeners\n\n this.setOnTouchStartListener(on);\n },\n // Handler for periodic visibility check\n visibleCheck: function visibleCheck(on) {\n var _this8 = this;\n\n this.clearVisibilityInterval();\n var target = this.getTarget();\n var tip = this.getTemplateElement();\n\n if (on) {\n this.$_visibleInterval = setInterval(function () {\n if (tip && _this8.localShow && (!target.parentNode || !isVisible(target))) {\n // Target element is no longer visible or not in DOM, so force-hide the tooltip\n _this8.forceHide();\n }\n }, 100);\n }\n },\n setModalListener: function setModalListener(on) {\n // Handle case where tooltip/target is in a modal\n if (this.isInModal()) {\n // We can listen for modal hidden events on `$root`\n this.$root[on ? '$on' : '$off'](ROOT_EVENT_NAME_MODAL_HIDDEN, this.forceHide);\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support `ontouchstart` */\n setOnTouchStartListener: function setOnTouchStartListener(on) {\n var _this9 = this;\n\n // If this is a touch-enabled device we add extra empty\n // `mouseover` listeners to the body's immediate children\n // Only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n arrayFrom(document.body.children).forEach(function (el) {\n eventOnOff(on, el, 'mouseover', _this9.$_noop);\n });\n }\n },\n setDropdownListener: function setDropdownListener(on) {\n var target = this.getTarget();\n\n if (!target || !this.$root || !this.isDropdown) {\n return;\n } // We can listen for dropdown shown events on its instance\n // TODO:\n // We could grab the ID from the dropdown, and listen for\n // $root events for that particular dropdown id\n // Dropdown shown and hidden events will need to emit\n // Note: Dropdown auto-ID happens in a `$nextTick()` after mount\n // So the ID lookup would need to be done in a `$nextTick()`\n\n\n if (target.__vue__) {\n target.__vue__[on ? '$on' : '$off'](EVENT_NAME_SHOWN, this.forceHide);\n }\n },\n // --- Event handlers ---\n handleEvent: function handleEvent(event) {\n // General trigger event handler\n // target is the trigger element\n var target = this.getTarget();\n\n if (!target || isDisabled(target) || !this.$_enabled || this.dropdownOpen()) {\n // If disabled or not enabled, or if a dropdown that is open, don't do anything\n // If tip is shown before element gets disabled, then tip will not\n // close until no longer disabled or forcefully closed\n return;\n }\n\n var type = event.type;\n var triggers = this.computedTriggers;\n\n if (type === 'click' && arrayIncludes(triggers, 'click')) {\n this.click(event);\n } else if (type === 'mouseenter' && arrayIncludes(triggers, 'hover')) {\n // `mouseenter` is a non-bubbling event\n this.enter(event);\n } else if (type === 'focusin' && arrayIncludes(triggers, 'focus')) {\n // `focusin` is a bubbling event\n // `event` includes `relatedTarget` (element losing focus)\n this.enter(event);\n } else if (type === 'focusout' && (arrayIncludes(triggers, 'focus') || arrayIncludes(triggers, 'blur')) || type === 'mouseleave' && arrayIncludes(triggers, 'hover')) {\n // `focusout` is a bubbling event\n // `mouseleave` is a non-bubbling event\n // `tip` is the template (will be null if not open)\n var tip = this.getTemplateElement(); // `eventTarget` is the element which is losing focus/hover and\n\n var eventTarget = event.target; // `relatedTarget` is the element gaining focus/hover\n\n var relatedTarget = event.relatedTarget;\n /* istanbul ignore next */\n\n if ( // From tip to target\n tip && contains(tip, eventTarget) && contains(target, relatedTarget) || // From target to tip\n tip && contains(target, eventTarget) && contains(tip, relatedTarget) || // Within tip\n tip && contains(tip, eventTarget) && contains(tip, relatedTarget) || // Within target\n contains(target, eventTarget) && contains(target, relatedTarget)) {\n // If focus/hover moves within `tip` and `target`, don't trigger a leave\n return;\n } // Otherwise trigger a leave\n\n\n this.leave(event);\n }\n },\n doHide: function doHide(id) {\n // Programmatically hide tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Close all tooltips or popovers, or this specific tip (with ID)\n this.forceHide();\n }\n },\n doShow: function doShow(id) {\n // Programmatically show tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Open all tooltips or popovers, or this specific tip (with ID)\n this.show();\n }\n },\n\n /*istanbul ignore next: ignore for now */\n doDisable: function doDisable(id)\n /*istanbul ignore next: ignore for now */\n {\n // Programmatically disable tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Disable all tooltips or popovers (no ID), or this specific tip (with ID)\n this.disable();\n }\n },\n\n /*istanbul ignore next: ignore for now */\n doEnable: function doEnable(id)\n /*istanbul ignore next: ignore for now */\n {\n // Programmatically enable tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Enable all tooltips or popovers (no ID), or this specific tip (with ID)\n this.enable();\n }\n },\n click: function click(event) {\n if (!this.$_enabled || this.dropdownOpen()) {\n /* istanbul ignore next */\n return;\n } // Get around a WebKit bug where `click` does not trigger focus events\n // On most browsers, `click` triggers a `focusin`/`focus` event first\n // Needed so that trigger 'click blur' works on iOS\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/5099\n // We use `currentTarget` rather than `target` to trigger on the\n // element, not the inner content\n\n\n attemptFocus(event.currentTarget);\n this.activeTrigger.click = !this.activeTrigger.click;\n\n if (this.isWithActiveTrigger) {\n this.enter(null);\n } else {\n /* istanbul ignore next */\n this.leave(null);\n }\n },\n\n /* istanbul ignore next */\n toggle: function toggle() {\n // Manual toggle handler\n if (!this.$_enabled || this.dropdownOpen()) {\n /* istanbul ignore next */\n return;\n } // Should we register as an active trigger?\n // this.activeTrigger.manual = !this.activeTrigger.manual\n\n\n if (this.localShow) {\n this.leave(null);\n } else {\n this.enter(null);\n }\n },\n enter: function enter() {\n var _this10 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n // Opening trigger handler\n // Note: Click events are sent with event === null\n if (event) {\n this.activeTrigger[event.type === 'focusin' ? 'focus' : 'hover'] = true;\n }\n /* istanbul ignore next */\n\n\n if (this.localShow || this.$_hoverState === 'in') {\n this.$_hoverState = 'in';\n return;\n }\n\n this.clearHoverTimeout();\n this.$_hoverState = 'in';\n\n if (!this.computedDelay.show) {\n this.show();\n } else {\n // Hide any title attribute while enter delay is active\n this.fixTitle();\n this.$_hoverTimeout = setTimeout(function () {\n /* istanbul ignore else */\n if (_this10.$_hoverState === 'in') {\n _this10.show();\n } else if (!_this10.localShow) {\n _this10.restoreTitle();\n }\n }, this.computedDelay.show);\n }\n },\n leave: function leave() {\n var _this11 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n // Closing trigger handler\n // Note: Click events are sent with event === null\n if (event) {\n this.activeTrigger[event.type === 'focusout' ? 'focus' : 'hover'] = false;\n /* istanbul ignore next */\n\n if (event.type === 'focusout' && arrayIncludes(this.computedTriggers, 'blur')) {\n // Special case for `blur`: we clear out the other triggers\n this.activeTrigger.click = false;\n this.activeTrigger.hover = false;\n }\n }\n /* istanbul ignore next: ignore for now */\n\n\n if (this.isWithActiveTrigger) {\n return;\n }\n\n this.clearHoverTimeout();\n this.$_hoverState = 'out';\n\n if (!this.computedDelay.hide) {\n this.hide();\n } else {\n this.$_hoverTimeout = setTimeout(function () {\n if (_this11.$_hoverState === 'out') {\n _this11.hide();\n }\n }, this.computedDelay.hide);\n }\n }\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});","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login-v1.vue?vue&type=style&index=0&lang=scss&\"","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});","// We haven't added icon's computed property because it makes this mixin coupled with UI\r\nexport const togglePasswordVisibility = {\r\n data() {\r\n return {\r\n passwordFieldType: 'password',\r\n }\r\n },\r\n methods: {\r\n togglePasswordVisibility() {\r\n this.passwordFieldType = this.passwordFieldType === 'password' ? 'text' : 'password'\r\n },\r\n },\r\n}\r\n\r\nexport const _ = null\r\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});","var _objectSpread2;\n\nfunction 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_FORM_CHECKBOX } from '../../constants/components';\nimport { EVENT_NAME_CHANGE, MODEL_EVENT_NAME_PREFIX } from '../../constants/events';\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { isArray } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { looseIndexOf } from '../../utils/loose-index-of';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { MODEL_EVENT_NAME, formRadioCheckMixin, props as formRadioCheckProps } from '../../mixins/form-radio-check'; // --- Constants ---\n\nvar MODEL_PROP_NAME_INDETERMINATE = 'indeterminate';\nvar MODEL_EVENT_NAME_INDETERMINATE = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_INDETERMINATE; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, formRadioCheckProps), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, MODEL_PROP_NAME_INDETERMINATE, makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_objectSpread2, \"switch\", makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_objectSpread2, \"uncheckedValue\", makeProp(PROP_TYPE_ANY, false)), _defineProperty(_objectSpread2, \"value\", makeProp(PROP_TYPE_ANY, true)), _objectSpread2))), NAME_FORM_CHECKBOX); // --- Main component ---\n// @vue/component\n\nexport var BFormCheckbox = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_CHECKBOX,\n mixins: [formRadioCheckMixin],\n inject: {\n bvGroup: {\n from: 'bvCheckGroup',\n default: null\n }\n },\n props: props,\n computed: {\n isChecked: function isChecked() {\n var value = this.value,\n checked = this.computedLocalChecked;\n return isArray(checked) ? looseIndexOf(checked, value) > -1 : looseEqual(checked, value);\n },\n isRadio: function isRadio() {\n return false;\n }\n },\n watch: _defineProperty({}, MODEL_PROP_NAME_INDETERMINATE, function (newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.setIndeterminate(newValue);\n }\n }),\n mounted: function mounted() {\n // Set initial indeterminate state\n this.setIndeterminate(this[MODEL_PROP_NAME_INDETERMINATE]);\n },\n methods: {\n computedLocalCheckedWatcher: function computedLocalCheckedWatcher(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n var $input = this.$refs.input;\n\n if ($input) {\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, $input.indeterminate);\n }\n }\n },\n handleChange: function handleChange(_ref) {\n var _this = this;\n\n var _ref$target = _ref.target,\n checked = _ref$target.checked,\n indeterminate = _ref$target.indeterminate;\n var value = this.value,\n uncheckedValue = this.uncheckedValue; // Update `computedLocalChecked`\n\n var localChecked = this.computedLocalChecked;\n\n if (isArray(localChecked)) {\n var index = looseIndexOf(localChecked, value);\n\n if (checked && index < 0) {\n // Add value to array\n localChecked = localChecked.concat(value);\n } else if (!checked && index > -1) {\n // Remove value from array\n localChecked = localChecked.slice(0, index).concat(localChecked.slice(index + 1));\n }\n } else {\n localChecked = checked ? value : uncheckedValue;\n }\n\n this.computedLocalChecked = localChecked; // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n\n this.$nextTick(function () {\n // Change is only emitted on user interaction\n _this.$emit(EVENT_NAME_CHANGE, localChecked); // If this is a child of a group, we emit a change event on it as well\n\n\n if (_this.isGroup) {\n _this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked);\n }\n\n _this.$emit(MODEL_EVENT_NAME_INDETERMINATE, indeterminate);\n });\n },\n setIndeterminate: function setIndeterminate(state) {\n // Indeterminate only supported in single checkbox mode\n if (isArray(this.computedLocalChecked)) {\n state = false;\n }\n\n var $input = this.$refs.input;\n\n if ($input) {\n $input.indeterminate = state; // Emit update event to prop\n\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, state);\n }\n }\n }\n});","import { looseEqual } from './loose-equal'; // Assumes that the first argument is an array\n\nexport var looseIndexOf = function looseIndexOf(array, value) {\n for (var i = 0; i < array.length; i++) {\n if (looseEqual(array[i], value)) {\n return i;\n }\n }\n\n return -1;\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_INPUT_GROUP_APPEND } from '../../constants/components';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'; // --- Props ---\n\nexport var props = makePropsConfigurable(omit(BInputGroupAddonProps, ['append']), NAME_INPUT_GROUP_APPEND); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupAppend = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_APPEND,\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 // Pass all our data down to child, and set `append` to `true`\n return h(BInputGroupAddon, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n append: true\n })\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_TEXT } 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_INPUT_GROUP_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupText = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_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 staticClass: 'input-group-text'\n }), children);\n }\n});","var _watch, _methods;\n\nfunction 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 { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { EVENT_NAME_CHANGE } from '../constants/events';\nimport { attemptBlur, attemptFocus } from '../utils/dom';\nimport { isBoolean } from '../utils/inspect';\nimport { looseEqual } from '../utils/loose-equal';\nimport { makeModelMixin } from '../utils/model';\nimport { sortKeys } from '../utils/object';\nimport { makeProp, makePropsConfigurable } from '../utils/props';\nimport { attrsMixin } from './attrs';\nimport { formControlMixin, props as formControlProps } from './form-control';\nimport { formCustomMixin, props as formCustomProps } from './form-custom';\nimport { formSizeMixin, props as formSizeProps } from './form-size';\nimport { formStateMixin, props as formStateProps } from './form-state';\nimport { idMixin, props as idProps } from './id';\nimport { normalizeSlotMixin } from './normalize-slot'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('checked', {\n defaultValue: null\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event;\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), modelProps), formControlProps), formSizeProps), formStateProps), formCustomProps), {}, {\n ariaLabel: makeProp(PROP_TYPE_STRING),\n ariaLabelledby: makeProp(PROP_TYPE_STRING),\n // Only applicable in standalone mode (non group)\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n // Only applicable when rendered with button style\n buttonVariant: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n value: makeProp(PROP_TYPE_ANY)\n})), 'formRadioCheckControls'); // --- Mixin ---\n// @vue/component\n\nexport var formRadioCheckMixin = Vue.extend({\n mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin, formControlMixin, formSizeMixin, formStateMixin, formCustomMixin],\n inheritAttrs: false,\n props: props,\n data: function data() {\n return {\n localChecked: this.isGroup ? this.bvGroup[MODEL_PROP_NAME] : this[MODEL_PROP_NAME],\n hasFocus: false\n };\n },\n computed: {\n computedLocalChecked: {\n get: function get() {\n return this.isGroup ? this.bvGroup.localChecked : this.localChecked;\n },\n set: function set(value) {\n if (this.isGroup) {\n this.bvGroup.localChecked = value;\n } else {\n this.localChecked = value;\n }\n }\n },\n isChecked: function isChecked() {\n return looseEqual(this.value, this.computedLocalChecked);\n },\n isRadio: function isRadio() {\n return true;\n },\n isGroup: function isGroup() {\n // Is this check/radio a child of check-group or radio-group?\n return !!this.bvGroup;\n },\n isBtnMode: function isBtnMode() {\n // Support button style in single input mode\n return this.isGroup ? this.bvGroup.buttons : this.button;\n },\n isPlain: function isPlain() {\n return this.isBtnMode ? false : this.isGroup ? this.bvGroup.plain : this.plain;\n },\n isCustom: function isCustom() {\n return this.isBtnMode ? false : !this.isPlain;\n },\n isSwitch: function isSwitch() {\n // Custom switch styling (checkboxes only)\n return this.isBtnMode || this.isRadio || this.isPlain ? false : this.isGroup ? this.bvGroup.switches : this.switch;\n },\n isInline: function isInline() {\n return this.isGroup ? this.bvGroup.inline : this.inline;\n },\n isDisabled: function isDisabled() {\n // Child can be disabled while parent isn't, but is always disabled if group is\n return this.isGroup ? this.bvGroup.disabled || this.disabled : this.disabled;\n },\n isRequired: function isRequired() {\n // Required only works when a name is provided for the input(s)\n // Child can only be required when parent is\n // Groups will always have a name (either user supplied or auto generated)\n return this.computedName && (this.isGroup ? this.bvGroup.required : this.required);\n },\n computedName: function computedName() {\n // Group name preferred over local name\n return (this.isGroup ? this.bvGroup.groupName : this.name) || null;\n },\n computedForm: function computedForm() {\n return (this.isGroup ? this.bvGroup.form : this.form) || null;\n },\n computedSize: function computedSize() {\n return (this.isGroup ? this.bvGroup.size : this.size) || '';\n },\n computedState: function computedState() {\n return this.isGroup ? this.bvGroup.computedState : isBoolean(this.state) ? this.state : null;\n },\n computedButtonVariant: function computedButtonVariant() {\n // Local variant preferred over group variant\n var buttonVariant = this.buttonVariant;\n\n if (buttonVariant) {\n return buttonVariant;\n }\n\n if (this.isGroup && this.bvGroup.buttonVariant) {\n return this.bvGroup.buttonVariant;\n }\n\n return 'secondary';\n },\n buttonClasses: function buttonClasses() {\n var _ref;\n\n var computedSize = this.computedSize;\n return ['btn', \"btn-\".concat(this.computedButtonVariant), (_ref = {}, _defineProperty(_ref, \"btn-\".concat(computedSize), computedSize), _defineProperty(_ref, \"disabled\", this.isDisabled), _defineProperty(_ref, \"active\", this.isChecked), _defineProperty(_ref, \"focus\", this.hasFocus), _ref)];\n },\n computedAttrs: function computedAttrs() {\n var disabled = this.isDisabled,\n required = this.isRequired;\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n id: this.safeId(),\n type: this.isRadio ? 'radio' : 'checkbox',\n name: this.computedName,\n form: this.computedForm,\n disabled: disabled,\n required: required,\n 'aria-required': required || null,\n 'aria-label': this.ariaLabel || null,\n 'aria-labelledby': this.ariaLabelledby || null\n });\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function () {\n this[\"\".concat(MODEL_PROP_NAME, \"Watcher\")].apply(this, arguments);\n }), _defineProperty(_watch, \"computedLocalChecked\", function computedLocalChecked() {\n this.computedLocalCheckedWatcher.apply(this, arguments);\n }), _watch),\n methods: (_methods = {}, _defineProperty(_methods, \"\".concat(MODEL_PROP_NAME, \"Watcher\"), function Watcher(newValue) {\n if (!looseEqual(newValue, this.computedLocalChecked)) {\n this.computedLocalChecked = newValue;\n }\n }), _defineProperty(_methods, \"computedLocalCheckedWatcher\", function computedLocalCheckedWatcher(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n }), _defineProperty(_methods, \"handleChange\", function handleChange(_ref2) {\n var _this = this;\n\n var checked = _ref2.target.checked;\n var value = this.value;\n var localChecked = checked ? value : null;\n this.computedLocalChecked = value; // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n\n this.$nextTick(function () {\n // Change is only emitted on user interaction\n _this.$emit(EVENT_NAME_CHANGE, localChecked); // If this is a child of a group, we emit a change event on it as well\n\n\n if (_this.isGroup) {\n _this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked);\n }\n });\n }), _defineProperty(_methods, \"handleFocus\", function handleFocus(event) {\n // When in buttons mode, we need to add 'focus' class to label when input focused\n // As it is the hidden input which has actual focus\n if (event.target) {\n if (event.type === 'focus') {\n this.hasFocus = true;\n } else if (event.type === 'blur') {\n this.hasFocus = false;\n }\n }\n }), _defineProperty(_methods, \"focus\", function focus() {\n if (!this.isDisabled) {\n attemptFocus(this.$refs.input);\n }\n }), _defineProperty(_methods, \"blur\", function blur() {\n if (!this.isDisabled) {\n attemptBlur(this.$refs.input);\n }\n }), _methods),\n render: function render(h) {\n var isRadio = this.isRadio,\n isBtnMode = this.isBtnMode,\n isPlain = this.isPlain,\n isCustom = this.isCustom,\n isInline = this.isInline,\n isSwitch = this.isSwitch,\n computedSize = this.computedSize,\n bvAttrs = this.bvAttrs;\n var $content = this.normalizeSlot();\n var $input = h('input', {\n class: [{\n 'form-check-input': isPlain,\n 'custom-control-input': isCustom,\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n 'position-static': isPlain && !$content\n }, isBtnMode ? '' : this.stateClass],\n directives: [{\n name: 'model',\n value: this.computedLocalChecked\n }],\n attrs: this.computedAttrs,\n domProps: {\n value: this.value,\n checked: this.isChecked\n },\n on: _objectSpread({\n change: this.handleChange\n }, isBtnMode ? {\n focus: this.handleFocus,\n blur: this.handleFocus\n } : {}),\n key: 'input',\n ref: 'input'\n });\n\n if (isBtnMode) {\n var $button = h('label', {\n class: this.buttonClasses\n }, [$input, $content]);\n\n if (!this.isGroup) {\n // Standalone button mode, so wrap in 'btn-group-toggle'\n // and flag it as inline-block to mimic regular buttons\n $button = h('div', {\n class: ['btn-group-toggle', 'd-inline-block']\n }, [$button]);\n }\n\n return $button;\n } // If no label content in plain mode we dont render the label\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n\n\n var $label = h();\n\n if (!(isPlain && !$content)) {\n $label = h('label', {\n class: {\n 'form-check-label': isPlain,\n 'custom-control-label': isCustom\n },\n attrs: {\n for: this.safeId()\n }\n }, $content);\n }\n\n return h('div', {\n class: [_defineProperty({\n 'form-check': isPlain,\n 'form-check-inline': isPlain && isInline,\n 'custom-control': isCustom,\n 'custom-control-inline': isCustom && isInline,\n 'custom-checkbox': isCustom && !isRadio && !isSwitch,\n 'custom-switch': isSwitch,\n 'custom-radio': isCustom && isRadio\n }, \"b-custom-control-\".concat(computedSize), computedSize && !isBtnMode), bvAttrs.class],\n style: bvAttrs.style\n }, [$input, $label]);\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});","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToastificationContent.vue?vue&type=style&index=0&id=169b1955&lang=scss&scoped=true&\"","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});","// Base on-demand component for tooltip / popover templates\n//\n// Currently:\n// Responsible for positioning and transitioning the template\n// Templates are only instantiated when shown, and destroyed when hidden\n//\nimport Popper from 'popper.js';\nimport { Vue } from '../../../vue';\nimport { NAME_POPPER } from '../../../constants/components';\nimport { EVENT_NAME_HIDDEN, EVENT_NAME_HIDE, EVENT_NAME_SHOW, EVENT_NAME_SHOWN, HOOK_EVENT_NAME_DESTROYED } from '../../../constants/events';\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../../constants/props';\nimport { HTMLElement, SVGElement } from '../../../constants/safe-types';\nimport { getCS, requestAF, select } from '../../../utils/dom';\nimport { toFloat } from '../../../utils/number';\nimport { makeProp } from '../../../utils/props';\nimport { BVTransition } from '../../transition/bv-transition'; // --- Constants ---\n\nvar AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: 'right',\n BOTTOM: 'bottom',\n LEFT: 'left',\n TOPLEFT: 'top',\n TOPRIGHT: 'top',\n RIGHTTOP: 'right',\n RIGHTBOTTOM: 'right',\n BOTTOMLEFT: 'bottom',\n BOTTOMRIGHT: 'bottom',\n LEFTTOP: 'left',\n LEFTBOTTOM: 'left'\n};\nvar OffsetMap = {\n AUTO: 0,\n TOPLEFT: -1,\n TOP: 0,\n TOPRIGHT: +1,\n RIGHTTOP: -1,\n RIGHT: 0,\n RIGHTBOTTOM: +1,\n BOTTOMLEFT: -1,\n BOTTOM: 0,\n BOTTOMRIGHT: +1,\n LEFTTOP: -1,\n LEFT: 0,\n LEFTBOTTOM: +1\n}; // --- Props ---\n\nexport var props = {\n // The minimum distance (in `px`) from the edge of the\n // tooltip/popover that the arrow can be positioned\n arrowPadding: makeProp(PROP_TYPE_NUMBER_STRING, 6),\n // 'scrollParent', 'viewport', 'window', or `Element`\n boundary: makeProp([HTMLElement, PROP_TYPE_STRING], 'scrollParent'),\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels\n boundaryPadding: makeProp(PROP_TYPE_NUMBER_STRING, 5),\n fallbackPlacement: makeProp(PROP_TYPE_ARRAY_STRING, 'flip'),\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n placement: makeProp(PROP_TYPE_STRING, 'top'),\n // Element that the tooltip/popover is positioned relative to\n target: makeProp([HTMLElement, SVGElement])\n}; // --- Main component ---\n// @vue/component\n\nexport var BVPopper = /*#__PURE__*/Vue.extend({\n name: NAME_POPPER,\n props: props,\n data: function data() {\n return {\n // reactive props set by parent\n noFade: false,\n // State related data\n localShow: true,\n attachment: this.getAttachment(this.placement)\n };\n },\n computed: {\n /* istanbul ignore next */\n templateType: function templateType() {\n // Overridden by template component\n return 'unknown';\n },\n popperConfig: function popperConfig() {\n var _this = this;\n\n var placement = this.placement;\n return {\n placement: this.getAttachment(placement),\n modifiers: {\n offset: {\n offset: this.getOffset(placement)\n },\n flip: {\n behavior: this.fallbackPlacement\n },\n // `arrow.element` can also be a reference to an HTML Element\n // maybe we should make this a `$ref` in the templates?\n arrow: {\n element: '.arrow'\n },\n preventOverflow: {\n padding: this.boundaryPadding,\n boundariesElement: this.boundary\n }\n },\n onCreate: function onCreate(data) {\n // Handle flipping arrow classes\n if (data.originalPlacement !== data.placement) {\n /* istanbul ignore next: can't test in JSDOM */\n _this.popperPlacementChange(data);\n }\n },\n onUpdate: function onUpdate(data) {\n // Handle flipping arrow classes\n _this.popperPlacementChange(data);\n }\n };\n }\n },\n created: function created() {\n var _this2 = this;\n\n // Note: We are created on-demand, and should be guaranteed that\n // DOM is rendered/ready by the time the created hook runs\n this.$_popper = null; // Ensure we show as we mount\n\n this.localShow = true; // Create popper instance before shown\n\n this.$on(EVENT_NAME_SHOW, function (el) {\n _this2.popperCreate(el);\n }); // Self destruct handler\n\n var handleDestroy = function handleDestroy() {\n _this2.$nextTick(function () {\n // In a `requestAF()` to release control back to application\n requestAF(function () {\n _this2.$destroy();\n });\n });\n }; // Self destruct if parent destroyed\n\n\n this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy); // Self destruct after hidden\n\n this.$once(EVENT_NAME_HIDDEN, handleDestroy);\n },\n beforeMount: function beforeMount() {\n // Ensure that the attachment position is correct before mounting\n // as our propsData is added after `new Template({...})`\n this.attachment = this.getAttachment(this.placement);\n },\n updated: function updated() {\n // Update popper if needed\n // TODO: Should this be a watcher on `this.popperConfig` instead?\n this.updatePopper();\n },\n beforeDestroy: function beforeDestroy() {\n this.destroyPopper();\n },\n destroyed: function destroyed() {\n // Make sure template is removed from DOM\n var el = this.$el;\n el && el.parentNode && el.parentNode.removeChild(el);\n },\n methods: {\n // \"Public\" method to trigger hide template\n hide: function hide() {\n this.localShow = false;\n },\n // Private\n getAttachment: function getAttachment(placement) {\n return AttachmentMap[String(placement).toUpperCase()] || 'auto';\n },\n getOffset: function getOffset(placement) {\n if (!this.offset) {\n // Could set a ref for the arrow element\n var arrow = this.$refs.arrow || select('.arrow', this.$el);\n var arrowOffset = toFloat(getCS(arrow).width, 0) + toFloat(this.arrowPadding, 0);\n\n switch (OffsetMap[String(placement).toUpperCase()] || 0) {\n /* istanbul ignore next: can't test in JSDOM */\n case +1:\n /* istanbul ignore next: can't test in JSDOM */\n return \"+50%p - \".concat(arrowOffset, \"px\");\n\n /* istanbul ignore next: can't test in JSDOM */\n\n case -1:\n /* istanbul ignore next: can't test in JSDOM */\n return \"-50%p + \".concat(arrowOffset, \"px\");\n\n default:\n return 0;\n }\n }\n /* istanbul ignore next */\n\n\n return this.offset;\n },\n popperCreate: function popperCreate(el) {\n this.destroyPopper(); // We use `el` rather than `this.$el` just in case the original\n // mountpoint root element type was changed by the template\n\n this.$_popper = new Popper(this.target, el, this.popperConfig);\n },\n destroyPopper: function destroyPopper() {\n this.$_popper && this.$_popper.destroy();\n this.$_popper = null;\n },\n updatePopper: function updatePopper() {\n this.$_popper && this.$_popper.scheduleUpdate();\n },\n popperPlacementChange: function popperPlacementChange(data) {\n // Callback used by popper to adjust the arrow placement\n this.attachment = this.getAttachment(data.placement);\n },\n\n /* istanbul ignore next */\n renderTemplate: function renderTemplate(h) {\n // Will be overridden by templates\n return h('div');\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n var noFade = this.noFade; // Note: 'show' and 'fade' classes are only appled during transition\n\n return h(BVTransition, {\n // Transitions as soon as mounted\n props: {\n appear: true,\n noFade: noFade\n },\n on: {\n // Events used by parent component/instance\n beforeEnter: function beforeEnter(el) {\n return _this3.$emit(EVENT_NAME_SHOW, el);\n },\n afterEnter: function afterEnter(el) {\n return _this3.$emit(EVENT_NAME_SHOWN, el);\n },\n beforeLeave: function beforeLeave(el) {\n return _this3.$emit(EVENT_NAME_HIDE, el);\n },\n afterLeave: function afterLeave(el) {\n return _this3.$emit(EVENT_NAME_HIDDEN, el);\n }\n }\n }, [this.localShow ? this.renderTemplate(h) : h()]);\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_TOOLTIP_TEMPLATE } from '../../../constants/components';\nimport { EVENT_NAME_FOCUSIN, EVENT_NAME_FOCUSOUT, EVENT_NAME_MOUSEENTER, EVENT_NAME_MOUSELEAVE } from '../../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props';\nimport { isFunction } from '../../../utils/inspect';\nimport { makeProp } from '../../../utils/props';\nimport { scopedStyleMixin } from '../../../mixins/scoped-style';\nimport { BVPopper } from './bv-popper'; // --- Props ---\n\nexport var props = {\n // Used only by the directive versions\n html: makeProp(PROP_TYPE_BOOLEAN, false),\n // Other non-reactive (while open) props are pulled in from BVPopper\n id: makeProp(PROP_TYPE_STRING)\n}; // --- Main component ---\n// @vue/component\n\nexport var BVTooltipTemplate = /*#__PURE__*/Vue.extend({\n name: NAME_TOOLTIP_TEMPLATE,\n extends: BVPopper,\n mixins: [scopedStyleMixin],\n props: props,\n data: function data() {\n // We use data, rather than props to ensure reactivity\n // Parent component will directly set this data\n return {\n title: '',\n content: '',\n variant: null,\n customClass: null,\n interactive: true\n };\n },\n computed: {\n templateType: function templateType() {\n return 'tooltip';\n },\n templateClasses: function templateClasses() {\n var _ref;\n\n var variant = this.variant,\n attachment = this.attachment,\n templateType = this.templateType;\n return [(_ref = {\n // Disables pointer events to hide the tooltip when the user\n // hovers over its content\n noninteractive: !this.interactive\n }, _defineProperty(_ref, \"b-\".concat(templateType, \"-\").concat(variant), variant), _defineProperty(_ref, \"bs-\".concat(templateType, \"-\").concat(attachment), attachment), _ref), this.customClass];\n },\n templateAttributes: function templateAttributes() {\n var id = this.id;\n return _objectSpread(_objectSpread({}, this.$parent.$parent.$attrs), {}, {\n id: id,\n role: 'tooltip',\n tabindex: '-1'\n }, this.scopedStyleAttrs);\n },\n templateListeners: function templateListeners() {\n var _this = this;\n\n // Used for hover/focus trigger listeners\n return {\n mouseenter:\n /* istanbul ignore next */\n function mouseenter(event) {\n _this.$emit(EVENT_NAME_MOUSEENTER, event);\n },\n mouseleave:\n /* istanbul ignore next */\n function mouseleave(event) {\n _this.$emit(EVENT_NAME_MOUSELEAVE, event);\n },\n focusin:\n /* istanbul ignore next */\n function focusin(event) {\n _this.$emit(EVENT_NAME_FOCUSIN, event);\n },\n focusout:\n /* istanbul ignore next */\n function focusout(event) {\n _this.$emit(EVENT_NAME_FOCUSOUT, event);\n }\n };\n }\n },\n methods: {\n renderTemplate: function renderTemplate(h) {\n var title = this.title; // Title can be a scoped slot function\n\n var $title = isFunction(title) ? title({}) : title; // Directive versions only\n\n var domProps = this.html && !isFunction(title) ? {\n innerHTML: title\n } : {};\n return h('div', {\n staticClass: 'tooltip b-tooltip',\n class: this.templateClasses,\n attrs: this.templateAttributes,\n on: this.templateListeners\n }, [h('div', {\n staticClass: 'arrow',\n ref: 'arrow'\n }), h('div', {\n staticClass: 'tooltip-inner',\n domProps: domProps\n }, [$title])]);\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_AVATAR } from '../../constants/components';\nimport { EVENT_NAME_CLICK, EVENT_NAME_IMG_ERROR } from '../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_BADGE } from '../../constants/slots';\nimport { isNumber, isNumeric, isString } from '../../utils/inspect';\nimport { toFloat } from '../../utils/number';\nimport { omit, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props';\nimport { isLink } from '../../utils/router';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BIcon } from '../../icons/icon';\nimport { BIconPersonFill } from '../../icons/icons';\nimport { BButton } from '../button/button';\nimport { BLink, props as BLinkProps } from '../link/link'; // --- Constants ---\n\nvar CLASS_NAME = 'b-avatar';\nvar SIZES = ['sm', null, 'lg'];\nvar FONT_SIZE_SCALE = 0.4;\nvar BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7; // --- Helper methods ---\n\nexport var computeSize = function computeSize(value) {\n // Parse to number when value is a float-like string\n value = isString(value) && isNumeric(value) ? toFloat(value, 0) : value; // Convert all numbers to pixel values\n\n return isNumber(value) ? \"\".concat(value, \"px\") : value || null;\n}; // --- Props ---\n\nvar linkProps = omit(BLinkProps, ['active', 'event', 'routerTag']);\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, linkProps), {}, {\n alt: makeProp(PROP_TYPE_STRING, 'avatar'),\n ariaLabel: makeProp(PROP_TYPE_STRING),\n badge: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n badgeLeft: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeOffset: makeProp(PROP_TYPE_STRING),\n badgeTop: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n buttonType: makeProp(PROP_TYPE_STRING, 'button'),\n icon: makeProp(PROP_TYPE_STRING),\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n size: makeProp(PROP_TYPE_NUMBER_STRING),\n square: makeProp(PROP_TYPE_BOOLEAN, false),\n src: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n})), NAME_AVATAR); // --- Main component ---\n// @vue/component\n\nexport var BAvatar = /*#__PURE__*/Vue.extend({\n name: NAME_AVATAR,\n mixins: [normalizeSlotMixin],\n inject: {\n bvAvatarGroup: {\n default: null\n }\n },\n props: props,\n data: function data() {\n return {\n localSrc: this.src || null\n };\n },\n computed: {\n computedSize: function computedSize() {\n // Always use the avatar group size\n var bvAvatarGroup = this.bvAvatarGroup;\n return computeSize(bvAvatarGroup ? bvAvatarGroup.size : this.size);\n },\n computedVariant: function computedVariant() {\n var bvAvatarGroup = this.bvAvatarGroup;\n return bvAvatarGroup && bvAvatarGroup.variant ? bvAvatarGroup.variant : this.variant;\n },\n computedRounded: function computedRounded() {\n var bvAvatarGroup = this.bvAvatarGroup;\n var square = bvAvatarGroup && bvAvatarGroup.square ? true : this.square;\n var rounded = bvAvatarGroup && bvAvatarGroup.rounded ? bvAvatarGroup.rounded : this.rounded;\n return square ? '0' : rounded === '' ? true : rounded || 'circle';\n },\n fontStyle: function fontStyle() {\n var size = this.computedSize;\n var fontSize = SIZES.indexOf(size) === -1 ? \"calc(\".concat(size, \" * \").concat(FONT_SIZE_SCALE, \")\") : null;\n return fontSize ? {\n fontSize: fontSize\n } : {};\n },\n marginStyle: function marginStyle() {\n var size = this.computedSize,\n bvAvatarGroup = this.bvAvatarGroup;\n var overlapScale = bvAvatarGroup ? bvAvatarGroup.overlapScale : 0;\n var value = size && overlapScale ? \"calc(\".concat(size, \" * -\").concat(overlapScale, \")\") : null;\n return value ? {\n marginLeft: value,\n marginRight: value\n } : {};\n },\n badgeStyle: function badgeStyle() {\n var size = this.computedSize,\n badgeTop = this.badgeTop,\n badgeLeft = this.badgeLeft,\n badgeOffset = this.badgeOffset;\n var offset = badgeOffset || '0px';\n return {\n fontSize: SIZES.indexOf(size) === -1 ? \"calc(\".concat(size, \" * \").concat(BADGE_FONT_SIZE_SCALE, \" )\") : null,\n top: badgeTop ? offset : null,\n bottom: badgeTop ? null : offset,\n left: badgeLeft ? offset : null,\n right: badgeLeft ? null : offset\n };\n }\n },\n watch: {\n src: function src(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localSrc = newValue || null;\n }\n }\n },\n methods: {\n onImgError: function onImgError(event) {\n this.localSrc = null;\n this.$emit(EVENT_NAME_IMG_ERROR, event);\n },\n onClick: function onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n }\n },\n render: function render(h) {\n var _class2;\n\n var variant = this.computedVariant,\n disabled = this.disabled,\n rounded = this.computedRounded,\n icon = this.icon,\n src = this.localSrc,\n text = this.text,\n fontStyle = this.fontStyle,\n marginStyle = this.marginStyle,\n size = this.computedSize,\n button = this.button,\n type = this.buttonType,\n badge = this.badge,\n badgeVariant = this.badgeVariant,\n badgeStyle = this.badgeStyle;\n var link = !button && isLink(this);\n var tag = button ? BButton : link ? BLink : 'span';\n var alt = this.alt;\n var ariaLabel = this.ariaLabel || null;\n var $content = null;\n\n if (this.hasNormalizedSlot()) {\n // Default slot overrides props\n $content = h('span', {\n staticClass: 'b-avatar-custom'\n }, [this.normalizeSlot()]);\n } else if (src) {\n $content = h('img', {\n style: variant ? {} : {\n width: '100%',\n height: '100%'\n },\n attrs: {\n src: src,\n alt: alt\n },\n on: {\n error: this.onImgError\n }\n });\n $content = h('span', {\n staticClass: 'b-avatar-img'\n }, [$content]);\n } else if (icon) {\n $content = h(BIcon, {\n props: {\n icon: icon\n },\n attrs: {\n 'aria-hidden': 'true',\n alt: alt\n }\n });\n } else if (text) {\n $content = h('span', {\n staticClass: 'b-avatar-text',\n style: fontStyle\n }, [h('span', text)]);\n } else {\n // Fallback default avatar content\n $content = h(BIconPersonFill, {\n attrs: {\n 'aria-hidden': 'true',\n alt: alt\n }\n });\n }\n\n var $badge = h();\n var hasBadgeSlot = this.hasNormalizedSlot(SLOT_NAME_BADGE);\n\n if (badge || badge === '' || hasBadgeSlot) {\n var badgeText = badge === true ? '' : badge;\n $badge = h('span', {\n staticClass: 'b-avatar-badge',\n class: _defineProperty({}, \"badge-\".concat(badgeVariant), badgeVariant),\n style: badgeStyle\n }, [hasBadgeSlot ? this.normalizeSlot(SLOT_NAME_BADGE) : badgeText]);\n }\n\n var componentData = {\n staticClass: CLASS_NAME,\n class: (_class2 = {}, _defineProperty(_class2, \"\".concat(CLASS_NAME, \"-\").concat(size), size && SIZES.indexOf(size) !== -1), _defineProperty(_class2, \"badge-\".concat(variant), !button && variant), _defineProperty(_class2, \"rounded\", rounded === true), _defineProperty(_class2, \"rounded-\".concat(rounded), rounded && rounded !== true), _defineProperty(_class2, \"disabled\", disabled), _class2),\n style: _objectSpread(_objectSpread({}, marginStyle), {}, {\n width: size,\n height: size\n }),\n attrs: {\n 'aria-label': ariaLabel || null\n },\n props: button ? {\n variant: variant,\n disabled: disabled,\n type: type\n } : link ? pluckProps(linkProps, this) : {},\n on: button || link ? {\n click: this.onClick\n } : {}\n };\n return h(tag, componentData, [$content, $badge]);\n }\n});","export var noop = function noop() {};"],"sourceRoot":""}