@localstack/appinspector-ui 1.0.89 → 1.0.90
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 +35 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +35 -6
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -26853,19 +26853,44 @@ var ServiceNode = memo11(({ data, selected }) => {
|
|
|
26853
26853
|
|
|
26854
26854
|
// src/components/trace-graph/utils.ts
|
|
26855
26855
|
import dagre from "@dagrejs/dagre";
|
|
26856
|
-
var getLayoutedNodesAndEdges = (inputNodes, inputEdges) => {
|
|
26856
|
+
var getLayoutedNodesAndEdges = (inputNodes, inputEdges, order2 = "oldest_first") => {
|
|
26857
26857
|
const dagreGraph = new dagre.graphlib.Graph().setDefaultEdgeLabel(() => ({}));
|
|
26858
26858
|
const direction = "LR";
|
|
26859
26859
|
const nodeWidth = 200;
|
|
26860
26860
|
const nodeHeight = 70;
|
|
26861
26861
|
dagreGraph.setGraph({ rankdir: direction });
|
|
26862
|
+
const timestampMap = new Map(
|
|
26863
|
+
inputNodes.map((n2) => [n2.id, n2.data.event.start_time_unix_nano])
|
|
26864
|
+
);
|
|
26862
26865
|
for (const node of inputNodes) {
|
|
26863
26866
|
dagreGraph.setNode(node.id, { height: nodeHeight, width: nodeWidth });
|
|
26864
26867
|
}
|
|
26865
26868
|
for (const edge of inputEdges) {
|
|
26866
26869
|
dagreGraph.setEdge(edge.source, edge.target);
|
|
26867
26870
|
}
|
|
26868
|
-
dagre.layout(dagreGraph
|
|
26871
|
+
dagre.layout(dagreGraph, {
|
|
26872
|
+
customOrder: (g2) => {
|
|
26873
|
+
const rankMap = /* @__PURE__ */ new Map();
|
|
26874
|
+
for (const nodeId of g2.nodes()) {
|
|
26875
|
+
const rank = g2.node(nodeId).rank;
|
|
26876
|
+
if (rank === void 0) continue;
|
|
26877
|
+
const group4 = rankMap.get(rank) ?? [];
|
|
26878
|
+
group4.push(nodeId);
|
|
26879
|
+
rankMap.set(rank, group4);
|
|
26880
|
+
}
|
|
26881
|
+
for (const nodeIds of rankMap.values()) {
|
|
26882
|
+
nodeIds.sort((a3, b3) => {
|
|
26883
|
+
const tsA = timestampMap.get(a3) ?? "";
|
|
26884
|
+
const tsB = timestampMap.get(b3) ?? "";
|
|
26885
|
+
return order2 === "newest_first" ? tsB.localeCompare(tsA) : tsA.localeCompare(tsB);
|
|
26886
|
+
});
|
|
26887
|
+
for (const [index, nodeId] of nodeIds.entries()) {
|
|
26888
|
+
;
|
|
26889
|
+
g2.node(nodeId).order = index;
|
|
26890
|
+
}
|
|
26891
|
+
}
|
|
26892
|
+
}
|
|
26893
|
+
});
|
|
26869
26894
|
const layoutedNodes = inputNodes.map((node) => {
|
|
26870
26895
|
const nodeWithPosition = dagreGraph.node(node.id);
|
|
26871
26896
|
return {
|
|
@@ -26961,6 +26986,7 @@ var TraceGraph = ({
|
|
|
26961
26986
|
initialFocusEventId,
|
|
26962
26987
|
onEventSelect,
|
|
26963
26988
|
onRefresh,
|
|
26989
|
+
order: order2 = "oldest_first",
|
|
26964
26990
|
spans
|
|
26965
26991
|
}) => {
|
|
26966
26992
|
const [nodes, setNodes, onNodesChange] = useNodesState([]);
|
|
@@ -27006,7 +27032,7 @@ var TraceGraph = ({
|
|
|
27006
27032
|
});
|
|
27007
27033
|
}
|
|
27008
27034
|
}
|
|
27009
|
-
const { edges: layoutedEdges, nodes: layoutedNodes } = getLayoutedNodesAndEdges(allNodes, allEdges);
|
|
27035
|
+
const { edges: layoutedEdges, nodes: layoutedNodes } = getLayoutedNodesAndEdges(allNodes, allEdges, order2);
|
|
27010
27036
|
for (const node of layoutedNodes) {
|
|
27011
27037
|
if (node.id === initialFocusEventId) {
|
|
27012
27038
|
node.selected = true;
|
|
@@ -27014,7 +27040,7 @@ var TraceGraph = ({
|
|
|
27014
27040
|
}
|
|
27015
27041
|
setNodes(layoutedNodes);
|
|
27016
27042
|
setEdges(layoutedEdges);
|
|
27017
|
-
}, [spans.data, initialFocusEventId, setNodes, setEdges]);
|
|
27043
|
+
}, [spans.data, initialFocusEventId, order2, setNodes, setEdges]);
|
|
27018
27044
|
const theme = useTheme4();
|
|
27019
27045
|
return /* @__PURE__ */ jsxs133(Fragment9, { children: [
|
|
27020
27046
|
spans.error && /* @__PURE__ */ jsxs133(
|
|
@@ -27105,6 +27131,7 @@ var TraceGraphView = ({
|
|
|
27105
27131
|
loading,
|
|
27106
27132
|
navigateToSpansList,
|
|
27107
27133
|
open,
|
|
27134
|
+
order: order2,
|
|
27108
27135
|
selectedEvent,
|
|
27109
27136
|
spanId,
|
|
27110
27137
|
spans,
|
|
@@ -27166,6 +27193,7 @@ var TraceGraphView = ({
|
|
|
27166
27193
|
onRefresh: () => {
|
|
27167
27194
|
fetchSpans();
|
|
27168
27195
|
},
|
|
27196
|
+
order: order2,
|
|
27169
27197
|
spans: {
|
|
27170
27198
|
data: spans,
|
|
27171
27199
|
error: fetchError,
|
|
@@ -27217,7 +27245,7 @@ async function fetchConnectedTraces(api, traceIds, allSpans = /* @__PURE__ */ ne
|
|
|
27217
27245
|
}
|
|
27218
27246
|
return [...allSpans.values()];
|
|
27219
27247
|
}
|
|
27220
|
-
var TraceGraphPage = ({ onClose, spanId, traceId }) => {
|
|
27248
|
+
var TraceGraphPage = ({ onClose, order: order2 = "oldest_first", spanId, traceId }) => {
|
|
27221
27249
|
const api = useAppInspectorApi();
|
|
27222
27250
|
const [spans, setSpans] = useState17();
|
|
27223
27251
|
const [loading, setLoading] = useState17(false);
|
|
@@ -27277,6 +27305,7 @@ var TraceGraphPage = ({ onClose, spanId, traceId }) => {
|
|
|
27277
27305
|
loading,
|
|
27278
27306
|
navigateToSpansList,
|
|
27279
27307
|
open,
|
|
27308
|
+
order: order2,
|
|
27280
27309
|
selectedEvent,
|
|
27281
27310
|
spanId: spanId ?? void 0,
|
|
27282
27311
|
spans,
|
|
@@ -27380,7 +27409,7 @@ var SpansListPage = () => {
|
|
|
27380
27409
|
),
|
|
27381
27410
|
selectedTraceId !== void 0 && /* @__PURE__ */ jsx143(TraceGraphPage, { onClose: () => {
|
|
27382
27411
|
setSelectedTraceId(void 0);
|
|
27383
|
-
}, spanId: selectedSpanId, traceId: selectedTraceId })
|
|
27412
|
+
}, order: order2, spanId: selectedSpanId, traceId: selectedTraceId })
|
|
27384
27413
|
] });
|
|
27385
27414
|
};
|
|
27386
27415
|
|