@tomino/dynamic-form-semantic-ui
Version:
Semantic UI form renderer based on dynamic form generation
50 lines • 2.08 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const common_1 = require("../common");
const helpers_1 = require("../helpers");
var properties_styles_1 = require("./properties_styles");
exports.addButton = properties_styles_1.addButton;
exports.celled = properties_styles_1.celled;
exports.controlMargin = properties_styles_1.controlMargin;
exports.styledTableRow = properties_styles_1.styledTableRow;
exports.tableHeader = properties_styles_1.tableHeader;
exports.tableRowAuto = properties_styles_1.tableRowAuto;
exports.tableRowFull = properties_styles_1.tableRowFull;
exports.tableRowWithDelete = properties_styles_1.tableRowWithDelete;
function parseProps(props, editorState, resolveBoundProperty = false, propName = undefined) {
let value = helpers_1.getValue(props, editorState, propName, undefined, props.extra ? `.${props.extra}` : '');
if (resolveBoundProperty && value && Object.keys(value).indexOf('source') >= 0) {
if (!helpers_1.isNullOrEmpty(value.value)) {
value = value.value;
}
else if (!helpers_1.isNullOrEmpty(value.source)) {
value = value.source;
}
else if (!helpers_1.isNullOrEmpty(value.handler)) {
value = value.handler;
}
else {
value = null;
}
}
return {
props: props.formElement.props,
value,
error: common_1.prop(props.formElement) ? props.owner.getError(common_1.prop(props.formElement)) : null
};
}
exports.parseProps = parseProps;
function onChangeHandler(e, sui) {
let currentValue = e.currentTarget.type === 'checkbox'
? e.currentTarget.checked
: sui
? sui.value
: e.currentTarget.value;
helpers_1.setValue(this.props, this.editorState, currentValue, this.propName, this.props.extra ? `.${this.props.extra}` : '');
}
exports.onChangeHandler = onChangeHandler;
function clearHandler() {
helpers_1.setValue(this.props, null, '');
}
exports.clearHandler = clearHandler;
//# sourceMappingURL=properties_common.js.map