choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
82 lines (81 loc) • 4.78 kB
TypeScript
import { ReactNode } from 'react';
import { Utils } from 'choerodon-ui/dataset';
import { BigNumberTarget } from '../../../lib/configure';
import { TooltipTheme, TooltipPlacement } from '../../../lib/tooltip';
import formatCurrency from '../formatter/formatCurrency';
import formatNumber from '../formatter/formatNumber';
import formatBigNumber from '../formatter/formatBigNumber';
import { FormatNumberFuncOptions } from '../number-field/NumberField';
import ValidationResult from '../validator/ValidationResult';
import DataSet from '../data-set/DataSet';
import Record from '../data-set/Record';
import Field, { HighlightProps } from '../data-set/Field';
import { Renderer, RenderProps } from './FormField';
import { Tooltip } from '../core/enum';
declare const toRangeValue: typeof Utils.toRangeValue;
declare const getDateFormatByFieldType: typeof Utils.getDateFormatByFieldType;
declare const getDateFormatByField: typeof Utils.getDateFormatByField;
export { toRangeValue, getDateFormatByFieldType, getDateFormatByField, };
export declare function fromRangeValue(value: any[], range?: boolean | [string, string]): any;
export declare function toMultipleValue(value: any, range?: boolean | [string, string]): any[];
export declare function transformHighlightProps(highlight: true | ReactNode | HighlightProps, props: HighlightProps): HighlightProps;
export declare function getCurrencyFormatter(): typeof formatCurrency;
export declare function getNumberFormatter(): typeof formatNumber;
export declare function getBigNumberFormatter(): typeof formatBigNumber;
export declare function getCurrencyFormatOptions(getProp: (name: any) => any, controlLang?: string): FormatNumberFuncOptions;
export declare function getNumberFormatOptions(getProp: (name: any) => any, getValue?: () => number | undefined, value?: number, controlLang?: string): FormatNumberFuncOptions;
export declare function getBigNumberFormatOptions(getProp: (name: any) => any, getValue?: () => number | undefined, value?: string, controlLang?: string, bigNumberTarget?: BigNumberTarget): FormatNumberFuncOptions;
export declare function processFieldValue(value: any, field: Field | undefined, options: {
getProp(name: string): any;
getValue?(): any;
lang?: string;
}, showValueIfNotFound?: boolean, record?: Record): any;
export declare function processValue(value: any, format: any): any;
export declare function isFieldValueEmpty(value: any, range?: boolean | [string, string], multiple?: boolean, valueField?: string, textField?: string): boolean;
export declare type MultipleRenderOption = {
range?: boolean | [string, string] | undefined;
maxTagCount?: number | undefined;
maxTagPlaceholder?: ReactNode | ((omittedValues: any[]) => ReactNode);
prefixCls?: string | undefined;
disabled?: boolean | undefined;
readOnly?: boolean | undefined;
validationResults?: ValidationResult[] | undefined;
tooltipTheme?: TooltipTheme;
isMultipleBlockDisabled?(v: any): boolean;
processRenderer(v: any, repeat?: number): ReactNode;
renderValidationResult(result: ValidationResult): ReactNode;
handleMultipleValueRemove?(e: any, value: any, index: number): void;
isValidationMessageHidden(message?: ReactNode): boolean | undefined;
showValidationMessage(e: any, message?: ReactNode, tooltipTheme?: TooltipTheme, tooltipPlacement?: TooltipPlacement): void;
getKey?(v: any): string;
};
export declare type RangeRenderOption = {
repeat?: number | undefined;
processRenderer(v: any, repeat?: number): ReactNode;
};
export declare type MultiLineRenderOption = {
prefixCls?: string | undefined;
field: Field;
record?: Record;
dataSet?: DataSet;
renderer?: Renderer;
name?: string;
tooltip?: Tooltip;
labelTooltip?: Tooltip;
renderValidationResult(result: ValidationResult): ReactNode;
isValidationMessageHidden(message?: ReactNode): boolean | undefined;
processValue(value: any): ReactNode;
};
export declare function renderRangeValue(value: any, option: RangeRenderOption): JSX.Element | undefined;
export declare function getValueKey(v: any): any;
export declare function renderMultipleValues(value: any, option: MultipleRenderOption): {
tags: ReactNode;
multipleValidateMessageLength: number;
};
export declare function renderMultiLine(options: MultiLineRenderOption): {
lines?: ReactNode;
multipleValidateMessageLength: number;
};
export declare function renderValidationMessage(validationMessage: ReactNode, showIcon?: boolean): ReactNode;
export declare function defaultRenderer(renderOption: RenderProps): {} | null | undefined;
export declare function showValidationMessage(e: any, message?: ReactNode, tooltipTheme?: TooltipTheme, tooltipPlacement?: TooltipPlacement): void;