@prisma-cms/front-editor
Version:
84 lines • 3.6 kB
JavaScript
;
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = __importDefault(require("react"));
const EditorComponent_1 = __importDefault(require("../../../EditorComponent"));
const TextField_1 = __importDefault(require("material-ui/TextField"));
const context_1 = require("../../../context");
const moment_1 = __importDefault(require("moment"));
class TextField extends EditorComponent_1.default {
constructor() {
super(...arguments);
this.onBeforeDrop = () => {
return;
};
this.canBeDropped = () => {
return false;
};
}
renderPanelView(content) {
return super.renderPanelView(content || react_1.default.createElement("div", { className: 'panelTextField' }, "TextField"));
}
renderChildren() {
const _a = this.getComponentProps(this), { name, type } = _a, other = __rest(_a, ["name", "type"]);
return (react_1.default.createElement(context_1.EditableObjectContext.Consumer, { key: "editableobject_context" }, (context) => {
const { getEditor, getObjectWithMutations } = context;
if (!getObjectWithMutations) {
return null;
}
const object = getObjectWithMutations();
let { [name]: value } = object || {};
switch (type) {
case 'date':
{
const date = value ? moment_1.default(value) : '';
if (date && date.isValid()) {
value = date.format('YYYY-MM-DD');
}
}
break;
case 'time':
{
const date = value ? moment_1.default(value) : '';
if (date && date.isValid()) {
value = date.format('HH:mm');
}
}
break;
/**
file value can not be setted
*/
case 'file':
value = undefined;
break;
default:
value = value || '';
}
return getEditor
? getEditor(Object.assign(Object.assign({}, other), { name,
type, value: value, Editor: TextField_1.default }))
: super.renderChildren();
}));
// return super.renderMainView({
// label: "FDSgdsf",
// });
}
}
TextField.defaultProps = Object.assign(Object.assign({}, EditorComponent_1.default.defaultProps), { label: undefined, helperText: undefined, fullWidth: false, multiline: false, type: 'text', hide_wrapper_in_default_mode: true });
TextField.Name = 'TextField';
TextField.help_url = 'https://front-editor.prisma-cms.com/topics/editableobject.html';
exports.default = TextField;
//# sourceMappingURL=index.js.map