Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "uipath-dev"
version = "0.0.39"
version = "0.0.40"
description = "UiPath Developer Console"
readme = { file = "README.md", content-type = "text/markdown" }
requires-python = ">=3.11"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -350,6 +350,7 @@ export default function GraphPanel({ entrypoint, traces, runId, breakpointNode,
const [nodes, setNodes, onNodesChange] = useNodesState([]);
const [edges, setEdges, onEdgesChange] = useEdgesState([]);
const [loading, setLoading] = useState(true);
const [graphUnavailable, setGraphUnavailable] = useState(false);
const layoutRef = useRef(0);
const rfInstance = useRef<ReactFlowInstance | null>(null);

Expand Down Expand Up @@ -527,9 +528,14 @@ export default function GraphPanel({ entrypoint, traces, runId, breakpointNode,
const layoutId = ++layoutRef.current;
setLoading(true);

setGraphUnavailable(false);
getEntrypointGraph(entrypoint)
.then(async (graphData) => {
if (layoutRef.current !== layoutId) return;
if (!graphData.nodes.length) {
setGraphUnavailable(true);
return;
}
const { nodes: laidNodes, edges: laidEdges } =
await runElkLayout(graphData);
if (layoutRef.current !== layoutId) return;
Expand All @@ -549,7 +555,9 @@ export default function GraphPanel({ entrypoint, traces, runId, breakpointNode,
rfInstance.current?.fitView({ padding: 0.1, duration: 200 });
}, 100);
})
.catch(console.error)
.catch(() => {
if (layoutRef.current === layoutId) setGraphUnavailable(true);
})
.finally(() => {
if (layoutRef.current === layoutId) setLoading(false);
});
Expand Down Expand Up @@ -604,6 +612,38 @@ export default function GraphPanel({ entrypoint, traces, runId, breakpointNode,
);
}

if (graphUnavailable) {
return (
<div
className="flex flex-col items-center justify-center h-full gap-4"
style={{ color: "var(--text-muted)" }}
>
<svg width="120" height="120" viewBox="0 0 120 120" fill="none" xmlns="http://www.w3.org/2000/svg">
{/* Top node */}
<rect x="38" y="10" width="44" height="24" rx="6" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.4" />
<line x1="60" y1="34" x2="60" y2="46" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
{/* Middle-left node */}
<rect x="12" y="46" width="44" height="24" rx="6" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
{/* Middle-right node */}
<rect x="64" y="46" width="44" height="24" rx="6" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
{/* Lines from top to middle nodes */}
<line x1="60" y1="46" x2="34" y2="46" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
<line x1="60" y1="46" x2="86" y2="46" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
{/* Lines from middle to bottom */}
<line x1="34" y1="70" x2="34" y2="82" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
<line x1="86" y1="70" x2="86" y2="82" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
{/* Converge lines */}
<line x1="34" y1="82" x2="60" y2="82" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
<line x1="86" y1="82" x2="60" y2="82" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
<line x1="60" y1="82" x2="60" y2="86" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.3" />
{/* Bottom node */}
<rect x="38" y="86" width="44" height="24" rx="6" stroke="currentColor" strokeWidth="1.5" strokeDasharray="4 3" opacity="0.4" />
</svg>
<span className="text-xs">No graph schema available</span>
</div>
);
}

return (
<div className="h-full graph-panel">
<style>{`
Expand Down
33 changes: 11 additions & 22 deletions src/uipath/dev/server/frontend/src/components/runs/NewRunPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -151,34 +151,23 @@ function ModeCard({

function BoltIcon() {
return (
<svg
width="28"
height="28"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="1.5"
strokeLinecap="round"
strokeLinejoin="round"
>
<polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2" />
<svg width="28" height="28" viewBox="0 0 26 26" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M23.832 15.166H22.7487C22.7487 10.9735 19.3579 7.58268 15.1654 7.58268H14.082V6.20685C14.732 5.83852 15.1654 5.13435 15.1654 4.33268C15.1654 3.14102 14.2012 2.16602 12.9987 2.16602C11.7962 2.16602 10.832 3.14102 10.832 4.33268C10.832 5.13435 11.2654 5.83852 11.9154 6.20685V7.58268H10.832C6.63953 7.58268 3.2487 10.9735 3.2487 15.166H2.16536C1.56953 15.166 1.08203 15.6535 1.08203 16.2493V19.4993C1.08203 20.0952 1.56953 20.5827 2.16536 20.5827H3.2487V21.666C3.2487 22.8685 4.2237 23.8327 5.41536 23.8327H20.582C21.7845 23.8327 22.7487 22.8685 22.7487 21.666V20.5827H23.832C24.4279 20.5827 24.9154 20.0952 24.9154 19.4993V16.2493C24.9154 15.6535 24.4279 15.166 23.832 15.166ZM22.7487 18.416H20.582V21.666H5.41536V18.416H3.2487V17.3327H5.41536V15.166C5.41536 12.176 7.84203 9.74935 10.832 9.74935H15.1654C18.1554 9.74935 20.582 12.176 20.582 15.166V17.3327H22.7487V18.416ZM9.20703 14.6243L11.7637 17.181L10.4854 18.4594L9.20703 17.181L7.9287 18.4594L6.65036 17.181L9.20703 14.6243ZM16.7904 14.6243L19.347 17.181L18.0687 18.4594L16.7904 17.181L15.512 18.4594L14.2337 17.181L16.7904 14.6243Z" fill="currentColor" />
</svg>
);
}

function ChatIcon() {
return (
<svg
width="28"
height="28"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="1.5"
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" />
<svg width="28" height="28" viewBox="0 0 26 26" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.20901 13.541L11.7657 16.0977L10.4873 17.376L9.20901 16.0977L7.93068 17.376L6.65234 16.0977L9.20901 13.541ZM16.7923 13.541L19.349 16.0977L18.0707 17.376L16.7923 16.0977L15.514 17.376L14.2357 16.0977L16.7923 13.541Z" fill="currentColor" />
<path d="M5.25 8.58398H20.75C21.3023 8.58398 21.75 9.0317 21.75 9.58398V23.5293L16.874 21.9043C16.5683 21.8024 16.248 21.751 15.9258 21.751H5.25C4.69782 21.751 4.25018 21.3031 4.25 20.751V9.58398C4.25 9.0317 4.69772 8.58398 5.25 8.58398Z" stroke="currentColor" strokeWidth="2" />
<ellipse cx="12.9987" cy="4.33268" rx="2.16667" ry="2.16667" fill="currentColor" />
<rect x="11.918" y="5.41602" width="2.16667" height="2.16667" fill="currentColor" />
<path d="M1.08203 14C1.08203 13.4477 1.52975 13 2.08203 13H3.2487V18.4167H2.08203C1.52975 18.4167 1.08203 17.969 1.08203 17.4167V14Z" fill="currentColor" />
<rect x="3.25" y="15.166" width="2.16667" height="1.08333" fill="currentColor" />
<path d="M22.75 13H23.9167C24.4689 13 24.9167 13.4477 24.9167 14V17.4167C24.9167 17.969 24.469 18.4167 23.9167 18.4167H22.75V13Z" fill="currentColor" />
<rect x="20.582" y="15.166" width="2.16667" height="1.08333" fill="currentColor" />
</svg>
);
}
Loading