footprint-explainable-ui 0.26.0 → 0.26.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/index.cjs CHANGED
@@ -4413,8 +4413,8 @@ function SubflowBreadcrumbBar({ entries, onNavigate }) {
4413
4413
  gap: 6,
4414
4414
  padding: "6px 12px",
4415
4415
  fontSize: 11,
4416
- background: rawDefaults.colors.bgSecondary,
4417
- borderBottom: `1px solid ${rawDefaults.colors.border}`,
4416
+ background: theme.bgSecondary,
4417
+ borderBottom: `1px solid ${theme.border}`,
4418
4418
  flexShrink: 0
4419
4419
  },
4420
4420
  "aria-label": "Subflow breadcrumb",
@@ -4437,7 +4437,7 @@ function SubflowBreadcrumbBar({ entries, onNavigate }) {
4437
4437
  padding: 0,
4438
4438
  fontSize: 11,
4439
4439
  fontWeight: isLast ? 600 : 500,
4440
- color: isLast ? rawDefaults.colors.textPrimary : rawDefaults.colors.primary,
4440
+ color: isLast ? theme.textPrimary : theme.primary,
4441
4441
  cursor: isLast ? "default" : "pointer",
4442
4442
  textDecoration: isLast ? "none" : "underline",
4443
4443
  fontFamily: "inherit"
@@ -4445,7 +4445,7 @@ function SubflowBreadcrumbBar({ entries, onNavigate }) {
4445
4445
  children: entry.label
4446
4446
  }
4447
4447
  ),
4448
- !isLast && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { style: { color: rawDefaults.colors.textMuted }, children: "\u203A" })
4448
+ !isLast && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { style: { color: theme.textMuted }, children: "\u203A" })
4449
4449
  ]
4450
4450
  },
4451
4451
  entry.subflowId ?? "__top__"
@@ -4458,10 +4458,9 @@ function SubflowBreadcrumbBar({ entries, onNavigate }) {
4458
4458
  // src/components/GroupContainerNode/GroupContainerNode.tsx
4459
4459
  var import_react19 = require("@xyflow/react");
4460
4460
  var import_jsx_runtime18 = require("react/jsx-runtime");
4461
- var C = rawDefaults.colors;
4462
4461
  function GroupContainerNode({ data }) {
4463
4462
  const d = data;
4464
- const borderColor = d.error ? C.error : d.active ? C.primary : d.done ? C.success : C.border;
4463
+ const borderColor = d.error ? theme.error : d.active ? theme.primary : d.done ? theme.nodeVisited : theme.border;
4465
4464
  return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
4466
4465
  "div",
4467
4466
  {
@@ -4471,8 +4470,9 @@ function GroupContainerNode({ data }) {
4471
4470
  boxSizing: "border-box",
4472
4471
  border: `1.5px ${d.active || d.done || d.error ? "solid" : "dashed"} ${borderColor}`,
4473
4472
  borderRadius: 12,
4474
- // Translucent so the dotted background + nested children read clearly.
4475
- background: "rgba(148, 163, 184, 0.06)",
4473
+ // Translucent (theme-derived) so the dotted background + nested children
4474
+ // read clearly, while still following dark/light.
4475
+ background: `color-mix(in srgb, ${theme.textMuted} 7%, transparent)`,
4476
4476
  opacity: d.dimmed ? 0.4 : 1,
4477
4477
  position: "relative"
4478
4478
  },
@@ -4487,7 +4487,7 @@ function GroupContainerNode({ data }) {
4487
4487
  padding: "8px 12px",
4488
4488
  fontSize: 12,
4489
4489
  fontWeight: 600,
4490
- color: C.textMuted,
4490
+ color: theme.textMuted,
4491
4491
  letterSpacing: 0.2
4492
4492
  },
4493
4493
  children: [
@@ -6142,6 +6142,7 @@ function ExplainableShell({
6142
6142
  showStageId = false,
6143
6143
  traceGraph,
6144
6144
  runtimeOverlay,
6145
+ traceTheme,
6145
6146
  size = "default",
6146
6147
  unstyled = false,
6147
6148
  className,
@@ -6174,11 +6175,17 @@ function ExplainableShell({
6174
6175
  }
6175
6176
  if (i >= 0) overlayIdx = i;
6176
6177
  }
6178
+ const traceColors = traceTheme && {
6179
+ ...traceTheme.visited !== void 0 && { done: traceTheme.visited },
6180
+ ...traceTheme.current !== void 0 && { active: traceTheme.current },
6181
+ ...traceTheme.mode !== void 0 && { default: traceTheme.mode === "dark" ? "#94a3b8" : "#64748b" }
6182
+ };
6177
6183
  return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
6178
6184
  TracedFlow,
6179
6185
  {
6180
6186
  graph: traceGraph,
6181
6187
  overlay: runtimeOverlay ?? void 0,
6188
+ colors: traceColors || void 0,
6182
6189
  scrubIndex: overlayIdx,
6183
6190
  onNodeClick: (stageId) => onNodeClick?.(stageId),
6184
6191
  onSubflowChange: (mountId) => {
@@ -6187,7 +6194,7 @@ function ExplainableShell({
6187
6194
  }
6188
6195
  );
6189
6196
  };
6190
- }, [traceGraph, runtimeOverlay]);
6197
+ }, [traceGraph, runtimeOverlay, traceTheme]);
6191
6198
  const effectiveRenderFlowchart = renderFlowchart ?? tracedFlowRenderer;
6192
6199
  const leftLabel = panelLabels?.topology ?? "Topology";
6193
6200
  const rightLabel = panelLabels?.details ?? "Details";