UNPKG

@open-tender/utils

Version:

A library of utils for use with Open Tender applications that utilize our cloud-based Order API.

81 lines (80 loc) 3.28 kB
/// <reference types="react" /> import { Customer, CustomerCreate, RequestError, RequestStatus } from '@open-tender/types'; export declare const useProfileForm: (profile: Customer | null, loading: RequestStatus, error: RequestError, update: (data: CustomerCreate) => void, callback?: ((data: CustomerCreate) => void) | undefined, optionalFields?: string[], disabledFields?: string[]) => { submitRef: import("react").MutableRefObject<HTMLButtonElement | null>; data: Customer | null; errors: Record<string, string>; submitting: boolean; fields: ({ disabled: boolean | undefined; description?: string | undefined; id?: string | undefined; label?: string | undefined; name: string; on?: boolean | undefined; onChange?: import("react").ChangeEventHandler<HTMLInputElement> | undefined; required?: boolean | undefined; showLabel?: boolean | undefined; type: string; } | { disabled: boolean | undefined; autoComplete?: string | undefined; children?: JSX.Element | undefined; error?: string | null | undefined; icon?: JSX.Element | undefined; label?: string | undefined; max?: number | undefined; min?: number | undefined; name: string; onChange?: import("react").ChangeEventHandler<HTMLInputElement> | undefined; onBlur?: ((evt: any) => void) | undefined; pattern?: string | undefined; placeholder?: string | undefined; readOnly?: boolean | undefined; required?: boolean | undefined; showLabel?: boolean | undefined; style?: import("react").CSSProperties | undefined; type: string; value?: string | number | undefined; maxLength?: number | undefined; } | { disabled: boolean | undefined; error?: string | null | undefined; label: string; name: string; onChange?: import("react").ChangeEventHandler<HTMLSelectElement> | undefined; options: { name: string; value: string; disabled?: boolean | undefined; }[]; required?: boolean | undefined; showLabel?: boolean | undefined; type: string; value?: string | number | undefined; } | { disabled: boolean | undefined; id?: string | undefined; label: string; name: string; on?: boolean | undefined; onChange?: import("react").ChangeEventHandler<HTMLInputElement> | undefined; type: string; } | { disabled: boolean | undefined; error?: string | null | undefined; icon?: JSX.Element | undefined; label: string; name: string; onChange?: import("react").ChangeEventHandler<HTMLTextAreaElement> | undefined; placeholder?: string | undefined; readOnly?: boolean | undefined; required?: boolean | undefined; showLabel?: boolean | undefined; style?: import("react").CSSProperties | undefined; type: string; value?: string | undefined; })[]; handleChange: (name: string, value: string | number | boolean) => void; handleSubmit: (evt?: React.FormEvent<HTMLFormElement>) => void; };