@alifd/meet-react
Version:
Fusion Mobile React UI System Component
42 lines (41 loc) • 1.51 kB
TypeScript
import { LocaledComponentProps } from '../locale';
import { BaseComponentAttributes, BaseFieldPreviewProps, BasicSizeType } from '../utils/types';
import { PickerColumnData } from '../picker';
import { ReactNode, ReactNodeArray } from 'react';
export interface LocaleType {
rootTipText?: string;
}
export interface CascaderSelectItem extends PickerColumnData {
label: string;
value: any;
disabled?: boolean;
children?: CascaderSelectItem[];
}
export interface ExtraCallbackProps {
selectedPath: CascaderSelectItem[];
}
export interface CascaderSelectProps extends BaseComponentAttributes, LocaledComponentProps<LocaleType>, BaseFieldPreviewProps {
drawerClassName?: string;
type?: 'normal' | 'inverse';
align?: 'left' | 'right';
mode?: 'mini' | 'normal';
size?: BasicSizeType;
dataSource: CascaderSelectItem[];
disabled?: boolean;
readOnly?: boolean;
hasClear?: boolean;
disableScroll?: boolean;
useSimpleValue?: boolean;
loadData?: (item?: any) => Promise<any>;
defaultValue?: any[];
value?: any[];
placeholder?: string;
separator?: string;
rootTipText?: string | ReactNode;
zIndex?: number;
onSelect?: (val?: any, item?: any) => void;
onClear?: () => void;
onCancel?: (reason?: string) => void;
onChange?: (value?: any, data?: CascaderSelectItem | CascaderSelectItem[], extra?: ExtraCallbackProps) => void;
renderContent?: (value?: any, separator?: string) => ReactNode | ReactNodeArray;
}