@logicflow/extension 2.0.0 → 2.0.1

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 (93) hide show
  1. package/.turbo/turbo-build.log +387 -389
  2. package/CHANGELOG.md +122 -71
  3. package/dist/index.css +0 -63
  4. package/dist/index.min.js +6 -6
  5. package/es/bpmn-adapter/index.js +1 -1
  6. package/es/bpmn-adapter/index.js.map +1 -1
  7. package/es/bpmn-elements-adapter/index.js +1 -1
  8. package/es/bpmn-elements-adapter/index.js.map +1 -1
  9. package/es/components/highlight/index.js +4 -0
  10. package/es/components/highlight/index.js.map +1 -1
  11. package/es/components/selection-select/index.js +6 -2
  12. package/es/components/selection-select/index.js.map +1 -1
  13. package/es/dynamic-group/index.js +2 -3
  14. package/es/dynamic-group/index.js.map +1 -1
  15. package/es/dynamic-group/model.d.ts +1 -1
  16. package/es/dynamic-group/model.js +12 -9
  17. package/es/dynamic-group/model.js.map +1 -1
  18. package/es/dynamic-group/node.js +19 -0
  19. package/es/dynamic-group/node.js.map +1 -1
  20. package/es/dynamic-group/utils.d.ts +5 -3
  21. package/es/dynamic-group/utils.js +14 -7
  22. package/es/dynamic-group/utils.js.map +1 -1
  23. package/es/index.css +0 -63
  24. package/es/index.d.ts +1 -0
  25. package/es/index.js +1 -0
  26. package/es/index.js.map +1 -1
  27. package/es/style/index.css +0 -63
  28. package/es/style/index.less +0 -73
  29. package/es/style/raw.d.ts +1 -1
  30. package/es/style/raw.js +1 -1
  31. package/es/style/raw.js.map +1 -1
  32. package/es/tools/label/LabelOverlay.js.map +1 -1
  33. package/es/tools/label/index.d.ts +1 -0
  34. package/es/tools/label/index.js +10 -0
  35. package/es/tools/label/index.js.map +1 -1
  36. package/es/tools/label/style.css +63 -0
  37. package/es/tools/label/style.less +71 -0
  38. package/es/tools/snapshot/index.d.ts +9 -9
  39. package/es/tools/snapshot/index.js +15 -15
  40. package/es/tools/snapshot/index.js.map +1 -1
  41. package/lib/bpmn-adapter/index.js +1 -1
  42. package/lib/bpmn-adapter/index.js.map +1 -1
  43. package/lib/bpmn-elements-adapter/index.js +1 -1
  44. package/lib/bpmn-elements-adapter/index.js.map +1 -1
  45. package/lib/components/highlight/index.js +4 -0
  46. package/lib/components/highlight/index.js.map +1 -1
  47. package/lib/components/selection-select/index.js +6 -2
  48. package/lib/components/selection-select/index.js.map +1 -1
  49. package/lib/dynamic-group/index.js +2 -3
  50. package/lib/dynamic-group/index.js.map +1 -1
  51. package/lib/dynamic-group/model.d.ts +1 -1
  52. package/lib/dynamic-group/model.js +12 -9
  53. package/lib/dynamic-group/model.js.map +1 -1
  54. package/lib/dynamic-group/node.js +19 -0
  55. package/lib/dynamic-group/node.js.map +1 -1
  56. package/lib/dynamic-group/utils.d.ts +5 -3
  57. package/lib/dynamic-group/utils.js +14 -7
  58. package/lib/dynamic-group/utils.js.map +1 -1
  59. package/lib/index.css +0 -63
  60. package/lib/index.d.ts +1 -0
  61. package/lib/index.js +1 -0
  62. package/lib/index.js.map +1 -1
  63. package/lib/style/index.css +0 -63
  64. package/lib/style/index.less +0 -73
  65. package/lib/style/raw.d.ts +1 -1
  66. package/lib/style/raw.js +1 -1
  67. package/lib/style/raw.js.map +1 -1
  68. package/lib/tools/label/LabelOverlay.js.map +1 -1
  69. package/lib/tools/label/index.d.ts +1 -0
  70. package/lib/tools/label/index.js +10 -0
  71. package/lib/tools/label/index.js.map +1 -1
  72. package/lib/tools/label/style.css +63 -0
  73. package/lib/tools/label/style.less +71 -0
  74. package/lib/tools/snapshot/index.d.ts +9 -9
  75. package/lib/tools/snapshot/index.js +15 -15
  76. package/lib/tools/snapshot/index.js.map +1 -1
  77. package/package.json +7 -4
  78. package/rollup.config.js +17 -1
  79. package/src/bpmn-adapter/index.ts +1 -1
  80. package/src/bpmn-elements-adapter/index.ts +1 -1
  81. package/src/components/highlight/index.ts +2 -0
  82. package/src/components/selection-select/index.ts +6 -2
  83. package/src/dynamic-group/index.ts +2 -3
  84. package/src/dynamic-group/model.ts +15 -9
  85. package/src/dynamic-group/node.ts +25 -1
  86. package/src/dynamic-group/utils.ts +20 -7
  87. package/src/index.ts +2 -0
  88. package/src/style/index.less +0 -73
  89. package/src/style/raw.ts +1 -64
  90. package/src/tools/label/LabelOverlay.tsx +0 -1
  91. package/src/tools/label/index.ts +14 -5
  92. package/src/tools/label/style.less +71 -0
  93. package/src/tools/snapshot/index.ts +19 -15
@@ -30,6 +30,7 @@ exports.DynamicGroupNode = void 0;
30
30
  var core_1 = require("@logicflow/core");
31
31
  var lodash_es_1 = require("lodash-es");
32
32
  var resize_1 = require("@logicflow/core/es/util/resize");
33
+ var utils_1 = require("../tools/label/utils");
33
34
  var DynamicGroupNode = /** @class */ (function (_super) {
34
35
  __extends(DynamicGroupNode, _super);
35
36
  function DynamicGroupNode() {
@@ -39,13 +40,30 @@ var DynamicGroupNode = /** @class */ (function (_super) {
39
40
  _super.prototype.componentDidMount.call(this);
40
41
  var _a = this.props, curGroup = _a.model, graphModel = _a.graphModel;
41
42
  var eventCenter = graphModel.eventCenter;
43
+ var childrenPositionMap = new Map();
42
44
  // 在 group 旋转时,对组内的所有子节点也进行对应的旋转计算
43
45
  eventCenter.on('node:rotate', function (_a) {
44
46
  var model = _a.model;
47
+ // DONE: 目前操作是对分组内节点以节点中心旋转节点本身,而按照正常逻辑,应该是以分组中心,旋转节点(跟 Label 旋转操作逻辑一致)
45
48
  if (model.id === curGroup.id) {
49
+ var center_1 = { x: curGroup.x, y: curGroup.y };
46
50
  (0, lodash_es_1.forEach)(Array.from(curGroup.children), function (childId) {
47
51
  var child = graphModel.getNodeModelById(childId);
48
52
  if (child) {
53
+ var point = { x: child.x, y: child.y };
54
+ if (childrenPositionMap.has(child.id)) {
55
+ point = childrenPositionMap.get(child.id);
56
+ }
57
+ else {
58
+ childrenPositionMap.set(child.id, point);
59
+ }
60
+ // 弧度转角度
61
+ var theta = model.rotate * (180 / Math.PI);
62
+ if (theta < 0)
63
+ theta += 360;
64
+ var radian = theta * (Math.PI / 180);
65
+ var newPoint = (0, utils_1.rotatePointAroundCenter)(point, center_1, radian);
66
+ child.moveTo(newPoint.x, newPoint.y);
49
67
  child.rotate = model.rotate;
50
68
  }
51
69
  });
@@ -54,6 +72,7 @@ var DynamicGroupNode = /** @class */ (function (_super) {
54
72
  // 在 group 缩放时,对组内的所有子节点也进行对应的缩放计算
55
73
  eventCenter.on('node:resize', function (_a) {
56
74
  var deltaX = _a.deltaX, deltaY = _a.deltaY, index = _a.index, model = _a.model;
75
+ // TODO: 目前 Resize 的比例值有问题,导致缩放时,节点会变形,需要修复
57
76
  if (model.id === curGroup.id) {
58
77
  (0, lodash_es_1.forEach)(Array.from(curGroup.children), function (childId) {
59
78
  var child = graphModel.getNodeModelById(childId);
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/dynamic-group/node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wCAAyD;AACzD,uCAAmC;AAEnC,yDAA6D;AAO7D;IAEU,oCAAW;IAFrB;;IA+HA,CAAC;IA5HC,4CAAiB,GAAjB;QACE,gBAAK,CAAC,iBAAiB,WAAE,CAAA;QAEnB,IAAA,KAAkC,IAAI,CAAC,KAAK,EAAnC,QAAQ,WAAA,EAAE,UAAU,gBAAe,CAAA;QAC1C,IAAA,WAAW,GAAK,UAAU,YAAf,CAAe;QAElC,kCAAkC;QAClC,WAAW,CAAC,EAAE,CAAC,aAAa,EAAE,UAAC,EAAS;gBAAP,KAAK,WAAA;YACpC,IAAI,KAAK,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAC7B,IAAA,mBAAO,EAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAC,OAAO;oBAC7C,IAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;oBAClD,IAAI,KAAK,EAAE,CAAC;wBACV,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;oBAC7B,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,kCAAkC;QAClC,WAAW,CAAC,EAAE,CAAC,aAAa,EAAE,UAAC,EAAgC;gBAA9B,MAAM,YAAA,EAAE,MAAM,YAAA,EAAE,KAAK,WAAA,EAAE,KAAK,WAAA;YAC3D,IAAI,KAAK,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAC7B,IAAA,mBAAO,EAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAC,OAAO;oBAC7C,IAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;oBAClD,IAAI,KAAK,EAAE,CAAC;wBACV,8BAA8B;wBAC9B,IAAA,qBAAY,EAAC;4BACX,MAAM,QAAA;4BACN,MAAM,QAAA;4BACN,KAAK,OAAA;4BACL,SAAS,EAAE,KAAK;4BAChB,UAAU,YAAA;4BACV,cAAc,EAAE,cAAO,CAAC;yBACzB,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,2CAAgB,GAAhB;QACQ,IAAA,KAA6B,IAAI,CAAC,KAAK,CAAC,KAAK,EAA3C,SAAS,eAAA,EAAE,WAAW,iBAAqB,CAAA;QACnD,IAAM,iBAAiB,GAAG,SAAS,IAAI,CAAC,WAAW,CAAA;QACnD,OAAO,iBAAiB,CAAC,CAAC,CAAC,gBAAK,CAAC,gBAAgB,WAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAC5D,CAAC;IAED,6CAAkB,GAAlB;QACE,8CAA8C;QACtC,IAAA,KAAK,GAAK,IAAI,CAAC,KAAK,MAAf,CAAe;QACpB,IAAA,KAAK,GAAyC,KAAK,MAA9C,EAAE,MAAM,GAAiC,KAAK,OAAtC,EAAE,CAAC,GAA8B,KAAK,EAAnC,EAAE,CAAC,GAA2B,KAAK,EAAhC,EAAE,MAAM,GAAmB,KAAK,OAAxB,EAAE,YAAY,GAAK,KAAK,aAAV,CAAU;QAC3D,IAAI,CAAC,YAAY;YAAE,OAAO,IAAI,CAAA;QAEtB,IAAA,KAAoB,KAAK,CAAC,YAAY,EAAE,YAAzB,EAAf,WAAW,mBAAG,CAAC,KAAA,CAAyB;QAChD,IAAM,KAAK,GAAG,KAAK,CAAC,sBAAsB,EAAE,CAAA;QAE5C,IAAM,QAAQ,GAAG,KAAK,GAAG,WAAW,GAAG,CAAC,CAAA;QACxC,IAAM,SAAS,GAAG,MAAM,GAAG,WAAW,GAAG,CAAC,CAAA;QAC1C,OAAO,IAAA,QAAC,EAAC,MAAM,wBACV,KAAK,KACR,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,SAAS,EACjB,CAAC,EAAE,CAAC,GAAG,QAAQ,GAAG,CAAC,EACnB,CAAC,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,EACpB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,IACV,CAAA;IACJ,CAAC;IAED,0CAAe,GAAf,UAAgB,EAAU,EAAE,EAAU;QACpC,OAAO,YAAK,EAAE,GAAG,CAAC,cAAI,EAAE,GAAG,CAAC,cAAI,EAAE,GAAG,EAAE,cAAI,EAAE,GAAG,CAAC,eAAK,EAAE,GAAG,CAAC,cAAI,EAAE,GAAG,CAAC,cACpE,EAAE,GAAG,CAAC,cACJ,EAAE,GAAG,EAAE,CAAE,CAAA;IACf,CAAC;IAED,wCAAa,GAAb,UAAc,EAAU,EAAE,EAAU;QAClC,OAAO,YAAK,EAAE,GAAG,CAAC,cAAI,EAAE,GAAG,CAAC,cAAI,EAAE,GAAG,EAAE,cAAI,EAAE,GAAG,CAAC,MAAG,CAAA;IACtD,CAAC;IAED,gBAAgB;IAChB,yCAAc,GAAd;QACU,IAAA,KAAK,GAAK,IAAI,CAAC,KAAK,MAAf,CAAe;QACpB,IAAA,CAAC,GAAuB,KAAK,EAA5B,EAAE,CAAC,GAAoB,KAAK,EAAzB,EAAE,KAAK,GAAa,KAAK,MAAlB,EAAE,MAAM,GAAK,KAAK,OAAV,CAAU;QACrC,IAAM,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,EAAE,CAAA;QAC7B,IAAM,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAA;QAE9B,IAAI,CAAC,KAAK,CAAC,WAAW;YAAE,OAAO,IAAI,CAAA;QACnC,IAAM,QAAQ,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW;YACjC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC;YAC9B,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QAE9B,IAAM,WAAW,GAAG,IAAA,QAAC,EAAC,MAAM,EAAE;YAC5B,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,CAAC;YACd,gBAAgB,EAAE,MAAM;YACxB,CAAC,EAAE,QAAQ;SACZ,CAAC,CAAA;QAEF,OAAO,IAAA,QAAC,EAAC,GAAG,EAAE,EAAE,EAAE;YAChB,IAAA,QAAC,EAAC,MAAM,EAAE;gBACR,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,EAAE;gBACT,EAAE,EAAE,CAAC;gBACL,EAAE,EAAE,CAAC;gBACL,WAAW,EAAE,CAAC;gBACd,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,SAAS;gBACjB,CAAC,EAAE,EAAE;gBACL,CAAC,EAAE,EAAE;gBACL,OAAO,EAAE;oBACP,KAAK,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;gBAC1C,CAAC;aACF,CAAC;YACF,WAAW;SACZ,CAAC,CAAA;IACJ,CAAC;IAED,mCAAQ,GAAR;QACE,OAAO,IAAA,QAAC,EAAC,GAAG,EAAE,EAAE,EAAE;YAChB,IAAI,CAAC,kBAAkB,EAAE;YACzB,gBAAK,CAAC,QAAQ,WAAE;YAChB,IAAI,CAAC,cAAc,EAAE;SACtB,CAAC,CAAA;IACJ,CAAC;IACH,uBAAC;AAAD,CAAC,AA/HD,CAEU,eAAQ,GA6HjB;AA/HY,4CAAgB;AAiI7B,kBAAe,gBAAgB,CAAA"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/dynamic-group/node.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,12 @@ import BoxBoundsPoint = Model.BoxBoundsPoint;
8
8
  export declare function isBoundsInGroup(bounds: BoxBoundsPoint, group: BaseNodeModel): boolean;
9
9
  /**
10
10
  * 判断 bounds 是否可以移动到下一个范围
11
- * @param bounds
12
- * @param group
11
+ * @param groupBounds
12
+ * @param node
13
+ * @param deltaX
14
+ * @param deltaY
13
15
  */
14
- export declare function isAllowMoveTo(bounds: BoxBoundsPoint, group: BaseNodeModel): {
16
+ export declare function isAllowMoveTo(groupBounds: BoxBoundsPoint, node: BaseNodeModel, deltaX: number, deltaY: number): {
15
17
  x: boolean;
16
18
  y: boolean;
17
19
  };
@@ -17,15 +17,22 @@ function isBoundsInGroup(bounds, group) {
17
17
  exports.isBoundsInGroup = isBoundsInGroup;
18
18
  /**
19
19
  * 判断 bounds 是否可以移动到下一个范围
20
- * @param bounds
21
- * @param group
20
+ * @param groupBounds
21
+ * @param node
22
+ * @param deltaX
23
+ * @param deltaY
22
24
  */
23
- function isAllowMoveTo(bounds, group) {
24
- var minX = bounds.minX, minY = bounds.minY, maxX = bounds.maxX, maxY = bounds.maxY;
25
- var x = group.x, y = group.y, width = group.width, height = group.height;
25
+ function isAllowMoveTo(groupBounds, node, deltaX, deltaY) {
26
+ var minX = groupBounds.minX, minY = groupBounds.minY, maxX = groupBounds.maxX, maxY = groupBounds.maxY;
27
+ var x = node.x, y = node.y, width = node.width, height = node.height;
28
+ // DONE: 计算节点坐标 (x, y) 可移动的范围,并判断 x + deltaX, y + deltaY 是否在范围内
29
+ var allowMoveMinX = minX + width / 2;
30
+ var allowMoveMinY = minY + height / 2;
31
+ var allowMoveMaxX = maxX - width / 2;
32
+ var allowMoveMaxY = maxY - height / 2;
26
33
  return {
27
- x: minX >= x - width / 2 && maxX <= x + width / 2,
28
- y: minY >= y - height / 2 && maxY <= y + height / 2,
34
+ x: x + deltaX >= allowMoveMinX && x + deltaX <= allowMoveMaxX,
35
+ y: y + deltaY >= allowMoveMinY && y + deltaY <= allowMoveMaxY,
29
36
  };
30
37
  }
31
38
  exports.isAllowMoveTo = isAllowMoveTo;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/dynamic-group/utils.ts"],"names":[],"mappings":";;;AAGA;;;;GAIG;AACH,SAAgB,eAAe,CAAC,MAAsB,EAAE,KAAoB;IAClE,IAAA,IAAI,GAAuB,MAAM,KAA7B,EAAE,IAAI,GAAiB,MAAM,KAAvB,EAAE,IAAI,GAAW,MAAM,KAAjB,EAAE,IAAI,GAAK,MAAM,KAAX,CAAW;IACjC,IAAA,CAAC,GAAuB,KAAK,EAA5B,EAAE,CAAC,GAAoB,KAAK,EAAzB,EAAE,KAAK,GAAa,KAAK,MAAlB,EAAE,MAAM,GAAK,KAAK,OAAV,CAAU;IACrC,OAAO,CACL,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC;QACtB,IAAI,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,CACvB,CAAA;AACH,CAAC;AATD,0CASC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,MAAsB,EAAE,KAAoB;IAChE,IAAA,IAAI,GAAuB,MAAM,KAA7B,EAAE,IAAI,GAAiB,MAAM,KAAvB,EAAE,IAAI,GAAW,MAAM,KAAjB,EAAE,IAAI,GAAK,MAAM,KAAX,CAAW;IACjC,IAAA,CAAC,GAAuB,KAAK,EAA5B,EAAE,CAAC,GAAoB,KAAK,EAAzB,EAAE,KAAK,GAAa,KAAK,MAAlB,EAAE,MAAM,GAAK,KAAK,OAAV,CAAU;IAErC,OAAO;QACL,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC;QACjD,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC;KACpD,CAAA;AACH,CAAC;AARD,sCAQC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/dynamic-group/utils.ts"],"names":[],"mappings":";;;AAGA;;;;GAIG;AACH,SAAgB,eAAe,CAAC,MAAsB,EAAE,KAAoB;IAClE,IAAA,IAAI,GAAuB,MAAM,KAA7B,EAAE,IAAI,GAAiB,MAAM,KAAvB,EAAE,IAAI,GAAW,MAAM,KAAjB,EAAE,IAAI,GAAK,MAAM,KAAX,CAAW;IACjC,IAAA,CAAC,GAAuB,KAAK,EAA5B,EAAE,CAAC,GAAoB,KAAK,EAAzB,EAAE,KAAK,GAAa,KAAK,MAAlB,EAAE,MAAM,GAAK,KAAK,OAAV,CAAU;IACrC,OAAO,CACL,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC;QACtB,IAAI,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,CACvB,CAAA;AACH,CAAC;AATD,0CASC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CAC3B,WAA2B,EAC3B,IAAmB,EACnB,MAAc,EACd,MAAc;IAEN,IAAA,IAAI,GAAuB,WAAW,KAAlC,EAAE,IAAI,GAAiB,WAAW,KAA5B,EAAE,IAAI,GAAW,WAAW,KAAtB,EAAE,IAAI,GAAK,WAAW,KAAhB,CAAgB;IACtC,IAAA,CAAC,GAAuB,IAAI,EAA3B,EAAE,CAAC,GAAoB,IAAI,EAAxB,EAAE,KAAK,GAAa,IAAI,MAAjB,EAAE,MAAM,GAAK,IAAI,OAAT,CAAS;IAEpC,+DAA+D;IAC/D,IAAM,aAAa,GAAG,IAAI,GAAG,KAAK,GAAG,CAAC,CAAA;IACtC,IAAM,aAAa,GAAG,IAAI,GAAG,MAAM,GAAG,CAAC,CAAA;IACvC,IAAM,aAAa,GAAG,IAAI,GAAG,KAAK,GAAG,CAAC,CAAA;IACtC,IAAM,aAAa,GAAG,IAAI,GAAG,MAAM,GAAG,CAAC,CAAA;IAEvC,OAAO;QACL,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,aAAa,IAAI,CAAC,GAAG,MAAM,IAAI,aAAa;QAC7D,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,aAAa,IAAI,CAAC,GAAG,MAAM,IAAI,aAAa;KAC9D,CAAA;AACH,CAAC;AAnBD,sCAmBC"}
package/lib/index.css CHANGED
@@ -1,6 +1,3 @@
1
- @import url('medium-editor/dist/css/medium-editor.min.css');
2
- @import url('medium-editor/dist/css/themes/beagle.min.css');
3
- @import url('vanilla-picker/dist/vanilla-picker.csp.css');
4
1
  .lf-control {
5
2
  position: absolute;
6
3
  top: 0;
@@ -216,63 +213,3 @@
216
213
  .lf-mindmap_addIcon {
217
214
  margin-top: 10px;
218
215
  }
219
- /* label */
220
- .lf-label-overlay {
221
- width: 0;
222
- height: 0;
223
- overflow: visible;
224
- }
225
- .lf-label-overlay .lf-label-editor {
226
- padding: 4px;
227
- background: #fff;
228
- border-radius: 5px;
229
- }
230
- .lf-label-overlay .lf-label-editor-container {
231
- position: absolute;
232
- display: flex;
233
- align-items: center;
234
- justify-content: center;
235
- overflow: visible;
236
- text-align: center;
237
- }
238
- .lf-label-overlay .lf-label-editor-container p {
239
- margin: 0;
240
- }
241
- .lf-label-overlay .lf-label-editor-dragging {
242
- cursor: move;
243
- }
244
- .lf-label-overlay .lf-label-editor-editing {
245
- border: 2px solid #275dc5;
246
- outline: none;
247
- cursor: text;
248
- }
249
- .lf-label-overlay .lf-label-editor-hover {
250
- border: 2px dashed #acacac;
251
- }
252
- .lf-label-overlay .lf-label-editor-clip {
253
- width: 100px;
254
- /* 根据需要调整宽度 */
255
- overflow: hidden;
256
- white-space: nowrap;
257
- text-overflow: clip;
258
- }
259
- .lf-label-overlay .lf-label-editor-ellipsis {
260
- width: 100px;
261
- /* 根据需要调整宽度 */
262
- overflow: hidden;
263
- white-space: nowrap;
264
- text-overflow: ellipsis;
265
- }
266
- .lf-label-overlay .lf-label-editor-wrap {
267
- width: 100px;
268
- /* 根据需要调整宽度 */
269
- white-space: normal;
270
- overflow-wrap: break-word;
271
- /* 允许单词内换行 */
272
- }
273
- .lf-label-overlay .lf-label-editor-nowrap {
274
- width: 100px;
275
- /* 根据需要调整宽度 */
276
- overflow: visible;
277
- white-space: nowrap;
278
- }
package/lib/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import './index.less';
1
2
  export * from './bpmn';
2
3
  export * from './bpmn-adapter';
3
4
  export * from './bpmn-elements';
package/lib/index.js CHANGED
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ require("./index.less");
17
18
  // BPMN 相关
18
19
  __exportStar(require("./bpmn"), exports);
19
20
  __exportStar(require("./bpmn-adapter"), exports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,UAAU;AACV,yCAAsB;AACtB,iDAA8B;AAC9B,kDAA+B;AAC/B,0DAAuC;AACvC,0DAAuC;AACvC,0DAAuC;AAEvC,UAAU;AACV,kDAA+B;AAE/B,WAAW;AACX,kDAA+B;AAC/B,YAAY;AACZ,4DAAyC;AAEzC,mBAAmB;AACnB,gDAA6B;AAC7B,mDAAgC;AAChC,oDAAiC;AACjC,sDAAmC;AAEnC,wBAAwB;AACxB,uDAAoC;AACpC,oDAAiC;AACjC,4DAAyC;AACzC,yDAAsC;AACtC,wDAAqC;AACrC,gEAA6C;AAC7C,yDAAsC;AAEtC,oBAAoB;AACpB,0DAAuC;AACvC,6DAA0C;AAE1C;;;GAGG;AACH,+CAA4B;AAC5B,oDAAiC;AAEjC,OAAO;AACP,oDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wBAAqB;AAErB,UAAU;AACV,yCAAsB;AACtB,iDAA8B;AAC9B,kDAA+B;AAC/B,0DAAuC;AACvC,0DAAuC;AACvC,0DAAuC;AAEvC,UAAU;AACV,kDAA+B;AAE/B,WAAW;AACX,kDAA+B;AAC/B,YAAY;AACZ,4DAAyC;AAEzC,mBAAmB;AACnB,gDAA6B;AAC7B,mDAAgC;AAChC,oDAAiC;AACjC,sDAAmC;AAEnC,wBAAwB;AACxB,uDAAoC;AACpC,oDAAiC;AACjC,4DAAyC;AACzC,yDAAsC;AACtC,wDAAqC;AACrC,gEAA6C;AAC7C,yDAAsC;AAEtC,oBAAoB;AACpB,0DAAuC;AACvC,6DAA0C;AAE1C;;;GAGG;AACH,+CAA4B;AAC5B,oDAAiC;AAEjC,OAAO;AACP,oDAAiC"}
@@ -1,6 +1,3 @@
1
- @import url('medium-editor/dist/css/medium-editor.min.css');
2
- @import url('medium-editor/dist/css/themes/beagle.min.css');
3
- @import url('vanilla-picker/dist/vanilla-picker.csp.css');
4
1
  .lf-control {
5
2
  position: absolute;
6
3
  top: 0;
@@ -216,63 +213,3 @@
216
213
  .lf-mindmap_addIcon {
217
214
  margin-top: 10px;
218
215
  }
219
- /* label */
220
- .lf-label-overlay {
221
- width: 0;
222
- height: 0;
223
- overflow: visible;
224
- }
225
- .lf-label-overlay .lf-label-editor {
226
- padding: 4px;
227
- background: #fff;
228
- border-radius: 5px;
229
- }
230
- .lf-label-overlay .lf-label-editor-container {
231
- position: absolute;
232
- display: flex;
233
- align-items: center;
234
- justify-content: center;
235
- overflow: visible;
236
- text-align: center;
237
- }
238
- .lf-label-overlay .lf-label-editor-container p {
239
- margin: 0;
240
- }
241
- .lf-label-overlay .lf-label-editor-dragging {
242
- cursor: move;
243
- }
244
- .lf-label-overlay .lf-label-editor-editing {
245
- border: 2px solid #275dc5;
246
- outline: none;
247
- cursor: text;
248
- }
249
- .lf-label-overlay .lf-label-editor-hover {
250
- border: 2px dashed #acacac;
251
- }
252
- .lf-label-overlay .lf-label-editor-clip {
253
- width: 100px;
254
- /* 根据需要调整宽度 */
255
- overflow: hidden;
256
- white-space: nowrap;
257
- text-overflow: clip;
258
- }
259
- .lf-label-overlay .lf-label-editor-ellipsis {
260
- width: 100px;
261
- /* 根据需要调整宽度 */
262
- overflow: hidden;
263
- white-space: nowrap;
264
- text-overflow: ellipsis;
265
- }
266
- .lf-label-overlay .lf-label-editor-wrap {
267
- width: 100px;
268
- /* 根据需要调整宽度 */
269
- white-space: normal;
270
- overflow-wrap: break-word;
271
- /* 允许单词内换行 */
272
- }
273
- .lf-label-overlay .lf-label-editor-nowrap {
274
- width: 100px;
275
- /* 根据需要调整宽度 */
276
- overflow: visible;
277
- white-space: nowrap;
278
- }
@@ -1,8 +1,3 @@
1
- @import url('medium-editor/dist/css/medium-editor.min.css');
2
- //@import url('medium-editor/dist/css/themes/bootstrap.min.css');
3
- @import url('medium-editor/dist/css/themes/beagle.min.css');
4
- @import url('vanilla-picker/dist/vanilla-picker.csp.css');
5
-
6
1
  .lf-control {
7
2
  position: absolute;
8
3
  top: 0;
@@ -258,71 +253,3 @@
258
253
  .lf-mindmap_addIcon {
259
254
  margin-top: 10px;
260
255
  }
261
-
262
- /* label */
263
- .lf-label-overlay {
264
- width: 0;
265
- height: 0;
266
- overflow: visible;
267
-
268
- .lf-label-editor {
269
- //box-sizing: content-box;
270
- padding: 4px;
271
- background: #fff;
272
- border-radius: 5px;
273
-
274
- &-container {
275
- position: absolute;
276
- display: flex;
277
- align-items: center;
278
- justify-content: center;
279
- overflow: visible;
280
- text-align: center;
281
-
282
- p {
283
- margin: 0;
284
- }
285
- }
286
-
287
- &-dragging {
288
- cursor: move;
289
- }
290
-
291
- &-editing {
292
- border: 2px solid #275dc5;
293
- outline: none;
294
- cursor: text;
295
- }
296
-
297
- &-hover {
298
- border: 2px dashed #acacac;
299
- }
300
-
301
- // textOverflowMode
302
- &-clip {
303
- width: 100px; /* 根据需要调整宽度 */
304
- overflow: hidden;
305
- white-space: nowrap;
306
- text-overflow: clip;
307
- }
308
-
309
- &-ellipsis {
310
- width: 100px; /* 根据需要调整宽度 */
311
- overflow: hidden;
312
- white-space: nowrap;
313
- text-overflow: ellipsis;
314
- }
315
-
316
- &-wrap {
317
- width: 100px; /* 根据需要调整宽度 */
318
- white-space: normal;
319
- overflow-wrap: break-word; /* 允许单词内换行 */
320
- }
321
-
322
- &-nowrap {
323
- width: 100px; /* 根据需要调整宽度 */
324
- overflow: visible;
325
- white-space: nowrap;
326
- }
327
- }
328
- }
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * Auto generated file, do not modify it!
3
3
  */
4
- export declare const content = "@import url('medium-editor/dist/css/medium-editor.min.css');\n@import url('medium-editor/dist/css/themes/beagle.min.css');\n@import url('vanilla-picker/dist/vanilla-picker.csp.css');\n.lf-control {\n position: absolute;\n top: 0;\n right: 10px;\n display: flex;\n margin: 5px;\n padding: 0 15px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 5px;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);\n}\n.lf-control-item {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 5px 10px;\n cursor: pointer;\n}\n.lf-control-item:hover {\n background: #efefef;\n}\n.lf-control-item.disabled {\n filter: opacity(0.5);\n /* cursor: not-allowed; */\n pointer-events: none;\n}\n.lf-control-item.disabled:hover {\n background: #fff;\n}\n.lf-control-item.disabled i {\n pointer-events: none;\n}\n.lf-control-item i {\n display: inline-block;\n width: 20px;\n height: 20px;\n vertical-align: middle;\n background-size: cover;\n}\n.lf-control-text {\n margin-top: 5px;\n font-size: 12px;\n}\n.lf-control-zoomOut {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAFMElEQVR4Xu3dsQ3CQBBFQei/KEoDXQG2xAv9h3yDnb0nh7xffgQIXAq82RAgcC0gEK+DwI2AQDwPAgLxBgg0AV+Q5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCAhk5NDWbAICaW6mRgQEMnJoazYBgTQ3UyMCAhk5tDWbgECam6kRAYGMHNqaTUAgzc3UiIBARg5tzSYgkOZmakRAICOHtmYTEEhzMzUiIJCRQ1uzCQikuZkaERDIyKGt2QQE0txMjQgIZOTQ1mwCAmlupkYEBDJyaGs2AYE0N1MjAgIZObQ1m4BAmpupEQGBjBzamk1AIM3N1IiAQEYObc0mIJDmZmpEQCAjh7ZmExBIczM1IiCQkUNbswkIpLmZGhEQyMihrdkEBNLcTI0ICGTk0NZsAgJpbqZGBAQycmhrNgGBNDdTIwICGTm0NZuAQJqbqREBgYwc2ppNQCDNzdSIgEBGDm3NJiCQ5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCAhk5NDWbAICaW6mRgQEMnJoazYBgTQ3UyMCAhk5tDWbgECam6kRAYGMHNqaTUAgzc3UiIBARg5tzSYgkOZmakRAICOHtmYTEEhzMzUiIJCRQ1uzCQikuZkaERDIyKGt2QQE0txMjQgIZOTQ1mwCAmlupkYEBDJyaGs2AYE0N1MjAgIZObQ1m4BAmpupEQGBjBzamk3gBPJpo6YIPF/gBPJ9/po2JNAEBNLcTI0ICGTk0NZsAgJpbqZGBAQycmhrNgGBNDdTIwICGTm0NZuAQJqbqREBgYwc2ppNQCDNzdSIgEBGDm3NJiCQ5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCAhk5NDWbAICaW6mRgQEMnJoazYBgTQ3UyMCAhk5tDWbgECam6kRAYGMHNqaTUAgzc3UiIBARg5tzSYgkOZmakRAICOHtmYTEEhzMzUiIJCRQ1uzCQikuZkaETiB+AOdkWNb83+BE4gfAQIXAgLxNAjcCAjE8yAgEG+AQBPwBWlupkYEBDJyaGs2AYE0N1MjAgIZObQ1m4BAmpupEQGBjBzamk1AIM3N1IiAQEYObc0mIJDmZmpEQCAjh7ZmExBIczM1IiCQkUNbswkIpLmZGhEQyMihrdkEBNLcTI0ICGTk0NZsAgJpbqZGBAQycmhrNgGBNDdTIwICGTm0NZuAQJqbqREBgYwc2ppNQCDNzdSIgEBGDm3NJiCQ5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCAhk5NDWbAICaW6mRgQEMnJoazYBgTQ3UyMCAhk5tDWbgECam6kRAYGMHNqaTUAgzc3UiIBARg5tzSYgkOZmakRAICOHtmYTEEhzMzUiIJCRQ1uzCQikuZkaERDIyKGt2QQE0txMjQgIZOTQ1mwCAmlupkYEBDJyaGs2AYE0N1MjAgIZObQ1m4BAmpupEQGBjBzamk1AIM3N1IiAQEYObc0mIJDmZmpEQCAjh7ZmExBIczM1IiCQkUNbswkIpLmZGhEQyMihrdkEBNLcTI0ICGTk0NZsAgJpbqZGBAQycmhrNgGBNDdTIwICGTm0NZuAQJqbqREBgYwc2ppNQCDNzdSIgEBGDm3NJiCQ5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCPwAiAUiJ9hUCCUAAAAASUVORK5CYII=');\n}\n.lf-control-zoomIn {\n background-image: url('data:image/png;base64,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');\n}\n.lf-control-fit {\n background-image: url('data:image/png;base64,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');\n}\n.lf-control-undo {\n background-image: url('data:image/png;base64,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');\n}\n.lf-control-redo {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAASJElEQVR4Xu2dCdB2YxnHf0hZvkTC2CpZxpKZZB0iDcZUQ5LJEkNkouxEWUJSyJatIssIqca0aLSQyiStTCotQzXaJs1EQiqq+X/ffXzv937v85ztXs+5rpl3vm/mPee6r/t/n9/7POec676uJTAzBUyBiQosYdqYAqbAZAUMELs6TIEpChggdnmYAgaIXQOmQDcF7BOkm2521kgUMEBGstA2zW4KGCDddLOzRqKAAVLuQt8AnAj8qdwp5B+5AZL/Gk2K8A/APOAo4Ppyp5F35AZI3uszLToBsqY74CvAgcBfy51OnpEbIHmuS5OoZgKi4/8GvB34UpOT7ZhmChggzXTK8ajZgFQx3gS8G3gsx6BLi8kAKW3FFsY7CRAd8Rdgf+COcqeXR+QGSB7r0CWKaYBU/q4EjgOe7DKAnQMGSLlXQRNANLvfA/sCd5c71XSRGyDptO87clNANM7/gIuBk4Gn+w48pvMNkHJXuw0g1SwfBPYBflzutONGboDE1dvnaF0A0fjPAOcAHwD+4zOgIfoyQMpd1a6AVDP+ObA3oH/NJihggJR7afQFRDP/N3A6cB7w33KlCBe5ARJO29CefQBSxah7kr2A34UOujT/BkhpK7YwXp+AyOtTwEnAZeVK4j9yA8S/prE8+gakivtbwNssjX6BHAZIrMvZ/zihAFGkjwPHANf6D7ssjwZIWes1M9qQgFTjjD6N3gAxQOoUGHUavQFSd3nk+/sYnyAzZ38zcPjY0ugNkHwBqIssNiCKZ3Rp9AZI3WWY7+9TAFKpcTVw9BjS6A2QfAGoiywlIIptFGn0BkjdZZjv71MDImWURn+pe8E4yDR6AyRfAOoiywGQKsbBptEbIHWXYb6/zwkQqfQscC5wxpDS6A2QfAGoiyw3QKp4B5VGb4DUXYb5/j5XQKSY0ujPdBuzik6jN0DyBaAuspwBqWJXGr22+OoepUgzQIpctvlBlwCI4vwn8D7gEvfUqyjFDZCilmuRYEsBpApaZYdUfkjvT4oxA6SYpVos0NIA0QT+ARwL6E18EWaAFLFMcwZZIiDVRFQSVaVRlduVtRkgWS/P1OBKBkQTUxq9imwrSzhbM0CyXZrawEoHpJqg2jWobYOAyc4MkOyWpHFAQwFEE1bjHzUA0g7GrMwAyWo5WgUzJECqiWsPvNLodTOfhRkgWSxDpyCGCIiEUFNSVVVRdZXkZoAkX4LOAQwVEAmiNPrLXRdfvWhMZgZIMul7DzxkQCpxVOlRqSrf761WRwcGSEfhMjhtDIBIZqXRnw+cliKN3gDJ4ErvGMJYAKnkSZJGb4B0vDozOG1sgEhy9TNRX5MPxapGb4BkcKV3DGGMgFRSRUujN0A6Xp0ZnDZmQCS/ikSo56J6L+qpVxAzQILIGsXp2AGpRA6aRm+ARLmWgwxigCyU9QngeEB94b2aAeJVzqjODJDF5faeRm+ARL2mvQ5mgMwt56PAEcBNPtQeGyCrA+sDGwBrA8u5n2WBmT8v8CFuYB+axxqBxyjZvZc0+qECsgywPbAdsLGDQhfU8iWv+KzY/wwIeLPJCvROox8KIEsBWwA7uR+BUcKnQJ+L2wBprt717mtX6zT60gHZE9gbeAMwr7legzjSAGm3jJ3S6EsDZElgR2A/4C3Aiu00GtTRBkj75dQLxY8BJ7h6XbUeSgFE37U1KW2kWa12VuM4wADpvs6N0+hzB2Qt4BTgYOD53fUY5JkGSL9lVc3gC4BTXS3hOb3lCshLXf6/NvIv3U+HwZ5tgPhZ2l+5+9ifzOUuN0D0VUpVwQ/1M/dBezFA/C3vM8AHgbMB/f85ywUQvbA7EXiPe3Hnb+rD9WSA+F9bfYroqag+VeZbakA0/gFuA8ya/uc7aI8GSJjl/Ze7771Im7JSArINcBmweZh5Dt6rARJ2iVUoYp8UgOim+yz3dUrvNcy6KWCAdNOt6VlPAYfFBkT5ULcAmzaN0o6bqIABEu7ieG4TVkxAjnRdUJU1a9ZfAQOkv4azPSzWDSsGIC8EPgfs6n8+o/ZogPhd/jkLQYQGZBXgm8Amfudi3gADxM9lMLUjb0hAXgZ8G9C/Zv4VMED6a1pbjC4UIK8Cvg7oE8QsjAIGSHddVc70XOCMunKmIQB5LXCbvRHvvnoNzzRAGgo16zD1bFdBbN1z1JpvQHYAbrfM21rdfRxggLRTUXtBPup6tqvoXCPzCYjeiN9lnxyNdPdxkAHSXEX1ZlePdr3faGW+ANkIuAd4UavR7eA+ChggzdS7yvVmf7LZ4Yse5QOQdVyDE7sh77IC3c8xQKZrpx7s6sWuYnKdrS8gysD9HqCdf6Xb34HHXQNJtSTWk46czepiTV4dFY1TD/bH+i5gX0B+AGzZN4iI5z8MfBn4BaDKhPrR91P9tSnNrLLi4iumP2zqua6icV6sDyB6InCUlyjCOtFTta+6HtwCYyhmgCy6kuqxri3aKhbnzboCsptPSr3NZoEjCaT3MLc6MDrdnHmOKYQ7A2SBqvpqrD/UKg7n3boAsh5wX4aF2h5y+4o/VcD9g4+FNEAW9FJXKSgVhQtibQFROU/Boce6uZjA0GZ7gbHIhvtcAgwUx5gB0bcC1S9QEbig1haQC90z5aBBNXSuvxpq6Hj1yMCo5BkrIPO3wgIq/hbc2gCyGfBDQIWiU5oe3SnRTA8JtMFlrDY2QFRMQUXe9EdaRd+iWFNABIVKoqTe1/ENV5f3kSjq5D3ImABZrBxPrKVpCojq4n4kVlBzjKPkMtXNujRhDLkNPQZA1Bdd95eLFXSLtRhNANGGp18CakqTwn4N7OFe7qUYP9cxhw7I1JKgsRalCSB68/zGWAHNGkc7End3KSCJQsh22KECovuL811tZm2HTWp1gOjG/N5EEd4IHDTSJ1RNJB8iII3bEjQRyMcxdYB8AXiTj4Fa+vgwcHLLc8Z2+JAA0WamK9y7jayeTE4DRM0vtak9tl2c0buW2HNvM95QAOnUGq2NUH2OnQaIalnt1cd5h3P1ZvRdHc4b4ylDAOQ6l0fVurlmrAWfBIhSSR6IFYQbR/cc2uBi1kyBkgHp3Z65mUT9j5oEiMhW6nAs0yO9VwMqGGzWTIFSAdFeDe3Z0N6N7G0uQLSvXBuIYvUZ10tAFXyI/YmV/eLUBFgaIAJCu/xuLkn4uQDRJNS3I5YdAlwTa7ABjVMSINoXrq/Pxe3cnAuQ+yO2J1Bu1c4DumhjTqUEQHTzfazLuI6pjbexZgOyhcvY9TbAFEdPABsCf4wx2ADHyB2Q53pslKz9bEA+Drwz0oQOAz4RaawhDpMrIHrR916XWKoXgEXbbEC0v3eFCDPSvpKtIowz5CFyBGTOHhslL8JMQHZ0vTxizEfNdFT93ay7AjkBoqRCVUrXRrZom5m6S9f8zJmAqJH6Kc1P7Xykamlt3flsO7FSIBdAantslLxkMwFRhcQYF67aI6jItVk/BVIDosqTSipVXQBtbBqkVYAs70pu1mX39hXBPj36Krjw/JSAtOqx4W/K8T1VQCilXantoe1g4NrQg4zEfwpA9FRK2dbaitC4x0bJ61EBor3eRwSeiApDrwqoOoVZfwViA9K5x0b/qabzUAES4/5DZXqOSTfVwY0cE5ArgeOAoZZxnXhxVIDorbbuQ0KaUkqUWmLmR4EYgHjpseFnumm8CJDVQ9Y2ddPS1yplCdvXK3/rHBoQ7c/R1+7ePTb8TTm+JwHyOuDOwEMrm3OXwGOMzX0oQLz32Ch5YQSItrheHngSys3RW1YzfwqEACRIjw1/U47vSYBcAhwZeGh9SqlUvZk/BXwCoq9R6rGhCvlmMxQQIOq+pNyokKbHu147/4QMthDfvgAJ3mOjED3nDFOAKLNW+0BCmb7TrhzK+Yj99gVETy7VY0NbHMwmKCBAfha4arvyrpR/ZeZXgT6ARO2x4Xfacb0JEOXVrBtwWFVIURULM78KdAFE6SHK2Fa6yKDS0v1Ku9CbAFFlO70LCWVWDC6Msm0BSdZjI8z043gVII8CKwYc7gJA/UXM/CrQFBClop/lUtPH1MPRi9oCRB+7IWtgaSPWaV6iNSczFWgCSBY9NkpeNgESemP9+91fsJJ1yjH2aYDo/kIdwaR98h4bOYrXNCYBotpF85qe0OG484CTOpxnp0xXYBIg2fXYKHkh7Sa93NWbDYi+CShlSL0cs+qxUa7EIEDUA3D9gJO4ATggoP+xup4JSNY9NkpeIAGiWkaqrB7KVM07RZeqUPPJxW8FiLYwH+2+KucS22DiECBqlLlDwBkJwJCpLAFDz9r1fW5vuDJwzQIpIEBCd7HVJqlULaQDyZaFW+0AHd0W2NjKCxClOIfu7KRe6w/HnpyNZwr0VUCA6Fn5mX0d1Zz/epdWH3gYc28K+FVAgKhRpxp2hjTVUVIVPjNToCgFBMgrgZ8GjloPAlQc28wUKEoBAbKUqzaif0OZkuSUEGk3laEUNr9BFKjqYimpbYMgIyx0qncheidiZgoUo0AFiOryhn6ZdzXwjmKUsUBNARakmsh0E312YEX09eolYyl6HFhLcx9JgQoQ9QVRfd7QdiBwfehBzL8p4EuBCpAlAfUnDJn2rphVYkY1ssxMgSIUqABRsDHuQzTOJsADRahjQY5egZmAqLKeWhSENr2UfGvoQcy/KeBDgZmA6C+7amSFNm3s0ctJ+xQJrbT5763ATEDkLHQJoCrgzwN79o7eHJgCgRWYDcg5EfePW7fbwItr7vsrMBuQjQH1vY5hKi6g8Wz/dAy1bYxOCswGRE5Ut3WrTt7an3SR633X/kw7wxSIoMBcgMRoqDNzatsC90SYqw1hCrRWYC5AVgLUvHHp1t66nfAIsFmEPondorOzRq3AXIBIkJuBvSMqox4lsb7WRZyWDVW6ApMAURkgVSOJadcAh8Qc0MYyBeoUmASIzvsisHudA8+/P991PfLs1tyZAt0UmAaI7gv0KTLtmG6jTj9LafenhnBsPk2BtgrUXfy3JHrjrSorZ7SdjB1vCvhWoA4QvchTflbdcb7jkr+rgMOBZ0M4N5+mQBMFmlz4sZ9ozYz7DuDNgDqympkC0RVoAshargL8stGjWzCgUl+0X/6hROPbsCNWoAkgkkcNcJTImMq0n/0Y4JOpArBxx6lAU0D0Vv1+YMPEMmnX48Gu8WjiUGz4MSjQFBBpsR3wnQxEURqMuihZ8YcMFmPoIbQBRFp8GtgnE1G+CxxqOxMzWY2BhtEWkNVcHd9VMtJDKSrqxW5beDNalKGE0hYQzXsb4K6I2b5Ntb4d0P4S67jUVDE7rlaBLoDIqV7gXVHrPc0B2ql4I3Ad8GCaEGzUoSjQFRDNX80jD8pciHuBz7qHC3dnHquFl6ECfQDRdH4EbJ7hvCaFpJ2LehKnfih6Aan7lqcLit9CjaxAX0DWAPSX+eWR4/Y53G+A37o2yo+7fx8dSA7YuoDKyvY1fWW9ra+TEs/vC4jm/Aq3p3zVEgWwmBspcDxwYaMjB3aQD0Akiaoy6quLukiZDU8BA8TDmm7pqrcv58GXuchLAQPE03qoUefXgOd78mdu8lDAAPG4Dur/cSuwvEef5iqtAgaIZ/21n11vtlf27NfcpVHAAAmg+3rAncDaAXyby7gKGCCB9F7dQZJ6H0mg6Y3GrQEScKn16FfpHrsEHMNch1XAAAmr73zvRwLnActEGMuG8KuAAeJXz4neNgI+A2waaTwbxo8CBogfHRt50f52VU88IVG9rUZB2kGLKGCAJLggtndVSjZIMLYN2U4BA6SdXt6Ofp77JDkNsBQVb7J6d2SAeJe0nUO9K1Gp0V3bnWZHR1LAAIkkdN0we7i06nXqDrTfR1XAAIkq9/TBtMFHPdR1E791RnGNORQDJNPVf41rqLObPfFKukIGSFL56wdXXtfRwL6WAFkvVoAjDJAAooZwuZRLWdnPtUWYF2IQ87mYAgZIgReF2jHoq9f+wE72mDjoChogQeUN71zvU3RDv7P70f9j9XkPP7v0Ixgg6dfAawTazajtv9u6lg16W68SOKmaAHmdXAJnBkgC0VMMqReS6wMCRv/XjscXu5+VZvx/hRTBBRhTrSJ039bXTs+41GzfuU0931fZn6BBmnNTIJUCBkgq5W3cIhQwQIpYJgsylQIGSCrlbdwiFDBAilgmCzKVAgZIKuVt3CIUMECKWCYLMpUCBkgq5W3cIhT4P9N9vGSnCJYeAAAAAElFTkSuQmCC');\n}\n/* menu */\n.lf-menu {\n position: absolute;\n z-index: 999;\n display: none;\n width: 150px;\n margin: 0 0 0 10px;\n padding: 10px 0;\n background: #fff;\n border: 1px solid #efefee;\n border-radius: 3px;\n}\n.lf-menu > li {\n position: relative;\n padding: 3px 12px;\n font-size: 12px;\n line-height: 18px;\n list-style: none;\n cursor: pointer;\n transition: all 120ms ease-in-out;\n}\n.lf-menu-item__disabled {\n color: #aaa;\n cursor: default;\n opacity: 0.88;\n pointer-events: none;\n}\n.lf-menu-item:hover {\n background: #f3f3f3;\n}\n/* dndpanel */\n.lf-dndpanel {\n position: absolute;\n margin: 5px;\n padding: 15px 5px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 5px;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);\n}\n.lf-dnd-item {\n margin-top: 5px;\n font-size: 14px;\n text-align: center;\n}\n.lf-dnd-item.disabled > div {\n color: #a8abb2;\n cursor: not-allowed;\n}\n.lf-dnd-shape {\n width: 36px;\n height: 36px;\n margin: 0 auto;\n background-repeat: no-repeat;\n background-position: center center;\n cursor: grab;\n opacity: 0.99;\n}\n/* \u9009\u533A */\n.lf-selection-select {\n position: absolute;\n border: 2px dashed darkorange;\n}\n/* \u7F29\u7565\u56FE */\n.lf-mini-map {\n position: absolute;\n padding: 8px;\n padding-top: 28px;\n overflow: hidden;\n background: #eaedf2;\n border: 1px solid #93a3b4;\n}\n.lf-mini-map-graph {\n position: relative;\n overflow: hidden;\n}\n.lf-minimap-viewport {\n position: absolute;\n top: 0;\n left: 0;\n background-color: rgba(48, 48, 48, 0.2);\n cursor: grab;\n}\n.lf-mini-map-header {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n height: 18px;\n padding: 0 10px;\n line-height: 18px;\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.33);\n background-color: #a6a6a6;\n background-image: linear-gradient(to bottom, #b2b2b2, #9b9b9b);\n border: 1px solid #999;\n border-top: #bfbfbf solid 1px;\n border-bottom: #666 solid 1px;\n}\n.lf-mini-map-close {\n position: absolute;\n top: 0;\n right: 2px;\n width: 18px;\n height: 18px;\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACL0lEQVRoQ+1YT2vUQBT/vS+Smc3u0ZtfwA+hUKEttIIVbMEWrGAL3UItqKCCCipooS3Ynu29ePfqLcnO5Nov0NsrWbc0myxtJpNmGZw9LZk37/3+vCTzQnD8R47jhycwbQe9A94BSwV8C1kKaL3dO2AtoWWC/8+BMJB9ItwHcM6MX0mqtm1EzOU7Y8bvJFV9k3zGDnSFPAVw76oIb8ZavzIpehnbE+Ilg/J7/8Za3THJVYfAHwB3x4owXsSpemNSuCs6zwEu7rl9AmEgt4hQspkIa5FS76uQCKV8RoxSLDP6pi1p7EAGsCvEBkA7ZbC0EuvBp+tI9IR4yqBSDIE3Iq13qwiQj6lFYEgikOsgvC4VJDyJlfo6CUg3kI9BmLBG67EevDUFn8XXJpBt7km5yox3xcIMfpRo/SN/PZRygRhj17J1JqwmSn2oA96awL926iwD/LEIgJjmo3RwMCQadGaZePh/3H5ejrT+XBd8IwSGJKRcAuPLhHZ6mIkMxlFpjbEUp+qbDfjGCGSJQiEWCfS9CiAmLCZK7VWJvSnG6h4oJu8FnTkm3r+uKDHNReng8CZgVdcbJTBqpxkwfk4EQJiJlTquCq5KnCeQV8npFnL6Jnb6Mer0i8zpo4TThzmnj9OjGXardDBrZqDZbmMmdnukdH6oL3xWOTG1vNh6oxn7AYB2PqtUOWC1GdP4Ya5N8I0ONG0Dv6znHZiW8t6BaSvvHfAONKSAf4w2JGTtNBey0xBAkjSEzwAAAABJRU5ErkJggg==');\n background-size: contain;\n cursor: pointer;\n}\n.lf-mini-map-no-header {\n padding-top: 8px;\n}\n.lf-mini-map-no-header .lf-mini-map-header {\n display: none;\n}\n.lf-mini-map-no-close-icon .lf-mini-map-close {\n display: none;\n}\n/* \u8282\u70B9\u8C03\u6574 */\n.lf-resize-control-0 {\n cursor: nw-resize;\n}\n.lf-resize-control-1 {\n cursor: ne-resize;\n}\n.lf-resize-control-2 {\n cursor: se-resize;\n}\n.lf-resize-control-3 {\n cursor: sw-resize;\n}\n/* context-menu */\n.lf-inner-context {\n position: absolute;\n display: none;\n /* display: flex; */\n flex-flow: column wrap;\n height: 90px;\n}\n.lf-context-item {\n box-sizing: content-box;\n width: 20px;\n height: 20px;\n margin: 0 2px 2px 0;\n padding: 2px 3px;\n}\n.lf-context-item:hover {\n background: rgba(201, 217, 216, 0.5);\n}\n.lf-context-img {\n width: 20px;\n height: 20px;\n cursor: pointer;\n}\n/* mind map */\n.lf-mindmap_addIcon {\n margin-top: 10px;\n}\n/* label */\n.lf-label-overlay {\n width: 0;\n height: 0;\n overflow: visible;\n}\n.lf-label-overlay .lf-label-editor {\n padding: 4px;\n background: #fff;\n border-radius: 5px;\n}\n.lf-label-overlay .lf-label-editor-container {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: visible;\n text-align: center;\n}\n.lf-label-overlay .lf-label-editor-container p {\n margin: 0;\n}\n.lf-label-overlay .lf-label-editor-dragging {\n cursor: move;\n}\n.lf-label-overlay .lf-label-editor-editing {\n border: 2px solid #275dc5;\n outline: none;\n cursor: text;\n}\n.lf-label-overlay .lf-label-editor-hover {\n border: 2px dashed #acacac;\n}\n.lf-label-overlay .lf-label-editor-clip {\n width: 100px;\n /* \u6839\u636E\u9700\u8981\u8C03\u6574\u5BBD\u5EA6 */\n overflow: hidden;\n white-space: nowrap;\n text-overflow: clip;\n}\n.lf-label-overlay .lf-label-editor-ellipsis {\n width: 100px;\n /* \u6839\u636E\u9700\u8981\u8C03\u6574\u5BBD\u5EA6 */\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.lf-label-overlay .lf-label-editor-wrap {\n width: 100px;\n /* \u6839\u636E\u9700\u8981\u8C03\u6574\u5BBD\u5EA6 */\n white-space: normal;\n overflow-wrap: break-word;\n /* \u5141\u8BB8\u5355\u8BCD\u5185\u6362\u884C */\n}\n.lf-label-overlay .lf-label-editor-nowrap {\n width: 100px;\n /* \u6839\u636E\u9700\u8981\u8C03\u6574\u5BBD\u5EA6 */\n overflow: visible;\n white-space: nowrap;\n}\n";
4
+ export declare const content = ".lf-control {\n position: absolute;\n top: 0;\n right: 10px;\n display: flex;\n margin: 5px;\n padding: 0 15px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 5px;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);\n}\n.lf-control-item {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 5px 10px;\n cursor: pointer;\n}\n.lf-control-item:hover {\n background: #efefef;\n}\n.lf-control-item.disabled {\n filter: opacity(0.5);\n /* cursor: not-allowed; */\n pointer-events: none;\n}\n.lf-control-item.disabled:hover {\n background: #fff;\n}\n.lf-control-item.disabled i {\n pointer-events: none;\n}\n.lf-control-item i {\n display: inline-block;\n width: 20px;\n height: 20px;\n vertical-align: middle;\n background-size: cover;\n}\n.lf-control-text {\n margin-top: 5px;\n font-size: 12px;\n}\n.lf-control-zoomOut {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAFMElEQVR4Xu3dsQ3CQBBFQei/KEoDXQG2xAv9h3yDnb0nh7xffgQIXAq82RAgcC0gEK+DwI2AQDwPAgLxBgg0AV+Q5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCAhk5NDWbAICaW6mRgQEMnJoazYBgTQ3UyMCAhk5tDWbgECam6kRAYGMHNqaTUAgzc3UiIBARg5tzSYgkOZmakRAICOHtmYTEEhzMzUiIJCRQ1uzCQikuZkaERDIyKGt2QQE0txMjQgIZOTQ1mwCAmlupkYEBDJyaGs2AYE0N1MjAgIZObQ1m4BAmpupEQGBjBzamk1AIM3N1IiAQEYObc0mIJDmZmpEQCAjh7ZmExBIczM1IiCQkUNbswkIpLmZGhEQyMihrdkEBNLcTI0ICGTk0NZsAgJpbqZGBAQycmhrNgGBNDdTIwICGTm0NZuAQJqbqREBgYwc2ppNQCDNzdSIgEBGDm3NJiCQ5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCAhk5NDWbAICaW6mRgQEMnJoazYBgTQ3UyMCAhk5tDWbgECam6kRAYGMHNqaTUAgzc3UiIBARg5tzSYgkOZmakRAICOHtmYTEEhzMzUiIJCRQ1uzCQikuZkaERDIyKGt2QQE0txMjQgIZOTQ1mwCAmlupkYEBDJyaGs2AYE0N1MjAgIZObQ1m4BAmpupEQGBjBzamk3gBPJpo6YIPF/gBPJ9/po2JNAEBNLcTI0ICGTk0NZsAgJpbqZGBAQycmhrNgGBNDdTIwICGTm0NZuAQJqbqREBgYwc2ppNQCDNzdSIgEBGDm3NJiCQ5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCAhk5NDWbAICaW6mRgQEMnJoazYBgTQ3UyMCAhk5tDWbgECam6kRAYGMHNqaTUAgzc3UiIBARg5tzSYgkOZmakRAICOHtmYTEEhzMzUiIJCRQ1uzCQikuZkaETiB+AOdkWNb83+BE4gfAQIXAgLxNAjcCAjE8yAgEG+AQBPwBWlupkYEBDJyaGs2AYE0N1MjAgIZObQ1m4BAmpupEQGBjBzamk1AIM3N1IiAQEYObc0mIJDmZmpEQCAjh7ZmExBIczM1IiCQkUNbswkIpLmZGhEQyMihrdkEBNLcTI0ICGTk0NZsAgJpbqZGBAQycmhrNgGBNDdTIwICGTm0NZuAQJqbqREBgYwc2ppNQCDNzdSIgEBGDm3NJiCQ5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCAhk5NDWbAICaW6mRgQEMnJoazYBgTQ3UyMCAhk5tDWbgECam6kRAYGMHNqaTUAgzc3UiIBARg5tzSYgkOZmakRAICOHtmYTEEhzMzUiIJCRQ1uzCQikuZkaERDIyKGt2QQE0txMjQgIZOTQ1mwCAmlupkYEBDJyaGs2AYE0N1MjAgIZObQ1m4BAmpupEQGBjBzamk1AIM3N1IiAQEYObc0mIJDmZmpEQCAjh7ZmExBIczM1IiCQkUNbswkIpLmZGhEQyMihrdkEBNLcTI0ICGTk0NZsAgJpbqZGBAQycmhrNgGBNDdTIwICGTm0NZuAQJqbqREBgYwc2ppNQCDNzdSIgEBGDm3NJiCQ5mZqREAgI4e2ZhMQSHMzNSIgkJFDW7MJCKS5mRoREMjIoa3ZBATS3EyNCPwAiAUiJ9hUCCUAAAAASUVORK5CYII=');\n}\n.lf-control-zoomIn {\n background-image: url('data:image/png;base64,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');\n}\n.lf-control-fit {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAKq0lEQVR4Xu2d8bEURRCHmwg0AyECIAIlAs1AjQCJQI1AiUCJQIhAiQCMAIhAjUDr9+rOOinf4+bedO/8er+t4h9qrnfm6/7ezO3tzt4JDghA4FoCd2ADAQhcTwBBqA4I3EAAQSgPCCAINQCBywgwg1zGjU/thMBKgtyNiM8j4osT9s8j4kVEvN1JPvY2zOVzvoogjyPixxuq45uIeLq36mk+XoucryCIiv+HM4rhyQckOiMETRYhYJPzrQXRFPtmIGn3WG4N0FqzqVXOtxbk3L8kx1Qzi6xZ9CO9ssr51oL8FhGfDtDVF/bTL/EDH6XpIgSscu4myMuI+GyRRNONywiMCrJpzhHksiTzqcsJIMgAOytYA+Oi6fUErHLODEIpVxNAkAHiVrAGxkVTZpApNYAgUzBaBbHKOUssq9pq0VkEGUijFayBcdGUJdaUGkCQKRitgljlnCWWVW216CyCDKTRCtbAuGjKEmtKDSDIFIxWQaxyzhLLqrZadBZBBtJoBWtgXDRliTWlBhBkCkarIFY5Z4llVVstOosgA2m0gjUwLpqyxJpSAwgyBaNVEKucs8Syqq0WnUWQgTRawRoYF01ZYk2pAQSZgtEqiFXOWWJZ1VaLziLIQBqtYA2Mi6YssabUAIJMwWgVxCrnLLGsaqtFZ+0F0SsIHhSl4quI0F6t5x6bbiJ2bidpdyOBUUH06oufi5i+Prxu49/Tnc4gKlbtsv5xUWcuOQ2CXEJtrc+MClLd+z8jQntAX0l5FOS7iPi2uicXnA9BLoC22EdWF+SI6/uI+E6CaK/bXxeDeF13EMQkUTd000UQDeGRBNFU8qUJdwQxSVQTQZ5JkD8W/95xyhpBEKSSwFsJ8nflGW95LgS5JcAFPu60xLr6ko4gC1TNjrpgJ4iu/d43SdDVlQWTvtLN/yegtxnrDbcOx0vNIKPvjNtyYA8jQkJz+BLQj9CvTLr/RILoh0FNe6vPIs8iQj9mcvgTcLhy+rt+Ajn+UCir1elVJdHLOyWHfuXk8CegP8qqN93WtOIhOVRvr09vNVGn9Z/6t4Iofx1mtueF9+KsmKzOfVKt6a3Fq4iiq6THerv6Y7z13bydk8/YGhBAkAZJZAh5BBAkjy2RGxBAkAZJZAh5BBAkjy2RGxBAkAZJZAh5BBAkjy2RGxBAkAZJZAh5BBAkjy2RGxBAkAZJZAh5BBAkjy2RGxBAkAZJZAh5BPYmiO5a/uiwk0se1b6R9ViEbiLdzTM5exBEOzdqzy/dNbrypnhOWulOV931qic8tfNh26OzIJJBO0XykFVu+eq5Du1E2PJZna6CaCn1U+Eew7kluH50Lbm+7rj06iiIZo43LKfKrdIMcq/bTNJREG0IULU7fXkVLn5CzSTaWKPN0U0Qfd/Q0opjOwJaalW9riB9lN0E0dJq5H0j6YB3eAJd1dJSq8XRSRBdxv2lRVb8B/HosOGG/Ug6CeK0Y5994XxgAE8PGxLaj7OTIFZ7vtpXzs0DaLPJeCdB+P6xjnVtvod0EsRpl/p1SjmvJy1qq8UgDjkeFYSd4s+X45J3WLaorRaDQJDzK/3ClghyIbiVPsYMkpcNBMljWxYZQfJQI0ge27LICJKHGkHy2JZFRpA81AiSx7YsMoLkoUaQPLZlkREkDzWC5LEti4wgeagRJI9tWWQEyUONIHlsyyIjSB5qBMljWxYZQfJQI0ge27LICJKHGkHy2JZFRpA81AiSx7YsMoLkoUaQPLZlkREkDzWC5LEti4wgeagRJI9tWWQEyUONIHlsyyIjSB5qBMljWxYZQfJQI0ge27LICJKHGkHy2JZFRpA81AiSx7YsMoLkoUaQPLZlkREkDzWC5LEti4wgeagRJI9tWWQEyUONIHlsyyIjSB5qBMljWxYZQfJQI0ge27LICJKHGkHy2JZFRpA81AiSx7YsMoLkoUaQPLZlkREkDzWC5LEti4wgeagRJI9tWWQEyUONIHlsyyIjSB5qBMljWxYZQfJQI0ge27LICJKHGkHy2JZFRpA81AiSx7YsMoLkoUaQPLZlkREkDzWC5LEti4wgeagRJI9tWWQEyUONIHlsyyIjSB5qBMljWxYZQfJQI0ge27LICJKHGkHy2JZFRpA81AiSx7YsMoLkoUaQPLZlkREkDzWC5LEti4wgeagRJI9tWWQEyUONIHlsyyKPClLWsZ2e6E6HcbcYxCERbyPikw5JaTCGdxFxt8E4opMgv0XEpx2S0mAMLyPiswbjaCXIjxHxuENSGozhaUR802AcrQT5IiJ+6ZCUBmN4FBGa0e2PTkssJYPvIduXZJvvH0LZTZCvIuKn7Wtk1z34OiJ+7kKgmyDKy+uIuN8lQWbj+D0iHpj1+cbudhTk48NS66NOiTIYy1+HS7t/GvT17C52FESD118xTfPMJGeXwq0aaubQ8lazd6ujqyBKkmYSXfr9slXG1hvMs8Ml3VYzxxFzZ0GOY9QvurqXSJeBWXbNEUxXqnQZV1x15bDtsQdBTpOnpZdmlha/8m5QlZJCM0W7pdR1LPcmyAY1xSmdCSCIc/boezoBBElHzAmcCSCIc/boezoBBElHzAmcCSCIc/boezoBBElHzAmcCSCIc/boezoBBElHzAmcCSCIc/boezoBBElHzAmcCSCIc/boezqBU0F0E59uDdd9/as8FfY8IvRPt1Rz9COgetNd1vq3wqGbMPUckert6vb9oyASQs9yryLG+7AkiZ51bvnMwQqVUdwH/TFWva0ixvvDlyiqt9cSRJ39dWE5jp2X2eo0hz8ByaGVysqHJHkkQbTB1w8r9/Skbw/39CyCSU5Gu6lVyqvRD23U/okEUWdXXVq9z+X7w1NsG/HitBMIOO2A+VKCOO2K3mbP1wmF5hrCag9lBHEtM99+2wmiK0Mumxkwg/iKcey5kyDvNIPo6pDL1jgIgiCVBJ5JEO3wocu8DgeCOGTp5j46zSBXl3l1XPIOui1ShSBbUJ97ThdBrq6Ynt5qoh9udAlu5e8jCDK3WLeItrog2mNYvw1e7VD/fzcr6uf/qt9FJOXIewURZIuSnnvOUUG0i2PV6xTUt/+8+Gfru3lHYSHI3GLdIppVzhFkixLZ9zkRZCD/VrAGxkXT6wlY5ZwZhFKuJoAgA8StYA2Mi6bMIFNqAEGmYLQKYpVzllhWtdWiswgykEYrWAPjoilLrCk1gCBTMFoFsco5Syyr2mrRWQQZSKMVrIFx0ZQl1pQaQJApGK2CWOWcJZZVbbXoLIIMpNEK1sC4aMoSa0oNIMgUjFZBrHLOEsuqtlp0FkEG0mgFa2BcNGWJNaUGEGQKRqsgVjlniWVVWy06iyADabSCNTAumrLEmlIDCDIFo1UQq5yzxLKqrRadRZCBNFrBGhgXTVliTakBBJmC0SqIVc5ZYlnVVovOIshAGkdhvVj4xY8Dw951U6ucbz2DjL4f8clh/+BdV5j54K1yvrUgdyPizUDC70XE24H2NF2PgFXOtxZE6Tv3Lwqzx3rFfmmPbHK+giDnSIIcl5biup/7kCRL5HwVQZRGTb169YL+6dC7E/WF7jnLqnWr/JY9Wz7nKwlyS9Z8HALzCSDIfKZEbEQAQRolk6HMJ4Ag85kSsREBBGmUTIYynwCCzGdKxEYE/gHBVkPiBWPScAAAAABJRU5ErkJggg==');\n}\n.lf-control-undo {\n background-image: url('data:image/png;base64,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');\n}\n.lf-control-redo {\n background-image: url('data:image/png;base64,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');\n}\n/* menu */\n.lf-menu {\n position: absolute;\n z-index: 999;\n display: none;\n width: 150px;\n margin: 0 0 0 10px;\n padding: 10px 0;\n background: #fff;\n border: 1px solid #efefee;\n border-radius: 3px;\n}\n.lf-menu > li {\n position: relative;\n padding: 3px 12px;\n font-size: 12px;\n line-height: 18px;\n list-style: none;\n cursor: pointer;\n transition: all 120ms ease-in-out;\n}\n.lf-menu-item__disabled {\n color: #aaa;\n cursor: default;\n opacity: 0.88;\n pointer-events: none;\n}\n.lf-menu-item:hover {\n background: #f3f3f3;\n}\n/* dndpanel */\n.lf-dndpanel {\n position: absolute;\n margin: 5px;\n padding: 15px 5px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 5px;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);\n}\n.lf-dnd-item {\n margin-top: 5px;\n font-size: 14px;\n text-align: center;\n}\n.lf-dnd-item.disabled > div {\n color: #a8abb2;\n cursor: not-allowed;\n}\n.lf-dnd-shape {\n width: 36px;\n height: 36px;\n margin: 0 auto;\n background-repeat: no-repeat;\n background-position: center center;\n cursor: grab;\n opacity: 0.99;\n}\n/* \u9009\u533A */\n.lf-selection-select {\n position: absolute;\n border: 2px dashed darkorange;\n}\n/* \u7F29\u7565\u56FE */\n.lf-mini-map {\n position: absolute;\n padding: 8px;\n padding-top: 28px;\n overflow: hidden;\n background: #eaedf2;\n border: 1px solid #93a3b4;\n}\n.lf-mini-map-graph {\n position: relative;\n overflow: hidden;\n}\n.lf-minimap-viewport {\n position: absolute;\n top: 0;\n left: 0;\n background-color: rgba(48, 48, 48, 0.2);\n cursor: grab;\n}\n.lf-mini-map-header {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n height: 18px;\n padding: 0 10px;\n line-height: 18px;\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.33);\n background-color: #a6a6a6;\n background-image: linear-gradient(to bottom, #b2b2b2, #9b9b9b);\n border: 1px solid #999;\n border-top: #bfbfbf solid 1px;\n border-bottom: #666 solid 1px;\n}\n.lf-mini-map-close {\n position: absolute;\n top: 0;\n right: 2px;\n width: 18px;\n height: 18px;\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACL0lEQVRoQ+1YT2vUQBT/vS+Smc3u0ZtfwA+hUKEttIIVbMEWrGAL3UItqKCCCipooS3Ynu29ePfqLcnO5Nov0NsrWbc0myxtJpNmGZw9LZk37/3+vCTzQnD8R47jhycwbQe9A94BSwV8C1kKaL3dO2AtoWWC/8+BMJB9ItwHcM6MX0mqtm1EzOU7Y8bvJFV9k3zGDnSFPAVw76oIb8ZavzIpehnbE+Ilg/J7/8Za3THJVYfAHwB3x4owXsSpemNSuCs6zwEu7rl9AmEgt4hQspkIa5FS76uQCKV8RoxSLDP6pi1p7EAGsCvEBkA7ZbC0EuvBp+tI9IR4yqBSDIE3Iq13qwiQj6lFYEgikOsgvC4VJDyJlfo6CUg3kI9BmLBG67EevDUFn8XXJpBt7km5yox3xcIMfpRo/SN/PZRygRhj17J1JqwmSn2oA96awL926iwD/LEIgJjmo3RwMCQadGaZePh/3H5ejrT+XBd8IwSGJKRcAuPLhHZ6mIkMxlFpjbEUp+qbDfjGCGSJQiEWCfS9CiAmLCZK7VWJvSnG6h4oJu8FnTkm3r+uKDHNReng8CZgVdcbJTBqpxkwfk4EQJiJlTquCq5KnCeQV8npFnL6Jnb6Mer0i8zpo4TThzmnj9OjGXardDBrZqDZbmMmdnukdH6oL3xWOTG1vNh6oxn7AYB2PqtUOWC1GdP4Ya5N8I0ONG0Dv6znHZiW8t6BaSvvHfAONKSAf4w2JGTtNBey0xBAkjSEzwAAAABJRU5ErkJggg==');\n background-size: contain;\n cursor: pointer;\n}\n.lf-mini-map-no-header {\n padding-top: 8px;\n}\n.lf-mini-map-no-header .lf-mini-map-header {\n display: none;\n}\n.lf-mini-map-no-close-icon .lf-mini-map-close {\n display: none;\n}\n/* \u8282\u70B9\u8C03\u6574 */\n.lf-resize-control-0 {\n cursor: nw-resize;\n}\n.lf-resize-control-1 {\n cursor: ne-resize;\n}\n.lf-resize-control-2 {\n cursor: se-resize;\n}\n.lf-resize-control-3 {\n cursor: sw-resize;\n}\n/* context-menu */\n.lf-inner-context {\n position: absolute;\n display: none;\n /* display: flex; */\n flex-flow: column wrap;\n height: 90px;\n}\n.lf-context-item {\n box-sizing: content-box;\n width: 20px;\n height: 20px;\n margin: 0 2px 2px 0;\n padding: 2px 3px;\n}\n.lf-context-item:hover {\n background: rgba(201, 217, 216, 0.5);\n}\n.lf-context-img {\n width: 20px;\n height: 20px;\n cursor: pointer;\n}\n/* mind map */\n.lf-mindmap_addIcon {\n margin-top: 10px;\n}\n";