@principal-ade/dynamic-file-tree 0.1.58 → 0.1.59
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.mjs +153 -56
- package/dist/src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTree.stories.d.ts +6 -0
- package/dist/src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTree.stories.d.ts.map +1 -1
- package/dist/src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTreeCore.d.ts.map +1 -1
- package/dist/src/components/StoryboardWorkflowsTree/types.d.ts +17 -3
- package/dist/src/components/StoryboardWorkflowsTree/types.d.ts.map +1 -1
- package/package.json +4 -4
package/dist/index.mjs
CHANGED
|
@@ -1889,10 +1889,10 @@ var MultiFileTree = ({
|
|
|
1889
1889
|
}, "Selected: ", selectedFile.source.name, " / ", selectedFile.path));
|
|
1890
1890
|
};
|
|
1891
1891
|
// src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTreeCore.tsx
|
|
1892
|
-
import { Package, FolderKanban, LayoutDashboard, Workflow, BookOpen, FolderOpen, CheckCircle2 } from "lucide-react";
|
|
1892
|
+
import { Package, FolderKanban, LayoutDashboard, Workflow, BookOpen, FolderOpen, CheckCircle2, GitCommit, CircleDot, Circle } from "lucide-react";
|
|
1893
1893
|
import React11, { useMemo as useMemo9, useRef as useRef5 } from "react";
|
|
1894
1894
|
import { Tree as Tree3 } from "react-arborist";
|
|
1895
|
-
var
|
|
1895
|
+
var buildTreeDataFromStoryboards = (storyboards, workflowCoverageMap, traceWorkflowsSet, filterMode, versionPrefix) => {
|
|
1896
1896
|
const packagesMap = new Map;
|
|
1897
1897
|
const rootStoryboards = [];
|
|
1898
1898
|
for (const storyboard of storyboards) {
|
|
@@ -1906,16 +1906,18 @@ var buildTreeData = (storyboards, workflowCoverageMap) => {
|
|
|
1906
1906
|
}
|
|
1907
1907
|
const buildStoryboardNode = (storyboard) => {
|
|
1908
1908
|
const children = [];
|
|
1909
|
+
const canvasId = versionPrefix ? `canvas:${versionPrefix}:${storyboard.id}` : `canvas:${storyboard.id}`;
|
|
1909
1910
|
children.push({
|
|
1910
|
-
id:
|
|
1911
|
+
id: canvasId,
|
|
1911
1912
|
name: "Storyboard",
|
|
1912
1913
|
type: "canvas",
|
|
1913
1914
|
canvas: storyboard.canvas,
|
|
1914
1915
|
storyboard
|
|
1915
1916
|
});
|
|
1916
1917
|
if (storyboard.canvas.markdownPath) {
|
|
1918
|
+
const overviewId = versionPrefix ? `overview:${versionPrefix}:${storyboard.id}` : `overview:${storyboard.id}`;
|
|
1917
1919
|
children.push({
|
|
1918
|
-
id:
|
|
1920
|
+
id: overviewId,
|
|
1919
1921
|
name: "Overview",
|
|
1920
1922
|
type: "overview",
|
|
1921
1923
|
storyboard,
|
|
@@ -1923,28 +1925,51 @@ var buildTreeData = (storyboards, workflowCoverageMap) => {
|
|
|
1923
1925
|
});
|
|
1924
1926
|
}
|
|
1925
1927
|
if (storyboard.workflows.length > 0) {
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1928
|
+
let workflowNodes = storyboard.workflows.map((workflow) => {
|
|
1929
|
+
const workflowHasTraces = traceWorkflowsSet?.has(workflow.id) ?? false;
|
|
1930
|
+
const workflowNodeId = versionPrefix ? `workflow:${versionPrefix}:${workflow.id}` : `workflow:${workflow.id}`;
|
|
1931
|
+
return {
|
|
1932
|
+
id: workflowNodeId,
|
|
1933
|
+
name: workflow.name,
|
|
1934
|
+
type: "workflow",
|
|
1935
|
+
workflow,
|
|
1936
|
+
storyboard,
|
|
1937
|
+
isFullyCovered: workflowCoverageMap?.[workflow.id] ?? false,
|
|
1938
|
+
hasTraces: workflowHasTraces
|
|
1939
|
+
};
|
|
1940
|
+
}).sort((a, b) => a.name.localeCompare(b.name));
|
|
1941
|
+
if (filterMode === "with-traces") {
|
|
1942
|
+
workflowNodes = workflowNodes.filter((node) => node.hasTraces);
|
|
1943
|
+
} else if (filterMode === "without-traces") {
|
|
1944
|
+
workflowNodes = workflowNodes.filter((node) => !node.hasTraces);
|
|
1945
|
+
}
|
|
1946
|
+
if (workflowNodes.length > 0) {
|
|
1947
|
+
const workflowsId = versionPrefix ? `workflows:${versionPrefix}:${storyboard.id}` : `workflows:${storyboard.id}`;
|
|
1948
|
+
children.push({
|
|
1949
|
+
id: workflowsId,
|
|
1950
|
+
name: "Workflows",
|
|
1951
|
+
type: "workflows",
|
|
1952
|
+
storyboard,
|
|
1953
|
+
children: workflowNodes
|
|
1954
|
+
});
|
|
1955
|
+
}
|
|
1956
|
+
}
|
|
1957
|
+
const storyboardHasTracedWorkflows = storyboard.workflows.some((workflow) => traceWorkflowsSet?.has(workflow.id) ?? false);
|
|
1958
|
+
const storyboardHasUntracedWorkflows = storyboard.workflows.some((workflow) => !(traceWorkflowsSet?.has(workflow.id) ?? false));
|
|
1959
|
+
if (filterMode === "with-traces" && !storyboardHasTracedWorkflows) {
|
|
1960
|
+
return null;
|
|
1961
|
+
}
|
|
1962
|
+
if (filterMode === "without-traces" && !storyboardHasUntracedWorkflows) {
|
|
1963
|
+
return null;
|
|
1941
1964
|
}
|
|
1965
|
+
const storyboardId = versionPrefix ? `storyboard:${versionPrefix}:${storyboard.id}` : `storyboard:${storyboard.id}`;
|
|
1942
1966
|
return {
|
|
1943
|
-
id:
|
|
1967
|
+
id: storyboardId,
|
|
1944
1968
|
name: storyboard.name,
|
|
1945
1969
|
type: "storyboard",
|
|
1946
1970
|
storyboard,
|
|
1947
|
-
children
|
|
1971
|
+
children,
|
|
1972
|
+
hasTraces: storyboardHasTracedWorkflows
|
|
1948
1973
|
};
|
|
1949
1974
|
};
|
|
1950
1975
|
const hasMultiplePackages = packagesMap.size > 1;
|
|
@@ -1953,26 +1978,32 @@ var buildTreeData = (storyboards, workflowCoverageMap) => {
|
|
|
1953
1978
|
if (shouldShowPackageLevel) {
|
|
1954
1979
|
const result = [];
|
|
1955
1980
|
for (const [packageName, packageStoryboards] of packagesMap) {
|
|
1956
|
-
const storyboardNodes = packageStoryboards.map(buildStoryboardNode).sort((a, b) => a.name.localeCompare(b.name));
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1981
|
+
const storyboardNodes = packageStoryboards.map(buildStoryboardNode).filter((node) => node !== null).sort((a, b) => a.name.localeCompare(b.name));
|
|
1982
|
+
if (storyboardNodes.length > 0) {
|
|
1983
|
+
const packageId = versionPrefix ? `package:${versionPrefix}:${packageName}` : `package:${packageName}`;
|
|
1984
|
+
result.push({
|
|
1985
|
+
id: packageId,
|
|
1986
|
+
name: packageName,
|
|
1987
|
+
type: "package",
|
|
1988
|
+
packageName,
|
|
1989
|
+
scope: "package",
|
|
1990
|
+
children: storyboardNodes
|
|
1991
|
+
});
|
|
1992
|
+
}
|
|
1965
1993
|
}
|
|
1966
1994
|
if (rootStoryboards.length > 0) {
|
|
1967
|
-
const rootStoryboardNodes = rootStoryboards.map(buildStoryboardNode).sort((a, b) => a.name.localeCompare(b.name));
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1995
|
+
const rootStoryboardNodes = rootStoryboards.map(buildStoryboardNode).filter((node) => node !== null).sort((a, b) => a.name.localeCompare(b.name));
|
|
1996
|
+
if (rootStoryboardNodes.length > 0) {
|
|
1997
|
+
const rootPackageId = versionPrefix ? `package:${versionPrefix}:root` : "package:root";
|
|
1998
|
+
result.push({
|
|
1999
|
+
id: rootPackageId,
|
|
2000
|
+
name: "Root",
|
|
2001
|
+
type: "package",
|
|
2002
|
+
packageName: "root",
|
|
2003
|
+
scope: "root",
|
|
2004
|
+
children: rootStoryboardNodes
|
|
2005
|
+
});
|
|
2006
|
+
}
|
|
1976
2007
|
}
|
|
1977
2008
|
return result.sort((a, b) => {
|
|
1978
2009
|
if (a.packageName === "root")
|
|
@@ -1986,9 +2017,40 @@ var buildTreeData = (storyboards, workflowCoverageMap) => {
|
|
|
1986
2017
|
for (const packageStoryboards of packagesMap.values()) {
|
|
1987
2018
|
allStoryboards.push(...packageStoryboards);
|
|
1988
2019
|
}
|
|
1989
|
-
return allStoryboards.map(buildStoryboardNode).sort((a, b) => a.name.localeCompare(b.name));
|
|
2020
|
+
return allStoryboards.map(buildStoryboardNode).filter((node) => node !== null).sort((a, b) => a.name.localeCompare(b.name));
|
|
1990
2021
|
}
|
|
1991
2022
|
};
|
|
2023
|
+
var buildTreeDataFromVersions = (versionSnapshots, workflowCoverageMap, filterMode, traceWorkflowsSet) => {
|
|
2024
|
+
const result = [];
|
|
2025
|
+
for (const snapshot of versionSnapshots) {
|
|
2026
|
+
const versionKey = `${snapshot.repositoryUrl}@${snapshot.commitSha}`;
|
|
2027
|
+
const versionHasTracedWorkflows = snapshot.storyboards.some((storyboard) => storyboard.workflows.some((workflow) => traceWorkflowsSet?.has(workflow.id) ?? false));
|
|
2028
|
+
const versionHasUntracedWorkflows = snapshot.storyboards.some((storyboard) => storyboard.workflows.some((workflow) => !(traceWorkflowsSet?.has(workflow.id) ?? false)));
|
|
2029
|
+
if (filterMode === "with-traces" && !versionHasTracedWorkflows) {
|
|
2030
|
+
continue;
|
|
2031
|
+
}
|
|
2032
|
+
if (filterMode === "without-traces" && !versionHasUntracedWorkflows) {
|
|
2033
|
+
continue;
|
|
2034
|
+
}
|
|
2035
|
+
const storyboardChildren = buildTreeDataFromStoryboards(snapshot.storyboards, workflowCoverageMap, traceWorkflowsSet, filterMode, versionKey);
|
|
2036
|
+
if (storyboardChildren.length === 0) {
|
|
2037
|
+
continue;
|
|
2038
|
+
}
|
|
2039
|
+
const repoName = snapshot.repositoryUrl.replace("https://github.com/", "");
|
|
2040
|
+
const shortSha = snapshot.commitSha.substring(0, 8);
|
|
2041
|
+
result.push({
|
|
2042
|
+
id: `version:${versionKey}`,
|
|
2043
|
+
name: `${repoName}@${shortSha}`,
|
|
2044
|
+
type: "version",
|
|
2045
|
+
versionSnapshot: snapshot,
|
|
2046
|
+
repositoryUrl: snapshot.repositoryUrl,
|
|
2047
|
+
commitSha: snapshot.commitSha,
|
|
2048
|
+
hasTraces: versionHasTracedWorkflows,
|
|
2049
|
+
children: storyboardChildren
|
|
2050
|
+
});
|
|
2051
|
+
}
|
|
2052
|
+
return result;
|
|
2053
|
+
};
|
|
1992
2054
|
var StoryboardWorkflowsTreeCore = ({
|
|
1993
2055
|
storyboards,
|
|
1994
2056
|
theme,
|
|
@@ -2000,7 +2062,10 @@ var StoryboardWorkflowsTreeCore = ({
|
|
|
2000
2062
|
verticalNodePadding = "6px",
|
|
2001
2063
|
verticalPadding = "20px",
|
|
2002
2064
|
enableDragAndDrop = false,
|
|
2003
|
-
workflowCoverageMap
|
|
2065
|
+
workflowCoverageMap,
|
|
2066
|
+
versionSnapshots,
|
|
2067
|
+
workflowFilterMode = "all",
|
|
2068
|
+
traceWorkflowsSet
|
|
2004
2069
|
}) => {
|
|
2005
2070
|
const dndProps = getDndProps(enableDragAndDrop);
|
|
2006
2071
|
const rowHeight = useMemo9(() => {
|
|
@@ -2009,11 +2074,19 @@ var StoryboardWorkflowsTreeCore = ({
|
|
|
2009
2074
|
const borderHeight = 2;
|
|
2010
2075
|
return contentLineHeight + paddingValue * 2 + borderHeight;
|
|
2011
2076
|
}, [verticalNodePadding]);
|
|
2012
|
-
const treeData = useMemo9(() =>
|
|
2077
|
+
const treeData = useMemo9(() => {
|
|
2078
|
+
if (versionSnapshots && versionSnapshots.length > 0) {
|
|
2079
|
+
return buildTreeDataFromVersions(versionSnapshots, workflowCoverageMap, workflowFilterMode, traceWorkflowsSet);
|
|
2080
|
+
} else {
|
|
2081
|
+
return buildTreeDataFromStoryboards(storyboards, workflowCoverageMap, traceWorkflowsSet, workflowFilterMode);
|
|
2082
|
+
}
|
|
2083
|
+
}, [storyboards, versionSnapshots, workflowCoverageMap, traceWorkflowsSet, workflowFilterMode]);
|
|
2013
2084
|
const NodeRenderer = (props) => {
|
|
2014
2085
|
const { node } = props;
|
|
2015
2086
|
const data = node.data;
|
|
2016
|
-
const icon = data.type === "
|
|
2087
|
+
const icon = data.type === "version" ? /* @__PURE__ */ React11.createElement(GitCommit, {
|
|
2088
|
+
size: 16
|
|
2089
|
+
}) : data.type === "package" ? /* @__PURE__ */ React11.createElement(Package, {
|
|
2017
2090
|
size: 16
|
|
2018
2091
|
}) : data.type === "storyboard" ? /* @__PURE__ */ React11.createElement(FolderKanban, {
|
|
2019
2092
|
size: 16
|
|
@@ -2026,12 +2099,36 @@ var StoryboardWorkflowsTreeCore = ({
|
|
|
2026
2099
|
}) : /* @__PURE__ */ React11.createElement(Workflow, {
|
|
2027
2100
|
size: 16
|
|
2028
2101
|
});
|
|
2029
|
-
const nameColor = data.type === "package" ? theme.colors.primary : data.type === "storyboard" ? theme.colors.success : data.type === "overview" ? theme.colors.info || "#3b82f6" : data.type === "canvas" ? theme.colors.warning || "#f59e0b" : data.type === "workflows" ? theme.colors.text : theme.colors.textSecondary;
|
|
2102
|
+
const nameColor = data.type === "version" ? data.hasTraces ? "#a855f7" : theme.colors.textMuted : data.type === "package" ? theme.colors.primary : data.type === "storyboard" ? data.hasTraces ? theme.colors.success : theme.colors.textSecondary : data.type === "overview" ? theme.colors.info || "#3b82f6" : data.type === "canvas" ? theme.colors.warning || "#f59e0b" : data.type === "workflows" ? theme.colors.text : data.type === "workflow" ? data.hasTraces ? theme.colors.textSecondary : theme.colors.textMuted : theme.colors.textSecondary;
|
|
2030
2103
|
const nodeHorizontalPadding = data.type === "overview" || data.type === "canvas" || data.type === "workflows" || data.type === "workflow" ? `calc(${horizontalNodePadding} + 12px)` : horizontalNodePadding;
|
|
2031
|
-
const rightContent =
|
|
2032
|
-
|
|
2033
|
-
|
|
2034
|
-
|
|
2104
|
+
const rightContent = (() => {
|
|
2105
|
+
if (data.type === "workflow") {
|
|
2106
|
+
if (data.isFullyCovered) {
|
|
2107
|
+
return /* @__PURE__ */ React11.createElement(CheckCircle2, {
|
|
2108
|
+
size: 14,
|
|
2109
|
+
style: { color: "#10b981", marginLeft: "6px" }
|
|
2110
|
+
});
|
|
2111
|
+
} else if (data.hasTraces !== undefined) {
|
|
2112
|
+
return data.hasTraces ? /* @__PURE__ */ React11.createElement(CircleDot, {
|
|
2113
|
+
size: 14,
|
|
2114
|
+
style: { color: "#10b981", marginLeft: "6px" }
|
|
2115
|
+
}) : /* @__PURE__ */ React11.createElement(Circle, {
|
|
2116
|
+
size: 14,
|
|
2117
|
+
style: { color: theme.colors.textMuted, marginLeft: "6px" }
|
|
2118
|
+
});
|
|
2119
|
+
}
|
|
2120
|
+
}
|
|
2121
|
+
if ((data.type === "version" || data.type === "storyboard") && data.hasTraces !== undefined) {
|
|
2122
|
+
return data.hasTraces ? /* @__PURE__ */ React11.createElement(CircleDot, {
|
|
2123
|
+
size: 14,
|
|
2124
|
+
style: { color: "#10b981", marginLeft: "6px" }
|
|
2125
|
+
}) : /* @__PURE__ */ React11.createElement(Circle, {
|
|
2126
|
+
size: 14,
|
|
2127
|
+
style: { color: theme.colors.textMuted, marginLeft: "6px" }
|
|
2128
|
+
});
|
|
2129
|
+
}
|
|
2130
|
+
return;
|
|
2131
|
+
})();
|
|
2035
2132
|
return /* @__PURE__ */ React11.createElement(TreeNode, {
|
|
2036
2133
|
...props,
|
|
2037
2134
|
theme,
|
|
@@ -2070,7 +2167,7 @@ var StoryboardWorkflowsTreeCore = ({
|
|
|
2070
2167
|
...verticalPadding ? { paddingTop: verticalPadding, paddingBottom: verticalPadding } : {}
|
|
2071
2168
|
}
|
|
2072
2169
|
}, /* @__PURE__ */ React11.createElement(Tree3, {
|
|
2073
|
-
|
|
2170
|
+
data: treeData,
|
|
2074
2171
|
onSelect: handleSelect,
|
|
2075
2172
|
openByDefault: defaultOpen,
|
|
2076
2173
|
...initialOpenState !== undefined && { initialOpenState },
|
|
@@ -2085,7 +2182,7 @@ var StoryboardWorkflowsTreeCore = ({
|
|
|
2085
2182
|
import { Package as Package2, Folder, LayoutDashboard as LayoutDashboard2, FileText } from "lucide-react";
|
|
2086
2183
|
import React12, { useMemo as useMemo10, useRef as useRef6 } from "react";
|
|
2087
2184
|
import { Tree as Tree4 } from "react-arborist";
|
|
2088
|
-
var
|
|
2185
|
+
var buildTreeData = (canvases) => {
|
|
2089
2186
|
const packagesMap = new Map;
|
|
2090
2187
|
const rootCanvases = [];
|
|
2091
2188
|
for (const canvas of canvases) {
|
|
@@ -2183,7 +2280,7 @@ var CanvasListTreeCore = ({
|
|
|
2183
2280
|
const borderHeight = 2;
|
|
2184
2281
|
return contentLineHeight + paddingValue * 2 + borderHeight;
|
|
2185
2282
|
}, [verticalNodePadding]);
|
|
2186
|
-
const treeData = useMemo10(() =>
|
|
2283
|
+
const treeData = useMemo10(() => buildTreeData(canvases), [canvases]);
|
|
2187
2284
|
const NodeRenderer = (props) => {
|
|
2188
2285
|
const { node } = props;
|
|
2189
2286
|
const data = node.data;
|
|
@@ -2249,8 +2346,8 @@ var CanvasListTreeCore = ({
|
|
|
2249
2346
|
// src/components/TelemetryCoverageFileTree.tsx
|
|
2250
2347
|
import {
|
|
2251
2348
|
Activity,
|
|
2252
|
-
CircleDot,
|
|
2253
|
-
Circle,
|
|
2349
|
+
CircleDot as CircleDot2,
|
|
2350
|
+
Circle as Circle2,
|
|
2254
2351
|
TestTube
|
|
2255
2352
|
} from "lucide-react";
|
|
2256
2353
|
import React13, { useMemo as useMemo11, useRef as useRef7 } from "react";
|
|
@@ -2281,7 +2378,7 @@ var getCoverageStatusDisplay = (coverage, _theme) => {
|
|
|
2281
2378
|
};
|
|
2282
2379
|
case "partial":
|
|
2283
2380
|
return {
|
|
2284
|
-
icon: /* @__PURE__ */ React13.createElement(
|
|
2381
|
+
icon: /* @__PURE__ */ React13.createElement(CircleDot2, {
|
|
2285
2382
|
size: 14
|
|
2286
2383
|
}),
|
|
2287
2384
|
color: "#eab308",
|
|
@@ -2290,7 +2387,7 @@ var getCoverageStatusDisplay = (coverage, _theme) => {
|
|
|
2290
2387
|
};
|
|
2291
2388
|
case "none":
|
|
2292
2389
|
return {
|
|
2293
|
-
icon: /* @__PURE__ */ React13.createElement(
|
|
2390
|
+
icon: /* @__PURE__ */ React13.createElement(Circle2, {
|
|
2294
2391
|
size: 14
|
|
2295
2392
|
}),
|
|
2296
2393
|
color: "#6b7280",
|
|
@@ -2441,7 +2538,7 @@ var TelemetryCoverageFileTree = ({
|
|
|
2441
2538
|
opacity: 0.5
|
|
2442
2539
|
},
|
|
2443
2540
|
title: "No telemetry instrumentation"
|
|
2444
|
-
}, /* @__PURE__ */ React13.createElement(
|
|
2541
|
+
}, /* @__PURE__ */ React13.createElement(Circle2, {
|
|
2445
2542
|
size: 14
|
|
2446
2543
|
})) : null;
|
|
2447
2544
|
return /* @__PURE__ */ React13.createElement(TreeNode, {
|
|
@@ -20,4 +20,10 @@ export declare const ThemeComparison: Story;
|
|
|
20
20
|
export declare const CustomPadding: Story;
|
|
21
21
|
export declare const WithOverviewNodes: Story;
|
|
22
22
|
export declare const WithoutOverviewNodes: Story;
|
|
23
|
+
export declare const VersionGrouping: Story;
|
|
24
|
+
export declare const VersionGroupingWithTraces: Story;
|
|
25
|
+
export declare const VersionGroupingWithFilter: Story;
|
|
26
|
+
export declare const VersionEvolution: Story;
|
|
27
|
+
export declare const MultiServiceVersionGrouping: Story;
|
|
28
|
+
export declare const VersionGroupingWithCoverage: Story;
|
|
23
29
|
//# sourceMappingURL=StoryboardWorkflowsTree.stories.d.ts.map
|
package/dist/src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTree.stories.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoryboardWorkflowsTree.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTree.stories.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAyP5E,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,2BAA2B,CAOlD,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAE1D,eAAO,MAAM,OAAO,EAAE,KAOrB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAO3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAOhC,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAOzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAOhC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAQ3B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAOxB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAO3B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAOzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAOhC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAOxB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAuE7B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,KAkEpC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAgE7B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAU3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAwB/B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,KAiBlC,CAAC"}
|
|
1
|
+
{"version":3,"file":"StoryboardWorkflowsTree.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTree.stories.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAyP5E,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,2BAA2B,CAOlD,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAE1D,eAAO,MAAM,OAAO,EAAE,KAOrB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAO3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAOhC,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAOzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAOhC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAQ3B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAOxB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAO3B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAOzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAOhC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAOxB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAuE7B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,KAkEpC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAgE7B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAU3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAwB/B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,KAiBlC,CAAC;AA4CF,eAAO,MAAM,eAAe,EAAE,KAe7B,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,KAqEvC,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,KAyFvC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAiH9B,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,KA2GzC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,KAyEzC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoryboardWorkflowsTreeCore.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTreeCore.tsx"],"names":[],"mappings":"AACA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAO/C,OAAO,KAAK,EAEV,4BAA4B,
|
|
1
|
+
{"version":3,"file":"StoryboardWorkflowsTreeCore.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryboardWorkflowsTree/StoryboardWorkflowsTreeCore.tsx"],"names":[],"mappings":"AACA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAO/C,OAAO,KAAK,EAEV,4BAA4B,EAK7B,MAAM,SAAS,CAAC;AAyPjB,eAAO,MAAM,2BAA2B,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAsM9E,CAAC"}
|
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
import type { Theme } from '@principal-ade/industry-theme';
|
|
2
|
-
import type { DiscoveredStoryboard, DiscoveredCanvas, DiscoveredWorkflow, WorkflowTemplate } from '@principal-ai/principal-view-core';
|
|
2
|
+
import type { DiscoveredStoryboard, DiscoveredCanvas, DiscoveredWorkflow, WorkflowTemplate, VersionSnapshot } from '@principal-ai/principal-view-core';
|
|
3
3
|
import type { TreeNodeData } from '../TreeNode';
|
|
4
|
-
export type { DiscoveredStoryboard, DiscoveredCanvas, DiscoveredWorkflow, WorkflowTemplate };
|
|
5
|
-
export type StoryboardWorkflowNodeType = 'package' | 'storyboard' | 'overview' | 'canvas' | 'workflows' | 'workflow';
|
|
4
|
+
export type { DiscoveredStoryboard, DiscoveredCanvas, DiscoveredWorkflow, WorkflowTemplate, VersionSnapshot };
|
|
5
|
+
export type StoryboardWorkflowNodeType = 'version' | 'package' | 'storyboard' | 'overview' | 'canvas' | 'workflows' | 'workflow';
|
|
6
|
+
/**
|
|
7
|
+
* Workflow filter mode
|
|
8
|
+
* - 'all': Show all workflows (default)
|
|
9
|
+
* - 'with-traces': Show only workflows that have traces
|
|
10
|
+
* - 'without-traces': Show only workflows that don't have traces
|
|
11
|
+
*/
|
|
12
|
+
export type WorkflowFilterMode = 'all' | 'with-traces' | 'without-traces';
|
|
6
13
|
export interface StoryboardWorkflowNodeData extends TreeNodeData {
|
|
7
14
|
type: StoryboardWorkflowNodeType;
|
|
8
15
|
children?: StoryboardWorkflowNodeData[];
|
|
16
|
+
versionSnapshot?: VersionSnapshot;
|
|
9
17
|
storyboard?: DiscoveredStoryboard;
|
|
10
18
|
canvas?: DiscoveredCanvas;
|
|
11
19
|
workflow?: DiscoveredWorkflow;
|
|
@@ -14,6 +22,9 @@ export interface StoryboardWorkflowNodeData extends TreeNodeData {
|
|
|
14
22
|
scope?: 'package' | 'root';
|
|
15
23
|
markdownPath?: string;
|
|
16
24
|
isFullyCovered?: boolean;
|
|
25
|
+
hasTraces?: boolean;
|
|
26
|
+
repositoryUrl?: string;
|
|
27
|
+
commitSha?: string;
|
|
17
28
|
}
|
|
18
29
|
export interface StoryboardWorkflowsTreeProps {
|
|
19
30
|
storyboards: DiscoveredStoryboard[];
|
|
@@ -27,5 +38,8 @@ export interface StoryboardWorkflowsTreeProps {
|
|
|
27
38
|
verticalPadding?: string;
|
|
28
39
|
enableDragAndDrop?: boolean;
|
|
29
40
|
workflowCoverageMap?: Record<string, boolean>;
|
|
41
|
+
versionSnapshots?: VersionSnapshot[];
|
|
42
|
+
workflowFilterMode?: WorkflowFilterMode;
|
|
43
|
+
traceWorkflowsSet?: Set<string>;
|
|
30
44
|
}
|
|
31
45
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryboardWorkflowsTree/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryboardWorkflowsTree/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEvJ,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,YAAY,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC;AAE9G,MAAM,MAAM,0BAA0B,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC;AAEjI;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,aAAa,GAAG,gBAAgB,CAAC;AAE1E,MAAM,WAAW,0BAA2B,SAAQ,YAAY;IAC9D,IAAI,EAAE,0BAA0B,CAAC;IACjC,QAAQ,CAAC,EAAE,0BAA0B,EAAE,CAAC;IAGxC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,4BAA4B;IAC3C,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACpC,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,CAAC,IAAI,EAAE,0BAA0B,KAAK,IAAI,CAAC;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAG9C,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACjC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@principal-ade/dynamic-file-tree",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.59",
|
|
4
4
|
"description": "React component for selective directory filtering and file tree visualization",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.mjs",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
},
|
|
49
49
|
"peerDependencies": {
|
|
50
50
|
"@principal-ade/industry-theme": ">=0.1.0",
|
|
51
|
-
"@principal-ai/principal-view-core": "^0.
|
|
51
|
+
"@principal-ai/principal-view-core": "^0.22.1",
|
|
52
52
|
"@principal-ai/repository-abstraction": "^0.5.2",
|
|
53
53
|
"lucide-react": ">=0.263.0",
|
|
54
54
|
"react": ">=19.0.0",
|
|
@@ -69,10 +69,10 @@
|
|
|
69
69
|
}
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
|
+
"@eslint/js": "^9.32.0",
|
|
72
73
|
"@principal-ade/industry-theme": "^0.1.0",
|
|
73
|
-
"@principal-ai/principal-view-core": "^0.
|
|
74
|
+
"@principal-ai/principal-view-core": "^0.22.1",
|
|
74
75
|
"@principal-ai/repository-abstraction": "^0.5.2",
|
|
75
|
-
"@eslint/js": "^9.32.0",
|
|
76
76
|
"@storybook/addon-docs": "^9.1.3",
|
|
77
77
|
"@storybook/addon-onboarding": "^9.1.3",
|
|
78
78
|
"@storybook/addon-webpack5-compiler-swc": "^3.0.0",
|