rjsf-antd
Version:
Ant Design theme, fields and widgets for react-jsonschema-form
25 lines • 1.8 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var react_1 = tslib_1.__importDefault(require("react"));
var ObjectFieldTemplateContext_1 = tslib_1.__importDefault(require("./ObjectFieldTemplateContext"));
var utils_1 = require("react-jsonschema-form/lib/utils");
var ObjectFieldTemplate = function (props) {
var DescriptionField = props.DescriptionField, description = props.description, TitleField = props.TitleField, title = props.title, properties = props.properties, required = props.required, schema = props.schema, uiSchema = props.uiSchema, idSchema = props.idSchema;
return (react_1.default.createElement(ObjectFieldTemplateContext_1.default.Consumer, null, function (templates) {
var objectFieldTemplate = uiSchema['ui:template'];
if (objectFieldTemplate &&
templates.hasOwnProperty(objectFieldTemplate)) {
var ObjectFieldTemplate_1 = templates[objectFieldTemplate];
return react_1.default.createElement(ObjectFieldTemplate_1, tslib_1.__assign({}, props));
}
var uiOptions = utils_1.getUiOptions(uiSchema);
var _a = uiOptions.label, displayLabel = _a === void 0 ? true : _a;
return (react_1.default.createElement(react_1.default.Fragment, null,
displayLabel && (uiSchema['ui:title'] || title) && (react_1.default.createElement(TitleField, { id: idSchema.$id + "-title", title: title, required: required })),
description && (react_1.default.createElement(DescriptionField, { id: idSchema.$id + "-description", description: description })),
properties.map(function (element) { return element.content; })));
}));
};
exports.default = ObjectFieldTemplate;
//# sourceMappingURL=ObjectFieldTemplate.js.map