{"version":3,"file":"dropdown-item.vue2.mjs","sources":["../../../../../../packages/components/dropdown/src/dropdown-item.vue"],"sourcesContent":["<script lang=\"ts\">\n  import {\n    computed,\n    defineComponent,\n    getCurrentInstance,\n    inject,\n    onMounted,\n    onUnmounted\n  } from 'vue'\n  import { getComponentNamespace, getNamespace } from '../../../utils/global-config'\n  import { isUndefined } from '../../../utils/is'\n  import { dropdownContextKey } from './context'\n\n  export default defineComponent({\n    name: getComponentNamespace('DropdownItem'),\n    props: {\n      disabled: {\n        type: Boolean,\n        default: false\n      },\n      command: {\n        type: [String, Number],\n        default: undefined\n      },\n      divided: {\n        type: Boolean,\n        default: false\n      },\n      label: {\n        type: [String, Number, Object],\n        default: undefined\n      }\n    },\n    setup(props) {\n      const ns = getNamespace('dropdown-item')\n      const dropdownContext = inject(dropdownContextKey)\n      const selected = computed(\n        () => dropdownContext?.command === props.command && !isUndefined(props.command)\n      )\n      const cls = computed(() => [\n        ns,\n        props.disabled && 'is-disabled',\n        selected.value && 'is-selected',\n        `${ns}--${dropdownContext?.size}`\n      ])\n      const proxy = getCurrentInstance()?.proxy as any\n      const handleDropdownItem = () => {\n        dropdownContext?.handleDropdownItem(proxy)\n      }\n\n      onMounted(() => {\n        if (!isUndefined(props.command)) {\n          dropdownContext?.dropdownItemCreate(proxy)\n        }\n      })\n\n      onUnmounted(() => {\n        if (!isUndefined(props.command)) {\n          dropdownContext?.dropdownItemDestroy(proxy)\n        }\n      })\n\n      return {\n        ns,\n        cls,\n        handleDropdownItem\n      }\n    }\n  })\n</script>\n\n<template>\n  <div :class=\"cls\" @click=\"handleDropdownItem\">\n    <slot>\n      {{ label }}\n    </slot>\n  </div>\n</template>\n"],"names":[],"mappings":";;;;;AAaE,gBAAe,eAAgB,CAAA;AAAA,EAC7B,IAAA,EAAM,sBAAsB,cAAc,CAAA;AAAA,EAC1C,KAAO,EAAA;AAAA,IACL,QAAU,EAAA;AAAA,MACR,IAAM,EAAA,OAAA;AAAA,MACN,OAAS,EAAA,KAAA;AAAA,KACX;AAAA,IACA,OAAS,EAAA;AAAA,MACP,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,MACrB,OAAS,EAAA,KAAA,CAAA;AAAA,KACX;AAAA,IACA,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,OAAA;AAAA,MACN,OAAS,EAAA,KAAA;AAAA,KACX;AAAA,IACA,KAAO,EAAA;AAAA,MACL,IAAM,EAAA,CAAC,MAAQ,EAAA,MAAA,EAAQ,MAAM,CAAA;AAAA,MAC7B,OAAS,EAAA,KAAA,CAAA;AAAA,KACX;AAAA,GACF;AAAA,EACA,MAAM,KAAO,EAAA;;AACX,IAAM,MAAA,EAAA,GAAK,aAAa,eAAe,CAAA,CAAA;AACvC,IAAM,MAAA,eAAA,GAAkB,OAAO,kBAAkB,CAAA,CAAA;AACjD,IAAA,MAAM,QAAW,GAAA,QAAA;AAAA,MACf,MAAA,CAAM,mDAAiB,OAAY,MAAA,KAAA,CAAM,WAAW,CAAC,WAAA,CAAY,MAAM,OAAO,CAAA;AAAA,KAChF,CAAA;AACA,IAAM,MAAA,GAAA,GAAM,SAAS,MAAM;AAAA,MACzB,EAAA;AAAA,MACA,MAAM,QAAY,IAAA,aAAA;AAAA,MAClB,SAAS,KAAS,IAAA,aAAA;AAAA,MAClB,CAAA,EAAG,OAAO,eAAiB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAA,IAAA,CAAA,CAAA;AAAA,KAC5B,CAAA,CAAA;AACD,IAAM,MAAA,KAAA,GAAA,CAAQ,EAAmB,GAAA,kBAAA,EAAA,KAAnB,IAAsB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,CAAA;AACpC,IAAA,MAAM,qBAAqB,MAAM;AAC/B,MAAA,eAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAiB,kBAAmB,CAAA,KAAA,CAAA,CAAA;AAAA,KACtC,CAAA;AAEA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,IAAI,CAAC,WAAA,CAAY,KAAM,CAAA,OAAO,CAAG,EAAA;AAC/B,QAAA,eAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAiB,kBAAmB,CAAA,KAAA,CAAA,CAAA;AAAA,OACtC;AAAA,KACD,CAAA,CAAA;AAED,IAAA,WAAA,CAAY,MAAM;AAChB,MAAA,IAAI,CAAC,WAAA,CAAY,KAAM,CAAA,OAAO,CAAG,EAAA;AAC/B,QAAA,eAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAiB,mBAAoB,CAAA,KAAA,CAAA,CAAA;AAAA,OACvC;AAAA,KACD,CAAA,CAAA;AAED,IAAO,OAAA;AAAA,MACL,EAAA;AAAA,MACA,GAAA;AAAA,MACA,kBAAA;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAC,CAAA;;;;"}