Merge branch 'feat/optional-register-defaults' into 'release/0.9.8'

feat: register-defaults 改为可选项

register-defaults 改为可选项

See merge request !931153
This commit is contained in:
力皓 2020-08-19 12:49:55 +08:00
commit 4642f2dd99
4 changed files with 56 additions and 53 deletions

View File

@ -1,6 +1,6 @@
import { render } from 'react-dom'; import { render } from 'react-dom';
import { createElement } from 'react'; import { createElement } from 'react';
import { Workbench, Skeleton, SettingsPrimaryPane } from '@ali/lowcode-editor-skeleton'; import { Workbench, Skeleton, SettingsPrimaryPane, registerDefaults } from '@ali/lowcode-editor-skeleton';
import { globalContext, Editor } from '@ali/lowcode-editor-core'; import { globalContext, Editor } from '@ali/lowcode-editor-core';
import { Designer } from '@ali/lowcode-designer'; import { Designer } from '@ali/lowcode-designer';
import Outline, { OutlineBackupPane, getTreeMaster } from '@ali/lowcode-plugin-outline-pane'; import Outline, { OutlineBackupPane, getTreeMaster } from '@ali/lowcode-plugin-outline-pane';
@ -19,6 +19,7 @@ globalContext.register(editor, Editor);
export const skeleton = new Skeleton(editor); export const skeleton = new Skeleton(editor);
editor.set(Skeleton, skeleton); editor.set(Skeleton, skeleton);
editor.set('skeleton', skeleton); editor.set('skeleton', skeleton);
registerDefaults();
export const designer = new Designer({ editor: editor }); export const designer = new Designer({ editor: editor });
editor.set(Designer, designer); editor.set(Designer, designer);

View File

@ -9,7 +9,7 @@ import bus from './bus';
import { VE_EVENTS } from './base/const'; import { VE_EVENTS } from './base/const';
import DesignerPlugin from '@ali/lowcode-plugin-designer'; import DesignerPlugin from '@ali/lowcode-plugin-designer';
import { Skeleton, SettingsPrimaryPane } from '@ali/lowcode-editor-skeleton'; import { Skeleton, SettingsPrimaryPane, registerDefaults } from '@ali/lowcode-editor-skeleton';
import { deepValueParser } from './deep-value-parser'; import { deepValueParser } from './deep-value-parser';
import { liveEditingRule, liveEditingSaveHander } from './vc-live-editing'; import { liveEditingRule, liveEditingSaveHander } from './vc-live-editing';
@ -20,6 +20,7 @@ globalContext.register(editor, Editor);
export const skeleton = new Skeleton(editor); export const skeleton = new Skeleton(editor);
editor.set(Skeleton, skeleton); editor.set(Skeleton, skeleton);
editor.set('skeleton', skeleton); editor.set('skeleton', skeleton);
registerDefaults();
export const designer = new Designer({ editor: editor }); export const designer = new Designer({ editor: editor });
editor.set(Designer, designer); editor.set(Designer, designer);

View File

@ -4,5 +4,4 @@ export * from './types';
export * from './components/settings'; export * from './components/settings';
export * from './components/field'; export * from './components/field';
export * from './context'; export * from './context';
export * from './register-defaults';
import './register-defaults';

View File

@ -9,7 +9,8 @@ import addonCombine from './transducers/addon-combine';
import SlotSetter from './components/slot-setter'; import SlotSetter from './components/slot-setter';
import { isJSSlot } from '@ali/lowcode-types'; import { isJSSlot } from '@ali/lowcode-types';
registerSetter('ArraySetter', { export const registerDefaults = () => {
registerSetter('ArraySetter', {
component: ArraySetter, component: ArraySetter,
defaultProps: {}, defaultProps: {},
title: 'ArraySetter', // TODO title: 'ArraySetter', // TODO
@ -19,8 +20,8 @@ registerSetter('ArraySetter', {
}, },
initialValue: [], initialValue: [],
recommend: true, recommend: true,
}); });
registerSetter('ObjectSetter', { registerSetter('ObjectSetter', {
component: ObjectSetter, component: ObjectSetter,
// todo: defaultProps // todo: defaultProps
defaultProps: {}, defaultProps: {},
@ -31,13 +32,13 @@ registerSetter('ObjectSetter', {
}, },
initialValue: {}, initialValue: {},
recommend: true, recommend: true,
}); });
registerSetter('SlotSetter', { registerSetter('SlotSetter', {
component: SlotSetter, component: SlotSetter,
title: { title: {
type: 'i18n', type: 'i18n',
'zh-CN': '插槽输入', 'zh-CN': '插槽输入',
'en-US': 'Slot Setter' 'en-US': 'Slot Setter',
}, },
condition: (field: any) => { condition: (field: any) => {
return isJSSlot(field.getValue()); return isJSSlot(field.getValue());
@ -48,15 +49,16 @@ registerSetter('SlotSetter', {
} }
return { return {
type: 'JSSlot', type: 'JSSlot',
value: value value: value,
}; };
}, },
recommend: true, recommend: true,
}); });
registerSetter('MixedSetter', MixedSetter); registerSetter('MixedSetter', MixedSetter);
// parseProps // parseProps
registerMetadataTransducer(parseProps, 10, 'parse-props'); registerMetadataTransducer(parseProps, 10, 'parse-props');
// addon/platform custom // addon/platform custom
registerMetadataTransducer(addonCombine, 11, 'combine-props'); registerMetadataTransducer(addonCombine, 11, 'combine-props');
};