From 7f0c0e7d9fee6edda3cde4fe5bc74ed9992fc27a Mon Sep 17 00:00:00 2001 From: zhangyu Date: Tue, 1 Nov 2022 14:31:45 +0800 Subject: [PATCH 001/122] =?UTF-8?q?NEZ-2340=20feat=EF=BC=9Aweb=20terminal?= =?UTF-8?q?=20=E7=99=BB=E5=BD=95=E6=B5=81=E7=A8=8B=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nezha-fronted/src/components/cli/console.vue | 30 ++++++++++++++++++-- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/nezha-fronted/src/components/cli/console.vue b/nezha-fronted/src/components/cli/console.vue index afb0701be..4b9ca4a35 100644 --- a/nezha-fronted/src/components/cli/console.vue +++ b/nezha-fronted/src/components/cli/console.vue @@ -130,8 +130,7 @@ export default { focusConsole () { this.term.focus() }, - create () { - const that = this + beforeCreate () { let rows = this.termimalRows if (this.isFullScreen) { // 容器高度设置100% @@ -157,6 +156,31 @@ export default { }) this.term.open(terminalContainer) this.term.focus() + const params = { + width: this.terminal.width, + height: this.terminal.height, + cols: this.terminal.cols, + rows: this.terminal.rows, + host: this.$loadsh.get(this.terminal, 'custom.host', ''), + port: this.$loadsh.get(this.terminal, 'custom.port', ''), + assetId: this.$loadsh.get(this.terminal, 'assetId', ''), + accountId: this.$loadsh.get(this.terminal, 'accountId', ''), + authProtocol: this.$loadsh.get(this.terminal, 'custom.authProtocol', ''), + authProtocolPort: this.$loadsh.get(this.terminal, 'custom.authProtocolPort', ''), + authType: this.$loadsh.get(this.terminal, 'custom.authType', ''), + authUsername: this.$loadsh.get(this.terminal, 'custom.authUsername', ''), + authPin: this.$loadsh.get(this.terminal, 'custom.authPin', ''), + authPriKey: this.$loadsh.get(this.terminal, 'custom.authPriKey', ''), + authUserTip: this.$loadsh.get(this.terminal, 'custom.authUserTip', ''), + authPinTip: this.$loadsh.get(this.terminal, 'custom.authPinTip', '') + } + this.$post('/terminal/login', params).then(res => { + console.log(res) + this.create() + }) + }, + create () { + const that = this const token = localStorage.getItem('nz-token') let baseUrl = JSON.parse(JSON.stringify(this.$axios.defaults.baseURL)) const protocol = window.location.protocol.indexOf('https') > -1 ? 'wss' : 'ws' @@ -295,7 +319,7 @@ export default { } }, mounted () { - this.create() + this.beforeCreate() }, beforeDestroy () { this.closeSocket() From dd27229a1f6dc987a080cbb2e61ce04fd17356ec Mon Sep 17 00:00:00 2001 From: zyh Date: Thu, 3 Nov 2022 10:17:57 +0800 Subject: [PATCH 002/122] =?UTF-8?q?NEZ-2350=20feat=EF=BC=9A=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=20record=20rule=20=E4=BA=8C=E7=BA=A7=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=EF=BC=88metric=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../assets/css/components/chart/chart.scss | 5 +- .../common/bottomBox/bottomBox.scss | 18 +- .../common/table/special/endpointQuery.scss | 4 +- .../common/threshold/threshold.scss | 8 + .../page/monitor/project/project.scss | 1 + nezha-fronted/src/assets/stylus/main.scss | 2 +- .../components/chart/ChartScreenHeader.vue | 26 +- .../src/components/chart/chart/chartRank.vue | 1 + .../src/components/chart/richTextEditor.vue | 4 +- .../components/common/bottomBox/bottomBox.vue | 18 +- .../common/bottomBox/tabs/endpointQuery.vue | 7 +- .../bottomBox/tabs/recordRulesQuery.vue | 207 ++++++++ .../src/components/common/js/constants.js | 1 + .../table/special/recordRulesQueryTab.vue | 440 ++++++++++++++++++ 14 files changed, 714 insertions(+), 28 deletions(-) create mode 100644 nezha-fronted/src/components/common/bottomBox/tabs/recordRulesQuery.vue create mode 100644 nezha-fronted/src/components/common/table/special/recordRulesQueryTab.vue diff --git a/nezha-fronted/src/assets/css/components/chart/chart.scss b/nezha-fronted/src/assets/css/components/chart/chart.scss index 07652fe1a..6e782a2e5 100644 --- a/nezha-fronted/src/assets/css/components/chart/chart.scss +++ b/nezha-fronted/src/assets/css/components/chart/chart.scss @@ -449,7 +449,7 @@ } } } -.endpoint-query-metrics.chart-fullscreen.nz-dialog { +.endpoint-query-metrics.chart-fullscreen.nz-dialog,.recordRules-query-metrics.chart-fullscreen.nz-dialog { .chart-screen-header .chart-header__tools #browser-go { margin-left: 5px; } @@ -634,6 +634,9 @@ .chart-label{ color: $--color-text-primary; } +.chart-label-text{ + fill: $--color-text-primary; +} .tickTest{ font-size: 12px; color: $--color-text-primary; diff --git a/nezha-fronted/src/assets/css/components/common/bottomBox/bottomBox.scss b/nezha-fronted/src/assets/css/components/common/bottomBox/bottomBox.scss index f4b46fe46..90a1ebd90 100644 --- a/nezha-fronted/src/assets/css/components/common/bottomBox/bottomBox.scss +++ b/nezha-fronted/src/assets/css/components/common/bottomBox/bottomBox.scss @@ -97,21 +97,21 @@ } } .nz-btn-group { - #endpoint-query-changetime:hover { + #endpoint-query-changetime,#recordRules-query-changetime:hover { border: 1px solid $--asset-label-btn-border-color; } .nz-btn.nz-btn-size-normal.nz-btn-style-light.control-icon-unchecked:hover { border: 1px solid $--asset-label-btn-border-color; z-index: 2; } - .nz-btn.nz-btn-size-normal.nz-btn-style-light.control-icon-unchecked { + .nz-btn.nz-btn-size-normal.nz-btn-style-light.control-icon-unchecked,.nz-btn.nz-btn-size-normal.nz-btn-style-light.control-icon-checked { margin-right: -1px; } .project-calendar.nz-input-group-middle { border-left: 0; border-right: 0; - border-top: 1px solid $--border-color-base; - border-bottom: 1px solid $--border-color-base; + border-top: 1px solid $--border-color-light; + border-bottom: 1px solid $--border-color-light; display: flex; align-items: center; justify-content: center; @@ -240,6 +240,16 @@ border: 0 !important; box-shadow: 0 0 0px 0px rgba(0, 0, 0, 0); } +.recordRules-query .sub-container .nz-table-list { + height: 100%; +} +.recordRules-query .bottom-data-list .nz-btn-group .nz-input-group-middle input { + border-right: 0 !important; +} +.recordRules-query .bottom-data-list .nz-btn-group.nz-btn-group-size-normal.nz-btn-group-light { + border: 0 !important; + box-shadow: 0 0 0px 0px rgba(0, 0, 0, 0); +} /* end--二级顶部工具栏*/ .log-no-data { diff --git a/nezha-fronted/src/assets/css/components/common/table/special/endpointQuery.scss b/nezha-fronted/src/assets/css/components/common/table/special/endpointQuery.scss index e8b10b9dd..bf302a5e6 100644 --- a/nezha-fronted/src/assets/css/components/common/table/special/endpointQuery.scss +++ b/nezha-fronted/src/assets/css/components/common/table/special/endpointQuery.scss @@ -1,4 +1,4 @@ -.endpoint-query-tab { +.endpoint-query-tab,.recordRules-query-tab { .el-dialog__body { height: calc(100% - 48px) !important; padding-bottom: 0 !important; @@ -31,4 +31,4 @@ cursor: not-allowed; background-color: #f4f4f5; } -} +} \ No newline at end of file diff --git a/nezha-fronted/src/assets/css/components/common/threshold/threshold.scss b/nezha-fronted/src/assets/css/components/common/threshold/threshold.scss index 76145b094..49c28408b 100644 --- a/nezha-fronted/src/assets/css/components/common/threshold/threshold.scss +++ b/nezha-fronted/src/assets/css/components/common/threshold/threshold.scss @@ -1,4 +1,5 @@ .rich-text-editor { + color: $--color-text-regular; .ql-toolbar { border: 1px solid $--border-color-light; } @@ -11,4 +12,11 @@ color: $--color-text-regular; } } + .ql-tooltip{ + line-height: normal; + } + .ql-editing input{ + color: $--color-text-regular; + } + } diff --git a/nezha-fronted/src/assets/css/components/page/monitor/project/project.scss b/nezha-fronted/src/assets/css/components/page/monitor/project/project.scss index 983c41fe2..f5e099619 100644 --- a/nezha-fronted/src/assets/css/components/page/monitor/project/project.scss +++ b/nezha-fronted/src/assets/css/components/page/monitor/project/project.scss @@ -97,6 +97,7 @@ height: 23px; } + .date-pick-group { display: flex; align-items: center; diff --git a/nezha-fronted/src/assets/stylus/main.scss b/nezha-fronted/src/assets/stylus/main.scss index be6a38981..3ad324907 100644 --- a/nezha-fronted/src/assets/stylus/main.scss +++ b/nezha-fronted/src/assets/stylus/main.scss @@ -1617,4 +1617,4 @@ li { } .hover .user-username{ color: $--color-primary; -} +} \ No newline at end of file diff --git a/nezha-fronted/src/components/chart/ChartScreenHeader.vue b/nezha-fronted/src/components/chart/ChartScreenHeader.vue index 7b6d46d22..7317b9eee 100644 --- a/nezha-fronted/src/components/chart/ChartScreenHeader.vue +++ b/nezha-fronted/src/components/chart/ChartScreenHeader.vue @@ -7,12 +7,12 @@ :close-delay=10 trigger="hover" popper-class="chart-error-popper"> -
{{errorText}}
- - - - - +
{{errorText}}
+ + + + + -
{{$t('dashboard.panel.moreTitle')}}{{$t('dashboard.panel.showAll')}}{{allDataLength}}
- - - - +
{{$t('dashboard.panel.moreTitle')}}{{$t('dashboard.panel.showAll')}}{{allDataLength}}
+ + + +
@@ -51,7 +51,7 @@ > - + @@ -159,6 +159,7 @@ export default { showUnit (type) { switch (type) { case 'endpointQuery' : + case 'recordRulesQuery' : return true default: return false } @@ -166,6 +167,7 @@ export default { showSaveBtn (type) { switch (type) { case 'endpointQuery' : + case 'recordRulesQuery' : return true default: return false } diff --git a/nezha-fronted/src/components/chart/chart/chartRank.vue b/nezha-fronted/src/components/chart/chart/chartRank.vue index 92b8c8f32..e8f9624a3 100644 --- a/nezha-fronted/src/components/chart/chart/chartRank.vue +++ b/nezha-fronted/src/components/chart/chart/chartRank.vue @@ -209,6 +209,7 @@ export default { .data(rankData) .enter() .append('text') + .attr('class', 'chart-label-text') .attr('x', 4) .attr('y', d => { return (d.rank * barHeight) + (d.rank + 1) * margin - 12 diff --git a/nezha-fronted/src/components/chart/richTextEditor.vue b/nezha-fronted/src/components/chart/richTextEditor.vue index 674e93025..06662b8f7 100644 --- a/nezha-fronted/src/components/chart/richTextEditor.vue +++ b/nezha-fronted/src/components/chart/richTextEditor.vue @@ -123,7 +123,9 @@ export default { // 获取光标所在位置 const currentIndex = this.quill.getSelection().index // 插入图片 - const uploadUrl = this.$axios.defaults.baseURL + 'file/download/' + let baseURL = this.$axios.defaults.baseURL + baseURL = baseURL.startsWith('/') ? window.location.host + baseURL : baseURL + const uploadUrl = baseURL + 'file/download/' this.quill.insertEmbed(currentIndex, 'image', `${uploadUrl}${res.data.uuid}`) // 调整光标到最后 this.quill.setSelection(currentIndex + 1) diff --git a/nezha-fronted/src/components/common/bottomBox/bottomBox.vue b/nezha-fronted/src/components/common/bottomBox/bottomBox.vue index 16eb567b9..1ef73098a 100644 --- a/nezha-fronted/src/components/common/bottomBox/bottomBox.vue +++ b/nezha-fronted/src/components/common/bottomBox/bottomBox.vue @@ -67,7 +67,8 @@ - + + @@ -87,6 +88,7 @@ import assetSubTab from './tabs/assetSubTab' import commentsBottomTab from './tabs/commentsBottomTab' import vsysBottomTab from './tabs/vsysBottomTab' import endpointQuery from './tabs/endpointQuery' +import recordRulesQuery from './tabs/recordRulesQuery' import endpointTab from './tabs/endpointTab' import endpointTabNew from './tabs/endpointTabNew' import panelTabNew from './tabs/panelTabNew' @@ -130,6 +132,7 @@ export default { alertRuleEvalLog, IpDetails, recordRuleEvalLog, + recordRulesQuery, issueTab, commentsBottomTab, vsysBottomTab @@ -238,9 +241,16 @@ export default { ipam: [ { prop: 'ipam', name: this.$t('ipam.subnet.ipDetails'), active: true } ], - recordRule: [ - { prop: 'recordRule', name: this.$t('overall.alertRuleEvalLog'), active: true } - ], + recordRule: { + evalLog: [ + { prop: 'recordRule', name: this.$t('overall.alertRuleEvalLog'), active: true }, + { prop: 'Metrics', name: this.$t('overall.metric'), active: false } + ], + Metrics: [ + { prop: 'recordRule', name: this.$t('overall.alertRuleEvalLog'), active: false }, + { prop: 'Metrics', name: this.$t('overall.metric'), active: true } + ] + }, alertSilence: [ { prop: 'alertMessageTab', name: this.$t('overall.alert'), active: true } ], diff --git a/nezha-fronted/src/components/common/bottomBox/tabs/endpointQuery.vue b/nezha-fronted/src/components/common/bottomBox/tabs/endpointQuery.vue index 44c299b7a..3ea99f623 100644 --- a/nezha-fronted/src/components/common/bottomBox/tabs/endpointQuery.vue +++ b/nezha-fronted/src/components/common/bottomBox/tabs/endpointQuery.vue @@ -23,7 +23,7 @@
- + - +
@@ -162,6 +164,7 @@ import htmlToPdfMixin from '@/components/common/mixin/htmlToPdfMixin' import exportHtmlMixin from '@/components/common/mixin/exportHtml' import * as echarts from 'echarts' import panelVariables from '@/components/common/panel/panelVariables' +import snapshotProgress from '@/components/common/snapshotProgress/snapshotProgress.vue' // import FileSaver from 'file-saver' // import chartData from './testData' export default { @@ -309,7 +312,8 @@ export default { // 查看模式 mode: '', variables: [], - variablesInit: false // 判断variables 是否加载完成 + variablesInit: false, // 判断variables 是否加载完成 + snapshotVisible: false } }, components: { @@ -319,7 +323,8 @@ export default { selectDashboard, chartTempBox, chartRightBox, - panelVariables // 处理panel变量的组件 + panelVariables, // 处理panel变量的组件 + snapshotProgress // 快照进度 }, computed: { chartRightBoxShow () { @@ -994,7 +999,8 @@ export default { if (type === 'PDF') { this.htmlToPdf() } else { - this.exportToHtml(this.showPanel.name) + // this.exportToHtml(this.showPanel.name) + this.snapshotVisible = true } }, // 切换查看模式 From 513bdbad14e47d452e3e476ea71efc04eae816fb Mon Sep 17 00:00:00 2001 From: likexuan Date: Wed, 9 Nov 2022 10:54:48 +0800 Subject: [PATCH 007/122] =?UTF-8?q?NEZ-2372=20fix=20:=20asset=20model=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A1=B5=E9=9D=A2=20=E5=B0=86type=E8=AE=BE?= =?UTF-8?q?=E7=BD=AEdisabled=20=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/common/rightBox/administration/modelBox.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue b/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue index d8af2ad30..e5bf52bbf 100644 --- a/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue +++ b/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue @@ -21,7 +21,7 @@ - + From 8af51a94d0a10da7473e2f478355395a0e852904 Mon Sep 17 00:00:00 2001 From: likexuan Date: Wed, 9 Nov 2022 11:10:51 +0800 Subject: [PATCH 008/122] =?UTF-8?q?fix=20:=20model=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=20type?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/common/rightBox/administration/modelBox.vue | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue b/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue index e5bf52bbf..1facd90e9 100644 --- a/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue +++ b/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue @@ -21,7 +21,7 @@ - + @@ -134,6 +134,7 @@ export default { handler (n) { this.isEdit = true this.editModel = JSON.parse(JSON.stringify(n)) + console.log(this.editModel.id) } } }, From a2887f1ce8d120f69ac66d5b70f01b1fa53e23a5 Mon Sep 17 00:00:00 2001 From: likexuan Date: Wed, 9 Nov 2022 11:41:24 +0800 Subject: [PATCH 009/122] =?UTF-8?q?fix=20:=20=E5=88=A0=E9=99=A4=E6=8E=A7?= =?UTF-8?q?=E5=88=B6=E5=8F=B0=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/common/rightBox/administration/modelBox.vue | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue b/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue index 1facd90e9..5e000862b 100644 --- a/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue +++ b/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue @@ -21,8 +21,8 @@ - - + + @@ -134,7 +134,6 @@ export default { handler (n) { this.isEdit = true this.editModel = JSON.parse(JSON.stringify(n)) - console.log(this.editModel.id) } } }, From 207061e0f1881908fb9caefdefa6c0ff762022a4 Mon Sep 17 00:00:00 2001 From: likexuan Date: Wed, 9 Nov 2022 14:16:06 +0800 Subject: [PATCH 010/122] =?UTF-8?q?fix=20:=20model=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=20type?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/common/rightBox/administration/modelBox.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue b/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue index 5e000862b..f75587f44 100644 --- a/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue +++ b/nezha-fronted/src/components/common/rightBox/administration/modelBox.vue @@ -21,8 +21,8 @@ - - + + From 263d17f50ed3288c17d4ca167d499326e1f8d698 Mon Sep 17 00:00:00 2001 From: zyh Date: Wed, 9 Nov 2022 15:18:38 +0800 Subject: [PATCH 011/122] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E6=94=B9ci?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 738677a27..2df9dd9e6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,16 +38,10 @@ dev_build: - npm install --registry=http://registry.npmmirror.com - echo "npm run build" + # 编译 上传模板 + - npm run build:html - mc alias set nz $MINIO_HOST $MINIO_USER $MINIO_PWD - # 根据提交信息,判断本次是否 编译上传模板 - - > - if [[ $CI_COMMIT_MESSAGE =~ "snapshotTemplate" ]]; then - echo "Update snapshot template ..." - npm run build:html - mc cp dist/index.html nz/depends/template/snapshot_template.html - else - echo "No need to update snapshot template" - fi + - mc cp dist/index.html nz/depends/template/snapshot_template.html - npm run build - cd /builds/nezha/nezha-fronted/nezha-fronted/dist @@ -56,7 +50,13 @@ dev_build: - export FILE_NAME=nz-gui-$CI_COMMIT_REF_NAME-$CI_COMMIT_SHORT_SHA.zip # 生成 git log 日志文件 - sed -i 's++更新记录\n+g' ./index.html; + # echo "" > ./static/git-log.html + # echo "" >> ./static/git-log.html + # echo '' >> ./static/git-log.html + # echo "" >> ./static/git-log.html + # echo "
" >> ./static/git-log.html
     - "git log -100 --pretty=format:'%ad : %s' >> ./static/git-log.log"
+    # echo "
" >> ./static/git-log.html - zip -q -r $FILE_NAME ./* # 将 dist zip 上传到 minio @@ -88,6 +88,10 @@ rel_build: - npm install --registry=http://registry.npmmirror.com - echo "npm run build" + - npm run build:html + - mc alias set nz $MINIO_HOST $MINIO_USER $MINIO_PWD + - mc cp dist/index.html nz/depends/template/snapshot_template.html + - npm run build - cd /builds/nezha/nezha-fronted/nezha-fronted/dist - mc cp nz/depends/template/snapshot_template.html ./snapshot_template.html From 5fe1f84beeffa4f1d3436b859221f46f3f79f9fe Mon Sep 17 00:00:00 2001 From: Xiao Bai <2835066049@qq.com> Date: Fri, 11 Nov 2022 10:42:48 +0800 Subject: [PATCH 012/122] =?UTF-8?q?fix=20:=20panelBox=20=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=20=E5=9B=BD=E9=99=85=E5=8C=96=E9=97=AE=E9=A2=98=E6=9B=B4?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nezha-fronted/src/components/common/rightBox/panelBox.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nezha-fronted/src/components/common/rightBox/panelBox.vue b/nezha-fronted/src/components/common/rightBox/panelBox.vue index ccc35e332..9e2ed9032 100644 --- a/nezha-fronted/src/components/common/rightBox/panelBox.vue +++ b/nezha-fronted/src/components/common/rightBox/panelBox.vue @@ -438,7 +438,7 @@ export default { queryVariableList: [ { name: 'label_names()', description: this.$t('dashboard.panel.label_names()') }, { name: 'label_values(label)', description: this.$t('dashboard.panel.label_values(label)') }, - { name: 'label_values(metric, label)', description: this.$t('dashboard.label_values(metric, label)') }, + { name: 'label_values(metric, label)', description: this.$t('dashboard.panel.label_values(metric, label)') }, { name: 'metrics(metric)', description: this.$t('dashboard.panel.metrics(metric)') }, { name: 'query_result(query)', description: this.$t('dashboard.panel.query_result(query)') } ] From 0ac533e7b0397c72ba135d9af13fcbe2d65d42cf Mon Sep 17 00:00:00 2001 From: 18317449825 <18317449825@163.com> Date: Fri, 11 Nov 2022 11:07:17 +0800 Subject: [PATCH 013/122] =?UTF-8?q?NEZ-2373=20fix=EF=BC=9A=E5=BF=AB?= =?UTF-8?q?=E7=85=A7=E6=A8=A1=E6=9D=BF=E6=94=AF=E6=8C=81=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=20=E8=A1=A8=E5=A4=B4=E4=BF=AE=E6=94=B9=E6=8C=89?= =?UTF-8?q?=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nezha-fronted/src/assets/css/common.scss | 8 ++++- .../src/assets/css/themes/src/pagination.scss | 2 +- .../src/components/common/mixin/exportHtml.js | 1 - .../page/dashboard/explore/exploreItem.vue | 1 - .../dashboard/explore/exploreItemHtml.vue | 31 ++++++++++--------- .../src/entrance/exportHtml/exportHtml.js | 6 ++-- 6 files changed, 28 insertions(+), 21 deletions(-) diff --git a/nezha-fronted/src/assets/css/common.scss b/nezha-fronted/src/assets/css/common.scss index 5f8b2d4f7..dacfd001a 100644 --- a/nezha-fronted/src/assets/css/common.scss +++ b/nezha-fronted/src/assets/css/common.scss @@ -565,7 +565,7 @@ textarea { .el-dialog__header{ color: $--color-text-primary; } -#entranceHtml { +#entranceHtml,#entrance { .el-icon-arrow-right { font-family: "nz-icon" !important; font-size: 16px; @@ -576,6 +576,12 @@ textarea { .el-icon-arrow-right:before { content: "\e6ad"; } + .el-icon-arrow-up{ + font-family: nz-icon!important; + } + .el-icon-arrow-up:before{ + content: "\e6af"; + } .el-icon-arrow-down{ font-family: nz-icon!important; } diff --git a/nezha-fronted/src/assets/css/themes/src/pagination.scss b/nezha-fronted/src/assets/css/themes/src/pagination.scss index 02384e677..16ff0eec6 100644 --- a/nezha-fronted/src/assets/css/themes/src/pagination.scss +++ b/nezha-fronted/src/assets/css/themes/src/pagination.scss @@ -74,7 +74,7 @@ .el-icon { display: block; - font-size: 12px; + font-size: 12px !important; font-weight: bold; } } diff --git a/nezha-fronted/src/components/common/mixin/exportHtml.js b/nezha-fronted/src/components/common/mixin/exportHtml.js index 420b8fd8d..5d0726d56 100644 --- a/nezha-fronted/src/components/common/mixin/exportHtml.js +++ b/nezha-fronted/src/components/common/mixin/exportHtml.js @@ -1,5 +1,4 @@ import bus from '@/libs/bus' -import { Loading } from 'element-ui' export default { data () { return { diff --git a/nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue b/nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue index 8b4b75727..188132c64 100644 --- a/nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue +++ b/nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue @@ -4287,7 +4287,6 @@ export default { document.body.removeChild(link) // 下载完成移除元素 window.URL.revokeObjectURL(href) // 释放blob对象 } - this.$refs.topTool.closeDialog() }, () => { this.$message.error('123') }) diff --git a/nezha-fronted/src/components/page/dashboard/explore/exploreItemHtml.vue b/nezha-fronted/src/components/page/dashboard/explore/exploreItemHtml.vue index fcca3daf1..b71e3dc41 100644 --- a/nezha-fronted/src/components/page/dashboard/explore/exploreItemHtml.vue +++ b/nezha-fronted/src/components/page/dashboard/explore/exploreItemHtml.vue @@ -28,12 +28,13 @@
{{$t('dashboard.panel.chartForm.typeVal.table.label')}} - - - - - - + +
- +
- + diff --git a/nezha-fronted/src/entrance/exportHtml/exportHtml.js b/nezha-fronted/src/entrance/exportHtml/exportHtml.js index 0aea2c51c..6046749f4 100644 --- a/nezha-fronted/src/entrance/exportHtml/exportHtml.js +++ b/nezha-fronted/src/entrance/exportHtml/exportHtml.js @@ -2,7 +2,7 @@ // import 'element-ui/lib/theme-chalk/index.css' // import 'xterm/dist/xterm.css' import '@/assets/css/main.scss' -// import '@/assets/css/font/iconfont.js' +import '@/assets/css/font/iconfont.js' import ElementUI from 'element-ui' import i18n from '@/components/common/i18n' @@ -21,12 +21,14 @@ import { clickoutside, bottomBoxWindow, stringTimeParseToUnix, unixTimeParseToSt import * as tools from '@/components/common/js/tools.js' import * as constants from '@/components/common/js/constants.js' +import elementSet from '@/components/common/elementSet' // 自定义表头组件 import chartList from '@/components/chart/chartList.vue' // 全局引入 chartList 组件 防止 chart-group爆粗 - import pickTime from '@/components/common/pickTime' import nzDataList from '@/components/common/table/nzDataList' import mainMixin from '@/components/common/mixin/mainMixinFun' import Pagination from '@/components/common/pagination' + +Vue.component('element-set', elementSet) // 公用设置表头 Vue.component('pick-time', pickTime) Vue.component('nzDataList', nzDataList) Vue.component('chartList', chartList) From bfe2fdc8dd5952864c319220c774c6fecc10f5eb Mon Sep 17 00:00:00 2001 From: 18317449825 <18317449825@163.com> Date: Fri, 11 Nov 2022 12:10:01 +0800 Subject: [PATCH 014/122] =?UTF-8?q?NEZ-2374=20fix=EF=BC=9AExplore=E5=BF=AB?= =?UTF-8?q?=E7=85=A7=E9=83=A8=E5=88=86=E4=B8=8B=E6=8B=89=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E5=9B=BE=E6=A0=87=E5=B1=95=E7=A4=BA=E6=9C=89=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nezha-fronted/src/assets/css/common.scss | 2 +- .../src/entrance/exportHtml/exportHtml.html | 15 +++++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/nezha-fronted/src/assets/css/common.scss b/nezha-fronted/src/assets/css/common.scss index dacfd001a..b0ce70510 100644 --- a/nezha-fronted/src/assets/css/common.scss +++ b/nezha-fronted/src/assets/css/common.scss @@ -565,7 +565,7 @@ textarea { .el-dialog__header{ color: $--color-text-primary; } -#entranceHtml,#entrance { +#entrance { .el-icon-arrow-right { font-family: "nz-icon" !important; font-size: 16px; diff --git a/nezha-fronted/src/entrance/exportHtml/exportHtml.html b/nezha-fronted/src/entrance/exportHtml/exportHtml.html index 6c210b5ca..e2fca417e 100644 --- a/nezha-fronted/src/entrance/exportHtml/exportHtml.html +++ b/nezha-fronted/src/entrance/exportHtml/exportHtml.html @@ -3,7 +3,7 @@ - + @@ -35,11 +35,22 @@ font-size: 16px; } } + + #entranceHtml .el-icon-arrow-right { + font-family: "nz-icon" !important; + font-size: 16px; + font-style: normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + } + #entranceHtml .el-icon-arrow-right:before { + content: "\e6ad"; + } -
+
From f2f3ac20faa3bb499a27aa50ae7ad6886a3b1017 Mon Sep 17 00:00:00 2001 From: 18317449825 <18317449825@163.com> Date: Fri, 11 Nov 2022 12:21:04 +0800 Subject: [PATCH 015/122] =?UTF-8?q?NEZ-2376=20fix=EF=BC=9A=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=AF=BC=E5=87=BA=E6=8C=89=E9=92=AE=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E9=9A=90=E8=97=8F=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nezha-fronted/src/components/page/dashboard/explore/logTab.vue | 2 +- nezha-fronted/src/entrance/exportHtml/exportHtml.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nezha-fronted/src/components/page/dashboard/explore/logTab.vue b/nezha-fronted/src/components/page/dashboard/explore/logTab.vue index 49e872a4d..b575adb8a 100644 --- a/nezha-fronted/src/components/page/dashboard/explore/logTab.vue +++ b/nezha-fronted/src/components/page/dashboard/explore/logTab.vue @@ -34,7 +34,7 @@ Result: {{tableData.length}}
-
+
diff --git a/nezha-fronted/src/entrance/exportHtml/exportHtml.html b/nezha-fronted/src/entrance/exportHtml/exportHtml.html index e2fca417e..4e0cc5948 100644 --- a/nezha-fronted/src/entrance/exportHtml/exportHtml.html +++ b/nezha-fronted/src/entrance/exportHtml/exportHtml.html @@ -3,7 +3,7 @@ - + From 3dc54167f4a149cc5d4255bbd64c2e5766bb9ea5 Mon Sep 17 00:00:00 2001 From: 18317449825 <18317449825@163.com> Date: Fri, 11 Nov 2022 17:22:46 +0800 Subject: [PATCH 016/122] =?UTF-8?q?NEZ-2375=20fix=EF=BC=9A=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=BF=AB=E7=85=A7=E6=98=BE=E7=A4=BAdirection=E3=80=81?= =?UTF-8?q?limit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../page/dashboard/explore/exploreItem.vue | 1 + .../dashboard/explore/exploreItemHtml.vue | 2 +- .../page/dashboard/explore/logTab.vue | 23 ++++++++++++++----- .../src/entrance/exportHtml/exportHtml.html | 6 +++++ 4 files changed, 25 insertions(+), 7 deletions(-) diff --git a/nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue b/nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue index 188132c64..312c928cf 100644 --- a/nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue +++ b/nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue @@ -4253,6 +4253,7 @@ export default { } if (!this.showMetrics) { params.limit = this.$refs.logDetail ? this.$refs.logDetail.getLimit() : 100 + params.direction = this.$refs.logDetail ? this.$refs.logDetail.getDescending() : 'backward' } this.$store.dispatch('dispatchHomeLoading', true) this.$get('/visual/explore/snapshot', params, 'blob').then(res => { diff --git a/nezha-fronted/src/components/page/dashboard/explore/exploreItemHtml.vue b/nezha-fronted/src/components/page/dashboard/explore/exploreItemHtml.vue index b71e3dc41..de1df4053 100644 --- a/nezha-fronted/src/components/page/dashboard/explore/exploreItemHtml.vue +++ b/nezha-fronted/src/components/page/dashboard/explore/exploreItemHtml.vue @@ -98,7 +98,7 @@
- + diff --git a/nezha-fronted/src/components/page/dashboard/explore/logTab.vue b/nezha-fronted/src/components/page/dashboard/explore/logTab.vue index b575adb8a..2bcec77bb 100644 --- a/nezha-fronted/src/components/page/dashboard/explore/logTab.vue +++ b/nezha-fronted/src/components/page/dashboard/explore/logTab.vue @@ -14,6 +14,7 @@ {{$t('dashboard.explore.descending')}} @@ -26,7 +27,7 @@
{{$t('overall.limit')}}: - +
@@ -185,12 +186,21 @@ export default { filterData: [] } }, + created () { + if (this.dataJson) { + this.limit = this.dataJson.limit || 100 + this.operations.descending = this.dataJson.direction === 'backward' + } + }, methods: { resetOperation () { this.operations = { levels: [0, 1, 2, 3, 4, 5, 6], descending: true } + if (this.dataJson) { + this.operations.descending = this.dataJson.direction === 'backward' + } }, exportLog () { this.$emit('exportLog', { limit: this.limit, ...this.operations }) @@ -270,9 +280,10 @@ export default { }, grid: { top: 20, - left: 30, + left: 20, right: 10, - bottom: 80 + bottom: 80, + containLabel: true }, legend: { bottom: 20, @@ -485,6 +496,9 @@ export default { getLimit () { return this.limit }, + getDescending () { + return this.operations.descending ? 'backward' : 'forward' + }, resizeChart () { setTimeout(() => { this.myChart.resize() @@ -588,9 +602,6 @@ export default { this.tableData = tableData this.tableChartData = tableChartData } - }, - limit (n) { - this.$emit('limitChange', n) } }, destroyed () { diff --git a/nezha-fronted/src/entrance/exportHtml/exportHtml.html b/nezha-fronted/src/entrance/exportHtml/exportHtml.html index 4e0cc5948..b67264a73 100644 --- a/nezha-fronted/src/entrance/exportHtml/exportHtml.html +++ b/nezha-fronted/src/entrance/exportHtml/exportHtml.html @@ -46,6 +46,12 @@ #entranceHtml .el-icon-arrow-right:before { content: "\e6ad"; } + #entranceHtml .el-icon-check{ + font-family: nz-icon!important; + } + #entranceHtml .el-icon-check::before{ + content: '\e689'; + } From b78e99020e473bc157e73ee38dc7e4de778eae5c Mon Sep 17 00:00:00 2001 From: zyh Date: Mon, 14 Nov 2022 11:09:41 +0800 Subject: [PATCH 017/122] =?UTF-8?q?fix=EF=BC=9Aasset=20info=20dashboard?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E9=A1=B5=E9=9D=A2=E4=BF=9D=E5=AD=98=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E5=88=92=E8=BF=87=E6=B6=88=E5=A4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/assets/css/components/common/bottomBox/panelTabNew.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nezha-fronted/src/assets/css/components/common/bottomBox/panelTabNew.scss b/nezha-fronted/src/assets/css/components/common/bottomBox/panelTabNew.scss index d7f803e1c..ab4313cbd 100644 --- a/nezha-fronted/src/assets/css/components/common/bottomBox/panelTabNew.scss +++ b/nezha-fronted/src/assets/css/components/common/bottomBox/panelTabNew.scss @@ -146,7 +146,7 @@ outline: none; border: 1px solid #ccc; } - button:hover { + button:hover:not(.footer__btn) { background: $--background-color-empty; } .nz-btn-style-normal { From c6082adbce934d2cb9eeda0dfc574d83e45f23c5 Mon Sep 17 00:00:00 2001 From: Xiao Bai <2835066049@qq.com> Date: Mon, 14 Nov 2022 12:27:07 +0800 Subject: [PATCH 018/122] =?UTF-8?q?NEZ-2380=20feat=20=EF=BC=9AAPM=20settin?= =?UTF-8?q?g=E9=A1=B5=E9=9D=A2=E5=A2=9E=E5=8A=A0=20interface=20name=20?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mixin/system/systemMixin.js | 16 +++++++++++++- .../src/components/page/config/monitor.vue | 22 ++++++++++++++++++- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/nezha-fronted/src/components/common/mixin/system/systemMixin.js b/nezha-fronted/src/components/common/mixin/system/systemMixin.js index fd725c7a0..615ae875f 100644 --- a/nezha-fronted/src/components/common/mixin/system/systemMixin.js +++ b/nezha-fronted/src/components/common/mixin/system/systemMixin.js @@ -81,7 +81,8 @@ export default { metrics_storage_s3_endpoint: '', metrics_storage_s3_secret_access_key: '', metrics_storage_type: '', - prometheus_federation_enabled: '' + prometheus_federation_enabled: '', + interface_name: [] }, monitorRules: { // alert_api: [{ required: true, message: this.$t('validate.required'), trigger: 'blur' }], @@ -253,6 +254,13 @@ export default { this.$refs.emailForm.clearValidate() } if (type == 'monitor') { + if(response.data.interface_name){ + let arr = response.data.interface_name.split(',') + this.monitor.interface_name = arr.map(item=>{ + return {text: item} + + }) + } localStorage.setItem('nz-prometheus-federation-enabled', this.monitor.prometheus_federation_enabled) } this[type + 'Copy'] = Object.assign({}, this[type]) @@ -270,6 +278,12 @@ export default { param.map_center_config = JSON.stringify(mapConfig) param.pin_policy = JSON.stringify(this.basic.pin_policy) } + if(type == 'monitor') { + let str = this.monitor.interface_name.map(item=>{ + return item.text + }) + param.interface_name = str.join(',') + } const postParam = Object.assign({}, param) for (const key in postParam[type]) { postParam[type][key] = postParam[type][key] + '' diff --git a/nezha-fronted/src/components/page/config/monitor.vue b/nezha-fronted/src/components/page/config/monitor.vue index d47506631..f5265aa0c 100644 --- a/nezha-fronted/src/components/page/config/monitor.vue +++ b/nezha-fronted/src/components/page/config/monitor.vue @@ -27,6 +27,15 @@ + + +
{{$t('config.system.monitor.metricsTitle')}}
@@ -110,13 +119,18 @@ + From f1b2d6ff5f545d15e1ecd70916d68bc4e1ddc34d Mon Sep 17 00:00:00 2001 From: zhangyu Date: Mon, 14 Nov 2022 14:47:53 +0800 Subject: [PATCH 019/122] =?UTF-8?q?NEZ-2379=20fix=EF=BC=9Aproject=E6=8B=93?= =?UTF-8?q?=E6=89=91=E5=9B=BE=E7=BC=96=E8=BE=91=E7=BA=BF=E6=9D=A1=E6=97=B6?= =?UTF-8?q?=E5=A4=9A=E6=AC=A1=E5=87=BA=E7=8E=B0=E9=94=99=E4=BD=8D=E7=8E=B0?= =?UTF-8?q?=E8=B1=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/common/project/topologyMixin.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/nezha-fronted/src/components/common/project/topologyMixin.js b/nezha-fronted/src/components/common/project/topologyMixin.js index 5e8f3ae16..97d794b2f 100644 --- a/nezha-fronted/src/components/common/project/topologyMixin.js +++ b/nezha-fronted/src/components/common/project/topologyMixin.js @@ -104,7 +104,15 @@ export default { if (data.type === 0 || data.type === 1) { data.lineWidth = data.data.lineWidth } - getTopology(this.topologyIndex).setValue(data) + const obj = this.$loadsh.cloneDeep(data) + delete obj.x + delete obj.y + delete obj.center + delete obj.ex + delete obj.ey + delete obj.width + delete obj.height + getTopology(this.topologyIndex).setValue(obj) }, pensActive (pens) { this.props = { From 35047272d4833f1af92c942faf2046b645b8a0c1 Mon Sep 17 00:00:00 2001 From: zhangyu Date: Mon, 14 Nov 2022 14:48:23 +0800 Subject: [PATCH 020/122] =?UTF-8?q?NEZ-2378=20fix=EF=BC=9Aproject=E6=8B=93?= =?UTF-8?q?=E6=89=91=E5=9B=BE=E7=BC=96=E8=BE=91=E7=8A=B6=E6=80=81=E4=B8=8B?= =?UTF-8?q?=E6=AF=8F=E6=AC=A1=E9=A2=84=E8=A7=88=E9=83=BD=E4=BC=9A=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E5=88=9B=E5=BB=BA=E5=86=85=E5=AE=B9=E7=BC=A9=E5=B0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/common/project/topologyL5.vue | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/nezha-fronted/src/components/common/project/topologyL5.vue b/nezha-fronted/src/components/common/project/topologyL5.vue index cd5ebeca4..ce60b9348 100644 --- a/nezha-fronted/src/components/common/project/topologyL5.vue +++ b/nezha-fronted/src/components/common/project/topologyL5.vue @@ -133,7 +133,7 @@ :use-chart-unit="false" class="pickTime margin-r-10"> - From b12d36c1fc7c3ef1a5f408e93474442b8778484d Mon Sep 17 00:00:00 2001 From: likexuan Date: Tue, 15 Nov 2022 13:36:09 +0800 Subject: [PATCH 024/122] =?UTF-8?q?NEZ-2392=20fix=20:=20dashboard=20?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E9=A1=B5=E9=9D=A2=20receivers=20=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=98=BE=E7=A4=BA=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nezha-fronted/src/components/common/rightBox/panelBox.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/nezha-fronted/src/components/common/rightBox/panelBox.vue b/nezha-fronted/src/components/common/rightBox/panelBox.vue index ccc35e332..d0ebc6476 100644 --- a/nezha-fronted/src/components/common/rightBox/panelBox.vue +++ b/nezha-fronted/src/components/common/rightBox/panelBox.vue @@ -309,6 +309,7 @@ {{item.name}} + @{{item.username}} From 8ffb9365b7cfe28a9045f25a2222c4af912bc225 Mon Sep 17 00:00:00 2001 From: likexuan Date: Tue, 15 Nov 2022 13:40:00 +0800 Subject: [PATCH 025/122] =?UTF-8?q?NEZ-2388=20feat=20:=20backup=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=A2=9E=E5=8A=A0=E4=B8=8B=E8=BD=BD=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/table/settings/backupsTable.vue | 102 +++++++++++------- 1 file changed, 66 insertions(+), 36 deletions(-) diff --git a/nezha-fronted/src/components/common/table/settings/backupsTable.vue b/nezha-fronted/src/components/common/table/settings/backupsTable.vue index dcf9554b7..8029ee419 100644 --- a/nezha-fronted/src/components/common/table/settings/backupsTable.vue +++ b/nezha-fronted/src/components/common/table/settings/backupsTable.vue @@ -50,26 +50,30 @@ -
- -
- +
+ + +
+
- + + {{$t('backup.RestoreNow')}} + + + + +