@cosva-lab/form-builder
Version:
React form builder.
33 lines (31 loc) • 1.37 kB
JavaScript
import { TranslateFieldError } from "./contexts/TranslateFieldErrorProvider/index.mjs";
import { useFieldError } from "./FieldError/index.mjs";
import React from "react";
//#region src/RenderErrorsDefault.tsx
function isMessage(args) {
return args && typeof args === "object" && typeof args.message === "string";
}
const Text = ({ children }) => /* @__PURE__ */ React.createElement("div", null, children);
const RenderErrorsDefault = ({ errors, field }) => {
const ns = field && field.ns;
const common = useFieldError();
return /* @__PURE__ */ React.createElement(React.Fragment, null, Array.isArray(errors) && errors.map((error, i) => {
if (React.isValidElement(error)) return /* @__PURE__ */ React.createElement(error.type, {
...error.props,
key: error.key || i
});
return typeof error === "string" ? /* @__PURE__ */ React.createElement(Text, { key: i }, error) : isMessage(error) ? /* @__PURE__ */ React.createElement(Text, { key: i }, /* @__PURE__ */ React.createElement(TranslateFieldError, {
ns,
...common,
...error
})) : Object.values(error).map((e, j) => {
return /* @__PURE__ */ React.createElement(Text, { key: j }, typeof e === "string" ? e : isMessage(e) && /* @__PURE__ */ React.createElement(TranslateFieldError, {
ns,
...common,
...e
}) || null);
});
}));
};
//#endregion
export { RenderErrorsDefault };