import * as React from 'react'; import Button from '../button'; import { ButtonHTMLType } from '../button/button'; import { ButtonGroupProps } from '../button/button-group'; import Dropdown, { DropDownProps } from './dropdown'; import classNames from 'classnames'; const ButtonGroup = Button.Group; export interface DropdownButtonProps extends ButtonGroupProps, DropDownProps { type?: 'primary' | 'ghost' | 'dashed'; htmlType?: ButtonHTMLType; disabled?: boolean; onClick?: React.MouseEventHandler; children?: any; } export default class DropdownButton extends React.Component { static defaultProps = { placement: 'bottomRight', type: 'default', prefixCls: 'ant-dropdown-button', }; render() { const { type, disabled, onClick, htmlType, children, prefixCls, className, overlay, trigger, align, visible, onVisibleChange, placement, getPopupContainer, ...restProps } = this.props; const dropdownProps = { align, overlay, disabled, trigger: disabled ? [] : trigger, onVisibleChange, placement, getPopupContainer, } as DropDownProps; if ('visible' in this.props) { dropdownProps.visible = visible; } return (