@ptsecurity/mosaic 14.5.1 → 14.6.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 (318) hide show
  1. package/_theming.scss +414 -14
  2. package/_visual.scss +2 -0
  3. package/core/highlight/highlight.pipe.d.ts +1 -0
  4. package/esm2020/autocomplete/autocomplete-origin.directive.mjs +4 -4
  5. package/esm2020/autocomplete/autocomplete-trigger.directive.mjs +4 -4
  6. package/esm2020/autocomplete/autocomplete.component.mjs +4 -4
  7. package/esm2020/autocomplete/autocomplete.module.mjs +5 -5
  8. package/esm2020/button/button.component.mjs +7 -7
  9. package/esm2020/button/button.module.mjs +5 -5
  10. package/esm2020/button-toggle/button-toggle.component.mjs +7 -7
  11. package/esm2020/button-toggle/button-toggle.module.mjs +5 -5
  12. package/esm2020/card/card.component.mjs +4 -4
  13. package/esm2020/card/card.module.mjs +5 -5
  14. package/esm2020/checkbox/checkbox-module.mjs +5 -5
  15. package/esm2020/checkbox/checkbox-required-validator.mjs +4 -4
  16. package/esm2020/checkbox/checkbox.mjs +4 -4
  17. package/esm2020/core/common-behaviors/common-module.mjs +5 -5
  18. package/esm2020/core/error/error-options.mjs +7 -7
  19. package/esm2020/core/formatters/date/formatter.mjs +4 -4
  20. package/esm2020/core/formatters/date/formatter.pipe.mjs +40 -40
  21. package/esm2020/core/formatters/index.mjs +5 -5
  22. package/esm2020/core/formatters/number/formatter.mjs +5 -5
  23. package/esm2020/core/forms/forms-module.mjs +5 -5
  24. package/esm2020/core/forms/forms.directive.mjs +7 -7
  25. package/esm2020/core/highlight/highlight.pipe.mjs +11 -5
  26. package/esm2020/core/highlight/index.mjs +5 -5
  27. package/esm2020/core/line/line.mjs +8 -8
  28. package/esm2020/core/option/action.mjs +4 -4
  29. package/esm2020/core/option/optgroup.mjs +4 -4
  30. package/esm2020/core/option/option-module.mjs +5 -5
  31. package/esm2020/core/option/option.mjs +4 -4
  32. package/esm2020/core/pop-up/pop-up-trigger.mjs +4 -4
  33. package/esm2020/core/pop-up/pop-up.mjs +4 -4
  34. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  35. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +5 -5
  36. package/esm2020/core/services/measure-scrollbar.service.mjs +4 -4
  37. package/esm2020/datepicker/calendar-body.component.mjs +4 -4
  38. package/esm2020/datepicker/calendar.component.mjs +7 -7
  39. package/esm2020/datepicker/datepicker-input.directive.mjs +4 -4
  40. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  41. package/esm2020/datepicker/datepicker-module.mjs +5 -5
  42. package/esm2020/datepicker/datepicker-toggle.component.mjs +7 -7
  43. package/esm2020/datepicker/datepicker.component.mjs +7 -7
  44. package/esm2020/datepicker/month-view.component.mjs +4 -4
  45. package/esm2020/datepicker/multi-year-view.component.mjs +4 -4
  46. package/esm2020/datepicker/year-view.component.mjs +4 -4
  47. package/esm2020/divider/divider.component.mjs +4 -4
  48. package/esm2020/divider/divider.module.mjs +5 -5
  49. package/esm2020/dl/dl.component.mjs +10 -10
  50. package/esm2020/dl/dl.module.mjs +5 -5
  51. package/esm2020/dropdown/dropdown-content.directive.mjs +4 -4
  52. package/esm2020/dropdown/dropdown-item.component.mjs +4 -4
  53. package/esm2020/dropdown/dropdown-trigger.directive.mjs +4 -4
  54. package/esm2020/dropdown/dropdown.component.mjs +4 -4
  55. package/esm2020/dropdown/dropdown.module.mjs +5 -5
  56. package/esm2020/form-field/cleaner.mjs +4 -4
  57. package/esm2020/form-field/form-field.mjs +10 -10
  58. package/esm2020/form-field/form-field.module.mjs +5 -5
  59. package/esm2020/form-field/hint.mjs +4 -4
  60. package/esm2020/form-field/password-hint.mjs +4 -4
  61. package/esm2020/form-field/prefix.mjs +4 -4
  62. package/esm2020/form-field/stepper.mjs +4 -4
  63. package/esm2020/form-field/suffix.mjs +4 -4
  64. package/esm2020/form-field/validate.directive.mjs +4 -4
  65. package/esm2020/icon/icon.component.mjs +7 -7
  66. package/esm2020/icon/icon.module.mjs +5 -5
  67. package/esm2020/input/input-number-validators.mjs +7 -7
  68. package/esm2020/input/input-number.mjs +4 -4
  69. package/esm2020/input/input-password.mjs +7 -7
  70. package/esm2020/input/input.mjs +7 -7
  71. package/esm2020/input/input.module.mjs +5 -5
  72. package/esm2020/link/link.component.mjs +13 -9
  73. package/esm2020/link/link.module.mjs +5 -5
  74. package/esm2020/list/list-selection.component.mjs +7 -7
  75. package/esm2020/list/list.component.mjs +7 -7
  76. package/esm2020/list/list.module.mjs +5 -5
  77. package/esm2020/loader-overlay/loader-overlay.component.mjs +13 -13
  78. package/esm2020/loader-overlay/loader-overlay.module.mjs +5 -5
  79. package/esm2020/markdown/markdown.component.mjs +20 -12
  80. package/esm2020/markdown/markdown.module.mjs +5 -5
  81. package/esm2020/markdown/markdown.service.mjs +4 -4
  82. package/esm2020/modal/css-unit.pipe.mjs +4 -4
  83. package/esm2020/modal/modal-control.service.mjs +4 -4
  84. package/esm2020/modal/modal.component.mjs +4 -4
  85. package/esm2020/modal/modal.directive.mjs +13 -13
  86. package/esm2020/modal/modal.module.mjs +5 -5
  87. package/esm2020/modal/modal.service.mjs +4 -4
  88. package/esm2020/navbar/navbar-item.component.mjs +31 -31
  89. package/esm2020/navbar/navbar.component.mjs +10 -10
  90. package/esm2020/navbar/navbar.module.mjs +5 -5
  91. package/esm2020/navbar/vertical-navbar.component.mjs +4 -4
  92. package/esm2020/popover/popover-confirm.component.mjs +7 -7
  93. package/esm2020/popover/popover.component.mjs +7 -7
  94. package/esm2020/popover/popover.module.mjs +5 -5
  95. package/esm2020/progress-bar/progress-bar.component.mjs +4 -4
  96. package/esm2020/progress-bar/progress-bar.module.mjs +5 -5
  97. package/esm2020/progress-spinner/progress-spinner.component.mjs +4 -4
  98. package/esm2020/progress-spinner/progress-spinner.module.mjs +5 -5
  99. package/esm2020/radio/radio.component.mjs +7 -7
  100. package/esm2020/radio/radio.module.mjs +5 -5
  101. package/esm2020/select/select-option.directive.mjs +4 -4
  102. package/esm2020/select/select.component.mjs +13 -13
  103. package/esm2020/select/select.module.mjs +5 -5
  104. package/esm2020/sidebar/sidebar.component.mjs +10 -10
  105. package/esm2020/sidebar/sidebar.module.mjs +5 -5
  106. package/esm2020/sidepanel/sidepanel-container.component.mjs +4 -4
  107. package/esm2020/sidepanel/sidepanel-directives.mjs +16 -16
  108. package/esm2020/sidepanel/sidepanel.module.mjs +5 -5
  109. package/esm2020/sidepanel/sidepanel.service.mjs +4 -4
  110. package/esm2020/splitter/splitter.component.mjs +13 -13
  111. package/esm2020/splitter/splitter.module.mjs +5 -5
  112. package/esm2020/table/table.component.mjs +4 -4
  113. package/esm2020/table/table.module.mjs +5 -5
  114. package/esm2020/tabs/paginated-tab-header.mjs +4 -4
  115. package/esm2020/tabs/tab-body.component.mjs +7 -7
  116. package/esm2020/tabs/tab-content.directive.mjs +4 -4
  117. package/esm2020/tabs/tab-group.component.mjs +19 -19
  118. package/esm2020/tabs/tab-header.component.mjs +5 -5
  119. package/esm2020/tabs/tab-label-wrapper.directive.mjs +4 -4
  120. package/esm2020/tabs/tab-label.directive.mjs +4 -4
  121. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +8 -8
  122. package/esm2020/tabs/tab.component.mjs +4 -4
  123. package/esm2020/tabs/tabs.module.mjs +5 -5
  124. package/esm2020/tags/tag-input.mjs +4 -4
  125. package/esm2020/tags/tag-list.component.mjs +4 -4
  126. package/esm2020/tags/tag.component.mjs +13 -13
  127. package/esm2020/tags/tag.module.mjs +5 -5
  128. package/esm2020/textarea/textarea.component.mjs +4 -4
  129. package/esm2020/textarea/textarea.module.mjs +5 -5
  130. package/esm2020/timepicker/timepicker.directive.mjs +4 -4
  131. package/esm2020/timepicker/timepicker.module.mjs +5 -5
  132. package/esm2020/timezone/cities-by-filter.pipe.mjs +4 -4
  133. package/esm2020/timezone/timezone-option.component.mjs +4 -4
  134. package/esm2020/timezone/timezone-option.directive.mjs +4 -4
  135. package/esm2020/timezone/timezone-select.component.mjs +7 -7
  136. package/esm2020/timezone/timezone.module.mjs +5 -5
  137. package/esm2020/timezone/utc-offset.pipe.mjs +4 -4
  138. package/esm2020/toast/toast-container.component.mjs +4 -4
  139. package/esm2020/toast/toast.component.mjs +4 -4
  140. package/esm2020/toast/toast.module.mjs +5 -5
  141. package/esm2020/toast/toast.service.mjs +4 -4
  142. package/esm2020/toggle/toggle.component.mjs +4 -4
  143. package/esm2020/toggle/toggle.module.mjs +5 -5
  144. package/esm2020/tooltip/tooltip.component.mjs +13 -13
  145. package/esm2020/tooltip/tooltip.module.mjs +5 -5
  146. package/esm2020/tree/control/flat-tree-control.mjs +7 -3
  147. package/esm2020/tree/node.mjs +4 -4
  148. package/esm2020/tree/outlet.mjs +4 -4
  149. package/esm2020/tree/padding.directive.mjs +4 -4
  150. package/esm2020/tree/toggle.mjs +10 -10
  151. package/esm2020/tree/tree-base.mjs +7 -7
  152. package/esm2020/tree/tree-option.component.mjs +52 -11
  153. package/esm2020/tree/tree-selection.component.mjs +13 -4
  154. package/esm2020/tree/tree.mjs +4 -4
  155. package/esm2020/tree/tree.module.mjs +5 -5
  156. package/esm2020/tree-select/tree-select.component.mjs +19 -14
  157. package/esm2020/tree-select/tree-select.module.mjs +5 -5
  158. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs +13 -13
  159. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  160. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs +10 -10
  161. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  162. package/fesm2015/ptsecurity-mosaic-button.mjs +10 -10
  163. package/fesm2015/ptsecurity-mosaic-button.mjs.map +1 -1
  164. package/fesm2015/ptsecurity-mosaic-card.mjs +7 -7
  165. package/fesm2015/ptsecurity-mosaic-card.mjs.map +1 -1
  166. package/fesm2015/ptsecurity-mosaic-checkbox.mjs +10 -10
  167. package/fesm2015/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  168. package/fesm2015/ptsecurity-mosaic-core.mjs +121 -115
  169. package/fesm2015/ptsecurity-mosaic-core.mjs.map +1 -1
  170. package/fesm2015/ptsecurity-mosaic-datepicker.mjs +40 -40
  171. package/fesm2015/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  172. package/fesm2015/ptsecurity-mosaic-divider.mjs +7 -7
  173. package/fesm2015/ptsecurity-mosaic-divider.mjs.map +1 -1
  174. package/fesm2015/ptsecurity-mosaic-dl.mjs +13 -13
  175. package/fesm2015/ptsecurity-mosaic-dl.mjs.map +1 -1
  176. package/fesm2015/ptsecurity-mosaic-dropdown.mjs +16 -16
  177. package/fesm2015/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  178. package/fesm2015/ptsecurity-mosaic-form-field.mjs +34 -34
  179. package/fesm2015/ptsecurity-mosaic-form-field.mjs.map +1 -1
  180. package/fesm2015/ptsecurity-mosaic-icon.mjs +10 -10
  181. package/fesm2015/ptsecurity-mosaic-icon.mjs.map +1 -1
  182. package/fesm2015/ptsecurity-mosaic-input.mjs +25 -25
  183. package/fesm2015/ptsecurity-mosaic-input.mjs.map +1 -1
  184. package/fesm2015/ptsecurity-mosaic-link.mjs +17 -13
  185. package/fesm2015/ptsecurity-mosaic-link.mjs.map +1 -1
  186. package/fesm2015/ptsecurity-mosaic-list.mjs +16 -16
  187. package/fesm2015/ptsecurity-mosaic-list.mjs.map +1 -1
  188. package/fesm2015/ptsecurity-mosaic-loader-overlay.mjs +16 -16
  189. package/fesm2015/ptsecurity-mosaic-loader-overlay.mjs.map +1 -1
  190. package/fesm2015/ptsecurity-mosaic-markdown.mjs +24 -17
  191. package/fesm2015/ptsecurity-mosaic-markdown.mjs.map +1 -1
  192. package/fesm2015/ptsecurity-mosaic-modal.mjs +28 -28
  193. package/fesm2015/ptsecurity-mosaic-modal.mjs.map +1 -1
  194. package/fesm2015/ptsecurity-mosaic-navbar.mjs +46 -46
  195. package/fesm2015/ptsecurity-mosaic-navbar.mjs.map +1 -1
  196. package/fesm2015/ptsecurity-mosaic-popover.mjs +16 -16
  197. package/fesm2015/ptsecurity-mosaic-popover.mjs.map +1 -1
  198. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs +7 -7
  199. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  200. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs +7 -7
  201. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  202. package/fesm2015/ptsecurity-mosaic-radio.mjs +10 -10
  203. package/fesm2015/ptsecurity-mosaic-radio.mjs.map +1 -1
  204. package/fesm2015/ptsecurity-mosaic-select.mjs +19 -19
  205. package/fesm2015/ptsecurity-mosaic-select.mjs.map +1 -1
  206. package/fesm2015/ptsecurity-mosaic-sidebar.mjs +13 -13
  207. package/fesm2015/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  208. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs +25 -25
  209. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  210. package/fesm2015/ptsecurity-mosaic-splitter.mjs +16 -16
  211. package/fesm2015/ptsecurity-mosaic-splitter.mjs.map +1 -1
  212. package/fesm2015/ptsecurity-mosaic-table.mjs +7 -7
  213. package/fesm2015/ptsecurity-mosaic-table.mjs.map +1 -1
  214. package/fesm2015/ptsecurity-mosaic-tabs.mjs +54 -54
  215. package/fesm2015/ptsecurity-mosaic-tabs.mjs.map +1 -1
  216. package/fesm2015/ptsecurity-mosaic-tags.mjs +22 -22
  217. package/fesm2015/ptsecurity-mosaic-tags.mjs.map +1 -1
  218. package/fesm2015/ptsecurity-mosaic-textarea.mjs +7 -7
  219. package/fesm2015/ptsecurity-mosaic-textarea.mjs.map +1 -1
  220. package/fesm2015/ptsecurity-mosaic-timepicker.mjs +7 -7
  221. package/fesm2015/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  222. package/fesm2015/ptsecurity-mosaic-timezone.mjs +22 -22
  223. package/fesm2015/ptsecurity-mosaic-timezone.mjs.map +1 -1
  224. package/fesm2015/ptsecurity-mosaic-toast.mjs +13 -13
  225. package/fesm2015/ptsecurity-mosaic-toast.mjs.map +1 -1
  226. package/fesm2015/ptsecurity-mosaic-toggle.mjs +7 -7
  227. package/fesm2015/ptsecurity-mosaic-toggle.mjs.map +1 -1
  228. package/fesm2015/ptsecurity-mosaic-tooltip.mjs +16 -16
  229. package/fesm2015/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  230. package/fesm2015/ptsecurity-mosaic-tree-select.mjs +23 -18
  231. package/fesm2015/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  232. package/fesm2015/ptsecurity-mosaic-tree.mjs +100 -47
  233. package/fesm2015/ptsecurity-mosaic-tree.mjs.map +1 -1
  234. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs +13 -13
  235. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  236. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs +10 -10
  237. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  238. package/fesm2020/ptsecurity-mosaic-button.mjs +10 -10
  239. package/fesm2020/ptsecurity-mosaic-button.mjs.map +1 -1
  240. package/fesm2020/ptsecurity-mosaic-card.mjs +7 -7
  241. package/fesm2020/ptsecurity-mosaic-card.mjs.map +1 -1
  242. package/fesm2020/ptsecurity-mosaic-checkbox.mjs +10 -10
  243. package/fesm2020/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  244. package/fesm2020/ptsecurity-mosaic-core.mjs +121 -115
  245. package/fesm2020/ptsecurity-mosaic-core.mjs.map +1 -1
  246. package/fesm2020/ptsecurity-mosaic-datepicker.mjs +40 -40
  247. package/fesm2020/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  248. package/fesm2020/ptsecurity-mosaic-divider.mjs +7 -7
  249. package/fesm2020/ptsecurity-mosaic-divider.mjs.map +1 -1
  250. package/fesm2020/ptsecurity-mosaic-dl.mjs +13 -13
  251. package/fesm2020/ptsecurity-mosaic-dl.mjs.map +1 -1
  252. package/fesm2020/ptsecurity-mosaic-dropdown.mjs +16 -16
  253. package/fesm2020/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  254. package/fesm2020/ptsecurity-mosaic-form-field.mjs +34 -34
  255. package/fesm2020/ptsecurity-mosaic-form-field.mjs.map +1 -1
  256. package/fesm2020/ptsecurity-mosaic-icon.mjs +10 -10
  257. package/fesm2020/ptsecurity-mosaic-icon.mjs.map +1 -1
  258. package/fesm2020/ptsecurity-mosaic-input.mjs +25 -25
  259. package/fesm2020/ptsecurity-mosaic-input.mjs.map +1 -1
  260. package/fesm2020/ptsecurity-mosaic-link.mjs +16 -12
  261. package/fesm2020/ptsecurity-mosaic-link.mjs.map +1 -1
  262. package/fesm2020/ptsecurity-mosaic-list.mjs +16 -16
  263. package/fesm2020/ptsecurity-mosaic-list.mjs.map +1 -1
  264. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs +16 -16
  265. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs.map +1 -1
  266. package/fesm2020/ptsecurity-mosaic-markdown.mjs +24 -17
  267. package/fesm2020/ptsecurity-mosaic-markdown.mjs.map +1 -1
  268. package/fesm2020/ptsecurity-mosaic-modal.mjs +28 -28
  269. package/fesm2020/ptsecurity-mosaic-modal.mjs.map +1 -1
  270. package/fesm2020/ptsecurity-mosaic-navbar.mjs +46 -46
  271. package/fesm2020/ptsecurity-mosaic-navbar.mjs.map +1 -1
  272. package/fesm2020/ptsecurity-mosaic-popover.mjs +16 -16
  273. package/fesm2020/ptsecurity-mosaic-popover.mjs.map +1 -1
  274. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs +7 -7
  275. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  276. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs +7 -7
  277. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  278. package/fesm2020/ptsecurity-mosaic-radio.mjs +10 -10
  279. package/fesm2020/ptsecurity-mosaic-radio.mjs.map +1 -1
  280. package/fesm2020/ptsecurity-mosaic-select.mjs +19 -19
  281. package/fesm2020/ptsecurity-mosaic-select.mjs.map +1 -1
  282. package/fesm2020/ptsecurity-mosaic-sidebar.mjs +13 -13
  283. package/fesm2020/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  284. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs +25 -25
  285. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  286. package/fesm2020/ptsecurity-mosaic-splitter.mjs +16 -16
  287. package/fesm2020/ptsecurity-mosaic-splitter.mjs.map +1 -1
  288. package/fesm2020/ptsecurity-mosaic-table.mjs +7 -7
  289. package/fesm2020/ptsecurity-mosaic-table.mjs.map +1 -1
  290. package/fesm2020/ptsecurity-mosaic-tabs.mjs +54 -54
  291. package/fesm2020/ptsecurity-mosaic-tabs.mjs.map +1 -1
  292. package/fesm2020/ptsecurity-mosaic-tags.mjs +22 -22
  293. package/fesm2020/ptsecurity-mosaic-tags.mjs.map +1 -1
  294. package/fesm2020/ptsecurity-mosaic-textarea.mjs +7 -7
  295. package/fesm2020/ptsecurity-mosaic-textarea.mjs.map +1 -1
  296. package/fesm2020/ptsecurity-mosaic-timepicker.mjs +7 -7
  297. package/fesm2020/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  298. package/fesm2020/ptsecurity-mosaic-timezone.mjs +22 -22
  299. package/fesm2020/ptsecurity-mosaic-timezone.mjs.map +1 -1
  300. package/fesm2020/ptsecurity-mosaic-toast.mjs +13 -13
  301. package/fesm2020/ptsecurity-mosaic-toast.mjs.map +1 -1
  302. package/fesm2020/ptsecurity-mosaic-toggle.mjs +7 -7
  303. package/fesm2020/ptsecurity-mosaic-toggle.mjs.map +1 -1
  304. package/fesm2020/ptsecurity-mosaic-tooltip.mjs +16 -16
  305. package/fesm2020/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  306. package/fesm2020/ptsecurity-mosaic-tree-select.mjs +22 -17
  307. package/fesm2020/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  308. package/fesm2020/ptsecurity-mosaic-tree.mjs +100 -47
  309. package/fesm2020/ptsecurity-mosaic-tree.mjs.map +1 -1
  310. package/link/link.component.d.ts +2 -1
  311. package/markdown/markdown.component.d.ts +7 -4
  312. package/package.json +8 -8
  313. package/prebuilt-themes/dark-theme.css +1 -1
  314. package/prebuilt-themes/default-theme.css +1 -1
  315. package/tree/control/flat-tree-control.d.ts +1 -0
  316. package/tree/tree-option.component.d.ts +8 -2
  317. package/tree/tree-selection.component.d.ts +1 -0
  318. package/tree-select/tree-select.component.d.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ptsecurity-mosaic-timezone.mjs","sources":["../../../packages/mosaic/timezone/timezone.utils.ts","../../../packages/mosaic/timezone/utc-offset.pipe.ts","../../../packages/mosaic/timezone/cities-by-filter.pipe.ts","../../../packages/mosaic/timezone/timezone-option.component.ts","../../../packages/mosaic/timezone/timezone-option.component.html","../../../packages/mosaic/timezone/timezone-option.directive.ts","../../../packages/mosaic/timezone/timezone-select.component.ts","../../../packages/mosaic/timezone/timezone-select.component.html","../../../packages/mosaic/timezone/timezone.module.ts","../../../packages/mosaic/timezone/ptsecurity-mosaic-timezone.ts"],"sourcesContent":["import { McTimezoneZone, McTimezonesByCountry, McTimezoneGroup } from './timezone.models';\n\n\nconst minusUnicode = 0x2212; // Minus Sign U+2212\n\n/**\n * Convert string timezone offset (formatted offset) to number (minutes)\n */\nexport function parseOffset(offset: string): number {\n const minutesPerHour = 60;\n const [hours, minutes] = offset.split(':')\n .map((part: string) => parseInt(part, 10));\n\n return (hours * minutesPerHour) + (hours >= 0 ? minutes : minutes * -1);\n}\n\n/**\n * Grouping timezones by countries\n */\nexport function getZonesGroupedByCountry(\n data: McTimezoneZone[],\n otherCountriesLabel: string = 'Other',\n priorityCountry?: string\n): McTimezoneGroup[] {\n const systemTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const countryCode: string | undefined = priorityCountry\n ? priorityCountry\n : data.find((item: McTimezoneZone) => item.id === systemTimezone)?.countryCode;\n\n // collect data by countries\n const dataByCountries: McTimezonesByCountry = data.reduce<McTimezonesByCountry>(\n (result: McTimezonesByCountry, zone: McTimezoneZone) => {\n const countryName: string = zone.countryCode.toLowerCase() === countryCode?.toLowerCase()\n ? zone.countryName\n : otherCountriesLabel;\n\n if (!Array.isArray(result[countryName])) {\n result[countryName] = [];\n }\n\n result[countryName].push({ ...zone, countryName });\n\n return result;\n },\n {}\n );\n\n // make data groups\n const groups: McTimezoneGroup[] = Object.values(dataByCountries)\n .map<McTimezoneGroup>((zones: McTimezoneZone[]) => ({\n countryCode: zones[0].countryCode,\n countryName: zones[0].countryName,\n zones: zones.sort(timezonesSortComparator)\n }));\n\n // sort by priority country\n const priorityGroupIndex = groups.findIndex(\n (group) => group.countryCode.toLowerCase() === countryCode?.toLowerCase()\n );\n\n if (priorityGroupIndex > -1) {\n const priorityGroup = groups[priorityGroupIndex];\n\n groups.splice(priorityGroupIndex, 1);\n groups.unshift(priorityGroup);\n }\n\n return groups;\n}\n\nexport function offsetFormatter(value: string): string {\n const [hours, minutes] = value.split(':');\n const isPositiveOffset = /^\\d$/.test(hours.charAt(0));\n const preparedHours: string = !isPositiveOffset\n ? `${String.fromCharCode(minusUnicode)}${hours.substring(1)}`\n : parseInt(hours, 10) > 0 || parseInt(minutes, 10) > 0\n ? `+${hours}`\n : hours;\n\n const offset = [preparedHours, minutes].join(':');\n\n return `UTC ${offset}`;\n}\n\n/**\n * Comparator for timezone sorting. Sort by offset and country name\n */\nexport function timezonesSortComparator(first: McTimezoneZone, second: McTimezoneZone): number {\n return first.offset !== second.offset\n ? parseOffset(first.offset)\n : first.countryName.localeCompare(second.countryName);\n}\n\n/**\n * Filtering timezone cities by search string\n */\nexport function filterCitiesBySearchString(cities: string, searchPattern?: string): string {\n const onlyUTC: boolean = /^\\\\?(-|—|−|\\+)?(\\d{1,2}:?(\\d{1,2})?)?$/.test(searchPattern ?? '');\n\n if (!searchPattern || onlyUTC) {\n return cities;\n }\n\n const regex: RegExp = RegExp(`(${searchPattern})`, 'gi');\n\n return cities\n .split(',')\n .filter((city: string) => regex.test(city))\n .join(',');\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { offsetFormatter } from './timezone.utils';\n\n\n@Pipe({\n name: 'utcOffset'\n})\nexport class UtcOffsetPipe implements PipeTransform {\n transform(value: string): string {\n return offsetFormatter(value);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { filterCitiesBySearchString } from './timezone.utils';\n\n\n@Pipe({\n name: 'citiesByFilter'\n})\nexport class CitiesByFilterPipe implements PipeTransform {\n transform(value: string, searchPattern?: string): string {\n return filterCitiesBySearchString(value, searchPattern);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n ElementRef,\n Input,\n ViewEncapsulation,\n forwardRef\n} from '@angular/core';\nimport { McOption } from '@ptsecurity/mosaic/core';\n\nimport { McTimezoneZone } from './timezone.models';\nimport { offsetFormatter } from './timezone.utils';\n\n\n@Component({\n selector: 'mc-timezone-option',\n exportAs: 'mcTimezoneOption',\n host: {\n class: 'mc-timezone-option'\n },\n templateUrl: 'timezone-option.component.html',\n styleUrls: ['../core/option/option.scss', 'timezone-option.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{\n provide: McOption,\n useExisting: forwardRef(() => McTimezoneOption)\n }]\n})\nexport class McTimezoneOption extends McOption {\n @ViewChild('tooltipContentWrapper', { static: false }) tooltipContentWrapper: ElementRef<HTMLElement>;\n @ViewChild('tooltipContent', { static: false }) tooltipContent: ElementRef<HTMLElement>;\n\n @Input() highlightText: string;\n\n @Input()\n get timezone(): McTimezoneZone {\n return this._timezone;\n }\n\n set timezone(zone: McTimezoneZone) {\n this._timezone = zone;\n this.value = zone.id;\n }\n\n private _timezone: McTimezoneZone;\n\n get viewValue(): string {\n const cities: string = [this.timezone.city, this.timezone.cities]\n .filter(Boolean)\n .join(', ');\n\n return [offsetFormatter(this.timezone.offset), cities]\n .join(' ');\n }\n}\n","<span class=\"mc-timezone-option__offset\"\n [innerHTML]=\"timezone.offset | utcOffset | mcHighlight:highlightText\">\n</span>\n\n<div class=\"mc-timezone-option__label\">\n <span class=\"mc-timezone-option__city\" [innerHTML]=\"timezone.city | mcHighlight:highlightText\"></span>\n <div #tooltipContentWrapper class=\"mc-timezone-option__cities\">\n <span #tooltipContent\n [innerHTML]=\"timezone.cities | citiesByFilter:highlightText | mcHighlight:highlightText\">\n </span>\n </div>\n</div>\n\n<div class=\"mc-option-overlay\"></div>\n","import { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n Directive,\n ElementRef,\n Inject,\n NgZone,\n OnDestroy,\n Optional,\n ViewContainerRef, ChangeDetectorRef\n} from '@angular/core';\nimport { PopUpPlacements } from '@ptsecurity/mosaic/core';\nimport { McTooltipTrigger, MC_TOOLTIP_SCROLL_STRATEGY } from '@ptsecurity/mosaic/tooltip';\n\nimport { McTimezoneOption } from './timezone-option.component';\n\n\nexport const TOOLTIP_VISIBLE_ROWS_COUNT = 3;\n\n\n@Directive({\n selector: 'mc-timezone-option',\n host: {\n '(mouseenter)': 'onMouseEnter()',\n '(mouseleave)': 'onMouseLeave()'\n }\n})\nexport class McTimezoneOptionTooltip extends McTooltipTrigger implements AfterViewInit, OnDestroy {\n private resizeObserver: ResizeObserver;\n\n constructor(\n private changeDetectorRef: ChangeDetectorRef,\n private option: McTimezoneOption,\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n this.tooltipPlacement = PopUpPlacements.Right;\n }\n\n ngAfterViewInit(): void {\n this.content = this.option.viewValue;\n this.option.tooltipContentWrapper.nativeElement.style.webkitLineClamp = TOOLTIP_VISIBLE_ROWS_COUNT.toString();\n\n this.resizeObserver = new ResizeObserver(() => this.checkTooltipDisabled());\n this.resizeObserver.observe(this.option.tooltipContentWrapper.nativeElement);\n }\n\n ngOnDestroy(): void {\n super.ngOnDestroy();\n this.resizeObserver?.unobserve(this.option.tooltipContentWrapper.nativeElement);\n }\n\n onMouseEnter(): void {\n this.resizeObserver.observe(this.option.tooltipContentWrapper.nativeElement);\n this.checkTooltipDisabled();\n }\n\n onMouseLeave(): void {\n this.resizeObserver.unobserve(this.option.tooltipContentWrapper.nativeElement);\n\n this.disabled = true;\n }\n\n private checkTooltipDisabled(): void {\n const count: number = this.option.tooltipContent.nativeElement.getClientRects().length;\n\n this.disabled = count <= TOOLTIP_VISIBLE_ROWS_COUNT;\n\n this.changeDetectorRef.detectChanges();\n }\n}\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, Directive, ContentChild } from '@angular/core';\nimport { MC_OPTION_PARENT_COMPONENT } from '@ptsecurity/mosaic/core';\nimport { McFormFieldControl, McCleaner } from '@ptsecurity/mosaic/form-field';\nimport { McSelect, McSelectSearch } from '@ptsecurity/mosaic/select';\n\n\n@Directive({ selector: 'mc-timezone-select-trigger' })\nexport class McTimezoneSelectTrigger {}\n\n@Component({\n selector: 'mc-timezone-select',\n exportAs: 'mcTimezoneSelect',\n templateUrl: 'timezone-select.component.html',\n styleUrls: ['../select/select.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: McFormFieldControl, useExisting: McTimezoneSelect },\n { provide: MC_OPTION_PARENT_COMPONENT, useExisting: McTimezoneSelect }\n ]\n})\nexport class McTimezoneSelect extends McSelect {\n @ContentChild(McTimezoneSelectTrigger, { static: false }) customTrigger: McTimezoneSelectTrigger;\n\n @ContentChild('mcSelectCleaner', { static: true }) cleaner: McCleaner;\n\n @ContentChild(McSelectSearch, { static: false }) search: McSelectSearch;\n}\n","<div cdk-overlay-origin\n class=\"mc-select__trigger\"\n (click)=\"toggle()\"\n #origin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mc-select__matcher\" [ngSwitch]=\"empty\">\n <span class=\"mc-select__placeholder\" *ngSwitchCase=\"true\">{{ placeholder || '\\u00A0' }}</span>\n <span *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <div *ngSwitchCase=\"false\" class=\"mc-select__match-container\">\n <span class=\"mc-select__matcher-text\">{{ triggerValue }}</span>\n </div>\n <ng-content select=\"mc-timezone-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mc-select__cleaner\" *ngIf=\"canShowCleaner\" (click)=\"clearValue($event)\">\n <ng-content select=\"mc-cleaner\"></ng-content>\n </div>\n\n <div class=\"mc-select__arrow-wrapper\">\n <i class=\"mc-select__arrow\" mc-icon=\"mc-angle-down-S_16\"></i>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"triggerRect?.width!\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n (backdropClick)=\"close()\"\n (attach)=\"onAttached()\"\n (detach)=\"close()\">\n\n <div #panel\n class=\"mc-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.transformOrigin]=\"transformOrigin\"\n [style.font-size.px]=\"triggerFontSize\"\n (keydown)=\"handleKeydown($event)\">\n\n <div *ngIf=\"search\" class=\"mc-select__search-container\">\n <ng-content select=\"[mcSelectSearch]\"></ng-content>\n </div>\n\n <div #optionsContainer\n class=\"mc-select__content\"\n [@fadeInContent]=\"'showing'\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\">\n\n <div *ngIf=\"isEmptySearchResult\" class=\"mc-select__no-options-message\">\n <ng-content select=\"[mc-select-search-empty-result]\"></ng-content>\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { McHighlightModule, McOptionModule } from '@ptsecurity/mosaic/core';\nimport { McFormFieldModule } from '@ptsecurity/mosaic/form-field';\nimport { McIconModule } from '@ptsecurity/mosaic/icon';\nimport { McSelectModule } from '@ptsecurity/mosaic/select';\nimport { McTagsModule } from '@ptsecurity/mosaic/tags';\nimport { McToolTipModule } from '@ptsecurity/mosaic/tooltip';\n\nimport { CitiesByFilterPipe } from './cities-by-filter.pipe';\nimport { McTimezoneOption } from './timezone-option.component';\nimport { McTimezoneOptionTooltip } from './timezone-option.directive';\nimport { McTimezoneSelect, McTimezoneSelectTrigger } from './timezone-select.component';\nimport { UtcOffsetPipe } from './utc-offset.pipe';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n McFormFieldModule,\n McOptionModule,\n McSelectModule,\n McIconModule,\n McTagsModule,\n McToolTipModule,\n McHighlightModule\n ],\n declarations: [\n UtcOffsetPipe,\n CitiesByFilterPipe,\n McTimezoneSelect,\n McTimezoneOption,\n McTimezoneOptionTooltip,\n McTimezoneSelectTrigger\n ],\n exports: [\n McTimezoneSelect,\n McTimezoneOption,\n McTimezoneOptionTooltip,\n McTimezoneSelectTrigger\n ]\n})\nexport class McTimezoneModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.UtcOffsetPipe","i3.CitiesByFilterPipe","i1","i3"],"mappings":"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"}
1
+ {"version":3,"file":"ptsecurity-mosaic-timezone.mjs","sources":["../../../packages/mosaic/timezone/timezone.utils.ts","../../../packages/mosaic/timezone/utc-offset.pipe.ts","../../../packages/mosaic/timezone/cities-by-filter.pipe.ts","../../../packages/mosaic/timezone/timezone-option.component.ts","../../../packages/mosaic/timezone/timezone-option.component.html","../../../packages/mosaic/timezone/timezone-option.directive.ts","../../../packages/mosaic/timezone/timezone-select.component.ts","../../../packages/mosaic/timezone/timezone-select.component.html","../../../packages/mosaic/timezone/timezone.module.ts","../../../packages/mosaic/timezone/ptsecurity-mosaic-timezone.ts"],"sourcesContent":["import { McTimezoneZone, McTimezonesByCountry, McTimezoneGroup } from './timezone.models';\n\n\nconst minusUnicode = 0x2212; // Minus Sign U+2212\n\n/**\n * Convert string timezone offset (formatted offset) to number (minutes)\n */\nexport function parseOffset(offset: string): number {\n const minutesPerHour = 60;\n const [hours, minutes] = offset.split(':')\n .map((part: string) => parseInt(part, 10));\n\n return (hours * minutesPerHour) + (hours >= 0 ? minutes : minutes * -1);\n}\n\n/**\n * Grouping timezones by countries\n */\nexport function getZonesGroupedByCountry(\n data: McTimezoneZone[],\n otherCountriesLabel: string = 'Other',\n priorityCountry?: string\n): McTimezoneGroup[] {\n const systemTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const countryCode: string | undefined = priorityCountry\n ? priorityCountry\n : data.find((item: McTimezoneZone) => item.id === systemTimezone)?.countryCode;\n\n // collect data by countries\n const dataByCountries: McTimezonesByCountry = data.reduce<McTimezonesByCountry>(\n (result: McTimezonesByCountry, zone: McTimezoneZone) => {\n const countryName: string = zone.countryCode.toLowerCase() === countryCode?.toLowerCase()\n ? zone.countryName\n : otherCountriesLabel;\n\n if (!Array.isArray(result[countryName])) {\n result[countryName] = [];\n }\n\n result[countryName].push({ ...zone, countryName });\n\n return result;\n },\n {}\n );\n\n // make data groups\n const groups: McTimezoneGroup[] = Object.values(dataByCountries)\n .map<McTimezoneGroup>((zones: McTimezoneZone[]) => ({\n countryCode: zones[0].countryCode,\n countryName: zones[0].countryName,\n zones: zones.sort(timezonesSortComparator)\n }));\n\n // sort by priority country\n const priorityGroupIndex = groups.findIndex(\n (group) => group.countryCode.toLowerCase() === countryCode?.toLowerCase()\n );\n\n if (priorityGroupIndex > -1) {\n const priorityGroup = groups[priorityGroupIndex];\n\n groups.splice(priorityGroupIndex, 1);\n groups.unshift(priorityGroup);\n }\n\n return groups;\n}\n\nexport function offsetFormatter(value: string): string {\n const [hours, minutes] = value.split(':');\n const isPositiveOffset = /^\\d$/.test(hours.charAt(0));\n const preparedHours: string = !isPositiveOffset\n ? `${String.fromCharCode(minusUnicode)}${hours.substring(1)}`\n : parseInt(hours, 10) > 0 || parseInt(minutes, 10) > 0\n ? `+${hours}`\n : hours;\n\n const offset = [preparedHours, minutes].join(':');\n\n return `UTC ${offset}`;\n}\n\n/**\n * Comparator for timezone sorting. Sort by offset and country name\n */\nexport function timezonesSortComparator(first: McTimezoneZone, second: McTimezoneZone): number {\n return first.offset !== second.offset\n ? parseOffset(first.offset)\n : first.countryName.localeCompare(second.countryName);\n}\n\n/**\n * Filtering timezone cities by search string\n */\nexport function filterCitiesBySearchString(cities: string, searchPattern?: string): string {\n const onlyUTC: boolean = /^\\\\?(-|—|−|\\+)?(\\d{1,2}:?(\\d{1,2})?)?$/.test(searchPattern ?? '');\n\n if (!searchPattern || onlyUTC) {\n return cities;\n }\n\n const regex: RegExp = RegExp(`(${searchPattern})`, 'gi');\n\n return cities\n .split(',')\n .filter((city: string) => regex.test(city))\n .join(',');\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { offsetFormatter } from './timezone.utils';\n\n\n@Pipe({\n name: 'utcOffset'\n})\nexport class UtcOffsetPipe implements PipeTransform {\n transform(value: string): string {\n return offsetFormatter(value);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { filterCitiesBySearchString } from './timezone.utils';\n\n\n@Pipe({\n name: 'citiesByFilter'\n})\nexport class CitiesByFilterPipe implements PipeTransform {\n transform(value: string, searchPattern?: string): string {\n return filterCitiesBySearchString(value, searchPattern);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n ElementRef,\n Input,\n ViewEncapsulation,\n forwardRef\n} from '@angular/core';\nimport { McOption } from '@ptsecurity/mosaic/core';\n\nimport { McTimezoneZone } from './timezone.models';\nimport { offsetFormatter } from './timezone.utils';\n\n\n@Component({\n selector: 'mc-timezone-option',\n exportAs: 'mcTimezoneOption',\n host: {\n class: 'mc-timezone-option'\n },\n templateUrl: 'timezone-option.component.html',\n styleUrls: ['../core/option/option.scss', 'timezone-option.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{\n provide: McOption,\n useExisting: forwardRef(() => McTimezoneOption)\n }]\n})\nexport class McTimezoneOption extends McOption {\n @ViewChild('tooltipContentWrapper', { static: false }) tooltipContentWrapper: ElementRef<HTMLElement>;\n @ViewChild('tooltipContent', { static: false }) tooltipContent: ElementRef<HTMLElement>;\n\n @Input() highlightText: string;\n\n @Input()\n get timezone(): McTimezoneZone {\n return this._timezone;\n }\n\n set timezone(zone: McTimezoneZone) {\n this._timezone = zone;\n this.value = zone.id;\n }\n\n private _timezone: McTimezoneZone;\n\n get viewValue(): string {\n const cities: string = [this.timezone.city, this.timezone.cities]\n .filter(Boolean)\n .join(', ');\n\n return [offsetFormatter(this.timezone.offset), cities]\n .join(' ');\n }\n}\n","<span class=\"mc-timezone-option__offset\"\n [innerHTML]=\"timezone.offset | utcOffset | mcHighlight:highlightText\">\n</span>\n\n<div class=\"mc-timezone-option__label\">\n <span class=\"mc-timezone-option__city\" [innerHTML]=\"timezone.city | mcHighlight:highlightText\"></span>\n <div #tooltipContentWrapper class=\"mc-timezone-option__cities\">\n <span #tooltipContent\n [innerHTML]=\"timezone.cities | citiesByFilter:highlightText | mcHighlight:highlightText\">\n </span>\n </div>\n</div>\n\n<div class=\"mc-option-overlay\"></div>\n","import { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n Directive,\n ElementRef,\n Inject,\n NgZone,\n OnDestroy,\n Optional,\n ViewContainerRef, ChangeDetectorRef\n} from '@angular/core';\nimport { PopUpPlacements } from '@ptsecurity/mosaic/core';\nimport { McTooltipTrigger, MC_TOOLTIP_SCROLL_STRATEGY } from '@ptsecurity/mosaic/tooltip';\n\nimport { McTimezoneOption } from './timezone-option.component';\n\n\nexport const TOOLTIP_VISIBLE_ROWS_COUNT = 3;\n\n\n@Directive({\n selector: 'mc-timezone-option',\n host: {\n '(mouseenter)': 'onMouseEnter()',\n '(mouseleave)': 'onMouseLeave()'\n }\n})\nexport class McTimezoneOptionTooltip extends McTooltipTrigger implements AfterViewInit, OnDestroy {\n private resizeObserver: ResizeObserver;\n\n constructor(\n private changeDetectorRef: ChangeDetectorRef,\n private option: McTimezoneOption,\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n this.tooltipPlacement = PopUpPlacements.Right;\n }\n\n ngAfterViewInit(): void {\n this.content = this.option.viewValue;\n this.option.tooltipContentWrapper.nativeElement.style.webkitLineClamp = TOOLTIP_VISIBLE_ROWS_COUNT.toString();\n\n this.resizeObserver = new ResizeObserver(() => this.checkTooltipDisabled());\n this.resizeObserver.observe(this.option.tooltipContentWrapper.nativeElement);\n }\n\n ngOnDestroy(): void {\n super.ngOnDestroy();\n this.resizeObserver?.unobserve(this.option.tooltipContentWrapper.nativeElement);\n }\n\n onMouseEnter(): void {\n this.resizeObserver.observe(this.option.tooltipContentWrapper.nativeElement);\n this.checkTooltipDisabled();\n }\n\n onMouseLeave(): void {\n this.resizeObserver.unobserve(this.option.tooltipContentWrapper.nativeElement);\n\n this.disabled = true;\n }\n\n private checkTooltipDisabled(): void {\n const count: number = this.option.tooltipContent.nativeElement.getClientRects().length;\n\n this.disabled = count <= TOOLTIP_VISIBLE_ROWS_COUNT;\n\n this.changeDetectorRef.detectChanges();\n }\n}\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, Directive, ContentChild } from '@angular/core';\nimport { MC_OPTION_PARENT_COMPONENT } from '@ptsecurity/mosaic/core';\nimport { McFormFieldControl, McCleaner } from '@ptsecurity/mosaic/form-field';\nimport { McSelect, McSelectSearch } from '@ptsecurity/mosaic/select';\n\n\n@Directive({ selector: 'mc-timezone-select-trigger' })\nexport class McTimezoneSelectTrigger {}\n\n@Component({\n selector: 'mc-timezone-select',\n exportAs: 'mcTimezoneSelect',\n templateUrl: 'timezone-select.component.html',\n styleUrls: ['../select/select.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: McFormFieldControl, useExisting: McTimezoneSelect },\n { provide: MC_OPTION_PARENT_COMPONENT, useExisting: McTimezoneSelect }\n ]\n})\nexport class McTimezoneSelect extends McSelect {\n @ContentChild(McTimezoneSelectTrigger, { static: false }) customTrigger: McTimezoneSelectTrigger;\n\n @ContentChild('mcSelectCleaner', { static: true }) cleaner: McCleaner;\n\n @ContentChild(McSelectSearch, { static: false }) search: McSelectSearch;\n}\n","<div cdk-overlay-origin\n class=\"mc-select__trigger\"\n (click)=\"toggle()\"\n #origin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mc-select__matcher\" [ngSwitch]=\"empty\">\n <span class=\"mc-select__placeholder\" *ngSwitchCase=\"true\">{{ placeholder || '\\u00A0' }}</span>\n <span *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <div *ngSwitchCase=\"false\" class=\"mc-select__match-container\">\n <span class=\"mc-select__matcher-text\">{{ triggerValue }}</span>\n </div>\n <ng-content select=\"mc-timezone-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mc-select__cleaner\" *ngIf=\"canShowCleaner\" (click)=\"clearValue($event)\">\n <ng-content select=\"mc-cleaner\"></ng-content>\n </div>\n\n <div class=\"mc-select__arrow-wrapper\">\n <i class=\"mc-select__arrow\" mc-icon=\"mc-angle-down-S_16\"></i>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"triggerRect?.width!\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n (backdropClick)=\"close()\"\n (attach)=\"onAttached()\"\n (detach)=\"close()\">\n\n <div #panel\n class=\"mc-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.transformOrigin]=\"transformOrigin\"\n [style.font-size.px]=\"triggerFontSize\"\n (keydown)=\"handleKeydown($event)\">\n\n <div *ngIf=\"search\" class=\"mc-select__search-container\">\n <ng-content select=\"[mcSelectSearch]\"></ng-content>\n </div>\n\n <div #optionsContainer\n class=\"mc-select__content\"\n [@fadeInContent]=\"'showing'\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\">\n\n <div *ngIf=\"isEmptySearchResult\" class=\"mc-select__no-options-message\">\n <ng-content select=\"[mc-select-search-empty-result]\"></ng-content>\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { McHighlightModule, McOptionModule } from '@ptsecurity/mosaic/core';\nimport { McFormFieldModule } from '@ptsecurity/mosaic/form-field';\nimport { McIconModule } from '@ptsecurity/mosaic/icon';\nimport { McSelectModule } from '@ptsecurity/mosaic/select';\nimport { McTagsModule } from '@ptsecurity/mosaic/tags';\nimport { McToolTipModule } from '@ptsecurity/mosaic/tooltip';\n\nimport { CitiesByFilterPipe } from './cities-by-filter.pipe';\nimport { McTimezoneOption } from './timezone-option.component';\nimport { McTimezoneOptionTooltip } from './timezone-option.directive';\nimport { McTimezoneSelect, McTimezoneSelectTrigger } from './timezone-select.component';\nimport { UtcOffsetPipe } from './utc-offset.pipe';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n McFormFieldModule,\n McOptionModule,\n McSelectModule,\n McIconModule,\n McTagsModule,\n McToolTipModule,\n McHighlightModule\n ],\n declarations: [\n UtcOffsetPipe,\n CitiesByFilterPipe,\n McTimezoneSelect,\n McTimezoneOption,\n McTimezoneOptionTooltip,\n McTimezoneSelectTrigger\n ],\n exports: [\n McTimezoneSelect,\n McTimezoneOption,\n McTimezoneOptionTooltip,\n McTimezoneSelectTrigger\n ]\n})\nexport class McTimezoneModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.UtcOffsetPipe","i3.CitiesByFilterPipe","i1","i3"],"mappings":"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"}
@@ -59,9 +59,9 @@ class McToastContainerComponent {
59
59
  });
60
60
  }
61
61
  }
62
- /** @nocollapse */ McToastContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.5", 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: "14.2.5", 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:12px;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){z-index:1010}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToastContainerComponent, decorators: [{
62
+ /** @nocollapse */ McToastContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", 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: "14.2.12", 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:12px;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){z-index:1010}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToastContainerComponent, decorators: [{
65
65
  type: Component,
66
66
  args: [{ selector: 'mc-toast-container', template: '<ng-container #container></ng-container>', host: {
67
67
  class: 'mc-toast-container'
@@ -235,9 +235,9 @@ class McToastService {
235
235
  return this.overlay.position().global();
236
236
  }
237
237
  }
238
- /** @nocollapse */ McToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.5", 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: "14.2.5", ngImport: i0, type: McToastService, providedIn: 'root' });
240
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToastService, decorators: [{
238
+ /** @nocollapse */ McToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", 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: "14.2.12", ngImport: i0, type: McToastService, providedIn: 'root' });
240
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToastService, decorators: [{
241
241
  type: Injectable,
242
242
  args: [{ providedIn: 'root' }]
243
243
  }], ctorParameters: function () {
@@ -319,9 +319,9 @@ class McToastComponent {
319
319
  this.focusMonitor.stopMonitoring(this.elementRef.nativeElement);
320
320
  }
321
321
  }
322
- /** @nocollapse */ McToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.5", 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: "14.2.5", 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.Second\"></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:360px;width:var(--mc-toast-size-width, 360px);padding-right:16px;padding-right:var(--mc-toast-size-padding-right, 16px);padding-left:12px;padding-left:var(--mc-toast-size-padding-left, 12px);border-width:1px;border-width:var(--mc-toast-size-border-width, 1px);border-style:solid;border-radius:3px;border-radius:var(--mc-toast-size-border-radius, 3px)}.mc-toast__icon-container{padding-right:8px;padding-right:var(--mc-toast-size-icon-margin, 8px);padding-top:12px;padding-top:var(--mc-toast-size-padding-vertical, 12px);padding-bottom:12px;padding-bottom:var(--mc-toast-size-padding-vertical, 12px)}.mc-toast__container{width:100%;padding-top:12px;padding-top:var(--mc-toast-size-padding-vertical, 12px);padding-bottom: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:8px;margin-top:var(--mc-toast-size-actionbar-margin, 8px)}.mc-toast__actions>*{margin-right:12px;margin-right:var(--mc-toast-size-actionbar-gap, 12px)}.mc-toast__close{float:right;width:32px;width:var(--mc-toast-size-close-button-width, 32px);height: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: "14.2.5", ngImport: i0, type: McToastComponent, decorators: [{
322
+ /** @nocollapse */ McToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", 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: "14.2.12", 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.Second\"></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:360px;width:var(--mc-toast-size-width, 360px);padding-right:16px;padding-right:var(--mc-toast-size-padding-right, 16px);padding-left:12px;padding-left:var(--mc-toast-size-padding-left, 12px);border-width:1px;border-width:var(--mc-toast-size-border-width, 1px);border-style:solid;border-radius:3px;border-radius:var(--mc-toast-size-border-radius, 3px)}.mc-toast__icon-container{padding-right:8px;padding-right:var(--mc-toast-size-icon-margin, 8px);padding-top:12px;padding-top:var(--mc-toast-size-padding-vertical, 12px);padding-bottom:12px;padding-bottom:var(--mc-toast-size-padding-vertical, 12px)}.mc-toast__container{width:100%;padding-top:12px;padding-top:var(--mc-toast-size-padding-vertical, 12px);padding-bottom: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:8px;margin-top:var(--mc-toast-size-actionbar-margin, 8px)}.mc-toast__actions>*{margin-right:12px;margin-right:var(--mc-toast-size-actionbar-gap, 12px)}.mc-toast__close{float:right;width:32px;width:var(--mc-toast-size-close-button-width, 32px);height: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: "14.2.12", ngImport: i0, type: McToastComponent, decorators: [{
325
325
  type: Component,
326
326
  args: [{ selector: 'mc-toast', host: {
327
327
  class: 'mc-toast',
@@ -341,19 +341,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.5", ngImpor
341
341
 
342
342
  class McToastModule {
343
343
  }
344
- /** @nocollapse */ McToastModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
345
- /** @nocollapse */ McToastModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.5", ngImport: i0, type: McToastModule, declarations: [McToastComponent,
344
+ /** @nocollapse */ McToastModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
345
+ /** @nocollapse */ McToastModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: McToastModule, declarations: [McToastComponent,
346
346
  McToastContainerComponent], imports: [CommonModule,
347
347
  OverlayModule,
348
348
  A11yModule,
349
349
  McIconModule,
350
350
  McButtonModule] });
351
- /** @nocollapse */ McToastModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToastModule, providers: [{ provide: MC_TOAST_FACTORY, useFactory: (() => McToastComponent) }], imports: [CommonModule,
351
+ /** @nocollapse */ McToastModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToastModule, providers: [{ provide: MC_TOAST_FACTORY, useFactory: (() => McToastComponent) }], imports: [CommonModule,
352
352
  OverlayModule,
353
353
  A11yModule,
354
354
  McIconModule,
355
355
  McButtonModule] });
356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToastModule, decorators: [{
356
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToastModule, decorators: [{
357
357
  type: NgModule,
358
358
  args: [{
359
359
  declarations: [
@@ -1 +1 @@
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.Second\"></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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"}
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.Second\"></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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"}
@@ -103,8 +103,8 @@ class McToggleComponent extends McToggleMixinBase {
103
103
  this.change.emit(event);
104
104
  }
105
105
  }
106
- /** @nocollapse */ McToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToggleComponent, deps: [{ token: i0.ElementRef }, { token: i1.FocusMonitor }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
107
- /** @nocollapse */ McToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.5", type: McToggleComponent, selector: "mc-toggle", inputs: { color: "color", tabIndex: "tabIndex", labelPosition: "labelPosition", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], id: "id", name: "name", value: "value", disabled: "disabled", checked: "checked" }, outputs: { change: "change" }, host: { properties: { "id": "id", "attr.id": "id", "class.mc-disabled": "disabled", "class.mc-active": "checked" }, classAttribute: "mc-toggle" }, providers: [{
106
+ /** @nocollapse */ McToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToggleComponent, deps: [{ token: i0.ElementRef }, { token: i1.FocusMonitor }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
107
+ /** @nocollapse */ McToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: McToggleComponent, selector: "mc-toggle", inputs: { color: "color", tabIndex: "tabIndex", labelPosition: "labelPosition", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], id: "id", name: "name", value: "value", disabled: "disabled", checked: "checked" }, outputs: { change: "change" }, host: { properties: { "id": "id", "attr.id": "id", "class.mc-disabled": "disabled", "class.mc-active": "checked" }, classAttribute: "mc-toggle" }, providers: [{
108
108
  provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => McToggleComponent)), multi: true
109
109
  }], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], exportAs: ["mcToggle"], usesInheritance: true, ngImport: i0, template: "<label [attr.for]=\"inputId\" class=\"mc-toggle-layout\">\n <div class=\"mc-toggle__container\" [class.left]=\"labelPosition === 'left'\">\n <input #input\n type=\"checkbox\"\n role=\"switch\"\n class=\"mc-toggle-input cdk-visually-hidden\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"getAriaChecked()\"\n (click)=\"onInputClick($event)\"\n (change)=\"onChangeEvent($event)\"/>\n <div class=\"mc-toggle-bar-container\">\n <div class=\"mc-toggle__overlay\"></div>\n <div class=\"mc-toggle-bar\">\n <div class=\"mc-toggle__circle\" [@switch]=\"checked\"></div>\n </div>\n </div>\n <div class=\"mc-toggle__content\"\n [class.left]=\"labelPosition === 'left'\"\n [class.right]=\"labelPosition === 'right'\">\n <span class=\"mc-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</label>\n", styles: [".mc-toggle{display:inline-block}.mc-toggle .mc-toggle-layout{cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mc-toggle .mc-toggle-bar{box-sizing:border-box;position:relative;border-width:1px;border-style:solid}.mc-toggle .mc-toggle-bar.mc-toggle-label-position-left{order:1}.mc-toggle .mc-toggle-bar-container{position:relative}.mc-toggle__container{display:flex;align-items:center;position:relative}.mc-toggle__container.left{flex-direction:row-reverse}.mc-toggle__content.left{margin-right:8px;margin-right:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__content.right{margin-left:8px;margin-left:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__circle{box-sizing:border-box;position:absolute;border-width:1px;border-style:solid;border-radius:100%;margin-top:-1px;margin-left:-1px;transform:translate(-1px)}.mc-toggle__overlay{position:absolute;top:0;left:0;z-index:1}.mc-toggle:not(.mc-toggle_small) .mc-toggle-bar{height:16px;height:var(--mc-toggle-size-height, 16px);width:28px;width:var(--mc-toggle-size-width, 28px);border-radius:9px;border-radius:var(--mc-toggle-size-border-radius, 9px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__overlay{border-radius:9px;border-radius:var(--mc-toggle-size-border-radius, 9px);height:16px;height:var(--mc-toggle-size-height, 16px);width:28px;width:var(--mc-toggle-size-width, 28px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__circle{height:16px;height:var(--mc-toggle-size-height, 16px);width:16px;width:var(--mc-toggle-size-height, 16px)}.mc-toggle.mc-toggle_small .mc-toggle-bar{height:14px;height:var(--mc-toggle-small-size-height, 14px);width:24px;width:var(--mc-toggle-small-size-width, 24px);border-radius:8px;border-radius:var(--mc-toggle-small-size-border-radius, 8px)}.mc-toggle.mc-toggle_small .mc-toggle__overlay{border-radius:8px;border-radius:var(--mc-toggle-small-size-border-radius, 8px);height:14px;height:var(--mc-toggle-small-size-height, 14px);width:24px;width:var(--mc-toggle-small-size-width, 24px)}.mc-toggle.mc-toggle_small .mc-toggle__circle{height:14px;height:var(--mc-toggle-small-size-height, 14px);width:14px;width:var(--mc-toggle-small-size-height, 14px)}.mc-toggle:not(.mc-disabled){cursor:pointer}\n"], animations: [
110
110
  trigger('switch', [
@@ -113,7 +113,7 @@ class McToggleComponent extends McToggleMixinBase {
113
113
  transition('true <=> false', animate('150ms'))
114
114
  ])
115
115
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToggleComponent, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToggleComponent, decorators: [{
117
117
  type: Component,
118
118
  args: [{ selector: 'mc-toggle', exportAs: 'mcToggle', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: ['color', 'tabIndex'], host: {
119
119
  class: 'mc-toggle',
@@ -157,10 +157,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.5", ngImpor
157
157
 
158
158
  class McToggleModule {
159
159
  }
160
- /** @nocollapse */ McToggleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
161
- /** @nocollapse */ McToggleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.5", ngImport: i0, type: McToggleModule, declarations: [McToggleComponent], imports: [CommonModule, A11yModule, McCommonModule], exports: [McToggleComponent] });
162
- /** @nocollapse */ McToggleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToggleModule, imports: [CommonModule, A11yModule, McCommonModule] });
163
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.5", ngImport: i0, type: McToggleModule, decorators: [{
160
+ /** @nocollapse */ McToggleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
161
+ /** @nocollapse */ McToggleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: McToggleModule, declarations: [McToggleComponent], imports: [CommonModule, A11yModule, McCommonModule], exports: [McToggleComponent] });
162
+ /** @nocollapse */ McToggleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToggleModule, imports: [CommonModule, A11yModule, McCommonModule] });
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: McToggleModule, decorators: [{
164
164
  type: NgModule,
165
165
  args: [{
166
166
  imports: [CommonModule, A11yModule, McCommonModule],
@@ -1 +1 @@
1
- {"version":3,"file":"ptsecurity-mosaic-toggle.mjs","sources":["../../../packages/mosaic/toggle/toggle.component.ts","../../../packages/mosaic/toggle/toggle.component.html","../../../packages/mosaic/toggle/toggle.module.ts","../../../packages/mosaic/toggle/ptsecurity-mosaic-toggle.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n ThemePalette,\n CanColor, CanColorCtor,\n CanDisable, CanDisableCtor,\n HasTabIndex, HasTabIndexCtor,\n mixinColor,\n mixinDisabled,\n mixinTabIndex\n} from '@ptsecurity/mosaic/core';\n\n\nlet nextUniqueId = 0;\n\ntype ToggleLabelPositionType = 'left' | 'right';\n\nexport class McToggleBase {\n constructor(public elementRef: ElementRef) {}\n}\n\n// tslint:disable-next-line: naming-convention\nexport const McToggleMixinBase:\n HasTabIndexCtor &\n CanDisableCtor &\n CanColorCtor &\n typeof McToggleBase = mixinTabIndex(mixinColor(mixinDisabled(McToggleBase), ThemePalette.Primary));\n\nexport class McToggleChange {\n source: McToggleComponent;\n checked: boolean;\n}\n\n@Component({\n selector: 'mc-toggle',\n exportAs: 'mcToggle',\n templateUrl: './toggle.component.html',\n styleUrls: ['./toggle.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n inputs: ['color', 'tabIndex'],\n host: {\n class: 'mc-toggle',\n '[id]': 'id',\n '[attr.id]': 'id',\n '[class.mc-disabled]': 'disabled',\n '[class.mc-active]': 'checked'\n },\n animations: [\n trigger('switch', [\n state('true' , style({ left: '50%' })),\n state('false', style({ left: '1px' })),\n transition('true <=> false', animate('150ms'))\n ])\n ],\n providers: [{\n provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => McToggleComponent), multi: true\n }]\n})\nexport class McToggleComponent extends McToggleMixinBase\n implements ControlValueAccessor, CanColor, CanDisable, HasTabIndex {\n\n @ViewChild('input', { static: false }) inputElement: ElementRef;\n\n @Input() labelPosition: ToggleLabelPositionType = 'right';\n\n @Input('aria-label') ariaLabel: string = '';\n @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n @Input() id: string;\n\n get inputId(): string {\n return `${this.id || this.uniqueId}-input`;\n }\n\n @Input() name: string | null = null;\n\n @Input() value: string;\n\n @Input()\n get disabled() {\n return this._disabled;\n }\n\n set disabled(value: any) {\n if (value !== this._disabled) {\n this._disabled = value;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n private _disabled: boolean = false;\n\n get checked() {\n return this._checked;\n }\n\n @Input()\n set checked(value: boolean) {\n if (value !== this._checked) {\n this._checked = value;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n private _checked: boolean = false;\n\n @Output() readonly change: EventEmitter<McToggleChange> = new EventEmitter<McToggleChange>();\n\n private uniqueId: string = `mc-toggle-${++nextUniqueId}`;\n\n constructor(\n public elementRef: ElementRef,\n private _focusMonitor: FocusMonitor,\n private _changeDetectorRef: ChangeDetectorRef\n ) {\n super(elementRef);\n\n this.id = this.uniqueId;\n\n this._focusMonitor.monitor(this.elementRef.nativeElement, true);\n }\n\n ngOnDestroy() {\n this._focusMonitor.stopMonitoring(this.elementRef.nativeElement);\n }\n\n focus(): void {\n this._focusMonitor.focusVia(this.inputElement.nativeElement, 'keyboard');\n }\n\n getAriaChecked(): boolean {\n return this.checked;\n }\n\n onChangeEvent(event: Event) {\n event.stopPropagation();\n\n this.updateModelValue();\n this.emitChangeEvent();\n }\n\n onLabelTextChange() {\n this._changeDetectorRef.markForCheck();\n }\n\n onInputClick(event: MouseEvent) {\n event.stopPropagation();\n }\n\n writeValue(value: any) {\n this.checked = !!value;\n }\n\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n }\n\n // tslint:disable-next-line:no-empty\n private onTouchedCallback = () => {};\n\n // tslint:disable-next-line:no-empty\n private onChangeCallback = (_: any) => {};\n\n private updateModelValue() {\n this._checked = !this.checked;\n this.onTouchedCallback();\n }\n\n private emitChangeEvent() {\n const event = new McToggleChange();\n event.source = this;\n event.checked = this.checked;\n\n this.onChangeCallback(this.checked);\n this.change.emit(event);\n }\n}\n","<label [attr.for]=\"inputId\" class=\"mc-toggle-layout\">\n <div class=\"mc-toggle__container\" [class.left]=\"labelPosition === 'left'\">\n <input #input\n type=\"checkbox\"\n role=\"switch\"\n class=\"mc-toggle-input cdk-visually-hidden\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"getAriaChecked()\"\n (click)=\"onInputClick($event)\"\n (change)=\"onChangeEvent($event)\"/>\n <div class=\"mc-toggle-bar-container\">\n <div class=\"mc-toggle__overlay\"></div>\n <div class=\"mc-toggle-bar\">\n <div class=\"mc-toggle__circle\" [@switch]=\"checked\"></div>\n </div>\n </div>\n <div class=\"mc-toggle__content\"\n [class.left]=\"labelPosition === 'left'\"\n [class.right]=\"labelPosition === 'right'\">\n <span class=\"mc-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</label>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { McCommonModule } from '@ptsecurity/mosaic/core';\n\nimport { McToggleComponent } from './toggle.component';\n\n\n@NgModule({\n imports: [CommonModule, A11yModule, McCommonModule],\n exports: [McToggleComponent],\n declarations: [McToggleComponent]\n})\nexport class McToggleModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ptsecurity-mosaic-toggle.mjs","sources":["../../../packages/mosaic/toggle/toggle.component.ts","../../../packages/mosaic/toggle/toggle.component.html","../../../packages/mosaic/toggle/toggle.module.ts","../../../packages/mosaic/toggle/ptsecurity-mosaic-toggle.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n ThemePalette,\n CanColor, CanColorCtor,\n CanDisable, CanDisableCtor,\n HasTabIndex, HasTabIndexCtor,\n mixinColor,\n mixinDisabled,\n mixinTabIndex\n} from '@ptsecurity/mosaic/core';\n\n\nlet nextUniqueId = 0;\n\ntype ToggleLabelPositionType = 'left' | 'right';\n\nexport class McToggleBase {\n constructor(public elementRef: ElementRef) {}\n}\n\n// tslint:disable-next-line: naming-convention\nexport const McToggleMixinBase:\n HasTabIndexCtor &\n CanDisableCtor &\n CanColorCtor &\n typeof McToggleBase = mixinTabIndex(mixinColor(mixinDisabled(McToggleBase), ThemePalette.Primary));\n\nexport class McToggleChange {\n source: McToggleComponent;\n checked: boolean;\n}\n\n@Component({\n selector: 'mc-toggle',\n exportAs: 'mcToggle',\n templateUrl: './toggle.component.html',\n styleUrls: ['./toggle.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n inputs: ['color', 'tabIndex'],\n host: {\n class: 'mc-toggle',\n '[id]': 'id',\n '[attr.id]': 'id',\n '[class.mc-disabled]': 'disabled',\n '[class.mc-active]': 'checked'\n },\n animations: [\n trigger('switch', [\n state('true' , style({ left: '50%' })),\n state('false', style({ left: '1px' })),\n transition('true <=> false', animate('150ms'))\n ])\n ],\n providers: [{\n provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => McToggleComponent), multi: true\n }]\n})\nexport class McToggleComponent extends McToggleMixinBase\n implements ControlValueAccessor, CanColor, CanDisable, HasTabIndex {\n\n @ViewChild('input', { static: false }) inputElement: ElementRef;\n\n @Input() labelPosition: ToggleLabelPositionType = 'right';\n\n @Input('aria-label') ariaLabel: string = '';\n @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n @Input() id: string;\n\n get inputId(): string {\n return `${this.id || this.uniqueId}-input`;\n }\n\n @Input() name: string | null = null;\n\n @Input() value: string;\n\n @Input()\n get disabled() {\n return this._disabled;\n }\n\n set disabled(value: any) {\n if (value !== this._disabled) {\n this._disabled = value;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n private _disabled: boolean = false;\n\n get checked() {\n return this._checked;\n }\n\n @Input()\n set checked(value: boolean) {\n if (value !== this._checked) {\n this._checked = value;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n private _checked: boolean = false;\n\n @Output() readonly change: EventEmitter<McToggleChange> = new EventEmitter<McToggleChange>();\n\n private uniqueId: string = `mc-toggle-${++nextUniqueId}`;\n\n constructor(\n public elementRef: ElementRef,\n private _focusMonitor: FocusMonitor,\n private _changeDetectorRef: ChangeDetectorRef\n ) {\n super(elementRef);\n\n this.id = this.uniqueId;\n\n this._focusMonitor.monitor(this.elementRef.nativeElement, true);\n }\n\n ngOnDestroy() {\n this._focusMonitor.stopMonitoring(this.elementRef.nativeElement);\n }\n\n focus(): void {\n this._focusMonitor.focusVia(this.inputElement.nativeElement, 'keyboard');\n }\n\n getAriaChecked(): boolean {\n return this.checked;\n }\n\n onChangeEvent(event: Event) {\n event.stopPropagation();\n\n this.updateModelValue();\n this.emitChangeEvent();\n }\n\n onLabelTextChange() {\n this._changeDetectorRef.markForCheck();\n }\n\n onInputClick(event: MouseEvent) {\n event.stopPropagation();\n }\n\n writeValue(value: any) {\n this.checked = !!value;\n }\n\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n }\n\n // tslint:disable-next-line:no-empty\n private onTouchedCallback = () => {};\n\n // tslint:disable-next-line:no-empty\n private onChangeCallback = (_: any) => {};\n\n private updateModelValue() {\n this._checked = !this.checked;\n this.onTouchedCallback();\n }\n\n private emitChangeEvent() {\n const event = new McToggleChange();\n event.source = this;\n event.checked = this.checked;\n\n this.onChangeCallback(this.checked);\n this.change.emit(event);\n }\n}\n","<label [attr.for]=\"inputId\" class=\"mc-toggle-layout\">\n <div class=\"mc-toggle__container\" [class.left]=\"labelPosition === 'left'\">\n <input #input\n type=\"checkbox\"\n role=\"switch\"\n class=\"mc-toggle-input cdk-visually-hidden\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"getAriaChecked()\"\n (click)=\"onInputClick($event)\"\n (change)=\"onChangeEvent($event)\"/>\n <div class=\"mc-toggle-bar-container\">\n <div class=\"mc-toggle__overlay\"></div>\n <div class=\"mc-toggle-bar\">\n <div class=\"mc-toggle__circle\" [@switch]=\"checked\"></div>\n </div>\n </div>\n <div class=\"mc-toggle__content\"\n [class.left]=\"labelPosition === 'left'\"\n [class.right]=\"labelPosition === 'right'\">\n <span class=\"mc-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</label>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { McCommonModule } from '@ptsecurity/mosaic/core';\n\nimport { McToggleComponent } from './toggle.component';\n\n\n@NgModule({\n imports: [CommonModule, A11yModule, McCommonModule],\n exports: [McToggleComponent],\n declarations: [McToggleComponent]\n})\nexport class McToggleModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}