UNPKG

@alifd/next

Version:

A configurable component library for web built on React.

272 lines (271 loc) 6.09 kB
import type { ElementType, HTMLAttributes, ReactNode } from 'react'; import type { CommonProps } from '../util'; type HTMLAttributesWeak = Omit<HTMLAttributes<HTMLElement>, 'title'>; /** * @api Card * @order 0 */ export interface CardProps extends HTMLAttributesWeak, CommonProps { /** * 设置类名前缀 * @en The prefix of class * @defaultValue 'next-' * @skip */ prefix?: string; /** * 卡片的上的图片 / 视频 * @en Media content */ media?: ReactNode; /** * 卡片的标题 * @en Title of card */ title?: ReactNode; /** * 卡片的副标题 * @en Sub title of card */ subTitle?: ReactNode; /** * 卡片操作组,位置在卡片底部 * @en Actions of card */ actions?: ReactNode; /** * 是否显示标题的项目符号 * @en If show title bullet * @defaultValue true */ showTitleBullet?: boolean; /** * 是否显示标题的项目符号 * @en If show title bullet * @deprecated Use showTitleBullet * @skip */ titlePrefixLine?: boolean; /** * 是否展示头部的分隔线 * @en If show head divider * @defaultValue true */ showHeadDivider?: boolean; /** * 是否展示头部的分隔线 * @en If show head divider * @deprecated Use showHeadDivider * @skip */ titleBottomLine?: boolean; /** * 内容区域的固定高度 * @en Height of content * @defaultValue 120 */ contentHeight?: string | number; /** * 内容区域的固定高度 * @en Height of content * @deprecated Use contentHeight * @skip */ bodyHeight?: string | number; /** * 标题区域的用户自定义内容 * @en Extra of card header */ extra?: ReactNode; /** * 是否开启自由模式,开启后 card 将使用子组件配合使用,设置此项后 title, subtitle, 等等属性都将失效 * @en Whether to open free mode, if opened, can not set title subTitle ..., must use Card.Header Card.Content ... to set Card * @defaultValue false */ free?: boolean; /** * 是否带边框 * @en Whether to show border * @defaultValue true * @version 1.24 */ hasBorder?: boolean; } /** * @api Card.Media * @order 1 */ export interface CardMediaProps extends HTMLAttributesWeak, CommonProps { /** * 设置类名前缀 * @en The prefix of class * @defaultValue 'next-' * @skip */ prefix?: string; /** * 设置样式 * @en The style of component * @defaultValue \{\} * @skip */ style?: React.CSSProperties; /** * 设置标签类型 * @en The html tag to be rendered * @defaultValue 'div' */ component?: ElementType; /** * 背景图片地址 * @en Media background image */ image?: string; /** * 媒体源文件地址 * @en Media source URL */ src?: string; } /** * @api Card.Header * @order 2 */ export interface CardHeaderProps extends HTMLAttributesWeak, CommonProps { /** * 设置类名前缀 * @en The prefix of class * @defaultValue 'next-' * @skip */ prefix?: string; /** * 卡片的标题 * @en Title of card */ title?: ReactNode; /** * 卡片的副标题 * @en Sub Title of Card */ subTitle?: ReactNode; /** * 标题区域的用户自定义内容 * @en Extra of card header */ extra?: ReactNode; /** * 设置标签类型 * @en The html tag to be rendered * @defaultValue 'div' */ component?: ElementType; } /** * @api Card.Content * @order 3 */ export interface CardContentProps extends HTMLAttributesWeak, CommonProps { /** * 设置类名前缀 * @en The prefix of class * @defaultValue 'next-' * @skip */ prefix?: string; /** * 设置标签类型 * @en The html tag to be rendered * @defaultValue 'div' */ component?: ElementType; } /** * @api Card.Divider * @order 4 */ export interface CardDividerProps extends HTMLAttributesWeak, CommonProps { /** * 设置类名前缀 * @en The prefix of class * @defaultValue 'next-' * @skip */ prefix?: string; /** * 设置标签类型 * @en The html tag to be rendered * @defaultValue 'hr' */ component?: ElementType; /** * 分割线是否向内缩进 * @en inset */ inset?: boolean; } /** * @api Card.Actions * @order 5 */ export interface CardActionsProps extends HTMLAttributesWeak, CommonProps { /** * 设置类名前缀 * @en The prefix of class * @defaultValue 'next-' * @skip */ prefix?: string; /** * 设置标签类型 * @en The html tag to be rendered * @defaultValue 'div' */ component?: ElementType; } export interface CardBulletHeaderProps extends HTMLAttributesWeak, CommonProps { /** * 设置类名前缀 * @en The prefix of class * @defaultValue 'next-' * @skip */ prefix?: string; /** * 卡片的标题 */ title?: ReactNode; /** * 卡片的副标题 */ subTitle?: ReactNode; /** * 是否显示标题的项目符号 */ showTitleBullet?: boolean; /** * 标题区域的用户自定义内容 */ extra?: ReactNode; } export interface CardCollapseContentProps extends HTMLAttributesWeak, CommonProps { /** * 设置类名前缀 * @en The prefix of class * @defaultValue 'next-' * @skip */ prefix?: string; /** * 设置内容区域的固定高度 * @en Height of content * @defaultValue 120 */ contentHeight?: string | number; } /** * typo of CardCollapseContentProps * @deprecated use CardCollapseContentProps instead */ export type CardCollaspeContentProps = CardCollapseContentProps; export {};