@principal-ai/subsystems-react 0.51.2 → 0.51.3

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 (73) hide show
  1. package/dist/index.d.ts +5 -3
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +3 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/subsystem/C4Graph.d.ts +12 -1
  6. package/dist/subsystem/C4Graph.d.ts.map +1 -1
  7. package/dist/subsystem/C4Graph.js +82 -14
  8. package/dist/subsystem/C4Graph.js.map +1 -1
  9. package/dist/subsystem/C4NodeCard.d.ts +22 -22
  10. package/dist/subsystem/C4NodeCard.d.ts.map +1 -1
  11. package/dist/subsystem/C4NodeCard.js +56 -77
  12. package/dist/subsystem/C4NodeCard.js.map +1 -1
  13. package/dist/subsystem/SubsystemComponentGraph.d.ts.map +1 -1
  14. package/dist/subsystem/SubsystemComponentGraph.js +0 -6
  15. package/dist/subsystem/SubsystemComponentGraph.js.map +1 -1
  16. package/dist/subsystem/TrailsPanel.d.ts.map +1 -1
  17. package/dist/subsystem/TrailsPanel.js +8 -4
  18. package/dist/subsystem/TrailsPanel.js.map +1 -1
  19. package/dist/subsystem/c4.d.ts +24 -86
  20. package/dist/subsystem/c4.d.ts.map +1 -1
  21. package/dist/subsystem/c4.js +6 -285
  22. package/dist/subsystem/c4.js.map +1 -1
  23. package/dist/subsystem/c4Evidence.js +1 -1
  24. package/dist/subsystem/c4Evidence.js.map +1 -1
  25. package/dist/subsystem/model.d.ts +8 -0
  26. package/dist/subsystem/model.d.ts.map +1 -1
  27. package/dist/subsystem/model.js.map +1 -1
  28. package/dist/subsystem/techIcons/bun.d.ts +11 -0
  29. package/dist/subsystem/techIcons/bun.d.ts.map +1 -0
  30. package/dist/subsystem/techIcons/bun.js +11 -0
  31. package/dist/subsystem/techIcons/bun.js.map +1 -0
  32. package/dist/subsystem/techIcons/index.d.ts +36 -0
  33. package/dist/subsystem/techIcons/index.d.ts.map +1 -0
  34. package/dist/subsystem/techIcons/index.js +55 -0
  35. package/dist/subsystem/techIcons/index.js.map +1 -0
  36. package/dist/subsystem/techIcons/node.d.ts +12 -0
  37. package/dist/subsystem/techIcons/node.d.ts.map +1 -0
  38. package/dist/subsystem/techIcons/node.js +39 -0
  39. package/dist/subsystem/techIcons/node.js.map +1 -0
  40. package/dist/subsystem/techIcons/react.d.ts +12 -0
  41. package/dist/subsystem/techIcons/react.d.ts.map +1 -0
  42. package/dist/subsystem/techIcons/react.js +19 -0
  43. package/dist/subsystem/techIcons/react.js.map +1 -0
  44. package/dist/utils/elkLayout.d.ts.map +1 -1
  45. package/dist/utils/elkLayout.js +16 -5
  46. package/dist/utils/elkLayout.js.map +1 -1
  47. package/package.json +3 -3
  48. package/src/index.ts +4 -6
  49. package/src/stories/Subsystem/C4Graph/C4Container.stories.tsx +212 -0
  50. package/src/stories/Subsystem/C4Graph/C4NodeGallery.stories.tsx +20 -10
  51. package/src/stories/Subsystem/ComponentGraph/IssueOverlay.stories.tsx +4 -2
  52. package/src/subsystem/C4Graph.tsx +127 -12
  53. package/src/subsystem/C4NodeCard.test.ts +71 -77
  54. package/src/subsystem/C4NodeCard.tsx +65 -95
  55. package/src/subsystem/SubsystemComponentGraph.tsx +0 -6
  56. package/src/subsystem/TrailsPanel.tsx +10 -5
  57. package/src/subsystem/c4.ts +23 -357
  58. package/src/subsystem/c4Evidence.test.ts +1 -1
  59. package/src/subsystem/c4Evidence.ts +1 -1
  60. package/src/subsystem/model.ts +8 -0
  61. package/src/subsystem/techIcons/bun.ts +10 -0
  62. package/src/subsystem/techIcons/index.tsx +73 -0
  63. package/src/subsystem/techIcons/node.ts +38 -0
  64. package/src/subsystem/techIcons/react.ts +18 -0
  65. package/src/subsystem/techIcons/techIcons.test.ts +39 -0
  66. package/src/utils/elkLayout.ts +16 -5
  67. package/dist/stories/Subsystem/C4Graph/c4ProposedElements.fixture.d.ts +0 -493
  68. package/dist/stories/Subsystem/C4Graph/c4ProposedElements.fixture.d.ts.map +0 -1
  69. package/dist/stories/Subsystem/C4Graph/c4ProposedElements.fixture.js +0 -329
  70. package/dist/stories/Subsystem/C4Graph/c4ProposedElements.fixture.js.map +0 -1
  71. package/src/stories/Subsystem/C4Graph/ProposedElements.stories.tsx +0 -293
  72. package/src/stories/Subsystem/C4Graph/c4ProposedElements.fixture.ts +0 -366
  73. package/src/subsystem/c4.test.ts +0 -573
@@ -8,27 +8,27 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
8
  *
9
9
  * The encoding has one job: make confirmation state legible at a glance. A box
10
10
  * nobody has looked at must not read the same as a box a person signed off.
11
- * Kind says what the box is — shape, size, and a written tag — and everything
12
- * else in C4 notation (technology, description) is surfaced in the order a
13
- * reader wants it.
11
+ * Kind is carried by shape and size — plus an icon for a container's sort,
12
+ * application vs data-store — and C4 notation is surfaced in the order a reader
13
+ * wants it: technology on the top row, description under the label.
14
14
  */
15
15
  import { useTheme } from '@principal-ade/industry-theme';
16
- import { Cloud, Component, Container, UserRound } from 'lucide-react';
17
- import { describeConstructBreakdown } from './model';
16
+ import { AppWindow, Database } from 'lucide-react';
17
+ import { TechMark, technologyBrand } from './techIcons';
18
18
  /**
19
19
  * Card box for a container: a wide rectangle. A container carries four things
20
- * at once (tag, label, type + technology, and the notation gap it still has),
21
- * and a strip would force the last two to truncate.
20
+ * at once (technology row, label, description, and the notation gap it still
21
+ * has), and a strip would force the last two to wrap hard.
22
22
  */
23
- export const NODE_W = 210;
24
- export const NODE_H = 138;
23
+ export const NODE_W = 250;
24
+ export const NODE_H = 150;
25
25
  /**
26
26
  * A component is a proper square — equal sides, and visibly smaller than the
27
27
  * container it sits inside. Square-vs-rectangle is the clearest signal that
28
28
  * these are different C4 levels, and it survives grayscale and colour-blind
29
29
  * reading where a border-weight difference alone does not.
30
30
  */
31
- export const COMPONENT_SIZE = 132;
31
+ export const COMPONENT_SIZE = 140;
32
32
  /**
33
33
  * Per-level box size. The graph lays out against these, so a square component
34
34
  * and a rectangular container do not collide at a shared nominal width.
@@ -39,12 +39,10 @@ export function nodeSize(node) {
39
39
  : { width: NODE_W, height: NODE_H };
40
40
  }
41
41
  /**
42
- * Fixed slot heights, so rows line up across every card regardless of which
43
- * optional fields are present. Without these a card missing its notation-gap
44
- * marker is two lines shorter and a row of cards reads as ragged.
42
+ * Fixed label slot, so the description below sits at the same y on every card
43
+ * even when a label is one line rather than two.
45
44
  */
46
45
  const LABEL_SLOT_H = 40;
47
- const GAP_SLOT_H = 18;
48
46
  /**
49
47
  * Border style for one node: colour, dash and weight, from confirmation state
50
48
  * and level.
@@ -75,30 +73,17 @@ export function nodeStyle(node, theme, selected = false) {
75
73
  // Dashed — an agent asked; a human has not answered.
76
74
  return { color: theme.colors.warning ?? '#e8a33a', dash: 'dashed', width: weight };
77
75
  case 'rejected':
78
- // Should never be drawn (buildC4Model drops it); belt-and-braces.
76
+ // Should never be drawn (a rejected element is not projected); belt-and-braces.
79
77
  return { color: muted, dash: 'dotted', width: 1 };
80
78
  }
81
79
  }
82
- function baseName(path) {
83
- const parts = path.split('/').filter(Boolean);
84
- return parts[parts.length - 1] ?? path;
85
- }
86
80
  /**
87
- * The kind + technology line under the label.
88
- *
89
- * The container kind moved up to the icon row (see `nodeTypeLabel`), so it is
90
- * not repeated here. Technology is the remaining confirmed attribute; without
91
- * one we fall back to what the document told us.
81
+ * The line under the label: the element's one-line responsibility, which C4
82
+ * asks every element to carry. No fallback — when nothing is stated, the
83
+ * notation-gap row says so rather than the card inventing a summary.
92
84
  */
93
85
  export function nodeSubtitle(node) {
94
- if (node.technology)
95
- return node.technology;
96
- // No stated technology: fall back to what the document told us.
97
- if (node.kind === 'component') {
98
- return `${node.component?.construct ?? 'code'}${node.component?.file ? ` · ${baseName(node.component.file)}` : ''}`;
99
- }
100
- const count = node.members.length;
101
- return `${describeConstructBreakdown(node.constructs)}${count > 0 ? ` · ${count} component${count === 1 ? '' : 's'}` : ''}`;
86
+ return node.description ?? '';
102
87
  }
103
88
  /**
104
89
  * What the box IS — its C4 kind. An accepted container is still a container;
@@ -110,30 +95,27 @@ export function nodeTag(node) {
110
95
  return node.kind;
111
96
  }
112
97
  /**
113
- * The glyph for the C4 kind, shown in place of a word. The kind is already
114
- * carried by the box shape (see `nodeShape`); the icon lets the top row spend
115
- * its one piece of text on the container's kind instead of repeating
116
- * "container".
98
+ * The icon on the top row: a container's sort, **application vs data-store**.
99
+ *
100
+ * The C4 kind itself does not need a glyph — the box shape already carries it
101
+ * (square vs rectangle vs pill), and the row's one text slot is worth more
102
+ * spent on the technology. Only containers have a C4-recognised split, so the
103
+ * other three kinds return nothing.
117
104
  */
118
105
  export function nodeKindIcon(node) {
119
- switch (node.kind) {
120
- case 'container':
121
- return Container;
122
- case 'component':
123
- return Component;
124
- case 'external-system':
125
- return Cloud;
126
- case 'person':
127
- return UserRound;
128
- }
106
+ if (node.kind !== 'container')
107
+ return undefined;
108
+ return node.containerKind === 'data-store' ? Database : AppWindow;
129
109
  }
130
110
  /**
131
- * The word beside the kind icon: what sort of container this is — C4's two,
132
- * `application` or `data-store`. The other three kinds have no such subtype,
133
- * so they show nothing; the icon and shape are the whole label.
111
+ * The text on the top row: the technology the box is built with (Bun, React,
112
+ * Postgres…). Falls back to the container kind / C4 kind when no technology is
113
+ * stated, so the row is never blank.
134
114
  */
135
- export function nodeTypeLabel(node) {
136
- return node.kind === 'container' ? node.containerKind : undefined;
115
+ export function nodeTopLabel(node) {
116
+ if (node.technology)
117
+ return node.technology;
118
+ return node.kind === 'container' ? (node.containerKind ?? 'container') : node.kind;
137
119
  }
138
120
  /**
139
121
  * Shape cue for the C4 kind, independent of colour and dash — both of which
@@ -188,10 +170,14 @@ export function C4NodeCard({ node, selected = false, handles, onClick }) {
188
170
  const muted = theme.colors.textMuted ?? theme.colors.textSecondary;
189
171
  const style = nodeStyle(node, theme, selected);
190
172
  const shape = nodeShape(node);
191
- const missing = nodeMissing(node);
192
173
  const Icon = nodeKindIcon(node);
193
- const typeLabel = nodeTypeLabel(node);
174
+ const brand = technologyBrand(node.technology);
175
+ const topLabel = nodeTopLabel(node);
176
+ const subtitle = nodeSubtitle(node);
194
177
  const size = nodeSize(node);
178
+ // A pill (a person) has no straight left edge, so left-aligned text reads as
179
+ // spilling out of the oval. Centre the text and inset it from the curve.
180
+ const centered = shape.kind === 'pill';
195
181
  return (_jsxs("div", { onClick: onClick, style: {
196
182
  width: size.width,
197
183
  minHeight: size.height,
@@ -203,7 +189,7 @@ export function C4NodeCard({ node, selected = false, handles, onClick }) {
203
189
  // height on every card. In a graph grid that makes the row unscannable.
204
190
  justifyContent: 'flex-start',
205
191
  gap: 3,
206
- padding: '10px 12px',
192
+ padding: centered ? '10px 30px' : '10px 12px',
207
193
  borderRadius: shape.radius,
208
194
  background: theme.colors.backgroundSecondary ?? theme.colors.background,
209
195
  border: `${style.width} ${style.dash} ${style.color}`,
@@ -213,20 +199,21 @@ export function C4NodeCard({ node, selected = false, handles, onClick }) {
213
199
  }, children: [_jsxs("span", { style: {
214
200
  display: 'flex',
215
201
  alignItems: 'center',
202
+ justifyContent: centered ? 'center' : 'space-between',
216
203
  gap: 6,
217
204
  fontFamily: theme.fonts.monospace,
218
205
  fontSize: theme.fontSizes[0],
219
- color: style.color,
206
+ color: muted,
220
207
  letterSpacing: 0.5,
221
208
  textTransform: 'uppercase',
222
209
  minWidth: 0,
223
- }, children: [_jsx("span", { title: nodeTag(node), "aria-label": nodeTag(node), style: { display: 'inline-flex', flexShrink: 0 }, children: _jsx(Icon, { size: 13, strokeWidth: 2.25 }) }), typeLabel && (_jsx("span", { style: {
224
- fontWeight: 600,
225
- whiteSpace: 'nowrap',
226
- overflow: 'hidden',
227
- textOverflow: 'ellipsis',
228
- minWidth: 0,
229
- }, children: typeLabel }))] }), _jsx("span", { style: {
210
+ }, children: [_jsxs("span", { style: { display: 'flex', alignItems: 'center', gap: 6, minWidth: 0 }, children: [brand && _jsx(TechMark, { brand: brand }), _jsx("span", { style: {
211
+ fontWeight: 600,
212
+ whiteSpace: 'nowrap',
213
+ overflow: 'hidden',
214
+ textOverflow: 'ellipsis',
215
+ minWidth: 0,
216
+ }, children: topLabel })] }), Icon && (_jsx("span", { title: node.containerKind ?? node.kind, "aria-label": node.containerKind ?? node.kind, style: { display: 'inline-flex', flexShrink: 0, color: style.color }, children: _jsx(Icon, { size: 13, strokeWidth: 2.25 }) }))] }), _jsx("span", { style: {
230
217
  fontWeight: 600,
231
218
  fontSize: theme.fontSizes[2],
232
219
  color: theme.colors.text,
@@ -236,23 +223,15 @@ export function C4NodeCard({ node, selected = false, handles, onClick }) {
236
223
  WebkitLineClamp: 2,
237
224
  WebkitBoxOrient: 'vertical',
238
225
  overflow: 'hidden',
239
- }, title: node.label, children: node.label }), _jsx("span", { style: {
226
+ textAlign: centered ? 'center' : 'left',
227
+ }, title: node.label, children: node.label }), subtitle && (_jsx("span", { style: {
240
228
  fontFamily: theme.fonts.monospace,
241
229
  fontSize: theme.fontSizes[0],
242
230
  color: muted,
243
- whiteSpace: 'nowrap',
244
- overflow: 'hidden',
245
- textOverflow: 'ellipsis',
246
- }, title: node.description ?? node.members.join(', '), children: nodeSubtitle(node) }), _jsx("span", { style: { height: GAP_SLOT_H }, "aria-hidden": "true" }), missing.length > 0 && (_jsxs("span", { title: `C4 requires a ${missing.join(' and a ')} on every container`, style: {
247
- fontFamily: theme.fonts.monospace,
248
- fontSize: theme.fontSizes[0],
249
- color: theme.colors.warning ?? '#e8a33a',
250
- lineHeight: 1.3,
251
- height: GAP_SLOT_H,
252
- display: '-webkit-box',
253
- WebkitLineClamp: 2,
254
- WebkitBoxOrient: 'vertical',
255
- overflow: 'hidden',
256
- }, children: ["needs ", missing.join(' + ')] })), handles] }));
231
+ lineHeight: 1.35,
232
+ whiteSpace: 'normal',
233
+ overflowWrap: 'anywhere',
234
+ textAlign: centered ? 'center' : 'left',
235
+ }, children: subtitle })), handles] }));
257
236
  }
258
237
  //# sourceMappingURL=C4NodeCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"C4NodeCard.js","sourceRoot":"","sources":["../../src/subsystem/C4NodeCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"C4NodeCard.js","sourceRoot":"","sources":["../../src/subsystem/C4NodeCard.tsx"],"names":[],"mappings":"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"}
@@ -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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"}
@@ -739,21 +739,18 @@ function Inner({ components, trails, graphifyRelations, orderByLine, initialTrai
739
739
  const stepIssueBadgeByEdgeId = useMemo(() => {
740
740
  const map = new Map();
741
741
  if (!issues?.length || !trails?.length) {
742
- console.log('[stepIssueBadge] early return: issues=', issues?.length, 'trails=', trails?.length);
743
742
  return map;
744
743
  }
745
744
  for (const issue of issues) {
746
745
  if (issue.kind !== 'step_unconfirmed' && issue.kind !== 'step_stale')
747
746
  continue;
748
747
  const stepInfo = issueStep(issue);
749
- console.log('[stepIssueBadge] issue', issue.id, 'kind=', issue.kind, 'stepInfo=', stepInfo);
750
748
  if (!stepInfo)
751
749
  continue;
752
750
  const step = stepInfo.trail.steps[stepInfo.stepIndex];
753
751
  if (!step)
754
752
  continue;
755
753
  const edgeId = trailStepGraphEdgeId(step);
756
- console.log('[stepIssueBadge] -> edgeId=', edgeId);
757
754
  const prev = map.get(edgeId);
758
755
  // step_stale is worse than step_unconfirmed
759
756
  const isWorse = issue.kind === 'step_stale' && prev?.kind !== 'step_stale';
@@ -763,7 +760,6 @@ function Inner({ components, trails, graphifyRelations, orderByLine, initialTrai
763
760
  count: (prev?.count ?? 0) + 1,
764
761
  });
765
762
  }
766
- console.log('[stepIssueBadge] final map size=', map.size);
767
763
  return map;
768
764
  }, [issues, trails, issueStep]);
769
765
  // Expanded verification layers in the diagnostics list. When any layer with
@@ -1935,7 +1931,6 @@ function Inner({ components, trails, graphifyRelations, orderByLine, initialTrai
1935
1931
  .map((e) => {
1936
1932
  const d = e.data;
1937
1933
  const stepIssue = stepIssueBadgeByEdgeId.get(e.id);
1938
- console.log('[edgeLabels] edge', e.id, 'stepIssue=', stepIssue);
1939
1934
  return {
1940
1935
  id: e.id,
1941
1936
  mechanism: d?.mechanism ?? 'uses',
@@ -1948,7 +1943,6 @@ function Inner({ components, trails, graphifyRelations, orderByLine, initialTrai
1948
1943
  stepIssue,
1949
1944
  };
1950
1945
  });
1951
- console.log('[edgeLabels] total labels=', labels.length, 'with stepIssue=', labels.filter(l => l.stepIssue).length);
1952
1946
  return labels;
1953
1947
  }, [dispEdges, selectedFlowStepNos, stepIssueBadgeByEdgeId]);
1954
1948
  // Unique source files across components → sidebar file trees.