UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 2.89 kB
{"version":3,"file":"select-dropdown.vue2.mjs","sources":["../../../../../../packages/components/select/src/select-dropdown.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b('dropdown'), ns.is('multiple', isMultiple), popperClass]\"\n :style=\"{ [isFitInputWidth ? 'width' : 'minWidth']: minWidth }\"\n >\n <div v-if=\"$slots.header\" :class=\"ns.be('dropdown', 'header')\">\n <slot name=\"header\" />\n </div>\n <slot />\n <div v-if=\"$slots.footer\" :class=\"ns.be('dropdown', 'footer')\">\n <slot name=\"footer\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, inject, onMounted, ref } from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { useNamespace } from '@element-plus/hooks'\nimport { selectKey } from './token'\nimport { BORDER_HORIZONTAL_WIDTH } from '@element-plus/constants'\n\nexport default defineComponent({\n name: 'ElSelectDropdown',\n\n componentName: 'ElSelectDropdown',\n\n setup() {\n const select = inject(selectKey)!\n const ns = useNamespace('select')\n\n // computed\n const popperClass = computed(() => select.props.popperClass)\n const isMultiple = computed(() => select.props.multiple)\n const isFitInputWidth = computed(() => select.props.fitInputWidth)\n const minWidth = ref('')\n\n function updateMinWidth() {\n const offsetWidth = select.selectRef?.offsetWidth\n if (offsetWidth) {\n minWidth.value = `${offsetWidth - BORDER_HORIZONTAL_WIDTH}px`\n } else {\n minWidth.value = ''\n }\n }\n\n onMounted(() => {\n // TODO: updatePopper\n // popper.value.update()\n updateMinWidth()\n useResizeObserver(select.selectRef, updateMinWidth)\n })\n\n return {\n ns,\n minWidth,\n popperClass,\n isMultiple,\n isFitInputWidth,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;AAsBA,gBAAe,eAAA,CAAgB;AAAA,EAC7B,IAAA,EAAM,kBAAA;AAAA,EAEN,aAAA,EAAe,kBAAA;AAAA,EAEf,KAAA,GAAQ;AACN,IAAA,MAAM,MAAA,GAAS,OAAO,SAAS,CAAA;AAC/B,IAAA,MAAM,EAAA,GAAK,aAAa,QAAQ,CAAA;AAGhC,IAAA,MAAM,WAAA,GAAc,QAAA,CAAS,MAAM,MAAA,CAAO,MAAM,WAAW,CAAA;AAC3D,IAAA,MAAM,UAAA,GAAa,QAAA,CAAS,MAAM,MAAA,CAAO,MAAM,QAAQ,CAAA;AACvD,IAAA,MAAM,eAAA,GAAkB,QAAA,CAAS,MAAM,MAAA,CAAO,MAAM,aAAa,CAAA;AACjE,IAAA,MAAM,QAAA,GAAW,IAAI,EAAE,CAAA;AAEvB,IAAA,SAAS,cAAA,GAAiB;;AACxB,MAAA,MAAM,WAAA,GAAA,CAAc,EAAA,GAAA,MAAA,CAAO,SAAA,KAAP,IAAA,GAAA,MAAA,GAAA,EAAA,CAAkB,WAAA;AACtC,MAAA,IAAI,WAAA,EAAa;AACf,QAAA,QAAA,CAAS,KAAA,GAAQ,CAAA,EAAG,WAAA,GAAc,uBAAuB,CAAA,EAAA,CAAA;AAAA,MAC3D,CAAA,MAAO;AACL,QAAA,QAAA,CAAS,KAAA,GAAQ,EAAA;AAAA,MACnB;AAAA,IACF;AAEA,IAAA,SAAA,CAAU,MAAM;AAGd,MAAA,cAAA,EAAe;AACf,MAAA,iBAAA,CAAkB,MAAA,CAAO,WAAW,cAAc,CAAA;AAAA,IACpD,CAAC,CAAA;AAED,IAAA,OAAO;AAAA,MACL,EAAA;AAAA,MACA,QAAA;AAAA,MACA,WAAA;AAAA,MACA,UAAA;AAAA,MACA;AAAA,KACF;AAAA,EACF;AACF,CAAC,CAAA;;;;"}