primereact
Version:
A rich set of premium UI Components for React.
4 lines (2 loc) • 1.35 kB
JavaScript
'use client';
import{Component as c,withComponent as f}from"@primereact/core/component";import{useMotion as P}from"@primereact/core/motion";import{OverlayEventBus as i}from"@primereact/core/utils";import{mergeProps as d}from"@primeuix/utils";import{FocusTrap as v}from"primereact/focustrap";import*as p from"react";import{createOptionalContext as l}from"@primereact/core/utils";var[R,m]=l();var s={as:"div",motionProps:void 0};var F=f({name:"AutoComplete.Popup",defaultProps:s,setup({props:t}){let o=m(),e=P({cssVarPrefix:"px-autocomplete-popup",...t.motionProps,elementRef:o?.state.popupElement,visible:!!o?.state?.opened,onAfterLeave:r=>{t.motionProps?.onAfterLeave?.(r),o?.setRendered?.(!1)}});return{autocomplete:o,motion:e}},render(t){let{props:o,autocomplete:e,ptmi:r,motion:a}=t,u=d(e?.popupProps,{className:e?.cx("popup"),onPointerDownCapture:n=>{i.emit("overlay-click",{originalEvent:n,target:e?.elementRef?.current??null})},onMouseDownCapture:n=>{i.emit("overlay-click",{originalEvent:n,target:e?.elementRef?.current??null})}},e?.ptm("popup"),r("root"),a?.rootProps);return p.createElement(v,{as:p.Fragment,trapped:e?.state.opened,autoFocus:!1,onEscape:()=>e?.hide?.(),onTabFirst:()=>e?.focus?.(),onTabLast:()=>e?.focus?.()},p.createElement(c,{instance:t,attrs:u,children:o.children}))}});export{F as AutoCompletePopup,s as defaultPopupProps};