From 899950fbfabff7244bfb685568dc4a8490654cf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=B0=8F=E8=81=AA?= Date: Fri, 22 Mar 2019 21:51:08 +0800 Subject: [PATCH] Components Typings (#3815) * Trend * TopNavHeader * TagSelect * SiderMenu * SettingDrawer * StandardTable * StandardFormRow * SelectLang * Reault * PageHeaderWrapper * PageHeaderWrapper * PageHeader * NumberInfo * NoticeIcon * Login * code style * GlobalHeader Footer * Exception * Ellipsis * EditableLinkGroup * EditableItem * DescriptionList * AvticleList * Update src/components/AvatarList/AvatarItem.d.ts Co-Authored-By: xiaohuoni * Update src/components/Login/index.d.ts Co-Authored-By: xiaohuoni * remove '* as' * Update src/components/AvatarList/index.d.ts Co-Authored-By: xiaohuoni * TagSelect * SiderTheme CollapseType MenuMode * Login --- src/components/ArticleListContent/index.d.ts | 13 ++++++++++ .../Authorized/AuthorizedRoute.d.ts | 2 +- src/components/Authorized/index.d.ts | 2 +- src/components/AvatarList/AvatarItem.d.ts | 13 +++++++--- src/components/AvatarList/index.d.ts | 14 +++++----- src/components/Charts/Bar/index.d.ts | 2 +- src/components/Charts/ChartCard/index.d.ts | 2 +- src/components/Charts/Field/index.d.ts | 2 +- src/components/Charts/Gauge/index.d.ts | 2 +- src/components/Charts/MiniArea/index.d.ts | 2 +- src/components/Charts/MiniBar/index.d.ts | 2 +- src/components/Charts/MiniProgress/index.d.ts | 2 +- src/components/Charts/Pie/index.d.ts | 2 +- src/components/Charts/Radar/index.d.ts | 2 +- src/components/Charts/TagCloud/index.d.ts | 2 +- .../Charts/TimelineChart/index.d.ts | 2 +- src/components/Charts/WaterWave/index.d.ts | 2 +- src/components/CountDown/index.d.ts | 2 +- .../DescriptionList/Description.d.ts | 18 +++++++------ src/components/DescriptionList/index.d.ts | 14 +++++----- src/components/EditableItem/index.d.ts | 7 +++++ src/components/EditableLinkGroup/index.d.ts | 9 +++++++ src/components/Ellipsis/index.d.ts | 10 +++---- src/components/Exception/index.d.ts | 18 +++++++++---- src/components/FooterToolbar/index.d.ts | 7 ++--- src/components/GlobalFooter/index.d.ts | 7 ++--- src/components/GlobalHeader/RightContent.d.ts | 26 +++++++++++++++++++ src/components/GlobalHeader/index.d.ts | 13 ++++++++++ src/components/HeaderDropdown/index.d.ts | 10 ++++--- src/components/HeaderSearch/index.d.ts | 6 ++--- src/components/Login/LoginItem.d.ts | 25 +++++++++++++++--- src/components/Login/LoginTab.d.ts | 10 ++++--- src/components/Login/index.d.ts | 23 +++++++++------- src/components/NoticeIcon/NoticeIconTab.d.ts | 15 +++++++---- src/components/NoticeIcon/index.d.ts | 12 ++++----- src/components/NumberInfo/index.d.ts | 7 ++--- src/components/PageHeader/breadcrumb.d.ts | 6 ++--- src/components/PageHeader/index.d.ts | 17 +++++++----- .../PageHeaderWrapper/GridContent.d.ts | 8 ++++++ src/components/PageHeaderWrapper/index.d.ts | 12 +++++++++ src/components/Result/index.d.ts | 13 +++++----- src/components/SelectLang/index.d.ts | 7 +++++ .../SettingDrawer/BlockCheckbox.d.ts | 9 +++++++ src/components/SettingDrawer/ThemeColor.d.ts | 10 +++++++ src/components/SettingDrawer/index.d.ts | 24 +++++++++++++++++ src/components/SiderMenu/BaseMenu.d.ts | 23 ++++++++++++++++ src/components/SiderMenu/SiderMenu.d.ts | 11 ++++++++ src/components/SiderMenu/index.d.ts | 13 ++++++++++ src/components/StandardFormRow/index.d.ts | 11 ++++++++ src/components/StandardTable/index.d.ts | 19 ++++++++++++++ src/components/TagSelect/TagSelectOption.d.ts | 12 ++++++--- src/components/TagSelect/index.d.ts | 17 ++++++++---- src/components/TopNavHeader/index.d.ts | 25 ++++++++++++++++++ src/components/Trend/index.d.ts | 3 ++- 54 files changed, 429 insertions(+), 118 deletions(-) create mode 100644 src/components/ArticleListContent/index.d.ts create mode 100644 src/components/EditableItem/index.d.ts create mode 100644 src/components/EditableLinkGroup/index.d.ts create mode 100644 src/components/GlobalHeader/RightContent.d.ts create mode 100644 src/components/GlobalHeader/index.d.ts create mode 100644 src/components/PageHeaderWrapper/GridContent.d.ts create mode 100644 src/components/PageHeaderWrapper/index.d.ts create mode 100644 src/components/SelectLang/index.d.ts create mode 100644 src/components/SettingDrawer/BlockCheckbox.d.ts create mode 100644 src/components/SettingDrawer/ThemeColor.d.ts create mode 100644 src/components/SettingDrawer/index.d.ts create mode 100644 src/components/SiderMenu/BaseMenu.d.ts create mode 100644 src/components/SiderMenu/SiderMenu.d.ts create mode 100644 src/components/SiderMenu/index.d.ts create mode 100644 src/components/StandardFormRow/index.d.ts create mode 100644 src/components/StandardTable/index.d.ts create mode 100644 src/components/TopNavHeader/index.d.ts diff --git a/src/components/ArticleListContent/index.d.ts b/src/components/ArticleListContent/index.d.ts new file mode 100644 index 00000000..bb4988a9 --- /dev/null +++ b/src/components/ArticleListContent/index.d.ts @@ -0,0 +1,13 @@ +import React from 'react'; + +export interface ApplicationsProps { + data: { + content?: string; + updatedAt?: any; + avatar?: string; + owner?: string; + href?: string; + }; +} + +export default class ArticleListContent extends React.Component {} diff --git a/src/components/Authorized/AuthorizedRoute.d.ts b/src/components/Authorized/AuthorizedRoute.d.ts index fc780004..f94427da 100644 --- a/src/components/Authorized/AuthorizedRoute.d.ts +++ b/src/components/Authorized/AuthorizedRoute.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; import { RouteProps } from 'react-router'; type authorityFN = (currentAuthority?: string) => boolean; diff --git a/src/components/Authorized/index.d.ts b/src/components/Authorized/index.d.ts index b3e2f56c..72c98587 100644 --- a/src/components/Authorized/index.d.ts +++ b/src/components/Authorized/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; import AuthorizedRoute, { authority } from './AuthorizedRoute'; export type IReactComponent

= | React.StatelessComponent

diff --git a/src/components/AvatarList/AvatarItem.d.ts b/src/components/AvatarList/AvatarItem.d.ts index 5681de77..0e809ab4 100644 --- a/src/components/AvatarList/AvatarItem.d.ts +++ b/src/components/AvatarList/AvatarItem.d.ts @@ -1,10 +1,15 @@ -import * as React from 'react'; -export interface IAvatarItemProps { +import React from 'react'; + +export declare type SizeType = number | 'small' | 'default' | 'large'; + +export interface AvatarItemProps { tips: React.ReactNode; src: string; + size?: SizeType; style?: React.CSSProperties; + onClick?: () => void; } -export default class AvatarItem extends React.Component { - constructor(props: IAvatarItemProps); +export default class AvatarItem extends React.Component { + constructor(props: AvatarItemProps); } diff --git a/src/components/AvatarList/index.d.ts b/src/components/AvatarList/index.d.ts index f49ca010..e454a8be 100644 --- a/src/components/AvatarList/index.d.ts +++ b/src/components/AvatarList/index.d.ts @@ -1,14 +1,14 @@ -import * as React from 'react'; -import AvatarItem from './AvatarItem'; +import React from 'react'; +import AvatarItem, { AvatarItemProps, SizeType } from './AvatarItem'; -export interface IAvatarListProps { - size?: 'large' | 'small' | 'mini' | 'default'; +export interface AvatarListProps { + Item?: React.ReactElement; + size?: SizeType; maxLength?: number; excessItemsStyle?: React.CSSProperties; style?: React.CSSProperties; - children: React.ReactElement | Array>; + children: React.ReactElement | Array>; } - -export default class AvatarList extends React.Component { +export default class AvatarList extends React.Component { public static Item: typeof AvatarItem; } diff --git a/src/components/Charts/Bar/index.d.ts b/src/components/Charts/Bar/index.d.ts index 48990825..67bb1dd0 100644 --- a/src/components/Charts/Bar/index.d.ts +++ b/src/components/Charts/Bar/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface IBarProps { title: React.ReactNode; color?: string; diff --git a/src/components/Charts/ChartCard/index.d.ts b/src/components/Charts/ChartCard/index.d.ts index 0437c0c8..5153f5e0 100644 --- a/src/components/Charts/ChartCard/index.d.ts +++ b/src/components/Charts/ChartCard/index.d.ts @@ -1,5 +1,5 @@ import { CardProps } from 'antd/lib/card'; -import * as React from 'react'; +import React from 'react'; export interface IChartCardProps extends CardProps { title: React.ReactNode; diff --git a/src/components/Charts/Field/index.d.ts b/src/components/Charts/Field/index.d.ts index 975fb667..80b1bf1d 100644 --- a/src/components/Charts/Field/index.d.ts +++ b/src/components/Charts/Field/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface IFieldProps { label: React.ReactNode; value: React.ReactNode; diff --git a/src/components/Charts/Gauge/index.d.ts b/src/components/Charts/Gauge/index.d.ts index 66e3c003..fe550091 100644 --- a/src/components/Charts/Gauge/index.d.ts +++ b/src/components/Charts/Gauge/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface IGaugeProps { title: React.ReactNode; color?: string; diff --git a/src/components/Charts/MiniArea/index.d.ts b/src/components/Charts/MiniArea/index.d.ts index b223b68c..8b4e71ca 100644 --- a/src/components/Charts/MiniArea/index.d.ts +++ b/src/components/Charts/MiniArea/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; // g2已经更新到3.0 // 不带的写了 diff --git a/src/components/Charts/MiniBar/index.d.ts b/src/components/Charts/MiniBar/index.d.ts index 0c4bd6cc..b2685339 100644 --- a/src/components/Charts/MiniBar/index.d.ts +++ b/src/components/Charts/MiniBar/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface IMiniBarProps { color?: string; height: number; diff --git a/src/components/Charts/MiniProgress/index.d.ts b/src/components/Charts/MiniProgress/index.d.ts index aaeb7261..0ef158e8 100644 --- a/src/components/Charts/MiniProgress/index.d.ts +++ b/src/components/Charts/MiniProgress/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface IMiniProgressProps { target: number; color?: string; diff --git a/src/components/Charts/Pie/index.d.ts b/src/components/Charts/Pie/index.d.ts index 66c93eeb..63aecfa3 100644 --- a/src/components/Charts/Pie/index.d.ts +++ b/src/components/Charts/Pie/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface IPieProps { animate?: boolean; color?: string; diff --git a/src/components/Charts/Radar/index.d.ts b/src/components/Charts/Radar/index.d.ts index 963ac8c3..6a7dd42a 100644 --- a/src/components/Charts/Radar/index.d.ts +++ b/src/components/Charts/Radar/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface IRadarProps { title?: React.ReactNode; height: number; diff --git a/src/components/Charts/TagCloud/index.d.ts b/src/components/Charts/TagCloud/index.d.ts index 462650c4..ac25269d 100644 --- a/src/components/Charts/TagCloud/index.d.ts +++ b/src/components/Charts/TagCloud/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface ITagCloudProps { data: Array<{ name: string; diff --git a/src/components/Charts/TimelineChart/index.d.ts b/src/components/Charts/TimelineChart/index.d.ts index 40b94325..0f547e77 100644 --- a/src/components/Charts/TimelineChart/index.d.ts +++ b/src/components/Charts/TimelineChart/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface ITimelineChartProps { data: Array<{ x: number; diff --git a/src/components/Charts/WaterWave/index.d.ts b/src/components/Charts/WaterWave/index.d.ts index 8f5588d2..e30a7e48 100644 --- a/src/components/Charts/WaterWave/index.d.ts +++ b/src/components/Charts/WaterWave/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface IWaterWaveProps { title: React.ReactNode; color?: string; diff --git a/src/components/CountDown/index.d.ts b/src/components/CountDown/index.d.ts index d39a2e95..af658e3f 100644 --- a/src/components/CountDown/index.d.ts +++ b/src/components/CountDown/index.d.ts @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; export interface ICountDownProps { format?: (time: number) => void; target: Date | number; diff --git a/src/components/DescriptionList/Description.d.ts b/src/components/DescriptionList/Description.d.ts index 2a17be37..41c04970 100644 --- a/src/components/DescriptionList/Description.d.ts +++ b/src/components/DescriptionList/Description.d.ts @@ -1,9 +1,11 @@ -import * as React from 'react'; +import React from 'react'; +import { ColProps } from 'antd/es/col'; -export default class Description extends React.Component< - { - term: React.ReactNode; - style?: React.CSSProperties; - }, - any -> {} +export interface DescriptionProps extends ColProps { + column?: number; + key?: string | number; + style?: React.CSSProperties; + term?: React.ReactNode; +} + +export default class Description extends React.Component {} diff --git a/src/components/DescriptionList/index.d.ts b/src/components/DescriptionList/index.d.ts index 96ccfa7d..c0bb071c 100644 --- a/src/components/DescriptionList/index.d.ts +++ b/src/components/DescriptionList/index.d.ts @@ -1,15 +1,17 @@ -import * as React from 'react'; -import Description from './Description'; +import React from 'react'; +import Description, { DescriptionProps } from './Description'; -export interface IDescriptionListProps { - layout?: 'horizontal' | 'vertical'; +export interface DescriptionListProps { + className?: string; col?: number; - title: React.ReactNode; + description?: DescriptionProps[]; gutter?: number; + layout?: 'horizontal' | 'vertical'; size?: 'large' | 'small'; style?: React.CSSProperties; + title?: React.ReactNode; } -export default class DescriptionList extends React.Component { +export default class DescriptionList extends React.Component { public static Description: typeof Description; } diff --git a/src/components/EditableItem/index.d.ts b/src/components/EditableItem/index.d.ts new file mode 100644 index 00000000..fc69b274 --- /dev/null +++ b/src/components/EditableItem/index.d.ts @@ -0,0 +1,7 @@ +import React from 'react'; + +export interface EditableItemProps { + onChange?: (value?: string | string[] | number) => void; +} + +export default class EditableItem extends React.Component {} diff --git a/src/components/EditableLinkGroup/index.d.ts b/src/components/EditableLinkGroup/index.d.ts new file mode 100644 index 00000000..07a42abe --- /dev/null +++ b/src/components/EditableLinkGroup/index.d.ts @@ -0,0 +1,9 @@ +import React from 'react'; + +export interface EditableLinkGroupProps { + links: any[]; + onAdd: () => void; + linkElement: string; +} + +export default class EditableLinkGroup extends React.Component {} diff --git a/src/components/Ellipsis/index.d.ts b/src/components/Ellipsis/index.d.ts index 37d508d7..075fa789 100644 --- a/src/components/Ellipsis/index.d.ts +++ b/src/components/Ellipsis/index.d.ts @@ -1,13 +1,13 @@ -import * as React from 'react'; +import React from 'react'; import { TooltipProps } from 'antd/lib/tooltip'; -export interface IEllipsisTooltipProps extends TooltipProps { +export interface EllipsisTooltipProps extends TooltipProps { title?: undefined; overlayStyle?: undefined; } -export interface IEllipsisProps { - tooltip?: boolean | IEllipsisTooltipProps; +export interface EllipsisProps { + tooltip?: boolean | EllipsisTooltipProps; length?: number; lines?: number; style?: React.CSSProperties; @@ -18,4 +18,4 @@ export interface IEllipsisProps { export function getStrFullLength(str: string): number; export function cutStrByFullLength(str: string, maxLength: number): string; -export default class Ellipsis extends React.Component {} +export default class Ellipsis extends React.Component {} diff --git a/src/components/Exception/index.d.ts b/src/components/Exception/index.d.ts index a74abb1f..b8cb65dd 100644 --- a/src/components/Exception/index.d.ts +++ b/src/components/Exception/index.d.ts @@ -1,15 +1,23 @@ -import * as React from 'react'; -export interface IExceptionProps { +import React from 'react'; +import * as H from 'history'; + +export interface ExceptionProps< + L = { + to: H.LocationDescriptor; + href?: H.LocationDescriptor; + replace?: boolean; + innerRef?: (node: HTMLAnchorElement | null) => void; + } +> { type?: '403' | '404' | '500'; title?: React.ReactNode; desc?: React.ReactNode; img?: string; actions?: React.ReactNode; - linkElement?: string | React.ComponentType; + linkElement?: string | React.ComponentType; style?: React.CSSProperties; className?: string; backText?: React.ReactNode; redirect?: string; } - -export default class Exception extends React.Component {} +export default class Exception extends React.Component {} diff --git a/src/components/FooterToolbar/index.d.ts b/src/components/FooterToolbar/index.d.ts index 9c6ac5b4..9ec202c1 100644 --- a/src/components/FooterToolbar/index.d.ts +++ b/src/components/FooterToolbar/index.d.ts @@ -1,7 +1,8 @@ -import * as React from 'react'; -export interface IFooterToolbarProps { +import React from 'react'; +export interface FooterToolbarProps { extra: React.ReactNode; style?: React.CSSProperties; + className?: string; } -export default class FooterToolbar extends React.Component {} +export default class FooterToolbar extends React.Component {} diff --git a/src/components/GlobalFooter/index.d.ts b/src/components/GlobalFooter/index.d.ts index 3fa5c423..efde77db 100644 --- a/src/components/GlobalFooter/index.d.ts +++ b/src/components/GlobalFooter/index.d.ts @@ -1,5 +1,5 @@ -import * as React from 'react'; -export interface IGlobalFooterProps { +import React from 'react'; +export interface GlobalFooterProps { links?: Array<{ key?: string; title: React.ReactNode; @@ -8,6 +8,7 @@ export interface IGlobalFooterProps { }>; copyright?: React.ReactNode; style?: React.CSSProperties; + className?: string; } -export default class GlobalFooter extends React.Component {} +export default class GlobalFooter extends React.Component {} diff --git a/src/components/GlobalHeader/RightContent.d.ts b/src/components/GlobalHeader/RightContent.d.ts new file mode 100644 index 00000000..275d9996 --- /dev/null +++ b/src/components/GlobalHeader/RightContent.d.ts @@ -0,0 +1,26 @@ +import React from 'react'; +import { DropDownProps } from 'antd/lib/dropdown'; +import { ClickParam } from 'antd/es/menu'; +import { SiderTheme } from 'antd/es/Layout/Sider'; + +export interface GlobalHeaderRightProps { + notices?: any[]; + dispatch?: (args: any) => void; + currentUser?: { + avatar?: string; + name?: string; + title?: string; + group?: string; + signature?: string; + geographic?: any; + tags?: any[]; + unreadCount: number; + }; + fetchingNotices?: boolean; + onNoticeVisibleChange?: (visible: boolean) => void; + onMenuClick?: (param: ClickParam) => void; + onNoticeClear?: (tabName: string) => void; + theme?: SiderTheme; +} + +export default class GlobalHeaderRight extends React.Component {} diff --git a/src/components/GlobalHeader/index.d.ts b/src/components/GlobalHeader/index.d.ts new file mode 100644 index 00000000..7d2fcf6e --- /dev/null +++ b/src/components/GlobalHeader/index.d.ts @@ -0,0 +1,13 @@ +import React from 'react'; + +export interface GlobalHeaderProps { + collapsed?: boolean; + onCollapse?: (collapsed: boolean) => void; + isMobile?: boolean; + logo?: string; + onNoticeClear?: (type: string) => void; + onMenuClick?: ({ key: string }) => void; + onNoticeVisibleChange?: (b: boolean) => void; +} + +export default class GlobalHeader extends React.Component {} diff --git a/src/components/HeaderDropdown/index.d.ts b/src/components/HeaderDropdown/index.d.ts index 43fa9aba..a1fd50aa 100644 --- a/src/components/HeaderDropdown/index.d.ts +++ b/src/components/HeaderDropdown/index.d.ts @@ -1,8 +1,12 @@ -import * as React from 'react'; +import React from 'react'; import { DropDownProps } from 'antd/lib/dropdown'; -export interface IHeaderDropdownProps extends DropDownProps { +declare type OverlayFunc = () => React.ReactNode; + +export interface HeaderDropdownProps extends DropDownProps { overlayClassName?: string; + overlay: React.ReactNode | OverlayFunc; + placement?: 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topCenter' | 'topRight' | 'bottomCenter'; } -export default class HeaderDropdown extends React.Component {} +export default class HeaderDropdown extends React.Component {} diff --git a/src/components/HeaderSearch/index.d.ts b/src/components/HeaderSearch/index.d.ts index d78fde47..fcf7c11d 100644 --- a/src/components/HeaderSearch/index.d.ts +++ b/src/components/HeaderSearch/index.d.ts @@ -1,5 +1,5 @@ -import * as React from 'react'; -export interface IHeaderSearchProps { +import React from 'react'; +export interface HeaderSearchProps { placeholder?: string; dataSource?: string[]; defaultOpen?: boolean; @@ -12,4 +12,4 @@ export interface IHeaderSearchProps { className?: string; } -export default class HeaderSearch extends React.Component {} +export default class HeaderSearch extends React.Component {} diff --git a/src/components/Login/LoginItem.d.ts b/src/components/Login/LoginItem.d.ts index bcfb73b8..563e94e0 100644 --- a/src/components/Login/LoginItem.d.ts +++ b/src/components/Login/LoginItem.d.ts @@ -1,11 +1,28 @@ -import * as React from 'react'; -export interface ILoginItemProps { +import React from 'react'; +import { WrappedFormUtils } from 'antd/es/form/Form'; +import ItemMap from './map'; +import { Omit } from 'antd/es/_util/type'; + +export type WrappedLoginItemProps = Omit; +export type LoginItemType = { [K in keyof typeof ItemMap]: React.FC }; + +export interface LoginItemProps { name?: string; rules?: any[]; style?: React.CSSProperties; - onGetCaptcha?: () => void; + onGetCaptcha?: (event?: MouseEvent) => void; placeholder?: string; buttonText?: React.ReactNode; + onPressEnter?: (e: any) => void; + countDown?: number; + getCaptchaButtonText?: string; + getCaptchaSecondText?: string; + updateActive: (activeItem: any) => void; + form: WrappedFormUtils; + type: string; + defaultValue?: string; + customprops?: any; + onChange?: (e: any) => void; } -export default class LoginItem extends React.Component {} +export default class LoginItem extends React.Component {} diff --git a/src/components/Login/LoginTab.d.ts b/src/components/Login/LoginTab.d.ts index db651f7b..c3f13ecb 100644 --- a/src/components/Login/LoginTab.d.ts +++ b/src/components/Login/LoginTab.d.ts @@ -1,7 +1,11 @@ -import * as React from 'react'; +import React from 'react'; -export interface ILoginTabProps { +export interface LoginTabProps { key?: string; tab?: React.ReactNode; + tabUtil: { + addTab: (id: any) => void; + removeTab: (id: any) => void; + }; } -export default class LoginTab extends React.Component {} +export default class LoginTab extends React.Component {} diff --git a/src/components/Login/index.d.ts b/src/components/Login/index.d.ts index 6a6f67fe..f80d19b0 100644 --- a/src/components/Login/index.d.ts +++ b/src/components/Login/index.d.ts @@ -1,20 +1,25 @@ import Button from 'antd/lib/button'; -import * as React from 'react'; -import LoginItem from './LoginItem'; +import React from 'react'; +import LoginItem, { LoginItemProps, LoginItemType } from './LoginItem'; import LoginTab from './LoginTab'; +import { WrappedFormUtils } from 'antd/es/form/Form'; +import LoginSubmit from './LoginSubmit'; -export interface ILoginProps { +export interface LoginProps { defaultActiveKey?: string; onTabChange?: (key: string) => void; style?: React.CSSProperties; onSubmit?: (error: any, values: any) => void; + className?: string; } -export default class Login extends React.Component { +interface Login extends WrappedFormUtils {} +declare class Login extends React.Component { public static Tab: typeof LoginTab; - public static UserName: typeof LoginItem; - public static Password: typeof LoginItem; - public static Mobile: typeof LoginItem; - public static Captcha: typeof LoginItem; - public static Submit: typeof Button; + public static UserName: React.FC; + public static Password: React.FC; + public static Mobile: React.FC; + public static Captcha: React.FC; + public static Submit: typeof LoginSubmit; } +export default Login; diff --git a/src/components/NoticeIcon/NoticeIconTab.d.ts b/src/components/NoticeIcon/NoticeIconTab.d.ts index 869dbbf0..2f7781de 100644 --- a/src/components/NoticeIcon/NoticeIconTab.d.ts +++ b/src/components/NoticeIcon/NoticeIconTab.d.ts @@ -1,7 +1,7 @@ import { SkeletonProps } from 'antd/lib/skeleton'; -import * as React from 'react'; +import React from 'react'; -export interface INoticeIconData { +export interface NoticeIconData { avatar?: string | React.ReactNode; title?: React.ReactNode; description?: React.ReactNode; @@ -10,16 +10,21 @@ export interface INoticeIconData { style?: React.CSSProperties; } -export interface INoticeIconTabProps { +export interface NoticeIconTabProps { count?: number; emptyText?: React.ReactNode; emptyImage?: string; - list?: INoticeIconData[]; + list?: NoticeIconData[]; name?: string; showClear?: boolean; showViewMore?: boolean; style?: React.CSSProperties; title?: string; + data?: any[]; + onClick: (item: any) => void; + onClear: (item: any) => void; + locale: any; + onViewMore: (e: any) => void; } -export default class NoticeIconTab extends React.Component {} +export default class NoticeIconTab extends React.Component {} diff --git a/src/components/NoticeIcon/index.d.ts b/src/components/NoticeIcon/index.d.ts index d32586d6..18b3c433 100644 --- a/src/components/NoticeIcon/index.d.ts +++ b/src/components/NoticeIcon/index.d.ts @@ -1,14 +1,14 @@ -import * as React from 'react'; -import NoticeIconTab, { INoticeIconData } from './NoticeIconTab'; +import React from 'react'; +import NoticeIconTab, { NoticeIconData } from './NoticeIconTab'; -export interface INoticeIconProps { +export interface NoticeIconProps { count?: number; bell?: React.ReactNode; className?: string; loading?: boolean; onClear?: (tabName: string) => void; - onItemClick?: (item: INoticeIconData, tabProps: INoticeIconProps) => void; - onViewMore?: (tabProps: INoticeIconProps) => void; + onItemClick?: (item: NoticeIconData, tabProps: NoticeIconProps) => void; + onViewMore?: (tabProps: NoticeIconProps, e: MouseEvent) => void; onTabChange?: (tabTile: string) => void; style?: React.CSSProperties; onPopupVisibleChange?: (visible: boolean) => void; @@ -22,6 +22,6 @@ export interface INoticeIconProps { clearClose?: boolean; } -export default class NoticeIcon extends React.Component { +export default class NoticeIcon extends React.Component { public static Tab: typeof NoticeIconTab; } diff --git a/src/components/NumberInfo/index.d.ts b/src/components/NumberInfo/index.d.ts index ca93ba5d..6636db91 100644 --- a/src/components/NumberInfo/index.d.ts +++ b/src/components/NumberInfo/index.d.ts @@ -1,5 +1,5 @@ -import * as React from 'react'; -export interface INumberInfoProps { +import React from 'react'; +export interface NumberInfoProps { title?: React.ReactNode | string; subTitle?: React.ReactNode | string; total?: React.ReactNode | string; @@ -7,7 +7,8 @@ export interface INumberInfoProps { theme?: string; gap?: number; subTotal?: number; + suffix?: string; style?: React.CSSProperties; } -export default class NumberInfo extends React.Component {} +export default class NumberInfo extends React.Component {} diff --git a/src/components/PageHeader/breadcrumb.d.ts b/src/components/PageHeader/breadcrumb.d.ts index cfed4021..69a95dc1 100644 --- a/src/components/PageHeader/breadcrumb.d.ts +++ b/src/components/PageHeader/breadcrumb.d.ts @@ -1,6 +1,6 @@ -import * as React from 'react'; -import { IPageHeaderProps } from './index'; +import React from 'react'; +import { PageHeaderProps } from './index'; -export default class BreadcrumbView extends React.Component {} +export default class BreadcrumbView extends React.Component {} export function getBreadcrumb(breadcrumbNameMap: object, url: string): object; diff --git a/src/components/PageHeader/index.d.ts b/src/components/PageHeader/index.d.ts index e3e1f321..fb927e74 100644 --- a/src/components/PageHeader/index.d.ts +++ b/src/components/PageHeader/index.d.ts @@ -1,28 +1,31 @@ -/// -import * as React from 'react'; +import React from 'react'; import { Location } from 'history'; -export interface IPageHeaderProps { - title?: React.ReactNode | string; + +export interface PageHeaderProps { + title?: React.ReactNode | string | number; logo?: React.ReactNode | string; action?: React.ReactNode | string; content?: React.ReactNode; extraContent?: React.ReactNode; routes?: any[]; params?: any; - breadcrumbList?: Array<{ title: React.ReactNode; href?: string }>; + breadcrumbList?: Array<{ title: string | number; href?: string }>; tabList?: Array<{ key: string; tab: React.ReactNode }>; tabActiveKey?: string; tabDefaultActiveKey?: string; onTabChange?: (key: string) => void; tabBarExtraContent?: React.ReactNode; - linkElement?: React.ReactNode; + linkElement?: React.ReactNode | string; style?: React.CSSProperties; home?: React.ReactNode; wide?: boolean; hiddenBreadcrumb?: boolean; + className?: string; + loading?: boolean; + breadcrumbSeparator?: React.ReactNode; location?: Location; itemRender: (menuItem: any) => React.ReactNode; breadcrumbNameMap?: any; } -export default class PageHeader extends React.Component {} +export default class PageHeader extends React.Component {} diff --git a/src/components/PageHeaderWrapper/GridContent.d.ts b/src/components/PageHeaderWrapper/GridContent.d.ts new file mode 100644 index 00000000..a3d3a308 --- /dev/null +++ b/src/components/PageHeaderWrapper/GridContent.d.ts @@ -0,0 +1,8 @@ +import React from 'react'; + +export interface GridContentProps { + contentWidth: string; + children: React.ReactNode; +} + +export default class GridContent extends React.Component {} diff --git a/src/components/PageHeaderWrapper/index.d.ts b/src/components/PageHeaderWrapper/index.d.ts new file mode 100644 index 00000000..21c8759b --- /dev/null +++ b/src/components/PageHeaderWrapper/index.d.ts @@ -0,0 +1,12 @@ +import React from 'react'; +export interface ResultProps { + actions?: React.ReactNode; + className?: string; + description?: React.ReactNode; + extra?: React.ReactNode; + style?: React.CSSProperties; + title?: React.ReactNode; + type: 'success' | 'error'; +} + +export default class Result extends React.Component {} diff --git a/src/components/Result/index.d.ts b/src/components/Result/index.d.ts index 0c34c254..21c8759b 100644 --- a/src/components/Result/index.d.ts +++ b/src/components/Result/index.d.ts @@ -1,11 +1,12 @@ -import * as React from 'react'; -export interface IResultProps { - type: 'success' | 'error'; - title: React.ReactNode; +import React from 'react'; +export interface ResultProps { + actions?: React.ReactNode; + className?: string; description?: React.ReactNode; extra?: React.ReactNode; - actions?: React.ReactNode; style?: React.CSSProperties; + title?: React.ReactNode; + type: 'success' | 'error'; } -export default class Result extends React.Component {} +export default class Result extends React.Component {} diff --git a/src/components/SelectLang/index.d.ts b/src/components/SelectLang/index.d.ts new file mode 100644 index 00000000..d2c53fa3 --- /dev/null +++ b/src/components/SelectLang/index.d.ts @@ -0,0 +1,7 @@ +import React from 'react'; + +export interface SelectLangProps { + className?: string; +} + +export default class SelectLang extends React.Component {} diff --git a/src/components/SettingDrawer/BlockCheckbox.d.ts b/src/components/SettingDrawer/BlockCheckbox.d.ts new file mode 100644 index 00000000..1012294e --- /dev/null +++ b/src/components/SettingDrawer/BlockCheckbox.d.ts @@ -0,0 +1,9 @@ +import React from 'react'; + +export interface BlockChecboxProps { + value: string; + onChange: (key: string) => void; + list: any[]; +} + +export default class BlockChecbox extends React.Component {} diff --git a/src/components/SettingDrawer/ThemeColor.d.ts b/src/components/SettingDrawer/ThemeColor.d.ts new file mode 100644 index 00000000..17bc3e8d --- /dev/null +++ b/src/components/SettingDrawer/ThemeColor.d.ts @@ -0,0 +1,10 @@ +import React from 'react'; + +export interface TagProps { + color: string; + check: boolean; + className?: string; + onClick?: () => void; +} + +export default class ThemeColor extends React.Component {} diff --git a/src/components/SettingDrawer/index.d.ts b/src/components/SettingDrawer/index.d.ts new file mode 100644 index 00000000..22273089 --- /dev/null +++ b/src/components/SettingDrawer/index.d.ts @@ -0,0 +1,24 @@ +import React from 'react'; +import { SiderTheme } from 'antd/es/Layout/Sider'; + +export interface SettingModelState { + navTheme: string | SiderTheme; + primaryColor: string; + layout: string; + contentWidth: string; + fixedHeader: boolean; + autoHideHeader: boolean; + fixSiderbar: boolean; + menu: { disableLocal: boolean }; + title: string; + pwa: boolean; + iconfontUrl: string; + colorWeak: boolean; +} + +export interface SettingDrawerProps { + setting?: SettingModelState; + dispatch?: (args: any) => void; +} + +export default class SettingDrawer extends React.Component {} diff --git a/src/components/SiderMenu/BaseMenu.d.ts b/src/components/SiderMenu/BaseMenu.d.ts new file mode 100644 index 00000000..79fcf467 --- /dev/null +++ b/src/components/SiderMenu/BaseMenu.d.ts @@ -0,0 +1,23 @@ +import React from 'react'; +import * as H from 'history'; +import { SiderTheme, CollapseType } from 'antd/es/Layout/Sider'; + +import { MenuMode } from 'antd/es/menu'; + +export interface BaseMenuProps { + flatMenuKeys?: any[]; + location?: H.Location; + onCollapse?: (collapsed: boolean, type?: CollapseType) => void; + isMobile?: boolean; + openKeys?: any; + theme?: SiderTheme; + mode?: MenuMode; + className?: string; + collapsed?: boolean; + handleOpenChange?: (openKeys: any[]) => void; + menuData?: any[]; + style?: React.CSSProperties; + onOpenChange?: (openKeys: string[]) => void; +} + +export default class BaseMenu extends React.Component {} diff --git a/src/components/SiderMenu/SiderMenu.d.ts b/src/components/SiderMenu/SiderMenu.d.ts new file mode 100644 index 00000000..c18162a8 --- /dev/null +++ b/src/components/SiderMenu/SiderMenu.d.ts @@ -0,0 +1,11 @@ +import React from 'react'; +import * as H from 'history'; +import { BaseMenuProps } from './BaseMenu'; +import { SiderTheme } from 'antd/es/Layout/Sider'; + +export interface SiderMenuProps extends BaseMenuProps { + logo?: string; + fixSiderbar?: boolean; +} + +export default class SiderMenu extends React.Component {} diff --git a/src/components/SiderMenu/index.d.ts b/src/components/SiderMenu/index.d.ts new file mode 100644 index 00000000..383df9e1 --- /dev/null +++ b/src/components/SiderMenu/index.d.ts @@ -0,0 +1,13 @@ +import React from 'react'; +import { SiderTheme } from 'antd/es/Layout/Sider'; + +export interface SiderMenuProps { + isMobile: boolean; + menuData: any[]; + collapsed: boolean; + logo?: string; + theme?: SiderTheme; + onCollapse: (payload: boolean) => void; +} + +export default class SiderMenuWrapper extends React.Component {} diff --git a/src/components/StandardFormRow/index.d.ts b/src/components/StandardFormRow/index.d.ts new file mode 100644 index 00000000..de06c9b8 --- /dev/null +++ b/src/components/StandardFormRow/index.d.ts @@ -0,0 +1,11 @@ +import React from 'react'; + +export interface StandardFormRowProps { + title: string; + last?: boolean; + block?: boolean; + grid?: boolean; + style?: React.CSSProperties; +} + +export default class StandardFormRow extends React.Component {} diff --git a/src/components/StandardTable/index.d.ts b/src/components/StandardTable/index.d.ts new file mode 100644 index 00000000..d9addeff --- /dev/null +++ b/src/components/StandardTable/index.d.ts @@ -0,0 +1,19 @@ +import React from 'react'; +import { PaginationConfig, SorterResult, TableCurrentDataSource } from 'antd/lib/table'; + +export interface StandardTableProps { + columns: any; + onSelectRow: (row: any) => void; + data: any; + rowKey?: string; + selectedRows: any[]; + onChange?: ( + pagination: PaginationConfig, + filters: Record, + sorter: SorterResult, + extra?: TableCurrentDataSource + ) => void; + loading?: boolean; +} + +export default class StandardTable extends React.Component {} diff --git a/src/components/TagSelect/TagSelectOption.d.ts b/src/components/TagSelect/TagSelectOption.d.ts index 366b297a..3343d744 100644 --- a/src/components/TagSelect/TagSelectOption.d.ts +++ b/src/components/TagSelect/TagSelectOption.d.ts @@ -1,8 +1,12 @@ -import * as React from 'react'; +import React from 'react'; -export interface ITagSelectOptionProps { - value: string | number; +export interface TagSelectOptionProps { + value?: string | number; style?: React.CSSProperties; + checked?: boolean; + onChange?: (value: string | number, state: boolean) => void; } -export default class TagSelectOption extends React.Component {} +export default class TagSelectOption extends React.Component { + public static isTagSelectOption?: boolean; +} diff --git a/src/components/TagSelect/index.d.ts b/src/components/TagSelect/index.d.ts index 9de30263..c225a86f 100644 --- a/src/components/TagSelect/index.d.ts +++ b/src/components/TagSelect/index.d.ts @@ -1,16 +1,23 @@ -import * as React from 'react'; -import TagSelectOption from './TagSelectOption'; +import React from 'react'; +import TagSelectOption, { TagSelectOptionProps } from './TagSelectOption'; -export interface ITagSelectProps { +export interface TagSelectProps { onChange?: (value: string[]) => void; expandable?: boolean; value?: string[] | number[]; style?: React.CSSProperties; hideCheckAll?: boolean; - actionsText?: { expandText?: string; collapseText?: string; selectAllText?: string }; + actionsText?: { + expandText?: React.ReactNode; + collapseText?: React.ReactNode; + selectAllText?: React.ReactNode; + }; + className: string; + Option: TagSelectOptionProps; + children: React.ReactElement | Array>; } -export default class TagSelect extends React.Component { +export default class TagSelect extends React.Component { public static Option: typeof TagSelectOption; private children: | React.ReactElement diff --git a/src/components/TopNavHeader/index.d.ts b/src/components/TopNavHeader/index.d.ts new file mode 100644 index 00000000..2d6631be --- /dev/null +++ b/src/components/TopNavHeader/index.d.ts @@ -0,0 +1,25 @@ +import React from 'react'; +import { SiderTheme, CollapseType } from 'antd/es/Layout/Sider'; +import { MenuMode } from 'antd/es/menu'; + +export interface TopNavHeaderProps { + theme: SiderTheme; + contentWidth?: string; + menuData?: any[]; + logo?: string; + mode?: MenuMode; + flatMenuKeys?: any[]; + onCollapse?: (collapsed: boolean, type?: CollapseType) => void; + isMobile?: boolean; + openKeys?: any; + className?: string; + collapsed?: boolean; + handleOpenChange?: (openKeys: any[]) => void; + style?: React.CSSProperties; + onOpenChange?: (openKeys: string[]) => void; + onNoticeClear?: (type: string) => void; + onMenuClick?: ({ key: string }) => void; + onNoticeVisibleChange?: (b: boolean) => void; +} + +export default class TopNavHeader extends React.Component {} diff --git a/src/components/Trend/index.d.ts b/src/components/Trend/index.d.ts index 7dc02010..a7775ae9 100644 --- a/src/components/Trend/index.d.ts +++ b/src/components/Trend/index.d.ts @@ -1,10 +1,11 @@ -import * as React from 'react'; +import React from 'react'; export interface ITrendProps { colorful?: boolean; flag: 'up' | 'down'; style?: React.CSSProperties; reverseColor?: boolean; + className?: string; } export default class Trend extends React.Component {} -- GitLab