diff --git a/nezha-fronted/src/assets/css/common.scss b/nezha-fronted/src/assets/css/common.scss
index c91a19dfd..12cf1b256 100644
--- a/nezha-fronted/src/assets/css/common.scss
+++ b/nezha-fronted/src/assets/css/common.scss
@@ -676,3 +676,8 @@ textarea {
.el-message__content{
white-space:pre-line
}
+.response__popper {
+ max-height: 500px;
+ overflow: hidden;
+ overflow-y: auto;
+}
diff --git a/nezha-fronted/src/assets/css/components/common/table/settings/cortexDetailTable.scss b/nezha-fronted/src/assets/css/components/common/table/settings/cortexDetailTable.scss
index a7417d2d8..8f8169f59 100644
--- a/nezha-fronted/src/assets/css/components/common/table/settings/cortexDetailTable.scss
+++ b/nezha-fronted/src/assets/css/components/common/table/settings/cortexDetailTable.scss
@@ -1,11 +1,11 @@
-#cortexDetail {
+#cortexDetail,#lokiStatus {
.sub-container{
background: $--background-color-empty;
.nz-table-list{
height: auto;
}
}
- #cortexDetailTable {
+ #cortexDetailTable,#lokiStatusTable {
display: flex;
flex-direction: column;
height: 100%;
@@ -45,6 +45,11 @@
display: none;
}
}
+ .ring-table{
+ .el-table__body-wrapper{
+ border-left: 1px solid $--border-color-light;
+ }
+ }
}
.cortex-service,
@@ -129,14 +134,5 @@
}
}
}
-
- .table-no-data {
- width: 100%;
- height: 100%;
- display: flex;
- flex-direction: column;
- justify-content: center;
- align-items: center;
- }
}
}
diff --git a/nezha-fronted/src/assets/css/components/page/tool/ping.scss b/nezha-fronted/src/assets/css/components/page/tool/ping.scss
index 40555355a..7c57b8bba 100644
--- a/nezha-fronted/src/assets/css/components/page/tool/ping.scss
+++ b/nezha-fronted/src/assets/css/components/page/tool/ping.scss
@@ -422,3 +422,13 @@ td.el-table__expanded-cell:hover {
padding: 0 0 0 60px;
background-color: $--background-color-base !important;
}
+#pingTable{
+ th.el-table__expand-column{
+ .arrow-expand{
+ i.nz-icon{
+ cursor: pointer;
+ padding-left: 2px;
+ }
+ }
+ }
+}
diff --git a/nezha-fronted/src/assets/css/components/page/tool/trace.scss b/nezha-fronted/src/assets/css/components/page/tool/trace.scss
index 47d4c27be..78bc2b3de 100644
--- a/nezha-fronted/src/assets/css/components/page/tool/trace.scss
+++ b/nezha-fronted/src/assets/css/components/page/tool/trace.scss
@@ -160,6 +160,14 @@
.el-table__body-wrapper{
height: calc(100% - 42px) !important;
}
+ th.el-table__expand-column{
+ .arrow-expand{
+ i.nz-icon{
+ cursor: pointer;
+ padding-left: 2px;
+ }
+ }
+ }
}
}
}
diff --git a/nezha-fronted/src/assets/css/font/iconfont.js b/nezha-fronted/src/assets/css/font/iconfont.js
index 3cc1b196c..a5a410a30 100644
--- a/nezha-fronted/src/assets/css/font/iconfont.js
+++ b/nezha-fronted/src/assets/css/font/iconfont.js
@@ -1 +1 @@
-window._iconfont_svg_string_2030432='',function(h){var a=(a=document.getElementsByTagName("script"))[a.length-1],l=a.getAttribute("data-injectcss"),a=a.getAttribute("data-disable-injectsvg");if(!a){var c,z,o,i,v,m=function(a,l){l.parentNode.insertBefore(a,l)};if(l&&!h.__iconfont__svg__cssinject__){h.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(a){console&&console.log(a)}}c=function(){var a,l=document.createElement("div");l.innerHTML=h._iconfont_svg_string_2030432,(l=l.getElementsByTagName("svg")[0])&&(l.setAttribute("aria-hidden","true"),l.style.position="absolute",l.style.width=0,l.style.height=0,l.style.overflow="hidden",l=l,(a=document.body).firstChild?m(l,a.firstChild):a.appendChild(l))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(c,0):(z=function(){document.removeEventListener("DOMContentLoaded",z,!1),c()},document.addEventListener("DOMContentLoaded",z,!1)):document.attachEvent&&(o=c,i=h.document,v=!1,p(),i.onreadystatechange=function(){"complete"==i.readyState&&(i.onreadystatechange=null,t())})}function t(){v||(v=!0,o())}function p(){try{i.documentElement.doScroll("left")}catch(a){return void setTimeout(p,50)}t()}}(window);
\ No newline at end of file
+window._iconfont_svg_string_2030432='',function(h){var a=(a=document.getElementsByTagName("script"))[a.length-1],l=a.getAttribute("data-injectcss"),a=a.getAttribute("data-disable-injectsvg");if(!a){var c,z,o,i,v,m=function(a,l){l.parentNode.insertBefore(a,l)};if(l&&!h.__iconfont__svg__cssinject__){h.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(a){console&&console.log(a)}}c=function(){var a,l=document.createElement("div");l.innerHTML=h._iconfont_svg_string_2030432,(l=l.getElementsByTagName("svg")[0])&&(l.setAttribute("aria-hidden","true"),l.style.position="absolute",l.style.width=0,l.style.height=0,l.style.overflow="hidden",l=l,(a=document.body).firstChild?m(l,a.firstChild):a.appendChild(l))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(c,0):(z=function(){document.removeEventListener("DOMContentLoaded",z,!1),c()},document.addEventListener("DOMContentLoaded",z,!1)):document.attachEvent&&(o=c,i=h.document,v=!1,p(),i.onreadystatechange=function(){"complete"==i.readyState&&(i.onreadystatechange=null,t())})}function t(){v||(v=!0,o())}function p(){try{i.documentElement.doScroll("left")}catch(a){return void setTimeout(p,50)}t()}}(window);
diff --git a/nezha-fronted/src/assets/css/font/iconfont.json b/nezha-fronted/src/assets/css/font/iconfont.json
index 53146f997..d7dad6c0f 100644
--- a/nezha-fronted/src/assets/css/font/iconfont.json
+++ b/nezha-fronted/src/assets/css/font/iconfont.json
@@ -6,6 +6,7 @@
"description": "",
"glyphs": [
{
+<<<<<<< HEAD
"icon_id": "33998082",
"name": "右纵轴",
"font_class": "youzongzhou",
@@ -20,6 +21,8 @@
"unicode_decimal": 59343
},
{
+=======
+>>>>>>> 61106c08d5bd1c9b7263e6b915880385934c3c7d
"icon_id": "33991102",
"name": "全部收起",
"font_class": "quanbushouqi",
diff --git a/nezha-fronted/src/components/chart/chartList.vue b/nezha-fronted/src/components/chart/chartList.vue
index f743c67cb..a79faedcb 100644
--- a/nezha-fronted/src/components/chart/chartList.vue
+++ b/nezha-fronted/src/components/chart/chartList.vue
@@ -557,6 +557,7 @@ export default {
if (!this.panelLock) {
return false
}
+ this.copyDataList = JSON.parse(JSON.stringify(this.tempList))
for (let i = 0; i < this.copyDataList.length; i++) {
const item = this.copyDataList[i]
if ((this.$loadsh.get(this.showHidden[item.id], 'visibility') && this.$loadsh.get(this.showHidden[item.id], 'visibility') === 'hidden') && item.id !== -2) {
@@ -564,11 +565,11 @@ export default {
i--
}
}
- this.tempList.forEach(item => {
- if ((!this.$loadsh.get(this.showHidden[item.id], 'visibility') || this.$loadsh.get(this.showHidden[item.id], 'visibility') === 'show') && item.id !== -2 && !this.copyDataList.find(chart => chart.id === item.id)) {
- this.copyDataList.push(item)
- }
- })
+ // this.tempList.forEach(item => {
+ // if ((!this.$loadsh.get(this.showHidden[item.id], 'visibility') || this.$loadsh.get(this.showHidden[item.id], 'visibility') === 'show') && item.id !== -2 && !this.copyDataList.find(chart => chart.id === item.id)) {
+ // this.copyDataList.push(item)
+ // }
+ // })
this.onScroll(this.scrollTop)
},
@@ -606,10 +607,12 @@ export default {
for (let index = 0; index < arr.length; index++) { // 遍历找出所有需要 repeat的group 按照 name进行多次的分组
const item = arr[index]
const repeatVariable = this.$loadsh.get(item.param.repeat, 'variable')
- if (item.type === 'group' && repeatVariable && this.$loadsh.get(this.showHidden[item.id], 'visibility') !== 'hidden') {
+ const repeatEnable = this.$loadsh.get(item.param.enable, 'repeat')
+ if (item.type === 'group' && repeatVariable && this.$loadsh.get(this.showHidden[item.id], 'visibility') !== 'hidden' && repeatEnable) {
const itemPrev = arr[index - 1]
const repeatPrevVariable = this.$loadsh.get(itemPrev.param.repeat, 'variable')
- if (itemPrev && itemPrev.type === 'group' && repeatPrevVariable === repeatVariable) {
+ const repeatPrevEnable = this.$loadsh.get(item.param.enable, 'repeat')
+ if (itemPrev && itemPrev.type === 'group' && repeatPrevVariable === repeatVariable && repeatPrevEnable) {
const arr = variablesRepeat[repeatVariable]
arr[arr.length - 1].repeatArr.push(item)
arr[arr.length - 1].lastGroup = item
@@ -800,8 +803,8 @@ export default {
})
}
this.$nextTick(() => {
- this.tempList = JSON.parse(JSON.stringify(tempList))
this.copyDataList = JSON.parse(JSON.stringify(tempList))
+ this.tempList = JSON.parse(JSON.stringify(this.copyDataList))
// 比较变量 图表是否显示/隐藏
this.compareVariables()
diff --git a/nezha-fronted/src/components/common/alert/nzTooltip.vue b/nezha-fronted/src/components/common/alert/nzTooltip.vue
index 6f299dab1..b4f875e41 100644
--- a/nezha-fronted/src/components/common/alert/nzTooltip.vue
+++ b/nezha-fronted/src/components/common/alert/nzTooltip.vue
@@ -1,7 +1,11 @@
-
{{row.raw}}
@@ -85,10 +91,25 @@ export default {
prop: 'time',
sortable: true
}
- ]
+ ],
+ expandData: false
}
},
methods: {
+ toggleRowExpansion () {
+ this.$nextTick(() => {
+ this.expandData = !this.expandData
+ })
+ this.toggleRowExpansionAll(this.tableData, !this.expandData)
+ },
+ toggleRowExpansionAll (data, isExpansion) {
+ data.forEach((item) => {
+ this.$refs.dataTable.toggleRowExpansion(item, isExpansion)
+ if (item.children !== undefined && item.children !== null) {
+ this.toggleRowExpansionAll(item.children, isExpansion)
+ }
+ })
+ }
}
}