{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/utils/css-escape.js","webpack:///./node_modules/bootstrap-vue/esm/components/layout/form-row.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-text.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-invalid-feedback.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-valid-feedback.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-group/form-group.js","webpack:///./node_modules/vee-validate/dist/rules.js","webpack:///./src/@core/utils/validations/validators.js","webpack:///./src/@core/utils/validations/validations.js"],"names":["escapeChar","value","length","firstCharCode","charCodeAt","split","reduce","result","char","index","charCode","concat","toString","tag","BFormRow","extend","name","functional","props","render","h","_ref","data","children","staticClass","_defineProperty","obj","key","Object","defineProperty","enumerable","configurable","writable","id","inline","textVariant","BFormText","class","attrs","ariaLive","forceShow","role","state","tooltip","BFormInvalidFeedback","show","BFormValidFeedback","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread","target","i","arguments","source","forEach","getOwnPropertyDescriptors","defineProperties","INPUTS","INPUT_SELECTOR","map","v","join","LEGEND_INTERACTIVE_ELEMENTS","breakpoint","description","disabled","feedbackAriaLive","invalidFeedback","label","labelClass","labelFor","labelSize","labelSrOnly","validFeedback","validated","BFormGroup","mixins","this","ariaDescribedby","computed","contentColProps","getColProps","$props","labelAlignClasses","getAlignClasses","labelColProps","isHorizontal","watch","newValue","oldValue","updateAriaDescribedby","mounted","_this","$nextTick","methods","prefix","propValue","identity","$input","$refs","content","attr","newIds","oldIds","ids","array","indexOf","trim","onLegendClick","event","tagName","inputs","computedState","normalizeSlot","safeId","isFieldset","$label","labelContent","labelId","labelTag","for","on","click","tabindex","$invalidFeedback","invalidFeedbackContent","invalidFeedbackId","$validFeedback","validFeedbackContent","validFeedbackId","$description","descriptionContent","descriptionId","$content","ref","stateClass","computedAriaInvalid","alpha","en","cs","da","de","es","fa","fr","it","lt","nl","hu","pl","pt","ro","ru","sk","sr","sv","tr","uk","ar","az","el","alphanumeric","alphaDash","validate","_a","_b","locale","Array","isArray","every","val","test","some","loc","params","alpha$1","validate$1","params$1","alpha_dash","validate$2","params$2","alpha_num","validate$4","min","max","Number","params$4","between","validate$5","String","params$5","isTarget","confirmed","validate$6","strVal","params$6","cast","digits","validate$8","multiple","re","emailStr","params$8","default","email","isNullOrUndefined","undefined","isEmptyArray","arr","isCallable","fn","toArray","arrayLike","from","_copyArray","validate$d","integer","validate$g","params$b","validate$h","params$c","validate$k","params$e","validate$n","regex","params$g","RegExp","validate$o","allowFalse","valid","required","computesRequired","params$h","validatorPositive","validatorPassword","password","regExp","validPassword","validatorEMSO","c","isNaN","emso_sum","substring","controlDigit","validatorTAX","sum","control","rule_required","rule_email","rule_min","rule_max","rule_confirmed","rule_regex","rule_between","rule_alpha","rule_integer","rule_digits","rule_alpha_dash","rule_alpha_num","rule_length","emso_rule","tax_rule","max_text","param","number","min_text","dictionary","messages","positive","field","sl","localize"],"mappings":"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","file":"js/chunk-8dd2d4c6.0f5a155d.js","sourcesContent":["import { toString } from './string';\n\nvar escapeChar = function escapeChar(value) {\n return '\\\\' + value;\n}; // The `cssEscape()` util is based on this `CSS.escape()` polyfill:\n// https://github.com/mathiasbynens/CSS.escape\n\n\nexport var cssEscape = function cssEscape(value) {\n value = toString(value);\n var length = value.length;\n var firstCharCode = value.charCodeAt(0);\n return value.split('').reduce(function (result, char, index) {\n var charCode = value.charCodeAt(index); // If the character is NULL (U+0000), use (U+FFFD) as replacement\n\n if (charCode === 0x0000) {\n return result + \"\\uFFFD\";\n } // If the character ...\n\n\n if ( // ... is U+007F OR\n charCode === 0x007f || // ... is in the range [\\1-\\1F] (U+0001 to U+001F) OR ...\n charCode >= 0x0001 && charCode <= 0x001f || // ... is the first character and is in the range [0-9] (U+0030 to U+0039) OR ...\n index === 0 && charCode >= 0x0030 && charCode <= 0x0039 || // ... is the second character and is in the range [0-9] (U+0030 to U+0039)\n // and the first character is a `-` (U+002D) ...\n index === 1 && charCode >= 0x0030 && charCode <= 0x0039 && firstCharCode === 0x002d) {\n // ... https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n return result + escapeChar(\"\".concat(charCode.toString(16), \" \"));\n } // If the character ...\n\n\n if ( // ... is the first character AND ...\n index === 0 && // ... is a `-` (U+002D) AND ...\n charCode === 0x002d && // ... there is no second character ...\n length === 1) {\n // ... use the escaped character\n return result + escapeChar(char);\n } // If the character ...\n\n\n if ( // ... is greater than or equal to U+0080 OR ...\n charCode >= 0x0080 || // ... is `-` (U+002D) OR ...\n charCode === 0x002d || // ... is `_` (U+005F) OR ...\n charCode === 0x005f || // ... is in the range [0-9] (U+0030 to U+0039) OR ...\n charCode >= 0x0030 && charCode <= 0x0039 || // ... is in the range [A-Z] (U+0041 to U+005A) OR ...\n charCode >= 0x0041 && charCode <= 0x005a || // ... is in the range [a-z] (U+0061 to U+007A) ...\n charCode >= 0x0061 && charCode <= 0x007a) {\n // ... use the character itself\n return result + char;\n } // Otherwise use the escaped character\n // See: https://drafts.csswg.org/cssom/#escape-a-character\n\n\n return result + escapeChar(char);\n }, '');\n};","import { Vue, mergeData } from '../../vue';\nimport { NAME_FORM_ROW } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_FORM_ROW); // --- Main component ---\n// @vue/component\n\nexport var BFormRow = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_ROW,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.tag, mergeData(data, {\n staticClass: 'form-row'\n }), children);\n }\n});","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue, mergeData } from '../../vue';\nimport { NAME_FORM_TEXT } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n id: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'small'),\n textVariant: makeProp(PROP_TYPE_STRING, 'muted')\n}, NAME_FORM_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BFormText = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_TEXT,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.tag, mergeData(data, {\n class: _defineProperty({\n 'form-text': !props.inline\n }, \"text-\".concat(props.textVariant), props.textVariant),\n attrs: {\n id: props.id\n }\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_FORM_INVALID_FEEDBACK } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n ariaLive: makeProp(PROP_TYPE_STRING),\n forceShow: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING),\n // Tri-state prop: `true`, `false`, or `null`\n state: makeProp(PROP_TYPE_BOOLEAN, null),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false)\n}, NAME_FORM_INVALID_FEEDBACK); // --- Main component ---\n// @vue/component\n\nexport var BFormInvalidFeedback = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_INVALID_FEEDBACK,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var tooltip = props.tooltip,\n ariaLive = props.ariaLive;\n var show = props.forceShow === true || props.state === false;\n return h(props.tag, mergeData(data, {\n class: {\n 'd-block': show,\n 'invalid-feedback': !tooltip,\n 'invalid-tooltip': tooltip\n },\n attrs: {\n id: props.id || null,\n role: props.role || null,\n 'aria-live': ariaLive || null,\n 'aria-atomic': ariaLive ? 'true' : null\n }\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_FORM_VALID_FEEDBACK } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n ariaLive: makeProp(PROP_TYPE_STRING),\n forceShow: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING),\n // Tri-state prop: `true`, `false`, or `null`\n state: makeProp(PROP_TYPE_BOOLEAN, null),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false)\n}, NAME_FORM_VALID_FEEDBACK); // --- Main component ---\n// @vue/component\n\nexport var BFormValidFeedback = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_VALID_FEEDBACK,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var tooltip = props.tooltip,\n ariaLive = props.ariaLive;\n var show = props.forceShow === true || props.state === true;\n return h(props.tag, mergeData(data, {\n class: {\n 'd-block': show,\n 'valid-feedback': !tooltip,\n 'valid-tooltip': tooltip\n },\n attrs: {\n id: props.id || null,\n role: props.role || null,\n 'aria-live': ariaLive || null,\n 'aria-atomic': ariaLive ? 'true' : null\n }\n }), children);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { NAME_FORM_GROUP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { RX_SPACE_SPLIT } from '../../constants/regex';\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_DESCRIPTION, SLOT_NAME_INVALID_FEEDBACK, SLOT_NAME_LABEL, SLOT_NAME_VALID_FEEDBACK } from '../../constants/slots';\nimport { arrayIncludes } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { cssEscape } from '../../utils/css-escape';\nimport { select, selectAll, isVisible, setAttr, removeAttr, getAttr, attemptFocus } from '../../utils/dom';\nimport { identity } from '../../utils/identity';\nimport { isBoolean } from '../../utils/inspect';\nimport { toInteger } from '../../utils/number';\nimport { create, keys, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props';\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state';\nimport { idMixin, props as idProps } from '../../mixins/id';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BCol } from '../layout/col';\nimport { BFormRow } from '../layout/form-row';\nimport { BFormText } from '../form/form-text';\nimport { BFormInvalidFeedback } from '../form/form-invalid-feedback';\nimport { BFormValidFeedback } from '../form/form-valid-feedback'; // --- Constants ---\n\nvar INPUTS = ['input', 'select', 'textarea']; // Selector for finding first input in the form group\n\nvar INPUT_SELECTOR = INPUTS.map(function (v) {\n return \"\".concat(v, \":not([disabled])\");\n}).join(); // A list of interactive elements (tag names) inside ``'s legend\n\nvar LEGEND_INTERACTIVE_ELEMENTS = [].concat(INPUTS, ['a', 'button', 'label']); // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formStateProps), getBreakpointsUpCached().reduce(function (props, breakpoint) {\n // i.e. 'content-cols', 'content-cols-sm', 'content-cols-md', ...\n props[suffixPropName(breakpoint, 'contentCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING); // i.e. 'label-align', 'label-align-sm', 'label-align-md', ...\n\n props[suffixPropName(breakpoint, 'labelAlign')] = makeProp(PROP_TYPE_STRING); // i.e. 'label-cols', 'label-cols-sm', 'label-cols-md', ...\n\n props[suffixPropName(breakpoint, 'labelCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING);\n return props;\n }, create(null))), {}, {\n description: makeProp(PROP_TYPE_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n feedbackAriaLive: makeProp(PROP_TYPE_STRING, 'assertive'),\n invalidFeedback: makeProp(PROP_TYPE_STRING),\n label: makeProp(PROP_TYPE_STRING),\n labelClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n labelFor: makeProp(PROP_TYPE_STRING),\n labelSize: makeProp(PROP_TYPE_STRING),\n labelSrOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false),\n validFeedback: makeProp(PROP_TYPE_STRING),\n validated: makeProp(PROP_TYPE_BOOLEAN, false)\n })), NAME_FORM_GROUP);\n}; // --- Main component ---\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\n\nexport var BFormGroup = {\n name: NAME_FORM_GROUP,\n mixins: [idMixin, formStateMixin, normalizeSlotMixin],\n\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props; // eslint-disable-next-line no-return-assign\n\n return this.props = generateProps();\n },\n\n data: function data() {\n return {\n ariaDescribedby: null\n };\n },\n computed: {\n contentColProps: function contentColProps() {\n return this.getColProps(this.$props, 'content');\n },\n labelAlignClasses: function labelAlignClasses() {\n return this.getAlignClasses(this.$props, 'label');\n },\n labelColProps: function labelColProps() {\n return this.getColProps(this.$props, 'label');\n },\n isHorizontal: function isHorizontal() {\n // Determine if the form group will be rendered horizontal\n // based on the existence of 'content-col' or 'label-col' props\n return keys(this.contentColProps).length > 0 || keys(this.labelColProps).length > 0;\n }\n },\n watch: {\n ariaDescribedby: function ariaDescribedby(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.updateAriaDescribedby(newValue, oldValue);\n }\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\n // Set `aria-describedby` on the input specified by `labelFor`\n // We do this in a `$nextTick()` to ensure the children have finished rendering\n _this.updateAriaDescribedby(_this.ariaDescribedby);\n });\n },\n methods: {\n getAlignClasses: function getAlignClasses(props, prefix) {\n return getBreakpointsUpCached().reduce(function (result, breakpoint) {\n var propValue = props[suffixPropName(breakpoint, \"\".concat(prefix, \"Align\"))] || null;\n\n if (propValue) {\n result.push(['text', breakpoint, propValue].filter(identity).join('-'));\n }\n\n return result;\n }, []);\n },\n getColProps: function getColProps(props, prefix) {\n return getBreakpointsUpCached().reduce(function (result, breakpoint) {\n var propValue = props[suffixPropName(breakpoint, \"\".concat(prefix, \"Cols\"))]; // Handle case where the prop's value is an empty string,\n // which represents `true`\n\n propValue = propValue === '' ? true : propValue || false;\n\n if (!isBoolean(propValue) && propValue !== 'auto') {\n // Convert to column size to number\n propValue = toInteger(propValue, 0); // Ensure column size is greater than `0`\n\n propValue = propValue > 0 ? propValue : false;\n } // Add the prop to the list of props to give to ``\n // If breakpoint is '' (`${prefix}Cols` is `true`), then we use\n // the 'col' prop to make equal width at 'xs'\n\n\n if (propValue) {\n result[breakpoint || (isBoolean(propValue) ? 'col' : 'cols')] = propValue;\n }\n\n return result;\n }, {});\n },\n // Sets the `aria-describedby` attribute on the input if `labelFor` is set\n // Optionally accepts a string of IDs to remove as the second parameter\n // Preserves any `aria-describedby` value(s) user may have on input\n updateAriaDescribedby: function updateAriaDescribedby(newValue, oldValue) {\n var labelFor = this.labelFor;\n\n if (IS_BROWSER && labelFor) {\n // We need to escape `labelFor` since it can be user-provided\n var $input = select(\"#\".concat(cssEscape(labelFor)), this.$refs.content);\n\n if ($input) {\n var attr = 'aria-describedby';\n var newIds = (newValue || '').split(RX_SPACE_SPLIT);\n var oldIds = (oldValue || '').split(RX_SPACE_SPLIT); // Update ID list, preserving any original IDs\n // and ensuring the ID's are unique\n\n var ids = (getAttr($input, attr) || '').split(RX_SPACE_SPLIT).filter(function (id) {\n return !arrayIncludes(oldIds, id);\n }).concat(newIds).filter(function (id, index, ids) {\n return ids.indexOf(id) === index;\n }).filter(identity).join(' ').trim();\n\n if (ids) {\n setAttr($input, attr, ids);\n } else {\n removeAttr($input, attr);\n }\n }\n }\n },\n onLegendClick: function onLegendClick(event) {\n // Don't do anything if `labelFor` is set\n\n /* istanbul ignore next: clicking a label will focus the input, so no need to test */\n if (this.labelFor) {\n return;\n }\n\n var target = event.target;\n var tagName = target ? target.tagName : ''; // If clicked an interactive element inside legend,\n // we just let the default happen\n\n /* istanbul ignore next */\n\n if (LEGEND_INTERACTIVE_ELEMENTS.indexOf(tagName) !== -1) {\n return;\n } // If only a single input, focus it, emulating label behaviour\n\n\n var inputs = selectAll(INPUT_SELECTOR, this.$refs.content).filter(isVisible);\n\n if (inputs.length === 1) {\n attemptFocus(inputs[0]);\n }\n }\n },\n render: function render(h) {\n var state = this.computedState,\n feedbackAriaLive = this.feedbackAriaLive,\n isHorizontal = this.isHorizontal,\n labelFor = this.labelFor,\n normalizeSlot = this.normalizeSlot,\n safeId = this.safeId,\n tooltip = this.tooltip;\n var id = safeId();\n var isFieldset = !labelFor;\n var $label = h();\n var labelContent = normalizeSlot(SLOT_NAME_LABEL) || this.label;\n var labelId = labelContent ? safeId('_BV_label_') : null;\n\n if (labelContent || isHorizontal) {\n var labelSize = this.labelSize,\n labelColProps = this.labelColProps;\n var labelTag = isFieldset ? 'legend' : 'label';\n\n if (this.labelSrOnly) {\n if (labelContent) {\n $label = h(labelTag, {\n class: 'sr-only',\n attrs: {\n id: labelId,\n for: labelFor || null\n }\n }, [labelContent]);\n }\n\n $label = h(isHorizontal ? BCol : 'div', {\n props: isHorizontal ? labelColProps : {}\n }, [$label]);\n } else {\n $label = h(isHorizontal ? BCol : labelTag, {\n on: isFieldset ? {\n click: this.onLegendClick\n } : {},\n props: isHorizontal ? _objectSpread(_objectSpread({}, labelColProps), {}, {\n tag: labelTag\n }) : {},\n attrs: {\n id: labelId,\n for: labelFor || null,\n // We add a `tabindex` to legend so that screen readers\n // will properly read the `aria-labelledby` in IE\n tabindex: isFieldset ? '-1' : null\n },\n class: [// Hide the focus ring on the legend\n isFieldset ? 'bv-no-focus-ring' : '', // When horizontal or if a legend is rendered, add 'col-form-label' class\n // for correct sizing as Bootstrap has inconsistent font styling for\n // legend in non-horizontal form groups\n // See: https://github.com/twbs/bootstrap/issues/27805\n isHorizontal || isFieldset ? 'col-form-label' : '', // Emulate label padding top of `0` on legend when not horizontal\n !isHorizontal && isFieldset ? 'pt-0' : '', // If not horizontal and not a legend, we add 'd-block' class to label\n // so that label-align works\n !isHorizontal && !isFieldset ? 'd-block' : '', labelSize ? \"col-form-label-\".concat(labelSize) : '', this.labelAlignClasses, this.labelClass]\n }, [labelContent]);\n }\n }\n\n var $invalidFeedback = h();\n var invalidFeedbackContent = normalizeSlot(SLOT_NAME_INVALID_FEEDBACK) || this.invalidFeedback;\n var invalidFeedbackId = invalidFeedbackContent ? safeId('_BV_feedback_invalid_') : null;\n\n if (invalidFeedbackContent) {\n $invalidFeedback = h(BFormInvalidFeedback, {\n props: {\n ariaLive: feedbackAriaLive,\n id: invalidFeedbackId,\n role: feedbackAriaLive ? 'alert' : null,\n // If state is explicitly `false`, always show the feedback\n state: state,\n tooltip: tooltip\n },\n attrs: {\n tabindex: invalidFeedbackContent ? '-1' : null\n }\n }, [invalidFeedbackContent]);\n }\n\n var $validFeedback = h();\n var validFeedbackContent = normalizeSlot(SLOT_NAME_VALID_FEEDBACK) || this.validFeedback;\n var validFeedbackId = validFeedbackContent ? safeId('_BV_feedback_valid_') : null;\n\n if (validFeedbackContent) {\n $validFeedback = h(BFormValidFeedback, {\n props: {\n ariaLive: feedbackAriaLive,\n id: validFeedbackId,\n role: feedbackAriaLive ? 'alert' : null,\n // If state is explicitly `true`, always show the feedback\n state: state,\n tooltip: tooltip\n },\n attrs: {\n tabindex: validFeedbackContent ? '-1' : null\n }\n }, [validFeedbackContent]);\n }\n\n var $description = h();\n var descriptionContent = normalizeSlot(SLOT_NAME_DESCRIPTION) || this.description;\n var descriptionId = descriptionContent ? safeId('_BV_description_') : null;\n\n if (descriptionContent) {\n $description = h(BFormText, {\n attrs: {\n id: descriptionId,\n tabindex: '-1'\n }\n }, [descriptionContent]);\n } // Update `ariaDescribedby`\n // Screen readers will read out any content linked to by `aria-describedby`\n // even if the content is hidden with `display: none;`, hence we only include\n // feedback IDs if the form group's state is explicitly valid or invalid\n\n\n var ariaDescribedby = this.ariaDescribedby = [descriptionId, state === false ? invalidFeedbackId : null, state === true ? validFeedbackId : null].filter(identity).join(' ') || null;\n var $content = h(isHorizontal ? BCol : 'div', {\n props: isHorizontal ? this.contentColProps : {},\n ref: 'content'\n }, [normalizeSlot(SLOT_NAME_DEFAULT, {\n ariaDescribedby: ariaDescribedby,\n descriptionId: descriptionId,\n id: id,\n labelId: labelId\n }) || h(), $invalidFeedback, $validFeedback, $description]); // Return it wrapped in a form group\n // Note: Fieldsets do not support adding `row` or `form-row` directly\n // to them due to browser specific render issues, so we move the `form-row`\n // to an inner wrapper div when horizontal and using a fieldset\n\n return h(isFieldset ? 'fieldset' : isHorizontal ? BFormRow : 'div', {\n staticClass: 'form-group',\n class: [{\n 'was-validated': this.validated\n }, this.stateClass],\n attrs: {\n id: id,\n disabled: isFieldset ? this.disabled : null,\n role: isFieldset ? null : 'group',\n 'aria-invalid': this.computedAriaInvalid,\n // Only apply `aria-labelledby` if we are a horizontal fieldset\n // as the legend is no longer a direct child of fieldset\n 'aria-labelledby': isFieldset && isHorizontal ? labelId : null\n }\n }, isHorizontal && isFieldset ? [h(BFormRow, [$label, $content])] : [$label, $content]);\n }\n};","/**\n * vee-validate v3.4.5\n * (c) 2020 Abdelrahman Awad\n * @license MIT\n */\n/**\r\n * Some Alpha Regex helpers.\r\n * https://github.com/chriso/validator.js/blob/master/src/lib/alpha.js\r\n */\r\n/* eslint-disable no-misleading-character-class */\r\nvar alpha = {\r\n en: /^[A-Z]*$/i,\r\n cs: /^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]*$/i,\r\n da: /^[A-ZÆØÅ]*$/i,\r\n de: /^[A-ZÄÖÜß]*$/i,\r\n es: /^[A-ZÁÉÍÑÓÚÜ]*$/i,\r\n fa: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی]*$/,\r\n fr: /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]*$/i,\r\n it: /^[A-Z\\xC0-\\xFF]*$/i,\r\n lt: /^[A-ZĄČĘĖĮŠŲŪŽ]*$/i,\r\n nl: /^[A-ZÉËÏÓÖÜ]*$/i,\r\n hu: /^[A-ZÁÉÍÓÖŐÚÜŰ]*$/i,\r\n pl: /^[A-ZĄĆĘŚŁŃÓŻŹ]*$/i,\r\n pt: /^[A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]*$/i,\r\n ro: /^[A-ZĂÂÎŞŢ]*$/i,\r\n ru: /^[А-ЯЁ]*$/i,\r\n sk: /^[A-ZÁÄČĎÉÍĹĽŇÓŔŠŤÚÝŽ]*$/i,\r\n sr: /^[A-ZČĆŽŠĐ]*$/i,\r\n sv: /^[A-ZÅÄÖ]*$/i,\r\n tr: /^[A-ZÇĞİıÖŞÜ]*$/i,\r\n uk: /^[А-ЩЬЮЯЄІЇҐ]*$/i,\r\n ar: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]*$/,\r\n az: /^[A-ZÇƏĞİıÖŞÜ]*$/i,\r\n el: /^[Α-ώ]*$/i\r\n};\r\nvar alphaSpaces = {\r\n en: /^[A-Z\\s]*$/i,\r\n cs: /^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ\\s]*$/i,\r\n da: /^[A-ZÆØÅ\\s]*$/i,\r\n de: /^[A-ZÄÖÜß\\s]*$/i,\r\n es: /^[A-ZÁÉÍÑÓÚÜ\\s]*$/i,\r\n fa: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی]*$/,\r\n fr: /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ\\s]*$/i,\r\n it: /^[A-Z\\xC0-\\xFF\\s]*$/i,\r\n lt: /^[A-ZĄČĘĖĮŠŲŪŽ\\s]*$/i,\r\n nl: /^[A-ZÉËÏÓÖÜ\\s]*$/i,\r\n hu: /^[A-ZÁÉÍÓÖŐÚÜŰ\\s]*$/i,\r\n pl: /^[A-ZĄĆĘŚŁŃÓŻŹ\\s]*$/i,\r\n pt: /^[A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ\\s]*$/i,\r\n ro: /^[A-ZĂÂÎŞŢ\\s]*$/i,\r\n ru: /^[А-ЯЁ\\s]*$/i,\r\n sk: /^[A-ZÁÄČĎÉÍĹĽŇÓŔŠŤÚÝŽ\\s]*$/i,\r\n sr: /^[A-ZČĆŽŠĐ\\s]*$/i,\r\n sv: /^[A-ZÅÄÖ\\s]*$/i,\r\n tr: /^[A-ZÇĞİıÖŞÜ\\s]*$/i,\r\n uk: /^[А-ЩЬЮЯЄІЇҐ\\s]*$/i,\r\n ar: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ\\s]*$/,\r\n az: /^[A-ZÇƏĞİıÖŞÜ\\s]*$/i,\r\n el: /^[Α-ώ\\s]*$/i\r\n};\r\nvar alphanumeric = {\r\n en: /^[0-9A-Z]*$/i,\r\n cs: /^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]*$/i,\r\n da: /^[0-9A-ZÆØÅ]$/i,\r\n de: /^[0-9A-ZÄÖÜß]*$/i,\r\n es: /^[0-9A-ZÁÉÍÑÓÚÜ]*$/i,\r\n fa: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی]*$/,\r\n fr: /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]*$/i,\r\n it: /^[0-9A-Z\\xC0-\\xFF]*$/i,\r\n lt: /^[0-9A-ZĄČĘĖĮŠŲŪŽ]*$/i,\r\n hu: /^[0-9A-ZÁÉÍÓÖŐÚÜŰ]*$/i,\r\n nl: /^[0-9A-ZÉËÏÓÖÜ]*$/i,\r\n pl: /^[0-9A-ZĄĆĘŚŁŃÓŻŹ]*$/i,\r\n pt: /^[0-9A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]*$/i,\r\n ro: /^[0-9A-ZĂÂÎŞŢ]*$/i,\r\n ru: /^[0-9А-ЯЁ]*$/i,\r\n sk: /^[0-9A-ZÁÄČĎÉÍĹĽŇÓŔŠŤÚÝŽ]*$/i,\r\n sr: /^[0-9A-ZČĆŽŠĐ]*$/i,\r\n sv: /^[0-9A-ZÅÄÖ]*$/i,\r\n tr: /^[0-9A-ZÇĞİıÖŞÜ]*$/i,\r\n uk: /^[0-9А-ЩЬЮЯЄІЇҐ]*$/i,\r\n ar: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]*$/,\r\n az: /^[0-9A-ZÇƏĞİıÖŞÜ]*$/i,\r\n el: /^[0-9Α-ώ]*$/i\r\n};\r\nvar alphaDash = {\r\n en: /^[0-9A-Z_-]*$/i,\r\n cs: /^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ_-]*$/i,\r\n da: /^[0-9A-ZÆØÅ_-]*$/i,\r\n de: /^[0-9A-ZÄÖÜß_-]*$/i,\r\n es: /^[0-9A-ZÁÉÍÑÓÚÜ_-]*$/i,\r\n fa: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی]*$/,\r\n fr: /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ_-]*$/i,\r\n it: /^[0-9A-Z\\xC0-\\xFF_-]*$/i,\r\n lt: /^[0-9A-ZĄČĘĖĮŠŲŪŽ_-]*$/i,\r\n nl: /^[0-9A-ZÉËÏÓÖÜ_-]*$/i,\r\n hu: /^[0-9A-ZÁÉÍÓÖŐÚÜŰ_-]*$/i,\r\n pl: /^[0-9A-ZĄĆĘŚŁŃÓŻŹ_-]*$/i,\r\n pt: /^[0-9A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ_-]*$/i,\r\n ro: /^[0-9A-ZĂÂÎŞŢ_-]*$/i,\r\n ru: /^[0-9А-ЯЁ_-]*$/i,\r\n sk: /^[0-9A-ZÁÄČĎÉÍĹĽŇÓŔŠŤÚÝŽ_-]*$/i,\r\n sr: /^[0-9A-ZČĆŽŠĐ_-]*$/i,\r\n sv: /^[0-9A-ZÅÄÖ_-]*$/i,\r\n tr: /^[0-9A-ZÇĞİıÖŞÜ_-]*$/i,\r\n uk: /^[0-9А-ЩЬЮЯЄІЇҐ_-]*$/i,\r\n ar: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ_-]*$/,\r\n az: /^[0-9A-ZÇƏĞİıÖŞÜ_-]*$/i,\r\n el: /^[0-9Α-ώ_-]*$/i\r\n};\n\nvar validate = function (value, _a) {\r\n var _b = (_a === void 0 ? {} : _a).locale, locale = _b === void 0 ? '' : _b;\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate(val, { locale: locale }); });\r\n }\r\n // Match at least one locale.\r\n if (!locale) {\r\n return Object.keys(alpha).some(function (loc) { return alpha[loc].test(value); });\r\n }\r\n return (alpha[locale] || alpha.en).test(value);\r\n};\r\nvar params = [\r\n {\r\n name: 'locale'\r\n }\r\n];\r\nvar alpha$1 = {\r\n validate: validate,\r\n params: params\r\n};\n\nvar validate$1 = function (value, _a) {\r\n var _b = (_a === void 0 ? {} : _a).locale, locale = _b === void 0 ? '' : _b;\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate$1(val, { locale: locale }); });\r\n }\r\n // Match at least one locale.\r\n if (!locale) {\r\n return Object.keys(alphaDash).some(function (loc) { return alphaDash[loc].test(value); });\r\n }\r\n return (alphaDash[locale] || alphaDash.en).test(value);\r\n};\r\nvar params$1 = [\r\n {\r\n name: 'locale'\r\n }\r\n];\r\nvar alpha_dash = {\r\n validate: validate$1,\r\n params: params$1\r\n};\n\nvar validate$2 = function (value, _a) {\r\n var _b = (_a === void 0 ? {} : _a).locale, locale = _b === void 0 ? '' : _b;\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate$2(val, { locale: locale }); });\r\n }\r\n // Match at least one locale.\r\n if (!locale) {\r\n return Object.keys(alphanumeric).some(function (loc) { return alphanumeric[loc].test(value); });\r\n }\r\n return (alphanumeric[locale] || alphanumeric.en).test(value);\r\n};\r\nvar params$2 = [\r\n {\r\n name: 'locale'\r\n }\r\n];\r\nvar alpha_num = {\r\n validate: validate$2,\r\n params: params$2\r\n};\n\nvar validate$3 = function (value, _a) {\r\n var _b = (_a === void 0 ? {} : _a).locale, locale = _b === void 0 ? '' : _b;\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate$3(val, { locale: locale }); });\r\n }\r\n // Match at least one locale.\r\n if (!locale) {\r\n return Object.keys(alphaSpaces).some(function (loc) { return alphaSpaces[loc].test(value); });\r\n }\r\n return (alphaSpaces[locale] || alphaSpaces.en).test(value);\r\n};\r\nvar params$3 = [\r\n {\r\n name: 'locale'\r\n }\r\n];\r\nvar alpha_spaces = {\r\n validate: validate$3,\r\n params: params$3\r\n};\n\nvar validate$4 = function (value, _a) {\r\n var _b = _a === void 0 ? {} : _a, min = _b.min, max = _b.max;\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return !!validate$4(val, { min: min, max: max }); });\r\n }\r\n return Number(min) <= value && Number(max) >= value;\r\n};\r\nvar params$4 = [\r\n {\r\n name: 'min'\r\n },\r\n {\r\n name: 'max'\r\n }\r\n];\r\nvar between = {\r\n validate: validate$4,\r\n params: params$4\r\n};\n\nvar validate$5 = function (value, _a) {\r\n var target = _a.target;\r\n return String(value) === String(target);\r\n};\r\nvar params$5 = [\r\n {\r\n name: 'target',\r\n isTarget: true\r\n }\r\n];\r\nvar confirmed = {\r\n validate: validate$5,\r\n params: params$5\r\n};\n\nvar validate$6 = function (value, _a) {\r\n var length = _a.length;\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate$6(val, { length: length }); });\r\n }\r\n var strVal = String(value);\r\n return /^[0-9]*$/.test(strVal) && strVal.length === length;\r\n};\r\nvar params$6 = [\r\n {\r\n name: 'length',\r\n cast: function (value) {\r\n return Number(value);\r\n }\r\n }\r\n];\r\nvar digits = {\r\n validate: validate$6,\r\n params: params$6\r\n};\n\nvar validateImage = function (file, width, height) {\r\n var URL = window.URL || window.webkitURL;\r\n return new Promise(function (resolve) {\r\n var image = new Image();\r\n image.onerror = function () { return resolve(false); };\r\n image.onload = function () { return resolve(image.width === width && image.height === height); };\r\n image.src = URL.createObjectURL(file);\r\n });\r\n};\r\nvar validate$7 = function (files, _a) {\r\n var width = _a.width, height = _a.height;\r\n var list = [];\r\n files = Array.isArray(files) ? files : [files];\r\n for (var i = 0; i < files.length; i++) {\r\n // if file is not an image, reject.\r\n if (!/\\.(jpg|svg|jpeg|png|bmp|gif)$/i.test(files[i].name)) {\r\n return Promise.resolve(false);\r\n }\r\n list.push(files[i]);\r\n }\r\n return Promise.all(list.map(function (file) { return validateImage(file, width, height); })).then(function (values) {\r\n return values.every(function (v) { return v; });\r\n });\r\n};\r\nvar params$7 = [\r\n {\r\n name: 'width',\r\n cast: function (value) {\r\n return Number(value);\r\n }\r\n },\r\n {\r\n name: 'height',\r\n cast: function (value) {\r\n return Number(value);\r\n }\r\n }\r\n];\r\nvar dimensions = {\r\n validate: validate$7,\r\n params: params$7\r\n};\n\nvar validate$8 = function (value, _a) {\r\n var multiple = (_a === void 0 ? {} : _a).multiple;\r\n // eslint-disable-next-line\r\n var re = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n if (multiple && !Array.isArray(value)) {\r\n value = String(value)\r\n .split(',')\r\n .map(function (emailStr) { return emailStr.trim(); });\r\n }\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return re.test(String(val)); });\r\n }\r\n return re.test(String(value));\r\n};\r\nvar params$8 = [\r\n {\r\n name: 'multiple',\r\n default: false\r\n }\r\n];\r\nvar email = {\r\n validate: validate$8,\r\n params: params$8\r\n};\n\nfunction isNullOrUndefined(value) {\r\n return value === null || value === undefined;\r\n}\r\nfunction isEmptyArray(arr) {\r\n return Array.isArray(arr) && arr.length === 0;\r\n}\r\nfunction isCallable(fn) {\r\n return typeof fn === 'function';\r\n}\n\nfunction includes(collection, item) {\r\n return collection.indexOf(item) !== -1;\r\n}\r\n/**\r\n * Converts an array-like object to array, provides a simple polyfill for Array.from\r\n */\r\nfunction toArray(arrayLike) {\r\n if (isCallable(Array.from)) {\r\n return Array.from(arrayLike);\r\n }\r\n /* istanbul ignore next */\r\n return _copyArray(arrayLike);\r\n}\r\n/* istanbul ignore next */\r\nfunction _copyArray(arrayLike) {\r\n var array = [];\r\n var length = arrayLike.length;\r\n for (var i = 0; i < length; i++) {\r\n array.push(arrayLike[i]);\r\n }\r\n return array;\r\n}\n\nvar validate$9 = function (value, options) {\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate$9(val, options); });\r\n }\r\n return toArray(options).some(function (item) {\r\n // eslint-disable-next-line\r\n return item == value;\r\n });\r\n};\r\nvar oneOf = {\r\n validate: validate$9\r\n};\n\nvar validate$a = function (value, args) {\r\n return !validate$9(value, args);\r\n};\r\nvar excluded = {\r\n validate: validate$a\r\n};\n\nvar validate$b = function (files, extensions) {\r\n var regex = new RegExp(\".(\" + extensions.join('|') + \")$\", 'i');\r\n if (Array.isArray(files)) {\r\n return files.every(function (file) { return regex.test(file.name); });\r\n }\r\n return regex.test(files.name);\r\n};\r\nvar ext = {\r\n validate: validate$b\r\n};\n\nvar validate$c = function (files) {\r\n var regex = /\\.(jpg|svg|jpeg|png|bmp|gif|webp)$/i;\r\n if (Array.isArray(files)) {\r\n return files.every(function (file) { return regex.test(file.name); });\r\n }\r\n return regex.test(files.name);\r\n};\r\nvar image = {\r\n validate: validate$c\r\n};\n\nvar validate$d = function (value) {\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return /^-?[0-9]+$/.test(String(val)); });\r\n }\r\n return /^-?[0-9]+$/.test(String(value));\r\n};\r\nvar integer = {\r\n validate: validate$d\r\n};\n\nvar validate$e = function (value, _a) {\r\n var other = _a.other;\r\n return value === other;\r\n};\r\nvar params$9 = [\r\n {\r\n name: 'other'\r\n }\r\n];\r\nvar is = {\r\n validate: validate$e,\r\n params: params$9\r\n};\n\nvar validate$f = function (value, _a) {\r\n var other = _a.other;\r\n return value !== other;\r\n};\r\nvar params$a = [\r\n {\r\n name: 'other'\r\n }\r\n];\r\nvar is_not = {\r\n validate: validate$f,\r\n params: params$a\r\n};\n\nvar validate$g = function (value, _a) {\r\n var length = _a.length;\r\n if (isNullOrUndefined(value)) {\r\n return false;\r\n }\r\n if (typeof value === 'string') {\r\n value = toArray(value);\r\n }\r\n if (typeof value === 'number') {\r\n value = String(value);\r\n }\r\n if (!value.length) {\r\n value = toArray(value);\r\n }\r\n return value.length === length;\r\n};\r\nvar params$b = [\r\n {\r\n name: 'length',\r\n cast: function (value) { return Number(value); }\r\n }\r\n];\r\nvar length = {\r\n validate: validate$g,\r\n params: params$b\r\n};\n\nvar validate$h = function (value, _a) {\r\n var length = _a.length;\r\n if (isNullOrUndefined(value)) {\r\n return length >= 0;\r\n }\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate$h(val, { length: length }); });\r\n }\r\n return String(value).length <= length;\r\n};\r\nvar params$c = [\r\n {\r\n name: 'length',\r\n cast: function (value) {\r\n return Number(value);\r\n }\r\n }\r\n];\r\nvar max = {\r\n validate: validate$h,\r\n params: params$c\r\n};\n\nvar validate$i = function (value, _a) {\r\n var max = _a.max;\r\n if (isNullOrUndefined(value) || value === '') {\r\n return false;\r\n }\r\n if (Array.isArray(value)) {\r\n return value.length > 0 && value.every(function (val) { return validate$i(val, { max: max }); });\r\n }\r\n return Number(value) <= max;\r\n};\r\nvar params$d = [\r\n {\r\n name: 'max',\r\n cast: function (value) {\r\n return Number(value);\r\n }\r\n }\r\n];\r\nvar max_value = {\r\n validate: validate$i,\r\n params: params$d\r\n};\n\nvar validate$j = function (files, mimes) {\r\n var regex = new RegExp(mimes.join('|').replace('*', '.+') + \"$\", 'i');\r\n if (Array.isArray(files)) {\r\n return files.every(function (file) { return regex.test(file.type); });\r\n }\r\n return regex.test(files.type);\r\n};\r\nvar mimes = {\r\n validate: validate$j\r\n};\n\nvar validate$k = function (value, _a) {\r\n var length = _a.length;\r\n if (isNullOrUndefined(value)) {\r\n return false;\r\n }\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate$k(val, { length: length }); });\r\n }\r\n return String(value).length >= length;\r\n};\r\nvar params$e = [\r\n {\r\n name: 'length',\r\n cast: function (value) {\r\n return Number(value);\r\n }\r\n }\r\n];\r\nvar min = {\r\n validate: validate$k,\r\n params: params$e\r\n};\n\nvar validate$l = function (value, _a) {\r\n var min = _a.min;\r\n if (isNullOrUndefined(value) || value === '') {\r\n return false;\r\n }\r\n if (Array.isArray(value)) {\r\n return value.length > 0 && value.every(function (val) { return validate$l(val, { min: min }); });\r\n }\r\n return Number(value) >= min;\r\n};\r\nvar params$f = [\r\n {\r\n name: 'min',\r\n cast: function (value) {\r\n return Number(value);\r\n }\r\n }\r\n];\r\nvar min_value = {\r\n validate: validate$l,\r\n params: params$f\r\n};\n\nvar ar = /^[٠١٢٣٤٥٦٧٨٩]+$/;\r\nvar en = /^[0-9]+$/;\r\nvar validate$m = function (value) {\r\n var testValue = function (val) {\r\n var strValue = String(val);\r\n return en.test(strValue) || ar.test(strValue);\r\n };\r\n if (Array.isArray(value)) {\r\n return value.every(testValue);\r\n }\r\n return testValue(value);\r\n};\r\nvar numeric = {\r\n validate: validate$m\r\n};\n\nvar validate$n = function (value, _a) {\r\n var regex = _a.regex;\r\n if (Array.isArray(value)) {\r\n return value.every(function (val) { return validate$n(val, { regex: regex }); });\r\n }\r\n return regex.test(String(value));\r\n};\r\nvar params$g = [\r\n {\r\n name: 'regex',\r\n cast: function (value) {\r\n if (typeof value === 'string') {\r\n return new RegExp(value);\r\n }\r\n return value;\r\n }\r\n }\r\n];\r\nvar regex = {\r\n validate: validate$n,\r\n params: params$g\r\n};\n\nvar validate$o = function (value, _a) {\r\n var allowFalse = (_a === void 0 ? { allowFalse: true } : _a).allowFalse;\r\n var result = {\r\n valid: false,\r\n required: true\r\n };\r\n if (isNullOrUndefined(value) || isEmptyArray(value)) {\r\n return result;\r\n }\r\n // incase a field considers `false` as an empty value like checkboxes.\r\n if (value === false && !allowFalse) {\r\n return result;\r\n }\r\n result.valid = !!String(value).trim().length;\r\n return result;\r\n};\r\nvar computesRequired = true;\r\nvar params$h = [\r\n {\r\n name: 'allowFalse',\r\n default: true\r\n }\r\n];\r\nvar required = {\r\n validate: validate$o,\r\n params: params$h,\r\n computesRequired: computesRequired\r\n};\n\nvar testEmpty = function (value) {\r\n return isEmptyArray(value) || includes([false, null, undefined], value) || !String(value).trim().length;\r\n};\r\nvar validate$p = function (value, _a) {\r\n var target = _a.target, values = _a.values;\r\n var required;\r\n if (values && values.length) {\r\n if (!Array.isArray(values) && typeof values === 'string') {\r\n values = [values];\r\n }\r\n // eslint-disable-next-line\r\n required = values.some(function (val) { return val == String(target).trim(); });\r\n }\r\n else {\r\n required = !testEmpty(target);\r\n }\r\n if (!required) {\r\n return {\r\n valid: true,\r\n required: required\r\n };\r\n }\r\n return {\r\n valid: !testEmpty(value),\r\n required: required\r\n };\r\n};\r\nvar params$i = [\r\n {\r\n name: 'target',\r\n isTarget: true\r\n },\r\n {\r\n name: 'values'\r\n }\r\n];\r\nvar computesRequired$1 = true;\r\nvar required_if = {\r\n validate: validate$p,\r\n params: params$i,\r\n computesRequired: computesRequired$1\r\n};\n\nvar validate$q = function (files, _a) {\r\n var size = _a.size;\r\n if (isNaN(size)) {\r\n return false;\r\n }\r\n var nSize = size * 1024;\r\n if (!Array.isArray(files)) {\r\n return files.size <= nSize;\r\n }\r\n for (var i = 0; i < files.length; i++) {\r\n if (files[i].size > nSize) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n};\r\nvar params$j = [\r\n {\r\n name: 'size',\r\n cast: function (value) {\r\n return Number(value);\r\n }\r\n }\r\n];\r\nvar size = {\r\n validate: validate$q,\r\n params: params$j\r\n};\n\nvar validate$r = function (value, params) {\r\n var _a = params || {}, _b = _a.decimals, decimals = _b === void 0 ? 0 : _b, _c = _a.separator, separator = _c === void 0 ? 'dot' : _c;\r\n var separators = {\r\n dot: '.',\r\n comma: ','\r\n };\r\n var regexPart = +decimals === 0 ? '+' : \"{\" + decimals + \"}\";\r\n var regex = new RegExp(\"^-?\\\\d+\\\\\" + (separators[separator] || '.') + \"\\\\d\" + regexPart + \"$\");\r\n return Array.isArray(value) ? value.every(function (val) { return regex.test(String(val)); }) : regex.test(String(value));\r\n};\r\nvar params$k = [\r\n {\r\n name: 'decimals',\r\n default: 0\r\n },\r\n {\r\n name: 'separator',\r\n default: 'dot'\r\n }\r\n];\r\nvar double = {\r\n validate: validate$r,\r\n params: params$k\r\n};\n\nexport { alpha$1 as alpha, alpha_dash, alpha_num, alpha_spaces, between, confirmed, digits, dimensions, double, email, excluded, ext, image, integer, is, is_not, length, max, max_value, mimes, min, min_value, numeric, oneOf, regex, required, required_if, size };\n","export const validatorPositive = value => {\n if (value >= 0) {\n return true\n }\n return false\n}\n\nexport const validatorPassword = password => {\n /* eslint-disable no-useless-escape */\n const regExp = /(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%&*()]).{8,}/\n /* eslint-enable no-useless-escape */\n const validPassword = regExp.test(password)\n return validPassword\n}\n\nexport const validatorCreditCard = creditnum => {\n /* eslint-disable no-useless-escape */\n const cRegExp = /^(?:3[47][0-9]{13})$/\n /* eslint-enable no-useless-escape */\n const validCreditCard = cRegExp.test(creditnum)\n return validCreditCard\n}\n\nexport const validatorUrlValidator = val => {\n if (val === undefined || val === null || val.length === 0) {\n return true\n }\n /* eslint-disable no-useless-escape */\n const re = /^(http[s]?:\\/\\/){0,1}(www\\.){0,1}[a-zA-Z0-9\\.\\-]+\\.[a-zA-Z]{2,5}[\\.]{0,1}/\n /* eslint-enable no-useless-escape */\n return re.test(val)\n}\n\nexport const validatorEMSO = (val) => {\n // https://sl.wikipedia.org/wiki/Enotna_mati%C4%8Dna_%C5%A1tevilka_ob%C4%8Dana -> formula from c#\n if (!val || val.length !== 13 || val.split().every(c => isNaN(Number(c)))) return false\n\n let emso_sum = 0\n for (let i = 7; i > 1; i--) {\n emso_sum += i * (Number(val.substring(7 - i, 7 - i + 1)) + Number(val.substring(13 - i, 13 - i + 1)))\n }\n\n const controlDigit = emso_sum % 11 === 0 ? 0 : 11 - (emso_sum % 11)\n return val[12] === String(controlDigit)\n}\n\nexport const validatorTAX = (val) => {\n if (!val || val.length !== 8 || val.split().every(c => isNaN(Number(c)))) return\n\n let sum = 0\n for (let i = 0; i < 7; i++) {\n sum += Number(val[i] * (8 - i))\n }\n let control = 11 - (sum % 11)\n if (control === 10 || control === 11) control = 0\n return val[7] === String(control)\n}\n","import { extend, localize } from 'vee-validate'\nimport {\n required as rule_required,\n email as rule_email,\n min as rule_min,\n max as rule_max,\n confirmed as rule_confirmed,\n regex as rule_regex,\n between as rule_between,\n alpha as rule_alpha,\n integer as rule_integer,\n digits as rule_digits,\n alpha_dash as rule_alpha_dash,\n alpha_num as rule_alpha_num,\n length as rule_length\n} from 'vee-validate/dist/rules'\nimport en from 'vee-validate/dist/locale/en.json'\nimport sl from 'vee-validate/dist/locale/sl.json'\n\n// eslint-disable-next-line object-curly-newline\nimport {\n validatorPositive,\n validatorPassword,\n validatorEMSO,\n validatorTAX\n} from './validators'\n\n// ////////////////////////////////////////////////////////\n// General\n// ////////////////////////////////////////////////////////\n\nexport const required = extend('required', rule_required)\n\nexport const email = extend('email', rule_email)\n\nexport const min = extend('min', rule_min)\n\nexport const max = extend('max', rule_max)\n\nexport const confirmed = extend('confirmed', rule_confirmed)\n\nexport const regex = extend('regex', rule_regex)\n\nexport const between = extend('between', rule_between)\n\nexport const alpha = extend('alpha', rule_alpha)\n\nexport const integer = extend('integer', rule_integer)\n\nexport const digits = extend('digits', rule_digits)\n\nexport const alphaDash = extend('alpha-dash', rule_alpha_dash)\n\nexport const alphaNum = extend('alpha-num', rule_alpha_num)\n\nexport const length = extend('length', rule_length)\n\nexport const positive = extend('positive', {\n validate: validatorPositive\n})\n\nexport const password = extend('password', {\n validate: validatorPassword\n})\n\nexport const emso_rule = extend('emso_rule', {\n validate: validatorEMSO\n})\n\nexport const tax_rule = extend('tax_rule', {\n validate: validatorTAX\n})\n\nexport const max_text = extend('max_text', {\n validate: (value, param) => {\n if (value.length <= Number(param.number)) {\n return true\n }\n return false\n },\n params: ['number']\n})\n\nexport const min_text = extend('min_text', {\n validate: (value, param) => {\n if (!value || !param) return false\n return value.length >= Number(param.number)\n },\n params: ['number']\n})\n\n\nconst dictionary = {\n en: {\n messages:{\n positive: 'The {_field_} must be positive number',\n password: 'The {_field_} must contain at least one uppercase, one lowercase, one special character and one digit',\n emso_rule: 'The {_field_} is invalid',\n tax_rule: 'The {_field_} is invalid',\n max_text: (field, params) => `Length of the field ${field} must be less than ${params.number}`\n }\n },\n sl: {\n messages: {\n positive: 'Polje {_field_} mora biti pozitivno število',\n password: 'Polje {_field_} mora vsebovati vsaj eno veliko črko, eno malo črko, en poseben znak in eno številko',\n emso_rule: 'Polje {_field_} ni pravilno',\n tax_rule: 'Polje {_field_} ni pravilno',\n max_text: (field, params) => `Dolžina polja ${field} mora biti manj kot ${params.number}`\n }\n }\n}\nlocalize({\n en: {\n messages: en.messages\n },\n sl: {\n messages: sl.messages\n }\n})\nlocalize(dictionary)\n"],"sourceRoot":""}