@cosva-lab/form-builder
Version:
React form builder.
34 lines (31 loc) • 1.56 kB
JavaScript
import { __assign } from './_virtual/_tslib.js';
import React from 'react';
import { useFieldError } from './FieldError/index.js';
import { TranslateFieldError } from './contexts/TranslateFieldErrorProvider/index.js';
function isMessage(args) {
return (args &&
typeof args === 'object' &&
typeof args.message === 'string');
}
var Text = function (_a) {
var children = _a.children;
return (React.createElement("div", null, children));
};
var RenderErrorsDefault = function (_a) {
var errors = _a.errors, field = _a.field;
var ns = field && field.ns;
var common = useFieldError();
return (React.createElement(React.Fragment, null, errors.map(function (error, i) {
if (React.isValidElement(error))
return React.createElement(error.type, __assign({}, error.props, { key: error.key || i }));
return typeof error === 'string' ? (React.createElement(Text, { key: i }, error)) : isMessage(error) ? (React.createElement(Text, { key: i },
React.createElement(TranslateFieldError, __assign({}, __assign(__assign({ ns: ns }, common), error))))) : (Object.values(error).map(function (e, j) {
return (React.createElement(Text, { key: j }, typeof e === 'string'
? e
: (isMessage(e) && (React.createElement(TranslateFieldError, __assign({}, __assign(__assign({ ns: ns }, common), e))))) ||
null));
}));
})));
};
export { RenderErrorsDefault };
//# sourceMappingURL=RenderErrorsDefault.js.map