@razorpay/blade
Version:
The Design System that powers Razorpay
14 lines (11 loc) • 2.81 kB
JavaScript
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
import 'react';
import { useDropdown } from './useDropdown.js';
import { dropdownComponentIds } from './dropdownComponentIds.js';
import BaseButton from '../Button/BaseButton/BaseButton.js';
import { getActionListContainerRole } from '../ActionList/getA11yRoles.js';
import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
import { jsx } from 'react/jsx-runtime';
var _excluded=["children","icon","iconPosition","isDisabled","isFullWidth","isLoading","onClick","onBlur","onKeyDown","size","type","variant","accessibilityLabel","testID"];var _DropdownButton=function _DropdownButton(_ref){var children=_ref.children,icon=_ref.icon,_ref$iconPosition=_ref.iconPosition,iconPosition=_ref$iconPosition===void 0?'left':_ref$iconPosition,_ref$isDisabled=_ref.isDisabled,isDisabled=_ref$isDisabled===void 0?false:_ref$isDisabled,_ref$isFullWidth=_ref.isFullWidth,isFullWidth=_ref$isFullWidth===void 0?false:_ref$isFullWidth,_ref$isLoading=_ref.isLoading,isLoading=_ref$isLoading===void 0?false:_ref$isLoading,_onClick=_ref.onClick,_onBlur=_ref.onBlur,_onKeyDown=_ref.onKeyDown,_ref$size=_ref.size,size=_ref$size===void 0?'medium':_ref$size,_ref$type=_ref.type,type=_ref$type===void 0?'button':_ref$type,_ref$variant=_ref.variant,variant=_ref$variant===void 0?'primary':_ref$variant,accessibilityLabel=_ref.accessibilityLabel,testID=_ref.testID,rest=_objectWithoutProperties(_ref,_excluded);var _useDropdown=useDropdown(),onTriggerClick=_useDropdown.onTriggerClick,onTriggerKeydown=_useDropdown.onTriggerKeydown,dropdownBaseId=_useDropdown.dropdownBaseId,isOpen=_useDropdown.isOpen,activeIndex=_useDropdown.activeIndex,hasFooterAction=_useDropdown.hasFooterAction,triggererRef=_useDropdown.triggererRef;return jsx(BaseButton,Object.assign({},rest,icon?{icon:icon,children:children}:{children:children},{iconPosition:iconPosition,isDisabled:isDisabled,isFullWidth:isFullWidth,isLoading:isLoading,size:size,type:type,variant:variant,testID:testID,ref:triggererRef,accessibilityProps:{label:accessibilityLabel,hasPopup:getActionListContainerRole(hasFooterAction,'DropdownButton'),expanded:isOpen,controls:`${dropdownBaseId}-actionlist`,activeDescendant:activeIndex>=0?`${dropdownBaseId}-${activeIndex}`:undefined},onClick:function onClick(e){onTriggerClick();_onClick==null?void 0:_onClick(e);},onBlur:function onBlur(e){_onBlur==null?void 0:_onBlur(e);},onKeyDown:function onKeyDown(e){onTriggerKeydown==null?void 0:onTriggerKeydown({event:e});_onKeyDown==null?void 0:_onKeyDown(e);}}));};var DropdownButton=assignWithoutSideEffects(_DropdownButton,{componentId:dropdownComponentIds.triggers.DropdownButton});
export { DropdownButton };
//# sourceMappingURL=DropdownButton.js.map