Файловый менеджер - Редактировать - /home/ephorei/www/wp-content/plugins/astra-sites/inc/lib/ai-builder/inc/assets/src/components/dropdown.js
Назад
import { Menu, Transition } from '@headlessui/react'; import { Fragment } from '@wordpress/element'; import usePopper from '../hooks/use-popper'; const Dropdown = ( { placement = 'right', width = 'w-48', contentClassName = 'py-1 bg-white', trigger, offset = [ 0, 0 ], children, disabled = false, mainClassName = '', } ) => { let placementValue = 'bottom-end'; switch ( placement ) { case 'left': placementValue = 'bottom-start'; break; case 'right': placementValue = 'bottom-end'; break; case 'top-start': placementValue = 'top-start'; break; default: placementValue = 'bottom-end'; } const [ triggerPopper, container ] = usePopper( { placement: placementValue, strategy: 'fixed', modifiers: [ { name: 'offset', options: { offset } } ], } ); switch ( width?.toString() ) { case '48': width = 'w-48'; break; case '60': width = 'w-60'; break; case '72.5': width = 'w-[18.25rem]'; break; case '80': width = 'w-80'; break; default: width = !! width ? width : 'w-48'; } return ( <Menu as="div" className={ `relative ${ mainClassName }` }> { ( { open } ) => ( <> <Menu.Button ref={ triggerPopper } as={ Fragment } disabled={ disabled } > { trigger } </Menu.Button> <div ref={ container } className="z-50"> <Transition show={ open } as={ Fragment } enter="transition ease-out duration-200" enterFrom="transform opacity-0 scale-95" enterTo="transform opacity-100 scale-100" leave="transition ease-in duration-75" leaveFrom="transform opacity-100 scale-100" leaveTo="transform opacity-0 scale-95" > <div className={ `my-2 ${ width } rounded-md shadow-lg` } > <Menu.Items className={ `rounded-md focus:outline-none ring-1 ring-black ring-opacity-5 ${ contentClassName }` } > { children } </Menu.Items> </div> </Transition> </div> </> ) } </Menu> ); }; Dropdown.Item = Menu.Item; export default Dropdown;
| ver. 1.4 |
Github
|
.
| PHP 8.0.30 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка