ngx-tethys 18.0.8 → 18.1.0-next.1

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 (607) hide show
  1. package/CHANGELOG.md +19 -1
  2. package/action/action.component.d.ts +1 -2
  3. package/affix/affix.component.d.ts +2 -4
  4. package/alert/alert.component.d.ts +11 -19
  5. package/anchor/anchor-link.component.d.ts +2 -4
  6. package/anchor/anchor.component.d.ts +2 -7
  7. package/arrow-switcher/arrow-switcher.component.d.ts +1 -2
  8. package/autocomplete/autocomplete.component.d.ts +1 -2
  9. package/autocomplete/autocomplete.trigger.directive.d.ts +3 -5
  10. package/autocomplete/overlay/autocomplete-container.component.d.ts +4 -4
  11. package/autocomplete/overlay/autocomplete.service.d.ts +3 -5
  12. package/avatar/avatar.component.d.ts +1 -3
  13. package/avatar/avatar.pipe.d.ts +0 -2
  14. package/back-top/back-top.component.d.ts +2 -4
  15. package/badge/badge.component.d.ts +2 -2
  16. package/breadcrumb/breadcrumb-item.component.d.ts +1 -2
  17. package/breadcrumb/breadcrumb.component.d.ts +1 -2
  18. package/button/button.component.d.ts +1 -2
  19. package/calendar/calendar-header.component.d.ts +1 -2
  20. package/calendar/calendar.component.d.ts +1 -2
  21. package/carousel/carousel-item.directive.d.ts +1 -2
  22. package/carousel/carousel.component.d.ts +1 -4
  23. package/carousel/carousel.service.d.ts +1 -2
  24. package/cascader/cascader.component.d.ts +4 -4
  25. package/checkbox/checkbox.component.d.ts +0 -2
  26. package/collapse/collapse-item.component.d.ts +2 -4
  27. package/color-picker/color-picker-panel.component.d.ts +2 -3
  28. package/color-picker/color-picker.component.d.ts +2 -4
  29. package/color-picker/coordinates.directive.d.ts +1 -2
  30. package/color-picker/parts/alpha/alpha.component.d.ts +1 -2
  31. package/color-picker/parts/hue/hue.component.d.ts +1 -2
  32. package/color-picker/parts/saturation/saturation.component.d.ts +1 -2
  33. package/copy/copy.directive.d.ts +0 -2
  34. package/core/click-positioner.d.ts +0 -2
  35. package/core/scroll.d.ts +1 -2
  36. package/core/update-host-class.service.d.ts +1 -2
  37. package/date-picker/abstract-picker.component.d.ts +1 -1
  38. package/date-picker/abstract-picker.directive.d.ts +2 -3
  39. package/date-picker/base-picker.component.d.ts +2 -3
  40. package/date-picker/date-picker.component.d.ts +2 -2
  41. package/date-picker/date-picker.directive.d.ts +1 -3
  42. package/date-picker/date-picker.service.d.ts +2 -2
  43. package/date-picker/index.d.ts +26 -27
  44. package/date-picker/lib/calendar/calendar-footer.component.d.ts +1 -2
  45. package/date-picker/lib/calendar/calendar-header.component.d.ts +0 -1
  46. package/date-picker/lib/date/date-header.component.d.ts +0 -3
  47. package/date-picker/lib/date/date-table-cell.component.d.ts +1 -1
  48. package/date-picker/lib/date/date-table.component.d.ts +1 -3
  49. package/date-picker/lib/date-carousel/date-carousel.component.d.ts +1 -2
  50. package/date-picker/lib/decade/decade-header.component.d.ts +1 -1
  51. package/date-picker/lib/month/month-header.component.d.ts +0 -3
  52. package/date-picker/lib/month/month-table.component.d.ts +1 -2
  53. package/date-picker/lib/popups/date-popup.component.d.ts +1 -4
  54. package/date-picker/lib/popups/inner-popup.component.d.ts +0 -2
  55. package/date-picker/lib/quarter/quarter-table.component.d.ts +1 -2
  56. package/date-picker/lib/year/year-header.component.d.ts +0 -1
  57. package/date-picker/month-picker.component.d.ts +2 -2
  58. package/date-picker/picker.component.d.ts +1 -3
  59. package/date-picker/picker.pipes.d.ts +0 -3
  60. package/date-picker/quarter-picker.component.d.ts +2 -2
  61. package/date-picker/range-picker.component.d.ts +2 -2
  62. package/date-picker/range-picker.directive.d.ts +2 -3
  63. package/date-picker/week-picker.component.d.ts +2 -2
  64. package/date-picker/year-picker.component.d.ts +2 -2
  65. package/date-range/date-range.component.d.ts +3 -11
  66. package/date-range/optional-dates/optional-dates.component.d.ts +0 -2
  67. package/dialog/body/dialog-body.component.d.ts +0 -2
  68. package/dialog/confirm/confirm.component.d.ts +2 -3
  69. package/dialog/dialog-container.component.d.ts +4 -5
  70. package/dialog/dialog.service.d.ts +4 -4
  71. package/dialog/footer/dialog-footer.component.d.ts +2 -2
  72. package/dialog/header/dialog-header.component.d.ts +2 -6
  73. package/divider/divider.component.d.ts +8 -2
  74. package/dot/dot.component.d.ts +1 -2
  75. package/drag-drop/drag-content.directive.d.ts +2 -3
  76. package/drag-drop/drag-handle.directive.d.ts +2 -3
  77. package/drag-drop/drag.directive.d.ts +4 -5
  78. package/drag-drop/drop-container.directive.d.ts +6 -3
  79. package/dropdown/dropdown-active.directive.d.ts +3 -4
  80. package/dropdown/dropdown-menu-item.directive.d.ts +1 -2
  81. package/dropdown/dropdown-submenu.component.d.ts +1 -3
  82. package/dropdown/dropdown.directive.d.ts +3 -5
  83. package/empty/empty.component.d.ts +6 -6
  84. package/esm2022/action/action.component.mjs +20 -21
  85. package/esm2022/affix/affix.component.mjs +11 -14
  86. package/esm2022/alert/alert.component.mjs +55 -81
  87. package/esm2022/anchor/anchor-link.component.mjs +23 -16
  88. package/esm2022/anchor/anchor.component.mjs +27 -24
  89. package/esm2022/arrow-switcher/arrow-switcher.component.mjs +25 -26
  90. package/esm2022/autocomplete/autocomplete.component.mjs +11 -11
  91. package/esm2022/autocomplete/autocomplete.trigger.directive.mjs +30 -37
  92. package/esm2022/autocomplete/overlay/autocomplete-container.component.mjs +11 -15
  93. package/esm2022/autocomplete/overlay/autocomplete.service.mjs +14 -21
  94. package/esm2022/avatar/avatar-list/avatar-list.component.mjs +4 -4
  95. package/esm2022/avatar/avatar.component.mjs +27 -28
  96. package/esm2022/avatar/avatar.pipe.mjs +6 -7
  97. package/esm2022/back-top/back-top.component.mjs +14 -18
  98. package/esm2022/badge/badge.component.mjs +8 -9
  99. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +7 -7
  100. package/esm2022/breadcrumb/breadcrumb.component.mjs +15 -17
  101. package/esm2022/button/button-icon.component.mjs +4 -4
  102. package/esm2022/button/button.component.mjs +15 -15
  103. package/esm2022/calendar/calendar-header.component.mjs +15 -15
  104. package/esm2022/calendar/calendar.component.mjs +14 -15
  105. package/esm2022/card/header.component.mjs +4 -4
  106. package/esm2022/carousel/carousel-item.directive.mjs +7 -6
  107. package/esm2022/carousel/carousel.component.mjs +13 -15
  108. package/esm2022/carousel/carousel.service.mjs +7 -9
  109. package/esm2022/cascader/cascader-li.component.mjs +4 -4
  110. package/esm2022/cascader/cascader-search-option.component.mjs +4 -4
  111. package/esm2022/cascader/cascader.component.mjs +15 -22
  112. package/esm2022/checkbox/checkbox.component.mjs +11 -13
  113. package/esm2022/collapse/collapse-item.component.mjs +21 -24
  114. package/esm2022/color-picker/color-picker-panel.component.mjs +14 -15
  115. package/esm2022/color-picker/color-picker.component.mjs +10 -11
  116. package/esm2022/color-picker/coordinates.directive.mjs +10 -10
  117. package/esm2022/color-picker/parts/alpha/alpha.component.mjs +6 -6
  118. package/esm2022/color-picker/parts/hue/hue.component.mjs +6 -6
  119. package/esm2022/color-picker/parts/saturation/saturation.component.mjs +9 -9
  120. package/esm2022/comment/comment.component.mjs +4 -4
  121. package/esm2022/copy/copy.directive.mjs +8 -12
  122. package/esm2022/core/click-positioner.mjs +6 -7
  123. package/esm2022/core/scroll.mjs +7 -9
  124. package/esm2022/core/store/store.mjs +1 -1
  125. package/esm2022/core/update-host-class.service.mjs +6 -6
  126. package/esm2022/date-picker/abstract-picker.component.mjs +5 -5
  127. package/esm2022/date-picker/abstract-picker.directive.mjs +42 -44
  128. package/esm2022/date-picker/base-picker.component.mjs +26 -26
  129. package/esm2022/date-picker/date-picker.component.mjs +10 -11
  130. package/esm2022/date-picker/date-picker.directive.mjs +6 -8
  131. package/esm2022/date-picker/date-picker.service.mjs +6 -10
  132. package/esm2022/date-picker/index.mjs +27 -28
  133. package/esm2022/date-picker/lib/calendar/calendar-footer.component.mjs +7 -8
  134. package/esm2022/date-picker/lib/calendar/calendar-header.component.mjs +6 -7
  135. package/esm2022/date-picker/lib/date/date-header.component.mjs +6 -12
  136. package/esm2022/date-picker/lib/date/date-table-cell.component.mjs +4 -4
  137. package/esm2022/date-picker/lib/date/date-table.component.mjs +10 -12
  138. package/esm2022/date-picker/lib/date-carousel/date-carousel.component.mjs +16 -16
  139. package/esm2022/date-picker/lib/decade/decade-header.component.mjs +8 -11
  140. package/esm2022/date-picker/lib/decade/decade-table.component.mjs +4 -4
  141. package/esm2022/date-picker/lib/month/month-header.component.mjs +6 -12
  142. package/esm2022/date-picker/lib/month/month-table.component.mjs +9 -10
  143. package/esm2022/date-picker/lib/popups/date-popup.component.mjs +14 -29
  144. package/esm2022/date-picker/lib/popups/inner-popup.component.mjs +14 -20
  145. package/esm2022/date-picker/lib/quarter/quarter-table.component.mjs +9 -10
  146. package/esm2022/date-picker/lib/year/year-header.component.mjs +6 -12
  147. package/esm2022/date-picker/lib/year/year-table.component.mjs +4 -4
  148. package/esm2022/date-picker/month-picker.component.mjs +9 -11
  149. package/esm2022/date-picker/picker.component.mjs +24 -35
  150. package/esm2022/date-picker/picker.pipes.mjs +10 -11
  151. package/esm2022/date-picker/quarter-picker.component.mjs +9 -11
  152. package/esm2022/date-picker/range-picker.component.mjs +9 -11
  153. package/esm2022/date-picker/range-picker.directive.mjs +6 -8
  154. package/esm2022/date-picker/week-picker.component.mjs +9 -11
  155. package/esm2022/date-picker/year-picker.component.mjs +9 -11
  156. package/esm2022/date-range/date-range.component.mjs +17 -18
  157. package/esm2022/date-range/optional-dates/optional-dates.component.mjs +9 -13
  158. package/esm2022/dialog/body/dialog-body.component.mjs +11 -12
  159. package/esm2022/dialog/confirm/confirm.component.mjs +10 -14
  160. package/esm2022/dialog/dialog-container.component.mjs +13 -18
  161. package/esm2022/dialog/dialog.service.mjs +10 -17
  162. package/esm2022/dialog/footer/dialog-footer.component.mjs +10 -14
  163. package/esm2022/dialog/header/dialog-header.component.mjs +17 -22
  164. package/esm2022/divider/divider.component.mjs +21 -13
  165. package/esm2022/dot/dot.component.mjs +7 -7
  166. package/esm2022/drag-drop/drag-content.directive.mjs +7 -9
  167. package/esm2022/drag-drop/drag-handle.directive.mjs +7 -9
  168. package/esm2022/drag-drop/drag.directive.mjs +13 -16
  169. package/esm2022/drag-drop/drop-container.directive.mjs +13 -13
  170. package/esm2022/dropdown/dropdown-active.directive.mjs +9 -12
  171. package/esm2022/dropdown/dropdown-menu-item.directive.mjs +12 -12
  172. package/esm2022/dropdown/dropdown-menu.component.mjs +11 -7
  173. package/esm2022/dropdown/dropdown-submenu.component.mjs +9 -10
  174. package/esm2022/dropdown/dropdown.directive.mjs +12 -10
  175. package/esm2022/empty/empty.component.mjs +17 -20
  176. package/esm2022/flexible-text/flexible-text.component.mjs +16 -17
  177. package/esm2022/form/form-group-error/form-group-error.component.mjs +12 -15
  178. package/esm2022/form/form-group-label.directive.mjs +9 -10
  179. package/esm2022/form/form-group.component.mjs +18 -22
  180. package/esm2022/form/form-submit.directive.mjs +6 -7
  181. package/esm2022/form/form-validator-loader.mjs +1 -1
  182. package/esm2022/form/form-validator.service.mjs +12 -13
  183. package/esm2022/form/form.directive.mjs +11 -16
  184. package/esm2022/form/from-group-footer/form-group-footer.component.mjs +13 -19
  185. package/esm2022/form/validator/unique-validator.directive.mjs +7 -10
  186. package/esm2022/fullscreen/fullscreen.component.mjs +10 -11
  187. package/esm2022/fullscreen/fullscreen.service.mjs +7 -10
  188. package/esm2022/grid/thy-col.directive.mjs +9 -14
  189. package/esm2022/grid/thy-grid-item.component.mjs +8 -14
  190. package/esm2022/grid/thy-grid.component.mjs +7 -8
  191. package/esm2022/guider/guider-hint/guider-hint.component.mjs +4 -4
  192. package/esm2022/guider/guider.directive.mjs +8 -9
  193. package/esm2022/guider/guider.service.mjs +12 -19
  194. package/esm2022/icon/icon-registry.mjs +11 -16
  195. package/esm2022/icon/icon.component.mjs +8 -9
  196. package/esm2022/image/image-group.component.mjs +7 -7
  197. package/esm2022/image/image.directive.mjs +11 -12
  198. package/esm2022/image/image.service.mjs +8 -14
  199. package/esm2022/image/preview/image-preview.component.mjs +36 -41
  200. package/esm2022/input/input-count.component.mjs +7 -10
  201. package/esm2022/input/input-group.component.mjs +15 -16
  202. package/esm2022/input/input-search.component.mjs +9 -10
  203. package/esm2022/input/input.component.mjs +17 -17
  204. package/esm2022/input/input.directive.mjs +12 -17
  205. package/esm2022/input-number/input-number.component.mjs +6 -6
  206. package/esm2022/layout/header.component.mjs +4 -4
  207. package/esm2022/layout/sidebar-header.component.mjs +4 -4
  208. package/esm2022/layout/sidebar.component.mjs +125 -121
  209. package/esm2022/list/list-item-meta.component.mjs +4 -4
  210. package/esm2022/list/selection/selection-list.mjs +25 -25
  211. package/esm2022/loading/loading.component.mjs +10 -11
  212. package/esm2022/mention/mention.directive.mjs +9 -14
  213. package/esm2022/mention/suggestions/suggestions.component.mjs +11 -12
  214. package/esm2022/menu/group/menu-group.component.mjs +37 -38
  215. package/esm2022/menu/item/action/menu-item-action.component.mjs +15 -16
  216. package/esm2022/menu/item/menu-item.component.mjs +8 -9
  217. package/esm2022/message/abstract/abstract-message-container.component.mjs +5 -5
  218. package/esm2022/message/abstract/abstract-message.component.mjs +6 -6
  219. package/esm2022/message/message-container.component.mjs +21 -15
  220. package/esm2022/message/message-queue.service.mjs +6 -8
  221. package/esm2022/message/message.component.mjs +9 -10
  222. package/esm2022/message/message.service.mjs +10 -11
  223. package/esm2022/nav/icon-nav/icon-nav-link.directive.mjs +4 -5
  224. package/esm2022/nav/icon-nav/icon-nav.component.mjs +6 -6
  225. package/esm2022/nav/nav-ink-bar.directive.mjs +9 -14
  226. package/esm2022/nav/nav-item.directive.mjs +8 -11
  227. package/esm2022/nav/nav.component.mjs +35 -38
  228. package/esm2022/nav/nav.pipe.mjs +6 -7
  229. package/esm2022/notify/notify-container.component.mjs +11 -14
  230. package/esm2022/notify/notify-queue.service.mjs +6 -8
  231. package/esm2022/notify/notify.component.mjs +10 -10
  232. package/esm2022/notify/notify.service.mjs +11 -12
  233. package/esm2022/pagination/pagination.component.mjs +41 -46
  234. package/esm2022/pagination/pagination.pipe.mjs +6 -7
  235. package/esm2022/popover/header/popover-header.component.mjs +15 -17
  236. package/esm2022/popover/popover-container.component.mjs +11 -13
  237. package/esm2022/popover/popover.directive.mjs +13 -12
  238. package/esm2022/popover/popover.service.mjs +14 -26
  239. package/esm2022/progress/progress-circle.component.mjs +4 -7
  240. package/esm2022/progress/progress-strip.component.mjs +10 -13
  241. package/esm2022/progress/progress.component.mjs +5 -8
  242. package/esm2022/property/property-item.component.mjs +13 -16
  243. package/esm2022/property-operation/property-operation.component.mjs +27 -28
  244. package/esm2022/radio/button/radio-button.component.mjs +9 -15
  245. package/esm2022/radio/group/radio-group.component.mjs +17 -17
  246. package/esm2022/radio/radio.component.mjs +12 -18
  247. package/esm2022/rate/rate.component.mjs +10 -10
  248. package/esm2022/resizable/resizable.directive.mjs +10 -12
  249. package/esm2022/resizable/resizable.service.mjs +7 -9
  250. package/esm2022/resizable/resize-handle.component.mjs +16 -14
  251. package/esm2022/resizable/resize-handles.component.mjs +12 -5
  252. package/esm2022/result/result.component.mjs +4 -4
  253. package/esm2022/segment/segment-item.component.mjs +15 -18
  254. package/esm2022/segment/segment.component.mjs +29 -30
  255. package/esm2022/select/custom-select/custom-select.component.mjs +19 -35
  256. package/esm2022/select/native-select/native-select.component.mjs +10 -11
  257. package/esm2022/shared/base-form-check.component.mjs +7 -8
  258. package/esm2022/shared/directives/string-or-template-outlet.directive.mjs +7 -7
  259. package/esm2022/shared/directives/thy-autofocus.directive.mjs +10 -10
  260. package/esm2022/shared/directives/thy-contextmenu.directive.mjs +8 -8
  261. package/esm2022/shared/directives/thy-ctrl-enter.directive.mjs +8 -8
  262. package/esm2022/shared/directives/thy-enter.directive.mjs +8 -8
  263. package/esm2022/shared/directives/thy-scroll.directive.mjs +21 -21
  264. package/esm2022/shared/directives/thy-show.mjs +11 -11
  265. package/esm2022/shared/directives/thy-stop-propagation.directive.mjs +7 -5
  266. package/esm2022/shared/directives/view-outlet.directive.mjs +7 -7
  267. package/esm2022/shared/ng-transclude.directive.mjs +6 -5
  268. package/esm2022/shared/option/group/option-group.component.mjs +10 -10
  269. package/esm2022/shared/option/list-option/list-option.component.mjs +14 -22
  270. package/esm2022/shared/option/option.component.mjs +11 -22
  271. package/esm2022/shared/select/select-control/select-control.component.mjs +27 -27
  272. package/esm2022/skeleton/skeleton-circle.component.mjs +7 -15
  273. package/esm2022/skeleton/skeleton-rectangle.component.mjs +7 -15
  274. package/esm2022/skeleton/stylized/bullet-list.component.mjs +8 -9
  275. package/esm2022/skeleton/stylized/list.component.mjs +8 -9
  276. package/esm2022/skeleton/stylized/paragraph.component.mjs +8 -9
  277. package/esm2022/slide/drawer/drawer-container.directive.mjs +6 -6
  278. package/esm2022/slide/slide-container.component.mjs +12 -16
  279. package/esm2022/slide/slide-header/slide-header.component.mjs +13 -14
  280. package/esm2022/slide/slide-ref.service.mjs +1 -1
  281. package/esm2022/slide/slide.service.mjs +8 -12
  282. package/esm2022/slider/slider.component.mjs +8 -8
  283. package/esm2022/space/space.component.mjs +16 -16
  284. package/esm2022/statistic/statistic.component.mjs +23 -23
  285. package/esm2022/stepper/step.component.mjs +6 -11
  286. package/esm2022/stepper/stepper-button.directive.mjs +10 -11
  287. package/esm2022/stepper/stepper.component.mjs +5 -5
  288. package/esm2022/strength/strength.component.mjs +11 -12
  289. package/esm2022/switch/switch.component.mjs +11 -11
  290. package/esm2022/table/table-column.component.mjs +58 -63
  291. package/esm2022/table/table-skeleton.component.mjs +35 -38
  292. package/esm2022/table/table.component.mjs +19 -29
  293. package/esm2022/tabs/tab-content.component.mjs +9 -9
  294. package/esm2022/tabs/tabs.component.mjs +22 -25
  295. package/esm2022/tag/tag.component.mjs +22 -22
  296. package/esm2022/time-picker/inner/inner-time-picker.component.mjs +12 -12
  297. package/esm2022/time-picker/time-picker-panel.component.mjs +31 -34
  298. package/esm2022/time-picker/time-picker.component.mjs +33 -43
  299. package/esm2022/timeline/timeline-item.component.mjs +15 -16
  300. package/esm2022/timeline/timeline.component.mjs +15 -16
  301. package/esm2022/tooltip/tooltip.component.mjs +17 -17
  302. package/esm2022/tooltip/tooltip.directive.mjs +11 -10
  303. package/esm2022/tooltip/tooltip.service.mjs +9 -13
  304. package/esm2022/transfer/transfer-list.component.mjs +9 -9
  305. package/esm2022/transfer/transfer.component.mjs +4 -4
  306. package/esm2022/tree/tree-node.component.mjs +16 -20
  307. package/esm2022/tree/tree.component.mjs +90 -96
  308. package/esm2022/tree-select/tree-select.component.mjs +28 -36
  309. package/esm2022/typography/bg-color.directive.mjs +9 -9
  310. package/esm2022/typography/text/text.component.mjs +3 -4
  311. package/esm2022/typography/text-color.directive.mjs +9 -9
  312. package/esm2022/upload/file-drop.directive.mjs +1 -1
  313. package/esm2022/upload/file-select-base.mjs +5 -6
  314. package/esm2022/upload/file-select.component.mjs +4 -3
  315. package/esm2022/upload/upload.service.mjs +6 -7
  316. package/esm2022/version.mjs +2 -2
  317. package/esm2022/vote/vote.component.mjs +4 -4
  318. package/esm2022/watermark/watermark.directive.mjs +12 -12
  319. package/fesm2022/ngx-tethys-action.mjs +20 -20
  320. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  321. package/fesm2022/ngx-tethys-affix.mjs +12 -14
  322. package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
  323. package/fesm2022/ngx-tethys-alert.mjs +54 -80
  324. package/fesm2022/ngx-tethys-alert.mjs.map +1 -1
  325. package/fesm2022/ngx-tethys-anchor.mjs +48 -35
  326. package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
  327. package/fesm2022/ngx-tethys-arrow-switcher.mjs +25 -25
  328. package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
  329. package/fesm2022/ngx-tethys-autocomplete.mjs +63 -75
  330. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  331. package/fesm2022/ngx-tethys-avatar.mjs +32 -32
  332. package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
  333. package/fesm2022/ngx-tethys-back-top.mjs +15 -18
  334. package/fesm2022/ngx-tethys-back-top.mjs.map +1 -1
  335. package/fesm2022/ngx-tethys-badge.mjs +8 -8
  336. package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
  337. package/fesm2022/ngx-tethys-breadcrumb.mjs +19 -21
  338. package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
  339. package/fesm2022/ngx-tethys-button.mjs +16 -16
  340. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  341. package/fesm2022/ngx-tethys-calendar.mjs +26 -26
  342. package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
  343. package/fesm2022/ngx-tethys-card.mjs +3 -3
  344. package/fesm2022/ngx-tethys-card.mjs.map +1 -1
  345. package/fesm2022/ngx-tethys-carousel.mjs +23 -24
  346. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  347. package/fesm2022/ngx-tethys-cascader.mjs +19 -25
  348. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  349. package/fesm2022/ngx-tethys-checkbox.mjs +10 -11
  350. package/fesm2022/ngx-tethys-checkbox.mjs.map +1 -1
  351. package/fesm2022/ngx-tethys-collapse.mjs +20 -22
  352. package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
  353. package/fesm2022/ngx-tethys-color-picker.mjs +47 -45
  354. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  355. package/fesm2022/ngx-tethys-comment.mjs +3 -3
  356. package/fesm2022/ngx-tethys-comment.mjs.map +1 -1
  357. package/fesm2022/ngx-tethys-copy.mjs +8 -12
  358. package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
  359. package/fesm2022/ngx-tethys-core.mjs +14 -16
  360. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  361. package/fesm2022/ngx-tethys-date-picker.mjs +2872 -2924
  362. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  363. package/fesm2022/ngx-tethys-date-range.mjs +24 -26
  364. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  365. package/fesm2022/ngx-tethys-dialog.mjs +61 -77
  366. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  367. package/fesm2022/ngx-tethys-divider.mjs +20 -12
  368. package/fesm2022/ngx-tethys-divider.mjs.map +1 -1
  369. package/fesm2022/ngx-tethys-dot.mjs +6 -6
  370. package/fesm2022/ngx-tethys-dot.mjs.map +1 -1
  371. package/fesm2022/ngx-tethys-drag-drop.mjs +33 -37
  372. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  373. package/fesm2022/ngx-tethys-dropdown.mjs +49 -43
  374. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  375. package/fesm2022/ngx-tethys-empty.mjs +18 -18
  376. package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
  377. package/fesm2022/ngx-tethys-flexible-text.mjs +16 -17
  378. package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
  379. package/fesm2022/ngx-tethys-form.mjs +74 -89
  380. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  381. package/fesm2022/ngx-tethys-fullscreen.mjs +14 -17
  382. package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
  383. package/fesm2022/ngx-tethys-grid.mjs +20 -29
  384. package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
  385. package/fesm2022/ngx-tethys-guider.mjs +20 -26
  386. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  387. package/fesm2022/ngx-tethys-icon.mjs +18 -22
  388. package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
  389. package/fesm2022/ngx-tethys-image.mjs +60 -65
  390. package/fesm2022/ngx-tethys-image.mjs.map +1 -1
  391. package/fesm2022/ngx-tethys-input-number.mjs +5 -5
  392. package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
  393. package/fesm2022/ngx-tethys-input.mjs +53 -60
  394. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  395. package/fesm2022/ngx-tethys-layout.mjs +129 -124
  396. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  397. package/fesm2022/ngx-tethys-list.mjs +27 -27
  398. package/fesm2022/ngx-tethys-list.mjs.map +1 -1
  399. package/fesm2022/ngx-tethys-loading.mjs +10 -10
  400. package/fesm2022/ngx-tethys-loading.mjs.map +1 -1
  401. package/fesm2022/ngx-tethys-mention.mjs +19 -24
  402. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  403. package/fesm2022/ngx-tethys-menu.mjs +56 -57
  404. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  405. package/fesm2022/ngx-tethys-message.mjs +47 -41
  406. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  407. package/fesm2022/ngx-tethys-nav.mjs +61 -72
  408. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  409. package/fesm2022/ngx-tethys-notify.mjs +31 -34
  410. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  411. package/fesm2022/ngx-tethys-pagination.mjs +46 -51
  412. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  413. package/fesm2022/ngx-tethys-popover.mjs +51 -57
  414. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  415. package/fesm2022/ngx-tethys-progress.mjs +15 -24
  416. package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
  417. package/fesm2022/ngx-tethys-property-operation.mjs +27 -27
  418. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  419. package/fesm2022/ngx-tethys-property.mjs +14 -14
  420. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  421. package/fesm2022/ngx-tethys-radio.mjs +33 -39
  422. package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
  423. package/fesm2022/ngx-tethys-rate.mjs +9 -9
  424. package/fesm2022/ngx-tethys-rate.mjs.map +1 -1
  425. package/fesm2022/ngx-tethys-resizable.mjs +43 -34
  426. package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
  427. package/fesm2022/ngx-tethys-result.mjs +3 -3
  428. package/fesm2022/ngx-tethys-result.mjs.map +1 -1
  429. package/fesm2022/ngx-tethys-segment.mjs +41 -44
  430. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  431. package/fesm2022/ngx-tethys-select.mjs +28 -44
  432. package/fesm2022/ngx-tethys-select.mjs.map +1 -1
  433. package/fesm2022/ngx-tethys-shared.mjs +135 -150
  434. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  435. package/fesm2022/ngx-tethys-skeleton.mjs +33 -47
  436. package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
  437. package/fesm2022/ngx-tethys-slide.mjs +33 -37
  438. package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
  439. package/fesm2022/ngx-tethys-slider.mjs +7 -7
  440. package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
  441. package/fesm2022/ngx-tethys-space.mjs +16 -16
  442. package/fesm2022/ngx-tethys-space.mjs.map +1 -1
  443. package/fesm2022/ngx-tethys-statistic.mjs +22 -22
  444. package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
  445. package/fesm2022/ngx-tethys-stepper.mjs +17 -22
  446. package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
  447. package/fesm2022/ngx-tethys-strength.mjs +11 -11
  448. package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
  449. package/fesm2022/ngx-tethys-switch.mjs +10 -10
  450. package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
  451. package/fesm2022/ngx-tethys-table.mjs +107 -124
  452. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  453. package/fesm2022/ngx-tethys-tabs.mjs +29 -32
  454. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  455. package/fesm2022/ngx-tethys-tag.mjs +21 -21
  456. package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
  457. package/fesm2022/ngx-tethys-time-picker.mjs +70 -80
  458. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  459. package/fesm2022/ngx-tethys-timeline.mjs +26 -26
  460. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  461. package/fesm2022/ngx-tethys-tooltip.mjs +35 -36
  462. package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
  463. package/fesm2022/ngx-tethys-transfer.mjs +10 -10
  464. package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
  465. package/fesm2022/ngx-tethys-tree-select.mjs +29 -37
  466. package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
  467. package/fesm2022/ngx-tethys-tree.mjs +102 -110
  468. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  469. package/fesm2022/ngx-tethys-typography.mjs +18 -18
  470. package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
  471. package/fesm2022/ngx-tethys-upload.mjs +11 -12
  472. package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
  473. package/fesm2022/ngx-tethys-vote.mjs +3 -3
  474. package/fesm2022/ngx-tethys-vote.mjs.map +1 -1
  475. package/fesm2022/ngx-tethys-watermark.mjs +12 -12
  476. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  477. package/fesm2022/ngx-tethys.mjs +1 -1
  478. package/fesm2022/ngx-tethys.mjs.map +1 -1
  479. package/flexible-text/flexible-text.component.d.ts +1 -3
  480. package/form/form-group-error/form-group-error.component.d.ts +1 -3
  481. package/form/form-group-label.directive.d.ts +0 -2
  482. package/form/form-group.component.d.ts +1 -4
  483. package/form/form-submit.directive.d.ts +0 -2
  484. package/form/form-validator.service.d.ts +0 -2
  485. package/form/form.directive.d.ts +4 -4
  486. package/form/from-group-footer/form-group-footer.component.d.ts +2 -4
  487. package/form/validator/unique-validator.directive.d.ts +1 -4
  488. package/fullscreen/fullscreen.component.d.ts +0 -2
  489. package/fullscreen/fullscreen.service.d.ts +0 -2
  490. package/grid/thy-col.directive.d.ts +1 -2
  491. package/grid/thy-grid-item.component.d.ts +2 -4
  492. package/grid/thy-grid.component.d.ts +1 -3
  493. package/guider/guider.directive.d.ts +1 -3
  494. package/guider/guider.service.d.ts +0 -7
  495. package/icon/icon-registry.d.ts +1 -3
  496. package/icon/icon.component.d.ts +1 -3
  497. package/image/image-group.component.d.ts +1 -2
  498. package/image/image.directive.d.ts +1 -3
  499. package/image/image.service.d.ts +2 -2
  500. package/image/preview/image-preview.component.d.ts +1 -4
  501. package/input/input-count.component.d.ts +3 -4
  502. package/input/input-group.component.d.ts +1 -3
  503. package/input/input-search.component.d.ts +2 -2
  504. package/input/input.component.d.ts +1 -2
  505. package/input/input.directive.d.ts +2 -3
  506. package/input-number/input-number.component.d.ts +2 -2
  507. package/layout/sidebar.component.d.ts +44 -13
  508. package/list/selection/selection-list.d.ts +1 -2
  509. package/loading/loading.component.d.ts +0 -2
  510. package/loading/styles/loading.scss +3 -1
  511. package/mention/mention.directive.d.ts +4 -5
  512. package/mention/suggestions/suggestions.component.d.ts +2 -3
  513. package/menu/group/menu-group.component.d.ts +30 -8
  514. package/menu/item/action/menu-item-action.component.d.ts +2 -3
  515. package/menu/item/menu-item.component.d.ts +1 -2
  516. package/message/abstract/abstract-message-container.component.d.ts +1 -2
  517. package/message/abstract/abstract-message.component.d.ts +2 -2
  518. package/message/message-container.component.d.ts +1 -3
  519. package/message/message-queue.service.d.ts +1 -2
  520. package/message/message.component.d.ts +1 -3
  521. package/message/message.service.d.ts +3 -5
  522. package/nav/icon-nav/icon-nav.component.d.ts +2 -2
  523. package/nav/nav-ink-bar.directive.d.ts +2 -4
  524. package/nav/nav-item.directive.d.ts +3 -4
  525. package/nav/nav.component.d.ts +1 -3
  526. package/nav/nav.pipe.d.ts +0 -2
  527. package/notify/notify-container.component.d.ts +1 -3
  528. package/notify/notify-queue.service.d.ts +1 -2
  529. package/notify/notify.component.d.ts +2 -3
  530. package/notify/notify.service.d.ts +1 -4
  531. package/package.json +1 -1
  532. package/pagination/pagination.component.d.ts +2 -4
  533. package/pagination/pagination.pipe.d.ts +0 -2
  534. package/popover/header/popover-header.component.d.ts +0 -3
  535. package/popover/popover-container.component.d.ts +3 -4
  536. package/popover/popover.directive.d.ts +2 -5
  537. package/popover/popover.service.d.ts +4 -6
  538. package/progress/progress-circle.component.d.ts +0 -1
  539. package/progress/progress-strip.component.d.ts +0 -1
  540. package/progress/progress.component.d.ts +0 -1
  541. package/property/property-item.component.d.ts +6 -9
  542. package/property-operation/property-operation.component.d.ts +1 -3
  543. package/radio/button/radio-button.component.d.ts +2 -5
  544. package/radio/group/radio-group.component.d.ts +1 -2
  545. package/radio/radio.component.d.ts +2 -3
  546. package/rate/rate.component.d.ts +2 -2
  547. package/resizable/resizable.directive.d.ts +2 -4
  548. package/resizable/resizable.service.d.ts +2 -2
  549. package/resizable/resize-handle.component.d.ts +2 -7
  550. package/schematics/version.d.ts +1 -1
  551. package/schematics/version.js +1 -1
  552. package/segment/segment-item.component.d.ts +4 -5
  553. package/segment/segment.component.d.ts +2 -7
  554. package/select/custom-select/custom-select.component.d.ts +5 -5
  555. package/select/native-select/native-select.component.d.ts +1 -1
  556. package/shared/base-form-check.component.d.ts +1 -1
  557. package/shared/directives/string-or-template-outlet.directive.d.ts +1 -2
  558. package/shared/directives/thy-autofocus.directive.d.ts +0 -2
  559. package/shared/directives/thy-contextmenu.directive.d.ts +1 -2
  560. package/shared/directives/thy-ctrl-enter.directive.d.ts +1 -2
  561. package/shared/directives/thy-enter.directive.d.ts +1 -2
  562. package/shared/directives/thy-scroll.directive.d.ts +1 -2
  563. package/shared/directives/thy-show.d.ts +1 -2
  564. package/shared/directives/thy-stop-propagation.directive.d.ts +2 -2
  565. package/shared/directives/view-outlet.directive.d.ts +1 -2
  566. package/shared/ng-transclude.directive.d.ts +1 -1
  567. package/shared/option/group/option-group.component.d.ts +1 -2
  568. package/shared/option/list-option/list-option.component.d.ts +6 -7
  569. package/shared/option/option.component.d.ts +5 -5
  570. package/shared/select/select-control/select-control.component.d.ts +1 -2
  571. package/skeleton/skeleton-circle.component.d.ts +1 -4
  572. package/skeleton/skeleton-rectangle.component.d.ts +5 -5
  573. package/skeleton/stylized/bullet-list.component.d.ts +9 -1
  574. package/slide/drawer/drawer-container.directive.d.ts +1 -2
  575. package/slide/slide-container.component.d.ts +3 -4
  576. package/slide/slide-header/slide-header.component.d.ts +0 -2
  577. package/slide/slide.service.d.ts +3 -3
  578. package/slider/slider.component.d.ts +2 -2
  579. package/space/space.component.d.ts +1 -2
  580. package/statistic/statistic.component.d.ts +1 -2
  581. package/stepper/step.component.d.ts +1 -2
  582. package/stepper/stepper-button.directive.d.ts +0 -3
  583. package/strength/strength.component.d.ts +0 -1
  584. package/switch/switch.component.d.ts +1 -1
  585. package/table/table-column.component.d.ts +32 -8
  586. package/table/table-skeleton.component.d.ts +1 -3
  587. package/table/table.component.d.ts +3 -5
  588. package/tabs/tabs.component.d.ts +1 -3
  589. package/tag/tag.component.d.ts +7 -3
  590. package/time-picker/inner/inner-time-picker.component.d.ts +2 -4
  591. package/time-picker/time-picker-panel.component.d.ts +1 -3
  592. package/time-picker/time-picker.component.d.ts +1 -2
  593. package/timeline/timeline-item.component.d.ts +1 -3
  594. package/timeline/timeline.component.d.ts +1 -3
  595. package/tooltip/tooltip.component.d.ts +1 -2
  596. package/tooltip/tooltip.directive.d.ts +6 -9
  597. package/tooltip/tooltip.service.d.ts +2 -4
  598. package/transfer/transfer-list.component.d.ts +1 -2
  599. package/tree/tree-node.component.d.ts +5 -21
  600. package/tree/tree.component.d.ts +1 -2
  601. package/tree-select/tree-select.component.d.ts +5 -6
  602. package/typography/bg-color.directive.d.ts +0 -2
  603. package/typography/text-color.directive.d.ts +1 -2
  604. package/upload/file-select-base.d.ts +2 -3
  605. package/upload/file-select.component.d.ts +1 -0
  606. package/upload/upload.service.d.ts +0 -2
  607. package/watermark/watermark.directive.d.ts +1 -2
@@ -1,12 +1,11 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, HostBinding, Input, Output } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, HostBinding, Input, Output, inject } from '@angular/core';
2
2
  import { isString, coerceBooleanProperty } from 'ngx-tethys/util';
3
3
  import { useHostRenderer } from '@tethys/cdk/dom';
4
4
  import { ThyAvatarService } from './avatar.service';
5
5
  import { AvatarShortNamePipe, AvatarBgColorPipe, AvatarSrcPipe } from './avatar.pipe';
6
6
  import { ThyIcon } from 'ngx-tethys/icon';
7
- import { NgIf, NgClass, NgStyle } from '@angular/common';
7
+ import { NgClass, NgStyle } from '@angular/common';
8
8
  import * as i0 from "@angular/core";
9
- import * as i1 from "./avatar.service";
10
9
  const sizeArray = [16, 22, 24, 28, 32, 36, 44, 48, 68, 110, 160];
11
10
  export const DEFAULT_SIZE = 36;
12
11
  export const thyAvatarSizeMap = {
@@ -22,6 +21,26 @@ export const thyAvatarSizeMap = {
22
21
  * @order 10
23
22
  */
24
23
  export class ThyAvatar {
24
+ constructor() {
25
+ this.thyAvatarService = inject(ThyAvatarService);
26
+ this.elementRef = inject(ElementRef);
27
+ this._showRemove = false;
28
+ this._isAvatar = true;
29
+ /**
30
+ * * 已废弃,请使用 thyRemove
31
+ * @deprecated
32
+ */
33
+ this.thyOnRemove = new EventEmitter();
34
+ /**
35
+ * 移除按钮的事件, 当 thyRemovable 为 true 时起作用
36
+ */
37
+ this.thyRemove = new EventEmitter();
38
+ /**
39
+ * 头像 img 加载 error 时触发
40
+ */
41
+ this.thyError = new EventEmitter();
42
+ this.hostRenderer = useHostRenderer();
43
+ }
25
44
  /**
26
45
  * 头像路径地址, 默认为全路径,如果不是全路径,可以通过自定义服务 ThyAvatarService,重写 srcTransform 方法实现转换
27
46
  *
@@ -103,26 +122,6 @@ export class ThyAvatar {
103
122
  this.avatarNameSafeHtml = name;
104
123
  }
105
124
  }
106
- constructor(thyAvatarService, elementRef) {
107
- this.thyAvatarService = thyAvatarService;
108
- this.elementRef = elementRef;
109
- this._showRemove = false;
110
- this._isAvatar = true;
111
- /**
112
- * * 已废弃,请使用 thyRemove
113
- * @deprecated
114
- */
115
- this.thyOnRemove = new EventEmitter();
116
- /**
117
- * 移除按钮的事件, 当 thyRemovable 为 true 时起作用
118
- */
119
- this.thyRemove = new EventEmitter();
120
- /**
121
- * 头像 img 加载 error 时触发
122
- */
123
- this.thyError = new EventEmitter();
124
- this.hostRenderer = useHostRenderer();
125
- }
126
125
  ngOnInit() {
127
126
  if (!this._size) {
128
127
  this._setAvatarSize(DEFAULT_SIZE);
@@ -137,13 +136,13 @@ export class ThyAvatar {
137
136
  this._setAvatarSrc(null);
138
137
  this.thyError.emit($event);
139
138
  }
140
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyAvatar, deps: [{ token: i1.ThyAvatarService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
141
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyAvatar, isStandalone: true, selector: "thy-avatar", inputs: { thyShowName: ["thyShowName", "thyShowName", coerceBooleanProperty], thySrc: "thySrc", thyName: "thyName", thySize: "thySize", thyShowRemove: ["thyShowRemove", "thyShowRemove", coerceBooleanProperty], thyRemovable: ["thyRemovable", "thyRemovable", coerceBooleanProperty], thyImgClass: "thyImgClass", thyDisabled: ["thyDisabled", "thyDisabled", coerceBooleanProperty], thyLoading: "thyLoading", thyFetchPriority: "thyFetchPriority" }, outputs: { thyOnRemove: "thyOnRemove", thyRemove: "thyRemove", thyError: "thyError" }, host: { properties: { "class.thy-avatar": "this._isAvatar" } }, ngImport: i0, template: "<img\n *ngIf=\"_src; else noSrc\"\n [src]=\"_src | thyAvatarSrc: _size\"\n class=\"avatar-avatar\"\n [ngClass]=\"thyImgClass\"\n alt=\"{{ avatarName || '' }}\"\n [attr.loading]=\"thyLoading\"\n [attr.fetchpriority]=\"thyFetchPriority\"\n (error)=\"avatarImgError($event)\"\n/>\n\n<ng-template #noSrc>\n <span class=\"avatar-default\" [ngStyle]=\"avatarName | avatarBgColor\">\n <div>{{ avatarName | avatarShortName }}</div>\n </span>\n</ng-template>\n\n<ng-template [ngIf]=\"thyShowName\">\n <div *ngIf=\"avatarNameSafeHtml; else noAvatarNameSafeHtml\" class=\"avatar-name\" [innerHtml]=\"avatarNameSafeHtml\"></div>\n <ng-template #noAvatarNameSafeHtml>\n <div class=\"avatar-name\">{{ avatarName }}</div>\n </ng-template>\n</ng-template>\n\n<a *ngIf=\"_showRemove\" (click)=\"remove($event)\" href=\"javascript:;\" class=\"remove-link avatar-remove\">\n <thy-icon class=\"remove-link-icon\" thyIconName=\"close-circle-bold-fill\"></thy-icon>\n</a>\n<div *ngIf=\"thyDisabled\" class=\"thy-avatar-disabled\">\n <thy-icon class=\"thy-avatar-disabled-icon\" thyIconName=\"ban\"></thy-icon>\n</div>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "pipe", type: AvatarShortNamePipe, name: "avatarShortName" }, { kind: "pipe", type: AvatarBgColorPipe, name: "avatarBgColor" }, { kind: "pipe", type: AvatarSrcPipe, name: "thyAvatarSrc" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
139
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyAvatar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
140
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyAvatar, isStandalone: true, selector: "thy-avatar", inputs: { thyShowName: ["thyShowName", "thyShowName", coerceBooleanProperty], thySrc: "thySrc", thyName: "thyName", thySize: "thySize", thyShowRemove: ["thyShowRemove", "thyShowRemove", coerceBooleanProperty], thyRemovable: ["thyRemovable", "thyRemovable", coerceBooleanProperty], thyImgClass: "thyImgClass", thyDisabled: ["thyDisabled", "thyDisabled", coerceBooleanProperty], thyLoading: "thyLoading", thyFetchPriority: "thyFetchPriority" }, outputs: { thyOnRemove: "thyOnRemove", thyRemove: "thyRemove", thyError: "thyError" }, host: { properties: { "class.thy-avatar": "this._isAvatar" } }, ngImport: i0, template: "@if (_src) {\n <img\n [src]=\"_src | thyAvatarSrc: _size\"\n class=\"avatar-avatar\"\n [ngClass]=\"thyImgClass\"\n alt=\"{{ avatarName || '' }}\"\n [attr.loading]=\"thyLoading\"\n [attr.fetchpriority]=\"thyFetchPriority\"\n (error)=\"avatarImgError($event)\"\n />\n} @else {\n <span class=\"avatar-default\" [ngStyle]=\"avatarName | avatarBgColor\">\n <div>{{ avatarName | avatarShortName }}</div>\n </span>\n}\n\n\n@if (thyShowName) {\n @if (avatarNameSafeHtml) {\n <div class=\"avatar-name\" [innerHtml]=\"avatarNameSafeHtml\"></div>\n } @else {\n <div class=\"avatar-name\">{{ avatarName }}</div>\n }\n}\n\n@if (_showRemove) {\n <a (click)=\"remove($event)\" href=\"javascript:;\" class=\"remove-link avatar-remove\">\n <thy-icon class=\"remove-link-icon\" thyIconName=\"close-circle-bold-fill\"></thy-icon>\n </a>\n}\n@if (thyDisabled) {\n <div class=\"thy-avatar-disabled\">\n <thy-icon class=\"thy-avatar-disabled-icon\" thyIconName=\"ban\"></thy-icon>\n </div>\n}\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "pipe", type: AvatarShortNamePipe, name: "avatarShortName" }, { kind: "pipe", type: AvatarBgColorPipe, name: "avatarBgColor" }, { kind: "pipe", type: AvatarSrcPipe, name: "thyAvatarSrc" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
142
141
  }
143
142
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyAvatar, decorators: [{
144
143
  type: Component,
145
- args: [{ selector: 'thy-avatar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, NgClass, NgStyle, ThyIcon, AvatarShortNamePipe, AvatarBgColorPipe, AvatarSrcPipe], template: "<img\n *ngIf=\"_src; else noSrc\"\n [src]=\"_src | thyAvatarSrc: _size\"\n class=\"avatar-avatar\"\n [ngClass]=\"thyImgClass\"\n alt=\"{{ avatarName || '' }}\"\n [attr.loading]=\"thyLoading\"\n [attr.fetchpriority]=\"thyFetchPriority\"\n (error)=\"avatarImgError($event)\"\n/>\n\n<ng-template #noSrc>\n <span class=\"avatar-default\" [ngStyle]=\"avatarName | avatarBgColor\">\n <div>{{ avatarName | avatarShortName }}</div>\n </span>\n</ng-template>\n\n<ng-template [ngIf]=\"thyShowName\">\n <div *ngIf=\"avatarNameSafeHtml; else noAvatarNameSafeHtml\" class=\"avatar-name\" [innerHtml]=\"avatarNameSafeHtml\"></div>\n <ng-template #noAvatarNameSafeHtml>\n <div class=\"avatar-name\">{{ avatarName }}</div>\n </ng-template>\n</ng-template>\n\n<a *ngIf=\"_showRemove\" (click)=\"remove($event)\" href=\"javascript:;\" class=\"remove-link avatar-remove\">\n <thy-icon class=\"remove-link-icon\" thyIconName=\"close-circle-bold-fill\"></thy-icon>\n</a>\n<div *ngIf=\"thyDisabled\" class=\"thy-avatar-disabled\">\n <thy-icon class=\"thy-avatar-disabled-icon\" thyIconName=\"ban\"></thy-icon>\n</div>\n" }]
146
- }], ctorParameters: () => [{ type: i1.ThyAvatarService }, { type: i0.ElementRef }], propDecorators: { _isAvatar: [{
144
+ args: [{ selector: 'thy-avatar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgClass, NgStyle, ThyIcon, AvatarShortNamePipe, AvatarBgColorPipe, AvatarSrcPipe], template: "@if (_src) {\n <img\n [src]=\"_src | thyAvatarSrc: _size\"\n class=\"avatar-avatar\"\n [ngClass]=\"thyImgClass\"\n alt=\"{{ avatarName || '' }}\"\n [attr.loading]=\"thyLoading\"\n [attr.fetchpriority]=\"thyFetchPriority\"\n (error)=\"avatarImgError($event)\"\n />\n} @else {\n <span class=\"avatar-default\" [ngStyle]=\"avatarName | avatarBgColor\">\n <div>{{ avatarName | avatarShortName }}</div>\n </span>\n}\n\n\n@if (thyShowName) {\n @if (avatarNameSafeHtml) {\n <div class=\"avatar-name\" [innerHtml]=\"avatarNameSafeHtml\"></div>\n } @else {\n <div class=\"avatar-name\">{{ avatarName }}</div>\n }\n}\n\n@if (_showRemove) {\n <a (click)=\"remove($event)\" href=\"javascript:;\" class=\"remove-link avatar-remove\">\n <thy-icon class=\"remove-link-icon\" thyIconName=\"close-circle-bold-fill\"></thy-icon>\n </a>\n}\n@if (thyDisabled) {\n <div class=\"thy-avatar-disabled\">\n <thy-icon class=\"thy-avatar-disabled-icon\" thyIconName=\"ban\"></thy-icon>\n </div>\n}\n" }]
145
+ }], propDecorators: { _isAvatar: [{
147
146
  type: HostBinding,
148
147
  args: ['class.thy-avatar']
149
148
  }], thyOnRemove: [{
@@ -177,4 +176,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
177
176
  }], thyFetchPriority: [{
178
177
  type: Input
179
178
  }] } });
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqSSxPQUFPLEVBQUUsUUFBUSxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFFekQsTUFBTSxTQUFTLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFFakUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztBQUUvQixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM1QixHQUFHLEVBQUUsRUFBRTtJQUNQLEVBQUUsRUFBRSxFQUFFO0lBQ04sRUFBRSxFQUFFLEVBQUU7SUFDTixFQUFFLEVBQUUsRUFBRTtJ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ZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBpc1N0cmluZywgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcbmltcG9ydCB7IHVzZUhvc3RSZW5kZXJlciB9IGZyb20gJ0B0ZXRoeXMvY2RrL2RvbSc7XG5pbXBvcnQgeyBUaHlBdmF0YXJTZXJ2aWNlIH0gZnJvbSAnLi9hdmF0YXIuc2VydmljZSc7XG5pbXBvcnQgeyBBdmF0YXJTaG9ydE5hbWVQaXBlLCBBdmF0YXJCZ0NvbG9yUGlwZSwgQXZhdGFyU3JjUGlwZSB9IGZyb20gJy4vYXZhdGFyLnBpcGUnO1xuaW1wb3J0IHsgVGh5SWNvbiB9IGZyb20gJ25neC10ZXRoeXMvaWNvbic7XG5pbXBvcnQgeyBOZ0lmLCBOZ0NsYXNzLCBOZ1N0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuY29uc3Qgc2l6ZUFycmF5ID0gWzE2LCAyMiwgMjQsIDI4LCAzMiwgMzYsIDQ0LCA0OCwgNjgsIDExMCwgMTYwXTtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfU0laRSA9IDM2O1xuXG5leHBvcnQgY29uc3QgdGh5QXZhdGFyU2l6ZU1hcCA9IHtcbiAgICB4eHM6IDIyLFxuICAgIHhzOiAyNCxcbiAgICBzbTogMzIsXG4gICAgbWQ6IDM2LFxuICAgIGxnOiA0OFxufTtcblxuLyoqIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2VtYmVkZGVkLWNvbnRlbnQuaHRtbCNhdHRyLWltZy1sb2FkaW5nICovXG5leHBvcnQgdHlwZSBUaHlBdmF0YXJMb2FkaW5nID0gJ2VhZ2VyJyB8ICdsYXp5JztcblxuLyoqIGh0dHBzOi8vd2ljZy5naXRodWIuaW8vcHJpb3JpdHktaGludHMvI2lkbC1pbmRleCAqL1xuZXhwb3J0IHR5cGUgVGh5QXZhdGFyRmV0Y2hQcmlvcml0eSA9ICdoaWdoJyB8ICdsb3cnIHwgJ2F1dG8nO1xuXG4vKipcbiAqIOWktOWDj+e7hOS7tlxuICogQG5hbWUgdGh5LWF2YXRhclxuICogQG9yZGVyIDEwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWF2YXRhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2F2YXRhci5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdJZiwgTmdDbGFzcywgTmdTdHlsZSwgVGh5SWNvbiwgQXZhdGFyU2hvcnROYW1lUGlwZSwgQXZhdGFyQmdDb2xvclBpcGUsIEF2YXRhclNyY1BpcGVdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUF2YXRhciBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgX3NyYzogc3RyaW5nO1xuICAgIF9uYW1lOiBzdHJpbmc7XG4gICAgX3NpemU6IG51bWJlcjtcbiAgICBfc2hvd1JlbW92ZSA9IGZhbHNlO1xuXG4gICAgcHVibGljIGF2YXRhclNyYzogc3RyaW5nO1xuICAgIHB1YmxpYyBhdmF0YXJOYW1lPzogc3RyaW5nO1xuICAgIHB1YmxpYyBhdmF0YXJOYW1lU2FmZUh0bWw/OiBTYWZlSHRtbDtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MudGh5LWF2YXRhcicpIF9pc0F2YXRhciA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiAqIOW3suW6n+W8g++8jOivt+S9v+eUqCB0aHlSZW1vdmVcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqL1xuICAgIEBPdXRwdXQoKSB0aHlPblJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqICDnp7vpmaTmjInpkq7nmoTkuovku7YsIOW9kyB0aHlSZW1vdmFibGUg5Li6IHRydWUg5pe26LW35L2c55SoXG4gICAgICovXG4gICAgQE91dHB1dCgpIHRoeVJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqICDlpLTlg48gaW1nIOWKoOi9vSBlcnJvciDml7bop6blj5FcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgdGh5RXJyb3I6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5bGV56S65Lq65ZGY5ZCN56ewXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlTaG93TmFtZTogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIOWktOWDj+i3r+W+hOWcsOWdgCwg6buY6K6k5Li65YWo6Lev5b6E77yM5aaC5p6c5LiN5piv5YWo6Lev5b6E77yM5Y+v5Lul6YCa6L+H6Ieq5a6a5LmJ5pyN5YqhIFRoeUF2YXRhclNlcnZpY2XvvIzph43lhpkgc3JjVHJhbnNmb3JtIOaWueazleWunueOsOi9rOaNolxuICAgICAqXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5U3JjKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fc2V0QXZhdGFyU3JjKHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDkurrlkZjlkI3np7DvvIjlj6/orr7nva7oh6rlrprkuYnlkI3np7DvvIzpnIDpgJrov4foh6rlrprkuYnmnI3liqEgVGh5QXZhdGFyU2VydmljZe+8jOmHjeWGmSBuYW1lVHJhbnNmb3JtIOaWueazleWOu+WunueOsOi9rOaNou+8iVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeU5hbWUodmFsdWU6IHN0cmluZykge1xuICAgICAgICAvLyB0aGlzLl9uYW1lID0gdmFsdWU7XG4gICAgICAgIHRoaXMuX3NldEF2YXRhck5hbWUodmFsdWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWktOWDj+Wkp+Wwj1xuICAgICAqIEB0eXBlIDE2IHwgMjIgfCAyNCB8IDI4IHwgMzIgfCAzNiB8IDQ0IHwgNDggfCA2OCB8IDExMCB8IDE2MCB8IHh4cygyMnB4KSB8IHhzKDI0cHgpIHwgc20oMzJweCkgfCBtZCgzNnB4KSB8IGxnKDQ4cHgpXG4gICAgICogQGRlZmF1bHQgbWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlTaXplKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRoeUF2YXRhclNpemVNYXBbdmFsdWVdKSB7XG4gICAgICAgICAgICB0aGlzLl9zZXRBdmF0YXJTaXplKHRoeUF2YXRhclNpemVNYXBbdmFsdWVdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NldEF2YXRhclNpemUoKHZhbHVlIGFzIG51bWJlcikgKiAxKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOW3suW6n+W8g++8jOivt+S9v+eUqCB0aHlSZW1vdmFibGVcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSlcbiAgICBzZXQgdGh5U2hvd1JlbW92ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9zaG93UmVtb3ZlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5bGV56S656e76Zmk5oyJ6ZKuXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KVxuICAgIHNldCB0aHlSZW1vdmFibGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fc2hvd1JlbW92ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWbvueJh+iHquWumuS5ieexu1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUltZ0NsYXNzOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKbnpoHnlKhcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeURpc2FibGVkOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICog5Zu+54mH5Yqg6L29562W55WlXG4gICAgICogQHR5cGUgZWFnZXIo56uL5Y2z5Yqg6L29KSB8IGxhenko5bu26L+f5Yqg6L29KVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUxvYWRpbmc/OiBUaHlBdmF0YXJMb2FkaW5nO1xuXG4gICAgLyoqXG4gICAgICog5Zu+54mH5Yqg6L295LyY5YWI57qnXG4gICAgICogQHR5cGUgYXV0byjpu5jorqQpIHwgaGlnaCjpq5gpIHwgbG93KOS9jilcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlGZXRjaFByaW9yaXR5PzogVGh5QXZhdGFyRmV0Y2hQcmlvcml0eTtcblxuICAgIHByaXZhdGUgX3NldEF2YXRhclNpemUoc2l6ZTogbnVtYmVyKSB7XG4gICAgICAgIGlmIChzaXplQXJyYXkuaW5kZXhPZihzaXplKSA+IC0xKSB7XG4gICAgICAgICAgICB0aGlzLl9zaXplID0gc2l6ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NpemUgPSB0aGlzLmZpbmRDbG9zZXN0U2l6ZShzaXplQXJyYXksIHNpemUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnVwZGF0ZUNsYXNzKFtgdGh5LWF2YXRhci0ke3RoaXMuX3NpemV9YF0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmluZENsb3Nlc3RTaXplKHNpemVBcnJheTogbnVtYmVyW10sIGN1cnJlbnRTaXplOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBsZXQgY2xvc2VzdFZhbHVlID0gc2l6ZUFycmF5WzBdO1xuICAgICAgICBsZXQgY2xvc2VzdERpZmZlcmVuY2UgPSBNYXRoLmFicyhjbG9zZXN0VmFsdWUgLSBjdXJyZW50U2l6ZSk7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPCBzaXplQXJyYXkubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnREaWZmZXJlbmNlID0gTWF0aC5hYnMoc2l6ZUFycmF5W2ldIC0gY3VycmVudFNpemUpO1xuICAgICAgICAgICAgaWYgKGN1cnJlbnREaWZmZXJlbmNlIDw9IGNsb3Nlc3REaWZmZXJlbmNlKSB7XG4gICAgICAgICAgICAgICAgY2xvc2VzdFZhbHVlID0gc2l6ZUFycmF5W2ldO1xuICAgICAgICAgICAgICAgIGNsb3Nlc3REaWZmZXJlbmNlID0gY3VycmVudERpZmZlcmVuY2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY2xvc2VzdFZhbHVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldEF2YXRhclNyYyhzcmM6IHN0cmluZykge1xuICAgICAgICBpZiAoc3JjICYmIHRoaXMudGh5QXZhdGFyU2VydmljZS5pZ25vcmVBdmF0YXJTcmNQYXRocy5pbmRleE9mKHNyYykgPCAwKSB7XG4gICAgICAgICAgICB0aGlzLl9zcmMgPSBzcmM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zcmMgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2V0QXZhdGFyTmFtZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLnRoeUF2YXRhclNlcnZpY2UubmFtZVRyYW5zZm9ybSh2YWx1ZSk7XG4gICAgICAgIGlmIChpc1N0cmluZyhuYW1lKSkge1xuICAgICAgICAgICAgdGhpcy5hdmF0YXJOYW1lID0gbmFtZSBhcyBzdHJpbmc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmF2YXRhck5hbWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuYXZhdGFyTmFtZVNhZmVIdG1sID0gbmFtZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaG9zdFJlbmRlcmVyID0gdXNlSG9zdFJlbmRlcmVyKCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSB0aHlBdmF0YXJTZXJ2aWNlOiBUaHlBdmF0YXJTZXJ2aWNlLFxuICAgICAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICAgICkge31cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAoIXRoaXMuX3NpemUpIHtcbiAgICAgICAgICAgIHRoaXMuX3NldEF2YXRhclNpemUoREVGQVVMVF9TSVpFKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci51cGRhdGVDbGFzcyhbYHRoeS1hdmF0YXItJHt0aGlzLl9zaXplfWBdKTtcbiAgICB9XG5cbiAgICByZW1vdmUoJGV2ZW50OiBFdmVudCkge1xuICAgICAgICB0aGlzLnRoeU9uUmVtb3ZlLmVtaXQoJGV2ZW50KTtcbiAgICAgICAgdGhpcy50aHlSZW1vdmUuZW1pdCgkZXZlbnQpO1xuICAgIH1cblxuICAgIGF2YXRhckltZ0Vycm9yKCRldmVudDogRXZlbnQpIHtcbiAgICAgICAgdGhpcy5fc2V0QXZhdGFyU3JjKG51bGwpO1xuICAgICAgICB0aGlzLnRoeUVycm9yLmVtaXQoJGV2ZW50KTtcbiAgICB9XG59XG4iLCI8aW1nXG4gICpuZ0lmPVwiX3NyYzsgZWxzZSBub1NyY1wiXG4gIFtzcmNdPVwiX3NyYyB8IHRoeUF2YXRhclNyYzogX3NpemVcIlxuICBjbGFzcz1cImF2YXRhci1hdmF0YXJcIlxuICBbbmdDbGFzc109XCJ0aHlJbWdDbGFzc1wiXG4gIGFsdD1cInt7IGF2YXRhck5hbWUgfHwgJycgfX1cIlxuICBbYXR0ci5sb2FkaW5nXT1cInRoeUxvYWRpbmdcIlxuICBbYXR0ci5mZXRjaHByaW9yaXR5XT1cInRoeUZldGNoUHJpb3JpdHlcIlxuICAoZXJyb3IpPVwiYXZhdGFySW1nRXJyb3IoJGV2ZW50KVwiXG4vPlxuXG48bmctdGVtcGxhdGUgI25vU3JjPlxuICA8c3BhbiBjbGFzcz1cImF2YXRhci1kZWZhdWx0XCIgW25nU3R5bGVdPVwiYXZhdGFyTmFtZSB8IGF2YXRhckJnQ29sb3JcIj5cbiAgICA8ZGl2Pnt7IGF2YXRhck5hbWUgfCBhdmF0YXJTaG9ydE5hbWUgfX08L2Rpdj5cbiAgPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlIFtuZ0lmXT1cInRoeVNob3dOYW1lXCI+XG4gIDxkaXYgKm5nSWY9XCJhdmF0YXJOYW1lU2FmZUh0bWw7IGVsc2Ugbm9BdmF0YXJOYW1lU2FmZUh0bWxcIiBjbGFzcz1cImF2YXRhci1uYW1lXCIgW2lubmVySHRtbF09XCJhdmF0YXJOYW1lU2FmZUh0bWxcIj48L2Rpdj5cbiAgPG5nLXRlbXBsYXRlICNub0F2YXRhck5hbWVTYWZlSHRtbD5cbiAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLW5hbWVcIj57eyBhdmF0YXJOYW1lIH19PC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuXG48YSAqbmdJZj1cIl9zaG93UmVtb3ZlXCIgKGNsaWNrKT1cInJlbW92ZSgkZXZlbnQpXCIgaHJlZj1cImphdmFzY3JpcHQ6O1wiIGNsYXNzPVwicmVtb3ZlLWxpbmsgYXZhdGFyLXJlbW92ZVwiPlxuICA8dGh5LWljb24gY2xhc3M9XCJyZW1vdmUtbGluay1pY29uXCIgdGh5SWNvbk5hbWU9XCJjbG9zZS1jaXJjbGUtYm9sZC1maWxsXCI+PC90aHktaWNvbj5cbjwvYT5cbjxkaXYgKm5nSWY9XCJ0aHlEaXNhYmxlZFwiIGNsYXNzPVwidGh5LWF2YXRhci1kaXNhYmxlZFwiPlxuICA8dGh5LWljb24gY2xhc3M9XCJ0aHktYXZhdGFyLWRpc2FibGVkLWljb25cIiB0aHlJY29uTmFtZT1cImJhblwiPjwvdGh5LWljb24+XG48L2Rpdj5cbiJdfQ==
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekksT0FBTyxFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUVuRCxNQUFNLFNBQVMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUVqRSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO0FBRS9CLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzVCLEdBQUcsRUFBRSxFQUFFO0lBQ1AsRUFBRSxFQUFFLEVBQUU7SUFDTixFQUFFLEVBQUUsRUFBRTtJQUNOLEVBQUUsRUFBRSxFQUFFO0lB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SSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLENBQUM7OEdBMUtRLFNBQVM7a0dBQVQsU0FBUyxvR0FtQ0UscUJBQXFCLCtHQXVDckIscUJBQXFCLGtEQVNyQixxQkFBcUIsMkVBY3JCLHFCQUFxQixvUEN4STdDLCsvQkFtQ0EsNENERWMsT0FBTyxvRkFBRSxPQUFPLDJFQUFFLE9BQU8saU1BQUUsbUJBQW1CLG1EQUFFLGlCQUFpQixpREFBRSxhQUFhOzsyRkFFakYsU0FBUztrQkFQckIsU0FBUzsrQkFDSSxZQUFZLG1CQUVMLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxDQUFDOzhCQWUxRCxTQUFTO3NCQUF6QyxXQUFXO3VCQUFDLGtCQUFrQjtnQkFNckIsV0FBVztzQkFBcEIsTUFBTTtnQkFLRyxTQUFTO3NCQUFsQixNQUFNO2dCQUtHLFFBQVE7c0JBQWpCLE1BQU07Z0JBTXNDLFdBQVc7c0JBQXZELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBT3ZDLE1BQU07c0JBRFQsS0FBSztnQkFTRixPQUFPO3NCQURWLEtBQUs7Z0JBWUYsT0FBTztzQkFEVixLQUFLO2dCQWVGLGFBQWE7c0JBRGhCLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBVXZDLFlBQVk7c0JBRGYsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFRbEMsV0FBVztzQkFBbkIsS0FBSztnQkFNdUMsV0FBVztzQkFBdkQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFNbEMsVUFBVTtzQkFBbEIsS0FBSztnQkFNRyxnQkFBZ0I7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IGlzU3RyaW5nLCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgdXNlSG9zdFJlbmRlcmVyIH0gZnJvbSAnQHRldGh5cy9jZGsvZG9tJztcbmltcG9ydCB7IFRoeUF2YXRhclNlcnZpY2UgfSBmcm9tICcuL2F2YXRhci5zZXJ2aWNlJztcbmltcG9ydCB7IEF2YXRhclNob3J0TmFtZVBpcGUsIEF2YXRhckJnQ29sb3JQaXBlLCBBdmF0YXJTcmNQaXBlIH0gZnJvbSAnLi9hdmF0YXIucGlwZSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcbmltcG9ydCB7IE5nQ2xhc3MsIE5nU3R5bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5jb25zdCBzaXplQXJyYXkgPSBbMTYsIDIyLCAyNCwgMjgsIDMyLCAzNiwgNDQsIDQ4LCA2OCwgMTEwLCAxNjBdO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9TSVpFID0gMzY7XG5cbmV4cG9ydCBjb25zdCB0aHlBdmF0YXJTaXplTWFwID0ge1xuICAgIHh4czogMjIsXG4gICAgeHM6IDI0LFxuICAgIHNtOiAzMixcbiAgICBtZDogMzYsXG4gICAgbGc6IDQ4XG59O1xuXG4vKiogaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvZW1iZWRkZWQtY29udGVudC5odG1sI2F0dHItaW1nLWxvYWRpbmcgKi9cbmV4cG9ydCB0eXBlIFRoeUF2YXRhckxvYWRpbmcgPSAnZWFnZXInIHwgJ2xhenknO1xuXG4vKiogaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby9wcmlvcml0eS1oaW50cy8jaWRsLWluZGV4ICovXG5leHBvcnQgdHlwZSBUaHlBdmF0YXJGZXRjaFByaW9yaXR5ID0gJ2hpZ2gnIHwgJ2xvdycgfCAnYXV0byc7XG5cbi8qKlxuICog5aS05YOP57uE5Lu2XG4gKiBAbmFtZSB0aHktYXZhdGFyXG4gKiBAb3JkZXIgMTBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktYXZhdGFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYXZhdGFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtOZ0NsYXNzLCBOZ1N0eWxlLCBUaHlJY29uLCBBdmF0YXJTaG9ydE5hbWVQaXBlLCBBdmF0YXJCZ0NvbG9yUGlwZSwgQXZhdGFyU3JjUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgVGh5QXZhdGFyIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHRoeUF2YXRhclNlcnZpY2UgPSBpbmplY3QoVGh5QXZhdGFyU2VydmljZSk7XG4gICAgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICAgIF9zcmM6IHN0cmluZztcbiAgICBfbmFtZTogc3RyaW5nO1xuICAgIF9zaXplOiBudW1iZXI7XG4gICAgX3Nob3dSZW1vdmUgPSBmYWxzZTtcblxuICAgIHB1YmxpYyBhdmF0YXJTcmM6IHN0cmluZztcbiAgICBwdWJsaWMgYXZhdGFyTmFtZT86IHN0cmluZztcbiAgICBwdWJsaWMgYXZhdGFyTmFtZVNhZmVIdG1sPzogU2FmZUh0bWw7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRoeS1hdmF0YXInKSBfaXNBdmF0YXIgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogKiDlt7Llup/lvIPvvIzor7fkvb/nlKggdGh5UmVtb3ZlXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgdGh5T25SZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICAvKipcbiAgICAgKiAg56e76Zmk5oyJ6ZKu55qE5LqL5Lu2LCDlvZMgdGh5UmVtb3ZhYmxlIOS4uiB0cnVlIOaXtui1t+S9nOeUqFxuICAgICAqL1xuICAgIEBPdXRwdXQoKSB0aHlSZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICAvKipcbiAgICAgKiAg5aS05YOPIGltZyDliqDovb0gZXJyb3Ig5pe26Kem5Y+RXG4gICAgICovXG4gICAgQE91dHB1dCgpIHRoeUVycm9yOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuWxleekuuS6uuWRmOWQjeensFxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSkgdGh5U2hvd05hbWU6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDlpLTlg4/ot6/lvoTlnLDlnYAsIOm7mOiupOS4uuWFqOi3r+W+hO+8jOWmguaenOS4jeaYr+WFqOi3r+W+hO+8jOWPr+S7pemAmui/h+iHquWumuS5ieacjeWKoSBUaHlBdmF0YXJTZXJ2aWNl77yM6YeN5YaZIHNyY1RyYW5zZm9ybSDmlrnms5Xlrp7njrDovazmjaJcbiAgICAgKlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeVNyYyh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX3NldEF2YXRhclNyYyh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5Lq65ZGY5ZCN56ew77yI5Y+v6K6+572u6Ieq5a6a5LmJ5ZCN56ew77yM6ZyA6YCa6L+H6Ieq5a6a5LmJ5pyN5YqhIFRoeUF2YXRhclNlcnZpY2XvvIzph43lhpkgbmFtZVRyYW5zZm9ybSDmlrnms5Xljrvlrp7njrDovazmjaLvvIlcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlOYW1lKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgLy8gdGhpcy5fbmFtZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLl9zZXRBdmF0YXJOYW1lKHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlpLTlg4/lpKflsI9cbiAgICAgKiBAdHlwZSAxNiB8IDIyIHwgMjQgfCAyOCB8IDMyIHwgMzYgfCA0NCB8IDQ4IHwgNjggfCAxMTAgfCAxNjAgfCB4eHMoMjJweCkgfCB4cygyNHB4KSB8IHNtKDMycHgpIHwgbWQoMzZweCkgfCBsZyg0OHB4KVxuICAgICAqIEBkZWZhdWx0IG1kXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5U2l6ZSh2YWx1ZTogbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgICAgIGlmICh0aHlBdmF0YXJTaXplTWFwW3ZhbHVlXSkge1xuICAgICAgICAgICAgdGhpcy5fc2V0QXZhdGFyU2l6ZSh0aHlBdmF0YXJTaXplTWFwW3ZhbHVlXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zZXRBdmF0YXJTaXplKCh2YWx1ZSBhcyBudW1iZXIpICogMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlt7Llup/lvIPvvIzor7fkvb/nlKggdGh5UmVtb3ZhYmxlXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeVNob3dSZW1vdmUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fc2hvd1JlbW92ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuWxleekuuenu+mZpOaMiemSrlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSlcbiAgICBzZXQgdGh5UmVtb3ZhYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3Nob3dSZW1vdmUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlm77niYfoh6rlrprkuYnnsbtcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlJbWdDbGFzczogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm56aB55SoXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlEaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIOWbvueJh+WKoOi9veetlueVpVxuICAgICAqIEB0eXBlIGVhZ2VyKOeri+WNs+WKoOi9vSkgfCBsYXp5KOW7tui/n+WKoOi9vSlcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlMb2FkaW5nPzogVGh5QXZhdGFyTG9hZGluZztcblxuICAgIC8qKlxuICAgICAqIOWbvueJh+WKoOi9veS8mOWFiOe6p1xuICAgICAqIEB0eXBlIGF1dG8o6buY6K6kKSB8IGhpZ2go6auYKSB8IGxvdyjkvY4pXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5RmV0Y2hQcmlvcml0eT86IFRoeUF2YXRhckZldGNoUHJpb3JpdHk7XG5cbiAgICBwcml2YXRlIF9zZXRBdmF0YXJTaXplKHNpemU6IG51bWJlcikge1xuICAgICAgICBpZiAoc2l6ZUFycmF5LmluZGV4T2Yoc2l6ZSkgPiAtMSkge1xuICAgICAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zaXplID0gdGhpcy5maW5kQ2xvc2VzdFNpemUoc2l6ZUFycmF5LCBzaXplKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci51cGRhdGVDbGFzcyhbYHRoeS1hdmF0YXItJHt0aGlzLl9zaXplfWBdKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbmRDbG9zZXN0U2l6ZShzaXplQXJyYXk6IG51bWJlcltdLCBjdXJyZW50U2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgbGV0IGNsb3Nlc3RWYWx1ZSA9IHNpemVBcnJheVswXTtcbiAgICAgICAgbGV0IGNsb3Nlc3REaWZmZXJlbmNlID0gTWF0aC5hYnMoY2xvc2VzdFZhbHVlIC0gY3VycmVudFNpemUpO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgc2l6ZUFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50RGlmZmVyZW5jZSA9IE1hdGguYWJzKHNpemVBcnJheVtpXSAtIGN1cnJlbnRTaXplKTtcbiAgICAgICAgICAgIGlmIChjdXJyZW50RGlmZmVyZW5jZSA8PSBjbG9zZXN0RGlmZmVyZW5jZSkge1xuICAgICAgICAgICAgICAgIGNsb3Nlc3RWYWx1ZSA9IHNpemVBcnJheVtpXTtcbiAgICAgICAgICAgICAgICBjbG9zZXN0RGlmZmVyZW5jZSA9IGN1cnJlbnREaWZmZXJlbmNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNsb3Nlc3RWYWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zZXRBdmF0YXJTcmMoc3JjOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHNyYyAmJiB0aGlzLnRoeUF2YXRhclNlcnZpY2UuaWdub3JlQXZhdGFyU3JjUGF0aHMuaW5kZXhPZihzcmMpIDwgMCkge1xuICAgICAgICAgICAgdGhpcy5fc3JjID0gc3JjO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fc3JjID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX3NldEF2YXRhck5hbWUodmFsdWU6IHN0cmluZykge1xuICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50aHlBdmF0YXJTZXJ2aWNlLm5hbWVUcmFuc2Zvcm0odmFsdWUpO1xuICAgICAgICBpZiAoaXNTdHJpbmcobmFtZSkpIHtcbiAgICAgICAgICAgIHRoaXMuYXZhdGFyTmFtZSA9IG5hbWUgYXMgc3RyaW5nO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hdmF0YXJOYW1lID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLmF2YXRhck5hbWVTYWZlSHRtbCA9IG5hbWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGhvc3RSZW5kZXJlciA9IHVzZUhvc3RSZW5kZXJlcigpO1xuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICghdGhpcy5fc2l6ZSkge1xuICAgICAgICAgICAgdGhpcy5fc2V0QXZhdGFyU2l6ZShERUZBVUxUX1NJWkUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnVwZGF0ZUNsYXNzKFtgdGh5LWF2YXRhci0ke3RoaXMuX3NpemV9YF0pO1xuICAgIH1cblxuICAgIHJlbW92ZSgkZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIHRoaXMudGh5T25SZW1vdmUuZW1pdCgkZXZlbnQpO1xuICAgICAgICB0aGlzLnRoeVJlbW92ZS5lbWl0KCRldmVudCk7XG4gICAgfVxuXG4gICAgYXZhdGFySW1nRXJyb3IoJGV2ZW50OiBFdmVudCkge1xuICAgICAgICB0aGlzLl9zZXRBdmF0YXJTcmMobnVsbCk7XG4gICAgICAgIHRoaXMudGh5RXJyb3IuZW1pdCgkZXZlbnQpO1xuICAgIH1cbn1cbiIsIkBpZiAoX3NyYykge1xuICA8aW1nXG4gICAgW3NyY109XCJfc3JjIHwgdGh5QXZhdGFyU3JjOiBfc2l6ZVwiXG4gICAgY2xhc3M9XCJhdmF0YXItYXZhdGFyXCJcbiAgICBbbmdDbGFzc109XCJ0aHlJbWdDbGFzc1wiXG4gICAgYWx0PVwie3sgYXZhdGFyTmFtZSB8fCAnJyB9fVwiXG4gICAgW2F0dHIubG9hZGluZ109XCJ0aHlMb2FkaW5nXCJcbiAgICBbYXR0ci5mZXRjaHByaW9yaXR5XT1cInRoeUZldGNoUHJpb3JpdHlcIlxuICAgIChlcnJvcik9XCJhdmF0YXJJbWdFcnJvcigkZXZlbnQpXCJcbiAgICAvPlxufSBAZWxzZSB7XG4gIDxzcGFuIGNsYXNzPVwiYXZhdGFyLWRlZmF1bHRcIiBbbmdTdHlsZV09XCJhdmF0YXJOYW1lIHwgYXZhdGFyQmdDb2xvclwiPlxuICAgIDxkaXY+e3sgYXZhdGFyTmFtZSB8IGF2YXRhclNob3J0TmFtZSB9fTwvZGl2PlxuICA8L3NwYW4+XG59XG5cblxuQGlmICh0aHlTaG93TmFtZSkge1xuICBAaWYgKGF2YXRhck5hbWVTYWZlSHRtbCkge1xuICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItbmFtZVwiIFtpbm5lckh0bWxdPVwiYXZhdGFyTmFtZVNhZmVIdG1sXCI+PC9kaXY+XG4gIH0gQGVsc2Uge1xuICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItbmFtZVwiPnt7IGF2YXRhck5hbWUgfX08L2Rpdj5cbiAgfVxufVxuXG5AaWYgKF9zaG93UmVtb3ZlKSB7XG4gIDxhIChjbGljayk9XCJyZW1vdmUoJGV2ZW50KVwiIGhyZWY9XCJqYXZhc2NyaXB0OjtcIiBjbGFzcz1cInJlbW92ZS1saW5rIGF2YXRhci1yZW1vdmVcIj5cbiAgICA8dGh5LWljb24gY2xhc3M9XCJyZW1vdmUtbGluay1pY29uXCIgdGh5SWNvbk5hbWU9XCJjbG9zZS1jaXJjbGUtYm9sZC1maWxsXCI+PC90aHktaWNvbj5cbiAgPC9hPlxufVxuQGlmICh0aHlEaXNhYmxlZCkge1xuICA8ZGl2IGNsYXNzPVwidGh5LWF2YXRhci1kaXNhYmxlZFwiPlxuICAgIDx0aHktaWNvbiBjbGFzcz1cInRoeS1hdmF0YXItZGlzYWJsZWQtaWNvblwiIHRoeUljb25OYW1lPVwiYmFuXCI+PC90aHktaWNvbj5cbiAgPC9kaXY+XG59XG4iXX0=
@@ -1,7 +1,6 @@
1
- import { Pipe } from '@angular/core';
1
+ import { Pipe, inject } from '@angular/core';
2
2
  import { ThyAvatarService } from './avatar.service';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "./avatar.service";
5
4
  /**
6
5
  * `\u4e00`: https://www.compart.com/en/unicode/U+4E00
7
6
  * `\u9fa5`: https://www.compart.com/en/unicode/U+9FA5
@@ -70,15 +69,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
70
69
  * @private
71
70
  */
72
71
  export class AvatarSrcPipe {
73
- constructor(thyAvatarService) {
74
- this.thyAvatarService = thyAvatarService;
72
+ constructor() {
73
+ this.thyAvatarService = inject(ThyAvatarService);
75
74
  }
76
75
  transform(src, size) {
77
76
  return this.thyAvatarService.srcTransform
78
77
  ? this.thyAvatarService.srcTransform(src, size)
79
78
  : this.thyAvatarService.avatarSrcTransform(src, size);
80
79
  }
81
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AvatarSrcPipe, deps: [{ token: i1.ThyAvatarService }], target: i0.ɵɵFactoryTarget.Pipe }); }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AvatarSrcPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
82
81
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: AvatarSrcPipe, isStandalone: true, name: "thyAvatarSrc" }); }
83
82
  }
84
83
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AvatarSrcPipe, decorators: [{
@@ -87,6 +86,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
87
86
  name: 'thyAvatarSrc',
88
87
  standalone: true
89
88
  }]
90
- }], ctorParameters: () => [{ type: i1.ThyAvatarService }] });
89
+ }] });
91
90
  export const AvatarPipes = [AvatarShortNamePipe, AvatarBgColorPipe, AvatarSrcPipe];
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXZhdGFyL2F2YXRhci5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFFcEQ7OztHQUdHO0FBQ0gsTUFBTSx3QkFBd0IsR0FBRyxvQkFBb0IsQ0FBQztBQUV0RCxNQUFNLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDO0FBRTlDOztHQUVHO0FBS0gsTUFBTSxPQUFPLG1CQUFtQjtJQUM1QixTQUFTLENBQUMsSUFBK0I7UUFDckMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1IsT0FBTyxFQUFFLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVuQixJQUFJLHdCQUF3QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNELE1BQU0sS0FBSyxHQUFhLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkUsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakYsQ0FBQzs4R0FsQlEsbUJBQW1COzRHQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBSi9CLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGlCQUFpQjtvQkFDdkIsVUFBVSxFQUFFLElBQUk7aUJBQ25COztBQXNCRDs7R0FFRztBQUtILE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsU0FBUyxDQUFDLElBQVk7UUFDbEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1IsT0FBTztRQUNYLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbkgsTUFBTSxTQUFTLEdBQWEsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQyxNQUFNLElBQUksR0FDTixJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQ25CLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUNaLFVBQVUsTUFBTSxFQUFFLElBQUk7Z0JBQ2xCLE1BQU0sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbkMsT0FBTyxNQUFNLENBQUM7WUFDbEIsQ0FBQyxFQUNELEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUNmLENBQUMsS0FBSztZQUNULENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDWixPQUFPO1lBQ0gsa0JBQWtCLEVBQUUsTUFBTSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7U0FDdkMsQ0FBQztJQUNOLENBQUM7OEdBcEJRLGlCQUFpQjs0R0FBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUo3QixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxlQUFlO29CQUNyQixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7O0FBd0JEOztHQUVHO0FBS0gsTUFBTSxPQUFPLGFBQWE7SUFDdEIsWUFBb0IsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFBRyxDQUFDO0lBQzFELFNBQVMsQ0FBQyxHQUFXLEVBQUUsSUFBWTtRQUMvQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZO1lBQ3JDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUM7WUFDL0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUQsQ0FBQzs4R0FOUSxhQUFhOzRHQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBSnpCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs7QUFVRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeUF2YXRhclNlcnZpY2UgfSBmcm9tICcuL2F2YXRhci5zZXJ2aWNlJztcblxuLyoqXG4gKiBgXFx1NGUwMGA6IGh0dHBzOi8vd3d3LmNvbXBhcnQuY29tL2VuL3VuaWNvZGUvVSs0RTAwXG4gKiBgXFx1OWZhNWA6IGh0dHBzOi8vd3d3LmNvbXBhcnQuY29tL2VuL3VuaWNvZGUvVSs5RkE1XG4gKi9cbmNvbnN0IFVOSUZJRURfSURFT0dSQVBIU19SRUdFWCA9IC9eW1xcdTRlMDAtXFx1OWZhNV0rJC87XG5cbmNvbnN0IFNFVF9PRl9MRVRURVJTX1JFR0VYID0gL15bYS16QS1aXFwvIF0rJC87XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuQFBpcGUoe1xuICAgIG5hbWU6ICdhdmF0YXJTaG9ydE5hbWUnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQXZhdGFyU2hvcnROYW1lUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybShuYW1lOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCFuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cblxuICAgICAgICBuYW1lID0gbmFtZS50cmltKCk7XG5cbiAgICAgICAgaWYgKFVOSUZJRURfSURFT0dSQVBIU19SRUdFWC50ZXN0KG5hbWUpICYmIG5hbWUubGVuZ3RoID4gMikge1xuICAgICAgICAgICAgcmV0dXJuIG5hbWUuc2xpY2UobmFtZS5sZW5ndGggLSAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChTRVRfT0ZfTEVUVEVSU19SRUdFWC50ZXN0KG5hbWUpICYmIG5hbWUuaW5kZXhPZignICcpID4gMCkge1xuICAgICAgICAgICAgY29uc3Qgd29yZHM6IHN0cmluZ1tdID0gbmFtZS5zcGxpdCgnICcpO1xuICAgICAgICAgICAgcmV0dXJuICh3b3Jkc1swXS5zbGljZSgwLCAxKSArIHdvcmRzWzFdLnNsaWNlKDAsIDEpKS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5hbWUubGVuZ3RoID4gMiA/IG5hbWUuc2xpY2UoMCwgMikudG9VcHBlckNhc2UoKSA6IG5hbWUudG9VcHBlckNhc2UoKTtcbiAgICB9XG59XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuQFBpcGUoe1xuICAgIG5hbWU6ICdhdmF0YXJCZ0NvbG9yJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEF2YXRhckJnQ29sb3JQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKG5hbWU6IHN0cmluZykge1xuICAgICAgICBpZiAoIW5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjb2xvcnMgPSBbJyM1NmFiZmInLCAnIzVkY2ZmZicsICcjODRlMTdlJywgJyM3M2Q4OTcnLCAnI2ZmOWY3MycsICcjZmE4ODg4JywgJyNmYjdmYjcnLCAnIzlhN2VmNCcsICcjODY4YWY2J107XG4gICAgICAgIGNvbnN0IG5hbWVBcnJheTogc3RyaW5nW10gPSBuYW1lLnNwbGl0KCcnKTtcbiAgICAgICAgY29uc3QgY29kZTogbnVtYmVyID1cbiAgICAgICAgICAgIG5hbWUgJiYgbmFtZS5sZW5ndGggPiAwXG4gICAgICAgICAgICAgICAgPyBuYW1lQXJyYXkucmVkdWNlKFxuICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChyZXN1bHQsIGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnZhbHVlICs9IGl0ZW0uY2hhckNvZGVBdCgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIHsgdmFsdWU6IDAgfVxuICAgICAgICAgICAgICAgICAgKS52YWx1ZVxuICAgICAgICAgICAgICAgIDogMDtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdiYWNrZ3JvdW5kLWNvbG9yJzogY29sb3JzW2NvZGUgJSA5XVxuICAgICAgICB9O1xuICAgIH1cbn1cblxuLyoqXG4gKiBAcHJpdmF0ZVxuICovXG5AUGlwZSh7XG4gICAgbmFtZTogJ3RoeUF2YXRhclNyYycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBBdmF0YXJTcmNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0aHlBdmF0YXJTZXJ2aWNlOiBUaHlBdmF0YXJTZXJ2aWNlKSB7fVxuICAgIHRyYW5zZm9ybShzcmM6IHN0cmluZywgc2l6ZTogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRoeUF2YXRhclNlcnZpY2Uuc3JjVHJhbnNmb3JtXG4gICAgICAgICAgICA/IHRoaXMudGh5QXZhdGFyU2VydmljZS5zcmNUcmFuc2Zvcm0oc3JjLCBzaXplKVxuICAgICAgICAgICAgOiB0aGlzLnRoeUF2YXRhclNlcnZpY2UuYXZhdGFyU3JjVHJhbnNmb3JtKHNyYywgc2l6ZSk7XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3QgQXZhdGFyUGlwZXMgPSBbQXZhdGFyU2hvcnROYW1lUGlwZSwgQXZhdGFyQmdDb2xvclBpcGUsIEF2YXRhclNyY1BpcGVdO1xuIl19
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXZhdGFyL2F2YXRhci5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFcEQ7OztHQUdHO0FBQ0gsTUFBTSx3QkFBd0IsR0FBRyxvQkFBb0IsQ0FBQztBQUV0RCxNQUFNLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDO0FBRTlDOztHQUVHO0FBS0gsTUFBTSxPQUFPLG1CQUFtQjtJQUM1QixTQUFTLENBQUMsSUFBK0I7UUFDckMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1IsT0FBTyxFQUFFLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVuQixJQUFJLHdCQUF3QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNELE1BQU0sS0FBSyxHQUFhLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkUsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakYsQ0FBQzs4R0FsQlEsbUJBQW1COzRHQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBSi9CLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGlCQUFpQjtvQkFDdkIsVUFBVSxFQUFFLElBQUk7aUJBQ25COztBQXNCRDs7R0FFRztBQUtILE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsU0FBUyxDQUFDLElBQVk7UUFDbEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1IsT0FBTztRQUNYLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbkgsTUFBTSxTQUFTLEdBQWEsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQyxNQUFNLElBQUksR0FDTixJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQ25CLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUNaLFVBQVUsTUFBTSxFQUFFLElBQUk7Z0JBQ2xCLE1BQU0sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbkMsT0FBTyxNQUFNLENBQUM7WUFDbEIsQ0FBQyxFQUNELEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUNmLENBQUMsS0FBSztZQUNULENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDWixPQUFPO1lBQ0gsa0JBQWtCLEVBQUUsTUFBTSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7U0FDdkMsQ0FBQztJQUNOLENBQUM7OEdBcEJRLGlCQUFpQjs0R0FBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUo3QixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxlQUFlO29CQUNyQixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7O0FBd0JEOztHQUVHO0FBS0gsTUFBTSxPQUFPLGFBQWE7SUFKMUI7UUFLWSxxQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztLQU92RDtJQUxHLFNBQVMsQ0FBQyxHQUFXLEVBQUUsSUFBWTtRQUMvQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZO1lBQ3JDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUM7WUFDL0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUQsQ0FBQzs4R0FQUSxhQUFhOzRHQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBSnpCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs7QUFXRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGh5QXZhdGFyU2VydmljZSB9IGZyb20gJy4vYXZhdGFyLnNlcnZpY2UnO1xuXG4vKipcbiAqIGBcXHU0ZTAwYDogaHR0cHM6Ly93d3cuY29tcGFydC5jb20vZW4vdW5pY29kZS9VKzRFMDBcbiAqIGBcXHU5ZmE1YDogaHR0cHM6Ly93d3cuY29tcGFydC5jb20vZW4vdW5pY29kZS9VKzlGQTVcbiAqL1xuY29uc3QgVU5JRklFRF9JREVPR1JBUEhTX1JFR0VYID0gL15bXFx1NGUwMC1cXHU5ZmE1XSskLztcblxuY29uc3QgU0VUX09GX0xFVFRFUlNfUkVHRVggPSAvXlthLXpBLVpcXC8gXSskLztcblxuLyoqXG4gKiBAcHJpdmF0ZVxuICovXG5AUGlwZSh7XG4gICAgbmFtZTogJ2F2YXRhclNob3J0TmFtZScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBBdmF0YXJTaG9ydE5hbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKG5hbWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIW5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIG5hbWUgPSBuYW1lLnRyaW0oKTtcblxuICAgICAgICBpZiAoVU5JRklFRF9JREVPR1JBUEhTX1JFR0VYLnRlc3QobmFtZSkgJiYgbmFtZS5sZW5ndGggPiAyKSB7XG4gICAgICAgICAgICByZXR1cm4gbmFtZS5zbGljZShuYW1lLmxlbmd0aCAtIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFNFVF9PRl9MRVRURVJTX1JFR0VYLnRlc3QobmFtZSkgJiYgbmFtZS5pbmRleE9mKCcgJykgPiAwKSB7XG4gICAgICAgICAgICBjb25zdCB3b3Jkczogc3RyaW5nW10gPSBuYW1lLnNwbGl0KCcgJyk7XG4gICAgICAgICAgICByZXR1cm4gKHdvcmRzWzBdLnNsaWNlKDAsIDEpICsgd29yZHNbMV0uc2xpY2UoMCwgMSkpLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbmFtZS5sZW5ndGggPiAyID8gbmFtZS5zbGljZSgwLCAyKS50b1VwcGVyQ2FzZSgpIDogbmFtZS50b1VwcGVyQ2FzZSgpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBAcHJpdmF0ZVxuICovXG5AUGlwZSh7XG4gICAgbmFtZTogJ2F2YXRhckJnQ29sb3InLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQXZhdGFyQmdDb2xvclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0obmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghbmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNvbG9ycyA9IFsnIzU2YWJmYicsICcjNWRjZmZmJywgJyM4NGUxN2UnLCAnIzczZDg5NycsICcjZmY5ZjczJywgJyNmYTg4ODgnLCAnI2ZiN2ZiNycsICcjOWE3ZWY0JywgJyM4NjhhZjYnXTtcbiAgICAgICAgY29uc3QgbmFtZUFycmF5OiBzdHJpbmdbXSA9IG5hbWUuc3BsaXQoJycpO1xuICAgICAgICBjb25zdCBjb2RlOiBudW1iZXIgPVxuICAgICAgICAgICAgbmFtZSAmJiBuYW1lLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICA/IG5hbWVBcnJheS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gKHJlc3VsdCwgaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQudmFsdWUgKz0gaXRlbS5jaGFyQ29kZUF0KDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgeyB2YWx1ZTogMCB9XG4gICAgICAgICAgICAgICAgICApLnZhbHVlXG4gICAgICAgICAgICAgICAgOiAwO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgJ2JhY2tncm91bmQtY29sb3InOiBjb2xvcnNbY29kZSAlIDldXG4gICAgICAgIH07XG4gICAgfVxufVxuXG4vKipcbiAqIEBwcml2YXRlXG4gKi9cbkBQaXBlKHtcbiAgICBuYW1lOiAndGh5QXZhdGFyU3JjJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEF2YXRhclNyY1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBwcml2YXRlIHRoeUF2YXRhclNlcnZpY2UgPSBpbmplY3QoVGh5QXZhdGFyU2VydmljZSk7XG5cbiAgICB0cmFuc2Zvcm0oc3JjOiBzdHJpbmcsIHNpemU6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy50aHlBdmF0YXJTZXJ2aWNlLnNyY1RyYW5zZm9ybVxuICAgICAgICAgICAgPyB0aGlzLnRoeUF2YXRhclNlcnZpY2Uuc3JjVHJhbnNmb3JtKHNyYywgc2l6ZSlcbiAgICAgICAgICAgIDogdGhpcy50aHlBdmF0YXJTZXJ2aWNlLmF2YXRhclNyY1RyYW5zZm9ybShzcmMsIHNpemUpO1xuICAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IEF2YXRhclBpcGVzID0gW0F2YXRhclNob3J0TmFtZVBpcGUsIEF2YXRhckJnQ29sb3JQaXBlLCBBdmF0YXJTcmNQaXBlXTtcbiJdfQ==
@@ -1,13 +1,11 @@
1
- import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input, TemplateRef, EventEmitter, Output, HostBinding, NgZone, ChangeDetectorRef, Inject, ViewChild, ElementRef, numberAttribute } from '@angular/core';
1
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input, TemplateRef, EventEmitter, Output, HostBinding, NgZone, ChangeDetectorRef, ViewChild, ElementRef, numberAttribute, inject } from '@angular/core';
2
2
  import { Subject, fromEvent, BehaviorSubject, EMPTY, Observable } from 'rxjs';
3
3
  import { Platform } from '@angular/cdk/platform';
4
4
  import { throttleTime, takeUntil, switchMap } from 'rxjs/operators';
5
- import { DOCUMENT, NgIf, NgTemplateOutlet } from '@angular/common';
5
+ import { DOCUMENT, NgTemplateOutlet } from '@angular/common';
6
6
  import { fadeMotion, ThyScrollService } from 'ngx-tethys/core';
7
7
  import { ThyIcon } from 'ngx-tethys/icon';
8
8
  import * as i0 from "@angular/core";
9
- import * as i1 from "ngx-tethys/core";
10
- import * as i2 from "@angular/cdk/platform";
11
9
  /**
12
10
  * 回到顶部组件
13
11
  * @name thy-back-top
@@ -17,12 +15,12 @@ export class ThyBackTop {
17
15
  set backTop(backTop) {
18
16
  this.backTop$.next(backTop);
19
17
  }
20
- constructor(doc, thyScrollService, platform, cdr, zone) {
21
- this.doc = doc;
22
- this.thyScrollService = thyScrollService;
23
- this.platform = platform;
24
- this.cdr = cdr;
25
- this.zone = zone;
18
+ constructor() {
19
+ this.doc = inject(DOCUMENT);
20
+ this.thyScrollService = inject(ThyScrollService);
21
+ this.platform = inject(Platform);
22
+ this.cdr = inject(ChangeDetectorRef);
23
+ this.zone = inject(NgZone);
26
24
  this.classNames = true;
27
25
  /**
28
26
  * 滚动高度达到此参数值才出现 thy-back-top
@@ -48,6 +46,7 @@ export class ThyBackTop {
48
46
  this.destroy$ = new Subject();
49
47
  this.scrollListenerDestroy$ = new Subject();
50
48
  this.target = null;
49
+ const zone = this.zone;
51
50
  this.backTop$
52
51
  .pipe(switchMap(backTop => backTop
53
52
  ? new Observable(subscriber => zone.runOutsideAngular(() => fromEvent(backTop.nativeElement, 'click').subscribe(subscriber)))
@@ -100,16 +99,13 @@ export class ThyBackTop {
100
99
  this.registerScrollEvent();
101
100
  }
102
101
  }
103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBackTop, deps: [{ token: DOCUMENT }, { token: i1.ThyScrollService }, { token: i2.Platform }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
104
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyBackTop, isStandalone: true, selector: "thy-back-top,[thyBackTop]", inputs: { thyTemplate: "thyTemplate", thyContainer: "thyContainer", thyVisibilityHeight: ["thyVisibilityHeight", "thyVisibilityHeight", numberAttribute] }, outputs: { thyClick: "thyClick", visibleChange: "visibleChange" }, host: { properties: { "class.thy-back-top-container": "this.classNames" } }, viewQueries: [{ propertyName: "backTop", first: true, predicate: ["backTop"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"thy-back-top\" #backTop @fadeMotion *ngIf=\"visible\">\n <ng-template #defaultContent>\n <div class=\"thy-back-top-content\">\n <thy-icon class=\"back-top-icon text-muted font-size-lg\" thyIconName=\"arrow-up\"></thy-icon>\n </div>\n </ng-template>\n <ng-template [ngTemplateOutlet]=\"thyTemplate || defaultContent\"></ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [fadeMotion], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBackTop, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
103
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyBackTop, isStandalone: true, selector: "thy-back-top,[thyBackTop]", inputs: { thyTemplate: "thyTemplate", thyContainer: "thyContainer", thyVisibilityHeight: ["thyVisibilityHeight", "thyVisibilityHeight", numberAttribute] }, outputs: { thyClick: "thyClick", visibleChange: "visibleChange" }, host: { properties: { "class.thy-back-top-container": "this.classNames" } }, viewQueries: [{ propertyName: "backTop", first: true, predicate: ["backTop"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (visible) {\n <div class=\"thy-back-top\" #backTop @fadeMotion>\n <ng-template #defaultContent>\n <div class=\"thy-back-top-content\">\n <thy-icon class=\"back-top-icon text-muted font-size-lg\" thyIconName=\"arrow-up\"></thy-icon>\n </div>\n </ng-template>\n <ng-template [ngTemplateOutlet]=\"thyTemplate || defaultContent\"></ng-template>\n </div>\n}\n", dependencies: [{ kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [fadeMotion], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
105
104
  }
106
105
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBackTop, decorators: [{
107
106
  type: Component,
108
- args: [{ selector: 'thy-back-top,[thyBackTop]', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, animations: [fadeMotion], standalone: true, imports: [NgIf, ThyIcon, NgTemplateOutlet], template: "<div class=\"thy-back-top\" #backTop @fadeMotion *ngIf=\"visible\">\n <ng-template #defaultContent>\n <div class=\"thy-back-top-content\">\n <thy-icon class=\"back-top-icon text-muted font-size-lg\" thyIconName=\"arrow-up\"></thy-icon>\n </div>\n </ng-template>\n <ng-template [ngTemplateOutlet]=\"thyTemplate || defaultContent\"></ng-template>\n</div>\n" }]
109
- }], ctorParameters: () => [{ type: undefined, decorators: [{
110
- type: Inject,
111
- args: [DOCUMENT]
112
- }] }, { type: i1.ThyScrollService }, { type: i2.Platform }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }], propDecorators: { classNames: [{
107
+ args: [{ selector: 'thy-back-top,[thyBackTop]', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, animations: [fadeMotion], standalone: true, imports: [ThyIcon, NgTemplateOutlet], template: "@if (visible) {\n <div class=\"thy-back-top\" #backTop @fadeMotion>\n <ng-template #defaultContent>\n <div class=\"thy-back-top-content\">\n <thy-icon class=\"back-top-icon text-muted font-size-lg\" thyIconName=\"arrow-up\"></thy-icon>\n </div>\n </ng-template>\n <ng-template [ngTemplateOutlet]=\"thyTemplate || defaultContent\"></ng-template>\n </div>\n}\n" }]
108
+ }], ctorParameters: () => [], propDecorators: { classNames: [{
113
109
  type: HostBinding,
114
110
  args: ['class.thy-back-top-container']
115
111
  }], thyTemplate: [{
@@ -127,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
127
123
  type: ViewChild,
128
124
  args: ['backTop', { static: false }]
129
125
  }] } });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFjay10b3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JhY2stdG9wL2JhY2stdG9wLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9iYWNrLXRvcC9iYWNrLXRvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsS0FBSyxFQUNMLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLFdBQVcsRUFDWCxNQUFNLEVBQ04saUJBQWlCLEVBR2pCLE1BQU0sRUFDTixTQUFTLEVBQ1QsVUFBVSxFQUNWLGVBQWUsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUUxQzs7O0dBR0c7QUFVSCxNQUFNLE9BQU8sVUFBVTtJQStCbkIsNkRBQTZEO0lBQzdELElBQ0ksT0FBTyxDQUFDLE9BQTRDO1FBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFpQkQsWUFDOEIsR0FBUSxFQUMxQixnQkFBa0MsRUFDbEMs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RXBCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksY0FDekIsQ0FBQyxVQUFVLENBQUMsY0FDWixJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixDQUFDOzswQkF1RHJDLE1BQU07MkJBQUMsUUFBUTtvSkFwRHlCLFVBQVU7c0JBQXRELFdBQVc7dUJBQUMsOEJBQThCO2dCQUtsQyxXQUFXO3NCQUFuQixLQUFLO2dCQU9HLFlBQVk7c0JBQXBCLEtBQUs7Z0JBTWlDLG1CQUFtQjtzQkFBekQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBS2xCLFFBQVE7c0JBQTFCLE1BQU07Z0JBS1UsYUFBYTtzQkFBN0IsTUFBTTtnQkFJSCxPQUFPO3NCQURWLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIE9uSW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBJbnB1dCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgT3V0cHV0LFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIE5nWm9uZSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25DaGFuZ2VzLFxuICAgIEluamVjdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBudW1iZXJBdHRyaWJ1dGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBmcm9tRXZlbnQsIEJlaGF2aW9yU3ViamVjdCwgRU1QVFksIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BsYXRmb3JtJztcbmltcG9ydCB7IHRocm90dGxlVGltZSwgdGFrZVVudGlsLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBET0NVTUVOVCwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBmYWRlTW90aW9uLCBUaHlTY3JvbGxTZXJ2aWNlIH0gZnJvbSAnbmd4LXRldGh5cy9jb3JlJztcbmltcG9ydCB7IFRoeUljb24gfSBmcm9tICduZ3gtdGV0aHlzL2ljb24nO1xuXG4vKipcbiAqIOWbnuWIsOmhtumDqOe7hOS7tlxuICogQG5hbWUgdGh5LWJhY2stdG9wXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWJhY2stdG9wLFt0aHlCYWNrVG9wXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhY2stdG9wLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGFuaW1hdGlvbnM6IFtmYWRlTW90aW9uXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtOZ0lmLCBUaHlJY29uLCBOZ1RlbXBsYXRlT3V0bGV0XVxufSlcbmV4cG9ydCBjbGFzcyBUaHlCYWNrVG9wIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy50aHktYmFjay10b3AtY29udGFpbmVyJykgY2xhc3NOYW1lcyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiDoh6rlrprkuYnmjInpkq7mmL7npLrmqKHmnb9cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gICAgLyoqXG4gICAgICog5oyH5a6a5a+55ZOq5LiqIERPTSDlhYPntKDov5Tlm57pobbpg6hcbiAgICAgKiBAdHlwZSBzdHJpbmcgfCBIVE1MRWxlbWVudFxuICAgICAqIEBkZWZhdWx0IHdpbmRvd1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUNvbnRhaW5lcj86IHN0cmluZyB8IEhUTUxFbGVtZW50O1xuXG4gICAgLyoqXG4gICAgICog5rua5Yqo6auY5bqm6L6+5Yiw5q2k5Y+C5pWw5YC85omN5Ye6546wIHRoeS1iYWNrLXRvcFxuICAgICAqIEB0eXBlIG51bWJlclxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pIHRoeVZpc2liaWxpdHlIZWlnaHQgPSA0MDA7XG5cbiAgICAvKipcbiAgICAgKiDngrnlh7vmjInpkq7nmoTlm57osIPlh73mlbBcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgdGh5Q2xpY2s6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIOebkeWQrOaMiemSruaYvuekuueKtuaAgeeahOWbnuiwg+WHveaVsFxuICAgICAqL1xuICAgIEBPdXRwdXQoKSBwdWJsaWMgdmlzaWJsZUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqIFRoZSBuYXRpdmUgYDxkaXYgY2xhc3M9XCJ0aHktYmFjay10b3BcIj48L2Rpdj5gIGVsZW1lbnQuICovXG4gICAgQFZpZXdDaGlsZCgnYmFja1RvcCcsIHsgc3RhdGljOiBmYWxzZSB9KVxuICAgIHNldCBiYWNrVG9wKGJhY2tUb3A6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+IHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuYmFja1RvcCQubmV4dChiYWNrVG9wKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdmlzaWJsZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHN1YmplY3QgdXNlZCB0byBzdG9yZSB0aGUgbmF0aXZlIGA8ZGl2IGNsYXNzPVwidGh5LWJhY2stdG9wXCI+PC9kaXY+YCBzaW5jZVxuICAgICAqIGl0J3MgbG9jYXRlZCB3aXRoaW4gdGhlIGBuZ0lmYCBkaXJlY3RpdmUuIEl0IG1pZ2h0IGJlIHNldCBhc3luY2hyb25vdXNseSB3aGVuZXZlciB0aGUgY29uZGl0aW9uXG4gICAgICogaXMgbWV0LiBIYXZpbmcgc3ViamVjdCBtYWtlcyB0aGUgY29kZSByZWFjdGl2ZSBhbmQgY2FuY2VsbGFibGUgKGUuZy4gZXZlbnQgbGlzdGVuZXJzIHdpbGwgYmVcbiAgICAgKiBhdXRvbWF0aWNhbGx5IHJlbW92ZWQgYW5kIHJlLWFkZGVkIHRocm91Z2ggdGhlIGBzd2l0Y2hNYXBgIGJlbG93KS5cbiAgICAgKi9cbiAgICBwcml2YXRlIGJhY2tUb3AkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50PiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICAgIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgc2Nyb2xsTGlzdGVuZXJEZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBwcml2YXRlIHRhcmdldDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvYzogYW55LFxuICAgICAgICBwcml2YXRlIHRoeVNjcm9sbFNlcnZpY2U6IFRoeVNjcm9sbFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcGxhdGZvcm06IFBsYXRmb3JtLFxuICAgICAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgem9uZTogTmdab25lXG4gICAgKSB7XG4gICAgICAgIHRoaXMuYmFja1RvcCRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChiYWNrVG9wID0+XG4gICAgICAgICAgICAgICAgICAgIGJhY2tUb3BcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbmV3IE9ic2VydmFibGUoc3Vic2NyaWJlciA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiBmcm9tRXZlbnQoYmFja1RvcC5uYXRpdmVFbGVtZW50LCAnY2xpY2snKS5zdWJzY3JpYmUoc3Vic2NyaWJlcikpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIDogRU1QVFlcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50aHlTY3JvbGxTZXJ2aWNlLnNjcm9sbFRvKHRoaXMuZ2V0VGFyZ2V0KCksIDApO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnRoeUNsaWNrLm9ic2VydmVycy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgem9uZS5ydW4oKCkgPT4gdGhpcy50aHlDbGljay5lbWl0KHRydWUpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWdpc3RlclNjcm9sbEV2ZW50KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUYXJnZXQoKTogSFRNTEVsZW1lbnQgfCBXaW5kb3cge1xuICAgICAgICByZXR1cm4gdGhpcy50YXJnZXQgfHwgd2luZG93O1xuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlU2Nyb2xsKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy52aXNpYmxlID09PSB0aGlzLnRoeVNjcm9sbFNlcnZpY2UuZ2V0U2Nyb2xsKHRoaXMuZ2V0VGFyZ2V0KCkpID4gdGhpcy50aHlWaXNpYmlsaXR5SGVpZ2h0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy52aXNpYmxlID0gIXRoaXMudmlzaWJsZTtcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICBpZiAodGhpcy52aXNpYmxlQ2hhbmdlLm9ic2VydmVycy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh0aGlzLnZpc2libGUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZ2lzdGVyU2Nyb2xsRXZlbnQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5wbGF0Zm9ybS5pc0Jyb3dzZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNjcm9sbExpc3RlbmVyRGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLmhhbmRsZVNjcm9sbCgpO1xuICAgICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgZnJvbUV2ZW50KHRoaXMuZ2V0VGFyZ2V0KCksICdzY3JvbGwnLCB7IHBhc3NpdmU6IHRydWUgfSlcbiAgICAgICAgICAgICAgICAucGlwZSh0aHJvdHRsZVRpbWUoNTApLCB0YWtlVW50aWwodGhpcy5zY3JvbGxMaXN0ZW5lckRlc3Ryb3kkKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuaGFuZGxlU2Nyb2xsKCkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuc2Nyb2xsTGlzdGVuZXJEZXN0cm95JC5uZXh0KCk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogYW55KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgdGh5Q29udGFpbmVyIH0gPSBjaGFuZ2VzO1xuICAgICAgICBpZiAodGh5Q29udGFpbmVyKSB7XG4gICAgICAgICAgICB0aGlzLnRhcmdldCA9IHR5cGVvZiB0aGlzLnRoeUNvbnRhaW5lciA9PT0gJ3N0cmluZycgPyB0aGlzLmRvYy5xdWVyeVNlbGVjdG9yKHRoaXMudGh5Q29udGFpbmVyKSA6IHRoaXMudGh5Q29udGFpbmVyO1xuICAgICAgICAgICAgdGhpcy5yZWdpc3RlclNjcm9sbEV2ZW50KCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidGh5LWJhY2stdG9wXCIgI2JhY2tUb3AgQGZhZGVNb3Rpb24gKm5nSWY9XCJ2aXNpYmxlXCI+XG4gIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbnRlbnQ+XG4gICAgPGRpdiBjbGFzcz1cInRoeS1iYWNrLXRvcC1jb250ZW50XCI+XG4gICAgICA8dGh5LWljb24gY2xhc3M9XCJiYWNrLXRvcC1pY29uIHRleHQtbXV0ZWQgZm9udC1zaXplLWxnXCIgdGh5SWNvbk5hbWU9XCJhcnJvdy11cFwiPjwvdGh5LWljb24+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0aHlUZW1wbGF0ZSB8fCBkZWZhdWx0Q29udGVudFwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFjay10b3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JhY2stdG9wL2JhY2stdG9wLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9iYWNrLXRvcC9iYWNrLXRvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsS0FBSyxFQUNMLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLFdBQVcsRUFDWCxNQUFNLEVBQ04saUJBQWlCLEVBR2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsZUFBZSxFQUNmLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRTFDOzs7R0FHRztBQVVILE1BQU0sT0FBTyxVQUFVO0lBcUNuQiw2REFBNkQ7SUFDN0QsSUFDSSxPQUFPLENBQUMsT0FBNEM7UUFDcEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQWlCRDtRQXpEUSxRQUFHLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FB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UzsrQkFDSSwyQkFBMkIsbUJBRXBCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksY0FDekIsQ0FBQyxVQUFVLENBQUMsY0FDWixJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7d0RBU1MsVUFBVTtzQkFBdEQsV0FBVzt1QkFBQyw4QkFBOEI7Z0JBS2xDLFdBQVc7c0JBQW5CLEtBQUs7Z0JBT0csWUFBWTtzQkFBcEIsS0FBSztnQkFNaUMsbUJBQW1CO3NCQUF6RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFLbEIsUUFBUTtzQkFBMUIsTUFBTTtnQkFLVSxhQUFhO3NCQUE3QixNQUFNO2dCQUlILE9BQU87c0JBRFYsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIElucHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBPdXRwdXQsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgTmdab25lLFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkNoYW5nZXMsXG4gICAgVmlld0NoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgbnVtYmVyQXR0cmlidXRlLFxuICAgIGluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIGZyb21FdmVudCwgQmVoYXZpb3JTdWJqZWN0LCBFTVBUWSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUGxhdGZvcm0gfSBmcm9tICdAYW5ndWxhci9jZGsvcGxhdGZvcm0nO1xuaW1wb3J0IHsgdGhyb3R0bGVUaW1lLCB0YWtlVW50aWwsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERPQ1VNRU5ULCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGZhZGVNb3Rpb24sIFRoeVNjcm9sbFNlcnZpY2UgfSBmcm9tICduZ3gtdGV0aHlzL2NvcmUnO1xuaW1wb3J0IHsgVGh5SWNvbiB9IGZyb20gJ25neC10ZXRoeXMvaWNvbic7XG5cbi8qKlxuICog5Zue5Yiw6aG26YOo57uE5Lu2XG4gKiBAbmFtZSB0aHktYmFjay10b3BcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktYmFjay10b3AsW3RoeUJhY2tUb3BdJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmFjay10b3AuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgYW5pbWF0aW9uczogW2ZhZGVNb3Rpb25dLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1RoeUljb24sIE5nVGVtcGxhdGVPdXRsZXRdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUJhY2tUb3AgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgICBwcml2YXRlIGRvYyA9IGluamVjdChET0NVTUVOVCk7XG4gICAgcHJpdmF0ZSB0aHlTY3JvbGxTZXJ2aWNlID0gaW5qZWN0KFRoeVNjcm9sbFNlcnZpY2UpO1xuICAgIHByaXZhdGUgcGxhdGZvcm0gPSBpbmplY3QoUGxhdGZvcm0pO1xuICAgIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIHpvbmUgPSBpbmplY3QoTmdab25lKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MudGh5LWJhY2stdG9wLWNvbnRhaW5lcicpIGNsYXNzTmFtZXMgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog6Ieq5a6a5LmJ5oyJ6ZKu5pi+56S65qih5p2/XG4gICAgICovXG4gICAgQElucHV0KCkgdGh5VGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjx2b2lkPjtcblxuICAgIC8qKlxuICAgICAqIOaMh+WumuWvueWTquS4qiBET00g5YWD57Sg6L+U5Zue6aG26YOoXG4gICAgICogQHR5cGUgc3RyaW5nIHwgSFRNTEVsZW1lbnRcbiAgICAgKiBAZGVmYXVsdCB3aW5kb3dcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlDb250YWluZXI/OiBzdHJpbmcgfCBIVE1MRWxlbWVudDtcblxuICAgIC8qKlxuICAgICAqIOa7muWKqOmrmOW6pui+vuWIsOatpOWPguaVsOWAvOaJjeWHuueOsCB0aHktYmFjay10b3BcbiAgICAgKiBAdHlwZSBudW1iZXJcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSB0aHlWaXNpYmlsaXR5SGVpZ2h0ID0gNDAwO1xuXG4gICAgLyoqXG4gICAgICog54K55Ye75oyJ6ZKu55qE5Zue6LCD5Ye95pWwXG4gICAgICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IHRoeUNsaWNrOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICAvKipcbiAgICAgKiDnm5HlkKzmjInpkq7mmL7npLrnirbmgIHnmoTlm57osIPlh73mlbBcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgcHVibGljIHZpc2libGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKiBUaGUgbmF0aXZlIGA8ZGl2IGNsYXNzPVwidGh5LWJhY2stdG9wXCI+PC9kaXY+YCBlbGVtZW50LiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2JhY2tUb3AnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgICBzZXQgYmFja1RvcChiYWNrVG9wOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLmJhY2tUb3AkLm5leHQoYmFja1RvcCk7XG4gICAgfVxuXG4gICAgcHVibGljIHZpc2libGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzdWJqZWN0IHVzZWQgdG8gc3RvcmUgdGhlIG5hdGl2ZSBgPGRpdiBjbGFzcz1cInRoeS1iYWNrLXRvcFwiPjwvZGl2PmAgc2luY2VcbiAgICAgKiBpdCdzIGxvY2F0ZWQgd2l0aGluIHRoZSBgbmdJZmAgZGlyZWN0aXZlLiBJdCBtaWdodCBiZSBzZXQgYXN5bmNocm9ub3VzbHkgd2hlbmV2ZXIgdGhlIGNvbmRpdGlvblxuICAgICAqIGlzIG1ldC4gSGF2aW5nIHN1YmplY3QgbWFrZXMgdGhlIGNvZGUgcmVhY3RpdmUgYW5kIGNhbmNlbGxhYmxlIChlLmcuIGV2ZW50IGxpc3RlbmVycyB3aWxsIGJlXG4gICAgICogYXV0b21hdGljYWxseSByZW1vdmVkIGFuZCByZS1hZGRlZCB0aHJvdWdoIHRoZSBgc3dpdGNoTWFwYCBiZWxvdykuXG4gICAgICovXG4gICAgcHJpdmF0ZSBiYWNrVG9wJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cbiAgICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBwcml2YXRlIHNjcm9sbExpc3RlbmVyRGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJpdmF0ZSB0YXJnZXQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgY29uc3Qgem9uZSA9IHRoaXMuem9uZTtcblxuICAgICAgICB0aGlzLmJhY2tUb3AkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoYmFja1RvcCA9PlxuICAgICAgICAgICAgICAgICAgICBiYWNrVG9wXG4gICAgICAgICAgICAgICAgICAgICAgICA/IG5ldyBPYnNlcnZhYmxlKHN1YnNjcmliZXIgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gZnJvbUV2ZW50KGJhY2tUb3AubmF0aXZlRWxlbWVudCwgJ2NsaWNrJykuc3Vic2NyaWJlKHN1YnNjcmliZXIpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICA6IEVNUFRZXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudGh5U2Nyb2xsU2VydmljZS5zY3JvbGxUbyh0aGlzLmdldFRhcmdldCgpLCAwKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50aHlDbGljay5vYnNlcnZlcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHpvbmUucnVuKCgpID0+IHRoaXMudGh5Q2xpY2suZW1pdCh0cnVlKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVnaXN0ZXJTY3JvbGxFdmVudCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VGFyZ2V0KCk6IEhUTUxFbGVtZW50IHwgV2luZG93IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGFyZ2V0IHx8IHdpbmRvdztcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZVNjcm9sbCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudmlzaWJsZSA9PT0gdGhpcy50aHlTY3JvbGxTZXJ2aWNlLmdldFNjcm9sbCh0aGlzLmdldFRhcmdldCgpKSA+IHRoaXMudGh5VmlzaWJpbGl0eUhlaWdodCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgaWYgKHRoaXMudmlzaWJsZUNoYW5nZS5vYnNlcnZlcnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodGhpcy52aXNpYmxlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWdpc3RlclNjcm9sbEV2ZW50KCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMucGxhdGZvcm0uaXNCcm93c2VyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zY3JvbGxMaXN0ZW5lckRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5oYW5kbGVTY3JvbGwoKTtcbiAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIGZyb21FdmVudCh0aGlzLmdldFRhcmdldCgpLCAnc2Nyb2xsJywgeyBwYXNzaXZlOiB0cnVlIH0pXG4gICAgICAgICAgICAgICAgLnBpcGUodGhyb3R0bGVUaW1lKDUwKSwgdGFrZVVudGlsKHRoaXMuc2Nyb2xsTGlzdGVuZXJEZXN0cm95JCkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmhhbmRsZVNjcm9sbCgpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLnNjcm9sbExpc3RlbmVyRGVzdHJveSQubmV4dCgpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IHRoeUNvbnRhaW5lciB9ID0gY2hhbmdlcztcbiAgICAgICAgaWYgKHRoeUNvbnRhaW5lcikge1xuICAgICAgICAgICAgdGhpcy50YXJnZXQgPSB0eXBlb2YgdGhpcy50aHlDb250YWluZXIgPT09ICdzdHJpbmcnID8gdGhpcy5kb2MucXVlcnlTZWxlY3Rvcih0aGlzLnRoeUNvbnRhaW5lcikgOiB0aGlzLnRoeUNvbnRhaW5lcjtcbiAgICAgICAgICAgIHRoaXMucmVnaXN0ZXJTY3JvbGxFdmVudCgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGlmICh2aXNpYmxlKSB7XG4gIDxkaXYgY2xhc3M9XCJ0aHktYmFjay10b3BcIiAjYmFja1RvcCBAZmFkZU1vdGlvbj5cbiAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRDb250ZW50PlxuICAgICAgPGRpdiBjbGFzcz1cInRoeS1iYWNrLXRvcC1jb250ZW50XCI+XG4gICAgICAgIDx0aHktaWNvbiBjbGFzcz1cImJhY2stdG9wLWljb24gdGV4dC1tdXRlZCBmb250LXNpemUtbGdcIiB0aHlJY29uTmFtZT1cImFycm93LXVwXCI+PC90aHktaWNvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRoeVRlbXBsYXRlIHx8IGRlZmF1bHRDb250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG59XG4iXX0=
@@ -1,6 +1,5 @@
1
1
  import { isTextColor } from 'ngx-tethys/core';
2
- import { ChangeDetectionStrategy, Component, ElementRef, Input, numberAttribute } from '@angular/core';
3
- import { NgIf } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, ElementRef, Input, numberAttribute, inject } from '@angular/core';
4
3
  import { coerceBooleanProperty } from 'ngx-tethys/util';
5
4
  import * as i0 from "@angular/core";
6
5
  /**
@@ -8,8 +7,8 @@ import * as i0 from "@angular/core";
8
7
  * @name thy-badge,[thyBadge]
9
8
  */
10
9
  export class ThyBadge {
11
- constructor(elementRef) {
12
- this.elementRef = elementRef;
10
+ constructor() {
11
+ this.elementRef = inject(ElementRef);
13
12
  this.displayContent = '';
14
13
  this.badgeClassName = '';
15
14
  this.initialized = false;
@@ -199,16 +198,16 @@ export class ThyBadge {
199
198
  this.isShowBadge = true;
200
199
  }
201
200
  }
202
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBadge, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
203
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyBadge, isStandalone: true, selector: "thy-badge,[thyBadge]", inputs: { thyType: "thyType", thyCount: ["thyCount", "thyCount", numberAttribute], thyContent: "thyContent", thyContext: "thyContext", thyMaxCount: ["thyMaxCount", "thyMaxCount", numberAttribute], thySize: "thySize", thyIsDot: ["thyIsDot", "thyIsDot", coerceBooleanProperty], thyIsHollow: ["thyIsHollow", "thyIsHollow", coerceBooleanProperty], thyKeepShow: ["thyKeepShow", "thyKeepShow", coerceBooleanProperty], thyTextColor: "thyTextColor", thyBackgroundColor: "thyBackgroundColor" }, host: { properties: { "class.thy-badge-wrapper": "isWrapper" }, classAttribute: "thy-badge-container" }, ngImport: i0, template: "<div *ngIf=\"isShowBadge\" class=\"thy-badge {{ badgeClassName }}\" [style.color]=\"textColor\" [style.backgroundColor]=\"backgroundColor\">\n <span>{{ displayContent }}</span>\n</div>\n<ng-content></ng-content>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
201
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBadge, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
202
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyBadge, isStandalone: true, selector: "thy-badge,[thyBadge]", inputs: { thyType: "thyType", thyCount: ["thyCount", "thyCount", numberAttribute], thyContent: "thyContent", thyContext: "thyContext", thyMaxCount: ["thyMaxCount", "thyMaxCount", numberAttribute], thySize: "thySize", thyIsDot: ["thyIsDot", "thyIsDot", coerceBooleanProperty], thyIsHollow: ["thyIsHollow", "thyIsHollow", coerceBooleanProperty], thyKeepShow: ["thyKeepShow", "thyKeepShow", coerceBooleanProperty], thyTextColor: "thyTextColor", thyBackgroundColor: "thyBackgroundColor" }, host: { properties: { "class.thy-badge-wrapper": "isWrapper" }, classAttribute: "thy-badge-container" }, ngImport: i0, template: "@if (isShowBadge) {\n <div class=\"thy-badge {{ badgeClassName }}\" [style.color]=\"textColor\" [style.backgroundColor]=\"backgroundColor\">\n <span>{{ displayContent }}</span>\n </div>\n}\n<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
204
203
  }
205
204
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBadge, decorators: [{
206
205
  type: Component,
207
206
  args: [{ selector: 'thy-badge,[thyBadge]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
208
207
  class: 'thy-badge-container',
209
208
  '[class.thy-badge-wrapper]': 'isWrapper'
210
- }, standalone: true, imports: [NgIf], template: "<div *ngIf=\"isShowBadge\" class=\"thy-badge {{ badgeClassName }}\" [style.color]=\"textColor\" [style.backgroundColor]=\"backgroundColor\">\n <span>{{ displayContent }}</span>\n</div>\n<ng-content></ng-content>\n" }]
211
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { thyType: [{
209
+ }, standalone: true, imports: [], template: "@if (isShowBadge) {\n <div class=\"thy-badge {{ badgeClassName }}\" [style.color]=\"textColor\" [style.backgroundColor]=\"backgroundColor\">\n <span>{{ displayContent }}</span>\n </div>\n}\n<ng-content></ng-content>\n" }]
210
+ }], ctorParameters: () => [], propDecorators: { thyType: [{
212
211
  type: Input
213
212
  }], thyCount: [{
214
213
  type: Input,
@@ -236,4 +235,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
236
235
  }], thyBackgroundColor: [{
237
236
  type: Input
238
237
  }] } });
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JhZGdlL2JhZGdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9iYWRnZS9iYWRnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBSXhEOzs7R0FHRztBQVlILE1BQU0sT0FBTyxRQUFRO0lBd0NqQixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBdkMxQyxtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUVwQixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUlaLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRTVCLFdBQVc7UUFDRCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRXJCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBRWxCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRXRCLFVBQUssR0FBb0IsRUFBRSxDQUFDO1FBRTVCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBb0J0QixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBR2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFDdkQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUNJLE9BQU8sQ0FBQyxLQUFhO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFD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bmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIG51bWJlckF0dHJpYnV0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuXG5leHBvcnQgdHlwZSBUaHlCYWRnZVNpemUgPSAnbWQnIHwgJ3NtJyB8ICdsZyc7XG5cbi8qKlxuICog5b695qCH57uE5Lu277yM5pSv5oyB57uE5Lu2YHRoeS1iYWRnZWDlkoxgdGh5QmFkZ2Vg5oyH5Luk5Lik56eN5L2/55So5pa55byPXG4gKiBAbmFtZSB0aHktYmFkZ2UsW3RoeUJhZGdlXVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoeS1iYWRnZSxbdGh5QmFkZ2VdJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmFkZ2UuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aHktYmFkZ2UtY29udGFpbmVyJyxcbiAgICAgICAgJ1tjbGFzcy50aHktYmFkZ2Utd3JhcHBlcl0nOiAnaXNXcmFwcGVyJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdJZl1cbn0pXG5leHBvcnQgY2xhc3MgVGh5QmFkZ2UgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGRpc3BsYXlDb250ZW50ID0gJyc7XG5cbiAgICBiYWRnZUNsYXNzTmFtZSA9ICcnO1xuXG4gICAgcHJpdmF0ZSBuYXRpdmVFbGVtZW50OiBhbnk7XG5cbiAgICBwcml2YXRlIGluaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgICAvLyDmmK/lkKbljIXoo7nlnKjlhYPntKDkuIpcbiAgICBwcm90ZWN0ZWQgaXNXcmFwcGVyID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgaXNTaG93QmFkZ2UgPSB0cnVlO1xuXG4gICAgcHJpdmF0ZSBrZWVwU2hvd1ZhbHVlID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIHZhbHVlOiBudW1iZXIgfCBzdHJpbmcgPSAnJztcblxuICAgIHByaXZhdGUgdmFsdWVIYXNCZWVuU2V0ID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIG1heENvdW50OiBudW1iZXI7XG5cbiAgICBwcml2YXRlIHR5cGU6IHN0cmluZztcblxuICAgIHByaXZhdGUgc2l6ZTogVGh5QmFkZ2VTaXplO1xuXG4gICAgcHJpdmF0ZSBpc0RvdDogYm9vbGVhbjtcblxuICAgIHByaXZhdGUgaXNIb2xsb3c6IGJvb2xlYW47XG5cbiAgICBwcm90ZWN0ZWQgdGV4dENvbG9yOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgYnVpbHRJblRleHRDb2xvckNsYXNzOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgYmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgYnVpbHRJbkJhY2tncm91bmRDb2xvckNsYXNzOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgc3VwQ2xhc3Nlczogc3RyaW5nW10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvr3moIfnsbvlnotcbiAgICAgKiBAdHlwZSBkZWZhdWx0IHwgcHJpbWFyeSB8IGRhbmdlciB8IHdhcm5pbmcgfCBzdWNjZXNzXG4gICAgICogQGRlZmF1bHQgZGFuZ2VyXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5VHlwZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudHlwZSA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvr3moIflhoXlrrnmlbDlrZdcbiAgICAgKiBAdHlwZSBudW1iZXJcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICAgIHNldCB0aHlDb3VudCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZUhhc0JlZW5TZXQgPSB0cnVlO1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VEaXNwbGF5Q29udGVudCgpO1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvr3moIflhoXlrrnmlofmnKxcbiAgICAgKiBAdHlwZSBzdHJpbmdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlDb250ZW50KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLnZhbHVlSGFzQmVlblNldCA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZURpc3BsYXlDb250ZW50KCk7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZUNsYXNzZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOW3suW6n+W8g++8jOW+veagh+WGheWuueaWh+acrO+8jOWRveWQjemUmeivr++8jOivt+S9v+eUqCB0aHlDb250ZW50XG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlDb250ZXh0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy50aHlDb250ZW50ID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5b695qCH5pi+56S655qE5pyA5aSn5YC8LCDkuI4gdGh5Q291bnQg5LiA6LW35L2/55SoLHRoeUNvdW50IOi2hei/h+S6hiB0aHlNYXhDb3VudCDorr7nva7nmoTlgLzml7bvvIzlvr3moIflhoXlrrnkuLogdGh5TWF4Q291bnQrXG4gICAgICogQHR5cGUgbnVtYmVyXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSlcbiAgICBzZXQgdGh5TWF4Q291bnQodmFsdWU6IG51bWJlcikge1xuICAgICAgICB0aGlzLm1heENvdW50ID0gdmFsdWU7XG4gICAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZURpc3BsYXlDb250ZW50KCk7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZUNsYXNzZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOW+veagh+aYvuekuueahOWkp+Wwj1xuICAgICAqIEB0eXBlIG1kIHwgc20gfCBsZ1xuICAgICAqIEBkZWZhdWx0IG1kXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5U2l6ZSh2YWx1ZTogVGh5QmFkZ2VTaXplKSB7XG4gICAgICAgIHRoaXMuc2l6ZSA9IHZhbHVlO1xuXG4gICAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZUNsYXNzZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOW3suW6n+W8g++8jOW+veagh+aYr+S4gOS4quWunuW/g+eCue+8jOW3sue7j+iiq+W6n+W8g1xuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSlcbiAgICBzZXQgdGh5SXNEb3QodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc0RvdCA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlt7Llup/lvIPvvIzlvr3moIfmmK/kuIDkuKrnqbrlv4PngrlcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeUlzSG9sbG93KHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuaXNIb2xsb3cgPSB2YWx1ZTtcbiAgICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY29tYmluZUJhZGdlQ2xhc3NlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogdGh5Q291bnQg5Li6IDAg5pe277yM5by65Yi25pi+56S65pWw5a2XIDDvvIzpu5jorqTkuI3mmL7npLpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeUtlZXBTaG93KHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMua2VlcFNob3dWYWx1ZSA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VEaXNwbGF5Q29udGVudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6K6+572u5b695qCH5a2X5L2T55qE6aKc6Imy77yM5pSv5oyB5YaF572u6aKc6Imy5ZKM6Ieq5a6a5LmJ6aKc6ImyICdwcmltYXJ5JyB8ICcjODdkMDY4JyB8IC4uLlxuICAgICAqIEB0eXBlIHN0cmluZ1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeVRleHRDb2xvcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmIChpc1RleHRDb2xvcih2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuYnVpbHRJblRleHRDb2xvckNsYXNzID0gYHRleHQtJHt2YWx1ZX1gO1xuICAgICAgICAgICAgdGhpcy50ZXh0Q29sb3IgPSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy50ZXh0Q29sb3IgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuYnVpbHRJblRleHRDb2xvckNsYXNzID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDorr7nva7lvr3moIfnmoTog4zmma/popzoibLvvIzmlK/mjIHlhoXnva7popzoibLlkozoh6rlrprkuYnpopzoibIgJ3ByaW1hcnknIHwgJyM4N2QwNjgnIHwgLi4uXG4gICAgICogQHR5cGUgc3RyaW5nXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5QmFja2dyb3VuZENvbG9yKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKGlzVGV4dENvbG9yKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5idWlsdEluQmFja2dyb3VuZENvbG9yQ2xhc3MgPSBgYmctJHt2YWx1ZX1gO1xuICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuYnVpbHRJbkJhY2tncm91bmRDb2xvckNsYXNzID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgbGV0IGNoaWxkTm9kZUNvdW50ID0gMDtcbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkTm9kZXMuZm9yRWFjaCgobjogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChbJyNjb21tZW50J10uaW5kZXhPZihuLm5vZGVOYW1lKSA8IDApIHtcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVDb3VudCsrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5pc1dyYXBwZXIgPSBjaGlsZE5vZGVDb3VudCA+IDA7XG5cbiAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG5cbiAgICAgICAgaWYgKHRoaXMudmFsdWVIYXNCZWVuU2V0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZURpc3BsYXlDb250ZW50KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbWJpbmVCYWRnZUNsYXNzZXMoKSB7XG4gICAgICAgIGNvbnN0IGNsYXNzZXM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGNsYXNzZXMucHVzaChgdGh5LWJhZGdlLSR7dGhpcy50eXBlIHx8ICdkYW5nZXInfWApO1xuICAgICAgICBpZiAodGhpcy5zaXplKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goYHRoeS1iYWRnZS0ke3RoaXMuc2l6ZX1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pc0RvdCkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGB0aHktYmFkZ2UtZG90YCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0hvbGxvdykge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGB0aHktYmFkZ2UtaG9sbG93YCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goYHRoeS1iYWRnZS1jb3VudGApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYnVpbHRJblRleHRDb2xvckNsYXNzKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2godGhpcy5idWlsdEluVGV4dENvbG9yQ2xhc3MpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmJ1aWx0SW5CYWNrZ3JvdW5kQ29sb3JDbGFzcykge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKHRoaXMuYnVpbHRJbkJhY2tncm91bmRDb2xvckNsYXNzKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmJhZGdlQ2xhc3NOYW1lID0gY2xhc3Nlcy5qb2luKCcgJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb21iaW5lQmFkZ2VEaXNwbGF5Q29udGVudCgpIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29udGVudCA9IHRoaXMudmFsdWUgYXMgc3RyaW5nO1xuICAgICAgICBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLm1heENvdW50ICE9IHVuZGVmaW5lZCAmJiAodGhpcy52YWx1ZSBhcyBudW1iZXIpID4gdGhpcy5tYXhDb3VudCkge1xuICAgICAgICAgICAgdGhpcy5kaXNwbGF5Q29udGVudCA9IGAke3RoaXMubWF4Q291bnR9K2A7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMudmFsdWUgJiYgIXRoaXMua2VlcFNob3dWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5pc1Nob3dCYWRnZSA9IGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pc1Nob3dCYWRnZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiaXNTaG93QmFkZ2VcIiBjbGFzcz1cInRoeS1iYWRnZSB7eyBiYWRnZUNsYXNzTmFtZSB9fVwiIFtzdHlsZS5jb2xvcl09XCJ0ZXh0Q29sb3JcIiBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImJhY2tncm91bmRDb2xvclwiPlxuICA8c3Bhbj57eyBkaXNwbGF5Q29udGVudCB9fTwvc3Bhbj5cbjwvZGl2PlxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
238
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JhZGdlL2JhZGdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9iYWRnZS9iYWRnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBSXhEOzs7R0FHRztBQVlILE1BQU0sT0FBTyxRQUFRO0lBMENqQjtRQXpDUSxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXhDLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBRXBCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBSVosZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFNUIsV0FBVztRQUNELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFckIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFFbEIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFFdEIsVUFBSyxHQUFvQixFQUFFLENBQUM7UUFFNUIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFvQnRCLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFHaEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQ0ksT0FBTyxDQUFDLEtBQWE7UUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENB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QUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDN0IsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUM1QixDQUFDO0lBQ0wsQ0FBQzs4R0F2UFEsUUFBUTtrR0FBUixRQUFRLHlIQStERyxlQUFlLG1HQXFDZixlQUFlLDBEQTJCZixxQkFBcUIsK0NBWXJCLHFCQUFxQiwrQ0FZckIscUJBQXFCLDhNQzlLN0MsZ09BTUE7OzJGRGlCYSxRQUFRO2tCQVhwQixTQUFTOytCQUNJLHNCQUFzQixtQkFFZix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLEtBQUssRUFBRSxxQkFBcUI7d0JBQzVCLDJCQUEyQixFQUFFLFdBQVc7cUJBQzNDLGNBQ1csSUFBSSxXQUNQLEVBQUU7d0RBc0RQLE9BQU87c0JBRFYsS0FBSztnQkFhRixRQUFRO3NCQURYLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQWVqQyxVQUFVO3NCQURiLEtBQUs7Z0JBZUYsVUFBVTtzQkFEYixLQUFLO2dCQVVGLFdBQVc7c0JBRGQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBZWpDLE9BQU87c0JBRFYsS0FBSztnQkFjRixRQUFRO3NCQURYLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBYXZDLFdBQVc7c0JBRGQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFhdkMsV0FBVztzQkFEZCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQWF2QyxZQUFZO3NCQURmLEtBQUs7Z0JBbUJGLGtCQUFrQjtzQkFEckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzVGV4dENvbG9yIH0gZnJvbSAnbmd4LXRldGh5cy9jb3JlJztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgbnVtYmVyQXR0cmlidXRlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcblxuZXhwb3J0IHR5cGUgVGh5QmFkZ2VTaXplID0gJ21kJyB8ICdzbScgfCAnbGcnO1xuXG4vKipcbiAqIOW+veagh+e7hOS7tu+8jOaUr+aMgee7hOS7tmB0aHktYmFkZ2Vg5ZKMYHRoeUJhZGdlYOaMh+S7pOS4pOenjeS9v+eUqOaWueW8j1xuICogQG5hbWUgdGh5LWJhZGdlLFt0aHlCYWRnZV1cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktYmFkZ2UsW3RoeUJhZGdlXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhZGdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWJhZGdlLWNvbnRhaW5lcicsXG4gICAgICAgICdbY2xhc3MudGh5LWJhZGdlLXdyYXBwZXJdJzogJ2lzV3JhcHBlcidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW11cbn0pXG5leHBvcnQgY2xhc3MgVGh5QmFkZ2UgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICAgIGRpc3BsYXlDb250ZW50ID0gJyc7XG5cbiAgICBiYWRnZUNsYXNzTmFtZSA9ICcnO1xuXG4gICAgcHJpdmF0ZSBuYXRpdmVFbGVtZW50OiBhbnk7XG5cbiAgICBwcml2YXRlIGluaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgICAvLyDmmK/lkKbljIXoo7nlnKjlhYPntKDkuIpcbiAgICBwcm90ZWN0ZWQgaXNXcmFwcGVyID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgaXNTaG93QmFkZ2UgPSB0cnVlO1xuXG4gICAgcHJpdmF0ZSBrZWVwU2hvd1ZhbHVlID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIHZhbHVlOiBudW1iZXIgfCBzdHJpbmcgPSAnJztcblxuICAgIHByaXZhdGUgdmFsdWVIYXNCZWVuU2V0ID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIG1heENvdW50OiBudW1iZXI7XG5cbiAgICBwcml2YXRlIHR5cGU6IHN0cmluZztcblxuICAgIHByaXZhdGUgc2l6ZTogVGh5QmFkZ2VTaXplO1xuXG4gICAgcHJpdmF0ZSBpc0RvdDogYm9vbGVhbjtcblxuICAgIHByaXZhdGUgaXNIb2xsb3c6IGJvb2xlYW47XG5cbiAgICBwcm90ZWN0ZWQgdGV4dENvbG9yOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgYnVpbHRJblRleHRDb2xvckNsYXNzOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgYmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgYnVpbHRJbkJhY2tncm91bmRDb2xvckNsYXNzOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgc3VwQ2xhc3Nlczogc3RyaW5nW10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvr3moIfnsbvlnotcbiAgICAgKiBAdHlwZSBkZWZhdWx0IHwgcHJpbWFyeSB8IGRhbmdlciB8IHdhcm5pbmcgfCBzdWNjZXNzXG4gICAgICogQGRlZmF1bHQgZGFuZ2VyXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5VHlwZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudHlwZSA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvr3moIflhoXlrrnmlbDlrZdcbiAgICAgKiBAdHlwZSBudW1iZXJcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICAgIHNldCB0aHlDb3VudCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZUhhc0JlZW5TZXQgPSB0cnVlO1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VEaXNwbGF5Q29udGVudCgpO1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvr3moIflhoXlrrnmlofmnKxcbiAgICAgKiBAdHlwZSBzdHJpbmdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlDb250ZW50KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLnZhbHVlSGFzQmVlblNldCA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZURpc3BsYXlDb250ZW50KCk7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZUNsYXNzZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOW3suW6n+W8g++8jOW+veagh+WGheWuueaWh+acrO+8jOWRveWQjemUmeivr++8jOivt+S9v+eUqCB0aHlDb250ZW50XG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlDb250ZXh0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy50aHlDb250ZW50ID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5b695qCH5pi+56S655qE5pyA5aSn5YC8LCDkuI4gdGh5Q291bnQg5LiA6LW35L2/55SoLHRoeUNvdW50IOi2hei/h+S6hiB0aHlNYXhDb3VudCDorr7nva7nmoTlgLzml7bvvIzlvr3moIflhoXlrrnkuLogdGh5TWF4Q291bnQrXG4gICAgICogQHR5cGUgbnVtYmVyXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSlcbiAgICBzZXQgdGh5TWF4Q291bnQodmFsdWU6IG51bWJlcikge1xuICAgICAgICB0aGlzLm1heENvdW50ID0gdmFsdWU7XG4gICAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZURpc3BsYXlDb250ZW50KCk7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZUNsYXNzZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOW+veagh+aYvuekuueahOWkp+Wwj1xuICAgICAqIEB0eXBlIG1kIHwgc20gfCBsZ1xuICAgICAqIEBkZWZhdWx0IG1kXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5U2l6ZSh2YWx1ZTogVGh5QmFkZ2VTaXplKSB7XG4gICAgICAgIHRoaXMuc2l6ZSA9IHZhbHVlO1xuXG4gICAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZUNsYXNzZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOW3suW6n+W8g++8jOW+veagh+aYr+S4gOS4quWunuW/g+eCue+8jOW3sue7j+iiq+W6n+W8g1xuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSlcbiAgICBzZXQgdGh5SXNEb3QodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc0RvdCA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlt7Llup/lvIPvvIzlvr3moIfmmK/kuIDkuKrnqbrlv4PngrlcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeUlzSG9sbG93KHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuaXNIb2xsb3cgPSB2YWx1ZTtcbiAgICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY29tYmluZUJhZGdlQ2xhc3NlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogdGh5Q291bnQg5Li6IDAg5pe277yM5by65Yi25pi+56S65pWw5a2XIDDvvIzpu5jorqTkuI3mmL7npLpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeUtlZXBTaG93KHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMua2VlcFNob3dWYWx1ZSA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VEaXNwbGF5Q29udGVudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6K6+572u5b695qCH5a2X5L2T55qE6aKc6Imy77yM5pSv5oyB5YaF572u6aKc6Imy5ZKM6Ieq5a6a5LmJ6aKc6ImyICdwcmltYXJ5JyB8ICcjODdkMDY4JyB8IC4uLlxuICAgICAqIEB0eXBlIHN0cmluZ1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeVRleHRDb2xvcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmIChpc1RleHRDb2xvcih2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuYnVpbHRJblRleHRDb2xvckNsYXNzID0gYHRleHQtJHt2YWx1ZX1gO1xuICAgICAgICAgICAgdGhpcy50ZXh0Q29sb3IgPSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy50ZXh0Q29sb3IgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuYnVpbHRJblRleHRDb2xvckNsYXNzID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDorr7nva7lvr3moIfnmoTog4zmma/popzoibLvvIzmlK/mjIHlhoXnva7popzoibLlkozoh6rlrprkuYnpopzoibIgJ3ByaW1hcnknIHwgJyM4N2QwNjgnIHwgLi4uXG4gICAgICogQHR5cGUgc3RyaW5nXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5QmFja2dyb3VuZENvbG9yKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKGlzVGV4dENvbG9yKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5idWlsdEluQmFja2dyb3VuZENvbG9yQ2xhc3MgPSBgYmctJHt2YWx1ZX1gO1xuICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuYnVpbHRJbkJhY2tncm91bmRDb2xvckNsYXNzID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgbGV0IGNoaWxkTm9kZUNvdW50ID0gMDtcbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkTm9kZXMuZm9yRWFjaCgobjogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChbJyNjb21tZW50J10uaW5kZXhPZihuLm5vZGVOYW1lKSA8IDApIHtcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVDb3VudCsrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5pc1dyYXBwZXIgPSBjaGlsZE5vZGVDb3VudCA+IDA7XG5cbiAgICAgICAgdGhpcy5jb21iaW5lQmFkZ2VDbGFzc2VzKCk7XG5cbiAgICAgICAgaWYgKHRoaXMudmFsdWVIYXNCZWVuU2V0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbWJpbmVCYWRnZURpc3BsYXlDb250ZW50KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbWJpbmVCYWRnZUNsYXNzZXMoKSB7XG4gICAgICAgIGNvbnN0IGNsYXNzZXM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGNsYXNzZXMucHVzaChgdGh5LWJhZGdlLSR7dGhpcy50eXBlIHx8ICdkYW5nZXInfWApO1xuICAgICAgICBpZiAodGhpcy5zaXplKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goYHRoeS1iYWRnZS0ke3RoaXMuc2l6ZX1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pc0RvdCkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGB0aHktYmFkZ2UtZG90YCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0hvbGxvdykge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGB0aHktYmFkZ2UtaG9sbG93YCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goYHRoeS1iYWRnZS1jb3VudGApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYnVpbHRJblRleHRDb2xvckNsYXNzKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2godGhpcy5idWlsdEluVGV4dENvbG9yQ2xhc3MpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmJ1aWx0SW5CYWNrZ3JvdW5kQ29sb3JDbGFzcykge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKHRoaXMuYnVpbHRJbkJhY2tncm91bmRDb2xvckNsYXNzKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmJhZGdlQ2xhc3NOYW1lID0gY2xhc3Nlcy5qb2luKCcgJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb21iaW5lQmFkZ2VEaXNwbGF5Q29udGVudCgpIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29udGVudCA9IHRoaXMudmFsdWUgYXMgc3RyaW5nO1xuICAgICAgICBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLm1heENvdW50ICE9IHVuZGVmaW5lZCAmJiAodGhpcy52YWx1ZSBhcyBudW1iZXIpID4gdGhpcy5tYXhDb3VudCkge1xuICAgICAgICAgICAgdGhpcy5kaXNwbGF5Q29udGVudCA9IGAke3RoaXMubWF4Q291bnR9K2A7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMudmFsdWUgJiYgIXRoaXMua2VlcFNob3dWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5pc1Nob3dCYWRnZSA9IGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pc1Nob3dCYWRnZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaWYgKGlzU2hvd0JhZGdlKSB7XG4gIDxkaXYgY2xhc3M9XCJ0aHktYmFkZ2Uge3sgYmFkZ2VDbGFzc05hbWUgfX1cIiBbc3R5bGUuY29sb3JdPVwidGV4dENvbG9yXCIgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJiYWNrZ3JvdW5kQ29sb3JcIj5cbiAgICA8c3Bhbj57eyBkaXNwbGF5Q29udGVudCB9fTwvc3Bhbj5cbiAgPC9kaXY+XG59XG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { Component, ChangeDetectionStrategy, ElementRef, Renderer2 } from '@angular/core';
1
+ import { Component, ChangeDetectionStrategy, ElementRef, Renderer2, inject } from '@angular/core';
2
2
  import { ThyIcon } from 'ngx-tethys/icon';
3
3
  import * as i0 from "@angular/core";
4
4
  /**
@@ -7,9 +7,9 @@ import * as i0 from "@angular/core";
7
7
  * @order 20
8
8
  */
9
9
  export class ThyBreadcrumbItem {
10
- constructor(renderer, elementRef) {
11
- this.renderer = renderer;
12
- this.elementRef = elementRef;
10
+ constructor() {
11
+ this.renderer = inject(Renderer2);
12
+ this.elementRef = inject(ElementRef);
13
13
  }
14
14
  ngAfterViewInit() {
15
15
  this.wrapSpanForText(this.elementRef.nativeElement.childNodes);
@@ -29,7 +29,7 @@ export class ThyBreadcrumbItem {
29
29
  }
30
30
  });
31
31
  }
32
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBreadcrumbItem, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBreadcrumbItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
33
33
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: ThyBreadcrumbItem, isStandalone: true, selector: "thy-breadcrumb-item,[thyBreadcrumbItem]", host: { classAttribute: "thy-breadcrumb-item" }, exportAs: ["ThyBreadcrumbItem"], ngImport: i0, template: '<ng-content></ng-content><thy-icon class="separator-icon" thyIconName="angle-right"></thy-icon>', isInline: true, dependencies: [{ kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
34
34
  }
35
35
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBreadcrumbItem, decorators: [{
@@ -45,5 +45,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
45
45
  standalone: true,
46
46
  imports: [ThyIcon]
47
47
  }]
48
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9icmVhZGNydW1iL2JyZWFkY3J1bWItaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBaUIsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRTFDOzs7O0dBSUc7QUFZSCxNQUFNLE9BQU8saUJBQWlCO0lBQzFCLFlBQ1ksUUFBbUIsRUFDbkIsVUFBc0I7UUFEdEIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQy9CLENBQUM7SUFFSixlQUFlO1FBQ1gsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMvRCxNQUFNLElBQUksR0FBZ0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNFLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUFlO1FBQ25DLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUM1QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDakQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQztnQkFDOUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBeEJRLGlCQUFpQjtrR0FBakIsaUJBQWlCLHFMQVRoQixpR0FBaUcsNERBT2pHLE9BQU87OzJGQUVSLGlCQUFpQjtrQkFYN0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUseUNBQXlDO29CQUNuRCxRQUFRLEVBQUUsaUdBQWlHO29CQUMzRyxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxxQkFBcUI7cUJBQy9CO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQWZ0ZXJWaWV3SW5pdCwgRWxlbWVudFJlZiwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcblxuLyoqXG4gKiDpnaLljIXlsZEgSXRlbSDnu4Tku7ZcbiAqIEBuYW1lIHRoeS1icmVhZGNydW1iLWl0ZW0sW3RoeUJyZWFkY3J1bWJJdGVtXVxuICogQG9yZGVyIDIwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWJyZWFkY3J1bWItaXRlbSxbdGh5QnJlYWRjcnVtYkl0ZW1dJyxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD48dGh5LWljb24gY2xhc3M9XCJzZXBhcmF0b3ItaWNvblwiIHRoeUljb25OYW1lPVwiYW5nbGUtcmlnaHRcIj48L3RoeS1pY29uPicsXG4gICAgZXhwb3J0QXM6ICdUaHlCcmVhZGNydW1iSXRlbScsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoeS1icmVhZGNydW1iLWl0ZW0nXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUaHlJY29uXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlCcmVhZGNydW1iSXRlbSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICAgICkge31cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy53cmFwU3BhbkZvclRleHQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGROb2Rlcyk7XG4gICAgICAgIGNvbnN0IGxpbms6IEhUTUxFbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignYScpO1xuICAgICAgICBpZiAobGluayAmJiBsaW5rLmNoaWxkTm9kZXMpIHtcbiAgICAgICAgICAgIHRoaXMud3JhcFNwYW5Gb3JUZXh0KGxpbmsuY2hpbGROb2Rlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHdyYXBTcGFuRm9yVGV4dChub2RlczogTm9kZUxpc3QpOiB2b2lkIHtcbiAgICAgICAgbm9kZXMuZm9yRWFjaChub2RlID0+IHtcbiAgICAgICAgICAgIGlmIChub2RlLm5vZGVOYW1lID09PSAnI3RleHQnKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3BhbiA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhcmVudCA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZShub2RlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHNwYW4sICd0aHktd3JhcC1zcGFuJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUocGFyZW50LCBzcGFuLCBub2RlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHNwYW4sIG5vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
48
+ }] });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9icmVhZGNydW1iL2JyZWFkY3J1bWItaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBaUIsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUUxQzs7OztHQUlHO0FBWUgsTUFBTSxPQUFPLGlCQUFpQjtJQVg5QjtRQVlZLGFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0IsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQXFCM0M7SUFuQkcsZUFBZTtRQUNYLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDL0QsTUFBTSxJQUFJLEdBQWdCLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzRSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNMLENBQUM7SUFFTyxlQUFlLENBQUMsS0FBZTtRQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDNUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ2pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM5QyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsZUFBZSxDQUFDLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMxQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQXRCUSxpQkFBaUI7a0dBQWpCLGlCQUFpQixxTEFUaEIsaUdBQWlHLDREQU9qRyxPQUFPOzsyRkFFUixpQkFBaUI7a0JBWDdCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHlDQUF5QztvQkFDbkQsUUFBUSxFQUFFLGlHQUFpRztvQkFDM0csUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUscUJBQXFCO3FCQUMvQjtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIEFmdGVyVmlld0luaXQsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcblxuLyoqXG4gKiDpnaLljIXlsZEgSXRlbSDnu4Tku7ZcbiAqIEBuYW1lIHRoeS1icmVhZGNydW1iLWl0ZW0sW3RoeUJyZWFkY3J1bWJJdGVtXVxuICogQG9yZGVyIDIwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWJyZWFkY3J1bWItaXRlbSxbdGh5QnJlYWRjcnVtYkl0ZW1dJyxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD48dGh5LWljb24gY2xhc3M9XCJzZXBhcmF0b3ItaWNvblwiIHRoeUljb25OYW1lPVwiYW5nbGUtcmlnaHRcIj48L3RoeS1pY29uPicsXG4gICAgZXhwb3J0QXM6ICdUaHlCcmVhZGNydW1iSXRlbScsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoeS1icmVhZGNydW1iLWl0ZW0nXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUaHlJY29uXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlCcmVhZGNydW1iSXRlbSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIHByaXZhdGUgcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcbiAgICBwcml2YXRlIGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHRoaXMud3JhcFNwYW5Gb3JUZXh0KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNoaWxkTm9kZXMpO1xuICAgICAgICBjb25zdCBsaW5rOiBIVE1MRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2EnKTtcbiAgICAgICAgaWYgKGxpbmsgJiYgbGluay5jaGlsZE5vZGVzKSB7XG4gICAgICAgICAgICB0aGlzLndyYXBTcGFuRm9yVGV4dChsaW5rLmNoaWxkTm9kZXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB3cmFwU3BhbkZvclRleHQobm9kZXM6IE5vZGVMaXN0KTogdm9pZCB7XG4gICAgICAgIG5vZGVzLmZvckVhY2gobm9kZSA9PiB7XG4gICAgICAgICAgICBpZiAobm9kZS5ub2RlTmFtZSA9PT0gJyN0ZXh0Jykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNwYW4gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYXJlbnQgPSB0aGlzLnJlbmRlcmVyLnBhcmVudE5vZGUobm9kZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhzcGFuLCAndGh5LXdyYXAtc3BhbicpO1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKHBhcmVudCwgc3Bhbiwgbm9kZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChzcGFuLCBub2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19