forked from alibaba/lowcode-engine
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathresource.ts
More file actions
55 lines (42 loc) · 1.06 KB
/
resource.ts
File metadata and controls
55 lines (42 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import { IPublicModelResource } from '@alilc/lowcode-types';
import { IResource } from '@alilc/lowcode-workspace';
import { resourceSymbol } from '../symbols';
export class Resource implements IPublicModelResource {
readonly [resourceSymbol]: IResource;
constructor(resource: IResource) {
this[resourceSymbol] = resource;
}
get title() {
return this[resourceSymbol].title;
}
get id() {
return this[resourceSymbol].id;
}
get icon() {
return this[resourceSymbol].icon;
}
get options() {
return this[resourceSymbol].options;
}
get name() {
return this[resourceSymbol].resourceType.name;
}
get config() {
return this[resourceSymbol].config;
}
get type() {
return this[resourceSymbol].resourceType.type;
}
get category() {
return this[resourceSymbol].category;
}
get description() {
return this[resourceSymbol].description;
}
get children() {
return this[resourceSymbol].children.map((child) => new Resource(child));
}
get viewName() {
return this[resourceSymbol].viewName;
}
}