UNPKG

ivt

Version:

Ivt Components Library

3 lines (2 loc) 5.78 kB
import{c as e}from"./utils-B4HRExF_.mjs";import*as o from"react";import r from"react";import{u as t,c as n,P as a}from"./index-BgU_7G37.mjs";import{c as s}from"./index-BXKQJZ6z.mjs";import{P as i,D as c}from"./index-DX37fts-.mjs";import{h as d,R as p,u,F as l}from"./index-CDzNhFWE.mjs";import{u as f}from"./index-BclYsZHn.mjs";import{c as m,R as v,A as h,C as g,a as P}from"./index-DN2GfLYB.mjs";import{P as C}from"./index-Bj6b6xW8.mjs";import{createSlot as O}from"@radix-ui/react-slot";import{u as w}from"./index-CJw5YZXp.mjs";import{jsx as x}from"react/jsx-runtime";var R="Popover",[b,_]=s(R,[m]),A=m(),[F,y]=b(R),E=e=>{const{__scopePopover:r,children:t,open:n,defaultOpen:a,onOpenChange:s,modal:i=!1}=e,c=A(r),d=o.useRef(null),[p,u]=o.useState(!1),[l,m]=w({prop:n,defaultProp:a??!1,onChange:s,caller:R});return x(v,{...c,children:x(F,{scope:r,contentId:f(),triggerRef:d,open:l,onOpenChange:m,onOpenToggle:o.useCallback((()=>m((e=>!e))),[m]),hasCustomAnchor:p,onCustomAnchorAdd:o.useCallback((()=>u(!0)),[]),onCustomAnchorRemove:o.useCallback((()=>u(!1)),[]),modal:i,children:t})})};E.displayName=R;var D="PopoverAnchor",j=o.forwardRef(((e,r)=>{const{__scopePopover:t,...n}=e,a=y(D,t),s=A(t),{onCustomAnchorAdd:i,onCustomAnchorRemove:c}=a;return o.useEffect((()=>(i(),()=>c())),[i,c]),x(h,{...s,...n,ref:r})}));j.displayName=D;var k="PopoverTrigger",N=o.forwardRef(((e,o)=>{const{__scopePopover:r,...a}=e,s=y(k,r),i=A(r),c=t(o,s.triggerRef),d=x(C.button,{type:"button","aria-haspopup":"dialog","aria-expanded":s.open,"aria-controls":s.contentId,"data-state":H(s.open),...a,ref:c,onClick:n(e.onClick,s.onOpenToggle)});return s.hasCustomAnchor?d:x(h,{asChild:!0,...i,children:d})}));N.displayName=k;var I="PopoverPortal",[M,z]=b(I,{forceMount:void 0}),K=e=>{const{__scopePopover:o,forceMount:r,children:t,container:n}=e,s=y(I,o);return x(M,{scope:o,forceMount:r,children:x(a,{present:r||s.open,children:x(i,{asChild:!0,container:n,children:t})})})};K.displayName=I;var T="PopoverContent",S=o.forwardRef(((e,o)=>{const r=z(T,e.__scopePopover),{forceMount:t=r.forceMount,...n}=e,s=y(T,e.__scopePopover);return x(a,{present:t||s.open,children:s.modal?x(Z,{...n,ref:o}):x(q,{...n,ref:o})})}));S.displayName=T;var U=O("PopoverContent.RemoveScroll"),Z=o.forwardRef(((e,r)=>{const a=y(T,e.__scopePopover),s=o.useRef(null),i=t(r,s),c=o.useRef(!1);return o.useEffect((()=>{const e=s.current;if(e)return d(e)}),[]),x(p,{as:U,allowPinchZoom:!0,children:x(B,{...e,ref:i,trapFocus:a.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:n(e.onCloseAutoFocus,(e=>{e.preventDefault(),c.current||a.triggerRef.current?.focus()})),onPointerDownOutside:n(e.onPointerDownOutside,(e=>{const o=e.detail.originalEvent,r=0===o.button&&!0===o.ctrlKey,t=2===o.button||r;c.current=t}),{checkForDefaultPrevented:!1}),onFocusOutside:n(e.onFocusOutside,(e=>e.preventDefault()),{checkForDefaultPrevented:!1})})})})),q=o.forwardRef(((e,r)=>{const t=y(T,e.__scopePopover),n=o.useRef(!1),a=o.useRef(!1);return x(B,{...e,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:o=>{e.onCloseAutoFocus?.(o),o.defaultPrevented||(n.current||t.triggerRef.current?.focus(),o.preventDefault()),n.current=!1,a.current=!1},onInteractOutside:o=>{e.onInteractOutside?.(o),o.defaultPrevented||(n.current=!0,"pointerdown"===o.detail.originalEvent.type&&(a.current=!0));const r=o.target,s=t.triggerRef.current?.contains(r);s&&o.preventDefault(),"focusin"===o.detail.originalEvent.type&&a.current&&o.preventDefault()}})})),B=o.forwardRef(((e,o)=>{const{__scopePopover:r,trapFocus:t,onOpenAutoFocus:n,onCloseAutoFocus:a,disableOutsidePointerEvents:s,onEscapeKeyDown:i,onPointerDownOutside:d,onFocusOutside:p,onInteractOutside:f,...m}=e,v=y(T,r),h=A(r);return u(),x(l,{asChild:!0,loop:!0,trapped:t,onMountAutoFocus:n,onUnmountAutoFocus:a,children:x(c,{asChild:!0,disableOutsidePointerEvents:s,onInteractOutside:f,onEscapeKeyDown:i,onPointerDownOutside:d,onFocusOutside:p,onDismiss:()=>v.onOpenChange(!1),children:x(g,{"data-state":H(v.open),role:"dialog",id:v.contentId,...h,...m,ref:o,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})})),G="PopoverClose";o.forwardRef(((e,o)=>{const{__scopePopover:r,...t}=e,a=y(G,r);return x(C.button,{type:"button",...t,ref:o,onClick:n(e.onClick,(()=>a.onOpenChange(!1)))})})).displayName=G;function H(e){return e?"open":"closed"}o.forwardRef(((e,o)=>{const{__scopePopover:r,...t}=e,n=A(r);return x(P,{...n,...t,ref:o})})).displayName="PopoverArrow";var J=E,L=j,Q=N,V=K,W=S;function X({...e}){return r.createElement(J,{"data-slot":"popover",...e})}function Y({...e}){return r.createElement(Q,{"data-slot":"popover-trigger",...e})}function $({className:o,align:t="center",sideOffset:n=4,...a}){return r.createElement(V,null,r.createElement(W,{"data-slot":"popover-content",align:t,sideOffset:n,className:e("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 cursor-pointer rounded-md border p-4 shadow-md outline-none",o),...a}))}function ee({...e}){return r.createElement(L,{"data-slot":"popover-anchor",...e})}export{X as P,Y as a,$ as b,ee as c}; //# sourceMappingURL=popover-C1cJBw3j.mjs.map