@alauda-fe/dynamic-plugin-shared 0.0.1-alpha.8 → 0.0.3-alpha.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 (395) hide show
  1. package/assets/i18n/en/dynamic-plugin-shared.json +3 -0
  2. package/assets/images/overview-banner.svg +1 -0
  3. package/fesm2022/alauda-fe-dynamic-plugin-shared.mjs +3038 -1828
  4. package/fesm2022/alauda-fe-dynamic-plugin-shared.mjs.map +1 -1
  5. package/package.json +15 -17
  6. package/styles/lib.scss +1 -1
  7. package/styles/mixins.scss +1 -210
  8. package/styles/var.scss +1 -26
  9. package/types/alauda-fe-dynamic-plugin-shared.d.ts +5692 -0
  10. package/array-form-table/base-string-map-form.component.d.ts +0 -22
  11. package/array-form-table/form/component.d.ts +0 -106
  12. package/array-form-table/form/index.d.ts +0 -3
  13. package/array-form-table/index.d.ts +0 -10
  14. package/array-form-table/key-value-form/component.d.ts +0 -38
  15. package/array-form-table/key-value-table/component.d.ts +0 -9
  16. package/array-form-table/string-array-form/component.d.ts +0 -41
  17. package/async-data/async-data-loader.d.ts +0 -31
  18. package/async-data/error-page/component.d.ts +0 -30
  19. package/async-data/index.d.ts +0 -13
  20. package/async-data/page-state/component.d.ts +0 -21
  21. package/async-data/types.d.ts +0 -29
  22. package/code-editor/code-display-dialog/component.d.ts +0 -17
  23. package/code-editor/code-editor-configs.d.ts +0 -19
  24. package/code-editor/index.d.ts +0 -10
  25. package/code-editor/k8s-yaml-display-dialog/component.d.ts +0 -16
  26. package/code-editor/resource-yaml-display/component.d.ts +0 -21
  27. package/components/card-section/card-section.component.d.ts +0 -9
  28. package/components/confirm-delete/confirm-delete.component.d.ts +0 -57
  29. package/components/confirm-delete/utils.d.ts +0 -25
  30. package/components/current-time/component.d.ts +0 -14
  31. package/components/custom-columns-setting/component.d.ts +0 -16
  32. package/components/custom-columns-setting/index.d.ts +0 -1
  33. package/components/date-range-picker/component.d.ts +0 -55
  34. package/components/date-range-picker/index.d.ts +0 -3
  35. package/components/date-range-picker/type.d.ts +0 -36
  36. package/components/date-range-picker/util.d.ts +0 -11
  37. package/components/disabled-container/disabled-container.component.d.ts +0 -21
  38. package/components/disabled-container/index.d.ts +0 -7
  39. package/components/field-set/column/component.d.ts +0 -10
  40. package/components/field-set/group/component.d.ts +0 -6
  41. package/components/field-set/index.d.ts +0 -7
  42. package/components/field-set/item/component.d.ts +0 -13
  43. package/components/foldable-block/component.d.ts +0 -17
  44. package/components/foldable-item-in-table/component.d.ts +0 -21
  45. package/components/help-document/component.d.ts +0 -29
  46. package/components/help-document/directive.d.ts +0 -20
  47. package/components/help-document/index.d.ts +0 -8
  48. package/components/help-document/service.d.ts +0 -20
  49. package/components/index.d.ts +0 -32
  50. package/components/loading-mask/loading-mask.component.d.ts +0 -13
  51. package/components/page-guard/component/component.d.ts +0 -40
  52. package/components/page-guard/component/helper-directives.d.ts +0 -17
  53. package/components/page-guard/component/page-guard.type.d.ts +0 -86
  54. package/components/page-guard/index.d.ts +0 -12
  55. package/components/password-input/component.d.ts +0 -39
  56. package/components/pod-status/component.d.ts +0 -25
  57. package/components/pod-status/index.d.ts +0 -3
  58. package/components/pod-status/status.d.ts +0 -4
  59. package/components/pod-status/typings.d.ts +0 -16
  60. package/components/relative-time/component.d.ts +0 -15
  61. package/components/resource-label/component.d.ts +0 -25
  62. package/components/resource-multi-select/component.d.ts +0 -41
  63. package/components/resource-multi-select/util.d.ts +0 -10
  64. package/components/search-panel/component.d.ts +0 -16
  65. package/components/search-panel/helper.directive.d.ts +0 -5
  66. package/components/search-panel/search-item/component.d.ts +0 -7
  67. package/components/select-prefix-label/directive.d.ts +0 -17
  68. package/components/status-icon/status-icon.component.d.ts +0 -16
  69. package/components/tags-label/component.d.ts +0 -56
  70. package/components/terminating-tag/component.d.ts +0 -7
  71. package/components/text-ellipsis/component.d.ts +0 -9
  72. package/components/text-tooltip/directive.d.ts +0 -21
  73. package/components/text-with-url/component.d.ts +0 -12
  74. package/components/upload-file/component.d.ts +0 -32
  75. package/components/workload-status/component.d.ts +0 -37
  76. package/components/workload-status/index.d.ts +0 -1
  77. package/components/zero-state/zero-state.component.d.ts +0 -17
  78. package/constants/common.d.ts +0 -64
  79. package/constants/index.d.ts +0 -6
  80. package/constants/k8s.d.ts +0 -12
  81. package/constants/patterns.d.ts +0 -124
  82. package/constants/resource-definitions.d.ts +0 -414
  83. package/constants/status-icons.d.ts +0 -34
  84. package/constants/timezones.d.ts +0 -6
  85. package/directives/aui-code-editor.directive.d.ts +0 -13
  86. package/directives/click-outside.directive.d.ts +0 -12
  87. package/directives/declare.directive.d.ts +0 -8
  88. package/directives/disabled.directive.d.ts +0 -28
  89. package/directives/effect-directive/coerce-number.directive.d.ts +0 -8
  90. package/directives/effect-directive/e2e-attribute-binding.directive.d.ts +0 -10
  91. package/directives/effect-directive/event.directive.d.ts +0 -47
  92. package/directives/effect-directive/index.d.ts +0 -12
  93. package/directives/effect-directive/min-max.directive.d.ts +0 -30
  94. package/directives/effect-directive/trim.directive.d.ts +0 -7
  95. package/directives/effect-directive/validators.directive.d.ts +0 -12
  96. package/directives/feature-gate.directive.d.ts +0 -31
  97. package/directives/index.d.ts +0 -12
  98. package/directives/last-form-item.directive.d.ts +0 -8
  99. package/directives/readonly-field.directive.d.ts +0 -39
  100. package/directives/resize.directive.d.ts +0 -17
  101. package/directives/scroll-border-observer.directive.d.ts +0 -23
  102. package/directives/scroll-to-first-invalid.directive.d.ts +0 -24
  103. package/directives/value-trace.directive.d.ts +0 -27
  104. package/esm2022/alauda-fe-dynamic-plugin-shared.mjs +0 -5
  105. package/esm2022/array-form-table/base-string-map-form.component.mjs +0 -92
  106. package/esm2022/array-form-table/form/component.mjs +0 -266
  107. package/esm2022/array-form-table/form/index.mjs +0 -13
  108. package/esm2022/array-form-table/index.mjs +0 -11
  109. package/esm2022/array-form-table/key-value-form/component.mjs +0 -135
  110. package/esm2022/array-form-table/key-value-table/component.mjs +0 -24
  111. package/esm2022/array-form-table/string-array-form/component.mjs +0 -168
  112. package/esm2022/async-data/async-data-loader.mjs +0 -63
  113. package/esm2022/async-data/error-page/component.mjs +0 -54
  114. package/esm2022/async-data/index.mjs +0 -18
  115. package/esm2022/async-data/page-state/component.mjs +0 -62
  116. package/esm2022/async-data/types.mjs +0 -6
  117. package/esm2022/code-editor/code-display-dialog/component.mjs +0 -35
  118. package/esm2022/code-editor/code-editor-configs.mjs +0 -66
  119. package/esm2022/code-editor/index.mjs +0 -11
  120. package/esm2022/code-editor/k8s-yaml-display-dialog/component.mjs +0 -26
  121. package/esm2022/code-editor/resource-yaml-display/component.mjs +0 -67
  122. package/esm2022/components/card-section/card-section.component.mjs +0 -24
  123. package/esm2022/components/confirm-delete/confirm-delete.component.mjs +0 -192
  124. package/esm2022/components/confirm-delete/utils.mjs +0 -8
  125. package/esm2022/components/current-time/component.mjs +0 -39
  126. package/esm2022/components/custom-columns-setting/component.mjs +0 -75
  127. package/esm2022/components/custom-columns-setting/index.mjs +0 -2
  128. package/esm2022/components/date-range-picker/component.mjs +0 -215
  129. package/esm2022/components/date-range-picker/index.mjs +0 -4
  130. package/esm2022/components/date-range-picker/type.mjs +0 -2
  131. package/esm2022/components/date-range-picker/util.mjs +0 -57
  132. package/esm2022/components/disabled-container/disabled-container.component.mjs +0 -81
  133. package/esm2022/components/disabled-container/index.mjs +0 -8
  134. package/esm2022/components/field-set/column/component.mjs +0 -25
  135. package/esm2022/components/field-set/group/component.mjs +0 -16
  136. package/esm2022/components/field-set/index.mjs +0 -14
  137. package/esm2022/components/field-set/item/component.mjs +0 -41
  138. package/esm2022/components/foldable-block/component.mjs +0 -60
  139. package/esm2022/components/foldable-item-in-table/component.mjs +0 -56
  140. package/esm2022/components/help-document/component.mjs +0 -69
  141. package/esm2022/components/help-document/directive.mjs +0 -70
  142. package/esm2022/components/help-document/index.mjs +0 -9
  143. package/esm2022/components/help-document/service.mjs +0 -43
  144. package/esm2022/components/index.mjs +0 -33
  145. package/esm2022/components/loading-mask/loading-mask.component.mjs +0 -35
  146. package/esm2022/components/page-guard/component/component.mjs +0 -101
  147. package/esm2022/components/page-guard/component/helper-directives.mjs +0 -51
  148. package/esm2022/components/page-guard/component/page-guard.type.mjs +0 -82
  149. package/esm2022/components/page-guard/index.mjs +0 -19
  150. package/esm2022/components/password-input/component.mjs +0 -143
  151. package/esm2022/components/pod-status/component.mjs +0 -49
  152. package/esm2022/components/pod-status/index.mjs +0 -4
  153. package/esm2022/components/pod-status/status.mjs +0 -84
  154. package/esm2022/components/pod-status/typings.mjs +0 -19
  155. package/esm2022/components/relative-time/component.mjs +0 -58
  156. package/esm2022/components/resource-label/component.mjs +0 -100
  157. package/esm2022/components/resource-multi-select/component.mjs +0 -152
  158. package/esm2022/components/resource-multi-select/util.mjs +0 -24
  159. package/esm2022/components/search-panel/component.mjs +0 -51
  160. package/esm2022/components/search-panel/helper.directive.mjs +0 -14
  161. package/esm2022/components/search-panel/search-item/component.mjs +0 -15
  162. package/esm2022/components/select-prefix-label/directive.mjs +0 -89
  163. package/esm2022/components/status-icon/status-icon.component.mjs +0 -56
  164. package/esm2022/components/tags-label/component.mjs +0 -224
  165. package/esm2022/components/terminating-tag/component.mjs +0 -16
  166. package/esm2022/components/text-ellipsis/component.mjs +0 -28
  167. package/esm2022/components/text-tooltip/directive.mjs +0 -71
  168. package/esm2022/components/text-with-url/component.mjs +0 -40
  169. package/esm2022/components/upload-file/component.mjs +0 -95
  170. package/esm2022/components/workload-status/component.mjs +0 -33
  171. package/esm2022/components/workload-status/index.mjs +0 -2
  172. package/esm2022/components/zero-state/zero-state.component.mjs +0 -56
  173. package/esm2022/constants/common.mjs +0 -86
  174. package/esm2022/constants/index.mjs +0 -7
  175. package/esm2022/constants/k8s.mjs +0 -13
  176. package/esm2022/constants/patterns.mjs +0 -142
  177. package/esm2022/constants/resource-definitions.mjs +0 -424
  178. package/esm2022/constants/status-icons.mjs +0 -65
  179. package/esm2022/constants/timezones.mjs +0 -234
  180. package/esm2022/directives/aui-code-editor.directive.mjs +0 -30
  181. package/esm2022/directives/click-outside.directive.mjs +0 -49
  182. package/esm2022/directives/declare.directive.mjs +0 -27
  183. package/esm2022/directives/disabled.directive.mjs +0 -76
  184. package/esm2022/directives/effect-directive/coerce-number.directive.mjs +0 -54
  185. package/esm2022/directives/effect-directive/e2e-attribute-binding.directive.mjs +0 -57
  186. package/esm2022/directives/effect-directive/event.directive.mjs +0 -129
  187. package/esm2022/directives/effect-directive/index.mjs +0 -21
  188. package/esm2022/directives/effect-directive/min-max.directive.mjs +0 -107
  189. package/esm2022/directives/effect-directive/trim.directive.mjs +0 -40
  190. package/esm2022/directives/effect-directive/validators.directive.mjs +0 -43
  191. package/esm2022/directives/feature-gate.directive.mjs +0 -90
  192. package/esm2022/directives/index.mjs +0 -13
  193. package/esm2022/directives/last-form-item.directive.mjs +0 -18
  194. package/esm2022/directives/readonly-field.directive.mjs +0 -145
  195. package/esm2022/directives/resize.directive.mjs +0 -39
  196. package/esm2022/directives/scroll-border-observer.directive.mjs +0 -77
  197. package/esm2022/directives/scroll-to-first-invalid.directive.mjs +0 -126
  198. package/esm2022/directives/value-trace.directive.mjs +0 -61
  199. package/esm2022/form/base-form-container.mjs +0 -126
  200. package/esm2022/form/base-nested-form-control.mjs +0 -190
  201. package/esm2022/form/errors-mapper/base-errors-mapper.mjs +0 -41
  202. package/esm2022/form/errors-mapper/default-errors-mapper.service.mjs +0 -65
  203. package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +0 -53
  204. package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +0 -109
  205. package/esm2022/form/errors-mapper/index.mjs +0 -10
  206. package/esm2022/form/errors-mapper/types.mjs +0 -2
  207. package/esm2022/form/index.mjs +0 -6
  208. package/esm2022/form/utils.mjs +0 -61
  209. package/esm2022/form/validators/async-function-validator.directive.mjs +0 -49
  210. package/esm2022/form/validators/dns1123-subdomain.mjs +0 -42
  211. package/esm2022/form/validators/function-validator.directive.mjs +0 -49
  212. package/esm2022/form/validators/index.mjs +0 -10
  213. package/esm2022/form/validators/maxlength-minlength-validator.directive.mjs +0 -71
  214. package/esm2022/form/validators/not-be-validator.directive.mjs +0 -56
  215. package/esm2022/form/validators/one-of-validator.directive.mjs +0 -57
  216. package/esm2022/form/validators/resource-limit.mjs +0 -79
  217. package/esm2022/form/validators/strong-password/index.mjs +0 -4
  218. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +0 -15
  219. package/esm2022/form/validators/strong-password/strong-password-validator.directive.mjs +0 -171
  220. package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +0 -36
  221. package/esm2022/form/validators/utils.mjs +0 -155
  222. package/esm2022/index.mjs +0 -15
  223. package/esm2022/k8s-resource-list/footer/component.mjs +0 -161
  224. package/esm2022/k8s-resource-list/index.mjs +0 -18
  225. package/esm2022/k8s-resource-list/k8s-resource-list.mjs +0 -224
  226. package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +0 -174
  227. package/esm2022/k8s-resource-list/types.mjs +0 -11
  228. package/esm2022/k8s-resource-list/utils.mjs +0 -84
  229. package/esm2022/k8s-shared/constants.mjs +0 -53
  230. package/esm2022/k8s-shared/index.mjs +0 -12
  231. package/esm2022/k8s-shared/k8s-resource-translate-key.pipe.mjs +0 -31
  232. package/esm2022/k8s-shared/k8s-shared-util.service.mjs +0 -152
  233. package/esm2022/k8s-shared/resource-mark/component.mjs +0 -54
  234. package/esm2022/k8s-shared/resource-mark/util.mjs +0 -137
  235. package/esm2022/k8s-shared/update-description-dialog/component.mjs +0 -66
  236. package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +0 -59
  237. package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +0 -76
  238. package/esm2022/page-deactivate/deactivate.directive.mjs +0 -50
  239. package/esm2022/page-deactivate/deactivate.guard.mjs +0 -41
  240. package/esm2022/page-deactivate/deactivate.service.mjs +0 -78
  241. package/esm2022/page-deactivate/index.mjs +0 -4
  242. package/esm2022/pipes/calc.pipe.mjs +0 -21
  243. package/esm2022/pipes/cron-human-readable.pipe.mjs +0 -30
  244. package/esm2022/pipes/crontab-next.pipe.mjs +0 -67
  245. package/esm2022/pipes/duration.pipe.mjs +0 -51
  246. package/esm2022/pipes/field-not-available.pipe.mjs +0 -25
  247. package/esm2022/pipes/img-header.pipe.mjs +0 -18
  248. package/esm2022/pipes/img-theme.pipe.mjs +0 -38
  249. package/esm2022/pipes/index.mjs +0 -19
  250. package/esm2022/pipes/keyvalue.pipe.mjs +0 -20
  251. package/esm2022/pipes/marked.pipe.mjs +0 -18
  252. package/esm2022/pipes/minimum-format.pipe.mjs +0 -25
  253. package/esm2022/pipes/page-env.pipe.mjs +0 -69
  254. package/esm2022/pipes/parse-json-translate.pipe.mjs +0 -28
  255. package/esm2022/pipes/parse-json.pipe.mjs +0 -22
  256. package/esm2022/pipes/pure.pipe.mjs +0 -26
  257. package/esm2022/pipes/safe.pipe.mjs +0 -49
  258. package/esm2022/pipes/sanitize.pipe.mjs +0 -31
  259. package/esm2022/pipes/time.pipe.mjs +0 -113
  260. package/esm2022/pipes/timezone-display.pipe.mjs +0 -21
  261. package/esm2022/services/form-row-duplicate/form-row-duplicate.service.mjs +0 -280
  262. package/esm2022/services/index.mjs +0 -4
  263. package/esm2022/services/on-resize.service.mjs +0 -52
  264. package/esm2022/services/yaml-util.service.mjs +0 -99
  265. package/esm2022/types/common.mjs +0 -6
  266. package/esm2022/types/helpers.mjs +0 -12
  267. package/esm2022/types/index.mjs +0 -9
  268. package/esm2022/types/k8s/core.mjs +0 -2
  269. package/esm2022/types/k8s/crd.mjs +0 -57
  270. package/esm2022/types/k8s/index.mjs +0 -4
  271. package/esm2022/types/k8s/raw.mjs +0 -77
  272. package/esm2022/types/schema.mjs +0 -2
  273. package/esm2022/utils/browser.mjs +0 -21
  274. package/esm2022/utils/cache-store.mjs +0 -83
  275. package/esm2022/utils/color-helpers.mjs +0 -6
  276. package/esm2022/utils/common.mjs +0 -315
  277. package/esm2022/utils/cron-util.mjs +0 -44
  278. package/esm2022/utils/decorators.mjs +0 -137
  279. package/esm2022/utils/disabled-state.mjs +0 -47
  280. package/esm2022/utils/format-number.mjs +0 -227
  281. package/esm2022/utils/index.mjs +0 -24
  282. package/esm2022/utils/local-storage-constants.mjs +0 -2
  283. package/esm2022/utils/node.mjs +0 -18
  284. package/esm2022/utils/observable.mjs +0 -32
  285. package/esm2022/utils/operators.mjs +0 -38
  286. package/esm2022/utils/request-pool.mjs +0 -37
  287. package/esm2022/utils/resources.mjs +0 -66
  288. package/esm2022/utils/router.mjs +0 -20
  289. package/esm2022/utils/sort-fn.mjs +0 -7
  290. package/esm2022/utils/tree.mjs +0 -79
  291. package/esm2022/utils/unit.mjs +0 -191
  292. package/esm2022/utils/version.mjs +0 -76
  293. package/esm2022/utils/with-load-state.mjs +0 -21
  294. package/esm2022/utils/workload.mjs +0 -183
  295. package/esm2022/utils/workspace.mjs +0 -59
  296. package/esm2022/utils/yaml.mjs +0 -54
  297. package/form/base-form-container.d.ts +0 -41
  298. package/form/base-nested-form-control.d.ts +0 -58
  299. package/form/errors-mapper/base-errors-mapper.d.ts +0 -13
  300. package/form/errors-mapper/default-errors-mapper.service.d.ts +0 -10
  301. package/form/errors-mapper/errors-mapper-component/component.d.ts +0 -19
  302. package/form/errors-mapper/errors-mapper.directive.d.ts +0 -39
  303. package/form/errors-mapper/index.d.ts +0 -6
  304. package/form/errors-mapper/types.d.ts +0 -16
  305. package/form/index.d.ts +0 -5
  306. package/form/utils.d.ts +0 -40
  307. package/form/validators/async-function-validator.directive.d.ts +0 -11
  308. package/form/validators/dns1123-subdomain.d.ts +0 -28
  309. package/form/validators/function-validator.directive.d.ts +0 -11
  310. package/form/validators/index.d.ts +0 -9
  311. package/form/validators/maxlength-minlength-validator.directive.d.ts +0 -20
  312. package/form/validators/not-be-validator.directive.d.ts +0 -12
  313. package/form/validators/one-of-validator.directive.d.ts +0 -12
  314. package/form/validators/resource-limit.d.ts +0 -17
  315. package/form/validators/strong-password/index.d.ts +0 -3
  316. package/form/validators/strong-password/strong-password-tooltip/component.d.ts +0 -6
  317. package/form/validators/strong-password/strong-password-validator.directive.d.ts +0 -34
  318. package/form/validators/strong-password/strong-password-validator.module.d.ts +0 -12
  319. package/form/validators/utils.d.ts +0 -67
  320. package/index.d.ts +0 -14
  321. package/k8s-resource-list/footer/component.d.ts +0 -43
  322. package/k8s-resource-list/index.d.ts +0 -13
  323. package/k8s-resource-list/k8s-resource-list.d.ts +0 -42
  324. package/k8s-resource-list/k8s-resource-paged-list.d.ts +0 -61
  325. package/k8s-resource-list/types.d.ts +0 -70
  326. package/k8s-resource-list/utils.d.ts +0 -19
  327. package/k8s-shared/constants.d.ts +0 -7
  328. package/k8s-shared/index.d.ts +0 -11
  329. package/k8s-shared/k8s-resource-translate-key.pipe.d.ts +0 -9
  330. package/k8s-shared/k8s-shared-util.service.d.ts +0 -48
  331. package/k8s-shared/resource-mark/component.d.ts +0 -16
  332. package/k8s-shared/resource-mark/util.d.ts +0 -2
  333. package/k8s-shared/update-description-dialog/component.d.ts +0 -33
  334. package/k8s-shared/update-display-name-dialog/component.d.ts +0 -27
  335. package/k8s-shared/update-key-value-dialog/component.d.ts +0 -38
  336. package/page-deactivate/deactivate.directive.d.ts +0 -18
  337. package/page-deactivate/deactivate.guard.d.ts +0 -13
  338. package/page-deactivate/deactivate.service.d.ts +0 -28
  339. package/page-deactivate/index.d.ts +0 -3
  340. package/pipes/calc.pipe.d.ts +0 -11
  341. package/pipes/cron-human-readable.pipe.d.ts +0 -9
  342. package/pipes/crontab-next.pipe.d.ts +0 -18
  343. package/pipes/duration.pipe.d.ts +0 -10
  344. package/pipes/field-not-available.pipe.d.ts +0 -13
  345. package/pipes/img-header.pipe.d.ts +0 -7
  346. package/pipes/img-theme.pipe.d.ts +0 -13
  347. package/pipes/index.d.ts +0 -18
  348. package/pipes/keyvalue.pipe.d.ts +0 -9
  349. package/pipes/marked.pipe.d.ts +0 -8
  350. package/pipes/minimum-format.pipe.d.ts +0 -10
  351. package/pipes/page-env.pipe.d.ts +0 -34
  352. package/pipes/parse-json-translate.pipe.d.ts +0 -8
  353. package/pipes/parse-json.pipe.d.ts +0 -7
  354. package/pipes/pure.pipe.d.ts +0 -17
  355. package/pipes/safe.pipe.d.ts +0 -10
  356. package/pipes/sanitize.pipe.d.ts +0 -10
  357. package/pipes/time.pipe.d.ts +0 -40
  358. package/pipes/timezone-display.pipe.d.ts +0 -10
  359. package/services/form-row-duplicate/form-row-duplicate.service.d.ts +0 -45
  360. package/services/index.d.ts +0 -3
  361. package/services/on-resize.service.d.ts +0 -20
  362. package/services/yaml-util.service.d.ts +0 -20
  363. package/styles/global.scss +0 -904
  364. package/types/common.d.ts +0 -42
  365. package/types/helpers.d.ts +0 -35
  366. package/types/index.d.ts +0 -8
  367. package/types/k8s/core.d.ts +0 -100
  368. package/types/k8s/crd.d.ts +0 -497
  369. package/types/k8s/index.d.ts +0 -3
  370. package/types/k8s/raw.d.ts +0 -860
  371. package/types/schema.d.ts +0 -14
  372. package/utils/browser.d.ts +0 -4
  373. package/utils/cache-store.d.ts +0 -35
  374. package/utils/color-helpers.d.ts +0 -4
  375. package/utils/common.d.ts +0 -64
  376. package/utils/cron-util.d.ts +0 -8
  377. package/utils/decorators.d.ts +0 -14
  378. package/utils/disabled-state.d.ts +0 -20
  379. package/utils/format-number.d.ts +0 -11
  380. package/utils/index.d.ts +0 -23
  381. package/utils/local-storage-constants.d.ts +0 -1
  382. package/utils/node.d.ts +0 -8
  383. package/utils/observable.d.ts +0 -5
  384. package/utils/operators.d.ts +0 -22
  385. package/utils/request-pool.d.ts +0 -12
  386. package/utils/resources.d.ts +0 -19
  387. package/utils/router.d.ts +0 -3
  388. package/utils/sort-fn.d.ts +0 -2
  389. package/utils/tree.d.ts +0 -16
  390. package/utils/unit.d.ts +0 -21
  391. package/utils/version.d.ts +0 -39
  392. package/utils/with-load-state.d.ts +0 -11
  393. package/utils/workload.d.ts +0 -66
  394. package/utils/workspace.d.ts +0 -28
  395. package/utils/yaml.d.ts +0 -11
@@ -1,227 +0,0 @@
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
- function formatNumberToLocaleString(value, pattern, digitsInfo) {
23
- let formattedText = '';
24
- let isZero = false;
25
- if (isFinite(value)) {
26
- const parsedNumber = parseNumber(value);
27
- const minInt = digitsInfo[0] || 0;
28
- const minFraction = digitsInfo[1] || 0;
29
- const maxFraction = digitsInfo[2] || 0;
30
- roundNumber(parsedNumber, minFraction, maxFraction);
31
- let digits = parsedNumber.digits;
32
- let integerLen = parsedNumber.integerLen;
33
- const exponent = parsedNumber.exponent;
34
- let decimals = [];
35
- isZero = digits.every(d => !d);
36
- // pad zeros for small numbers
37
- for (; integerLen < minInt; integerLen++) {
38
- digits.unshift(0);
39
- }
40
- // pad zeros for small numbers
41
- for (; integerLen < 0; integerLen++) {
42
- digits.unshift(0);
43
- }
44
- // extract decimals digits
45
- if (integerLen > 0) {
46
- decimals = digits.splice(integerLen, digits.length);
47
- }
48
- else {
49
- decimals = digits;
50
- digits = [0];
51
- }
52
- // format the integer digits with grouping separators
53
- const groups = [];
54
- if (digits.length >= pattern.lgSize) {
55
- groups.unshift(digits.splice(-pattern.lgSize, digits.length).join(''));
56
- }
57
- while (digits.length > pattern.gSize) {
58
- groups.unshift(digits.splice(-pattern.gSize, digits.length).join(''));
59
- }
60
- if (digits.length > 0) {
61
- groups.unshift(digits.join(''));
62
- }
63
- formattedText = groups.join(SymbolGroup);
64
- // append the decimal digits
65
- if (decimals.length > 0) {
66
- formattedText += SymbolDecimal + decimals.join('');
67
- }
68
- if (exponent) {
69
- formattedText += SymbolExponential + '+' + exponent;
70
- }
71
- }
72
- else {
73
- formattedText = SymbolInfinity;
74
- }
75
- formattedText =
76
- value < 0 && !isZero
77
- ? pattern.negPre + formattedText + pattern.negSuf
78
- : pattern.posPre + formattedText + pattern.posSuf;
79
- return formattedText;
80
- }
81
- /**
82
- * @ngModule CommonModule
83
- *
84
- * Formats a number as text. Group sizing and separator and other locale-specific
85
- * configurations are based on the locale.
86
- *
87
- * Where:
88
- * - `value` is a number.
89
- * - `digitInfo` See {@link DecimalPipe} for more details.
90
- */
91
- export function formatNumber(value, digitsInfo) {
92
- return formatNumberToLocaleString(value, SymbolNumberPattern, digitsInfo);
93
- }
94
- /**
95
- * Parses a number.
96
- * Significant bits of this parse algorithm came from https://github.com/MikeMcl/big.js/
97
- */
98
- function parseNumber(num) {
99
- let numStr = Math.abs(num) + '';
100
- let exponent = 0;
101
- let digits;
102
- let integerLen;
103
- let i;
104
- let j;
105
- let zeros;
106
- // Decimal point?
107
- if ((integerLen = numStr.indexOf(DECIMAL_SEP)) > -1) {
108
- numStr = numStr.replace(DECIMAL_SEP, '');
109
- }
110
- // Exponential form?
111
- if ((i = numStr.search(/e/i)) > 0) {
112
- // Work out the exponent.
113
- if (integerLen < 0) {
114
- integerLen = i;
115
- }
116
- integerLen += +numStr.slice(i + 1);
117
- numStr = numStr.slice(0, Math.max(0, i));
118
- }
119
- else if (integerLen < 0) {
120
- // There was no decimal point or exponent so it is an integer.
121
- integerLen = numStr.length;
122
- }
123
- // Count the number of leading zeros.
124
- for (i = 0; numStr.charAt(i) === ZERO_CHAR; i++) {
125
- /* empty */
126
- }
127
- if (i === (zeros = numStr.length)) {
128
- // The digits are all zero.
129
- digits = [0];
130
- integerLen = 1;
131
- }
132
- else {
133
- // Count the number of trailing zeros
134
- zeros--;
135
- while (numStr.charAt(zeros) === ZERO_CHAR) {
136
- zeros--;
137
- }
138
- // Trailing zeros are insignificant so ignore them
139
- integerLen -= i;
140
- digits = [];
141
- // Convert string to array of digits without leading/trailing zeros.
142
- for (j = 0; i <= zeros; i++, j++) {
143
- digits[j] = Number(numStr.charAt(i));
144
- }
145
- }
146
- // If the number overflows the maximum allowed digits then use an exponent.
147
- if (integerLen > MAX_DIGITS) {
148
- digits = digits.splice(0, MAX_DIGITS - 1);
149
- exponent = integerLen - 1;
150
- integerLen = 1;
151
- }
152
- return { digits, exponent, integerLen };
153
- }
154
- /**
155
- * Round the parsed number to the specified number of decimal places
156
- * This function changes the parsedNumber in-place
157
- */
158
- function roundNumber(parsedNumber, minFrac, maxFrac) {
159
- if (minFrac > maxFrac) {
160
- throw new Error(`The minimum number of digits after fraction (${minFrac}) is higher than the maximum (${maxFrac}).`);
161
- }
162
- const digits = parsedNumber.digits;
163
- let fractionLen = digits.length - parsedNumber.integerLen;
164
- const fractionSize = Math.min(Math.max(minFrac, fractionLen), maxFrac);
165
- // The index of the digit to where rounding is to occur
166
- let roundAt = fractionSize + parsedNumber.integerLen;
167
- const digit = digits[roundAt];
168
- if (roundAt > 0) {
169
- // Drop fractional digits beyond `roundAt`
170
- digits.splice(Math.max(parsedNumber.integerLen, roundAt));
171
- // Set non-fractional digits beyond `roundAt` to 0
172
- for (let j = roundAt; j < digits.length; j++) {
173
- digits[j] = 0;
174
- }
175
- }
176
- else {
177
- // We rounded to zero so reset the parsedNumber
178
- fractionLen = Math.max(0, fractionLen);
179
- parsedNumber.integerLen = 1;
180
- digits.length = Math.max(1, (roundAt = fractionSize + 1));
181
- digits[0] = 0;
182
- for (let i = 1; i < roundAt; i++) {
183
- digits[i] = 0;
184
- }
185
- }
186
- if (digit >= 5) {
187
- if (roundAt - 1 < 0) {
188
- for (let k = 0; k > roundAt; k--) {
189
- digits.unshift(0);
190
- parsedNumber.integerLen++;
191
- }
192
- digits.unshift(1);
193
- parsedNumber.integerLen++;
194
- }
195
- else {
196
- digits[roundAt - 1]++;
197
- }
198
- }
199
- // Pad out with zeros to get the required fraction length
200
- for (; fractionLen < Math.max(0, fractionSize); fractionLen++) {
201
- digits.push(0);
202
- }
203
- let dropTrailingZeros = fractionSize !== 0;
204
- // Minimal length = nb of decimals required + current nb of integers
205
- // Any number besides that is optional and can be removed if it's a trailing 0
206
- const minLen = minFrac + parsedNumber.integerLen;
207
- // Do any carrying, e.g. a digit was rounded up to 10
208
- const carry = digits.reduceRight((c, d, i, ds) => {
209
- d = d + c;
210
- ds[i] = d < 10 ? d : d - 10; // d % 10
211
- if (dropTrailingZeros) {
212
- // Do not keep meaningless fractional trailing zeros (e.g. 15.52000 --> 15.52)
213
- if (ds[i] === 0 && i >= minLen) {
214
- ds.pop();
215
- }
216
- else {
217
- dropTrailingZeros = false;
218
- }
219
- }
220
- return d >= 10 ? 1 : 0;
221
- }, 0);
222
- if (carry) {
223
- digits.unshift(carry);
224
- parsedNumber.integerLen++;
225
- }
226
- }
227
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LW51bWJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy91dGlscy9mb3JtYXQtbnVtYmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQztBQUN0QixNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUM7QUFDeEIsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDO0FBQ3RCLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQztBQUMzQixNQUFNLGFBQWEsR0FBRyxHQUFHLENBQUM7QUFDMUIsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO0FBQ3ZCLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxDQUFDO0FBQzlCLE1BQU0sbUJBQW1CLEdBQUc7SUFDMUIsS0FBSyxFQUFFLENBQUM7SUFDUixNQUFNLEVBQUUsQ0FBQztJQUNULE9BQU8sRUFBRSxDQUFDO0lBQ1YsT0FBTyxFQUFFLENBQUM7SUFDVixNQUFNLEVBQUUsQ0FBQztJQUNULE1BQU0sRUFBRSxHQUFHO0lBQ1gsTUFBTSxFQUFFLEVBQUU7SUFDVixNQUFNLEVBQUUsRUFBRTtJQUNWLE1BQU0sRUFBRSxFQUFFO0NBQ1gsQ0FBQztBQUVGOztHQUVHO0FBRUgsU0FBUywwQkFBMEIsQ0FDakMsS0FBYSxFQUNiLE9BQTJCLEVBQzNCLFVBQXFCO0lBRXJCLElBQUksYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUN2QixJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFFbkIsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNwQixNQUFNLFlBQVksR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFeEMsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFD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QUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgTUFYX0RJR0lUUyA9IDIyO1xuY29uc3QgREVDSU1BTF9TRVAgPSAnLic7XG5jb25zdCBaRVJPX0NIQVIgPSAnMCc7XG5jb25zdCBTeW1ib2xJbmZpbml0eSA9ICfiiJ4nO1xuY29uc3QgU3ltYm9sRGVjaW1hbCA9ICcuJztcbmNvbnN0IFN5bWJvbEdyb3VwID0gJyc7XG5jb25zdCBTeW1ib2xFeHBvbmVudGlhbCA9ICdFJztcbmNvbnN0IFN5bWJvbE51bWJlclBhdHRlcm4gPSB7XG4gIGdTaXplOiAzLFxuICBsZ1NpemU6IDMsXG4gIG1heEZyYWM6IDMsXG4gIG1pbkZyYWM6IDAsXG4gIG1pbkludDogMSxcbiAgbmVnUHJlOiAnLScsXG4gIG5lZ1N1ZjogJycsXG4gIHBvc1ByZTogJycsXG4gIHBvc1N1ZjogJycsXG59O1xuXG4vKipcbiAqIFRyYW5zZm9ybXMgYSBudW1iZXIgdG8gYSBsb2NhbGUgc3RyaW5nIGJhc2VkIG9uIGEgc3R5bGUgYW5kIGEgZm9ybWF0XG4gKi9cblxuZnVuY3Rpb24gZm9ybWF0TnVtYmVyVG9Mb2NhbGVTdHJpbmcoXG4gIHZhbHVlOiBudW1iZXIsXG4gIHBhdHRlcm46IFBhcnNlZE51bWJlckZvcm1hdCxcbiAgZGlnaXRzSW5mbz86IG51bWJlcltdLFxuKTogc3RyaW5nIHtcbiAgbGV0IGZvcm1hdHRlZFRleHQgPSAnJztcbiAgbGV0IGlzWmVybyA9IGZhbHNlO1xuXG4gIGlmIChpc0Zpbml0ZSh2YWx1ZSkpIHtcbiAgICBjb25zdCBwYXJzZWROdW1iZXIgPSBwYXJzZU51bWJlcih2YWx1ZSk7XG5cbiAgICBjb25zdCBtaW5JbnQgPSBkaWdpdHNJbmZvWzBdIHx8IDA7XG4gICAgY29uc3QgbWluRnJhY3Rpb24gPSBkaWdpdHNJbmZvWzFdIHx8IDA7XG4gICAgY29uc3QgbWF4RnJhY3Rpb24gPSBkaWdpdHNJbmZvWzJdIHx8IDA7XG5cbiAgICByb3VuZE51bWJlcihwYXJzZWROdW1iZXIsIG1pbkZyYWN0aW9uLCBtYXhGcmFjdGlvbik7XG5cbiAgICBsZXQgZGlnaXRzID0gcGFyc2VkTnVtYmVyLmRpZ2l0cztcbiAgICBsZXQgaW50ZWdlckxlbiA9IHBhcnNlZE51bWJlci5pbnRlZ2VyTGVuO1xuICAgIGNvbnN0IGV4cG9uZW50ID0gcGFyc2VkTnVtYmVyLmV4cG9uZW50O1xuICAgIGxldCBkZWNpbWFscyA9IFtdO1xuICAgIGlzWmVybyA9IGRpZ2l0cy5ldmVyeShkID0+ICFkKTtcblxuICAgIC8vIHBhZCB6ZXJvcyBmb3Igc21hbGwgbnVtYmVyc1xuICAgIGZvciAoOyBpbnRlZ2VyTGVuIDwgbWluSW50OyBpbnRlZ2VyTGVuKyspIHtcbiAgICAgIGRpZ2l0cy51bnNoaWZ0KDApO1xuICAgIH1cblxuICAgIC8vIHBhZCB6ZXJvcyBmb3Igc21hbGwgbnVtYmVyc1xuICAgIGZvciAoOyBpbnRlZ2VyTGVuIDwgMDsgaW50ZWdlckxlbisrKSB7XG4gICAgICBkaWdpdHMudW5zaGlmdCgwKTtcbiAgICB9XG5cbiAgICAvLyBleHRyYWN0IGRlY2ltYWxzIGRpZ2l0c1xuICAgIGlmIChpbnRlZ2VyTGVuID4gMCkge1xuICAgICAgZGVjaW1hbHMgPSBkaWdpdHMuc3BsaWNlKGludGVnZXJMZW4sIGRpZ2l0cy5sZW5ndGgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWNpbWFscyA9IGRpZ2l0cztcbiAgICAgIGRpZ2l0cyA9IFswXTtcbiAgICB9XG5cbiAgICAvLyBmb3JtYXQgdGhlIGludGVnZXIgZGlnaXRzIHdpdGggZ3JvdXBpbmcgc2VwYXJhdG9yc1xuICAgIGNvbnN0IGdyb3VwcyA9IFtdO1xuICAgIGlmIChkaWdpdHMubGVuZ3RoID49IHBhdHRlcm4ubGdTaXplKSB7XG4gICAgICBncm91cHMudW5zaGlmdChkaWdpdHMuc3BsaWNlKC1wYXR0ZXJuLmxnU2l6ZSwgZGlnaXRzLmxlbmd0aCkuam9pbignJykpO1xuICAgIH1cblxuICAgIHdoaWxlIChkaWdpdHMubGVuZ3RoID4gcGF0dGVybi5nU2l6ZSkge1xuICAgICAgZ3JvdXBzLnVuc2hpZnQoZGlnaXRzLnNwbGljZSgtcGF0dGVybi5nU2l6ZSwgZGlnaXRzLmxlbmd0aCkuam9pbignJykpO1xuICAgIH1cblxuICAgIGlmIChkaWdpdHMubGVuZ3RoID4gMCkge1xuICAgICAgZ3JvdXBzLnVuc2hpZnQoZGlnaXRzLmpvaW4oJycpKTtcbiAgICB9XG5cbiAgICBmb3JtYXR0ZWRUZXh0ID0gZ3JvdXBzLmpvaW4oU3ltYm9sR3JvdXApO1xuXG4gICAgLy8gYXBwZW5kIHRoZSBkZWNpbWFsIGRpZ2l0c1xuICAgIGlmIChkZWNpbWFscy5sZW5ndGggPiAwKSB7XG4gICAgICBmb3JtYXR0ZWRUZXh0ICs9IFN5bWJvbERlY2ltYWwgKyBkZWNpbWFscy5qb2luKCcnKTtcbiAgICB9XG5cbiAgICBpZiAoZXhwb25lbnQpIHtcbiAgICAgIGZvcm1hdHRlZFRleHQgKz0gU3ltYm9sRXhwb25lbnRpYWwgKyAnKycgKyBleHBvbmVudDtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgZm9ybWF0dGVkVGV4dCA9IFN5bWJvbEluZmluaXR5O1xuICB9XG5cbiAgZm9ybWF0dGVkVGV4dCA9XG4gICAgdmFsdWUgPCAwICYmICFpc1plcm9cbiAgICAgID8gcGF0dGVybi5uZWdQcmUgKyBmb3JtYXR0ZWRUZXh0ICsgcGF0dGVybi5uZWdTdWZcbiAgICAgIDogcGF0dGVybi5wb3NQcmUgKyBmb3JtYXR0ZWRUZXh0ICsgcGF0dGVybi5wb3NTdWY7XG5cbiAgcmV0dXJuIGZvcm1hdHRlZFRleHQ7XG59XG5cbi8qKlxuICogQG5nTW9kdWxlIENvbW1vbk1vZHVsZVxuICpcbiAqIEZvcm1hdHMgYSBudW1iZXIgYXMgdGV4dC4gR3JvdXAgc2l6aW5nIGFuZCBzZXBhcmF0b3IgYW5kIG90aGVyIGxvY2FsZS1zcGVjaWZpY1xuICogY29uZmlndXJhdGlvbnMgYXJlIGJhc2VkIG9uIHRoZSBsb2NhbGUuXG4gKlxuICogV2hlcmU6XG4gKiAtIGB2YWx1ZWAgaXMgYSBudW1iZXIuXG4gKiAtIGBkaWdpdEluZm9gIFNlZSB7QGxpbmsgRGVjaW1hbFBpcGV9IGZvciBtb3JlIGRldGFpbHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXROdW1iZXIodmFsdWU6IG51bWJlciwgZGlnaXRzSW5mbz86IG51bWJlcltdKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZvcm1hdE51bWJlclRvTG9jYWxlU3RyaW5nKHZhbHVlLCBTeW1ib2xOdW1iZXJQYXR0ZXJuLCBkaWdpdHNJbmZvKTtcbn1cblxuaW50ZXJmYWNlIFBhcnNlZE51bWJlckZvcm1hdCB7XG4gIG1pbkludDogbnVtYmVyO1xuICAvLyB0aGUgbWluaW11bSBudW1iZXIgb2YgZGlnaXRzIHJlcXVpcmVkIGluIHRoZSBmcmFjdGlvbiBwYXJ0IG9mIHRoZSBudW1iZXJcbiAgbWluRnJhYzogbnVtYmVyO1xuICAvLyB0aGUgbWF4aW11bSBudW1iZXIgb2YgZGlnaXRzIHJlcXVpcmVkIGluIHRoZSBmcmFjdGlvbiBwYXJ0IG9mIHRoZSBudW1iZXJcbiAgbWF4RnJhYzogbnVtYmVyO1xuICAvLyB0aGUgcHJlZml4IGZvciBhIHBvc2l0aXZlIG51bWJlclxuICBwb3NQcmU6IHN0cmluZztcbiAgLy8gdGhlIHN1ZmZpeCBmb3IgYSBwb3NpdGl2ZSBudW1iZXJcbiAgcG9zU3VmOiBzdHJpbmc7XG4gIC8vIHRoZSBwcmVmaXggZm9yIGEgbmVnYXRpdmUgbnVtYmVyIChlLmcuIGAtYCBvciBgKGApKVxuICBuZWdQcmU6IHN0cmluZztcbiAgLy8gdGhlIHN1ZmZpeCBmb3IgYSBuZWdhdGl2ZSBudW1iZXIgKGUuZy4gYClgKVxuICBuZWdTdWY6IHN0cmluZztcbiAgLy8gbnVtYmVyIG9mIGRpZ2l0cyBpbiBlYWNoIGdyb3VwIG9mIHNlcGFyYXRlZCBkaWdpdHNcbiAgZ1NpemU6IG51bWJlcjtcbiAgLy8gbnVtYmVyIG9mIGRpZ2l0cyBpbiB0aGUgbGFzdCBncm91cCBvZiBkaWdpdHMgYmVmb3JlIHRoZSBkZWNpbWFsIHNlcGFyYXRvclxuICBsZ1NpemU6IG51bWJlcjtcbn1cblxuaW50ZXJmYWNlIFBhcnNlZE51bWJlciB7XG4gIC8vIGFuIGFycmF5IG9mIGRpZ2l0cyBjb250YWluaW5nIGxlYWRpbmcgemVyb3MgYXMgbmVjZXNzYXJ5XG4gIGRpZ2l0czogbnVtYmVyW107XG4gIC8vIHRoZSBleHBvbmVudCBmb3IgbnVtYmVycyB0aGF0IHdvdWxkIG5lZWQgbW9yZSB0aGFuIGBNQVhfRElHSVRTYCBkaWdpdHMgaW4gYGRgXG4gIGV4cG9uZW50OiBudW1iZXI7XG4gIC8vIHRoZSBudW1iZXIgb2YgdGhlIGRpZ2l0cyBpbiBgZGAgdGhhdCBhcmUgdG8gdGhlIGxlZnQgb2YgdGhlIGRlY2ltYWwgcG9pbnRcbiAgaW50ZWdlckxlbjogbnVtYmVyO1xufVxuXG4vKipcbiAqIFBhcnNlcyBhIG51bWJlci5cbiAqIFNpZ25pZmljYW50IGJpdHMgb2YgdGhpcyBwYXJzZSBhbGdvcml0aG0gY2FtZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWtlTWNsL2JpZy5qcy9cbiAqL1xuZnVuY3Rpb24gcGFyc2VOdW1iZXIobnVtOiBudW1iZXIpOiBQYXJzZWROdW1iZXIge1xuICBsZXQgbnVtU3RyID0gTWF0aC5hYnMobnVtKSArICcnO1xuICBsZXQgZXhwb25lbnQgPSAwO1xuICBsZXQgZGlnaXRzOiBudW1iZXJbXTtcbiAgbGV0IGludGVnZXJMZW46IG51bWJlcjtcbiAgbGV0IGk6IG51bWJlcjtcbiAgbGV0IGo6IG51bWJlcjtcbiAgbGV0IHplcm9zOiBudW1iZXI7XG5cbiAgLy8gRGVjaW1hbCBwb2ludD9cbiAgaWYgKChpbnRlZ2VyTGVuID0gbnVtU3RyLmluZGV4T2YoREVDSU1BTF9TRVApKSA+IC0xKSB7XG4gICAgbnVtU3RyID0gbnVtU3RyLnJlcGxhY2UoREVDSU1BTF9TRVAsICcnKTtcbiAgfVxuXG4gIC8vIEV4cG9uZW50aWFsIGZvcm0/XG4gIGlmICgoaSA9IG51bVN0ci5zZWFyY2goL2UvaSkpID4gMCkge1xuICAgIC8vIFdvcmsgb3V0IHRoZSBleHBvbmVudC5cbiAgICBpZiAoaW50ZWdlckxlbiA8IDApIHtcbiAgICAgIGludGVnZXJMZW4gPSBpO1xuICAgIH1cbiAgICBpbnRlZ2VyTGVuICs9ICtudW1TdHIuc2xpY2UoaSArIDEpO1xuICAgIG51bVN0ciA9IG51bVN0ci5zbGljZSgwLCBNYXRoLm1heCgwLCBpKSk7XG4gIH0gZWxzZSBpZiAoaW50ZWdlckxlbiA8IDApIHtcbiAgICAvLyBUaGVyZSB3YXMgbm8gZGVjaW1hbCBwb2ludCBvciBleHBvbmVudCBzbyBpdCBpcyBhbiBpbnRlZ2VyLlxuICAgIGludGVnZXJMZW4gPSBudW1TdHIubGVuZ3RoO1xuICB9XG5cbiAgLy8gQ291bnQgdGhlIG51bWJlciBvZiBsZWFkaW5nIHplcm9zLlxuICBmb3IgKGkgPSAwOyBudW1TdHIuY2hhckF0KGkpID09PSBaRVJPX0NIQVI7IGkrKykge1xuICAgIC8qIGVtcHR5ICovXG4gIH1cblxuICBpZiAoaSA9PT0gKHplcm9zID0gbnVtU3RyLmxlbmd0aCkpIHtcbiAgICAvLyBUaGUgZGlnaXRzIGFyZSBhbGwgemVyby5cbiAgICBkaWdpdHMgPSBbMF07XG4gICAgaW50ZWdlckxlbiA9IDE7XG4gIH0gZWxzZSB7XG4gICAgLy8gQ291bnQgdGhlIG51bWJlciBvZiB0cmFpbGluZyB6ZXJvc1xuICAgIHplcm9zLS07XG4gICAgd2hpbGUgKG51bVN0ci5jaGFyQXQoemVyb3MpID09PSBaRVJPX0NIQVIpIHtcbiAgICAgIHplcm9zLS07XG4gICAgfVxuXG4gICAgLy8gVHJhaWxpbmcgemVyb3MgYXJlIGluc2lnbmlmaWNhbnQgc28gaWdub3JlIHRoZW1cbiAgICBpbnRlZ2VyTGVuIC09IGk7XG4gICAgZGlnaXRzID0gW107XG4gICAgLy8gQ29udmVydCBzdHJpbmcgdG8gYXJyYXkgb2YgZGlnaXRzIHdpdGhvdXQgbGVhZGluZy90cmFpbGluZyB6ZXJvcy5cbiAgICBmb3IgKGogPSAwOyBpIDw9IHplcm9zOyBpKyssIGorKykge1xuICAgICAgZGlnaXRzW2pdID0gTnVtYmVyKG51bVN0ci5jaGFyQXQoaSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRoZSBudW1iZXIgb3ZlcmZsb3dzIHRoZSBtYXhpbXVtIGFsbG93ZWQgZGlnaXRzIHRoZW4gdXNlIGFuIGV4cG9uZW50LlxuICBpZiAoaW50ZWdlckxlbiA+IE1BWF9ESUdJVFMpIHtcbiAgICBkaWdpdHMgPSBkaWdpdHMuc3BsaWNlKDAsIE1BWF9ESUdJVFMgLSAxKTtcbiAgICBleHBvbmVudCA9IGludGVnZXJMZW4gLSAxO1xuICAgIGludGVnZXJMZW4gPSAxO1xuICB9XG5cbiAgcmV0dXJuIHsgZGlnaXRzLCBleHBvbmVudCwgaW50ZWdlckxlbiB9O1xufVxuXG4vKipcbiAqIFJvdW5kIHRoZSBwYXJzZWQgbnVtYmVyIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGRlY2ltYWwgcGxhY2VzXG4gKiBUaGlzIGZ1bmN0aW9uIGNoYW5nZXMgdGhlIHBhcnNlZE51bWJlciBpbi1wbGFjZVxuICovXG5cbmZ1bmN0aW9uIHJvdW5kTnVtYmVyKFxuICBwYXJzZWROdW1iZXI6IFBhcnNlZE51bWJlcixcbiAgbWluRnJhYzogbnVtYmVyLFxuICBtYXhGcmFjOiBudW1iZXIsXG4pIHtcbiAgaWYgKG1pbkZyYWMgPiBtYXhGcmFjKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYFRoZSBtaW5pbXVtIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgZnJhY3Rpb24gKCR7bWluRnJhY30pIGlzIGhpZ2hlciB0aGFuIHRoZSBtYXhpbXVtICgke21heEZyYWN9KS5gLFxuICAgICk7XG4gIH1cblxuICBjb25zdCBkaWdpdHMgPSBwYXJzZWROdW1iZXIuZGlnaXRzO1xuICBsZXQgZnJhY3Rpb25MZW4gPSBkaWdpdHMubGVuZ3RoIC0gcGFyc2VkTnVtYmVyLmludGVnZXJMZW47XG4gIGNvbnN0IGZyYWN0aW9uU2l6ZSA9IE1hdGgubWluKE1hdGgubWF4KG1pbkZyYWMsIGZyYWN0aW9uTGVuKSwgbWF4RnJhYyk7XG5cbiAgLy8gVGhlIGluZGV4IG9mIHRoZSBkaWdpdCB0byB3aGVyZSByb3VuZGluZyBpcyB0byBvY2N1clxuICBsZXQgcm91bmRBdCA9IGZyYWN0aW9uU2l6ZSArIHBhcnNlZE51bWJlci5pbnRlZ2VyTGVuO1xuICBjb25zdCBkaWdpdCA9IGRpZ2l0c1tyb3VuZEF0XTtcblxuICBpZiAocm91bmRBdCA+IDApIHtcbiAgICAvLyBEcm9wIGZyYWN0aW9uYWwgZGlnaXRzIGJleW9uZCBgcm91bmRBdGBcbiAgICBkaWdpdHMuc3BsaWNlKE1hdGgubWF4KHBhcnNlZE51bWJlci5pbnRlZ2VyTGVuLCByb3VuZEF0KSk7XG5cbiAgICAvLyBTZXQgbm9uLWZyYWN0aW9uYWwgZGlnaXRzIGJleW9uZCBgcm91bmRBdGAgdG8gMFxuICAgIGZvciAobGV0IGogPSByb3VuZEF0OyBqIDwgZGlnaXRzLmxlbmd0aDsgaisrKSB7XG4gICAgICBkaWdpdHNbal0gPSAwO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICAvLyBXZSByb3VuZGVkIHRvIHplcm8gc28gcmVzZXQgdGhlIHBhcnNlZE51bWJlclxuICAgIGZyYWN0aW9uTGVuID0gTWF0aC5tYXgoMCwgZnJhY3Rpb25MZW4pO1xuICAgIHBhcnNlZE51bWJlci5pbnRlZ2VyTGVuID0gMTtcbiAgICBkaWdpdHMubGVuZ3RoID0gTWF0aC5tYXgoMSwgKHJvdW5kQXQgPSBmcmFjdGlvblNpemUgKyAxKSk7XG4gICAgZGlnaXRzWzBdID0gMDtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IHJvdW5kQXQ7IGkrKykge1xuICAgICAgZGlnaXRzW2ldID0gMDtcbiAgICB9XG4gIH1cblxuICBpZiAoZGlnaXQgPj0gNSkge1xuICAgIGlmIChyb3VuZEF0IC0gMSA8IDApIHtcbiAgICAgIGZvciAobGV0IGsgPSAwOyBrID4gcm91bmRBdDsgay0tKSB7XG4gICAgICAgIGRpZ2l0cy51bnNoaWZ0KDApO1xuICAgICAgICBwYXJzZWROdW1iZXIuaW50ZWdlckxlbisrO1xuICAgICAgfVxuICAgICAgZGlnaXRzLnVuc2hpZnQoMSk7XG4gICAgICBwYXJzZWROdW1iZXIuaW50ZWdlckxlbisrO1xuICAgIH0gZWxzZSB7XG4gICAgICBkaWdpdHNbcm91bmRBdCAtIDFdKys7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFkIG91dCB3aXRoIHplcm9zIHRvIGdldCB0aGUgcmVxdWlyZWQgZnJhY3Rpb24gbGVuZ3RoXG4gIGZvciAoOyBmcmFjdGlvbkxlbiA8IE1hdGgubWF4KDAsIGZyYWN0aW9uU2l6ZSk7IGZyYWN0aW9uTGVuKyspIHtcbiAgICBkaWdpdHMucHVzaCgwKTtcbiAgfVxuXG4gIGxldCBkcm9wVHJhaWxpbmdaZXJvcyA9IGZyYWN0aW9uU2l6ZSAhPT0gMDtcbiAgLy8gTWluaW1hbCBsZW5ndGggPSBuYiBvZiBkZWNpbWFscyByZXF1aXJlZCArIGN1cnJlbnQgbmIgb2YgaW50ZWdlcnNcbiAgLy8gQW55IG51bWJlciBiZXNpZGVzIHRoYXQgaXMgb3B0aW9uYWwgYW5kIGNhbiBiZSByZW1vdmVkIGlmIGl0J3MgYSB0cmFpbGluZyAwXG4gIGNvbnN0IG1pbkxlbiA9IG1pbkZyYWMgKyBwYXJzZWROdW1iZXIuaW50ZWdlckxlbjtcbiAgLy8gRG8gYW55IGNhcnJ5aW5nLCBlLmcuIGEgZGlnaXQgd2FzIHJvdW5kZWQgdXAgdG8gMTBcbiAgY29uc3QgY2FycnkgPSBkaWdpdHMucmVkdWNlUmlnaHQoKGMsIGQsIGksIGRzKSA9PiB7XG4gICAgZCA9IGQgKyBjO1xuICAgIGRzW2ldID0gZCA8IDEwID8gZCA6IGQgLSAxMDsgLy8gZCAlIDEwXG4gICAgaWYgKGRyb3BUcmFpbGluZ1plcm9zKSB7XG4gICAgICAvLyBEbyBub3Qga2VlcCBtZWFuaW5nbGVzcyBmcmFjdGlvbmFsIHRyYWlsaW5nIHplcm9zIChlLmcuIDE1LjUyMDAwIC0tPiAxNS41MilcbiAgICAgIGlmIChkc1tpXSA9PT0gMCAmJiBpID49IG1pbkxlbikge1xuICAgICAgICBkcy5wb3AoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRyb3BUcmFpbGluZ1plcm9zID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkID49IDEwID8gMSA6IDA7XG4gIH0sIDApO1xuICBpZiAoY2FycnkpIHtcbiAgICBkaWdpdHMudW5zaGlmdChjYXJyeSk7XG4gICAgcGFyc2VkTnVtYmVyLmludGVnZXJMZW4rKztcbiAgfVxufVxuIl19
@@ -1,24 +0,0 @@
1
- export * from './observable';
2
- export * from './operators';
3
- export * from './decorators';
4
- export * from './browser';
5
- export * from './cache-store';
6
- export * from './color-helpers';
7
- export * from './common';
8
- export * from './cron-util';
9
- export * from './request-pool';
10
- export * from './tree';
11
- export * from './with-load-state';
12
- export * from './workspace';
13
- export * from './unit';
14
- export * from './yaml';
15
- export * from './version';
16
- export * from './resources';
17
- export * from './local-storage-constants';
18
- export * from './format-number';
19
- export * from './node';
20
- export * from './sort-fn';
21
- export * from './workload';
22
- export * from './router';
23
- export * from './disabled-state';
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2R5bmFtaWMtcGx1Z2luLXNoYXJlZC9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL29ic2VydmFibGUnO1xuZXhwb3J0ICogZnJvbSAnLi9vcGVyYXRvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9kZWNvcmF0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vYnJvd3Nlcic7XG5leHBvcnQgKiBmcm9tICcuL2NhY2hlLXN0b3JlJztcbmV4cG9ydCAqIGZyb20gJy4vY29sb3ItaGVscGVycyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbic7XG5leHBvcnQgKiBmcm9tICcuL2Nyb24tdXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtcG9vbCc7XG5leHBvcnQgKiBmcm9tICcuL3RyZWUnO1xuZXhwb3J0ICogZnJvbSAnLi93aXRoLWxvYWQtc3RhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi91bml0JztcbmV4cG9ydCAqIGZyb20gJy4veWFtbCc7XG5leHBvcnQgKiBmcm9tICcuL3ZlcnNpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9yZXNvdXJjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2NhbC1zdG9yYWdlLWNvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm1hdC1udW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9ub2RlJztcbmV4cG9ydCAqIGZyb20gJy4vc29ydC1mbic7XG5leHBvcnQgKiBmcm9tICcuL3dvcmtsb2FkJztcbmV4cG9ydCAqIGZyb20gJy4vcm91dGVyJztcbmV4cG9ydCAqIGZyb20gJy4vZGlzYWJsZWQtc3RhdGUnO1xuIl19
@@ -1,2 +0,0 @@
1
- export const LOCAL_STORAGE_KEY_THEME_MODE = 'theme-mode';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS1jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2R5bmFtaWMtcGx1Z2luLXNoYXJlZC9zcmMvdXRpbHMvbG9jYWwtc3RvcmFnZS1jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IExPQ0FMX1NUT1JBR0VfS0VZX1RIRU1FX01PREUgPSAndGhlbWUtbW9kZSc7XG4iXX0=
@@ -1,18 +0,0 @@
1
- import { IP_ADDRESS_PATTERN } from '../constants/patterns';
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy91dGlscy9ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRzNEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBQyxJQUFVO0lBQ3ZDLE9BQU8sQ0FDTCxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQzNCLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUNwQixJQUFJLEtBQUssWUFBWSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQ3BFLEVBQUUsT0FBTyxJQUFJLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsaUNBQWlDLENBQUMsQ0FDMUUsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLElBQVU7SUFDdkMsT0FBTyxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQ2xDLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUNwQixJQUFJLEtBQUssWUFBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FDckUsRUFBRSxPQUFPLENBQUM7QUFDYixDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FBQyxJQUFVO0lBQ3JDLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN0RCxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFVO0lBQ3BDLE9BQU8sSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUM7U0FDbkUsT0FBTyxDQUFDO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQX0FERFJFU1NfUEFUVEVSTiB9IGZyb20gJy4uL2NvbnN0YW50cy9wYXR0ZXJucyc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vKipcbiAqIOS7jiB1bmRlcmxvcmQg6IqC54K5IHV0aWxzIOS4reaKveemu+WHuuadpe+8jOS9nOS4uumAmueUqOeahOWGhemDqElQ44CB5YaF6YOoSVB2NuOAgWhvc3RuYW1lIOiOt+WPluaWueW8j1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHJpdmF0ZUlQdjQobm9kZTogTm9kZSkge1xuICByZXR1cm4gKFxuICAgIG5vZGU/LnN0YXR1cz8uYWRkcmVzc2VzPy5maW5kKFxuICAgICAgKHsgdHlwZSwgYWRkcmVzcyB9KSA9PlxuICAgICAgICB0eXBlID09PSAnSW50ZXJuYWxJUCcgJiYgSVBfQUREUkVTU19QQVRURVJOLnBhdHRlcm4udGVzdChhZGRyZXNzKSxcbiAgICApPy5hZGRyZXNzIHx8IG5vZGU/Lm1ldGFkYXRhPy5sYWJlbHM/LlsncGxhdGZvcm0udGtlc3RhY2suaW8vbWFjaGluZS1pcCddXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcml2YXRlSVB2Nihub2RlOiBOb2RlKSB7XG4gIHJldHVybiBub2RlPy5zdGF0dXM/LmFkZHJlc3Nlcz8uZmluZChcbiAgICAoeyB0eXBlLCBhZGRyZXNzIH0pID0+XG4gICAgICB0eXBlID09PSAnSW50ZXJuYWxJUCcgJiYgIUlQX0FERFJFU1NfUEFUVEVSTi5wYXR0ZXJuLnRlc3QoYWRkcmVzcyksXG4gICk/LmFkZHJlc3M7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcml2YXRlSVAobm9kZTogTm9kZSkge1xuICByZXR1cm4gZ2V0UHJpdmF0ZUlQdjQobm9kZSkgfHwgZ2V0UHJpdmF0ZUlQdjYobm9kZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRIb3N0bmFtZShub2RlOiBOb2RlKSB7XG4gIHJldHVybiBub2RlPy5zdGF0dXM/LmFkZHJlc3Nlcz8uZmluZChhZGRyID0+IGFkZHIudHlwZSA9PT0gJ0hvc3RuYW1lJylcbiAgICAuYWRkcmVzcztcbn1cbiJdfQ==
@@ -1,32 +0,0 @@
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, defer, } 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
- export const tapSkip = (nEmissions, callback) => (source$) => defer(() => {
24
- let counter = 0;
25
- return source$.pipe(tap(item => {
26
- if (counter >= nEmissions) {
27
- callback(item);
28
- }
29
- counter++;
30
- }));
31
- });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy91dGlscy9vYnNlcnZhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxFQUNQLEVBQUUsRUFDRixVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsR0FBRyxFQUNILEtBQUssR0FDTixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFekMsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FDbEMsTUFBMkIsRUFDM0IsTUFBbUMsRUFDZCxFQUFFO0lBQ3ZCLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQztJQUNoQyxNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXBDLE1BQU0scUJBQXFCLEdBQUcsR0FBRyxFQUFFLENBQ2pDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FDM0MsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUMvRCxDQUFDO0lBRUosT0FBTyxPQUFPLENBQUMsSUFBSSxDQUNqQixTQUFTLENBQUMsVUFBVSxDQUFDLEVBQ3JCLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUNoQixLQUFLLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixFQUFFLENBQzFELEVBQ0QsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBVSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2xFLEdBQUcsQ0FBQyxHQUFHLEVBQUU7UUFDUCxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakIsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxFQUFFLENBQ2IsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLDhJQUE4STtBQUM5SSxNQUFNLFVBQVUsU0FBUyxDQUFDLFVBQXVCO0lBQy9DLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNoQix3QkFBd0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNwQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQy9CLE9BQU8sVUFBVSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FDbEIsQ0FBSSxVQUFrQixFQUFFLFFBQTJCLEVBQUUsRUFBRSxDQUN2RCxDQUFDLE9BQXNCLEVBQWlCLEVBQUUsQ0FDeEMsS0FBSyxDQUFDLEdBQUcsRUFBRTtJQUNULElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztJQUNoQixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQ2pCLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNULElBQUksT0FBTyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQzFCLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0FBQ0osQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBhc3NlcnRJbkluamVjdGlvbkNvbnRleHQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtcbiAgRU1QVFksXG4gIE9ic2VydmFibGUsXG4gIFN1YmplY3QsXG4gIG9mLFxuICBjYXRjaEVycm9yLFxuICBkZWxheSxcbiAgc3RhcnRXaXRoLFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbiAgZGVmZXIsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBwdWJsaXNoUmVmIH0gZnJvbSAnLi9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUG9sbE9ic2VydmFibGUgPSA8VFJlc3VsdD4oXG4gIGZldGNoJDogT2JzZXJ2YWJsZTxUUmVzdWx0PixcbiAgcG9sbEluOiBudW1iZXIgfCBPYnNlcnZhYmxlPG51bWJlcj4sXG4pOiBPYnNlcnZhYmxlPFRSZXN1bHQ+ID0+IHtcbiAgY29uc3QgSU5JVF9WQUxVRSA9ICdJbml0aWFsaXplJztcbiAgY29uc3Qgc3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3QgY3JlYXRlRGVsYXlPYnNlcnZhYmxlID0gKCkgPT5cbiAgICAoaXNOdW1iZXIocG9sbEluKSA/IG9mKHBvbGxJbikgOiBwb2xsSW4pLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAocGkgPT4gKHBpID09PSAwID8gRU1QVFkgOiBvZihudWxsKS5waXBlKGRlbGF5KHBpKSkpKSxcbiAgICApO1xuXG4gIHJldHVybiBzdWJqZWN0LnBpcGUoXG4gICAgc3RhcnRXaXRoKElOSVRfVkFMVUUpLFxuICAgIHN3aXRjaE1hcCh2YWx1ZSA9PlxuICAgICAgdmFsdWUgPT09IElOSVRfVkFMVUUgPyBvZihudWxsKSA6IGNyZWF0ZURlbGF5T2JzZXJ2YWJsZSgpLFxuICAgICksXG4gICAgc3dpdGNoTWFwKCgpID0+IGZldGNoJC5waXBlKGNhdGNoRXJyb3IoKF86IHVua25vd24pID0+IG9mKG51bGwpKSkpLFxuICAgIHRhcCgoKSA9PiB7XG4gICAgICBzdWJqZWN0Lm5leHQoKTtcbiAgICB9KSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG59O1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvNmZlZmJlOGZjYTZlOTY1NDk0MTZhMjdjMTRlMDI5NTdkYTEyOTFlNy9wYWNrYWdlcy9jb3JlL3J4anMtaW50ZXJvcC9zcmMvdGFrZV91bnRpbF9kZXN0cm95ZWQudHMjTDIzXG5leHBvcnQgZnVuY3Rpb24gb25EZXN0cm95KGRlc3Ryb3lSZWY/OiBEZXN0cm95UmVmKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gIGlmICghZGVzdHJveVJlZikge1xuICAgIGFzc2VydEluSW5qZWN0aW9uQ29udGV4dChvbkRlc3Ryb3kpO1xuICAgIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIH1cblxuICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgIHJldHVybiBkZXN0cm95UmVmLm9uRGVzdHJveShvYnNlcnZlci5uZXh0LmJpbmQob2JzZXJ2ZXIpKTtcbiAgfSk7XG59XG5cbmV4cG9ydCBjb25zdCB0YXBTa2lwID1cbiAgPFQ+KG5FbWlzc2lvbnM6IG51bWJlciwgY2FsbGJhY2s6IChhcmdzOiBUKSA9PiB2b2lkKSA9PlxuICAoc291cmNlJDogT2JzZXJ2YWJsZTxUPik6IE9ic2VydmFibGU8VD4gPT5cbiAgICBkZWZlcigoKSA9PiB7XG4gICAgICBsZXQgY291bnRlciA9IDA7XG4gICAgICByZXR1cm4gc291cmNlJC5waXBlKFxuICAgICAgICB0YXAoaXRlbSA9PiB7XG4gICAgICAgICAgaWYgKGNvdW50ZXIgPj0gbkVtaXNzaW9ucykge1xuICAgICAgICAgICAgY2FsbGJhY2soaXRlbSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvdW50ZXIrKztcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0pO1xuIl19
@@ -1,38 +0,0 @@
1
- /**
2
- * @packageDocumentation
3
- * @module utils
4
- */
5
- import { isDevMode } from '@angular/core';
6
- import { get } from 'lodash-es';
7
- import { EMPTY, Observable, ReplaySubject, catchError, concatWith, filter, from, ignoreElements, map, of, pipe, share, shareReplay, startWith, switchMap, takeUntil, } from 'rxjs';
8
- import { onDestroy } from './observable';
9
- export const publishRef = (bufferSizeOrConfig = {}) => {
10
- const { bufferSize = 1, windowTime, timestampProvider, connector = () => new ReplaySubject(bufferSize, windowTime, timestampProvider), resetOnError = false, resetOnComplete = false, resetOnRefCountZero = true, } = typeof bufferSizeOrConfig === 'number'
11
- ? {
12
- bufferSize: bufferSizeOrConfig,
13
- }
14
- : bufferSizeOrConfig;
15
- return share({
16
- connector,
17
- resetOnError,
18
- resetOnComplete,
19
- resetOnRefCountZero,
20
- });
21
- };
22
- export const shareUntil = (destroy$, bufferSize = 1, windowTime, scheduler) => pipe(takeUntil(destroy$), shareReplay(bufferSize, windowTime, scheduler));
23
- export const skipError = (mapped = EMPTY, debug = false) => catchError(err => {
24
- if (isDevMode() && debug) {
25
- console.error(err);
26
- }
27
- return mapped instanceof Observable ? mapped : of(mapped);
28
- });
29
- export const catchPromise = (promise, mapped) => from(promise).pipe(skipError(mapped));
30
- const NULL = Symbol('null');
31
- export const startWithCondition = (condition, value) => (source) => source.pipe(startWith(condition ? value : NULL), filter(value => value !== NULL));
32
- export const shareUntilDestroyed = (destroyRef, bufferSize, windowTime, scheduler) => shareUntil(onDestroy(destroyRef), bufferSize, windowTime, scheduler);
33
- export const safePluck = (...properties) => pipe(map(source => get(source, properties)));
34
- export function switchTap(arg) {
35
- const next = typeof arg === 'function' ? arg : (_x) => arg;
36
- return switchMap(value => next(value).pipe(ignoreElements(), concatWith(of(value))));
37
- }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL3V0aWxzL29wZXJhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQWMsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEMsT0FBTyxFQUNMLEtBQUssRUFFTCxVQUFVLEVBQ1YsYUFBYSxFQUdiLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLElBQUksRUFDSixjQUFjLEVBQ2QsR0FBRyxFQUNILEVBQUUsRUFDRixJQUFJLEVBQ0osS0FBSyxFQUNMLFdBQVcsRUFDWCxTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFVekMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUkscUJBQTBDLEVBQUUsRUFBRSxFQUFFO0lBQzVFLE1BQU0sRUFDSixVQUFVLEdBQUcsQ0FBQyxFQUNkLFVBQVUsRUFDVixpQkFBaUIsRUFDakIsU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUNmLElBQUksYUFBYSxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLENBQUMsRUFDOUQsWUFBWSxHQUFHLEtBQUssRUFDcEIsZUFBZSxHQUFHLEtBQUssRUFDdkIsbUJBQW1CLEdBQUcsSUFBSSxHQUMzQixHQUFHLE9BQU8sa0JBQWtCLEtBQUssUUFBUTtRQUN4QyxDQUFDLENBQUU7WUFDQyxVQUFVLEVBQUUsa0JBQWtCO1NBQ1U7UUFDNUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO0lBQ3ZCLE9BQU8sS0FBSyxDQUFJO1FBQ2QsU0FBUztRQUNULFlBQVk7UUFDWixlQUFlO1FBQ2YsbUJBQW1CO0tBQ3BCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUN4QixRQUE2QixFQUM3QixVQUFVLEdBQUcsQ0FBQyxFQUNkLFVBQW1CLEVBQ25CLFNBQXlCLEVBQ3pCLEVBQUUsQ0FDRixJQUFJLENBQUMsU0FBUyxDQUFJLFFBQVEsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFFL0UsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQ3ZCLFNBQTRCLEtBQUssRUFDakMsS0FBSyxHQUFHLEtBQUssRUFDYixFQUFFLENBQ0YsVUFBVSxDQUFtQixHQUFHLENBQUMsRUFBRTtJQUNqQyxJQUFJLFNBQVMsRUFBRSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUNELE9BQU8sTUFBTSxZQUFZLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDNUQsQ0FBQyxDQUFDLENBQUM7QUFFTCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FDMUIsT0FBbUIsRUFDbkIsTUFBMEIsRUFDMUIsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFFM0MsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBRTVCLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUM3QixDQUFJLFNBQWtCLEVBQUUsS0FBUSxFQUFFLEVBQUUsQ0FDcEMsQ0FBQyxNQUFxQixFQUFFLEVBQUUsQ0FDeEIsTUFBTSxDQUFDLElBQUksQ0FDVCxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQ2hDLENBQUM7QUFFTixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxVQUF1QixFQUN2QixVQUFtQixFQUNuQixVQUFtQixFQUNuQixTQUF5QixFQUN6QixFQUFFLENBQUMsVUFBVSxDQUFJLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBRTdFLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLEdBQUcsVUFBa0MsRUFBRSxFQUFFLENBQ2pFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQVMvQyxNQUFNLFVBQVUsU0FBUyxDQUN2QixHQUE4QztJQUU5QyxNQUFNLElBQUksR0FDUixPQUFPLEdBQUcsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFPLEVBQWlCLEVBQUUsQ0FBQyxHQUFHLENBQUM7SUFDcEUsT0FBTyxTQUFTLENBQW1CLEtBQUssQ0FBQyxFQUFFLENBQ3pDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsVUFBVSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQzFELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgdXRpbHNcbiAqL1xuXG5pbXBvcnQgeyBEZXN0cm95UmVmLCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge1xuICBFTVBUWSxcbiAgTW9ub1R5cGVPcGVyYXRvckZ1bmN0aW9uLFxuICBPYnNlcnZhYmxlLFxuICBSZXBsYXlTdWJqZWN0LFxuICBTY2hlZHVsZXJMaWtlLFxuICBUaW1lc3RhbXBQcm92aWRlcixcbiAgY2F0Y2hFcnJvcixcbiAgY29uY2F0V2l0aCxcbiAgZmlsdGVyLFxuICBmcm9tLFxuICBpZ25vcmVFbGVtZW50cyxcbiAgbWFwLFxuICBvZixcbiAgcGlwZSxcbiAgc2hhcmUsXG4gIHNoYXJlUmVwbGF5LFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgb25EZXN0cm95IH0gZnJvbSAnLi9vYnNlcnZhYmxlJztcblxuZXhwb3J0IHR5cGUgUHVibGlzaFJlZkNvbmZpZzxUPiA9XG4gIHwgbnVtYmVyXG4gIHwgKGltcG9ydCgncnhqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmUnKS5TaGFyZUNvbmZpZzxUPiAmIHtcbiAgICAgIGJ1ZmZlclNpemU/OiBudW1iZXI7XG4gICAgICB3aW5kb3dUaW1lPzogbnVtYmVyO1xuICAgICAgdGltZXN0YW1wUHJvdmlkZXI/OiBUaW1lc3RhbXBQcm92aWRlcjtcbiAgICB9KTtcblxuZXhwb3J0IGNvbnN0IHB1Ymxpc2hSZWYgPSA8VD4oYnVmZmVyU2l6ZU9yQ29uZmlnOiBQdWJsaXNoUmVmQ29uZmlnPFQ+ID0ge30pID0+IHtcbiAgY29uc3Qge1xuICAgIGJ1ZmZlclNpemUgPSAxLFxuICAgIHdpbmRvd1RpbWUsXG4gICAgdGltZXN0YW1wUHJvdmlkZXIsXG4gICAgY29ubmVjdG9yID0gKCkgPT5cbiAgICAgIG5ldyBSZXBsYXlTdWJqZWN0KGJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHRpbWVzdGFtcFByb3ZpZGVyKSxcbiAgICByZXNldE9uRXJyb3IgPSBmYWxzZSxcbiAgICByZXNldE9uQ29tcGxldGUgPSBmYWxzZSxcbiAgICByZXNldE9uUmVmQ291bnRaZXJvID0gdHJ1ZSxcbiAgfSA9IHR5cGVvZiBidWZmZXJTaXplT3JDb25maWcgPT09ICdudW1iZXInXG4gICAgPyAoe1xuICAgICAgICBidWZmZXJTaXplOiBidWZmZXJTaXplT3JDb25maWcsXG4gICAgICB9IGFzIEV4Y2x1ZGU8UHVibGlzaFJlZkNvbmZpZzxUPiwgbnVtYmVyPilcbiAgICA6IGJ1ZmZlclNpemVPckNvbmZpZztcbiAgcmV0dXJuIHNoYXJlPFQ+KHtcbiAgICBjb25uZWN0b3IsXG4gICAgcmVzZXRPbkVycm9yLFxuICAgIHJlc2V0T25Db21wbGV0ZSxcbiAgICByZXNldE9uUmVmQ291bnRaZXJvLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBzaGFyZVVudGlsID0gPFQ+KFxuICBkZXN0cm95JDogT2JzZXJ2YWJsZTx1bmtub3duPixcbiAgYnVmZmVyU2l6ZSA9IDEsXG4gIHdpbmRvd1RpbWU/OiBudW1iZXIsXG4gIHNjaGVkdWxlcj86IFNjaGVkdWxlckxpa2UsXG4pID0+XG4gIHBpcGUodGFrZVVudGlsPFQ+KGRlc3Ryb3kkKSwgc2hhcmVSZXBsYXkoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKSk7XG5cbmV4cG9ydCBjb25zdCBza2lwRXJyb3IgPSA8VCwgUiA9IG5ldmVyPihcbiAgbWFwcGVkOiBSIHwgT2JzZXJ2YWJsZTxSPiA9IEVNUFRZLFxuICBkZWJ1ZyA9IGZhbHNlLFxuKSA9PlxuICBjYXRjaEVycm9yPFQsIE9ic2VydmFibGU8Uj4+KGVyciA9PiB7XG4gICAgaWYgKGlzRGV2TW9kZSgpICYmIGRlYnVnKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgfVxuICAgIHJldHVybiBtYXBwZWQgaW5zdGFuY2VvZiBPYnNlcnZhYmxlID8gbWFwcGVkIDogb2YobWFwcGVkKTtcbiAgfSk7XG5cbmV4cG9ydCBjb25zdCBjYXRjaFByb21pc2UgPSA8VCwgUiA9IG5ldmVyPihcbiAgcHJvbWlzZTogUHJvbWlzZTxUPixcbiAgbWFwcGVkPzogUiB8IE9ic2VydmFibGU8Uj4sXG4pID0+IGZyb20ocHJvbWlzZSkucGlwZShza2lwRXJyb3IobWFwcGVkKSk7XG5cbmNvbnN0IE5VTEwgPSBTeW1ib2woJ251bGwnKTtcblxuZXhwb3J0IGNvbnN0IHN0YXJ0V2l0aENvbmRpdGlvbiA9XG4gIDxUPihjb25kaXRpb246IGJvb2xlYW4sIHZhbHVlOiBUKSA9PlxuICAoc291cmNlOiBPYnNlcnZhYmxlPFQ+KSA9PlxuICAgIHNvdXJjZS5waXBlKFxuICAgICAgc3RhcnRXaXRoKGNvbmRpdGlvbiA/IHZhbHVlIDogTlVMTCksXG4gICAgICBmaWx0ZXIodmFsdWUgPT4gdmFsdWUgIT09IE5VTEwpLFxuICAgICk7XG5cbmV4cG9ydCBjb25zdCBzaGFyZVVudGlsRGVzdHJveWVkID0gPFQ+KFxuICBkZXN0cm95UmVmPzogRGVzdHJveVJlZixcbiAgYnVmZmVyU2l6ZT86IG51bWJlcixcbiAgd2luZG93VGltZT86IG51bWJlcixcbiAgc2NoZWR1bGVyPzogU2NoZWR1bGVyTGlrZSxcbikgPT4gc2hhcmVVbnRpbDxUPihvbkRlc3Ryb3koZGVzdHJveVJlZiksIGJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNjaGVkdWxlcik7XG5cbmV4cG9ydCBjb25zdCBzYWZlUGx1Y2sgPSAoLi4ucHJvcGVydGllczogQXJyYXk8c3RyaW5nIHwgbnVtYmVyPikgPT5cbiAgcGlwZShtYXAoc291cmNlID0+IGdldChzb3VyY2UsIHByb3BlcnRpZXMpKSk7XG5cbi8vIHJlZmVyZW5jZSBodHRwczovL2dpdGh1Yi5jb20vUmVhY3RpdmVYL3J4anMvaXNzdWVzLzMzNTNcbmV4cG9ydCBmdW5jdGlvbiBzd2l0Y2hUYXA8VCwgUj4oXG4gIG5leHQ6ICh4OiBUKSA9PiBPYnNlcnZhYmxlPFI+LFxuKTogTW9ub1R5cGVPcGVyYXRvckZ1bmN0aW9uPFQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHN3aXRjaFRhcDxSPihcbiAgb2JzZXJ2YWJsZTogT2JzZXJ2YWJsZTxSPixcbik6IE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbjxSPjtcbmV4cG9ydCBmdW5jdGlvbiBzd2l0Y2hUYXA8VCwgUj4oXG4gIGFyZzogT2JzZXJ2YWJsZTxUPiB8ICgoeDogVCkgPT4gT2JzZXJ2YWJsZTxSPiksXG4pOiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248VD4ge1xuICBjb25zdCBuZXh0OiAoeDogVCkgPT4gT2JzZXJ2YWJsZTxUIHwgUj4gPVxuICAgIHR5cGVvZiBhcmcgPT09ICdmdW5jdGlvbicgPyBhcmcgOiAoX3g6IGFueSk6IE9ic2VydmFibGU8VD4gPT4gYXJnO1xuICByZXR1cm4gc3dpdGNoTWFwPFQsIE9ic2VydmFibGU8VD4+KHZhbHVlID0+XG4gICAgbmV4dCh2YWx1ZSkucGlwZShpZ25vcmVFbGVtZW50cygpLCBjb25jYXRXaXRoKG9mKHZhbHVlKSkpLFxuICApO1xufVxuIl19
@@ -1,37 +0,0 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1wb29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL3V0aWxzL3JlcXVlc3QtcG9vbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFFMUQsTUFBTSxPQUFPLFdBQVc7SUFLdEIsWUFBWSxFQUFFLFdBQVcsR0FBRyxDQUFDLEVBQTJCO1FBSHZDLGdCQUFXLEdBQXNCLEVBQUUsQ0FBQztRQUM3QyxpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUd2QixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsS0FBSyxDQUFJLE9BQXNCO1FBQzdCLE9BQU8sSUFBSSxVQUFVLENBQUksUUFBUSxDQUFDLEVBQUU7WUFDbEMsSUFBSSxZQUEwQixDQUFDO1lBRS9CLE1BQU0sTUFBTSxHQUFHLEdBQUcsRUFBRTtnQkFDbEIsWUFBWSxHQUFHLE9BQU87cUJBQ25CLElBQUksQ0FDSCxRQUFRLENBQUMsR0FBRyxFQUFFO29CQUNaLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDcEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNwQixDQUFDLENBQUMsQ0FDSDtxQkFDQSxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDekIsQ0FBQyxDQUFDO1lBRUYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBRWxCLE9BQU8sR0FBRyxFQUFFO2dCQUNWLFlBQVksRUFBRSxXQUFXLEVBQUUsQ0FBQztZQUM5QixDQUFDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxVQUFVO1FBQ2hCLElBQUksSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3hFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3JDLEdBQUcsRUFBRSxDQUFDO1FBQ1IsQ0FBQztJQUNILENBQUM7Q0FDRjtBQUVELE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFLE1BQU0sR0FBRyxDQUFDO0lBQzlELE9BQU8sUUFBUSxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0FBQzFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaW5hbGl6ZSwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBSZXF1ZXN0UG9vbCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWF4UGFyYWxsZWw6IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBydW5uZXJRdWV1ZTogQXJyYXk8KCkgPT4gdm9pZD4gPSBbXTtcbiAgcHJpdmF0ZSBydW5uaW5nQ291bnQgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHsgbWF4UGFyYWxsZWwgPSAzIH06IHsgbWF4UGFyYWxsZWw6IG51bWJlciB9KSB7XG4gICAgdGhpcy5tYXhQYXJhbGxlbCA9IG1heFBhcmFsbGVsO1xuICB9XG5cbiAgcXVldWU8VD4ocmVxdWVzdDogT2JzZXJ2YWJsZTxUPik6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxUPihvYnNlcnZlciA9PiB7XG4gICAgICBsZXQgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgICAgIGNvbnN0IHJ1bm5lciA9ICgpID0+IHtcbiAgICAgICAgc3Vic2NyaXB0aW9uID0gcmVxdWVzdFxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnJ1bm5pbmdDb3VudC0tO1xuICAgICAgICAgICAgICB0aGlzLmZsdXNoUXVldWUoKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKG9ic2VydmVyKTtcbiAgICAgIH07XG5cbiAgICAgIHRoaXMucnVubmVyUXVldWUucHVzaChydW5uZXIpO1xuICAgICAgdGhpcy5mbHVzaFF1ZXVlKCk7XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIHN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGZsdXNoUXVldWUoKSB7XG4gICAgaWYgKHRoaXMucnVubmluZ0NvdW50IDwgdGhpcy5tYXhQYXJhbGxlbCAmJiB0aGlzLnJ1bm5lclF1ZXVlLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucnVubmluZ0NvdW50Kys7XG4gICAgICBjb25zdCBydW4gPSB0aGlzLnJ1bm5lclF1ZXVlLnNoaWZ0KCk7XG4gICAgICBydW4oKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1heFBhcmFsbGVsQnlIdHRwVmVyc2lvbihodHRwXzIgPSAzMCwgaHR0cF8xID0gMykge1xuICByZXR1cm4gbG9jYXRpb24ucHJvdG9jb2wgPT09ICdodHRwczonID8gaHR0cF8yIDogaHR0cF8xO1xufVxuIl19
@@ -1,66 +0,0 @@
1
- export const RESOURCE_MAC_TYPES = ['cpu', 'memory'];
2
- export const RESOURCE_REQUIREMENT_KEYS = ['requests', 'limits'];
3
- export function getResourceViewModel(data, type, preferEmptyOrC) {
4
- // 对于 '2' 的cpu大小,视图上展示为 '2c'
5
- if (type === 'cpu' && !isNaN(+data)) {
6
- data = `${data}c`;
7
- }
8
- if (type === 'memory' && !isNaN(+data)) {
9
- data = `${data}Bytes`;
10
- }
11
- const reg = /^(\d?\.?\d+)([A-Za-z]+)$/;
12
- const res = {
13
- value: '',
14
- unit: '',
15
- };
16
- if (!isNaN(parseFloat(data))) {
17
- const _res = reg.exec(data) || [];
18
- res.value = _res[1] || '';
19
- const unit = _res[2];
20
- switch (type) {
21
- case 'cpu': {
22
- res.unit = preferEmptyOrC && unit === 'c' ? '' : unit || 'm';
23
- break;
24
- }
25
- case 'memory': {
26
- res.unit = unit || '';
27
- break;
28
- }
29
- }
30
- }
31
- return res;
32
- }
33
- export const resourceUnits = {
34
- cpu: [
35
- {
36
- value: 'm',
37
- label: 'unit_m',
38
- },
39
- {
40
- value: 'c',
41
- label: 'core',
42
- },
43
- ],
44
- memory: ['Mi', 'Gi'],
45
- };
46
- export function getResourceValue(data) {
47
- if (typeof data === 'string') {
48
- return data;
49
- }
50
- if (data.value) {
51
- return !data.unit || data.unit === 'c' || data.unit === 'Bytes'
52
- ? data.value
53
- : `${data.value}${data.unit}`;
54
- }
55
- return '';
56
- }
57
- export function transferResource(resource) {
58
- return Object.keys(resource).reduce((item, type) => {
59
- const value = getResourceValue(resource[type]);
60
- if (value) {
61
- item[type] = value;
62
- }
63
- return item;
64
- }, {});
65
- }
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL3V0aWxzL3Jlc291cmNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQVUsQ0FBQztBQUM3RCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQVUsQ0FBQztBQWdCekUsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxJQUFZLEVBQ1osSUFBc0IsRUFDdEIsY0FBd0I7SUFFeEIsNEJBQTRCO0lBQzVCLElBQUksSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDcEMsSUFBSSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDdkMsSUFBSSxHQUFHLEdBQUcsSUFBSSxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUNELE1BQU0sR0FBRyxHQUFHLDBCQUEwQixDQUFDO0lBQ3ZDLE1BQU0sR0FBRyxHQUFHO1FBQ1YsS0FBSyxFQUFFLEVBQUU7UUFDVCxJQUFJLEVBQUUsRUFBRTtLQUNULENBQUM7SUFFRixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDN0IsTUFBTSxJQUFJLEdBQWEsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUMsR0FBRyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQixRQUFRLElBQUksRUFBRSxDQUFDO1lBQ2IsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNYLEdBQUcsQ0FBQyxJQUFJLEdBQUcsY0FBYyxJQUFJLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQztnQkFDN0QsTUFBTTtZQUNSLENBQUM7WUFDRCxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ2QsR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUN0QixNQUFNO1lBQ1IsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHO0lBQzNCLEdBQUcsRUFBRTtRQUNIO1lBQ0UsS0FBSyxFQUFFLEdBQUc7WUFDVixLQUFLLEVBQUUsUUFBUTtTQUNoQjtRQUNEO1lBQ0UsS0FBSyxFQUFFLEdBQUc7WUFDVixLQUFLLEVBQUUsTUFBTTtTQUNkO0tBQ0Y7SUFDRCxNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO0NBQ3JCLENBQUM7QUFFRixNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBOEI7SUFDN0QsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssT0FBTztZQUM3RCxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFDWixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFFBQThCO0lBQzdELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBb0IsRUFBRSxFQUFFO1FBQ2pFLE1BQU0sS0FBSyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQy9DLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsRUFBRSxFQUFrQixDQUFDLENBQUM7QUFDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc291cmNlQ29udHJvbCB9IGZyb20gJy4uL2Zvcm0vdmFsaWRhdG9ycy9yZXNvdXJjZS1saW1pdCc7XG5cbmV4cG9ydCBjb25zdCBSRVNPVVJDRV9NQUNfVFlQRVMgPSBbJ2NwdScsICdtZW1vcnknXSBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBSRVNPVVJDRV9SRVFVSVJFTUVOVF9LRVlTID0gWydyZXF1ZXN0cycsICdsaW1pdHMnXSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgUmVzb3VyY2VNYWNLZXkgPSAodHlwZW9mIFJFU09VUkNFX01BQ19UWVBFUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIFJlc291cmNlTWFjcyA9IFJlY29yZDxSZXNvdXJjZU1hY0tleSwgc3RyaW5nPjtcbmV4cG9ydCB0eXBlIFJlc291cmNlTWFjRm9ybU1vZGFsID0gUmVjb3JkPFJlc291cmNlTWFjS2V5LCBSZXNvdXJjZUNvbnRyb2w+O1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VSZXF1aXJlbWVudEtleSA9ICh0eXBlb2YgUkVTT1VSQ0VfUkVRVUlSRU1FTlRfS0VZUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIFJlc291cmNlUmVxdWlyZW1lbnRTdHJpY3QgPSBSZWNvcmQ8XG4gIFJlc291cmNlUmVxdWlyZW1lbnRLZXksXG4gIFJlc291cmNlTWFjc1xuPjtcblxuZXhwb3J0IHR5cGUgUmVzb3VyY2VSZXF1aXJlbWVudEZvcm1Nb2RhbCA9IFJlY29yZDxcbiAgUmVzb3VyY2VSZXF1aXJlbWVudEtleSxcbiAgUmVzb3VyY2VNYWNGb3JtTW9kYWxcbj47XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZXNvdXJjZVZpZXdNb2RlbChcbiAgZGF0YTogc3RyaW5nLFxuICB0eXBlOiAnY3B1JyB8ICdtZW1vcnknLFxuICBwcmVmZXJFbXB0eU9yQz86IGJvb2xlYW4sXG4pOiBSZXNvdXJjZUNvbnRyb2wge1xuICAvLyDlr7nkuo4gJzInIOeahGNwdeWkp+Wwj++8jOinhuWbvuS4iuWxleekuuS4uiAnMmMnXG4gIGlmICh0eXBlID09PSAnY3B1JyAmJiAhaXNOYU4oK2RhdGEpKSB7XG4gICAgZGF0YSA9IGAke2RhdGF9Y2A7XG4gIH1cbiAgaWYgKHR5cGUgPT09ICdtZW1vcnknICYmICFpc05hTigrZGF0YSkpIHtcbiAgICBkYXRhID0gYCR7ZGF0YX1CeXRlc2A7XG4gIH1cbiAgY29uc3QgcmVnID0gL14oXFxkP1xcLj9cXGQrKShbQS1aYS16XSspJC87XG4gIGNvbnN0IHJlcyA9IHtcbiAgICB2YWx1ZTogJycsXG4gICAgdW5pdDogJycsXG4gIH07XG5cbiAgaWYgKCFpc05hTihwYXJzZUZsb2F0KGRhdGEpKSkge1xuICAgIGNvbnN0IF9yZXM6IHN0cmluZ1tdID0gcmVnLmV4ZWMoZGF0YSkgfHwgW107XG4gICAgcmVzLnZhbHVlID0gX3Jlc1sxXSB8fCAnJztcbiAgICBjb25zdCB1bml0ID0gX3Jlc1syXTtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgJ2NwdSc6IHtcbiAgICAgICAgcmVzLnVuaXQgPSBwcmVmZXJFbXB0eU9yQyAmJiB1bml0ID09PSAnYycgPyAnJyA6IHVuaXQgfHwgJ20nO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ21lbW9yeSc6IHtcbiAgICAgICAgcmVzLnVuaXQgPSB1bml0IHx8ICcnO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzO1xufVxuXG5leHBvcnQgY29uc3QgcmVzb3VyY2VVbml0cyA9IHtcbiAgY3B1OiBbXG4gICAge1xuICAgICAgdmFsdWU6ICdtJyxcbiAgICAgIGxhYmVsOiAndW5pdF9tJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIHZhbHVlOiAnYycsXG4gICAgICBsYWJlbDogJ2NvcmUnLFxuICAgIH0sXG4gIF0sXG4gIG1lbW9yeTogWydNaScsICdHaSddLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlc291cmNlVmFsdWUoZGF0YTogUmVzb3VyY2VDb250cm9sIHwgc3RyaW5nKSB7XG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuICBpZiAoZGF0YS52YWx1ZSkge1xuICAgIHJldHVybiAhZGF0YS51bml0IHx8IGRhdGEudW5pdCA9PT0gJ2MnIHx8IGRhdGEudW5pdCA9PT0gJ0J5dGVzJ1xuICAgICAgPyBkYXRhLnZhbHVlXG4gICAgICA6IGAke2RhdGEudmFsdWV9JHtkYXRhLnVuaXR9YDtcbiAgfVxuICByZXR1cm4gJyc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2ZlclJlc291cmNlKHJlc291cmNlOiBSZXNvdXJjZU1hY0Zvcm1Nb2RhbCkge1xuICByZXR1cm4gT2JqZWN0LmtleXMocmVzb3VyY2UpLnJlZHVjZSgoaXRlbSwgdHlwZTogUmVzb3VyY2VNYWNLZXkpID0+IHtcbiAgICBjb25zdCB2YWx1ZSA9IGdldFJlc291cmNlVmFsdWUocmVzb3VyY2VbdHlwZV0pO1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgaXRlbVt0eXBlXSA9IHZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gaXRlbTtcbiAgfSwge30gYXMgUmVzb3VyY2VNYWNzKTtcbn1cbiJdfQ==
@@ -1,20 +0,0 @@
1
- import { inject } from '@angular/core';
2
- import { ActivatedRoute, NavigationEnd, Router, } from '@angular/router';
3
- import { distinctUntilChanged, filter, map, startWith } from 'rxjs';
4
- import { publishRef } from './operators';
5
- export function getParamFromParent(key, snapshot) {
6
- const value = snapshot.paramMap.get(key);
7
- if (value) {
8
- return value;
9
- }
10
- if (snapshot.parent) {
11
- return getParamFromParent(key, snapshot.parent);
12
- }
13
- return '';
14
- }
15
- export function initParamFromParent$(key) {
16
- const router = inject(Router);
17
- const route = inject(ActivatedRoute);
18
- return router.events.pipe(filter(e => e instanceof NavigationEnd), map(({ url }) => url), startWith(route.url), distinctUntilChanged(), map(() => getParamFromParent(key, route.snapshot)), publishRef());
19
- }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL3V0aWxzL3JvdXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFDTCxjQUFjLEVBRWQsYUFBYSxFQUNiLE1BQU0sR0FDUCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXpDLE1BQU0sVUFBVSxrQkFBa0IsQ0FDaEMsR0FBVyxFQUNYLFFBQWdDO0lBRWhDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLElBQUksS0FBSyxFQUFFLENBQUM7UUFDVixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNwQixPQUFPLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxHQUFXO0lBQzlDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDckMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDdkIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLGFBQWEsQ0FBQyxFQUN2QyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBaUIsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQ3BDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQ3BCLG9CQUFvQixFQUFFLEVBQ3RCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQ2xELFVBQVUsRUFBRSxDQUNiLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3RpdmF0ZWRSb3V0ZSxcbiAgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgTmF2aWdhdGlvbkVuZCxcbiAgUm91dGVyLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgcHVibGlzaFJlZiB9IGZyb20gJy4vb3BlcmF0b3JzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFBhcmFtRnJvbVBhcmVudChcbiAga2V5OiBzdHJpbmcsXG4gIHNuYXBzaG90OiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuKTogc3RyaW5nIHtcbiAgY29uc3QgdmFsdWUgPSBzbmFwc2hvdC5wYXJhbU1hcC5nZXQoa2V5KTtcbiAgaWYgKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIGlmIChzbmFwc2hvdC5wYXJlbnQpIHtcbiAgICByZXR1cm4gZ2V0UGFyYW1Gcm9tUGFyZW50KGtleSwgc25hcHNob3QucGFyZW50KTtcbiAgfVxuICByZXR1cm4gJyc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0UGFyYW1Gcm9tUGFyZW50JChrZXk6IHN0cmluZykge1xuICBjb25zdCByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgY29uc3Qgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICByZXR1cm4gcm91dGVyLmV2ZW50cy5waXBlKFxuICAgIGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICBtYXAoKHsgdXJsIH06IE5hdmlnYXRpb25FbmQpID0+IHVybCksXG4gICAgc3RhcnRXaXRoKHJvdXRlLnVybCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBtYXAoKCkgPT4gZ2V0UGFyYW1Gcm9tUGFyZW50KGtleSwgcm91dGUuc25hcHNob3QpKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG59XG4iXX0=
@@ -1,7 +0,0 @@
1
- export function sortByCreationTimestamp(list) {
2
- if (list) {
3
- return [...list].sort((a, b) => +new Date(b.metadata.creationTimestamp) -
4
- +new Date(a.metadata.creationTimestamp));
5
- }
6
- }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1mbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy91dGlscy9zb3J0LWZuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSx1QkFBdUIsQ0FDckMsSUFBUztJQUVULElBQUksSUFBSSxFQUFFLENBQUM7UUFDVCxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ25CLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQ1AsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDO1lBQ3ZDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUMxQyxDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLdWJlcm5ldGVzUmVzb3VyY2UgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzb3J0QnlDcmVhdGlvblRpbWVzdGFtcDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgbGlzdDogVFtdLFxuKTogVFtdIHtcbiAgaWYgKGxpc3QpIHtcbiAgICByZXR1cm4gWy4uLmxpc3RdLnNvcnQoXG4gICAgICAoYSwgYikgPT5cbiAgICAgICAgK25ldyBEYXRlKGIubWV0YWRhdGEuY3JlYXRpb25UaW1lc3RhbXApIC1cbiAgICAgICAgK25ldyBEYXRlKGEubWV0YWRhdGEuY3JlYXRpb25UaW1lc3RhbXApLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==