@mescius/dspdfviewer
Version:
Document Solutions PDF Viewer
55 lines (54 loc) • 1.55 kB
TypeScript
import { WidgetAnnotation, GcProps, AnnotationTypeCode } from "../Annotations/AnnotationTypes";
import { FormFillerSettings, FormFieldMapping } from "../ViewerOptions";
/**
* Field validation result.
**/
export type FieldValidationResult = {
valid: boolean;
invalidLabel?: string;
};
/**
* Validation caller name.
**/
export type ValidationCallerType = 'form-filler' | 'annotation-layer' | 'user-code' | 'unknown';
export type FormFillerDialogModel = {
enabled: boolean;
showModal: boolean;
fields: {
pageNumber: number;
annotation: WidgetAnnotation;
}[] | null;
isChanged: boolean;
};
export type FormFillerDialogProps = {};
export type FormFillerModel = {
fields: (WidgetAnnotation | FieldMappingStub)[];
dirtyHash: {
[fieldId: string]: WidgetAnnotation | undefined;
};
failedValidationHash: {
[fieldId: string]: FieldValidationResult | undefined;
};
anyFieldChanged: boolean;
};
export type FormFillerProps = {
fields: {
pageNumber: number;
annotation: WidgetAnnotation;
}[];
enabled: boolean;
settings?: FormFillerSettings;
in17n: any;
onChanged: (dirtyHash: {
[fieldId: string]: WidgetAnnotation | undefined;
}) => void;
};
export type FieldMappingStub = {
id: string;
fieldName: string;
fieldValue: string;
fieldType: 'custom-content';
mapping: FormFieldMapping;
gcProps: GcProps;
annotationType: AnnotationTypeCode;
};