@principal-ai/subsystems-react 0.56.13 → 0.56.14
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/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/subsystem/C4ProjectionView.d.ts +60 -0
- package/dist/subsystem/C4ProjectionView.d.ts.map +1 -0
- package/dist/subsystem/C4ProjectionView.js +336 -0
- package/dist/subsystem/C4ProjectionView.js.map +1 -0
- package/dist/subsystem/C4SketchView.d.ts +23 -0
- package/dist/subsystem/C4SketchView.d.ts.map +1 -0
- package/dist/subsystem/C4SketchView.js +119 -0
- package/dist/subsystem/C4SketchView.js.map +1 -0
- package/dist/subsystem/__fixtures__/c4Drilldown.d.ts +4 -27
- package/dist/subsystem/__fixtures__/c4Drilldown.d.ts.map +1 -1
- package/dist/subsystem/__fixtures__/c4Drilldown.js +4 -56
- package/dist/subsystem/__fixtures__/c4Drilldown.js.map +1 -1
- package/dist/subsystem/__fixtures__/c4Sketch.d.ts +9 -0
- package/dist/subsystem/__fixtures__/c4Sketch.d.ts.map +1 -0
- package/dist/subsystem/__fixtures__/c4Sketch.js +89 -0
- package/dist/subsystem/__fixtures__/c4Sketch.js.map +1 -0
- package/dist/subsystem/c4Sketch.d.ts +74 -0
- package/dist/subsystem/c4Sketch.d.ts.map +1 -0
- package/dist/subsystem/c4Sketch.js +9 -0
- package/dist/subsystem/c4Sketch.js.map +1 -0
- package/dist/subsystem/c4TrailFocus.d.ts +30 -0
- package/dist/subsystem/c4TrailFocus.d.ts.map +1 -0
- package/dist/subsystem/c4TrailFocus.js +57 -0
- package/dist/subsystem/c4TrailFocus.js.map +1 -0
- package/package.json +1 -1
- package/src/index.ts +14 -0
- package/src/stories/Canvases/C4/C4Sketch.stories.tsx +36 -0
- package/src/stories/Canvases/C4/C4ToComponentDrill.stories.tsx +18 -429
- package/src/subsystem/C4ProjectionView.tsx +595 -0
- package/src/subsystem/C4SketchView.tsx +241 -0
- package/src/subsystem/__fixtures__/c4Drilldown.ts +7 -58
- package/src/subsystem/__fixtures__/c4Sketch.ts +94 -0
- package/src/subsystem/c4Sketch.ts +78 -0
- package/src/subsystem/c4TrailFocus.ts +62 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* C4SketchView — a standalone authored C4 hypothesis.
|
|
4
|
+
*
|
|
5
|
+
* Pure presentation: the host loads the sketch and passes it in. There is no
|
|
6
|
+
* model comparison, grounding, or promotion here; a sketch is a diagram in its
|
|
7
|
+
* own right.
|
|
8
|
+
*/
|
|
9
|
+
import { useCallback, useMemo, useState } from 'react';
|
|
10
|
+
import { useTheme } from '@principal-ade/industry-theme';
|
|
11
|
+
import { PencilRuler } from 'lucide-react';
|
|
12
|
+
import { IndustryMarkdownSlide } from 'themed-markdown';
|
|
13
|
+
import { C4Graph } from './C4Graph';
|
|
14
|
+
import { GraphWithSidebar } from './GraphWithSidebar';
|
|
15
|
+
export function C4SketchView({ sketch, openContainerIds, onOpenContainerIdsChange, headerActions, persistKey, style, }) {
|
|
16
|
+
const { theme } = useTheme();
|
|
17
|
+
const [internalOpenIds, setInternalOpenIds] = useState(() => [...(openContainerIds ?? sketch.model.openContainerIds ?? [])].sort());
|
|
18
|
+
const resolvedOpenIds = openContainerIds
|
|
19
|
+
? [...openContainerIds]
|
|
20
|
+
: internalOpenIds;
|
|
21
|
+
const setOpenIds = useCallback((next) => {
|
|
22
|
+
if (!openContainerIds)
|
|
23
|
+
setInternalOpenIds(next);
|
|
24
|
+
onOpenContainerIdsChange?.(next);
|
|
25
|
+
}, [onOpenContainerIdsChange, openContainerIds]);
|
|
26
|
+
const model = useMemo(() => ({ ...sketch.model, openContainerIds: resolvedOpenIds }), [resolvedOpenIds, sketch.model]);
|
|
27
|
+
const toggleContainer = useCallback((id) => {
|
|
28
|
+
setOpenIds(resolvedOpenIds.includes(id)
|
|
29
|
+
? resolvedOpenIds.filter((openId) => openId !== id)
|
|
30
|
+
: [...resolvedOpenIds, id].sort());
|
|
31
|
+
}, [resolvedOpenIds, setOpenIds]);
|
|
32
|
+
const openAll = useCallback(() => {
|
|
33
|
+
setOpenIds(sketch.model.nodes
|
|
34
|
+
.filter((node) => node.kind === 'container')
|
|
35
|
+
.map((node) => node.id)
|
|
36
|
+
.sort());
|
|
37
|
+
}, [setOpenIds, sketch.model.nodes]);
|
|
38
|
+
const collapseAll = useCallback(() => setOpenIds([]), [setOpenIds]);
|
|
39
|
+
const notes = sketch.notes?.trim();
|
|
40
|
+
const notesPanel = notes ? (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 8 }, children: [_jsx("div", { style: {
|
|
41
|
+
fontSize: 10,
|
|
42
|
+
fontFamily: theme.fonts.monospace,
|
|
43
|
+
letterSpacing: 0.4,
|
|
44
|
+
color: theme.colors.textSecondary,
|
|
45
|
+
}, children: "ABOUT" }), _jsx(IndustryMarkdownSlide, { content: notes, slideIdPrefix: `c4-sketch-notes-${sketch.id}`, slideIndex: 0, isVisible: true, theme: theme, disableScroll: true, disableBasePadding: true, enableKeyboardScrolling: false, autoFocusOnVisible: false })] })) : null;
|
|
46
|
+
return (_jsxs("div", { style: {
|
|
47
|
+
width: '100%',
|
|
48
|
+
height: '100%',
|
|
49
|
+
display: 'flex',
|
|
50
|
+
flexDirection: 'column',
|
|
51
|
+
background: theme.colors.background,
|
|
52
|
+
...style,
|
|
53
|
+
}, children: [_jsxs("header", { style: {
|
|
54
|
+
flexShrink: 0,
|
|
55
|
+
display: 'flex',
|
|
56
|
+
alignItems: 'center',
|
|
57
|
+
gap: 12,
|
|
58
|
+
flexWrap: 'wrap',
|
|
59
|
+
padding: '12px 16px',
|
|
60
|
+
background: theme.colors.background,
|
|
61
|
+
borderBottom: `1px solid ${theme.colors.border}`,
|
|
62
|
+
}, children: [_jsxs("div", { style: {
|
|
63
|
+
minWidth: 240,
|
|
64
|
+
flex: 1,
|
|
65
|
+
display: 'flex',
|
|
66
|
+
alignItems: 'center',
|
|
67
|
+
gap: 8,
|
|
68
|
+
flexWrap: 'wrap',
|
|
69
|
+
}, children: [_jsx("h2", { style: {
|
|
70
|
+
margin: 0,
|
|
71
|
+
minWidth: 0,
|
|
72
|
+
fontSize: theme.fontSizes[2],
|
|
73
|
+
fontWeight: 600,
|
|
74
|
+
color: theme.colors.text,
|
|
75
|
+
fontFamily: theme.fonts.monospace,
|
|
76
|
+
overflowWrap: 'anywhere',
|
|
77
|
+
}, children: sketch.title }), _jsxs("span", { style: {
|
|
78
|
+
display: 'inline-flex',
|
|
79
|
+
alignItems: 'center',
|
|
80
|
+
gap: 4,
|
|
81
|
+
padding: '1px 7px',
|
|
82
|
+
borderRadius: 4,
|
|
83
|
+
border: '1px solid #e3b341',
|
|
84
|
+
color: '#e3b341',
|
|
85
|
+
fontFamily: theme.fonts.monospace,
|
|
86
|
+
fontSize: 10,
|
|
87
|
+
letterSpacing: 0.4,
|
|
88
|
+
flexShrink: 0,
|
|
89
|
+
}, children: [_jsx(PencilRuler, { size: 10, "aria-hidden": "true" }), "SKETCH"] })] }), _jsxs("div", { style: {
|
|
90
|
+
marginLeft: 'auto',
|
|
91
|
+
flexShrink: 0,
|
|
92
|
+
display: 'flex',
|
|
93
|
+
alignItems: 'center',
|
|
94
|
+
gap: 6,
|
|
95
|
+
flexWrap: 'wrap',
|
|
96
|
+
}, children: [headerActions, _jsx("button", { type: "button", onClick: openAll, style: smallButton(theme, { width: 132 }), children: "Open all" }), _jsx("button", { type: "button", onClick: collapseAll, style: smallButton(theme, { width: 132 }), children: "Collapse all" })] })] }), _jsx("div", { style: { flex: 1, minHeight: 0 }, children: _jsx(GraphWithSidebar, { hidden: !notes, stretchHeader: true, defaultWidth: 320, minWidth: 240, maxWidth: 480, persistKey: persistKey ?? `c4-sketch-notes-${sketch.id}`, header: notesPanel, children: _jsx(C4Graph, { model: model, onToggleContainer: toggleContainer }) }) })] }));
|
|
97
|
+
}
|
|
98
|
+
function smallButton(theme, opts = {}) {
|
|
99
|
+
return {
|
|
100
|
+
flexShrink: 0,
|
|
101
|
+
display: 'inline-flex',
|
|
102
|
+
alignItems: 'center',
|
|
103
|
+
justifyContent: 'center',
|
|
104
|
+
gap: 5,
|
|
105
|
+
...(opts.width ? { width: opts.width } : {}),
|
|
106
|
+
height: 34,
|
|
107
|
+
padding: '0 10px',
|
|
108
|
+
boxSizing: 'border-box',
|
|
109
|
+
whiteSpace: 'nowrap',
|
|
110
|
+
borderRadius: 6,
|
|
111
|
+
border: `1px solid ${theme.colors.border}`,
|
|
112
|
+
background: 'transparent',
|
|
113
|
+
color: theme.colors.textSecondary,
|
|
114
|
+
fontFamily: theme.fonts.body,
|
|
115
|
+
fontSize: theme.fontSizes[1],
|
|
116
|
+
cursor: 'pointer',
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=C4SketchView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"C4SketchView.js","sourceRoot":"","sources":["../../src/subsystem/C4SketchView.tsx"],"names":[],"mappings":"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"}
|
|
@@ -105,34 +105,11 @@ export declare function rollupEdgeTrailRefs(opts: {
|
|
|
105
105
|
membersOf: (elementId: string) => ReadonlySet<string> | undefined;
|
|
106
106
|
}): C4TrailRef[];
|
|
107
107
|
/**
|
|
108
|
-
*
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
* alias, which C4 box(es) hold it. Because a container's own process-claim
|
|
112
|
-
* membership AND the authored components nested inside it both claim the
|
|
113
|
-
* aliases, BOTH end up in the set: the container is the visible card at
|
|
114
|
-
* container view, its components are the visible cards when it is open, so
|
|
115
|
-
* either view stays honest.
|
|
116
|
-
*
|
|
117
|
-
* The complement of the result (all element ids minus these) is what a
|
|
118
|
-
* trail-driven emphasis pass should dim. Pure, and the spec the story's
|
|
119
|
-
* "players stay bright" is asserted against.
|
|
120
|
-
*/
|
|
121
|
-
export declare function deriveTrailPlayerElements(steps: SubsystemTrail['steps'], members: Readonly<Record<string, readonly string[]>>): Set<string>;
|
|
122
|
-
/**
|
|
123
|
-
* The C4 edges that carry the current focus — the line-level half of the
|
|
124
|
-
* emphasis pair above.
|
|
125
|
-
*
|
|
126
|
-
* An edge is lit iff its authored `trailRefs` cover the source: the whole
|
|
127
|
-
* trail, or one specific step of it. A step that is entirely internal to a
|
|
128
|
-
* container folds into no C4 line (the rollup only keeps cross-boundary
|
|
129
|
-
* hops), so its source lights NOTHING — every line dims, which is honest:
|
|
130
|
-
* no drawn edge represents that hop.
|
|
108
|
+
* Trail-focus helpers live in production code now (`c4TrailFocus.ts`); keep
|
|
109
|
+
* these re-exports so the fixture's tests and the drill story can import them
|
|
110
|
+
* from the same place they always did.
|
|
131
111
|
*/
|
|
132
|
-
export
|
|
133
|
-
trailId: string;
|
|
134
|
-
stepIndex?: number;
|
|
135
|
-
}, edges: readonly C4Edge[]): Set<string>;
|
|
112
|
+
export { deriveLitC4Edges, deriveTrailPlayerElements, } from '../c4TrailFocus';
|
|
136
113
|
/**
|
|
137
114
|
* Process claims the accepted C4 element set backs NOT at all — the set the
|
|
138
115
|
* host hands the component graph so those frames draw as code boundaries.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c4Drilldown.d.ts","sourceRoot":"","sources":["../../../src/subsystem/__fixtures__/c4Drilldown.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,EAGV,MAAM,EACN,SAAS,EAET,OAAO,EACP,UAAU,EACX,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAEnE,kDAAkD;AAClD,eAAO,MAAM,sBAAsB;IACjC,sEAAsE;;;;;;CAM9D,CAAC;AAEX,eAAO,MAAM,cAAc,+CAA+C,CAAC;AAE3E,2BAA2B;AAC3B,eAAO,MAAM,MAAM;;;;CAIT,CAAC;AAEX,6EAA6E;AAC7E,eAAO,MAAM,IAAI,0BAA0B,CAAC;AAC5C,yEAAyE;AACzE,eAAO,MAAM,QAAQ,8BAA8B,CAAC;AACpD,iEAAiE;AACjE,eAAO,MAAM,GAAG,4BAA4B,CAAC;AAC7C,gDAAgD;AAChD,eAAO,MAAM,IAAI,uBAAuB,CAAC;AACzC,4CAA4C;AAC5C,eAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,gFAAgF;AAChF,eAAO,MAAM,IAAI,wBAAwB,CAAC;AAQ1C,eAAO,MAAM,oBAAoB,EAAE,kBAAkB,EA+OpD,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAuJ5C,CAAC;AAEF,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAQX,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;AAEvE;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,SAAS,SAAS,EAAE,EAC9B,UAAU,GAAE,SAAS,kBAAkB,EAAyB,GAC/D,iBAAiB,CAoBnB;AA6CD,eAAO,MAAM,kBAAkB,EAAE,SAAS,EAmFzC,CAAC;AAcF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,EA+BnC,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,kBAAkB,EAAE,OAKhC,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAGvE,CAAC;AAEJ,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAGrF;AAMD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;CACnE,GAAG,UAAU,EAAE,CAcf;AAED
|
|
1
|
+
{"version":3,"file":"c4Drilldown.d.ts","sourceRoot":"","sources":["../../../src/subsystem/__fixtures__/c4Drilldown.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,EAGV,MAAM,EACN,SAAS,EAET,OAAO,EACP,UAAU,EACX,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAEnE,kDAAkD;AAClD,eAAO,MAAM,sBAAsB;IACjC,sEAAsE;;;;;;CAM9D,CAAC;AAEX,eAAO,MAAM,cAAc,+CAA+C,CAAC;AAE3E,2BAA2B;AAC3B,eAAO,MAAM,MAAM;;;;CAIT,CAAC;AAEX,6EAA6E;AAC7E,eAAO,MAAM,IAAI,0BAA0B,CAAC;AAC5C,yEAAyE;AACzE,eAAO,MAAM,QAAQ,8BAA8B,CAAC;AACpD,iEAAiE;AACjE,eAAO,MAAM,GAAG,4BAA4B,CAAC;AAC7C,gDAAgD;AAChD,eAAO,MAAM,IAAI,uBAAuB,CAAC;AACzC,4CAA4C;AAC5C,eAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,gFAAgF;AAChF,eAAO,MAAM,IAAI,wBAAwB,CAAC;AAQ1C,eAAO,MAAM,oBAAoB,EAAE,kBAAkB,EA+OpD,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAuJ5C,CAAC;AAEF,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAQX,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;AAEvE;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,SAAS,SAAS,EAAE,EAC9B,UAAU,GAAE,SAAS,kBAAkB,EAAyB,GAC/D,iBAAiB,CAoBnB;AA6CD,eAAO,MAAM,kBAAkB,EAAE,SAAS,EAmFzC,CAAC;AAcF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,EA+BnC,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,kBAAkB,EAAE,OAKhC,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAGvE,CAAC;AAEJ,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAGrF;AAMD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;CACnE,GAAG,UAAU,EAAE,CAcf;AAED;;;;GAIG;AACH,OAAO,EACL,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,SAAS,EAAE,EAC9B,UAAU,EAAE,SAAS,kBAAkB,EAAE,GACxC,GAAG,CAAC,MAAM,CAAC,CAcb"}
|
|
@@ -689,63 +689,11 @@ export function rollupEdgeTrailRefs(opts) {
|
|
|
689
689
|
return [...byTrail.entries()].map(([trailId, stepIndices]) => ({ trailId, stepIndices }));
|
|
690
690
|
}
|
|
691
691
|
/**
|
|
692
|
-
*
|
|
693
|
-
*
|
|
694
|
-
*
|
|
695
|
-
* alias, which C4 box(es) hold it. Because a container's own process-claim
|
|
696
|
-
* membership AND the authored components nested inside it both claim the
|
|
697
|
-
* aliases, BOTH end up in the set: the container is the visible card at
|
|
698
|
-
* container view, its components are the visible cards when it is open, so
|
|
699
|
-
* either view stays honest.
|
|
700
|
-
*
|
|
701
|
-
* The complement of the result (all element ids minus these) is what a
|
|
702
|
-
* trail-driven emphasis pass should dim. Pure, and the spec the story's
|
|
703
|
-
* "players stay bright" is asserted against.
|
|
692
|
+
* Trail-focus helpers live in production code now (`c4TrailFocus.ts`); keep
|
|
693
|
+
* these re-exports so the fixture's tests and the drill story can import them
|
|
694
|
+
* from the same place they always did.
|
|
704
695
|
*/
|
|
705
|
-
export
|
|
706
|
-
const byAlias = new Map();
|
|
707
|
-
for (const [elementId, aliases] of Object.entries(members)) {
|
|
708
|
-
for (const alias of aliases) {
|
|
709
|
-
const list = byAlias.get(alias);
|
|
710
|
-
if (list)
|
|
711
|
-
list.push(elementId);
|
|
712
|
-
else
|
|
713
|
-
byAlias.set(alias, [elementId]);
|
|
714
|
-
}
|
|
715
|
-
}
|
|
716
|
-
const players = new Set();
|
|
717
|
-
for (const step of steps) {
|
|
718
|
-
for (const id of byAlias.get(step.from) ?? [])
|
|
719
|
-
players.add(id);
|
|
720
|
-
for (const id of byAlias.get(step.to) ?? [])
|
|
721
|
-
players.add(id);
|
|
722
|
-
}
|
|
723
|
-
return players;
|
|
724
|
-
}
|
|
725
|
-
/**
|
|
726
|
-
* The C4 edges that carry the current focus — the line-level half of the
|
|
727
|
-
* emphasis pair above.
|
|
728
|
-
*
|
|
729
|
-
* An edge is lit iff its authored `trailRefs` cover the source: the whole
|
|
730
|
-
* trail, or one specific step of it. A step that is entirely internal to a
|
|
731
|
-
* container folds into no C4 line (the rollup only keeps cross-boundary
|
|
732
|
-
* hops), so its source lights NOTHING — every line dims, which is honest:
|
|
733
|
-
* no drawn edge represents that hop.
|
|
734
|
-
*/
|
|
735
|
-
export function deriveLitC4Edges(source, edges) {
|
|
736
|
-
const lit = new Set();
|
|
737
|
-
for (const edge of edges) {
|
|
738
|
-
for (const ref of edge.trailRefs ?? []) {
|
|
739
|
-
if (ref.trailId !== source.trailId)
|
|
740
|
-
continue;
|
|
741
|
-
if (source.stepIndex == null || ref.stepIndices.includes(source.stepIndex)) {
|
|
742
|
-
lit.add(edge.id);
|
|
743
|
-
break;
|
|
744
|
-
}
|
|
745
|
-
}
|
|
746
|
-
}
|
|
747
|
-
return lit;
|
|
748
|
-
}
|
|
696
|
+
export { deriveLitC4Edges, deriveTrailPlayerElements, } from '../c4TrailFocus';
|
|
749
697
|
/**
|
|
750
698
|
* Process claims the accepted C4 element set backs NOT at all — the set the
|
|
751
699
|
* host hands the component graph so those frames draw as code boundaries.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c4Drilldown.js","sourceRoot":"","sources":["../../../src/subsystem/__fixtures__/c4Drilldown.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"c4Drilldown.js","sourceRoot":"","sources":["../../../src/subsystem/__fixtures__/c4Drilldown.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storybook fixture for an authored C4 sketch.
|
|
3
|
+
*
|
|
4
|
+
* A standalone hypothesis: containers, a component, an external, a person,
|
|
5
|
+
* and two authored lines. No model or grounding is involved.
|
|
6
|
+
*/
|
|
7
|
+
import type { C4Sketch } from '../c4Sketch';
|
|
8
|
+
export declare const SKETCH_FIXTURE: C4Sketch;
|
|
9
|
+
//# sourceMappingURL=c4Sketch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"c4Sketch.d.ts","sourceRoot":"","sources":["../../../src/subsystem/__fixtures__/c4Sketch.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI5C,eAAO,MAAM,cAAc,EAAE,QAiF5B,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storybook fixture for an authored C4 sketch.
|
|
3
|
+
*
|
|
4
|
+
* A standalone hypothesis: containers, a component, an external, a person,
|
|
5
|
+
* and two authored lines. No model or grounding is involved.
|
|
6
|
+
*/
|
|
7
|
+
const PURL = 'pkg:github/acme/widget';
|
|
8
|
+
export const SKETCH_FIXTURE = {
|
|
9
|
+
id: 'c4s-story',
|
|
10
|
+
title: 'Acme widget architecture',
|
|
11
|
+
repoKeys: [PURL],
|
|
12
|
+
author: 'storybook',
|
|
13
|
+
notes: '## About this sketch\n\nThis is an **authored hypothesis** for the Acme widget. It describes the host and worker containers, the store inside the host, and the GitHub integration.\n\n- The worker calls the host over RPC.\n- The host calls GitHub over HTTPS.\n- Nothing here is verified or promoted.',
|
|
14
|
+
createdAt: '2026-10-25T00:00:00.000Z',
|
|
15
|
+
updatedAt: '2026-10-25T00:00:00.000Z',
|
|
16
|
+
model: {
|
|
17
|
+
view: 'container',
|
|
18
|
+
system: { id: 'system:acme', label: 'Acme' },
|
|
19
|
+
nodes: [
|
|
20
|
+
{
|
|
21
|
+
kind: 'container',
|
|
22
|
+
id: 'container:host',
|
|
23
|
+
label: 'Host',
|
|
24
|
+
containerKind: 'application',
|
|
25
|
+
technology: 'Bun',
|
|
26
|
+
process: 'acme/host',
|
|
27
|
+
state: 'proposed',
|
|
28
|
+
description: 'The long-lived host process.',
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
kind: 'container',
|
|
32
|
+
id: 'container:worker',
|
|
33
|
+
label: 'Worker',
|
|
34
|
+
containerKind: 'application',
|
|
35
|
+
technology: 'Bun',
|
|
36
|
+
process: 'acme/worker',
|
|
37
|
+
state: 'proposed',
|
|
38
|
+
description: 'The background worker.',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
kind: 'component',
|
|
42
|
+
id: 'component:store',
|
|
43
|
+
label: 'Store',
|
|
44
|
+
container: 'container:host',
|
|
45
|
+
technology: 'Postgres',
|
|
46
|
+
members: ['store', 'ghost'],
|
|
47
|
+
state: 'proposed',
|
|
48
|
+
description: 'Persistence inside the host.',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
kind: 'external-system',
|
|
52
|
+
id: 'external:github',
|
|
53
|
+
label: 'GitHub',
|
|
54
|
+
technology: 'REST',
|
|
55
|
+
members: ['github'],
|
|
56
|
+
state: 'proposed',
|
|
57
|
+
description: 'External source control.',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
kind: 'person',
|
|
61
|
+
id: 'person:dev',
|
|
62
|
+
label: 'Developer',
|
|
63
|
+
state: 'proposed',
|
|
64
|
+
description: 'Uses the system.',
|
|
65
|
+
},
|
|
66
|
+
],
|
|
67
|
+
edges: [
|
|
68
|
+
{
|
|
69
|
+
id: 'e:host-github',
|
|
70
|
+
source: 'container:host',
|
|
71
|
+
target: 'external:github',
|
|
72
|
+
label: 'HTTPS',
|
|
73
|
+
protocol: 'HTTPS',
|
|
74
|
+
mechanisms: ['calls'],
|
|
75
|
+
count: 1,
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
id: 'e:worker-host',
|
|
79
|
+
source: 'container:worker',
|
|
80
|
+
target: 'container:host',
|
|
81
|
+
label: 'RPC',
|
|
82
|
+
protocol: 'RPC',
|
|
83
|
+
mechanisms: ['calls'],
|
|
84
|
+
count: 1,
|
|
85
|
+
},
|
|
86
|
+
],
|
|
87
|
+
},
|
|
88
|
+
};
|
|
89
|
+
//# sourceMappingURL=c4Sketch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"c4Sketch.js","sourceRoot":"","sources":["../../../src/subsystem/__fixtures__/c4Sketch.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,IAAI,GAAG,wBAAwB,CAAC;AAEtC,MAAM,CAAC,MAAM,cAAc,GAAa;IACtC,EAAE,EAAE,WAAW;IACf,KAAK,EAAE,0BAA0B;IACjC,QAAQ,EAAE,CAAC,IAAI,CAAC;IAChB,MAAM,EAAE,WAAW;IACnB,KAAK,EACH,4SAA4S;IAC9S,SAAS,EAAE,0BAA0B;IACrC,SAAS,EAAE,0BAA0B;IACrC,KAAK,EAAE;QACL,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE;QAC5C,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,gBAAgB;gBACpB,KAAK,EAAE,MAAM;gBACb,aAAa,EAAE,aAAa;gBAC5B,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,WAAW;gBACpB,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,8BAA8B;aAC5C;YACD;gBACE,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,kBAAkB;gBACtB,KAAK,EAAE,QAAQ;gBACf,aAAa,EAAE,aAAa;gBAC5B,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,aAAa;gBACtB,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,wBAAwB;aACtC;YACD;gBACE,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE,gBAAgB;gBAC3B,UAAU,EAAE,UAAU;gBACtB,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;gBAC3B,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,8BAA8B;aAC5C;YACD;gBACE,IAAI,EAAE,iBAAiB;gBACvB,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,QAAQ;gBACf,UAAU,EAAE,MAAM;gBAClB,OAAO,EAAE,CAAC,QAAQ,CAAC;gBACnB,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,0BAA0B;aACxC;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,EAAE,EAAE,YAAY;gBAChB,KAAK,EAAE,WAAW;gBAClB,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,kBAAkB;aAChC;SACF;QACD,KAAK,EAAE;YACL;gBACE,EAAE,EAAE,eAAe;gBACnB,MAAM,EAAE,gBAAgB;gBACxB,MAAM,EAAE,iBAAiB;gBACzB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,OAAO;gBACjB,UAAU,EAAE,CAAC,OAAO,CAAC;gBACrB,KAAK,EAAE,CAAC;aACT;YACD;gBACE,EAAE,EAAE,eAAe;gBACnB,MAAM,EAAE,kBAAkB;gBAC1B,MAAM,EAAE,gBAAgB;gBACxB,KAAK,EAAE,KAAK;gBACZ,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,CAAC,OAAO,CAAC;gBACrB,KAAK,EAAE,CAAC;aACT;SACF;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authored C4 sketches — the types shared by the sketch view and the host
|
|
3
|
+
* stores.
|
|
4
|
+
*
|
|
5
|
+
* These live in `subsystems-react` so the pure view and its Storybook fixtures
|
|
6
|
+
* can use them without importing Studio's cross-process contract.
|
|
7
|
+
*/
|
|
8
|
+
import type { C4Model } from './c4';
|
|
9
|
+
/**
|
|
10
|
+
* A C4 sketch — an authored, unverified architecture hypothesis.
|
|
11
|
+
*
|
|
12
|
+
* Unlike the accepted element store (approved containers only) and a model
|
|
13
|
+
* projection (derived from `process` keys), a sketch carries containers,
|
|
14
|
+
* components, externals, persons, AND edges. It can exist before any subsystem
|
|
15
|
+
* model does. Element state is forced to `proposed` by the host store: a sketch
|
|
16
|
+
* never claims acceptance.
|
|
17
|
+
*/
|
|
18
|
+
export interface C4Sketch {
|
|
19
|
+
id: string;
|
|
20
|
+
title: string;
|
|
21
|
+
/** Repos the sketch claims to describe; can be empty for greenfield. */
|
|
22
|
+
repoKeys: string[];
|
|
23
|
+
/** Authored nodes + edges. */
|
|
24
|
+
model: C4Model;
|
|
25
|
+
author?: string;
|
|
26
|
+
notes?: string;
|
|
27
|
+
createdAt: string;
|
|
28
|
+
updatedAt: string;
|
|
29
|
+
}
|
|
30
|
+
/** Lightweight row for listing sketches without their nodes/edges. */
|
|
31
|
+
export interface C4SketchSummary {
|
|
32
|
+
id: string;
|
|
33
|
+
title: string;
|
|
34
|
+
repoKeys: string[];
|
|
35
|
+
author?: string;
|
|
36
|
+
createdAt: string;
|
|
37
|
+
updatedAt: string;
|
|
38
|
+
counts: {
|
|
39
|
+
containers: number;
|
|
40
|
+
components: number;
|
|
41
|
+
externals: number;
|
|
42
|
+
persons: number;
|
|
43
|
+
edges: number;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
/** Which C4 source a model projection or tab reads. */
|
|
47
|
+
export type SubsystemC4Source = 'auto' | 'accepted' | 'draft';
|
|
48
|
+
/**
|
|
49
|
+
* A drawable C4 projection for one subsystem model.
|
|
50
|
+
*
|
|
51
|
+
* `accepted` uses the repo's approved containers; `draft` derives provisional
|
|
52
|
+
* containers from the model's `process` keys. `memberships` is element id →
|
|
53
|
+
* component aliases, so a view can build construct graphs without re-deriving
|
|
54
|
+
* the join.
|
|
55
|
+
*/
|
|
56
|
+
export interface SubsystemC4Projection {
|
|
57
|
+
model: C4Model;
|
|
58
|
+
source: 'accepted' | 'draft';
|
|
59
|
+
memberships: Record<string, string[]>;
|
|
60
|
+
counts: {
|
|
61
|
+
containers: number;
|
|
62
|
+
externals: number;
|
|
63
|
+
edges: number;
|
|
64
|
+
components: number;
|
|
65
|
+
unassignedComponents: number;
|
|
66
|
+
unbackedProcesses: number;
|
|
67
|
+
};
|
|
68
|
+
repos: string[];
|
|
69
|
+
/** Aliases of components that state no `process`. */
|
|
70
|
+
unassignedComponents: string[];
|
|
71
|
+
/** Container-shaped process keys no accepted container claims (accepted source only). */
|
|
72
|
+
unbackedProcesses: string[];
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=c4Sketch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"c4Sketch.d.ts","sourceRoot":"","sources":["../../src/subsystem/c4Sketch.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC;;;;;;;;GAQG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,8BAA8B;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE;QACN,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,uDAAuD;AACvD,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE;QACN,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,qDAAqD;IACrD,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,yFAAyF;IACzF,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authored C4 sketches — the types shared by the sketch view and the host
|
|
3
|
+
* stores.
|
|
4
|
+
*
|
|
5
|
+
* These live in `subsystems-react` so the pure view and its Storybook fixtures
|
|
6
|
+
* can use them without importing Studio's cross-process contract.
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=c4Sketch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"c4Sketch.js","sourceRoot":"","sources":["../../src/subsystem/c4Sketch.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C4 trail focus — the pure read-side helpers shared by the C4 projection view
|
|
3
|
+
* and its stories.
|
|
4
|
+
*
|
|
5
|
+
* These do not own state: a host decides which trail/step is focused and asks
|
|
6
|
+
* which elements and lines that focus touches.
|
|
7
|
+
*/
|
|
8
|
+
import type { C4Edge } from './c4';
|
|
9
|
+
import type { SubsystemTrailStep } from './model';
|
|
10
|
+
/**
|
|
11
|
+
* The C4 elements a trail touches — every element that owns a step endpoint.
|
|
12
|
+
*
|
|
13
|
+
* Because a container's process-claim membership AND the authored components
|
|
14
|
+
* nested inside it can both claim an alias, both end up in the set: the
|
|
15
|
+
* container is the visible card at container view, its components are the
|
|
16
|
+
* visible cards when it is open, so either view stays honest.
|
|
17
|
+
*/
|
|
18
|
+
export declare function deriveTrailPlayerElements(steps: readonly SubsystemTrailStep[], members: Readonly<Record<string, readonly string[]>>): Set<string>;
|
|
19
|
+
/**
|
|
20
|
+
* The C4 edges that carry a focus — a whole trail, or one specific step.
|
|
21
|
+
*
|
|
22
|
+
* An edge is lit iff its authored `trailRefs` cover the source. A step entirely
|
|
23
|
+
* internal to a container folds into no C4 line, so its focus lights nothing —
|
|
24
|
+
* which is honest: no drawn edge represents that hop.
|
|
25
|
+
*/
|
|
26
|
+
export declare function deriveLitC4Edges(source: {
|
|
27
|
+
trailId: string;
|
|
28
|
+
stepIndex?: number;
|
|
29
|
+
}, edges: readonly C4Edge[]): Set<string>;
|
|
30
|
+
//# sourceMappingURL=c4TrailFocus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"c4TrailFocus.d.ts","sourceRoot":"","sources":["../../src/subsystem/c4TrailFocus.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,SAAS,kBAAkB,EAAE,EACpC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,GACnD,GAAG,CAAC,MAAM,CAAC,CAeb;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,EAC/C,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,GAAG,CAAC,MAAM,CAAC,CAYb"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C4 trail focus — the pure read-side helpers shared by the C4 projection view
|
|
3
|
+
* and its stories.
|
|
4
|
+
*
|
|
5
|
+
* These do not own state: a host decides which trail/step is focused and asks
|
|
6
|
+
* which elements and lines that focus touches.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* The C4 elements a trail touches — every element that owns a step endpoint.
|
|
10
|
+
*
|
|
11
|
+
* Because a container's process-claim membership AND the authored components
|
|
12
|
+
* nested inside it can both claim an alias, both end up in the set: the
|
|
13
|
+
* container is the visible card at container view, its components are the
|
|
14
|
+
* visible cards when it is open, so either view stays honest.
|
|
15
|
+
*/
|
|
16
|
+
export function deriveTrailPlayerElements(steps, members) {
|
|
17
|
+
const byAlias = new Map();
|
|
18
|
+
for (const [elementId, aliases] of Object.entries(members)) {
|
|
19
|
+
for (const alias of aliases) {
|
|
20
|
+
const list = byAlias.get(alias);
|
|
21
|
+
if (list)
|
|
22
|
+
list.push(elementId);
|
|
23
|
+
else
|
|
24
|
+
byAlias.set(alias, [elementId]);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const players = new Set();
|
|
28
|
+
for (const step of steps) {
|
|
29
|
+
for (const id of byAlias.get(step.from) ?? [])
|
|
30
|
+
players.add(id);
|
|
31
|
+
for (const id of byAlias.get(step.to) ?? [])
|
|
32
|
+
players.add(id);
|
|
33
|
+
}
|
|
34
|
+
return players;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* The C4 edges that carry a focus — a whole trail, or one specific step.
|
|
38
|
+
*
|
|
39
|
+
* An edge is lit iff its authored `trailRefs` cover the source. A step entirely
|
|
40
|
+
* internal to a container folds into no C4 line, so its focus lights nothing —
|
|
41
|
+
* which is honest: no drawn edge represents that hop.
|
|
42
|
+
*/
|
|
43
|
+
export function deriveLitC4Edges(source, edges) {
|
|
44
|
+
const lit = new Set();
|
|
45
|
+
for (const edge of edges) {
|
|
46
|
+
for (const ref of edge.trailRefs ?? []) {
|
|
47
|
+
if (ref.trailId !== source.trailId)
|
|
48
|
+
continue;
|
|
49
|
+
if (source.stepIndex == null || ref.stepIndices.includes(source.stepIndex)) {
|
|
50
|
+
lit.add(edge.id);
|
|
51
|
+
break;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return lit;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=c4TrailFocus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"c4TrailFocus.js","sourceRoot":"","sources":["../../src/subsystem/c4TrailFocus.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAoC,EACpC,OAAoD;IAEpD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC5C,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC1D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;YAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;gBAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;SACtC;KACF;IACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/D,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE;YAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;KAC9D;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAA+C,EAC/C,KAAwB;IAExB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE;YACtC,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO;gBAAE,SAAS;YAC7C,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,IAAI,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;gBAC1E,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,MAAM;aACP;SACF;KACF;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|