@ptsecurity/mosaic 15.6.0 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (750) hide show
  1. package/_theming.scss +19 -0
  2. package/_visual.scss +2 -0
  3. package/autocomplete/autocomplete-trigger.directive.d.ts +6 -16
  4. package/autocomplete/autocomplete.component.d.ts +1 -1
  5. package/button/button.component.d.ts +1 -1
  6. package/button-toggle/button-toggle.component.d.ts +3 -3
  7. package/card/card.component.d.ts +1 -1
  8. package/checkbox/_checkbox-theme.scss +4 -0
  9. package/checkbox/checkbox-config.d.ts +1 -1
  10. package/checkbox/checkbox.d.ts +1 -1
  11. package/code-block/actionbar.component.d.ts +1 -1
  12. package/code-block/code-block.component.d.ts +1 -1
  13. package/core/common-behaviors/color.d.ts +1 -1
  14. package/core/common-behaviors/constructor.d.ts +2 -2
  15. package/core/common-behaviors/disabled.d.ts +1 -1
  16. package/core/common-behaviors/error-state.d.ts +1 -1
  17. package/core/common-behaviors/tabindex.d.ts +1 -1
  18. package/core/datetime/date-formats.d.ts +1 -1
  19. package/core/formatters/index.d.ts +1 -1
  20. package/core/formatters/number/formatter.d.ts +55 -0
  21. package/core/label/label-options.d.ts +1 -1
  22. package/core/locales/en-US.d.ts +13 -2
  23. package/core/locales/es-LA.d.ts +21 -0
  24. package/core/locales/fa-IR.d.ts +22 -0
  25. package/core/locales/locale-service.d.ts +111 -5
  26. package/core/locales/pt-BR.d.ts +21 -0
  27. package/core/locales/ru-RU.d.ts +13 -2
  28. package/core/locales/zh-CN.d.ts +20 -0
  29. package/core/option/action.d.ts +1 -1
  30. package/core/option/optgroup.d.ts +1 -1
  31. package/core/option/option.d.ts +37 -8
  32. package/core/overlay/overlay-position-map.d.ts +7 -1
  33. package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +2 -2
  34. package/core/styles/_variables.scss +1 -0
  35. package/core/styles/theming/_theming.scss +1 -0
  36. package/datepicker/calendar-body.component.d.ts +2 -2
  37. package/datepicker/calendar-header.component.d.ts +9 -3
  38. package/datepicker/calendar.component.d.ts +4 -5
  39. package/datepicker/datepicker-input.directive.d.ts +1 -1
  40. package/datepicker/datepicker-toggle.component.d.ts +1 -1
  41. package/datepicker/datepicker.component.d.ts +1 -1
  42. package/datepicker/month-view.component.d.ts +4 -5
  43. package/divider/divider.component.d.ts +1 -1
  44. package/dl/dl.component.d.ts +1 -1
  45. package/dropdown/dropdown-item.component.d.ts +1 -1
  46. package/dropdown/dropdown-trigger.directive.d.ts +1 -1
  47. package/dropdown/dropdown.component.d.ts +1 -1
  48. package/dropdown/dropdown.types.d.ts +3 -3
  49. package/ellipsis-center/ellipsis-center.directive.d.ts +1 -1
  50. package/{esm2020 → esm2022}/autocomplete/autocomplete-origin.directive.mjs +4 -4
  51. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +555 -0
  52. package/{esm2020 → esm2022}/autocomplete/autocomplete.component.mjs +26 -26
  53. package/{esm2020 → esm2022}/autocomplete/autocomplete.module.mjs +10 -10
  54. package/esm2022/button/button.component.mjs +148 -0
  55. package/{esm2020 → esm2022}/button/button.module.mjs +13 -13
  56. package/esm2022/button-toggle/button-toggle.component.mjs +381 -0
  57. package/{esm2020 → esm2022}/button-toggle/button-toggle.module.mjs +5 -5
  58. package/esm2022/card/card.component.mjs +80 -0
  59. package/{esm2020 → esm2022}/card/card.module.mjs +9 -9
  60. package/{esm2020 → esm2022}/checkbox/checkbox-module.mjs +5 -5
  61. package/{esm2020 → esm2022}/checkbox/checkbox-required-validator.mjs +4 -4
  62. package/esm2022/checkbox/checkbox.mjs +300 -0
  63. package/{esm2020 → esm2022}/code-block/actionbar.component.mjs +4 -4
  64. package/esm2022/code-block/code-block.component.mjs +157 -0
  65. package/esm2022/code-block/code-block.module.mjs +60 -0
  66. package/esm2022/core/common-behaviors/color.mjs +33 -0
  67. package/{esm2020 → esm2022}/core/common-behaviors/common-module.mjs +5 -5
  68. package/{esm2020 → esm2022}/core/common-behaviors/disabled.mjs +6 -6
  69. package/{esm2020 → esm2022}/core/common-behaviors/tabindex.mjs +6 -6
  70. package/{esm2020 → esm2022}/core/error/error-options.mjs +7 -7
  71. package/{esm2020 → esm2022}/core/formatters/date/formatter.mjs +4 -4
  72. package/{esm2020 → esm2022}/core/formatters/date/formatter.pipe.mjs +40 -40
  73. package/esm2022/core/formatters/index.mjs +86 -0
  74. package/esm2022/core/formatters/number/formatter.mjs +350 -0
  75. package/{esm2020 → esm2022}/core/forms/forms-module.mjs +7 -7
  76. package/{esm2020 → esm2022}/core/forms/forms.directive.mjs +7 -7
  77. package/{esm2020 → esm2022}/core/highlight/highlight.pipe.mjs +4 -4
  78. package/{esm2020 → esm2022}/core/highlight/index.mjs +5 -5
  79. package/{esm2020 → esm2022}/core/line/line.mjs +8 -8
  80. package/esm2022/core/locales/en-US.mjs +21 -0
  81. package/esm2022/core/locales/es-LA.mjs +27 -0
  82. package/esm2022/core/locales/fa-IR.mjs +28 -0
  83. package/{esm2020 → esm2022}/core/locales/locale-service.mjs +7 -7
  84. package/{esm2020 → esm2022}/core/locales/locale-service.module.mjs +7 -7
  85. package/esm2022/core/locales/pt-BR.mjs +27 -0
  86. package/esm2022/core/locales/ru-RU.mjs +21 -0
  87. package/esm2022/core/locales/zh-CN.mjs +26 -0
  88. package/{esm2020 → esm2022}/core/option/action.mjs +9 -9
  89. package/{esm2020 → esm2022}/core/option/optgroup.mjs +4 -4
  90. package/{esm2020 → esm2022}/core/option/option-module.mjs +5 -5
  91. package/esm2022/core/option/option.mjs +298 -0
  92. package/esm2022/core/overlay/overlay-position-map.mjs +251 -0
  93. package/{esm2020 → esm2022}/core/pop-up/pop-up-trigger.mjs +4 -4
  94. package/{esm2020 → esm2022}/core/pop-up/pop-up.mjs +4 -4
  95. package/{esm2020 → esm2022}/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  96. package/{esm2020 → esm2022}/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +5 -5
  97. package/esm2022/core/services/measure-scrollbar.service.mjs +48 -0
  98. package/{esm2020 → esm2022}/core/utils/data-size/data-size.pipe.mjs +8 -8
  99. package/{esm2020 → esm2022}/core/version.mjs +2 -2
  100. package/{esm2020 → esm2022}/datepicker/calendar-body.component.mjs +4 -4
  101. package/esm2022/datepicker/calendar-header.component.mjs +135 -0
  102. package/esm2022/datepicker/calendar.component.mjs +166 -0
  103. package/esm2022/datepicker/datepicker-input.directive.mjs +955 -0
  104. package/{esm2020 → esm2022}/datepicker/datepicker-intl.mjs +4 -4
  105. package/{esm2020 → esm2022}/datepicker/datepicker-module.mjs +38 -38
  106. package/esm2022/datepicker/datepicker-toggle.component.mjs +86 -0
  107. package/esm2022/datepicker/datepicker.component.mjs +393 -0
  108. package/esm2022/datepicker/month-view.component.mjs +149 -0
  109. package/{esm2020 → esm2022}/divider/divider.component.mjs +4 -4
  110. package/{esm2020 → esm2022}/divider/divider.module.mjs +5 -5
  111. package/{esm2020 → esm2022}/dl/dl.component.mjs +10 -10
  112. package/{esm2020 → esm2022}/dl/dl.module.mjs +13 -13
  113. package/{esm2020 → esm2022}/dropdown/dropdown-content.directive.mjs +4 -4
  114. package/{esm2020 → esm2022}/dropdown/dropdown-item.component.mjs +6 -6
  115. package/esm2022/dropdown/dropdown-trigger.directive.mjs +489 -0
  116. package/esm2022/dropdown/dropdown.component.mjs +292 -0
  117. package/{esm2020 → esm2022}/dropdown/dropdown.module.mjs +15 -15
  118. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +106 -0
  119. package/{esm2020 → esm2022}/file-upload/file-drop.mjs +4 -4
  120. package/{esm2020 → esm2022}/file-upload/file-upload.module.mjs +25 -25
  121. package/esm2022/file-upload/multiple-file-upload.component.mjs +165 -0
  122. package/esm2022/file-upload/single-file-upload.component.mjs +134 -0
  123. package/{esm2020 → esm2022}/form-field/cleaner.mjs +4 -4
  124. package/esm2022/form-field/form-field.mjs +267 -0
  125. package/{esm2020 → esm2022}/form-field/form-field.module.mjs +23 -23
  126. package/{esm2020 → esm2022}/form-field/hint.mjs +4 -4
  127. package/{esm2020 → esm2022}/form-field/password-hint.mjs +9 -9
  128. package/{esm2020 → esm2022}/form-field/prefix.mjs +4 -4
  129. package/{esm2020 → esm2022}/form-field/stepper.mjs +6 -6
  130. package/{esm2020 → esm2022}/form-field/suffix.mjs +4 -4
  131. package/esm2022/form-field/validate.directive.mjs +158 -0
  132. package/{esm2020 → esm2022}/icon/icon.component.mjs +7 -7
  133. package/{esm2020 → esm2022}/icon/icon.module.mjs +11 -11
  134. package/{esm2020 → esm2022}/input/input-number-validators.mjs +7 -7
  135. package/esm2022/input/input-number.mjs +168 -0
  136. package/esm2022/input/input-password.mjs +343 -0
  137. package/esm2022/input/input.mjs +297 -0
  138. package/{esm2020 → esm2022}/input/input.module.mjs +23 -23
  139. package/esm2022/link/link.component.mjs +122 -0
  140. package/{esm2020 → esm2022}/link/link.module.mjs +7 -7
  141. package/esm2022/list/list-selection.component.mjs +705 -0
  142. package/{esm2020 → esm2022}/list/list.component.mjs +7 -7
  143. package/{esm2020 → esm2022}/list/list.module.mjs +20 -20
  144. package/esm2022/loader-overlay/loader-overlay.component.mjs +103 -0
  145. package/{esm2020 → esm2022}/loader-overlay/loader-overlay.module.mjs +17 -17
  146. package/{esm2020 → esm2022}/markdown/markdown.component.mjs +13 -13
  147. package/{esm2020 → esm2022}/markdown/markdown.module.mjs +5 -5
  148. package/{esm2020 → esm2022}/markdown/markdown.service.mjs +4 -4
  149. package/{esm2020 → esm2022}/modal/css-unit.pipe.mjs +4 -4
  150. package/esm2022/modal/modal-control.service.mjs +85 -0
  151. package/esm2022/modal/modal.component.mjs +520 -0
  152. package/{esm2020 → esm2022}/modal/modal.directive.mjs +13 -13
  153. package/esm2022/modal/modal.module.mjs +75 -0
  154. package/{esm2020 → esm2022}/modal/modal.service.mjs +8 -8
  155. package/esm2022/navbar/navbar-item.component.mjs +606 -0
  156. package/esm2022/navbar/navbar.component.mjs +248 -0
  157. package/{esm2020 → esm2022}/navbar/navbar.module.mjs +37 -37
  158. package/{esm2020 → esm2022}/navbar/vertical-navbar.component.mjs +20 -17
  159. package/esm2022/popover/popover-confirm.component.mjs +108 -0
  160. package/esm2022/popover/popover.component.mjs +266 -0
  161. package/{esm2020 → esm2022}/popover/popover.module.mjs +8 -8
  162. package/{esm2020 → esm2022}/progress-bar/progress-bar.component.mjs +4 -4
  163. package/{esm2020 → esm2022}/progress-bar/progress-bar.module.mjs +7 -7
  164. package/{esm2020 → esm2022}/progress-spinner/progress-spinner.component.mjs +12 -12
  165. package/{esm2020 → esm2022}/progress-spinner/progress-spinner.module.mjs +7 -7
  166. package/esm2022/radio/radio.component.mjs +457 -0
  167. package/{esm2020 → esm2022}/radio/radio.module.mjs +5 -5
  168. package/esm2022/select/select-option.directive.mjs +65 -0
  169. package/esm2022/select/select.component.mjs +1160 -0
  170. package/{esm2020 → esm2022}/select/select.module.mjs +32 -32
  171. package/esm2022/sidebar/sidebar.component.mjs +146 -0
  172. package/{esm2020 → esm2022}/sidebar/sidebar.module.mjs +9 -9
  173. package/esm2022/sidepanel/sidepanel-container.component.mjs +110 -0
  174. package/{esm2020 → esm2022}/sidepanel/sidepanel-directives.mjs +18 -18
  175. package/{esm2020 → esm2022}/sidepanel/sidepanel.module.mjs +32 -32
  176. package/{esm2020 → esm2022}/sidepanel/sidepanel.service.mjs +10 -10
  177. package/esm2022/splitter/splitter.component.mjs +482 -0
  178. package/{esm2020 → esm2022}/splitter/splitter.module.mjs +12 -12
  179. package/{esm2020 → esm2022}/table/table.component.mjs +4 -4
  180. package/{esm2020 → esm2022}/table/table.module.mjs +9 -9
  181. package/esm2022/tabs/paginated-tab-header.mjs +488 -0
  182. package/esm2022/tabs/tab-body.component.mjs +179 -0
  183. package/{esm2020 → esm2022}/tabs/tab-content.directive.mjs +4 -4
  184. package/esm2022/tabs/tab-group.component.mjs +349 -0
  185. package/{esm2020 → esm2022}/tabs/tab-header.component.mjs +4 -4
  186. package/{esm2020 → esm2022}/tabs/tab-label-wrapper.directive.mjs +4 -4
  187. package/{esm2020 → esm2022}/tabs/tab-label.directive.mjs +4 -4
  188. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +111 -0
  189. package/{esm2020 → esm2022}/tabs/tab.component.mjs +43 -34
  190. package/{esm2020 → esm2022}/tabs/tabs.module.mjs +42 -42
  191. package/esm2022/tags/tag-input.mjs +250 -0
  192. package/esm2022/tags/tag-list.component.mjs +718 -0
  193. package/esm2022/tags/tag.component.mjs +381 -0
  194. package/esm2022/tags/tag.module.mjs +56 -0
  195. package/esm2022/textarea/textarea.component.mjs +254 -0
  196. package/{esm2020 → esm2022}/textarea/textarea.module.mjs +5 -5
  197. package/esm2022/timepicker/timepicker.directive.mjs +647 -0
  198. package/{esm2020 → esm2022}/timepicker/timepicker.module.mjs +11 -11
  199. package/{esm2020 → esm2022}/timezone/cities-by-filter.pipe.mjs +4 -4
  200. package/esm2022/timezone/timezone-option.component.mjs +48 -0
  201. package/{esm2020 → esm2022}/timezone/timezone-option.directive.mjs +4 -4
  202. package/{esm2020 → esm2022}/timezone/timezone-select.component.mjs +11 -11
  203. package/{esm2020 → esm2022}/timezone/timezone.module.mjs +29 -29
  204. package/{esm2020 → esm2022}/timezone/utc-offset.pipe.mjs +4 -4
  205. package/esm2022/title/title.directive.mjs +107 -0
  206. package/{esm2020 → esm2022}/title/title.module.mjs +5 -5
  207. package/{esm2020 → esm2022}/toast/toast-container.component.mjs +4 -4
  208. package/esm2022/toast/toast.component.mjs +92 -0
  209. package/esm2022/toast/toast.module.mjs +48 -0
  210. package/esm2022/toast/toast.service.mjs +188 -0
  211. package/esm2022/toggle/toggle.component.mjs +156 -0
  212. package/{esm2020 → esm2022}/toggle/toggle.module.mjs +5 -5
  213. package/esm2022/tooltip/tooltip.component.mjs +299 -0
  214. package/{esm2020 → esm2022}/tooltip/tooltip.module.mjs +14 -14
  215. package/esm2022/tree/data-source/flat-data-source.mjs +162 -0
  216. package/{esm2020 → esm2022}/tree/node.mjs +4 -4
  217. package/{esm2020 → esm2022}/tree/outlet.mjs +4 -4
  218. package/esm2022/tree/padding.directive.mjs +113 -0
  219. package/esm2022/tree/toggle.mjs +81 -0
  220. package/esm2022/tree/tree-base.mjs +243 -0
  221. package/esm2022/tree/tree-option.component.mjs +303 -0
  222. package/esm2022/tree/tree-selection.component.mjs +558 -0
  223. package/{esm2020 → esm2022}/tree/tree.mjs +4 -4
  224. package/{esm2020 → esm2022}/tree/tree.module.mjs +21 -21
  225. package/esm2022/tree-select/tree-select.component.mjs +936 -0
  226. package/{esm2020 → esm2022}/tree-select/tree-select.module.mjs +17 -17
  227. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-autocomplete.mjs +80 -77
  228. package/fesm2022/ptsecurity-mosaic-autocomplete.mjs.map +1 -0
  229. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-button-toggle.mjs +47 -47
  230. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  231. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-button.mjs +25 -25
  232. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-button.mjs.map +1 -1
  233. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-card.mjs +17 -17
  234. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-card.mjs.map +1 -1
  235. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-checkbox.mjs +39 -39
  236. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  237. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-code-block.mjs +34 -34
  238. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-code-block.mjs.map +1 -1
  239. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-core.mjs +598 -222
  240. package/fesm2022/ptsecurity-mosaic-core.mjs.map +1 -0
  241. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-datepicker.mjs +335 -351
  242. package/fesm2022/ptsecurity-mosaic-datepicker.mjs.map +1 -0
  243. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-divider.mjs +7 -7
  244. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-divider.mjs.map +1 -1
  245. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-dl.mjs +21 -21
  246. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-dl.mjs.map +1 -1
  247. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-dropdown.mjs +89 -89
  248. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  249. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-ellipsis-center.mjs +11 -11
  250. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-ellipsis-center.mjs.map +1 -1
  251. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-file-upload.mjs +55 -47
  252. package/fesm2022/ptsecurity-mosaic-file-upload.mjs.map +1 -0
  253. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-form-field.mjs +80 -80
  254. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-form-field.mjs.map +1 -1
  255. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-icon.mjs +16 -16
  256. package/fesm2022/ptsecurity-mosaic-icon.mjs.map +1 -0
  257. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-input.mjs +128 -128
  258. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-input.mjs.map +1 -1
  259. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-link.mjs +22 -22
  260. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-link.mjs.map +1 -1
  261. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-list.mjs +86 -86
  262. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-list.mjs.map +1 -1
  263. package/fesm2022/ptsecurity-mosaic-loader-overlay.mjs +155 -0
  264. package/{fesm2015 → fesm2022}/ptsecurity-mosaic-loader-overlay.mjs.map +1 -1
  265. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-markdown.mjs +19 -19
  266. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-markdown.mjs.map +1 -1
  267. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-modal.mjs +157 -144
  268. package/fesm2022/ptsecurity-mosaic-modal.mjs.map +1 -0
  269. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-navbar.mjs +184 -176
  270. package/fesm2022/ptsecurity-mosaic-navbar.mjs.map +1 -0
  271. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-popover.mjs +37 -37
  272. package/{fesm2015 → fesm2022}/ptsecurity-mosaic-popover.mjs.map +1 -1
  273. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-progress-bar.mjs +9 -9
  274. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  275. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-progress-spinner.mjs +18 -18
  276. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  277. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-radio.mjs +78 -78
  278. package/{fesm2015 → fesm2022}/ptsecurity-mosaic-radio.mjs.map +1 -1
  279. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-select.mjs +188 -174
  280. package/fesm2022/ptsecurity-mosaic-select.mjs.map +1 -0
  281. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-sidebar.mjs +29 -29
  282. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  283. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-sidepanel.mjs +63 -63
  284. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  285. package/{fesm2015 → fesm2022}/ptsecurity-mosaic-splitter.mjs +55 -55
  286. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-splitter.mjs.map +1 -1
  287. package/fesm2022/ptsecurity-mosaic-table.mjs +45 -0
  288. package/fesm2022/ptsecurity-mosaic-table.mjs.map +1 -0
  289. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-tabs.mjs +188 -179
  290. package/fesm2022/ptsecurity-mosaic-tabs.mjs.map +1 -0
  291. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-tags.mjs +131 -131
  292. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-tags.mjs.map +1 -1
  293. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-textarea.mjs +41 -41
  294. package/{fesm2015 → fesm2022}/ptsecurity-mosaic-textarea.mjs.map +1 -1
  295. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-timepicker.mjs +95 -95
  296. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  297. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-timezone.mjs +53 -53
  298. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-timezone.mjs.map +1 -1
  299. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-title.mjs +18 -18
  300. package/fesm2022/ptsecurity-mosaic-title.mjs.map +1 -0
  301. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-toast.mjs +47 -41
  302. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-toast.mjs.map +1 -1
  303. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-toggle.mjs +35 -35
  304. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-toggle.mjs.map +1 -1
  305. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-tooltip.mjs +47 -47
  306. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  307. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-tree-select.mjs +122 -122
  308. package/fesm2022/ptsecurity-mosaic-tree-select.mjs.map +1 -0
  309. package/{fesm2020 → fesm2022}/ptsecurity-mosaic-tree.mjs +202 -198
  310. package/fesm2022/ptsecurity-mosaic-tree.mjs.map +1 -0
  311. package/file-upload/file-upload.d.ts +1 -1
  312. package/file-upload/multiple-file-upload.component.d.ts +5 -4
  313. package/file-upload/single-file-upload.component.d.ts +5 -4
  314. package/form-field/_form-field-theme.scss +4 -0
  315. package/form-field/form-field.d.ts +1 -1
  316. package/form-field/hint.d.ts +1 -1
  317. package/form-field/password-hint.d.ts +1 -1
  318. package/icon/icon.component.d.ts +1 -1
  319. package/input/input-number-validators.d.ts +2 -2
  320. package/input/input-number.d.ts +1 -1
  321. package/input/input-password.d.ts +2 -2
  322. package/input/input.d.ts +1 -1
  323. package/link/link.component.d.ts +1 -1
  324. package/list/list-selection.component.d.ts +2 -2
  325. package/loader-overlay/loader-overlay.component.d.ts +1 -1
  326. package/loader-overlay/loader-overlay.scss +3 -0
  327. package/markdown/markdown.component.d.ts +1 -1
  328. package/modal/modal.component.d.ts +5 -2
  329. package/modal/modal.module.d.ts +2 -1
  330. package/modal/modal.scss +14 -2
  331. package/modal/modal.type.d.ts +3 -3
  332. package/navbar/navbar-item.component.d.ts +3 -3
  333. package/navbar/navbar.component.d.ts +7 -4
  334. package/navbar/vertical-navbar.component.d.ts +5 -3
  335. package/package.json +149 -239
  336. package/popover/popover-confirm.component.d.ts +1 -1
  337. package/popover/popover.component.d.ts +1 -1
  338. package/prebuilt-themes/dark-theme.css +1 -1
  339. package/prebuilt-themes/default-theme.css +1 -1
  340. package/prebuilt-visual/default-visual.css +1 -1
  341. package/progress-bar/progress-bar.component.d.ts +2 -2
  342. package/progress-spinner/progress-spinner.component.d.ts +3 -3
  343. package/radio/_radio-theme.scss +4 -0
  344. package/radio/radio.component.d.ts +2 -2
  345. package/select/select.component.d.ts +12 -9
  346. package/select/select.scss +1 -1
  347. package/sidebar/sidebar.component.d.ts +3 -3
  348. package/sidepanel/sidepanel-directives.d.ts +2 -2
  349. package/splitter/splitter.component.d.ts +3 -3
  350. package/tabs/paginated-tab-header.d.ts +3 -3
  351. package/tabs/tab-body.component.d.ts +3 -3
  352. package/tabs/tab-group.component.d.ts +2 -2
  353. package/tabs/tab-header.component.d.ts +2 -2
  354. package/tabs/tab-label-wrapper.directive.d.ts +1 -1
  355. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +1 -1
  356. package/tabs/tab.component.d.ts +1 -1
  357. package/tags/tag-input.d.ts +1 -1
  358. package/tags/tag-list.component.d.ts +1 -1
  359. package/tags/tag.component.d.ts +1 -1
  360. package/textarea/textarea.component.d.ts +1 -1
  361. package/timepicker/timepicker.directive.d.ts +1 -1
  362. package/timezone/timezone-option.component.d.ts +1 -1
  363. package/toast/toast.type.d.ts +1 -1
  364. package/toggle/toggle.component.d.ts +2 -2
  365. package/tooltip/tooltip.component.d.ts +3 -3
  366. package/tree/node.d.ts +1 -1
  367. package/tree/padding.directive.d.ts +1 -1
  368. package/tree/toggle.d.ts +2 -2
  369. package/tree/tree-base.d.ts +1 -1
  370. package/tree/tree-option.component.d.ts +1 -1
  371. package/tree/tree-option.scss +4 -2
  372. package/tree/tree-selection.component.d.ts +1 -1
  373. package/tree-select/tree-select.component.d.ts +1 -1
  374. package/esm2020/autocomplete/autocomplete-trigger.directive.mjs +0 -552
  375. package/esm2020/button/button.component.mjs +0 -148
  376. package/esm2020/button-toggle/button-toggle.component.mjs +0 -381
  377. package/esm2020/card/card.component.mjs +0 -80
  378. package/esm2020/checkbox/checkbox.mjs +0 -300
  379. package/esm2020/code-block/code-block.component.mjs +0 -157
  380. package/esm2020/code-block/code-block.module.mjs +0 -60
  381. package/esm2020/core/common-behaviors/color.mjs +0 -33
  382. package/esm2020/core/formatters/index.mjs +0 -78
  383. package/esm2020/core/formatters/number/formatter.mjs +0 -129
  384. package/esm2020/core/locales/en-US.mjs +0 -10
  385. package/esm2020/core/locales/es-LA.mjs +0 -6
  386. package/esm2020/core/locales/fa-IR.mjs +0 -6
  387. package/esm2020/core/locales/pt-BR.mjs +0 -6
  388. package/esm2020/core/locales/ru-RU.mjs +0 -10
  389. package/esm2020/core/locales/zh-CN.mjs +0 -6
  390. package/esm2020/core/option/option.mjs +0 -262
  391. package/esm2020/core/overlay/overlay-position-map.mjs +0 -245
  392. package/esm2020/core/services/measure-scrollbar.service.mjs +0 -48
  393. package/esm2020/datepicker/calendar-header.component.mjs +0 -134
  394. package/esm2020/datepicker/calendar.component.mjs +0 -175
  395. package/esm2020/datepicker/datepicker-input.directive.mjs +0 -954
  396. package/esm2020/datepicker/datepicker-toggle.component.mjs +0 -86
  397. package/esm2020/datepicker/datepicker.component.mjs +0 -393
  398. package/esm2020/datepicker/month-view.component.mjs +0 -158
  399. package/esm2020/dropdown/dropdown-trigger.directive.mjs +0 -489
  400. package/esm2020/dropdown/dropdown.component.mjs +0 -292
  401. package/esm2020/ellipsis-center/ellipsis-center.directive.mjs +0 -106
  402. package/esm2020/file-upload/multiple-file-upload.component.mjs +0 -161
  403. package/esm2020/file-upload/single-file-upload.component.mjs +0 -130
  404. package/esm2020/form-field/form-field.mjs +0 -267
  405. package/esm2020/form-field/validate.directive.mjs +0 -158
  406. package/esm2020/input/input-number.mjs +0 -168
  407. package/esm2020/input/input-password.mjs +0 -343
  408. package/esm2020/input/input.mjs +0 -297
  409. package/esm2020/link/link.component.mjs +0 -122
  410. package/esm2020/list/list-selection.component.mjs +0 -705
  411. package/esm2020/loader-overlay/loader-overlay.component.mjs +0 -103
  412. package/esm2020/modal/modal-control.service.mjs +0 -85
  413. package/esm2020/modal/modal.component.mjs +0 -510
  414. package/esm2020/modal/modal.module.mjs +0 -71
  415. package/esm2020/navbar/navbar-item.component.mjs +0 -606
  416. package/esm2020/navbar/navbar.component.mjs +0 -239
  417. package/esm2020/popover/popover-confirm.component.mjs +0 -108
  418. package/esm2020/popover/popover.component.mjs +0 -266
  419. package/esm2020/radio/radio.component.mjs +0 -457
  420. package/esm2020/select/select-option.directive.mjs +0 -65
  421. package/esm2020/select/select.component.mjs +0 -1146
  422. package/esm2020/sidebar/sidebar.component.mjs +0 -146
  423. package/esm2020/sidepanel/sidepanel-container.component.mjs +0 -110
  424. package/esm2020/splitter/splitter.component.mjs +0 -482
  425. package/esm2020/tabs/paginated-tab-header.mjs +0 -488
  426. package/esm2020/tabs/tab-body.component.mjs +0 -179
  427. package/esm2020/tabs/tab-group.component.mjs +0 -349
  428. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +0 -111
  429. package/esm2020/tags/tag-input.mjs +0 -250
  430. package/esm2020/tags/tag-list.component.mjs +0 -718
  431. package/esm2020/tags/tag.component.mjs +0 -381
  432. package/esm2020/tags/tag.module.mjs +0 -56
  433. package/esm2020/textarea/textarea.component.mjs +0 -254
  434. package/esm2020/timepicker/timepicker.directive.mjs +0 -647
  435. package/esm2020/timezone/timezone-option.component.mjs +0 -48
  436. package/esm2020/title/title.directive.mjs +0 -107
  437. package/esm2020/toast/toast.component.mjs +0 -92
  438. package/esm2020/toast/toast.module.mjs +0 -42
  439. package/esm2020/toast/toast.service.mjs +0 -188
  440. package/esm2020/toggle/toggle.component.mjs +0 -156
  441. package/esm2020/tooltip/tooltip.component.mjs +0 -299
  442. package/esm2020/tree/data-source/flat-data-source.mjs +0 -162
  443. package/esm2020/tree/padding.directive.mjs +0 -113
  444. package/esm2020/tree/toggle.mjs +0 -81
  445. package/esm2020/tree/tree-base.mjs +0 -243
  446. package/esm2020/tree/tree-option.component.mjs +0 -300
  447. package/esm2020/tree/tree-selection.component.mjs +0 -557
  448. package/esm2020/tree-select/tree-select.component.mjs +0 -936
  449. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs +0 -753
  450. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs.map +0 -1
  451. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs +0 -405
  452. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs.map +0 -1
  453. package/fesm2015/ptsecurity-mosaic-button.mjs +0 -193
  454. package/fesm2015/ptsecurity-mosaic-button.mjs.map +0 -1
  455. package/fesm2015/ptsecurity-mosaic-card.mjs +0 -111
  456. package/fesm2015/ptsecurity-mosaic-card.mjs.map +0 -1
  457. package/fesm2015/ptsecurity-mosaic-checkbox.mjs +0 -351
  458. package/fesm2015/ptsecurity-mosaic-checkbox.mjs.map +0 -1
  459. package/fesm2015/ptsecurity-mosaic-code-block.mjs +0 -280
  460. package/fesm2015/ptsecurity-mosaic-code-block.mjs.map +0 -1
  461. package/fesm2015/ptsecurity-mosaic-core.mjs +0 -2314
  462. package/fesm2015/ptsecurity-mosaic-core.mjs.map +0 -1
  463. package/fesm2015/ptsecurity-mosaic-datepicker.mjs +0 -2112
  464. package/fesm2015/ptsecurity-mosaic-datepicker.mjs.map +0 -1
  465. package/fesm2015/ptsecurity-mosaic-divider.mjs +0 -61
  466. package/fesm2015/ptsecurity-mosaic-divider.mjs.map +0 -1
  467. package/fesm2015/ptsecurity-mosaic-dl.mjs +0 -126
  468. package/fesm2015/ptsecurity-mosaic-dl.mjs.map +0 -1
  469. package/fesm2015/ptsecurity-mosaic-dropdown.mjs +0 -1115
  470. package/fesm2015/ptsecurity-mosaic-dropdown.mjs.map +0 -1
  471. package/fesm2015/ptsecurity-mosaic-ellipsis-center.mjs +0 -113
  472. package/fesm2015/ptsecurity-mosaic-ellipsis-center.mjs.map +0 -1
  473. package/fesm2015/ptsecurity-mosaic-file-upload.mjs +0 -392
  474. package/fesm2015/ptsecurity-mosaic-file-upload.mjs.map +0 -1
  475. package/fesm2015/ptsecurity-mosaic-form-field.mjs +0 -772
  476. package/fesm2015/ptsecurity-mosaic-form-field.mjs.map +0 -1
  477. package/fesm2015/ptsecurity-mosaic-icon.mjs +0 -86
  478. package/fesm2015/ptsecurity-mosaic-icon.mjs.map +0 -1
  479. package/fesm2015/ptsecurity-mosaic-input.mjs +0 -951
  480. package/fesm2015/ptsecurity-mosaic-input.mjs.map +0 -1
  481. package/fesm2015/ptsecurity-mosaic-link.mjs +0 -150
  482. package/fesm2015/ptsecurity-mosaic-link.mjs.map +0 -1
  483. package/fesm2015/ptsecurity-mosaic-list.mjs +0 -807
  484. package/fesm2015/ptsecurity-mosaic-list.mjs.map +0 -1
  485. package/fesm2015/ptsecurity-mosaic-loader-overlay.mjs +0 -157
  486. package/fesm2015/ptsecurity-mosaic-markdown.mjs +0 -128
  487. package/fesm2015/ptsecurity-mosaic-markdown.mjs.map +0 -1
  488. package/fesm2015/ptsecurity-mosaic-modal.mjs +0 -875
  489. package/fesm2015/ptsecurity-mosaic-modal.mjs.map +0 -1
  490. package/fesm2015/ptsecurity-mosaic-navbar.mjs +0 -1055
  491. package/fesm2015/ptsecurity-mosaic-navbar.mjs.map +0 -1
  492. package/fesm2015/ptsecurity-mosaic-popover.mjs +0 -411
  493. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs +0 -74
  494. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs.map +0 -1
  495. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs +0 -93
  496. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs.map +0 -1
  497. package/fesm2015/ptsecurity-mosaic-radio.mjs +0 -481
  498. package/fesm2015/ptsecurity-mosaic-select.mjs +0 -1286
  499. package/fesm2015/ptsecurity-mosaic-select.mjs.map +0 -1
  500. package/fesm2015/ptsecurity-mosaic-sidebar.mjs +0 -202
  501. package/fesm2015/ptsecurity-mosaic-sidebar.mjs.map +0 -1
  502. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs +0 -622
  503. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs.map +0 -1
  504. package/fesm2015/ptsecurity-mosaic-splitter.mjs.map +0 -1
  505. package/fesm2015/ptsecurity-mosaic-table.mjs +0 -45
  506. package/fesm2015/ptsecurity-mosaic-table.mjs.map +0 -1
  507. package/fesm2015/ptsecurity-mosaic-tabs.mjs +0 -1523
  508. package/fesm2015/ptsecurity-mosaic-tabs.mjs.map +0 -1
  509. package/fesm2015/ptsecurity-mosaic-tags.mjs +0 -1397
  510. package/fesm2015/ptsecurity-mosaic-tags.mjs.map +0 -1
  511. package/fesm2015/ptsecurity-mosaic-textarea.mjs +0 -280
  512. package/fesm2015/ptsecurity-mosaic-timepicker.mjs +0 -708
  513. package/fesm2015/ptsecurity-mosaic-timepicker.mjs.map +0 -1
  514. package/fesm2015/ptsecurity-mosaic-timezone.mjs +0 -316
  515. package/fesm2015/ptsecurity-mosaic-timezone.mjs.map +0 -1
  516. package/fesm2015/ptsecurity-mosaic-title.mjs +0 -128
  517. package/fesm2015/ptsecurity-mosaic-title.mjs.map +0 -1
  518. package/fesm2015/ptsecurity-mosaic-toast.mjs +0 -379
  519. package/fesm2015/ptsecurity-mosaic-toast.mjs.map +0 -1
  520. package/fesm2015/ptsecurity-mosaic-toggle.mjs +0 -178
  521. package/fesm2015/ptsecurity-mosaic-toggle.mjs.map +0 -1
  522. package/fesm2015/ptsecurity-mosaic-tooltip.mjs +0 -369
  523. package/fesm2015/ptsecurity-mosaic-tooltip.mjs.map +0 -1
  524. package/fesm2015/ptsecurity-mosaic-tree-select.mjs +0 -983
  525. package/fesm2015/ptsecurity-mosaic-tree-select.mjs.map +0 -1
  526. package/fesm2015/ptsecurity-mosaic-tree.mjs +0 -1816
  527. package/fesm2015/ptsecurity-mosaic-tree.mjs.map +0 -1
  528. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs.map +0 -1
  529. package/fesm2020/ptsecurity-mosaic-core.mjs.map +0 -1
  530. package/fesm2020/ptsecurity-mosaic-datepicker.mjs.map +0 -1
  531. package/fesm2020/ptsecurity-mosaic-file-upload.mjs.map +0 -1
  532. package/fesm2020/ptsecurity-mosaic-icon.mjs.map +0 -1
  533. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs +0 -155
  534. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs.map +0 -1
  535. package/fesm2020/ptsecurity-mosaic-modal.mjs.map +0 -1
  536. package/fesm2020/ptsecurity-mosaic-navbar.mjs.map +0 -1
  537. package/fesm2020/ptsecurity-mosaic-popover.mjs.map +0 -1
  538. package/fesm2020/ptsecurity-mosaic-radio.mjs.map +0 -1
  539. package/fesm2020/ptsecurity-mosaic-select.mjs.map +0 -1
  540. package/fesm2020/ptsecurity-mosaic-splitter.mjs +0 -524
  541. package/fesm2020/ptsecurity-mosaic-table.mjs +0 -45
  542. package/fesm2020/ptsecurity-mosaic-table.mjs.map +0 -1
  543. package/fesm2020/ptsecurity-mosaic-tabs.mjs.map +0 -1
  544. package/fesm2020/ptsecurity-mosaic-textarea.mjs.map +0 -1
  545. package/fesm2020/ptsecurity-mosaic-title.mjs.map +0 -1
  546. package/fesm2020/ptsecurity-mosaic-tree-select.mjs.map +0 -1
  547. package/fesm2020/ptsecurity-mosaic-tree.mjs.map +0 -1
  548. package/fesm2020/ptsecurity-mosaic.mjs +0 -4
  549. package/fesm2020/ptsecurity-mosaic.mjs.map +0 -1
  550. /package/{esm2020 → esm2022}/autocomplete/index.mjs +0 -0
  551. /package/{esm2020 → esm2022}/autocomplete/ptsecurity-mosaic-autocomplete.mjs +0 -0
  552. /package/{esm2020 → esm2022}/autocomplete/public-api.mjs +0 -0
  553. /package/{esm2020 → esm2022}/button/index.mjs +0 -0
  554. /package/{esm2020 → esm2022}/button/ptsecurity-mosaic-button.mjs +0 -0
  555. /package/{esm2020 → esm2022}/button/public-api.mjs +0 -0
  556. /package/{esm2020 → esm2022}/button-toggle/index.mjs +0 -0
  557. /package/{esm2020 → esm2022}/button-toggle/ptsecurity-mosaic-button-toggle.mjs +0 -0
  558. /package/{esm2020 → esm2022}/button-toggle/public-api.mjs +0 -0
  559. /package/{esm2020 → esm2022}/card/index.mjs +0 -0
  560. /package/{esm2020 → esm2022}/card/ptsecurity-mosaic-card.mjs +0 -0
  561. /package/{esm2020 → esm2022}/card/public-api.mjs +0 -0
  562. /package/{esm2020 → esm2022}/checkbox/checkbox-config.mjs +0 -0
  563. /package/{esm2020 → esm2022}/checkbox/index.mjs +0 -0
  564. /package/{esm2020 → esm2022}/checkbox/ptsecurity-mosaic-checkbox.mjs +0 -0
  565. /package/{esm2020 → esm2022}/checkbox/public-api.mjs +0 -0
  566. /package/{esm2020 → esm2022}/code-block/code-block.types.mjs +0 -0
  567. /package/{esm2020 → esm2022}/code-block/index.mjs +0 -0
  568. /package/{esm2020 → esm2022}/code-block/ptsecurity-mosaic-code-block.mjs +0 -0
  569. /package/{esm2020 → esm2022}/code-block/public-api.mjs +0 -0
  570. /package/{esm2020 → esm2022}/core/animation/animation.mjs +0 -0
  571. /package/{esm2020 → esm2022}/core/animation/fade-animations.mjs +0 -0
  572. /package/{esm2020 → esm2022}/core/animation/index.mjs +0 -0
  573. /package/{esm2020 → esm2022}/core/animation/select-animations.mjs +0 -0
  574. /package/{esm2020 → esm2022}/core/common-behaviors/constructor.mjs +0 -0
  575. /package/{esm2020 → esm2022}/core/common-behaviors/error-state.mjs +0 -0
  576. /package/{esm2020 → esm2022}/core/common-behaviors/index.mjs +0 -0
  577. /package/{esm2020 → esm2022}/core/datetime/date-adapter.mjs +0 -0
  578. /package/{esm2020 → esm2022}/core/datetime/date-formats.mjs +0 -0
  579. /package/{esm2020 → esm2022}/core/datetime/index.mjs +0 -0
  580. /package/{esm2020 → esm2022}/core/forms/index.mjs +0 -0
  581. /package/{esm2020 → esm2022}/core/index.mjs +0 -0
  582. /package/{esm2020 → esm2022}/core/label/label-options.mjs +0 -0
  583. /package/{esm2020 → esm2022}/core/locales/index.mjs +0 -0
  584. /package/{esm2020 → esm2022}/core/option/index.mjs +0 -0
  585. /package/{esm2020 → esm2022}/core/pop-up/constants.mjs +0 -0
  586. /package/{esm2020 → esm2022}/core/pop-up/index.mjs +0 -0
  587. /package/{esm2020 → esm2022}/core/ptsecurity-mosaic-core.mjs +0 -0
  588. /package/{esm2020 → esm2022}/core/public-api.mjs +0 -0
  589. /package/{esm2020 → esm2022}/core/select/constants.mjs +0 -0
  590. /package/{esm2020 → esm2022}/core/select/errors.mjs +0 -0
  591. /package/{esm2020 → esm2022}/core/select/events.mjs +0 -0
  592. /package/{esm2020 → esm2022}/core/select/index.mjs +0 -0
  593. /package/{esm2020 → esm2022}/core/selection/constants.mjs +0 -0
  594. /package/{esm2020 → esm2022}/core/selection/index.mjs +0 -0
  595. /package/{esm2020 → esm2022}/core/title/index.mjs +0 -0
  596. /package/{esm2020 → esm2022}/core/title/title-text-ref.mjs +0 -0
  597. /package/{esm2020 → esm2022}/core/utils/data-size/config.mjs +0 -0
  598. /package/{esm2020 → esm2022}/core/utils/data-size/index.mjs +0 -0
  599. /package/{esm2020 → esm2022}/core/utils/data-size/size.mjs +0 -0
  600. /package/{esm2020 → esm2022}/core/utils/index.mjs +0 -0
  601. /package/{esm2020 → esm2022}/core/utils/public-api.mjs +0 -0
  602. /package/{esm2020 → esm2022}/core/utils/utils.mjs +0 -0
  603. /package/{esm2020 → esm2022}/core/validation/index.mjs +0 -0
  604. /package/{esm2020 → esm2022}/core/validation/validation.mjs +0 -0
  605. /package/{esm2020 → esm2022}/datepicker/datepicker-animations.mjs +0 -0
  606. /package/{esm2020 → esm2022}/datepicker/datepicker-errors.mjs +0 -0
  607. /package/{esm2020 → esm2022}/datepicker/index.mjs +0 -0
  608. /package/{esm2020 → esm2022}/datepicker/ptsecurity-mosaic-datepicker.mjs +0 -0
  609. /package/{esm2020 → esm2022}/datepicker/public-api.mjs +0 -0
  610. /package/{esm2020 → esm2022}/divider/index.mjs +0 -0
  611. /package/{esm2020 → esm2022}/divider/ptsecurity-mosaic-divider.mjs +0 -0
  612. /package/{esm2020 → esm2022}/divider/public-api.mjs +0 -0
  613. /package/{esm2020 → esm2022}/dl/index.mjs +0 -0
  614. /package/{esm2020 → esm2022}/dl/ptsecurity-mosaic-dl.mjs +0 -0
  615. /package/{esm2020 → esm2022}/dl/public-api.mjs +0 -0
  616. /package/{esm2020 → esm2022}/dropdown/dropdown-animations.mjs +0 -0
  617. /package/{esm2020 → esm2022}/dropdown/dropdown-errors.mjs +0 -0
  618. /package/{esm2020 → esm2022}/dropdown/dropdown.types.mjs +0 -0
  619. /package/{esm2020 → esm2022}/dropdown/index.mjs +0 -0
  620. /package/{esm2020 → esm2022}/dropdown/ptsecurity-mosaic-dropdown.mjs +0 -0
  621. /package/{esm2020 → esm2022}/dropdown/public-api.mjs +0 -0
  622. /package/{esm2020 → esm2022}/ellipsis-center/index.mjs +0 -0
  623. /package/{esm2020 → esm2022}/ellipsis-center/ptsecurity-mosaic-ellipsis-center.mjs +0 -0
  624. /package/{esm2020 → esm2022}/ellipsis-center/public-api.mjs +0 -0
  625. /package/{esm2020 → esm2022}/file-upload/file-upload.mjs +0 -0
  626. /package/{esm2020 → esm2022}/file-upload/index.mjs +0 -0
  627. /package/{esm2020 → esm2022}/file-upload/ptsecurity-mosaic-file-upload.mjs +0 -0
  628. /package/{esm2020 → esm2022}/file-upload/public-api.mjs +0 -0
  629. /package/{esm2020 → esm2022}/form-field/form-field-control.mjs +0 -0
  630. /package/{esm2020 → esm2022}/form-field/form-field-errors.mjs +0 -0
  631. /package/{esm2020 → esm2022}/form-field/index.mjs +0 -0
  632. /package/{esm2020 → esm2022}/form-field/ptsecurity-mosaic-form-field.mjs +0 -0
  633. /package/{esm2020 → esm2022}/form-field/public-api.mjs +0 -0
  634. /package/{esm2020 → esm2022}/icon/index.mjs +0 -0
  635. /package/{esm2020 → esm2022}/icon/ptsecurity-mosaic-icon.mjs +0 -0
  636. /package/{esm2020 → esm2022}/icon/public-api.mjs +0 -0
  637. /package/{esm2020 → esm2022}/index.mjs +0 -0
  638. /package/{esm2020 → esm2022}/input/index.mjs +0 -0
  639. /package/{esm2020 → esm2022}/input/input-errors.mjs +0 -0
  640. /package/{esm2020 → esm2022}/input/input-value-accessor.mjs +0 -0
  641. /package/{esm2020 → esm2022}/input/ptsecurity-mosaic-input.mjs +0 -0
  642. /package/{esm2020 → esm2022}/input/public-api.mjs +0 -0
  643. /package/{esm2020 → esm2022}/link/index.mjs +0 -0
  644. /package/{esm2020 → esm2022}/link/ptsecurity-mosaic-link.mjs +0 -0
  645. /package/{esm2020 → esm2022}/link/public-api.mjs +0 -0
  646. /package/{esm2020 → esm2022}/list/index.mjs +0 -0
  647. /package/{esm2020 → esm2022}/list/ptsecurity-mosaic-list.mjs +0 -0
  648. /package/{esm2020 → esm2022}/list/public-api.mjs +0 -0
  649. /package/{esm2020 → esm2022}/loader-overlay/index.mjs +0 -0
  650. /package/{esm2020 → esm2022}/loader-overlay/ptsecurity-mosaic-loader-overlay.mjs +0 -0
  651. /package/{esm2020 → esm2022}/loader-overlay/public-api.mjs +0 -0
  652. /package/{esm2020 → esm2022}/markdown/index.mjs +0 -0
  653. /package/{esm2020 → esm2022}/markdown/markdown.values.mjs +0 -0
  654. /package/{esm2020 → esm2022}/markdown/ptsecurity-mosaic-markdown.mjs +0 -0
  655. /package/{esm2020 → esm2022}/markdown/public-api.mjs +0 -0
  656. /package/{esm2020 → esm2022}/modal/index.mjs +0 -0
  657. /package/{esm2020 → esm2022}/modal/modal-ref.class.mjs +0 -0
  658. /package/{esm2020 → esm2022}/modal/modal-util.mjs +0 -0
  659. /package/{esm2020 → esm2022}/modal/modal.type.mjs +0 -0
  660. /package/{esm2020 → esm2022}/modal/ptsecurity-mosaic-modal.mjs +0 -0
  661. /package/{esm2020 → esm2022}/modal/public-api.mjs +0 -0
  662. /package/{esm2020 → esm2022}/navbar/index.mjs +0 -0
  663. /package/{esm2020 → esm2022}/navbar/ptsecurity-mosaic-navbar.mjs +0 -0
  664. /package/{esm2020 → esm2022}/navbar/public-api.mjs +0 -0
  665. /package/{esm2020 → esm2022}/navbar/vertical-navbar.animation.mjs +0 -0
  666. /package/{esm2020 → esm2022}/popover/index.mjs +0 -0
  667. /package/{esm2020 → esm2022}/popover/popover-animations.mjs +0 -0
  668. /package/{esm2020 → esm2022}/popover/ptsecurity-mosaic-popover.mjs +0 -0
  669. /package/{esm2020 → esm2022}/popover/public-api.mjs +0 -0
  670. /package/{esm2020 → esm2022}/progress-bar/index.mjs +0 -0
  671. /package/{esm2020 → esm2022}/progress-bar/ptsecurity-mosaic-progress-bar.mjs +0 -0
  672. /package/{esm2020 → esm2022}/progress-bar/public-api.mjs +0 -0
  673. /package/{esm2020 → esm2022}/progress-spinner/index.mjs +0 -0
  674. /package/{esm2020 → esm2022}/progress-spinner/ptsecurity-mosaic-progress-spinner.mjs +0 -0
  675. /package/{esm2020 → esm2022}/progress-spinner/public-api.mjs +0 -0
  676. /package/{esm2020 → esm2022}/ptsecurity-mosaic.mjs +0 -0
  677. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  678. /package/{esm2020 → esm2022}/radio/index.mjs +0 -0
  679. /package/{esm2020 → esm2022}/radio/ptsecurity-mosaic-radio.mjs +0 -0
  680. /package/{esm2020 → esm2022}/radio/public-api.mjs +0 -0
  681. /package/{esm2020 → esm2022}/select/index.mjs +0 -0
  682. /package/{esm2020 → esm2022}/select/ptsecurity-mosaic-select.mjs +0 -0
  683. /package/{esm2020 → esm2022}/select/public-api.mjs +0 -0
  684. /package/{esm2020 → esm2022}/sidebar/index.mjs +0 -0
  685. /package/{esm2020 → esm2022}/sidebar/ptsecurity-mosaic-sidebar.mjs +0 -0
  686. /package/{esm2020 → esm2022}/sidebar/public-api.mjs +0 -0
  687. /package/{esm2020 → esm2022}/sidebar/sidebar-animations.mjs +0 -0
  688. /package/{esm2020 → esm2022}/sidepanel/index.mjs +0 -0
  689. /package/{esm2020 → esm2022}/sidepanel/ptsecurity-mosaic-sidepanel.mjs +0 -0
  690. /package/{esm2020 → esm2022}/sidepanel/public-api.mjs +0 -0
  691. /package/{esm2020 → esm2022}/sidepanel/sidepanel-animations.mjs +0 -0
  692. /package/{esm2020 → esm2022}/sidepanel/sidepanel-config.mjs +0 -0
  693. /package/{esm2020 → esm2022}/sidepanel/sidepanel-ref.mjs +0 -0
  694. /package/{esm2020 → esm2022}/splitter/index.mjs +0 -0
  695. /package/{esm2020 → esm2022}/splitter/ptsecurity-mosaic-splitter.mjs +0 -0
  696. /package/{esm2020 → esm2022}/splitter/public-api.mjs +0 -0
  697. /package/{esm2020 → esm2022}/table/index.mjs +0 -0
  698. /package/{esm2020 → esm2022}/table/ptsecurity-mosaic-table.mjs +0 -0
  699. /package/{esm2020 → esm2022}/table/public-api.mjs +0 -0
  700. /package/{esm2020 → esm2022}/tabs/index.mjs +0 -0
  701. /package/{esm2020 → esm2022}/tabs/ptsecurity-mosaic-tabs.mjs +0 -0
  702. /package/{esm2020 → esm2022}/tabs/public-api.mjs +0 -0
  703. /package/{esm2020 → esm2022}/tabs/tab-nav-bar/index.mjs +0 -0
  704. /package/{esm2020 → esm2022}/tabs/tabs-animations.mjs +0 -0
  705. /package/{esm2020 → esm2022}/tags/index.mjs +0 -0
  706. /package/{esm2020 → esm2022}/tags/ptsecurity-mosaic-tags.mjs +0 -0
  707. /package/{esm2020 → esm2022}/tags/public-api.mjs +0 -0
  708. /package/{esm2020 → esm2022}/tags/tag-default-options.mjs +0 -0
  709. /package/{esm2020 → esm2022}/tags/tag-text-control.mjs +0 -0
  710. /package/{esm2020 → esm2022}/textarea/index.mjs +0 -0
  711. /package/{esm2020 → esm2022}/textarea/ptsecurity-mosaic-textarea.mjs +0 -0
  712. /package/{esm2020 → esm2022}/textarea/public-api.mjs +0 -0
  713. /package/{esm2020 → esm2022}/timepicker/index.mjs +0 -0
  714. /package/{esm2020 → esm2022}/timepicker/ptsecurity-mosaic-timepicker.mjs +0 -0
  715. /package/{esm2020 → esm2022}/timepicker/public-api.mjs +0 -0
  716. /package/{esm2020 → esm2022}/timepicker/timepicker.constants.mjs +0 -0
  717. /package/{esm2020 → esm2022}/timezone/index.mjs +0 -0
  718. /package/{esm2020 → esm2022}/timezone/ptsecurity-mosaic-timezone.mjs +0 -0
  719. /package/{esm2020 → esm2022}/timezone/public-api.mjs +0 -0
  720. /package/{esm2020 → esm2022}/timezone/timezone.models.mjs +0 -0
  721. /package/{esm2020 → esm2022}/timezone/timezone.utils.mjs +0 -0
  722. /package/{esm2020 → esm2022}/title/index.mjs +0 -0
  723. /package/{esm2020 → esm2022}/title/ptsecurity-mosaic-title.mjs +0 -0
  724. /package/{esm2020 → esm2022}/title/public-api.mjs +0 -0
  725. /package/{esm2020 → esm2022}/toast/index.mjs +0 -0
  726. /package/{esm2020 → esm2022}/toast/ptsecurity-mosaic-toast.mjs +0 -0
  727. /package/{esm2020 → esm2022}/toast/public-api.mjs +0 -0
  728. /package/{esm2020 → esm2022}/toast/toast-animations.mjs +0 -0
  729. /package/{esm2020 → esm2022}/toast/toast.type.mjs +0 -0
  730. /package/{esm2020 → esm2022}/toggle/index.mjs +0 -0
  731. /package/{esm2020 → esm2022}/toggle/ptsecurity-mosaic-toggle.mjs +0 -0
  732. /package/{esm2020 → esm2022}/toggle/public-api.mjs +0 -0
  733. /package/{esm2020 → esm2022}/tooltip/index.mjs +0 -0
  734. /package/{esm2020 → esm2022}/tooltip/ptsecurity-mosaic-tooltip.mjs +0 -0
  735. /package/{esm2020 → esm2022}/tooltip/public-api.mjs +0 -0
  736. /package/{esm2020 → esm2022}/tooltip/tooltip.animations.mjs +0 -0
  737. /package/{esm2020 → esm2022}/tree/control/base-tree-control.mjs +0 -0
  738. /package/{esm2020 → esm2022}/tree/control/flat-tree-control.mjs +0 -0
  739. /package/{esm2020 → esm2022}/tree/control/nested-tree-control.mjs +0 -0
  740. /package/{esm2020 → esm2022}/tree/control/tree-control.mjs +0 -0
  741. /package/{esm2020 → esm2022}/tree/data-source/nested-data-source.mjs +0 -0
  742. /package/{esm2020 → esm2022}/tree/index.mjs +0 -0
  743. /package/{esm2020 → esm2022}/tree/ptsecurity-mosaic-tree.mjs +0 -0
  744. /package/{esm2020 → esm2022}/tree/public-api.mjs +0 -0
  745. /package/{esm2020 → esm2022}/tree/tree-errors.mjs +0 -0
  746. /package/{esm2020 → esm2022}/tree-select/index.mjs +0 -0
  747. /package/{esm2020 → esm2022}/tree-select/ptsecurity-mosaic-tree-select.mjs +0 -0
  748. /package/{esm2020 → esm2022}/tree-select/public-api.mjs +0 -0
  749. /package/{fesm2015 → fesm2022}/ptsecurity-mosaic.mjs +0 -0
  750. /package/{fesm2015 → fesm2022}/ptsecurity-mosaic.mjs.map +0 -0
@@ -1,128 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { Directive, Inject, Optional, Host, ContentChild, NgModule } from '@angular/core';
3
- import { McTooltipTrigger, MC_TOOLTIP_SCROLL_STRATEGY, McToolTipModule } from '@ptsecurity/mosaic/tooltip';
4
- import { MC_TITLE_TEXT_REF } from '@ptsecurity/mosaic/core';
5
- import { Subject, Subscription, throttleTime, Observable } from 'rxjs';
6
- import { debounceTime } from 'rxjs/operators';
7
- import * as i1 from '@angular/cdk/overlay';
8
- import * as i2 from '@angular/cdk/a11y';
9
- import * as i3 from '@angular/cdk/bidi';
10
-
11
- class McTitleDirective extends McTooltipTrigger {
12
- constructor(overlay, elementRef, ngZone, scrollDispatcher, hostView, focusMonitor, scrollStrategy, direction, componentInstance) {
13
- super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);
14
- this.focusMonitor = focusMonitor;
15
- this.componentInstance = componentInstance;
16
- this.resizeStream = new Subject();
17
- this.debounceInterval = 100;
18
- this.resizeSubscription = Subscription.EMPTY;
19
- this.mutationSubscription = Subscription.EMPTY;
20
- this.focusMonitorSubscription = Subscription.EMPTY;
21
- }
22
- get isOverflown() {
23
- return this.parent.clientWidth < this.child.scrollWidth;
24
- }
25
- get viewValue() {
26
- return (this.parent.textContent || '').trim();
27
- }
28
- get parent() {
29
- return this.parentContainer.nativeElement || this.parentContainer;
30
- }
31
- get child() {
32
- return this.childContainer.nativeElement || this.childContainer;
33
- }
34
- ngAfterViewInit() {
35
- var _a, _b;
36
- this.parentContainer = this.parentContainer || ((_a = this.componentInstance) === null || _a === void 0 ? void 0 : _a.parentTextElement) || this.elementRef;
37
- this.childContainer = this.childContainer || ((_b = this.componentInstance) === null || _b === void 0 ? void 0 : _b.textElement) || this.elementRef;
38
- this.content = this.viewValue;
39
- this.resizeSubscription = this.resizeStream
40
- .pipe(debounceTime(this.debounceInterval))
41
- .subscribe(() => this.disabled = !this.isOverflown);
42
- this.mutationSubscription = this.createMutationObserver()
43
- .pipe(throttleTime(this.debounceInterval))
44
- .subscribe(() => {
45
- this.disabled = !this.isOverflown;
46
- this.content = this.viewValue;
47
- });
48
- this.focusMonitorSubscription = this.focusMonitor.monitor(this.elementRef).subscribe((origin) => (origin === 'keyboard')
49
- ? this.handleElementEnter() : this.hideTooltip());
50
- }
51
- ngOnDestroy() {
52
- super.ngOnDestroy();
53
- this.resizeSubscription.unsubscribe();
54
- this.mutationSubscription.unsubscribe();
55
- this.focusMonitorSubscription.unsubscribe();
56
- this.focusMonitor.stopMonitoring(this.elementRef);
57
- }
58
- handleElementEnter() {
59
- this.disabled = !this.isOverflown;
60
- }
61
- hideTooltip() {
62
- this.disabled = true;
63
- }
64
- createMutationObserver() {
65
- return new Observable((observer) => {
66
- const mutationObserver = new MutationObserver((mutations) => observer.next(mutations));
67
- mutationObserver.observe(this.parent, {
68
- characterData: true, attributes: false, childList: true, subtree: true
69
- });
70
- return () => mutationObserver.disconnect();
71
- });
72
- }
73
- }
74
- /** @nocollapse */ McTitleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McTitleDirective, deps: [{ token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: i2.FocusMonitor }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }, { token: MC_TITLE_TEXT_REF, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
75
- /** @nocollapse */ McTitleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: McTitleDirective, selector: "[mc-title]", host: { listeners: { "mouseenter": "handleElementEnter()", "mouseleave": "hideTooltip()", "window:resize": "resizeStream.next($event)" } }, queries: [{ propertyName: "childContainer", first: true, predicate: ["mcTitleText"], descendants: true, static: true }, { propertyName: "parentContainer", first: true, predicate: ["mcTitleContainer"], descendants: true }], exportAs: ["mcTitle"], usesInheritance: true, ngImport: i0 });
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McTitleDirective, decorators: [{
77
- type: Directive,
78
- args: [{
79
- selector: '[mc-title]',
80
- exportAs: 'mcTitle',
81
- host: {
82
- '(mouseenter)': 'handleElementEnter()',
83
- '(mouseleave)': 'hideTooltip()',
84
- '(window:resize)': 'resizeStream.next($event)'
85
- }
86
- }]
87
- }], ctorParameters: function () {
88
- return [{ type: i1.Overlay }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.ScrollDispatcher }, { type: i0.ViewContainerRef }, { type: i2.FocusMonitor }, { type: undefined, decorators: [{
89
- type: Inject,
90
- args: [MC_TOOLTIP_SCROLL_STRATEGY]
91
- }] }, { type: i3.Directionality, decorators: [{
92
- type: Optional
93
- }] }, { type: undefined, decorators: [{
94
- type: Host
95
- }, {
96
- type: Optional
97
- }, {
98
- type: Inject,
99
- args: [MC_TITLE_TEXT_REF]
100
- }] }];
101
- }, propDecorators: { childContainer: [{
102
- type: ContentChild,
103
- args: ['mcTitleText', { descendants: true, static: true }]
104
- }], parentContainer: [{
105
- type: ContentChild,
106
- args: ['mcTitleContainer']
107
- }] } });
108
-
109
- class McTitleModule {
110
- }
111
- /** @nocollapse */ McTitleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McTitleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
112
- /** @nocollapse */ McTitleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: McTitleModule, declarations: [McTitleDirective], imports: [McToolTipModule], exports: [McTitleDirective] });
113
- /** @nocollapse */ McTitleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McTitleModule, imports: [McToolTipModule] });
114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McTitleModule, decorators: [{
115
- type: NgModule,
116
- args: [{
117
- imports: [McToolTipModule],
118
- declarations: [McTitleDirective],
119
- exports: [McTitleDirective]
120
- }]
121
- }] });
122
-
123
- /**
124
- * Generated bundle index. Do not edit.
125
- */
126
-
127
- export { McTitleDirective, McTitleModule };
128
- //# sourceMappingURL=ptsecurity-mosaic-title.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ptsecurity-mosaic-title.mjs","sources":["../../../packages/mosaic/title/title.directive.ts","../../../packages/mosaic/title/title.module.ts","../../../packages/mosaic/title/ptsecurity-mosaic-title.ts"],"sourcesContent":["import { FocusMonitor } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n ContentChild,\n Directive,\n ElementRef,\n Host,\n Inject,\n NgZone,\n Optional,\n ViewContainerRef\n} from '@angular/core';\nimport { MC_TITLE_TEXT_REF, McTitleTextRef } from '@ptsecurity/mosaic/core';\nimport { MC_TOOLTIP_SCROLL_STRATEGY, McTooltipTrigger } from '@ptsecurity/mosaic/tooltip';\nimport { Observable, Subject, Subscription, throttleTime } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\n\n\n@Directive({\n selector: '[mc-title]',\n exportAs: 'mcTitle',\n host: {\n '(mouseenter)': 'handleElementEnter()',\n '(mouseleave)': 'hideTooltip()',\n '(window:resize)': 'resizeStream.next($event)'\n }\n})\nexport class McTitleDirective extends McTooltipTrigger implements AfterViewInit {\n get isOverflown(): boolean {\n return this.parent.clientWidth < this.child.scrollWidth;\n }\n\n get viewValue(): string {\n return (this.parent.textContent || '').trim();\n }\n\n get parent(): HTMLElement {\n return this.parentContainer.nativeElement || this.parentContainer;\n }\n\n get child(): HTMLElement {\n return this.childContainer.nativeElement || this.childContainer;\n }\n\n readonly resizeStream = new Subject<Event>();\n\n private readonly debounceInterval: number = 100;\n\n private resizeSubscription = Subscription.EMPTY;\n private mutationSubscription = Subscription.EMPTY;\n private focusMonitorSubscription = Subscription.EMPTY;\n\n @ContentChild('mcTitleText', { descendants: true, static: true })\n private childContainer: ElementRef;\n\n @ContentChild('mcTitleContainer')\n private parentContainer: ElementRef;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n private focusMonitor: FocusMonitor,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality,\n @Host() @Optional() @Inject(MC_TITLE_TEXT_REF) private componentInstance?: McTitleTextRef\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n }\n\n ngAfterViewInit() {\n this.parentContainer = this.parentContainer || this.componentInstance?.parentTextElement || this.elementRef;\n this.childContainer = this.childContainer || this.componentInstance?.textElement || this.elementRef;\n this.content = this.viewValue;\n\n this.resizeSubscription = this.resizeStream\n .pipe(debounceTime(this.debounceInterval))\n .subscribe(() => this.disabled = !this.isOverflown);\n\n this.mutationSubscription = this.createMutationObserver()\n .pipe(throttleTime(this.debounceInterval))\n .subscribe(() => {\n this.disabled = !this.isOverflown;\n this.content = this.viewValue;\n });\n\n this.focusMonitorSubscription = this.focusMonitor.monitor(this.elementRef).subscribe(\n (origin) => (origin === 'keyboard')\n ? this.handleElementEnter() : this.hideTooltip()\n );\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n\n this.resizeSubscription.unsubscribe();\n this.mutationSubscription.unsubscribe();\n this.focusMonitorSubscription.unsubscribe();\n this.focusMonitor.stopMonitoring(this.elementRef);\n }\n\n handleElementEnter() {\n this.disabled = !this.isOverflown;\n }\n\n hideTooltip() {\n this.disabled = true;\n }\n\n private createMutationObserver(): Observable<MutationRecord[]> {\n return new Observable((observer) => {\n const mutationObserver = new MutationObserver(\n (mutations) => observer.next(mutations)\n );\n mutationObserver.observe(this.parent, {\n characterData: true, attributes: false, childList: true, subtree: true\n });\n\n return () => mutationObserver.disconnect();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { McToolTipModule } from '@ptsecurity/mosaic/tooltip';\n\nimport { McTitleDirective } from './title.directive';\n\n\n@NgModule({\n imports: [McToolTipModule],\n declarations: [McTitleDirective],\n exports: [McTitleDirective]\n})\nexport class McTitleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,379 +0,0 @@
1
- import { ComponentPortal } from '@angular/cdk/portal';
2
- import * as i0 from '@angular/core';
3
- import { InjectionToken, Injector, ViewContainerRef, Component, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, Injectable, Inject, Optional, TemplateRef, forwardRef, NgModule } from '@angular/core';
4
- import { BehaviorSubject, timer, Subject, merge } from 'rxjs';
5
- import { filter, takeUntil } from 'rxjs/operators';
6
- import * as i1 from '@angular/cdk/overlay';
7
- import { OverlayModule } from '@angular/cdk/overlay';
8
- import * as i2 from '@angular/cdk/a11y';
9
- import { A11yModule } from '@angular/cdk/a11y';
10
- import * as i3 from '@angular/common';
11
- import { CommonModule } from '@angular/common';
12
- import * as i5 from '@ptsecurity/mosaic/button';
13
- import { McButtonModule } from '@ptsecurity/mosaic/button';
14
- import * as i4 from '@ptsecurity/mosaic/icon';
15
- import { McIconModule } from '@ptsecurity/mosaic/icon';
16
- import { ThemePalette } from '@ptsecurity/mosaic/core';
17
- import { trigger, state, style, transition, animate } from '@angular/animations';
18
-
19
- var McToastPosition;
20
- (function (McToastPosition) {
21
- McToastPosition["TOP_RIGHT"] = "top-right";
22
- McToastPosition["TOP_LEFT"] = "top-left";
23
- McToastPosition["TOP_CENTER"] = "top-center";
24
- McToastPosition["BOTTOM_RIGHT"] = "bottom-right";
25
- McToastPosition["BOTTOM_LEFT"] = "bottom-left";
26
- McToastPosition["BOTTOM_CENTER"] = "bottom-center";
27
- McToastPosition["CENTER"] = "center";
28
- })(McToastPosition || (McToastPosition = {}));
29
- class McToastData {
30
- }
31
- const MC_TOAST_CONFIG = new InjectionToken('mc-toast-config');
32
-
33
- class McToastContainerComponent {
34
- constructor(injector, changeDetectorRef) {
35
- this.injector = injector;
36
- this.changeDetectorRef = changeDetectorRef;
37
- }
38
- createToast(data, componentType, onTop) {
39
- const injector = this.getInjector(data);
40
- const index = onTop ? 0 : undefined;
41
- this.changeDetectorRef.markForCheck();
42
- return this.viewContainer.createComponent(componentType, { injector, index });
43
- }
44
- createTemplate(data, template, onTop) {
45
- const index = onTop ? 0 : undefined;
46
- return this.viewContainer.createEmbeddedView(template, { $implicit: data }, index);
47
- }
48
- remove(viewRef) {
49
- const index = this.viewContainer.indexOf(viewRef);
50
- if (index < 0) {
51
- return;
52
- }
53
- this.viewContainer.remove(index);
54
- }
55
- getInjector(data) {
56
- return Injector.create({
57
- providers: [{ provide: McToastData, useValue: data }],
58
- parent: this.injector
59
- });
60
- }
61
- }
62
- /** @nocollapse */ McToastContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastContainerComponent, deps: [{ token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
63
- /** @nocollapse */ McToastContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: McToastContainerComponent, selector: "mc-toast-container", host: { classAttribute: "mc-toast-container" }, viewQueries: [{ propertyName: "viewContainer", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: '<ng-container #container></ng-container>', isInline: true, styles: [".mc-toast-container{display:flex;flex-direction:column;gap:var(--mc-toast-size-gap, 12px)}.cdk-overlay-container .mc-toast-overlay,.cdk-overlay-container .mc-toast-overlay~*:not(.mc-modal-overlay,.mc-sidepanel-overlay,.cdk-overlay-backdrop){z-index:1010}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastContainerComponent, decorators: [{
65
- type: Component,
66
- args: [{ selector: 'mc-toast-container', template: '<ng-container #container></ng-container>', host: {
67
- class: 'mc-toast-container'
68
- }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".mc-toast-container{display:flex;flex-direction:column;gap:var(--mc-toast-size-gap, 12px)}.cdk-overlay-container .mc-toast-overlay,.cdk-overlay-container .mc-toast-overlay~*:not(.mc-modal-overlay,.mc-sidepanel-overlay,.cdk-overlay-backdrop){z-index:1010}\n"] }]
69
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { viewContainer: [{
70
- type: ViewChild,
71
- args: ['container', { static: true, read: ViewContainerRef }]
72
- }] } });
73
-
74
- const MC_TOAST_FACTORY = new InjectionToken('McToastFactory');
75
- const defaultToastConfig = {
76
- position: McToastPosition.TOP_RIGHT,
77
- duration: 5000,
78
- delay: 2000,
79
- onTop: false
80
- };
81
- const INDENT_SIZE = 16;
82
- const CHECK_INTERVAL = 500;
83
- let templateId = 0;
84
- class McToastService {
85
- constructor(overlay, injector, toastFactory, toastConfig) {
86
- this.overlay = overlay;
87
- this.injector = injector;
88
- this.toastFactory = toastFactory;
89
- this.toastConfig = toastConfig;
90
- this.hovered = new BehaviorSubject(false);
91
- this.focused = new BehaviorSubject(false);
92
- this.toastsDict = {};
93
- this.templatesDict = {};
94
- this.processToasts = () => {
95
- for (const toast of this.toasts.filter((item) => item.instance.ttl > 0)) {
96
- toast.instance.ttl -= CHECK_INTERVAL;
97
- if (toast.instance.ttl <= 0) {
98
- this.hide(toast.instance.id);
99
- this.updateTTLAfterDelete();
100
- break;
101
- }
102
- }
103
- };
104
- this.toastConfig = toastConfig || defaultToastConfig;
105
- timer(CHECK_INTERVAL, CHECK_INTERVAL)
106
- .pipe(filter(() => this.toasts.length > 0 && !this.hovered.getValue() && !this.focused.getValue()))
107
- .subscribe(this.processToasts);
108
- }
109
- get toasts() {
110
- return Object.values(this.toastsDict)
111
- .filter((item) => !item.hostView.destroyed);
112
- }
113
- get templates() {
114
- return Object.values(this.templatesDict);
115
- }
116
- show(data, duration = this.toastConfig.duration, onTop = this.toastConfig.onTop) {
117
- this.prepareContainer();
118
- const componentRef = this.containerInstance.createToast(data, this.toastFactory, onTop);
119
- this.toastsDict[componentRef.instance.id] = componentRef;
120
- componentRef.instance.ttl = duration;
121
- componentRef.instance.delay = this.toastConfig.delay;
122
- return { ref: componentRef, id: componentRef.instance.id };
123
- }
124
- showTemplate(data, template, duration = this.toastConfig.duration, onTop = this.toastConfig.onTop) {
125
- this.prepareContainer();
126
- const viewRef = this.containerInstance.createTemplate(data, template, onTop);
127
- this.templatesDict[templateId] = viewRef;
128
- this.addRemoveTimer(templateId, duration);
129
- templateId++;
130
- return { ref: viewRef, id: templateId };
131
- }
132
- hide(id) {
133
- const componentRef = this.toastsDict[id];
134
- if (!componentRef) {
135
- return;
136
- }
137
- this.containerInstance.remove(componentRef.hostView);
138
- delete this.toastsDict[id];
139
- this.detachOverlay();
140
- }
141
- hideTemplate(id) {
142
- const viewRef = this.templatesDict[id];
143
- if (!viewRef) {
144
- return;
145
- }
146
- this.containerInstance.remove(viewRef);
147
- delete this.templatesDict[id];
148
- this.detachOverlay();
149
- }
150
- detachOverlay() {
151
- if (this.toasts.length !== 0) {
152
- return;
153
- }
154
- this.overlayRef.detach();
155
- }
156
- updateTTLAfterDelete() {
157
- this.toasts
158
- .filter((item) => item.instance.ttl > 0)
159
- .forEach((item) => item.instance.ttl = this.toastConfig.delay);
160
- }
161
- addRemoveTimer(id, duration) {
162
- setTimeout(() => this.hideTemplate(id), duration);
163
- }
164
- prepareContainer() {
165
- this.createOverlay();
166
- this.portal = this.portal || new ComponentPortal(McToastContainerComponent, null, this.injector);
167
- if (!this.overlayRef.hasAttached()) {
168
- this.containerInstance = this.overlayRef.attach(this.portal).instance;
169
- }
170
- }
171
- createOverlay() {
172
- if (this.overlayRef) {
173
- return this.overlayRef;
174
- }
175
- const positionStrategy = this.getPositionStrategy(this.toastConfig.position);
176
- this.overlayRef = this.overlay.create({ positionStrategy });
177
- this.overlayRef.hostElement.classList.add('mc-toast-overlay');
178
- }
179
- getPositionStrategy(position) {
180
- switch (position) {
181
- case McToastPosition.CENTER:
182
- return this.getCenter();
183
- case McToastPosition.BOTTOM_CENTER:
184
- return this.getBottomCenter();
185
- case McToastPosition.BOTTOM_LEFT:
186
- return this.getBottomLeft();
187
- case McToastPosition.BOTTOM_RIGHT:
188
- return this.getBottomRight();
189
- case McToastPosition.TOP_CENTER:
190
- return this.getTopCenter();
191
- case McToastPosition.TOP_LEFT:
192
- return this.getTopLeft();
193
- case McToastPosition.TOP_RIGHT:
194
- return this.getTopRight();
195
- default:
196
- return this.getTopCenter();
197
- }
198
- }
199
- getTopCenter() {
200
- return this.getGlobalOverlayPosition()
201
- .top(`${INDENT_SIZE}px`)
202
- .centerHorizontally();
203
- }
204
- getTopLeft() {
205
- return this.getGlobalOverlayPosition()
206
- .top(`${INDENT_SIZE}px`)
207
- .left(`${INDENT_SIZE}px`);
208
- }
209
- getTopRight() {
210
- return this.getGlobalOverlayPosition()
211
- .top(`${INDENT_SIZE}px`)
212
- .right(`${INDENT_SIZE}px`);
213
- }
214
- getBottomCenter() {
215
- return this.getGlobalOverlayPosition()
216
- .bottom(`${INDENT_SIZE}px`)
217
- .centerHorizontally();
218
- }
219
- getBottomLeft() {
220
- return this.getGlobalOverlayPosition()
221
- .bottom(`${INDENT_SIZE}px`)
222
- .left(`${INDENT_SIZE}px`);
223
- }
224
- getBottomRight() {
225
- return this.getGlobalOverlayPosition()
226
- .bottom(`${INDENT_SIZE}px`)
227
- .right(`${INDENT_SIZE}px`);
228
- }
229
- getCenter() {
230
- return this.getGlobalOverlayPosition()
231
- .centerVertically()
232
- .centerHorizontally();
233
- }
234
- getGlobalOverlayPosition() {
235
- return this.overlay.position().global();
236
- }
237
- }
238
- /** @nocollapse */ McToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastService, deps: [{ token: i1.Overlay }, { token: i0.Injector }, { token: MC_TOAST_FACTORY }, { token: MC_TOAST_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
239
- /** @nocollapse */ McToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastService, providedIn: 'root' });
240
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastService, decorators: [{
241
- type: Injectable,
242
- args: [{ providedIn: 'root' }]
243
- }], ctorParameters: function () {
244
- return [{ type: i1.Overlay }, { type: i0.Injector }, { type: undefined, decorators: [{
245
- type: Inject,
246
- args: [MC_TOAST_FACTORY]
247
- }] }, { type: undefined, decorators: [{
248
- type: Optional
249
- }, {
250
- type: Inject,
251
- args: [MC_TOAST_CONFIG]
252
- }] }];
253
- } });
254
-
255
- const mcToastAnimations = {
256
- toastState: trigger('state', [
257
- state('void', style({ transform: 'translateX(100%)', opacity: 0 })),
258
- transition('* => visible', animate('150ms ease-out', style({ transform: 'translateX(0%)', opacity: 1 }))),
259
- transition('* => void', animate('300ms ease-in', style({ transform: 'translateX(50%)', opacity: 0, 'max-height': 0 })))
260
- ])
261
- };
262
-
263
- let id = 0;
264
- class McToastComponent {
265
- constructor(data, service, elementRef, focusMonitor) {
266
- this.data = data;
267
- this.service = service;
268
- this.elementRef = elementRef;
269
- this.focusMonitor = focusMonitor;
270
- this.themePalette = ThemePalette;
271
- this.animationState = 'void';
272
- this.hovered = new BehaviorSubject(false);
273
- this.focused = new BehaviorSubject(false);
274
- this.id = id++;
275
- this.destroyed = new Subject();
276
- this.$implicit = this;
277
- this.animationState = 'visible';
278
- this.runFocusMonitor();
279
- this.hovered.subscribe(this.service.hovered);
280
- this.focused.subscribe(this.service.focused);
281
- merge(this.hovered, this.focused)
282
- .pipe(takeUntil(this.destroyed), filter((value) => value))
283
- .subscribe(() => {
284
- if (this.ttl === 0) {
285
- return;
286
- }
287
- this.ttl = this.ttl < this.delay ? this.delay : this.ttl;
288
- });
289
- }
290
- get toastStyle() {
291
- return {
292
- [`mc-toast_${this.data.style || 'info'}`]: true
293
- };
294
- }
295
- get hasDismiss() {
296
- return this.data.hasDismiss === undefined ? true : this.data.hasDismiss;
297
- }
298
- get isFocusedOrHovered() {
299
- return this.hovered.getValue() || this.focused.getValue();
300
- }
301
- ngOnDestroy() {
302
- this.stopFocusMonitor();
303
- this.hovered.next(false);
304
- this.focused.next(false);
305
- this.destroyed.next(true);
306
- }
307
- close() {
308
- this.service.hide(this.id);
309
- }
310
- isTemplateRef(value) {
311
- return value instanceof TemplateRef;
312
- }
313
- runFocusMonitor() {
314
- this.focusMonitor
315
- .monitor(this.elementRef.nativeElement, true)
316
- .subscribe((origin) => this.focused.next(!!origin));
317
- }
318
- stopFocusMonitor() {
319
- this.focusMonitor.stopMonitoring(this.elementRef.nativeElement);
320
- }
321
- }
322
- /** @nocollapse */ McToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastComponent, deps: [{ token: McToastData }, { token: forwardRef(() => McToastService) }, { token: i0.ElementRef }, { token: i2.FocusMonitor }], target: i0.ɵɵFactoryTarget.Component });
323
- /** @nocollapse */ McToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: McToastComponent, selector: "mc-toast", host: { listeners: { "mouseenter": "hovered.next(true)", "mouseleave": "hovered.next(false)", "keydown.esc": "close()" }, properties: { "class": "toastStyle", "class.mc-toast_dismissible": "hasDismiss", "@state": "animationState" }, classAttribute: "mc-toast" }, ngImport: i0, template: "<div class=\"mc-toast__wrapper\">\n <div class=\"mc-toast__icon-container\">\n <ng-container *ngIf=\"isTemplateRef(data.icon)\"\n [ngTemplateOutlet]=\"$any(data.icon)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!data.icon\">\n <ng-container [ngSwitch]=\"data.style\">\n <ng-container *ngSwitchCase=\"'info'\">\n <i mc-icon=\"mc-info_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'success'\">\n <i mc-icon=\"mc-success_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'warning'\">\n <i mc-icon=\"mc-error_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'error'\">\n <i mc-icon=\"mc-error_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n\n <div class=\"mc-toast__container\">\n <div *ngIf=\"data.title\" class=\"mc-toast__title\">\n <ng-container *ngIf=\"isTemplateRef(data.title)\"\n [ngTemplateOutlet]=\"$any(data.title)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.title)\">\n <button\n class=\"mc-button_transparent mc-toast__close\"\n mc-button\n *ngIf=\"hasDismiss\"\n (click)=\"close()\">\n\n <i class=\"mc-icon_light\" mc-icon=\"mc-close-L_16\" [color]=\"themePalette.Secondary\"></i>\n </button>\n <p>{{ data.title }}</p>\n </ng-container>\n </div>\n\n <div *ngIf=\"data.caption\" class=\"mc-toast__caption\">\n <ng-container *ngIf=\"isTemplateRef(data.caption)\"\n [ngTemplateOutlet]=\"$any(data.caption)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.caption)\">{{ data.caption }}</ng-container>\n </div>\n\n <div *ngIf=\"data.content\" class=\"mc-toast__content\">\n <ng-container *ngIf=\"isTemplateRef(data.content)\"\n [ngTemplateOutlet]=\"$any(data.content)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.content)\">{{ data.content }}</ng-container>\n </div>\n\n <div *ngIf=\"data.actions\" class=\"mc-toast__actions\">\n <ng-container *ngIf=\"isTemplateRef(data.actions)\"\n [ngTemplateOutlet]=\"$any(data.actions)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.actions)\">{{ data.actions }}</ng-container>\n </div>\n </div>\n</div>\n", styles: [".mc-toast{box-sizing:border-box;z-index:1070;max-height:200px;height:auto}.mc-toast__wrapper{box-sizing:border-box;display:flex;flex:1 1 auto;width:var(--mc-toast-size-width, 360px);padding-right:var(--mc-toast-size-padding-right, 16px);padding-left:var(--mc-toast-size-padding-left, 12px);border-width:var(--mc-toast-size-border-width, 1px);border-style:solid;border-radius:var(--mc-toast-size-border-radius, 3px)}.mc-toast__icon-container{padding-right:var(--mc-toast-size-icon-margin, 8px);padding-top:var(--mc-toast-size-padding-vertical, 12px);padding-bottom:var(--mc-toast-size-padding-vertical, 12px)}.mc-toast__container{width:100%;padding-top:var(--mc-toast-size-padding-vertical, 12px);padding-bottom:var(--mc-toast-size-padding-vertical, 12px)}.mc-toast__title>p{margin:0}.mc-toast__content{display:flex;flex-direction:column}.mc-toast__actions{margin-top:var(--mc-toast-size-actionbar-margin, 8px)}.mc-toast__actions>*{margin-right:var(--mc-toast-size-actionbar-gap, 12px)}.mc-toast__close{float:right;width:var(--mc-toast-size-close-button-width, 32px);height:var(--mc-toast-size-close-button-width, 32px);margin:-6px -8px -6px 8px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i4.McIcon, selector: "[mc-icon]", inputs: ["color"] }, { kind: "directive", type: i4.McIconCSSStyler, selector: "[mc-icon]" }, { kind: "component", type: i5.McButton, selector: "[mc-button]", inputs: ["color", "tabIndex", "disabled"] }, { kind: "directive", type: i5.McButtonCssStyler, selector: "[mc-button]" }], animations: [mcToastAnimations.toastState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
324
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastComponent, decorators: [{
325
- type: Component,
326
- args: [{ selector: 'mc-toast', host: {
327
- class: 'mc-toast',
328
- '[class]': 'toastStyle',
329
- '[class.mc-toast_dismissible]': 'hasDismiss',
330
- '[@state]': 'animationState',
331
- '(mouseenter)': 'hovered.next(true)',
332
- '(mouseleave)': 'hovered.next(false)',
333
- '(keydown.esc)': 'close()'
334
- }, animations: [mcToastAnimations.toastState], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"mc-toast__wrapper\">\n <div class=\"mc-toast__icon-container\">\n <ng-container *ngIf=\"isTemplateRef(data.icon)\"\n [ngTemplateOutlet]=\"$any(data.icon)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!data.icon\">\n <ng-container [ngSwitch]=\"data.style\">\n <ng-container *ngSwitchCase=\"'info'\">\n <i mc-icon=\"mc-info_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'success'\">\n <i mc-icon=\"mc-success_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'warning'\">\n <i mc-icon=\"mc-error_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'error'\">\n <i mc-icon=\"mc-error_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n\n <div class=\"mc-toast__container\">\n <div *ngIf=\"data.title\" class=\"mc-toast__title\">\n <ng-container *ngIf=\"isTemplateRef(data.title)\"\n [ngTemplateOutlet]=\"$any(data.title)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.title)\">\n <button\n class=\"mc-button_transparent mc-toast__close\"\n mc-button\n *ngIf=\"hasDismiss\"\n (click)=\"close()\">\n\n <i class=\"mc-icon_light\" mc-icon=\"mc-close-L_16\" [color]=\"themePalette.Secondary\"></i>\n </button>\n <p>{{ data.title }}</p>\n </ng-container>\n </div>\n\n <div *ngIf=\"data.caption\" class=\"mc-toast__caption\">\n <ng-container *ngIf=\"isTemplateRef(data.caption)\"\n [ngTemplateOutlet]=\"$any(data.caption)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.caption)\">{{ data.caption }}</ng-container>\n </div>\n\n <div *ngIf=\"data.content\" class=\"mc-toast__content\">\n <ng-container *ngIf=\"isTemplateRef(data.content)\"\n [ngTemplateOutlet]=\"$any(data.content)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.content)\">{{ data.content }}</ng-container>\n </div>\n\n <div *ngIf=\"data.actions\" class=\"mc-toast__actions\">\n <ng-container *ngIf=\"isTemplateRef(data.actions)\"\n [ngTemplateOutlet]=\"$any(data.actions)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.actions)\">{{ data.actions }}</ng-container>\n </div>\n </div>\n</div>\n", styles: [".mc-toast{box-sizing:border-box;z-index:1070;max-height:200px;height:auto}.mc-toast__wrapper{box-sizing:border-box;display:flex;flex:1 1 auto;width:var(--mc-toast-size-width, 360px);padding-right:var(--mc-toast-size-padding-right, 16px);padding-left:var(--mc-toast-size-padding-left, 12px);border-width:var(--mc-toast-size-border-width, 1px);border-style:solid;border-radius:var(--mc-toast-size-border-radius, 3px)}.mc-toast__icon-container{padding-right:var(--mc-toast-size-icon-margin, 8px);padding-top:var(--mc-toast-size-padding-vertical, 12px);padding-bottom:var(--mc-toast-size-padding-vertical, 12px)}.mc-toast__container{width:100%;padding-top:var(--mc-toast-size-padding-vertical, 12px);padding-bottom:var(--mc-toast-size-padding-vertical, 12px)}.mc-toast__title>p{margin:0}.mc-toast__content{display:flex;flex-direction:column}.mc-toast__actions{margin-top:var(--mc-toast-size-actionbar-margin, 8px)}.mc-toast__actions>*{margin-right:var(--mc-toast-size-actionbar-gap, 12px)}.mc-toast__close{float:right;width:var(--mc-toast-size-close-button-width, 32px);height:var(--mc-toast-size-close-button-width, 32px);margin:-6px -8px -6px 8px}\n"] }]
335
- }], ctorParameters: function () {
336
- return [{ type: McToastData }, { type: McToastService, decorators: [{
337
- type: Inject,
338
- args: [forwardRef(() => McToastService)]
339
- }] }, { type: i0.ElementRef }, { type: i2.FocusMonitor }];
340
- } });
341
-
342
- class McToastModule {
343
- }
344
- /** @nocollapse */ McToastModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
345
- /** @nocollapse */ McToastModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: McToastModule, declarations: [McToastComponent,
346
- McToastContainerComponent], imports: [CommonModule,
347
- OverlayModule,
348
- A11yModule,
349
- McIconModule,
350
- McButtonModule] });
351
- /** @nocollapse */ McToastModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastModule, providers: [{ provide: MC_TOAST_FACTORY, useFactory: (() => McToastComponent) }], imports: [CommonModule,
352
- OverlayModule,
353
- A11yModule,
354
- McIconModule,
355
- McButtonModule] });
356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McToastModule, decorators: [{
357
- type: NgModule,
358
- args: [{
359
- declarations: [
360
- McToastComponent,
361
- McToastContainerComponent
362
- ],
363
- imports: [
364
- CommonModule,
365
- OverlayModule,
366
- A11yModule,
367
- McIconModule,
368
- McButtonModule
369
- ],
370
- providers: [{ provide: MC_TOAST_FACTORY, useFactory: (() => McToastComponent) }]
371
- }]
372
- }] });
373
-
374
- /**
375
- * Generated bundle index. Do not edit.
376
- */
377
-
378
- export { MC_TOAST_CONFIG, MC_TOAST_FACTORY, McToastComponent, McToastContainerComponent, McToastData, McToastModule, McToastPosition, McToastService, defaultToastConfig };
379
- //# sourceMappingURL=ptsecurity-mosaic-toast.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ptsecurity-mosaic-toast.mjs","sources":["../../../packages/mosaic/toast/toast.type.ts","../../../packages/mosaic/toast/toast-container.component.ts","../../../packages/mosaic/toast/toast.service.ts","../../../packages/mosaic/toast/toast-animations.ts","../../../packages/mosaic/toast/toast.component.ts","../../../packages/mosaic/toast/toast.component.html","../../../packages/mosaic/toast/toast.module.ts","../../../packages/mosaic/toast/ptsecurity-mosaic-toast.ts"],"sourcesContent":["import { TemplateRef, InjectionToken } from '@angular/core';\n\n\nexport type McToastStyle = 'default' | 'confirm' | 'custom' | 'success' | 'error' | 'warning' | 'info';\nexport enum McToastPosition {\n TOP_RIGHT = 'top-right',\n TOP_LEFT = 'top-left',\n TOP_CENTER = 'top-center',\n BOTTOM_RIGHT = 'bottom-right',\n BOTTOM_LEFT = 'bottom-left',\n BOTTOM_CENTER = 'bottom-center',\n CENTER = 'center'\n}\n\nexport class McToastData {\n style: McToastStyle;\n title: string | TemplateRef<any>;\n\n icon?: TemplateRef<any>;\n caption?: string | TemplateRef<any>;\n\n content?: string | TemplateRef<any>;\n actions?: TemplateRef<any>;\n\n hasDismiss?: boolean;\n}\n\n// tslint:disable-next-line:naming-convention\nexport interface McToastConfig {\n position: McToastPosition;\n duration: number;\n delay: number;\n onTop: boolean;\n}\n\nexport const MC_TOAST_CONFIG = new InjectionToken('mc-toast-config');\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ComponentRef,\n EmbeddedViewRef,\n Injector,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n ViewRef\n} from '@angular/core';\n\nimport { McToastData } from './toast.type';\n\n\n@Component({\n selector: 'mc-toast-container',\n template: '<ng-container #container></ng-container>',\n styleUrls: ['./toast-container.component.scss'],\n host: {\n class: 'mc-toast-container'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class McToastContainerComponent {\n @ViewChild('container', { static: true, read: ViewContainerRef }) viewContainer: ViewContainerRef;\n\n constructor(\n private injector: Injector,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n createToast<C>(data: McToastData, componentType, onTop: boolean): ComponentRef<C> {\n const injector = this.getInjector(data);\n const index = onTop ? 0 : undefined;\n\n this.changeDetectorRef.markForCheck();\n\n return this.viewContainer.createComponent(componentType, { injector, index });\n }\n\n createTemplate<C>(data: McToastData, template: TemplateRef<any>, onTop: boolean): EmbeddedViewRef<C> {\n const index = onTop ? 0 : undefined;\n\n return this.viewContainer.createEmbeddedView(template, { $implicit: data }, index);\n }\n\n remove(viewRef: ViewRef) {\n const index = this.viewContainer.indexOf(viewRef);\n\n if (index < 0) { return; }\n\n this.viewContainer.remove(index);\n }\n\n getInjector(data: McToastData): Injector {\n return Injector.create({\n providers: [{ provide: McToastData, useValue: data }],\n parent: this.injector\n });\n }\n}\n","import { GlobalPositionStrategy, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n Injectable,\n Injector,\n Inject,\n ComponentRef,\n Optional,\n TemplateRef,\n EmbeddedViewRef,\n InjectionToken\n} from '@angular/core';\nimport { BehaviorSubject, timer } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { McToastContainerComponent } from './toast-container.component';\nimport { McToastComponent } from './toast.component';\nimport { McToastData, MC_TOAST_CONFIG, McToastConfig, McToastPosition } from './toast.type';\n\n\nexport const MC_TOAST_FACTORY = new InjectionToken('McToastFactory');\n\nexport const defaultToastConfig: McToastConfig = {\n position: McToastPosition.TOP_RIGHT,\n duration: 5000,\n delay: 2000,\n onTop: false\n};\n\n\nconst INDENT_SIZE = 16;\nconst CHECK_INTERVAL = 500;\n\nlet templateId = 0;\n\n@Injectable({ providedIn: 'root' })\nexport class McToastService<T extends McToastComponent = McToastComponent> {\n get toasts(): ComponentRef<T>[] {\n return Object.values(this.toastsDict)\n .filter((item) => !item.hostView.destroyed);\n }\n\n get templates(): EmbeddedViewRef<T>[] {\n return Object.values(this.templatesDict);\n }\n\n readonly hovered = new BehaviorSubject<boolean>(false);\n readonly focused = new BehaviorSubject<boolean>(false);\n\n private containerInstance: McToastContainerComponent;\n private overlayRef: OverlayRef;\n private portal: ComponentPortal<McToastContainerComponent>;\n\n private toastsDict: { [id: number]: ComponentRef<T> } = {};\n private templatesDict: { [id: number]: EmbeddedViewRef<T> } = {};\n\n constructor(\n private overlay: Overlay,\n private injector: Injector,\n @Inject(MC_TOAST_FACTORY) private toastFactory: any,\n @Optional() @Inject(MC_TOAST_CONFIG) private toastConfig: McToastConfig\n ) {\n this.toastConfig = toastConfig || defaultToastConfig;\n\n timer(CHECK_INTERVAL, CHECK_INTERVAL)\n .pipe(filter(() => this.toasts.length > 0 && !this.hovered.getValue() && !this.focused.getValue()))\n .subscribe(this.processToasts);\n }\n\n show(\n data: McToastData,\n duration: number = this.toastConfig.duration,\n onTop: boolean = this.toastConfig.onTop\n ): { ref: ComponentRef<T>; id: number} {\n\n this.prepareContainer();\n\n const componentRef = this.containerInstance.createToast<T>(data, this.toastFactory, onTop);\n\n this.toastsDict[componentRef.instance.id] = componentRef;\n\n componentRef.instance.ttl = duration;\n componentRef.instance.delay = this.toastConfig.delay;\n\n return { ref: componentRef, id: componentRef.instance.id };\n }\n\n showTemplate(\n data: McToastData,\n template: TemplateRef<any>,\n duration: number = this.toastConfig.duration,\n onTop: boolean = this.toastConfig.onTop\n ): { ref: EmbeddedViewRef<T>; id: number } {\n\n this.prepareContainer();\n\n const viewRef = this.containerInstance.createTemplate<T>(data, template, onTop);\n\n this.templatesDict[templateId] = viewRef;\n\n this.addRemoveTimer(templateId, duration);\n\n templateId++;\n\n return { ref: viewRef, id: templateId };\n }\n\n hide(id: number) {\n const componentRef = this.toastsDict[id];\n\n if (!componentRef) { return; }\n\n this.containerInstance.remove(componentRef.hostView);\n\n delete this.toastsDict[id];\n\n this.detachOverlay();\n }\n\n hideTemplate(id: number) {\n const viewRef = this.templatesDict[id];\n\n if (!viewRef) { return; }\n\n this.containerInstance.remove(viewRef);\n\n delete this.templatesDict[id];\n\n this.detachOverlay();\n }\n\n private detachOverlay() {\n if (this.toasts.length !== 0) { return; }\n\n this.overlayRef.detach();\n }\n\n private processToasts = () => {\n for (const toast of this.toasts.filter((item) => item.instance.ttl > 0)) {\n toast.instance.ttl -= CHECK_INTERVAL;\n\n if (toast.instance.ttl <= 0) {\n this.hide(toast.instance.id);\n\n this.updateTTLAfterDelete();\n\n break;\n }\n }\n }\n\n private updateTTLAfterDelete() {\n this.toasts\n .filter((item) => item.instance.ttl > 0)\n .forEach((item) => item.instance.ttl = this.toastConfig.delay);\n }\n\n private addRemoveTimer(id: number, duration: number) {\n setTimeout(() => this.hideTemplate(id), duration);\n }\n\n private prepareContainer() {\n this.createOverlay();\n\n this.portal = this.portal || new ComponentPortal(McToastContainerComponent, null, this.injector);\n\n if (!this.overlayRef.hasAttached()) {\n this.containerInstance = this.overlayRef.attach(this.portal).instance;\n }\n }\n\n private createOverlay() {\n if (this.overlayRef) { return this.overlayRef; }\n\n const positionStrategy = this.getPositionStrategy(this.toastConfig.position);\n\n this.overlayRef = this.overlay.create({ positionStrategy });\n this.overlayRef.hostElement.classList.add('mc-toast-overlay');\n }\n\n private getPositionStrategy(position?: McToastPosition): GlobalPositionStrategy {\n switch (position) {\n case McToastPosition.CENTER:\n return this.getCenter();\n case McToastPosition.BOTTOM_CENTER:\n return this.getBottomCenter();\n case McToastPosition.BOTTOM_LEFT:\n return this.getBottomLeft();\n case McToastPosition.BOTTOM_RIGHT:\n return this.getBottomRight();\n case McToastPosition.TOP_CENTER:\n return this.getTopCenter();\n case McToastPosition.TOP_LEFT:\n return this.getTopLeft();\n case McToastPosition.TOP_RIGHT:\n return this.getTopRight();\n default:\n return this.getTopCenter();\n }\n }\n\n private getTopCenter(): GlobalPositionStrategy {\n return this.getGlobalOverlayPosition()\n .top(`${INDENT_SIZE}px`)\n .centerHorizontally();\n }\n\n private getTopLeft(): GlobalPositionStrategy {\n return this.getGlobalOverlayPosition()\n .top(`${INDENT_SIZE}px`)\n .left(`${INDENT_SIZE}px`);\n }\n\n private getTopRight(): GlobalPositionStrategy {\n return this.getGlobalOverlayPosition()\n .top(`${INDENT_SIZE}px`)\n .right(`${INDENT_SIZE}px`);\n }\n\n private getBottomCenter(): GlobalPositionStrategy {\n return this.getGlobalOverlayPosition()\n .bottom(`${INDENT_SIZE}px`)\n .centerHorizontally();\n }\n\n private getBottomLeft(): GlobalPositionStrategy {\n return this.getGlobalOverlayPosition()\n .bottom(`${INDENT_SIZE}px`)\n .left(`${INDENT_SIZE}px`);\n }\n\n private getBottomRight(): GlobalPositionStrategy {\n return this.getGlobalOverlayPosition()\n .bottom(`${INDENT_SIZE}px`)\n .right(`${INDENT_SIZE}px`);\n }\n\n private getCenter(): GlobalPositionStrategy {\n return this.getGlobalOverlayPosition()\n .centerVertically()\n .centerHorizontally();\n }\n\n private getGlobalOverlayPosition(): GlobalPositionStrategy {\n return this.overlay.position().global();\n }\n}\n","import {\n animate,\n style,\n transition,\n trigger,\n state,\n AnimationTriggerMetadata\n} from '@angular/animations';\n\n\nexport const mcToastAnimations: {\n readonly toastState: AnimationTriggerMetadata;\n} = {\n toastState: trigger('state', [\n state('void', style({ transform: 'translateX(100%)', opacity: 0 })),\n transition(\n '* => visible',\n animate('150ms ease-out', style({ transform: 'translateX(0%)', opacity: 1 }))\n ),\n transition(\n '* => void',\n animate('300ms ease-in', style({ transform: 'translateX(50%)', opacity: 0, 'max-height': 0 }))\n )\n ])\n};\n","import { FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n Inject,\n OnDestroy,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { ThemePalette } from '@ptsecurity/mosaic/core';\nimport { BehaviorSubject, merge, Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\nimport { mcToastAnimations } from './toast-animations';\nimport { McToastService } from './toast.service';\nimport { McToastData } from './toast.type';\n\n\nlet id = 0;\n\n@Component({\n selector: 'mc-toast',\n templateUrl: './toast.component.html',\n styleUrls: ['./toast.component.scss'],\n host: {\n class: 'mc-toast',\n '[class]': 'toastStyle',\n '[class.mc-toast_dismissible]': 'hasDismiss',\n '[@state]': 'animationState',\n\n '(mouseenter)': 'hovered.next(true)',\n '(mouseleave)': 'hovered.next(false)',\n\n '(keydown.esc)': 'close()'\n },\n animations: [mcToastAnimations.toastState],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class McToastComponent implements OnDestroy {\n themePalette = ThemePalette;\n\n animationState = 'void';\n\n readonly hovered = new BehaviorSubject<boolean>(false);\n readonly focused = new BehaviorSubject<boolean>(false);\n\n id = id++;\n ttl;\n delay;\n\n $implicit;\n\n get toastStyle() {\n return {\n [`mc-toast_${this.data.style || 'info'}`]: true\n };\n }\n\n get hasDismiss(): boolean {\n return this.data.hasDismiss === undefined ? true : this.data.hasDismiss;\n }\n\n get isFocusedOrHovered(): boolean {\n return this.hovered.getValue() || this.focused.getValue();\n }\n\n private destroyed: Subject<boolean> = new Subject();\n\n constructor(\n readonly data: McToastData,\n @Inject(forwardRef(() => McToastService)) readonly service: McToastService,\n public elementRef: ElementRef,\n private focusMonitor: FocusMonitor\n ) {\n this.$implicit = this;\n\n this.animationState = 'visible';\n\n this.runFocusMonitor();\n\n this.hovered.subscribe(this.service.hovered);\n this.focused.subscribe(this.service.focused);\n\n merge(this.hovered, this.focused)\n .pipe(takeUntil(this.destroyed), filter((value) => value))\n .subscribe(() => {\n if (this.ttl === 0) { return; }\n\n this.ttl = this.ttl < this.delay ? this.delay : this.ttl;\n });\n }\n\n ngOnDestroy() {\n this.stopFocusMonitor();\n\n this.hovered.next(false);\n this.focused.next(false);\n\n this.destroyed.next(true);\n }\n\n close(): void {\n this.service.hide(this.id);\n }\n\n isTemplateRef(value): boolean {\n return value instanceof TemplateRef;\n }\n\n private runFocusMonitor() {\n this.focusMonitor\n .monitor(this.elementRef.nativeElement, true)\n .subscribe((origin: FocusOrigin) => this.focused.next(!!origin));\n }\n\n private stopFocusMonitor() {\n this.focusMonitor.stopMonitoring(this.elementRef.nativeElement);\n }\n}\n","<div class=\"mc-toast__wrapper\">\n <div class=\"mc-toast__icon-container\">\n <ng-container *ngIf=\"isTemplateRef(data.icon)\"\n [ngTemplateOutlet]=\"$any(data.icon)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!data.icon\">\n <ng-container [ngSwitch]=\"data.style\">\n <ng-container *ngSwitchCase=\"'info'\">\n <i mc-icon=\"mc-info_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'success'\">\n <i mc-icon=\"mc-success_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'warning'\">\n <i mc-icon=\"mc-error_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'error'\">\n <i mc-icon=\"mc-error_16\" class=\"mc-toast__icon\"></i>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n\n <div class=\"mc-toast__container\">\n <div *ngIf=\"data.title\" class=\"mc-toast__title\">\n <ng-container *ngIf=\"isTemplateRef(data.title)\"\n [ngTemplateOutlet]=\"$any(data.title)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.title)\">\n <button\n class=\"mc-button_transparent mc-toast__close\"\n mc-button\n *ngIf=\"hasDismiss\"\n (click)=\"close()\">\n\n <i class=\"mc-icon_light\" mc-icon=\"mc-close-L_16\" [color]=\"themePalette.Secondary\"></i>\n </button>\n <p>{{ data.title }}</p>\n </ng-container>\n </div>\n\n <div *ngIf=\"data.caption\" class=\"mc-toast__caption\">\n <ng-container *ngIf=\"isTemplateRef(data.caption)\"\n [ngTemplateOutlet]=\"$any(data.caption)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.caption)\">{{ data.caption }}</ng-container>\n </div>\n\n <div *ngIf=\"data.content\" class=\"mc-toast__content\">\n <ng-container *ngIf=\"isTemplateRef(data.content)\"\n [ngTemplateOutlet]=\"$any(data.content)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.content)\">{{ data.content }}</ng-container>\n </div>\n\n <div *ngIf=\"data.actions\" class=\"mc-toast__actions\">\n <ng-container *ngIf=\"isTemplateRef(data.actions)\"\n [ngTemplateOutlet]=\"$any(data.actions)\"\n [ngTemplateOutletContext]=\"{ $implicit }\">\n </ng-container>\n\n <ng-container *ngIf=\"!isTemplateRef(data.actions)\">{{ data.actions }}</ng-container>\n </div>\n </div>\n</div>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { McButtonModule } from '@ptsecurity/mosaic/button';\nimport { McIconModule } from '@ptsecurity/mosaic/icon';\n\nimport { McToastContainerComponent } from './toast-container.component';\nimport { McToastComponent } from './toast.component';\nimport { MC_TOAST_FACTORY } from './toast.service';\n\n\n@NgModule({\n declarations: [\n McToastComponent,\n McToastContainerComponent\n ],\n imports: [\n CommonModule,\n OverlayModule,\n A11yModule,\n McIconModule,\n McButtonModule\n ],\n providers: [{ provide: MC_TOAST_FACTORY, useFactory: () => McToastComponent }]\n})\nexport class McToastModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}