rjsf-antd
Version:
Ant Design theme, fields and widgets for react-jsonschema-form
23 lines • 1.55 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var react_1 = tslib_1.__importDefault(require("react"));
var antd_1 = require("antd");
var FieldTemplate = function (_a) {
var id = _a.id, children = _a.children, displayLabel = _a.displayLabel, _b = _a.rawErrors, rawErrors = _b === void 0 ? [] : _b, rawHelp = _a.rawHelp, rawDescription = _a.rawDescription, required = _a.required, schema = _a.schema, label = _a.label;
// simply return children, we don't want an object is wrapped in Form.Item
// every property should have their own Form.Item wrapper
if (schema.type === 'object') {
return react_1.default.createElement(react_1.default.Fragment, null, children);
}
return (react_1.default.createElement(antd_1.Form.Item, { validateStatus: rawErrors.length ? 'error' : '', required: required, label: displayLabel && schema.title, htmlFor: id, id: id },
children,
displayLabel && rawDescription ? (react_1.default.createElement(antd_1.Typography, null, rawDescription)) : null,
rawErrors.length > 0 && (react_1.default.createElement(antd_1.List, null, rawErrors.map(function (error, i) {
return (react_1.default.createElement(antd_1.List.Item, { key: i },
react_1.default.createElement(antd_1.List.Item.Meta, { title: error })));
}))),
rawHelp && react_1.default.createElement(antd_1.Tooltip, null, rawHelp)));
};
exports.default = FieldTemplate;
//# sourceMappingURL=FieldTemplate.js.map