@@ -39,12 +39,14 @@ import { ComponentActions } from '../component-actions';
3939const logger = new Logger ( { level : 'warn' , bizName : 'designer' } ) ;
4040
4141export interface DesignerProps {
42+ [ key : string ] : any ;
4243 editor : IPublicModelEditor ;
4344 shellModelFactory : IShellModelFactory ;
4445 className ?: string ;
4546 style ?: object ;
4647 defaultSchema ?: IPublicTypeProjectSchema ;
4748 hotkeys ?: object ;
49+ viewName ?: string ;
4850 simulatorProps ?: object | ( ( document : DocumentModel ) => object ) ;
4951 simulatorComponent ?: ComponentType < any > ;
5052 dragGhostComponent ?: ComponentType < any > ;
@@ -55,8 +57,6 @@ export interface DesignerProps {
5557 onDragstart ?: ( e : ILocateEvent ) => void ;
5658 onDrag ?: ( e : ILocateEvent ) => void ;
5759 onDragend ?: ( e : { dragObject : IPublicModelDragObject ; copy : boolean } , loc ?: DropLocation ) => void ;
58- viewName ?: string ;
59- [ key : string ] : any ;
6060}
6161
6262export interface IDesigner {
@@ -71,7 +71,9 @@ export interface IDesigner {
7171}
7272
7373export class Designer implements IDesigner {
74- dragon : Dragon ;
74+ public dragon : Dragon ;
75+
76+ public viewName : string | undefined ;
7577
7678 readonly componentActions = new ComponentActions ( ) ;
7779
@@ -87,6 +89,24 @@ export class Designer implements IDesigner {
8789
8890 readonly shellModelFactory : IShellModelFactory ;
8991
92+ private _dropLocation ?: DropLocation ;
93+
94+ private propsReducers = new Map < IPublicEnumTransformStage , IPublicTypePropsTransducer [ ] > ( ) ;
95+
96+ private _lostComponentMetasMap = new Map < string , ComponentMeta > ( ) ;
97+
98+ private props ?: DesignerProps ;
99+
100+ private oobxList : OffsetObserver [ ] = [ ] ;
101+
102+ @obx . ref private _componentMetasMap = new Map < string , ComponentMeta > ( ) ;
103+
104+ @obx . ref private _simulatorComponent ?: ComponentType < any > ;
105+
106+ @obx . ref private _simulatorProps ?: object | ( ( project : Project ) => object ) ;
107+
108+ @obx . ref private _suspensed = false ;
109+
90110 get currentDocument ( ) {
91111 return this . project . currentDocument ;
92112 }
@@ -99,8 +119,6 @@ export class Designer implements IDesigner {
99119 return this . currentDocument ?. selection ;
100120 }
101121
102- viewName : string | undefined ;
103-
104122 constructor ( props : DesignerProps ) {
105123 makeObservable ( this ) ;
106124 const { editor, viewName, shellModelFactory } = props ;
@@ -234,8 +252,6 @@ export class Designer implements IDesigner {
234252 this . editor . eventBus . emit ( `designer.${ event } ` , ...args ) ;
235253 }
236254
237- private _dropLocation ?: DropLocation ;
238-
239255 get dropLocation ( ) {
240256 return this . _dropLocation ;
241257 }
@@ -270,8 +286,6 @@ export class Designer implements IDesigner {
270286 return new Scroller ( scrollable ) ;
271287 }
272288
273- private oobxList : OffsetObserver [ ] = [ ] ;
274-
275289 createOffsetObserver ( nodeInstance : INodeSelector ) : OffsetObserver | null {
276290 const oobx = createOffsetObserver ( nodeInstance ) ;
277291 this . clearOobxList ( ) ;
@@ -342,8 +356,6 @@ export class Designer implements IDesigner {
342356 return { target, index } ;
343357 }
344358
345- private props ?: DesignerProps ;
346-
347359 setProps ( nextProps : DesignerProps ) {
348360 const props = this . props ? { ...this . props , ...nextProps } : nextProps ;
349361 if ( this . props ) {
@@ -421,14 +433,10 @@ export class Designer implements IDesigner {
421433 return this . props ?. [ key ] ;
422434 }
423435
424- @obx . ref private _simulatorComponent ?: ComponentType < any > ;
425-
426436 @computed get simulatorComponent ( ) : ComponentType < any > | undefined {
427437 return this . _simulatorComponent ;
428438 }
429439
430- @obx . ref private _simulatorProps ?: object | ( ( project : Project ) => object ) ;
431-
432440 @computed get simulatorProps ( ) : object {
433441 if ( typeof this . _simulatorProps === 'function' ) {
434442 return this . _simulatorProps ( this . project ) ;
@@ -451,8 +459,6 @@ export class Designer implements IDesigner {
451459 } ;
452460 }
453461
454- @obx . ref private _suspensed = false ;
455-
456462 get suspensed ( ) : boolean {
457463 return this . _suspensed ;
458464 }
@@ -473,16 +479,15 @@ export class Designer implements IDesigner {
473479 this . project . load ( schema ) ;
474480 }
475481
476- @obx . ref private _componentMetasMap = new Map < string , ComponentMeta > ( ) ;
477-
478- private _lostComponentMetasMap = new Map < string , ComponentMeta > ( ) ;
479-
480482 buildComponentMetasMap ( metas : IPublicTypeComponentMetadata [ ] ) {
481483 metas . forEach ( ( data ) => this . createComponentMeta ( data ) ) ;
482484 }
483485
484- createComponentMeta ( data : IPublicTypeComponentMetadata ) : ComponentMeta {
486+ createComponentMeta ( data : IPublicTypeComponentMetadata ) : ComponentMeta | null {
485487 const key = data . componentName ;
488+ if ( ! key ) {
489+ return null ;
490+ }
486491 let meta = this . _componentMetasMap . get ( key ) ;
487492 if ( meta ) {
488493 meta . setMetadata ( data ) ;
@@ -552,8 +557,6 @@ export class Designer implements IDesigner {
552557 return maps ;
553558 }
554559
555- private propsReducers = new Map < IPublicEnumTransformStage , IPublicTypePropsTransducer [ ] > ( ) ;
556-
557560 transformProps ( props : IPublicTypeCompositeObject | IPublicTypePropsList , node : Node , stage : IPublicEnumTransformStage ) {
558561 if ( Array . isArray ( props ) ) {
559562 // current not support, make this future
0 commit comments