mirror of
https://gitee.com/ant-design/ant-design.git
synced 2024-12-14 08:51:26 +08:00
a05b9d92c5
* feat: add FloatButton * feat: add FloatButton * feat: FloatButton * feat: FloatButton * fix: fix * feat: FloatButton * feat: FloatButton * feat: FloatButton * feat: FloatButton * feat: FloatButton * fix: add groupShape * feat: mergeShape * fix: fix * fix: fix style * fix: style fix * fix: fix * fix: style fix * fix: fix * fix: fix * fix: fix * fix: fix style * fix: fix style * fix: fix style * fix: style fix * feat: back-top * fix: style bug fix * fix: fix erroe * fix: add tiggerElement * fix: add tiggerElement * fix: add tiggerElement * fix: add tiggerElement * feat: add useMemo * docs: add docs * fix: bugFix * fix: bugFix * fix: bugfix * fix: style fix * fix: bugfix * test: add test case * fix: style fix * fix: style fix * fix: fix style * fix: fix style * fix: fix trigger action * fix: fix style * feat: add demo * fix: add demo * feat: add docs * fix: style ifx * feat: update maxSize of bundlesize * feat: add animation for group * fix: fix * fix: fix style * fix: fix test case * fix: fix test case * fix: fix type * fix: fix type * fix: update bundlesize * fix: fix * fix: fix style * fix: fix style * fix: updata snap * fix: fix CI * fix: fix style * fix: rename float button motion * fix: fix style * fix: bugFix * fix: fix style * fix: bugFix * fix: update docs * refactor: float button trigger * test: fix test case & update snapshot * fix: delete rest * docs: update demo * test: update snapshot * fix: fix eslint error * test: update snapshot * style: update icon fontSize to 18 * fix: fix style * fix: style fix * fix: test case fix * test: add test case * fix: style fix * test: update snap * fix: style fix * fix: style fix * fix: style fix * docs: demo update * fix: style fix * docs: update demo * test: update snapshot Co-authored-by: 黑雨 <wangning4567@163.com> Co-authored-by: MadCcc <1075746765@qq.com>
64 lines
1.9 KiB
TypeScript
64 lines
1.9 KiB
TypeScript
import type React from 'react';
|
|
import type Group from './FloatButtonGroup';
|
|
import type BackTop from './BackTop';
|
|
import type { TooltipProps } from '../tooltip';
|
|
|
|
export type FloatButtonType = 'default' | 'primary';
|
|
|
|
export type FloatButtonShape = 'circle' | 'square';
|
|
|
|
export type FloatButtonGroupTrigger = 'click' | 'hover';
|
|
|
|
export interface FloatButtonProps {
|
|
prefixCls?: string;
|
|
className?: string;
|
|
style?: React.CSSProperties;
|
|
icon?: React.ReactNode;
|
|
description?: React.ReactNode;
|
|
type?: FloatButtonType;
|
|
shape?: FloatButtonShape;
|
|
tooltip?: TooltipProps['title'];
|
|
href?: string;
|
|
target?: React.HTMLAttributeAnchorTarget;
|
|
onClick?: React.MouseEventHandler<HTMLElement>;
|
|
}
|
|
|
|
export interface FloatButtonContentProps extends React.DOMAttributes<HTMLDivElement> {
|
|
className?: string;
|
|
icon?: FloatButtonProps['icon'];
|
|
description?: FloatButtonProps['description'];
|
|
prefixCls: FloatButtonProps['prefixCls'];
|
|
}
|
|
|
|
export interface FloatButtonGroupProps extends FloatButtonProps {
|
|
// 包含的 Float Button
|
|
children: React.ReactNode;
|
|
// 触发方式 (有触发方式为菜单模式)
|
|
trigger?: FloatButtonGroupTrigger;
|
|
// 受控展开
|
|
open?: boolean;
|
|
// 关闭按钮自定义图标
|
|
closeIcon?: React.ReactNode;
|
|
// 展开收起的回调
|
|
onOpenChange?: (open: boolean) => void;
|
|
}
|
|
|
|
export interface BackTopProps extends Omit<FloatButtonProps, 'target'> {
|
|
visibilityHeight?: number;
|
|
onClick?: React.MouseEventHandler<HTMLDivElement>;
|
|
target?: () => HTMLElement | Window | Document;
|
|
prefixCls?: string;
|
|
children?: React.ReactNode;
|
|
className?: string;
|
|
style?: React.CSSProperties;
|
|
duration?: number;
|
|
visible?: boolean; // Only for test. Don't use it.
|
|
}
|
|
|
|
export type CompoundedComponent = React.ForwardRefExoticComponent<
|
|
FloatButtonProps & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement>
|
|
> & {
|
|
Group: typeof Group;
|
|
BackTop: typeof BackTop;
|
|
};
|