@principal-ai/principal-view-react 0.16.22 → 0.16.23
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/components/GraphRenderer.js.map +1 -1
- package/dist/graphify/consolidated.d.ts +170 -0
- package/dist/graphify/consolidated.d.ts.map +1 -0
- package/dist/graphify/consolidated.js +11 -0
- package/dist/graphify/consolidated.js.map +1 -0
- package/dist/graphify/index.d.ts +9 -0
- package/dist/graphify/index.d.ts.map +1 -0
- package/dist/graphify/index.js +8 -0
- package/dist/graphify/index.js.map +1 -0
- package/dist/graphify/types.d.ts +141 -0
- package/dist/graphify/types.d.ts.map +1 -0
- package/dist/graphify/types.js +8 -0
- package/dist/graphify/types.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/subsystem/SubsystemComponentGraph.d.ts +28 -0
- package/dist/subsystem/SubsystemComponentGraph.d.ts.map +1 -0
- package/dist/subsystem/SubsystemComponentGraph.js +365 -0
- package/dist/subsystem/SubsystemComponentGraph.js.map +1 -0
- package/dist/subsystem/model.d.ts +131 -0
- package/dist/subsystem/model.d.ts.map +1 -0
- package/dist/subsystem/model.js +296 -0
- package/dist/subsystem/model.js.map +1 -0
- package/dist/subsystem/nodes.d.ts +28 -0
- package/dist/subsystem/nodes.d.ts.map +1 -0
- package/dist/subsystem/nodes.js +230 -0
- package/dist/subsystem/nodes.js.map +1 -0
- package/dist/utils/elkLayout.d.ts +19 -0
- package/dist/utils/elkLayout.d.ts.map +1 -1
- package/dist/utils/elkLayout.js +72 -9
- package/dist/utils/elkLayout.js.map +1 -1
- package/package.json +3 -3
- package/src/components/GraphRenderer.tsx +2 -2
- package/src/graphify/consolidated.ts +202 -0
- package/src/graphify/index.ts +36 -0
- package/src/graphify/types.ts +164 -0
- package/src/index.ts +31 -0
- package/src/stories/SubsystemComponentGraph.stories.tsx +761 -0
- package/src/subsystem/SubsystemComponentGraph.tsx +585 -0
- package/src/subsystem/model.test.ts +81 -0
- package/src/subsystem/model.ts +434 -0
- package/src/subsystem/nodes.tsx +353 -0
- package/src/utils/elkLayout.ts +98 -9
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graphify consolidated / drill-down types.
|
|
3
|
+
*
|
|
4
|
+
* graphify stores the graph in flat, normalized form — class vs function vs
|
|
5
|
+
* type is NOT a node attribute (every code node is `file_type: "code"`); it is
|
|
6
|
+
* derived from graph structure. These types rebuild that structure from the raw
|
|
7
|
+
* edges so a UI can show a drill-down modal for a subsystem component or jump
|
|
8
|
+
* to its definition file.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import type {
|
|
12
|
+
GraphifyConfidence,
|
|
13
|
+
GraphifyFileType,
|
|
14
|
+
GraphifyRelation,
|
|
15
|
+
} from './types';
|
|
16
|
+
|
|
17
|
+
/** How a subsystem component resolved to a graphify node. */
|
|
18
|
+
export type GraphifyAnchorResolution = 'exact' | 'file-only' | 'ambiguous' | 'missing';
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* The bridge between a facet component and the graphify graph.
|
|
22
|
+
*
|
|
23
|
+
* `nodeId` is reconstructed from the component's `file` + `symbol` via the id
|
|
24
|
+
* slug scheme; `resolution` says how confident that reconstruction is.
|
|
25
|
+
* `source_file` + `source_location` are the "open the definition" primitive.
|
|
26
|
+
*/
|
|
27
|
+
export interface SubsystemGraphifyAnchor {
|
|
28
|
+
/** Resolved graphify node id. */
|
|
29
|
+
nodeId: string;
|
|
30
|
+
/** PURL of the repo the node lives in (pkg:github/owner/repo). */
|
|
31
|
+
purl: string;
|
|
32
|
+
/** How the anchor resolved — the honesty signal for verification. */
|
|
33
|
+
resolution: GraphifyAnchorResolution;
|
|
34
|
+
/** Human-readable node label from the graph. */
|
|
35
|
+
label: string;
|
|
36
|
+
/** Repo-relative path of the node's source file. */
|
|
37
|
+
source_file: string;
|
|
38
|
+
/** `L<line>` — the line of the definition for a file-open jump. */
|
|
39
|
+
source_location?: string;
|
|
40
|
+
/** Node classification from the graph. */
|
|
41
|
+
file_type: GraphifyFileType;
|
|
42
|
+
/** Leiden community id. */
|
|
43
|
+
community?: number | null;
|
|
44
|
+
/** Human-readable community label. */
|
|
45
|
+
community_name?: string;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// ---------------------------------------------------------------------------
|
|
49
|
+
// Leaf info types — each backed by a specific graphify edge pattern
|
|
50
|
+
// ---------------------------------------------------------------------------
|
|
51
|
+
|
|
52
|
+
/** A method on a class-like node (`method` edge from the class). */
|
|
53
|
+
export interface GraphifyMethodInfo {
|
|
54
|
+
/** The method's own node id. */
|
|
55
|
+
nodeId: string;
|
|
56
|
+
/** Display name from the label (`.get()` → `get`). */
|
|
57
|
+
name: string;
|
|
58
|
+
/** Parameter types from `references` edges with context `parameter_type`. */
|
|
59
|
+
parameters?: string[];
|
|
60
|
+
/** Return type from a `references` edge with context `return_type`. */
|
|
61
|
+
returnType?: string;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/** A property/field on a class- or type-like node. */
|
|
65
|
+
export interface GraphifyPropertyInfo {
|
|
66
|
+
/** Field name — present when graphify emits a `defines` node (C++). */
|
|
67
|
+
name: string;
|
|
68
|
+
/** Field type from a `references` edge with context `field`. */
|
|
69
|
+
type?: string;
|
|
70
|
+
/** The field's own node id when it exists (e.g. C++ `defines` nodes). */
|
|
71
|
+
nodeId?: string;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/** A single typed parameter of a function (`references` context `parameter_type`). */
|
|
75
|
+
export interface GraphifyParamInfo {
|
|
76
|
+
/** Parameter name — not captured by graphify; left undefined. */
|
|
77
|
+
name?: string;
|
|
78
|
+
/** Parameter type. */
|
|
79
|
+
type: string;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/** One call relationship, in either direction. */
|
|
83
|
+
export interface GraphifyCallInfo {
|
|
84
|
+
/** The other endpoint's node id (caller for `callers`, callee for `callees`). */
|
|
85
|
+
nodeId: string;
|
|
86
|
+
/** The other endpoint's display label. */
|
|
87
|
+
name: string;
|
|
88
|
+
/** `L<line>` of the call site. */
|
|
89
|
+
source_location?: string;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/** A type-name reference to a node (`references` edge with a context). */
|
|
93
|
+
export interface GraphifyReferenceInfo {
|
|
94
|
+
/** The referenced node id. */
|
|
95
|
+
nodeId: string;
|
|
96
|
+
/** The referenced node's display label. */
|
|
97
|
+
name: string;
|
|
98
|
+
/** Reference context (e.g. `type`, `field`, `generic_arg`, `attribute`). */
|
|
99
|
+
context?: string;
|
|
100
|
+
/** `L<line>` of the reference site. */
|
|
101
|
+
source_location?: string;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/** An import relationship (`imports` / `imports_from` / `re_exports`). */
|
|
105
|
+
export interface GraphifyImportInfo {
|
|
106
|
+
/** The imported module/file node id. */
|
|
107
|
+
nodeId: string;
|
|
108
|
+
/** The imported module/file label. */
|
|
109
|
+
name: string;
|
|
110
|
+
/** Which relation carried the import. */
|
|
111
|
+
relation?: GraphifyRelation;
|
|
112
|
+
/** `L<line>` of the import statement. */
|
|
113
|
+
source_location?: string;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
// ---------------------------------------------------------------------------
|
|
117
|
+
// Discriminated union — the drill-down payload
|
|
118
|
+
// ---------------------------------------------------------------------------
|
|
119
|
+
|
|
120
|
+
/** A class-like node: owns outgoing `method` edges. */
|
|
121
|
+
export interface GraphifyClassDetail {
|
|
122
|
+
kind: 'class';
|
|
123
|
+
/** Methods connected via `method` edges. */
|
|
124
|
+
methods: GraphifyMethodInfo[];
|
|
125
|
+
/** Fields from `defines`/`references` context `field`. */
|
|
126
|
+
properties: GraphifyPropertyInfo[];
|
|
127
|
+
/** `inherits` edge targets. */
|
|
128
|
+
extends: string[];
|
|
129
|
+
/** `implements` edge targets. */
|
|
130
|
+
implements: string[];
|
|
131
|
+
/** Incoming `calls` — graphify models constructor calls as calls into the class. */
|
|
132
|
+
instantiations: GraphifyCallInfo[];
|
|
133
|
+
/** Everywhere the type name is referenced (`references` edges). */
|
|
134
|
+
references: GraphifyReferenceInfo[];
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/** A function-like node: label ends `name()` with no `method` edges. */
|
|
138
|
+
export interface GraphifyFunctionDetail {
|
|
139
|
+
kind: 'function';
|
|
140
|
+
/** Parameter types from `references` context `parameter_type`. */
|
|
141
|
+
parameters: GraphifyParamInfo[];
|
|
142
|
+
/** Return type from `references` context `return_type`. */
|
|
143
|
+
returnType?: string;
|
|
144
|
+
/** Incoming `calls` edges. */
|
|
145
|
+
callers: GraphifyCallInfo[];
|
|
146
|
+
/** Outgoing `calls` edges. */
|
|
147
|
+
callees: GraphifyCallInfo[];
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/** A type-like node (interface/struct): revealed by incoming `implements` edges. */
|
|
151
|
+
export interface GraphifyTypeDetail {
|
|
152
|
+
kind: 'type';
|
|
153
|
+
/** Struct/interface fields. */
|
|
154
|
+
properties: GraphifyPropertyInfo[];
|
|
155
|
+
/** Nodes referencing this type name. */
|
|
156
|
+
usedBy: GraphifyReferenceInfo[];
|
|
157
|
+
/** Nodes that `inherits`/`implements` this type. */
|
|
158
|
+
implementors: string[];
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/** A module/file-like node: a `contains` target with a filename label. */
|
|
162
|
+
export interface GraphifyModuleDetail {
|
|
163
|
+
kind: 'module';
|
|
164
|
+
/** `re_exports` targets / contained public symbols. */
|
|
165
|
+
exports: string[];
|
|
166
|
+
/** `imports` / `imports_from` relationships. */
|
|
167
|
+
imports: GraphifyImportInfo[];
|
|
168
|
+
/** Symbols contained in the module (`contains` targets). */
|
|
169
|
+
symbols: string[];
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/** A facet-only component with no graphify node (external consumer stub). */
|
|
173
|
+
export interface GraphifyExternalDetail {
|
|
174
|
+
kind: 'external';
|
|
175
|
+
/** Facet-only label; there is no backing graph data. */
|
|
176
|
+
label: string;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* The drill-down payload for a subsystem component.
|
|
181
|
+
*
|
|
182
|
+
* The discriminant is derived from graph structure, not read off the node:
|
|
183
|
+
* method edges → class; `()` label + no method edges → function; incoming
|
|
184
|
+
* `implements` → type; else module. `external` covers consumer stubs.
|
|
185
|
+
*/
|
|
186
|
+
export type GraphifyComponentDetail =
|
|
187
|
+
| GraphifyClassDetail
|
|
188
|
+
| GraphifyFunctionDetail
|
|
189
|
+
| GraphifyTypeDetail
|
|
190
|
+
| GraphifyModuleDetail
|
|
191
|
+
| GraphifyExternalDetail;
|
|
192
|
+
|
|
193
|
+
/** A raw graphify edge backing a facet claim (verification + provenance). */
|
|
194
|
+
export interface GraphifyEdgeRef {
|
|
195
|
+
source: string;
|
|
196
|
+
target: string;
|
|
197
|
+
relation: GraphifyRelation;
|
|
198
|
+
confidence: GraphifyConfidence;
|
|
199
|
+
confidence_score?: number;
|
|
200
|
+
source_file: string;
|
|
201
|
+
source_location?: string;
|
|
202
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graphify integration types.
|
|
3
|
+
*
|
|
4
|
+
* Type-compatible view of graphify's graph.json data model for consuming
|
|
5
|
+
* graphify output (nodes, links, hyperedges) inside this library.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export type {
|
|
9
|
+
JsonValue,
|
|
10
|
+
GraphifyFileType,
|
|
11
|
+
GraphifyConfidence,
|
|
12
|
+
GraphifyNodeType,
|
|
13
|
+
GraphifyRelation,
|
|
14
|
+
GraphifyNode,
|
|
15
|
+
GraphifyEdge,
|
|
16
|
+
GraphifyHyperedge,
|
|
17
|
+
GraphifyGraphMetadata,
|
|
18
|
+
GraphifyGraph,
|
|
19
|
+
} from './types';
|
|
20
|
+
export type {
|
|
21
|
+
GraphifyAnchorResolution,
|
|
22
|
+
SubsystemGraphifyAnchor,
|
|
23
|
+
GraphifyMethodInfo,
|
|
24
|
+
GraphifyPropertyInfo,
|
|
25
|
+
GraphifyParamInfo,
|
|
26
|
+
GraphifyCallInfo,
|
|
27
|
+
GraphifyReferenceInfo,
|
|
28
|
+
GraphifyImportInfo,
|
|
29
|
+
GraphifyClassDetail,
|
|
30
|
+
GraphifyFunctionDetail,
|
|
31
|
+
GraphifyTypeDetail,
|
|
32
|
+
GraphifyModuleDetail,
|
|
33
|
+
GraphifyExternalDetail,
|
|
34
|
+
GraphifyComponentDetail,
|
|
35
|
+
GraphifyEdgeRef,
|
|
36
|
+
} from './consolidated';
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graphify graph.json schema types.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the graphify data model (graphify/validate.py, graphify/export.py)
|
|
5
|
+
* so graphify output can be consumed by this library in a type-compatible way.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/** Any JSON-serializable value carried in node/edge metadata. */
|
|
9
|
+
export type JsonValue = string | number | boolean | null | JsonValue[] | { [key: string]: JsonValue };
|
|
10
|
+
|
|
11
|
+
/** Node classification (graphify/validate.py VALID_FILE_TYPES). */
|
|
12
|
+
export type GraphifyFileType = 'code' | 'document' | 'paper' | 'image' | 'rationale' | 'concept';
|
|
13
|
+
|
|
14
|
+
/** Edge provenance tag (graphify/validate.py VALID_CONFIDENCES). */
|
|
15
|
+
export type GraphifyConfidence = 'EXTRACTED' | 'INFERRED' | 'AMBIGUOUS';
|
|
16
|
+
|
|
17
|
+
/** Optional semantic kind carried on nodes (e.g. `module`, `namespace`). */
|
|
18
|
+
export type GraphifyNodeType = 'module' | 'namespace' | string;
|
|
19
|
+
|
|
20
|
+
/** Canonical relation verbs emitted by graphify extractors and resolvers. */
|
|
21
|
+
export type GraphifyRelation =
|
|
22
|
+
| 'calls'
|
|
23
|
+
| 'imports'
|
|
24
|
+
| 'imports_from'
|
|
25
|
+
| 're_exports'
|
|
26
|
+
| 'references'
|
|
27
|
+
| 'inherits'
|
|
28
|
+
| 'implements'
|
|
29
|
+
| 'mixes_in'
|
|
30
|
+
| 'uses'
|
|
31
|
+
| 'contains'
|
|
32
|
+
| 'defines'
|
|
33
|
+
| 'method'
|
|
34
|
+
| 'decorator'
|
|
35
|
+
| 'rationale_for'
|
|
36
|
+
| 'semantically_similar_to'
|
|
37
|
+
| string;
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* A graphify node.
|
|
41
|
+
*
|
|
42
|
+
* Required fields are enforced by graphify/validate.py:
|
|
43
|
+
* `id`, `label`, `file_type`, `source_file`. The rest are populated by the
|
|
44
|
+
* extractors (`source_location`, optional `type`/`metadata`) and by the build
|
|
45
|
+
* writer (`community`, `community_name`, `norm_label`).
|
|
46
|
+
*/
|
|
47
|
+
export interface GraphifyNode {
|
|
48
|
+
/** Stable identifier: repo-relative path + symbol names (make_id slug). */
|
|
49
|
+
id: string;
|
|
50
|
+
/** Human-readable name. */
|
|
51
|
+
label: string;
|
|
52
|
+
/** Classification used as the primary node kind. */
|
|
53
|
+
file_type: GraphifyFileType;
|
|
54
|
+
/** Repo-relative path of the source file this node came from. */
|
|
55
|
+
source_file: string;
|
|
56
|
+
/** `L<line>` location, or `''` for sourceless stub nodes. */
|
|
57
|
+
source_location?: string | null;
|
|
58
|
+
/** Optional semantic kind (e.g. `module`, `namespace`). */
|
|
59
|
+
type?: GraphifyNodeType;
|
|
60
|
+
/** Node state / extra node definitions. */
|
|
61
|
+
state?: string;
|
|
62
|
+
/** Arbitrary per-extractor metadata (e.g. `{ kind: "csharp_namespace" }`). */
|
|
63
|
+
metadata?: Record<string, JsonValue>;
|
|
64
|
+
/** Leiden community id, stamped at build time. */
|
|
65
|
+
community?: number | null;
|
|
66
|
+
/** Human-readable community label, stamped at build time. */
|
|
67
|
+
community_name?: string;
|
|
68
|
+
/** Diacritic-stripped lowercased label, stamped at build time. */
|
|
69
|
+
norm_label?: string;
|
|
70
|
+
/** Extra fields tolerated for forward compatibility. */
|
|
71
|
+
[key: string]: unknown;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* A graphify edge.
|
|
76
|
+
*
|
|
77
|
+
* Required fields: `source`, `target`, `relation`, `confidence`, `source_file`.
|
|
78
|
+
* `context` is populated for `references` edges (e.g. `type`, `return_type`,
|
|
79
|
+
* `field`, `generic_arg`).
|
|
80
|
+
*/
|
|
81
|
+
export interface GraphifyEdge {
|
|
82
|
+
/** Source node id. */
|
|
83
|
+
source: string;
|
|
84
|
+
/** Target node id. */
|
|
85
|
+
target: string;
|
|
86
|
+
/** Canonical relation verb. */
|
|
87
|
+
relation: GraphifyRelation;
|
|
88
|
+
/** Provenance: read directly from source vs. resolved by graphify. */
|
|
89
|
+
confidence: GraphifyConfidence;
|
|
90
|
+
/** Float 0.0-1.0; 1.0 for EXTRACTED, discrete rubric for INFERRED. */
|
|
91
|
+
confidence_score?: number;
|
|
92
|
+
/** Repo-relative path where the relationship was found. */
|
|
93
|
+
source_file: string;
|
|
94
|
+
/** `L<line>` location of the relationship. */
|
|
95
|
+
source_location?: string | null;
|
|
96
|
+
/** Edge weight. */
|
|
97
|
+
weight?: number;
|
|
98
|
+
/** Reference context for `references` edges. */
|
|
99
|
+
context?: string;
|
|
100
|
+
/** Arbitrary per-extractor metadata. */
|
|
101
|
+
metadata?: Record<string, JsonValue>;
|
|
102
|
+
/** Extra fields tolerated for forward compatibility. */
|
|
103
|
+
[key: string]: unknown;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* A graphify hyperedge — a group relationship connecting 3+ nodes.
|
|
108
|
+
*
|
|
109
|
+
* Member list is canonical on `nodes` (aliases `members`/`node_ids` are folded
|
|
110
|
+
* by graphify/export.py build normalization).
|
|
111
|
+
*/
|
|
112
|
+
export interface GraphifyHyperedge {
|
|
113
|
+
/** Stable identifier. */
|
|
114
|
+
id: string;
|
|
115
|
+
/** Human-readable label. */
|
|
116
|
+
label?: string;
|
|
117
|
+
/** Member node ids (canonical key). */
|
|
118
|
+
nodes: string[];
|
|
119
|
+
/** Group relation verb (e.g. `participate_in`, `implement`, `form`). */
|
|
120
|
+
relation?: GraphifyRelation;
|
|
121
|
+
/** Provenance tag. */
|
|
122
|
+
confidence?: GraphifyConfidence;
|
|
123
|
+
/** Float 0.0-1.0. */
|
|
124
|
+
confidence_score?: number;
|
|
125
|
+
/** Repo-relative path where the relationship was found. */
|
|
126
|
+
source_file?: string;
|
|
127
|
+
/** Extra fields tolerated for forward compatibility. */
|
|
128
|
+
[key: string]: unknown;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/** Graph-level metadata stored on the graph (`graph` key). */
|
|
132
|
+
export interface GraphifyGraphMetadata {
|
|
133
|
+
directed?: boolean;
|
|
134
|
+
multigraph?: boolean;
|
|
135
|
+
/** Edges may be serialized under `links` (NetworkX node-link) or `edges`. */
|
|
136
|
+
hyperedges?: GraphifyHyperedge[];
|
|
137
|
+
[key: string]: unknown;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* The full graph.json document.
|
|
142
|
+
*
|
|
143
|
+
* graphify writes NetworkX node-link format: nodes under `nodes`, edges under
|
|
144
|
+
* `links`. Older/legacy payloads may use `edges` instead of `links`.
|
|
145
|
+
*/
|
|
146
|
+
export interface GraphifyGraph {
|
|
147
|
+
/** Graph nodes. */
|
|
148
|
+
nodes: GraphifyNode[];
|
|
149
|
+
/** Graph edges (NetworkX node-link key). */
|
|
150
|
+
links?: GraphifyEdge[];
|
|
151
|
+
/** Legacy alias for `links`. */
|
|
152
|
+
edges?: GraphifyEdge[];
|
|
153
|
+
/** Group relationships connecting 3+ nodes. */
|
|
154
|
+
hyperedges?: GraphifyHyperedge[];
|
|
155
|
+
/** Graph-level metadata (directed, multigraph, hyperedges). */
|
|
156
|
+
graph?: GraphifyGraphMetadata;
|
|
157
|
+
/** Top-level directed flag (NetworkX). */
|
|
158
|
+
directed?: boolean;
|
|
159
|
+
/** Top-level multigraph flag (NetworkX). */
|
|
160
|
+
multigraph?: boolean;
|
|
161
|
+
/** Git HEAD the graph was built against, when available. */
|
|
162
|
+
built_at_commit?: string;
|
|
163
|
+
[key: string]: unknown;
|
|
164
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -211,3 +211,34 @@ export type {
|
|
|
211
211
|
SessionEventFeedGroupedProps,
|
|
212
212
|
SessionEventFeedRow,
|
|
213
213
|
} from './components/session-events';
|
|
214
|
+
|
|
215
|
+
// Graphify integration types (graph.json data model)
|
|
216
|
+
export type {
|
|
217
|
+
JsonValue,
|
|
218
|
+
GraphifyFileType,
|
|
219
|
+
GraphifyConfidence,
|
|
220
|
+
GraphifyNodeType,
|
|
221
|
+
GraphifyRelation,
|
|
222
|
+
GraphifyNode,
|
|
223
|
+
GraphifyEdge,
|
|
224
|
+
GraphifyHyperedge,
|
|
225
|
+
GraphifyGraphMetadata,
|
|
226
|
+
GraphifyGraph,
|
|
227
|
+
} from './graphify';
|
|
228
|
+
export type {
|
|
229
|
+
GraphifyAnchorResolution,
|
|
230
|
+
SubsystemGraphifyAnchor,
|
|
231
|
+
GraphifyMethodInfo,
|
|
232
|
+
GraphifyPropertyInfo,
|
|
233
|
+
GraphifyParamInfo,
|
|
234
|
+
GraphifyCallInfo,
|
|
235
|
+
GraphifyReferenceInfo,
|
|
236
|
+
GraphifyImportInfo,
|
|
237
|
+
GraphifyClassDetail,
|
|
238
|
+
GraphifyFunctionDetail,
|
|
239
|
+
GraphifyTypeDetail,
|
|
240
|
+
GraphifyModuleDetail,
|
|
241
|
+
GraphifyExternalDetail,
|
|
242
|
+
GraphifyComponentDetail,
|
|
243
|
+
GraphifyEdgeRef,
|
|
244
|
+
} from './graphify';
|