@douyinfe/semi-ui
Version:
A modern, comprehensive, flexible design system and UI library. Connect DesignOps & DevOps. Quickly build beautiful React apps. Maintained by Douyin-fe team.
40 lines (39 loc) • 1.5 kB
TypeScript
import React from 'react';
import PropTypes from 'prop-types';
import BaseComponent from '../_base/baseComponent';
import { LabelProps } from '../form/label';
import { noop } from '@douyinfe/semi-foundation/lib/es/utils/function';
export type InputSize = 'small' | 'large' | 'default';
export interface InputGroupProps {
className?: string;
children?: React.ReactNode;
size?: InputSize;
style?: Record<string, any>;
onBlur?: (e: React.FocusEvent<HTMLSpanElement>) => void;
onFocus?: (e: React.FocusEvent<HTMLSpanElement>) => void;
label?: LabelProps;
labelPosition?: string;
disabled?: boolean;
}
export interface InputGroupState {
}
export default class inputGroup extends BaseComponent<InputGroupProps, InputGroupState> {
static propTypes: {
className: PropTypes.Requireable<string>;
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
size: PropTypes.Requireable<"default" | "small" | "large">;
style: PropTypes.Requireable<object>;
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
onFocus: PropTypes.Requireable<(...args: any[]) => any>;
label: PropTypes.Requireable<object>;
labelPosition: PropTypes.Requireable<string>;
};
static defaultProps: {
size: string;
className: string;
onBlur: typeof noop;
onFocus: typeof noop;
};
renderGroupWithLabel(inner: React.ReactNode): React.JSX.Element;
render(): React.JSX.Element;
}