Sidebar-SinkComponent.js
9.07 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
(function () {
// Adds Atlassian shapes
// sink label
Sidebar.prototype.addThingsKitSinkPalette = function () {
const gn = 'mxgraph.sink';
const dt = 'sink';
const label = mxResources.get('sink')
const width = 66;
const height = 74;
const prefix = `image;image=${window?.PROJECT_ENV.base}/webapp/images/thingskit/libs/`
const defaultStyle = ';imageAspect=0;'
this.setCurrentSearchEntryLibrary(dt);
const { COMPONENT_KEY, CATEGORY } = window.CellAttributeKeyEnum
function createUserObject(attribute) {
attribute = Object.assign({ [COMPONENT_KEY]: '', [CATEGORY]: '' }, attribute || {})
var xmlElement = mxUtils.createXmlDocument().createElement('UserObject');
Object.keys(attribute).forEach(key => {
xmlElement.setAttribute(key, attribute[key]);
})
return xmlElement
}
// 自定义属性
const cellAttribute = {
[COMPONENT_KEY]: 'Image',
[CATEGORY]: 'DEFAULT'
}
const graphPathLib = [
{ name: mxResources.get('sink1'), path: 'sink/5加仑桶.svg' },
{ name: mxResources.get('sink2'), path: 'sink/不锈钢柱形储罐.svg' },
{ name: mxResources.get('sink3'), path: 'sink/乙醇存储.svg' },
{ name: mxResources.get('sink4'), path: 'sink/产品.svg' },
{ name: mxResources.get('sink5'), path: 'sink/仓式泵.svg' },
{ name: mxResources.get('sink6'), path: 'sink/保温罐.svg' },
{ name: mxResources.get('sink7'), path: 'sink/储气罐.svg' },
{ name: mxResources.get('sink8'), path: 'sink/储罐 1.svg' },
{ name: mxResources.get('sink9'), path: 'sink/储罐 10.svg' },
{ name: mxResources.get('sink10'), path: 'sink/储罐 11.svg' },
{ name: mxResources.get('sink11'), path: 'sink/储罐 12.svg' },
{ name: mxResources.get('sink12'), path: 'sink/储罐 13.svg' },
{ name: mxResources.get('sink13'), path: 'sink/储罐 14.svg' },
{ name: mxResources.get('sink14'), path: 'sink/储罐 15.svg' },
{ name: mxResources.get('sink15'), path: 'sink/储罐 16.svg' },
{ name: mxResources.get('sink16'), path: 'sink/储罐 2.svg' },
{ name: mxResources.get('sink17'), path: 'sink/储罐 3.svg' },
{ name: mxResources.get('sink18'), path: 'sink/储罐 4.svg' },
{ name: mxResources.get('sink19'), path: 'sink/储罐 5.svg' },
{ name: mxResources.get('sink20'), path: 'sink/储罐 6.svg' },
{ name: mxResources.get('sink21'), path: 'sink/储罐 7.svg' },
{ name: mxResources.get('sink22'), path: 'sink/储罐 8.svg' },
{ name: mxResources.get('sink23'), path: 'sink/储罐 9.svg' },
{ name: mxResources.get('sink24'), path: 'sink/储罐.svg' },
{ name: mxResources.get('sink25'), path: 'sink/储罐支架 1.svg' },
{ name: mxResources.get('sink26'), path: 'sink/储罐支架 2.svg' },
{ name: mxResources.get('sink27'), path: 'sink/储罐群.svg' },
{ name: mxResources.get('sink28'), path: 'sink/光滑筒仓.svg' },
{ name: mxResources.get('sink29'), path: 'sink/剖面储罐.svg' },
{ name: mxResources.get('sink30'), path: 'sink/十分光滑的储蓄罐.svg' },
{ name: mxResources.get('sink31'), path: 'sink/压力容器.svg' },
{ name: mxResources.get('sink32'), path: 'sink/原水箱.svg' },
{ name: mxResources.get('sink33'), path: 'sink/反应器 1.svg' },
{ name: mxResources.get('sink34'), path: 'sink/反应器 2.svg' },
{ name: mxResources.get('sink35'), path: 'sink/反应器 3.svg' },
{ name: mxResources.get('sink36'), path: 'sink/反应器 4.svg' },
{ name: mxResources.get('sink37'), path: 'sink/反应器 tank.svg' },
{ name: mxResources.get('sink38'), path: 'sink/同质化储罐.svg' },
{ name: mxResources.get('sink39'), path: 'sink/地下储罐.svg' },
{ name: mxResources.get('sink40'), path: 'sink/大型锥底聚乙烯储罐.svg' },
{ name: mxResources.get('sink41'), path: 'sink/存储设备 1.svg' },
{ name: mxResources.get('sink42'), path: 'sink/存储设备 2.svg' },
{ name: mxResources.get('sink43'), path: 'sink/存储设备 3.svg' },
{ name: mxResources.get('sink44'), path: 'sink/存储设备 4.svg' },
{ name: mxResources.get('sink45'), path: 'sink/家用热水储罐.svg' },
{ name: mxResources.get('sink46'), path: 'sink/容器.svg' },
{ name: mxResources.get('sink47'), path: 'sink/带搅拌器的反应器.svg' },
{ name: mxResources.get('sink48'), path: 'sink/带搅拌机的加强型储罐.svg' },
{ name: mxResources.get('sink49'), path: 'sink/带梯子的储罐.svg' },
{ name: mxResources.get('sink50'), path: 'sink/带混合器的聚乙烯储罐.svg' },
{ name: mxResources.get('sink51'), path: 'sink/带舱口和梯子的反应器.svg' },
{ name: mxResources.get('sink52'), path: 'sink/带铆钉和梯子的储罐.svg' },
{ name: mxResources.get('sink53'), path: 'sink/带铆钉的储罐.svg' },
{ name: mxResources.get('sink54'), path: 'sink/扁容器 1.svg' },
{ name: mxResources.get('sink55'), path: 'sink/扁容器 2.svg' },
{ name: mxResources.get('sink56'), path: 'sink/扁容器 3.svg' },
{ name: mxResources.get('sink57'), path: 'sink/扁容器 4.svg' },
{ name: mxResources.get('sink58'), path: 'sink/扁容器 5.svg' },
{ name: mxResources.get('sink59'), path: 'sink/扁容器 6.svg' },
{ name: mxResources.get('sink60'), path: 'sink/扁容器 7.svg' },
{ name: mxResources.get('sink61'), path: 'sink/搅拌罐.svg' },
{ name: mxResources.get('sink62'), path: 'sink/料斗.svg' },
{ name: mxResources.get('sink63'), path: 'sink/日量熔槽.svg' },
{ name: mxResources.get('sink64'), path: 'sink/暂存罐.svg' },
{ name: mxResources.get('sink65'), path: 'sink/有双支撑脚的的储罐.svg' },
{ name: mxResources.get('sink66'), path: 'sink/有支脚的圆形反应堆.svg' },
{ name: mxResources.get('sink67'), path: 'sink/有植物的池塘.svg' },
{ name: mxResources.get('sink68'), path: 'sink/有直梯的筒仓.svg' },
{ name: mxResources.get('sink69'), path: 'sink/有舱口的储蓄.svg' },
{ name: mxResources.get('sink70'), path: 'sink/有螺旋梯的筒仓.svg' },
{ name: mxResources.get('sink71'), path: 'sink/有铆钉的球形储罐.svg' },
{ name: mxResources.get('sink72'), path: 'sink/桶.svg' },
{ name: mxResources.get('sink73'), path: 'sink/椭圆散装储罐.svg' },
{ name: mxResources.get('sink74'), path: 'sink/模制聚乙烯罐.svg' },
{ name: mxResources.get('sink75'), path: 'sink/气缸.svg' },
{ name: mxResources.get('sink76'), path: 'sink/池塘.svg' },
{ name: mxResources.get('sink77'), path: 'sink/消化反应池.svg' },
{ name: mxResources.get('sink78'), path: 'sink/液体存储鼓.svg' },
{ name: mxResources.get('sink79'), path: 'sink/液压气动罐.svg' },
{ name: mxResources.get('sink80'), path: 'sink/热交换器.svg' },
{ name: mxResources.get('sink81'), path: 'sink/独立式储罐.svg' },
{ name: mxResources.get('sink82'), path: 'sink/玻璃条纹式储罐.svg' },
{ name: mxResources.get('sink83'), path: 'sink/球形储罐.svg' },
{ name: mxResources.get('sink84'), path: 'sink/生活热水箱.svg' },
{ name: mxResources.get('sink85'), path: 'sink/稳定罐.svg' },
{ name: mxResources.get('sink86'), path: 'sink/简单储罐 1.svg' },
{ name: mxResources.get('sink87'), path: 'sink/简单储罐 2.svg' },
{ name: mxResources.get('sink88'), path: 'sink/简单储罐 3.svg' },
{ name: mxResources.get('sink89'), path: 'sink/简单储罐 4.svg' },
{ name: mxResources.get('sink90'), path: 'sink/简单储罐 5.svg' },
{ name: mxResources.get('sink91'), path: 'sink/简单储罐系统.svg' },
{ name: mxResources.get('sink92'), path: 'sink/简单反应器.svg' },
{ name: mxResources.get('sink93'), path: 'sink/简单处理罐.svg' },
{ name: mxResources.get('sink94'), path: 'sink/粉末储罐.svg' },
{ name: mxResources.get('sink95'), path: 'sink/绿色容器.svg' },
{ name: mxResources.get('sink96'), path: 'sink/绿色油缸.svg' },
{ name: mxResources.get('sink97'), path: 'sink/耐腐蚀槽.svg' },
{ name: mxResources.get('sink98'), path: 'sink/聚乙烯储罐.svg' },
{ name: mxResources.get('sink99'), path: 'sink/聚乙烯储罐2.svg' },
{ name: mxResources.get('sink100'), path: 'sink/聚乙烯化学混合槽.svg' },
{ name: mxResources.get('sink101'), path: 'sink/聚乙烯混合和填充槽.svg' },
{ name: mxResources.get('sink102'), path: 'sink/舱口.svg' },
{ name: mxResources.get('sink103'), path: 'sink/螺栓 1.svg' },
{ name: mxResources.get('sink104'), path: 'sink/螺栓 2.svg' },
{ name: mxResources.get('sink105'), path: 'sink/配量池.svg' },
{ name: mxResources.get('sink106'), path: 'sink/酿造锅.svg' },
{ name: mxResources.get('sink107'), path: 'sink/鼓式槽.svg' },
]
const fns = graphPathLib.map(item => {
return this.addEntry(this.getTagsForStencil(gn, item.name, dt).join(' '), mxUtils.bind(this, function () {
const cell = new mxCell(createUserObject(cellAttribute), new mxGeometry(0, 0, width, height), `${prefix}${item.path}${defaultStyle}`);
cell.setVertex(true)
return this.createVertexTemplateFromCells([cell], cell.geometry.width, cell.geometry.height, item.name);
}));
})
this.setGalleryLib(dt, label, graphPathLib)
this.addPaletteFunctions(dt, label, false, fns);
this.setCurrentSearchEntryLibrary();
};
})();