UNPKG

st-common-ui-vue3

Version:

小尾巴通用 Vue3 UI 组件库

2 lines (1 loc) 1.67 kB
"use strict";const r=require("vue"),a=require("../../node_modules/.pnpm/st-common-ui-utils@0.1.1/node_modules/st-common-ui-utils/es/utils/el-size-util.js"),f=require("../../node_modules/.pnpm/@vueuse_core@12.0.0_typescript@5.6.2/node_modules/@vueuse/core/index.js"),d=r.defineComponent({name:"StCapturePointerContainer",__name:"StCapturePointerContainer",props:{width:{default:"100%"},height:{default:"100%"},captureOnPointerEnter:{type:Boolean,default:!1},captureOnPointerLeave:{type:Boolean,default:!1},captureOnPointerDown:{type:Boolean,default:!1},captureOnPointerUp:{type:Boolean,default:!1},captureOnPointerMove:{type:Boolean,default:!1},captureOnPointerOver:{type:Boolean,default:!1},captureOnPointerOut:{type:Boolean,default:!1}},emits:["handlePointerEvent"],setup(O,{emit:l}){const u=l,i=r.ref(null),{left:p,top:s}=f.useElementBounding(i),o=n=>{const e=i.value,t=n.clientX-p.value,P=n.clientY-s.value;u("handlePointerEvent",t,P,e,n)};return(n,e)=>(r.openBlock(),r.createElementBlock("div",{ref_key:"stCapturePointerContainerRef",ref:i,class:"st-capture-pointer-container",style:r.normalizeStyle({width:r.unref(a).elSizePreHandler(n.width),height:r.unref(a).elSizePreHandler(n.height)}),onPointerenter:e[0]||(e[0]=t=>n.captureOnPointerEnter&&o(t)),onPointerleave:e[1]||(e[1]=t=>n.captureOnPointerLeave&&o(t)),onPointerdown:e[2]||(e[2]=t=>n.captureOnPointerDown&&o(t)),onPointerup:e[3]||(e[3]=t=>n.captureOnPointerUp&&o(t)),onPointermove:e[4]||(e[4]=t=>n.captureOnPointerMove&&o(t)),onPointerover:e[5]||(e[5]=t=>n.captureOnPointerOver&&o(t)),onPointerout:e[6]||(e[6]=t=>n.captureOnPointerOut&&o(t))},[r.renderSlot(n.$slots,"default")],36))}});module.exports=d;