dcim-topology2d 2.2.4 → 2.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/chart-diagram/src/utils/conversion.js +9 -1
  2. package/core/src/activeLayer.d.ts +1 -1
  3. package/core/src/activeLayer.js +13 -5
  4. package/core/src/common.d.ts +2 -2
  5. package/core/src/common.js +8 -15
  6. package/core/src/core.d.ts +2 -2
  7. package/core/src/core.js +236 -179
  8. package/core/src/healps/changeData.d.ts +0 -1
  9. package/core/src/healps/changeData.js +0 -4
  10. package/core/src/middles/default.js +8 -3
  11. package/core/src/middles/nodes/{arbitrarygraph.anchor.d.ts → basic/arbitrarygraph.anchor.d.ts} +1 -1
  12. package/core/src/middles/nodes/{arbitrarygraph.anchor.js → basic/arbitrarygraph.anchor.js} +1 -1
  13. package/core/src/middles/nodes/{arbitrarygraph.d.ts → basic/arbitrarygraph.d.ts} +1 -1
  14. package/core/src/middles/nodes/{arrow.anchor.d.ts → basic/arrow.anchor.d.ts} +1 -1
  15. package/core/src/middles/nodes/{arrow.anchor.js → basic/arrow.anchor.js} +2 -2
  16. package/core/src/middles/nodes/{arrow.d.ts → basic/arrow.d.ts} +1 -1
  17. package/core/src/middles/nodes/{arrow.rect.d.ts → basic/arrow.rect.d.ts} +1 -1
  18. package/core/src/middles/nodes/{arrow.rect.js → basic/arrow.rect.js} +1 -1
  19. package/core/src/middles/nodes/{circle.anchor.d.ts → basic/circle.anchor.d.ts} +1 -1
  20. package/core/src/middles/nodes/{circle.anchor.js → basic/circle.anchor.js} +2 -2
  21. package/core/src/middles/nodes/{circle.d.ts → basic/circle.d.ts} +1 -1
  22. package/core/src/middles/nodes/{circle.rect.d.ts → basic/circle.rect.d.ts} +1 -1
  23. package/core/src/middles/nodes/{circle.rect.js → basic/circle.rect.js} +1 -1
  24. package/core/src/middles/nodes/{cloud.anchor.d.ts → basic/cloud.anchor.d.ts} +1 -1
  25. package/core/src/middles/nodes/{cloud.anchor.js → basic/cloud.anchor.js} +2 -2
  26. package/core/src/middles/nodes/{cloud.d.ts → basic/cloud.d.ts} +1 -1
  27. package/core/src/middles/nodes/{cloud.rect.d.ts → basic/cloud.rect.d.ts} +1 -1
  28. package/core/src/middles/nodes/{cloud.rect.js → basic/cloud.rect.js} +1 -1
  29. package/core/src/middles/nodes/{cube.anchor.d.ts → basic/cube.anchor.d.ts} +1 -1
  30. package/core/src/middles/nodes/{cube.anchor.js → basic/cube.anchor.js} +2 -2
  31. package/core/src/middles/nodes/{cube.d.ts → basic/cube.d.ts} +1 -1
  32. package/core/src/middles/nodes/{cube.model.d.ts → basic/cube.model.d.ts} +2 -2
  33. package/core/src/middles/nodes/{cube.model.js → basic/cube.model.js} +2 -2
  34. package/core/src/middles/nodes/{cube.rect.d.ts → basic/cube.rect.d.ts} +1 -1
  35. package/core/src/middles/nodes/{cube.rect.js → basic/cube.rect.js} +1 -1
  36. package/core/src/middles/nodes/{diamond.d.ts → basic/diamond.d.ts} +1 -1
  37. package/core/src/middles/nodes/{diamond.rect.d.ts → basic/diamond.rect.d.ts} +1 -1
  38. package/core/src/middles/nodes/{diamond.rect.js → basic/diamond.rect.js} +1 -1
  39. package/core/src/middles/nodes/{file.d.ts → basic/file.d.ts} +1 -1
  40. package/core/src/middles/nodes/{iframe.d.ts → basic/iframe.d.ts} +1 -1
  41. package/core/src/middles/nodes/{iframe.js → basic/iframe.js} +3 -3
  42. package/core/src/middles/nodes/{image.anchor.d.ts → basic/image.anchor.d.ts} +1 -1
  43. package/core/src/middles/nodes/{image.anchor.js → basic/image.anchor.js} +2 -2
  44. package/core/src/middles/nodes/{image.rect.d.ts → basic/image.rect.d.ts} +1 -1
  45. package/core/src/middles/nodes/{image.rect.js → basic/image.rect.js} +1 -1
  46. package/core/src/middles/nodes/{line.anchor.d.ts → basic/line.anchor.d.ts} +1 -1
  47. package/core/src/middles/nodes/{line.anchor.js → basic/line.anchor.js} +2 -2
  48. package/core/src/middles/nodes/{line.d.ts → basic/line.d.ts} +1 -1
  49. package/core/src/middles/nodes/{line.rect.d.ts → basic/line.rect.d.ts} +1 -1
  50. package/core/src/middles/nodes/{line.rect.js → basic/line.rect.js} +1 -1
  51. package/core/src/middles/nodes/{message.anchor.d.ts → basic/message.anchor.d.ts} +1 -1
  52. package/core/src/middles/nodes/{message.anchor.js → basic/message.anchor.js} +2 -2
  53. package/core/src/middles/nodes/{message.d.ts → basic/message.d.ts} +1 -1
  54. package/core/src/middles/nodes/{message.rect.d.ts → basic/message.rect.d.ts} +1 -1
  55. package/core/src/middles/nodes/{message.rect.js → basic/message.rect.js} +1 -1
  56. package/core/src/middles/nodes/{pentagon.anchor.d.ts → basic/pentagon.anchor.d.ts} +1 -1
  57. package/core/src/middles/nodes/{pentagon.anchor.js → basic/pentagon.anchor.js} +2 -2
  58. package/core/src/middles/nodes/{pentagon.d.ts → basic/pentagon.d.ts} +1 -1
  59. package/core/src/middles/nodes/{pentagon.rect.d.ts → basic/pentagon.rect.d.ts} +1 -1
  60. package/core/src/middles/nodes/{pentagon.rect.js → basic/pentagon.rect.js} +1 -1
  61. package/core/src/middles/nodes/{pentagram.anchor.d.ts → basic/pentagram.anchor.d.ts} +1 -1
  62. package/core/src/middles/nodes/{pentagram.anchor.js → basic/pentagram.anchor.js} +2 -2
  63. package/core/src/middles/nodes/{pentagram.d.ts → basic/pentagram.d.ts} +1 -1
  64. package/core/src/middles/nodes/{pentagram.rect.d.ts → basic/pentagram.rect.d.ts} +1 -1
  65. package/core/src/middles/nodes/{pentagram.rect.js → basic/pentagram.rect.js} +1 -1
  66. package/core/src/middles/nodes/{people.d.ts → basic/people.d.ts} +1 -1
  67. package/core/src/middles/nodes/{people.rect.d.ts → basic/people.rect.d.ts} +1 -1
  68. package/core/src/middles/nodes/{people.rect.js → basic/people.rect.js} +1 -1
  69. package/core/src/middles/nodes/{rectangle.d.ts → basic/rectangle.d.ts} +1 -1
  70. package/core/src/middles/nodes/{rectangle.js → basic/rectangle.js} +1 -1
  71. package/core/src/middles/nodes/{rectangle.rect.d.ts → basic/rectangle.rect.d.ts} +1 -1
  72. package/core/src/middles/nodes/{rectangle.rect.js → basic/rectangle.rect.js} +1 -1
  73. package/core/src/middles/nodes/{text.d.ts → basic/text.d.ts} +2 -2
  74. package/core/src/middles/nodes/{triangle.anchor.d.ts → basic/triangle.anchor.d.ts} +1 -1
  75. package/core/src/middles/nodes/{triangle.anchor.js → basic/triangle.anchor.js} +2 -2
  76. package/core/src/middles/nodes/{triangle.d.ts → basic/triangle.d.ts} +1 -1
  77. package/core/src/middles/nodes/{triangle.rect.d.ts → basic/triangle.rect.d.ts} +1 -1
  78. package/core/src/middles/nodes/{triangle.rect.js → basic/triangle.rect.js} +1 -1
  79. package/core/src/middles/nodes/custom/humiture.d.ts +2 -0
  80. package/core/src/middles/nodes/custom/humiture.js +24 -0
  81. package/core/src/middles/nodes/{hexagon.anchor.d.ts → flow/hexagon.anchor.d.ts} +1 -1
  82. package/core/src/middles/nodes/{hexagon.anchor.js → flow/hexagon.anchor.js} +2 -2
  83. package/core/src/middles/nodes/{hexagon.d.ts → flow/hexagon.d.ts} +1 -1
  84. package/core/src/middles/nodes/{hexagon.rect.d.ts → flow/hexagon.rect.d.ts} +1 -1
  85. package/core/src/middles/nodes/{hexagon.rect.js → flow/hexagon.rect.js} +1 -1
  86. package/core/src/middles/nodes/form/formDatePicker.d.ts +2 -0
  87. package/core/src/middles/nodes/{formDatePicker.js → form/formDatePicker.js} +5 -5
  88. package/core/src/middles/nodes/{formoverflow.js → form/formoverflow.js} +2 -2
  89. package/core/src/middles/nodes/{formselect.d.ts → form/formselect.d.ts} +1 -1
  90. package/core/src/middles/nodes/{formselect.js → form/formselect.js} +6 -7
  91. package/core/src/middles/nodes/{formtable.d.ts → form/formtable.d.ts} +1 -1
  92. package/core/src/middles/nodes/{progress.d.ts → form/progress.d.ts} +1 -1
  93. package/core/src/middles/nodes/{tablePagination.d.ts → form/tablePagination.d.ts} +1 -1
  94. package/core/src/middles/nodes/{time.d.ts → form/time.d.ts} +1 -1
  95. package/core/src/middles/nodes/icon/echartLine.d.ts +2 -0
  96. package/core/src/middles/nodes/icon/echartLine.js +99 -0
  97. package/core/src/middles/nodes/index.d.ts +54 -52
  98. package/core/src/middles/nodes/index.js +54 -53
  99. package/core/src/models/line.js +1 -1
  100. package/core/src/models/node.js +7 -6
  101. package/core/src/models/pen.d.ts +6 -0
  102. package/core/src/models/rect.d.ts +1 -0
  103. package/core/src/models/rect.js +13 -7
  104. package/core/src/options.js +2 -1
  105. package/core/src/preview.js +11 -12
  106. package/core/src/utils/assignment.js +41 -43
  107. package/core/src/utils/construction.d.ts +17 -3
  108. package/core/src/utils/construction.js +22 -2
  109. package/core/src/utils/conversion.d.ts +5 -7
  110. package/core/src/utils/conversion.js +185 -10
  111. package/core/src/utils/math.d.ts +0 -1
  112. package/core/src/utils/math.js +0 -11
  113. package/core/src/utils/params.js +1 -0
  114. package/myShape-diagram/index.js +1 -2
  115. package/package.json +1 -1
  116. package/static/icon.js +10 -0
  117. package/static/index.js +2 -1
  118. package/store/actions.js +14 -1
  119. package/store/clear.js +8 -2
  120. package/core/src/middles/nodes/formDatePicker.d.ts +0 -2
  121. /package/core/src/middles/nodes/{arbitrarygraph.js → basic/arbitrarygraph.js} +0 -0
  122. /package/core/src/middles/nodes/{arrow.anchor.js.map → basic/arrow.anchor.js.map} +0 -0
  123. /package/core/src/middles/nodes/{arrow.js → basic/arrow.js} +0 -0
  124. /package/core/src/middles/nodes/{arrow.js.map → basic/arrow.js.map} +0 -0
  125. /package/core/src/middles/nodes/{arrow.rect.js.map → basic/arrow.rect.js.map} +0 -0
  126. /package/core/src/middles/nodes/{circle.anchor.js.map → basic/circle.anchor.js.map} +0 -0
  127. /package/core/src/middles/nodes/{circle.js → basic/circle.js} +0 -0
  128. /package/core/src/middles/nodes/{circle.js.map → basic/circle.js.map} +0 -0
  129. /package/core/src/middles/nodes/{circle.rect.js.map → basic/circle.rect.js.map} +0 -0
  130. /package/core/src/middles/nodes/{cloud.anchor.js.map → basic/cloud.anchor.js.map} +0 -0
  131. /package/core/src/middles/nodes/{cloud.js → basic/cloud.js} +0 -0
  132. /package/core/src/middles/nodes/{cloud.js.map → basic/cloud.js.map} +0 -0
  133. /package/core/src/middles/nodes/{cloud.rect.js.map → basic/cloud.rect.js.map} +0 -0
  134. /package/core/src/middles/nodes/{cube.anchor.js.map → basic/cube.anchor.js.map} +0 -0
  135. /package/core/src/middles/nodes/{cube.js → basic/cube.js} +0 -0
  136. /package/core/src/middles/nodes/{cube.js.map → basic/cube.js.map} +0 -0
  137. /package/core/src/middles/nodes/{cube.model.js.map → basic/cube.model.js.map} +0 -0
  138. /package/core/src/middles/nodes/{cube.rect.js.map → basic/cube.rect.js.map} +0 -0
  139. /package/core/src/middles/nodes/{diamond.js → basic/diamond.js} +0 -0
  140. /package/core/src/middles/nodes/{diamond.js.map → basic/diamond.js.map} +0 -0
  141. /package/core/src/middles/nodes/{diamond.rect.js.map → basic/diamond.rect.js.map} +0 -0
  142. /package/core/src/middles/nodes/{file.js → basic/file.js} +0 -0
  143. /package/core/src/middles/nodes/{file.js.map → basic/file.js.map} +0 -0
  144. /package/core/src/middles/nodes/{image.anchor.js.map → basic/image.anchor.js.map} +0 -0
  145. /package/core/src/middles/nodes/{image.rect.js.map → basic/image.rect.js.map} +0 -0
  146. /package/core/src/middles/nodes/{line.anchor.js.map → basic/line.anchor.js.map} +0 -0
  147. /package/core/src/middles/nodes/{line.js → basic/line.js} +0 -0
  148. /package/core/src/middles/nodes/{line.js.map → basic/line.js.map} +0 -0
  149. /package/core/src/middles/nodes/{line.rect.js.map → basic/line.rect.js.map} +0 -0
  150. /package/core/src/middles/nodes/{message.anchor.js.map → basic/message.anchor.js.map} +0 -0
  151. /package/core/src/middles/nodes/{message.js → basic/message.js} +0 -0
  152. /package/core/src/middles/nodes/{message.js.map → basic/message.js.map} +0 -0
  153. /package/core/src/middles/nodes/{message.rect.js.map → basic/message.rect.js.map} +0 -0
  154. /package/core/src/middles/nodes/{pentagon.anchor.js.map → basic/pentagon.anchor.js.map} +0 -0
  155. /package/core/src/middles/nodes/{pentagon.js → basic/pentagon.js} +0 -0
  156. /package/core/src/middles/nodes/{pentagon.js.map → basic/pentagon.js.map} +0 -0
  157. /package/core/src/middles/nodes/{pentagon.rect.js.map → basic/pentagon.rect.js.map} +0 -0
  158. /package/core/src/middles/nodes/{pentagram.anchor.js.map → basic/pentagram.anchor.js.map} +0 -0
  159. /package/core/src/middles/nodes/{pentagram.js → basic/pentagram.js} +0 -0
  160. /package/core/src/middles/nodes/{pentagram.js.map → basic/pentagram.js.map} +0 -0
  161. /package/core/src/middles/nodes/{pentagram.rect.js.map → basic/pentagram.rect.js.map} +0 -0
  162. /package/core/src/middles/nodes/{people.js → basic/people.js} +0 -0
  163. /package/core/src/middles/nodes/{people.js.map → basic/people.js.map} +0 -0
  164. /package/core/src/middles/nodes/{people.rect.js.map → basic/people.rect.js.map} +0 -0
  165. /package/core/src/middles/nodes/{rectangle.js.map → basic/rectangle.js.map} +0 -0
  166. /package/core/src/middles/nodes/{rectangle.rect.js.map → basic/rectangle.rect.js.map} +0 -0
  167. /package/core/src/middles/nodes/{text.js → basic/text.js} +0 -0
  168. /package/core/src/middles/nodes/{text.js.map → basic/text.js.map} +0 -0
  169. /package/core/src/middles/nodes/{triangle.anchor.js.map → basic/triangle.anchor.js.map} +0 -0
  170. /package/core/src/middles/nodes/{triangle.js → basic/triangle.js} +0 -0
  171. /package/core/src/middles/nodes/{triangle.js.map → basic/triangle.js.map} +0 -0
  172. /package/core/src/middles/nodes/{triangle.rect.js.map → basic/triangle.rect.js.map} +0 -0
  173. /package/core/src/middles/nodes/{hexagon.anchor.js.map → flow/hexagon.anchor.js.map} +0 -0
  174. /package/core/src/middles/nodes/{hexagon.js → flow/hexagon.js} +0 -0
  175. /package/core/src/middles/nodes/{hexagon.js.map → flow/hexagon.js.map} +0 -0
  176. /package/core/src/middles/nodes/{hexagon.rect.js.map → flow/hexagon.rect.js.map} +0 -0
  177. /package/core/src/middles/nodes/{formtable.js → form/formtable.js} +0 -0
  178. /package/core/src/middles/nodes/{progress.js → form/progress.js} +0 -0
  179. /package/core/src/middles/nodes/{progress.js.map → form/progress.js.map} +0 -0
  180. /package/core/src/middles/nodes/{switchs.d.ts → form/switchs.d.ts} +0 -0
  181. /package/core/src/middles/nodes/{switchs.js → form/switchs.js} +0 -0
  182. /package/core/src/middles/nodes/{tablePagination.js → form/tablePagination.js} +0 -0
  183. /package/core/src/middles/nodes/{time.js → form/time.js} +0 -0
  184. /package/static/{echartsDefaultData.js → echarts.js} +0 -0
package/core/src/core.js CHANGED
@@ -22,19 +22,18 @@ import {
22
22
  s8,
23
23
  pointInRect,
24
24
  formatPadding,
25
- setTagIdData,
26
- setKpiAddrData,
27
- setAssetIdData,
28
- setAreaIdData,
29
- setVarValueData,
30
- setBranchAddressData,
31
- setThreeCategoryIdData,
25
+ setConfBindPointMonitorData,
26
+ createEchartsLineIcon,
32
27
  setConnectionTagForConf,
33
28
  setConnectionTabsData,
34
- getTabConnectSHConf, calculateTempRect
29
+ getTabConnectSHConf,
30
+ bindDataConfig,
31
+ hasBoundData,
32
+ dataBindType
35
33
  } from './utils';
36
34
  import {setSelectElementPosition} from './element';
37
35
  import {elementType} from '../../static';
36
+ import {bindDataWithIconAssociationPool, iconMotionData} from "../../store";
38
37
 
39
38
  var resizeCursors = ['nw-resize', 'ne-resize', 'se-resize', 'sw-resize'];
40
39
  var dockOffset = 10;
@@ -129,8 +128,9 @@ var Topology = (function (_super) {
129
128
  _this.raf = null;
130
129
  if (!_this.mouseDown) {
131
130
  _this.getMoveIn(pos);
131
+ const hoverNode = _this.moveIn.hoverNode;
132
132
  // Render hover anchors.
133
- if (_this.moveIn.hoverNode !== _this.lastHoverNode) {
133
+ if (hoverNode !== _this.lastHoverNode) {
134
134
  if (_this.lastHoverNode) {
135
135
  // Send a move event.
136
136
  _this.dispatch('moveOutNode', _this.lastHoverNode);
@@ -138,11 +138,11 @@ var Topology = (function (_super) {
138
138
  // Clear hover anchors.
139
139
  _this.hoverLayer.node = null;
140
140
  }
141
- if (_this.moveIn.hoverNode) {
142
- _this.hoverLayer.node = _this.moveIn.hoverNode;
141
+ if (hoverNode) {
142
+ _this.hoverLayer.node = hoverNode;
143
143
  // Send a move event.
144
- _this.dispatch('moveInNode', _this.moveIn.hoverNode);
145
- _this.showTip(_this.moveIn.hoverNode, pos);
144
+ _this.dispatch('moveInNode', hoverNode);
145
+ _this.showTip(hoverNode, pos);
146
146
  // _this.showTipText(_this.moveIn.hoverNode, pos);
147
147
  }
148
148
  }
@@ -161,14 +161,15 @@ var Topology = (function (_super) {
161
161
  } else if (_this.hoverLayer.hoverLineCP) {
162
162
  _this.hoverLayer.hoverLineCP = null;
163
163
  }
164
- if (_this.moveIn.hoverNode !== _this.lastHoverNode ||
164
+ if (hoverNode !== _this.lastHoverNode ||
165
165
  _this.moveIn.type === _this.moveInType.HoverAnchors ||
166
166
  _this.hoverLayer.lasthoverLineCP !== _this.hoverLayer.hoverLineCP) {
167
167
  _this.hoverLayer.lasthoverLineCP = _this.hoverLayer.hoverLineCP;
168
168
  _this.render();
169
169
  }
170
170
  _this.scheduledAnimationFrame = false;
171
- if(_this.moveIn.type === _this.moveInType.Nodes && _this.moveIn.hoverNode.order !== (_this.lastHoverNode && _this.lastHoverNode.order)){
171
+ const lastHoverOrder = _this.lastHoverNode && _this.lastHoverNode.order;
172
+ if(hoverNode && (_this.moveIn.type === _this.moveInType.Nodes) && hoverNode.order !== lastHoverOrder){
172
173
  // 鼠标hover元件之上,改变背景色
173
174
  _this.hoverChangeFollowOperation(_this.moveIn.hoverNode, _this.lastHoverNode);
174
175
  }
@@ -506,7 +507,7 @@ var Topology = (function (_super) {
506
507
  }
507
508
  }else {
508
509
  // 存在多个选中元件时,如果点击选中区域外则取消多个元件的选中
509
- if(!_this.activeLayer.penIds.has(_this.moveIn.activeNode.id)){
510
+ if(!_this.moveIn.sizeCPs){
510
511
  _this.activeLayer.setPens([_this.moveIn.activeNode]);
511
512
  _this.dispatch('node', _this.moveIn.activeNode);
512
513
  }
@@ -714,8 +715,7 @@ var Topology = (function (_super) {
714
715
  try {
715
716
  var json = event.dataTransfer.getData('Topology') ||
716
717
  event.dataTransfer.getData('Text');
717
- if (!json)
718
- return;
718
+ if (!json) return;
719
719
  var obj = JSON.parse(json);
720
720
  event.preventDefault();
721
721
  if(obj.type && obj.type === 'temp') {
@@ -913,13 +913,8 @@ var Topology = (function (_super) {
913
913
  // console.log('创建自定义组件 ', json);
914
914
  console.log('store 中的 自定义 ');
915
915
  _this.dropDefineNode(json, offsetX, offsetY);
916
- } else if(json.name === 'temp') {
917
- // 温湿度元件
918
- _this.dropTempNode(json);
919
- }else {
916
+ } else {
920
917
  var node = new Node(json);
921
- if(node.name === 'echarts') node.dash = 4;
922
- if(node.name === 'iframe') node.iframe = 'http://www.yingzeshiji.com.cn/'; // 默认展示盈泽世纪官网
923
918
  node.setTID(_this.id);
924
919
  node.clearChildrenIds();
925
920
  _this.addNode(node, true);
@@ -956,21 +951,6 @@ var Topology = (function (_super) {
956
951
  }
957
952
  this.switchStaticsCheckType(node, {dcimStaticForType: 'SH'});
958
953
  };
959
- // 添加温湿度元件
960
- Topology.prototype.dropTempNode = function(json) {
961
- const nodeChildren = json.children;
962
- delete json['children'];
963
- const node = this.setNodeData(json);
964
- const combinTempData = [];
965
- for (let i = 0; i < nodeChildren.length; i++) {
966
- const childNode = this.setNodeData(nodeChildren[i]);
967
- calculateTempRect(node.rect.x, node.rect.y, i, childNode);
968
- combinTempData.push(childNode);
969
- }
970
- this.combine(combinTempData, null, 'temp');
971
- this.render();
972
- this.cache();
973
- };
974
954
  // 添加自定义元件
975
955
  Topology.prototype.dropDefineNode = function(josn, offsetX, offsetY) {
976
956
  var _this = this;
@@ -1010,7 +990,7 @@ var Topology = (function (_super) {
1010
990
 
1011
991
  _this.dispatch('addNode', renderNodesList[0]);
1012
992
  };
1013
- Topology.prototype.addNode = function (node, focus, visit) {
993
+ Topology.prototype.addNode = function (node, focus, visit, cache) {
1014
994
  if (focus === void 0) {
1015
995
  focus = false;
1016
996
  }
@@ -1044,7 +1024,7 @@ var Topology = (function (_super) {
1044
1024
  this.dispatch('addNode', node);
1045
1025
  }
1046
1026
  }
1047
- this.cache();
1027
+ !cache && this.cache();
1048
1028
  return node;
1049
1029
  };
1050
1030
  Topology.prototype.addLine = function (line, focus) {
@@ -1069,8 +1049,8 @@ var Topology = (function (_super) {
1069
1049
  return line;
1070
1050
  };
1071
1051
  // open - redraw by the data
1072
- Topology.prototype.open = function (topoJSon, type) {
1073
- this.conversionData(topoJSon, type);
1052
+ Topology.prototype.open = function (topoJSon) {
1053
+ this.conversionData(topoJSon);
1074
1054
  Store.set(this.generateStoreKey('LT:scale'), this.store.data.scale);
1075
1055
  this.dispatch('scale', this.store.data.scale);
1076
1056
  this.store.parentElem.scrollLeft = 0;
@@ -1108,6 +1088,7 @@ var Topology = (function (_super) {
1108
1088
  this.moveIn.hoverNode = null;
1109
1089
  this.moveIn.lineControlPoint = null;
1110
1090
  this.moveIn.hoverLine = null;
1091
+ this.moveIn.sizeCPs = false;
1111
1092
  this.hoverLayer.hoverAnchorIndex = -1;
1112
1093
  if (!this.store.data.locked &&
1113
1094
  !(this.activeLayer.pens.length === 1 && this.activeLayer.pens[0].type) &&
@@ -1124,6 +1105,7 @@ var Topology = (function (_super) {
1124
1105
  if (this.activeLayer.pens.length > 1 &&
1125
1106
  pointInRect(pt, this.activeLayer.sizeCPs)) {
1126
1107
  this.moveIn.type = this.moveInType.Nodes;
1108
+ this.moveIn.sizeCPs = true;
1127
1109
  }
1128
1110
  if (!this.store.data.locked &&
1129
1111
  !this.activeLayer.locked() &&
@@ -1624,6 +1606,7 @@ var Topology = (function (_super) {
1624
1606
  if (this.store.options.disableEmptyLine) {
1625
1607
  this.delEmptyLines(pen.id);
1626
1608
  }
1609
+ if(pen.isPointMonitor) this.deletePointAssociationIconData(pen.id);
1627
1610
  pens.push.apply(pens, this.store.data.pens.splice(found, 1));
1628
1611
  // this.setSwitchTabData(pen, found, 'delete');
1629
1612
  --i;
@@ -1638,6 +1621,13 @@ var Topology = (function (_super) {
1638
1621
  this.cache();
1639
1622
  this.dispatch('delete', pens);
1640
1623
  };
1624
+ // 删除点位监控元件关联的小图标
1625
+ Topology.prototype.deletePointAssociationIconData = function (id) {
1626
+ const dataPool = bindDataWithIconAssociationPool;
1627
+ if(!dataPool.size || !dataPool.has(id)) return;
1628
+ const iconOrder = dataPool.get(dataPool.get(id).cid).order;
1629
+ this.store.data.pens.splice(iconOrder, 1);
1630
+ };
1641
1631
  Topology.prototype.resetAssociateDateData = function (dateIds) {
1642
1632
  // 重置关联日期数据的元件属性值
1643
1633
  const pens = this.store.data.pens;
@@ -1711,14 +1701,24 @@ var Topology = (function (_super) {
1711
1701
  this.render();
1712
1702
  this.dispatch('delete', this.clipboard.pens);
1713
1703
  };
1714
- Topology.prototype.copy = function () {
1704
+ Topology.prototype.copy = function (type) {
1715
1705
  let isAnimate = this.activeLayer.pens.find((item) => {
1716
1706
  return item.animatePlay;
1717
1707
  });
1718
1708
  if(isAnimate) return false;
1719
- this.clipboard = {
1720
- pens: [],
1721
- };
1709
+ if (type === 'paste') {
1710
+ // 粘贴:保留 initPens,为空则取 pens
1711
+ this.clipboard = {
1712
+ initPens: this.clipboard.initPens || this.clipboard.pens,
1713
+ pens: []
1714
+ };
1715
+ } else {
1716
+ // 非粘贴:保存初始区域 + 重置剪贴板
1717
+ if (this.activeLayer.pens.length > 1) this.activeLayer.initialSizeCPs = [...this.activeLayer.sizeCPs];
1718
+ this.clipboard = {
1719
+ pens: []
1720
+ };
1721
+ }
1722
1722
  for (var _i = 0, _a = this.activeLayer.pens; _i < _a.length; _i++) {
1723
1723
  var pen = _a[_i];
1724
1724
  this.clipboard.pens.push(pen.clone());
@@ -1726,31 +1726,38 @@ var Topology = (function (_super) {
1726
1726
  return true;
1727
1727
  };
1728
1728
  Topology.prototype.paste = function (position) {
1729
- if (!this.clipboard || this.store.data.locked) {
1730
- return;
1731
- }
1729
+ if (!this.clipboard || this.store.data.locked) return;
1732
1730
  this.hoverLayer.node = null;
1733
1731
  this.hoverLayer.line = null;
1734
1732
  this.activeLayer.pens = [];
1735
1733
  var idMaps = {};
1736
- const clipboardPens = JSON.parse(JSON.stringify(this.clipboard.pens));
1737
- for (var _i = 0, _a = clipboardPens; _i < _a.length; _i++) {
1738
- const list = _a[_i];
1734
+ const { pens: clipPens, cpx, options } = this.clipboard;
1735
+
1736
+ // 计算中心点
1737
+ if (!cpx && clipPens.length > 1 && position) this.clipboard.cpx = this.activeLayer.getCenterPoints();
1738
+
1739
+ const targetPens = position ? (this.clipboard.initPens || clipPens) : clipPens;
1740
+ const clipboardPens = JSON.parse(JSON.stringify(targetPens));
1741
+
1742
+ for (const [i, list] of clipboardPens.entries()) {
1743
+ list.isBind && this.activeLayer.clear();
1739
1744
  let pen = {};
1740
1745
  if (list.type === PenType.Node) {
1741
1746
  pen = new Node(list);
1742
1747
  this.newId(pen, idMaps);
1743
- const {x, y, width, height} = pen.rect;
1744
- const rect = this.resetRect(position, x, y, width, height);
1745
- Object.assign(pen.rect, rect);
1746
- if (pen.subName && pen.subName == 'temp') {
1747
- // 温湿度元件
1748
- pen.children.forEach((item, index) => {
1749
- calculateTempRect(pen.rect.x, pen.rect.y, index, item);
1750
- defaultTextRect(item);
1751
- })
1752
- }
1748
+ this.resetRect(position, this.clipboard.cpx, pen.rect);
1749
+ // 温湿度/温度节点初始化
1750
+ const isSpecialNode = ['temp', 'humiture'].includes(pen.subName);
1751
+ if (isSpecialNode && drawNodeFns[pen.subName]) drawNodeFns[pen.subName](null, pen, true);
1752
+
1753
1753
  pen.init();
1754
+
1755
+ // 绑定数据:自动生成折线图标
1756
+ if (list.isBind && options[i]) {
1757
+ const { type, node, bindName, count } = options[i];
1758
+ if (type !== dataBindType.ASSET) pen.text = pen.isAlias ? bindName : pen.defaultText;
1759
+ pen.isPointMonitor && this.bindWithIconAssociation(type, pen, node, i + 1, count);
1760
+ }
1754
1761
  }
1755
1762
  if (list.type === PenType.Line) {
1756
1763
  pen = new Line(list);
@@ -1772,7 +1779,7 @@ var Topology = (function (_super) {
1772
1779
  this.render();
1773
1780
  this.animate(true);
1774
1781
  this.cache();
1775
- this.copy();
1782
+ !position && this.copy('paste'); // 非鼠标右键的粘贴才执行拷贝
1776
1783
  if (this.clipboard.pens.length > 1) {
1777
1784
  this.dispatch('multi', {
1778
1785
  pens: this.clipboard.pens,
@@ -1785,113 +1792,162 @@ var Topology = (function (_super) {
1785
1792
  }
1786
1793
  }
1787
1794
  };
1788
- // 重置元件偏移位置,暂时先添加此处理方法,日后优化因放到rect.js中处理
1789
- Topology.prototype.resetRect = function (position, x, y, width, height) {
1795
+ // 重置元件偏移位置
1796
+ Topology.prototype.resetRect = function (position, cpx, rect) {
1790
1797
  if(!position) {
1791
- x+=20;
1792
- y+=20;
1798
+ rect.x += 20;
1799
+ rect.y += 20;
1800
+ }else if(!cpx && position) {
1801
+ rect.x = position.x;
1802
+ rect.y = position.y;
1803
+ }else if(cpx && position) {
1804
+ rect.x = rect.x + (position.x - cpx.x);
1805
+ rect.y = rect.y + (position.y - cpx.y);
1806
+ }
1807
+ rect.init();
1808
+ };
1809
+ /**
1810
+ * 绑定数据
1811
+ * @param data 绑定的数据 Array
1812
+ * @param type 绑定的数据类型 Number
1813
+ * @param batch 批量绑定 Boolean
1814
+ */
1815
+ Topology.prototype.bind = function (data, type, batch) {
1816
+ const pen = this.activeLayer.pens[0];
1817
+ const boundData = new Set();
1818
+ // 获取已绑定的数据标识
1819
+ const targetKeys = new Set(['tagId', 'kpiAddr', 'assetId', 'areaId', 'varId', 'branchVal']);
1820
+ if(pen.data && pen.data.length) {
1821
+ for (const node of pen.data) {
1822
+ if (targetKeys.has(node.key)) boundData.add(node.value);
1823
+ }
1824
+ }
1825
+ // 非视频:自动添加 MQTT 事件
1826
+ if(type !== dataBindType.VIDEO) {
1827
+ // 除 视频绑定外的其他数据绑定后,自动添加mqtt事件
1828
+ const hasMqtt = pen.events.find((ev) => { return ev.type === 3 });
1829
+ if(!hasMqtt) pen.events.push({ type: 3, action: 2, value: '', show: true });
1830
+ }
1831
+ let result = [];
1832
+ // 剪贴板数据初始化
1833
+ this.clipboard = { pens: [], options: [], cpx: null, initPens: null };
1834
+ for (const [i, item] of data.entries()) {
1835
+
1836
+ if (hasBoundData(boundData, item, type)) continue; // 如果已绑定该数据则跳过
1837
+
1838
+ const options = bindDataConfig(item, type);
1839
+ // 赋值标题、事件
1840
+ if(options.title) pen.title = options.title;
1841
+ if(options.events.length) pen.events = options.events;
1842
+ // 赋值子级
1843
+ if(options.children.length) {
1844
+ pen.children.forEach((sub, c) => {
1845
+ const subNode = options.children[c];
1846
+ if(!subNode) return;
1847
+ sub.data = subNode.data;
1848
+ sub.events = subNode.events;
1849
+ });
1850
+ }
1851
+
1852
+ if(batch && i !== 0) {
1853
+ // 批量绑定数据
1854
+ const clonePen = pen.clone();
1855
+ clonePen.isBind = true;
1856
+ clonePen.data = [...options.data];
1857
+ clonePen.rect.x += 20 * (i-1);
1858
+ clonePen.rect.y += 20 * (i-1);
1859
+
1860
+ this.clipboard.pens.push(clonePen);
1861
+ this.clipboard.options.push({
1862
+ node: item.default || item,
1863
+ count: length - 1,
1864
+ bindName: options.bindName,
1865
+ type
1866
+ });
1867
+ }else {
1868
+ // 单个绑定数据
1869
+ result = [...pen.data, ...options.data];
1870
+ if(type !== dataBindType.asset) pen.text = pen.isAlias ? options.bindName : pen.defaultText;
1871
+ }
1872
+ }
1873
+ if(result.length) {
1874
+ pen.data = result;
1875
+ pen.isPointMonitor && this.bindWithIconAssociation(type, pen, data[0].default || data[0], 0, 0); // 点位监控 自动生成折线小图标;
1876
+ }
1877
+ // 批量粘贴
1878
+ this.clipboard.pens.length && this.paste();
1879
+ };
1880
+ /**
1881
+ * 绑定数据关联图标的操作
1882
+ * @param type 绑定的数据类型
1883
+ * @param pen 元件的节点数据
1884
+ * @param data 绑定的节点数据
1885
+ * @param index 批量绑定时的数据索引
1886
+ * @param count 对应索引下标的总数据
1887
+ */
1888
+ Topology.prototype.bindWithIconAssociation = function (type, pen, data, index, count) {
1889
+ const dataPool = bindDataWithIconAssociationPool;
1890
+ if(dataPool.has(pen.id)){
1891
+ // 修改绑定的数据
1892
+ const iconId = dataPool.get(pen.id).cid;
1893
+ const iconEvents = this.store.data.pens[dataPool.get(iconId).order].events;
1894
+ iconEvents.forEach((ev) => {
1895
+ setConfBindPointMonitorData(type, ev, data);
1896
+ })
1793
1897
  }else {
1794
- x = position.x;
1795
- y = position.y;
1796
- }
1797
- return {
1798
- x,
1799
- y,
1800
- center: {
1801
- x: x + width / 2,
1802
- y: y + height / 2
1803
- },
1804
- ex: x + width,
1805
- ey: y + height
1806
- }
1807
- };
1808
- Topology.prototype.bind = function (item, exite, dataType, index) {
1809
- this.clipboard = {
1810
- pens: [],
1811
- };
1812
- for (var _i = 0, _a = this.activeLayer.pens; _i < _a.length; _i++) {
1813
- var pen = _a[_i];
1814
- pen.data = [];
1815
- this.bindInfo(item, pen, dataType, index, false);
1816
- this.clipboard.pens.push(pen.clone());
1898
+ // 添加绑定的数据
1899
+ const iconData = createEchartsLineIcon(type, pen, data);
1900
+ const newNode = this.setNodeData(iconData);
1901
+ const pencx = pen.rect.center.x,
1902
+ pency = pen.rect.center.y,
1903
+ iconcx = newNode.rect.center.x,
1904
+ iconcy = newNode.rect.center.y;
1905
+ // 存储矩形偏移及关联信息
1906
+ dataPool.set(pen.id, {
1907
+ cid: newNode.id,
1908
+ order: -1,
1909
+ cx: pencx,
1910
+ cy: pency,
1911
+ dx: iconcx - pencx, // 图标中心点与矩形中心点的距离,固定不变
1912
+ dy: iconcy - pency // 图标中心点与矩形中心点的距离,固定不变
1913
+ });
1914
+ // 存储图标偏移及关联信息
1915
+ dataPool.set(newNode.id, {
1916
+ cid: pen.id,
1917
+ order: -1,
1918
+ cx: iconcx,
1919
+ cy: iconcy
1920
+ });
1921
+ this.addNode(newNode, index === count, true, true);
1922
+ }
1923
+ };
1924
+ // 设置绑定的点位监控数据与小图标关联
1925
+ Topology.prototype.resetBindWithIconConnectData = function () {
1926
+ const dataPool = bindDataWithIconAssociationPool;
1927
+ if(!dataPool.size) return;
1928
+ for (let i = 0, pen = this.store.data.pens; i < pen.length; i++) {
1929
+ const node = pen[i];
1930
+ if(dataPool.has(node.id)) dataPool.get(node.id).order = i;
1931
+ }
1932
+ };
1933
+ // 元件移动或缩放时,关联的图标也跟随移动改变位置
1934
+ Topology.prototype.resetBindWithIconConnectRect = function (pen) {
1935
+ const dataPool = bindDataWithIconAssociationPool;
1936
+ if(!dataPool.size || !dataPool.has(pen.id)) return;
1937
+ const penData = dataPool.get(pen.id); // 若是图标元件,则penData为icon的预存数据, pen 为icon节点数据
1938
+ if(!pen.isPointMonitor) {
1939
+ // 小图标基本属性变化,重置关联的固定值
1940
+ const node = dataPool.get(penData.cid); // 元件的预存数据。
1941
+ const oldPen = this.store.data.pens[node.order];
1942
+ node.dx = pen.rect.center.x - oldPen.rect.center.x;
1943
+ node.dy = pen.rect.center.y - oldPen.rect.center.y;
1944
+ return;
1817
1945
  }
1818
- if (exite) this.paste();
1819
- };
1820
- Topology.prototype.bindInfo = async function (item, pen, type, index, exite) {
1821
- const itemNode = item && item.default || item;
1822
- let bindName = '';
1823
- if ([0, '0'].includes(type)) {
1824
- bindName = itemNode.tagName;
1825
- const setTagId = setTagIdData(itemNode);
1826
- pen.data.push(...setTagId);
1827
- // 绑定悬浮文字
1828
- pen.title = itemNode.touchpname
1829
- //用于处理场地监控,点击一个资产类别后,隐藏掉这个类别下的所有元件
1830
- const setThreeCategory = setThreeCategoryIdData(pen, itemNode);
1831
- pen.data.push(...setThreeCategory);
1832
- } else if ([1, '1'].includes(type)) {
1833
- bindName = itemNode.kpiName;
1834
- const setKpiAddr = setKpiAddrData(itemNode);
1835
- pen.data.push(...setKpiAddr);
1836
- } else if ([2, '2'].includes(type)) {
1837
- bindName = itemNode.name;
1838
- const setAssetId = setAssetIdData(itemNode);
1839
- pen.data.push(...setAssetId);
1840
- // 绑定悬浮文字
1841
- pen.title = itemNode.bak
1842
- if (pen.subName && pen.subName == 'temp') {
1843
- // 温湿度元件
1844
- // 通讯状态
1845
- pen.children[0].data = []
1846
- if (index > 0) {
1847
- pen.children[0].text = index + 1 + '#'
1848
- }
1849
- this.bindInfo(itemNode, pen.children[0], type);
1850
- // 温度
1851
- if(item.temperature) {
1852
- pen.children[1].data = [];
1853
- this.bindInfo(item.temperature, pen.children[1], 0);
1854
- }
1855
- // 湿度
1856
- if(item.dampness) {
1857
- pen.children[2].data = []
1858
- this.bindInfo(item.dampness, pen.children[2], 0);
1859
- }
1860
- pen.children.forEach((itemNode) => {
1861
- itemNode.events = [{
1862
- "type": 3,
1863
- "action": 2,
1864
- "value": "",
1865
- "show": true
1866
- }]
1867
- })
1868
- }
1869
- } else if ([3, '3'].includes(type)) {
1870
- bindName = itemNode.name;
1871
- const setAreaId = setAreaIdData(itemNode);
1872
- pen.data.push(...setAreaId);
1873
- }else if ([4, '4'].includes(type)) {
1874
- bindName = itemNode.name;
1875
- const setVarId = setVarValueData(itemNode);
1876
- pen.data.push(...setVarId);
1877
- }else if ([5, '5'].includes(type)) {
1878
- bindName = itemNode.value;
1879
- const setBranch = setBranchAddressData(itemNode);
1880
- pen.data.push(...setBranch);
1881
- }else if (['video'].includes(type)) {
1882
- bindName = '';
1883
- pen.title = itemNode.params.name
1884
- pen.events = [itemNode];
1885
- }
1886
- pen.text = pen.isAlias ? bindName : pen.defaultText;
1887
- // if([0, 2, '0', '2'].includes(type)) {
1888
- // //用于处理场地监控,点击一个资产类别后,隐藏掉这个类别下的所有元件
1889
- // const setThreeCategory = setThreeCategoryIdData(pen, itemNode);
1890
- //
1891
- // pen.data.push(...setThreeCategory);
1892
- // }
1893
- if(exite) this.cache();
1894
- return pen;
1946
+ // 小图标便宜位置更新
1947
+ const iconNode = this.store.data.pens[dataPool.get(penData.cid).order];
1948
+ iconNode.rect.center.x = pen.rect.center.x + penData.dx;
1949
+ iconNode.rect.center.y = pen.rect.center.y + penData.dy;
1950
+ iconNode.rect.calcOffset();
1895
1951
  };
1896
1952
  Topology.prototype.newId = function (node, idMaps) {
1897
1953
  var old = node.id;
@@ -1904,13 +1960,15 @@ var Topology = (function (_super) {
1904
1960
  }
1905
1961
  }
1906
1962
  };
1907
- Topology.prototype.updateProps = function (cache, pens) {
1908
- if (cache === void 0) {
1909
- cache = true;
1910
- }
1911
- if (!pens) {
1912
- pens = this.activeLayer.pens;
1913
- }
1963
+ /**
1964
+ * 更新节点数据
1965
+ * @param motion 关联节点是否跟随移动
1966
+ * @param cache
1967
+ * @param pens
1968
+ */
1969
+ Topology.prototype.updateProps = function (motion = false, cache, pens) {
1970
+ if (cache === void 0) cache = true;
1971
+ if (!pens) pens = this.activeLayer.pens;
1914
1972
  let isAnimate = false;
1915
1973
  for (var _i = 0, pens_1 = pens; _i < pens_1.length; _i++) {
1916
1974
  var pen = pens_1[_i];
@@ -1929,6 +1987,7 @@ var Topology = (function (_super) {
1929
1987
  if (!pen.strokeStyle) {
1930
1988
  pen.strokeStyle = 'transparent'
1931
1989
  }
1990
+ if(motion === true || iconMotionData[motion]) this.resetBindWithIconConnectRect(pen); // 点位监控关联的小图标跟随移动
1932
1991
  }
1933
1992
  }
1934
1993
  this.activeLayer.updateLines(pens);
@@ -2426,11 +2485,9 @@ var Topology = (function (_super) {
2426
2485
  }
2427
2486
  }
2428
2487
 
2429
- if (window.location.pathname.includes('workspace') || (isClickTpye === true && !window.location.pathname.includes('workspace'))) {
2430
- return false
2431
- }
2488
+ return !(window.location.pathname.includes('workspace') || (isClickTpye === true && !window.location.pathname.includes('workspace')));
2489
+
2432
2490
 
2433
- return true
2434
2491
  };
2435
2492
  return Topology;
2436
2493
  }(Common));
@@ -1,7 +1,6 @@
1
1
  import {Pen} from "../models";
2
2
 
3
3
  export declare function setConfItemNode(item: any[], syncData: Node): Node;
4
- export declare function setNodeEvents(item: any[], pen: Pen): void;
5
4
  export declare function setControlData(pen: Pen, syncData: Node): void;
6
5
  export declare function getControlNode(item: any, data: any): Node;
7
6
  export declare function getDetailData(data: Node): void;
@@ -137,10 +137,6 @@ export function setConfItemNode(pen, syn_synata) {
137
137
  }
138
138
  }
139
139
 
140
- export function setNodeEvents(item, pen) {
141
-
142
- }
143
-
144
140
  export function setFanData(pen, syncData) {
145
141
  if (!syncData) return
146
142
  pen.text = ''
@@ -10,14 +10,15 @@ import {
10
10
  circle, circleIconRect, circleTextRect, circleAnchors,
11
11
  triangle, triangleIconRect, triangleTextRect, triangleAnchors,
12
12
  pentagon, pentagonIconRect, pentagonTextRect, pentagonAnchors,
13
- hexagon, hexagonAnchors, hexagonIconRect, hexagonTextRect,
13
+ hexagon, hexagonAnchors, hexagonIconRect, hexagonTextRect, humiture,
14
14
  pentagram, pentagramAnchors, pentagramIconRect, pentagramTextRect,
15
15
  cloud, cloudAnchors, cloudIconRect, cloudTextRect,
16
16
  message, messageIconRect, messageTextRect, messageAnchors,
17
17
  imageIconRect, imageTextRect,
18
18
  cube, cubeAnchors, cubeIconRect, cubeTextRect,
19
19
  people, peopleIconRect, peopleTextRect,
20
- arbitraryGraph, arbitraryGraphAnchors, time, switchs, progress
20
+ arbitraryGraph, arbitraryGraphAnchors, time, switchs, progress,
21
+ svgEchartsLine
21
22
  } from './nodes';
22
23
  import {
23
24
  line,
@@ -61,7 +62,9 @@ export var drawLineFns = {};
61
62
  export var drawArrowFns = {};
62
63
  function init() {
63
64
  console.log('Init middles.');
64
- // ********Default nodes.*******
65
+ // ********Default nodes.*******
66
+ // svgEchartsLine
67
+ drawNodeFns.svgEchartsLine = svgEchartsLine;
65
68
  // datePicker
66
69
  drawNodeFns.datePicker = fromDatePicker;
67
70
  // select
@@ -104,6 +107,8 @@ function init() {
104
107
  iconRectFns.hexagon = hexagonIconRect;
105
108
  textRectFns.hexagon = hexagonTextRect;
106
109
  anchorsFns.hexagon = hexagonAnchors;
110
+ // humiture
111
+ drawNodeFns.humiture = humiture;
107
112
  // Pentagon
108
113
  drawNodeFns.pentagon = pentagon;
109
114
  iconRectFns.pentagon = pentagonIconRect;
@@ -1,2 +1,2 @@
1
- import { Node } from '../../models';
1
+ import { Node } from '../../../models';
2
2
  export declare function arbitraryGraphAnchors(node: Node): void;
@@ -1,4 +1,4 @@
1
- import { Point } from '../../models/point';
1
+ import { Point } from '../../../models/point';
2
2
  export function arbitraryGraphAnchors(node) {
3
3
 
4
4
  for(let i=0, circles=node.rect.circles; i<circles.length; i++) {
@@ -1,2 +1,2 @@
1
- import { Node } from '../../models';
1
+ import { Node } from '../../../models';
2
2
  export declare function arbitraryGraph(ctx: CanvasRenderingContext2D, node: Node): void;