@alauda-fe/common 1.3.0 → 1.4.0

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 (539) hide show
  1. package/api/helpers.d.ts +8 -16
  2. package/array-form-table/form/component.d.ts +2 -2
  3. package/authorization/interceptor.service.d.ts +0 -1
  4. package/authorization/state.service.d.ts +13 -13
  5. package/business/resource-select/internals/namespace-list/component.d.ts +3 -1
  6. package/business/resource-select/module.d.ts +2 -1
  7. package/core/abstract/base-nested-form-control.d.ts +1 -1
  8. package/core/components/tree/toggle.d.ts +3 -3
  9. package/core/constants/constants.d.ts +4 -1
  10. package/core/constants/patterns.d.ts +12 -0
  11. package/core/constants/status-icons.d.ts +2 -1
  12. package/core/directives/scroll-to-first-invalid.directive.d.ts +1 -1
  13. package/core/module.d.ts +21 -21
  14. package/core/pipes/time.pipe.d.ts +1 -1
  15. package/core/services/context.service.d.ts +3 -4
  16. package/core/services/encode-url-param.interceptor.d.ts +12 -0
  17. package/core/services/feature-gate.service.d.ts +1 -1
  18. package/core/services/public-api.d.ts +1 -0
  19. package/core/services/time.service.d.ts +1 -0
  20. package/core/services/workspace-helper.service.d.ts +3 -1
  21. package/core/types/k8s/crd.d.ts +11 -5
  22. package/core/types/k8s/raw.d.ts +25 -38
  23. package/core/types/resource-definitions.d.ts +57 -71
  24. package/core/utils/common.d.ts +5 -13
  25. package/core/utils/disabled-state.d.ts +20 -0
  26. package/core/utils/public-api.d.ts +3 -0
  27. package/core/utils/router.d.ts +3 -0
  28. package/core/utils/version.d.ts +1 -1
  29. package/core/utils/workload.d.ts +66 -0
  30. package/editable/editable.component.d.ts +23 -0
  31. package/editable/editable.directive.d.ts +9 -0
  32. package/editable/editable.type.d.ts +5 -0
  33. package/editable/public-api.d.ts +2 -0
  34. package/esm2022/abnormal-page/abnormal-page.component.mjs +5 -4
  35. package/esm2022/abnormal-page/abnormal-page.module.mjs +2 -2
  36. package/esm2022/api/acp-common-api.service.mjs +3 -3
  37. package/esm2022/api/api-compatible.interceptor.mjs +1 -1
  38. package/esm2022/api/api-gateway.interceptor.mjs +3 -3
  39. package/esm2022/api/api-gateway.service.mjs +2 -2
  40. package/esm2022/api/cluster-version.service.mjs +3 -3
  41. package/esm2022/api/crypto.interceptor.mjs +4 -4
  42. package/esm2022/api/helpers.mjs +1 -1
  43. package/esm2022/api/k8s-api-resource.service.mjs +4 -4
  44. package/esm2022/api/k8s-api.service.mjs +6 -6
  45. package/esm2022/api/page-visibility.service.mjs +2 -2
  46. package/esm2022/api/platform-ui.service.mjs +2 -2
  47. package/esm2022/api/product.service.mjs +3 -3
  48. package/esm2022/api/project-api.service.mjs +3 -3
  49. package/esm2022/api/resource-update.service.mjs +3 -3
  50. package/esm2022/array-form-table/base-string-map-form.component.mjs +3 -3
  51. package/esm2022/array-form-table/form/component.mjs +104 -111
  52. package/esm2022/array-form-table/form/module.mjs +2 -2
  53. package/esm2022/array-form-table/key-value-form/component.mjs +53 -58
  54. package/esm2022/array-form-table/key-value-table/component.mjs +7 -7
  55. package/esm2022/array-form-table/string-array-form/component.mjs +48 -52
  56. package/esm2022/async-data/async-data-loader.mjs +1 -1
  57. package/esm2022/async-data/async-data.module.mjs +2 -2
  58. package/esm2022/async-data/error-page/component.mjs +21 -22
  59. package/esm2022/async-data/page-state/component.mjs +16 -15
  60. package/esm2022/authorization/app-init-url.mjs +1 -1
  61. package/esm2022/authorization/guard.service.mjs +5 -5
  62. package/esm2022/authorization/interceptor.service.mjs +10 -25
  63. package/esm2022/authorization/session-manage.service.mjs +5 -5
  64. package/esm2022/authorization/state.service.mjs +59 -93
  65. package/esm2022/authorization/storage-token.mjs +2 -2
  66. package/esm2022/business/module-info/api.service.mjs +3 -3
  67. package/esm2022/business/notification-disabled-container/component.mjs +14 -14
  68. package/esm2022/business/resource-select/base-list.mjs +3 -3
  69. package/esm2022/business/resource-select/context.service.mjs +3 -3
  70. package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +22 -20
  71. package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +22 -20
  72. package/esm2022/business/resource-select/exports/namespace-page/component.mjs +6 -5
  73. package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +37 -35
  74. package/esm2022/business/resource-select/exports/project-page/component.mjs +6 -5
  75. package/esm2022/business/resource-select/exports/project-selector/component.mjs +23 -22
  76. package/esm2022/business/resource-select/helpers.directive.mjs +2 -2
  77. package/esm2022/business/resource-select/internals/cluster-list/component.mjs +7 -6
  78. package/esm2022/business/resource-select/internals/data-grid/component.mjs +173 -176
  79. package/esm2022/business/resource-select/internals/icon/component.mjs +3 -2
  80. package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +5 -4
  81. package/esm2022/business/resource-select/internals/namespace-list/component.mjs +145 -100
  82. package/esm2022/business/resource-select/internals/no-data/component.mjs +12 -14
  83. package/esm2022/business/resource-select/internals/project-list/component.mjs +5 -4
  84. package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +7 -6
  85. package/esm2022/business/resource-select/internals/selector-popup/component.mjs +6 -5
  86. package/esm2022/business/resource-select/internals/selector-popup/ref.mjs +1 -1
  87. package/esm2022/business/resource-select/internals/selector-popup/service.mjs +3 -3
  88. package/esm2022/business/resource-select/module.mjs +17 -14
  89. package/esm2022/business/resource-select/project.service.mjs +3 -3
  90. package/esm2022/business/resource-select/utils.mjs +1 -1
  91. package/esm2022/chart/chart.module.mjs +2 -2
  92. package/esm2022/chart/chart.service.mjs +4 -4
  93. package/esm2022/chart/common/axis/axis-label.component.mjs +4 -3
  94. package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +27 -27
  95. package/esm2022/chart/common/axis/x-axis.component.mjs +6 -5
  96. package/esm2022/chart/common/axis/x-plot-lines.component.mjs +7 -6
  97. package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +35 -35
  98. package/esm2022/chart/common/axis/y-axis.component.mjs +9 -8
  99. package/esm2022/chart/common/axis/y-plot-lines.component.mjs +6 -5
  100. package/esm2022/chart/common/chart/chart.component.mjs +41 -43
  101. package/esm2022/chart/common/legend/legend.component.mjs +62 -65
  102. package/esm2022/chart/common/range-area/range-area.component.mjs +13 -11
  103. package/esm2022/chart/common/reference-area/reference-area.component.mjs +4 -3
  104. package/esm2022/chart/common/series/area-series.component.mjs +15 -14
  105. package/esm2022/chart/common/series/bar-path.component.mjs +20 -21
  106. package/esm2022/chart/common/series/bar-series.component.mjs +8 -7
  107. package/esm2022/chart/common/series/line-series.component.mjs +7 -6
  108. package/esm2022/chart/common/series/series.component.mjs +3 -3
  109. package/esm2022/chart/common/tooltip/tooltip.component.mjs +73 -81
  110. package/esm2022/chart/custom-template/dropdown-legend.mjs +23 -25
  111. package/esm2022/chart/utils.mjs +1 -1
  112. package/esm2022/code/code-display-dialog/component.mjs +9 -8
  113. package/esm2022/code/code-editor-configs.mjs +2 -2
  114. package/esm2022/code/code.module.mjs +2 -2
  115. package/esm2022/code/k8s-yaml-display-dialog/component.mjs +9 -8
  116. package/esm2022/code/resource-yaml-display/component.mjs +21 -22
  117. package/esm2022/core/abstract/base-form-container.mjs +3 -3
  118. package/esm2022/core/abstract/base-nested-form-control.mjs +5 -5
  119. package/esm2022/core/components/tree/module.mjs +2 -2
  120. package/esm2022/core/components/tree/node/component.mjs +7 -6
  121. package/esm2022/core/components/tree/outlet.mjs +4 -4
  122. package/esm2022/core/components/tree/padding.mjs +6 -6
  123. package/esm2022/core/components/tree/toggle.mjs +9 -9
  124. package/esm2022/core/components/tree/tree/component.mjs +4 -3
  125. package/esm2022/core/constants/constants.mjs +4 -1
  126. package/esm2022/core/constants/patterns.mjs +15 -4
  127. package/esm2022/core/constants/status-icons.mjs +2 -1
  128. package/esm2022/core/constants/tokens.mjs +1 -1
  129. package/esm2022/core/directives/aui-code-editor.directive.mjs +3 -3
  130. package/esm2022/core/directives/click-outside.directive.mjs +4 -4
  131. package/esm2022/core/directives/declare.directive.mjs +2 -2
  132. package/esm2022/core/directives/disabled.directive.mjs +4 -4
  133. package/esm2022/core/directives/feature-gate.directive.mjs +4 -4
  134. package/esm2022/core/directives/intercept-deactivate.directive.mjs +4 -4
  135. package/esm2022/core/directives/last-form-item.directive.mjs +3 -3
  136. package/esm2022/core/directives/page-header-content.directive.mjs +3 -3
  137. package/esm2022/core/directives/readonly-field.directive.mjs +8 -7
  138. package/esm2022/core/directives/resize.directive.mjs +3 -3
  139. package/esm2022/core/directives/scroll-border-observer.directive.mjs +4 -4
  140. package/esm2022/core/directives/scroll-to-first-invalid.directive.mjs +5 -5
  141. package/esm2022/core/guards/feature.guard.mjs +4 -4
  142. package/esm2022/core/guards/intercept-deactivate.guard.mjs +3 -3
  143. package/esm2022/core/guards/leave-edit-page.guard.mjs +3 -3
  144. package/esm2022/core/guards/project-namespace.guard.mjs +5 -5
  145. package/esm2022/core/module.mjs +8 -13
  146. package/esm2022/core/pipes/calc.pipe.mjs +2 -2
  147. package/esm2022/core/pipes/cron-human-readable.pipe.mjs +2 -2
  148. package/esm2022/core/pipes/crontab-next.pipe.mjs +3 -3
  149. package/esm2022/core/pipes/duration.pipe.mjs +3 -3
  150. package/esm2022/core/pipes/field-not-available.pipe.mjs +2 -2
  151. package/esm2022/core/pipes/img-header.pipe.mjs +2 -2
  152. package/esm2022/core/pipes/img-theme.pipe.mjs +3 -3
  153. package/esm2022/core/pipes/k8s-util.pipe.mjs +24 -24
  154. package/esm2022/core/pipes/k8s-util.pipe.module.mjs +2 -2
  155. package/esm2022/core/pipes/keyvalue.pipe.mjs +3 -3
  156. package/esm2022/core/pipes/marked.pipe.mjs +2 -2
  157. package/esm2022/core/pipes/minimum-format.pipe.mjs +3 -3
  158. package/esm2022/core/pipes/page-env.pipe.mjs +5 -5
  159. package/esm2022/core/pipes/parse-json-translate.pipe.mjs +3 -3
  160. package/esm2022/core/pipes/parse-json.pipe.mjs +2 -2
  161. package/esm2022/core/pipes/pure.pipe.mjs +2 -2
  162. package/esm2022/core/pipes/pure.pipe.module.mjs +2 -2
  163. package/esm2022/core/pipes/safe.pipe.mjs +3 -3
  164. package/esm2022/core/pipes/sanitize.pipe.mjs +3 -3
  165. package/esm2022/core/pipes/time.pipe.mjs +11 -11
  166. package/esm2022/core/pipes/timezone-display.pipe.mjs +2 -2
  167. package/esm2022/core/services/aui-paginator-intl.service.mjs +3 -3
  168. package/esm2022/core/services/aui-tooltip-copy-intl.service.mjs +3 -3
  169. package/esm2022/core/services/context.service.mjs +10 -13
  170. package/esm2022/core/services/custom-code-editor-intl.service.mjs +3 -3
  171. package/esm2022/core/services/encode-url-param.interceptor.mjs +32 -0
  172. package/esm2022/core/services/feature-gate.service.mjs +3 -3
  173. package/esm2022/core/services/form-row-duplicate/form-row-duplicate.service.mjs +3 -3
  174. package/esm2022/core/services/intercept-deactivate.service.mjs +3 -3
  175. package/esm2022/core/services/k8s-util.service.mjs +3 -3
  176. package/esm2022/core/services/on-resize.service.mjs +5 -5
  177. package/esm2022/core/services/public-api.mjs +2 -1
  178. package/esm2022/core/services/silently-navigate.service.mjs +3 -3
  179. package/esm2022/core/services/time.service.mjs +4 -3
  180. package/esm2022/core/services/ui-state.service.mjs +2 -2
  181. package/esm2022/core/services/workspace-helper.service.mjs +8 -2
  182. package/esm2022/core/services/yaml-util.service.mjs +4 -4
  183. package/esm2022/core/types/k8s/crd.mjs +1 -1
  184. package/esm2022/core/types/k8s/raw.mjs +1 -1
  185. package/esm2022/core/types/resource-definitions.mjs +42 -65
  186. package/esm2022/core/utils/cache-store.mjs +1 -1
  187. package/esm2022/core/utils/common.mjs +3 -12
  188. package/esm2022/core/utils/create-recursive-filter.mjs +1 -1
  189. package/esm2022/core/utils/cron-util.mjs +1 -1
  190. package/esm2022/core/utils/decorators.mjs +1 -1
  191. package/esm2022/core/utils/disabled-state.mjs +47 -0
  192. package/esm2022/core/utils/format-number.mjs +1 -1
  193. package/esm2022/core/utils/k8s-util.mjs +1 -1
  194. package/esm2022/core/utils/observable.mjs +1 -1
  195. package/esm2022/core/utils/operators.mjs +1 -1
  196. package/esm2022/core/utils/public-api.mjs +4 -1
  197. package/esm2022/core/utils/request-pool.mjs +1 -1
  198. package/esm2022/core/utils/resources.mjs +1 -1
  199. package/esm2022/core/utils/router.mjs +20 -0
  200. package/esm2022/core/utils/sort-fn.mjs +1 -1
  201. package/esm2022/core/utils/tree.mjs +1 -1
  202. package/esm2022/core/utils/unit.mjs +1 -1
  203. package/esm2022/core/utils/version.mjs +1 -1
  204. package/esm2022/core/utils/workload.mjs +183 -0
  205. package/esm2022/core/utils/workspace.mjs +1 -1
  206. package/esm2022/core/utils/yaml.mjs +1 -1
  207. package/esm2022/custom-columns-setting/component.mjs +30 -23
  208. package/esm2022/disabled-container/disabled-container.component.mjs +4 -3
  209. package/esm2022/disabled-container/disabled-container.module.mjs +2 -2
  210. package/esm2022/editable/editable.component.mjs +136 -0
  211. package/esm2022/editable/editable.directive.mjs +25 -0
  212. package/esm2022/editable/editable.type.mjs +6 -0
  213. package/esm2022/editable/public-api.mjs +3 -0
  214. package/esm2022/editable-text/component.mjs +14 -12
  215. package/esm2022/editable-text/module.mjs +2 -2
  216. package/esm2022/effect-directive/coerce-number.directive.mjs +4 -4
  217. package/esm2022/effect-directive/e2e-attribute-binding.directive.mjs +3 -3
  218. package/esm2022/effect-directive/event.directive.mjs +3 -3
  219. package/esm2022/effect-directive/min-max.directive.mjs +3 -3
  220. package/esm2022/effect-directive/module.mjs +2 -2
  221. package/esm2022/effect-directive/trim.directive.mjs +3 -3
  222. package/esm2022/effect-directive/validators.directive.mjs +3 -3
  223. package/esm2022/exec/module.mjs +2 -2
  224. package/esm2022/exec/placeholder/component.mjs +4 -3
  225. package/esm2022/exec/service.mjs +3 -3
  226. package/esm2022/exec/terminal/component.mjs +87 -86
  227. package/esm2022/exec/terminal-group/component.mjs +42 -44
  228. package/esm2022/feature-gate-forbidden/component/component.mjs +9 -8
  229. package/esm2022/feature-gate-forbidden/module.mjs +2 -2
  230. package/esm2022/form/directives/value-trace.directive.mjs +4 -4
  231. package/esm2022/form/errors-mapper/base-errors-mapper.mjs +3 -3
  232. package/esm2022/form/errors-mapper/default-errors-mapper.service.mjs +3 -3
  233. package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +6 -5
  234. package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +7 -6
  235. package/esm2022/form/errors-mapper/errors-mapper.module.mjs +2 -2
  236. package/esm2022/form/labels-editor/component.mjs +36 -36
  237. package/esm2022/form/taints-editor/component.mjs +42 -42
  238. package/esm2022/form/upload-file/component.mjs +9 -7
  239. package/esm2022/form/utils.mjs +1 -1
  240. package/esm2022/form/validators/async-function-validator.directive.mjs +4 -3
  241. package/esm2022/form/validators/dns1123-subdomain.mjs +1 -1
  242. package/esm2022/form/validators/function-validator.directive.mjs +4 -3
  243. package/esm2022/form/validators/maxlength-minlength-validator.directive.mjs +9 -7
  244. package/esm2022/form/validators/module.mjs +7 -8
  245. package/esm2022/form/validators/not-be-validator.directive.mjs +4 -3
  246. package/esm2022/form/validators/one-of-validator.directive.mjs +4 -3
  247. package/esm2022/form/validators/resource-limit.mjs +1 -1
  248. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +30 -28
  249. package/esm2022/form/validators/strong-password/strong-password-validator.directive.mjs +3 -3
  250. package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +6 -7
  251. package/esm2022/form/validators/utils.mjs +1 -1
  252. package/esm2022/graph-canvas/components/graph-actions.component.mjs +3 -2
  253. package/esm2022/graph-canvas/components/graph-canvas.component.mjs +25 -23
  254. package/esm2022/graph-canvas/components/graph-link.component.mjs +12 -13
  255. package/esm2022/graph-canvas/components/graph-links.component.mjs +3 -2
  256. package/esm2022/graph-canvas/components/graph-node.directive.mjs +4 -4
  257. package/esm2022/graph-canvas/graph-canvas.module.mjs +2 -2
  258. package/esm2022/graph-canvas/graph-store.service.mjs +2 -2
  259. package/esm2022/grid-layout/components/grid/component.mjs +5 -4
  260. package/esm2022/grid-layout/components/grid-items/component.mjs +8 -7
  261. package/esm2022/grid-layout/directives/drag-handler.directive.mjs +3 -3
  262. package/esm2022/grid-layout/directives/placeholder.directive.mjs +3 -3
  263. package/esm2022/grid-layout/directives/remove-handler.directive.mjs +3 -3
  264. package/esm2022/grid-layout/directives/resize-handler.directive.mjs +3 -3
  265. package/esm2022/grid-layout/grid-layout.service.mjs +2 -2
  266. package/esm2022/grid-layout/grid-placeholder.service.mjs +3 -3
  267. package/esm2022/grid-layout/module.mjs +2 -2
  268. package/esm2022/grid-layout/utils/grid.utils.mjs +1 -1
  269. package/esm2022/grid-layout/utils/react-grid-layout.utils.mjs +1 -1
  270. package/esm2022/grid-layout/utils/scroll.utils.mjs +1 -1
  271. package/esm2022/help-document/component.mjs +18 -16
  272. package/esm2022/help-document/directive.mjs +4 -4
  273. package/esm2022/help-document/module.mjs +2 -2
  274. package/esm2022/help-document/service.mjs +4 -4
  275. package/esm2022/iframe-config/config.service.mjs +3 -3
  276. package/esm2022/k8s-resource-list/footer/component.mjs +103 -65
  277. package/esm2022/k8s-resource-list/k8s-resource-list.mjs +3 -6
  278. package/esm2022/k8s-resource-list/k8s-resource-list.module.mjs +19 -7
  279. package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +1 -1
  280. package/esm2022/k8s-resource-list/utils.mjs +7 -3
  281. package/esm2022/k8s-shared/constants.mjs +53 -0
  282. package/esm2022/k8s-shared/k8s-resource-translate-key.pipe.mjs +30 -0
  283. package/esm2022/k8s-shared/k8s-shared-util.service.mjs +3 -3
  284. package/esm2022/k8s-shared/public-api.mjs +2 -1
  285. package/esm2022/k8s-shared/update-description-dialog/component.mjs +10 -9
  286. package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +22 -20
  287. package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +13 -11
  288. package/esm2022/lazy-component/lazy-load-component.mjs +25 -26
  289. package/esm2022/lazy-component/visibility.service.mjs +2 -2
  290. package/esm2022/license/license-api.mjs +3 -3
  291. package/esm2022/license/license-error/component.mjs +25 -25
  292. package/esm2022/license/license-error/module.mjs +2 -2
  293. package/esm2022/license/license.guard.mjs +4 -4
  294. package/esm2022/license/license.service.mjs +4 -4
  295. package/esm2022/list-display/component.mjs +39 -40
  296. package/esm2022/metric-chart/common-chart.service.mjs +3 -3
  297. package/esm2022/metric-chart/helpers.mjs +1 -1
  298. package/esm2022/metric-chart/metric-chart.component.mjs +6 -5
  299. package/esm2022/metric-chart/metric-chart.module.mjs +2 -2
  300. package/esm2022/metric-chart/metric-time-pick.mjs +20 -17
  301. package/esm2022/metric-chart/utils.mjs +1 -1
  302. package/esm2022/multi-search/action-input/component.mjs +180 -181
  303. package/esm2022/multi-search/form/component.mjs +26 -22
  304. package/esm2022/multi-search/multi-search-tags/component.mjs +33 -31
  305. package/esm2022/mutable/element.mjs +1 -1
  306. package/esm2022/mutable/mosaic/mosaic.component.mjs +6 -5
  307. package/esm2022/mutable/mosaic/mosaic.directive.mjs +3 -3
  308. package/esm2022/mutable/mutable.directive.mjs +4 -4
  309. package/esm2022/mutable/mutable.module.mjs +2 -2
  310. package/esm2022/notification/feedback-notification/component.mjs +22 -23
  311. package/esm2022/notification/notification-util.service.mjs +3 -3
  312. package/esm2022/notification/resource-error.interceptor.mjs +3 -3
  313. package/esm2022/overview-banner/overview-banner.component.mjs +3 -2
  314. package/esm2022/overview-banner/overview-banner.module.mjs +2 -2
  315. package/esm2022/page-guard/component/component.mjs +70 -78
  316. package/esm2022/page-guard/component/helper-directives.mjs +5 -5
  317. package/esm2022/page-guard/module.mjs +2 -2
  318. package/esm2022/page-scaffold/module.mjs +2 -2
  319. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb-slot.directive.mjs +3 -3
  320. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +182 -91
  321. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.service.mjs +2 -2
  322. package/esm2022/page-scaffold/navigation/breadcrumb/module.mjs +2 -2
  323. package/esm2022/page-scaffold/navigation/lottie-icons/animation-data.mjs +1 -3
  324. package/esm2022/page-scaffold/navigation/lottie-icons/lottie-icon.directive.mjs +3 -3
  325. package/esm2022/page-scaffold/navigation/lottie-icons/module.mjs +2 -2
  326. package/esm2022/page-scaffold/navigation/lottie-icons/replace-lottie-colors.mjs +11 -11
  327. package/esm2022/page-scaffold/navigation/module.mjs +2 -2
  328. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +128 -99
  329. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.mjs +30 -32
  330. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +21 -19
  331. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.module.mjs +4 -4
  332. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.types.mjs +1 -1
  333. package/esm2022/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.mjs +9 -8
  334. package/esm2022/page-scaffold/page/context.service.mjs +2 -2
  335. package/esm2022/page-scaffold/page/helper-directives.mjs +10 -10
  336. package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +11 -11
  337. package/esm2022/page-scaffold/page/notices/notice.component.mjs +15 -15
  338. package/esm2022/page-scaffold/page/page.component.mjs +20 -20
  339. package/esm2022/page-scaffold/page/page.module.mjs +2 -2
  340. package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +40 -39
  341. package/esm2022/page-scaffold/page-header/account-menu/module.mjs +2 -2
  342. package/esm2022/page-scaffold/page-header/common-layout/common-layout.module.mjs +2 -2
  343. package/esm2022/page-scaffold/page-header/common-layout/context.service.mjs +4 -4
  344. package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +58 -59
  345. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +68 -73
  346. package/esm2022/page-scaffold/page-header/common-layout/product-select/service.mjs +2 -2
  347. package/esm2022/page-scaffold/page-header/common-layout/project-select/base-selection.mjs +3 -3
  348. package/esm2022/page-scaffold/page-header/common-layout/store.service.mjs +3 -3
  349. package/esm2022/page-scaffold/page-header/component.mjs +24 -25
  350. package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +15 -14
  351. package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +27 -27
  352. package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +22 -21
  353. package/esm2022/page-scaffold/page-header/header-notify/header-notify.module.mjs +2 -2
  354. package/esm2022/page-scaffold/page-header/header-notify/notify.service.mjs +5 -5
  355. package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +59 -62
  356. package/esm2022/page-scaffold/page-header/help-menu/module.mjs +2 -2
  357. package/esm2022/page-scaffold/page-header/module.mjs +2 -2
  358. package/esm2022/permission/helpers.mjs +1 -1
  359. package/esm2022/permission/k8s-permission.service.mjs +3 -3
  360. package/esm2022/permission/permission.guard.mjs +3 -3
  361. package/esm2022/pie-derivative-chart/donut-status/component.mjs +29 -28
  362. package/esm2022/pie-derivative-chart/indicator-color.directive.mjs +3 -3
  363. package/esm2022/pie-derivative-chart/numerical-limit.pipe.mjs +3 -3
  364. package/esm2022/pie-derivative-chart/pie-derivative-chart.module.mjs +7 -7
  365. package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +84 -78
  366. package/esm2022/pie-derivative-chart/units.mjs +14 -0
  367. package/esm2022/pod-status/component.mjs +167 -0
  368. package/esm2022/pod-status/public-api.mjs +4 -0
  369. package/esm2022/pod-status/status.mjs +84 -0
  370. package/esm2022/pod-status/typings.mjs +19 -0
  371. package/esm2022/public-api.mjs +4 -1
  372. package/esm2022/searchable-selector/component.mjs +73 -75
  373. package/esm2022/searchable-selector/module.mjs +2 -2
  374. package/esm2022/skeleton/item/component.mjs +4 -3
  375. package/esm2022/skeleton/module.mjs +2 -2
  376. package/esm2022/skeleton/nav-skeleton/component.mjs +8 -7
  377. package/esm2022/table/component.mjs +275 -276
  378. package/esm2022/table/helper.mjs +1 -1
  379. package/esm2022/table/helpers.directive.mjs +3 -3
  380. package/esm2022/table/module.mjs +40 -31
  381. package/esm2022/table/util.service.mjs +4 -4
  382. package/esm2022/translate/helpers.mjs +1 -1
  383. package/esm2022/translate/i18n-config.mjs +3 -8
  384. package/esm2022/translate/translate.directive.mjs +9 -9
  385. package/esm2022/translate/translate.module.mjs +2 -2
  386. package/esm2022/translate/translate.pipe.mjs +3 -3
  387. package/esm2022/translate/translate.service.mjs +4 -4
  388. package/esm2022/view-chart/custom-template/dropdown-legend.mjs +24 -26
  389. package/esm2022/view-chart/legend/legend.component.mjs +66 -70
  390. package/esm2022/view-chart/view-chart.component.mjs +94 -105
  391. package/esm2022/view-chart/view-chart.module.mjs +2 -2
  392. package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +24 -26
  393. package/esm2022/view-zchart/legend/legend.component.mjs +77 -82
  394. package/esm2022/view-zchart/units.mjs +1 -1
  395. package/esm2022/view-zchart/view-zchart.component.mjs +111 -120
  396. package/esm2022/view-zchart/view-zchart.module.mjs +2 -2
  397. package/esm2022/widget/card-section/card-section.component.mjs +13 -12
  398. package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +45 -46
  399. package/esm2022/widget/current-time/component.mjs +4 -3
  400. package/esm2022/widget/date-range-picker/component.mjs +42 -40
  401. package/esm2022/widget/field-set/column/component.mjs +5 -3
  402. package/esm2022/widget/field-set/group/component.mjs +3 -2
  403. package/esm2022/widget/field-set/item/component.mjs +8 -7
  404. package/esm2022/widget/foldable-block/component.mjs +25 -24
  405. package/esm2022/widget/foldable-item-in-table/component.mjs +41 -42
  406. package/esm2022/widget/loading-mask/loading-mask.component.mjs +9 -9
  407. package/esm2022/widget/password-input/component.mjs +72 -71
  408. package/esm2022/widget/public-api.mjs +2 -1
  409. package/esm2022/widget/relative-time/component.mjs +4 -3
  410. package/esm2022/widget/resource-label/component.mjs +131 -0
  411. package/esm2022/widget/resource-multi-select/component.mjs +20 -19
  412. package/esm2022/widget/resource-multi-select/util.mjs +1 -1
  413. package/esm2022/widget/search-panel/component.mjs +3 -2
  414. package/esm2022/widget/search-panel/helper.directive.mjs +2 -2
  415. package/esm2022/widget/search-panel/search-item/component.mjs +3 -2
  416. package/esm2022/widget/select-prefix-label/directive.mjs +4 -4
  417. package/esm2022/widget/status-icon/status-icon.component.mjs +16 -15
  418. package/esm2022/widget/tags-label/component.mjs +61 -62
  419. package/esm2022/widget/terminating-tag/component.mjs +4 -3
  420. package/esm2022/widget/text-ellipsis/component.mjs +11 -11
  421. package/esm2022/widget/text-tooltip/directive.mjs +3 -3
  422. package/esm2022/widget/text-with-url/component.mjs +8 -8
  423. package/esm2022/widget/widget.module.mjs +2 -2
  424. package/esm2022/widget/zero-state/zero-state.component.mjs +45 -30
  425. package/esm2022/window-channel/base-window-channel.mjs +1 -1
  426. package/esm2022/window-channel/directives/host-link.directive.mjs +2 -2
  427. package/esm2022/window-channel/host-window-channel.service.mjs +3 -3
  428. package/esm2022/window-channel/plugin-window-channel.service.mjs +3 -3
  429. package/esm2022/workload-status-icon/component.mjs +72 -0
  430. package/esm2022/workload-status-icon/public-api.mjs +2 -0
  431. package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +68 -71
  432. package/esm2022/xterm/xterm-terminal/xterm-terminal.directive.mjs +3 -3
  433. package/esm2022/xterm/xterm.component.mjs +5 -4
  434. package/exec/terminal/component.d.ts +1 -4
  435. package/form/validators/async-function-validator.directive.d.ts +1 -1
  436. package/form/validators/function-validator.directive.d.ts +1 -1
  437. package/form/validators/maxlength-minlength-validator.directive.d.ts +2 -2
  438. package/form/validators/module.d.ts +8 -8
  439. package/form/validators/not-be-validator.directive.d.ts +1 -1
  440. package/form/validators/one-of-validator.directive.d.ts +1 -1
  441. package/form/validators/resource-limit.d.ts +1 -1
  442. package/form/validators/strong-password/strong-password-validator.module.d.ts +2 -2
  443. package/graph-canvas/components/graph-canvas.component.d.ts +2 -2
  444. package/k8s-resource-list/footer/component.d.ts +9 -1
  445. package/k8s-resource-list/k8s-resource-list.module.d.ts +1 -1
  446. package/k8s-resource-list/k8s-resource-paged-list.d.ts +2 -2
  447. package/k8s-shared/constants.d.ts +7 -0
  448. package/k8s-shared/k8s-resource-translate-key.pipe.d.ts +9 -0
  449. package/k8s-shared/public-api.d.ts +1 -0
  450. package/license/license-api.d.ts +1 -1
  451. package/license/license-error/component.d.ts +1 -1
  452. package/metric-chart/helpers.d.ts +1 -1
  453. package/package.json +2 -1
  454. package/page-guard/component/component.d.ts +1 -1
  455. package/page-scaffold/navigation/breadcrumb/breadcrumb.component.d.ts +2 -0
  456. package/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.d.ts +1 -0
  457. package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts +8 -1
  458. package/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.d.ts +2 -1
  459. package/page-scaffold/page-header/common-layout/product-select/component.d.ts +1 -3
  460. package/page-scaffold/page-header/header-notify/utils.d.ts +3 -3
  461. package/pie-derivative-chart/radial-bar/radial-bar-chart.component.d.ts +4 -0
  462. package/pie-derivative-chart/units.d.ts +2 -0
  463. package/pod-status/component.d.ts +27 -0
  464. package/pod-status/public-api.d.ts +3 -0
  465. package/pod-status/status.d.ts +4 -0
  466. package/pod-status/typings.d.ts +16 -0
  467. package/public-api.d.ts +3 -0
  468. package/styles/ansi-color.scss +131 -0
  469. package/styles/global.scss +4 -1
  470. package/styles/tailwind-preset.scss +1 -1
  471. package/table/component.d.ts +6 -4
  472. package/table/helper.d.ts +1 -1
  473. package/table/module.d.ts +23 -7
  474. package/widget/public-api.d.ts +1 -0
  475. package/widget/resource-label/component.d.ts +25 -0
  476. package/widget/zero-state/zero-state.component.d.ts +5 -2
  477. package/workload-status-icon/component.d.ts +36 -0
  478. package/workload-status-icon/public-api.d.ts +1 -0
  479. package/a-chart/a-chart.module.d.ts +0 -16
  480. package/a-chart/base-chart.d.ts +0 -24
  481. package/a-chart/chart-status.component.d.ts +0 -15
  482. package/a-chart/chart.component.d.ts +0 -56
  483. package/a-chart/components/base-component.d.ts +0 -12
  484. package/a-chart/components/legend/base-legend.component.d.ts +0 -31
  485. package/a-chart/components/legend/dropdown-legend.d.ts +0 -17
  486. package/a-chart/components/legend/legend.component.d.ts +0 -17
  487. package/a-chart/components/legend/public-api.d.ts +0 -3
  488. package/a-chart/components/public-api.d.ts +0 -3
  489. package/a-chart/components/title.component.d.ts +0 -17
  490. package/a-chart/constant.d.ts +0 -6
  491. package/a-chart/public-api.d.ts +0 -12
  492. package/a-chart/types.d.ts +0 -38
  493. package/a-chart/utils.d.ts +0 -13
  494. package/a-metric-chart/a-metric-chart.component.d.ts +0 -154
  495. package/a-metric-chart/a-metric-chart.module.d.ts +0 -16
  496. package/a-metric-chart/bar-gauge/bar-gauge.component.d.ts +0 -25
  497. package/a-metric-chart/base-chart.component.d.ts +0 -14
  498. package/a-metric-chart/metric-chart-refresh.service.d.ts +0 -8
  499. package/a-metric-chart/public-api.d.ts +0 -14
  500. package/a-metric-chart/stat-chart/stat-chart.component.d.ts +0 -11
  501. package/a-metric-chart/table-chart/table-chart.component.d.ts +0 -29
  502. package/a-metric-chart/types.d.ts +0 -130
  503. package/a-metric-chart/utils/public-api.d.ts +0 -3
  504. package/a-metric-chart/utils/range.d.ts +0 -1
  505. package/a-metric-chart/utils/unit.d.ts +0 -48
  506. package/a-metric-chart/utils/util.d.ts +0 -45
  507. package/api/monitor-api.service.d.ts +0 -104
  508. package/esm2022/a-chart/a-chart.module.mjs +0 -76
  509. package/esm2022/a-chart/base-chart.mjs +0 -98
  510. package/esm2022/a-chart/chart-status.component.mjs +0 -195
  511. package/esm2022/a-chart/chart.component.mjs +0 -307
  512. package/esm2022/a-chart/components/base-component.mjs +0 -23
  513. package/esm2022/a-chart/components/legend/base-legend.component.mjs +0 -111
  514. package/esm2022/a-chart/components/legend/dropdown-legend.mjs +0 -199
  515. package/esm2022/a-chart/components/legend/legend.component.mjs +0 -102
  516. package/esm2022/a-chart/components/legend/public-api.mjs +0 -4
  517. package/esm2022/a-chart/components/public-api.mjs +0 -4
  518. package/esm2022/a-chart/components/title.component.mjs +0 -99
  519. package/esm2022/a-chart/constant.mjs +0 -24
  520. package/esm2022/a-chart/public-api.mjs +0 -13
  521. package/esm2022/a-chart/types.mjs +0 -7
  522. package/esm2022/a-chart/utils.mjs +0 -37
  523. package/esm2022/a-metric-chart/a-metric-chart.component.mjs +0 -937
  524. package/esm2022/a-metric-chart/a-metric-chart.module.mjs +0 -74
  525. package/esm2022/a-metric-chart/bar-gauge/bar-gauge.component.mjs +0 -166
  526. package/esm2022/a-metric-chart/base-chart.component.mjs +0 -30
  527. package/esm2022/a-metric-chart/metric-chart-refresh.service.mjs +0 -18
  528. package/esm2022/a-metric-chart/public-api.mjs +0 -15
  529. package/esm2022/a-metric-chart/stat-chart/stat-chart.component.mjs +0 -122
  530. package/esm2022/a-metric-chart/table-chart/table-chart.component.mjs +0 -201
  531. package/esm2022/a-metric-chart/types.mjs +0 -26
  532. package/esm2022/a-metric-chart/utils/public-api.mjs +0 -4
  533. package/esm2022/a-metric-chart/utils/range.mjs +0 -35
  534. package/esm2022/a-metric-chart/utils/unit.mjs +0 -83
  535. package/esm2022/a-metric-chart/utils/util.mjs +0 -243
  536. package/esm2022/api/monitor-api.service.mjs +0 -158
  537. package/esm2022/notification/notification-util.module.mjs +0 -32
  538. package/esm2022/page-scaffold/navigation/lottie-icons/animations/dashboard.json +0 -1
  539. package/notification/notification-util.module.d.ts +0 -10
@@ -1,243 +0,0 @@
1
- import dayjs from 'dayjs';
2
- import { get, isFunction, template } from 'lodash-es';
3
- import { CHART_TIME_FORMAT } from '../../a-chart/public-api';
4
- import { FIELD_NOT_AVAILABLE_PLACEHOLDER, } from '../../core/public-api';
5
- import { PICKER_TIME_RANGES } from '../../metric-chart/public-api';
6
- import { roundInterval } from './range';
7
- export function handleMetricParams(params, { variableSource, start, end, step, isIndex }) {
8
- // eslint-disable-next-line sonarjs/cognitive-complexity
9
- const value = params.map((cur, index) => {
10
- const v = Array.isArray(variableSource)
11
- ? variableSource.filter((item, i) => Object.keys(item).length &&
12
- ((isIndex
13
- ? index === i
14
- : cur?.variables?.every(v => Object.keys(item).includes(v))) ||
15
- cur.expr))
16
- : cur.variables?.length && variableSource
17
- ? [variableSource]
18
- : [];
19
- const variable = v.map(value => {
20
- return cur.expr
21
- ? value
22
- : cur.variables?.reduce((pre, key) => value[key]
23
- ? {
24
- ...pre,
25
- [key]: value[key],
26
- }
27
- : pre, {});
28
- });
29
- const indicators = cur.indicators || cur.expr;
30
- return {
31
- indicators: cur.indicators,
32
- range: cur.range,
33
- instant: cur.instant,
34
- exprs: cur.expr ? [indicators] : [],
35
- variables: variable,
36
- };
37
- });
38
- return {
39
- indicators: value,
40
- start,
41
- end,
42
- step,
43
- };
44
- }
45
- export function handleChartData({ indicatorParams, metricParams }, data) {
46
- if (!data) {
47
- return [];
48
- }
49
- const { dependentData } = metricParams;
50
- return dependentData
51
- ? dependOnData(indicatorParams, data)
52
- : dependOnIndicator(indicatorParams, data);
53
- }
54
- export function dependOnIndicator(indicatorParams, data) {
55
- return indicatorParams.reduce((pre, params) => {
56
- const metricData = data?.find(item => item.indicator === params.indicators);
57
- return [...pre, handleDataResult(params, metricData?.result?.[0])];
58
- }, []);
59
- }
60
- export function dependOnData(indicatorParams, data) {
61
- const params = indicatorParams[0];
62
- return data?.reduce((pre, res) => {
63
- if (params.indicators === res.indicator || params.expr === res.query) {
64
- return [
65
- ...pre,
66
- ...res.result.map(item => handleDataResult(params, item)),
67
- ];
68
- }
69
- return pre;
70
- }, []);
71
- }
72
- export function handleDataResult(params, res) {
73
- return {
74
- name: handleLegend(params, res),
75
- ...(params.instant && !params.range && { type: 'point' }),
76
- ...(params.instant && { instant: true }),
77
- range: params.range,
78
- values: res?.values?.map(d => ({
79
- x: d[0],
80
- y: d[1],
81
- })),
82
- };
83
- }
84
- export function handleLegend(params, result) {
85
- return isFunction(params?.legend)
86
- ? params.legend(params, result)
87
- : getLegendName(params?.legend, result?.metric || {});
88
- }
89
- export const LEGEND_TEMPLATE_OPTIONS = Object.freeze({
90
- // eslint-disable-next-line regexp/match-any, regexp/strict
91
- interpolate: /{{\.([\S\s]+?)}}/g,
92
- });
93
- export function getLegendName(metricKey, metric) {
94
- if (!metricKey && !Object.keys(metric || {})?.length) {
95
- return FIELD_NOT_AVAILABLE_PLACEHOLDER;
96
- }
97
- if (!metricKey && metric) {
98
- return JSON.stringify(metric);
99
- }
100
- const metricKeys = metricKey?.split(',').map(matchLegend);
101
- if (metricKeys?.length > 1) {
102
- const value = metric?.[metricKeys.find(item => metric[item])];
103
- return value || metricKey;
104
- }
105
- return (getLegendTemplate(metricKey, metric) ||
106
- legendFormat(metricKey, metric) ||
107
- metricKey);
108
- }
109
- function legendFormat(str, vars) {
110
- // eslint-disable-next-line unicorn/better-regex
111
- const regex = /\{\{\.(.+?)\}\}/g;
112
- return (str.replaceAll(regex, (match, capture) => {
113
- if (vars[capture]) {
114
- return vars[capture];
115
- }
116
- if (match) {
117
- return '';
118
- }
119
- return '';
120
- }) || 'Value');
121
- }
122
- function getLegendTemplate(str, obj) {
123
- let name;
124
- try {
125
- name = get(obj, str) || template(str, LEGEND_TEMPLATE_OPTIONS)(obj);
126
- }
127
- catch {
128
- name = '';
129
- }
130
- return name;
131
- }
132
- function matchLegend(value) {
133
- // eslint-disable-next-line unicorn/better-regex
134
- return value.match(/\{\{\.(.+?)\}\}/)?.[1] || value;
135
- }
136
- // 填充空数据
137
- // eslint-disable-next-line sonarjs/cognitive-complexity
138
- export function fillNullData({ start, end, step }, res = [], isZero = false, stepLine = false) {
139
- if (!+start || !+end) {
140
- return res;
141
- }
142
- const _step = step || roundInterval(start, end);
143
- const curStart = +start;
144
- const nullValue = isZero ? 0 : null;
145
- const curEnd = start + step * ((end - start) / step);
146
- const preX = stepLine
147
- ? {
148
- preX: dayjs(curStart)
149
- .subtract((end - start) / 6, 's')
150
- .valueOf(),
151
- }
152
- : {};
153
- const result = [
154
- ...(curStart === res[0]?.x ? [] : [{ x: curStart, y: nullValue, ...preX }]),
155
- ...res,
156
- ...(res.at(-1)?.x >= curEnd ? [] : [{ x: curEnd, y: nullValue }]),
157
- ];
158
- // query 返回数据可能存在某个时间段无数据情况,会导致前端bug
159
- // 通过 step 计算出 总数据。
160
- // 在出现一开始数据缺失情况,先给数据添加开始时间数据,和结束时间数据。
161
- // 在进行遍历,判读当前数据和下一跳数据事件差 是否是这个 step,
162
- // 如果不是计算出两者相差 几条数据,然后进行填充
163
- const data = result.reduce((acc, prev, index) => {
164
- const diff = result[index + 1] && result[index + 1].x * 1000 - prev.x * 1000;
165
- const stepM = _step * 1000;
166
- // 后端可能出现 +Ifn 导致成 NaN,设置为 null
167
- const curValue = {
168
- ...prev,
169
- y: prev.y,
170
- };
171
- if (diff && diff !== stepM) {
172
- const total = Math.ceil(diff / stepM - 1);
173
- const data = Array.from({ length: total || 0 })
174
- .fill(0)
175
- .reduce((old, _curr, i) => {
176
- const x = i === 0 ? prev.x * 1000 + stepM : old[i - 1].x * 1000 + stepM;
177
- return [
178
- ...old,
179
- {
180
- x: x / 1000,
181
- y: nullValue,
182
- ...(stepLine
183
- ? { preX: i === 0 ? result[index].x : old[i - 1].x }
184
- : {}),
185
- },
186
- ];
187
- }, []);
188
- return [...acc, curValue, ...data];
189
- }
190
- return [...acc, curValue];
191
- }, []);
192
- return data.sort((a, b) => a.x - b.x);
193
- }
194
- export function handleDateAxisLabelFormats(params, isRich) {
195
- if (params) {
196
- const diff = params.end - params.start;
197
- const m1 = 24 * 60 * 60;
198
- const m3 = 3 * m1;
199
- const m7 = 7 * m1;
200
- const M_D_FORMAT = 'MM-DD';
201
- const MD_HS_FORMAT = `${M_D_FORMAT} ${CHART_TIME_FORMAT}`;
202
- return diff >= m7
203
- ? isRich
204
- ? MD_HS_FORMAT
205
- : M_D_FORMAT
206
- : diff < m7 && (diff >= m3 || diff > m1)
207
- ? MD_HS_FORMAT
208
- : CHART_TIME_FORMAT;
209
- }
210
- }
211
- export function limitMaxTooltipItem(context, limit = 15) {
212
- return context.slice(0, limit);
213
- }
214
- export const VARIABLE_KEY_CLUSTER = '$cluster';
215
- export const VARIABLE_KEY_NAMESPACE = '$namespace';
216
- export function replaceExprVariable(expr, variable) {
217
- let data = Array.isArray(expr) ? expr.join('|') : expr;
218
- const variableKeys = Object.keys(variable || {});
219
- const variableValues = Object.values(variable || {});
220
- const vars = data && typeof data.match === 'function' ? data.match(/\$\w+/g) : [];
221
- if (!variableKeys.length ||
222
- !variableKeys.some(v => vars?.some(item => item.replace('$', '') === v))) {
223
- return data;
224
- }
225
- vars
226
- .sort((a, b) => b.length - a.length)
227
- .forEach(key => {
228
- const k = key.replace('$', '');
229
- const index = variableKeys.indexOf(k);
230
- if (index >= 0) {
231
- const v = variableValues[index];
232
- data = data?.replace(new RegExp(`\\$${k}`, 'g'), Array.isArray(v) ? v.join('|') : v);
233
- }
234
- });
235
- return data;
236
- }
237
- export function findTimeRange(diff) {
238
- const time = PICKER_TIME_RANGES.find(item => {
239
- return item.endTime() - item.startTime() === diff;
240
- });
241
- return time ? { start: time.startTime(), end: time.endTime() } : null;
242
- }
243
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hLW1ldHJpYy1jaGFydC91dGlscy91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFjLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUVMLCtCQUErQixHQUVoQyxNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBR25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFeEMsTUFBTSxVQUFVLGtCQUFrQixDQUNoQyxNQUF5QixFQUN6QixFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQWdCO0lBRTNELHdEQUF3RDtJQUN4RCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQ3RDLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUNuQixDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUNWLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTTtnQkFDeEIsQ0FBQyxDQUFDLE9BQU87b0JBQ1AsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDO29CQUNiLENBQUMsQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFB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dCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgeyBnZXQsIGlzRnVuY3Rpb24sIHRlbXBsYXRlIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IERhdGFJdGVtLCBUb29sdGlwVmFsdWUgfSBmcm9tICd6ei1jaGFydCc7XG5cbmltcG9ydCB7IENIQVJUX1RJTUVfRk9STUFULCBBQ2hhcnREYXRhIH0gZnJvbSAnLi4vLi4vYS1jaGFydC9wdWJsaWMtYXBpJztcbmltcG9ydCB7IE1vbml0b3JNZXRyaWMsIE1vbml0b3JNZXRyaWNSZXN1bHQgfSBmcm9tICcuLi8uLi9hcGkvcHVibGljLWFwaSc7XG5pbXBvcnQge1xuICBEaWN0aW9uYXJ5LFxuICBGSUVMRF9OT1RfQVZBSUxBQkxFX1BMQUNFSE9MREVSLFxuICBTdHJpbmdNYXAsXG59IGZyb20gJy4uLy4uL2NvcmUvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBQSUNLRVJfVElNRV9SQU5HRVMgfSBmcm9tICcuLi8uLi9tZXRyaWMtY2hhcnQvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBGZXRjaFBhcmFtcywgSW5kaWNhdG9yUGFyYW1zLCBNZXRyaWNQYXJhbXMgfSBmcm9tICcuLi90eXBlcyc7XG5cbmltcG9ydCB7IHJvdW5kSW50ZXJ2YWwgfSBmcm9tICcuL3JhbmdlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZU1ldHJpY1BhcmFtcyhcbiAgcGFyYW1zOiBJbmRpY2F0b3JQYXJhbXNbXSxcbiAgeyB2YXJpYWJsZVNvdXJjZSwgc3RhcnQsIGVuZCwgc3RlcCwgaXNJbmRleCB9OiBNZXRyaWNQYXJhbXMsXG4pIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbiAgY29uc3QgdmFsdWUgPSBwYXJhbXMubWFwKChjdXIsIGluZGV4KSA9PiB7XG4gICAgY29uc3QgdiA9IEFycmF5LmlzQXJyYXkodmFyaWFibGVTb3VyY2UpXG4gICAgICA/IHZhcmlhYmxlU291cmNlLmZpbHRlcihcbiAgICAgICAgICAoaXRlbSwgaSkgPT5cbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGl0ZW0pLmxlbmd0aCAmJlxuICAgICAgICAgICAgKChpc0luZGV4XG4gICAgICAgICAgICAgID8gaW5kZXggPT09IGlcbiAgICAgICAgICAgICAgOiBjdXI/LnZhcmlhYmxlcz8uZXZlcnkodiA9PiBPYmplY3Qua2V5cyhpdGVtKS5pbmNsdWRlcyh2KSkpIHx8XG4gICAgICAgICAgICAgIGN1ci5leHByKSxcbiAgICAgICAgKVxuICAgICAgOiBjdXIudmFyaWFibGVzPy5sZW5ndGggJiYgdmFyaWFibGVTb3VyY2VcbiAgICAgID8gW3ZhcmlhYmxlU291cmNlXVxuICAgICAgOiBbXTtcbiAgICBjb25zdCB2YXJpYWJsZTogU3RyaW5nTWFwW10gPSB2Lm1hcCh2YWx1ZSA9PiB7XG4gICAgICByZXR1cm4gY3VyLmV4cHJcbiAgICAgICAgPyB2YWx1ZVxuICAgICAgICA6IGN1ci52YXJpYWJsZXM/LnJlZHVjZShcbiAgICAgICAgICAgIChwcmUsIGtleSkgPT5cbiAgICAgICAgICAgICAgdmFsdWVba2V5XVxuICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICAuLi5wcmUsXG4gICAgICAgICAgICAgICAgICAgIFtrZXldOiB2YWx1ZVtrZXldLFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDogcHJlLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgKTtcbiAgICB9KTtcbiAgICBjb25zdCBpbmRpY2F0b3JzID0gY3VyLmluZGljYXRvcnMgfHwgY3VyLmV4cHI7XG4gICAgcmV0dXJuIHtcbiAgICAgIGluZGljYXRvcnM6IGN1ci5pbmRpY2F0b3JzLFxuICAgICAgcmFuZ2U6IGN1ci5yYW5nZSxcbiAgICAgIGluc3RhbnQ6IGN1ci5pbnN0YW50LFxuICAgICAgZXhwcnM6IGN1ci5leHByID8gW2luZGljYXRvcnNdIDogW10sXG4gICAgICB2YXJpYWJsZXM6IHZhcmlhYmxlLFxuICAgIH07XG4gIH0pO1xuICByZXR1cm4ge1xuICAgIGluZGljYXRvcnM6IHZhbHVlLFxuICAgIHN0YXJ0LFxuICAgIGVuZCxcbiAgICBzdGVwLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlQ2hhcnREYXRhKFxuICB7IGluZGljYXRvclBhcmFtcywgbWV0cmljUGFyYW1zIH06IEZldGNoUGFyYW1zLFxuICBkYXRhOiBNb25pdG9yTWV0cmljW10sXG4pIHtcbiAgaWYgKCFkYXRhKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIGNvbnN0IHsgZGVwZW5kZW50RGF0YSB9ID0gbWV0cmljUGFyYW1zO1xuICByZXR1cm4gZGVwZW5kZW50RGF0YVxuICAgID8gZGVwZW5kT25EYXRhKGluZGljYXRvclBhcmFtcywgZGF0YSlcbiAgICA6IGRlcGVuZE9uSW5kaWNhdG9yKGluZGljYXRvclBhcmFtcywgZGF0YSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZXBlbmRPbkluZGljYXRvcihcbiAgaW5kaWNhdG9yUGFyYW1zOiBJbmRpY2F0b3JQYXJhbXNbXSxcbiAgZGF0YTogTW9uaXRvck1ldHJpY1tdLFxuKTogQUNoYXJ0RGF0YVtdIHtcbiAgcmV0dXJuIGluZGljYXRvclBhcmFtcy5yZWR1Y2UoKHByZSwgcGFyYW1zKSA9PiB7XG4gICAgY29uc3QgbWV0cmljRGF0YSA9IGRhdGE/LmZpbmQoaXRlbSA9PiBpdGVtLmluZGljYXRvciA9PT0gcGFyYW1zLmluZGljYXRvcnMpO1xuICAgIHJldHVybiBbLi4ucHJlLCBoYW5kbGVEYXRhUmVzdWx0KHBhcmFtcywgbWV0cmljRGF0YT8ucmVzdWx0Py5bMF0pXTtcbiAgfSwgW10pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVwZW5kT25EYXRhKFxuICBpbmRpY2F0b3JQYXJhbXM6IEluZGljYXRvclBhcmFtc1tdLFxuICBkYXRhOiBNb25pdG9yTWV0cmljW10sXG4pOiBBQ2hhcnREYXRhW10ge1xuICBjb25zdCBwYXJhbXMgPSBpbmRpY2F0b3JQYXJhbXNbMF07XG4gIHJldHVybiBkYXRhPy5yZWR1Y2UoKHByZSwgcmVzKSA9PiB7XG4gICAgaWYgKHBhcmFtcy5pbmRpY2F0b3JzID09PSByZXMuaW5kaWNhdG9yIHx8IHBhcmFtcy5leHByID09PSByZXMucXVlcnkpIHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIC4uLnByZSxcbiAgICAgICAgLi4ucmVzLnJlc3VsdC5tYXAoaXRlbSA9PiBoYW5kbGVEYXRhUmVzdWx0KHBhcmFtcywgaXRlbSkpLFxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIHByZTtcbiAgfSwgW10pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRGF0YVJlc3VsdChcbiAgcGFyYW1zOiBJbmRpY2F0b3JQYXJhbXMsXG4gIHJlczogTW9uaXRvck1ldHJpY1Jlc3VsdCxcbikge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IGhhbmRsZUxlZ2VuZChwYXJhbXMsIHJlcyksXG4gICAgLi4uKHBhcmFtcy5pbnN0YW50ICYmICFwYXJhbXMucmFuZ2UgJiYgeyB0eXBlOiAncG9pbnQnIH0pLFxuICAgIC4uLihwYXJhbXMuaW5zdGFudCAmJiB7IGluc3RhbnQ6IHRydWUgfSksXG4gICAgcmFuZ2U6IHBhcmFtcy5yYW5nZSxcbiAgICB2YWx1ZXM6IHJlcz8udmFsdWVzPy5tYXAoZCA9PiAoe1xuICAgICAgeDogZFswXSxcbiAgICAgIHk6IGRbMV0sXG4gICAgfSkpLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlTGVnZW5kKFxuICBwYXJhbXM6IEluZGljYXRvclBhcmFtcyxcbiAgcmVzdWx0OiBNb25pdG9yTWV0cmljUmVzdWx0LFxuKSB7XG4gIHJldHVybiBpc0Z1bmN0aW9uKHBhcmFtcz8ubGVnZW5kKVxuICAgID8gcGFyYW1zLmxlZ2VuZChwYXJhbXMsIHJlc3VsdClcbiAgICA6IGdldExlZ2VuZE5hbWUocGFyYW1zPy5sZWdlbmQsIHJlc3VsdD8ubWV0cmljIHx8IHt9KTtcbn1cbmV4cG9ydCBjb25zdCBMRUdFTkRfVEVNUExBVEVfT1BUSU9OUyA9IE9iamVjdC5mcmVlemUoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVnZXhwL21hdGNoLWFueSwgcmVnZXhwL3N0cmljdFxuICBpbnRlcnBvbGF0ZTogL3t7XFwuKFtcXFNcXHNdKz8pfX0vZyxcbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGVnZW5kTmFtZShtZXRyaWNLZXk6IHN0cmluZywgbWV0cmljOiBTdHJpbmdNYXApIHtcbiAgaWYgKCFtZXRyaWNLZXkgJiYgIU9iamVjdC5rZXlzKG1ldHJpYyB8fCB7fSk/Lmxlbmd0aCkge1xuICAgIHJldHVybiBGSUVMRF9OT1RfQVZBSUxBQkxFX1BMQUNFSE9MREVSO1xuICB9XG4gIGlmICghbWV0cmljS2V5ICYmIG1ldHJpYykge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShtZXRyaWMpO1xuICB9XG4gIGNvbnN0IG1ldHJpY0tleXMgPSBtZXRyaWNLZXk/LnNwbGl0KCcsJykubWFwKG1hdGNoTGVnZW5kKTtcbiAgaWYgKG1ldHJpY0tleXM/Lmxlbmd0aCA+IDEpIHtcbiAgICBjb25zdCB2YWx1ZSA9IG1ldHJpYz8uW21ldHJpY0tleXMuZmluZChpdGVtID0+IG1ldHJpY1tpdGVtXSldO1xuICAgIHJldHVybiB2YWx1ZSB8fCBtZXRyaWNLZXk7XG4gIH1cbiAgcmV0dXJuIChcbiAgICBnZXRMZWdlbmRUZW1wbGF0ZShtZXRyaWNLZXksIG1ldHJpYykgfHxcbiAgICBsZWdlbmRGb3JtYXQobWV0cmljS2V5LCBtZXRyaWMpIHx8XG4gICAgbWV0cmljS2V5XG4gICk7XG59XG5cbmZ1bmN0aW9uIGxlZ2VuZEZvcm1hdChzdHI6IHN0cmluZywgdmFyczogU3RyaW5nTWFwKSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL2JldHRlci1yZWdleFxuICBjb25zdCByZWdleCA9IC9cXHtcXHtcXC4oLis/KVxcfVxcfS9nO1xuICByZXR1cm4gKFxuICAgIHN0ci5yZXBsYWNlQWxsKHJlZ2V4LCAobWF0Y2gsIGNhcHR1cmUpID0+IHtcbiAgICAgIGlmICh2YXJzW2NhcHR1cmVdKSB7XG4gICAgICAgIHJldHVybiB2YXJzW2NhcHR1cmVdO1xuICAgICAgfVxuICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH1cbiAgICAgIHJldHVybiAnJztcbiAgICB9KSB8fCAnVmFsdWUnXG4gICk7XG59XG5cbmZ1bmN0aW9uIGdldExlZ2VuZFRlbXBsYXRlKHN0cjogc3RyaW5nLCBvYmo6IG9iamVjdCkge1xuICBsZXQgbmFtZTogc3RyaW5nO1xuICB0cnkge1xuICAgIG5hbWUgPSBnZXQob2JqLCBzdHIpIHx8IHRlbXBsYXRlKHN0ciwgTEVHRU5EX1RFTVBMQVRFX09QVElPTlMpKG9iaik7XG4gIH0gY2F0Y2gge1xuICAgIG5hbWUgPSAnJztcbiAgfVxuICByZXR1cm4gbmFtZTtcbn1cblxuZnVuY3Rpb24gbWF0Y2hMZWdlbmQodmFsdWU6IHN0cmluZykge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9iZXR0ZXItcmVnZXhcbiAgcmV0dXJuIHZhbHVlLm1hdGNoKC9cXHtcXHtcXC4oLis/KVxcfVxcfS8pPy5bMV0gfHwgdmFsdWU7XG59XG5cbi8vIOWhq+WFheepuuaVsOaNrlxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbmV4cG9ydCBmdW5jdGlvbiBmaWxsTnVsbERhdGEoXG4gIHsgc3RhcnQsIGVuZCwgc3RlcCB9OiBNZXRyaWNQYXJhbXMsXG4gIHJlczogRGF0YUl0ZW1bJ3ZhbHVlcyddID0gW10sXG4gIGlzWmVybyA9IGZhbHNlLFxuICBzdGVwTGluZSA9IGZhbHNlLFxuKSB7XG4gIGlmICghK3N0YXJ0IHx8ICErZW5kKSB7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuICBjb25zdCBfc3RlcCA9IHN0ZXAgfHwgcm91bmRJbnRlcnZhbChzdGFydCwgZW5kKTtcbiAgY29uc3QgY3VyU3RhcnQgPSArc3RhcnQ7XG4gIGNvbnN0IG51bGxWYWx1ZSA9IGlzWmVybyA/IDAgOiBudWxsO1xuICBjb25zdCBjdXJFbmQgPSBzdGFydCArIHN0ZXAgKiAoKGVuZCAtIHN0YXJ0KSAvIHN0ZXApO1xuICBjb25zdCBwcmVYID0gc3RlcExpbmVcbiAgICA/IHtcbiAgICAgICAgcHJlWDogZGF5anMoY3VyU3RhcnQpXG4gICAgICAgICAgLnN1YnRyYWN0KChlbmQgLSBzdGFydCkgLyA2LCAncycpXG4gICAgICAgICAgLnZhbHVlT2YoKSxcbiAgICAgIH1cbiAgICA6IHt9O1xuICBjb25zdCByZXN1bHQgPSBbXG4gICAgLi4uKGN1clN0YXJ0ID09PSByZXNbMF0/LnggPyBbXSA6IFt7IHg6IGN1clN0YXJ0LCB5OiBudWxsVmFsdWUsIC4uLnByZVggfV0pLFxuICAgIC4uLnJlcyxcbiAgICAuLi4ocmVzLmF0KC0xKT8ueCA+PSBjdXJFbmQgPyBbXSA6IFt7IHg6IGN1ckVuZCwgeTogbnVsbFZhbHVlIH1dKSxcbiAgXTtcblxuICAvLyBxdWVyeSDov5Tlm57mlbDmja7lj6/og73lrZjlnKjmn5DkuKrml7bpl7TmrrXml6DmlbDmja7mg4XlhrXvvIzkvJrlr7zoh7TliY3nq69idWdcbiAgLy8g6YCa6L+HIHN0ZXAg6K6h566X5Ye6IOaAu+aVsOaNruOAglxuICAvLyDlnKjlh7rnjrDkuIDlvIDlp4vmlbDmja7nvLrlpLHmg4XlhrXvvIzlhYjnu5nmlbDmja7mt7vliqDlvIDlp4vml7bpl7TmlbDmja7vvIzlkoznu5PmnZ/ml7bpl7TmlbDmja7jgIJcbiAgLy8g5Zyo6L+b6KGM6YGN5Y6G77yM5Yik6K+75b2T5YmN5pWw5o2u5ZKM5LiL5LiA6Lez5pWw5o2u5LqL5Lu25beuIOaYr+WQpuaYr+i/meS4qiBzdGVwLFxuICAvLyDlpoLmnpzkuI3mmK/orqHnrpflh7rkuKTogIXnm7jlt64g5Yeg5p2h5pWw5o2u77yM54S25ZCO6L+b6KGM5aGr5YWFXG4gIGNvbnN0IGRhdGEgPSByZXN1bHQucmVkdWNlKChhY2MsIHByZXYsIGluZGV4KSA9PiB7XG4gICAgY29uc3QgZGlmZiA9XG4gICAgICByZXN1bHRbaW5kZXggKyAxXSAmJiByZXN1bHRbaW5kZXggKyAxXS54ICogMTAwMCAtIHByZXYueCAqIDEwMDA7XG4gICAgY29uc3Qgc3RlcE0gPSBfc3RlcCAqIDEwMDA7XG4gICAgLy8g5ZCO56uv5Y+v6IO95Ye6546wICtJZm4g5a+86Ie05oiQIE5hTu+8jOiuvue9ruS4uiBudWxsXG4gICAgY29uc3QgY3VyVmFsdWUgPSB7XG4gICAgICAuLi5wcmV2LFxuICAgICAgeTogcHJldi55LFxuICAgIH07XG4gICAgaWYgKGRpZmYgJiYgZGlmZiAhPT0gc3RlcE0pIHtcbiAgICAgIGNvbnN0IHRvdGFsID0gTWF0aC5jZWlsKGRpZmYgLyBzdGVwTSAtIDEpO1xuICAgICAgY29uc3QgZGF0YSA9IEFycmF5LmZyb208bnVtYmVyPih7IGxlbmd0aDogdG90YWwgfHwgMCB9KVxuICAgICAgICAuZmlsbCgwKVxuICAgICAgICAucmVkdWNlKChvbGQsIF9jdXJyLCBpKSA9PiB7XG4gICAgICAgICAgY29uc3QgeCA9XG4gICAgICAgICAgICBpID09PSAwID8gcHJldi54ICogMTAwMCArIHN0ZXBNIDogb2xkW2kgLSAxXS54ICogMTAwMCArIHN0ZXBNO1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAuLi5vbGQsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHg6IHggLyAxMDAwLFxuICAgICAgICAgICAgICB5OiBudWxsVmFsdWUsXG4gICAgICAgICAgICAgIC4uLihzdGVwTGluZVxuICAgICAgICAgICAgICAgID8geyBwcmVYOiBpID09PSAwID8gcmVzdWx0W2luZGV4XS54IDogb2xkW2kgLSAxXS54IH1cbiAgICAgICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXTtcbiAgICAgICAgfSwgW10pO1xuICAgICAgcmV0dXJuIFsuLi5hY2MsIGN1clZhbHVlLCAuLi5kYXRhXTtcbiAgICB9XG4gICAgcmV0dXJuIFsuLi5hY2MsIGN1clZhbHVlXTtcbiAgfSwgW10pO1xuICByZXR1cm4gZGF0YS5zb3J0KChhLCBiKSA9PiBhLnggLSBiLngpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRGF0ZUF4aXNMYWJlbEZvcm1hdHMoXG4gIHBhcmFtczogTWV0cmljUGFyYW1zLFxuICBpc1JpY2g/OiBib29sZWFuLFxuKSB7XG4gIGlmIChwYXJhbXMpIHtcbiAgICBjb25zdCBkaWZmID0gcGFyYW1zLmVuZCAtIHBhcmFtcy5zdGFydDtcbiAgICBjb25zdCBtMSA9IDI0ICogNjAgKiA2MDtcbiAgICBjb25zdCBtMyA9IDMgKiBtMTtcbiAgICBjb25zdCBtNyA9IDcgKiBtMTtcbiAgICBjb25zdCBNX0RfRk9STUFUID0gJ01NLUREJztcbiAgICBjb25zdCBNRF9IU19GT1JNQVQgPSBgJHtNX0RfRk9STUFUfSAke0NIQVJUX1RJTUVfRk9STUFUfWA7XG4gICAgcmV0dXJuIGRpZmYgPj0gbTdcbiAgICAgID8gaXNSaWNoXG4gICAgICAgID8gTURfSFNfRk9STUFUXG4gICAgICAgIDogTV9EX0ZPUk1BVFxuICAgICAgOiBkaWZmIDwgbTcgJiYgKGRpZmYgPj0gbTMgfHwgZGlmZiA+IG0xKVxuICAgICAgPyBNRF9IU19GT1JNQVRcbiAgICAgIDogQ0hBUlRfVElNRV9GT1JNQVQ7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxpbWl0TWF4VG9vbHRpcEl0ZW0oY29udGV4dDogVG9vbHRpcFZhbHVlW10sIGxpbWl0ID0gMTUpIHtcbiAgcmV0dXJuIGNvbnRleHQuc2xpY2UoMCwgbGltaXQpO1xufVxuXG5leHBvcnQgY29uc3QgVkFSSUFCTEVfS0VZX0NMVVNURVIgPSAnJGNsdXN0ZXInO1xuZXhwb3J0IGNvbnN0IFZBUklBQkxFX0tFWV9OQU1FU1BBQ0UgPSAnJG5hbWVzcGFjZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiByZXBsYWNlRXhwclZhcmlhYmxlKFxuICBleHByOiBzdHJpbmcgfCBzdHJpbmdbXSxcbiAgdmFyaWFibGU6IERpY3Rpb25hcnk8YW55Pixcbikge1xuICBsZXQgZGF0YSA9IEFycmF5LmlzQXJyYXkoZXhwcikgPyBleHByLmpvaW4oJ3wnKSA6IGV4cHI7XG4gIGNvbnN0IHZhcmlhYmxlS2V5cyA9IE9iamVjdC5rZXlzKHZhcmlhYmxlIHx8IHt9KTtcbiAgY29uc3QgdmFyaWFibGVWYWx1ZXMgPSBPYmplY3QudmFsdWVzKHZhcmlhYmxlIHx8IHt9KTtcbiAgY29uc3QgdmFyczogc3RyaW5nW10gPVxuICAgIGRhdGEgJiYgdHlwZW9mIGRhdGEubWF0Y2ggPT09ICdmdW5jdGlvbicgPyBkYXRhLm1hdGNoKC9cXCRcXHcrL2cpIDogW107XG4gIGlmIChcbiAgICAhdmFyaWFibGVLZXlzLmxlbmd0aCB8fFxuICAgICF2YXJpYWJsZUtleXMuc29tZSh2ID0+IHZhcnM/LnNvbWUoaXRlbSA9PiBpdGVtLnJlcGxhY2UoJyQnLCAnJykgPT09IHYpKVxuICApIHtcbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIHZhcnNcbiAgICAuc29ydCgoYSwgYikgPT4gYi5sZW5ndGggLSBhLmxlbmd0aClcbiAgICAuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgY29uc3QgayA9IGtleS5yZXBsYWNlKCckJywgJycpO1xuICAgICAgY29uc3QgaW5kZXggPSB2YXJpYWJsZUtleXMuaW5kZXhPZihrKTtcbiAgICAgIGlmIChpbmRleCA+PSAwKSB7XG4gICAgICAgIGNvbnN0IHYgPSB2YXJpYWJsZVZhbHVlc1tpbmRleF07XG4gICAgICAgIGRhdGEgPSBkYXRhPy5yZXBsYWNlKFxuICAgICAgICAgIG5ldyBSZWdFeHAoYFxcXFwkJHtrfWAsICdnJyksXG4gICAgICAgICAgQXJyYXkuaXNBcnJheSh2KSA/IHYuam9pbignfCcpIDogdixcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgcmV0dXJuIGRhdGE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kVGltZVJhbmdlKGRpZmY6IG51bWJlcikge1xuICBjb25zdCB0aW1lID0gUElDS0VSX1RJTUVfUkFOR0VTLmZpbmQoaXRlbSA9PiB7XG4gICAgcmV0dXJuIGl0ZW0uZW5kVGltZSgpIC0gaXRlbS5zdGFydFRpbWUoKSA9PT0gZGlmZjtcbiAgfSk7XG4gIHJldHVybiB0aW1lID8geyBzdGFydDogdGltZS5zdGFydFRpbWUoKSwgZW5kOiB0aW1lLmVuZFRpbWUoKSB9IDogbnVsbDtcbn1cbiJdfQ==
@@ -1,158 +0,0 @@
1
- import { HttpClient } from '@angular/common/http';
2
- import { Injectable } from '@angular/core';
3
- import { catchError, map, of, shareReplay } from 'rxjs';
4
- import { API_GATEWAY, CacheStore, GLOBAL_CLUSTER, RESOURCE_TYPES, parseJson, } from '../core/public-api';
5
- import { K8sApiService } from './k8s-api.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common/http";
8
- import * as i2 from "./k8s-api.service";
9
- export const INDICATOR_PROMETHEUS_NOT_DEPLOYED = 'platform.cluster.prometheus.not.deployed';
10
- export const INDICATOR_PROMETHEUS_DOWN = 'platform.cluster.prometheus.down';
11
- // 监控 API 说明 https://confluence.alauda.cn/pages/viewpage.action?pageId=140811834
12
- // 监控指标 http://confluence.alauda.cn/x/SIeeAQ
13
- export const LIMITED_OLD_VERSION_3_14 = '3.12';
14
- export class MonitorApiService {
15
- constructor(http, k8sApi) {
16
- this.http = http;
17
- this.k8sApi = k8sApi;
18
- this.urlPrefix = `${API_GATEWAY}/platform/monitoring.alauda.io/v1beta1`;
19
- this.getClusterMetrics = (cluster, params) => {
20
- return this.http.get(`${this.urlPrefix}/clusters/${cluster}/metrics`, {
21
- params: stringifyMetricParams(params),
22
- });
23
- };
24
- this.getProjectMetrics = (project, params) => {
25
- return this.http.get(`${this.urlPrefix}/projects/${project}/metrics`, {
26
- params: stringifyMetricParams(params),
27
- });
28
- };
29
- this.getNamespaceMetrics = (workspace, params) => {
30
- return this.http.get(`${this.urlPrefix}/projects/${workspace.project}/clusters/${workspace.cluster}/namespaces/${workspace.namespace}/metrics`, {
31
- params: stringifyMetricParams(params),
32
- });
33
- };
34
- this.indicatorStore$ = new CacheStore({
35
- share: () => shareReplay(1),
36
- fetcher: ({ cluster, params }) => this.http
37
- .get(`${API_GATEWAY}/v2/metrics/${cluster}/indicators`, params ? { params } : undefined)
38
- .pipe(map((result) => [...result].sort((a, b) => ('' + a.displayName).localeCompare(b.displayName))), catchError(() => of([]))),
39
- });
40
- this.indicatorUnitsStore$ = new CacheStore({
41
- idGenerator: () => 'cpaas-indicator-units',
42
- share: () => shareReplay(1),
43
- fetcher: () => this.k8sApi
44
- .getGlobalResource({
45
- type: RESOURCE_TYPES.CONFIG_MAP,
46
- name: 'cpaas-indicator-units',
47
- namespaced: true,
48
- })
49
- .pipe(catchError(() => of(null))),
50
- });
51
- this.getClusterVariables = (cluster, params) => {
52
- return this.http.get(`${this.urlPrefix}/clusters/${cluster}/variables`, {
53
- params: {
54
- ...params,
55
- },
56
- });
57
- };
58
- this.getProjectVariables = (project, params) => {
59
- return this.http.get(`${this.urlPrefix}/projects/${project}/variables`, {
60
- params: {
61
- ...params,
62
- },
63
- });
64
- };
65
- this.getNamespaceVariables = (workspace, params) => {
66
- return this.http.get(`${this.urlPrefix}/projects/${workspace.project}/clusters/${workspace.cluster}/namespaces/${workspace.namespace}/variables`, {
67
- params: {
68
- ...params,
69
- },
70
- });
71
- };
72
- }
73
- checkPrometheusStatus(cluster, scope) {
74
- scope = scope || { cluster };
75
- return this.getMetrics(scope, {
76
- indicators: joinMetricSeparator([
77
- INDICATOR_PROMETHEUS_NOT_DEPLOYED,
78
- INDICATOR_PROMETHEUS_DOWN,
79
- ]),
80
- variables: { cluster },
81
- }).pipe(map(metrics => ({
82
- notDeployed: parsePrometheusStatus(cluster, metrics.find(metric => metric.indicator === INDICATOR_PROMETHEUS_NOT_DEPLOYED).result),
83
- abnormal: parsePrometheusStatus(cluster, metrics.find(metric => metric.indicator === INDICATOR_PROMETHEUS_DOWN)
84
- .result),
85
- })), map(({ notDeployed, abnormal }) => ({
86
- notDeployed,
87
- abnormal: notDeployed ? false : abnormal,
88
- })));
89
- }
90
- checkPrometheusDeployed(cluster, scope) {
91
- scope = scope || { cluster };
92
- return this.getMetrics(scope, {
93
- indicators: INDICATOR_PROMETHEUS_NOT_DEPLOYED,
94
- variables: { cluster },
95
- }).pipe(map(([{ result }]) => !parsePrometheusStatus(cluster, result)));
96
- }
97
- checkPrometheusAbnormal(cluster, scope) {
98
- scope = scope || { cluster };
99
- return this.getMetrics(scope, {
100
- indicators: INDICATOR_PROMETHEUS_DOWN,
101
- variables: { cluster },
102
- }).pipe(map(([{ result }]) => parsePrometheusStatus(cluster, result)));
103
- }
104
- getMetrics(workspace, params) {
105
- return workspace?.namespace
106
- ? this.getNamespaceMetrics(workspace, params)
107
- : workspace?.project
108
- ? this.getProjectMetrics(workspace.project, params)
109
- : this.getClusterMetrics(workspace.cluster, params);
110
- }
111
- getIndicators(cluster, params) {
112
- return this.indicatorStore$.fetch({ cluster, ...(params && { params }) });
113
- }
114
- getIndicatorUnits() {
115
- return this.indicatorUnitsStore$
116
- .fetch(null)
117
- .pipe(map(item => parseJson(item?.data?.units)));
118
- }
119
- static { this.ɵfac = function MonitorApiService_Factory(t) { return new (t || MonitorApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.K8sApiService)); }; }
120
- static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: MonitorApiService, factory: MonitorApiService.ɵfac, providedIn: 'root' }); }
121
- }
122
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MonitorApiService, [{
123
- type: Injectable,
124
- args: [{ providedIn: 'root' }]
125
- }], function () { return [{ type: i1.HttpClient }, { type: i2.K8sApiService }]; }, null); })();
126
- function parsePrometheusStatus(cluster, result) {
127
- return cluster === GLOBAL_CLUSTER
128
- ? result.length !== 0
129
- : !!result[0]?.values?.length;
130
- }
131
- export function joinMetricSeparator(indicators) {
132
- return indicators.join('|');
133
- }
134
- export function stringifyMetricVariables(variables) {
135
- return Object.entries(variables)
136
- .map(([key, value]) => `${key}=${value}`)
137
- .join(',');
138
- }
139
- export function stringifyMetricParams(params) {
140
- return Object.entries(params).reduce((acc, [key, value]) => {
141
- if (key === 'variables') {
142
- acc[key] = stringifyMetricVariables(Object.entries(value).reduce((a, [k, v]) => {
143
- a[k] = Array.isArray(v) ? joinMetricSeparator(v) : v;
144
- return a;
145
- }, {}));
146
- }
147
- else if (key === 'indicators') {
148
- acc[key] = Array.isArray(value)
149
- ? joinMetricSeparator(value)
150
- : value;
151
- }
152
- else {
153
- acc[key] = value + '';
154
- }
155
- return acc;
156
- }, {});
157
- }
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uaXRvci1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvbW9uaXRvci1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsVUFBVSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSXBFLE9BQU8sRUFDTCxXQUFXLEVBQ1gsVUFBVSxFQUVWLGNBQWMsRUFDZCxjQUFjLEVBR2QsU0FBUyxHQUNWLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7O0FBRWxELE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUM1QywwQ0FBMEMsQ0FBQztBQUM3QyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxrQ0FBa0MsQ0FBQztBQU01RSxnRkFBZ0Y7QUFDaEYsNENBQTRDO0FBRTVDLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLE1BQU0sQ0FBQztBQUcvQyxNQUFNLE9BQU8saUJBQWlCO0lBRzVCLFlBQ21CLElBQWdCLEVBQ2hCLE1BQXFCO1FBRHJCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUp2QixjQUFTLEdBQUcsR0FBRyxXQUFXLHdDQUF3QyxDQUFDO1FBT3BGLHNCQUFpQixHQUFHLENBQUMsT0FBZSxFQUFFLE1BQTRCLEVBQUUsRUFBRTtZQUNwRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQixHQUFHLElBQUksQ0FBQyxTQUFTLGFBQWEsT0FBTyxVQUFVLEVBQy9DO2dCQUNFLE1BQU0sRUFBRSxxQkFBcUIsQ0FB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RUFBRSxFQUE0QixDQUFDLENBQUM7QUFDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjYXRjaEVycm9yLCBtYXAsIG9mLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgWE9SIH0gZnJvbSAndHMtZXNzZW50aWFscyc7XG5cbmltcG9ydCB7IEluZGljYXRvclVuaXQgfSBmcm9tICcuLi9hLW1ldHJpYy1jaGFydC90eXBlcyc7XG5pbXBvcnQge1xuICBBUElfR0FURVdBWSxcbiAgQ2FjaGVTdG9yZSxcbiAgQ29uZmlnTWFwLFxuICBHTE9CQUxfQ0xVU1RFUixcbiAgUkVTT1VSQ0VfVFlQRVMsXG4gIFN0cmluZ01hcCxcbiAgV29ya3NwYWNlUGFyYW1zLFxuICBwYXJzZUpzb24sXG59IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IEs4c0FwaVNlcnZpY2UgfSBmcm9tICcuL2s4cy1hcGkuc2VydmljZSc7XG5cbmV4cG9ydCBjb25zdCBJTkRJQ0FUT1JfUFJPTUVUSEVVU19OT1RfREVQTE9ZRUQgPVxuICAncGxhdGZvcm0uY2x1c3Rlci5wcm9tZXRoZXVzLm5vdC5kZXBsb3llZCc7XG5leHBvcnQgY29uc3QgSU5ESUNBVE9SX1BST01FVEhFVVNfRE9XTiA9ICdwbGF0Zm9ybS5jbHVzdGVyLnByb21ldGhldXMuZG93bic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFyaWFibGVzUmVzdWx0IHtcbiAgb3B0aW9uczogc3RyaW5nW107XG59XG5cbi8vIOebkeaOpyBBUEkg6K+05piOIGh0dHBzOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0xNDA4MTE4MzRcbi8vIOebkeaOp+aMh+aghyBodHRwOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24veC9TSWVlQVFcblxuZXhwb3J0IGNvbnN0IExJTUlURURfT0xEX1ZFUlNJT05fM18xNCA9ICczLjEyJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBNb25pdG9yQXBpU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdXJsUHJlZml4ID0gYCR7QVBJX0dBVEVXQVl9L3BsYXRmb3JtL21vbml0b3JpbmcuYWxhdWRhLmlvL3YxYmV0YTFgO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGs4c0FwaTogSzhzQXBpU2VydmljZSxcbiAgKSB7fVxuXG4gIGdldENsdXN0ZXJNZXRyaWNzID0gKGNsdXN0ZXI6IHN0cmluZywgcGFyYW1zPzogTW9uaXRvck1ldHJpY1BhcmFtcykgPT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE1vbml0b3JNZXRyaWNbXT4oXG4gICAgICBgJHt0aGlzLnVybFByZWZpeH0vY2x1c3RlcnMvJHtjbHVzdGVyfS9tZXRyaWNzYCxcbiAgICAgIHtcbiAgICAgICAgcGFyYW1zOiBzdHJpbmdpZnlNZXRyaWNQYXJhbXMocGFyYW1zKSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcblxuICBnZXRQcm9qZWN0TWV0cmljcyA9IChwcm9qZWN0OiBzdHJpbmcsIHBhcmFtcz86IE1vbml0b3JNZXRyaWNQYXJhbXMpID0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxNb25pdG9yTWV0cmljW10+KFxuICAgICAgYCR7dGhpcy51cmxQcmVmaXh9L3Byb2plY3RzLyR7cHJvamVjdH0vbWV0cmljc2AsXG4gICAgICB7XG4gICAgICAgIHBhcmFtczogc3RyaW5naWZ5TWV0cmljUGFyYW1zKHBhcmFtcyksXG4gICAgICB9LFxuICAgICk7XG4gIH07XG5cbiAgZ2V0TmFtZXNwYWNlTWV0cmljcyA9IChcbiAgICB3b3Jrc3BhY2U6IFdvcmtzcGFjZVBhcmFtcyxcbiAgICBwYXJhbXM/OiBNb25pdG9yTWV0cmljUGFyYW1zLFxuICApID0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxNb25pdG9yTWV0cmljW10+KFxuICAgICAgYCR7dGhpcy51cmxQcmVmaXh9L3Byb2plY3RzLyR7d29ya3NwYWNlLnByb2plY3R9L2NsdXN0ZXJzLyR7d29ya3NwYWNlLmNsdXN0ZXJ9L25hbWVzcGFjZXMvJHt3b3Jrc3BhY2UubmFtZXNwYWNlfS9tZXRyaWNzYCxcbiAgICAgIHtcbiAgICAgICAgcGFyYW1zOiBzdHJpbmdpZnlNZXRyaWNQYXJhbXMocGFyYW1zKSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcblxuICBjaGVja1Byb21ldGhldXNTdGF0dXMoY2x1c3Rlcjogc3RyaW5nLCBzY29wZT86IFBhcnRpYWw8V29ya3NwYWNlUGFyYW1zPikge1xuICAgIHNjb3BlID0gc2NvcGUgfHwgeyBjbHVzdGVyIH07XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0cmljcyhzY29wZSwge1xuICAgICAgaW5kaWNhdG9yczogam9pbk1ldHJpY1NlcGFyYXRvcihbXG4gICAgICAgIElORElDQVRPUl9QUk9NRVRIRVVTX05PVF9ERVBMT1lFRCxcbiAgICAgICAgSU5ESUNBVE9SX1BST01FVEhFVVNfRE9XTixcbiAgICAgIF0pLFxuICAgICAgdmFyaWFibGVzOiB7IGNsdXN0ZXIgfSxcbiAgICB9KS5waXBlKFxuICAgICAgbWFwKG1ldHJpY3MgPT4gKHtcbiAgICAgICAgbm90RGVwbG95ZWQ6IHBhcnNlUHJvbWV0aGV1c1N0YXR1cyhcbiAgICAgICAgICBjbHVzdGVyLFxuICAgICAgICAgIG1ldHJpY3MuZmluZChcbiAgICAgICAgICAgIG1ldHJpYyA9PiBtZXRyaWMuaW5kaWNhdG9yID09PSBJTkRJQ0FUT1JfUFJPTUVUSEVVU19OT1RfREVQTE9ZRUQsXG4gICAgICAgICAgKS5yZXN1bHQsXG4gICAgICAgICksXG4gICAgICAgIGFibm9ybWFsOiBwYXJzZVByb21ldGhldXNTdGF0dXMoXG4gICAgICAgICAgY2x1c3RlcixcbiAgICAgICAgICBtZXRyaWNzLmZpbmQobWV0cmljID0+IG1ldHJpYy5pbmRpY2F0b3IgPT09IElORElDQVRPUl9QUk9NRVRIRVVTX0RPV04pXG4gICAgICAgICAgICAucmVzdWx0LFxuICAgICAgICApLFxuICAgICAgfSkpLFxuICAgICAgbWFwKCh7IG5vdERlcGxveWVkLCBhYm5vcm1hbCB9KSA9PiAoe1xuICAgICAgICBub3REZXBsb3llZCxcbiAgICAgICAgYWJub3JtYWw6IG5vdERlcGxveWVkID8gZmFsc2UgOiBhYm5vcm1hbCxcbiAgICAgIH0pKSxcbiAgICApO1xuICB9XG5cbiAgY2hlY2tQcm9tZXRoZXVzRGVwbG95ZWQoY2x1c3Rlcjogc3RyaW5nLCBzY29wZT86IFBhcnRpYWw8V29ya3NwYWNlUGFyYW1zPikge1xuICAgIHNjb3BlID0gc2NvcGUgfHwgeyBjbHVzdGVyIH07XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0cmljcyhzY29wZSwge1xuICAgICAgaW5kaWNhdG9yczogSU5ESUNBVE9SX1BST01FVEhFVVNfTk9UX0RFUExPWUVELFxuICAgICAgdmFyaWFibGVzOiB7IGNsdXN0ZXIgfSxcbiAgICB9KS5waXBlKG1hcCgoW3sgcmVzdWx0IH1dKSA9PiAhcGFyc2VQcm9tZXRoZXVzU3RhdHVzKGNsdXN0ZXIsIHJlc3VsdCkpKTtcbiAgfVxuXG4gIGNoZWNrUHJvbWV0aGV1c0Fibm9ybWFsKGNsdXN0ZXI6IHN0cmluZywgc2NvcGU/OiBQYXJ0aWFsPFdvcmtzcGFjZVBhcmFtcz4pIHtcbiAgICBzY29wZSA9IHNjb3BlIHx8IHsgY2x1c3RlciB9O1xuICAgIHJldHVybiB0aGlzLmdldE1ldHJpY3Moc2NvcGUsIHtcbiAgICAgIGluZGljYXRvcnM6IElORElDQVRPUl9QUk9NRVRIRVVTX0RPV04sXG4gICAgICB2YXJpYWJsZXM6IHsgY2x1c3RlciB9LFxuICAgIH0pLnBpcGUobWFwKChbeyByZXN1bHQgfV0pID0+IHBhcnNlUHJvbWV0aGV1c1N0YXR1cyhjbHVzdGVyLCByZXN1bHQpKSk7XG4gIH1cblxuICBwcml2YXRlIGdldE1ldHJpY3MoXG4gICAgd29ya3NwYWNlOiBQYXJ0aWFsPFdvcmtzcGFjZVBhcmFtcz4sXG4gICAgcGFyYW1zOiBNb25pdG9yTWV0cmljUGFyYW1zLFxuICApIHtcbiAgICByZXR1cm4gd29ya3NwYWNlPy5uYW1lc3BhY2VcbiAgICAgID8gdGhpcy5nZXROYW1lc3BhY2VNZXRyaWNzKHdvcmtzcGFjZSBhcyBXb3Jrc3BhY2VQYXJhbXMsIHBhcmFtcylcbiAgICAgIDogd29ya3NwYWNlPy5wcm9qZWN0XG4gICAgICA/IHRoaXMuZ2V0UHJvamVjdE1ldHJpY3Mod29ya3NwYWNlLnByb2plY3QsIHBhcmFtcylcbiAgICAgIDogdGhpcy5nZXRDbHVzdGVyTWV0cmljcyh3b3Jrc3BhY2UuY2x1c3RlciwgcGFyYW1zKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgaW5kaWNhdG9yU3RvcmUkID0gbmV3IENhY2hlU3RvcmUoe1xuICAgIHNoYXJlOiAoKSA9PiBzaGFyZVJlcGxheSgxKSxcbiAgICBmZXRjaGVyOiAoeyBjbHVzdGVyLCBwYXJhbXMgfTogeyBjbHVzdGVyOiBzdHJpbmc7IHBhcmFtczogU3RyaW5nTWFwIH0pID0+XG4gICAgICB0aGlzLmh0dHBcbiAgICAgICAgLmdldChcbiAgICAgICAgICBgJHtBUElfR0FURVdBWX0vdjIvbWV0cmljcy8ke2NsdXN0ZXJ9L2luZGljYXRvcnNgLFxuICAgICAgICAgIHBhcmFtcyA/IHsgcGFyYW1zIH0gOiB1bmRlZmluZWQsXG4gICAgICAgIClcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWFwKChyZXN1bHQ6IEluZGljYXRvclR5cGVbXSkgPT5cbiAgICAgICAgICAgIFsuLi5yZXN1bHRdLnNvcnQoKGEsIGIpID0+XG4gICAgICAgICAgICAgICgnJyArIGEuZGlzcGxheU5hbWUpLmxvY2FsZUNvbXBhcmUoYi5kaXNwbGF5TmFtZSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihbXSkpLFxuICAgICAgICApLFxuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGluZGljYXRvclVuaXRzU3RvcmUkID0gbmV3IENhY2hlU3RvcmUoe1xuICAgIGlkR2VuZXJhdG9yOiAoKSA9PiAnY3BhYXMtaW5kaWNhdG9yLXVuaXRzJyxcbiAgICBzaGFyZTogKCkgPT4gc2hhcmVSZXBsYXkoMSksXG4gICAgZmV0Y2hlcjogKCkgPT5cbiAgICAgIHRoaXMuazhzQXBpXG4gICAgICAgIC5nZXRHbG9iYWxSZXNvdXJjZTxDb25maWdNYXA8eyB1bml0czogc3RyaW5nIH0+Pih7XG4gICAgICAgICAgdHlwZTogUkVTT1VSQ0VfVFlQRVMuQ09ORklHX01BUCxcbiAgICAgICAgICBuYW1lOiAnY3BhYXMtaW5kaWNhdG9yLXVuaXRzJyxcbiAgICAgICAgICBuYW1lc3BhY2VkOiB0cnVlLFxuICAgICAgICB9KVxuICAgICAgICAucGlwZShjYXRjaEVycm9yKCgpID0+IG9mKG51bGwpKSksXG4gIH0pO1xuXG4gIGdldEluZGljYXRvcnMoXG4gICAgY2x1c3Rlcjogc3RyaW5nLFxuICAgIHBhcmFtcz86IFN0cmluZ01hcCxcbiAgKTogT2JzZXJ2YWJsZTxJbmRpY2F0b3JUeXBlW10+IHtcbiAgICByZXR1cm4gdGhpcy5pbmRpY2F0b3JTdG9yZSQuZmV0Y2goeyBjbHVzdGVyLCAuLi4ocGFyYW1zICYmIHsgcGFyYW1zIH0pIH0pO1xuICB9XG5cbiAgZ2V0SW5kaWNhdG9yVW5pdHMoKTogT2JzZXJ2YWJsZTxJbmRpY2F0b3JVbml0W10+IHtcbiAgICByZXR1cm4gdGhpcy5pbmRpY2F0b3JVbml0c1N0b3JlJFxuICAgICAgLmZldGNoKG51bGwpXG4gICAgICAucGlwZShtYXAoaXRlbSA9PiBwYXJzZUpzb24oaXRlbT8uZGF0YT8udW5pdHMpKSk7XG4gIH1cblxuICBnZXRDbHVzdGVyVmFyaWFibGVzID0gKGNsdXN0ZXI6IHN0cmluZywgcGFyYW1zPzogTW9uaXRvclZhcmlhYmxlc1BhcmFtcykgPT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFZhcmlhYmxlc1Jlc3VsdD4oXG4gICAgICBgJHt0aGlzLnVybFByZWZpeH0vY2x1c3RlcnMvJHtjbHVzdGVyfS92YXJpYWJsZXNgLFxuICAgICAge1xuICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAuLi5wYXJhbXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH07XG5cbiAgZ2V0UHJvamVjdFZhcmlhYmxlcyA9IChwcm9qZWN0OiBzdHJpbmcsIHBhcmFtcz86IE1vbml0b3JWYXJpYWJsZXNQYXJhbXMpID0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxWYXJpYWJsZXNSZXN1bHQ+KFxuICAgICAgYCR7dGhpcy51cmxQcmVmaXh9L3Byb2plY3RzLyR7cHJvamVjdH0vdmFyaWFibGVzYCxcbiAgICAgIHtcbiAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgLi4ucGFyYW1zLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICApO1xuICB9O1xuXG4gIGdldE5hbWVzcGFjZVZhcmlhYmxlcyA9IChcbiAgICB3b3Jrc3BhY2U6IFdvcmtzcGFjZVBhcmFtcyxcbiAgICBwYXJhbXM/OiBNb25pdG9yVmFyaWFibGVzUGFyYW1zLFxuICApID0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxWYXJpYWJsZXNSZXN1bHQ+KFxuICAgICAgYCR7dGhpcy51cmxQcmVmaXh9L3Byb2plY3RzLyR7d29ya3NwYWNlLnByb2plY3R9L2NsdXN0ZXJzLyR7d29ya3NwYWNlLmNsdXN0ZXJ9L25hbWVzcGFjZXMvJHt3b3Jrc3BhY2UubmFtZXNwYWNlfS92YXJpYWJsZXNgLFxuICAgICAge1xuICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAuLi5wYXJhbXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH07XG59XG5cbmZ1bmN0aW9uIHBhcnNlUHJvbWV0aGV1c1N0YXR1cyhjbHVzdGVyOiBzdHJpbmcsIHJlc3VsdDogTW9uaXRvck1ldHJpY1Jlc3VsdFtdKSB7XG4gIHJldHVybiBjbHVzdGVyID09PSBHTE9CQUxfQ0xVU1RFUlxuICAgID8gcmVzdWx0Lmxlbmd0aCAhPT0gMFxuICAgIDogISFyZXN1bHRbMF0/LnZhbHVlcz8ubGVuZ3RoO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gam9pbk1ldHJpY1NlcGFyYXRvcihpbmRpY2F0b3JzOiBzdHJpbmdbXSkge1xuICByZXR1cm4gaW5kaWNhdG9ycy5qb2luKCd8Jyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdpZnlNZXRyaWNWYXJpYWJsZXMoXG4gIHZhcmlhYmxlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbik6IHN0cmluZyB7XG4gIHJldHVybiBPYmplY3QuZW50cmllcyh2YXJpYWJsZXMpXG4gICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgJHtrZXl9PSR7dmFsdWV9YClcbiAgICAuam9pbignLCcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5naWZ5TWV0cmljUGFyYW1zKHBhcmFtczogTW9uaXRvck1ldHJpY1BhcmFtcykge1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocGFyYW1zKS5yZWR1Y2UoKGFjYywgW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgaWYgKGtleSA9PT0gJ3ZhcmlhYmxlcycpIHtcbiAgICAgIGFjY1trZXldID0gc3RyaW5naWZ5TWV0cmljVmFyaWFibGVzKFxuICAgICAgICBPYmplY3QuZW50cmllcyh2YWx1ZSkucmVkdWNlKChhLCBbaywgdl0pID0+IHtcbiAgICAgICAgICBhW2tdID0gQXJyYXkuaXNBcnJheSh2KSA/IGpvaW5NZXRyaWNTZXBhcmF0b3IodikgOiB2O1xuICAgICAgICAgIHJldHVybiBhO1xuICAgICAgICB9LCB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KSxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChrZXkgPT09ICdpbmRpY2F0b3JzJykge1xuICAgICAgYWNjW2tleV0gPSBBcnJheS5pc0FycmF5KHZhbHVlKVxuICAgICAgICA/IGpvaW5NZXRyaWNTZXBhcmF0b3IodmFsdWUpXG4gICAgICAgIDogKHZhbHVlIGFzIHN0cmluZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFjY1trZXldID0gdmFsdWUgKyAnJztcbiAgICB9XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPik7XG59XG5cbmV4cG9ydCB0eXBlIE1vbml0b3JNZXRyaWNQYXJhbXMgPSBQYXJ0aWFsPFxuICBYT1I8eyBzdGFydDogbnVtYmVyOyBlbmQ6IG51bWJlcjsgc3RlcDogbnVtYmVyIH0sIHsgdGltZTogbnVtYmVyIH0+ICZcbiAgICBYT1I8eyBpbmRpY2F0b3JzOiBzdHJpbmcgfCBzdHJpbmdbXSB9LCB7IGV4cHI6IHN0cmluZyB9PiAmIHtcbiAgICAgIHRpbWVvdXQ6IG51bWJlcjtcbiAgICAgIHZhcmlhYmxlczogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgc3RyaW5nW10+O1xuICAgIH1cbj47XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9uaXRvclZhcmlhYmxlc1BhcmFtcyB7XG4gIGV4cHI6IHN0cmluZztcbiAgcmVnZXg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9uaXRvck1ldHJpYyB7XG4gIGluZGljYXRvcjogc3RyaW5nO1xuICBxdWVyeTogc3RyaW5nO1xuICByZXN1bHQ6IE1vbml0b3JNZXRyaWNSZXN1bHRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3N0TWV0cmljIHtcbiAgaW5kaWNhdG9yOiBzdHJpbmc7XG4gIHJlc3VsdDogQ29zdE1ldHJpY1Jlc3VsdFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vbml0b3JNZXRyaWNSZXN1bHQge1xuICBtZXRyaWM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHZhbHVlczogQXJyYXk8W251bWJlciwgc3RyaW5nXT47XG59XG5leHBvcnQgaW50ZXJmYWNlIENvc3RNZXRyaWNSZXN1bHQge1xuICBtZXRyaWM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHZhbHVlczogQXJyYXk8W251bWJlciwgc3RyaW5nXT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5kaWNhdG9yVHlwZSB7XG4gIGtpbmQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBhbGlhczogc3RyaW5nO1xuICB1bml0OiBzdHJpbmc7XG4gIHN0cmluZz86IHN0cmluZztcbiAgdmFsdWVfdHlwZT86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbiAgcXVlcnk/OiBzdHJpbmc7XG4gIGFsZXJ0X2VuYWJsZWQ/OiBib29sZWFuO1xuICBhbGVydEVuYWJsZWQ/OiBib29sZWFuO1xuICBhZ2dyZWdhdGlvbl9lbmFibGVkPzogYm9vbGVhbjtcbiAgZGlzcGxheV9uYW1lPzogc3RyaW5nO1xuICBkaXNwbGF5TmFtZT86IHN0cmluZztcbiAgbGVnZW5kPzogc3RyaW5nO1xuICBzdW1tYXJ5Pzogc3RyaW5nO1xuICBhbm5vdGF0aW9ucz86IEluZGljYXRvckFubm90YXRpb25zO1xuICB2YXJpYWJsZXM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmRpY2F0b3JBbm5vdGF0aW9ucyB7XG4gIGNuOiBzdHJpbmc7XG4gIGVuOiBzdHJpbmc7XG4gIGFzbUV4dHJhRmVhdHVyZXM/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uRU4/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uWkg/OiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lRU4/OiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lWkg/OiBzdHJpbmc7XG59XG4iXX0=
@@ -1,32 +0,0 @@
1
- /**
2
- * @packageDocumentation
3
- * @module notification
4
- */
5
- import { ButtonModule } from '@alauda/ui';
6
- import { NgModule } from '@angular/core';
7
- import { CodeModule } from '../code/code.module';
8
- import { TranslateModule } from '../translate/translate.module';
9
- import { FeedbackNotificationComponent } from './feedback-notification/component';
10
- import * as i0 from "@angular/core";
11
- import * as i1 from "@angular/common";
12
- import * as i2 from "@alauda/ui";
13
- import * as i3 from "../translate/translate.pipe";
14
- const EXPORTABLE_MODULES = [CodeModule, TranslateModule, ButtonModule];
15
- const ENTRY_COMPONENTS = [FeedbackNotificationComponent];
16
- const EXPORTABLE_COMPONENTS = ENTRY_COMPONENTS;
17
- export class NotificationUtilModule {
18
- static { this.ɵfac = function NotificationUtilModule_Factory(t) { return new (t || NotificationUtilModule)(); }; }
19
- static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: NotificationUtilModule }); }
20
- static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [EXPORTABLE_MODULES, CodeModule, TranslateModule, ButtonModule] }); }
21
- }
22
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NotificationUtilModule, [{
23
- type: NgModule,
24
- args: [{
25
- imports: EXPORTABLE_MODULES,
26
- declarations: EXPORTABLE_COMPONENTS,
27
- exports: [...EXPORTABLE_MODULES, ...EXPORTABLE_COMPONENTS],
28
- }]
29
- }], null, null); })();
30
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(NotificationUtilModule, { declarations: [FeedbackNotificationComponent], imports: [CodeModule, TranslateModule, ButtonModule], exports: [CodeModule, TranslateModule, ButtonModule, FeedbackNotificationComponent] }); })();
31
- i0.ɵɵsetComponentScope(FeedbackNotificationComponent, [i1.NgIf, i2.ButtonComponent], [i3.TranslatePipe]);
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXV0aWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24tdXRpbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMxQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7O0FBRWxGLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxVQUFVLEVBQUUsZUFBZSxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBRXZFLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0FBRXpELE1BQU0scUJBQXFCLEdBQUcsZ0JBQWdCLENBQUM7QUFPL0MsTUFBTSxPQUFPLHNCQUFzQjt1RkFBdEIsc0JBQXNCO21FQUF0QixzQkFBc0I7dUVBSnhCLGtCQUFrQixFQVBELFVBQVUsRUFBRSxlQUFlLEVBQUUsWUFBWTs7dUZBV3hELHNCQUFzQjtjQUxsQyxRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsWUFBWSxFQUFFLHFCQUFxQjtnQkFDbkMsT0FBTyxFQUFFLENBQUMsR0FBRyxrQkFBa0IsRUFBRSxHQUFHLHFCQUFxQixDQUFDO2FBQzNEOzt3RkFDWSxzQkFBc0IsbUJBVFQsNkJBQTZCLGFBRjNCLFVBQVUsRUFBRSxlQUFlLEVBQUUsWUFBWSxhQUF6QyxVQUFVLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFFM0MsNkJBQTZCO3VCQUE3Qiw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSBub3RpZmljYXRpb25cbiAqL1xuXG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENvZGVNb2R1bGUgfSBmcm9tICcuLi9jb2RlL2NvZGUubW9kdWxlJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJy4uL3RyYW5zbGF0ZS90cmFuc2xhdGUubW9kdWxlJztcblxuaW1wb3J0IHsgRmVlZGJhY2tOb3RpZmljYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2ZlZWRiYWNrLW5vdGlmaWNhdGlvbi9jb21wb25lbnQnO1xuXG5jb25zdCBFWFBPUlRBQkxFX01PRFVMRVMgPSBbQ29kZU1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBCdXR0b25Nb2R1bGVdO1xuXG5jb25zdCBFTlRSWV9DT01QT05FTlRTID0gW0ZlZWRiYWNrTm90aWZpY2F0aW9uQ29tcG9uZW50XTtcblxuY29uc3QgRVhQT1JUQUJMRV9DT01QT05FTlRTID0gRU5UUllfQ09NUE9ORU5UUztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogRVhQT1JUQUJMRV9NT0RVTEVTLFxuICBkZWNsYXJhdGlvbnM6IEVYUE9SVEFCTEVfQ09NUE9ORU5UUyxcbiAgZXhwb3J0czogWy4uLkVYUE9SVEFCTEVfTU9EVUxFUywgLi4uRVhQT1JUQUJMRV9DT01QT05FTlRTXSxcbn0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uVXRpbE1vZHVsZSB7fVxuIl19
@@ -1 +0,0 @@
1
- { "v": "5.10.0", "fr": 60, "ip": 0, "op": 68, "w": 1440, "h": 1440, "nm": "Dashboard", "ddd": 0, "assets": [], "layers": [{ "ddd": 0, "ind": 1, "ty": 4, "nm": "矩形 3", "sr": 1, "ks": { "o": { "a": 0, "k": 100, "ix": 11 }, "r": { "a": 0, "k": 0, "ix": 10 }, "p": { "a": 0, "k": [1212, 650, 0], "ix": 2, "l": 2 }, "a": { "a": 0, "k": [45.933, 8, 0], "ix": 1, "l": 2 }, "s": { "a": 1, "k": [{ "i": { "x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 0.833] }, "o": { "x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0.167] }, "t": 39, "s": [1192, 62, 100] }, { "t": 66, "s": [14, 62, 100] }], "ix": 6, "l": 2 } }, "ao": 0, "shapes": [{ "ty": "gr", "it": [{ "ty": "rc", "d": 1, "s": { "a": 0, "k": [30, 416], "ix": 2 }, "p": { "a": 0, "k": [0, 0], "ix": 3 }, "r": { "a": 0, "k": 0, "ix": 4 }, "nm": "矩形路径 1", "mn": "ADBE Vector Shape - Rect", "hd": false }, { "ty": "fl", "c": { "a": 0, "k": [0, 0.478431373835, 0.960784316063, 1], "ix": 4 }, "o": { "a": 0, "k": 100, "ix": 5 }, "r": 1, "bm": 0, "nm": "填充 1", "mn": "ADBE Vector Graphic - Fill", "hd": false }, { "ty": "tr", "p": { "a": 0, "k": [0, 0], "ix": 2 }, "a": { "a": 0, "k": [0, 0], "ix": 1 }, "s": { "a": 0, "k": [300, 300], "ix": 3 }, "r": { "a": 0, "k": 0, "ix": 6 }, "o": { "a": 0, "k": 100, "ix": 7 }, "sk": { "a": 0, "k": 0, "ix": 4 }, "sa": { "a": 0, "k": 0, "ix": 5 }, "nm": "变换" }], "nm": "矩形", "np": 2, "cix": 2, "bm": 0, "ix": 1, "mn": "ADBE Vector Group", "hd": false }], "ip": 39, "op": 289, "st": -14, "ct": 1, "bm": 0 }, { "ddd": 0, "ind": 2, "ty": 4, "nm": "矩形", "sr": 1, "ks": { "o": { "a": 0, "k": 100, "ix": 11 }, "r": { "a": 0, "k": 0, "ix": 10 }, "p": { "a": 0, "k": [140, 650, 0], "ix": 2, "l": 2 }, "a": { "a": 0, "k": [-44, 8, 0], "ix": 1, "l": 2 }, "s": { "a": 1, "k": [{ "i": { "x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 0.833] }, "o": { "x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0.167] }, "t": 0, "s": [100, 62, 100] }, { "i": { "x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 0.833] }, "o": { "x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0.167] }, "t": 27, "s": [1192, 62, 100] }, { "t": 39, "s": [1192, 62, 100] }], "ix": 6, "l": 2 } }, "ao": 0, "shapes": [{ "ty": "gr", "it": [{ "ty": "rc", "d": 1, "s": { "a": 0, "k": [30, 416], "ix": 2 }, "p": { "a": 0, "k": [0, 0], "ix": 3 }, "r": { "a": 0, "k": 0, "ix": 4 }, "nm": "矩形路径 1", "mn": "ADBE Vector Shape - Rect", "hd": false }, { "ty": "fl", "c": { "a": 1, "k": [{ "i": { "x": [0.833], "y": [0.833] }, "o": { "x": [0.167], "y": [0.167] }, "t": 0, "s": [0.486274510622, 0.494117647409, 0.505882382393, 1] }, { "t": 1, "s": [0, 0.478431373835, 0.960784316063, 1] }], "ix": 4 }, "o": { "a": 0, "k": 100, "ix": 5 }, "r": 1, "bm": 0, "nm": "填充 1", "mn": "ADBE Vector Graphic - Fill", "hd": false }, { "ty": "tr", "p": { "a": 0, "k": [0, 0], "ix": 2 }, "a": { "a": 0, "k": [0, 0], "ix": 1 }, "s": { "a": 0, "k": [300, 300], "ix": 3 }, "r": { "a": 0, "k": 0, "ix": 6 }, "o": { "a": 0, "k": 100, "ix": 7 }, "sk": { "a": 0, "k": 0, "ix": 4 }, "sa": { "a": 0, "k": 0, "ix": 5 }, "nm": "变换" }], "nm": "矩形", "np": 2, "cix": 2, "bm": 0, "ix": 1, "mn": "ADBE Vector Group", "hd": false }], "ip": 0, "op": 39, "st": 0, "ct": 1, "bm": 0 }, { "ddd": 0, "ind": 3, "ty": 4, "nm": "路径 2", "sr": 1, "ks": { "o": { "a": 0, "k": 100, "ix": 11 }, "r": { "a": 0, "k": 0, "ix": 10 }, "p": { "a": 0, "k": [720, 1282.5, 0], "ix": 2, "l": 2 }, "a": { "a": 0, "k": [0, 0, 0], "ix": 1, "l": 2 }, "s": { "a": 0, "k": [100, 100, 100], "ix": 6, "l": 2 } }, "ao": 0, "shapes": [{ "ty": "gr", "it": [{ "ind": 0, "ty": "sh", "ix": 1, "ks": { "a": 0, "k": { "i": [[0, 0], [0, -8.28], [0, 0], [9.94, 0], [0, 0], [0, 8.28], [0, 0], [-9.94, 0]], "o": [[9.94, 0], [0, 0], [0, 8.28], [0, 0], [-9.94, 0], [0, 0], [0, -8.28], [0, 0]], "v": [[162, -22.5], [180, -7.5], [180, 7.5], [162, 22.5], [-162, 22.5], [-180, 7.5], [-180, -7.5], [-162, -22.5]], "c": true }, "ix": 2 }, "nm": "路径 1", "mn": "ADBE Vector Shape - Group", "hd": false }, { "ty": "fl", "c": { "a": 1, "k": [{ "i": { "x": [0.833], "y": [0.833] }, "o": { "x": [0.167], "y": [0.167] }, "t": 0, "s": [0.68235296011, 0.690196096897, 0.701960802078, 1] }, { "t": 1, "s": [0.40000000596, 0.686274528503, 0.976470589638, 1] }], "ix": 4 }, "o": { "a": 0, "k": 100, "ix": 5 }, "r": 1, "bm": 0, "nm": "填充 1", "mn": "ADBE Vector Graphic - Fill", "hd": false }, { "ty": "tr", "p": { "a": 0, "k": [0, 0], "ix": 2 }, "a": { "a": 0, "k": [0, 0], "ix": 1 }, "s": { "a": 0, "k": [300, 300], "ix": 3 }, "r": { "a": 0, "k": 0, "ix": 6 }, "o": { "a": 0, "k": 100, "ix": 7 }, "sk": { "a": 0, "k": 0, "ix": 4 }, "sa": { "a": 0, "k": 0, "ix": 5 }, "nm": "变换" }], "nm": "路径", "np": 2, "cix": 2, "bm": 0, "ix": 1, "mn": "ADBE Vector Group", "hd": false }], "ip": 0, "op": 86, "st": 0, "ct": 1, "bm": 0 }, { "ddd": 0, "ind": 4, "ty": 4, "nm": "形状结合 2", "sr": 1, "ks": { "o": { "a": 0, "k": 100, "ix": 11 }, "r": { "a": 0, "k": 0, "ix": 10 }, "p": { "a": 0, "k": [720, 630, 0], "ix": 2, "l": 2 }, "a": { "a": 0, "k": [0, 0, 0], "ix": 1, "l": 2 }, "s": { "a": 0, "k": [100, 100, 100], "ix": 6, "l": 2 } }, "ao": 0, "shapes": [{ "ty": "gr", "it": [{ "ind": 0, "ty": "sh", "ix": 1, "ks": { "a": 0, "k": { "i": [[0, 0], [0, -15.78], [0, 0], [16.57, 0], [0, 0], [0, 15.78], [0, 0], [-16.57, 0]], "o": [[16.57, 0], [0, 0], [0, 15.78], [0, 0], [-16.57, 0], [0, 0], [0, -15.78], [0, 0]], "v": [[180, -150], [210, -121.43], [210, 121.43], [180, 150], [-180, 150], [-210, 121.43], [-210, -121.43], [-180, -150]], "c": true }, "ix": 2 }, "nm": "路径 1", "mn": "ADBE Vector Shape - Group", "hd": false }, { "ind": 1, "ty": "sh", "ix": 2, "ks": { "a": 0, "k": { "i": [[0, 0], [9.42, -13.36], [0, 0], [0, 0], [0, 0], [0, 0], [5.93, 0.8], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [-8.63, 12.26], [0, 0], [0, 0], [0, 0], [0, 0], [-7.05, -0.97], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0]], "o": [[-7.92, -14.3], [0, 0], [0, 0], [0, 0], [0, 0], [-3.62, -4.77], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [9.12, 11.9], [0, 0], [0, 0], [0, 0], [0, 0], [3.42, 6.25], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0]], "v": [[19.98, -83.56], [-17.92, -85.62], [-19.65, -82.76], [-77.46, 30.02], [-87.43, 12.35], [-89.08, 9.83], [-104.01, 1.12], [-107.02, 0.91], [-150, 0.91], [-150, 45.91], [-120.18, 45.89], [-96.07, 88.56], [-94.26, 91.3], [-58.15, 90.57], [-56.45, 87.76], [-2.67, -17.29], [28.06, 63.13], [29.35, 65.92], [46.01, 77.4], [49.08, 77.61], [150, 77.61], [150, 32.61], [64.56, 32.6], [21.39, -80.52]], "c": true }, "ix": 2 }, "nm": "路径 2", "mn": "ADBE Vector Shape - Group", "hd": false }, { "ty": "mm", "mm": 3, "nm": "合并路径 1", "mn": "ADBE Vector Filter - Merge", "hd": false }, { "ty": "fl", "c": { "a": 1, "k": [{ "i": { "x": [0.833], "y": [0.833] }, "o": { "x": [0.167], "y": [0.167] }, "t": 0, "s": [0.486274510622, 0.494117647409, 0.505882382393, 1] }, { "t": 1, "s": [0, 0.478431373835, 0.960784316063, 1] }], "ix": 4 }, "o": { "a": 0, "k": 100, "ix": 5 }, "r": 1, "bm": 0, "nm": "填充 1", "mn": "ADBE Vector Graphic - Fill", "hd": false }, { "ty": "tr", "p": { "a": 0, "k": [0, 0], "ix": 2 }, "a": { "a": 0, "k": [0, 0], "ix": 1 }, "s": { "a": 0, "k": [300, 300], "ix": 3 }, "r": { "a": 0, "k": 0, "ix": 6 }, "o": { "a": 0, "k": 100, "ix": 7 }, "sk": { "a": 0, "k": 0, "ix": 4 }, "sa": { "a": 0, "k": 0, "ix": 5 }, "nm": "变换" }], "nm": "形状结合", "np": 4, "cix": 2, "bm": 0, "ix": 1, "mn": "ADBE Vector Group", "hd": false }], "ip": 0, "op": 86, "st": 0, "ct": 1, "bm": 0 }], "markers": [] }
@@ -1,10 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "./feedback-notification/component";
3
- import * as i2 from "../code/code.module";
4
- import * as i3 from "../translate/translate.module";
5
- import * as i4 from "@alauda/ui";
6
- export declare class NotificationUtilModule {
7
- static ɵfac: i0.ɵɵFactoryDeclaration<NotificationUtilModule, never>;
8
- static ɵmod: i0.ɵɵNgModuleDeclaration<NotificationUtilModule, [typeof i1.FeedbackNotificationComponent], [typeof i2.CodeModule, typeof i3.TranslateModule, typeof i4.ButtonModule], [typeof i2.CodeModule, typeof i3.TranslateModule, typeof i4.ButtonModule, typeof i1.FeedbackNotificationComponent]>;
9
- static ɵinj: i0.ɵɵInjectorDeclaration<NotificationUtilModule>;
10
- }