@alauda-fe/dynamic-plugin-shared 0.0.1-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 (415) hide show
  1. package/README.md +7 -0
  2. package/array-form-table/base-string-map-form.component.d.ts +22 -0
  3. package/array-form-table/form/component.d.ts +106 -0
  4. package/array-form-table/form/index.d.ts +2 -0
  5. package/array-form-table/index.d.ts +10 -0
  6. package/array-form-table/key-value-form/component.d.ts +38 -0
  7. package/array-form-table/key-value-table/component.d.ts +9 -0
  8. package/array-form-table/string-array-form/component.d.ts +41 -0
  9. package/assets/images/abnormal.svg +1 -0
  10. package/assets/images/dark/disconnected.svg +1 -0
  11. package/assets/images/dark/license-abnormal.svg +1 -0
  12. package/assets/images/dark/network-abnormal.svg +1 -0
  13. package/assets/images/dark/no-data.svg +1 -0
  14. package/assets/images/dark/no-message.svg +1 -0
  15. package/assets/images/dark/no-permission.svg +1 -0
  16. package/assets/images/dark/no_realtime_alarm.svg +1 -0
  17. package/assets/images/dark/not-deployed.svg +1 -0
  18. package/assets/images/dark/not-found.svg +1 -0
  19. package/assets/images/dark/not-supported.svg +1 -0
  20. package/assets/images/dark/system-abnormal.svg +1 -0
  21. package/assets/images/light/disconnected.svg +1 -0
  22. package/assets/images/light/license-abnormal.svg +1 -0
  23. package/assets/images/light/network-abnormal.svg +1 -0
  24. package/assets/images/light/no-data.svg +1 -0
  25. package/assets/images/light/no-message.svg +1 -0
  26. package/assets/images/light/no-permission.svg +1 -0
  27. package/assets/images/light/no_realtime_alarm.svg +1 -0
  28. package/assets/images/light/not-deployed.svg +1 -0
  29. package/assets/images/light/not-found.svg +1 -0
  30. package/assets/images/light/not-supported.svg +1 -0
  31. package/assets/images/light/system-abnormal.svg +1 -0
  32. package/assets/images/no-data.png +0 -0
  33. package/async-data/async-data-loader.d.ts +31 -0
  34. package/async-data/error-page/component.d.ts +30 -0
  35. package/async-data/index.d.ts +13 -0
  36. package/async-data/page-state/component.d.ts +21 -0
  37. package/async-data/types.d.ts +29 -0
  38. package/code-editor/code-display-dialog/component.d.ts +17 -0
  39. package/code-editor/code-editor-configs.d.ts +19 -0
  40. package/code-editor/index.d.ts +10 -0
  41. package/code-editor/k8s-yaml-display-dialog/component.d.ts +16 -0
  42. package/code-editor/resource-yaml-display/component.d.ts +21 -0
  43. package/components/card-section/card-section.component.d.ts +9 -0
  44. package/components/confirm-delete/confirm-delete.component.d.ts +57 -0
  45. package/components/confirm-delete/utils.d.ts +25 -0
  46. package/components/current-time/component.d.ts +14 -0
  47. package/components/custom-columns-setting/component.d.ts +16 -0
  48. package/components/custom-columns-setting/index.d.ts +1 -0
  49. package/components/date-range-picker/component.d.ts +55 -0
  50. package/components/date-range-picker/index.d.ts +3 -0
  51. package/components/date-range-picker/type.d.ts +36 -0
  52. package/components/date-range-picker/util.d.ts +11 -0
  53. package/components/disabled-container/disabled-container.component.d.ts +21 -0
  54. package/components/disabled-container/index.d.ts +7 -0
  55. package/components/field-set/column/component.d.ts +10 -0
  56. package/components/field-set/group/component.d.ts +6 -0
  57. package/components/field-set/index.d.ts +7 -0
  58. package/components/field-set/item/component.d.ts +13 -0
  59. package/components/foldable-block/component.d.ts +17 -0
  60. package/components/foldable-item-in-table/component.d.ts +21 -0
  61. package/components/help-document/component.d.ts +29 -0
  62. package/components/help-document/directive.d.ts +20 -0
  63. package/components/help-document/index.d.ts +8 -0
  64. package/components/help-document/service.d.ts +20 -0
  65. package/components/index.d.ts +31 -0
  66. package/components/loading-mask/loading-mask.component.d.ts +13 -0
  67. package/components/page-guard/component/component.d.ts +40 -0
  68. package/components/page-guard/component/helper-directives.d.ts +17 -0
  69. package/components/page-guard/component/page-guard.type.d.ts +86 -0
  70. package/components/page-guard/index.d.ts +12 -0
  71. package/components/password-input/component.d.ts +39 -0
  72. package/components/pod-status/component.d.ts +25 -0
  73. package/components/pod-status/index.d.ts +3 -0
  74. package/components/pod-status/status.d.ts +4 -0
  75. package/components/pod-status/typings.d.ts +16 -0
  76. package/components/relative-time/component.d.ts +15 -0
  77. package/components/resource-label/component.d.ts +25 -0
  78. package/components/resource-multi-select/component.d.ts +41 -0
  79. package/components/resource-multi-select/util.d.ts +10 -0
  80. package/components/search-panel/component.d.ts +16 -0
  81. package/components/search-panel/helper.directive.d.ts +5 -0
  82. package/components/search-panel/search-item/component.d.ts +7 -0
  83. package/components/select-prefix-label/directive.d.ts +17 -0
  84. package/components/status-icon/status-icon.component.d.ts +16 -0
  85. package/components/tags-label/component.d.ts +56 -0
  86. package/components/terminating-tag/component.d.ts +7 -0
  87. package/components/text-ellipsis/component.d.ts +9 -0
  88. package/components/text-tooltip/directive.d.ts +21 -0
  89. package/components/text-with-url/component.d.ts +12 -0
  90. package/components/upload-file/component.d.ts +32 -0
  91. package/components/zero-state/zero-state.component.d.ts +16 -0
  92. package/constants/common.d.ts +64 -0
  93. package/constants/index.d.ts +6 -0
  94. package/constants/k8s.d.ts +12 -0
  95. package/constants/patterns.d.ts +124 -0
  96. package/constants/resource-definitions.d.ts +414 -0
  97. package/constants/status-icons.d.ts +34 -0
  98. package/constants/timezones.d.ts +6 -0
  99. package/directives/aui-code-editor.directive.d.ts +13 -0
  100. package/directives/click-outside.directive.d.ts +12 -0
  101. package/directives/declare.directive.d.ts +8 -0
  102. package/directives/disabled.directive.d.ts +28 -0
  103. package/directives/effect-directive/coerce-number.directive.d.ts +8 -0
  104. package/directives/effect-directive/e2e-attribute-binding.directive.d.ts +10 -0
  105. package/directives/effect-directive/event.directive.d.ts +47 -0
  106. package/directives/effect-directive/index.d.ts +12 -0
  107. package/directives/effect-directive/min-max.directive.d.ts +30 -0
  108. package/directives/effect-directive/trim.directive.d.ts +7 -0
  109. package/directives/effect-directive/validators.directive.d.ts +12 -0
  110. package/directives/feature-gate.directive.d.ts +31 -0
  111. package/directives/index.d.ts +12 -0
  112. package/directives/last-form-item.directive.d.ts +8 -0
  113. package/directives/readonly-field.directive.d.ts +39 -0
  114. package/directives/resize.directive.d.ts +17 -0
  115. package/directives/scroll-border-observer.directive.d.ts +23 -0
  116. package/directives/scroll-to-first-invalid.directive.d.ts +24 -0
  117. package/directives/value-trace.directive.d.ts +27 -0
  118. package/esm2022/alauda-fe-dynamic-plugin-shared.mjs +5 -0
  119. package/esm2022/array-form-table/base-string-map-form.component.mjs +92 -0
  120. package/esm2022/array-form-table/form/component.mjs +266 -0
  121. package/esm2022/array-form-table/form/index.mjs +12 -0
  122. package/esm2022/array-form-table/index.mjs +11 -0
  123. package/esm2022/array-form-table/key-value-form/component.mjs +135 -0
  124. package/esm2022/array-form-table/key-value-table/component.mjs +24 -0
  125. package/esm2022/array-form-table/string-array-form/component.mjs +168 -0
  126. package/esm2022/async-data/async-data-loader.mjs +63 -0
  127. package/esm2022/async-data/error-page/component.mjs +54 -0
  128. package/esm2022/async-data/index.mjs +18 -0
  129. package/esm2022/async-data/page-state/component.mjs +62 -0
  130. package/esm2022/async-data/types.mjs +6 -0
  131. package/esm2022/code-editor/code-display-dialog/component.mjs +35 -0
  132. package/esm2022/code-editor/code-editor-configs.mjs +66 -0
  133. package/esm2022/code-editor/index.mjs +11 -0
  134. package/esm2022/code-editor/k8s-yaml-display-dialog/component.mjs +26 -0
  135. package/esm2022/code-editor/resource-yaml-display/component.mjs +67 -0
  136. package/esm2022/components/card-section/card-section.component.mjs +24 -0
  137. package/esm2022/components/confirm-delete/confirm-delete.component.mjs +192 -0
  138. package/esm2022/components/confirm-delete/utils.mjs +8 -0
  139. package/esm2022/components/current-time/component.mjs +39 -0
  140. package/esm2022/components/custom-columns-setting/component.mjs +75 -0
  141. package/esm2022/components/custom-columns-setting/index.mjs +2 -0
  142. package/esm2022/components/date-range-picker/component.mjs +215 -0
  143. package/esm2022/components/date-range-picker/index.mjs +4 -0
  144. package/esm2022/components/date-range-picker/type.mjs +2 -0
  145. package/esm2022/components/date-range-picker/util.mjs +57 -0
  146. package/esm2022/components/disabled-container/disabled-container.component.mjs +81 -0
  147. package/esm2022/components/disabled-container/index.mjs +8 -0
  148. package/esm2022/components/field-set/column/component.mjs +25 -0
  149. package/esm2022/components/field-set/group/component.mjs +16 -0
  150. package/esm2022/components/field-set/index.mjs +14 -0
  151. package/esm2022/components/field-set/item/component.mjs +41 -0
  152. package/esm2022/components/foldable-block/component.mjs +60 -0
  153. package/esm2022/components/foldable-item-in-table/component.mjs +56 -0
  154. package/esm2022/components/help-document/component.mjs +69 -0
  155. package/esm2022/components/help-document/directive.mjs +70 -0
  156. package/esm2022/components/help-document/index.mjs +9 -0
  157. package/esm2022/components/help-document/service.mjs +43 -0
  158. package/esm2022/components/index.mjs +32 -0
  159. package/esm2022/components/loading-mask/loading-mask.component.mjs +35 -0
  160. package/esm2022/components/page-guard/component/component.mjs +101 -0
  161. package/esm2022/components/page-guard/component/helper-directives.mjs +51 -0
  162. package/esm2022/components/page-guard/component/page-guard.type.mjs +82 -0
  163. package/esm2022/components/page-guard/index.mjs +19 -0
  164. package/esm2022/components/password-input/component.mjs +143 -0
  165. package/esm2022/components/pod-status/component.mjs +49 -0
  166. package/esm2022/components/pod-status/index.mjs +4 -0
  167. package/esm2022/components/pod-status/status.mjs +84 -0
  168. package/esm2022/components/pod-status/typings.mjs +19 -0
  169. package/esm2022/components/relative-time/component.mjs +58 -0
  170. package/esm2022/components/resource-label/component.mjs +100 -0
  171. package/esm2022/components/resource-multi-select/component.mjs +152 -0
  172. package/esm2022/components/resource-multi-select/util.mjs +24 -0
  173. package/esm2022/components/search-panel/component.mjs +51 -0
  174. package/esm2022/components/search-panel/helper.directive.mjs +14 -0
  175. package/esm2022/components/search-panel/search-item/component.mjs +15 -0
  176. package/esm2022/components/select-prefix-label/directive.mjs +89 -0
  177. package/esm2022/components/status-icon/status-icon.component.mjs +56 -0
  178. package/esm2022/components/tags-label/component.mjs +224 -0
  179. package/esm2022/components/terminating-tag/component.mjs +16 -0
  180. package/esm2022/components/text-ellipsis/component.mjs +28 -0
  181. package/esm2022/components/text-tooltip/directive.mjs +71 -0
  182. package/esm2022/components/text-with-url/component.mjs +40 -0
  183. package/esm2022/components/upload-file/component.mjs +95 -0
  184. package/esm2022/components/zero-state/zero-state.component.mjs +51 -0
  185. package/esm2022/constants/common.mjs +86 -0
  186. package/esm2022/constants/index.mjs +7 -0
  187. package/esm2022/constants/k8s.mjs +13 -0
  188. package/esm2022/constants/patterns.mjs +142 -0
  189. package/esm2022/constants/resource-definitions.mjs +424 -0
  190. package/esm2022/constants/status-icons.mjs +65 -0
  191. package/esm2022/constants/timezones.mjs +234 -0
  192. package/esm2022/directives/aui-code-editor.directive.mjs +30 -0
  193. package/esm2022/directives/click-outside.directive.mjs +49 -0
  194. package/esm2022/directives/declare.directive.mjs +27 -0
  195. package/esm2022/directives/disabled.directive.mjs +76 -0
  196. package/esm2022/directives/effect-directive/coerce-number.directive.mjs +54 -0
  197. package/esm2022/directives/effect-directive/e2e-attribute-binding.directive.mjs +57 -0
  198. package/esm2022/directives/effect-directive/event.directive.mjs +129 -0
  199. package/esm2022/directives/effect-directive/index.mjs +21 -0
  200. package/esm2022/directives/effect-directive/min-max.directive.mjs +107 -0
  201. package/esm2022/directives/effect-directive/trim.directive.mjs +40 -0
  202. package/esm2022/directives/effect-directive/validators.directive.mjs +43 -0
  203. package/esm2022/directives/feature-gate.directive.mjs +90 -0
  204. package/esm2022/directives/index.mjs +13 -0
  205. package/esm2022/directives/last-form-item.directive.mjs +18 -0
  206. package/esm2022/directives/readonly-field.directive.mjs +145 -0
  207. package/esm2022/directives/resize.directive.mjs +39 -0
  208. package/esm2022/directives/scroll-border-observer.directive.mjs +77 -0
  209. package/esm2022/directives/scroll-to-first-invalid.directive.mjs +126 -0
  210. package/esm2022/directives/value-trace.directive.mjs +61 -0
  211. package/esm2022/form/base-form-container.mjs +126 -0
  212. package/esm2022/form/base-nested-form-control.mjs +190 -0
  213. package/esm2022/form/errors-mapper/base-errors-mapper.mjs +41 -0
  214. package/esm2022/form/errors-mapper/default-errors-mapper.service.mjs +65 -0
  215. package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +53 -0
  216. package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +109 -0
  217. package/esm2022/form/errors-mapper/index.mjs +10 -0
  218. package/esm2022/form/errors-mapper/types.mjs +2 -0
  219. package/esm2022/form/index.mjs +6 -0
  220. package/esm2022/form/utils.mjs +61 -0
  221. package/esm2022/form/validators/async-function-validator.directive.mjs +49 -0
  222. package/esm2022/form/validators/dns1123-subdomain.mjs +42 -0
  223. package/esm2022/form/validators/function-validator.directive.mjs +49 -0
  224. package/esm2022/form/validators/index.mjs +10 -0
  225. package/esm2022/form/validators/maxlength-minlength-validator.directive.mjs +71 -0
  226. package/esm2022/form/validators/not-be-validator.directive.mjs +56 -0
  227. package/esm2022/form/validators/one-of-validator.directive.mjs +57 -0
  228. package/esm2022/form/validators/resource-limit.mjs +79 -0
  229. package/esm2022/form/validators/strong-password/index.mjs +4 -0
  230. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +15 -0
  231. package/esm2022/form/validators/strong-password/strong-password-validator.directive.mjs +171 -0
  232. package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +36 -0
  233. package/esm2022/form/validators/utils.mjs +155 -0
  234. package/esm2022/index.mjs +15 -0
  235. package/esm2022/k8s-resource-list/footer/component.mjs +156 -0
  236. package/esm2022/k8s-resource-list/index.mjs +18 -0
  237. package/esm2022/k8s-resource-list/k8s-resource-list.mjs +224 -0
  238. package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +174 -0
  239. package/esm2022/k8s-resource-list/types.mjs +11 -0
  240. package/esm2022/k8s-resource-list/utils.mjs +84 -0
  241. package/esm2022/k8s-shared/constants.mjs +53 -0
  242. package/esm2022/k8s-shared/index.mjs +12 -0
  243. package/esm2022/k8s-shared/k8s-resource-translate-key.pipe.mjs +31 -0
  244. package/esm2022/k8s-shared/k8s-shared-util.service.mjs +152 -0
  245. package/esm2022/k8s-shared/resource-mark/component.mjs +54 -0
  246. package/esm2022/k8s-shared/resource-mark/util.mjs +137 -0
  247. package/esm2022/k8s-shared/update-description-dialog/component.mjs +66 -0
  248. package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +59 -0
  249. package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +76 -0
  250. package/esm2022/page-deactivate/deactivate.directive.mjs +50 -0
  251. package/esm2022/page-deactivate/deactivate.guard.mjs +41 -0
  252. package/esm2022/page-deactivate/deactivate.service.mjs +78 -0
  253. package/esm2022/page-deactivate/index.mjs +4 -0
  254. package/esm2022/pipes/calc.pipe.mjs +21 -0
  255. package/esm2022/pipes/cron-human-readable.pipe.mjs +30 -0
  256. package/esm2022/pipes/crontab-next.pipe.mjs +67 -0
  257. package/esm2022/pipes/duration.pipe.mjs +51 -0
  258. package/esm2022/pipes/field-not-available.pipe.mjs +25 -0
  259. package/esm2022/pipes/img-header.pipe.mjs +18 -0
  260. package/esm2022/pipes/img-theme.pipe.mjs +38 -0
  261. package/esm2022/pipes/index.mjs +19 -0
  262. package/esm2022/pipes/keyvalue.pipe.mjs +20 -0
  263. package/esm2022/pipes/marked.pipe.mjs +18 -0
  264. package/esm2022/pipes/minimum-format.pipe.mjs +25 -0
  265. package/esm2022/pipes/page-env.pipe.mjs +69 -0
  266. package/esm2022/pipes/parse-json-translate.pipe.mjs +28 -0
  267. package/esm2022/pipes/parse-json.pipe.mjs +22 -0
  268. package/esm2022/pipes/pure.pipe.mjs +26 -0
  269. package/esm2022/pipes/safe.pipe.mjs +49 -0
  270. package/esm2022/pipes/sanitize.pipe.mjs +31 -0
  271. package/esm2022/pipes/time.pipe.mjs +113 -0
  272. package/esm2022/pipes/timezone-display.pipe.mjs +21 -0
  273. package/esm2022/services/form-row-duplicate/form-row-duplicate.service.mjs +280 -0
  274. package/esm2022/services/index.mjs +4 -0
  275. package/esm2022/services/on-resize.service.mjs +52 -0
  276. package/esm2022/services/yaml-util.service.mjs +99 -0
  277. package/esm2022/types/common.mjs +6 -0
  278. package/esm2022/types/helpers.mjs +12 -0
  279. package/esm2022/types/index.mjs +9 -0
  280. package/esm2022/types/k8s/core.mjs +2 -0
  281. package/esm2022/types/k8s/crd.mjs +57 -0
  282. package/esm2022/types/k8s/index.mjs +4 -0
  283. package/esm2022/types/k8s/raw.mjs +77 -0
  284. package/esm2022/types/schema.mjs +2 -0
  285. package/esm2022/utils/browser.mjs +21 -0
  286. package/esm2022/utils/cache-store.mjs +83 -0
  287. package/esm2022/utils/color-helpers.mjs +6 -0
  288. package/esm2022/utils/common.mjs +315 -0
  289. package/esm2022/utils/cron-util.mjs +44 -0
  290. package/esm2022/utils/decorators.mjs +137 -0
  291. package/esm2022/utils/disabled-state.mjs +47 -0
  292. package/esm2022/utils/format-number.mjs +227 -0
  293. package/esm2022/utils/index.mjs +24 -0
  294. package/esm2022/utils/local-storage-constants.mjs +2 -0
  295. package/esm2022/utils/node.mjs +18 -0
  296. package/esm2022/utils/observable.mjs +32 -0
  297. package/esm2022/utils/operators.mjs +38 -0
  298. package/esm2022/utils/request-pool.mjs +37 -0
  299. package/esm2022/utils/resources.mjs +66 -0
  300. package/esm2022/utils/router.mjs +20 -0
  301. package/esm2022/utils/sort-fn.mjs +7 -0
  302. package/esm2022/utils/tree.mjs +79 -0
  303. package/esm2022/utils/unit.mjs +191 -0
  304. package/esm2022/utils/version.mjs +76 -0
  305. package/esm2022/utils/with-load-state.mjs +21 -0
  306. package/esm2022/utils/workload.mjs +183 -0
  307. package/esm2022/utils/workspace.mjs +59 -0
  308. package/esm2022/utils/yaml.mjs +54 -0
  309. package/fesm2022/alauda-fe-dynamic-plugin-shared.mjs +11151 -0
  310. package/fesm2022/alauda-fe-dynamic-plugin-shared.mjs.map +1 -0
  311. package/form/base-form-container.d.ts +41 -0
  312. package/form/base-nested-form-control.d.ts +58 -0
  313. package/form/errors-mapper/base-errors-mapper.d.ts +13 -0
  314. package/form/errors-mapper/default-errors-mapper.service.d.ts +10 -0
  315. package/form/errors-mapper/errors-mapper-component/component.d.ts +19 -0
  316. package/form/errors-mapper/errors-mapper.directive.d.ts +39 -0
  317. package/form/errors-mapper/index.d.ts +6 -0
  318. package/form/errors-mapper/types.d.ts +16 -0
  319. package/form/index.d.ts +5 -0
  320. package/form/utils.d.ts +40 -0
  321. package/form/validators/async-function-validator.directive.d.ts +11 -0
  322. package/form/validators/dns1123-subdomain.d.ts +28 -0
  323. package/form/validators/function-validator.directive.d.ts +11 -0
  324. package/form/validators/index.d.ts +9 -0
  325. package/form/validators/maxlength-minlength-validator.directive.d.ts +20 -0
  326. package/form/validators/not-be-validator.directive.d.ts +12 -0
  327. package/form/validators/one-of-validator.directive.d.ts +12 -0
  328. package/form/validators/resource-limit.d.ts +17 -0
  329. package/form/validators/strong-password/index.d.ts +3 -0
  330. package/form/validators/strong-password/strong-password-tooltip/component.d.ts +6 -0
  331. package/form/validators/strong-password/strong-password-validator.directive.d.ts +34 -0
  332. package/form/validators/strong-password/strong-password-validator.module.d.ts +12 -0
  333. package/form/validators/utils.d.ts +67 -0
  334. package/index.d.ts +14 -0
  335. package/k8s-resource-list/footer/component.d.ts +42 -0
  336. package/k8s-resource-list/index.d.ts +13 -0
  337. package/k8s-resource-list/k8s-resource-list.d.ts +42 -0
  338. package/k8s-resource-list/k8s-resource-paged-list.d.ts +61 -0
  339. package/k8s-resource-list/types.d.ts +70 -0
  340. package/k8s-resource-list/utils.d.ts +19 -0
  341. package/k8s-shared/constants.d.ts +7 -0
  342. package/k8s-shared/index.d.ts +11 -0
  343. package/k8s-shared/k8s-resource-translate-key.pipe.d.ts +9 -0
  344. package/k8s-shared/k8s-shared-util.service.d.ts +48 -0
  345. package/k8s-shared/resource-mark/component.d.ts +16 -0
  346. package/k8s-shared/resource-mark/util.d.ts +2 -0
  347. package/k8s-shared/update-description-dialog/component.d.ts +33 -0
  348. package/k8s-shared/update-display-name-dialog/component.d.ts +27 -0
  349. package/k8s-shared/update-key-value-dialog/component.d.ts +38 -0
  350. package/package.json +56 -0
  351. package/page-deactivate/deactivate.directive.d.ts +18 -0
  352. package/page-deactivate/deactivate.guard.d.ts +13 -0
  353. package/page-deactivate/deactivate.service.d.ts +28 -0
  354. package/page-deactivate/index.d.ts +3 -0
  355. package/pipes/calc.pipe.d.ts +11 -0
  356. package/pipes/cron-human-readable.pipe.d.ts +9 -0
  357. package/pipes/crontab-next.pipe.d.ts +18 -0
  358. package/pipes/duration.pipe.d.ts +10 -0
  359. package/pipes/field-not-available.pipe.d.ts +13 -0
  360. package/pipes/img-header.pipe.d.ts +7 -0
  361. package/pipes/img-theme.pipe.d.ts +13 -0
  362. package/pipes/index.d.ts +18 -0
  363. package/pipes/keyvalue.pipe.d.ts +9 -0
  364. package/pipes/marked.pipe.d.ts +8 -0
  365. package/pipes/minimum-format.pipe.d.ts +10 -0
  366. package/pipes/page-env.pipe.d.ts +34 -0
  367. package/pipes/parse-json-translate.pipe.d.ts +8 -0
  368. package/pipes/parse-json.pipe.d.ts +7 -0
  369. package/pipes/pure.pipe.d.ts +17 -0
  370. package/pipes/safe.pipe.d.ts +10 -0
  371. package/pipes/sanitize.pipe.d.ts +10 -0
  372. package/pipes/time.pipe.d.ts +40 -0
  373. package/pipes/timezone-display.pipe.d.ts +10 -0
  374. package/services/form-row-duplicate/form-row-duplicate.service.d.ts +45 -0
  375. package/services/index.d.ts +3 -0
  376. package/services/on-resize.service.d.ts +20 -0
  377. package/services/yaml-util.service.d.ts +20 -0
  378. package/styles/ansi-color.scss +131 -0
  379. package/styles/global.scss +904 -0
  380. package/styles/lib.scss +1 -0
  381. package/styles/markdown-body.scss +107 -0
  382. package/styles/mixins.scss +710 -0
  383. package/styles/var.scss +30 -0
  384. package/types/common.d.ts +42 -0
  385. package/types/helpers.d.ts +35 -0
  386. package/types/index.d.ts +8 -0
  387. package/types/k8s/core.d.ts +100 -0
  388. package/types/k8s/crd.d.ts +497 -0
  389. package/types/k8s/index.d.ts +3 -0
  390. package/types/k8s/raw.d.ts +860 -0
  391. package/types/schema.d.ts +14 -0
  392. package/utils/browser.d.ts +4 -0
  393. package/utils/cache-store.d.ts +35 -0
  394. package/utils/color-helpers.d.ts +4 -0
  395. package/utils/common.d.ts +64 -0
  396. package/utils/cron-util.d.ts +8 -0
  397. package/utils/decorators.d.ts +14 -0
  398. package/utils/disabled-state.d.ts +20 -0
  399. package/utils/format-number.d.ts +11 -0
  400. package/utils/index.d.ts +23 -0
  401. package/utils/local-storage-constants.d.ts +1 -0
  402. package/utils/node.d.ts +8 -0
  403. package/utils/observable.d.ts +5 -0
  404. package/utils/operators.d.ts +22 -0
  405. package/utils/request-pool.d.ts +12 -0
  406. package/utils/resources.d.ts +19 -0
  407. package/utils/router.d.ts +3 -0
  408. package/utils/sort-fn.d.ts +2 -0
  409. package/utils/tree.d.ts +16 -0
  410. package/utils/unit.d.ts +21 -0
  411. package/utils/version.d.ts +39 -0
  412. package/utils/with-load-state.d.ts +11 -0
  413. package/utils/workload.d.ts +66 -0
  414. package/utils/workspace.d.ts +28 -0
  415. package/utils/yaml.d.ts +11 -0
@@ -0,0 +1,84 @@
1
+ import { get } from 'lodash-es';
2
+ import { PodStatusEnum } from './typings';
3
+ // reference: https://bitbucket.org/mathildetech/link/src/c81161f02f981904b716462a305e09414e5617d3/src/backend/resource/common/pod.go#lines-179
4
+ export function getPodStatus(pod) {
5
+ let reason = pod.status.phase || pod.status.reason;
6
+ const { initializing, reason: initReason } = getPodInitStatus(pod, reason);
7
+ reason = initializing ? initReason : getPodContainerStatus(pod, reason);
8
+ if (pod.metadata.deletionTimestamp && pod.status.reason === 'NodeLost') {
9
+ reason = 'Unknown';
10
+ }
11
+ else if (pod.metadata.deletionTimestamp) {
12
+ reason = 'Terminating';
13
+ }
14
+ return reason;
15
+ }
16
+ function getPodContainerStatus(pod, reason) {
17
+ const containerStatuses = get(pod, ['status', 'containerStatuses'], []);
18
+ for (let i = 0, len = containerStatuses.length; i < len; i++) {
19
+ const container = containerStatuses[i];
20
+ let waitingReason, terminatedReason;
21
+ if ((waitingReason = get(container, ['state', 'waiting', 'reason']))) {
22
+ return waitingReason;
23
+ }
24
+ if ((terminatedReason = get(container, ['state', 'terminated', 'reason']))) {
25
+ return terminatedReason;
26
+ }
27
+ if (get(container, ['state', 'terminated'])) {
28
+ const { signal, exitCode } = container.state.terminated;
29
+ return signal === 0 ? `ExitCode:${exitCode}` : `Signal:${signal}`;
30
+ }
31
+ }
32
+ return reason;
33
+ }
34
+ function getPodInitStatus(pod, reason) {
35
+ let initializing = false;
36
+ const initContainerStatuses = get(pod, ['status', 'initContainerStatuses'], []);
37
+ for (let i = initContainerStatuses.length - 1; i >= 0; i--) {
38
+ const status = initContainerStatuses[i];
39
+ if (get(status, ['state', 'terminated', 'exitCode']) === 0) {
40
+ continue;
41
+ }
42
+ let waitingReason;
43
+ const terminated = get(status, ['state', 'terminated']);
44
+ if (terminated) {
45
+ reason = terminated.reason
46
+ ? `Init:${terminated.reason}`
47
+ : terminated.signal === 0
48
+ ? `Init:ExitCode:${terminated.exitCode}`
49
+ : `Init:Signal:${terminated.signal}`;
50
+ }
51
+ else if ((waitingReason = get(status, ['state', 'waiting', reason])) &&
52
+ waitingReason !== 'PodInitializing') {
53
+ reason = `Initing:${waitingReason}`;
54
+ }
55
+ else {
56
+ reason = `Initing:${i}/${pod.spec.initContainers.length}`;
57
+ }
58
+ initializing = true;
59
+ break;
60
+ }
61
+ return { initializing, reason };
62
+ }
63
+ // 将 getPodStatus 得到的多种状态映射到标签类型
64
+ // reference: https://bitbucket.org/mathildetech/link/src/c81161f02f981904b716462a305e09414e5617d3/src/backend/resource/common/podinfo.go#lines-68
65
+ export function getPodAggregatedStatus(status) {
66
+ if (status.split(':')[0] === 'Initing' ||
67
+ [
68
+ 'Initing',
69
+ 'Pending',
70
+ 'PodInitializing',
71
+ 'ContainerCreating',
72
+ 'Terminating',
73
+ ].includes(status)) {
74
+ return PodStatusEnum.pending;
75
+ }
76
+ if (status === 'Completed') {
77
+ return PodStatusEnum.completed;
78
+ }
79
+ if (status === 'Running') {
80
+ return PodStatusEnum.running;
81
+ }
82
+ return PodStatusEnum.error;
83
+ }
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2NvbXBvbmVudHMvcG9kLXN0YXR1cy9zdGF0dXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUloQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTFDLCtJQUErSTtBQUMvSSxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQVE7SUFDbkMsSUFBSSxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDbkQsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzNFLE1BQU0sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBRXhFLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUN2RSxNQUFNLEdBQUcsU0FBUyxDQUFDO0lBQ3JCLENBQUM7U0FBTSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUMxQyxNQUFNLEdBQUcsYUFBYSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQsU0FBUyxxQkFBcUIsQ0FBQyxHQUFRLEVBQUUsTUFBYztJQUNyRCxNQUFNLGlCQUFpQixHQUFzQixHQUFHLENBQzlDLEdBQUcsRUFDSCxDQUFDLFFBQVEsRUFBRSxtQkFBbUIsQ0FB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QUcsSUFBSSxDQUFDO1FBQ3BCLE1BQU07SUFDUixDQUFDO0lBQ0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQztBQUNsQyxDQUFDO0FBRUQsZ0NBQWdDO0FBQ2hDLGtKQUFrSjtBQUNsSixNQUFNLFVBQVUsc0JBQXNCLENBQUMsTUFBYztJQUNuRCxJQUNFLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUztRQUNsQztZQUNFLFNBQVM7WUFDVCxTQUFTO1lBQ1QsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixhQUFhO1NBQ2QsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQ2xCLENBQUM7UUFDRCxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksTUFBTSxLQUFLLFdBQVcsRUFBRSxDQUFDO1FBQzNCLE9BQU8sYUFBYSxDQUFDLFNBQVMsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDekIsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFRCxPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IENvbnRhaW5lclN0YXR1cywgUG9kIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5pbXBvcnQgeyBQb2RTdGF0dXNFbnVtIH0gZnJvbSAnLi90eXBpbmdzJztcblxuLy8gcmVmZXJlbmNlOiBodHRwczovL2JpdGJ1Y2tldC5vcmcvbWF0aGlsZGV0ZWNoL2xpbmsvc3JjL2M4MTE2MWYwMmY5ODE5MDRiNzE2NDYyYTMwNWUwOTQxNGU1NjE3ZDMvc3JjL2JhY2tlbmQvcmVzb3VyY2UvY29tbW9uL3BvZC5nbyNsaW5lcy0xNzlcbmV4cG9ydCBmdW5jdGlvbiBnZXRQb2RTdGF0dXMocG9kOiBQb2QpOiBzdHJpbmcge1xuICBsZXQgcmVhc29uID0gcG9kLnN0YXR1cy5waGFzZSB8fCBwb2Quc3RhdHVzLnJlYXNvbjtcbiAgY29uc3QgeyBpbml0aWFsaXppbmcsIHJlYXNvbjogaW5pdFJlYXNvbiB9ID0gZ2V0UG9kSW5pdFN0YXR1cyhwb2QsIHJlYXNvbik7XG4gIHJlYXNvbiA9IGluaXRpYWxpemluZyA/IGluaXRSZWFzb24gOiBnZXRQb2RDb250YWluZXJTdGF0dXMocG9kLCByZWFzb24pO1xuXG4gIGlmIChwb2QubWV0YWRhdGEuZGVsZXRpb25UaW1lc3RhbXAgJiYgcG9kLnN0YXR1cy5yZWFzb24gPT09ICdOb2RlTG9zdCcpIHtcbiAgICByZWFzb24gPSAnVW5rbm93bic7XG4gIH0gZWxzZSBpZiAocG9kLm1ldGFkYXRhLmRlbGV0aW9uVGltZXN0YW1wKSB7XG4gICAgcmVhc29uID0gJ1Rlcm1pbmF0aW5nJztcbiAgfVxuICByZXR1cm4gcmVhc29uO1xufVxuXG5mdW5jdGlvbiBnZXRQb2RDb250YWluZXJTdGF0dXMocG9kOiBQb2QsIHJlYXNvbjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgY29udGFpbmVyU3RhdHVzZXM6IENvbnRhaW5lclN0YXR1c1tdID0gZ2V0KFxuICAgIHBvZCxcbiAgICBbJ3N0YXR1cycsICdjb250YWluZXJTdGF0dXNlcyddLFxuICAgIFtdLFxuICApO1xuICBmb3IgKGxldCBpID0gMCwgbGVuID0gY29udGFpbmVyU3RhdHVzZXMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgICBjb25zdCBjb250YWluZXIgPSBjb250YWluZXJTdGF0dXNlc1tpXTtcbiAgICBsZXQgd2FpdGluZ1JlYXNvbiwgdGVybWluYXRlZFJlYXNvbjtcbiAgICBpZiAoKHdhaXRpbmdSZWFzb24gPSBnZXQoY29udGFpbmVyLCBbJ3N0YXRlJywgJ3dhaXRpbmcnLCAncmVhc29uJ10pKSkge1xuICAgICAgcmV0dXJuIHdhaXRpbmdSZWFzb247XG4gICAgfVxuICAgIGlmIChcbiAgICAgICh0ZXJtaW5hdGVkUmVhc29uID0gZ2V0KGNvbnRhaW5lciwgWydzdGF0ZScsICd0ZXJtaW5hdGVkJywgJ3JlYXNvbiddKSlcbiAgICApIHtcbiAgICAgIHJldHVybiB0ZXJtaW5hdGVkUmVhc29uO1xuICAgIH1cbiAgICBpZiAoZ2V0KGNvbnRhaW5lciwgWydzdGF0ZScsICd0ZXJtaW5hdGVkJ10pKSB7XG4gICAgICBjb25zdCB7IHNpZ25hbCwgZXhpdENvZGUgfSA9IGNvbnRhaW5lci5zdGF0ZS50ZXJtaW5hdGVkO1xuICAgICAgcmV0dXJuIHNpZ25hbCA9PT0gMCA/IGBFeGl0Q29kZToke2V4aXRDb2RlfWAgOiBgU2lnbmFsOiR7c2lnbmFsfWA7XG4gICAgfVxuICB9XG4gIHJldHVybiByZWFzb247XG59XG5cbmZ1bmN0aW9uIGdldFBvZEluaXRTdGF0dXMocG9kOiBQb2QsIHJlYXNvbjogc3RyaW5nKSB7XG4gIGxldCBpbml0aWFsaXppbmcgPSBmYWxzZTtcbiAgY29uc3QgaW5pdENvbnRhaW5lclN0YXR1c2VzID0gZ2V0KFxuICAgIHBvZCxcbiAgICBbJ3N0YXR1cycsICdpbml0Q29udGFpbmVyU3RhdHVzZXMnXSxcbiAgICBbXSBhcyBDb250YWluZXJTdGF0dXNbXSxcbiAgKTtcbiAgZm9yIChsZXQgaSA9IGluaXRDb250YWluZXJTdGF0dXNlcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgIGNvbnN0IHN0YXR1cyA9IGluaXRDb250YWluZXJTdGF0dXNlc1tpXTtcbiAgICBpZiAoZ2V0KHN0YXR1cywgWydzdGF0ZScsICd0ZXJtaW5hdGVkJywgJ2V4aXRDb2RlJ10pID09PSAwKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgbGV0IHdhaXRpbmdSZWFzb246IHN0cmluZztcbiAgICBjb25zdCB0ZXJtaW5hdGVkID0gZ2V0KHN0YXR1cywgWydzdGF0ZScsICd0ZXJtaW5hdGVkJ10pO1xuICAgIGlmICh0ZXJtaW5hdGVkKSB7XG4gICAgICByZWFzb24gPSB0ZXJtaW5hdGVkLnJlYXNvblxuICAgICAgICA/IGBJbml0OiR7dGVybWluYXRlZC5yZWFzb259YFxuICAgICAgICA6IHRlcm1pbmF0ZWQuc2lnbmFsID09PSAwXG4gICAgICAgICAgPyBgSW5pdDpFeGl0Q29kZToke3Rlcm1pbmF0ZWQuZXhpdENvZGV9YFxuICAgICAgICAgIDogYEluaXQ6U2lnbmFsOiR7dGVybWluYXRlZC5zaWduYWx9YDtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgKHdhaXRpbmdSZWFzb24gPSBnZXQoc3RhdHVzLCBbJ3N0YXRlJywgJ3dhaXRpbmcnLCByZWFzb25dKSkgJiZcbiAgICAgIHdhaXRpbmdSZWFzb24gIT09ICdQb2RJbml0aWFsaXppbmcnXG4gICAgKSB7XG4gICAgICByZWFzb24gPSBgSW5pdGluZzoke3dhaXRpbmdSZWFzb259YDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVhc29uID0gYEluaXRpbmc6JHtpfS8ke3BvZC5zcGVjLmluaXRDb250YWluZXJzLmxlbmd0aH1gO1xuICAgIH1cbiAgICBpbml0aWFsaXppbmcgPSB0cnVlO1xuICAgIGJyZWFrO1xuICB9XG4gIHJldHVybiB7IGluaXRpYWxpemluZywgcmVhc29uIH07XG59XG5cbi8vIOWwhiBnZXRQb2RTdGF0dXMg5b6X5Yiw55qE5aSa56eN54q25oCB5pig5bCE5Yiw5qCH562+57G75Z6LXG4vLyByZWZlcmVuY2U6IGh0dHBzOi8vYml0YnVja2V0Lm9yZy9tYXRoaWxkZXRlY2gvbGluay9zcmMvYzgxMTYxZjAyZjk4MTkwNGI3MTY0NjJhMzA1ZTA5NDE0ZTU2MTdkMy9zcmMvYmFja2VuZC9yZXNvdXJjZS9jb21tb24vcG9kaW5mby5nbyNsaW5lcy02OFxuZXhwb3J0IGZ1bmN0aW9uIGdldFBvZEFnZ3JlZ2F0ZWRTdGF0dXMoc3RhdHVzOiBzdHJpbmcpOiBQb2RTdGF0dXNFbnVtIHtcbiAgaWYgKFxuICAgIHN0YXR1cy5zcGxpdCgnOicpWzBdID09PSAnSW5pdGluZycgfHxcbiAgICBbXG4gICAgICAnSW5pdGluZycsXG4gICAgICAnUGVuZGluZycsXG4gICAgICAnUG9kSW5pdGlhbGl6aW5nJyxcbiAgICAgICdDb250YWluZXJDcmVhdGluZycsXG4gICAgICAnVGVybWluYXRpbmcnLFxuICAgIF0uaW5jbHVkZXMoc3RhdHVzKVxuICApIHtcbiAgICByZXR1cm4gUG9kU3RhdHVzRW51bS5wZW5kaW5nO1xuICB9XG5cbiAgaWYgKHN0YXR1cyA9PT0gJ0NvbXBsZXRlZCcpIHtcbiAgICByZXR1cm4gUG9kU3RhdHVzRW51bS5jb21wbGV0ZWQ7XG4gIH1cbiAgaWYgKHN0YXR1cyA9PT0gJ1J1bm5pbmcnKSB7XG4gICAgcmV0dXJuIFBvZFN0YXR1c0VudW0ucnVubmluZztcbiAgfVxuXG4gIHJldHVybiBQb2RTdGF0dXNFbnVtLmVycm9yO1xufVxuIl19
@@ -0,0 +1,19 @@
1
+ import { GenericStatusColor, GenericStatusIcon } from '../../constants';
2
+ // http://confluence.alaudatech.com/pages/viewpage.action?pageId=50824334
3
+ export var PodStatusEnum;
4
+ (function (PodStatusEnum) {
5
+ PodStatusEnum["running"] = "running";
6
+ PodStatusEnum["pending"] = "pending";
7
+ PodStatusEnum["completed"] = "completed";
8
+ PodStatusEnum["error"] = "error";
9
+ })(PodStatusEnum || (PodStatusEnum = {}));
10
+ export const PodStatusColorMapper = {
11
+ [PodStatusEnum.running]: GenericStatusColor.Running,
12
+ [PodStatusEnum.completed]: GenericStatusColor.Stopped,
13
+ [PodStatusEnum.error]: GenericStatusColor.Failed,
14
+ };
15
+ export const PodStatusIconMapper = {
16
+ [PodStatusEnum.completed]: GenericStatusIcon.Check,
17
+ [PodStatusEnum.error]: GenericStatusIcon.Error,
18
+ };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwaW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy9jb21wb25lbnRzL3BvZC1zdGF0dXMvdHlwaW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV4RSx5RUFBeUU7QUFDekUsTUFBTSxDQUFOLElBQVksYUFLWDtBQUxELFdBQVksYUFBYTtJQUN2QixvQ0FBbUIsQ0FBQTtJQUNuQixvQ0FBbUIsQ0FBQTtJQUNuQix3Q0FBdUIsQ0FBQTtJQUN2QixnQ0FBZSxDQUFBO0FBQ2pCLENBQUMsRUFMVyxhQUFhLEtBQWIsYUFBYSxRQUt4QjtBQUVELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHO0lBQ2xDLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxFQUFFLGtCQUFrQixDQUFDLE9BQU87SUFDbkQsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQUUsa0JBQWtCLENBQUMsT0FBTztJQUNyRCxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxNQUFNO0NBQ2pELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRztJQUNqQyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxLQUFLO0lBQ2xELENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLGlCQUFpQixDQUFDLEtBQUs7Q0FDL0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdlbmVyaWNTdGF0dXNDb2xvciwgR2VuZXJpY1N0YXR1c0ljb24gfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuXG4vLyBodHRwOi8vY29uZmx1ZW5jZS5hbGF1ZGF0ZWNoLmNvbS9wYWdlcy92aWV3cGFnZS5hY3Rpb24/cGFnZUlkPTUwODI0MzM0XG5leHBvcnQgZW51bSBQb2RTdGF0dXNFbnVtIHtcbiAgcnVubmluZyA9ICdydW5uaW5nJyxcbiAgcGVuZGluZyA9ICdwZW5kaW5nJyxcbiAgY29tcGxldGVkID0gJ2NvbXBsZXRlZCcsXG4gIGVycm9yID0gJ2Vycm9yJyxcbn1cblxuZXhwb3J0IGNvbnN0IFBvZFN0YXR1c0NvbG9yTWFwcGVyID0ge1xuICBbUG9kU3RhdHVzRW51bS5ydW5uaW5nXTogR2VuZXJpY1N0YXR1c0NvbG9yLlJ1bm5pbmcsXG4gIFtQb2RTdGF0dXNFbnVtLmNvbXBsZXRlZF06IEdlbmVyaWNTdGF0dXNDb2xvci5TdG9wcGVkLFxuICBbUG9kU3RhdHVzRW51bS5lcnJvcl06IEdlbmVyaWNTdGF0dXNDb2xvci5GYWlsZWQsXG59O1xuXG5leHBvcnQgY29uc3QgUG9kU3RhdHVzSWNvbk1hcHBlciA9IHtcbiAgW1BvZFN0YXR1c0VudW0uY29tcGxldGVkXTogR2VuZXJpY1N0YXR1c0ljb24uQ2hlY2ssXG4gIFtQb2RTdGF0dXNFbnVtLmVycm9yXTogR2VuZXJpY1N0YXR1c0ljb24uRXJyb3IsXG59O1xuIl19
@@ -0,0 +1,58 @@
1
+ import { TooltipModule } from '@alauda/ui';
2
+ import { TranslateService } from '@alauda-fe/dynamic-plugin-sdk';
3
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
4
+ import dayjs from 'dayjs';
5
+ import { Subject, distinctUntilChanged, takeUntil } from 'rxjs';
6
+ import { RelativeTimePipe, StandardTimePipe } from '../../pipes';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@alauda-fe/dynamic-plugin-sdk";
9
+ import * as i2 from "@alauda/ui";
10
+ export class RelativeTimeComponent {
11
+ constructor(cdr, translate) {
12
+ this.cdr = cdr;
13
+ this.translate = translate;
14
+ this.destroy$ = new Subject();
15
+ }
16
+ ngOnInit() {
17
+ this.translate.locale$
18
+ .pipe(distinctUntilChanged(), takeUntil(this.destroy$))
19
+ .subscribe(() => {
20
+ this.cdr.markForCheck();
21
+ });
22
+ }
23
+ ngOnDestroy() {
24
+ this.destroy$.next();
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: RelativeTimeComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: RelativeTimeComponent, isStandalone: true, selector: "acl-relative-time", inputs: { time: "time" }, ngImport: i0, template: `
28
+ <span
29
+ [auiTooltip]="time | aclStandardTime"
30
+ [auiTooltipDisabled]="!time"
31
+ auiTooltipType="info"
32
+ >
33
+ {{ time | aclRelativeTime }}
34
+ </span>
35
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i2.TooltipDirective, selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick", "auiTooltipAnimType"], outputs: ["auiTooltipVisibleChange"], exportAs: ["auiTooltip"] }, { kind: "pipe", type: StandardTimePipe, name: "aclStandardTime" }, { kind: "pipe", type: RelativeTimePipe, name: "aclRelativeTime" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: RelativeTimeComponent, decorators: [{
38
+ type: Component,
39
+ args: [{
40
+ selector: 'acl-relative-time',
41
+ template: `
42
+ <span
43
+ [auiTooltip]="time | aclStandardTime"
44
+ [auiTooltipDisabled]="!time"
45
+ auiTooltipType="info"
46
+ >
47
+ {{ time | aclRelativeTime }}
48
+ </span>
49
+ `,
50
+ preserveWhitespaces: false,
51
+ changeDetection: ChangeDetectionStrategy.OnPush,
52
+ standalone: true,
53
+ imports: [TooltipModule, StandardTimePipe, RelativeTimePipe],
54
+ }]
55
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.TranslateService }], propDecorators: { time: [{
56
+ type: Input
57
+ }] } });
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2NvbXBvbmVudHMvcmVsYXRpdmUtdGltZS9jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUFrQmpFLE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFDbUIsR0FBc0IsRUFDdEIsU0FBMkI7UUFEM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFKN0IsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFLN0MsQ0FBQztJQUtKLFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU87YUFDbkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN0RCxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDOzhHQXJCVSxxQkFBcUI7a0dBQXJCLHFCQUFxQix1R0FkdEI7Ozs7Ozs7O0dBUVQsMkRBSVMsYUFBYSx3V0FBRSxnQkFBZ0IsbURBQUUsZ0JBQWdCOzsyRkFFaEQscUJBQXFCO2tCQWhCakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixRQUFRLEVBQUU7Ozs7Ozs7O0dBUVQ7b0JBQ0QsbUJBQW1CLEVBQUUsS0FBSztvQkFDMUIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7aUJBQzdEO3FIQVVDLElBQUk7c0JBREgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAYWxhdWRhLWZlL2R5bmFtaWMtcGx1Z2luLXNkayc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgeyBTdWJqZWN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFJlbGF0aXZlVGltZVBpcGUsIFN0YW5kYXJkVGltZVBpcGUgfSBmcm9tICcuLi8uLi9waXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1yZWxhdGl2ZS10aW1lJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c3BhblxuICAgICAgW2F1aVRvb2x0aXBdPVwidGltZSB8IGFjbFN0YW5kYXJkVGltZVwiXG4gICAgICBbYXVpVG9vbHRpcERpc2FibGVkXT1cIiF0aW1lXCJcbiAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgPlxuICAgICAge3sgdGltZSB8IGFjbFJlbGF0aXZlVGltZSB9fVxuICAgIDwvc3Bhbj5cbiAgYCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbVG9vbHRpcE1vZHVsZSwgU3RhbmRhcmRUaW1lUGlwZSwgUmVsYXRpdmVUaW1lUGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIFJlbGF0aXZlVGltZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICApIHt9XG5cbiAgQElucHV0KClcbiAgdGltZTogZGF5anMuQ29uZmlnVHlwZTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnRyYW5zbGF0ZS5sb2NhbGUkXG4gICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,100 @@
1
+ import { IconComponent, TooltipModule } from '@alauda/ui';
2
+ import { TranslatePipe, TranslateService } from '@alauda-fe/dynamic-plugin-sdk';
3
+ import { NgIf, NgTemplateOutlet } from '@angular/common';
4
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
5
+ import { FIELD_NOT_AVAILABLE_PLACEHOLDER, PurePipe } from '../../pipes';
6
+ import { formatNumber } from '../../utils';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@alauda-fe/dynamic-plugin-sdk";
9
+ import * as i2 from "@alauda/ui";
10
+ export class ResourceLabelComponent {
11
+ get formattedDefault() {
12
+ return this.default === FIELD_NOT_AVAILABLE_PLACEHOLDER
13
+ ? this.default
14
+ : this.translate.get(this.default);
15
+ }
16
+ constructor(translate) {
17
+ this.translate = translate;
18
+ this.default = 'unlimited';
19
+ this.noIcon = false;
20
+ this.labelIconMapper = {
21
+ cpu: {
22
+ icon: 'prod:cpu',
23
+ formatter: this.formatCPU.bind(this),
24
+ },
25
+ memory: {
26
+ icon: 'prod:memory',
27
+ formatter: this.formatMemory.bind(this),
28
+ },
29
+ };
30
+ }
31
+ formatCPU(rawData) {
32
+ const cpuUnit = this.getResourceUnit(rawData, this.formatCpuUnit);
33
+ if (!cpuUnit) {
34
+ return this.formattedDefault;
35
+ }
36
+ return cpuUnit.endsWith('m')
37
+ ? cpuUnit
38
+ : cpuUnit + ' ' + this.translate.get('unit_core');
39
+ }
40
+ formatMemory(rawData) {
41
+ const memoryUnit = this.getResourceUnit(rawData, this.formatMemoryUnit);
42
+ if (!memoryUnit) {
43
+ return this.formattedDefault;
44
+ }
45
+ return memoryUnit?.match(/[a-z]+/i) ? memoryUnit : memoryUnit + ' Bytes';
46
+ }
47
+ getResourceUnit(rawData, converter) {
48
+ if (typeof rawData === 'string') {
49
+ const matched = rawData.match(/([\d.]+)([a-z]+)/i);
50
+ if (matched) {
51
+ return matched[1] + ' ' + matched[2];
52
+ }
53
+ return rawData;
54
+ }
55
+ return converter(rawData);
56
+ }
57
+ formatCpuUnit(cpu) {
58
+ let cpuUnit = 'm';
59
+ if (cpu >= 1000) {
60
+ cpu /= 1000;
61
+ cpuUnit = '';
62
+ }
63
+ return isNaN(cpu)
64
+ ? ''
65
+ : formatNumber(cpu, [1, 0, 2]) + (cpuUnit ? ' ' + cpuUnit : '');
66
+ }
67
+ formatMemoryUnit(memory) {
68
+ let memoryUnit = 'Mi';
69
+ memory /= 1024 ** 2;
70
+ if (memory >= 1024) {
71
+ memory /= 1024;
72
+ memoryUnit = 'Gi';
73
+ }
74
+ return isNaN(memory)
75
+ ? ''
76
+ : formatNumber(memory, [1, 0, 2]) + (memoryUnit ? ' ' + memoryUnit : '');
77
+ }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ResourceLabelComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
79
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: ResourceLabelComponent, isStandalone: true, selector: "acl-resource-label", inputs: { rawValue: "rawValue", default: "default", type: "type", noIcon: "noIcon" }, ngImport: i0, template: "<ng-container\n [ngTemplateOutlet]=\"infoTmpl\"\n [ngTemplateOutletContext]=\"{ $implicit: labelIconMapper[type] }\"\n></ng-container>\n<ng-template\n #infoTmpl\n let-info\n>\n <aui-icon\n size=\"16\"\n *ngIf=\"!noIcon\"\n [icon]=\"info.icon\"\n [class]=\"'icon__' + type\"\n [auiTooltip]=\"type | translate\"\n auiTooltipType=\"info\"\n ></aui-icon>\n {{ rawValue | pure: info.formatter : translate.locale }}\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center}:host aui-icon{margin-right:4px}:host aui-icon.icon__cpu{color:var(--acl-icon-color-cpu)}:host aui-icon.icon__memory{color:var(--acl-icon-color-memory)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i2.TooltipDirective, selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick", "auiTooltipAnimType"], outputs: ["auiTooltipVisibleChange"], exportAs: ["auiTooltip"] }, { kind: "pipe", type: PurePipe, name: "pure" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
80
+ }
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ResourceLabelComponent, decorators: [{
82
+ type: Component,
83
+ args: [{ selector: 'acl-resource-label', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
84
+ NgTemplateOutlet,
85
+ IconComponent,
86
+ NgIf,
87
+ TranslatePipe,
88
+ TooltipModule,
89
+ PurePipe,
90
+ ], template: "<ng-container\n [ngTemplateOutlet]=\"infoTmpl\"\n [ngTemplateOutletContext]=\"{ $implicit: labelIconMapper[type] }\"\n></ng-container>\n<ng-template\n #infoTmpl\n let-info\n>\n <aui-icon\n size=\"16\"\n *ngIf=\"!noIcon\"\n [icon]=\"info.icon\"\n [class]=\"'icon__' + type\"\n [auiTooltip]=\"type | translate\"\n auiTooltipType=\"info\"\n ></aui-icon>\n {{ rawValue | pure: info.formatter : translate.locale }}\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center}:host aui-icon{margin-right:4px}:host aui-icon.icon__cpu{color:var(--acl-icon-color-cpu)}:host aui-icon.icon__memory{color:var(--acl-icon-color-memory)}\n"] }]
91
+ }], ctorParameters: () => [{ type: i1.TranslateService }], propDecorators: { rawValue: [{
92
+ type: Input
93
+ }], default: [{
94
+ type: Input
95
+ }], type: [{
96
+ type: Input
97
+ }], noIcon: [{
98
+ type: Input
99
+ }] } });
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2NvbXBvbmVudHMvcmVzb3VyY2UtbGFiZWwvY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2NvbXBvbmVudHMvcmVzb3VyY2UtbGFiZWwvdGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEYsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQzs7OztBQXdCM0MsTUFBTSxPQUFPLHNCQUFzQjtJQWVqQyxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssK0JBQStCO1lBQ3JELENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTztZQUNkLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQWFELFlBQTRCLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBMUJ2RCxZQUFPLEdBQUcsV0FBVyxDQUFDO1FBT3RCLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFRZixvQkFBZSxHQUF1QztZQUNwRCxH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QyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7OEdBeEZVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLG9LQzlCbkMsc2NBa0JBLGlRRElJLGdCQUFnQixvSkFDaEIsYUFBYSw0SkFDYixJQUFJLHdGQUNKLGFBQWEsaURBQ2IsYUFBYSx3V0FDYixRQUFROzsyRkFHQyxzQkFBc0I7a0JBZmxDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixJQUFJO3dCQUNKLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixRQUFRO3FCQUNUO3FGQUtELFFBQVE7c0JBRFAsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBS04sSUFBSTtzQkFESCxLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEljb25Db21wb25lbnQsIFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAYWxhdWRhLWZlL2R5bmFtaWMtcGx1Z2luLXNkayc7XG5pbXBvcnQgeyBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZJRUxEX05PVF9BVkFJTEFCTEVfUExBQ0VIT0xERVIsIFB1cmVQaXBlIH0gZnJvbSAnLi4vLi4vcGlwZXMnO1xuaW1wb3J0IHsgZm9ybWF0TnVtYmVyIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG50eXBlIFJlc291cmNlVHlwZSA9ICdjcHUnIHwgJ21lbW9yeSc7XG5cbmludGVyZmFjZSBSZXNvdXJjZUluZm8ge1xuICBpY29uOiBzdHJpbmc7XG4gIGZvcm1hdHRlcjogKHJhd0RhdGE6IG51bWJlciB8IHN0cmluZywgbG9jYWxlPzogc3RyaW5nKSA9PiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1yZXNvdXJjZS1sYWJlbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgSWNvbkNvbXBvbmVudCxcbiAgICBOZ0lmLFxuICAgIFRyYW5zbGF0ZVBpcGUsXG4gICAgVG9vbHRpcE1vZHVsZSxcbiAgICBQdXJlUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUmVzb3VyY2VMYWJlbENvbXBvbmVudCB7XG4gIC8vIOWQhOi1hOa6kOeahOWOn+Wni+WAvFxuICBASW5wdXQoKVxuICByYXdWYWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIGRlZmF1bHQgPSAndW5saW1pdGVkJztcblxuICAvLyDmlrDlop7nsbvlnovpnIDopoHov5vooYzmianlhYVcbiAgQElucHV0KClcbiAgdHlwZTogUmVzb3VyY2VUeXBlO1xuXG4gIEBJbnB1dCgpXG4gIG5vSWNvbiA9IGZhbHNlO1xuXG4gIGdldCBmb3JtYXR0ZWREZWZhdWx0KCkge1xuICAgIHJldHVybiB0aGlzLmRlZmF1bHQgPT09IEZJRUxEX05PVF9BVkFJTEFCTEVfUExBQ0VIT0xERVJcbiAgICAgID8gdGhpcy5kZWZhdWx0XG4gICAgICA6IHRoaXMudHJhbnNsYXRlLmdldCh0aGlzLmRlZmF1bHQpO1xuICB9XG5cbiAgbGFiZWxJY29uTWFwcGVyOiBSZWNvcmQ8UmVzb3VyY2VUeXBlLCBSZXNvdXJjZUluZm8+ID0ge1xuICAgIGNwdToge1xuICAgICAgaWNvbjogJ3Byb2Q6Y3B1JyxcbiAgICAgIGZvcm1hdHRlcjogdGhpcy5mb3JtYXRDUFUuYmluZCh0aGlzKSxcbiAgICB9LFxuICAgIG1lbW9yeToge1xuICAgICAgaWNvbjogJ3Byb2Q6bWVtb3J5JyxcbiAgICAgIGZvcm1hdHRlcjogdGhpcy5mb3JtYXRNZW1vcnkuYmluZCh0aGlzKSxcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHt9XG5cbiAgZm9ybWF0Q1BVKHJhd0RhdGE6IG51bWJlciB8IHN0cmluZykge1xuICAgIGNvbnN0IGNwdVVuaXQgPSB0aGlzLmdldFJlc291cmNlVW5pdChyYXdEYXRhLCB0aGlzLmZvcm1hdENwdVVuaXQpO1xuICAgIGlmICghY3B1VW5pdCkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0dGVkRGVmYXVsdDtcbiAgICB9XG4gICAgcmV0dXJuIGNwdVVuaXQuZW5kc1dpdGgoJ20nKVxuICAgICAgPyBjcHVVbml0XG4gICAgICA6IGNwdVVuaXQgKyAnICcgKyB0aGlzLnRyYW5zbGF0ZS5nZXQoJ3VuaXRfY29yZScpO1xuICB9XG5cbiAgZm9ybWF0TWVtb3J5KHJhd0RhdGE6IG51bWJlciB8IHN0cmluZykge1xuICAgIGNvbnN0IG1lbW9yeVVuaXQgPSB0aGlzLmdldFJlc291cmNlVW5pdChyYXdEYXRhLCB0aGlzLmZvcm1hdE1lbW9yeVVuaXQpO1xuXG4gICAgaWYgKCFtZW1vcnlVbml0KSB7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXR0ZWREZWZhdWx0O1xuICAgIH1cbiAgICByZXR1cm4gbWVtb3J5VW5pdD8ubWF0Y2goL1thLXpdKy9pKSA/IG1lbW9yeVVuaXQgOiBtZW1vcnlVbml0ICsgJyBCeXRlcyc7XG4gIH1cblxuICBwcml2YXRlIGdldFJlc291cmNlVW5pdChcbiAgICByYXdEYXRhOiBudW1iZXIgfCBzdHJpbmcsXG4gICAgY29udmVydGVyPzogKF86IG51bWJlcikgPT4gc3RyaW5nLFxuICApIHtcbiAgICBpZiAodHlwZW9mIHJhd0RhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBtYXRjaGVkID0gcmF3RGF0YS5tYXRjaCgvKFtcXGQuXSspKFthLXpdKykvaSk7XG4gICAgICBpZiAobWF0Y2hlZCkge1xuICAgICAgICByZXR1cm4gbWF0Y2hlZFsxXSArICcgJyArIG1hdGNoZWRbMl07XG4gICAgICB9XG4gICAgICByZXR1cm4gcmF3RGF0YTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbnZlcnRlcihyYXdEYXRhKTtcbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0Q3B1VW5pdChjcHU6IG51bWJlcikge1xuICAgIGxldCBjcHVVbml0ID0gJ20nO1xuICAgIGlmIChjcHUgPj0gMTAwMCkge1xuICAgICAgY3B1IC89IDEwMDA7XG4gICAgICBjcHVVbml0ID0gJyc7XG4gICAgfVxuICAgIHJldHVybiBpc05hTihjcHUpXG4gICAgICA/ICcnXG4gICAgICA6IGZvcm1hdE51bWJlcihjcHUsIFsxLCAwLCAyXSkgKyAoY3B1VW5pdCA/ICcgJyArIGNwdVVuaXQgOiAnJyk7XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdE1lbW9yeVVuaXQobWVtb3J5OiBudW1iZXIpIHtcbiAgICBsZXQgbWVtb3J5VW5pdCA9ICdNaSc7XG4gICAgbWVtb3J5IC89IDEwMjQgKiogMjtcbiAgICBpZiAobWVtb3J5ID49IDEwMjQpIHtcbiAgICAgIG1lbW9yeSAvPSAxMDI0O1xuICAgICAgbWVtb3J5VW5pdCA9ICdHaSc7XG4gICAgfVxuICAgIHJldHVybiBpc05hTihtZW1vcnkpXG4gICAgICA/ICcnXG4gICAgICA6IGZvcm1hdE51bWJlcihtZW1vcnksIFsxLCAwLCAyXSkgKyAobWVtb3J5VW5pdCA/ICcgJyArIG1lbW9yeVVuaXQgOiAnJyk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXJcbiAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaW5mb1RtcGxcIlxuICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGxhYmVsSWNvbk1hcHBlclt0eXBlXSB9XCJcbj48L25nLWNvbnRhaW5lcj5cbjxuZy10ZW1wbGF0ZVxuICAjaW5mb1RtcGxcbiAgbGV0LWluZm9cbj5cbiAgPGF1aS1pY29uXG4gICAgc2l6ZT1cIjE2XCJcbiAgICAqbmdJZj1cIiFub0ljb25cIlxuICAgIFtpY29uXT1cImluZm8uaWNvblwiXG4gICAgW2NsYXNzXT1cIidpY29uX18nICsgdHlwZVwiXG4gICAgW2F1aVRvb2x0aXBdPVwidHlwZSB8IHRyYW5zbGF0ZVwiXG4gICAgYXVpVG9vbHRpcFR5cGU9XCJpbmZvXCJcbiAgPjwvYXVpLWljb24+XG4gIHt7IHJhd1ZhbHVlIHwgcHVyZTogaW5mby5mb3JtYXR0ZXIgOiB0cmFuc2xhdGUubG9jYWxlIH19XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,152 @@
1
+ import { FORM_MODULE, SelectModule, TooltipDirective, } from '@alauda/ui';
2
+ import { TranslatePipe } from '@alauda-fe/dynamic-plugin-sdk';
3
+ import { AsyncPipe, NgForOf, NgIf, NgTemplateOutlet } from '@angular/common';
4
+ import { Component, ChangeDetectionStrategy, Input, Output, EventEmitter, forwardRef, TemplateRef, ChangeDetectorRef, } from '@angular/core';
5
+ import { FormsModule, NG_VALUE_ACCESSOR, } from '@angular/forms';
6
+ import { BehaviorSubject } from 'rxjs';
7
+ import { EFFECT_DIRECTIVE_MODULE } from '../../directives';
8
+ import { PurePipe } from '../../pipes';
9
+ import { noop } from '../../utils';
10
+ import { SelectPrefixLabelDirective } from '../select-prefix-label/directive';
11
+ import { DEFAULT_LIMIT_COUNT, ALL_VALUE, checkValueExit } from './util';
12
+ import * as i0 from "@angular/core";
13
+ import * as i1 from "@angular/forms";
14
+ import * as i2 from "@alauda/ui";
15
+ import * as i3 from "../../directives/effect-directive/e2e-attribute-binding.directive";
16
+ import * as i4 from "../../directives/effect-directive/validators.directive";
17
+ export class ResourceMultiSelectComponent {
18
+ constructor(cdr) {
19
+ this.cdr = cdr;
20
+ this.limit = DEFAULT_LIMIT_COUNT;
21
+ this.disabled = false;
22
+ this.required = false;
23
+ this.readonly = false;
24
+ this.placeholder = '';
25
+ this.countLimited = true;
26
+ this.filter = (filter, option) => option.value?.includes(filter);
27
+ this.trackBy = (val) => val;
28
+ this.allowEmpty = false;
29
+ this.valueChange = new EventEmitter();
30
+ this.values$$ = new BehaviorSubject([]);
31
+ this.values = [];
32
+ this.isSelectAllOption = false;
33
+ this.isPartial = false;
34
+ this.ALL_VALUE = ALL_VALUE;
35
+ this.onChange = noop;
36
+ this.onTouched = noop;
37
+ this.disableOption = (checkedValue, values) => {
38
+ this.isPartial = false;
39
+ if (!checkedValue) {
40
+ return false;
41
+ }
42
+ if (this.isSelectAllOption) {
43
+ return true;
44
+ }
45
+ // 如果不限制个数直接返回 false
46
+ if (!this.countLimited) {
47
+ return false;
48
+ }
49
+ if (values?.length === this.limit && values?.length < this.list?.length) {
50
+ this.isPartial = true;
51
+ return !checkValueExit(checkedValue, values);
52
+ }
53
+ return false;
54
+ };
55
+ this.filterFn = (filter, option) => {
56
+ const value = option.value;
57
+ if (value === ALL_VALUE) {
58
+ return true;
59
+ }
60
+ return this.filter?.(filter, option);
61
+ };
62
+ this.trackByFn = (value) => {
63
+ if (value === ALL_VALUE) {
64
+ return ALL_VALUE;
65
+ }
66
+ return this.trackBy?.(value);
67
+ };
68
+ }
69
+ writeValue(values) {
70
+ this.values$$.next(values);
71
+ this.isSelectAllOption = checkValueExit(ALL_VALUE, values);
72
+ this.cdr.markForCheck();
73
+ }
74
+ registerOnChange(fn) {
75
+ this.onChange = fn;
76
+ }
77
+ registerOnTouched(fn) {
78
+ this.onTouched = fn;
79
+ }
80
+ onValueChange(values) {
81
+ this.isSelectAllOption = checkValueExit(ALL_VALUE, values);
82
+ const currentValue = this.isSelectAllOption
83
+ ? [ALL_VALUE]
84
+ : values;
85
+ this.values$$.next(currentValue);
86
+ this.valueChange.emit(currentValue);
87
+ this.onChange(currentValue);
88
+ this.onTouched();
89
+ }
90
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ResourceMultiSelectComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
91
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: ResourceMultiSelectComponent, isStandalone: true, selector: "acl-resource-multi-select", inputs: { list: "list", limit: "limit", prefixLabel: "prefixLabel", disabled: "disabled", required: "required", readonly: "readonly", allOptionTemplate: "allOptionTemplate", allOptionTemplateContext: "allOptionTemplateContext", optionTemplate: "optionTemplate", placeholder: "placeholder", countLimited: "countLimited", filter: "filter", trackBy: "trackBy", allowEmpty: "allowEmpty" }, outputs: { valueChange: "valueChange" }, providers: [
92
+ {
93
+ provide: NG_VALUE_ACCESSOR,
94
+ useExisting: forwardRef(() => ResourceMultiSelectComponent),
95
+ multi: true,
96
+ },
97
+ ], ngImport: i0, template: "<aui-multi-select\n [ngModel]=\"values$$ | async\"\n auiFormItemControl\n [filterFn]=\"filterFn\"\n [trackFn]=\"trackByFn\"\n (ngModelChange)=\"onValueChange($event)\"\n [aclPrefixLabel]=\"prefixLabel\"\n [placeholder]=\"\n placeholder || countLimited\n ? ('multi_select_limit' | translate: { count: limit })\n : ''\n \"\n [maxRowCount]=\"6\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [filterable]=\"true\"\n [clearable]=\"true\"\n>\n <aui-option-group *ngIf=\"(allOptionTemplate && list?.length) || allowEmpty\">\n <aui-option\n [value]=\"ALL_VALUE\"\n [label]=\"allOptionTemplate\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n allOptionTemplate;\n context: { $implicit: allOptionTemplateContext }\n \"\n ></ng-container>\n </aui-option>\n </aui-option-group>\n\n <aui-option-group>\n <aui-option\n *ngFor=\"let option of list\"\n [value]=\"option\"\n [label]=\"optionTemplate\"\n [disabled]=\"option | pure: disableOption : (values$$ | async)\"\n [auiTooltip]=\"'multi_select_limit' | translate: { count: limit }\"\n [auiTooltipDisabled]=\"!countLimited ? true : !isPartial\"\n [labelContext]=\"{ resource: option }\"\n >\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate\"\n [ngTemplateOutletContext]=\"{ resource: option, inOption: true }\"\n ></ng-container>\n </aui-option>\n </aui-option-group>\n <aui-option-placeholder>\n {{ 'no_data' | translate }}\n </aui-option-placeholder>\n</aui-multi-select>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i2.OptionComponent, selector: "aui-option", inputs: ["label", "labelContext", "value", "disabled"] }, { kind: "component", type: i2.OptionGroupComponent, selector: "aui-option-group" }, { kind: "component", type: i2.OptionPlaceholderComponent, selector: "aui-option-placeholder" }, { kind: "component", type: i2.MultiSelectComponent, selector: "aui-multi-select", inputs: ["tagClassFn", "maxRowCount", "customRowHeight", "allowSelectAll"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: PurePipe, name: "pure" }, { kind: "directive", type: TooltipDirective, selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick", "auiTooltipAnimType"], outputs: ["auiTooltipVisibleChange"], exportAs: ["auiTooltip"] }, { kind: "directive", type: i2.FormItemControlDirective, selector: "[auiFormItemControl]", inputs: ["required"] }, { kind: "directive", type: SelectPrefixLabelDirective, selector: "aui-select[aclPrefixLabel],aui-multi-select[aclPrefixLabel]", inputs: ["aclPrefixLabel"] }, { kind: "directive", type: i3.E2eAttributeBindingDirective, selector: "[click],[routerLink],a[href],[auiTooltip],[auiDropdown]" }, { kind: "directive", type: i4.ValidatorsDirective, selector: "[ngModel][required],[formControl][required],[formControlName][required],[ngModel][pattern],[formControl][pattern],[formControlName][pattern],[ngModel][min],[formControl][min],[formControlName][min],[ngModel][max],[formControl][max],[formControlName][max],[ngModel][minlength],[formControl][minlength],[formControlName][minlength],[ngModel][maxlength],[formControl][maxlength],[formControlName][maxlength],[ngModel][email],[formControl][email],[formControlName][email]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
98
+ }
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ResourceMultiSelectComponent, decorators: [{
100
+ type: Component,
101
+ args: [{ selector: 'acl-resource-multi-select', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
102
+ {
103
+ provide: NG_VALUE_ACCESSOR,
104
+ useExisting: forwardRef(() => ResourceMultiSelectComponent),
105
+ multi: true,
106
+ },
107
+ ], standalone: true, imports: [
108
+ FormsModule,
109
+ AsyncPipe,
110
+ NgIf,
111
+ TranslatePipe,
112
+ SelectModule,
113
+ NgForOf,
114
+ NgTemplateOutlet,
115
+ PurePipe,
116
+ TooltipDirective,
117
+ ...FORM_MODULE,
118
+ SelectPrefixLabelDirective,
119
+ EFFECT_DIRECTIVE_MODULE,
120
+ ], template: "<aui-multi-select\n [ngModel]=\"values$$ | async\"\n auiFormItemControl\n [filterFn]=\"filterFn\"\n [trackFn]=\"trackByFn\"\n (ngModelChange)=\"onValueChange($event)\"\n [aclPrefixLabel]=\"prefixLabel\"\n [placeholder]=\"\n placeholder || countLimited\n ? ('multi_select_limit' | translate: { count: limit })\n : ''\n \"\n [maxRowCount]=\"6\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [filterable]=\"true\"\n [clearable]=\"true\"\n>\n <aui-option-group *ngIf=\"(allOptionTemplate && list?.length) || allowEmpty\">\n <aui-option\n [value]=\"ALL_VALUE\"\n [label]=\"allOptionTemplate\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n allOptionTemplate;\n context: { $implicit: allOptionTemplateContext }\n \"\n ></ng-container>\n </aui-option>\n </aui-option-group>\n\n <aui-option-group>\n <aui-option\n *ngFor=\"let option of list\"\n [value]=\"option\"\n [label]=\"optionTemplate\"\n [disabled]=\"option | pure: disableOption : (values$$ | async)\"\n [auiTooltip]=\"'multi_select_limit' | translate: { count: limit }\"\n [auiTooltipDisabled]=\"!countLimited ? true : !isPartial\"\n [labelContext]=\"{ resource: option }\"\n >\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate\"\n [ngTemplateOutletContext]=\"{ resource: option, inOption: true }\"\n ></ng-container>\n </aui-option>\n </aui-option-group>\n <aui-option-placeholder>\n {{ 'no_data' | translate }}\n </aui-option-placeholder>\n</aui-multi-select>\n" }]
121
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { list: [{
122
+ type: Input
123
+ }], limit: [{
124
+ type: Input
125
+ }], prefixLabel: [{
126
+ type: Input
127
+ }], disabled: [{
128
+ type: Input
129
+ }], required: [{
130
+ type: Input
131
+ }], readonly: [{
132
+ type: Input
133
+ }], allOptionTemplate: [{
134
+ type: Input
135
+ }], allOptionTemplateContext: [{
136
+ type: Input
137
+ }], optionTemplate: [{
138
+ type: Input
139
+ }], placeholder: [{
140
+ type: Input
141
+ }], countLimited: [{
142
+ type: Input
143
+ }], filter: [{
144
+ type: Input
145
+ }], trackBy: [{
146
+ type: Input
147
+ }], allowEmpty: [{
148
+ type: Input
149
+ }], valueChange: [{
150
+ type: Output
151
+ }] } });
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2NvbXBvbmVudHMvcmVzb3VyY2UtbXVsdGktc2VsZWN0L2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy9jb21wb25lbnRzL3Jlc291cmNlLW11bHRpLXNlbGVjdC90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBR1gsWUFBWSxFQUNaLGdCQUFnQixHQUVqQixNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0UsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLFdBQVcsRUFDWCxpQkFBaUIsR0FDbEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFdkMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNuQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUU5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFN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QUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSw2QkFBNkIsQ0FBQzs0QkFDM0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsY0FDVyxJQUFJLFdBQ1A7d0JBQ1AsV0FBVzt3QkFDWCxTQUFTO3dCQUNULElBQUk7d0JBQ0osYUFBYTt3QkFDYixZQUFZO3dCQUNaLE9BQU87d0JBQ1AsZ0JBQWdCO3dCQUNoQixRQUFRO3dCQUNSLGdCQUFnQjt3QkFDaEIsR0FBRyxXQUFXO3dCQUNkLDBCQUEwQjt3QkFDMUIsdUJBQXVCO3FCQUN4QjtzRkFJRCxJQUFJO3NCQURILEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBSU4sd0JBQXdCO3NCQUR2QixLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFPTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEZPUk1fTU9EVUxFLFxuICBPcHRpb25GaWx0ZXJGbixcbiAgU2VsZWN0RmlsdGVyT3B0aW9uLFxuICBTZWxlY3RNb2R1bGUsXG4gIFRvb2x0aXBEaXJlY3RpdmUsXG4gIFRyYWNrRm4sXG59IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BhbGF1ZGEtZmUvZHluYW1pYy1wbHVnaW4tc2RrJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgTmdGb3JPZiwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIFRlbXBsYXRlUmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgRm9ybXNNb2R1bGUsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRUZGRUNUX0RJUkVDVElWRV9NT0RVTEUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFB1cmVQaXBlIH0gZnJvbSAnLi4vLi4vcGlwZXMnO1xuaW1wb3J0IHsgU3RyaW5nTWFwIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IFNlbGVjdFByZWZpeExhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2VsZWN0LXByZWZpeC1sYWJlbC9kaXJlY3RpdmUnO1xuXG5pbXBvcnQgeyBERUZBVUxUX0xJTUlUX0NPVU5ULCBBTExfVkFMVUUsIGNoZWNrVmFsdWVFeGl0IH0gZnJvbSAnLi91dGlsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLXJlc291cmNlLW11bHRpLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUmVzb3VyY2VNdWx0aVNlbGVjdENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgQXN5bmNQaXBlLFxuICAgIE5nSWYsXG4gICAgVHJhbnNsYXRlUGlwZSxcbiAgICBTZWxlY3RNb2R1bGUsXG4gICAgTmdGb3JPZixcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIFB1cmVQaXBlLFxuICAgIFRvb2x0aXBEaXJlY3RpdmUsXG4gICAgLi4uRk9STV9NT0RVTEUsXG4gICAgU2VsZWN0UHJlZml4TGFiZWxEaXJlY3RpdmUsXG4gICAgRUZGRUNUX0RJUkVDVElWRV9NT0RVTEUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFJlc291cmNlTXVsdGlTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBJbnB1dCgpXG4gIGxpc3Q6IHN0cmluZ1tdO1xuXG4gIEBJbnB1dCgpXG4gIGxpbWl0OiBudW1iZXIgPSBERUZBVUxUX0xJTUlUX0NPVU5UO1xuXG4gIEBJbnB1dCgpXG4gIHByZWZpeExhYmVsOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICByZXF1aXJlZCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHJlYWRvbmx5ID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgYWxsT3B0aW9uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQElucHV0KClcbiAgYWxsT3B0aW9uVGVtcGxhdGVDb250ZXh0OiBTdHJpbmdNYXA7XG5cbiAgQElucHV0KClcbiAgb3B0aW9uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQElucHV0KClcbiAgcGxhY2Vob2xkZXIgPSAnJztcblxuICBASW5wdXQoKVxuICBjb3VudExpbWl0ZWQgPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIGZpbHRlcjogT3B0aW9uRmlsdGVyRm48c3RyaW5nPiA9IChcbiAgICBmaWx0ZXI6IHN0cmluZyxcbiAgICBvcHRpb246IFNlbGVjdEZpbHRlck9wdGlvbjxzdHJpbmc+LFxuICApID0+IG9wdGlvbi52YWx1ZT8uaW5jbHVkZXMoZmlsdGVyKTtcblxuICBASW5wdXQoKVxuICB0cmFja0J5OiBUcmFja0ZuPHN0cmluZz4gPSAodmFsOiBzdHJpbmcpID0+IHZhbDtcblxuICBASW5wdXQoKVxuICBhbGxvd0VtcHR5ID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpXG4gIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmdbXT4oKTtcblxuICB2YWx1ZXMkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+KFtdKTtcbiAgdmFsdWVzOiBzdHJpbmdbXSA9IFtdO1xuICBpc1NlbGVjdEFsbE9wdGlvbiA9IGZhbHNlO1xuICBpc1BhcnRpYWwgPSBmYWxzZTtcbiAgQUxMX1ZBTFVFID0gQUxMX1ZBTFVFO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICB3cml0ZVZhbHVlKHZhbHVlczogc3RyaW5nW10pIHtcbiAgICB0aGlzLnZhbHVlcyQkLm5leHQodmFsdWVzKTtcbiAgICB0aGlzLmlzU2VsZWN0QWxsT3B0aW9uID0gY2hlY2tWYWx1ZUV4aXQoQUxMX1ZBTFVFIGFzIHN0cmluZywgdmFsdWVzKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG9uQ2hhbmdlID0gbm9vcDtcblxuICBvblRvdWNoZWQgPSBub29wO1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCkge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBkaXNhYmxlT3B0aW9uID0gKGNoZWNrZWRWYWx1ZTogc3RyaW5nLCB2YWx1ZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgdGhpcy5pc1BhcnRpYWwgPSBmYWxzZTtcbiAgICBpZiAoIWNoZWNrZWRWYWx1ZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzU2VsZWN0QWxsT3B0aW9uKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgLy8g5aaC5p6c5LiN6ZmQ5Yi25Liq5pWw55u05o6l6L+U5ZueIGZhbHNlXG4gICAgaWYgKCF0aGlzLmNvdW50TGltaXRlZCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAodmFsdWVzPy5sZW5ndGggPT09IHRoaXMubGltaXQgJiYgdmFsdWVzPy5sZW5ndGggPCB0aGlzLmxpc3Q/Lmxlbmd0aCkge1xuICAgICAgdGhpcy5pc1BhcnRpYWwgPSB0cnVlO1xuICAgICAgcmV0dXJuICFjaGVja1ZhbHVlRXhpdChjaGVja2VkVmFsdWUsIHZhbHVlcyk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICBvblZhbHVlQ2hhbmdlKHZhbHVlczogc3RyaW5nW10pIHtcbiAgICB0aGlzLmlzU2VsZWN0QWxsT3B0aW9uID0gY2hlY2tWYWx1ZUV4aXQoQUxMX1ZBTFVFIGFzIHN0cmluZywgdmFsdWVzKTtcbiAgICBjb25zdCBjdXJyZW50VmFsdWUgPSB0aGlzLmlzU2VsZWN0QWxsT3B0aW9uXG4gICAgICA/IFtBTExfVkFMVUUgYXMgc3RyaW5nXVxuICAgICAgOiB2YWx1ZXM7XG4gICAgdGhpcy52YWx1ZXMkJC5uZXh0KGN1cnJlbnRWYWx1ZSk7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KGN1cnJlbnRWYWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZShjdXJyZW50VmFsdWUpO1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gIH1cblxuICBmaWx0ZXJGbiA9IChmaWx0ZXI6IHN0cmluZywgb3B0aW9uOiBTZWxlY3RGaWx0ZXJPcHRpb248c3RyaW5nPikgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gb3B0aW9uLnZhbHVlO1xuICAgIGlmICh2YWx1ZSA9PT0gQUxMX1ZBTFVFKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyPy4oZmlsdGVyLCBvcHRpb24pO1xuICB9O1xuXG4gIHRyYWNrQnlGbiA9ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgaWYgKHZhbHVlID09PSBBTExfVkFMVUUpIHtcbiAgICAgIHJldHVybiBBTExfVkFMVUU7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRyYWNrQnk/Lih2YWx1ZSk7XG4gIH07XG59XG4iLCI8YXVpLW11bHRpLXNlbGVjdFxuICBbbmdNb2RlbF09XCJ2YWx1ZXMkJCB8IGFzeW5jXCJcbiAgYXVpRm9ybUl0ZW1Db250cm9sXG4gIFtmaWx0ZXJGbl09XCJmaWx0ZXJGblwiXG4gIFt0cmFja0ZuXT1cInRyYWNrQnlGblwiXG4gIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gIFthY2xQcmVmaXhMYWJlbF09XCJwcmVmaXhMYWJlbFwiXG4gIFtwbGFjZWhvbGRlcl09XCJcbiAgICBwbGFjZWhvbGRlciB8fCBjb3VudExpbWl0ZWRcbiAgICAgID8gKCdtdWx0aV9zZWxlY3RfbGltaXQnIHwgdHJhbnNsYXRlOiB7IGNvdW50OiBsaW1pdCB9KVxuICAgICAgOiAnJ1xuICBcIlxuICBbbWF4Um93Q291bnRdPVwiNlwiXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gIFtmaWx0ZXJhYmxlXT1cInRydWVcIlxuICBbY2xlYXJhYmxlXT1cInRydWVcIlxuPlxuICA8YXVpLW9wdGlvbi1ncm91cCAqbmdJZj1cIihhbGxPcHRpb25UZW1wbGF0ZSAmJiBsaXN0Py5sZW5ndGgpIHx8IGFsbG93RW1wdHlcIj5cbiAgICA8YXVpLW9wdGlvblxuICAgICAgW3ZhbHVlXT1cIkFMTF9WQUxVRVwiXG4gICAgICBbbGFiZWxdPVwiYWxsT3B0aW9uVGVtcGxhdGVcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICBhbGxPcHRpb25UZW1wbGF0ZTtcbiAgICAgICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogYWxsT3B0aW9uVGVtcGxhdGVDb250ZXh0IH1cbiAgICAgICAgXCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L2F1aS1vcHRpb24+XG4gIDwvYXVpLW9wdGlvbi1ncm91cD5cblxuICA8YXVpLW9wdGlvbi1ncm91cD5cbiAgICA8YXVpLW9wdGlvblxuICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBsaXN0XCJcbiAgICAgIFt2YWx1ZV09XCJvcHRpb25cIlxuICAgICAgW2xhYmVsXT1cIm9wdGlvblRlbXBsYXRlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJvcHRpb24gfCBwdXJlOiBkaXNhYmxlT3B0aW9uIDogKHZhbHVlcyQkIHwgYXN5bmMpXCJcbiAgICAgIFthdWlUb29sdGlwXT1cIidtdWx0aV9zZWxlY3RfbGltaXQnIHwgdHJhbnNsYXRlOiB7IGNvdW50OiBsaW1pdCB9XCJcbiAgICAgIFthdWlUb29sdGlwRGlzYWJsZWRdPVwiIWNvdW50TGltaXRlZCA/IHRydWUgOiAhaXNQYXJ0aWFsXCJcbiAgICAgIFtsYWJlbENvbnRleHRdPVwieyByZXNvdXJjZTogb3B0aW9uIH1cIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwib3B0aW9uVGVtcGxhdGVcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyByZXNvdXJjZTogb3B0aW9uLCBpbk9wdGlvbjogdHJ1ZSB9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L2F1aS1vcHRpb24+XG4gIDwvYXVpLW9wdGlvbi1ncm91cD5cbiAgPGF1aS1vcHRpb24tcGxhY2Vob2xkZXI+XG4gICAge3sgJ25vX2RhdGEnIHwgdHJhbnNsYXRlIH19XG4gIDwvYXVpLW9wdGlvbi1wbGFjZWhvbGRlcj5cbjwvYXVpLW11bHRpLXNlbGVjdD5cbiJdfQ==
@@ -0,0 +1,24 @@
1
+ import { first, isString } from 'lodash-es';
2
+ export const DEFAULT_LIMIT_COUNT = 30;
3
+ export const ALL_VALUE = 'All';
4
+ export var OptionAction;
5
+ (function (OptionAction) {
6
+ OptionAction["Active"] = "active";
7
+ OptionAction["Disabled"] = "disabled";
8
+ OptionAction["Partial"] = "partial";
9
+ })(OptionAction || (OptionAction = {}));
10
+ export const checkValueExit = (checkedValue, values) => {
11
+ if (typeof checkedValue === 'string') {
12
+ return values?.some(value => value === checkedValue);
13
+ }
14
+ return values?.some(value => value.metadata.name ===
15
+ checkedValue.metadata.name);
16
+ };
17
+ export const isSelectAll = (values, allVal = ALL_VALUE) => {
18
+ if (values?.length === 1) {
19
+ const value = first(values);
20
+ return isString(value) && value === allVal;
21
+ }
22
+ return false;
23
+ };
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy9jb21wb25lbnRzL3Jlc291cmNlLW11bHRpLXNlbGVjdC91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBSTVDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEVBQUUsQ0FBQztBQUV0QyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDO0FBRS9CLE1BQU0sQ0FBTixJQUFZLFlBSVg7QUFKRCxXQUFZLFlBQVk7SUFDdEIsaUNBQWlCLENBQUE7SUFDakIscUNBQXFCLENBQUE7SUFDckIsbUNBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCO0FBRUQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQzVCLFlBQWUsRUFDZixNQUFXLEVBQ1gsRUFBRTtJQUNGLElBQUksT0FBTyxZQUFZLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDckMsT0FBTyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUUsS0FBZ0IsS0FBSyxZQUFZLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsT0FBTyxNQUFNLEVBQUUsSUFBSSxDQUNqQixLQUFLLENBQUMsRUFBRSxDQUNMLEtBQTRCLENBQUMsUUFBUSxDQUFDLElBQUk7UUFDM0MsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQzdCLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FDekIsTUFBVyxFQUNYLE1BQU0sR0FBRyxTQUFTLEVBQ2xCLEVBQUU7SUFDRixJQUFJLE1BQU0sRUFBRSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDekIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssS0FBSyxNQUFNLENBQUM7SUFDN0MsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlyc3QsIGlzU3RyaW5nIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHsgS3ViZXJuZXRlc1Jlc291cmNlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9MSU1JVF9DT1VOVCA9IDMwO1xuXG5leHBvcnQgY29uc3QgQUxMX1ZBTFVFID0gJ0FsbCc7XG5cbmV4cG9ydCBlbnVtIE9wdGlvbkFjdGlvbiB7XG4gIEFjdGl2ZSA9ICdhY3RpdmUnLFxuICBEaXNhYmxlZCA9ICdkaXNhYmxlZCcsXG4gIFBhcnRpYWwgPSAncGFydGlhbCcsXG59XG5cbmV4cG9ydCBjb25zdCBjaGVja1ZhbHVlRXhpdCA9IDxUIGV4dGVuZHMgc3RyaW5nIHwgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgY2hlY2tlZFZhbHVlOiBULFxuICB2YWx1ZXM6IFRbXSxcbikgPT4ge1xuICBpZiAodHlwZW9mIGNoZWNrZWRWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gdmFsdWVzPy5zb21lKHZhbHVlID0+ICh2YWx1ZSBhcyBzdHJpbmcpID09PSBjaGVja2VkVmFsdWUpO1xuICB9XG5cbiAgcmV0dXJuIHZhbHVlcz8uc29tZShcbiAgICB2YWx1ZSA9PlxuICAgICAgKHZhbHVlIGFzIEt1YmVybmV0ZXNSZXNvdXJjZSkubWV0YWRhdGEubmFtZSA9PT1cbiAgICAgIGNoZWNrZWRWYWx1ZS5tZXRhZGF0YS5uYW1lLFxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzU2VsZWN0QWxsID0gPFQgZXh0ZW5kcyBzdHJpbmcgfCBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICB2YWx1ZXM6IFRbXSxcbiAgYWxsVmFsID0gQUxMX1ZBTFVFLFxuKSA9PiB7XG4gIGlmICh2YWx1ZXM/Lmxlbmd0aCA9PT0gMSkge1xuICAgIGNvbnN0IHZhbHVlID0gZmlyc3QodmFsdWVzKTtcbiAgICByZXR1cm4gaXNTdHJpbmcodmFsdWUpICYmIHZhbHVlID09PSBhbGxWYWw7XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufTtcbiJdfQ==
@@ -0,0 +1,51 @@
1
+ import { ButtonComponent, coerceAttrBoolean } from '@alauda/ui';
2
+ import { TranslatePipe } from '@alauda-fe/dynamic-plugin-sdk';
3
+ import { AsyncPipe } from '@angular/common';
4
+ import { ChangeDetectionStrategy, Component, Output, EventEmitter, ContentChildren, QueryList, Input, HostListener, } from '@angular/core';
5
+ import { Subject } from 'rxjs';
6
+ import { SearchItemComponent } from './search-item/component';
7
+ import * as i0 from "@angular/core";
8
+ export class SearchPanelComponent {
9
+ constructor() {
10
+ this.enableEnterHandler = true;
11
+ this.search = new EventEmitter();
12
+ this.resetSearch = new EventEmitter();
13
+ this.isFulWidth$$ = new Subject();
14
+ }
15
+ enter() {
16
+ if (coerceAttrBoolean(this.enableEnterHandler)) {
17
+ this.search.next();
18
+ }
19
+ }
20
+ ngAfterViewInit() {
21
+ this.items.changes.subscribe(panels => {
22
+ this.isFulWidth$$.next(this.checkItemLength(panels));
23
+ });
24
+ this.isFulWidth$$.next(this.checkItemLength(this.items));
25
+ }
26
+ // 当一排放不下 3 个选项的时候,操作按钮自动放置最后
27
+ checkItemLength(panels) {
28
+ return panels?.length % 3 === 0;
29
+ }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SearchPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SearchPanelComponent, isStandalone: true, selector: "acl-search-panel", inputs: { enableEnterHandler: "enableEnterHandler" }, outputs: { search: "search", resetSearch: "resetSearch" }, host: { listeners: { "document:keydown.enter": "enter($event)" } }, queries: [{ propertyName: "items", predicate: SearchItemComponent, descendants: true }], ngImport: i0, template: "<div class=\"search-panel\">\n <ng-content></ng-content>\n <acl-search-item [style.width]=\"(isFulWidth$$ | async) ? '100%' : ''\">\n <div class=\"tw-justify-end tw-w-full search\">\n <button\n type=\"button\"\n aui-button=\"primary\"\n (click)=\"search.emit()\"\n >\n {{ 'search' | translate }}\n </button>\n <button\n type=\"button\"\n aui-button\n (click)=\"resetSearch.emit()\"\n >\n {{ 'reset' | translate }}\n </button>\n\n <ng-content select=\"[additional]\"></ng-content>\n </div>\n </acl-search-item>\n</div>\n", styles: [":host::ng-deep aui-select{width:100%}:host::ng-deep .search-panel{display:flex;justify-content:space-between;flex-wrap:wrap;margin-bottom:-16px}:host::ng-deep .search-panel acl-search-item{width:33.33%}:host::ng-deep .search-panel acl-search-item .search-panel__item{width:100%;margin-bottom:16px;display:inline-flex}:host::ng-deep .search-panel acl-search-item .search-panel__item>*{display:inline-flex}:host::ng-deep .search-panel acl-search-item .search-panel__item>label{padding-right:8px;justify-content:flex-end;text-align:right;line-height:var(--aui-line-height-s);align-items:center;min-width:70px;margin-left:20px}html:not([lang|=zh]) :host::ng-deep .search-panel acl-search-item .search-panel__item>label{min-width:110px}:host::ng-deep .search-panel acl-search-item .search-panel__item>label:after{content:\":\";margin-left:2px}:host::ng-deep .search-panel acl-search-item .search-panel__item>aui-select{flex:1}:host::ng-deep .search-panel acl-search-item:nth-of-type(3n+1) .search-panel__item label{margin-left:0}\n"], dependencies: [{ kind: "component", type: SearchItemComponent, selector: "acl-search-item" }, { kind: "component", type: ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SearchPanelComponent, decorators: [{
34
+ type: Component,
35
+ args: [{ selector: 'acl-search-panel', changeDetection: ChangeDetectionStrategy.OnPush, imports: [SearchItemComponent, ButtonComponent, TranslatePipe, AsyncPipe], standalone: true, template: "<div class=\"search-panel\">\n <ng-content></ng-content>\n <acl-search-item [style.width]=\"(isFulWidth$$ | async) ? '100%' : ''\">\n <div class=\"tw-justify-end tw-w-full search\">\n <button\n type=\"button\"\n aui-button=\"primary\"\n (click)=\"search.emit()\"\n >\n {{ 'search' | translate }}\n </button>\n <button\n type=\"button\"\n aui-button\n (click)=\"resetSearch.emit()\"\n >\n {{ 'reset' | translate }}\n </button>\n\n <ng-content select=\"[additional]\"></ng-content>\n </div>\n </acl-search-item>\n</div>\n", styles: [":host::ng-deep aui-select{width:100%}:host::ng-deep .search-panel{display:flex;justify-content:space-between;flex-wrap:wrap;margin-bottom:-16px}:host::ng-deep .search-panel acl-search-item{width:33.33%}:host::ng-deep .search-panel acl-search-item .search-panel__item{width:100%;margin-bottom:16px;display:inline-flex}:host::ng-deep .search-panel acl-search-item .search-panel__item>*{display:inline-flex}:host::ng-deep .search-panel acl-search-item .search-panel__item>label{padding-right:8px;justify-content:flex-end;text-align:right;line-height:var(--aui-line-height-s);align-items:center;min-width:70px;margin-left:20px}html:not([lang|=zh]) :host::ng-deep .search-panel acl-search-item .search-panel__item>label{min-width:110px}:host::ng-deep .search-panel acl-search-item .search-panel__item>label:after{content:\":\";margin-left:2px}:host::ng-deep .search-panel acl-search-item .search-panel__item>aui-select{flex:1}:host::ng-deep .search-panel acl-search-item:nth-of-type(3n+1) .search-panel__item label{margin-left:0}\n"] }]
36
+ }], propDecorators: { enableEnterHandler: [{
37
+ type: Input
38
+ }], search: [{
39
+ type: Output
40
+ }], resetSearch: [{
41
+ type: Output
42
+ }], items: [{
43
+ type: ContentChildren,
44
+ args: [SearchItemComponent, {
45
+ descendants: true,
46
+ }]
47
+ }], enter: [{
48
+ type: HostListener,
49
+ args: ['document:keydown.enter', ['$event']]
50
+ }] } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2NvbXBvbmVudHMvc2VhcmNoLXBhbmVsL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy9jb21wb25lbnRzL3NlYXJjaC1wYW5lbC90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLGVBQWUsRUFDZixTQUFTLEVBRVQsS0FBSyxFQUNMLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRS9CLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQVU5RCxNQUFNLE9BQU8sb0JBQW9CO0lBUmpDO1FBVUUsdUJBQWtCLEdBQWlCLElBQUksQ0FBQztRQUd4QyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUdsQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFjdkMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO0tBY3ZDO0lBcEJDLEtBQUs7UUFDSCxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztJQUlELGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsNkJBQTZCO0lBQ3JCLGVBQWUsQ0FBQyxNQUFzQztRQUM1RCxPQUFPLE1BQU0sRUFBRSxNQUFNLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDOzhHQW5DVSxvQkFBb0I7a0dBQXBCLG9CQUFvQix1UkFVZCxtQkFBbUIsZ0RDcEN0Qyw2bUJBdUJBLDRqQ0RBWSxtQkFBbUIsNERBQUUsZUFBZSxpSUFBRSxhQUFhLDZDQUFFLFNBQVM7OzJGQUc3RCxvQkFBb0I7a0JBUmhDLFNBQVM7K0JBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU0sV0FDdEMsQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFNBQVMsQ0FBQyxjQUM3RCxJQUFJOzhCQUloQixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxNQUFNO2dCQUlQLFdBQVc7c0JBRFYsTUFBTTtnQkFNUCxLQUFLO3NCQUhKLGVBQWU7dUJBQUMsbUJBQW1CLEVBQUU7d0JBQ3BDLFdBQVcsRUFBRSxJQUFJO3FCQUNsQjtnQkFJRCxLQUFLO3NCQURKLFlBQVk7dUJBQUMsd0JBQXdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIGNvZXJjZUF0dHJCb29sZWFuIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQGFsYXVkYS1mZS9keW5hbWljLXBsdWdpbi1zZGsnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgSW5wdXQsXG4gIEhvc3RMaXN0ZW5lcixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFNlYXJjaEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1pdGVtL2NvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1zZWFyY2gtcGFuZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtTZWFyY2hJdGVtQ29tcG9uZW50LCBCdXR0b25Db21wb25lbnQsIFRyYW5zbGF0ZVBpcGUsIEFzeW5jUGlwZV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaFBhbmVsQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpXG4gIGVuYWJsZUVudGVySGFuZGxlcjogYm9vbGVhbiB8ICcnID0gdHJ1ZTtcblxuICBAT3V0cHV0KClcbiAgc2VhcmNoID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICByZXNldFNlYXJjaCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAQ29udGVudENoaWxkcmVuKFNlYXJjaEl0ZW1Db21wb25lbnQsIHtcbiAgICBkZXNjZW5kYW50czogdHJ1ZSxcbiAgfSlcbiAgaXRlbXM6IFF1ZXJ5TGlzdDxTZWFyY2hJdGVtQ29tcG9uZW50PjtcblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVudGVyJywgWyckZXZlbnQnXSlcbiAgZW50ZXIoKSB7XG4gICAgaWYgKGNvZXJjZUF0dHJCb29sZWFuKHRoaXMuZW5hYmxlRW50ZXJIYW5kbGVyKSkge1xuICAgICAgdGhpcy5zZWFyY2gubmV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIGlzRnVsV2lkdGgkJCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaXRlbXMuY2hhbmdlcy5zdWJzY3JpYmUocGFuZWxzID0+IHtcbiAgICAgIHRoaXMuaXNGdWxXaWR0aCQkLm5leHQodGhpcy5jaGVja0l0ZW1MZW5ndGgocGFuZWxzKSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmlzRnVsV2lkdGgkJC5uZXh0KHRoaXMuY2hlY2tJdGVtTGVuZ3RoKHRoaXMuaXRlbXMpKTtcbiAgfVxuXG4gIC8vIOW9k+S4gOaOkuaUvuS4jeS4iyAzIOS4qumAiemhueeahOaXtuWAme+8jOaTjeS9nOaMiemSruiHquWKqOaUvue9ruacgOWQjlxuICBwcml2YXRlIGNoZWNrSXRlbUxlbmd0aChwYW5lbHM6IFF1ZXJ5TGlzdDxTZWFyY2hJdGVtQ29tcG9uZW50Pikge1xuICAgIHJldHVybiBwYW5lbHM/Lmxlbmd0aCAlIDMgPT09IDA7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzZWFyY2gtcGFuZWxcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8YWNsLXNlYXJjaC1pdGVtIFtzdHlsZS53aWR0aF09XCIoaXNGdWxXaWR0aCQkIHwgYXN5bmMpID8gJzEwMCUnIDogJydcIj5cbiAgICA8ZGl2IGNsYXNzPVwidHctanVzdGlmeS1lbmQgdHctdy1mdWxsIHNlYXJjaFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgYXVpLWJ1dHRvbj1cInByaW1hcnlcIlxuICAgICAgICAoY2xpY2spPVwic2VhcmNoLmVtaXQoKVwiXG4gICAgICA+XG4gICAgICAgIHt7ICdzZWFyY2gnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGF1aS1idXR0b25cbiAgICAgICAgKGNsaWNrKT1cInJlc2V0U2VhcmNoLmVtaXQoKVwiXG4gICAgICA+XG4gICAgICAgIHt7ICdyZXNldCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbYWRkaXRpb25hbF1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvYWNsLXNlYXJjaC1pdGVtPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,14 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class SearchItemLabelDirective {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SearchItemLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: SearchItemLabelDirective, isStandalone: true, selector: "label[aclSearchItemLabel]", ngImport: i0 }); }
6
+ }
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SearchItemLabelDirective, decorators: [{
8
+ type: Directive,
9
+ args: [{
10
+ selector: 'label[aclSearchItemLabel]',
11
+ standalone: true,
12
+ }]
13
+ }] });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy9jb21wb25lbnRzL3NlYXJjaC1wYW5lbC9oZWxwZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTFDLE1BQU0sT0FBTyx3QkFBd0I7OEdBQXhCLHdCQUF3QjtrR0FBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQUpwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdsYWJlbFthY2xTZWFyY2hJdGVtTGFiZWxdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoSXRlbUxhYmVsRGlyZWN0aXZlIHt9XG4iXX0=