ukelli-ui
Version:
Base on React's UI lib. Make frontend's dev simpler and faster.
47 lines (46 loc) • 1.5 kB
TypeScript
import React from 'react';
import SelectorBasic, { SelectorValuesDescription, SelectorBasicProps, SelectorBasicState } from './selector';
import { DropdownWrapperProps } from './dropdown-wrapper';
export interface DropdownGroupProps extends SelectorBasicProps, DropdownWrapperProps {
/** group data */
groupData: {
[groupID: string]: {
/** 该 Group 的标题 */
title: string;
/** 是否输出 number 类型的值 */
isNum?: boolean;
values: SelectorValuesDescription;
};
};
/** 用于匹配对应字段 */
fieldMapper?: {
title: string;
values: string;
};
/** style of DropdownGroup */
style?: React.CSSProperties;
}
interface State extends SelectorBasicState {
selectedCount: number;
selectedValue: any;
}
interface DefaultProps {
isMultiple: boolean;
defaultValue: {};
fieldMapper: {
title: string;
values: string;
};
}
export default class DropdownGroup extends SelectorBasic<DropdownGroupProps, State> {
static defaultProps: DefaultProps;
constructor(props: any);
numberValFilter(numberValues: any, groupKey: any): any;
calculateCount: (group: any) => number;
changeGroup(groupKey: any, isNextGroupActive: any, groupValues: any): void;
changeValue: (groupKey: any, value: any) => void;
itemFilter: (item: any) => any;
getTitle: (selectedCount: any) => string;
render(): JSX.Element;
}
export {};