UNPKG

@formily/core

Version:

English | [简体中文](./README.zh-cn.md)

71 lines (70 loc) 2.49 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); var model_1 = require("../shared/model"); var shared_1 = require("@formily/shared"); exports.FormState = model_1.createStateModel((_a = (function () { function FormState(state, props) { this.state = state; this.state.initialValues = shared_1.clone(props.initialValues || {}); this.state.values = shared_1.clone(props.values || props.initialValues || {}); this.state.editable = props.editable; } FormState.prototype.computeState = function (draft, prevState) { draft.errors = shared_1.toArr(draft.errors).filter(function (v) { return !!v; }); draft.warnings = shared_1.toArr(draft.warnings).filter(function (v) { return !!v; }); if (draft.errors.length) { draft.invalid = true; draft.valid = false; } else { draft.invalid = false; draft.valid = true; } if (!shared_1.isValid(draft.props)) { draft.props = prevState.props; } if (draft.initialized && prevState.initialized && !draft.modified) { if (!shared_1.isEqual(prevState.values, draft.values)) { draft.modified = true; } } if (draft.validating !== prevState.validating) { if (draft.validating === true) { draft.loading = true; } else if (draft.validating === false) { draft.loading = false; } } if (draft.mounted === true && draft.mounted !== prevState.mounted) { draft.unmounted = false; } if (draft.unmounted === true && draft.unmounted !== prevState.unmounted) { draft.mounted = false; } }; return FormState; }()), _a.displayName = 'FormState', _a.defaultState = { valid: true, invalid: false, loading: false, validating: false, initialized: false, submitting: false, editable: true, modified: false, errors: [], warnings: [], values: {}, initialValues: {}, mounted: false, unmounted: false, props: {} }, _a.defaultProps = { lifecycles: [] }, _a));