@principal-ai/subsystems-react 0.37.12 → 0.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/index.d.ts +2 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/stories/Subsystem/ComponentGraph/fixtures.d.ts.map +1 -1
  6. package/dist/stories/Subsystem/ComponentGraph/fixtures.js +0 -1
  7. package/dist/stories/Subsystem/ComponentGraph/fixtures.js.map +1 -1
  8. package/dist/subsystem/SubsystemComponentGraph.d.ts +14 -1
  9. package/dist/subsystem/SubsystemComponentGraph.d.ts.map +1 -1
  10. package/dist/subsystem/SubsystemComponentGraph.js +32 -12
  11. package/dist/subsystem/SubsystemComponentGraph.js.map +1 -1
  12. package/dist/subsystem/model.d.ts +123 -7
  13. package/dist/subsystem/model.d.ts.map +1 -1
  14. package/dist/subsystem/model.js +91 -12
  15. package/dist/subsystem/model.js.map +1 -1
  16. package/dist/subsystem/nodes.d.ts.map +1 -1
  17. package/dist/subsystem/nodes.js +9 -5
  18. package/dist/subsystem/nodes.js.map +1 -1
  19. package/dist/utils/elkLayout.d.ts +9 -0
  20. package/dist/utils/elkLayout.d.ts.map +1 -1
  21. package/dist/utils/elkLayout.js +21 -2
  22. package/dist/utils/elkLayout.js.map +1 -1
  23. package/package.json +1 -1
  24. package/src/graphify/__fixtures__/ego-samples.json +545 -0
  25. package/src/index.ts +12 -1
  26. package/src/stories/Subsystem/ComponentGraph/Basics.stories.tsx +2 -2
  27. package/src/stories/Subsystem/ComponentGraph/Captures.stories.tsx +9 -9
  28. package/src/stories/Subsystem/ComponentGraph/EdgeViews.stories.tsx +4 -4
  29. package/src/stories/Subsystem/ComponentGraph/ModuleBadges.stories.tsx +5 -5
  30. package/src/stories/Subsystem/ComponentGraph/Modules.stories.tsx +5 -5
  31. package/src/stories/Subsystem/ComponentGraph/Scenarios.stories.tsx +6 -6
  32. package/src/stories/Subsystem/ComponentGraph/fixtures.ts +0 -1
  33. package/src/stories/Subsystem/EgoGraph/EgoGraph.stories.tsx +354 -0
  34. package/src/subsystem/SubsystemComponentGraph.tsx +52 -15
  35. package/src/subsystem/model.test.ts +75 -2
  36. package/src/subsystem/model.ts +201 -17
  37. package/src/subsystem/nodes.tsx +10 -6
  38. package/src/subsystem/toC4.test.ts +3 -3
  39. package/src/utils/elkLayout.ts +32 -1
package/dist/index.d.ts CHANGED
@@ -32,7 +32,7 @@ export { SubsystemDiagnosticToggle, diagnosticStatusColor, diagnosticTitle, } fr
32
32
  export type { SubsystemDiagnostic, SubsystemDiagnosticStatus, SubsystemDiagnosticToggleProps, } from './subsystem/DiagnosticToggle';
33
33
  export { SubsystemIssueList, SubsystemIssueCard, groupIssuesByTarget, groupIssuesByCategory, issueCategory, issueKindLabel, humanizeIssueKind, issueKindOrder, worstSeverity, severityRank, SUBSYSTEM_ISSUE_CATEGORIES, SUBSYSTEM_ISSUE_CATEGORY_LABEL, } from './subsystem/IssueList';
34
34
  export type { SubsystemIssue, SubsystemIssueSeverity, SubsystemIssueTarget, SubsystemIssueTargetKind, SubsystemIssueCategory, SubsystemIssueGroup, SubsystemIssueCategoryGroup, SubsystemIssueCardProps, SubsystemIssueListProps, } from './subsystem/IssueList';
35
- export { MECHANISM_COLOR, MECHANISM_STYLE } from './subsystem/model';
35
+ export { MECHANISM_COLOR, MECHANISM_STYLE, MECHANISM_FALLBACK_COLOR, GRAPHIFY_RELATION_COLOR, GRAPHIFY_RELATION_STYLE, GRAPHIFY_RELATION_FALLBACK_COLOR, edgeColor, edgeStrokeStyle, } from './subsystem/model';
36
36
  export { BOUNDARY_COLOR, assignBoundaryColors, boundaryFill } from './subsystem/model';
37
37
  export { CONSTRUCT_COLOR, componentColor, constructColorsFromPierreTheme } from './pierre/constructColors';
38
38
  export { purlRepoKey, purlOwnerName, buildTreePathMapping, buildRepoGroups, repoAvatarUrl, } from './subsystem/paths';
@@ -46,7 +46,7 @@ export { GraphLayoutCover } from './subsystem/GraphLayoutCover';
46
46
  export type { GraphLayoutCoverProps } from './subsystem/GraphLayoutCover';
47
47
  export { SubsystemComponentNode, SubsystemCallbacksProvider, } from './subsystem/nodes';
48
48
  export type { SubsystemGraphCallbacks } from './subsystem/nodes';
49
- export type { SubsystemComponent, SubsystemGraphNodeData, SubsystemComponentEdge, SubsystemRelation, SubsystemRelationType, SubsystemWalkthrough, SubsystemWalkthroughStep, SubsystemWalkthroughMechanism, SubsystemModelDocument, SubsystemComponentConstruct, SubsystemComponentRole, SubsystemFramework, SubsystemStereotype, SubsystemEdgeMechanism, SubsystemEdgeView, SubsystemConstructDeclaration, SubsystemDeclarationProvenance, SubsystemSignatureClaim, SubsystemSignatureParameter, } from './subsystem/model';
49
+ export type { SubsystemComponent, SubsystemGraphNodeData, SubsystemComponentEdge, SubsystemRelation, SubsystemRelationType, SubsystemWalkthrough, SubsystemWalkthroughStep, SubsystemWalkthroughMechanism, SubsystemModelDocument, SubsystemComponentConstruct, SubsystemComponentRole, SubsystemFramework, SubsystemStereotype, SubsystemEdgeMechanism, SubsystemEdgeView, SubsystemEdgeProvenance, SubsystemGraphifyRelation, SubsystemConstructDeclaration, SubsystemDeclarationProvenance, SubsystemSignatureClaim, SubsystemSignatureParameter, } from './subsystem/model';
50
50
  export { constructBadgeLabel, constructBadgeColor, rightBadgeLabel, rightBadgeColor, deriveNameFromSymbol, nodeMinWidthForBadges, deriveGraphEdges, isConstructsOnlyModel, derivedGraphEdgeId, walkthroughStepGraphEdgeId, reorderWalkthroughs, reorderTargetIndex, isRelationMechanism, isWalkthroughMechanism, SUBSYSTEM_RELATION_TYPES, SUBSYSTEM_WALKTHROUGH_MECHANISMS, ROLE_COLOR, ROLE_LABEL, FRAMEWORK_BADGE_COLOR, PROPOSED_COLOR, } from './subsystem/model';
51
51
  export type { SubsystemDeclarationRef, SubsystemOpenFileOptions, DeclarationFreshness, } from './subsystem/declarationRef';
52
52
  export { parseSourceLocation, normalizeDeclarationLine, extractDeclarationLine, DECLARATION_HASH_ALGO, } from './subsystem/declarationRef';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -20,7 +20,7 @@ export { SymbolInspectionCard } from './subsystem/SymbolInspectionCard';
20
20
  export { extractDeclarationSymbolRefs, isLimitedInspection, } from './subsystem/symbolRefs';
21
21
  export { SubsystemDiagnosticToggle, diagnosticStatusColor, diagnosticTitle, } from './subsystem/DiagnosticToggle';
22
22
  export { SubsystemIssueList, SubsystemIssueCard, groupIssuesByTarget, groupIssuesByCategory, issueCategory, issueKindLabel, humanizeIssueKind, issueKindOrder, worstSeverity, severityRank, SUBSYSTEM_ISSUE_CATEGORIES, SUBSYSTEM_ISSUE_CATEGORY_LABEL, } from './subsystem/IssueList';
23
- export { MECHANISM_COLOR, MECHANISM_STYLE } from './subsystem/model';
23
+ export { MECHANISM_COLOR, MECHANISM_STYLE, MECHANISM_FALLBACK_COLOR, GRAPHIFY_RELATION_COLOR, GRAPHIFY_RELATION_STYLE, GRAPHIFY_RELATION_FALLBACK_COLOR, edgeColor, edgeStrokeStyle, } from './subsystem/model';
24
24
  export { BOUNDARY_COLOR, assignBoundaryColors, boundaryFill } from './subsystem/model';
25
25
  export { CONSTRUCT_COLOR, componentColor, constructColorsFromPierreTheme } from './pierre/constructColors';
26
26
  export { purlRepoKey, purlOwnerName, buildTreePathMapping, buildRepoGroups, repoAvatarUrl, } from './subsystem/paths';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,sEAAsE;AACtE,OAAO,EACL,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AAyCrC,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAWpB,uBAAuB;AACvB,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAExE,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAG1E,4BAA4B;AAC5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAQ9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAOlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAShC,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AAMtC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,YAAY,EACZ,0BAA0B,EAC1B,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC;AAY/B,OAAO,EACL,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EACvB,gCAAgC,EAChC,SAAS,EACT,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC3G,OAAO,EACL,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,aAAa,GACd,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EACL,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAyB3B,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,gCAAgC,EAChC,UAAU,EACV,UAAU,EACV,qBAAqB,EACrB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,8BAA8B,CAAC;AAGtC,6CAA6C;AAC7C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../src/stories/Subsystem/ComponentGraph/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAKjE,wBAAgB,UAAU,CACxB,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,uBAAuB,CAAC,CAAC,GAC3L,kBAAkB,EAAE,CAWtB;AAWD,wBAAgB,SAAS,CACvB,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,qBAAqB,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GAC5F,iBAAiB,EAAE,CAQrB;AAED,2EAA2E;AAC3E,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,6BAA6B,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAC7H,oBAAoB,CActB;AAED,6EAA6E;AAC7E,wBAAgB,KAAK,CACnB,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GACvG,sBAAsB,EAAE,CAQ1B;AAED,qFAAqF;AACrF,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GACvG;IAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,oBAAoB,EAAE,CAAA;CAAE,CA+B3E;AAED,eAAO,MAAM,YAAY,EAAE,uBAY1B,CAAC;AAMF,eAAO,MAAM,yBAAyB,EAAE,kBAAkB,EAuDzD,CAAC;AASF,eAAO,MAAM,wBAAwB,qBAA4B,CAAC;AAClE,eAAO,MAAM,2BAA2B,oCAA+B,CAAC;AAExE,6EAA6E;AAC7E,eAAO,MAAM,oBAAoB,EAAE,sBAAsB,EAKvD,CAAC"}
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../src/stories/Subsystem/ComponentGraph/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAKjE,wBAAgB,UAAU,CACxB,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,uBAAuB,CAAC,CAAC,GAC3L,kBAAkB,EAAE,CAWtB;AAUD,wBAAgB,SAAS,CACvB,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,qBAAqB,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GAC5F,iBAAiB,EAAE,CAQrB;AAED,2EAA2E;AAC3E,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,6BAA6B,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAC7H,oBAAoB,CActB;AAED,6EAA6E;AAC7E,wBAAgB,KAAK,CACnB,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GACvG,sBAAsB,EAAE,CAQ1B;AAED,qFAAqF;AACrF,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GACvG;IAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,oBAAoB,EAAE,CAAA;CAAE,CA+B3E;AAED,eAAO,MAAM,YAAY,EAAE,uBAY1B,CAAC;AAMF,eAAO,MAAM,yBAAyB,EAAE,kBAAkB,EAuDzD,CAAC;AASF,eAAO,MAAM,wBAAwB,qBAA4B,CAAC;AAClE,eAAO,MAAM,2BAA2B,oCAA+B,CAAC;AAExE,6EAA6E;AAC7E,eAAO,MAAM,oBAAoB,EAAE,sBAAsB,EAKvD,CAAC"}
@@ -20,7 +20,6 @@ const RELATION_TYPES = new Set([
20
20
  'implements',
21
21
  'mixes_in',
22
22
  'method',
23
- 'references',
24
23
  ]);
25
24
  export function relations(spec) {
26
25
  return spec.map(([from, to, relationType, refs], i) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../../src/stories/Subsystem/ComponentGraph/fixtures.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../../src/stories/Subsystem/ComponentGraph/fixtures.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  * injection, onNodeClick) adapted to the subsystem model — read-only.
16
16
  */
17
17
  import type { ReactNode } from 'react';
18
- import { type SubsystemComponentEdge, type SubsystemComponent, type SubsystemEdgeView, type SubsystemRelation, type SubsystemWalkthrough } from './model';
18
+ import { type SubsystemComponentEdge, type SubsystemComponent, type SubsystemEdgeView, type SubsystemGraphifyRelation, type SubsystemRelation, type SubsystemWalkthrough } from './model';
19
19
  import type { SubsystemOpenFileOptions } from './declarationRef';
20
20
  import type { WalkthroughSymbolQuery } from '../pierre/PierreWalkthroughCodeView';
21
21
  import { type SubsystemDiagnostic } from './DiagnosticToggle';
@@ -58,6 +58,19 @@ export interface SubsystemComponentGraphProps {
58
58
  * (unselected ones dimmed); everything else is hidden.
59
59
  */
60
60
  walkthroughs?: SubsystemWalkthrough[];
61
+ /**
62
+ * graphify-native relations (raw static-graph edges: `imports`, `contains`,
63
+ * `re_exports`, …). Display-only, drawn with the separate
64
+ * `GRAPHIFY_RELATION_COLOR` palette so they read as derived facts, distinct
65
+ * from authored subsystem mechanisms. Visible in the `relations` edge view.
66
+ */
67
+ graphifyRelations?: readonly SubsystemGraphifyRelation[];
68
+ /**
69
+ * Order same-layer nodes by `component.line` (ascending) instead of ELK's
70
+ * crossing-minimizer — reads a source region top-to-bottom. Components need a
71
+ * `line` for this to have any effect. @default false
72
+ */
73
+ orderByLine?: boolean;
61
74
  /**
62
75
  * Deep-link target: when set, the matching walkthrough is selected on mount
63
76
  * — its steps expanded and its flow focused on the canvas. Hosts use this
@@ -1 +1 @@
1
- {"version":3,"file":"SubsystemComponentGraph.d.ts","sourceRoot":"","sources":["../../src/subsystem/SubsystemComponentGraph.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SubsystemComponentGraph.d.ts","sourceRoot":"","sources":["../../src/subsystem/SubsystemComponentGraph.tsx"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ import { ReactFlow, ReactFlowProvider, useReactFlow, useViewport, applyNodeChang
20
20
  import { useTheme } from '@principal-ade/industry-theme';
21
21
  import { FileText, X } from 'lucide-react';
22
22
  import { IndustryMarkdownSlide } from 'themed-markdown';
23
- import { buildSubsystemGraph, deriveGraphEdges, isConstructsOnlyModel, isRelationMechanism, isWalkthroughMechanism, MECHANISM_COLOR, MECHANISM_DESCRIPTIONS, subsystemGraphLayoutKey, walkthroughStepGraphEdgeId, } from './model';
23
+ import { buildSubsystemGraph, deriveGraphEdges, isConstructsOnlyModel, isRelationMechanism, isWalkthroughMechanism, edgeColor, MECHANISM_DESCRIPTIONS, subsystemGraphLayoutKey, walkthroughStepGraphEdgeId, } from './model';
24
24
  import { ConstructsCatalog } from './ConstructsCatalog';
25
25
  import { SubsystemComponentNode, SubsystemGroupNode, SubsystemEdge, SUBSYSTEM_CALLBACKS, hexWithAlpha, EDGE_DIM_ALPHA, fileMatchForNode, flowElementVisibility } from './nodes';
26
26
  import { SubsystemDiagnosticToggle } from './DiagnosticToggle';
@@ -120,7 +120,7 @@ const WalkthroughDrawerContent = memo(function WalkthroughDrawerContent({ render
120
120
  onSymbolClick,
121
121
  }) }));
122
122
  });
123
- function Inner({ components, relations, walkthroughs, initialWalkthroughId, onReorderWalkthroughs, onSelect, onEdgeSelect, measured: _measured, maxNodeWidth, showEdgeLabels, showSingletonFrames = true, edgeView, title, hideSidebar, walkthroughStepMode = 'focus', autoPlayWalkthroughs = false, walkthroughAutoPlayIntervalMs = WALKTHROUGH_PLAY_PAUSE_MS, zoomOnWalkthroughFocus = true, walkthroughFocusDurationMs = 300, graphTitle, showWalkthroughTitle = false, description, canvasOverlay, sidebarExtra, sidebarAfterDescription, diagnostic, issues, showIssues, focusIssueCategory, onSelectIssue, onApplyIssueFix, onHoverIssue, renderFileView, renderFileViewer, renderWalkthroughViewer, onFileSelect, componentVerification, onInspectSymbol, boundaryColors, hideDrawer = false, persistKey }) {
123
+ function Inner({ components, relations, walkthroughs, graphifyRelations, orderByLine, initialWalkthroughId, onReorderWalkthroughs, onSelect, onEdgeSelect, measured: _measured, maxNodeWidth, showEdgeLabels, showSingletonFrames = true, edgeView, title, hideSidebar, walkthroughStepMode = 'focus', autoPlayWalkthroughs = false, walkthroughAutoPlayIntervalMs = WALKTHROUGH_PLAY_PAUSE_MS, zoomOnWalkthroughFocus = true, walkthroughFocusDurationMs = 300, graphTitle, showWalkthroughTitle = false, description, canvasOverlay, sidebarExtra, sidebarAfterDescription, diagnostic, issues, showIssues, focusIssueCategory, onSelectIssue, onApplyIssueFix, onHoverIssue, renderFileView, renderFileViewer, renderWalkthroughViewer, onFileSelect, componentVerification, onInspectSymbol, boundaryColors, hideDrawer = false, persistKey }) {
124
124
  const { theme } = useTheme();
125
125
  const { fitView, fitBounds } = useReactFlow();
126
126
  const viewport = useViewport();
@@ -356,13 +356,15 @@ function Inner({ components, relations, walkthroughs, initialWalkthroughId, onRe
356
356
  // Pass 1: build with estimated widths so React Flow can measure the DOM.
357
357
  // The pane stays hidden until Pass 2 completes. Key off layout-affecting
358
358
  // fields only — declarationRef updates after verify must not re-run ELK.
359
- const layoutKey = useMemo(() => subsystemGraphLayoutKey({ components, relations, walkthroughs }), [components, relations, walkthroughs]);
359
+ const layoutKey = useMemo(() => subsystemGraphLayoutKey({ components, relations, walkthroughs, graphifyRelations }), [components, relations, walkthroughs, graphifyRelations]);
360
360
  const componentsRef = useRef(components);
361
361
  const relationsRef = useRef(relations);
362
362
  const walkthroughsRef = useRef(walkthroughs);
363
+ const graphifyRelationsRef = useRef(graphifyRelations);
363
364
  componentsRef.current = components;
364
365
  relationsRef.current = relations;
365
366
  walkthroughsRef.current = walkthroughs;
367
+ graphifyRelationsRef.current = graphifyRelations;
366
368
  // Track measured dimensions from React Flow's dimension changes.
367
369
  // These arrive as { type: 'dimensions', id, dimensions } in onNodesChange.
368
370
  // Retained across same-id layoutKey updates so Pass 2 can run without a remount.
@@ -386,6 +388,8 @@ function Inner({ components, relations, walkthroughs, initialWalkthroughId, onRe
386
388
  maxNodeWidth,
387
389
  showEdgeLabels,
388
390
  showSingletonFrames,
391
+ graphifyRelations: graphifyRelationsRef.current,
392
+ orderByLine,
389
393
  })
390
394
  .then(({ nodes, edges: e, absoluteRects }) => {
391
395
  if (!alive)
@@ -436,7 +440,7 @@ function Inner({ components, relations, walkthroughs, initialWalkthroughId, onRe
436
440
  const measuredWidths = new Map(leafNodes.map((n) => [n.id, dims.get(n.id).width]));
437
441
  const measuredHeights = new Map(leafNodes.map((n) => [n.id, dims.get(n.id).height]));
438
442
  const gen = ++pass2GenRef.current;
439
- void buildSubsystemGraph({ components, relations, walkthroughs }, { maxNodeWidth, showEdgeLabels, measuredWidths, measuredHeights, showSingletonFrames })
443
+ void buildSubsystemGraph({ components, relations, walkthroughs }, { maxNodeWidth, showEdgeLabels, measuredWidths, measuredHeights, showSingletonFrames, graphifyRelations, orderByLine })
440
444
  .then(({ nodes, edges: e, absoluteRects }) => {
441
445
  if (gen !== pass2GenRef.current)
442
446
  return;
@@ -450,7 +454,7 @@ function Inner({ components, relations, walkthroughs, initialWalkthroughId, onRe
450
454
  // Reveal Pass 1 layout rather than leaving the cover up forever.
451
455
  setLayoutReady(true);
452
456
  });
453
- }, [built.nodes, components, relations, walkthroughs, maxNodeWidth, showEdgeLabels]);
457
+ }, [built.nodes, components, relations, walkthroughs, graphifyRelations, orderByLine, maxNodeWidth, showEdgeLabels]);
454
458
  // After Pass 1 commits, try Pass 2 immediately with retained measurements.
455
459
  // Same-id live updates often get no new React Flow `dimensions` events, so
456
460
  // waiting only on onNodesChange leaves the cover stuck.
@@ -741,11 +745,15 @@ function Inner({ components, relations, walkthroughs, initialWalkthroughId, onRe
741
745
  };
742
746
  };
743
747
  // Edges outside the selected view are hidden entirely (labels included).
748
+ // graphify-native edges belong to the relations view (they are static
749
+ // topology, not runtime hops) regardless of their verb.
744
750
  const edgeInView = (e) => {
745
- const mechanism = e.data?.mechanism ?? 'uses';
746
- return resolvedEdgeView === 'relations'
747
- ? isRelationMechanism(mechanism)
748
- : isWalkthroughMechanism(mechanism);
751
+ const d = e.data;
752
+ const mechanism = d?.mechanism ?? 'uses';
753
+ if (resolvedEdgeView === 'relations') {
754
+ return d?.provenance === 'graphify' || isRelationMechanism(mechanism);
755
+ }
756
+ return isWalkthroughMechanism(mechanism);
749
757
  };
750
758
  if (openedEdgeIds || focusEdgeIds || previewEdgeIds) {
751
759
  return baseEdges.map((e) => {
@@ -1428,6 +1436,7 @@ function Inner({ components, relations, walkthroughs, initialWalkthroughId, onRe
1428
1436
  return {
1429
1437
  id: e.id,
1430
1438
  mechanism: d?.mechanism ?? 'uses',
1439
+ provenance: d?.provenance,
1431
1440
  dimmed: d?.dimmed === true,
1432
1441
  midX: d?.labelX ?? 0,
1433
1442
  midY: d?.labelY ?? 0,
@@ -1571,14 +1580,24 @@ function Inner({ components, relations, walkthroughs, initialWalkthroughId, onRe
1571
1580
  zIndex: 5,
1572
1581
  }, children: edgeLabels.map((lbl) => {
1573
1582
  const mechanism = lbl.mechanism;
1574
- const color = MECHANISM_COLOR[mechanism] ?? '#888';
1575
- const verifiable = MECHANISM_DESCRIPTIONS.find(([m]) => m === mechanism)?.[2] ?? true;
1583
+ const isGraphify = lbl.provenance === 'graphify';
1584
+ const color = edgeColor({ mechanism, provenance: lbl.provenance });
1585
+ // Label chrome stays the crisp rounded box for every edge — graphify
1586
+ // provenance is carried by hue (GRAPHIFY_RELATION_COLOR), the dashed
1587
+ // stroke, and the tooltip, NOT by the "ambiguous" cloud silhouette
1588
+ // (that idiom is reserved for soft authored mechanisms).
1589
+ const verifiable = true;
1590
+ const labelTitle = isGraphify
1591
+ ? 'Derived from graphify (static symbol graph)'
1592
+ : MECHANISM_DESCRIPTIONS.find(([m]) => m === mechanism)?.[2] === false
1593
+ ? 'Not directly verifiable with graphify'
1594
+ : undefined;
1576
1595
  const screenX = lbl.midX * viewport.zoom + viewport.x;
1577
1596
  const screenY = lbl.midY * viewport.zoom + viewport.y;
1578
1597
  const text = lbl.stepNos?.length
1579
1598
  ? `${lbl.stepNos.map((n) => `${n}:`).join(' ')} ${lbl.mechanism}`
1580
1599
  : lbl.mechanism;
1581
- return (_jsxs("div", { "data-edge-label": lbl.id, title: verifiable ? undefined : 'Not directly verifiable with graphify', onClick: (e) => {
1600
+ return (_jsxs("div", { "data-edge-label": lbl.id, title: labelTitle, onClick: (e) => {
1582
1601
  e.stopPropagation();
1583
1602
  selectEdge(lbl.id);
1584
1603
  }, style: {
@@ -1828,6 +1847,7 @@ export function SubsystemComponentGraph(props) {
1828
1847
  components: props.components,
1829
1848
  relations: props.relations,
1830
1849
  walkthroughs: props.walkthroughs,
1850
+ graphifyRelations: props.graphifyRelations,
1831
1851
  });
1832
1852
  return (_jsx("div", { ref: wrapRef, style: {
1833
1853
  position: 'relative',