{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/components/form/form.js","webpack:///./node_modules/vue-form-wizard/dist/vue-form-wizard.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-prepend.js","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/input-group/input-group.js","webpack:///./node_modules/bootstrap-vue/esm/directives/visible/visible.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-textarea/form-textarea.js","webpack:///./node_modules/bootstrap-vue/esm/components/layout/row.js","webpack:///./src/@core/mixins/ui/transition.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-file/form-file.js","webpack:///./src/views/project/EditProject.vue?df24","webpack:///src/views/project/EditProject.vue","webpack:///./src/views/project/EditProject.vue?6a3e","webpack:///./src/views/project/EditProject.vue","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:///./src/views/project/EditProject.vue?5450"],"names":["props","id","inline","novalidate","validated","BForm","extend","name","functional","render","h","_ref","data","children","class","attrs","t","e","module","exports","self","n","a","i","l","call","m","c","d","o","Object","defineProperty","configurable","enumerable","get","__esModule","default","prototype","hasOwnProperty","p","s","r","u","options","staticRenderFns","_compiled","_scopeId","this","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","b","beforeCreate","_injectStyles","concat","esModule","components","WizardButton","WizardStep","title","type","String","subtitle","nextButtonText","backButtonText","finishButtonText","hideButtons","Boolean","validateOnBack","color","errorColor","shape","layout","stepsClasses","Array","stepSize","validator","indexOf","transition","startIndex","Number","provide","addTab","removeTab","activeTabIndex","currentPercentage","maxStep","loading","tabs","computed","slotProps","nextTab","prevTab","isLastStep","fillButtonStyle","tabCount","length","isVertical","displayPrevButton","stepPercentage","progressBarStyle","backgroundColor","width","progress","borderColor","methods","emitTabChange","$emit","$slots","tabId","replace","splice","changeTab","reset","forEach","checked","navigateToTab","activateAll","beforeTabChange","afterTabChange","setValidationError","focusNextTab","focusPrevTab","setLoading","validationError","validateBeforeChange","then","executeBeforeChange","catch","beforeChange","afterChange","arguments","active","activateTabAndCheckStep","tryChangeRoute","$router","route","push","checkRouteChange","find","deactivateTabs","activateTab","initializeTabs","window","console","warn","mounted","watch","tab","index","iconActiveStyle","stepCheckedStyle","errorStyle","stepTitleStyle","isStepSquare","isTabShape","icon","Function","additionalInfo","inject","$parent","destroyed","$el","parentNode","removeChild","value","install","component","Vue","use","$createElement","_self","_c","staticClass","tabindex","_t","disabled","href","square_shape","tab_shape","style","role","mode","_v","_s","_e","has_error","document","activeElement","findIndex","getElementById","focus","vertical","on","keyup","_k","keyCode","key","button","_l","nativeOn","click","directives","rawName","expression","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","apply","_objectSpread","target","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","obj","writable","BInputGroupPrepend","append","isText","tag","BInputGroupAddon","BLANK_TEMPLATE","makeBlankImgSrc","height","src","encodeURIComponent","alt","blank","blankColor","block","center","fluid","fluidGrow","left","right","rounded","sizes","srcset","thumbnail","BImg","_class","align","join","appendHtml","prepend","prependHtml","size","BInputGroup","slots","scopedSlots","$scopedSlots","slotScope","$prepend","hasPrependSlot","domProps","$append","hasAppendSlot","_classCallCheck","instance","Constructor","TypeError","_defineProperties","descriptor","_createClass","protoProps","staticProps","OBSERVER_PROP_NAME","VisibilityObserver","el","vnode","callback","margin","once","observer","visible","undefined","doneOnce","createObserver","_this","stop","IntersectionObserver","handler","bind","root","rootMargin","threshold","_unused","context","$nextTick","observe","entries","entry","isIntersecting","intersectionRatio","disconnect","destroy","modifiers","mod","test","toLowerCase","_prevModifiers","_ref2","oldValue","unbind","VBVisible","componentUpdated","maxRows","noAutoShrink","noResize","rows","wrap","BFormTextarea","mixins","listeners","heightInPx","computedStyle","styles","resize","computedRows","overflowY","computedMinRows","math","computedMaxRows","computedAttrs","required","safeId","form","placeholder","autocomplete","readonly","plaintext","computedAriaInvalid","computedListeners","bvListeners","input","onInput","change","onChange","blur","onBlur","localValue","setHeight","visibleCallback","computeHeight","$isServer","lineHeight","border","borderTopWidth","borderBottomWidth","padding","paddingTop","paddingBottom","offset","minHeight","oldHeight","scrollHeight","contentRows","computedClass","ref","COMMON_ALIGNMENT","computeRowColsClass","breakpoint","cols","computeRowColsBreakpoint","prop","rowColsPropList","generateProps","rowColsProps","reduce","alignContent","alignH","alignV","noGutters","BRow","_classList$push","classList","heightTransition","trHeight","trAddHeight","val","heightValue","substring","trTrimHeight","trSetHeight","_watch","_makeModelMixin","defaultValue","VALUE_EMPTY_DEPRECATED_MSG","isValidValue","modelMixin","mixin","modelProps","MODEL_PROP_NAME","MODEL_EVENT_NAME","event","every","v","getDataTransferItemEntry","item","getAsEntry","webkitGetAsEntry","getAllFileEntries","dataTransferItemList","traverseDirectories","Promise","all","kind","map","isDirectory","getAllFileEntriesInDirectory","createReader","isFile","resolve","file","$path","directoryReader","path","entryPromises","readDirectoryEntries","readEntries","accept","browseText","capture","directory","dropPlaceholder","fileNameFormatter","multiple","noDrop","noDropPlaceholder","noTraverse","BFormFile","inheritAttrs","files","dragging","dropAllowed","hasFocus","computedAccept","trim","split","extOrType","startMatch","endMatch","slice","rx","RegExp","computedCapture","bvAttrs","webkitdirectory","computedFileNameFormatter","defaultFileNameFormatter","clonedFiles","flattenedFiles","fileNames","labelContent","normalizeSlot","allowed","hasNormalizedSlot","filesTraversed","names","newValue","created","$_form","$form","beforeDestroy","isFileValid","some","isFilesArrayValid","setFiles","setInputFiles","dataTransfer","ClipboardEvent","clipboardData","DataTransfer","items","$refs","$input","_unused2","handleFiles","isDrop","filteredFiles","focusHandler","plain","_this2","_event$dataTransfer","webkitRelativePath","onDragenter","_event$dataTransfer2","dropEffect","onDragover","_event$dataTransfer3","onDragleave","_this3","onDrop","_this4","custom","stateClass","zIndex","focusin","focusout","$label","for","pointerEvents","dragenter","dragover","dragleave","drop","_vm","_h","addProject","$t","model","project","$$v","$set","_u","fn","label","$store","state","appConfig","isRTL","tagsOptions","option","staticStyle","usersOptions","users","BFormRadioGroup","BButton","BInputGroupAppend","FormWizard","TabContent","BCol","BFormGroup","BFormInput","vSelect","ToastificationContent","Ripple","optionsRadio","nextTodoId","optionCategorie","optionSubCategorie","user","JSON","parse","localStorage","getItem","_id","description","tags","image","getTags","getUsers","log","BInputGroupText"],"mappings":"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","file":"js/chunk-e3c41bcc.cd12fcbe.js","sourcesContent":["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(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.VueFormWizard=e():t.VueFormWizard=e()}(\"undefined\"!=typeof self?self:this,function(){return function(t){function e(n){if(a[n])return a[n].exports;var i=a[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var a={};return e.m=t,e.c=a,e.d=function(t,a,n){e.o(t,a)||Object.defineProperty(t,a,{configurable:!1,enumerable:!0,get:n})},e.n=function(t){var a=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(a,\"a\",a),a},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p=\"\",e(e.s=7)}([function(t,e){t.exports=function(t,e,a,n,i,r){var s,o=t=t||{},c=typeof t.default;\"object\"!==c&&\"function\"!==c||(s=t,o=t.default);var u=\"function\"==typeof o?o.options:o;e&&(u.render=e.render,u.staticRenderFns=e.staticRenderFns,u._compiled=!0),a&&(u.functional=!0),i&&(u._scopeId=i);var l;if(r?(l=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),n&&n.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(r)},u._ssrRegister=l):n&&(l=n),l){var d=u.functional,b=d?u.render:u.beforeCreate;d?(u._injectStyles=l,u.render=function(t,e){return l.call(e),b(t,e)}):u.beforeCreate=b?[].concat(b,l):[l]}return{esModule:s,exports:o,options:u}}},function(t,e,a){\"use strict\";var n=a(2),i=a(4),r=a(14);e.a={name:\"form-wizard\",components:{WizardButton:n.a,WizardStep:i.a},props:{title:{type:String,default:\"Awesome Wizard\"},subtitle:{type:String,default:\"Split a complicated flow in multiple steps\"},nextButtonText:{type:String,default:\"Next\"},backButtonText:{type:String,default:\"Back\"},finishButtonText:{type:String,default:\"Finish\"},hideButtons:{type:Boolean,default:!1},validateOnBack:Boolean,color:{type:String,default:\"#e74c3c\"},errorColor:{type:String,default:\"#8b0000\"},shape:{type:String,default:\"circle\"},layout:{type:String,default:\"horizontal\"},stepsClasses:{type:[String,Array],default:\"\"},stepSize:{type:String,default:\"md\",validator:function(t){return-1!==[\"xs\",\"sm\",\"md\",\"lg\"].indexOf(t)}},transition:{type:String,default:\"\"},startIndex:{type:Number,default:0,validator:function(t){return t>=0}}},provide:function(){return{addTab:this.addTab,removeTab:this.removeTab}},data:function(){return{activeTabIndex:0,currentPercentage:0,maxStep:0,loading:!1,tabs:[]}},computed:{slotProps:function(){return{nextTab:this.nextTab,prevTab:this.prevTab,activeTabIndex:this.activeTabIndex,isLastStep:this.isLastStep,fillButtonStyle:this.fillButtonStyle}},tabCount:function(){return this.tabs.length},isLastStep:function(){return this.activeTabIndex===this.tabCount-1},isVertical:function(){return\"vertical\"===this.layout},displayPrevButton:function(){return 0!==this.activeTabIndex},stepPercentage:function(){return 1/(2*this.tabCount)*100},progressBarStyle:function(){return{backgroundColor:this.color,width:this.progress+\"%\",color:this.color}},fillButtonStyle:function(){return{backgroundColor:this.color,borderColor:this.color,color:\"white\"}},progress:function(){return this.activeTabIndex>0?this.stepPercentage*(2*this.activeTabIndex+1):this.stepPercentage}},methods:{emitTabChange:function(t,e){this.$emit(\"on-change\",t,e),this.$emit(\"update:startIndex\",e)},addTab:function(t){var e=this.$slots.default.indexOf(t.$vnode);t.tabId=\"\"+t.title.replace(/ /g,\"\")+e,this.tabs.splice(e,0,t),e-1&&(a===this.activeTabIndex&&(this.maxStep=this.activeTabIndex-1,this.changeTab(this.activeTabIndex,this.activeTabIndex-1)),athis.activeTabIndex;if(t<=this.maxStep){var n=function n(){a&&t-e.activeTabIndex>1?(e.changeTab(e.activeTabIndex,e.activeTabIndex+1),e.beforeTabChange(e.activeTabIndex,n)):(e.changeTab(e.activeTabIndex,t),e.afterTabChange(e.activeTabIndex))};a?this.beforeTabChange(this.activeTabIndex,n):(this.setValidationError(null),n())}return t<=this.maxStep},nextTab:function(){var t=this,e=function(){t.activeTabIndex0&&(t.setValidationError(null),t.changeTab(t.activeTabIndex,t.activeTabIndex-1))};this.validateOnBack?this.beforeTabChange(this.activeTabIndex,e):e()},focusNextTab:function(){var t=Object(r.b)(this.tabs);if(-1!==t&&t0){var e=this.tabs[t-1].tabId;Object(r.a)(e)}},setLoading:function(t){this.loading=t,this.$emit(\"on-loading\",t)},setValidationError:function(t){this.tabs[this.activeTabIndex].validationError=t,this.$emit(\"on-error\",t)},validateBeforeChange:function(t,e){var a=this;if(this.setValidationError(null),Object(r.c)(t))this.setLoading(!0),t.then(function(t){a.setLoading(!1);var n=!0===t;a.executeBeforeChange(n,e)}).catch(function(t){a.setLoading(!1),a.setValidationError(t)});else{var n=!0===t;this.executeBeforeChange(n,e)}},executeBeforeChange:function(t,e){this.$emit(\"on-validate\",t,this.activeTabIndex),t?e():this.tabs[this.activeTabIndex].validationError=\"error\"},beforeTabChange:function(t,e){if(!this.loading){var a=this.tabs[t];if(a&&void 0!==a.beforeChange){var n=a.beforeChange();this.validateBeforeChange(n,e)}else e()}},afterTabChange:function(t){if(!this.loading){var e=this.tabs[t];e&&void 0!==e.afterChange&&e.afterChange()}},changeTab:function(t,e){var a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=this.tabs[t],i=this.tabs[e];return n&&(n.active=!1),i&&(i.active=!0),a&&this.activeTabIndex!==e&&this.emitTabChange(t,e),this.activeTabIndex=e,this.activateTabAndCheckStep(this.activeTabIndex),!0},tryChangeRoute:function(t){this.$router&&t.route&&this.$router.push(t.route)},checkRouteChange:function(t){var e=-1,a=this.tabs.find(function(a,n){var i=a.route===t;return i&&(e=n),i});if(a&&!a.active){var n=e>this.activeTabIndex;this.navigateToTab(e,n)}},deactivateTabs:function(){this.tabs.forEach(function(t){t.active=!1})},activateTab:function(t){this.deactivateTabs();var e=this.tabs[t];e&&(e.active=!0,e.checked=!0,this.tryChangeRoute(e))},activateTabAndCheckStep:function(t){this.activateTab(t),t>this.maxStep&&(this.maxStep=t),this.activeTabIndex=t},initializeTabs:function(){this.tabs.length>0&&0===this.startIndex&&this.activateTab(this.activeTabIndex),this.startIndex0&&void 0!==arguments[0]?arguments[0]:[],e=n();return t.findIndex(function(t){return t.tabId===e})}function r(t){document.getElementById(t).focus()}function s(t){return t.then&&\"function\"==typeof t.then}e.b=i,e.a=r,e.c=s},function(t,e,a){\"use strict\";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a(\"div\",{staticClass:\"vue-form-wizard\",class:[t.stepSize,{vertical:t.isVertical}],on:{keyup:[function(e){return\"button\"in e||!t._k(e.keyCode,\"right\",39,e.key)?\"button\"in e&&2!==e.button?null:void t.focusNextTab(e):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"left\",37,e.key)?\"button\"in e&&0!==e.button?null:void t.focusPrevTab(e):null}]}},[a(\"div\",{staticClass:\"wizard-header\"},[t._t(\"title\",[a(\"h4\",{staticClass:\"wizard-title\"},[t._v(t._s(t.title))]),t._v(\" \"),a(\"p\",{staticClass:\"category\"},[t._v(t._s(t.subtitle))])])],2),t._v(\" \"),a(\"div\",{staticClass:\"wizard-navigation\"},[t.isVertical?t._e():a(\"div\",{staticClass:\"wizard-progress-with-circle\"},[a(\"div\",{staticClass:\"wizard-progress-bar\",style:t.progressBarStyle})]),t._v(\" \"),a(\"ul\",{staticClass:\"wizard-nav wizard-nav-pills\",class:t.stepsClasses,attrs:{role:\"tablist\"}},[t._l(t.tabs,function(e,n){return t._t(\"step\",[a(\"wizard-step\",{attrs:{tab:e,\"step-size\":t.stepSize,transition:t.transition,index:n},nativeOn:{click:function(e){t.navigateToTab(n)},keyup:function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"enter\",13,e.key))return null;t.navigateToTab(n)}}})],{tab:e,index:n,navigateToTab:t.navigateToTab,stepSize:t.stepSize,transition:t.transition})})],2),t._v(\" \"),a(\"div\",{staticClass:\"wizard-tab-content\"},[t._t(\"default\",null,null,t.slotProps)],2)]),t._v(\" \"),t.hideButtons?t._e():a(\"div\",{staticClass:\"wizard-card-footer clearfix\"},[t._t(\"footer\",[a(\"div\",{staticClass:\"wizard-footer-left\"},[t.displayPrevButton?a(\"span\",{attrs:{role:\"button\",tabindex:\"0\"},on:{click:t.prevTab,keyup:function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"enter\",13,e.key))return null;t.prevTab(e)}}},[t._t(\"prev\",[a(\"wizard-button\",{style:t.fillButtonStyle,attrs:{disabled:t.loading}},[t._v(\"\\n \"+t._s(t.backButtonText)+\"\\n \")])],null,t.slotProps)],2):t._e(),t._v(\" \"),t._t(\"custom-buttons-left\",null,null,t.slotProps)],2),t._v(\" \"),a(\"div\",{staticClass:\"wizard-footer-right\"},[t._t(\"custom-buttons-right\",null,null,t.slotProps),t._v(\" \"),t.isLastStep?a(\"span\",{attrs:{role:\"button\",tabindex:\"0\"},on:{click:t.nextTab,keyup:function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"enter\",13,e.key))return null;t.nextTab(e)}}},[t._t(\"finish\",[a(\"wizard-button\",{style:t.fillButtonStyle},[t._v(\"\\n \"+t._s(t.finishButtonText)+\"\\n \")])],null,t.slotProps)],2):a(\"span\",{attrs:{role:\"button\",tabindex:\"0\"},on:{click:t.nextTab,keyup:function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"enter\",13,e.key))return null;t.nextTab(e)}}},[t._t(\"next\",[a(\"wizard-button\",{style:t.fillButtonStyle,attrs:{disabled:t.loading}},[t._v(\"\\n \"+t._s(t.nextButtonText)+\"\\n \")])],null,t.slotProps)],2)],2)],null,t.slotProps)],2)])},i=[],r={render:n,staticRenderFns:i};e.a=r},function(t,e,a){\"use strict\";var n=a(6),i=a(17),r=a(0),s=r(n.a,i.a,!1,null,null,null);e.a=s.exports},function(t,e,a){\"use strict\";var n=function(){var t=this,e=t.$createElement;return(t._self._c||e)(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.active,expression:\"active\"}],staticClass:\"wizard-tab-container\",attrs:{role:\"tabpanel\",id:t.tabId,\"aria-hidden\":!t.active,\"aria-labelledby\":\"step-\"+t.tabId}},[t._t(\"default\",null,{active:t.active})],2)},i=[],r={render:n,staticRenderFns:i};e.a=r}])});","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});","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});","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});","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n// v-b-visible\n// Private visibility check directive\n// Based on IntersectionObserver\n//\n// Usage:\n// v-b-visibility..=\"\"\n//\n// Value:\n// : method to be called when visibility state changes, receives one arg:\n// true: element is visible\n// false: element is not visible\n// null: IntersectionObserver not supported\n//\n// Modifiers:\n// : a positive decimal value of pixels away from viewport edge\n// before being considered \"visible\". default is 0\n// : keyword 'once', meaning when the element becomes visible and\n// callback is called observation/notification will stop.\n//\n// When used in a render function:\n// export default {\n// directives: { 'b-visible': VBVisible },\n// render(h) {\n// h(\n// 'div',\n// {\n// directives: [\n// { name: 'b-visible', value=this.callback, modifiers: { '123':true, 'once':true } }\n// ]\n// }\n// )\n// }\nimport { RX_DIGITS } from '../../constants/regex';\nimport { requestAF } from '../../utils/dom';\nimport { isFunction } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { clone, keys } from '../../utils/object';\nvar OBSERVER_PROP_NAME = '__bv__visibility_observer';\n\nvar VisibilityObserver = /*#__PURE__*/function () {\n function VisibilityObserver(el, options, vnode) {\n _classCallCheck(this, VisibilityObserver);\n\n this.el = el;\n this.callback = options.callback;\n this.margin = options.margin || 0;\n this.once = options.once || false;\n this.observer = null;\n this.visible = undefined;\n this.doneOnce = false; // Create the observer instance (if possible)\n\n this.createObserver(vnode);\n }\n\n _createClass(VisibilityObserver, [{\n key: \"createObserver\",\n value: function createObserver(vnode) {\n var _this = this;\n\n // Remove any previous observer\n if (this.observer) {\n /* istanbul ignore next */\n this.stop();\n } // Should only be called once and `callback` prop should be a function\n\n\n if (this.doneOnce || !isFunction(this.callback)) {\n /* istanbul ignore next */\n return;\n } // Create the observer instance\n\n\n try {\n // Future: Possibly add in other modifiers for left/right/top/bottom\n // offsets, root element reference, and thresholds\n this.observer = new IntersectionObserver(this.handler.bind(this), {\n // `null` = 'viewport'\n root: null,\n // Pixels away from view port to consider \"visible\"\n rootMargin: this.margin,\n // Intersection ratio of el and root (as a value from 0 to 1)\n threshold: 0\n });\n } catch (_unused) {\n // No IntersectionObserver support, so just stop trying to observe\n this.doneOnce = true;\n this.observer = undefined;\n this.callback(null);\n return;\n } // Start observing in a `$nextTick()` (to allow DOM to complete rendering)\n\n /* istanbul ignore next: IntersectionObserver not supported in JSDOM */\n\n\n vnode.context.$nextTick(function () {\n requestAF(function () {\n // Placed in an `if` just in case we were destroyed before\n // this `requestAnimationFrame` runs\n if (_this.observer) {\n _this.observer.observe(_this.el);\n }\n });\n });\n }\n /* istanbul ignore next */\n\n }, {\n key: \"handler\",\n value: function handler(entries) {\n var entry = entries ? entries[0] : {};\n var isIntersecting = Boolean(entry.isIntersecting || entry.intersectionRatio > 0.0);\n\n if (isIntersecting !== this.visible) {\n this.visible = isIntersecting;\n this.callback(isIntersecting);\n\n if (this.once && this.visible) {\n this.doneOnce = true;\n this.stop();\n }\n }\n }\n }, {\n key: \"stop\",\n value: function stop() {\n /* istanbul ignore next */\n this.observer && this.observer.disconnect();\n this.observer = null;\n }\n }]);\n\n return VisibilityObserver;\n}();\n\nvar destroy = function destroy(el) {\n var observer = el[OBSERVER_PROP_NAME];\n\n if (observer && observer.stop) {\n observer.stop();\n }\n\n delete el[OBSERVER_PROP_NAME];\n};\n\nvar bind = function bind(el, _ref, vnode) {\n var value = _ref.value,\n modifiers = _ref.modifiers;\n // `value` is the callback function\n var options = {\n margin: '0px',\n once: false,\n callback: value\n }; // Parse modifiers\n\n keys(modifiers).forEach(function (mod) {\n /* istanbul ignore else: Until is switched to use this directive */\n if (RX_DIGITS.test(mod)) {\n options.margin = \"\".concat(mod, \"px\");\n } else if (mod.toLowerCase() === 'once') {\n options.once = true;\n }\n }); // Destroy any previous observer\n\n destroy(el); // Create new observer\n\n el[OBSERVER_PROP_NAME] = new VisibilityObserver(el, options, vnode); // Store the current modifiers on the object (cloned)\n\n el[OBSERVER_PROP_NAME]._prevModifiers = clone(modifiers);\n}; // When the directive options may have been updated (or element)\n\n\nvar componentUpdated = function componentUpdated(el, _ref2, vnode) {\n var value = _ref2.value,\n oldValue = _ref2.oldValue,\n modifiers = _ref2.modifiers;\n // Compare value/oldValue and modifiers to see if anything has changed\n // and if so, destroy old observer and create new observer\n\n /* istanbul ignore next */\n modifiers = clone(modifiers);\n /* istanbul ignore next */\n\n if (el && (value !== oldValue || !el[OBSERVER_PROP_NAME] || !looseEqual(modifiers, el[OBSERVER_PROP_NAME]._prevModifiers))) {\n // Re-bind on element\n bind(el, {\n value: value,\n modifiers: modifiers\n }, vnode);\n }\n}; // When directive un-binds from element\n\n\nvar unbind = function unbind(el) {\n // Remove the observer\n destroy(el);\n}; // Export the directive\n\n\nexport var VBVisible = {\n bind: bind,\n componentUpdated: componentUpdated,\n unbind: unbind\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_FORM_TEXTAREA } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { getCS, getStyle, isVisible, requestAF, setStyle } from '../../utils/dom';\nimport { isNull } from '../../utils/inspect';\nimport { mathCeil, mathMax, mathMin } from '../../utils/math';\nimport { toInteger, toFloat } from '../../utils/number';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control';\nimport { formSelectionMixin } from '../../mixins/form-selection';\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size';\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state';\nimport { formTextMixin, props as formTextProps } from '../../mixins/form-text';\nimport { formValidityMixin } from '../../mixins/form-validity';\nimport { idMixin, props as idProps } from '../../mixins/id';\nimport { listenOnRootMixin } from '../../mixins/listen-on-root';\nimport { listenersMixin } from '../../mixins/listeners';\nimport { VBVisible } from '../../directives/visible/visible'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formControlProps), formSizeProps), formStateProps), formTextProps), {}, {\n maxRows: makeProp(PROP_TYPE_NUMBER_STRING),\n // When in auto resize mode, disable shrinking to content height\n noAutoShrink: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable the resize handle of textarea\n noResize: makeProp(PROP_TYPE_BOOLEAN, false),\n rows: makeProp(PROP_TYPE_NUMBER_STRING, 2),\n // 'soft', 'hard' or 'off'\n // Browser default is 'soft'\n wrap: makeProp(PROP_TYPE_STRING, 'soft')\n})), NAME_FORM_TEXTAREA); // --- Main component ---\n// @vue/component\n\nexport var BFormTextarea = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_TEXTAREA,\n directives: {\n 'b-visible': VBVisible\n },\n // Mixin order is important!\n mixins: [listenersMixin, idMixin, listenOnRootMixin, formControlMixin, formSizeMixin, formStateMixin, formTextMixin, formSelectionMixin, formValidityMixin],\n props: props,\n data: function data() {\n return {\n heightInPx: null\n };\n },\n computed: {\n computedStyle: function computedStyle() {\n var styles = {\n // Setting `noResize` to true will disable the ability for the user to\n // manually resize the textarea. We also disable when in auto height mode\n resize: !this.computedRows || this.noResize ? 'none' : null\n };\n\n if (!this.computedRows) {\n // Conditionally set the computed CSS height when auto rows/height is enabled\n // We avoid setting the style to `null`, which can override user manual resize handle\n styles.height = this.heightInPx; // We always add a vertical scrollbar to the textarea when auto-height is\n // enabled so that the computed height calculation returns a stable value\n\n styles.overflowY = 'scroll';\n }\n\n return styles;\n },\n computedMinRows: function computedMinRows() {\n // Ensure rows is at least 2 and positive (2 is the native textarea value)\n // A value of 1 can cause issues in some browsers, and most browsers\n // only support 2 as the smallest value\n return mathMax(toInteger(this.rows, 2), 2);\n },\n computedMaxRows: function computedMaxRows() {\n return mathMax(this.computedMinRows, toInteger(this.maxRows, 0));\n },\n computedRows: function computedRows() {\n // This is used to set the attribute 'rows' on the textarea\n // If auto-height is enabled, then we return `null` as we use CSS to control height\n return this.computedMinRows === this.computedMaxRows ? this.computedMinRows : null;\n },\n computedAttrs: function computedAttrs() {\n var disabled = this.disabled,\n required = this.required;\n return {\n id: this.safeId(),\n name: this.name || null,\n form: this.form || null,\n disabled: disabled,\n placeholder: this.placeholder || null,\n required: required,\n autocomplete: this.autocomplete || null,\n readonly: this.readonly || this.plaintext,\n rows: this.computedRows,\n wrap: this.wrap || null,\n 'aria-required': this.required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\n };\n },\n computedListeners: function computedListeners() {\n return _objectSpread(_objectSpread({}, this.bvListeners), {}, {\n input: this.onInput,\n change: this.onChange,\n blur: this.onBlur\n });\n }\n },\n watch: {\n localValue: function localValue() {\n this.setHeight();\n }\n },\n mounted: function mounted() {\n this.setHeight();\n },\n methods: {\n // Called by intersection observer directive\n\n /* istanbul ignore next */\n visibleCallback: function visibleCallback(visible) {\n if (visible) {\n // We use a `$nextTick()` here just to make sure any\n // transitions or portalling have completed\n this.$nextTick(this.setHeight);\n }\n },\n setHeight: function setHeight() {\n var _this = this;\n\n this.$nextTick(function () {\n requestAF(function () {\n _this.heightInPx = _this.computeHeight();\n });\n });\n },\n\n /* istanbul ignore next: can't test getComputedStyle in JSDOM */\n computeHeight: function computeHeight() {\n if (this.$isServer || !isNull(this.computedRows)) {\n return null;\n }\n\n var el = this.$el; // Element must be visible (not hidden) and in document\n // Must be checked after above checks\n\n if (!isVisible(el)) {\n return null;\n } // Get current computed styles\n\n\n var computedStyle = getCS(el); // Height of one line of text in px\n\n var lineHeight = toFloat(computedStyle.lineHeight, 1); // Calculate height of border and padding\n\n var border = toFloat(computedStyle.borderTopWidth, 0) + toFloat(computedStyle.borderBottomWidth, 0);\n var padding = toFloat(computedStyle.paddingTop, 0) + toFloat(computedStyle.paddingBottom, 0); // Calculate offset\n\n var offset = border + padding; // Minimum height for min rows (which must be 2 rows or greater for cross-browser support)\n\n var minHeight = lineHeight * this.computedMinRows + offset; // Get the current style height (with `px` units)\n\n var oldHeight = getStyle(el, 'height') || computedStyle.height; // Probe scrollHeight by temporarily changing the height to `auto`\n\n setStyle(el, 'height', 'auto');\n var scrollHeight = el.scrollHeight; // Place the original old height back on the element, just in case `computedProp`\n // returns the same value as before\n\n setStyle(el, 'height', oldHeight); // Calculate content height in 'rows' (scrollHeight includes padding but not border)\n\n var contentRows = mathMax((scrollHeight - padding) / lineHeight, 2); // Calculate number of rows to display (limited within min/max rows)\n\n var rows = mathMin(mathMax(contentRows, this.computedMinRows), this.computedMaxRows); // Calculate the required height of the textarea including border and padding (in pixels)\n\n var height = mathMax(mathCeil(rows * lineHeight + offset), minHeight); // Computed height remains the larger of `oldHeight` and new `height`,\n // when height is in `sticky` mode (prop `no-auto-shrink` is true)\n\n if (this.noAutoShrink && toFloat(oldHeight, 0) > height) {\n return oldHeight;\n } // Return the new computed CSS height in px units\n\n\n return \"\".concat(height, \"px\");\n }\n },\n render: function render(h) {\n return h('textarea', {\n class: this.computedClass,\n style: this.computedStyle,\n directives: [{\n name: 'b-visible',\n value: this.visibleCallback,\n // If textarea is within 640px of viewport, consider it visible\n modifiers: {\n '640': true\n }\n }],\n attrs: this.computedAttrs,\n domProps: {\n value: this.localValue\n },\n on: this.computedListeners,\n ref: 'input'\n });\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { mergeData } from '../../vue';\nimport { NAME_ROW } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { arrayIncludes, concat } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { identity } from '../../utils/identity';\nimport { memoize } from '../../utils/memoize';\nimport { create, keys, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props';\nimport { lowerCase, toString, trim } from '../../utils/string'; // --- Constants ---\n\nvar COMMON_ALIGNMENT = ['start', 'end', 'center']; // --- Helper methods ---\n// Compute a `row-cols-{breakpoint}-{cols}` class name\n// Memoized function for better performance on generating class names\n\nvar computeRowColsClass = memoize(function (breakpoint, cols) {\n cols = trim(toString(cols));\n return cols ? lowerCase(['row-cols', breakpoint, cols].filter(identity).join('-')) : null;\n}); // Get the breakpoint name from the `rowCols` prop name\n// Memoized function for better performance on extracting breakpoint names\n\nvar computeRowColsBreakpoint = memoize(function (prop) {\n return lowerCase(prop.replace('cols', ''));\n}); // Cached copy of the `row-cols` breakpoint prop names\n// Will be populated when the props are generated\n\nvar rowColsPropList = []; // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n // i.e. 'row-cols-2', 'row-cols-md-4', 'row-cols-xl-6', ...\n var rowColsProps = getBreakpointsUpCached().reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'cols')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // Cache the row-cols prop names\n\n rowColsPropList = keys(rowColsProps); // Return the generated props\n\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, rowColsProps), {}, {\n alignContent: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around', 'stretch'), value);\n }),\n alignH: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around'), value);\n }),\n alignV: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'baseline', 'stretch'), value);\n }),\n noGutters: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n })), NAME_ROW);\n}; // --- Main component ---\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\n\nexport var BRow = {\n name: NAME_ROW,\n functional: true,\n\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props;\n this.props = generateProps();\n return this.props;\n },\n\n render: function render(h, _ref) {\n var _classList$push;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var alignV = props.alignV,\n alignH = props.alignH,\n alignContent = props.alignContent; // Loop through row-cols breakpoint props and generate the classes\n\n var classList = [];\n rowColsPropList.forEach(function (prop) {\n var c = computeRowColsClass(computeRowColsBreakpoint(prop), props[prop]); // If a class is returned, push it onto the array\n\n if (c) {\n classList.push(c);\n }\n });\n classList.push((_classList$push = {\n 'no-gutters': props.noGutters\n }, _defineProperty(_classList$push, \"align-items-\".concat(alignV), alignV), _defineProperty(_classList$push, \"justify-content-\".concat(alignH), alignH), _defineProperty(_classList$push, \"align-content-\".concat(alignContent), alignContent), _classList$push));\n return h(props.tag, mergeData(data, {\n staticClass: 'row',\n class: classList\n }), children);\n }\n};","export const heightTransition = {\n /*\n\n HowTo:\n 1. Add dynamic style to element and set style as `trHeight`\n 2. Set transition speed using `transition: 0.35s height;` <= you can use appropriate value;\n 3. Optionally you can set `overflow: hidden;` to hide element overflow while height is animated.\n 4. Set initial height using `trSetHeight` before any operation. [mounted hook is recommended - You can use `ref` for dynamic contents]\n 5. Toggle height using height operations 🍻\n 6. Toggle usage of $nextTick for height operations is any issue occur [experimental] 🔬\n\n */\n\n data() {\n return {\n trHeight: null,\n }\n },\n methods: {\n trAddHeight(val) {\n // Add height to existing height\n // Usage: Where new element is append or more height is added (e.g. list append)\n\n /* Assumes:\n - Height is assigned and is `String`\n - Incoming value is valid number in `Number` or `String`\n */\n const heightValue = Number(this.trHeight.substring(0, this.trHeight.length - 2))\n this.trHeight = `${heightValue + Number(val)}px`\n },\n trTrimHeight(val) {\n // Remove height from existing height\n // Usage: Where new element is removed or height is remove (e.g. list pop/ele remove)\n\n /* Assumes:\n - Height is assigned and is `String`\n - Incoming value is valid number in `Number` or `String`\n */\n const heightValue = Number(this.trHeight.substring(0, this.trHeight.length - 2))\n this.trHeight = `${heightValue - Number(val)}px`\n },\n trSetHeight(val) {\n // Set height\n // Usage: Mostly for assigning initial value from mounted hook\n\n /* Assumes:\n - Height is not assigned and what to assign for add/remove operation\n - What to set height at something for odd usage\n - Incoming value is valid number in `Number` or `String`\n */\n if (val === null) this.trHeight = 'auto'\n else this.trHeight = `${Number(val)}px`\n },\n },\n}\n\n// Ignore below for now. We will remove it when we add more transition in future.\nexport const _ = null\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 { Vue } from '../../vue';\nimport { NAME_FORM_FILE } from '../../constants/components';\nimport { HAS_PROMISE_SUPPORT } from '../../constants/env';\nimport { EVENT_NAME_CHANGE, EVENT_OPTIONS_PASSIVE } from '../../constants/events';\nimport { PROP_TYPE_ARRAY, PROP_TYPE_BOOLEAN, PROP_TYPE_FUNCTION, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_DROP_PLACEHOLDER, SLOT_NAME_FILE_NAME, SLOT_NAME_PLACEHOLDER } from '../../constants/slots';\nimport { RX_EXTENSION, RX_STAR } from '../../constants/regex';\nimport { File } from '../../constants/safe-types';\nimport { from as arrayFrom, flatten, flattenDeep } from '../../utils/array';\nimport { cloneDeep } from '../../utils/clone-deep';\nimport { closest } from '../../utils/dom';\nimport { eventOn, eventOff, stopEvent } from '../../utils/events';\nimport { identity } from '../../utils/identity';\nimport { isArray, isFile, isFunction, isNull, isUndefinedOrNull } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { makeModelMixin } from '../../utils/model';\nimport { sortKeys } from '../../utils/object';\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props';\nimport { escapeRegExp } from '../../utils/string';\nimport { warn } from '../../utils/warn';\nimport { attrsMixin } from '../../mixins/attrs';\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control';\nimport { formCustomMixin, props as formCustomProps } from '../../mixins/form-custom';\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state';\nimport { idMixin, props as idProps } from '../../mixins/id';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { props as formSizeProps } from '../../mixins/form-size'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('value', {\n type: [PROP_TYPE_ARRAY, File],\n defaultValue: null,\n validator: function validator(value) {\n /* istanbul ignore next */\n if (value === '') {\n warn(VALUE_EMPTY_DEPRECATED_MSG, NAME_FORM_FILE);\n return true;\n }\n\n return isUndefinedOrNull(value) || isValidValue(value);\n }\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event;\n\nvar VALUE_EMPTY_DEPRECATED_MSG = 'Setting \"value\"/\"v-model\" to an empty string for reset is deprecated. Set to \"null\" instead.'; // --- Helper methods ---\n\nvar isValidValue = function isValidValue(value) {\n return isFile(value) || isArray(value) && value.every(function (v) {\n return isValidValue(v);\n });\n}; // Helper method to \"safely\" get the entry from a data-transfer item\n\n/* istanbul ignore next: not supported in JSDOM */\n\n\nvar getDataTransferItemEntry = function getDataTransferItemEntry(item) {\n return isFunction(item.getAsEntry) ? item.getAsEntry() : isFunction(item.webkitGetAsEntry) ? item.webkitGetAsEntry() : null;\n}; // Drop handler function to get all files\n\n/* istanbul ignore next: not supported in JSDOM */\n\n\nvar getAllFileEntries = function getAllFileEntries(dataTransferItemList) {\n var traverseDirectories = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n return Promise.all(arrayFrom(dataTransferItemList).filter(function (item) {\n return item.kind === 'file';\n }).map(function (item) {\n var entry = getDataTransferItemEntry(item);\n\n if (entry) {\n if (entry.isDirectory && traverseDirectories) {\n return getAllFileEntriesInDirectory(entry.createReader(), \"\".concat(entry.name, \"/\"));\n } else if (entry.isFile) {\n return new Promise(function (resolve) {\n entry.file(function (file) {\n file.$path = '';\n resolve(file);\n });\n });\n }\n }\n\n return null;\n }).filter(identity));\n}; // Get all the file entries (recursive) in a directory\n\n/* istanbul ignore next: not supported in JSDOM */\n\n\nvar getAllFileEntriesInDirectory = function getAllFileEntriesInDirectory(directoryReader) {\n var path = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n return new Promise(function (resolve) {\n var entryPromises = [];\n\n var readDirectoryEntries = function readDirectoryEntries() {\n directoryReader.readEntries(function (entries) {\n if (entries.length === 0) {\n resolve(Promise.all(entryPromises).then(function (entries) {\n return flatten(entries);\n }));\n } else {\n entryPromises.push(Promise.all(entries.map(function (entry) {\n if (entry) {\n if (entry.isDirectory) {\n return getAllFileEntriesInDirectory(entry.createReader(), \"\".concat(path).concat(entry.name, \"/\"));\n } else if (entry.isFile) {\n return new Promise(function (resolve) {\n entry.file(function (file) {\n file.$path = \"\".concat(path).concat(file.name);\n resolve(file);\n });\n });\n }\n }\n\n return null;\n }).filter(identity)));\n readDirectoryEntries();\n }\n });\n };\n\n readDirectoryEntries();\n });\n}; // --- Props ---\n\n\nvar props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), modelProps), formControlProps), formCustomProps), formStateProps), formSizeProps), {}, {\n accept: makeProp(PROP_TYPE_STRING, ''),\n browseText: makeProp(PROP_TYPE_STRING, 'Browse'),\n // Instruct input to capture from camera\n capture: makeProp(PROP_TYPE_BOOLEAN, false),\n directory: makeProp(PROP_TYPE_BOOLEAN, false),\n dropPlaceholder: makeProp(PROP_TYPE_STRING, 'Drop files here'),\n fileNameFormatter: makeProp(PROP_TYPE_FUNCTION),\n multiple: makeProp(PROP_TYPE_BOOLEAN, false),\n noDrop: makeProp(PROP_TYPE_BOOLEAN, false),\n noDropPlaceholder: makeProp(PROP_TYPE_STRING, 'Not allowed'),\n // TODO:\n // Should we deprecate this and only support flat file structures?\n // Nested file structures are only supported when files are dropped\n // A Chromium \"bug\" prevents `webkitEntries` from being populated\n // on the file input's `change` event and is marked as \"WontFix\"\n // Mozilla implemented the behavior the same way as Chromium\n // See: https://bugs.chromium.org/p/chromium/issues/detail?id=138987\n // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1326031\n noTraverse: makeProp(PROP_TYPE_BOOLEAN, false),\n placeholder: makeProp(PROP_TYPE_STRING, 'No file chosen')\n})), NAME_FORM_FILE); // --- Main component ---\n// @vue/component\n\nexport var BFormFile = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_FILE,\n mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin, formControlMixin, formStateMixin, formCustomMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props: props,\n data: function data() {\n return {\n files: [],\n dragging: false,\n // IE 11 doesn't respect setting `event.dataTransfer.dropEffect`,\n // so we handle it ourselves as well\n // https://stackoverflow.com/a/46915971/2744776\n dropAllowed: !this.noDrop,\n hasFocus: false\n };\n },\n computed: {\n // Convert `accept` to an array of `[{ RegExpr, isMime }, ...]`\n computedAccept: function computedAccept() {\n var accept = this.accept;\n accept = (accept || '').trim().split(/[,\\s]+/).filter(identity); // Allow any file type/extension\n\n if (accept.length === 0) {\n return null;\n }\n\n return accept.map(function (extOrType) {\n var prop = 'name';\n var startMatch = '^';\n var endMatch = '$';\n\n if (RX_EXTENSION.test(extOrType)) {\n // File extension /\\.ext$/\n startMatch = '';\n } else {\n // MIME type /^mime\\/.+$/ or /^mime\\/type$/\n prop = 'type';\n\n if (RX_STAR.test(extOrType)) {\n endMatch = '.+$'; // Remove trailing `*`\n\n extOrType = extOrType.slice(0, -1);\n }\n } // Escape all RegExp special chars\n\n\n extOrType = escapeRegExp(extOrType);\n var rx = new RegExp(\"\".concat(startMatch).concat(extOrType).concat(endMatch));\n return {\n rx: rx,\n prop: prop\n };\n });\n },\n computedCapture: function computedCapture() {\n var capture = this.capture;\n return capture === true || capture === '' ? true : capture || null;\n },\n computedAttrs: function computedAttrs() {\n var name = this.name,\n disabled = this.disabled,\n required = this.required,\n form = this.form,\n computedCapture = this.computedCapture,\n accept = this.accept,\n multiple = this.multiple,\n directory = this.directory;\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n type: 'file',\n id: this.safeId(),\n name: name,\n disabled: disabled,\n required: required,\n form: form || null,\n capture: computedCapture,\n accept: accept || null,\n multiple: multiple,\n directory: directory,\n webkitdirectory: directory,\n 'aria-required': required ? 'true' : null\n });\n },\n computedFileNameFormatter: function computedFileNameFormatter() {\n var fileNameFormatter = this.fileNameFormatter;\n return hasPropFunction(fileNameFormatter) ? fileNameFormatter : this.defaultFileNameFormatter;\n },\n clonedFiles: function clonedFiles() {\n return cloneDeep(this.files);\n },\n flattenedFiles: function flattenedFiles() {\n return flattenDeep(this.files);\n },\n fileNames: function fileNames() {\n return this.flattenedFiles.map(function (file) {\n return file.name;\n });\n },\n labelContent: function labelContent() {\n // Draging active\n\n /* istanbul ignore next: used by drag/drop which can't be tested easily */\n if (this.dragging && !this.noDrop) {\n return (// TODO: Add additional scope with file count, and other not-allowed reasons\n this.normalizeSlot(SLOT_NAME_DROP_PLACEHOLDER, {\n allowed: this.dropAllowed\n }) || (this.dropAllowed ? this.dropPlaceholder : this.$createElement('span', {\n staticClass: 'text-danger'\n }, this.noDropPlaceholder))\n );\n } // No file chosen\n\n\n if (this.files.length === 0) {\n return this.normalizeSlot(SLOT_NAME_PLACEHOLDER) || this.placeholder;\n }\n\n var flattenedFiles = this.flattenedFiles,\n clonedFiles = this.clonedFiles,\n fileNames = this.fileNames,\n computedFileNameFormatter = this.computedFileNameFormatter; // There is a slot for formatting the files/names\n\n if (this.hasNormalizedSlot(SLOT_NAME_FILE_NAME)) {\n return this.normalizeSlot(SLOT_NAME_FILE_NAME, {\n files: flattenedFiles,\n filesTraversed: clonedFiles,\n names: fileNames\n });\n }\n\n return computedFileNameFormatter(flattenedFiles, clonedFiles, fileNames);\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function (newValue) {\n if (!newValue || isArray(newValue) && newValue.length === 0) {\n this.reset();\n }\n }), _defineProperty(_watch, \"files\", function files(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n var multiple = this.multiple,\n noTraverse = this.noTraverse;\n var files = !multiple || noTraverse ? flattenDeep(newValue) : newValue;\n this.$emit(MODEL_EVENT_NAME, multiple ? files : files[0] || null);\n }\n }), _watch),\n created: function created() {\n // Create private non-reactive props\n this.$_form = null;\n },\n mounted: function mounted() {\n // Listen for form reset events, to reset the file input\n var $form = closest('form', this.$el);\n\n if ($form) {\n eventOn($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE);\n this.$_form = $form;\n }\n },\n beforeDestroy: function beforeDestroy() {\n var $form = this.$_form;\n\n if ($form) {\n eventOff($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE);\n }\n },\n methods: {\n isFileValid: function isFileValid(file) {\n if (!file) {\n return false;\n }\n\n var accept = this.computedAccept;\n return accept ? accept.some(function (a) {\n return a.rx.test(file[a.prop]);\n }) : true;\n },\n isFilesArrayValid: function isFilesArrayValid(files) {\n var _this = this;\n\n return isArray(files) ? files.every(function (file) {\n return _this.isFileValid(file);\n }) : this.isFileValid(files);\n },\n defaultFileNameFormatter: function defaultFileNameFormatter(flattenedFiles, clonedFiles, fileNames) {\n return fileNames.join(', ');\n },\n setFiles: function setFiles(files) {\n // Reset the dragging flags\n this.dropAllowed = !this.noDrop;\n this.dragging = false; // Set the selected files\n\n this.files = this.multiple ? this.directory ? files : flattenDeep(files) : flattenDeep(files).slice(0, 1);\n },\n\n /* istanbul ignore next: used by Drag/Drop */\n setInputFiles: function setInputFiles(files) {\n // Try an set the file input files array so that `required`\n // constraint works for dropped files (will fail in IE11 though)\n // To be used only when dropping files\n try {\n // Firefox < 62 workaround exploiting https://bugzilla.mozilla.org/show_bug.cgi?id=1422655\n var dataTransfer = new ClipboardEvent('').clipboardData || new DataTransfer(); // Add flattened files to temp `dataTransfer` object to get a true `FileList` array\n\n flattenDeep(cloneDeep(files)).forEach(function (file) {\n // Make sure to remove the custom `$path` attribute\n delete file.$path;\n dataTransfer.items.add(file);\n });\n this.$refs.input.files = dataTransfer.files;\n } catch (_unused) {}\n },\n reset: function reset() {\n // IE 11 doesn't support setting `$input.value` to `''` or `null`\n // So we use this little extra hack to reset the value, just in case\n // This also appears to work on modern browsers as well\n // Wrapped in try in case IE 11 or mobile Safari crap out\n try {\n var $input = this.$refs.input;\n $input.value = '';\n $input.type = '';\n $input.type = 'file';\n } catch (_unused2) {}\n\n this.files = [];\n },\n handleFiles: function handleFiles(files) {\n var isDrop = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (isDrop) {\n // When dropped, make sure to filter files with the internal `accept` logic\n var filteredFiles = files.filter(this.isFilesArrayValid); // Only update files when we have any after filtering\n\n if (filteredFiles.length > 0) {\n this.setFiles(filteredFiles); // Try an set the file input's files array so that `required`\n // constraint works for dropped files (will fail in IE 11 though)\n\n this.setInputFiles(filteredFiles);\n }\n } else {\n // We always update the files from the `change` event\n this.setFiles(files);\n }\n },\n focusHandler: function focusHandler(event) {\n // Bootstrap v4 doesn't have focus styling for custom file input\n // Firefox has a `[type=file]:focus ~ sibling` selector issue,\n // so we add a `focus` class to get around these bugs\n if (this.plain || event.type === 'focusout') {\n this.hasFocus = false;\n } else {\n // Add focus styling for custom file input\n this.hasFocus = true;\n }\n },\n onChange: function onChange(event) {\n var _this2 = this;\n\n var type = event.type,\n target = event.target,\n _event$dataTransfer = event.dataTransfer,\n dataTransfer = _event$dataTransfer === void 0 ? {} : _event$dataTransfer;\n var isDrop = type === 'drop'; // Always emit original event\n\n this.$emit(EVENT_NAME_CHANGE, event);\n var items = arrayFrom(dataTransfer.items || []);\n\n if (HAS_PROMISE_SUPPORT && items.length > 0 && !isNull(getDataTransferItemEntry(items[0]))) {\n // Drop handling for modern browsers\n // Supports nested directory structures in `directory` mode\n\n /* istanbul ignore next: not supported in JSDOM */\n getAllFileEntries(items, this.directory).then(function (files) {\n return _this2.handleFiles(files, isDrop);\n });\n } else {\n // Standard file input handling (native file input change event),\n // or fallback drop mode (IE 11 / Opera) which don't support `directory` mode\n var files = arrayFrom(target.files || dataTransfer.files || []).map(function (file) {\n // Add custom `$path` property to each file (to be consistent with drop mode)\n file.$path = file.webkitRelativePath || '';\n return file;\n });\n this.handleFiles(files, isDrop);\n }\n },\n onDragenter: function onDragenter(event) {\n stopEvent(event);\n this.dragging = true;\n var _event$dataTransfer2 = event.dataTransfer,\n dataTransfer = _event$dataTransfer2 === void 0 ? {} : _event$dataTransfer2; // Early exit when the input or dropping is disabled\n\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n // Show deny feedback\n\n /* istanbul ignore next: not supported in JSDOM */\n dataTransfer.dropEffect = 'none';\n this.dropAllowed = false;\n return;\n }\n /* istanbul ignore next: not supported in JSDOM */\n\n\n dataTransfer.dropEffect = 'copy';\n },\n // Note this event fires repeatedly while the mouse is over the dropzone at\n // intervals in the milliseconds, so avoid doing much processing in here\n onDragover: function onDragover(event) {\n stopEvent(event);\n this.dragging = true;\n var _event$dataTransfer3 = event.dataTransfer,\n dataTransfer = _event$dataTransfer3 === void 0 ? {} : _event$dataTransfer3; // Early exit when the input or dropping is disabled\n\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n // Show deny feedback\n\n /* istanbul ignore next: not supported in JSDOM */\n dataTransfer.dropEffect = 'none';\n this.dropAllowed = false;\n return;\n }\n /* istanbul ignore next: not supported in JSDOM */\n\n\n dataTransfer.dropEffect = 'copy';\n },\n onDragleave: function onDragleave(event) {\n var _this3 = this;\n\n stopEvent(event);\n this.$nextTick(function () {\n _this3.dragging = false; // Reset `dropAllowed` to default\n\n _this3.dropAllowed = !_this3.noDrop;\n });\n },\n // Triggered by a file drop onto drop target\n onDrop: function onDrop(event) {\n var _this4 = this;\n\n stopEvent(event);\n this.dragging = false; // Early exit when the input or dropping is disabled\n\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n this.$nextTick(function () {\n // Reset `dropAllowed` to default\n _this4.dropAllowed = !_this4.noDrop;\n });\n return;\n }\n\n this.onChange(event);\n }\n },\n render: function render(h) {\n var custom = this.custom,\n plain = this.plain,\n size = this.size,\n dragging = this.dragging,\n stateClass = this.stateClass,\n bvAttrs = this.bvAttrs; // Form Input\n\n var $input = h('input', {\n class: [{\n 'form-control-file': plain,\n 'custom-file-input': custom,\n focus: custom && this.hasFocus\n }, stateClass],\n // With IE 11, the input gets in the \"way\" of the drop events,\n // so we move it out of the way by putting it behind the label\n // Bootstrap v4 has it in front\n style: custom ? {\n zIndex: -5\n } : {},\n attrs: this.computedAttrs,\n on: {\n change: this.onChange,\n focusin: this.focusHandler,\n focusout: this.focusHandler,\n reset: this.reset\n },\n ref: 'input'\n });\n\n if (plain) {\n return $input;\n } // Overlay label\n\n\n var $label = h('label', {\n staticClass: 'custom-file-label',\n class: {\n dragging: dragging\n },\n attrs: {\n for: this.safeId(),\n // This goes away in Bootstrap v5\n 'data-browse': this.browseText || null\n }\n }, [h('span', {\n staticClass: 'd-block form-file-text',\n // `pointer-events: none` is used to make sure\n // the drag events fire only on the label\n style: {\n pointerEvents: 'none'\n }\n }, [this.labelContent])]); // Return rendered custom file input\n\n return h('div', {\n staticClass: 'custom-file b-form-file',\n class: [_defineProperty({}, \"b-custom-control-\".concat(size), size), stateClass, bvAttrs.class],\n style: bvAttrs.style,\n attrs: {\n id: this.safeId('_BV_file_outer_')\n },\n on: {\n dragenter: this.onDragenter,\n dragover: this.onDragover,\n dragleave: this.onDragleave,\n drop: this.onDrop\n }\n }, [$input, $label]);\n }\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('form-wizard',{staticClass:\"wizard-vertical mb-3\",attrs:{\"color\":\"#9600ff\",\"title\":null,\"subtitle\":null,\"layout\":\"vertical\",\"finish-button-text\":\"Ajouter\",\"back-button-text\":\"Précédant\",\"next-button-text\":\"suivant\"},on:{\"on-complete\":_vm.addProject}},[_c('tab-content',{attrs:{\"title\":\"Project informations\"}},[_c('b-row',[_c('b-col',{staticClass:\"mb-2\",attrs:{\"cols\":\"12\"}},[_c('h3',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('Project')))]),_c('small',{staticClass:\"text-muted\"},[_vm._v(\" \"+_vm._s(_vm.$t('General_information_about_the_project'))+\" \")])]),_c('b-col',{attrs:{\"md\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('Project_name'),\"label-for\":\"v-nom\"}},[_c('b-form-input',{attrs:{\"id\":\"v-nom\",\"placeholder\":_vm.$t('Project_name')},model:{value:(_vm.project.name),callback:function ($$v) {_vm.$set(_vm.project, \"name\", $$v)},expression:\"project.name\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('Tags'),\"label-for\":\"tag\"},scopedSlots:_vm._u([{key:\"option\",fn:function(ref){\nvar label = ref.label;\nreturn [_c('span',{staticClass:\"ml-50 d-inline-block align-middle\"},[_vm._v(\" \"+_vm._s(label))])]}}])},[_c('v-select',{attrs:{\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"options\":_vm.tagsOptions,\"reduce\":function (option) { return option.value; },\"input-id\":\"tags\",\"label\":\"label\",\"multiple\":\"\"},model:{value:(_vm.project.tags),callback:function ($$v) {_vm.$set(_vm.project, \"tags\", $$v)},expression:\"project.tags\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('Description'),\"label-for\":\"v-description\"}},[_c('b-form-textarea',{attrs:{\"id\":\"v-description\",\"placeholder\":_vm.$t('Project_description'),\"rows\":\"3\"},model:{value:(_vm.project.description),callback:function ($$v) {_vm.$set(_vm.project, \"description\", $$v)},expression:\"project.description\"}})],1)],1)],1)],1),_c('tab-content',{attrs:{\"title\":\"Project details\"}},[_c('b-row',[_c('b-col',{staticClass:\"mb-2\",attrs:{\"cols\":\"12\"}},[_c('h5',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('Project_details')))]),_c('small',{staticClass:\"text-muted\"},[_vm._v(_vm._s(_vm.$t('Detail_project')))])]),_c('b-col',{staticStyle:{\"margin-bottom\":\"15px\"},attrs:{\"md\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('Assignee'),\"label-for\":\"assignee\"}},[_c('v-select',{staticClass:\"assignee-selector\",attrs:{\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"options\":_vm.usersOptions,\"label\":\"name\",\"input-id\":\"assignee\",\"multiple\":\"\"},model:{value:(_vm.users),callback:function ($$v) {_vm.users=$$v},expression:\"users\"}})],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditProject.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditProject.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditProject.vue?vue&type=template&id=ae333622&\"\nimport script from \"./EditProject.vue?vue&type=script&lang=js&\"\nexport * from \"./EditProject.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditProject.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","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});","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditProject.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""}