import React from 'react'
import ReactDOM from 'react-dom'
import {
Designer,
DesignerToolsWidget,
ViewToolsWidget,
Workspace,
OutlineTreeWidget,
DragSourceWidget,
HistoryWidget,
MainPanel,
CompositePanel,
WorkspacePanel,
ToolbarPanel,
ViewportPanel,
ViewPanel,
SettingsPanel,
ComponentTreeWidget,
} from '@designable/react'
import { SettingsForm } from '@designable/react-settings-form'
import {
createDesigner,
GlobalRegistry,
Shortcut,
KeyCode,
} from '@designable/core'
import { createDesignableField, createDesignableForm } from '../src'
import {
LogoWidget,
ActionsWidget,
PreviewWidget,
SchemaEditorWidget,
MarkupSchemaWidget,
} from './widgets'
import { saveSchema } from './service'
import 'antd/dist/antd.less'
GlobalRegistry.registerDesignerLocales({
'zh-CN': {
sources: {
Inputs: '输入控件',
Layouts: '布局组件',
Arrays: '自增组件',
Displays: '展示组件',
},
},
'en-US': {
sources: {
Inputs: 'Inputs',
Layouts: 'Layouts',
Arrays: 'Arrays',
Displays: 'Displays',
},
},
})
const Root = createDesignableForm({
registryName: 'Root',
})
const DesignableField = createDesignableField({
registryName: 'DesignableField',
})
const SaveShortCut = new Shortcut({
codes: [
[KeyCode.Meta, KeyCode.S],
[KeyCode.Control, KeyCode.S],
],
handler(ctx) {
saveSchema(ctx.engine)
},
})
const engine = createDesigner({
shortcuts: [SaveShortCut],
})
const App = () => {
return (
} actions={}>
{() => (
)}
{(tree, onChange) => (
)}
{(tree) => }
{(tree) => }
)
}
ReactDOM.render(, document.getElementById('root'))