{"version":3,"file":"select-dropdown.mjs","sources":["../../../../../../packages/components/select/src/select-dropdown.vue"],"sourcesContent":["<template>\n  <div\n    class=\"select-dropdown\"\n    :class=\"[{ 'is-multiple': isMultiple }, popperClass]\"\n    :style=\"{ minWidth: minWidth }\"\n    @mousedown.stop\n  >\n    <div v-if=\"$slots.header\" class=\"select-dropdown-header\">\n      <slot name=\"header\"></slot>\n    </div>\n    <slot></slot>\n    <div v-if=\"$slots.footer\" class=\"select-dropdown-footer\">\n      <slot name=\"footer\"></slot>\n    </div>\n  </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n  defineComponent,\n  computed,\n  onMounted,\n  inject,\n  ref,\n} from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { selectKey } from './token'\n\nexport default defineComponent({\n  name: 'SelectDropdown',\n\n  componentName: 'SelectDropdown',\n\n  setup() {\n    const select = inject(selectKey)\n\n    // computed\n    const popperClass = computed(() => select.props.popperClass)\n    const isMultiple = computed(() => select.props.multiple)\n    const minWidth = ref('')\n\n    function updateMinWidth() {\n      minWidth.value = select.selectWrapper?.getBoundingClientRect().width + 'px'\n    }\n\n    onMounted(() => {\n      // TODO: updatePopper\n      // popper.value.update()\n\n      useResizeObserver(select.selectWrapper, updateMinWidth)\n\n    })\n\n    return {\n      minWidth,\n      popperClass,\n      isMultiple,\n    }\n  },\n})\n</script>\n"],"names":["_normalizeClass","_renderSlot"],"mappings":";;;;;AA4BA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,eAAe;AAAA,EAEf,QAAQ;AACN,UAAM,SAAS,OAAO,SAAS;AAG/B,UAAM,cAAc,SAAS,MAAM,OAAO,MAAM,WAAW;AAC3D,UAAM,aAAa,SAAS,MAAM,OAAO,MAAM,QAAQ;AACvD,UAAM,WAAW,IAAI,EAAE;AAEvB,8BAA0B;AACxB;AAAuE;AAGzE;AAIE;AAAsD;AAIxD;AAAO;AACL,MACA;AAAA,MACA;AAAA;AACF;AAEJ;;2CA7CQ;AAAA;AAX+C,IAClD,OAAKA;AAAsB,IAC3B;AAAD;AAAe;;AAIT;MAFoB;AAAM;;AACH;;AAEhB,IACFC,WAAO;AAEZ;MAFoB;AAAM;;AACH;;;;;;;;"}