Skip to content

Commit 88961aa

Browse files
liujupingJackLian
authored andcommitted
feat: optimize ts definition
1 parent aaedee1 commit 88961aa

File tree

10 files changed

+30
-14
lines changed

10 files changed

+30
-14
lines changed

packages/designer/src/document/document-model.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,7 @@ export class DocumentModel implements IDocumentModel {
326326
};
327327
}
328328

329-
onChangeNodeChildren(fn: (info: IPublicTypeOnChangeOptions) => void): IPublicTypeDisposable {
329+
onChangeNodeChildren(fn: (info: IPublicTypeOnChangeOptions<INode>) => void): IPublicTypeDisposable {
330330
this.designer.editor?.eventBus.on(EDITOR_EVENT.NODE_VISIBLE_CHANGE, fn);
331331

332332
return () => {

packages/designer/src/document/node/modal-nodes-manager.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ export class ModalNodesManager implements IModalNodesManager {
8383
}
8484

8585
private addNode(node: INode) {
86-
if (node.componentMeta.isModal) {
86+
if (node?.componentMeta.isModal) {
8787
this.hideModalNodes();
8888
this.modalNodes.push(node);
8989
this.addNodeEvent(node);

packages/engine/src/engine-core.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ const pluginContextApiAssembler: ILowCodePluginContextApiAssembler = {
119119
context.canvas = canvas;
120120
context.plugins = plugins;
121121
context.logger = new Logger({ level: 'warn', bizName: `plugin:${pluginName}` });
122+
context.workspace = workspace;
122123
},
123124
};
124125

packages/shell/src/model/resource.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export class Resource implements IPublicModelResource {
3737
return this[resourceSymbol].children.map((child) => new Resource(child));
3838
}
3939

40-
get viewType() {
41-
return this[resourceSymbol].viewType;
40+
get viewName() {
41+
return this[resourceSymbol].viewName;
4242
}
4343
}

packages/types/src/shell/model/document-model.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,13 +179,13 @@ export interface IPublicModelDocumentModel<
179179
* 当前 document 的节点 children 变更事件
180180
* @param fn
181181
*/
182-
onChangeNodeChildren(fn: (info: IPublicTypeOnChangeOptions) => void): IPublicTypeDisposable;
182+
onChangeNodeChildren(fn: (info: IPublicTypeOnChangeOptions<Node>) => void): IPublicTypeDisposable;
183183

184184
/**
185185
* 当前 document 节点属性修改事件
186186
* @param fn
187187
*/
188-
onChangeNodeProp(fn: (info: IPublicTypePropChangeOptions) => void): IPublicTypeDisposable;
188+
onChangeNodeProp(fn: (info: IPublicTypePropChangeOptions<Node>) => void): IPublicTypeDisposable;
189189

190190
/**
191191
* import schema event

packages/types/src/shell/model/resource.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,15 @@ export interface IPublicModelResource {
55

66
get icon(): ReactElement | undefined;
77

8-
get options(): Object;
8+
get options(): Record<string, any>;
99

1010
get name(): string | undefined;
1111

1212
get type(): string | undefined;
1313

1414
get category(): string | undefined;
15+
16+
get children(): IPublicModelResource[];
17+
18+
get viewName(): string | undefined;
1519
}
Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import { IPublicModelNode } from '..';
22

3-
export interface IPublicTypeOnChangeOptions {
3+
export interface IPublicTypeOnChangeOptions<
4+
Node = IPublicModelNode
5+
> {
46
type: string;
5-
node: IPublicModelNode;
7+
node: Node;
68
}

packages/types/src/shell/type/prop-change-options.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,12 @@ import {
33
IPublicModelProp,
44
} from '../model';
55

6-
export interface IPublicTypePropChangeOptions {
6+
export interface IPublicTypePropChangeOptions<
7+
Node = IPublicModelNode
8+
> {
79
key?: string | number;
810
prop?: IPublicModelProp;
9-
node: IPublicModelNode;
11+
node: Node;
1012
newValue: any;
1113
oldValue: any;
1214
}

packages/types/src/shell/type/resource-list.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,21 @@
11
import { ReactElement } from 'react';
22

33
export interface IPublicResourceData {
4+
/** 资源名字 */
45
resourceName: string;
6+
/** 资源标题 */
57
title: string;
8+
/** 分类 */
69
category?: string;
7-
viewType?: string;
10+
/** 资源视图 */
11+
viewName?: string;
12+
/** 资源 icon */
813
icon?: ReactElement;
14+
/** 资源其他配置 */
915
options: {
1016
[key: string]: any;
1117
};
18+
/** 资源子元素 */
1219
children?: IPublicResourceData[];
1320
}
1421

packages/workspace/src/resource.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ export class Resource implements IPublicModelResource {
1717
return this.resourceType.name;
1818
}
1919

20-
get viewType() {
21-
return this.resourceData.viewType;
20+
get viewName() {
21+
return this.resourceData.viewName || (this.resourceData as any).viewType;
2222
}
2323

2424
get description() {

0 commit comments

Comments
 (0)