UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

55 lines (54 loc) 2.04 kB
import React, { Component, CSSProperties, ReactNode, TextareaHTMLAttributes } from 'react'; import { AbstractInputProps } from './Input'; import ConfigContext, { ConfigContextValue } from '../config-provider/ConfigContext'; export interface AutoSizeType { minRows?: number; maxRows?: number; } export interface TextAreaProps extends AbstractInputProps<HTMLTextAreaElement> { autosize?: boolean | AutoSizeType; autoFocus?: boolean; border?: boolean; } export interface TextAreaState { textareaStyles?: CSSProperties; inputLength?: number; focused?: boolean; } export declare type HTMLTextareaProps = Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'onChange' | 'prefix'>; export default class TextArea extends Component<TextAreaProps & HTMLTextareaProps, TextAreaState> { static displayName: string; static get contextType(): typeof ConfigContext; static defaultProps: { showLengthInfo: boolean; border: boolean; labelLayout: string; }; context: ConfigContextValue; nextFrameActionId: number; state: { textareaStyles: {}; inputLength: number; focused: boolean; }; private textAreaRef; private resizeObserver?; componentDidMount(): void; componentWillReceiveProps(nextProps: TextAreaProps): void; componentWillUnmount(): void; focus(): void; blur(): void; resizeTextarea: () => void; getPrefixCls(): string; getTextAreaClassName(): string; handleTextareaChange: (e: React.ChangeEvent<HTMLTextAreaElement>) => void; handleKeyDown: (e: React.KeyboardEvent<HTMLTextAreaElement>) => void; handleInput: () => void; saveTextAreaRef: (textArea: HTMLTextAreaElement) => void; getWrapperClassName(): string; handleFocus: (e: React.FocusEvent<HTMLTextAreaElement, Element>) => void; handleBlur: (e: React.FocusEvent<HTMLTextAreaElement, Element>) => void; getLengthInfo(prefixCls: any): JSX.Element | null; renderFloatLabel(): ReactNode; render(): JSX.Element; }