UNPKG

vexip-ui

Version:

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

1 lines 3.55 kB
{"version":3,"file":"popup-item.vue2.cjs","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":"4bAcA,MAAMA,EAAQC,EAeRC,EAAOC,EAEPC,EAAeC,EAAAA,OAAOC,EAAA,eAAgBC,MAAI,EAC1CC,EAAKC,gBAAc,OAAO,EAC1BC,EAAWC,EAAAA,UAAU,EAErBC,EAAUC,EAAAA,IAAiB,EAE3BC,EAAaC,WAAS,IAAMf,EAAM,gBAAkBQ,EAAG,GAAG,WAAW,CAAC,EAE5EQ,OAAAA,EAAAA,UAAU,IAAM,CACdC,EAAAA,SAAS,IAAM,CACb,MAAMC,EAAQlB,EAAM,MAEhBkB,GAASN,EAAQ,QACbM,EAAA,OAASN,EAAQ,MAAM,aAC/B,CACD,CAAA,CACF,wBAICO,EAAA,YAsBaC,aAAA,CAtBD,OAAA,GAAQ,KAAMN,EAAU,MAAG,aAAaO,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAC,EAAA,MAAAnB,CAAA,EAAaH,EAAA,MAAM,GAAG,EAAA,qBACxE,IAoBM,kBApBNuB,qBAoBM,MAAA,SAlBA,UAAJ,IAAIZ,EACH,MAAKa,EAAE,eAAAF,EAAA,MAAEf,CAAA,EAAC,GAAE,MAAA,CAAA,EACZ,+BAAiBe,EAAAA,MAAQb,CAAA,EAAA,EAAA,EACzB,YAAWT,EAAK,MAAC,IACjB,8BAAcC,EAAI,OAAA,GAClB,8BAAcA,EAAI,OAAA,EAAA,GAEnBsB,EAAAA,mBAUM,MAAA,CAVA,MAAQC,EAAAA,eAAA,CAAAF,EAAAA,MAAAf,CAAA,EAAG,iBAAkBP,EAAU,UAAA,CAAA,CAAA,GAC3CyB,aAQOC,EARA,OAAA,UAAA,CAAA,KAAM1B,EAAA,OAAb,IAQO,CANU,OAAAA,EAAA,MAAM,UAAQ,0BAD7BkB,EAAA,YAGYI,QAAAK,CAAA,EAAA,OADT,SAAU3B,EAAK,MAAC,+CAEnB4B,EAAAA,mBAEWC,EAAA,SAAA,CAAA,IAAA,GAAA,CADNC,EAAAA,gBAAAC,EAAAA,gBAAA/B,EAAA,MAAM,OAAO,EAAA,CAAA,sBAfd,CAAAgC,EAAA,MAAAhC,EAAA,MAAM,OAAO"}