Dm2fZK57.js
2.55 KB
import{T as U,U as V,V as $,X as b,W as j,aW as x,o as l,k as u,w as s,g as t,Y as z,x as m,n as v,ag as d,ah as i,f as y,aY as E,S as C,bb as F,s as g,aL as P,aM as B,a0 as O}from"./BtEn9SvP.js";import{H as T,P as W}from"./DYcig7R4.js";import{p as Y}from"./3laQJA1P.js";const G={slots:{content:"bg-default shadow-lg rounded-md ring ring-default data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-popover-content-transform-origin) focus:outline-none pointer-events-auto",arrow:"fill-bg stroke-default"}},M={__name:"UPopover",props:{mode:{type:null,required:!1,default:"click"},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},reference:{type:null,required:!1},dismissible:{type:Boolean,required:!1,default:!0},class:{type:null,required:!1},ui:{type:null,required:!1},defaultOpen:{type:Boolean,required:!1},open:{type:Boolean,required:!1},modal:{type:Boolean,required:!1},openDelay:{type:Number,required:!1,default:0},closeDelay:{type:Number,required:!1,default:0}},emits:["close:prevent","update:open"],setup(r,{emit:_}){const e=r,w=_,c=U(),D=V(),h=$("popover",e),A=e.mode==="hover"?b(e,"defaultOpen","open","openDelay","closeDelay"):b(e,"defaultOpen","open","modal"),N=j(A,w),R=x(P(()=>e.portal)),k=P(()=>B(e.content,{side:"bottom",sideOffset:8,collisionPadding:8})),S=g(()=>e.dismissible?{pointerDownOutside:Y}:["interactOutside","escapeKeyDown"].reduce((p,f)=>(p[f]=o=>{o.preventDefault(),w("close:prevent")},p),{})),H=P(()=>B(e.arrow,{rounded:!0})),q=g(()=>O({extend:O(G),...D.ui?.popover||{}})({side:k.value.side})),a=g(()=>e.mode==="hover"?T:W);return(n,p)=>(l(),u(t(a).Root,d(i(t(N))),{default:s(({open:f,close:o})=>[c.default||r.reference?(l(),u(t(a).Trigger,{key:0,"as-child":"",reference:r.reference,class:z(e.class)},{default:s(()=>[m(n.$slots,"default",{open:f})]),_:2},1032,["reference","class"])):v("",!0),"Anchor"in a.value&&c.anchor?(l(),u(t(a).Anchor,{key:1,"as-child":""},{default:s(()=>[m(n.$slots,"anchor",d(i(o?{close:o}:{})))]),_:2},1024)):v("",!0),y(t(a).Portal,d(i(t(R))),{default:s(()=>[y(t(E),null,{default:s(()=>[y(t(a).Content,C(k.value,{"data-slot":"content",class:q.value.content({class:[!c.default&&e.class,t(h)?.content]})},F(S.value)),{default:s(()=>[m(n.$slots,"content",d(i(o?{close:o}:{}))),r.arrow?(l(),u(t(a).Arrow,C({key:0},H.value,{"data-slot":"arrow",class:q.value.arrow({class:t(h)?.arrow})}),null,16,["class"])):v("",!0)]),_:2},1040,["class"])]),_:2},1024)]),_:2},1040)]),_:3},16))}};export{M as _};