@coreui/angular 4.2.22 → 4.2.27

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 (579) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +212 -212
  3. package/esm2020/coreui-angular.mjs +4 -4
  4. package/esm2020/lib/accordion/accordion/accordion.component.mjs +39 -39
  5. package/esm2020/lib/accordion/accordion-button/accordion-button.directive.mjs +43 -43
  6. package/esm2020/lib/accordion/accordion-item/accordion-item.component.mjs +72 -72
  7. package/esm2020/lib/accordion/accordion.module.mjs +47 -47
  8. package/esm2020/lib/accordion/accordion.service.mjs +36 -36
  9. package/esm2020/lib/accordion/index.mjs +1 -1
  10. package/esm2020/lib/accordion/public_api.mjs +4 -4
  11. package/esm2020/lib/alert/alert-heading.directive.mjs +21 -21
  12. package/esm2020/lib/alert/alert-link.directive.mjs +21 -21
  13. package/esm2020/lib/alert/alert.component.mjs +181 -181
  14. package/esm2020/lib/alert/alert.module.mjs +37 -37
  15. package/esm2020/lib/alert/index.mjs +1 -1
  16. package/esm2020/lib/alert/public_api.mjs +4 -4
  17. package/esm2020/lib/avatar/avatar.component.mjs +48 -48
  18. package/esm2020/lib/avatar/avatar.module.mjs +23 -23
  19. package/esm2020/lib/avatar/index.mjs +1 -1
  20. package/esm2020/lib/avatar/public_api.mjs +3 -3
  21. package/esm2020/lib/backdrop/backdrop.service.mjs +52 -52
  22. package/esm2020/lib/badge/badge.component.mjs +41 -41
  23. package/esm2020/lib/badge/badge.module.mjs +23 -23
  24. package/esm2020/lib/badge/index.mjs +1 -1
  25. package/esm2020/lib/badge/public_api.mjs +2 -2
  26. package/esm2020/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +42 -42
  27. package/esm2020/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +37 -37
  28. package/esm2020/lib/breadcrumb/breadcrumb-item/breadcrumb-item.mjs +1 -1
  29. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +41 -41
  30. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +53 -53
  31. package/esm2020/lib/breadcrumb/breadcrumb.module.mjs +36 -36
  32. package/esm2020/lib/breadcrumb/index.mjs +1 -1
  33. package/esm2020/lib/breadcrumb/public_api.mjs +6 -6
  34. package/esm2020/lib/button/button-close.directive.mjs +44 -44
  35. package/esm2020/lib/button/button.directive.mjs +112 -112
  36. package/esm2020/lib/button/button.module.mjs +28 -28
  37. package/esm2020/lib/button/index.mjs +1 -1
  38. package/esm2020/lib/button/public_api.mjs +3 -3
  39. package/esm2020/lib/button-group/button-group/button-group.component.mjs +40 -40
  40. package/esm2020/lib/button-group/button-group.module.mjs +28 -28
  41. package/esm2020/lib/button-group/button-toolbar/button-toolbar.component.mjs +34 -34
  42. package/esm2020/lib/button-group/index.mjs +1 -1
  43. package/esm2020/lib/button-group/public_api.mjs +3 -3
  44. package/esm2020/lib/callout/callout.component.mjs +23 -23
  45. package/esm2020/lib/callout/callout.module.mjs +19 -19
  46. package/esm2020/lib/callout/index.mjs +1 -1
  47. package/esm2020/lib/callout/public_api.mjs +2 -2
  48. package/esm2020/lib/card/card-body.component.mjs +21 -21
  49. package/esm2020/lib/card/card-footer.component.mjs +21 -21
  50. package/esm2020/lib/card/card-group.component.mjs +21 -21
  51. package/esm2020/lib/card/card-header-actions.component.mjs +19 -19
  52. package/esm2020/lib/card/card-header.component.mjs +21 -21
  53. package/esm2020/lib/card/card-img-overlay/card-img-overlay.component.mjs +18 -18
  54. package/esm2020/lib/card/card-img.directive.mjs +24 -24
  55. package/esm2020/lib/card/card-link.directive.mjs +20 -20
  56. package/esm2020/lib/card/card-subtitle.directive.mjs +20 -20
  57. package/esm2020/lib/card/card-text.directive.mjs +20 -20
  58. package/esm2020/lib/card/card-title.directive.mjs +20 -20
  59. package/esm2020/lib/card/card.component.mjs +28 -28
  60. package/esm2020/lib/card/card.module.mjs +78 -78
  61. package/esm2020/lib/card/index.mjs +1 -1
  62. package/esm2020/lib/card/public_api.mjs +13 -13
  63. package/esm2020/lib/carousel/carousel/carousel.component.mjs +214 -214
  64. package/esm2020/lib/carousel/carousel-caption/carousel-caption.component.mjs +16 -16
  65. package/esm2020/lib/carousel/carousel-control/carousel-control.component.mjs +83 -83
  66. package/esm2020/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +44 -44
  67. package/esm2020/lib/carousel/carousel-inner/carousel-inner.component.mjs +47 -47
  68. package/esm2020/lib/carousel/carousel-item/carousel-item.component.mjs +68 -68
  69. package/esm2020/lib/carousel/carousel-state.mjs +77 -77
  70. package/esm2020/lib/carousel/carousel-state.type.mjs +1 -1
  71. package/esm2020/lib/carousel/carousel.animation.mjs +69 -69
  72. package/esm2020/lib/carousel/carousel.config.mjs +21 -21
  73. package/esm2020/lib/carousel/carousel.module.mjs +53 -53
  74. package/esm2020/lib/carousel/carousel.service.mjs +18 -18
  75. package/esm2020/lib/carousel/index.mjs +2 -2
  76. package/esm2020/lib/carousel/public_api.mjs +9 -9
  77. package/esm2020/lib/collapse/collapse.animations.mjs +18 -18
  78. package/esm2020/lib/collapse/collapse.directive.mjs +190 -190
  79. package/esm2020/lib/collapse/collapse.module.mjs +22 -22
  80. package/esm2020/lib/collapse/index.mjs +1 -1
  81. package/esm2020/lib/collapse/public_api.mjs +2 -2
  82. package/esm2020/lib/coreui.types.mjs +10 -10
  83. package/esm2020/lib/dropdown/dropdown/dropdown.component.mjs +374 -366
  84. package/esm2020/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +72 -72
  85. package/esm2020/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +22 -22
  86. package/esm2020/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +22 -22
  87. package/esm2020/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +22 -22
  88. package/esm2020/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +86 -86
  89. package/esm2020/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +81 -81
  90. package/esm2020/lib/dropdown/dropdown.module.mjs +64 -64
  91. package/esm2020/lib/dropdown/dropdown.service.mjs +17 -17
  92. package/esm2020/lib/dropdown/index.mjs +1 -1
  93. package/esm2020/lib/dropdown/public_api.mjs +10 -10
  94. package/esm2020/lib/footer/footer.component.mjs +37 -37
  95. package/esm2020/lib/footer/footer.module.mjs +23 -23
  96. package/esm2020/lib/footer/index.mjs +1 -1
  97. package/esm2020/lib/footer/public_api.mjs +2 -2
  98. package/esm2020/lib/form/form/form.directive.mjs +37 -37
  99. package/esm2020/lib/form/form-check/form-check-input.directive.mjs +62 -62
  100. package/esm2020/lib/form/form-check/form-check-label.directive.mjs +20 -20
  101. package/esm2020/lib/form/form-check/form-check.component.mjs +75 -75
  102. package/esm2020/lib/form/form-control/form-control.directive.mjs +70 -70
  103. package/esm2020/lib/form/form-feedback/form-feedback.component.mjs +42 -42
  104. package/esm2020/lib/form/form-floating/form-floating.directive.mjs +37 -37
  105. package/esm2020/lib/form/form-label/form-label.directive.mjs +39 -39
  106. package/esm2020/lib/form/form-select/form-select.directive.mjs +34 -34
  107. package/esm2020/lib/form/form-text/form-text.directive.mjs +21 -21
  108. package/esm2020/lib/form/form.module.mjs +76 -76
  109. package/esm2020/lib/form/index.mjs +1 -1
  110. package/esm2020/lib/form/input-group/input-group.component.mjs +30 -30
  111. package/esm2020/lib/form/input-group-text/input-group-text.directive.mjs +21 -21
  112. package/esm2020/lib/form/public_api.mjs +13 -13
  113. package/esm2020/lib/grid/col.component.mjs +11 -11
  114. package/esm2020/lib/grid/col.directive.mjs +156 -156
  115. package/esm2020/lib/grid/col.type.mjs +1 -1
  116. package/esm2020/lib/grid/container.component.mjs +42 -42
  117. package/esm2020/lib/grid/container.type.mjs +1 -1
  118. package/esm2020/lib/grid/grid.module.mjs +47 -47
  119. package/esm2020/lib/grid/gutter.directive.mjs +55 -55
  120. package/esm2020/lib/grid/gutter.type.mjs +1 -1
  121. package/esm2020/lib/grid/index.mjs +1 -1
  122. package/esm2020/lib/grid/public_api.mjs +7 -7
  123. package/esm2020/lib/grid/row.component.mjs +11 -11
  124. package/esm2020/lib/grid/row.directive.mjs +44 -44
  125. package/esm2020/lib/grid/row.type.mjs +1 -1
  126. package/esm2020/lib/header/header/header.component.mjs +47 -47
  127. package/esm2020/lib/header/header-brand/header-brand.component.mjs +30 -30
  128. package/esm2020/lib/header/header-divider/header-divider.component.mjs +19 -19
  129. package/esm2020/lib/header/header-nav/header-nav.component.mjs +27 -27
  130. package/esm2020/lib/header/header-text/header-text.component.mjs +19 -19
  131. package/esm2020/lib/header/header-toggler/header-toggler.directive.mjs +53 -53
  132. package/esm2020/lib/header/header.module.mjs +48 -48
  133. package/esm2020/lib/header/index.mjs +1 -1
  134. package/esm2020/lib/header/public_api.mjs +7 -7
  135. package/esm2020/lib/image/img.directive.mjs +91 -91
  136. package/esm2020/lib/image/img.module.mjs +23 -23
  137. package/esm2020/lib/image/index.mjs +1 -1
  138. package/esm2020/lib/image/public_api.mjs +2 -2
  139. package/esm2020/lib/list-group/index.mjs +1 -1
  140. package/esm2020/lib/list-group/list-group-item.directive.mjs +72 -72
  141. package/esm2020/lib/list-group/list-group.directive.mjs +43 -43
  142. package/esm2020/lib/list-group/list-group.module.mjs +24 -24
  143. package/esm2020/lib/list-group/public_api.mjs +3 -3
  144. package/esm2020/lib/modal/index.mjs +1 -1
  145. package/esm2020/lib/modal/modal/modal.component.mjs +311 -311
  146. package/esm2020/lib/modal/modal-body/modal-body.component.mjs +18 -18
  147. package/esm2020/lib/modal/modal-content/modal-content.component.mjs +23 -23
  148. package/esm2020/lib/modal/modal-dialog/modal-dialog.component.mjs +31 -31
  149. package/esm2020/lib/modal/modal-dismiss/modal-toggle.directive.mjs +26 -26
  150. package/esm2020/lib/modal/modal-footer/modal-footer.component.mjs +21 -21
  151. package/esm2020/lib/modal/modal-header/modal-header.component.mjs +21 -21
  152. package/esm2020/lib/modal/modal-title/modal-title.directive.mjs +20 -20
  153. package/esm2020/lib/modal/modal.module.mjs +68 -68
  154. package/esm2020/lib/modal/modal.service.mjs +20 -20
  155. package/esm2020/lib/modal/public_api.mjs +10 -10
  156. package/esm2020/lib/nav/index.mjs +1 -1
  157. package/esm2020/lib/nav/nav-item.component.mjs +18 -18
  158. package/esm2020/lib/nav/nav-link.directive.mjs +87 -87
  159. package/esm2020/lib/nav/nav.component.mjs +24 -24
  160. package/esm2020/lib/nav/nav.module.mjs +21 -21
  161. package/esm2020/lib/nav/public_api.mjs +4 -4
  162. package/esm2020/lib/navbar/index.mjs +1 -1
  163. package/esm2020/lib/navbar/navbar-brand/navbar-brand.directive.mjs +22 -22
  164. package/esm2020/lib/navbar/navbar-nav/navbar-nav.component.mjs +39 -39
  165. package/esm2020/lib/navbar/navbar-text/navbar-text.component.mjs +19 -19
  166. package/esm2020/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +62 -62
  167. package/esm2020/lib/navbar/navbar.component.mjs +84 -84
  168. package/esm2020/lib/navbar/navbar.module.mjs +47 -47
  169. package/esm2020/lib/navbar/public_api.mjs +6 -6
  170. package/esm2020/lib/offcanvas/index.mjs +1 -1
  171. package/esm2020/lib/offcanvas/offcanvas/offcanvas.component.mjs +244 -244
  172. package/esm2020/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +18 -18
  173. package/esm2020/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +18 -18
  174. package/esm2020/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +20 -20
  175. package/esm2020/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +26 -26
  176. package/esm2020/lib/offcanvas/offcanvas.module.mjs +56 -56
  177. package/esm2020/lib/offcanvas/offcanvas.service.mjs +20 -20
  178. package/esm2020/lib/offcanvas/public_api.mjs +7 -7
  179. package/esm2020/lib/pagination/index.mjs +1 -1
  180. package/esm2020/lib/pagination/page-item/page-item.component.mjs +11 -11
  181. package/esm2020/lib/pagination/page-item/page-item.directive.mjs +62 -62
  182. package/esm2020/lib/pagination/page-link/page-link.directive.mjs +20 -20
  183. package/esm2020/lib/pagination/pagination/pagination.component.mjs +40 -40
  184. package/esm2020/lib/pagination/pagination.module.mjs +38 -38
  185. package/esm2020/lib/pagination/public_api.mjs +5 -5
  186. package/esm2020/lib/placeholder/index.mjs +2 -2
  187. package/esm2020/lib/placeholder/placeholder-animation.directive.mjs +34 -34
  188. package/esm2020/lib/placeholder/placeholder.directive.mjs +51 -51
  189. package/esm2020/lib/placeholder/placeholder.module.mjs +29 -29
  190. package/esm2020/lib/placeholder/public_api.mjs +4 -4
  191. package/esm2020/lib/popover/index.mjs +1 -1
  192. package/esm2020/lib/popover/popover/popover.component.mjs +92 -92
  193. package/esm2020/lib/popover/popover.directive.mjs +196 -196
  194. package/esm2020/lib/popover/popover.module.mjs +28 -28
  195. package/esm2020/lib/popover/public_api.mjs +3 -3
  196. package/esm2020/lib/progress/index.mjs +1 -1
  197. package/esm2020/lib/progress/progress-bar.component.mjs +111 -111
  198. package/esm2020/lib/progress/progress-bar.mjs +1 -1
  199. package/esm2020/lib/progress/progress.component.mjs +71 -71
  200. package/esm2020/lib/progress/progress.module.mjs +24 -24
  201. package/esm2020/lib/progress/public_api.mjs +3 -3
  202. package/esm2020/lib/services/class-toggle.service.mjs +29 -29
  203. package/esm2020/lib/services/index.mjs +1 -1
  204. package/esm2020/lib/services/intersection.service.mjs +34 -34
  205. package/esm2020/lib/services/listeners.service.mjs +42 -42
  206. package/esm2020/lib/services/public_api.mjs +3 -3
  207. package/esm2020/lib/shared/html-attr.directive.mjs +52 -52
  208. package/esm2020/lib/shared/index.mjs +1 -1
  209. package/esm2020/lib/shared/public_api.mjs +3 -3
  210. package/esm2020/lib/shared/shared.module.mjs +45 -45
  211. package/esm2020/lib/shared/template-id.directive.mjs +18 -18
  212. package/esm2020/lib/sidebar/index.mjs +1 -1
  213. package/esm2020/lib/sidebar/public_api.mjs +9 -9
  214. package/esm2020/lib/sidebar/sidebar/sidebar.component.mjs +244 -224
  215. package/esm2020/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +59 -59
  216. package/esm2020/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +29 -29
  217. package/esm2020/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +19 -19
  218. package/esm2020/lib/sidebar/sidebar-header/sidebar-header.component.mjs +19 -19
  219. package/esm2020/lib/sidebar/sidebar-nav/index.mjs +1 -1
  220. package/esm2020/lib/sidebar/sidebar-nav/public_api.mjs +13 -13
  221. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +23 -23
  222. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +18 -18
  223. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +18 -18
  224. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +21 -21
  225. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +33 -33
  226. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +43 -43
  227. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +94 -94
  228. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +23 -23
  229. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +68 -68
  230. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +204 -204
  231. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.mjs +2 -2
  232. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +54 -54
  233. package/esm2020/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +39 -39
  234. package/esm2020/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +25 -25
  235. package/esm2020/lib/sidebar/sidebar.module.mjs +99 -99
  236. package/esm2020/lib/sidebar/sidebar.service.mjs +20 -20
  237. package/esm2020/lib/spinner/index.mjs +1 -1
  238. package/esm2020/lib/spinner/public_api.mjs +2 -2
  239. package/esm2020/lib/spinner/spinner.component.mjs +49 -49
  240. package/esm2020/lib/spinner/spinner.module.mjs +27 -27
  241. package/esm2020/lib/table/index.mjs +1 -1
  242. package/esm2020/lib/table/public_api.mjs +4 -4
  243. package/esm2020/lib/table/table-active.directive.mjs +39 -39
  244. package/esm2020/lib/table/table-color.directive.mjs +23 -23
  245. package/esm2020/lib/table/table.directive.mjs +147 -147
  246. package/esm2020/lib/table/table.module.mjs +33 -33
  247. package/esm2020/lib/tabs/index.mjs +1 -1
  248. package/esm2020/lib/tabs/public_api.mjs +5 -5
  249. package/esm2020/lib/tabs/tab-content/tab-content.component.mjs +92 -92
  250. package/esm2020/lib/tabs/tab-content-ref.directive.mjs +128 -128
  251. package/esm2020/lib/tabs/tab-pane/tab-pane.component.mjs +56 -56
  252. package/esm2020/lib/tabs/tab.service.mjs +20 -20
  253. package/esm2020/lib/tabs/tabs.module.mjs +39 -39
  254. package/esm2020/lib/toast/index.mjs +1 -1
  255. package/esm2020/lib/toast/public_api.mjs +8 -8
  256. package/esm2020/lib/toast/toast/toast.component.mjs +238 -238
  257. package/esm2020/lib/toast/toast-body/toast-body.component.mjs +20 -20
  258. package/esm2020/lib/toast/toast-close.directive.mjs +27 -27
  259. package/esm2020/lib/toast/toast-header/toast-header.component.mjs +31 -31
  260. package/esm2020/lib/toast/toast.module.mjs +49 -49
  261. package/esm2020/lib/toast/toaster/toaster-host.directive.mjs +16 -16
  262. package/esm2020/lib/toast/toaster/toaster.component.mjs +140 -140
  263. package/esm2020/lib/toast/toaster/toaster.service.mjs +20 -20
  264. package/esm2020/lib/tooltip/index.mjs +1 -1
  265. package/esm2020/lib/tooltip/public_api.mjs +3 -3
  266. package/esm2020/lib/tooltip/tooltip/tooltip.component.mjs +88 -88
  267. package/esm2020/lib/tooltip/tooltip.directive.mjs +191 -191
  268. package/esm2020/lib/tooltip/tooltip.module.mjs +28 -28
  269. package/esm2020/lib/utilities/align.directive.mjs +23 -23
  270. package/esm2020/lib/utilities/bg-color.directive.mjs +32 -32
  271. package/esm2020/lib/utilities/border.directive.mjs +65 -65
  272. package/esm2020/lib/utilities/border.type.mjs +1 -1
  273. package/esm2020/lib/utilities/index.mjs +1 -1
  274. package/esm2020/lib/utilities/public_api.mjs +6 -6
  275. package/esm2020/lib/utilities/rounded.directive.mjs +65 -65
  276. package/esm2020/lib/utilities/rounded.type.mjs +1 -1
  277. package/esm2020/lib/utilities/text-color.directive.mjs +31 -31
  278. package/esm2020/lib/utilities/utilities.module.mjs +43 -43
  279. package/esm2020/lib/widget/index.mjs +2 -2
  280. package/esm2020/lib/widget/public_api.mjs +7 -7
  281. package/esm2020/lib/widget/widget-stat-a/widget-stat-a.component.mjs +48 -48
  282. package/esm2020/lib/widget/widget-stat-b/widget-stat-b.component.mjs +52 -52
  283. package/esm2020/lib/widget/widget-stat-c/widget-stat-c.component.mjs +79 -79
  284. package/esm2020/lib/widget/widget-stat-d/widget-stat-d.component.mjs +38 -38
  285. package/esm2020/lib/widget/widget-stat-e/widget-stat-e.component.mjs +29 -29
  286. package/esm2020/lib/widget/widget-stat-f/widget-stat-f.component.mjs +92 -92
  287. package/esm2020/lib/widget/widget.module.mjs +56 -56
  288. package/esm2020/public-api.mjs +41 -41
  289. package/fesm2015/coreui-angular.mjs +9704 -9680
  290. package/fesm2015/coreui-angular.mjs.map +1 -1
  291. package/fesm2020/coreui-angular.mjs +9638 -9611
  292. package/fesm2020/coreui-angular.mjs.map +1 -1
  293. package/index.d.ts +5 -5
  294. package/lib/accordion/accordion/accordion.component.d.ts +22 -22
  295. package/lib/accordion/accordion-button/accordion-button.directive.d.ts +18 -18
  296. package/lib/accordion/accordion-item/accordion-item.component.d.ts +33 -33
  297. package/lib/accordion/accordion.module.d.ts +12 -12
  298. package/lib/accordion/accordion.service.d.ts +13 -13
  299. package/lib/accordion/index.d.ts +1 -1
  300. package/lib/accordion/public_api.d.ts +4 -4
  301. package/lib/alert/alert-heading.directive.d.ts +7 -7
  302. package/lib/alert/alert-link.directive.d.ts +7 -7
  303. package/lib/alert/alert.component.d.ts +68 -68
  304. package/lib/alert/alert.module.d.ts +11 -11
  305. package/lib/alert/index.d.ts +1 -1
  306. package/lib/alert/public_api.d.ts +4 -4
  307. package/lib/avatar/avatar.component.d.ts +40 -40
  308. package/lib/avatar/avatar.module.d.ts +8 -8
  309. package/lib/avatar/index.d.ts +1 -1
  310. package/lib/avatar/public_api.d.ts +2 -2
  311. package/lib/backdrop/backdrop.service.d.ts +16 -16
  312. package/lib/badge/badge.component.d.ts +32 -32
  313. package/lib/badge/badge.module.d.ts +8 -8
  314. package/lib/badge/index.d.ts +1 -1
  315. package/lib/badge/public_api.d.ts +2 -2
  316. package/lib/breadcrumb/breadcrumb/breadcrumb.component.d.ts +21 -21
  317. package/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.d.ts +28 -28
  318. package/lib/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +9 -9
  319. package/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.d.ts +21 -21
  320. package/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.d.ts +14 -14
  321. package/lib/breadcrumb/breadcrumb.module.d.ts +12 -12
  322. package/lib/breadcrumb/index.d.ts +1 -1
  323. package/lib/breadcrumb/public_api.d.ts +6 -6
  324. package/lib/button/button-close.directive.d.ts +16 -16
  325. package/lib/button/button.directive.d.ts +54 -54
  326. package/lib/button/button.module.d.ts +9 -9
  327. package/lib/button/index.d.ts +1 -1
  328. package/lib/button/public_api.d.ts +3 -3
  329. package/lib/button-group/button-group/button-group.component.d.ts +23 -23
  330. package/lib/button-group/button-group.module.d.ts +9 -9
  331. package/lib/button-group/button-toolbar/button-toolbar.component.d.ts +13 -13
  332. package/lib/button-group/index.d.ts +1 -1
  333. package/lib/button-group/public_api.d.ts +3 -3
  334. package/lib/callout/callout.component.d.ts +13 -13
  335. package/lib/callout/callout.module.d.ts +8 -8
  336. package/lib/callout/index.d.ts +1 -1
  337. package/lib/callout/public_api.d.ts +2 -2
  338. package/lib/card/card-body.component.d.ts +6 -6
  339. package/lib/card/card-footer.component.d.ts +6 -6
  340. package/lib/card/card-group.component.d.ts +6 -6
  341. package/lib/card/card-header-actions.component.d.ts +6 -6
  342. package/lib/card/card-header.component.d.ts +6 -6
  343. package/lib/card/card-img-overlay/card-img-overlay.component.d.ts +6 -6
  344. package/lib/card/card-img.directive.d.ts +11 -11
  345. package/lib/card/card-link.directive.d.ts +6 -6
  346. package/lib/card/card-subtitle.directive.d.ts +6 -6
  347. package/lib/card/card-text.directive.d.ts +6 -6
  348. package/lib/card/card-title.directive.d.ts +6 -6
  349. package/lib/card/card.component.d.ts +18 -18
  350. package/lib/card/card.module.d.ts +19 -19
  351. package/lib/card/index.d.ts +1 -1
  352. package/lib/card/public_api.d.ts +13 -13
  353. package/lib/carousel/carousel/carousel.component.d.ts +92 -92
  354. package/lib/carousel/carousel-caption/carousel-caption.component.d.ts +7 -7
  355. package/lib/carousel/carousel-control/carousel-control.component.d.ts +31 -31
  356. package/lib/carousel/carousel-indicators/carousel-indicators.component.d.ts +18 -18
  357. package/lib/carousel/carousel-inner/carousel-inner.component.d.ts +21 -21
  358. package/lib/carousel/carousel-item/carousel-item.component.d.ts +30 -30
  359. package/lib/carousel/carousel-state.d.ts +16 -16
  360. package/lib/carousel/carousel-state.type.d.ts +15 -15
  361. package/lib/carousel/carousel.animation.d.ts +4 -4
  362. package/lib/carousel/carousel.config.d.ts +10 -10
  363. package/lib/carousel/carousel.module.d.ts +15 -15
  364. package/lib/carousel/carousel.service.d.ts +14 -14
  365. package/lib/carousel/index.d.ts +1 -1
  366. package/lib/carousel/public_api.d.ts +8 -8
  367. package/lib/collapse/collapse.animations.d.ts +4 -4
  368. package/lib/collapse/collapse.directive.d.ts +65 -65
  369. package/lib/collapse/collapse.module.d.ts +10 -10
  370. package/lib/collapse/index.d.ts +1 -1
  371. package/lib/collapse/public_api.d.ts +2 -2
  372. package/lib/coreui.types.d.ts +46 -46
  373. package/lib/dropdown/dropdown/dropdown.component.d.ts +136 -135
  374. package/lib/dropdown/dropdown-close/dropdown-close.directive.d.ts +26 -26
  375. package/lib/dropdown/dropdown-divider/dropdown-divider.directive.d.ts +7 -7
  376. package/lib/dropdown/dropdown-header/dropdown-header.directive.d.ts +7 -7
  377. package/lib/dropdown/dropdown-item/dropdown-item-plain.directive.d.ts +7 -7
  378. package/lib/dropdown/dropdown-item/dropdown-item.directive.d.ts +36 -36
  379. package/lib/dropdown/dropdown-menu/dropdown-menu.directive.d.ts +36 -36
  380. package/lib/dropdown/dropdown.module.d.ts +14 -14
  381. package/lib/dropdown/dropdown.service.d.ts +13 -13
  382. package/lib/dropdown/index.d.ts +1 -1
  383. package/lib/dropdown/public_api.d.ts +9 -9
  384. package/lib/footer/footer.component.d.ts +18 -18
  385. package/lib/footer/footer.module.d.ts +8 -8
  386. package/lib/footer/index.d.ts +1 -1
  387. package/lib/footer/public_api.d.ts +2 -2
  388. package/lib/form/form/form.directive.d.ts +17 -17
  389. package/lib/form/form-check/form-check-input.directive.d.ts +31 -31
  390. package/lib/form/form-check/form-check-label.directive.d.ts +6 -6
  391. package/lib/form/form-check/form-check.component.d.ts +36 -36
  392. package/lib/form/form-control/form-control.directive.d.ts +34 -34
  393. package/lib/form/form-feedback/form-feedback.component.d.ts +18 -18
  394. package/lib/form/form-floating/form-floating.directive.d.ts +16 -16
  395. package/lib/form/form-label/form-label.directive.d.ts +16 -16
  396. package/lib/form/form-select/form-select.directive.d.ts +16 -16
  397. package/lib/form/form-text/form-text.directive.d.ts +7 -7
  398. package/lib/form/form.module.d.ts +19 -19
  399. package/lib/form/index.d.ts +1 -1
  400. package/lib/form/input-group/input-group.component.d.ts +11 -11
  401. package/lib/form/input-group-text/input-group-text.directive.d.ts +7 -7
  402. package/lib/form/public_api.d.ts +13 -13
  403. package/lib/grid/col.component.d.ts +6 -6
  404. package/lib/grid/col.directive.d.ts +75 -75
  405. package/lib/grid/col.type.d.ts +11 -11
  406. package/lib/grid/container.component.d.ts +20 -20
  407. package/lib/grid/container.type.d.ts +5 -5
  408. package/lib/grid/grid.module.d.ts +13 -13
  409. package/lib/grid/gutter.directive.d.ts +13 -13
  410. package/lib/grid/gutter.type.d.ts +13 -13
  411. package/lib/grid/index.d.ts +1 -1
  412. package/lib/grid/public_api.d.ts +7 -7
  413. package/lib/grid/row.component.d.ts +6 -6
  414. package/lib/grid/row.directive.d.ts +37 -37
  415. package/lib/grid/row.type.d.ts +9 -9
  416. package/lib/header/header/header.component.d.ts +25 -25
  417. package/lib/header/header-brand/header-brand.component.d.ts +12 -12
  418. package/lib/header/header-divider/header-divider.component.d.ts +6 -6
  419. package/lib/header/header-nav/header-nav.component.d.ts +12 -12
  420. package/lib/header/header-text/header-text.component.d.ts +6 -6
  421. package/lib/header/header-toggler/header-toggler.directive.d.ts +25 -25
  422. package/lib/header/header.module.d.ts +13 -13
  423. package/lib/header/index.d.ts +1 -1
  424. package/lib/header/public_api.d.ts +7 -7
  425. package/lib/image/img.directive.d.ts +42 -42
  426. package/lib/image/img.module.d.ts +8 -8
  427. package/lib/image/index.d.ts +1 -1
  428. package/lib/image/public_api.d.ts +2 -2
  429. package/lib/list-group/index.d.ts +1 -1
  430. package/lib/list-group/list-group-item.directive.d.ts +33 -33
  431. package/lib/list-group/list-group.directive.d.ts +21 -21
  432. package/lib/list-group/list-group.module.d.ts +9 -9
  433. package/lib/list-group/public_api.d.ts +3 -3
  434. package/lib/modal/index.d.ts +1 -1
  435. package/lib/modal/modal/modal.component.d.ts +104 -104
  436. package/lib/modal/modal-body/modal-body.component.d.ts +6 -6
  437. package/lib/modal/modal-content/modal-content.component.d.ts +7 -7
  438. package/lib/modal/modal-dialog/modal-dialog.component.d.ts +25 -25
  439. package/lib/modal/modal-dismiss/modal-toggle.directive.d.ts +13 -13
  440. package/lib/modal/modal-footer/modal-footer.component.d.ts +6 -6
  441. package/lib/modal/modal-header/modal-header.component.d.ts +6 -6
  442. package/lib/modal/modal-title/modal-title.directive.d.ts +6 -6
  443. package/lib/modal/modal.module.d.ts +16 -16
  444. package/lib/modal/modal.service.d.ts +15 -15
  445. package/lib/modal/public_api.d.ts +10 -10
  446. package/lib/nav/index.d.ts +1 -1
  447. package/lib/nav/nav-item.component.d.ts +6 -6
  448. package/lib/nav/nav-link.directive.d.ts +34 -34
  449. package/lib/nav/nav.component.d.ts +16 -16
  450. package/lib/nav/nav.module.d.ts +10 -10
  451. package/lib/nav/public_api.d.ts +4 -4
  452. package/lib/navbar/index.d.ts +1 -1
  453. package/lib/navbar/navbar-brand/navbar-brand.directive.d.ts +7 -7
  454. package/lib/navbar/navbar-nav/navbar-nav.component.d.ts +15 -15
  455. package/lib/navbar/navbar-text/navbar-text.component.d.ts +6 -6
  456. package/lib/navbar/navbar-toggler/navbar-toggler.directive.d.ts +33 -33
  457. package/lib/navbar/navbar.component.d.ts +39 -39
  458. package/lib/navbar/navbar.module.d.ts +13 -13
  459. package/lib/navbar/public_api.d.ts +6 -6
  460. package/lib/offcanvas/index.d.ts +1 -1
  461. package/lib/offcanvas/offcanvas/offcanvas.component.d.ts +82 -82
  462. package/lib/offcanvas/offcanvas-body/offcanvas-body.component.d.ts +6 -6
  463. package/lib/offcanvas/offcanvas-header/offcanvas-header.component.d.ts +6 -6
  464. package/lib/offcanvas/offcanvas-title/offcanvas-title.directive.d.ts +6 -6
  465. package/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.d.ts +14 -14
  466. package/lib/offcanvas/offcanvas.module.d.ts +13 -13
  467. package/lib/offcanvas/offcanvas.service.d.ts +15 -15
  468. package/lib/offcanvas/public_api.d.ts +7 -7
  469. package/lib/pagination/index.d.ts +1 -1
  470. package/lib/pagination/page-item/page-item.component.d.ts +6 -6
  471. package/lib/pagination/page-item/page-item.directive.d.ts +24 -24
  472. package/lib/pagination/page-link/page-link.directive.d.ts +6 -6
  473. package/lib/pagination/pagination/pagination.component.d.ts +22 -22
  474. package/lib/pagination/pagination.module.d.ts +11 -11
  475. package/lib/pagination/public_api.d.ts +5 -5
  476. package/lib/placeholder/index.d.ts +1 -1
  477. package/lib/placeholder/placeholder-animation.directive.d.ts +18 -18
  478. package/lib/placeholder/placeholder.directive.d.ts +22 -22
  479. package/lib/placeholder/placeholder.module.d.ts +9 -9
  480. package/lib/placeholder/public_api.d.ts +3 -3
  481. package/lib/popover/index.d.ts +1 -1
  482. package/lib/popover/popover/popover.component.d.ts +30 -30
  483. package/lib/popover/popover.directive.d.ts +58 -58
  484. package/lib/popover/popover.module.d.ts +9 -9
  485. package/lib/popover/public_api.d.ts +3 -3
  486. package/lib/progress/index.d.ts +1 -1
  487. package/lib/progress/progress-bar.component.d.ts +52 -52
  488. package/lib/progress/progress-bar.d.ts +10 -10
  489. package/lib/progress/progress.component.d.ts +32 -32
  490. package/lib/progress/progress.module.d.ts +9 -9
  491. package/lib/progress/public_api.d.ts +4 -4
  492. package/lib/services/class-toggle.service.d.ts +11 -11
  493. package/lib/services/index.d.ts +1 -1
  494. package/lib/services/intersection.service.d.ts +22 -22
  495. package/lib/services/listeners.service.d.ts +19 -19
  496. package/lib/services/public_api.d.ts +2 -2
  497. package/lib/shared/html-attr.directive.d.ts +16 -16
  498. package/lib/shared/index.d.ts +1 -1
  499. package/lib/shared/public_api.d.ts +3 -3
  500. package/lib/shared/shared.module.d.ts +11 -11
  501. package/lib/shared/template-id.directive.d.ts +9 -9
  502. package/lib/sidebar/index.d.ts +1 -1
  503. package/lib/sidebar/public_api.d.ts +9 -9
  504. package/lib/sidebar/sidebar/sidebar.component.d.ts +85 -80
  505. package/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.d.ts +16 -16
  506. package/lib/sidebar/sidebar-brand/sidebar-brand.component.d.ts +12 -12
  507. package/lib/sidebar/sidebar-footer/sidebar-footer.component.d.ts +7 -7
  508. package/lib/sidebar/sidebar-header/sidebar-header.component.d.ts +7 -7
  509. package/lib/sidebar/sidebar-nav/index.d.ts +1 -1
  510. package/lib/sidebar/sidebar-nav/public_api.d.ts +12 -12
  511. package/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.d.ts +7 -7
  512. package/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.d.ts +7 -7
  513. package/lib/sidebar/sidebar-nav/sidebar-nav-group.service.d.ts +14 -14
  514. package/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.d.ts +7 -7
  515. package/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.d.ts +10 -10
  516. package/lib/sidebar/sidebar-nav/sidebar-nav-label.component.d.ts +18 -18
  517. package/lib/sidebar/sidebar-nav/sidebar-nav-link.component.d.ts +34 -34
  518. package/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.d.ts +7 -7
  519. package/lib/sidebar/sidebar-nav/sidebar-nav-title.component.d.ts +15 -15
  520. package/lib/sidebar/sidebar-nav/sidebar-nav.component.d.ts +59 -59
  521. package/lib/sidebar/sidebar-nav/sidebar-nav.d.ts +53 -53
  522. package/lib/sidebar/sidebar-nav/sidebar-nav.service.d.ts +20 -20
  523. package/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.d.ts +25 -25
  524. package/lib/sidebar/sidebar-toggler/sidebar-toggler.component.d.ts +7 -7
  525. package/lib/sidebar/sidebar.module.d.ts +25 -25
  526. package/lib/sidebar/sidebar.service.d.ts +19 -19
  527. package/lib/spinner/index.d.ts +1 -1
  528. package/lib/spinner/public_api.d.ts +2 -2
  529. package/lib/spinner/spinner.component.d.ts +31 -31
  530. package/lib/spinner/spinner.module.d.ts +9 -9
  531. package/lib/table/index.d.ts +1 -1
  532. package/lib/table/public_api.d.ts +4 -4
  533. package/lib/table/table-active.directive.d.ts +16 -16
  534. package/lib/table/table-color.directive.d.ts +12 -12
  535. package/lib/table/table.directive.d.ts +89 -89
  536. package/lib/table/table.module.d.ts +10 -10
  537. package/lib/tabs/index.d.ts +1 -1
  538. package/lib/tabs/public_api.d.ts +5 -5
  539. package/lib/tabs/tab-content/tab-content.component.d.ts +33 -33
  540. package/lib/tabs/tab-content-ref.directive.d.ts +50 -50
  541. package/lib/tabs/tab-pane/tab-pane.component.d.ts +26 -26
  542. package/lib/tabs/tab.service.d.ts +14 -14
  543. package/lib/tabs/tabs.module.d.ts +10 -10
  544. package/lib/toast/index.d.ts +1 -1
  545. package/lib/toast/public_api.d.ts +8 -8
  546. package/lib/toast/toast/toast.component.d.ts +84 -84
  547. package/lib/toast/toast-body/toast-body.component.d.ts +9 -9
  548. package/lib/toast/toast-close.directive.d.ts +10 -10
  549. package/lib/toast/toast-header/toast-header.component.d.ts +14 -14
  550. package/lib/toast/toast.module.d.ts +14 -14
  551. package/lib/toast/toaster/toaster-host.directive.d.ts +8 -8
  552. package/lib/toast/toaster/toaster.component.d.ts +55 -55
  553. package/lib/toast/toaster/toaster.service.d.ts +16 -16
  554. package/lib/tooltip/index.d.ts +1 -1
  555. package/lib/tooltip/public_api.d.ts +3 -3
  556. package/lib/tooltip/tooltip/tooltip.component.d.ts +30 -30
  557. package/lib/tooltip/tooltip.directive.d.ts +58 -58
  558. package/lib/tooltip/tooltip.module.d.ts +9 -9
  559. package/lib/utilities/align.directive.d.ts +12 -12
  560. package/lib/utilities/bg-color.directive.d.ts +17 -17
  561. package/lib/utilities/border.directive.d.ts +12 -12
  562. package/lib/utilities/border.type.d.ts +15 -15
  563. package/lib/utilities/index.d.ts +1 -1
  564. package/lib/utilities/public_api.d.ts +6 -6
  565. package/lib/utilities/rounded.directive.d.ts +12 -12
  566. package/lib/utilities/rounded.type.d.ts +12 -12
  567. package/lib/utilities/text-color.directive.d.ts +13 -13
  568. package/lib/utilities/utilities.module.d.ts +12 -12
  569. package/lib/widget/index.d.ts +1 -1
  570. package/lib/widget/public_api.d.ts +7 -7
  571. package/lib/widget/widget-stat-a/widget-stat-a.component.d.ts +37 -37
  572. package/lib/widget/widget-stat-b/widget-stat-b.component.d.ts +47 -47
  573. package/lib/widget/widget-stat-c/widget-stat-c.component.d.ts +58 -58
  574. package/lib/widget/widget-stat-d/widget-stat-d.component.d.ts +31 -31
  575. package/lib/widget/widget-stat-e/widget-stat-e.component.d.ts +24 -24
  576. package/lib/widget/widget-stat-f/widget-stat-f.component.d.ts +77 -77
  577. package/lib/widget/widget.module.d.ts +15 -15
  578. package/package.json +1 -1
  579. package/public-api.d.ts +37 -37
@@ -1,28 +1,28 @@
1
- import { Directive, HostListener, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "./toaster/toaster.service";
4
- export class ToastCloseDirective {
5
- constructor(toasterService) {
6
- this.toasterService = toasterService;
7
- }
8
- toggleOpen($event) {
9
- $event.preventDefault();
10
- this.toasterService.setState({ show: false, toast: this.toast });
11
- }
12
- }
13
- ToastCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastCloseDirective, deps: [{ token: i1.ToasterService }], target: i0.ɵɵFactoryTarget.Directive });
14
- ToastCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ToastCloseDirective, selector: "[cToastClose]", inputs: { toast: ["cToastClose", "toast"] }, host: { listeners: { "click": "toggleOpen($event)" } }, exportAs: ["cToastClose"], ngImport: i0 });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastCloseDirective, decorators: [{
16
- type: Directive,
17
- args: [{
18
- selector: '[cToastClose]',
19
- exportAs: 'cToastClose'
20
- }]
21
- }], ctorParameters: function () { return [{ type: i1.ToasterService }]; }, propDecorators: { toast: [{
22
- type: Input,
23
- args: ['cToastClose']
24
- }], toggleOpen: [{
25
- type: HostListener,
26
- args: ['click', ['$event']]
27
- }] } });
1
+ import { Directive, HostListener, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./toaster/toaster.service";
4
+ export class ToastCloseDirective {
5
+ constructor(toasterService) {
6
+ this.toasterService = toasterService;
7
+ }
8
+ toggleOpen($event) {
9
+ $event.preventDefault();
10
+ this.toasterService.setState({ show: false, toast: this.toast });
11
+ }
12
+ }
13
+ ToastCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastCloseDirective, deps: [{ token: i1.ToasterService }], target: i0.ɵɵFactoryTarget.Directive });
14
+ ToastCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ToastCloseDirective, selector: "[cToastClose]", inputs: { toast: ["cToastClose", "toast"] }, host: { listeners: { "click": "toggleOpen($event)" } }, exportAs: ["cToastClose"], ngImport: i0 });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastCloseDirective, decorators: [{
16
+ type: Directive,
17
+ args: [{
18
+ selector: '[cToastClose]',
19
+ exportAs: 'cToastClose'
20
+ }]
21
+ }], ctorParameters: function () { return [{ type: i1.ToasterService }]; }, propDecorators: { toast: [{
22
+ type: Input,
23
+ args: ['cToastClose']
24
+ }], toggleOpen: [{
25
+ type: HostListener,
26
+ args: ['click', ['$event']]
27
+ }] } });
28
28
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtY2xvc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90b2FzdC90b2FzdC1jbG9zZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPL0QsTUFBTSxPQUFPLG1CQUFtQjtJQUk5QixZQUFvQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFBSSxDQUFDO0lBR3ZELFVBQVUsQ0FBQyxNQUFXO1FBQ3BCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7O2lIQVZVLG1CQUFtQjtxR0FBbkIsbUJBQW1COzRGQUFuQixtQkFBbUI7a0JBSi9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSxhQUFhO2lCQUN4QjtxR0FHdUIsS0FBSztzQkFBMUIsS0FBSzt1QkFBQyxhQUFhO2dCQUtwQixVQUFVO3NCQURULFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb2FzdGVyU2VydmljZSB9IGZyb20gJy4vdG9hc3Rlci90b2FzdGVyLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbY1RvYXN0Q2xvc2VdJyxcbiAgZXhwb3J0QXM6ICdjVG9hc3RDbG9zZSdcbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RDbG9zZURpcmVjdGl2ZSB7XG5cbiAgQElucHV0KCdjVG9hc3RDbG9zZScpIHRvYXN0OiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0b2FzdGVyU2VydmljZTogVG9hc3RlclNlcnZpY2UpIHsgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgdG9nZ2xlT3BlbigkZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMudG9hc3RlclNlcnZpY2Uuc2V0U3RhdGUoeyBzaG93OiBmYWxzZSwgdG9hc3Q6IHRoaXMudG9hc3QgfSk7XG4gIH1cblxufVxuIl19
@@ -1,31 +1,31 @@
1
- import { Component, HostBinding, Input, Optional } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../toast/toast.component";
4
- import * as i2 from "@angular/common";
5
- import * as i3 from "../../button/button-close.directive";
6
- import * as i4 from "../toast-close.directive";
7
- export class ToastHeaderComponent {
8
- constructor(toast) {
9
- this.toast = toast;
10
- /**
11
- * Add close button to a toast header
12
- * @type boolean
13
- */
14
- this.closeButton = true;
15
- this.toastHeaderClass = true;
16
- }
17
- }
18
- ToastHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastHeaderComponent, deps: [{ token: i1.ToastComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
19
- ToastHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ToastHeaderComponent, selector: "c-toast-header", inputs: { closeButton: "closeButton" }, host: { properties: { "class.toast-header": "this.toastHeaderClass" } }, exportAs: ["cToastHeader"], ngImport: i0, template: "<ng-container>\r\n <ng-content></ng-content>\r\n <button *ngIf=\"closeButton\" [cToastClose]=\"toast\" [style]=\"{outline: 0}\" aria-label=\"close\" cButtonClose class=\"ms-auto\"></button>\r\n</ng-container>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ButtonCloseDirective, selector: "[cButtonClose]", inputs: ["white"] }, { kind: "directive", type: i4.ToastCloseDirective, selector: "[cToastClose]", inputs: ["cToastClose"], exportAs: ["cToastClose"] }] });
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastHeaderComponent, decorators: [{
21
- type: Component,
22
- args: [{ selector: 'c-toast-header', exportAs: 'cToastHeader', template: "<ng-container>\r\n <ng-content></ng-content>\r\n <button *ngIf=\"closeButton\" [cToastClose]=\"toast\" [style]=\"{outline: 0}\" aria-label=\"close\" cButtonClose class=\"ms-auto\"></button>\r\n</ng-container>\r\n" }]
23
- }], ctorParameters: function () { return [{ type: i1.ToastComponent, decorators: [{
24
- type: Optional
25
- }] }]; }, propDecorators: { closeButton: [{
26
- type: Input
27
- }], toastHeaderClass: [{
28
- type: HostBinding,
29
- args: ['class.toast-header']
30
- }] } });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvdG9hc3QvdG9hc3QtaGVhZGVyL3RvYXN0LWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0LWhlYWRlci90b2FzdC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBU3hFLE1BQU0sT0FBTyxvQkFBb0I7SUFVL0IsWUFDcUIsS0FBc0I7UUFBdEIsVUFBSyxHQUFMLEtBQUssQ0FBaUI7UUFUM0M7OztXQUdHO1FBQ00sZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFFTyxxQkFBZ0IsR0FBRyxJQUFJLENBQUM7SUFJdkQsQ0FBQzs7a0hBWk0sb0JBQW9CO3NHQUFwQixvQkFBb0IsbU1DVGpDLHdOQUlBOzRGREthLG9CQUFvQjtrQkFOaEMsU0FBUzsrQkFDRSxnQkFBZ0IsWUFHaEIsY0FBYzs7MEJBYXJCLFFBQVE7NENBTEYsV0FBVztzQkFBbkIsS0FBSztnQkFFNkIsZ0JBQWdCO3NCQUFsRCxXQUFXO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9hc3RDb21wb25lbnQgfSBmcm9tICcuLi90b2FzdC90b2FzdC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXRvYXN0LWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2FzdC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b2FzdC1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdjVG9hc3RIZWFkZXInXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0SGVhZGVyQ29tcG9uZW50IHtcblxuICAvKipcbiAgICogQWRkIGNsb3NlIGJ1dHRvbiB0byBhIHRvYXN0IGhlYWRlclxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBASW5wdXQoKSBjbG9zZUJ1dHRvbiA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50b2FzdC1oZWFkZXInKSB0b2FzdEhlYWRlckNsYXNzID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgdG9hc3Q/OiBUb2FzdENvbXBvbmVudFxuICApIHsgfVxuXG59XG4iLCI8bmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8YnV0dG9uICpuZ0lmPVwiY2xvc2VCdXR0b25cIiBbY1RvYXN0Q2xvc2VdPVwidG9hc3RcIiBbc3R5bGVdPVwie291dGxpbmU6IDB9XCIgYXJpYS1sYWJlbD1cImNsb3NlXCIgY0J1dHRvbkNsb3NlIGNsYXNzPVwibXMtYXV0b1wiPjwvYnV0dG9uPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
1
+ import { Component, HostBinding, Input, Optional } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../toast/toast.component";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "../../button/button-close.directive";
6
+ import * as i4 from "../toast-close.directive";
7
+ export class ToastHeaderComponent {
8
+ constructor(toast) {
9
+ this.toast = toast;
10
+ /**
11
+ * Add close button to a toast header
12
+ * @type boolean
13
+ */
14
+ this.closeButton = true;
15
+ this.toastHeaderClass = true;
16
+ }
17
+ }
18
+ ToastHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastHeaderComponent, deps: [{ token: i1.ToastComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
19
+ ToastHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ToastHeaderComponent, selector: "c-toast-header", inputs: { closeButton: "closeButton" }, host: { properties: { "class.toast-header": "this.toastHeaderClass" } }, exportAs: ["cToastHeader"], ngImport: i0, template: "<ng-container>\n <ng-content></ng-content>\n <button *ngIf=\"closeButton\" [cToastClose]=\"toast\" [style]=\"{outline: 0}\" aria-label=\"close\" cButtonClose class=\"ms-auto\"></button>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ButtonCloseDirective, selector: "[cButtonClose]", inputs: ["white"] }, { kind: "directive", type: i4.ToastCloseDirective, selector: "[cToastClose]", inputs: ["cToastClose"], exportAs: ["cToastClose"] }] });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastHeaderComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'c-toast-header', exportAs: 'cToastHeader', template: "<ng-container>\n <ng-content></ng-content>\n <button *ngIf=\"closeButton\" [cToastClose]=\"toast\" [style]=\"{outline: 0}\" aria-label=\"close\" cButtonClose class=\"ms-auto\"></button>\n</ng-container>\n" }]
23
+ }], ctorParameters: function () { return [{ type: i1.ToastComponent, decorators: [{
24
+ type: Optional
25
+ }] }]; }, propDecorators: { closeButton: [{
26
+ type: Input
27
+ }], toastHeaderClass: [{
28
+ type: HostBinding,
29
+ args: ['class.toast-header']
30
+ }] } });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvdG9hc3QvdG9hc3QtaGVhZGVyL3RvYXN0LWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0LWhlYWRlci90b2FzdC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBU3hFLE1BQU0sT0FBTyxvQkFBb0I7SUFVL0IsWUFDcUIsS0FBc0I7UUFBdEIsVUFBSyxHQUFMLEtBQUssQ0FBaUI7UUFUM0M7OztXQUdHO1FBQ00sZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFFTyxxQkFBZ0IsR0FBRyxJQUFJLENBQUM7SUFJdkQsQ0FBQzs7a0hBWk0sb0JBQW9CO3NHQUFwQixvQkFBb0IsbU1DVGpDLGdOQUlBOzRGREthLG9CQUFvQjtrQkFOaEMsU0FBUzsrQkFDRSxnQkFBZ0IsWUFHaEIsY0FBYzs7MEJBYXJCLFFBQVE7NENBTEYsV0FBVztzQkFBbkIsS0FBSztnQkFFNkIsZ0JBQWdCO3NCQUFsRCxXQUFXO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9hc3RDb21wb25lbnQgfSBmcm9tICcuLi90b2FzdC90b2FzdC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXRvYXN0LWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2FzdC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b2FzdC1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdjVG9hc3RIZWFkZXInXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0SGVhZGVyQ29tcG9uZW50IHtcblxuICAvKipcbiAgICogQWRkIGNsb3NlIGJ1dHRvbiB0byBhIHRvYXN0IGhlYWRlclxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBASW5wdXQoKSBjbG9zZUJ1dHRvbiA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50b2FzdC1oZWFkZXInKSB0b2FzdEhlYWRlckNsYXNzID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgdG9hc3Q/OiBUb2FzdENvbXBvbmVudFxuICApIHsgfVxuXG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDxidXR0b24gKm5nSWY9XCJjbG9zZUJ1dHRvblwiIFtjVG9hc3RDbG9zZV09XCJ0b2FzdFwiIFtzdHlsZV09XCJ7b3V0bGluZTogMH1cIiBhcmlhLWxhYmVsPVwiY2xvc2VcIiBjQnV0dG9uQ2xvc2UgY2xhc3M9XCJtcy1hdXRvXCI+PC9idXR0b24+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,50 +1,50 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { ButtonModule } from '../button';
4
- import { ToastComponent } from './toast/toast.component';
5
- import { ToastHeaderComponent } from './toast-header/toast-header.component';
6
- import { ToastBodyComponent } from './toast-body/toast-body.component';
7
- import { ToasterComponent } from './toaster/toaster.component';
8
- import { ToasterService } from './toaster/toaster.service';
9
- import { ToasterHostDirective } from './toaster/toaster-host.directive';
10
- import { ToastCloseDirective } from './toast-close.directive';
11
- import * as i0 from "@angular/core";
12
- export class ToastModule {
13
- }
14
- ToastModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
- ToastModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ToastModule, declarations: [ToastComponent,
16
- ToastHeaderComponent,
17
- ToastBodyComponent,
18
- ToasterComponent,
19
- ToasterHostDirective,
20
- ToastCloseDirective], imports: [CommonModule, ButtonModule], exports: [ToastComponent,
21
- ToastHeaderComponent,
22
- ToastBodyComponent,
23
- ToasterComponent,
24
- ToasterHostDirective,
25
- ToastCloseDirective] });
26
- ToastModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastModule, providers: [ToasterService], imports: [CommonModule, ButtonModule] });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastModule, decorators: [{
28
- type: NgModule,
29
- args: [{
30
- declarations: [
31
- ToastComponent,
32
- ToastHeaderComponent,
33
- ToastBodyComponent,
34
- ToasterComponent,
35
- ToasterHostDirective,
36
- ToastCloseDirective
37
- ],
38
- imports: [CommonModule, ButtonModule],
39
- providers: [ToasterService],
40
- exports: [
41
- ToastComponent,
42
- ToastHeaderComponent,
43
- ToastBodyComponent,
44
- ToasterComponent,
45
- ToasterHostDirective,
46
- ToastCloseDirective
47
- ]
48
- }]
49
- }] });
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ButtonModule } from '../button';
4
+ import { ToastComponent } from './toast/toast.component';
5
+ import { ToastHeaderComponent } from './toast-header/toast-header.component';
6
+ import { ToastBodyComponent } from './toast-body/toast-body.component';
7
+ import { ToasterComponent } from './toaster/toaster.component';
8
+ import { ToasterService } from './toaster/toaster.service';
9
+ import { ToasterHostDirective } from './toaster/toaster-host.directive';
10
+ import { ToastCloseDirective } from './toast-close.directive';
11
+ import * as i0 from "@angular/core";
12
+ export class ToastModule {
13
+ }
14
+ ToastModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ ToastModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ToastModule, declarations: [ToastComponent,
16
+ ToastHeaderComponent,
17
+ ToastBodyComponent,
18
+ ToasterComponent,
19
+ ToasterHostDirective,
20
+ ToastCloseDirective], imports: [CommonModule, ButtonModule], exports: [ToastComponent,
21
+ ToastHeaderComponent,
22
+ ToastBodyComponent,
23
+ ToasterComponent,
24
+ ToasterHostDirective,
25
+ ToastCloseDirective] });
26
+ ToastModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastModule, providers: [ToasterService], imports: [CommonModule, ButtonModule] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToastModule, decorators: [{
28
+ type: NgModule,
29
+ args: [{
30
+ declarations: [
31
+ ToastComponent,
32
+ ToastHeaderComponent,
33
+ ToastBodyComponent,
34
+ ToasterComponent,
35
+ ToasterHostDirective,
36
+ ToastCloseDirective
37
+ ],
38
+ imports: [CommonModule, ButtonModule],
39
+ providers: [ToasterService],
40
+ exports: [
41
+ ToastComponent,
42
+ ToastHeaderComponent,
43
+ ToastBodyComponent,
44
+ ToasterComponent,
45
+ ToasterHostDirective,
46
+ ToastCloseDirective
47
+ ]
48
+ }]
49
+ }] });
50
50
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90b2FzdC90b2FzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQXNCOUQsTUFBTSxPQUFPLFdBQVc7O3lHQUFYLFdBQVc7MEdBQVgsV0FBVyxpQkFsQnBCLGNBQWM7UUFDZCxvQkFBb0I7UUFDcEIsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQixvQkFBb0I7UUFDcEIsbUJBQW1CLGFBRVgsWUFBWSxFQUFFLFlBQVksYUFHbEMsY0FBYztRQUNkLG9CQUFvQjtRQUNwQixrQkFBa0I7UUFDbEIsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtRQUNwQixtQkFBbUI7MEdBR1YsV0FBVyxhQVZYLENBQUMsY0FBYyxDQUFDLFlBRGpCLFlBQVksRUFBRSxZQUFZOzRGQVd6QixXQUFXO2tCQXBCdkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osY0FBYzt3QkFDZCxvQkFBb0I7d0JBQ3BCLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQztvQkFDckMsU0FBUyxFQUFFLENBQUMsY0FBYyxDQUFDO29CQUMzQixPQUFPLEVBQUU7d0JBQ1AsY0FBYzt3QkFDZCxvQkFBb0I7d0JBQ3BCLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uJztcbmltcG9ydCB7IFRvYXN0Q29tcG9uZW50IH0gZnJvbSAnLi90b2FzdC90b2FzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9hc3RIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL3RvYXN0LWhlYWRlci90b2FzdC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRvYXN0Qm9keUNvbXBvbmVudCB9IGZyb20gJy4vdG9hc3QtYm9keS90b2FzdC1ib2R5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb2FzdGVyQ29tcG9uZW50IH0gZnJvbSAnLi90b2FzdGVyL3RvYXN0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnLi90b2FzdGVyL3RvYXN0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVySG9zdERpcmVjdGl2ZSB9IGZyb20gJy4vdG9hc3Rlci90b2FzdGVyLWhvc3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRvYXN0Q2xvc2VEaXJlY3RpdmUgfSBmcm9tICcuL3RvYXN0LWNsb3NlLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFRvYXN0Q29tcG9uZW50LFxuICAgIFRvYXN0SGVhZGVyQ29tcG9uZW50LFxuICAgIFRvYXN0Qm9keUNvbXBvbmVudCxcbiAgICBUb2FzdGVyQ29tcG9uZW50LFxuICAgIFRvYXN0ZXJIb3N0RGlyZWN0aXZlLFxuICAgIFRvYXN0Q2xvc2VEaXJlY3RpdmVcbiAgXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQnV0dG9uTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbVG9hc3RlclNlcnZpY2VdLFxuICBleHBvcnRzOiBbXG4gICAgVG9hc3RDb21wb25lbnQsXG4gICAgVG9hc3RIZWFkZXJDb21wb25lbnQsXG4gICAgVG9hc3RCb2R5Q29tcG9uZW50LFxuICAgIFRvYXN0ZXJDb21wb25lbnQsXG4gICAgVG9hc3Rlckhvc3REaXJlY3RpdmUsXG4gICAgVG9hc3RDbG9zZURpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0TW9kdWxlIHtcbn1cbiJdfQ==
@@ -1,17 +1,17 @@
1
- import { Directive } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ToasterHostDirective {
4
- constructor(viewContainerRef) {
5
- this.viewContainerRef = viewContainerRef;
6
- }
7
- }
8
- ToasterHostDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToasterHostDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
9
- ToasterHostDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ToasterHostDirective, selector: "[cToasterHost]", exportAs: ["cToasterHost"], ngImport: i0 });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToasterHostDirective, decorators: [{
11
- type: Directive,
12
- args: [{
13
- selector: '[cToasterHost]',
14
- exportAs: 'cToasterHost'
15
- }]
16
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; } });
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ToasterHostDirective {
4
+ constructor(viewContainerRef) {
5
+ this.viewContainerRef = viewContainerRef;
6
+ }
7
+ }
8
+ ToasterHostDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToasterHostDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
9
+ ToasterHostDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ToasterHostDirective, selector: "[cToasterHost]", exportAs: ["cToasterHost"], ngImport: i0 });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToasterHostDirective, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: '[cToasterHost]',
14
+ exportAs: 'cToasterHost'
15
+ }]
16
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; } });
17
17
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci1ob3N0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvdG9hc3QvdG9hc3Rlci90b2FzdGVyLWhvc3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQW9CLE1BQU0sZUFBZSxDQUFDOztBQU01RCxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFlBQ1MsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFDdkMsQ0FBQzs7a0hBSk0sb0JBQW9CO3NHQUFwQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUUsY0FBYztpQkFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NUb2FzdGVySG9zdF0nLFxuICBleHBvcnRBczogJ2NUb2FzdGVySG9zdCdcbn0pXG5leHBvcnQgY2xhc3MgVG9hc3Rlckhvc3REaXJlY3RpdmUge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmXG4gICkgeyB9XG59XG4iXX0=
@@ -1,140 +1,140 @@
1
- import { Component, ContentChildren, HostBinding, Input, VERSION, ViewChild, ViewContainerRef } from '@angular/core';
2
- import { ToasterHostDirective } from './toaster-host.directive';
3
- import { ToastComponent } from '../toast/toast.component';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "./toaster.service";
6
- import * as i2 from "./toaster-host.directive";
7
- export var ToasterPlacement;
8
- (function (ToasterPlacement) {
9
- ToasterPlacement["Static"] = "static";
10
- ToasterPlacement["TopStart"] = "top-start";
11
- ToasterPlacement["TopCenter"] = "top-center";
12
- ToasterPlacement["TopEnd"] = "top-end";
13
- ToasterPlacement["MiddleStart"] = "middle-start";
14
- ToasterPlacement["MiddleCenter"] = "middle-center";
15
- ToasterPlacement["MiddleEnd"] = "middle-end";
16
- ToasterPlacement["BottomStart"] = "bottom-start";
17
- ToasterPlacement["BottomCenter"] = "bottom-center";
18
- ToasterPlacement["BottomEnd"] = "bottom-end";
19
- })(ToasterPlacement || (ToasterPlacement = {}));
20
- export class ToasterComponent {
21
- constructor(componentFactoryResolver, hostElement, renderer, toasterService) {
22
- this.componentFactoryResolver = componentFactoryResolver;
23
- this.hostElement = hostElement;
24
- this.renderer = renderer;
25
- this.toasterService = toasterService;
26
- this.placements = Object.values(ToasterPlacement);
27
- this.toastsDynamic = [];
28
- /**
29
- * Toaster placement
30
- * @type TToasterPlacement
31
- */
32
- this.placement = ToasterPlacement.TopEnd;
33
- /**
34
- * Toaster position
35
- * @type (string | 'absolute' | 'fixed' | 'static')
36
- */
37
- this.position = 'absolute';
38
- }
39
- get hostClasses() {
40
- return {
41
- toaster: true,
42
- 'toast-container': true,
43
- [`position-${this.position}`]: !!this.position,
44
- 'top-0': this.placement.includes('top'),
45
- 'top-50': this.placement.includes('middle'),
46
- 'bottom-0': this.placement.includes('bottom'),
47
- 'start-0': this.placement.includes('start'),
48
- 'start-50': this.placement.includes('center'),
49
- 'end-0': this.placement.includes('end'),
50
- 'translate-middle-x': this.placement.includes('center') && !this.placement.includes('middle'),
51
- 'translate-middle-y': this.placement.includes('middle') && !this.placement.includes('center'),
52
- 'translate-middle': this.placement.includes('middle') && this.placement.includes('center'),
53
- };
54
- }
55
- ngOnInit() {
56
- this.stateToasterSubscribe(true);
57
- }
58
- ngOnDestroy() {
59
- this.stateToasterSubscribe(false);
60
- }
61
- ngAfterContentChecked() {
62
- this.toasts = this.contentToasts;
63
- }
64
- addToast(toast, props, options) {
65
- let componentRef;
66
- if (parseInt(VERSION.major) < 13) {
67
- const factory = this.componentFactoryResolver.resolveComponentFactory(toast);
68
- componentRef = this.toasterHost.viewContainerRef.createComponent(factory, options?.index, options?.injector, options?.projectableNodes, options?.ngModuleRef);
69
- }
70
- else {
71
- // @ts-ignore
72
- componentRef = this.toasterHost.viewContainerRef.createComponent(toast, options);
73
- }
74
- this.toastsDynamic.push(componentRef);
75
- const index = this.toastsDynamic.indexOf(componentRef);
76
- for (const [key, value] of Object.entries(props)) {
77
- componentRef.instance[key] = value;
78
- }
79
- componentRef.instance['placement'] = this.placement;
80
- componentRef.instance['dynamic'] = true;
81
- componentRef.instance['index'] = index;
82
- componentRef.instance['visible'] = true;
83
- componentRef.instance['visibleChange'].emit(true);
84
- componentRef.changeDetectorRef?.detectChanges();
85
- return componentRef;
86
- }
87
- removeToast(state) {
88
- this.toastsDynamic?.forEach(item => {
89
- if (state.toast?.dynamic && (item.instance === state.toast)) {
90
- item.instance.visible = false;
91
- item.instance['visibleChange'].emit(false);
92
- setTimeout(() => {
93
- item.destroy();
94
- }, 300);
95
- }
96
- });
97
- this.toasts?.forEach(item => {
98
- if (item.element.nativeElement === state.toast?.hostElement.nativeElement) {
99
- if (!state.toast?.dynamic) {
100
- // @ts-ignore
101
- state.toast.visible = false;
102
- }
103
- }
104
- });
105
- }
106
- stateToasterSubscribe(subscribe = true) {
107
- if (subscribe) {
108
- this.stateToasterSubscription = this.toasterService.toasterState$.subscribe((state) => {
109
- if (state.show === false) {
110
- this.removeToast(state);
111
- }
112
- if (state.show === true && state.toast?.dynamic === undefined) {
113
- }
114
- });
115
- }
116
- else {
117
- this.stateToasterSubscription.unsubscribe();
118
- }
119
- }
120
- }
121
- ToasterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToasterComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.ToasterService }], target: i0.ɵɵFactoryTarget.Component });
122
- ToasterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ToasterComponent, selector: "c-toaster", inputs: { placement: "placement", position: "position" }, host: { properties: { "class": "this.hostClasses" } }, queries: [{ propertyName: "contentToasts", predicate: ToastComponent, read: ViewContainerRef }], viewQueries: [{ propertyName: "toasterHost", first: true, predicate: ToasterHostDirective, descendants: true, static: true }], exportAs: ["cToaster"], ngImport: i0, template: "<ng-template cToasterHost></ng-template>\n<ng-content cToasterHost></ng-content>\n", dependencies: [{ kind: "directive", type: i2.ToasterHostDirective, selector: "[cToasterHost]", exportAs: ["cToasterHost"] }] });
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToasterComponent, decorators: [{
124
- type: Component,
125
- args: [{ selector: 'c-toaster', exportAs: 'cToaster', template: "<ng-template cToasterHost></ng-template>\n<ng-content cToasterHost></ng-content>\n" }]
126
- }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.ToasterService }]; }, propDecorators: { placement: [{
127
- type: Input
128
- }], position: [{
129
- type: Input
130
- }], toasterHost: [{
131
- type: ViewChild,
132
- args: [ToasterHostDirective, { static: true }]
133
- }], contentToasts: [{
134
- type: ContentChildren,
135
- args: [ToastComponent, { read: ViewContainerRef }]
136
- }], hostClasses: [{
137
- type: HostBinding,
138
- args: ['class']
139
- }] } });
140
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUdULGVBQWUsRUFFZixXQUFXLEVBRVgsS0FBSyxFQU1MLE9BQU8sRUFDUCxTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUUxRCxNQUFNLENBQU4sSUFBWSxnQkFXWDtBQVhELFdBQVksZ0JBQWdCO0lBQzFCLHFDQUFpQixDQUFBO0lBQ2pCLDBDQUFzQixDQUFBO0lBQ3RCLDRDQUF3QixDQUFBO0lBQ3hCLHNDQUFrQixDQUFBO0lBQ2xCLGdEQUE0QixDQUFBO0lBQzVCLGtEQUE4QixDQUFBO0lBQzlCLDRDQUF3QixDQUFBO0lBQ3hCLGdEQUE0QixDQUFBO0lBQzVCLGtEQUE4QixDQUFBO0lBQzlCLDRDQUF3QixDQUFBO0FBQzFCLENBQUMsRUFYVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBVzNCO0FBb0JELE1BQU0sT0FBTyxnQkFBZ0I7SUFzQjNCLFlBQ1Usd0JBQWtELEVBQ2xELFdBQXVCLEVBQ3ZCLFFBQW1CLEVBQ25CLGNBQThCO1FBSDlCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixt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QUF2RSxlQUFlO3VCQUFDLGNBQWMsRUFBRSxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBQztnQkFVckQsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyQ29udGVudENoZWNrZWQsXHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICBDb21wb25lbnRSZWYsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgTmdNb2R1bGVSZWYsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBRdWVyeUxpc3QsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIFZFUlNJT04sXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdDb250YWluZXJSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBJVG9hc3RlckFjdGlvbiwgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuL3RvYXN0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFRvYXN0ZXJIb3N0RGlyZWN0aXZlIH0gZnJvbSAnLi90b2FzdGVyLWhvc3QuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVG9hc3RDb21wb25lbnQgfSBmcm9tICcuLi90b2FzdC90b2FzdC5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IGVudW0gVG9hc3RlclBsYWNlbWVudCB7XHJcbiAgU3RhdGljID0gJ3N0YXRpYycsXHJcbiAgVG9wU3RhcnQgPSAndG9wLXN0YXJ0JyxcclxuICBUb3BDZW50ZXIgPSAndG9wLWNlbnRlcicsXHJcbiAgVG9wRW5kID0gJ3RvcC1lbmQnLFxyXG4gIE1pZGRsZVN0YXJ0ID0gJ21pZGRsZS1zdGFydCcsXHJcbiAgTWlkZGxlQ2VudGVyID0gJ21pZGRsZS1jZW50ZXInLFxyXG4gIE1pZGRsZUVuZCA9ICdtaWRkbGUtZW5kJyxcclxuICBCb3R0b21TdGFydCA9ICdib3R0b20tc3RhcnQnLFxyXG4gIEJvdHRvbUNlbnRlciA9ICdib3R0b20tY2VudGVyJyxcclxuICBCb3R0b21FbmQgPSAnYm90dG9tLWVuZCcsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRUb2FzdGVyUGxhY2VtZW50ID1cclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuU3RhdGljXHJcbiAgfCBUb2FzdGVyUGxhY2VtZW50LlRvcFN0YXJ0XHJcbiAgfCBUb2FzdGVyUGxhY2VtZW50LlRvcENlbnRlclxyXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Ub3BFbmRcclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuTWlkZGxlU3RhcnRcclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuTWlkZGxlQ2VudGVyXHJcbiAgfCBUb2FzdGVyUGxhY2VtZW50Lk1pZGRsZUVuZFxyXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Cb3R0b21TdGFydFxyXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Cb3R0b21DZW50ZXJcclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuQm90dG9tRW5kXHJcbiAgfCBzdHJpbmc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2MtdG9hc3RlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RvYXN0ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGV4cG9ydEFzOiAnY1RvYXN0ZXInXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUb2FzdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQsIEFmdGVyQ29udGVudENoZWNrZWQge1xyXG5cclxuICBzdGF0ZVRvYXN0ZXJTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XHJcbiAgcGxhY2VtZW50cyA9IE9iamVjdC52YWx1ZXMoVG9hc3RlclBsYWNlbWVudCk7XHJcbiAgdG9hc3RzITogUXVlcnlMaXN0PFZpZXdDb250YWluZXJSZWY+O1xyXG4gIHRvYXN0c0R5bmFtaWM6IGFueVtdID0gW107XHJcblxyXG4gIC8qKlxyXG4gICAqIFRvYXN0ZXIgcGxhY2VtZW50XHJcbiAgICogQHR5cGUgVFRvYXN0ZXJQbGFjZW1lbnRcclxuICAgKi9cclxuICBASW5wdXQoKSBwbGFjZW1lbnQ6IFRUb2FzdGVyUGxhY2VtZW50ID0gVG9hc3RlclBsYWNlbWVudC5Ub3BFbmQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRvYXN0ZXIgcG9zaXRpb25cclxuICAgKiBAdHlwZSAoc3RyaW5nIHwgJ2Fic29sdXRlJyB8ICdmaXhlZCcgfCAnc3RhdGljJylcclxuICAgKi9cclxuICBASW5wdXQoKSBwb3NpdGlvbjogKHN0cmluZyB8ICdhYnNvbHV0ZScgfCAnZml4ZWQnIHwgJ3N0YXRpYycpID0gJ2Fic29sdXRlJztcclxuXHJcbiAgQFZpZXdDaGlsZChUb2FzdGVySG9zdERpcmVjdGl2ZSwge3N0YXRpYzogdHJ1ZX0pIHRvYXN0ZXJIb3N0ITogVG9hc3Rlckhvc3REaXJlY3RpdmU7XHJcbiAgQENvbnRlbnRDaGlsZHJlbihUb2FzdENvbXBvbmVudCwge3JlYWQ6IFZpZXdDb250YWluZXJSZWZ9KSBjb250ZW50VG9hc3RzITogUXVlcnlMaXN0PFZpZXdDb250YWluZXJSZWY+O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHJpdmF0ZSB0b2FzdGVyU2VydmljZTogVG9hc3RlclNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcclxuICBnZXQgaG9zdENsYXNzZXMoKTogYW55IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHRvYXN0ZXI6IHRydWUsXHJcbiAgICAgICd0b2FzdC1jb250YWluZXInOiB0cnVlLFxyXG4gICAgICBbYHBvc2l0aW9uLSR7dGhpcy5wb3NpdGlvbn1gXTogISF0aGlzLnBvc2l0aW9uLFxyXG4gICAgICAndG9wLTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygndG9wJyksXHJcbiAgICAgICd0b3AtNTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnbWlkZGxlJyksXHJcbiAgICAgICdib3R0b20tMCc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdib3R0b20nKSxcclxuICAgICAgJ3N0YXJ0LTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnc3RhcnQnKSxcclxuICAgICAgJ3N0YXJ0LTUwJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2NlbnRlcicpLFxyXG4gICAgICAnZW5kLTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnZW5kJyksXHJcbiAgICAgICd0cmFuc2xhdGUtbWlkZGxlLXgnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnY2VudGVyJykgJiYgIXRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdtaWRkbGUnKSxcclxuICAgICAgJ3RyYW5zbGF0ZS1taWRkbGUteSc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdtaWRkbGUnKSAmJiAhdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2NlbnRlcicpLFxyXG4gICAgICAndHJhbnNsYXRlLW1pZGRsZSc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdtaWRkbGUnKSAmJiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnY2VudGVyJyksXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0YXRlVG9hc3RlclN1YnNjcmliZSh0cnVlKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdGF0ZVRvYXN0ZXJTdWJzY3JpYmUoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy50b2FzdHMgPSB0aGlzLmNvbnRlbnRUb2FzdHM7XHJcbiAgfVxyXG5cclxuICBhZGRUb2FzdCh0b2FzdDogYW55LCBwcm9wczogYW55LCBvcHRpb25zPzogeyBpbmRleD86IG51bWJlcjsgaW5qZWN0b3I/OiBJbmplY3RvcjsgbmdNb2R1bGVSZWY/OiBOZ01vZHVsZVJlZjx1bmtub3duPjsgcHJvamVjdGFibGVOb2Rlcz86IE5vZGVbXVtdOyB9KTogQ29tcG9uZW50UmVmPGFueT4ge1xyXG4gICAgbGV0IGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT47XHJcbiAgICBpZiAocGFyc2VJbnQoVkVSU0lPTi5tYWpvcikgPCAxMykge1xyXG4gICAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodG9hc3QpO1xyXG4gICAgICBjb21wb25lbnRSZWYgPSB0aGlzLnRvYXN0ZXJIb3N0LnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnksIG9wdGlvbnM/LmluZGV4LCBvcHRpb25zPy5pbmplY3Rvciwgb3B0aW9ucz8ucHJvamVjdGFibGVOb2Rlcywgb3B0aW9ucz8ubmdNb2R1bGVSZWYpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICBjb21wb25lbnRSZWYgPSB0aGlzLnRvYXN0ZXJIb3N0LnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KHRvYXN0LCBvcHRpb25zKTtcclxuICAgIH1cclxuICAgIHRoaXMudG9hc3RzRHluYW1pYy5wdXNoKGNvbXBvbmVudFJlZik7XHJcbiAgICBjb25zdCBpbmRleCA9IHRoaXMudG9hc3RzRHluYW1pYy5pbmRleE9mKGNvbXBvbmVudFJlZik7XHJcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwcm9wcykpIHtcclxuICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlW2tleV0gPSB2YWx1ZTtcclxuICAgIH1cclxuICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVsncGxhY2VtZW50J10gPSB0aGlzLnBsYWNlbWVudDtcclxuICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVsnZHluYW1pYyddID0gdHJ1ZTtcclxuICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVsnaW5kZXgnXSA9IGluZGV4O1xyXG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlWyd2aXNpYmxlJ10gPSB0cnVlO1xyXG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlWyd2aXNpYmxlQ2hhbmdlJ10uZW1pdCh0cnVlKTtcclxuICAgIGNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZj8uZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcclxuICB9XHJcblxyXG4gIHJlbW92ZVRvYXN0KHN0YXRlOiBJVG9hc3RlckFjdGlvbik6IHZvaWQge1xyXG4gICAgdGhpcy50b2FzdHNEeW5hbWljPy5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpZiAoc3RhdGUudG9hc3Q/LmR5bmFtaWMgJiYgKGl0ZW0uaW5zdGFuY2UgPT09IHN0YXRlLnRvYXN0KSkge1xyXG4gICAgICAgIGl0ZW0uaW5zdGFuY2UudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIGl0ZW0uaW5zdGFuY2VbJ3Zpc2libGVDaGFuZ2UnXS5lbWl0KGZhbHNlKTtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIGl0ZW0uZGVzdHJveSgpO1xyXG4gICAgICAgIH0sIDMwMCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMudG9hc3RzPy5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpZiAoaXRlbS5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQgPT09IHN0YXRlLnRvYXN0Py5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgaWYgKCFzdGF0ZS50b2FzdD8uZHluYW1pYykge1xyXG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgc3RhdGUudG9hc3QudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXRlVG9hc3RlclN1YnNjcmliZShzdWJzY3JpYmU6IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XHJcbiAgICBpZiAoc3Vic2NyaWJlKSB7XHJcbiAgICAgIHRoaXMuc3RhdGVUb2FzdGVyU3Vic2NyaXB0aW9uID0gdGhpcy50b2FzdGVyU2VydmljZS50b2FzdGVyU3RhdGUkLnN1YnNjcmliZSgoc3RhdGUpID0+IHtcclxuICAgICAgICBpZiAoc3RhdGUuc2hvdyA9PT0gZmFsc2UpIHtcclxuICAgICAgICAgIHRoaXMucmVtb3ZlVG9hc3Qoc3RhdGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoc3RhdGUuc2hvdyA9PT0gdHJ1ZSAmJiBzdGF0ZS50b2FzdD8uZHluYW1pYyA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc3RhdGVUb2FzdGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZSBjVG9hc3Rlckhvc3Q+PC9uZy10ZW1wbGF0ZT5cbjxuZy1jb250ZW50IGNUb2FzdGVySG9zdD48L25nLWNvbnRlbnQ+XG4iXX0=
1
+ import { Component, ContentChildren, HostBinding, Input, VERSION, ViewChild, ViewContainerRef } from '@angular/core';
2
+ import { ToasterHostDirective } from './toaster-host.directive';
3
+ import { ToastComponent } from '../toast/toast.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./toaster.service";
6
+ import * as i2 from "./toaster-host.directive";
7
+ export var ToasterPlacement;
8
+ (function (ToasterPlacement) {
9
+ ToasterPlacement["Static"] = "static";
10
+ ToasterPlacement["TopStart"] = "top-start";
11
+ ToasterPlacement["TopCenter"] = "top-center";
12
+ ToasterPlacement["TopEnd"] = "top-end";
13
+ ToasterPlacement["MiddleStart"] = "middle-start";
14
+ ToasterPlacement["MiddleCenter"] = "middle-center";
15
+ ToasterPlacement["MiddleEnd"] = "middle-end";
16
+ ToasterPlacement["BottomStart"] = "bottom-start";
17
+ ToasterPlacement["BottomCenter"] = "bottom-center";
18
+ ToasterPlacement["BottomEnd"] = "bottom-end";
19
+ })(ToasterPlacement || (ToasterPlacement = {}));
20
+ export class ToasterComponent {
21
+ constructor(componentFactoryResolver, hostElement, renderer, toasterService) {
22
+ this.componentFactoryResolver = componentFactoryResolver;
23
+ this.hostElement = hostElement;
24
+ this.renderer = renderer;
25
+ this.toasterService = toasterService;
26
+ this.placements = Object.values(ToasterPlacement);
27
+ this.toastsDynamic = [];
28
+ /**
29
+ * Toaster placement
30
+ * @type TToasterPlacement
31
+ */
32
+ this.placement = ToasterPlacement.TopEnd;
33
+ /**
34
+ * Toaster position
35
+ * @type (string | 'absolute' | 'fixed' | 'static')
36
+ */
37
+ this.position = 'absolute';
38
+ }
39
+ get hostClasses() {
40
+ return {
41
+ toaster: true,
42
+ 'toast-container': true,
43
+ [`position-${this.position}`]: !!this.position,
44
+ 'top-0': this.placement.includes('top'),
45
+ 'top-50': this.placement.includes('middle'),
46
+ 'bottom-0': this.placement.includes('bottom'),
47
+ 'start-0': this.placement.includes('start'),
48
+ 'start-50': this.placement.includes('center'),
49
+ 'end-0': this.placement.includes('end'),
50
+ 'translate-middle-x': this.placement.includes('center') && !this.placement.includes('middle'),
51
+ 'translate-middle-y': this.placement.includes('middle') && !this.placement.includes('center'),
52
+ 'translate-middle': this.placement.includes('middle') && this.placement.includes('center'),
53
+ };
54
+ }
55
+ ngOnInit() {
56
+ this.stateToasterSubscribe(true);
57
+ }
58
+ ngOnDestroy() {
59
+ this.stateToasterSubscribe(false);
60
+ }
61
+ ngAfterContentChecked() {
62
+ this.toasts = this.contentToasts;
63
+ }
64
+ addToast(toast, props, options) {
65
+ let componentRef;
66
+ if (parseInt(VERSION.major) < 13) {
67
+ const factory = this.componentFactoryResolver.resolveComponentFactory(toast);
68
+ componentRef = this.toasterHost.viewContainerRef.createComponent(factory, options?.index, options?.injector, options?.projectableNodes, options?.ngModuleRef);
69
+ }
70
+ else {
71
+ // @ts-ignore
72
+ componentRef = this.toasterHost.viewContainerRef.createComponent(toast, options);
73
+ }
74
+ this.toastsDynamic.push(componentRef);
75
+ const index = this.toastsDynamic.indexOf(componentRef);
76
+ for (const [key, value] of Object.entries(props)) {
77
+ componentRef.instance[key] = value;
78
+ }
79
+ componentRef.instance['placement'] = this.placement;
80
+ componentRef.instance['dynamic'] = true;
81
+ componentRef.instance['index'] = index;
82
+ componentRef.instance['visible'] = true;
83
+ componentRef.instance['visibleChange'].emit(true);
84
+ componentRef.changeDetectorRef?.detectChanges();
85
+ return componentRef;
86
+ }
87
+ removeToast(state) {
88
+ this.toastsDynamic?.forEach(item => {
89
+ if (state.toast?.dynamic && (item.instance === state.toast)) {
90
+ item.instance.visible = false;
91
+ item.instance['visibleChange'].emit(false);
92
+ setTimeout(() => {
93
+ item.destroy();
94
+ }, 300);
95
+ }
96
+ });
97
+ this.toasts?.forEach(item => {
98
+ if (item.element.nativeElement === state.toast?.hostElement.nativeElement) {
99
+ if (!state.toast?.dynamic) {
100
+ // @ts-ignore
101
+ state.toast.visible = false;
102
+ }
103
+ }
104
+ });
105
+ }
106
+ stateToasterSubscribe(subscribe = true) {
107
+ if (subscribe) {
108
+ this.stateToasterSubscription = this.toasterService.toasterState$.subscribe((state) => {
109
+ if (state.show === false) {
110
+ this.removeToast(state);
111
+ }
112
+ if (state.show === true && state.toast?.dynamic === undefined) {
113
+ }
114
+ });
115
+ }
116
+ else {
117
+ this.stateToasterSubscription.unsubscribe();
118
+ }
119
+ }
120
+ }
121
+ ToasterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToasterComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.ToasterService }], target: i0.ɵɵFactoryTarget.Component });
122
+ ToasterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ToasterComponent, selector: "c-toaster", inputs: { placement: "placement", position: "position" }, host: { properties: { "class": "this.hostClasses" } }, queries: [{ propertyName: "contentToasts", predicate: ToastComponent, read: ViewContainerRef }], viewQueries: [{ propertyName: "toasterHost", first: true, predicate: ToasterHostDirective, descendants: true, static: true }], exportAs: ["cToaster"], ngImport: i0, template: "<ng-template cToasterHost></ng-template>\n<ng-content cToasterHost></ng-content>\n", dependencies: [{ kind: "directive", type: i2.ToasterHostDirective, selector: "[cToasterHost]", exportAs: ["cToasterHost"] }] });
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToasterComponent, decorators: [{
124
+ type: Component,
125
+ args: [{ selector: 'c-toaster', exportAs: 'cToaster', template: "<ng-template cToasterHost></ng-template>\n<ng-content cToasterHost></ng-content>\n" }]
126
+ }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.ToasterService }]; }, propDecorators: { placement: [{
127
+ type: Input
128
+ }], position: [{
129
+ type: Input
130
+ }], toasterHost: [{
131
+ type: ViewChild,
132
+ args: [ToasterHostDirective, { static: true }]
133
+ }], contentToasts: [{
134
+ type: ContentChildren,
135
+ args: [ToastComponent, { read: ViewContainerRef }]
136
+ }], hostClasses: [{
137
+ type: HostBinding,
138
+ args: ['class']
139
+ }] } });
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUdULGVBQWUsRUFFZixXQUFXLEVBRVgsS0FBSyxFQU1MLE9BQU8sRUFDUCxTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUUxRCxNQUFNLENBQU4sSUFBWSxnQkFXWDtBQVhELFdBQVksZ0JBQWdCO0lBQzFCLHFDQUFpQixDQUFBO0lBQ2pCLDBDQUFzQixDQUFBO0lBQ3RCLDRDQUF3QixDQUFBO0lBQ3hCLHNDQUFrQixDQUFBO0lBQ2xCLGdEQUE0QixDQUFBO0lBQzVCLGtEQUE4QixDQUFBO0lBQzlCLDRDQUF3QixDQUFBO0lBQ3hCLGdEQUE0QixDQUFBO0lBQzVCLGtEQUE4QixDQUFBO0lBQzlCLDRDQUF3QixDQUFBO0FBQzFCLENBQUMsRUFYVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBVzNCO0FBb0JELE1BQU0sT0FBTyxnQkFBZ0I7SUFzQjNCLFlBQ1Usd0JBQWtELEVBQ2xELFdBQXVCLEVBQ3ZCLFFBQW1CLEVBQ25CLGNBQThCO1FBSDlCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixt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QUF2RSxlQUFlO3VCQUFDLGNBQWMsRUFBRSxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBQztnQkFVckQsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRDaGVja2VkLFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgQ29tcG9uZW50UmVmLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE5nTW9kdWxlUmVmLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUXVlcnlMaXN0LFxuICBSZW5kZXJlcjIsXG4gIFZFUlNJT04sXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBJVG9hc3RlckFjdGlvbiwgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuL3RvYXN0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVySG9zdERpcmVjdGl2ZSB9IGZyb20gJy4vdG9hc3Rlci1ob3N0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUb2FzdENvbXBvbmVudCB9IGZyb20gJy4uL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5cbmV4cG9ydCBlbnVtIFRvYXN0ZXJQbGFjZW1lbnQge1xuICBTdGF0aWMgPSAnc3RhdGljJyxcbiAgVG9wU3RhcnQgPSAndG9wLXN0YXJ0JyxcbiAgVG9wQ2VudGVyID0gJ3RvcC1jZW50ZXInLFxuICBUb3BFbmQgPSAndG9wLWVuZCcsXG4gIE1pZGRsZVN0YXJ0ID0gJ21pZGRsZS1zdGFydCcsXG4gIE1pZGRsZUNlbnRlciA9ICdtaWRkbGUtY2VudGVyJyxcbiAgTWlkZGxlRW5kID0gJ21pZGRsZS1lbmQnLFxuICBCb3R0b21TdGFydCA9ICdib3R0b20tc3RhcnQnLFxuICBCb3R0b21DZW50ZXIgPSAnYm90dG9tLWNlbnRlcicsXG4gIEJvdHRvbUVuZCA9ICdib3R0b20tZW5kJyxcbn1cblxuZXhwb3J0IHR5cGUgVFRvYXN0ZXJQbGFjZW1lbnQgPVxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuU3RhdGljXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Ub3BTdGFydFxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuVG9wQ2VudGVyXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Ub3BFbmRcbiAgfCBUb2FzdGVyUGxhY2VtZW50Lk1pZGRsZVN0YXJ0XG4gIHwgVG9hc3RlclBsYWNlbWVudC5NaWRkbGVDZW50ZXJcbiAgfCBUb2FzdGVyUGxhY2VtZW50Lk1pZGRsZUVuZFxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuQm90dG9tU3RhcnRcbiAgfCBUb2FzdGVyUGxhY2VtZW50LkJvdHRvbUNlbnRlclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuQm90dG9tRW5kXG4gIHwgc3RyaW5nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXRvYXN0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9hc3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIGV4cG9ydEFzOiAnY1RvYXN0ZXInXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCwgQWZ0ZXJDb250ZW50Q2hlY2tlZCB7XG5cbiAgc3RhdGVUb2FzdGVyU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuICBwbGFjZW1lbnRzID0gT2JqZWN0LnZhbHVlcyhUb2FzdGVyUGxhY2VtZW50KTtcbiAgdG9hc3RzITogUXVlcnlMaXN0PFZpZXdDb250YWluZXJSZWY+O1xuICB0b2FzdHNEeW5hbWljOiBhbnlbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBUb2FzdGVyIHBsYWNlbWVudFxuICAgKiBAdHlwZSBUVG9hc3RlclBsYWNlbWVudFxuICAgKi9cbiAgQElucHV0KCkgcGxhY2VtZW50OiBUVG9hc3RlclBsYWNlbWVudCA9IFRvYXN0ZXJQbGFjZW1lbnQuVG9wRW5kO1xuXG4gIC8qKlxuICAgKiBUb2FzdGVyIHBvc2l0aW9uXG4gICAqIEB0eXBlIChzdHJpbmcgfCAnYWJzb2x1dGUnIHwgJ2ZpeGVkJyB8ICdzdGF0aWMnKVxuICAgKi9cbiAgQElucHV0KCkgcG9zaXRpb246IChzdHJpbmcgfCAnYWJzb2x1dGUnIHwgJ2ZpeGVkJyB8ICdzdGF0aWMnKSA9ICdhYnNvbHV0ZSc7XG5cbiAgQFZpZXdDaGlsZChUb2FzdGVySG9zdERpcmVjdGl2ZSwge3N0YXRpYzogdHJ1ZX0pIHRvYXN0ZXJIb3N0ITogVG9hc3Rlckhvc3REaXJlY3RpdmU7XG4gIEBDb250ZW50Q2hpbGRyZW4oVG9hc3RDb21wb25lbnQsIHtyZWFkOiBWaWV3Q29udGFpbmVyUmVmfSkgY29udGVudFRvYXN0cyE6IFF1ZXJ5TGlzdDxWaWV3Q29udGFpbmVyUmVmPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHByaXZhdGUgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlXG4gICkgeyB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICB0b2FzdGVyOiB0cnVlLFxuICAgICAgJ3RvYXN0LWNvbnRhaW5lcic6IHRydWUsXG4gICAgICBbYHBvc2l0aW9uLSR7dGhpcy5wb3NpdGlvbn1gXTogISF0aGlzLnBvc2l0aW9uLFxuICAgICAgJ3RvcC0wJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ3RvcCcpLFxuICAgICAgJ3RvcC01MCc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdtaWRkbGUnKSxcbiAgICAgICdib3R0b20tMCc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdib3R0b20nKSxcbiAgICAgICdzdGFydC0wJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ3N0YXJ0JyksXG4gICAgICAnc3RhcnQtNTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnY2VudGVyJyksXG4gICAgICAnZW5kLTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnZW5kJyksXG4gICAgICAndHJhbnNsYXRlLW1pZGRsZS14JzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2NlbnRlcicpICYmICF0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnbWlkZGxlJyksXG4gICAgICAndHJhbnNsYXRlLW1pZGRsZS15JzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ21pZGRsZScpICYmICF0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnY2VudGVyJyksXG4gICAgICAndHJhbnNsYXRlLW1pZGRsZSc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdtaWRkbGUnKSAmJiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnY2VudGVyJyksXG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVUb2FzdGVyU3Vic2NyaWJlKHRydWUpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVRvYXN0ZXJTdWJzY3JpYmUoZmFsc2UpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xuICAgIHRoaXMudG9hc3RzID0gdGhpcy5jb250ZW50VG9hc3RzO1xuICB9XG5cbiAgYWRkVG9hc3QodG9hc3Q6IGFueSwgcHJvcHM6IGFueSwgb3B0aW9ucz86IHsgaW5kZXg/OiBudW1iZXI7IGluamVjdG9yPzogSW5qZWN0b3I7IG5nTW9kdWxlUmVmPzogTmdNb2R1bGVSZWY8dW5rbm93bj47IHByb2plY3RhYmxlTm9kZXM/OiBOb2RlW11bXTsgfSk6IENvbXBvbmVudFJlZjxhbnk+IHtcbiAgICBsZXQgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PjtcbiAgICBpZiAocGFyc2VJbnQoVkVSU0lPTi5tYWpvcikgPCAxMykge1xuICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KHRvYXN0KTtcbiAgICAgIGNvbXBvbmVudFJlZiA9IHRoaXMudG9hc3Rlckhvc3Qudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoZmFjdG9yeSwgb3B0aW9ucz8uaW5kZXgsIG9wdGlvbnM/LmluamVjdG9yLCBvcHRpb25zPy5wcm9qZWN0YWJsZU5vZGVzLCBvcHRpb25zPy5uZ01vZHVsZVJlZik7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGNvbXBvbmVudFJlZiA9IHRoaXMudG9hc3Rlckhvc3Qudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQodG9hc3QsIG9wdGlvbnMpO1xuICAgIH1cbiAgICB0aGlzLnRvYXN0c0R5bmFtaWMucHVzaChjb21wb25lbnRSZWYpO1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy50b2FzdHNEeW5hbWljLmluZGV4T2YoY29tcG9uZW50UmVmKTtcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwcm9wcykpIHtcbiAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVtrZXldID0gdmFsdWU7XG4gICAgfVxuICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVsncGxhY2VtZW50J10gPSB0aGlzLnBsYWNlbWVudDtcbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2VbJ2R5bmFtaWMnXSA9IHRydWU7XG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlWydpbmRleCddID0gaW5kZXg7XG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlWyd2aXNpYmxlJ10gPSB0cnVlO1xuICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVsndmlzaWJsZUNoYW5nZSddLmVtaXQodHJ1ZSk7XG4gICAgY29tcG9uZW50UmVmLmNoYW5nZURldGVjdG9yUmVmPy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcbiAgfVxuXG4gIHJlbW92ZVRvYXN0KHN0YXRlOiBJVG9hc3RlckFjdGlvbik6IHZvaWQge1xuICAgIHRoaXMudG9hc3RzRHluYW1pYz8uZm9yRWFjaChpdGVtID0+IHtcbiAgICAgIGlmIChzdGF0ZS50b2FzdD8uZHluYW1pYyAmJiAoaXRlbS5pbnN0YW5jZSA9PT0gc3RhdGUudG9hc3QpKSB7XG4gICAgICAgIGl0ZW0uaW5zdGFuY2UudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICBpdGVtLmluc3RhbmNlWyd2aXNpYmxlQ2hhbmdlJ10uZW1pdChmYWxzZSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGl0ZW0uZGVzdHJveSgpO1xuICAgICAgICB9LCAzMDApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy50b2FzdHM/LmZvckVhY2goaXRlbSA9PiB7XG4gICAgICBpZiAoaXRlbS5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQgPT09IHN0YXRlLnRvYXN0Py5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgIGlmICghc3RhdGUudG9hc3Q/LmR5bmFtaWMpIHtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgc3RhdGUudG9hc3QudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRlVG9hc3RlclN1YnNjcmliZShzdWJzY3JpYmU6IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XG4gICAgaWYgKHN1YnNjcmliZSkge1xuICAgICAgdGhpcy5zdGF0ZVRvYXN0ZXJTdWJzY3JpcHRpb24gPSB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnRvYXN0ZXJTdGF0ZSQuc3Vic2NyaWJlKChzdGF0ZSkgPT4ge1xuICAgICAgICBpZiAoc3RhdGUuc2hvdyA9PT0gZmFsc2UpIHtcbiAgICAgICAgICB0aGlzLnJlbW92ZVRvYXN0KHN0YXRlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhdGUuc2hvdyA9PT0gdHJ1ZSAmJiBzdGF0ZS50b2FzdD8uZHluYW1pYyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0YXRlVG9hc3RlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlIGNUb2FzdGVySG9zdD48L25nLXRlbXBsYXRlPlxuPG5nLWNvbnRlbnQgY1RvYXN0ZXJIb3N0PjwvbmctY29udGVudD5cbiJdfQ==