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,6 +1,6 @@
1
- import { Component, ChangeDetectionStrategy, Input, ContentChild, TemplateRef, numberAttribute, ChangeDetectorRef } from '@angular/core';
1
+ import { Component, ChangeDetectionStrategy, Input, ContentChild, TemplateRef, numberAttribute, ChangeDetectorRef, inject } from '@angular/core';
2
2
  import { ThyIcon } from 'ngx-tethys/icon';
3
- import { NgIf, NgClass, NgTemplateOutlet, NgFor } from '@angular/common';
3
+ import { NgClass, NgTemplateOutlet } from '@angular/common';
4
4
  import { ThyBreadcrumbItem } from './breadcrumb-item.component';
5
5
  import { ThyDropdownDirective, ThyDropdownMenuComponent, ThyDropdownMenuItemDirective, ThyDropdownMenuItemNameDirective } from 'ngx-tethys/dropdown';
6
6
  import { ThyAction } from 'ngx-tethys/action';
@@ -14,14 +14,8 @@ const ELLIPSIS_ITEM = { _id: THY_BREADCRUMB_ITEM_ELLIPSIS_ID };
14
14
  * @order 10
15
15
  */
16
16
  export class ThyBreadcrumb {
17
- /**
18
- * 面包屑的前缀 展示图标,如 folder-fill
19
- */
20
- set thyIcon(icon) {
21
- this.setIcon(icon);
22
- }
23
- constructor(cdr) {
24
- this.cdr = cdr;
17
+ constructor() {
18
+ this.cdr = inject(ChangeDetectorRef);
25
19
  /**
26
20
  * 最大显示数量,超出此数量后,面包屑会被省略, 0 表示不省略(仅当传入 thyItems 时有效)
27
21
  */
@@ -32,6 +26,12 @@ export class ThyBreadcrumb {
32
26
  this.thyExpandable = true;
33
27
  this.ellipsisItemId = THY_BREADCRUMB_ITEM_ELLIPSIS_ID;
34
28
  }
29
+ /**
30
+ * 面包屑的前缀 展示图标,如 folder-fill
31
+ */
32
+ set thyIcon(icon) {
33
+ this.setIcon(icon);
34
+ }
35
35
  ngOnInit() {
36
36
  this.resetItems();
37
37
  }
@@ -72,8 +72,8 @@ export class ThyBreadcrumb {
72
72
  this.ellipsisItems = [];
73
73
  }
74
74
  }
75
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBreadcrumb, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
76
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyBreadcrumb, isStandalone: true, selector: "thy-breadcrumb", inputs: { thyIcon: "thyIcon", thySeparator: "thySeparator", items: ["thyItems", "items"], thyMaxCount: ["thyMaxCount", "thyMaxCount", numberAttribute], thyExpandable: ["thyExpandable", "thyExpandable", coerceBooleanProperty] }, host: { properties: { "class.thy-breadcrumb-separator": "!!thySeparator", "class.thy-breadcrumb-separator-slash": "thySeparator === \"slash\"", "class.thy-breadcrumb-separator-backslash": "thySeparator === \"backslash\"", "class.thy-breadcrumb-separator-vertical-line": "thySeparator === \"vertical-line\"" }, classAttribute: "thy-breadcrumb" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: ["item"], descendants: true }], exportAs: ["ThyBreadcrumb"], usesOnChanges: true, ngImport: i0, template: "<div class=\"thy-breadcrumb-icon\" *ngIf=\"svgIconName || iconClasses\">\n <thy-icon *ngIf=\"svgIconName; else iconFont\" [thyIconName]=\"svgIconName\"></thy-icon>\n <ng-template #iconFont>\n <i [ngClass]=\"iconClasses\"></i>\n </ng-template>\n</div>\n\n<ng-container *ngFor=\"let item of showItems\">\n <thy-breadcrumb-item class=\"thy-breadcrumb-item-ellipsis\">\n <ng-container *ngIf=\"item?._id !== ellipsisItemId; else ellipsisTpl\">\n <ng-container *ngTemplateOutlet=\"itemContentTpl; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-template #ellipsisTpl>\n <a\n thyAction\n href=\"javascript:;\"\n thyActionIcon=\"more\"\n thyActiveClass=\"active\"\n [class.disabled]=\"!thyExpandable\"\n class=\"ellipsis-action ml-n1 mr-n1\"\n [thyDropdown]=\"ellipsisList\"\n ></a>\n </ng-template>\n </thy-breadcrumb-item>\n</ng-container>\n\n<ng-template #ellipsisList>\n <thy-dropdown-menu thyImmediateRender>\n <a thyDropdownMenuItem *ngFor=\"let item of ellipsisItems\" href=\"javascript:;\">\n <ng-template *ngTemplateOutlet=\"itemContentTpl; context: { $implicit: item }\"></ng-template>\n </a>\n </thy-dropdown-menu>\n</ng-template>\n\n<ng-template #itemContentTpl let-item>\n <ng-container *ngIf=\"itemTemplate; else defaultItemTpl\">\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-template>\n </ng-container>\n <ng-template #defaultItemTpl>\n <thy-icon *ngIf=\"item?.icon\" [thyIconName]=\"item.icon\" class=\"mr-2\"></thy-icon>\n <span *ngIf=\"item?.name\">{{ item.name }}</span>\n </ng-template>\n</ng-template>\n\n<ng-content></ng-content>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ThyBreadcrumbItem, selector: "thy-breadcrumb-item,[thyBreadcrumbItem]", exportAs: ["ThyBreadcrumbItem"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyAction, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "directive", type: ThyDropdownDirective, selector: "[thyDropdown]", inputs: ["thyDropdownMenu", "thyDropdown", "thyTrigger", "thyShowDelay", "thyHideDelay", "thyActiveClass", "thyPopoverOptions", "thyPlacement", "thyMenuInsideClosable", "thyPanelClass"], outputs: ["thyActiveChange"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBreadcrumb, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyBreadcrumb, isStandalone: true, selector: "thy-breadcrumb", inputs: { thyIcon: "thyIcon", thySeparator: "thySeparator", items: ["thyItems", "items"], thyMaxCount: ["thyMaxCount", "thyMaxCount", numberAttribute], thyExpandable: ["thyExpandable", "thyExpandable", coerceBooleanProperty] }, host: { properties: { "class.thy-breadcrumb-separator": "!!thySeparator", "class.thy-breadcrumb-separator-slash": "thySeparator === \"slash\"", "class.thy-breadcrumb-separator-backslash": "thySeparator === \"backslash\"", "class.thy-breadcrumb-separator-vertical-line": "thySeparator === \"vertical-line\"" }, classAttribute: "thy-breadcrumb" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: ["item"], descendants: true }], exportAs: ["ThyBreadcrumb"], usesOnChanges: true, ngImport: i0, template: "@if (svgIconName || iconClasses) {\n <div class=\"thy-breadcrumb-icon\">\n @if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\"></thy-icon>\n } @else {\n <i [ngClass]=\"iconClasses\"></i>\n }\n </div>\n}\n\n@for (item of showItems; track $index) {\n <thy-breadcrumb-item class=\"thy-breadcrumb-item-ellipsis\">\n @if (item?._id !== ellipsisItemId) {\n <ng-container *ngTemplateOutlet=\"itemContentTpl; context: { $implicit: item }\"></ng-container>\n } @else {\n <a\n thyAction\n href=\"javascript:;\"\n thyActionIcon=\"more\"\n thyActiveClass=\"active\"\n [class.disabled]=\"!thyExpandable\"\n class=\"ellipsis-action ml-n1 mr-n1\"\n [thyDropdown]=\"ellipsisList\"></a>\n }\n </thy-breadcrumb-item>\n}\n\n<ng-template #ellipsisList>\n <thy-dropdown-menu thyImmediateRender>\n @for (item of ellipsisItems; track $index) {\n <a thyDropdownMenuItem href=\"javascript:;\">\n <ng-template *ngTemplateOutlet=\"itemContentTpl; context: { $implicit: item }\"></ng-template>\n </a>\n }\n </thy-dropdown-menu>\n</ng-template>\n\n<ng-template #itemContentTpl let-item>\n @if (itemTemplate) {\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-template>\n } @else {\n @if (item?.icon) {\n <thy-icon [thyIconName]=\"item.icon\" class=\"mr-2\"></thy-icon>\n }\n @if (item?.name) {\n <span>{{ item.name }}</span>\n }\n }\n</ng-template>\n\n<ng-content></ng-content>\n", dependencies: [{ kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ThyBreadcrumbItem, selector: "thy-breadcrumb-item,[thyBreadcrumbItem]", exportAs: ["ThyBreadcrumbItem"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyAction, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "directive", type: ThyDropdownDirective, selector: "[thyDropdown]", inputs: ["thyDropdownMenu", "thyDropdown", "thyTrigger", "thyShowDelay", "thyHideDelay", "thyActiveClass", "thyPopoverOptions", "thyPlacement", "thyMenuInsideClosable", "thyPanelClass"], outputs: ["thyActiveChange"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
77
77
  }
78
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyBreadcrumb, decorators: [{
79
79
  type: Component,
@@ -84,8 +84,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
84
84
  '[class.thy-breadcrumb-separator-backslash]': 'thySeparator === "backslash"',
85
85
  '[class.thy-breadcrumb-separator-vertical-line]': 'thySeparator === "vertical-line"'
86
86
  }, standalone: true, imports: [
87
- NgIf,
88
- NgFor,
89
87
  ThyIcon,
90
88
  NgClass,
91
89
  ThyBreadcrumbItem,
@@ -96,8 +94,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
96
94
  ThyDropdownMenuItemNameDirective,
97
95
  ThyDropdownMenuComponent,
98
96
  ThyIcon
99
- ], template: "<div class=\"thy-breadcrumb-icon\" *ngIf=\"svgIconName || iconClasses\">\n <thy-icon *ngIf=\"svgIconName; else iconFont\" [thyIconName]=\"svgIconName\"></thy-icon>\n <ng-template #iconFont>\n <i [ngClass]=\"iconClasses\"></i>\n </ng-template>\n</div>\n\n<ng-container *ngFor=\"let item of showItems\">\n <thy-breadcrumb-item class=\"thy-breadcrumb-item-ellipsis\">\n <ng-container *ngIf=\"item?._id !== ellipsisItemId; else ellipsisTpl\">\n <ng-container *ngTemplateOutlet=\"itemContentTpl; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-template #ellipsisTpl>\n <a\n thyAction\n href=\"javascript:;\"\n thyActionIcon=\"more\"\n thyActiveClass=\"active\"\n [class.disabled]=\"!thyExpandable\"\n class=\"ellipsis-action ml-n1 mr-n1\"\n [thyDropdown]=\"ellipsisList\"\n ></a>\n </ng-template>\n </thy-breadcrumb-item>\n</ng-container>\n\n<ng-template #ellipsisList>\n <thy-dropdown-menu thyImmediateRender>\n <a thyDropdownMenuItem *ngFor=\"let item of ellipsisItems\" href=\"javascript:;\">\n <ng-template *ngTemplateOutlet=\"itemContentTpl; context: { $implicit: item }\"></ng-template>\n </a>\n </thy-dropdown-menu>\n</ng-template>\n\n<ng-template #itemContentTpl let-item>\n <ng-container *ngIf=\"itemTemplate; else defaultItemTpl\">\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-template>\n </ng-container>\n <ng-template #defaultItemTpl>\n <thy-icon *ngIf=\"item?.icon\" [thyIconName]=\"item.icon\" class=\"mr-2\"></thy-icon>\n <span *ngIf=\"item?.name\">{{ item.name }}</span>\n </ng-template>\n</ng-template>\n\n<ng-content></ng-content>" }]
100
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { thyIcon: [{
97
+ ], template: "@if (svgIconName || iconClasses) {\n <div class=\"thy-breadcrumb-icon\">\n @if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\"></thy-icon>\n } @else {\n <i [ngClass]=\"iconClasses\"></i>\n }\n </div>\n}\n\n@for (item of showItems; track $index) {\n <thy-breadcrumb-item class=\"thy-breadcrumb-item-ellipsis\">\n @if (item?._id !== ellipsisItemId) {\n <ng-container *ngTemplateOutlet=\"itemContentTpl; context: { $implicit: item }\"></ng-container>\n } @else {\n <a\n thyAction\n href=\"javascript:;\"\n thyActionIcon=\"more\"\n thyActiveClass=\"active\"\n [class.disabled]=\"!thyExpandable\"\n class=\"ellipsis-action ml-n1 mr-n1\"\n [thyDropdown]=\"ellipsisList\"></a>\n }\n </thy-breadcrumb-item>\n}\n\n<ng-template #ellipsisList>\n <thy-dropdown-menu thyImmediateRender>\n @for (item of ellipsisItems; track $index) {\n <a thyDropdownMenuItem href=\"javascript:;\">\n <ng-template *ngTemplateOutlet=\"itemContentTpl; context: { $implicit: item }\"></ng-template>\n </a>\n }\n </thy-dropdown-menu>\n</ng-template>\n\n<ng-template #itemContentTpl let-item>\n @if (itemTemplate) {\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-template>\n } @else {\n @if (item?.icon) {\n <thy-icon [thyIconName]=\"item.icon\" class=\"mr-2\"></thy-icon>\n }\n @if (item?.name) {\n <span>{{ item.name }}</span>\n }\n }\n</ng-template>\n\n<ng-content></ng-content>\n" }]
98
+ }], propDecorators: { thyIcon: [{
101
99
  type: Input
102
100
  }], thySeparator: [{
103
101
  type: Input
@@ -114,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
114
112
  type: ContentChild,
115
113
  args: ['item']
116
114
  }] } });
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsS0FBSyxFQUNMLFlBQVksRUFDWixXQUFXLEVBQ1gsZUFBZSxFQUlmLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFaEUsT0FBTyxFQUNILG9CQUFvQixFQUNwQix3QkFBd0IsRUFDeEIsNEJBQTRCLEVBQzVCLGdDQUFnQyxFQUNuQyxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFeEQsTUFBTSwrQkFBK0IsR0FBRyxpQ0FBaUMsQ0FBQztBQUUxRSxNQUFNLGFBQWEsR0FBRyxFQUFFLEdBQUcsRUFBRSwrQkFBK0IsRUFBRSxDQUFDO0FBRS9EOzs7O0dBSUc7QUE2QkgsTUFBTSxPQUFPLGFBQWE7SUFJdEI7O09BRUc7SUFDSCxJQUNJLE9BQU8sQ0FBQyxJQUFZO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQWtDRCxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxD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MEJBQTBCO3dCQUNwRSw0Q0FBNEMsRUFBRSw4QkFBOEI7d0JBQzVFLGdEQUFnRCxFQUFFLGtDQUFrQztxQkFDdkYsY0FDVyxJQUFJLFdBQ1A7d0JBQ0wsSUFBSTt3QkFDSixLQUFLO3dCQUNMLE9BQU87d0JBQ1AsT0FBTzt3QkFDUCxpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIsU0FBUzt3QkFDVCxvQkFBb0I7d0JBQ3BCLDRCQUE0Qjt3QkFDNUIsZ0NBQWdDO3dCQUNoQyx3QkFBd0I7d0JBQ3hCLE9BQU87cUJBQ1Y7c0ZBVUcsT0FBTztzQkFEVixLQUFLO2dCQVNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBS3dCLEtBQUs7c0JBQWxDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFO2dCQUtXLFdBQVc7c0JBQWpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUtRLGFBQWE7c0JBQXpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBS3JCLFlBQVk7c0JBQWpDLFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIElucHV0LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBudW1iZXJBdHRyaWJ1dGUsXG4gICAgT25DaGFuZ2VzLFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGh5SWNvbiB9IGZyb20gJ25neC10ZXRoeXMvaWNvbic7XG5pbXBvcnQgeyBOZ0lmLCBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0LCBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUaHlCcmVhZGNydW1iSXRlbSB9IGZyb20gJy4vYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTYWZlQW55IH0gZnJvbSAnbmd4LXRldGh5cy90eXBlcyc7XG5pbXBvcnQge1xuICAgIFRoeURyb3Bkb3duRGlyZWN0aXZlLFxuICAgIFRoeURyb3Bkb3duTWVudUNvbXBvbmVudCxcbiAgICBUaHlEcm9wZG93bk1lbnVJdGVtRGlyZWN0aXZlLFxuICAgIFRoeURyb3Bkb3duTWVudUl0ZW1OYW1lRGlyZWN0aXZlXG59IGZyb20gJ25neC10ZXRoeXMvZHJvcGRvd24nO1xuaW1wb3J0IHsgVGh5QWN0aW9uIH0gZnJvbSAnbmd4LXRldGh5cy9hY3Rpb24nO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcblxuY29uc3QgVEhZX0JSRUFEQ1JVTUJfSVRFTV9FTExJUFNJU19JRCA9ICdUSFlfQlJFQURDUlVNQl9JVEVNX0VMTElQU0lTX0lEJztcblxuY29uc3QgRUxMSVBTSVNfSVRFTSA9IHsgX2lkOiBUSFlfQlJFQURDUlVNQl9JVEVNX0VMTElQU0lTX0lEIH07XG5cbi8qKlxuICog6Z2i5YyF5bGR57uE5Lu2XG4gKiBAbmFtZSB0aHktYnJlYWRjcnVtYlxuICogQG9yZGVyIDEwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWJyZWFkY3J1bWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcbiAgICBleHBvcnRBczogJ1RoeUJyZWFkY3J1bWInLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aHktYnJlYWRjcnVtYicsXG4gICAgICAgICdbY2xhc3MudGh5LWJyZWFkY3J1bWItc2VwYXJhdG9yXSc6ICchIXRoeVNlcGFyYXRvcicsXG4gICAgICAgICdbY2xhc3MudGh5LWJyZWFkY3J1bWItc2VwYXJhdG9yLXNsYXNoXSc6ICd0aHlTZXBhcmF0b3IgPT09IFwic2xhc2hcIicsXG4gICAgICAgICdbY2xhc3MudGh5LWJyZWFkY3J1bWItc2VwYXJhdG9yLWJhY2tzbGFzaF0nOiAndGh5U2VwYXJhdG9yID09PSBcImJhY2tzbGFzaFwiJyxcbiAgICAgICAgJ1tjbGFzcy50aHktYnJlYWRjcnVtYi1zZXBhcmF0b3ItdmVydGljYWwtbGluZV0nOiAndGh5U2VwYXJhdG9yID09PSBcInZlcnRpY2FsLWxpbmVcIidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ0lmLFxuICAgICAgICBOZ0ZvcixcbiAgICAgICAgVGh5SWNvbixcbiAgICAgICAgTmdDbGFzcyxcbiAgICAgICAgVGh5QnJlYWRjcnVtYkl0ZW0sXG4gICAgICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgICAgIFRoeUFjdGlvbixcbiAgICAgICAgVGh5RHJvcGRvd25EaXJlY3RpdmUsXG4gICAgICAgIFRoeURyb3Bkb3duTWVudUl0ZW1EaXJlY3RpdmUsXG4gICAgICAgIFRoeURyb3Bkb3duTWVudUl0ZW1OYW1lRGlyZWN0aXZlLFxuICAgICAgICBUaHlEcm9wZG93bk1lbnVDb21wb25lbnQsXG4gICAgICAgIFRoeUljb25cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUJyZWFkY3J1bWIgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gICAgaWNvbkNsYXNzZXM6IHN0cmluZ1tdO1xuICAgIHN2Z0ljb25OYW1lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDpnaLljIXlsZHnmoTliY3nvIAg5bGV56S65Zu+5qCH77yM5aaCIGZvbGRlci1maWxsXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5SWNvbihpY29uOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zZXRJY29uKGljb24pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOmdouWMheWxkeeahOWIhumalOespu+8jOS4jeS8oOWAvOm7mOiupOS4uiBcIj5cIlxuICAgICAqIEB0eXBlIHNsYXNoIHwgYmFja3NsYXNoIHwgdmVydGljYWwtbGluZVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVNlcGFyYXRvcjogJ3NsYXNoJyB8ICdiYWNrc2xhc2gnIHwgJ3ZlcnRpY2FsLWxpbmUnO1xuXG4gICAgLyoqXG4gICAgICog6Z2i5YyF5bGR55qE5q+P5LiA6aG55pWw5o2uXG4gICAgICovXG4gICAgQElucHV0KHsgYWxpYXM6ICd0aHlJdGVtcycgfSkgaXRlbXM6IFNhZmVBbnlbXTtcblxuICAgIC8qKlxuICAgICAqIOacgOWkp+aYvuekuuaVsOmHj++8jOi2heWHuuatpOaVsOmHj+WQju+8jOmdouWMheWxkeS8muiiq+ecgeeVpSwgMCDooajnpLrkuI3nnIHnlaXvvIjku4XlvZPkvKDlhaUgdGh5SXRlbXMg5pe25pyJ5pWI77yJXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSkgdGh5TWF4Q291bnQgPSA0O1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5Y+v54K55Ye75by55Ye65bey6KKr55yB55Wl55qE6Z2i5YyF5bGR6aG577yI5LuF5b2T5Lyg5YWlIHRoeUl0ZW1zIOaXtuacieaViO+8iVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeUV4cGFuZGFibGUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog6Z2i5YyF5bGR55qE5q+P5LiA6aG55qih5p2/77yI5LuF5b2T5Lyg5YWlIHRoeUl0ZW1zIOaXtuacieaViO+8iVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoJ2l0ZW0nKSBpdGVtVGVtcGxhdGU6IFRlbXBsYXRlUmVmPFNhZmVBbnk+O1xuXG4gICAgcHVibGljIGVsbGlwc2lzSXRlbUlkID0gVEhZX0JSRUFEQ1JVTUJfSVRFTV9FTExJUFNJU19JRDtcblxuICAgIHB1YmxpYyBlbGxpcHNpc0l0ZW1zOiBTYWZlQW55W107XG5cbiAgICBwdWJsaWMgc2hvd0l0ZW1zOiBTYWZlQW55W107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5yZXNldEl0ZW1zKCk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAoKGNoYW5nZXMuaXRlbXMgJiYgIWNoYW5nZXMuaXRlbXMuZmlyc3RDaGFuZ2UpIHx8IChjaGFuZ2VzLnRoeU1heENvdW50ICYmICFjaGFuZ2VzLnRoeU1heENvdW50LmZpcnN0Q2hhbmdlKSkge1xuICAgICAgICAgICAgdGhpcy5yZXNldEl0ZW1zKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEljb24oaWNvbjogc3RyaW5nKSB7XG4gICAgICAgIGlmIChpY29uKSB7XG4gICAgICAgICAgICBpZiAoaWNvbi5pbmNsdWRlcygnd3RmJykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjbGFzc2VzID0gaWNvbi5zcGxpdCgnICcpO1xuICAgICAgICAgICAgICAgIGlmIChjbGFzc2VzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICBjbGFzc2VzLnVuc2hpZnQoJ3d0ZicpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmljb25DbGFzc2VzID0gY2xhc3NlcztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdmdJY29uTmFtZSA9IGljb247XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmljb25DbGFzc2VzID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuc3ZnSWNvbk5hbWUgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXNldEl0ZW1zKCkge1xuICAgICAgICBpZiAoIXRoaXMuaXRlbXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnRoeU1heENvdW50ICYmIHRoaXMuaXRlbXMubGVuZ3RoID4gdGhpcy50aHlNYXhDb3VudCkge1xuICAgICAgICAgICAgY29uc3QgZWxsaXBzaXNJbmRleCA9IHRoaXMuaXRlbXMubGVuZ3RoIC0gdGhpcy50aHlNYXhDb3VudCArIDI7XG4gICAgICAgICAgICB0aGlzLmVsbGlwc2lzSXRlbXMgPSB0aGlzLml0ZW1zLnNsaWNlKDEsIGVsbGlwc2lzSW5kZXgpO1xuICAgICAgICAgICAgdGhpcy5zaG93SXRlbXMgPSBbdGhpcy5pdGVtc1swXSwgRUxMSVBTSVNfSVRFTSwgLi4udGhpcy5pdGVtcy5zbGljZShlbGxpcHNpc0luZGV4KV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNob3dJdGVtcyA9IFsuLi50aGlzLml0ZW1zXTtcbiAgICAgICAgICAgIHRoaXMuZWxsaXBzaXNJdGVtcyA9IFtdO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRoeS1icmVhZGNydW1iLWljb25cIiAqbmdJZj1cInN2Z0ljb25OYW1lIHx8IGljb25DbGFzc2VzXCI+XG4gIDx0aHktaWNvbiAqbmdJZj1cInN2Z0ljb25OYW1lOyBlbHNlIGljb25Gb250XCIgW3RoeUljb25OYW1lXT1cInN2Z0ljb25OYW1lXCI+PC90aHktaWNvbj5cbiAgPG5nLXRlbXBsYXRlICNpY29uRm9udD5cbiAgICA8aSBbbmdDbGFzc109XCJpY29uQ2xhc3Nlc1wiPjwvaT5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHNob3dJdGVtc1wiPlxuICA8dGh5LWJyZWFkY3J1bWItaXRlbSBjbGFzcz1cInRoeS1icmVhZGNydW1iLWl0ZW0tZWxsaXBzaXNcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbT8uX2lkICE9PSBlbGxpcHNpc0l0ZW1JZDsgZWxzZSBlbGxpcHNpc1RwbFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1Db250ZW50VHBsOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNlbGxpcHNpc1RwbD5cbiAgICAgIDxhXG4gICAgICAgIHRoeUFjdGlvblxuICAgICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgICAgdGh5QWN0aW9uSWNvbj1cIm1vcmVcIlxuICAgICAgICB0aHlBY3RpdmVDbGFzcz1cImFjdGl2ZVwiXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhdGh5RXhwYW5kYWJsZVwiXG4gICAgICAgIGNsYXNzPVwiZWxsaXBzaXMtYWN0aW9uIG1sLW4xIG1yLW4xXCJcbiAgICAgICAgW3RoeURyb3Bkb3duXT1cImVsbGlwc2lzTGlzdFwiXG4gICAgICA+PC9hPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvdGh5LWJyZWFkY3J1bWItaXRlbT5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2VsbGlwc2lzTGlzdD5cbiAgPHRoeS1kcm9wZG93bi1tZW51IHRoeUltbWVkaWF0ZVJlbmRlcj5cbiAgICA8YSB0aHlEcm9wZG93bk1lbnVJdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIGVsbGlwc2lzSXRlbXNcIiBocmVmPVwiamF2YXNjcmlwdDo7XCI+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtQ29udGVudFRwbDsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0gfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9hPlxuICA8L3RoeS1kcm9wZG93bi1tZW51PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNpdGVtQ29udGVudFRwbCBsZXQtaXRlbT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW1UZW1wbGF0ZTsgZWxzZSBkZWZhdWx0SXRlbVRwbFwiPlxuICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0gfVwiPjwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2RlZmF1bHRJdGVtVHBsPlxuICAgIDx0aHktaWNvbiAqbmdJZj1cIml0ZW0/Lmljb25cIiBbdGh5SWNvbk5hbWVdPVwiaXRlbS5pY29uXCIgY2xhc3M9XCJtci0yXCI+PC90aHktaWNvbj5cbiAgICA8c3BhbiAqbmdJZj1cIml0ZW0/Lm5hbWVcIj57eyBpdGVtLm5hbWUgfX08L3NwYW4+XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuXG48bmctY29udGVudD48L25nLWNvbnRlbnQ+Il19
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsS0FBSyxFQUNMLFlBQVksRUFDWixXQUFXLEVBQ1gsZUFBZSxFQUlmLGlCQUFpQixFQUNqQixNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLHdCQUF3QixFQUN4Qiw0QkFBNEIsRUFDNUIsZ0NBQWdDLEVBQ25DLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUV4RCxNQUFNLCtCQUErQixHQUFHLGlDQUFpQyxDQUFDO0FBRTFFLE1BQU0sYUFBYSxHQUFHLEVBQUUsR0FBRyxFQUFFLCtCQUErQixFQUFFLENBQUM7QUFFL0Q7Ozs7R0FJRztBQTJCSCxNQUFNLE9BQU8sYUFBYTtJQTFCMUI7UUEyQlksUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBd0J4Qzs7V0FFRztRQUNvQyxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUV2RDs7V0FFRztRQUMwQyxrQkFBYSxHQUFHLElBQUksQ0FBQztRQU8zRCxtQkFB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O3dCQUM1RSxnREFBZ0QsRUFBRSxrQ0FBa0M7cUJBQ3ZGLGNBQ1csSUFBSSxXQUNQO3dCQUNMLE9BQU87d0JBQ1AsT0FBTzt3QkFDUCxpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIsU0FBUzt3QkFDVCxvQkFBb0I7d0JBQ3BCLDRCQUE0Qjt3QkFDNUIsZ0NBQWdDO3dCQUNoQyx3QkFBd0I7d0JBQ3hCLE9BQU87cUJBQ1Y7OEJBWUcsT0FBTztzQkFEVixLQUFLO2dCQVNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBS3dCLEtBQUs7c0JBQWxDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFO2dCQUtXLFdBQVc7c0JBQWpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUtRLGFBQWE7c0JBQXpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBS3JCLFlBQVk7c0JBQWpDLFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIElucHV0LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBudW1iZXJBdHRyaWJ1dGUsXG4gICAgT25DaGFuZ2VzLFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIGluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeUljb24gfSBmcm9tICduZ3gtdGV0aHlzL2ljb24nO1xuaW1wb3J0IHsgTmdDbGFzcywgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUaHlCcmVhZGNydW1iSXRlbSB9IGZyb20gJy4vYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTYWZlQW55IH0gZnJvbSAnbmd4LXRldGh5cy90eXBlcyc7XG5pbXBvcnQge1xuICAgIFRoeURyb3Bkb3duRGlyZWN0aXZlLFxuICAgIFRoeURyb3Bkb3duTWVudUNvbXBvbmVudCxcbiAgICBUaHlEcm9wZG93bk1lbnVJdGVtRGlyZWN0aXZlLFxuICAgIFRoeURyb3Bkb3duTWVudUl0ZW1OYW1lRGlyZWN0aXZlXG59IGZyb20gJ25neC10ZXRoeXMvZHJvcGRvd24nO1xuaW1wb3J0IHsgVGh5QWN0aW9uIH0gZnJvbSAnbmd4LXRldGh5cy9hY3Rpb24nO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcblxuY29uc3QgVEhZX0JSRUFEQ1JVTUJfSVRFTV9FTExJUFNJU19JRCA9ICdUSFlfQlJFQURDUlVNQl9JVEVNX0VMTElQU0lTX0lEJztcblxuY29uc3QgRUxMSVBTSVNfSVRFTSA9IHsgX2lkOiBUSFlfQlJFQURDUlVNQl9JVEVNX0VMTElQU0lTX0lEIH07XG5cbi8qKlxuICog6Z2i5YyF5bGR57uE5Lu2XG4gKiBAbmFtZSB0aHktYnJlYWRjcnVtYlxuICogQG9yZGVyIDEwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWJyZWFkY3J1bWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcbiAgICBleHBvcnRBczogJ1RoeUJyZWFkY3J1bWInLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aHktYnJlYWRjcnVtYicsXG4gICAgICAgICdbY2xhc3MudGh5LWJyZWFkY3J1bWItc2VwYXJhdG9yXSc6ICchIXRoeVNlcGFyYXRvcicsXG4gICAgICAgICdbY2xhc3MudGh5LWJyZWFkY3J1bWItc2VwYXJhdG9yLXNsYXNoXSc6ICd0aHlTZXBhcmF0b3IgPT09IFwic2xhc2hcIicsXG4gICAgICAgICdbY2xhc3MudGh5LWJyZWFkY3J1bWItc2VwYXJhdG9yLWJhY2tzbGFzaF0nOiAndGh5U2VwYXJhdG9yID09PSBcImJhY2tzbGFzaFwiJyxcbiAgICAgICAgJ1tjbGFzcy50aHktYnJlYWRjcnVtYi1zZXBhcmF0b3ItdmVydGljYWwtbGluZV0nOiAndGh5U2VwYXJhdG9yID09PSBcInZlcnRpY2FsLWxpbmVcIidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBUaHlJY29uLFxuICAgICAgICBOZ0NsYXNzLFxuICAgICAgICBUaHlCcmVhZGNydW1iSXRlbSxcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgVGh5QWN0aW9uLFxuICAgICAgICBUaHlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51SXRlbURpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51SXRlbU5hbWVEaXJlY3RpdmUsXG4gICAgICAgIFRoeURyb3Bkb3duTWVudUNvbXBvbmVudCxcbiAgICAgICAgVGh5SWNvblxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGh5QnJlYWRjcnVtYiBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBwcml2YXRlIGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICBpY29uQ2xhc3Nlczogc3RyaW5nW107XG4gICAgc3ZnSWNvbk5hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIOmdouWMheWxkeeahOWJjee8gCDlsZXnpLrlm77moIfvvIzlpoIgZm9sZGVyLWZpbGxcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlJY29uKGljb246IHN0cmluZykge1xuICAgICAgICB0aGlzLnNldEljb24oaWNvbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6Z2i5YyF5bGR55qE5YiG6ZqU56ym77yM5LiN5Lyg5YC86buY6K6k5Li6IFwiPlwiXG4gICAgICogQHR5cGUgc2xhc2ggfCBiYWNrc2xhc2ggfCB2ZXJ0aWNhbC1saW5lXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5U2VwYXJhdG9yOiAnc2xhc2gnIHwgJ2JhY2tzbGFzaCcgfCAndmVydGljYWwtbGluZSc7XG5cbiAgICAvKipcbiAgICAgKiDpnaLljIXlsZHnmoTmr4/kuIDpobnmlbDmja5cbiAgICAgKi9cbiAgICBASW5wdXQoeyBhbGlhczogJ3RoeUl0ZW1zJyB9KSBpdGVtczogU2FmZUFueVtdO1xuXG4gICAgLyoqXG4gICAgICog5pyA5aSn5pi+56S65pWw6YeP77yM6LaF5Ye65q2k5pWw6YeP5ZCO77yM6Z2i5YyF5bGR5Lya6KKr55yB55WlLCAwIOihqOekuuS4jeecgeeVpe+8iOS7heW9k+S8oOWFpSB0aHlJdGVtcyDml7bmnInmlYjvvIlcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSB0aHlNYXhDb3VudCA9IDQ7XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKblj6/ngrnlh7vlvLnlh7rlt7LooqvnnIHnlaXnmoTpnaLljIXlsZHpobnvvIjku4XlvZPkvKDlhaUgdGh5SXRlbXMg5pe25pyJ5pWI77yJXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSkgdGh5RXhwYW5kYWJsZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiDpnaLljIXlsZHnmoTmr4/kuIDpobnmqKHmnb/vvIjku4XlvZPkvKDlhaUgdGh5SXRlbXMg5pe25pyJ5pWI77yJXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnaXRlbScpIGl0ZW1UZW1wbGF0ZTogVGVtcGxhdGVSZWY8U2FmZUFueT47XG5cbiAgICBwdWJsaWMgZWxsaXBzaXNJdGVtSWQgPSBUSFlfQlJFQURDUlVNQl9JVEVNX0VMTElQU0lTX0lEO1xuXG4gICAgcHVibGljIGVsbGlwc2lzSXRlbXM6IFNhZmVBbnlbXTtcblxuICAgIHB1YmxpYyBzaG93SXRlbXM6IFNhZmVBbnlbXTtcblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnJlc2V0SXRlbXMoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGlmICgoY2hhbmdlcy5pdGVtcyAmJiAhY2hhbmdlcy5pdGVtcy5maXJzdENoYW5nZSkgfHwgKGNoYW5nZXMudGh5TWF4Q291bnQgJiYgIWNoYW5nZXMudGh5TWF4Q291bnQuZmlyc3RDaGFuZ2UpKSB7XG4gICAgICAgICAgICB0aGlzLnJlc2V0SXRlbXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2V0SWNvbihpY29uOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKGljb24pIHtcbiAgICAgICAgICAgIGlmIChpY29uLmluY2x1ZGVzKCd3dGYnKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNsYXNzZXMgPSBpY29uLnNwbGl0KCcgJyk7XG4gICAgICAgICAgICAgICAgaWYgKGNsYXNzZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXMudW5zaGlmdCgnd3RmJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuaWNvbkNsYXNzZXMgPSBjbGFzc2VzO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN2Z0ljb25OYW1lID0gaWNvbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaWNvbkNsYXNzZXMgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5zdmdJY29uTmFtZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc2V0SXRlbXMoKSB7XG4gICAgICAgIGlmICghdGhpcy5pdGVtcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudGh5TWF4Q291bnQgJiYgdGhpcy5pdGVtcy5sZW5ndGggPiB0aGlzLnRoeU1heENvdW50KSB7XG4gICAgICAgICAgICBjb25zdCBlbGxpcHNpc0luZGV4ID0gdGhpcy5pdGVtcy5sZW5ndGggLSB0aGlzLnRoeU1heENvdW50ICsgMjtcbiAgICAgICAgICAgIHRoaXMuZWxsaXBzaXNJdGVtcyA9IHRoaXMuaXRlbXMuc2xpY2UoMSwgZWxsaXBzaXNJbmRleCk7XG4gICAgICAgICAgICB0aGlzLnNob3dJdGVtcyA9IFt0aGlzLml0ZW1zWzBdLCBFTExJUFNJU19JVEVNLCAuLi50aGlzLml0ZW1zLnNsaWNlKGVsbGlwc2lzSW5kZXgpXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd0l0ZW1zID0gWy4uLnRoaXMuaXRlbXNdO1xuICAgICAgICAgICAgdGhpcy5lbGxpcHNpc0l0ZW1zID0gW107XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaWYgKHN2Z0ljb25OYW1lIHx8IGljb25DbGFzc2VzKSB7XG4gIDxkaXYgY2xhc3M9XCJ0aHktYnJlYWRjcnVtYi1pY29uXCI+XG4gICAgQGlmIChzdmdJY29uTmFtZSkge1xuICAgICAgPHRoeS1pY29uIFt0aHlJY29uTmFtZV09XCJzdmdJY29uTmFtZVwiPjwvdGh5LWljb24+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8aSBbbmdDbGFzc109XCJpY29uQ2xhc3Nlc1wiPjwvaT5cbiAgICB9XG4gIDwvZGl2PlxufVxuXG5AZm9yIChpdGVtIG9mIHNob3dJdGVtczsgdHJhY2sgJGluZGV4KSB7XG4gIDx0aHktYnJlYWRjcnVtYi1pdGVtIGNsYXNzPVwidGh5LWJyZWFkY3J1bWItaXRlbS1lbGxpcHNpc1wiPlxuICAgIEBpZiAoaXRlbT8uX2lkICE9PSBlbGxpcHNpc0l0ZW1JZCkge1xuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1Db250ZW50VHBsOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8YVxuICAgICAgICB0aHlBY3Rpb25cbiAgICAgICAgaHJlZj1cImphdmFzY3JpcHQ6O1wiXG4gICAgICAgIHRoeUFjdGlvbkljb249XCJtb3JlXCJcbiAgICAgICAgdGh5QWN0aXZlQ2xhc3M9XCJhY3RpdmVcIlxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIXRoeUV4cGFuZGFibGVcIlxuICAgICAgICBjbGFzcz1cImVsbGlwc2lzLWFjdGlvbiBtbC1uMSBtci1uMVwiXG4gICAgICAgIFt0aHlEcm9wZG93bl09XCJlbGxpcHNpc0xpc3RcIj48L2E+XG4gICAgfVxuICA8L3RoeS1icmVhZGNydW1iLWl0ZW0+XG59XG5cbjxuZy10ZW1wbGF0ZSAjZWxsaXBzaXNMaXN0PlxuICA8dGh5LWRyb3Bkb3duLW1lbnUgdGh5SW1tZWRpYXRlUmVuZGVyPlxuICAgIEBmb3IgKGl0ZW0gb2YgZWxsaXBzaXNJdGVtczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8YSB0aHlEcm9wZG93bk1lbnVJdGVtIGhyZWY9XCJqYXZhc2NyaXB0OjtcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbUNvbnRlbnRUcGw7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgPC9hPlxuICAgIH1cbiAgPC90aHktZHJvcGRvd24tbWVudT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjaXRlbUNvbnRlbnRUcGwgbGV0LWl0ZW0+XG4gIEBpZiAoaXRlbVRlbXBsYXRlKSB7XG4gICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgfSBAZWxzZSB7XG4gICAgQGlmIChpdGVtPy5pY29uKSB7XG4gICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cIml0ZW0uaWNvblwiIGNsYXNzPVwibXItMlwiPjwvdGh5LWljb24+XG4gICAgfVxuICAgIEBpZiAoaXRlbT8ubmFtZSkge1xuICAgICAgPHNwYW4+e3sgaXRlbS5uYW1lIH19PC9zcGFuPlxuICAgIH1cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
@@ -1,4 +1,4 @@
1
- import { NgClass, NgIf } from '@angular/common';
1
+ import { NgClass } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';
3
3
  import { useHostRenderer } from '@tethys/cdk/dom';
4
4
  import { ThyIcon } from 'ngx-tethys/icon';
@@ -127,11 +127,11 @@ export class ThyButtonIcon {
127
127
  this.initialized = true;
128
128
  }
129
129
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyButtonIcon, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
130
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyButtonIcon, isStandalone: true, selector: "thy-button-icon,[thy-button-icon],[thyButtonIcon]", inputs: { thySize: "thySize", thyIcon: "thyIcon", thyButtonIcon: "thyButtonIcon", thyShape: "thyShape", thyLight: ["thyLight", "thyLight", coerceBooleanProperty], thyActive: ["thyActive", "thyActive", coerceBooleanProperty], thyTheme: "thyTheme", thyColor: "thyColor" }, host: { properties: { "class.btn": "this._isBtn", "class.btn-icon": "this._isBtnIcon", "class.btn-icon-light": "this._isLighted", "class.btn-icon-active": "this._isActive" } }, ngImport: i0, template: "<thy-icon *ngIf=\"svgIconName; else iconFont\" [thyIconName]=\"svgIconName\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></thy-icon>\n<ng-template #iconFont>\n <i [ngClass]=\"iconClasses\" *ngIf=\"iconClasses\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></i>\n</ng-template>\n<ng-content></ng-content>\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: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
130
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyButtonIcon, isStandalone: true, selector: "thy-button-icon,[thy-button-icon],[thyButtonIcon]", inputs: { thySize: "thySize", thyIcon: "thyIcon", thyButtonIcon: "thyButtonIcon", thyShape: "thyShape", thyLight: ["thyLight", "thyLight", coerceBooleanProperty], thyActive: ["thyActive", "thyActive", coerceBooleanProperty], thyTheme: "thyTheme", thyColor: "thyColor" }, host: { properties: { "class.btn": "this._isBtn", "class.btn-icon": "this._isBtnIcon", "class.btn-icon-light": "this._isLighted", "class.btn-icon-active": "this._isActive" } }, ngImport: i0, template: "@if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></thy-icon>\n} @else {\n @if (iconClasses) {\n <i [ngClass]=\"iconClasses\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></i>\n }\n}\n<ng-content></ng-content>\n", dependencies: [{ kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
131
131
  }
132
132
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyButtonIcon, decorators: [{
133
133
  type: Component,
134
- args: [{ selector: 'thy-button-icon,[thy-button-icon],[thyButtonIcon]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, ThyIcon, NgClass], template: "<thy-icon *ngIf=\"svgIconName; else iconFont\" [thyIconName]=\"svgIconName\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></thy-icon>\n<ng-template #iconFont>\n <i [ngClass]=\"iconClasses\" *ngIf=\"iconClasses\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></i>\n</ng-template>\n<ng-content></ng-content>\n" }]
134
+ args: [{ selector: 'thy-button-icon,[thy-button-icon],[thyButtonIcon]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [ThyIcon, NgClass], template: "@if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></thy-icon>\n} @else {\n @if (iconClasses) {\n <i [ngClass]=\"iconClasses\" [style.color]=\"thyColor\" [style.borderColor]=\"thyColor\"></i>\n }\n}\n<ng-content></ng-content>\n" }]
135
135
  }], ctorParameters: () => [], propDecorators: { thySize: [{
136
136
  type: Input
137
137
  }], thyIcon: [{
@@ -163,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
163
163
  }], thyColor: [{
164
164
  type: Input
165
165
  }] } });
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2J1dHRvbi9idXR0b24taWNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvYnV0dG9uL2J1dHRvbi1pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBSXhELE1BQU0sY0FBYyxHQUFHO0lBQ25CLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQztJQUNuQixFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDbkIsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ25CLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQztDQUN0QixDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUc7SUFDcEIsZUFBZSxFQUFFLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxDQUFDO0lBQ3JELGNBQWMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLGNBQWMsQ0FBQztJQUNuRCxxQkFBcUIsRUFBRSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxjQUFjLENBQUM7SUFDM0Usb0JBQW9CLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDO0lBQ3pFLFdBQVcsRUFBRSxDQUFDLHNCQUFzQixDQUFDO0NBQ3hDLENBQUM7QUFFRixNQUFNLGVBQWUsR0FBUTtJQUN6QixhQUFhLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztDQUMxQyxDQUFDO0FBRUY7Ozs7R0FJRztBQVNILE1BQU0sT0FBTyxhQUFhO0lBQ3RCOzs7O09BSUc7SUFDSCxJQUNJLE9BQU8sQ0FBQyxJQUFZO1FBQ3BCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUNJLE9BQU8sQ0FBQyxJQUFZO1FBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxhQUFhLENBQUMsSUFBWTtRQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQ0ksUUFBUSxDQUFDLEtBQXlCO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDSSxRQUFRLENBQUMsS0FBYztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDSSxTQUFTLENBQUMsS0FBYztRQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUNJLFFBQVEsQ0FBQyxLQUFhO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7UUFFUSxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQU1wQixpQkFBWSxHQUFHLGVBQWUsRUFBRSxDQUFDO1FBRXpDLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFVTyxXQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ1QsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNaLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbEIsY0FBUyxHQUFHLEtBQUssQ0FBQztJQXZCekMsQ0FBQztJQTJCUixZQUFZLENBQUMsSUFBWTtRQUM3QixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1AsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDdkIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0IsQ0FBQztnQkFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQztnQkFDM0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDNUIsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQzVCLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQzVCLENBQUM7SUFDTCxDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQUssR0FBRyxLQUFLO1FBQzVCLGlDQUFpQztRQUNqQyxpQ0FBaUM7UUFDakMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUM5QixPQUFPO1FBQ1gsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNoRixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzVDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBaUIsRUFBRSxFQUFFO2dCQUN0RCxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzVCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDNUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFpQixFQUFFLEVBQUU7Z0JBQ3RELE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDNUIsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQzVCLENBQUM7OEdBcElRLGFBQWE7a0dBQWIsYUFBYSxnT0F5Q0YscUJBQXFCLHlDQVNyQixxQkFBcUIsMFBDMUY3QyxtVkFLQSw0Q0RpQ2MsSUFBSSw2RkFBRSxPQUFPLHNNQUFFLE9BQU87OzJGQUV2QixhQUFhO2tCQVJ6QixTQUFTOytCQUNJLG1EQUFtRCxpQkFFOUMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQzt3REFTN0IsT0FBTztzQkFEVixLQUFLO2dCQVVGLE9BQU87c0JBRFYsS0FBSztnQkFTRixhQUFhO3NCQURoQixLQUFLO2dCQVNGLFFBQVE7c0JBRFgsS0FBSztnQkFXRixRQUFRO3NCQURYLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBVXZDLFNBQVM7c0JBRFosS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFTdkMsUUFBUTtzQkFEWCxLQUFLO2dCQTBCb0IsTUFBTTtzQkFBL0IsV0FBVzt1QkFBQyxXQUFXO2dCQUNPLFVBQVU7c0JBQXhDLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUNRLFVBQVU7c0JBQTlDLFdBQVc7dUJBQUMsc0JBQXNCO2dCQUNHLFNBQVM7c0JBQTlDLFdBQVc7dUJBQUMsdUJBQXVCO2dCQUUzQixRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcywgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHVzZUhvc3RSZW5kZXJlciB9IGZyb20gJ0B0ZXRoeXMvY2RrL2RvbSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5cbmV4cG9ydCB0eXBlIFRoeUJ1dHRvbkljb25TaGFwZSA9ICcnIHwgJ2NpcmNsZS1kYXNoZWQnIHwgJ2NpcmNsZS1zb2xpZCcgfCAnY2lyY2xlLXRoaWNrLWRhc2hlZCcgfCAnY2lyY2xlLXRoaWNrLXNvbGlkJyB8ICdzZWxmLWljb24nO1xuXG5jb25zdCBzaXplQ2xhc3Nlc01hcCA9IHtcbiAgICBsZzogWydidG4taWNvbi1sZyddLFxuICAgIG1kOiBbJ2J0bi1pY29uLW1kJ10sXG4gICAgc206IFsnYnRuLWljb24tc20nXSxcbiAgICB4czogWydidG4taWNvbi14cyddXG59O1xuXG5jb25zdCBzaGFwZUNsYXNzZXNNYXAgPSB7XG4gICAgJ2NpcmNsZS1kYXNoZWQnOiBbJ2J0bi1pY29uLWNpcmNsZScsICdjaXJjbGUtZGFzaGVkJ10sXG4gICAgJ2NpcmNsZS1zb2xpZCc6IFsnYnRuLWljb24tY2lyY2xlJywgJ2NpcmNsZS1zb2xpZCddLFxuICAgICdjaXJjbGUtdGhpY2stZGFzaGVkJzogWydidG4taWNvbi1jaXJjbGUnLCAnY2lyY2xlLWRhc2hlZCcsICdib3JkZXItdGhpY2snXSxcbiAgICAnY2lyY2xlLXRoaWNrLXNvbGlkJzogWydidG4taWNvbi1jaXJjbGUnLCAnY2lyY2xlLXNvbGlkJywgJ2JvcmRlci10aGljayddLFxuICAgICdzZWxmLWljb24nOiBbJ2J0bi1pY29uLXNlbGYtY2lyY2xlJ11cbn07XG5cbmNvbnN0IHRoZW1lQ2xhc3Nlc01hcDogYW55ID0ge1xuICAgICdkYW5nZXItd2Vhayc6IFsnYnRuLWljb24tZGFuZ2VyLXdlYWsnXVxufTtcblxuLyoqXG4gKiDmk43kvZzmjInpkq7lm77moIfvvIzmlK/mjIFgdGh5LWJ1dHRvbi1pY29uYOe7hOS7tuWSjGB0aHlCdXR0b25JY29uYOaMh+S7pOS4pOenjeW9ouW8j1xuICogQG5hbWUgdGh5LWJ1dHRvbi1pY29uLFt0aHktYnV0dG9uLWljb25dLFt0aHlCdXR0b25JY29uXVxuICogQG9yZGVyIDIwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWJ1dHRvbi1pY29uLFt0aHktYnV0dG9uLWljb25dLFt0aHlCdXR0b25JY29uXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi1pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nSWYsIFRoeUljb24sIE5nQ2xhc3NdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUJ1dHRvbkljb24gaW1wbGVtZW50cyBPbkluaXQge1xuICAgIC8qKlxuICAgICAqIOWkp+Wwj1xuICAgICAqIEB0eXBlIHhzIHwgc20gfCBtZCB8IGxnXG4gICAgICogQGRlZmF1bHQgMzZweFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeVNpemUoc2l6ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc2l6ZSA9IHNpemU7XG4gICAgICAgIHRoaXMuc2V0Q2xhc3NlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWbvuaghywg5ZKMYHRoeUJ1dHRvbkljb25g55u45ZCM77yM5b2T5L2/55SoYHRoeS1idXR0b24taWNvbmDml7bvvIzlj6rog73kvb/nlKggdGh5SWNvbiDorr7nva7lm77moIdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlJY29uKGljb246IHN0cmluZykge1xuICAgICAgICB0aGlzLnNldEljb25DbGFzcyhpY29uKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlm77moIfmjInpkq7nmoTlm77moIdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlCdXR0b25JY29uKGljb246IHN0cmluZykge1xuICAgICAgICB0aGlzLnNldEljb25DbGFzcyhpY29uKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlsZXnpLrnmoTlvaLnirbvvIzpu5jorqTlj6rmmL7npLrlrZfkvZPlm77moIflm77moIfvvIxjaXJjbGUtZGFzaGVkLCBjaXJjbGUtc29saWQg5bGV56S65oiQ6Jma57q/LOWunue6v+i+ueahhuWchuW9ouWbvuaghywgY2lyY2xlLXRoaWNrLWRhc2hlZCwgY2lyY2xlLXRoaWNrLXNvbGlkIOi+ueahhuWKoOeyl1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeVNoYXBlKHZhbHVlOiBUaHlCdXR0b25JY29uU2hhcGUpIHtcbiAgICAgICAgdGhpcy5zaGFwZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLnNldENsYXNzZXMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDkuq7oibLvvIzpopzoibLmm7TmtYXvvIzpgILlkIjlt6bkvqflr7zoiKrpobbpg6jnmoTmjInpkq5cbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeUxpZ2h0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2lzTGlnaHRlZCA9IHZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOiuvue9ruS4uumAieS4reeKtuaAgVxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSlcbiAgICBzZXQgdGh5QWN0aXZlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2lzQWN0aXZlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5oyJ6ZKu5bGV56S657G75Z6L77yM6buY6K6k5Zu+5qCH56e75LiK5Y675pi+56S65Li76Imy77yMIGRhbmdlci13ZWFrIOm8oOagh+enu+S4iuWOu+aYvuekuiBkYW5nZXIg57qi6ImyXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5VGhlbWUodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLnRoZW1lID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2V0Q2xhc3NlcygpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIHByaXZhdGUgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgc2hhcGU6IFRoeUJ1dHRvbkljb25TaGFwZTtcblxuICAgIHByaXZhdGUgc2l6ZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBob3N0UmVuZGVyZXIgPSB1c2VIb3N0UmVuZGVyZXIoKTtcblxuICAgIGljb25QcmVmaXggPSAnd3RmJztcblxuICAgIGljb25DbGFzc2VzOiBzdHJpbmdbXTtcblxuICAgIGljb246IHN0cmluZztcblxuICAgIHRoZW1lOiBzdHJpbmc7XG5cbiAgICBzdmdJY29uTmFtZTogc3RyaW5nO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5idG4nKSBfaXNCdG4gPSB0cnVlO1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYnRuLWljb24nKSBfaXNCdG5JY29uID0gdHJ1ZTtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJ0bi1pY29uLWxpZ2h0JykgX2lzTGlnaHRlZCA9IGZhbHNlO1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYnRuLWljb24tYWN0aXZlJykgX2lzQWN0aXZlID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSB0aHlDb2xvcjogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBzZXRJY29uQ2xhc3MoaWNvbjogc3RyaW5nKSB7XG4gICAgICAgIGlmIChpY29uKSB7XG4gICAgICAgICAgICBpZiAoaWNvbi5pbmNsdWRlcygnd3RmJykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjbGFzc2VzID0gaWNvbi5zcGxpdCgnICcpO1xuICAgICAgICAgICAgICAgIGlmIChjbGFzc2VzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICBjbGFzc2VzLnVuc2hpZnQoJ3d0ZicpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmljb25DbGFzc2VzID0gY2xhc3NlcztcbiAgICAgICAgICAgICAgICB0aGlzLnN2Z0ljb25OYW1lID0gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdmdJY29uTmFtZSA9IGljb247XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmljb25DbGFzc2VzID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuc3ZnSWNvbk5hbWUgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDbGFzc2VzKGZpcnN0ID0gZmFsc2UpIHtcbiAgICAgICAgLy8g6K6+572u5qC35byP5Yik5pat5piv5ZCm5bey57uP5Yid5aeL5YyW77yM5pyq5Yid5aeL5YyW55u05o6l6L+U5Zue77yM6Zmk6Z2e5piv5Yid5qyh6LCD55SoXG4gICAgICAgIC8vIOWPquaciSBuZ09uSW5pdCDosIPnlKjkvJrkvKDlhaUgZmlyc3QgPSB0cnVlXG4gICAgICAgIGlmICghZmlyc3QgJiYgIXRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjbGFzc2VzID0gc2l6ZUNsYXNzZXNNYXBbdGhpcy5zaXplXSA/IFsuLi5zaXplQ2xhc3Nlc01hcFt0aGlzLnNpemVdXSA6IFtdO1xuICAgICAgICBpZiAodGhpcy5zaGFwZSAmJiBzaGFwZUNsYXNzZXNNYXBbdGhpcy5zaGFwZV0pIHtcbiAgICAgICAgICAgIHNoYXBlQ2xhc3Nlc01hcFt0aGlzLnNoYXBlXS5mb3JFYWNoKChjbGFzc05hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgIGNsYXNzZXMucHVzaChjbGFzc05hbWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudGhlbWUgJiYgdGhlbWVDbGFzc2VzTWFwW3RoaXMudGhlbWVdKSB7XG4gICAgICAgICAgICB0aGVtZUNsYXNzZXNNYXBbdGhpcy50aGVtZV0uZm9yRWFjaCgoY2xhc3NOYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goY2xhc3NOYW1lKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnVwZGF0ZUNsYXNzKGNsYXNzZXMpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnNldENsYXNzZXModHJ1ZSk7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH1cbn1cbiIsIjx0aHktaWNvbiAqbmdJZj1cInN2Z0ljb25OYW1lOyBlbHNlIGljb25Gb250XCIgW3RoeUljb25OYW1lXT1cInN2Z0ljb25OYW1lXCIgW3N0eWxlLmNvbG9yXT1cInRoeUNvbG9yXCIgW3N0eWxlLmJvcmRlckNvbG9yXT1cInRoeUNvbG9yXCI+PC90aHktaWNvbj5cbjxuZy10ZW1wbGF0ZSAjaWNvbkZvbnQ+XG4gIDxpIFtuZ0NsYXNzXT1cImljb25DbGFzc2VzXCIgKm5nSWY9XCJpY29uQ2xhc3Nlc1wiIFtzdHlsZS5jb2xvcl09XCJ0aHlDb2xvclwiIFtzdHlsZS5ib3JkZXJDb2xvcl09XCJ0aHlDb2xvclwiPjwvaT5cbjwvbmctdGVtcGxhdGU+XG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2J1dHRvbi9idXR0b24taWNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvYnV0dG9uL2J1dHRvbi1pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFJeEQsTUFBTSxjQUFjLEdBQUc7SUFDbkIsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ25CLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQztJQUNuQixFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDbkIsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDO0NBQ3RCLENBQUM7QUFFRixNQUFNLGVBQWUsR0FBRztJQUNwQixlQUFlLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLENBQUM7SUFDckQsY0FBYyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsY0FBYyxDQUFDO0lBQ25ELHFCQUFxQixFQUFFLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGNBQWMsQ0FBQztJQUMzRSxvQkFBb0IsRUFBRSxDQUFDLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxjQUFjLENBQUM7SUFDekUsV0FBVyxFQUFFLENBQUMsc0JBQXNCLENBQUM7Q0FDeEMsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUFRO0lBQ3pC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UztzQkFEWixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQVN2QyxRQUFRO3NCQURYLEtBQUs7Z0JBMEJvQixNQUFNO3NCQUEvQixXQUFXO3VCQUFDLFdBQVc7Z0JBQ08sVUFBVTtzQkFBeEMsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBQ1EsVUFBVTtzQkFBOUMsV0FBVzt1QkFBQyxzQkFBc0I7Z0JBQ0csU0FBUztzQkFBOUMsV0FBVzt1QkFBQyx1QkFBdUI7Z0JBRTNCLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdXNlSG9zdFJlbmRlcmVyIH0gZnJvbSAnQHRldGh5cy9jZGsvZG9tJztcbmltcG9ydCB7IFRoeUljb24gfSBmcm9tICduZ3gtdGV0aHlzL2ljb24nO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcblxuZXhwb3J0IHR5cGUgVGh5QnV0dG9uSWNvblNoYXBlID0gJycgfCAnY2lyY2xlLWRhc2hlZCcgfCAnY2lyY2xlLXNvbGlkJyB8ICdjaXJjbGUtdGhpY2stZGFzaGVkJyB8ICdjaXJjbGUtdGhpY2stc29saWQnIHwgJ3NlbGYtaWNvbic7XG5cbmNvbnN0IHNpemVDbGFzc2VzTWFwID0ge1xuICAgIGxnOiBbJ2J0bi1pY29uLWxnJ10sXG4gICAgbWQ6IFsnYnRuLWljb24tbWQnXSxcbiAgICBzbTogWydidG4taWNvbi1zbSddLFxuICAgIHhzOiBbJ2J0bi1pY29uLXhzJ11cbn07XG5cbmNvbnN0IHNoYXBlQ2xhc3Nlc01hcCA9IHtcbiAgICAnY2lyY2xlLWRhc2hlZCc6IFsnYnRuLWljb24tY2lyY2xlJywgJ2NpcmNsZS1kYXNoZWQnXSxcbiAgICAnY2lyY2xlLXNvbGlkJzogWydidG4taWNvbi1jaXJjbGUnLCAnY2lyY2xlLXNvbGlkJ10sXG4gICAgJ2NpcmNsZS10aGljay1kYXNoZWQnOiBbJ2J0bi1pY29uLWNpcmNsZScsICdjaXJjbGUtZGFzaGVkJywgJ2JvcmRlci10aGljayddLFxuICAgICdjaXJjbGUtdGhpY2stc29saWQnOiBbJ2J0bi1pY29uLWNpcmNsZScsICdjaXJjbGUtc29saWQnLCAnYm9yZGVyLXRoaWNrJ10sXG4gICAgJ3NlbGYtaWNvbic6IFsnYnRuLWljb24tc2VsZi1jaXJjbGUnXVxufTtcblxuY29uc3QgdGhlbWVDbGFzc2VzTWFwOiBhbnkgPSB7XG4gICAgJ2Rhbmdlci13ZWFrJzogWydidG4taWNvbi1kYW5nZXItd2VhayddXG59O1xuXG4vKipcbiAqIOaTjeS9nOaMiemSruWbvuagh++8jOaUr+aMgWB0aHktYnV0dG9uLWljb25g57uE5Lu25ZKMYHRoeUJ1dHRvbkljb25g5oyH5Luk5Lik56eN5b2i5byPXG4gKiBAbmFtZSB0aHktYnV0dG9uLWljb24sW3RoeS1idXR0b24taWNvbl0sW3RoeUJ1dHRvbkljb25dXG4gKiBAb3JkZXIgMjBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktYnV0dG9uLWljb24sW3RoeS1idXR0b24taWNvbl0sW3RoeUJ1dHRvbkljb25dJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLWljb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbVGh5SWNvbiwgTmdDbGFzc11cbn0pXG5leHBvcnQgY2xhc3MgVGh5QnV0dG9uSWNvbiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgLyoqXG4gICAgICog5aSn5bCPXG4gICAgICogQHR5cGUgeHMgfCBzbSB8IG1kIHwgbGdcbiAgICAgKiBAZGVmYXVsdCAzNnB4XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5U2l6ZShzaXplOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zaXplID0gc2l6ZTtcbiAgICAgICAgdGhpcy5zZXRDbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5Zu+5qCHLCDlkoxgdGh5QnV0dG9uSWNvbmDnm7jlkIzvvIzlvZPkvb/nlKhgdGh5LWJ1dHRvbi1pY29uYOaXtu+8jOWPquiDveS9v+eUqCB0aHlJY29uIOiuvue9ruWbvuagh1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeUljb24oaWNvbjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc2V0SWNvbkNsYXNzKGljb24pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWbvuagh+aMiemSrueahOWbvuagh1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeUJ1dHRvbkljb24oaWNvbjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc2V0SWNvbkNsYXNzKGljb24pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWxleekuueahOW9oueKtu+8jOm7mOiupOWPquaYvuekuuWtl+S9k+Wbvuagh+Wbvuagh++8jGNpcmNsZS1kYXNoZWQsIGNpcmNsZS1zb2xpZCDlsZXnpLrmiJDomZrnur8s5a6e57q/6L655qGG5ZyG5b2i5Zu+5qCHLCBjaXJjbGUtdGhpY2stZGFzaGVkLCBjaXJjbGUtdGhpY2stc29saWQg6L655qGG5Yqg57KXXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5U2hhcGUodmFsdWU6IFRoeUJ1dHRvbkljb25TaGFwZSkge1xuICAgICAgICB0aGlzLnNoYXBlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2V0Q2xhc3NlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOS6ruiJsu+8jOminOiJsuabtOa1he+8jOmAguWQiOW3puS+p+WvvOiIqumhtumDqOeahOaMiemSrlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSlcbiAgICBzZXQgdGh5TGlnaHQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5faXNMaWdodGVkID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6K6+572u5Li66YCJ5Lit54q25oCBXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KVxuICAgIHNldCB0aHlBY3RpdmUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5faXNBY3RpdmUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmjInpkq7lsZXnpLrnsbvlnovvvIzpu5jorqTlm77moIfnp7vkuIrljrvmmL7npLrkuLvoibLvvIwgZGFuZ2VyLXdlYWsg6byg5qCH56e75LiK5Y675pi+56S6IGRhbmdlciDnuqLoibJcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlUaGVtZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudGhlbWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5zZXRDbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoKSB7fVxuXG4gICAgcHJpdmF0ZSBpbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBzaGFwZTogVGh5QnV0dG9uSWNvblNoYXBlO1xuXG4gICAgcHJpdmF0ZSBzaXplOiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIGhvc3RSZW5kZXJlciA9IHVzZUhvc3RSZW5kZXJlcigpO1xuXG4gICAgaWNvblByZWZpeCA9ICd3dGYnO1xuXG4gICAgaWNvbkNsYXNzZXM6IHN0cmluZ1tdO1xuXG4gICAgaWNvbjogc3RyaW5nO1xuXG4gICAgdGhlbWU6IHN0cmluZztcblxuICAgIHN2Z0ljb25OYW1lOiBzdHJpbmc7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJ0bicpIF9pc0J0biA9IHRydWU7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5idG4taWNvbicpIF9pc0J0bkljb24gPSB0cnVlO1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYnRuLWljb24tbGlnaHQnKSBfaXNMaWdodGVkID0gZmFsc2U7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5idG4taWNvbi1hY3RpdmUnKSBfaXNBY3RpdmUgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHRoeUNvbG9yOiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIHNldEljb25DbGFzcyhpY29uOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKGljb24pIHtcbiAgICAgICAgICAgIGlmIChpY29uLmluY2x1ZGVzKCd3dGYnKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNsYXNzZXMgPSBpY29uLnNwbGl0KCcgJyk7XG4gICAgICAgICAgICAgICAgaWYgKGNsYXNzZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXMudW5zaGlmdCgnd3RmJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuaWNvbkNsYXNzZXMgPSBjbGFzc2VzO1xuICAgICAgICAgICAgICAgIHRoaXMuc3ZnSWNvbk5hbWUgPSBudWxsO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN2Z0ljb25OYW1lID0gaWNvbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaWNvbkNsYXNzZXMgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5zdmdJY29uTmFtZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENsYXNzZXMoZmlyc3QgPSBmYWxzZSkge1xuICAgICAgICAvLyDorr7nva7moLflvI/liKTmlq3mmK/lkKblt7Lnu4/liJ3lp4vljJbvvIzmnKrliJ3lp4vljJbnm7TmjqXov5Tlm57vvIzpmaTpnZ7mmK/liJ3mrKHosIPnlKhcbiAgICAgICAgLy8g5Y+q5pyJIG5nT25Jbml0IOiwg+eUqOS8muS8oOWFpSBmaXJzdCA9IHRydWVcbiAgICAgICAgaWYgKCFmaXJzdCAmJiAhdGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNsYXNzZXMgPSBzaXplQ2xhc3Nlc01hcFt0aGlzLnNpemVdID8gWy4uLnNpemVDbGFzc2VzTWFwW3RoaXMuc2l6ZV1dIDogW107XG4gICAgICAgIGlmICh0aGlzLnNoYXBlICYmIHNoYXBlQ2xhc3Nlc01hcFt0aGlzLnNoYXBlXSkge1xuICAgICAgICAgICAgc2hhcGVDbGFzc2VzTWFwW3RoaXMuc2hhcGVdLmZvckVhY2goKGNsYXNzTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGNsYXNzTmFtZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy50aGVtZSAmJiB0aGVtZUNsYXNzZXNNYXBbdGhpcy50aGVtZV0pIHtcbiAgICAgICAgICAgIHRoZW1lQ2xhc3Nlc01hcFt0aGlzLnRoZW1lXS5mb3JFYWNoKChjbGFzc05hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgIGNsYXNzZXMucHVzaChjbGFzc05hbWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIudXBkYXRlQ2xhc3MoY2xhc3Nlcyk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuc2V0Q2xhc3Nlcyh0cnVlKTtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XG4gICAgfVxufVxuIiwiQGlmIChzdmdJY29uTmFtZSkge1xuICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cInN2Z0ljb25OYW1lXCIgW3N0eWxlLmNvbG9yXT1cInRoeUNvbG9yXCIgW3N0eWxlLmJvcmRlckNvbG9yXT1cInRoeUNvbG9yXCI+PC90aHktaWNvbj5cbn0gQGVsc2Uge1xuICBAaWYgKGljb25DbGFzc2VzKSB7XG4gICAgPGkgW25nQ2xhc3NdPVwiaWNvbkNsYXNzZXNcIiBbc3R5bGUuY29sb3JdPVwidGh5Q29sb3JcIiBbc3R5bGUuYm9yZGVyQ29sb3JdPVwidGh5Q29sb3JcIj48L2k+XG4gIH1cbn1cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
@@ -1,8 +1,8 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, Input, Renderer2, ViewEncapsulation } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, Input, Renderer2, ViewEncapsulation, inject } from '@angular/core';
2
2
  import { assertIconOnly, coerceBooleanProperty } from 'ngx-tethys/util';
3
3
  import { useHostRenderer } from '@tethys/cdk/dom';
4
4
  import { ThyIcon } from 'ngx-tethys/icon';
5
- import { NgIf, NgClass } from '@angular/common';
5
+ import { NgClass } from '@angular/common';
6
6
  import * as i0 from "@angular/core";
7
7
  const btnTypeClassesMap = {
8
8
  primary: ['btn-primary'],
@@ -26,6 +26,14 @@ const iconOnlyClass = 'thy-btn-icon-only';
26
26
  * @order 10
27
27
  */
28
28
  export class ThyButton {
29
+ constructor() {
30
+ this.elementRef = inject(ElementRef);
31
+ this.renderer = inject(Renderer2);
32
+ this._initialized = false;
33
+ // 圆角方形
34
+ this._isRadiusSquare = false;
35
+ this.hostRenderer = useHostRenderer();
36
+ }
29
37
  get nativeElement() {
30
38
  return this.elementRef.nativeElement;
31
39
  }
@@ -153,14 +161,6 @@ export class ThyButton {
153
161
  }
154
162
  this.hostRenderer.updateClass(classNames);
155
163
  }
156
- constructor(elementRef, renderer) {
157
- this.elementRef = elementRef;
158
- this.renderer = renderer;
159
- this._initialized = false;
160
- // 圆角方形
161
- this._isRadiusSquare = false;
162
- this.hostRenderer = useHostRenderer();
163
- }
164
164
  ngOnInit() {
165
165
  this.updateClasses();
166
166
  this._initialized = true;
@@ -185,15 +185,15 @@ export class ThyButton {
185
185
  }
186
186
  });
187
187
  }
188
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyButton, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
189
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyButton, isStandalone: true, selector: "thy-button,[thy-button],[thyButton]", inputs: { thyButton: "thyButton", thyType: "thyType", thyLoading: ["thyLoading", "thyLoading", coerceBooleanProperty], thyLoadingText: "thyLoadingText", thySize: "thySize", thyIcon: "thyIcon", thyBlock: ["thyBlock", "thyBlock", coerceBooleanProperty] }, host: { properties: { "class.btn-block": "this.thyBlock" }, classAttribute: "thy-btn btn" }, ngImport: i0, template: "<thy-icon *ngIf=\"svgIconName; else iconFont\" [thyIconName]=\"svgIconName\"></thy-icon>\n<ng-template #iconFont>\n <i [ngClass]=\"iconClass\" *ngIf=\"iconClass\"></i>\n</ng-template>\n<ng-content></ng-content>\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: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
188
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyButton, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
189
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyButton, isStandalone: true, selector: "thy-button,[thy-button],[thyButton]", inputs: { thyButton: "thyButton", thyType: "thyType", thyLoading: ["thyLoading", "thyLoading", coerceBooleanProperty], thyLoadingText: "thyLoadingText", thySize: "thySize", thyIcon: "thyIcon", thyBlock: ["thyBlock", "thyBlock", coerceBooleanProperty] }, host: { properties: { "class.btn-block": "this.thyBlock" }, classAttribute: "thy-btn btn" }, ngImport: i0, template: "@if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\"></thy-icon>\n} @else {\n @if (iconClass) {\n <i [ngClass]=\"iconClass\"></i>\n }\n}\n<ng-content></ng-content>\n", dependencies: [{ kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
190
190
  }
191
191
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyButton, decorators: [{
192
192
  type: Component,
193
193
  args: [{ selector: 'thy-button,[thy-button],[thyButton]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
194
194
  class: 'thy-btn btn'
195
- }, standalone: true, imports: [NgIf, ThyIcon, NgClass], template: "<thy-icon *ngIf=\"svgIconName; else iconFont\" [thyIconName]=\"svgIconName\"></thy-icon>\n<ng-template #iconFont>\n <i [ngClass]=\"iconClass\" *ngIf=\"iconClass\"></i>\n</ng-template>\n<ng-content></ng-content>\n" }]
196
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { thyButton: [{
195
+ }, standalone: true, imports: [ThyIcon, NgClass], template: "@if (svgIconName) {\n <thy-icon [thyIconName]=\"svgIconName\"></thy-icon>\n} @else {\n @if (iconClass) {\n <i [ngClass]=\"iconClass\"></i>\n }\n}\n<ng-content></ng-content>\n" }]
196
+ }], propDecorators: { thyButton: [{
197
197
  type: Input
198
198
  }], thyType: [{
199
199
  type: Input
@@ -213,4 +213,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
213
213
  type: Input,
214
214
  args: [{ transform: coerceBooleanProperty }]
215
215
  }] } });
216
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsS0FBSyxFQUVMLFNBQVMsRUFDVCxpQkFBaUIsRUFFcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFxQmhELE1BQU0saUJBQWlCLEdBQUc7SUFDdEIsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3hCLFNBQVMsRUFBRSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUM7SUFDcEMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDO0lBQ2xCLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQztJQUN4QixNQUFNLEVBQUUsQ0FBQyxZQUFZLENBQUM7SUFDdEIsaUJBQWlCLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztJQUMxQyxpQkFBaUIsRUFBRSxDQUFDLHFCQUFxQixDQUFDO0lBQzFDLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE9BQU87SUFDM0IsV0FBVyxFQUFFLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxFQUFFLFNBQVM7SUFDckQsZ0JBQWdCLEVBQUUsQ0FBQyxVQUFVLEVBQUUsdUJBQXVCLENBQUMsRUFBRSxTQUFTO0lBQ2xFLGtC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QUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDRixLQUFLLEVBQUUsYUFBYTtxQkFDdkIsY0FDVyxJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQzt1R0FvQzdCLFNBQVM7c0JBRFosS0FBSztnQkFVRixPQUFPO3NCQURWLEtBQUs7Z0JBVUYsVUFBVTtzQkFEYixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQWlCdkMsY0FBYztzQkFEakIsS0FBSztnQkFnQkYsT0FBTztzQkFEVixLQUFLO2dCQVlGLE9BQU87c0JBRFYsS0FBSztnQkEwQk4sUUFBUTtzQkFGUCxXQUFXO3VCQUFDLGlCQUFpQjs7c0JBQzdCLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBSZW5kZXJlcjIsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG4gICAgQWZ0ZXJWaWV3SW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgYXNzZXJ0SWNvbk9ubHksIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyB1c2VIb3N0UmVuZGVyZXIgfSBmcm9tICdAdGV0aHlzL2Nkay9kb20nO1xuaW1wb3J0IHsgVGh5SWNvbiB9IGZyb20gJ25neC10ZXRoeXMvaWNvbic7XG5pbXBvcnQgeyBOZ0lmLCBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuZXhwb3J0IHR5cGUgVGh5QnV0dG9uVHlwZSA9XG4gICAgfCAncHJpbWFyeSdcbiAgICB8ICdzZWNvbmRhcnknXG4gICAgfCAnaW5mbydcbiAgICB8ICdvdXRsaW5lLXByaW1hcnknXG4gICAgfCAnb3V0bGluZS1kZWZhdWx0J1xuICAgIHwgJ2RhbmdlcidcbiAgICB8ICdsaW5rJ1xuICAgIHwgJ2xpbmstc2Vjb25kYXJ5J1xuICAgIHwgJ3dhcm5pbmcnXG4gICAgfCAnb3V0bGluZS13YXJuaW5nJ1xuICAgIHwgJ3N1Y2Nlc3MnXG4gICAgfCAnb3V0bGluZS1zdWNjZXNzJ1xuICAgIHwgJ291dGxpbmUtaW5mbydcbiAgICB8ICdvdXRsaW5lLWRhbmdlcidcbiAgICB8ICdsaW5rLWRhbmdlci13ZWFrJ1xuICAgIHwgJ2xpbmstZGFuZ2VyJ1xuICAgIHwgJ2xpbmstc3VjY2Vzcyc7XG5cbmNvbnN0IGJ0blR5cGVDbGFzc2VzTWFwID0ge1xuICAgIHByaW1hcnk6IFsnYnRuLXByaW1hcnknXSxcbiAgICBzZWNvbmRhcnk6IFsnYnRuLXByaW1hcnknLCAnYnRuLW1kJ10sXG4gICAgaW5mbzogWydidG4taW5mbyddLFxuICAgIHdhcm5pbmc6IFsnYnRuLXdhcm5pbmcnXSxcbiAgICBkYW5nZXI6IFsnYnRuLWRhbmdlciddLFxuICAgICdvdXRsaW5lLXByaW1hcnknOiBbJ2J0bi1vdXRsaW5lLXByaW1hcnknXSxcbiAgICAnb3V0bGluZS1kZWZhdWx0JzogWydidG4tb3V0bGluZS1kZWZhdWx0J10sXG4gICAgbGluazogWydidG4tbGluayddLCAvLyDpk77mjqXmjInpkq5cbiAgICAnbGluay1pbmZvJzogWydidG4tbGluaycsICdidG4tbGluay1pbmZvJ10sIC8vIOW5veeBtemTvuaOpeaMiemSrlxuICAgICdsaW5rLXNlY29uZGFyeSc6IFsnYnRuLWxpbmsnLCAnYnRuLWxpbmstcHJpbWFyeS13ZWFrJ10sIC8vIOW5veeBtemTvuaOpeaMiemSrlxuICAgICdsaW5rLWRhbmdlci13ZWFrJzogWydidG4tbGluaycsICdidG4tbGluay1kYW5nZXItd2VhayddLCAvLyDlub3ngbXljbHpmanmjInpkq5cbiAgICAnbGluay1kYW5nZXInOiBbJ2J0bi1saW5rJywgJ2J0bi1saW5rLWRhbmdlciddLCAvLyDljbHpmanmjInpkq5cbiAgICAnbGluay1zdWNjZXNzJzogWydidG4tbGluaycsICdidG4tbGluay1zdWNjZXNzJ10gLy8g5oiQ5Yqf5oyJ6ZKuXG59O1xuXG5jb25zdCBpY29uT25seUNsYXNzID0gJ3RoeS1idG4taWNvbi1vbmx5JztcblxuLyoqXG4gKiDmk43kvZzmjInpkq7vvIzmlK/mjIHnu4Tku7ZgdGh5LWJ1dHRvbmDlkoxgdGh5QnV0dG9uYOaMh+S7pOS4pOenjeW9ouW8j1xuICogQG5hbWUgdGh5LWJ1dHRvbixbdGh5LWJ1dHRvbl0sW3RoeUJ1dHRvbl1cbiAqIEBvcmRlciAxMFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoeS1idXR0b24sW3RoeS1idXR0b25dLFt0aHlCdXR0b25dJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aHktYnRuIGJ0bidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nSWYsIFRoeUljb24sIE5nQ2xhc3NdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUJ1dHRvbiBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcHJpdmF0ZSBfaW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgX29yaWdpbmFsVGV4dDogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBfdHlwZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBfc2l6ZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBfaWNvbjogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBfbG9hZGluZzogYm9vbGVhbjtcblxuICAgIHByaXZhdGUgX2xvYWRpbmdUZXh0OiBzdHJpbmc7XG5cbiAgICAvLyDlnIbop5LmlrnlvaJcbiAgICBfaXNSYWRpdXNTcXVhcmUgPSBmYWxzZTtcblxuICAgIGljb25DbGFzczogc3RyaW5nW107XG5cbiAgICBzdmdJY29uTmFtZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBnZXQgbmF0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhvc3RSZW5kZXJlciA9IHVzZUhvc3RSZW5kZXJlcigpO1xuXG4gICAgLyoqXG4gICAgICog5oyJ6ZKu57G75Z6L77yM5pSv5oyB5re75Yqg5YmN57yAYG91dGxpbmUtYOWunueOsOe6v+ahhuaMiemSru+8jOaUr+aMgea3u+WKoOWJjee8gGBsaW5rLWDlrp7njrDmjInpkq7pk77mjqVcbiAgICAgKiBAdHlwZSBwcmltYXJ5IHwgaW5mbyB8IHdhcm5pbmcgfCBkYW5nZXIgfCBzdWNjZXNzXG4gICAgICogQGRlZmF1bHQgcHJpbWFyeVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeUJ1dHRvbih2YWx1ZTogVGh5QnV0dG9uVHlwZSkge1xuICAgICAgICB0aGlzLnNldEJ0blR5cGUodmFsdWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWSjGB0aHlCdXR0b25g5Y+C5pWw5LiA5qC377yM5LiA6Iis5L2/55SoYHRoeUJ1dHRvbmDvvIzkuLrkuoblh4/lsJHlj4LmlbDovpPlhaUsIOW9k+mAmui/h2B0aHktYnV0dG9uYOS9v+eUqOaXtu+8jOWPquiDveS9v+eUqOivpeWPguaVsOaOp+WItuexu+Wei1xuICAgICAqIEBkZWZhdWx0IHByaW1hcnlcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlUeXBlKHZhbHVlOiBUaHlCdXR0b25UeXBlKSB7XG4gICAgICAgIHRoaXMuc2V0QnRuVHlwZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5Yqg6L2954q25oCBXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KVxuICAgIHNldCB0aHlMb2FkaW5nKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICghdGhpcy5fbG9hZGluZyAmJiB2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5fbG9hZGluZyA9IHZhbHVlO1xuICAgICAgICAgICAgY29uc3QgdGV4dEVsZW1lbnQgPSB0aGlzLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3Rvcignc3BhbicpO1xuICAgICAgICAgICAgdGhpcy5fb3JpZ2luYWxUZXh0ID0gdGV4dEVsZW1lbnQgPyB0ZXh0RWxlbWVudC5pbm5lclRleHQgOiAnJztcbiAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZ1N0YXR1cygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fbG9hZGluZyA9IHZhbHVlO1xuICAgICAgICAgICAgdGhpcy5zZXRMb2FkaW5nU3RhdHVzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDliqDovb3nirbmgIHml7bmmL7npLrnmoTmlofmoYhcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlMb2FkaW5nVGV4dCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh0aGlzLl9sb2FkaW5nVGV4dCAhPT0gdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX2xvYWRpbmdUZXh0ID0gdmFsdWU7XG4gICAgICAgICAgICBpZiAodGhpcy5fbG9hZGluZykge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZ1RleHQodGhpcy5fbG9hZGluZ1RleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5oyJ6ZKu5aSn5bCPXG4gICAgICogQHR5cGUgeHMgfCBzbSB8IG1kIHwgZGVmYXVsdCB8IGxnXG4gICAgICogQGRlZmF1bHQgZGVmYXVsdFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeVNpemUoc2l6ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX3NpemUgPSBzaXplO1xuICAgICAgICBpZiAodGhpcy5faW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQ2xhc3NlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5oyJ6ZKu5Lit5pi+56S655qE5Zu+5qCH77yM5pSv5oyBU1ZH5Zu+5qCH5ZCN56ew77yM5q+U5aaCYGFuZ2xlLWxlZnRg77yM5Lmf5pSv5oyB5Lyg5LmL5YmN55qEIHd0ZiDlrZfkvZPvvIzmr5TlpoI6IHd0Zi1wbHVzXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5SWNvbihpY29uOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5faWNvbiA9IGljb247XG4gICAgICAgIGlmICh0aGlzLl9pY29uKSB7XG4gICAgICAgICAgICBpZiAoaWNvbi5pbmNsdWRlcygnd3RmJykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjbGFzc2VzID0gdGhpcy5faWNvbi5zcGxpdCgnICcpO1xuICAgICAgICAgICAgICAgIGlmIChjbGFzc2VzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICBjbGFzc2VzLnVuc2hpZnQoJ3d0ZicpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmljb25DbGFzcyA9IGNsYXNzZXM7XG4gICAgICAgICAgICAgICAgdGhpcy5zdmdJY29uTmFtZSA9IG51bGw7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuc3ZnSWNvbk5hbWUgPSBpY29uO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pY29uQ2xhc3MgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5zdmdJY29uTmFtZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmjInpkq7mlbTlnZflsZXnpLpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuYnRuLWJsb2NrYClcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KVxuICAgIHRoeUJsb2NrOiBib29sZWFuO1xuXG4gICAgcHJpdmF0ZSBzZXRCdG5UeXBlKHZhbHVlOiBUaHlCdXR0b25UeXBlKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgaWYgKHZhbHVlLmluY2x1ZGVzKCctc3F1YXJlJykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl90eXBlID0gdmFsdWUucmVwbGFjZSgnLXNxdWFyZScsICcnKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9pc1JhZGl1c1NxdWFyZSA9IHRydWU7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX3R5cGUgPSB2YWx1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRoaXMuX2luaXRpYWxpemVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVDbGFzc2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldExvYWRpbmdUZXh0KHRleHQ6IHN0cmluZykge1xuICAgICAgICBjb25zdCBzcGFuRWxlbWVudCA9IHRoaXMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdzcGFuJyk7XG4gICAgICAgIGlmIChzcGFuRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eShzcGFuRWxlbWVudCwgJ2lubmVyVGV4dCcsIHRleHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRMb2FkaW5nU3RhdHVzKCkge1xuICAgICAgICBjb25zdCBpbm5lclRleHQgPSB0aGlzLl9sb2FkaW5nID8gdGhpcy5fbG9hZGluZ1RleHQgOiB0aGlzLl9vcmlnaW5hbFRleHQ7XG4gICAgICAgIHRoaXMudXBkYXRlQ2xhc3NlcygpO1xuICAgICAgICBpZiAoaW5uZXJUZXh0KSB7XG4gICAgICAgICAgICB0aGlzLnNldExvYWRpbmdUZXh0KGlubmVyVGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUNsYXNzZXMoKSB7XG4gICAgICAgIGxldCBjbGFzc05hbWVzOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgICBpZiAoYnRuVHlwZUNsYXNzZXNNYXBbdGhpcy5fdHlwZV0pIHtcbiAgICAgICAgICAgIGNsYXNzTmFtZXMgPSBbLi4uYnRuVHlwZUNsYXNzZXNNYXBbdGhpcy5fdHlwZV1dO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3R5cGUpIHtcbiAgICAgICAgICAgICAgICBjbGFzc05hbWVzLnB1c2goYGJ0bi0ke3RoaXMuX3R5cGV9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX3NpemUpIHtcbiAgICAgICAgICAgIGNsYXNzTmFtZXMucHVzaChgYnRuLSR7dGhpcy5fc2l6ZX1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5faXNSYWRpdXNTcXVhcmUpIHtcbiAgICAgICAgICAgIGNsYXNzTmFtZXMucHVzaCgnYnRuLXNxdWFyZScpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9sb2FkaW5nKSB7XG4gICAgICAgICAgICBjbGFzc05hbWVzLnB1c2goJ2xvYWRpbmcnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci51cGRhdGVDbGFzcyhjbGFzc05hbWVzKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjJcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy51cGRhdGVDbGFzc2VzKCk7XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIGlmIChhc3NlcnRJY29uT25seSh0aGlzLm5hdGl2ZUVsZW1lbnQpKSB7XG4gICAgICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci5hZGRDbGFzcyhpY29uT25seUNsYXNzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnJlbW92ZUNsYXNzKGljb25Pbmx5Q2xhc3MpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMud3JhcFNwYW5Gb3JUZXh0KHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHdyYXBTcGFuRm9yVGV4dChub2RlczogTm9kZUxpc3QpOiB2b2lkIHtcbiAgICAgICAgbm9kZXMuZm9yRWFjaChub2RlID0+IHtcbiAgICAgICAgICAgIGlmIChub2RlLm5vZGVOYW1lID09PSAnI3RleHQnKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3BhbiA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhcmVudCA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZShub2RlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHNwYW4sICd0aHktYnRuLXdyYXAtc3BhbicpO1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKHBhcmVudCwgc3Bhbiwgbm9kZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChzcGFuLCBub2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPHRoeS1pY29uICpuZ0lmPVwic3ZnSWNvbk5hbWU7IGVsc2UgaWNvbkZvbnRcIiBbdGh5SWNvbk5hbWVdPVwic3ZnSWNvbk5hbWVcIj48L3RoeS1pY29uPlxuPG5nLXRlbXBsYXRlICNpY29uRm9udD5cbiAgPGkgW25nQ2xhc3NdPVwiaWNvbkNsYXNzXCIgKm5nSWY9XCJpY29uQ2xhc3NcIj48L2k+XG48L25nLXRlbXBsYXRlPlxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
216
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsS0FBSyxFQUVMLFNBQVMsRUFDVCxpQkFBaUIsRUFFakIsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxjQUFjLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFxQjFDLE1BQU0saUJBQWlCLEdBQUc7SUFDdEIsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3hCLFNBQVMsRUFBRSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUM7SUFDcEMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDO0lBQ2xCLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQztJQUN4QixNQUFNLEVBQUUsQ0FBQyxZQUFZLENBQUM7SUFDdEIsaUJBQWlCLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztJQUMxQyxpQkFBaUIsRUFBRSxDQUFDLHFCQUFxQixDQUFDO0lBQzFDLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE9BQU87SUFDM0IsV0FBVyxFQUFFLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxFQUFFLFNBQVM7SUFDckQsZ0JBQWdCLEVBQUUsQ0FBQyxVQUFVLEVBQUUsdUJBQXVCLENBQUMsRUFBRSxTQUFTO0lBQ2xFLGtCQUFrQixFQUFFLENBQUMsVUFBVSxFQUFFLHNCQUFzQixDQUFDLEVBQUUsU0FBUztJQUNuRSxhQUFhLEVBQUUsQ0FBQyxVQUFVLEVBQUUsaUJBQWlCLENBQUMsRUFBRSxPQUFPO0lBQ3ZELGNBQWMsRUFBRSxDQUFDLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLE9BQU87Q0FDM0QsQ0FBQztBQUVGLE1BQU0sYUFBYSxHQUFHLG1CQUFtQixDQUFDO0FBRTFDOzs7O0dBSUc7QUFZSCxNQUFNLE9BQU8sU0FBUztJQVh0QjtRQVlZLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUU3QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQWM3QixPQUFPO1FBQ1Asb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFVaEIsaUJBQVksR0FBRyxlQUFlLEVBQUUsQ0FBQztLQTJLNUM7SUEvS0csSUFBWSxhQUFhO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFDekMsQ0FBQztJQUlEOzs7O09BSUc7SUFDSCxJQUNJLFNBQVMsQ0FBQyxLQUFvQjtRQUM5QixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNJLE9BQU8sQ0FBQyxLQUFvQjtRQUM1QixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNJLFVBQVUsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzdELElBQUksQ0FBQyxhQUFhLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDOUQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDNUIsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM1QixDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxjQUFjLENBQUMsS0FBYTtRQUM1QixJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDMUIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzNDLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUNJLE9BQU8sQ0FBQyxJQUFZO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxPQUFPLENBQUMsSUFBWTtRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNiLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUN2QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDdEMsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUN2QixPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMzQixDQUFDO2dCQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO2dCQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUM1QixDQUFDO2lCQUFNLENBQUM7Z0JBQ0osSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDNUIsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDNUIsQ0FBQztJQUNMLENBQUM7SUFVTyxVQUFVLENBQUMsS0FBb0I7UUFDbkMsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNSLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMxQyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztZQUNoQyxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDdkIsQ0FBQztZQUVELElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekIsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRU8sY0FBYyxDQUFDLElBQVk7UUFDL0IsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0QsSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUQsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0I7UUFDcEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN6RSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkMsQ0FBQztJQUNMLENBQUM7SUFFTyxhQUFhO1FBQ2pCLElBQUksVUFBVSxHQUFhLEVBQUUsQ0FBQztRQUM5QixJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2hDLFVBQVUsR0FBRyxDQUFDLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDcEQsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDYixVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDekMsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNiLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDdkIsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNsQyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEIsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvQixDQUFDO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5QyxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUFlO1FBQ25DLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUM1QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDakQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUMvQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDMUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0F2TVEsU0FBUztrR0FBVCxTQUFTLHNLQXNERSxxQkFBcUIsZ0hBbUVyQixxQkFBcUIsMEhDaE03QyxzTEFRQSw0Q0Q2RGMsT0FBTyxzTUFBRSxPQUFPOzsyRkFFakIsU0FBUztrQkFYckIsU0FBUzsrQkFDSSxxQ0FBcUMsaUJBRWhDLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0YsS0FBSyxFQUFFLGFBQWE7cUJBQ3ZCLGNBQ1csSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQzs4QkF1Q3ZCLFNBQVM7c0JBRFosS0FBSztnQkFVRixPQUFPO3NCQURWLEtBQUs7Z0JBVUYsVUFBVTtzQkFEYixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQWlCdkMsY0FBYztzQkFEakIsS0FBSztnQkFnQkYsT0FBTztzQkFEVixLQUFLO2dCQVlGLE9BQU87c0JBRFYsS0FBSztnQkEwQk4sUUFBUTtzQkFGUCxXQUFXO3VCQUFDLGlCQUFpQjs7c0JBQzdCLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBSZW5kZXJlcjIsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBpbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGFzc2VydEljb25Pbmx5LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgdXNlSG9zdFJlbmRlcmVyIH0gZnJvbSAnQHRldGh5cy9jZGsvZG9tJztcbmltcG9ydCB7IFRoeUljb24gfSBmcm9tICduZ3gtdGV0aHlzL2ljb24nO1xuaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmV4cG9ydCB0eXBlIFRoeUJ1dHRvblR5cGUgPVxuICAgIHwgJ3ByaW1hcnknXG4gICAgfCAnc2Vjb25kYXJ5J1xuICAgIHwgJ2luZm8nXG4gICAgfCAnb3V0bGluZS1wcmltYXJ5J1xuICAgIHwgJ291dGxpbmUtZGVmYXVsdCdcbiAgICB8ICdkYW5nZXInXG4gICAgfCAnbGluaydcbiAgICB8ICdsaW5rLXNlY29uZGFyeSdcbiAgICB8ICd3YXJuaW5nJ1xuICAgIHwgJ291dGxpbmUtd2FybmluZydcbiAgICB8ICdzdWNjZXNzJ1xuICAgIHwgJ291dGxpbmUtc3VjY2VzcydcbiAgICB8ICdvdXRsaW5lLWluZm8nXG4gICAgfCAnb3V0bGluZS1kYW5nZXInXG4gICAgfCAnbGluay1kYW5nZXItd2VhaydcbiAgICB8ICdsaW5rLWRhbmdlcidcbiAgICB8ICdsaW5rLXN1Y2Nlc3MnO1xuXG5jb25zdCBidG5UeXBlQ2xhc3Nlc01hcCA9IHtcbiAgICBwcmltYXJ5OiBbJ2J0bi1wcmltYXJ5J10sXG4gICAgc2Vjb25kYXJ5OiBbJ2J0bi1wcmltYXJ5JywgJ2J0bi1tZCddLFxuICAgIGluZm86IFsnYnRuLWluZm8nXSxcbiAgICB3YXJuaW5nOiBbJ2J0bi13YXJuaW5nJ10sXG4gICAgZGFuZ2VyOiBbJ2J0bi1kYW5nZXInXSxcbiAgICAnb3V0bGluZS1wcmltYXJ5JzogWydidG4tb3V0bGluZS1wcmltYXJ5J10sXG4gICAgJ291dGxpbmUtZGVmYXVsdCc6IFsnYnRuLW91dGxpbmUtZGVmYXVsdCddLFxuICAgIGxpbms6IFsnYnRuLWxpbmsnXSwgLy8g6ZO+5o6l5oyJ6ZKuXG4gICAgJ2xpbmstaW5mbyc6IFsnYnRuLWxpbmsnLCAnYnRuLWxpbmstaW5mbyddLCAvLyDlub3ngbXpk77mjqXmjInpkq5cbiAgICAnbGluay1zZWNvbmRhcnknOiBbJ2J0bi1saW5rJywgJ2J0bi1saW5rLXByaW1hcnktd2VhayddLCAvLyDlub3ngbXpk77mjqXmjInpkq5cbiAgICAnbGluay1kYW5nZXItd2Vhayc6IFsnYnRuLWxpbmsnLCAnYnRuLWxpbmstZGFuZ2VyLXdlYWsnXSwgLy8g5bm954G15Y2x6Zmp5oyJ6ZKuXG4gICAgJ2xpbmstZGFuZ2VyJzogWydidG4tbGluaycsICdidG4tbGluay1kYW5nZXInXSwgLy8g5Y2x6Zmp5oyJ6ZKuXG4gICAgJ2xpbmstc3VjY2Vzcyc6IFsnYnRuLWxpbmsnLCAnYnRuLWxpbmstc3VjY2VzcyddIC8vIOaIkOWKn+aMiemSrlxufTtcblxuY29uc3QgaWNvbk9ubHlDbGFzcyA9ICd0aHktYnRuLWljb24tb25seSc7XG5cbi8qKlxuICog5pON5L2c5oyJ6ZKu77yM5pSv5oyB57uE5Lu2YHRoeS1idXR0b25g5ZKMYHRoeUJ1dHRvbmDmjIfku6TkuKTnp43lvaLlvI9cbiAqIEBuYW1lIHRoeS1idXR0b24sW3RoeS1idXR0b25dLFt0aHlCdXR0b25dXG4gKiBAb3JkZXIgMTBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktYnV0dG9uLFt0aHktYnV0dG9uXSxbdGh5QnV0dG9uXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWJ0biBidG4nXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUaHlJY29uLCBOZ0NsYXNzXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlCdXR0b24gaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICAgIHByaXZhdGUgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgICBwcml2YXRlIHJlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XG5cbiAgICBwcml2YXRlIF9pbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBfb3JpZ2luYWxUZXh0OiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIF90eXBlOiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIF9zaXplOiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIF9pY29uOiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIF9sb2FkaW5nOiBib29sZWFuO1xuXG4gICAgcHJpdmF0ZSBfbG9hZGluZ1RleHQ6IHN0cmluZztcblxuICAgIC8vIOWchuinkuaWueW9olxuICAgIF9pc1JhZGl1c1NxdWFyZSA9IGZhbHNlO1xuXG4gICAgaWNvbkNsYXNzOiBzdHJpbmdbXTtcblxuICAgIHN2Z0ljb25OYW1lOiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIGdldCBuYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgaG9zdFJlbmRlcmVyID0gdXNlSG9zdFJlbmRlcmVyKCk7XG5cbiAgICAvKipcbiAgICAgKiDmjInpkq7nsbvlnovvvIzmlK/mjIHmt7vliqDliY3nvIBgb3V0bGluZS1g5a6e546w57q/5qGG5oyJ6ZKu77yM5pSv5oyB5re75Yqg5YmN57yAYGxpbmstYOWunueOsOaMiemSrumTvuaOpVxuICAgICAqIEB0eXBlIHByaW1hcnkgfCBpbmZvIHwgd2FybmluZyB8IGRhbmdlciB8IHN1Y2Nlc3NcbiAgICAgKiBAZGVmYXVsdCBwcmltYXJ5XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5QnV0dG9uKHZhbHVlOiBUaHlCdXR0b25UeXBlKSB7XG4gICAgICAgIHRoaXMuc2V0QnRuVHlwZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5ZKMYHRoeUJ1dHRvbmDlj4LmlbDkuIDmoLfvvIzkuIDoiKzkvb/nlKhgdGh5QnV0dG9uYO+8jOS4uuS6huWHj+WwkeWPguaVsOi+k+WFpSwg5b2T6YCa6L+HYHRoeS1idXR0b25g5L2/55So5pe277yM5Y+q6IO95L2/55So6K+l5Y+C5pWw5o6n5Yi257G75Z6LXG4gICAgICogQGRlZmF1bHQgcHJpbWFyeVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeVR5cGUodmFsdWU6IFRoeUJ1dHRvblR5cGUpIHtcbiAgICAgICAgdGhpcy5zZXRCdG5UeXBlKHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDliqDovb3nirbmgIFcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeUxvYWRpbmcodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKCF0aGlzLl9sb2FkaW5nICYmIHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl9sb2FkaW5nID0gdmFsdWU7XG4gICAgICAgICAgICBjb25zdCB0ZXh0RWxlbWVudCA9IHRoaXMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdzcGFuJyk7XG4gICAgICAgICAgICB0aGlzLl9vcmlnaW5hbFRleHQgPSB0ZXh0RWxlbWVudCA/IHRleHRFbGVtZW50LmlubmVyVGV4dCA6ICcnO1xuICAgICAgICAgICAgdGhpcy5zZXRMb2FkaW5nU3RhdHVzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9sb2FkaW5nID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLnNldExvYWRpbmdTdGF0dXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWKoOi9veeKtuaAgeaXtuaYvuekuueahOaWh+ahiFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRoeUxvYWRpbmdUZXh0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRoaXMuX2xvYWRpbmdUZXh0ICE9PSB2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5fbG9hZGluZ1RleHQgPSB2YWx1ZTtcbiAgICAgICAgICAgIGlmICh0aGlzLl9sb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkaW5nVGV4dCh0aGlzLl9sb2FkaW5nVGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmjInpkq7lpKflsI9cbiAgICAgKiBAdHlwZSB4cyB8IHNtIHwgbWQgfCBkZWZhdWx0IHwgbGdcbiAgICAgKiBAZGVmYXVsdCBkZWZhdWx0XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5U2l6ZShzaXplOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7XG4gICAgICAgIGlmICh0aGlzLl9pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmjInpkq7kuK3mmL7npLrnmoTlm77moIfvvIzmlK/mjIFTVkflm77moIflkI3np7DvvIzmr5TlpoJgYW5nbGUtbGVmdGDvvIzkuZ/mlK/mjIHkvKDkuYvliY3nmoQgd3RmIOWtl+S9k++8jOavlOWmgjogd3RmLXBsdXNcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlJY29uKGljb246IHN0cmluZykge1xuICAgICAgICB0aGlzLl9pY29uID0gaWNvbjtcbiAgICAgICAgaWYgKHRoaXMuX2ljb24pIHtcbiAgICAgICAgICAgIGlmIChpY29uLmluY2x1ZGVzKCd3dGYnKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNsYXNzZXMgPSB0aGlzLl9pY29uLnNwbGl0KCcgJyk7XG4gICAgICAgICAgICAgICAgaWYgKGNsYXNzZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXMudW5zaGlmdCgnd3RmJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuaWNvbkNsYXNzID0gY2xhc3NlcztcbiAgICAgICAgICAgICAgICB0aGlzLnN2Z0ljb25OYW1lID0gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdmdJY29uTmFtZSA9IGljb247XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmljb25DbGFzcyA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLnN2Z0ljb25OYW1lID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaMiemSruaVtOWdl+WxleekulxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5idG4tYmxvY2tgKVxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgdGh5QmxvY2s6IGJvb2xlYW47XG5cbiAgICBwcml2YXRlIHNldEJ0blR5cGUodmFsdWU6IFRoeUJ1dHRvblR5cGUpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICBpZiAodmFsdWUuaW5jbHVkZXMoJy1zcXVhcmUnKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3R5cGUgPSB2YWx1ZS5yZXBsYWNlKCctc3F1YXJlJywgJycpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2lzUmFkaXVzU3F1YXJlID0gdHJ1ZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdHlwZSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodGhpcy5faW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzZXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2V0TG9hZGluZ1RleHQodGV4dDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHNwYW5FbGVtZW50ID0gdGhpcy5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3NwYW4nKTtcbiAgICAgICAgaWYgKHNwYW5FbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHNwYW5FbGVtZW50LCAnaW5uZXJUZXh0JywgdGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldExvYWRpbmdTdGF0dXMoKSB7XG4gICAgICAgIGNvbnN0IGlubmVyVGV4dCA9IHRoaXMuX2xvYWRpbmcgPyB0aGlzLl9sb2FkaW5nVGV4dCA6IHRoaXMuX29yaWdpbmFsVGV4dDtcbiAgICAgICAgdGhpcy51cGRhdGVDbGFzc2VzKCk7XG4gICAgICAgIGlmIChpbm5lclRleHQpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZ1RleHQoaW5uZXJUZXh0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQ2xhc3NlcygpIHtcbiAgICAgICAgbGV0IGNsYXNzTmFtZXM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGlmIChidG5UeXBlQ2xhc3Nlc01hcFt0aGlzLl90eXBlXSkge1xuICAgICAgICAgICAgY2xhc3NOYW1lcyA9IFsuLi5idG5UeXBlQ2xhc3Nlc01hcFt0aGlzLl90eXBlXV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fdHlwZSkge1xuICAgICAgICAgICAgICAgIGNsYXNzTmFtZXMucHVzaChgYnRuLSR7dGhpcy5fdHlwZX1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fc2l6ZSkge1xuICAgICAgICAgICAgY2xhc3NOYW1lcy5wdXNoKGBidG4tJHt0aGlzLl9zaXplfWApO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9pc1JhZGl1c1NxdWFyZSkge1xuICAgICAgICAgICAgY2xhc3NOYW1lcy5wdXNoKCdidG4tc3F1YXJlJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2xvYWRpbmcpIHtcbiAgICAgICAgICAgIGNsYXNzTmFtZXMucHVzaCgnbG9hZGluZycpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnVwZGF0ZUNsYXNzKGNsYXNzTmFtZXMpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzZXMoKTtcbiAgICAgICAgdGhpcy5faW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgaWYgKGFzc2VydEljb25Pbmx5KHRoaXMubmF0aXZlRWxlbWVudCkpIHtcbiAgICAgICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLmFkZENsYXNzKGljb25Pbmx5Q2xhc3MpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIucmVtb3ZlQ2xhc3MoaWNvbk9ubHlDbGFzcyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy53cmFwU3BhbkZvclRleHQodGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkTm9kZXMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgd3JhcFNwYW5Gb3JUZXh0KG5vZGVzOiBOb2RlTGlzdCk6IHZvaWQge1xuICAgICAgICBub2Rlcy5mb3JFYWNoKG5vZGUgPT4ge1xuICAgICAgICAgICAgaWYgKG5vZGUubm9kZU5hbWUgPT09ICcjdGV4dCcpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzcGFuID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICAgICAgICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5yZW5kZXJlci5wYXJlbnROb2RlKG5vZGUpO1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3Moc3BhbiwgJ3RoeS1idG4td3JhcC1zcGFuJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUocGFyZW50LCBzcGFuLCBub2RlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHNwYW4sIG5vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCJAaWYgKHN2Z0ljb25OYW1lKSB7XG4gIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwic3ZnSWNvbk5hbWVcIj48L3RoeS1pY29uPlxufSBAZWxzZSB7XG4gIEBpZiAoaWNvbkNsYXNzKSB7XG4gICAgPGkgW25nQ2xhc3NdPVwiaWNvbkNsYXNzXCI+PC9pPlxuICB9XG59XG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
@@ -1,9 +1,9 @@
1
1
  import { fromUnixTime, getMonth, getYear } from 'date-fns';
2
2
  import { ThyDateRange } from 'ngx-tethys/date-range';
3
3
  import { endOfMonth, getUnixTime, startOfMonth, TinyDate } from 'ngx-tethys/util';
4
- import { ChangeDetectorRef, Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
4
+ import { ChangeDetectorRef, Component, EventEmitter, HostBinding, Input, Output, inject } from '@angular/core';
5
5
  import { ThyButton } from 'ngx-tethys/button';
6
- import { NgIf, NgTemplateOutlet, JsonPipe } from '@angular/common';
6
+ import { NgTemplateOutlet, JsonPipe } from '@angular/common';
7
7
  import { FormsModule } from '@angular/forms';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/forms";
@@ -13,14 +13,8 @@ import * as i1 from "@angular/forms";
13
13
  * @order 20
14
14
  */
15
15
  export class ThyCalendarHeader {
16
- /**
17
- * 当前选中日期
18
- */
19
- set currentDate(value) {
20
- this.setDate(value);
21
- }
22
- constructor(cdr) {
23
- this.cdr = cdr;
16
+ constructor() {
17
+ this.cdr = inject(ChangeDetectorRef);
24
18
  this.className = true;
25
19
  /**
26
20
  * 日期选择范围(年)发生变化的回调
@@ -48,6 +42,12 @@ export class ThyCalendarHeader {
48
42
  }
49
43
  ];
50
44
  }
45
+ /**
46
+ * 当前选中日期
47
+ */
48
+ set currentDate(value) {
49
+ this.setDate(value);
50
+ }
51
51
  ngOnInit() { }
52
52
  onChangeMonth(month) {
53
53
  const currentMonth = fromUnixTime(month.begin).getMonth();
@@ -90,13 +90,13 @@ export class ThyCalendarHeader {
90
90
  isCurrentDate(currentDate) {
91
91
  this.isCurrent = currentDate.getMonth() !== getMonth(new Date()) || currentDate.getYear() !== getYear(new Date());
92
92
  }
93
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarHeader, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
94
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: ThyCalendarHeader, isStandalone: true, selector: "thy-calendar-header", inputs: { currentDate: "currentDate", operationRender: "operationRender" }, outputs: { yearChange: "yearChange", monthChange: "monthChange", dateRangeChange: "dateRangeChange" }, host: { properties: { "class.thy-calendar-full-header-container": "this.className" } }, ngImport: i0, template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n <button *ngIf=\"isCurrent\" thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">\u4ECA\u5929</button>\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n", dependencies: [{ kind: "component", type: ThyDateRange, selector: "thy-date-range", inputs: ["thyOptionalDateRanges", "thyHiddenMenu", "thyDisabledSwitch", "thyCustomTextValue", "thyMinDate", "thyMaxDate", "thyCustomKey", "thyPickerFormat", "thyDisabledDate"], outputs: ["thyOnCalendarChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ThyButton, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: JsonPipe, name: "json" }] }); }
93
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
94
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyCalendarHeader, isStandalone: true, selector: "thy-calendar-header", inputs: { currentDate: "currentDate", operationRender: "operationRender" }, outputs: { yearChange: "yearChange", monthChange: "monthChange", dateRangeChange: "dateRangeChange" }, host: { properties: { "class.thy-calendar-full-header-container": "this.className" } }, ngImport: i0, template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">\u4ECA\u5929</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n", dependencies: [{ kind: "component", type: ThyDateRange, selector: "thy-date-range", inputs: ["thyOptionalDateRanges", "thyHiddenMenu", "thyDisabledSwitch", "thyCustomTextValue", "thyMinDate", "thyMaxDate", "thyCustomKey", "thyPickerFormat", "thyDisabledDate"], outputs: ["thyOnCalendarChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ThyButton, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: JsonPipe, name: "json" }] }); }
95
95
  }
96
96
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCalendarHeader, decorators: [{
97
97
  type: Component,
98
- args: [{ selector: 'thy-calendar-header', standalone: true, imports: [ThyDateRange, FormsModule, NgIf, ThyButton, NgTemplateOutlet, JsonPipe], template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n <button *ngIf=\"isCurrent\" thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">\u4ECA\u5929</button>\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n" }]
99
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { className: [{
98
+ args: [{ selector: 'thy-calendar-header', standalone: true, imports: [ThyDateRange, FormsModule, ThyButton, NgTemplateOutlet, JsonPipe], template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">\u4ECA\u5929</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n" }]
99
+ }], propDecorators: { className: [{
100
100
  type: HostBinding,
101
101
  args: ['class.thy-calendar-full-header-container']
102
102
  }], currentDate: [{
@@ -110,4 +110,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
110
110
  }], dateRangeChange: [{
111
111
  type: Output
112
112
  }] } });
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jYWxlbmRhci9jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NhbGVuZGFyL2NhbGVuZGFyLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDM0QsT0FBTyxFQUFxQixZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsVUFBVSxFQUFnQixXQUFXLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQzVILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRTdDOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8saUJBQWlCO0lBRzFCOztPQUVHO0lBQ0gsSUFDSSxXQUFXLENBQUMsS0FBZTtRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUEyQ0QsWUFBb0IsR0FBc0I7UUFBdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFuRGUsY0FBUyxHQUFHLElBQUksQ0FBQztRQWUxRTs7V0FFRztRQUNnQixlQUFVLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFekU7O1dBRUc7UUFD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QUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzFDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYSxDQUFDLFdBQXFCO1FBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLFFBQVEsRUFBRSxLQUFLLFFBQVEsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxLQUFLLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdEgsQ0FBQzs4R0FwR1EsaUJBQWlCO2tHQUFqQixpQkFBaUIsMFZDcEI5QixrcEJBZUEsNENER2MsWUFBWSw2UUFBRSxXQUFXLCtWQUFFLElBQUksNkZBQUUsU0FBUyxvTEFBRSxnQkFBZ0IsK0lBQUUsUUFBUTs7MkZBRXZFLGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDSSxxQkFBcUIsY0FFbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsQ0FBQztzRkFHeEIsU0FBUztzQkFBakUsV0FBVzt1QkFBQywwQ0FBMEM7Z0JBTW5ELFdBQVc7c0JBRGQsS0FBSztnQkFRRyxlQUFlO3NCQUF2QixLQUFLO2dCQUthLFVBQVU7c0JBQTVCLE1BQU07Z0JBS1ksV0FBVztzQkFBN0IsTUFBTTtnQkFLWSxlQUFlO3NCQUFqQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZnJvbVVuaXhUaW1lLCBnZXRNb250aCwgZ2V0WWVhciB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IERhdGVSYW5nZUl0ZW1JbmZvLCBUaHlEYXRlUmFuZ2UgfSBmcm9tICduZ3gtdGV0aHlzL2RhdGUtcmFuZ2UnO1xuaW1wb3J0IHsgZW5kT2ZNb250aCwgRnVuY3Rpb25Qcm9wLCBnZXRVbml4VGltZSwgc3RhcnRPZk1vbnRoLCBUaW55RGF0ZSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5cbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeUJ1dHRvbiB9IGZyb20gJ25neC10ZXRoeXMvYnV0dG9uJztcbmltcG9ydCB7IE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQsIEpzb25QaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vKipcbiAqIOaXpeWOhuWktOmDqOaTjeS9nOagj+e7hOS7tlxuICogQG5hbWUgdGh5LWNhbGVuZGFyLWhlYWRlclxuICogQG9yZGVyIDIwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWNhbGVuZGFyLWhlYWRlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbVGh5RGF0ZVJhbmdlLCBGb3Jtc01vZHVsZSwgTmdJZiwgVGh5QnV0dG9uLCBOZ1RlbXBsYXRlT3V0bGV0LCBKc29uUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgVGh5Q2FsZW5kYXJIZWFkZXIgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MudGh5LWNhbGVuZGFyLWZ1bGwtaGVhZGVyLWNvbnRhaW5lcicpIGNsYXNzTmFtZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiDlvZPliY3pgInkuK3ml6XmnJ9cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBjdXJyZW50RGF0ZSh2YWx1ZTogVGlueURhdGUpIHtcbiAgICAgICAgdGhpcy5zZXREYXRlKHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBcdOiHquWumuS5iea4suafk+WPs+S+p+aTjeS9nOmhuVxuICAgICAqL1xuICAgIEBJbnB1dCgpIG9wZXJhdGlvblJlbmRlcjogRnVuY3Rpb25Qcm9wPFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gICAgLyoqXG4gICAgICog5pel5pyf6YCJ5oup6IyD5Zu077yI5bm077yJ5Y+R55Sf5Y+Y5YyW55qE5Zue6LCDXG4gICAgICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IHllYXJDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqXG4gICAgICog5pel5pyf6YCJ5oup6IyD5Zu077yI5pyI77yJ5Y+R55Sf5Y+Y5YyW55qE5Zue6LCDXG4gICAgICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IG1vbnRoQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIOaXpeacn+mAieaLqeiMg+WbtO+8iOaXpeacn++8ieWPkeeUn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBkYXRlUmFuZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxEYXRlUmFuZ2VJdGVtSW5mbz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBwdWJsaWMgcGlja2VyRm9ybWF0ID0gJ3l5eXnlubRNTeaciCc7XG5cbiAgICBwdWJsaWMgZGF0ZVJhbmdlczogRGF0ZVJhbmdlSXRlbUluZm9bXSA9IFtcbiAgICAgICAge1xuICAgICAgICAgICAga2V5OiAnbW9udGgnLFxuICAgICAgICAgICAgdGV4dDogbmV3IFRpbnlEYXRlKCkuZm9ybWF0KHRoaXMucGlja2VyRm9ybWF0KSxcbiAgICAgICAgICAgIGJlZ2luOiBnZXRVbml4VGltZShzdGFydE9mTW9udGgobmV3IERhdGUoKSkpLFxuICAgICAgICAgICAgZW5kOiBnZXRVbml4VGltZShlbmRPZk1vbnRoKG5ldyBEYXRlKCkpKSxcbiAgICAgICAgICAgIHRpbWVzdGFtcDoge1xuICAgICAgICAgICAgICAgIGludGVydmFsOiAxLFxuICAgICAgICAgICAgICAgIHVuaXQ6ICdtb250aCdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIF07XG5cbiAgICBwdWJsaWMgZGF0ZTogRGF0ZVJhbmdlSXRlbUluZm87XG5cbiAgICBwcml2YXRlIF9jdXJyZW50RGF0ZTogVGlueURhdGU7XG5cbiAgICBwdWJsaWMgaXNDdXJyZW50OiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gICAgb25DaGFuZ2VNb250aChtb250aDogRGF0ZVJhbmdlSXRlbUluZm8pIHtcbiAgICAgICAgY29uc3QgY3VycmVudE1vbnRoID0gZnJvbVVuaXhUaW1lKG1vbnRoLmJlZ2luKS5nZXRNb250aCgpO1xuICAgICAgICB0aGlzLm1vbnRoQ2hhbmdlLmVtaXQoY3VycmVudE1vbnRoKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZVllYXIoeWVhcjogRGF0ZVJhbmdlSXRlbUluZm8pIHtcbiAgICAgICAgY29uc3QgY3VycmVudFllYXIgPSBmcm9tVW5peFRpbWUoeWVhci5iZWdpbikuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgdGhpcy55ZWFyQ2hhbmdlLmVtaXQoY3VycmVudFllYXIpO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlUmFuZ2UoZGF0ZVJhbmdlOiBEYXRlUmFuZ2VJdGVtSW5mbykge1xuICAgICAgICB0aGlzLmlzQ3VycmVudERhdGUodGhpcy5fY3VycmVudERhdGUpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlWWVhcihkYXRlUmFuZ2UpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlTW9udGgoZGF0ZVJhbmdlKTtcbiAgICAgICAgdGhpcy5kYXRlUmFuZ2VDaGFuZ2UuZW1pdChkYXRlUmFuZ2UpO1xuICAgIH1cblxuICAgIGJhY2tUb2RheSgpIHtcbiAgICAgICAgdGhpcy5fY3VycmVudERhdGUgPSBuZXcgVGlueURhdGUoKTtcbiAgICAgICAgdGhpcy5kYXRlID0geyAuLi50aGlzLmRhdGVSYW5nZXNbMF0gfTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVJhbmdlKHRoaXMuZGF0ZSk7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBzZXREYXRlKHZhbHVlOiBUaW55RGF0ZSkge1xuICAgICAgICB0aGlzLmlzQ3VycmVudERhdGUodmFsdWUpO1xuICAgICAgICBpZiAodGhpcy5pc0N1cnJlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2N1cnJlbnREYXRlID0gdmFsdWU7XG4gICAgICAgICAgICBjb25zdCBkYXRlUmFuZ2UgPSB7XG4gICAgICAgICAgICAgICAgLi4udGhpcy5kYXRlUmFuZ2VzWzBdLFxuICAgICAgICAgICAgICAgIGtleTogJ2V4Y2VwdGlvbicsXG4gICAgICAgICAgICAgICAgdGV4dDogdGhpcy5fY3VycmVudERhdGUuZm9ybWF0KHRoaXMucGlja2VyRm9ybWF0KSxcbiAgICAgICAgICAgICAgICBiZWdpbjogZ2V0VW5peFRpbWUoc3RhcnRPZk1vbnRoKHRoaXMuX2N1cnJlbnREYXRlLm5hdGl2ZURhdGUpKSxcbiAgICAgICAgICAgICAgICBlbmQ6IGdldFVuaXhUaW1lKGVuZE9mTW9udGgodGhpcy5fY3VycmVudERhdGUubmF0aXZlRGF0ZSkpXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdGhpcy5kYXRlID0gZGF0ZVJhbmdlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fY3VycmVudERhdGUgPSBuZXcgVGlueURhdGUoKTtcbiAgICAgICAgICAgIHRoaXMuZGF0ZSA9IHsgLi4udGhpcy5kYXRlUmFuZ2VzWzBdIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0N1cnJlbnREYXRlKGN1cnJlbnREYXRlOiBUaW55RGF0ZSkge1xuICAgICAgICB0aGlzLmlzQ3VycmVudCA9IGN1cnJlbnREYXRlLmdldE1vbnRoKCkgIT09IGdldE1vbnRoKG5ldyBEYXRlKCkpIHx8IGN1cnJlbnREYXRlLmdldFllYXIoKSAhPT0gZ2V0WWVhcihuZXcgRGF0ZSgpKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidGh5LWNhbGVuZGFyLWZ1bGwtaGVhZGVyLWxlZnRcIj5cbiAgPHRoeS1kYXRlLXJhbmdlXG4gICAgY2xhc3M9XCJzZWxlY3QtZGF0ZS1yYW5nZVwiXG4gICAgW25nTW9kZWxdPVwiZGF0ZVwiXG4gICAgW3RoeUhpZGRlbk1lbnVdPVwidHJ1ZVwiXG4gICAgW3RoeUN1c3RvbUtleV09XCInZXhjZXB0aW9uJ1wiXG4gICAgW3RoeVBpY2tlckZvcm1hdF09XCJwaWNrZXJGb3JtYXRcIlxuICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hhbmdlUmFuZ2UoJGV2ZW50KVwiPjwvdGh5LWRhdGUtcmFuZ2U+XG4gIDxidXR0b24gKm5nSWY9XCJpc0N1cnJlbnRcIiB0aHlCdXR0b249XCJvdXRsaW5lLWRlZmF1bHQtc3F1YXJlXCIgdGh5U2l6ZT1cIm1kXCIgKGNsaWNrKT1cImJhY2tUb2RheSgpXCI+5LuK5aSpPC9idXR0b24+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJ0aHktY2FsZW5kYXItZnVsbC1oZWFkZXItcmlnaHRcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIiRhbnkob3BlcmF0aW9uUmVuZGVyKTsgY29udGV4dDogeyAkaW1wbGljaXQ6IG9wZXJhdGlvblJlbmRlciB9XCI+XG4gICAgPHNwYW4+e3sgb3BlcmF0aW9uUmVuZGVyIHwganNvbiB9fTwvc3Bhbj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jYWxlbmRhci9jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NhbGVuZGFyL2NhbGVuZGFyLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDM0QsT0FBTyxFQUFxQixZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsVUFBVSxFQUFnQixXQUFXLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFlLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwSSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRTdDOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8saUJBQWlCO0lBTjlCO1FBT1ksUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRWlCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFlMUU7O1dBRUc7UUFDZ0IsZUFBVSxHQUF5QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXpFOztXQUVHO1FBQ2dCLGdCQUFXLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUU7O1dBRUc7UUFDZ0Isb0JBQWUsR0FBb0MsSUFBSSxZQUFZLEVBQUUsQ0FBQztR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QyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMxQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWEsQ0FBQyxXQUFxQjtRQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQyxRQUFRLEVBQUUsS0FBSyxRQUFRLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RILENBQUM7OEdBcEdRLGlCQUFpQjtrR0FBakIsaUJBQWlCLDBWQ3BCOUIsd3BCQWlCQSw0Q0RDYyxZQUFZLDZRQUFFLFdBQVcsK1ZBQUUsU0FBUyxvTEFBRSxnQkFBZ0IsK0lBQUUsUUFBUTs7MkZBRWpFLGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDSSxxQkFBcUIsY0FFbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDOzhCQUtsQixTQUFTO3NCQUFqRSxXQUFXO3VCQUFDLDBDQUEwQztnQkFNbkQsV0FBVztzQkFEZCxLQUFLO2dCQVFHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBS2EsVUFBVTtzQkFBNUIsTUFBTTtnQkFLWSxXQUFXO3NCQUE3QixNQUFNO2dCQUtZLGVBQWU7c0JBQWpDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmcm9tVW5peFRpbWUsIGdldE1vbnRoLCBnZXRZZWFyIH0gZnJvbSAnZGF0ZS1mbnMnO1xuaW1wb3J0IHsgRGF0ZVJhbmdlSXRlbUluZm8sIFRoeURhdGVSYW5nZSB9IGZyb20gJ25neC10ZXRoeXMvZGF0ZS1yYW5nZSc7XG5pbXBvcnQgeyBlbmRPZk1vbnRoLCBGdW5jdGlvblByb3AsIGdldFVuaXhUaW1lLCBzdGFydE9mTW9udGgsIFRpbnlEYXRlIH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHlCdXR0b24gfSBmcm9tICduZ3gtdGV0aHlzL2J1dHRvbic7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0LCBKc29uUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLyoqXG4gKiDml6XljoblpLTpg6jmk43kvZzmoI/nu4Tku7ZcbiAqIEBuYW1lIHRoeS1jYWxlbmRhci1oZWFkZXJcbiAqIEBvcmRlciAyMFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoeS1jYWxlbmRhci1oZWFkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1RoeURhdGVSYW5nZSwgRm9ybXNNb2R1bGUsIFRoeUJ1dHRvbiwgTmdUZW1wbGF0ZU91dGxldCwgSnNvblBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUNhbGVuZGFySGVhZGVyIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRoeS1jYWxlbmRhci1mdWxsLWhlYWRlci1jb250YWluZXInKSBjbGFzc05hbWUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog5b2T5YmN6YCJ5Lit5pel5pyfXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgY3VycmVudERhdGUodmFsdWU6IFRpbnlEYXRlKSB7XG4gICAgICAgIHRoaXMuc2V0RGF0ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogXHToh6rlrprkuYnmuLLmn5Plj7Pkvqfmk43kvZzpoblcbiAgICAgKi9cbiAgICBASW5wdXQoKSBvcGVyYXRpb25SZW5kZXI6IEZ1bmN0aW9uUHJvcDxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKlxuICAgICAqIOaXpeacn+mAieaLqeiMg+WbtO+8iOW5tO+8ieWPkeeUn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB5ZWFyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIOaXpeacn+mAieaLqeiMg+WbtO+8iOaciO+8ieWPkeeUn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBtb250aENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICAvKipcbiAgICAgKiDml6XmnJ/pgInmi6nojIPlm7TvvIjml6XmnJ/vvInlj5HnlJ/lj5jljJbnmoTlm57osINcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgZGF0ZVJhbmdlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZVJhbmdlSXRlbUluZm8+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHVibGljIHBpY2tlckZvcm1hdCA9ICd5eXl55bm0TU3mnIgnO1xuXG4gICAgcHVibGljIGRhdGVSYW5nZXM6IERhdGVSYW5nZUl0ZW1JbmZvW10gPSBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGtleTogJ21vbnRoJyxcbiAgICAgICAgICAgIHRleHQ6IG5ldyBUaW55RGF0ZSgpLmZvcm1hdCh0aGlzLnBpY2tlckZvcm1hdCksXG4gICAgICAgICAgICBiZWdpbjogZ2V0VW5peFRpbWUoc3RhcnRPZk1vbnRoKG5ldyBEYXRlKCkpKSxcbiAgICAgICAgICAgIGVuZDogZ2V0VW5peFRpbWUoZW5kT2ZNb250aChuZXcgRGF0ZSgpKSksXG4gICAgICAgICAgICB0aW1lc3RhbXA6IHtcbiAgICAgICAgICAgICAgICBpbnRlcnZhbDogMSxcbiAgICAgICAgICAgICAgICB1bml0OiAnbW9udGgnXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICBdO1xuXG4gICAgcHVibGljIGRhdGU6IERhdGVSYW5nZUl0ZW1JbmZvO1xuXG4gICAgcHJpdmF0ZSBfY3VycmVudERhdGU6IFRpbnlEYXRlO1xuXG4gICAgcHVibGljIGlzQ3VycmVudDogYm9vbGVhbjtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge31cblxuICAgIG9uQ2hhbmdlTW9udGgobW9udGg6IERhdGVSYW5nZUl0ZW1JbmZvKSB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRNb250aCA9IGZyb21Vbml4VGltZShtb250aC5iZWdpbikuZ2V0TW9udGgoKTtcbiAgICAgICAgdGhpcy5tb250aENoYW5nZS5lbWl0KGN1cnJlbnRNb250aCk7XG4gICAgfVxuXG4gICAgb25DaGFuZ2VZZWFyKHllYXI6IERhdGVSYW5nZUl0ZW1JbmZvKSB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRZZWFyID0gZnJvbVVuaXhUaW1lKHllYXIuYmVnaW4pLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIHRoaXMueWVhckNoYW5nZS5lbWl0KGN1cnJlbnRZZWFyKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZVJhbmdlKGRhdGVSYW5nZTogRGF0ZVJhbmdlSXRlbUluZm8pIHtcbiAgICAgICAgdGhpcy5pc0N1cnJlbnREYXRlKHRoaXMuX2N1cnJlbnREYXRlKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVllYXIoZGF0ZVJhbmdlKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZU1vbnRoKGRhdGVSYW5nZSk7XG4gICAgICAgIHRoaXMuZGF0ZVJhbmdlQ2hhbmdlLmVtaXQoZGF0ZVJhbmdlKTtcbiAgICB9XG5cbiAgICBiYWNrVG9kYXkoKSB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnREYXRlID0gbmV3IFRpbnlEYXRlKCk7XG4gICAgICAgIHRoaXMuZGF0ZSA9IHsgLi4udGhpcy5kYXRlUmFuZ2VzWzBdIH07XG4gICAgICAgIHRoaXMub25DaGFuZ2VSYW5nZSh0aGlzLmRhdGUpO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgc2V0RGF0ZSh2YWx1ZTogVGlueURhdGUpIHtcbiAgICAgICAgdGhpcy5pc0N1cnJlbnREYXRlKHZhbHVlKTtcbiAgICAgICAgaWYgKHRoaXMuaXNDdXJyZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9jdXJyZW50RGF0ZSA9IHZhbHVlO1xuICAgICAgICAgICAgY29uc3QgZGF0ZVJhbmdlID0ge1xuICAgICAgICAgICAgICAgIC4uLnRoaXMuZGF0ZVJhbmdlc1swXSxcbiAgICAgICAgICAgICAgICBrZXk6ICdleGNlcHRpb24nLFxuICAgICAgICAgICAgICAgIHRleHQ6IHRoaXMuX2N1cnJlbnREYXRlLmZvcm1hdCh0aGlzLnBpY2tlckZvcm1hdCksXG4gICAgICAgICAgICAgICAgYmVnaW46IGdldFVuaXhUaW1lKHN0YXJ0T2ZNb250aCh0aGlzLl9jdXJyZW50RGF0ZS5uYXRpdmVEYXRlKSksXG4gICAgICAgICAgICAgICAgZW5kOiBnZXRVbml4VGltZShlbmRPZk1vbnRoKHRoaXMuX2N1cnJlbnREYXRlLm5hdGl2ZURhdGUpKVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHRoaXMuZGF0ZSA9IGRhdGVSYW5nZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2N1cnJlbnREYXRlID0gbmV3IFRpbnlEYXRlKCk7XG4gICAgICAgICAgICB0aGlzLmRhdGUgPSB7IC4uLnRoaXMuZGF0ZVJhbmdlc1swXSB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNDdXJyZW50RGF0ZShjdXJyZW50RGF0ZTogVGlueURhdGUpIHtcbiAgICAgICAgdGhpcy5pc0N1cnJlbnQgPSBjdXJyZW50RGF0ZS5nZXRNb250aCgpICE9PSBnZXRNb250aChuZXcgRGF0ZSgpKSB8fCBjdXJyZW50RGF0ZS5nZXRZZWFyKCkgIT09IGdldFllYXIobmV3IERhdGUoKSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRoeS1jYWxlbmRhci1mdWxsLWhlYWRlci1sZWZ0XCI+XG4gIDx0aHktZGF0ZS1yYW5nZVxuICAgIGNsYXNzPVwic2VsZWN0LWRhdGUtcmFuZ2VcIlxuICAgIFtuZ01vZGVsXT1cImRhdGVcIlxuICAgIFt0aHlIaWRkZW5NZW51XT1cInRydWVcIlxuICAgIFt0aHlDdXN0b21LZXldPVwiJ2V4Y2VwdGlvbidcIlxuICAgIFt0aHlQaWNrZXJGb3JtYXRdPVwicGlja2VyRm9ybWF0XCJcbiAgKG5nTW9kZWxDaGFuZ2UpPVwib25DaGFuZ2VSYW5nZSgkZXZlbnQpXCI+PC90aHktZGF0ZS1yYW5nZT5cbiAgQGlmIChpc0N1cnJlbnQpIHtcbiAgICA8YnV0dG9uIHRoeUJ1dHRvbj1cIm91dGxpbmUtZGVmYXVsdC1zcXVhcmVcIiB0aHlTaXplPVwibWRcIiAoY2xpY2spPVwiYmFja1RvZGF5KClcIj7ku4rlpKk8L2J1dHRvbj5cbiAgfVxuPC9kaXY+XG48ZGl2IGNsYXNzPVwidGh5LWNhbGVuZGFyLWZ1bGwtaGVhZGVyLXJpZ2h0XCI+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCIkYW55KG9wZXJhdGlvblJlbmRlcik7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBvcGVyYXRpb25SZW5kZXIgfVwiPlxuICAgIDxzcGFuPnt7IG9wZXJhdGlvblJlbmRlciB8IGpzb24gfX08L3NwYW4+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=