{"version":3,"sources":["webpack:////home/git/gitlab/node_modules/lodash/_createRange.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/components/shared_components/clear_icon_button/clear_icon_button.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/components/base/skeleton_loader/skeleton_loader.js","webpack:////home/git/gitlab/node_modules/visibilityjs/index.js","webpack:////home/git/gitlab/node_modules/fuzzaldrin-plus/lib/scorer.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/utils/i18n.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/components/form-input/form-input.js","webpack:////home/git/gitlab/node_modules/lodash/_baseRange.js","webpack:////home/git/gitlab/node_modules/visibilityjs/lib/visibility.timers.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/components/base/form/form_input/form_input.js","webpack:////home/git/gitlab/node_modules/fuzzaldrin-plus/lib/fuzzaldrin.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/mixins/form-state.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/mixins/form-text.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/directives/safe_html/constants.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/directives/safe_html/safe_html.js","webpack:////home/git/gitlab/node_modules/lodash/random.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/mixins/form-size.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/mixins/form-selection.js","webpack:////home/git/gitlab/node_modules/fuzzaldrin-plus/lib/query.js","webpack:////home/git/gitlab/node_modules/lodash/_isIterateeCall.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/components/base/search_box_by_type/search_box_by_type.js","webpack:////home/git/gitlab/node_modules/lodash/_baseRandom.js","webpack:////home/git/gitlab/node_modules/lodash/range.js","webpack:////home/git/gitlab/node_modules/fuzzaldrin-plus/lib/pathScorer.js","webpack:////home/git/gitlab/node_modules/visibilityjs/lib/visibility.core.js","webpack:////home/git/gitlab/node_modules/fuzzaldrin-plus/lib/matcher.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/mixins/form-validity.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/mixins/form-control.js","webpack:////home/git/gitlab/node_modules/fuzzaldrin-plus/lib/filter.js"],"names":["baseRange","isIterateeCall","toFinite","module","exports","fromRight","start","end","step","undefined","__vue_script__","name","components","GlButton","directives","GlTooltip","props","title","type","String","required","default","tooltipContainer","validator","value","HTMLElement","__vue_component__","render","_h","this","$createElement","_self","_c","_g","rawName","container","expression","modifiers","staticClass","attrs","$listeners","staticRenderFns","DEFAULT_LINE_WIDTH_PERCENTAGES","functional","width","Number","height","preserveAspectRatio","baseUrl","uniqueKey","lines","equalWidthLines","Boolean","createElement","_ref","slots","slotIsSet","propValueOrDefault","defaultValue","lineWidth","index","length","reducedMotion","window","matchMedia","matches","svg","class","viewBox","version","x","y","fill","id","map","key","rx","offset","attributeName","values","dur","repeatCount","style","AcronymResult","computeScore","emptyAcronymResult","isAcronymFullWord","isMatch","isSeparator","isWordEnd","isWordStart","scoreAcronyms","scoreCharacter","scoreConsecutives","scoreExact","scoreExactMatch","scorePattern","scorePosition","scoreSize","score","string","query","options","preparedQuery","string_lw","allowErrors","core_lw","core_up","toLowerCase","Math","ceil","subject","query_lw","query_up","i","j","m","n","qj_lw","qj_up","si","charCodeAt","subject_lw","acro","acro_score","align","csc_diag","csc_row","csc_score","csc_should_rebuild","miss_budget","miss_left","pos","record_miss","score_diag","score_row","score_up","si_lw","sz","count","indexOf","Array","charCodes","max","curr_s","prev_s","len","next_s","c","sc","abs","quality","sameCase","bonus","posBonus","startOfWord","k","mi","nj","pos2","fullWord","sepCount","sumPos","nbAcronymInQuery","call","translate","_i18n$key","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","arguments","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","configurable","writable","TYPES","list","min","noWheel","BFormInput","mixins","computed","localType","computedAttrs","form","disabled","placeholder","safeId","autocomplete","readonly","plaintext","computedAriaInvalid","computedListeners","bvListeners","input","onInput","change","onChange","blur","onBlur","watch","newValue","setWheelStopper","mounted","deactivated","activated","beforeDestroy","methods","on","$el","onWheelFocus","onWheelBlur","document","stopWheel","event","propagation","h","computedClass","domProps","localValue","ref","nativeCeil","nativeMax","result","lastTimer","install","Visibility","every","interval","hiddenInterval","callback","_time","number","_timers","visible","hidden","_run","isSupported","_listen","stop","_stop","_timed","_wasHidden","_stopRun","runNow","timer","runner","last","Date","delay","setTimeout","setInterval","clearInterval","clearTimeout","isHidden","wasHidden","inheritAttrs","model","prop","includes","defaultWidth","nonDefaultWidths","entries","breakpoint","_this","_len","args","_key","$emit","update","_len2","_key2","_b","cssClasses","$attrs","listeners","Query","defaultPathSeparator","matcher","parseOptions","pathScorer","preparedQueryCache","scorer","process","platform","candidates","usePathScoring","match","_results","_i","wrap","prepareQuery","useExtensionBonus","pathSeparator","optCharRegEx","state","formStateMixin","computedState","stateClass","ariaInvalid","_makeModelMixin","modelMixin","mixin","modelProps","MODEL_PROP_NAME","MODEL_EVENT_NAME","debounce","formatter","lazy","lazyFormatter","trim","formTextMixin","data","vModelValue","modifyValue","isRange","isColor","sizeFormClass","computedDebounce","hasFormatter","stringifyValue","modifiedValue","clearDebounce","created","$_inputDebounceTimer","formatValue","force","updateValue","doUpdate","$input","$refs","composing","formattedValue","defaultPrevented","focus","sanitize","DEFAULT_CONFIG","RETURN_DOM_FRAGMENT","ALLOW_UNKNOWN_PROTOCOLS","FORBID_ATTR","FORBID_TAGS","transform","el","binding","oldValue","_binding$arg","config","arg","textContent","appendChild","SafeHtmlDirective","bind","unbind","baseRandom","freeParseFloat","parseFloat","nativeMin","nativeRandom","random","lower","upper","floating","temp","rand","size","formSizeMixin","concat","formSelectionMixin","selectionStart","cache","get","set","val","selectionEnd","selectionDirection","select","_this$$refs$input","setSelectionRange","_this$$refs$input2","setRangeText","_this$$refs$input3","coreChars","countDir","getCharCodes","getExtension","opt_char_re","truncatedUpperCase","_arg","_ref1","core","depth","ext","replace","str","toUpperCase","eq","isArrayLike","isIndex","isObject","GlClearIconButton","GlIcon","GlFormInput","GlLoadingIcon","borderless","clearButtonTitle","isLoading","attributes","focusin","onFocusin","focusout","onFocusout","hasValue","element","_this$$refs$clearButt","clearButton","focusInput","relatedTarget","isInputOrClearButton","_vm","_v","inputAttributes","inputListeners","showClearButton","_e","$event","stopPropagation","clearInput","nativeFloor","floor","range","createRange","getExtensionScore","scorePath","fullPathScore","alpha","basePathScore","basePos","extAdjust","fileLength","lastIndexOf","slice","path","substr","candidate","startPos","endPos","maxDepth","matched","global","lastId","self","onVisible","support","listener","e","_callbacks","afterPrerendering","_doc","webkitHidden","visibilityState","webkitVisibilityState","_change","_init","addEventListener","attachEvent","basenameMatch","computeMatch","mergeMatches","baseMatches","matchIndex","matchPos","matchPositions","output","strPos","tagClass","tagClose","tagOpen","substring","a","b","ai","bj","out","backtrack","move","trace","reverse","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","autofocus","formControlMixin","handleAutofocus","$nextTick","pluckCandidates","sortCandidates","bKey","maxInners","maxResults","scoreProvider","scoredCandidates","spotLeft","sort"],"mappings":"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","file":"vendors-global_search_modal.d941f872.chunk.js","sourcesContent":["var baseRange = require('./_baseRange'),\n isIterateeCall = require('./_isIterateeCall'),\n toFinite = require('./toFinite');\n\n/**\n * Creates a `_.range` or `_.rangeRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new range function.\n */\nfunction createRange(fromRight) {\n return function(start, end, step) {\n if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {\n end = step = undefined;\n }\n // Ensure the sign of `-0` is preserved.\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);\n return baseRange(start, end, step, fromRight);\n };\n}\n\nmodule.exports = createRange;\n","import { GlTooltipDirective } from '../../../directives/tooltip';\nimport GlButton from '../../base/button/button';\nimport { translate } from '../../../utils/i18n';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'ClearIconButton',\n components: {\n GlButton\n },\n directives: {\n GlTooltip: GlTooltipDirective\n },\n props: {\n title: {\n type: String,\n required: false,\n default: () => translate('ClearIconButton.title', 'Clear')\n },\n tooltipContainer: {\n required: false,\n default: false,\n validator: value => value === false || typeof value === 'string' || value instanceof HTMLElement\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-button',_vm._g({directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",value:({ container: _vm.tooltipContainer }),expression:\"{ container: tooltipContainer }\",modifiers:{\"hover\":true}}],staticClass:\"gl-clear-icon-button\",attrs:{\"variant\":\"default\",\"category\":\"tertiary\",\"size\":\"small\",\"name\":\"clear\",\"icon\":\"clear\",\"title\":_vm.title,\"aria-label\":_vm.title}},_vm.$listeners))};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","import range from 'lodash/range';\nimport { uid } from '../../../utils/utils';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nconst DEFAULT_LINE_MAX_WIDTH = 235;\nconst DEFAULT_LINE_WIDTH_PERCENTAGES = [65, 100, 85];\nconst DEFAULT_LINE_HEIGHT = 10;\nconst DEFAULT_LINE_SPACING = 4;\nconst DEFAULT_SVG_WIDTH = 400;\nconst DEFAULT_SVG_HEIGHT = 130;\nvar script = {\n name: 'GlSkeletonLoader',\n functional: true,\n props: {\n /**\n * It will be set in the viewbox attr in the .\n * Defaults to 400 when skeleton is passed via the slot. Defaults to 235 when default skeleton is used\n */\n width: {\n type: Number,\n default: null,\n required: false\n },\n /**\n * It will be set in the viewbox attr in the . Defaults to 130 when skeleton is passed via the slot.\n * Defaults to the combined height of the lines when default skeleton is used\n */\n height: {\n type: Number,\n default: null,\n required: false\n },\n /**\n * Aspect ratio option of \n */\n preserveAspectRatio: {\n type: String,\n default: 'xMidYMid meet',\n required: false\n },\n /**\n * Required if you're using in your . Defaults to an empty string.\n * This prop is common used as: which will fill the SVG attribute with the relative path.\n */\n baseUrl: {\n type: String,\n default: '',\n required: false\n },\n /**\n * Defaults to unique id\n */\n uniqueKey: {\n type: String,\n default: () => uid(),\n required: false\n },\n /**\n * Number of lines to show when using the default skeleton\n */\n lines: {\n type: Number,\n default: 3,\n required: false\n },\n /**\n * If the default skeleton lines should all be the same width\n */\n equalWidthLines: {\n type: Boolean,\n default: false,\n required: false\n }\n },\n render(createElement, _ref) {\n let {\n props,\n slots\n } = _ref;\n const slotIsSet = () => slots().default;\n const propValueOrDefault = (name, defaultValue) => props[name] !== null ? props[name] : defaultValue;\n const width = () => {\n if (slotIsSet()) {\n return propValueOrDefault('width', DEFAULT_SVG_WIDTH);\n }\n return propValueOrDefault('width', DEFAULT_LINE_MAX_WIDTH);\n };\n const height = () => {\n if (slotIsSet()) {\n return propValueOrDefault('height', DEFAULT_SVG_HEIGHT);\n }\n return propValueOrDefault('height', props.lines * DEFAULT_LINE_HEIGHT + (props.lines - 1) * DEFAULT_LINE_SPACING);\n };\n const lineWidth = index => {\n if (props.equalWidthLines) {\n return '100%';\n }\n return `${DEFAULT_LINE_WIDTH_PERCENTAGES[index % DEFAULT_LINE_WIDTH_PERCENTAGES.length]}%`;\n };\n const reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n const svg = createElement('svg', {\n class: {\n 'gl-skeleton-loader': true,\n 'gl-w-full gl-h-full': !slotIsSet()\n },\n attrs: {\n viewBox: `0 0 ${width()} ${height()}`,\n version: '1.1',\n preserveAspectRatio: props.preserveAspectRatio\n }\n }, [createElement('title', {}, ['Loading']), createElement('rect', {\n attrs: {\n 'clip-path': `url(${props.baseUrl}#${props.uniqueKey}-idClip)`,\n x: 0,\n y: 0,\n width: width(),\n height: height(),\n ...(reducedMotion ? {\n class: 'gl-fill-gray-100'\n } : {\n fill: `url(${props.baseUrl}#${props.uniqueKey}-idGradient)`\n })\n }\n }), createElement('defs', {}, [createElement('clipPath', {\n attrs: {\n id: `${props.uniqueKey}-idClip`\n }\n }, slotIsSet() ? slots().default : range(props.lines).map(index => createElement('rect', {\n key: index,\n attrs: {\n y: index * DEFAULT_LINE_HEIGHT + index * DEFAULT_LINE_SPACING,\n width: lineWidth(index),\n height: DEFAULT_LINE_HEIGHT,\n rx: 4\n }\n }))), !reducedMotion && createElement('linearGradient', {\n attrs: {\n id: `${props.uniqueKey}-idGradient`\n }\n }, [createElement('stop', {\n class: 'primary-stop',\n attrs: {\n offset: '0%'\n }\n }, [createElement('animate', {\n attrs: {\n attributeName: 'offset',\n values: '-2; 1',\n dur: '1s',\n repeatCount: 'indefinite'\n }\n })]), createElement('stop', {\n class: 'secondary-stop',\n attrs: {\n offset: '50%'\n }\n }, [createElement('animate', {\n attrs: {\n attributeName: 'offset',\n values: '-1.5; 1.5',\n dur: '1s',\n repeatCount: 'indefinite'\n }\n })]), createElement('stop', {\n class: 'primary-stop',\n attrs: {\n offset: '100%'\n }\n }, [createElement('animate', {\n attrs: {\n attributeName: 'offset',\n values: '-1; 2',\n dur: '1s',\n repeatCount: 'indefinite'\n }\n })])])])]);\n if (slotIsSet()) {\n return svg;\n }\n return createElement('div', {\n class: 'gl-skeleton-loader-default-container gl-max-w-full',\n style: {\n width: props.width !== null ? `${props.width}px` : null,\n height: props.height !== null ? `${props.height}px` : null\n }\n }, [svg]);\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = undefined;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n {},\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","module.exports = require('./lib/visibility.timers.js')\n","(function() {\n var AcronymResult, computeScore, emptyAcronymResult, isAcronymFullWord, isMatch, isSeparator, isWordEnd, isWordStart, miss_coeff, pos_bonus, scoreAcronyms, scoreCharacter, scoreConsecutives, scoreExact, scoreExactMatch, scorePattern, scorePosition, scoreSize, tau_size, wm;\n\n wm = 150;\n\n pos_bonus = 20;\n\n tau_size = 150;\n\n miss_coeff = 0.75;\n\n exports.score = function(string, query, options) {\n var allowErrors, preparedQuery, score, string_lw;\n preparedQuery = options.preparedQuery, allowErrors = options.allowErrors;\n if (!(allowErrors || isMatch(string, preparedQuery.core_lw, preparedQuery.core_up))) {\n return 0;\n }\n string_lw = string.toLowerCase();\n score = computeScore(string, string_lw, preparedQuery);\n return Math.ceil(score);\n };\n\n exports.isMatch = isMatch = function(subject, query_lw, query_up) {\n var i, j, m, n, qj_lw, qj_up, si;\n m = subject.length;\n n = query_lw.length;\n if (!m || n > m) {\n return false;\n }\n i = -1;\n j = -1;\n while (++j < n) {\n qj_lw = query_lw.charCodeAt(j);\n qj_up = query_up.charCodeAt(j);\n while (++i < m) {\n si = subject.charCodeAt(i);\n if (si === qj_lw || si === qj_up) {\n break;\n }\n }\n if (i === m) {\n return false;\n }\n }\n return true;\n };\n\n exports.computeScore = computeScore = function(subject, subject_lw, preparedQuery) {\n var acro, acro_score, align, csc_diag, csc_row, csc_score, csc_should_rebuild, i, j, m, miss_budget, miss_left, n, pos, query, query_lw, record_miss, score, score_diag, score_row, score_up, si_lw, start, sz;\n query = preparedQuery.query;\n query_lw = preparedQuery.query_lw;\n m = subject.length;\n n = query.length;\n acro = scoreAcronyms(subject, subject_lw, query, query_lw);\n acro_score = acro.score;\n if (acro.count === n) {\n return scoreExact(n, m, acro_score, acro.pos);\n }\n pos = subject_lw.indexOf(query_lw);\n if (pos > -1) {\n return scoreExactMatch(subject, subject_lw, query, query_lw, pos, n, m);\n }\n score_row = new Array(n);\n csc_row = new Array(n);\n sz = scoreSize(n, m);\n miss_budget = Math.ceil(miss_coeff * n) + 5;\n miss_left = miss_budget;\n csc_should_rebuild = true;\n j = -1;\n while (++j < n) {\n score_row[j] = 0;\n csc_row[j] = 0;\n }\n i = -1;\n while (++i < m) {\n si_lw = subject_lw[i];\n if (!si_lw.charCodeAt(0) in preparedQuery.charCodes) {\n if (csc_should_rebuild) {\n j = -1;\n while (++j < n) {\n csc_row[j] = 0;\n }\n csc_should_rebuild = false;\n }\n continue;\n }\n score = 0;\n score_diag = 0;\n csc_diag = 0;\n record_miss = true;\n csc_should_rebuild = true;\n j = -1;\n while (++j < n) {\n score_up = score_row[j];\n if (score_up > score) {\n score = score_up;\n }\n csc_score = 0;\n if (query_lw[j] === si_lw) {\n start = isWordStart(i, subject, subject_lw);\n csc_score = csc_diag > 0 ? csc_diag : scoreConsecutives(subject, subject_lw, query, query_lw, i, j, start);\n align = score_diag + scoreCharacter(i, j, start, acro_score, csc_score);\n if (align > score) {\n score = align;\n miss_left = miss_budget;\n } else {\n if (record_miss && --miss_left <= 0) {\n return Math.max(score, score_row[n - 1]) * sz;\n }\n record_miss = false;\n }\n }\n score_diag = score_up;\n csc_diag = csc_row[j];\n csc_row[j] = csc_score;\n score_row[j] = score;\n }\n }\n score = score_row[n - 1];\n return score * sz;\n };\n\n exports.isWordStart = isWordStart = function(pos, subject, subject_lw) {\n var curr_s, prev_s;\n if (pos === 0) {\n return true;\n }\n curr_s = subject[pos];\n prev_s = subject[pos - 1];\n return isSeparator(prev_s) || (curr_s !== subject_lw[pos] && prev_s === subject_lw[pos - 1]);\n };\n\n exports.isWordEnd = isWordEnd = function(pos, subject, subject_lw, len) {\n var curr_s, next_s;\n if (pos === len - 1) {\n return true;\n }\n curr_s = subject[pos];\n next_s = subject[pos + 1];\n return isSeparator(next_s) || (curr_s === subject_lw[pos] && next_s !== subject_lw[pos + 1]);\n };\n\n isSeparator = function(c) {\n return c === ' ' || c === '.' || c === '-' || c === '_' || c === '/' || c === '\\\\';\n };\n\n scorePosition = function(pos) {\n var sc;\n if (pos < pos_bonus) {\n sc = pos_bonus - pos;\n return 100 + sc * sc;\n } else {\n return Math.max(100 + pos_bonus - pos, 0);\n }\n };\n\n exports.scoreSize = scoreSize = function(n, m) {\n return tau_size / (tau_size + Math.abs(m - n));\n };\n\n scoreExact = function(n, m, quality, pos) {\n return 2 * n * (wm * quality + scorePosition(pos)) * scoreSize(n, m);\n };\n\n exports.scorePattern = scorePattern = function(count, len, sameCase, start, end) {\n var bonus, sz;\n sz = count;\n bonus = 6;\n if (sameCase === count) {\n bonus += 2;\n }\n if (start) {\n bonus += 3;\n }\n if (end) {\n bonus += 1;\n }\n if (count === len) {\n if (start) {\n if (sameCase === len) {\n sz += 2;\n } else {\n sz += 1;\n }\n }\n if (end) {\n bonus += 1;\n }\n }\n return sameCase + sz * (sz + bonus);\n };\n\n exports.scoreCharacter = scoreCharacter = function(i, j, start, acro_score, csc_score) {\n var posBonus;\n posBonus = scorePosition(i);\n if (start) {\n return posBonus + wm * ((acro_score > csc_score ? acro_score : csc_score) + 10);\n }\n return posBonus + wm * csc_score;\n };\n\n exports.scoreConsecutives = scoreConsecutives = function(subject, subject_lw, query, query_lw, i, j, startOfWord) {\n var k, m, mi, n, nj, sameCase, sz;\n m = subject.length;\n n = query.length;\n mi = m - i;\n nj = n - j;\n k = mi < nj ? mi : nj;\n sameCase = 0;\n sz = 0;\n if (query[j] === subject[i]) {\n sameCase++;\n }\n while (++sz < k && query_lw[++j] === subject_lw[++i]) {\n if (query[j] === subject[i]) {\n sameCase++;\n }\n }\n if (sz < k) {\n i--;\n }\n if (sz === 1) {\n return 1 + 2 * sameCase;\n }\n return scorePattern(sz, n, sameCase, startOfWord, isWordEnd(i, subject, subject_lw, m));\n };\n\n exports.scoreExactMatch = scoreExactMatch = function(subject, subject_lw, query, query_lw, pos, n, m) {\n var end, i, pos2, sameCase, start;\n start = isWordStart(pos, subject, subject_lw);\n if (!start) {\n pos2 = subject_lw.indexOf(query_lw, pos + 1);\n if (pos2 > -1) {\n start = isWordStart(pos2, subject, subject_lw);\n if (start) {\n pos = pos2;\n }\n }\n }\n i = -1;\n sameCase = 0;\n while (++i < n) {\n if (query[pos + i] === subject[i]) {\n sameCase++;\n }\n }\n end = isWordEnd(pos + n - 1, subject, subject_lw, m);\n return scoreExact(n, m, scorePattern(n, n, sameCase, start, end), pos);\n };\n\n AcronymResult = (function() {\n function AcronymResult(score, pos, count) {\n this.score = score;\n this.pos = pos;\n this.count = count;\n }\n\n return AcronymResult;\n\n })();\n\n emptyAcronymResult = new AcronymResult(0, 0.1, 0);\n\n exports.scoreAcronyms = scoreAcronyms = function(subject, subject_lw, query, query_lw) {\n var count, fullWord, i, j, m, n, qj_lw, sameCase, score, sepCount, sumPos;\n m = subject.length;\n n = query.length;\n if (!(m > 1 && n > 1)) {\n return emptyAcronymResult;\n }\n count = 0;\n sepCount = 0;\n sumPos = 0;\n sameCase = 0;\n i = -1;\n j = -1;\n while (++j < n) {\n qj_lw = query_lw[j];\n if (isSeparator(qj_lw)) {\n i = subject_lw.indexOf(qj_lw, i + 1);\n if (i > -1) {\n sepCount++;\n continue;\n } else {\n break;\n }\n }\n while (++i < m) {\n if (qj_lw === subject_lw[i] && isWordStart(i, subject, subject_lw)) {\n if (query[j] === subject[i]) {\n sameCase++;\n }\n sumPos += i;\n count++;\n break;\n }\n }\n if (i === m) {\n break;\n }\n }\n if (count < 2) {\n return emptyAcronymResult;\n }\n fullWord = count === n ? isAcronymFullWord(subject, subject_lw, query, count) : false;\n score = scorePattern(count, n, sameCase, true, fullWord);\n return new AcronymResult(score, sumPos / count, count + sepCount);\n };\n\n isAcronymFullWord = function(subject, subject_lw, query, nbAcronymInQuery) {\n var count, i, m, n;\n m = subject.length;\n n = query.length;\n count = 0;\n if (m > 12 * n) {\n return false;\n }\n i = -1;\n while (++i < m) {\n if (isWordStart(i, subject, subject_lw) && ++count > nbAcronymInQuery) {\n return false;\n }\n }\n return true;\n };\n\n}).call(this);\n","import { i18n } from '../config';\n\n/**\n * Mark a label as translatable.\n *\n * @param {string} key Translation key to be leveraged by the consumer to provide a generic translation at configuration time.\n * @param {string} defaultValue A fallback value to be relied on if the consumer doesn't have translation capabilities.\n * @returns {string} The translated label.\n */\nconst translate = (key, defaultValue) => {\n var _i18n$key;\n return (_i18n$key = i18n[key]) !== null && _i18n$key !== void 0 ? _i18n$key : defaultValue;\n};\n\nexport { translate };\n","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); 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 = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : 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 { extend } from '../../vue';\nimport { NAME_FORM_INPUT } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { arrayIncludes } from '../../utils/array';\nimport { attemptBlur } from '../../utils/dom';\nimport { eventOn, eventOff, eventOnOff, stopEvent } from '../../utils/events';\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 { listenersMixin } from '../../mixins/listeners'; // --- Constants ---\n// Valid supported input types\n\nvar TYPES = ['text', 'password', 'email', 'number', 'url', 'tel', 'search', 'range', 'color', 'date', 'time', 'datetime', 'datetime-local', 'month', 'week']; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formControlProps), formSizeProps), formStateProps), formTextProps), {}, {\n list: makeProp(PROP_TYPE_STRING),\n max: makeProp(PROP_TYPE_NUMBER_STRING),\n min: makeProp(PROP_TYPE_NUMBER_STRING),\n // Disable mousewheel to prevent wheel from changing values (i.e. number/date)\n noWheel: makeProp(PROP_TYPE_BOOLEAN, false),\n step: makeProp(PROP_TYPE_NUMBER_STRING),\n type: makeProp(PROP_TYPE_STRING, 'text', function (type) {\n return arrayIncludes(TYPES, type);\n })\n})), NAME_FORM_INPUT); // --- Main component ---\n// @vue/component\n\nexport var BFormInput = /*#__PURE__*/extend({\n name: NAME_FORM_INPUT,\n // Mixin order is important!\n mixins: [listenersMixin, idMixin, formControlMixin, formSizeMixin, formStateMixin, formTextMixin, formSelectionMixin, formValidityMixin],\n props: props,\n computed: {\n localType: function localType() {\n // We only allow certain types\n var type = this.type;\n return arrayIncludes(TYPES, type) ? type : 'text';\n },\n computedAttrs: function computedAttrs() {\n var type = this.localType,\n name = this.name,\n form = this.form,\n disabled = this.disabled,\n placeholder = this.placeholder,\n required = this.required,\n min = this.min,\n max = this.max,\n step = this.step;\n return {\n id: this.safeId(),\n name: name,\n form: form,\n type: type,\n disabled: disabled,\n placeholder: placeholder,\n required: required,\n autocomplete: this.autocomplete || null,\n readonly: this.readonly || this.plaintext,\n min: min,\n max: max,\n step: step,\n list: type !== 'password' ? this.list : null,\n 'aria-required': 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 noWheel: function noWheel(newValue) {\n this.setWheelStopper(newValue);\n }\n },\n mounted: function mounted() {\n this.setWheelStopper(this.noWheel);\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n // Turn off listeners when keep-alive component deactivated\n\n /* istanbul ignore next */\n this.setWheelStopper(false);\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n // Turn on listeners (if no-wheel) when keep-alive component activated\n\n /* istanbul ignore next */\n this.setWheelStopper(this.noWheel);\n },\n beforeDestroy: function beforeDestroy() {\n /* istanbul ignore next */\n this.setWheelStopper(false);\n },\n methods: {\n setWheelStopper: function setWheelStopper(on) {\n var input = this.$el; // We use native events, so that we don't interfere with propagation\n\n eventOnOff(on, input, 'focus', this.onWheelFocus);\n eventOnOff(on, input, 'blur', this.onWheelBlur);\n\n if (!on) {\n eventOff(document, 'wheel', this.stopWheel);\n }\n },\n onWheelFocus: function onWheelFocus() {\n eventOn(document, 'wheel', this.stopWheel);\n },\n onWheelBlur: function onWheelBlur() {\n eventOff(document, 'wheel', this.stopWheel);\n },\n stopWheel: function stopWheel(event) {\n stopEvent(event, {\n propagation: false\n });\n attemptBlur(this.$el);\n }\n },\n render: function render(h) {\n return h('input', {\n class: this.computedClass,\n attrs: this.computedAttrs,\n domProps: {\n value: this.localValue\n },\n on: this.computedListeners,\n ref: 'input'\n });\n }\n});","/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeCeil = Math.ceil,\n nativeMax = Math.max;\n\n/**\n * The base implementation of `_.range` and `_.rangeRight` which doesn't\n * coerce arguments.\n *\n * @private\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @param {number} step The value to increment or decrement by.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the range of numbers.\n */\nfunction baseRange(start, end, step, fromRight) {\n var index = -1,\n length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),\n result = Array(length);\n\n while (length--) {\n result[fromRight ? length : ++index] = start;\n start += step;\n }\n return result;\n}\n\nmodule.exports = baseRange;\n",";(function (window) {\n \"use strict\";\n\n var lastTimer = -1;\n\n var install = function (Visibility) {\n\n // Run callback every `interval` milliseconds if page is visible and\n // every `hiddenInterval` milliseconds if page is hidden.\n //\n // Visibility.every(60 * 1000, 5 * 60 * 1000, function () {\n // checkNewMails();\n // });\n //\n // You can skip `hiddenInterval` and callback will be called only if\n // page is visible.\n //\n // Visibility.every(1000, function () {\n // updateCountdown();\n // });\n //\n // It is analog of `setInterval(callback, interval)` but use visibility\n // state.\n //\n // It return timer ID, that you can use in `Visibility.stop(id)` to stop\n // timer (`clearInterval` analog).\n // Warning: timer ID is different from interval ID from `setInterval`,\n // so don’t use it in `clearInterval`.\n //\n // On change state from hidden to visible timers will be execute.\n Visibility.every = function (interval, hiddenInterval, callback) {\n Visibility._time();\n\n if ( !callback ) {\n callback = hiddenInterval;\n hiddenInterval = null;\n }\n\n lastTimer += 1;\n var number = lastTimer;\n\n Visibility._timers[number] = {\n visible: interval,\n hidden: hiddenInterval,\n callback: callback\n };\n Visibility._run(number, false);\n\n if ( Visibility.isSupported() ) {\n Visibility._listen();\n }\n return number;\n };\n\n // Stop timer from `every` method by it ID (`every` method return it).\n //\n // slideshow = Visibility.every(5 * 1000, function () {\n // changeSlide();\n // });\n // $('.stopSlideshow').click(function () {\n // Visibility.stop(slideshow);\n // });\n Visibility.stop = function(id) {\n if ( !Visibility._timers[id] ) {\n return false;\n }\n Visibility._stop(id);\n delete Visibility._timers[id];\n return true;\n };\n\n // Callbacks and intervals added by `every` method.\n Visibility._timers = { };\n\n // Initialize variables on page loading.\n Visibility._time = function () {\n if ( Visibility._timed ) {\n return;\n }\n Visibility._timed = true;\n Visibility._wasHidden = Visibility.hidden();\n\n Visibility.change(function () {\n Visibility._stopRun();\n Visibility._wasHidden = Visibility.hidden();\n });\n };\n\n // Try to run timer from every method by it’s ID. It will be use\n // `interval` or `hiddenInterval` depending on visibility state.\n // If page is hidden and `hiddenInterval` is null,\n // it will not run timer.\n //\n // Argument `runNow` say, that timers must be execute now too.\n Visibility._run = function (id, runNow) {\n var interval,\n timer = Visibility._timers[id];\n\n if ( Visibility.hidden() ) {\n if ( null === timer.hidden ) {\n return;\n }\n interval = timer.hidden;\n } else {\n interval = timer.visible;\n }\n\n var runner = function () {\n timer.last = new Date();\n timer.callback.call(window);\n }\n\n if ( runNow ) {\n var now = new Date();\n var last = now - timer.last ;\n\n if ( interval > last ) {\n timer.delay = setTimeout(function () {\n timer.id = setInterval(runner, interval);\n runner();\n }, interval - last);\n } else {\n timer.id = setInterval(runner, interval);\n runner();\n }\n\n } else {\n timer.id = setInterval(runner, interval);\n }\n };\n\n // Stop timer from `every` method by it’s ID.\n Visibility._stop = function (id) {\n var timer = Visibility._timers[id];\n clearInterval(timer.id);\n clearTimeout(timer.delay);\n delete timer.id;\n delete timer.delay;\n };\n\n // Listener for `visibilitychange` event.\n Visibility._stopRun = function (event) {\n var isHidden = Visibility.hidden(),\n wasHidden = Visibility._wasHidden;\n\n if ( (isHidden && !wasHidden) || (!isHidden && wasHidden) ) {\n for ( var i in Visibility._timers ) {\n Visibility._stop(i);\n Visibility._run(i, !isHidden);\n }\n }\n };\n\n return Visibility;\n }\n\n if ( typeof(module) != 'undefined' && module.exports ) {\n module.exports = install(require('./visibility.core'));\n } else {\n install(window.Visibility)\n }\n\n})(window);\n","import isObject from 'lodash/isObject';\nimport { BFormInput } from 'bootstrap-vue/esm/index.js';\nimport { formInputWidths } from '../../../../utils/constants';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nconst MODEL_PROP = 'value';\nconst MODEL_EVENT = 'input';\nvar script = {\n name: 'GlFormInput',\n components: {\n BFormInput\n },\n inheritAttrs: false,\n model: {\n prop: MODEL_PROP,\n event: MODEL_EVENT\n },\n props: {\n /**\n * Maximum width of the input\n */\n width: {\n type: [String, Object],\n required: false,\n default: null,\n validator: value => {\n const widths = isObject(value) ? Object.values(value) : [value];\n return widths.every(width => Object.values(formInputWidths).includes(width));\n }\n }\n },\n computed: {\n cssClasses() {\n if (this.width === null) {\n return [];\n }\n if (isObject(this.width)) {\n const {\n default: defaultWidth,\n ...nonDefaultWidths\n } = this.width;\n return [...(defaultWidth ? [`gl-form-input-${defaultWidth}`] : []), ...Object.entries(nonDefaultWidths).map(_ref => {\n let [breakpoint, width] = _ref;\n return `gl-${breakpoint}-form-input-${width}`;\n })];\n }\n return [`gl-form-input-${this.width}`];\n },\n listeners() {\n var _this = this;\n return {\n ...this.$listeners,\n // Swap purpose of input and update events from underlying BFormInput.\n // See https://gitlab.com/gitlab-org/gitlab-ui/-/issues/631.\n input: function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n /**\n * Emitted to update the v-model\n *\n * @event update\n * @property {string} value new value\n */\n _this.$emit('update', ...args);\n },\n update: function () {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n /**\n * Triggered by user interaction. Emitted after any formatting (not including 'trim' or 'number' props).\n * Useful for getting the currently entered value when the 'debounce' or 'lazy' props are set.\n *\n * @event input\n * @property {string} value new value\n */\n _this.$emit(MODEL_EVENT, ...args);\n }\n };\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-input',_vm._g(_vm._b({staticClass:\"gl-form-input\",class:_vm.cssClasses,attrs:{\"no-wheel\":\"\"}},'b-form-input',_vm.$attrs,false),_vm.listeners))};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","(function() {\n var Query, defaultPathSeparator, filter, matcher, parseOptions, pathScorer, preparedQueryCache, scorer;\n\n filter = require('./filter');\n\n matcher = require('./matcher');\n\n scorer = require('./scorer');\n\n pathScorer = require('./pathScorer');\n\n Query = require('./query');\n\n preparedQueryCache = null;\n\n defaultPathSeparator = (typeof process !== \"undefined\" && process !== null ? process.platform : void 0) === \"win32\" ? '\\\\' : '/';\n\n module.exports = {\n filter: function(candidates, query, options) {\n if (options == null) {\n options = {};\n }\n if (!((query != null ? query.length : void 0) && (candidates != null ? candidates.length : void 0))) {\n return [];\n }\n options = parseOptions(options, query);\n return filter(candidates, query, options);\n },\n score: function(string, query, options) {\n if (options == null) {\n options = {};\n }\n if (!((string != null ? string.length : void 0) && (query != null ? query.length : void 0))) {\n return 0;\n }\n options = parseOptions(options, query);\n if (options.usePathScoring) {\n return pathScorer.score(string, query, options);\n } else {\n return scorer.score(string, query, options);\n }\n },\n match: function(string, query, options) {\n var _i, _ref, _results;\n if (options == null) {\n options = {};\n }\n if (!string) {\n return [];\n }\n if (!query) {\n return [];\n }\n if (string === query) {\n return (function() {\n _results = [];\n for (var _i = 0, _ref = string.length; 0 <= _ref ? _i < _ref : _i > _ref; 0 <= _ref ? _i++ : _i--){ _results.push(_i); }\n return _results;\n }).apply(this);\n }\n options = parseOptions(options, query);\n return matcher.match(string, query, options);\n },\n wrap: function(string, query, options) {\n if (options == null) {\n options = {};\n }\n if (!string) {\n return [];\n }\n if (!query) {\n return [];\n }\n options = parseOptions(options, query);\n return matcher.wrap(string, query, options);\n },\n prepareQuery: function(query, options) {\n if (options == null) {\n options = {};\n }\n options = parseOptions(options, query);\n return options.preparedQuery;\n }\n };\n\n parseOptions = function(options, query) {\n if (options.allowErrors == null) {\n options.allowErrors = false;\n }\n if (options.usePathScoring == null) {\n options.usePathScoring = true;\n }\n if (options.useExtensionBonus == null) {\n options.useExtensionBonus = false;\n }\n if (options.pathSeparator == null) {\n options.pathSeparator = defaultPathSeparator;\n }\n if (options.optCharRegEx == null) {\n options.optCharRegEx = null;\n }\n if (options.wrap == null) {\n options.wrap = null;\n }\n if (options.preparedQuery == null) {\n options.preparedQuery = preparedQueryCache && preparedQueryCache.query === query ? preparedQueryCache : (preparedQueryCache = new Query(query, options));\n }\n return options;\n };\n\n}).call(this);\n","/* Form control contextual state class computation\n *\n * Returned class is either 'is-valid' or 'is-invalid' based on the 'state' prop\n * state can be one of five values:\n * - true for is-valid\n * - false for is-invalid\n * - null for no contextual state\n */\nimport { extend } from '../vue';\nimport { PROP_TYPE_BOOLEAN } from '../constants/props';\nimport { isBoolean } from '../utils/inspect';\nimport { makeProp, makePropsConfigurable } from '../utils/props';\nimport { safeVueInstance } from '../utils/safe-vue-instance'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n // Tri-state prop: true, false, null (or undefined)\n state: makeProp(PROP_TYPE_BOOLEAN, null)\n}, 'formState'); // --- Mixin ---\n// @vue/component\n\nexport var formStateMixin = extend({\n props: props,\n computed: {\n computedState: function computedState() {\n // If not a boolean, ensure that value is null\n return isBoolean(this.state) ? this.state : null;\n },\n stateClass: function stateClass() {\n var state = this.computedState;\n return state === true ? 'is-valid' : state === false ? 'is-invalid' : null;\n },\n computedAriaInvalid: function computedAriaInvalid() {\n var ariaInvalid = safeVueInstance(this).ariaInvalid;\n\n if (ariaInvalid === true || ariaInvalid === 'true' || ariaInvalid === '') {\n return 'true';\n }\n\n return this.computedState === false ? 'true' : ariaInvalid;\n }\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); 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 = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : 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 { extend } from '../vue';\nimport { EVENT_NAME_BLUR, EVENT_NAME_CHANGE, EVENT_NAME_INPUT, EVENT_NAME_UPDATE } from '../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_FUNCTION, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../constants/props';\nimport { attemptBlur, attemptFocus } from '../utils/dom';\nimport { stopEvent } from '../utils/events';\nimport { mathMax } from '../utils/math';\nimport { makeModelMixin } from '../utils/model';\nimport { toInteger, toFloat } from '../utils/number';\nimport { sortKeys } from '../utils/object';\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../utils/props';\nimport { toString } from '../utils/string'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER_STRING,\n defaultValue: '',\n event: EVENT_NAME_UPDATE\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event;\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, modelProps), {}, {\n ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n autocomplete: makeProp(PROP_TYPE_STRING),\n // Debounce timeout (in ms). Not applicable with `lazy` prop\n debounce: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n formatter: makeProp(PROP_TYPE_FUNCTION),\n // Only update the `v-model` on blur/change events\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n lazyFormatter: makeProp(PROP_TYPE_BOOLEAN, false),\n number: makeProp(PROP_TYPE_BOOLEAN, false),\n placeholder: makeProp(PROP_TYPE_STRING),\n plaintext: makeProp(PROP_TYPE_BOOLEAN, false),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n trim: makeProp(PROP_TYPE_BOOLEAN, false)\n})), 'formTextControls'); // --- Mixin ---\n// @vue/component\n\nexport var formTextMixin = extend({\n mixins: [modelMixin],\n props: props,\n data: function data() {\n var value = this[MODEL_PROP_NAME];\n return {\n localValue: toString(value),\n vModelValue: this.modifyValue(value)\n };\n },\n computed: {\n computedClass: function computedClass() {\n var plaintext = this.plaintext,\n type = this.type;\n var isRange = type === 'range';\n var isColor = type === 'color';\n return [{\n // Range input needs class `custom-range`\n 'custom-range': isRange,\n // `plaintext` not supported by `type=\"range\"` or `type=\"color\"`\n 'form-control-plaintext': plaintext && !isRange && !isColor,\n // `form-control` not used by `type=\"range\"` or `plaintext`\n // Always used by `type=\"color\"`\n 'form-control': isColor || !plaintext && !isRange\n }, this.sizeFormClass, this.stateClass];\n },\n computedDebounce: function computedDebounce() {\n // Ensure we have a positive number equal to or greater than 0\n return mathMax(toInteger(this.debounce, 0), 0);\n },\n hasFormatter: function hasFormatter() {\n return hasPropFunction(this.formatter);\n }\n },\n watch: _defineProperty({}, MODEL_PROP_NAME, function (newValue) {\n var stringifyValue = toString(newValue);\n var modifiedValue = this.modifyValue(newValue);\n\n if (stringifyValue !== this.localValue || modifiedValue !== this.vModelValue) {\n // Clear any pending debounce timeout, as we are overwriting the user input\n this.clearDebounce(); // Update the local values\n\n this.localValue = stringifyValue;\n this.vModelValue = modifiedValue;\n }\n }),\n created: function created() {\n // Create private non-reactive props\n this.$_inputDebounceTimer = null;\n },\n beforeDestroy: function beforeDestroy() {\n this.clearDebounce();\n },\n methods: {\n clearDebounce: function clearDebounce() {\n clearTimeout(this.$_inputDebounceTimer);\n this.$_inputDebounceTimer = null;\n },\n formatValue: function formatValue(value, event) {\n var force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n value = toString(value);\n\n if (this.hasFormatter && (!this.lazyFormatter || force)) {\n value = this.formatter(value, event);\n }\n\n return value;\n },\n modifyValue: function modifyValue(value) {\n value = toString(value); // Emulate `.trim` modifier behaviour\n\n if (this.trim) {\n value = value.trim();\n } // Emulate `.number` modifier behaviour\n\n\n if (this.number) {\n value = toFloat(value, value);\n }\n\n return value;\n },\n updateValue: function updateValue(value) {\n var _this = this;\n\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var lazy = this.lazy;\n\n if (lazy && !force) {\n return;\n } // Make sure to always clear the debounce when `updateValue()`\n // is called, even when the v-model hasn't changed\n\n\n this.clearDebounce(); // Define the shared update logic in a method to be able to use\n // it for immediate and debounced value changes\n\n var doUpdate = function doUpdate() {\n value = _this.modifyValue(value);\n\n if (value !== _this.vModelValue) {\n _this.vModelValue = value;\n\n _this.$emit(MODEL_EVENT_NAME, value);\n } else if (_this.hasFormatter) {\n // When the `vModelValue` hasn't changed but the actual input value\n // is out of sync, make sure to change it to the given one\n // Usually caused by browser autocomplete and how it triggers the\n // change or input event, or depending on the formatter function\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2657\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/3498\n\n /* istanbul ignore next: hard to test */\n var $input = _this.$refs.input;\n /* istanbul ignore if: hard to test out of sync value */\n\n if ($input && value !== $input.value) {\n $input.value = value;\n }\n }\n }; // Only debounce the value update when a value greater than `0`\n // is set and we are not in lazy mode or this is a forced update\n\n\n var debounce = this.computedDebounce;\n\n if (debounce > 0 && !lazy && !force) {\n this.$_inputDebounceTimer = setTimeout(doUpdate, debounce);\n } else {\n // Immediately update the v-model\n doUpdate();\n }\n },\n onInput: function onInput(event) {\n // `event.target.composing` is set by Vue\n // https://github.com/vuejs/vue/blob/dev/src/platforms/web/runtime/directives/model.js\n // TODO: Is this needed now with the latest Vue?\n\n /* istanbul ignore if: hard to test composition events */\n if (event.target.composing) {\n return;\n }\n\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event); // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n\n /* istanbul ignore next */\n\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, {\n propagation: false\n });\n return;\n }\n\n this.localValue = formattedValue;\n this.updateValue(formattedValue);\n this.$emit(EVENT_NAME_INPUT, formattedValue);\n },\n onChange: function onChange(event) {\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event); // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n\n /* istanbul ignore next */\n\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, {\n propagation: false\n });\n return;\n }\n\n this.localValue = formattedValue;\n this.updateValue(formattedValue, true);\n this.$emit(EVENT_NAME_CHANGE, formattedValue);\n },\n onBlur: function onBlur(event) {\n // Apply the `localValue` on blur to prevent cursor jumps\n // on mobile browsers (e.g. caused by autocomplete)\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event, true);\n\n if (formattedValue !== false) {\n // We need to use the modified value here to apply the\n // `.trim` and `.number` modifiers properly\n this.localValue = toString(this.modifyValue(formattedValue)); // We pass the formatted value here since the `updateValue` method\n // handles the modifiers itself\n\n this.updateValue(formattedValue, true);\n } // Emit native blur event\n\n\n this.$emit(EVENT_NAME_BLUR, event);\n },\n focus: function focus() {\n // For external handler that may want a focus method\n if (!this.disabled) {\n attemptFocus(this.$el);\n }\n },\n blur: function blur() {\n // For external handler that may want a blur method\n if (!this.disabled) {\n attemptBlur(this.$el);\n }\n }\n }\n});","// See https://gitlab.com/gitlab-org/gitlab-ui/-/issues/1421#note_617098438\n// for more details\nconst forbiddenDataAttrs = ['data-remote', 'data-url', 'data-type', 'data-method', 'data-disable-with', 'data-disabled', 'data-disable', 'data-turbo'];\nconst forbiddenTags = ['style', 'mstyle', 'form'];\n\nexport { forbiddenDataAttrs, forbiddenTags };\n","import DOMPurify from 'dompurify';\nimport { forbiddenDataAttrs, forbiddenTags } from './constants';\n\nconst {\n sanitize\n} = DOMPurify;\n\n// Mitigate against future dompurify mXSS bypasses by\n// avoiding additional serialize/parse round trip.\n// See https://gitlab.com/gitlab-org/gitlab-ui/-/merge_requests/1782\n// and https://gitlab.com/gitlab-org/gitlab-ui/-/merge_requests/2127\n// for more details.\nconst DEFAULT_CONFIG = {\n RETURN_DOM_FRAGMENT: true,\n ALLOW_UNKNOWN_PROTOCOLS: true,\n FORBID_ATTR: forbiddenDataAttrs,\n FORBID_TAGS: forbiddenTags\n};\nconst transform = (el, binding) => {\n if (binding.oldValue !== binding.value) {\n var _binding$arg;\n const config = {\n ...DEFAULT_CONFIG,\n ...((_binding$arg = binding.arg) !== null && _binding$arg !== void 0 ? _binding$arg : {})\n };\n el.textContent = '';\n el.appendChild(sanitize(binding.value, config));\n }\n};\nconst clear = el => {\n el.textContent = '';\n};\nconst SafeHtmlDirective = {\n bind: transform,\n update: transform,\n unbind: clear\n};\n\nexport { SafeHtmlDirective };\n","var baseRandom = require('./_baseRandom'),\n isIterateeCall = require('./_isIterateeCall'),\n toFinite = require('./toFinite');\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseFloat = parseFloat;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMin = Math.min,\n nativeRandom = Math.random;\n\n/**\n * Produces a random number between the inclusive `lower` and `upper` bounds.\n * If only one argument is provided a number between `0` and the given number\n * is returned. If `floating` is `true`, or either `lower` or `upper` are\n * floats, a floating-point number is returned instead of an integer.\n *\n * **Note:** JavaScript follows the IEEE-754 standard for resolving\n * floating-point values which can produce unexpected results.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Number\n * @param {number} [lower=0] The lower bound.\n * @param {number} [upper=1] The upper bound.\n * @param {boolean} [floating] Specify returning a floating-point number.\n * @returns {number} Returns the random number.\n * @example\n *\n * _.random(0, 5);\n * // => an integer between 0 and 5\n *\n * _.random(5);\n * // => also an integer between 0 and 5\n *\n * _.random(5, true);\n * // => a floating-point number between 0 and 5\n *\n * _.random(1.2, 5.2);\n * // => a floating-point number between 1.2 and 5.2\n */\nfunction random(lower, upper, floating) {\n if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {\n upper = floating = undefined;\n }\n if (floating === undefined) {\n if (typeof upper == 'boolean') {\n floating = upper;\n upper = undefined;\n }\n else if (typeof lower == 'boolean') {\n floating = lower;\n lower = undefined;\n }\n }\n if (lower === undefined && upper === undefined) {\n lower = 0;\n upper = 1;\n }\n else {\n lower = toFinite(lower);\n if (upper === undefined) {\n upper = lower;\n lower = 0;\n } else {\n upper = toFinite(upper);\n }\n }\n if (lower > upper) {\n var temp = lower;\n lower = upper;\n upper = temp;\n }\n if (floating || lower % 1 || upper % 1) {\n var rand = nativeRandom();\n return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);\n }\n return baseRandom(lower, upper);\n}\n\nmodule.exports = random;\n","import { extend } from '../vue';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n size: makeProp(PROP_TYPE_STRING)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formSizeMixin = extend({\n props: props,\n computed: {\n sizeFormClass: function sizeFormClass() {\n return [this.size ? \"form-control-\".concat(this.size) : null];\n }\n }\n});","import { extend } from '../vue'; // @vue/component\n\nexport var formSelectionMixin = extend({\n computed: {\n selectionStart: {\n // Expose selectionStart for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionStart;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionStart = val;\n }\n },\n selectionEnd: {\n // Expose selectionEnd for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionEnd;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionEnd = val;\n }\n },\n selectionDirection: {\n // Expose selectionDirection for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionDirection;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionDirection = val;\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n select: function select() {\n var _this$$refs$input;\n\n // For external handler that may want a select() method\n (_this$$refs$input = this.$refs.input).select.apply(_this$$refs$input, arguments);\n },\n\n /* istanbul ignore next */\n setSelectionRange: function setSelectionRange() {\n var _this$$refs$input2;\n\n // For external handler that may want a setSelectionRange(a,b,c) method\n (_this$$refs$input2 = this.$refs.input).setSelectionRange.apply(_this$$refs$input2, arguments);\n },\n\n /* istanbul ignore next */\n setRangeText: function setRangeText() {\n var _this$$refs$input3;\n\n // For external handler that may want a setRangeText(a,b,c) method\n (_this$$refs$input3 = this.$refs.input).setRangeText.apply(_this$$refs$input3, arguments);\n }\n }\n});","(function() {\n var Query, coreChars, countDir, getCharCodes, getExtension, opt_char_re, truncatedUpperCase, _ref;\n\n _ref = require(\"./pathScorer\"), countDir = _ref.countDir, getExtension = _ref.getExtension;\n\n module.exports = Query = (function() {\n function Query(query, _arg) {\n var optCharRegEx, pathSeparator, _ref1;\n _ref1 = _arg != null ? _arg : {}, optCharRegEx = _ref1.optCharRegEx, pathSeparator = _ref1.pathSeparator;\n if (!(query && query.length)) {\n return null;\n }\n this.query = query;\n this.query_lw = query.toLowerCase();\n this.core = coreChars(query, optCharRegEx);\n this.core_lw = this.core.toLowerCase();\n this.core_up = truncatedUpperCase(this.core);\n this.depth = countDir(query, query.length, pathSeparator);\n this.ext = getExtension(this.query_lw);\n this.charCodes = getCharCodes(this.query_lw);\n }\n\n return Query;\n\n })();\n\n opt_char_re = /[ _\\-:\\/\\\\]/g;\n\n coreChars = function(query, optCharRegEx) {\n if (optCharRegEx == null) {\n optCharRegEx = opt_char_re;\n }\n return query.replace(optCharRegEx, '');\n };\n\n truncatedUpperCase = function(str) {\n var char, upper, _i, _len;\n upper = \"\";\n for (_i = 0, _len = str.length; _i < _len; _i++) {\n char = str[_i];\n upper += char.toUpperCase()[0];\n }\n return upper;\n };\n\n getCharCodes = function(str) {\n var charCodes, i, len;\n len = str.length;\n i = -1;\n charCodes = [];\n while (++i < len) {\n charCodes[str.charCodeAt(i)] = true;\n }\n return charCodes;\n };\n\n}).call(this);\n","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\n","import GlClearIconButton from '../../shared_components/clear_icon_button/clear_icon_button';\nimport GlFormInput from '../form/form_input/form_input';\nimport GlIcon from '../icon/icon';\nimport GlLoadingIcon from '../loading_icon/loading_icon';\nimport { translate } from '../../../utils/i18n';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlSearchboxByType',\n components: {\n GlClearIconButton,\n GlIcon,\n GlFormInput,\n GlLoadingIcon\n },\n inheritAttrs: false,\n model: {\n prop: 'value',\n event: 'input'\n },\n props: {\n /**\n * If provided, used as value of search input\n */\n value: {\n type: String,\n required: false,\n default: ''\n },\n borderless: {\n type: Boolean,\n required: false,\n default: false\n },\n clearButtonTitle: {\n type: String,\n required: false,\n default: () => translate('GlSearchBoxByType.clearButtonTitle', 'Clear')\n },\n /**\n * If provided and true, disables the input and controls\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Puts search box into loading state, rendering spinner\n */\n isLoading: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Container for tooltip. Valid values: DOM node, selector string or `false` for default\n */\n tooltipContainer: {\n required: false,\n default: false,\n validator: value => value === false || typeof value === 'string' || value instanceof HTMLElement\n }\n },\n computed: {\n inputAttributes() {\n const attributes = {\n type: 'search',\n placeholder: translate('GlSearchBoxByType.input.placeholder', 'Search'),\n ...this.$attrs\n };\n if (!attributes['aria-label']) {\n attributes['aria-label'] = attributes.placeholder;\n }\n return attributes;\n },\n hasValue() {\n return Boolean(this.value.length);\n },\n inputListeners() {\n return {\n ...this.$listeners,\n input: this.onInput,\n focusin: this.onFocusin,\n focusout: this.onFocusout\n };\n },\n showClearButton() {\n return this.hasValue && !this.disabled;\n }\n },\n methods: {\n isInputOrClearButton(element) {\n var _this$$refs$input, _this$$refs$clearButt;\n return element === ((_this$$refs$input = this.$refs.input) === null || _this$$refs$input === void 0 ? void 0 : _this$$refs$input.$el) || element === ((_this$$refs$clearButt = this.$refs.clearButton) === null || _this$$refs$clearButt === void 0 ? void 0 : _this$$refs$clearButt.$el);\n },\n clearInput() {\n this.onInput('');\n this.focusInput();\n },\n focusInput() {\n this.$refs.input.$el.focus();\n },\n onInput(value) {\n this.$emit('input', value);\n },\n onFocusout(event) {\n const {\n relatedTarget\n } = event;\n if (this.isInputOrClearButton(relatedTarget)) {\n return;\n }\n this.$emit('focusout', event);\n },\n onFocusin(event) {\n const {\n relatedTarget\n } = event;\n if (this.isInputOrClearButton(relatedTarget)) {\n return;\n }\n this.$emit('focusin', event);\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"gl-search-box-by-type\"},[_c('gl-icon',{staticClass:\"gl-search-box-by-type-search-icon\",attrs:{\"name\":\"search\"}}),_vm._v(\" \"),_c('gl-form-input',_vm._g(_vm._b({ref:\"input\",class:{\n 'gl-search-box-by-type-input': !_vm.borderless,\n 'gl-search-box-by-type-input-borderless': _vm.borderless,\n },attrs:{\"value\":_vm.value,\"disabled\":_vm.disabled}},'gl-form-input',_vm.inputAttributes,false),_vm.inputListeners)),_vm._v(\" \"),(_vm.isLoading || _vm.showClearButton)?_c('div',{staticClass:\"gl-search-box-by-type-right-icons\"},[(_vm.isLoading)?_c('gl-loading-icon',{staticClass:\"gl-search-box-by-type-loading-icon\"}):_vm._e(),_vm._v(\" \"),(_vm.showClearButton)?_c('gl-clear-icon-button',{ref:\"clearButton\",staticClass:\"gl-search-box-by-type-clear gl-clear-icon-button\",attrs:{\"title\":_vm.clearButtonTitle,\"tooltip-container\":_vm.tooltipContainer},on:{\"click\":function($event){$event.stopPropagation();return _vm.clearInput.apply(null, arguments)},\"focusin\":_vm.onFocusin,\"focusout\":_vm.onFocusout}}):_vm._e()],1):_vm._e()],1)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeFloor = Math.floor,\n nativeRandom = Math.random;\n\n/**\n * The base implementation of `_.random` without support for returning\n * floating-point numbers.\n *\n * @private\n * @param {number} lower The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the random number.\n */\nfunction baseRandom(lower, upper) {\n return lower + nativeFloor(nativeRandom() * (upper - lower + 1));\n}\n\nmodule.exports = baseRandom;\n","var createRange = require('./_createRange');\n\n/**\n * Creates an array of numbers (positive and/or negative) progressing from\n * `start` up to, but not including, `end`. A step of `-1` is used if a negative\n * `start` is specified without an `end` or `step`. If `end` is not specified,\n * it's set to `start` with `start` then set to `0`.\n *\n * **Note:** JavaScript follows the IEEE-754 standard for resolving\n * floating-point values which can produce unexpected results.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {number} [start=0] The start of the range.\n * @param {number} end The end of the range.\n * @param {number} [step=1] The value to increment or decrement by.\n * @returns {Array} Returns the range of numbers.\n * @see _.inRange, _.rangeRight\n * @example\n *\n * _.range(4);\n * // => [0, 1, 2, 3]\n *\n * _.range(-4);\n * // => [0, -1, -2, -3]\n *\n * _.range(1, 5);\n * // => [1, 2, 3, 4]\n *\n * _.range(0, 20, 5);\n * // => [0, 5, 10, 15]\n *\n * _.range(0, -4, -1);\n * // => [0, -1, -2, -3]\n *\n * _.range(1, 4, 0);\n * // => [1, 1, 1]\n *\n * _.range(0);\n * // => []\n */\nvar range = createRange();\n\nmodule.exports = range;\n","(function() {\n var computeScore, countDir, file_coeff, getExtension, getExtensionScore, isMatch, scorePath, scoreSize, tau_depth, _ref;\n\n _ref = require('./scorer'), isMatch = _ref.isMatch, computeScore = _ref.computeScore, scoreSize = _ref.scoreSize;\n\n tau_depth = 20;\n\n file_coeff = 2.5;\n\n exports.score = function(string, query, options) {\n var allowErrors, preparedQuery, score, string_lw;\n preparedQuery = options.preparedQuery, allowErrors = options.allowErrors;\n if (!(allowErrors || isMatch(string, preparedQuery.core_lw, preparedQuery.core_up))) {\n return 0;\n }\n string_lw = string.toLowerCase();\n score = computeScore(string, string_lw, preparedQuery);\n score = scorePath(string, string_lw, score, options);\n return Math.ceil(score);\n };\n\n scorePath = function(subject, subject_lw, fullPathScore, options) {\n var alpha, basePathScore, basePos, depth, end, extAdjust, fileLength, pathSeparator, preparedQuery, useExtensionBonus;\n if (fullPathScore === 0) {\n return 0;\n }\n preparedQuery = options.preparedQuery, useExtensionBonus = options.useExtensionBonus, pathSeparator = options.pathSeparator;\n end = subject.length - 1;\n while (subject[end] === pathSeparator) {\n end--;\n }\n basePos = subject.lastIndexOf(pathSeparator, end);\n fileLength = end - basePos;\n extAdjust = 1.0;\n if (useExtensionBonus) {\n extAdjust += getExtensionScore(subject_lw, preparedQuery.ext, basePos, end, 2);\n fullPathScore *= extAdjust;\n }\n if (basePos === -1) {\n return fullPathScore;\n }\n depth = preparedQuery.depth;\n while (basePos > -1 && depth-- > 0) {\n basePos = subject.lastIndexOf(pathSeparator, basePos - 1);\n }\n basePathScore = basePos === -1 ? fullPathScore : extAdjust * computeScore(subject.slice(basePos + 1, end + 1), subject_lw.slice(basePos + 1, end + 1), preparedQuery);\n alpha = 0.5 * tau_depth / (tau_depth + countDir(subject, end + 1, pathSeparator));\n return alpha * basePathScore + (1 - alpha) * fullPathScore * scoreSize(0, file_coeff * fileLength);\n };\n\n exports.countDir = countDir = function(path, end, pathSeparator) {\n var count, i;\n if (end < 1) {\n return 0;\n }\n count = 0;\n i = -1;\n while (++i < end && path[i] === pathSeparator) {\n continue;\n }\n while (++i < end) {\n if (path[i] === pathSeparator) {\n count++;\n while (++i < end && path[i] === pathSeparator) {\n continue;\n }\n }\n }\n return count;\n };\n\n exports.getExtension = getExtension = function(str) {\n var pos;\n pos = str.lastIndexOf(\".\");\n if (pos < 0) {\n return \"\";\n } else {\n return str.substr(pos + 1);\n }\n };\n\n getExtensionScore = function(candidate, ext, startPos, endPos, maxDepth) {\n var m, matched, n, pos;\n if (!ext.length) {\n return 0;\n }\n pos = candidate.lastIndexOf(\".\", endPos);\n if (!(pos > startPos)) {\n return 0;\n }\n n = ext.length;\n m = endPos - pos;\n if (m < n) {\n n = m;\n m = ext.length;\n }\n pos++;\n matched = -1;\n while (++matched < n) {\n if (candidate[pos + matched] !== ext[matched]) {\n break;\n }\n }\n if (matched === 0 && maxDepth > 0) {\n return 0.9 * getExtensionScore(candidate, ext, startPos, pos - 2, maxDepth - 1);\n }\n return matched / m;\n };\n\n}).call(this);\n",";(function (global) {\n \"use strict\";\n\n var lastId = -1;\n\n // Visibility.js allow you to know, that your web page is in the background\n // tab and thus not visible to the user. This library is wrap under\n // Page Visibility API. It fix problems with different vendor prefixes and\n // add high-level useful functions.\n var self = {\n\n // Call callback only when page become to visible for user or\n // call it now if page is visible now or Page Visibility API\n // doesn’t supported.\n //\n // Return false if API isn’t supported, true if page is already visible\n // or listener ID (you can use it in `unbind` method) if page isn’t\n // visible now.\n //\n // Visibility.onVisible(function () {\n // startIntroAnimation();\n // });\n onVisible: function (callback) {\n var support = self.isSupported();\n if ( !support || !self.hidden() ) {\n callback();\n return support;\n }\n\n var listener = self.change(function (e, state) {\n if ( !self.hidden() ) {\n self.unbind(listener);\n callback();\n }\n });\n return listener;\n },\n\n // Call callback when visibility will be changed. First argument for\n // callback will be original event object, second will be visibility\n // state name.\n //\n // Return listener ID to unbind listener by `unbind` method.\n //\n // If Page Visibility API doesn’t supported method will be return false\n // and callback never will be called.\n //\n // Visibility.change(function(e, state) {\n // Statistics.visibilityChange(state);\n // });\n //\n // It is just proxy to `visibilitychange` event, but use vendor prefix.\n change: function (callback) {\n if ( !self.isSupported() ) {\n return false;\n }\n lastId += 1;\n var number = lastId;\n self._callbacks[number] = callback;\n self._listen();\n return number;\n },\n\n // Remove `change` listener by it ID.\n //\n // var id = Visibility.change(function(e, state) {\n // firstChangeCallback();\n // Visibility.unbind(id);\n // });\n unbind: function (id) {\n delete self._callbacks[id];\n },\n\n // Call `callback` in any state, expect “prerender”. If current state\n // is “prerender” it will wait until state will be changed.\n // If Page Visibility API doesn’t supported, it will call `callback`\n // immediately.\n //\n // Return false if API isn’t supported, true if page is already after\n // prerendering or listener ID (you can use it in `unbind` method)\n // if page is prerended now.\n //\n // Visibility.afterPrerendering(function () {\n // Statistics.countVisitor();\n // });\n afterPrerendering: function (callback) {\n var support = self.isSupported();\n var prerender = 'prerender';\n\n if ( !support || prerender != self.state() ) {\n callback();\n return support;\n }\n\n var listener = self.change(function (e, state) {\n if ( prerender != state ) {\n self.unbind(listener);\n callback();\n }\n });\n return listener;\n },\n\n // Return true if page now isn’t visible to user.\n //\n // if ( !Visibility.hidden() ) {\n // VideoPlayer.play();\n // }\n //\n // It is just proxy to `document.hidden`, but use vendor prefix.\n hidden: function () {\n return !!(self._doc.hidden || self._doc.webkitHidden);\n },\n\n // Return visibility state: 'visible', 'hidden' or 'prerender'.\n //\n // if ( 'prerender' == Visibility.state() ) {\n // Statistics.pageIsPrerendering();\n // }\n //\n // Don’t use `Visibility.state()` to detect, is page visible, because\n // visibility states can extend in next API versions.\n // Use more simpler and general `Visibility.hidden()` for this cases.\n //\n // It is just proxy to `document.visibilityState`, but use\n // vendor prefix.\n state: function () {\n return self._doc.visibilityState ||\n self._doc.webkitVisibilityState ||\n 'visible';\n },\n\n // Return true if browser support Page Visibility API.\n //\n // if ( Visibility.isSupported() ) {\n // Statistics.startTrackingVisibility();\n // Visibility.change(function(e, state)) {\n // Statistics.trackVisibility(state);\n // });\n // }\n isSupported: function () {\n return !!(self._doc.visibilityState ||\n self._doc.webkitVisibilityState);\n },\n\n // Link to document object to change it in tests.\n _doc: document || {},\n\n // Callbacks from `change` method, that wait visibility changes.\n _callbacks: { },\n\n // Listener for `visibilitychange` event.\n _change: function(event) {\n var state = self.state();\n\n for ( var i in self._callbacks ) {\n self._callbacks[i].call(self._doc, event, state);\n }\n },\n\n // Set listener for `visibilitychange` event.\n _listen: function () {\n if ( self._init ) {\n return;\n }\n\n var event = 'visibilitychange';\n if ( self._doc.webkitVisibilityState ) {\n event = 'webkit' + event;\n }\n\n var listener = function () {\n self._change.apply(self, arguments);\n };\n if ( self._doc.addEventListener ) {\n self._doc.addEventListener(event, listener);\n } else {\n self._doc.attachEvent(event, listener);\n }\n self._init = true;\n }\n\n };\n\n if ( typeof(module) != 'undefined' && module.exports ) {\n module.exports = self;\n } else {\n global.Visibility = self;\n }\n\n})(this);\n","(function() {\n var basenameMatch, computeMatch, isMatch, isWordStart, match, mergeMatches, scoreAcronyms, scoreCharacter, scoreConsecutives, _ref;\n\n _ref = require('./scorer'), isMatch = _ref.isMatch, isWordStart = _ref.isWordStart, scoreConsecutives = _ref.scoreConsecutives, scoreCharacter = _ref.scoreCharacter, scoreAcronyms = _ref.scoreAcronyms;\n\n exports.match = match = function(string, query, options) {\n var allowErrors, baseMatches, matches, pathSeparator, preparedQuery, string_lw;\n allowErrors = options.allowErrors, preparedQuery = options.preparedQuery, pathSeparator = options.pathSeparator;\n if (!(allowErrors || isMatch(string, preparedQuery.core_lw, preparedQuery.core_up))) {\n return [];\n }\n string_lw = string.toLowerCase();\n matches = computeMatch(string, string_lw, preparedQuery);\n if (matches.length === 0) {\n return matches;\n }\n if (string.indexOf(pathSeparator) > -1) {\n baseMatches = basenameMatch(string, string_lw, preparedQuery, pathSeparator);\n matches = mergeMatches(matches, baseMatches);\n }\n return matches;\n };\n\n exports.wrap = function(string, query, options) {\n var matchIndex, matchPos, matchPositions, output, strPos, tagClass, tagClose, tagOpen, _ref1;\n if ((options.wrap != null)) {\n _ref1 = options.wrap, tagClass = _ref1.tagClass, tagOpen = _ref1.tagOpen, tagClose = _ref1.tagClose;\n }\n if (tagClass == null) {\n tagClass = 'highlight';\n }\n if (tagOpen == null) {\n tagOpen = '';\n }\n if (tagClose == null) {\n tagClose = '';\n }\n if (string === query) {\n return tagOpen + string + tagClose;\n }\n matchPositions = match(string, query, options);\n if (matchPositions.length === 0) {\n return string;\n }\n output = '';\n matchIndex = -1;\n strPos = 0;\n while (++matchIndex < matchPositions.length) {\n matchPos = matchPositions[matchIndex];\n if (matchPos > strPos) {\n output += string.substring(strPos, matchPos);\n strPos = matchPos;\n }\n while (++matchIndex < matchPositions.length) {\n if (matchPositions[matchIndex] === matchPos + 1) {\n matchPos++;\n } else {\n matchIndex--;\n break;\n }\n }\n matchPos++;\n if (matchPos > strPos) {\n output += tagOpen;\n output += string.substring(strPos, matchPos);\n output += tagClose;\n strPos = matchPos;\n }\n }\n if (strPos <= string.length - 1) {\n output += string.substring(strPos);\n }\n return output;\n };\n\n basenameMatch = function(subject, subject_lw, preparedQuery, pathSeparator) {\n var basePos, depth, end;\n end = subject.length - 1;\n while (subject[end] === pathSeparator) {\n end--;\n }\n basePos = subject.lastIndexOf(pathSeparator, end);\n if (basePos === -1) {\n return [];\n }\n depth = preparedQuery.depth;\n while (depth-- > 0) {\n basePos = subject.lastIndexOf(pathSeparator, basePos - 1);\n if (basePos === -1) {\n return [];\n }\n }\n basePos++;\n end++;\n return computeMatch(subject.slice(basePos, end), subject_lw.slice(basePos, end), preparedQuery, basePos);\n };\n\n mergeMatches = function(a, b) {\n var ai, bj, i, j, m, n, out;\n m = a.length;\n n = b.length;\n if (n === 0) {\n return a.slice();\n }\n if (m === 0) {\n return b.slice();\n }\n i = -1;\n j = 0;\n bj = b[j];\n out = [];\n while (++i < m) {\n ai = a[i];\n while (bj <= ai && ++j < n) {\n if (bj < ai) {\n out.push(bj);\n }\n bj = b[j];\n }\n out.push(ai);\n }\n while (j < n) {\n out.push(b[j++]);\n }\n return out;\n };\n\n computeMatch = function(subject, subject_lw, preparedQuery, offset) {\n var DIAGONAL, LEFT, STOP, UP, acro_score, align, backtrack, csc_diag, csc_row, csc_score, i, j, m, matches, move, n, pos, query, query_lw, score, score_diag, score_row, score_up, si_lw, start, trace;\n if (offset == null) {\n offset = 0;\n }\n query = preparedQuery.query;\n query_lw = preparedQuery.query_lw;\n m = subject.length;\n n = query.length;\n acro_score = scoreAcronyms(subject, subject_lw, query, query_lw).score;\n score_row = new Array(n);\n csc_row = new Array(n);\n STOP = 0;\n UP = 1;\n LEFT = 2;\n DIAGONAL = 3;\n trace = new Array(m * n);\n pos = -1;\n j = -1;\n while (++j < n) {\n score_row[j] = 0;\n csc_row[j] = 0;\n }\n i = -1;\n while (++i < m) {\n score = 0;\n score_up = 0;\n csc_diag = 0;\n si_lw = subject_lw[i];\n j = -1;\n while (++j < n) {\n csc_score = 0;\n align = 0;\n score_diag = score_up;\n if (query_lw[j] === si_lw) {\n start = isWordStart(i, subject, subject_lw);\n csc_score = csc_diag > 0 ? csc_diag : scoreConsecutives(subject, subject_lw, query, query_lw, i, j, start);\n align = score_diag + scoreCharacter(i, j, start, acro_score, csc_score);\n }\n score_up = score_row[j];\n csc_diag = csc_row[j];\n if (score > score_up) {\n move = LEFT;\n } else {\n score = score_up;\n move = UP;\n }\n if (align > score) {\n score = align;\n move = DIAGONAL;\n } else {\n csc_score = 0;\n }\n score_row[j] = score;\n csc_row[j] = csc_score;\n trace[++pos] = score > 0 ? move : STOP;\n }\n }\n i = m - 1;\n j = n - 1;\n pos = i * n + j;\n backtrack = true;\n matches = [];\n while (backtrack && i >= 0 && j >= 0) {\n switch (trace[pos]) {\n case UP:\n i--;\n pos -= n;\n break;\n case LEFT:\n j--;\n pos--;\n break;\n case DIAGONAL:\n matches.push(i + offset);\n j--;\n i--;\n pos -= n + 1;\n break;\n default:\n backtrack = false;\n }\n }\n matches.reverse();\n return matches;\n };\n\n}).call(this);\n","import { extend } from '../vue'; // @vue/component\n\nexport var formValidityMixin = extend({\n computed: {\n validity: {\n // Expose validity property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.validity;\n }\n },\n validationMessage: {\n // Expose validationMessage property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.validationMessage;\n }\n },\n willValidate: {\n // Expose willValidate property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.willValidate;\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n setCustomValidity: function setCustomValidity() {\n var _this$$refs$input;\n\n // For external handler that may want a setCustomValidity(...) method\n return (_this$$refs$input = this.$refs.input).setCustomValidity.apply(_this$$refs$input, arguments);\n },\n\n /* istanbul ignore next */\n checkValidity: function checkValidity() {\n var _this$$refs$input2;\n\n // For external handler that may want a checkValidity(...) method\n return (_this$$refs$input2 = this.$refs.input).checkValidity.apply(_this$$refs$input2, arguments);\n },\n\n /* istanbul ignore next */\n reportValidity: function reportValidity() {\n var _this$$refs$input3;\n\n // For external handler that may want a reportValidity(...) method\n return (_this$$refs$input3 = this.$refs.input).reportValidity.apply(_this$$refs$input3, arguments);\n }\n }\n});","import { extend } from '../vue';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { attemptFocus, isVisible, matches, requestAF, select } from '../utils/dom';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Constants ---\n\nvar SELECTOR = 'input, textarea, select'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n autofocus: makeProp(PROP_TYPE_BOOLEAN, false),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n form: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n name: makeProp(PROP_TYPE_STRING),\n required: makeProp(PROP_TYPE_BOOLEAN, false)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formControlMixin = extend({\n props: props,\n mounted: function mounted() {\n this.handleAutofocus();\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n this.handleAutofocus();\n },\n methods: {\n handleAutofocus: function handleAutofocus() {\n var _this = this;\n\n this.$nextTick(function () {\n requestAF(function () {\n var el = _this.$el;\n\n if (_this.autofocus && isVisible(el)) {\n if (!matches(el, SELECTOR)) {\n el = select(SELECTOR, el);\n }\n\n attemptFocus(el);\n }\n });\n });\n }\n }\n});","(function() {\n var Query, pathScorer, pluckCandidates, scorer, sortCandidates;\n\n scorer = require('./scorer');\n\n pathScorer = require('./pathScorer');\n\n Query = require('./query');\n\n pluckCandidates = function(a) {\n return a.candidate;\n };\n\n sortCandidates = function(a, b) {\n return b.score - a.score;\n };\n\n module.exports = function(candidates, query, options) {\n var bKey, candidate, key, maxInners, maxResults, score, scoreProvider, scoredCandidates, spotLeft, string, usePathScoring, _i, _len;\n scoredCandidates = [];\n key = options.key, maxResults = options.maxResults, maxInners = options.maxInners, usePathScoring = options.usePathScoring;\n spotLeft = (maxInners != null) && maxInners > 0 ? maxInners : candidates.length + 1;\n bKey = key != null;\n scoreProvider = usePathScoring ? pathScorer : scorer;\n for (_i = 0, _len = candidates.length; _i < _len; _i++) {\n candidate = candidates[_i];\n string = bKey ? candidate[key] : candidate;\n if (!string) {\n continue;\n }\n score = scoreProvider.score(string, query, options);\n if (score > 0) {\n scoredCandidates.push({\n candidate: candidate,\n score: score\n });\n if (!--spotLeft) {\n break;\n }\n }\n }\n scoredCandidates.sort(sortCandidates);\n candidates = scoredCandidates.map(pluckCandidates);\n if (maxResults != null) {\n candidates = candidates.slice(0, maxResults);\n }\n return candidates;\n };\n\n}).call(this);\n"],"sourceRoot":""}