UNPKG

vexip-ui

Version:

A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good

1 lines 3.59 kB
{"version":3,"file":"popup-item.vue2.mjs","sources":["../../../components/popup/popup-item.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { Renderer } from '@/components/renderer'\n\nimport { computed, inject, nextTick, onMounted, ref } from 'vue'\n\nimport { classProp, useNameHelper, useZIndex } from '@vexip-ui/config'\nimport { noop } from '@vexip-ui/utils'\nimport { DELETE_HANDLER } from './symbol'\n\nimport type { PropType } from 'vue'\nimport type { PopupItemState } from './symbol'\n\ndefineOptions({ name: 'PopupItem' })\n\nconst props = defineProps({\n state: {\n type: Object as PropType<PopupItemState>,\n default: () => ({}),\n },\n transitionName: {\n type: String,\n default: null,\n },\n innerClass: {\n type: classProp,\n default: null,\n },\n})\n\nconst emit = defineEmits(['enter', 'leave'])\n\nconst handleDelete = inject(DELETE_HANDLER, noop)\nconst nh = useNameHelper('popup')\nconst getIndex = useZIndex()\n\nconst wrapper = ref<HTMLElement>()\n\nconst transition = computed(() => props.transitionName || nh.ns('popup-top'))\n\nonMounted(() => {\n nextTick(() => {\n const state = props.state\n\n if (state && wrapper.value) {\n state.height = wrapper.value.offsetHeight\n }\n })\n})\n</script>\n\n<template>\n <Transition appear :name=\"transition\" @after-leave=\"handleDelete(state.key)\">\n <div\n v-show=\"state.visible\"\n ref=\"wrapper\"\n :class=\"nh.be('item')\"\n :style=\"{ zIndex: getIndex() }\"\n :vxp-index=\"state.key\"\n @pointerenter=\"emit('enter')\"\n @pointerleave=\"emit('leave')\"\n >\n <div :class=\"[nh.be('item-inner'), innerClass]\">\n <slot :item=\"state\">\n <Renderer\n v-if=\"typeof state.renderer === 'function'\"\n :renderer=\"state.renderer\"\n ></Renderer>\n <template v-else>\n {{ state.content }}\n </template>\n </slot>\n </div>\n </div>\n </Transition>\n</template>\n"],"names":["props","__props","emit","__emit","handleDelete","inject","DELETE_HANDLER","noop","nh","useNameHelper","getIndex","useZIndex","wrapper","ref","transition","computed","onMounted","nextTick","state","_createBlock","_Transition","_cache","$event","_unref","_createElementVNode","_normalizeClass","_renderSlot","_ctx","Renderer","_createElementBlock","_Fragment","_createTextVNode","_toDisplayString","_vShow"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAcA,UAAMA,IAAQC,GAeRC,IAAOC,GAEPC,IAAeC,EAAOC,GAAgBC,CAAI,GAC1CC,IAAKC,EAAc,OAAO,GAC1BC,IAAWC,EAAU,GAErBC,IAAUC,EAAiB,GAE3BC,IAAaC,EAAS,MAAMf,EAAM,kBAAkBQ,EAAG,GAAG,WAAW,CAAC;AAE5E,WAAAQ,EAAU,MAAM;AACd,MAAAC,EAAS,MAAM;AACb,cAAMC,IAAQlB,EAAM;AAEhB,QAAAkB,KAASN,EAAQ,UACbM,EAAA,SAASN,EAAQ,MAAM;AAAA,MAC/B,CACD;AAAA,IAAA,CACF,mBAICO,EAsBaC,GAAA;AAAA,MAtBD,QAAA;AAAA,MAAQ,MAAMN,EAAU;AAAA,MAAG,cAAaO,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAC,EAAAnB,CAAA,EAAaH,EAAA,MAAM,GAAG;AAAA,IAAA;iBACxE,MAoBM;AAAA,UApBNuB,EAoBM,OAAA;AAAA,mBAlBA;AAAA,UAAJ,KAAIZ;AAAA,UACH,OAAKa,EAAEF,EAAEf,CAAA,EAAC,GAAE,MAAA,CAAA;AAAA,UACZ,mBAAiBe,EAAQb,CAAA,EAAA,GAAA;AAAA,UACzB,aAAWT,EAAK,MAAC;AAAA,UACjB,uCAAcC,EAAI,OAAA;AAAA,UAClB,uCAAcA,EAAI,OAAA;AAAA,QAAA;UAEnBsB,EAUM,OAAA;AAAA,YAVA,OAAQC,EAAA,CAAAF,EAAAf,CAAA,EAAG,kBAAkBP,EAAU,UAAA,CAAA;AAAA,UAAA;YAC3CyB,EAQOC,EARA,QAAA,WAAA,EAAA,MAAM1B,EAAA,SAAb,MAQO;AAAA,cANU,OAAAA,EAAA,MAAM,YAAQ,mBAD7BkB,EAGYI,EAAAK,CAAA,GAAA;AAAA;gBADT,UAAU3B,EAAK,MAAC;AAAA,iDAEnB4B,EAEWC,GAAA,EAAA,KAAA,KAAA;AAAA,gBADNC,EAAAC,EAAA/B,EAAA,MAAM,OAAO,GAAA,CAAA;AAAA;;;;UAfd,CAAAgC,GAAAhC,EAAA,MAAM,OAAO;AAAA;;;;;;"}