Repository URL to install this package:
|
Version:
0.0.15 ▾
|
/**
* @todo can do default form styles here
*/
import * as React from 'react';
import { PluginsContext } from '@skava/forms/build/dist/new-forms/plugins/PluginsContext';
import { InputPluginType } from '@skava/forms/build/dist/new-forms/plugins/PluginsContext';
import { OnPreFill as OnPreFillType } from '@skava/forms/build/dist/new-forms/OneForm/typings';
import { FormState, OneFormState, FormRenderProps, InputState } from '@skava/forms/build/dist/exports';
import { ValidationStrategy as ValidationStrategyType, ValidationStrategyContext, OnSubmitStrategyArgs, OnChangeStrategyArgs, OnFocusStrategyArgs } from '@skava/forms/build/dist/new-forms/strategies';
import { StyledToggleItem, StyledLabel, TextAreaPlugin, ExpiryDatePlugin } from '@skava/forms/build/dist/new-forms/plugins';
export { StyledInput } from '@skava/forms/build/dist/exports';
export { toCreditCard } from '@skava/forms/build/dist/exports';
export { OneObserverForm } from '@skava/forms/build/dist/new-forms/OneForm/OneForm';
import { EasyFormProviderProps } from './typings';
/**
* @note - this is especially customizable
*/
import { SerializedObj } from '@skava/forms/build/dist/new-forms/typings';
import { AnyObj } from 'src/typings';
export { SerializedObj };
export { FormRenderProps, PluginsContext, OneFormState, InputState, FormState, InputPluginType, ValidationStrategyType, ValidationStrategyContext, OnSubmitStrategyArgs, OnChangeStrategyArgs, OnFocusStrategyArgs, };
/**
* @description basically take all inputs from all forms => 1 obj
*/
export declare function serializeInputsToObj(list: AnyObj[]): AnyObj;
export declare const StyledAddressLinePlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledZipCodePlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledCityPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledCountryPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledProvincePlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledTelephonePlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledNamePlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledEmailPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledTextBoxPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledIncrementerPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledCreditCardPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledPasswordPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledConfirmPasswordPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledSelectDropDownPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledRadioGroupPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledLabelPlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export declare const StyledTogglePlugin: import("styleh-components").StyledComponentClass<any, any, any>;
export { TextAreaPlugin, ExpiryDatePlugin };
export { StyledToggleItem, StyledLabel };
export declare const StyledOneObserverForm: import("styleh-components").StyledComponentClass<any, any, any>;
/**
* @note had to cast to any first because styled + frozen
*/
export declare const DEFAULT_FORM_PLUGIN_LIST: InputPluginType<any>[];
export declare class DefaultFormPluginProvider extends React.PureComponent {
render(): JSX.Element;
}
export declare class EasyFormProvider<Props = {}> extends React.PureComponent<EasyFormProviderProps> {
static defaultProps: {
pluginList: InputPluginType<any>[];
};
/**
* keeps it optimized
* @todo cleanup use exotic toDeepSeal
*/
state: {
validation: {
onSubmit: ((args: import("@skava/forms/build/dist/new-forms/strategies").EventHandlerArgs<React.FormEvent<any>, import("@skava/forms/build/dist/new-forms/forms").FormState>) => void) | ((args: import("@skava/forms/build/dist/new-forms/strategies").EventHandlerArgs<React.FormEvent<any>, import("@skava/forms/build/dist/new-forms/forms").FormState>) => void);
onChange: ((args: import("@skava/forms/build/dist/new-forms/strategies").EventHandlerArgs<React.ChangeEvent<any>, InputState<import("@skava/forms/build/dist/exports").AnyObj>>) => void) | ((args: import("@skava/forms/build/dist/new-forms/strategies").EventHandlerArgs<React.ChangeEvent<any>, InputState<import("@skava/forms/build/dist/exports").AnyObj>>) => void);
onBlur: ((args: import("@skava/forms/build/dist/new-forms/strategies").EventHandlerArgs<React.FocusEvent<any>, InputState<import("@skava/forms/build/dist/exports").AnyObj>>) => void) | ((args: import("@skava/forms/build/dist/new-forms/strategies").EventHandlerArgs<React.FocusEvent<any>, InputState<import("@skava/forms/build/dist/exports").AnyObj>>) => void);
onFocus: ((args: import("@skava/forms/build/dist/new-forms/strategies").EventHandlerArgs<React.FocusEvent<any>, InputState<import("@skava/forms/build/dist/exports").AnyObj>>) => void) | ((args: import("@skava/forms/build/dist/new-forms/strategies").EventHandlerArgs<React.FocusEvent<any>, InputState<import("@skava/forms/build/dist/exports").AnyObj>>) => void);
};
};
/**
* check if it is === (or undefined) for all props on validation
*/
updateValidation(props: EasyFormProviderProps): void;
/**
* allows merging in validation context in an optimized fashioon
*/
componentDidUpdate(props: EasyFormProviderProps): void;
render(): JSX.Element;
}
/**
* @note can be styled like `styled(EasyForm)`
*/
export declare class EasyForm<Props = {}> extends React.PureComponent<EasyFormProviderProps & {
state: OneFormState;
onPreFill?: OnPreFillType;
}> {
render(): JSX.Element;
}