{"version":3,"sources":["webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/form-input/form-input.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/mixins/form-state.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/mixins/form-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/@gitlab/ui/dist/vendor/bootstrap-vue/src/mixins/form-validity.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/mixins/form-selection.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/mixins/form-control.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/utils/get-instance-from-directive.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/mixins/form-size.js","webpack:////home/git/gitlab/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/directives/tooltip/tooltip.js","webpack:///./authentication/password/components/password_input.vue","webpack:///./authentication/password/constants.js","webpack:///authentication/password/components/password_input.vue","webpack:///./authentication/password/components/password_input.vue?6ad4","webpack:///./authentication/password/components/password_input.vue?36fe"],"names":["TYPES","props","list","max","min","noWheel","step","type","BFormInput","name","mixins","computed","this","localType","form","disabled","placeholder","required","id","safeId","autocomplete","readonly","plaintext","computedAriaInvalid","bvListeners","input","onInput","change","onChange","blur","onBlur","watch","newValue","setWheelStopper","methods","on","$el","onWheelFocus","onWheelBlur","document","stopWheel","event","propagation","h","class","computedClass","attrs","computedAttrs","domProps","value","localValue","computedListeners","ref","state","formStateMixin","computedState","ariaInvalid","mixin","modelMixin","modelProps","prop","MODEL_PROP_NAME","MODEL_EVENT_NAME","defaultValue","debounce","formatter","lazy","lazyFormatter","number","trim","formTextMixin","vModelValue","modifyValue","isRange","isColor","sizeFormClass","stateClass","stringifyValue","modifiedValue","clearDebounce","$_inputDebounceTimer","clearTimeout","force","arguments","length","undefined","hasFormatter","doUpdate","$emit","$input","$refs","computedDebounce","setTimeout","target","composing","formattedValue","formatValue","defaultPrevented","updateValue","__vue_script__","components","inheritAttrs","model","width","String","Object","default","validator","values","every","includes","defaultWidth","nonDefaultWidths","entries","map","_ref","breakpoint","_this","$listeners","_len","args","Array","_key","update","_len2","_key2","$attrs","__vue_component__","render","_h","$createElement","_self","_c","_g","_b","staticClass","cssClasses","listeners","staticRenderFns","formValidityMixin","validity","cache","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","formSelectionMixin","selectionStart","val","selectionEnd","selectionDirection","select","setSelectionRange","setRangeText","autofocus","formControlMixin","handleAutofocus","$nextTick","el","getInstanceFromDirective","vnode","bindings","instance","context","size","formSizeMixin","BV_TOOLTIP","validTriggers","focus","hover","click","manual","htmlRE","noninteractiveRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","applyTooltip","config","title","trigger","placement","fallbackPlacement","container","animation","offset","html","interactive","delay","boundary","boundaryPadding","variant","customClass","data","show","hide","arg","modifiers","forEach","mod","test","slice","selectedTriggers","filter","join","toLowerCase","split","parseBindings","parent","_scopeId","__bv_prev_data__","$on","updateData","triggers","noFade","oldData","newData","VBTooltip","$destroy","removeTooltip","SHOW_PASSWORD","__","HIDE_PASSWORD","GlFormInput","GlButton","directives","GlTooltip","GlTooltipDirective","minimumPasswordLength","testid","trackActionForErrors","isMasked","toggleVisibilityLabel","toggleVisibilityIcon","handleToggleVisibilityButtonClick","component","_vm","_v","rawName","expression"],"mappings":"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","file":"commons-pages.admin.sessions-pages.profiles.accounts.show-pages.profiles.two_factor_auths-pages.regi-ed3e4ac8.ad162b1d.chunk.js","sourcesContent":["import { extend } from '../../vue';\nimport { NAME_FORM_INPUT } from '../../constants/components';\nimport { PROP_TYPE_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { arrayIncludes } from '../../utils/array';\nimport { attemptBlur } from '../../utils/dom';\nimport { eventOnOff, eventOff, eventOn, stopEvent } from '../../utils/events';\nimport { sortKeys } from '../../utils/object';\nimport { makePropsConfigurable, makeProp } from '../../utils/props';\nimport { props as props$2, formControlMixin } from '../../mixins/form-control';\nimport { formSelectionMixin } from '../../mixins/form-selection';\nimport { props as props$3, formSizeMixin } from '../../mixins/form-size';\nimport { props as props$4, formStateMixin } from '../../mixins/form-state';\nimport { props as props$5, formTextMixin } from '../../mixins/form-text';\nimport { formValidityMixin } from '../../mixins/form-validity';\nimport { props as props$1, idMixin } from '../../mixins/id';\nimport { listenersMixin } from '../../mixins/listeners';\n\n// --- Constants ---\n\n// Valid supported input types\nconst TYPES = ['text', 'password', 'email', 'number', 'url', 'tel', 'search', 'range', 'color', 'date', 'time', 'datetime', 'datetime-local', 'month', 'week'];\n\n// --- Props ---\n\nconst props = makePropsConfigurable(sortKeys({\n ...props$1,\n ...props$2,\n ...props$3,\n ...props$4,\n ...props$5,\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', type => {\n return arrayIncludes(TYPES, type);\n })\n}), NAME_FORM_INPUT);\n\n// --- Main component ---\n\n// @vue/component\nconst 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,\n computed: {\n localType() {\n // We only allow certain types\n const {\n type\n } = this;\n return arrayIncludes(TYPES, type) ? type : 'text';\n },\n computedAttrs() {\n const {\n localType: type,\n name,\n form,\n disabled,\n placeholder,\n required,\n min,\n max,\n step\n } = this;\n return {\n id: this.safeId(),\n name,\n form,\n type,\n disabled,\n placeholder,\n required,\n autocomplete: this.autocomplete || null,\n readonly: this.readonly || this.plaintext,\n min,\n max,\n step,\n list: type !== 'password' ? this.list : null,\n 'aria-required': required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\n };\n },\n computedListeners() {\n return {\n ...this.bvListeners,\n input: this.onInput,\n change: this.onChange,\n blur: this.onBlur\n };\n }\n },\n watch: {\n noWheel(newValue) {\n this.setWheelStopper(newValue);\n }\n },\n mounted() {\n this.setWheelStopper(this.noWheel);\n },\n /* istanbul ignore next */\n deactivated() {\n // Turn off listeners when keep-alive component deactivated\n /* istanbul ignore next */\n this.setWheelStopper(false);\n },\n /* istanbul ignore next */\n activated() {\n // Turn on listeners (if no-wheel) when keep-alive component activated\n /* istanbul ignore next */\n this.setWheelStopper(this.noWheel);\n },\n beforeDestroy() {\n /* istanbul ignore next */\n this.setWheelStopper(false);\n },\n methods: {\n setWheelStopper(on) {\n const input = this.$el;\n // We use native events, so that we don't interfere with propagation\n eventOnOff(on, input, 'focus', this.onWheelFocus);\n eventOnOff(on, input, 'blur', this.onWheelBlur);\n if (!on) {\n eventOff(document, 'wheel', this.stopWheel);\n }\n },\n onWheelFocus() {\n eventOn(document, 'wheel', this.stopWheel);\n },\n onWheelBlur() {\n eventOff(document, 'wheel', this.stopWheel);\n },\n stopWheel(event) {\n stopEvent(event, {\n propagation: false\n });\n attemptBlur(this.$el);\n }\n },\n 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});\n\nexport { BFormInput, props };\n","import { extend } from '../vue';\nimport { PROP_TYPE_BOOLEAN } from '../constants/props';\nimport { isBoolean } from '../utils/inspect';\nimport { makePropsConfigurable, makeProp } from '../utils/props';\nimport { safeVueInstance } from '../utils/safe-vue-instance';\n\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 */\n\n// --- Props ---\n\nconst props = makePropsConfigurable({\n // Tri-state prop: true, false, null (or undefined)\n state: makeProp(PROP_TYPE_BOOLEAN, null)\n}, 'formState');\n\n// --- Mixin ---\n\n// @vue/component\nconst formStateMixin = extend({\n props,\n computed: {\n computedState() {\n // If not a boolean, ensure that value is null\n return isBoolean(this.state) ? this.state : null;\n },\n stateClass() {\n const state = this.computedState;\n return state === true ? 'is-valid' : state === false ? 'is-invalid' : null;\n },\n computedAriaInvalid() {\n const ariaInvalid = safeVueInstance(this).ariaInvalid;\n if (ariaInvalid === true || ariaInvalid === 'true' || ariaInvalid === '') {\n return 'true';\n }\n return this.computedState === false ? 'true' : ariaInvalid;\n }\n }\n});\n\nexport { formStateMixin, props };\n","import { extend } from '../vue';\nimport { EVENT_NAME_UPDATE, EVENT_NAME_INPUT, EVENT_NAME_CHANGE, EVENT_NAME_BLUR } from '../constants/events';\nimport { PROP_TYPE_NUMBER_STRING, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_STRING, PROP_TYPE_FUNCTION, PROP_TYPE_BOOLEAN } from '../constants/props';\nimport { attemptFocus, attemptBlur } 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 { makePropsConfigurable, makeProp, hasPropFunction } from '../utils/props';\nimport { toString } from '../utils/string';\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER_STRING,\n defaultValue: '',\n event: EVENT_NAME_UPDATE\n});\n\n// --- Props ---\n\nconst props = makePropsConfigurable(sortKeys({\n ...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');\n\n// --- Mixin ---\n\n// @vue/component\nconst formTextMixin = extend({\n mixins: [modelMixin],\n props,\n data() {\n const value = this[MODEL_PROP_NAME];\n return {\n localValue: toString(value),\n vModelValue: this.modifyValue(value)\n };\n },\n computed: {\n computedClass() {\n const {\n plaintext,\n type\n } = this;\n const isRange = type === 'range';\n const 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() {\n // Ensure we have a positive number equal to or greater than 0\n return mathMax(toInteger(this.debounce, 0), 0);\n },\n hasFormatter() {\n return hasPropFunction(this.formatter);\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n const stringifyValue = toString(newValue);\n const modifiedValue = this.modifyValue(newValue);\n if (stringifyValue !== this.localValue || modifiedValue !== this.vModelValue) {\n // Clear any pending debounce timeout, as we are overwriting the user input\n this.clearDebounce();\n // Update the local values\n this.localValue = stringifyValue;\n this.vModelValue = modifiedValue;\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_inputDebounceTimer = null;\n },\n beforeDestroy() {\n this.clearDebounce();\n },\n methods: {\n clearDebounce() {\n clearTimeout(this.$_inputDebounceTimer);\n this.$_inputDebounceTimer = null;\n },\n formatValue(value, event) {\n let force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n value = toString(value);\n if (this.hasFormatter && (!this.lazyFormatter || force)) {\n value = this.formatter(value, event);\n }\n return value;\n },\n modifyValue(value) {\n value = toString(value);\n // Emulate `.trim` modifier behaviour\n if (this.trim) {\n value = value.trim();\n }\n // Emulate `.number` modifier behaviour\n if (this.number) {\n value = toFloat(value, value);\n }\n return value;\n },\n updateValue(value) {\n let force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n const {\n lazy\n } = this;\n if (lazy && !force) {\n return;\n }\n // Make sure to always clear the debounce when `updateValue()`\n // is called, even when the v-model hasn't changed\n this.clearDebounce();\n // Define the shared update logic in a method to be able to use\n // it for immediate and debounced value changes\n const doUpdate = () => {\n value = this.modifyValue(value);\n if (value !== this.vModelValue) {\n this.vModelValue = value;\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 /* istanbul ignore next: hard to test */\n const $input = this.$refs.input;\n /* istanbul ignore if: hard to test out of sync value */\n if ($input && value !== $input.value) {\n $input.value = value;\n }\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 const debounce = this.computedDebounce;\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(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 /* istanbul ignore if: hard to test composition events */\n if (event.target.composing) {\n return;\n }\n const {\n value\n } = event.target;\n const formattedValue = this.formatValue(value, event);\n // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n /* istanbul ignore next */\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, {\n propagation: false\n });\n return;\n }\n this.localValue = formattedValue;\n this.updateValue(formattedValue);\n this.$emit(EVENT_NAME_INPUT, formattedValue);\n },\n onChange(event) {\n const {\n value\n } = event.target;\n const formattedValue = this.formatValue(value, event);\n // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n /* istanbul ignore next */\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, {\n propagation: false\n });\n return;\n }\n this.localValue = formattedValue;\n this.updateValue(formattedValue, true);\n this.$emit(EVENT_NAME_CHANGE, formattedValue);\n },\n onBlur(event) {\n // Apply the `localValue` on blur to prevent cursor jumps\n // on mobile browsers (e.g. caused by autocomplete)\n const {\n value\n } = event.target;\n const formattedValue = this.formatValue(value, event, true);\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));\n // We pass the formatted value here since the `updateValue` method\n // handles the modifiers itself\n this.updateValue(formattedValue, true);\n }\n // Emit native blur event\n this.$emit(EVENT_NAME_BLUR, event);\n },\n focus() {\n // For external handler that may want a focus method\n if (!this.disabled) {\n attemptFocus(this.$el);\n }\n },\n blur() {\n // For external handler that may want a blur method\n if (!this.disabled) {\n attemptBlur(this.$el);\n }\n }\n }\n});\n\nexport { MODEL_EVENT_NAME, MODEL_PROP_NAME, formTextMixin, props };\n","import isObject from 'lodash/isObject';\nimport { BFormInput } from '../../../../vendor/bootstrap-vue/src/components/form-input/form-input';\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 [\n // eslint-disable-next-line @gitlab/tailwind -- Not a CSS utility\n ...(defaultWidth ? [`gl-form-input-${defaultWidth}`] : []), ...Object.entries(nonDefaultWidths).map(\n // eslint-disable-next-line @gitlab/tailwind -- Not a CSS utility\n _ref => {\n let [breakpoint, width] = _ref;\n return `gl-${breakpoint}-form-input-${width}`;\n })];\n }\n\n // eslint-disable-next-line @gitlab/tailwind -- Not a CSS utility\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 noWheel() {\n return this.$attrs.type === 'number';\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\":_vm.noWheel}},'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","import { extend } from '../vue';\n\n// @vue/component\nconst formValidityMixin = extend({\n computed: {\n validity: {\n // Expose validity property\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.validity;\n }\n },\n validationMessage: {\n // Expose validationMessage property\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.validationMessage;\n }\n },\n willValidate: {\n // Expose willValidate property\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.willValidate;\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n setCustomValidity() {\n // For external handler that may want a setCustomValidity(...) method\n return this.$refs.input.setCustomValidity(...arguments);\n },\n /* istanbul ignore next */\n checkValidity() {\n // For external handler that may want a checkValidity(...) method\n return this.$refs.input.checkValidity(...arguments);\n },\n /* istanbul ignore next */\n reportValidity() {\n // For external handler that may want a reportValidity(...) method\n return this.$refs.input.reportValidity(...arguments);\n }\n }\n});\n\nexport { formValidityMixin };\n","import { extend } from '../vue';\n\n// @vue/component\nconst formSelectionMixin = extend({\n computed: {\n selectionStart: {\n // Expose selectionStart for formatters, etc\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.selectionStart;\n },\n /* istanbul ignore next */\n set(val) {\n this.$refs.input.selectionStart = val;\n }\n },\n selectionEnd: {\n // Expose selectionEnd for formatters, etc\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.selectionEnd;\n },\n /* istanbul ignore next */\n set(val) {\n this.$refs.input.selectionEnd = val;\n }\n },\n selectionDirection: {\n // Expose selectionDirection for formatters, etc\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.selectionDirection;\n },\n /* istanbul ignore next */\n set(val) {\n this.$refs.input.selectionDirection = val;\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n select() {\n // For external handler that may want a select() method\n this.$refs.input.select(...arguments);\n },\n /* istanbul ignore next */\n setSelectionRange() {\n // For external handler that may want a setSelectionRange(a,b,c) method\n this.$refs.input.setSelectionRange(...arguments);\n },\n /* istanbul ignore next */\n setRangeText() {\n // For external handler that may want a setRangeText(a,b,c) method\n this.$refs.input.setRangeText(...arguments);\n }\n }\n});\n\nexport { formSelectionMixin };\n","import { extend } from '../vue';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { requestAF, isVisible, matches, select, attemptFocus } from '../utils/dom';\nimport { makePropsConfigurable, makeProp } from '../utils/props';\n\n// --- Constants ---\n\nconst SELECTOR = 'input, textarea, select';\n\n// --- Props ---\n\nconst 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');\n\n// --- Mixin ---\n\n// @vue/component\nconst formControlMixin = extend({\n props,\n mounted() {\n this.handleAutofocus();\n },\n /* istanbul ignore next */\n activated() {\n this.handleAutofocus();\n },\n methods: {\n handleAutofocus() {\n this.$nextTick(() => {\n requestAF(() => {\n let el = this.$el;\n if (this.autofocus && isVisible(el)) {\n if (!matches(el, SELECTOR)) {\n el = select(SELECTOR, el);\n }\n attemptFocus(el);\n }\n });\n });\n }\n }\n});\n\nexport { formControlMixin, props };\n","import { isVue3 } from '../vue';\n\nconst getInstanceFromDirective = (vnode, bindings) => isVue3 ? bindings.instance : vnode.context;\n\nexport { getInstanceFromDirective };\n","import { extend } from '../vue';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { makePropsConfigurable, makeProp } from '../utils/props';\n\n// --- Props ---\n\nconst props = makePropsConfigurable({\n size: makeProp(PROP_TYPE_STRING)\n}, 'formControls');\n\n// --- Mixin ---\n\n// @vue/component\nconst formSizeMixin = extend({\n props,\n computed: {\n sizeFormClass() {\n return [this.size ? `form-control-${this.size}` : null];\n }\n }\n});\n\nexport { formSizeMixin, props };\n","import { NAME_TOOLTIP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { EVENT_NAME_SHOW } from '../../constants/events';\nimport { concat } from '../../utils/array';\nimport { nextTick, isVue3 } 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, isString, isNumber, isPlainObject, 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';\n\n// Key which we use to store tooltip object on element\nconst BV_TOOLTIP = '__BV_Tooltip__';\n\n// Default trigger\nconst DefaultTrigger = 'hover focus';\n\n// Valid event triggers\nconst validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n};\n\n// Directive modifier test regular expressions. Pre-compile for performance\nconst htmlRE = /^html$/i;\nconst noninteractiveRE = /^noninteractive$/i;\nconst noFadeRE = /^nofade$/i;\nconst placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i;\nconst boundaryRE = /^(window|viewport|scrollParent)$/i;\nconst delayRE = /^d\\d+$/i;\nconst delayShowRE = /^ds\\d+$/i;\nconst delayHideRE = /^dh\\d+$/i;\nconst offsetRE = /^o-?\\d+$/i;\nconst variantRE = /^v-.+$/i;\nconst spacesRE = /\\s+/;\n\n// Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\nconst parseBindings = (bindings, vnode) => /* istanbul ignore next: not easy to test */{\n // We start out with a basic config\n let 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 };\n // Process `bindings.value`\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 = {\n ...config,\n ...bindings.value\n };\n }\n\n // If title is not provided, try title attribute\n if (isUndefined(config.title)) {\n // Try attribute\n const attrs = isVue3 ? vnode.props : (vnode.data || {}).attrs;\n config.title = attrs && !isUndefinedOrNull(attrs.title) ? attrs.title : undefined;\n }\n\n // Normalize delay\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n };\n }\n\n // If argument, assume element ID of container element\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = `#${bindings.arg}`;\n }\n\n // Process modifiers\n keys(bindings.modifiers).forEach(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 const 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 });\n\n // Special handling of event trigger modifiers trigger is\n // a space separated list\n const selectedTriggers = {};\n\n // Parse current config object trigger\n concat(config.trigger || '').filter(identity).join(' ').trim().toLowerCase().split(spacesRE).forEach(trigger => {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true;\n }\n });\n\n // Parse modifiers for triggers\n keys(bindings.modifiers).forEach(mod => {\n mod = mod.toLowerCase();\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true;\n }\n });\n\n // Sanitize triggers\n config.trigger = keys(selectedTriggers).join(' ');\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus';\n }\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger;\n }\n\n // Return the config\n return config;\n};\n\n// Add/update Tooltip on our element\nconst applyTooltip = (el, bindings, vnode) => {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return;\n }\n const config = parseBindings(bindings, vnode);\n if (!el[BV_TOOLTIP]) {\n const 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, () => /* istanbul ignore next: for now */{\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 const 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 const oldData = el[BV_TOOLTIP].__bv_prev_data__;\n el[BV_TOOLTIP].__bv_prev_data__ = data;\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n const newData = {\n target: el\n };\n keys(data).forEach(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};\n\n// Remove Tooltip on our element\nconst removeTooltip = el => {\n if (el[BV_TOOLTIP]) {\n el[BV_TOOLTIP].$destroy();\n el[BV_TOOLTIP] = null;\n }\n delete el[BV_TOOLTIP];\n};\n\n// Export our directive\nconst VBTooltip = {\n 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(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent render update loops\n nextTick(() => {\n applyTooltip(el, bindings, vnode);\n });\n },\n unbind(el) {\n removeTooltip(el);\n }\n};\n\nexport { VBTooltip };\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"gl-field-error-anchor input-icon-wrapper\"},[_c('gl-form-input',{staticClass:\"js-password-complexity-validation js-track-error !gl-pr-8\",attrs:{\"id\":_vm.id,\"required\":\"\",\"autocomplete\":_vm.autocomplete,\"name\":_vm.name,\"minlength\":_vm.minimumPasswordLength,\"data-testid\":_vm.testid,\"data-track-action-for-errors\":_vm.trackActionForErrors,\"title\":_vm.title,\"type\":_vm.type}}),_vm._v(\" \"),_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\",value:(_vm.toggleVisibilityLabel),expression:\"toggleVisibilityLabel\"}],staticClass:\"input-icon-right !gl-right-0\",attrs:{\"category\":\"tertiary\",\"aria-label\":_vm.toggleVisibilityLabel,\"icon\":_vm.toggleVisibilityIcon},on:{\"click\":_vm.handleToggleVisibilityButtonClick}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { __ } from '~/locale';\n\nexport const SHOW_PASSWORD = __('Show password');\nexport const HIDE_PASSWORD = __('Hide password');\n","\n\n\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--11-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--11-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./password_input.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--11-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--11-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./password_input.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./password_input.vue?vue&type=template&id=8f0acd52\"\nimport script from \"./password_input.vue?vue&type=script&lang=js\"\nexport * from \"./password_input.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}