@principal-ai/subsystems-react 0.24.0 → 0.24.2

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 (46) hide show
  1. package/dist/index.d.ts +7 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +4 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/subsystem/ComponentDeclaration.d.ts +3 -1
  6. package/dist/subsystem/ComponentDeclaration.d.ts.map +1 -1
  7. package/dist/subsystem/ComponentDeclaration.js +2 -2
  8. package/dist/subsystem/ComponentDeclaration.js.map +1 -1
  9. package/dist/subsystem/ConstructsCatalog.d.ts +30 -0
  10. package/dist/subsystem/ConstructsCatalog.d.ts.map +1 -0
  11. package/dist/subsystem/ConstructsCatalog.js +329 -0
  12. package/dist/subsystem/ConstructsCatalog.js.map +1 -0
  13. package/dist/subsystem/DiagnosticToggle.d.ts +46 -0
  14. package/dist/subsystem/DiagnosticToggle.d.ts.map +1 -0
  15. package/dist/subsystem/DiagnosticToggle.js +95 -0
  16. package/dist/subsystem/DiagnosticToggle.js.map +1 -0
  17. package/dist/subsystem/IssueList.d.ts +103 -0
  18. package/dist/subsystem/IssueList.d.ts.map +1 -0
  19. package/dist/subsystem/IssueList.js +310 -0
  20. package/dist/subsystem/IssueList.js.map +1 -0
  21. package/dist/subsystem/SubsystemComponentGraph.d.ts +28 -0
  22. package/dist/subsystem/SubsystemComponentGraph.d.ts.map +1 -1
  23. package/dist/subsystem/SubsystemComponentGraph.js +81 -58
  24. package/dist/subsystem/SubsystemComponentGraph.js.map +1 -1
  25. package/dist/subsystem/SubsystemFileTree.js +2 -2
  26. package/dist/subsystem/SubsystemFileTree.js.map +1 -1
  27. package/dist/subsystem/model.d.ts +13 -2
  28. package/dist/subsystem/model.d.ts.map +1 -1
  29. package/dist/subsystem/model.js +12 -0
  30. package/dist/subsystem/model.js.map +1 -1
  31. package/dist/subsystem/nodes.js +5 -5
  32. package/dist/subsystem/nodes.js.map +1 -1
  33. package/package.json +1 -1
  34. package/src/index.ts +37 -0
  35. package/src/stories/Subsystem/ComponentGraph/Constructs.stories.tsx +287 -0
  36. package/src/stories/Subsystem/ComponentGraph/Diagnostics.stories.tsx +138 -0
  37. package/src/stories/Subsystem/ComponentGraph/Issues.stories.tsx +130 -0
  38. package/src/subsystem/ComponentDeclaration.tsx +4 -1
  39. package/src/subsystem/ConstructsCatalog.tsx +604 -0
  40. package/src/subsystem/DiagnosticToggle.tsx +160 -0
  41. package/src/subsystem/IssueList.tsx +519 -0
  42. package/src/subsystem/SubsystemComponentGraph.tsx +119 -38
  43. package/src/subsystem/SubsystemFileTree.tsx +2 -2
  44. package/src/subsystem/model.test.ts +34 -0
  45. package/src/subsystem/model.ts +18 -2
  46. package/src/subsystem/nodes.tsx +5 -5
package/dist/index.d.ts CHANGED
@@ -17,8 +17,14 @@ export { useElkLayout, applyElkPathsToEdges } from './hooks/useElkLayout';
17
17
  export type { UseElkLayoutOptions, UseElkLayoutResult } from './hooks/useElkLayout';
18
18
  export { SubsystemComponentGraph } from './subsystem/SubsystemComponentGraph';
19
19
  export type { SubsystemComponentGraphProps, WalkthroughViewerContext } from './subsystem/SubsystemComponentGraph';
20
+ export { ConstructsCatalog } from './subsystem/ConstructsCatalog';
21
+ export type { ConstructsCatalogProps } from './subsystem/ConstructsCatalog';
20
22
  export type { ComponentVerificationState, ComponentVerificationPhase, ComponentDeclarationProps, } from './subsystem/ComponentDeclaration';
21
23
  export { ComponentDeclaration } from './subsystem/ComponentDeclaration';
24
+ export { SubsystemDiagnosticToggle, diagnosticStatusColor, diagnosticTitle, } from './subsystem/DiagnosticToggle';
25
+ export type { SubsystemDiagnostic, SubsystemDiagnosticStatus, SubsystemDiagnosticToggleProps, } from './subsystem/DiagnosticToggle';
26
+ export { SubsystemIssueList, SubsystemIssueCard, groupIssuesByTarget, groupIssuesByCategory, issueCategory, issueKindLabel, humanizeIssueKind, worstSeverity, severityRank, SUBSYSTEM_ISSUE_CATEGORIES, SUBSYSTEM_ISSUE_CATEGORY_LABEL, } from './subsystem/IssueList';
27
+ export type { SubsystemIssue, SubsystemIssueSeverity, SubsystemIssueTarget, SubsystemIssueTargetKind, SubsystemIssueCategory, SubsystemIssueGroup, SubsystemIssueCategoryGroup, SubsystemIssueCardProps, SubsystemIssueListProps, } from './subsystem/IssueList';
22
28
  export { MECHANISM_COLOR, MECHANISM_STYLE } from './subsystem/model';
23
29
  export { CONSTRUCT_COLOR, componentColor, constructColorsFromPierreTheme } from './pierre/constructColors';
24
30
  export { purlRepoKey, purlOwnerName, buildTreePathMapping, buildRepoGroups, repoAvatarUrl, } from './subsystem/paths';
@@ -28,7 +34,7 @@ export type { SubsystemFileTreeProps } from './subsystem/SubsystemFileTree';
28
34
  export { GraphLayoutCover } from './subsystem/GraphLayoutCover';
29
35
  export type { GraphLayoutCoverProps } from './subsystem/GraphLayoutCover';
30
36
  export type { SubsystemComponent, SubsystemComponentEdge, SubsystemRelation, SubsystemRelationType, SubsystemWalkthrough, SubsystemWalkthroughStep, SubsystemWalkthroughMechanism, SubsystemModelDocument, SubsystemComponentConstruct, SubsystemComponentRole, SubsystemFramework, SubsystemStereotype, SubsystemEdgeMechanism, SubsystemEdgeView, SubsystemConstructDeclaration, SubsystemDeclarationProvenance, } from './subsystem/model';
31
- export { constructBadgeLabel, constructBadgeColor, rightBadgeLabel, rightBadgeColor, deriveNameFromSymbol, nodeMinWidthForBadges, deriveGraphEdges, derivedGraphEdgeId, walkthroughStepGraphEdgeId, isRelationMechanism, isWalkthroughMechanism, SUBSYSTEM_RELATION_TYPES, SUBSYSTEM_WALKTHROUGH_MECHANISMS, ROLE_COLOR, ROLE_LABEL, FRAMEWORK_BADGE_COLOR, PROPOSED_COLOR, } from './subsystem/model';
37
+ export { constructBadgeLabel, constructBadgeColor, rightBadgeLabel, rightBadgeColor, deriveNameFromSymbol, nodeMinWidthForBadges, deriveGraphEdges, isConstructsOnlyModel, derivedGraphEdgeId, walkthroughStepGraphEdgeId, isRelationMechanism, isWalkthroughMechanism, SUBSYSTEM_RELATION_TYPES, SUBSYSTEM_WALKTHROUGH_MECHANISMS, ROLE_COLOR, ROLE_LABEL, FRAMEWORK_BADGE_COLOR, PROPOSED_COLOR, } from './subsystem/model';
32
38
  export type { SubsystemDeclarationRef, SubsystemOpenFileOptions, DeclarationFreshness, } from './subsystem/declarationRef';
33
39
  export { parseSourceLocation, normalizeDeclarationLine, extractDeclarationLine, DECLARATION_HASH_ALGO, } from './subsystem/declarationRef';
34
40
  export { PierreFileView, PierreSnippetView, PierreWalkthroughCodeView, sliceSnippetWindow, resolvePierreSyntaxThemeName } from './pierre';
@@ -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":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,qBAAqB,EACrB,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AAGrC,YAAY,EACV,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,EACvB,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AACpB,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;AACpB,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,gCAAgC,EAChC,yBAAyB,EACzB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACxE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC1E,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAGpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,YAAY,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAClH,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,YAAY,EACV,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,mBAAmB,EACnB,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,0BAA0B,EAC1B,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,cAAc,EACd,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,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;AAC3B,YAAY,EACV,SAAS,EACT,eAAe,EACf,SAAS,GACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,sBAAsB,EACtB,2BAA2B,EAC3B,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,6BAA6B,EAC7B,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,gCAAgC,EAChC,UAAU,EACV,UAAU,EACV,qBAAqB,EACrB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAC1I,YAAY,EACV,mBAAmB,EACnB,sBAAsB,EACtB,8BAA8B,EAC9B,YAAY,EACZ,qBAAqB,GACtB,MAAM,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -12,13 +12,16 @@ export { computeElkLayout, createElkLayouter } from './utils/elkLayout';
12
12
  export { useElkLayout, applyElkPathsToEdges } from './hooks/useElkLayout';
13
13
  // Subsystem component graph
14
14
  export { SubsystemComponentGraph } from './subsystem/SubsystemComponentGraph';
15
+ export { ConstructsCatalog } from './subsystem/ConstructsCatalog';
15
16
  export { ComponentDeclaration } from './subsystem/ComponentDeclaration';
17
+ export { SubsystemDiagnosticToggle, diagnosticStatusColor, diagnosticTitle, } from './subsystem/DiagnosticToggle';
18
+ export { SubsystemIssueList, SubsystemIssueCard, groupIssuesByTarget, groupIssuesByCategory, issueCategory, issueKindLabel, humanizeIssueKind, worstSeverity, severityRank, SUBSYSTEM_ISSUE_CATEGORIES, SUBSYSTEM_ISSUE_CATEGORY_LABEL, } from './subsystem/IssueList';
16
19
  export { MECHANISM_COLOR, MECHANISM_STYLE } from './subsystem/model';
17
20
  export { CONSTRUCT_COLOR, componentColor, constructColorsFromPierreTheme } from './pierre/constructColors';
18
21
  export { purlRepoKey, purlOwnerName, buildTreePathMapping, buildRepoGroups, repoAvatarUrl, } from './subsystem/paths';
19
22
  export { SubsystemFileTree } from './subsystem/SubsystemFileTree';
20
23
  export { GraphLayoutCover } from './subsystem/GraphLayoutCover';
21
- export { constructBadgeLabel, constructBadgeColor, rightBadgeLabel, rightBadgeColor, deriveNameFromSymbol, nodeMinWidthForBadges, deriveGraphEdges, derivedGraphEdgeId, walkthroughStepGraphEdgeId, isRelationMechanism, isWalkthroughMechanism, SUBSYSTEM_RELATION_TYPES, SUBSYSTEM_WALKTHROUGH_MECHANISMS, ROLE_COLOR, ROLE_LABEL, FRAMEWORK_BADGE_COLOR, PROPOSED_COLOR, } from './subsystem/model';
24
+ export { constructBadgeLabel, constructBadgeColor, rightBadgeLabel, rightBadgeColor, deriveNameFromSymbol, nodeMinWidthForBadges, deriveGraphEdges, isConstructsOnlyModel, derivedGraphEdgeId, walkthroughStepGraphEdgeId, isRelationMechanism, isWalkthroughMechanism, SUBSYSTEM_RELATION_TYPES, SUBSYSTEM_WALKTHROUGH_MECHANISMS, ROLE_COLOR, ROLE_LABEL, FRAMEWORK_BADGE_COLOR, PROPOSED_COLOR, } from './subsystem/model';
22
25
  export { parseSourceLocation, normalizeDeclarationLine, extractDeclarationLine, DECLARATION_HASH_ALGO, } from './subsystem/declarationRef';
23
26
  // Pierre code views (@pierre/diffs wrappers)
24
27
  export { PierreFileView, PierreSnippetView, PierreWalkthroughCodeView, sliceSnippetWindow, resolvePierreSyntaxThemeName } from './pierre';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
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,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAG1E,4BAA4B;AAC5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAO9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,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,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAoBhE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,0BAA0B,EAC1B,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;AAEpC,6CAA6C;AAC7C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC"}
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,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAG1E,4BAA4B;AAC5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAOlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,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,aAAa,EACb,YAAY,EACZ,0BAA0B,EAC1B,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC;AAY/B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,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,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAoBhE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,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;AAEpC,6CAA6C;AAC7C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC"}
@@ -81,7 +81,9 @@ export interface ComponentDeclarationProps {
81
81
  onVerify?: (componentId: string) => void;
82
82
  /** Live verification status for the selected component. */
83
83
  verification?: ComponentVerificationState | null;
84
+ /** Start with the file path row visible (catalog / source-first views). */
85
+ defaultShowFile?: boolean;
84
86
  }
85
87
  /** Declaration panel for the selected component — its definition, code-style. */
86
- export declare function ComponentDeclaration({ component, onOpenFile, onRelatedSelect, maxWidth, onVerify, verification, }: ComponentDeclarationProps): import("react").JSX.Element;
88
+ export declare function ComponentDeclaration({ component, onOpenFile, onRelatedSelect, maxWidth, onVerify, verification, defaultShowFile, }: ComponentDeclarationProps): import("react").JSX.Element;
87
89
  //# sourceMappingURL=ComponentDeclaration.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentDeclaration.d.ts","sourceRoot":"","sources":["../../src/subsystem/ComponentDeclaration.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ComponentDeclaration.d.ts","sourceRoot":"","sources":["../../src/subsystem/ComponentDeclaration.tsx"],"names":[],"mappings":"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"}
@@ -154,11 +154,11 @@ function verificationSummary(v, muted, ok, warn) {
154
154
  return { text: bits.join(' · ') || 'done', color: muted };
155
155
  }
156
156
  /** Declaration panel for the selected component — its definition, code-style. */
157
- export function ComponentDeclaration({ component, onOpenFile, onRelatedSelect: _onRelatedSelect, maxWidth, onVerify, verification, }) {
157
+ export function ComponentDeclaration({ component, onOpenFile, onRelatedSelect: _onRelatedSelect, maxWidth, onVerify, verification, defaultShowFile = false, }) {
158
158
  const { theme, mode } = useTheme();
159
159
  const pierreSyntaxTheme = resolvePierreSyntaxThemeName(mode);
160
160
  const [fileHovered, setFileHovered] = useState(false);
161
- const [showFile, setShowFile] = useState(false);
161
+ const [showFile, setShowFile] = useState(defaultShowFile);
162
162
  const [showPurpose, setShowPurpose] = useState(false);
163
163
  const muted = theme.colors.textMuted ?? theme.colors.textSecondary;
164
164
  const color = componentColor(component, pierreSyntaxTheme);
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentDeclaration.js","sourceRoot":"","sources":["../../src/subsystem/ComponentDeclaration.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ComponentDeclaration.js","sourceRoot":"","sources":["../../src/subsystem/ComponentDeclaration.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ConstructsCatalog — master/detail for a constructs-only subsystem
3
+ * (components, no topology or walkthrough edges).
4
+ *
5
+ * Left: the model's constructs as a toggle list. Right: signatures for
6
+ * every construct currently on (`ComponentDeclaration`, stacked). File
7
+ * opens still use the bottom FileDrawer when the host injects a viewer.
8
+ */
9
+ import type { ReactNode } from 'react';
10
+ import { type SubsystemComponent } from './model';
11
+ import type { SubsystemOpenFileOptions } from './declarationRef';
12
+ import type { ComponentVerificationState } from './ComponentDeclaration';
13
+ import { type SubsystemDiagnostic } from './DiagnosticToggle';
14
+ export interface ConstructsCatalogProps {
15
+ components: SubsystemComponent[];
16
+ onSelect?: (componentId: string) => void;
17
+ title?: string;
18
+ hideSidebar?: boolean;
19
+ description?: string;
20
+ diagnostic?: SubsystemDiagnostic;
21
+ sidebarExtra?: ReactNode;
22
+ sidebarAfterDescription?: ReactNode;
23
+ renderFileViewer?: (file: string, opts?: SubsystemOpenFileOptions) => ReactNode;
24
+ renderFileView?: (component: SubsystemComponent) => ReactNode;
25
+ onFileSelect?: (file: string) => void;
26
+ onVerifyComponent?: (componentId: string) => void;
27
+ componentVerification?: ComponentVerificationState | null;
28
+ }
29
+ export declare function ConstructsCatalog({ components, onSelect, title, hideSidebar, description, diagnostic, sidebarExtra, sidebarAfterDescription, renderFileViewer, renderFileView, onFileSelect, onVerifyComponent, componentVerification, }: ConstructsCatalogProps): import("react").JSX.Element;
30
+ //# sourceMappingURL=ConstructsCatalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConstructsCatalog.d.ts","sourceRoot":"","sources":["../../src/subsystem/ConstructsCatalog.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAML,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAKzF,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,uBAAuB,CAAC,EAAE,SAAS,CAAC;IACpC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,wBAAwB,KAAK,SAAS,CAAC;IAChF,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,kBAAkB,KAAK,SAAS,CAAC;IAC9D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,qBAAqB,CAAC,EAAE,0BAA0B,GAAG,IAAI,CAAC;CAC3D;AA4BD,wBAAgB,iBAAiB,CAAC,EAChC,UAAU,EACV,QAAQ,EACR,KAAK,EACL,WAAW,EACX,WAAW,EACX,UAAU,EACV,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,GACtB,EAAE,sBAAsB,+BAqgBxB"}
@@ -0,0 +1,329 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * ConstructsCatalog — master/detail for a constructs-only subsystem
4
+ * (components, no topology or walkthrough edges).
5
+ *
6
+ * Left: the model's constructs as a toggle list. Right: signatures for
7
+ * every construct currently on (`ComponentDeclaration`, stacked). File
8
+ * opens still use the bottom FileDrawer when the host injects a viewer.
9
+ */
10
+ import { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react';
11
+ import { useTheme } from '@principal-ade/industry-theme';
12
+ import { IndustryMarkdownSlide } from 'themed-markdown';
13
+ import { ChevronDown, ChevronUp } from 'lucide-react';
14
+ import { constructBadgeColor, constructBadgeLabel, deriveNameFromSymbol, rightBadgeColor, rightBadgeLabel, } from './model';
15
+ import { ComponentDeclaration } from './ComponentDeclaration';
16
+ import { SubsystemDiagnosticToggle } from './DiagnosticToggle';
17
+ import { FileDrawer } from './FileDrawer';
18
+ import { componentColor } from '../pierre/constructColors';
19
+ import { resolvePierreSyntaxThemeName } from '../pierre/pierreSyntaxTheme';
20
+ const FileDrawerContent = memo(function FileDrawerContent({ render, file, startLine, }) {
21
+ return _jsx(_Fragment, { children: render(file, startLine != null ? { startLine } : undefined) });
22
+ });
23
+ function resolveRelated(components, ref) {
24
+ const clean = ref.replace(/\(\)$/, '');
25
+ return components.find((c) => c.id === clean ||
26
+ c.name === clean ||
27
+ c.symbol === clean ||
28
+ c.symbol?.replace(/\(\)$/, '') === clean);
29
+ }
30
+ export function ConstructsCatalog({ components, onSelect, title, hideSidebar, description, diagnostic, sidebarExtra, sidebarAfterDescription, renderFileViewer, renderFileView, onFileSelect, onVerifyComponent, componentVerification, }) {
31
+ const { theme, mode } = useTheme();
32
+ const pierreTheme = resolvePierreSyntaxThemeName(mode);
33
+ const muted = theme.colors.textMuted ?? theme.colors.textSecondary;
34
+ const [visibleIds, setVisibleIds] = useState(() => components[0] ? [components[0].id] : []);
35
+ const [focusedId, setFocusedId] = useState(() => components[0]?.id ?? null);
36
+ const [descriptionVisible, setDescriptionVisible] = useState(false);
37
+ const [descToggleHover, setDescToggleHover] = useState(false);
38
+ const [drawer, setDrawer] = useState(null);
39
+ const focusedRef = useRef(focusedId);
40
+ focusedRef.current = focusedId;
41
+ const visibleSet = useMemo(() => new Set(visibleIds), [visibleIds]);
42
+ const visibleComponents = useMemo(() => components.filter((c) => visibleSet.has(c.id)), [components, visibleSet]);
43
+ useEffect(() => {
44
+ if (!focusedId)
45
+ return;
46
+ document.getElementById(`construct-${focusedId}`)?.scrollIntoView({ block: 'nearest' });
47
+ }, [focusedId]);
48
+ useEffect(() => {
49
+ const last = visibleIds[visibleIds.length - 1];
50
+ if (!last)
51
+ return;
52
+ document
53
+ .getElementById(`construct-signature-${last}`)
54
+ ?.scrollIntoView({ block: 'nearest' });
55
+ }, [visibleIds]);
56
+ // Drop ids that left the model; if nothing remains, show the first construct.
57
+ useEffect(() => {
58
+ const ids = new Set(components.map((c) => c.id));
59
+ setVisibleIds((prev) => {
60
+ const next = prev.filter((id) => ids.has(id));
61
+ if (next.length > 0 || components.length === 0)
62
+ return next;
63
+ return [components[0].id];
64
+ });
65
+ setFocusedId((prev) => {
66
+ if (prev && ids.has(prev))
67
+ return prev;
68
+ return components[0]?.id ?? null;
69
+ });
70
+ }, [components]);
71
+ const toggle = useCallback((id) => {
72
+ setFocusedId(id);
73
+ setVisibleIds((prev) => prev.includes(id) ? prev.filter((x) => x !== id) : [...prev, id]);
74
+ onSelect?.(id);
75
+ }, [onSelect]);
76
+ const show = useCallback((id) => {
77
+ setFocusedId(id);
78
+ setVisibleIds((prev) => (prev.includes(id) ? prev : [...prev, id]));
79
+ onSelect?.(id);
80
+ }, [onSelect]);
81
+ const focusAt = useCallback((id) => {
82
+ setFocusedId(id);
83
+ }, []);
84
+ const onOpenFile = useCallback((file, opts) => {
85
+ const startLine = opts?.startLine;
86
+ setDrawer((prev) => {
87
+ if (prev?.file === file && prev.startLine === startLine)
88
+ return null;
89
+ return { file, startLine };
90
+ });
91
+ onFileSelect?.(file);
92
+ }, [onFileSelect]);
93
+ const onRelatedSelect = useCallback((ref) => {
94
+ const comp = resolveRelated(components, ref);
95
+ if (!comp)
96
+ return;
97
+ show(comp.id);
98
+ }, [components, show]);
99
+ const fileViewer = useMemo(() => {
100
+ if (renderFileViewer)
101
+ return renderFileViewer;
102
+ if (renderFileView) {
103
+ const byFile = new Map(components.filter((c) => c.file).map((c) => [c.file, c]));
104
+ return (file, _opts) => {
105
+ const comp = byFile.get(file);
106
+ return comp ? renderFileView(comp) : null;
107
+ };
108
+ }
109
+ return undefined;
110
+ }, [renderFileViewer, renderFileView, components]);
111
+ const fileViewerRef = useRef(fileViewer);
112
+ fileViewerRef.current = fileViewer;
113
+ const renderDrawerContent = useCallback((file, opts) => fileViewerRef.current?.(file, opts) ?? null, []);
114
+ const moveFocus = useCallback((delta) => {
115
+ if (components.length === 0)
116
+ return;
117
+ const idx = Math.max(0, components.findIndex((c) => c.id === focusedRef.current));
118
+ const next = components[(idx + delta + components.length) % components.length];
119
+ focusAt(next.id);
120
+ }, [components, focusAt]);
121
+ useEffect(() => {
122
+ const onKey = (e) => {
123
+ const el = e.target;
124
+ if (el &&
125
+ (el.tagName === 'INPUT' ||
126
+ el.tagName === 'TEXTAREA' ||
127
+ el.tagName === 'SELECT' ||
128
+ el.isContentEditable)) {
129
+ return;
130
+ }
131
+ if (e.metaKey || e.ctrlKey || e.altKey)
132
+ return;
133
+ if (e.key === 'ArrowDown') {
134
+ e.preventDefault();
135
+ moveFocus(1);
136
+ }
137
+ else if (e.key === 'ArrowUp') {
138
+ e.preventDefault();
139
+ moveFocus(-1);
140
+ }
141
+ else if (e.key === 'Home') {
142
+ e.preventDefault();
143
+ if (components[0])
144
+ focusAt(components[0].id);
145
+ }
146
+ else if (e.key === 'End') {
147
+ e.preventDefault();
148
+ const last = components[components.length - 1];
149
+ if (last)
150
+ focusAt(last.id);
151
+ }
152
+ else if (e.key === ' ' || e.key === 'Enter') {
153
+ if (focusedRef.current) {
154
+ e.preventDefault();
155
+ toggle(focusedRef.current);
156
+ }
157
+ }
158
+ else if (e.key === 'Escape' && drawer) {
159
+ setDrawer(null);
160
+ }
161
+ };
162
+ window.addEventListener('keydown', onKey);
163
+ return () => window.removeEventListener('keydown', onKey);
164
+ }, [components, drawer, moveFocus, focusAt, toggle]);
165
+ const showChrome = !hideSidebar &&
166
+ !!(title || description || diagnostic || sidebarExtra || sidebarAfterDescription);
167
+ const showDesc = !!description && descriptionVisible;
168
+ return (_jsxs("div", { "data-testid": "constructs-catalog", style: {
169
+ width: '100%',
170
+ height: '100%',
171
+ minHeight: 0,
172
+ display: 'flex',
173
+ flexDirection: 'row',
174
+ background: theme.colors.background,
175
+ }, children: [_jsxs("aside", { style: {
176
+ width: 280,
177
+ minWidth: 200,
178
+ maxWidth: 360,
179
+ flexShrink: 0,
180
+ borderRight: `1px solid ${theme.colors.border}`,
181
+ background: theme.colors.backgroundSecondary ?? theme.colors.background,
182
+ display: 'flex',
183
+ flexDirection: 'column',
184
+ overflow: 'hidden',
185
+ }, children: [showChrome && (_jsxs("div", { style: {
186
+ flex: showDesc ? '0 0 auto' : undefined,
187
+ padding: '16px 16px 8px',
188
+ display: 'flex',
189
+ flexDirection: 'column',
190
+ gap: 12,
191
+ }, children: [sidebarExtra, (title || description || diagnostic) && (_jsxs("div", { style: { display: 'flex', alignItems: 'flex-start', gap: 8 }, children: [title && (_jsx("h2", { style: {
192
+ margin: 0,
193
+ flex: 1,
194
+ minWidth: 0,
195
+ fontSize: theme.fontSizes[2],
196
+ fontWeight: 600,
197
+ color: theme.colors.text,
198
+ fontFamily: theme.fonts.monospace,
199
+ }, children: title })), _jsxs("div", { style: {
200
+ display: 'flex',
201
+ alignItems: 'center',
202
+ gap: 4,
203
+ flexShrink: 0,
204
+ marginLeft: title ? undefined : 'auto',
205
+ }, children: [diagnostic && _jsx(SubsystemDiagnosticToggle, { ...diagnostic }), description && (_jsx("button", { type: "button", "aria-expanded": descriptionVisible, "aria-label": descriptionVisible ? 'Hide description' : 'Show description', title: descriptionVisible ? 'Hide description' : 'Show description', onMouseEnter: () => setDescToggleHover(true), onMouseLeave: () => setDescToggleHover(false), onClick: () => setDescriptionVisible((v) => !v), style: {
206
+ display: 'inline-flex',
207
+ alignItems: 'center',
208
+ justifyContent: 'center',
209
+ flexShrink: 0,
210
+ width: 22,
211
+ height: 22,
212
+ padding: 0,
213
+ border: 'none',
214
+ borderRadius: 4,
215
+ background: descToggleHover ? theme.colors.border : 'transparent',
216
+ color: descToggleHover ? theme.colors.text : muted,
217
+ cursor: 'pointer',
218
+ }, children: descriptionVisible ? (_jsx(ChevronUp, { size: 14 })) : (_jsx(ChevronDown, { size: 14 })) }))] })] })), showDesc && (_jsx("div", { style: { fontSize: theme.fontSizes[0], lineHeight: 1.5 }, children: _jsx(IndustryMarkdownSlide, { content: description, slideIdPrefix: "constructs-desc", slideIndex: 0, isVisible: true, theme: theme, disableScroll: true, disableBasePadding: true, enableKeyboardScrolling: false, autoFocusOnVisible: false }) })), sidebarAfterDescription] })), _jsx("div", { style: {
219
+ padding: '10px 16px 6px',
220
+ fontSize: theme.fontSizes[0],
221
+ fontFamily: theme.fonts.monospace,
222
+ letterSpacing: 0.4,
223
+ textTransform: 'uppercase',
224
+ color: muted,
225
+ flexShrink: 0,
226
+ }, children: "Constructs" }), _jsx("ul", { role: "listbox", "aria-label": "Constructs", "aria-multiselectable": "true", "aria-activedescendant": focusedId ? `construct-${focusedId}` : undefined, style: {
227
+ listStyle: 'none',
228
+ margin: 0,
229
+ padding: '0 8px 12px',
230
+ overflowY: 'auto',
231
+ flex: 1,
232
+ minHeight: 0,
233
+ }, children: components.map((c) => {
234
+ const visible = visibleSet.has(c.id);
235
+ const focused = c.id === focusedId;
236
+ const color = componentColor(c, pierreTheme);
237
+ const badgeColor = constructBadgeColor(c) ?? color;
238
+ const badgeLabel = constructBadgeLabel(c);
239
+ const displayName = deriveNameFromSymbol(c.symbol, c.construct, c.name, c.file, c.stereotype);
240
+ const role = rightBadgeLabel(c);
241
+ const roleColor = rightBadgeColor(c);
242
+ return (_jsx("li", { role: "presentation", children: _jsxs("button", { type: "button", id: `construct-${c.id}`, role: "option", "aria-selected": visible, "data-testid": `construct-row-${c.id}`, onClick: () => toggle(c.id), style: {
243
+ display: 'flex',
244
+ flexDirection: 'column',
245
+ alignItems: 'stretch',
246
+ gap: 2,
247
+ width: '100%',
248
+ margin: '2px 0',
249
+ padding: '8px 10px 8px 12px',
250
+ textAlign: 'left',
251
+ border: 'none',
252
+ borderRadius: 6,
253
+ background: visible
254
+ ? theme.colors.background
255
+ : 'transparent',
256
+ cursor: 'pointer',
257
+ boxShadow: visible
258
+ ? `inset 0 0 0 1px ${theme.colors.border}`
259
+ : undefined,
260
+ outline: focused && !visible ? `1px dotted ${muted}` : undefined,
261
+ outlineOffset: -1,
262
+ opacity: visible ? 1 : 0.72,
263
+ }, children: [_jsxs("span", { style: {
264
+ display: 'flex',
265
+ alignItems: 'baseline',
266
+ gap: 8,
267
+ minWidth: 0,
268
+ }, children: [_jsx("span", { style: {
269
+ flex: 1,
270
+ minWidth: 0,
271
+ overflow: 'hidden',
272
+ textOverflow: 'ellipsis',
273
+ whiteSpace: 'nowrap',
274
+ fontFamily: theme.fonts.monospace,
275
+ fontSize: theme.fontSizes[1],
276
+ color,
277
+ fontWeight: visible ? 600 : 500,
278
+ }, children: displayName }), role && roleColor && (_jsx("span", { style: {
279
+ flexShrink: 0,
280
+ fontFamily: theme.fonts.monospace,
281
+ fontSize: theme.fontSizes[0],
282
+ letterSpacing: 0.4,
283
+ textTransform: 'uppercase',
284
+ color: roleColor,
285
+ }, children: role }))] }), badgeLabel && (_jsx("span", { style: {
286
+ display: 'flex',
287
+ alignItems: 'center',
288
+ minWidth: 0,
289
+ }, children: _jsx("span", { style: {
290
+ flex: 1,
291
+ minWidth: 0,
292
+ overflow: 'hidden',
293
+ textOverflow: 'ellipsis',
294
+ whiteSpace: 'nowrap',
295
+ fontFamily: theme.fonts.monospace,
296
+ fontSize: theme.fontSizes[0],
297
+ letterSpacing: 0.4,
298
+ textTransform: 'uppercase',
299
+ color: badgeColor,
300
+ }, children: badgeLabel }) }))] }) }, c.id));
301
+ }) })] }), _jsxs("div", { style: {
302
+ flex: 1,
303
+ minWidth: 0,
304
+ minHeight: 0,
305
+ display: 'flex',
306
+ flexDirection: 'column',
307
+ }, children: [_jsx("div", { "data-testid": "construct-signature", style: {
308
+ flex: 1,
309
+ minHeight: 0,
310
+ overflow: 'auto',
311
+ padding: 16,
312
+ display: 'flex',
313
+ flexDirection: 'column',
314
+ gap: 12,
315
+ }, children: visibleComponents.length > 0 ? (visibleComponents.map((c) => (_jsx("div", { id: `construct-signature-${c.id}`, style: {
316
+ border: `1px solid ${theme.colors.border}`,
317
+ borderRadius: 8,
318
+ overflow: 'hidden',
319
+ flexShrink: 0,
320
+ }, children: _jsx(ComponentDeclaration, { component: c, onOpenFile: fileViewer ? onOpenFile : undefined, defaultShowFile: !!fileViewer, onRelatedSelect: onRelatedSelect, onVerify: onVerifyComponent, verification: componentVerification && focusedId === c.id
321
+ ? componentVerification
322
+ : undefined }) }, c.id)))) : (_jsx("p", { style: {
323
+ margin: 0,
324
+ color: muted,
325
+ fontFamily: theme.fonts.body,
326
+ fontSize: theme.fontSizes[1],
327
+ }, children: "Toggle constructs on the left to show their signatures." })) }), _jsx(FileDrawer, { title: drawer?.file ?? null, onClose: () => setDrawer(null), fillHeight: drawer != null && drawer.startLine == null, children: drawer ? (_jsx(FileDrawerContent, { render: renderDrawerContent, file: drawer.file, startLine: drawer.startLine })) : null })] })] }));
328
+ }
329
+ //# sourceMappingURL=ConstructsCatalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConstructsCatalog.js","sourceRoot":"","sources":["../../src/subsystem/ConstructsCatalog.tsx"],"names":[],"mappings":"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"}