@ptsecurity/mosaic 15.3.2 → 15.4.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (469) hide show
  1. package/_theming.scss +688 -212
  2. package/_visual.scss +132 -42
  3. package/alert/README.md +0 -0
  4. package/alert/_alert-theme.scss +61 -0
  5. package/alert/alert.component.d.ts +22 -0
  6. package/alert/alert.component.scss +81 -0
  7. package/alert/alert.module.d.ts +10 -0
  8. package/alert/index.d.ts +1 -0
  9. package/alert/public-api.d.ts +2 -0
  10. package/autocomplete/_autocomplete-theme.nvl.scss +21 -0
  11. package/button/_button-base.scss +2 -2
  12. package/button/_button-theme.nvl.scss +180 -0
  13. package/button/_button-theme.scss +0 -2
  14. package/button/button.component.d.ts +12 -3
  15. package/button/button.scss +19 -5
  16. package/button-toggle/_button-toggle-theme.scss +92 -0
  17. package/button-toggle/button-toggle.component.d.ts +6 -2
  18. package/button-toggle/button-toggle.module.d.ts +2 -1
  19. package/button-toggle/button-toggle.scss +110 -82
  20. package/card/_card-theme.nvl.scss +61 -0
  21. package/checkbox/_checkbox-theme.nvl.scss +120 -0
  22. package/checkbox/_checkbox-theme.scss +7 -7
  23. package/checkbox/checkbox.d.ts +2 -1
  24. package/checkbox/checkbox.scss +85 -52
  25. package/code-block/_code-block-theme.nvl.scss +326 -0
  26. package/core/common-behaviors/color.d.ts +13 -2
  27. package/core/common-behaviors/index.d.ts +1 -1
  28. package/core/forms/_forms-theme.nvl.scss +31 -0
  29. package/core/highlight/_highlight-theme.nvl.scss +8 -0
  30. package/core/highlight/_highlight-theme.scss +0 -2
  31. package/core/option/_optgroup-theme.nvl.scss +25 -0
  32. package/core/option/_option-action-theme.nvl.scss +41 -0
  33. package/core/option/_option-theme.nvl.scss +44 -0
  34. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.nvl.scss +48 -0
  35. package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +2 -1
  36. package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +26 -6
  37. package/core/styles/_mosaic-theme.nvl.scss +153 -0
  38. package/core/styles/_mosaic-theme.scss +7 -2
  39. package/core/styles/_tokens.scss +4 -4
  40. package/core/styles/theming/_badges-theme.nvl.scss +118 -0
  41. package/core/styles/theming/_badges.nvl.scss +57 -0
  42. package/core/styles/theming/_components-theming.nvl.scss +1185 -0
  43. package/core/styles/theming/_components-theming.scss +92 -0
  44. package/core/styles/theming/_scrollbars-theme.nvl.scss +98 -0
  45. package/core/styles/theming/_scrollbars.nvl.scss +39 -0
  46. package/core/styles/theming/_theming.nvl.scss +137 -0
  47. package/core/styles/theming/prebuilt/dark-theme.nvl.scss +20 -0
  48. package/core/styles/theming/prebuilt/light-theme.nvl.scss +20 -0
  49. package/core/styles/typography/_typography.scss +5 -4
  50. package/core/utils/data-size/config.d.ts +20 -0
  51. package/core/utils/data-size/data-size.pipe.d.ts +13 -0
  52. package/core/utils/data-size/index.d.ts +3 -0
  53. package/core/utils/data-size/size.d.ts +16 -0
  54. package/core/utils/public-api.d.ts +1 -0
  55. package/datepicker/_datepicker-theme.nvl.scss +101 -0
  56. package/datepicker/datepicker-toggle.scss +2 -2
  57. package/divider/_divider-theme.nvl.scss +10 -0
  58. package/divider/_divider-theme.scss +1 -0
  59. package/divider/divider.component.d.ts +4 -1
  60. package/divider/divider.scss +24 -24
  61. package/dl/_dl-theme.nvl.scss +86 -0
  62. package/dl/_dl-theme.scss +0 -1
  63. package/dropdown/_dropdown-theme.nvl.scss +85 -0
  64. package/dropdown/dropdown.scss +3 -3
  65. package/ellipsis-center/ellipsis-center.directive.d.ts +27 -0
  66. package/ellipsis-center/index.d.ts +1 -0
  67. package/ellipsis-center/public-api.d.ts +1 -0
  68. package/esm2020/alert/alert.component.mjs +67 -0
  69. package/esm2020/alert/alert.module.mjs +44 -0
  70. package/esm2020/alert/index.mjs +2 -0
  71. package/esm2020/alert/ptsecurity-mosaic-alert.mjs +5 -0
  72. package/esm2020/alert/public-api.mjs +3 -0
  73. package/esm2020/autocomplete/autocomplete-origin.directive.mjs +3 -3
  74. package/esm2020/autocomplete/autocomplete-trigger.directive.mjs +3 -3
  75. package/esm2020/autocomplete/autocomplete.component.mjs +5 -5
  76. package/esm2020/autocomplete/autocomplete.module.mjs +4 -4
  77. package/esm2020/button/button.component.mjs +37 -19
  78. package/esm2020/button/button.module.mjs +4 -4
  79. package/esm2020/button-toggle/button-toggle.component.mjs +33 -14
  80. package/esm2020/button-toggle/button-toggle.module.mjs +7 -6
  81. package/esm2020/card/card.component.mjs +3 -3
  82. package/esm2020/card/card.module.mjs +4 -4
  83. package/esm2020/checkbox/checkbox-module.mjs +4 -4
  84. package/esm2020/checkbox/checkbox-required-validator.mjs +3 -3
  85. package/esm2020/checkbox/checkbox.mjs +13 -9
  86. package/esm2020/code-block/actionbar.component.mjs +5 -5
  87. package/esm2020/code-block/code-block.component.mjs +4 -4
  88. package/esm2020/code-block/code-block.module.mjs +4 -4
  89. package/esm2020/core/common-behaviors/color.mjs +14 -2
  90. package/esm2020/core/common-behaviors/common-module.mjs +4 -4
  91. package/esm2020/core/common-behaviors/index.mjs +2 -2
  92. package/esm2020/core/error/error-options.mjs +6 -6
  93. package/esm2020/core/formatters/date/formatter.mjs +3 -3
  94. package/esm2020/core/formatters/date/formatter.pipe.mjs +39 -39
  95. package/esm2020/core/formatters/index.mjs +4 -4
  96. package/esm2020/core/formatters/number/formatter.mjs +4 -4
  97. package/esm2020/core/forms/forms-module.mjs +4 -4
  98. package/esm2020/core/forms/forms.directive.mjs +6 -6
  99. package/esm2020/core/highlight/highlight.pipe.mjs +3 -3
  100. package/esm2020/core/highlight/index.mjs +4 -4
  101. package/esm2020/core/line/line.mjs +7 -7
  102. package/esm2020/core/locales/locale-service.mjs +3 -3
  103. package/esm2020/core/locales/locale-service.module.mjs +4 -4
  104. package/esm2020/core/option/action.mjs +3 -3
  105. package/esm2020/core/option/optgroup.mjs +3 -3
  106. package/esm2020/core/option/option-module.mjs +4 -4
  107. package/esm2020/core/option/option.mjs +4 -4
  108. package/esm2020/core/pop-up/pop-up-trigger.mjs +3 -3
  109. package/esm2020/core/pop-up/pop-up.mjs +3 -3
  110. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +12 -8
  111. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +4 -4
  112. package/esm2020/core/services/measure-scrollbar.service.mjs +3 -3
  113. package/esm2020/core/utils/data-size/config.mjs +22 -0
  114. package/esm2020/core/utils/data-size/data-size.pipe.mjs +32 -0
  115. package/esm2020/core/utils/data-size/index.mjs +4 -0
  116. package/esm2020/core/utils/data-size/size.mjs +50 -0
  117. package/esm2020/core/utils/public-api.mjs +2 -1
  118. package/esm2020/core/version.mjs +2 -2
  119. package/esm2020/datepicker/calendar-body.component.mjs +3 -3
  120. package/esm2020/datepicker/calendar-header.component.mjs +3 -3
  121. package/esm2020/datepicker/calendar.component.mjs +3 -3
  122. package/esm2020/datepicker/datepicker-input.directive.mjs +3 -3
  123. package/esm2020/datepicker/datepicker-intl.mjs +3 -3
  124. package/esm2020/datepicker/datepicker-module.mjs +4 -4
  125. package/esm2020/datepicker/datepicker-toggle.component.mjs +7 -7
  126. package/esm2020/datepicker/datepicker.component.mjs +6 -6
  127. package/esm2020/datepicker/month-view.component.mjs +3 -3
  128. package/esm2020/divider/divider.component.mjs +16 -6
  129. package/esm2020/divider/divider.module.mjs +4 -4
  130. package/esm2020/dl/dl.component.mjs +9 -9
  131. package/esm2020/dl/dl.module.mjs +4 -4
  132. package/esm2020/dropdown/dropdown-content.directive.mjs +3 -3
  133. package/esm2020/dropdown/dropdown-item.component.mjs +5 -5
  134. package/esm2020/dropdown/dropdown-trigger.directive.mjs +3 -3
  135. package/esm2020/dropdown/dropdown.component.mjs +6 -6
  136. package/esm2020/dropdown/dropdown.module.mjs +4 -4
  137. package/esm2020/ellipsis-center/ellipsis-center.directive.mjs +106 -0
  138. package/esm2020/ellipsis-center/index.mjs +2 -0
  139. package/esm2020/ellipsis-center/ptsecurity-mosaic-ellipsis-center.mjs +5 -0
  140. package/esm2020/ellipsis-center/public-api.mjs +2 -0
  141. package/esm2020/file-upload/file-drop.mjs +43 -0
  142. package/esm2020/file-upload/file-upload.mjs +4 -0
  143. package/esm2020/file-upload/file-upload.module.mjs +66 -0
  144. package/esm2020/file-upload/index.mjs +2 -0
  145. package/esm2020/file-upload/multiple-file-upload.component.mjs +161 -0
  146. package/esm2020/file-upload/ptsecurity-mosaic-file-upload.mjs +5 -0
  147. package/esm2020/file-upload/public-api.mjs +6 -0
  148. package/esm2020/file-upload/single-file-upload.component.mjs +130 -0
  149. package/esm2020/form-field/cleaner.mjs +7 -7
  150. package/esm2020/form-field/form-field.mjs +10 -10
  151. package/esm2020/form-field/form-field.module.mjs +4 -4
  152. package/esm2020/form-field/hint.mjs +15 -15
  153. package/esm2020/form-field/password-hint.mjs +4 -4
  154. package/esm2020/form-field/prefix.mjs +3 -3
  155. package/esm2020/form-field/stepper.mjs +3 -3
  156. package/esm2020/form-field/suffix.mjs +3 -3
  157. package/esm2020/form-field/validate.directive.mjs +3 -3
  158. package/esm2020/icon/icon.component.mjs +78 -21
  159. package/esm2020/icon/icon.module.mjs +14 -10
  160. package/esm2020/input/input-number-validators.mjs +6 -6
  161. package/esm2020/input/input-number.mjs +3 -3
  162. package/esm2020/input/input-password.mjs +6 -6
  163. package/esm2020/input/input.mjs +6 -6
  164. package/esm2020/input/input.module.mjs +4 -4
  165. package/esm2020/link/link.component.mjs +14 -4
  166. package/esm2020/link/link.module.mjs +4 -4
  167. package/esm2020/list/list-selection.component.mjs +9 -9
  168. package/esm2020/list/list.component.mjs +7 -7
  169. package/esm2020/list/list.module.mjs +4 -4
  170. package/esm2020/loader-overlay/loader-overlay.component.mjs +12 -12
  171. package/esm2020/loader-overlay/loader-overlay.module.mjs +4 -4
  172. package/esm2020/markdown/markdown.component.mjs +5 -5
  173. package/esm2020/markdown/markdown.module.mjs +4 -4
  174. package/esm2020/markdown/markdown.service.mjs +3 -3
  175. package/esm2020/modal/css-unit.pipe.mjs +3 -3
  176. package/esm2020/modal/modal-control.service.mjs +3 -3
  177. package/esm2020/modal/modal.component.mjs +4 -4
  178. package/esm2020/modal/modal.directive.mjs +12 -12
  179. package/esm2020/modal/modal.module.mjs +4 -4
  180. package/esm2020/modal/modal.service.mjs +3 -3
  181. package/esm2020/navbar/navbar-item.component.mjs +31 -31
  182. package/esm2020/navbar/navbar.component.mjs +9 -9
  183. package/esm2020/navbar/navbar.module.mjs +4 -4
  184. package/esm2020/navbar/vertical-navbar.component.mjs +3 -3
  185. package/esm2020/popover/popover-confirm.component.mjs +8 -8
  186. package/esm2020/popover/popover.component.mjs +7 -7
  187. package/esm2020/popover/popover.module.mjs +4 -4
  188. package/esm2020/progress-bar/progress-bar.component.mjs +3 -3
  189. package/esm2020/progress-bar/progress-bar.module.mjs +4 -4
  190. package/esm2020/progress-spinner/progress-spinner.component.mjs +6 -6
  191. package/esm2020/progress-spinner/progress-spinner.module.mjs +4 -4
  192. package/esm2020/radio/radio.component.mjs +13 -9
  193. package/esm2020/radio/radio.module.mjs +4 -4
  194. package/esm2020/select/select-option.directive.mjs +3 -3
  195. package/esm2020/select/select.component.mjs +22 -22
  196. package/esm2020/select/select.module.mjs +4 -4
  197. package/esm2020/sidebar/sidebar.component.mjs +9 -9
  198. package/esm2020/sidebar/sidebar.module.mjs +4 -4
  199. package/esm2020/sidepanel/sidepanel-container.component.mjs +4 -4
  200. package/esm2020/sidepanel/sidepanel-directives.mjs +17 -17
  201. package/esm2020/sidepanel/sidepanel.module.mjs +4 -4
  202. package/esm2020/sidepanel/sidepanel.service.mjs +3 -3
  203. package/esm2020/splitter/splitter.component.mjs +12 -12
  204. package/esm2020/splitter/splitter.module.mjs +4 -4
  205. package/esm2020/table/table.component.mjs +3 -3
  206. package/esm2020/table/table.module.mjs +4 -4
  207. package/esm2020/tabs/paginated-tab-header.mjs +3 -3
  208. package/esm2020/tabs/tab-body.component.mjs +6 -6
  209. package/esm2020/tabs/tab-content.directive.mjs +3 -3
  210. package/esm2020/tabs/tab-group.component.mjs +18 -18
  211. package/esm2020/tabs/tab-header.component.mjs +4 -4
  212. package/esm2020/tabs/tab-label-wrapper.directive.mjs +3 -3
  213. package/esm2020/tabs/tab-label.directive.mjs +3 -3
  214. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +7 -7
  215. package/esm2020/tabs/tab.component.mjs +3 -3
  216. package/esm2020/tabs/tabs.module.mjs +4 -4
  217. package/esm2020/tags/tag-input.mjs +3 -3
  218. package/esm2020/tags/tag-list.component.mjs +4 -4
  219. package/esm2020/tags/tag.component.mjs +16 -16
  220. package/esm2020/tags/tag.module.mjs +4 -4
  221. package/esm2020/textarea/textarea.component.mjs +3 -3
  222. package/esm2020/textarea/textarea.module.mjs +4 -4
  223. package/esm2020/timepicker/timepicker.directive.mjs +3 -3
  224. package/esm2020/timepicker/timepicker.module.mjs +4 -4
  225. package/esm2020/timezone/cities-by-filter.pipe.mjs +3 -3
  226. package/esm2020/timezone/timezone-option.component.mjs +3 -3
  227. package/esm2020/timezone/timezone-option.directive.mjs +3 -3
  228. package/esm2020/timezone/timezone-select.component.mjs +8 -8
  229. package/esm2020/timezone/timezone.module.mjs +4 -4
  230. package/esm2020/timezone/utc-offset.pipe.mjs +3 -3
  231. package/esm2020/title/title.directive.mjs +3 -3
  232. package/esm2020/title/title.module.mjs +4 -4
  233. package/esm2020/toast/toast-container.component.mjs +3 -3
  234. package/esm2020/toast/toast.component.mjs +5 -5
  235. package/esm2020/toast/toast.module.mjs +4 -4
  236. package/esm2020/toast/toast.service.mjs +3 -3
  237. package/esm2020/toggle/toggle.component.mjs +17 -13
  238. package/esm2020/toggle/toggle.module.mjs +4 -4
  239. package/esm2020/tooltip/tooltip.component.mjs +26 -17
  240. package/esm2020/tooltip/tooltip.module.mjs +4 -4
  241. package/esm2020/tree/node.mjs +3 -3
  242. package/esm2020/tree/outlet.mjs +3 -3
  243. package/esm2020/tree/padding.directive.mjs +3 -3
  244. package/esm2020/tree/toggle.mjs +9 -9
  245. package/esm2020/tree/tree-base.mjs +6 -6
  246. package/esm2020/tree/tree-option.component.mjs +4 -4
  247. package/esm2020/tree/tree-selection.component.mjs +3 -3
  248. package/esm2020/tree/tree.mjs +3 -3
  249. package/esm2020/tree/tree.module.mjs +4 -4
  250. package/esm2020/tree-select/tree-select.component.mjs +16 -13
  251. package/esm2020/tree-select/tree-select.module.mjs +4 -4
  252. package/fesm2015/ptsecurity-mosaic-alert.mjs +115 -0
  253. package/fesm2015/ptsecurity-mosaic-alert.mjs.map +1 -0
  254. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs +15 -15
  255. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs +38 -18
  256. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  257. package/fesm2015/ptsecurity-mosaic-button.mjs +41 -23
  258. package/fesm2015/ptsecurity-mosaic-button.mjs.map +1 -1
  259. package/fesm2015/ptsecurity-mosaic-card.mjs +7 -7
  260. package/fesm2015/ptsecurity-mosaic-checkbox.mjs +19 -15
  261. package/fesm2015/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  262. package/fesm2015/ptsecurity-mosaic-code-block.mjs +12 -12
  263. package/fesm2015/ptsecurity-mosaic-code-block.mjs.map +1 -1
  264. package/fesm2015/ptsecurity-mosaic-core.mjs +242 -127
  265. package/fesm2015/ptsecurity-mosaic-core.mjs.map +1 -1
  266. package/fesm2015/ptsecurity-mosaic-datepicker.mjs +35 -35
  267. package/fesm2015/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  268. package/fesm2015/ptsecurity-mosaic-divider.mjs +19 -9
  269. package/fesm2015/ptsecurity-mosaic-divider.mjs.map +1 -1
  270. package/fesm2015/ptsecurity-mosaic-dl.mjs +13 -13
  271. package/fesm2015/ptsecurity-mosaic-dropdown.mjs +20 -20
  272. package/fesm2015/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  273. package/fesm2015/ptsecurity-mosaic-ellipsis-center.mjs +113 -0
  274. package/fesm2015/ptsecurity-mosaic-ellipsis-center.mjs.map +1 -0
  275. package/fesm2015/ptsecurity-mosaic-file-upload.mjs +392 -0
  276. package/fesm2015/ptsecurity-mosaic-file-upload.mjs.map +1 -0
  277. package/fesm2015/ptsecurity-mosaic-form-field.mjs +49 -49
  278. package/fesm2015/ptsecurity-mosaic-form-field.mjs.map +1 -1
  279. package/fesm2015/ptsecurity-mosaic-icon.mjs +93 -29
  280. package/fesm2015/ptsecurity-mosaic-icon.mjs.map +1 -1
  281. package/fesm2015/ptsecurity-mosaic-input.mjs +25 -25
  282. package/fesm2015/ptsecurity-mosaic-link.mjs +17 -7
  283. package/fesm2015/ptsecurity-mosaic-link.mjs.map +1 -1
  284. package/fesm2015/ptsecurity-mosaic-list.mjs +20 -20
  285. package/fesm2015/ptsecurity-mosaic-list.mjs.map +1 -1
  286. package/fesm2015/ptsecurity-mosaic-loader-overlay.mjs +16 -16
  287. package/fesm2015/ptsecurity-mosaic-markdown.mjs +12 -12
  288. package/fesm2015/ptsecurity-mosaic-modal.mjs +29 -29
  289. package/fesm2015/ptsecurity-mosaic-modal.mjs.map +1 -1
  290. package/fesm2015/ptsecurity-mosaic-navbar.mjs +47 -47
  291. package/fesm2015/ptsecurity-mosaic-navbar.mjs.map +1 -1
  292. package/fesm2015/ptsecurity-mosaic-popover.mjs +18 -18
  293. package/fesm2015/ptsecurity-mosaic-popover.mjs.map +1 -1
  294. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs +7 -7
  295. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs +9 -9
  296. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  297. package/fesm2015/ptsecurity-mosaic-radio.mjs +16 -12
  298. package/fesm2015/ptsecurity-mosaic-radio.mjs.map +1 -1
  299. package/fesm2015/ptsecurity-mosaic-select.mjs +28 -28
  300. package/fesm2015/ptsecurity-mosaic-select.mjs.map +1 -1
  301. package/fesm2015/ptsecurity-mosaic-sidebar.mjs +13 -13
  302. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs +27 -27
  303. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  304. package/fesm2015/ptsecurity-mosaic-splitter.mjs +16 -16
  305. package/fesm2015/ptsecurity-mosaic-table.mjs +7 -7
  306. package/fesm2015/ptsecurity-mosaic-tabs.mjs +54 -54
  307. package/fesm2015/ptsecurity-mosaic-tabs.mjs.map +1 -1
  308. package/fesm2015/ptsecurity-mosaic-tags.mjs +26 -26
  309. package/fesm2015/ptsecurity-mosaic-tags.mjs.map +1 -1
  310. package/fesm2015/ptsecurity-mosaic-textarea.mjs +7 -7
  311. package/fesm2015/ptsecurity-mosaic-timepicker.mjs +7 -7
  312. package/fesm2015/ptsecurity-mosaic-timezone.mjs +24 -24
  313. package/fesm2015/ptsecurity-mosaic-timezone.mjs.map +1 -1
  314. package/fesm2015/ptsecurity-mosaic-title.mjs +7 -7
  315. package/fesm2015/ptsecurity-mosaic-toast.mjs +14 -14
  316. package/fesm2015/ptsecurity-mosaic-toast.mjs.map +1 -1
  317. package/fesm2015/ptsecurity-mosaic-toggle.mjs +21 -17
  318. package/fesm2015/ptsecurity-mosaic-toggle.mjs.map +1 -1
  319. package/fesm2015/ptsecurity-mosaic-tooltip.mjs +29 -20
  320. package/fesm2015/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  321. package/fesm2015/ptsecurity-mosaic-tree-select.mjs +19 -16
  322. package/fesm2015/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  323. package/fesm2015/ptsecurity-mosaic-tree.mjs +38 -38
  324. package/fesm2015/ptsecurity-mosaic-tree.mjs.map +1 -1
  325. package/fesm2020/ptsecurity-mosaic-alert.mjs +115 -0
  326. package/fesm2020/ptsecurity-mosaic-alert.mjs.map +1 -0
  327. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs +15 -15
  328. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs +38 -18
  329. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  330. package/fesm2020/ptsecurity-mosaic-button.mjs +41 -23
  331. package/fesm2020/ptsecurity-mosaic-button.mjs.map +1 -1
  332. package/fesm2020/ptsecurity-mosaic-card.mjs +7 -7
  333. package/fesm2020/ptsecurity-mosaic-checkbox.mjs +19 -15
  334. package/fesm2020/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  335. package/fesm2020/ptsecurity-mosaic-code-block.mjs +12 -12
  336. package/fesm2020/ptsecurity-mosaic-code-block.mjs.map +1 -1
  337. package/fesm2020/ptsecurity-mosaic-core.mjs +242 -127
  338. package/fesm2020/ptsecurity-mosaic-core.mjs.map +1 -1
  339. package/fesm2020/ptsecurity-mosaic-datepicker.mjs +36 -35
  340. package/fesm2020/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  341. package/fesm2020/ptsecurity-mosaic-divider.mjs +19 -9
  342. package/fesm2020/ptsecurity-mosaic-divider.mjs.map +1 -1
  343. package/fesm2020/ptsecurity-mosaic-dl.mjs +13 -13
  344. package/fesm2020/ptsecurity-mosaic-dropdown.mjs +20 -20
  345. package/fesm2020/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  346. package/fesm2020/ptsecurity-mosaic-ellipsis-center.mjs +111 -0
  347. package/fesm2020/ptsecurity-mosaic-ellipsis-center.mjs.map +1 -0
  348. package/fesm2020/ptsecurity-mosaic-file-upload.mjs +388 -0
  349. package/fesm2020/ptsecurity-mosaic-file-upload.mjs.map +1 -0
  350. package/fesm2020/ptsecurity-mosaic-form-field.mjs +49 -49
  351. package/fesm2020/ptsecurity-mosaic-form-field.mjs.map +1 -1
  352. package/fesm2020/ptsecurity-mosaic-icon.mjs +89 -29
  353. package/fesm2020/ptsecurity-mosaic-icon.mjs.map +1 -1
  354. package/fesm2020/ptsecurity-mosaic-input.mjs +25 -25
  355. package/fesm2020/ptsecurity-mosaic-link.mjs +17 -7
  356. package/fesm2020/ptsecurity-mosaic-link.mjs.map +1 -1
  357. package/fesm2020/ptsecurity-mosaic-list.mjs +20 -20
  358. package/fesm2020/ptsecurity-mosaic-list.mjs.map +1 -1
  359. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs +16 -16
  360. package/fesm2020/ptsecurity-mosaic-markdown.mjs +12 -12
  361. package/fesm2020/ptsecurity-mosaic-modal.mjs +29 -29
  362. package/fesm2020/ptsecurity-mosaic-modal.mjs.map +1 -1
  363. package/fesm2020/ptsecurity-mosaic-navbar.mjs +47 -47
  364. package/fesm2020/ptsecurity-mosaic-navbar.mjs.map +1 -1
  365. package/fesm2020/ptsecurity-mosaic-popover.mjs +18 -18
  366. package/fesm2020/ptsecurity-mosaic-popover.mjs.map +1 -1
  367. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs +7 -7
  368. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs +9 -9
  369. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  370. package/fesm2020/ptsecurity-mosaic-radio.mjs +16 -12
  371. package/fesm2020/ptsecurity-mosaic-radio.mjs.map +1 -1
  372. package/fesm2020/ptsecurity-mosaic-select.mjs +28 -28
  373. package/fesm2020/ptsecurity-mosaic-select.mjs.map +1 -1
  374. package/fesm2020/ptsecurity-mosaic-sidebar.mjs +13 -13
  375. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs +27 -27
  376. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  377. package/fesm2020/ptsecurity-mosaic-splitter.mjs +16 -16
  378. package/fesm2020/ptsecurity-mosaic-table.mjs +7 -7
  379. package/fesm2020/ptsecurity-mosaic-tabs.mjs +54 -54
  380. package/fesm2020/ptsecurity-mosaic-tabs.mjs.map +1 -1
  381. package/fesm2020/ptsecurity-mosaic-tags.mjs +26 -26
  382. package/fesm2020/ptsecurity-mosaic-tags.mjs.map +1 -1
  383. package/fesm2020/ptsecurity-mosaic-textarea.mjs +7 -7
  384. package/fesm2020/ptsecurity-mosaic-timepicker.mjs +7 -7
  385. package/fesm2020/ptsecurity-mosaic-timezone.mjs +24 -24
  386. package/fesm2020/ptsecurity-mosaic-timezone.mjs.map +1 -1
  387. package/fesm2020/ptsecurity-mosaic-title.mjs +7 -7
  388. package/fesm2020/ptsecurity-mosaic-toast.mjs +14 -14
  389. package/fesm2020/ptsecurity-mosaic-toast.mjs.map +1 -1
  390. package/fesm2020/ptsecurity-mosaic-toggle.mjs +21 -17
  391. package/fesm2020/ptsecurity-mosaic-toggle.mjs.map +1 -1
  392. package/fesm2020/ptsecurity-mosaic-tooltip.mjs +29 -20
  393. package/fesm2020/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  394. package/fesm2020/ptsecurity-mosaic-tree-select.mjs +19 -16
  395. package/fesm2020/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  396. package/fesm2020/ptsecurity-mosaic-tree.mjs +38 -38
  397. package/fesm2020/ptsecurity-mosaic-tree.mjs.map +1 -1
  398. package/file-upload/README.md +0 -0
  399. package/file-upload/_file-upload-theme.scss +174 -0
  400. package/file-upload/file-drop.d.ts +11 -0
  401. package/file-upload/file-upload.d.ts +22 -0
  402. package/file-upload/file-upload.module.d.ts +18 -0
  403. package/file-upload/file-upload.scss +46 -0
  404. package/file-upload/index.d.ts +1 -0
  405. package/file-upload/multiple-file-upload.component.d.ts +51 -0
  406. package/file-upload/multiple-file-upload.component.scss +148 -0
  407. package/file-upload/public-api.d.ts +5 -0
  408. package/file-upload/single-file-upload.component.d.ts +34 -0
  409. package/file-upload/single-file-upload.component.scss +60 -0
  410. package/form-field/_form-field-theme.nvl.scss +111 -0
  411. package/form-field/_hint-theme.nvl.scss +67 -0
  412. package/form-field/cleaner.d.ts +2 -2
  413. package/form-field/hint.d.ts +2 -1
  414. package/form-field/hint.scss +15 -0
  415. package/icon/_icon-theme.nvl.scss +267 -0
  416. package/icon/icon.component.d.ts +22 -6
  417. package/icon/icon.module.d.ts +1 -1
  418. package/icon/icon.scss +39 -0
  419. package/input/_input-theme.nvl.scss +56 -0
  420. package/link/_link-theme.nvl.scss +178 -0
  421. package/link/_link-theme.scss +2 -3
  422. package/link/link.component.d.ts +4 -1
  423. package/list/_list-theme.nvl.scss +47 -0
  424. package/loader-overlay/_loader-overlay-theme.nvl.scss +34 -0
  425. package/loader-overlay/_loader-overlay-theme.scss +0 -1
  426. package/markdown/_markdown-theme.nvl.scss +142 -0
  427. package/modal/_modal-theme.nvl.scss +90 -0
  428. package/navbar/_navbar-theme.nvl.scss +123 -0
  429. package/package.json +26 -2
  430. package/popover/_popover-theme.nvl.scss +111 -0
  431. package/prebuilt-themes/dark-theme.css +1 -1
  432. package/prebuilt-themes/dark-theme.nvl.css +1 -0
  433. package/prebuilt-themes/default-theme.css +1 -1
  434. package/prebuilt-themes/light-theme.nvl.css +1 -0
  435. package/progress-bar/_progress-bar-theme.nvl.scss +28 -0
  436. package/progress-spinner/_progress-spinner-theme.nvl.scss +24 -0
  437. package/radio/_radio-theme.nvl.scss +95 -0
  438. package/radio/_radio-theme.scss +1 -1
  439. package/radio/radio.component.d.ts +2 -1
  440. package/radio/radio.scss +60 -27
  441. package/select/_select-theme.nvl.scss +55 -0
  442. package/select/_select-theme.scss +6 -0
  443. package/select/select.component.d.ts +1 -1
  444. package/select/select.scss +13 -0
  445. package/sidepanel/_sidepanel-theme.nvl.scss +67 -0
  446. package/splitter/_splitter-theme.nvl.scss +31 -0
  447. package/table/_table-theme.nvl.scss +65 -0
  448. package/table/_table-theme.scss +0 -1
  449. package/tabs/_tabs-theme.nvl.scss +240 -0
  450. package/tags/_tag-theme.nvl.scss +100 -0
  451. package/tags/_tag-theme.scss +0 -1
  452. package/tags/tag-list.scss +23 -7
  453. package/tags/tag.scss +21 -69
  454. package/textarea/_textarea-theme.nvl.scss +37 -0
  455. package/timezone/_timezone-option-theme.nvl.scss +34 -0
  456. package/toast/_toast-theme.nvl.scss +61 -0
  457. package/toggle/_toggle-theme.nvl.scss +98 -0
  458. package/toggle/_toggle-theme.scss +0 -3
  459. package/toggle/toggle.component.d.ts +2 -1
  460. package/toggle/toggle.scss +51 -76
  461. package/tooltip/_tooltip-theme.nvl.scss +49 -0
  462. package/tooltip/tooltip.component.d.ts +5 -2
  463. package/tooltip/tooltip.scss +10 -39
  464. package/tree/_tree-theme.nvl.scss +69 -0
  465. package/tree-select/_tree-select-theme.nvl.scss +41 -0
  466. package/tree-select/_tree-select-theme.scss +6 -0
  467. package/tree-select/tree-select.component.d.ts +2 -2
  468. package/tree-select/tree-select.scss +13 -0
  469. package/core/styles/theming/_alerts.scss +0 -166
@@ -10,22 +10,22 @@ import { McTreeSelect, McTreeSelectFooter, McTreeSelectTrigger } from './tree-se
10
10
  import * as i0 from "@angular/core";
11
11
  export class McTreeSelectModule {
12
12
  }
13
- /** @nocollapse */ McTreeSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McTreeSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
- /** @nocollapse */ McTreeSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: McTreeSelectModule, declarations: [McTreeSelect, McTreeSelectTrigger, McTreeSelectFooter], imports: [CommonModule,
13
+ /** @nocollapse */ McTreeSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McTreeSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ /** @nocollapse */ McTreeSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: McTreeSelectModule, declarations: [McTreeSelect, McTreeSelectTrigger, McTreeSelectFooter], imports: [CommonModule,
15
15
  OverlayModule,
16
16
  McTreeModule,
17
17
  McIconModule,
18
18
  McTagsModule,
19
19
  McPseudoCheckboxModule,
20
20
  McSelectModule], exports: [McTreeSelect, McTreeSelectTrigger, McTreeSelectFooter, CommonModule] });
21
- /** @nocollapse */ McTreeSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McTreeSelectModule, providers: [MC_SELECT_SCROLL_STRATEGY_PROVIDER], imports: [CommonModule,
21
+ /** @nocollapse */ McTreeSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McTreeSelectModule, providers: [MC_SELECT_SCROLL_STRATEGY_PROVIDER], imports: [CommonModule,
22
22
  OverlayModule,
23
23
  McTreeModule,
24
24
  McIconModule,
25
25
  McTagsModule,
26
26
  McPseudoCheckboxModule,
27
27
  McSelectModule, CommonModule] });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McTreeSelectModule, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McTreeSelectModule, decorators: [{
29
29
  type: NgModule,
30
30
  args: [{
31
31
  imports: [
@@ -0,0 +1,115 @@
1
+ import { A11yModule } from '@angular/cdk/a11y';
2
+ import { PlatformModule } from '@angular/cdk/platform';
3
+ import * as i1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i0 from '@angular/core';
6
+ import { Directive, Component, ChangeDetectionStrategy, ViewEncapsulation, ContentChild, NgModule } from '@angular/core';
7
+ import { McIconItem } from '@ptsecurity/mosaic/icon';
8
+
9
+ class McAlertTitle {
10
+ }
11
+ /** @nocollapse */ McAlertTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
12
+ /** @nocollapse */ McAlertTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: McAlertTitle, selector: "[mc-alert-title]", host: { classAttribute: "mc-alert__title" }, ngImport: i0 });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertTitle, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[mc-alert-title]',
17
+ host: {
18
+ class: 'mc-alert__title'
19
+ }
20
+ }]
21
+ }] });
22
+ class McAlertCloseButton {
23
+ }
24
+ /** @nocollapse */ McAlertCloseButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertCloseButton, deps: [], target: i0.ɵɵFactoryTarget.Directive });
25
+ /** @nocollapse */ McAlertCloseButton.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: McAlertCloseButton, selector: "[mc-alert-close-button]", host: { classAttribute: "mc-alert-close-button" }, ngImport: i0 });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertCloseButton, decorators: [{
27
+ type: Directive,
28
+ args: [{
29
+ selector: '[mc-alert-close-button]',
30
+ host: {
31
+ class: 'mc-alert-close-button'
32
+ }
33
+ }]
34
+ }] });
35
+ class McAlertControl {
36
+ }
37
+ /** @nocollapse */ McAlertControl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertControl, deps: [], target: i0.ɵɵFactoryTarget.Directive });
38
+ /** @nocollapse */ McAlertControl.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: McAlertControl, selector: "[mc-alert-control]", host: { classAttribute: "mc-alert-control" }, ngImport: i0 });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertControl, decorators: [{
40
+ type: Directive,
41
+ args: [{
42
+ selector: '[mc-alert-control]',
43
+ host: {
44
+ class: 'mc-alert-control'
45
+ }
46
+ }]
47
+ }] });
48
+ class McAlert {
49
+ }
50
+ /** @nocollapse */ McAlert.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlert, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
+ /** @nocollapse */ McAlert.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: McAlert, selector: "mc-alert", host: { properties: { "class.mc-alert_dismissible": "closeButton" }, classAttribute: "mc-alert" }, queries: [{ propertyName: "iconItem", first: true, predicate: McIconItem, descendants: true }, { propertyName: "title", first: true, predicate: McAlertTitle, descendants: true }, { propertyName: "control", first: true, predicate: McAlertControl, descendants: true }, { propertyName: "closeButton", first: true, predicate: McAlertCloseButton, descendants: true }], ngImport: i0, template: "<div class=\"mc-alert__icon\" *ngIf=\"iconItem\">\n <ng-content select=\"[mc-icon-item]\"></ng-content>\n</div>\n\n<div class=\"mc-alert__content\">\n <ng-content select=\"[mc-alert-title]\"></ng-content>\n\n <div class=\"mc-alert__text\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"mc-alert__controls\" *ngIf=\"control\">\n <ng-content select=\"[mc-alert-control]\"></ng-content>\n </div>\n</div>\n\n<div class=\"mc-alert__close-button\" [hidden]=\"!closeButton\">\n <ng-content select=\"[mc-alert-close-button]\"></ng-content>\n</div>\n", styles: [".mc-alert{display:flex;border-radius:var(--mc-alert-size-container-border-radius, 12px);min-width:var(--mc-alert-size-container-min-width, );min-height:calc(var(--mc-alert-size-container-min-height, 48px) - var(--mc-alert-size-container-padding-vertical, 16px) * 2);padding:var(--mc-alert-size-container-padding-vertical, 16px) var(--mc-alert-size-container-padding-horizontal, 20px)}.mc-alert__icon{margin-right:var(--mc-alert-size-container-content-gap-horizontal, 12px)}.mc-alert__title{margin-bottom:var(--mc-alert-size-container-content-gap-vertical, 4px)}.mc-alert__controls{margin-top:var(--mc-alert-size-container-content-gap-vertical, 4px);padding-top:var(--mc-alert-size-button-stack-content-padding-top, 12px)}.mc-alert__controls .mc-button{margin-right:var(--mc-alert-size-button-stack-content-content-gap-horizontal, 4px)}.mc-alert__controls .mc-link{margin-right:16px}.mc-alert__content{display:flex;flex-direction:column;flex:1;justify-content:center}.mc-alert__close-button{margin-left:var(--mc-alert-size-container-content-gap-horizontal, 12px)}.mc-alert_dismissible .mc-alert__close-button{margin-top:var(--mc-alert-size-close-button-margin-top, -8px);margin-right:var(--mc-alert-size-close-button-margin-right, -12px)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlert, decorators: [{
53
+ type: Component,
54
+ args: [{ selector: 'mc-alert', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
55
+ class: 'mc-alert',
56
+ '[class.mc-alert_dismissible]': 'closeButton'
57
+ }, template: "<div class=\"mc-alert__icon\" *ngIf=\"iconItem\">\n <ng-content select=\"[mc-icon-item]\"></ng-content>\n</div>\n\n<div class=\"mc-alert__content\">\n <ng-content select=\"[mc-alert-title]\"></ng-content>\n\n <div class=\"mc-alert__text\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"mc-alert__controls\" *ngIf=\"control\">\n <ng-content select=\"[mc-alert-control]\"></ng-content>\n </div>\n</div>\n\n<div class=\"mc-alert__close-button\" [hidden]=\"!closeButton\">\n <ng-content select=\"[mc-alert-close-button]\"></ng-content>\n</div>\n", styles: [".mc-alert{display:flex;border-radius:var(--mc-alert-size-container-border-radius, 12px);min-width:var(--mc-alert-size-container-min-width, );min-height:calc(var(--mc-alert-size-container-min-height, 48px) - var(--mc-alert-size-container-padding-vertical, 16px) * 2);padding:var(--mc-alert-size-container-padding-vertical, 16px) var(--mc-alert-size-container-padding-horizontal, 20px)}.mc-alert__icon{margin-right:var(--mc-alert-size-container-content-gap-horizontal, 12px)}.mc-alert__title{margin-bottom:var(--mc-alert-size-container-content-gap-vertical, 4px)}.mc-alert__controls{margin-top:var(--mc-alert-size-container-content-gap-vertical, 4px);padding-top:var(--mc-alert-size-button-stack-content-padding-top, 12px)}.mc-alert__controls .mc-button{margin-right:var(--mc-alert-size-button-stack-content-content-gap-horizontal, 4px)}.mc-alert__controls .mc-link{margin-right:16px}.mc-alert__content{display:flex;flex-direction:column;flex:1;justify-content:center}.mc-alert__close-button{margin-left:var(--mc-alert-size-container-content-gap-horizontal, 12px)}.mc-alert_dismissible .mc-alert__close-button{margin-top:var(--mc-alert-size-close-button-margin-top, -8px);margin-right:var(--mc-alert-size-close-button-margin-right, -12px)}\n"] }]
58
+ }], propDecorators: { iconItem: [{
59
+ type: ContentChild,
60
+ args: [McIconItem]
61
+ }], title: [{
62
+ type: ContentChild,
63
+ args: [McAlertTitle]
64
+ }], control: [{
65
+ type: ContentChild,
66
+ args: [McAlertControl]
67
+ }], closeButton: [{
68
+ type: ContentChild,
69
+ args: [McAlertCloseButton]
70
+ }] } });
71
+
72
+ class McAlertModule {
73
+ }
74
+ /** @nocollapse */ McAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
75
+ /** @nocollapse */ McAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: McAlertModule, declarations: [McAlert,
76
+ McAlertTitle,
77
+ McAlertCloseButton,
78
+ McAlertControl], imports: [CommonModule,
79
+ A11yModule,
80
+ PlatformModule], exports: [McAlert,
81
+ McAlertTitle,
82
+ McAlertCloseButton,
83
+ McAlertControl] });
84
+ /** @nocollapse */ McAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertModule, imports: [CommonModule,
85
+ A11yModule,
86
+ PlatformModule] });
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAlertModule, decorators: [{
88
+ type: NgModule,
89
+ args: [{
90
+ imports: [
91
+ CommonModule,
92
+ A11yModule,
93
+ PlatformModule
94
+ ],
95
+ exports: [
96
+ McAlert,
97
+ McAlertTitle,
98
+ McAlertCloseButton,
99
+ McAlertControl
100
+ ],
101
+ declarations: [
102
+ McAlert,
103
+ McAlertTitle,
104
+ McAlertCloseButton,
105
+ McAlertControl
106
+ ]
107
+ }]
108
+ }] });
109
+
110
+ /**
111
+ * Generated bundle index. Do not edit.
112
+ */
113
+
114
+ export { McAlert, McAlertCloseButton, McAlertControl, McAlertModule, McAlertTitle };
115
+ //# sourceMappingURL=ptsecurity-mosaic-alert.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ptsecurity-mosaic-alert.mjs","sources":["../../../packages/mosaic/alert/alert.component.ts","../../../packages/mosaic/alert/alert.component.html","../../../packages/mosaic/alert/alert.module.ts","../../../packages/mosaic/alert/ptsecurity-mosaic-alert.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component, ContentChild, Directive,\n ViewEncapsulation\n} from '@angular/core';\nimport { McIconItem } from '@ptsecurity/mosaic/icon';\n\n\n@Directive({\n selector: '[mc-alert-title]',\n host: {\n class: 'mc-alert__title'\n }\n})\nexport class McAlertTitle {}\n\n@Directive({\n selector: '[mc-alert-close-button]',\n host: {\n class: 'mc-alert-close-button'\n }\n})\nexport class McAlertCloseButton {}\n\n@Directive({\n selector: '[mc-alert-control]',\n host: {\n class: 'mc-alert-control'\n }\n})\nexport class McAlertControl {}\n\n@Component({\n selector: 'mc-alert',\n templateUrl: './alert.component.html',\n styleUrls: ['alert.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'mc-alert',\n '[class.mc-alert_dismissible]': 'closeButton'\n }\n})\nexport class McAlert {\n @ContentChild(McIconItem) iconItem: McIconItem;\n @ContentChild(McAlertTitle) title: McAlertTitle;\n @ContentChild(McAlertControl) control: McAlertControl;\n @ContentChild(McAlertCloseButton) closeButton: McAlertCloseButton;\n}\n","<div class=\"mc-alert__icon\" *ngIf=\"iconItem\">\n <ng-content select=\"[mc-icon-item]\"></ng-content>\n</div>\n\n<div class=\"mc-alert__content\">\n <ng-content select=\"[mc-alert-title]\"></ng-content>\n\n <div class=\"mc-alert__text\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"mc-alert__controls\" *ngIf=\"control\">\n <ng-content select=\"[mc-alert-control]\"></ng-content>\n </div>\n</div>\n\n<div class=\"mc-alert__close-button\" [hidden]=\"!closeButton\">\n <ng-content select=\"[mc-alert-close-button]\"></ng-content>\n</div>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { PlatformModule } from '@angular/cdk/platform';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport {\n McAlert,\n McAlertCloseButton,\n McAlertControl,\n McAlertTitle\n} from './alert.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n A11yModule,\n PlatformModule\n ],\n exports: [\n McAlert,\n McAlertTitle,\n McAlertCloseButton,\n McAlertControl\n ],\n declarations: [\n McAlert,\n McAlertTitle,\n McAlertCloseButton,\n McAlertControl\n ]\n})\nexport class McAlertModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -118,17 +118,17 @@ class McAutocomplete {
118
118
  this.keyManager.onKeydown(event);
119
119
  }
120
120
  }
121
- /** @nocollapse */ McAutocomplete.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocomplete, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: MC_AUTOCOMPLETE_DEFAULT_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
122
- /** @nocollapse */ McAutocomplete.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: McAutocomplete, selector: "mc-autocomplete", inputs: { displayWith: "displayWith", panelWidth: "panelWidth", classList: ["class", "classList"], autoActiveFirstOption: "autoActiveFirstOption", openOnFocus: "openOnFocus" }, outputs: { optionSelected: "optionSelected", opened: "opened", closed: "closed" }, host: { classAttribute: "mc-autocomplete" }, providers: [{
121
+ /** @nocollapse */ McAutocomplete.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocomplete, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: MC_AUTOCOMPLETE_DEFAULT_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
122
+ /** @nocollapse */ McAutocomplete.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: McAutocomplete, selector: "mc-autocomplete", inputs: { displayWith: "displayWith", panelWidth: "panelWidth", classList: ["class", "classList"], autoActiveFirstOption: "autoActiveFirstOption", openOnFocus: "openOnFocus" }, outputs: { optionSelected: "optionSelected", opened: "opened", closed: "closed" }, host: { classAttribute: "mc-autocomplete" }, providers: [{
123
123
  provide: MC_OPTION_PARENT_COMPONENT, useExisting: McAutocomplete
124
- }], queries: [{ propertyName: "options", predicate: McOption, descendants: true }, { propertyName: "optionGroups", predicate: McOptgroup }], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }, { propertyName: "panel", first: true, predicate: ["panel"], descendants: true }], exportAs: ["mcAutocomplete"], ngImport: i0, template: "<ng-template>\n <div class=\"mc-autocomplete-panel mc-scrollbar\" role=\"listbox\" [id]=\"id\" [ngClass]=\"classList\" #panel>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mc-autocomplete-trigger{text-overflow:ellipsis}.mc-autocomplete-panel{visibility:hidden;position:relative;overflow:hidden auto;-webkit-overflow-scrolling:touch;margin-top:-1px;min-width:100%;width:100%;max-width:none;max-height:var(--mc-autocomplete-size-panel-max-height, 256px);border-width:1px;border-style:solid;border-bottom-left-radius:var(--mc-autocomplete-size-panel-border-radius, 4px);border-bottom-right-radius:var(--mc-autocomplete-size-panel-border-radius, 4px);padding:var(--mc-autocomplete-size-panel-padding, 4px 0)}.mc-autocomplete-panel.mc-autocomplete_visible{visibility:visible}.mc-autocomplete-panel.mc-autocomplete_hidden{visibility:hidden}.mc-autocomplete-panel-above .mc-autocomplete-panel{border-radius:var(--mc-autocomplete-size-panel-border-radius, 4px) var(--mc-autocomplete-size-panel-border-radius, 4px) 0 0}.mc-autocomplete-panel .mc-divider-horizontal{margin-top:-1px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocomplete, decorators: [{
124
+ }], queries: [{ propertyName: "options", predicate: McOption, descendants: true }, { propertyName: "optionGroups", predicate: McOptgroup }], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }, { propertyName: "panel", first: true, predicate: ["panel"], descendants: true }], exportAs: ["mcAutocomplete"], ngImport: i0, template: "<ng-template>\n <div class=\"mc-autocomplete-panel mc-scrollbar\" role=\"listbox\" [id]=\"id\" [ngClass]=\"classList\" #panel>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mc-autocomplete-trigger{text-overflow:ellipsis}.mc-autocomplete-panel{visibility:hidden;position:relative;overflow:hidden auto;-webkit-overflow-scrolling:touch;margin-top:-1px;min-width:100%;width:100%;max-width:none;max-height:var(--mc-autocomplete-size-panel-max-height, 256px);border-width:1px;border-style:solid;border-bottom-left-radius:var(--mc-autocomplete-size-panel-border-radius, 8px);border-bottom-right-radius:var(--mc-autocomplete-size-panel-border-radius, 8px);padding:var(--mc-autocomplete-size-panel-padding, 4px 0)}.mc-autocomplete-panel.mc-autocomplete_visible{visibility:visible}.mc-autocomplete-panel.mc-autocomplete_hidden{visibility:hidden}.mc-autocomplete-panel-above .mc-autocomplete-panel{border-radius:var(--mc-autocomplete-size-panel-border-radius, 8px) var(--mc-autocomplete-size-panel-border-radius, 8px) 0 0}.mc-autocomplete-panel .mc-divider-horizontal{margin-top:-1px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocomplete, decorators: [{
126
126
  type: Component,
127
127
  args: [{ selector: 'mc-autocomplete', exportAs: 'mcAutocomplete', host: {
128
128
  class: 'mc-autocomplete'
129
129
  }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{
130
130
  provide: MC_OPTION_PARENT_COMPONENT, useExisting: McAutocomplete
131
- }], template: "<ng-template>\n <div class=\"mc-autocomplete-panel mc-scrollbar\" role=\"listbox\" [id]=\"id\" [ngClass]=\"classList\" #panel>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mc-autocomplete-trigger{text-overflow:ellipsis}.mc-autocomplete-panel{visibility:hidden;position:relative;overflow:hidden auto;-webkit-overflow-scrolling:touch;margin-top:-1px;min-width:100%;width:100%;max-width:none;max-height:var(--mc-autocomplete-size-panel-max-height, 256px);border-width:1px;border-style:solid;border-bottom-left-radius:var(--mc-autocomplete-size-panel-border-radius, 4px);border-bottom-right-radius:var(--mc-autocomplete-size-panel-border-radius, 4px);padding:var(--mc-autocomplete-size-panel-padding, 4px 0)}.mc-autocomplete-panel.mc-autocomplete_visible{visibility:visible}.mc-autocomplete-panel.mc-autocomplete_hidden{visibility:hidden}.mc-autocomplete-panel-above .mc-autocomplete-panel{border-radius:var(--mc-autocomplete-size-panel-border-radius, 4px) var(--mc-autocomplete-size-panel-border-radius, 4px) 0 0}.mc-autocomplete-panel .mc-divider-horizontal{margin-top:-1px}\n"] }]
131
+ }], template: "<ng-template>\n <div class=\"mc-autocomplete-panel mc-scrollbar\" role=\"listbox\" [id]=\"id\" [ngClass]=\"classList\" #panel>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mc-autocomplete-trigger{text-overflow:ellipsis}.mc-autocomplete-panel{visibility:hidden;position:relative;overflow:hidden auto;-webkit-overflow-scrolling:touch;margin-top:-1px;min-width:100%;width:100%;max-width:none;max-height:var(--mc-autocomplete-size-panel-max-height, 256px);border-width:1px;border-style:solid;border-bottom-left-radius:var(--mc-autocomplete-size-panel-border-radius, 8px);border-bottom-right-radius:var(--mc-autocomplete-size-panel-border-radius, 8px);padding:var(--mc-autocomplete-size-panel-padding, 4px 0)}.mc-autocomplete-panel.mc-autocomplete_visible{visibility:visible}.mc-autocomplete-panel.mc-autocomplete_hidden{visibility:hidden}.mc-autocomplete-panel-above .mc-autocomplete-panel{border-radius:var(--mc-autocomplete-size-panel-border-radius, 8px) var(--mc-autocomplete-size-panel-border-radius, 8px) 0 0}.mc-autocomplete-panel .mc-divider-horizontal{margin-top:-1px}\n"] }]
132
132
  }], ctorParameters: function () {
133
133
  return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: undefined, decorators: [{
134
134
  type: Inject,
@@ -174,9 +174,9 @@ class McAutocompleteOrigin {
174
174
  this.elementRef = elementRef;
175
175
  }
176
176
  }
177
- /** @nocollapse */ McAutocompleteOrigin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocompleteOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
178
- /** @nocollapse */ McAutocompleteOrigin.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: McAutocompleteOrigin, selector: "[mcAutocompleteOrigin]", exportAs: ["mcAutocompleteOrigin"], ngImport: i0 });
179
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocompleteOrigin, decorators: [{
177
+ /** @nocollapse */ McAutocompleteOrigin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocompleteOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
178
+ /** @nocollapse */ McAutocompleteOrigin.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: McAutocompleteOrigin, selector: "[mcAutocompleteOrigin]", exportAs: ["mcAutocompleteOrigin"], ngImport: i0 });
179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocompleteOrigin, decorators: [{
180
180
  type: Directive,
181
181
  args: [{
182
182
  selector: '[mcAutocompleteOrigin]',
@@ -669,9 +669,9 @@ class McAutocompleteTrigger {
669
669
  return !element.readOnly && !element.disabled && !this._autocompleteDisabled;
670
670
  }
671
671
  }
672
- /** @nocollapse */ McAutocompleteTrigger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocompleteTrigger, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.Overlay }, { token: i0.NgZone }, { token: MC_AUTOCOMPLETE_SCROLL_STRATEGY }, { token: i2.Directionality, optional: true }, { token: i3.McFormField, host: true, optional: true }, { token: DOCUMENT, optional: true }, { token: i4.ViewportRuler }], target: i0.ɵɵFactoryTarget.Directive });
673
- /** @nocollapse */ McAutocompleteTrigger.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: McAutocompleteTrigger, selector: "input[mcAutocomplete], textarea[mcAutocomplete]", inputs: { autocomplete: ["mcAutocomplete", "autocomplete"], connectedTo: ["mcAutocompleteConnectedTo", "connectedTo"], autocompleteAttribute: ["autocomplete", "autocompleteAttribute"], autocompleteDisabled: ["mcAutocompleteDisabled", "autocompleteDisabled"] }, host: { listeners: { "focusin": "handleFocus()", "blur": "onTouched()", "input": "handleInput($event)", "keydown": "handleKeydown($event)", "click": "handleClick($event)" }, properties: { "attr.autocomplete": "autocompleteAttribute" }, classAttribute: "mc-autocomplete-trigger" }, providers: [MAT_AUTOCOMPLETE_VALUE_ACCESSOR], exportAs: ["mcAutocompleteTrigger"], ngImport: i0 });
674
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocompleteTrigger, decorators: [{
672
+ /** @nocollapse */ McAutocompleteTrigger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocompleteTrigger, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.Overlay }, { token: i0.NgZone }, { token: MC_AUTOCOMPLETE_SCROLL_STRATEGY }, { token: i2.Directionality, optional: true }, { token: i3.McFormField, host: true, optional: true }, { token: DOCUMENT, optional: true }, { token: i4.ViewportRuler }], target: i0.ɵɵFactoryTarget.Directive });
673
+ /** @nocollapse */ McAutocompleteTrigger.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: McAutocompleteTrigger, selector: "input[mcAutocomplete], textarea[mcAutocomplete]", inputs: { autocomplete: ["mcAutocomplete", "autocomplete"], connectedTo: ["mcAutocompleteConnectedTo", "connectedTo"], autocompleteAttribute: ["autocomplete", "autocompleteAttribute"], autocompleteDisabled: ["mcAutocompleteDisabled", "autocompleteDisabled"] }, host: { listeners: { "focusin": "handleFocus()", "blur": "onTouched()", "input": "handleInput($event)", "keydown": "handleKeydown($event)", "click": "handleClick($event)" }, properties: { "attr.autocomplete": "autocompleteAttribute" }, classAttribute: "mc-autocomplete-trigger" }, providers: [MAT_AUTOCOMPLETE_VALUE_ACCESSOR], exportAs: ["mcAutocompleteTrigger"], ngImport: i0 });
674
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocompleteTrigger, decorators: [{
675
675
  type: Directive,
676
676
  args: [{
677
677
  selector: `input[mcAutocomplete], textarea[mcAutocomplete]`,
@@ -721,15 +721,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
721
721
 
722
722
  class McAutocompleteModule {
723
723
  }
724
- /** @nocollapse */ McAutocompleteModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
725
- /** @nocollapse */ McAutocompleteModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: McAutocompleteModule, declarations: [McAutocomplete, McAutocompleteTrigger, McAutocompleteOrigin], imports: [McOptionModule, OverlayModule, McCommonModule, CommonModule], exports: [McAutocomplete,
724
+ /** @nocollapse */ McAutocompleteModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
725
+ /** @nocollapse */ McAutocompleteModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: McAutocompleteModule, declarations: [McAutocomplete, McAutocompleteTrigger, McAutocompleteOrigin], imports: [McOptionModule, OverlayModule, McCommonModule, CommonModule], exports: [McAutocomplete,
726
726
  McOptionModule,
727
727
  McAutocompleteTrigger,
728
728
  McAutocompleteOrigin,
729
729
  McCommonModule] });
730
- /** @nocollapse */ McAutocompleteModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocompleteModule, providers: [MC_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [McOptionModule, OverlayModule, McCommonModule, CommonModule, McOptionModule,
730
+ /** @nocollapse */ McAutocompleteModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocompleteModule, providers: [MC_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [McOptionModule, OverlayModule, McCommonModule, CommonModule, McOptionModule,
731
731
  McCommonModule] });
732
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McAutocompleteModule, decorators: [{
732
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McAutocompleteModule, decorators: [{
733
733
  type: NgModule,
734
734
  args: [{
735
735
  imports: [McOptionModule, OverlayModule, McCommonModule, CommonModule],
@@ -1,11 +1,14 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { forwardRef, EventEmitter, Directive, Input, ContentChildren, Output, Component, ViewEncapsulation, ChangeDetectionStrategy, Optional, ViewChild, NgModule } from '@angular/core';
3
3
  import * as i2 from '@ptsecurity/mosaic/button';
4
- import { McButton, McButtonModule } from '@ptsecurity/mosaic/button';
4
+ import { getNodesWithoutComments, McButton, McButtonModule } from '@ptsecurity/mosaic/button';
5
5
  import { McCommonModule } from '@ptsecurity/mosaic/core';
6
+ import * as i3 from '@ptsecurity/mosaic/title';
7
+ import { McTitleModule } from '@ptsecurity/mosaic/title';
6
8
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
7
9
  import { SelectionModel } from '@angular/cdk/collections';
8
10
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
11
+ import { McIcon } from '@ptsecurity/mosaic/icon';
9
12
  import * as i1 from '@angular/cdk/a11y';
10
13
 
11
14
  /**
@@ -205,9 +208,9 @@ class McButtonToggleGroup {
205
208
  }
206
209
  }
207
210
  }
208
- /** @nocollapse */ McButtonToggleGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McButtonToggleGroup, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
209
- /** @nocollapse */ McButtonToggleGroup.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: McButtonToggleGroup, selector: "mc-button-toggle-group", inputs: { vertical: "vertical", value: "value", multiple: "multiple", disabled: "disabled" }, outputs: { valueChange: "valueChange", change: "change" }, host: { attributes: { "role": "group" }, properties: { "class.mc-button-toggle_vertical": "vertical" }, classAttribute: "mc-button-toggle-group" }, providers: [MC_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR], queries: [{ propertyName: "buttonToggles", predicate: i0.forwardRef(function () { return McButtonToggle; }) }], exportAs: ["mcButtonToggleGroup"], ngImport: i0 });
210
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McButtonToggleGroup, decorators: [{
211
+ /** @nocollapse */ McButtonToggleGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McButtonToggleGroup, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
212
+ /** @nocollapse */ McButtonToggleGroup.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: McButtonToggleGroup, selector: "mc-button-toggle-group", inputs: { vertical: "vertical", value: "value", multiple: "multiple", disabled: "disabled" }, outputs: { valueChange: "valueChange", change: "change" }, host: { attributes: { "role": "group" }, properties: { "class.mc-button-toggle_vertical": "vertical" }, classAttribute: "mc-button-toggle-group" }, providers: [MC_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR], queries: [{ propertyName: "buttonToggles", predicate: i0.forwardRef(function () { return McButtonToggle; }) }], exportAs: ["mcButtonToggleGroup"], ngImport: i0 });
213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McButtonToggleGroup, decorators: [{
211
214
  type: Directive,
212
215
  args: [{
213
216
  selector: 'mc-button-toggle-group',
@@ -242,6 +245,7 @@ class McButtonToggle {
242
245
  this.changeDetectorRef = changeDetectorRef;
243
246
  this.focusMonitor = focusMonitor;
244
247
  this.element = element;
248
+ this.iconType = '';
245
249
  /** Event emitted when the group value changes. */
246
250
  this.change = new EventEmitter();
247
251
  this.isSingleSelector = false;
@@ -276,6 +280,12 @@ class McButtonToggle {
276
280
  }
277
281
  this.focusMonitor.monitor(this.element.nativeElement, true);
278
282
  }
283
+ ngAfterContentInit() {
284
+ if (this.icons.length) {
285
+ const nodesWithoutComments = getNodesWithoutComments(this.element.nativeElement.querySelector('.mc-button-toggle-wrapper').childNodes).length;
286
+ this.iconType = nodesWithoutComments === this.icons.length ? '-icon' : '-icon-text';
287
+ }
288
+ }
279
289
  ngOnDestroy() {
280
290
  const group = this.buttonToggleGroup;
281
291
  this.focusMonitor.stopMonitoring(this.element.nativeElement);
@@ -316,39 +326,49 @@ class McButtonToggle {
316
326
  this.changeDetectorRef.markForCheck();
317
327
  }
318
328
  }
319
- /** @nocollapse */ McButtonToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McButtonToggle, deps: [{ token: McButtonToggleGroup, optional: true }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
320
- /** @nocollapse */ McButtonToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: McButtonToggle, selector: "mc-button-toggle", inputs: { checked: "checked", value: "value", tabIndex: "tabIndex", disabled: "disabled" }, outputs: { change: "change" }, host: { properties: { "class.mc-button-toggle-standalone": "!buttonToggleGroup" }, classAttribute: "mc-button-toggle" }, viewQueries: [{ propertyName: "mcButton", first: true, predicate: McButton, descendants: true }], exportAs: ["mcButtonToggle"], ngImport: i0, template: `
329
+ /** @nocollapse */ McButtonToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McButtonToggle, deps: [{ token: McButtonToggleGroup, optional: true }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
330
+ /** @nocollapse */ McButtonToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: McButtonToggle, selector: "mc-button-toggle", inputs: { checked: "checked", value: "value", tabIndex: "tabIndex", disabled: "disabled" }, outputs: { change: "change" }, host: { properties: { "class.mc-button-toggle-standalone": "!buttonToggleGroup", "class": "\"mc-button-toggle\" + iconType" }, classAttribute: "mc-button-toggle" }, queries: [{ propertyName: "icons", predicate: McIcon, descendants: true }], viewQueries: [{ propertyName: "mcButton", first: true, predicate: McButton, descendants: true }], exportAs: ["mcButtonToggle"], ngImport: i0, template: `
321
331
  <button
322
332
  mc-button
333
+ mc-title
323
334
  type="button"
324
335
  [class.mc-active]="checked"
325
336
  [disabled]="disabled"
326
337
  [tabIndex]="tabIndex"
327
338
  (click)="onToggleClick()">
328
- <ng-content></ng-content>
339
+ <div class="mc-button-toggle-wrapper" #mcTitleText>
340
+ <ng-content></ng-content>
341
+ </div>
329
342
  </button>
330
- `, isInline: true, styles: ["@keyframes mc-progress{0%{background-position:0 0}to{background-position:29px 0}}.mc-progress{position:relative}.mc-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.05) 10px,transparent 10px,transparent 20px,rgba(0,0,0,.05) 20px,rgba(0,0,0,.05) 30px,transparent 30px) repeat;background-size:29px 29px;animation:mc-progress 1s linear infinite}.mc-group{display:flex;flex-direction:row}.mc-group .mc-group_justified>.mc-group-item{width:100%}.mc-group .mc-group-item+.mc-group-item{margin-left:calc(-1 * var(--mc-button-size-border-width, 1px))}.mc-group>.mc-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.mc-group>.mc-group-item:first-child:not(:last-child)>.mc-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.mc-group>.mc-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.mc-group>.mc-group-item:last-child:not(:first-child)>.mc-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.mc-group>.mc-group-item:not(:first-child):not(:last-child){border-radius:0}.mc-group>.mc-group-item:not(:first-child):not(:last-child)>.mc-form-field__container{border-radius:0}.mc-vertical-group{display:flex;flex-direction:column}.mc-vertical-group>.mc-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mc-button-size-border-radius, 4px)}.mc-vertical-group>.mc-group-item:first-child:not(:last-child)>.mc-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.mc-vertical-group>.mc-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--mc-button-size-border-radius, 4px)}.mc-vertical-group>.mc-group-item:last-child:not(:first-child)>.mc-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.mc-vertical-group>.mc-group-item:not(:first-child):not(:last-child){border-radius:0}.mc-vertical-group>.mc-group-item:not(:first-child):not(:last-child)>.mc-form-field__container{border-radius:0}.mc-vertical-group .mc-group-item+.mc-group-item{margin-top:calc(-1 * var(--mc-button-size-border-width, 1px))}.mc-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mc-button-toggle-group{display:flex;flex-direction:row}.mc-button-toggle-group .mc-button-toggle:first-of-type:not(:last-of-type)>.mc-button,.mc-button-toggle-group .mc-button-toggle:first-of-type:not(:last-of-type)>.mc-icon-button{border-bottom-right-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-top-right-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-bottom-left-radius:var(--mc-button-toggle-size-border-radius, 4px);border-top-left-radius:var(--mc-button-toggle-size-border-radius, 4px)}.mc-button-toggle-group .mc-button-toggle:last-of-type:not(:first-of-type)>.mc-button,.mc-button-toggle-group .mc-button-toggle:last-of-type:not(:first-of-type)>.mc-icon-button{border-bottom-left-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-top-left-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-bottom-right-radius:var(--mc-button-toggle-size-border-radius, 4px);border-top-right-radius:var(--mc-button-toggle-size-border-radius, 4px)}.mc-button-toggle-group .mc-button-toggle:not(:first-of-type):not(:last-of-type)>.mc-button,.mc-button-toggle-group .mc-button-toggle:not(:first-of-type):not(:last-of-type)>.mc-icon-button{border-radius:var(--mc-button-toggle-size-border-siblings-radius, 0)}.mc-button-toggle-group .mc-button-toggle[disabled]{outline:0}.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle:not([disabled])+.mc-button-toggle:not([disabled]){margin-left:calc(-1 * var(--mc-button-toggle-size-border-size, 1px))}.mc-button-toggle_vertical{flex-direction:column}.mc-button-toggle_vertical .mc-button-toggle+.mc-button-toggle{border-left:none;border-right:none}.mc-button-toggle_vertical .mc-button-toggle:not([disabled])+.mc-button-toggle:not([disabled]){margin-top:calc(-1 * var(--mc-button-toggle-size-border-size, 1px))}.mc-button-toggle_vertical .mc-button-toggle .mc-button,.mc-button-toggle_vertical .mc-button-toggle .mc-icon-button{width:100%}.mc-button-toggle_vertical .mc-button-toggle:first-child:not(:last-child)>.mc-button,.mc-button-toggle_vertical .mc-button-toggle:first-child:not(:last-child)>.mc-icon-button{border-bottom-right-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-bottom-left-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-top-right-radius:var(--mc-button-toggle-size-border-radius, 4px);border-top-left-radius:var(--mc-button-toggle-size-border-radius, 4px)}.mc-button-toggle_vertical .mc-button-toggle:last-child:not(:first-child)>.mc-button,.mc-button-toggle_vertical .mc-button-toggle:last-child:not(:first-child)>.mc-icon-button{border-top-right-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-top-left-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-bottom-right-radius:var(--mc-button-toggle-size-border-radius, 4px);border-bottom-left-radius:var(--mc-button-toggle-size-border-radius, 4px)}.mc-button-toggle_vertical .mc-button-toggle:not(:first-child):not(:last-child)>.mc-button,.mc-button-toggle_vertical .mc-button-toggle:not(:first-child):not(:last-child)>.mc-icon-button{border-radius:var(--mc-button-toggle-size-border-siblings-radius, 0)}.mc-button-toggle-standalone{box-shadow:none}\n"], dependencies: [{ kind: "component", type: i2.McButton, selector: "[mc-button]", inputs: ["color", "tabIndex", "disabled"] }, { kind: "directive", type: i2.McButtonCssStyler, selector: "[mc-button]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
331
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McButtonToggle, decorators: [{
343
+ `, isInline: true, styles: ["@keyframes mc-progress{0%{background-position:0 0}to{background-position:29px 0}}.mc-progress{position:relative}.mc-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.05) 10px,transparent 10px,transparent 20px,rgba(0,0,0,.05) 20px,rgba(0,0,0,.05) 30px,transparent 30px) repeat;background-size:29px 29px;animation:mc-progress 1s linear infinite}.mc-group{display:flex;flex-direction:row}.mc-group .mc-group_justified>.mc-group-item{width:100%}.mc-group .mc-group-item+.mc-group-item{margin-left:calc(-1 * var(--mc-button-size-border-width, 2px))}.mc-group>.mc-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.mc-group>.mc-group-item:first-child:not(:last-child)>.mc-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.mc-group>.mc-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.mc-group>.mc-group-item:last-child:not(:first-child)>.mc-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.mc-group>.mc-group-item:not(:first-child):not(:last-child){border-radius:0}.mc-group>.mc-group-item:not(:first-child):not(:last-child)>.mc-form-field__container{border-radius:0}.mc-vertical-group{display:flex;flex-direction:column}.mc-vertical-group>.mc-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mc-button-size-border-radius, 8px)}.mc-vertical-group>.mc-group-item:first-child:not(:last-child)>.mc-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.mc-vertical-group>.mc-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--mc-button-size-border-radius, 8px)}.mc-vertical-group>.mc-group-item:last-child:not(:first-child)>.mc-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.mc-vertical-group>.mc-group-item:not(:first-child):not(:last-child){border-radius:0}.mc-vertical-group>.mc-group-item:not(:first-child):not(:last-child)>.mc-form-field__container{border-radius:0}.mc-vertical-group .mc-group-item+.mc-group-item{margin-top:calc(-1 * var(--mc-button-size-border-width, 2px))}.mc-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mc-button-toggle-group{box-sizing:border-box;display:inline-flex;flex-direction:row;align-items:center;gap:2px;border-width:var(--mc-button-toggle-group-size-border-width, );border-radius:var(--mc-button-toggle-group-size-border-radius, );border-style:solid;padding:var(--mc-button-toggle-group-size-padding, )}.mc-button-toggle-group .mc-button-toggle{display:flex;overflow:hidden;justify-content:flex-start;border-radius:var(--mc-button-toggle-size-border-radius, 8px)}.mc-button-toggle-group .mc-button-toggle>.mc-button,.mc-button-toggle-group .mc-button-toggle>.mc-button-icon{border:none;border-width:var(--mc-button-toggle-size-border-width, );border-radius:var(--mc-button-toggle-size-border-radius, 8px);min-width:var(--mc-button-toggle-size-min-width, );padding-left:var(--mc-button-toggle-size-horizontal-padding, );padding-right:var(--mc-button-toggle-size-horizontal-padding, )}.mc-button-toggle-group .mc-button-toggle>.mc-button .mc-button-wrapper,.mc-button-toggle-group .mc-button-toggle>.mc-button-icon .mc-button-wrapper{width:100%}.mc-button-toggle-group .mc-button-toggle>.mc-button .mc-button-toggle-wrapper,.mc-button-toggle-group .mc-button-toggle>.mc-button-icon .mc-button-toggle-wrapper{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;display:inline-block;width:100%}.mc-button-toggle-group .mc-button-toggle>.mc-button .mc-button-toggle-wrapper .mc-icon,.mc-button-toggle-group .mc-button-toggle>.mc-button-icon .mc-button-toggle-wrapper .mc-icon{line-height:20px;vertical-align:baseline}.mc-button-toggle-group .mc-button-toggle.mc-button-toggle-icon-text>.mc-button,.mc-button-toggle-group .mc-button-toggle.mc-button-toggle-icon-text>.mc-button-icon{padding-left:var(--mc-button-toggle-size-left-icon-padding, )}.mc-button-toggle-group .mc-button-toggle.mc-button-toggle-icon-text>.mc-button .mc-icon,.mc-button-toggle-group .mc-button-toggle.mc-button-toggle-icon-text>.mc-button-icon .mc-icon{margin-right:4px}.mc-button-toggle-group .mc-button-toggle[disabled]{outline:0}.mc-button-toggle-group:not(.mc-button-toggle_vertical){height:32px}.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle>.mc-button,.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle>.mc-button-icon{height:28px;min-height:28px}.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle.mc-button-toggle-icon{width:var(--mc-button-icon-toggle-size-width, )}.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle.mc-button-toggle-icon>.mc-button,.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle.mc-button-toggle-icon>.mc-button-icon{width:var(--mc-button-icon-toggle-size-width, )}.mc-button-toggle_vertical{flex-direction:column}.mc-button-toggle_vertical .mc-button-toggle+.mc-button-toggle{border-left:none;border-right:none}.mc-button-toggle_vertical .mc-button-toggle{width:100%}.mc-button-toggle_vertical .mc-button-toggle>.mc-button,.mc-button-toggle_vertical .mc-button-toggle>.mc-button-icon{width:100%;border-width:var(--mc-button-toggle-size-border-width, );border-radius:var(--mc-button-toggle-size-border-radius, 8px)}.mc-button-toggle-standalone{box-shadow:none}\n"], dependencies: [{ kind: "component", type: i2.McButton, selector: "[mc-button]", inputs: ["color", "tabIndex", "kbqStyle", "disabled"] }, { kind: "directive", type: i2.McButtonCssStyler, selector: "[mc-button]" }, { kind: "directive", type: i3.McTitleDirective, selector: "[mc-title]", exportAs: ["mcTitle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
344
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McButtonToggle, decorators: [{
332
345
  type: Component,
333
346
  args: [{ selector: 'mc-button-toggle', exportAs: 'mcButtonToggle', template: `
334
347
  <button
335
348
  mc-button
349
+ mc-title
336
350
  type="button"
337
351
  [class.mc-active]="checked"
338
352
  [disabled]="disabled"
339
353
  [tabIndex]="tabIndex"
340
354
  (click)="onToggleClick()">
341
- <ng-content></ng-content>
355
+ <div class="mc-button-toggle-wrapper" #mcTitleText>
356
+ <ng-content></ng-content>
357
+ </div>
342
358
  </button>
343
359
  `, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
344
360
  class: 'mc-button-toggle',
345
- '[class.mc-button-toggle-standalone]': '!buttonToggleGroup'
346
- }, styles: ["@keyframes mc-progress{0%{background-position:0 0}to{background-position:29px 0}}.mc-progress{position:relative}.mc-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.05) 10px,transparent 10px,transparent 20px,rgba(0,0,0,.05) 20px,rgba(0,0,0,.05) 30px,transparent 30px) repeat;background-size:29px 29px;animation:mc-progress 1s linear infinite}.mc-group{display:flex;flex-direction:row}.mc-group .mc-group_justified>.mc-group-item{width:100%}.mc-group .mc-group-item+.mc-group-item{margin-left:calc(-1 * var(--mc-button-size-border-width, 1px))}.mc-group>.mc-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.mc-group>.mc-group-item:first-child:not(:last-child)>.mc-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.mc-group>.mc-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.mc-group>.mc-group-item:last-child:not(:first-child)>.mc-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.mc-group>.mc-group-item:not(:first-child):not(:last-child){border-radius:0}.mc-group>.mc-group-item:not(:first-child):not(:last-child)>.mc-form-field__container{border-radius:0}.mc-vertical-group{display:flex;flex-direction:column}.mc-vertical-group>.mc-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mc-button-size-border-radius, 4px)}.mc-vertical-group>.mc-group-item:first-child:not(:last-child)>.mc-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.mc-vertical-group>.mc-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--mc-button-size-border-radius, 4px)}.mc-vertical-group>.mc-group-item:last-child:not(:first-child)>.mc-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.mc-vertical-group>.mc-group-item:not(:first-child):not(:last-child){border-radius:0}.mc-vertical-group>.mc-group-item:not(:first-child):not(:last-child)>.mc-form-field__container{border-radius:0}.mc-vertical-group .mc-group-item+.mc-group-item{margin-top:calc(-1 * var(--mc-button-size-border-width, 1px))}.mc-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mc-button-toggle-group{display:flex;flex-direction:row}.mc-button-toggle-group .mc-button-toggle:first-of-type:not(:last-of-type)>.mc-button,.mc-button-toggle-group .mc-button-toggle:first-of-type:not(:last-of-type)>.mc-icon-button{border-bottom-right-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-top-right-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-bottom-left-radius:var(--mc-button-toggle-size-border-radius, 4px);border-top-left-radius:var(--mc-button-toggle-size-border-radius, 4px)}.mc-button-toggle-group .mc-button-toggle:last-of-type:not(:first-of-type)>.mc-button,.mc-button-toggle-group .mc-button-toggle:last-of-type:not(:first-of-type)>.mc-icon-button{border-bottom-left-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-top-left-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-bottom-right-radius:var(--mc-button-toggle-size-border-radius, 4px);border-top-right-radius:var(--mc-button-toggle-size-border-radius, 4px)}.mc-button-toggle-group .mc-button-toggle:not(:first-of-type):not(:last-of-type)>.mc-button,.mc-button-toggle-group .mc-button-toggle:not(:first-of-type):not(:last-of-type)>.mc-icon-button{border-radius:var(--mc-button-toggle-size-border-siblings-radius, 0)}.mc-button-toggle-group .mc-button-toggle[disabled]{outline:0}.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle:not([disabled])+.mc-button-toggle:not([disabled]){margin-left:calc(-1 * var(--mc-button-toggle-size-border-size, 1px))}.mc-button-toggle_vertical{flex-direction:column}.mc-button-toggle_vertical .mc-button-toggle+.mc-button-toggle{border-left:none;border-right:none}.mc-button-toggle_vertical .mc-button-toggle:not([disabled])+.mc-button-toggle:not([disabled]){margin-top:calc(-1 * var(--mc-button-toggle-size-border-size, 1px))}.mc-button-toggle_vertical .mc-button-toggle .mc-button,.mc-button-toggle_vertical .mc-button-toggle .mc-icon-button{width:100%}.mc-button-toggle_vertical .mc-button-toggle:first-child:not(:last-child)>.mc-button,.mc-button-toggle_vertical .mc-button-toggle:first-child:not(:last-child)>.mc-icon-button{border-bottom-right-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-bottom-left-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-top-right-radius:var(--mc-button-toggle-size-border-radius, 4px);border-top-left-radius:var(--mc-button-toggle-size-border-radius, 4px)}.mc-button-toggle_vertical .mc-button-toggle:last-child:not(:first-child)>.mc-button,.mc-button-toggle_vertical .mc-button-toggle:last-child:not(:first-child)>.mc-icon-button{border-top-right-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-top-left-radius:var(--mc-button-toggle-size-border-siblings-radius, 0);border-bottom-right-radius:var(--mc-button-toggle-size-border-radius, 4px);border-bottom-left-radius:var(--mc-button-toggle-size-border-radius, 4px)}.mc-button-toggle_vertical .mc-button-toggle:not(:first-child):not(:last-child)>.mc-button,.mc-button-toggle_vertical .mc-button-toggle:not(:first-child):not(:last-child)>.mc-icon-button{border-radius:var(--mc-button-toggle-size-border-siblings-radius, 0)}.mc-button-toggle-standalone{box-shadow:none}\n"] }]
361
+ '[class.mc-button-toggle-standalone]': '!buttonToggleGroup',
362
+ '[class]': '"mc-button-toggle" + iconType'
363
+ }, styles: ["@keyframes mc-progress{0%{background-position:0 0}to{background-position:29px 0}}.mc-progress{position:relative}.mc-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.05) 10px,transparent 10px,transparent 20px,rgba(0,0,0,.05) 20px,rgba(0,0,0,.05) 30px,transparent 30px) repeat;background-size:29px 29px;animation:mc-progress 1s linear infinite}.mc-group{display:flex;flex-direction:row}.mc-group .mc-group_justified>.mc-group-item{width:100%}.mc-group .mc-group-item+.mc-group-item{margin-left:calc(-1 * var(--mc-button-size-border-width, 2px))}.mc-group>.mc-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.mc-group>.mc-group-item:first-child:not(:last-child)>.mc-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.mc-group>.mc-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.mc-group>.mc-group-item:last-child:not(:first-child)>.mc-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.mc-group>.mc-group-item:not(:first-child):not(:last-child){border-radius:0}.mc-group>.mc-group-item:not(:first-child):not(:last-child)>.mc-form-field__container{border-radius:0}.mc-vertical-group{display:flex;flex-direction:column}.mc-vertical-group>.mc-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mc-button-size-border-radius, 8px)}.mc-vertical-group>.mc-group-item:first-child:not(:last-child)>.mc-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.mc-vertical-group>.mc-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--mc-button-size-border-radius, 8px)}.mc-vertical-group>.mc-group-item:last-child:not(:first-child)>.mc-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.mc-vertical-group>.mc-group-item:not(:first-child):not(:last-child){border-radius:0}.mc-vertical-group>.mc-group-item:not(:first-child):not(:last-child)>.mc-form-field__container{border-radius:0}.mc-vertical-group .mc-group-item+.mc-group-item{margin-top:calc(-1 * var(--mc-button-size-border-width, 2px))}.mc-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mc-button-toggle-group{box-sizing:border-box;display:inline-flex;flex-direction:row;align-items:center;gap:2px;border-width:var(--mc-button-toggle-group-size-border-width, );border-radius:var(--mc-button-toggle-group-size-border-radius, );border-style:solid;padding:var(--mc-button-toggle-group-size-padding, )}.mc-button-toggle-group .mc-button-toggle{display:flex;overflow:hidden;justify-content:flex-start;border-radius:var(--mc-button-toggle-size-border-radius, 8px)}.mc-button-toggle-group .mc-button-toggle>.mc-button,.mc-button-toggle-group .mc-button-toggle>.mc-button-icon{border:none;border-width:var(--mc-button-toggle-size-border-width, );border-radius:var(--mc-button-toggle-size-border-radius, 8px);min-width:var(--mc-button-toggle-size-min-width, );padding-left:var(--mc-button-toggle-size-horizontal-padding, );padding-right:var(--mc-button-toggle-size-horizontal-padding, )}.mc-button-toggle-group .mc-button-toggle>.mc-button .mc-button-wrapper,.mc-button-toggle-group .mc-button-toggle>.mc-button-icon .mc-button-wrapper{width:100%}.mc-button-toggle-group .mc-button-toggle>.mc-button .mc-button-toggle-wrapper,.mc-button-toggle-group .mc-button-toggle>.mc-button-icon .mc-button-toggle-wrapper{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;display:inline-block;width:100%}.mc-button-toggle-group .mc-button-toggle>.mc-button .mc-button-toggle-wrapper .mc-icon,.mc-button-toggle-group .mc-button-toggle>.mc-button-icon .mc-button-toggle-wrapper .mc-icon{line-height:20px;vertical-align:baseline}.mc-button-toggle-group .mc-button-toggle.mc-button-toggle-icon-text>.mc-button,.mc-button-toggle-group .mc-button-toggle.mc-button-toggle-icon-text>.mc-button-icon{padding-left:var(--mc-button-toggle-size-left-icon-padding, )}.mc-button-toggle-group .mc-button-toggle.mc-button-toggle-icon-text>.mc-button .mc-icon,.mc-button-toggle-group .mc-button-toggle.mc-button-toggle-icon-text>.mc-button-icon .mc-icon{margin-right:4px}.mc-button-toggle-group .mc-button-toggle[disabled]{outline:0}.mc-button-toggle-group:not(.mc-button-toggle_vertical){height:32px}.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle>.mc-button,.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle>.mc-button-icon{height:28px;min-height:28px}.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle.mc-button-toggle-icon{width:var(--mc-button-icon-toggle-size-width, )}.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle.mc-button-toggle-icon>.mc-button,.mc-button-toggle-group:not(.mc-button-toggle_vertical) .mc-button-toggle.mc-button-toggle-icon>.mc-button-icon{width:var(--mc-button-icon-toggle-size-width, )}.mc-button-toggle_vertical{flex-direction:column}.mc-button-toggle_vertical .mc-button-toggle+.mc-button-toggle{border-left:none;border-right:none}.mc-button-toggle_vertical .mc-button-toggle{width:100%}.mc-button-toggle_vertical .mc-button-toggle>.mc-button,.mc-button-toggle_vertical .mc-button-toggle>.mc-button-icon{width:100%;border-width:var(--mc-button-toggle-size-border-width, );border-radius:var(--mc-button-toggle-size-border-radius, 8px)}.mc-button-toggle-standalone{box-shadow:none}\n"] }]
347
364
  }], ctorParameters: function () {
348
365
  return [{ type: McButtonToggleGroup, decorators: [{
349
366
  type: Optional
350
367
  }] }, { type: i0.ChangeDetectorRef }, { type: i1.FocusMonitor }, { type: i0.ElementRef }];
351
- }, propDecorators: { checked: [{
368
+ }, propDecorators: { icons: [{
369
+ type: ContentChildren,
370
+ args: [McIcon, { descendants: true }]
371
+ }], checked: [{
352
372
  type: Input
353
373
  }], mcButton: [{
354
374
  type: ViewChild,
@@ -365,13 +385,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
365
385
 
366
386
  class McButtonToggleModule {
367
387
  }
368
- /** @nocollapse */ McButtonToggleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McButtonToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
369
- /** @nocollapse */ McButtonToggleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: McButtonToggleModule, declarations: [McButtonToggleGroup, McButtonToggle], imports: [McCommonModule, McButtonModule], exports: [McCommonModule, McButtonToggleGroup, McButtonToggle] });
370
- /** @nocollapse */ McButtonToggleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McButtonToggleModule, imports: [McCommonModule, McButtonModule, McCommonModule] });
371
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: McButtonToggleModule, decorators: [{
388
+ /** @nocollapse */ McButtonToggleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McButtonToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
389
+ /** @nocollapse */ McButtonToggleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: McButtonToggleModule, declarations: [McButtonToggleGroup, McButtonToggle], imports: [McCommonModule, McButtonModule, McTitleModule], exports: [McCommonModule, McButtonToggleGroup, McButtonToggle] });
390
+ /** @nocollapse */ McButtonToggleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McButtonToggleModule, imports: [McCommonModule, McButtonModule, McTitleModule, McCommonModule] });
391
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: McButtonToggleModule, decorators: [{
372
392
  type: NgModule,
373
393
  args: [{
374
- imports: [McCommonModule, McButtonModule],
394
+ imports: [McCommonModule, McButtonModule, McTitleModule],
375
395
  exports: [McCommonModule, McButtonToggleGroup, McButtonToggle],
376
396
  declarations: [McButtonToggleGroup, McButtonToggle]
377
397
  }]
@@ -1 +1 @@
1
- {"version":3,"file":"ptsecurity-mosaic-button-toggle.mjs","sources":["../../../packages/mosaic/button-toggle/button-toggle.component.ts","../../../packages/mosaic/button-toggle/button-toggle.module.ts","../../../packages/mosaic/button-toggle/ptsecurity-mosaic-button-toggle.ts"],"sourcesContent":["import { FocusMonitor } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n QueryList,\n ViewEncapsulation,\n ViewChild\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { McButton } from '@ptsecurity/mosaic/button';\n\n\n/** Acceptable types for a button toggle. */\nexport type ToggleType = 'checkbox' | 'radio';\n\n/**\n * Provider Expression that allows mc-button-toggle-group to register as a ControlValueAccessor.\n * This allows it to support [(ngModel)].\n * @docs-private\n */\nexport const MC_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => McButtonToggleGroup),\n multi: true\n};\n\n/** Change event object emitted by MсButtonToggle. */\nexport class McButtonToggleChange {\n constructor(\n /** The MсButtonToggle that emits the event. */\n public source: McButtonToggle,\n /** The value assigned to the MсButtonToggle. */\n public value: any\n ) {}\n}\n\n/** Exclusive selection button toggle group that behaves like a radio-button group. */\n@Directive({\n selector: 'mc-button-toggle-group',\n providers: [MC_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR],\n host: {\n role: 'group',\n class: 'mc-button-toggle-group',\n '[class.mc-button-toggle_vertical]': 'vertical'\n },\n exportAs: 'mcButtonToggleGroup'\n})\nexport class McButtonToggleGroup implements ControlValueAccessor, OnInit, AfterContentInit {\n\n /** Whether the toggle group is vertical. */\n @Input()\n get vertical(): boolean {\n return this._vertical;\n }\n\n set vertical(value: boolean) {\n this._vertical = coerceBooleanProperty(value);\n }\n\n /** Value of the toggle group. */\n @Input()\n get value(): any {\n const selected = this.selectionModel ? this.selectionModel.selected : [];\n\n if (this.multiple) {\n return selected.map((toggle) => toggle.value);\n }\n\n return selected[0] ? selected[0].value : undefined;\n }\n\n set value(newValue: any) {\n this.setSelectionByValue(newValue);\n this.valueChange.emit(this.value);\n }\n\n /** Selected button toggles in the group. */\n get selected(): any {\n const selected = this.selectionModel.selected;\n\n return this.multiple ? selected : (selected[0] || null);\n }\n\n /** Whether multiple button toggles can be selected. */\n @Input()\n get multiple(): boolean {\n return this._multiple;\n }\n\n set multiple(value: boolean) {\n this._multiple = coerceBooleanProperty(value);\n }\n\n /** Child button toggle buttons. */\n @ContentChildren(forwardRef(() => McButtonToggle)) buttonToggles: QueryList<McButtonToggle>;\n\n /** Whether multiple button toggle group is disabled. */\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n\n if (!this.buttonToggles) { return; }\n\n this.buttonToggles.forEach((toggle) => toggle.markForCheck());\n }\n\n /**\n * Event that emits whenever the value of the group changes.\n * Used to facilitate two-way data binding.\n * @docs-private\n */\n @Output() readonly valueChange = new EventEmitter<any>();\n\n /** Event emitted when the group's value changes. */\n @Output() readonly change: EventEmitter<McButtonToggleChange> = new EventEmitter<McButtonToggleChange>();\n private _vertical = false;\n private _multiple = false;\n private _disabled = false;\n private selectionModel: SelectionModel<McButtonToggle>;\n\n /**\n * Reference to the raw value that the consumer tried to assign. The real\n * value will exclude any values from this one that don't correspond to a\n * toggle. Useful for the cases where the value is assigned before the toggles\n * have been initialized or at the same that they're being swapped out.\n */\n private rawValue: any;\n\n constructor(private _changeDetector: ChangeDetectorRef) {}\n\n /**\n * The method to be called in order to update ngModel.\n * Now `ngModel` binding is not supported in multiple selection mode.\n */\n // tslint:disable-next-line:no-empty\n controlValueAccessorChangeFn: (value: any) => void = () => {};\n\n /** onTouch function registered via registerOnTouch (ControlValueAccessor). */\n // tslint:disable-next-line:no-empty\n onTouched: () => any = () => {};\n\n ngOnInit() {\n this.selectionModel = new SelectionModel<McButtonToggle>(this.multiple, undefined, false);\n }\n\n ngAfterContentInit() {\n this.selectionModel.select(...this.buttonToggles.filter((toggle) => toggle.checked));\n this.disabled = this._disabled;\n }\n\n /**\n * Sets the model value. Implemented as part of ControlValueAccessor.\n * @param value Value to be set to the model.\n */\n writeValue(value: any) {\n this.value = value;\n this._changeDetector.markForCheck();\n }\n\n // Implemented as part of ControlValueAccessor.\n registerOnChange(fn: (value: any) => void) {\n this.controlValueAccessorChangeFn = fn;\n }\n\n // Implemented as part of ControlValueAccessor.\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n // Implemented as part of ControlValueAccessor.\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n /** Dispatch change event with current selection and group value. */\n emitChangeEvent(): void {\n const selected = this.selected;\n const source = Array.isArray(selected) ? selected[selected.length - 1] : selected;\n const event = new McButtonToggleChange(source, this.value);\n this.controlValueAccessorChangeFn(event.value);\n this.change.emit(event);\n }\n\n /**\n * Syncs a button toggle's selected state with the model value.\n * @param toggle Toggle to be synced.\n * @param select Whether the toggle should be selected.\n * @param isUserInput Whether the change was a result of a user interaction.\n */\n syncButtonToggle(toggle: McButtonToggle, select: boolean, isUserInput = false) {\n // Deselect the currently-selected toggle, if we're in single-selection\n // mode and the button being toggled isn't selected at the moment.\n if (!this.multiple && this.selected && !toggle.checked) {\n (this.selected as McButtonToggle).checked = false;\n }\n\n if (select) {\n this.selectionModel.select(toggle);\n } else {\n this.selectionModel.deselect(toggle);\n }\n\n // Only emit the change event for user input.\n if (isUserInput) {\n this.emitChangeEvent();\n }\n\n // Note: we emit this one no matter whether it was a user interaction, because\n // it is used by Angular to sync up the two-way data binding.\n this.valueChange.emit(this.value);\n }\n\n /** Checks whether a button toggle is selected. */\n isSelected(toggle: McButtonToggle) {\n return this.selectionModel.isSelected(toggle);\n }\n\n /** Determines whether a button toggle should be checked on init. */\n isPrechecked(toggle: McButtonToggle) {\n if (this.rawValue === undefined) {\n return false;\n }\n\n if (this.multiple && Array.isArray(this.rawValue)) {\n return this.rawValue.some((value) => toggle.value != null && value === toggle.value);\n }\n\n return toggle.value === this.rawValue;\n }\n\n /** Updates the selection state of the toggles in the group based on a value. */\n private setSelectionByValue(value: any | any[]) {\n this.rawValue = value;\n\n if (!this.buttonToggles) {\n return;\n }\n\n if (this.multiple && value) {\n if (!Array.isArray(value)) {\n throw Error('Value must be an array in multiple-selection mode.');\n }\n\n this.clearSelection();\n value.forEach((currentValue: any) => this.selectValue(currentValue));\n } else {\n this.clearSelection();\n this.selectValue(value);\n }\n }\n\n /** Clears the selected toggles. */\n private clearSelection() {\n this.selectionModel.clear();\n this.buttonToggles.forEach((toggle) => toggle.checked = false);\n }\n\n /** Selects a value if there's a toggle that corresponds to it. */\n private selectValue(value: any) {\n const correspondingOption = this.buttonToggles.find((toggle) => {\n return toggle.value != null && toggle.value === value;\n });\n\n if (correspondingOption) {\n correspondingOption.checked = true;\n this.selectionModel.select(correspondingOption);\n }\n }\n}\n\n/** Single button inside of a toggle group. */\n@Component({\n selector: 'mc-button-toggle',\n exportAs: 'mcButtonToggle',\n template: `\n <button\n mc-button\n type=\"button\"\n [class.mc-active]=\"checked\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n (click)=\"onToggleClick()\">\n <ng-content></ng-content>\n </button>\n `,\n styleUrls: ['button-toggle.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'mc-button-toggle',\n '[class.mc-button-toggle-standalone]': '!buttonToggleGroup'\n }\n})\nexport class McButtonToggle implements OnInit, OnDestroy {\n\n /** Whether the button is checked. */\n @Input()\n get checked(): boolean {\n return this.buttonToggleGroup ? this.buttonToggleGroup.isSelected(this) : this._checked;\n }\n\n set checked(value: boolean) {\n const newValue = coerceBooleanProperty(value);\n\n if (newValue !== this._checked) {\n this._checked = newValue;\n\n if (this.buttonToggleGroup) {\n this.buttonToggleGroup.syncButtonToggle(this, this._checked);\n }\n\n this.changeDetectorRef.markForCheck();\n }\n }\n\n // tslint:disable-next-line:no-reserved-keywords\n type: ToggleType;\n\n @ViewChild(McButton, { static: false }) mcButton: McButton;\n\n /** McButtonToggleGroup reads this to assign its own value. */\n @Input() value: any;\n\n /** Tabindex for the toggle. */\n @Input() tabIndex: number | null;\n\n @Input()\n get disabled(): boolean {\n return this._disabled || (this.buttonToggleGroup && this.buttonToggleGroup.disabled);\n }\n\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n }\n\n /** Event emitted when the group value changes. */\n @Output() readonly change: EventEmitter<McButtonToggleChange> = new EventEmitter<McButtonToggleChange>();\n\n private isSingleSelector = false;\n private _checked = false;\n private _disabled: boolean = false;\n\n constructor(\n @Optional() public buttonToggleGroup: McButtonToggleGroup,\n private changeDetectorRef: ChangeDetectorRef,\n private focusMonitor: FocusMonitor,\n private element: ElementRef\n ) {}\n\n ngOnInit() {\n this.isSingleSelector = this.buttonToggleGroup && !this.buttonToggleGroup.multiple;\n this.type = this.isSingleSelector ? 'radio' : 'checkbox';\n\n if (this.buttonToggleGroup && this.buttonToggleGroup.isPrechecked(this)) {\n this.checked = true;\n }\n\n this.focusMonitor.monitor(this.element.nativeElement, true);\n }\n\n ngOnDestroy() {\n const group = this.buttonToggleGroup;\n\n this.focusMonitor.stopMonitoring(this.element.nativeElement);\n\n // Remove the toggle from the selection once it's destroyed. Needs to happen\n // on the next tick in order to avoid \"changed after checked\" errors.\n if (group && group.isSelected(this)) {\n Promise.resolve().then(() => group.syncButtonToggle(this, false));\n }\n }\n\n /** Focuses the button. */\n focus(): void {\n this.element.nativeElement.focus();\n }\n\n /** Checks the button toggle due to an interaction with the underlying native button. */\n onToggleClick() {\n if (this.disabled) { return; }\n\n const newChecked = this.isSingleSelector ? true : !this._checked;\n\n if (newChecked !== this._checked) {\n this._checked = newChecked;\n if (this.buttonToggleGroup) {\n this.buttonToggleGroup.syncButtonToggle(this, this._checked, true);\n this.buttonToggleGroup.onTouched();\n }\n }\n // Emit a change event when it's the single selector\n this.change.emit(new McButtonToggleChange(this, this.value));\n }\n\n /**\n * Marks the button toggle as needing checking for change detection.\n * This method is exposed because the parent button toggle group will directly\n * update bound properties of the radio button.\n */\n markForCheck() {\n // When the group value changes, the button will not be notified.\n // Use `markForCheck` to explicit update button toggle's status.\n this.changeDetectorRef.markForCheck();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { McButtonModule } from '@ptsecurity/mosaic/button';\nimport { McCommonModule } from '@ptsecurity/mosaic/core';\n\nimport { McButtonToggle, McButtonToggleGroup } from './button-toggle.component';\n\n\n@NgModule({\n imports: [McCommonModule, McButtonModule],\n exports: [McCommonModule, McButtonToggleGroup, McButtonToggle],\n declarations: [McButtonToggleGroup, McButtonToggle]\n})\nexport class McButtonToggleModule {}\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-button-toggle.mjs","sources":["../../../packages/mosaic/button-toggle/button-toggle.component.ts","../../../packages/mosaic/button-toggle/button-toggle.module.ts","../../../packages/mosaic/button-toggle/ptsecurity-mosaic-button-toggle.ts"],"sourcesContent":["import { FocusMonitor } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n QueryList,\n ViewEncapsulation,\n ViewChild\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getNodesWithoutComments, McButton } from '@ptsecurity/mosaic/button';\nimport { McIcon } from '@ptsecurity/mosaic/icon';\n\n\n/** Acceptable types for a button toggle. */\nexport type ToggleType = 'checkbox' | 'radio';\n\n/**\n * Provider Expression that allows mc-button-toggle-group to register as a ControlValueAccessor.\n * This allows it to support [(ngModel)].\n * @docs-private\n */\nexport const MC_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => McButtonToggleGroup),\n multi: true\n};\n\n/** Change event object emitted by MсButtonToggle. */\nexport class McButtonToggleChange {\n constructor(\n /** The MсButtonToggle that emits the event. */\n public source: McButtonToggle,\n /** The value assigned to the MсButtonToggle. */\n public value: any\n ) {}\n}\n\n/** Exclusive selection button toggle group that behaves like a radio-button group. */\n@Directive({\n selector: 'mc-button-toggle-group',\n providers: [MC_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR],\n host: {\n role: 'group',\n class: 'mc-button-toggle-group',\n '[class.mc-button-toggle_vertical]': 'vertical'\n },\n exportAs: 'mcButtonToggleGroup'\n})\nexport class McButtonToggleGroup implements ControlValueAccessor, OnInit, AfterContentInit {\n\n /** Whether the toggle group is vertical. */\n @Input()\n get vertical(): boolean {\n return this._vertical;\n }\n\n set vertical(value: boolean) {\n this._vertical = coerceBooleanProperty(value);\n }\n\n /** Value of the toggle group. */\n @Input()\n get value(): any {\n const selected = this.selectionModel ? this.selectionModel.selected : [];\n\n if (this.multiple) {\n return selected.map((toggle) => toggle.value);\n }\n\n return selected[0] ? selected[0].value : undefined;\n }\n\n set value(newValue: any) {\n this.setSelectionByValue(newValue);\n this.valueChange.emit(this.value);\n }\n\n /** Selected button toggles in the group. */\n get selected(): any {\n const selected = this.selectionModel.selected;\n\n return this.multiple ? selected : (selected[0] || null);\n }\n\n /** Whether multiple button toggles can be selected. */\n @Input()\n get multiple(): boolean {\n return this._multiple;\n }\n\n set multiple(value: boolean) {\n this._multiple = coerceBooleanProperty(value);\n }\n\n /** Child button toggle buttons. */\n @ContentChildren(forwardRef(() => McButtonToggle)) buttonToggles: QueryList<McButtonToggle>;\n\n /** Whether multiple button toggle group is disabled. */\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n\n if (!this.buttonToggles) { return; }\n\n this.buttonToggles.forEach((toggle) => toggle.markForCheck());\n }\n\n /**\n * Event that emits whenever the value of the group changes.\n * Used to facilitate two-way data binding.\n * @docs-private\n */\n @Output() readonly valueChange = new EventEmitter<any>();\n\n /** Event emitted when the group's value changes. */\n @Output() readonly change: EventEmitter<McButtonToggleChange> = new EventEmitter<McButtonToggleChange>();\n private _vertical = false;\n private _multiple = false;\n private _disabled = false;\n private selectionModel: SelectionModel<McButtonToggle>;\n\n /**\n * Reference to the raw value that the consumer tried to assign. The real\n * value will exclude any values from this one that don't correspond to a\n * toggle. Useful for the cases where the value is assigned before the toggles\n * have been initialized or at the same that they're being swapped out.\n */\n private rawValue: any;\n\n constructor(private _changeDetector: ChangeDetectorRef) {}\n\n /**\n * The method to be called in order to update ngModel.\n * Now `ngModel` binding is not supported in multiple selection mode.\n */\n // tslint:disable-next-line:no-empty\n controlValueAccessorChangeFn: (value: any) => void = () => {};\n\n /** onTouch function registered via registerOnTouch (ControlValueAccessor). */\n // tslint:disable-next-line:no-empty\n onTouched: () => any = () => {};\n\n ngOnInit() {\n this.selectionModel = new SelectionModel<McButtonToggle>(this.multiple, undefined, false);\n }\n\n ngAfterContentInit() {\n this.selectionModel.select(...this.buttonToggles.filter((toggle) => toggle.checked));\n this.disabled = this._disabled;\n }\n\n /**\n * Sets the model value. Implemented as part of ControlValueAccessor.\n * @param value Value to be set to the model.\n */\n writeValue(value: any) {\n this.value = value;\n this._changeDetector.markForCheck();\n }\n\n // Implemented as part of ControlValueAccessor.\n registerOnChange(fn: (value: any) => void) {\n this.controlValueAccessorChangeFn = fn;\n }\n\n // Implemented as part of ControlValueAccessor.\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n // Implemented as part of ControlValueAccessor.\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n /** Dispatch change event with current selection and group value. */\n emitChangeEvent(): void {\n const selected = this.selected;\n const source = Array.isArray(selected) ? selected[selected.length - 1] : selected;\n const event = new McButtonToggleChange(source, this.value);\n this.controlValueAccessorChangeFn(event.value);\n this.change.emit(event);\n }\n\n /**\n * Syncs a button toggle's selected state with the model value.\n * @param toggle Toggle to be synced.\n * @param select Whether the toggle should be selected.\n * @param isUserInput Whether the change was a result of a user interaction.\n */\n syncButtonToggle(toggle: McButtonToggle, select: boolean, isUserInput = false) {\n // Deselect the currently-selected toggle, if we're in single-selection\n // mode and the button being toggled isn't selected at the moment.\n if (!this.multiple && this.selected && !toggle.checked) {\n (this.selected as McButtonToggle).checked = false;\n }\n\n if (select) {\n this.selectionModel.select(toggle);\n } else {\n this.selectionModel.deselect(toggle);\n }\n\n // Only emit the change event for user input.\n if (isUserInput) {\n this.emitChangeEvent();\n }\n\n // Note: we emit this one no matter whether it was a user interaction, because\n // it is used by Angular to sync up the two-way data binding.\n this.valueChange.emit(this.value);\n }\n\n /** Checks whether a button toggle is selected. */\n isSelected(toggle: McButtonToggle) {\n return this.selectionModel.isSelected(toggle);\n }\n\n /** Determines whether a button toggle should be checked on init. */\n isPrechecked(toggle: McButtonToggle) {\n if (this.rawValue === undefined) {\n return false;\n }\n\n if (this.multiple && Array.isArray(this.rawValue)) {\n return this.rawValue.some((value) => toggle.value != null && value === toggle.value);\n }\n\n return toggle.value === this.rawValue;\n }\n\n /** Updates the selection state of the toggles in the group based on a value. */\n private setSelectionByValue(value: any | any[]) {\n this.rawValue = value;\n\n if (!this.buttonToggles) {\n return;\n }\n\n if (this.multiple && value) {\n if (!Array.isArray(value)) {\n throw Error('Value must be an array in multiple-selection mode.');\n }\n\n this.clearSelection();\n value.forEach((currentValue: any) => this.selectValue(currentValue));\n } else {\n this.clearSelection();\n this.selectValue(value);\n }\n }\n\n /** Clears the selected toggles. */\n private clearSelection() {\n this.selectionModel.clear();\n this.buttonToggles.forEach((toggle) => toggle.checked = false);\n }\n\n /** Selects a value if there's a toggle that corresponds to it. */\n private selectValue(value: any) {\n const correspondingOption = this.buttonToggles.find((toggle) => {\n return toggle.value != null && toggle.value === value;\n });\n\n if (correspondingOption) {\n correspondingOption.checked = true;\n this.selectionModel.select(correspondingOption);\n }\n }\n}\n\n/** Single button inside of a toggle group. */\n@Component({\n selector: 'mc-button-toggle',\n exportAs: 'mcButtonToggle',\n template: `\n <button\n mc-button\n mc-title\n type=\"button\"\n [class.mc-active]=\"checked\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n (click)=\"onToggleClick()\">\n <div class=\"mc-button-toggle-wrapper\" #mcTitleText>\n <ng-content></ng-content>\n </div>\n </button>\n `,\n styleUrls: ['button-toggle.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'mc-button-toggle',\n '[class.mc-button-toggle-standalone]': '!buttonToggleGroup',\n '[class]': '\"mc-button-toggle\" + iconType'\n }\n})\nexport class McButtonToggle implements OnInit, AfterContentInit, OnDestroy {\n @ContentChildren(McIcon, { descendants: true }) icons: QueryList<McIcon>;\n\n /** Whether the button is checked. */\n @Input()\n get checked(): boolean {\n return this.buttonToggleGroup ? this.buttonToggleGroup.isSelected(this) : this._checked;\n }\n\n set checked(value: boolean) {\n const newValue = coerceBooleanProperty(value);\n\n if (newValue !== this._checked) {\n this._checked = newValue;\n\n if (this.buttonToggleGroup) {\n this.buttonToggleGroup.syncButtonToggle(this, this._checked);\n }\n\n this.changeDetectorRef.markForCheck();\n }\n }\n\n // tslint:disable-next-line:no-reserved-keywords\n type: ToggleType;\n iconType: string = '';\n\n @ViewChild(McButton, { static: false }) mcButton: McButton;\n\n /** McButtonToggleGroup reads this to assign its own value. */\n @Input() value: any;\n\n /** Tabindex for the toggle. */\n @Input() tabIndex: number | null;\n\n @Input()\n get disabled(): boolean {\n return this._disabled || (this.buttonToggleGroup && this.buttonToggleGroup.disabled);\n }\n\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n }\n\n /** Event emitted when the group value changes. */\n @Output() readonly change: EventEmitter<McButtonToggleChange> = new EventEmitter<McButtonToggleChange>();\n\n private isSingleSelector = false;\n private _checked = false;\n private _disabled: boolean = false;\n\n constructor(\n @Optional() public buttonToggleGroup: McButtonToggleGroup,\n private changeDetectorRef: ChangeDetectorRef,\n private focusMonitor: FocusMonitor,\n private element: ElementRef\n ) {}\n\n ngOnInit() {\n this.isSingleSelector = this.buttonToggleGroup && !this.buttonToggleGroup.multiple;\n this.type = this.isSingleSelector ? 'radio' : 'checkbox';\n\n if (this.buttonToggleGroup && this.buttonToggleGroup.isPrechecked(this)) {\n this.checked = true;\n }\n\n this.focusMonitor.monitor(this.element.nativeElement, true);\n }\n\n ngAfterContentInit(): void {\n if (this.icons.length) {\n const nodesWithoutComments = getNodesWithoutComments(\n this.element.nativeElement.querySelector('.mc-button-toggle-wrapper')!.childNodes as NodeList\n ).length;\n this.iconType = nodesWithoutComments === this.icons.length ? '-icon' : '-icon-text';\n }\n }\n\n ngOnDestroy() {\n const group = this.buttonToggleGroup;\n\n this.focusMonitor.stopMonitoring(this.element.nativeElement);\n\n // Remove the toggle from the selection once it's destroyed. Needs to happen\n // on the next tick in order to avoid \"changed after checked\" errors.\n if (group && group.isSelected(this)) {\n Promise.resolve().then(() => group.syncButtonToggle(this, false));\n }\n }\n\n /** Focuses the button. */\n focus(): void {\n this.element.nativeElement.focus();\n }\n\n /** Checks the button toggle due to an interaction with the underlying native button. */\n onToggleClick() {\n if (this.disabled) { return; }\n\n const newChecked = this.isSingleSelector ? true : !this._checked;\n\n if (newChecked !== this._checked) {\n this._checked = newChecked;\n if (this.buttonToggleGroup) {\n this.buttonToggleGroup.syncButtonToggle(this, this._checked, true);\n this.buttonToggleGroup.onTouched();\n }\n }\n // Emit a change event when it's the single selector\n this.change.emit(new McButtonToggleChange(this, this.value));\n }\n\n /**\n * Marks the button toggle as needing checking for change detection.\n * This method is exposed because the parent button toggle group will directly\n * update bound properties of the radio button.\n */\n markForCheck() {\n // When the group value changes, the button will not be notified.\n // Use `markForCheck` to explicit update button toggle's status.\n this.changeDetectorRef.markForCheck();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { McButtonModule } from '@ptsecurity/mosaic/button';\nimport { McCommonModule } from '@ptsecurity/mosaic/core';\nimport { McTitleModule } from '@ptsecurity/mosaic/title';\n\nimport { McButtonToggle, McButtonToggleGroup } from './button-toggle.component';\n\n\n@NgModule({\n imports: [McCommonModule, McButtonModule, McTitleModule],\n exports: [McCommonModule, McButtonToggleGroup, McButtonToggle],\n declarations: [McButtonToggleGroup, McButtonToggle]\n})\nexport class McButtonToggleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}