@ptsecurity/mosaic 13.6.1 → 13.7.2

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 (907) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +6 -6
  3. package/_theming.scss +7238 -7141
  4. package/_visual.scss +2724 -2695
  5. package/autocomplete/autocomplete-origin.directive.d.ts +12 -12
  6. package/autocomplete/autocomplete-trigger.directive.d.ts +167 -167
  7. package/autocomplete/autocomplete.component.d.ts +73 -73
  8. package/autocomplete/autocomplete.module.d.ts +12 -12
  9. package/autocomplete/index.d.ts +1 -1
  10. package/autocomplete/ptsecurity-mosaic-autocomplete.d.ts +5 -5
  11. package/autocomplete/public-api.d.ts +4 -4
  12. package/button/button.component.d.ts +40 -40
  13. package/button/button.module.d.ts +10 -10
  14. package/button/index.d.ts +1 -1
  15. package/button/ptsecurity-mosaic-button.d.ts +5 -5
  16. package/button/public-api.d.ts +2 -2
  17. package/button-toggle/button-toggle.component.d.ts +141 -141
  18. package/button-toggle/button-toggle.module.d.ts +9 -9
  19. package/button-toggle/index.d.ts +1 -1
  20. package/button-toggle/ptsecurity-mosaic-button-toggle.d.ts +5 -5
  21. package/button-toggle/public-api.d.ts +2 -2
  22. package/card/card.component.d.ts +26 -26
  23. package/card/card.module.d.ts +10 -10
  24. package/card/index.d.ts +1 -1
  25. package/card/ptsecurity-mosaic-card.d.ts +5 -5
  26. package/card/public-api.d.ts +2 -2
  27. package/checkbox/README.md +1 -1
  28. package/checkbox/checkbox-config.d.ts +13 -13
  29. package/checkbox/checkbox-module.d.ts +9 -9
  30. package/checkbox/checkbox-required-validator.d.ts +13 -13
  31. package/checkbox/checkbox.d.ts +140 -140
  32. package/checkbox/index.d.ts +1 -1
  33. package/checkbox/ptsecurity-mosaic-checkbox.d.ts +5 -5
  34. package/checkbox/public-api.d.ts +4 -4
  35. package/core/animation/animation.d.ts +6 -6
  36. package/core/animation/fade-animations.d.ts +2 -2
  37. package/core/animation/index.d.ts +3 -3
  38. package/core/animation/select-animations.d.ts +12 -12
  39. package/core/common-behaviors/color.d.ts +19 -19
  40. package/core/common-behaviors/common-module.d.ts +25 -25
  41. package/core/common-behaviors/constructor.d.ts +9 -9
  42. package/core/common-behaviors/disabled.d.ts +8 -8
  43. package/core/common-behaviors/error-state.d.ts +25 -25
  44. package/core/common-behaviors/index.d.ts +5 -5
  45. package/core/common-behaviors/tabindex.d.ts +8 -8
  46. package/core/error/error-options.d.ts +14 -14
  47. package/core/formatters/date/formatter.d.ts +203 -203
  48. package/core/formatters/date/templates/en-US.d.ts +74 -74
  49. package/core/formatters/date/templates/ru-RU.d.ts +74 -74
  50. package/core/formatters/index.d.ts +9 -9
  51. package/core/formatters/number/formatter.d.ts +27 -27
  52. package/core/forms/forms-module.d.ts +7 -7
  53. package/core/forms/forms.directive.d.ts +22 -22
  54. package/core/forms/index.d.ts +2 -2
  55. package/core/highlight/highlight.pipe.d.ts +7 -7
  56. package/core/highlight/index.d.ts +9 -9
  57. package/core/index.d.ts +1 -1
  58. package/core/label/label-options.d.ts +13 -13
  59. package/core/line/line.d.ts +28 -28
  60. package/core/option/action.d.ts +42 -42
  61. package/core/option/index.d.ts +4 -4
  62. package/core/option/optgroup.d.ts +16 -16
  63. package/core/option/option-module.d.ts +11 -11
  64. package/core/option/option.d.ts +115 -115
  65. package/core/overlay/overlay-position-map.d.ts +34 -34
  66. package/core/pop-up/constants.d.ts +29 -29
  67. package/core/pop-up/index.d.ts +3 -3
  68. package/core/pop-up/pop-up-trigger.d.ts +70 -70
  69. package/core/pop-up/pop-up.d.ts +36 -36
  70. package/core/ptsecurity-mosaic-core.d.ts +5 -5
  71. package/core/public-api.d.ts +17 -17
  72. package/core/select/constants.d.ts +23 -23
  73. package/core/select/errors.d.ts +19 -19
  74. package/core/select/events.d.ts +1 -1
  75. package/core/select/index.d.ts +3 -3
  76. package/core/selection/constants.d.ts +4 -4
  77. package/core/selection/index.d.ts +3 -3
  78. package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +30 -30
  79. package/core/selection/pseudo-checkbox/pseudo-checkbox.module.d.ts +8 -8
  80. package/core/services/measure-scrollbar.service.d.ts +11 -11
  81. package/core/utils/index.d.ts +1 -1
  82. package/core/utils/public-api.d.ts +1 -1
  83. package/core/utils/utils.d.ts +2 -2
  84. package/core/validation/index.d.ts +1 -1
  85. package/core/validation/validation.d.ts +18 -18
  86. package/core/version.d.ts +2 -2
  87. package/datepicker/calendar-body.component.d.ts +63 -63
  88. package/datepicker/calendar.component.d.ts +151 -151
  89. package/datepicker/datepicker-animations.d.ts +9 -9
  90. package/datepicker/datepicker-errors.d.ts +2 -2
  91. package/datepicker/datepicker-input.directive.d.ts +178 -178
  92. package/datepicker/datepicker-intl.d.ts +32 -32
  93. package/datepicker/datepicker-module.d.ts +20 -20
  94. package/datepicker/datepicker-toggle.component.d.ts +35 -35
  95. package/datepicker/datepicker.component.d.ts +158 -158
  96. package/datepicker/index.d.ts +1 -1
  97. package/datepicker/month-view.component.d.ts +93 -93
  98. package/datepicker/multi-year-view.component.d.ts +72 -72
  99. package/datepicker/ptsecurity-mosaic-datepicker.d.ts +5 -5
  100. package/datepicker/public-api.d.ts +11 -11
  101. package/datepicker/year-view.component.d.ts +90 -90
  102. package/design-tokens/index.d.ts +1 -1
  103. package/design-tokens/legacy-2017/tokens/components/alert.json5 +83 -83
  104. package/design-tokens/legacy-2017/tokens/components/autocomplete.json5 +11 -11
  105. package/design-tokens/legacy-2017/tokens/components/badge.json5 +174 -174
  106. package/design-tokens/legacy-2017/tokens/components/button-toggle.json5 +10 -10
  107. package/design-tokens/legacy-2017/tokens/components/button.json5 +142 -142
  108. package/design-tokens/legacy-2017/tokens/components/card.json5 +51 -51
  109. package/design-tokens/legacy-2017/tokens/components/checkbox.json5 +97 -97
  110. package/design-tokens/legacy-2017/tokens/components/datepicker.json5 +64 -64
  111. package/design-tokens/legacy-2017/tokens/components/divider.json5 +14 -14
  112. package/design-tokens/legacy-2017/tokens/components/dl.json5 +38 -38
  113. package/design-tokens/legacy-2017/tokens/components/dropdown.json5 +48 -48
  114. package/design-tokens/legacy-2017/tokens/components/form-field.json5 +92 -92
  115. package/design-tokens/legacy-2017/tokens/components/forms.json5 +52 -52
  116. package/design-tokens/legacy-2017/tokens/components/icon.json5 +104 -104
  117. package/design-tokens/legacy-2017/tokens/components/input.json5 +12 -12
  118. package/design-tokens/legacy-2017/tokens/components/link.json5 +50 -50
  119. package/design-tokens/legacy-2017/tokens/components/list.json5 +13 -13
  120. package/design-tokens/legacy-2017/tokens/components/loader-overlay.json5 +23 -0
  121. package/design-tokens/legacy-2017/tokens/components/modal.json5 +81 -81
  122. package/design-tokens/legacy-2017/tokens/components/navbar.json5 +70 -70
  123. package/design-tokens/legacy-2017/tokens/components/optgroup.json5 +10 -10
  124. package/design-tokens/legacy-2017/tokens/components/option.json5 +12 -12
  125. package/design-tokens/legacy-2017/tokens/components/popover.json5 +68 -68
  126. package/design-tokens/legacy-2017/tokens/components/popup.json5 +16 -16
  127. package/design-tokens/legacy-2017/tokens/components/progress-bar.json5 +13 -13
  128. package/design-tokens/legacy-2017/tokens/components/progress-spinner.json5 +7 -7
  129. package/design-tokens/legacy-2017/tokens/components/radio.json5 +45 -45
  130. package/design-tokens/legacy-2017/tokens/components/select.json5 +24 -24
  131. package/design-tokens/legacy-2017/tokens/components/sidepanel.json5 +44 -44
  132. package/design-tokens/legacy-2017/tokens/components/table.json5 +15 -15
  133. package/design-tokens/legacy-2017/tokens/components/tabs.json5 +101 -101
  134. package/design-tokens/legacy-2017/tokens/components/tags.json5 +134 -134
  135. package/design-tokens/legacy-2017/tokens/components/textarea.json5 +12 -12
  136. package/design-tokens/legacy-2017/tokens/components/timepicker.json5 +7 -7
  137. package/design-tokens/legacy-2017/tokens/components/toggle.json5 +79 -79
  138. package/design-tokens/legacy-2017/tokens/components/tooltip.json5 +83 -83
  139. package/design-tokens/legacy-2017/tokens/components/tree.json5 +15 -15
  140. package/design-tokens/legacy-2017/tokens/properties/aliases.json5 +3 -3
  141. package/design-tokens/legacy-2017/tokens/properties/colors.json5 +119 -119
  142. package/design-tokens/legacy-2017/tokens/properties/font.json5 +12 -12
  143. package/design-tokens/legacy-2017/tokens/properties/globals.json5 +49 -49
  144. package/design-tokens/legacy-2017/tokens/properties/padding.json5 +3 -3
  145. package/design-tokens/legacy-2017/tokens/properties/palette.json5 +163 -163
  146. package/design-tokens/legacy-2017/tokens/properties/typography.json5 +175 -175
  147. package/design-tokens/legacy-2017/tokens.d.ts +7873 -7844
  148. package/design-tokens/pt-2022/tokens/components/alert.json5 +83 -83
  149. package/design-tokens/pt-2022/tokens/components/autocomplete.json5 +11 -11
  150. package/design-tokens/pt-2022/tokens/components/badge.json5 +174 -174
  151. package/design-tokens/pt-2022/tokens/components/button-toggle.json5 +10 -10
  152. package/design-tokens/pt-2022/tokens/components/button.json5 +142 -142
  153. package/design-tokens/pt-2022/tokens/components/card.json5 +51 -51
  154. package/design-tokens/pt-2022/tokens/components/checkbox.json5 +97 -97
  155. package/design-tokens/pt-2022/tokens/components/datepicker.json5 +64 -64
  156. package/design-tokens/pt-2022/tokens/components/divider.json5 +14 -14
  157. package/design-tokens/pt-2022/tokens/components/dl.json5 +38 -38
  158. package/design-tokens/pt-2022/tokens/components/dropdown.json5 +48 -48
  159. package/design-tokens/pt-2022/tokens/components/form-field.json5 +92 -92
  160. package/design-tokens/pt-2022/tokens/components/forms.json5 +52 -52
  161. package/design-tokens/pt-2022/tokens/components/icon.json5 +104 -104
  162. package/design-tokens/pt-2022/tokens/components/input.json5 +12 -12
  163. package/design-tokens/pt-2022/tokens/components/link.json5 +50 -50
  164. package/design-tokens/pt-2022/tokens/components/list.json5 +13 -13
  165. package/design-tokens/pt-2022/tokens/components/loader-overlay.json5 +23 -0
  166. package/design-tokens/pt-2022/tokens/components/modal.json5 +81 -81
  167. package/design-tokens/pt-2022/tokens/components/navbar.json5 +70 -70
  168. package/design-tokens/pt-2022/tokens/components/optgroup.json5 +10 -10
  169. package/design-tokens/pt-2022/tokens/components/option.json5 +12 -12
  170. package/design-tokens/pt-2022/tokens/components/popover.json5 +68 -68
  171. package/design-tokens/pt-2022/tokens/components/popup.json5 +16 -16
  172. package/design-tokens/pt-2022/tokens/components/progress-bar.json5 +13 -13
  173. package/design-tokens/pt-2022/tokens/components/progress-spinner.json5 +7 -7
  174. package/design-tokens/pt-2022/tokens/components/radio.json5 +45 -45
  175. package/design-tokens/pt-2022/tokens/components/select.json5 +24 -24
  176. package/design-tokens/pt-2022/tokens/components/sidepanel.json5 +44 -44
  177. package/design-tokens/pt-2022/tokens/components/table.json5 +15 -15
  178. package/design-tokens/pt-2022/tokens/components/tabs.json5 +101 -101
  179. package/design-tokens/pt-2022/tokens/components/tags.json5 +137 -137
  180. package/design-tokens/pt-2022/tokens/components/textarea.json5 +12 -12
  181. package/design-tokens/pt-2022/tokens/components/timepicker.json5 +7 -7
  182. package/design-tokens/pt-2022/tokens/components/toggle.json5 +79 -79
  183. package/design-tokens/pt-2022/tokens/components/tooltip.json5 +83 -83
  184. package/design-tokens/pt-2022/tokens/components/tree.json5 +15 -15
  185. package/design-tokens/pt-2022/tokens/properties/aliases.json5 +3 -3
  186. package/design-tokens/pt-2022/tokens/properties/colors.json5 +122 -122
  187. package/design-tokens/pt-2022/tokens/properties/font.json5 +15 -15
  188. package/design-tokens/pt-2022/tokens/properties/globals.json5 +49 -49
  189. package/design-tokens/pt-2022/tokens/properties/padding.json5 +3 -3
  190. package/design-tokens/pt-2022/tokens/properties/palette.json5 +232 -232
  191. package/design-tokens/pt-2022/tokens/properties/typography.json5 +175 -175
  192. package/design-tokens/pt-2022/tokens.d.ts +9205 -9176
  193. package/design-tokens/ptsecurity-mosaic-design-tokens.d.ts +5 -5
  194. package/design-tokens/public-api.d.ts +3 -3
  195. package/design-tokens/style-dictionary/build.js +76 -63
  196. package/design-tokens/style-dictionary/configs/css.js +13 -13
  197. package/design-tokens/style-dictionary/configs/figma.js +11 -0
  198. package/design-tokens/style-dictionary/configs/index.js +48 -48
  199. package/design-tokens/style-dictionary/configs/js.js +9 -9
  200. package/design-tokens/style-dictionary/configs/scss.js +23 -23
  201. package/design-tokens/style-dictionary/figma-types.js +41 -0
  202. package/design-tokens/style-dictionary/filters/color.js +7 -7
  203. package/design-tokens/style-dictionary/filters/palette.js +7 -7
  204. package/design-tokens/style-dictionary/filters/size.js +7 -7
  205. package/design-tokens/style-dictionary/filters/typography.js +7 -7
  206. package/design-tokens/style-dictionary/formats/figma.js +104 -0
  207. package/design-tokens/style-dictionary/formats/palette.js +25 -25
  208. package/design-tokens/style-dictionary/formats/typography.js +52 -52
  209. package/design-tokens/style-dictionary/transformGroups/css.js +13 -13
  210. package/design-tokens/style-dictionary/transformGroups/figma.js +21 -0
  211. package/design-tokens/style-dictionary/transformGroups/scss.js +12 -12
  212. package/design-tokens/style-dictionary/transformGroups/ts.js +11 -11
  213. package/design-tokens/style-dictionary/transforms/attribute/figma-border.js +18 -0
  214. package/design-tokens/style-dictionary/transforms/attribute/figma-color.js +25 -0
  215. package/design-tokens/style-dictionary/transforms/attribute/figma-default.js +10 -0
  216. package/design-tokens/style-dictionary/transforms/attribute/figma-font.js +31 -0
  217. package/design-tokens/style-dictionary/transforms/attribute/figma-group.js +17 -0
  218. package/design-tokens/style-dictionary/transforms/attribute/figma-opacity.js +10 -0
  219. package/design-tokens/style-dictionary/transforms/attribute/figma-shadow.js +66 -0
  220. package/design-tokens/style-dictionary/transforms/attribute/figma-sizing.js +16 -0
  221. package/design-tokens/style-dictionary/transforms/attribute/figma-spacing.js +15 -0
  222. package/design-tokens/style-dictionary/transforms/attribute/figma-typography.js +24 -0
  223. package/design-tokens/style-dictionary/transforms/attribute/palette.js +9 -9
  224. package/design-tokens/style-dictionary/transforms/attribute/prefix.js +11 -11
  225. package/design-tokens/style-dictionary/transforms/attribute/size.js +8 -8
  226. package/design-tokens/style-dictionary/transforms/attribute/typography.js +9 -9
  227. package/design-tokens/style-dictionary/transforms/value/figma-values.js +7 -0
  228. package/divider/divider.component.d.ts +11 -11
  229. package/divider/divider.module.d.ts +8 -8
  230. package/divider/index.d.ts +1 -1
  231. package/divider/ptsecurity-mosaic-divider.d.ts +5 -5
  232. package/divider/public-api.d.ts +2 -2
  233. package/dl/dl.component.d.ts +26 -26
  234. package/dl/dl.module.d.ts +10 -10
  235. package/dl/index.d.ts +1 -1
  236. package/dl/ptsecurity-mosaic-dl.d.ts +5 -5
  237. package/dl/public-api.d.ts +2 -2
  238. package/dropdown/dropdown-animations.d.ts +11 -11
  239. package/dropdown/dropdown-content.directive.d.ts +32 -32
  240. package/dropdown/dropdown-errors.d.ts +17 -17
  241. package/dropdown/dropdown-item.component.d.ts +50 -50
  242. package/dropdown/dropdown-trigger.directive.d.ts +136 -136
  243. package/dropdown/dropdown.component.d.ts +121 -121
  244. package/dropdown/dropdown.module.d.ts +13 -13
  245. package/dropdown/dropdown.types.d.ts +53 -53
  246. package/dropdown/index.d.ts +1 -1
  247. package/dropdown/ptsecurity-mosaic-dropdown.d.ts +5 -5
  248. package/dropdown/public-api.d.ts +8 -8
  249. package/esm2020/autocomplete/autocomplete-origin.directive.mjs +21 -21
  250. package/esm2020/autocomplete/autocomplete-trigger.directive.mjs +555 -555
  251. package/esm2020/autocomplete/autocomplete.component.mjs +154 -154
  252. package/esm2020/autocomplete/autocomplete.module.mjs +34 -34
  253. package/esm2020/autocomplete/index.mjs +2 -2
  254. package/esm2020/autocomplete/ptsecurity-mosaic-autocomplete.mjs +4 -4
  255. package/esm2020/autocomplete/public-api.mjs +5 -5
  256. package/esm2020/button/button.component.mjs +137 -137
  257. package/esm2020/button/button.module.mjs +38 -38
  258. package/esm2020/button/index.mjs +2 -2
  259. package/esm2020/button/ptsecurity-mosaic-button.mjs +4 -4
  260. package/esm2020/button/public-api.mjs +3 -3
  261. package/esm2020/button-toggle/button-toggle.component.mjs +362 -362
  262. package/esm2020/button-toggle/button-toggle.module.mjs +19 -19
  263. package/esm2020/button-toggle/index.mjs +2 -2
  264. package/esm2020/button-toggle/ptsecurity-mosaic-button-toggle.mjs +4 -4
  265. package/esm2020/button-toggle/public-api.mjs +3 -3
  266. package/esm2020/card/card.component.mjs +80 -80
  267. package/esm2020/card/card.module.mjs +30 -30
  268. package/esm2020/card/index.mjs +2 -2
  269. package/esm2020/card/ptsecurity-mosaic-card.mjs +4 -4
  270. package/esm2020/card/public-api.mjs +3 -3
  271. package/esm2020/checkbox/checkbox-config.mjs +6 -6
  272. package/esm2020/checkbox/checkbox-module.mjs +19 -19
  273. package/esm2020/checkbox/checkbox-required-validator.mjs +27 -27
  274. package/esm2020/checkbox/checkbox.mjs +316 -316
  275. package/esm2020/checkbox/index.mjs +2 -2
  276. package/esm2020/checkbox/ptsecurity-mosaic-checkbox.mjs +4 -4
  277. package/esm2020/checkbox/public-api.mjs +5 -5
  278. package/esm2020/core/animation/animation.mjs +8 -8
  279. package/esm2020/core/animation/fade-animations.mjs +9 -9
  280. package/esm2020/core/animation/index.mjs +4 -4
  281. package/esm2020/core/animation/select-animations.mjs +45 -45
  282. package/esm2020/core/common-behaviors/color.mjs +30 -30
  283. package/esm2020/core/common-behaviors/common-module.mjs +83 -83
  284. package/esm2020/core/common-behaviors/constructor.mjs +2 -2
  285. package/esm2020/core/common-behaviors/disabled.mjs +17 -17
  286. package/esm2020/core/common-behaviors/error-state.mjs +31 -31
  287. package/esm2020/core/common-behaviors/index.mjs +6 -6
  288. package/esm2020/core/common-behaviors/tabindex.mjs +18 -18
  289. package/esm2020/core/error/error-options.mjs +26 -26
  290. package/esm2020/core/formatters/date/formatter.mjs +359 -359
  291. package/esm2020/core/formatters/date/templates/en-US.mjs +281 -281
  292. package/esm2020/core/formatters/date/templates/ru-RU.mjs +281 -281
  293. package/esm2020/core/formatters/index.mjs +20 -20
  294. package/esm2020/core/formatters/number/formatter.mjs +105 -105
  295. package/esm2020/core/forms/forms-module.mjs +24 -24
  296. package/esm2020/core/forms/forms.directive.mjs +66 -66
  297. package/esm2020/core/forms/index.mjs +3 -3
  298. package/esm2020/core/highlight/highlight.pipe.mjs +17 -17
  299. package/esm2020/core/highlight/index.mjs +19 -19
  300. package/esm2020/core/index.mjs +2 -2
  301. package/esm2020/core/label/label-options.mjs +4 -4
  302. package/esm2020/core/line/line.mjs +70 -70
  303. package/esm2020/core/option/action.mjs +121 -121
  304. package/esm2020/core/option/index.mjs +5 -5
  305. package/esm2020/core/option/optgroup.mjs +31 -31
  306. package/esm2020/core/option/option-module.mjs +21 -21
  307. package/esm2020/core/option/option.mjs +257 -257
  308. package/esm2020/core/overlay/overlay-position-map.mjs +244 -244
  309. package/esm2020/core/pop-up/constants.mjs +34 -34
  310. package/esm2020/core/pop-up/index.mjs +4 -4
  311. package/esm2020/core/pop-up/pop-up-trigger.mjs +239 -239
  312. package/esm2020/core/pop-up/pop-up.mjs +94 -94
  313. package/esm2020/core/ptsecurity-mosaic-core.mjs +4 -4
  314. package/esm2020/core/public-api.mjs +18 -18
  315. package/esm2020/core/select/constants.mjs +27 -27
  316. package/esm2020/core/select/errors.mjs +26 -26
  317. package/esm2020/core/select/events.mjs +2 -2
  318. package/esm2020/core/select/index.mjs +4 -4
  319. package/esm2020/core/selection/constants.mjs +6 -6
  320. package/esm2020/core/selection/index.mjs +4 -4
  321. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +49 -49
  322. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +18 -18
  323. package/esm2020/core/services/measure-scrollbar.service.mjs +48 -48
  324. package/esm2020/core/utils/index.mjs +2 -2
  325. package/esm2020/core/utils/public-api.mjs +2 -2
  326. package/esm2020/core/utils/utils.mjs +5 -5
  327. package/esm2020/core/validation/index.mjs +2 -2
  328. package/esm2020/core/validation/validation.mjs +118 -118
  329. package/esm2020/core/version.mjs +3 -3
  330. package/esm2020/datepicker/calendar-body.component.mjs +106 -106
  331. package/esm2020/datepicker/calendar.component.mjs +362 -362
  332. package/esm2020/datepicker/datepicker-animations.mjs +32 -32
  333. package/esm2020/datepicker/datepicker-errors.mjs +6 -6
  334. package/esm2020/datepicker/datepicker-input.directive.mjs +938 -938
  335. package/esm2020/datepicker/datepicker-intl.mjs +40 -40
  336. package/esm2020/datepicker/datepicker-module.mjs +107 -107
  337. package/esm2020/datepicker/datepicker-toggle.component.mjs +86 -86
  338. package/esm2020/datepicker/datepicker.component.mjs +404 -404
  339. package/esm2020/datepicker/index.mjs +2 -2
  340. package/esm2020/datepicker/month-view.component.mjs +257 -257
  341. package/esm2020/datepicker/multi-year-view.component.mjs +218 -218
  342. package/esm2020/datepicker/ptsecurity-mosaic-datepicker.mjs +4 -4
  343. package/esm2020/datepicker/public-api.mjs +12 -12
  344. package/esm2020/datepicker/year-view.component.mjs +253 -253
  345. package/esm2020/design-tokens/index.mjs +2 -2
  346. package/esm2020/design-tokens/legacy-2017/tokens.mjs +1167 -1138
  347. package/esm2020/design-tokens/pt-2022/tokens.mjs +1237 -1208
  348. package/esm2020/design-tokens/ptsecurity-mosaic-design-tokens.mjs +4 -4
  349. package/esm2020/design-tokens/public-api.mjs +4 -4
  350. package/esm2020/divider/divider.component.mjs +39 -39
  351. package/esm2020/divider/divider.module.mjs +18 -18
  352. package/esm2020/divider/index.mjs +2 -2
  353. package/esm2020/divider/ptsecurity-mosaic-divider.mjs +4 -4
  354. package/esm2020/divider/public-api.mjs +3 -3
  355. package/esm2020/dl/dl.component.mjs +78 -78
  356. package/esm2020/dl/dl.module.mjs +42 -42
  357. package/esm2020/dl/index.mjs +2 -2
  358. package/esm2020/dl/ptsecurity-mosaic-dl.mjs +4 -4
  359. package/esm2020/dl/public-api.mjs +3 -3
  360. package/esm2020/dropdown/dropdown-animations.mjs +41 -41
  361. package/esm2020/dropdown/dropdown-content.directive.mjs +64 -64
  362. package/esm2020/dropdown/dropdown-errors.mjs +29 -29
  363. package/esm2020/dropdown/dropdown-item.component.mjs +139 -139
  364. package/esm2020/dropdown/dropdown-trigger.directive.mjs +489 -489
  365. package/esm2020/dropdown/dropdown.component.mjs +292 -292
  366. package/esm2020/dropdown/dropdown.module.mjs +50 -50
  367. package/esm2020/dropdown/dropdown.types.mjs +24 -24
  368. package/esm2020/dropdown/index.mjs +2 -2
  369. package/esm2020/dropdown/ptsecurity-mosaic-dropdown.mjs +4 -4
  370. package/esm2020/dropdown/public-api.mjs +9 -9
  371. package/esm2020/form-field/cleaner.mjs +23 -23
  372. package/esm2020/form-field/form-field-control.mjs +5 -5
  373. package/esm2020/form-field/form-field-errors.mjs +7 -7
  374. package/esm2020/form-field/form-field.mjs +225 -225
  375. package/esm2020/form-field/form-field.module.mjs +57 -57
  376. package/esm2020/form-field/hint.mjs +34 -23
  377. package/esm2020/form-field/index.mjs +2 -2
  378. package/esm2020/form-field/password-hint.mjs +139 -139
  379. package/esm2020/form-field/prefix.mjs +13 -13
  380. package/esm2020/form-field/ptsecurity-mosaic-form-field.mjs +4 -4
  381. package/esm2020/form-field/public-api.mjs +11 -11
  382. package/esm2020/form-field/stepper.mjs +55 -55
  383. package/esm2020/form-field/suffix.mjs +13 -13
  384. package/esm2020/icon/icon.component.mjs +44 -44
  385. package/esm2020/icon/icon.module.mjs +38 -38
  386. package/esm2020/icon/index.mjs +2 -2
  387. package/esm2020/icon/ptsecurity-mosaic-icon.mjs +4 -4
  388. package/esm2020/icon/public-api.mjs +3 -3
  389. package/esm2020/index.mjs +2 -2
  390. package/esm2020/input/index.mjs +2 -2
  391. package/esm2020/input/input-errors.mjs +4 -4
  392. package/esm2020/input/input-number-validators.mjs +92 -92
  393. package/esm2020/input/input-number.mjs +163 -163
  394. package/esm2020/input/input-password.mjs +372 -372
  395. package/esm2020/input/input-value-accessor.mjs +3 -3
  396. package/esm2020/input/input.mjs +334 -334
  397. package/esm2020/input/input.module.mjs +65 -65
  398. package/esm2020/input/ptsecurity-mosaic-input.mjs +4 -4
  399. package/esm2020/input/public-api.mjs +7 -7
  400. package/esm2020/link/index.mjs +2 -2
  401. package/esm2020/link/link.component.mjs +107 -107
  402. package/esm2020/link/link.module.mjs +26 -26
  403. package/esm2020/link/ptsecurity-mosaic-link.mjs +4 -4
  404. package/esm2020/link/public-api.mjs +3 -3
  405. package/esm2020/list/index.mjs +2 -2
  406. package/esm2020/list/list-selection.component.mjs +689 -686
  407. package/esm2020/list/list.component.mjs +44 -44
  408. package/esm2020/list/list.module.mjs +55 -55
  409. package/esm2020/list/ptsecurity-mosaic-list.mjs +4 -4
  410. package/esm2020/list/public-api.mjs +4 -4
  411. package/esm2020/loader-overlay/index.mjs +2 -0
  412. package/esm2020/loader-overlay/loader-overlay.component.mjs +99 -0
  413. package/esm2020/loader-overlay/loader-overlay.module.mjs +50 -0
  414. package/esm2020/loader-overlay/ptsecurity-mosaic-loader-overlay.mjs +5 -0
  415. package/esm2020/loader-overlay/public-api.mjs +3 -0
  416. package/esm2020/modal/css-unit.pipe.mjs +17 -17
  417. package/esm2020/modal/index.mjs +2 -2
  418. package/esm2020/modal/modal-control.service.mjs +85 -85
  419. package/esm2020/modal/modal-ref.class.mjs +8 -8
  420. package/esm2020/modal/modal-util.mjs +17 -17
  421. package/esm2020/modal/modal.component.mjs +509 -501
  422. package/esm2020/modal/modal.directive.mjs +52 -52
  423. package/esm2020/modal/modal.module.mjs +72 -72
  424. package/esm2020/modal/modal.service.mjs +124 -124
  425. package/esm2020/modal/modal.type.mjs +7 -7
  426. package/esm2020/modal/ptsecurity-mosaic-modal.mjs +4 -4
  427. package/esm2020/modal/public-api.mjs +7 -7
  428. package/esm2020/navbar/index.mjs +2 -2
  429. package/esm2020/navbar/navbar-item.component.mjs +582 -582
  430. package/esm2020/navbar/navbar.component.mjs +239 -237
  431. package/esm2020/navbar/navbar.module.mjs +92 -92
  432. package/esm2020/navbar/ptsecurity-mosaic-navbar.mjs +4 -4
  433. package/esm2020/navbar/public-api.mjs +5 -5
  434. package/esm2020/navbar/vertical-navbar.animation.mjs +10 -10
  435. package/esm2020/navbar/vertical-navbar.component.mjs +114 -114
  436. package/esm2020/popover/index.mjs +2 -2
  437. package/esm2020/popover/popover-animations.mjs +16 -16
  438. package/esm2020/popover/popover-confirm.component.mjs +108 -108
  439. package/esm2020/popover/popover.component.mjs +253 -253
  440. package/esm2020/popover/popover.module.mjs +24 -24
  441. package/esm2020/popover/ptsecurity-mosaic-popover.mjs +4 -4
  442. package/esm2020/popover/public-api.mjs +5 -5
  443. package/esm2020/progress-bar/index.mjs +2 -2
  444. package/esm2020/progress-bar/progress-bar.component.mjs +42 -42
  445. package/esm2020/progress-bar/progress-bar.module.mjs +30 -30
  446. package/esm2020/progress-bar/ptsecurity-mosaic-progress-bar.mjs +4 -4
  447. package/esm2020/progress-bar/public-api.mjs +3 -3
  448. package/esm2020/progress-spinner/index.mjs +2 -2
  449. package/esm2020/progress-spinner/progress-spinner.component.mjs +46 -46
  450. package/esm2020/progress-spinner/progress-spinner.module.mjs +30 -30
  451. package/esm2020/progress-spinner/ptsecurity-mosaic-progress-spinner.mjs +4 -4
  452. package/esm2020/progress-spinner/public-api.mjs +3 -3
  453. package/esm2020/ptsecurity-mosaic.mjs +4 -4
  454. package/esm2020/public-api.mjs +2 -2
  455. package/esm2020/radio/index.mjs +2 -2
  456. package/esm2020/radio/ptsecurity-mosaic-radio.mjs +4 -4
  457. package/esm2020/radio/public-api.mjs +3 -3
  458. package/esm2020/radio/radio.component.mjs +458 -458
  459. package/esm2020/radio/radio.module.mjs +20 -20
  460. package/esm2020/select/index.mjs +2 -2
  461. package/esm2020/select/ptsecurity-mosaic-select.mjs +4 -4
  462. package/esm2020/select/public-api.mjs +4 -4
  463. package/esm2020/select/select-option.directive.mjs +65 -65
  464. package/esm2020/select/select.component.mjs +1117 -1117
  465. package/esm2020/select/select.module.mjs +73 -73
  466. package/esm2020/sidebar/index.mjs +2 -2
  467. package/esm2020/sidebar/ptsecurity-mosaic-sidebar.mjs +4 -4
  468. package/esm2020/sidebar/public-api.mjs +3 -3
  469. package/esm2020/sidebar/sidebar-animations.mjs +23 -23
  470. package/esm2020/sidebar/sidebar.component.mjs +146 -146
  471. package/esm2020/sidebar/sidebar.module.mjs +30 -30
  472. package/esm2020/sidepanel/index.mjs +2 -2
  473. package/esm2020/sidepanel/ptsecurity-mosaic-sidepanel.mjs +4 -4
  474. package/esm2020/sidepanel/public-api.mjs +7 -7
  475. package/esm2020/sidepanel/sidepanel-animations.mjs +26 -26
  476. package/esm2020/sidepanel/sidepanel-config.mjs +26 -26
  477. package/esm2020/sidepanel/sidepanel-container.component.mjs +106 -106
  478. package/esm2020/sidepanel/sidepanel-directives.mjs +159 -159
  479. package/esm2020/sidepanel/sidepanel-ref.mjs +53 -53
  480. package/esm2020/sidepanel/sidepanel.module.mjs +74 -74
  481. package/esm2020/sidepanel/sidepanel.service.mjs +167 -167
  482. package/esm2020/splitter/index.mjs +2 -2
  483. package/esm2020/splitter/ptsecurity-mosaic-splitter.mjs +4 -4
  484. package/esm2020/splitter/public-api.mjs +3 -3
  485. package/esm2020/splitter/splitter.component.mjs +482 -482
  486. package/esm2020/splitter/splitter.module.mjs +40 -40
  487. package/esm2020/table/index.mjs +2 -2
  488. package/esm2020/table/ptsecurity-mosaic-table.mjs +4 -4
  489. package/esm2020/table/public-api.mjs +3 -3
  490. package/esm2020/table/table.component.mjs +16 -16
  491. package/esm2020/table/table.module.mjs +30 -30
  492. package/esm2020/tabs/index.mjs +2 -2
  493. package/esm2020/tabs/paginated-tab-header.mjs +479 -479
  494. package/esm2020/tabs/ptsecurity-mosaic-tabs.mjs +4 -4
  495. package/esm2020/tabs/public-api.mjs +11 -11
  496. package/esm2020/tabs/tab-body.component.mjs +178 -178
  497. package/esm2020/tabs/tab-content.directive.mjs +15 -15
  498. package/esm2020/tabs/tab-group.component.mjs +350 -350
  499. package/esm2020/tabs/tab-header.component.mjs +67 -67
  500. package/esm2020/tabs/tab-label-wrapper.directive.mjs +78 -78
  501. package/esm2020/tabs/tab-label.directive.mjs +17 -17
  502. package/esm2020/tabs/tab-nav-bar/index.mjs +2 -2
  503. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +110 -110
  504. package/esm2020/tabs/tab.component.mjs +133 -133
  505. package/esm2020/tabs/tabs-animations.mjs +24 -24
  506. package/esm2020/tabs/tabs.module.mjs +104 -104
  507. package/esm2020/tags/index.mjs +2 -2
  508. package/esm2020/tags/ptsecurity-mosaic-tags.mjs +4 -4
  509. package/esm2020/tags/public-api.mjs +6 -6
  510. package/esm2020/tags/tag-default-options.mjs +4 -4
  511. package/esm2020/tags/tag-input.mjs +229 -229
  512. package/esm2020/tags/tag-list.component.mjs +722 -722
  513. package/esm2020/tags/tag-text-control.mjs +2 -2
  514. package/esm2020/tags/tag.component.mjs +375 -375
  515. package/esm2020/tags/tag.module.mjs +56 -56
  516. package/esm2020/textarea/index.mjs +2 -2
  517. package/esm2020/textarea/ptsecurity-mosaic-textarea.mjs +4 -4
  518. package/esm2020/textarea/public-api.mjs +3 -3
  519. package/esm2020/textarea/textarea.component.mjs +269 -269
  520. package/esm2020/textarea/textarea.module.mjs +21 -21
  521. package/esm2020/timepicker/index.mjs +2 -2
  522. package/esm2020/timepicker/ptsecurity-mosaic-timepicker.mjs +4 -4
  523. package/esm2020/timepicker/public-api.mjs +4 -4
  524. package/esm2020/timepicker/timepicker.constants.mjs +25 -25
  525. package/esm2020/timepicker/timepicker.directive.mjs +665 -665
  526. package/esm2020/timepicker/timepicker.module.mjs +34 -34
  527. package/esm2020/toggle/index.mjs +2 -2
  528. package/esm2020/toggle/ptsecurity-mosaic-toggle.mjs +4 -4
  529. package/esm2020/toggle/public-api.mjs +3 -3
  530. package/esm2020/toggle/toggle.component.mjs +158 -158
  531. package/esm2020/toggle/toggle.module.mjs +20 -20
  532. package/esm2020/tooltip/index.mjs +2 -2
  533. package/esm2020/tooltip/ptsecurity-mosaic-tooltip.mjs +4 -4
  534. package/esm2020/tooltip/public-api.mjs +3 -3
  535. package/esm2020/tooltip/tooltip.animations.mjs +19 -19
  536. package/esm2020/tooltip/tooltip.component.mjs +295 -295
  537. package/esm2020/tooltip/tooltip.module.mjs +43 -43
  538. package/esm2020/tree/control/base-tree-control.mjs +60 -60
  539. package/esm2020/tree/control/flat-tree-control.mjs +126 -126
  540. package/esm2020/tree/control/nested-tree-control.mjs +41 -41
  541. package/esm2020/tree/control/tree-control.mjs +2 -2
  542. package/esm2020/tree/data-source/flat-data-source.mjs +162 -162
  543. package/esm2020/tree/data-source/nested-data-source.mjs +30 -30
  544. package/esm2020/tree/index.mjs +2 -2
  545. package/esm2020/tree/node.mjs +31 -31
  546. package/esm2020/tree/outlet.mjs +15 -15
  547. package/esm2020/tree/padding.directive.mjs +113 -113
  548. package/esm2020/tree/ptsecurity-mosaic-tree.mjs +4 -4
  549. package/esm2020/tree/public-api.mjs +16 -16
  550. package/esm2020/tree/toggle.mjs +80 -80
  551. package/esm2020/tree/tree-base.mjs +243 -243
  552. package/esm2020/tree/tree-errors.mjs +36 -36
  553. package/esm2020/tree/tree-option.component.mjs +248 -248
  554. package/esm2020/tree/tree-selection.component.mjs +541 -540
  555. package/esm2020/tree/tree.mjs +15 -15
  556. package/esm2020/tree/tree.module.mjs +57 -57
  557. package/esm2020/tree-select/index.mjs +2 -2
  558. package/esm2020/tree-select/ptsecurity-mosaic-tree-select.mjs +4 -4
  559. package/esm2020/tree-select/public-api.mjs +3 -3
  560. package/esm2020/tree-select/tree-select.component.mjs +939 -939
  561. package/esm2020/tree-select/tree-select.module.mjs +47 -47
  562. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs +726 -726
  563. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  564. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs +367 -367
  565. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  566. package/fesm2015/ptsecurity-mosaic-button.mjs +160 -160
  567. package/fesm2015/ptsecurity-mosaic-button.mjs.map +1 -1
  568. package/fesm2015/ptsecurity-mosaic-card.mjs +96 -96
  569. package/fesm2015/ptsecurity-mosaic-card.mjs.map +1 -1
  570. package/fesm2015/ptsecurity-mosaic-checkbox.mjs +348 -348
  571. package/fesm2015/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  572. package/fesm2015/ptsecurity-mosaic-core.mjs +2652 -2652
  573. package/fesm2015/ptsecurity-mosaic-core.mjs.map +1 -1
  574. package/fesm2015/ptsecurity-mosaic-datepicker.mjs +2682 -2682
  575. package/fesm2015/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  576. package/fesm2015/ptsecurity-mosaic-design-tokens.mjs +2432 -2345
  577. package/fesm2015/ptsecurity-mosaic-design-tokens.mjs.map +1 -1
  578. package/fesm2015/ptsecurity-mosaic-divider.mjs +48 -48
  579. package/fesm2015/ptsecurity-mosaic-divider.mjs.map +1 -1
  580. package/fesm2015/ptsecurity-mosaic-dl.mjs +108 -108
  581. package/fesm2015/ptsecurity-mosaic-dl.mjs.map +1 -1
  582. package/fesm2015/ptsecurity-mosaic-dropdown.mjs +1069 -1069
  583. package/fesm2015/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  584. package/fesm2015/ptsecurity-mosaic-form-field.mjs +522 -512
  585. package/fesm2015/ptsecurity-mosaic-form-field.mjs.map +1 -1
  586. package/fesm2015/ptsecurity-mosaic-icon.mjs +73 -73
  587. package/fesm2015/ptsecurity-mosaic-icon.mjs.map +1 -1
  588. package/fesm2015/ptsecurity-mosaic-input.mjs +979 -979
  589. package/fesm2015/ptsecurity-mosaic-input.mjs.map +1 -1
  590. package/fesm2015/ptsecurity-mosaic-link.mjs +121 -121
  591. package/fesm2015/ptsecurity-mosaic-link.mjs.map +1 -1
  592. package/fesm2015/ptsecurity-mosaic-list.mjs +765 -762
  593. package/fesm2015/ptsecurity-mosaic-list.mjs.map +1 -1
  594. package/fesm2015/ptsecurity-mosaic-loader-overlay.mjs +155 -0
  595. package/fesm2015/ptsecurity-mosaic-loader-overlay.mjs.map +1 -0
  596. package/fesm2015/ptsecurity-mosaic-modal.mjs +833 -824
  597. package/fesm2015/ptsecurity-mosaic-modal.mjs.map +1 -1
  598. package/fesm2015/ptsecurity-mosaic-navbar.mjs +996 -994
  599. package/fesm2015/ptsecurity-mosaic-navbar.mjs.map +1 -1
  600. package/fesm2015/ptsecurity-mosaic-popover.mjs +364 -364
  601. package/fesm2015/ptsecurity-mosaic-popover.mjs.map +1 -1
  602. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs +61 -61
  603. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  604. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs +65 -65
  605. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  606. package/fesm2015/ptsecurity-mosaic-radio.mjs +464 -464
  607. package/fesm2015/ptsecurity-mosaic-radio.mjs.map +1 -1
  608. package/fesm2015/ptsecurity-mosaic-select.mjs +1213 -1213
  609. package/fesm2015/ptsecurity-mosaic-select.mjs.map +1 -1
  610. package/fesm2015/ptsecurity-mosaic-sidebar.mjs +185 -185
  611. package/fesm2015/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  612. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs +555 -555
  613. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  614. package/fesm2015/ptsecurity-mosaic-splitter.mjs +511 -511
  615. package/fesm2015/ptsecurity-mosaic-splitter.mjs.map +1 -1
  616. package/fesm2015/ptsecurity-mosaic-table.mjs +36 -36
  617. package/fesm2015/ptsecurity-mosaic-table.mjs.map +1 -1
  618. package/fesm2015/ptsecurity-mosaic-tabs.mjs +1460 -1460
  619. package/fesm2015/ptsecurity-mosaic-tabs.mjs.map +1 -1
  620. package/fesm2015/ptsecurity-mosaic-tags.mjs +1342 -1342
  621. package/fesm2015/ptsecurity-mosaic-tags.mjs.map +1 -1
  622. package/fesm2015/ptsecurity-mosaic-textarea.mjs +274 -274
  623. package/fesm2015/ptsecurity-mosaic-textarea.mjs.map +1 -1
  624. package/fesm2015/ptsecurity-mosaic-timepicker.mjs +703 -703
  625. package/fesm2015/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  626. package/fesm2015/ptsecurity-mosaic-toggle.mjs +163 -163
  627. package/fesm2015/ptsecurity-mosaic-toggle.mjs.map +1 -1
  628. package/fesm2015/ptsecurity-mosaic-tooltip.mjs +344 -344
  629. package/fesm2015/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  630. package/fesm2015/ptsecurity-mosaic-tree-select.mjs +954 -954
  631. package/fesm2015/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  632. package/fesm2015/ptsecurity-mosaic-tree.mjs +1689 -1688
  633. package/fesm2015/ptsecurity-mosaic-tree.mjs.map +1 -1
  634. package/fesm2015/ptsecurity-mosaic.mjs +2 -2
  635. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs +722 -722
  636. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  637. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs +365 -365
  638. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  639. package/fesm2020/ptsecurity-mosaic-button.mjs +160 -160
  640. package/fesm2020/ptsecurity-mosaic-button.mjs.map +1 -1
  641. package/fesm2020/ptsecurity-mosaic-card.mjs +96 -96
  642. package/fesm2020/ptsecurity-mosaic-card.mjs.map +1 -1
  643. package/fesm2020/ptsecurity-mosaic-checkbox.mjs +346 -346
  644. package/fesm2020/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  645. package/fesm2020/ptsecurity-mosaic-core.mjs +2681 -2681
  646. package/fesm2020/ptsecurity-mosaic-core.mjs.map +1 -1
  647. package/fesm2020/ptsecurity-mosaic-datepicker.mjs +2667 -2667
  648. package/fesm2020/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  649. package/fesm2020/ptsecurity-mosaic-design-tokens.mjs +2432 -2345
  650. package/fesm2020/ptsecurity-mosaic-design-tokens.mjs.map +1 -1
  651. package/fesm2020/ptsecurity-mosaic-divider.mjs +48 -48
  652. package/fesm2020/ptsecurity-mosaic-divider.mjs.map +1 -1
  653. package/fesm2020/ptsecurity-mosaic-dl.mjs +108 -108
  654. package/fesm2020/ptsecurity-mosaic-dl.mjs.map +1 -1
  655. package/fesm2020/ptsecurity-mosaic-dropdown.mjs +1056 -1056
  656. package/fesm2020/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  657. package/fesm2020/ptsecurity-mosaic-form-field.mjs +507 -497
  658. package/fesm2020/ptsecurity-mosaic-form-field.mjs.map +1 -1
  659. package/fesm2020/ptsecurity-mosaic-icon.mjs +71 -71
  660. package/fesm2020/ptsecurity-mosaic-icon.mjs.map +1 -1
  661. package/fesm2020/ptsecurity-mosaic-input.mjs +968 -968
  662. package/fesm2020/ptsecurity-mosaic-input.mjs.map +1 -1
  663. package/fesm2020/ptsecurity-mosaic-link.mjs +120 -120
  664. package/fesm2020/ptsecurity-mosaic-link.mjs.map +1 -1
  665. package/fesm2020/ptsecurity-mosaic-list.mjs +758 -755
  666. package/fesm2020/ptsecurity-mosaic-list.mjs.map +1 -1
  667. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs +153 -0
  668. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs.map +1 -0
  669. package/fesm2020/ptsecurity-mosaic-modal.mjs +828 -820
  670. package/fesm2020/ptsecurity-mosaic-modal.mjs.map +1 -1
  671. package/fesm2020/ptsecurity-mosaic-navbar.mjs +980 -978
  672. package/fesm2020/ptsecurity-mosaic-navbar.mjs.map +1 -1
  673. package/fesm2020/ptsecurity-mosaic-popover.mjs +360 -360
  674. package/fesm2020/ptsecurity-mosaic-popover.mjs.map +1 -1
  675. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs +61 -61
  676. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  677. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs +65 -65
  678. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  679. package/fesm2020/ptsecurity-mosaic-radio.mjs +462 -462
  680. package/fesm2020/ptsecurity-mosaic-radio.mjs.map +1 -1
  681. package/fesm2020/ptsecurity-mosaic-select.mjs +1208 -1208
  682. package/fesm2020/ptsecurity-mosaic-select.mjs.map +1 -1
  683. package/fesm2020/ptsecurity-mosaic-sidebar.mjs +185 -185
  684. package/fesm2020/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  685. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs +552 -552
  686. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  687. package/fesm2020/ptsecurity-mosaic-splitter.mjs +511 -511
  688. package/fesm2020/ptsecurity-mosaic-splitter.mjs.map +1 -1
  689. package/fesm2020/ptsecurity-mosaic-table.mjs +36 -36
  690. package/fesm2020/ptsecurity-mosaic-table.mjs.map +1 -1
  691. package/fesm2020/ptsecurity-mosaic-tabs.mjs +1445 -1445
  692. package/fesm2020/ptsecurity-mosaic-tabs.mjs.map +1 -1
  693. package/fesm2020/ptsecurity-mosaic-tags.mjs +1335 -1335
  694. package/fesm2020/ptsecurity-mosaic-tags.mjs.map +1 -1
  695. package/fesm2020/ptsecurity-mosaic-textarea.mjs +272 -272
  696. package/fesm2020/ptsecurity-mosaic-textarea.mjs.map +1 -1
  697. package/fesm2020/ptsecurity-mosaic-timepicker.mjs +700 -700
  698. package/fesm2020/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  699. package/fesm2020/ptsecurity-mosaic-toggle.mjs +163 -163
  700. package/fesm2020/ptsecurity-mosaic-toggle.mjs.map +1 -1
  701. package/fesm2020/ptsecurity-mosaic-tooltip.mjs +336 -336
  702. package/fesm2020/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  703. package/fesm2020/ptsecurity-mosaic-tree-select.mjs +951 -951
  704. package/fesm2020/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  705. package/fesm2020/ptsecurity-mosaic-tree.mjs +1676 -1675
  706. package/fesm2020/ptsecurity-mosaic-tree.mjs.map +1 -1
  707. package/fesm2020/ptsecurity-mosaic.mjs +2 -2
  708. package/form-field/cleaner.d.ts +7 -7
  709. package/form-field/form-field-control.d.ts +37 -37
  710. package/form-field/form-field-errors.d.ts +2 -2
  711. package/form-field/form-field.d.ts +69 -69
  712. package/form-field/form-field.module.d.ts +15 -15
  713. package/form-field/hint.d.ts +14 -6
  714. package/form-field/index.d.ts +1 -1
  715. package/form-field/password-hint.d.ts +40 -40
  716. package/form-field/prefix.d.ts +5 -5
  717. package/form-field/ptsecurity-mosaic-form-field.d.ts +5 -5
  718. package/form-field/public-api.d.ts +10 -10
  719. package/form-field/stepper.d.ts +11 -11
  720. package/form-field/suffix.d.ts +5 -5
  721. package/icon/icon.component.d.ts +18 -18
  722. package/icon/icon.module.d.ts +10 -10
  723. package/icon/index.d.ts +1 -1
  724. package/icon/ptsecurity-mosaic-icon.d.ts +5 -5
  725. package/icon/public-api.d.ts +2 -2
  726. package/index.d.ts +1 -1
  727. package/input/index.d.ts +1 -1
  728. package/input/input-errors.d.ts +1 -1
  729. package/input/input-number-validators.d.ts +39 -39
  730. package/input/input-number.d.ts +33 -33
  731. package/input/input-password.d.ts +123 -123
  732. package/input/input-value-accessor.d.ts +4 -4
  733. package/input/input.d.ts +116 -116
  734. package/input/input.module.d.ts +14 -14
  735. package/input/ptsecurity-mosaic-input.d.ts +5 -5
  736. package/input/public-api.d.ts +6 -6
  737. package/link/index.d.ts +1 -1
  738. package/link/link.component.d.ts +38 -38
  739. package/link/link.module.d.ts +9 -9
  740. package/link/ptsecurity-mosaic-link.d.ts +5 -5
  741. package/link/public-api.d.ts +2 -2
  742. package/list/index.d.ts +1 -1
  743. package/list/list-selection.component.d.ts +168 -168
  744. package/list/list.component.d.ts +18 -18
  745. package/list/list.module.d.ts +11 -11
  746. package/list/ptsecurity-mosaic-list.d.ts +5 -5
  747. package/list/public-api.d.ts +3 -3
  748. package/{toggle → loader-overlay}/README.md +0 -0
  749. package/loader-overlay/index.d.ts +1 -0
  750. package/loader-overlay/loader-overlay.component.d.ts +33 -0
  751. package/loader-overlay/loader-overlay.module.d.ts +11 -0
  752. package/loader-overlay/package.json +10 -0
  753. package/loader-overlay/ptsecurity-mosaic-loader-overlay.d.ts +5 -0
  754. package/loader-overlay/public-api.d.ts +2 -0
  755. package/modal/README.md +33 -33
  756. package/modal/css-unit.pipe.d.ts +7 -7
  757. package/modal/index.d.ts +1 -1
  758. package/modal/modal-control.service.d.ts +20 -20
  759. package/modal/modal-ref.class.d.ts +36 -36
  760. package/modal/modal-util.d.ts +12 -12
  761. package/modal/modal.component.d.ts +128 -126
  762. package/modal/modal.directive.d.ts +17 -17
  763. package/modal/modal.module.d.ts +14 -14
  764. package/modal/modal.service.d.ts +33 -33
  765. package/modal/modal.type.d.ts +60 -59
  766. package/modal/ptsecurity-mosaic-modal.d.ts +5 -5
  767. package/modal/public-api.d.ts +6 -6
  768. package/navbar/README.md +41 -41
  769. package/navbar/index.d.ts +1 -1
  770. package/navbar/navbar-item.component.d.ts +161 -161
  771. package/navbar/navbar.component.d.ts +58 -58
  772. package/navbar/navbar.module.d.ts +14 -14
  773. package/navbar/ptsecurity-mosaic-navbar.d.ts +5 -5
  774. package/navbar/public-api.d.ts +4 -4
  775. package/navbar/vertical-navbar.animation.d.ts +2 -2
  776. package/navbar/vertical-navbar.component.d.ts +23 -23
  777. package/package.json +12 -4
  778. package/popover/README.md +32 -32
  779. package/popover/index.d.ts +1 -1
  780. package/popover/popover-animations.d.ts +4 -4
  781. package/popover/popover-confirm.component.d.ts +33 -33
  782. package/popover/popover.component.d.ts +74 -74
  783. package/popover/popover.module.d.ts +12 -12
  784. package/popover/ptsecurity-mosaic-popover.d.ts +5 -5
  785. package/popover/public-api.d.ts +4 -4
  786. package/prebuilt-themes/dark-theme.css +1 -1
  787. package/prebuilt-themes/default-theme.css +1 -1
  788. package/progress-bar/index.d.ts +1 -1
  789. package/progress-bar/progress-bar.component.d.ts +18 -18
  790. package/progress-bar/progress-bar.module.d.ts +9 -9
  791. package/progress-bar/ptsecurity-mosaic-progress-bar.d.ts +5 -5
  792. package/progress-bar/public-api.d.ts +2 -2
  793. package/progress-spinner/index.d.ts +1 -1
  794. package/progress-spinner/progress-spinner.component.d.ts +19 -19
  795. package/progress-spinner/progress-spinner.module.d.ts +9 -9
  796. package/progress-spinner/ptsecurity-mosaic-progress-spinner.d.ts +5 -5
  797. package/progress-spinner/public-api.d.ts +2 -2
  798. package/ptsecurity-mosaic.d.ts +5 -5
  799. package/public-api.d.ts +1 -1
  800. package/radio/index.d.ts +1 -1
  801. package/radio/ptsecurity-mosaic-radio.d.ts +5 -5
  802. package/radio/public-api.d.ts +2 -2
  803. package/radio/radio.component.d.ts +207 -207
  804. package/radio/radio.module.d.ts +10 -10
  805. package/schematics/README.md +35 -35
  806. package/select/index.d.ts +1 -1
  807. package/select/ptsecurity-mosaic-select.d.ts +5 -5
  808. package/select/public-api.d.ts +3 -3
  809. package/select/select-option.directive.d.ts +20 -20
  810. package/select/select.component.d.ts +310 -310
  811. package/select/select.module.d.ts +15 -15
  812. package/sidebar/index.d.ts +1 -1
  813. package/sidebar/ptsecurity-mosaic-sidebar.d.ts +5 -5
  814. package/sidebar/public-api.d.ts +2 -2
  815. package/sidebar/sidebar-animations.d.ts +8 -8
  816. package/sidebar/sidebar.component.d.ts +53 -53
  817. package/sidebar/sidebar.module.d.ts +8 -8
  818. package/sidepanel/index.d.ts +1 -1
  819. package/sidepanel/ptsecurity-mosaic-sidepanel.d.ts +5 -5
  820. package/sidepanel/public-api.d.ts +6 -6
  821. package/sidepanel/sidepanel-animations.d.ts +14 -14
  822. package/sidepanel/sidepanel-config.d.ts +25 -25
  823. package/sidepanel/sidepanel-container.component.d.ts +45 -45
  824. package/sidepanel/sidepanel-directives.d.ts +50 -50
  825. package/sidepanel/sidepanel-ref.d.ts +24 -24
  826. package/sidepanel/sidepanel.module.d.ts +15 -15
  827. package/sidepanel/sidepanel.service.d.ts +57 -57
  828. package/splitter/index.d.ts +1 -1
  829. package/splitter/ptsecurity-mosaic-splitter.d.ts +5 -5
  830. package/splitter/public-api.d.ts +2 -2
  831. package/splitter/splitter.component.d.ts +130 -130
  832. package/splitter/splitter.module.d.ts +9 -9
  833. package/table/index.d.ts +1 -1
  834. package/table/ptsecurity-mosaic-table.d.ts +5 -5
  835. package/table/public-api.d.ts +2 -2
  836. package/table/table.component.d.ts +5 -5
  837. package/table/table.module.d.ts +10 -10
  838. package/tabs/index.d.ts +1 -1
  839. package/tabs/paginated-tab-header.d.ts +179 -179
  840. package/tabs/ptsecurity-mosaic-tabs.d.ts +5 -5
  841. package/tabs/public-api.d.ts +10 -10
  842. package/tabs/tab-body.component.d.ts +95 -95
  843. package/tabs/tab-content.directive.d.ts +9 -9
  844. package/tabs/tab-group.component.d.ts +133 -133
  845. package/tabs/tab-header.component.d.ts +35 -35
  846. package/tabs/tab-label-wrapper.directive.d.ts +30 -30
  847. package/tabs/tab-label.directive.d.ts +9 -9
  848. package/tabs/tab-nav-bar/index.d.ts +1 -1
  849. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +38 -38
  850. package/tabs/tab.component.d.ts +66 -66
  851. package/tabs/tabs-animations.d.ts +4 -4
  852. package/tabs/tabs.module.d.ts +20 -20
  853. package/tags/index.d.ts +1 -1
  854. package/tags/ptsecurity-mosaic-tags.d.ts +5 -5
  855. package/tags/public-api.d.ts +5 -5
  856. package/tags/tag-default-options.d.ts +8 -8
  857. package/tags/tag-input.d.ts +77 -77
  858. package/tags/tag-list.component.d.ts +240 -240
  859. package/tags/tag-text-control.d.ts +10 -10
  860. package/tags/tag.component.d.ts +135 -135
  861. package/tags/tag.module.d.ts +11 -11
  862. package/textarea/index.d.ts +1 -1
  863. package/textarea/ptsecurity-mosaic-textarea.d.ts +5 -5
  864. package/textarea/public-api.d.ts +2 -2
  865. package/textarea/textarea.component.d.ts +111 -111
  866. package/textarea/textarea.module.d.ts +11 -11
  867. package/timepicker/index.d.ts +1 -1
  868. package/timepicker/ptsecurity-mosaic-timepicker.d.ts +5 -5
  869. package/timepicker/public-api.d.ts +3 -3
  870. package/timepicker/timepicker.constants.d.ts +20 -20
  871. package/timepicker/timepicker.directive.d.ts +146 -146
  872. package/timepicker/timepicker.module.d.ts +11 -11
  873. package/toggle/index.d.ts +1 -1
  874. package/toggle/ptsecurity-mosaic-toggle.d.ts +5 -5
  875. package/toggle/public-api.d.ts +2 -2
  876. package/toggle/toggle.component.d.ts +54 -54
  877. package/toggle/toggle.module.d.ts +10 -10
  878. package/tooltip/index.d.ts +1 -1
  879. package/tooltip/ptsecurity-mosaic-tooltip.d.ts +5 -5
  880. package/tooltip/public-api.d.ts +2 -2
  881. package/tooltip/tooltip.animations.d.ts +8 -8
  882. package/tooltip/tooltip.component.d.ts +91 -91
  883. package/tooltip/tooltip.module.d.ts +9 -9
  884. package/tree/control/base-tree-control.d.ts +40 -40
  885. package/tree/control/flat-tree-control.d.ts +52 -52
  886. package/tree/control/nested-tree-control.d.ts +19 -19
  887. package/tree/control/tree-control.d.ts +44 -44
  888. package/tree/data-source/flat-data-source.d.ts +80 -80
  889. package/tree/data-source/nested-data-source.d.ts +15 -15
  890. package/tree/index.d.ts +1 -1
  891. package/tree/node.d.ts +34 -34
  892. package/tree/outlet.d.ts +9 -9
  893. package/tree/padding.directive.d.ts +47 -47
  894. package/tree/ptsecurity-mosaic-tree.d.ts +5 -5
  895. package/tree/public-api.d.ts +15 -15
  896. package/tree/toggle.d.ts +28 -28
  897. package/tree/tree-base.d.ts +97 -97
  898. package/tree/tree-errors.d.ts +25 -25
  899. package/tree/tree-option.component.d.ts +72 -72
  900. package/tree/tree-selection.component.d.ts +132 -132
  901. package/tree/tree.d.ts +6 -6
  902. package/tree/tree.module.d.ts +16 -16
  903. package/tree-select/index.d.ts +1 -1
  904. package/tree-select/ptsecurity-mosaic-tree-select.d.ts +5 -5
  905. package/tree-select/public-api.d.ts +2 -2
  906. package/tree-select/tree-select.component.d.ts +277 -277
  907. package/tree-select/tree-select.module.d.ts +14 -14
@@ -17,575 +17,575 @@ import * as i3$1 from '@ptsecurity/mosaic/icon';
17
17
  import { McIconModule } from '@ptsecurity/mosaic/icon';
18
18
  import { McButtonModule } from '@ptsecurity/mosaic/button';
19
19
 
20
- /** Injection token that can be used to access the data that was passed in to a sidepanel. */
21
- const MC_SIDEPANEL_DATA = new InjectionToken('McSidepanelData');
22
- var McSidepanelPosition;
23
- (function (McSidepanelPosition) {
24
- McSidepanelPosition["Right"] = "right";
25
- McSidepanelPosition["Left"] = "left";
26
- McSidepanelPosition["Top"] = "top";
27
- McSidepanelPosition["Bottom"] = "bottom";
28
- })(McSidepanelPosition || (McSidepanelPosition = {}));
29
- class McSidepanelConfig {
30
- constructor() {
31
- /** Data being injected into the child component. */
32
- this.data = null;
33
- this.position = McSidepanelPosition.Right;
34
- /** Whether the sidepanel has a backdrop. */
35
- this.hasBackdrop = true;
36
- /** When we open multiple sidepanels, backdrop appears only once, except cases then this flag is true. */
37
- this.requiredBackdrop = false;
38
- /** Whether the user can use escape or clicking outside to close the sidepanel. */
39
- this.disableClose = false;
40
- /** Custom class for the overlay pane. */
41
- this.overlayPanelClass = '';
42
- }
20
+ /** Injection token that can be used to access the data that was passed in to a sidepanel. */
21
+ const MC_SIDEPANEL_DATA = new InjectionToken('McSidepanelData');
22
+ var McSidepanelPosition;
23
+ (function (McSidepanelPosition) {
24
+ McSidepanelPosition["Right"] = "right";
25
+ McSidepanelPosition["Left"] = "left";
26
+ McSidepanelPosition["Top"] = "top";
27
+ McSidepanelPosition["Bottom"] = "bottom";
28
+ })(McSidepanelPosition || (McSidepanelPosition = {}));
29
+ class McSidepanelConfig {
30
+ constructor() {
31
+ /** Data being injected into the child component. */
32
+ this.data = null;
33
+ this.position = McSidepanelPosition.Right;
34
+ /** Whether the sidepanel has a backdrop. */
35
+ this.hasBackdrop = true;
36
+ /** When we open multiple sidepanels, backdrop appears only once, except cases then this flag is true. */
37
+ this.requiredBackdrop = false;
38
+ /** Whether the user can use escape or clicking outside to close the sidepanel. */
39
+ this.disableClose = false;
40
+ /** Custom class for the overlay pane. */
41
+ this.overlayPanelClass = '';
42
+ }
43
43
  }
44
44
 
45
- var McSidepanelAnimationState;
46
- (function (McSidepanelAnimationState) {
47
- McSidepanelAnimationState["Void"] = "void";
48
- McSidepanelAnimationState["Visible"] = "visible";
49
- McSidepanelAnimationState["Hidden"] = "hidden";
50
- })(McSidepanelAnimationState || (McSidepanelAnimationState = {}));
51
- // TODO Find a way to use dynamic keys and avoid error "Expression form not supported."
52
- // tslint:disable-next-line
53
- const mcSidepanelTransformAnimation = {
54
- right: { in: 'translateX(100%)', out: 'translateX(0%)' },
55
- left: { in: 'translateX(-100%)', out: 'translateX(0%)' },
56
- top: { in: 'translateY(-100%)', out: 'translateY(0%)' },
57
- bottom: { in: 'translateY(100%)', out: 'translateY(0%)' }
58
- };
59
- const mcSidepanelAnimations = {
60
- sidepanelState: trigger('state', [
61
- state('hidden', style({ transform: '{{transformIn}}' }), { params: { transformIn: mcSidepanelTransformAnimation[McSidepanelPosition.Right].in } }),
62
- state('visible', style({ transform: '{{transformOut}}' }), { params: { transformOut: mcSidepanelTransformAnimation[McSidepanelPosition.Right].out } }),
63
- transition('visible => void, visible => hidden', animate(`200ms ${AnimationCurves.AccelerationCurve}`)),
64
- transition('void => visible', animate(`200ms ${AnimationCurves.DecelerationCurve}`))
65
- ])
45
+ var McSidepanelAnimationState;
46
+ (function (McSidepanelAnimationState) {
47
+ McSidepanelAnimationState["Void"] = "void";
48
+ McSidepanelAnimationState["Visible"] = "visible";
49
+ McSidepanelAnimationState["Hidden"] = "hidden";
50
+ })(McSidepanelAnimationState || (McSidepanelAnimationState = {}));
51
+ // TODO Find a way to use dynamic keys and avoid error "Expression form not supported."
52
+ // tslint:disable-next-line
53
+ const mcSidepanelTransformAnimation = {
54
+ right: { in: 'translateX(100%)', out: 'translateX(0%)' },
55
+ left: { in: 'translateX(-100%)', out: 'translateX(0%)' },
56
+ top: { in: 'translateY(-100%)', out: 'translateY(0%)' },
57
+ bottom: { in: 'translateY(100%)', out: 'translateY(0%)' }
58
+ };
59
+ const mcSidepanelAnimations = {
60
+ sidepanelState: trigger('state', [
61
+ state('hidden', style({ transform: '{{transformIn}}' }), { params: { transformIn: mcSidepanelTransformAnimation[McSidepanelPosition.Right].in } }),
62
+ state('visible', style({ transform: '{{transformOut}}' }), { params: { transformOut: mcSidepanelTransformAnimation[McSidepanelPosition.Right].out } }),
63
+ transition('visible => void, visible => hidden', animate(`200ms ${AnimationCurves.AccelerationCurve}`)),
64
+ transition('void => visible', animate(`200ms ${AnimationCurves.DecelerationCurve}`))
65
+ ])
66
66
  };
67
67
 
68
- // Counter for unique sidepanel ids.
69
- let uniqueId = 0;
70
- class McSidepanelRef {
71
- constructor(containerInstance, overlayRef, config) {
72
- this.containerInstance = containerInstance;
73
- this.overlayRef = overlayRef;
74
- this.config = config;
75
- /** Subject for notifying the user that the sidepanel has been closed and dismissed. */
76
- this.afterClosed$ = new Subject();
77
- /** Subject for notifying the user that the sidepanel has opened and appeared. */
78
- this.afterOpened$ = new Subject();
79
- this.id = this.config.id || `mc-sidepanel-${uniqueId++}`;
80
- this.containerInstance.id = this.id;
81
- // Emit when opening animation completes
82
- containerInstance.animationStateChanged.pipe(filter((event) => event.phaseName === 'done' && event.toState === McSidepanelAnimationState.Visible), take(1)).subscribe(() => {
83
- this.afterOpened$.next();
84
- this.afterOpened$.complete();
85
- });
86
- // Dispose overlay when closing animation is complete
87
- containerInstance.animationStateChanged.pipe(filter((event) => event.phaseName === 'done' && event.toState === McSidepanelAnimationState.Hidden), take(1)).subscribe(() => {
88
- overlayRef.dispose();
89
- this.afterClosed$.next(this.result);
90
- this.afterClosed$.complete();
91
- });
92
- if (!containerInstance.sidepanelConfig.disableClose) {
93
- merge(overlayRef.backdropClick(), overlayRef.keydownEvents().pipe(
94
- // tslint:disable:deprecation
95
- // keyCode is deprecated, but IE11 and Edge don't support code property, which we need use instead
96
- filter((event) => event.keyCode === ESCAPE))).subscribe(() => this.close());
97
- }
98
- }
99
- close(result) {
100
- if (!this.afterClosed$.closed) {
101
- // Transition the backdrop in parallel to the sidepanel.
102
- this.containerInstance.animationStateChanged.pipe(filter((event) => event.phaseName === 'done'), take(1)).subscribe(() => this.overlayRef.detachBackdrop());
103
- this.result = result;
104
- this.containerInstance.exit();
105
- }
106
- }
107
- /** Gets an observable that is notified when the sidepanel is finished closing. */
108
- afterClosed() {
109
- return this.afterClosed$.asObservable();
110
- }
111
- /** Gets an observable that is notified when the sidepanel has opened and appeared. */
112
- afterOpened() {
113
- return this.afterOpened$.asObservable();
114
- }
68
+ // Counter for unique sidepanel ids.
69
+ let uniqueId = 0;
70
+ class McSidepanelRef {
71
+ constructor(containerInstance, overlayRef, config) {
72
+ this.containerInstance = containerInstance;
73
+ this.overlayRef = overlayRef;
74
+ this.config = config;
75
+ /** Subject for notifying the user that the sidepanel has been closed and dismissed. */
76
+ this.afterClosed$ = new Subject();
77
+ /** Subject for notifying the user that the sidepanel has opened and appeared. */
78
+ this.afterOpened$ = new Subject();
79
+ this.id = this.config.id || `mc-sidepanel-${uniqueId++}`;
80
+ this.containerInstance.id = this.id;
81
+ // Emit when opening animation completes
82
+ containerInstance.animationStateChanged.pipe(filter((event) => event.phaseName === 'done' && event.toState === McSidepanelAnimationState.Visible), take(1)).subscribe(() => {
83
+ this.afterOpened$.next();
84
+ this.afterOpened$.complete();
85
+ });
86
+ // Dispose overlay when closing animation is complete
87
+ containerInstance.animationStateChanged.pipe(filter((event) => event.phaseName === 'done' && event.toState === McSidepanelAnimationState.Hidden), take(1)).subscribe(() => {
88
+ overlayRef.dispose();
89
+ this.afterClosed$.next(this.result);
90
+ this.afterClosed$.complete();
91
+ });
92
+ if (!containerInstance.sidepanelConfig.disableClose) {
93
+ merge(overlayRef.backdropClick(), overlayRef.keydownEvents().pipe(
94
+ // tslint:disable:deprecation
95
+ // keyCode is deprecated, but IE11 and Edge don't support code property, which we need use instead
96
+ filter((event) => event.keyCode === ESCAPE))).subscribe(() => this.close());
97
+ }
98
+ }
99
+ close(result) {
100
+ if (!this.afterClosed$.closed) {
101
+ // Transition the backdrop in parallel to the sidepanel.
102
+ this.containerInstance.animationStateChanged.pipe(filter((event) => event.phaseName === 'done'), take(1)).subscribe(() => this.overlayRef.detachBackdrop());
103
+ this.result = result;
104
+ this.containerInstance.exit();
105
+ }
106
+ }
107
+ /** Gets an observable that is notified when the sidepanel is finished closing. */
108
+ afterClosed() {
109
+ return this.afterClosed$.asObservable();
110
+ }
111
+ /** Gets an observable that is notified when the sidepanel has opened and appeared. */
112
+ afterOpened() {
113
+ return this.afterOpened$.asObservable();
114
+ }
115
115
  }
116
116
 
117
- const MC_SIDEPANEL_WITH_INDENT = new InjectionToken('mc-sidepanel-with-indent');
118
- const MC_SIDEPANEL_WITH_SHADOW = new InjectionToken('mc-sidepanel-with-shadow');
119
- class McSidepanelContainerComponent extends BasePortalOutlet {
120
- constructor(elementRef, changeDetectorRef, sidepanelConfig, withIndent, withShadow) {
121
- super();
122
- this.elementRef = elementRef;
123
- this.changeDetectorRef = changeDetectorRef;
124
- this.sidepanelConfig = sidepanelConfig;
125
- this.withIndent = withIndent;
126
- this.withShadow = withShadow;
127
- /** The state of the sidepanel animations. */
128
- this.animationState = McSidepanelAnimationState.Void;
129
- /** Emits whenever the state of the animation changes. */
130
- this.animationStateChanged = new EventEmitter();
131
- }
132
- ngOnDestroy() {
133
- this.destroyed = true;
134
- }
135
- /** Attach a component portal as content to this sidepanel container. */
136
- attachComponentPortal(portal) {
137
- this.validatePortalAttached();
138
- this.setAnimation();
139
- this.setPanelClass();
140
- return this.portalOutlet.attachComponentPortal(portal);
141
- }
142
- /** Attach a template portal as content to this sidepanel container. */
143
- attachTemplatePortal(portal) {
144
- this.validatePortalAttached();
145
- this.setAnimation();
146
- this.setPanelClass();
147
- return this.portalOutlet.attachTemplatePortal(portal);
148
- }
149
- /** Begin animation of the sidepanel entrance into view. */
150
- enter() {
151
- if (this.destroyed) {
152
- return;
153
- }
154
- this.animationState = McSidepanelAnimationState.Visible;
155
- this.changeDetectorRef.detectChanges();
156
- }
157
- /** Begin animation of the sidepanel exiting from view. */
158
- exit() {
159
- if (this.destroyed) {
160
- return;
161
- }
162
- this.animationState = McSidepanelAnimationState.Hidden;
163
- this.changeDetectorRef.markForCheck();
164
- }
165
- onAnimation(event) {
166
- this.animationStateChanged.emit(event);
167
- }
168
- setAnimation() {
169
- const position = this.sidepanelConfig.position;
170
- this.animationTransform = {
171
- transformIn: mcSidepanelTransformAnimation[position].in,
172
- transformOut: mcSidepanelTransformAnimation[position].out
173
- };
174
- }
175
- setPanelClass() {
176
- const element = this.elementRef.nativeElement;
177
- const position = this.sidepanelConfig.position;
178
- element.classList.add(`mc-sidepanel-container_${position}`);
179
- }
180
- validatePortalAttached() {
181
- if (this.portalOutlet.hasAttached()) {
182
- throw Error('Attempting to attach sidepanel content after content is already attached');
183
- }
184
- }
185
- }
186
- /** @nocollapse */ /** @nocollapse */ McSidepanelContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelContainerComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: McSidepanelConfig }, { token: MC_SIDEPANEL_WITH_INDENT }, { token: MC_SIDEPANEL_WITH_SHADOW }], target: i0.ɵɵFactoryTarget.Component });
187
- /** @nocollapse */ /** @nocollapse */ McSidepanelContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelContainerComponent, selector: "mc-sidepanel-container", host: { listeners: { "@state.start": "onAnimation($event)", "@state.done": "onAnimation($event)" }, properties: { "class.mc-sidepanel_nested": "withIndent", "class.mc-sidepanel-container_shadowed": "withShadow", "attr.id": "id", "attr.tabindex": "-1", "@state": "{\n value: animationState,\n params: animationTransform\n }" }, classAttribute: "mc-sidepanel-container" }, viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"mc-sidepanel-wrapper\">\r\n\r\n <div *ngIf=\"withIndent\" class=\"mc-sidepanel-indent\" (click)=\"exit()\"></div>\r\n\r\n <div class=\"mc-sidepanel-content\" cdkTrapFocus cdkTrapFocusAutoCapture>\r\n <ng-template cdkPortalOutlet></ng-template>\r\n </div>\r\n</div>\r\n", styles: [".mc-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mc-sidepanel-container{outline:none;display:flex;flex:1;position:fixed;min-height:0}.mc-sidepanel-container .flex{min-height:0}.mc-sidepanel-container_left,.mc-sidepanel-container_right{width:33%;min-width:400px;height:100%;top:0}.mc-sidepanel-container_left .mc-sidepanel-indent,.mc-sidepanel-container_right .mc-sidepanel-indent{width:16px;height:100%}.mc-sidepanel-container_right{right:0;transform:translate(100%)}.mc-sidepanel-container_right .mc-sidepanel-wrapper{flex-direction:row}.mc-sidepanel-container_left{left:0;transform:translate(-100%)}.mc-sidepanel-container_left .mc-sidepanel-wrapper{flex-direction:row-reverse}.mc-sidepanel-container_top,.mc-sidepanel-container_bottom{flex-direction:column;height:33%;min-height:400px;width:100%;left:0}.mc-sidepanel-container_top .mc-sidepanel-indent,.mc-sidepanel-container_bottom .mc-sidepanel-indent{height:16px;width:100%}.mc-sidepanel-container_top{top:0;transform:translateY(-100%)}.mc-sidepanel-container_top .mc-sidepanel-wrapper{flex-direction:column-reverse}.mc-sidepanel-container_bottom{bottom:0;transform:translateY(100%)}.mc-sidepanel-container_bottom .mc-sidepanel-wrapper{flex-direction:column}.mc-sidepanel-wrapper{display:flex;flex:1;min-height:0;width:100%}.mc-sidepanel-indent{display:flex;flex:0 0 auto}.mc-sidepanel-indent .mc-sidepanel-close{width:100%;height:100%;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;background:transparent;padding:0}.mc-sidepanel-content{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;width:100%}.mc-sidepanel-header{display:flex;align-items:center;justify-content:space-between;flex-flow:row nowrap;flex:0 0 auto;height:var(--mc-sidepanel-header-size-height, 56px);padding:var(--mc-sidepanel-header-size-padding, 0 16px)}.mc-sidepanel-header .mc-sidepanel-close{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;background:transparent;padding:var(--mc-sidepanel-header-size-close-padding, 0 0 0 8px)}.mc-sidepanel-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mc-sidepanel-body{overflow-y:auto;display:flex;flex:1;flex-direction:column;min-height:0}.mc-sidepanel-footer{display:flex;align-items:center;justify-content:space-between;flex-flow:row nowrap;flex:0 0 auto;height:var(--mc-sidepanel-footer-size-height, 64px);padding:var(--mc-sidepanel-footer-size-padding, 0 16px)}.mc-sidepanel-footer .mc-sidepanel-actions{display:flex;align-items:center;flex-direction:row;flex:1}.mc-sidepanel-footer .mc-sidepanel-actions[align=left]{justify-content:start}.mc-sidepanel-footer .mc-sidepanel-actions[align=right]{justify-content:flex-end}.mc-sidepanel-footer button+button{margin-left:16px}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [mcSidepanelAnimations.sidepanelState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
188
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelContainerComponent, decorators: [{
189
- type: Component,
190
- args: [{ selector: 'mc-sidepanel-container', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, animations: [mcSidepanelAnimations.sidepanelState], host: {
191
- class: 'mc-sidepanel-container',
192
- '[class.mc-sidepanel_nested]': 'withIndent',
193
- '[class.mc-sidepanel-container_shadowed]': 'withShadow',
194
- '[attr.id]': 'id',
195
- '[attr.tabindex]': '-1',
196
- '[@state]': `{
197
- value: animationState,
198
- params: animationTransform
199
- }`,
200
- '(@state.start)': 'onAnimation($event)',
201
- '(@state.done)': 'onAnimation($event)'
202
- }, template: "<div class=\"mc-sidepanel-wrapper\">\r\n\r\n <div *ngIf=\"withIndent\" class=\"mc-sidepanel-indent\" (click)=\"exit()\"></div>\r\n\r\n <div class=\"mc-sidepanel-content\" cdkTrapFocus cdkTrapFocusAutoCapture>\r\n <ng-template cdkPortalOutlet></ng-template>\r\n </div>\r\n</div>\r\n", styles: [".mc-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mc-sidepanel-container{outline:none;display:flex;flex:1;position:fixed;min-height:0}.mc-sidepanel-container .flex{min-height:0}.mc-sidepanel-container_left,.mc-sidepanel-container_right{width:33%;min-width:400px;height:100%;top:0}.mc-sidepanel-container_left .mc-sidepanel-indent,.mc-sidepanel-container_right .mc-sidepanel-indent{width:16px;height:100%}.mc-sidepanel-container_right{right:0;transform:translate(100%)}.mc-sidepanel-container_right .mc-sidepanel-wrapper{flex-direction:row}.mc-sidepanel-container_left{left:0;transform:translate(-100%)}.mc-sidepanel-container_left .mc-sidepanel-wrapper{flex-direction:row-reverse}.mc-sidepanel-container_top,.mc-sidepanel-container_bottom{flex-direction:column;height:33%;min-height:400px;width:100%;left:0}.mc-sidepanel-container_top .mc-sidepanel-indent,.mc-sidepanel-container_bottom .mc-sidepanel-indent{height:16px;width:100%}.mc-sidepanel-container_top{top:0;transform:translateY(-100%)}.mc-sidepanel-container_top .mc-sidepanel-wrapper{flex-direction:column-reverse}.mc-sidepanel-container_bottom{bottom:0;transform:translateY(100%)}.mc-sidepanel-container_bottom .mc-sidepanel-wrapper{flex-direction:column}.mc-sidepanel-wrapper{display:flex;flex:1;min-height:0;width:100%}.mc-sidepanel-indent{display:flex;flex:0 0 auto}.mc-sidepanel-indent .mc-sidepanel-close{width:100%;height:100%;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;background:transparent;padding:0}.mc-sidepanel-content{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;width:100%}.mc-sidepanel-header{display:flex;align-items:center;justify-content:space-between;flex-flow:row nowrap;flex:0 0 auto;height:var(--mc-sidepanel-header-size-height, 56px);padding:var(--mc-sidepanel-header-size-padding, 0 16px)}.mc-sidepanel-header .mc-sidepanel-close{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;background:transparent;padding:var(--mc-sidepanel-header-size-close-padding, 0 0 0 8px)}.mc-sidepanel-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mc-sidepanel-body{overflow-y:auto;display:flex;flex:1;flex-direction:column;min-height:0}.mc-sidepanel-footer{display:flex;align-items:center;justify-content:space-between;flex-flow:row nowrap;flex:0 0 auto;height:var(--mc-sidepanel-footer-size-height, 64px);padding:var(--mc-sidepanel-footer-size-padding, 0 16px)}.mc-sidepanel-footer .mc-sidepanel-actions{display:flex;align-items:center;flex-direction:row;flex:1}.mc-sidepanel-footer .mc-sidepanel-actions[align=left]{justify-content:start}.mc-sidepanel-footer .mc-sidepanel-actions[align=right]{justify-content:flex-end}.mc-sidepanel-footer button+button{margin-left:16px}\n"] }]
203
- }], ctorParameters: function () {
204
- return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: McSidepanelConfig }, { type: undefined, decorators: [{
205
- type: Inject,
206
- args: [MC_SIDEPANEL_WITH_INDENT]
207
- }] }, { type: undefined, decorators: [{
208
- type: Inject,
209
- args: [MC_SIDEPANEL_WITH_SHADOW]
210
- }] }];
211
- }, propDecorators: { portalOutlet: [{
212
- type: ViewChild,
213
- args: [CdkPortalOutlet, { static: true }]
117
+ const MC_SIDEPANEL_WITH_INDENT = new InjectionToken('mc-sidepanel-with-indent');
118
+ const MC_SIDEPANEL_WITH_SHADOW = new InjectionToken('mc-sidepanel-with-shadow');
119
+ class McSidepanelContainerComponent extends BasePortalOutlet {
120
+ constructor(elementRef, changeDetectorRef, sidepanelConfig, withIndent, withShadow) {
121
+ super();
122
+ this.elementRef = elementRef;
123
+ this.changeDetectorRef = changeDetectorRef;
124
+ this.sidepanelConfig = sidepanelConfig;
125
+ this.withIndent = withIndent;
126
+ this.withShadow = withShadow;
127
+ /** The state of the sidepanel animations. */
128
+ this.animationState = McSidepanelAnimationState.Void;
129
+ /** Emits whenever the state of the animation changes. */
130
+ this.animationStateChanged = new EventEmitter();
131
+ }
132
+ ngOnDestroy() {
133
+ this.destroyed = true;
134
+ }
135
+ /** Attach a component portal as content to this sidepanel container. */
136
+ attachComponentPortal(portal) {
137
+ this.validatePortalAttached();
138
+ this.setAnimation();
139
+ this.setPanelClass();
140
+ return this.portalOutlet.attachComponentPortal(portal);
141
+ }
142
+ /** Attach a template portal as content to this sidepanel container. */
143
+ attachTemplatePortal(portal) {
144
+ this.validatePortalAttached();
145
+ this.setAnimation();
146
+ this.setPanelClass();
147
+ return this.portalOutlet.attachTemplatePortal(portal);
148
+ }
149
+ /** Begin animation of the sidepanel entrance into view. */
150
+ enter() {
151
+ if (this.destroyed) {
152
+ return;
153
+ }
154
+ this.animationState = McSidepanelAnimationState.Visible;
155
+ this.changeDetectorRef.detectChanges();
156
+ }
157
+ /** Begin animation of the sidepanel exiting from view. */
158
+ exit() {
159
+ if (this.destroyed) {
160
+ return;
161
+ }
162
+ this.animationState = McSidepanelAnimationState.Hidden;
163
+ this.changeDetectorRef.markForCheck();
164
+ }
165
+ onAnimation(event) {
166
+ this.animationStateChanged.emit(event);
167
+ }
168
+ setAnimation() {
169
+ const position = this.sidepanelConfig.position;
170
+ this.animationTransform = {
171
+ transformIn: mcSidepanelTransformAnimation[position].in,
172
+ transformOut: mcSidepanelTransformAnimation[position].out
173
+ };
174
+ }
175
+ setPanelClass() {
176
+ const element = this.elementRef.nativeElement;
177
+ const position = this.sidepanelConfig.position;
178
+ element.classList.add(`mc-sidepanel-container_${position}`);
179
+ }
180
+ validatePortalAttached() {
181
+ if (this.portalOutlet.hasAttached()) {
182
+ throw Error('Attempting to attach sidepanel content after content is already attached');
183
+ }
184
+ }
185
+ }
186
+ /** @nocollapse */ /** @nocollapse */ McSidepanelContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelContainerComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: McSidepanelConfig }, { token: MC_SIDEPANEL_WITH_INDENT }, { token: MC_SIDEPANEL_WITH_SHADOW }], target: i0.ɵɵFactoryTarget.Component });
187
+ /** @nocollapse */ /** @nocollapse */ McSidepanelContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelContainerComponent, selector: "mc-sidepanel-container", host: { listeners: { "@state.start": "onAnimation($event)", "@state.done": "onAnimation($event)" }, properties: { "class.mc-sidepanel_nested": "withIndent", "class.mc-sidepanel-container_shadowed": "withShadow", "attr.id": "id", "attr.tabindex": "-1", "@state": "{\n value: animationState,\n params: animationTransform\n }" }, classAttribute: "mc-sidepanel-container" }, viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"mc-sidepanel-wrapper\">\n\n <div *ngIf=\"withIndent\" class=\"mc-sidepanel-indent\" (click)=\"exit()\"></div>\n\n <div class=\"mc-sidepanel-content\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <ng-template cdkPortalOutlet></ng-template>\n </div>\n</div>\n", styles: [".mc-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mc-sidepanel-container{outline:none;display:flex;flex:1;position:fixed;min-height:0}.mc-sidepanel-container .flex{min-height:0}.mc-sidepanel-container_left,.mc-sidepanel-container_right{width:33%;min-width:400px;height:100%;top:0}.mc-sidepanel-container_left .mc-sidepanel-indent,.mc-sidepanel-container_right .mc-sidepanel-indent{width:16px;height:100%}.mc-sidepanel-container_right{right:0;transform:translate(100%)}.mc-sidepanel-container_right .mc-sidepanel-wrapper{flex-direction:row}.mc-sidepanel-container_left{left:0;transform:translate(-100%)}.mc-sidepanel-container_left .mc-sidepanel-wrapper{flex-direction:row-reverse}.mc-sidepanel-container_top,.mc-sidepanel-container_bottom{flex-direction:column;height:33%;min-height:400px;width:100%;left:0}.mc-sidepanel-container_top .mc-sidepanel-indent,.mc-sidepanel-container_bottom .mc-sidepanel-indent{height:16px;width:100%}.mc-sidepanel-container_top{top:0;transform:translateY(-100%)}.mc-sidepanel-container_top .mc-sidepanel-wrapper{flex-direction:column-reverse}.mc-sidepanel-container_bottom{bottom:0;transform:translateY(100%)}.mc-sidepanel-container_bottom .mc-sidepanel-wrapper{flex-direction:column}.mc-sidepanel-wrapper{display:flex;flex:1;min-height:0;width:100%}.mc-sidepanel-indent{display:flex;flex:0 0 auto}.mc-sidepanel-indent .mc-sidepanel-close{width:100%;height:100%;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;background:transparent;padding:0}.mc-sidepanel-content{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;width:100%}.mc-sidepanel-header{display:flex;align-items:center;justify-content:space-between;flex-flow:row nowrap;flex:0 0 auto;height:var(--mc-sidepanel-header-size-height, 56px);padding:var(--mc-sidepanel-header-size-padding, 0 16px)}.mc-sidepanel-header .mc-sidepanel-close{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;background:transparent;padding:var(--mc-sidepanel-header-size-close-padding, 0 0 0 8px)}.mc-sidepanel-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mc-sidepanel-body{overflow-y:auto;display:flex;flex:1;flex-direction:column;min-height:0}.mc-sidepanel-footer{display:flex;align-items:center;justify-content:space-between;flex-flow:row nowrap;flex:0 0 auto;height:var(--mc-sidepanel-footer-size-height, 64px);padding:var(--mc-sidepanel-footer-size-padding, 0 16px)}.mc-sidepanel-footer .mc-sidepanel-actions{display:flex;align-items:center;flex-direction:row;flex:1}.mc-sidepanel-footer .mc-sidepanel-actions[align=left]{justify-content:start}.mc-sidepanel-footer .mc-sidepanel-actions[align=right]{justify-content:flex-end}.mc-sidepanel-footer button+button{margin-left:16px}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [mcSidepanelAnimations.sidepanelState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
188
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelContainerComponent, decorators: [{
189
+ type: Component,
190
+ args: [{ selector: 'mc-sidepanel-container', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, animations: [mcSidepanelAnimations.sidepanelState], host: {
191
+ class: 'mc-sidepanel-container',
192
+ '[class.mc-sidepanel_nested]': 'withIndent',
193
+ '[class.mc-sidepanel-container_shadowed]': 'withShadow',
194
+ '[attr.id]': 'id',
195
+ '[attr.tabindex]': '-1',
196
+ '[@state]': `{
197
+ value: animationState,
198
+ params: animationTransform
199
+ }`,
200
+ '(@state.start)': 'onAnimation($event)',
201
+ '(@state.done)': 'onAnimation($event)'
202
+ }, template: "<div class=\"mc-sidepanel-wrapper\">\n\n <div *ngIf=\"withIndent\" class=\"mc-sidepanel-indent\" (click)=\"exit()\"></div>\n\n <div class=\"mc-sidepanel-content\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <ng-template cdkPortalOutlet></ng-template>\n </div>\n</div>\n", styles: [".mc-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mc-sidepanel-container{outline:none;display:flex;flex:1;position:fixed;min-height:0}.mc-sidepanel-container .flex{min-height:0}.mc-sidepanel-container_left,.mc-sidepanel-container_right{width:33%;min-width:400px;height:100%;top:0}.mc-sidepanel-container_left .mc-sidepanel-indent,.mc-sidepanel-container_right .mc-sidepanel-indent{width:16px;height:100%}.mc-sidepanel-container_right{right:0;transform:translate(100%)}.mc-sidepanel-container_right .mc-sidepanel-wrapper{flex-direction:row}.mc-sidepanel-container_left{left:0;transform:translate(-100%)}.mc-sidepanel-container_left .mc-sidepanel-wrapper{flex-direction:row-reverse}.mc-sidepanel-container_top,.mc-sidepanel-container_bottom{flex-direction:column;height:33%;min-height:400px;width:100%;left:0}.mc-sidepanel-container_top .mc-sidepanel-indent,.mc-sidepanel-container_bottom .mc-sidepanel-indent{height:16px;width:100%}.mc-sidepanel-container_top{top:0;transform:translateY(-100%)}.mc-sidepanel-container_top .mc-sidepanel-wrapper{flex-direction:column-reverse}.mc-sidepanel-container_bottom{bottom:0;transform:translateY(100%)}.mc-sidepanel-container_bottom .mc-sidepanel-wrapper{flex-direction:column}.mc-sidepanel-wrapper{display:flex;flex:1;min-height:0;width:100%}.mc-sidepanel-indent{display:flex;flex:0 0 auto}.mc-sidepanel-indent .mc-sidepanel-close{width:100%;height:100%;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;background:transparent;padding:0}.mc-sidepanel-content{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;width:100%}.mc-sidepanel-header{display:flex;align-items:center;justify-content:space-between;flex-flow:row nowrap;flex:0 0 auto;height:var(--mc-sidepanel-header-size-height, 56px);padding:var(--mc-sidepanel-header-size-padding, 0 16px)}.mc-sidepanel-header .mc-sidepanel-close{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;background:transparent;padding:var(--mc-sidepanel-header-size-close-padding, 0 0 0 8px)}.mc-sidepanel-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mc-sidepanel-body{overflow-y:auto;display:flex;flex:1;flex-direction:column;min-height:0}.mc-sidepanel-footer{display:flex;align-items:center;justify-content:space-between;flex-flow:row nowrap;flex:0 0 auto;height:var(--mc-sidepanel-footer-size-height, 64px);padding:var(--mc-sidepanel-footer-size-padding, 0 16px)}.mc-sidepanel-footer .mc-sidepanel-actions{display:flex;align-items:center;flex-direction:row;flex:1}.mc-sidepanel-footer .mc-sidepanel-actions[align=left]{justify-content:start}.mc-sidepanel-footer .mc-sidepanel-actions[align=right]{justify-content:flex-end}.mc-sidepanel-footer button+button{margin-left:16px}\n"] }]
203
+ }], ctorParameters: function () {
204
+ return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: McSidepanelConfig }, { type: undefined, decorators: [{
205
+ type: Inject,
206
+ args: [MC_SIDEPANEL_WITH_INDENT]
207
+ }] }, { type: undefined, decorators: [{
208
+ type: Inject,
209
+ args: [MC_SIDEPANEL_WITH_SHADOW]
210
+ }] }];
211
+ }, propDecorators: { portalOutlet: [{
212
+ type: ViewChild,
213
+ args: [CdkPortalOutlet, { static: true }]
214
214
  }] } });
215
215
 
216
- /** Injection token that can be used to specify default sidepanel options. */
217
- const MC_SIDEPANEL_DEFAULT_OPTIONS = new InjectionToken('mc-sidepanel-default-options');
218
- class McSidepanelService {
219
- constructor(overlay, injector, defaultOptions, parentSidepanelService) {
220
- this.overlay = overlay;
221
- this.injector = injector;
222
- this.defaultOptions = defaultOptions;
223
- this.parentSidepanelService = parentSidepanelService;
224
- this.openedSidepanelsAtThisLevel = [];
225
- }
226
- /** Keeps track of the currently-open sidepanels. */
227
- get openedSidepanels() {
228
- return this.parentSidepanelService ? this.parentSidepanelService.openedSidepanels :
229
- this.openedSidepanelsAtThisLevel;
230
- }
231
- ngOnDestroy() {
232
- // Only close the sidepanels at this level on destroy
233
- // since the parent service may still be active.
234
- this.closeSidepanels(this.openedSidepanelsAtThisLevel);
235
- }
236
- open(componentOrTemplateRef, config) {
237
- const fullConfig = Object.assign(Object.assign({}, (this.defaultOptions || new McSidepanelConfig())), config);
238
- if (fullConfig.id && this.getSidepanelById(fullConfig.id)) {
239
- throw Error(`Sidepanel with id "${fullConfig.id}" exists already. The sidepanel id must be unique.`);
240
- }
241
- const overlayRef = this.createOverlay(fullConfig);
242
- const container = this.attachContainer(overlayRef, fullConfig);
243
- const ref = new McSidepanelRef(container, overlayRef, fullConfig);
244
- if (componentOrTemplateRef instanceof TemplateRef) {
245
- container.attachTemplatePortal(new TemplatePortal(componentOrTemplateRef, null, {
246
- $implicit: fullConfig.data,
247
- sidepanelRef: ref
248
- }));
249
- }
250
- else {
251
- const injector = this.createInjector(fullConfig, ref, container);
252
- const portal = new ComponentPortal(componentOrTemplateRef, undefined, injector);
253
- const contentRef = container.attachComponentPortal(portal);
254
- ref.instance = contentRef.instance;
255
- }
256
- this.openedSidepanels.push(ref);
257
- ref.afterClosed()
258
- .subscribe(() => this.removeOpenSidepanel(ref));
259
- container.enter();
260
- return ref;
261
- }
262
- /**
263
- * Closes all of the currently-open sidepanels.
264
- */
265
- closeAll() {
266
- this.closeSidepanels(this.openedSidepanels);
267
- }
268
- /**
269
- * Finds an open sidepanel by its id.
270
- * @param id ID to use when looking up the sidepanel.
271
- */
272
- getSidepanelById(id) {
273
- return this.openedSidepanels.find((sidepanel) => sidepanel.id === id);
274
- }
275
- /**
276
- * Attaches the sidepanel container component to the overlay.
277
- */
278
- attachContainer(overlayRef, config) {
279
- const openedSidepanelsWithSamePosition = this.getOpenedSidepanelsWithSamePosition(config);
280
- // tslint:disable-next-line:deprecation
281
- const injector = new PortalInjector(this.injector, new WeakMap([
282
- [McSidepanelConfig, config],
283
- [MC_SIDEPANEL_WITH_INDENT, openedSidepanelsWithSamePosition.length >= 1],
284
- [MC_SIDEPANEL_WITH_SHADOW, openedSidepanelsWithSamePosition.length < 2] // tslint:disable-line
285
- ]));
286
- const containerPortal = new ComponentPortal(McSidepanelContainerComponent, undefined, injector);
287
- const containerRef = overlayRef.attach(containerPortal);
288
- return containerRef.instance;
289
- }
290
- /**
291
- * Creates a custom injector to be used inside the sidepanel. This allows a component loaded inside
292
- * of a sidepanel to close itself and, optionally, to return a value.
293
- * @param config Config object that is used to construct the sidepanel.
294
- * @param sidepanelRef Reference to the sidepanel.
295
- * @param sidepanelContainer Sidepanel container element that wraps all of the contents.
296
- * @returns The custom injector that can be used inside the sidepanel.
297
- */
298
- createInjector(config, sidepanelRef,
299
- // tslint:disable-next-line:deprecation
300
- sidepanelContainer) {
301
- // The McSidepanelContainerComponent is injected in the portal as the McSidepanelContainerComponent and
302
- // the sidepanel's content are created out of the same ViewContainerRef and as such, are siblings for injector
303
- // purposes. To allow the hierarchy that is expected, the McSidepanelContainerComponent is explicitly
304
- // added to the injection tokens.
305
- const injectionTokens = new WeakMap([
306
- [McSidepanelContainerComponent, sidepanelContainer],
307
- [MC_SIDEPANEL_DATA, config.data],
308
- [McSidepanelRef, sidepanelRef]
309
- ]);
310
- // tslint:disable-next-line:deprecation
311
- return new PortalInjector(this.injector, injectionTokens);
312
- }
313
- /**
314
- * Creates a new overlay and places it in the correct location.
315
- * @param config The user-specified sidepanel config.
316
- */
317
- createOverlay(config) {
318
- const overlayConfig = new OverlayConfig({
319
- hasBackdrop: config.hasBackdrop,
320
- backdropClass: this.getBackdropClass(config),
321
- maxWidth: '100%',
322
- panelClass: config.overlayPanelClass,
323
- scrollStrategy: this.overlay.scrollStrategies.block(),
324
- positionStrategy: this.overlay.position().global()
325
- });
326
- return this.overlay.create(overlayConfig);
327
- }
328
- closeSidepanels(sidepanels) {
329
- const reversedOpenedSidepanels = [...sidepanels.reverse()];
330
- reversedOpenedSidepanels.forEach((sidepanelRef) => {
331
- sidepanelRef.close();
332
- });
333
- }
334
- getBackdropClass(config) {
335
- if (config.hasBackdrop && config.backdropClass) {
336
- return config.backdropClass;
337
- }
338
- const hasOpenedSidepanelWithBackdrop = this.openedSidepanels.some((sidepanelRef) => sidepanelRef.config.hasBackdrop);
339
- return config.requiredBackdrop || !hasOpenedSidepanelWithBackdrop ? 'cdk-overlay-dark-backdrop' :
340
- 'cdk-overlay-transparent-backdrop';
341
- }
342
- getOpenedSidepanelsWithSamePosition(config) {
343
- return this.openedSidepanels.filter((sidepanelRef) => sidepanelRef.config.position === config.position);
344
- }
345
- /**
346
- * Removes a sidepanel from the array of open sidepanels.
347
- * @param sidepanelRef Sidepanel to be removed.
348
- */
349
- removeOpenSidepanel(sidepanelRef) {
350
- const index = this.openedSidepanels.indexOf(sidepanelRef);
351
- if (index > -1) {
352
- this.openedSidepanels.splice(index, 1);
353
- }
354
- }
355
- }
356
- /** @nocollapse */ /** @nocollapse */ McSidepanelService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelService, deps: [{ token: i1.Overlay }, { token: i0.Injector }, { token: MC_SIDEPANEL_DEFAULT_OPTIONS, optional: true }, { token: McSidepanelService, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Injectable });
357
- /** @nocollapse */ /** @nocollapse */ McSidepanelService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelService });
358
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelService, decorators: [{
359
- type: Injectable
360
- }], ctorParameters: function () {
361
- return [{ type: i1.Overlay }, { type: i0.Injector }, { type: McSidepanelConfig, decorators: [{
362
- type: Optional
363
- }, {
364
- type: Inject,
365
- args: [MC_SIDEPANEL_DEFAULT_OPTIONS]
366
- }] }, { type: McSidepanelService, decorators: [{
367
- type: Optional
368
- }, {
369
- type: SkipSelf
370
- }] }];
216
+ /** Injection token that can be used to specify default sidepanel options. */
217
+ const MC_SIDEPANEL_DEFAULT_OPTIONS = new InjectionToken('mc-sidepanel-default-options');
218
+ class McSidepanelService {
219
+ constructor(overlay, injector, defaultOptions, parentSidepanelService) {
220
+ this.overlay = overlay;
221
+ this.injector = injector;
222
+ this.defaultOptions = defaultOptions;
223
+ this.parentSidepanelService = parentSidepanelService;
224
+ this.openedSidepanelsAtThisLevel = [];
225
+ }
226
+ /** Keeps track of the currently-open sidepanels. */
227
+ get openedSidepanels() {
228
+ return this.parentSidepanelService ? this.parentSidepanelService.openedSidepanels :
229
+ this.openedSidepanelsAtThisLevel;
230
+ }
231
+ ngOnDestroy() {
232
+ // Only close the sidepanels at this level on destroy
233
+ // since the parent service may still be active.
234
+ this.closeSidepanels(this.openedSidepanelsAtThisLevel);
235
+ }
236
+ open(componentOrTemplateRef, config) {
237
+ const fullConfig = Object.assign(Object.assign({}, (this.defaultOptions || new McSidepanelConfig())), config);
238
+ if (fullConfig.id && this.getSidepanelById(fullConfig.id)) {
239
+ throw Error(`Sidepanel with id "${fullConfig.id}" exists already. The sidepanel id must be unique.`);
240
+ }
241
+ const overlayRef = this.createOverlay(fullConfig);
242
+ const container = this.attachContainer(overlayRef, fullConfig);
243
+ const ref = new McSidepanelRef(container, overlayRef, fullConfig);
244
+ if (componentOrTemplateRef instanceof TemplateRef) {
245
+ container.attachTemplatePortal(new TemplatePortal(componentOrTemplateRef, null, {
246
+ $implicit: fullConfig.data,
247
+ sidepanelRef: ref
248
+ }));
249
+ }
250
+ else {
251
+ const injector = this.createInjector(fullConfig, ref, container);
252
+ const portal = new ComponentPortal(componentOrTemplateRef, undefined, injector);
253
+ const contentRef = container.attachComponentPortal(portal);
254
+ ref.instance = contentRef.instance;
255
+ }
256
+ this.openedSidepanels.push(ref);
257
+ ref.afterClosed()
258
+ .subscribe(() => this.removeOpenSidepanel(ref));
259
+ container.enter();
260
+ return ref;
261
+ }
262
+ /**
263
+ * Closes all of the currently-open sidepanels.
264
+ */
265
+ closeAll() {
266
+ this.closeSidepanels(this.openedSidepanels);
267
+ }
268
+ /**
269
+ * Finds an open sidepanel by its id.
270
+ * @param id ID to use when looking up the sidepanel.
271
+ */
272
+ getSidepanelById(id) {
273
+ return this.openedSidepanels.find((sidepanel) => sidepanel.id === id);
274
+ }
275
+ /**
276
+ * Attaches the sidepanel container component to the overlay.
277
+ */
278
+ attachContainer(overlayRef, config) {
279
+ const openedSidepanelsWithSamePosition = this.getOpenedSidepanelsWithSamePosition(config);
280
+ // tslint:disable-next-line:deprecation
281
+ const injector = new PortalInjector(this.injector, new WeakMap([
282
+ [McSidepanelConfig, config],
283
+ [MC_SIDEPANEL_WITH_INDENT, openedSidepanelsWithSamePosition.length >= 1],
284
+ [MC_SIDEPANEL_WITH_SHADOW, openedSidepanelsWithSamePosition.length < 2] // tslint:disable-line
285
+ ]));
286
+ const containerPortal = new ComponentPortal(McSidepanelContainerComponent, undefined, injector);
287
+ const containerRef = overlayRef.attach(containerPortal);
288
+ return containerRef.instance;
289
+ }
290
+ /**
291
+ * Creates a custom injector to be used inside the sidepanel. This allows a component loaded inside
292
+ * of a sidepanel to close itself and, optionally, to return a value.
293
+ * @param config Config object that is used to construct the sidepanel.
294
+ * @param sidepanelRef Reference to the sidepanel.
295
+ * @param sidepanelContainer Sidepanel container element that wraps all of the contents.
296
+ * @returns The custom injector that can be used inside the sidepanel.
297
+ */
298
+ createInjector(config, sidepanelRef,
299
+ // tslint:disable-next-line:deprecation
300
+ sidepanelContainer) {
301
+ // The McSidepanelContainerComponent is injected in the portal as the McSidepanelContainerComponent and
302
+ // the sidepanel's content are created out of the same ViewContainerRef and as such, are siblings for injector
303
+ // purposes. To allow the hierarchy that is expected, the McSidepanelContainerComponent is explicitly
304
+ // added to the injection tokens.
305
+ const injectionTokens = new WeakMap([
306
+ [McSidepanelContainerComponent, sidepanelContainer],
307
+ [MC_SIDEPANEL_DATA, config.data],
308
+ [McSidepanelRef, sidepanelRef]
309
+ ]);
310
+ // tslint:disable-next-line:deprecation
311
+ return new PortalInjector(this.injector, injectionTokens);
312
+ }
313
+ /**
314
+ * Creates a new overlay and places it in the correct location.
315
+ * @param config The user-specified sidepanel config.
316
+ */
317
+ createOverlay(config) {
318
+ const overlayConfig = new OverlayConfig({
319
+ hasBackdrop: config.hasBackdrop,
320
+ backdropClass: this.getBackdropClass(config),
321
+ maxWidth: '100%',
322
+ panelClass: config.overlayPanelClass,
323
+ scrollStrategy: this.overlay.scrollStrategies.block(),
324
+ positionStrategy: this.overlay.position().global()
325
+ });
326
+ return this.overlay.create(overlayConfig);
327
+ }
328
+ closeSidepanels(sidepanels) {
329
+ const reversedOpenedSidepanels = [...sidepanels.reverse()];
330
+ reversedOpenedSidepanels.forEach((sidepanelRef) => {
331
+ sidepanelRef.close();
332
+ });
333
+ }
334
+ getBackdropClass(config) {
335
+ if (config.hasBackdrop && config.backdropClass) {
336
+ return config.backdropClass;
337
+ }
338
+ const hasOpenedSidepanelWithBackdrop = this.openedSidepanels.some((sidepanelRef) => sidepanelRef.config.hasBackdrop);
339
+ return config.requiredBackdrop || !hasOpenedSidepanelWithBackdrop ? 'cdk-overlay-dark-backdrop' :
340
+ 'cdk-overlay-transparent-backdrop';
341
+ }
342
+ getOpenedSidepanelsWithSamePosition(config) {
343
+ return this.openedSidepanels.filter((sidepanelRef) => sidepanelRef.config.position === config.position);
344
+ }
345
+ /**
346
+ * Removes a sidepanel from the array of open sidepanels.
347
+ * @param sidepanelRef Sidepanel to be removed.
348
+ */
349
+ removeOpenSidepanel(sidepanelRef) {
350
+ const index = this.openedSidepanels.indexOf(sidepanelRef);
351
+ if (index > -1) {
352
+ this.openedSidepanels.splice(index, 1);
353
+ }
354
+ }
355
+ }
356
+ /** @nocollapse */ /** @nocollapse */ McSidepanelService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelService, deps: [{ token: i1.Overlay }, { token: i0.Injector }, { token: MC_SIDEPANEL_DEFAULT_OPTIONS, optional: true }, { token: McSidepanelService, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Injectable });
357
+ /** @nocollapse */ /** @nocollapse */ McSidepanelService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelService });
358
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelService, decorators: [{
359
+ type: Injectable
360
+ }], ctorParameters: function () {
361
+ return [{ type: i1.Overlay }, { type: i0.Injector }, { type: McSidepanelConfig, decorators: [{
362
+ type: Optional
363
+ }, {
364
+ type: Inject,
365
+ args: [MC_SIDEPANEL_DEFAULT_OPTIONS]
366
+ }] }, { type: McSidepanelService, decorators: [{
367
+ type: Optional
368
+ }, {
369
+ type: SkipSelf
370
+ }] }];
371
371
  } });
372
372
 
373
- /**
374
- * Button that will close the current sidepanel.
375
- */
376
- class McSidepanelClose {
377
- constructor(sidepanelRef, elementRef, sidepanelService) {
378
- this.sidepanelRef = sidepanelRef;
379
- this.elementRef = elementRef;
380
- this.sidepanelService = sidepanelService;
381
- }
382
- ngOnInit() {
383
- if (!this.sidepanelRef) {
384
- // When this directive is included in a sidepanel via TemplateRef (rather than being
385
- // in a Component), the SidepanelRef isn't available via injection because embedded
386
- // views cannot be given a custom injector. Instead, we look up the SidepanelRef by
387
- // ID.
388
- // This must occur in `onInit`, as the ID binding for the sidepanel container won't
389
- // be resolved at constructor time. We use setTimeout by same reason.
390
- setTimeout(() => {
391
- this.sidepanelRef = getClosestSidepanel(this.elementRef, this.sidepanelService.openedSidepanels);
392
- });
393
- }
394
- }
395
- ngOnChanges(changes) {
396
- const proxiedChange = changes.mcSidepanelClose || changes.sidepanelResult;
397
- if (proxiedChange) {
398
- this.sidepanelResult = proxiedChange.currentValue;
399
- }
400
- }
401
- }
402
- /** @nocollapse */ /** @nocollapse */ McSidepanelClose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelClose, deps: [{ token: McSidepanelRef, optional: true }, { token: i0.ElementRef }, { token: McSidepanelService }], target: i0.ɵɵFactoryTarget.Directive });
403
- /** @nocollapse */ /** @nocollapse */ McSidepanelClose.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelClose, selector: "button[mc-sidepanel-close], button[mcSidepanelClose]", inputs: { sidepanelResult: ["mc-sidepanel-close", "sidepanelResult"], mcSidepanelClose: "mcSidepanelClose" }, host: { listeners: { "click": "sidepanelRef.close(sidepanelResult)" }, classAttribute: "mc-sidepanel-close" }, usesOnChanges: true, ngImport: i0 });
404
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelClose, decorators: [{
405
- type: Directive,
406
- args: [{
407
- selector: 'button[mc-sidepanel-close], button[mcSidepanelClose]',
408
- host: {
409
- '(click)': 'sidepanelRef.close(sidepanelResult)',
410
- class: 'mc-sidepanel-close'
411
- }
412
- }]
413
- }], ctorParameters: function () {
414
- return [{ type: McSidepanelRef, decorators: [{
415
- type: Optional
416
- }] }, { type: i0.ElementRef }, { type: McSidepanelService }];
417
- }, propDecorators: { sidepanelResult: [{
418
- type: Input,
419
- args: ['mc-sidepanel-close']
420
- }], mcSidepanelClose: [{
421
- type: Input,
422
- args: ['mcSidepanelClose']
423
- }] } });
424
- /**
425
- * Header of a sidepanel.
426
- */
427
- class McSidepanelHeader {
428
- constructor() {
429
- this.themePalette = ThemePalette;
430
- }
431
- }
432
- /** @nocollapse */ /** @nocollapse */ McSidepanelHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelHeader, deps: [], target: i0.ɵɵFactoryTarget.Component });
433
- /** @nocollapse */ /** @nocollapse */ McSidepanelHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelHeader, selector: "mc-sidepanel-header", inputs: { closeable: "closeable" }, host: { classAttribute: "mc-sidepanel-header" }, ngImport: i0, template: `
434
- <div class="mc-sidepanel-title">
435
- <ng-content></ng-content>
436
- </div>
437
- <button *ngIf="closeable" mc-sidepanel-close>
438
- <span class="mc-sidepanel-close-x">
439
- <i mc-icon="mc-close-L_16" class="mc-icon mc-icon_light" [color]="themePalette.Second"></i>
440
- </span>
441
- </button>
442
- `, isInline: true, components: [{ type: i3$1.McIcon, selector: "[mc-icon]", inputs: ["color"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: McSidepanelClose, selector: "button[mc-sidepanel-close], button[mcSidepanelClose]", inputs: ["mc-sidepanel-close", "mcSidepanelClose"] }, { type: i3$1.McIconCSSStyler, selector: "[mc-icon]" }] });
443
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelHeader, decorators: [{
444
- type: Component,
445
- args: [{
446
- selector: 'mc-sidepanel-header',
447
- template: `
448
- <div class="mc-sidepanel-title">
449
- <ng-content></ng-content>
450
- </div>
451
- <button *ngIf="closeable" mc-sidepanel-close>
452
- <span class="mc-sidepanel-close-x">
453
- <i mc-icon="mc-close-L_16" class="mc-icon mc-icon_light" [color]="themePalette.Second"></i>
454
- </span>
455
- </button>
456
- `,
457
- host: {
458
- class: 'mc-sidepanel-header'
459
- }
460
- }]
461
- }], propDecorators: { closeable: [{
462
- type: Input
463
- }] } });
464
- /**
465
- * Scrollable content container of a sidepanel.
466
- */
467
- class McSidepanelBody {
468
- }
469
- /** @nocollapse */ /** @nocollapse */ McSidepanelBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelBody, deps: [], target: i0.ɵɵFactoryTarget.Directive });
470
- /** @nocollapse */ /** @nocollapse */ McSidepanelBody.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelBody, selector: "mc-sidepanel-body, [mc-sidepanel-body], mcSidepanelBody", host: { classAttribute: "mc-sidepanel-body" }, ngImport: i0 });
471
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelBody, decorators: [{
472
- type: Directive,
473
- args: [{
474
- selector: 'mc-sidepanel-body, [mc-sidepanel-body], mcSidepanelBody',
475
- host: {
476
- class: 'mc-sidepanel-body'
477
- }
478
- }]
479
- }] });
480
- /**
481
- * Footer of a sidepanel.
482
- */
483
- class McSidepanelFooter {
484
- }
485
- /** @nocollapse */ /** @nocollapse */ McSidepanelFooter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelFooter, deps: [], target: i0.ɵɵFactoryTarget.Directive });
486
- /** @nocollapse */ /** @nocollapse */ McSidepanelFooter.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelFooter, selector: "mc-sidepanel-footer, [mc-sidepanel-footer], mcSidepanelFooter", host: { classAttribute: "mc-sidepanel-footer" }, ngImport: i0 });
487
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelFooter, decorators: [{
488
- type: Directive,
489
- args: [{
490
- selector: 'mc-sidepanel-footer, [mc-sidepanel-footer], mcSidepanelFooter',
491
- host: {
492
- class: 'mc-sidepanel-footer'
493
- }
494
- }]
495
- }] });
496
- /**
497
- * Actions block of a sidepanel footer.
498
- */
499
- class McSidepanelActions {
500
- }
501
- /** @nocollapse */ /** @nocollapse */ McSidepanelActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelActions, deps: [], target: i0.ɵɵFactoryTarget.Directive });
502
- /** @nocollapse */ /** @nocollapse */ McSidepanelActions.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelActions, selector: "mc-sidepanel-actions, [mc-sidepanel-actions], mcSidepanelActions", host: { classAttribute: "mc-sidepanel-actions" }, ngImport: i0 });
503
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelActions, decorators: [{
504
- type: Directive,
505
- args: [{
506
- selector: 'mc-sidepanel-actions, [mc-sidepanel-actions], mcSidepanelActions',
507
- host: {
508
- class: 'mc-sidepanel-actions'
509
- }
510
- }]
511
- }] });
512
- /**
513
- * Finds the closest McSidepanelRef to an element by looking at the DOM.
514
- * @param element Element relative to which to look for a sidepanel.
515
- * @param openSidepanels References to the currently-open sidepanels.
516
- */
517
- function getClosestSidepanel(element, openSidepanels) {
518
- let parent = element.nativeElement.parentElement;
519
- while (parent && !parent.classList.contains('mc-sidepanel-container')) {
520
- parent = parent.parentElement;
521
- }
522
- return parent ? openSidepanels.find((sidepanel) => sidepanel.id === parent.id) : null;
373
+ /**
374
+ * Button that will close the current sidepanel.
375
+ */
376
+ class McSidepanelClose {
377
+ constructor(sidepanelRef, elementRef, sidepanelService) {
378
+ this.sidepanelRef = sidepanelRef;
379
+ this.elementRef = elementRef;
380
+ this.sidepanelService = sidepanelService;
381
+ }
382
+ ngOnInit() {
383
+ if (!this.sidepanelRef) {
384
+ // When this directive is included in a sidepanel via TemplateRef (rather than being
385
+ // in a Component), the SidepanelRef isn't available via injection because embedded
386
+ // views cannot be given a custom injector. Instead, we look up the SidepanelRef by
387
+ // ID.
388
+ // This must occur in `onInit`, as the ID binding for the sidepanel container won't
389
+ // be resolved at constructor time. We use setTimeout by same reason.
390
+ setTimeout(() => {
391
+ this.sidepanelRef = getClosestSidepanel(this.elementRef, this.sidepanelService.openedSidepanels);
392
+ });
393
+ }
394
+ }
395
+ ngOnChanges(changes) {
396
+ const proxiedChange = changes.mcSidepanelClose || changes.sidepanelResult;
397
+ if (proxiedChange) {
398
+ this.sidepanelResult = proxiedChange.currentValue;
399
+ }
400
+ }
401
+ }
402
+ /** @nocollapse */ /** @nocollapse */ McSidepanelClose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelClose, deps: [{ token: McSidepanelRef, optional: true }, { token: i0.ElementRef }, { token: McSidepanelService }], target: i0.ɵɵFactoryTarget.Directive });
403
+ /** @nocollapse */ /** @nocollapse */ McSidepanelClose.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelClose, selector: "button[mc-sidepanel-close], button[mcSidepanelClose]", inputs: { sidepanelResult: ["mc-sidepanel-close", "sidepanelResult"], mcSidepanelClose: "mcSidepanelClose" }, host: { listeners: { "click": "sidepanelRef.close(sidepanelResult)" }, classAttribute: "mc-sidepanel-close" }, usesOnChanges: true, ngImport: i0 });
404
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelClose, decorators: [{
405
+ type: Directive,
406
+ args: [{
407
+ selector: 'button[mc-sidepanel-close], button[mcSidepanelClose]',
408
+ host: {
409
+ '(click)': 'sidepanelRef.close(sidepanelResult)',
410
+ class: 'mc-sidepanel-close'
411
+ }
412
+ }]
413
+ }], ctorParameters: function () {
414
+ return [{ type: McSidepanelRef, decorators: [{
415
+ type: Optional
416
+ }] }, { type: i0.ElementRef }, { type: McSidepanelService }];
417
+ }, propDecorators: { sidepanelResult: [{
418
+ type: Input,
419
+ args: ['mc-sidepanel-close']
420
+ }], mcSidepanelClose: [{
421
+ type: Input,
422
+ args: ['mcSidepanelClose']
423
+ }] } });
424
+ /**
425
+ * Header of a sidepanel.
426
+ */
427
+ class McSidepanelHeader {
428
+ constructor() {
429
+ this.themePalette = ThemePalette;
430
+ }
431
+ }
432
+ /** @nocollapse */ /** @nocollapse */ McSidepanelHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelHeader, deps: [], target: i0.ɵɵFactoryTarget.Component });
433
+ /** @nocollapse */ /** @nocollapse */ McSidepanelHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelHeader, selector: "mc-sidepanel-header", inputs: { closeable: "closeable" }, host: { classAttribute: "mc-sidepanel-header" }, ngImport: i0, template: `
434
+ <div class="mc-sidepanel-title">
435
+ <ng-content></ng-content>
436
+ </div>
437
+ <button *ngIf="closeable" mc-sidepanel-close>
438
+ <span class="mc-sidepanel-close-x">
439
+ <i mc-icon="mc-close-L_16" class="mc-icon mc-icon_light" [color]="themePalette.Second"></i>
440
+ </span>
441
+ </button>
442
+ `, isInline: true, components: [{ type: i3$1.McIcon, selector: "[mc-icon]", inputs: ["color"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: McSidepanelClose, selector: "button[mc-sidepanel-close], button[mcSidepanelClose]", inputs: ["mc-sidepanel-close", "mcSidepanelClose"] }, { type: i3$1.McIconCSSStyler, selector: "[mc-icon]" }] });
443
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelHeader, decorators: [{
444
+ type: Component,
445
+ args: [{
446
+ selector: 'mc-sidepanel-header',
447
+ template: `
448
+ <div class="mc-sidepanel-title">
449
+ <ng-content></ng-content>
450
+ </div>
451
+ <button *ngIf="closeable" mc-sidepanel-close>
452
+ <span class="mc-sidepanel-close-x">
453
+ <i mc-icon="mc-close-L_16" class="mc-icon mc-icon_light" [color]="themePalette.Second"></i>
454
+ </span>
455
+ </button>
456
+ `,
457
+ host: {
458
+ class: 'mc-sidepanel-header'
459
+ }
460
+ }]
461
+ }], propDecorators: { closeable: [{
462
+ type: Input
463
+ }] } });
464
+ /**
465
+ * Scrollable content container of a sidepanel.
466
+ */
467
+ class McSidepanelBody {
468
+ }
469
+ /** @nocollapse */ /** @nocollapse */ McSidepanelBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelBody, deps: [], target: i0.ɵɵFactoryTarget.Directive });
470
+ /** @nocollapse */ /** @nocollapse */ McSidepanelBody.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelBody, selector: "mc-sidepanel-body, [mc-sidepanel-body], mcSidepanelBody", host: { classAttribute: "mc-sidepanel-body" }, ngImport: i0 });
471
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelBody, decorators: [{
472
+ type: Directive,
473
+ args: [{
474
+ selector: 'mc-sidepanel-body, [mc-sidepanel-body], mcSidepanelBody',
475
+ host: {
476
+ class: 'mc-sidepanel-body'
477
+ }
478
+ }]
479
+ }] });
480
+ /**
481
+ * Footer of a sidepanel.
482
+ */
483
+ class McSidepanelFooter {
484
+ }
485
+ /** @nocollapse */ /** @nocollapse */ McSidepanelFooter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelFooter, deps: [], target: i0.ɵɵFactoryTarget.Directive });
486
+ /** @nocollapse */ /** @nocollapse */ McSidepanelFooter.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelFooter, selector: "mc-sidepanel-footer, [mc-sidepanel-footer], mcSidepanelFooter", host: { classAttribute: "mc-sidepanel-footer" }, ngImport: i0 });
487
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelFooter, decorators: [{
488
+ type: Directive,
489
+ args: [{
490
+ selector: 'mc-sidepanel-footer, [mc-sidepanel-footer], mcSidepanelFooter',
491
+ host: {
492
+ class: 'mc-sidepanel-footer'
493
+ }
494
+ }]
495
+ }] });
496
+ /**
497
+ * Actions block of a sidepanel footer.
498
+ */
499
+ class McSidepanelActions {
500
+ }
501
+ /** @nocollapse */ /** @nocollapse */ McSidepanelActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelActions, deps: [], target: i0.ɵɵFactoryTarget.Directive });
502
+ /** @nocollapse */ /** @nocollapse */ McSidepanelActions.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: McSidepanelActions, selector: "mc-sidepanel-actions, [mc-sidepanel-actions], mcSidepanelActions", host: { classAttribute: "mc-sidepanel-actions" }, ngImport: i0 });
503
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelActions, decorators: [{
504
+ type: Directive,
505
+ args: [{
506
+ selector: 'mc-sidepanel-actions, [mc-sidepanel-actions], mcSidepanelActions',
507
+ host: {
508
+ class: 'mc-sidepanel-actions'
509
+ }
510
+ }]
511
+ }] });
512
+ /**
513
+ * Finds the closest McSidepanelRef to an element by looking at the DOM.
514
+ * @param element Element relative to which to look for a sidepanel.
515
+ * @param openSidepanels References to the currently-open sidepanels.
516
+ */
517
+ function getClosestSidepanel(element, openSidepanels) {
518
+ let parent = element.nativeElement.parentElement;
519
+ while (parent && !parent.classList.contains('mc-sidepanel-container')) {
520
+ parent = parent.parentElement;
521
+ }
522
+ return parent ? openSidepanels.find((sidepanel) => sidepanel.id === parent.id) : null;
523
523
  }
524
524
 
525
- class McSidepanelModule {
526
- }
527
- /** @nocollapse */ /** @nocollapse */ McSidepanelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
528
- /** @nocollapse */ /** @nocollapse */ McSidepanelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelModule, declarations: [McSidepanelContainerComponent,
529
- McSidepanelClose,
530
- McSidepanelHeader,
531
- McSidepanelBody,
532
- McSidepanelFooter,
533
- McSidepanelActions], imports: [CommonModule,
534
- OverlayModule,
535
- PortalModule,
536
- McCommonModule,
537
- McButtonModule,
538
- McIconModule,
539
- A11yModule], exports: [McSidepanelContainerComponent,
540
- McSidepanelClose,
541
- McSidepanelHeader,
542
- McSidepanelBody,
543
- McSidepanelFooter,
544
- McSidepanelActions] });
545
- /** @nocollapse */ /** @nocollapse */ McSidepanelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelModule, providers: [McSidepanelService], imports: [[
546
- CommonModule,
547
- OverlayModule,
548
- PortalModule,
549
- McCommonModule,
550
- McButtonModule,
551
- McIconModule,
552
- A11yModule
553
- ]] });
554
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelModule, decorators: [{
555
- type: NgModule,
556
- args: [{
557
- imports: [
558
- CommonModule,
559
- OverlayModule,
560
- PortalModule,
561
- McCommonModule,
562
- McButtonModule,
563
- McIconModule,
564
- A11yModule
565
- ],
566
- providers: [McSidepanelService],
567
- declarations: [
568
- McSidepanelContainerComponent,
569
- McSidepanelClose,
570
- McSidepanelHeader,
571
- McSidepanelBody,
572
- McSidepanelFooter,
573
- McSidepanelActions
574
- ],
575
- entryComponents: [McSidepanelContainerComponent],
576
- exports: [
577
- McSidepanelContainerComponent,
578
- McSidepanelClose,
579
- McSidepanelHeader,
580
- McSidepanelBody,
581
- McSidepanelFooter,
582
- McSidepanelActions
583
- ]
584
- }]
525
+ class McSidepanelModule {
526
+ }
527
+ /** @nocollapse */ /** @nocollapse */ McSidepanelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
528
+ /** @nocollapse */ /** @nocollapse */ McSidepanelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelModule, declarations: [McSidepanelContainerComponent,
529
+ McSidepanelClose,
530
+ McSidepanelHeader,
531
+ McSidepanelBody,
532
+ McSidepanelFooter,
533
+ McSidepanelActions], imports: [CommonModule,
534
+ OverlayModule,
535
+ PortalModule,
536
+ McCommonModule,
537
+ McButtonModule,
538
+ McIconModule,
539
+ A11yModule], exports: [McSidepanelContainerComponent,
540
+ McSidepanelClose,
541
+ McSidepanelHeader,
542
+ McSidepanelBody,
543
+ McSidepanelFooter,
544
+ McSidepanelActions] });
545
+ /** @nocollapse */ /** @nocollapse */ McSidepanelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelModule, providers: [McSidepanelService], imports: [[
546
+ CommonModule,
547
+ OverlayModule,
548
+ PortalModule,
549
+ McCommonModule,
550
+ McButtonModule,
551
+ McIconModule,
552
+ A11yModule
553
+ ]] });
554
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McSidepanelModule, decorators: [{
555
+ type: NgModule,
556
+ args: [{
557
+ imports: [
558
+ CommonModule,
559
+ OverlayModule,
560
+ PortalModule,
561
+ McCommonModule,
562
+ McButtonModule,
563
+ McIconModule,
564
+ A11yModule
565
+ ],
566
+ providers: [McSidepanelService],
567
+ declarations: [
568
+ McSidepanelContainerComponent,
569
+ McSidepanelClose,
570
+ McSidepanelHeader,
571
+ McSidepanelBody,
572
+ McSidepanelFooter,
573
+ McSidepanelActions
574
+ ],
575
+ entryComponents: [McSidepanelContainerComponent],
576
+ exports: [
577
+ McSidepanelContainerComponent,
578
+ McSidepanelClose,
579
+ McSidepanelHeader,
580
+ McSidepanelBody,
581
+ McSidepanelFooter,
582
+ McSidepanelActions
583
+ ]
584
+ }]
585
585
  }] });
586
586
 
587
- /**
588
- * Generated bundle index. Do not edit.
587
+ /**
588
+ * Generated bundle index. Do not edit.
589
589
  */
590
590
 
591
591
  export { MC_SIDEPANEL_DATA, MC_SIDEPANEL_DEFAULT_OPTIONS, MC_SIDEPANEL_WITH_INDENT, MC_SIDEPANEL_WITH_SHADOW, McSidepanelActions, McSidepanelBody, McSidepanelClose, McSidepanelConfig, McSidepanelContainerComponent, McSidepanelFooter, McSidepanelHeader, McSidepanelModule, McSidepanelPosition, McSidepanelRef, McSidepanelService };