UNPKG

primereact

Version:

A rich set of premium UI Components for React.

4 lines (2 loc) 1.61 kB
'use client'; import{Component as P,withComponent as v}from"@primereact/core/component";import{useMotion as d}from"@primereact/core/motion";import{OverlayEventBus as f}from"@primereact/core/utils";import{mergeProps as R}from"@primeuix/utils";import{VisuallyHidden as u}from"primereact/visuallyhidden";import*as t from"react";import{createOptionalContext as c}from"@primereact/core/utils";var[x,m]=c();var a={as:"div",motionProps:void 0};var k=v({name:"Popover.Popup",defaultProps:a,setup({props:r}){let o=m(),n=!!o?.state?.trapped,e=d({cssVarPrefix:"px-popover-popup",...r.motionProps,appear:!0,elementRef:o?.state.popupElement,visible:!!o?.state?.open,onAfterEnter:p=>{r.motionProps?.onAfterEnter?.(p),o?.onOpenComplete?.()},onAfterLeave:p=>{r.motionProps?.onAfterLeave?.(p),o?.setRendered?.(!1),o?.onCloseComplete?.()}});return{popover:o,motion:e,isTrapped:n}},render(r){let{props:o,ptmi:n,popover:e,motion:p,isTrapped:s}=r,l=R(e?.popupProps,{className:e?.cx("popup"),onPointerDownCapture:i=>{f.emit("overlay-click",{originalEvent:i,target:e?.elementRef?.current??null})},onMouseDownCapture:i=>{f.emit("overlay-click",{originalEvent:i,target:e?.elementRef?.current??null})}},e?.ptm("popup"),n("root"),p?.rootProps);return t.createElement(t.Fragment,null,s&&t.createElement(u,{focusable:!0,ref:e?.focusTrap?.firstHiddenElementRef,...e?.focusTrap?.firstHiddenProps}),t.createElement(P,{instance:r,attrs:l,children:o.children,ref:e?.setPopupRef}),s&&t.createElement(u,{focusable:!0,ref:e?.focusTrap?.lastHiddenElementRef,...e?.focusTrap?.lastHiddenProps}))}});export{k as PopoverPopup,a as defaultPopupProps};