UNPKG

apollo-form

Version:
31 lines (30 loc) 1.32 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = __importDefault(require("react")); const useFormCtx_1 = __importDefault(require("../hooks/useFormCtx")); const utils_1 = require("../utils"); function FirstError(props) { const apolloForm = useFormCtx_1.default(); const submitted = apolloForm.useState(s => s.isSubmitted); const errors = apolloForm.useState(s => s.errors); const existsChanges = apolloForm.useState(s => s.existsChanges); const responseMessage = apolloForm.useState(s => s.responseMessage); const Component = (props.children || (({ error }) => react_1.default.createElement("span", null, error))); let error = undefined; if (responseMessage && !existsChanges) { error = responseMessage; } const firstErrorMessage = utils_1.firstError(errors); if (((props.showIfSubmitted && submitted) || true) && firstErrorMessage) { error = firstErrorMessage; } if (!error) { return react_1.default.createElement(react_1.default.Fragment, null); } return react_1.default.createElement(Component, { error: error }); } exports.default = FirstError;