{"version":3,"sources":["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/utils/i18n.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/components/form-input/form-input.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/directives/tooltip/tooltip.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/components/dropdown/dropdown-text.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/components/base/dropdown/dropdown_text.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/components/base/form/form_input/form_input.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/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/lodash/_createAssigner.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/utils/get-instance-from-directive.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/components/dropdown/dropdown-item.js","webpack:////home/git/gitlab/node_modules/bootstrap-vue/esm/components/dropdown/dropdown-item-button.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/components/base/dropdown/dropdown_item.js","webpack:////home/git/gitlab/node_modules/lodash/_copyObject.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"],"names":["__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","undefined","translate","key","defaultValue","_i18n$key","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","configurable","writable","TYPES","list","max","min","noWheel","step","BFormInput","mixins","computed","localType","computedAttrs","form","disabled","placeholder","id","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","class","computedClass","domProps","localValue","ref","BV_TOOLTIP","validTriggers","focus","hover","click","manual","htmlRE","noninteractiveRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","applyTooltip","el","bindings","vnode","config","trigger","placement","fallbackPlacement","animation","offset","html","interactive","delay","boundary","boundaryPadding","variant","customClass","data","show","hide","arg","concat","mod","test","slice","selectedTriggers","join","trim","toLowerCase","split","parseBindings","parent","_scopeId","__bv_prev_data__","$on","updateData","triggers","noFade","oldData","newData","prop","VBTooltip","bind","componentUpdated","unbind","$destroy","removeTooltip","tag","textClass","BDropdownText","functional","_ref","children","role","inheritAttrs","_b","$attrs","_t","model","width","values","every","includes","defaultWidth","nonDefaultWidths","entries","map","breakpoint","_this","_len","args","Array","_key","$emit","update","_len2","_key2","cssClasses","listeners","state","formStateMixin","computedState","stateClass","ariaInvalid","_makeModelMixin","modelMixin","mixin","modelProps","MODEL_PROP_NAME","MODEL_EVENT_NAME","debounce","formatter","lazy","lazyFormatter","number","formTextMixin","vModelValue","modifyValue","isRange","isColor","sizeFormClass","computedDebounce","hasFormatter","stringifyValue","modifiedValue","clearDebounce","created","$_inputDebounceTimer","clearTimeout","formatValue","force","updateValue","doUpdate","$input","$refs","setTimeout","composing","formattedValue","defaultPrevented","size","formSizeMixin","formSelectionMixin","selectionStart","cache","get","set","val","selectionEnd","selectionDirection","select","_this$$refs$input","setSelectionRange","_this$$refs$input2","setRangeText","_this$$refs$input3","baseRest","isIterateeCall","module","exports","assigner","sources","index","customizer","guard","getInstanceFromDirective","instance","context","linkProps","linkClass","BDropdownItem","inject","getBvDropdown","bvDropdown","bvAttrs","closeDropdown","onClick","active","style","$props","normalizeSlot","activeClass","buttonClass","BDropdownItemButton","GlIcon","GlAvatar","avatarUrl","iconColor","iconName","iconRightAriaLabel","iconRightName","isChecked","Boolean","isCheckItem","isCheckCentered","secondaryText","href","to","_vm","bootstrapComponent","checkedClasses","_e","_v","iconColorCss","_s","$event","stopPropagation","preventDefault","handleClickIconRight","assignValue","baseAssignValue","isNew","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","autofocus","formControlMixin","handleAutofocus","$nextTick"],"mappings":"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","file":"commons-pages.admin.abuse_reports-pages.admin.abuse_reports.show-pages.admin.groups.edit-pages.admin-0657f98f.58e99659.chunk.js","sourcesContent":["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 { 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});","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 { NAME_TOOLTIP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { EVENT_NAME_SHOW } from '../../constants/events';\nimport { concat } from '../../utils/array';\nimport { isVue3, nextTick } from '../../vue';\nimport { getComponentConfig } from '../../utils/config';\nimport { getScopeId } from '../../utils/get-scope-id';\nimport { identity } from '../../utils/identity';\nimport { getInstanceFromDirective } from '../../utils/get-instance-from-directive';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { toInteger } from '../../utils/number';\nimport { keys } from '../../utils/object';\nimport { createNewChildComponent } from '../../utils/create-new-child-component';\nimport { BVTooltip } from '../../components/tooltip/helpers/bv-tooltip'; // Key which we use to store tooltip object on element\n\nvar BV_TOOLTIP = '__BV_Tooltip__'; // Default trigger\n\nvar DefaultTrigger = 'hover focus'; // Valid event triggers\n\nvar validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n}; // Directive modifier test regular expressions. Pre-compile for performance\n\nvar htmlRE = /^html$/i;\nvar noninteractiveRE = /^noninteractive$/i;\nvar noFadeRE = /^nofade$/i;\nvar placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i;\nvar boundaryRE = /^(window|viewport|scrollParent)$/i;\nvar delayRE = /^d\\d+$/i;\nvar delayShowRE = /^ds\\d+$/i;\nvar delayHideRE = /^dh\\d+$/i;\nvar offsetRE = /^o-?\\d+$/i;\nvar variantRE = /^v-.+$/i;\nvar spacesRE = /\\s+/; // Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\n\nvar parseBindings = function parseBindings(bindings, vnode)\n/* istanbul ignore next: not easy to test */\n{\n // We start out with a basic config\n var config = {\n title: undefined,\n trigger: '',\n // Default set below if needed\n placement: 'top',\n fallbackPlacement: 'flip',\n container: false,\n // Default of body\n animation: true,\n offset: 0,\n id: null,\n html: false,\n interactive: true,\n disabled: false,\n delay: getComponentConfig(NAME_TOOLTIP, 'delay', 50),\n boundary: String(getComponentConfig(NAME_TOOLTIP, 'boundary', 'scrollParent')),\n boundaryPadding: toInteger(getComponentConfig(NAME_TOOLTIP, 'boundaryPadding', 5), 0),\n variant: getComponentConfig(NAME_TOOLTIP, 'variant'),\n customClass: getComponentConfig(NAME_TOOLTIP, 'customClass')\n }; // Process `bindings.value`\n\n if (isString(bindings.value) || isNumber(bindings.value)) {\n // Value is tooltip content (HTML optionally supported)\n config.title = bindings.value;\n } else if (isFunction(bindings.value)) {\n // Title generator function\n config.title = bindings.value;\n } else if (isPlainObject(bindings.value)) {\n // Value is config object, so merge\n config = _objectSpread(_objectSpread({}, config), bindings.value);\n } // If title is not provided, try title attribute\n\n\n if (isUndefined(config.title)) {\n // Try attribute\n var attrs = isVue3 ? vnode.props : (vnode.data || {}).attrs;\n config.title = attrs && !isUndefinedOrNull(attrs.title) ? attrs.title : undefined;\n } // Normalize delay\n\n\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n };\n } // If argument, assume element ID of container element\n\n\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = \"#\".concat(bindings.arg);\n } // Process modifiers\n\n\n keys(bindings.modifiers).forEach(function (mod) {\n if (htmlRE.test(mod)) {\n // Title allows HTML\n config.html = true;\n } else if (noninteractiveRE.test(mod)) {\n // Noninteractive\n config.interactive = false;\n } else if (noFadeRE.test(mod)) {\n // No animation\n config.animation = false;\n } else if (placementRE.test(mod)) {\n // Placement of tooltip\n config.placement = mod;\n } else if (boundaryRE.test(mod)) {\n // Boundary of tooltip\n mod = mod === 'scrollparent' ? 'scrollParent' : mod;\n config.boundary = mod;\n } else if (delayRE.test(mod)) {\n // Delay value\n var delay = toInteger(mod.slice(1), 0);\n config.delay.show = delay;\n config.delay.hide = delay;\n } else if (delayShowRE.test(mod)) {\n // Delay show value\n config.delay.show = toInteger(mod.slice(2), 0);\n } else if (delayHideRE.test(mod)) {\n // Delay hide value\n config.delay.hide = toInteger(mod.slice(2), 0);\n } else if (offsetRE.test(mod)) {\n // Offset value, negative allowed\n config.offset = toInteger(mod.slice(1), 0);\n } else if (variantRE.test(mod)) {\n // Variant\n config.variant = mod.slice(2) || null;\n }\n }); // Special handling of event trigger modifiers trigger is\n // a space separated list\n\n var selectedTriggers = {}; // Parse current config object trigger\n\n concat(config.trigger || '').filter(identity).join(' ').trim().toLowerCase().split(spacesRE).forEach(function (trigger) {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true;\n }\n }); // Parse modifiers for triggers\n\n keys(bindings.modifiers).forEach(function (mod) {\n mod = mod.toLowerCase();\n\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true;\n }\n }); // Sanitize triggers\n\n config.trigger = keys(selectedTriggers).join(' ');\n\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus';\n }\n\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger;\n } // Return the config\n\n\n return config;\n}; // Add/update Tooltip on our element\n\n\nvar applyTooltip = function applyTooltip(el, bindings, vnode) {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return;\n }\n\n var config = parseBindings(bindings, vnode);\n\n if (!el[BV_TOOLTIP]) {\n var parent = getInstanceFromDirective(vnode, bindings);\n el[BV_TOOLTIP] = createNewChildComponent(parent, BVTooltip, {\n // Add the parent's scoped style attribute data\n _scopeId: getScopeId(parent, undefined)\n });\n el[BV_TOOLTIP].__bv_prev_data__ = {};\n el[BV_TOOLTIP].$on(EVENT_NAME_SHOW, function ()\n /* istanbul ignore next: for now */\n {\n // Before showing the tooltip, we update the title if it is a function\n if (isFunction(config.title)) {\n el[BV_TOOLTIP].updateData({\n title: config.title(el)\n });\n }\n });\n }\n\n var data = {\n title: config.title,\n triggers: config.trigger,\n placement: config.placement,\n fallbackPlacement: config.fallbackPlacement,\n variant: config.variant,\n customClass: config.customClass,\n container: config.container,\n boundary: config.boundary,\n delay: config.delay,\n offset: config.offset,\n noFade: !config.animation,\n id: config.id,\n interactive: config.interactive,\n disabled: config.disabled,\n html: config.html\n };\n var oldData = el[BV_TOOLTIP].__bv_prev_data__;\n el[BV_TOOLTIP].__bv_prev_data__ = data;\n\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n var newData = {\n target: el\n };\n keys(data).forEach(function (prop) {\n // We only pass data properties that have changed\n if (data[prop] !== oldData[prop]) {\n // if title is a function, we execute it here\n newData[prop] = prop === 'title' && isFunction(data[prop]) ? data[prop](el) : data[prop];\n }\n });\n el[BV_TOOLTIP].updateData(newData);\n }\n}; // Remove Tooltip on our element\n\n\nvar removeTooltip = function removeTooltip(el) {\n if (el[BV_TOOLTIP]) {\n el[BV_TOOLTIP].$destroy();\n el[BV_TOOLTIP] = null;\n }\n\n delete el[BV_TOOLTIP];\n}; // Export our directive\n\n\nexport var VBTooltip = {\n bind: function bind(el, bindings, vnode) {\n applyTooltip(el, bindings, vnode);\n },\n // We use `componentUpdated` here instead of `update`, as the former\n // waits until the containing component and children have finished updating\n componentUpdated: function componentUpdated(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent render update loops\n nextTick(function () {\n applyTooltip(el, bindings, vnode);\n });\n },\n unbind: function unbind(el) {\n removeTooltip(el);\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 { extend, mergeData } from '../../vue';\nimport { NAME_DROPDOWN_TEXT } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { omit } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'p'),\n textClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n}, NAME_DROPDOWN_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BDropdownText = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_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 var tag = props.tag,\n textClass = props.textClass,\n variant = props.variant;\n return h('li', mergeData(omit(data, ['attrs']), {\n attrs: {\n role: 'presentation'\n }\n }), [h(tag, {\n staticClass: 'b-dropdown-text',\n class: [textClass, _defineProperty({}, \"text-\".concat(variant), variant)],\n props: props,\n attrs: data.attrs || {},\n ref: 'text'\n }, children)]);\n }\n});","import { BDropdownText } from 'bootstrap-vue/esm/index.js';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlDropdownText',\n components: {\n BDropdownText\n },\n inheritAttrs: false\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-dropdown-text',_vm._g(_vm._b({staticClass:\"gl-dropdown-text\"},'b-dropdown-text',_vm.$attrs,false),_vm.$listeners),[_vm._t(\"default\")],2)};\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 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","/* 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});","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});","var baseRest = require('./_baseRest'),\n isIterateeCall = require('./_isIterateeCall');\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nmodule.exports = createAssigner;\n","import { isVue3 } from '../vue';\nexport var getInstanceFromDirective = function getInstanceFromDirective(vnode, bindings) {\n return isVue3 ? bindings.instance : vnode.context;\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_DROPDOWN_ITEM } from '../../constants/components';\nimport { EVENT_NAME_CLICK } from '../../constants/events';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { requestAF } from '../../utils/dom';\nimport { omit, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props';\nimport { attrsMixin } from '../../mixins/attrs';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BLink, props as BLinkProps } from '../link/link'; // --- Props ---\n\nvar linkProps = omit(BLinkProps, ['event', 'routerTag']);\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, linkProps), {}, {\n linkClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n})), NAME_DROPDOWN_ITEM); // --- Main component ---\n// @vue/component\n\nexport var BDropdownItem = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_ITEM,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n getBvDropdown: {\n default: function _default() {\n return function () {\n return null;\n };\n }\n }\n },\n inheritAttrs: false,\n props: props,\n computed: {\n bvDropdown: function bvDropdown() {\n return this.getBvDropdown();\n },\n computedAttrs: function computedAttrs() {\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n role: 'menuitem'\n });\n }\n },\n methods: {\n closeDropdown: function closeDropdown() {\n var _this = this;\n\n // Close on next animation frame to allow time to process\n requestAF(function () {\n if (_this.bvDropdown) {\n _this.bvDropdown.hide(true);\n }\n });\n },\n onClick: function onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n this.closeDropdown();\n }\n },\n render: function render(h) {\n var linkClass = this.linkClass,\n variant = this.variant,\n active = this.active,\n disabled = this.disabled,\n onClick = this.onClick,\n bvAttrs = this.bvAttrs;\n return h('li', {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: {\n role: 'presentation'\n }\n }, [h(BLink, {\n staticClass: 'dropdown-item',\n class: [linkClass, _defineProperty({}, \"text-\".concat(variant), variant && !(active || disabled))],\n props: pluckProps(linkProps, this.$props),\n attrs: this.computedAttrs,\n on: {\n click: onClick\n },\n ref: 'item'\n }, this.normalizeSlot())]);\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 { NAME_DROPDOWN_ITEM_BUTTON } from '../../constants/components';\nimport { EVENT_NAME_CLICK } from '../../constants/events';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { attrsMixin } from '../../mixins/attrs';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n active: makeProp(PROP_TYPE_BOOLEAN, false),\n activeClass: makeProp(PROP_TYPE_STRING, 'active'),\n buttonClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING)\n}, NAME_DROPDOWN_ITEM_BUTTON); // --- Main component ---\n// @vue/component\n\nexport var BDropdownItemButton = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_ITEM_BUTTON,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n getBvDropdown: {\n default: function _default() {\n return function () {\n return null;\n };\n }\n }\n },\n inheritAttrs: false,\n props: props,\n computed: {\n bvDropdown: function bvDropdown() {\n return this.getBvDropdown();\n },\n computedAttrs: function computedAttrs() {\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n role: 'menuitem',\n type: 'button',\n disabled: this.disabled\n });\n }\n },\n methods: {\n closeDropdown: function closeDropdown() {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true);\n }\n },\n onClick: function onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n this.closeDropdown();\n }\n },\n render: function render(h) {\n var _ref;\n\n var active = this.active,\n variant = this.variant,\n bvAttrs = this.bvAttrs;\n return h('li', {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: {\n role: 'presentation'\n }\n }, [h('button', {\n staticClass: 'dropdown-item',\n class: [this.buttonClass, (_ref = {}, _defineProperty(_ref, this.activeClass, active), _defineProperty(_ref, \"text-\".concat(variant), variant && !(active || this.disabled)), _ref)],\n attrs: this.computedAttrs,\n on: {\n click: this.onClick\n },\n ref: 'button'\n }, this.normalizeSlot())]);\n }\n});","import { BDropdownItem, BDropdownItemButton } from 'bootstrap-vue/esm/index.js';\nimport { variantCssColorMap } from '../../../utils/constants';\nimport GlAvatar from '../avatar/avatar';\nimport GlButton from '../button/button';\nimport GlIcon from '../icon/icon';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlDropdownItem',\n components: {\n GlIcon,\n GlAvatar,\n GlButton\n },\n inheritAttrs: false,\n props: {\n avatarUrl: {\n type: String,\n required: false,\n default: ''\n },\n iconColor: {\n type: String,\n required: false,\n default: ''\n },\n iconName: {\n type: String,\n required: false,\n default: ''\n },\n iconRightAriaLabel: {\n type: String,\n required: false,\n default: ''\n },\n iconRightName: {\n type: String,\n required: false,\n default: ''\n },\n isChecked: {\n type: Boolean,\n required: false,\n default: false\n },\n isCheckItem: {\n type: Boolean,\n required: false,\n default: false\n },\n isCheckCentered: {\n type: Boolean,\n required: false,\n default: false\n },\n secondaryText: {\n type: String,\n required: false,\n default: ''\n }\n },\n computed: {\n bootstrapComponent() {\n const {\n href,\n to\n } = this.$attrs;\n // Support 'href' and Vue Router's 'to'\n return href || to ? BDropdownItem : BDropdownItemButton;\n },\n iconColorCss() {\n return variantCssColorMap[this.iconColor] || 'gl-text-gray-700';\n },\n shouldShowCheckIcon() {\n return this.isChecked || this.isCheckItem;\n },\n checkedClasses() {\n if (this.isCheckCentered) {\n return '';\n }\n return 'gl-mt-3 gl-align-self-start';\n }\n },\n methods: {\n handleClickIconRight() {\n this.$emit('click-icon-right');\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(_vm.bootstrapComponent,_vm._g(_vm._b({tag:\"component\",staticClass:\"gl-dropdown-item\"},'component',_vm.$attrs,false),_vm.$listeners),[(_vm.shouldShowCheckIcon)?_c('gl-icon',{class:[\n 'gl-dropdown-item-check-icon',\n { 'gl-visibility-hidden': !_vm.isChecked },\n _vm.checkedClasses ],attrs:{\"name\":\"mobile-issue-close\",\"data-testid\":\"dropdown-item-checkbox\"}}):_vm._e(),_vm._v(\" \"),(_vm.iconName)?_c('gl-icon',{class:['gl-dropdown-item-icon', _vm.iconColorCss],attrs:{\"name\":_vm.iconName}}):_vm._e(),_vm._v(\" \"),(_vm.avatarUrl)?_c('gl-avatar',{attrs:{\"size\":32,\"src\":_vm.avatarUrl}}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"gl-dropdown-item-text-wrapper\"},[_c('p',{staticClass:\"gl-dropdown-item-text-primary\"},[_vm._t(\"default\")],2),_vm._v(\" \"),(_vm.secondaryText)?_c('p',{staticClass:\"gl-dropdown-item-text-secondary\"},[_vm._v(_vm._s(_vm.secondaryText))]):_vm._e()]),_vm._v(\" \"),(_vm.iconRightName)?_c('gl-button',{attrs:{\"size\":\"small\",\"icon\":_vm.iconRightName,\"aria-label\":_vm.iconRightAriaLabel || _vm.iconRightName},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.handleClickIconRight.apply(null, arguments)}}}):_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","var assignValue = require('./_assignValue'),\n baseAssignValue = require('./_baseAssignValue');\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nmodule.exports = copyObject;\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});"],"sourceRoot":""}