@alauda-fe/dynamic-plugin-shared 0.0.1-alpha.8 → 0.0.3-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/assets/i18n/en/dynamic-plugin-shared.json +3 -0
  2. package/assets/images/overview-banner.svg +1 -0
  3. package/fesm2022/alauda-fe-dynamic-plugin-shared.mjs +3038 -1828
  4. package/fesm2022/alauda-fe-dynamic-plugin-shared.mjs.map +1 -1
  5. package/package.json +15 -17
  6. package/styles/lib.scss +1 -1
  7. package/styles/mixins.scss +1 -210
  8. package/styles/var.scss +1 -26
  9. package/types/alauda-fe-dynamic-plugin-shared.d.ts +5692 -0
  10. package/array-form-table/base-string-map-form.component.d.ts +0 -22
  11. package/array-form-table/form/component.d.ts +0 -106
  12. package/array-form-table/form/index.d.ts +0 -3
  13. package/array-form-table/index.d.ts +0 -10
  14. package/array-form-table/key-value-form/component.d.ts +0 -38
  15. package/array-form-table/key-value-table/component.d.ts +0 -9
  16. package/array-form-table/string-array-form/component.d.ts +0 -41
  17. package/async-data/async-data-loader.d.ts +0 -31
  18. package/async-data/error-page/component.d.ts +0 -30
  19. package/async-data/index.d.ts +0 -13
  20. package/async-data/page-state/component.d.ts +0 -21
  21. package/async-data/types.d.ts +0 -29
  22. package/code-editor/code-display-dialog/component.d.ts +0 -17
  23. package/code-editor/code-editor-configs.d.ts +0 -19
  24. package/code-editor/index.d.ts +0 -10
  25. package/code-editor/k8s-yaml-display-dialog/component.d.ts +0 -16
  26. package/code-editor/resource-yaml-display/component.d.ts +0 -21
  27. package/components/card-section/card-section.component.d.ts +0 -9
  28. package/components/confirm-delete/confirm-delete.component.d.ts +0 -57
  29. package/components/confirm-delete/utils.d.ts +0 -25
  30. package/components/current-time/component.d.ts +0 -14
  31. package/components/custom-columns-setting/component.d.ts +0 -16
  32. package/components/custom-columns-setting/index.d.ts +0 -1
  33. package/components/date-range-picker/component.d.ts +0 -55
  34. package/components/date-range-picker/index.d.ts +0 -3
  35. package/components/date-range-picker/type.d.ts +0 -36
  36. package/components/date-range-picker/util.d.ts +0 -11
  37. package/components/disabled-container/disabled-container.component.d.ts +0 -21
  38. package/components/disabled-container/index.d.ts +0 -7
  39. package/components/field-set/column/component.d.ts +0 -10
  40. package/components/field-set/group/component.d.ts +0 -6
  41. package/components/field-set/index.d.ts +0 -7
  42. package/components/field-set/item/component.d.ts +0 -13
  43. package/components/foldable-block/component.d.ts +0 -17
  44. package/components/foldable-item-in-table/component.d.ts +0 -21
  45. package/components/help-document/component.d.ts +0 -29
  46. package/components/help-document/directive.d.ts +0 -20
  47. package/components/help-document/index.d.ts +0 -8
  48. package/components/help-document/service.d.ts +0 -20
  49. package/components/index.d.ts +0 -32
  50. package/components/loading-mask/loading-mask.component.d.ts +0 -13
  51. package/components/page-guard/component/component.d.ts +0 -40
  52. package/components/page-guard/component/helper-directives.d.ts +0 -17
  53. package/components/page-guard/component/page-guard.type.d.ts +0 -86
  54. package/components/page-guard/index.d.ts +0 -12
  55. package/components/password-input/component.d.ts +0 -39
  56. package/components/pod-status/component.d.ts +0 -25
  57. package/components/pod-status/index.d.ts +0 -3
  58. package/components/pod-status/status.d.ts +0 -4
  59. package/components/pod-status/typings.d.ts +0 -16
  60. package/components/relative-time/component.d.ts +0 -15
  61. package/components/resource-label/component.d.ts +0 -25
  62. package/components/resource-multi-select/component.d.ts +0 -41
  63. package/components/resource-multi-select/util.d.ts +0 -10
  64. package/components/search-panel/component.d.ts +0 -16
  65. package/components/search-panel/helper.directive.d.ts +0 -5
  66. package/components/search-panel/search-item/component.d.ts +0 -7
  67. package/components/select-prefix-label/directive.d.ts +0 -17
  68. package/components/status-icon/status-icon.component.d.ts +0 -16
  69. package/components/tags-label/component.d.ts +0 -56
  70. package/components/terminating-tag/component.d.ts +0 -7
  71. package/components/text-ellipsis/component.d.ts +0 -9
  72. package/components/text-tooltip/directive.d.ts +0 -21
  73. package/components/text-with-url/component.d.ts +0 -12
  74. package/components/upload-file/component.d.ts +0 -32
  75. package/components/workload-status/component.d.ts +0 -37
  76. package/components/workload-status/index.d.ts +0 -1
  77. package/components/zero-state/zero-state.component.d.ts +0 -17
  78. package/constants/common.d.ts +0 -64
  79. package/constants/index.d.ts +0 -6
  80. package/constants/k8s.d.ts +0 -12
  81. package/constants/patterns.d.ts +0 -124
  82. package/constants/resource-definitions.d.ts +0 -414
  83. package/constants/status-icons.d.ts +0 -34
  84. package/constants/timezones.d.ts +0 -6
  85. package/directives/aui-code-editor.directive.d.ts +0 -13
  86. package/directives/click-outside.directive.d.ts +0 -12
  87. package/directives/declare.directive.d.ts +0 -8
  88. package/directives/disabled.directive.d.ts +0 -28
  89. package/directives/effect-directive/coerce-number.directive.d.ts +0 -8
  90. package/directives/effect-directive/e2e-attribute-binding.directive.d.ts +0 -10
  91. package/directives/effect-directive/event.directive.d.ts +0 -47
  92. package/directives/effect-directive/index.d.ts +0 -12
  93. package/directives/effect-directive/min-max.directive.d.ts +0 -30
  94. package/directives/effect-directive/trim.directive.d.ts +0 -7
  95. package/directives/effect-directive/validators.directive.d.ts +0 -12
  96. package/directives/feature-gate.directive.d.ts +0 -31
  97. package/directives/index.d.ts +0 -12
  98. package/directives/last-form-item.directive.d.ts +0 -8
  99. package/directives/readonly-field.directive.d.ts +0 -39
  100. package/directives/resize.directive.d.ts +0 -17
  101. package/directives/scroll-border-observer.directive.d.ts +0 -23
  102. package/directives/scroll-to-first-invalid.directive.d.ts +0 -24
  103. package/directives/value-trace.directive.d.ts +0 -27
  104. package/esm2022/alauda-fe-dynamic-plugin-shared.mjs +0 -5
  105. package/esm2022/array-form-table/base-string-map-form.component.mjs +0 -92
  106. package/esm2022/array-form-table/form/component.mjs +0 -266
  107. package/esm2022/array-form-table/form/index.mjs +0 -13
  108. package/esm2022/array-form-table/index.mjs +0 -11
  109. package/esm2022/array-form-table/key-value-form/component.mjs +0 -135
  110. package/esm2022/array-form-table/key-value-table/component.mjs +0 -24
  111. package/esm2022/array-form-table/string-array-form/component.mjs +0 -168
  112. package/esm2022/async-data/async-data-loader.mjs +0 -63
  113. package/esm2022/async-data/error-page/component.mjs +0 -54
  114. package/esm2022/async-data/index.mjs +0 -18
  115. package/esm2022/async-data/page-state/component.mjs +0 -62
  116. package/esm2022/async-data/types.mjs +0 -6
  117. package/esm2022/code-editor/code-display-dialog/component.mjs +0 -35
  118. package/esm2022/code-editor/code-editor-configs.mjs +0 -66
  119. package/esm2022/code-editor/index.mjs +0 -11
  120. package/esm2022/code-editor/k8s-yaml-display-dialog/component.mjs +0 -26
  121. package/esm2022/code-editor/resource-yaml-display/component.mjs +0 -67
  122. package/esm2022/components/card-section/card-section.component.mjs +0 -24
  123. package/esm2022/components/confirm-delete/confirm-delete.component.mjs +0 -192
  124. package/esm2022/components/confirm-delete/utils.mjs +0 -8
  125. package/esm2022/components/current-time/component.mjs +0 -39
  126. package/esm2022/components/custom-columns-setting/component.mjs +0 -75
  127. package/esm2022/components/custom-columns-setting/index.mjs +0 -2
  128. package/esm2022/components/date-range-picker/component.mjs +0 -215
  129. package/esm2022/components/date-range-picker/index.mjs +0 -4
  130. package/esm2022/components/date-range-picker/type.mjs +0 -2
  131. package/esm2022/components/date-range-picker/util.mjs +0 -57
  132. package/esm2022/components/disabled-container/disabled-container.component.mjs +0 -81
  133. package/esm2022/components/disabled-container/index.mjs +0 -8
  134. package/esm2022/components/field-set/column/component.mjs +0 -25
  135. package/esm2022/components/field-set/group/component.mjs +0 -16
  136. package/esm2022/components/field-set/index.mjs +0 -14
  137. package/esm2022/components/field-set/item/component.mjs +0 -41
  138. package/esm2022/components/foldable-block/component.mjs +0 -60
  139. package/esm2022/components/foldable-item-in-table/component.mjs +0 -56
  140. package/esm2022/components/help-document/component.mjs +0 -69
  141. package/esm2022/components/help-document/directive.mjs +0 -70
  142. package/esm2022/components/help-document/index.mjs +0 -9
  143. package/esm2022/components/help-document/service.mjs +0 -43
  144. package/esm2022/components/index.mjs +0 -33
  145. package/esm2022/components/loading-mask/loading-mask.component.mjs +0 -35
  146. package/esm2022/components/page-guard/component/component.mjs +0 -101
  147. package/esm2022/components/page-guard/component/helper-directives.mjs +0 -51
  148. package/esm2022/components/page-guard/component/page-guard.type.mjs +0 -82
  149. package/esm2022/components/page-guard/index.mjs +0 -19
  150. package/esm2022/components/password-input/component.mjs +0 -143
  151. package/esm2022/components/pod-status/component.mjs +0 -49
  152. package/esm2022/components/pod-status/index.mjs +0 -4
  153. package/esm2022/components/pod-status/status.mjs +0 -84
  154. package/esm2022/components/pod-status/typings.mjs +0 -19
  155. package/esm2022/components/relative-time/component.mjs +0 -58
  156. package/esm2022/components/resource-label/component.mjs +0 -100
  157. package/esm2022/components/resource-multi-select/component.mjs +0 -152
  158. package/esm2022/components/resource-multi-select/util.mjs +0 -24
  159. package/esm2022/components/search-panel/component.mjs +0 -51
  160. package/esm2022/components/search-panel/helper.directive.mjs +0 -14
  161. package/esm2022/components/search-panel/search-item/component.mjs +0 -15
  162. package/esm2022/components/select-prefix-label/directive.mjs +0 -89
  163. package/esm2022/components/status-icon/status-icon.component.mjs +0 -56
  164. package/esm2022/components/tags-label/component.mjs +0 -224
  165. package/esm2022/components/terminating-tag/component.mjs +0 -16
  166. package/esm2022/components/text-ellipsis/component.mjs +0 -28
  167. package/esm2022/components/text-tooltip/directive.mjs +0 -71
  168. package/esm2022/components/text-with-url/component.mjs +0 -40
  169. package/esm2022/components/upload-file/component.mjs +0 -95
  170. package/esm2022/components/workload-status/component.mjs +0 -33
  171. package/esm2022/components/workload-status/index.mjs +0 -2
  172. package/esm2022/components/zero-state/zero-state.component.mjs +0 -56
  173. package/esm2022/constants/common.mjs +0 -86
  174. package/esm2022/constants/index.mjs +0 -7
  175. package/esm2022/constants/k8s.mjs +0 -13
  176. package/esm2022/constants/patterns.mjs +0 -142
  177. package/esm2022/constants/resource-definitions.mjs +0 -424
  178. package/esm2022/constants/status-icons.mjs +0 -65
  179. package/esm2022/constants/timezones.mjs +0 -234
  180. package/esm2022/directives/aui-code-editor.directive.mjs +0 -30
  181. package/esm2022/directives/click-outside.directive.mjs +0 -49
  182. package/esm2022/directives/declare.directive.mjs +0 -27
  183. package/esm2022/directives/disabled.directive.mjs +0 -76
  184. package/esm2022/directives/effect-directive/coerce-number.directive.mjs +0 -54
  185. package/esm2022/directives/effect-directive/e2e-attribute-binding.directive.mjs +0 -57
  186. package/esm2022/directives/effect-directive/event.directive.mjs +0 -129
  187. package/esm2022/directives/effect-directive/index.mjs +0 -21
  188. package/esm2022/directives/effect-directive/min-max.directive.mjs +0 -107
  189. package/esm2022/directives/effect-directive/trim.directive.mjs +0 -40
  190. package/esm2022/directives/effect-directive/validators.directive.mjs +0 -43
  191. package/esm2022/directives/feature-gate.directive.mjs +0 -90
  192. package/esm2022/directives/index.mjs +0 -13
  193. package/esm2022/directives/last-form-item.directive.mjs +0 -18
  194. package/esm2022/directives/readonly-field.directive.mjs +0 -145
  195. package/esm2022/directives/resize.directive.mjs +0 -39
  196. package/esm2022/directives/scroll-border-observer.directive.mjs +0 -77
  197. package/esm2022/directives/scroll-to-first-invalid.directive.mjs +0 -126
  198. package/esm2022/directives/value-trace.directive.mjs +0 -61
  199. package/esm2022/form/base-form-container.mjs +0 -126
  200. package/esm2022/form/base-nested-form-control.mjs +0 -190
  201. package/esm2022/form/errors-mapper/base-errors-mapper.mjs +0 -41
  202. package/esm2022/form/errors-mapper/default-errors-mapper.service.mjs +0 -65
  203. package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +0 -53
  204. package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +0 -109
  205. package/esm2022/form/errors-mapper/index.mjs +0 -10
  206. package/esm2022/form/errors-mapper/types.mjs +0 -2
  207. package/esm2022/form/index.mjs +0 -6
  208. package/esm2022/form/utils.mjs +0 -61
  209. package/esm2022/form/validators/async-function-validator.directive.mjs +0 -49
  210. package/esm2022/form/validators/dns1123-subdomain.mjs +0 -42
  211. package/esm2022/form/validators/function-validator.directive.mjs +0 -49
  212. package/esm2022/form/validators/index.mjs +0 -10
  213. package/esm2022/form/validators/maxlength-minlength-validator.directive.mjs +0 -71
  214. package/esm2022/form/validators/not-be-validator.directive.mjs +0 -56
  215. package/esm2022/form/validators/one-of-validator.directive.mjs +0 -57
  216. package/esm2022/form/validators/resource-limit.mjs +0 -79
  217. package/esm2022/form/validators/strong-password/index.mjs +0 -4
  218. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +0 -15
  219. package/esm2022/form/validators/strong-password/strong-password-validator.directive.mjs +0 -171
  220. package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +0 -36
  221. package/esm2022/form/validators/utils.mjs +0 -155
  222. package/esm2022/index.mjs +0 -15
  223. package/esm2022/k8s-resource-list/footer/component.mjs +0 -161
  224. package/esm2022/k8s-resource-list/index.mjs +0 -18
  225. package/esm2022/k8s-resource-list/k8s-resource-list.mjs +0 -224
  226. package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +0 -174
  227. package/esm2022/k8s-resource-list/types.mjs +0 -11
  228. package/esm2022/k8s-resource-list/utils.mjs +0 -84
  229. package/esm2022/k8s-shared/constants.mjs +0 -53
  230. package/esm2022/k8s-shared/index.mjs +0 -12
  231. package/esm2022/k8s-shared/k8s-resource-translate-key.pipe.mjs +0 -31
  232. package/esm2022/k8s-shared/k8s-shared-util.service.mjs +0 -152
  233. package/esm2022/k8s-shared/resource-mark/component.mjs +0 -54
  234. package/esm2022/k8s-shared/resource-mark/util.mjs +0 -137
  235. package/esm2022/k8s-shared/update-description-dialog/component.mjs +0 -66
  236. package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +0 -59
  237. package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +0 -76
  238. package/esm2022/page-deactivate/deactivate.directive.mjs +0 -50
  239. package/esm2022/page-deactivate/deactivate.guard.mjs +0 -41
  240. package/esm2022/page-deactivate/deactivate.service.mjs +0 -78
  241. package/esm2022/page-deactivate/index.mjs +0 -4
  242. package/esm2022/pipes/calc.pipe.mjs +0 -21
  243. package/esm2022/pipes/cron-human-readable.pipe.mjs +0 -30
  244. package/esm2022/pipes/crontab-next.pipe.mjs +0 -67
  245. package/esm2022/pipes/duration.pipe.mjs +0 -51
  246. package/esm2022/pipes/field-not-available.pipe.mjs +0 -25
  247. package/esm2022/pipes/img-header.pipe.mjs +0 -18
  248. package/esm2022/pipes/img-theme.pipe.mjs +0 -38
  249. package/esm2022/pipes/index.mjs +0 -19
  250. package/esm2022/pipes/keyvalue.pipe.mjs +0 -20
  251. package/esm2022/pipes/marked.pipe.mjs +0 -18
  252. package/esm2022/pipes/minimum-format.pipe.mjs +0 -25
  253. package/esm2022/pipes/page-env.pipe.mjs +0 -69
  254. package/esm2022/pipes/parse-json-translate.pipe.mjs +0 -28
  255. package/esm2022/pipes/parse-json.pipe.mjs +0 -22
  256. package/esm2022/pipes/pure.pipe.mjs +0 -26
  257. package/esm2022/pipes/safe.pipe.mjs +0 -49
  258. package/esm2022/pipes/sanitize.pipe.mjs +0 -31
  259. package/esm2022/pipes/time.pipe.mjs +0 -113
  260. package/esm2022/pipes/timezone-display.pipe.mjs +0 -21
  261. package/esm2022/services/form-row-duplicate/form-row-duplicate.service.mjs +0 -280
  262. package/esm2022/services/index.mjs +0 -4
  263. package/esm2022/services/on-resize.service.mjs +0 -52
  264. package/esm2022/services/yaml-util.service.mjs +0 -99
  265. package/esm2022/types/common.mjs +0 -6
  266. package/esm2022/types/helpers.mjs +0 -12
  267. package/esm2022/types/index.mjs +0 -9
  268. package/esm2022/types/k8s/core.mjs +0 -2
  269. package/esm2022/types/k8s/crd.mjs +0 -57
  270. package/esm2022/types/k8s/index.mjs +0 -4
  271. package/esm2022/types/k8s/raw.mjs +0 -77
  272. package/esm2022/types/schema.mjs +0 -2
  273. package/esm2022/utils/browser.mjs +0 -21
  274. package/esm2022/utils/cache-store.mjs +0 -83
  275. package/esm2022/utils/color-helpers.mjs +0 -6
  276. package/esm2022/utils/common.mjs +0 -315
  277. package/esm2022/utils/cron-util.mjs +0 -44
  278. package/esm2022/utils/decorators.mjs +0 -137
  279. package/esm2022/utils/disabled-state.mjs +0 -47
  280. package/esm2022/utils/format-number.mjs +0 -227
  281. package/esm2022/utils/index.mjs +0 -24
  282. package/esm2022/utils/local-storage-constants.mjs +0 -2
  283. package/esm2022/utils/node.mjs +0 -18
  284. package/esm2022/utils/observable.mjs +0 -32
  285. package/esm2022/utils/operators.mjs +0 -38
  286. package/esm2022/utils/request-pool.mjs +0 -37
  287. package/esm2022/utils/resources.mjs +0 -66
  288. package/esm2022/utils/router.mjs +0 -20
  289. package/esm2022/utils/sort-fn.mjs +0 -7
  290. package/esm2022/utils/tree.mjs +0 -79
  291. package/esm2022/utils/unit.mjs +0 -191
  292. package/esm2022/utils/version.mjs +0 -76
  293. package/esm2022/utils/with-load-state.mjs +0 -21
  294. package/esm2022/utils/workload.mjs +0 -183
  295. package/esm2022/utils/workspace.mjs +0 -59
  296. package/esm2022/utils/yaml.mjs +0 -54
  297. package/form/base-form-container.d.ts +0 -41
  298. package/form/base-nested-form-control.d.ts +0 -58
  299. package/form/errors-mapper/base-errors-mapper.d.ts +0 -13
  300. package/form/errors-mapper/default-errors-mapper.service.d.ts +0 -10
  301. package/form/errors-mapper/errors-mapper-component/component.d.ts +0 -19
  302. package/form/errors-mapper/errors-mapper.directive.d.ts +0 -39
  303. package/form/errors-mapper/index.d.ts +0 -6
  304. package/form/errors-mapper/types.d.ts +0 -16
  305. package/form/index.d.ts +0 -5
  306. package/form/utils.d.ts +0 -40
  307. package/form/validators/async-function-validator.directive.d.ts +0 -11
  308. package/form/validators/dns1123-subdomain.d.ts +0 -28
  309. package/form/validators/function-validator.directive.d.ts +0 -11
  310. package/form/validators/index.d.ts +0 -9
  311. package/form/validators/maxlength-minlength-validator.directive.d.ts +0 -20
  312. package/form/validators/not-be-validator.directive.d.ts +0 -12
  313. package/form/validators/one-of-validator.directive.d.ts +0 -12
  314. package/form/validators/resource-limit.d.ts +0 -17
  315. package/form/validators/strong-password/index.d.ts +0 -3
  316. package/form/validators/strong-password/strong-password-tooltip/component.d.ts +0 -6
  317. package/form/validators/strong-password/strong-password-validator.directive.d.ts +0 -34
  318. package/form/validators/strong-password/strong-password-validator.module.d.ts +0 -12
  319. package/form/validators/utils.d.ts +0 -67
  320. package/index.d.ts +0 -14
  321. package/k8s-resource-list/footer/component.d.ts +0 -43
  322. package/k8s-resource-list/index.d.ts +0 -13
  323. package/k8s-resource-list/k8s-resource-list.d.ts +0 -42
  324. package/k8s-resource-list/k8s-resource-paged-list.d.ts +0 -61
  325. package/k8s-resource-list/types.d.ts +0 -70
  326. package/k8s-resource-list/utils.d.ts +0 -19
  327. package/k8s-shared/constants.d.ts +0 -7
  328. package/k8s-shared/index.d.ts +0 -11
  329. package/k8s-shared/k8s-resource-translate-key.pipe.d.ts +0 -9
  330. package/k8s-shared/k8s-shared-util.service.d.ts +0 -48
  331. package/k8s-shared/resource-mark/component.d.ts +0 -16
  332. package/k8s-shared/resource-mark/util.d.ts +0 -2
  333. package/k8s-shared/update-description-dialog/component.d.ts +0 -33
  334. package/k8s-shared/update-display-name-dialog/component.d.ts +0 -27
  335. package/k8s-shared/update-key-value-dialog/component.d.ts +0 -38
  336. package/page-deactivate/deactivate.directive.d.ts +0 -18
  337. package/page-deactivate/deactivate.guard.d.ts +0 -13
  338. package/page-deactivate/deactivate.service.d.ts +0 -28
  339. package/page-deactivate/index.d.ts +0 -3
  340. package/pipes/calc.pipe.d.ts +0 -11
  341. package/pipes/cron-human-readable.pipe.d.ts +0 -9
  342. package/pipes/crontab-next.pipe.d.ts +0 -18
  343. package/pipes/duration.pipe.d.ts +0 -10
  344. package/pipes/field-not-available.pipe.d.ts +0 -13
  345. package/pipes/img-header.pipe.d.ts +0 -7
  346. package/pipes/img-theme.pipe.d.ts +0 -13
  347. package/pipes/index.d.ts +0 -18
  348. package/pipes/keyvalue.pipe.d.ts +0 -9
  349. package/pipes/marked.pipe.d.ts +0 -8
  350. package/pipes/minimum-format.pipe.d.ts +0 -10
  351. package/pipes/page-env.pipe.d.ts +0 -34
  352. package/pipes/parse-json-translate.pipe.d.ts +0 -8
  353. package/pipes/parse-json.pipe.d.ts +0 -7
  354. package/pipes/pure.pipe.d.ts +0 -17
  355. package/pipes/safe.pipe.d.ts +0 -10
  356. package/pipes/sanitize.pipe.d.ts +0 -10
  357. package/pipes/time.pipe.d.ts +0 -40
  358. package/pipes/timezone-display.pipe.d.ts +0 -10
  359. package/services/form-row-duplicate/form-row-duplicate.service.d.ts +0 -45
  360. package/services/index.d.ts +0 -3
  361. package/services/on-resize.service.d.ts +0 -20
  362. package/services/yaml-util.service.d.ts +0 -20
  363. package/styles/global.scss +0 -904
  364. package/types/common.d.ts +0 -42
  365. package/types/helpers.d.ts +0 -35
  366. package/types/index.d.ts +0 -8
  367. package/types/k8s/core.d.ts +0 -100
  368. package/types/k8s/crd.d.ts +0 -497
  369. package/types/k8s/index.d.ts +0 -3
  370. package/types/k8s/raw.d.ts +0 -860
  371. package/types/schema.d.ts +0 -14
  372. package/utils/browser.d.ts +0 -4
  373. package/utils/cache-store.d.ts +0 -35
  374. package/utils/color-helpers.d.ts +0 -4
  375. package/utils/common.d.ts +0 -64
  376. package/utils/cron-util.d.ts +0 -8
  377. package/utils/decorators.d.ts +0 -14
  378. package/utils/disabled-state.d.ts +0 -20
  379. package/utils/format-number.d.ts +0 -11
  380. package/utils/index.d.ts +0 -23
  381. package/utils/local-storage-constants.d.ts +0 -1
  382. package/utils/node.d.ts +0 -8
  383. package/utils/observable.d.ts +0 -5
  384. package/utils/operators.d.ts +0 -22
  385. package/utils/request-pool.d.ts +0 -12
  386. package/utils/resources.d.ts +0 -19
  387. package/utils/router.d.ts +0 -3
  388. package/utils/sort-fn.d.ts +0 -2
  389. package/utils/tree.d.ts +0 -16
  390. package/utils/unit.d.ts +0 -21
  391. package/utils/version.d.ts +0 -39
  392. package/utils/with-load-state.d.ts +0 -11
  393. package/utils/workload.d.ts +0 -66
  394. package/utils/workspace.d.ts +0 -28
  395. package/utils/yaml.d.ts +0 -11
@@ -1,145 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- /**
3
- * @packageDocumentation
4
- * @module utils
5
- */
6
- import { FormItemControlDirective } from '@alauda/ui';
7
- import { CdkPortalOutlet, ComponentPortal, TemplatePortal, } from '@angular/cdk/portal';
8
- import { ChangeDetectionStrategy, Component, ComponentFactoryResolver, Directive, HostBinding, Input, Optional, Self, TemplateRef, ViewContainerRef, } from '@angular/core';
9
- import { NgControl, } from '@angular/forms';
10
- import { Observable, Subject, combineLatest, distinctUntilChanged, filter, map, startWith, takeUntil, } from 'rxjs';
11
- import { FieldNotAvailablePipe } from '../pipes/field-not-available.pipe';
12
- import { ObservableInput } from '../utils';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "@angular/forms";
15
- import * as i2 from "@alauda/ui";
16
- export class ReadonlyFieldDirective {
17
- get isHidden() {
18
- return this.hidden || this.aclReadonlyField;
19
- }
20
- constructor(control, cfr, viewContainerRef,
21
- // 仅考虑当前control,子control无法知晓父FormItemControl元素 ,包裹了多少个control,以及各自处于什么状态,该情况自行处理
22
- controlDirective) {
23
- this.control = control;
24
- this.cfr = cfr;
25
- this.viewContainerRef = viewContainerRef;
26
- this.controlDirective = controlDirective;
27
- this.isControlRequired = false;
28
- this.templateContext = {};
29
- this.destroy$ = new Subject();
30
- }
31
- setValue(value) {
32
- if (this.template) {
33
- Object.assign(this.templateContext, {
34
- $implicit: value,
35
- ...this.context,
36
- });
37
- }
38
- else {
39
- this.spanComponentRef.instance.setData(value);
40
- }
41
- }
42
- ngOnInit() {
43
- const controlEntity = this.control.control;
44
- // formControl will compose multi validators to 1, no matter defined in template nor FormBuilder
45
- const { validator, asyncValidator } = controlEntity;
46
- this.isControlRequired = this.controlDirective?.required || false;
47
- const portalOutlet = new CdkPortalOutlet(this.cfr, this.viewContainerRef);
48
- const portal = this.template
49
- ? new TemplatePortal(this.template, this.viewContainerRef, this.templateContext)
50
- : new ComponentPortal(SpanComponent, this.viewContainerRef);
51
- const containerAttached$ = this.aclReadonlyField$.pipe(distinctUntilChanged(), map(isUpdate => {
52
- if (!isUpdate) {
53
- // 重置
54
- if (this.controlDirective) {
55
- this.controlDirective.required = this.isControlRequired;
56
- }
57
- if (portalOutlet.hasAttached()) {
58
- portalOutlet.detach();
59
- }
60
- this.applyValidators(controlEntity, validator, asyncValidator);
61
- return false;
62
- }
63
- if (this.controlDirective) {
64
- this.controlDirective.required = false;
65
- }
66
- const attachPoint = portalOutlet.attach(portal);
67
- if (!this.template) {
68
- this.spanComponentRef = attachPoint;
69
- }
70
- this.clearValidators(controlEntity);
71
- return true;
72
- }));
73
- const sourceValue$ = this.control.valueChanges.pipe(startWith(this.control.value));
74
- combineLatest([sourceValue$, containerAttached$])
75
- .pipe(takeUntil(this.destroy$), filter(([, attached]) => !!attached))
76
- .subscribe(([value]) => {
77
- this.setValue(value);
78
- });
79
- }
80
- applyValidators(control, rawValidator, rawAsyncValidator) {
81
- if (control.validator === rawValidator &&
82
- control.asyncValidator === rawAsyncValidator) {
83
- return;
84
- }
85
- control.setValidators(rawValidator);
86
- control.setAsyncValidators(rawAsyncValidator);
87
- control.updateValueAndValidity();
88
- }
89
- clearValidators(control) {
90
- // delay checking validators for ngModel
91
- requestAnimationFrame(() => {
92
- if (!control.validator && !control.asyncValidator) {
93
- return;
94
- }
95
- control.clearValidators();
96
- control.clearAsyncValidators();
97
- control.updateValueAndValidity();
98
- });
99
- }
100
- ngOnDestroy() {
101
- this.destroy$.next();
102
- }
103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ReadonlyFieldDirective, deps: [{ token: i1.NgControl }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: i2.FormItemControlDirective, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
104
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: ReadonlyFieldDirective, isStandalone: true, selector: "[aclReadonlyField]", inputs: { aclReadonlyField: "aclReadonlyField", hidden: "hidden", template: ["aclReadonlyFieldTemplate", "template"], context: ["aclReadonlyFieldTemplateContext", "context"] }, host: { properties: { "hidden": "this.isHidden" } }, ngImport: i0 }); }
105
- }
106
- __decorate([
107
- ObservableInput(),
108
- __metadata("design:type", Observable)
109
- ], ReadonlyFieldDirective.prototype, "aclReadonlyField$", void 0);
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ReadonlyFieldDirective, decorators: [{
111
- type: Directive,
112
- args: [{
113
- selector: '[aclReadonlyField]',
114
- standalone: true,
115
- }]
116
- }], ctorParameters: () => [{ type: i1.NgControl }, { type: i0.ComponentFactoryResolver }, { type: i0.ViewContainerRef }, { type: i2.FormItemControlDirective, decorators: [{
117
- type: Self
118
- }, {
119
- type: Optional
120
- }] }], propDecorators: { aclReadonlyField: [{
121
- type: Input
122
- }], aclReadonlyField$: [], hidden: [{
123
- type: Input
124
- }], template: [{
125
- type: Input,
126
- args: ['aclReadonlyFieldTemplate']
127
- }], context: [{
128
- type: Input,
129
- args: ['aclReadonlyFieldTemplateContext']
130
- }], isHidden: [{
131
- type: HostBinding,
132
- args: ['hidden']
133
- }] } });
134
- export class SpanComponent {
135
- setData(value) {
136
- this.data = value;
137
- }
138
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpanComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
139
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpanComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `<span>{{ data | aclFieldNotAvailable }}</span>`, isInline: true, styles: ["span{word-break:break-all}\n"], dependencies: [{ kind: "pipe", type: FieldNotAvailablePipe, name: "aclFieldNotAvailable" }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
140
- }
141
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpanComponent, decorators: [{
142
- type: Component,
143
- args: [{ template: `<span>{{ data | aclFieldNotAvailable }}</span>`, changeDetection: ChangeDetectionStrategy.Default, standalone: true, imports: [FieldNotAvailablePipe], styles: ["span{word-break:break-all}\n"] }]
144
- }] });
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZG9ubHktZmllbGQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2RpcmVjdGl2ZXMvcmVhZG9ubHktZmllbGQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdEQsT0FBTyxFQUNMLGVBQWUsRUFDZixlQUFlLEVBQ2YsY0FBYyxHQUNmLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1Qsd0JBQXdCLEVBRXhCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxFQUdMLFFBQVEsRUFDUixJQUFJLEVBQ0osV0FBVyxFQUNYLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBR0wsU0FBUyxHQUVWLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLFVBQVUsRUFDVixPQUFPLEVBQ1AsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sR0FBRyxFQUNILFNBQVMsRUFDVCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7O0FBTTNDLE1BQU0sT0FBTyxzQkFBc0I7SUEyQmpDLElBQ0ksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDOUMsQ0FBQztJQUVELFlBQ21CLE9BQWtCLEVBQ2xCLEdBQTZCLEVBQzdCLGdCQUFrQztJQUNuRCxnRkFBZ0Y7SUFHL0QsZ0JBQTBDO1FBTjFDLFlBQU8sR0FBUCxPQUFPLENBQVc7UUFDbEIsUUFBRyxH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LENBQUM7OEdBMUlVLHNCQUFzQjtrR0FBdEIsc0JBQXNCOztBQUtqQztJQURDLGVBQWUsRUFBRTs4QkFDQyxVQUFVO2lFQUFVOzJGQUw1QixzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzswQkFzQ0ksSUFBSTs7MEJBQ0osUUFBUTt5Q0FwQ1gsZ0JBQWdCO3NCQURmLEtBQUs7Z0JBSU4saUJBQWlCLE1BR2pCLE1BQU07c0JBREwsS0FBSztnQkFhTixRQUFRO3NCQURQLEtBQUs7dUJBQUMsMEJBQTBCO2dCQU1qQyxPQUFPO3NCQUROLEtBQUs7dUJBQUMsaUNBQWlDO2dCQUlwQyxRQUFRO3NCQURYLFdBQVc7dUJBQUMsUUFBUTs7QUFnSXZCLE1BQU0sT0FBTyxhQUFhO0lBR3hCLE9BQU8sQ0FBQyxLQUFRO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7SUFDcEIsQ0FBQzs4R0FMVSxhQUFhO2tHQUFiLGFBQWEsd0VBYmQsZ0RBQWdELGlHQVdoRCxxQkFBcUI7OzJGQUVwQixhQUFhO2tCQWR6QixTQUFTOytCQUNFLGdEQUFnRCxtQkFTekMsdUJBQXVCLENBQUMsT0FBTyxjQUNwQyxJQUFJLFdBQ1AsQ0FBQyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIHV0aWxzXG4gKi9cblxuaW1wb3J0IHsgRm9ybUl0ZW1Db250cm9sRGlyZWN0aXZlIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBDZGtQb3J0YWxPdXRsZXQsXG4gIENvbXBvbmVudFBvcnRhbCxcbiAgVGVtcGxhdGVQb3J0YWwsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBDb21wb25lbnRSZWYsXG4gIERpcmVjdGl2ZSxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFNlbGYsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQXN5bmNWYWxpZGF0b3JGbixcbiAgTmdDb250cm9sLFxuICBWYWxpZGF0b3JGbixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgT2JzZXJ2YWJsZSxcbiAgU3ViamVjdCxcbiAgY29tYmluZUxhdGVzdCxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbHRlcixcbiAgbWFwLFxuICBzdGFydFdpdGgsXG4gIHRha2VVbnRpbCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEZpZWxkTm90QXZhaWxhYmxlUGlwZSB9IGZyb20gJy4uL3BpcGVzL2ZpZWxkLW5vdC1hdmFpbGFibGUucGlwZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlSW5wdXQgfSBmcm9tICcuLi91dGlscyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thY2xSZWFkb25seUZpZWxkXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFJlYWRvbmx5RmllbGREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIGFjbFJlYWRvbmx5RmllbGQ6IGJvb2xlYW47XG5cbiAgQE9ic2VydmFibGVJbnB1dCgpXG4gIGFjbFJlYWRvbmx5RmllbGQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIEBJbnB1dCgpXG4gIGhpZGRlbjogYm9vbGVhbjtcblxuICBwcml2YXRlIGlzQ29udHJvbFJlcXVpcmVkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBzcGFuQ29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8U3BhbkNvbXBvbmVudD47XG5cbiAgcHJpdmF0ZSByZWFkb25seSB0ZW1wbGF0ZUNvbnRleHQgPSB7fTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvLyDoh6rlrprkuYnmqKHmnb9cbiAgQElucHV0KCdhY2xSZWFkb25seUZpZWxkVGVtcGxhdGUnKVxuICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAvLyDoh6rlrprkuYnmqKHmnb9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdhY2xSZWFkb25seUZpZWxkVGVtcGxhdGVDb250ZXh0JylcbiAgY29udGV4dDogb2JqZWN0O1xuXG4gIEBIb3N0QmluZGluZygnaGlkZGVuJylcbiAgZ2V0IGlzSGlkZGVuKCkge1xuICAgIHJldHVybiB0aGlzLmhpZGRlbiB8fCB0aGlzLmFjbFJlYWRvbmx5RmllbGQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICAvLyDku4XogIPomZHlvZPliY1jb250cm9s77yM5a2QY29udHJvbOaXoOazleefpeaZk+eItkZvcm1JdGVtQ29udHJvbOWFg+e0oCDvvIzljIXoo7nkuoblpJrlsJHkuKpjb250cm9s77yM5Lul5Y+K5ZCE6Ieq5aSE5LqO5LuA5LmI54q25oCB77yM6K+l5oOF5Ya16Ieq6KGM5aSE55CGXG4gICAgQFNlbGYoKVxuICAgIEBPcHRpb25hbCgpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250cm9sRGlyZWN0aXZlOiBGb3JtSXRlbUNvbnRyb2xEaXJlY3RpdmUsXG4gICkge31cblxuICBwcml2YXRlIHNldFZhbHVlKHZhbHVlOiB1bmtub3duKSB7XG4gICAgaWYgKHRoaXMudGVtcGxhdGUpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24odGhpcy50ZW1wbGF0ZUNvbnRleHQsIHtcbiAgICAgICAgJGltcGxpY2l0OiB2YWx1ZSxcbiAgICAgICAgLi4udGhpcy5jb250ZXh0LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3BhbkNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZXREYXRhKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBjb250cm9sRW50aXR5ID0gdGhpcy5jb250cm9sLmNvbnRyb2w7XG4gICAgLy8gZm9ybUNvbnRyb2wgd2lsbCBjb21wb3NlIG11bHRpIHZhbGlkYXRvcnMgdG8gMSwgbm8gbWF0dGVyIGRlZmluZWQgaW4gdGVtcGxhdGUgbm9yIEZvcm1CdWlsZGVyXG4gICAgY29uc3QgeyB2YWxpZGF0b3IsIGFzeW5jVmFsaWRhdG9yIH0gPSBjb250cm9sRW50aXR5O1xuICAgIHRoaXMuaXNDb250cm9sUmVxdWlyZWQgPSB0aGlzLmNvbnRyb2xEaXJlY3RpdmU/LnJlcXVpcmVkIHx8IGZhbHNlO1xuICAgIGNvbnN0IHBvcnRhbE91dGxldCA9IG5ldyBDZGtQb3J0YWxPdXRsZXQodGhpcy5jZnIsIHRoaXMudmlld0NvbnRhaW5lclJlZik7XG4gICAgY29uc3QgcG9ydGFsID0gdGhpcy50ZW1wbGF0ZVxuICAgICAgPyBuZXcgVGVtcGxhdGVQb3J0YWwoXG4gICAgICAgICAgdGhpcy50ZW1wbGF0ZSxcbiAgICAgICAgICB0aGlzLnZpZXdDb250YWluZXJSZWYsXG4gICAgICAgICAgdGhpcy50ZW1wbGF0ZUNvbnRleHQsXG4gICAgICAgIClcbiAgICAgIDogbmV3IENvbXBvbmVudFBvcnRhbChTcGFuQ29tcG9uZW50LCB0aGlzLnZpZXdDb250YWluZXJSZWYpO1xuXG4gICAgY29uc3QgY29udGFpbmVyQXR0YWNoZWQkID0gdGhpcy5hY2xSZWFkb25seUZpZWxkJC5waXBlKFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIG1hcChpc1VwZGF0ZSA9PiB7XG4gICAgICAgIGlmICghaXNVcGRhdGUpIHtcbiAgICAgICAgICAvLyDph43nva5cbiAgICAgICAgICBpZiAodGhpcy5jb250cm9sRGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xEaXJlY3RpdmUucmVxdWlyZWQgPSB0aGlzLmlzQ29udHJvbFJlcXVpcmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAocG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcbiAgICAgICAgICAgIHBvcnRhbE91dGxldC5kZXRhY2goKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5hcHBseVZhbGlkYXRvcnMoY29udHJvbEVudGl0eSwgdmFsaWRhdG9yLCBhc3luY1ZhbGlkYXRvcik7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY29udHJvbERpcmVjdGl2ZSkge1xuICAgICAgICAgIHRoaXMuY29udHJvbERpcmVjdGl2ZS5yZXF1aXJlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGF0dGFjaFBvaW50ID0gcG9ydGFsT3V0bGV0LmF0dGFjaChwb3J0YWwpO1xuICAgICAgICBpZiAoIXRoaXMudGVtcGxhdGUpIHtcbiAgICAgICAgICB0aGlzLnNwYW5Db21wb25lbnRSZWYgPSBhdHRhY2hQb2ludCBhcyBDb21wb25lbnRSZWY8U3BhbkNvbXBvbmVudD47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jbGVhclZhbGlkYXRvcnMoY29udHJvbEVudGl0eSk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSksXG4gICAgKTtcblxuICAgIGNvbnN0IHNvdXJjZVZhbHVlJCA9IHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgIHN0YXJ0V2l0aCh0aGlzLmNvbnRyb2wudmFsdWUpLFxuICAgICk7XG5cbiAgICBjb21iaW5lTGF0ZXN0KFtzb3VyY2VWYWx1ZSQsIGNvbnRhaW5lckF0dGFjaGVkJF0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICBmaWx0ZXIoKFssIGF0dGFjaGVkXSkgPT4gISFhdHRhY2hlZCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChbdmFsdWVdKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFwcGx5VmFsaWRhdG9ycyhcbiAgICBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsXG4gICAgcmF3VmFsaWRhdG9yPzogVmFsaWRhdG9yRm4sXG4gICAgcmF3QXN5bmNWYWxpZGF0b3I/OiBBc3luY1ZhbGlkYXRvckZuLFxuICApIHtcbiAgICBpZiAoXG4gICAgICBjb250cm9sLnZhbGlkYXRvciA9PT0gcmF3VmFsaWRhdG9yICYmXG4gICAgICBjb250cm9sLmFzeW5jVmFsaWRhdG9yID09PSByYXdBc3luY1ZhbGlkYXRvclxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb250cm9sLnNldFZhbGlkYXRvcnMocmF3VmFsaWRhdG9yKTtcbiAgICBjb250cm9sLnNldEFzeW5jVmFsaWRhdG9ycyhyYXdBc3luY1ZhbGlkYXRvcik7XG4gICAgY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyVmFsaWRhdG9ycyhjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpIHtcbiAgICAvLyBkZWxheSBjaGVja2luZyB2YWxpZGF0b3JzIGZvciBuZ01vZGVsXG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmICghY29udHJvbC52YWxpZGF0b3IgJiYgIWNvbnRyb2wuYXN5bmNWYWxpZGF0b3IpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29udHJvbC5jbGVhclZhbGlkYXRvcnMoKTtcbiAgICAgIGNvbnRyb2wuY2xlYXJBc3luY1ZhbGlkYXRvcnMoKTtcbiAgICAgIGNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgPHNwYW4+e3sgZGF0YSB8IGFjbEZpZWxkTm90QXZhaWxhYmxlIH19PC9zcGFuPmAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIHNwYW4ge1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9wcmVmZXItb24tcHVzaC1jb21wb25lbnQtY2hhbmdlLWRldGVjdGlvblxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtGaWVsZE5vdEF2YWlsYWJsZVBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBTcGFuQ29tcG9uZW50PFQgPSB1bmtub3duPiB7XG4gIGRhdGE6IFQ7XG5cbiAgc2V0RGF0YSh2YWx1ZTogVCkge1xuICAgIHRoaXMuZGF0YSA9IHZhbHVlO1xuICB9XG59XG4iXX0=
@@ -1,39 +0,0 @@
1
- import { observeResizeOn } from '@alauda/ui';
2
- import { Directive, ElementRef, EventEmitter, Output, } from '@angular/core';
3
- import { Subject, takeUntil } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- export class ResizeDirective {
6
- constructor(element) {
7
- this.element = element;
8
- this.resized = new EventEmitter();
9
- this.destroy$$ = new Subject();
10
- }
11
- ngAfterViewInit() {
12
- observeResizeOn(this.element.nativeElement)
13
- .pipe(takeUntil(this.destroy$$))
14
- .subscribe(() => this.onResized());
15
- }
16
- onResized() {
17
- const { clientWidth, clientHeight } = this.element.nativeElement;
18
- this.resized.emit({
19
- width: clientWidth,
20
- height: clientHeight,
21
- });
22
- }
23
- ngOnDestroy() {
24
- this.destroy$$.next();
25
- this.destroy$$.complete();
26
- }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ResizeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
28
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: ResizeDirective, isStandalone: true, selector: "[aclResize]", outputs: { resized: "resized" }, ngImport: i0 }); }
29
- }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ResizeDirective, decorators: [{
31
- type: Directive,
32
- args: [{
33
- selector: '[aclResize]',
34
- standalone: true,
35
- }]
36
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { resized: [{
37
- type: Output
38
- }] } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy9kaXJlY3RpdmVzL3Jlc2l6ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM3QyxPQUFPLEVBRUwsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBRVosTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVcxQyxNQUFNLE9BQU8sZUFBZTtJQU0xQixZQUE2QixPQUFtQjtRQUFuQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBSmhELFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBRXpCLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRUUsQ0FBQztJQUVwRCxlQUFlO1FBQ2IsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDO2FBQ3hDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQy9CLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU8sU0FBUztRQUNmLE1BQU0sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDakUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDaEIsS0FBSyxFQUFFLFdBQVc7WUFDbEIsTUFBTSxFQUFFLFlBQVk7U0FDckIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs4R0F6QlUsZUFBZTtrR0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQUozQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7K0VBR0MsT0FBTztzQkFETixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgb2JzZXJ2ZVJlc2l6ZU9uIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaXplRXZlbnQge1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2FjbFJlc2l6ZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBSZXNpemVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuICBAT3V0cHV0KClcbiAgcmVzaXplZCA9IG5ldyBFdmVudEVtaXR0ZXI8UmVzaXplRXZlbnQ+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudDogRWxlbWVudFJlZikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgb2JzZXJ2ZVJlc2l6ZU9uKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50KVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vblJlc2l6ZWQoKSk7XG4gIH1cblxuICBwcml2YXRlIG9uUmVzaXplZCgpIHtcbiAgICBjb25zdCB7IGNsaWVudFdpZHRoLCBjbGllbnRIZWlnaHQgfSA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMucmVzaXplZC5lbWl0KHtcbiAgICAgIHdpZHRoOiBjbGllbnRXaWR0aCxcbiAgICAgIGhlaWdodDogY2xpZW50SGVpZ2h0LFxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,77 +0,0 @@
1
- import { observeResizeOn } from '@alauda/ui';
2
- import { ScrollDispatcher } from '@angular/cdk/overlay';
3
- import { Directive, EventEmitter, Injector, Input, Output, ViewContainerRef, } from '@angular/core';
4
- import { debounceTime, fromEvent, map, pairwise, startWith, Subject, takeUntil, merge, } from 'rxjs';
5
- import * as i0 from "@angular/core";
6
- const defaultDistance = 60;
7
- // 监测滚动到边界并触发回调
8
- export class ScrollBorderObserverDirective {
9
- constructor(injector) {
10
- this.scrollBorder = new EventEmitter();
11
- this.scrollBottomBorder = new EventEmitter();
12
- this.destroy$$ = new Subject();
13
- this.scrollDispatcher = injector.get(ScrollDispatcher);
14
- this.viewContainerRef = injector.get(ViewContainerRef);
15
- }
16
- ngOnInit() {
17
- if (this.option === false) {
18
- return;
19
- }
20
- this.scrollEl =
21
- this.scrollDispatcher
22
- .getAncestorScrollContainers(this.viewContainerRef.element.nativeElement)
23
- .pop()
24
- ?.getElementRef()?.nativeElement ?? window;
25
- this.setupScroll();
26
- }
27
- ngOnDestroy() {
28
- this.destroy$$.next();
29
- this.destroy$$.complete();
30
- }
31
- setupScroll() {
32
- const viewEl = this.scrollEl === window
33
- ? document.documentElement
34
- : this.scrollEl;
35
- merge(observeResizeOn(viewEl), fromEvent(this.scrollEl, 'scroll').pipe(startWith(viewEl.scrollTop)))
36
- .pipe(debounceTime(50), map(() => viewEl.scrollTop), pairwise(), takeUntil(this.destroy$$))
37
- .subscribe(([prev, cur]) => {
38
- let direction;
39
- const option = typeof this.option === 'number'
40
- ? {
41
- topDistance: this.option,
42
- bottomDistance: this.option,
43
- }
44
- : this.option || {};
45
- if (cur > prev &&
46
- viewEl.scrollTop >
47
- viewEl.scrollHeight -
48
- viewEl.clientHeight -
49
- (option.bottomDistance || defaultDistance)) {
50
- direction = 'bottom';
51
- }
52
- else if (cur < prev &&
53
- viewEl.scrollTop < (option.topDistance || defaultDistance)) {
54
- direction = 'top';
55
- }
56
- this.scrollBorder.emit(direction);
57
- direction === 'bottom' && this.scrollBottomBorder.emit();
58
- });
59
- }
60
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ScrollBorderObserverDirective, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
61
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: ScrollBorderObserverDirective, isStandalone: true, selector: "[aclScrollBorderObserver]", inputs: { option: ["aclScrollBorderObserver", "option"] }, outputs: { scrollBorder: "scrollBorder", scrollBottomBorder: "scrollBottomBorder" }, ngImport: i0 }); }
62
- }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ScrollBorderObserverDirective, decorators: [{
64
- type: Directive,
65
- args: [{
66
- selector: '[aclScrollBorderObserver]',
67
- standalone: true,
68
- }]
69
- }], ctorParameters: () => [{ type: i0.Injector }], propDecorators: { option: [{
70
- type: Input,
71
- args: ['aclScrollBorderObserver']
72
- }], scrollBorder: [{
73
- type: Output
74
- }], scrollBottomBorder: [{
75
- type: Output
76
- }] } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWJvcmRlci1vYnNlcnZlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2R5bmFtaWMtcGx1Z2luLXNoYXJlZC9zcmMvZGlyZWN0aXZlcy9zY3JvbGwtYm9yZGVyLW9ic2VydmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFFBQVEsRUFDUixLQUFLLEVBR0wsTUFBTSxFQUNOLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsWUFBWSxFQUNaLFNBQVMsRUFDVCxHQUFHLEVBQ0gsUUFBUSxFQUNSLFNBQVMsRUFDVCxPQUFPLEVBQ1AsU0FBUyxFQUNULEtBQUssR0FDTixNQUFNLE1BQU0sQ0FBQzs7QUFFZCxNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUM7QUFPM0IsZUFBZTtBQUtmLE1BQU0sT0FBTyw2QkFBNkI7SUFleEMsWUFBWSxRQUFrQjtRQVY5QixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO1FBR3BELHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHL0IsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFLdkMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQzFCLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFFBQVE7WUFDWCxJQUFJLENBQUMsZ0JBQWdCO2lCQUNsQiwyQkFBMkIsQ0FDMUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQzVDO2lCQUNBLEdBQUcsRUFBRTtnQkFDTixFQUFFLGFBQWEsRUFBRSxFQUFFLGFBQWEsSUFBSSxNQUFNLENBQUM7UUFFL0MsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxXQUFXO1FBQ2pCLE1BQU0sTUFBTSxHQUNWLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTTtZQUN0QixDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWU7WUFDMUIsQ0FBQyxDQUFFLElBQUksQ0FBQyxRQUF3QixDQUFDO1FBQ3JDLEtBQUssQ0FDSCxlQUFlLENBQUMsTUFBTSxDQUFDLEVBQ3ZCLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQ3JFO2FBQ0UsSUFBSSxDQUNILFlBQVksQ0FBQyxFQUFFLENBQUMsRUFDaEIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFDM0IsUUFBUSxFQUFFLEVBQ1YsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFO1lBQ3pCLElBQUksU0FBMkIsQ0FBQztZQUNoQyxNQUFNLE1BQU0sR0FDVixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssUUFBUTtnQkFDN0IsQ0FBQyxDQUFDO29CQUNFLFdBQVcsRUFBRSxJQUFJLENBQUMsTUFBTTtvQkFDeEIsY0FBYyxFQUFFLElBQUksQ0FBQyxNQUFNO2lCQUM1QjtnQkFDSCxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSyxFQUFhLENBQUM7WUFDcEMsSUFDRSxHQUFHLEdBQUcsSUFBSTtnQkFDVixNQUFNLENBQUMsU0FBUztvQkFDZCxNQUFNLENBQUMsWUFBWTt3QkFDakIsTUFBTSxDQUFDLFlBQVk7d0JBQ25CLENBQUMsTUFBTSxDQUFDLGNBQWMsSUFBSSxlQUFlLENBQUMsRUFDOUMsQ0FBQztnQkFDRCxTQUFTLEdBQUcsUUFBUSxDQUFDO1lBQ3ZCLENBQUM7aUJBQU0sSUFDTCxHQUFHLEdBQUcsSUFBSTtnQkFDVixNQUFNLENBQUMsU0FBUyxHQUFHLENBQUMsTUFBTSxDQUFDLFdBQVcsSUFBSSxlQUFlLENBQUMsRUFDMUQsQ0FBQztnQkFDRCxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLENBQUM7WUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNsQyxTQUFTLEtBQUssUUFBUSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzRCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBakZVLDZCQUE2QjtrR0FBN0IsNkJBQTZCOzsyRkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs2RUFHQyxNQUFNO3NCQURMLEtBQUs7dUJBQUMseUJBQXlCO2dCQUloQyxZQUFZO3NCQURYLE1BQU07Z0JBSVAsa0JBQWtCO3NCQURqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgb2JzZXJ2ZVJlc2l6ZU9uIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQgeyBTY3JvbGxEaXNwYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBkZWJvdW5jZVRpbWUsXG4gIGZyb21FdmVudCxcbiAgbWFwLFxuICBwYWlyd2lzZSxcbiAgc3RhcnRXaXRoLFxuICBTdWJqZWN0LFxuICB0YWtlVW50aWwsXG4gIG1lcmdlLFxufSBmcm9tICdyeGpzJztcblxuY29uc3QgZGVmYXVsdERpc3RhbmNlID0gNjA7XG5cbmludGVyZmFjZSBPcHRpb24ge1xuICBib3R0b21EaXN0YW5jZT86IG51bWJlcjtcbiAgdG9wRGlzdGFuY2U/OiBudW1iZXI7XG59XG5cbi8vIOebkea1i+a7muWKqOWIsOi+ueeVjOW5tuinpuWPkeWbnuiwg1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2FjbFNjcm9sbEJvcmRlck9ic2VydmVyXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFNjcm9sbEJvcmRlck9ic2VydmVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoJ2FjbFNjcm9sbEJvcmRlck9ic2VydmVyJylcbiAgb3B0aW9uOiBPcHRpb24gfCAnJyB8IGZhbHNlIHwgbnVtYmVyO1xuXG4gIEBPdXRwdXQoKVxuICBzY3JvbGxCb3JkZXIgPSBuZXcgRXZlbnRFbWl0dGVyPCd0b3AnIHwgJ2JvdHRvbSc+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHNjcm9sbEJvdHRvbUJvcmRlciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBzY3JvbGxFbDogSFRNTEVsZW1lbnQgfCBXaW5kb3c7XG4gIHJlYWRvbmx5IGRlc3Ryb3kkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsRGlzcGF0Y2hlcjogU2Nyb2xsRGlzcGF0Y2hlcjtcbiAgcHJpdmF0ZSByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHRoaXMuc2Nyb2xsRGlzcGF0Y2hlciA9IGluamVjdG9yLmdldChTY3JvbGxEaXNwYXRjaGVyKTtcbiAgICB0aGlzLnZpZXdDb250YWluZXJSZWYgPSBpbmplY3Rvci5nZXQoVmlld0NvbnRhaW5lclJlZik7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5vcHRpb24gPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuc2Nyb2xsRWwgPVxuICAgICAgdGhpcy5zY3JvbGxEaXNwYXRjaGVyXG4gICAgICAgIC5nZXRBbmNlc3RvclNjcm9sbENvbnRhaW5lcnMoXG4gICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyUmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgKVxuICAgICAgICAucG9wKClcbiAgICAgICAgPy5nZXRFbGVtZW50UmVmKCk/Lm5hdGl2ZUVsZW1lbnQgPz8gd2luZG93O1xuXG4gICAgdGhpcy5zZXR1cFNjcm9sbCgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIHNldHVwU2Nyb2xsKCkge1xuICAgIGNvbnN0IHZpZXdFbCA9XG4gICAgICB0aGlzLnNjcm9sbEVsID09PSB3aW5kb3dcbiAgICAgICAgPyBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnRcbiAgICAgICAgOiAodGhpcy5zY3JvbGxFbCBhcyBIVE1MRWxlbWVudCk7XG4gICAgbWVyZ2UoXG4gICAgICBvYnNlcnZlUmVzaXplT24odmlld0VsKSxcbiAgICAgIGZyb21FdmVudCh0aGlzLnNjcm9sbEVsLCAnc2Nyb2xsJykucGlwZShzdGFydFdpdGgodmlld0VsLnNjcm9sbFRvcCkpLFxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoNTApLFxuICAgICAgICBtYXAoKCkgPT4gdmlld0VsLnNjcm9sbFRvcCksXG4gICAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChbcHJldiwgY3VyXSkgPT4ge1xuICAgICAgICBsZXQgZGlyZWN0aW9uOiAndG9wJyB8ICdib3R0b20nO1xuICAgICAgICBjb25zdCBvcHRpb24gPVxuICAgICAgICAgIHR5cGVvZiB0aGlzLm9wdGlvbiA9PT0gJ251bWJlcidcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIHRvcERpc3RhbmNlOiB0aGlzLm9wdGlvbixcbiAgICAgICAgICAgICAgICBib3R0b21EaXN0YW5jZTogdGhpcy5vcHRpb24sXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDogdGhpcy5vcHRpb24gfHwgKHt9IGFzIE9wdGlvbik7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBjdXIgPiBwcmV2ICYmXG4gICAgICAgICAgdmlld0VsLnNjcm9sbFRvcCA+XG4gICAgICAgICAgICB2aWV3RWwuc2Nyb2xsSGVpZ2h0IC1cbiAgICAgICAgICAgICAgdmlld0VsLmNsaWVudEhlaWdodCAtXG4gICAgICAgICAgICAgIChvcHRpb24uYm90dG9tRGlzdGFuY2UgfHwgZGVmYXVsdERpc3RhbmNlKVxuICAgICAgICApIHtcbiAgICAgICAgICBkaXJlY3Rpb24gPSAnYm90dG9tJztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICBjdXIgPCBwcmV2ICYmXG4gICAgICAgICAgdmlld0VsLnNjcm9sbFRvcCA8IChvcHRpb24udG9wRGlzdGFuY2UgfHwgZGVmYXVsdERpc3RhbmNlKVxuICAgICAgICApIHtcbiAgICAgICAgICBkaXJlY3Rpb24gPSAndG9wJztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNjcm9sbEJvcmRlci5lbWl0KGRpcmVjdGlvbik7XG4gICAgICAgIGRpcmVjdGlvbiA9PT0gJ2JvdHRvbScgJiYgdGhpcy5zY3JvbGxCb3R0b21Cb3JkZXIuZW1pdCgpO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,126 +0,0 @@
1
- import { CdkScrollable } from '@angular/cdk/scrolling';
2
- import { Directive, ElementRef, HostBinding, HostListener, Input, Optional, } from '@angular/core';
3
- import { ControlContainer } from '@angular/forms';
4
- import { fromEvent, debounceTime, startWith, take } from 'rxjs';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/forms";
7
- import * as i2 from "@angular/cdk/scrolling";
8
- const FOCUSABLE_TAG_NAMES = ['INPUT', 'TEXTAREA'];
9
- const NG_INVALID = '.ng-invalid';
10
- const MARKED_CLASS_NAME = 'acl-scroll-to-first-invalid-marker';
11
- const SELECTORS = [
12
- [
13
- FOCUSABLE_TAG_NAMES.map(tagName => `${tagName}${NG_INVALID}`),
14
- ...[
15
- 'aui-number-input',
16
- 'aui-tags-input',
17
- 'aui-select',
18
- 'aui-multi-select',
19
- 'aui-switch',
20
- 'aui-tree-select',
21
- ].map(tagName => `${tagName}${NG_INVALID} input`),
22
- `aui-radio-group${NG_INVALID}`,
23
- `.${MARKED_CLASS_NAME}${NG_INVALID}`,
24
- ].join(','),
25
- NG_INVALID,
26
- ];
27
- export class ScrollToFirstInvalidMarkerDirective {
28
- constructor() {
29
- this.aclScrollToFirstInvalidMarker = false;
30
- }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ScrollToFirstInvalidMarkerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
32
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: ScrollToFirstInvalidMarkerDirective, selector: "[aclScrollToFirstInvalidMarker]", inputs: { aclScrollToFirstInvalidMarker: "aclScrollToFirstInvalidMarker" }, host: { properties: { "class.acl-scroll-to-first-invalid-marker": "this.aclScrollToFirstInvalidMarker", "class.ng-invalid": "this.aclScrollToFirstInvalidMarker" } }, ngImport: i0 }); }
33
- }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ScrollToFirstInvalidMarkerDirective, decorators: [{
35
- type: Directive,
36
- args: [{
37
- selector: '[aclScrollToFirstInvalidMarker]',
38
- }]
39
- }], propDecorators: { aclScrollToFirstInvalidMarker: [{
40
- type: HostBinding,
41
- args: [`class.${MARKED_CLASS_NAME}`]
42
- }, {
43
- type: HostBinding,
44
- args: ['class.ng-invalid']
45
- }, {
46
- type: Input
47
- }] } });
48
- export class ScrollToFirstInvalidDirective {
49
- get containerEl() {
50
- return this.cdkScrollable?.getElementRef().nativeElement || window;
51
- }
52
- onSubmit() {
53
- requestAnimationFrame(() => {
54
- if (this.aclScrollToFirstInvalid === ''
55
- ? this.controlContainer.invalid
56
- : this.aclScrollToFirstInvalid) {
57
- this.scrollToFirstInvalid();
58
- }
59
- });
60
- }
61
- constructor(elRef, controlContainer, cdkScrollable) {
62
- this.elRef = elRef;
63
- this.controlContainer = controlContainer;
64
- this.cdkScrollable = cdkScrollable;
65
- this.labelOffset = this.cdkScrollable ? 20 : 150;
66
- }
67
- scrollToFirstInvalid() {
68
- const firstInvalidEl = this.getFirstInvalidInput();
69
- if (!firstInvalidEl) {
70
- return;
71
- }
72
- this.containerEl.scrollTo({
73
- top: this.getTopOffset(firstInvalidEl),
74
- behavior: 'smooth',
75
- });
76
- if (FOCUSABLE_TAG_NAMES.includes(firstInvalidEl.tagName)) {
77
- fromEvent(this.containerEl, 'scroll')
78
- .pipe(startWith(null), debounceTime(100), take(1))
79
- .subscribe(() => firstInvalidEl.focus());
80
- }
81
- }
82
- getFirstInvalidInput() {
83
- const el = this.elRef.nativeElement;
84
- const hiddenEls = Array.from(el.querySelectorAll('[hidden]'));
85
- for (const selector of SELECTORS) {
86
- const ctrlEls = Array.from(el.querySelectorAll(selector));
87
- for (const ctrlEl of ctrlEls) {
88
- if (hiddenEls.some(hiddenEl => hiddenEl === ctrlEl || hiddenEl.contains(ctrlEl))) {
89
- continue;
90
- }
91
- return ctrlEl;
92
- }
93
- }
94
- }
95
- getTopOffset(controlEl) {
96
- const labelOffset = this.labelOffset;
97
- const controlElTop = controlEl.getBoundingClientRect().top;
98
- if (this.cdkScrollable) {
99
- const containerEl = this.containerEl;
100
- const containerTop = containerEl.getBoundingClientRect().top;
101
- const absoluteControlElTop = controlElTop + containerEl.scrollTop;
102
- return absoluteControlElTop - containerTop - labelOffset;
103
- }
104
- const absoluteControlElTop = controlElTop + window.scrollY;
105
- return absoluteControlElTop - labelOffset;
106
- }
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ScrollToFirstInvalidDirective, deps: [{ token: i0.ElementRef }, { token: i1.ControlContainer }, { token: i2.CdkScrollable, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
108
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: ScrollToFirstInvalidDirective, isStandalone: true, selector: "[aclScrollToFirstInvalid]", inputs: { labelOffset: "labelOffset", aclScrollToFirstInvalid: "aclScrollToFirstInvalid" }, host: { listeners: { "ngSubmit": "onSubmit()" } }, ngImport: i0 }); }
109
- }
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ScrollToFirstInvalidDirective, decorators: [{
111
- type: Directive,
112
- args: [{
113
- selector: '[aclScrollToFirstInvalid]',
114
- standalone: true,
115
- }]
116
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.ControlContainer }, { type: i2.CdkScrollable, decorators: [{
117
- type: Optional
118
- }] }], propDecorators: { labelOffset: [{
119
- type: Input
120
- }], aclScrollToFirstInvalid: [{
121
- type: Input
122
- }], onSubmit: [{
123
- type: HostListener,
124
- args: ['ngSubmit']
125
- }] } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLXRvLWZpcnN0LWludmFsaWQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2RpcmVjdGl2ZXMvc2Nyb2xsLXRvLWZpcnN0LWludmFsaWQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFDTCxRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQUVoRSxNQUFNLG1CQUFtQixHQUFHLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ2xELE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQztBQUNqQyxNQUFNLGlCQUFpQixHQUFHLG9DQUFvQyxDQUFDO0FBRS9ELE1BQU0sU0FBUyxHQUFHO0lBQ2hCO1FBQ0UsbUJBQW1CLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLEdBQUcsVUFBVSxFQUFFLENBQUM7UUFDN0QsR0FBRztZQUNELGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsWUFBWTtZQUNaLGtCQUFrQjtZQUNsQixZQUFZO1lBQ1osaUJBQWlCO1NBQ2xCLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLEdBQUcsVUFBVSxRQUFRLENBQUM7UUFDakQsa0JBQWtCLFVBQVUsRUFBRTtRQUM5QixJQUFJLGlCQUFpQixHQUFHLFVBQVUsRUFBRTtLQUNyQyxDQUFD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QVM7Z0JBQ1gsQ0FBQztnQkFDRCxPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxZQUFZLENBQUMsU0FBc0I7UUFDekMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNyQyxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxHQUFHLENBQUM7UUFFM0QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQTBCLENBQUM7WUFDcEQsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUMsR0FBRyxDQUFDO1lBQzdELE1BQU0sb0JBQW9CLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUM7WUFDbEUsT0FBTyxvQkFBb0IsR0FBRyxZQUFZLEdBQUcsV0FBVyxDQUFDO1FBQzNELENBQUM7UUFFRCxNQUFNLG9CQUFvQixHQUFHLFlBQVksR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzNELE9BQU8sb0JBQW9CLEdBQUcsV0FBVyxDQUFDO0lBQzVDLENBQUM7OEdBaEZVLDZCQUE2QjtrR0FBN0IsNkJBQTZCOzsyRkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBNEJJLFFBQVE7eUNBekJYLFdBQVc7c0JBRFYsS0FBSztnQkFJTix1QkFBdUI7c0JBRHRCLEtBQUs7Z0JBUU4sUUFBUTtzQkFEUCxZQUFZO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtTY3JvbGxhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBkZWJvdW5jZVRpbWUsIHN0YXJ0V2l0aCwgdGFrZSB9IGZyb20gJ3J4anMnO1xuXG5jb25zdCBGT0NVU0FCTEVfVEFHX05BTUVTID0gWydJTlBVVCcsICdURVhUQVJFQSddO1xuY29uc3QgTkdfSU5WQUxJRCA9ICcubmctaW52YWxpZCc7XG5jb25zdCBNQVJLRURfQ0xBU1NfTkFNRSA9ICdhY2wtc2Nyb2xsLXRvLWZpcnN0LWludmFsaWQtbWFya2VyJztcblxuY29uc3QgU0VMRUNUT1JTID0gW1xuICBbXG4gICAgRk9DVVNBQkxFX1RBR19OQU1FUy5tYXAodGFnTmFtZSA9PiBgJHt0YWdOYW1lfSR7TkdfSU5WQUxJRH1gKSxcbiAgICAuLi5bXG4gICAgICAnYXVpLW51bWJlci1pbnB1dCcsXG4gICAgICAnYXVpLXRhZ3MtaW5wdXQnLFxuICAgICAgJ2F1aS1zZWxlY3QnLFxuICAgICAgJ2F1aS1tdWx0aS1zZWxlY3QnLFxuICAgICAgJ2F1aS1zd2l0Y2gnLFxuICAgICAgJ2F1aS10cmVlLXNlbGVjdCcsXG4gICAgXS5tYXAodGFnTmFtZSA9PiBgJHt0YWdOYW1lfSR7TkdfSU5WQUxJRH0gaW5wdXRgKSxcbiAgICBgYXVpLXJhZGlvLWdyb3VwJHtOR19JTlZBTElEfWAsXG4gICAgYC4ke01BUktFRF9DTEFTU19OQU1FfSR7TkdfSU5WQUxJRH1gLFxuICBdLmpvaW4oJywnKSxcbiAgTkdfSU5WQUxJRCxcbl07XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thY2xTY3JvbGxUb0ZpcnN0SW52YWxpZE1hcmtlcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBTY3JvbGxUb0ZpcnN0SW52YWxpZE1hcmtlckRpcmVjdGl2ZSB7XG4gIEBIb3N0QmluZGluZyhgY2xhc3MuJHtNQVJLRURfQ0xBU1NfTkFNRX1gKVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm5nLWludmFsaWQnKVxuICBASW5wdXQoKVxuICBhY2xTY3JvbGxUb0ZpcnN0SW52YWxpZE1hcmtlciA9IGZhbHNlO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYWNsU2Nyb2xsVG9GaXJzdEludmFsaWRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU2Nyb2xsVG9GaXJzdEludmFsaWREaXJlY3RpdmUge1xuICBASW5wdXQoKVxuICBsYWJlbE9mZnNldCA9IHRoaXMuY2RrU2Nyb2xsYWJsZSA/IDIwIDogMTUwO1xuXG4gIEBJbnB1dCgpXG4gIGFjbFNjcm9sbFRvRmlyc3RJbnZhbGlkOiBib29sZWFuIHwgJyc7XG5cbiAgZ2V0IGNvbnRhaW5lckVsKCkge1xuICAgIHJldHVybiB0aGlzLmNka1Njcm9sbGFibGU/LmdldEVsZW1lbnRSZWYoKS5uYXRpdmVFbGVtZW50IHx8IHdpbmRvdztcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ25nU3VibWl0JylcbiAgb25TdWJtaXQoKSB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5hY2xTY3JvbGxUb0ZpcnN0SW52YWxpZCA9PT0gJydcbiAgICAgICAgICA/IHRoaXMuY29udHJvbENvbnRhaW5lci5pbnZhbGlkXG4gICAgICAgICAgOiB0aGlzLmFjbFNjcm9sbFRvRmlyc3RJbnZhbGlkXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5zY3JvbGxUb0ZpcnN0SW52YWxpZCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgY2RrU2Nyb2xsYWJsZTogQ2RrU2Nyb2xsYWJsZSxcbiAgKSB7fVxuXG4gIHNjcm9sbFRvRmlyc3RJbnZhbGlkKCkge1xuICAgIGNvbnN0IGZpcnN0SW52YWxpZEVsID0gdGhpcy5nZXRGaXJzdEludmFsaWRJbnB1dCgpO1xuXG4gICAgaWYgKCFmaXJzdEludmFsaWRFbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuY29udGFpbmVyRWwuc2Nyb2xsVG8oe1xuICAgICAgdG9wOiB0aGlzLmdldFRvcE9mZnNldChmaXJzdEludmFsaWRFbCksXG4gICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXG4gICAgfSk7XG5cbiAgICBpZiAoRk9DVVNBQkxFX1RBR19OQU1FUy5pbmNsdWRlcyhmaXJzdEludmFsaWRFbC50YWdOYW1lKSkge1xuICAgICAgZnJvbUV2ZW50KHRoaXMuY29udGFpbmVyRWwsICdzY3JvbGwnKVxuICAgICAgICAucGlwZShzdGFydFdpdGgobnVsbCBhcyB2b2lkKSwgZGVib3VuY2VUaW1lKDEwMCksIHRha2UoMSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gZmlyc3RJbnZhbGlkRWwuZm9jdXMoKSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0Rmlyc3RJbnZhbGlkSW5wdXQoKSB7XG4gICAgY29uc3QgZWwgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgaGlkZGVuRWxzID0gQXJyYXkuZnJvbShlbC5xdWVyeVNlbGVjdG9yQWxsKCdbaGlkZGVuXScpKTtcbiAgICBmb3IgKGNvbnN0IHNlbGVjdG9yIG9mIFNFTEVDVE9SUykge1xuICAgICAgY29uc3QgY3RybEVscyA9IEFycmF5LmZyb20oZWwucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oc2VsZWN0b3IpKTtcbiAgICAgIGZvciAoY29uc3QgY3RybEVsIG9mIGN0cmxFbHMpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGhpZGRlbkVscy5zb21lKFxuICAgICAgICAgICAgaGlkZGVuRWwgPT4gaGlkZGVuRWwgPT09IGN0cmxFbCB8fCBoaWRkZW5FbC5jb250YWlucyhjdHJsRWwpLFxuICAgICAgICAgIClcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGN0cmxFbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFRvcE9mZnNldChjb250cm9sRWw6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICBjb25zdCBsYWJlbE9mZnNldCA9IHRoaXMubGFiZWxPZmZzZXQ7XG4gICAgY29uc3QgY29udHJvbEVsVG9wID0gY29udHJvbEVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDtcblxuICAgIGlmICh0aGlzLmNka1Njcm9sbGFibGUpIHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckVsID0gdGhpcy5jb250YWluZXJFbCBhcyBIVE1MRWxlbWVudDtcbiAgICAgIGNvbnN0IGNvbnRhaW5lclRvcCA9IGNvbnRhaW5lckVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDtcbiAgICAgIGNvbnN0IGFic29sdXRlQ29udHJvbEVsVG9wID0gY29udHJvbEVsVG9wICsgY29udGFpbmVyRWwuc2Nyb2xsVG9wO1xuICAgICAgcmV0dXJuIGFic29sdXRlQ29udHJvbEVsVG9wIC0gY29udGFpbmVyVG9wIC0gbGFiZWxPZmZzZXQ7XG4gICAgfVxuXG4gICAgY29uc3QgYWJzb2x1dGVDb250cm9sRWxUb3AgPSBjb250cm9sRWxUb3AgKyB3aW5kb3cuc2Nyb2xsWTtcbiAgICByZXR1cm4gYWJzb2x1dGVDb250cm9sRWxUb3AgLSBsYWJlbE9mZnNldDtcbiAgfVxufVxuIl19
@@ -1,61 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { Directive, Host, Inject, Input, } from '@angular/core';
3
- import { NgControl } from '@angular/forms';
4
- import { isFunction } from 'lodash-es';
5
- import { combineLatest, distinctUntilChanged, filter, Observable, startWith, Subject, takeUntil, tap, } from 'rxjs';
6
- import { ObservableInput } from '../utils';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/forms";
9
- /**
10
- *
11
- * Usage:
12
- * If you want to trace value with control.
13
- * The difference between aclValueTrack and ngModelChange is that aclValueTrack carries the first value.
14
- * So it is not for changes, but for value traces
15
- * For compatibility and cover the deprecation of ngModelChange, we provide aclValueTrackSkipFirst option
16
- * eg:
17
- * <input formControlName="name" [aclValueTrack]="function()">
18
- *
19
- */
20
- export class ControlValueTraceDirective {
21
- ngOnDestroy() {
22
- this.destroy$$.next();
23
- this.destroy$$.complete();
24
- }
25
- ngOnInit() {
26
- combineLatest([
27
- this.ngControl.valueChanges.pipe(this.aclValueTrackSkipFirst ? tap() : startWith(this.ngControl.value)),
28
- this.aclValueTrack$.pipe(distinctUntilChanged(), filter(i => isFunction(i))),
29
- ])
30
- .pipe(takeUntil(this.destroy$$))
31
- .subscribe(([value, changeFn]) => changeFn(value));
32
- }
33
- constructor(ngControl) {
34
- this.ngControl = ngControl;
35
- this.aclValueTrackSkipFirst = false;
36
- this.destroy$$ = new Subject();
37
- }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ControlValueTraceDirective, deps: [{ token: NgControl, host: true }], target: i0.ɵɵFactoryTarget.Directive }); }
39
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: ControlValueTraceDirective, isStandalone: true, selector: "[aclValueTrack]", inputs: { aclValueTrackSkipFirst: "aclValueTrackSkipFirst", aclValueTrack: "aclValueTrack" }, ngImport: i0 }); }
40
- }
41
- __decorate([
42
- ObservableInput(),
43
- __metadata("design:type", Observable)
44
- ], ControlValueTraceDirective.prototype, "aclValueTrack$", void 0);
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: ControlValueTraceDirective, decorators: [{
46
- type: Directive,
47
- args: [{
48
- selector: '[aclValueTrack]',
49
- standalone: true,
50
- }]
51
- }], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
52
- type: Inject,
53
- args: [NgControl]
54
- }, {
55
- type: Host
56
- }] }], propDecorators: { aclValueTrackSkipFirst: [{
57
- type: Input
58
- }], aclValueTrack: [{
59
- type: Input
60
- }], aclValueTrack$: [] } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtdHJhY2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL2RpcmVjdGl2ZXMvdmFsdWUtdHJhY2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULElBQUksRUFDSixNQUFNLEVBQ04sS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3ZDLE9BQU8sRUFDTCxhQUFhLEVBQ2Isb0JBQW9CLEVBQ3BCLE1BQU0sRUFDTixVQUFVLEVBQ1YsU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBRTNDOzs7Ozs7Ozs7O0dBVUc7QUFLSCxNQUFNLE9BQU8sMEJBQTBCO0lBUXJDLFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFFBQVE7UUFDTixhQUFhLENBQUM7WUFDWixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQzlCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUN0RTtZQUNELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUN0QixvQkFBb0IsRUFBRSxFQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDM0I7U0FDRixDQUFDO2FBQ0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxZQUM4QyxTQUFvQjtRQUFwQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBM0J6RCwyQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFLeEMsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUF1QjdCLENBQUM7OEdBN0JPLDBCQUEwQixrQkE0QjNCLFNBQVM7a0dBNUJSLDBCQUEwQjs7QUFJbEI7SUFBbEIsZUFBZSxFQUFFOzhCQUFpQixVQUFVO2tFQUE0QjsyRkFKOUQsMEJBQTBCO2tCQUp0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBNkJJLE1BQU07MkJBQUMsU0FBUzs7MEJBQUcsSUFBSTt5Q0EzQmpCLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNhLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEhvc3QsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGlzRnVuY3Rpb24gfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtcbiAgY29tYmluZUxhdGVzdCxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbHRlcixcbiAgT2JzZXJ2YWJsZSxcbiAgc3RhcnRXaXRoLFxuICBTdWJqZWN0LFxuICB0YWtlVW50aWwsXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE9ic2VydmFibGVJbnB1dCB9IGZyb20gJy4uL3V0aWxzJztcblxuLyoqXG4gKlxuICogVXNhZ2U6XG4gKiBJZiB5b3Ugd2FudCB0byB0cmFjZSB2YWx1ZSB3aXRoIGNvbnRyb2wuXG4gKiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGFjbFZhbHVlVHJhY2sgYW5kIG5nTW9kZWxDaGFuZ2UgaXMgdGhhdCBhY2xWYWx1ZVRyYWNrIGNhcnJpZXMgdGhlIGZpcnN0IHZhbHVlLlxuICogU28gaXQgaXMgbm90IGZvciBjaGFuZ2VzLCBidXQgZm9yIHZhbHVlIHRyYWNlc1xuICogRm9yIGNvbXBhdGliaWxpdHkgYW5kIGNvdmVyIHRoZSBkZXByZWNhdGlvbiBvZiBuZ01vZGVsQ2hhbmdlLCB3ZSBwcm92aWRlIGFjbFZhbHVlVHJhY2tTa2lwRmlyc3Qgb3B0aW9uXG4gKiBlZzpcbiAqIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJuYW1lXCIgW2FjbFZhbHVlVHJhY2tdPVwiZnVuY3Rpb24oKVwiPlxuICpcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2FjbFZhbHVlVHJhY2tdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udHJvbFZhbHVlVHJhY2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGFjbFZhbHVlVHJhY2tTa2lwRmlyc3QgPSBmYWxzZTtcblxuICBASW5wdXQoKSBhY2xWYWx1ZVRyYWNrOiAodmFsdWU/OiB1bmtub3duKSA9PiB2b2lkO1xuICBAT2JzZXJ2YWJsZUlucHV0KCkgYWNsVmFsdWVUcmFjayQ6IE9ic2VydmFibGU8KHZhbHVlPzogdW5rbm93bikgPT4gdm9pZD47XG5cbiAgZGVzdHJveSQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JCQuY29tcGxldGUoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgIHRoaXMuYWNsVmFsdWVUcmFja1NraXBGaXJzdCA/IHRhcCgpIDogc3RhcnRXaXRoKHRoaXMubmdDb250cm9sLnZhbHVlKSxcbiAgICAgICksXG4gICAgICB0aGlzLmFjbFZhbHVlVHJhY2skLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIGZpbHRlcihpID0+IGlzRnVuY3Rpb24oaSkpLFxuICAgICAgKSxcbiAgICBdKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQkKSlcbiAgICAgIC5zdWJzY3JpYmUoKFt2YWx1ZSwgY2hhbmdlRm5dKSA9PiBjaGFuZ2VGbih2YWx1ZSkpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChOZ0NvbnRyb2wpIEBIb3N0KCkgcHJpdmF0ZSByZWFkb25seSBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgKSB7fVxufVxuIl19