@moxa/graph 3.0.0-beta.11 → 3.0.0-beta.12

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/behaviors/brush-select/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACZ,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG;IACrD,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,gBAAgB,CAAC,kBAAkB,CAkCrE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/behaviors/brush-select/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACZ,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG;IACrD,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,gBAAgB,CAAC,kBAAkB,CAwCrE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/behaviors/click-select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EAQnB,aAAa,EAEb,cAAc,EAEd,WAAW,EACX,KAAK,EACN,MAAM,UAAU,CAAC;AAKlB,OAAO,EAEL,mBAAmB,EACnB,gBAAgB,EAEhB,WAAW,EAGZ,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,gBAAgB,CAAC,kBAAkB,CAoDrE,CAAC;AAEJ;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC;IACvD;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;;OAKG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,MAAM,CAAC,CAAC;IACrD;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC1C;AAED;;;;;;;;GAQG;AACH,qBAAa,WAAY,SAAQ,YAAY,CAAC,oBAAoB,CAAC;IACjE,OAAO,CAAC,QAAQ,CAAW;IAE3B,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,oBAAoB,CAAC,CASlD;gBAEU,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,oBAAoB;IAMlE,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,aAAa,CAInB;IAEF,OAAO,CAAC,aAAa,CAInB;IAEF,OAAO,KAAK,gBAAgB,GAG3B;IAED,OAAO,CAAC,cAAc;YAYR,WAAW;IAkGzB,OAAO,CAAC,aAAa;IAYrB;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;YAkBR,UAAU;IAKxB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,YAAY;IASJ,OAAO;CAIxB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/behaviors/click-select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EAQnB,aAAa,EAEb,cAAc,EAEd,WAAW,EACX,KAAK,EACN,MAAM,UAAU,CAAC;AAKlB,OAAO,EAEL,mBAAmB,EACnB,gBAAgB,EAEhB,WAAW,EAIZ,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,gBAAgB,CAAC,kBAAkB,CAiErE,CAAC;AAEJ;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC;IACvD;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;;OAKG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,MAAM,CAAC,CAAC;IACrD;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC1C;AAED;;;;;;;;GAQG;AACH,qBAAa,WAAY,SAAQ,YAAY,CAAC,oBAAoB,CAAC;IACjE,OAAO,CAAC,QAAQ,CAAW;IAE3B,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,oBAAoB,CAAC,CASlD;gBAEU,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,oBAAoB;IAMlE,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,aAAa,CAInB;IAEF,OAAO,CAAC,aAAa,CAInB;IAEF,OAAO,KAAK,gBAAgB,GAG3B;IAED,OAAO,CAAC,cAAc;YAYR,WAAW;IAkGzB,OAAO,CAAC,aAAa;IAYrB;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;YAkBR,UAAU;IAKxB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,YAAY;IASJ,OAAO;CAIxB"}
@@ -1,4 +1,4 @@
1
- import { Graph, Point } from '@antv/g6';
1
+ import { Graph as G6Graph, Point } from '@antv/g6';
2
2
  export interface DrillDownState {
3
3
  navigationStack: string[];
4
4
  originalViewport: {
@@ -14,7 +14,21 @@ export declare class DrillDownManager {
14
14
  private graph;
15
15
  private g6Graph;
16
16
  private state;
17
- constructor(g6Graph: Graph);
17
+ constructor(g6Graph: G6Graph);
18
+ /**
19
+ * 取得所有元素資料
20
+ */
21
+ private getAllElementData;
22
+ /**
23
+ * 計算指定群組的可見元素 ID 集合
24
+ * 注意:不包含被鑽入的群組本身,只顯示其子元素
25
+ */
26
+ private getVisibleIds;
27
+ /**
28
+ * 根據可見性更新所有元素的顯示狀態
29
+ * @param visibleIds - 可見元素 ID 集合,null 表示顯示所有元素
30
+ */
31
+ private updateVisibility;
18
32
  /**
19
33
  * Get current drill-down state
20
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"drill-down-manager.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/behaviors/drill-down/drill-down-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAIxC,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,gBAAgB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,CAAC;CAC5D;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,KAAK,CAGX;gBAEU,OAAO,EAAE,KAAK;IAK1B;;OAEG;IACH,QAAQ,IAAI,cAAc;IAS1B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IASrC;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IA8DrC;;OAEG;IACH,eAAe,IAAI,IAAI;IAsEvB;;OAEG;IACH,UAAU,IAAI,IAAI;IA4BlB;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,iBAAiB,IAAI,MAAM,GAAG,IAAI;IAMlC;;OAEG;IACH,OAAO,IAAI,IAAI;CAMhB"}
1
+ {"version":3,"file":"drill-down-manager.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/behaviors/drill-down/drill-down-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAKnD,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,gBAAgB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,CAAC;CAC5D;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,KAAK,CAGX;gBAEU,OAAO,EAAE,OAAO;IAM5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;;OAGG;IACH,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA8BxB;;OAEG;IACH,QAAQ,IAAI,cAAc;IAS1B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IASrC;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAiDrC;;OAEG;IACH,eAAe,IAAI,IAAI;IAkDvB;;OAEG;IACH,UAAU,IAAI,IAAI;IAwBlB;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,iBAAiB,IAAI,MAAM,GAAG,IAAI;IAMlC;;OAEG;IACH,OAAO,IAAI,IAAI;CAMhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"label-background.d.ts","sourceRoot":"","sources":["../../../../../../libs/graph/src/components/shared/utils/group-utils/label-background.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIzC;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,GAAG,EACT,KAAK,EAAE,GAAG,GACT,cAAc,GAAG,KAAK,CA2DxB"}
1
+ {"version":3,"file":"label-background.d.ts","sourceRoot":"","sources":["../../../../../../libs/graph/src/components/shared/utils/group-utils/label-background.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAKzC;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,GAAG,EACT,KAAK,EAAE,GAAG,GACT,cAAc,GAAG,KAAK,CAuDxB"}
@@ -25,6 +25,10 @@ export declare class DataManager {
25
25
  * Add groups to the data
26
26
  */
27
27
  addGroups(groups: PartialGroupData[]): ComboData[];
28
+ /**
29
+ * Update groups to the data
30
+ */
31
+ updateGroups(groups: PartialGroupData[]): ComboData[];
28
32
  /**
29
33
  * Update edges to the data
30
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"data-manager.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/graph/data-manager.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,QAAQ,EACR,SAAS,IAAI,WAAW,EACxB,QAAQ,EACT,MAAM,UAAU,CAAC;AASlB,OAAO,EACL,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,eAAe,EAChB,MAAM,aAAa,CAAC;AAGrB;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAA4B;IAE5C;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW;IAgB/C;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS;IAQ/C;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,QAAQ,EAAE;IAI9C;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,QAAQ,EAAE;IAI9C;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,SAAS,EAAE;IAIlD;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,QAAQ,EAAE;IAKjD;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI;IAInC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAkBtC;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,GAAG,GAAG,SAAS;CAOpC"}
1
+ {"version":3,"file":"data-manager.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/graph/data-manager.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,QAAQ,EACR,SAAS,IAAI,WAAW,EACxB,QAAQ,EACT,MAAM,UAAU,CAAC;AASlB,OAAO,EACL,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,eAAe,EAChB,MAAM,aAAa,CAAC;AAGrB;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAA4B;IAE5C;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW;IAgB/C;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS;IAQ/C;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,QAAQ,EAAE;IAI9C;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,QAAQ,EAAE;IAI9C;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,SAAS,EAAE;IAIlD;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,SAAS,EAAE;IAOrD;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,QAAQ,EAAE;IAKjD;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI;IAInC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAkBtC;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,GAAG,GAAG,SAAS;CAOpC"}
@@ -3,12 +3,14 @@ import { BehaviorController } from '@antv/g6/lib/runtime/behavior';
3
3
  import { DataController } from '@antv/g6/lib/runtime/data';
4
4
  import { ElementController } from '@antv/g6/lib/runtime/element';
5
5
  import { ViewportController } from '@antv/g6/lib/runtime/viewport';
6
- import { BehaviorConfig, DesignTokenConfig, EdgeData, ElementType, GraphConfig, GraphData, GraphRendererType, GroupData, LayoutConfig, NodeData, PartialEdgeData, PartialGroupData, PartialNodeData, PluginConfig, TokenConfig, TokenValues, UserThemeType, ZoomRange } from '../model';
7
6
  import { DrillDownState } from '../../behaviors/drill-down';
8
- declare class Graph {
7
+ import { BehaviorConfig, DesignTokenConfig, EdgeData, ElementType, GraphConfig, GraphData, GraphRendererType, GroupConfig, GroupData, LayoutConfig, NodeData, PartialEdgeData, PartialGroupData, PartialNodeData, PluginConfig, TokenConfig, TokenValues, UserThemeType, ZoomRange } from '../model';
8
+ import { GroupManagerContext } from './group-manager';
9
+ declare class Graph implements GroupManagerContext {
9
10
  private renderer;
10
11
  private dataManager;
11
12
  private configManager;
13
+ private groupManager;
12
14
  private historyDrillCleanup;
13
15
  graphReady: boolean;
14
16
  /**
@@ -66,7 +68,11 @@ declare class Graph {
66
68
  */
67
69
  private initGraph;
68
70
  /**
69
- * Setup event handlers
71
+ * 初始化群組管理器
72
+ */
73
+ private initGroupManager;
74
+ /**
75
+ * 設置事件處理器
70
76
  */
71
77
  private setupEventHandlers;
72
78
  /**
@@ -474,43 +480,23 @@ declare class Graph {
474
480
  level?: number;
475
481
  }): (NodeData | GroupData)[];
476
482
  /**
477
- * Add group
478
- * @param group - Group data
479
- */
480
- addGroup(group: GroupData | GroupData[]): void;
481
- /**
482
- * Assign elements to a specified group.
483
- *
484
- * This method updates the parent group of each element in the `ids` array to the provided `groupId`. It first checks if any element in the `ids` array is a child of `groupId`, and if so, logs a warning and exits without making any changes.
485
- *
486
- * @param ids - Array of element IDs to assign to the group.
487
- * @param groupId - Group ID to assign elements to.
488
- *
489
- * @remarks
490
- * - If an element in the `ids` array is already a child of `groupId`, the method will log a warning and not assign any elements.
491
- * - The method determines the type of each element ('node' or 'group') and updates accordingly.
492
- *
483
+ * Update group
484
+ * @param group - 組數據
493
485
  * @example
494
486
  * ```typescript
495
- * const ids = ['node1', 'node2', 'group1'];
496
- * const groupId = 'group2';
497
- * graph.assignGroup(ids, groupId);
487
+ * // 更新組標籤
488
+ * graph.updateGroup({
489
+ * id: 'group1',
490
+ * config: { label: { text: 'New Label' } }
491
+ * });
492
+ *
493
+ * // 批量更新
494
+ * graph.updateGroup([
495
+ * { id: 'group1', config: { label: { text: 'Label 1' } } },
496
+ * { id: 'group2', config: { label: { text: 'Label 2' } } }
497
+ * ]);
498
498
  * ```
499
499
  */
500
- assignGroup(ids: string[], groupId: string): void;
501
- /**
502
- * Remove group
503
- * @param id - Group ID, can be single string or string array
504
- * @param option - Options
505
- * @param option.recursive - Whether to recursively remove child groups, defaults to false
506
- */
507
- removeGroup(id: string | string[], option?: {
508
- recursive?: boolean;
509
- }): void;
510
- /**
511
- * Update group
512
- * @param group - Group data
513
- */
514
500
  updateGroup(group: PartialGroupData | PartialGroupData[]): void;
515
501
  /**
516
502
  * Expand group
@@ -522,6 +508,21 @@ declare class Graph {
522
508
  * @param id - Group ID
523
509
  */
524
510
  collapseGroup(id: string | string[]): Promise<void>;
511
+ /**
512
+ * Creates a new group from selected elements
513
+ * Single Parent Rule: All elements must share the same immediate parent
514
+ * @param elementIds - IDs of elements to group (nodes and/or groups)
515
+ * @param config - Optional group configuration
516
+ * @returns The ID of the created group
517
+ */
518
+ createGroup(elementIds: string[], config?: Partial<GroupConfig> & {
519
+ id?: string;
520
+ }): string;
521
+ /**
522
+ * Ungroups one or more groups, preserving their child elements
523
+ * @param groupIds - ID(s) of groups to ungroup
524
+ */
525
+ ungroup(groupIds: string | string[]): void;
525
526
  /**
526
527
  * Get plugin config
527
528
  * @returns Plugin config in PluginConfig format
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/graph/graph.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,KAAK,IAAI,OAAO,EAChB,MAAM,EAGN,KAAK,EACN,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAInE,OAAO,EAEL,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,WAAW,EACX,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,WAAW,EACX,WAAW,EAEX,aAAa,EACb,SAAS,EACV,MAAM,aAAa,CAAC;AACrB,OAAO,EAAa,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAgBlE,cAAM,KAAK;IACT,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,mBAAmB,CAA6B;IACxD,UAAU,UAAS;IAEnB;;;OAGG;IACH,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED;;;OAGG;IACH,IAAI,SAAS,IAAI,WAAW,CAE3B;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,iBAAiB,GAAG,WAAW,CAI5C;IAED;;;OAGG;IACH,IAAI,iBAAiB,IAAI,iBAAiB,CAEzC;IAED;;;OAGG;IACH,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED;;;OAGG;IACH,IAAI,kBAAkB,IAAI,kBAAkB,CAE3C;IAED;;;OAGG;IACH,IAAI,kBAAkB,IAAI,kBAAkB,CAE3C;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED;;;OAGG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;;OAGG;gBACS,MAAM,EAAE,WAAW;IAY/B;;OAEG;IACH,OAAO,CAAC,SAAS;IAKjB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAcpC;;;;OAIG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAUnC;;;;OAIG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIlC;;;;OAIG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAUpC;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE;;;;;;;;IAyB3C;;;OAGG;IACH,SAAS,IAAI,WAAW;IA0CxB;;;OAGG;IACH,OAAO;;;;IAQP;;;;OAIG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAa9C;;;;OAIG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE;IAKrC;;;;;OAKG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAC1D,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAC1D,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE;IAkD5D;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC,EAAE;IAY5E;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAQ9C;;;OAGG;IACH,QAAQ,IAAI,aAAa;IASzB,cAAc,IAAI,WAAW;IAM7B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAMpC,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,GAAG,GAAG,IAAI;IAKtD;;;OAGG;IACH,SAAS,IAAI,YAAY;IAKzB;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAOrC;;;OAGG;IACG,MAAM,CAAC,aAAa,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzD;;;;OAIG;IACH,MAAM,IAAI,IAAI;IACd,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAW7C;;OAEG;IACH,OAAO;IAKP;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAO7B;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIzB;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3B;;;OAGG;IACH,OAAO,IAAI,MAAM;IAIjB;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAexC;;;OAGG;IACH,YAAY,IAAI,SAAS;IAIzB;;;OAGG;IACH,eAAe;;;;;;;;;;;;;;;;;;;;;;IAwBf;;;OAGG;IACH,eAAe;IAqBf;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;;;;IAOhD;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;;;;IAOhD;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,SAAS,IAAI,IAAI;IAIjB;;;OAGG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI3B;;OAEG;IACH,IAAI,IAAI,IAAI;IAOZ;;OAEG;IACH,IAAI,IAAI,IAAI;IAOZ;;;OAGG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOrC;;OAEG;IACH,eAAe,IAAI,IAAI;IAOvB;;OAEG;IACH,UAAU,IAAI,IAAI;IAOlB;;;OAGG;IACH,iBAAiB,IAAI,cAAc,GAAG,SAAS;IAQ/C;;;OAGG;IACH,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAO9C;;OAEG;IACH,MAAM;IAIN;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAK9B;;OAEG;IACH,KAAK;IAIL,OAAO;IA4BP;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAI/B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAKpC;;;OAGG;IACH,WAAW,IAAI,cAAc;IAO7B;;;;OAIG;IACH,mBAAmB,CAAC,CAAC,SAAS,mBAAmB,GAAG,GAAG,EACrD,GAAG,EAAE,MAAM,GACV,YAAY,CAAC,CAAC,CAAC;IAQlB;;;OAGG;IACH,WAAW,CAAC,MAAM,EAAE,cAAc;IAKlC;;;;OAIG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI;IAIhE;;;;OAIG;IACH,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI;IAIlE;;;;OAIG;IACH,GAAG,IAAI,IAAI;IACX,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAa5B;;;;OAIG;IACH,WAAW,IAAI,QAAQ,EAAE;IACzB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ;IACjC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE;IA4BrC;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,IAAI;IAM1C;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,EAAE,GAAG,IAAI;IAM3D;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAKvC;;;OAGG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAIxC;;;OAGG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAIxC;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAe1C;;;OAGG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,CAAC,GAAG,IAAI;IAIhE;;;OAGG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAW9C;;;;OAIG;IACH,WAAW,IAAI,QAAQ,EAAE;IACzB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ;IACjC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE;IA4BrC;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAInC;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE;IAMnC;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAKvC;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,EAAE,GAAG,IAAI;IAQ3D;;;;OAIG;IACH,YAAY,IAAI,SAAS,EAAE;IAC3B,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS;IACnC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE;IA4BvC;;;;;;OAMG;IACH,eAAe,CACb,EAAE,EAAE,MAAM,EACV,MAAM,GAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;KACX,GACL,CAAC,QAAQ,GAAG,SAAS,CAAC,EAAE;IAmC3B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,IAAI;IAM9C;;;;;;;;;;;;;;;;;;OAkBG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAiBjD;;;;;OAKG;IACH,WAAW,CACT,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,EACrB,MAAM,GAAE;QACN,SAAS,CAAC,EAAE,OAAO,CAAC;KACE,GACvB,IAAI;IAsBP;;;OAGG;IACH,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,GAAG,IAAI;IAM/D;;;OAGG;IACG,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvD;;;OAGG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAezD;;;OAGG;IACH,SAAS,IAAI,YAAY;IAczB;;;;OAIG;IACH,iBAAiB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC;IAI1C;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;CAKtC;AAED,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/graph/graph.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,KAAK,IAAI,OAAO,EAChB,MAAM,EAEN,KAAK,EACN,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAInE,OAAO,EAAa,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAEL,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,WAAW,EACX,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,WAAW,EACX,WAAW,EAEX,aAAa,EACb,SAAS,EACV,MAAM,aAAa,CAAC;AAerB,OAAO,EAAgB,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEpE,cAAM,KAAM,YAAW,mBAAmB;IACxC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,mBAAmB,CAA6B;IACxD,UAAU,UAAS;IAEnB;;;OAGG;IACH,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED;;;OAGG;IACH,IAAI,SAAS,IAAI,WAAW,CAE3B;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,iBAAiB,GAAG,WAAW,CAI5C;IAED;;;OAGG;IACH,IAAI,iBAAiB,IAAI,iBAAiB,CAEzC;IAED;;;OAGG;IACH,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED;;;OAGG;IACH,IAAI,kBAAkB,IAAI,kBAAkB,CAE3C;IAED;;;OAGG;IACH,IAAI,kBAAkB,IAAI,kBAAkB,CAE3C;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED;;;OAGG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;;OAGG;gBACS,MAAM,EAAE,WAAW;IAY/B;;OAEG;IACH,OAAO,CAAC,SAAS;IAMjB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IASxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAcpC;;;;OAIG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAUnC;;;;OAIG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIlC;;;;OAIG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAUpC;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE;;;;;;;;IAyB3C;;;OAGG;IACH,SAAS,IAAI,WAAW;IA0CxB;;;OAGG;IACH,OAAO;;;;IAQP;;;;OAIG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAa9C;;;;OAIG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE;IAKrC;;;;;OAKG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAC1D,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAC1D,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE;IAkD5D;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC,EAAE;IAY5E;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAQ9C;;;OAGG;IACH,QAAQ,IAAI,aAAa;IASzB,cAAc,IAAI,WAAW;IAM7B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAMpC,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,GAAG,GAAG,IAAI;IAKtD;;;OAGG;IACH,SAAS,IAAI,YAAY;IAKzB;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAOrC;;;OAGG;IACG,MAAM,CAAC,aAAa,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzD;;;;OAIG;IACH,MAAM,IAAI,IAAI;IACd,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAW7C;;OAEG;IACH,OAAO;IAKP;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAO7B;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIzB;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3B;;;OAGG;IACH,OAAO,IAAI,MAAM;IAIjB;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAexC;;;OAGG;IACH,YAAY,IAAI,SAAS;IAIzB;;;OAGG;IACH,eAAe;;;;;;;;;;;;;;;;;;;;;;IAwBf;;;OAGG;IACH,eAAe;IAqBf;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;;;;IAOhD;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;;;;IAOhD;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,SAAS,IAAI,IAAI;IAIjB;;;OAGG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI3B;;OAEG;IACH,IAAI,IAAI,IAAI;IAOZ;;OAEG;IACH,IAAI,IAAI,IAAI;IAOZ;;;OAGG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOrC;;OAEG;IACH,eAAe,IAAI,IAAI;IAOvB;;OAEG;IACH,UAAU,IAAI,IAAI;IAOlB;;;OAGG;IACH,iBAAiB,IAAI,cAAc,GAAG,SAAS;IAQ/C;;;OAGG;IACH,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAO9C;;OAEG;IACH,MAAM;IAIN;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAK9B;;OAEG;IACH,KAAK;IAIL,OAAO;IA4BP;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAI/B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAKpC;;;OAGG;IACH,WAAW,IAAI,cAAc;IAO7B;;;;OAIG;IACH,mBAAmB,CAAC,CAAC,SAAS,mBAAmB,GAAG,GAAG,EACrD,GAAG,EAAE,MAAM,GACV,YAAY,CAAC,CAAC,CAAC;IAQlB;;;OAGG;IACH,WAAW,CAAC,MAAM,EAAE,cAAc;IAKlC;;;;OAIG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI;IAIhE;;;;OAIG;IACH,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI;IAIlE;;;;OAIG;IACH,GAAG,IAAI,IAAI;IACX,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAa5B;;;;OAIG;IACH,WAAW,IAAI,QAAQ,EAAE;IACzB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ;IACjC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE;IA4BrC;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,IAAI;IAM1C;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,EAAE,GAAG,IAAI;IAM3D;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAKvC;;;OAGG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAIxC;;;OAGG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAIxC;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAkB1C;;;OAGG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,CAAC,GAAG,IAAI;IAIhE;;;OAGG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAW9C;;;;OAIG;IACH,WAAW,IAAI,QAAQ,EAAE;IACzB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ;IACjC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE;IA4BrC;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAInC;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE;IAMnC;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAKvC;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,EAAE,GAAG,IAAI;IAQ3D;;;;OAIG;IACH,YAAY,IAAI,SAAS,EAAE;IAC3B,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS;IACnC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE;IAKvC;;;;;;OAMG;IACH,eAAe,CACb,EAAE,EAAE,MAAM,EACV,MAAM,GAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;KACX,GACL,CAAC,QAAQ,GAAG,SAAS,CAAC,EAAE;IAI3B;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,GAAG,IAAI;IAI/D;;;OAGG;IACG,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD;;;OAGG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;;;;;OAMG;IACH,WAAW,CACT,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAC9C,MAAM;IAIT;;;OAGG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAO1C;;;OAGG;IACH,SAAS,IAAI,YAAY;IAczB;;;;OAIG;IACH,iBAAiB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC;IAI1C;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;CAKtC;AAED,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,CAAC"}
@@ -0,0 +1,98 @@
1
+ import { Graph as G6Graph, State } from '@antv/g6';
2
+ import { DataController } from '@antv/g6/lib/runtime/data';
3
+ import { ElementType, GroupConfig, GroupData, NodeData, PartialGroupData, PartialNodeData } from '../model';
4
+ import { DataManager } from './data-manager';
5
+ /**
6
+ * Interface defining the context required by GroupManager.
7
+ * The Graph class implements this interface to provide necessary callbacks.
8
+ */
9
+ export interface GroupManagerContext {
10
+ getElementType(id: string): ElementType | null;
11
+ getNodeData(): NodeData[];
12
+ getNodeData(id: string): NodeData;
13
+ getNodeData(ids: string[]): NodeData[];
14
+ updateNode(data: PartialNodeData | PartialNodeData[]): void;
15
+ setElementState(states: Record<string, State[]>): void;
16
+ isElementShow(id: string): boolean;
17
+ }
18
+ /**
19
+ * GroupManager handles all group-related operations for the Graph.
20
+ * This class encapsulates group CRUD operations, hierarchy management,
21
+ * and high-level group creation/ungrouping logic.
22
+ */
23
+ export declare class GroupManager {
24
+ private graph;
25
+ private dataManager;
26
+ private dataController;
27
+ private context;
28
+ constructor(graph: G6Graph, dataManager: DataManager, dataController: DataController, context: GroupManagerContext);
29
+ /**
30
+ * 獲取組數據
31
+ * @param id - 組ID
32
+ * @returns 組數據
33
+ */
34
+ getGroupData(): GroupData[];
35
+ getGroupData(id: string): GroupData;
36
+ getGroupData(id: string[]): GroupData[];
37
+ /**
38
+ * 獲取子元素數據
39
+ * @param id - 元素ID
40
+ * @param option - 選項
41
+ * @param option.level - 遞迴層級
42
+ * @returns 子元素數據
43
+ */
44
+ getChildrenData(id: string, option?: {
45
+ level?: number;
46
+ }): (NodeData | GroupData)[];
47
+ /**
48
+ * 添加新組到圖中 (內部API,不含驗證)
49
+ * @internal
50
+ * @param group - 組數據
51
+ */
52
+ private addGroupInternal;
53
+ /**
54
+ * 更新現有組
55
+ * @param group - 組數據
56
+ * @throws Error if group does not exist or is locked
57
+ */
58
+ updateGroup(group: PartialGroupData | PartialGroupData[]): void;
59
+ /**
60
+ * 完全移除組(內部API,子元素可能成為孤兒)
61
+ * 注意:與 ungroup 不同,此方法不會保留子元素
62
+ * @internal
63
+ * @param id - 組ID
64
+ */
65
+ private removeGroupInternal;
66
+ /**
67
+ * 展開組
68
+ * @param id - 組ID
69
+ */
70
+ expandGroup(id: string | string[]): Promise<void>;
71
+ /**
72
+ * 折疊組
73
+ * @param id - 組ID
74
+ */
75
+ collapseGroup(id: string | string[]): Promise<void>;
76
+ /**
77
+ * 獲取元素的尺寸
78
+ * @param elementId - 元素ID
79
+ * @returns 元素的寬度和高度
80
+ */
81
+ private getElementDimensions;
82
+ /**
83
+ * Creates a new group from selected elements
84
+ * Single Parent Rule: All elements must share the same immediate parent
85
+ * @param elementIds - IDs of elements to group (nodes and/or groups)
86
+ * @param config - Optional group configuration
87
+ * @returns The ID of the created group
88
+ */
89
+ createGroup(elementIds: string[], config?: Partial<GroupConfig> & {
90
+ id?: string;
91
+ }): string;
92
+ /**
93
+ * Ungroups one or more groups, preserving their child elements
94
+ * @param groupIds - ID(s) of groups to ungroup
95
+ */
96
+ ungroup(groupIds: string | string[]): void;
97
+ }
98
+ //# sourceMappingURL=group-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group-manager.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/graph/group-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,OAAO,EAAgB,KAAK,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAI3D,OAAO,EACL,WAAW,EACX,WAAW,EAEX,SAAS,EAGT,QAAQ,EACR,gBAAgB,EAChB,eAAe,EAChB,MAAM,aAAa,CAAC;AASrB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;IAC/C,WAAW,IAAI,QAAQ,EAAE,CAAC;IAC1B,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,CAAC;IAClC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;IACvC,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,EAAE,GAAG,IAAI,CAAC;IAC5D,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IACvD,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;CACpC;AAED;;;;GAIG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,OAAO;gBAHP,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,mBAAmB;IAKtC;;;;OAIG;IACH,YAAY,IAAI,SAAS,EAAE;IAC3B,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS;IACnC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE;IA4BvC;;;;;;OAMG;IACH,eAAe,CACb,EAAE,EAAE,MAAM,EACV,MAAM,GAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;KACX,GACL,CAAC,QAAQ,GAAG,SAAS,CAAC,EAAE;IA6D3B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,GAAG,IAAI;IAwB/D;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAS3B;;;OAGG;IACG,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvD;;;OAGG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBzD;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAgC5B;;;;;;OAMG;IACH,WAAW,CACT,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAC9C,MAAM;IA0JT;;;OAGG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;CAsI3C"}
@@ -1,5 +1,6 @@
1
1
  export * from './config-manager';
2
2
  export * from './data-manager';
3
3
  export * from './graph';
4
+ export * from './group-manager';
4
5
  export { GraphRenderer as MxGraphRendererClass } from './graph-renderer';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/graph/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,aAAa,IAAI,oBAAoB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/graph/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,aAAa,IAAI,oBAAoB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -47,6 +47,8 @@ export declare enum GraphEventEnum {
47
47
  GRAPH_BEFORE_DESTROY = "beforedestroy",
48
48
  GRAPH_AFTER_DESTROY = "afterdestroy",
49
49
  GRAPH_BEFORE_BRUSH_SELECT = "graph:beforeBrushSelect",
50
+ GRAPH_AFTER_BRUSH_SELECT = "graph:afterBrushSelect",
51
+ GRAPH_SELECTION_CLEARED = "graph:selectionCleared",
50
52
  GRAPH_VIEWPORT_CHANGE = "graph:viewportChange"
51
53
  }
52
54
  export declare enum NodeEventEnum {
@@ -68,6 +70,7 @@ export declare enum NodeEventEnum {
68
70
  NODE_DRAG_LEAVE = "node:dragleave",
69
71
  NODE_DROP = "node:drop",
70
72
  NODE_SELECTED = "node:selected",
73
+ NODE_UNSELECTED = "node:unselected",
71
74
  NODE_DRAG_MULTI_END = "node:dragMultiEnd"
72
75
  }
73
76
  export declare enum EdgeEventEnum {
@@ -85,7 +88,8 @@ export declare enum EdgeEventEnum {
85
88
  EDGE_DRAG_OVER = "edge:dragover",
86
89
  EDGE_DRAG_LEAVE = "edge:dragleave",
87
90
  EDGE_DROP = "edge:drop",
88
- EDGE_SELECTED = "edge:selected"
91
+ EDGE_SELECTED = "edge:selected",
92
+ EDGE_UNSELECTED = "edge:unselected"
89
93
  }
90
94
  export declare enum GroupEventEnum {
91
95
  GROUP_CLICK = "combo:click",
@@ -109,9 +113,12 @@ export declare enum GroupEventEnum {
109
113
  GROUP_COLLAPSE = "group:collapse",
110
114
  GROUP_DRAG_MULTI_END = "group:dragMultiEnd",
111
115
  GROUP_SELECTED = "group:selected",
116
+ GROUP_UNSELECTED = "group:unselected",
112
117
  GROUP_DRILL_DOWN = "group:drilldown",
113
118
  GROUP_DRILL_UP = "group:drillup",
114
- GROUP_RESET_DRILL = "group:resetDrill"
119
+ GROUP_RESET_DRILL = "group:resetDrill",
120
+ GROUP_CREATED = "group:created",
121
+ GROUP_UNGROUPED = "group:ungrouped"
115
122
  }
116
123
  export declare const AllEvent: {
117
124
  readonly GROUP_CLICK: GroupEventEnum.GROUP_CLICK;
@@ -135,9 +142,12 @@ export declare const AllEvent: {
135
142
  readonly GROUP_COLLAPSE: GroupEventEnum.GROUP_COLLAPSE;
136
143
  readonly GROUP_DRAG_MULTI_END: GroupEventEnum.GROUP_DRAG_MULTI_END;
137
144
  readonly GROUP_SELECTED: GroupEventEnum.GROUP_SELECTED;
145
+ readonly GROUP_UNSELECTED: GroupEventEnum.GROUP_UNSELECTED;
138
146
  readonly GROUP_DRILL_DOWN: GroupEventEnum.GROUP_DRILL_DOWN;
139
147
  readonly GROUP_DRILL_UP: GroupEventEnum.GROUP_DRILL_UP;
140
148
  readonly GROUP_RESET_DRILL: GroupEventEnum.GROUP_RESET_DRILL;
149
+ readonly GROUP_CREATED: GroupEventEnum.GROUP_CREATED;
150
+ readonly GROUP_UNGROUPED: GroupEventEnum.GROUP_UNGROUPED;
141
151
  readonly EDGE_CLICK: EdgeEventEnum.EDGE_CLICK;
142
152
  readonly EDGE_DBLCLICK: EdgeEventEnum.EDGE_DBLCLICK;
143
153
  readonly EDGE_POINTER_OVER: EdgeEventEnum.EDGE_POINTER_OVER;
@@ -153,6 +163,7 @@ export declare const AllEvent: {
153
163
  readonly EDGE_DRAG_LEAVE: EdgeEventEnum.EDGE_DRAG_LEAVE;
154
164
  readonly EDGE_DROP: EdgeEventEnum.EDGE_DROP;
155
165
  readonly EDGE_SELECTED: EdgeEventEnum.EDGE_SELECTED;
166
+ readonly EDGE_UNSELECTED: EdgeEventEnum.EDGE_UNSELECTED;
156
167
  readonly NODE_CLICK: NodeEventEnum.NODE_CLICK;
157
168
  readonly NODE_DBLCLICK: NodeEventEnum.NODE_DBLCLICK;
158
169
  readonly NODE_POINTER_OVER: NodeEventEnum.NODE_POINTER_OVER;
@@ -171,6 +182,7 @@ export declare const AllEvent: {
171
182
  readonly NODE_DRAG_LEAVE: NodeEventEnum.NODE_DRAG_LEAVE;
172
183
  readonly NODE_DROP: NodeEventEnum.NODE_DROP;
173
184
  readonly NODE_SELECTED: NodeEventEnum.NODE_SELECTED;
185
+ readonly NODE_UNSELECTED: NodeEventEnum.NODE_UNSELECTED;
174
186
  readonly NODE_DRAG_MULTI_END: NodeEventEnum.NODE_DRAG_MULTI_END;
175
187
  readonly GRAPH_BEFORE_CANVAS_INIT: GraphEventEnum.GRAPH_BEFORE_CANVAS_INIT;
176
188
  readonly GRAPH_AFTER_CANVAS_INIT: GraphEventEnum.GRAPH_AFTER_CANVAS_INIT;
@@ -199,6 +211,8 @@ export declare const AllEvent: {
199
211
  readonly GRAPH_BEFORE_DESTROY: GraphEventEnum.GRAPH_BEFORE_DESTROY;
200
212
  readonly GRAPH_AFTER_DESTROY: GraphEventEnum.GRAPH_AFTER_DESTROY;
201
213
  readonly GRAPH_BEFORE_BRUSH_SELECT: GraphEventEnum.GRAPH_BEFORE_BRUSH_SELECT;
214
+ readonly GRAPH_AFTER_BRUSH_SELECT: GraphEventEnum.GRAPH_AFTER_BRUSH_SELECT;
215
+ readonly GRAPH_SELECTION_CLEARED: GraphEventEnum.GRAPH_SELECTION_CLEARED;
202
216
  readonly GRAPH_VIEWPORT_CHANGE: GraphEventEnum.GRAPH_VIEWPORT_CHANGE;
203
217
  readonly CANVAS_CLICK: CanvasEventEnum.CANVAS_CLICK;
204
218
  readonly CANVAS_DBLCLICK: CanvasEventEnum.CANVAS_DBLCLICK;
@@ -1 +1 @@
1
- {"version":3,"file":"event.model.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/model/event.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.model.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/model/event.model.ts"],"names":[],"mappings":"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"}
@@ -97,4 +97,26 @@ export type GroupEventData = {
97
97
  ids: ID | ID[];
98
98
  type: string;
99
99
  };
100
+ export interface GroupCreatedEventData {
101
+ groupId: ID;
102
+ groupData: GroupData;
103
+ affectedElementIds: ID[];
104
+ previousParentIds: Map<ID, ID | undefined>;
105
+ sharedParentId?: ID | null;
106
+ lcaResult?: {
107
+ id: ID | null;
108
+ depth: number;
109
+ path: ID[];
110
+ };
111
+ timestamp: number;
112
+ operationId: string;
113
+ }
114
+ export interface GroupUngroupedEventData {
115
+ groupIds: ID[];
116
+ ungroupedData: GroupData[];
117
+ affectedElementIds: ID[];
118
+ newParentIds: Map<ID, ID | undefined>;
119
+ timestamp: number;
120
+ operationId: string;
121
+ }
100
122
  //# sourceMappingURL=group.model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"group.model.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/model/group.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,EAAE,CAAC;IACP,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,GACxE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAEhB,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,EAAE,CAAC;IACd,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACH,WAAW,CAAC,EAAE;QACZ,iDAAiD;QACjD,OAAO,CAAC,EAAE,mBAAmB,CAAC;QAC9B,oCAAoC;QACpC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;QAC/B,0CAA0C;QAC1C,MAAM,CAAC,EAAE,mBAAmB,CAAC;QAC7B,oCAAoC;QACpC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;KAChC,CAAC;CACH;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAE7E,MAAM,MAAM,SAAS,GAAG,cAAc,GAAG,YAAY,GAAG,cAAc,CAAC;AAEvE,MAAM,WAAW,UAAW,SAAQ,WAAW;IAC7C,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC1D,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;CAC1C;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
1
+ {"version":3,"file":"group.model.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/model/group.model.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  export type CommonState = 'default' | 'active' | 'selected' | 'disabled' | 'readonly';
2
- export type NodeState = CommonState | FixElementState;
3
- export type EdgeState = CommonState | FixElementState;
4
- export type GroupState = CommonState | FixElementState;
2
+ export type ElementManagementState = 'locked' | 'frozen' | 'hidden';
3
+ export type GroupManagementState = 'collapsed';
4
+ export type NodeState = CommonState | FixElementState | ElementManagementState;
5
+ export type EdgeState = CommonState | FixElementState | ElementManagementState;
6
+ export type GroupState = CommonState | FixElementState | ElementManagementState | GroupManagementState;
5
7
  export type FixElementState = 'fixed';
6
8
  export type MxNodeState = NodeState;
7
9
  //# sourceMappingURL=state.model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.model.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/model/state.model.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,QAAQ,GACR,UAAU,GACV,UAAU,GACV,UAAU,CAAC;AAEf,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,eAAe,CAAC;AAEtD,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,eAAe,CAAC;AAEtD,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,eAAe,CAAC;AAGvD,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC;AAGtC,MAAM,MAAM,WAAW,GAAG,SAAS,CAAC"}
1
+ {"version":3,"file":"state.model.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/model/state.model.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,QAAQ,GACR,UAAU,GACV,UAAU,GACV,UAAU,CAAC;AAGf,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,WAAW,CAAC;AAE/C,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,eAAe,GAAG,sBAAsB,CAAC;AAE/E,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,eAAe,GAAG,sBAAsB,CAAC;AAE/E,MAAM,MAAM,UAAU,GAClB,WAAW,GACX,eAAe,GACf,sBAAsB,GACtB,oBAAoB,CAAC;AAGzB,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC;AAGtC,MAAM,MAAM,WAAW,GAAG,SAAS,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { ID } from '@antv/g6';
2
+ export interface BoundingBox {
3
+ x: number;
4
+ y: number;
5
+ width: number;
6
+ height: number;
7
+ }
8
+ export interface ElementBounds {
9
+ id: ID;
10
+ x: number;
11
+ y: number;
12
+ width?: number;
13
+ height?: number;
14
+ }
15
+ /**
16
+ * Calculates the bounding box that encompasses all given elements
17
+ */
18
+ export declare function calculateBoundingBox(elements: ElementBounds[]): BoundingBox | null;
19
+ /**
20
+ * Updates bounding box with padding
21
+ */
22
+ export declare function applyPadding(bbox: BoundingBox, padding: number): BoundingBox;
23
+ /**
24
+ * Merges multiple bounding boxes into one
25
+ */
26
+ export declare function mergeBoundingBoxes(boxes: BoundingBox[]): BoundingBox | null;
27
+ //# sourceMappingURL=bounding-box.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bounding-box.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/utils/bounding-box.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAE9B,MAAM,WAAW,WAAW;IAC1B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,EAAE,CAAC;IACP,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,aAAa,EAAE,GACxB,WAAW,GAAG,IAAI,CA4BpB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,CAO5E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,WAAW,GAAG,IAAI,CAc3E"}
@@ -0,0 +1,51 @@
1
+ import { ID } from '@antv/g6';
2
+ import { ElementType } from '../model';
3
+ export declare const MAX_GROUP_DEPTH = 5;
4
+ export type ElementState = 'locked' | 'frozen' | 'hidden' | 'collapsed' | 'normal';
5
+ export interface ValidationResult {
6
+ isValid: boolean;
7
+ error?: string;
8
+ }
9
+ export interface ElementWithState {
10
+ id: ID;
11
+ type: ElementType;
12
+ state?: ElementState;
13
+ parentId?: ID;
14
+ }
15
+ /**
16
+ * Validates minimum selection requirement for group creation
17
+ */
18
+ export declare function validateMinimumSelection(elementIds: ID[]): ValidationResult;
19
+ /**
20
+ * Validates element states for group operations
21
+ */
22
+ export declare function validateElementStates(elements: ElementWithState[], operation: 'create' | 'ungroup'): ValidationResult;
23
+ /**
24
+ * Checks if elements have parent-child relationship
25
+ */
26
+ export declare function hasParentChildRelationship(elements: ElementWithState[], getAncestors: (id: ID) => ID[]): boolean;
27
+ /**
28
+ * Validates that selection doesn't include parent-child relationships
29
+ */
30
+ export declare function validateParentChildRelationships(elements: ElementWithState[], getAncestors: (id: ID) => ID[]): ValidationResult;
31
+ /**
32
+ * Calculates the depth of an element in the hierarchy
33
+ */
34
+ export declare function calculateElementDepth(elementId: ID, getParent: (id: ID) => ID | undefined): number;
35
+ /**
36
+ * Calculates maximum depth after group operation
37
+ */
38
+ export declare function calculateMaxDepthAfterGrouping(selectedElements: ElementWithState[], lcaDepth: number, getDescendants: (id: ID) => ElementWithState[]): number;
39
+ /**
40
+ * Validates depth limit for group operation
41
+ */
42
+ export declare function validateDepthLimit(selectedElements: ElementWithState[], lcaDepth: number, getDescendants: (id: ID) => ElementWithState[]): ValidationResult;
43
+ /**
44
+ * Validates complete group selection (no partial selection)
45
+ */
46
+ export declare function validateCompleteGroupSelection(selectedIds: Set<ID>, getChildren: (id: ID) => ID[]): ValidationResult;
47
+ /**
48
+ * Validates that selection contains only groups for ungroup operation
49
+ */
50
+ export declare function validateGroupsOnly(elements: ElementWithState[]): ValidationResult;
51
+ //# sourceMappingURL=group-validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group-validation.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/utils/group-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,eAAO,MAAM,eAAe,IAAI,CAAC;AAGjC,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,EAAE,CAAC;IACP,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,QAAQ,CAAC,EAAE,EAAE,CAAC;CACf;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,EAAE,EAAE,GAAG,gBAAgB,CAQ3E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,SAAS,EAAE,QAAQ,GAAG,SAAS,GAC9B,gBAAgB,CAoClB;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAC7B,OAAO,CAeT;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAC7B,gBAAgB,CAQlB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,EAAE,EACb,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,SAAS,GACpC,MAAM,CAYR;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,gBAAgB,EAAE,gBAAgB,EAAE,EACpC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,gBAAgB,EAAE,GAC7C,MAAM,CAoDR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,gBAAgB,EAAE,gBAAgB,EAAE,EACpC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,gBAAgB,EAAE,GAC7C,gBAAgB,CAelB;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,EACpB,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAC5B,gBAAgB,CAgBlB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,gBAAgB,EAAE,GAC3B,gBAAgB,CAWlB"}
@@ -6,4 +6,7 @@ export * from './rect.helper';
6
6
  export * from './state.helper';
7
7
  export * from './theme.helper';
8
8
  export * from './tree.helper';
9
+ export * from './group-validation';
10
+ export * from './lca-calculation';
11
+ export * from './bounding-box';
9
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/core/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { ID } from '@antv/g6';
2
+ export interface LCAResult {
3
+ id: ID | null;
4
+ depth: number;
5
+ path: ID[];
6
+ }
7
+ /**
8
+ * Builds the path from root to the given element
9
+ * @param elementId - The element ID to build path for
10
+ * @param getParent - Function to get parent ID
11
+ * @param maxDepth - Safety limit to prevent infinite loops (default: MAX_GROUP_DEPTH)
12
+ */
13
+ export declare function buildParentPath(elementId: ID, getParent: (id: ID) => ID | undefined, maxDepth?: number): ID[];
14
+ /**
15
+ * Calculates the Lowest Common Ancestor of multiple elements.
16
+ *
17
+ * The returned LCA is the deepest common ancestor that will become
18
+ * the parent of a newly created group containing all selected elements.
19
+ *
20
+ * Path format: [root_ancestor, ..., parent, element]
21
+ * - paths[0][0] is the root-most ancestor
22
+ * - paths[0][length-1] is the element itself
23
+ */
24
+ export declare function calculateLCA(elementIds: ID[], getParent: (id: ID) => ID | undefined): LCAResult;
25
+ /**
26
+ * Cache for parent paths to optimize repeated LCA calculations
27
+ */
28
+ export declare class ParentPathCache {
29
+ private getParent;
30
+ private cache;
31
+ constructor(getParent: (id: ID) => ID | undefined);
32
+ getPath(elementId: ID): ID[];
33
+ clear(): void;
34
+ invalidate(elementIds: ID[]): void;
35
+ }
36
+ //# sourceMappingURL=lca-calculation.d.ts.map