@mx-sose-front/mx-sose-graph 1.1.4 → 1.1.6
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.
- package/dist/index.d.ts +120 -4
- package/dist/index.esm.js +989 -616
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +2 -2
- package/src/components/DiagramListTooltip/DiagramListTooltip.vue +1 -1
- package/src/components/InteractionLayer.vue +93 -3
- package/src/constants/edgeShapeKeys.ts +4 -2
- package/src/constants/index.ts +306 -295
- package/src/render/shape-renderer.ts +13 -6
- package/src/store/graphStore.ts +256 -92
- package/src/utils/containers.ts +4 -2
- package/src/utils/contextMenuUtils.ts +40 -9
- package/src/utils/drag.ts +48 -8
- package/src/utils/graphDragService.ts +10 -9
- package/src/utils/keyboardUtils.ts +25 -11
- package/src/utils/shapeOps/shapeOps.ts +104 -32
- package/src/view/graph.vue +4 -2
package/dist/index.esm.js
CHANGED
|
@@ -4,7 +4,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4
4
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
5
|
return value;
|
|
6
6
|
};
|
|
7
|
-
import { ref, shallowReactive, computed, nextTick, defineComponent, openBlock, createElementBlock, normalizeStyle, withDirectives, createElementVNode, Fragment, renderList, unref, normalizeClass, withModifiers, vShow, watch, createCommentVNode, withKeys, vModelText, onMounted, onUnmounted, resolveComponent, createBlock, Teleport, createVNode, withCtx, useCssVars, resolveDynamicComponent, toDisplayString, onBeforeUnmount, isMemoSame } from "vue";
|
|
7
|
+
import { ref, shallowReactive, computed, shallowRef, nextTick, triggerRef, defineComponent, openBlock, createElementBlock, normalizeStyle, withDirectives, createElementVNode, Fragment, renderList, unref, normalizeClass, withModifiers, vShow, watch, createCommentVNode, withKeys, vModelText, onMounted, onUnmounted, resolveComponent, createBlock, Teleport, createVNode, withCtx, useCssVars, resolveDynamicComponent, toDisplayString, onBeforeUnmount, isMemoSame } from "vue";
|
|
8
8
|
import { defineStore, storeToRefs, setActivePinia } from "pinia";
|
|
9
9
|
import ElementPlus, { ElMessage } from "element-plus";
|
|
10
10
|
var v = false, o, f, s, u, d, N, l, p, m, w, D, x, E, M, F;
|
|
@@ -6435,11 +6435,13 @@ const resolveParentAfterDrag = (shapes, s2, finalRect, draggingIds, diagramId, u
|
|
|
6435
6435
|
};
|
|
6436
6436
|
const pointInRect = (pt, r, margin = 0) => pt.x >= r.x + margin && pt.x <= r.x + r.width - margin && pt.y >= r.y + margin && pt.y <= r.y + r.height - margin;
|
|
6437
6437
|
const depthOf = (shapes, id) => {
|
|
6438
|
+
const graphStore = useGraphStore();
|
|
6439
|
+
const byId = graphStore.shapeMap;
|
|
6438
6440
|
let d2 = 0;
|
|
6439
|
-
let p2 =
|
|
6441
|
+
let p2 = byId.get(id)?.parenShapeId ?? null;
|
|
6440
6442
|
while (p2) {
|
|
6441
6443
|
d2++;
|
|
6442
|
-
p2 =
|
|
6444
|
+
p2 = byId.get(p2)?.parenShapeId ?? null;
|
|
6443
6445
|
}
|
|
6444
6446
|
return d2;
|
|
6445
6447
|
};
|
|
@@ -6601,9 +6603,11 @@ function normalizeZOrder(shapes, diagramId, updateShape, baseZ = 1, step = 1) {
|
|
|
6601
6603
|
}
|
|
6602
6604
|
}
|
|
6603
6605
|
const buildDragSnapshot = (shapes, ids) => {
|
|
6606
|
+
const graphStore = useGraphStore();
|
|
6607
|
+
const byId = graphStore.shapeMap;
|
|
6604
6608
|
const dragBase = {};
|
|
6605
6609
|
ids.forEach((id) => {
|
|
6606
|
-
const s2 =
|
|
6610
|
+
const s2 = byId.get(id);
|
|
6607
6611
|
if (!s2)
|
|
6608
6612
|
return;
|
|
6609
6613
|
const b2 = getBounds(s2);
|
|
@@ -6621,7 +6625,8 @@ const buildDragSnapshot = (shapes, ids) => {
|
|
|
6621
6625
|
return { dragBase, groupBaseBox };
|
|
6622
6626
|
};
|
|
6623
6627
|
const stepSingleDrag = (shapes, id, pointer, dragOffset, dragBase, diagramId, constrainEdges, hitPointer) => {
|
|
6624
|
-
const
|
|
6628
|
+
const graphStore = useGraphStore();
|
|
6629
|
+
const s2 = graphStore.shapeMap.get(id);
|
|
6625
6630
|
if (!s2)
|
|
6626
6631
|
return { ghost: {}, hover: null };
|
|
6627
6632
|
const base = dragBase[id];
|
|
@@ -6649,6 +6654,8 @@ const stepSingleDrag = (shapes, id, pointer, dragOffset, dragBase, diagramId, co
|
|
|
6649
6654
|
};
|
|
6650
6655
|
};
|
|
6651
6656
|
const stepGroupDrag = (shapes, draggingIds, primaryId, pointer, dragAnchor, groupBaseBox) => {
|
|
6657
|
+
const graphStore = useGraphStore();
|
|
6658
|
+
const byId = graphStore.shapeMap;
|
|
6652
6659
|
const diagramRect = getDiagramRect(shapes);
|
|
6653
6660
|
const dxRaw = pointer.x - dragAnchor.x;
|
|
6654
6661
|
const dyRaw = pointer.y - dragAnchor.y;
|
|
@@ -6662,13 +6669,13 @@ const stepGroupDrag = (shapes, draggingIds, primaryId, pointer, dragAnchor, grou
|
|
|
6662
6669
|
const dy = gy - groupBaseBox.y;
|
|
6663
6670
|
const ghost = {};
|
|
6664
6671
|
for (const id of draggingIds) {
|
|
6665
|
-
const s2 =
|
|
6672
|
+
const s2 = byId.get(id);
|
|
6666
6673
|
if (!s2)
|
|
6667
6674
|
continue;
|
|
6668
6675
|
const b2 = getBounds(s2);
|
|
6669
6676
|
ghost[id] = { x: b2.x + dx, y: b2.y + dy, width: b2.width, height: b2.height };
|
|
6670
6677
|
}
|
|
6671
|
-
const priShape =
|
|
6678
|
+
const priShape = byId.get(primaryId);
|
|
6672
6679
|
const diagramId = priShape?.diagramId || "";
|
|
6673
6680
|
const hoverShape = pickContainerByPointerTopmost(
|
|
6674
6681
|
shapes,
|
|
@@ -6682,7 +6689,18 @@ const stepGroupDrag = (shapes, draggingIds, primaryId, pointer, dragAnchor, grou
|
|
|
6682
6689
|
return { ghost, hover };
|
|
6683
6690
|
};
|
|
6684
6691
|
const commitDrag = (shapes, draggingIds, ghost, _currentDiagramId, updateShape, baseMap) => {
|
|
6692
|
+
const graphStore = useGraphStore();
|
|
6693
|
+
const parentChildMap = graphStore.parentChildMap;
|
|
6685
6694
|
const changedIds = /* @__PURE__ */ new Set();
|
|
6695
|
+
const collectAllDescendants = (parentId) => {
|
|
6696
|
+
const result = [];
|
|
6697
|
+
const children = parentChildMap.get(parentId) || [];
|
|
6698
|
+
for (const childId of children) {
|
|
6699
|
+
result.push(childId);
|
|
6700
|
+
result.push(...collectAllDescendants(childId));
|
|
6701
|
+
}
|
|
6702
|
+
return result;
|
|
6703
|
+
};
|
|
6686
6704
|
for (const id of draggingIds) {
|
|
6687
6705
|
const s2 = shapes.find((x2) => x2.id === id);
|
|
6688
6706
|
const r = ghost[id];
|
|
@@ -6695,10 +6713,32 @@ const commitDrag = (shapes, draggingIds, ghost, _currentDiagramId, updateShape,
|
|
|
6695
6713
|
height: Math.round(r.height)
|
|
6696
6714
|
};
|
|
6697
6715
|
const pb = baseMap?.[id] ?? s2.bounds;
|
|
6698
|
-
const
|
|
6716
|
+
const dx = nb.x - pb.x;
|
|
6717
|
+
const dy = nb.y - pb.y;
|
|
6718
|
+
const same = dx === 0 && dy === 0 && nb.width === pb.width && nb.height === pb.height;
|
|
6699
6719
|
if (!same) {
|
|
6700
6720
|
updateShape(id, { bounds: nb });
|
|
6701
6721
|
changedIds.add(id);
|
|
6722
|
+
if (dx !== 0 || dy !== 0) {
|
|
6723
|
+
const descendants = collectAllDescendants(id);
|
|
6724
|
+
for (const descId of descendants) {
|
|
6725
|
+
if (draggingIds.includes(descId))
|
|
6726
|
+
continue;
|
|
6727
|
+
const descShape = shapes.find((x2) => x2.id === descId);
|
|
6728
|
+
if (!descShape?.bounds)
|
|
6729
|
+
continue;
|
|
6730
|
+
const descBounds = descShape.bounds;
|
|
6731
|
+
updateShape(descId, {
|
|
6732
|
+
bounds: {
|
|
6733
|
+
x: Math.round(descBounds.x + dx),
|
|
6734
|
+
y: Math.round(descBounds.y + dy),
|
|
6735
|
+
width: descBounds.width,
|
|
6736
|
+
height: descBounds.height
|
|
6737
|
+
}
|
|
6738
|
+
});
|
|
6739
|
+
changedIds.add(descId);
|
|
6740
|
+
}
|
|
6741
|
+
}
|
|
6702
6742
|
}
|
|
6703
6743
|
}
|
|
6704
6744
|
return Array.from(changedIds);
|
|
@@ -8260,7 +8300,13 @@ async function applyReparentAndClone(options) {
|
|
|
8260
8300
|
const graphStore = useGraphStore();
|
|
8261
8301
|
let ownerPayload = null;
|
|
8262
8302
|
const clonedIds = [];
|
|
8263
|
-
|
|
8303
|
+
const changedSet = new Set(changedIds);
|
|
8304
|
+
const topLevelChangedIds = changedIds.filter((id) => {
|
|
8305
|
+
const beforePid = prevParentById[id] ?? null;
|
|
8306
|
+
const afterPid = shapes.find((s2) => s2.id === id)?.parenShapeId ?? null;
|
|
8307
|
+
return !(beforePid && changedSet.has(beforePid)) && !(afterPid && changedSet.has(afterPid));
|
|
8308
|
+
});
|
|
8309
|
+
for (const id of topLevelChangedIds) {
|
|
8264
8310
|
const after = shapes.find((s2) => s2.id === id);
|
|
8265
8311
|
if (!after)
|
|
8266
8312
|
continue;
|
|
@@ -8417,18 +8463,40 @@ const createOnNestDoneCallback = (options) => {
|
|
|
8417
8463
|
const afterParent = JSON.stringify(parent.bounds ?? {});
|
|
8418
8464
|
if (afterParent == beforeParent)
|
|
8419
8465
|
return;
|
|
8466
|
+
return { id: parent.id, bounds: afterParent };
|
|
8420
8467
|
};
|
|
8421
8468
|
};
|
|
8422
8469
|
function createShapeOperator() {
|
|
8423
8470
|
const indexMap = /* @__PURE__ */ new Map();
|
|
8424
|
-
const
|
|
8425
|
-
|
|
8426
|
-
|
|
8471
|
+
const rebuildIndexAndDedupe = (list) => {
|
|
8472
|
+
const seen = /* @__PURE__ */ new Set();
|
|
8473
|
+
for (let i = list.length - 1; i >= 0; i--) {
|
|
8474
|
+
const id = list[i]?.id;
|
|
8475
|
+
if (id == null)
|
|
8476
|
+
continue;
|
|
8477
|
+
if (seen.has(id)) {
|
|
8478
|
+
list.splice(i, 1);
|
|
8479
|
+
} else {
|
|
8480
|
+
seen.add(id);
|
|
8481
|
+
}
|
|
8482
|
+
}
|
|
8427
8483
|
indexMap.clear();
|
|
8428
8484
|
for (let i = 0; i < list.length; i++) {
|
|
8429
8485
|
indexMap.set(list[i].id, i);
|
|
8430
8486
|
}
|
|
8431
8487
|
};
|
|
8488
|
+
const ensureIndex = (list) => {
|
|
8489
|
+
if (indexMap.size !== list.length) {
|
|
8490
|
+
rebuildIndexAndDedupe(list);
|
|
8491
|
+
return;
|
|
8492
|
+
}
|
|
8493
|
+
for (const [id, idx] of indexMap) {
|
|
8494
|
+
if (list[idx]?.id !== id) {
|
|
8495
|
+
rebuildIndexAndDedupe(list);
|
|
8496
|
+
return;
|
|
8497
|
+
}
|
|
8498
|
+
}
|
|
8499
|
+
};
|
|
8432
8500
|
const extractIds = (payload) => {
|
|
8433
8501
|
const ids = [];
|
|
8434
8502
|
for (const item of payload) {
|
|
@@ -8445,10 +8513,11 @@ function createShapeOperator() {
|
|
|
8445
8513
|
const removeByIdFast = (list, id) => {
|
|
8446
8514
|
const idx = indexMap.get(id);
|
|
8447
8515
|
if (idx == null)
|
|
8448
|
-
return
|
|
8516
|
+
return null;
|
|
8449
8517
|
const lastIdx = list.length - 1;
|
|
8450
8518
|
if (lastIdx < 0)
|
|
8451
|
-
return
|
|
8519
|
+
return null;
|
|
8520
|
+
const removed = list[idx];
|
|
8452
8521
|
if (idx !== lastIdx) {
|
|
8453
8522
|
const moved = list[lastIdx];
|
|
8454
8523
|
list[idx] = moved;
|
|
@@ -8456,46 +8525,52 @@ function createShapeOperator() {
|
|
|
8456
8525
|
}
|
|
8457
8526
|
list.pop();
|
|
8458
8527
|
indexMap.delete(id);
|
|
8459
|
-
return
|
|
8528
|
+
return removed;
|
|
8460
8529
|
};
|
|
8461
8530
|
const upsertOne = (list, incoming) => {
|
|
8462
8531
|
const id = incoming?.id;
|
|
8463
8532
|
if (id == null)
|
|
8464
|
-
return false;
|
|
8533
|
+
return { changed: false, isAdd: false };
|
|
8465
8534
|
const idx = indexMap.get(id);
|
|
8466
8535
|
if (idx == null) {
|
|
8467
8536
|
list.push(incoming);
|
|
8468
8537
|
indexMap.set(id, list.length - 1);
|
|
8538
|
+
return { changed: true, isAdd: true };
|
|
8469
8539
|
} else {
|
|
8540
|
+
const oldShape = list[idx];
|
|
8470
8541
|
list[idx] = incoming;
|
|
8542
|
+
return { changed: true, isAdd: false, oldShape };
|
|
8471
8543
|
}
|
|
8472
|
-
return true;
|
|
8473
8544
|
};
|
|
8474
8545
|
const updateOne = (list, incoming) => {
|
|
8475
8546
|
const id = incoming?.id;
|
|
8476
8547
|
if (id == null)
|
|
8477
|
-
return false;
|
|
8548
|
+
return { changed: false };
|
|
8478
8549
|
const idx = indexMap.get(id);
|
|
8479
8550
|
if (idx == null)
|
|
8480
|
-
return false;
|
|
8551
|
+
return { changed: false };
|
|
8552
|
+
const oldShape = list[idx];
|
|
8481
8553
|
list[idx] = incoming;
|
|
8482
|
-
return true;
|
|
8554
|
+
return { changed: true, oldShape };
|
|
8483
8555
|
};
|
|
8484
8556
|
const addOne = (list, incoming) => {
|
|
8485
8557
|
const id = incoming?.id;
|
|
8486
8558
|
if (id == null)
|
|
8487
|
-
return false;
|
|
8559
|
+
return { changed: false, isAdd: false };
|
|
8488
8560
|
const idx = indexMap.get(id);
|
|
8489
8561
|
if (idx == null) {
|
|
8490
8562
|
list.push(incoming);
|
|
8491
8563
|
indexMap.set(id, list.length - 1);
|
|
8564
|
+
return { changed: true, isAdd: true };
|
|
8492
8565
|
} else {
|
|
8566
|
+
const oldShape = list[idx];
|
|
8493
8567
|
list[idx] = incoming;
|
|
8568
|
+
return { changed: true, isAdd: false, oldShape };
|
|
8494
8569
|
}
|
|
8495
|
-
return true;
|
|
8496
8570
|
};
|
|
8497
8571
|
const applyShapeOp = (args) => {
|
|
8498
8572
|
const { list, payload, op } = args;
|
|
8573
|
+
const changeDetails = [];
|
|
8499
8574
|
if (op === "replace") {
|
|
8500
8575
|
const incomingShapes2 = payload;
|
|
8501
8576
|
list.length = 0;
|
|
@@ -8508,33 +8583,57 @@ function createShapeOperator() {
|
|
|
8508
8583
|
for (let i = 0; i < list.length; i++) {
|
|
8509
8584
|
indexMap.set(list[i].id, i);
|
|
8510
8585
|
}
|
|
8511
|
-
return { changedShapes: incomingShapes2 };
|
|
8586
|
+
return { changedShapes: incomingShapes2, changeDetails: [] };
|
|
8512
8587
|
}
|
|
8513
8588
|
ensureIndex(list);
|
|
8514
8589
|
const changedShapes = [];
|
|
8515
8590
|
if (op === "delete") {
|
|
8516
8591
|
const ids = extractIds(payload);
|
|
8517
8592
|
for (const id of ids) {
|
|
8518
|
-
removeByIdFast(list, id);
|
|
8593
|
+
const removed = removeByIdFast(list, id);
|
|
8594
|
+
if (removed) {
|
|
8595
|
+
changeDetails.push({ type: "delete", shape: removed });
|
|
8596
|
+
}
|
|
8519
8597
|
}
|
|
8520
|
-
return { changedShapes };
|
|
8598
|
+
return { changedShapes, changeDetails };
|
|
8521
8599
|
}
|
|
8522
8600
|
const incomingShapes = payload;
|
|
8523
8601
|
for (const incoming of incomingShapes) {
|
|
8524
8602
|
if (!incoming)
|
|
8525
8603
|
continue;
|
|
8526
8604
|
if (op === "upsert") {
|
|
8527
|
-
|
|
8605
|
+
const result = upsertOne(list, incoming);
|
|
8606
|
+
if (result.changed) {
|
|
8528
8607
|
changedShapes.push(incoming);
|
|
8608
|
+
changeDetails.push({
|
|
8609
|
+
type: result.isAdd ? "add" : "update",
|
|
8610
|
+
shape: incoming,
|
|
8611
|
+
oldShape: result.oldShape
|
|
8612
|
+
});
|
|
8613
|
+
}
|
|
8529
8614
|
} else if (op === "update") {
|
|
8530
|
-
|
|
8615
|
+
const result = updateOne(list, incoming);
|
|
8616
|
+
if (result.changed) {
|
|
8531
8617
|
changedShapes.push(incoming);
|
|
8618
|
+
changeDetails.push({
|
|
8619
|
+
type: "update",
|
|
8620
|
+
shape: incoming,
|
|
8621
|
+
oldShape: result.oldShape
|
|
8622
|
+
});
|
|
8623
|
+
}
|
|
8532
8624
|
} else if (op === "add") {
|
|
8533
|
-
|
|
8625
|
+
const result = addOne(list, incoming);
|
|
8626
|
+
if (result.changed) {
|
|
8534
8627
|
changedShapes.push(incoming);
|
|
8628
|
+
changeDetails.push({
|
|
8629
|
+
type: result.isAdd ? "add" : "update",
|
|
8630
|
+
shape: incoming,
|
|
8631
|
+
oldShape: result.oldShape
|
|
8632
|
+
});
|
|
8633
|
+
}
|
|
8535
8634
|
}
|
|
8536
8635
|
}
|
|
8537
|
-
return { changedShapes };
|
|
8636
|
+
return { changedShapes, changeDetails };
|
|
8538
8637
|
};
|
|
8539
8638
|
return {
|
|
8540
8639
|
applyShapeOp
|
|
@@ -8571,27 +8670,95 @@ const useGraphStore = defineStore(
|
|
|
8571
8670
|
const externalCreatingId = ref(null);
|
|
8572
8671
|
const cutShapeIds = ref(/* @__PURE__ */ new Set());
|
|
8573
8672
|
const copiedShapesCount = ref(0);
|
|
8673
|
+
const dragDescendantsSnapshot = ref(/* @__PURE__ */ new Map());
|
|
8574
8674
|
const shapeCount = computed(() => shapes.value.length);
|
|
8575
8675
|
const hasSelectedShape = computed(() => selectedShape.value !== null);
|
|
8576
|
-
const
|
|
8577
|
-
|
|
8676
|
+
const _shapeMapRef = shallowRef(/* @__PURE__ */ new Map());
|
|
8677
|
+
const shapeMap = computed(() => _shapeMapRef.value);
|
|
8678
|
+
const _parentChildMapRef = shallowRef(/* @__PURE__ */ new Map());
|
|
8679
|
+
const parentChildMap = computed(() => _parentChildMapRef.value);
|
|
8680
|
+
function _indexAdd(shape) {
|
|
8681
|
+
_shapeMapRef.value.set(shape.id, shape);
|
|
8682
|
+
if (shape.parenShapeId) {
|
|
8683
|
+
const children = _parentChildMapRef.value.get(shape.parenShapeId);
|
|
8684
|
+
if (children) {
|
|
8685
|
+
if (!children.includes(shape.id)) {
|
|
8686
|
+
children.push(shape.id);
|
|
8687
|
+
}
|
|
8688
|
+
} else {
|
|
8689
|
+
_parentChildMapRef.value.set(shape.parenShapeId, [shape.id]);
|
|
8690
|
+
}
|
|
8691
|
+
}
|
|
8692
|
+
}
|
|
8693
|
+
function _indexRemove(shapeId) {
|
|
8694
|
+
const shape = _shapeMapRef.value.get(shapeId);
|
|
8695
|
+
if (!shape)
|
|
8696
|
+
return;
|
|
8697
|
+
_shapeMapRef.value.delete(shapeId);
|
|
8698
|
+
if (shape.parenShapeId) {
|
|
8699
|
+
const children = _parentChildMapRef.value.get(shape.parenShapeId);
|
|
8700
|
+
if (children) {
|
|
8701
|
+
const idx = children.indexOf(shapeId);
|
|
8702
|
+
if (idx !== -1)
|
|
8703
|
+
children.splice(idx, 1);
|
|
8704
|
+
if (children.length === 0) {
|
|
8705
|
+
_parentChildMapRef.value.delete(shape.parenShapeId);
|
|
8706
|
+
}
|
|
8707
|
+
}
|
|
8708
|
+
}
|
|
8709
|
+
_parentChildMapRef.value.delete(shapeId);
|
|
8710
|
+
}
|
|
8711
|
+
function _indexUpdate(shape, oldParentId) {
|
|
8712
|
+
_shapeMapRef.value.set(shape.id, shape);
|
|
8713
|
+
const newParentId = shape.parenShapeId ?? null;
|
|
8714
|
+
const normalizedOldParent = oldParentId ?? null;
|
|
8715
|
+
if (normalizedOldParent !== newParentId) {
|
|
8716
|
+
if (normalizedOldParent) {
|
|
8717
|
+
const oldChildren = _parentChildMapRef.value.get(normalizedOldParent);
|
|
8718
|
+
if (oldChildren) {
|
|
8719
|
+
const idx = oldChildren.indexOf(shape.id);
|
|
8720
|
+
if (idx !== -1)
|
|
8721
|
+
oldChildren.splice(idx, 1);
|
|
8722
|
+
if (oldChildren.length === 0) {
|
|
8723
|
+
_parentChildMapRef.value.delete(normalizedOldParent);
|
|
8724
|
+
}
|
|
8725
|
+
}
|
|
8726
|
+
}
|
|
8727
|
+
if (newParentId) {
|
|
8728
|
+
const newChildren = _parentChildMapRef.value.get(newParentId);
|
|
8729
|
+
if (newChildren) {
|
|
8730
|
+
if (!newChildren.includes(shape.id)) {
|
|
8731
|
+
newChildren.push(shape.id);
|
|
8732
|
+
}
|
|
8733
|
+
} else {
|
|
8734
|
+
_parentChildMapRef.value.set(newParentId, [shape.id]);
|
|
8735
|
+
}
|
|
8736
|
+
}
|
|
8737
|
+
}
|
|
8738
|
+
}
|
|
8739
|
+
function _rebuildIndex() {
|
|
8740
|
+
const newShapeMap = /* @__PURE__ */ new Map();
|
|
8741
|
+
const newParentChildMap = /* @__PURE__ */ new Map();
|
|
8578
8742
|
shapes.value.forEach((shape) => {
|
|
8743
|
+
newShapeMap.set(shape.id, shape);
|
|
8579
8744
|
if (shape.parenShapeId) {
|
|
8580
|
-
|
|
8581
|
-
|
|
8745
|
+
const children = newParentChildMap.get(shape.parenShapeId);
|
|
8746
|
+
if (children) {
|
|
8747
|
+
children.push(shape.id);
|
|
8748
|
+
} else {
|
|
8749
|
+
newParentChildMap.set(shape.parenShapeId, [shape.id]);
|
|
8582
8750
|
}
|
|
8583
|
-
map.get(shape.parenShapeId).push(shape.id);
|
|
8584
8751
|
}
|
|
8585
8752
|
});
|
|
8586
|
-
|
|
8587
|
-
|
|
8588
|
-
|
|
8589
|
-
|
|
8590
|
-
|
|
8591
|
-
|
|
8592
|
-
|
|
8593
|
-
|
|
8594
|
-
}
|
|
8753
|
+
_shapeMapRef.value = newShapeMap;
|
|
8754
|
+
_parentChildMapRef.value = newParentChildMap;
|
|
8755
|
+
triggerRef(_shapeMapRef);
|
|
8756
|
+
triggerRef(_parentChildMapRef);
|
|
8757
|
+
}
|
|
8758
|
+
function _triggerIndexUpdate() {
|
|
8759
|
+
triggerRef(_shapeMapRef);
|
|
8760
|
+
triggerRef(_parentChildMapRef);
|
|
8761
|
+
}
|
|
8595
8762
|
const taggedValueLabels = ref([]);
|
|
8596
8763
|
const packagesTypes = ref([]);
|
|
8597
8764
|
const classMetaTypes = ref([]);
|
|
@@ -8611,7 +8778,8 @@ const useGraphStore = defineStore(
|
|
|
8611
8778
|
}
|
|
8612
8779
|
}
|
|
8613
8780
|
shapes.value.push(shape);
|
|
8614
|
-
|
|
8781
|
+
_indexAdd(shape);
|
|
8782
|
+
_triggerIndexUpdate();
|
|
8615
8783
|
const shouldAutoExpand = options?.autoExpandParent !== false;
|
|
8616
8784
|
if (shouldAutoExpand && shape.parenShapeId && shape.bounds) {
|
|
8617
8785
|
nextTick(() => {
|
|
@@ -8622,7 +8790,9 @@ const useGraphStore = defineStore(
|
|
|
8622
8790
|
const removeShape = (shapeId) => {
|
|
8623
8791
|
const index = shapes.value.findIndex((s2) => s2.id == shapeId);
|
|
8624
8792
|
if (index > -1) {
|
|
8625
|
-
|
|
8793
|
+
_indexRemove(shapeId);
|
|
8794
|
+
shapes.value.splice(index, 1);
|
|
8795
|
+
_triggerIndexUpdate();
|
|
8626
8796
|
if (selectedShape.value?.id === shapeId) {
|
|
8627
8797
|
selectedShape.value = null;
|
|
8628
8798
|
eventBus.emit("shape-deselected");
|
|
@@ -8647,6 +8817,7 @@ const useGraphStore = defineStore(
|
|
|
8647
8817
|
const updateShapeRaw = (shapeId, updates, id = "id") => {
|
|
8648
8818
|
const shape = shapes.value.find((s2) => s2[id] === shapeId);
|
|
8649
8819
|
if (shape) {
|
|
8820
|
+
const oldParentId = shape.parenShapeId;
|
|
8650
8821
|
if (shape.shapeType === "pin" && "parenShapeId" in updates) {
|
|
8651
8822
|
const v2 = updates.parenShapeId;
|
|
8652
8823
|
if (v2 == null || v2 === "") {
|
|
@@ -8660,6 +8831,8 @@ const useGraphStore = defineStore(
|
|
|
8660
8831
|
const nextBounds = updates.bounds ? { ...shape.bounds, ...updates.bounds } : shape.bounds;
|
|
8661
8832
|
const nextStyle = updates.style ? { ...shape.style || {}, ...updates.style } : shape.style;
|
|
8662
8833
|
Object.assign(shape, updates, { bounds: nextBounds, style: nextStyle });
|
|
8834
|
+
_indexUpdate(shape, oldParentId);
|
|
8835
|
+
_triggerIndexUpdate();
|
|
8663
8836
|
eventBus.emit("shape-updated", shape, updates);
|
|
8664
8837
|
}
|
|
8665
8838
|
};
|
|
@@ -8688,25 +8861,37 @@ const useGraphStore = defineStore(
|
|
|
8688
8861
|
eventBus.emit("shape-selected", shape);
|
|
8689
8862
|
};
|
|
8690
8863
|
const marqueeShapes = computed(() => {
|
|
8691
|
-
const byId2 = (id) => shapes.value.find((s2) => s2.id === id);
|
|
8692
|
-
const isShape2 = (x2) => !!x2;
|
|
8693
8864
|
const pending = new Set(pendingNestedIds.value);
|
|
8694
|
-
|
|
8865
|
+
const result = [];
|
|
8866
|
+
for (const id of selectedIds.value) {
|
|
8867
|
+
if (pending.has(id))
|
|
8868
|
+
continue;
|
|
8869
|
+
const shape = shapeMap.value.get(id);
|
|
8870
|
+
if (shape)
|
|
8871
|
+
result.push(shape);
|
|
8872
|
+
}
|
|
8873
|
+
return result;
|
|
8695
8874
|
});
|
|
8696
8875
|
const ghostShadow = computed(() => {
|
|
8876
|
+
if (!isDragging.value || draggingIds.value.length === 0)
|
|
8877
|
+
return [];
|
|
8697
8878
|
const out = [];
|
|
8698
8879
|
const pendingList = Array.isArray(pendingNestedIds.value) ? pendingNestedIds.value : [];
|
|
8699
8880
|
const pendingSet = new Set(pendingList);
|
|
8881
|
+
const directDragSet = new Set(dragSelectionSnapshot.value.length > 0 ? dragSelectionSnapshot.value : draggingIds.value.slice(0, 1));
|
|
8700
8882
|
const map = shapeMap.value;
|
|
8701
|
-
for (const id
|
|
8883
|
+
for (const id of directDragSet) {
|
|
8702
8884
|
if (pendingSet.has(id))
|
|
8703
8885
|
continue;
|
|
8886
|
+
const ghostRect = dragGhost[id];
|
|
8887
|
+
if (!ghostRect)
|
|
8888
|
+
continue;
|
|
8704
8889
|
const orig = map.get(id);
|
|
8705
8890
|
if (!orig)
|
|
8706
8891
|
continue;
|
|
8707
8892
|
out.push({
|
|
8708
8893
|
...orig,
|
|
8709
|
-
bounds: { ...
|
|
8894
|
+
bounds: { ...ghostRect },
|
|
8710
8895
|
meta: { ...orig.meta, isGhost: true }
|
|
8711
8896
|
});
|
|
8712
8897
|
}
|
|
@@ -8714,11 +8899,16 @@ const useGraphStore = defineStore(
|
|
|
8714
8899
|
});
|
|
8715
8900
|
const selectMany = (ids) => {
|
|
8716
8901
|
selectedIds.value = Array.from(new Set(ids));
|
|
8717
|
-
selectedShape.value = ids.length ?
|
|
8902
|
+
selectedShape.value = ids.length ? shapeMap.value.get(ids[0]) ?? null : null;
|
|
8718
8903
|
};
|
|
8719
8904
|
const clearSelection = () => selectShape(null);
|
|
8720
8905
|
const selectAll = () => {
|
|
8721
|
-
const allShapeIds =
|
|
8906
|
+
const allShapeIds = [];
|
|
8907
|
+
for (const shape of shapes.value) {
|
|
8908
|
+
if (shape.shapeType?.toLowerCase() !== "diagram") {
|
|
8909
|
+
allShapeIds.push(shape.id);
|
|
8910
|
+
}
|
|
8911
|
+
}
|
|
8722
8912
|
selectMany(allShapeIds);
|
|
8723
8913
|
};
|
|
8724
8914
|
const setTitle = (title) => {
|
|
@@ -8726,12 +8916,40 @@ const useGraphStore = defineStore(
|
|
|
8726
8916
|
eventBus.emit("title-changed", title);
|
|
8727
8917
|
};
|
|
8728
8918
|
const updateShapes = (payload, op = "upsert", options) => {
|
|
8729
|
-
const { changedShapes } = applyShapeOp({
|
|
8919
|
+
const { changedShapes, changeDetails } = applyShapeOp({
|
|
8730
8920
|
list: shapes.value,
|
|
8731
8921
|
payload,
|
|
8732
8922
|
// delete 时是 id[],其余是 Shape[]
|
|
8733
8923
|
op
|
|
8734
8924
|
});
|
|
8925
|
+
if (op === "replace" || changeDetails.length === 0) {
|
|
8926
|
+
_rebuildIndex();
|
|
8927
|
+
} else {
|
|
8928
|
+
for (const detail of changeDetails) {
|
|
8929
|
+
if (detail.type === "add") {
|
|
8930
|
+
_indexAdd(detail.shape);
|
|
8931
|
+
} else if (detail.type === "delete") {
|
|
8932
|
+
_shapeMapRef.value.delete(detail.shape.id);
|
|
8933
|
+
const parentId = detail.shape.parenShapeId;
|
|
8934
|
+
if (parentId) {
|
|
8935
|
+
const children = _parentChildMapRef.value.get(parentId);
|
|
8936
|
+
if (children) {
|
|
8937
|
+
const idx = children.indexOf(detail.shape.id);
|
|
8938
|
+
if (idx !== -1)
|
|
8939
|
+
children.splice(idx, 1);
|
|
8940
|
+
if (children.length === 0) {
|
|
8941
|
+
_parentChildMapRef.value.delete(parentId);
|
|
8942
|
+
}
|
|
8943
|
+
}
|
|
8944
|
+
}
|
|
8945
|
+
_parentChildMapRef.value.delete(detail.shape.id);
|
|
8946
|
+
} else if (detail.type === "update") {
|
|
8947
|
+
const oldParentId = detail.oldShape?.parenShapeId;
|
|
8948
|
+
_indexUpdate(detail.shape, oldParentId);
|
|
8949
|
+
}
|
|
8950
|
+
}
|
|
8951
|
+
_triggerIndexUpdate();
|
|
8952
|
+
}
|
|
8735
8953
|
pendingNestedIds.value = [];
|
|
8736
8954
|
const shouldAutoExpand = options?.autoExpandParents !== false;
|
|
8737
8955
|
if (shouldAutoExpand && changedShapes.length > 0) {
|
|
@@ -8745,6 +8963,10 @@ const useGraphStore = defineStore(
|
|
|
8745
8963
|
};
|
|
8746
8964
|
const clearAll = () => {
|
|
8747
8965
|
shapes.value = [];
|
|
8966
|
+
_shapeMapRef.value = /* @__PURE__ */ new Map();
|
|
8967
|
+
_parentChildMapRef.value = /* @__PURE__ */ new Map();
|
|
8968
|
+
triggerRef(_shapeMapRef);
|
|
8969
|
+
triggerRef(_parentChildMapRef);
|
|
8748
8970
|
diagrams.value = [];
|
|
8749
8971
|
selectedShape.value = null;
|
|
8750
8972
|
pendingNestedIds.value = [];
|
|
@@ -8757,12 +8979,7 @@ const useGraphStore = defineStore(
|
|
|
8757
8979
|
const startDrag = (ids, pointer) => {
|
|
8758
8980
|
dragSelectionSnapshot.value = selectedIds.value.length ? [...selectedIds.value] : [ids[0]];
|
|
8759
8981
|
primaryDragId.value = ids[0] || null;
|
|
8760
|
-
const
|
|
8761
|
-
ids.forEach((id) => {
|
|
8762
|
-
expanded.push(id);
|
|
8763
|
-
collectDescendantIds(shapes.value, id).forEach((cid) => expanded.push(cid));
|
|
8764
|
-
});
|
|
8765
|
-
const validIds = Array.from(new Set(expanded)).filter((id) => {
|
|
8982
|
+
const validIds = ids.filter((id) => {
|
|
8766
8983
|
const s2 = byId(id);
|
|
8767
8984
|
return s2 && getPolicy(s2).draggable;
|
|
8768
8985
|
});
|
|
@@ -8777,6 +8994,29 @@ const useGraphStore = defineStore(
|
|
|
8777
8994
|
dragGhost[k] = snap.dragBase[k];
|
|
8778
8995
|
draggingIds.value = validIds;
|
|
8779
8996
|
dragAnchor.value = { x: pointer.x, y: pointer.y };
|
|
8997
|
+
const newSnapshot = /* @__PURE__ */ new Map();
|
|
8998
|
+
for (const parentId of validIds) {
|
|
8999
|
+
const descendants = [];
|
|
9000
|
+
const collectDescendants = (pid) => {
|
|
9001
|
+
const childIds = _parentChildMapRef.value.get(pid) || [];
|
|
9002
|
+
for (const childId of childIds) {
|
|
9003
|
+
const childShape = _shapeMapRef.value.get(childId);
|
|
9004
|
+
if (childShape?.bounds) {
|
|
9005
|
+
descendants.push({
|
|
9006
|
+
id: childId,
|
|
9007
|
+
x: childShape.bounds.x ?? 0,
|
|
9008
|
+
y: childShape.bounds.y ?? 0,
|
|
9009
|
+
width: childShape.bounds.width ?? 0,
|
|
9010
|
+
height: childShape.bounds.height ?? 0
|
|
9011
|
+
});
|
|
9012
|
+
}
|
|
9013
|
+
collectDescendants(childId);
|
|
9014
|
+
}
|
|
9015
|
+
};
|
|
9016
|
+
collectDescendants(parentId);
|
|
9017
|
+
newSnapshot.set(parentId, descendants);
|
|
9018
|
+
}
|
|
9019
|
+
dragDescendantsSnapshot.value = newSnapshot;
|
|
8780
9020
|
const currentDiagram = shapes.value.find((s2) => s2.shapeType === "diagram");
|
|
8781
9021
|
if (currentDiagram) {
|
|
8782
9022
|
dragBaseCanvasSize.value = {
|
|
@@ -8989,12 +9229,28 @@ const useGraphStore = defineStore(
|
|
|
8989
9229
|
updateShape(shape.id, shape);
|
|
8990
9230
|
});
|
|
8991
9231
|
autoExpandMovedCompartmentsAfterDrag(shapes.value, changedIds, updateShape);
|
|
9232
|
+
const allReparentIds = [...changedIds, ...clonedIds];
|
|
9233
|
+
const prevMapForComparents = { ...prevParentById };
|
|
9234
|
+
for (const cid of clonedIds) {
|
|
9235
|
+
prevMapForComparents[cid] = null;
|
|
9236
|
+
}
|
|
8992
9237
|
syncShowComparentsByReparent(
|
|
8993
9238
|
shapes.value,
|
|
8994
|
-
|
|
8995
|
-
|
|
9239
|
+
allReparentIds,
|
|
9240
|
+
prevMapForComparents,
|
|
8996
9241
|
(id, u2) => updateShapeRaw(id, u2)
|
|
8997
9242
|
);
|
|
9243
|
+
const shapeId = ownerPayload?.shapeId;
|
|
9244
|
+
if (shapeId != null) {
|
|
9245
|
+
const child = shapes.value.find((s2) => s2.id == shapeId);
|
|
9246
|
+
if (child) {
|
|
9247
|
+
expandParentByChild({
|
|
9248
|
+
shapes: shapes.value,
|
|
9249
|
+
child,
|
|
9250
|
+
updateShape
|
|
9251
|
+
});
|
|
9252
|
+
}
|
|
9253
|
+
}
|
|
8998
9254
|
const affectedIds = collectAffectedShapeIds$1(shapes.value, changedIds, clonedIds);
|
|
8999
9255
|
const payloads = buildDragEndPayloads(affectedIds, shapes.value);
|
|
9000
9256
|
const onNestDone = createOnNestDoneCallback({
|
|
@@ -9015,7 +9271,6 @@ const useGraphStore = defineStore(
|
|
|
9015
9271
|
}
|
|
9016
9272
|
}
|
|
9017
9273
|
}
|
|
9018
|
-
console.log("drag end payloads:", payloads, ownerPayload);
|
|
9019
9274
|
eventBus.emit("shape-drag-end", payloads, ownerPayload, onNestDone);
|
|
9020
9275
|
cleanupAfterDrag();
|
|
9021
9276
|
};
|
|
@@ -9064,6 +9319,7 @@ const useGraphStore = defineStore(
|
|
|
9064
9319
|
dragSelectionSnapshot.value = [];
|
|
9065
9320
|
primaryDragId.value = null;
|
|
9066
9321
|
dragBaseCanvasSize.value = null;
|
|
9322
|
+
dragDescendantsSnapshot.value = /* @__PURE__ */ new Map();
|
|
9067
9323
|
for (const k in dragGhost)
|
|
9068
9324
|
delete dragGhost[k];
|
|
9069
9325
|
};
|
|
@@ -9182,6 +9438,10 @@ const useGraphStore = defineStore(
|
|
|
9182
9438
|
// 图元ID索引映射 (性能优化)
|
|
9183
9439
|
marqueeShapes,
|
|
9184
9440
|
ghostShadow,
|
|
9441
|
+
dragDescendantsSnapshot,
|
|
9442
|
+
// 拖动时的后代坐标快照
|
|
9443
|
+
dragBase,
|
|
9444
|
+
// 拖动开始时的坐标快照
|
|
9185
9445
|
scales,
|
|
9186
9446
|
activeDiagramId,
|
|
9187
9447
|
// 当前活动画布的缩放比例
|
|
@@ -9234,388 +9494,19 @@ const useGraphStore = defineStore(
|
|
|
9234
9494
|
}
|
|
9235
9495
|
);
|
|
9236
9496
|
const _imports_0 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAACbSURBVGiB7dfRCYAwDEXRVhxIcRJncC5ncBLRjXQCaSRS9eWeb4VeAqFNCQAAoJLs+fmYxuO5o/jleSn2NHWO8h0EqyNYnWtLe1xteMum9Qg3YYLVEayOYHXhglvLR10/FJ+B+7a+dom5I9yECVZHsDqC1YULNl08/nKpsAg3YYLVEayO56E6gtURrI5gdeGCeR6qCxcMAABQzQn/mxU1UF28jAAAAABJRU5ErkJggg==";
|
|
9237
|
-
const
|
|
9238
|
-
"
|
|
9239
|
-
|
|
9240
|
-
"
|
|
9241
|
-
|
|
9242
|
-
"
|
|
9243
|
-
|
|
9244
|
-
"
|
|
9245
|
-
|
|
9246
|
-
"
|
|
9247
|
-
|
|
9248
|
-
|
|
9249
|
-
|
|
9250
|
-
"ActualEnduringTask": "Block",
|
|
9251
|
-
//实际持续任务
|
|
9252
|
-
"ValueStream": "Block",
|
|
9253
|
-
//价值流
|
|
9254
|
-
"StrategicInformation": "Block",
|
|
9255
|
-
//战略信息
|
|
9256
|
-
"GeoPoliticalExtentType": "Block",
|
|
9257
|
-
//地理政治范围类型
|
|
9258
|
-
"CapabilityConfiguration": "Block",
|
|
9259
|
-
//能力配置
|
|
9260
|
-
"EnterpriseGoal": "DividingLine",
|
|
9261
|
-
//企业目标
|
|
9262
|
-
"EnterpriseVision": "Block",
|
|
9263
|
-
//企业愿景
|
|
9264
|
-
"ActualOrganization": "Block",
|
|
9265
|
-
//实际组织
|
|
9266
|
-
"VisionStatement": "Block",
|
|
9267
|
-
//愿景宣言
|
|
9268
|
-
"ActualCondition": "Block",
|
|
9269
|
-
//实际情况
|
|
9270
|
-
"ActualEnvironment": "Block",
|
|
9271
|
-
//实际环境
|
|
9272
|
-
"ActualLocation": "Block",
|
|
9273
|
-
//实际位置
|
|
9274
|
-
"Location": "Block",
|
|
9275
|
-
//位置
|
|
9276
|
-
"Condition": "Block",
|
|
9277
|
-
//状况条件
|
|
9278
|
-
"Environment": "Block",
|
|
9279
|
-
//环境
|
|
9280
|
-
"Concern": "Block",
|
|
9281
|
-
//涉及
|
|
9282
|
-
"ActualPost": "Block",
|
|
9283
|
-
//实际职责,
|
|
9284
|
-
"Strategic": "Package",
|
|
9285
|
-
// 战略层
|
|
9286
|
-
"StrategicTaxonomyDiagram": "Diagram",
|
|
9287
|
-
//战略概念图
|
|
9288
|
-
"StrategicInformationDiagram": "Diagram",
|
|
9289
|
-
//战略信息图
|
|
9290
|
-
"StrategicStructureDiagram": "Diagram",
|
|
9291
|
-
//战略结构图
|
|
9292
|
-
"StrategicConnectivityDiagram": "Diagram",
|
|
9293
|
-
//战略连通图
|
|
9294
|
-
// 'StrategicConnectivityMatrixDiagram':'StrategicTaxonomyDiagram', //战略连通矩阵
|
|
9295
|
-
"StrategicStatesDiagram": "Diagram",
|
|
9296
|
-
//战略状态图
|
|
9297
|
-
"StrategicProcessesDiagram": "Diagram",
|
|
9298
|
-
//战略流程图
|
|
9299
|
-
"StrategicParametersDiagram": "Diagram",
|
|
9300
|
-
//战略参数图
|
|
9301
|
-
"StrategicConstraintsDiagram": "Diagram",
|
|
9302
|
-
//战略约束图
|
|
9303
|
-
"StrategicConstraintsDefinitionDiagram": "Diagram",
|
|
9304
|
-
//战略约束定义图
|
|
9305
|
-
// 'ActualStrategicPhasesGanttChart': 'StrategicTaxonomyDiagram', //实际战略阶段甘特图
|
|
9306
|
-
// 'StrategicActualDeploymentDiagram': 'StrategicTaxonomyDiagram', //战略实际部署图
|
|
9307
|
-
// 'ActualStrategicPhasesToCapabilitiesMappingMatrix': 'StrategicTaxonomyDiagram', //实际战略阶段与能力映射矩阵
|
|
9308
|
-
"OperationalTaxonomyDiagram": "Diagram",
|
|
9309
|
-
//业务概念图
|
|
9310
|
-
"HighLevelOperationalConceptDiagram": "Diagram",
|
|
9311
|
-
//顶级业务概念图
|
|
9312
|
-
"OperationalFreeFormTaxonomyDiagram": "Diagram",
|
|
9313
|
-
//业务自由分类图
|
|
9314
|
-
"OperationalStructureDiagram": "Diagram",
|
|
9315
|
-
//业务结构图
|
|
9316
|
-
"OperationalConnectivityDiagram": "Diagram",
|
|
9317
|
-
//业务连通图
|
|
9318
|
-
"OperationalInternalConnectivityDiagram": "Diagram",
|
|
9319
|
-
//业务内部连通图
|
|
9320
|
-
"OperationalProcessesDiagram": "Diagram",
|
|
9321
|
-
//业务流程图
|
|
9322
|
-
"OperationalProcessesFlowDiagram": "Diagram",
|
|
9323
|
-
//业务内部流程图
|
|
9324
|
-
"OperationalStatesDiagram": "Diagram",
|
|
9325
|
-
//业务状态图
|
|
9326
|
-
"OperationalInformationDiagram": "Diagram",
|
|
9327
|
-
//业务信息图
|
|
9328
|
-
"OperationalParametricDiagram": "Diagram",
|
|
9329
|
-
//业务参数图
|
|
9330
|
-
"OperationalConstraintsDiagram": "Diagram",
|
|
9331
|
-
//业务约束图
|
|
9332
|
-
"OperationalConstraintsDefinitionDiagram": "Diagram",
|
|
9333
|
-
//业务约束定义图
|
|
9334
|
-
"StrategicTaxonomyTable": "Diagram",
|
|
9335
|
-
//战略概念表
|
|
9336
|
-
"StrategicConnectivityMatrixDiagram": "Diagram",
|
|
9337
|
-
//战略连通矩阵图
|
|
9338
|
-
"StrategicActualStrategicPhaseTaxonomyTable": "Diagram",
|
|
9339
|
-
//战略实际战略阶段分类表
|
|
9340
|
-
"ActualStrategicPhasesGanttChart": "Diagram",
|
|
9341
|
-
//实际战略阶段甘特图
|
|
9342
|
-
"StrategicActualDeploymentDiagram": "Diagram",
|
|
9343
|
-
//战略实际部署图
|
|
9344
|
-
"ActualStrategicPhasesToCapabilitiesMappingMatrix": "Diagram",
|
|
9345
|
-
//实际战略阶段与能力映射矩阵
|
|
9346
|
-
"OperationalConnectivityTable": "Diagram",
|
|
9347
|
-
//业务连通表
|
|
9348
|
-
"OperationalActivitiesToCapabilitiesMappingMatrix": "Diagram",
|
|
9349
|
-
//业务活动与能力映射矩阵
|
|
9350
|
-
"OperationalPerformersToCapabilitiesMappingMatrix": "Diagram",
|
|
9351
|
-
//业务执行者与能力映射矩阵
|
|
9352
|
-
"ServicesTaxonomyDiagram": "Diagram",
|
|
9353
|
-
//服务概念图
|
|
9354
|
-
"ServicesTaxonomyTable": "Diagram",
|
|
9355
|
-
//服务概念表
|
|
9356
|
-
"ServicesStructureDiagram": "Diagram",
|
|
9357
|
-
//服务结构图
|
|
9358
|
-
"ServicesConnectivityDiagram": "Diagram",
|
|
9359
|
-
//服务连通图
|
|
9360
|
-
"ServicesConnectivityMatrixDiagram": "Diagram",
|
|
9361
|
-
//服务连通矩阵图
|
|
9362
|
-
"ServicesConnectivityTable": "Diagram",
|
|
9363
|
-
//服务连通表
|
|
9364
|
-
"ServicesInternalConnectivityDiagram": "Diagram",
|
|
9365
|
-
//服务内部连通图
|
|
9366
|
-
"ServicesProcessesDiagram": "Diagram",
|
|
9367
|
-
//服务流程图
|
|
9368
|
-
"ServicesProcessesFlowDiagram": "Diagram",
|
|
9369
|
-
//服务内部流程图
|
|
9370
|
-
"ServicesStatesDiagram": "Diagram",
|
|
9371
|
-
//服务状态图
|
|
9372
|
-
"ServicesParametricDiagram": "Diagram",
|
|
9373
|
-
//服务参数图
|
|
9374
|
-
"ServicesConstraintsDiagram": "Diagram",
|
|
9375
|
-
//服务约束图
|
|
9376
|
-
"ServicesConstraintsDefinitionDiagram": "Diagram",
|
|
9377
|
-
//服务约束定义图
|
|
9378
|
-
"ServicesRoadmapDiagram": "Diagram",
|
|
9379
|
-
//服务路线图
|
|
9380
|
-
"ServicesToCapabilitiesMappingMatrix": "Diagram",
|
|
9381
|
-
//服务与能力映射矩阵
|
|
9382
|
-
"ServicesToOperationalActivitiesMappingMatrix": "Diagram",
|
|
9383
|
-
//服务与业务活动映射矩阵
|
|
9384
|
-
"ServicesToServiceContractsMappingMatrix": "Diagram",
|
|
9385
|
-
//服务与服务合同映射矩阵
|
|
9386
|
-
"PersonnelTaxonomyDiagram": "Diagram",
|
|
9387
|
-
//人员概念图
|
|
9388
|
-
"PersonnelTaxonomyTable": "Diagram",
|
|
9389
|
-
//人员概念表
|
|
9390
|
-
"PersonnelStructureDiagram": "Diagram",
|
|
9391
|
-
//人员结构图
|
|
9392
|
-
"PersonnelConnectivityDiagram": "Diagram",
|
|
9393
|
-
//人员连通图
|
|
9394
|
-
"PersonnelConnectivityTable": "Diagram",
|
|
9395
|
-
//人员连通表
|
|
9396
|
-
"PersonnelInternalConnectivityDiagram": "Diagram",
|
|
9397
|
-
//人员内部连通图
|
|
9398
|
-
"PersonnelProcessesDiagram": "Diagram",
|
|
9399
|
-
//人员流程图
|
|
9400
|
-
"PersonnelProcessesFlowDiagram": "Diagram",
|
|
9401
|
-
//人员内部流程图
|
|
9402
|
-
"PersonnelStatesDiagram": "Diagram",
|
|
9403
|
-
//人员状态图
|
|
9404
|
-
"PersonnelParametricDiagram": "Diagram",
|
|
9405
|
-
//人员参数图
|
|
9406
|
-
"PersonnelConstraintsDiagram": "Diagram",
|
|
9407
|
-
//人员约束图
|
|
9408
|
-
"PersonnelConstraintsDefinitionDiagram": "Diagram",
|
|
9409
|
-
//人员约束定义图
|
|
9410
|
-
"ResourcesTaxonomyDiagram": "Diagram",
|
|
9411
|
-
//资源概念图
|
|
9412
|
-
"ResourcesTaxonomyTable": "Diagram",
|
|
9413
|
-
//资源概念表
|
|
9414
|
-
"ResourcesStructureDiagram": "Diagram",
|
|
9415
|
-
//资源结构图
|
|
9416
|
-
"ResourcesConnectivityDiagram": "Diagram",
|
|
9417
|
-
//资源连通图
|
|
9418
|
-
"ResourcesConnectivityTable": "Diagram",
|
|
9419
|
-
//资源连通表
|
|
9420
|
-
"ResourcesInternalConnectivityDiagram": "Diagram",
|
|
9421
|
-
//资源内部连通图
|
|
9422
|
-
"ResourcesProcessesDiagram": "Diagram",
|
|
9423
|
-
//资源流程图
|
|
9424
|
-
"ResourcesProcessesFlowDiagram": "Diagram",
|
|
9425
|
-
//资源内部流程图
|
|
9426
|
-
"ResourcesStatesDiagram": "Diagram",
|
|
9427
|
-
//资源状态图
|
|
9428
|
-
"ResourcesInformationDiagram": "Diagram",
|
|
9429
|
-
//资源信息图
|
|
9430
|
-
"ResourcesParametricDiagram": "Diagram",
|
|
9431
|
-
//资源参数图
|
|
9432
|
-
"FunctionsToOperationalActivitiesMappingMatrix": "Diagram",
|
|
9433
|
-
//功能与业务活动映射矩阵
|
|
9434
|
-
"ResourcesToCapabilitiesMappingMatrix": "Diagram",
|
|
9435
|
-
//资源与能力映射矩阵
|
|
9436
|
-
"ResourcesToOperationalActivitiesMappingMatrix": "Diagram",
|
|
9437
|
-
//资源与业务活动映射矩阵
|
|
9438
|
-
"SecurityTaxonomyDiagram": "Diagram",
|
|
9439
|
-
//安全概念图
|
|
9440
|
-
"SecurityTaxonomyTable": "Diagram",
|
|
9441
|
-
//安全概念表
|
|
9442
|
-
"SecurityStructureDiagram": "Diagram",
|
|
9443
|
-
//安全结构图
|
|
9444
|
-
"SecurityConnectivityDiagram": "Diagram",
|
|
9445
|
-
//安全连通图
|
|
9446
|
-
"SecurityConnectivityTable": "Diagram",
|
|
9447
|
-
//安全连通表
|
|
9448
|
-
"SecurityProcessesDiagram": "Diagram",
|
|
9449
|
-
//安全流程图
|
|
9450
|
-
"SecurityProcessFlowDiagram": "Diagram",
|
|
9451
|
-
//安全内部流程图
|
|
9452
|
-
"SecurityConstraintsDiagram": "Diagram",
|
|
9453
|
-
//安全约束图
|
|
9454
|
-
"SecurityConstraintsDefinitionDiagram": "Diagram",
|
|
9455
|
-
//安全约束定义图
|
|
9456
|
-
"RisksToAssetsMappingMatrix": "Diagram",
|
|
9457
|
-
//资产风险映射矩阵
|
|
9458
|
-
"SecurityControlsToRisksMappingMatrix": "Diagram",
|
|
9459
|
-
//风险与安全控制映射矩阵
|
|
9460
|
-
"ProjectsTaxonomyDiagram": "Diagram",
|
|
9461
|
-
//项目概念图
|
|
9462
|
-
"ProjectsTaxonomyTable": "Diagram",
|
|
9463
|
-
//项目概念表
|
|
9464
|
-
"ProjectsStructureDiagram": "Diagram",
|
|
9465
|
-
//项目结构图
|
|
9466
|
-
"ProjectsConnectivityDiagram": "Diagram",
|
|
9467
|
-
//项目连通图
|
|
9468
|
-
"ProjectsProcessesDiagram": "Diagram",
|
|
9469
|
-
//项目流程图
|
|
9470
|
-
"ProjectsProcessesFlowDiagram": "Diagram",
|
|
9471
|
-
//项目内部流程图
|
|
9472
|
-
"ActualProjectMilestoneSummaryTable": "Diagram",
|
|
9473
|
-
//实际项目里程碑汇总表
|
|
9474
|
-
"ProjectsRoadmapDiagram": "Diagram",
|
|
9475
|
-
//项目路线图
|
|
9476
|
-
"ActualProjectsToCapabilitiesMappingMatrix": "Diagram",
|
|
9477
|
-
//实际项目与能力映射矩阵
|
|
9478
|
-
"ActualResponsibleResourcesToActualProjectsMappingMatrix": "Diagram",
|
|
9479
|
-
//实际资源与实际项目对应关系矩阵
|
|
9480
|
-
"ProjectActivitiesToCapabilitiesMappingMatrix": "Diagram",
|
|
9481
|
-
//项目活动与能力映射矩阵
|
|
9482
|
-
"StandardsTaxonomyDiagram": "Diagram",
|
|
9483
|
-
//标准概念图
|
|
9484
|
-
"StandardsTaxonomyTable": "Diagram",
|
|
9485
|
-
//标准概念表
|
|
9486
|
-
"StandardsStructureDiagram": "Diagram",
|
|
9487
|
-
//标准结构图
|
|
9488
|
-
"StandardsRoadmapDiagram": "Diagram",
|
|
9489
|
-
//标准路线图
|
|
9490
|
-
"StandardsTraceabilityDiagram": "Diagram",
|
|
9491
|
-
//标准追溯图
|
|
9492
|
-
"ActualResourcesTaxonomyMatrix": "Diagram",
|
|
9493
|
-
//实际资源概念矩阵
|
|
9494
|
-
"ActualResourcesStructureDiagram": "Diagram",
|
|
9495
|
-
//实际资源结构图
|
|
9496
|
-
"ActualResourcesConnectivityDiagram": "Diagram",
|
|
9497
|
-
//实际资源连通图
|
|
9498
|
-
"OperationalInformation": "Block",
|
|
9499
|
-
//业务信息
|
|
9500
|
-
"ResourceInformation": "Block",
|
|
9501
|
-
//资源信息
|
|
9502
|
-
"ActualResource": "Block",
|
|
9503
|
-
//实际资源
|
|
9504
|
-
"InformationModel": "Package",
|
|
9505
|
-
//信息模型
|
|
9506
|
-
"Opportunity": "DividingLine",
|
|
9507
|
-
//时机
|
|
9508
|
-
"OperationalRole": "Block",
|
|
9509
|
-
//业务角色
|
|
9510
|
-
"StandardOperationalActivity": "Block",
|
|
9511
|
-
//标准业务活动
|
|
9512
|
-
"OperationalParameter": "Block",
|
|
9513
|
-
//业务参数
|
|
9514
|
-
"OperationalPerformer": "Block",
|
|
9515
|
-
//业务执行者
|
|
9516
|
-
"OperationalArchitecture": "Block",
|
|
9517
|
-
//业务结构
|
|
9518
|
-
"KnownResource": "Block",
|
|
9519
|
-
//已知资源
|
|
9520
|
-
"NaturalResource": "Block",
|
|
9521
|
-
//自然资源
|
|
9522
|
-
"ResourceArchitecture": "Block",
|
|
9523
|
-
//资源架构
|
|
9524
|
-
"ResourceArtifact": "Block",
|
|
9525
|
-
//资源工件
|
|
9526
|
-
"Software": "Block",
|
|
9527
|
-
//软件
|
|
9528
|
-
"Technology": "Block",
|
|
9529
|
-
//技术
|
|
9530
|
-
"ResourceService": "Block",
|
|
9531
|
-
//资源服务
|
|
9532
|
-
"ResourceInterface": "Block",
|
|
9533
|
-
//资源接口
|
|
9534
|
-
"Function": "Block",
|
|
9535
|
-
//方法
|
|
9536
|
-
"ServiceArchitecture": "Block",
|
|
9537
|
-
//服务架构
|
|
9538
|
-
"ServiceInterface": "Block",
|
|
9539
|
-
//服务接口
|
|
9540
|
-
"ServiceFunction": "Block",
|
|
9541
|
-
//服务功能
|
|
9542
|
-
"ServiceSignal": "Block",
|
|
9543
|
-
//服务信号
|
|
9544
|
-
"ServiceRole": "Block",
|
|
9545
|
-
//服务角色
|
|
9546
|
-
"FunctionAction": "ActivityAction",
|
|
9547
|
-
//功能动作
|
|
9548
|
-
"ServiceFunctionAction": "ActivityAction",
|
|
9549
|
-
//服务功能动作
|
|
9550
|
-
"ServiceParameter": "Block",
|
|
9551
|
-
//服务参数
|
|
9552
|
-
"OperationalActivity": "Block",
|
|
9553
|
-
//业务活动
|
|
9554
|
-
"HighLevelOperationalConcept": "Block",
|
|
9555
|
-
//高级业务概念
|
|
9556
|
-
"ActualProject": "Block",
|
|
9557
|
-
//实际项目
|
|
9558
|
-
"ActualRisk": "Block",
|
|
9559
|
-
//实际风险
|
|
9560
|
-
"ActualPropertySet": "Block",
|
|
9561
|
-
//实际属性设置
|
|
9562
|
-
"Organization": "Block",
|
|
9563
|
-
//组织
|
|
9564
|
-
"ActualPerson": "Block",
|
|
9565
|
-
//实际人员
|
|
9566
|
-
"CapabilityRole": "Block",
|
|
9567
|
-
//能力职责
|
|
9568
|
-
"OperationalSignal": "Block",
|
|
9569
|
-
//业务信号
|
|
9570
|
-
"OperationalInterface": "Block",
|
|
9571
|
-
//业务接口
|
|
9572
|
-
"Service": "Block",
|
|
9573
|
-
//服务
|
|
9574
|
-
"ActualService": "Block",
|
|
9575
|
-
//实际服务
|
|
9576
|
-
"Property": "Block",
|
|
9577
|
-
//引用属性
|
|
9578
|
-
"Projectes": "Block",
|
|
9579
|
-
//项目
|
|
9580
|
-
"ProjectMilestone": "Block",
|
|
9581
|
-
//项目里程碑
|
|
9582
|
-
"ActualProjectMilestone": "Block",
|
|
9583
|
-
//实际项目里程碑
|
|
9584
|
-
"ProjectActivity": "Block",
|
|
9585
|
-
//项目活动
|
|
9586
|
-
"ProjectRole": "Block",
|
|
9587
|
-
//项目角色
|
|
9588
|
-
"ProjectMilestoneRole": "Block",
|
|
9589
|
-
//项目里程碑角色
|
|
9590
|
-
"SecurityRisk": "Block",
|
|
9591
|
-
//安全风险
|
|
9592
|
-
"StatusIndicators": "Block",
|
|
9593
|
-
//状态指标
|
|
9594
|
-
"SecurityEnclave": "Block",
|
|
9595
|
-
//安全隔离
|
|
9596
|
-
"SecurityControl": "DividingLine",
|
|
9597
|
-
//安全控制
|
|
9598
|
-
"Risk": "Block",
|
|
9599
|
-
//风险
|
|
9600
|
-
"Post": "Block",
|
|
9601
|
-
//职位
|
|
9602
|
-
"Responsibility": "Block",
|
|
9603
|
-
//责任
|
|
9604
|
-
"ActualResponsibility": "Block",
|
|
9605
|
-
//实际责任
|
|
9606
|
-
"System": "Block",
|
|
9607
|
-
//系统
|
|
9608
|
-
"Competence": "Block",
|
|
9609
|
-
//权限
|
|
9610
|
-
"Person": "Block",
|
|
9611
|
-
//人员
|
|
9612
|
-
"SecurityProcess": "Block",
|
|
9613
|
-
//安全流程
|
|
9614
|
-
"ResourceMitigation": "Block",
|
|
9615
|
-
// 资源缓解措施
|
|
9616
|
-
"OperationalMitigation": "Block",
|
|
9617
|
-
// 业务缓解措施
|
|
9618
|
-
// 线
|
|
9497
|
+
const PinKeyMap = {
|
|
9498
|
+
"OutputPin": "Pin",
|
|
9499
|
+
//输出引脚
|
|
9500
|
+
"InputPin": "Pin",
|
|
9501
|
+
//输入引脚
|
|
9502
|
+
"OperationalPort": "Port",
|
|
9503
|
+
//业务端口
|
|
9504
|
+
"ServicePort": "Port",
|
|
9505
|
+
//服务端口
|
|
9506
|
+
"ResourcePort": "Port"
|
|
9507
|
+
//资源端口
|
|
9508
|
+
};
|
|
9509
|
+
const EdgeKeyMap = {
|
|
9619
9510
|
"Association": "Edge",
|
|
9620
9511
|
//双向关联
|
|
9621
9512
|
"DirectedAggregation": "Edge",
|
|
@@ -9706,9 +9597,227 @@ const BlockKeyMap = {
|
|
|
9706
9597
|
//里程碑依赖
|
|
9707
9598
|
"DirectedAssociation": "Edge",
|
|
9708
9599
|
//定向关联
|
|
9709
|
-
"ResourceConnector": "Edge"
|
|
9600
|
+
"ResourceConnector": "Edge"
|
|
9710
9601
|
//资源连接器
|
|
9711
|
-
|
|
9602
|
+
};
|
|
9603
|
+
const DiagramKeyMap = {
|
|
9604
|
+
"StrategicTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9605
|
+
//战略概念图
|
|
9606
|
+
"StrategicInformationDiagram": "StrategicTaxonomyDiagram",
|
|
9607
|
+
//战略信息图
|
|
9608
|
+
"StrategicStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9609
|
+
//战略结构图
|
|
9610
|
+
"StrategicConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9611
|
+
//战略连通图
|
|
9612
|
+
"StrategicStatesDiagram": "StrategicTaxonomyDiagram",
|
|
9613
|
+
//战略状态图
|
|
9614
|
+
"StrategicProcessesDiagram": "StrategicTaxonomyDiagram",
|
|
9615
|
+
//战略流程图
|
|
9616
|
+
"StrategicParametersDiagram": "StrategicTaxonomyDiagram",
|
|
9617
|
+
//战略参数图
|
|
9618
|
+
"StrategicConstraintsDiagram": "StrategicTaxonomyDiagram",
|
|
9619
|
+
//战略约束图
|
|
9620
|
+
"StrategicConstraintsDefinitionDiagram": "StrategicTaxonomyDiagram",
|
|
9621
|
+
//战略约束定义图
|
|
9622
|
+
"OperationalTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9623
|
+
//业务概念图
|
|
9624
|
+
"HighLevelOperationalConceptDiagram": "StrategicTaxonomyDiagram",
|
|
9625
|
+
//顶级业务概念图
|
|
9626
|
+
"OperationalFreeFormTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9627
|
+
//业务自由分类图
|
|
9628
|
+
"OperationalStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9629
|
+
//业务结构图
|
|
9630
|
+
"OperationalConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9631
|
+
//业务连通图
|
|
9632
|
+
"OperationalInternalConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9633
|
+
//业务内部连通图
|
|
9634
|
+
"OperationalProcessesDiagram": "StrategicTaxonomyDiagram",
|
|
9635
|
+
//业务流程图
|
|
9636
|
+
"OperationalProcessesFlowDiagram": "StrategicTaxonomyDiagram",
|
|
9637
|
+
//业务内部流程图
|
|
9638
|
+
"OperationalStatesDiagram": "StrategicTaxonomyDiagram",
|
|
9639
|
+
//业务状态图
|
|
9640
|
+
"OperationalInformationDiagram": "StrategicTaxonomyDiagram",
|
|
9641
|
+
//业务信息图
|
|
9642
|
+
"OperationalParametricDiagram": "StrategicTaxonomyDiagram",
|
|
9643
|
+
//业务参数图
|
|
9644
|
+
"OperationalConstraintsDiagram": "StrategicTaxonomyDiagram",
|
|
9645
|
+
//业务约束图
|
|
9646
|
+
"OperationalConstraintsDefinitionDiagram": "StrategicTaxonomyDiagram",
|
|
9647
|
+
//业务约束定义图
|
|
9648
|
+
"StrategicTaxonomyTable": "StrategicTaxonomyDiagram",
|
|
9649
|
+
//战略概念表
|
|
9650
|
+
"StrategicConnectivityMatrixDiagram": "StrategicTaxonomyDiagram",
|
|
9651
|
+
//战略连通矩阵图
|
|
9652
|
+
"StrategicActualStrategicPhaseTaxonomyTable": "StrategicTaxonomyDiagram",
|
|
9653
|
+
//战略实际战略阶段概念表
|
|
9654
|
+
"ActualStrategicPhasesGanttChart": "StrategicTaxonomyDiagram",
|
|
9655
|
+
//战略实际战略阶段甘特图
|
|
9656
|
+
"StrategicActualDeploymentDiagram": "StrategicTaxonomyDiagram",
|
|
9657
|
+
//战略实际部署图
|
|
9658
|
+
"ActualStrategicPhasesToCapabilitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9659
|
+
//战略实际战略阶段到能力映射矩阵图
|
|
9660
|
+
"OperationalConnectivityTable": "StrategicTaxonomyDiagram",
|
|
9661
|
+
//业务连通表
|
|
9662
|
+
"OperationalActivitiesToCapabilitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9663
|
+
//业务活动与能力映射矩阵
|
|
9664
|
+
"OperationalPerformersToCapabilitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9665
|
+
//业务执行者与能力映射矩阵
|
|
9666
|
+
"ServicesTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9667
|
+
//服务概念图
|
|
9668
|
+
"ServicesTaxonomyTable": "StrategicTaxonomyDiagram",
|
|
9669
|
+
//服务概念表
|
|
9670
|
+
"ServicesStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9671
|
+
//服务结构图
|
|
9672
|
+
"ServicesConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9673
|
+
//服务连通图
|
|
9674
|
+
"ServicesConnectivityMatrixDiagram": "StrategicTaxonomyDiagram",
|
|
9675
|
+
//服务连通矩阵图
|
|
9676
|
+
"ServicesConnectivityTable": "StrategicTaxonomyDiagram",
|
|
9677
|
+
//服务连通表
|
|
9678
|
+
"ServicesInternalConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9679
|
+
//服务内部连通图
|
|
9680
|
+
"ServicesProcessesDiagram": "StrategicTaxonomyDiagram",
|
|
9681
|
+
//服务流程图
|
|
9682
|
+
"ServicesProcessesFlowDiagram": "StrategicTaxonomyDiagram",
|
|
9683
|
+
//服务内部流程图
|
|
9684
|
+
"ServicesStatesDiagram": "StrategicTaxonomyDiagram",
|
|
9685
|
+
//服务状态图
|
|
9686
|
+
"ServicesParametricDiagram": "StrategicTaxonomyDiagram",
|
|
9687
|
+
//服务参数图
|
|
9688
|
+
"ServicesConstraintsDiagram": "StrategicTaxonomyDiagram",
|
|
9689
|
+
//服务约束图
|
|
9690
|
+
"ServicesConstraintsDefinitionDiagram": "StrategicTaxonomyDiagram",
|
|
9691
|
+
//服务约束定义图
|
|
9692
|
+
"ServicesRoadmapDiagram": "StrategicTaxonomyDiagram",
|
|
9693
|
+
//服务路线图
|
|
9694
|
+
"ServicesToCapabilitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9695
|
+
//服务与能力映射矩阵
|
|
9696
|
+
"ServicesToOperationalActivitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9697
|
+
//服务与业务活动映射矩阵
|
|
9698
|
+
"ServicesToServiceContractsMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9699
|
+
//服务与服务合同映射矩阵
|
|
9700
|
+
"PersonnelTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9701
|
+
//人员概念图
|
|
9702
|
+
"PersonnelTaxonomyTable": "StrategicTaxonomyDiagram",
|
|
9703
|
+
//人员概念表
|
|
9704
|
+
"PersonnelStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9705
|
+
//人员结构图
|
|
9706
|
+
"PersonnelConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9707
|
+
//人员连通图
|
|
9708
|
+
"PersonnelConnectivityTable": "StrategicTaxonomyDiagram",
|
|
9709
|
+
//人员连通表
|
|
9710
|
+
"PersonnelInternalConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9711
|
+
//人员内部连通图
|
|
9712
|
+
"PersonnelProcessesDiagram": "StrategicTaxonomyDiagram",
|
|
9713
|
+
//人员流程图
|
|
9714
|
+
"PersonnelProcessesFlowDiagram": "StrategicTaxonomyDiagram",
|
|
9715
|
+
//人员内部流程图
|
|
9716
|
+
"PersonnelStatesDiagram": "StrategicTaxonomyDiagram",
|
|
9717
|
+
//人员状态图
|
|
9718
|
+
"PersonnelParametricDiagram": "StrategicTaxonomyDiagram",
|
|
9719
|
+
//人员参数图
|
|
9720
|
+
"PersonnelConstraintsDiagram": "StrategicTaxonomyDiagram",
|
|
9721
|
+
//人员约束图
|
|
9722
|
+
"PersonnelConstraintsDefinitionDiagram": "StrategicTaxonomyDiagram",
|
|
9723
|
+
//人员约束定义图
|
|
9724
|
+
"ResourcesTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9725
|
+
//资源概念图
|
|
9726
|
+
"ResourcesTaxonomyTable": "StrategicTaxonomyDiagram",
|
|
9727
|
+
//资源概念表
|
|
9728
|
+
"ResourcesStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9729
|
+
//资源结构图
|
|
9730
|
+
"ResourcesConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9731
|
+
//资源连通图
|
|
9732
|
+
"ResourcesConnectivityTable": "StrategicTaxonomyDiagram",
|
|
9733
|
+
//资源连通表
|
|
9734
|
+
"ResourcesInternalConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9735
|
+
//资源内部连通图
|
|
9736
|
+
"ResourcesProcessesDiagram": "StrategicTaxonomyDiagram",
|
|
9737
|
+
//资源流程图
|
|
9738
|
+
"ResourcesProcessesFlowDiagram": "StrategicTaxonomyDiagram",
|
|
9739
|
+
//资源内部流程图
|
|
9740
|
+
"ResourcesStatesDiagram": "StrategicTaxonomyDiagram",
|
|
9741
|
+
//资源状态图
|
|
9742
|
+
"ResourcesInformationDiagram": "StrategicTaxonomyDiagram",
|
|
9743
|
+
//资源信息图
|
|
9744
|
+
"ResourcesParametricDiagram": "StrategicTaxonomyDiagram",
|
|
9745
|
+
//资源参数图
|
|
9746
|
+
"FunctionsToOperationalActivitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9747
|
+
//资源功能到业务活动映射矩阵
|
|
9748
|
+
"ResourcesToCapabilitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9749
|
+
//资源与能力映射矩阵
|
|
9750
|
+
"ResourcesToOperationalActivitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9751
|
+
//资源与业务活动映射矩阵
|
|
9752
|
+
"SecurityTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9753
|
+
//安全概念图
|
|
9754
|
+
"SecurityTaxonomyTable": "StrategicTaxonomyDiagram",
|
|
9755
|
+
//安全概念表
|
|
9756
|
+
"SecurityStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9757
|
+
//安全结构图
|
|
9758
|
+
"SecurityConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9759
|
+
//安全连通图
|
|
9760
|
+
"SecurityConnectivityTable": "StrategicTaxonomyDiagram",
|
|
9761
|
+
//安全连通表
|
|
9762
|
+
"SecurityProcessesDiagram": "StrategicTaxonomyDiagram",
|
|
9763
|
+
//安全流程图
|
|
9764
|
+
"SecurityProcessFlowDiagram": "StrategicTaxonomyDiagram",
|
|
9765
|
+
//安全内部流程图
|
|
9766
|
+
"SecurityConstraintsDiagram": "StrategicTaxonomyDiagram",
|
|
9767
|
+
//安全约束图
|
|
9768
|
+
"SecurityConstraintsDefinitionDiagram": "StrategicTaxonomyDiagram",
|
|
9769
|
+
//安全约束定义图
|
|
9770
|
+
"RisksToAssetsMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9771
|
+
//风险与资产映射矩阵
|
|
9772
|
+
"SecurityControlsToRisksMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9773
|
+
//安全控制与风险映射矩阵
|
|
9774
|
+
"ProjectsTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9775
|
+
//项目概念图
|
|
9776
|
+
"ProjectsTaxonomyTable": "StrategicTaxonomyDiagram",
|
|
9777
|
+
//项目概念表
|
|
9778
|
+
"ProjectsStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9779
|
+
//项目结构图
|
|
9780
|
+
"ProjectsConnectivityDiagram": "StrategicTaxonomyDiagram",
|
|
9781
|
+
//项目连通图
|
|
9782
|
+
"ProjectsProcessesDiagram": "StrategicTaxonomyDiagram",
|
|
9783
|
+
//项目流程图
|
|
9784
|
+
"ProjectsProcessesFlowDiagram": "StrategicTaxonomyDiagram",
|
|
9785
|
+
//项目内部流程图
|
|
9786
|
+
"ActualProjectMilestoneSummaryTable": "StrategicTaxonomyDiagram",
|
|
9787
|
+
//实际项目里程碑摘要表
|
|
9788
|
+
"ProjectsRoadmapDiagram": "StrategicTaxonomyDiagram",
|
|
9789
|
+
//项目路线图
|
|
9790
|
+
"ActualProjectsToCapabilitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9791
|
+
//实际项目与能力映射矩阵
|
|
9792
|
+
"ActualResponsibleResourcesToActualProjectsMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9793
|
+
//实际负责资源与实际项目映射矩阵
|
|
9794
|
+
"ProjectActivitiesToCapabilitiesMappingMatrix": "StrategicTaxonomyDiagram",
|
|
9795
|
+
//项目活动到能力映射矩阵
|
|
9796
|
+
"StandardsTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
9797
|
+
//标准概念图
|
|
9798
|
+
"StandardsTaxonomyTable": "StrategicTaxonomyDiagram",
|
|
9799
|
+
//标准概念表
|
|
9800
|
+
"StandardsStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9801
|
+
//标准结构图
|
|
9802
|
+
"StandardsRoadmapDiagram": "StrategicTaxonomyDiagram",
|
|
9803
|
+
//标准路线图
|
|
9804
|
+
"StandardsTraceabilityDiagram": "StrategicTaxonomyDiagram",
|
|
9805
|
+
//标准可追溯图
|
|
9806
|
+
"ActualResourcesTaxonomyMatrix": "StrategicTaxonomyDiagram",
|
|
9807
|
+
//实际资源概念矩阵
|
|
9808
|
+
"ActualResourcesStructureDiagram": "StrategicTaxonomyDiagram",
|
|
9809
|
+
//实际资源结构图
|
|
9810
|
+
"ActualResourcesConnectivityDiagram": "StrategicTaxonomyDiagram"
|
|
9811
|
+
//实际资源连通图
|
|
9812
|
+
};
|
|
9813
|
+
const ShapeKeyMap = {
|
|
9814
|
+
// Package 类型
|
|
9815
|
+
"ArchitecturalDescription": "Package",
|
|
9816
|
+
//体系架构
|
|
9817
|
+
"InformationModel": "Package",
|
|
9818
|
+
//信息模型
|
|
9819
|
+
"Strategic": "Package",
|
|
9820
|
+
// 战略层
|
|
9712
9821
|
"Operational": "Package",
|
|
9713
9822
|
// 业务层
|
|
9714
9823
|
"Services": "Package",
|
|
@@ -9849,16 +9958,179 @@ const BlockKeyMap = {
|
|
|
9849
9958
|
//实际资源结构包
|
|
9850
9959
|
"ActualResourcesConnectivityPackage": "Package",
|
|
9851
9960
|
//实际资源连通包
|
|
9852
|
-
|
|
9853
|
-
|
|
9854
|
-
|
|
9855
|
-
|
|
9961
|
+
// Block 类型
|
|
9962
|
+
"Capability": "Block",
|
|
9963
|
+
//能力
|
|
9964
|
+
"StrategicPhase": "Block",
|
|
9965
|
+
//战略阶段
|
|
9966
|
+
"ActualEnterprisePhase": "Block",
|
|
9967
|
+
//实际企业阶段
|
|
9968
|
+
"WholeLifeEnterprise": "Block",
|
|
9969
|
+
//全企业生命周期
|
|
9970
|
+
"EnterpriseMission": "Block",
|
|
9971
|
+
//企业使命
|
|
9972
|
+
"ActualEnduringTask": "Block",
|
|
9973
|
+
//实际持续任务
|
|
9974
|
+
"ValueStream": "Block",
|
|
9975
|
+
//价值流
|
|
9976
|
+
"StrategicInformation": "Block",
|
|
9977
|
+
//战略信息
|
|
9978
|
+
"GeoPoliticalExtentType": "Block",
|
|
9979
|
+
//地理政治范围类型
|
|
9980
|
+
"CapabilityConfiguration": "Block",
|
|
9981
|
+
//能力配置
|
|
9982
|
+
"EnterpriseVision": "Block",
|
|
9983
|
+
//企业愿景
|
|
9984
|
+
"ActualOrganization": "Block",
|
|
9985
|
+
//实际组织
|
|
9986
|
+
"VisionStatement": "Block",
|
|
9987
|
+
//愿景宣言
|
|
9988
|
+
"ActualCondition": "Block",
|
|
9989
|
+
//实际情况
|
|
9990
|
+
"ActualEnvironment": "Block",
|
|
9991
|
+
//实际环境
|
|
9992
|
+
"ActualLocation": "Block",
|
|
9993
|
+
//实际位置
|
|
9994
|
+
"Location": "Block",
|
|
9995
|
+
//位置
|
|
9996
|
+
"Condition": "Block",
|
|
9997
|
+
//状况条件
|
|
9998
|
+
"Environment": "Block",
|
|
9999
|
+
//环境
|
|
10000
|
+
"Concern": "Block",
|
|
10001
|
+
//涉及
|
|
10002
|
+
"ActualPost": "Block",
|
|
10003
|
+
//实际职责
|
|
10004
|
+
"OperationalInformation": "Block",
|
|
10005
|
+
//业务信息
|
|
10006
|
+
"ResourceInformation": "Block",
|
|
10007
|
+
//资源信息
|
|
10008
|
+
"ActualResource": "Block",
|
|
10009
|
+
//实际资源
|
|
10010
|
+
"OperationalRole": "Block",
|
|
10011
|
+
//业务角色
|
|
10012
|
+
"StandardOperationalActivity": "Block",
|
|
10013
|
+
//标准业务活动
|
|
10014
|
+
"OperationalParameter": "Block",
|
|
10015
|
+
//业务参数
|
|
10016
|
+
"OperationalPerformer": "Block",
|
|
10017
|
+
//业务执行者
|
|
10018
|
+
"OperationalArchitecture": "Block",
|
|
10019
|
+
//业务结构
|
|
10020
|
+
"KnownResource": "Block",
|
|
10021
|
+
//已知资源
|
|
10022
|
+
"NaturalResource": "Block",
|
|
10023
|
+
//自然资源
|
|
10024
|
+
"ResourceArchitecture": "Block",
|
|
10025
|
+
//资源架构
|
|
10026
|
+
"ResourceArtifact": "Block",
|
|
10027
|
+
//资源工件
|
|
10028
|
+
"Software": "Block",
|
|
10029
|
+
//软件
|
|
10030
|
+
"Technology": "Block",
|
|
10031
|
+
//技术
|
|
10032
|
+
"ResourceService": "Block",
|
|
10033
|
+
//资源服务
|
|
10034
|
+
"ResourceInterface": "Block",
|
|
10035
|
+
//资源接口
|
|
10036
|
+
"Function": "Block",
|
|
10037
|
+
//方法
|
|
10038
|
+
"ServiceArchitecture": "Block",
|
|
10039
|
+
//服务架构
|
|
10040
|
+
"ServiceInterface": "Block",
|
|
10041
|
+
//服务接口
|
|
10042
|
+
"ServiceFunction": "Block",
|
|
10043
|
+
//服务功能
|
|
10044
|
+
"ServiceSignal": "Block",
|
|
10045
|
+
//服务信号
|
|
10046
|
+
"ServiceRole": "Block",
|
|
10047
|
+
//服务角色
|
|
10048
|
+
"ServiceParameter": "Block",
|
|
10049
|
+
//服务参数
|
|
10050
|
+
"OperationalActivity": "Block",
|
|
10051
|
+
//业务活动
|
|
10052
|
+
"HighLevelOperationalConcept": "Block",
|
|
10053
|
+
//高级业务概念
|
|
10054
|
+
"ActualProject": "Block",
|
|
10055
|
+
//实际项目
|
|
10056
|
+
"ActualRisk": "Block",
|
|
10057
|
+
//实际风险
|
|
10058
|
+
"ActualPropertySet": "Block",
|
|
10059
|
+
//实际属性设置
|
|
10060
|
+
"Organization": "Block",
|
|
10061
|
+
//组织
|
|
10062
|
+
"ActualPerson": "Block",
|
|
10063
|
+
//实际人员
|
|
10064
|
+
"CapabilityRole": "Block",
|
|
10065
|
+
//能力职责
|
|
10066
|
+
"OperationalSignal": "Block",
|
|
10067
|
+
//业务信号
|
|
10068
|
+
"OperationalInterface": "Block",
|
|
10069
|
+
//业务接口
|
|
10070
|
+
"Service": "Block",
|
|
10071
|
+
//服务
|
|
10072
|
+
"ActualService": "Block",
|
|
10073
|
+
//实际服务
|
|
10074
|
+
"Property": "Block",
|
|
10075
|
+
//引用属性
|
|
10076
|
+
"Projectes": "Block",
|
|
10077
|
+
//项目
|
|
10078
|
+
"ProjectMilestone": "Block",
|
|
10079
|
+
//项目里程碑
|
|
10080
|
+
"ActualProjectMilestone": "Block",
|
|
10081
|
+
//实际项目里程碑
|
|
10082
|
+
"ProjectActivity": "Block",
|
|
10083
|
+
//项目活动
|
|
10084
|
+
"ProjectRole": "Block",
|
|
10085
|
+
//项目角色
|
|
10086
|
+
"ProjectMilestoneRole": "Block",
|
|
10087
|
+
//项目里程碑角色
|
|
10088
|
+
"SecurityRisk": "Block",
|
|
10089
|
+
//安全风险
|
|
10090
|
+
"StatusIndicators": "Block",
|
|
10091
|
+
//状态指标
|
|
10092
|
+
"SecurityEnclave": "Block",
|
|
10093
|
+
//安全隔离
|
|
10094
|
+
"Risk": "Block",
|
|
10095
|
+
//风险
|
|
10096
|
+
"Post": "Block",
|
|
10097
|
+
//职位
|
|
10098
|
+
"Responsibility": "Block",
|
|
10099
|
+
//责任
|
|
10100
|
+
"ActualResponsibility": "Block",
|
|
10101
|
+
//实际责任
|
|
10102
|
+
"System": "Block",
|
|
10103
|
+
//系统
|
|
10104
|
+
"Competence": "Block",
|
|
10105
|
+
//权限
|
|
10106
|
+
"Person": "Block",
|
|
10107
|
+
//人员
|
|
10108
|
+
"SecurityProcess": "Block",
|
|
10109
|
+
//安全流程
|
|
10110
|
+
"ResourceMitigation": "Block",
|
|
10111
|
+
// 资源缓解措施
|
|
10112
|
+
"OperationalMitigation": "Block",
|
|
10113
|
+
// 业务缓解措施
|
|
9856
10114
|
"ResourceParameter": "Block",
|
|
9857
10115
|
//资源参数
|
|
9858
10116
|
"ResourceRole": "Block",
|
|
9859
10117
|
//资源角色
|
|
9860
10118
|
"ResourceSignal": "Block",
|
|
9861
10119
|
//资源信号
|
|
10120
|
+
// DividingLine 类型
|
|
10121
|
+
"EnterpriseGoal": "DividingLine",
|
|
10122
|
+
//企业目标
|
|
10123
|
+
"Opportunity": "DividingLine",
|
|
10124
|
+
//时机
|
|
10125
|
+
"SecurityControl": "DividingLine",
|
|
10126
|
+
//安全控制
|
|
10127
|
+
// ActivityAction 类型
|
|
10128
|
+
"FunctionAction": "ActivityAction",
|
|
10129
|
+
//功能动作
|
|
10130
|
+
"ServiceFunctionAction": "ActivityAction",
|
|
10131
|
+
//服务功能动作
|
|
10132
|
+
"OperationalActivityAction": "ActivityAction",
|
|
10133
|
+
//业务活动动作
|
|
9862
10134
|
"OperationalAction": "ActivityAction",
|
|
9863
10135
|
//业务动作
|
|
9864
10136
|
"ServiceAction": "ActivityAction",
|
|
@@ -9867,237 +10139,227 @@ const BlockKeyMap = {
|
|
|
9867
10139
|
//资源动作
|
|
9868
10140
|
"ProjectActivityAction": "ActivityAction",
|
|
9869
10141
|
//项目活动动作
|
|
9870
|
-
"SecurityProcessAction": "ActivityAction"
|
|
10142
|
+
"SecurityProcessAction": "ActivityAction",
|
|
9871
10143
|
//安全流程动作
|
|
9872
|
-
|
|
9873
|
-
|
|
9874
|
-
|
|
9875
|
-
|
|
9876
|
-
|
|
9877
|
-
{ position: "se" }
|
|
9878
|
-
];
|
|
9879
|
-
const DiagramKeyMap = {
|
|
9880
|
-
"StrategicTaxonomyDiagram": "StrategicTaxonomyDiagram",
|
|
10144
|
+
// ConceptualRole 类型
|
|
10145
|
+
"ConceptRole": "ConceptualRole",
|
|
10146
|
+
//概念角色
|
|
10147
|
+
// Diagram 类型
|
|
10148
|
+
"StrategicTaxonomyDiagram": "Diagram",
|
|
9881
10149
|
//战略概念图
|
|
9882
|
-
"StrategicInformationDiagram": "
|
|
10150
|
+
"StrategicInformationDiagram": "Diagram",
|
|
9883
10151
|
//战略信息图
|
|
9884
|
-
"StrategicStructureDiagram": "
|
|
10152
|
+
"StrategicStructureDiagram": "Diagram",
|
|
9885
10153
|
//战略结构图
|
|
9886
|
-
"StrategicConnectivityDiagram": "
|
|
10154
|
+
"StrategicConnectivityDiagram": "Diagram",
|
|
9887
10155
|
//战略连通图
|
|
9888
|
-
"StrategicStatesDiagram": "
|
|
10156
|
+
"StrategicStatesDiagram": "Diagram",
|
|
9889
10157
|
//战略状态图
|
|
9890
|
-
"StrategicProcessesDiagram": "
|
|
10158
|
+
"StrategicProcessesDiagram": "Diagram",
|
|
9891
10159
|
//战略流程图
|
|
9892
|
-
"StrategicParametersDiagram": "
|
|
10160
|
+
"StrategicParametersDiagram": "Diagram",
|
|
9893
10161
|
//战略参数图
|
|
9894
|
-
"StrategicConstraintsDiagram": "
|
|
10162
|
+
"StrategicConstraintsDiagram": "Diagram",
|
|
9895
10163
|
//战略约束图
|
|
9896
|
-
"StrategicConstraintsDefinitionDiagram": "
|
|
10164
|
+
"StrategicConstraintsDefinitionDiagram": "Diagram",
|
|
9897
10165
|
//战略约束定义图
|
|
9898
|
-
"OperationalTaxonomyDiagram": "
|
|
10166
|
+
"OperationalTaxonomyDiagram": "Diagram",
|
|
9899
10167
|
//业务概念图
|
|
9900
|
-
"HighLevelOperationalConceptDiagram": "
|
|
10168
|
+
"HighLevelOperationalConceptDiagram": "Diagram",
|
|
9901
10169
|
//顶级业务概念图
|
|
9902
|
-
"OperationalFreeFormTaxonomyDiagram": "
|
|
10170
|
+
"OperationalFreeFormTaxonomyDiagram": "Diagram",
|
|
9903
10171
|
//业务自由分类图
|
|
9904
|
-
"OperationalStructureDiagram": "
|
|
10172
|
+
"OperationalStructureDiagram": "Diagram",
|
|
9905
10173
|
//业务结构图
|
|
9906
|
-
"OperationalConnectivityDiagram": "
|
|
10174
|
+
"OperationalConnectivityDiagram": "Diagram",
|
|
9907
10175
|
//业务连通图
|
|
9908
|
-
"OperationalInternalConnectivityDiagram": "
|
|
10176
|
+
"OperationalInternalConnectivityDiagram": "Diagram",
|
|
9909
10177
|
//业务内部连通图
|
|
9910
|
-
"OperationalProcessesDiagram": "
|
|
10178
|
+
"OperationalProcessesDiagram": "Diagram",
|
|
9911
10179
|
//业务流程图
|
|
9912
|
-
"OperationalProcessesFlowDiagram": "
|
|
10180
|
+
"OperationalProcessesFlowDiagram": "Diagram",
|
|
9913
10181
|
//业务内部流程图
|
|
9914
|
-
"OperationalStatesDiagram": "
|
|
10182
|
+
"OperationalStatesDiagram": "Diagram",
|
|
9915
10183
|
//业务状态图
|
|
9916
|
-
"OperationalInformationDiagram": "
|
|
10184
|
+
"OperationalInformationDiagram": "Diagram",
|
|
9917
10185
|
//业务信息图
|
|
9918
|
-
"OperationalParametricDiagram": "
|
|
10186
|
+
"OperationalParametricDiagram": "Diagram",
|
|
9919
10187
|
//业务参数图
|
|
9920
|
-
"OperationalConstraintsDiagram": "
|
|
10188
|
+
"OperationalConstraintsDiagram": "Diagram",
|
|
9921
10189
|
//业务约束图
|
|
9922
|
-
"OperationalConstraintsDefinitionDiagram": "
|
|
10190
|
+
"OperationalConstraintsDefinitionDiagram": "Diagram",
|
|
9923
10191
|
//业务约束定义图
|
|
9924
|
-
"StrategicTaxonomyTable": "
|
|
10192
|
+
"StrategicTaxonomyTable": "Diagram",
|
|
9925
10193
|
//战略概念表
|
|
9926
|
-
"StrategicConnectivityMatrixDiagram": "
|
|
10194
|
+
"StrategicConnectivityMatrixDiagram": "Diagram",
|
|
9927
10195
|
//战略连通矩阵图
|
|
9928
|
-
"StrategicActualStrategicPhaseTaxonomyTable": "
|
|
9929
|
-
|
|
9930
|
-
"ActualStrategicPhasesGanttChart": "
|
|
9931
|
-
|
|
9932
|
-
"StrategicActualDeploymentDiagram": "
|
|
10196
|
+
"StrategicActualStrategicPhaseTaxonomyTable": "Diagram",
|
|
10197
|
+
//战略实际战略阶段分类表
|
|
10198
|
+
"ActualStrategicPhasesGanttChart": "Diagram",
|
|
10199
|
+
//实际战略阶段甘特图
|
|
10200
|
+
"StrategicActualDeploymentDiagram": "Diagram",
|
|
9933
10201
|
//战略实际部署图
|
|
9934
|
-
"ActualStrategicPhasesToCapabilitiesMappingMatrix": "
|
|
9935
|
-
|
|
9936
|
-
"OperationalConnectivityTable": "
|
|
10202
|
+
"ActualStrategicPhasesToCapabilitiesMappingMatrix": "Diagram",
|
|
10203
|
+
//实际战略阶段与能力映射矩阵
|
|
10204
|
+
"OperationalConnectivityTable": "Diagram",
|
|
9937
10205
|
//业务连通表
|
|
9938
|
-
"OperationalActivitiesToCapabilitiesMappingMatrix": "
|
|
10206
|
+
"OperationalActivitiesToCapabilitiesMappingMatrix": "Diagram",
|
|
9939
10207
|
//业务活动与能力映射矩阵
|
|
9940
|
-
"OperationalPerformersToCapabilitiesMappingMatrix": "
|
|
10208
|
+
"OperationalPerformersToCapabilitiesMappingMatrix": "Diagram",
|
|
9941
10209
|
//业务执行者与能力映射矩阵
|
|
9942
|
-
"ServicesTaxonomyDiagram": "
|
|
10210
|
+
"ServicesTaxonomyDiagram": "Diagram",
|
|
9943
10211
|
//服务概念图
|
|
9944
|
-
"ServicesTaxonomyTable": "
|
|
10212
|
+
"ServicesTaxonomyTable": "Diagram",
|
|
9945
10213
|
//服务概念表
|
|
9946
|
-
"ServicesStructureDiagram": "
|
|
10214
|
+
"ServicesStructureDiagram": "Diagram",
|
|
9947
10215
|
//服务结构图
|
|
9948
|
-
"ServicesConnectivityDiagram": "
|
|
10216
|
+
"ServicesConnectivityDiagram": "Diagram",
|
|
9949
10217
|
//服务连通图
|
|
9950
|
-
"ServicesConnectivityMatrixDiagram": "
|
|
10218
|
+
"ServicesConnectivityMatrixDiagram": "Diagram",
|
|
9951
10219
|
//服务连通矩阵图
|
|
9952
|
-
"ServicesConnectivityTable": "
|
|
10220
|
+
"ServicesConnectivityTable": "Diagram",
|
|
9953
10221
|
//服务连通表
|
|
9954
|
-
"ServicesInternalConnectivityDiagram": "
|
|
10222
|
+
"ServicesInternalConnectivityDiagram": "Diagram",
|
|
9955
10223
|
//服务内部连通图
|
|
9956
|
-
"ServicesProcessesDiagram": "
|
|
10224
|
+
"ServicesProcessesDiagram": "Diagram",
|
|
9957
10225
|
//服务流程图
|
|
9958
|
-
"ServicesProcessesFlowDiagram": "
|
|
10226
|
+
"ServicesProcessesFlowDiagram": "Diagram",
|
|
9959
10227
|
//服务内部流程图
|
|
9960
|
-
"ServicesStatesDiagram": "
|
|
10228
|
+
"ServicesStatesDiagram": "Diagram",
|
|
9961
10229
|
//服务状态图
|
|
9962
|
-
"ServicesParametricDiagram": "
|
|
10230
|
+
"ServicesParametricDiagram": "Diagram",
|
|
9963
10231
|
//服务参数图
|
|
9964
|
-
"ServicesConstraintsDiagram": "
|
|
10232
|
+
"ServicesConstraintsDiagram": "Diagram",
|
|
9965
10233
|
//服务约束图
|
|
9966
|
-
"ServicesConstraintsDefinitionDiagram": "
|
|
10234
|
+
"ServicesConstraintsDefinitionDiagram": "Diagram",
|
|
9967
10235
|
//服务约束定义图
|
|
9968
|
-
"ServicesRoadmapDiagram": "
|
|
10236
|
+
"ServicesRoadmapDiagram": "Diagram",
|
|
9969
10237
|
//服务路线图
|
|
9970
|
-
"ServicesToCapabilitiesMappingMatrix": "
|
|
10238
|
+
"ServicesToCapabilitiesMappingMatrix": "Diagram",
|
|
9971
10239
|
//服务与能力映射矩阵
|
|
9972
|
-
"ServicesToOperationalActivitiesMappingMatrix": "
|
|
10240
|
+
"ServicesToOperationalActivitiesMappingMatrix": "Diagram",
|
|
9973
10241
|
//服务与业务活动映射矩阵
|
|
9974
|
-
"ServicesToServiceContractsMappingMatrix": "
|
|
10242
|
+
"ServicesToServiceContractsMappingMatrix": "Diagram",
|
|
9975
10243
|
//服务与服务合同映射矩阵
|
|
9976
|
-
"PersonnelTaxonomyDiagram": "
|
|
10244
|
+
"PersonnelTaxonomyDiagram": "Diagram",
|
|
9977
10245
|
//人员概念图
|
|
9978
|
-
"PersonnelTaxonomyTable": "
|
|
10246
|
+
"PersonnelTaxonomyTable": "Diagram",
|
|
9979
10247
|
//人员概念表
|
|
9980
|
-
"PersonnelStructureDiagram": "
|
|
10248
|
+
"PersonnelStructureDiagram": "Diagram",
|
|
9981
10249
|
//人员结构图
|
|
9982
|
-
"PersonnelConnectivityDiagram": "
|
|
10250
|
+
"PersonnelConnectivityDiagram": "Diagram",
|
|
9983
10251
|
//人员连通图
|
|
9984
|
-
"PersonnelConnectivityTable": "
|
|
10252
|
+
"PersonnelConnectivityTable": "Diagram",
|
|
9985
10253
|
//人员连通表
|
|
9986
|
-
"PersonnelInternalConnectivityDiagram": "
|
|
10254
|
+
"PersonnelInternalConnectivityDiagram": "Diagram",
|
|
9987
10255
|
//人员内部连通图
|
|
9988
|
-
"PersonnelProcessesDiagram": "
|
|
10256
|
+
"PersonnelProcessesDiagram": "Diagram",
|
|
9989
10257
|
//人员流程图
|
|
9990
|
-
"PersonnelProcessesFlowDiagram": "
|
|
10258
|
+
"PersonnelProcessesFlowDiagram": "Diagram",
|
|
9991
10259
|
//人员内部流程图
|
|
9992
|
-
"PersonnelStatesDiagram": "
|
|
10260
|
+
"PersonnelStatesDiagram": "Diagram",
|
|
9993
10261
|
//人员状态图
|
|
9994
|
-
"PersonnelParametricDiagram": "
|
|
10262
|
+
"PersonnelParametricDiagram": "Diagram",
|
|
9995
10263
|
//人员参数图
|
|
9996
|
-
"PersonnelConstraintsDiagram": "
|
|
10264
|
+
"PersonnelConstraintsDiagram": "Diagram",
|
|
9997
10265
|
//人员约束图
|
|
9998
|
-
"PersonnelConstraintsDefinitionDiagram": "
|
|
10266
|
+
"PersonnelConstraintsDefinitionDiagram": "Diagram",
|
|
9999
10267
|
//人员约束定义图
|
|
10000
|
-
"ResourcesTaxonomyDiagram": "
|
|
10268
|
+
"ResourcesTaxonomyDiagram": "Diagram",
|
|
10001
10269
|
//资源概念图
|
|
10002
|
-
"ResourcesTaxonomyTable": "
|
|
10270
|
+
"ResourcesTaxonomyTable": "Diagram",
|
|
10003
10271
|
//资源概念表
|
|
10004
|
-
"ResourcesStructureDiagram": "
|
|
10272
|
+
"ResourcesStructureDiagram": "Diagram",
|
|
10005
10273
|
//资源结构图
|
|
10006
|
-
"ResourcesConnectivityDiagram": "
|
|
10274
|
+
"ResourcesConnectivityDiagram": "Diagram",
|
|
10007
10275
|
//资源连通图
|
|
10008
|
-
"ResourcesConnectivityTable": "
|
|
10276
|
+
"ResourcesConnectivityTable": "Diagram",
|
|
10009
10277
|
//资源连通表
|
|
10010
|
-
"ResourcesInternalConnectivityDiagram": "
|
|
10278
|
+
"ResourcesInternalConnectivityDiagram": "Diagram",
|
|
10011
10279
|
//资源内部连通图
|
|
10012
|
-
"ResourcesProcessesDiagram": "
|
|
10280
|
+
"ResourcesProcessesDiagram": "Diagram",
|
|
10013
10281
|
//资源流程图
|
|
10014
|
-
"ResourcesProcessesFlowDiagram": "
|
|
10282
|
+
"ResourcesProcessesFlowDiagram": "Diagram",
|
|
10015
10283
|
//资源内部流程图
|
|
10016
|
-
"ResourcesStatesDiagram": "
|
|
10284
|
+
"ResourcesStatesDiagram": "Diagram",
|
|
10017
10285
|
//资源状态图
|
|
10018
|
-
"ResourcesInformationDiagram": "
|
|
10286
|
+
"ResourcesInformationDiagram": "Diagram",
|
|
10019
10287
|
//资源信息图
|
|
10020
|
-
"ResourcesParametricDiagram": "
|
|
10288
|
+
"ResourcesParametricDiagram": "Diagram",
|
|
10021
10289
|
//资源参数图
|
|
10022
|
-
"FunctionsToOperationalActivitiesMappingMatrix": "
|
|
10023
|
-
|
|
10024
|
-
"ResourcesToCapabilitiesMappingMatrix": "
|
|
10290
|
+
"FunctionsToOperationalActivitiesMappingMatrix": "Diagram",
|
|
10291
|
+
//功能与业务活动映射矩阵
|
|
10292
|
+
"ResourcesToCapabilitiesMappingMatrix": "Diagram",
|
|
10025
10293
|
//资源与能力映射矩阵
|
|
10026
|
-
"ResourcesToOperationalActivitiesMappingMatrix": "
|
|
10294
|
+
"ResourcesToOperationalActivitiesMappingMatrix": "Diagram",
|
|
10027
10295
|
//资源与业务活动映射矩阵
|
|
10028
|
-
"SecurityTaxonomyDiagram": "
|
|
10296
|
+
"SecurityTaxonomyDiagram": "Diagram",
|
|
10029
10297
|
//安全概念图
|
|
10030
|
-
"SecurityTaxonomyTable": "
|
|
10298
|
+
"SecurityTaxonomyTable": "Diagram",
|
|
10031
10299
|
//安全概念表
|
|
10032
|
-
"SecurityStructureDiagram": "
|
|
10300
|
+
"SecurityStructureDiagram": "Diagram",
|
|
10033
10301
|
//安全结构图
|
|
10034
|
-
"SecurityConnectivityDiagram": "
|
|
10302
|
+
"SecurityConnectivityDiagram": "Diagram",
|
|
10035
10303
|
//安全连通图
|
|
10036
|
-
"SecurityConnectivityTable": "
|
|
10304
|
+
"SecurityConnectivityTable": "Diagram",
|
|
10037
10305
|
//安全连通表
|
|
10038
|
-
"SecurityProcessesDiagram": "
|
|
10306
|
+
"SecurityProcessesDiagram": "Diagram",
|
|
10039
10307
|
//安全流程图
|
|
10040
|
-
"SecurityProcessFlowDiagram": "
|
|
10308
|
+
"SecurityProcessFlowDiagram": "Diagram",
|
|
10041
10309
|
//安全内部流程图
|
|
10042
|
-
"SecurityConstraintsDiagram": "
|
|
10310
|
+
"SecurityConstraintsDiagram": "Diagram",
|
|
10043
10311
|
//安全约束图
|
|
10044
|
-
"SecurityConstraintsDefinitionDiagram": "
|
|
10312
|
+
"SecurityConstraintsDefinitionDiagram": "Diagram",
|
|
10045
10313
|
//安全约束定义图
|
|
10046
|
-
"RisksToAssetsMappingMatrix": "
|
|
10047
|
-
|
|
10048
|
-
"SecurityControlsToRisksMappingMatrix": "
|
|
10049
|
-
|
|
10050
|
-
"ProjectsTaxonomyDiagram": "
|
|
10314
|
+
"RisksToAssetsMappingMatrix": "Diagram",
|
|
10315
|
+
//资产风险映射矩阵
|
|
10316
|
+
"SecurityControlsToRisksMappingMatrix": "Diagram",
|
|
10317
|
+
//风险与安全控制映射矩阵
|
|
10318
|
+
"ProjectsTaxonomyDiagram": "Diagram",
|
|
10051
10319
|
//项目概念图
|
|
10052
|
-
"ProjectsTaxonomyTable": "
|
|
10320
|
+
"ProjectsTaxonomyTable": "Diagram",
|
|
10053
10321
|
//项目概念表
|
|
10054
|
-
"ProjectsStructureDiagram": "
|
|
10322
|
+
"ProjectsStructureDiagram": "Diagram",
|
|
10055
10323
|
//项目结构图
|
|
10056
|
-
"ProjectsConnectivityDiagram": "
|
|
10324
|
+
"ProjectsConnectivityDiagram": "Diagram",
|
|
10057
10325
|
//项目连通图
|
|
10058
|
-
"ProjectsProcessesDiagram": "
|
|
10326
|
+
"ProjectsProcessesDiagram": "Diagram",
|
|
10059
10327
|
//项目流程图
|
|
10060
|
-
"ProjectsProcessesFlowDiagram": "
|
|
10328
|
+
"ProjectsProcessesFlowDiagram": "Diagram",
|
|
10061
10329
|
//项目内部流程图
|
|
10062
|
-
"ActualProjectMilestoneSummaryTable": "
|
|
10063
|
-
|
|
10064
|
-
"ProjectsRoadmapDiagram": "
|
|
10330
|
+
"ActualProjectMilestoneSummaryTable": "Diagram",
|
|
10331
|
+
//实际项目里程碑汇总表
|
|
10332
|
+
"ProjectsRoadmapDiagram": "Diagram",
|
|
10065
10333
|
//项目路线图
|
|
10066
|
-
"ActualProjectsToCapabilitiesMappingMatrix": "
|
|
10334
|
+
"ActualProjectsToCapabilitiesMappingMatrix": "Diagram",
|
|
10067
10335
|
//实际项目与能力映射矩阵
|
|
10068
|
-
"ActualResponsibleResourcesToActualProjectsMappingMatrix": "
|
|
10069
|
-
|
|
10070
|
-
"ProjectActivitiesToCapabilitiesMappingMatrix": "
|
|
10071
|
-
|
|
10072
|
-
"StandardsTaxonomyDiagram": "
|
|
10336
|
+
"ActualResponsibleResourcesToActualProjectsMappingMatrix": "Diagram",
|
|
10337
|
+
//实际资源与实际项目对应关系矩阵
|
|
10338
|
+
"ProjectActivitiesToCapabilitiesMappingMatrix": "Diagram",
|
|
10339
|
+
//项目活动与能力映射矩阵
|
|
10340
|
+
"StandardsTaxonomyDiagram": "Diagram",
|
|
10073
10341
|
//标准概念图
|
|
10074
|
-
"StandardsTaxonomyTable": "
|
|
10342
|
+
"StandardsTaxonomyTable": "Diagram",
|
|
10075
10343
|
//标准概念表
|
|
10076
|
-
"StandardsStructureDiagram": "
|
|
10344
|
+
"StandardsStructureDiagram": "Diagram",
|
|
10077
10345
|
//标准结构图
|
|
10078
|
-
"StandardsRoadmapDiagram": "
|
|
10346
|
+
"StandardsRoadmapDiagram": "Diagram",
|
|
10079
10347
|
//标准路线图
|
|
10080
|
-
"StandardsTraceabilityDiagram": "
|
|
10081
|
-
|
|
10082
|
-
"ActualResourcesTaxonomyMatrix": "
|
|
10348
|
+
"StandardsTraceabilityDiagram": "Diagram",
|
|
10349
|
+
//标准追溯图
|
|
10350
|
+
"ActualResourcesTaxonomyMatrix": "Diagram",
|
|
10083
10351
|
//实际资源概念矩阵
|
|
10084
|
-
"ActualResourcesStructureDiagram": "
|
|
10352
|
+
"ActualResourcesStructureDiagram": "Diagram",
|
|
10085
10353
|
//实际资源结构图
|
|
10086
|
-
"ActualResourcesConnectivityDiagram": "
|
|
10354
|
+
"ActualResourcesConnectivityDiagram": "Diagram"
|
|
10087
10355
|
//实际资源连通图
|
|
10088
10356
|
};
|
|
10089
|
-
const
|
|
10090
|
-
|
|
10091
|
-
|
|
10092
|
-
|
|
10093
|
-
|
|
10094
|
-
|
|
10095
|
-
//业务端口
|
|
10096
|
-
"ServicePort": "Port",
|
|
10097
|
-
//服务端口
|
|
10098
|
-
"ResourcePort": "Port"
|
|
10099
|
-
//资源端口
|
|
10100
|
-
};
|
|
10357
|
+
const resizeHandles = [
|
|
10358
|
+
{ position: "nw" },
|
|
10359
|
+
{ position: "ne" },
|
|
10360
|
+
{ position: "sw" },
|
|
10361
|
+
{ position: "se" }
|
|
10362
|
+
];
|
|
10101
10363
|
const __vite_glob_3_0 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAAZ9SURBVHic7ZtPTNtWHMd/79lp0rWjoWVbp6rANFZNmkRSytB6AA6NtFsrZXcqbcdJHJg0VdOUrhGquJQDEschlXsjsTM7pGjaWtGWcGKFaQHRdX9ol3VdG7D9fjvENi8h9nvPo5Cs/pxix89+/vr3+76fn22CiBqEeEL3uwONTiiQgFAgAaFAAkKBBIQCCdCDNkyn0/H19V/Om4x17m6XdheNkNLJkyemc7lcKUj7wAIV19YzyNhw0PZ7hVnpawIAPgnSPnCKIWPng7bda5CxC0HbkiCVdDqdjv9cXNtwd0JpNmgHXiR2hMcBAI4djb89Ozu7qrqPQCn24MFvCec3ASjcnb/dkAL19Lw/iICDAABPnvyTBABlgQKlGGOmKxBQuhBkH3sCJQXnp8mshP/GHrsI0shCdA+mke1ONBo61fLuAqtEkiqBBELG3IPpB6N5/633Dy0WKTq/EXBvIiidTscBwKl9St/fvNmwEWT3zal/4mcHBpRFUhaoxqCVTW+vIbBtAVbZUC5qlUexGoOWTq9kdnnIRLyAgHEAgIMRbWT+iy6p6Ou9upIoG2yqskQWKIH868esb2Y/fVdcHVNScPzHZNYgAMzI9hmCCGQh5z8SI1hydPmCYeK17bQkAADw3LDGAeCczDHLBssggn1hMGEhXHz4By0mR5c/W/jyHd8T1qmWN5yKn6n7kHKKIXeQaMth3wjqvnI/Y5h4g/MsF41o0leSkrqR2mmYeKP7yv2MX9uWlkPuRQxi1EqVdE0FXbp3d77Na9tkdnnIYDjFrSoSAtNRDfOtrViQSg+O/rG1jr/NzaRpYQIR3AoZACCik4/8Iul0T++Gs33s8CtnVAYWpRRbX3/ophdvfrWkJpfiBqPj7rYECq3RWHruUntgU7fbrgLATP/Y2vU/N8s5J+0ME6+lJpfyXqITIAWnoraNWlogpRSzTc5u6S3Q74/oEHeFS/9VnFrmLrWvtkZjaQBw6pzOjUea980zJW6KVp2DBIoehB3OLz+DthDdu2dCYGI3xXGYu9S+GqHEvQc0kF302lan2vbFVDRqpRRDrlz3NWgkrpCxCN3hDd3ZlWGLsQzvIwJKGqXZxUzXBL9S10nB2MIdx6ylpeXQwqPHlexTNWrpCOpPpTr4tJnznzpwR634EXPHdqxytWXFAQCIW3Um52rqKM8i0J7mcNJRqaKWFmjzyVMpg7ZxzbL0l77jylJCr8se10EjMF27rvfqCn+ixdr/eQgNVlFLp5jJWNJd8DHoSm+wAEgq1auJidpRw06VCc/2kmyZXLoQFPgcKQBUvFGlopY3ac7cqqYR6hDhIsRgmOkfW/P0h6CkJpfiFkO3SCRA/PukRfipj91PMd7colx1Wo9XD0Tz/BD8ePP5VGpyScVzfOkfW+v4dYN+zc8qHG9jvhF54sQbbhSrGLVUJd2fSnU8fVz6yemMXwXtYI9U49yqokZh4oBO8/Ej5qpqJQ0AcGb0x0GDkYTFYJg3ZY3SkdoRrh6ne3pXnHayFbVUBFUZNPUPZYfFTNeERoCfq+60GIw/32J3Hv5BN5Kjy9JPGrqzK8PvfXXfLJvkW4vBeJU4BHYM/15UG/WWVBRJCVRl0OIRzGXx8qmsRukIP6q5+7RwSHY/jJtB4ChqlI4sXj6l8MCAn6Pmz8kbOQ+qNmilGcTFTNfEm6+xLo3CCCEwY9+0FmIR+UdFukambU8rAsF8hJKPj8Zi52QjxyGIUUt5EH83/FZne1vQx7j7Te3zvHt354VljjCC7KrTGYGKzSoOAEAulysRriaTqaiFAvFmRkQFYjNAiVtxyxi1UCDezLT6M3tNBX8OJqtr/lWITZrbCaV600dQ1TlIjGS+AqXT6TgCuLcJfDXarFRX1CBMMd9R7OzAQKL89Nkde3Ejouuf71ZH9xPTNK8iwHEAgAOR6Llbt77ztA7fYc54Vv6QW2wzTHPKZ/OmxH7O5ymQb4oxgNgL6VUDYSH63kSrTLkWSCO/6qIAVsxZqpKWFohQOtOoL0qp0tPbl0HGdu9m9WUmFEhAKJCAUCABoUACQoEEhAIJCAUSEAokIBRIQCiQgFAgAaFAAuSnOxgO9vT2+b5y2zQofNgiLRACDgb9YqaZ8U0xnVLft7b+D4jOUfjoua/vg6FG/7I5KDqlxdu3f9jxah9PoG9WXybCUUxAKJCAUCABoUACQoEEhAIJCAUSEAokIBRIwL9jGpoMstHI7QAAAABJRU5ErkJggg==";
|
|
10102
10364
|
const __vite_glob_3_1 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFoAAABaCAYAAAA4qEECAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAAJhSURBVHic7ds9SgNBGIfxV9FCIRKwMjZWSSts0nsAI55CBY9gIR5CEE+xmAOYPllIq1UaP0pJoYVFLCQSP5JNnNlnh+z/V62w2YwPw/j6tTQcDocmmVvOewFFodAQhYYoNEShIQoNUWiIQkMUGqLQEIWGKDREoSEKDVFoiEJDFBqi0BCFhig0RKEhCg1RaIhCQ1Z8POSm1bLHx6d/v75S2bKDZtPHUn4JZW3OoW9aLTs/v3BeiJl5jx3S2pyPDpfdksVzsnimj+d4OTpG6lFkUT2a+f6km1g3SXwuYaK81+Y1dFSP7OT4aOb7r+waC5332jR1QLzuaBdJN7Eru/b+zFAEE7qbcOd1HnR0QILZ0fNOBbMgp5o0wYSedyqYBTnVpNHRAfG6o+edHMipIO+1OYculUpf1y6TQ6Wy5bqUX0Jam/PRcdDct1q16vSMWrVq9cjvF0ILbG1Lvv7P8Lbdtru7+7lfV6t9fiLju8+3ENbmLbRMp6kDotAQhYYoNKSwoePewOLeAHu/YH7WQYp7AzuLn78+PtzdyPw9C7mjH17e/7zOUiFD50GhIQoNUWiIQkMUGrKQc3TcG0wd2zr912/Xl+3Jz9our3qZsxcu9M9vRtJ0+m/W6b+l3ucaW0cHZOF29GjnpR0do13c2Fmzxs76xHt1dEyRFuaybWOh1+10bzPzNenogCg0RKEhCg1RaIhCQwoZeru8+ud1lhZyjk4zPmcTvy80/UkYp5BHRx4UGqLQEIWGKDREoSEKDVFoiEJDFBqi0BCFhig0RKEhCg1RaIhCQxQaotAQhYYoNOQDM128k0dpjyAAAAAASUVORK5CYII=";
|
|
10103
10365
|
const __vite_glob_3_2 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAALxSURBVHic7Zsxb9NQEMf/Z4PERpDYKQyUZuHSZGIh3ZhoUT8AfIR2R01b2MM3oGVgQ2o3mFoWFqjykFCjMqCwAANSwwz2MSRN06rxOY6fVdD9Jr/o+d7LT362fL4HGIZhGIbxn0JFDcTMJSCsA8JFjXk2dAjQR+c+7Kbq7X9CAHOtDpLnAKaKGC8VhA3E0bJzrpvULfQ9D2aeAlELQMn3WGPCCMJLP75/e5PUyfsVxJXqDoB6v+kgsu17zEQCugbBo0Fbgopz792o7hcKmNLxPUeiB865TgFjJsJc64JkqdeK7wIYKSgoYD6DpXUe5PSIfx0fy5WknkUI+qcxQQomSMEEKZggBROkYIIUTJCCCVIwQQomSCHVyyozTyEImxDUs6YtoulFlO+/bJ14ec2Gk1g2209uPZswTirUK4i5ugAKWxAsZJXz+85jRNOLyEEOADAF1JxpfN7JIZZKoqBesgvNSZJd0Y17kKvlrKePhCD18kp7NffAp1CWWMhDadIOJKpoKcrTnFhWEq/tr89M9KfKK+1VUNAAAFAwD8CrJGWJDSXYRTbHldNnEGNSOWfE8P4BwJ5iCiZIwQQpmCAFE6RgghRMkIIJUjBBCiZIwQQpmCAFE6RgghRMkEIRggbFSXlkAE/FGFn4NApmLoHo4fEvlBjDf4WZxNugoJfYoqBRbhw08godfnrBXKnKBCE6QJQoyPsVtL8+syqgVCW340A/9xF+eT1JiC4Ey1rVWyH3oPbazTmJZTnLkjgDFx68wsV3T7Oe3wVhq5df39vSOhdRxAkA6H/HyuVb1vCycq09r5W69hRTMEEKJkjBBCmYIAUTpGCCFEyQgglSMEEKJkhBEUSHQ10ve59NCph5eN9rlnqlsVBeVoO3QNw7JFni2WoJsXz1PalEiOaHWnlkB5KH0zrwbK0JOdq+eM6Q6LrvXYz6PSj+swbChs9JZKADobkitnimzqUw1+qA3Nb2ePqHHBDtZqyXNAzDMAzDOOIvySvHLTagE98AAAAASUVORK5CYII=";
|
|
@@ -10970,13 +11232,17 @@ function getShapeComponentByKey(key) {
|
|
|
10970
11232
|
return registry[key] ?? null;
|
|
10971
11233
|
}
|
|
10972
11234
|
function getComponentByShapeKey(shapeKey) {
|
|
10973
|
-
const componentName =
|
|
11235
|
+
const componentName = ShapeKeyMap[shapeKey] || shapeKey;
|
|
10974
11236
|
return getShapeComponentByKey(componentName) || componentName;
|
|
10975
11237
|
}
|
|
10976
11238
|
function getComponentByPinKey(shapeKey) {
|
|
10977
11239
|
const componentName = PinKeyMap[shapeKey] || shapeKey;
|
|
10978
11240
|
return getShapeComponentByKey(componentName) || componentName;
|
|
10979
11241
|
}
|
|
11242
|
+
function getComponentByEdgeKey(shapeKey) {
|
|
11243
|
+
const componentName = EdgeKeyMap[shapeKey] || shapeKey;
|
|
11244
|
+
return getShapeComponentByKey(componentName) || componentName;
|
|
11245
|
+
}
|
|
10980
11246
|
function getComponentByDiagramKey(shapeKey) {
|
|
10981
11247
|
const componentName = DiagramKeyMap[shapeKey] || shapeKey;
|
|
10982
11248
|
return getShapeComponentByKey(componentName) || componentName;
|
|
@@ -10991,7 +11257,7 @@ const getShapeComponent = (shape) => {
|
|
|
10991
11257
|
case "diagram":
|
|
10992
11258
|
return getComponentByDiagramKey(shapeKey);
|
|
10993
11259
|
case "edge":
|
|
10994
|
-
return
|
|
11260
|
+
return getComponentByEdgeKey(shapeKey);
|
|
10995
11261
|
default:
|
|
10996
11262
|
return "ShapeComponent";
|
|
10997
11263
|
}
|
|
@@ -11195,10 +11461,36 @@ const _ContextMenuUtils = class _ContextMenuUtils {
|
|
|
11195
11461
|
return this.copiedShapes;
|
|
11196
11462
|
}
|
|
11197
11463
|
/**
|
|
11198
|
-
*
|
|
11199
|
-
|
|
11464
|
+
* 检查剪贴板是否有内容
|
|
11465
|
+
*/
|
|
11466
|
+
static hasClipboardContent() {
|
|
11467
|
+
return this.copiedShapes.length > 0;
|
|
11468
|
+
}
|
|
11469
|
+
/**
|
|
11470
|
+
* 清空剪贴板(粘贴完成后调用)
|
|
11471
|
+
*/
|
|
11472
|
+
static clearClipboard() {
|
|
11473
|
+
this.copiedShapes = [];
|
|
11474
|
+
this.operationType = "copy";
|
|
11475
|
+
const graphStore = useGraphStore();
|
|
11476
|
+
graphStore.setCopiedShapesCount(0);
|
|
11477
|
+
console.log("剪贴板已清空");
|
|
11478
|
+
}
|
|
11479
|
+
/**
|
|
11480
|
+
* 清除剪切状态(只清除SVG遮盖层,不清除剪贴板数据)
|
|
11481
|
+
* 当点击空白处时调用
|
|
11200
11482
|
*/
|
|
11201
11483
|
static clearCutState() {
|
|
11484
|
+
if (this.operationType === "cut") {
|
|
11485
|
+
const graphStore = useGraphStore();
|
|
11486
|
+
graphStore.clearCutShapeIds();
|
|
11487
|
+
}
|
|
11488
|
+
}
|
|
11489
|
+
/**
|
|
11490
|
+
* 完全清除剪切状态和剪贴板数据
|
|
11491
|
+
* 当需要完全重置时调用(如按ESC取消操作)
|
|
11492
|
+
*/
|
|
11493
|
+
static clearAll() {
|
|
11202
11494
|
if (this.operationType === "cut") {
|
|
11203
11495
|
const graphStore2 = useGraphStore();
|
|
11204
11496
|
graphStore2.clearCutShapeIds();
|
|
@@ -11243,7 +11535,7 @@ const _ContextMenuUtils = class _ContextMenuUtils {
|
|
|
11243
11535
|
/**
|
|
11244
11536
|
* 处理粘贴
|
|
11245
11537
|
*/
|
|
11246
|
-
static handlePaste(
|
|
11538
|
+
static handlePaste(_target) {
|
|
11247
11539
|
if (this.copiedShapes.length === 0) {
|
|
11248
11540
|
return;
|
|
11249
11541
|
}
|
|
@@ -11255,10 +11547,8 @@ const _ContextMenuUtils = class _ContextMenuUtils {
|
|
|
11255
11547
|
if (this.operationType === "cut") {
|
|
11256
11548
|
const graphStore = useGraphStore();
|
|
11257
11549
|
graphStore.clearCutShapeIds();
|
|
11258
|
-
graphStore.setCopiedShapesCount(0);
|
|
11259
|
-
this.copiedShapes = [];
|
|
11260
|
-
this.operationType = "copy";
|
|
11261
11550
|
}
|
|
11551
|
+
this.clearClipboard();
|
|
11262
11552
|
console.log("已粘贴的图元:", pastedShapes, "操作类型:", this.operationType);
|
|
11263
11553
|
}
|
|
11264
11554
|
/**
|
|
@@ -11709,7 +11999,8 @@ const DASHED_EDGE_SHAPES = [
|
|
|
11709
11999
|
"Mitigates",
|
|
11710
12000
|
"Protects",
|
|
11711
12001
|
"MapsToCapability",
|
|
11712
|
-
"ActualResourceRelationship"
|
|
12002
|
+
"ActualResourceRelationship",
|
|
12003
|
+
"ProjectSequence"
|
|
11713
12004
|
];
|
|
11714
12005
|
const EDGES_WITH_KEYWORDS = [
|
|
11715
12006
|
"Phases",
|
|
@@ -11738,7 +12029,8 @@ const EDGES_WITH_KEYWORDS = [
|
|
|
11738
12029
|
"Mitigates",
|
|
11739
12030
|
"Protects",
|
|
11740
12031
|
"MapsToCapability",
|
|
11741
|
-
"Exhibits"
|
|
12032
|
+
"Exhibits",
|
|
12033
|
+
"ProjectSequence"
|
|
11742
12034
|
];
|
|
11743
12035
|
const EDGES_WITH_ARROWHEADS = [
|
|
11744
12036
|
...DASHED_EDGE_SHAPES,
|
|
@@ -12021,9 +12313,10 @@ let keyboardMovingShapeIds = /* @__PURE__ */ new Set();
|
|
|
12021
12313
|
const KEYBOARD_MOVE_DEBOUNCE_DELAY = 1e3;
|
|
12022
12314
|
const collectAffectedShapeIds = (graphStore, movedIds) => {
|
|
12023
12315
|
const affectedIds = /* @__PURE__ */ new Set();
|
|
12316
|
+
const shapeMap = graphStore.shapeMap;
|
|
12024
12317
|
movedIds.forEach((id) => {
|
|
12025
12318
|
affectedIds.add(id);
|
|
12026
|
-
const shape =
|
|
12319
|
+
const shape = shapeMap.get(id);
|
|
12027
12320
|
if (!shape)
|
|
12028
12321
|
return;
|
|
12029
12322
|
if (shape.parenShapeId) {
|
|
@@ -12041,7 +12334,7 @@ const collectAffectedShapeIds = (graphStore, movedIds) => {
|
|
|
12041
12334
|
let guard = 0;
|
|
12042
12335
|
while (currentParentId && guard++ < 100) {
|
|
12043
12336
|
affectedIds.add(currentParentId);
|
|
12044
|
-
const parent =
|
|
12337
|
+
const parent = shapeMap.get(currentParentId);
|
|
12045
12338
|
currentParentId = parent?.parenShapeId;
|
|
12046
12339
|
}
|
|
12047
12340
|
});
|
|
@@ -12051,7 +12344,8 @@ const emitKeyboardMoveEnd = (graphStore) => {
|
|
|
12051
12344
|
if (keyboardMovingShapeIds.size === 0)
|
|
12052
12345
|
return;
|
|
12053
12346
|
const affectedIds = collectAffectedShapeIds(graphStore, keyboardMovingShapeIds);
|
|
12054
|
-
const
|
|
12347
|
+
const shapeMap = graphStore.shapeMap;
|
|
12348
|
+
const payloads = Array.from(affectedIds).map((id) => shapeMap.get(id)).filter(Boolean).map((s2) => _.cloneDeep(s2));
|
|
12055
12349
|
if (payloads.length > 0) {
|
|
12056
12350
|
eventBus.emit("shape-drag-end", payloads);
|
|
12057
12351
|
}
|
|
@@ -12188,7 +12482,13 @@ const createKeyboardHandler = (config) => {
|
|
|
12188
12482
|
}
|
|
12189
12483
|
e.preventDefault();
|
|
12190
12484
|
const step = 1;
|
|
12191
|
-
|
|
12485
|
+
let canvas = null;
|
|
12486
|
+
for (const shape of graphStore.shapes) {
|
|
12487
|
+
if (shape.shapeType === "diagram") {
|
|
12488
|
+
canvas = shape;
|
|
12489
|
+
break;
|
|
12490
|
+
}
|
|
12491
|
+
}
|
|
12192
12492
|
const canvasX = canvas?.bounds?.x || 0;
|
|
12193
12493
|
const canvasY = canvas?.bounds?.y || 0;
|
|
12194
12494
|
const canvasWidth = canvas?.bounds?.width || 300;
|
|
@@ -12197,7 +12497,13 @@ const createKeyboardHandler = (config) => {
|
|
|
12197
12497
|
const canvasMinY = canvasY;
|
|
12198
12498
|
const canvasMaxX = canvasWidth + canvasX;
|
|
12199
12499
|
const canvasMaxY = canvasHeight + canvasY;
|
|
12200
|
-
const
|
|
12500
|
+
const shapeMap = graphStore.shapeMap;
|
|
12501
|
+
const selectedShapes = [];
|
|
12502
|
+
for (const id of graphStore.selectedIds) {
|
|
12503
|
+
const shape = shapeMap.get(id);
|
|
12504
|
+
if (shape)
|
|
12505
|
+
selectedShapes.push(shape);
|
|
12506
|
+
}
|
|
12201
12507
|
selectedShapes.forEach((shape) => {
|
|
12202
12508
|
if (!keyboardMoveInitialBounds.has(shape.id)) {
|
|
12203
12509
|
keyboardMoveInitialBounds.set(shape.id, { ...shape.bounds });
|
|
@@ -12241,7 +12547,7 @@ const createKeyboardHandler = (config) => {
|
|
|
12241
12547
|
});
|
|
12242
12548
|
const childIds = graphStore.parentChildMap.get(shape.id) || [];
|
|
12243
12549
|
childIds.forEach((childId) => {
|
|
12244
|
-
const child =
|
|
12550
|
+
const child = shapeMap.get(childId);
|
|
12245
12551
|
if (child && child.bounds) {
|
|
12246
12552
|
if (graphStore.selectedIds.includes(child.id)) {
|
|
12247
12553
|
return;
|
|
@@ -12691,7 +12997,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
12691
12997
|
emits: InteractionLayerEmits,
|
|
12692
12998
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
12693
12999
|
useCssVars((_ctx) => ({
|
|
12694
|
-
"
|
|
13000
|
+
"c994dcd8": unref(graphStore).currentScale
|
|
12695
13001
|
}));
|
|
12696
13002
|
const props = __props;
|
|
12697
13003
|
const emit = __emit;
|
|
@@ -12723,7 +13029,56 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
12723
13029
|
const b2 = getBounds(s2);
|
|
12724
13030
|
return { x: b2.x, y: b2.y, width: b2.width, height: b2.height };
|
|
12725
13031
|
});
|
|
12726
|
-
const
|
|
13032
|
+
const dragGhostRects = computed(() => {
|
|
13033
|
+
if (!graphStore.isDragging || isExternalCreateDragging.value)
|
|
13034
|
+
return [];
|
|
13035
|
+
const rects = [];
|
|
13036
|
+
const dragBase = graphStore.dragBase;
|
|
13037
|
+
const descendantsSnapshot = graphStore.dragDescendantsSnapshot;
|
|
13038
|
+
for (const ghost of graphStore.ghostShadow) {
|
|
13039
|
+
if (!ghost.bounds)
|
|
13040
|
+
continue;
|
|
13041
|
+
const baseBounds = dragBase[ghost.id];
|
|
13042
|
+
if (!baseBounds)
|
|
13043
|
+
continue;
|
|
13044
|
+
const dx = (ghost.bounds.x ?? 0) - baseBounds.x;
|
|
13045
|
+
const dy = (ghost.bounds.y ?? 0) - baseBounds.y;
|
|
13046
|
+
rects.push({
|
|
13047
|
+
id: ghost.id,
|
|
13048
|
+
x: ghost.bounds.x ?? 0,
|
|
13049
|
+
y: ghost.bounds.y ?? 0,
|
|
13050
|
+
width: ghost.bounds.width ?? 0,
|
|
13051
|
+
height: ghost.bounds.height ?? 0
|
|
13052
|
+
});
|
|
13053
|
+
const cachedDescendants = descendantsSnapshot.get(ghost.id);
|
|
13054
|
+
if (cachedDescendants && cachedDescendants.length > 0) {
|
|
13055
|
+
for (const desc of cachedDescendants) {
|
|
13056
|
+
rects.push({
|
|
13057
|
+
id: desc.id,
|
|
13058
|
+
x: desc.x + dx,
|
|
13059
|
+
y: desc.y + dy,
|
|
13060
|
+
width: desc.width,
|
|
13061
|
+
height: desc.height
|
|
13062
|
+
});
|
|
13063
|
+
}
|
|
13064
|
+
}
|
|
13065
|
+
}
|
|
13066
|
+
return rects;
|
|
13067
|
+
});
|
|
13068
|
+
const resizeGhosts = computed(() => resizeGhostShadow.value);
|
|
13069
|
+
const highlightedGhost = computed(() => {
|
|
13070
|
+
if (!highlightedShape.value)
|
|
13071
|
+
return null;
|
|
13072
|
+
return {
|
|
13073
|
+
...highlightedShape.value,
|
|
13074
|
+
meta: {
|
|
13075
|
+
...highlightedShape.value.meta,
|
|
13076
|
+
isHighlighted: true,
|
|
13077
|
+
isGhost: true
|
|
13078
|
+
}
|
|
13079
|
+
};
|
|
13080
|
+
});
|
|
13081
|
+
computed(() => {
|
|
12727
13082
|
const byId = /* @__PURE__ */ new Map();
|
|
12728
13083
|
if (!isExternalCreateDragging.value) {
|
|
12729
13084
|
graphStore.ghostShadow.forEach((g) => byId.set(g.id, g));
|
|
@@ -13864,7 +14219,19 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
13864
14219
|
}, null, 4), [
|
|
13865
14220
|
[vShow, marqueeRect.value]
|
|
13866
14221
|
]),
|
|
13867
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
14222
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(dragGhostRects.value, (g) => {
|
|
14223
|
+
return openBlock(), createElementBlock("div", {
|
|
14224
|
+
key: g.id,
|
|
14225
|
+
class: "ghost-outline",
|
|
14226
|
+
style: normalizeStyle({
|
|
14227
|
+
left: g.x + "px",
|
|
14228
|
+
top: g.y + "px",
|
|
14229
|
+
width: g.width + "px",
|
|
14230
|
+
height: g.height + "px"
|
|
14231
|
+
})
|
|
14232
|
+
}, null, 4);
|
|
14233
|
+
}), 128)),
|
|
14234
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(resizeGhosts.value, (g) => {
|
|
13868
14235
|
return openBlock(), createBlock(resolveDynamicComponent(unref(getShapeComponent)(g)), {
|
|
13869
14236
|
key: g.id,
|
|
13870
14237
|
class: "ghost-shape",
|
|
@@ -13872,6 +14239,12 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
13872
14239
|
style: normalizeStyle(getGhostShapeStyle(g))
|
|
13873
14240
|
}, null, 8, ["shape", "style"]);
|
|
13874
14241
|
}), 128)),
|
|
14242
|
+
highlightedGhost.value ? (openBlock(), createBlock(resolveDynamicComponent(unref(getShapeComponent)(highlightedGhost.value)), {
|
|
14243
|
+
key: highlightedGhost.value.id,
|
|
14244
|
+
class: "ghost-shape",
|
|
14245
|
+
shape: highlightedGhost.value,
|
|
14246
|
+
style: normalizeStyle(getGhostShapeStyle(highlightedGhost.value))
|
|
14247
|
+
}, null, 8, ["shape", "style"])) : createCommentVNode("", true),
|
|
13875
14248
|
createVNode(NameEditor, {
|
|
13876
14249
|
"selected-shape": unref(graphStore).selectedShape,
|
|
13877
14250
|
"can-edit": !unref(graphStore).pendingNestedIds.includes(
|
|
@@ -13882,7 +14255,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
13882
14255
|
"name-edit-manager": unref(nameEditManager)
|
|
13883
14256
|
}, null, 8, ["selected-shape", "can-edit", "is-editing-name", "editing-name", "name-edit-manager"]),
|
|
13884
14257
|
unref(selectedShape) && !isMultiSelected.value ? (openBlock(), createBlock(ContextMenu, {
|
|
13885
|
-
key:
|
|
14258
|
+
key: 3,
|
|
13886
14259
|
visible: showContextMenu.value,
|
|
13887
14260
|
"selected-shape": unref(selectedShape),
|
|
13888
14261
|
position: contextMenuPosition.value,
|
|
@@ -13890,7 +14263,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
13890
14263
|
onShowPropertyPanel: _cache[1] || (_cache[1] = ($event) => onLayerDblClick(true))
|
|
13891
14264
|
}, null, 8, ["visible", "selected-shape", "position"])) : createCommentVNode("", true),
|
|
13892
14265
|
_ctx.connectShapeData && _ctx.diagramBounds ? (openBlock(), createElementBlock("div", {
|
|
13893
|
-
key:
|
|
14266
|
+
key: 4,
|
|
13894
14267
|
class: "connect-layer",
|
|
13895
14268
|
style: normalizeStyle(layerStyle.value)
|
|
13896
14269
|
}, [
|
|
@@ -13910,7 +14283,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
13910
14283
|
])
|
|
13911
14284
|
], 4)) : createCommentVNode("", true),
|
|
13912
14285
|
unref(highlightOverlayBounds) ? (openBlock(), createElementBlock("div", {
|
|
13913
|
-
key:
|
|
14286
|
+
key: 5,
|
|
13914
14287
|
class: normalizeClass(["highlight-overlay", unref(highlightOverlayColor)]),
|
|
13915
14288
|
style: normalizeStyle({
|
|
13916
14289
|
left: unref(highlightOverlayBounds).x + "px",
|
|
@@ -13923,8 +14296,8 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
13923
14296
|
};
|
|
13924
14297
|
}
|
|
13925
14298
|
});
|
|
13926
|
-
const
|
|
13927
|
-
const InteractionLayer = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-
|
|
14299
|
+
const InteractionLayer_vue_vue_type_style_index_0_scoped_a7475c72_lang = "";
|
|
14300
|
+
const InteractionLayer = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-a7475c72"]]);
|
|
13928
14301
|
const _hoisted_1$d = { class: "diagram-header" };
|
|
13929
14302
|
const _hoisted_2$d = { class: "diagram-title" };
|
|
13930
14303
|
const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
@@ -16574,8 +16947,8 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
16574
16947
|
};
|
|
16575
16948
|
}
|
|
16576
16949
|
});
|
|
16577
|
-
const
|
|
16578
|
-
const DiagramListTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-
|
|
16950
|
+
const DiagramListTooltip_vue_vue_type_style_index_0_scoped_4e4791fa_lang = "";
|
|
16951
|
+
const DiagramListTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-4e4791fa"]]);
|
|
16579
16952
|
class ViewportCulling {
|
|
16580
16953
|
constructor(options = {}) {
|
|
16581
16954
|
__publicField(this, "viewportBounds");
|
|
@@ -16731,7 +17104,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
16731
17104
|
emits: ["shapes-property", "shapes-edit-name", "connect-end", "object-flow-connect-end", "action-button-click", "diagramDoubleClick", "model-type-property-id-button-click", "action-button-add", "scale-changed"],
|
|
16732
17105
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
16733
17106
|
useCssVars((_ctx) => ({
|
|
16734
|
-
"
|
|
17107
|
+
"478247fa": currentScale.value
|
|
16735
17108
|
}));
|
|
16736
17109
|
registerShapes({
|
|
16737
17110
|
StrategicTaxonomyDiagram,
|
|
@@ -16902,7 +17275,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
16902
17275
|
return 0;
|
|
16903
17276
|
});
|
|
16904
17277
|
clearEdgeStyleCache();
|
|
16905
|
-
graphStore.
|
|
17278
|
+
graphStore.clearAll();
|
|
16906
17279
|
graphStore.updateShapes(shapes2, "replace");
|
|
16907
17280
|
nextTick(() => {
|
|
16908
17281
|
graphStore.initializeAllEdgeEndpoints();
|
|
@@ -16925,7 +17298,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
16925
17298
|
let removed = 0;
|
|
16926
17299
|
for (let i = arr.length - 1; i >= 0; i--) {
|
|
16927
17300
|
if ("inert" in arr[i]) {
|
|
16928
|
-
|
|
17301
|
+
graphStore.removeShape(arr[i].id);
|
|
16929
17302
|
removed++;
|
|
16930
17303
|
}
|
|
16931
17304
|
}
|
|
@@ -17111,8 +17484,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
17111
17484
|
};
|
|
17112
17485
|
}
|
|
17113
17486
|
});
|
|
17114
|
-
const
|
|
17115
|
-
const GraphView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
17487
|
+
const graph_vue_vue_type_style_index_0_scoped_f90f1704_lang = "";
|
|
17488
|
+
const GraphView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-f90f1704"]]);
|
|
17116
17489
|
const MxSoseGraphPlugin = {
|
|
17117
17490
|
install(app, options) {
|
|
17118
17491
|
const externalPinia = options?.pinia || // 优先使用显式传入的
|