@ptsecurity/mosaic 11.6.0 → 12.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (630) hide show
  1. package/_theming.scss +407 -99
  2. package/_visual.scss +63 -26
  3. package/autocomplete/autocomplete-origin.directive.d.ts +3 -0
  4. package/autocomplete/autocomplete-trigger.directive.d.ts +3 -0
  5. package/autocomplete/autocomplete.component.d.ts +3 -0
  6. package/autocomplete/autocomplete.module.d.ts +10 -0
  7. package/autocomplete/package.json +0 -1
  8. package/autocomplete/ptsecurity-mosaic-autocomplete.d.ts +1 -0
  9. package/bundles/ptsecurity-mosaic-autocomplete.umd.js +178 -114
  10. package/bundles/ptsecurity-mosaic-autocomplete.umd.js.map +1 -1
  11. package/bundles/ptsecurity-mosaic-button-toggle.umd.js +107 -71
  12. package/bundles/ptsecurity-mosaic-button-toggle.umd.js.map +1 -1
  13. package/bundles/ptsecurity-mosaic-button.umd.js +106 -77
  14. package/bundles/ptsecurity-mosaic-button.umd.js.map +1 -1
  15. package/bundles/ptsecurity-mosaic-card.umd.js +74 -43
  16. package/bundles/ptsecurity-mosaic-card.umd.js.map +1 -1
  17. package/bundles/ptsecurity-mosaic-checkbox.umd.js +114 -69
  18. package/bundles/ptsecurity-mosaic-checkbox.umd.js.map +1 -1
  19. package/bundles/ptsecurity-mosaic-core.umd.js +804 -256
  20. package/bundles/ptsecurity-mosaic-core.umd.js.map +1 -1
  21. package/bundles/ptsecurity-mosaic-datepicker.umd.js +599 -420
  22. package/bundles/ptsecurity-mosaic-datepicker.umd.js.map +1 -1
  23. package/bundles/ptsecurity-mosaic-design-tokens.umd.js +108 -26
  24. package/bundles/ptsecurity-mosaic-design-tokens.umd.js.map +1 -1
  25. package/bundles/ptsecurity-mosaic-divider.umd.js +55 -28
  26. package/bundles/ptsecurity-mosaic-divider.umd.js.map +1 -1
  27. package/bundles/ptsecurity-mosaic-dropdown.umd.js +263 -187
  28. package/bundles/ptsecurity-mosaic-dropdown.umd.js.map +1 -1
  29. package/bundles/ptsecurity-mosaic-form-field.umd.js +200 -125
  30. package/bundles/ptsecurity-mosaic-form-field.umd.js.map +1 -1
  31. package/bundles/ptsecurity-mosaic-icon.umd.js +79 -41
  32. package/bundles/ptsecurity-mosaic-icon.umd.js.map +1 -1
  33. package/bundles/ptsecurity-mosaic-input.umd.js +222 -124
  34. package/bundles/ptsecurity-mosaic-input.umd.js.map +1 -1
  35. package/bundles/ptsecurity-mosaic-link.umd.js +76 -45
  36. package/bundles/ptsecurity-mosaic-link.umd.js.map +1 -1
  37. package/bundles/ptsecurity-mosaic-list.umd.js +344 -200
  38. package/bundles/ptsecurity-mosaic-list.umd.js.map +1 -1
  39. package/bundles/ptsecurity-mosaic-modal.umd.js +324 -220
  40. package/bundles/ptsecurity-mosaic-modal.umd.js.map +1 -1
  41. package/bundles/ptsecurity-mosaic-navbar.umd.js +289 -208
  42. package/bundles/ptsecurity-mosaic-navbar.umd.js.map +1 -1
  43. package/bundles/ptsecurity-mosaic-popover.umd.js +346 -640
  44. package/bundles/ptsecurity-mosaic-popover.umd.js.map +1 -1
  45. package/bundles/ptsecurity-mosaic-progress-bar.umd.js +69 -40
  46. package/bundles/ptsecurity-mosaic-progress-bar.umd.js.map +1 -1
  47. package/bundles/ptsecurity-mosaic-progress-spinner.umd.js +69 -40
  48. package/bundles/ptsecurity-mosaic-progress-spinner.umd.js.map +1 -1
  49. package/bundles/ptsecurity-mosaic-radio.umd.js +126 -81
  50. package/bundles/ptsecurity-mosaic-radio.umd.js.map +1 -1
  51. package/bundles/ptsecurity-mosaic-select.umd.js +276 -154
  52. package/bundles/ptsecurity-mosaic-select.umd.js.map +1 -1
  53. package/bundles/ptsecurity-mosaic-sidebar.umd.js +105 -68
  54. package/bundles/ptsecurity-mosaic-sidebar.umd.js.map +1 -1
  55. package/bundles/ptsecurity-mosaic-sidepanel.umd.js +236 -158
  56. package/bundles/ptsecurity-mosaic-sidepanel.umd.js.map +1 -1
  57. package/bundles/ptsecurity-mosaic-splitter.umd.js +112 -83
  58. package/bundles/ptsecurity-mosaic-splitter.umd.js.map +1 -1
  59. package/bundles/ptsecurity-mosaic-table.umd.js +77 -44
  60. package/bundles/ptsecurity-mosaic-table.umd.js.map +1 -1
  61. package/bundles/ptsecurity-mosaic-tabs.umd.js +894 -687
  62. package/bundles/ptsecurity-mosaic-tabs.umd.js.map +1 -1
  63. package/bundles/ptsecurity-mosaic-tags.umd.js +313 -209
  64. package/bundles/ptsecurity-mosaic-tags.umd.js.map +1 -1
  65. package/bundles/ptsecurity-mosaic-textarea.umd.js +107 -53
  66. package/bundles/ptsecurity-mosaic-textarea.umd.js.map +1 -1
  67. package/bundles/ptsecurity-mosaic-timepicker.umd.js +116 -71
  68. package/bundles/ptsecurity-mosaic-timepicker.umd.js.map +1 -1
  69. package/bundles/ptsecurity-mosaic-toggle.umd.js +97 -58
  70. package/bundles/ptsecurity-mosaic-toggle.umd.js.map +1 -1
  71. package/bundles/ptsecurity-mosaic-tooltip.umd.js +347 -615
  72. package/bundles/ptsecurity-mosaic-tooltip.umd.js.map +1 -1
  73. package/bundles/ptsecurity-mosaic-tree-select.umd.js +223 -118
  74. package/bundles/ptsecurity-mosaic-tree-select.umd.js.map +1 -1
  75. package/bundles/ptsecurity-mosaic-tree.umd.js +1162 -344
  76. package/bundles/ptsecurity-mosaic-tree.umd.js.map +1 -1
  77. package/bundles/ptsecurity-mosaic.umd.js +2 -2
  78. package/button/button.component.d.ts +7 -0
  79. package/button/button.module.d.ts +8 -0
  80. package/button/package.json +0 -1
  81. package/button/ptsecurity-mosaic-button.d.ts +1 -0
  82. package/button-toggle/button-toggle.component.d.ts +5 -0
  83. package/button-toggle/button-toggle.module.d.ts +7 -0
  84. package/button-toggle/package.json +0 -1
  85. package/button-toggle/ptsecurity-mosaic-button-toggle.d.ts +1 -0
  86. package/card/card.component.d.ts +3 -0
  87. package/card/card.module.d.ts +8 -0
  88. package/card/package.json +0 -1
  89. package/card/ptsecurity-mosaic-card.d.ts +1 -0
  90. package/checkbox/checkbox-module.d.ts +7 -0
  91. package/checkbox/checkbox-required-validator.d.ts +3 -0
  92. package/checkbox/checkbox.d.ts +3 -0
  93. package/checkbox/package.json +0 -1
  94. package/checkbox/ptsecurity-mosaic-checkbox.d.ts +1 -0
  95. package/core/common-behaviors/color.d.ts +3 -3
  96. package/core/common-behaviors/common-module.d.ts +5 -0
  97. package/core/common-behaviors/disabled.d.ts +4 -3
  98. package/core/common-behaviors/tabindex.d.ts +2 -1
  99. package/core/error/error-options.d.ts +5 -0
  100. package/core/formatters/date/formatter.d.ts +3 -0
  101. package/core/formatters/index.d.ts +5 -0
  102. package/core/formatters/number/formatter.d.ts +4 -0
  103. package/core/forms/forms-module.d.ts +5 -0
  104. package/core/forms/forms.directive.d.ts +5 -0
  105. package/core/highlight/highlight.pipe.d.ts +3 -0
  106. package/core/highlight/index.d.ts +6 -0
  107. package/core/line/line.d.ts +6 -0
  108. package/core/option/action.d.ts +42 -0
  109. package/core/option/index.d.ts +1 -0
  110. package/core/option/optgroup.d.ts +3 -0
  111. package/core/option/option-module.d.ts +9 -0
  112. package/core/option/option.d.ts +3 -0
  113. package/core/overlay/overlay-position-map.d.ts +0 -4
  114. package/core/package.json +0 -1
  115. package/core/pop-up/constants.d.ts +29 -0
  116. package/core/pop-up/index.d.ts +3 -0
  117. package/core/pop-up/pop-up-trigger.d.ts +70 -0
  118. package/core/pop-up/pop-up.d.ts +35 -0
  119. package/core/ptsecurity-mosaic-core.d.ts +1 -1
  120. package/core/public-api.d.ts +1 -0
  121. package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +3 -0
  122. package/core/selection/pseudo-checkbox/pseudo-checkbox.module.d.ts +6 -0
  123. package/core/services/measure-scrollbar.service.d.ts +3 -0
  124. package/datepicker/calendar-body.component.d.ts +5 -6
  125. package/datepicker/calendar.component.d.ts +5 -0
  126. package/datepicker/datepicker-input.directive.d.ts +6 -2
  127. package/datepicker/datepicker-intl.d.ts +3 -0
  128. package/datepicker/datepicker-module.d.ts +18 -0
  129. package/datepicker/datepicker-toggle.component.d.ts +5 -0
  130. package/datepicker/datepicker.component.d.ts +5 -0
  131. package/datepicker/month-view.component.d.ts +3 -0
  132. package/datepicker/multi-year-view.component.d.ts +3 -0
  133. package/datepicker/package.json +0 -1
  134. package/datepicker/ptsecurity-mosaic-datepicker.d.ts +1 -0
  135. package/datepicker/year-view.component.d.ts +3 -0
  136. package/design-tokens/package.json +0 -1
  137. package/design-tokens/ptsecurity-mosaic-design-tokens.d.ts +1 -0
  138. package/design-tokens/tokens/components/list.json5 +0 -4
  139. package/design-tokens/tokens/components/popover.json5 +32 -4
  140. package/design-tokens/tokens/components/tooltip.json5 +49 -3
  141. package/design-tokens/tokens/components/tree.json5 +3 -3
  142. package/design-tokens/tokens/properties/globals.json5 +1 -1
  143. package/design-tokens/tokens.d.ts +56 -15
  144. package/divider/divider.component.d.ts +3 -0
  145. package/divider/divider.module.d.ts +6 -0
  146. package/divider/package.json +0 -1
  147. package/divider/ptsecurity-mosaic-divider.d.ts +1 -0
  148. package/dropdown/dropdown-content.directive.d.ts +3 -0
  149. package/dropdown/dropdown-item.component.d.ts +3 -0
  150. package/dropdown/dropdown-trigger.directive.d.ts +6 -8
  151. package/dropdown/dropdown.component.d.ts +5 -1
  152. package/dropdown/dropdown.module.d.ts +11 -0
  153. package/dropdown/package.json +0 -1
  154. package/dropdown/ptsecurity-mosaic-dropdown.d.ts +1 -0
  155. package/esm2015/autocomplete/autocomplete-origin.directive.js +11 -11
  156. package/esm2015/autocomplete/autocomplete-trigger.directive.js +53 -38
  157. package/esm2015/autocomplete/autocomplete.component.js +56 -37
  158. package/esm2015/autocomplete/autocomplete.module.js +25 -15
  159. package/esm2015/button/button.component.js +52 -56
  160. package/esm2015/button/button.module.js +35 -20
  161. package/esm2015/button-toggle/button-toggle.component.js +76 -55
  162. package/esm2015/button-toggle/button-toggle.module.js +13 -8
  163. package/esm2015/card/card.component.js +32 -30
  164. package/esm2015/card/card.module.js +23 -12
  165. package/esm2015/checkbox/checkbox-module.js +13 -8
  166. package/esm2015/checkbox/checkbox-required-validator.js +12 -8
  167. package/esm2015/checkbox/checkbox.js +61 -44
  168. package/esm2015/core/common-behaviors/color.js +2 -5
  169. package/esm2015/core/common-behaviors/common-module.js +17 -11
  170. package/esm2015/core/common-behaviors/disabled.js +1 -1
  171. package/esm2015/core/common-behaviors/tabindex.js +4 -13
  172. package/esm2015/core/error/error-options.js +12 -8
  173. package/esm2015/core/formatters/date/formatter.js +13 -10
  174. package/esm2015/core/formatters/index.js +13 -8
  175. package/esm2015/core/formatters/number/formatter.js +16 -10
  176. package/esm2015/core/forms/forms-module.js +20 -13
  177. package/esm2015/core/forms/forms.directive.js +32 -29
  178. package/esm2015/core/highlight/highlight.pipe.js +8 -4
  179. package/esm2015/core/highlight/index.js +13 -8
  180. package/esm2015/core/line/line.js +22 -14
  181. package/esm2015/core/option/action.js +131 -0
  182. package/esm2015/core/option/index.js +2 -1
  183. package/esm2015/core/option/optgroup.js +22 -19
  184. package/esm2015/core/option/option-module.js +14 -8
  185. package/esm2015/core/option/option.js +44 -35
  186. package/esm2015/core/overlay/overlay-position-map.js +16 -18
  187. package/esm2015/core/pop-up/constants.js +34 -0
  188. package/esm2015/core/pop-up/index.js +4 -0
  189. package/esm2015/core/pop-up/pop-up-trigger.js +241 -0
  190. package/esm2015/core/pop-up/pop-up.js +87 -0
  191. package/esm2015/core/ptsecurity-mosaic-core.js +1 -2
  192. package/esm2015/core/public-api.js +2 -1
  193. package/esm2015/core/selection/pseudo-checkbox/pseudo-checkbox.js +25 -21
  194. package/esm2015/core/selection/pseudo-checkbox/pseudo-checkbox.module.js +13 -8
  195. package/esm2015/core/services/measure-scrollbar.service.js +12 -12
  196. package/esm2015/datepicker/calendar-body.component.js +39 -32
  197. package/esm2015/datepicker/calendar.component.js +92 -58
  198. package/esm2015/datepicker/datepicker-input.directive.js +92 -61
  199. package/esm2015/datepicker/datepicker-intl.js +7 -5
  200. package/esm2015/datepicker/datepicker-module.js +89 -48
  201. package/esm2015/datepicker/datepicker-toggle.component.js +44 -32
  202. package/esm2015/datepicker/datepicker.component.js +88 -63
  203. package/esm2015/datepicker/month-view.component.js +48 -29
  204. package/esm2015/datepicker/multi-year-view.component.js +40 -27
  205. package/esm2015/datepicker/year-view.component.js +45 -28
  206. package/esm2015/design-tokens/tokens.js +57 -16
  207. package/esm2015/divider/divider.component.js +24 -20
  208. package/esm2015/divider/divider.module.js +13 -8
  209. package/esm2015/dropdown/dropdown-content.directive.js +13 -15
  210. package/esm2015/dropdown/dropdown-item.component.js +40 -30
  211. package/esm2015/dropdown/dropdown-trigger.directive.js +75 -67
  212. package/esm2015/dropdown/dropdown.component.js +63 -38
  213. package/esm2015/dropdown/dropdown.module.js +40 -23
  214. package/esm2015/form-field/cleaner.js +20 -11
  215. package/esm2015/form-field/form-field.js +77 -53
  216. package/esm2015/form-field/form-field.module.js +41 -24
  217. package/esm2015/form-field/hint.js +16 -13
  218. package/esm2015/form-field/prefix.js +10 -6
  219. package/esm2015/form-field/stepper.js +22 -11
  220. package/esm2015/form-field/suffix.js +10 -6
  221. package/esm2015/icon/icon.component.js +27 -22
  222. package/esm2015/icon/icon.module.js +31 -18
  223. package/esm2015/input/input-number-validators.js +48 -29
  224. package/esm2015/input/input-number.js +42 -28
  225. package/esm2015/input/input.js +94 -52
  226. package/esm2015/input/input.module.js +13 -8
  227. package/esm2015/link/link.component.js +38 -34
  228. package/esm2015/link/link.module.js +20 -11
  229. package/esm2015/list/list-selection.component.js +224 -122
  230. package/esm2015/list/list.component.js +35 -32
  231. package/esm2015/list/list.module.js +47 -25
  232. package/esm2015/modal/css-unit.pipe.js +10 -6
  233. package/esm2015/modal/modal-control.service.js +11 -8
  234. package/esm2015/modal/modal.component.js +107 -61
  235. package/esm2015/modal/modal.directive.js +43 -30
  236. package/esm2015/modal/modal.module.js +59 -31
  237. package/esm2015/modal/modal.service.js +9 -9
  238. package/esm2015/modal/ptsecurity-mosaic-modal.js +1 -3
  239. package/esm2015/navbar/navbar-item.component.js +111 -95
  240. package/esm2015/navbar/navbar.component.js +40 -30
  241. package/esm2015/navbar/navbar.module.js +66 -35
  242. package/esm2015/navbar/ptsecurity-mosaic-navbar.js +1 -2
  243. package/esm2015/navbar/vertical-navbar.component.js +68 -46
  244. package/esm2015/popover/popover-confirm.component.js +115 -0
  245. package/esm2015/popover/popover.component.js +180 -587
  246. package/esm2015/popover/popover.module.js +18 -12
  247. package/esm2015/popover/public-api.js +2 -1
  248. package/esm2015/progress-bar/progress-bar.component.js +26 -24
  249. package/esm2015/progress-bar/progress-bar.module.js +24 -15
  250. package/esm2015/progress-spinner/progress-spinner.component.js +26 -24
  251. package/esm2015/progress-spinner/progress-spinner.module.js +24 -15
  252. package/esm2015/radio/radio.component.js +87 -67
  253. package/esm2015/radio/radio.module.js +13 -8
  254. package/esm2015/select/select.component.js +181 -105
  255. package/esm2015/select/select.module.js +54 -28
  256. package/esm2015/sidebar/ptsecurity-mosaic-sidebar.js +1 -2
  257. package/esm2015/sidebar/sidebar.component.js +61 -50
  258. package/esm2015/sidebar/sidebar.module.js +25 -16
  259. package/esm2015/sidepanel/ptsecurity-mosaic-sidepanel.js +1 -2
  260. package/esm2015/sidepanel/sidepanel-container.component.js +46 -40
  261. package/esm2015/sidepanel/sidepanel-directives.js +87 -57
  262. package/esm2015/sidepanel/sidepanel.module.js +63 -30
  263. package/esm2015/sidepanel/sidepanel.service.js +20 -12
  264. package/esm2015/splitter/splitter.component.js +62 -64
  265. package/esm2015/splitter/splitter.module.js +32 -19
  266. package/esm2015/table/table.component.js +13 -9
  267. package/esm2015/table/table.module.js +23 -12
  268. package/esm2015/tabs/paginated-tab-header.js +20 -18
  269. package/esm2015/tabs/ptsecurity-mosaic-tabs.js +1 -6
  270. package/esm2015/tabs/tab-body.component.js +52 -42
  271. package/esm2015/tabs/tab-content.directive.js +8 -8
  272. package/esm2015/tabs/tab-group.component.js +145 -74
  273. package/esm2015/tabs/tab-header.component.js +50 -36
  274. package/esm2015/tabs/tab-label-wrapper.directive.js +30 -16
  275. package/esm2015/tabs/tab-label.directive.js +11 -7
  276. package/esm2015/tabs/tab-nav-bar/tab-nav-bar.js +46 -46
  277. package/esm2015/tabs/tab.component.js +67 -33
  278. package/esm2015/tabs/tabs.module.js +87 -45
  279. package/esm2015/tags/tag-input.js +48 -34
  280. package/esm2015/tags/tag-list.component.js +93 -56
  281. package/esm2015/tags/tag.component.js +90 -73
  282. package/esm2015/tags/tag.module.js +46 -29
  283. package/esm2015/textarea/textarea.component.js +70 -41
  284. package/esm2015/textarea/textarea.module.js +13 -8
  285. package/esm2015/timepicker/timepicker.directive.js +64 -52
  286. package/esm2015/timepicker/timepicker.module.js +26 -13
  287. package/esm2015/toggle/toggle.component.js +65 -47
  288. package/esm2015/toggle/toggle.module.js +13 -8
  289. package/esm2015/tooltip/tooltip.animations.js +19 -0
  290. package/esm2015/tooltip/tooltip.component.js +239 -555
  291. package/esm2015/tooltip/tooltip.module.js +38 -11
  292. package/esm2015/tree/control/base-tree-control.js +60 -0
  293. package/esm2015/tree/control/flat-tree-control.js +123 -0
  294. package/esm2015/tree/control/nested-tree-control.js +41 -0
  295. package/esm2015/tree/control/tree-control.js +2 -0
  296. package/esm2015/tree/data-source/flat-data-source.js +1 -1
  297. package/esm2015/tree/node.js +31 -0
  298. package/esm2015/tree/outlet.js +15 -0
  299. package/esm2015/tree/padding.directive.js +98 -25
  300. package/esm2015/tree/public-api.js +9 -2
  301. package/esm2015/tree/toggle.js +65 -70
  302. package/esm2015/tree/tree-base.js +243 -0
  303. package/esm2015/tree/tree-errors.js +36 -0
  304. package/esm2015/tree/tree-option.component.js +102 -56
  305. package/esm2015/tree/tree-selection.component.js +180 -115
  306. package/esm2015/tree/tree.js +23 -0
  307. package/esm2015/tree/tree.module.js +38 -12
  308. package/esm2015/tree-select/tree-select.component.js +153 -85
  309. package/esm2015/tree-select/tree-select.module.js +33 -18
  310. package/fesm2015/ptsecurity-mosaic-autocomplete.js +140 -102
  311. package/fesm2015/ptsecurity-mosaic-autocomplete.js.map +1 -1
  312. package/fesm2015/ptsecurity-mosaic-button-toggle.js +87 -63
  313. package/fesm2015/ptsecurity-mosaic-button-toggle.js.map +1 -1
  314. package/fesm2015/ptsecurity-mosaic-button.js +86 -76
  315. package/fesm2015/ptsecurity-mosaic-button.js.map +1 -1
  316. package/fesm2015/ptsecurity-mosaic-card.js +54 -42
  317. package/fesm2015/ptsecurity-mosaic-card.js.map +1 -1
  318. package/fesm2015/ptsecurity-mosaic-checkbox.js +82 -59
  319. package/fesm2015/ptsecurity-mosaic-checkbox.js.map +1 -1
  320. package/fesm2015/ptsecurity-mosaic-core.js +758 -239
  321. package/fesm2015/ptsecurity-mosaic-core.js.map +1 -1
  322. package/fesm2015/ptsecurity-mosaic-datepicker.js +544 -376
  323. package/fesm2015/ptsecurity-mosaic-datepicker.js.map +1 -1
  324. package/fesm2015/ptsecurity-mosaic-design-tokens.js +57 -16
  325. package/fesm2015/ptsecurity-mosaic-design-tokens.js.map +1 -1
  326. package/fesm2015/ptsecurity-mosaic-divider.js +34 -26
  327. package/fesm2015/ptsecurity-mosaic-divider.js.map +1 -1
  328. package/fesm2015/ptsecurity-mosaic-dropdown.js +219 -171
  329. package/fesm2015/ptsecurity-mosaic-dropdown.js.map +1 -1
  330. package/fesm2015/ptsecurity-mosaic-form-field.js +184 -119
  331. package/fesm2015/ptsecurity-mosaic-form-field.js.map +1 -1
  332. package/fesm2015/ptsecurity-mosaic-icon.js +56 -39
  333. package/fesm2015/ptsecurity-mosaic-icon.js.map +1 -1
  334. package/fesm2015/ptsecurity-mosaic-input.js +191 -116
  335. package/fesm2015/ptsecurity-mosaic-input.js.map +1 -1
  336. package/fesm2015/ptsecurity-mosaic-link.js +57 -45
  337. package/fesm2015/ptsecurity-mosaic-link.js.map +1 -1
  338. package/fesm2015/ptsecurity-mosaic-list.js +301 -177
  339. package/fesm2015/ptsecurity-mosaic-list.js.map +1 -1
  340. package/fesm2015/ptsecurity-mosaic-modal.js +243 -159
  341. package/fesm2015/ptsecurity-mosaic-modal.js.map +1 -1
  342. package/fesm2015/ptsecurity-mosaic-navbar.js +280 -205
  343. package/fesm2015/ptsecurity-mosaic-navbar.js.map +1 -1
  344. package/fesm2015/ptsecurity-mosaic-popover.js +297 -597
  345. package/fesm2015/ptsecurity-mosaic-popover.js.map +1 -1
  346. package/fesm2015/ptsecurity-mosaic-progress-bar.js +48 -38
  347. package/fesm2015/ptsecurity-mosaic-progress-bar.js.map +1 -1
  348. package/fesm2015/ptsecurity-mosaic-progress-spinner.js +48 -38
  349. package/fesm2015/ptsecurity-mosaic-progress-spinner.js.map +1 -1
  350. package/fesm2015/ptsecurity-mosaic-radio.js +99 -76
  351. package/fesm2015/ptsecurity-mosaic-radio.js.map +1 -1
  352. package/fesm2015/ptsecurity-mosaic-select.js +236 -136
  353. package/fesm2015/ptsecurity-mosaic-select.js.map +1 -1
  354. package/fesm2015/ptsecurity-mosaic-sidebar.js +85 -66
  355. package/fesm2015/ptsecurity-mosaic-sidebar.js.map +1 -1
  356. package/fesm2015/ptsecurity-mosaic-sidepanel.js +207 -139
  357. package/fesm2015/ptsecurity-mosaic-sidepanel.js.map +1 -1
  358. package/fesm2015/ptsecurity-mosaic-splitter.js +92 -82
  359. package/fesm2015/ptsecurity-mosaic-splitter.js.map +1 -1
  360. package/fesm2015/ptsecurity-mosaic-table.js +33 -19
  361. package/fesm2015/ptsecurity-mosaic-table.js.map +1 -1
  362. package/fesm2015/ptsecurity-mosaic-tabs.js +557 -387
  363. package/fesm2015/ptsecurity-mosaic-tabs.js.map +1 -1
  364. package/fesm2015/ptsecurity-mosaic-tags.js +273 -192
  365. package/fesm2015/ptsecurity-mosaic-tags.js.map +1 -1
  366. package/fesm2015/ptsecurity-mosaic-textarea.js +83 -50
  367. package/fesm2015/ptsecurity-mosaic-textarea.js.map +1 -1
  368. package/fesm2015/ptsecurity-mosaic-timepicker.js +87 -64
  369. package/fesm2015/ptsecurity-mosaic-timepicker.js.map +1 -1
  370. package/fesm2015/ptsecurity-mosaic-toggle.js +77 -55
  371. package/fesm2015/ptsecurity-mosaic-toggle.js.map +1 -1
  372. package/fesm2015/ptsecurity-mosaic-tooltip.js +293 -566
  373. package/fesm2015/ptsecurity-mosaic-tooltip.js.map +1 -1
  374. package/fesm2015/ptsecurity-mosaic-tree-select.js +188 -106
  375. package/fesm2015/ptsecurity-mosaic-tree-select.js.map +1 -1
  376. package/fesm2015/ptsecurity-mosaic-tree.js +1001 -279
  377. package/fesm2015/ptsecurity-mosaic-tree.js.map +1 -1
  378. package/form-field/cleaner.d.ts +5 -0
  379. package/form-field/form-field.d.ts +5 -0
  380. package/form-field/form-field.module.d.ts +12 -0
  381. package/form-field/hint.d.ts +3 -0
  382. package/form-field/package.json +0 -1
  383. package/form-field/prefix.d.ts +3 -0
  384. package/form-field/ptsecurity-mosaic-form-field.d.ts +1 -0
  385. package/form-field/stepper.d.ts +3 -0
  386. package/form-field/suffix.d.ts +3 -0
  387. package/icon/icon.component.d.ts +5 -0
  388. package/icon/icon.module.d.ts +8 -0
  389. package/icon/package.json +0 -1
  390. package/icon/ptsecurity-mosaic-icon.d.ts +1 -0
  391. package/input/input-number-validators.d.ts +7 -2
  392. package/input/input-number.d.ts +3 -0
  393. package/input/input.d.ts +5 -0
  394. package/input/input.module.d.ts +11 -0
  395. package/input/package.json +0 -1
  396. package/input/ptsecurity-mosaic-input.d.ts +1 -0
  397. package/link/link.component.d.ts +3 -0
  398. package/link/link.module.d.ts +7 -0
  399. package/link/package.json +0 -1
  400. package/link/ptsecurity-mosaic-link.d.ts +1 -0
  401. package/list/list-selection.component.d.ts +30 -3
  402. package/list/list.component.d.ts +5 -0
  403. package/list/list.module.d.ts +9 -0
  404. package/list/package.json +0 -1
  405. package/list/ptsecurity-mosaic-list.d.ts +1 -0
  406. package/modal/css-unit.pipe.d.ts +3 -0
  407. package/modal/modal-control.service.d.ts +3 -0
  408. package/modal/modal.component.d.ts +5 -0
  409. package/modal/modal.directive.d.ts +9 -0
  410. package/modal/modal.module.d.ts +12 -0
  411. package/modal/modal.service.d.ts +3 -0
  412. package/modal/package.json +0 -1
  413. package/modal/ptsecurity-mosaic-modal.d.ts +1 -2
  414. package/navbar/navbar-item.component.d.ts +13 -0
  415. package/navbar/navbar.component.d.ts +5 -0
  416. package/navbar/navbar.module.d.ts +11 -0
  417. package/navbar/package.json +0 -1
  418. package/navbar/ptsecurity-mosaic-navbar.d.ts +1 -1
  419. package/navbar/vertical-navbar.component.d.ts +5 -0
  420. package/package.json +8 -9
  421. package/popover/package.json +0 -1
  422. package/popover/popover-confirm.component.d.ts +33 -0
  423. package/popover/popover.component.d.ts +50 -136
  424. package/popover/popover.module.d.ts +9 -0
  425. package/popover/ptsecurity-mosaic-popover.d.ts +1 -0
  426. package/popover/public-api.d.ts +1 -0
  427. package/prebuilt-themes/dark-theme.css +1 -1
  428. package/prebuilt-themes/default-theme.css +1 -1
  429. package/prebuilt-visual/default-visual.css +1 -0
  430. package/progress-bar/package.json +0 -1
  431. package/progress-bar/progress-bar.component.d.ts +3 -0
  432. package/progress-bar/progress-bar.module.d.ts +7 -0
  433. package/progress-bar/ptsecurity-mosaic-progress-bar.d.ts +1 -0
  434. package/progress-spinner/package.json +0 -1
  435. package/progress-spinner/progress-spinner.component.d.ts +3 -0
  436. package/progress-spinner/progress-spinner.module.d.ts +7 -0
  437. package/progress-spinner/ptsecurity-mosaic-progress-spinner.d.ts +1 -0
  438. package/ptsecurity-mosaic.d.ts +1 -0
  439. package/radio/package.json +0 -1
  440. package/radio/ptsecurity-mosaic-radio.d.ts +1 -0
  441. package/radio/radio.component.d.ts +5 -0
  442. package/radio/radio.module.d.ts +8 -0
  443. package/schematics/ng-update/update-9.0.0/secondary-entry-points-migration.js +6 -3
  444. package/schematics/ng-update/update-9.0.0/secondary-entry-points-migration.js.map +1 -1
  445. package/select/package.json +0 -1
  446. package/select/ptsecurity-mosaic-select.d.ts +1 -0
  447. package/select/select.component.d.ts +11 -7
  448. package/select/select.module.d.ts +11 -0
  449. package/sidebar/package.json +0 -1
  450. package/sidebar/ptsecurity-mosaic-sidebar.d.ts +1 -1
  451. package/sidebar/sidebar.component.d.ts +7 -0
  452. package/sidebar/sidebar.module.d.ts +6 -0
  453. package/sidepanel/package.json +0 -1
  454. package/sidepanel/ptsecurity-mosaic-sidepanel.d.ts +1 -1
  455. package/sidepanel/sidepanel-container.component.d.ts +3 -0
  456. package/sidepanel/sidepanel-directives.d.ts +13 -0
  457. package/sidepanel/sidepanel.module.d.ts +13 -0
  458. package/sidepanel/sidepanel.service.d.ts +3 -0
  459. package/splitter/package.json +0 -1
  460. package/splitter/ptsecurity-mosaic-splitter.d.ts +1 -0
  461. package/splitter/splitter.component.d.ts +7 -0
  462. package/splitter/splitter.module.d.ts +7 -0
  463. package/table/package.json +0 -1
  464. package/table/ptsecurity-mosaic-table.d.ts +1 -0
  465. package/table/table.component.d.ts +3 -0
  466. package/table/table.module.d.ts +8 -0
  467. package/tabs/package.json +0 -1
  468. package/tabs/paginated-tab-header.d.ts +3 -0
  469. package/tabs/ptsecurity-mosaic-tabs.d.ts +1 -5
  470. package/tabs/tab-body.component.d.ts +5 -0
  471. package/tabs/tab-content.directive.d.ts +3 -0
  472. package/tabs/tab-group.component.d.ts +24 -4
  473. package/tabs/tab-header.component.d.ts +3 -0
  474. package/tabs/tab-label-wrapper.directive.d.ts +9 -0
  475. package/tabs/tab-label.directive.d.ts +3 -0
  476. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +5 -0
  477. package/tabs/tab.component.d.ts +12 -3
  478. package/tabs/tabs.module.d.ts +18 -0
  479. package/tags/package.json +0 -1
  480. package/tags/ptsecurity-mosaic-tags.d.ts +1 -0
  481. package/tags/tag-input.d.ts +3 -0
  482. package/tags/tag-list.component.d.ts +3 -0
  483. package/tags/tag.component.d.ts +9 -0
  484. package/tags/tag.module.d.ts +9 -0
  485. package/textarea/package.json +0 -1
  486. package/textarea/ptsecurity-mosaic-textarea.d.ts +1 -0
  487. package/textarea/textarea.component.d.ts +3 -0
  488. package/textarea/textarea.module.d.ts +9 -0
  489. package/timepicker/package.json +0 -1
  490. package/timepicker/ptsecurity-mosaic-timepicker.d.ts +1 -0
  491. package/timepicker/timepicker.directive.d.ts +5 -2
  492. package/timepicker/timepicker.module.d.ts +9 -0
  493. package/toggle/package.json +0 -1
  494. package/toggle/ptsecurity-mosaic-toggle.d.ts +1 -0
  495. package/toggle/toggle.component.d.ts +3 -0
  496. package/toggle/toggle.module.d.ts +8 -0
  497. package/tooltip/package.json +0 -1
  498. package/tooltip/ptsecurity-mosaic-tooltip.d.ts +1 -0
  499. package/tooltip/tooltip.animations.d.ts +8 -0
  500. package/tooltip/tooltip.component.d.ts +74 -134
  501. package/tooltip/tooltip.module.d.ts +7 -0
  502. package/tree/control/base-tree-control.d.ts +40 -0
  503. package/tree/control/flat-tree-control.d.ts +48 -0
  504. package/tree/control/nested-tree-control.d.ts +19 -0
  505. package/tree/control/tree-control.d.ts +44 -0
  506. package/tree/data-source/flat-data-source.d.ts +2 -1
  507. package/tree/node.d.ts +34 -0
  508. package/tree/outlet.d.ts +9 -0
  509. package/tree/package.json +0 -1
  510. package/tree/padding.directive.d.ts +36 -5
  511. package/tree/ptsecurity-mosaic-tree.d.ts +1 -0
  512. package/tree/public-api.d.ts +8 -1
  513. package/tree/toggle.d.ts +20 -15
  514. package/tree/tree-base.d.ts +97 -0
  515. package/tree/tree-errors.d.ts +25 -0
  516. package/tree/tree-option.component.d.ts +15 -4
  517. package/tree/tree-selection.component.d.ts +46 -24
  518. package/tree/tree.d.ts +6 -0
  519. package/tree/tree.module.d.ts +14 -0
  520. package/tree-select/package.json +0 -1
  521. package/tree-select/ptsecurity-mosaic-tree-select.d.ts +1 -0
  522. package/tree-select/tree-select.component.d.ts +8 -8
  523. package/tree-select/tree-select.module.d.ts +11 -0
  524. package/autocomplete/ptsecurity-mosaic-autocomplete.metadata.json +0 -1
  525. package/bundles/ptsecurity-mosaic-autocomplete.umd.min.js +0 -2
  526. package/bundles/ptsecurity-mosaic-autocomplete.umd.min.js.map +0 -1
  527. package/bundles/ptsecurity-mosaic-button-toggle.umd.min.js +0 -16
  528. package/bundles/ptsecurity-mosaic-button-toggle.umd.min.js.map +0 -1
  529. package/bundles/ptsecurity-mosaic-button.umd.min.js +0 -16
  530. package/bundles/ptsecurity-mosaic-button.umd.min.js.map +0 -1
  531. package/bundles/ptsecurity-mosaic-card.umd.min.js +0 -16
  532. package/bundles/ptsecurity-mosaic-card.umd.min.js.map +0 -1
  533. package/bundles/ptsecurity-mosaic-checkbox.umd.min.js +0 -16
  534. package/bundles/ptsecurity-mosaic-checkbox.umd.min.js.map +0 -1
  535. package/bundles/ptsecurity-mosaic-core.umd.min.js +0 -17
  536. package/bundles/ptsecurity-mosaic-core.umd.min.js.map +0 -1
  537. package/bundles/ptsecurity-mosaic-datepicker.umd.min.js +0 -2
  538. package/bundles/ptsecurity-mosaic-datepicker.umd.min.js.map +0 -1
  539. package/bundles/ptsecurity-mosaic-design-tokens.umd.min.js +0 -2
  540. package/bundles/ptsecurity-mosaic-design-tokens.umd.min.js.map +0 -1
  541. package/bundles/ptsecurity-mosaic-divider.umd.min.js +0 -2
  542. package/bundles/ptsecurity-mosaic-divider.umd.min.js.map +0 -1
  543. package/bundles/ptsecurity-mosaic-dropdown.umd.min.js +0 -17
  544. package/bundles/ptsecurity-mosaic-dropdown.umd.min.js.map +0 -1
  545. package/bundles/ptsecurity-mosaic-form-field.umd.min.js +0 -17
  546. package/bundles/ptsecurity-mosaic-form-field.umd.min.js.map +0 -1
  547. package/bundles/ptsecurity-mosaic-icon.umd.min.js +0 -16
  548. package/bundles/ptsecurity-mosaic-icon.umd.min.js.map +0 -1
  549. package/bundles/ptsecurity-mosaic-input.umd.min.js +0 -16
  550. package/bundles/ptsecurity-mosaic-input.umd.min.js.map +0 -1
  551. package/bundles/ptsecurity-mosaic-link.umd.min.js +0 -16
  552. package/bundles/ptsecurity-mosaic-link.umd.min.js.map +0 -1
  553. package/bundles/ptsecurity-mosaic-list.umd.min.js +0 -16
  554. package/bundles/ptsecurity-mosaic-list.umd.min.js.map +0 -1
  555. package/bundles/ptsecurity-mosaic-modal.umd.min.js +0 -16
  556. package/bundles/ptsecurity-mosaic-modal.umd.min.js.map +0 -1
  557. package/bundles/ptsecurity-mosaic-navbar.umd.min.js +0 -16
  558. package/bundles/ptsecurity-mosaic-navbar.umd.min.js.map +0 -1
  559. package/bundles/ptsecurity-mosaic-popover.umd.min.js +0 -16
  560. package/bundles/ptsecurity-mosaic-popover.umd.min.js.map +0 -1
  561. package/bundles/ptsecurity-mosaic-progress-bar.umd.min.js +0 -16
  562. package/bundles/ptsecurity-mosaic-progress-bar.umd.min.js.map +0 -1
  563. package/bundles/ptsecurity-mosaic-progress-spinner.umd.min.js +0 -16
  564. package/bundles/ptsecurity-mosaic-progress-spinner.umd.min.js.map +0 -1
  565. package/bundles/ptsecurity-mosaic-radio.umd.min.js +0 -16
  566. package/bundles/ptsecurity-mosaic-radio.umd.min.js.map +0 -1
  567. package/bundles/ptsecurity-mosaic-select.umd.min.js +0 -16
  568. package/bundles/ptsecurity-mosaic-select.umd.min.js.map +0 -1
  569. package/bundles/ptsecurity-mosaic-sidebar.umd.min.js +0 -2
  570. package/bundles/ptsecurity-mosaic-sidebar.umd.min.js.map +0 -1
  571. package/bundles/ptsecurity-mosaic-sidepanel.umd.min.js +0 -2
  572. package/bundles/ptsecurity-mosaic-sidepanel.umd.min.js.map +0 -1
  573. package/bundles/ptsecurity-mosaic-splitter.umd.min.js +0 -2
  574. package/bundles/ptsecurity-mosaic-splitter.umd.min.js.map +0 -1
  575. package/bundles/ptsecurity-mosaic-table.umd.min.js +0 -2
  576. package/bundles/ptsecurity-mosaic-table.umd.min.js.map +0 -1
  577. package/bundles/ptsecurity-mosaic-tabs.umd.min.js +0 -16
  578. package/bundles/ptsecurity-mosaic-tabs.umd.min.js.map +0 -1
  579. package/bundles/ptsecurity-mosaic-tags.umd.min.js +0 -16
  580. package/bundles/ptsecurity-mosaic-tags.umd.min.js.map +0 -1
  581. package/bundles/ptsecurity-mosaic-textarea.umd.min.js +0 -16
  582. package/bundles/ptsecurity-mosaic-textarea.umd.min.js.map +0 -1
  583. package/bundles/ptsecurity-mosaic-timepicker.umd.min.js +0 -2
  584. package/bundles/ptsecurity-mosaic-timepicker.umd.min.js.map +0 -1
  585. package/bundles/ptsecurity-mosaic-toggle.umd.min.js +0 -16
  586. package/bundles/ptsecurity-mosaic-toggle.umd.min.js.map +0 -1
  587. package/bundles/ptsecurity-mosaic-tooltip.umd.min.js +0 -16
  588. package/bundles/ptsecurity-mosaic-tooltip.umd.min.js.map +0 -1
  589. package/bundles/ptsecurity-mosaic-tree-select.umd.min.js +0 -16
  590. package/bundles/ptsecurity-mosaic-tree-select.umd.min.js.map +0 -1
  591. package/bundles/ptsecurity-mosaic-tree.umd.min.js +0 -16
  592. package/bundles/ptsecurity-mosaic-tree.umd.min.js.map +0 -1
  593. package/bundles/ptsecurity-mosaic.umd.min.js +0 -2
  594. package/bundles/ptsecurity-mosaic.umd.min.js.map +0 -1
  595. package/button/ptsecurity-mosaic-button.metadata.json +0 -1
  596. package/button-toggle/ptsecurity-mosaic-button-toggle.metadata.json +0 -1
  597. package/card/ptsecurity-mosaic-card.metadata.json +0 -1
  598. package/checkbox/ptsecurity-mosaic-checkbox.metadata.json +0 -1
  599. package/core/ptsecurity-mosaic-core.metadata.json +0 -1
  600. package/datepicker/ptsecurity-mosaic-datepicker.metadata.json +0 -1
  601. package/design-tokens/ptsecurity-mosaic-design-tokens.metadata.json +0 -1
  602. package/divider/ptsecurity-mosaic-divider.metadata.json +0 -1
  603. package/dropdown/ptsecurity-mosaic-dropdown.metadata.json +0 -1
  604. package/esm2015/tree/node.directive.js +0 -15
  605. package/form-field/ptsecurity-mosaic-form-field.metadata.json +0 -1
  606. package/icon/ptsecurity-mosaic-icon.metadata.json +0 -1
  607. package/input/ptsecurity-mosaic-input.metadata.json +0 -1
  608. package/link/ptsecurity-mosaic-link.metadata.json +0 -1
  609. package/list/ptsecurity-mosaic-list.metadata.json +0 -1
  610. package/modal/ptsecurity-mosaic-modal.metadata.json +0 -1
  611. package/navbar/ptsecurity-mosaic-navbar.metadata.json +0 -1
  612. package/popover/ptsecurity-mosaic-popover.metadata.json +0 -1
  613. package/progress-bar/ptsecurity-mosaic-progress-bar.metadata.json +0 -1
  614. package/progress-spinner/ptsecurity-mosaic-progress-spinner.metadata.json +0 -1
  615. package/ptsecurity-mosaic.metadata.json +0 -1
  616. package/radio/ptsecurity-mosaic-radio.metadata.json +0 -1
  617. package/select/ptsecurity-mosaic-select.metadata.json +0 -1
  618. package/sidebar/ptsecurity-mosaic-sidebar.metadata.json +0 -1
  619. package/sidepanel/ptsecurity-mosaic-sidepanel.metadata.json +0 -1
  620. package/splitter/ptsecurity-mosaic-splitter.metadata.json +0 -1
  621. package/table/ptsecurity-mosaic-table.metadata.json +0 -1
  622. package/tabs/ptsecurity-mosaic-tabs.metadata.json +0 -1
  623. package/tags/ptsecurity-mosaic-tags.metadata.json +0 -1
  624. package/textarea/ptsecurity-mosaic-textarea.metadata.json +0 -1
  625. package/timepicker/ptsecurity-mosaic-timepicker.metadata.json +0 -1
  626. package/toggle/ptsecurity-mosaic-toggle.metadata.json +0 -1
  627. package/tooltip/ptsecurity-mosaic-tooltip.metadata.json +0 -1
  628. package/tree/node.directive.d.ts +0 -4
  629. package/tree/ptsecurity-mosaic-tree.metadata.json +0 -1
  630. package/tree-select/ptsecurity-mosaic-tree-select.metadata.json +0 -1
@@ -1,16 +1,41 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/overlay'), require('@angular/common'), require('@ptsecurity/mosaic/icon'), require('@angular/cdk/portal'), require('rxjs'), require('@angular/cdk/a11y'), require('@ptsecurity/mosaic/core'), require('@angular/cdk/bidi'), require('@angular/cdk/platform'), require('@ptsecurity/cdk/keycodes'), require('rxjs/operators'), require('@angular/cdk/coercion'), require('@angular/cdk/keycodes'), require('@ptsecurity/cdk/a11y'), require('@angular/animations')) :
3
- typeof define === 'function' && define.amd ? define('@ptsecurity/mosaic/dropdown', ['exports', '@angular/core', '@angular/cdk/overlay', '@angular/common', '@ptsecurity/mosaic/icon', '@angular/cdk/portal', 'rxjs', '@angular/cdk/a11y', '@ptsecurity/mosaic/core', '@angular/cdk/bidi', '@angular/cdk/platform', '@ptsecurity/cdk/keycodes', 'rxjs/operators', '@angular/cdk/coercion', '@angular/cdk/keycodes', '@ptsecurity/cdk/a11y', '@angular/animations'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.ptsecurity = global.ptsecurity || {}, global.ptsecurity.mosaic = global.ptsecurity.mosaic || {}, global.ptsecurity.mosaic.dropdown = {}), global.ng.core, global.ng.cdk.overlay, global.ng.common, global.ptsecurity.mosaic.icon, global.ng.cdk.portal, global.rxjs, global.ng.cdk.a11y, global.ptsecurity.mosaic.core, global.ng.cdk.bidi, global.ng.cdk.platform, global.mc.cdk.keycodes, global.rxjs.operators, global.ng.cdk.coercion, global.ng.cdk.keycodes, global.mc.cdk.a11y, global.ng.animations));
5
- }(this, (function (exports, core, overlay, common, icon, portal, rxjs, a11y, core$1, bidi, platform, keycodes$1, operators, coercion, keycodes, a11y$1, animations) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/overlay'), require('@angular/common'), require('@ptsecurity/mosaic/icon'), require('@angular/cdk/portal'), require('rxjs'), require('@ptsecurity/mosaic/core'), require('@angular/cdk/a11y'), require('@angular/cdk/platform'), require('@ptsecurity/cdk/keycodes'), require('rxjs/operators'), require('@angular/cdk/coercion'), require('@angular/cdk/keycodes'), require('@ptsecurity/cdk/a11y'), require('@angular/animations'), require('@angular/cdk/bidi')) :
3
+ typeof define === 'function' && define.amd ? define('@ptsecurity/mosaic/dropdown', ['exports', '@angular/core', '@angular/cdk/overlay', '@angular/common', '@ptsecurity/mosaic/icon', '@angular/cdk/portal', 'rxjs', '@ptsecurity/mosaic/core', '@angular/cdk/a11y', '@angular/cdk/platform', '@ptsecurity/cdk/keycodes', 'rxjs/operators', '@angular/cdk/coercion', '@angular/cdk/keycodes', '@ptsecurity/cdk/a11y', '@angular/animations', '@angular/cdk/bidi'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.ptsecurity = global.ptsecurity || {}, global.ptsecurity.mosaic = global.ptsecurity.mosaic || {}, global.ptsecurity.mosaic.dropdown = {}), global.ng.core, global.ng.cdk.overlay, global.ng.common, global.ptsecurity.mosaic.icon, global.ng.cdk.portal, global.rxjs, global.ptsecurity.mosaic.core, global.ng.cdk.a11y, global.ng.cdk.platform, global.mc.cdk.keycodes, global.rxjs.operators, global.ng.cdk.coercion, global.ng.cdk.keycodes, global.mc.cdk.a11y, global.ng.animations, global.ng.cdk.bidi));
5
+ })(this, (function (exports, i0, i1$1, i3, i2, portal, rxjs, core, i1, platform, keycodes$1, operators, coercion, keycodes, a11y, animations, i4) { 'use strict';
6
+
7
+ function _interopNamespace(e) {
8
+ if (e && e.__esModule) return e;
9
+ var n = Object.create(null);
10
+ if (e) {
11
+ Object.keys(e).forEach(function (k) {
12
+ if (k !== 'default') {
13
+ var d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: function () { return e[k]; }
17
+ });
18
+ }
19
+ });
20
+ }
21
+ n["default"] = e;
22
+ return Object.freeze(n);
23
+ }
24
+
25
+ var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
26
+ var i1__namespace$1 = /*#__PURE__*/_interopNamespace(i1$1);
27
+ var i3__namespace = /*#__PURE__*/_interopNamespace(i3);
28
+ var i2__namespace = /*#__PURE__*/_interopNamespace(i2);
29
+ var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
30
+ var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
6
31
 
7
32
  /**
8
33
  * Injection token used to provide the parent dropdown to dropdown-specific components.
9
34
  * @docs-private
10
35
  */
11
- var MC_DROPDOWN_PANEL = new core.InjectionToken('MC_DROPDOWN_PANEL');
36
+ var MC_DROPDOWN_PANEL = new i0.InjectionToken('MC_DROPDOWN_PANEL');
12
37
  /** Injection token to be used to override the default options for `mc-dropdown`. */
13
- var MC_DROPDOWN_DEFAULT_OPTIONS = new core.InjectionToken('mc-dropdown-default-options', {
38
+ var MC_DROPDOWN_DEFAULT_OPTIONS = new i0.InjectionToken('mc-dropdown-default-options', {
14
39
  providedIn: 'root',
15
40
  factory: MC_DROPDOWN_DEFAULT_OPTIONS_FACTORY
16
41
  });
@@ -78,20 +103,19 @@
78
103
  };
79
104
  return McDropdownContent;
80
105
  }());
81
- McDropdownContent.decorators = [
82
- { type: core.Directive, args: [{
83
- selector: 'ng-template[mcDropdownContent]'
84
- },] }
85
- ];
86
- /** @nocollapse */
87
- McDropdownContent.ctorParameters = function () { return [
88
- { type: core.TemplateRef },
89
- { type: core.ComponentFactoryResolver },
90
- { type: core.ApplicationRef },
91
- { type: core.Injector },
92
- { type: core.ViewContainerRef },
93
- { type: undefined, decorators: [{ type: core.Inject, args: [common.DOCUMENT,] }] }
94
- ]; };
106
+ /** @nocollapse */ McDropdownContent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownContent, deps: [{ token: i0__namespace.TemplateRef }, { token: i0__namespace.ComponentFactoryResolver }, { token: i0__namespace.ApplicationRef }, { token: i0__namespace.Injector }, { token: i0__namespace.ViewContainerRef }, { token: i3.DOCUMENT }], target: i0__namespace.ɵɵFactoryTarget.Directive });
107
+ /** @nocollapse */ McDropdownContent.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: McDropdownContent, selector: "ng-template[mcDropdownContent]", ngImport: i0__namespace });
108
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownContent, decorators: [{
109
+ type: i0.Directive,
110
+ args: [{
111
+ selector: 'ng-template[mcDropdownContent]'
112
+ }]
113
+ }], ctorParameters: function () {
114
+ return [{ type: i0__namespace.TemplateRef }, { type: i0__namespace.ComponentFactoryResolver }, { type: i0__namespace.ApplicationRef }, { type: i0__namespace.Injector }, { type: i0__namespace.ViewContainerRef }, { type: undefined, decorators: [{
115
+ type: i0.Inject,
116
+ args: [i3.DOCUMENT]
117
+ }] }];
118
+ } });
95
119
 
96
120
  /*! *****************************************************************************
97
121
  Copyright (c) Microsoft Corporation.
@@ -419,7 +443,7 @@
419
443
  return McDropdownItemBase;
420
444
  }());
421
445
  // tslint:disable-next-line:naming-convention
422
- var McDropdownItemMixinBase = core$1.mixinDisabled(McDropdownItemBase);
446
+ var McDropdownItemMixinBase = core.mixinDisabled(McDropdownItemBase);
423
447
  /**
424
448
  * This directive is intended to be used inside an mc-dropdown tag.
425
449
  * It exists mostly to set the role attribute.
@@ -513,35 +537,43 @@
513
537
  };
514
538
  return McDropdownItem;
515
539
  }(McDropdownItemMixinBase));
516
- McDropdownItem.decorators = [
517
- { type: core.Component, args: [{
518
- selector: 'mc-dropdown-item, [mc-dropdown-item]',
519
- exportAs: 'mcDropdownItem',
520
- template: "<div class=\"mc-dropdown-item-wrapper\">\n <ng-content></ng-content>\n</div>\n<i *ngIf=\"isNested\" mc-icon=\"mc-angle-right-M_16\" class=\"mc-dropdown-trigger__icon\"></i>\n",
521
- inputs: ['disabled'],
522
- host: {
523
- class: 'mc-dropdown-item',
524
- '[class.mc-dropdown-item_with-icon]': 'icon',
525
- '[class.mc-dropdown-item_highlighted]': 'highlighted',
526
- '[attr.disabled]': 'disabled || null',
527
- '[attr.tabindex]': 'getTabIndex()'
528
- },
529
- changeDetection: core.ChangeDetectionStrategy.OnPush,
530
- encapsulation: core.ViewEncapsulation.None,
531
- styles: [".mc-dropdown-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;position:relative;box-sizing:border-box;width:100%;border:1px solid transparent;outline:none;padding:0;text-align:left;white-space:nowrap}.mc-dropdown-item:not([disabled]){cursor:pointer}.mc-dropdown-item .mc-dropdown-item__caption{margin-top:4px}.mc-dropdown-item.mc-dropdown-item_with-icon .mc-dropdown-item__caption{margin-left:24px}.mc-dropdown-item .docs-navbar-version__num{margin-right:4px}.mc-dropdown-item-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:var(--mc-dropdown-item-size-padding,5px 15px)}.mc-dropdown-item-wrapper [mc-icon]{padding:var(--mc-dropdown-item-size-icon-padding,0 8px 2px 0)}.mc-dropdown-trigger__icon{margin-left:auto;padding-right:var(--dropdown-trigger-size-icon-padding-right,8px)}.mc-dropdown__group-header{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:var(--mc-dropdown-item-size-padding,6px 15px)}.mc-dropdown__group-header.mc-dropdown__group-header_small{padding:var(--mc-dropdown-item-size-padding,8px 15px)}.mc-dropdown__divider{height:var(--mc-dropdown-divider-size-height,1px);margin:var(--mc-dropdown-divider-size-margin,4px 0)}"]
532
- },] }
533
- ];
534
- /** @nocollapse */
535
- McDropdownItem.ctorParameters = function () { return [
536
- { type: core.ElementRef },
537
- { type: a11y.FocusMonitor },
538
- { type: undefined, decorators: [{ type: core.Inject, args: [MC_DROPDOWN_PANEL,] }, { type: core.Optional }] }
539
- ]; };
540
- McDropdownItem.propDecorators = {
541
- icon: [{ type: core.ContentChild, args: [icon.McIcon,] }],
542
- checkDisabled: [{ type: core.HostListener, args: ['click', ['$event'],] }],
543
- handleMouseEnter: [{ type: core.HostListener, args: ['mouseenter',] }]
544
- };
540
+ /** @nocollapse */ McDropdownItem.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownItem, deps: [{ token: i0__namespace.ElementRef }, { token: i1__namespace.FocusMonitor }, { token: MC_DROPDOWN_PANEL, optional: true }], target: i0__namespace.ɵɵFactoryTarget.Component });
541
+ /** @nocollapse */ McDropdownItem.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: McDropdownItem, selector: "mc-dropdown-item, [mc-dropdown-item]", inputs: { disabled: "disabled" }, host: { listeners: { "click": "checkDisabled($event)", "mouseenter": "handleMouseEnter()" }, properties: { "class.mc-dropdown-item_with-icon": "icon", "class.mc-dropdown-item_highlighted": "highlighted", "attr.disabled": "disabled || null", "attr.tabindex": "getTabIndex()" }, classAttribute: "mc-dropdown-item" }, queries: [{ propertyName: "icon", first: true, predicate: i2.McIcon, descendants: true }], exportAs: ["mcDropdownItem"], usesInheritance: true, ngImport: i0__namespace, template: "<div class=\"mc-dropdown-item-wrapper\">\n <ng-content></ng-content>\n</div>\n<i *ngIf=\"isNested\" mc-icon=\"mc-angle-right-M_16\" class=\"mc-dropdown-trigger__icon\"></i>\n", styles: [".mc-dropdown-item{-webkit-user-select:none;user-select:none;display:flex;align-items:center;position:relative;box-sizing:border-box;width:100%;border:1px solid transparent;outline:none;padding:0;text-align:left;white-space:nowrap}.mc-dropdown-item:not([disabled]){cursor:pointer}.mc-dropdown-item .mc-dropdown-item__caption{margin-top:4px}.mc-dropdown-item.mc-dropdown-item_with-icon .mc-dropdown-item__caption{margin-left:24px}.mc-dropdown-item .docs-navbar-version__num{margin-right:4px}.mc-dropdown-item-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 15px;padding:var(--mc-dropdown-item-size-padding, 5px 15px)}.mc-dropdown-item-wrapper [mc-icon]{padding:0 8px 2px 0;padding:var(--mc-dropdown-item-size-icon-padding, 0 8px 2px 0)}.mc-dropdown-trigger__icon{margin-left:auto;padding-right:8px;padding-right:var(--dropdown-trigger-size-icon-padding-right, 8px)}.mc-dropdown__group-header{-webkit-user-select:none;user-select:none;padding:6px 15px;padding:var(--mc-dropdown-item-size-padding, 6px 15px)}.mc-dropdown__group-header.mc-dropdown__group-header_small{padding:8px 15px;padding:var(--mc-dropdown-item-size-padding, 8px 15px)}.mc-dropdown__divider{height:1px;height:var(--mc-dropdown-divider-size-height, 1px);margin:4px 0;margin:var(--mc-dropdown-divider-size-margin, 4px 0)}\n"], components: [{ type: i2__namespace.McIcon, selector: "[mc-icon]", inputs: ["color"] }], directives: [{ type: i3__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace.McIconCSSStyler, selector: "[mc-icon]" }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
542
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownItem, decorators: [{
543
+ type: i0.Component,
544
+ args: [{
545
+ selector: 'mc-dropdown-item, [mc-dropdown-item]',
546
+ exportAs: 'mcDropdownItem',
547
+ templateUrl: 'dropdown-item.html',
548
+ styleUrls: ['dropdown-item.scss'],
549
+ inputs: ['disabled'],
550
+ host: {
551
+ class: 'mc-dropdown-item',
552
+ '[class.mc-dropdown-item_with-icon]': 'icon',
553
+ '[class.mc-dropdown-item_highlighted]': 'highlighted',
554
+ '[attr.disabled]': 'disabled || null',
555
+ '[attr.tabindex]': 'getTabIndex()'
556
+ },
557
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
558
+ encapsulation: i0.ViewEncapsulation.None
559
+ }]
560
+ }], ctorParameters: function () {
561
+ return [{ type: i0__namespace.ElementRef }, { type: i1__namespace.FocusMonitor }, { type: undefined, decorators: [{
562
+ type: i0.Inject,
563
+ args: [MC_DROPDOWN_PANEL]
564
+ }, {
565
+ type: i0.Optional
566
+ }] }];
567
+ }, propDecorators: { icon: [{
568
+ type: i0.ContentChild,
569
+ args: [i2.McIcon]
570
+ }], checkDisabled: [{
571
+ type: i0.HostListener,
572
+ args: ['click', ['$event']]
573
+ }], handleMouseEnter: [{
574
+ type: i0.HostListener,
575
+ args: ['mouseenter']
576
+ }] } });
545
577
 
546
578
  /**
547
579
  * Throws an exception for the case when dropdown trigger doesn't have a valid mc-dropdown instance
@@ -628,9 +660,9 @@
628
660
  /** Class to be added to the backdrop element. */
629
661
  this.backdropClass = this.defaultOptions.backdropClass;
630
662
  /** Event emitted when the dropdown is closed. */
631
- this.closed = new core.EventEmitter();
663
+ this.closed = new i0.EventEmitter();
632
664
  /** Only the direct descendant menu items. */
633
- this.directDescendantItems = new core.QueryList();
665
+ this.directDescendantItems = new i0.QueryList();
634
666
  /** Subscription to tab events on the dropdown panel */
635
667
  this.tabSubscription = rxjs.Subscription.EMPTY;
636
668
  }
@@ -729,7 +761,7 @@
729
761
  McDropdown.prototype.ngAfterContentInit = function () {
730
762
  var _this = this;
731
763
  this.updateDirectDescendants();
732
- this.keyManager = new a11y$1.FocusKeyManager(this.directDescendantItems)
764
+ this.keyManager = new a11y.FocusKeyManager(this.directDescendantItems)
733
765
  .withTypeAhead();
734
766
  if (this.navigationWithWrap) {
735
767
  this.keyManager.withWrap();
@@ -740,7 +772,7 @@
740
772
  // change back to the key manager. Note that we don't need to unsubscribe here because focused
741
773
  // is internal and we know that it gets completed on destroy.
742
774
  this.directDescendantItems.changes
743
- .pipe(operators.startWith(this.directDescendantItems), operators.switchMap(function (items) { return rxjs.merge.apply(void 0, __spread(items.map(function (item) { return item.focused; }))); }))
775
+ .pipe(operators.startWith(this.directDescendantItems), operators.switchMap(function (items) { return rxjs.merge.apply(void 0, __spreadArray([], __read(items.map(function (item) { return item.focused; })))); }))
744
776
  .subscribe(function (focusedItem) { return _this.keyManager.updateActiveItem(focusedItem); });
745
777
  };
746
778
  McDropdown.prototype.ngOnDestroy = function () {
@@ -751,7 +783,7 @@
751
783
  /** Stream that emits whenever the hovered dropdown item changes. */
752
784
  McDropdown.prototype.hovered = function () {
753
785
  var itemChanges = this.directDescendantItems.changes;
754
- return itemChanges.pipe(operators.startWith(this.directDescendantItems), operators.switchMap(function (items) { return rxjs.merge.apply(void 0, __spread(items.map(function (item) { return item.hovered; }))); }));
786
+ return itemChanges.pipe(operators.startWith(this.directDescendantItems), operators.switchMap(function (items) { return rxjs.merge.apply(void 0, __spreadArray([], __read(items.map(function (item) { return item.hovered; })))); }));
755
787
  };
756
788
  /** Handle a keyboard event from the dropdown, delegating to the appropriate action. */
757
789
  McDropdown.prototype.handleKeydown = function (event) {
@@ -849,6 +881,10 @@
849
881
  event.element.scrollTop = 0;
850
882
  }
851
883
  };
884
+ McDropdown.prototype.close = function () {
885
+ var focusOrigin = this.keyManager.getFocusOrigin() === 'keyboard' ? 'keydown' : 'click';
886
+ this.closed.emit(focusOrigin);
887
+ };
852
888
  /**
853
889
  * Sets up a stream that will keep track of any newly-added menu items and will update the list
854
890
  * of direct descendants. We collect the descendants this way, because `_allItems` can include
@@ -866,46 +902,67 @@
866
902
  };
867
903
  return McDropdown;
868
904
  }());
869
- McDropdown.decorators = [
870
- { type: core.Component, args: [{
871
- selector: 'mc-dropdown',
872
- exportAs: 'mcDropdown',
873
- template: "<ng-template>\n <div class=\"mc-dropdown__panel\"\n [ngClass]=\"classList\"\n [class.mc-dropdown__panel_nested]=\"parent\"\n [style.min-width]=\"triggerWidth\"\n (keydown)=\"handleKeydown($event)\"\n (click)=\"closed.emit('click')\"\n [@transformDropdown]=\"panelAnimationState\"\n (@transformDropdown.start)=\"onAnimationStart($event)\"\n (@transformDropdown.done)=\"onAnimationDone($event)\"\n tabindex=\"-1\">\n\n <div class=\"mc-dropdown__content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n",
874
- changeDetection: core.ChangeDetectionStrategy.OnPush,
875
- encapsulation: core.ViewEncapsulation.None,
876
- animations: [
877
- mcDropdownAnimations.transformDropdown,
878
- mcDropdownAnimations.fadeInItems
879
- ],
880
- providers: [
881
- { provide: MC_DROPDOWN_PANEL, useExisting: McDropdown }
882
- ],
883
- styles: [".mc-dropdown__panel{margin-top:-1px;max-width:var(--mc-dropdown-panel-size-max-width,640px);border-width:var(--mc-dropdown-panel-size-border-width,1px);border-style:solid;border-bottom-left-radius:var(--mc-dropdown-panel-size-border-radius,3px);border-bottom-right-radius:var(--mc-dropdown-panel-size-border-radius,3px);padding:var(--mc-dropdown-panel-size-padding,4px 0)}.mc-dropdown__panel.mc-dropdown__panel_nested{border-top-left-radius:var(--mc-dropdown-panel-size-border-radius,3px);border-top-right-radius:var(--mc-dropdown-panel-size-border-radius,3px)}.mc-dropdown__panel.ng-animating{pointer-events:none}.mc-dropdown__content{display:flex;flex-direction:column}"]
884
- },] }
885
- ];
886
- /** @nocollapse */
887
- McDropdown.ctorParameters = function () { return [
888
- { type: core.ElementRef },
889
- { type: core.NgZone },
890
- { type: undefined, decorators: [{ type: core.Inject, args: [MC_DROPDOWN_DEFAULT_OPTIONS,] }] }
891
- ]; };
892
- McDropdown.propDecorators = {
893
- navigationWithWrap: [{ type: core.Input }],
894
- xPosition: [{ type: core.Input }],
895
- yPosition: [{ type: core.Input }],
896
- overlapTriggerY: [{ type: core.Input }],
897
- overlapTriggerX: [{ type: core.Input }],
898
- hasBackdrop: [{ type: core.Input }],
899
- panelClass: [{ type: core.Input, args: ['class',] }],
900
- backdropClass: [{ type: core.Input }],
901
- templateRef: [{ type: core.ViewChild, args: [core.TemplateRef, { static: false },] }],
902
- items: [{ type: core.ContentChildren, args: [McDropdownItem, { descendants: true },] }],
903
- lazyContent: [{ type: core.ContentChild, args: [McDropdownContent, { static: false },] }],
904
- closed: [{ type: core.Output }]
905
- };
905
+ /** @nocollapse */ McDropdown.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdown, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.NgZone }, { token: MC_DROPDOWN_DEFAULT_OPTIONS }], target: i0__namespace.ɵɵFactoryTarget.Component });
906
+ /** @nocollapse */ McDropdown.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: McDropdown, selector: "mc-dropdown", inputs: { navigationWithWrap: "navigationWithWrap", xPosition: "xPosition", yPosition: "yPosition", overlapTriggerY: "overlapTriggerY", overlapTriggerX: "overlapTriggerX", hasBackdrop: "hasBackdrop", panelClass: ["class", "panelClass"], backdropClass: "backdropClass" }, outputs: { closed: "closed" }, providers: [
907
+ { provide: MC_DROPDOWN_PANEL, useExisting: McDropdown }
908
+ ], queries: [{ propertyName: "lazyContent", first: true, predicate: McDropdownContent, descendants: true }, { propertyName: "items", predicate: McDropdownItem, descendants: true }], viewQueries: [{ propertyName: "templateRef", first: true, predicate: i0.TemplateRef, descendants: true }], exportAs: ["mcDropdown"], ngImport: i0__namespace, template: "<ng-template>\n <div class=\"mc-dropdown__panel\"\n [ngClass]=\"classList\"\n [class.mc-dropdown__panel_nested]=\"parent\"\n [style.min-width]=\"triggerWidth\"\n (keydown)=\"handleKeydown($event)\"\n (click)=\"close()\"\n [@transformDropdown]=\"panelAnimationState\"\n (@transformDropdown.start)=\"onAnimationStart($event)\"\n (@transformDropdown.done)=\"onAnimationDone($event)\"\n tabindex=\"-1\">\n\n <div class=\"mc-dropdown__content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".mc-dropdown__panel{margin-top:-1px;max-width:640px;max-width:var(--mc-dropdown-panel-size-max-width, 640px);border-width:1px;border-width:var(--mc-dropdown-panel-size-border-width, 1px);border-style:solid;border-bottom-left-radius:3px;border-bottom-left-radius:var(--mc-dropdown-panel-size-border-radius, 3px);border-bottom-right-radius:3px;border-bottom-right-radius:var(--mc-dropdown-panel-size-border-radius, 3px);padding:4px 0;padding:var(--mc-dropdown-panel-size-padding, 4px 0)}.mc-dropdown__panel.mc-dropdown__panel_nested{border-top-left-radius:3px;border-top-left-radius:var(--mc-dropdown-panel-size-border-radius, 3px);border-top-right-radius:3px;border-top-right-radius:var(--mc-dropdown-panel-size-border-radius, 3px)}.mc-dropdown__panel.ng-animating{pointer-events:none}.mc-dropdown__content{display:flex;flex-direction:column}\n"], directives: [{ type: i3__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [
909
+ mcDropdownAnimations.transformDropdown,
910
+ mcDropdownAnimations.fadeInItems
911
+ ], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
912
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdown, decorators: [{
913
+ type: i0.Component,
914
+ args: [{
915
+ selector: 'mc-dropdown',
916
+ exportAs: 'mcDropdown',
917
+ templateUrl: 'dropdown.html',
918
+ styleUrls: ['dropdown.scss'],
919
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
920
+ encapsulation: i0.ViewEncapsulation.None,
921
+ animations: [
922
+ mcDropdownAnimations.transformDropdown,
923
+ mcDropdownAnimations.fadeInItems
924
+ ],
925
+ providers: [
926
+ { provide: MC_DROPDOWN_PANEL, useExisting: McDropdown }
927
+ ]
928
+ }]
929
+ }], ctorParameters: function () {
930
+ return [{ type: i0__namespace.ElementRef }, { type: i0__namespace.NgZone }, { type: undefined, decorators: [{
931
+ type: i0.Inject,
932
+ args: [MC_DROPDOWN_DEFAULT_OPTIONS]
933
+ }] }];
934
+ }, propDecorators: { navigationWithWrap: [{
935
+ type: i0.Input
936
+ }], xPosition: [{
937
+ type: i0.Input
938
+ }], yPosition: [{
939
+ type: i0.Input
940
+ }], overlapTriggerY: [{
941
+ type: i0.Input
942
+ }], overlapTriggerX: [{
943
+ type: i0.Input
944
+ }], hasBackdrop: [{
945
+ type: i0.Input
946
+ }], panelClass: [{
947
+ type: i0.Input,
948
+ args: ['class']
949
+ }], backdropClass: [{
950
+ type: i0.Input
951
+ }], templateRef: [{
952
+ type: i0.ViewChild,
953
+ args: [i0.TemplateRef, { static: false }]
954
+ }], items: [{
955
+ type: i0.ContentChildren,
956
+ args: [McDropdownItem, { descendants: true }]
957
+ }], lazyContent: [{
958
+ type: i0.ContentChild,
959
+ args: [McDropdownContent, { static: false }]
960
+ }], closed: [{
961
+ type: i0.Output
962
+ }] } });
906
963
 
907
964
  /** Injection token that determines the scroll handling while the dropdown is open. */
908
- var MC_DROPDOWN_SCROLL_STRATEGY = new core.InjectionToken('mc-dropdown-scroll-strategy');
965
+ var MC_DROPDOWN_SCROLL_STRATEGY = new i0.InjectionToken('mc-dropdown-scroll-strategy');
909
966
  /** @docs-private */
910
967
  // tslint:disable-next-line:naming-convention
911
968
  function MC_DROPDOWN_SCROLL_STRATEGY_FACTORY(overlay) {
@@ -914,7 +971,7 @@
914
971
  /** @docs-private */
915
972
  var MC_DROPDOWN_SCROLL_STRATEGY_FACTORY_PROVIDER = {
916
973
  provide: MC_DROPDOWN_SCROLL_STRATEGY,
917
- deps: [overlay.Overlay],
974
+ deps: [i1$1.Overlay],
918
975
  useFactory: MC_DROPDOWN_SCROLL_STRATEGY_FACTORY
919
976
  };
920
977
  /** Default top padding of the nested dropdown panel. */
@@ -945,9 +1002,9 @@
945
1002
  */
946
1003
  this.restoreFocus = true;
947
1004
  /** Event emitted when the associated dropdown is opened. */
948
- this.dropdownOpened = new core.EventEmitter();
1005
+ this.dropdownOpened = new i0.EventEmitter();
949
1006
  /** Event emitted when the associated dropdown is closed. */
950
- this.dropdownClosed = new core.EventEmitter();
1007
+ this.dropdownClosed = new i0.EventEmitter();
951
1008
  this._opened = false;
952
1009
  this.overlayRef = null;
953
1010
  this.closeSubscription = rxjs.Subscription.EMPTY;
@@ -1056,12 +1113,10 @@
1056
1113
  };
1057
1114
  /**
1058
1115
  * Focuses the dropdown trigger.
1059
- * @param origin Source of the dropdown trigger's focus.
1060
1116
  */
1061
- McDropdownTrigger.prototype.focus = function (origin) {
1062
- if (origin === void 0) { origin = 'program'; }
1063
- if (this.focusMonitor) {
1064
- this.focusMonitor.focusVia(this.elementRef.nativeElement, origin);
1117
+ McDropdownTrigger.prototype.focus = function (origin, options) {
1118
+ if (this.focusMonitor && origin) {
1119
+ this.focusMonitor.focusVia(this.elementRef.nativeElement, origin, options);
1065
1120
  }
1066
1121
  else {
1067
1122
  this.elementRef.nativeElement.focus();
@@ -1109,31 +1164,43 @@
1109
1164
  /** Closes the dropdown and does the necessary cleanup. */
1110
1165
  McDropdownTrigger.prototype.destroy = function (reason) {
1111
1166
  var _this = this;
1112
- var _a;
1113
1167
  if (!this.overlayRef || !this.opened) {
1114
1168
  return;
1115
1169
  }
1170
+ this.lastDestroyReason = reason;
1116
1171
  this.dropdown.resetActiveItem();
1117
1172
  this.closeSubscription.unsubscribe();
1118
1173
  this.overlayRef.detach();
1119
- if (this.restoreFocus && reason === 'keydown' && this.isNested()) {
1174
+ if (this.restoreFocus && (reason === 'keydown' || !this.openedBy || !this.isNested())) {
1120
1175
  this.focus(this.openedBy);
1121
1176
  }
1177
+ this.openedBy = undefined;
1122
1178
  if (this.dropdown instanceof McDropdown) {
1123
1179
  this.dropdown.resetAnimation();
1124
- // Wait for the exit animation to finish before reseting dropdown toState.
1125
- var dropdownAnimationDoneSubscription = this.dropdown.animationDone
1180
+ var animationSubscription = this.dropdown.animationDone
1126
1181
  .pipe(operators.filter(function (event) { return event.toState === 'void'; }), operators.take(1));
1127
1182
  if (this.dropdown.lazyContent) {
1128
- dropdownAnimationDoneSubscription
1129
- .pipe(operators.takeUntil(this.dropdown.lazyContent.attached));
1183
+ // Wait for the exit animation to finish before detaching the content.
1184
+ animationSubscription
1185
+ .pipe(
1186
+ // Interrupt if the content got re-attached.
1187
+ operators.takeUntil(this.dropdown.lazyContent.attached))
1188
+ .subscribe({
1189
+ next: function () { return _this.dropdown.lazyContent.detach(); },
1190
+ // No matter whether the content got re-attached, reset the this.dropdown.
1191
+ complete: function () { return _this.setIsOpened(false); }
1192
+ });
1193
+ }
1194
+ else {
1195
+ animationSubscription
1196
+ .subscribe(function () { return _this.setIsOpened(false); });
1130
1197
  }
1131
- dropdownAnimationDoneSubscription
1132
- .subscribe(function () { return _this.reset(); });
1133
1198
  }
1134
1199
  else {
1135
- this.reset();
1136
- (_a = this.dropdown.lazyContent) === null || _a === void 0 ? void 0 : _a.detach();
1200
+ this.setIsOpened(false);
1201
+ if (this.dropdown.lazyContent) {
1202
+ this.dropdown.lazyContent.detach();
1203
+ }
1137
1204
  }
1138
1205
  };
1139
1206
  /**
@@ -1146,27 +1213,8 @@
1146
1213
  if (!this.dropdown.parent) {
1147
1214
  this.dropdown.triggerWidth = this.getWidth();
1148
1215
  }
1216
+ this.dropdown.focusFirstItem(this.openedBy || 'program');
1149
1217
  this.setIsOpened(true);
1150
- this.dropdown.focusFirstItem(this.openedBy);
1151
- };
1152
- /**
1153
- * This method resets the dropdown when it's closed, most importantly restoring
1154
- * focus to the dropdown trigger if the dropdown was opened via the keyboard.
1155
- */
1156
- McDropdownTrigger.prototype.reset = function () {
1157
- this.setIsOpened(false);
1158
- // We should reset focus if the user is navigating using a keyboard or
1159
- // if we have a top-level trigger which might cause focus to be lost
1160
- // when clicking on the backdrop.
1161
- if (!this.openedBy) {
1162
- // Note that the focus style will show up both for `program` and
1163
- // `keyboard` so we don't have to specify which one it is.
1164
- this.focus();
1165
- }
1166
- else if (!this.isNested()) {
1167
- this.focus(this.openedBy);
1168
- }
1169
- this.openedBy = undefined;
1170
1218
  };
1171
1219
  // set state rather than toggle to support triggers sharing a dropdown
1172
1220
  McDropdownTrigger.prototype.setIsOpened = function (isOpen) {
@@ -1208,7 +1256,7 @@
1208
1256
  * @returns OverlayConfig
1209
1257
  */
1210
1258
  McDropdownTrigger.prototype.getOverlayConfig = function () {
1211
- return new overlay.OverlayConfig({
1259
+ return new i1$1.OverlayConfig({
1212
1260
  positionStrategy: this.overlay.position()
1213
1261
  .flexibleConnectedTo(this.elementRef)
1214
1262
  .withLockedPosition()
@@ -1350,66 +1398,94 @@
1350
1398
  };
1351
1399
  return McDropdownTrigger;
1352
1400
  }());
1353
- McDropdownTrigger.decorators = [
1354
- { type: core.Directive, args: [{
1355
- selector: "[mcDropdownTriggerFor]",
1356
- exportAs: 'mcDropdownTrigger',
1357
- host: {
1358
- class: 'mc-dropdown-trigger',
1359
- '[class.mc-pressed]': 'opened',
1360
- '(mousedown)': 'handleMousedown($event)',
1361
- '(keydown)': 'handleKeydown($event)',
1362
- '(click)': 'handleClick($event)'
1363
- }
1364
- },] }
1365
- ];
1366
- /** @nocollapse */
1367
- McDropdownTrigger.ctorParameters = function () { return [
1368
- { type: overlay.Overlay },
1369
- { type: core.ElementRef },
1370
- { type: core.ViewContainerRef },
1371
- { type: undefined, decorators: [{ type: core.Inject, args: [MC_DROPDOWN_SCROLL_STRATEGY,] }] },
1372
- { type: McDropdown, decorators: [{ type: core.Optional }] },
1373
- { type: McDropdownItem, decorators: [{ type: core.Optional }, { type: core.Self }] },
1374
- { type: bidi.Directionality, decorators: [{ type: core.Optional }] },
1375
- { type: a11y.FocusMonitor }
1376
- ]; };
1377
- McDropdownTrigger.propDecorators = {
1378
- data: [{ type: core.Input, args: ['mcDropdownTriggerData',] }],
1379
- openByArrowDown: [{ type: core.Input }],
1380
- restoreFocus: [{ type: core.Input, args: ['mcDropdownTriggerRestoreFocus',] }],
1381
- dropdown: [{ type: core.Input, args: ['mcDropdownTriggerFor',] }],
1382
- dropdownOpened: [{ type: core.Output }],
1383
- dropdownClosed: [{ type: core.Output }]
1384
- };
1401
+ /** @nocollapse */ McDropdownTrigger.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownTrigger, deps: [{ token: i1__namespace$1.Overlay }, { token: i0__namespace.ElementRef }, { token: i0__namespace.ViewContainerRef }, { token: MC_DROPDOWN_SCROLL_STRATEGY }, { token: McDropdown, optional: true }, { token: McDropdownItem, optional: true, self: true }, { token: i4__namespace.Directionality, optional: true }, { token: i1__namespace.FocusMonitor }], target: i0__namespace.ɵɵFactoryTarget.Directive });
1402
+ /** @nocollapse */ McDropdownTrigger.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: McDropdownTrigger, selector: "[mcDropdownTriggerFor]", inputs: { data: ["mcDropdownTriggerData", "data"], openByArrowDown: "openByArrowDown", restoreFocus: ["mcDropdownTriggerRestoreFocus", "restoreFocus"], dropdown: ["mcDropdownTriggerFor", "dropdown"] }, outputs: { dropdownOpened: "dropdownOpened", dropdownClosed: "dropdownClosed" }, host: { listeners: { "mousedown": "handleMousedown($event)", "keydown": "handleKeydown($event)", "click": "handleClick($event)" }, properties: { "class.mc-pressed": "opened" }, classAttribute: "mc-dropdown-trigger" }, exportAs: ["mcDropdownTrigger"], ngImport: i0__namespace });
1403
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownTrigger, decorators: [{
1404
+ type: i0.Directive,
1405
+ args: [{
1406
+ selector: "[mcDropdownTriggerFor]",
1407
+ exportAs: 'mcDropdownTrigger',
1408
+ host: {
1409
+ class: 'mc-dropdown-trigger',
1410
+ '[class.mc-pressed]': 'opened',
1411
+ '(mousedown)': 'handleMousedown($event)',
1412
+ '(keydown)': 'handleKeydown($event)',
1413
+ '(click)': 'handleClick($event)'
1414
+ }
1415
+ }]
1416
+ }], ctorParameters: function () {
1417
+ return [{ type: i1__namespace$1.Overlay }, { type: i0__namespace.ElementRef }, { type: i0__namespace.ViewContainerRef }, { type: undefined, decorators: [{
1418
+ type: i0.Inject,
1419
+ args: [MC_DROPDOWN_SCROLL_STRATEGY]
1420
+ }] }, { type: McDropdown, decorators: [{
1421
+ type: i0.Optional
1422
+ }] }, { type: McDropdownItem, decorators: [{
1423
+ type: i0.Optional
1424
+ }, {
1425
+ type: i0.Self
1426
+ }] }, { type: i4__namespace.Directionality, decorators: [{
1427
+ type: i0.Optional
1428
+ }] }, { type: i1__namespace.FocusMonitor }];
1429
+ }, propDecorators: { data: [{
1430
+ type: i0.Input,
1431
+ args: ['mcDropdownTriggerData']
1432
+ }], openByArrowDown: [{
1433
+ type: i0.Input
1434
+ }], restoreFocus: [{
1435
+ type: i0.Input,
1436
+ args: ['mcDropdownTriggerRestoreFocus']
1437
+ }], dropdown: [{
1438
+ type: i0.Input,
1439
+ args: ['mcDropdownTriggerFor']
1440
+ }], dropdownOpened: [{
1441
+ type: i0.Output
1442
+ }], dropdownClosed: [{
1443
+ type: i0.Output
1444
+ }] } });
1385
1445
 
1386
1446
  var McDropdownModule = /** @class */ (function () {
1387
1447
  function McDropdownModule() {
1388
1448
  }
1389
1449
  return McDropdownModule;
1390
1450
  }());
1391
- McDropdownModule.decorators = [
1392
- { type: core.NgModule, args: [{
1393
- imports: [
1394
- common.CommonModule,
1395
- overlay.OverlayModule,
1396
- icon.McIconModule
1397
- ],
1398
- exports: [
1399
- McDropdown,
1400
- McDropdownItem,
1401
- McDropdownTrigger,
1402
- McDropdownContent
1403
- ],
1404
- declarations: [
1405
- McDropdown,
1406
- McDropdownItem,
1407
- McDropdownTrigger,
1408
- McDropdownContent
1409
- ],
1410
- providers: [MC_DROPDOWN_SCROLL_STRATEGY_FACTORY_PROVIDER]
1411
- },] }
1412
- ];
1451
+ /** @nocollapse */ McDropdownModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1452
+ /** @nocollapse */ McDropdownModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownModule, declarations: [McDropdown,
1453
+ McDropdownItem,
1454
+ McDropdownTrigger,
1455
+ McDropdownContent], imports: [i3.CommonModule,
1456
+ i1$1.OverlayModule,
1457
+ i2.McIconModule], exports: [McDropdown,
1458
+ McDropdownItem,
1459
+ McDropdownTrigger,
1460
+ McDropdownContent] });
1461
+ /** @nocollapse */ McDropdownModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownModule, providers: [MC_DROPDOWN_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [[
1462
+ i3.CommonModule,
1463
+ i1$1.OverlayModule,
1464
+ i2.McIconModule
1465
+ ]] });
1466
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McDropdownModule, decorators: [{
1467
+ type: i0.NgModule,
1468
+ args: [{
1469
+ imports: [
1470
+ i3.CommonModule,
1471
+ i1$1.OverlayModule,
1472
+ i2.McIconModule
1473
+ ],
1474
+ exports: [
1475
+ McDropdown,
1476
+ McDropdownItem,
1477
+ McDropdownTrigger,
1478
+ McDropdownContent
1479
+ ],
1480
+ declarations: [
1481
+ McDropdown,
1482
+ McDropdownItem,
1483
+ McDropdownTrigger,
1484
+ McDropdownContent
1485
+ ],
1486
+ providers: [MC_DROPDOWN_SCROLL_STRATEGY_FACTORY_PROVIDER]
1487
+ }]
1488
+ }] });
1413
1489
 
1414
1490
  /**
1415
1491
  * Generated bundle index. Do not edit.
@@ -1437,5 +1513,5 @@
1437
1513
 
1438
1514
  Object.defineProperty(exports, '__esModule', { value: true });
1439
1515
 
1440
- })));
1516
+ }));
1441
1517
  //# sourceMappingURL=ptsecurity-mosaic-dropdown.umd.js.map