Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/ui / dist / forms / form / ObserverForm.d.ts
Size: Mime:
import React from 'react';
import { Serializable } from '@skava/typings';
import InputState from 'src/forms/input/InputState';
import Input from 'src/forms/input/ObserverInput';
import { InputStateType } from '../input/typings';
import { ObserverFormClassListType, InputStateOptions, InputStateFromArgs, ObserverFormProps } from './typings';
import FormState from './FormState';
import { FormElement } from './_elements';
declare class ObserverForm<Props extends ObserverFormProps = ObserverFormProps, State extends FormState = FormState> extends React.Component<Props, State> {
    /**
     * @todo !!! PUT THESE AS GETTERS AND SETTERS TO DEPRECATE
     */
    /**
     * @todo renderProps
     */
    Form: typeof FormElement;
    Input: typeof Input;
    SubmitButton: (props: any) => JSX.Element;
    CancelButton: (props: any) => JSX.Element;
    shouldResetFormOnUnmount: boolean;
    /**
     * should have a simple object with wording & classnames, one property
     * @todo could also pass these in via defaultProps
     */
    defaultSubmitButtonLabel: string;
    defaultCancelButtonLabel: string;
    wording: Object;
    /**
     * state...
     */
    isSubmitButtonNeeded: boolean;
    isCancelButtonNeeded: boolean;
    handleCancel: (event: Event) => void;
    /**
     * @todo @important @deprecated @invalid @name
     */
    SubmitCustomClass: string;
    CancelCustomClass: string;
    ButtonGroupCustomClass: string;
    classList: ObserverFormClassListType;
    submitDataQa?: string;
    cancelDataQa?: string;
    static from(list: Array<InputStateOptions> | InputStateFromArgs): (props: any) => JSX.Element;
    constructor(props: Props);
    validateInputItem: (item: any) => void;
    /**
     * @todo - debounce
     */
    validateForm(): State["hasAllValidInputs"];
    /**
     * @tutorial https://mobx.js.org/refguide/create-transformer.html
     * @description Lifecycle event hook
     * @listens onSubmit
     * @see handleSubmit
     */
    onSubmitValid(serialized: Serializable): void;
    /**
     * @description Lifecycle event hook
     * @listens onSubmit
     * @see handleSubmit
     */
    onSubmitError(serialized: Serializable): void;
    /**
     * @todo - using super when it's a bound fn may not work?
     * @listens onSubmit
     */
    goToTop: () => void;
    handleSubmit: (event: Event) => any;
    /**
     * @todo @name handleCancelClick
     * @deprecated should remove, not part of form at all
     */
    onCancelClick: (event: Event) => void;
    renderInput: (item: InputState<any>, index: number) => JSX.Element | "";
    renderInputList(): (JSX.Element | "")[];
    /**
     * @see componentWillMount
     * @listens componentWillMount
     * @event prefil
     */
    onPrefil(inputState: InputState): void;
    onInputInit(input: InputState, index?: number): void;
    /**
     * @private
     * @inheritdoc
     * @description compat
     *              so it returns the inputState
     *              will deprecate when not using .map
     */
    _onPrefil: (inputState: InputState<any>) => InputState<any>;
    _onInputInit: (input: InputState<any>, index: number) => void;
    _toInput: (input: InputState<any>, index: number) => any;
    /**
     * @todo put prefil as action on state
     * @todo do a timeout loader
     *
     * !!!!!! changed from componentWillMount => componentDidMount
     *
     * @name onPrefil
     * @name prefilItem
     * @name prefilInputItem
     * @name prefilInput
     */
    componentDidMount(): void;
    componentWillReceiveProps(prevProps: Props, nextProps: Props): void;
    componentWillUnmount(): void;
    /**
     * @todo this is FormState or InputStateTType?
     */
    resetFormState(inputState: InputStateType): void;
    render(): JSX.Element;
}
export { ObserverForm as ObservableForm };
export { ObserverForm as Form };
export { ObserverForm };
export default ObserverForm;