UNPKG

choerodon-ui

Version:

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

149 lines (148 loc) 4.82 kB
import { ReactNode } from 'react'; import { BigNumber } from 'bignumber.js'; import { FormatNumberFuncOptions } from 'choerodon-ui/dataset/data-set/Field'; import { TextField, TextFieldProps } from '../text-field/TextField'; import { ValidationMessages } from '../validator/Validator'; import { FieldType } from '../data-set/enum'; import defaultFormatNumber from '../formatter/formatNumber'; import { Lang } from '../locale-context/enum'; import { ProcessValueOptions } from '../field/utils'; export declare type FormatNumberFunc = (value: string, lang: string, options: Intl.NumberFormatOptions) => string; export { FormatNumberFuncOptions }; export interface NumberFieldProps<V = number> extends TextFieldProps<V> { /** * 最小值 */ min?: BigNumber.Value | null; /** * 最大值 */ max?: BigNumber.Value | null; /** * 步距 */ step?: BigNumber.Value; /** * 非严格步距 */ nonStrictStep?: boolean; /** * 格式器 */ formatter?: FormatNumberFunc; /** * 格式器参数 */ formatterOptions?: FormatNumberFuncOptions; /** *是否长按按钮按步距增加 */ longPressPlus?: boolean; /** * 小数点精度 */ precision?: number; /** * 千分位分组显示 */ numberGrouping?: boolean; /** * 是否启用UP DOWN键盘事件 */ keyboard?: boolean; /** * @deprecated */ stringMode?: boolean; } export declare class NumberField<T extends NumberFieldProps> extends TextField<T & NumberFieldProps> { static displayName: string; static defaultProps: { suffixCls: string; longPressPlus: boolean; max: number; min: number; clearButton: boolean; multiple: boolean; border: boolean; valueChangeAction: import("../text-field/enum").ValueChangeAction; waitType: import("../core/enum").WaitType; readOnly: boolean; disabled: boolean; noValidate: boolean; trim: import("../data-set/enum").FieldTrim; }; static format: typeof defaultFormatNumber; /** * @deprecated */ static bigNumberFormat: typeof defaultFormatNumber; plusElement?: HTMLDivElement | null; minusElement?: HTMLDivElement | null; get lang(): Lang; get defaultValidationMessages(): ValidationMessages; get strict(): boolean; get allowDecimal(): boolean; get nonStrictStep(): boolean; get allowNegative(): boolean; get min(): BigNumber.Value | undefined | null; get max(): BigNumber.Value | undefined | null; get value(): any | undefined; set value(value: any | undefined); get clearButton(): boolean; get keyboard(): boolean; savePlusRef(ref: any): void; saveMinusRef(ref: any): void; isLowerRange(value1: number | string, value2: number | string): boolean; getFieldType(): FieldType; getLimit(type: string): BigNumber | number | string | undefined | null; getValidatorProp(key: string): any; getInnerSpanButton(): ReactNode; getWrapperClassNames(...args: any[]): string; handleEnterDown(e: any): void; handleKeyDown(e: any): void; handleKeyDownUp(value: any): void; handleKeyDownDown(value: any): void; handlePlus(value: any): void; handleMinus(value: any): void; handleOncePlus(): void; handleOnceMinus(): void; getOmitPropsKeys(): string[]; getOtherProps(): any; getObservableProps(props: any, context: any): any; stepGenerator(isPlus: boolean): IterableIterator<BigNumber.Value>; getCurrentInputValue(): any; step(isPlus: boolean): void; afterStep(newValue: any): void; prepareSetValue(value: any): void; getProcessValueOptions(): ProcessValueOptions; restrictInput(value: string): string; getFormatOptions(value?: number | BigNumber): FormatNumberFuncOptions; getFormatter(): any; processText(value: ReactNode): ReactNode; renderLengthInfo(): ReactNode; compare(oldValue: any, newValue: any): boolean; isValidInput(input: string): boolean; } export default class ObserverNumberField extends NumberField<NumberFieldProps> { static defaultProps: { suffixCls: string; longPressPlus: boolean; max: number; min: number; clearButton: boolean; multiple: boolean; border: boolean; valueChangeAction: import("../text-field/enum").ValueChangeAction; waitType: import("../core/enum").WaitType; readOnly: boolean; disabled: boolean; noValidate: boolean; trim: import("../data-set/enum").FieldTrim; }; static format: typeof defaultFormatNumber; /** * @deprecated */ static bigNumberFormat: typeof defaultFormatNumber; }