UNPKG

@tomino/dynamic-form-semantic-ui

Version:

Semantic UI form renderer based on dynamic form generation

38 lines 2.33 kB
import React from 'react'; import { observer } from 'mobx-react'; import { SplitPane } from 'react-multi-split-pane'; import { EditorContext } from './editor_context'; import { PagesView } from './pages/pages_view'; import { DatasetElements } from './dataset/dataset_elements'; import { ToolBox } from './toolbox/tool_box'; import { DatasetTypes } from './dataset/dataset_types'; import { OutlineView } from './outline/outline_view'; import { List } from './editor_styles'; export const FromEditorLeftPanel = observer(() => { const context = React.useContext(EditorContext); let component; switch (context.project.state.selectedLeftPane) { case 'pages': component = React.createElement(PagesView, { form: context.form }); break; case 'data': component = (React.createElement(SplitPane, { className: "dataPanes", split: "horizontal", minSize: 100, defaultSizes: JSON.parse(localStorage.getItem('CORPIX.h-split-tools')) || [280], onDragFinished: size => localStorage.setItem('CORPIX.h-split-tools', JSON.stringify(size)) }, React.createElement(DatasetElements, { schema: context.schema, types: context.types, owner: context.data }), React.createElement(DatasetTypes, { schema: context.schema, types: context.types }))); break; case 'components': component = React.createElement(ToolBox, { catalogue: context.editorCatalogue }); break; case 'outline': component = React.createElement(OutlineView, null); break; case 'all': component = (React.createElement(SplitPane, { className: "dataPanes", split: "horizontal", minSize: 40, defaultSizes: JSON.parse(localStorage.getItem('CORPIX.all-split')), onDragFinished: size => localStorage.setItem('CORPIX.all-split', JSON.stringify(size)) }, React.createElement(PagesView, { form: context.form }), React.createElement(OutlineView, null), React.createElement(DatasetElements, { schema: context.schema, types: context.types, owner: context.data }), React.createElement(ToolBox, { catalogue: context.editorCatalogue }))); } return React.createElement(List, null, component); }); //# sourceMappingURL=form_editor_left_panel.js.map