@sanity/form-builder
Version:
Sanity form builder
61 lines • 2.22 kB
TypeScript
import React from 'react';
import { ConditionalProperty, Marker, ObjectField, ObjectSchemaTypeWithOptions, Path, SchemaType } from '@sanity/types';
import { FormFieldPresence } from '@sanity/base/presence';
import PatchEvent from './PatchEvent';
import { Props as InputProps } from './inputs/types';
interface FormBuilderInputProps {
value: unknown;
type: SchemaType;
onChange: (event: PatchEvent) => void;
onFocus: (path: Path) => void;
onBlur: () => void;
readOnly?: ConditionalProperty;
_internal_parent?: Record<string, unknown> | undefined;
presence?: FormFieldPresence[];
focusPath: Path;
markers: Marker[];
compareValue?: unknown;
inputComponent?: React.ComponentType<InputProps>;
level: number;
isRoot?: boolean;
path: Path;
filterField?: (type: ObjectSchemaTypeWithOptions, field: ObjectField) => boolean;
onKeyUp?: (ev: React.KeyboardEvent) => void;
onKeyPress?: (ev: React.KeyboardEvent) => void;
}
export declare class FormBuilderInput extends React.Component<FormBuilderInputProps> {
static contextTypes: {
presence: () => any;
formBuilder: () => any;
getValuePath: () => any;
};
static childContextTypes: {
getValuePath: () => any;
};
static defaultProps: {
focusPath: Path;
path: Path;
markers: import("@sanity/types/src").ValidationMarker[];
};
_element: HTMLDivElement | null;
_input: FormBuilderInput | HTMLDivElement | null;
scrollTimeout: number;
getValuePath: () => any;
getChildContext(): {
getValuePath: () => any;
};
componentDidMount(): void;
shouldComponentUpdate(nextProps: FormBuilderInputProps): boolean;
componentDidUpdate(prevProps: FormBuilderInputProps): void;
componentWillUnmount(): void;
resolveInputComponent(type: SchemaType): any;
setInput: (component: FormBuilderInput | HTMLDivElement | null) => void;
focus(): void;
handleChange: (patchEvent: PatchEvent) => void;
handleFocus: (nextPath: Path) => void;
handleBlur: () => void;
getChildFocusPath(): Path;
render(): React.JSX.Element;
}
export {};
//# sourceMappingURL=FormBuilderInput.d.ts.map