1- import { IPublicApiWorkspace } from '@alilc/lowcode-types' ;
1+ import { IPublicApiWorkspace , IPublicResourceList , IPublicResourceOptions } from '@alilc/lowcode-types' ;
22import { Workspace as InnerWorkSpace } from '@alilc/lowcode-workspace' ;
33import { Plugins } from '@alilc/lowcode-shell' ;
44import { Window } from '../model/window' ;
55import { workspaceSymbol } from '../symbols' ;
6+ import { Resource } from '../model' ;
67
78export class Workspace implements IPublicApiWorkspace {
89 readonly [ workspaceSymbol ] : InnerWorkSpace ;
@@ -11,6 +12,18 @@ export class Workspace implements IPublicApiWorkspace {
1112 this [ workspaceSymbol ] = innerWorkspace ;
1213 }
1314
15+ get resourceList ( ) {
16+ return this [ workspaceSymbol ] . getResourceList ( ) . map ( d => new Resource ( d ) ) ;
17+ }
18+
19+ setResourceList ( resourceList : IPublicResourceList ) {
20+ this [ workspaceSymbol ] . setResourceList ( resourceList ) ;
21+ }
22+
23+ onResourceListChange ( fn : ( resourceList : IPublicResourceList ) => void ) : ( ) => void {
24+ return this [ workspaceSymbol ] . onResourceListChange ( fn ) ;
25+ }
26+
1427 get isActive ( ) {
1528 return this [ workspaceSymbol ] . isActive ;
1629 }
@@ -19,12 +32,12 @@ export class Workspace implements IPublicApiWorkspace {
1932 return new Window ( this [ workspaceSymbol ] . window ) ;
2033 }
2134
22- registerResourceType ( resourceName : string , resourceType : 'editor' , options : any ) : void {
23- this [ workspaceSymbol ] . registerResourceType ( resourceName , resourceType , options ) ;
35+ registerResourceType ( name : string , type : 'editor' , options : IPublicResourceOptions ) : void {
36+ this [ workspaceSymbol ] . registerResourceType ( name , type , options ) ;
2437 }
2538
26- openEditorWindow ( resourceName : string , title : string , viewType ?: string ) {
27- this [ workspaceSymbol ] . openEditorWindow ( resourceName , title , viewType ) ;
39+ openEditorWindow ( resourceName : string , title : string , extra : Object , viewName ?: string ) {
40+ this [ workspaceSymbol ] . openEditorWindow ( resourceName , title , extra , viewName ) ;
2841 }
2942
3043 openEditorWindowById ( id : string ) {
0 commit comments