{"version":3,"file":"props.cjs","sources":["../../../../../../packages/components/dropdown/src/props.ts"],"sourcesContent":["import type { MouseEventHandler } from '@antdv/types';\n\nimport type { CSSProperties, ExtractPropTypes, PropType } from 'vue';\n\nimport type { MenuProps } from '../../menu';\nimport type { Align, DropdownArrowOptions, Trigger } from './interface';\nimport { booleanType, eventType, objectType, PropTypes, someType } from '@antdv/utils';\nimport { buttonProps } from '../../button';\n\nexport function dropdownProps() {\n  return {\n    'arrow': someType<boolean | DropdownArrowOptions>([Boolean, Object]),\n    'trigger': {\n      type: [Array, String] as PropType<Trigger[] | Trigger>,\n    },\n    'menu': objectType<MenuProps>(),\n    'overlay': PropTypes.any,\n    /** @deprecated Please use `open` instead */\n    'visible': booleanType(),\n    'open': booleanType(),\n    'disabled': booleanType(),\n    'danger': booleanType(),\n    'autofocus': booleanType(),\n    'align': objectType<Align>(),\n    'getPopupContainer': Function as PropType<(triggerNode: HTMLElement) => HTMLElement>,\n    'prefixCls': String,\n    'transitionName': String,\n    'placement': String as PropType<\n    | 'topLeft'\n    | 'topCenter'\n    | 'top'\n    | 'topRight'\n    | 'bottomLeft'\n    | 'bottomCenter'\n    | 'bottom'\n    | 'bottomRight'\n    >,\n    'overlayClassName': String,\n    'overlayStyle': objectType<CSSProperties>(),\n    'forceRender': booleanType(),\n    'mouseEnterDelay': Number,\n    'mouseLeaveDelay': Number,\n    'openClassName': String,\n    'minOverlayWidthMatchTrigger': booleanType(),\n    'destroyPopupOnHide': booleanType(),\n    /** @deprecated Please use `onOpenChange` instead */\n    'onVisibleChange': {\n      type: Function as PropType<(val: boolean) => void>,\n    },\n    /** @deprecated Please use `onUpdate:open` instead */\n    'onUpdate:visible': {\n      type: Function as PropType<(val: boolean) => void>,\n    },\n    'onOpenChange': {\n      type: Function as PropType<(val: boolean) => void>,\n    },\n    'onUpdate:open': {\n      type: Function as PropType<(val: boolean) => void>,\n    },\n  };\n}\n\nconst buttonTypesProps = buttonProps();\nexport function dropdownButtonProps() {\n  return {\n    ...dropdownProps(),\n    type: buttonTypesProps.type,\n    size: String as PropType<'small' | 'large'>,\n    htmlType: buttonTypesProps.htmlType,\n    href: String,\n    disabled: booleanType(),\n    prefixCls: String,\n    icon: PropTypes.any,\n    title: String,\n    loading: buttonTypesProps.loading,\n    onClick: eventType<MouseEventHandler>(),\n  };\n}\n\nexport function innerDropdownProps() {\n  return {\n    minOverlayWidthMatchTrigger: { type: Boolean, default: undefined },\n    arrow: { type: Boolean, default: false },\n    prefixCls: PropTypes.string.def('rc-dropdown'),\n    transitionName: String,\n    overlayClassName: PropTypes.string.def(''),\n    openClassName: String,\n    animation: PropTypes.any,\n    align: PropTypes.object,\n    overlayStyle: { type: Object as PropType<CSSProperties>, default: () => ({} as CSSProperties) },\n    placement: PropTypes.string.def('bottomLeft'),\n    overlay: PropTypes.any,\n    trigger: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]).def(\n      'hover',\n    ),\n    alignPoint: { type: Boolean, default: undefined },\n    showAction: PropTypes.array,\n    hideAction: PropTypes.array,\n    getPopupContainer: Function,\n    visible: { type: Boolean, default: undefined },\n    defaultVisible: { type: Boolean, default: false },\n    mouseEnterDelay: PropTypes.number.def(0.15),\n    mouseLeaveDelay: PropTypes.number.def(0.1),\n  };\n}\n\nexport type DropdownProps = Partial<ExtractPropTypes<ReturnType<typeof dropdownProps>>>;\n\nexport type DropdownButtonProps = Partial<ExtractPropTypes<ReturnType<typeof dropdownButtonProps>>>;\n"],"names":["someType","objectType","PropTypes","booleanType","buttonProps","eventType"],"mappings":"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"}