@tomino/dynamic-form-semantic-ui
Version:
Semantic UI form renderer based on dynamic form generation
46 lines • 2.23 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const React = tslib_1.__importStar(require("react"));
const group_1 = require("./group");
const input_1 = require("./input");
const select_1 = require("./select");
const textbox_1 = require("./textbox");
const checkbox_1 = require("./checkbox");
const map_1 = require("./map");
const value_1 = require("./value");
const table_1 = require("./table");
const tuple_1 = require("./tuple");
const code_1 = require("./code");
const binding_1 = require("./binding");
function renderControl(props, filter) {
if (props.formElement.bound) {
return React.createElement(binding_1.Binding, Object.assign({ key: props.uid }, props));
}
switch (props.formElement.control) {
case 'Input':
return React.createElement(input_1.Input, Object.assign({ key: props.uid }, props));
case 'Code':
return React.createElement(code_1.CodeEditor, Object.assign({ key: props.uid }, props));
case 'Table':
return React.createElement(table_1.TableView, Object.assign({ key: props.uid }, props));
case 'Value':
return React.createElement(value_1.Value, Object.assign({ key: props.uid }, props));
case 'Group':
return React.createElement(group_1.Group, Object.assign({ key: props.uid }, props, { filter: filter }));
case 'Select':
return React.createElement(select_1.Select, Object.assign({ key: props.uid }, props));
case 'Tuple':
return React.createElement(tuple_1.Tuple, Object.assign({ key: props.uid }, props));
case 'Textarea':
return React.createElement(textbox_1.TextArea, Object.assign({ key: props.uid }, props));
case 'Checkbox':
return React.createElement(checkbox_1.Checkbox, Object.assign({ key: props.uid }, props));
case 'Map':
return React.createElement(map_1.Map, Object.assign({ key: props.uid }, props));
default:
return React.createElement(input_1.Input, Object.assign({ key: props.uid }, props));
}
}
exports.renderControl = renderControl;
//# sourceMappingURL=control_factory.js.map