simplr-forms-dom
Version:
DOM components for simplr-forms.
53 lines (52 loc) • 1.5 kB
TypeScript
import * as React from "react";
import { TypedRecord } from "typed-immutable-record";
import { BaseContainer, BaseContainerProps } from "simplr-forms-core";
import { FormError } from "simplr-forms-core/contracts";
export interface SubmitProps extends BaseContainerProps, React.HTMLProps<HTMLButtonElement> {
/**
* Disable when form is submitting.
*
* Default: false
* @type {boolean}
* @memberOf SubmitProps
*/
disableOnSubmitting?: boolean;
/**
* Disable when at least one field has error.
*
* Default: true
* @type {boolean}
* @memberOf SubmitProps
*/
disableOnError?: boolean;
/**
* Disable when at least one field is validating.
*
* Default: true
* @type {boolean}
* @memberOf SubmitProps
*/
disableOnWaiting?: boolean;
/**
* Disable when all fields are pristine.
*
* Default: false
* @type {boolean}
* @memberOf SubmitProps
*/
disableOnPristine?: boolean;
waiting?: boolean;
}
export interface SubmitState {
Error?: FormError;
Validating: boolean;
Submitting: boolean;
Pristine: boolean;
}
export interface SubmitStateRecord extends TypedRecord<SubmitStateRecord>, SubmitState {
}
export declare class Submit extends BaseContainer<SubmitProps, SubmitStateRecord> {
protected OnStoreUpdated(): void;
protected readonly Disabled: boolean;
render(): JSX.Element;
}