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