From 7338cec6b44117bcc70a4a09a8a1038b796c3afb Mon Sep 17 00:00:00 2001 From: Fine0830 Date: Fri, 22 Nov 2024 15:53:37 +0800 Subject: [PATCH 1/3] fix metrics query (#430) --- src/views/dashboard/panel/Layout.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/dashboard/panel/Layout.vue b/src/views/dashboard/panel/Layout.vue index bfebc00c..9a93aae4 100644 --- a/src/views/dashboard/panel/Layout.vue +++ b/src/views/dashboard/panel/Layout.vue @@ -88,7 +88,7 @@ limitations under the License. --> const index = isNaN(item.activedTabIndex) ? 0 : item.activedTabIndex; widgets.push( ...item.children[index].children.filter( - (d: LayoutConfig) => !ListChartTypes.includes(d.graph?.type || ""), + (d: LayoutConfig) => d.type === WidgetType.Widget && !ListChartTypes.includes(d.graph?.type || ""), ), ); } From aff69c057ff6a07484d71c226e04b2af188d0203 Mon Sep 17 00:00:00 2001 From: Zixin Zhou Date: Sat, 23 Nov 2024 19:55:54 +0800 Subject: [PATCH 2/3] feat: Add support collapse span (#431) --- .../related/trace/utils/d3-trace-list.ts | 23 +++++++++---------- .../related/trace/utils/d3-trace-tree.ts | 4 +++- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/views/dashboard/related/trace/utils/d3-trace-list.ts b/src/views/dashboard/related/trace/utils/d3-trace-list.ts index 669d5058..6755e234 100644 --- a/src/views/dashboard/related/trace/utils/d3-trace-list.ts +++ b/src/views/dashboard/related/trace/utils/d3-trace-list.ts @@ -302,37 +302,36 @@ export default class ListGraph { ) .attr("y", -2) .style("fill", (d: Recordable) => `${this.sequentialScale(this.list.indexOf(d.data.serviceCode))}`); - nodeEnter + const nodeUpdate = nodeEnter.merge(node); + nodeUpdate .transition() .duration(400) .attr("transform", (d: Recordable) => `translate(${d.y + 5},${d.x})`) .style("opacity", 1); - nodeEnter + nodeUpdate .append("circle") .attr("r", appStore.theme === Themes.Dark ? 4 : 3) .style("cursor", "pointer") .attr("stroke-width", appStore.theme === Themes.Dark ? 3 : 2.5) - .attr("fill", (d: Recordable) => - d._children - ? `${this.sequentialScale(this.list.indexOf(d.data.serviceCode))}` - : appStore.theme === Themes.Dark - ? "#eee" - : "rbga(0,0,0,0)", + .style("fill", (d: Recordable) => + d._children ? `${this.sequentialScale(this.list.indexOf(d.data.serviceCode))}` : "#eee", ) .style("stroke", (d: Recordable) => d.data.label === "TRACE_ROOT" ? "" : `${this.sequentialScale(this.list.indexOf(d.data.serviceCode))}`, ) - .on("click", (d: Recordable) => { + .on("click", (event: any, d: Recordable) => { + event.stopPropagation(); + if (d.data.children.length == 0) return; this.click(d, this); }); - node + nodeUpdate .transition() .duration(400) .attr("transform", (d: Recordable) => `translate(${d.y + 3},${d.x})`) .style("opacity", 1) .select("circle") - .attr("fill", (d: Recordable) => - d._children ? `${this.sequentialScale(this.list.indexOf(d.data.serviceCode))}` : "", + .style("fill", (d: Recordable) => + d._children ? `${this.sequentialScale(this.list.indexOf(d.data.serviceCode))}` : "#eee", ); // Transition exiting nodes to the parent's new position. diff --git a/src/views/dashboard/related/trace/utils/d3-trace-tree.ts b/src/views/dashboard/related/trace/utils/d3-trace-tree.ts index 9647e627..8ecc376d 100644 --- a/src/views/dashboard/related/trace/utils/d3-trace-tree.ts +++ b/src/views/dashboard/related/trace/utils/d3-trace-tree.ts @@ -294,7 +294,9 @@ export default class TraceMap { d._children ? this.sequentialScale(this.list.indexOf(d.data.serviceCode)) : "#fff", ) .attr("cursor", "pointer") - .on("click", (d: Recordable) => { + .on("click", (event: any, d: Recordable) => { + event.stopPropagation(); + if (d.data.children.length == 0) return; click(d); }); const nodeExit = node From 5c92a46569d796fad119807b1a996288f5947d6a Mon Sep 17 00:00:00 2001 From: Fine0830 Date: Sun, 24 Nov 2024 17:25:13 +0800 Subject: [PATCH 3/3] Refactor copy util with Web API (#432) --- src/utils/copy.ts | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/src/utils/copy.ts b/src/utils/copy.ts index 3baddf0d..d593e79f 100644 --- a/src/utils/copy.ts +++ b/src/utils/copy.ts @@ -16,18 +16,22 @@ */ import { ElNotification } from "element-plus"; -export default (value: string): void => { - const input = document.createElement("input"); - input.value = value; - document.body.appendChild(input); - input.select(); - if (document.execCommand("Copy")) { - document.execCommand("Copy"); - } - input.remove(); - ElNotification({ - title: "Success", - message: "Copied", - type: "success", - }); + +export default (text: string): void => { + navigator.clipboard + .writeText(text) + .then(() => { + ElNotification({ + title: "Success", + message: "Copied", + type: "success", + }); + }) + .catch((err) => { + ElNotification({ + title: "Error", + message: err, + type: "warning", + }); + }); };