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

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moxa/graph",
3
- "version": "3.0.0-beta.12",
3
+ "version": "3.0.0-beta.13",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://gitlab.com/moxa/sw/f2e/one/one-moxa-vizion"
@@ -1 +1 @@
1
- {"version":3,"file":"command-filter.d.ts","sourceRoot":"","sources":["../../../../../libs/graph/src/plugins/history/config/command-filter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAIL,OAAO,EAGR,MAAM,UAAU,CAAC;AAMlB,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAyCtC,eAAO,MAAM,mBAAmB,GAAI,KAAK,OAAO,KAAG,OAII,CAAC"}
1
+ {"version":3,"file":"command-filter.d.ts","sourceRoot":"","sources":["../../../../../libs/graph/src/plugins/history/config/command-filter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAIL,OAAO,EAGR,MAAM,UAAU,CAAC;AAMlB,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAyCtC,eAAO,MAAM,mBAAmB,GAAI,KAAK,OAAO,KAAG,OAKtB,CAAC"}
@@ -0,0 +1,88 @@
1
+ import { HullConfig, UpdateHullOptions } from './hull.model';
2
+ /**
3
+ * Hull event names
4
+ */
5
+ export declare enum HullEventEnum {
6
+ /** Fired when a hull is created */
7
+ HULL_CREATED = "hull:created",
8
+ /** Fired when a hull is updated */
9
+ HULL_UPDATED = "hull:updated",
10
+ /** Fired when a hull is removed */
11
+ HULL_REMOVED = "hull:removed"
12
+ }
13
+ /**
14
+ * Base hull event payload
15
+ */
16
+ export interface BaseHullEventPayload {
17
+ /** Hull key */
18
+ key: string;
19
+ /** Timestamp of the event */
20
+ timestamp: number;
21
+ /** Unique operation ID for tracking */
22
+ operationId: string;
23
+ }
24
+ /**
25
+ * Hull created event payload
26
+ */
27
+ export interface HullCreatedEventPayload extends BaseHullEventPayload {
28
+ /** Full hull configuration */
29
+ hullConfig: HullConfig;
30
+ /** Node IDs affected by this operation */
31
+ affectedNodeIds: string[];
32
+ }
33
+ /**
34
+ * Hull updated event payload
35
+ */
36
+ export interface HullUpdatedEventPayload extends BaseHullEventPayload {
37
+ /** Previous hull configuration */
38
+ previousConfig: HullConfig;
39
+ /** Updated hull configuration */
40
+ updatedConfig: HullConfig;
41
+ /** Update options applied */
42
+ updateOptions: UpdateHullOptions;
43
+ /** Node IDs affected by this operation */
44
+ affectedNodeIds: string[];
45
+ }
46
+ /**
47
+ * Hull removed event payload
48
+ */
49
+ export interface HullRemovedEventPayload extends BaseHullEventPayload {
50
+ /** Hull configuration that was removed */
51
+ removedConfig: HullConfig;
52
+ /** Node IDs that were in the hull */
53
+ affectedNodeIds: string[];
54
+ }
55
+ /**
56
+ * Union type of all hull event payloads
57
+ */
58
+ export type HullEventPayload = HullCreatedEventPayload | HullUpdatedEventPayload | HullRemovedEventPayload;
59
+ /**
60
+ * Generate a unique operation ID
61
+ * @param operation - Operation type
62
+ * @returns Unique operation ID
63
+ */
64
+ export declare function generateOperationId(operation: string): string;
65
+ /**
66
+ * Create hull created event payload
67
+ * @param key - Hull key
68
+ * @param hullConfig - Hull configuration
69
+ * @returns Event payload
70
+ */
71
+ export declare function createHullCreatedPayload(key: string, hullConfig: HullConfig): HullCreatedEventPayload;
72
+ /**
73
+ * Create hull updated event payload
74
+ * @param key - Hull key
75
+ * @param previousConfig - Previous hull configuration
76
+ * @param updatedConfig - Updated hull configuration
77
+ * @param updateOptions - Update options
78
+ * @returns Event payload
79
+ */
80
+ export declare function createHullUpdatedPayload(key: string, previousConfig: HullConfig, updatedConfig: HullConfig, updateOptions: UpdateHullOptions): HullUpdatedEventPayload;
81
+ /**
82
+ * Create hull removed event payload
83
+ * @param key - Hull key
84
+ * @param removedConfig - Removed hull configuration
85
+ * @returns Event payload
86
+ */
87
+ export declare function createHullRemovedPayload(key: string, removedConfig: HullConfig): HullRemovedEventPayload;
88
+ //# sourceMappingURL=hull-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hull-events.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/plugins/hull/hull-events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAMlE;;GAEG;AACH,oBAAY,aAAa;IACvB,mCAAmC;IACnC,YAAY,iBAAiB;IAC7B,mCAAmC;IACnC,YAAY,iBAAiB;IAC7B,mCAAmC;IACnC,YAAY,iBAAiB;CAC9B;AAMD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,eAAe;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,8BAA8B;IAC9B,UAAU,EAAE,UAAU,CAAC;IACvB,0CAA0C;IAC1C,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,kCAAkC;IAClC,cAAc,EAAE,UAAU,CAAC;IAC3B,iCAAiC;IACjC,aAAa,EAAE,UAAU,CAAC;IAC1B,6BAA6B;IAC7B,aAAa,EAAE,iBAAiB,CAAC;IACjC,0CAA0C;IAC1C,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,0CAA0C;IAC1C,aAAa,EAAE,UAAU,CAAC;IAC1B,qCAAqC;IACrC,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,uBAAuB,GACvB,uBAAuB,GACvB,uBAAuB,CAAC;AAM5B;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,UAAU,GACrB,uBAAuB,CAQzB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,UAAU,EAC1B,aAAa,EAAE,UAAU,EACzB,aAAa,EAAE,iBAAiB,GAC/B,uBAAuB,CAkBzB;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,UAAU,GACxB,uBAAuB,CAQzB"}
@@ -0,0 +1,154 @@
1
+ import { Graph as G6Graph } from '@antv/g6';
2
+ import { ComboData } from '@antv/g6/lib/spec';
3
+ import { HullConfig } from './hull.model';
4
+ /**
5
+ * Hull metadata stored in combo data
6
+ */
7
+ export interface HullMetadataData {
8
+ /** Marker to identify this as hull metadata */
9
+ _isHullMetadata: true;
10
+ /** Hull key */
11
+ hullKey: string;
12
+ /** Full hull configuration */
13
+ hullConfig: HullConfig;
14
+ }
15
+ /**
16
+ * Hull metadata combo (G6 ComboData with hull metadata)
17
+ */
18
+ export interface HullMetadataCombo extends ComboData {
19
+ id: string;
20
+ data: HullMetadataData & Record<string, any>;
21
+ style?: {
22
+ visibility: 'hidden';
23
+ [key: string]: any;
24
+ };
25
+ }
26
+ /**
27
+ * Generate metadata combo ID from hull key
28
+ * @param hullKey - Hull key
29
+ * @returns Metadata combo ID
30
+ */
31
+ export declare function getHullMetadataComboId(hullKey: string): string;
32
+ /**
33
+ * Extract hull key from metadata combo ID
34
+ * @param comboId - Metadata combo ID
35
+ * @returns Hull key or undefined if not a metadata combo
36
+ */
37
+ export declare function extractHullKeyFromComboId(comboId: string): string | undefined;
38
+ /**
39
+ * Check if a combo ID is a hull metadata combo
40
+ * @param comboId - Combo ID to check
41
+ * @returns Whether this is a hull metadata combo ID
42
+ */
43
+ export declare function isHullMetadataComboId(comboId: string): boolean;
44
+ /**
45
+ * Check if combo data is hull metadata
46
+ * @param comboData - Combo data to check
47
+ * @returns Whether this is hull metadata
48
+ */
49
+ export declare function isHullMetadataCombo(comboData: ComboData | any): comboData is HullMetadataCombo;
50
+ /**
51
+ * Create a hidden metadata combo for a hull
52
+ * @param hullConfig - Hull configuration
53
+ * @returns Metadata combo data
54
+ *
55
+ * @example
56
+ * ```typescript
57
+ * const metadataCombo = createHullMetadataCombo({
58
+ * key: 'zone-a',
59
+ * members: ['node1', 'node2'],
60
+ * style: { fill: '#4CAF50' },
61
+ * });
62
+ *
63
+ * g6Graph.addCombo(metadataCombo); // G6 history automatically records this
64
+ * ```
65
+ */
66
+ export declare function createHullMetadataCombo(hullConfig: HullConfig): HullMetadataCombo;
67
+ /**
68
+ * Update metadata combo for a hull
69
+ * @param g6Graph - G6 graph instance
70
+ * @param hullKey - Hull key
71
+ * @param hullConfig - Updated hull configuration
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * updateHullMetadataCombo(g6Graph, 'zone-a', {
76
+ * key: 'zone-a',
77
+ * members: ['node1', 'node2', 'node3'], // Updated members
78
+ * style: { fill: '#FF5722' }, // Updated style
79
+ * });
80
+ * ```
81
+ */
82
+ export declare function updateHullMetadataCombo(g6Graph: G6Graph, hullKey: string, hullConfig: HullConfig): void;
83
+ /**
84
+ * Remove metadata combo for a hull
85
+ * @param g6Graph - G6 graph instance
86
+ * @param hullKey - Hull key
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * removeHullMetadataCombo(g6Graph, 'zone-a');
91
+ * ```
92
+ */
93
+ export declare function removeHullMetadataCombo(g6Graph: G6Graph, hullKey: string): void;
94
+ /**
95
+ * Check if metadata combo exists for a hull
96
+ * @param g6Graph - G6 graph instance
97
+ * @param hullKey - Hull key
98
+ * @returns Whether metadata combo exists
99
+ */
100
+ export declare function hasHullMetadataCombo(g6Graph: G6Graph, hullKey: string): boolean;
101
+ /**
102
+ * Get metadata combo for a hull
103
+ * @param g6Graph - G6 graph instance
104
+ * @param hullKey - Hull key
105
+ * @returns Metadata combo or undefined if not found
106
+ */
107
+ export declare function getHullMetadataCombo(g6Graph: G6Graph, hullKey: string): HullMetadataCombo | undefined;
108
+ /**
109
+ * Get all hull metadata from graph
110
+ * @param g6Graph - G6 graph instance
111
+ * @returns Map of hull key to hull config
112
+ *
113
+ * @example
114
+ * ```typescript
115
+ * const metadata = getHullMetadataFromGraph(g6Graph);
116
+ * // Map { 'zone-a' => { key: 'zone-a', members: [...], ... } }
117
+ * ```
118
+ */
119
+ export declare function getHullMetadataFromGraph(g6Graph: G6Graph): Map<string, HullConfig>;
120
+ /**
121
+ * Get all hull keys from metadata
122
+ * @param g6Graph - G6 graph instance
123
+ * @returns Array of hull keys
124
+ */
125
+ export declare function getAllHullKeysFromMetadata(g6Graph: G6Graph): string[];
126
+ /**
127
+ * Synchronize hull plugins from metadata combos
128
+ *
129
+ * This is the core synchronization function called after undo/redo.
130
+ * It ensures that hull plugins match the metadata combos in the graph.
131
+ *
132
+ * @param g6Graph - G6 graph instance
133
+ *
134
+ * @example
135
+ * ```typescript
136
+ * // After undo/redo
137
+ * g6Graph.on('afterrender', () => {
138
+ * syncHullPluginsFromMetadata(g6Graph);
139
+ * });
140
+ * ```
141
+ */
142
+ export declare function syncHullPluginsFromMetadata(g6Graph: G6Graph): void;
143
+ /**
144
+ * Clear all hull metadata combos from graph
145
+ * @param g6Graph - G6 graph instance
146
+ *
147
+ * @example
148
+ * ```typescript
149
+ * // During graph cleanup
150
+ * clearAllHullMetadata(g6Graph);
151
+ * ```
152
+ */
153
+ export declare function clearAllHullMetadata(g6Graph: G6Graph): void;
154
+ //# sourceMappingURL=hull-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hull-metadata.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/plugins/hull/hull-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAoB/C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+CAA+C;IAC/C,eAAe,EAAE,IAAI,CAAC;IACtB,eAAe;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,UAAU,EAAE,UAAU,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7C,KAAK,CAAC,EAAE;QACN,UAAU,EAAE,QAAQ,CAAC;QACrB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAMD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAK7E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE9D;AAMD;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,SAAS,GAAG,GAAG,GACzB,SAAS,IAAI,iBAAiB,CAMhC;AAMD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,UAAU,GACrB,iBAAiB,CAcnB;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,UAAU,GACrB,IAAI,CAaN;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,GACd,IAAI,CAGN;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,GACd,OAAO,CAIT;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,GACd,iBAAiB,GAAG,SAAS,CAS/B;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,GACf,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAYzB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,CAErE;AAwFD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2ElE;AAqCD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS3D"}
@@ -0,0 +1,155 @@
1
+ import { Hull as G6Hull, HullOptions as G6HullOptions } from '@antv/g6';
2
+ /** @hidden */
3
+ export type Hull = G6Hull;
4
+ /**
5
+ * Style options for Hull appearance
6
+ */
7
+ export interface HullStyleOptions {
8
+ /**
9
+ * Fill color of the hull
10
+ * @defaultValue 'lightblue'
11
+ */
12
+ fill?: string;
13
+ /**
14
+ * Fill opacity of the hull (0-1)
15
+ * @defaultValue 0.2
16
+ */
17
+ fillOpacity?: number;
18
+ /**
19
+ * Stroke color of the hull border
20
+ * @defaultValue 'blue'
21
+ */
22
+ stroke?: string;
23
+ /**
24
+ * Stroke opacity of the hull border (0-1)
25
+ * @defaultValue 0.2
26
+ */
27
+ strokeOpacity?: number;
28
+ /**
29
+ * Line width of the hull border
30
+ * @defaultValue 1
31
+ */
32
+ lineWidth?: number;
33
+ }
34
+ /**
35
+ * Options for removing a hull
36
+ */
37
+ export interface RemoveHullOptions {
38
+ /**
39
+ * Confirm the removal operation
40
+ * Required unless force is true
41
+ */
42
+ confirm?: boolean;
43
+ /**
44
+ * Force removal without confirmation
45
+ * Use for programmatic operations
46
+ */
47
+ force?: boolean;
48
+ }
49
+ /**
50
+ * Options for removing a hull with its members
51
+ */
52
+ export interface RemoveHullWithMembersOptions {
53
+ /**
54
+ * Confirm the removal operation
55
+ * Required because this is a destructive operation
56
+ */
57
+ confirm: boolean;
58
+ }
59
+ /**
60
+ * Hull plugin options
61
+ */
62
+ export interface HullOptions extends G6HullOptions {
63
+ /**
64
+ * Unique key for the hull
65
+ * Required for multi-hull support
66
+ */
67
+ key: string;
68
+ /**
69
+ * Node IDs to include in the hull
70
+ */
71
+ members: string[];
72
+ /**
73
+ * Style options for the hull
74
+ */
75
+ style?: HullStyleOptions;
76
+ /**
77
+ * Padding between the hull outline and member nodes
78
+ * @defaultValue 10
79
+ */
80
+ padding?: number;
81
+ /**
82
+ * Corner type for the hull outline
83
+ * @defaultValue 'rounded'
84
+ */
85
+ corner?: 'rounded' | 'smooth' | 'sharp';
86
+ /**
87
+ * Concavity level. Higher values mean less indentation.
88
+ * Infinity creates a convex hull
89
+ * @defaultValue Infinity
90
+ */
91
+ concavity?: number;
92
+ }
93
+ /**
94
+ * Options for updating a hull (all fields optional except those being updated)
95
+ */
96
+ export interface UpdateHullOptions {
97
+ /**
98
+ * New members for the hull
99
+ */
100
+ members?: string[];
101
+ /**
102
+ * Style updates
103
+ */
104
+ style?: Partial<HullStyleOptions>;
105
+ /**
106
+ * Padding update
107
+ */
108
+ padding?: number;
109
+ /**
110
+ * Corner style update
111
+ */
112
+ corner?: 'rounded' | 'smooth' | 'sharp';
113
+ /**
114
+ * Concavity update
115
+ */
116
+ concavity?: number;
117
+ /**
118
+ * Line dash pattern update
119
+ */
120
+ lineDash?: number[];
121
+ }
122
+ /**
123
+ * Hull configuration returned by getHull/getAllHulls
124
+ */
125
+ export interface HullConfig {
126
+ /**
127
+ * Unique key for the hull
128
+ */
129
+ key: string;
130
+ /**
131
+ * Node IDs included in the hull
132
+ */
133
+ members: string[];
134
+ /**
135
+ * Style options for the hull
136
+ */
137
+ style?: HullStyleOptions;
138
+ /**
139
+ * Padding between the hull outline and member nodes
140
+ */
141
+ padding?: number;
142
+ /**
143
+ * Corner type for the hull outline
144
+ */
145
+ corner?: 'rounded' | 'smooth' | 'sharp';
146
+ /**
147
+ * Concavity level
148
+ */
149
+ concavity?: number;
150
+ /**
151
+ * Line dash pattern
152
+ */
153
+ lineDash?: number[];
154
+ }
155
+ //# sourceMappingURL=hull.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hull.model.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/plugins/hull/hull.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,UAAU,CAAC;AAExE,cAAc;AACd,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IAExC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAElC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IAExC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IAExC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB"}
@@ -0,0 +1,90 @@
1
+ import { Graph as G6Graph, HullOptions as G6HullOptions } from '@antv/g6';
2
+ import { PluginFunction } from '../../core/model';
3
+ import { HullConfig, HullOptions, RemoveHullOptions, RemoveHullWithMembersOptions, UpdateHullOptions } from './hull.model';
4
+ export type { HullConfig, HullOptions, HullStyleOptions, RemoveHullOptions, RemoveHullWithMembersOptions, UpdateHullOptions, } from './hull.model';
5
+ export { createHullMetadataCombo, updateHullMetadataCombo, removeHullMetadataCombo, getHullMetadataCombo, hasHullMetadataCombo, getHullMetadataFromGraph, getAllHullKeysFromMetadata, syncHullPluginsFromMetadata, clearAllHullMetadata, getHullMetadataComboId, extractHullKeyFromComboId, isHullMetadataComboId, isHullMetadataCombo, } from './hull-metadata';
6
+ export type { HullMetadataData, HullMetadataCombo } from './hull-metadata';
7
+ export { HullEventEnum, generateOperationId, createHullCreatedPayload, createHullUpdatedPayload, createHullRemovedPayload, } from './hull-events';
8
+ export type { BaseHullEventPayload, HullCreatedEventPayload, HullUpdatedEventPayload, HullRemovedEventPayload, HullEventPayload, } from './hull-events';
9
+ /**
10
+ * Validate that members don't belong to other hulls
11
+ * @throws Error if a member already belongs to another hull
12
+ */
13
+ export declare function validateMembership(hullKey: string, members: string[]): void;
14
+ /**
15
+ * Register members to a hull
16
+ */
17
+ export declare function registerMembers(hullKey: string, members: string[]): void;
18
+ /**
19
+ * Unregister members from a hull
20
+ */
21
+ export declare function unregisterMembers(hullKey: string, members: string[]): void;
22
+ /**
23
+ * Unregister all members of a hull
24
+ */
25
+ export declare function unregisterAllMembers(hullKey: string): void;
26
+ /**
27
+ * Get the hull a node belongs to
28
+ * @returns Hull key or undefined if not in any hull
29
+ */
30
+ export declare function getNodeHull(nodeId: string): string | undefined;
31
+ /**
32
+ * Check if removal is confirmed
33
+ * @throws Error if confirmation is missing
34
+ */
35
+ export declare function validateRemoval(options?: RemoveHullOptions): void;
36
+ /**
37
+ * Check if removal with members is confirmed
38
+ * @throws Error if confirmation is missing
39
+ */
40
+ export declare function validateRemovalWithMembers(options?: RemoveHullWithMembersOptions): void;
41
+ /**
42
+ * Get hull plugin options by converting HullOptions to G6 HullOptions
43
+ */
44
+ export declare const getHullPluginOptions: PluginFunction<HullOptions, G6HullOptions>;
45
+ /**
46
+ * Clear all hull membership data
47
+ * Useful for cleanup during graph destruction
48
+ */
49
+ export declare function clearAllHullMembership(): void;
50
+ /**
51
+ * Add a hull to the graph
52
+ * @param g6Graph - The underlying G6 graph instance
53
+ * @param options - Hull configuration options
54
+ */
55
+ export declare function addHullToGraph(g6Graph: G6Graph, options: HullConfig): Promise<void>;
56
+ /**
57
+ * Remove a hull from the graph
58
+ * @param g6Graph - The underlying G6 graph instance
59
+ * @param key - Hull key to remove
60
+ * @param options - Removal options (requires confirmation)
61
+ */
62
+ export declare function removeHullFromGraph(g6Graph: G6Graph, key: string, options?: RemoveHullOptions): Promise<void>;
63
+ /**
64
+ * Remove multiple hulls from the graph in a single batch operation
65
+ * @param g6Graph - The underlying G6 graph instance
66
+ * @param keys - Hull keys to remove
67
+ * @param options - Removal options (requires confirmation)
68
+ */
69
+ export declare function removeBatchHullsFromGraph(g6Graph: G6Graph, keys: string[], options?: RemoveHullOptions): Promise<void>;
70
+ /**
71
+ * Update a hull in the graph
72
+ * @param g6Graph - The underlying G6 graph instance
73
+ * @param key - Hull key to update
74
+ * @param options - Partial hull options to update
75
+ */
76
+ export declare function updateHullInGraph(g6Graph: G6Graph, key: string, options: UpdateHullOptions): Promise<void>;
77
+ /**
78
+ * Get a hull configuration from the graph
79
+ * @param g6Graph - The underlying G6 graph instance
80
+ * @param key - Hull key to find
81
+ * @returns Hull config or undefined if not found
82
+ */
83
+ export declare function getHullFromGraph(g6Graph: any, key: string): HullConfig | undefined;
84
+ /**
85
+ * Get all hulls from the graph
86
+ * @param g6Graph - The underlying G6 graph instance
87
+ * @returns Array of all hull configurations
88
+ */
89
+ export declare function getAllHullsFromGraph(g6Graph: any): HullConfig[];
90
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/plugins/hull/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAc7C,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,iBAAiB,EACjB,4BAA4B,EAC5B,iBAAiB,EAClB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,4BAA4B,EAC5B,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,EAC3B,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAG3E,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAiCvB;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAU3E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAKxE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAM1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAM1D;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE9D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAOjE;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,CAAC,EAAE,4BAA4B,GACrC,IAAI,CAQN;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,cAAc,CAC/C,WAAW,EACX,aAAa,CAyCd,CAAC;AAEF;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AA0ED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAiCf;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,IAAI,CAAC,CA4Cf;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAkEf;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,GAAG,EACZ,GAAG,EAAE,MAAM,GACV,UAAU,GAAG,SAAS,CAWxB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,UAAU,EAAE,CAY/D"}
@@ -4,6 +4,7 @@ export * from './fixed-toolbar';
4
4
  export * from './graph-background';
5
5
  export * from './history';
6
6
  export * from './minimap';
7
+ export * from './hull';
7
8
  export * from './rich-tooltip';
8
9
  export * from './snapline';
9
10
  export * from './tooltip';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../libs/graph/src/plugins/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../libs/graph/src/plugins/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
@@ -20,6 +20,7 @@ export declare const PLUGIN_FACTORIES: {
20
20
  graphBackground: import('../../core/model').PluginFunction<import('../../plugins/graph-background').GraphBackgroundOptions, import('../../plugins/graph-background').GraphBackgroundOptions>;
21
21
  history: import('../../core/model').PluginFunction<import('@antv/g6').HistoryOptions, import('@antv/g6').HistoryOptions>;
22
22
  minimap: import('../../core/model').PluginFunction<import('../../plugins/minimap').MinimapOptions, import('../../plugins/minimap').MinimapOptions>;
23
+ hull: import('../../core/model').PluginFunction<import('../../plugins/hull').HullOptions, import('@antv/g6').HullOptions>;
23
24
  richTooltip: import('../../core/model').PluginFunction<import('../../plugins/rich-tooltip').RichTooltipOptions, import('@antv/g6').ContextmenuOptions>;
24
25
  snapline: import('../../core/model').PluginFunction<import('../../plugins/snapline').ExtendedSnaplineOptions, import('../../plugins/snapline').ExtendedSnaplineOptions>;
25
26
  tooltip: import('../../core/model').PluginFunction<import('../../plugins/tooltip').TooltipOptions, import('@antv/g6').ContextmenuOptions>;
@@ -35,7 +36,7 @@ export declare const transformPlugins: (plugins?: UserPlugin[], context?: Transf
35
36
  /**
36
37
  * Create custom plugin transformer
37
38
  */
38
- export declare const createPluginTransformer: (pluginType: Plugin, graph?: any, options?: any) => import('@antv/g6').HistoryOptions | import('@antv/g6').ContextmenuOptions | import('../../plugins/element-toolbar').ElementToolbarOptions | import('../../plugins/fixed-toolbar').FixedToolbarOptions | import('../../plugins/graph-background').GraphBackgroundOptions | import('../../plugins/minimap').MinimapOptions | import('../../plugins/snapline').ExtendedSnaplineOptions | null;
39
+ export declare const createPluginTransformer: (pluginType: Plugin, graph?: any, options?: any) => import('@antv/g6').HistoryOptions | import('@antv/g6').HullOptions | import('@antv/g6').ContextmenuOptions | import('../../plugins/element-toolbar').ElementToolbarOptions | import('../../plugins/fixed-toolbar').FixedToolbarOptions | import('../../plugins/graph-background').GraphBackgroundOptions | import('../../plugins/minimap').MinimapOptions | import('../../plugins/snapline').ExtendedSnaplineOptions | null;
39
40
  /**
40
41
  * Register custom plugin factory
41
42
  */
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-transform.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/shared/transforms/plugin-transform.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,MAAM,EACN,YAAY,EACZ,UAAU,EACX,MAAM,aAAa,CAAC;AAUrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,gBAAgB;;GAAsC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,eAAe,UAK3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;CAU5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,UAAU,EAClB,UAAU,gBAAgB,KACzB,GAYF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,UAAU,UAAU,EAAE,EACtB,UAAU,gBAAgB,KACzB,GA0BF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAClC,YAAY,MAAM,EAClB,QAAQ,GAAG,EACX,UAAU,GAAG,sWAId,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,YAAY,MAAM,EAClB,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,GAAG,SAG7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,YAAY,MAAM,KAAG,OAEvD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,QAAO,MAAM,EAE7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,UAAU,KAAG,OAUzD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,GACpC,SAAS,YAAY,KACpB,UAAU,EA4CZ,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yBAAyB,GAAI,SAAS,GAAG,EAAE,KAAG,YAoB1D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,OAAO,GAAG,EAAE,SAAS,UAAU,EAAE,UAE3D,CAAC"}
1
+ {"version":3,"file":"plugin-transform.d.ts","sourceRoot":"","sources":["../../../../libs/graph/src/shared/transforms/plugin-transform.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,MAAM,EACN,YAAY,EACZ,UAAU,EACX,MAAM,aAAa,CAAC;AAWrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,gBAAgB;;GAAsC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,eAAe,UAK3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;CAW5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,UAAU,EAClB,UAAU,gBAAgB,KACzB,GAYF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,UAAU,UAAU,EAAE,EACtB,UAAU,gBAAgB,KACzB,GA0BF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAClC,YAAY,MAAM,EAClB,QAAQ,GAAG,EACX,UAAU,GAAG,uYAId,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,YAAY,MAAM,EAClB,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,GAAG,SAG7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,YAAY,MAAM,KAAG,OAEvD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,QAAO,MAAM,EAE7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,UAAU,KAAG,OAUzD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,GACpC,SAAS,YAAY,KACpB,UAAU,EA6CZ,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yBAAyB,GAAI,SAAS,GAAG,EAAE,KAAG,YAoB1D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,OAAO,GAAG,EAAE,SAAS,UAAU,EAAE,UAE3D,CAAC"}