UNPKG

react-form-package

Version:

A declarative form component with inbuilt validation and state management

56 lines (49 loc) 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.initialState = void 0; var _checkFormInput = require("../checkFormInput"); var initialState = function initialState(props, data) { var text = props.type === 'text' || props.type === 'textarea'; var password = props.type === 'password'; var number = props.type === 'number'; var date = props.type === 'date'; var value = props.type === 'checkbox' ? props.checked || false : props.value || ''; var checked = props.type === 'checkbox' ? props.checked || false : undefined; var max; var min; if (text || password) { max = props.max && parseInt(props.max, 10); min = props.min && parseInt(props.min, 10); } else if (number) { max = props.max && parseInt(props.max, 10); min = props.min && parseInt(props.min, 10); } else if (date) { max = props.max; // eslint-disable-line min = props.min; // eslint-disable-line } var rules = { type: props.type, min: min, max: max, required: props.required || false, match: props.match, sameAs: props.sameAs, validate: props.validate }; var valid = (0, _checkFormInput.checkFormInput)(rules, value, data); return { initialValue: value, dirty: false, pristine: true, visited: false, touched: false, checked: checked, value: value, valid: valid, invalid: !valid, rules: rules }; }; exports.initialState = initialState;