@tomino/dynamic-form-semantic-ui
Version:
Semantic UI form renderer based on dynamic form generation
18 lines • 1.7 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const react_1 = tslib_1.__importDefault(require("react"));
const mobx_react_1 = require("mobx-react");
const layouts_common_editor_1 = require("../editor/layouts_common_editor");
const editor_context_1 = require("../editor/editor_context");
exports.TemplateEditor = mobx_react_1.observer((props) => {
const { Component, Template, options, formElement, catalogue, owner, handlers } = props;
const context = react_1.default.useContext(editor_context_1.EditorContext);
const template = formElement.props.template;
const index = template ? options.findIndex(o => o.value === template) : 0;
return (react_1.default.createElement(react_1.default.Fragment, null,
index === 0 && (react_1.default.createElement(Component, { formElement: formElement, catalogue: catalogue, owner: owner, handlers: handlers, extra: props.extra, EmptyCell: (props) => (react_1.default.createElement(layouts_common_editor_1.SingleDropCell, Object.assign({ id: "0" }, props, { editorState: context }))) })),
index > 0 &&
(Template ? (react_1.default.createElement(Template, Object.assign({}, props, { templateIndex: index - 1 }))) : (react_1.default.createElement(layouts_common_editor_1.EditorControl, { formElement: formElement.elements.length > index - 1 ? formElement.elements[index - 1] : undefined, editorState: context, props: props, EmptyCell: (props) => (react_1.default.createElement(layouts_common_editor_1.SingleDropCell, Object.assign({ id: "0" }, props, { editorState: context, elementIndex: index - 1 }))) })))));
});
//# sourceMappingURL=template_editor.js.map