mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2026-06-02 05:30:53 +00:00
41 lines
921 B
TypeScript
41 lines
921 B
TypeScript
import { windowSymbol } from '../symbols';
|
|
import { IPublicModelResource, IPublicModelWindow } from '@alilc/lowcode-types';
|
|
import { EditorWindow } from '@alilc/lowcode-workspace';
|
|
import { Resource } from './resource';
|
|
|
|
export class Window implements IPublicModelWindow {
|
|
private readonly [windowSymbol]: EditorWindow;
|
|
|
|
get id() {
|
|
return this[windowSymbol]?.id;
|
|
}
|
|
|
|
get title() {
|
|
return this[windowSymbol].title;
|
|
}
|
|
|
|
get icon() {
|
|
return this[windowSymbol].icon;
|
|
}
|
|
|
|
get resource(): IPublicModelResource {
|
|
return new Resource(this[windowSymbol].resource);
|
|
}
|
|
|
|
constructor(editorWindow: EditorWindow) {
|
|
this[windowSymbol] = editorWindow;
|
|
}
|
|
|
|
importSchema(schema: any): any {
|
|
this[windowSymbol].importSchema(schema);
|
|
}
|
|
|
|
changeViewType(viewName: string) {
|
|
this[windowSymbol].changeViewType(viewName);
|
|
}
|
|
|
|
async save() {
|
|
return await this[windowSymbol].save();
|
|
}
|
|
}
|