@alauda-fe/common 1.0.0-next.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 (1188) hide show
  1. package/a-chart/a-chart.module.d.ts +16 -0
  2. package/a-chart/base-chart.d.ts +23 -0
  3. package/a-chart/chart-status.component.d.ts +15 -0
  4. package/a-chart/chart.component.d.ts +55 -0
  5. package/a-chart/components/base-component.d.ts +12 -0
  6. package/a-chart/components/index.d.ts +3 -0
  7. package/a-chart/components/legend/base-legend.component.d.ts +32 -0
  8. package/a-chart/components/legend/dropdown-legend.d.ts +17 -0
  9. package/a-chart/components/legend/index.d.ts +3 -0
  10. package/a-chart/components/legend/legend.component.d.ts +17 -0
  11. package/a-chart/components/title.component.d.ts +17 -0
  12. package/a-chart/constant.d.ts +3 -0
  13. package/a-chart/public-api.d.ts +12 -0
  14. package/a-chart/types.d.ts +28 -0
  15. package/a-chart/utils.d.ts +13 -0
  16. package/a-metric-chart/a-metric-chart.component.d.ts +108 -0
  17. package/a-metric-chart/a-metric-chart.module.d.ts +16 -0
  18. package/a-metric-chart/bar-gauge/bar-gauge.component.d.ts +25 -0
  19. package/a-metric-chart/base-chart.component.d.ts +14 -0
  20. package/a-metric-chart/metric-chart-refresh.service.d.ts +8 -0
  21. package/a-metric-chart/public-api.d.ts +13 -0
  22. package/a-metric-chart/stat-chart/stat-chart.component.d.ts +7 -0
  23. package/a-metric-chart/table-chart/table-chart.component.d.ts +29 -0
  24. package/a-metric-chart/types.d.ts +113 -0
  25. package/a-metric-chart/utils/index.d.ts +3 -0
  26. package/a-metric-chart/utils/range.d.ts +1 -0
  27. package/a-metric-chart/utils/unit.d.ts +48 -0
  28. package/a-metric-chart/utils/util.d.ts +38 -0
  29. package/abnormal-page/abnormal-page.component.d.ts +19 -0
  30. package/abnormal-page/abnormal-page.module.d.ts +11 -0
  31. package/abnormal-page/public-api.d.ts +2 -0
  32. package/api/api-gateway.interceptor.d.ts +14 -0
  33. package/api/api-gateway.service.d.ts +23 -0
  34. package/api/cluster-version.service.d.ts +22 -0
  35. package/api/crypto.interceptor.d.ts +18 -0
  36. package/api/helpers.d.ts +31 -0
  37. package/api/k8s-api-resource.service.d.ts +29 -0
  38. package/api/k8s-api.service.d.ts +112 -0
  39. package/api/monitor-api.service.d.ts +103 -0
  40. package/api/page-visibility.service.d.ts +7 -0
  41. package/api/platform-ui.service.d.ts +45 -0
  42. package/api/product.service.d.ts +13 -0
  43. package/api/project-api.service.d.ts +16 -0
  44. package/api/public-api.d.ts +20 -0
  45. package/api/resource-update.service.d.ts +31 -0
  46. package/api/types.d.ts +119 -0
  47. package/array-form-table/base-string-map-form.component.d.ts +22 -0
  48. package/array-form-table/form/component.d.ts +91 -0
  49. package/array-form-table/form/module.d.ts +7 -0
  50. package/array-form-table/key-value-form/component.d.ts +37 -0
  51. package/array-form-table/key-value-table/component.d.ts +9 -0
  52. package/array-form-table/public-api.d.ts +10 -0
  53. package/assets/header/cluster-blue.svg +1 -0
  54. package/assets/header/cluster-white.svg +1 -0
  55. package/assets/header/namespace-blue.svg +1 -0
  56. package/assets/header/namespace-white.svg +1 -0
  57. package/assets/header/portrait.svg +1 -0
  58. package/assets/header/project-blue.svg +1 -0
  59. package/assets/header/project-white.svg +1 -0
  60. package/assets/header/servicemesh-blue.svg +1 -0
  61. package/assets/header/servicemesh-white.svg +1 -0
  62. package/assets/icons/ClickHouse.svg +1 -0
  63. package/assets/icons/Containerd.svg +1 -0
  64. package/assets/icons/Docker.svg +1 -0
  65. package/assets/icons/ETCD.svg +1 -0
  66. package/assets/icons/ElasticSearch.svg +1 -0
  67. package/assets/icons/Grafana.svg +1 -0
  68. package/assets/icons/Istio.svg +1 -0
  69. package/assets/icons/Jaeger.svg +1 -0
  70. package/assets/icons/Kafka.svg +1 -0
  71. package/assets/icons/Kibana.svg +1 -0
  72. package/assets/icons/KubeVela.svg +1 -0
  73. package/assets/icons/Kubernetes.svg +1 -0
  74. package/assets/icons/Prometheus.svg +1 -0
  75. package/assets/icons/VictoriaMetrics.svg +1 -0
  76. package/assets/icons/Zookeeper.svg +1 -0
  77. package/assets/icons/bicolor-icons.js +1 -0
  78. package/assets/icons/icon-card-blue.svg +1 -0
  79. package/assets/icons/icon-card.svg +1 -0
  80. package/assets/icons/icon-cluster-small-white.svg +1 -0
  81. package/assets/icons/icon-cluster-small.svg +1 -0
  82. package/assets/icons/icon-list-blue.svg +1 -0
  83. package/assets/icons/icon-list.svg +1 -0
  84. package/assets/icons/icon-namespace-small-white.svg +1 -0
  85. package/assets/icons/icon-namespace-small.svg +1 -0
  86. package/assets/icons/icon-project-small-white.svg +1 -0
  87. package/assets/icons/icon-project-small.svg +1 -0
  88. package/assets/icons/icon-servicemesh-small-white.svg +1 -0
  89. package/assets/icons/icon-servicemesh-small.svg +1 -0
  90. package/assets/icons/navigation-icons.js +1 -0
  91. package/assets/icons/os/centos.svg +1 -0
  92. package/assets/icons/os/debian.svg +1 -0
  93. package/assets/icons/os/linux.svg +1 -0
  94. package/assets/icons/os/other.svg +1 -0
  95. package/assets/icons/os/red-hat.svg +1 -0
  96. package/assets/icons/os/t-linux.svg +1 -0
  97. package/assets/icons/os/ubuntu.svg +1 -0
  98. package/assets/icons/os/windows.svg +1 -0
  99. package/assets/icons/prod-icons.js +1 -0
  100. package/assets/icons/time.svg +1 -0
  101. package/assets/images/abnormal.svg +1 -0
  102. package/assets/images/alarm_critical.png +0 -0
  103. package/assets/images/avatar.svg +1 -0
  104. package/assets/images/dark/disconnected.svg +1 -0
  105. package/assets/images/dark/feature-reach-bg.svg +1 -0
  106. package/assets/images/dark/license-abnormal.svg +1 -0
  107. package/assets/images/dark/network-abnormal.svg +1 -0
  108. package/assets/images/dark/no-data.svg +1 -0
  109. package/assets/images/dark/no-message.svg +1 -0
  110. package/assets/images/dark/no-permission.svg +1 -0
  111. package/assets/images/dark/no_realtime_alarm.svg +1 -0
  112. package/assets/images/dark/not-deployed.svg +1 -0
  113. package/assets/images/dark/not-found.svg +1 -0
  114. package/assets/images/dark/not-supported.svg +1 -0
  115. package/assets/images/dark/system-abnormal.svg +1 -0
  116. package/assets/images/light/disconnected.svg +1 -0
  117. package/assets/images/light/feature-reach-bg.svg +1 -0
  118. package/assets/images/light/license-abnormal.svg +1 -0
  119. package/assets/images/light/network-abnormal.svg +1 -0
  120. package/assets/images/light/no-data.svg +1 -0
  121. package/assets/images/light/no-message.svg +1 -0
  122. package/assets/images/light/no-permission.svg +1 -0
  123. package/assets/images/light/no_realtime_alarm.svg +1 -0
  124. package/assets/images/light/not-deployed.svg +1 -0
  125. package/assets/images/light/not-found.svg +1 -0
  126. package/assets/images/light/not-supported.svg +1 -0
  127. package/assets/images/light/system-abnormal.svg +1 -0
  128. package/assets/images/no-data.png +0 -0
  129. package/assets/images/overview-banner.svg +1 -0
  130. package/assets/images/platform_version_bg.svg +1 -0
  131. package/assets/images/product-default-logo.png +0 -0
  132. package/assets/logos/favicon.ico +0 -0
  133. package/assets/logos/logo.svg +1 -0
  134. package/assets/logos/tke_logo_white.svg +1 -0
  135. package/assets/themes/override-theme.js +11 -0
  136. package/assets/themes/refresh-favicon.js +6 -0
  137. package/async-data/async-data-loader.d.ts +31 -0
  138. package/async-data/async-data.module.d.ts +8 -0
  139. package/async-data/error-page/component.d.ts +30 -0
  140. package/async-data/page-state/component.d.ts +21 -0
  141. package/async-data/public-api.d.ts +11 -0
  142. package/async-data/types.d.ts +29 -0
  143. package/authorization/app-init-url.d.ts +6 -0
  144. package/authorization/guard.service.d.ts +22 -0
  145. package/authorization/interceptor.service.d.ts +34 -0
  146. package/authorization/public-api.d.ts +11 -0
  147. package/authorization/session-manage.service.d.ts +18 -0
  148. package/authorization/state.service.d.ts +52 -0
  149. package/business/module-info/api.service.d.ts +24 -0
  150. package/business/module-info/public-api.d.ts +1 -0
  151. package/business/public-api.d.ts +7 -0
  152. package/business/resource-select/base-list.d.ts +32 -0
  153. package/business/resource-select/context.service.d.ts +47 -0
  154. package/business/resource-select/exports/cluster-selector/component.d.ts +23 -0
  155. package/business/resource-select/exports/mesh-group-selector/component.d.ts +23 -0
  156. package/business/resource-select/exports/namespace-page/component.d.ts +25 -0
  157. package/business/resource-select/exports/namespace-selector/component.d.ts +33 -0
  158. package/business/resource-select/exports/project-page/component.d.ts +18 -0
  159. package/business/resource-select/exports/project-selector/component.d.ts +27 -0
  160. package/business/resource-select/helpers.directive.d.ts +5 -0
  161. package/business/resource-select/internals/cluster-list/component.d.ts +26 -0
  162. package/business/resource-select/internals/data-grid/component.d.ts +42 -0
  163. package/business/resource-select/internals/icon/component.d.ts +12 -0
  164. package/business/resource-select/internals/meshgroup-list/component.d.ts +22 -0
  165. package/business/resource-select/internals/namespace-list/component.d.ts +65 -0
  166. package/business/resource-select/internals/no-data/component.d.ts +11 -0
  167. package/business/resource-select/internals/project-list/component.d.ts +22 -0
  168. package/business/resource-select/internals/resource-dashboard/component.d.ts +14 -0
  169. package/business/resource-select/internals/selector-popup/component.d.ts +14 -0
  170. package/business/resource-select/internals/selector-popup/ref.d.ts +10 -0
  171. package/business/resource-select/internals/selector-popup/service.d.ts +21 -0
  172. package/business/resource-select/module.d.ts +31 -0
  173. package/business/resource-select/project.service.d.ts +16 -0
  174. package/business/resource-select/public-api.d.ts +16 -0
  175. package/business/resource-select/types.d.ts +77 -0
  176. package/business/resource-select/utils.d.ts +5 -0
  177. package/chart/chart.module.d.ts +29 -0
  178. package/chart/chart.service.d.ts +72 -0
  179. package/chart/common/axis/axis-label.component.d.ts +23 -0
  180. package/chart/common/axis/x-axis-ticks.component.d.ts +24 -0
  181. package/chart/common/axis/x-axis.component.d.ts +26 -0
  182. package/chart/common/axis/x-plot-lines.component.d.ts +23 -0
  183. package/chart/common/axis/y-axis-ticks.component.d.ts +33 -0
  184. package/chart/common/axis/y-axis.component.d.ts +28 -0
  185. package/chart/common/axis/y-plot-lines.component.d.ts +31 -0
  186. package/chart/common/chart/chart.component.d.ts +63 -0
  187. package/chart/common/index.d.ts +17 -0
  188. package/chart/common/legend/legend.component.d.ts +41 -0
  189. package/chart/common/range-area/range-area.component.d.ts +48 -0
  190. package/chart/common/reference-area/reference-area.component.d.ts +12 -0
  191. package/chart/common/series/area-series.component.d.ts +21 -0
  192. package/chart/common/series/bar-path.component.d.ts +47 -0
  193. package/chart/common/series/bar-series.component.d.ts +29 -0
  194. package/chart/common/series/line-series.component.d.ts +8 -0
  195. package/chart/common/series/series.component.d.ts +39 -0
  196. package/chart/common/tooltip/tooltip.component.d.ts +119 -0
  197. package/chart/constants.d.ts +10 -0
  198. package/chart/custom-template/dropdown-legend.d.ts +11 -0
  199. package/chart/public-api.d.ts +9 -0
  200. package/chart/types.d.ts +47 -0
  201. package/chart/utils.d.ts +36 -0
  202. package/code/code-display-dialog/component.d.ts +17 -0
  203. package/code/code-editor-configs.d.ts +18 -0
  204. package/code/code.module.d.ts +14 -0
  205. package/code/k8s-yaml-display-dialog/component.d.ts +16 -0
  206. package/code/public-api.d.ts +11 -0
  207. package/code/resource-yaml-display/component.d.ts +22 -0
  208. package/core/abstract/base-form-container.d.ts +41 -0
  209. package/core/abstract/base-nested-form-control.d.ts +58 -0
  210. package/core/abstract/index.d.ts +2 -0
  211. package/core/components/index.d.ts +1 -0
  212. package/core/components/tree/index.d.ts +1 -0
  213. package/core/components/tree/module.d.ts +12 -0
  214. package/core/components/tree/node/component.d.ts +12 -0
  215. package/core/components/tree/outlet.d.ts +10 -0
  216. package/core/components/tree/padding.d.ts +12 -0
  217. package/core/components/tree/public-api.d.ts +6 -0
  218. package/core/components/tree/toggle.d.ts +12 -0
  219. package/core/components/tree/tree/component.d.ts +8 -0
  220. package/core/constants/constants.d.ts +61 -0
  221. package/core/constants/index.d.ts +5 -0
  222. package/core/constants/patterns.d.ts +25 -0
  223. package/core/constants/status-icons.d.ts +28 -0
  224. package/core/constants/timezones.d.ts +6 -0
  225. package/core/constants/tokens.d.ts +44 -0
  226. package/core/directives/click-outside.directive.d.ts +12 -0
  227. package/core/directives/disabled.directive.d.ts +28 -0
  228. package/core/directives/feature-gate.directive.d.ts +30 -0
  229. package/core/directives/index.d.ts +10 -0
  230. package/core/directives/intercept-deactivate.directive.d.ts +18 -0
  231. package/core/directives/last-form-item.directive.d.ts +8 -0
  232. package/core/directives/page-header-content.directive.d.ts +25 -0
  233. package/core/directives/readonly-field.directive.d.ts +39 -0
  234. package/core/directives/resize.directive.d.ts +17 -0
  235. package/core/directives/scroll-border-observer.directive.d.ts +23 -0
  236. package/core/directives/scroll-to-first-invalid.directive.d.ts +24 -0
  237. package/core/guards/feature.guard.d.ts +28 -0
  238. package/core/guards/index.d.ts +4 -0
  239. package/core/guards/intercept-deactivate.guard.d.ts +13 -0
  240. package/core/guards/leave-edit-page.guard.d.ts +13 -0
  241. package/core/guards/project-namespace.guard.d.ts +23 -0
  242. package/core/index.d.ts +1 -0
  243. package/core/module.d.ts +33 -0
  244. package/core/pipes/cron-human-readable.pipe.d.ts +14 -0
  245. package/core/pipes/crontab-next.pipe.d.ts +18 -0
  246. package/core/pipes/field-not-available.pipe.d.ts +13 -0
  247. package/core/pipes/img-header.pipe.d.ts +7 -0
  248. package/core/pipes/img-theme.pipe.d.ts +13 -0
  249. package/core/pipes/index.d.ts +17 -0
  250. package/core/pipes/k8s-util.pipe.d.ts +98 -0
  251. package/core/pipes/k8s-util.pipe.module.d.ts +7 -0
  252. package/core/pipes/keyvalue.pipe.d.ts +9 -0
  253. package/core/pipes/marked.pipe.d.ts +8 -0
  254. package/core/pipes/minimum-format.pipe.d.ts +10 -0
  255. package/core/pipes/page-env.pipe.d.ts +34 -0
  256. package/core/pipes/parse-json-translate.pipe.d.ts +9 -0
  257. package/core/pipes/parse-json.pipe.d.ts +7 -0
  258. package/core/pipes/safe.pipe.d.ts +10 -0
  259. package/core/pipes/time.pipe.d.ts +41 -0
  260. package/core/pipes/timezone-display.pipe.d.ts +10 -0
  261. package/core/pipes/trust-url.pipe.d.ts +19 -0
  262. package/core/public-api.d.ts +16 -0
  263. package/core/services/aui-paginator-intl.service.d.ts +13 -0
  264. package/core/services/aui-tooltip-copy-intl.service.d.ts +11 -0
  265. package/core/services/context.service.d.ts +33 -0
  266. package/core/services/custom-code-editor-intl.service.d.ts +33 -0
  267. package/core/services/feature-gate.service.d.ts +35 -0
  268. package/core/services/form-row-duplicate/form-row-duplicate.service.d.ts +45 -0
  269. package/core/services/index.d.ts +14 -0
  270. package/core/services/intercept-deactivate.service.d.ts +28 -0
  271. package/core/services/k8s-util.service.d.ts +78 -0
  272. package/core/services/on-resize.service.d.ts +20 -0
  273. package/core/services/silently-navigate.service.d.ts +11 -0
  274. package/core/services/time.service.d.ts +17 -0
  275. package/core/services/ui-state.service.d.ts +41 -0
  276. package/core/services/workspace-helper.service.d.ts +12 -0
  277. package/core/services/yaml-util.service.d.ts +20 -0
  278. package/core/types/commons.d.ts +40 -0
  279. package/core/types/helpers.d.ts +35 -0
  280. package/core/types/index.d.ts +10 -0
  281. package/core/types/k8s/core.d.ts +91 -0
  282. package/core/types/k8s/crd.d.ts +444 -0
  283. package/core/types/k8s/index.d.ts +3 -0
  284. package/core/types/k8s/raw.d.ts +978 -0
  285. package/core/types/resource-definitions.d.ts +734 -0
  286. package/core/types/schema.d.ts +14 -0
  287. package/core/utils/browser.d.ts +3 -0
  288. package/core/utils/cache-store.d.ts +33 -0
  289. package/core/utils/color-helpers.d.ts +4 -0
  290. package/core/utils/common.d.ts +54 -0
  291. package/core/utils/create-recursive-filter.d.ts +41 -0
  292. package/core/utils/cron-util.d.ts +8 -0
  293. package/core/utils/decorators.d.ts +12 -0
  294. package/core/utils/format-number.d.ts +11 -0
  295. package/core/utils/index.d.ts +22 -0
  296. package/core/utils/k8s-pattern.d.ts +12 -0
  297. package/core/utils/k8s-util.d.ts +28 -0
  298. package/core/utils/local-storage-constants.d.ts +1 -0
  299. package/core/utils/node.d.ts +8 -0
  300. package/core/utils/observable.d.ts +4 -0
  301. package/core/utils/operators.d.ts +19 -0
  302. package/core/utils/request-pool.d.ts +12 -0
  303. package/core/utils/resources.d.ts +19 -0
  304. package/core/utils/tree.d.ts +16 -0
  305. package/core/utils/unit.d.ts +23 -0
  306. package/core/utils/version.d.ts +39 -0
  307. package/core/utils/with-load-state.d.ts +11 -0
  308. package/core/utils/workspace.d.ts +28 -0
  309. package/core/utils/yaml.d.ts +10 -0
  310. package/custom-columns-setting/component.d.ts +16 -0
  311. package/custom-columns-setting/public-api.d.ts +1 -0
  312. package/disabled-container/disabled-container.component.d.ts +21 -0
  313. package/disabled-container/disabled-container.module.d.ts +10 -0
  314. package/disabled-container/public-api.d.ts +8 -0
  315. package/editable-text/component.d.ts +24 -0
  316. package/editable-text/index.d.ts +2 -0
  317. package/editable-text/module.d.ts +11 -0
  318. package/effect-directive/coerce-number.directive.d.ts +8 -0
  319. package/effect-directive/e2e-attribute-binding.directive.d.ts +10 -0
  320. package/effect-directive/event.directive.d.ts +11 -0
  321. package/effect-directive/min-max.directive.d.ts +30 -0
  322. package/effect-directive/module.d.ts +20 -0
  323. package/effect-directive/public-api.d.ts +7 -0
  324. package/effect-directive/trim.directive.d.ts +7 -0
  325. package/effect-directive/validators.directive.d.ts +12 -0
  326. package/errors-mapper/base-errors-mapper.d.ts +13 -0
  327. package/errors-mapper/default-errors-mapper.service.d.ts +10 -0
  328. package/errors-mapper/errors-mapper-component/component.d.ts +19 -0
  329. package/errors-mapper/errors-mapper.directive.d.ts +39 -0
  330. package/errors-mapper/errors-mapper.module.d.ts +8 -0
  331. package/errors-mapper/public-api.d.ts +4 -0
  332. package/errors-mapper/types.d.ts +16 -0
  333. package/esm2022/a-chart/a-chart.module.mjs +76 -0
  334. package/esm2022/a-chart/base-chart.mjs +84 -0
  335. package/esm2022/a-chart/chart-status.component.mjs +195 -0
  336. package/esm2022/a-chart/chart.component.mjs +283 -0
  337. package/esm2022/a-chart/components/base-component.mjs +23 -0
  338. package/esm2022/a-chart/components/index.mjs +4 -0
  339. package/esm2022/a-chart/components/legend/base-legend.component.mjs +110 -0
  340. package/esm2022/a-chart/components/legend/dropdown-legend.mjs +199 -0
  341. package/esm2022/a-chart/components/legend/index.mjs +4 -0
  342. package/esm2022/a-chart/components/legend/legend.component.mjs +102 -0
  343. package/esm2022/a-chart/components/title.component.mjs +99 -0
  344. package/esm2022/a-chart/constant.mjs +22 -0
  345. package/esm2022/a-chart/public-api.mjs +13 -0
  346. package/esm2022/a-chart/types.mjs +2 -0
  347. package/esm2022/a-chart/utils.mjs +37 -0
  348. package/esm2022/a-metric-chart/a-metric-chart.component.mjs +853 -0
  349. package/esm2022/a-metric-chart/a-metric-chart.module.mjs +76 -0
  350. package/esm2022/a-metric-chart/bar-gauge/bar-gauge.component.mjs +165 -0
  351. package/esm2022/a-metric-chart/base-chart.component.mjs +30 -0
  352. package/esm2022/a-metric-chart/metric-chart-refresh.service.mjs +18 -0
  353. package/esm2022/a-metric-chart/public-api.mjs +14 -0
  354. package/esm2022/a-metric-chart/stat-chart/stat-chart.component.mjs +70 -0
  355. package/esm2022/a-metric-chart/table-chart/table-chart.component.mjs +201 -0
  356. package/esm2022/a-metric-chart/types.mjs +17 -0
  357. package/esm2022/a-metric-chart/utils/index.mjs +4 -0
  358. package/esm2022/a-metric-chart/utils/range.mjs +35 -0
  359. package/esm2022/a-metric-chart/utils/unit.mjs +83 -0
  360. package/esm2022/a-metric-chart/utils/util.mjs +219 -0
  361. package/esm2022/abnormal-page/abnormal-page.component.mjs +66 -0
  362. package/esm2022/abnormal-page/abnormal-page.module.mjs +27 -0
  363. package/esm2022/abnormal-page/public-api.mjs +3 -0
  364. package/esm2022/alauda-fe-common.mjs +5 -0
  365. package/esm2022/api/api-gateway.interceptor.mjs +28 -0
  366. package/esm2022/api/api-gateway.service.mjs +38 -0
  367. package/esm2022/api/cluster-version.service.mjs +67 -0
  368. package/esm2022/api/crypto.interceptor.mjs +186 -0
  369. package/esm2022/api/helpers.mjs +101 -0
  370. package/esm2022/api/k8s-api-resource.service.mjs +73 -0
  371. package/esm2022/api/k8s-api.service.mjs +394 -0
  372. package/esm2022/api/monitor-api.service.mjs +158 -0
  373. package/esm2022/api/page-visibility.service.mjs +18 -0
  374. package/esm2022/api/platform-ui.service.mjs +95 -0
  375. package/esm2022/api/product.service.mjs +36 -0
  376. package/esm2022/api/project-api.service.mjs +32 -0
  377. package/esm2022/api/public-api.mjs +21 -0
  378. package/esm2022/api/resource-update.service.mjs +62 -0
  379. package/esm2022/api/types.mjs +30 -0
  380. package/esm2022/array-form-table/base-string-map-form.component.mjs +92 -0
  381. package/esm2022/array-form-table/form/component.mjs +466 -0
  382. package/esm2022/array-form-table/form/module.mjs +38 -0
  383. package/esm2022/array-form-table/key-value-form/component.mjs +280 -0
  384. package/esm2022/array-form-table/key-value-table/component.mjs +74 -0
  385. package/esm2022/array-form-table/public-api.mjs +11 -0
  386. package/esm2022/async-data/async-data-loader.mjs +63 -0
  387. package/esm2022/async-data/async-data.module.mjs +22 -0
  388. package/esm2022/async-data/error-page/component.mjs +152 -0
  389. package/esm2022/async-data/page-state/component.mjs +129 -0
  390. package/esm2022/async-data/public-api.mjs +12 -0
  391. package/esm2022/async-data/types.mjs +6 -0
  392. package/esm2022/authorization/app-init-url.mjs +33 -0
  393. package/esm2022/authorization/guard.service.mjs +42 -0
  394. package/esm2022/authorization/interceptor.service.mjs +149 -0
  395. package/esm2022/authorization/public-api.mjs +12 -0
  396. package/esm2022/authorization/session-manage.service.mjs +60 -0
  397. package/esm2022/authorization/state.service.mjs +254 -0
  398. package/esm2022/business/module-info/api.service.mjs +39 -0
  399. package/esm2022/business/module-info/public-api.mjs +2 -0
  400. package/esm2022/business/public-api.mjs +8 -0
  401. package/esm2022/business/resource-select/base-list.mjs +84 -0
  402. package/esm2022/business/resource-select/context.service.mjs +69 -0
  403. package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +98 -0
  404. package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +96 -0
  405. package/esm2022/business/resource-select/exports/namespace-page/component.mjs +78 -0
  406. package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +186 -0
  407. package/esm2022/business/resource-select/exports/project-page/component.mjs +53 -0
  408. package/esm2022/business/resource-select/exports/project-selector/component.mjs +124 -0
  409. package/esm2022/business/resource-select/helpers.directive.mjs +13 -0
  410. package/esm2022/business/resource-select/internals/cluster-list/component.mjs +74 -0
  411. package/esm2022/business/resource-select/internals/data-grid/component.mjs +584 -0
  412. package/esm2022/business/resource-select/internals/icon/component.mjs +56 -0
  413. package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +65 -0
  414. package/esm2022/business/resource-select/internals/namespace-list/component.mjs +432 -0
  415. package/esm2022/business/resource-select/internals/no-data/component.mjs +142 -0
  416. package/esm2022/business/resource-select/internals/project-list/component.mjs +75 -0
  417. package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +79 -0
  418. package/esm2022/business/resource-select/internals/selector-popup/component.mjs +45 -0
  419. package/esm2022/business/resource-select/internals/selector-popup/ref.mjs +20 -0
  420. package/esm2022/business/resource-select/internals/selector-popup/service.mjs +60 -0
  421. package/esm2022/business/resource-select/module.mjs +166 -0
  422. package/esm2022/business/resource-select/project.service.mjs +47 -0
  423. package/esm2022/business/resource-select/public-api.mjs +17 -0
  424. package/esm2022/business/resource-select/types.mjs +17 -0
  425. package/esm2022/business/resource-select/utils.mjs +25 -0
  426. package/esm2022/chart/chart.module.mjs +120 -0
  427. package/esm2022/chart/chart.service.mjs +237 -0
  428. package/esm2022/chart/common/axis/axis-label.component.mjs +106 -0
  429. package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +217 -0
  430. package/esm2022/chart/common/axis/x-axis.component.mjs +109 -0
  431. package/esm2022/chart/common/axis/x-plot-lines.component.mjs +101 -0
  432. package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +233 -0
  433. package/esm2022/chart/common/axis/y-axis.component.mjs +122 -0
  434. package/esm2022/chart/common/axis/y-plot-lines.component.mjs +126 -0
  435. package/esm2022/chart/common/chart/chart.component.mjs +269 -0
  436. package/esm2022/chart/common/index.mjs +18 -0
  437. package/esm2022/chart/common/legend/legend.component.mjs +269 -0
  438. package/esm2022/chart/common/range-area/range-area.component.mjs +144 -0
  439. package/esm2022/chart/common/reference-area/reference-area.component.mjs +46 -0
  440. package/esm2022/chart/common/series/area-series.component.mjs +89 -0
  441. package/esm2022/chart/common/series/bar-path.component.mjs +156 -0
  442. package/esm2022/chart/common/series/bar-series.component.mjs +88 -0
  443. package/esm2022/chart/common/series/line-series.component.mjs +59 -0
  444. package/esm2022/chart/common/series/series.component.mjs +166 -0
  445. package/esm2022/chart/common/tooltip/tooltip.component.mjs +520 -0
  446. package/esm2022/chart/constants.mjs +22 -0
  447. package/esm2022/chart/custom-template/dropdown-legend.mjs +112 -0
  448. package/esm2022/chart/public-api.mjs +10 -0
  449. package/esm2022/chart/types.mjs +6 -0
  450. package/esm2022/chart/utils.mjs +117 -0
  451. package/esm2022/code/code-display-dialog/component.mjs +59 -0
  452. package/esm2022/code/code-editor-configs.mjs +62 -0
  453. package/esm2022/code/code.module.mjs +73 -0
  454. package/esm2022/code/k8s-yaml-display-dialog/component.mjs +53 -0
  455. package/esm2022/code/public-api.mjs +12 -0
  456. package/esm2022/code/resource-yaml-display/component.mjs +114 -0
  457. package/esm2022/core/abstract/base-form-container.mjs +131 -0
  458. package/esm2022/core/abstract/base-nested-form-control.mjs +195 -0
  459. package/esm2022/core/abstract/index.mjs +3 -0
  460. package/esm2022/core/components/index.mjs +2 -0
  461. package/esm2022/core/components/tree/index.mjs +2 -0
  462. package/esm2022/core/components/tree/module.mjs +41 -0
  463. package/esm2022/core/components/tree/node/component.mjs +47 -0
  464. package/esm2022/core/components/tree/outlet.mjs +34 -0
  465. package/esm2022/core/components/tree/padding.mjs +41 -0
  466. package/esm2022/core/components/tree/public-api.mjs +7 -0
  467. package/esm2022/core/components/tree/toggle.mjs +44 -0
  468. package/esm2022/core/components/tree/tree/component.mjs +27 -0
  469. package/esm2022/core/constants/constants.mjs +84 -0
  470. package/esm2022/core/constants/index.mjs +6 -0
  471. package/esm2022/core/constants/patterns.mjs +28 -0
  472. package/esm2022/core/constants/status-icons.mjs +31 -0
  473. package/esm2022/core/constants/timezones.mjs +234 -0
  474. package/esm2022/core/constants/tokens.mjs +129 -0
  475. package/esm2022/core/directives/click-outside.directive.mjs +51 -0
  476. package/esm2022/core/directives/disabled.directive.mjs +76 -0
  477. package/esm2022/core/directives/feature-gate.directive.mjs +87 -0
  478. package/esm2022/core/directives/index.mjs +11 -0
  479. package/esm2022/core/directives/intercept-deactivate.directive.mjs +52 -0
  480. package/esm2022/core/directives/last-form-item.directive.mjs +18 -0
  481. package/esm2022/core/directives/page-header-content.directive.mjs +41 -0
  482. package/esm2022/core/directives/readonly-field.directive.mjs +157 -0
  483. package/esm2022/core/directives/resize.directive.mjs +39 -0
  484. package/esm2022/core/directives/scroll-border-observer.directive.mjs +77 -0
  485. package/esm2022/core/directives/scroll-to-first-invalid.directive.mjs +130 -0
  486. package/esm2022/core/guards/feature.guard.mjs +60 -0
  487. package/esm2022/core/guards/index.mjs +5 -0
  488. package/esm2022/core/guards/intercept-deactivate.guard.mjs +40 -0
  489. package/esm2022/core/guards/leave-edit-page.guard.mjs +32 -0
  490. package/esm2022/core/guards/project-namespace.guard.mjs +70 -0
  491. package/esm2022/core/index.mjs +2 -0
  492. package/esm2022/core/module.mjs +145 -0
  493. package/esm2022/core/pipes/cron-human-readable.pipe.mjs +33 -0
  494. package/esm2022/core/pipes/crontab-next.pipe.mjs +62 -0
  495. package/esm2022/core/pipes/field-not-available.pipe.mjs +25 -0
  496. package/esm2022/core/pipes/img-header.pipe.mjs +18 -0
  497. package/esm2022/core/pipes/img-theme.pipe.mjs +37 -0
  498. package/esm2022/core/pipes/index.mjs +18 -0
  499. package/esm2022/core/pipes/k8s-util.pipe.mjs +196 -0
  500. package/esm2022/core/pipes/k8s-util.pipe.module.mjs +56 -0
  501. package/esm2022/core/pipes/keyvalue.pipe.mjs +20 -0
  502. package/esm2022/core/pipes/marked.pipe.mjs +17 -0
  503. package/esm2022/core/pipes/minimum-format.pipe.mjs +24 -0
  504. package/esm2022/core/pipes/page-env.pipe.mjs +66 -0
  505. package/esm2022/core/pipes/parse-json-translate.pipe.mjs +29 -0
  506. package/esm2022/core/pipes/parse-json.pipe.mjs +22 -0
  507. package/esm2022/core/pipes/safe.pipe.mjs +44 -0
  508. package/esm2022/core/pipes/time.pipe.mjs +115 -0
  509. package/esm2022/core/pipes/timezone-display.pipe.mjs +21 -0
  510. package/esm2022/core/pipes/trust-url.pipe.mjs +28 -0
  511. package/esm2022/core/public-api.mjs +17 -0
  512. package/esm2022/core/services/aui-paginator-intl.service.mjs +26 -0
  513. package/esm2022/core/services/aui-tooltip-copy-intl.service.mjs +24 -0
  514. package/esm2022/core/services/context.service.mjs +48 -0
  515. package/esm2022/core/services/custom-code-editor-intl.service.mjs +54 -0
  516. package/esm2022/core/services/feature-gate.service.mjs +73 -0
  517. package/esm2022/core/services/form-row-duplicate/form-row-duplicate.service.mjs +280 -0
  518. package/esm2022/core/services/index.mjs +15 -0
  519. package/esm2022/core/services/intercept-deactivate.service.mjs +78 -0
  520. package/esm2022/core/services/k8s-util.service.mjs +181 -0
  521. package/esm2022/core/services/on-resize.service.mjs +52 -0
  522. package/esm2022/core/services/silently-navigate.service.mjs +28 -0
  523. package/esm2022/core/services/time.service.mjs +46 -0
  524. package/esm2022/core/services/ui-state.service.mjs +68 -0
  525. package/esm2022/core/services/workspace-helper.service.mjs +21 -0
  526. package/esm2022/core/services/yaml-util.service.mjs +97 -0
  527. package/esm2022/core/types/commons.mjs +6 -0
  528. package/esm2022/core/types/helpers.mjs +12 -0
  529. package/esm2022/core/types/index.mjs +11 -0
  530. package/esm2022/core/types/k8s/core.mjs +2 -0
  531. package/esm2022/core/types/k8s/crd.mjs +26 -0
  532. package/esm2022/core/types/k8s/index.mjs +4 -0
  533. package/esm2022/core/types/k8s/raw.mjs +123 -0
  534. package/esm2022/core/types/resource-definitions.mjs +408 -0
  535. package/esm2022/core/types/schema.mjs +2 -0
  536. package/esm2022/core/utils/browser.mjs +15 -0
  537. package/esm2022/core/utils/cache-store.mjs +55 -0
  538. package/esm2022/core/utils/color-helpers.mjs +6 -0
  539. package/esm2022/core/utils/common.mjs +261 -0
  540. package/esm2022/core/utils/create-recursive-filter.mjs +57 -0
  541. package/esm2022/core/utils/cron-util.mjs +44 -0
  542. package/esm2022/core/utils/decorators.mjs +116 -0
  543. package/esm2022/core/utils/format-number.mjs +229 -0
  544. package/esm2022/core/utils/index.mjs +23 -0
  545. package/esm2022/core/utils/k8s-pattern.mjs +13 -0
  546. package/esm2022/core/utils/k8s-util.mjs +97 -0
  547. package/esm2022/core/utils/local-storage-constants.mjs +2 -0
  548. package/esm2022/core/utils/node.mjs +18 -0
  549. package/esm2022/core/utils/observable.mjs +23 -0
  550. package/esm2022/core/utils/operators.mjs +32 -0
  551. package/esm2022/core/utils/request-pool.mjs +37 -0
  552. package/esm2022/core/utils/resources.mjs +66 -0
  553. package/esm2022/core/utils/tree.mjs +79 -0
  554. package/esm2022/core/utils/unit.mjs +199 -0
  555. package/esm2022/core/utils/version.mjs +76 -0
  556. package/esm2022/core/utils/with-load-state.mjs +21 -0
  557. package/esm2022/core/utils/workspace.mjs +59 -0
  558. package/esm2022/core/utils/yaml.mjs +46 -0
  559. package/esm2022/custom-columns-setting/component.mjs +107 -0
  560. package/esm2022/custom-columns-setting/public-api.mjs +2 -0
  561. package/esm2022/disabled-container/disabled-container.component.mjs +88 -0
  562. package/esm2022/disabled-container/disabled-container.module.mjs +28 -0
  563. package/esm2022/disabled-container/public-api.mjs +9 -0
  564. package/esm2022/editable-text/component.mjs +96 -0
  565. package/esm2022/editable-text/index.mjs +3 -0
  566. package/esm2022/editable-text/module.mjs +44 -0
  567. package/esm2022/effect-directive/coerce-number.directive.mjs +57 -0
  568. package/esm2022/effect-directive/e2e-attribute-binding.directive.mjs +57 -0
  569. package/esm2022/effect-directive/event.directive.mjs +56 -0
  570. package/esm2022/effect-directive/min-max.directive.mjs +111 -0
  571. package/esm2022/effect-directive/module.mjs +46 -0
  572. package/esm2022/effect-directive/public-api.mjs +8 -0
  573. package/esm2022/effect-directive/trim.directive.mjs +43 -0
  574. package/esm2022/effect-directive/validators.directive.mjs +43 -0
  575. package/esm2022/errors-mapper/base-errors-mapper.mjs +42 -0
  576. package/esm2022/errors-mapper/default-errors-mapper.service.mjs +65 -0
  577. package/esm2022/errors-mapper/errors-mapper-component/component.mjs +71 -0
  578. package/esm2022/errors-mapper/errors-mapper.directive.mjs +115 -0
  579. package/esm2022/errors-mapper/errors-mapper.module.mjs +18 -0
  580. package/esm2022/errors-mapper/public-api.mjs +5 -0
  581. package/esm2022/errors-mapper/types.mjs +2 -0
  582. package/esm2022/exec/constants.mjs +64 -0
  583. package/esm2022/exec/index.mjs +8 -0
  584. package/esm2022/exec/module.mjs +82 -0
  585. package/esm2022/exec/placeholder/component.mjs +42 -0
  586. package/esm2022/exec/service.mjs +38 -0
  587. package/esm2022/exec/terminal/component.mjs +571 -0
  588. package/esm2022/exec/terminal-group/component.mjs +206 -0
  589. package/esm2022/exec/types.mjs +2 -0
  590. package/esm2022/feature-gate-forbidden/component/component.mjs +36 -0
  591. package/esm2022/feature-gate-forbidden/index.mjs +3 -0
  592. package/esm2022/feature-gate-forbidden/module.mjs +28 -0
  593. package/esm2022/form/index.mjs +5 -0
  594. package/esm2022/form/labels-editor/component.mjs +240 -0
  595. package/esm2022/form/taints-editor/component.mjs +210 -0
  596. package/esm2022/form/utils.mjs +61 -0
  597. package/esm2022/form/validators/async-function-validator.directive.mjs +48 -0
  598. package/esm2022/form/validators/dns1123-subdomain.mjs +42 -0
  599. package/esm2022/form/validators/function-validator.directive.mjs +48 -0
  600. package/esm2022/form/validators/maxlength-minlength-validator.directive.mjs +69 -0
  601. package/esm2022/form/validators/module.mjs +42 -0
  602. package/esm2022/form/validators/not-be-validator.directive.mjs +55 -0
  603. package/esm2022/form/validators/one-of-validator.directive.mjs +56 -0
  604. package/esm2022/form/validators/public-api.mjs +11 -0
  605. package/esm2022/form/validators/resource-limit.mjs +79 -0
  606. package/esm2022/form/validators/strong-password/index.mjs +4 -0
  607. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +102 -0
  608. package/esm2022/form/validators/strong-password/strong-password-tooltip/index.mjs +2 -0
  609. package/esm2022/form/validators/strong-password/strong-password-validator.directive.mjs +172 -0
  610. package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +42 -0
  611. package/esm2022/form/validators/utils.mjs +107 -0
  612. package/esm2022/graph-canvas/components/graph-actions.component.mjs +48 -0
  613. package/esm2022/graph-canvas/components/graph-canvas.component.mjs +354 -0
  614. package/esm2022/graph-canvas/components/graph-link.component.mjs +140 -0
  615. package/esm2022/graph-canvas/components/graph-links.component.mjs +19 -0
  616. package/esm2022/graph-canvas/components/graph-node.directive.mjs +30 -0
  617. package/esm2022/graph-canvas/graph-canvas.module.mjs +49 -0
  618. package/esm2022/graph-canvas/graph-store.service.mjs +45 -0
  619. package/esm2022/graph-canvas/public-api.mjs +8 -0
  620. package/esm2022/graph-canvas/types.mjs +2 -0
  621. package/esm2022/graph-canvas/utils.mjs +16 -0
  622. package/esm2022/grid-layout/components/grid/component.mjs +286 -0
  623. package/esm2022/grid-layout/components/grid-items/component.mjs +228 -0
  624. package/esm2022/grid-layout/constant.mjs +7 -0
  625. package/esm2022/grid-layout/directives/drag-handler.directive.mjs +29 -0
  626. package/esm2022/grid-layout/directives/placeholder.directive.mjs +36 -0
  627. package/esm2022/grid-layout/directives/remove-handler.directive.mjs +22 -0
  628. package/esm2022/grid-layout/directives/resize-handler.directive.mjs +29 -0
  629. package/esm2022/grid-layout/grid-layout.service.mjs +85 -0
  630. package/esm2022/grid-layout/grid-placeholder.service.mjs +45 -0
  631. package/esm2022/grid-layout/index.mjs +11 -0
  632. package/esm2022/grid-layout/module.mjs +38 -0
  633. package/esm2022/grid-layout/type.mjs +6 -0
  634. package/esm2022/grid-layout/utils/client-rect.utils.mjs +12 -0
  635. package/esm2022/grid-layout/utils/grid.utils.mjs +265 -0
  636. package/esm2022/grid-layout/utils/mouse.utils.mjs +50 -0
  637. package/esm2022/grid-layout/utils/operator.mjs +6 -0
  638. package/esm2022/grid-layout/utils/react-grid-layout.utils.mjs +471 -0
  639. package/esm2022/grid-layout/utils/scroll.utils.mjs +209 -0
  640. package/esm2022/help-document/component.mjs +103 -0
  641. package/esm2022/help-document/directive.mjs +128 -0
  642. package/esm2022/help-document/module.mjs +47 -0
  643. package/esm2022/help-document/public-api.mjs +10 -0
  644. package/esm2022/help-document/service.mjs +57 -0
  645. package/esm2022/iframe-config/config.service.mjs +49 -0
  646. package/esm2022/iframe-config/constants.mjs +8 -0
  647. package/esm2022/iframe-config/public-api.mjs +9 -0
  648. package/esm2022/k8s-resource-list/footer/component.mjs +331 -0
  649. package/esm2022/k8s-resource-list/k8s-resource-list.mjs +226 -0
  650. package/esm2022/k8s-resource-list/k8s-resource-list.module.mjs +43 -0
  651. package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +176 -0
  652. package/esm2022/k8s-resource-list/public-api.mjs +13 -0
  653. package/esm2022/k8s-resource-list/types.mjs +11 -0
  654. package/esm2022/k8s-resource-list/utils.mjs +81 -0
  655. package/esm2022/license/license-api.mjs +55 -0
  656. package/esm2022/license/license-error/component.mjs +113 -0
  657. package/esm2022/license/license-error/module.mjs +55 -0
  658. package/esm2022/license/license.guard.mjs +54 -0
  659. package/esm2022/license/license.service.mjs +53 -0
  660. package/esm2022/license/license.type.mjs +24 -0
  661. package/esm2022/license/public-api.mjs +12 -0
  662. package/esm2022/metric-chart/common-chart.service.mjs +77 -0
  663. package/esm2022/metric-chart/helpers.mjs +111 -0
  664. package/esm2022/metric-chart/metric-chart.component.mjs +344 -0
  665. package/esm2022/metric-chart/metric-chart.module.mjs +61 -0
  666. package/esm2022/metric-chart/metric-time-pick.mjs +114 -0
  667. package/esm2022/metric-chart/public-api.mjs +14 -0
  668. package/esm2022/metric-chart/range-util.mjs +35 -0
  669. package/esm2022/metric-chart/types.mjs +2 -0
  670. package/esm2022/metric-chart/utils.mjs +220 -0
  671. package/esm2022/multi-search/action-input/component.mjs +1055 -0
  672. package/esm2022/multi-search/form/component.mjs +379 -0
  673. package/esm2022/multi-search/index.mjs +5 -0
  674. package/esm2022/multi-search/multi-search-tags/component.mjs +129 -0
  675. package/esm2022/multi-search/types.mjs +2 -0
  676. package/esm2022/multi-search/utils.mjs +48 -0
  677. package/esm2022/mutable/element.mjs +23 -0
  678. package/esm2022/mutable/mosaic/mosaic.component.mjs +98 -0
  679. package/esm2022/mutable/mosaic/mosaic.directive.mjs +23 -0
  680. package/esm2022/mutable/mutable.directive.mjs +356 -0
  681. package/esm2022/mutable/mutable.module.mjs +41 -0
  682. package/esm2022/mutable/public-api.mjs +6 -0
  683. package/esm2022/mutable/util.mjs +16 -0
  684. package/esm2022/notification/errors-mapper.mjs +28 -0
  685. package/esm2022/notification/feedback-notification/component.mjs +95 -0
  686. package/esm2022/notification/helpers.mjs +4 -0
  687. package/esm2022/notification/notification-util.module.mjs +32 -0
  688. package/esm2022/notification/notification-util.service.mjs +156 -0
  689. package/esm2022/notification/public-api.mjs +13 -0
  690. package/esm2022/notification/resource-error.interceptor.mjs +60 -0
  691. package/esm2022/overview-banner/overview-banner.component.mjs +34 -0
  692. package/esm2022/overview-banner/overview-banner.module.mjs +20 -0
  693. package/esm2022/overview-banner/overview-banner.types.mjs +2 -0
  694. package/esm2022/overview-banner/public-api.mjs +4 -0
  695. package/esm2022/page-guard/component/component.mjs +295 -0
  696. package/esm2022/page-guard/component/helper-directives.mjs +51 -0
  697. package/esm2022/page-guard/component/page-guard.type.mjs +82 -0
  698. package/esm2022/page-guard/module.mjs +37 -0
  699. package/esm2022/page-guard/public-api.mjs +11 -0
  700. package/esm2022/page-scaffold/index.mjs +5 -0
  701. package/esm2022/page-scaffold/module.mjs +21 -0
  702. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb-slot.directive.mjs +26 -0
  703. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +266 -0
  704. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.service.mjs +27 -0
  705. package/esm2022/page-scaffold/navigation/breadcrumb/index.mjs +5 -0
  706. package/esm2022/page-scaffold/navigation/breadcrumb/module.mjs +44 -0
  707. package/esm2022/page-scaffold/navigation/index.mjs +7 -0
  708. package/esm2022/page-scaffold/navigation/lottie-icons/animation-data.mjs +113 -0
  709. package/esm2022/page-scaffold/navigation/lottie-icons/animations/alarm.json +1 -0
  710. package/esm2022/page-scaffold/navigation/lottie-icons/animations/app.json +1 -0
  711. package/esm2022/page-scaffold/navigation/lottie-icons/animations/application.json +1 -0
  712. package/esm2022/page-scaffold/navigation/lottie-icons/animations/artifactory.json +1 -0
  713. package/esm2022/page-scaffold/navigation/lottie-icons/animations/audit.json +1 -0
  714. package/esm2022/page-scaffold/navigation/lottie-icons/animations/auxiliary_function.json +1 -0
  715. package/esm2022/page-scaffold/navigation/lottie-icons/animations/backup.json +1 -0
  716. package/esm2022/page-scaffold/navigation/lottie-icons/animations/bar_chart.json +1 -0
  717. package/esm2022/page-scaffold/navigation/lottie-icons/animations/bill.json +1 -0
  718. package/esm2022/page-scaffold/navigation/lottie-icons/animations/catalog.json +1 -0
  719. package/esm2022/page-scaffold/navigation/lottie-icons/animations/certificate.json +1 -0
  720. package/esm2022/page-scaffold/navigation/lottie-icons/animations/ci.json +1 -0
  721. package/esm2022/page-scaffold/navigation/lottie-icons/animations/code.json +1 -0
  722. package/esm2022/page-scaffold/navigation/lottie-icons/animations/data_service.json +1 -0
  723. package/esm2022/page-scaffold/navigation/lottie-icons/animations/devops.json +1 -0
  724. package/esm2022/page-scaffold/navigation/lottie-icons/animations/devops_tools.json +1 -0
  725. package/esm2022/page-scaffold/navigation/lottie-icons/animations/events.json +1 -0
  726. package/esm2022/page-scaffold/navigation/lottie-icons/animations/file.json +1 -0
  727. package/esm2022/page-scaffold/navigation/lottie-icons/animations/gateway.json +1 -0
  728. package/esm2022/page-scaffold/navigation/lottie-icons/animations/gitops.json +1 -0
  729. package/esm2022/page-scaffold/navigation/lottie-icons/animations/inspection.json +1 -0
  730. package/esm2022/page-scaffold/navigation/lottie-icons/animations/internet.json +1 -0
  731. package/esm2022/page-scaffold/navigation/lottie-icons/animations/kafka.json +1 -0
  732. package/esm2022/page-scaffold/navigation/lottie-icons/animations/log.json +1 -0
  733. package/esm2022/page-scaffold/navigation/lottie-icons/animations/member.json +1 -0
  734. package/esm2022/page-scaffold/navigation/lottie-icons/animations/mongodb.json +1 -0
  735. package/esm2022/page-scaffold/navigation/lottie-icons/animations/monitor.json +1 -0
  736. package/esm2022/page-scaffold/navigation/lottie-icons/animations/mysql.json +1 -0
  737. package/esm2022/page-scaffold/navigation/lottie-icons/animations/namespace.json +1 -0
  738. package/esm2022/page-scaffold/navigation/lottie-icons/animations/notice.json +1 -0
  739. package/esm2022/page-scaffold/navigation/lottie-icons/animations/oam.json +1 -0
  740. package/esm2022/page-scaffold/navigation/lottie-icons/animations/operation_center.json +1 -0
  741. package/esm2022/page-scaffold/navigation/lottie-icons/animations/params_template.json +1 -0
  742. package/esm2022/page-scaffold/navigation/lottie-icons/animations/pipeline.json +1 -0
  743. package/esm2022/page-scaffold/navigation/lottie-icons/animations/platform_settings.json +1 -0
  744. package/esm2022/page-scaffold/navigation/lottie-icons/animations/postgresql.json +1 -0
  745. package/esm2022/page-scaffold/navigation/lottie-icons/animations/product.json +1 -0
  746. package/esm2022/page-scaffold/navigation/lottie-icons/animations/proj.json +1 -0
  747. package/esm2022/page-scaffold/navigation/lottie-icons/animations/rabbitmq.json +1 -0
  748. package/esm2022/page-scaffold/navigation/lottie-icons/animations/redis.json +1 -0
  749. package/esm2022/page-scaffold/navigation/lottie-icons/animations/resource_list.json +1 -0
  750. package/esm2022/page-scaffold/navigation/lottie-icons/animations/rocketmq.json +1 -0
  751. package/esm2022/page-scaffold/navigation/lottie-icons/animations/scrum.json +1 -0
  752. package/esm2022/page-scaffold/navigation/lottie-icons/animations/secrets.json +1 -0
  753. package/esm2022/page-scaffold/navigation/lottie-icons/animations/security.json +1 -0
  754. package/esm2022/page-scaffold/navigation/lottie-icons/animations/server.json +1 -0
  755. package/esm2022/page-scaffold/navigation/lottie-icons/animations/service_mesh.json +1 -0
  756. package/esm2022/page-scaffold/navigation/lottie-icons/animations/sitemap.json +1 -0
  757. package/esm2022/page-scaffold/navigation/lottie-icons/animations/sliders_up.json +1 -0
  758. package/esm2022/page-scaffold/navigation/lottie-icons/animations/storage.json +1 -0
  759. package/esm2022/page-scaffold/navigation/lottie-icons/animations/test_management.json +1 -0
  760. package/esm2022/page-scaffold/navigation/lottie-icons/animations/topology.json +1 -0
  761. package/esm2022/page-scaffold/navigation/lottie-icons/animations/user_role.json +1 -0
  762. package/esm2022/page-scaffold/navigation/lottie-icons/animations/view_jaeger.json +1 -0
  763. package/esm2022/page-scaffold/navigation/lottie-icons/animations/virtualization.json +1 -0
  764. package/esm2022/page-scaffold/navigation/lottie-icons/index.mjs +3 -0
  765. package/esm2022/page-scaffold/navigation/lottie-icons/lottie-icon.directive.mjs +91 -0
  766. package/esm2022/page-scaffold/navigation/lottie-icons/module.mjs +17 -0
  767. package/esm2022/page-scaffold/navigation/lottie-icons/replace-lottie-colors.mjs +70 -0
  768. package/esm2022/page-scaffold/navigation/module.mjs +18 -0
  769. package/esm2022/page-scaffold/navigation/nav-menu/index.mjs +4 -0
  770. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +443 -0
  771. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.mjs +83 -0
  772. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +185 -0
  773. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.module.mjs +63 -0
  774. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.types.mjs +2 -0
  775. package/esm2022/page-scaffold/navigation/navconfig-loader/index.mjs +8 -0
  776. package/esm2022/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.mjs +175 -0
  777. package/esm2022/page-scaffold/navigation/utils.mjs +12 -0
  778. package/esm2022/page-scaffold/page/context.service.mjs +22 -0
  779. package/esm2022/page-scaffold/page/helper-directives.mjs +66 -0
  780. package/esm2022/page-scaffold/page/index.mjs +5 -0
  781. package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +146 -0
  782. package/esm2022/page-scaffold/page/notices/notice.component.mjs +129 -0
  783. package/esm2022/page-scaffold/page/page.component.mjs +140 -0
  784. package/esm2022/page-scaffold/page/page.module.mjs +67 -0
  785. package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +199 -0
  786. package/esm2022/page-scaffold/page-header/account-menu/module.mjs +43 -0
  787. package/esm2022/page-scaffold/page-header/account-menu/public-api.mjs +8 -0
  788. package/esm2022/page-scaffold/page-header/common-layout/common-layout.module.mjs +75 -0
  789. package/esm2022/page-scaffold/page-header/common-layout/context.service.mjs +86 -0
  790. package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +271 -0
  791. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +273 -0
  792. package/esm2022/page-scaffold/page-header/common-layout/product-select/service.mjs +19 -0
  793. package/esm2022/page-scaffold/page-header/common-layout/project-select/base-selection.mjs +122 -0
  794. package/esm2022/page-scaffold/page-header/common-layout/public-api.mjs +14 -0
  795. package/esm2022/page-scaffold/page-header/common-layout/store.service.mjs +58 -0
  796. package/esm2022/page-scaffold/page-header/common-layout/utils.mjs +7 -0
  797. package/esm2022/page-scaffold/page-header/component.mjs +104 -0
  798. package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +131 -0
  799. package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +136 -0
  800. package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +95 -0
  801. package/esm2022/page-scaffold/page-header/header-notify/header-notify.module.mjs +71 -0
  802. package/esm2022/page-scaffold/page-header/header-notify/notify.service.mjs +282 -0
  803. package/esm2022/page-scaffold/page-header/header-notify/public-api.mjs +10 -0
  804. package/esm2022/page-scaffold/page-header/header-notify/utils.mjs +44 -0
  805. package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +306 -0
  806. package/esm2022/page-scaffold/page-header/help-menu/module.mjs +65 -0
  807. package/esm2022/page-scaffold/page-header/help-menu/public-api.mjs +8 -0
  808. package/esm2022/page-scaffold/page-header/index.mjs +14 -0
  809. package/esm2022/page-scaffold/page-header/module.mjs +61 -0
  810. package/esm2022/permission/admin.guard.mjs +43 -0
  811. package/esm2022/permission/constants.mjs +2 -0
  812. package/esm2022/permission/helpers.mjs +43 -0
  813. package/esm2022/permission/k8s-permission.service.mjs +110 -0
  814. package/esm2022/permission/permission.guard.mjs +108 -0
  815. package/esm2022/permission/public-api.mjs +13 -0
  816. package/esm2022/permission/types.mjs +38 -0
  817. package/esm2022/pie-derivative-chart/donut-status/component.mjs +195 -0
  818. package/esm2022/pie-derivative-chart/indicator-color.directive.mjs +30 -0
  819. package/esm2022/pie-derivative-chart/numerical-limit.pipe.mjs +26 -0
  820. package/esm2022/pie-derivative-chart/pie-derivative-chart.module.mjs +67 -0
  821. package/esm2022/pie-derivative-chart/public-api.mjs +11 -0
  822. package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +244 -0
  823. package/esm2022/public-api.mjs +44 -0
  824. package/esm2022/scm/index.mjs +9 -0
  825. package/esm2022/scm/password-input/component.mjs +224 -0
  826. package/esm2022/scm/password-input/index.mjs +3 -0
  827. package/esm2022/scm/password-input/module.mjs +64 -0
  828. package/esm2022/scm/pure-pipe/calc.pipe.mjs +20 -0
  829. package/esm2022/scm/pure-pipe/index.mjs +4 -0
  830. package/esm2022/scm/pure-pipe/module.mjs +19 -0
  831. package/esm2022/scm/pure-pipe/pure.pipe.mjs +26 -0
  832. package/esm2022/scm/resource-multi-select/component.mjs +214 -0
  833. package/esm2022/scm/resource-multi-select/util.mjs +24 -0
  834. package/esm2022/scm/search-panel/component.mjs +86 -0
  835. package/esm2022/scm/search-panel/helper.directive.mjs +14 -0
  836. package/esm2022/scm/search-panel/search-item/component.mjs +28 -0
  837. package/esm2022/scm/text-ellipsis/component.mjs +55 -0
  838. package/esm2022/searchable-selector/component.mjs +275 -0
  839. package/esm2022/searchable-selector/module.mjs +63 -0
  840. package/esm2022/searchable-selector/public-api.mjs +3 -0
  841. package/esm2022/skeleton/item/component.mjs +44 -0
  842. package/esm2022/skeleton/module.mjs +26 -0
  843. package/esm2022/skeleton/nav-skeleton/component.mjs +35 -0
  844. package/esm2022/skeleton/public-api.mjs +4 -0
  845. package/esm2022/table/component.mjs +821 -0
  846. package/esm2022/table/constants.mjs +4 -0
  847. package/esm2022/table/helper.mjs +16 -0
  848. package/esm2022/table/helpers.directive.mjs +18 -0
  849. package/esm2022/table/module.mjs +82 -0
  850. package/esm2022/table/public-api.mjs +7 -0
  851. package/esm2022/table/types.mjs +2 -0
  852. package/esm2022/table/util.service.mjs +81 -0
  853. package/esm2022/translate/constants.mjs +13 -0
  854. package/esm2022/translate/en.json +533 -0
  855. package/esm2022/translate/helpers.mjs +22 -0
  856. package/esm2022/translate/pick-locale.pipe.mjs +34 -0
  857. package/esm2022/translate/public-api.mjs +16 -0
  858. package/esm2022/translate/tokens.mjs +13 -0
  859. package/esm2022/translate/translate.directive.mjs +164 -0
  860. package/esm2022/translate/translate.module.mjs +91 -0
  861. package/esm2022/translate/translate.pipe.mjs +72 -0
  862. package/esm2022/translate/translate.service.mjs +327 -0
  863. package/esm2022/translate/types.mjs +6 -0
  864. package/esm2022/translate/zh.json +533 -0
  865. package/esm2022/view-chart/custom-template/dropdown-legend.mjs +115 -0
  866. package/esm2022/view-chart/legend/legend.component.mjs +263 -0
  867. package/esm2022/view-chart/public-api.mjs +9 -0
  868. package/esm2022/view-chart/types.mjs +2 -0
  869. package/esm2022/view-chart/view-chart.component.mjs +845 -0
  870. package/esm2022/view-chart/view-chart.module.mjs +63 -0
  871. package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +115 -0
  872. package/esm2022/view-zchart/legend/legend.component.mjs +270 -0
  873. package/esm2022/view-zchart/public-api.mjs +8 -0
  874. package/esm2022/view-zchart/units.mjs +28 -0
  875. package/esm2022/view-zchart/view-zchart.component.mjs +999 -0
  876. package/esm2022/view-zchart/view-zchart.module.mjs +63 -0
  877. package/esm2022/widget/card-section/card-section.component.mjs +33 -0
  878. package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +342 -0
  879. package/esm2022/widget/confirm-delete/utils.mjs +8 -0
  880. package/esm2022/widget/current-time/component.mjs +42 -0
  881. package/esm2022/widget/date-range-picker/component.mjs +317 -0
  882. package/esm2022/widget/date-range-picker/public-api.mjs +4 -0
  883. package/esm2022/widget/date-range-picker/type.mjs +2 -0
  884. package/esm2022/widget/date-range-picker/util.mjs +57 -0
  885. package/esm2022/widget/field-set/column/component.mjs +34 -0
  886. package/esm2022/widget/field-set/group/component.mjs +22 -0
  887. package/esm2022/widget/field-set/item/component.mjs +60 -0
  888. package/esm2022/widget/foldable-block/component.mjs +109 -0
  889. package/esm2022/widget/foldable-item-in-table/component.mjs +126 -0
  890. package/esm2022/widget/loading-mask/loading-mask.component.mjs +75 -0
  891. package/esm2022/widget/public-api.mjs +20 -0
  892. package/esm2022/widget/relative-time/component.mjs +60 -0
  893. package/esm2022/widget/select-prefix-label/directive.mjs +89 -0
  894. package/esm2022/widget/tags-label/component.mjs +374 -0
  895. package/esm2022/widget/terminating-tag/component.mjs +27 -0
  896. package/esm2022/widget/text-tooltip/directive.mjs +73 -0
  897. package/esm2022/widget/text-with-url/component.mjs +76 -0
  898. package/esm2022/widget/widget.module.mjs +140 -0
  899. package/esm2022/widget/zero-state/zero-state.component.mjs +96 -0
  900. package/esm2022/window-channel/base-window-channel.mjs +38 -0
  901. package/esm2022/window-channel/directives/host-link.directive.mjs +43 -0
  902. package/esm2022/window-channel/host-window-channel.service.mjs +83 -0
  903. package/esm2022/window-channel/index.mjs +5 -0
  904. package/esm2022/window-channel/plugin-window-channel.service.mjs +38 -0
  905. package/esm2022/window-channel/utils.mjs +12 -0
  906. package/esm2022/xterm/public-api.mjs +4 -0
  907. package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +284 -0
  908. package/esm2022/xterm/xterm-terminal/xterm-terminal.directive.mjs +25 -0
  909. package/esm2022/xterm/xterm.component.mjs +128 -0
  910. package/exec/constants.d.ts +13 -0
  911. package/exec/index.d.ts +7 -0
  912. package/exec/module.d.ts +17 -0
  913. package/exec/placeholder/component.d.ts +20 -0
  914. package/exec/service.d.ts +12 -0
  915. package/exec/terminal/component.d.ts +95 -0
  916. package/exec/terminal-group/component.d.ts +41 -0
  917. package/exec/types.d.ts +14 -0
  918. package/feature-gate-forbidden/component/component.d.ts +6 -0
  919. package/feature-gate-forbidden/index.d.ts +2 -0
  920. package/feature-gate-forbidden/module.d.ts +11 -0
  921. package/form/index.d.ts +4 -0
  922. package/form/labels-editor/component.d.ts +31 -0
  923. package/form/taints-editor/component.d.ts +22 -0
  924. package/form/utils.d.ts +40 -0
  925. package/form/validators/async-function-validator.directive.d.ts +11 -0
  926. package/form/validators/dns1123-subdomain.d.ts +28 -0
  927. package/form/validators/function-validator.directive.d.ts +11 -0
  928. package/form/validators/maxlength-minlength-validator.directive.d.ts +20 -0
  929. package/form/validators/module.d.ts +13 -0
  930. package/form/validators/not-be-validator.directive.d.ts +12 -0
  931. package/form/validators/one-of-validator.directive.d.ts +12 -0
  932. package/form/validators/public-api.d.ts +10 -0
  933. package/form/validators/resource-limit.d.ts +16 -0
  934. package/form/validators/strong-password/index.d.ts +3 -0
  935. package/form/validators/strong-password/strong-password-tooltip/component.d.ts +6 -0
  936. package/form/validators/strong-password/strong-password-tooltip/index.d.ts +1 -0
  937. package/form/validators/strong-password/strong-password-validator.directive.d.ts +34 -0
  938. package/form/validators/strong-password/strong-password-validator.module.d.ts +12 -0
  939. package/form/validators/utils.d.ts +57 -0
  940. package/graph-canvas/components/graph-actions.component.d.ts +8 -0
  941. package/graph-canvas/components/graph-canvas.component.d.ts +47 -0
  942. package/graph-canvas/components/graph-link.component.d.ts +26 -0
  943. package/graph-canvas/components/graph-links.component.d.ts +5 -0
  944. package/graph-canvas/components/graph-node.directive.d.ts +15 -0
  945. package/graph-canvas/graph-canvas.module.d.ts +14 -0
  946. package/graph-canvas/graph-store.service.d.ts +19 -0
  947. package/graph-canvas/public-api.d.ts +7 -0
  948. package/graph-canvas/types.d.ts +30 -0
  949. package/graph-canvas/utils.d.ts +2 -0
  950. package/grid-layout/components/grid/component.d.ts +53 -0
  951. package/grid-layout/components/grid-items/component.d.ts +56 -0
  952. package/grid-layout/constant.d.ts +3 -0
  953. package/grid-layout/directives/drag-handler.directive.d.ts +11 -0
  954. package/grid-layout/directives/placeholder.directive.d.ts +12 -0
  955. package/grid-layout/directives/remove-handler.directive.d.ts +9 -0
  956. package/grid-layout/directives/resize-handler.directive.d.ts +11 -0
  957. package/grid-layout/grid-layout.service.d.ts +49 -0
  958. package/grid-layout/grid-placeholder.service.d.ts +17 -0
  959. package/grid-layout/index.d.ts +10 -0
  960. package/grid-layout/module.d.ts +14 -0
  961. package/grid-layout/type.d.ts +65 -0
  962. package/grid-layout/utils/client-rect.utils.d.ts +2 -0
  963. package/grid-layout/utils/grid.utils.d.ts +30 -0
  964. package/grid-layout/utils/mouse.utils.d.ts +24 -0
  965. package/grid-layout/utils/operator.d.ts +3 -0
  966. package/grid-layout/utils/react-grid-layout.utils.d.ts +171 -0
  967. package/grid-layout/utils/scroll.utils.d.ts +28 -0
  968. package/help-document/component.d.ts +30 -0
  969. package/help-document/directive.d.ts +38 -0
  970. package/help-document/module.d.ts +13 -0
  971. package/help-document/public-api.d.ts +9 -0
  972. package/help-document/service.d.ts +30 -0
  973. package/iframe-config/config.service.d.ts +20 -0
  974. package/iframe-config/constants.d.ts +7 -0
  975. package/iframe-config/public-api.d.ts +8 -0
  976. package/index.d.ts +5 -0
  977. package/k8s-resource-list/footer/component.d.ts +37 -0
  978. package/k8s-resource-list/k8s-resource-list.d.ts +42 -0
  979. package/k8s-resource-list/k8s-resource-list.module.d.ts +10 -0
  980. package/k8s-resource-list/k8s-resource-paged-list.d.ts +61 -0
  981. package/k8s-resource-list/public-api.d.ts +12 -0
  982. package/k8s-resource-list/types.d.ts +70 -0
  983. package/k8s-resource-list/utils.d.ts +19 -0
  984. package/license/license-api.d.ts +19 -0
  985. package/license/license-error/component.d.ts +33 -0
  986. package/license/license-error/module.d.ts +13 -0
  987. package/license/license.guard.d.ts +23 -0
  988. package/license/license.service.d.ts +21 -0
  989. package/license/license.type.d.ts +19 -0
  990. package/license/public-api.d.ts +11 -0
  991. package/metric-chart/common-chart.service.d.ts +30 -0
  992. package/metric-chart/helpers.d.ts +54 -0
  993. package/metric-chart/metric-chart.component.d.ts +115 -0
  994. package/metric-chart/metric-chart.module.d.ts +14 -0
  995. package/metric-chart/metric-time-pick.d.ts +12 -0
  996. package/metric-chart/public-api.d.ts +13 -0
  997. package/metric-chart/range-util.d.ts +1 -0
  998. package/metric-chart/types.d.ts +69 -0
  999. package/metric-chart/utils.d.ts +86 -0
  1000. package/multi-search/action-input/component.d.ts +119 -0
  1001. package/multi-search/form/component.d.ts +63 -0
  1002. package/multi-search/index.d.ts +4 -0
  1003. package/multi-search/multi-search-tags/component.d.ts +26 -0
  1004. package/multi-search/types.d.ts +32 -0
  1005. package/multi-search/utils.d.ts +24 -0
  1006. package/mutable/element.d.ts +10 -0
  1007. package/mutable/mosaic/mosaic.component.d.ts +32 -0
  1008. package/mutable/mosaic/mosaic.directive.d.ts +9 -0
  1009. package/mutable/mutable.directive.d.ts +83 -0
  1010. package/mutable/mutable.module.d.ts +10 -0
  1011. package/mutable/public-api.d.ts +5 -0
  1012. package/mutable/util.d.ts +18 -0
  1013. package/notification/errors-mapper.d.ts +7 -0
  1014. package/notification/feedback-notification/component.d.ts +17 -0
  1015. package/notification/helpers.d.ts +2 -0
  1016. package/notification/notification-util.module.d.ts +10 -0
  1017. package/notification/notification-util.service.d.ts +39 -0
  1018. package/notification/public-api.d.ts +12 -0
  1019. package/notification/resource-error.interceptor.d.ts +21 -0
  1020. package/overview-banner/overview-banner.component.d.ts +7 -0
  1021. package/overview-banner/overview-banner.module.d.ts +9 -0
  1022. package/overview-banner/overview-banner.types.d.ts +5 -0
  1023. package/overview-banner/public-api.d.ts +3 -0
  1024. package/package.json +65 -0
  1025. package/page-guard/component/component.d.ts +40 -0
  1026. package/page-guard/component/helper-directives.d.ts +17 -0
  1027. package/page-guard/component/page-guard.type.d.ts +86 -0
  1028. package/page-guard/module.d.ts +8 -0
  1029. package/page-guard/public-api.d.ts +10 -0
  1030. package/page-scaffold/index.d.ts +4 -0
  1031. package/page-scaffold/module.d.ts +10 -0
  1032. package/page-scaffold/navigation/breadcrumb/breadcrumb-slot.directive.d.ts +12 -0
  1033. package/page-scaffold/navigation/breadcrumb/breadcrumb.component.d.ts +40 -0
  1034. package/page-scaffold/navigation/breadcrumb/breadcrumb.service.d.ts +13 -0
  1035. package/page-scaffold/navigation/breadcrumb/index.d.ts +4 -0
  1036. package/page-scaffold/navigation/breadcrumb/module.d.ts +13 -0
  1037. package/page-scaffold/navigation/index.d.ts +6 -0
  1038. package/page-scaffold/navigation/lottie-icons/animation-data.d.ts +2 -0
  1039. package/page-scaffold/navigation/lottie-icons/index.d.ts +2 -0
  1040. package/page-scaffold/navigation/lottie-icons/lottie-icon.directive.d.ts +24 -0
  1041. package/page-scaffold/navigation/lottie-icons/module.d.ts +7 -0
  1042. package/page-scaffold/navigation/lottie-icons/replace-lottie-colors.d.ts +1 -0
  1043. package/page-scaffold/navigation/module.d.ts +7 -0
  1044. package/page-scaffold/navigation/nav-menu/index.d.ts +3 -0
  1045. package/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.d.ts +52 -0
  1046. package/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.d.ts +10 -0
  1047. package/page-scaffold/navigation/nav-menu/nav-menu.component.d.ts +47 -0
  1048. package/page-scaffold/navigation/nav-menu/nav-menu.module.d.ts +16 -0
  1049. package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts +21 -0
  1050. package/page-scaffold/navigation/navconfig-loader/index.d.ts +7 -0
  1051. package/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.d.ts +61 -0
  1052. package/page-scaffold/navigation/utils.d.ts +11 -0
  1053. package/page-scaffold/page/context.service.d.ts +9 -0
  1054. package/page-scaffold/page/helper-directives.d.ts +30 -0
  1055. package/page-scaffold/page/index.d.ts +4 -0
  1056. package/page-scaffold/page/notices/maintenance.component.d.ts +26 -0
  1057. package/page-scaffold/page/notices/notice.component.d.ts +22 -0
  1058. package/page-scaffold/page/page.component.d.ts +23 -0
  1059. package/page-scaffold/page/page.module.d.ts +14 -0
  1060. package/page-scaffold/page-header/account-menu/component/component.d.ts +38 -0
  1061. package/page-scaffold/page-header/account-menu/module.d.ts +10 -0
  1062. package/page-scaffold/page-header/account-menu/public-api.d.ts +7 -0
  1063. package/page-scaffold/page-header/common-layout/common-layout.module.d.ts +16 -0
  1064. package/page-scaffold/page-header/common-layout/context.service.d.ts +51 -0
  1065. package/page-scaffold/page-header/common-layout/namespace-select/component.d.ts +49 -0
  1066. package/page-scaffold/page-header/common-layout/product-select/component.d.ts +37 -0
  1067. package/page-scaffold/page-header/common-layout/product-select/service.d.ts +9 -0
  1068. package/page-scaffold/page-header/common-layout/project-select/base-selection.d.ts +24 -0
  1069. package/page-scaffold/page-header/common-layout/public-api.d.ts +13 -0
  1070. package/page-scaffold/page-header/common-layout/store.service.d.ts +31 -0
  1071. package/page-scaffold/page-header/common-layout/utils.d.ts +2 -0
  1072. package/page-scaffold/page-header/component.d.ts +21 -0
  1073. package/page-scaffold/page-header/enterprise-support-status/component.d.ts +24 -0
  1074. package/page-scaffold/page-header/header-notify/component/header-notify.component.d.ts +27 -0
  1075. package/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.d.ts +19 -0
  1076. package/page-scaffold/page-header/header-notify/header-notify.module.d.ts +14 -0
  1077. package/page-scaffold/page-header/header-notify/notify.service.d.ts +60 -0
  1078. package/page-scaffold/page-header/header-notify/public-api.d.ts +9 -0
  1079. package/page-scaffold/page-header/header-notify/utils.d.ts +35 -0
  1080. package/page-scaffold/page-header/help-menu/component/component.d.ts +45 -0
  1081. package/page-scaffold/page-header/help-menu/module.d.ts +13 -0
  1082. package/page-scaffold/page-header/help-menu/public-api.d.ts +7 -0
  1083. package/page-scaffold/page-header/index.d.ts +13 -0
  1084. package/page-scaffold/page-header/module.d.ts +15 -0
  1085. package/permission/admin.guard.d.ts +14 -0
  1086. package/permission/constants.d.ts +1 -0
  1087. package/permission/helpers.d.ts +11 -0
  1088. package/permission/k8s-permission.service.d.ts +80 -0
  1089. package/permission/permission.guard.d.ts +22 -0
  1090. package/permission/public-api.d.ts +12 -0
  1091. package/permission/types.d.ts +74 -0
  1092. package/pie-derivative-chart/donut-status/component.d.ts +79 -0
  1093. package/pie-derivative-chart/indicator-color.directive.d.ts +10 -0
  1094. package/pie-derivative-chart/numerical-limit.pipe.d.ts +7 -0
  1095. package/pie-derivative-chart/pie-derivative-chart.module.d.ts +15 -0
  1096. package/pie-derivative-chart/public-api.d.ts +10 -0
  1097. package/pie-derivative-chart/radial-bar/radial-bar-chart.component.d.ts +55 -0
  1098. package/public-api.d.ts +43 -0
  1099. package/scm/index.d.ts +8 -0
  1100. package/scm/password-input/component.d.ts +35 -0
  1101. package/scm/password-input/index.d.ts +2 -0
  1102. package/scm/password-input/module.d.ts +14 -0
  1103. package/scm/pure-pipe/calc.pipe.d.ts +11 -0
  1104. package/scm/pure-pipe/index.d.ts +3 -0
  1105. package/scm/pure-pipe/module.d.ts +8 -0
  1106. package/scm/pure-pipe/pure.pipe.d.ts +17 -0
  1107. package/scm/resource-multi-select/component.d.ts +40 -0
  1108. package/scm/resource-multi-select/util.d.ts +10 -0
  1109. package/scm/search-panel/component.d.ts +16 -0
  1110. package/scm/search-panel/helper.directive.d.ts +5 -0
  1111. package/scm/search-panel/search-item/component.d.ts +7 -0
  1112. package/scm/text-ellipsis/component.d.ts +9 -0
  1113. package/searchable-selector/component.d.ts +54 -0
  1114. package/searchable-selector/module.d.ts +12 -0
  1115. package/searchable-selector/public-api.d.ts +2 -0
  1116. package/skeleton/item/component.d.ts +12 -0
  1117. package/skeleton/module.d.ts +10 -0
  1118. package/skeleton/nav-skeleton/component.d.ts +6 -0
  1119. package/skeleton/public-api.d.ts +3 -0
  1120. package/styles/global.scss +890 -0
  1121. package/styles/markdown-body.scss +105 -0
  1122. package/styles/mixins.scss +640 -0
  1123. package/styles/reset-browser.scss +88 -0
  1124. package/styles/tailwind-preset.scss +1 -0
  1125. package/styles/var.scss +29 -0
  1126. package/table/component.d.ts +84 -0
  1127. package/table/constants.d.ts +3 -0
  1128. package/table/helper.d.ts +2 -0
  1129. package/table/helpers.directive.d.ts +21 -0
  1130. package/table/module.d.ts +19 -0
  1131. package/table/public-api.d.ts +6 -0
  1132. package/table/types.d.ts +69 -0
  1133. package/table/util.service.d.ts +13 -0
  1134. package/translate/constants.d.ts +13 -0
  1135. package/translate/helpers.d.ts +14 -0
  1136. package/translate/pick-locale.pipe.d.ts +12 -0
  1137. package/translate/public-api.d.ts +15 -0
  1138. package/translate/tokens.d.ts +12 -0
  1139. package/translate/translate.directive.d.ts +52 -0
  1140. package/translate/translate.module.d.ts +1084 -0
  1141. package/translate/translate.pipe.d.ts +25 -0
  1142. package/translate/translate.service.d.ts +68 -0
  1143. package/translate/types.d.ts +20 -0
  1144. package/view-chart/custom-template/dropdown-legend.d.ts +11 -0
  1145. package/view-chart/legend/legend.component.d.ts +36 -0
  1146. package/view-chart/public-api.d.ts +8 -0
  1147. package/view-chart/types.d.ts +37 -0
  1148. package/view-chart/view-chart.component.d.ts +187 -0
  1149. package/view-chart/view-chart.module.d.ts +15 -0
  1150. package/view-zchart/custom-template/dropdown-legend.d.ts +11 -0
  1151. package/view-zchart/legend/legend.component.d.ts +42 -0
  1152. package/view-zchart/public-api.d.ts +7 -0
  1153. package/view-zchart/units.d.ts +2 -0
  1154. package/view-zchart/view-zchart.component.d.ts +209 -0
  1155. package/view-zchart/view-zchart.module.d.ts +15 -0
  1156. package/widget/card-section/card-section.component.d.ts +7 -0
  1157. package/widget/confirm-delete/confirm-delete.component.d.ts +57 -0
  1158. package/widget/confirm-delete/utils.d.ts +25 -0
  1159. package/widget/current-time/component.d.ts +14 -0
  1160. package/widget/date-range-picker/component.d.ts +54 -0
  1161. package/widget/date-range-picker/public-api.d.ts +3 -0
  1162. package/widget/date-range-picker/type.d.ts +36 -0
  1163. package/widget/date-range-picker/util.d.ts +11 -0
  1164. package/widget/field-set/column/component.d.ts +10 -0
  1165. package/widget/field-set/group/component.d.ts +6 -0
  1166. package/widget/field-set/item/component.d.ts +13 -0
  1167. package/widget/foldable-block/component.d.ts +17 -0
  1168. package/widget/foldable-item-in-table/component.d.ts +22 -0
  1169. package/widget/loading-mask/loading-mask.component.d.ts +13 -0
  1170. package/widget/public-api.d.ts +19 -0
  1171. package/widget/relative-time/component.d.ts +15 -0
  1172. package/widget/select-prefix-label/directive.d.ts +17 -0
  1173. package/widget/tags-label/component.d.ts +51 -0
  1174. package/widget/terminating-tag/component.d.ts +7 -0
  1175. package/widget/text-tooltip/directive.d.ts +21 -0
  1176. package/widget/text-with-url/component.d.ts +12 -0
  1177. package/widget/widget.module.d.ts +26 -0
  1178. package/widget/zero-state/zero-state.component.d.ts +13 -0
  1179. package/window-channel/base-window-channel.d.ts +9 -0
  1180. package/window-channel/directives/host-link.directive.d.ts +11 -0
  1181. package/window-channel/host-window-channel.service.d.ts +15 -0
  1182. package/window-channel/index.d.ts +4 -0
  1183. package/window-channel/plugin-window-channel.service.d.ts +10 -0
  1184. package/window-channel/utils.d.ts +37 -0
  1185. package/xterm/public-api.d.ts +3 -0
  1186. package/xterm/xterm-terminal/xterm-terminal.component.d.ts +31 -0
  1187. package/xterm/xterm-terminal/xterm-terminal.directive.d.ts +9 -0
  1188. package/xterm/xterm.component.d.ts +28 -0
@@ -0,0 +1,229 @@
1
+ const MAX_DIGITS = 22;
2
+ const DECIMAL_SEP = '.';
3
+ const ZERO_CHAR = '0';
4
+ const SymbolInfinity = '∞';
5
+ const SymbolDecimal = '.';
6
+ const SymbolGroup = '';
7
+ const SymbolExponential = 'E';
8
+ const SymbolNumberPattern = {
9
+ gSize: 3,
10
+ lgSize: 3,
11
+ maxFrac: 3,
12
+ minFrac: 0,
13
+ minInt: 1,
14
+ negPre: '-',
15
+ negSuf: '',
16
+ posPre: '',
17
+ posSuf: '',
18
+ };
19
+ /**
20
+ * Transforms a number to a locale string based on a style and a format
21
+ */
22
+ // eslint-disable-next-line sonarjs/cognitive-complexity
23
+ function formatNumberToLocaleString(value, pattern, digitsInfo) {
24
+ let formattedText = '';
25
+ let isZero = false;
26
+ if (isFinite(value)) {
27
+ const parsedNumber = parseNumber(value);
28
+ const minInt = digitsInfo[0] || 0;
29
+ const minFraction = digitsInfo[1] || 0;
30
+ const maxFraction = digitsInfo[2] || 0;
31
+ roundNumber(parsedNumber, minFraction, maxFraction);
32
+ let digits = parsedNumber.digits;
33
+ let integerLen = parsedNumber.integerLen;
34
+ const exponent = parsedNumber.exponent;
35
+ let decimals = [];
36
+ isZero = digits.every(d => !d);
37
+ // pad zeros for small numbers
38
+ for (; integerLen < minInt; integerLen++) {
39
+ digits.unshift(0);
40
+ }
41
+ // pad zeros for small numbers
42
+ for (; integerLen < 0; integerLen++) {
43
+ digits.unshift(0);
44
+ }
45
+ // extract decimals digits
46
+ if (integerLen > 0) {
47
+ decimals = digits.splice(integerLen, digits.length);
48
+ }
49
+ else {
50
+ decimals = digits;
51
+ digits = [0];
52
+ }
53
+ // format the integer digits with grouping separators
54
+ const groups = [];
55
+ if (digits.length >= pattern.lgSize) {
56
+ groups.unshift(digits.splice(-pattern.lgSize, digits.length).join(''));
57
+ }
58
+ while (digits.length > pattern.gSize) {
59
+ groups.unshift(digits.splice(-pattern.gSize, digits.length).join(''));
60
+ }
61
+ if (digits.length > 0) {
62
+ groups.unshift(digits.join(''));
63
+ }
64
+ formattedText = groups.join(SymbolGroup);
65
+ // append the decimal digits
66
+ if (decimals.length > 0) {
67
+ formattedText += SymbolDecimal + decimals.join('');
68
+ }
69
+ if (exponent) {
70
+ formattedText += SymbolExponential + '+' + exponent;
71
+ }
72
+ }
73
+ else {
74
+ formattedText = SymbolInfinity;
75
+ }
76
+ formattedText =
77
+ value < 0 && !isZero
78
+ ? pattern.negPre + formattedText + pattern.negSuf
79
+ : pattern.posPre + formattedText + pattern.posSuf;
80
+ return formattedText;
81
+ }
82
+ /**
83
+ * @ngModule CommonModule
84
+ *
85
+ * Formats a number as text. Group sizing and separator and other locale-specific
86
+ * configurations are based on the locale.
87
+ *
88
+ * Where:
89
+ * - `value` is a number.
90
+ * - `digitInfo` See {@link DecimalPipe} for more details.
91
+ */
92
+ export function formatNumber(value, digitsInfo) {
93
+ return formatNumberToLocaleString(value, SymbolNumberPattern, digitsInfo);
94
+ }
95
+ /**
96
+ * Parses a number.
97
+ * Significant bits of this parse algorithm came from https://github.com/MikeMcl/big.js/
98
+ */
99
+ function parseNumber(num) {
100
+ let numStr = Math.abs(num) + '';
101
+ let exponent = 0;
102
+ let digits;
103
+ let integerLen;
104
+ let i;
105
+ let j;
106
+ let zeros;
107
+ // Decimal point?
108
+ if ((integerLen = numStr.indexOf(DECIMAL_SEP)) > -1) {
109
+ numStr = numStr.replace(DECIMAL_SEP, '');
110
+ }
111
+ // Exponential form?
112
+ if ((i = numStr.search(/e/i)) > 0) {
113
+ // Work out the exponent.
114
+ if (integerLen < 0) {
115
+ integerLen = i;
116
+ }
117
+ integerLen += +numStr.slice(i + 1);
118
+ numStr = numStr.slice(0, Math.max(0, i));
119
+ }
120
+ else if (integerLen < 0) {
121
+ // There was no decimal point or exponent so it is an integer.
122
+ integerLen = numStr.length;
123
+ }
124
+ // Count the number of leading zeros.
125
+ for (i = 0; numStr.charAt(i) === ZERO_CHAR; i++) {
126
+ /* empty */
127
+ }
128
+ if (i === (zeros = numStr.length)) {
129
+ // The digits are all zero.
130
+ digits = [0];
131
+ integerLen = 1;
132
+ }
133
+ else {
134
+ // Count the number of trailing zeros
135
+ zeros--;
136
+ while (numStr.charAt(zeros) === ZERO_CHAR) {
137
+ zeros--;
138
+ }
139
+ // Trailing zeros are insignificant so ignore them
140
+ integerLen -= i;
141
+ digits = [];
142
+ // Convert string to array of digits without leading/trailing zeros.
143
+ for (j = 0; i <= zeros; i++, j++) {
144
+ digits[j] = Number(numStr.charAt(i));
145
+ }
146
+ }
147
+ // If the number overflows the maximum allowed digits then use an exponent.
148
+ if (integerLen > MAX_DIGITS) {
149
+ digits = digits.splice(0, MAX_DIGITS - 1);
150
+ exponent = integerLen - 1;
151
+ integerLen = 1;
152
+ }
153
+ return { digits, exponent, integerLen };
154
+ }
155
+ /**
156
+ * Round the parsed number to the specified number of decimal places
157
+ * This function changes the parsedNumber in-place
158
+ */
159
+ // eslint-disable-next-line sonarjs/cognitive-complexity
160
+ function roundNumber(parsedNumber, minFrac, maxFrac) {
161
+ if (minFrac > maxFrac) {
162
+ throw new Error(`The minimum number of digits after fraction (${minFrac}) is higher than the maximum (${maxFrac}).`);
163
+ }
164
+ const digits = parsedNumber.digits;
165
+ let fractionLen = digits.length - parsedNumber.integerLen;
166
+ const fractionSize = Math.min(Math.max(minFrac, fractionLen), maxFrac);
167
+ // The index of the digit to where rounding is to occur
168
+ let roundAt = fractionSize + parsedNumber.integerLen;
169
+ const digit = digits[roundAt];
170
+ if (roundAt > 0) {
171
+ // Drop fractional digits beyond `roundAt`
172
+ digits.splice(Math.max(parsedNumber.integerLen, roundAt));
173
+ // Set non-fractional digits beyond `roundAt` to 0
174
+ for (let j = roundAt; j < digits.length; j++) {
175
+ digits[j] = 0;
176
+ }
177
+ }
178
+ else {
179
+ // We rounded to zero so reset the parsedNumber
180
+ fractionLen = Math.max(0, fractionLen);
181
+ parsedNumber.integerLen = 1;
182
+ digits.length = Math.max(1, (roundAt = fractionSize + 1));
183
+ digits[0] = 0;
184
+ for (let i = 1; i < roundAt; i++) {
185
+ digits[i] = 0;
186
+ }
187
+ }
188
+ if (digit >= 5) {
189
+ if (roundAt - 1 < 0) {
190
+ for (let k = 0; k > roundAt; k--) {
191
+ digits.unshift(0);
192
+ parsedNumber.integerLen++;
193
+ }
194
+ digits.unshift(1);
195
+ parsedNumber.integerLen++;
196
+ }
197
+ else {
198
+ digits[roundAt - 1]++;
199
+ }
200
+ }
201
+ // Pad out with zeros to get the required fraction length
202
+ for (; fractionLen < Math.max(0, fractionSize); fractionLen++) {
203
+ digits.push(0);
204
+ }
205
+ let dropTrailingZeros = fractionSize !== 0;
206
+ // Minimal length = nb of decimals required + current nb of integers
207
+ // Any number besides that is optional and can be removed if it's a trailing 0
208
+ const minLen = minFrac + parsedNumber.integerLen;
209
+ // Do any carrying, e.g. a digit was rounded up to 10
210
+ const carry = digits.reduceRight((c, d, i, ds) => {
211
+ d = d + c;
212
+ ds[i] = d < 10 ? d : d - 10; // d % 10
213
+ if (dropTrailingZeros) {
214
+ // Do not keep meaningless fractional trailing zeros (e.g. 15.52000 --> 15.52)
215
+ if (ds[i] === 0 && i >= minLen) {
216
+ ds.pop();
217
+ }
218
+ else {
219
+ dropTrailingZeros = false;
220
+ }
221
+ }
222
+ return d >= 10 ? 1 : 0;
223
+ }, 0);
224
+ if (carry) {
225
+ digits.unshift(carry);
226
+ parsedNumber.integerLen++;
227
+ }
228
+ }
229
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LW51bWJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jb3JlL3V0aWxzL2Zvcm1hdC1udW1iZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO0FBQ3RCLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQztBQUN4QixNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUM7QUFDdEIsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDO0FBQzNCLE1BQU0sYUFBYSxHQUFHLEdBQUcsQ0FBQztBQUMxQixNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUM7QUFDdkIsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUM7QUFDOUIsTUFBTSxtQkFBbUIsR0FBRztJQUMxQixLQUFLLEVBQUUsQ0FBQztJQUNSLE1BQU0sRUFBRSxDQUFDO0lBQ1QsT0FBTyxFQUFFLENBQUM7SUFDVixPQUFPLEVBQUUsQ0FBQztJQUNWLE1BQU0sRUFBRSxDQUFDO0lBQ1QsTUFBTSxFQUFFLEdBQUc7SUFDWCxNQUFNLEVBQUUsRUFBRTtJQUNWLE1BQU0sRUFBRSxFQUFFO0lBQ1YsTUFBTSxFQUFFLEVBQUU7Q0FDWCxDQUFDO0FBRUY7O0dBRUc7QUFDSCx3REFBd0Q7QUFDeEQsU0FBUywwQkFBMEIsQ0FDakMsS0FBYSxFQUNiLE9BQTJCLEVBQzNCLFVBQXFCO0lBRXJCLElBQUksYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUN2QixJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFFbkIsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDbkIsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXhDLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FB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LEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTtRQUMvQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNWLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxTQUFTO1FBQ3RDLElBQUksaUJBQWlCLEVBQUU7WUFDckIsOEVBQThFO1lBQzlFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksTUFBTSxFQUFFO2dCQUM5QixFQUFFLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDVjtpQkFBTTtnQkFDTCxpQkFBaUIsR0FBRyxLQUFLLENBQUM7YUFDM0I7U0FDRjtRQUNELE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ04sSUFBSSxLQUFLLEVBQUU7UUFDVCxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RCLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztLQUMzQjtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBNQVhfRElHSVRTID0gMjI7XG5jb25zdCBERUNJTUFMX1NFUCA9ICcuJztcbmNvbnN0IFpFUk9fQ0hBUiA9ICcwJztcbmNvbnN0IFN5bWJvbEluZmluaXR5ID0gJ+KInic7XG5jb25zdCBTeW1ib2xEZWNpbWFsID0gJy4nO1xuY29uc3QgU3ltYm9sR3JvdXAgPSAnJztcbmNvbnN0IFN5bWJvbEV4cG9uZW50aWFsID0gJ0UnO1xuY29uc3QgU3ltYm9sTnVtYmVyUGF0dGVybiA9IHtcbiAgZ1NpemU6IDMsXG4gIGxnU2l6ZTogMyxcbiAgbWF4RnJhYzogMyxcbiAgbWluRnJhYzogMCxcbiAgbWluSW50OiAxLFxuICBuZWdQcmU6ICctJyxcbiAgbmVnU3VmOiAnJyxcbiAgcG9zUHJlOiAnJyxcbiAgcG9zU3VmOiAnJyxcbn07XG5cbi8qKlxuICogVHJhbnNmb3JtcyBhIG51bWJlciB0byBhIGxvY2FsZSBzdHJpbmcgYmFzZWQgb24gYSBzdHlsZSBhbmQgYSBmb3JtYXRcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbmZ1bmN0aW9uIGZvcm1hdE51bWJlclRvTG9jYWxlU3RyaW5nKFxuICB2YWx1ZTogbnVtYmVyLFxuICBwYXR0ZXJuOiBQYXJzZWROdW1iZXJGb3JtYXQsXG4gIGRpZ2l0c0luZm8/OiBudW1iZXJbXSxcbik6IHN0cmluZyB7XG4gIGxldCBmb3JtYXR0ZWRUZXh0ID0gJyc7XG4gIGxldCBpc1plcm8gPSBmYWxzZTtcblxuICBpZiAoaXNGaW5pdGUodmFsdWUpKSB7XG4gICAgY29uc3QgcGFyc2VkTnVtYmVyID0gcGFyc2VOdW1iZXIodmFsdWUpO1xuXG4gICAgY29uc3QgbWluSW50ID0gZGlnaXRzSW5mb1swXSB8fCAwO1xuICAgIGNvbnN0IG1pbkZyYWN0aW9uID0gZGlnaXRzSW5mb1sxXSB8fCAwO1xuICAgIGNvbnN0IG1heEZyYWN0aW9uID0gZGlnaXRzSW5mb1syXSB8fCAwO1xuXG4gICAgcm91bmROdW1iZXIocGFyc2VkTnVtYmVyLCBtaW5GcmFjdGlvbiwgbWF4RnJhY3Rpb24pO1xuXG4gICAgbGV0IGRpZ2l0cyA9IHBhcnNlZE51bWJlci5kaWdpdHM7XG4gICAgbGV0IGludGVnZXJMZW4gPSBwYXJzZWROdW1iZXIuaW50ZWdlckxlbjtcbiAgICBjb25zdCBleHBvbmVudCA9IHBhcnNlZE51bWJlci5leHBvbmVudDtcbiAgICBsZXQgZGVjaW1hbHMgPSBbXTtcbiAgICBpc1plcm8gPSBkaWdpdHMuZXZlcnkoZCA9PiAhZCk7XG5cbiAgICAvLyBwYWQgemVyb3MgZm9yIHNtYWxsIG51bWJlcnNcbiAgICBmb3IgKDsgaW50ZWdlckxlbiA8IG1pbkludDsgaW50ZWdlckxlbisrKSB7XG4gICAgICBkaWdpdHMudW5zaGlmdCgwKTtcbiAgICB9XG5cbiAgICAvLyBwYWQgemVyb3MgZm9yIHNtYWxsIG51bWJlcnNcbiAgICBmb3IgKDsgaW50ZWdlckxlbiA8IDA7IGludGVnZXJMZW4rKykge1xuICAgICAgZGlnaXRzLnVuc2hpZnQoMCk7XG4gICAgfVxuXG4gICAgLy8gZXh0cmFjdCBkZWNpbWFscyBkaWdpdHNcbiAgICBpZiAoaW50ZWdlckxlbiA+IDApIHtcbiAgICAgIGRlY2ltYWxzID0gZGlnaXRzLnNwbGljZShpbnRlZ2VyTGVuLCBkaWdpdHMubGVuZ3RoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZGVjaW1hbHMgPSBkaWdpdHM7XG4gICAgICBkaWdpdHMgPSBbMF07XG4gICAgfVxuXG4gICAgLy8gZm9ybWF0IHRoZSBpbnRlZ2VyIGRpZ2l0cyB3aXRoIGdyb3VwaW5nIHNlcGFyYXRvcnNcbiAgICBjb25zdCBncm91cHMgPSBbXTtcbiAgICBpZiAoZGlnaXRzLmxlbmd0aCA+PSBwYXR0ZXJuLmxnU2l6ZSkge1xuICAgICAgZ3JvdXBzLnVuc2hpZnQoZGlnaXRzLnNwbGljZSgtcGF0dGVybi5sZ1NpemUsIGRpZ2l0cy5sZW5ndGgpLmpvaW4oJycpKTtcbiAgICB9XG5cbiAgICB3aGlsZSAoZGlnaXRzLmxlbmd0aCA+IHBhdHRlcm4uZ1NpemUpIHtcbiAgICAgIGdyb3Vwcy51bnNoaWZ0KGRpZ2l0cy5zcGxpY2UoLXBhdHRlcm4uZ1NpemUsIGRpZ2l0cy5sZW5ndGgpLmpvaW4oJycpKTtcbiAgICB9XG5cbiAgICBpZiAoZGlnaXRzLmxlbmd0aCA+IDApIHtcbiAgICAgIGdyb3Vwcy51bnNoaWZ0KGRpZ2l0cy5qb2luKCcnKSk7XG4gICAgfVxuXG4gICAgZm9ybWF0dGVkVGV4dCA9IGdyb3Vwcy5qb2luKFN5bWJvbEdyb3VwKTtcblxuICAgIC8vIGFwcGVuZCB0aGUgZGVjaW1hbCBkaWdpdHNcbiAgICBpZiAoZGVjaW1hbHMubGVuZ3RoID4gMCkge1xuICAgICAgZm9ybWF0dGVkVGV4dCArPSBTeW1ib2xEZWNpbWFsICsgZGVjaW1hbHMuam9pbignJyk7XG4gICAgfVxuXG4gICAgaWYgKGV4cG9uZW50KSB7XG4gICAgICBmb3JtYXR0ZWRUZXh0ICs9IFN5bWJvbEV4cG9uZW50aWFsICsgJysnICsgZXhwb25lbnQ7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGZvcm1hdHRlZFRleHQgPSBTeW1ib2xJbmZpbml0eTtcbiAgfVxuXG4gIGZvcm1hdHRlZFRleHQgPVxuICAgIHZhbHVlIDwgMCAmJiAhaXNaZXJvXG4gICAgICA/IHBhdHRlcm4ubmVnUHJlICsgZm9ybWF0dGVkVGV4dCArIHBhdHRlcm4ubmVnU3VmXG4gICAgICA6IHBhdHRlcm4ucG9zUHJlICsgZm9ybWF0dGVkVGV4dCArIHBhdHRlcm4ucG9zU3VmO1xuXG4gIHJldHVybiBmb3JtYXR0ZWRUZXh0O1xufVxuXG4vKipcbiAqIEBuZ01vZHVsZSBDb21tb25Nb2R1bGVcbiAqXG4gKiBGb3JtYXRzIGEgbnVtYmVyIGFzIHRleHQuIEdyb3VwIHNpemluZyBhbmQgc2VwYXJhdG9yIGFuZCBvdGhlciBsb2NhbGUtc3BlY2lmaWNcbiAqIGNvbmZpZ3VyYXRpb25zIGFyZSBiYXNlZCBvbiB0aGUgbG9jYWxlLlxuICpcbiAqIFdoZXJlOlxuICogLSBgdmFsdWVgIGlzIGEgbnVtYmVyLlxuICogLSBgZGlnaXRJbmZvYCBTZWUge0BsaW5rIERlY2ltYWxQaXBlfSBmb3IgbW9yZSBkZXRhaWxzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0TnVtYmVyKHZhbHVlOiBudW1iZXIsIGRpZ2l0c0luZm8/OiBudW1iZXJbXSk6IHN0cmluZyB7XG4gIHJldHVybiBmb3JtYXROdW1iZXJUb0xvY2FsZVN0cmluZyh2YWx1ZSwgU3ltYm9sTnVtYmVyUGF0dGVybiwgZGlnaXRzSW5mbyk7XG59XG5cbmludGVyZmFjZSBQYXJzZWROdW1iZXJGb3JtYXQge1xuICBtaW5JbnQ6IG51bWJlcjtcbiAgLy8gdGhlIG1pbmltdW0gbnVtYmVyIG9mIGRpZ2l0cyByZXF1aXJlZCBpbiB0aGUgZnJhY3Rpb24gcGFydCBvZiB0aGUgbnVtYmVyXG4gIG1pbkZyYWM6IG51bWJlcjtcbiAgLy8gdGhlIG1heGltdW0gbnVtYmVyIG9mIGRpZ2l0cyByZXF1aXJlZCBpbiB0aGUgZnJhY3Rpb24gcGFydCBvZiB0aGUgbnVtYmVyXG4gIG1heEZyYWM6IG51bWJlcjtcbiAgLy8gdGhlIHByZWZpeCBmb3IgYSBwb3NpdGl2ZSBudW1iZXJcbiAgcG9zUHJlOiBzdHJpbmc7XG4gIC8vIHRoZSBzdWZmaXggZm9yIGEgcG9zaXRpdmUgbnVtYmVyXG4gIHBvc1N1Zjogc3RyaW5nO1xuICAvLyB0aGUgcHJlZml4IGZvciBhIG5lZ2F0aXZlIG51bWJlciAoZS5nLiBgLWAgb3IgYChgKSlcbiAgbmVnUHJlOiBzdHJpbmc7XG4gIC8vIHRoZSBzdWZmaXggZm9yIGEgbmVnYXRpdmUgbnVtYmVyIChlLmcuIGApYClcbiAgbmVnU3VmOiBzdHJpbmc7XG4gIC8vIG51bWJlciBvZiBkaWdpdHMgaW4gZWFjaCBncm91cCBvZiBzZXBhcmF0ZWQgZGlnaXRzXG4gIGdTaXplOiBudW1iZXI7XG4gIC8vIG51bWJlciBvZiBkaWdpdHMgaW4gdGhlIGxhc3QgZ3JvdXAgb2YgZGlnaXRzIGJlZm9yZSB0aGUgZGVjaW1hbCBzZXBhcmF0b3JcbiAgbGdTaXplOiBudW1iZXI7XG59XG5cbmludGVyZmFjZSBQYXJzZWROdW1iZXIge1xuICAvLyBhbiBhcnJheSBvZiBkaWdpdHMgY29udGFpbmluZyBsZWFkaW5nIHplcm9zIGFzIG5lY2Vzc2FyeVxuICBkaWdpdHM6IG51bWJlcltdO1xuICAvLyB0aGUgZXhwb25lbnQgZm9yIG51bWJlcnMgdGhhdCB3b3VsZCBuZWVkIG1vcmUgdGhhbiBgTUFYX0RJR0lUU2AgZGlnaXRzIGluIGBkYFxuICBleHBvbmVudDogbnVtYmVyO1xuICAvLyB0aGUgbnVtYmVyIG9mIHRoZSBkaWdpdHMgaW4gYGRgIHRoYXQgYXJlIHRvIHRoZSBsZWZ0IG9mIHRoZSBkZWNpbWFsIHBvaW50XG4gIGludGVnZXJMZW46IG51bWJlcjtcbn1cblxuLyoqXG4gKiBQYXJzZXMgYSBudW1iZXIuXG4gKiBTaWduaWZpY2FudCBiaXRzIG9mIHRoaXMgcGFyc2UgYWxnb3JpdGhtIGNhbWUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vTWlrZU1jbC9iaWcuanMvXG4gKi9cbmZ1bmN0aW9uIHBhcnNlTnVtYmVyKG51bTogbnVtYmVyKTogUGFyc2VkTnVtYmVyIHtcbiAgbGV0IG51bVN0ciA9IE1hdGguYWJzKG51bSkgKyAnJztcbiAgbGV0IGV4cG9uZW50ID0gMDtcbiAgbGV0IGRpZ2l0czogbnVtYmVyW107XG4gIGxldCBpbnRlZ2VyTGVuOiBudW1iZXI7XG4gIGxldCBpOiBudW1iZXI7XG4gIGxldCBqOiBudW1iZXI7XG4gIGxldCB6ZXJvczogbnVtYmVyO1xuXG4gIC8vIERlY2ltYWwgcG9pbnQ/XG4gIGlmICgoaW50ZWdlckxlbiA9IG51bVN0ci5pbmRleE9mKERFQ0lNQUxfU0VQKSkgPiAtMSkge1xuICAgIG51bVN0ciA9IG51bVN0ci5yZXBsYWNlKERFQ0lNQUxfU0VQLCAnJyk7XG4gIH1cblxuICAvLyBFeHBvbmVudGlhbCBmb3JtP1xuICBpZiAoKGkgPSBudW1TdHIuc2VhcmNoKC9lL2kpKSA+IDApIHtcbiAgICAvLyBXb3JrIG91dCB0aGUgZXhwb25lbnQuXG4gICAgaWYgKGludGVnZXJMZW4gPCAwKSB7XG4gICAgICBpbnRlZ2VyTGVuID0gaTtcbiAgICB9XG4gICAgaW50ZWdlckxlbiArPSArbnVtU3RyLnNsaWNlKGkgKyAxKTtcbiAgICBudW1TdHIgPSBudW1TdHIuc2xpY2UoMCwgTWF0aC5tYXgoMCwgaSkpO1xuICB9IGVsc2UgaWYgKGludGVnZXJMZW4gPCAwKSB7XG4gICAgLy8gVGhlcmUgd2FzIG5vIGRlY2ltYWwgcG9pbnQgb3IgZXhwb25lbnQgc28gaXQgaXMgYW4gaW50ZWdlci5cbiAgICBpbnRlZ2VyTGVuID0gbnVtU3RyLmxlbmd0aDtcbiAgfVxuXG4gIC8vIENvdW50IHRoZSBudW1iZXIgb2YgbGVhZGluZyB6ZXJvcy5cbiAgZm9yIChpID0gMDsgbnVtU3RyLmNoYXJBdChpKSA9PT0gWkVST19DSEFSOyBpKyspIHtcbiAgICAvKiBlbXB0eSAqL1xuICB9XG5cbiAgaWYgKGkgPT09ICh6ZXJvcyA9IG51bVN0ci5sZW5ndGgpKSB7XG4gICAgLy8gVGhlIGRpZ2l0cyBhcmUgYWxsIHplcm8uXG4gICAgZGlnaXRzID0gWzBdO1xuICAgIGludGVnZXJMZW4gPSAxO1xuICB9IGVsc2Uge1xuICAgIC8vIENvdW50IHRoZSBudW1iZXIgb2YgdHJhaWxpbmcgemVyb3NcbiAgICB6ZXJvcy0tO1xuICAgIHdoaWxlIChudW1TdHIuY2hhckF0KHplcm9zKSA9PT0gWkVST19DSEFSKSB7XG4gICAgICB6ZXJvcy0tO1xuICAgIH1cblxuICAgIC8vIFRyYWlsaW5nIHplcm9zIGFyZSBpbnNpZ25pZmljYW50IHNvIGlnbm9yZSB0aGVtXG4gICAgaW50ZWdlckxlbiAtPSBpO1xuICAgIGRpZ2l0cyA9IFtdO1xuICAgIC8vIENvbnZlcnQgc3RyaW5nIHRvIGFycmF5IG9mIGRpZ2l0cyB3aXRob3V0IGxlYWRpbmcvdHJhaWxpbmcgemVyb3MuXG4gICAgZm9yIChqID0gMDsgaSA8PSB6ZXJvczsgaSsrLCBqKyspIHtcbiAgICAgIGRpZ2l0c1tqXSA9IE51bWJlcihudW1TdHIuY2hhckF0KGkpKTtcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0aGUgbnVtYmVyIG92ZXJmbG93cyB0aGUgbWF4aW11bSBhbGxvd2VkIGRpZ2l0cyB0aGVuIHVzZSBhbiBleHBvbmVudC5cbiAgaWYgKGludGVnZXJMZW4gPiBNQVhfRElHSVRTKSB7XG4gICAgZGlnaXRzID0gZGlnaXRzLnNwbGljZSgwLCBNQVhfRElHSVRTIC0gMSk7XG4gICAgZXhwb25lbnQgPSBpbnRlZ2VyTGVuIC0gMTtcbiAgICBpbnRlZ2VyTGVuID0gMTtcbiAgfVxuXG4gIHJldHVybiB7IGRpZ2l0cywgZXhwb25lbnQsIGludGVnZXJMZW4gfTtcbn1cblxuLyoqXG4gKiBSb3VuZCB0aGUgcGFyc2VkIG51bWJlciB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBkZWNpbWFsIHBsYWNlc1xuICogVGhpcyBmdW5jdGlvbiBjaGFuZ2VzIHRoZSBwYXJzZWROdW1iZXIgaW4tcGxhY2VcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbmZ1bmN0aW9uIHJvdW5kTnVtYmVyKFxuICBwYXJzZWROdW1iZXI6IFBhcnNlZE51bWJlcixcbiAgbWluRnJhYzogbnVtYmVyLFxuICBtYXhGcmFjOiBudW1iZXIsXG4pIHtcbiAgaWYgKG1pbkZyYWMgPiBtYXhGcmFjKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYFRoZSBtaW5pbXVtIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgZnJhY3Rpb24gKCR7bWluRnJhY30pIGlzIGhpZ2hlciB0aGFuIHRoZSBtYXhpbXVtICgke21heEZyYWN9KS5gLFxuICAgICk7XG4gIH1cblxuICBjb25zdCBkaWdpdHMgPSBwYXJzZWROdW1iZXIuZGlnaXRzO1xuICBsZXQgZnJhY3Rpb25MZW4gPSBkaWdpdHMubGVuZ3RoIC0gcGFyc2VkTnVtYmVyLmludGVnZXJMZW47XG4gIGNvbnN0IGZyYWN0aW9uU2l6ZSA9IE1hdGgubWluKE1hdGgubWF4KG1pbkZyYWMsIGZyYWN0aW9uTGVuKSwgbWF4RnJhYyk7XG5cbiAgLy8gVGhlIGluZGV4IG9mIHRoZSBkaWdpdCB0byB3aGVyZSByb3VuZGluZyBpcyB0byBvY2N1clxuICBsZXQgcm91bmRBdCA9IGZyYWN0aW9uU2l6ZSArIHBhcnNlZE51bWJlci5pbnRlZ2VyTGVuO1xuICBjb25zdCBkaWdpdCA9IGRpZ2l0c1tyb3VuZEF0XTtcblxuICBpZiAocm91bmRBdCA+IDApIHtcbiAgICAvLyBEcm9wIGZyYWN0aW9uYWwgZGlnaXRzIGJleW9uZCBgcm91bmRBdGBcbiAgICBkaWdpdHMuc3BsaWNlKE1hdGgubWF4KHBhcnNlZE51bWJlci5pbnRlZ2VyTGVuLCByb3VuZEF0KSk7XG5cbiAgICAvLyBTZXQgbm9uLWZyYWN0aW9uYWwgZGlnaXRzIGJleW9uZCBgcm91bmRBdGAgdG8gMFxuICAgIGZvciAobGV0IGogPSByb3VuZEF0OyBqIDwgZGlnaXRzLmxlbmd0aDsgaisrKSB7XG4gICAgICBkaWdpdHNbal0gPSAwO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICAvLyBXZSByb3VuZGVkIHRvIHplcm8gc28gcmVzZXQgdGhlIHBhcnNlZE51bWJlclxuICAgIGZyYWN0aW9uTGVuID0gTWF0aC5tYXgoMCwgZnJhY3Rpb25MZW4pO1xuICAgIHBhcnNlZE51bWJlci5pbnRlZ2VyTGVuID0gMTtcbiAgICBkaWdpdHMubGVuZ3RoID0gTWF0aC5tYXgoMSwgKHJvdW5kQXQgPSBmcmFjdGlvblNpemUgKyAxKSk7XG4gICAgZGlnaXRzWzBdID0gMDtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IHJvdW5kQXQ7IGkrKykge1xuICAgICAgZGlnaXRzW2ldID0gMDtcbiAgICB9XG4gIH1cblxuICBpZiAoZGlnaXQgPj0gNSkge1xuICAgIGlmIChyb3VuZEF0IC0gMSA8IDApIHtcbiAgICAgIGZvciAobGV0IGsgPSAwOyBrID4gcm91bmRBdDsgay0tKSB7XG4gICAgICAgIGRpZ2l0cy51bnNoaWZ0KDApO1xuICAgICAgICBwYXJzZWROdW1iZXIuaW50ZWdlckxlbisrO1xuICAgICAgfVxuICAgICAgZGlnaXRzLnVuc2hpZnQoMSk7XG4gICAgICBwYXJzZWROdW1iZXIuaW50ZWdlckxlbisrO1xuICAgIH0gZWxzZSB7XG4gICAgICBkaWdpdHNbcm91bmRBdCAtIDFdKys7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFkIG91dCB3aXRoIHplcm9zIHRvIGdldCB0aGUgcmVxdWlyZWQgZnJhY3Rpb24gbGVuZ3RoXG4gIGZvciAoOyBmcmFjdGlvbkxlbiA8IE1hdGgubWF4KDAsIGZyYWN0aW9uU2l6ZSk7IGZyYWN0aW9uTGVuKyspIHtcbiAgICBkaWdpdHMucHVzaCgwKTtcbiAgfVxuXG4gIGxldCBkcm9wVHJhaWxpbmdaZXJvcyA9IGZyYWN0aW9uU2l6ZSAhPT0gMDtcbiAgLy8gTWluaW1hbCBsZW5ndGggPSBuYiBvZiBkZWNpbWFscyByZXF1aXJlZCArIGN1cnJlbnQgbmIgb2YgaW50ZWdlcnNcbiAgLy8gQW55IG51bWJlciBiZXNpZGVzIHRoYXQgaXMgb3B0aW9uYWwgYW5kIGNhbiBiZSByZW1vdmVkIGlmIGl0J3MgYSB0cmFpbGluZyAwXG4gIGNvbnN0IG1pbkxlbiA9IG1pbkZyYWMgKyBwYXJzZWROdW1iZXIuaW50ZWdlckxlbjtcbiAgLy8gRG8gYW55IGNhcnJ5aW5nLCBlLmcuIGEgZGlnaXQgd2FzIHJvdW5kZWQgdXAgdG8gMTBcbiAgY29uc3QgY2FycnkgPSBkaWdpdHMucmVkdWNlUmlnaHQoKGMsIGQsIGksIGRzKSA9PiB7XG4gICAgZCA9IGQgKyBjO1xuICAgIGRzW2ldID0gZCA8IDEwID8gZCA6IGQgLSAxMDsgLy8gZCAlIDEwXG4gICAgaWYgKGRyb3BUcmFpbGluZ1plcm9zKSB7XG4gICAgICAvLyBEbyBub3Qga2VlcCBtZWFuaW5nbGVzcyBmcmFjdGlvbmFsIHRyYWlsaW5nIHplcm9zIChlLmcuIDE1LjUyMDAwIC0tPiAxNS41MilcbiAgICAgIGlmIChkc1tpXSA9PT0gMCAmJiBpID49IG1pbkxlbikge1xuICAgICAgICBkcy5wb3AoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRyb3BUcmFpbGluZ1plcm9zID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkID49IDEwID8gMSA6IDA7XG4gIH0sIDApO1xuICBpZiAoY2FycnkpIHtcbiAgICBkaWdpdHMudW5zaGlmdChjYXJyeSk7XG4gICAgcGFyc2VkTnVtYmVyLmludGVnZXJMZW4rKztcbiAgfVxufVxuIl19
@@ -0,0 +1,23 @@
1
+ export * from './browser';
2
+ export * from './cache-store';
3
+ export * from './color-helpers';
4
+ export * from './common';
5
+ export * from './create-recursive-filter';
6
+ export * from './cron-util';
7
+ export * from './decorators';
8
+ export * from './k8s-util';
9
+ export * from './observable';
10
+ export * from './operators';
11
+ export * from './request-pool';
12
+ export * from './tree';
13
+ export * from './with-load-state';
14
+ export * from './workspace';
15
+ export * from './unit';
16
+ export * from './yaml';
17
+ export * from './version';
18
+ export * from './resources';
19
+ export * from './local-storage-constants';
20
+ export * from './k8s-pattern';
21
+ export * from './format-number';
22
+ export * from './node';
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnJvd3Nlcic7XG5leHBvcnQgKiBmcm9tICcuL2NhY2hlLXN0b3JlJztcbmV4cG9ydCAqIGZyb20gJy4vY29sb3ItaGVscGVycyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbic7XG5leHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1yZWN1cnNpdmUtZmlsdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vY3Jvbi11dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vZGVjb3JhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2s4cy11dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vb2JzZXJ2YWJsZSc7XG5leHBvcnQgKiBmcm9tICcuL29wZXJhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtcG9vbCc7XG5leHBvcnQgKiBmcm9tICcuL3RyZWUnO1xuZXhwb3J0ICogZnJvbSAnLi93aXRoLWxvYWQtc3RhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi91bml0JztcbmV4cG9ydCAqIGZyb20gJy4veWFtbCc7XG5leHBvcnQgKiBmcm9tICcuL3ZlcnNpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9yZXNvdXJjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2NhbC1zdG9yYWdlLWNvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2s4cy1wYXR0ZXJuJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybWF0LW51bWJlcic7XG5leHBvcnQgKiBmcm9tICcuL25vZGUnO1xuIl19
@@ -0,0 +1,13 @@
1
+ export const K8S_RESOURCE_LABEL_KEY_PREFIX_PATTERN = {
2
+ pattern: /^[\da-z]([\da-z-]*[\da-z])?(\.[\da-z]([\da-z-]*[\da-z])?)*$/,
3
+ tip: 'regexp_tip_resource_label_key_prefix',
4
+ };
5
+ export const K8S_RESOURCE_LABEL_KEY_NAME_PATTERN = {
6
+ pattern: /^(([\dA-Za-z][\w.-]*)?[\dA-Za-z])$/,
7
+ tip: 'k8s_resource_label_key_invalid',
8
+ };
9
+ export const K8S_RESOURCE_LABEL_VALUE_PATTERN = {
10
+ pattern: /^(([\dA-Za-z][\w.-]*)?[\dA-Za-z])?$/,
11
+ tip: 'k8s_resource_label_value_invalid',
12
+ };
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLXBhdHRlcm4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS91dGlscy9rOHMtcGF0dGVybi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRztJQUNuRCxPQUFPLEVBQUUsNkRBQTZEO0lBQ3RFLEdBQUcsRUFBRSxzQ0FBc0M7Q0FDNUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1DQUFtQyxHQUFHO0lBQ2pELE9BQU8sRUFBRSxvQ0FBb0M7SUFDN0MsR0FBRyxFQUFFLGdDQUFnQztDQUN0QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUc7SUFDOUMsT0FBTyxFQUFFLHFDQUFxQztJQUM5QyxHQUFHLEVBQUUsa0NBQWtDO0NBQ3hDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9QUkVGSVhfUEFUVEVSTiA9IHtcbiAgcGF0dGVybjogL15bXFxkYS16XShbXFxkYS16LV0qW1xcZGEtel0pPyhcXC5bXFxkYS16XShbXFxkYS16LV0qW1xcZGEtel0pPykqJC8sXG4gIHRpcDogJ3JlZ2V4cF90aXBfcmVzb3VyY2VfbGFiZWxfa2V5X3ByZWZpeCcsXG59O1xuXG5leHBvcnQgY29uc3QgSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9OQU1FX1BBVFRFUk4gPSB7XG4gIHBhdHRlcm46IC9eKChbXFxkQS1aYS16XVtcXHcuLV0qKT9bXFxkQS1aYS16XSkkLyxcbiAgdGlwOiAnazhzX3Jlc291cmNlX2xhYmVsX2tleV9pbnZhbGlkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBLOFNfUkVTT1VSQ0VfTEFCRUxfVkFMVUVfUEFUVEVSTiA9IHtcbiAgcGF0dGVybjogL14oKFtcXGRBLVphLXpdW1xcdy4tXSopP1tcXGRBLVphLXpdKT8kLyxcbiAgdGlwOiAnazhzX3Jlc291cmNlX2xhYmVsX3ZhbHVlX2ludmFsaWQnLFxufTtcbiJdfQ==
@@ -0,0 +1,97 @@
1
+ import { assocPath, curry, path } from 'ramda';
2
+ import { getGlobalEnvironments, GLOBAL_CLUSTER } from '../constants';
3
+ import { ANNOTATIONS, LABELS, METADATA } from '../services';
4
+ export const assemble = (subdomain, domain, type) => subdomain ? `${subdomain}.${domain}/${type}` : `${domain}/${type}`;
5
+ export const k8sSubGroup = curry((subdomain, type) => assemble(subdomain, 'kubernetes.io', type));
6
+ export const k8sGroup = k8sSubGroup('');
7
+ export const subdomainGroup = curry((subdomain, type) => assemble(subdomain, getGlobalEnvironments('LABEL_BASE_DOMAIN'), type));
8
+ export const domainGroup = subdomainGroup('');
9
+ export const getSubdomainLabel = curry((subdomain, type, resource) => path([METADATA, LABELS, subdomainGroup(subdomain, type)], resource));
10
+ export const getDomainLabel = curry((type, resource) => path([METADATA, LABELS, subdomainGroup('', type)], resource));
11
+ export const getSubdomainAnnotation = curry((subdomain, type, resource) => path([METADATA, ANNOTATIONS, subdomainGroup(subdomain, type)], resource));
12
+ export const getDomainAnnotation = curry((type, resource) => path([METADATA, ANNOTATIONS, subdomainGroup('', type)], resource));
13
+ const assignMetadata = (group) => (value) => (resource) => Object.entries(value).reduce((acc, [key, value]) => assocPath([METADATA, group, key], value, acc), resource);
14
+ export const assignLabels = (assignMetadata(LABELS));
15
+ export const assignAnnotations = (assignMetadata(ANNOTATIONS));
16
+ export function getGlobalNs() {
17
+ return getGlobalEnvironments('GLOBAL_NAMESPACE');
18
+ }
19
+ export function createOwnerReference(owner, { blockOwnerDeletion = true, controller = true, } = {}) {
20
+ return {
21
+ apiVersion: owner.apiVersion,
22
+ kind: owner.kind,
23
+ name: owner.metadata.name,
24
+ uid: owner.metadata.uid,
25
+ blockOwnerDeletion,
26
+ controller,
27
+ };
28
+ }
29
+ // https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/
30
+ // https://en.wikipedia.org/wiki/Metric_prefix
31
+ // https://en.wikipedia.org/wiki/Binary_prefix
32
+ export const K8S_BINARY_UNITS = [
33
+ 'Ki',
34
+ 'Mi',
35
+ 'Gi',
36
+ 'Ti',
37
+ 'Pi',
38
+ 'Ei',
39
+ 'Zi',
40
+ 'Yi',
41
+ ];
42
+ export const K8S_DECIMAL_UNITS = [
43
+ 'm',
44
+ '',
45
+ 'k',
46
+ 'M',
47
+ 'G',
48
+ 'T',
49
+ 'P',
50
+ 'E',
51
+ 'Z',
52
+ 'Y',
53
+ ];
54
+ export function parseQuantity(value) {
55
+ const reg = /^(\d+|\d+\.\d+)([A-Za-z]*)$/;
56
+ const res = reg.exec(value);
57
+ return {
58
+ value: res?.[1] === undefined ? undefined : parseFloat(res[1]),
59
+ unit: res?.[2],
60
+ };
61
+ }
62
+ export function convertQuantityUnit(targetUnit, source) {
63
+ const fn = (source) => {
64
+ if (source.value === undefined || source.unit === undefined) {
65
+ return source;
66
+ }
67
+ if (source.unit === targetUnit) {
68
+ return source;
69
+ }
70
+ return {
71
+ value: Math.round(((source.value * unitCompensate(source.unit)) /
72
+ unitCompensate(targetUnit)) *
73
+ 1000) / 1000,
74
+ unit: targetUnit,
75
+ };
76
+ };
77
+ return source ? fn(source) : fn;
78
+ }
79
+ // GLOBAL 集群的项目同名 NS 名称不会具有 INNER_PROJECT_NS_PREFIX 前缀
80
+ export function getProjectNs(project, cluster) {
81
+ return `${cluster === GLOBAL_CLUSTER
82
+ ? ''
83
+ : getGlobalEnvironments('INNER_PROJECT_NS_PREFIX') || ''}${project}`;
84
+ }
85
+ function unitCompensate(unit) {
86
+ if (K8S_BINARY_UNITS.includes(unit)) {
87
+ return (1024 **
88
+ (K8S_BINARY_UNITS.indexOf(unit) + 1));
89
+ }
90
+ if (K8S_DECIMAL_UNITS.includes(unit)) {
91
+ return (1000 **
92
+ (K8S_DECIMAL_UNITS.indexOf(unit) -
93
+ 1));
94
+ }
95
+ throw new Error(`Unknown unit ${unit}`);
96
+ }
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS91dGlscy9rOHMtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHNUQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsU0FBaUIsRUFBRSxNQUFjLEVBQUUsSUFBWSxFQUFFLEVBQUUsQ0FDMUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsQ0FBQyxTQUFpQixFQUFFLElBQVksRUFBVSxFQUFFLENBQzNFLFFBQVEsQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLElBQUksQ0FBQyxDQUMzQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUV4QyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLENBQUMsU0FBaUIsRUFBRSxJQUFZLEVBQVUsRUFBRSxDQUM5RSxRQUFRLENBQUMsU0FBUyxFQUFFLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQ3RFLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBRTlDLE1BQU0sQ0FBQyxN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QUFDLE9BQWUsRUFBRSxPQUFlO0lBQzNELE9BQU8sR0FDTCxPQUFPLEtBQUssY0FBYztRQUN4QixDQUFDLENBQUMsRUFBRTtRQUNKLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLEVBQzFELEdBQUcsT0FBTyxFQUFFLENBQUM7QUFDZixDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsSUFBa0I7SUFDeEMsSUFBSSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsSUFBeUMsQ0FBQyxFQUFFO1FBQ3hFLE9BQU8sQ0FDTCxJQUFJO1lBQ0osQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBeUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUMxRSxDQUFDO0tBQ0g7SUFDRCxJQUFJLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxJQUEwQyxDQUFDLEVBQUU7UUFDMUUsT0FBTyxDQUNMLElBQUk7WUFDSixDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxJQUEwQyxDQUFDO2dCQUNwRSxDQUFDLENBQUMsQ0FDTCxDQUFDO0tBQ0g7SUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc3NvY1BhdGgsIGN1cnJ5LCBwYXRoIH0gZnJvbSAncmFtZGEnO1xuXG5pbXBvcnQgeyBnZXRHbG9iYWxFbnZpcm9ubWVudHMsIEdMT0JBTF9DTFVTVEVSIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEFOTk9UQVRJT05TLCBMQUJFTFMsIE1FVEFEQVRBIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgS3ViZXJuZXRlc1Jlc291cmNlLCBPd25lclJlZmVyZW5jZSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGFzc2VtYmxlID0gKHN1YmRvbWFpbjogc3RyaW5nLCBkb21haW46IHN0cmluZywgdHlwZTogc3RyaW5nKSA9PlxuICBzdWJkb21haW4gPyBgJHtzdWJkb21haW59LiR7ZG9tYWlufS8ke3R5cGV9YCA6IGAke2RvbWFpbn0vJHt0eXBlfWA7XG5cbmV4cG9ydCBjb25zdCBrOHNTdWJHcm91cCA9IGN1cnJ5KChzdWJkb21haW46IHN0cmluZywgdHlwZTogc3RyaW5nKTogc3RyaW5nID0+XG4gIGFzc2VtYmxlKHN1YmRvbWFpbiwgJ2t1YmVybmV0ZXMuaW8nLCB0eXBlKSxcbik7XG5cbmV4cG9ydCBjb25zdCBrOHNHcm91cCA9IGs4c1N1Ykdyb3VwKCcnKTtcblxuZXhwb3J0IGNvbnN0IHN1YmRvbWFpbkdyb3VwID0gY3VycnkoKHN1YmRvbWFpbjogc3RyaW5nLCB0eXBlOiBzdHJpbmcpOiBzdHJpbmcgPT5cbiAgYXNzZW1ibGUoc3ViZG9tYWluLCBnZXRHbG9iYWxFbnZpcm9ubWVudHMoJ0xBQkVMX0JBU0VfRE9NQUlOJyksIHR5cGUpLFxuKTtcblxuZXhwb3J0IGNvbnN0IGRvbWFpbkdyb3VwID0gc3ViZG9tYWluR3JvdXAoJycpO1xuXG5leHBvcnQgY29uc3QgZ2V0U3ViZG9tYWluTGFiZWwgPSBjdXJyeShcbiAgKHN1YmRvbWFpbjogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIHJlc291cmNlOiBLdWJlcm5ldGVzUmVzb3VyY2UpOiBzdHJpbmcgPT5cbiAgICBwYXRoKFtNRVRBREFUQSwgTEFCRUxTLCBzdWJkb21haW5Hcm91cChzdWJkb21haW4sIHR5cGUpXSwgcmVzb3VyY2UpLFxuKTtcblxuZXhwb3J0IGNvbnN0IGdldERvbWFpbkxhYmVsID0gY3VycnkoXG4gICh0eXBlOiBzdHJpbmcsIHJlc291cmNlOiBLdWJlcm5ldGVzUmVzb3VyY2UpOiBzdHJpbmcgPT5cbiAgICBwYXRoKFtNRVRBREFUQSwgTEFCRUxTLCBzdWJkb21haW5Hcm91cCgnJywgdHlwZSldLCByZXNvdXJjZSksXG4pO1xuXG5leHBvcnQgY29uc3QgZ2V0U3ViZG9tYWluQW5ub3RhdGlvbiA9IGN1cnJ5KFxuICAoc3ViZG9tYWluOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgcmVzb3VyY2U6IEt1YmVybmV0ZXNSZXNvdXJjZSk6IHN0cmluZyA9PlxuICAgIHBhdGgoW01FVEFEQVRBLCBBTk5PVEFUSU9OUywgc3ViZG9tYWluR3JvdXAoc3ViZG9tYWluLCB0eXBlKV0sIHJlc291cmNlKSxcbik7XG5cbmV4cG9ydCBjb25zdCBnZXREb21haW5Bbm5vdGF0aW9uID0gY3VycnkoXG4gICh0eXBlOiBzdHJpbmcsIHJlc291cmNlOiBLdWJlcm5ldGVzUmVzb3VyY2UpOiBzdHJpbmcgPT5cbiAgICBwYXRoKFtNRVRBREFUQSwgQU5OT1RBVElPTlMsIHN1YmRvbWFpbkdyb3VwKCcnLCB0eXBlKV0sIHJlc291cmNlKSxcbik7XG5cbmNvbnN0IGFzc2lnbk1ldGFkYXRhID1cbiAgKGdyb3VwOiBzdHJpbmcpID0+XG4gIDxWPih2YWx1ZTogUmVjb3JkPHN0cmluZywgVj4pID0+XG4gIDxSIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihyZXNvdXJjZTogUik6IFIgPT5cbiAgICBPYmplY3QuZW50cmllcyh2YWx1ZSkucmVkdWNlKFxuICAgICAgKGFjYywgW2tleSwgdmFsdWVdKSA9PiBhc3NvY1BhdGgoW01FVEFEQVRBLCBncm91cCwga2V5XSwgdmFsdWUsIGFjYyksXG4gICAgICByZXNvdXJjZSxcbiAgICApO1xuXG5leHBvcnQgY29uc3QgYXNzaWduTGFiZWxzID0gYXNzaWduTWV0YWRhdGEoTEFCRUxTKTxzdHJpbmc+O1xuXG5leHBvcnQgY29uc3QgYXNzaWduQW5ub3RhdGlvbnMgPSBhc3NpZ25NZXRhZGF0YShBTk5PVEFUSU9OUyk8c3RyaW5nPjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdsb2JhbE5zKCkge1xuICByZXR1cm4gZ2V0R2xvYmFsRW52aXJvbm1lbnRzKCdHTE9CQUxfTkFNRVNQQUNFJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVPd25lclJlZmVyZW5jZShcbiAgb3duZXI6IEt1YmVybmV0ZXNSZXNvdXJjZSxcbiAge1xuICAgIGJsb2NrT3duZXJEZWxldGlvbiA9IHRydWUsXG4gICAgY29udHJvbGxlciA9IHRydWUsXG4gIH06IFBhcnRpYWw8e1xuICAgIGJsb2NrT3duZXJEZWxldGlvbjogYm9vbGVhbjtcbiAgICBjb250cm9sbGVyOiBib29sZWFuO1xuICB9PiA9IHt9LFxuKTogT3duZXJSZWZlcmVuY2Uge1xuICByZXR1cm4ge1xuICAgIGFwaVZlcnNpb246IG93bmVyLmFwaVZlcnNpb24sXG4gICAga2luZDogb3duZXIua2luZCxcbiAgICBuYW1lOiBvd25lci5tZXRhZGF0YS5uYW1lLFxuICAgIHVpZDogb3duZXIubWV0YWRhdGEudWlkLFxuICAgIGJsb2NrT3duZXJEZWxldGlvbixcbiAgICBjb250cm9sbGVyLFxuICB9O1xufVxuXG4vLyBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9yZWZlcmVuY2Uva3ViZXJuZXRlcy1hcGkvY29tbW9uLWRlZmluaXRpb25zL3F1YW50aXR5L1xuLy8gaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTWV0cmljX3ByZWZpeFxuLy8gaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQmluYXJ5X3ByZWZpeFxuZXhwb3J0IGNvbnN0IEs4U19CSU5BUllfVU5JVFMgPSBbXG4gICdLaScsXG4gICdNaScsXG4gICdHaScsXG4gICdUaScsXG4gICdQaScsXG4gICdFaScsXG4gICdaaScsXG4gICdZaScsXG5dIGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgSzhTX0RFQ0lNQUxfVU5JVFMgPSBbXG4gICdtJyxcbiAgJycsXG4gICdrJyxcbiAgJ00nLFxuICAnRycsXG4gICdUJyxcbiAgJ1AnLFxuICAnRScsXG4gICdaJyxcbiAgJ1knLFxuXSBhcyBjb25zdDtcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlUXVhbnRpdHkodmFsdWU6IHN0cmluZyk6IFF1YW50aXR5IHtcbiAgY29uc3QgcmVnID0gL14oXFxkK3xcXGQrXFwuXFxkKykoW0EtWmEtel0qKSQvO1xuICBjb25zdCByZXMgPSByZWcuZXhlYyh2YWx1ZSk7XG4gIHJldHVybiB7XG4gICAgdmFsdWU6IHJlcz8uWzFdID09PSB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiBwYXJzZUZsb2F0KHJlc1sxXSksXG4gICAgdW5pdDogcmVzPy5bMl0gYXMgUXVhbnRpdHlVbml0LFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydFF1YW50aXR5VW5pdChcbiAgdGFyZ2V0VW5pdDogUXVhbnRpdHlVbml0LFxuKTogKHNvdXJjZTogUXVhbnRpdHkpID0+IFF1YW50aXR5O1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRRdWFudGl0eVVuaXQoXG4gIHRhcmdldFVuaXQ6IFF1YW50aXR5VW5pdCxcbiAgc291cmNlOiBRdWFudGl0eSxcbik6IFF1YW50aXR5O1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRRdWFudGl0eVVuaXQoXG4gIHRhcmdldFVuaXQ6IFF1YW50aXR5VW5pdCxcbiAgc291cmNlPzogUXVhbnRpdHksXG4pOiAoKHNvdXJjZTogUXVhbnRpdHkpID0+IFF1YW50aXR5KSB8IFF1YW50aXR5IHtcbiAgY29uc3QgZm4gPSAoc291cmNlOiBRdWFudGl0eSkgPT4ge1xuICAgIGlmIChzb3VyY2UudmFsdWUgPT09IHVuZGVmaW5lZCB8fCBzb3VyY2UudW5pdCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gc291cmNlO1xuICAgIH1cblxuICAgIGlmIChzb3VyY2UudW5pdCA9PT0gdGFyZ2V0VW5pdCkge1xuICAgICAgcmV0dXJuIHNvdXJjZTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgdmFsdWU6XG4gICAgICAgIE1hdGgucm91bmQoXG4gICAgICAgICAgKChzb3VyY2UudmFsdWUgKiB1bml0Q29tcGVuc2F0ZShzb3VyY2UudW5pdCkpIC9cbiAgICAgICAgICAgIHVuaXRDb21wZW5zYXRlKHRhcmdldFVuaXQpKSAqXG4gICAgICAgICAgICAxMDAwLFxuICAgICAgICApIC8gMTAwMCxcbiAgICAgIHVuaXQ6IHRhcmdldFVuaXQsXG4gICAgfTtcbiAgfTtcblxuICByZXR1cm4gc291cmNlID8gZm4oc291cmNlKSA6IGZuO1xufVxuXG4vLyBHTE9CQUwg6ZuG576k55qE6aG555uu5ZCM5ZCNIE5TIOWQjeensOS4jeS8muWFt+aciSBJTk5FUl9QUk9KRUNUX05TX1BSRUZJWCDliY3nvIBcbmV4cG9ydCBmdW5jdGlvbiBnZXRQcm9qZWN0TnMocHJvamVjdDogc3RyaW5nLCBjbHVzdGVyOiBzdHJpbmcpIHtcbiAgcmV0dXJuIGAke1xuICAgIGNsdXN0ZXIgPT09IEdMT0JBTF9DTFVTVEVSXG4gICAgICA/ICcnXG4gICAgICA6IGdldEdsb2JhbEVudmlyb25tZW50cygnSU5ORVJfUFJPSkVDVF9OU19QUkVGSVgnKSB8fCAnJ1xuICB9JHtwcm9qZWN0fWA7XG59XG5cbmZ1bmN0aW9uIHVuaXRDb21wZW5zYXRlKHVuaXQ6IFF1YW50aXR5VW5pdCk6IG51bWJlciB7XG4gIGlmIChLOFNfQklOQVJZX1VOSVRTLmluY2x1ZGVzKHVuaXQgYXMgKHR5cGVvZiBLOFNfQklOQVJZX1VOSVRTKVtudW1iZXJdKSkge1xuICAgIHJldHVybiAoXG4gICAgICAxMDI0ICoqXG4gICAgICAoSzhTX0JJTkFSWV9VTklUUy5pbmRleE9mKHVuaXQgYXMgKHR5cGVvZiBLOFNfQklOQVJZX1VOSVRTKVtudW1iZXJdKSArIDEpXG4gICAgKTtcbiAgfVxuICBpZiAoSzhTX0RFQ0lNQUxfVU5JVFMuaW5jbHVkZXModW5pdCBhcyAodHlwZW9mIEs4U19ERUNJTUFMX1VOSVRTKVtudW1iZXJdKSkge1xuICAgIHJldHVybiAoXG4gICAgICAxMDAwICoqXG4gICAgICAoSzhTX0RFQ0lNQUxfVU5JVFMuaW5kZXhPZih1bml0IGFzICh0eXBlb2YgSzhTX0RFQ0lNQUxfVU5JVFMpW251bWJlcl0pIC1cbiAgICAgICAgMSlcbiAgICApO1xuICB9XG4gIHRocm93IG5ldyBFcnJvcihgVW5rbm93biB1bml0ICR7dW5pdH1gKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWFudGl0eSB7XG4gIHZhbHVlOiBudW1iZXI7XG4gIHVuaXQ6IFF1YW50aXR5VW5pdDtcbn1cblxuZXhwb3J0IHR5cGUgUXVhbnRpdHlVbml0ID1cbiAgfCAodHlwZW9mIEs4U19CSU5BUllfVU5JVFMpW251bWJlcl1cbiAgfCAodHlwZW9mIEs4U19ERUNJTUFMX1VOSVRTKVtudW1iZXJdO1xuIl19
@@ -0,0 +1,2 @@
1
+ export const LOCAL_STORAGE_KEY_THEME_MODE = 'theme-mode';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS1jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS91dGlscy9sb2NhbC1zdG9yYWdlLWNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTE9DQUxfU1RPUkFHRV9LRVlfVEhFTUVfTU9ERSA9ICd0aGVtZS1tb2RlJztcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { IP_ADDRESS_PATTERN } from '../../core';
2
+ /**
3
+ * 从 underlord 节点 utils 中抽离出来,作为通用的内部IP、内部IPv6、hostname 获取方式
4
+ */
5
+ export function getPrivateIPv4(node) {
6
+ return (node?.status?.addresses?.find(({ type, address }) => type === 'InternalIP' && IP_ADDRESS_PATTERN.pattern.test(address))?.address || node?.metadata?.labels?.['platform.tkestack.io/machine-ip']);
7
+ }
8
+ export function getPrivateIPv6(node) {
9
+ return node?.status?.addresses?.find(({ type, address }) => type === 'InternalIP' && !IP_ADDRESS_PATTERN.pattern.test(address))?.address;
10
+ }
11
+ export function getPrivateIP(node) {
12
+ return getPrivateIPv4(node) || getPrivateIPv6(node);
13
+ }
14
+ export function getHostname(node) {
15
+ return node?.status?.addresses?.find(addr => addr.type === 'Hostname')
16
+ .address;
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jb3JlL3V0aWxzL25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFRLE1BQU0sWUFBWSxDQUFDO0FBRXREOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBQyxJQUFVO0lBQ3ZDLE9BQU8sQ0FDTCxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQzNCLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUNwQixJQUFJLEtBQUssWUFBWSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQ3BFLEVBQUUsT0FBTyxJQUFJLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsaUNBQWlDLENBQUMsQ0FDMUUsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLElBQVU7SUFDdkMsT0FBTyxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQ2xDLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUNwQixJQUFJLEtBQUssWUFBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FDckUsRUFBRSxPQUFPLENBQUM7QUFDYixDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FBQyxJQUFVO0lBQ3JDLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN0RCxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFVO0lBQ3BDLE9BQU8sSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUM7U0FDbkUsT0FBTyxDQUFDO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQX0FERFJFU1NfUEFUVEVSTiwgTm9kZSB9IGZyb20gJy4uLy4uL2NvcmUnO1xuXG4vKipcbiAqIOS7jiB1bmRlcmxvcmQg6IqC54K5IHV0aWxzIOS4reaKveemu+WHuuadpe+8jOS9nOS4uumAmueUqOeahOWGhemDqElQ44CB5YaF6YOoSVB2NuOAgWhvc3RuYW1lIOiOt+WPluaWueW8j1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHJpdmF0ZUlQdjQobm9kZTogTm9kZSkge1xuICByZXR1cm4gKFxuICAgIG5vZGU/LnN0YXR1cz8uYWRkcmVzc2VzPy5maW5kKFxuICAgICAgKHsgdHlwZSwgYWRkcmVzcyB9KSA9PlxuICAgICAgICB0eXBlID09PSAnSW50ZXJuYWxJUCcgJiYgSVBfQUREUkVTU19QQVRURVJOLnBhdHRlcm4udGVzdChhZGRyZXNzKSxcbiAgICApPy5hZGRyZXNzIHx8IG5vZGU/Lm1ldGFkYXRhPy5sYWJlbHM/LlsncGxhdGZvcm0udGtlc3RhY2suaW8vbWFjaGluZS1pcCddXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcml2YXRlSVB2Nihub2RlOiBOb2RlKSB7XG4gIHJldHVybiBub2RlPy5zdGF0dXM/LmFkZHJlc3Nlcz8uZmluZChcbiAgICAoeyB0eXBlLCBhZGRyZXNzIH0pID0+XG4gICAgICB0eXBlID09PSAnSW50ZXJuYWxJUCcgJiYgIUlQX0FERFJFU1NfUEFUVEVSTi5wYXR0ZXJuLnRlc3QoYWRkcmVzcyksXG4gICk/LmFkZHJlc3M7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcml2YXRlSVAobm9kZTogTm9kZSkge1xuICByZXR1cm4gZ2V0UHJpdmF0ZUlQdjQobm9kZSkgfHwgZ2V0UHJpdmF0ZUlQdjYobm9kZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRIb3N0bmFtZShub2RlOiBOb2RlKSB7XG4gIHJldHVybiBub2RlPy5zdGF0dXM/LmFkZHJlc3Nlcz8uZmluZChhZGRyID0+IGFkZHIudHlwZSA9PT0gJ0hvc3RuYW1lJylcbiAgICAuYWRkcmVzcztcbn1cbiJdfQ==
@@ -0,0 +1,23 @@
1
+ import { DestroyRef, assertInInjectionContext, inject } from '@angular/core';
2
+ import { isNumber } from 'lodash-es';
3
+ import { EMPTY, Observable, Subject, of, catchError, delay, startWith, switchMap, tap, } from 'rxjs';
4
+ import { publishRef } from './operators';
5
+ export const createPollObservable = (fetch$, pollIn) => {
6
+ const INIT_VALUE = 'Initialize';
7
+ const subject = new Subject();
8
+ const createDelayObservable = () => (isNumber(pollIn) ? of(pollIn) : pollIn).pipe(switchMap(pi => (pi === 0 ? EMPTY : of(null).pipe(delay(pi)))));
9
+ return subject.pipe(startWith(INIT_VALUE), switchMap(value => value === INIT_VALUE ? of(null) : createDelayObservable()), switchMap(() => fetch$.pipe(catchError((_) => of(null)))), tap(() => {
10
+ subject.next();
11
+ }), publishRef());
12
+ };
13
+ // https://github.com/angular/angular/blob/6fefbe8fca6e96549416a27c14e02957da1291e7/packages/core/rxjs-interop/src/take_until_destroyed.ts#L23
14
+ export function onDestroy(destroyRef) {
15
+ if (!destroyRef) {
16
+ assertInInjectionContext(onDestroy);
17
+ destroyRef = inject(DestroyRef);
18
+ }
19
+ return new Observable(observer => {
20
+ return destroyRef.onDestroy(observer.next.bind(observer));
21
+ });
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jb3JlL3V0aWxzL29ic2VydmFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEVBQ1AsRUFBRSxFQUNGLFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXpDLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQ2xDLE1BQTJCLEVBQzNCLE1BQW1DLEVBQ2QsRUFBRTtJQUN2QixNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUM7SUFDaEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUVwQyxNQUFNLHFCQUFxQixHQUFHLEdBQUcsRUFBRSxDQUNqQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQzNDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDL0QsQ0FBQztJQUVKLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FDakIsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUNyQixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDaEIsS0FBSyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsRUFBRSxDQUMxRCxFQUNELFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQVUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNsRSxHQUFHLENBQUMsR0FBRyxFQUFFO1FBQ1AsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pCLENBQUMsQ0FBQyxFQUNGLFVBQVUsRUFBRSxDQUNiLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRiw4SUFBOEk7QUFDOUksTUFBTSxVQUFVLFNBQVMsQ0FBQyxVQUF1QjtJQUMvQyxJQUFJLENBQUMsVUFBVSxFQUFFO1FBQ2Ysd0JBQXdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUNqQztJQUVELE9BQU8sSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDL0IsT0FBTyxVQUFVLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzdHJveVJlZiwgYXNzZXJ0SW5JbmplY3Rpb25Db250ZXh0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzTnVtYmVyIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7XG4gIEVNUFRZLFxuICBPYnNlcnZhYmxlLFxuICBTdWJqZWN0LFxuICBvZixcbiAgY2F0Y2hFcnJvcixcbiAgZGVsYXksXG4gIHN0YXJ0V2l0aCxcbiAgc3dpdGNoTWFwLFxuICB0YXAsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBwdWJsaXNoUmVmIH0gZnJvbSAnLi9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUG9sbE9ic2VydmFibGUgPSA8VFJlc3VsdD4oXG4gIGZldGNoJDogT2JzZXJ2YWJsZTxUUmVzdWx0PixcbiAgcG9sbEluOiBudW1iZXIgfCBPYnNlcnZhYmxlPG51bWJlcj4sXG4pOiBPYnNlcnZhYmxlPFRSZXN1bHQ+ID0+IHtcbiAgY29uc3QgSU5JVF9WQUxVRSA9ICdJbml0aWFsaXplJztcbiAgY29uc3Qgc3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3QgY3JlYXRlRGVsYXlPYnNlcnZhYmxlID0gKCkgPT5cbiAgICAoaXNOdW1iZXIocG9sbEluKSA/IG9mKHBvbGxJbikgOiBwb2xsSW4pLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAocGkgPT4gKHBpID09PSAwID8gRU1QVFkgOiBvZihudWxsKS5waXBlKGRlbGF5KHBpKSkpKSxcbiAgICApO1xuXG4gIHJldHVybiBzdWJqZWN0LnBpcGUoXG4gICAgc3RhcnRXaXRoKElOSVRfVkFMVUUpLFxuICAgIHN3aXRjaE1hcCh2YWx1ZSA9PlxuICAgICAgdmFsdWUgPT09IElOSVRfVkFMVUUgPyBvZihudWxsKSA6IGNyZWF0ZURlbGF5T2JzZXJ2YWJsZSgpLFxuICAgICksXG4gICAgc3dpdGNoTWFwKCgpID0+IGZldGNoJC5waXBlKGNhdGNoRXJyb3IoKF86IHVua25vd24pID0+IG9mKG51bGwpKSkpLFxuICAgIHRhcCgoKSA9PiB7XG4gICAgICBzdWJqZWN0Lm5leHQoKTtcbiAgICB9KSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG59O1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvNmZlZmJlOGZjYTZlOTY1NDk0MTZhMjdjMTRlMDI5NTdkYTEyOTFlNy9wYWNrYWdlcy9jb3JlL3J4anMtaW50ZXJvcC9zcmMvdGFrZV91bnRpbF9kZXN0cm95ZWQudHMjTDIzXG5leHBvcnQgZnVuY3Rpb24gb25EZXN0cm95KGRlc3Ryb3lSZWY/OiBEZXN0cm95UmVmKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gIGlmICghZGVzdHJveVJlZikge1xuICAgIGFzc2VydEluSW5qZWN0aW9uQ29udGV4dChvbkRlc3Ryb3kpO1xuICAgIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIH1cblxuICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgIHJldHVybiBkZXN0cm95UmVmLm9uRGVzdHJveShvYnNlcnZlci5uZXh0LmJpbmQob2JzZXJ2ZXIpKTtcbiAgfSk7XG59XG4iXX0=
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * @module utils
4
+ */
5
+ import { isDevMode } from '@angular/core';
6
+ import { EMPTY, Observable, ReplaySubject, catchError, filter, from, of, pipe, share, shareReplay, startWith, takeUntil, } from 'rxjs';
7
+ import { onDestroy } from './observable';
8
+ export const publishRef = (bufferSizeOrConfig = {}) => {
9
+ const { bufferSize = 1, windowTime, timestampProvider, connector = () => new ReplaySubject(bufferSize, windowTime, timestampProvider), resetOnError = false, resetOnComplete = false, resetOnRefCountZero = true, } = typeof bufferSizeOrConfig === 'number'
10
+ ? {
11
+ bufferSize: bufferSizeOrConfig,
12
+ }
13
+ : bufferSizeOrConfig;
14
+ return share({
15
+ connector,
16
+ resetOnError,
17
+ resetOnComplete,
18
+ resetOnRefCountZero,
19
+ });
20
+ };
21
+ export const shareUntil = (destroy$, bufferSize = 1, windowTime, scheduler) => pipe(takeUntil(destroy$), shareReplay(bufferSize, windowTime, scheduler));
22
+ export const skipError = (mapped = EMPTY, debug = false) => catchError(err => {
23
+ if (isDevMode() && debug) {
24
+ console.error(err);
25
+ }
26
+ return mapped instanceof Observable ? mapped : of(mapped);
27
+ });
28
+ export const catchPromise = (promise, mapped) => from(promise).pipe(skipError(mapped));
29
+ const NULL = Symbol('null');
30
+ export const startWithCondition = (condition, value) => (source) => source.pipe(startWith(condition ? value : NULL), filter(value => value !== NULL));
31
+ export const shareUntilDestroyed = (destroyRef, bufferSize, windowTime, scheduler) => shareUntil(onDestroy(destroyRef), bufferSize, windowTime, scheduler);
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdXRpbHMvb3BlcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBYyxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsYUFBYSxFQUdiLFVBQVUsRUFDVixNQUFNLEVBQ04sSUFBSSxFQUNKLEVBQUUsRUFDRixJQUFJLEVBQ0osS0FBSyxFQUNMLFdBQVcsRUFDWCxTQUFTLEVBQ1QsU0FBUyxHQUNWLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQVV6QyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBSSxxQkFBMEMsRUFBRSxFQUFFLEVBQUU7SUFDNUUsTUFBTSxFQUNKLFVBQVUsR0FBRyxDQUFDLEVBQ2QsVUFBVSxFQUNWLGlCQUFpQixFQUNqQixTQUFTLEdBQUcsR0FBRyxFQUFFLENBQ2YsSUFBSSxhQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxFQUM5RCxZQUFZLEdBQUcsS0FBSyxFQUNwQixlQUFlLEdBQUcsS0FBSyxFQUN2QixtQkFBbUIsR0FBRyxJQUFJLEdBQzNCLEdBQUcsT0FBTyxrQkFBa0IsS0FBSyxRQUFRO1FBQ3hDLENBQUMsQ0FBRTtZQUNDLFVBQVUsRUFBRSxrQkFBa0I7U0FDVTtRQUM1QyxDQUFDLENBQUMsa0JBQWtCLENBQUM7SUFDdkIsT0FBTyxLQUFLLENBQUk7UUFDZCxTQUFTO1FBQ1QsWUFBWTtRQUNaLGVBQWU7UUFDZixtQkFBbUI7S0FDcEIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQ3hCLFFBQTZCLEVBQzdCLFVBQVUsR0FBRyxDQUFDLEVBQ2QsVUFBbUIsRUFDbkIsU0FBeUIsRUFDekIsRUFBRSxDQUNGLElBQUksQ0FBQyxTQUFTLENBQUksUUFBUSxDQUFDLEVBQUUsV0FBVyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztBQUUvRSxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FDdkIsU0FBNEIsS0FBSyxFQUNqQyxLQUFLLEdBQUcsS0FBSyxFQUNiLEVBQUUsQ0FDRixVQUFVLENBQW1CLEdBQUcsQ0FBQyxFQUFFO0lBQ2pDLElBQUksU0FBUyxFQUFFLElBQUksS0FBSyxFQUFFO1FBQ3hCLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDcEI7SUFDRCxPQUFPLE1BQU0sWUFBWSxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQzVELENBQUMsQ0FBQyxDQUFDO0FBRUwsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQzFCLE9BQW1CLEVBQ25CLE1BQTBCLEVBQzFCLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBRTNDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUU1QixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FDN0IsQ0FBSSxTQUFrQixFQUFFLEtBQVEsRUFBRSxFQUFFLENBQ3BDLENBQUMsTUFBcUIsRUFBRSxFQUFFLENBQ3hCLE1BQU0sQ0FBQyxJQUFJLENBQ1QsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDbkMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxDQUNoQyxDQUFDO0FBRU4sTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FDakMsVUFBdUIsRUFDdkIsVUFBbUIsRUFDbkIsVUFBbUIsRUFDbkIsU0FBeUIsRUFDekIsRUFBRSxDQUFDLFVBQVUsQ0FBSSxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIHV0aWxzXG4gKi9cblxuaW1wb3J0IHsgRGVzdHJveVJlZiwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBFTVBUWSxcbiAgT2JzZXJ2YWJsZSxcbiAgUmVwbGF5U3ViamVjdCxcbiAgU2NoZWR1bGVyTGlrZSxcbiAgVGltZXN0YW1wUHJvdmlkZXIsXG4gIGNhdGNoRXJyb3IsXG4gIGZpbHRlcixcbiAgZnJvbSxcbiAgb2YsXG4gIHBpcGUsXG4gIHNoYXJlLFxuICBzaGFyZVJlcGxheSxcbiAgc3RhcnRXaXRoLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBvbkRlc3Ryb3kgfSBmcm9tICcuL29ic2VydmFibGUnO1xuXG5leHBvcnQgdHlwZSBQdWJsaXNoUmVmQ29uZmlnPFQ+ID1cbiAgfCBudW1iZXJcbiAgfCAoaW1wb3J0KCdyeGpzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZScpLlNoYXJlQ29uZmlnPFQ+ICYge1xuICAgICAgYnVmZmVyU2l6ZT86IG51bWJlcjtcbiAgICAgIHdpbmRvd1RpbWU/OiBudW1iZXI7XG4gICAgICB0aW1lc3RhbXBQcm92aWRlcj86IFRpbWVzdGFtcFByb3ZpZGVyO1xuICAgIH0pO1xuXG5leHBvcnQgY29uc3QgcHVibGlzaFJlZiA9IDxUPihidWZmZXJTaXplT3JDb25maWc6IFB1Ymxpc2hSZWZDb25maWc8VD4gPSB7fSkgPT4ge1xuICBjb25zdCB7XG4gICAgYnVmZmVyU2l6ZSA9IDEsXG4gICAgd2luZG93VGltZSxcbiAgICB0aW1lc3RhbXBQcm92aWRlcixcbiAgICBjb25uZWN0b3IgPSAoKSA9PlxuICAgICAgbmV3IFJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgdGltZXN0YW1wUHJvdmlkZXIpLFxuICAgIHJlc2V0T25FcnJvciA9IGZhbHNlLFxuICAgIHJlc2V0T25Db21wbGV0ZSA9IGZhbHNlLFxuICAgIHJlc2V0T25SZWZDb3VudFplcm8gPSB0cnVlLFxuICB9ID0gdHlwZW9mIGJ1ZmZlclNpemVPckNvbmZpZyA9PT0gJ251bWJlcidcbiAgICA/ICh7XG4gICAgICAgIGJ1ZmZlclNpemU6IGJ1ZmZlclNpemVPckNvbmZpZyxcbiAgICAgIH0gYXMgRXhjbHVkZTxQdWJsaXNoUmVmQ29uZmlnPFQ+LCBudW1iZXI+KVxuICAgIDogYnVmZmVyU2l6ZU9yQ29uZmlnO1xuICByZXR1cm4gc2hhcmU8VD4oe1xuICAgIGNvbm5lY3RvcixcbiAgICByZXNldE9uRXJyb3IsXG4gICAgcmVzZXRPbkNvbXBsZXRlLFxuICAgIHJlc2V0T25SZWZDb3VudFplcm8sXG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHNoYXJlVW50aWwgPSA8VD4oXG4gIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHVua25vd24+LFxuICBidWZmZXJTaXplID0gMSxcbiAgd2luZG93VGltZT86IG51bWJlcixcbiAgc2NoZWR1bGVyPzogU2NoZWR1bGVyTGlrZSxcbikgPT5cbiAgcGlwZSh0YWtlVW50aWw8VD4oZGVzdHJveSQpLCBzaGFyZVJlcGxheShidWZmZXJTaXplLCB3aW5kb3dUaW1lLCBzY2hlZHVsZXIpKTtcblxuZXhwb3J0IGNvbnN0IHNraXBFcnJvciA9IDxULCBSID0gbmV2ZXI+KFxuICBtYXBwZWQ6IFIgfCBPYnNlcnZhYmxlPFI+ID0gRU1QVFksXG4gIGRlYnVnID0gZmFsc2UsXG4pID0+XG4gIGNhdGNoRXJyb3I8VCwgT2JzZXJ2YWJsZTxSPj4oZXJyID0+IHtcbiAgICBpZiAoaXNEZXZNb2RlKCkgJiYgZGVidWcpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICB9XG4gICAgcmV0dXJuIG1hcHBlZCBpbnN0YW5jZW9mIE9ic2VydmFibGUgPyBtYXBwZWQgOiBvZihtYXBwZWQpO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IGNhdGNoUHJvbWlzZSA9IDxULCBSID0gbmV2ZXI+KFxuICBwcm9taXNlOiBQcm9taXNlPFQ+LFxuICBtYXBwZWQ/OiBSIHwgT2JzZXJ2YWJsZTxSPixcbikgPT4gZnJvbShwcm9taXNlKS5waXBlKHNraXBFcnJvcihtYXBwZWQpKTtcblxuY29uc3QgTlVMTCA9IFN5bWJvbCgnbnVsbCcpO1xuXG5leHBvcnQgY29uc3Qgc3RhcnRXaXRoQ29uZGl0aW9uID1cbiAgPFQ+KGNvbmRpdGlvbjogYm9vbGVhbiwgdmFsdWU6IFQpID0+XG4gIChzb3VyY2U6IE9ic2VydmFibGU8VD4pID0+XG4gICAgc291cmNlLnBpcGUoXG4gICAgICBzdGFydFdpdGgoY29uZGl0aW9uID8gdmFsdWUgOiBOVUxMKSxcbiAgICAgIGZpbHRlcih2YWx1ZSA9PiB2YWx1ZSAhPT0gTlVMTCksXG4gICAgKTtcblxuZXhwb3J0IGNvbnN0IHNoYXJlVW50aWxEZXN0cm95ZWQgPSA8VD4oXG4gIGRlc3Ryb3lSZWY/OiBEZXN0cm95UmVmLFxuICBidWZmZXJTaXplPzogbnVtYmVyLFxuICB3aW5kb3dUaW1lPzogbnVtYmVyLFxuICBzY2hlZHVsZXI/OiBTY2hlZHVsZXJMaWtlLFxuKSA9PiBzaGFyZVVudGlsPFQ+KG9uRGVzdHJveShkZXN0cm95UmVmKSwgYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKTtcbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { finalize, Observable } from 'rxjs';
2
+ export class RequestPool {
3
+ constructor({ maxParallel = 3 }) {
4
+ this.runnerQueue = [];
5
+ this.runningCount = 0;
6
+ this.maxParallel = maxParallel;
7
+ }
8
+ queue(request) {
9
+ return new Observable(observer => {
10
+ let subscription;
11
+ const runner = () => {
12
+ subscription = request
13
+ .pipe(finalize(() => {
14
+ this.runningCount--;
15
+ this.flushQueue();
16
+ }))
17
+ .subscribe(observer);
18
+ };
19
+ this.runnerQueue.push(runner);
20
+ this.flushQueue();
21
+ return () => {
22
+ subscription?.unsubscribe();
23
+ };
24
+ });
25
+ }
26
+ flushQueue() {
27
+ if (this.runningCount < this.maxParallel && this.runnerQueue.length > 0) {
28
+ this.runningCount++;
29
+ const run = this.runnerQueue.shift();
30
+ run();
31
+ }
32
+ }
33
+ }
34
+ export function maxParallelByHttpVersion(http_2 = 30, http_1 = 3) {
35
+ return location.protocol === 'https:' ? http_2 : http_1;
36
+ }
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1wb29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdXRpbHMvcmVxdWVzdC1wb29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUUxRCxNQUFNLE9BQU8sV0FBVztJQUt0QixZQUFZLEVBQUUsV0FBVyxHQUFHLENBQUMsRUFBMkI7UUFIdkMsZ0JBQVcsR0FBc0IsRUFBRSxDQUFDO1FBQzdDLGlCQUFZLEdBQUcsQ0FBQyxDQUFDO1FBR3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxLQUFLLENBQUksT0FBc0I7UUFDN0IsT0FBTyxJQUFJLFVBQVUsQ0FBSSxRQUFRLENBQUMsRUFBRTtZQUNsQyxJQUFJLFlBQTBCLENBQUM7WUFFL0IsTUFBTSxNQUFNLEdBQUcsR0FBRyxFQUFFO2dCQUNsQixZQUFZLEdBQUcsT0FBTztxQkFDbkIsSUFBSSxDQUNILFFBQVEsQ0FBQyxHQUFHLEVBQUU7b0JBQ1osSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUNwQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3BCLENBQUMsQ0FBQyxDQUNIO3FCQUNBLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6QixDQUFDLENBQUM7WUFFRixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM5QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFFbEIsT0FBTyxHQUFHLEVBQUU7Z0JBQ1YsWUFBWSxFQUFFLFdBQVcsRUFBRSxDQUFDO1lBQzlCLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLFVBQVU7UUFDaEIsSUFBSSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3JDLEdBQUcsRUFBRSxDQUFDO1NBQ1A7SUFDSCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsTUFBTSxHQUFHLEVBQUUsRUFBRSxNQUFNLEdBQUcsQ0FBQztJQUM5RCxPQUFPLFFBQVEsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztBQUMxRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmluYWxpemUsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY2xhc3MgUmVxdWVzdFBvb2wge1xuICBwcml2YXRlIHJlYWRvbmx5IG1heFBhcmFsbGVsOiBudW1iZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgcnVubmVyUXVldWU6IEFycmF5PCgpID0+IHZvaWQ+ID0gW107XG4gIHByaXZhdGUgcnVubmluZ0NvdW50ID0gMDtcblxuICBjb25zdHJ1Y3Rvcih7IG1heFBhcmFsbGVsID0gMyB9OiB7IG1heFBhcmFsbGVsOiBudW1iZXIgfSkge1xuICAgIHRoaXMubWF4UGFyYWxsZWwgPSBtYXhQYXJhbGxlbDtcbiAgfVxuXG4gIHF1ZXVlPFQ+KHJlcXVlc3Q6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8VD4ob2JzZXJ2ZXIgPT4ge1xuICAgICAgbGV0IHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgICBjb25zdCBydW5uZXIgPSAoKSA9PiB7XG4gICAgICAgIHN1YnNjcmlwdGlvbiA9IHJlcXVlc3RcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5ydW5uaW5nQ291bnQtLTtcbiAgICAgICAgICAgICAgdGhpcy5mbHVzaFF1ZXVlKCk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZShvYnNlcnZlcik7XG4gICAgICB9O1xuXG4gICAgICB0aGlzLnJ1bm5lclF1ZXVlLnB1c2gocnVubmVyKTtcbiAgICAgIHRoaXMuZmx1c2hRdWV1ZSgpO1xuXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBzdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBmbHVzaFF1ZXVlKCkge1xuICAgIGlmICh0aGlzLnJ1bm5pbmdDb3VudCA8IHRoaXMubWF4UGFyYWxsZWwgJiYgdGhpcy5ydW5uZXJRdWV1ZS5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnJ1bm5pbmdDb3VudCsrO1xuICAgICAgY29uc3QgcnVuID0gdGhpcy5ydW5uZXJRdWV1ZS5zaGlmdCgpO1xuICAgICAgcnVuKCk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXhQYXJhbGxlbEJ5SHR0cFZlcnNpb24oaHR0cF8yID0gMzAsIGh0dHBfMSA9IDMpIHtcbiAgcmV0dXJuIGxvY2F0aW9uLnByb3RvY29sID09PSAnaHR0cHM6JyA/IGh0dHBfMiA6IGh0dHBfMTtcbn1cbiJdfQ==