cmat 0.0.6 → 0.0.8

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 (327) hide show
  1. package/components/adapter/dayjs-datetime-adapter.d.ts +1 -1
  2. package/components/breadcrumb/breadcrumb.service.d.ts +1 -1
  3. package/components/breadcrumb/public-api.d.ts +2 -0
  4. package/components/card/card.component.d.ts +1 -1
  5. package/components/card/public-api.d.ts +1 -0
  6. package/components/cascade/cascade-list/cascade-list.component.d.ts +45 -21
  7. package/components/cascade/public-api.d.ts +1 -0
  8. package/components/chip-input/chip-input.component.d.ts +39 -12
  9. package/components/custom-formly/extension/addons.extension.d.ts +2 -0
  10. package/components/custom-formly/index.d.ts +5 -0
  11. package/components/custom-formly/public-api.d.ts +21 -0
  12. package/components/custom-formly/types/button/button.component.d.ts +18 -0
  13. package/components/custom-formly/types/checklist/checklist.component.d.ts +41 -0
  14. package/components/custom-formly/types/chips/chips.component.d.ts +27 -0
  15. package/components/custom-formly/types/multicheckbox/multicheckbox.component.d.ts +44 -0
  16. package/components/custom-formly/types/number/number.component.d.ts +20 -0
  17. package/components/custom-formly/types/radio/radio.component.d.ts +44 -0
  18. package/components/custom-formly/types/rating/rating.component.d.ts +24 -0
  19. package/components/custom-formly/types/repeat/repeat.component.d.ts +16 -0
  20. package/components/custom-formly/types/select/select.component.d.ts +54 -0
  21. package/components/custom-formly/types/select-tree/select-tree.component.d.ts +43 -0
  22. package/components/custom-formly/types/stepper/horizontal/stepper.component.d.ts +9 -0
  23. package/components/custom-formly/types/stepper/stepper.type.d.ts +6 -0
  24. package/components/custom-formly/types/stepper/vertical/stepper.component.d.ts +9 -0
  25. package/components/custom-formly/types/table/table.component.d.ts +43 -0
  26. package/components/custom-formly/types/tabs/tab.component.d.ts +8 -0
  27. package/components/custom-formly/types/tags/tags.component.d.ts +41 -0
  28. package/components/custom-formly/types/textarea/textarea.component.d.ts +13 -0
  29. package/components/custom-formly/wrappers/addons/addons.component.d.ts +10 -0
  30. package/components/custom-formly/wrappers/card/card.component.d.ts +6 -0
  31. package/components/custom-formly/wrappers/expansion/expansion.component.d.ts +6 -0
  32. package/components/custom-formly/wrappers/panel/panel.component.d.ts +6 -0
  33. package/components/date-range/date-range.component.d.ts +8 -6
  34. package/components/drawer/drawer.component.d.ts +2 -2
  35. package/components/fullscreen/fullscreen.component.d.ts +2 -9
  36. package/components/fullscreen/public-api.d.ts +0 -1
  37. package/components/material-color-picker/material-color-picker.component.d.ts +8 -4
  38. package/components/material-datetimepicker/calendar.d.ts +2 -2
  39. package/components/material-datetimepicker/clock.d.ts +1 -1
  40. package/components/material-datetimepicker/datetimepicker-input.d.ts +1 -1
  41. package/components/material-datetimepicker/datetimepicker-toggle.d.ts +1 -1
  42. package/components/material-datetimepicker/datetimepicker.d.ts +5 -10
  43. package/components/material-datetimepicker/month-view.d.ts +1 -2
  44. package/components/material-datetimepicker/multi-year-view.d.ts +1 -1
  45. package/components/material-datetimepicker/public-api.d.ts +1 -0
  46. package/components/material-datetimepicker/time.d.ts +2 -2
  47. package/components/material-datetimepicker/year-view.d.ts +1 -1
  48. package/components/navigation/horizontal/components/basic/basic.component.d.ts +1 -1
  49. package/components/navigation/horizontal/components/branch/branch.component.d.ts +1 -1
  50. package/components/navigation/horizontal/horizontal.component.d.ts +2 -2
  51. package/components/navigation/vertical/components/aside/aside.component.d.ts +1 -1
  52. package/components/navigation/vertical/components/basic/basic.component.d.ts +1 -7
  53. package/components/navigation/vertical/components/collapsable/collapsable.component.d.ts +1 -1
  54. package/components/navigation/vertical/components/group/group.component.d.ts +1 -1
  55. package/components/navigation/vertical/vertical.component.d.ts +5 -5
  56. package/components/pagination/public-api.d.ts +1 -0
  57. package/components/popover/popover-trigger.d.ts +121 -0
  58. package/components/popover/popover.component.d.ts +3 -3
  59. package/components/popover/popover.target.d.ts +8 -0
  60. package/components/popover/public-api.d.ts +3 -0
  61. package/components/rating/rating.component.d.ts +38 -9
  62. package/components/select-search/select-search.component.d.ts +4 -4
  63. package/components/select-tree/public-api.d.ts +2 -0
  64. package/components/select-tree/select-tree.component.d.ts +50 -21
  65. package/components/toast/public-api.d.ts +4 -0
  66. package/components/toast/toast.component.d.ts +4 -4
  67. package/components/transfer-picker/filter/filter.component.d.ts +1 -1
  68. package/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.d.ts +2 -2
  69. package/components/transfer-picker/transfer-picker.component.d.ts +1 -1
  70. package/components/upload/files.type.d.ts +22 -0
  71. package/components/upload/files.util.service.d.ts +20 -0
  72. package/components/upload/index.d.ts +5 -0
  73. package/components/upload/public-api.d.ts +4 -0
  74. package/components/upload/upload-queue/upload-queue.component.d.ts +39 -0
  75. package/components/upload/upload.component.d.ts +32 -0
  76. package/esm2022/animations/public-api.mjs +2 -2
  77. package/esm2022/components/adapter/dayjs-date-adapter.mjs +6 -6
  78. package/esm2022/components/adapter/dayjs-datetime-adapter.mjs +5 -5
  79. package/esm2022/components/adapter/native-datetime-adapter.mjs +3 -3
  80. package/esm2022/components/breadcrumb/breadcrumb-item.directive.mjs +3 -3
  81. package/esm2022/components/breadcrumb/breadcrumb.component.mjs +6 -6
  82. package/esm2022/components/breadcrumb/breadcrumb.service.mjs +5 -5
  83. package/esm2022/components/breadcrumb/public-api.mjs +3 -1
  84. package/esm2022/components/card/card.component.mjs +5 -5
  85. package/esm2022/components/card/public-api.mjs +2 -1
  86. package/esm2022/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.mjs +7 -7
  87. package/esm2022/components/cascade/cascade-list/cascade-list.component.mjs +207 -114
  88. package/esm2022/components/cascade/cascade-menu/cascade-menu.component.mjs +4 -4
  89. package/esm2022/components/cascade/public-api.mjs +2 -1
  90. package/esm2022/components/chip-input/chip-input.component.mjs +152 -49
  91. package/esm2022/components/custom-formly/cmat-components-custom-formly.mjs +5 -0
  92. package/esm2022/components/custom-formly/extension/addons.extension.mjs +13 -0
  93. package/esm2022/components/custom-formly/public-api.mjs +22 -0
  94. package/esm2022/components/custom-formly/types/button/button.component.mjs +39 -0
  95. package/esm2022/components/custom-formly/types/checklist/checklist.component.mjs +161 -0
  96. package/esm2022/components/custom-formly/types/chips/chips.component.mjs +55 -0
  97. package/esm2022/components/custom-formly/types/multicheckbox/multicheckbox.component.mjs +89 -0
  98. package/esm2022/components/custom-formly/types/number/number.component.mjs +27 -0
  99. package/esm2022/components/custom-formly/types/radio/radio.component.mjs +88 -0
  100. package/esm2022/components/custom-formly/types/rating/rating.component.mjs +27 -0
  101. package/esm2022/components/custom-formly/types/repeat/repeat.component.mjs +28 -0
  102. package/esm2022/components/custom-formly/types/select/select.component.mjs +169 -0
  103. package/esm2022/components/custom-formly/types/select-tree/select-tree.component.mjs +66 -0
  104. package/esm2022/components/custom-formly/types/stepper/horizontal/stepper.component.mjs +31 -0
  105. package/esm2022/components/custom-formly/types/stepper/stepper.type.mjs +2 -0
  106. package/esm2022/components/custom-formly/types/stepper/vertical/stepper.component.mjs +31 -0
  107. package/esm2022/components/custom-formly/types/table/table.component.mjs +116 -0
  108. package/esm2022/components/custom-formly/types/tabs/tab.component.mjs +19 -0
  109. package/esm2022/components/custom-formly/types/tags/tags.component.mjs +149 -0
  110. package/esm2022/components/custom-formly/types/textarea/textarea.component.mjs +25 -0
  111. package/esm2022/components/custom-formly/wrappers/addons/addons.component.mjs +92 -0
  112. package/esm2022/components/custom-formly/wrappers/card/card.component.mjs +14 -0
  113. package/esm2022/components/custom-formly/wrappers/expansion/expansion.component.mjs +14 -0
  114. package/esm2022/components/custom-formly/wrappers/panel/panel.component.mjs +12 -0
  115. package/esm2022/components/date-range/date-range.component.mjs +26 -17
  116. package/esm2022/components/drawer/drawer.component.mjs +5 -5
  117. package/esm2022/components/drawer/drawer.service.mjs +3 -3
  118. package/esm2022/components/fullscreen/fullscreen.component.mjs +16 -73
  119. package/esm2022/components/fullscreen/public-api.mjs +1 -2
  120. package/esm2022/components/highlight/highlight.component.mjs +5 -5
  121. package/esm2022/components/highlight/highlight.service.mjs +3 -3
  122. package/esm2022/components/json-editor/json-editor.component.mjs +3 -3
  123. package/esm2022/components/masonry/masonry.component.mjs +5 -5
  124. package/esm2022/components/material-color-picker/material-color-picker.component.mjs +22 -12
  125. package/esm2022/components/material-datetimepicker/calendar-body.mjs +3 -3
  126. package/esm2022/components/material-datetimepicker/calendar.mjs +11 -12
  127. package/esm2022/components/material-datetimepicker/clock.mjs +5 -5
  128. package/esm2022/components/material-datetimepicker/datetimepicker-input.mjs +4 -5
  129. package/esm2022/components/material-datetimepicker/datetimepicker-intl.mjs +3 -3
  130. package/esm2022/components/material-datetimepicker/datetimepicker-toggle.mjs +9 -9
  131. package/esm2022/components/material-datetimepicker/datetimepicker.mjs +17 -22
  132. package/esm2022/components/material-datetimepicker/month-view.mjs +5 -6
  133. package/esm2022/components/material-datetimepicker/multi-year-view.mjs +7 -8
  134. package/esm2022/components/material-datetimepicker/public-api.mjs +2 -1
  135. package/esm2022/components/material-datetimepicker/time.mjs +8 -8
  136. package/esm2022/components/material-datetimepicker/year-view.mjs +7 -8
  137. package/esm2022/components/navigation/horizontal/components/basic/basic.component.mjs +8 -8
  138. package/esm2022/components/navigation/horizontal/components/branch/branch.component.mjs +8 -8
  139. package/esm2022/components/navigation/horizontal/components/divider/divider.component.mjs +5 -5
  140. package/esm2022/components/navigation/horizontal/components/spacer/spacer.component.mjs +6 -6
  141. package/esm2022/components/navigation/horizontal/horizontal.component.mjs +6 -6
  142. package/esm2022/components/navigation/navigation.service.mjs +3 -3
  143. package/esm2022/components/navigation/vertical/components/aside/aside.component.mjs +11 -11
  144. package/esm2022/components/navigation/vertical/components/basic/basic.component.mjs +7 -24
  145. package/esm2022/components/navigation/vertical/components/collapsable/collapsable.component.mjs +10 -10
  146. package/esm2022/components/navigation/vertical/components/divider/divider.component.mjs +5 -5
  147. package/esm2022/components/navigation/vertical/components/group/group.component.mjs +9 -9
  148. package/esm2022/components/navigation/vertical/components/spacer/spacer.component.mjs +6 -6
  149. package/esm2022/components/navigation/vertical/vertical.component.mjs +11 -11
  150. package/esm2022/components/pagination/pagination.component.mjs +10 -10
  151. package/esm2022/components/pagination/pagination.directive.mjs +4 -4
  152. package/esm2022/components/pagination/pagination.pipe.mjs +4 -4
  153. package/esm2022/components/pagination/pagination.service.mjs +3 -3
  154. package/esm2022/components/pagination/public-api.mjs +2 -1
  155. package/esm2022/components/password-strength/mat-pass-toggle-visibility/mat-pass-toggle-visibility.component.mjs +6 -6
  156. package/esm2022/components/password-strength/mat-password-strength/mat-password-strength.component.mjs +5 -5
  157. package/esm2022/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.mjs +6 -6
  158. package/esm2022/components/popover/popover-trigger.mjs +444 -0
  159. package/esm2022/components/popover/popover.component.mjs +8 -9
  160. package/esm2022/components/popover/popover.target.mjs +18 -0
  161. package/esm2022/components/popover/public-api.mjs +4 -1
  162. package/esm2022/components/progress-bar/progress-bar.component.mjs +6 -6
  163. package/esm2022/components/rating/rating.component.mjs +122 -23
  164. package/esm2022/components/select-search/select-no-entries-found.directive.mjs +3 -3
  165. package/esm2022/components/select-search/select-search-clear.directive.mjs +3 -3
  166. package/esm2022/components/select-search/select-search.component.mjs +15 -15
  167. package/esm2022/components/select-tree/public-api.mjs +3 -1
  168. package/esm2022/components/select-tree/select-tree.component.mjs +281 -157
  169. package/esm2022/components/timeline/timeline-item/timeline-item.component.mjs +9 -9
  170. package/esm2022/components/timeline/timeline.component.mjs +5 -5
  171. package/esm2022/components/toast/public-api.mjs +5 -1
  172. package/esm2022/components/toast/toast-modal.component.mjs +5 -5
  173. package/esm2022/components/toast/toast.component.mjs +6 -6
  174. package/esm2022/components/toast/toast.service.mjs +3 -3
  175. package/esm2022/components/transfer-picker/filter/filter.component.mjs +9 -9
  176. package/esm2022/components/transfer-picker/search/search.component.mjs +6 -6
  177. package/esm2022/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.mjs +11 -11
  178. package/esm2022/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.mjs +5 -5
  179. package/esm2022/components/transfer-picker/transfer-picker.component.mjs +7 -7
  180. package/esm2022/components/transfer-picker/transfer-picker.service.mjs +4 -4
  181. package/esm2022/components/upload/cmat-components-upload.mjs +5 -0
  182. package/esm2022/components/upload/files.type.mjs +2 -0
  183. package/esm2022/components/upload/files.util.service.mjs +100 -0
  184. package/esm2022/components/upload/public-api.mjs +5 -0
  185. package/esm2022/components/upload/upload-queue/upload-queue.component.mjs +154 -0
  186. package/esm2022/components/upload/upload.component.mjs +118 -0
  187. package/esm2022/directives/animate-on-scroll/animate-on-scroll.directive.mjs +3 -3
  188. package/esm2022/directives/animate-on-scroll/scroll.service.mjs +3 -3
  189. package/esm2022/directives/autofocus/autofocus.directive.mjs +3 -3
  190. package/esm2022/directives/debounce/abstract-debounce.directive.mjs +3 -3
  191. package/esm2022/directives/debounce/debounce-click.directive.mjs +3 -3
  192. package/esm2022/directives/debounce/debounce-keyup.directive.mjs +3 -3
  193. package/esm2022/directives/digit-only/digit-only.directive.mjs +3 -3
  194. package/esm2022/directives/digit-only/mask.directive.mjs +3 -3
  195. package/esm2022/directives/equal-validator/equal-validator.directive.mjs +3 -3
  196. package/esm2022/lib/mock-api/mock-api.interceptor.mjs +5 -5
  197. package/esm2022/lib/mock-api/mock-api.service.mjs +3 -3
  198. package/esm2022/pipes/bytes/bytes.pipe.mjs +3 -3
  199. package/esm2022/pipes/date-format/date-format.pipe.mjs +3 -3
  200. package/esm2022/pipes/find-by-key/find-by-key.pipe.mjs +3 -3
  201. package/esm2022/pipes/group-by/group-by.pipe.mjs +3 -3
  202. package/esm2022/pipes/keys/keys.pipe.mjs +3 -3
  203. package/esm2022/pipes/secure/secure-pipe.mjs +5 -5
  204. package/esm2022/pipes/uppercase/uppercase.pipe.mjs +3 -3
  205. package/esm2022/public-api.mjs +1 -1
  206. package/esm2022/services/alert/alert.service.mjs +7 -7
  207. package/esm2022/services/alert/enum.mjs +2 -2
  208. package/esm2022/services/config/config.service.mjs +5 -5
  209. package/esm2022/services/config/urlStateConfig.service.mjs +5 -5
  210. package/esm2022/services/confirmation/confirmation.service.mjs +5 -5
  211. package/esm2022/services/confirmation/dialog/dialog.component.mjs +7 -7
  212. package/esm2022/services/data/data.service.mjs +5 -5
  213. package/esm2022/services/loading/loading.interceptor.mjs +4 -4
  214. package/esm2022/services/loading/loading.service.mjs +3 -3
  215. package/esm2022/services/local-storage/local-storage.service.mjs +3 -3
  216. package/esm2022/services/media-watcher/media-watcher.service.mjs +5 -5
  217. package/esm2022/services/platform/platform.service.mjs +4 -4
  218. package/esm2022/services/splash-screen/splash-screen.service.mjs +6 -6
  219. package/esm2022/services/title/title.service.mjs +4 -4
  220. package/esm2022/services/translation/translation.service.mjs +3 -3
  221. package/esm2022/services/utils/utils.service.mjs +54 -9
  222. package/fesm2022/cmat-animations.mjs +15 -15
  223. package/fesm2022/cmat-animations.mjs.map +1 -1
  224. package/fesm2022/cmat-components-adapter.mjs +11 -11
  225. package/fesm2022/cmat-components-adapter.mjs.map +1 -1
  226. package/fesm2022/cmat-components-breadcrumb.mjs +11 -11
  227. package/fesm2022/cmat-components-breadcrumb.mjs.map +1 -1
  228. package/fesm2022/cmat-components-card.mjs +4 -4
  229. package/fesm2022/cmat-components-card.mjs.map +1 -1
  230. package/fesm2022/cmat-components-cascade.mjs +215 -123
  231. package/fesm2022/cmat-components-cascade.mjs.map +1 -1
  232. package/fesm2022/cmat-components-chip-input.mjs +153 -50
  233. package/fesm2022/cmat-components-chip-input.mjs.map +1 -1
  234. package/fesm2022/cmat-components-custom-formly.mjs +1141 -0
  235. package/fesm2022/cmat-components-custom-formly.mjs.map +1 -0
  236. package/fesm2022/cmat-components-date-range.mjs +27 -18
  237. package/fesm2022/cmat-components-date-range.mjs.map +1 -1
  238. package/fesm2022/cmat-components-drawer.mjs +8 -8
  239. package/fesm2022/cmat-components-drawer.mjs.map +1 -1
  240. package/fesm2022/cmat-components-fullscreen.mjs +16 -73
  241. package/fesm2022/cmat-components-fullscreen.mjs.map +1 -1
  242. package/fesm2022/cmat-components-highlight.mjs +7 -7
  243. package/fesm2022/cmat-components-highlight.mjs.map +1 -1
  244. package/fesm2022/cmat-components-json-editor.mjs +3 -3
  245. package/fesm2022/cmat-components-masonry.mjs +4 -4
  246. package/fesm2022/cmat-components-masonry.mjs.map +1 -1
  247. package/fesm2022/cmat-components-material-color-picker.mjs +21 -11
  248. package/fesm2022/cmat-components-material-color-picker.mjs.map +1 -1
  249. package/fesm2022/cmat-components-material-datetimepicker.mjs +189 -195
  250. package/fesm2022/cmat-components-material-datetimepicker.mjs.map +1 -1
  251. package/fesm2022/cmat-components-navigation.mjs +166 -183
  252. package/fesm2022/cmat-components-navigation.mjs.map +1 -1
  253. package/fesm2022/cmat-components-pagination.mjs +20 -20
  254. package/fesm2022/cmat-components-pagination.mjs.map +1 -1
  255. package/fesm2022/cmat-components-password-strength.mjs +13 -13
  256. package/fesm2022/cmat-components-password-strength.mjs.map +1 -1
  257. package/fesm2022/cmat-components-popover.mjs +464 -10
  258. package/fesm2022/cmat-components-popover.mjs.map +1 -1
  259. package/fesm2022/cmat-components-progress-bar.mjs +6 -6
  260. package/fesm2022/cmat-components-progress-bar.mjs.map +1 -1
  261. package/fesm2022/cmat-components-rating.mjs +121 -22
  262. package/fesm2022/cmat-components-rating.mjs.map +1 -1
  263. package/fesm2022/cmat-components-select-search.mjs +41 -41
  264. package/fesm2022/cmat-components-select-search.mjs.map +1 -1
  265. package/fesm2022/cmat-components-select-tree.mjs +285 -158
  266. package/fesm2022/cmat-components-select-tree.mjs.map +1 -1
  267. package/fesm2022/cmat-components-timeline.mjs +12 -12
  268. package/fesm2022/cmat-components-timeline.mjs.map +1 -1
  269. package/fesm2022/cmat-components-toast.mjs +12 -12
  270. package/fesm2022/cmat-components-toast.mjs.map +1 -1
  271. package/fesm2022/cmat-components-transfer-picker.mjs +33 -33
  272. package/fesm2022/cmat-components-transfer-picker.mjs.map +1 -1
  273. package/fesm2022/cmat-components-upload.mjs +366 -0
  274. package/fesm2022/cmat-components-upload.mjs.map +1 -0
  275. package/fesm2022/cmat-directives-animate-on-scroll.mjs +6 -6
  276. package/fesm2022/cmat-directives-autofocus.mjs +3 -3
  277. package/fesm2022/cmat-directives-debounce.mjs +9 -9
  278. package/fesm2022/cmat-directives-digit-only.mjs +6 -6
  279. package/fesm2022/cmat-directives-equal-validator.mjs +3 -3
  280. package/fesm2022/cmat-lib-mock-api.mjs +6 -6
  281. package/fesm2022/cmat-lib-mock-api.mjs.map +1 -1
  282. package/fesm2022/cmat-pipes-bytes.mjs +3 -3
  283. package/fesm2022/cmat-pipes-date-format.mjs +3 -3
  284. package/fesm2022/cmat-pipes-find-by-key.mjs +3 -3
  285. package/fesm2022/cmat-pipes-group-by.mjs +3 -3
  286. package/fesm2022/cmat-pipes-keys.mjs +3 -3
  287. package/fesm2022/cmat-pipes-secure.mjs +4 -4
  288. package/fesm2022/cmat-pipes-secure.mjs.map +1 -1
  289. package/fesm2022/cmat-pipes-uppercase.mjs +3 -3
  290. package/fesm2022/cmat-services-alert.mjs +6 -6
  291. package/fesm2022/cmat-services-alert.mjs.map +1 -1
  292. package/fesm2022/cmat-services-config.mjs +7 -7
  293. package/fesm2022/cmat-services-config.mjs.map +1 -1
  294. package/fesm2022/cmat-services-confirmation.mjs +11 -11
  295. package/fesm2022/cmat-services-confirmation.mjs.map +1 -1
  296. package/fesm2022/cmat-services-data.mjs +5 -5
  297. package/fesm2022/cmat-services-data.mjs.map +1 -1
  298. package/fesm2022/cmat-services-loading.mjs +6 -6
  299. package/fesm2022/cmat-services-loading.mjs.map +1 -1
  300. package/fesm2022/cmat-services-local-storage.mjs +3 -3
  301. package/fesm2022/cmat-services-media-watcher.mjs +4 -4
  302. package/fesm2022/cmat-services-media-watcher.mjs.map +1 -1
  303. package/fesm2022/cmat-services-platform.mjs +3 -3
  304. package/fesm2022/cmat-services-platform.mjs.map +1 -1
  305. package/fesm2022/cmat-services-splash-screen.mjs +5 -5
  306. package/fesm2022/cmat-services-splash-screen.mjs.map +1 -1
  307. package/fesm2022/cmat-services-title.mjs +3 -3
  308. package/fesm2022/cmat-services-title.mjs.map +1 -1
  309. package/fesm2022/cmat-services-translation.mjs +3 -3
  310. package/fesm2022/cmat-services-utils.mjs +53 -8
  311. package/fesm2022/cmat-services-utils.mjs.map +1 -1
  312. package/package.json +75 -63
  313. package/pipes/secure/secure-pipe.d.ts +1 -1
  314. package/services/alert/enum.d.ts +1 -1
  315. package/services/confirmation/confirmation.service.d.ts +1 -1
  316. package/services/data/data.service.d.ts +1 -1
  317. package/services/media-watcher/media-watcher.service.d.ts +1 -1
  318. package/services/title/title.service.d.ts +1 -1
  319. package/services/utils/utils.service.d.ts +1 -0
  320. package/styles/components/bundle.scss +18 -5
  321. package/styles/overrides/angular-material.scss +51 -52
  322. package/styles/tailwind.scss +2 -8
  323. package/styles/themes.scss +7 -7
  324. package/styles/user-themes.scss +1 -1
  325. package/tailwind/plugins/utilities.js +1 -1
  326. package/components/fullscreen/fullscreen.types.d.ts +0 -13
  327. package/esm2022/components/fullscreen/fullscreen.types.mjs +0 -2
@@ -1,8 +1,8 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
2
- import { CmatTransferPickerSourceComponent } from './transfer-picker-source/transfer-picker-source.component';
2
+ import { MatButtonModule } from '@angular/material/button';
3
3
  import { MatIconModule } from '@angular/material/icon';
4
+ import { CmatTransferPickerSourceComponent } from './transfer-picker-source/transfer-picker-source.component';
4
5
  import { CmatTransferPickerTargetComponent } from './transfer-picker-target/transfer-picker-target.component';
5
- import { MatButtonModule } from '@angular/material/button';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "./transfer-picker.service";
8
8
  import * as i2 from "@angular/material/icon";
@@ -55,12 +55,12 @@ export class CmatTransferPickerComponent {
55
55
  this.selectChange.next(this.selectedList);
56
56
  this._changeDetectorRef.detectChanges();
57
57
  }
58
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CmatTransferPickerComponent, deps: [{ token: i1.CmatTransferPickerService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
59
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: CmatTransferPickerComponent, isStandalone: true, selector: "cmat-transfer-picker", inputs: { title: "title", filterable: "filterable", searchable: "searchable", searchPlaceholder: "searchPlaceholder", dataSource: "dataSource", filters: "filters", selectedValues: "selectedValues" }, outputs: { selectChange: "selectChange" }, viewQueries: [{ propertyName: "source", first: true, predicate: CmatTransferPickerSourceComponent, descendants: true, static: true }], exportAs: ["cmatTransferPicker"], ngImport: i0, template: "<cmat-transfer-picker-source></cmat-transfer-picker-source>\n<div class=\"cmat-transfer-picker-operation flex flex-col flex-nowrap gap-2 mx-2\">\n <button type=\"button\" class=\"pr-2\" mat-raised-button color=\"primary\" (click)=\"pick()\">\n \u9009\u62E9<mat-icon svgIcon=\"mat_outline:chevron_right\"></mat-icon>\n </button>\n <button type=\"button\" class=\"pl-2\" mat-raised-button color=\"primary\" (click)=\"reset()\">\n <mat-icon svgIcon=\"mat_outline:chevron_left\"></mat-icon>\u91CD\u7F6E\n </button>\n</div>\n<cmat-transfer-picker-target [selectedList]=\"selectedList\" (clearItemChange)=\"onClearItemChange($event)\">\n</cmat-transfer-picker-target>", styles: ["cmat-transfer-picker{height:100%;overflow:hidden;padding:1rem;display:flex;flex-wrap:nowrap;justify-items:center;align-items:center;gap:.5rem}cmat-transfer-picker cmat-transfer-picker-source,cmat-transfer-picker cmat-transfer-picker-target{height:100%}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: CmatTransferPickerSourceComponent, selector: "cmat-transfer-picker-source", exportAs: ["cmatTransferPickerSource"] }, { kind: "component", type: CmatTransferPickerTargetComponent, selector: "cmat-transfer-picker-target", inputs: ["selectedList"], outputs: ["clearItemChange"], exportAs: ["cmatTransferPickerTarget"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatTransferPickerComponent, deps: [{ token: i1.CmatTransferPickerService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: CmatTransferPickerComponent, isStandalone: true, selector: "cmat-transfer-picker", inputs: { title: "title", filterable: "filterable", searchable: "searchable", searchPlaceholder: "searchPlaceholder", dataSource: "dataSource", filters: "filters", selectedValues: "selectedValues" }, outputs: { selectChange: "selectChange" }, viewQueries: [{ propertyName: "source", first: true, predicate: CmatTransferPickerSourceComponent, descendants: true, static: true }], exportAs: ["cmatTransferPicker"], ngImport: i0, template: "<cmat-transfer-picker-source></cmat-transfer-picker-source>\n<div class=\"cmat-transfer-picker-operation flex flex-col flex-nowrap gap-2 mx-2\">\n <button type=\"button\" class=\"pl-2\" mat-raised-button color=\"primary\" (click)=\"pick()\">\n \u9009\u62E9<mat-icon svgIcon=\"mat_outline:chevron_right\"></mat-icon>\n </button>\n <button type=\"button\" class=\"pl-2\" mat-raised-button color=\"primary\" (click)=\"reset()\">\n <mat-icon svgIcon=\"mat_outline:chevron_left\"></mat-icon>\u91CD\u7F6E\n </button>\n</div>\n<cmat-transfer-picker-target [selectedList]=\"selectedList\" (clearItemChange)=\"onClearItemChange($event)\">\n</cmat-transfer-picker-target>", styles: ["cmat-transfer-picker{height:100%;overflow:hidden;padding:1rem;display:flex;flex-wrap:nowrap;justify-items:center;align-items:center;gap:.5rem}cmat-transfer-picker cmat-transfer-picker-source,cmat-transfer-picker cmat-transfer-picker-target{height:100%}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: CmatTransferPickerSourceComponent, selector: "cmat-transfer-picker-source", exportAs: ["cmatTransferPickerSource"] }, { kind: "component", type: CmatTransferPickerTargetComponent, selector: "cmat-transfer-picker-target", inputs: ["selectedList"], outputs: ["clearItemChange"], exportAs: ["cmatTransferPickerTarget"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
60
60
  }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CmatTransferPickerComponent, decorators: [{
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatTransferPickerComponent, decorators: [{
62
62
  type: Component,
63
- args: [{ selector: 'cmat-transfer-picker', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatTransferPicker', standalone: true, imports: [MatIconModule, MatButtonModule, CmatTransferPickerSourceComponent, CmatTransferPickerTargetComponent], template: "<cmat-transfer-picker-source></cmat-transfer-picker-source>\n<div class=\"cmat-transfer-picker-operation flex flex-col flex-nowrap gap-2 mx-2\">\n <button type=\"button\" class=\"pr-2\" mat-raised-button color=\"primary\" (click)=\"pick()\">\n \u9009\u62E9<mat-icon svgIcon=\"mat_outline:chevron_right\"></mat-icon>\n </button>\n <button type=\"button\" class=\"pl-2\" mat-raised-button color=\"primary\" (click)=\"reset()\">\n <mat-icon svgIcon=\"mat_outline:chevron_left\"></mat-icon>\u91CD\u7F6E\n </button>\n</div>\n<cmat-transfer-picker-target [selectedList]=\"selectedList\" (clearItemChange)=\"onClearItemChange($event)\">\n</cmat-transfer-picker-target>", styles: ["cmat-transfer-picker{height:100%;overflow:hidden;padding:1rem;display:flex;flex-wrap:nowrap;justify-items:center;align-items:center;gap:.5rem}cmat-transfer-picker cmat-transfer-picker-source,cmat-transfer-picker cmat-transfer-picker-target{height:100%}\n"] }]
63
+ args: [{ selector: 'cmat-transfer-picker', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatTransferPicker', standalone: true, imports: [MatIconModule, MatButtonModule, CmatTransferPickerSourceComponent, CmatTransferPickerTargetComponent], template: "<cmat-transfer-picker-source></cmat-transfer-picker-source>\n<div class=\"cmat-transfer-picker-operation flex flex-col flex-nowrap gap-2 mx-2\">\n <button type=\"button\" class=\"pl-2\" mat-raised-button color=\"primary\" (click)=\"pick()\">\n \u9009\u62E9<mat-icon svgIcon=\"mat_outline:chevron_right\"></mat-icon>\n </button>\n <button type=\"button\" class=\"pl-2\" mat-raised-button color=\"primary\" (click)=\"reset()\">\n <mat-icon svgIcon=\"mat_outline:chevron_left\"></mat-icon>\u91CD\u7F6E\n </button>\n</div>\n<cmat-transfer-picker-target [selectedList]=\"selectedList\" (clearItemChange)=\"onClearItemChange($event)\">\n</cmat-transfer-picker-target>", styles: ["cmat-transfer-picker{height:100%;overflow:hidden;padding:1rem;display:flex;flex-wrap:nowrap;justify-items:center;align-items:center;gap:.5rem}cmat-transfer-picker cmat-transfer-picker-source,cmat-transfer-picker cmat-transfer-picker-target{height:100%}\n"] }]
64
64
  }], ctorParameters: () => [{ type: i1.CmatTransferPickerService }, { type: i0.ChangeDetectorRef }], propDecorators: { title: [{
65
65
  type: Input
66
66
  }], filterable: [{
@@ -81,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
81
81
  type: ViewChild,
82
82
  args: [CmatTransferPickerSourceComponent, { static: true }]
83
83
  }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy90cmFuc2Zlci1waWNrZXIvdHJhbnNmZXItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy90cmFuc2Zlci1waWNrZXIvdHJhbnNmZXItcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHeEssT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDOUcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzlHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUFZM0QsTUFBTSxPQUFPLDJCQUEyQjtJQThCcEMsWUFDWSxRQUFtQyxFQUNuQyxrQkFBcUM7UUFEckMsYUFBUSxHQUFSLFFBQVEsQ0FBMkI7UUFDbkMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUU3QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUVuRCxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsR0FBRztZQUMxQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLO1lBQzFCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUk7WUFDbkMsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSTtZQUNuQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLElBQUksT0FBTztZQUNwRCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFO1NBQzlCLENBQUM7UUFFRixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksWUFBWSxFQUFtQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRTtZQUM1QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDZjtJQUNMLENBQUM7SUFFRCxJQUFJO1FBQ0EsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN4RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFO1lBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN6QjtJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxJQUE4QjtRQUM1QyxJQUFJLElBQUksRUFBRTtZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pCO0lBQ0wsQ0FBQztJQUVPLGNBQWM7UUFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRTFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzhHQXRGUSwyQkFBMkI7a0dBQTNCLDJCQUEyQiwyV0F5QnpCLGlDQUFpQyxnR0MzQ2hELGlyQkFVOEIsdVRETWhCLGFBQWEsbUxBQUMsZUFBZSw0TkFBRSxpQ0FBaUMsZ0hBQUUsaUNBQWlDOzsyRkFFcEcsMkJBQTJCO2tCQVZ2QyxTQUFTOytCQUNJLHNCQUFzQixpQkFHakIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxZQUNyQyxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQLENBQUMsYUFBYSxFQUFDLGVBQWUsRUFBRSxpQ0FBaUMsRUFBRSxpQ0FBaUMsQ0FBQzs4SEFJOUcsS0FBSztzQkFESixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4saUJBQWlCO3NCQURoQixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsTUFBTTtnQkFJUCxNQUFNO3NCQURMLFNBQVM7dUJBQUMsaUNBQWlDLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbWF0VHJhbnNmZXJGaWx0ZXJJdGVtLCBDbWF0VHJhbnNmZXJJdGVtRmxhdE5vZGUsIENtYXRUcmFuc2Zlckl0ZW1Ob2RlIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ21hdFRyYW5zZmVyUGlja2VyU2VydmljZSB9IGZyb20gJy4vdHJhbnNmZXItcGlja2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ21hdFRyYW5zZmVyUGlja2VyU291cmNlQ29tcG9uZW50IH0gZnJvbSAnLi90cmFuc2Zlci1waWNrZXItc291cmNlL3RyYW5zZmVyLXBpY2tlci1zb3VyY2UuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IENtYXRUcmFuc2ZlclBpY2tlclRhcmdldENvbXBvbmVudCB9IGZyb20gJy4vdHJhbnNmZXItcGlja2VyLXRhcmdldC90cmFuc2Zlci1waWNrZXItdGFyZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2NtYXQtdHJhbnNmZXItcGlja2VyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdHJhbnNmZXItcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90cmFuc2Zlci1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGV4cG9ydEFzOiAnY21hdFRyYW5zZmVyUGlja2VyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtNYXRJY29uTW9kdWxlLE1hdEJ1dHRvbk1vZHVsZSwgQ21hdFRyYW5zZmVyUGlja2VyU291cmNlQ29tcG9uZW50LCBDbWF0VHJhbnNmZXJQaWNrZXJUYXJnZXRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIENtYXRUcmFuc2ZlclBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQElucHV0KClcbiAgICB0aXRsZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBmaWx0ZXJhYmxlOiBib29sZWFuO1xuXG4gICAgQElucHV0KClcbiAgICBzZWFyY2hhYmxlOiBib29sZWFuO1xuXG4gICAgQElucHV0KClcbiAgICBzZWFyY2hQbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBkYXRhU291cmNlOiBBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT47XG5cbiAgICBASW5wdXQoKVxuICAgIGZpbHRlcnM6IEFycmF5PENtYXRUcmFuc2ZlckZpbHRlckl0ZW0+O1xuXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RlZFZhbHVlczogQXJyYXk8c3RyaW5nPjtcblxuICAgIEBPdXRwdXQoKVxuICAgIHNlbGVjdENoYW5nZTogRXZlbnRFbWl0dGVyPEFycmF5PENtYXRUcmFuc2Zlckl0ZW1GbGF0Tm9kZT4+O1xuXG4gICAgQFZpZXdDaGlsZChDbWF0VHJhbnNmZXJQaWNrZXJTb3VyY2VDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgc291cmNlOiBDbWF0VHJhbnNmZXJQaWNrZXJTb3VyY2VDb21wb25lbnQ7XG5cbiAgICBzZWxlY3RlZExpc3Q6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1GbGF0Tm9kZT47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfc2VydmljZTogQ21hdFRyYW5zZmVyUGlja2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyYWJsZSA9IHRydWU7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZSA9IFtdO1xuICAgICAgICB0aGlzLmZpbHRlcnMgPSBbXTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZExpc3QgPSBbXTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcyA9IFtdO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zZXJ2aWNlLmRhdGFTb3VyY2UgPSB0aGlzLmRhdGFTb3VyY2U7XG4gICAgICAgIHRoaXMuX3NlcnZpY2Uuc2VsZWN0ZWRWYWx1ZXMgPSB0aGlzLnNlbGVjdGVkVmFsdWVzO1xuXG4gICAgICAgIHRoaXMuX3NlcnZpY2Uuc291cmNlT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRpdGxlIHx8ICfmlbDmja7mupAnLFxuICAgICAgICAgICAgZmlsdGVyYWJsZTogdGhpcy5maWx0ZXJhYmxlIHx8IHRydWUsXG4gICAgICAgICAgICBzZWFyY2hhYmxlOiB0aGlzLnNlYXJjaGFibGUgfHwgdHJ1ZSxcbiAgICAgICAgICAgIHNlYXJjaFBsYWNlaG9sZGVyOiB0aGlzLnNlYXJjaFBsYWNlaG9sZGVyIHx8ICfmkJzntKLlhbPplK7lrZcnLFxuICAgICAgICAgICAgZmlsdGVyczogdGhpcy5maWx0ZXJzIHx8IFtdXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5zZWxlY3RDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEFycmF5PENtYXRUcmFuc2Zlckl0ZW1GbGF0Tm9kZT4+KCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMucGljaygpOyAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZExpc3QgPSB0aGlzLnNvdXJjZS5nZXRTZWxlY3RlZExpc3QoKSB8fCBbXTtcbiAgICAgICAgdGhpcy5fZW1pdHRlckNoYW5nZSgpO1xuICAgIH1cblxuICAgIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZExpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTGlzdCA9IFtdO1xuICAgICAgICAgICAgdGhpcy5fc2VydmljZS5yZXNldERhdGFTb3VyY2UodHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLl9lbWl0dGVyQ2hhbmdlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNsZWFySXRlbUNoYW5nZShpdGVtOiBDbWF0VHJhbnNmZXJJdGVtRmxhdE5vZGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgICAgIHRoaXMuc291cmNlLnJlc2V0U2VsZWN0ZWRJdGVtKGl0ZW0pO1xuICAgICAgICAgICAgdGhpcy5fZW1pdHRlckNoYW5nZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZW1pdHRlckNoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RDaGFuZ2UubmV4dCh0aGlzLnNlbGVjdGVkTGlzdCk7XG5cbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbn1cbiIsIjxjbWF0LXRyYW5zZmVyLXBpY2tlci1zb3VyY2U+PC9jbWF0LXRyYW5zZmVyLXBpY2tlci1zb3VyY2U+XG48ZGl2IGNsYXNzPVwiY21hdC10cmFuc2Zlci1waWNrZXItb3BlcmF0aW9uIGZsZXggZmxleC1jb2wgZmxleC1ub3dyYXAgZ2FwLTIgbXgtMlwiPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwicHItMlwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJwaWNrKClcIj5cbiAgICAgICAg6YCJ5oupPG1hdC1pY29uIHN2Z0ljb249XCJtYXRfb3V0bGluZTpjaGV2cm9uX3JpZ2h0XCI+PC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInBsLTJcIiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwicmVzZXQoKVwiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm1hdF9vdXRsaW5lOmNoZXZyb25fbGVmdFwiPjwvbWF0LWljb24+6YeN572uXG4gICAgPC9idXR0b24+XG48L2Rpdj5cbjxjbWF0LXRyYW5zZmVyLXBpY2tlci10YXJnZXQgW3NlbGVjdGVkTGlzdF09XCJzZWxlY3RlZExpc3RcIiAoY2xlYXJJdGVtQ2hhbmdlKT1cIm9uQ2xlYXJJdGVtQ2hhbmdlKCRldmVudClcIj5cbjwvY21hdC10cmFuc2Zlci1waWNrZXItdGFyZ2V0PiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy90cmFuc2Zlci1waWNrZXIvdHJhbnNmZXItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy90cmFuc2Zlci1waWNrZXIvdHJhbnNmZXItcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEssT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwyREFBMkQsQ0FBQztBQUM5RyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwyREFBMkQsQ0FBQzs7Ozs7QUFhOUcsTUFBTSxPQUFPLDJCQUEyQjtJQThCcEMsWUFDWSxRQUFtQyxFQUNuQyxrQkFBcUM7UUFEckMsYUFBUSxHQUFSLFFBQVEsQ0FBMkI7UUFDbkMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUU3QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUVuRCxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsR0FBRztZQUMxQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLO1lBQzFCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUk7WUFDbkMsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSTtZQUNuQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLElBQUksT0FBTztZQUNwRCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFO1NBQzlCLENBQUM7UUFFRixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksWUFBWSxFQUFtQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRTtZQUM1QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDZjtJQUNMLENBQUM7SUFFRCxJQUFJO1FBQ0EsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN4RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFO1lBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN6QjtJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxJQUE4QjtRQUM1QyxJQUFJLElBQUksRUFBRTtZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pCO0lBQ0wsQ0FBQztJQUVPLGNBQWM7UUFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRTFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzhHQXRGUSwyQkFBMkI7a0dBQTNCLDJCQUEyQiwyV0F5QnpCLGlDQUFpQyxnR0MzQ2hELGlyQkFVOEIsdVRETWhCLGFBQWEsbUxBQUMsZUFBZSw0TkFBRSxpQ0FBaUMsZ0hBQUUsaUNBQWlDOzsyRkFFcEcsMkJBQTJCO2tCQVZ2QyxTQUFTOytCQUNJLHNCQUFzQixpQkFHakIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxZQUNyQyxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQLENBQUMsYUFBYSxFQUFDLGVBQWUsRUFBRSxpQ0FBaUMsRUFBRSxpQ0FBaUMsQ0FBQzs4SEFJOUcsS0FBSztzQkFESixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4saUJBQWlCO3NCQURoQixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsTUFBTTtnQkFJUCxNQUFNO3NCQURMLFNBQVM7dUJBQUMsaUNBQWlDLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgQ21hdFRyYW5zZmVyRmlsdGVySXRlbSwgQ21hdFRyYW5zZmVySXRlbUZsYXROb2RlLCBDbWF0VHJhbnNmZXJJdGVtTm9kZSB9IGZyb20gJy4vaW50ZXJmYWNlJztcbmltcG9ydCB7IENtYXRUcmFuc2ZlclBpY2tlclNvdXJjZUNvbXBvbmVudCB9IGZyb20gJy4vdHJhbnNmZXItcGlja2VyLXNvdXJjZS90cmFuc2Zlci1waWNrZXItc291cmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDbWF0VHJhbnNmZXJQaWNrZXJUYXJnZXRDb21wb25lbnQgfSBmcm9tICcuL3RyYW5zZmVyLXBpY2tlci10YXJnZXQvdHJhbnNmZXItcGlja2VyLXRhcmdldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ21hdFRyYW5zZmVyUGlja2VyU2VydmljZSB9IGZyb20gJy4vdHJhbnNmZXItcGlja2VyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2NtYXQtdHJhbnNmZXItcGlja2VyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdHJhbnNmZXItcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90cmFuc2Zlci1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGV4cG9ydEFzOiAnY21hdFRyYW5zZmVyUGlja2VyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtNYXRJY29uTW9kdWxlLE1hdEJ1dHRvbk1vZHVsZSwgQ21hdFRyYW5zZmVyUGlja2VyU291cmNlQ29tcG9uZW50LCBDbWF0VHJhbnNmZXJQaWNrZXJUYXJnZXRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIENtYXRUcmFuc2ZlclBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQElucHV0KClcbiAgICB0aXRsZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBmaWx0ZXJhYmxlOiBib29sZWFuO1xuXG4gICAgQElucHV0KClcbiAgICBzZWFyY2hhYmxlOiBib29sZWFuO1xuXG4gICAgQElucHV0KClcbiAgICBzZWFyY2hQbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBkYXRhU291cmNlOiBBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT47XG5cbiAgICBASW5wdXQoKVxuICAgIGZpbHRlcnM6IEFycmF5PENtYXRUcmFuc2ZlckZpbHRlckl0ZW0+O1xuXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RlZFZhbHVlczogQXJyYXk8c3RyaW5nPjtcblxuICAgIEBPdXRwdXQoKVxuICAgIHNlbGVjdENoYW5nZTogRXZlbnRFbWl0dGVyPEFycmF5PENtYXRUcmFuc2Zlckl0ZW1GbGF0Tm9kZT4+O1xuXG4gICAgQFZpZXdDaGlsZChDbWF0VHJhbnNmZXJQaWNrZXJTb3VyY2VDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgc291cmNlOiBDbWF0VHJhbnNmZXJQaWNrZXJTb3VyY2VDb21wb25lbnQ7XG5cbiAgICBzZWxlY3RlZExpc3Q6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1GbGF0Tm9kZT47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfc2VydmljZTogQ21hdFRyYW5zZmVyUGlja2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyYWJsZSA9IHRydWU7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZSA9IFtdO1xuICAgICAgICB0aGlzLmZpbHRlcnMgPSBbXTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZExpc3QgPSBbXTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcyA9IFtdO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zZXJ2aWNlLmRhdGFTb3VyY2UgPSB0aGlzLmRhdGFTb3VyY2U7XG4gICAgICAgIHRoaXMuX3NlcnZpY2Uuc2VsZWN0ZWRWYWx1ZXMgPSB0aGlzLnNlbGVjdGVkVmFsdWVzO1xuXG4gICAgICAgIHRoaXMuX3NlcnZpY2Uuc291cmNlT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRpdGxlIHx8ICfmlbDmja7mupAnLFxuICAgICAgICAgICAgZmlsdGVyYWJsZTogdGhpcy5maWx0ZXJhYmxlIHx8IHRydWUsXG4gICAgICAgICAgICBzZWFyY2hhYmxlOiB0aGlzLnNlYXJjaGFibGUgfHwgdHJ1ZSxcbiAgICAgICAgICAgIHNlYXJjaFBsYWNlaG9sZGVyOiB0aGlzLnNlYXJjaFBsYWNlaG9sZGVyIHx8ICfmkJzntKLlhbPplK7lrZcnLFxuICAgICAgICAgICAgZmlsdGVyczogdGhpcy5maWx0ZXJzIHx8IFtdXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5zZWxlY3RDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEFycmF5PENtYXRUcmFuc2Zlckl0ZW1GbGF0Tm9kZT4+KCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMucGljaygpOyAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZExpc3QgPSB0aGlzLnNvdXJjZS5nZXRTZWxlY3RlZExpc3QoKSB8fCBbXTtcbiAgICAgICAgdGhpcy5fZW1pdHRlckNoYW5nZSgpO1xuICAgIH1cblxuICAgIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZExpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTGlzdCA9IFtdO1xuICAgICAgICAgICAgdGhpcy5fc2VydmljZS5yZXNldERhdGFTb3VyY2UodHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLl9lbWl0dGVyQ2hhbmdlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNsZWFySXRlbUNoYW5nZShpdGVtOiBDbWF0VHJhbnNmZXJJdGVtRmxhdE5vZGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgICAgIHRoaXMuc291cmNlLnJlc2V0U2VsZWN0ZWRJdGVtKGl0ZW0pO1xuICAgICAgICAgICAgdGhpcy5fZW1pdHRlckNoYW5nZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZW1pdHRlckNoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RDaGFuZ2UubmV4dCh0aGlzLnNlbGVjdGVkTGlzdCk7XG5cbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbn1cbiIsIjxjbWF0LXRyYW5zZmVyLXBpY2tlci1zb3VyY2U+PC9jbWF0LXRyYW5zZmVyLXBpY2tlci1zb3VyY2U+XG48ZGl2IGNsYXNzPVwiY21hdC10cmFuc2Zlci1waWNrZXItb3BlcmF0aW9uIGZsZXggZmxleC1jb2wgZmxleC1ub3dyYXAgZ2FwLTIgbXgtMlwiPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwicGwtMlwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJwaWNrKClcIj5cbiAgICAgICAg6YCJ5oupPG1hdC1pY29uIHN2Z0ljb249XCJtYXRfb3V0bGluZTpjaGV2cm9uX3JpZ2h0XCI+PC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInBsLTJcIiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwicmVzZXQoKVwiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm1hdF9vdXRsaW5lOmNoZXZyb25fbGVmdFwiPjwvbWF0LWljb24+6YeN572uXG4gICAgPC9idXR0b24+XG48L2Rpdj5cbjxjbWF0LXRyYW5zZmVyLXBpY2tlci10YXJnZXQgW3NlbGVjdGVkTGlzdF09XCJzZWxlY3RlZExpc3RcIiAoY2xlYXJJdGVtQ2hhbmdlKT1cIm9uQ2xlYXJJdGVtQ2hhbmdlKCRldmVudClcIj5cbjwvY21hdC10cmFuc2Zlci1waWNrZXItdGFyZ2V0PiJdfQ==
@@ -125,13 +125,13 @@ export class CmatTransferPickerService {
125
125
  }
126
126
  });
127
127
  }
128
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CmatTransferPickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
129
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CmatTransferPickerService, providedIn: 'root' }); }
128
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatTransferPickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
129
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatTransferPickerService, providedIn: 'root' }); }
130
130
  }
131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CmatTransferPickerService, decorators: [{
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatTransferPickerService, decorators: [{
132
132
  type: Injectable,
133
133
  args: [{
134
134
  providedIn: 'root'
135
135
  }]
136
136
  }], ctorParameters: () => [] });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXItcGlja2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvdHJhbnNmZXItcGlja2VyL3RyYW5zZmVyLXBpY2tlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFXdkMsTUFBTSxPQUFPLHlCQUF5QjtJQWdCbEM7UUFDSSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxlQUFlLENBQThCLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyx1QkFBdUIsR0FBRSxJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksZUFBZSxDQUFnQyxFQUFFLENBQUMsQ0FBQztRQUM1RSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxlQUFlLENBQTJCLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksZUFBZSxDQUFnQixFQUFFLENBQUMsQ0FBQztRQUVuRSxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxDQUFzQztZQUM1RCxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQVcsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFXLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBVyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMvQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQVcsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDL0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFXLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBVyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNyQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksR0FBRyxDQUEyQztZQUNuRSw0RUFBNEU7WUFDNUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7b0JBQzdGLE1BQU0sRUFBRSxLQUFLO29CQUNiLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUNmLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDViw0RUFBNEU7WUFDNUUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7b0JBQzlGLE1BQU0sRUFBRSxJQUFJO29CQUNaLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUNmLENBQUMsQ0FBQyxNQUFNLENBQUM7U0FDYixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxJQUFpQztRQUM1QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUV4QixJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQzNCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUMvRDtRQUVELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksYUFBYSxDQUFDLEtBQXdCO1FBQ3RDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELElBQUksY0FBYyxDQUFDLEtBQW9CO1FBQ25DLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUdELGdCQUFnQixDQUFDLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBNkQ7UUFDL0YsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNsRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUUvRCxJQUFJLFVBQVUsSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUN6QyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDN0csT0FBTztTQUNWO2FBQU0sSUFBSSxVQUFVLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNqRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxTQUFTLENBQUMsQ0FBQzthQUNyRTtpQkFBTTtnQkFDSCxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQy9CO1lBQ0QsT0FBTztTQUNWO1FBRUQsSUFBSSxPQUFPLEVBQUU7WUFDVCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ25KLE9BQU87U0FDVjthQUFNLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtnQkFDckQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxTQUFTLENBQUMsQ0FBQzthQUNyRTtpQkFBTTtnQkFDSCxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQy9CO1lBQ0QsT0FBTztTQUNWO0lBQ0wsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQzNDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU8sdUJBQXVCLENBQUMsVUFBdUMsRUFBRSxJQUEyQjtRQUNoRyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsRUFBRSxDQUFDO1FBQzlCLFFBQVEsSUFBSSxFQUFFO1lBQ1YsS0FBSyxTQUFTO2dCQUNWLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDakQsTUFBTTtZQUNWLEtBQUssU0FBUztnQkFDVixJQUFJLENBQUMsK0JBQStCLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ2pELE1BQU07U0FDYjtRQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQzNDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVPLCtCQUErQixDQUFDLFVBQXVDO1FBQzNFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNwQixNQUFNLGdCQUFnQixHQUFRLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDcEMsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDMUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7b0JBRTdHLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxPQUFPLEVBQUU7d0JBQ2hELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7cUJBQ3ZDO3lCQUFNO3dCQUNILGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztxQkFDbEM7aUJBQ0o7WUFDTCxDQUFDLENBQUMsQ0FBQztZQUVILElBQUksZ0JBQWdCLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO2dCQUNuRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3ZDO1lBRUQsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN2RDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLCtCQUErQixDQUFDLFVBQXVDO1FBQzNFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNwQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDcEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN2QztpQkFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNsRCxJQUFJLENBQUMsK0JBQStCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3ZEO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQXZKUSx5QkFBeUI7a0hBQXpCLHlCQUF5QixjQUZ0QixNQUFNOzsyRkFFVCx5QkFBeUI7a0JBSHJDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgQ21hdFNvdXJjZU9wdGlvbnMsXG4gICAgQ21hdFRyYW5zZmVyRmlsdGVyRGF0YSxcbiAgICBDbWF0VHJhbnNmZXJGaWx0ZXJJdGVtLFxuICAgIENtYXRUcmFuc2Zlckl0ZW1Ob2RlXG59IGZyb20gJy4vaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDbWF0VHJhbnNmZXJQaWNrZXJTZXJ2aWNlIHtcbiAgICBkYXRhU291cmNlQ2hhbmdlOiBCZWhhdmlvclN1YmplY3Q8QXJyYXk8Q21hdFRyYW5zZmVySXRlbU5vZGU+PjtcbiAgICByZWZyZXNoRGF0YVNvdXJjZUNoYW5nZTogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+O1xuICAgIGZpbHRlcnNDaGFuZ2U6IEJlaGF2aW9yU3ViamVjdDxBcnJheTxDbWF0VHJhbnNmZXJGaWx0ZXJJdGVtPj47XG4gICAgc291cmNlT3B0aW9uc0NoYW5nZTogQmVoYXZpb3JTdWJqZWN0PENtYXRTb3VyY2VPcHRpb25zIHwgdm9pZD47XG4gICAgc2VsZWN0ZWRWYWx1ZXNDaGFuZ2U6IEJlaGF2aW9yU3ViamVjdDxBcnJheTxzdHJpbmc+PjtcblxuICAgIHByaXZhdGUgX2RhdGFTb3VyY2U6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1Ob2RlPjtcblxuICAgIHByaXZhdGUgX2ZpbHRlckRhdGE6IENtYXRUcmFuc2ZlckZpbHRlckRhdGE7XG4gICAgcHJpdmF0ZSBfa2V5d29yZDogc3RyaW5nO1xuICAgIHByaXZhdGUgX29yaWdpbmFsRGF0YVNvdXJjZTogQXJyYXk8Q21hdFRyYW5zZmVySXRlbU5vZGU+O1xuICAgIHByaXZhdGUgX2ZpbHRlcmVkRGF0YVNvdXJjZTogQXJyYXk8Q21hdFRyYW5zZmVySXRlbU5vZGU+O1xuICAgIHByaXZhdGUgX2NvbXBhcmVNYXA6IE1hcDxzdHJpbmcsIChhOiBhbnksIGI6IGFueSkgPT4gYm9vbGVhbj47XG4gICAgcHJpdmF0ZSBfY29uZGl0aW9uTWFwOiBNYXA8c3RyaW5nLCAoYXJyOiBBcnJheTxib29sZWFuPikgPT4gYm9vbGVhbj47XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5kYXRhU291cmNlQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT4+KFtdKTtcbiAgICAgICAgdGhpcy5yZWZyZXNoRGF0YVNvdXJjZUNoYW5nZT0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgICAgICAgdGhpcy5maWx0ZXJzQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTxDbWF0VHJhbnNmZXJGaWx0ZXJJdGVtPj4oW10pO1xuICAgICAgICB0aGlzLnNvdXJjZU9wdGlvbnNDaGFuZ2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENtYXRTb3VyY2VPcHRpb25zIHwgdm9pZD4odm9pZCAwKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlc0NoYW5nZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QXJyYXk8c3RyaW5nPj4oW10pO1xuXG4gICAgICAgIHRoaXMuX2NvbXBhcmVNYXAgPSBuZXcgTWFwPHN0cmluZywgKGE6IGFueSwgYjogYW55KSA9PiBib29sZWFuPihbXG4gICAgICAgICAgICBbJzAnLCAoYSwgYik6IGJvb2xlYW4gPT4gYSA9PT0gYl0sXG4gICAgICAgICAgICBbJzEnLCAoYSwgYik6IGJvb2xlYW4gPT4gYSAhPT0gYl0sXG4gICAgICAgICAgICBbJzInLCAoYSwgYik6IGJvb2xlYW4gPT4gYSA+IGJdLFxuICAgICAgICAgICAgWyczJywgKGEsIGIpOiBib29sZWFuID0+IGEgPCBiXSxcbiAgICAgICAgICAgIFsnMCwyJywgKGEsIGIpOiBib29sZWFuID0+IGEgPj0gYl0sXG4gICAgICAgICAgICBbJzAsMicsIChhLCBiKTogYm9vbGVhbiA9PiBhIDw9IGJdXG4gICAgICAgIF0pO1xuXG4gICAgICAgIHRoaXMuX2NvbmRpdGlvbk1hcCA9IG5ldyBNYXA8c3RyaW5nLCAoYXJyOiBBcnJheTxib29sZWFuPikgPT4gYm9vbGVhbj4oW1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1mdW5jdGlvbi1yZXR1cm4tdHlwZVxuICAgICAgICAgICAgWydvcicsIGFyciA9PiBhcnIucmVkdWNlKChvLCBpdGVtKSA9PiAoby5yZXN1bHQgPSBvLnJlc3VsdCB8fCBpdGVtIHx8IG8ucHJldiwgby5wcmV2ID0gaXRlbSwgbyksIHtcbiAgICAgICAgICAgICAgICByZXN1bHQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHByZXY6IGFyclswXVxuICAgICAgICAgICAgfSkucmVzdWx0XSxcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtZnVuY3Rpb24tcmV0dXJuLXR5cGVcbiAgICAgICAgICAgIFsnYW5kJywgYXJyID0+IGFyci5yZWR1Y2UoKG8sIGl0ZW0pID0+IChvLnJlc3VsdCA9IG8ucmVzdWx0ICYmIGl0ZW0gJiYgby5wcmV2LCBvLnByZXYgPSBpdGVtLCBvKSwge1xuICAgICAgICAgICAgICAgIHJlc3VsdDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBwcmV2OiBhcnJbMF1cbiAgICAgICAgICAgIH0pLnJlc3VsdF0sXG4gICAgICAgIF0pO1xuICAgIH1cblxuICAgIGdldCBkYXRhU291cmNlKCk6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1Ob2RlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRhU291cmNlO1xuICAgIH1cblxuICAgIHNldCBkYXRhU291cmNlKGRhdGE6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1Ob2RlPikge1xuICAgICAgICB0aGlzLl9kYXRhU291cmNlID0gZGF0YTtcblxuICAgICAgICBpZiAoIXRoaXMuX29yaWdpbmFsRGF0YVNvdXJjZSkge1xuICAgICAgICAgICAgdGhpcy5fb3JpZ2luYWxEYXRhU291cmNlID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShkYXRhKSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VDaGFuZ2UubmV4dChkYXRhKTtcbiAgICB9XG5cbiAgICBzZXQgc291cmNlT3B0aW9ucyh2YWx1ZTogQ21hdFNvdXJjZU9wdGlvbnMpIHtcbiAgICAgICAgdGhpcy5zb3VyY2VPcHRpb25zQ2hhbmdlLm5leHQodmFsdWUpO1xuICAgIH1cblxuICAgIHNldCBzZWxlY3RlZFZhbHVlcyh2YWx1ZTogQXJyYXk8c3RyaW5nPikge1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQ2hhbmdlLm5leHQodmFsdWUpO1xuICAgIH1cblxuXG4gICAgZmlsdGVyRGF0YVNvdXJjZSh7IGZpbHRlckRhdGEsIGtleXdvcmQgfTogeyBmaWx0ZXJEYXRhPzogQ21hdFRyYW5zZmVyRmlsdGVyRGF0YTsga2V5d29yZD86IHN0cmluZyB9KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZpbHRlckRhdGEgPSBmaWx0ZXJEYXRhIHx8IHRoaXMuX2ZpbHRlckRhdGE7XG4gICAgICAgIHRoaXMuX2tleXdvcmQgPSBrZXl3b3JkID09PSB2b2lkICgwKSA/IHRoaXMuX2tleXdvcmQgOiBrZXl3b3JkO1xuXG4gICAgICAgIGlmIChmaWx0ZXJEYXRhICYmIGZpbHRlckRhdGEuZmlsdGVycy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX2ZpbHRlckRhdGFTb3VyY2VCeVR5cGUodGhpcy5fa2V5d29yZCA/IHRoaXMuX2ZpbHRlcmVkRGF0YVNvdXJjZSA6IHRoaXMuX29yaWdpbmFsRGF0YVNvdXJjZSwgJ0ZpbHRlcnMnKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXJEYXRhICYmICFmaWx0ZXJEYXRhLmZpbHRlcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fa2V5d29yZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2ZpbHRlckRhdGFTb3VyY2VCeVR5cGUodGhpcy5fb3JpZ2luYWxEYXRhU291cmNlLCAnS2V5d29yZCcpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlc2V0RGF0YVNvdXJjZShmYWxzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoa2V5d29yZCkge1xuICAgICAgICAgICAgdGhpcy5fZmlsdGVyRGF0YVNvdXJjZUJ5VHlwZSh0aGlzLl9maWx0ZXJEYXRhICYmIHRoaXMuX2ZpbHRlckRhdGEuZmlsdGVycy5sZW5ndGggPyB0aGlzLl9maWx0ZXJlZERhdGFTb3VyY2UgOiB0aGlzLl9vcmlnaW5hbERhdGFTb3VyY2UsICdLZXl3b3JkJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSBpZiAoIWtleXdvcmQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9maWx0ZXJEYXRhICYmIHRoaXMuX2ZpbHRlckRhdGEuZmlsdGVycy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9maWx0ZXJEYXRhU291cmNlQnlUeXBlKHRoaXMuX29yaWdpbmFsRGF0YVNvdXJjZSwgJ0ZpbHRlcnMnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldERhdGFTb3VyY2UoZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVzZXREYXRhU291cmNlKGNsZWFyOmJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhU291cmNlID0gdGhpcy5fb3JpZ2luYWxEYXRhU291cmNlO1xuICAgICAgICB0aGlzLl9maWx0ZXJlZERhdGFTb3VyY2UgPSBbXTtcbiAgICAgICAgdGhpcy5yZWZyZXNoRGF0YVNvdXJjZUNoYW5nZS5uZXh0KGNsZWFyKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9maWx0ZXJEYXRhU291cmNlQnlUeXBlKGRhdGFTb3VyY2U6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1Ob2RlPiwgdHlwZTogJ0ZpbHRlcnMnIHwgJ0tleXdvcmQnKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZpbHRlcmVkRGF0YVNvdXJjZSA9IFtdO1xuICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ0ZpbHRlcnMnOlxuICAgICAgICAgICAgICAgIHRoaXMuX3NldEZpbHRlcmVkRGF0YVNvdXJjZUJ5RmlsdGVycyhkYXRhU291cmNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0tleXdvcmQnOlxuICAgICAgICAgICAgICAgIHRoaXMuX3NldEZpbHRlcmVkRGF0YVNvdXJjZUJ5S2V5d29yZChkYXRhU291cmNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRhdGFTb3VyY2UgPSB0aGlzLl9maWx0ZXJlZERhdGFTb3VyY2U7XG4gICAgICAgIHRoaXMucmVmcmVzaERhdGFTb3VyY2VDaGFuZ2UubmV4dChmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2V0RmlsdGVyZWREYXRhU291cmNlQnlGaWx0ZXJzKGRhdGFTb3VyY2U6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1Ob2RlPik6IHZvaWQge1xuICAgICAgICBkYXRhU291cmNlLm1hcCgoZGF0YSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29tcGFyZVJlc3VsdEFycjogYW55ID0gW107XG4gICAgICAgICAgICB0aGlzLl9maWx0ZXJEYXRhLmZpbHRlcnMubWFwKChmaWx0ZXIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGRhdGEsIGZpbHRlci5maWVsZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29tcGFyZSA9IHRoaXMuX2NvbXBhcmVNYXAuZ2V0KGZpbHRlci5jb25kaXRpb24uc29ydCgpLnRvU3RyaW5nKCkpPy4oZmlsdGVyLnZhbHVlLCBkYXRhW2ZpbHRlci5maWVsZF0pO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9maWx0ZXJEYXRhLmZpbHRlcnMubGVuZ3RoIDwgMiAmJiBjb21wYXJlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9maWx0ZXJlZERhdGFTb3VyY2UucHVzaChkYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBhcmVSZXN1bHRBcnIucHVzaChjb21wYXJlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBpZiAoY29tcGFyZVJlc3VsdEFyci5sZW5ndGggJiYgdGhpcy5fY29uZGl0aW9uTWFwLmdldCh0aGlzLl9maWx0ZXJEYXRhLmNvbmRpdGlvbik/Lihjb21wYXJlUmVzdWx0QXJyKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2ZpbHRlcmVkRGF0YVNvdXJjZS5wdXNoKGRhdGEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoZGF0YS5jaGlsZHJlbiAmJiBkYXRhLmNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRGaWx0ZXJlZERhdGFTb3VyY2VCeUZpbHRlcnMoZGF0YS5jaGlsZHJlbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldEZpbHRlcmVkRGF0YVNvdXJjZUJ5S2V5d29yZChkYXRhU291cmNlOiBBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT4pOiB2b2lkIHtcbiAgICAgICAgZGF0YVNvdXJjZS5tYXAoKGRhdGEpID0+IHtcbiAgICAgICAgICAgIGlmIChkYXRhLmxhYmVsLmluY2x1ZGVzKHRoaXMuX2tleXdvcmQpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZmlsdGVyZWREYXRhU291cmNlLnB1c2goZGF0YSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGRhdGEuY2hpbGRyZW4gJiYgZGF0YS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc2V0RmlsdGVyZWREYXRhU291cmNlQnlLZXl3b3JkKGRhdGEuY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbn1cbiJdfQ==
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXItcGlja2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvdHJhbnNmZXItcGlja2VyL3RyYW5zZmVyLXBpY2tlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFXdkMsTUFBTSxPQUFPLHlCQUF5QjtJQWdCbEM7UUFDSSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxlQUFlLENBQThCLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyx1QkFBdUIsR0FBRSxJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksZUFBZSxDQUFnQyxFQUFFLENBQUMsQ0FBQztRQUM1RSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxlQUFlLENBQTJCLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksZUFBZSxDQUFnQixFQUFFLENBQUMsQ0FBQztRQUVuRSxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxDQUFzQztZQUM1RCxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQVcsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFXLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBVyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMvQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxD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bEM7aUJBQ0o7WUFDTCxDQUFDLENBQUMsQ0FBQztZQUVILElBQUksZ0JBQWdCLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO2dCQUNuRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3ZDO1lBRUQsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN2RDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLCtCQUErQixDQUFDLFVBQXVDO1FBQzNFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNwQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDcEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN2QztpQkFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNsRCxJQUFJLENBQUMsK0JBQStCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3ZEO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQXZKUSx5QkFBeUI7a0hBQXpCLHlCQUF5QixjQUZ0QixNQUFNOzsyRkFFVCx5QkFBeUI7a0JBSHJDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIENtYXRTb3VyY2VPcHRpb25zLFxuICAgIENtYXRUcmFuc2ZlckZpbHRlckRhdGEsXG4gICAgQ21hdFRyYW5zZmVyRmlsdGVySXRlbSxcbiAgICBDbWF0VHJhbnNmZXJJdGVtTm9kZVxufSBmcm9tICcuL2ludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ21hdFRyYW5zZmVyUGlja2VyU2VydmljZSB7XG4gICAgZGF0YVNvdXJjZUNoYW5nZTogQmVoYXZpb3JTdWJqZWN0PEFycmF5PENtYXRUcmFuc2Zlckl0ZW1Ob2RlPj47XG4gICAgcmVmcmVzaERhdGFTb3VyY2VDaGFuZ2U6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgICBmaWx0ZXJzQ2hhbmdlOiBCZWhhdmlvclN1YmplY3Q8QXJyYXk8Q21hdFRyYW5zZmVyRmlsdGVySXRlbT4+O1xuICAgIHNvdXJjZU9wdGlvbnNDaGFuZ2U6IEJlaGF2aW9yU3ViamVjdDxDbWF0U291cmNlT3B0aW9ucyB8IHZvaWQ+O1xuICAgIHNlbGVjdGVkVmFsdWVzQ2hhbmdlOiBCZWhhdmlvclN1YmplY3Q8QXJyYXk8c3RyaW5nPj47XG5cbiAgICBwcml2YXRlIF9kYXRhU291cmNlOiBBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT47XG5cbiAgICBwcml2YXRlIF9maWx0ZXJEYXRhOiBDbWF0VHJhbnNmZXJGaWx0ZXJEYXRhO1xuICAgIHByaXZhdGUgX2tleXdvcmQ6IHN0cmluZztcbiAgICBwcml2YXRlIF9vcmlnaW5hbERhdGFTb3VyY2U6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1Ob2RlPjtcbiAgICBwcml2YXRlIF9maWx0ZXJlZERhdGFTb3VyY2U6IEFycmF5PENtYXRUcmFuc2Zlckl0ZW1Ob2RlPjtcbiAgICBwcml2YXRlIF9jb21wYXJlTWFwOiBNYXA8c3RyaW5nLCAoYTogYW55LCBiOiBhbnkpID0+IGJvb2xlYW4+O1xuICAgIHByaXZhdGUgX2NvbmRpdGlvbk1hcDogTWFwPHN0cmluZywgKGFycjogQXJyYXk8Ym9vbGVhbj4pID0+IGJvb2xlYW4+O1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZUNoYW5nZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QXJyYXk8Q21hdFRyYW5zZmVySXRlbU5vZGU+PihbXSk7XG4gICAgICAgIHRoaXMucmVmcmVzaERhdGFTb3VyY2VDaGFuZ2U9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gICAgICAgIHRoaXMuZmlsdGVyc0NoYW5nZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QXJyYXk8Q21hdFRyYW5zZmVyRmlsdGVySXRlbT4+KFtdKTtcbiAgICAgICAgdGhpcy5zb3VyY2VPcHRpb25zQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDbWF0U291cmNlT3B0aW9ucyB8IHZvaWQ+KHZvaWQgMCk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNDaGFuZ2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFycmF5PHN0cmluZz4+KFtdKTtcblxuICAgICAgICB0aGlzLl9jb21wYXJlTWFwID0gbmV3IE1hcDxzdHJpbmcsIChhOiBhbnksIGI6IGFueSkgPT4gYm9vbGVhbj4oW1xuICAgICAgICAgICAgWycwJywgKGEsIGIpOiBib29sZWFuID0+IGEgPT09IGJdLFxuICAgICAgICAgICAgWycxJywgKGEsIGIpOiBib29sZWFuID0+IGEgIT09IGJdLFxuICAgICAgICAgICAgWycyJywgKGEsIGIpOiBib29sZWFuID0+IGEgPiBiXSxcbiAgICAgICAgICAgIFsnMycsIChhLCBiKTogYm9vbGVhbiA9PiBhIDwgYl0sXG4gICAgICAgICAgICBbJzAsMicsIChhLCBiKTogYm9vbGVhbiA9PiBhID49IGJdLFxuICAgICAgICAgICAgWycwLDInLCAoYSwgYik6IGJvb2xlYW4gPT4gYSA8PSBiXVxuICAgICAgICBdKTtcblxuICAgICAgICB0aGlzLl9jb25kaXRpb25NYXAgPSBuZXcgTWFwPHN0cmluZywgKGFycjogQXJyYXk8Ym9vbGVhbj4pID0+IGJvb2xlYW4+KFtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtZnVuY3Rpb24tcmV0dXJuLXR5cGVcbiAgICAgICAgICAgIFsnb3InLCBhcnIgPT4gYXJyLnJlZHVjZSgobywgaXRlbSkgPT4gKG8ucmVzdWx0ID0gby5yZXN1bHQgfHwgaXRlbSB8fCBvLnByZXYsIG8ucHJldiA9IGl0ZW0sIG8pLCB7XG4gICAgICAgICAgICAgICAgcmVzdWx0OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBwcmV2OiBhcnJbMF1cbiAgICAgICAgICAgIH0pLnJlc3VsdF0sXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LWZ1bmN0aW9uLXJldHVybi10eXBlXG4gICAgICAgICAgICBbJ2FuZCcsIGFyciA9PiBhcnIucmVkdWNlKChvLCBpdGVtKSA9PiAoby5yZXN1bHQgPSBvLnJlc3VsdCAmJiBpdGVtICYmIG8ucHJldiwgby5wcmV2ID0gaXRlbSwgbyksIHtcbiAgICAgICAgICAgICAgICByZXN1bHQ6IHRydWUsXG4gICAgICAgICAgICAgICAgcHJldjogYXJyWzBdXG4gICAgICAgICAgICB9KS5yZXN1bHRdLFxuICAgICAgICBdKTtcbiAgICB9XG5cbiAgICBnZXQgZGF0YVNvdXJjZSgpOiBBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YVNvdXJjZTtcbiAgICB9XG5cbiAgICBzZXQgZGF0YVNvdXJjZShkYXRhOiBBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT4pIHtcbiAgICAgICAgdGhpcy5fZGF0YVNvdXJjZSA9IGRhdGE7XG5cbiAgICAgICAgaWYgKCF0aGlzLl9vcmlnaW5hbERhdGFTb3VyY2UpIHtcbiAgICAgICAgICAgIHRoaXMuX29yaWdpbmFsRGF0YVNvdXJjZSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlQ2hhbmdlLm5leHQoZGF0YSk7XG4gICAgfVxuXG4gICAgc2V0IHNvdXJjZU9wdGlvbnModmFsdWU6IENtYXRTb3VyY2VPcHRpb25zKSB7XG4gICAgICAgIHRoaXMuc291cmNlT3B0aW9uc0NoYW5nZS5uZXh0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBzZXQgc2VsZWN0ZWRWYWx1ZXModmFsdWU6IEFycmF5PHN0cmluZz4pIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlc0NoYW5nZS5uZXh0KHZhbHVlKTtcbiAgICB9XG5cblxuICAgIGZpbHRlckRhdGFTb3VyY2UoeyBmaWx0ZXJEYXRhLCBrZXl3b3JkIH06IHsgZmlsdGVyRGF0YT86IENtYXRUcmFuc2ZlckZpbHRlckRhdGE7IGtleXdvcmQ/OiBzdHJpbmcgfSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9maWx0ZXJEYXRhID0gZmlsdGVyRGF0YSB8fCB0aGlzLl9maWx0ZXJEYXRhO1xuICAgICAgICB0aGlzLl9rZXl3b3JkID0ga2V5d29yZCA9PT0gdm9pZCAoMCkgPyB0aGlzLl9rZXl3b3JkIDoga2V5d29yZDtcblxuICAgICAgICBpZiAoZmlsdGVyRGF0YSAmJiBmaWx0ZXJEYXRhLmZpbHRlcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLl9maWx0ZXJEYXRhU291cmNlQnlUeXBlKHRoaXMuX2tleXdvcmQgPyB0aGlzLl9maWx0ZXJlZERhdGFTb3VyY2UgOiB0aGlzLl9vcmlnaW5hbERhdGFTb3VyY2UsICdGaWx0ZXJzJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSBpZiAoZmlsdGVyRGF0YSAmJiAhZmlsdGVyRGF0YS5maWx0ZXJzLmxlbmd0aCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2tleXdvcmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9maWx0ZXJEYXRhU291cmNlQnlUeXBlKHRoaXMuX29yaWdpbmFsRGF0YVNvdXJjZSwgJ0tleXdvcmQnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldERhdGFTb3VyY2UoZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGtleXdvcmQpIHtcbiAgICAgICAgICAgIHRoaXMuX2ZpbHRlckRhdGFTb3VyY2VCeVR5cGUodGhpcy5fZmlsdGVyRGF0YSAmJiB0aGlzLl9maWx0ZXJEYXRhLmZpbHRlcnMubGVuZ3RoID8gdGhpcy5fZmlsdGVyZWREYXRhU291cmNlIDogdGhpcy5fb3JpZ2luYWxEYXRhU291cmNlLCAnS2V5d29yZCcpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2UgaWYgKCFrZXl3b3JkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fZmlsdGVyRGF0YSAmJiB0aGlzLl9maWx0ZXJEYXRhLmZpbHRlcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZmlsdGVyRGF0YVNvdXJjZUJ5VHlwZSh0aGlzLl9vcmlnaW5hbERhdGFTb3VyY2UsICdGaWx0ZXJzJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMucmVzZXREYXRhU291cmNlKGZhbHNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlc2V0RGF0YVNvdXJjZShjbGVhcjpib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZSA9IHRoaXMuX29yaWdpbmFsRGF0YVNvdXJjZTtcbiAgICAgICAgdGhpcy5fZmlsdGVyZWREYXRhU291cmNlID0gW107XG4gICAgICAgIHRoaXMucmVmcmVzaERhdGFTb3VyY2VDaGFuZ2UubmV4dChjbGVhcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZmlsdGVyRGF0YVNvdXJjZUJ5VHlwZShkYXRhU291cmNlOiBBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT4sIHR5cGU6ICdGaWx0ZXJzJyB8ICdLZXl3b3JkJyk6IHZvaWQge1xuICAgICAgICB0aGlzLl9maWx0ZXJlZERhdGFTb3VyY2UgPSBbXTtcbiAgICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdGaWx0ZXJzJzpcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRGaWx0ZXJlZERhdGFTb3VyY2VCeUZpbHRlcnMoZGF0YVNvdXJjZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdLZXl3b3JkJzpcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRGaWx0ZXJlZERhdGFTb3VyY2VCeUtleXdvcmQoZGF0YVNvdXJjZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kYXRhU291cmNlID0gdGhpcy5fZmlsdGVyZWREYXRhU291cmNlO1xuICAgICAgICB0aGlzLnJlZnJlc2hEYXRhU291cmNlQ2hhbmdlLm5leHQoZmFsc2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldEZpbHRlcmVkRGF0YVNvdXJjZUJ5RmlsdGVycyhkYXRhU291cmNlOiBBcnJheTxDbWF0VHJhbnNmZXJJdGVtTm9kZT4pOiB2b2lkIHtcbiAgICAgICAgZGF0YVNvdXJjZS5tYXAoKGRhdGEpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBhcmVSZXN1bHRBcnI6IGFueSA9IFtdO1xuICAgICAgICAgICAgdGhpcy5fZmlsdGVyRGF0YS5maWx0ZXJzLm1hcCgoZmlsdGVyKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkYXRhLCBmaWx0ZXIuZmllbGQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbXBhcmUgPSB0aGlzLl9jb21wYXJlTWFwLmdldChmaWx0ZXIuY29uZGl0aW9uLnNvcnQoKS50b1N0cmluZygpKT8uKGZpbHRlci52YWx1ZSwgZGF0YVtmaWx0ZXIuZmllbGRdKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5fZmlsdGVyRGF0YS5maWx0ZXJzLmxlbmd0aCA8IDIgJiYgY29tcGFyZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZmlsdGVyZWREYXRhU291cmNlLnB1c2goZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb21wYXJlUmVzdWx0QXJyLnB1c2goY29tcGFyZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgaWYgKGNvbXBhcmVSZXN1bHRBcnIubGVuZ3RoICYmIHRoaXMuX2NvbmRpdGlvbk1hcC5nZXQodGhpcy5fZmlsdGVyRGF0YS5jb25kaXRpb24pPy4oY29tcGFyZVJlc3VsdEFycikpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9maWx0ZXJlZERhdGFTb3VyY2UucHVzaChkYXRhKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGRhdGEuY2hpbGRyZW4gJiYgZGF0YS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc2V0RmlsdGVyZWREYXRhU291cmNlQnlGaWx0ZXJzKGRhdGEuY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zZXRGaWx0ZXJlZERhdGFTb3VyY2VCeUtleXdvcmQoZGF0YVNvdXJjZTogQXJyYXk8Q21hdFRyYW5zZmVySXRlbU5vZGU+KTogdm9pZCB7XG4gICAgICAgIGRhdGFTb3VyY2UubWFwKChkYXRhKSA9PiB7XG4gICAgICAgICAgICBpZiAoZGF0YS5sYWJlbC5pbmNsdWRlcyh0aGlzLl9rZXl3b3JkKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2ZpbHRlcmVkRGF0YVNvdXJjZS5wdXNoKGRhdGEpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChkYXRhLmNoaWxkcmVuICYmIGRhdGEuY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NldEZpbHRlcmVkRGF0YVNvdXJjZUJ5S2V5d29yZChkYXRhLmNoaWxkcmVuKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21hdC1jb21wb25lbnRzLXVwbG9hZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy91cGxvYWQvY21hdC1jb21wb25lbnRzLXVwbG9hZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy91cGxvYWQvZmlsZXMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBGaWxlTW9kZWwge1xyXG4gICAgaWQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZmlsZU5hbWU6IHN0cmluZztcclxuICAgIGZpbGVQYXRoOiBzdHJpbmc7XHJcbiAgICBmaWxlU3RhdHVzPzogJ1VwbG9hZGVkJyB8ICdQcm9jZXNzZWQnO1xyXG4gICAgbGVuZ3RoOiBudW1iZXI7XHJcbiAgICB1cGxvYWRVc2VySWQ/OiBzdHJpbmc7XHJcbiAgICB1cGxvYWRVc2VyTmFtZT86IHN0cmluZztcclxuICAgIHVwbG9hZERhdGU6IERhdGU7XHJcbiAgICBmaWxlVHlwZTogJ2NzdicgfCAnZ2lmJyB8ICd3b3JkJyB8ICdleGNlbCcgfCAnanBnJyB8ICdvdXRsb29rJyB8ICdwZGYnIHwgJ3BuZycgfCAncHB0JyB8ICdmaWxlJyB8ICd0ZXh0JyB8ICd2aWRlbycgfCAnemlwJztcclxuICAgIGZpbGVDYXRlZ29yeTogc3RyaW5nO1xyXG4gICAgZGF0YT86IGFueTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGaWxlQ2F0ZWdvcnlNb2RlbCB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICB2YWx1ZTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEZpbGVMaXN0TW9kZWwge1xyXG4gICAgZGF0YTogRmlsZU1vZGVsW107XHJcbiAgICBkYXRhQ291bnQ6IG51bWJlcjtcclxuICAgIGNhdGVnb3J5OiBGaWxlQ2F0ZWdvcnlNb2RlbFtdO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,100 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject, catchError, map, takeUntil, tap } from 'rxjs';
3
+ import { CmatUtilsService } from 'cmat/services/utils';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common/http";
6
+ import * as i2 from "cmat/services/config";
7
+ export class CmatFilesUtilService {
8
+ constructor(_http, _urlStateConfigService) {
9
+ this._http = _http;
10
+ this._urlStateConfigService = _urlStateConfigService;
11
+ this._unsubscribeAll = new Subject();
12
+ this._urlStateConfigService.config$
13
+ .pipe(takeUntil(this._unsubscribeAll))
14
+ .subscribe((config) => {
15
+ this._config = config;
16
+ });
17
+ }
18
+ ngOnDestroy() {
19
+ this._unsubscribeAll.next(void 0);
20
+ this._unsubscribeAll.complete();
21
+ }
22
+ downloadFile(fileId) {
23
+ return this._http.get(this._config.fileUrl + '/download', {
24
+ headers: CmatUtilsService.getRequestCryptoHeaders(fileId),
25
+ observe: 'response',
26
+ reportProgress: true,
27
+ responseType: 'blob',
28
+ params: {
29
+ id: fileId
30
+ }
31
+ }).pipe(catchError(CmatUtilsService.handleError));
32
+ }
33
+ downloadFileZip(fileIds) {
34
+ return this._http.post(this._config.fileUrl + '/download', fileIds, {
35
+ headers: CmatUtilsService.getRequestCryptoHeaders('fileZip'),
36
+ observe: 'response',
37
+ reportProgress: true,
38
+ responseType: 'blob',
39
+ }).pipe(catchError(CmatUtilsService.handleError));
40
+ }
41
+ uploadFile(file) {
42
+ return this._http.post(this._config.fileUrl + '/upload', file, {
43
+ headers: CmatUtilsService.getRequestCryptoHeaders('files'),
44
+ observe: 'events',
45
+ reportProgress: true,
46
+ responseType: 'json'
47
+ }).pipe(tap((res) => res), catchError(CmatUtilsService.handleError));
48
+ }
49
+ deleteFile(fileId) {
50
+ return this._http.delete(this._config.fileUrl, {
51
+ headers: CmatUtilsService.getRequestCryptoHeaders(fileId),
52
+ params: {
53
+ id: fileId
54
+ }
55
+ }).pipe(catchError(err => CmatUtilsService.handleError(err)));
56
+ }
57
+ getFileList(ids, fileName, fileCategory, searchDate, pageIndex = -1, pageSize = -1) {
58
+ const query = {
59
+ ids,
60
+ fileName,
61
+ fileCategory,
62
+ searchDate
63
+ };
64
+ if (this._config.enableDataProtect) {
65
+ return this._http.post(this._config.fileUrl, CmatUtilsService.getEncryptData(JSON.stringify(query)), {
66
+ headers: CmatUtilsService.getRequestCryptoHeaders('fileList'),
67
+ responseType: 'text',
68
+ params: {
69
+ pageIndex,
70
+ pageSize
71
+ }
72
+ })
73
+ .pipe(
74
+ // retry(3), // retry a failed request up to 3 times
75
+ map((res) => JSON.parse(CmatUtilsService.getDecryptData(res))), catchError(err => CmatUtilsService.handleError(err)));
76
+ }
77
+ else {
78
+ return this._http.post(this._config.fileUrl, query, {
79
+ headers: CmatUtilsService.getRequestCryptoHeaders('fileList'),
80
+ responseType: 'json',
81
+ params: {
82
+ pageIndex,
83
+ pageSize
84
+ }
85
+ })
86
+ .pipe(
87
+ // retry(3), // retry a failed request up to 3 times
88
+ tap((res) => res), catchError(err => CmatUtilsService.handleError(err)));
89
+ }
90
+ }
91
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatFilesUtilService, deps: [{ token: i1.HttpClient }, { token: i2.CmatUrlStateConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
92
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatFilesUtilService, providedIn: 'root' }); }
93
+ }
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatFilesUtilService, decorators: [{
95
+ type: Injectable,
96
+ args: [{
97
+ providedIn: 'root'
98
+ }]
99
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.CmatUrlStateConfigService }] });
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMudXRpbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL3VwbG9hZC9maWxlcy51dGlsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQWMsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU1RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQU12RCxNQUFNLE9BQU8sb0JBQW9CO0lBSTdCLFlBQW9CLEtBQWlCLEVBQVUsc0JBQWlEO1FBQTVFLFVBQUssR0FBTCxLQUFLLENBQVk7UUFBVSwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQTJCO1FBRnhGLG9CQUFlLEdBQWtCLElBQUksT0FBTyxFQUFRLENBQUM7UUFHekQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU87YUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDckMsU0FBUyxDQUFDLENBQUMsTUFBdUIsRUFBRSxFQUFFO1lBQ25DLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELFlBQVksQ0FBQyxNQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsV0FBVyxFQUFFO1lBQ3RELE9BQU8s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QUUsQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDdkQsQ0FBQztTQUNUO2FBQU07WUFDSCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFnQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUU7Z0JBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyx1QkFBdUIsQ0FBQyxVQUFVLENBQUM7Z0JBQzdELFlBQVksRUFBRSxNQUFNO2dCQUNwQixNQUFNLEVBQUU7b0JBQ0osU0FBUztvQkFDVCxRQUFRO2lCQUNYO2FBQ0osQ0FBQztpQkFDRyxJQUFJO1lBQ0Qsb0RBQW9EO1lBQ3BELEdBQUcsQ0FBQyxDQUFDLEdBQWtCLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUNoQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDdkQsQ0FBQztTQUNUO0lBQ0wsQ0FBQzs4R0FyR1Esb0JBQW9CO2tIQUFwQixvQkFBb0IsY0FGakIsTUFBTTs7MkZBRVQsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBjYXRjaEVycm9yLCBtYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElVcmxTdGF0ZUNvbmZpZywgQ21hdFVybFN0YXRlQ29uZmlnU2VydmljZSB9IGZyb20gJ2NtYXQvc2VydmljZXMvY29uZmlnJztcclxuaW1wb3J0IHsgQ21hdFV0aWxzU2VydmljZSB9IGZyb20gJ2NtYXQvc2VydmljZXMvdXRpbHMnO1xyXG5pbXBvcnQgeyBGaWxlTGlzdE1vZGVsIH0gZnJvbSAnLi9maWxlcy50eXBlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdEZpbGVzVXRpbFNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gICAgcHJpdmF0ZSBfY29uZmlnOiBJVXJsU3RhdGVDb25maWc7XHJcbiAgICBwcml2YXRlIF91bnN1YnNjcmliZUFsbDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBfdXJsU3RhdGVDb25maWdTZXJ2aWNlOiBDbWF0VXJsU3RhdGVDb25maWdTZXJ2aWNlKSB7XHJcbiAgICAgICAgdGhpcy5fdXJsU3RhdGVDb25maWdTZXJ2aWNlLmNvbmZpZyRcclxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoY29uZmlnOiBJVXJsU3RhdGVDb25maWcpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2NvbmZpZyA9IGNvbmZpZztcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwubmV4dCh2b2lkIDApO1xyXG4gICAgICAgIHRoaXMuX3Vuc3Vic2NyaWJlQWxsLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZG93bmxvYWRGaWxlKGZpbGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cC5nZXQodGhpcy5fY29uZmlnLmZpbGVVcmwgKyAnL2Rvd25sb2FkJywge1xyXG4gICAgICAgICAgICBoZWFkZXJzOiBDbWF0VXRpbHNTZXJ2aWNlLmdldFJlcXVlc3RDcnlwdG9IZWFkZXJzKGZpbGVJZCksXHJcbiAgICAgICAgICAgIG9ic2VydmU6ICdyZXNwb25zZScsXHJcbiAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiB0cnVlLFxyXG4gICAgICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcclxuICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICBpZDogZmlsZUlkXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCkucGlwZTxhbnk+KFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKENtYXRVdGlsc1NlcnZpY2UuaGFuZGxlRXJyb3IpKTtcclxuICAgIH1cclxuXHJcbiAgICBkb3dubG9hZEZpbGVaaXAoZmlsZUlkcz86IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cC5wb3N0KHRoaXMuX2NvbmZpZy5maWxlVXJsICsgJy9kb3dubG9hZCcsIGZpbGVJZHMsIHtcclxuICAgICAgICAgICAgaGVhZGVyczogQ21hdFV0aWxzU2VydmljZS5nZXRSZXF1ZXN0Q3J5cHRvSGVhZGVycygnZmlsZVppcCcpLFxyXG4gICAgICAgICAgICBvYnNlcnZlOiAncmVzcG9uc2UnLFxyXG4gICAgICAgICAgICByZXBvcnRQcm9ncmVzczogdHJ1ZSxcclxuICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnYmxvYicsXHJcbiAgICAgICAgfSkucGlwZTxhbnk+KFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKENtYXRVdGlsc1NlcnZpY2UuaGFuZGxlRXJyb3IpKTtcclxuICAgIH1cclxuXHJcbiAgICB1cGxvYWRGaWxlKGZpbGU6IEZvcm1EYXRhKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cC5wb3N0KHRoaXMuX2NvbmZpZy5maWxlVXJsICsgJy91cGxvYWQnLCBmaWxlLCB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IENtYXRVdGlsc1NlcnZpY2UuZ2V0UmVxdWVzdENyeXB0b0hlYWRlcnMoJ2ZpbGVzJyksXHJcbiAgICAgICAgICAgIG9ic2VydmU6ICdldmVudHMnLFxyXG4gICAgICAgICAgICByZXBvcnRQcm9ncmVzczogdHJ1ZSxcclxuICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbidcclxuICAgICAgICB9KS5waXBlKFxyXG4gICAgICAgICAgICB0YXAoKHJlczogYW55KSA9PiByZXMpLFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKENtYXRVdGlsc1NlcnZpY2UuaGFuZGxlRXJyb3IpKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVGaWxlKGZpbGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cC5kZWxldGUodGhpcy5fY29uZmlnLmZpbGVVcmwsIHtcclxuICAgICAgICAgICAgaGVhZGVyczogQ21hdFV0aWxzU2VydmljZS5nZXRSZXF1ZXN0Q3J5cHRvSGVhZGVycyhmaWxlSWQpLFxyXG4gICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgIGlkOiBmaWxlSWRcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pLnBpcGUoXHJcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoZXJyID0+IENtYXRVdGlsc1NlcnZpY2UuaGFuZGxlRXJyb3IoZXJyKSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEZpbGVMaXN0KGlkcz86IFtdLCBmaWxlTmFtZT86IHN0cmluZywgZmlsZUNhdGVnb3J5Pzogc3RyaW5nLCBzZWFyY2hEYXRlPzogRGF0ZSwgcGFnZUluZGV4OiBudW1iZXIgPSAtMSwgcGFnZVNpemU6IG51bWJlciA9IC0xKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgICAgICBjb25zdCBxdWVyeSA9IHtcclxuICAgICAgICAgICAgaWRzLFxyXG4gICAgICAgICAgICBmaWxlTmFtZSxcclxuICAgICAgICAgICAgZmlsZUNhdGVnb3J5LFxyXG4gICAgICAgICAgICBzZWFyY2hEYXRlXHJcbiAgICAgICAgfTtcclxuICAgICAgICBpZiAodGhpcy5fY29uZmlnLmVuYWJsZURhdGFQcm90ZWN0KSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9odHRwLnBvc3QodGhpcy5fY29uZmlnLmZpbGVVcmwsXHJcbiAgICAgICAgICAgICAgICBDbWF0VXRpbHNTZXJ2aWNlLmdldEVuY3J5cHREYXRhKEpTT04uc3RyaW5naWZ5KHF1ZXJ5KSksXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczogQ21hdFV0aWxzU2VydmljZS5nZXRSZXF1ZXN0Q3J5cHRvSGVhZGVycygnZmlsZUxpc3QnKSxcclxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZVR5cGU6ICd0ZXh0JyxcclxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFnZUluZGV4LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWdlU2l6ZVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gcmV0cnkoMyksIC8vIHJldHJ5IGEgZmFpbGVkIHJlcXVlc3QgdXAgdG8gMyB0aW1lc1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcCgocmVzOiBzdHJpbmcpID0+IEpTT04ucGFyc2UoQ21hdFV0aWxzU2VydmljZS5nZXREZWNyeXB0RGF0YShyZXMpKSksXHJcbiAgICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4gQ21hdFV0aWxzU2VydmljZS5oYW5kbGVFcnJvcihlcnIpKVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5faHR0cC5wb3N0PEZpbGVMaXN0TW9kZWw+KHRoaXMuX2NvbmZpZy5maWxlVXJsLCBxdWVyeSwge1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczogQ21hdFV0aWxzU2VydmljZS5nZXRSZXF1ZXN0Q3J5cHRvSGVhZGVycygnZmlsZUxpc3QnKSxcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxyXG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFnZUluZGV4LFxyXG4gICAgICAgICAgICAgICAgICAgIHBhZ2VTaXplXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgICAgICAvLyByZXRyeSgzKSwgLy8gcmV0cnkgYSBmYWlsZWQgcmVxdWVzdCB1cCB0byAzIHRpbWVzXHJcbiAgICAgICAgICAgICAgICAgICAgdGFwKChyZXM6IEZpbGVMaXN0TW9kZWwpID0+IHJlcyksXHJcbiAgICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4gQ21hdFV0aWxzU2VydmljZS5oYW5kbGVFcnJvcihlcnIpKVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,5 @@
1
+ export * from './upload-queue/upload-queue.component';
2
+ export * from './upload.component';
3
+ export * from './files.util.service';
4
+ export * from './files.type';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy91cGxvYWQvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdXBsb2FkLXF1ZXVlL3VwbG9hZC1xdWV1ZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3VwbG9hZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ZpbGVzLnV0aWwuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZmlsZXMudHlwZSc7XHJcbiJdfQ==
@@ -0,0 +1,154 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, Output, ViewChildren, ViewEncapsulation, forwardRef } from '@angular/core';
2
+ import { MatButtonModule } from '@angular/material/button';
3
+ import { MatCardModule } from '@angular/material/card';
4
+ import { MatIconModule } from '@angular/material/icon';
5
+ import { MatListModule } from '@angular/material/list';
6
+ import { Subject, takeUntil } from 'rxjs';
7
+ import { CmatUploadComponent } from '../upload.component';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "cmat/services/media-watcher";
10
+ import * as i2 from "@angular/material/card";
11
+ import * as i3 from "@angular/material/list";
12
+ import * as i4 from "@angular/material/button";
13
+ import * as i5 from "@angular/material/icon";
14
+ export class CmatUploadQueueComponent {
15
+ constructor(_changeDetectorRef, _cmatMediaWatcherService) {
16
+ this._changeDetectorRef = _changeDetectorRef;
17
+ this._cmatMediaWatcherService = _cmatMediaWatcherService;
18
+ this.fileAlias = 'fileData';
19
+ this.filePath = '';
20
+ this.required = false;
21
+ this.autoUpload = true;
22
+ this.multiple = true;
23
+ this.accept = '';
24
+ this.title = '附件';
25
+ this.editMode = false;
26
+ this.filesData = [];
27
+ this.outputRemoveIdEvent = new EventEmitter();
28
+ this.outputUploadIdEvent = new EventEmitter();
29
+ this.outputFilesDataEvent = new EventEmitter();
30
+ this.id = 'cmatupload' + Math.floor(Math.random() * 1000000);
31
+ this._unsubscribeAll = new Subject();
32
+ this._cmatMediaWatcherService.onMediaChange$
33
+ .pipe(takeUntil(this._unsubscribeAll))
34
+ .subscribe(({ matchingAliases }) => {
35
+ this.isHandSet = !matchingAliases.includes('lg');
36
+ this._changeDetectorRef.markForCheck();
37
+ });
38
+ }
39
+ onDrop(event) {
40
+ const files = event.dataTransfer.files;
41
+ for (let i = 0; i < files.length; i++) {
42
+ if (this.accept?.indexOf(files[i].type) > -1)
43
+ this.add(files[i]);
44
+ }
45
+ event.preventDefault();
46
+ event.stopPropagation();
47
+ }
48
+ onDropOver(event) {
49
+ event.preventDefault();
50
+ }
51
+ ngAfterViewInit() {
52
+ const fileUpload = document.getElementById(this.id);
53
+ fileUpload.onchange = () => {
54
+ for (let index = 0; index < (fileUpload.files?.length ?? 0); index++) {
55
+ const file = fileUpload.files[index];
56
+ this.add(file);
57
+ }
58
+ };
59
+ }
60
+ ngOnDestroy() {
61
+ this._unsubscribeAll.next(void 0);
62
+ this._unsubscribeAll.complete();
63
+ }
64
+ add(file) {
65
+ if ((this.accept === '' || this.accept === undefined) || (this.accept !== '' && this.accept.indexOf(file.type) > -1)) {
66
+ if (!Array.isArray(this.filesData)) {
67
+ this.filesData = [];
68
+ }
69
+ if (!(!this.multiple && this.filesData.length > 0)) {
70
+ this.filesData.push(file);
71
+ }
72
+ else if (this.fileUploads.first.id === null) {
73
+ this.filesData.push(file);
74
+ this.fileUploads.first.remove();
75
+ }
76
+ }
77
+ this._changeDetectorRef.markForCheck();
78
+ }
79
+ upload(event) {
80
+ this.outputUploadIdEvent.emit(event.id);
81
+ this.outputFilesDataEvent.emit(this.filesData);
82
+ }
83
+ remove(event) {
84
+ const index = this.filesData.indexOf(event.file);
85
+ if (index > -1) {
86
+ this.filesData.splice(index, 1);
87
+ if (event.file.id) {
88
+ this.outputRemoveIdEvent.emit(event.file.id);
89
+ }
90
+ this.outputFilesDataEvent.emit(this.filesData);
91
+ }
92
+ this._changeDetectorRef.markForCheck();
93
+ }
94
+ uploadAll() {
95
+ this.fileUploads.forEach((fileUpload) => {
96
+ if (fileUpload.id === null) {
97
+ fileUpload.upload();
98
+ }
99
+ });
100
+ this._changeDetectorRef.markForCheck();
101
+ }
102
+ removeAll() {
103
+ this.fileUploads.forEach((fileUpload) => { fileUpload.remove(); });
104
+ this._changeDetectorRef.markForCheck();
105
+ }
106
+ choose() {
107
+ document.getElementById(this.id).click();
108
+ }
109
+ getData() {
110
+ return Array.isArray(this.filesData) ? this.filesData : [];
111
+ }
112
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatUploadQueueComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.CmatMediaWatcherService }], target: i0.ɵɵFactoryTarget.Component }); }
113
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.7", type: CmatUploadQueueComponent, isStandalone: true, selector: "cmat-upload-queue", inputs: { fileAlias: "fileAlias", filePath: "filePath", fileCategory: "fileCategory", required: "required", autoUpload: "autoUpload", multiple: "multiple", accept: "accept", title: "title", editMode: "editMode", filesData: "filesData" }, outputs: { outputRemoveIdEvent: "outputRemoveIdEvent", outputUploadIdEvent: "outputUploadIdEvent", outputFilesDataEvent: "outputFilesDataEvent" }, host: { listeners: { "drop": "onDrop($event)", "dragover": "onDropOver($event)" } }, viewQueries: [{ propertyName: "fileUploads", predicate: i0.forwardRef(() => CmatUploadComponent), descendants: true }], exportAs: ["cmatUploadQueue"], ngImport: i0, template: "<mat-card>\r\n <mat-card-header>\r\n <mat-card-title>\r\n <legend class=\"text-lg\">\r\n {{title}}\r\n @if(required){\r\n <span>*</span>\r\n }\r\n </legend>\r\n </mat-card-title>\r\n </mat-card-header>\r\n <input type=\"file\" [id]=\"id\" [multiple]=\"multiple\" [accept]=\"accept\" class=\"hidden\" />\r\n\r\n @if(editMode){\r\n <mat-card-actions class=\"space-x-1 print:hidden\">\r\n @if(!isHandSet){\r\n <button mat-raised-button color=\"primary\" (click)=\"choose()\">\r\n @if(autoUpload){\r\n <mat-icon [svgIcon]=\"'mat_outline:file_upload'\"></mat-icon>\r\n }@else {\r\n <mat-icon [svgIcon]=\"'mat_outline:add_box'\"></mat-icon>\r\n }\r\n <span class=\"ml-2\">\u9009\u62E9</span>\r\n </button>\r\n @if(getData().length > 0){\r\n @if(!autoUpload){\r\n <button mat-raised-button color=\"accent\" (click)=\"uploadAll()\"><mat-icon\r\n [svgIcon]=\"'mat_outline:file_upload'\"></mat-icon><span class=\"ml-2\">\u4E0A\u4F20\u5168\u90E8</span></button>\r\n }\r\n\r\n <button mat-raised-button color=\"warn\" (click)=\"removeAll()\"><mat-icon\r\n [svgIcon]=\"'heroicons_solid:trash'\"></mat-icon><span class=\"ml-2\">\u5220\u9664\u5168\u90E8</span></button>\r\n }\r\n }@else {\r\n <button mat-icon-button color=\"primary\" (click)=\"choose()\">\r\n @if(autoUpload){\r\n <mat-icon [svgIcon]=\"'mat_outline:file_upload'\"></mat-icon>\r\n }@else {\r\n <mat-icon [svgIcon]=\"'mat_outline:add_box'\"></mat-icon>\r\n }\r\n </button>\r\n\r\n @if(getData().length > 0){\r\n @if(!autoUpload){\r\n <button mat-icon-button color=\"accent\" (click)=\"uploadAll()\"><mat-icon\r\n [svgIcon]=\"'mat_outline:file_upload'\"></mat-icon></button>\r\n }\r\n\r\n <button mat-icon-button color=\"warn\" (click)=\"removeAll()\"><mat-icon\r\n [svgIcon]=\"'heroicons_solid:trash'\"></mat-icon></button>\r\n }\r\n }\r\n </mat-card-actions>\r\n }\r\n\r\n <mat-card-content>\r\n <mat-list class=\"border-t\">\r\n @for (file of getData(); track $index) {\r\n <mat-list-item class=\"cmat-upload-file-item h-full\">\r\n <cmat-upload [fileAlias]=\"fileAlias\" [filePath]=\"filePath\" [fileCategory]=\"fileCategory\" [autoUpload]=\"autoUpload\"\r\n [editMode]=\"editMode\" [file]=\"file\" [id]=\"file.id||null\" class=\"my-2\"\r\n (removeEvent)=\"remove($event)\" (uploadEvent)=\"upload($event)\"></cmat-upload>\r\n </mat-list-item>\r\n }\r\n </mat-list>\r\n </mat-card-content>\r\n</mat-card>", dependencies: [{ kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i3.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: CmatUploadComponent, selector: "cmat-upload", inputs: ["fileAlias", "filePath", "fileCategory", "editMode", "autoUpload", "id", "file"], outputs: ["removeEvent", "uploadEvent"], exportAs: ["cmatUpload"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
114
+ }
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatUploadQueueComponent, decorators: [{
116
+ type: Component,
117
+ args: [{ selector: 'cmat-upload-queue', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatUploadQueue', standalone: true, imports: [MatCardModule, MatListModule, MatButtonModule, MatIconModule, CmatUploadComponent], template: "<mat-card>\r\n <mat-card-header>\r\n <mat-card-title>\r\n <legend class=\"text-lg\">\r\n {{title}}\r\n @if(required){\r\n <span>*</span>\r\n }\r\n </legend>\r\n </mat-card-title>\r\n </mat-card-header>\r\n <input type=\"file\" [id]=\"id\" [multiple]=\"multiple\" [accept]=\"accept\" class=\"hidden\" />\r\n\r\n @if(editMode){\r\n <mat-card-actions class=\"space-x-1 print:hidden\">\r\n @if(!isHandSet){\r\n <button mat-raised-button color=\"primary\" (click)=\"choose()\">\r\n @if(autoUpload){\r\n <mat-icon [svgIcon]=\"'mat_outline:file_upload'\"></mat-icon>\r\n }@else {\r\n <mat-icon [svgIcon]=\"'mat_outline:add_box'\"></mat-icon>\r\n }\r\n <span class=\"ml-2\">\u9009\u62E9</span>\r\n </button>\r\n @if(getData().length > 0){\r\n @if(!autoUpload){\r\n <button mat-raised-button color=\"accent\" (click)=\"uploadAll()\"><mat-icon\r\n [svgIcon]=\"'mat_outline:file_upload'\"></mat-icon><span class=\"ml-2\">\u4E0A\u4F20\u5168\u90E8</span></button>\r\n }\r\n\r\n <button mat-raised-button color=\"warn\" (click)=\"removeAll()\"><mat-icon\r\n [svgIcon]=\"'heroicons_solid:trash'\"></mat-icon><span class=\"ml-2\">\u5220\u9664\u5168\u90E8</span></button>\r\n }\r\n }@else {\r\n <button mat-icon-button color=\"primary\" (click)=\"choose()\">\r\n @if(autoUpload){\r\n <mat-icon [svgIcon]=\"'mat_outline:file_upload'\"></mat-icon>\r\n }@else {\r\n <mat-icon [svgIcon]=\"'mat_outline:add_box'\"></mat-icon>\r\n }\r\n </button>\r\n\r\n @if(getData().length > 0){\r\n @if(!autoUpload){\r\n <button mat-icon-button color=\"accent\" (click)=\"uploadAll()\"><mat-icon\r\n [svgIcon]=\"'mat_outline:file_upload'\"></mat-icon></button>\r\n }\r\n\r\n <button mat-icon-button color=\"warn\" (click)=\"removeAll()\"><mat-icon\r\n [svgIcon]=\"'heroicons_solid:trash'\"></mat-icon></button>\r\n }\r\n }\r\n </mat-card-actions>\r\n }\r\n\r\n <mat-card-content>\r\n <mat-list class=\"border-t\">\r\n @for (file of getData(); track $index) {\r\n <mat-list-item class=\"cmat-upload-file-item h-full\">\r\n <cmat-upload [fileAlias]=\"fileAlias\" [filePath]=\"filePath\" [fileCategory]=\"fileCategory\" [autoUpload]=\"autoUpload\"\r\n [editMode]=\"editMode\" [file]=\"file\" [id]=\"file.id||null\" class=\"my-2\"\r\n (removeEvent)=\"remove($event)\" (uploadEvent)=\"upload($event)\"></cmat-upload>\r\n </mat-list-item>\r\n }\r\n </mat-list>\r\n </mat-card-content>\r\n</mat-card>" }]
118
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.CmatMediaWatcherService }], propDecorators: { fileUploads: [{
119
+ type: ViewChildren,
120
+ args: [forwardRef(() => CmatUploadComponent)]
121
+ }], fileAlias: [{
122
+ type: Input
123
+ }], filePath: [{
124
+ type: Input
125
+ }], fileCategory: [{
126
+ type: Input
127
+ }], required: [{
128
+ type: Input
129
+ }], autoUpload: [{
130
+ type: Input
131
+ }], multiple: [{
132
+ type: Input
133
+ }], accept: [{
134
+ type: Input
135
+ }], title: [{
136
+ type: Input
137
+ }], editMode: [{
138
+ type: Input
139
+ }], filesData: [{
140
+ type: Input
141
+ }], outputRemoveIdEvent: [{
142
+ type: Output
143
+ }], outputUploadIdEvent: [{
144
+ type: Output
145
+ }], outputFilesDataEvent: [{
146
+ type: Output
147
+ }], onDrop: [{
148
+ type: HostListener,
149
+ args: ['drop', ['$event']]
150
+ }], onDropOver: [{
151
+ type: HostListener,
152
+ args: ['dragover', ['$event']]
153
+ }] } });
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXF1ZXVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy91cGxvYWQvdXBsb2FkLXF1ZXVlL3VwbG9hZC1xdWV1ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvdXBsb2FkL3VwbG9hZC1xdWV1ZS91cGxvYWQtcXVldWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLFlBQVksRUFDWixpQkFBaUIsRUFDakIsVUFBVSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUxQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7OztBQVcxRCxNQUFNLE9BQU8sd0JBQXdCO0lBK0JqQyxZQUFvQixrQkFBcUMsRUFBVSx3QkFBaUQ7UUFBaEcsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUFVLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUE1QnBILGNBQVMsR0FBVyxVQUFVLENBQUM7UUFHL0IsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUl0QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzFCLGVBQVUsR0FBWSxJQUFJ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aUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLGlCQUFpQixjQUNmLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsQ0FBQzs0SEFHdkMsV0FBVztzQkFBL0QsWUFBWTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7Z0JBRW5ELFNBQVM7c0JBRFIsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBR04sWUFBWTtzQkFEWCxLQUFLO2dCQUdOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRU4sU0FBUztzQkFEUixLQUFLO2dCQUdJLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNO2dCQWtCUCxNQUFNO3NCQURMLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWFoQyxVQUFVO3NCQURULFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIEFmdGVyVmlld0luaXQsXHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgSG9zdExpc3RlbmVyLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBPdXRwdXQsXHJcbiAgICBRdWVyeUxpc3QsXHJcbiAgICBWaWV3Q2hpbGRyZW4sXHJcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICAgIGZvcndhcmRSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0Q2FyZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NhcmQnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENtYXRNZWRpYVdhdGNoZXJTZXJ2aWNlIH0gZnJvbSAnY21hdC9zZXJ2aWNlcy9tZWRpYS13YXRjaGVyJztcclxuaW1wb3J0IHsgQ21hdFVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4uL3VwbG9hZC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NtYXQtdXBsb2FkLXF1ZXVlJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQtcXVldWUuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZXhwb3J0QXM6ICdjbWF0VXBsb2FkUXVldWUnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtNYXRDYXJkTW9kdWxlLCBNYXRMaXN0TW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIE1hdEljb25Nb2R1bGUsIENtYXRVcGxvYWRDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VXBsb2FkUXVldWVDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xyXG4gICAgQFZpZXdDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IENtYXRVcGxvYWRDb21wb25lbnQpKSBmaWxlVXBsb2FkczogUXVlcnlMaXN0PENtYXRVcGxvYWRDb21wb25lbnQ+O1xyXG4gICAgQElucHV0KClcclxuICAgIGZpbGVBbGlhczogc3RyaW5nID0gJ2ZpbGVEYXRhJztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZmlsZVBhdGg6IHN0cmluZyA9ICcnO1xyXG4gICAgQElucHV0KClcclxuICAgIGZpbGVDYXRlZ29yeTogc3RyaW5nO1xyXG4gICAgQElucHV0KClcclxuICAgIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIGF1dG9VcGxvYWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIEBJbnB1dCgpIG11bHRpcGxlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIGFjY2VwdDogc3RyaW5nID0gJyc7XHJcbiAgICBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJ+mZhOS7tic7XHJcbiAgICBASW5wdXQoKSBlZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQElucHV0KClcclxuICAgIGZpbGVzRGF0YTogQXJyYXk8YW55PiA9IFtdO1xyXG5cclxuICAgIEBPdXRwdXQoKSBvdXRwdXRSZW1vdmVJZEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgICBAT3V0cHV0KCkgb3V0cHV0VXBsb2FkSWRFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gICAgQE91dHB1dCgpIG91dHB1dEZpbGVzRGF0YUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gICAgcHVibGljIGlkID0gJ2NtYXR1cGxvYWQnICsgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMDAwMCk7XHJcblxyXG4gICAgaXNIYW5kU2V0OiBib29sZWFuO1xyXG5cclxuICAgIHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgX2NtYXRNZWRpYVdhdGNoZXJTZXJ2aWNlOiBDbWF0TWVkaWFXYXRjaGVyU2VydmljZSkge1xyXG4gICAgICAgIHRoaXMuX2NtYXRNZWRpYVdhdGNoZXJTZXJ2aWNlLm9uTWVkaWFDaGFuZ2UkXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl91bnN1YnNjcmliZUFsbCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHsgbWF0Y2hpbmdBbGlhc2VzIH0pID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaXNIYW5kU2V0ID0gIW1hdGNoaW5nQWxpYXNlcy5pbmNsdWRlcygnbGcnKTtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXHJcbiAgICBvbkRyb3AoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGZpbGVzID0gZXZlbnQuZGF0YVRyYW5zZmVyLmZpbGVzO1xyXG5cclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZpbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmFjY2VwdD8uaW5kZXhPZihmaWxlc1tpXS50eXBlKSA+IC0xKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5hZGQoZmlsZXNbaV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcclxuICAgIG9uRHJvcE92ZXIoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGZpbGVVcGxvYWQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLmlkKSBhcyBIVE1MSW5wdXRFbGVtZW50O1xyXG5cclxuICAgICAgICBmaWxlVXBsb2FkLm9uY2hhbmdlID0gKCk6IHZvaWQgPT4ge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgKGZpbGVVcGxvYWQuZmlsZXM/Lmxlbmd0aCA/PyAwKTsgaW5kZXgrKykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZmlsZSA9IGZpbGVVcGxvYWQuZmlsZXMhW2luZGV4XTtcclxuICAgICAgICAgICAgICAgIHRoaXMuYWRkKGZpbGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBhZGQoZmlsZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCh0aGlzLmFjY2VwdCA9PT0gJycgfHwgdGhpcy5hY2NlcHQgPT09IHVuZGVmaW5lZCkgfHwgKHRoaXMuYWNjZXB0ICE9PSAnJyAmJiB0aGlzLmFjY2VwdC5pbmRleE9mKGZpbGUudHlwZSkgPiAtMSkpIHtcclxuICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRoaXMuZmlsZXNEYXRhKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5maWxlc0RhdGEgPSBbXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgaWYgKCEoIXRoaXMubXVsdGlwbGUgJiYgdGhpcy5maWxlc0RhdGEubGVuZ3RoID4gMCkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlsZXNEYXRhLnB1c2goZmlsZSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5maWxlVXBsb2Fkcy5maXJzdC5pZCA9PT0gbnVsbCkgeyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlsZXNEYXRhLnB1c2goZmlsZSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmZpbGVVcGxvYWRzLmZpcnN0LnJlbW92ZSgpO1xyXG4gICAgICAgICAgICB9ICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxuXHJcbiAgICB1cGxvYWQoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub3V0cHV0VXBsb2FkSWRFdmVudC5lbWl0KGV2ZW50LmlkKTtcclxuXHJcbiAgICAgICAgdGhpcy5vdXRwdXRGaWxlc0RhdGFFdmVudC5lbWl0KHRoaXMuZmlsZXNEYXRhKTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmUoZXZlbnQ6IENtYXRVcGxvYWRDb21wb25lbnQpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZmlsZXNEYXRhLmluZGV4T2YoZXZlbnQuZmlsZSk7XHJcbiAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcclxuICAgICAgICAgICAgdGhpcy5maWxlc0RhdGEuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICAgICAgaWYoZXZlbnQuZmlsZS5pZCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm91dHB1dFJlbW92ZUlkRXZlbnQuZW1pdChldmVudC5maWxlLmlkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgdGhpcy5vdXRwdXRGaWxlc0RhdGFFdmVudC5lbWl0KHRoaXMuZmlsZXNEYXRhKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG5cclxuICAgIHVwbG9hZEFsbCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZpbGVVcGxvYWRzLmZvckVhY2goKGZpbGVVcGxvYWQpID0+IHtcclxuICAgICAgICAgICAgaWYgKGZpbGVVcGxvYWQuaWQgPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIGZpbGVVcGxvYWQudXBsb2FkKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlQWxsKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZmlsZVVwbG9hZHMuZm9yRWFjaCgoZmlsZVVwbG9hZCkgPT4geyBmaWxlVXBsb2FkLnJlbW92ZSgpIH0pO1xyXG5cclxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxuXHJcbiAgICBjaG9vc2UoKTogdm9pZCB7XHJcbiAgICAgICAgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpIGFzIEhUTUxJbnB1dEVsZW1lbnQpLmNsaWNrKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0RGF0YSgpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMuZmlsZXNEYXRhKSA/IHRoaXMuZmlsZXNEYXRhIDogW107XHJcbiAgICB9XHJcbn1cclxuIiwiPG1hdC1jYXJkPlxyXG4gICAgPG1hdC1jYXJkLWhlYWRlcj5cclxuICAgICAgICA8bWF0LWNhcmQtdGl0bGU+XHJcbiAgICAgICAgICAgIDxsZWdlbmQgY2xhc3M9XCJ0ZXh0LWxnXCI+XHJcbiAgICAgICAgICAgICAgICB7e3RpdGxlfX1cclxuICAgICAgICAgICAgICAgIEBpZihyZXF1aXJlZCl7XHJcbiAgICAgICAgICAgICAgICA8c3Bhbj4qPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8L2xlZ2VuZD5cclxuICAgICAgICA8L21hdC1jYXJkLXRpdGxlPlxyXG4gICAgPC9tYXQtY2FyZC1oZWFkZXI+XHJcbiAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBbaWRdPVwiaWRcIiBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIiBbYWNjZXB0XT1cImFjY2VwdFwiIGNsYXNzPVwiaGlkZGVuXCIgLz5cclxuXHJcbiAgICBAaWYoZWRpdE1vZGUpe1xyXG4gICAgPG1hdC1jYXJkLWFjdGlvbnMgY2xhc3M9XCJzcGFjZS14LTEgcHJpbnQ6aGlkZGVuXCI+XHJcbiAgICAgICAgQGlmKCFpc0hhbmRTZXQpe1xyXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImNob29zZSgpXCI+XHJcbiAgICAgICAgICAgIEBpZihhdXRvVXBsb2FkKXtcclxuICAgICAgICAgICAgPG1hdC1pY29uIFtzdmdJY29uXT1cIidtYXRfb3V0bGluZTpmaWxlX3VwbG9hZCdcIj48L21hdC1pY29uPlxyXG4gICAgICAgICAgICB9QGVsc2Uge1xyXG4gICAgICAgICAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiJ21hdF9vdXRsaW5lOmFkZF9ib3gnXCI+PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTJcIj7pgInmi6k8L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgQGlmKGdldERhdGEoKS5sZW5ndGggPiAwKXtcclxuICAgICAgICBAaWYoIWF1dG9VcGxvYWQpe1xyXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiAoY2xpY2spPVwidXBsb2FkQWxsKClcIj48bWF0LWljb25cclxuICAgICAgICAgICAgICAgIFtzdmdJY29uXT1cIidtYXRfb3V0bGluZTpmaWxlX3VwbG9hZCdcIj48L21hdC1pY29uPjxzcGFuIGNsYXNzPVwibWwtMlwiPuS4iuS8oOWFqOmDqDwvc3Bhbj48L2J1dHRvbj5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cInJlbW92ZUFsbCgpXCI+PG1hdC1pY29uXHJcbiAgICAgICAgICAgICAgICBbc3ZnSWNvbl09XCInaGVyb2ljb25zX3NvbGlkOnRyYXNoJ1wiPjwvbWF0LWljb24+PHNwYW4gY2xhc3M9XCJtbC0yXCI+5Yig6Zmk5YWo6YOoPC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgIH1cclxuICAgICAgICB9QGVsc2Uge1xyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJjaG9vc2UoKVwiPlxyXG4gICAgICAgICAgICBAaWYoYXV0b1VwbG9hZCl7XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCInbWF0X291dGxpbmU6ZmlsZV91cGxvYWQnXCI+PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgfUBlbHNlIHtcclxuICAgICAgICAgICAgPG1hdC1pY29uIFtzdmdJY29uXT1cIidtYXRfb3V0bGluZTphZGRfYm94J1wiPjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgQGlmKGdldERhdGEoKS5sZW5ndGggPiAwKXtcclxuICAgICAgICBAaWYoIWF1dG9VcGxvYWQpe1xyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNvbG9yPVwiYWNjZW50XCIgKGNsaWNrKT1cInVwbG9hZEFsbCgpXCI+PG1hdC1pY29uXHJcbiAgICAgICAgICAgICAgICBbc3ZnSWNvbl09XCInbWF0X291dGxpbmU6ZmlsZV91cGxvYWQnXCI+PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNvbG9yPVwid2FyblwiIChjbGljayk9XCJyZW1vdmVBbGwoKVwiPjxtYXQtaWNvblxyXG4gICAgICAgICAgICAgICAgW3N2Z0ljb25dPVwiJ2hlcm9pY29uc19zb2xpZDp0cmFzaCdcIj48L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICA8L21hdC1jYXJkLWFjdGlvbnM+XHJcbiAgICB9XHJcblxyXG4gICAgPG1hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgPG1hdC1saXN0IGNsYXNzPVwiYm9yZGVyLXRcIj5cclxuICAgICAgICAgICAgQGZvciAoZmlsZSBvZiBnZXREYXRhKCk7IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgICAgICA8bWF0LWxpc3QtaXRlbSBjbGFzcz1cImNtYXQtdXBsb2FkLWZpbGUtaXRlbSBoLWZ1bGxcIj5cclxuICAgICAgICAgICAgICAgIDxjbWF0LXVwbG9hZCBbZmlsZUFsaWFzXT1cImZpbGVBbGlhc1wiIFtmaWxlUGF0aF09XCJmaWxlUGF0aFwiIFtmaWxlQ2F0ZWdvcnldPVwiZmlsZUNhdGVnb3J5XCIgW2F1dG9VcGxvYWRdPVwiYXV0b1VwbG9hZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2VkaXRNb2RlXT1cImVkaXRNb2RlXCIgW2ZpbGVdPVwiZmlsZVwiIFtpZF09XCJmaWxlLmlkfHxudWxsXCIgY2xhc3M9XCJteS0yXCJcclxuICAgICAgICAgICAgICAgICAgICAocmVtb3ZlRXZlbnQpPVwicmVtb3ZlKCRldmVudClcIiAodXBsb2FkRXZlbnQpPVwidXBsb2FkKCRldmVudClcIj48L2NtYXQtdXBsb2FkPlxyXG4gICAgICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICA8L21hdC1saXN0PlxyXG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxyXG48L21hdC1jYXJkPiJdfQ==