@blueking/monitor-alarm-center 0.0.7 → 0.0.8

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.
Files changed (2) hide show
  1. package/index.js +343 -154
  2. package/package.json +2 -2
package/index.js CHANGED
@@ -17952,17 +17952,23 @@ i.t-size-l {
17952
17952
  user-select: none;
17953
17953
  }
17954
17954
 
17955
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting {
17955
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] {
17956
17956
  padding: 0;
17957
17957
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.1019607843);
17958
17958
  }
17959
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container {
17959
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .tippy-content {
17960
+ padding: 0;
17961
+ }
17962
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] > .tippy-arrow {
17963
+ margin-left: -8px;
17964
+ }
17965
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container {
17960
17966
  display: flex;
17961
17967
  flex-direction: column;
17962
17968
  width: 607px;
17963
17969
  height: 484px;
17964
17970
  }
17965
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-title {
17971
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-title {
17966
17972
  display: inline-block;
17967
17973
  flex-shrink: 0;
17968
17974
  padding: 12px 24px;
@@ -17970,7 +17976,7 @@ i.t-size-l {
17970
17976
  color: #313238;
17971
17977
  letter-spacing: 0;
17972
17978
  }
17973
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer {
17979
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer {
17974
17980
  position: relative;
17975
17981
  display: flex;
17976
17982
  flex: 1;
@@ -17980,7 +17986,7 @@ i.t-size-l {
17980
17986
  min-height: 0;
17981
17987
  padding: 0 24px;
17982
17988
  }
17983
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-icon {
17989
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-icon {
17984
17990
  position: absolute;
17985
17991
  width: 33px;
17986
17992
  height: 33px;
@@ -17989,8 +17995,8 @@ i.t-size-l {
17989
17995
  background: #fafbfd;
17990
17996
  border-radius: 50%;
17991
17997
  }
17992
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source,
17993
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target {
17998
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source,
17999
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target {
17994
18000
  display: flex;
17995
18001
  flex: 1;
17996
18002
  flex-direction: column;
@@ -17999,8 +18005,8 @@ i.t-size-l {
17999
18005
  border: 1px solid #dcdee5;
18000
18006
  border-bottom: 0;
18001
18007
  }
18002
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-header,
18003
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-header {
18008
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-header,
18009
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-header {
18004
18010
  display: flex;
18005
18011
  align-items: center;
18006
18012
  justify-content: space-between;
@@ -18011,31 +18017,31 @@ i.t-size-l {
18011
18017
  background: #fafbfd;
18012
18018
  border-bottom: 1px solid #dcdee5;
18013
18019
  }
18014
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-header .header-title,
18015
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-header .header-title {
18020
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-header .header-title,
18021
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-header .header-title {
18016
18022
  font-weight: 700;
18017
18023
  color: #313238;
18018
18024
  }
18019
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-header .header-operation,
18020
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-header .header-operation {
18025
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-header .header-operation,
18026
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-header .header-operation {
18021
18027
  color: #3a84ff;
18022
18028
  cursor: pointer;
18023
18029
  }
18024
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-header .header-operation.disabled,
18025
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-header .header-operation.disabled {
18030
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-header .header-operation.disabled,
18031
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-header .header-operation.disabled {
18026
18032
  color: var(--light-gray);
18027
18033
  cursor: not-allowed;
18028
18034
  }
18029
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-list,
18030
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-list {
18035
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-list,
18036
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-list {
18031
18037
  flex: 1;
18032
18038
  min-height: 0;
18033
18039
  padding: 4px 8px;
18034
18040
  overflow-y: auto;
18035
- overflow-y: overlay;
18041
+ overflow-y: auto;
18036
18042
  }
18037
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-list .list-item,
18038
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-list .list-item {
18043
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-list .list-item,
18044
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-list .list-item {
18039
18045
  display: flex;
18040
18046
  align-items: center;
18041
18047
  justify-content: space-between;
@@ -18044,8 +18050,8 @@ i.t-size-l {
18044
18050
  line-height: 20px;
18045
18051
  border-radius: 4px;
18046
18052
  }
18047
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-list .list-item .list-item-left,
18048
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-list .list-item .list-item-left {
18053
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-list .list-item .list-item-left,
18054
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-list .list-item .list-item-left {
18049
18055
  display: flex;
18050
18056
  flex-basis: auto;
18051
18057
  column-gap: 4px;
@@ -18053,86 +18059,86 @@ i.t-size-l {
18053
18059
  min-width: 0;
18054
18060
  user-select: none;
18055
18061
  }
18056
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-list .list-item .list-item-left .item-prefix,
18057
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-list .list-item .list-item-left .item-prefix {
18062
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-list .list-item .list-item-left .item-prefix,
18063
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-list .list-item .list-item-left .item-prefix {
18058
18064
  flex-shrink: 0;
18059
18065
  }
18060
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-list .list-item .list-item-left .item-label,
18061
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-list .list-item .list-item-left .item-label {
18066
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-list .list-item .list-item-left .item-label,
18067
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-list .list-item .list-item-left .item-label {
18062
18068
  flex: 1;
18063
18069
  min-width: 0;
18064
18070
  overflow: hidden;
18065
18071
  text-overflow: ellipsis;
18066
18072
  white-space: nowrap;
18067
18073
  }
18068
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-list .list-item .item-suffix,
18069
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-list .list-item .item-suffix {
18074
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-list .list-item .item-suffix,
18075
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-list .list-item .item-suffix {
18070
18076
  display: flex;
18071
18077
  align-items: center;
18072
18078
  }
18073
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .transfer-list .list-item:hover,
18074
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .transfer-list .list-item:hover {
18079
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .transfer-list .list-item:hover,
18080
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .transfer-list .list-item:hover {
18075
18081
  color: #3a84ff;
18076
18082
  background: #f0f5ff;
18077
18083
  }
18078
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source {
18084
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source {
18079
18085
  border-right: 0;
18080
18086
  }
18081
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input {
18087
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input {
18082
18088
  display: flex;
18083
18089
  align-items: center;
18084
18090
  padding: 8px 16px 0;
18085
18091
  }
18086
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .icon-mc-search {
18092
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .icon-mc-search {
18087
18093
  font-size: 18px;
18088
18094
  color: #979ba5;
18089
18095
  }
18090
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default {
18096
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default {
18091
18097
  align-items: center;
18092
18098
  }
18093
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default .apm-bk-input--text::placeholder {
18099
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default .apm-bk-input--text::placeholder {
18094
18100
  color: #c4c6cc;
18095
18101
  }
18096
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default:hover, .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default.is-focused {
18102
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default:hover, .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default.is-focused {
18097
18103
  background-color: transparent;
18098
18104
  }
18099
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default:hover .apm-bk-input--text, .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default.is-focused .apm-bk-input--text {
18105
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default:hover .apm-bk-input--text, .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default.is-focused .apm-bk-input--text {
18100
18106
  background-color: transparent;
18101
18107
  }
18102
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default:hover .apm-bk-input--suffix-icon, .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default.is-focused .apm-bk-input--suffix-icon {
18108
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default:hover .apm-bk-input--suffix-icon, .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .source-search-input .apm-bk-input--default.is-focused .apm-bk-input--suffix-icon {
18103
18109
  background-color: transparent;
18104
18110
  }
18105
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .list-item {
18111
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .list-item {
18106
18112
  cursor: pointer;
18107
18113
  }
18108
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .list-item .item-suffix {
18114
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .list-item .item-suffix {
18109
18115
  visibility: hidden;
18110
18116
  font-size: 24px;
18111
18117
  color: #3a84ff;
18112
18118
  }
18113
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-source .list-item:hover .item-suffix {
18119
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-source .list-item:hover .item-suffix {
18114
18120
  visibility: visible;
18115
18121
  }
18116
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .drag-move {
18122
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .drag-move {
18117
18123
  transition: transform 0.3s;
18118
18124
  }
18119
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .list-item .icon-mc-tuozhuai {
18125
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .list-item .icon-mc-tuozhuai {
18120
18126
  margin-right: 4px;
18121
18127
  font-size: 12px;
18122
18128
  color: #979ba5;
18123
18129
  cursor: move;
18124
18130
  }
18125
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .list-item .item-suffix {
18131
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .list-item .item-suffix {
18126
18132
  font-size: 14px;
18127
18133
  color: #c4c6cc;
18128
18134
  cursor: pointer;
18129
18135
  }
18130
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-transfer .transfer-target .list-item.dragging {
18136
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-transfer .transfer-target .list-item.dragging {
18131
18137
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
18132
18138
  opacity: 0.5;
18133
18139
  transform: scale(0.98);
18134
18140
  }
18135
- .apm-bk-popover.apm-bk-pop2-content.explore-table-field-setting .setting-container .setting-operation {
18141
+ .tippy-box[data-theme~=light][data-theme~=explore-table-field-setting] .setting-container .setting-operation {
18136
18142
  display: flex;
18137
18143
  flex-shrink: 0;
18138
18144
  column-gap: 8px;
@@ -32579,9 +32585,9 @@ import { getActionConfigByAlerts, assignAlert, getVariables, getConvergeFunction
32579
32585
  import { getNoticeWay } from "monitor-api/modules/notice_group";
32580
32586
  import { getUserComponentConfig, USER_GROUP_TYPE, getBkUserDisplayNameInstance } from "monitor-pc/common/user-display-name";
32581
32587
  import { bulkAddAlertShield } from "monitor-api/modules/shield";
32582
- import { alertDetail, actionDetail, listAlertFeedback, alertEventTagDetail, alertK8sMetricList, alertHostTarget, alertK8sScenarioList, alertK8sTarget, searchAction, ackAlert as ackAlert$1, subActionDetail, listAlertLog, searchEvent, alertEvents, alertEventTotal, alertLogRelationList, alertTraces, alertEventCount, alertRelatedInfo, listAlertTags, editDataMeaning, alertTopN, searchAlert, actionTopN, feedbackAlert } from "monitor-api/modules/alert_v2";
32588
+ import { alertDetail, actionDetail, listAlertFeedback, alertEventTagDetail, alertK8sMetricList, alertHostTarget, alertK8sScenarioList, alertK8sTarget, searchAction, ackAlert as ackAlert$1, subActionDetail, listAlertLog, alertGraphDrillDown, searchEvent, alertEvents, alertEventTotal, alertLogRelationList, alertTraces, alertEventCount, alertRelatedInfo, listAlertTags, editDataMeaning, alertTopN, searchAlert, actionTopN, feedbackAlert } from "monitor-api/modules/alert_v2";
32583
32589
  import { listK8sResources } from "monitor-api/modules/k8s";
32584
- import { getSceneView, getHostOrTopoNodeDetail, graphDrillDown } from "monitor-api/modules/scene_view";
32590
+ import { getSceneView, getHostOrTopoNodeDetail } from "monitor-api/modules/scene_view";
32585
32591
  import { BookMarkModel, PanelModel } from "monitor-ui/chart-plugins/typings";
32586
32592
  import { TabEnum as TabEnum$1 } from "monitor-pc/pages/collector-config/collector-detail/typings/detail";
32587
32593
  import { isZh } from "monitor-pc/common/constant";
@@ -32618,7 +32624,7 @@ import { issueSearch, issueTopN, updateIssuePriority, assignIssue, restoreIssue,
32618
32624
  import { checkAllowedByActionIds, getAuthorityApplyInfo, getAuthorityDetail, getAuthorityMeta, checkAllowed } from "monitor-api/modules/iam";
32619
32625
  import { transformLogUrlQuery as transformLogUrlQuery$1 } from "monitor-pc/utils";
32620
32626
  /**
32621
- * @vue/shared v3.5.33
32627
+ * @vue/shared v3.5.34
32622
32628
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
32623
32629
  * @license MIT
32624
32630
  **/
@@ -33008,7 +33014,7 @@ function normalizeCssVarValue(value) {
33008
33014
  return String(value);
33009
33015
  }
33010
33016
  /**
33011
- * @vue/reactivity v3.5.33
33017
+ * @vue/reactivity v3.5.34
33012
33018
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
33013
33019
  * @license MIT
33014
33020
  **/
@@ -33025,12 +33031,18 @@ class EffectScope {
33025
33031
  this.effects = [];
33026
33032
  this.cleanups = [];
33027
33033
  this._isPaused = false;
33034
+ this._warnOnRun = true;
33028
33035
  this.__v_skip = true;
33029
- this.parent = activeEffectScope;
33030
33036
  if (!detached && activeEffectScope) {
33031
- this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
33032
- this
33033
- ) - 1;
33037
+ if (activeEffectScope.active) {
33038
+ this.parent = activeEffectScope;
33039
+ this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
33040
+ this
33041
+ ) - 1;
33042
+ } else {
33043
+ this._active = false;
33044
+ this._warnOnRun = false;
33045
+ }
33034
33046
  }
33035
33047
  }
33036
33048
  get active() {
@@ -33078,7 +33090,7 @@ class EffectScope {
33078
33090
  } finally {
33079
33091
  activeEffectScope = currentEffectScope;
33080
33092
  }
33081
- } else if (!!(process.env.NODE_ENV !== "production")) {
33093
+ } else if (!!(process.env.NODE_ENV !== "production") && this._warnOnRun) {
33082
33094
  warn$5(`cannot run an inactive effect scope.`);
33083
33095
  }
33084
33096
  }
@@ -33168,8 +33180,12 @@ class ReactiveEffect {
33168
33180
  this.next = void 0;
33169
33181
  this.cleanup = void 0;
33170
33182
  this.scheduler = void 0;
33171
- if (activeEffectScope && activeEffectScope.active) {
33172
- activeEffectScope.effects.push(this);
33183
+ if (activeEffectScope) {
33184
+ if (activeEffectScope.active) {
33185
+ activeEffectScope.effects.push(this);
33186
+ } else {
33187
+ this.flags &= -2;
33188
+ }
33173
33189
  }
33174
33190
  }
33175
33191
  pause() {
@@ -34878,7 +34894,7 @@ function traverse$1(value, depth = Infinity, seen2) {
34878
34894
  return value;
34879
34895
  }
34880
34896
  /**
34881
- * @vue/runtime-core v3.5.33
34897
+ * @vue/runtime-core v3.5.34
34882
34898
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
34883
34899
  * @license MIT
34884
34900
  **/
@@ -40101,7 +40117,7 @@ function getInvalidTypeMessage(name, value, expectedTypes) {
40101
40117
  const receivedType = toRawType(value);
40102
40118
  const expectedValue = styleValue(value, expectedType);
40103
40119
  const receivedValue = styleValue(value, receivedType);
40104
- if (expectedTypes.length === 1 && isExplicable(expectedType) && !isBoolean$6(expectedType, receivedType)) {
40120
+ if (expectedTypes.length === 1 && isExplicable(expectedType) && isCoercible(expectedType, receivedType)) {
40105
40121
  message += ` with value ${expectedValue}`;
40106
40122
  }
40107
40123
  message += `, got ${receivedType} `;
@@ -40111,7 +40127,9 @@ function getInvalidTypeMessage(name, value, expectedTypes) {
40111
40127
  return message;
40112
40128
  }
40113
40129
  function styleValue(value, type) {
40114
- if (type === "String") {
40130
+ if (isSymbol$4(value)) {
40131
+ return value.toString();
40132
+ } else if (type === "String") {
40115
40133
  return `"${value}"`;
40116
40134
  } else if (type === "Number") {
40117
40135
  return `${Number(value)}`;
@@ -40123,8 +40141,11 @@ function isExplicable(type) {
40123
40141
  const explicitTypes = ["string", "number", "boolean"];
40124
40142
  return explicitTypes.some((elem) => type.toLowerCase() === elem);
40125
40143
  }
40126
- function isBoolean$6(...args) {
40127
- return args.some((elem) => elem.toLowerCase() === "boolean");
40144
+ function isCoercible(...args) {
40145
+ return args.every((elem) => {
40146
+ const value = elem.toLowerCase();
40147
+ return value !== "boolean" && value !== "symbol";
40148
+ });
40128
40149
  }
40129
40150
  const isInternalKey = (key2) => key2 === "_" || key2 === "_ctx" || key2 === "$stable";
40130
40151
  const normalizeSlotValue = (value) => isArray$c(value) ? value.map(normalizeVNode) : [normalizeVNode(value)];
@@ -42165,13 +42186,14 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
42165
42186
  suspense.isHydrating = false;
42166
42187
  } else if (!resume) {
42167
42188
  delayEnter = activeBranch && pendingBranch.transition && pendingBranch.transition.mode === "out-in";
42189
+ let hasUpdatedAnchor = false;
42168
42190
  if (delayEnter) {
42169
42191
  activeBranch.transition.afterLeave = () => {
42170
42192
  if (pendingId === suspense.pendingId) {
42171
42193
  move(
42172
42194
  pendingBranch,
42173
42195
  container2,
42174
- anchor === initialAnchor ? next(activeBranch) : anchor,
42196
+ anchor === initialAnchor && !hasUpdatedAnchor ? next(activeBranch) : anchor,
42175
42197
  0
42176
42198
  );
42177
42199
  queuePostFlushCb(effects);
@@ -42184,6 +42206,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
42184
42206
  if (activeBranch && !suspense.isFallbackMountPending) {
42185
42207
  if (parentNode2(activeBranch.el) === container2) {
42186
42208
  anchor = next(activeBranch);
42209
+ hasUpdatedAnchor = true;
42187
42210
  }
42188
42211
  unmount(activeBranch, parentComponent2, suspense, true);
42189
42212
  if (!delayEnter && isInFallback && vnode2.ssFallback) {
@@ -43497,7 +43520,7 @@ function isMemoSame(cached, memo) {
43497
43520
  }
43498
43521
  return true;
43499
43522
  }
43500
- const version$1 = "3.5.33";
43523
+ const version$1 = "3.5.34";
43501
43524
  const warn$4 = !!(process.env.NODE_ENV !== "production") ? warn$1$1 : NOOP;
43502
43525
  const ErrorTypeStrings = ErrorTypeStrings$1;
43503
43526
  const devtools$2 = !!(process.env.NODE_ENV !== "production") || true ? devtools$1 : void 0;
@@ -43519,7 +43542,7 @@ const resolveFilter = null;
43519
43542
  const compatUtils = null;
43520
43543
  const DeprecationTypes = null;
43521
43544
  /**
43522
- * @vue/runtime-dom v3.5.33
43545
+ * @vue/runtime-dom v3.5.34
43523
43546
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
43524
43547
  * @license MIT
43525
43548
  **/
@@ -184773,8 +184796,19 @@ const METHOD_MAP = {
184773
184796
  };
184774
184797
  var ECondition = /* @__PURE__ */ ((ECondition2) => {
184775
184798
  ECondition2["and"] = "and";
184799
+ ECondition2["or"] = "or";
184776
184800
  return ECondition2;
184777
184801
  })(ECondition || {});
184802
+ const CONDITION_MAP = {
184803
+ [
184804
+ "and"
184805
+ /* and */
184806
+ ]: "AND",
184807
+ [
184808
+ "or"
184809
+ /* or */
184810
+ ]: "OR"
184811
+ };
184778
184812
  var EQueryStringTokenType = /* @__PURE__ */ ((EQueryStringTokenType2) => {
184779
184813
  EQueryStringTokenType2["bracket"] = "bracket";
184780
184814
  EQueryStringTokenType2["condition"] = "condition";
@@ -222280,8 +222314,8 @@ const AlarmStatusIconMap = {
222280
222314
  name: window.i18n.t("已恢复")
222281
222315
  },
222282
222316
  [AlarmStatusEnum.CLOSED]: {
222283
- icon: "icon-mc-close-fill",
222284
- iconColor: "#DCDEE5",
222317
+ icon: "icon-shixiao",
222318
+ iconColor: "#8e9bb3",
222285
222319
  name: window.i18n.t("已失效")
222286
222320
  }
222287
222321
  };
@@ -251399,11 +251433,7 @@ const config01 = {
251399
251433
  width: "35px"
251400
251434
  }, 40, 40, 52, 40, 40, 0], [{
251401
251435
  width: "35px"
251402
- }, 40, 73, 40, 40, 40, 0], [{
251403
- width: "35px"
251404
- }, 40, 40, 92, 40, 40, 0], [{
251405
- width: "35px"
251406
- }, 40, 60, 40, 40, 40, 0]]
251436
+ }, 40, 73, 40, 40, 40, 0]]
251407
251437
  };
251408
251438
  const config02 = {
251409
251439
  colWidths: [0.05, 0.15, 0.15, 0.16, 0.32, 0.1, 0.07],
@@ -253332,7 +253362,8 @@ const DimensionTreeMapCharts = /* @__PURE__ */ defineComponent({
253332
253362
  const useChartTooltips = (chartRef, {
253333
253363
  isMouseOver,
253334
253364
  hoverAllTooltips,
253335
- options
253365
+ options,
253366
+ customTooltipsOptions
253336
253367
  }) => {
253337
253368
  const tooltipsSize = /* @__PURE__ */ shallowRef();
253338
253369
  const tableToolSize = /* @__PURE__ */ shallowRef();
@@ -253361,6 +253392,22 @@ const useChartTooltips = (chartRef, {
253361
253392
  ${valueObj.text} ${valueObj.suffix || ""}</span>
253362
253393
  </li>`;
253363
253394
  });
253395
+ if (customTooltipsOptions?.showTotal) {
253396
+ const value = params.reduce((acc, cur) => acc + cur.value, 0);
253397
+ if (value === null) return "";
253398
+ const rawData = get$2(options).series?.[0].raw_data;
253399
+ const unitFormatter = rawData.unitFormatter || ((v2) => ({ text: v2 }));
253400
+ const precision = !["none", ""].some((val) => val === rawData.unit) && +rawData.precision < 1 ? 2 : +rawData.precision;
253401
+ const valueObj = unitFormatter(value, precision);
253402
+ liHtmlList.push(`<li class="tooltips-content-item">
253403
+ <span class="item-series"
253404
+ style="background-color:transparent;">
253405
+ </span>
253406
+ <span class="item-name" style="color: #fafbfd;">${window.i18n.t("总计")}:</span>
253407
+ <span class="item-value" style="color: #fafbfd;">
253408
+ ${valueObj.text} ${valueObj.suffix || ""}</span>
253409
+ </li>`);
253410
+ }
253364
253411
  liHtmlList = liHtmlList.filter(Boolean);
253365
253412
  if (liHtmlList?.length < 1) return "";
253366
253413
  const maxLen = Math.ceil((window.innerHeight - 100) / 22);
@@ -254032,6 +254079,9 @@ const useEcharts = ({
254032
254079
  resultParams.down_sample_range = downSampleRangeComputed([resultParams.start_time, resultParams.end_time]);
254033
254080
  }
254034
254081
  if (target2.apiFunc === "alertDateHistogram") {
254082
+ if (resultParams.bk_biz_ids) {
254083
+ resultParams.bk_biz_ids = [window.bk_biz_id];
254084
+ }
254035
254085
  if (resultParams.query_string) {
254036
254086
  resultParams.query_string = `(${resultParams.query_string}) AND ${window.APM_QUERY_STRING || ""}`;
254037
254087
  } else {
@@ -255000,7 +255050,7 @@ const DimensionAnalysis = /* @__PURE__ */ defineComponent({
255000
255050
  tableDataLoading.value = false;
255001
255051
  return [];
255002
255052
  }
255003
- const res = props2.detail.graph_panel ? await graphDrillDown({
255053
+ const res = props2.detail.graph_panel ? await alertGraphDrillDown({
255004
255054
  bk_biz_id: props2.detail.bk_biz_id,
255005
255055
  alert_id: props2.detail.id,
255006
255056
  aggregation_method: "avg",
@@ -255937,7 +255987,7 @@ const AlarmCharts = /* @__PURE__ */ defineComponent({
255937
255987
  itemStyle: {
255938
255988
  color: ANOMALY_COLOR
255939
255989
  },
255940
- tooltip: createMarkPointTooltip(t3("异常检测点"))
255990
+ tooltip: createMarkPointTooltip(t3("异常点"))
255941
255991
  })),
255942
255992
  // 告警级别标记
255943
255993
  {
@@ -258002,7 +258052,7 @@ const ExploreChart = /* @__PURE__ */ defineComponent({
258002
258052
  "ref": "chart",
258003
258053
  "class": "explore-chart"
258004
258054
  }, [this.panel && this.showTitle && createVNode(ChartTitle, {
258005
- "class": "draggable-handle",
258055
+ "class": "trace-home-draggable-handle",
258006
258056
  "dragging": this.panel.dragging,
258007
258057
  "isInstant": this.panel.instant,
258008
258058
  "menuList": ["more", "explore", "area", "drill-down", "relate-alert"],
@@ -264631,7 +264681,7 @@ const RetrievalFilter = /* @__PURE__ */ defineComponent({
264631
264681
  if (!item2?.hide) {
264632
264682
  where.push({
264633
264683
  key: item2.key.id,
264634
- condition: ECondition.and,
264684
+ condition: item2?.condition?.id || ECondition.and,
264635
264685
  value: item2.value.map((v2) => v2.id),
264636
264686
  ...Object.keys(item2?.options || {}).length ? {
264637
264687
  options: item2.options
@@ -264677,11 +264727,13 @@ const RetrievalFilter = /* @__PURE__ */ defineComponent({
264677
264727
  for (const v2 of cacheItem.value) {
264678
264728
  cacheValueMap.set(v2.id, v2.name);
264679
264729
  }
264730
+ const condition = w3?.condition || ECondition.and;
264731
+ const conditionName = CONDITION_MAP?.[condition] || w3?.condition || "AND";
264680
264732
  localValue2.push({
264681
264733
  key: cacheItem.key,
264682
264734
  condition: {
264683
- id: ECondition.and,
264684
- name: "AND"
264735
+ id: condition,
264736
+ name: conditionName
264685
264737
  },
264686
264738
  method: {
264687
264739
  id: w3.method,
@@ -264698,11 +264750,13 @@ const RetrievalFilter = /* @__PURE__ */ defineComponent({
264698
264750
  id: w3.key,
264699
264751
  name: fieldsMap.get(w3.key)?.alias || w3.key
264700
264752
  };
264753
+ const condition = w3?.condition || ECondition.and;
264754
+ const conditionName = CONDITION_MAP?.[condition] || w3?.condition || "AND";
264701
264755
  localValue2.push({
264702
264756
  key: keyItem,
264703
264757
  condition: {
264704
- id: ECondition.and,
264705
- name: "AND"
264758
+ id: condition,
264759
+ name: conditionName
264706
264760
  },
264707
264761
  method: {
264708
264762
  id: w3.method,
@@ -264912,7 +264966,39 @@ const RetrievalFilter = /* @__PURE__ */ defineComponent({
264912
264966
  }, null)]), [[resolveDirective("bk-tooltips"), {
264913
264967
  content: this.t("常驻筛选"),
264914
264968
  delay: 300
264915
- }]]), this.$slots?.customRightBtns?.()]), this.isShowSearchBtn && createVNode("div", {
264969
+ }]]), this.isShowFavorite && createVNode(__webpack_exports__default$m, {
264970
+ "extCls": "retrieval-filter-favorite-btn-popover",
264971
+ "clickContentAutoHide": true,
264972
+ "disabled": !this.selectFavorite,
264973
+ "placement": "bottom",
264974
+ "theme": "light padding-0",
264975
+ "trigger": "click"
264976
+ }, {
264977
+ default: () => {
264978
+ return withDirectives(createVNode("div", {
264979
+ "class": "favorite-btn",
264980
+ "onClick": this.handleFavoriteClick
264981
+ }, [this.selectFavorite ? createVNode("span", {
264982
+ "class": "icon-monitor icon-a-savebaocun"
264983
+ }, null) : createVNode("span", {
264984
+ "class": "icon-monitor icon-bookmark"
264985
+ }, null)]), [[resolveDirective("bk-tooltips"), {
264986
+ content: this.t("收藏"),
264987
+ delay: 300
264988
+ }]]);
264989
+ },
264990
+ content: () => {
264991
+ return createVNode("div", {
264992
+ "class": "favorite-btn-popover-content"
264993
+ }, [createVNode("div", {
264994
+ "class": "favorite-btn-item",
264995
+ "onClick": () => this.handleFavorite(true)
264996
+ }, [this.t("覆盖当前收藏")]), createVNode("div", {
264997
+ "class": "favorite-btn-item",
264998
+ "onClick": () => this.handleFavorite(false)
264999
+ }, [this.t("另存为新收藏")])]);
265000
+ }
265001
+ }), this.$slots?.customRightBtns?.()]), this.isShowSearchBtn && createVNode("div", {
264916
265002
  "class": "search-btn",
264917
265003
  "onClick": this.handleClickSearchBtn
264918
265004
  }, [createVNode("span", {
@@ -267944,6 +268030,7 @@ const ExploreFieldSetting = /* @__PURE__ */ defineComponent({
267944
268030
  });
267945
268031
  onBeforeUnmount(() => {
267946
268032
  removeDragListener();
268033
+ handlePopoverHide();
267947
268034
  });
267948
268035
  function addDragListener() {
267949
268036
  dragContainer = containerRef.value?.querySelector?.(".transfer-list.target-list");
@@ -267971,54 +268058,44 @@ const ExploreFieldSetting = /* @__PURE__ */ defineComponent({
267971
268058
  handlePopoverHide();
267972
268059
  return;
267973
268060
  }
267974
- popoverInstance.value = __webpack_exports__$bkPopover({
267975
- target: e3.currentTarget,
267976
- content: containerRef.value,
267977
- trigger: "click",
268061
+ const contentEl = containerRef.value;
268062
+ if (!contentEl) return;
268063
+ const tippyInst = tippy(e3.currentTarget, {
268064
+ content: contentEl,
268065
+ trigger: "manual",
267978
268066
  placement: "bottom-end",
267979
268067
  theme: "light explore-table-field-setting",
267980
268068
  arrow: true,
267981
- boundary: "viewport",
267982
- popoverDelay: 0,
267983
- isShow: false,
267984
- always: false,
267985
- disabled: false,
267986
- clickContentAutoHide: false,
267987
- height: "",
267988
- maxWidth: "",
267989
- maxHeight: "",
267990
- renderDirective: "if",
267991
- allowHtml: false,
267992
- renderType: "auto",
267993
- padding: 0,
267994
- offset: 0,
267995
- zIndex: 0,
267996
- disableTeleport: false,
267997
- autoPlacement: false,
267998
- autoVisibility: false,
267999
- disableOutsideClick: false,
268000
- disableTransform: false,
268001
- modifiers: [],
268002
- extCls: "",
268003
- referenceCls: "",
268004
- hideIgnoreReference: true,
268005
- componentEventDelay: 0,
268006
- forceClickoutside: false,
268007
- immediate: false,
268008
- // @ts-ignore
268009
- onHide: () => {
268010
- handlePopoverHide();
268069
+ interactive: true,
268070
+ maxWidth: "none",
268071
+ offset: [0, -2],
268072
+ appendTo: () => document.body,
268073
+ popperOptions: {
268074
+ modifiers: [{
268075
+ name: "preventOverflow",
268076
+ options: {
268077
+ boundary: "viewport"
268078
+ }
268079
+ }]
268080
+ },
268081
+ onHidden(instance2) {
268082
+ if (popoverInstance.value !== instance2) return;
268083
+ popoverInstance.value = null;
268084
+ instance2.destroy();
268011
268085
  }
268012
268086
  });
268013
- popoverInstance.value.install();
268087
+ popoverInstance.value = tippyInst;
268014
268088
  setTimeout(() => {
268015
- popoverInstance.value?.vm?.show();
268089
+ if (popoverInstance.value !== tippyInst) return;
268090
+ tippyInst.show();
268016
268091
  }, 100);
268017
268092
  }
268018
268093
  function handlePopoverHide() {
268019
- popoverInstance.value?.hide?.();
268020
- popoverInstance.value?.close?.();
268021
- popoverInstance.value = null;
268094
+ const inst = popoverInstance.value;
268095
+ if (inst) {
268096
+ popoverInstance.value = null;
268097
+ inst.destroy();
268098
+ }
268022
268099
  }
268023
268100
  function handleSelectedField(field) {
268024
268101
  if (selectedSet.value.has(field)) {
@@ -273687,8 +273764,8 @@ const TraceExploreTable = /* @__PURE__ */ defineComponent({
273687
273764
  scrollTop: scrollTop2,
273688
273765
  clientHeight
273689
273766
  } = target2;
273690
- const isEnd = !!scrollTop2 && Math.abs(scrollHeight - scrollTop2 - clientHeight) <= 1;
273691
- const noScrollBar = scrollHeight <= clientHeight + 1;
273767
+ const isEnd = !!scrollTop2 && Math.abs(scrollHeight - scrollTop2 - clientHeight) < 1;
273768
+ const noScrollBar = scrollHeight < clientHeight + 1;
273692
273769
  const shouldRequest = noScrollBar || isEnd;
273693
273770
  if (!shouldRequest) return;
273694
273771
  if (!(props2.tableLoading[ExploreTableLoadingEnum.BODY_SKELETON] || props2.tableLoading[ExploreTableLoadingEnum.HEADER_SKELETON] || props2.tableLoading[ExploreTableLoadingEnum.SCROLL])) {
@@ -273784,9 +273861,11 @@ const TraceExploreTable = /* @__PURE__ */ defineComponent({
273784
273861
  };
273785
273862
  const handleStatisticsPopoverHide = (resetActiveStatisticsField = true) => {
273786
273863
  showStatisticsPopover.value = false;
273787
- statisticsPopoverInstance?.hide(0);
273788
- statisticsPopoverInstance?.close();
273789
- statisticsPopoverInstance = null;
273864
+ const inst = statisticsPopoverInstance;
273865
+ if (inst) {
273866
+ statisticsPopoverInstance = null;
273867
+ inst.destroy();
273868
+ }
273790
273869
  if (resetActiveStatisticsField) {
273791
273870
  activeStatisticsField.value = "";
273792
273871
  }
@@ -273796,28 +273875,40 @@ const TraceExploreTable = /* @__PURE__ */ defineComponent({
273796
273875
  handleStatisticsPopoverHide();
273797
273876
  activeStatisticsField.value = item2.name;
273798
273877
  if (!item2.is_dimensions) return;
273799
- statisticsPopoverInstance = __webpack_exports__$bkPopover({
273800
- target: e3.currentTarget,
273801
- content: statisticsListRef.value.$refs.dimensionPopover,
273802
- trigger: "click",
273878
+ const contentEl = statisticsListRef.value?.$refs?.dimensionPopover;
273879
+ if (!contentEl) return;
273880
+ const tippyInst = tippy(e3.currentTarget, {
273881
+ content: contentEl,
273882
+ trigger: "manual",
273803
273883
  placement: "right",
273804
- theme: "light",
273884
+ theme: "light statistics-dimension-popover-cls",
273805
273885
  arrow: true,
273806
- boundary: "viewport",
273807
- extCls: "statistics-dimension-popover-cls",
273808
- width: 405,
273809
- // @ts-expect-error
273810
- distance: -5,
273811
- onHide() {
273886
+ interactive: true,
273887
+ maxWidth: 405,
273888
+ offset: [0, 8],
273889
+ appendTo: () => document.body,
273890
+ popperOptions: {
273891
+ modifiers: [{
273892
+ name: "preventOverflow",
273893
+ options: {
273894
+ boundary: "viewport"
273895
+ }
273896
+ }]
273897
+ },
273898
+ onHidden(instance2) {
273899
+ if (statisticsPopoverInstance !== instance2) return;
273812
273900
  showStatisticsPopover.value = false;
273813
273901
  if (!statisticsSliderShow) {
273814
273902
  activeStatisticsField.value = "";
273815
273903
  }
273904
+ statisticsPopoverInstance = null;
273816
273905
  }
273817
273906
  });
273907
+ statisticsPopoverInstance = tippyInst;
273818
273908
  setTimeout(() => {
273909
+ if (statisticsPopoverInstance !== tippyInst) return;
273819
273910
  showStatisticsPopover.value = true;
273820
- statisticsPopoverInstance.show();
273911
+ tippyInst.show();
273821
273912
  }, 100);
273822
273913
  };
273823
273914
  const statisticsDomRender = () => {
@@ -273881,6 +273972,7 @@ const TraceExploreTable = /* @__PURE__ */ defineComponent({
273881
273972
  onBeforeUnmount(() => {
273882
273973
  scrollPointerEventsTimer && clearTimeout(scrollPointerEventsTimer);
273883
273974
  removeScrollListener();
273975
+ handleStatisticsPopoverHide();
273884
273976
  });
273885
273977
  return {
273886
273978
  tableRowKeyField,
@@ -275664,6 +275756,7 @@ class AlarmService {
275664
275756
  return [];
275665
275757
  }
275666
275758
  const paramsClone = _.cloneDeep(params);
275759
+ paramsClone.bk_biz_ids = [Number(window.bk_biz_id)];
275667
275760
  if (paramsClone.query_string) {
275668
275761
  paramsClone.query_string = `(${paramsClone.query_string}) AND ${window.APM_QUERY_STRING}`;
275669
275762
  } else {
@@ -276436,6 +276529,7 @@ class AlertService extends AlarmService {
276436
276529
  }
276437
276530
  async getAnalysisTopNData(params, isAll = false, options) {
276438
276531
  const paramsClone = _.cloneDeep(params);
276532
+ paramsClone.bk_biz_ids = [Number(window.bk_biz_id)];
276439
276533
  if (paramsClone.query_string) {
276440
276534
  paramsClone.query_string = `(${paramsClone.query_string}) AND ${window.APM_QUERY_STRING || ""}`;
276441
276535
  } else {
@@ -276455,6 +276549,7 @@ class AlertService extends AlarmService {
276455
276549
  }
276456
276550
  async getFilterTableList(params, options) {
276457
276551
  const paramsClone = _.cloneDeep(params);
276552
+ paramsClone.bk_biz_ids = [Number(window.bk_biz_id)];
276458
276553
  if (paramsClone.query_string) {
276459
276554
  paramsClone.query_string = `(${paramsClone.query_string}) AND ${window.APM_QUERY_STRING || ""}`;
276460
276555
  } else {
@@ -276514,6 +276609,7 @@ class AlertService extends AlarmService {
276514
276609
  }
276515
276610
  async getQuickFilterList(params, options) {
276516
276611
  const paramsClone = _.cloneDeep(params);
276612
+ paramsClone.bk_biz_ids = [Number(window.bk_biz_id)];
276517
276613
  if (paramsClone.query_string) {
276518
276614
  paramsClone.query_string = `(${paramsClone.query_string}) AND ${window.APM_QUERY_STRING || ""}`;
276519
276615
  } else {
@@ -276550,7 +276646,7 @@ class AlertService extends AlarmService {
276550
276646
  });
276551
276647
  continue;
276552
276648
  }
276553
- if (["NOT_SHIELDED_ABNORMAL", "SHIELDED_ABNORMAL", "RECOVERED"].includes(item2.id)) {
276649
+ if (["NOT_SHIELDED_ABNORMAL", "SHIELDED_ABNORMAL", "RECOVERED", "CLOSED"].includes(item2.id)) {
276554
276650
  alarmStatusList.push({
276555
276651
  ...item2,
276556
276652
  ...AlarmStatusIconMap[item2.id]
@@ -276597,6 +276693,7 @@ class AlertService extends AlarmService {
276597
276693
  }
276598
276694
  async getRetrievalFilterValues(params, config = {}) {
276599
276695
  const paramsClone = _.cloneDeep(params);
276696
+ paramsClone.bk_biz_ids = [Number(window.bk_biz_id)];
276600
276697
  if (paramsClone.query_string) {
276601
276698
  paramsClone.query_string = `(${paramsClone.query_string}) AND ${window.APM_QUERY_STRING || ""}`;
276602
276699
  } else {
@@ -276649,7 +276746,7 @@ const ActionDetailContent = /* @__PURE__ */ defineComponent({
276649
276746
  show_aggs: false,
276650
276747
  show_overview: false,
276651
276748
  start_time: props2.detail.create_time - oneDay,
276652
- bk_biz_ids: [props2.detail.bk_biz_id]
276749
+ bk_biz_ids: window.APM_QUERY_STRING ? [window.bk_biz_id] : [props2.detail.bk_biz_id]
276653
276750
  };
276654
276751
  const triggerData = await searchAlert({
276655
276752
  ...params,
@@ -319158,7 +319255,7 @@ class IncidentScenario extends BaseScenario {
319158
319255
  /** 告警数量(alert_count) 列 */
319159
319256
  alert_count: {
319160
319257
  getRenderValue: (row) => row?.alert_count,
319161
- clickCallback: (row) => this.jumpToIncidentDetail(row.id, "FailureView"),
319258
+ clickCallback: (row) => this.jumpToIncidentDetail(row.id, "FailureView", row.bk_biz_id),
319162
319259
  cellRenderer: (row, column, renderCtx) => this.renderCount(row, column, renderCtx)
319163
319260
  },
319164
319261
  /** 标签(labels) 列 */
@@ -319198,7 +319295,7 @@ class IncidentScenario extends BaseScenario {
319198
319295
  "class": `lever-rect-text ${renderCtx.isEnabledCellEllipsis(column)}`
319199
319296
  }, [createVNode("a", {
319200
319297
  "class": "lever-rect-link",
319201
- "href": this.getIncidentDetailUrl(row.id)
319298
+ "href": this.getIncidentDetailUrl(row.id, row.bk_biz_id)
319202
319299
  }, [row?.incident_name])])]);
319203
319300
  }
319204
319301
  /**
@@ -319238,7 +319335,7 @@ class IncidentScenario extends BaseScenario {
319238
319335
  * @param {string} id 故障id
319239
319336
  * @param {string} activeTab 跳转至故障页面后激活显示的tab
319240
319337
  */
319241
- getIncidentDetailUrl(id) {
319338
+ getIncidentDetailUrl(id, bkBizId) {
319242
319339
  const timeRange = get$2(this.context.timeRange) || [];
319243
319340
  const {
319244
319341
  href
@@ -319249,12 +319346,18 @@ class IncidentScenario extends BaseScenario {
319249
319346
  },
319250
319347
  query: {
319251
319348
  from: timeRange[0],
319252
- to: timeRange[1]
319349
+ to: timeRange[1],
319350
+ fromPage: "alarm-center"
319253
319351
  }
319254
319352
  });
319353
+ if (bkBizId != null) {
319354
+ const url = new URL(window.location.href);
319355
+ url.searchParams.set("bizId", String(bkBizId));
319356
+ return `${url.origin}${url.pathname}?bizId=${bkBizId}${href}`;
319357
+ }
319255
319358
  return href;
319256
319359
  }
319257
- jumpToIncidentDetail(id, activeTab = "") {
319360
+ jumpToIncidentDetail(id, activeTab = "", bkBizId) {
319258
319361
  const timeRange = get$2(this.context.timeRange) || [];
319259
319362
  this.context.router.push({
319260
319363
  name: "incident-detail",
@@ -319264,9 +319367,17 @@ class IncidentScenario extends BaseScenario {
319264
319367
  query: {
319265
319368
  activeTab,
319266
319369
  from: timeRange[0],
319267
- to: timeRange[1]
319370
+ to: timeRange[1],
319371
+ fromPage: "alarm-center"
319268
319372
  }
319269
319373
  });
319374
+ if (bkBizId != null) {
319375
+ const url = new URL(window.location.href);
319376
+ url.searchParams.set("bizId", String(bkBizId));
319377
+ window.history.replaceState({}, "", url.toString());
319378
+ window.bk_biz_id = +bkBizId;
319379
+ window.cc_biz_id = +bkBizId;
319380
+ }
319270
319381
  }
319271
319382
  /**
319272
319383
  * @description 格式化故障标签数据
@@ -319641,7 +319752,7 @@ const AlarmTrendChart = /* @__PURE__ */ defineComponent({
319641
319752
  switch (store.alarmType) {
319642
319753
  case AlarmType.ALERT: {
319643
319754
  colorMap = Object.entries(AlarmStatusIconMap).reduce((pre2, [key2, value]) => {
319644
- pre2[key2] = value.iconColor;
319755
+ pre2[key2] = key2 === AlarmStatusEnum.CLOSED ? "#DCDEE5" : value.iconColor;
319645
319756
  return pre2;
319646
319757
  }, {});
319647
319758
  break;
@@ -319765,7 +319876,10 @@ const AlarmTrendChart = /* @__PURE__ */ defineComponent({
319765
319876
  "class": "alarm-trend-chart-container"
319766
319877
  }, [createVNode(ExploreChart, {
319767
319878
  "customOptions": {
319768
- formatterData: this.formatterData
319879
+ formatterData: this.formatterData,
319880
+ tooltips: {
319881
+ showTotal: true
319882
+ }
319769
319883
  },
319770
319884
  "panel": this.panel,
319771
319885
  "params": this.params,
@@ -321803,6 +321917,72 @@ const IssuesSliderHeader = /* @__PURE__ */ defineComponent({
321803
321917
  }, [item2.title])]))])]);
321804
321918
  }
321805
321919
  });
321920
+ const IMPACT_SCOPE_KEY_PREFIX = "impact_scope.";
321921
+ const conditionAlertQueryFieldReplace = (conditions, impactScope) => {
321922
+ const result = [];
321923
+ for (const c3 of conditions) {
321924
+ if (!c3.key?.startsWith(IMPACT_SCOPE_KEY_PREFIX)) {
321925
+ result.push(c3);
321926
+ continue;
321927
+ }
321928
+ const dimensionKey = c3.key.slice(IMPACT_SCOPE_KEY_PREFIX.length);
321929
+ const idField = IMPACT_SCOPE_ID_FIELD_MAP[dimensionKey];
321930
+ const resource = impactScope[dimensionKey];
321931
+ if (!idField || !resource || !("instance_list" in resource) || !Array.isArray(resource.instance_list)) {
321932
+ result.push(c3);
321933
+ continue;
321934
+ }
321935
+ const instanceList = resource.instance_list;
321936
+ const isAllInstances = !c3.value?.length;
321937
+ if (isAllInstances) {
321938
+ result.push(c3);
321939
+ continue;
321940
+ }
321941
+ const targetValue = String(c3.value[0] ?? "");
321942
+ const targetInstance = instanceList.find((inst) => String(inst[idField]) === targetValue);
321943
+ if (!targetInstance?.alert_query_fields?.length) {
321944
+ result.push(c3);
321945
+ continue;
321946
+ }
321947
+ const expanded = transformSingleInstanceFields(targetInstance.alert_query_fields, c3.method);
321948
+ result.push(...expanded);
321949
+ }
321950
+ return mergeConditionsByUniqueKey(result);
321951
+ };
321952
+ function mergeConditionsByUniqueKey(result) {
321953
+ const merged = /* @__PURE__ */ new Map();
321954
+ for (const c3 of result) {
321955
+ if (c3.condition !== "or") continue;
321956
+ const uniqueKey = `${c3.key ?? ""}|${c3.method ?? "eq"}|${c3.condition ?? "or"}`;
321957
+ const existing = merged.get(uniqueKey);
321958
+ if (!existing) {
321959
+ merged.set(uniqueKey, { value: new Set(c3.value?.map((v2) => String(v2)) || []), item: c3 });
321960
+ } else {
321961
+ for (const v2 of c3.value ?? []) {
321962
+ existing.value.add(String(v2));
321963
+ }
321964
+ }
321965
+ }
321966
+ const unmerged = result.filter((c3) => c3.condition !== "or");
321967
+ return [
321968
+ ...Array.from(merged.values()).map(({ value, item: item2 }) => ({
321969
+ ...item2,
321970
+ value: [...value]
321971
+ })),
321972
+ ...unmerged
321973
+ ];
321974
+ }
321975
+ function transformSingleInstanceFields(fields, method) {
321976
+ if (!fields?.length) return [];
321977
+ return fields.flatMap(
321978
+ (group) => group.keys.map((key2) => ({
321979
+ key: key2,
321980
+ value: [group.value],
321981
+ method: method || "eq",
321982
+ condition: group.condition
321983
+ }))
321984
+ );
321985
+ }
321806
321986
  const BasicCard = /* @__PURE__ */ defineComponent({
321807
321987
  name: "BasicCard",
321808
321988
  props: {
@@ -340413,7 +340593,7 @@ const IssuesDetailAlarmTable = /* @__PURE__ */ defineComponent({
340413
340593
  key: "issue_id",
340414
340594
  value: [props2.detail.id],
340415
340595
  method: "eq"
340416
- }, ...props2.filterMode === EMode.ui ? props2.conditions : []],
340596
+ }, ...props2.filterMode === EMode.ui ? conditionAlertQueryFieldReplace(props2.conditions, props2.detail?.impact_scope || {}) : []],
340417
340597
  query_string: props2.filterMode === EMode.queryString ? props2.queryString : ""
340418
340598
  };
340419
340599
  if (JSON.stringify(oldValue) === JSON.stringify(newValue)) {
@@ -340435,7 +340615,7 @@ const IssuesDetailAlarmTable = /* @__PURE__ */ defineComponent({
340435
340615
  const [startTime, endTime] = handleTransformToTimestamp(props2.timeRange);
340436
340616
  const params = {
340437
340617
  bk_biz_id: props2.detail.bk_biz_id,
340438
- bk_biz_ids: [props2.detail.bk_biz_id],
340618
+ bk_biz_ids: window.APM_QUERY_STRING ? [window.bk_biz_id] : [props2.detail.bk_biz_id],
340439
340619
  ...commonParams.value,
340440
340620
  start_time: startTime,
340441
340621
  end_time: endTime,
@@ -340757,7 +340937,7 @@ const IssuesRetrievalFilter = /* @__PURE__ */ defineComponent({
340757
340937
  return {
340758
340938
  alarmType: AlarmType.ALERT,
340759
340939
  commonFilterParams: {
340760
- bk_biz_ids: props2.bizIds,
340940
+ bk_biz_ids: window.APM_QUERY_STRING ? [window.bk_biz_id] : props2.bizIds,
340761
340941
  start_time: start2,
340762
340942
  end_time: end2,
340763
340943
  conditions: props2.conditions
@@ -340834,6 +341014,10 @@ const IssuesTrendChart = /* @__PURE__ */ defineComponent({
340834
341014
  commonParams: {
340835
341015
  type: Object,
340836
341016
  default: () => ({})
341017
+ },
341018
+ refreshKey: {
341019
+ type: String,
341020
+ default: ""
340837
341021
  }
340838
341022
  },
340839
341023
  setup(props2) {
@@ -340846,7 +341030,8 @@ const IssuesTrendChart = /* @__PURE__ */ defineComponent({
340846
341030
  const params = computed(() => {
340847
341031
  return {
340848
341032
  ...props2.commonParams,
340849
- interval: "auto"
341033
+ interval: "auto",
341034
+ ...props2.refreshKey ? {} : {}
340850
341035
  };
340851
341036
  });
340852
341037
  const panel = new PanelModel({
@@ -341015,9 +341200,9 @@ const IssuesSliderWrapper = /* @__PURE__ */ defineComponent({
341015
341200
  method: "eq"
341016
341201
  };
341017
341202
  const newValue = {
341018
- bk_biz_ids: [props2.detail.bk_biz_id],
341203
+ bk_biz_ids: window.APM_QUERY_STRING ? [window.bk_biz_id] : [props2.detail.bk_biz_id],
341019
341204
  query_string: props2.filterMode === EMode.ui ? "" : props2.queryString,
341020
- conditions: [issueIdCondition, ...props2.filterMode === EMode.ui ? props2.conditions : []]
341205
+ conditions: [issueIdCondition, ...props2.filterMode === EMode.ui ? conditionAlertQueryFieldReplace(props2.conditions, props2.detail?.impact_scope || {}) : []]
341021
341206
  };
341022
341207
  if (JSON.stringify(oldValue) === JSON.stringify(newValue)) {
341023
341208
  return oldValue;
@@ -341307,6 +341492,7 @@ const IssuesSliderWrapper = /* @__PURE__ */ defineComponent({
341307
341492
  }, [createVNode(IssuesTrendChart, {
341308
341493
  "alertCount": this.alertCount,
341309
341494
  "commonParams": this.commonParams,
341495
+ "refreshKey": this.searchRefreshKey,
341310
341496
  "timeRange": this.timeRange
341311
341497
  }, null), createVNode(DimensionStats, {
341312
341498
  "data": this.dimensionStatsData.fields
@@ -341499,6 +341685,9 @@ const IssuesDetailSideSlider = /* @__PURE__ */ defineComponent({
341499
341685
  }),
341500
341686
  ...conditions.value.length > 1 ? {
341501
341687
  condition: "and"
341688
+ } : {},
341689
+ ...condition2?.condition ? {
341690
+ condition: condition2.condition
341502
341691
  } : {}
341503
341692
  })));
341504
341693
  } else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blueking/monitor-alarm-center",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "蓝鲸监控告警中心抽取出来的独立库,主要提供给APM等宿主使用",
5
5
  "scripts": {},
6
6
  "files": [
@@ -22,4 +22,4 @@
22
22
  "vue": "^3.5.15",
23
23
  "vue-tippy": "^6.3.7"
24
24
  }
25
- }
25
+ }