@principal-ai/subsystems-react 0.56.1 → 0.56.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.
- package/dist/subsystem/FileDrawer.d.ts +9 -11
- package/dist/subsystem/FileDrawer.d.ts.map +1 -1
- package/dist/subsystem/FileDrawer.js +23 -23
- package/dist/subsystem/FileDrawer.js.map +1 -1
- package/dist/subsystem/GraphSidebar.d.ts.map +1 -1
- package/dist/subsystem/GraphSidebar.js +3 -1
- package/dist/subsystem/GraphSidebar.js.map +1 -1
- package/dist/subsystem/SubsystemComponentGraph.d.ts +4 -3
- package/dist/subsystem/SubsystemComponentGraph.d.ts.map +1 -1
- package/dist/subsystem/SubsystemComponentGraph.js +32 -30
- package/dist/subsystem/SubsystemComponentGraph.js.map +1 -1
- package/package.json +1 -1
- package/src/stories/Canvases/Subsystem/LayoutDirection.stories.tsx +55 -3
- package/src/subsystem/FileDrawer.test.tsx +130 -0
- package/src/subsystem/FileDrawer.tsx +27 -28
- package/src/subsystem/GraphSidebar.test.tsx +56 -1
- package/src/subsystem/GraphSidebar.tsx +3 -1
- package/src/subsystem/SubsystemComponentGraph.tsx +65 -57
|
@@ -1,23 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* FileDrawer — bottom
|
|
3
|
-
*
|
|
2
|
+
* FileDrawer — bottom or left panel in the graph area
|
|
3
|
+
* showing file / trail code. Opened by sidebar file-tree clicks,
|
|
4
4
|
* declaration links, and trail step focus; content is injected as
|
|
5
5
|
* children by the graph component.
|
|
6
6
|
*/
|
|
7
7
|
import type { ReactNode } from "react";
|
|
8
|
-
/** Matches
|
|
9
|
-
* should wait at least this long so the canvas has its reduced height. */
|
|
8
|
+
/** Matches the drawer's size transition; wait this long before fitting the canvas. */
|
|
10
9
|
export declare const FILE_DRAWER_HEIGHT_MS = 200;
|
|
11
|
-
/**
|
|
12
|
-
*
|
|
13
|
-
|
|
14
|
-
* so open/close/maximize animate. The header's maximize button (or a
|
|
15
|
-
* double-click) grows it over the whole graph column for whole-file reading. */
|
|
16
|
-
export declare function FileDrawer({ title, onClose, fillHeight, suppressEscape, hidden, progress, subheader, children, }: {
|
|
10
|
+
/** An in-flow spacer reserves the panel's footprint so it never covers the
|
|
11
|
+
* canvas. Stays mounted across open/close, maximize, and docking changes. */
|
|
12
|
+
export declare function FileDrawer({ title, onClose, placement, fillHeight, suppressEscape, hidden, progress, subheader, children, }: {
|
|
17
13
|
/** Drawer chrome title; `null` closes the drawer. */
|
|
18
14
|
title: string | null;
|
|
19
15
|
onClose: () => void;
|
|
20
|
-
/**
|
|
16
|
+
/** Left docking requires a row container; bottom docking requires a column. */
|
|
17
|
+
placement?: "bottom" | "left";
|
|
18
|
+
/** When true and open, fill the graph area instead of ~45% of its dock axis. */
|
|
21
19
|
fillHeight?: boolean;
|
|
22
20
|
/** Skip Escape handling (e.g. while a full-file overlay is on top). */
|
|
23
21
|
suppressEscape?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileDrawer.d.ts","sourceRoot":"","sources":["../../src/subsystem/FileDrawer.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC;
|
|
1
|
+
{"version":3,"file":"FileDrawer.d.ts","sourceRoot":"","sources":["../../src/subsystem/FileDrawer.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,sFAAsF;AACtF,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC;8EAC8E;AAC9E,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,OAAO,EACP,SAAoB,EACpB,UAAkB,EAClB,cAAsB,EACtB,MAAc,EACd,QAAe,EACf,SAAgB,EAChB,QAAQ,GACT,EAAE;IACD,qDAAqD;IACrD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC9B,gFAAgF;IAChF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mEAAmE;IACnE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACnD,uEAAuE;IACvE,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,+BA4LA"}
|
|
@@ -1,41 +1,36 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
|
-
* FileDrawer — bottom
|
|
4
|
-
*
|
|
3
|
+
* FileDrawer — bottom or left panel in the graph area
|
|
4
|
+
* showing file / trail code. Opened by sidebar file-tree clicks,
|
|
5
5
|
* declaration links, and trail step focus; content is injected as
|
|
6
6
|
* children by the graph component.
|
|
7
7
|
*/
|
|
8
8
|
import { useEffect, useState } from "react";
|
|
9
9
|
import { useTheme } from "@principal-ade/industry-theme";
|
|
10
10
|
import { Minimize2, Maximize2, X } from "lucide-react";
|
|
11
|
-
/** Matches
|
|
12
|
-
* should wait at least this long so the canvas has its reduced height. */
|
|
11
|
+
/** Matches the drawer's size transition; wait this long before fitting the canvas. */
|
|
13
12
|
export const FILE_DRAWER_HEIGHT_MS = 200;
|
|
14
|
-
/**
|
|
15
|
-
*
|
|
16
|
-
|
|
17
|
-
* so open/close/maximize animate. The header's maximize button (or a
|
|
18
|
-
* double-click) grows it over the whole graph column for whole-file reading. */
|
|
19
|
-
export function FileDrawer({ title, onClose, fillHeight = false, suppressEscape = false, hidden = false, progress = null, subheader = null, children, }) {
|
|
13
|
+
/** An in-flow spacer reserves the panel's footprint so it never covers the
|
|
14
|
+
* canvas. Stays mounted across open/close, maximize, and docking changes. */
|
|
15
|
+
export function FileDrawer({ title, onClose, placement = "bottom", fillHeight = false, suppressEscape = false, hidden = false, progress = null, subheader = null, children, }) {
|
|
20
16
|
const { theme } = useTheme();
|
|
21
17
|
const muted = theme.colors.textMuted ?? theme.colors.textSecondary;
|
|
22
18
|
const open = title !== null && !hidden;
|
|
23
19
|
const showProgress = progress != null && progress.total > 1;
|
|
24
20
|
const [closeHover, setCloseHover] = useState(false);
|
|
25
21
|
const [maxHover, setMaxHover] = useState(false);
|
|
26
|
-
//
|
|
27
|
-
// The panel is always bottom-anchored with an animated height, and a spacer
|
|
28
|
-
// in normal flow reserves its footprint, so maximizing grows it upward over
|
|
29
|
-
// the still-mounted graph instead of snapping to full.
|
|
22
|
+
// Maximize grows over the still-mounted graph along the current dock axis.
|
|
30
23
|
const [maximized, setMaximized] = useState(false);
|
|
31
|
-
// A closed drawer reopens at the default
|
|
24
|
+
// A closed drawer reopens at the default size, not maximized.
|
|
32
25
|
useEffect(() => {
|
|
33
26
|
if (!open)
|
|
34
27
|
setMaximized(false);
|
|
35
28
|
}, [open]);
|
|
36
|
-
const
|
|
29
|
+
const fullSize = open && (maximized || fillHeight);
|
|
30
|
+
const sideDocked = placement === "left";
|
|
31
|
+
const sizeAxis = sideDocked ? "width" : "height";
|
|
37
32
|
// Space the panel takes out of the canvas's flow (0 when it overlays fully).
|
|
38
|
-
const
|
|
33
|
+
const reservedSize = fullSize ? 0 : open ? "45%" : 0;
|
|
39
34
|
useEffect(() => {
|
|
40
35
|
if (!open || suppressEscape)
|
|
41
36
|
return;
|
|
@@ -48,24 +43,29 @@ export function FileDrawer({ title, onClose, fillHeight = false, suppressEscape
|
|
|
48
43
|
}, [open, onClose, suppressEscape]);
|
|
49
44
|
return (_jsxs(_Fragment, { children: [_jsx("div", { "aria-hidden": "true", style: {
|
|
50
45
|
flexShrink: 0,
|
|
51
|
-
|
|
52
|
-
|
|
46
|
+
order: sideDocked ? -1 : undefined,
|
|
47
|
+
[sizeAxis]: reservedSize,
|
|
48
|
+
transition: `${sizeAxis} ${FILE_DRAWER_HEIGHT_MS}ms ease`,
|
|
53
49
|
} }), _jsxs("div", { style: {
|
|
54
50
|
position: "absolute",
|
|
55
51
|
left: 0,
|
|
56
|
-
|
|
52
|
+
top: sideDocked ? 0 : undefined,
|
|
53
|
+
right: sideDocked ? undefined : 0,
|
|
57
54
|
bottom: 0,
|
|
58
55
|
// Above the edge-label overlay (zIndex 5), React Flow, and overlays
|
|
59
56
|
// (zIndex 6–8); 30 lifts it over the whole graph area when maximized.
|
|
60
57
|
zIndex: maximized ? 30 : 6,
|
|
61
|
-
|
|
58
|
+
width: sideDocked ? (open ? (fullSize ? "100%" : "45%") : 0) : undefined,
|
|
59
|
+
height: sideDocked ? "100%" : open ? (fullSize ? "100%" : "45%") : 0,
|
|
60
|
+
minWidth: 0,
|
|
62
61
|
minHeight: 0,
|
|
63
62
|
overflow: "hidden",
|
|
64
63
|
display: "flex",
|
|
65
64
|
flexDirection: "column",
|
|
66
65
|
background: theme.colors.background,
|
|
67
|
-
borderTop: open ? `1px solid ${theme.colors.border}` : "none",
|
|
68
|
-
|
|
66
|
+
borderTop: open && !sideDocked ? `1px solid ${theme.colors.border}` : "none",
|
|
67
|
+
borderRight: open && sideDocked ? `1px solid ${theme.colors.border}` : "none",
|
|
68
|
+
transition: `${sizeAxis} ${FILE_DRAWER_HEIGHT_MS}ms ease`,
|
|
69
69
|
}, children: [_jsxs("div", { onDoubleClick: () => setMaximized((v) => !v), style: {
|
|
70
70
|
display: "flex",
|
|
71
71
|
flexDirection: "column",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileDrawer.js","sourceRoot":"","sources":["../../src/subsystem/FileDrawer.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AAEvD;
|
|
1
|
+
{"version":3,"file":"FileDrawer.js","sourceRoot":"","sources":["../../src/subsystem/FileDrawer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphSidebar.d.ts","sourceRoot":"","sources":["../../src/subsystem/GraphSidebar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiC,SAAS,EAAE,MAAM,OAAO,CAAC;AAGtE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC;4EACwE;IACxE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;8DAC0D;IAC1D,IAAI,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,sEAAsE;IACtE,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,qEAAqE;IACrE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qDAAqD;IACrD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;4EACwE;IACxE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;8CAC0C;IAC1C,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD;AAmBD,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,IAAI,EACJ,SAAS,EACT,WAAW,EACX,WAAW,EACX,MAAM,EACN,MAAc,EACd,UAAkB,EAClB,aAAqB,EACrB,KAAK,EACL,aAAa,EACb,YAA4B,EAC5B,QAA4B,EAC5B,QAA4B,EAC5B,WAAW,EACX,UAAU,EACV,YAAiC,EACjC,gBAAgB,GACjB,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"GraphSidebar.d.ts","sourceRoot":"","sources":["../../src/subsystem/GraphSidebar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiC,SAAS,EAAE,MAAM,OAAO,CAAC;AAGtE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC;4EACwE;IACxE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;8DAC0D;IAC1D,IAAI,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,sEAAsE;IACtE,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,qEAAqE;IACrE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qDAAqD;IACrD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;4EACwE;IACxE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;8CAC0C;IAC1C,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD;AAmBD,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,IAAI,EACJ,SAAS,EACT,WAAW,EACX,WAAW,EACX,MAAM,EACN,MAAc,EACd,UAAkB,EAClB,aAAqB,EACrB,KAAK,EACL,aAAa,EACb,YAA4B,EAC5B,QAA4B,EAC5B,QAA4B,EAC5B,WAAW,EACX,UAAU,EACV,YAAiC,EACjC,gBAAgB,GACjB,EAAE,iBAAiB,sCA8LnB"}
|
|
@@ -38,6 +38,7 @@ export function GraphSidebar({ header, tabs, activeTab, onTabChange, sidebarBody
|
|
|
38
38
|
// persisting only then — not on every mousemove.
|
|
39
39
|
const [dragging, setDragging] = useState(false);
|
|
40
40
|
const dragStartX = useRef(0);
|
|
41
|
+
const dragStartWidth = useRef(0);
|
|
41
42
|
// Mirror of the current width for the mouseup handler (a closure over the
|
|
42
43
|
// drag-start render would persist the stale start width).
|
|
43
44
|
const currentWidthRef = useRef(effectiveWidth);
|
|
@@ -45,6 +46,7 @@ export function GraphSidebar({ header, tabs, activeTab, onTabChange, sidebarBody
|
|
|
45
46
|
const onResizeStart = useCallback((e) => {
|
|
46
47
|
e.preventDefault();
|
|
47
48
|
dragStartX.current = e.clientX;
|
|
49
|
+
dragStartWidth.current = effectiveWidth;
|
|
48
50
|
currentWidthRef.current = effectiveWidth;
|
|
49
51
|
setDragging(true);
|
|
50
52
|
onDraggingChange?.(true);
|
|
@@ -53,7 +55,7 @@ export function GraphSidebar({ header, tabs, activeTab, onTabChange, sidebarBody
|
|
|
53
55
|
if (!dragging)
|
|
54
56
|
return;
|
|
55
57
|
const onMove = (e) => {
|
|
56
|
-
const next = Math.min(Math.max(
|
|
58
|
+
const next = Math.min(Math.max(dragStartWidth.current + (e.clientX - dragStartX.current), minWidth), maxWidth);
|
|
57
59
|
if (controlled) {
|
|
58
60
|
onWidthChange?.(next);
|
|
59
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphSidebar.js","sourceRoot":"","sources":["../../src/subsystem/GraphSidebar.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"GraphSidebar.js","sourceRoot":"","sources":["../../src/subsystem/GraphSidebar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -55,7 +55,7 @@ export interface SubsystemComponentGraphProps {
|
|
|
55
55
|
* sidebar's bottom half offers a Files/Trails toggle:
|
|
56
56
|
* the flows panel lists each trail's steps (`symbol` or `file:line`);
|
|
57
57
|
* clicking a flow row toggles its steps; clicking a step focuses that
|
|
58
|
-
* step's edge and (when `renderTrailViewer` is set) opens the
|
|
58
|
+
* step's edge and (when `renderTrailViewer` is set) opens the code
|
|
59
59
|
* drawer on that flow's snippets. Opened flows stay on the canvas
|
|
60
60
|
* (unselected ones dimmed); everything else is hidden.
|
|
61
61
|
*/
|
|
@@ -312,8 +312,9 @@ export interface SubsystemComponentGraphProps {
|
|
|
312
312
|
renderFileViewer?: (file: string, opts?: SubsystemOpenFileOptions) => ReactNode;
|
|
313
313
|
/**
|
|
314
314
|
* Host-injected multi-snippet viewer for a focused trail. When set,
|
|
315
|
-
* clicking a flow step opens the
|
|
316
|
-
* updates it as the focused step changes.
|
|
315
|
+
* clicking a flow step opens the code drawer with this content and
|
|
316
|
+
* updates it as the focused step changes. Docks left for vertical layouts,
|
|
317
|
+
* below the canvas for horizontal layouts.
|
|
317
318
|
*/
|
|
318
319
|
renderTrailViewer?: (ctx: TrailViewerContext) => ReactNode;
|
|
319
320
|
/**
|
|
@@ -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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"}
|
|
@@ -405,9 +405,9 @@ function Inner({ components, trails, graphifyRelations, orderByLine, layoutDirec
|
|
|
405
405
|
const showDesc = !!description && descriptionVisible;
|
|
406
406
|
// Sidebar width lives in the shared GraphWithSidebar chrome — draggable and
|
|
407
407
|
// persisted under `principal.subsystems.sidebarWidth.<persistKey>`. The graph
|
|
408
|
-
//
|
|
408
|
+
// caps it at half the view width so the canvas keeps room to breathe;
|
|
409
409
|
// a width saved under the old view-state key still seeds the panel once.
|
|
410
|
-
const sidebarMaxWidth = useMemo(() => Math.max(
|
|
410
|
+
const sidebarMaxWidth = useMemo(() => Math.max((_measured?.w ?? 680) * 0.5, 240), [_measured?.w]);
|
|
411
411
|
// Persist the trail working set per model. Each write merges into the
|
|
412
412
|
// stored blob, so the three fields never clobber one another.
|
|
413
413
|
useEffect(() => {
|
|
@@ -1472,7 +1472,7 @@ function Inner({ components, trails, graphifyRelations, orderByLine, layoutDirec
|
|
|
1472
1472
|
}, []);
|
|
1473
1473
|
const drawerFillHeight = drawerTarget?.kind === 'file' && drawerTarget.startLine == null;
|
|
1474
1474
|
const fileOverlayOpen = fileOverlay != null;
|
|
1475
|
-
const collapseCanvas = drawerFillHeight || fileOverlayOpen;
|
|
1475
|
+
const collapseCanvas = drawerFillHeight || (fileOverlayOpen && committedDirection !== 'vertical');
|
|
1476
1476
|
// Drop the full-file overlay when the underlying trail drawer changes
|
|
1477
1477
|
// or closes — open-file keeps the same drawerTarget so the snippets stay mounted.
|
|
1478
1478
|
const trailDrawerKey = drawerTarget?.kind === 'trail'
|
|
@@ -2244,12 +2244,38 @@ function Inner({ components, trails, graphifyRelations, orderByLine, layoutDirec
|
|
|
2244
2244
|
borderTop: i > 0 ? `1px solid ${theme.colors.border}` : undefined,
|
|
2245
2245
|
}, children: [repoGroups.multiRepo && (_jsx(RepoGroupHeader, { group: group, collapsed: collapsed, onToggle: () => toggleRepoCollapsed(groupKey) })), !collapsed && (_jsx(SubsystemFileTree, { files: group.entries.map((e) => e.displayPath), selectedFile: selected?.file ?? openFile, hoveredFile: hoveredFile, onSelectFile: onTreeSelectFile, hoveredFolder: hoveredBoundaryPath, headerless: repoGroups.multiRepo }))] }, groupKey));
|
|
2246
2246
|
}) })) : null;
|
|
2247
|
+
const fileOverlayView = fileOverlay && (_jsxs("div", { style: {
|
|
2248
|
+
position: 'absolute',
|
|
2249
|
+
inset: 0,
|
|
2250
|
+
zIndex: 8,
|
|
2251
|
+
display: 'flex',
|
|
2252
|
+
flexDirection: 'column',
|
|
2253
|
+
background: theme.colors.background,
|
|
2254
|
+
borderLeft: `1px solid ${theme.colors.border}`,
|
|
2255
|
+
}, children: [_jsxs("div", { style: {
|
|
2256
|
+
display: 'flex',
|
|
2257
|
+
alignItems: 'center',
|
|
2258
|
+
gap: 8,
|
|
2259
|
+
padding: '6px 10px',
|
|
2260
|
+
borderBottom: `1px solid ${theme.colors.border}`,
|
|
2261
|
+
flexShrink: 0,
|
|
2262
|
+
}, children: [_jsx("span", { title: fileOverlay.file, style: {
|
|
2263
|
+
flex: 1,
|
|
2264
|
+
minWidth: 0,
|
|
2265
|
+
overflow: 'hidden',
|
|
2266
|
+
textOverflow: 'ellipsis',
|
|
2267
|
+
whiteSpace: 'nowrap',
|
|
2268
|
+
fontFamily: theme.fonts.monospace,
|
|
2269
|
+
fontSize: theme.fontSizes[0],
|
|
2270
|
+
color: theme.colors.textMuted ?? theme.colors.textSecondary,
|
|
2271
|
+
}, children: fileOverlay.file }), _jsx(FileOverlayCloseButton, { onClose: closeFileOverlay })] }), _jsx("div", { style: { flex: 1, minHeight: 0, overflow: 'auto' }, children: _jsx(FileDrawerContent, { render: renderDrawerContent, file: fileOverlay.file, startLine: fileOverlay.startLine, endLine: fileOverlay.endLine, fullFile: true }) })] }));
|
|
2247
2272
|
return (_jsx(GraphWithSidebar, { hidden: !sidebarVisible, bodyHidden: !sidebarBodyVisible, stretchHeader: showDesc, header: sidebarHeader, tabs: sidebarTabs, activeTab: activeSidebarTab, onTabChange: (id) => issuesActive
|
|
2248
2273
|
? setDiagnosticsTab(id)
|
|
2249
|
-
: changeSidebarView(id), sidebarBody: sidebarBody, tabListLabel: issuesActive ? 'Diagnostics view' : 'Sidebar view', defaultWidth: persisted.sidebarWidth ?? 450, minWidth: 240, maxWidth: sidebarMaxWidth, persistKey: persistKey, onResizeEnd: () => requestAnimationFrame(() => fitView()), children: _jsxs("div", { style: { flex: 1, position: 'relative', display: 'flex', flexDirection: 'column', minHeight: 0 }, children: [_jsxs("div", { className: layoutFlipping ? LAYOUT_FLIP_CLASS : undefined, style: {
|
|
2274
|
+
: changeSidebarView(id), sidebarBody: sidebarBody, tabListLabel: issuesActive ? 'Diagnostics view' : 'Sidebar view', defaultWidth: persisted.sidebarWidth ?? 450, minWidth: 240, maxWidth: sidebarMaxWidth, persistKey: persistKey, onResizeEnd: () => requestAnimationFrame(() => fitView()), children: _jsxs("div", { style: { flex: 1, position: 'relative', display: 'flex', flexDirection: committedDirection === 'vertical' ? 'row' : 'column', minHeight: 0, minWidth: 0 }, children: [_jsxs("div", { className: layoutFlipping ? LAYOUT_FLIP_CLASS : undefined, style: {
|
|
2250
2275
|
position: 'relative',
|
|
2251
2276
|
flex: collapseCanvas ? 0 : 1,
|
|
2252
2277
|
minHeight: 0,
|
|
2278
|
+
minWidth: 0,
|
|
2253
2279
|
height: collapseCanvas ? 0 : undefined,
|
|
2254
2280
|
overflow: 'hidden',
|
|
2255
2281
|
display: 'flex',
|
|
@@ -2515,35 +2541,11 @@ function Inner({ components, trails, graphifyRelations, orderByLine, layoutDirec
|
|
|
2515
2541
|
drawerTarget.startLine != null &&
|
|
2516
2542
|
!!selected.file &&
|
|
2517
2543
|
selected.file === drawerTarget.file &&
|
|
2518
|
-
selected.declarationSpan?.startLine === drawerTarget.startLine }) }))] }), _jsx(FileDrawer, { title: drawerTitle, onClose: closeDrawer, fillHeight: drawerFillHeight, suppressEscape: fileOverlayOpen, hidden: hideDrawer, progress: drawerProgress, subheader: drawerTarget?.kind === 'trail' &&
|
|
2544
|
+
selected.declarationSpan?.startLine === drawerTarget.startLine }) })), committedDirection === 'vertical' && fileOverlayView] }), _jsx(FileDrawer, { title: drawerTitle, onClose: closeDrawer, placement: committedDirection === 'vertical' ? 'left' : 'bottom', fillHeight: drawerFillHeight, suppressEscape: fileOverlayOpen, hidden: hideDrawer, progress: drawerProgress, subheader: drawerTarget?.kind === 'trail' &&
|
|
2519
2545
|
focusedTrail &&
|
|
2520
2546
|
drawerTarget.stepIndex != null ? (_jsx(TrailStackBreadcrumb, { trail: focusedTrail, stepIndex: drawerTarget.stepIndex, componentByAlias: componentByAlias, onFocusStep: (index) => focusTrailStep(focusedTrail, index) })) : null, children: drawerTarget?.kind === 'trail' &&
|
|
2521
2547
|
focusedTrail &&
|
|
2522
|
-
renderTrailViewer ? (_jsx(TrailDrawerContent, { render: renderTrailDrawerContent, trail: focusedTrail, stepIndex: drawerTarget.stepIndex, onOpenFile: onOpenFileFromTrail, resolveSymbol: resolveTrailSymbol, onSymbolClick: openConstructDeclaration, onVisibleStepChange: setVisibleStepIndex })) : drawerTarget?.kind === 'file' ? (_jsx(FileDrawerContent, { render: renderDrawerContent, file: drawerTarget.file, startLine: drawerTarget.startLine, endLine: drawerTarget.endLine })) : null }),
|
|
2523
|
-
position: 'absolute',
|
|
2524
|
-
inset: 0,
|
|
2525
|
-
zIndex: 8,
|
|
2526
|
-
display: 'flex',
|
|
2527
|
-
flexDirection: 'column',
|
|
2528
|
-
background: theme.colors.background,
|
|
2529
|
-
borderLeft: `1px solid ${theme.colors.border}`,
|
|
2530
|
-
}, children: [_jsxs("div", { style: {
|
|
2531
|
-
display: 'flex',
|
|
2532
|
-
alignItems: 'center',
|
|
2533
|
-
gap: 8,
|
|
2534
|
-
padding: '6px 10px',
|
|
2535
|
-
borderBottom: `1px solid ${theme.colors.border}`,
|
|
2536
|
-
flexShrink: 0,
|
|
2537
|
-
}, children: [_jsx("span", { title: fileOverlay.file, style: {
|
|
2538
|
-
flex: 1,
|
|
2539
|
-
minWidth: 0,
|
|
2540
|
-
overflow: 'hidden',
|
|
2541
|
-
textOverflow: 'ellipsis',
|
|
2542
|
-
whiteSpace: 'nowrap',
|
|
2543
|
-
fontFamily: theme.fonts.monospace,
|
|
2544
|
-
fontSize: theme.fontSizes[0],
|
|
2545
|
-
color: theme.colors.textMuted ?? theme.colors.textSecondary,
|
|
2546
|
-
}, children: fileOverlay.file }), _jsx(FileOverlayCloseButton, { onClose: closeFileOverlay })] }), _jsx("div", { style: { flex: 1, minHeight: 0, overflow: 'auto' }, children: _jsx(FileDrawerContent, { render: renderDrawerContent, file: fileOverlay.file, startLine: fileOverlay.startLine, endLine: fileOverlay.endLine, fullFile: true }) })] })), _jsx(GraphLayoutCover, { revealed: layoutReady || layoutFlipping }), canvasOverlay, liveEvents ? _jsx(MaintainLivePanel, { ...liveEvents }) : null] }) }));
|
|
2548
|
+
renderTrailViewer ? (_jsx(TrailDrawerContent, { render: renderTrailDrawerContent, trail: focusedTrail, stepIndex: drawerTarget.stepIndex, onOpenFile: onOpenFileFromTrail, resolveSymbol: resolveTrailSymbol, onSymbolClick: openConstructDeclaration, onVisibleStepChange: setVisibleStepIndex })) : drawerTarget?.kind === 'file' ? (_jsx(FileDrawerContent, { render: renderDrawerContent, file: drawerTarget.file, startLine: drawerTarget.startLine, endLine: drawerTarget.endLine })) : null }), committedDirection !== 'vertical' && fileOverlayView, _jsx(GraphLayoutCover, { revealed: layoutReady || layoutFlipping }), canvasOverlay, liveEvents ? _jsx(MaintainLivePanel, { ...liveEvents }) : null] }) }));
|
|
2547
2549
|
}
|
|
2548
2550
|
/** Sidebar header for one repo's tree: owner avatar + repo name + file count.
|
|
2549
2551
|
* Clicking toggles the tree's visibility. */
|