|
@@ -2,16 +2,10 @@ import 'antd/dist/antd.less'
|
|
|
import { useMemo } from 'react'
|
|
|
import {
|
|
|
Designer, // 设计器根组件,主要用于下发上下文
|
|
|
- DesignerToolsWidget, // 画板工具挂件
|
|
|
- ViewToolsWidget, // 视图切换工具挂件
|
|
|
Workspace, // 工作区组件,核心组件,用于管理工作区内的拖拽行为,树节点数据等等...
|
|
|
- OutlineTreeWidget, // 大纲树组件,它会自动识别当前工作区,展示出工作区内树节点
|
|
|
ResourceWidget, // 拖拽源挂件
|
|
|
- HistoryWidget, // 历史记录挂件
|
|
|
StudioPanel, // 主布局面板
|
|
|
- CompositePanel, // 左侧组合布局面板
|
|
|
WorkspacePanel, // 工作区布局面板
|
|
|
- ToolbarPanel, // 工具栏布局面板
|
|
|
ViewportPanel, // 视口布局面板
|
|
|
ViewPanel, // 视图布局面板
|
|
|
SettingsPanel, // 右侧配置表单布局面板
|
|
@@ -19,13 +13,7 @@ import {
|
|
|
} from '@designable/react'
|
|
|
import { SettingsForm } from '@designable/react-settings-form'
|
|
|
import { createDesigner, GlobalRegistry, Shortcut, KeyCode } from '@designable/core'
|
|
|
-import {
|
|
|
- LogoWidget,
|
|
|
- ActionsWidget,
|
|
|
- PreviewWidget,
|
|
|
- SchemaEditorWidget,
|
|
|
- MarkupSchemaWidget
|
|
|
-} from './widgets'
|
|
|
+import { ActionsWidget } from './widgets'
|
|
|
import { saveSchema } from './service'
|
|
|
import {
|
|
|
Form,
|
|
@@ -76,78 +64,70 @@ const Designable = () => {
|
|
|
)
|
|
|
|
|
|
return (
|
|
|
- <Designer engine={engine}>
|
|
|
- <StudioPanel logo={<LogoWidget />} actions={<ActionsWidget />}>
|
|
|
- <CompositePanel>
|
|
|
- <CompositePanel.Item title="panels.Component" icon="Component">
|
|
|
- <ResourceWidget
|
|
|
- title="sources.Inputs"
|
|
|
- sources={[
|
|
|
- Input,
|
|
|
- Password,
|
|
|
- NumberPicker,
|
|
|
- Select,
|
|
|
- TreeSelect,
|
|
|
- Cascader,
|
|
|
- Checkbox,
|
|
|
- Radio,
|
|
|
- DatePicker,
|
|
|
- TimePicker,
|
|
|
- Upload
|
|
|
- ]}
|
|
|
- />
|
|
|
- </CompositePanel.Item>
|
|
|
- <CompositePanel.Item title="panels.OutlinedTree" icon="Outline">
|
|
|
- <OutlineTreeWidget />
|
|
|
- </CompositePanel.Item>
|
|
|
- <CompositePanel.Item title="panels.History" icon="History">
|
|
|
- <HistoryWidget />
|
|
|
- </CompositePanel.Item>
|
|
|
- </CompositePanel>
|
|
|
- <Workspace id="form">
|
|
|
- <WorkspacePanel>
|
|
|
- <ToolbarPanel>
|
|
|
+ <div className={styles.zhDesignable}>
|
|
|
+ <Designer engine={engine}>
|
|
|
+ <StudioPanel actions={<ActionsWidget />}>
|
|
|
+ <ResourceWidget
|
|
|
+ title="sources.Inputs"
|
|
|
+ sources={[
|
|
|
+ Input,
|
|
|
+ Password,
|
|
|
+ NumberPicker,
|
|
|
+ Select,
|
|
|
+ TreeSelect,
|
|
|
+ Cascader,
|
|
|
+ Checkbox,
|
|
|
+ Radio,
|
|
|
+ DatePicker,
|
|
|
+ TimePicker,
|
|
|
+ Upload
|
|
|
+ ]}
|
|
|
+ />
|
|
|
+ <Workspace id="form">
|
|
|
+ <WorkspacePanel>
|
|
|
+ {/* <ToolbarPanel>
|
|
|
<DesignerToolsWidget use={['HISTORY', 'CURSOR']} />
|
|
|
<ViewToolsWidget use={['DESIGNABLE', 'JSONTREE', 'MARKUP', 'PREVIEW']} />
|
|
|
- </ToolbarPanel>
|
|
|
- <ViewportPanel>
|
|
|
- <ViewPanel type="DESIGNABLE">
|
|
|
- {() => (
|
|
|
- <ComponentTreeWidget
|
|
|
- components={{
|
|
|
- Form,
|
|
|
- Field,
|
|
|
- Input,
|
|
|
- Select,
|
|
|
- TreeSelect,
|
|
|
- Cascader,
|
|
|
- Radio,
|
|
|
- Checkbox,
|
|
|
- NumberPicker,
|
|
|
- Password,
|
|
|
- DatePicker,
|
|
|
- TimePicker,
|
|
|
- Upload,
|
|
|
- Switch
|
|
|
- }}
|
|
|
- />
|
|
|
- )}
|
|
|
- </ViewPanel>
|
|
|
- <ViewPanel type="JSONTREE" scrollable={false}>
|
|
|
- {(tree, onChange) => <SchemaEditorWidget tree={tree} onChange={onChange} />}
|
|
|
- </ViewPanel>
|
|
|
- <ViewPanel type="MARKUP" scrollable={false}>
|
|
|
- {tree => <MarkupSchemaWidget tree={tree} />}
|
|
|
- </ViewPanel>
|
|
|
- <ViewPanel type="PREVIEW">{tree => <PreviewWidget tree={tree} />}</ViewPanel>
|
|
|
- </ViewportPanel>
|
|
|
- </WorkspacePanel>
|
|
|
- </Workspace>
|
|
|
- <SettingsPanel title="panels.PropertySettings">
|
|
|
- <SettingsForm uploadAction="https://www.mocky.io/v2/5cc8019d300000980a055e76" />
|
|
|
- </SettingsPanel>
|
|
|
- </StudioPanel>
|
|
|
- </Designer>
|
|
|
+ </ToolbarPanel> */}
|
|
|
+ <ViewportPanel>
|
|
|
+ <ViewPanel type="DESIGNABLE">
|
|
|
+ {() => (
|
|
|
+ <ComponentTreeWidget
|
|
|
+ components={{
|
|
|
+ Form,
|
|
|
+ Field,
|
|
|
+ Input,
|
|
|
+ Select,
|
|
|
+ TreeSelect,
|
|
|
+ Cascader,
|
|
|
+ Radio,
|
|
|
+ Checkbox,
|
|
|
+ NumberPicker,
|
|
|
+ Password,
|
|
|
+ DatePicker,
|
|
|
+ TimePicker,
|
|
|
+ Upload,
|
|
|
+ Switch
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ )}
|
|
|
+ </ViewPanel>
|
|
|
+ {/* <ViewPanel type="JSONTREE" scrollable={false}>
|
|
|
+ {(tree, onChange) => <SchemaEditorWidget tree={tree} onChange={onChange} />}
|
|
|
+ </ViewPanel>
|
|
|
+ <ViewPanel type="MARKUP" scrollable={false}>
|
|
|
+ {tree => <MarkupSchemaWidget tree={tree} />}
|
|
|
+ </ViewPanel>
|
|
|
+ <ViewPanel type="PREVIEW">{tree => <PreviewWidget tree={tree} />}</ViewPanel> */}
|
|
|
+ </ViewportPanel>
|
|
|
+ </WorkspacePanel>
|
|
|
+ </Workspace>
|
|
|
+ <SettingsPanel title="panels.PropertySettings">
|
|
|
+ <SettingsForm uploadAction="https://www.mocky.io/v2/5cc8019d300000980a055e76" />
|
|
|
+ </SettingsPanel>
|
|
|
+ </StudioPanel>
|
|
|
+ </Designer>
|
|
|
+ </div>
|
|
|
)
|
|
|
}
|
|
|
|