{"version":3,"file":"select.mjs","sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectWrapper\"\n v-click-outside:[popperPaneRef]=\"handleClose\"\n :class=\"wrapperKls\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n @click.stop=\"toggleMenu\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n @show=\"handleMenuEnter\"\n >\n <template #default>\n <div\n class=\"select-trigger\"\n @mouseenter=\"inputHovering = true\"\n @mouseleave=\"inputHovering = false\"\n >\n <div\n v-if=\"multiple\"\n ref=\"tags\"\n :class=\"[\n nsSelect.e('tags'),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n :style=\"selectTagsStyle\"\n >\n <transition\n v-if=\"collapseTags && selected.length\"\n @after-leave=\"resetInputHeight\"\n >\n <span\n :class=\"[\n nsSelect.b('tags-wrapper'),\n { 'has-prefix': prefixWidth && selected.length },\n ]\"\n >\n <el-tag\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"item.hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\" :style=\"tagTextStyle\">\n {{ item.currentLabel }}\n </span>\n </el-tag>\n <el-tag\n v-if=\"selected.length > maxCollapseTags\"\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n disable-transitions\n >\n <el-tooltip\n v-if=\"collapseTagsTooltip\"\n :disabled=\"dropMenuVisible\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :effect=\"effect\"\n placement=\"bottom\"\n :teleported=\"teleported\"\n >\n <template #default>\n <span :class=\"nsSelect.e('tags-text')\"\n >+ {{ selected.length - maxCollapseTags }}</span\n >\n </template>\n <template #content>\n <div :class=\"nsSelect.e('collapse-tags')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('collapse-tag')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"item.hitState\"\n :type=\"tagType\"\n disable-transitions\n :style=\"{ margin: '2px' }\"\n @close=\"deleteTag($event, item)\"\n >\n <span\n :class=\"nsSelect.e('tags-text')\"\n :style=\"{\n maxWidth: inputWidth - 75 + 'px',\n }\"\n >{{ item.currentLabel }}</span\n >\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n <span v-else :class=\"nsSelect.e('tags-text')\"\n >+ {{ selected.length - maxCollapseTags }}</span\n >\n </el-tag>\n </span>\n </transition>\n <transition v-if=\"!collapseTags\" @after-leave=\"resetInputHeight\">\n <span\n :class=\"[\n nsSelect.b('tags-wrapper'),\n { 'has-prefix': prefixWidth && selected.length },\n ]\"\n >\n <el-tag\n v-for=\"item in selected\"\n :key=\"getValueKey(item)\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"item.hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span\n :class=\"nsSelect.e('tags-text')\"\n :style=\"{ maxWidth: inputWidth - 75 + 'px' }\"\n >{{ item.currentLabel }}</span\n >\n </el-tag>\n </span>\n </transition>\n <input\n v-if=\"filterable\"\n ref=\"input\"\n v-model=\"query\"\n type=\"text\"\n :class=\"[\n nsSelect.e('input'),\n nsSelect.is(selectSize),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"{\n marginLeft:\n (prefixWidth && !selected.length) || tagInMultiLine\n ? `${prefixWidth}px`\n : '',\n flexGrow: 1,\n width: `${inputLength / (inputWidth - 32)}%`,\n maxWidth: `${inputWidth - 42}px`,\n }\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keyup=\"managePlaceholder\"\n @keydown=\"resetInputState\"\n @keydown.down.prevent=\"navigateOptions('next')\"\n @keydown.up.prevent=\"navigateOptions('prev')\"\n @keydown.esc=\"handleKeydownEscape\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.delete=\"deletePrevTag\"\n @keydown.tab=\"visible = false\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @input=\"debouncedQueryChange\"\n />\n </div>\n <!-- fix: https://github.com/element-plus/element-plus/issues/11415 -->\n <input\n v-if=\"isIOS && !multiple && filterable && readonly\"\n ref=\"iOSInput\"\n :class=\"[\n nsSelect.e('input'),\n nsSelect.is(selectSize),\n nsSelect.em('input', 'iOS'),\n ]\"\n :disabled=\"selectDisabled\"\n type=\"text\"\n />\n <el-input\n :id=\"id\"\n ref=\"reference\"\n v-model=\"selectedLabel\"\n type=\"text\"\n :placeholder=\"\n typeof currentPlaceholder === 'function'\n ? currentPlaceholder()\n : currentPlaceholder\n \"\n :name=\"name\"\n :autocomplete=\"autocomplete\"\n :size=\"selectSize\"\n :disabled=\"selectDisabled\"\n :readonly=\"readonly\"\n :validate-event=\"false\"\n :class=\"[nsSelect.is('focus', visible)]\"\n :tabindex=\"multiple && filterable ? -1 : undefined\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @input=\"debouncedOnInputChange\"\n @paste=\"debouncedOnInputChange\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @keydown.down.stop.prevent=\"navigateOptions('next')\"\n @keydown.up.stop.prevent=\"navigateOptions('prev')\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.esc=\"handleKeydownEscape\"\n @keydown.tab=\"visible = false\"\n >\n <template v-if=\"$slots.prefix\" #prefix>\n <div\n style=\"\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n \"\n >\n <slot name=\"prefix\" />\n </div>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"iconComponent && !showClose\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClose && clearIcon\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon')]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n </div>\n </template>\n <template #content>\n <el-select-menu>\n <el-scrollbar\n v-show=\"options.size > 0 && !loading\"\n ref=\"scrollbar\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[\n nsSelect.is(\n 'empty',\n !allowCreate && Boolean(query) && filteredOptionsCount === 0\n ),\n ]\"\n >\n <el-option v-if=\"showNewOption\" :value=\"query\" :created=\"true\" />\n <el-options @update-options=\"onOptionsRendered\">\n <slot />\n </el-options>\n </el-scrollbar>\n <template\n v-if=\"\n emptyText &&\n (!allowCreate || loading || (allowCreate && options.size === 0))\n \"\n >\n <slot v-if=\"$slots.empty\" name=\"empty\" />\n <p v-else :class=\"nsSelect.be('dropdown', 'empty')\">\n {{ emptyText }}\n </p>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n nextTick,\n onMounted,\n provide,\n reactive,\n toRefs,\n unref,\n} from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { placements } from '@popperjs/core'\nimport { ClickOutside } from '@element-plus/directives'\nimport { useFocus, useLocale, useNamespace } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport ElTooltip, {\n useTooltipContentProps,\n} from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag, { tagProps } from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { iconPropType, isIOS, isValidComponentSize } from '@element-plus/utils'\nimport { ArrowDown, CircleClose } from '@element-plus/icons-vue'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect, useSelectStates } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\n\nimport type { PropType } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { SelectContext } from './token'\n\nconst COMPONENT_NAME = 'ElSelect'\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElInput,\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: {\n name: String,\n id: String,\n modelValue: {\n type: [Array, String, Number, Boolean, Object],\n default: undefined,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n automaticDropdown: Boolean,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n effect: {\n type: String as PropType<'light' | 'dark' | string>,\n default: 'light',\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n allowCreate: Boolean,\n loading: Boolean,\n popperClass: {\n type: String,\n default: '',\n },\n popperOptions: {\n type: Object as PropType<Partial<Options>>,\n default: () => ({} as Partial<Options>),\n },\n remote: Boolean,\n loadingText: String,\n noMatchText: String,\n noDataText: String,\n remoteMethod: Function,\n filterMethod: Function,\n multiple: Boolean,\n multipleLimit: {\n type: Number,\n default: 0,\n },\n placeholder: {\n type: String,\n },\n defaultFirstOption: Boolean,\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n valueKey: {\n type: String,\n default: 'value',\n },\n collapseTags: Boolean,\n collapseTagsTooltip: {\n type: Boolean,\n default: false,\n },\n maxCollapseTags: {\n type: Number,\n default: 1,\n },\n teleported: useTooltipContentProps.teleported,\n persistent: {\n type: Boolean,\n default: true,\n },\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n fitInputWidth: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: iconPropType,\n default: ArrowDown,\n },\n // eslint-disable-next-line vue/require-prop-types\n tagType: { ...tagProps.type, default: 'info' },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n remoteShowSuffix: {\n type: Boolean,\n default: false,\n },\n suffixTransition: {\n type: Boolean,\n default: true,\n },\n placement: {\n type: String,\n values: placements,\n default: 'bottom-start',\n },\n },\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n ],\n\n setup(props, ctx) {\n const nsSelect = useNamespace('select')\n const nsInput = useNamespace('input')\n const { t } = useLocale()\n const states = useSelectStates(props)\n const {\n optionList,\n optionsArray,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n setSelected,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n onOptionCreate,\n onOptionDestroy,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n handleKeydownEscape,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n\n reference,\n input,\n iOSInput,\n tooltipRef,\n tags,\n selectWrapper,\n scrollbar,\n queryChange,\n groupQueryChange,\n handleMouseEnter,\n handleMouseLeave,\n showTagList,\n collapseTagList,\n } = useSelect(props, states, ctx)\n\n const { focus } = useFocus(reference)\n\n const {\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n options,\n cachedOptions,\n optionsCount,\n prefixWidth,\n tagInMultiLine,\n } = toRefs(states)\n\n const wrapperKls = computed(() => {\n const classList = [nsSelect.b()]\n const _selectSize = unref(selectSize)\n if (_selectSize) {\n classList.push(nsSelect.m(_selectSize))\n }\n if (props.disabled) {\n classList.push(nsSelect.m('disabled'))\n }\n return classList\n })\n\n const selectTagsStyle = computed(() => ({\n maxWidth: `${unref(inputWidth) - 32}px`,\n width: '100%',\n }))\n\n const tagTextStyle = computed(() => {\n const maxWidth =\n unref(inputWidth) > 123\n ? unref(inputWidth) - 123\n : unref(inputWidth) - 75\n return { maxWidth: `${maxWidth}px` }\n })\n\n provide(\n selectKey,\n reactive({\n props,\n options,\n optionsArray,\n cachedOptions,\n optionsCount,\n filteredOptionsCount,\n hoverIndex,\n handleOptionSelect,\n onOptionCreate,\n onOptionDestroy,\n selectWrapper,\n selected,\n setSelected,\n queryChange,\n groupQueryChange,\n }) as unknown as SelectContext\n )\n\n onMounted(() => {\n states.cachedPlaceHolder = currentPlaceholder.value =\n props.placeholder || (() => t('el.select.placeholder'))\n if (\n props.multiple &&\n Array.isArray(props.modelValue) &&\n props.modelValue.length > 0\n ) {\n currentPlaceholder.value = ''\n }\n useResizeObserver(selectWrapper, handleResize)\n if (props.remote && props.multiple) {\n resetInputHeight()\n }\n nextTick(() => {\n const refEl = reference.value && reference.value.$el\n if (!refEl) return\n inputWidth.value = refEl.getBoundingClientRect().width\n\n if (ctx.slots.prefix) {\n const prefix = refEl.querySelector(`.${nsInput.e('prefix')}`)\n prefixWidth.value = Math.max(\n prefix.getBoundingClientRect().width + 5,\n 30\n )\n }\n })\n setSelected()\n })\n\n if (props.multiple && !Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, [])\n }\n if (!props.multiple && Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, '')\n }\n\n const popperPaneRef = computed(() => {\n return tooltipRef.value?.popperRef?.contentRef\n })\n\n const onOptionsRendered = (v) => {\n optionList.value = v\n }\n\n return {\n isIOS,\n onOptionsRendered,\n tagInMultiLine,\n prefixWidth,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n options,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n handleKeydownEscape,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n focus,\n\n reference,\n input,\n iOSInput,\n tooltipRef,\n popperPaneRef,\n tags,\n selectWrapper,\n scrollbar,\n\n wrapperKls,\n selectTagsStyle,\n nsSelect,\n tagTextStyle,\n handleMouseEnter,\n handleMouseLeave,\n showTagList,\n collapseTagList,\n }\n },\n})\n</script>\n"],"names":["ElOption","_withDirectives","_openBlock","_createElementBlock","_withModifiers","_createVNode","_withCtx","_createElementVNode","_normalizeStyle","_createBlock","_Transition","_Fragment","_renderList","_normalizeClass","_toDisplayString","_createCommentVNode","_withKeys","_vModelText","_createSlots","_resolveDynamicComponent","_renderSlot","_vShow"],"mappings":"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"}
|