@prisma-cms/front-editor
Version:
52 lines • 2.01 kB
JavaScript
;
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"));
class LanguageRouter extends EditorComponent_1.default {
constructor() {
super(...arguments);
this.onBeforeDrop = () => {
return;
};
}
renderPanelView(content) {
return super.renderPanelView(content || react_1.default.createElement("div", { className: 'panelLanguageRouter' }, "Language Router"));
}
getRootElement() {
const { tag } = this.getComponentProps(this);
return tag;
}
renderChildren() {
const { activeItem } = this.getEditorContext();
const { getLanguage } = this.context;
const language = getLanguage();
let children = super.renderChildren();
if (children) {
if (activeItem &&
(activeItem === this || activeItem.props.parent === this)) {
return;
}
else {
children = children.filter((n) => {
if (n) {
const { props } = n.props;
const { lang } = props || {};
if (lang && lang !== language) {
return false;
}
}
return true;
});
}
}
return children;
}
}
LanguageRouter.defaultProps = Object.assign(Object.assign({}, EditorComponent_1.default.defaultProps), { tag: 'div', hide_wrapper_in_default_mode: true });
LanguageRouter.Name = 'LanguageRouter';
LanguageRouter.help_url = 'https://front-editor.prisma-cms.com/topics/language-router.html';
exports.default = LanguageRouter;
//# sourceMappingURL=index.js.map