import Textbox from '.'; import { IEventArg } from '@mjcloud/utils/dist/events/eventListening'; import { IConfigStartLoadParams, IInitialStateParams } from '@mjcloud/redux'; import { IControlSetConfig, ControlDisabledModeEnum, ControlModifyModeEnum } from '@mjcloud/types'; import { IValueState, ValueControlActionType, ValueControlEventType, IValueChangeEventArg, IValidEventArg } from '@mjcloud/instance/dist/valueInstanceBase'; export interface ITextboxConfigStartLoadParams extends IConfigStartLoadParams { } export interface ITextboxInitialStateParams extends IInitialStateParams { } export interface ITextboxButtonConfig extends IControlSetConfig { title?: string; controllerId?: string; icon?: string; tip?: string; } export interface ITextboxConfig extends IControlSetConfig { textFieldName?: string; prefixFieldName?: string; suffixFieldName?: string; button?: ITextboxButtonConfig; /** * 最大可输入文本长度。默认为:400 */ maxLength: number; /** * 是否可点击穿透 */ link?: boolean; /** * 最小可输入文本长度。默认无限制 */ minLength?: number; /** * 默认暗文提示 */ placeholder?: string; /** * 只允许输入的字符限制。默认无限制 */ allowChars?: string; /** * 左边显示的图标,默认为空,表示不显示 */ leftIcon?: string; /** * 右边显示的图标,默认为空,表示不显示 */ rightIcon?: string; ruleKey?: string; isAutoCode: boolean; title: string; autoFocus: boolean; modifyMode?: ControlModifyModeEnum; disabledMode?: ControlDisabledModeEnum; } export interface ITextboxState extends IValueState { prefixValue?: string; suffixValue?: string; textFieldName?: string; prefixFieldName?: string; suffixFieldName?: string; button?: ITextboxButtonConfig; buttonLoading: boolean; disabled: boolean; /** * 最大可输入文本长度。默认为:400 */ maxLength: number; /** * 是否可点击穿透 */ link?: boolean; /** * 最小可输入文本长度。默认无限制 */ minLength?: number; /** * 默认暗文提示 */ placeholder: string; autoFocus: boolean; /** * 左边显示的图标,默认为空,表示不显示 */ leftIcon: string | undefined; /** * 右边显示的图标,默认为空,表示不显示 */ rightIcon: string | undefined; ruleKey?: string; isAutoCode: boolean; isUUID?: boolean; } export declare type TextBoxActionType = ValueControlActionType | 'updateButtonLoad' | 'buttonClickAfter' | 'buttonClickDone'; export declare type TextBoxEventType = 'rightIconClick' | ValueControlEventType | 'onButtonBeforeClick' | 'onButtonAfterClick'; export interface ITextBoxValueChangeEventArg extends IValueChangeEventArg { } export interface ITextBoxValidEventArg extends IValidEventArg { } export interface ITextBoxRightIconClickArg extends IEventArg { }