@ptsecurity/mosaic 13.1.0 → 13.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (423) hide show
  1. package/_theming.scss +466 -168
  2. package/_visual.scss +419 -239
  3. package/button/button.component.d.ts +1 -1
  4. package/core/option/option.d.ts +1 -0
  5. package/core/pop-up/pop-up.d.ts +1 -0
  6. package/core/validation/validation.d.ts +3 -3
  7. package/design-tokens/legacy-2017/tokens.d.ts +155 -56
  8. package/design-tokens/pt-2022/tokens.d.ts +151 -52
  9. package/dl/README.md +0 -0
  10. package/dl/dl.component.d.ts +26 -0
  11. package/dl/dl.module.d.ts +10 -0
  12. package/dl/index.d.ts +1 -0
  13. package/dl/package.json +10 -0
  14. package/dl/ptsecurity-mosaic-dl.d.ts +5 -0
  15. package/dl/public-api.d.ts +2 -0
  16. package/esm2020/autocomplete/autocomplete-origin.directive.mjs +3 -3
  17. package/esm2020/autocomplete/autocomplete-trigger.directive.mjs +3 -3
  18. package/esm2020/autocomplete/autocomplete.component.mjs +5 -5
  19. package/esm2020/autocomplete/autocomplete.module.mjs +4 -4
  20. package/esm2020/button/button.component.mjs +29 -21
  21. package/esm2020/button/button.module.mjs +4 -4
  22. package/esm2020/button-toggle/button-toggle.component.mjs +8 -8
  23. package/esm2020/button-toggle/button-toggle.module.mjs +4 -4
  24. package/esm2020/card/card.component.mjs +4 -4
  25. package/esm2020/card/card.module.mjs +4 -4
  26. package/esm2020/checkbox/checkbox-module.mjs +4 -4
  27. package/esm2020/checkbox/checkbox-required-validator.mjs +3 -3
  28. package/esm2020/checkbox/checkbox.mjs +4 -4
  29. package/esm2020/core/common-behaviors/common-module.mjs +4 -4
  30. package/esm2020/core/error/error-options.mjs +6 -6
  31. package/esm2020/core/formatters/date/formatter.mjs +3 -3
  32. package/esm2020/core/formatters/index.mjs +4 -4
  33. package/esm2020/core/formatters/number/formatter.mjs +4 -4
  34. package/esm2020/core/forms/forms-module.mjs +4 -4
  35. package/esm2020/core/forms/forms.directive.mjs +6 -6
  36. package/esm2020/core/highlight/highlight.pipe.mjs +3 -3
  37. package/esm2020/core/highlight/index.mjs +4 -4
  38. package/esm2020/core/line/line.mjs +7 -7
  39. package/esm2020/core/option/action.mjs +3 -3
  40. package/esm2020/core/option/optgroup.mjs +4 -4
  41. package/esm2020/core/option/option-module.mjs +4 -4
  42. package/esm2020/core/option/option.mjs +10 -7
  43. package/esm2020/core/pop-up/pop-up-trigger.mjs +7 -12
  44. package/esm2020/core/pop-up/pop-up.mjs +7 -4
  45. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  46. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +4 -4
  47. package/esm2020/core/services/measure-scrollbar.service.mjs +3 -3
  48. package/esm2020/core/validation/validation.mjs +10 -5
  49. package/esm2020/datepicker/calendar-body.component.mjs +4 -4
  50. package/esm2020/datepicker/calendar.component.mjs +7 -7
  51. package/esm2020/datepicker/datepicker-input.directive.mjs +3 -3
  52. package/esm2020/datepicker/datepicker-intl.mjs +3 -3
  53. package/esm2020/datepicker/datepicker-module.mjs +4 -4
  54. package/esm2020/datepicker/datepicker-toggle.component.mjs +7 -7
  55. package/esm2020/datepicker/datepicker.component.mjs +8 -8
  56. package/esm2020/datepicker/month-view.component.mjs +3 -3
  57. package/esm2020/datepicker/multi-year-view.component.mjs +3 -3
  58. package/esm2020/datepicker/year-view.component.mjs +3 -3
  59. package/esm2020/design-tokens/legacy-2017/tokens.mjs +156 -57
  60. package/esm2020/design-tokens/pt-2022/tokens.mjs +152 -53
  61. package/esm2020/divider/divider.component.mjs +4 -4
  62. package/esm2020/divider/divider.module.mjs +4 -4
  63. package/esm2020/dl/dl.component.mjs +78 -0
  64. package/esm2020/dl/dl.module.mjs +42 -0
  65. package/esm2020/dl/index.mjs +2 -0
  66. package/esm2020/dl/ptsecurity-mosaic-dl.mjs +5 -0
  67. package/esm2020/dl/public-api.mjs +3 -0
  68. package/esm2020/dropdown/dropdown-content.directive.mjs +3 -3
  69. package/esm2020/dropdown/dropdown-item.component.mjs +5 -5
  70. package/esm2020/dropdown/dropdown-trigger.directive.mjs +3 -3
  71. package/esm2020/dropdown/dropdown.component.mjs +6 -6
  72. package/esm2020/dropdown/dropdown.module.mjs +4 -4
  73. package/esm2020/form-field/cleaner.mjs +3 -3
  74. package/esm2020/form-field/form-field.mjs +48 -28
  75. package/esm2020/form-field/form-field.module.mjs +10 -5
  76. package/esm2020/form-field/hint.mjs +6 -6
  77. package/esm2020/form-field/password-hint.mjs +134 -0
  78. package/esm2020/form-field/prefix.mjs +3 -3
  79. package/esm2020/form-field/public-api.mjs +2 -1
  80. package/esm2020/form-field/stepper.mjs +3 -3
  81. package/esm2020/form-field/suffix.mjs +3 -3
  82. package/esm2020/icon/icon.component.mjs +6 -6
  83. package/esm2020/icon/icon.module.mjs +4 -4
  84. package/esm2020/input/input-number-validators.mjs +6 -6
  85. package/esm2020/input/input-number.mjs +3 -3
  86. package/esm2020/input/input-password.mjs +368 -0
  87. package/esm2020/input/input.mjs +12 -11
  88. package/esm2020/input/input.module.mjs +50 -8
  89. package/esm2020/input/public-api.mjs +2 -1
  90. package/esm2020/link/link.component.mjs +3 -3
  91. package/esm2020/link/link.module.mjs +4 -4
  92. package/esm2020/list/list-selection.component.mjs +11 -11
  93. package/esm2020/list/list.component.mjs +7 -7
  94. package/esm2020/list/list.module.mjs +4 -4
  95. package/esm2020/modal/css-unit.pipe.mjs +3 -3
  96. package/esm2020/modal/modal-control.service.mjs +3 -3
  97. package/esm2020/modal/modal.component.mjs +4 -4
  98. package/esm2020/modal/modal.directive.mjs +12 -12
  99. package/esm2020/modal/modal.module.mjs +4 -4
  100. package/esm2020/modal/modal.service.mjs +3 -3
  101. package/esm2020/navbar/navbar-item.component.mjs +86 -79
  102. package/esm2020/navbar/navbar.component.mjs +10 -10
  103. package/esm2020/navbar/navbar.module.mjs +4 -4
  104. package/esm2020/navbar/vertical-navbar.component.mjs +6 -6
  105. package/esm2020/popover/popover-confirm.component.mjs +8 -8
  106. package/esm2020/popover/popover.component.mjs +8 -8
  107. package/esm2020/popover/popover.module.mjs +4 -4
  108. package/esm2020/progress-bar/progress-bar.component.mjs +4 -4
  109. package/esm2020/progress-bar/progress-bar.module.mjs +4 -4
  110. package/esm2020/progress-spinner/progress-spinner.component.mjs +4 -4
  111. package/esm2020/progress-spinner/progress-spinner.module.mjs +4 -4
  112. package/esm2020/radio/radio.component.mjs +7 -7
  113. package/esm2020/radio/radio.module.mjs +4 -4
  114. package/esm2020/select/public-api.mjs +2 -1
  115. package/esm2020/select/select-option.directive.mjs +65 -0
  116. package/esm2020/select/select.component.mjs +16 -16
  117. package/esm2020/select/select.module.mjs +19 -10
  118. package/esm2020/sidebar/sidebar.component.mjs +9 -9
  119. package/esm2020/sidebar/sidebar.module.mjs +4 -4
  120. package/esm2020/sidepanel/sidepanel-container.component.mjs +5 -5
  121. package/esm2020/sidepanel/sidepanel-directives.mjs +18 -18
  122. package/esm2020/sidepanel/sidepanel.module.mjs +4 -4
  123. package/esm2020/sidepanel/sidepanel.service.mjs +3 -3
  124. package/esm2020/splitter/splitter.component.mjs +22 -20
  125. package/esm2020/splitter/splitter.module.mjs +4 -4
  126. package/esm2020/table/table.component.mjs +3 -3
  127. package/esm2020/table/table.module.mjs +4 -4
  128. package/esm2020/tabs/paginated-tab-header.mjs +3 -3
  129. package/esm2020/tabs/tab-body.component.mjs +6 -6
  130. package/esm2020/tabs/tab-content.directive.mjs +3 -3
  131. package/esm2020/tabs/tab-group.component.mjs +20 -20
  132. package/esm2020/tabs/tab-header.component.mjs +4 -4
  133. package/esm2020/tabs/tab-label-wrapper.directive.mjs +3 -3
  134. package/esm2020/tabs/tab-label.directive.mjs +3 -3
  135. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +9 -9
  136. package/esm2020/tabs/tab.component.mjs +3 -3
  137. package/esm2020/tabs/tabs.module.mjs +4 -4
  138. package/esm2020/tags/tag-input.mjs +3 -3
  139. package/esm2020/tags/tag-list.component.mjs +6 -6
  140. package/esm2020/tags/tag.component.mjs +60 -60
  141. package/esm2020/tags/tag.module.mjs +4 -4
  142. package/esm2020/textarea/textarea.component.mjs +9 -8
  143. package/esm2020/textarea/textarea.module.mjs +4 -4
  144. package/esm2020/timepicker/timepicker.directive.mjs +3 -3
  145. package/esm2020/timepicker/timepicker.module.mjs +4 -4
  146. package/esm2020/toggle/toggle.component.mjs +6 -6
  147. package/esm2020/toggle/toggle.module.mjs +4 -4
  148. package/esm2020/tooltip/tooltip.component.mjs +18 -14
  149. package/esm2020/tooltip/tooltip.module.mjs +4 -4
  150. package/esm2020/tree/node.mjs +3 -3
  151. package/esm2020/tree/outlet.mjs +3 -3
  152. package/esm2020/tree/padding.directive.mjs +12 -9
  153. package/esm2020/tree/toggle.mjs +10 -10
  154. package/esm2020/tree/tree-base.mjs +6 -6
  155. package/esm2020/tree/tree-option.component.mjs +9 -9
  156. package/esm2020/tree/tree-selection.component.mjs +8 -6
  157. package/esm2020/tree/tree.mjs +3 -3
  158. package/esm2020/tree/tree.module.mjs +4 -4
  159. package/esm2020/tree-select/tree-select.component.mjs +14 -14
  160. package/esm2020/tree-select/tree-select.module.mjs +4 -4
  161. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs +15 -15
  162. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  163. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs +12 -12
  164. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  165. package/fesm2015/ptsecurity-mosaic-button.mjs +32 -24
  166. package/fesm2015/ptsecurity-mosaic-button.mjs.map +1 -1
  167. package/fesm2015/ptsecurity-mosaic-card.mjs +8 -8
  168. package/fesm2015/ptsecurity-mosaic-card.mjs.map +1 -1
  169. package/fesm2015/ptsecurity-mosaic-checkbox.mjs +11 -11
  170. package/fesm2015/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  171. package/fesm2015/ptsecurity-mosaic-core.mjs +97 -91
  172. package/fesm2015/ptsecurity-mosaic-core.mjs.map +1 -1
  173. package/fesm2015/ptsecurity-mosaic-datepicker.mjs +44 -44
  174. package/fesm2015/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  175. package/fesm2015/ptsecurity-mosaic-design-tokens.mjs +443 -146
  176. package/fesm2015/ptsecurity-mosaic-design-tokens.mjs.map +1 -1
  177. package/fesm2015/ptsecurity-mosaic-divider.mjs +8 -8
  178. package/fesm2015/ptsecurity-mosaic-divider.mjs.map +1 -1
  179. package/fesm2015/ptsecurity-mosaic-dl.mjs +124 -0
  180. package/fesm2015/ptsecurity-mosaic-dl.mjs.map +1 -0
  181. package/fesm2015/ptsecurity-mosaic-dropdown.mjs +19 -19
  182. package/fesm2015/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  183. package/fesm2015/ptsecurity-mosaic-form-field.mjs +214 -50
  184. package/fesm2015/ptsecurity-mosaic-form-field.mjs.map +1 -1
  185. package/fesm2015/ptsecurity-mosaic-icon.mjs +10 -10
  186. package/fesm2015/ptsecurity-mosaic-icon.mjs.map +1 -1
  187. package/fesm2015/ptsecurity-mosaic-input.mjs +434 -31
  188. package/fesm2015/ptsecurity-mosaic-input.mjs.map +1 -1
  189. package/fesm2015/ptsecurity-mosaic-link.mjs +7 -7
  190. package/fesm2015/ptsecurity-mosaic-link.mjs.map +1 -1
  191. package/fesm2015/ptsecurity-mosaic-list.mjs +21 -21
  192. package/fesm2015/ptsecurity-mosaic-list.mjs.map +1 -1
  193. package/fesm2015/ptsecurity-mosaic-modal.mjs +29 -29
  194. package/fesm2015/ptsecurity-mosaic-modal.mjs.map +1 -1
  195. package/fesm2015/ptsecurity-mosaic-navbar.mjs +103 -96
  196. package/fesm2015/ptsecurity-mosaic-navbar.mjs.map +1 -1
  197. package/fesm2015/ptsecurity-mosaic-popover.mjs +18 -18
  198. package/fesm2015/ptsecurity-mosaic-popover.mjs.map +1 -1
  199. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs +8 -8
  200. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  201. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs +8 -8
  202. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  203. package/fesm2015/ptsecurity-mosaic-radio.mjs +11 -11
  204. package/fesm2015/ptsecurity-mosaic-radio.mjs.map +1 -1
  205. package/fesm2015/ptsecurity-mosaic-select.mjs +99 -33
  206. package/fesm2015/ptsecurity-mosaic-select.mjs.map +1 -1
  207. package/fesm2015/ptsecurity-mosaic-sidebar.mjs +13 -13
  208. package/fesm2015/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  209. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs +28 -28
  210. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  211. package/fesm2015/ptsecurity-mosaic-splitter.mjs +25 -23
  212. package/fesm2015/ptsecurity-mosaic-splitter.mjs.map +1 -1
  213. package/fesm2015/ptsecurity-mosaic-table.mjs +7 -7
  214. package/fesm2015/ptsecurity-mosaic-table.mjs.map +1 -1
  215. package/fesm2015/ptsecurity-mosaic-tabs.mjs +56 -56
  216. package/fesm2015/ptsecurity-mosaic-tabs.mjs.map +1 -1
  217. package/fesm2015/ptsecurity-mosaic-tags.mjs +74 -74
  218. package/fesm2015/ptsecurity-mosaic-tags.mjs.map +1 -1
  219. package/fesm2015/ptsecurity-mosaic-textarea.mjs +11 -10
  220. package/fesm2015/ptsecurity-mosaic-textarea.mjs.map +1 -1
  221. package/fesm2015/ptsecurity-mosaic-timepicker.mjs +7 -7
  222. package/fesm2015/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  223. package/fesm2015/ptsecurity-mosaic-toggle.mjs +9 -9
  224. package/fesm2015/ptsecurity-mosaic-toggle.mjs.map +1 -1
  225. package/fesm2015/ptsecurity-mosaic-tooltip.mjs +21 -17
  226. package/fesm2015/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  227. package/fesm2015/ptsecurity-mosaic-tree-select.mjs +17 -17
  228. package/fesm2015/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  229. package/fesm2015/ptsecurity-mosaic-tree.mjs +158 -155
  230. package/fesm2015/ptsecurity-mosaic-tree.mjs.map +1 -1
  231. package/fesm2015/ptsecurity-mosaic.mjs.map +1 -1
  232. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs +15 -15
  233. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  234. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs +12 -12
  235. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  236. package/fesm2020/ptsecurity-mosaic-button.mjs +32 -24
  237. package/fesm2020/ptsecurity-mosaic-button.mjs.map +1 -1
  238. package/fesm2020/ptsecurity-mosaic-card.mjs +8 -8
  239. package/fesm2020/ptsecurity-mosaic-card.mjs.map +1 -1
  240. package/fesm2020/ptsecurity-mosaic-checkbox.mjs +11 -11
  241. package/fesm2020/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  242. package/fesm2020/ptsecurity-mosaic-core.mjs +97 -91
  243. package/fesm2020/ptsecurity-mosaic-core.mjs.map +1 -1
  244. package/fesm2020/ptsecurity-mosaic-datepicker.mjs +44 -44
  245. package/fesm2020/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  246. package/fesm2020/ptsecurity-mosaic-design-tokens.mjs +443 -146
  247. package/fesm2020/ptsecurity-mosaic-design-tokens.mjs.map +1 -1
  248. package/fesm2020/ptsecurity-mosaic-divider.mjs +8 -8
  249. package/fesm2020/ptsecurity-mosaic-divider.mjs.map +1 -1
  250. package/fesm2020/ptsecurity-mosaic-dl.mjs +124 -0
  251. package/fesm2020/ptsecurity-mosaic-dl.mjs.map +1 -0
  252. package/fesm2020/ptsecurity-mosaic-dropdown.mjs +19 -19
  253. package/fesm2020/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  254. package/fesm2020/ptsecurity-mosaic-form-field.mjs +200 -50
  255. package/fesm2020/ptsecurity-mosaic-form-field.mjs.map +1 -1
  256. package/fesm2020/ptsecurity-mosaic-icon.mjs +10 -10
  257. package/fesm2020/ptsecurity-mosaic-icon.mjs.map +1 -1
  258. package/fesm2020/ptsecurity-mosaic-input.mjs +427 -31
  259. package/fesm2020/ptsecurity-mosaic-input.mjs.map +1 -1
  260. package/fesm2020/ptsecurity-mosaic-link.mjs +7 -7
  261. package/fesm2020/ptsecurity-mosaic-link.mjs.map +1 -1
  262. package/fesm2020/ptsecurity-mosaic-list.mjs +21 -21
  263. package/fesm2020/ptsecurity-mosaic-list.mjs.map +1 -1
  264. package/fesm2020/ptsecurity-mosaic-modal.mjs +29 -29
  265. package/fesm2020/ptsecurity-mosaic-modal.mjs.map +1 -1
  266. package/fesm2020/ptsecurity-mosaic-navbar.mjs +103 -96
  267. package/fesm2020/ptsecurity-mosaic-navbar.mjs.map +1 -1
  268. package/fesm2020/ptsecurity-mosaic-popover.mjs +18 -18
  269. package/fesm2020/ptsecurity-mosaic-popover.mjs.map +1 -1
  270. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs +8 -8
  271. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  272. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs +8 -8
  273. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  274. package/fesm2020/ptsecurity-mosaic-radio.mjs +11 -11
  275. package/fesm2020/ptsecurity-mosaic-radio.mjs.map +1 -1
  276. package/fesm2020/ptsecurity-mosaic-select.mjs +96 -32
  277. package/fesm2020/ptsecurity-mosaic-select.mjs.map +1 -1
  278. package/fesm2020/ptsecurity-mosaic-sidebar.mjs +13 -13
  279. package/fesm2020/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  280. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs +28 -28
  281. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  282. package/fesm2020/ptsecurity-mosaic-splitter.mjs +25 -23
  283. package/fesm2020/ptsecurity-mosaic-splitter.mjs.map +1 -1
  284. package/fesm2020/ptsecurity-mosaic-table.mjs +7 -7
  285. package/fesm2020/ptsecurity-mosaic-table.mjs.map +1 -1
  286. package/fesm2020/ptsecurity-mosaic-tabs.mjs +56 -56
  287. package/fesm2020/ptsecurity-mosaic-tabs.mjs.map +1 -1
  288. package/fesm2020/ptsecurity-mosaic-tags.mjs +72 -72
  289. package/fesm2020/ptsecurity-mosaic-tags.mjs.map +1 -1
  290. package/fesm2020/ptsecurity-mosaic-textarea.mjs +11 -10
  291. package/fesm2020/ptsecurity-mosaic-textarea.mjs.map +1 -1
  292. package/fesm2020/ptsecurity-mosaic-timepicker.mjs +7 -7
  293. package/fesm2020/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  294. package/fesm2020/ptsecurity-mosaic-toggle.mjs +9 -9
  295. package/fesm2020/ptsecurity-mosaic-toggle.mjs.map +1 -1
  296. package/fesm2020/ptsecurity-mosaic-tooltip.mjs +21 -17
  297. package/fesm2020/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  298. package/fesm2020/ptsecurity-mosaic-tree-select.mjs +17 -17
  299. package/fesm2020/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  300. package/fesm2020/ptsecurity-mosaic-tree.mjs +155 -152
  301. package/fesm2020/ptsecurity-mosaic-tree.mjs.map +1 -1
  302. package/fesm2020/ptsecurity-mosaic.mjs.map +1 -1
  303. package/form-field/form-field.d.ts +9 -2
  304. package/form-field/form-field.module.d.ts +8 -7
  305. package/form-field/password-hint.d.ts +40 -0
  306. package/form-field/public-api.d.ts +1 -0
  307. package/input/input-password.d.ts +121 -0
  308. package/input/input.d.ts +4 -3
  309. package/input/input.module.d.ts +7 -6
  310. package/input/public-api.d.ts +1 -0
  311. package/list/list-selection.component.d.ts +1 -1
  312. package/navbar/navbar-item.component.d.ts +19 -18
  313. package/package.json +12 -4
  314. package/prebuilt-themes/dark-theme.css +1 -1
  315. package/prebuilt-themes/default-theme.css +1 -1
  316. package/prebuilt-visual/default-visual.css +1 -1
  317. package/select/public-api.d.ts +1 -0
  318. package/select/select-option.directive.d.ts +20 -0
  319. package/select/select.module.d.ts +9 -7
  320. package/tags/tag.component.d.ts +20 -20
  321. package/textarea/textarea.component.d.ts +4 -3
  322. package/toggle/README.md +0 -0
  323. package/tree/padding.directive.d.ts +7 -5
  324. package/tree/tree-option.component.d.ts +2 -2
  325. package/design-tokens/legacy-2017/tokens/components/alert.json5 +0 -83
  326. package/design-tokens/legacy-2017/tokens/components/autocomplete.json5 +0 -11
  327. package/design-tokens/legacy-2017/tokens/components/badge.json5 +0 -184
  328. package/design-tokens/legacy-2017/tokens/components/button-toggle.json5 +0 -10
  329. package/design-tokens/legacy-2017/tokens/components/button.json5 +0 -143
  330. package/design-tokens/legacy-2017/tokens/components/card.json5 +0 -51
  331. package/design-tokens/legacy-2017/tokens/components/checkbox.json5 +0 -39
  332. package/design-tokens/legacy-2017/tokens/components/datepicker.json5 +0 -64
  333. package/design-tokens/legacy-2017/tokens/components/divider.json5 +0 -8
  334. package/design-tokens/legacy-2017/tokens/components/dropdown.json5 +0 -47
  335. package/design-tokens/legacy-2017/tokens/components/form-field.json5 +0 -52
  336. package/design-tokens/legacy-2017/tokens/components/forms.json5 +0 -52
  337. package/design-tokens/legacy-2017/tokens/components/input.json5 +0 -13
  338. package/design-tokens/legacy-2017/tokens/components/link.json5 +0 -56
  339. package/design-tokens/legacy-2017/tokens/components/list.json5 +0 -15
  340. package/design-tokens/legacy-2017/tokens/components/modal.json5 +0 -79
  341. package/design-tokens/legacy-2017/tokens/components/navbar.json5 +0 -69
  342. package/design-tokens/legacy-2017/tokens/components/optgroup.json5 +0 -10
  343. package/design-tokens/legacy-2017/tokens/components/option.json5 +0 -12
  344. package/design-tokens/legacy-2017/tokens/components/popover.json5 +0 -68
  345. package/design-tokens/legacy-2017/tokens/components/popup.json5 +0 -18
  346. package/design-tokens/legacy-2017/tokens/components/progress-bar.json5 +0 -13
  347. package/design-tokens/legacy-2017/tokens/components/progress-spinner.json5 +0 -7
  348. package/design-tokens/legacy-2017/tokens/components/radio.json5 +0 -44
  349. package/design-tokens/legacy-2017/tokens/components/select.json5 +0 -25
  350. package/design-tokens/legacy-2017/tokens/components/sidepanel.json5 +0 -30
  351. package/design-tokens/legacy-2017/tokens/components/table.json5 +0 -15
  352. package/design-tokens/legacy-2017/tokens/components/tabs.json5 +0 -25
  353. package/design-tokens/legacy-2017/tokens/components/tags.json5 +0 -132
  354. package/design-tokens/legacy-2017/tokens/components/textarea.json5 +0 -12
  355. package/design-tokens/legacy-2017/tokens/components/timepicker.json5 +0 -7
  356. package/design-tokens/legacy-2017/tokens/components/toggle.json5 +0 -79
  357. package/design-tokens/legacy-2017/tokens/components/tooltip.json5 +0 -83
  358. package/design-tokens/legacy-2017/tokens/components/tree.json5 +0 -12
  359. package/design-tokens/legacy-2017/tokens/properties/aliases.json5 +0 -3
  360. package/design-tokens/legacy-2017/tokens/properties/colors.json5 +0 -110
  361. package/design-tokens/legacy-2017/tokens/properties/font.json5 +0 -12
  362. package/design-tokens/legacy-2017/tokens/properties/globals.json5 +0 -30
  363. package/design-tokens/legacy-2017/tokens/properties/padding.json5 +0 -3
  364. package/design-tokens/legacy-2017/tokens/properties/palette.json5 +0 -163
  365. package/design-tokens/legacy-2017/tokens/properties/typography.json5 +0 -140
  366. package/design-tokens/pt-2022/tokens/components/alert.json5 +0 -83
  367. package/design-tokens/pt-2022/tokens/components/autocomplete.json5 +0 -11
  368. package/design-tokens/pt-2022/tokens/components/badge.json5 +0 -184
  369. package/design-tokens/pt-2022/tokens/components/button-toggle.json5 +0 -10
  370. package/design-tokens/pt-2022/tokens/components/button.json5 +0 -143
  371. package/design-tokens/pt-2022/tokens/components/card.json5 +0 -51
  372. package/design-tokens/pt-2022/tokens/components/checkbox.json5 +0 -39
  373. package/design-tokens/pt-2022/tokens/components/datepicker.json5 +0 -64
  374. package/design-tokens/pt-2022/tokens/components/divider.json5 +0 -8
  375. package/design-tokens/pt-2022/tokens/components/dropdown.json5 +0 -47
  376. package/design-tokens/pt-2022/tokens/components/form-field.json5 +0 -52
  377. package/design-tokens/pt-2022/tokens/components/forms.json5 +0 -52
  378. package/design-tokens/pt-2022/tokens/components/input.json5 +0 -13
  379. package/design-tokens/pt-2022/tokens/components/link.json5 +0 -56
  380. package/design-tokens/pt-2022/tokens/components/list.json5 +0 -15
  381. package/design-tokens/pt-2022/tokens/components/modal.json5 +0 -79
  382. package/design-tokens/pt-2022/tokens/components/navbar.json5 +0 -69
  383. package/design-tokens/pt-2022/tokens/components/optgroup.json5 +0 -10
  384. package/design-tokens/pt-2022/tokens/components/option.json5 +0 -12
  385. package/design-tokens/pt-2022/tokens/components/popover.json5 +0 -68
  386. package/design-tokens/pt-2022/tokens/components/popup.json5 +0 -18
  387. package/design-tokens/pt-2022/tokens/components/progress-bar.json5 +0 -13
  388. package/design-tokens/pt-2022/tokens/components/progress-spinner.json5 +0 -7
  389. package/design-tokens/pt-2022/tokens/components/radio.json5 +0 -44
  390. package/design-tokens/pt-2022/tokens/components/select.json5 +0 -25
  391. package/design-tokens/pt-2022/tokens/components/sidepanel.json5 +0 -30
  392. package/design-tokens/pt-2022/tokens/components/table.json5 +0 -15
  393. package/design-tokens/pt-2022/tokens/components/tabs.json5 +0 -25
  394. package/design-tokens/pt-2022/tokens/components/tags.json5 +0 -132
  395. package/design-tokens/pt-2022/tokens/components/textarea.json5 +0 -12
  396. package/design-tokens/pt-2022/tokens/components/timepicker.json5 +0 -7
  397. package/design-tokens/pt-2022/tokens/components/toggle.json5 +0 -79
  398. package/design-tokens/pt-2022/tokens/components/tooltip.json5 +0 -83
  399. package/design-tokens/pt-2022/tokens/components/tree.json5 +0 -12
  400. package/design-tokens/pt-2022/tokens/properties/aliases.json5 +0 -3
  401. package/design-tokens/pt-2022/tokens/properties/colors.json5 +0 -112
  402. package/design-tokens/pt-2022/tokens/properties/font.json5 +0 -15
  403. package/design-tokens/pt-2022/tokens/properties/globals.json5 +0 -30
  404. package/design-tokens/pt-2022/tokens/properties/padding.json5 +0 -3
  405. package/design-tokens/pt-2022/tokens/properties/palette.json5 +0 -226
  406. package/design-tokens/pt-2022/tokens/properties/typography.json5 +0 -140
  407. package/design-tokens/style-dictionary/build.js +0 -62
  408. package/design-tokens/style-dictionary/configs/css.js +0 -13
  409. package/design-tokens/style-dictionary/configs/index.js +0 -48
  410. package/design-tokens/style-dictionary/configs/js.js +0 -9
  411. package/design-tokens/style-dictionary/configs/scss.js +0 -23
  412. package/design-tokens/style-dictionary/filters/color.js +0 -7
  413. package/design-tokens/style-dictionary/filters/palette.js +0 -7
  414. package/design-tokens/style-dictionary/filters/size.js +0 -7
  415. package/design-tokens/style-dictionary/filters/typography.js +0 -7
  416. package/design-tokens/style-dictionary/formats/palette.js +0 -25
  417. package/design-tokens/style-dictionary/formats/typography.js +0 -52
  418. package/design-tokens/style-dictionary/transformGroups/css.js +0 -13
  419. package/design-tokens/style-dictionary/transformGroups/scss.js +0 -12
  420. package/design-tokens/style-dictionary/transforms/attribute/palette.js +0 -9
  421. package/design-tokens/style-dictionary/transforms/attribute/prefix.js +0 -11
  422. package/design-tokens/style-dictionary/transforms/attribute/size.js +0 -8
  423. package/design-tokens/style-dictionary/transforms/attribute/typography.js +0 -9
@@ -403,13 +403,13 @@ export class McModalComponent extends McModalRef {
403
403
  }
404
404
  }
405
405
  }
406
- /** @nocollapse */ /** @nocollapse */ McModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalComponent, deps: [{ token: i1.Overlay }, { token: i0.Renderer2 }, { token: i0.ComponentFactoryResolver }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i2.McModalControlService }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
407
- /** @nocollapse */ /** @nocollapse */ McModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: McModalComponent, selector: "mc-modal", inputs: { mcModalType: "mcModalType", mcComponent: "mcComponent", mcContent: "mcContent", mcComponentParams: "mcComponentParams", mcFooter: "mcFooter", mcVisible: "mcVisible", mcZIndex: "mcZIndex", mcWidth: "mcWidth", mcSize: "mcSize", mcWrapClassName: "mcWrapClassName", mcClassName: "mcClassName", mcStyle: "mcStyle", mcTitle: "mcTitle", mcCloseByESC: "mcCloseByESC", mcClosable: "mcClosable", mcMask: "mcMask", mcMaskClosable: "mcMaskClosable", mcMaskStyle: "mcMaskStyle", mcBodyStyle: "mcBodyStyle", mcOkText: "mcOkText", mcOkType: "mcOkType", mcOkLoading: "mcOkLoading", mcOnOk: "mcOnOk", mcCancelText: "mcCancelText", mcCancelLoading: "mcCancelLoading", mcOnCancel: "mcOnCancel", mcGetContainer: "mcGetContainer" }, outputs: { mcVisibleChange: "mcVisibleChange", mcAfterOpen: "mcAfterOpen", mcAfterClose: "mcAfterClose", mcOnOk: "mcOnOk", mcOnCancel: "mcOnCancel" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, viewQueries: [{ propertyName: "modalContainer", first: true, predicate: ["modalContainer"], descendants: true, static: true }, { propertyName: "bodyContainer", first: true, predicate: ["bodyContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "modalBody", first: true, predicate: ["modalBody"], descendants: true }, { propertyName: "autoFocusedButtons", predicate: ["autoFocusedButton"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<!-- Compatible: the <ng-content> can appear only once -->\n<ng-template #tplOriginContent>\n <ng-content></ng-content>\n</ng-template>\n\n<div>\n <div *ngIf=\"mcMask\"\n class=\"mc-modal-mask\"\n [ngClass]=\"maskAnimationClassMap\"\n [class.mc-modal-mask-hidden]=\"hidden\"\n [ngStyle]=\"mcMaskStyle\"\n [style.zIndex]=\"mcZIndex\"\n ></div>\n <div (mousedown)=\"onClickMask($event)\"\n class=\"mc-modal-wrap {{ mcWrapClassName }}\"\n [style.zIndex]=\"mcZIndex\"\n [style.display]=\"hidden ? 'none' : ''\"\n tabindex=\"-1\">\n\n <div #modalContainer\n class=\"mc-modal {{ mcClassName }} mc-modal_{{ mcSize }}\"\n [ngClass]=\"modalAnimationClassMap\"\n [ngStyle]=\"mcStyle\"\n [style.width]=\"mcWidth | toCssUnit\"\n [style.transform-origin]=\"transformOrigin\">\n\n <div class=\"mc-modal-content\" cdkTrapFocus>\n <button *ngIf=\"mcClosable\"\n mc-button\n (click)=\"onClickCloseBtn()\"\n class=\"mc-modal-close mc-button_transparent\">\n <i mc-icon=\"mc-close-L_16\" class=\"mc-icon mc-icon_light\" [color]=\"themePalette.Second\"></i>\n </button>\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isModalType('default')\"\n [ngTemplateOutlet]=\"tplContentDefault\"></ng-container>\n <ng-container *ngSwitchCase=\"isModalType('confirm')\"\n [ngTemplateOutlet]=\"tplContentConfirm\"></ng-container>\n <ng-container *ngSwitchCase=\"isModalType('custom')\"\n [ngTemplateOutlet]=\"tplContentCustom\"></ng-container>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #tplContentCustom>\n <ng-container #bodyContainer></ng-container>\n</ng-template>\n\n\n<!-- [Predefined] Default Modal Content -->\n<ng-template #tplContentDefault>\n <div *ngIf=\"mcTitle\" class=\"mc-modal-header\" [class.mc-modal-body_top-overflow]=\"isTopOverflow\">\n <div class=\"mc-modal-title\">\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcTitle)\" [ngTemplateOutlet]=\"$any(mcTitle)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcTitle)\">\n <div [innerHTML]=\"mcTitle\"></div>\n </ng-container>\n </ng-container>\n </div>\n </div>\n <div class=\"mc-modal-body\" #modalBody [ngStyle]=\"mcBodyStyle\" (scroll)=\"checkOverflow()\">\n <ng-container #bodyContainer>\n <ng-container *ngIf=\"!isComponent(mcContent)\" [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcContent)\" [ngTemplateOutlet]=\"$any(mcContent)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcContent)\">\n <div [innerHTML]=\"mcContent\"></div>\n </ng-container>\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"tplOriginContent\"></ng-container>\n </ng-container>\n </ng-container>\n </div>\n <div *ngIf=\"mcFooter || mcOkText || mcCancelText\" class=\"mc-modal-footer\" [class.mc-modal-body_bottom-overflow]=\"isBottomOverflow\">\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcFooter)\" [ngTemplateOutlet]=\"$any(mcFooter)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcFooter)\">\n <div [innerHTML]=\"mcFooter\"></div>\n </ng-container>\n <ng-container *ngSwitchCase=\"isModalButtons(mcFooter)\">\n <ng-container *ngFor=\"let button of $any(mcFooter)\">\n <button\n mc-button\n #autoFocusedButton\n [attr.autofocus]=\"button.autoFocus\"\n [attr.mc-modal-main-action]=\"button.mcModalMainAction\"\n *ngIf=\"getButtonCallableProp(button, 'show')\"\n [disabled]=\"getButtonCallableProp(button, 'disabled')\"\n [class.mc-progress]=\"getButtonCallableProp(button, 'loading')\"\n (click)=\"onButtonClick(button)\"\n [color]=\"button.type\">\n {{ button.label }}\n </button>\n </ng-container>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <button\n #autoFocusedButton\n [attr.autofocus]=\"true\"\n *ngIf=\"mcOkText\"\n mc-button\n [color]=\"themePalette.Primary\"\n (click)=\"onClickOkCancel('ok')\">\n\n {{ okText }}\n </button>\n <button *ngIf=\"mcCancelText\" mc-button (click)=\"onClickOkCancel('cancel')\">\n {{ cancelText }}\n </button>\n </ng-container>\n </ng-container>\n </div>\n</ng-template>\n<!-- /[Predefined] Default Modal Content -->\n\n<!-- [Predefined] Confirm Modal Content -->\n<ng-template #tplContentConfirm>\n <div class=\"mc-modal-body\" [ngStyle]=\"mcBodyStyle\">\n <div class=\"mc-confirm-body-wrapper\">\n <div class=\"mc-confirm-body\">\n <div class=\"mc-confirm-content\">\n <ng-container #bodyContainer>\n <ng-container *ngIf=\"!isComponent(mcContent)\" [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcContent)\"\n [ngTemplateOutlet]=\"$any(mcContent)\">\n </ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcContent)\">\n <div [innerHTML]=\"mcContent\"></div>\n </ng-container>\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"tplOriginContent\"></ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </div> <!-- /.mc-confirm-body-wrapper -->\n </div>\n <div class=\"mc-confirm-btns\" *ngIf=\"mcOkText || mcCancelText\">\n <button\n mc-button\n #autoFocusedButton\n [color]=\"mcOkType\"\n [attr.autofocus]=\"true\"\n *ngIf=\"mcOkText\"\n (click)=\"onClickOkCancel('ok')\">\n\n {{ okText }}\n </button>\n\n <button mc-button [color]=\"themePalette.Second\" *ngIf=\"mcCancelText\" (click)=\"onClickOkCancel('cancel')\">\n {{ cancelText }}\n </button>\n </div>\n</ng-template>\n<!-- /[Predefined] Confirm Modal Content -->\n", styles: [".mc-confirm .mc-modal-header,.mc-confirm .mc-modal-close{display:none}.mc-confirm .mc-modal-body{padding:24px;padding:var(--mc-modal-confirm-size-padding, 24px)}.mc-confirm-body-wrapper{zoom:1}.mc-confirm-body-wrapper:before,.mc-confirm-body-wrapper:after{content:\"\";display:table}.mc-confirm-body-wrapper:after{clear:both}.mc-confirm-body .mc-confirm-title{display:block;overflow:auto}.mc-confirm .mc-confirm-btns{border-radius:0 0 4px 4px;border-radius:var(--mc-modal-footer-size-border-radius, 0 0 4px 4px);text-align:right}.mc-confirm .mc-confirm-btns button+button{margin:16px}.mc-modal{box-sizing:border-box;position:relative;top:48px;top:var(--mc-modal-size-top, 48px);width:auto;margin:0 auto;list-style:none}.mc-modal.zoom-enter,.mc-modal.zoom-appear{animation-duration:.3s;transform:none;opacity:0}.mc-modal.mc-modal_small{width:400px;width:var(--mc-modal-size-small, 400px)}.mc-modal.mc-modal_normal{width:640px;width:var(--mc-modal-size-normal, 640px)}.mc-modal.mc-modal_large{width:960px;width:var(--mc-modal-size-large, 960px)}.mc-modal .mc-modal-close{position:absolute;z-index:10;top:0;right:0;width:56px;width:var(--mc-modal-size-close-width, 56px);height:56px;height:var(--mc-modal-size-close-width, 56px)}.mc-modal-wrap{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;overflow:auto;-webkit-overflow-scrolling:touch;outline:0}.mc-modal-title{margin:0}.mc-modal-content{position:relative;border-radius:4px;border-radius:var(--mc-modal-size-border-radius, 4px);background-clip:padding-box;background-color:#fff}.mc-modal-header{display:block;border-radius:4px 4px 0 0;border-radius:var(--mc-modal-header-size-border-radius, 4px 4px 0 0);padding:14px 16px;padding:var(--mc-modal-header-size-padding, 14px 16px)}.mc-modal-body{display:block;overflow-y:auto;max-height:calc(100vh - 260px);max-height:var(--mc-modal-body-size-max-height, calc(100vh - 260px));padding:16px 24px 24px;padding:var(--mc-modal-body-size-padding, 16px 24px 24px);word-wrap:break-word}.mc-modal-footer{display:block;border-radius:0 0 4px 4px;border-radius:var(--mc-modal-footer-size-border-radius, 0 0 4px 4px);padding:16px;padding:var(--mc-modal-footer-size-padding, 16px 16px);text-align:right}.mc-modal-footer button+button{margin-left:16px;margin-bottom:0}.mc-modal-mask{position:fixed;z-index:1000;top:0;right:0;left:0;bottom:0;height:100%}.mc-modal-mask.mc-modal-mask-hidden{display:none}.mc-modal-open{overflow:hidden}\n"], components: [{ type: i3.McButton, selector: "[mc-button]", inputs: ["color", "tabIndex", "disabled"] }, { type: i4.McIcon, selector: "[mc-icon]", inputs: ["color"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i6.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i3.McButtonCssStyler, selector: "[mc-button]" }, { type: i4.McIconCSSStyler, selector: "[mc-icon]" }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.McModalMainAction, selector: "[mc-modal-main-action]" }], pipes: { "toCssUnit": i8.CssUnitPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
408
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalComponent, decorators: [{
406
+ /** @nocollapse */ /** @nocollapse */ McModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalComponent, deps: [{ token: i1.Overlay }, { token: i0.Renderer2 }, { token: i0.ComponentFactoryResolver }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i2.McModalControlService }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
407
+ /** @nocollapse */ /** @nocollapse */ McModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.4", type: McModalComponent, selector: "mc-modal", inputs: { mcModalType: "mcModalType", mcComponent: "mcComponent", mcContent: "mcContent", mcComponentParams: "mcComponentParams", mcFooter: "mcFooter", mcVisible: "mcVisible", mcZIndex: "mcZIndex", mcWidth: "mcWidth", mcSize: "mcSize", mcWrapClassName: "mcWrapClassName", mcClassName: "mcClassName", mcStyle: "mcStyle", mcTitle: "mcTitle", mcCloseByESC: "mcCloseByESC", mcClosable: "mcClosable", mcMask: "mcMask", mcMaskClosable: "mcMaskClosable", mcMaskStyle: "mcMaskStyle", mcBodyStyle: "mcBodyStyle", mcOkText: "mcOkText", mcOkType: "mcOkType", mcOkLoading: "mcOkLoading", mcOnOk: "mcOnOk", mcCancelText: "mcCancelText", mcCancelLoading: "mcCancelLoading", mcOnCancel: "mcOnCancel", mcGetContainer: "mcGetContainer" }, outputs: { mcVisibleChange: "mcVisibleChange", mcAfterOpen: "mcAfterOpen", mcAfterClose: "mcAfterClose", mcOnOk: "mcOnOk", mcOnCancel: "mcOnCancel" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, viewQueries: [{ propertyName: "modalContainer", first: true, predicate: ["modalContainer"], descendants: true, static: true }, { propertyName: "bodyContainer", first: true, predicate: ["bodyContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "modalBody", first: true, predicate: ["modalBody"], descendants: true }, { propertyName: "autoFocusedButtons", predicate: ["autoFocusedButton"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<!-- Compatible: the <ng-content> can appear only once -->\n<ng-template #tplOriginContent>\n <ng-content></ng-content>\n</ng-template>\n\n<div>\n <div *ngIf=\"mcMask\"\n class=\"mc-modal-mask\"\n [ngClass]=\"maskAnimationClassMap\"\n [class.mc-modal-mask-hidden]=\"hidden\"\n [ngStyle]=\"mcMaskStyle\"\n [style.zIndex]=\"mcZIndex\"\n ></div>\n <div (mousedown)=\"onClickMask($event)\"\n class=\"mc-modal-wrap {{ mcWrapClassName }}\"\n [style.zIndex]=\"mcZIndex\"\n [style.display]=\"hidden ? 'none' : ''\"\n tabindex=\"-1\">\n\n <div #modalContainer\n class=\"mc-modal {{ mcClassName }} mc-modal_{{ mcSize }}\"\n [ngClass]=\"modalAnimationClassMap\"\n [ngStyle]=\"mcStyle\"\n [style.width]=\"mcWidth | toCssUnit\"\n [style.transform-origin]=\"transformOrigin\">\n\n <div class=\"mc-modal-content\" cdkTrapFocus>\n <button *ngIf=\"mcClosable\"\n mc-button\n (click)=\"onClickCloseBtn()\"\n class=\"mc-modal-close mc-button_transparent\">\n <i mc-icon=\"mc-close-L_16\" class=\"mc-icon mc-icon_light\" [color]=\"themePalette.Second\"></i>\n </button>\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isModalType('default')\"\n [ngTemplateOutlet]=\"tplContentDefault\"></ng-container>\n <ng-container *ngSwitchCase=\"isModalType('confirm')\"\n [ngTemplateOutlet]=\"tplContentConfirm\"></ng-container>\n <ng-container *ngSwitchCase=\"isModalType('custom')\"\n [ngTemplateOutlet]=\"tplContentCustom\"></ng-container>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #tplContentCustom>\n <ng-container #bodyContainer></ng-container>\n</ng-template>\n\n\n<!-- [Predefined] Default Modal Content -->\n<ng-template #tplContentDefault>\n <div *ngIf=\"mcTitle\" class=\"mc-modal-header\" [class.mc-modal-body_top-overflow]=\"isTopOverflow\">\n <div class=\"mc-modal-title\">\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcTitle)\" [ngTemplateOutlet]=\"$any(mcTitle)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcTitle)\">\n <div [innerHTML]=\"mcTitle\"></div>\n </ng-container>\n </ng-container>\n </div>\n </div>\n <div class=\"mc-modal-body\" #modalBody [ngStyle]=\"mcBodyStyle\" (scroll)=\"checkOverflow()\">\n <ng-container #bodyContainer>\n <ng-container *ngIf=\"!isComponent(mcContent)\" [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcContent)\" [ngTemplateOutlet]=\"$any(mcContent)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcContent)\">\n <div [innerHTML]=\"mcContent\"></div>\n </ng-container>\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"tplOriginContent\"></ng-container>\n </ng-container>\n </ng-container>\n </div>\n <div *ngIf=\"mcFooter || mcOkText || mcCancelText\" class=\"mc-modal-footer\" [class.mc-modal-body_bottom-overflow]=\"isBottomOverflow\">\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcFooter)\" [ngTemplateOutlet]=\"$any(mcFooter)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcFooter)\">\n <div [innerHTML]=\"mcFooter\"></div>\n </ng-container>\n <ng-container *ngSwitchCase=\"isModalButtons(mcFooter)\">\n <ng-container *ngFor=\"let button of $any(mcFooter)\">\n <button\n mc-button\n #autoFocusedButton\n [attr.autofocus]=\"button.autoFocus\"\n [attr.mc-modal-main-action]=\"button.mcModalMainAction\"\n *ngIf=\"getButtonCallableProp(button, 'show')\"\n [disabled]=\"getButtonCallableProp(button, 'disabled')\"\n [class.mc-progress]=\"getButtonCallableProp(button, 'loading')\"\n (click)=\"onButtonClick(button)\"\n [color]=\"button.type\">\n {{ button.label }}\n </button>\n </ng-container>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <button\n #autoFocusedButton\n [attr.autofocus]=\"true\"\n *ngIf=\"mcOkText\"\n mc-button\n [color]=\"themePalette.Primary\"\n (click)=\"onClickOkCancel('ok')\">\n\n {{ okText }}\n </button>\n <button *ngIf=\"mcCancelText\" mc-button (click)=\"onClickOkCancel('cancel')\">\n {{ cancelText }}\n </button>\n </ng-container>\n </ng-container>\n </div>\n</ng-template>\n<!-- /[Predefined] Default Modal Content -->\n\n<!-- [Predefined] Confirm Modal Content -->\n<ng-template #tplContentConfirm>\n <div class=\"mc-modal-body\" [ngStyle]=\"mcBodyStyle\">\n <div class=\"mc-confirm-body-wrapper\">\n <div class=\"mc-confirm-body\">\n <div class=\"mc-confirm-content\">\n <ng-container #bodyContainer>\n <ng-container *ngIf=\"!isComponent(mcContent)\" [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcContent)\"\n [ngTemplateOutlet]=\"$any(mcContent)\">\n </ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcContent)\">\n <div [innerHTML]=\"mcContent\"></div>\n </ng-container>\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"tplOriginContent\"></ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </div> <!-- /.mc-confirm-body-wrapper -->\n </div>\n <div class=\"mc-confirm-btns\" *ngIf=\"mcOkText || mcCancelText\">\n <button\n mc-button\n #autoFocusedButton\n [color]=\"mcOkType\"\n [attr.autofocus]=\"true\"\n *ngIf=\"mcOkText\"\n (click)=\"onClickOkCancel('ok')\">\n\n {{ okText }}\n </button>\n\n <button mc-button [color]=\"themePalette.Second\" *ngIf=\"mcCancelText\" (click)=\"onClickOkCancel('cancel')\">\n {{ cancelText }}\n </button>\n </div>\n</ng-template>\n<!-- /[Predefined] Confirm Modal Content -->\n", styles: [".mc-confirm .mc-modal-header,.mc-confirm .mc-modal-close{display:none}.mc-confirm .mc-modal-body{padding:var(--mc-modal-confirm-size-padding, 24px)}.mc-confirm-body-wrapper{zoom:1}.mc-confirm-body-wrapper:before,.mc-confirm-body-wrapper:after{content:\"\";display:table}.mc-confirm-body-wrapper:after{clear:both}.mc-confirm-body .mc-confirm-title{display:block;overflow:auto}.mc-confirm .mc-confirm-btns{border-radius:var(--mc-modal-footer-size-border-radius, 0 0 4px 4px);text-align:right}.mc-confirm .mc-confirm-btns button+button{margin:16px}.mc-modal{box-sizing:border-box;position:relative;top:var(--mc-modal-size-top, 48px);width:auto;margin:0 auto;list-style:none}.mc-modal.zoom-enter,.mc-modal.zoom-appear{animation-duration:.3s;transform:none;opacity:0}.mc-modal.mc-modal_small{width:var(--mc-modal-size-small, 400px)}.mc-modal.mc-modal_normal{width:var(--mc-modal-size-normal, 640px)}.mc-modal.mc-modal_large{width:var(--mc-modal-size-large, 960px)}.mc-modal .mc-modal-close{position:absolute;z-index:10;top:0;right:0;width:var(--mc-modal-size-close-width, 56px);height:var(--mc-modal-size-close-width, 56px)}.mc-modal-wrap{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;overflow:auto;-webkit-overflow-scrolling:touch;outline:0}.mc-modal-title{margin:0}.mc-modal-content{position:relative;border-radius:var(--mc-modal-size-border-radius, 4px);background-clip:padding-box;background-color:#fff}.mc-modal-header{display:flex;align-items:center;height:var(--mc-modal-header-size-height, 56px);border-radius:var(--mc-modal-header-size-border-radius, 4px 4px 0 0);padding:var(--mc-modal-header-size-padding, 0 16px)}.mc-modal-body{display:block;overflow-y:auto;max-height:var(--mc-modal-body-size-max-height, calc(100vh - 260px));padding:var(--mc-modal-body-size-padding, 16px 24px 24px);word-wrap:break-word}.mc-modal-footer{display:flex;align-items:center;justify-content:right;height:var(--mc-modal-footer-size-height, 64px);border-radius:var(--mc-modal-footer-size-border-radius, 0 0 4px 4px);padding:var(--mc-modal-footer-size-padding, 0 16px)}.mc-modal-footer button+button{margin-left:16px;margin-bottom:0}.mc-modal-mask{position:fixed;z-index:1000;top:0;right:0;left:0;bottom:0;height:100%}.mc-modal-mask.mc-modal-mask-hidden{display:none}.mc-modal-open{overflow:hidden}\n"], components: [{ type: i3.McButton, selector: "[mc-button]", inputs: ["color", "tabIndex", "disabled"] }, { type: i4.McIcon, selector: "[mc-icon]", inputs: ["color"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i6.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i3.McButtonCssStyler, selector: "[mc-button]" }, { type: i4.McIconCSSStyler, selector: "[mc-icon]" }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.McModalMainAction, selector: "[mc-modal-main-action]" }], pipes: { "toCssUnit": i8.CssUnitPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
408
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalComponent, decorators: [{
409
409
  type: Component,
410
410
  args: [{ selector: 'mc-modal', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
411
411
  '(keydown)': 'onKeyDown($event)'
412
- }, template: "<!-- Compatible: the <ng-content> can appear only once -->\n<ng-template #tplOriginContent>\n <ng-content></ng-content>\n</ng-template>\n\n<div>\n <div *ngIf=\"mcMask\"\n class=\"mc-modal-mask\"\n [ngClass]=\"maskAnimationClassMap\"\n [class.mc-modal-mask-hidden]=\"hidden\"\n [ngStyle]=\"mcMaskStyle\"\n [style.zIndex]=\"mcZIndex\"\n ></div>\n <div (mousedown)=\"onClickMask($event)\"\n class=\"mc-modal-wrap {{ mcWrapClassName }}\"\n [style.zIndex]=\"mcZIndex\"\n [style.display]=\"hidden ? 'none' : ''\"\n tabindex=\"-1\">\n\n <div #modalContainer\n class=\"mc-modal {{ mcClassName }} mc-modal_{{ mcSize }}\"\n [ngClass]=\"modalAnimationClassMap\"\n [ngStyle]=\"mcStyle\"\n [style.width]=\"mcWidth | toCssUnit\"\n [style.transform-origin]=\"transformOrigin\">\n\n <div class=\"mc-modal-content\" cdkTrapFocus>\n <button *ngIf=\"mcClosable\"\n mc-button\n (click)=\"onClickCloseBtn()\"\n class=\"mc-modal-close mc-button_transparent\">\n <i mc-icon=\"mc-close-L_16\" class=\"mc-icon mc-icon_light\" [color]=\"themePalette.Second\"></i>\n </button>\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isModalType('default')\"\n [ngTemplateOutlet]=\"tplContentDefault\"></ng-container>\n <ng-container *ngSwitchCase=\"isModalType('confirm')\"\n [ngTemplateOutlet]=\"tplContentConfirm\"></ng-container>\n <ng-container *ngSwitchCase=\"isModalType('custom')\"\n [ngTemplateOutlet]=\"tplContentCustom\"></ng-container>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #tplContentCustom>\n <ng-container #bodyContainer></ng-container>\n</ng-template>\n\n\n<!-- [Predefined] Default Modal Content -->\n<ng-template #tplContentDefault>\n <div *ngIf=\"mcTitle\" class=\"mc-modal-header\" [class.mc-modal-body_top-overflow]=\"isTopOverflow\">\n <div class=\"mc-modal-title\">\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcTitle)\" [ngTemplateOutlet]=\"$any(mcTitle)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcTitle)\">\n <div [innerHTML]=\"mcTitle\"></div>\n </ng-container>\n </ng-container>\n </div>\n </div>\n <div class=\"mc-modal-body\" #modalBody [ngStyle]=\"mcBodyStyle\" (scroll)=\"checkOverflow()\">\n <ng-container #bodyContainer>\n <ng-container *ngIf=\"!isComponent(mcContent)\" [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcContent)\" [ngTemplateOutlet]=\"$any(mcContent)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcContent)\">\n <div [innerHTML]=\"mcContent\"></div>\n </ng-container>\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"tplOriginContent\"></ng-container>\n </ng-container>\n </ng-container>\n </div>\n <div *ngIf=\"mcFooter || mcOkText || mcCancelText\" class=\"mc-modal-footer\" [class.mc-modal-body_bottom-overflow]=\"isBottomOverflow\">\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcFooter)\" [ngTemplateOutlet]=\"$any(mcFooter)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcFooter)\">\n <div [innerHTML]=\"mcFooter\"></div>\n </ng-container>\n <ng-container *ngSwitchCase=\"isModalButtons(mcFooter)\">\n <ng-container *ngFor=\"let button of $any(mcFooter)\">\n <button\n mc-button\n #autoFocusedButton\n [attr.autofocus]=\"button.autoFocus\"\n [attr.mc-modal-main-action]=\"button.mcModalMainAction\"\n *ngIf=\"getButtonCallableProp(button, 'show')\"\n [disabled]=\"getButtonCallableProp(button, 'disabled')\"\n [class.mc-progress]=\"getButtonCallableProp(button, 'loading')\"\n (click)=\"onButtonClick(button)\"\n [color]=\"button.type\">\n {{ button.label }}\n </button>\n </ng-container>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <button\n #autoFocusedButton\n [attr.autofocus]=\"true\"\n *ngIf=\"mcOkText\"\n mc-button\n [color]=\"themePalette.Primary\"\n (click)=\"onClickOkCancel('ok')\">\n\n {{ okText }}\n </button>\n <button *ngIf=\"mcCancelText\" mc-button (click)=\"onClickOkCancel('cancel')\">\n {{ cancelText }}\n </button>\n </ng-container>\n </ng-container>\n </div>\n</ng-template>\n<!-- /[Predefined] Default Modal Content -->\n\n<!-- [Predefined] Confirm Modal Content -->\n<ng-template #tplContentConfirm>\n <div class=\"mc-modal-body\" [ngStyle]=\"mcBodyStyle\">\n <div class=\"mc-confirm-body-wrapper\">\n <div class=\"mc-confirm-body\">\n <div class=\"mc-confirm-content\">\n <ng-container #bodyContainer>\n <ng-container *ngIf=\"!isComponent(mcContent)\" [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcContent)\"\n [ngTemplateOutlet]=\"$any(mcContent)\">\n </ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcContent)\">\n <div [innerHTML]=\"mcContent\"></div>\n </ng-container>\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"tplOriginContent\"></ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </div> <!-- /.mc-confirm-body-wrapper -->\n </div>\n <div class=\"mc-confirm-btns\" *ngIf=\"mcOkText || mcCancelText\">\n <button\n mc-button\n #autoFocusedButton\n [color]=\"mcOkType\"\n [attr.autofocus]=\"true\"\n *ngIf=\"mcOkText\"\n (click)=\"onClickOkCancel('ok')\">\n\n {{ okText }}\n </button>\n\n <button mc-button [color]=\"themePalette.Second\" *ngIf=\"mcCancelText\" (click)=\"onClickOkCancel('cancel')\">\n {{ cancelText }}\n </button>\n </div>\n</ng-template>\n<!-- /[Predefined] Confirm Modal Content -->\n", styles: [".mc-confirm .mc-modal-header,.mc-confirm .mc-modal-close{display:none}.mc-confirm .mc-modal-body{padding:24px;padding:var(--mc-modal-confirm-size-padding, 24px)}.mc-confirm-body-wrapper{zoom:1}.mc-confirm-body-wrapper:before,.mc-confirm-body-wrapper:after{content:\"\";display:table}.mc-confirm-body-wrapper:after{clear:both}.mc-confirm-body .mc-confirm-title{display:block;overflow:auto}.mc-confirm .mc-confirm-btns{border-radius:0 0 4px 4px;border-radius:var(--mc-modal-footer-size-border-radius, 0 0 4px 4px);text-align:right}.mc-confirm .mc-confirm-btns button+button{margin:16px}.mc-modal{box-sizing:border-box;position:relative;top:48px;top:var(--mc-modal-size-top, 48px);width:auto;margin:0 auto;list-style:none}.mc-modal.zoom-enter,.mc-modal.zoom-appear{animation-duration:.3s;transform:none;opacity:0}.mc-modal.mc-modal_small{width:400px;width:var(--mc-modal-size-small, 400px)}.mc-modal.mc-modal_normal{width:640px;width:var(--mc-modal-size-normal, 640px)}.mc-modal.mc-modal_large{width:960px;width:var(--mc-modal-size-large, 960px)}.mc-modal .mc-modal-close{position:absolute;z-index:10;top:0;right:0;width:56px;width:var(--mc-modal-size-close-width, 56px);height:56px;height:var(--mc-modal-size-close-width, 56px)}.mc-modal-wrap{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;overflow:auto;-webkit-overflow-scrolling:touch;outline:0}.mc-modal-title{margin:0}.mc-modal-content{position:relative;border-radius:4px;border-radius:var(--mc-modal-size-border-radius, 4px);background-clip:padding-box;background-color:#fff}.mc-modal-header{display:block;border-radius:4px 4px 0 0;border-radius:var(--mc-modal-header-size-border-radius, 4px 4px 0 0);padding:14px 16px;padding:var(--mc-modal-header-size-padding, 14px 16px)}.mc-modal-body{display:block;overflow-y:auto;max-height:calc(100vh - 260px);max-height:var(--mc-modal-body-size-max-height, calc(100vh - 260px));padding:16px 24px 24px;padding:var(--mc-modal-body-size-padding, 16px 24px 24px);word-wrap:break-word}.mc-modal-footer{display:block;border-radius:0 0 4px 4px;border-radius:var(--mc-modal-footer-size-border-radius, 0 0 4px 4px);padding:16px;padding:var(--mc-modal-footer-size-padding, 16px 16px);text-align:right}.mc-modal-footer button+button{margin-left:16px;margin-bottom:0}.mc-modal-mask{position:fixed;z-index:1000;top:0;right:0;left:0;bottom:0;height:100%}.mc-modal-mask.mc-modal-mask-hidden{display:none}.mc-modal-open{overflow:hidden}\n"] }]
412
+ }, template: "<!-- Compatible: the <ng-content> can appear only once -->\n<ng-template #tplOriginContent>\n <ng-content></ng-content>\n</ng-template>\n\n<div>\n <div *ngIf=\"mcMask\"\n class=\"mc-modal-mask\"\n [ngClass]=\"maskAnimationClassMap\"\n [class.mc-modal-mask-hidden]=\"hidden\"\n [ngStyle]=\"mcMaskStyle\"\n [style.zIndex]=\"mcZIndex\"\n ></div>\n <div (mousedown)=\"onClickMask($event)\"\n class=\"mc-modal-wrap {{ mcWrapClassName }}\"\n [style.zIndex]=\"mcZIndex\"\n [style.display]=\"hidden ? 'none' : ''\"\n tabindex=\"-1\">\n\n <div #modalContainer\n class=\"mc-modal {{ mcClassName }} mc-modal_{{ mcSize }}\"\n [ngClass]=\"modalAnimationClassMap\"\n [ngStyle]=\"mcStyle\"\n [style.width]=\"mcWidth | toCssUnit\"\n [style.transform-origin]=\"transformOrigin\">\n\n <div class=\"mc-modal-content\" cdkTrapFocus>\n <button *ngIf=\"mcClosable\"\n mc-button\n (click)=\"onClickCloseBtn()\"\n class=\"mc-modal-close mc-button_transparent\">\n <i mc-icon=\"mc-close-L_16\" class=\"mc-icon mc-icon_light\" [color]=\"themePalette.Second\"></i>\n </button>\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isModalType('default')\"\n [ngTemplateOutlet]=\"tplContentDefault\"></ng-container>\n <ng-container *ngSwitchCase=\"isModalType('confirm')\"\n [ngTemplateOutlet]=\"tplContentConfirm\"></ng-container>\n <ng-container *ngSwitchCase=\"isModalType('custom')\"\n [ngTemplateOutlet]=\"tplContentCustom\"></ng-container>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #tplContentCustom>\n <ng-container #bodyContainer></ng-container>\n</ng-template>\n\n\n<!-- [Predefined] Default Modal Content -->\n<ng-template #tplContentDefault>\n <div *ngIf=\"mcTitle\" class=\"mc-modal-header\" [class.mc-modal-body_top-overflow]=\"isTopOverflow\">\n <div class=\"mc-modal-title\">\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcTitle)\" [ngTemplateOutlet]=\"$any(mcTitle)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcTitle)\">\n <div [innerHTML]=\"mcTitle\"></div>\n </ng-container>\n </ng-container>\n </div>\n </div>\n <div class=\"mc-modal-body\" #modalBody [ngStyle]=\"mcBodyStyle\" (scroll)=\"checkOverflow()\">\n <ng-container #bodyContainer>\n <ng-container *ngIf=\"!isComponent(mcContent)\" [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcContent)\" [ngTemplateOutlet]=\"$any(mcContent)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcContent)\">\n <div [innerHTML]=\"mcContent\"></div>\n </ng-container>\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"tplOriginContent\"></ng-container>\n </ng-container>\n </ng-container>\n </div>\n <div *ngIf=\"mcFooter || mcOkText || mcCancelText\" class=\"mc-modal-footer\" [class.mc-modal-body_bottom-overflow]=\"isBottomOverflow\">\n <ng-container [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcFooter)\" [ngTemplateOutlet]=\"$any(mcFooter)\"></ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcFooter)\">\n <div [innerHTML]=\"mcFooter\"></div>\n </ng-container>\n <ng-container *ngSwitchCase=\"isModalButtons(mcFooter)\">\n <ng-container *ngFor=\"let button of $any(mcFooter)\">\n <button\n mc-button\n #autoFocusedButton\n [attr.autofocus]=\"button.autoFocus\"\n [attr.mc-modal-main-action]=\"button.mcModalMainAction\"\n *ngIf=\"getButtonCallableProp(button, 'show')\"\n [disabled]=\"getButtonCallableProp(button, 'disabled')\"\n [class.mc-progress]=\"getButtonCallableProp(button, 'loading')\"\n (click)=\"onButtonClick(button)\"\n [color]=\"button.type\">\n {{ button.label }}\n </button>\n </ng-container>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <button\n #autoFocusedButton\n [attr.autofocus]=\"true\"\n *ngIf=\"mcOkText\"\n mc-button\n [color]=\"themePalette.Primary\"\n (click)=\"onClickOkCancel('ok')\">\n\n {{ okText }}\n </button>\n <button *ngIf=\"mcCancelText\" mc-button (click)=\"onClickOkCancel('cancel')\">\n {{ cancelText }}\n </button>\n </ng-container>\n </ng-container>\n </div>\n</ng-template>\n<!-- /[Predefined] Default Modal Content -->\n\n<!-- [Predefined] Confirm Modal Content -->\n<ng-template #tplContentConfirm>\n <div class=\"mc-modal-body\" [ngStyle]=\"mcBodyStyle\">\n <div class=\"mc-confirm-body-wrapper\">\n <div class=\"mc-confirm-body\">\n <div class=\"mc-confirm-content\">\n <ng-container #bodyContainer>\n <ng-container *ngIf=\"!isComponent(mcContent)\" [ngSwitch]=\"true\">\n <ng-container *ngSwitchCase=\"isTemplateRef(mcContent)\"\n [ngTemplateOutlet]=\"$any(mcContent)\">\n </ng-container>\n <ng-container *ngSwitchCase=\"isNonEmptyString(mcContent)\">\n <div [innerHTML]=\"mcContent\"></div>\n </ng-container>\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"tplOriginContent\"></ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </div> <!-- /.mc-confirm-body-wrapper -->\n </div>\n <div class=\"mc-confirm-btns\" *ngIf=\"mcOkText || mcCancelText\">\n <button\n mc-button\n #autoFocusedButton\n [color]=\"mcOkType\"\n [attr.autofocus]=\"true\"\n *ngIf=\"mcOkText\"\n (click)=\"onClickOkCancel('ok')\">\n\n {{ okText }}\n </button>\n\n <button mc-button [color]=\"themePalette.Second\" *ngIf=\"mcCancelText\" (click)=\"onClickOkCancel('cancel')\">\n {{ cancelText }}\n </button>\n </div>\n</ng-template>\n<!-- /[Predefined] Confirm Modal Content -->\n", styles: [".mc-confirm .mc-modal-header,.mc-confirm .mc-modal-close{display:none}.mc-confirm .mc-modal-body{padding:var(--mc-modal-confirm-size-padding, 24px)}.mc-confirm-body-wrapper{zoom:1}.mc-confirm-body-wrapper:before,.mc-confirm-body-wrapper:after{content:\"\";display:table}.mc-confirm-body-wrapper:after{clear:both}.mc-confirm-body .mc-confirm-title{display:block;overflow:auto}.mc-confirm .mc-confirm-btns{border-radius:var(--mc-modal-footer-size-border-radius, 0 0 4px 4px);text-align:right}.mc-confirm .mc-confirm-btns button+button{margin:16px}.mc-modal{box-sizing:border-box;position:relative;top:var(--mc-modal-size-top, 48px);width:auto;margin:0 auto;list-style:none}.mc-modal.zoom-enter,.mc-modal.zoom-appear{animation-duration:.3s;transform:none;opacity:0}.mc-modal.mc-modal_small{width:var(--mc-modal-size-small, 400px)}.mc-modal.mc-modal_normal{width:var(--mc-modal-size-normal, 640px)}.mc-modal.mc-modal_large{width:var(--mc-modal-size-large, 960px)}.mc-modal .mc-modal-close{position:absolute;z-index:10;top:0;right:0;width:var(--mc-modal-size-close-width, 56px);height:var(--mc-modal-size-close-width, 56px)}.mc-modal-wrap{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;overflow:auto;-webkit-overflow-scrolling:touch;outline:0}.mc-modal-title{margin:0}.mc-modal-content{position:relative;border-radius:var(--mc-modal-size-border-radius, 4px);background-clip:padding-box;background-color:#fff}.mc-modal-header{display:flex;align-items:center;height:var(--mc-modal-header-size-height, 56px);border-radius:var(--mc-modal-header-size-border-radius, 4px 4px 0 0);padding:var(--mc-modal-header-size-padding, 0 16px)}.mc-modal-body{display:block;overflow-y:auto;max-height:var(--mc-modal-body-size-max-height, calc(100vh - 260px));padding:var(--mc-modal-body-size-padding, 16px 24px 24px);word-wrap:break-word}.mc-modal-footer{display:flex;align-items:center;justify-content:right;height:var(--mc-modal-footer-size-height, 64px);border-radius:var(--mc-modal-footer-size-border-radius, 0 0 4px 4px);padding:var(--mc-modal-footer-size-padding, 0 16px)}.mc-modal-footer button+button{margin-left:16px;margin-bottom:0}.mc-modal-mask{position:fixed;z-index:1000;top:0;right:0;left:0;bottom:0;height:100%}.mc-modal-mask.mc-modal-mask-hidden{display:none}.mc-modal-open{overflow:hidden}\n"] }]
413
413
  }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Renderer2 }, { type: i0.ComponentFactoryResolver }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i2.McModalControlService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
414
414
  type: Inject,
415
415
  args: [DOCUMENT]
@@ -2,9 +2,9 @@ import { Directive } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class McModalTitle {
4
4
  }
5
- /** @nocollapse */ /** @nocollapse */ McModalTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
- /** @nocollapse */ /** @nocollapse */ McModalTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: McModalTitle, selector: "[mc-modal-title], mc-modal-title, [mcModalTitle]", host: { classAttribute: "mc-modal-header mc-modal-title" }, ngImport: i0 });
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalTitle, decorators: [{
5
+ /** @nocollapse */ /** @nocollapse */ McModalTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
+ /** @nocollapse */ /** @nocollapse */ McModalTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.4", type: McModalTitle, selector: "[mc-modal-title], mc-modal-title, [mcModalTitle]", host: { classAttribute: "mc-modal-header mc-modal-title" }, ngImport: i0 });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalTitle, decorators: [{
8
8
  type: Directive,
9
9
  args: [{
10
10
  selector: `[mc-modal-title], mc-modal-title, [mcModalTitle]`,
@@ -15,9 +15,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
15
15
  }] });
16
16
  export class McModalBody {
17
17
  }
18
- /** @nocollapse */ /** @nocollapse */ McModalBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalBody, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
- /** @nocollapse */ /** @nocollapse */ McModalBody.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: McModalBody, selector: "[mc-modal-body], mc-modal-body, [mcModalBody]", host: { classAttribute: "mc-modal-body" }, ngImport: i0 });
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalBody, decorators: [{
18
+ /** @nocollapse */ /** @nocollapse */ McModalBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalBody, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
+ /** @nocollapse */ /** @nocollapse */ McModalBody.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.4", type: McModalBody, selector: "[mc-modal-body], mc-modal-body, [mcModalBody]", host: { classAttribute: "mc-modal-body" }, ngImport: i0 });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalBody, decorators: [{
21
21
  type: Directive,
22
22
  args: [{
23
23
  selector: `[mc-modal-body], mc-modal-body, [mcModalBody]`,
@@ -28,9 +28,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
28
28
  }] });
29
29
  export class McModalFooter {
30
30
  }
31
- /** @nocollapse */ /** @nocollapse */ McModalFooter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalFooter, deps: [], target: i0.ɵɵFactoryTarget.Directive });
32
- /** @nocollapse */ /** @nocollapse */ McModalFooter.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: McModalFooter, selector: "[mc-modal-footer], mc-modal-footer, [mcModalFooter]", host: { classAttribute: "mc-modal-footer" }, ngImport: i0 });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalFooter, decorators: [{
31
+ /** @nocollapse */ /** @nocollapse */ McModalFooter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalFooter, deps: [], target: i0.ɵɵFactoryTarget.Directive });
32
+ /** @nocollapse */ /** @nocollapse */ McModalFooter.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.4", type: McModalFooter, selector: "[mc-modal-footer], mc-modal-footer, [mcModalFooter]", host: { classAttribute: "mc-modal-footer" }, ngImport: i0 });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalFooter, decorators: [{
34
34
  type: Directive,
35
35
  args: [{
36
36
  selector: `[mc-modal-footer], mc-modal-footer, [mcModalFooter]`,
@@ -41,9 +41,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
41
41
  }] });
42
42
  export class McModalMainAction {
43
43
  }
44
- /** @nocollapse */ /** @nocollapse */ McModalMainAction.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalMainAction, deps: [], target: i0.ɵɵFactoryTarget.Directive });
45
- /** @nocollapse */ /** @nocollapse */ McModalMainAction.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: McModalMainAction, selector: "[mc-modal-main-action]", ngImport: i0 });
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalMainAction, decorators: [{
44
+ /** @nocollapse */ /** @nocollapse */ McModalMainAction.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalMainAction, deps: [], target: i0.ɵɵFactoryTarget.Directive });
45
+ /** @nocollapse */ /** @nocollapse */ McModalMainAction.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.4", type: McModalMainAction, selector: "[mc-modal-main-action]", ngImport: i0 });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalMainAction, decorators: [{
47
47
  type: Directive,
48
48
  args: [{
49
49
  selector: `[mc-modal-main-action]`
@@ -12,8 +12,8 @@ import { McModalService } from './modal.service';
12
12
  import * as i0 from "@angular/core";
13
13
  export class McModalModule {
14
14
  }
15
- /** @nocollapse */ /** @nocollapse */ McModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
- /** @nocollapse */ /** @nocollapse */ McModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalModule, declarations: [McModalComponent,
15
+ /** @nocollapse */ /** @nocollapse */ McModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ /** @nocollapse */ /** @nocollapse */ McModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalModule, declarations: [McModalComponent,
17
17
  McModalTitle,
18
18
  McModalBody,
19
19
  McModalFooter,
@@ -27,7 +27,7 @@ export class McModalModule {
27
27
  McModalBody,
28
28
  McModalFooter,
29
29
  McModalMainAction] });
30
- /** @nocollapse */ /** @nocollapse */ McModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalModule, providers: [
30
+ /** @nocollapse */ /** @nocollapse */ McModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalModule, providers: [
31
31
  McModalControlService,
32
32
  McModalService
33
33
  ], imports: [[
@@ -37,7 +37,7 @@ export class McModalModule {
37
37
  McButtonModule,
38
38
  McIconModule
39
39
  ]] });
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalModule, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalModule, decorators: [{
41
41
  type: NgModule,
42
42
  args: [{
43
43
  imports: [
@@ -116,9 +116,9 @@ export class McModalService {
116
116
  return this.confirm(options, confirmType);
117
117
  }
118
118
  }
119
- /** @nocollapse */ /** @nocollapse */ McModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalService, deps: [{ token: i1.Overlay }, { token: i2.McModalControlService }], target: i0.ɵɵFactoryTarget.Injectable });
120
- /** @nocollapse */ /** @nocollapse */ McModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalService });
121
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: McModalService, decorators: [{
119
+ /** @nocollapse */ /** @nocollapse */ McModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalService, deps: [{ token: i1.Overlay }, { token: i2.McModalControlService }], target: i0.ɵɵFactoryTarget.Injectable });
120
+ /** @nocollapse */ /** @nocollapse */ McModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalService });
121
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: McModalService, decorators: [{
122
122
  type: Injectable
123
123
  }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i2.McModalControlService }]; } });
124
124
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy9tb2RhbC9tb2RhbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFnQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWxELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7OztBQUlyRCxzREFBc0Q7QUFDdEQsTUFBTSxPQUFPLHNCQUFzQjtJQUsvQixZQUFvQixPQUFnQixFQUFFLFVBQW1DLEVBQUU7UUFBdkQsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLENBQUMsZ0JBQWdCLElBQUksT0FBTyxDQUFDLEVBQUU7WUFDaEMsT0FBTyxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7U0FDdEM7UUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFTLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxRQUFTLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7UUFFMUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUU7WUFDM0Is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eyBPdmVybGF5LCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWYsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVTQ0FQRSB9IGZyb20gJ0BwdHNlY3VyaXR5L2Nkay9rZXljb2Rlcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE1jTW9kYWxDb250cm9sU2VydmljZSB9IGZyb20gJy4vbW9kYWwtY29udHJvbC5zZXJ2aWNlJztcbmltcG9ydCB7IE1jTW9kYWxSZWYgfSBmcm9tICcuL21vZGFsLXJlZi5jbGFzcyc7XG5pbXBvcnQgeyBNY01vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29uZmlybVR5cGUsIElNb2RhbE9wdGlvbnMsIElNb2RhbE9wdGlvbnNGb3JTZXJ2aWNlIH0gZnJvbSAnLi9tb2RhbC50eXBlJztcblxuXG4vLyBBIGJ1aWxkZXIgdXNlZCBmb3IgbWFuYWdpbmcgc2VydmljZSBjcmVhdGluZyBtb2RhbHNcbmV4cG9ydCBjbGFzcyBNb2RhbEJ1aWxkZXJGb3JTZXJ2aWNlIHtcbiAgICAvLyBNb2RhbCBDb21wb25lbnRSZWYsIFwibnVsbFwiIG1lYW5zIGl0IGhhcyBiZWVuIGRlc3Ryb3llZFxuICAgIHByaXZhdGUgbW9kYWxSZWY6IENvbXBvbmVudFJlZjxNY01vZGFsQ29tcG9uZW50PiB8IG51bGw7XG4gICAgcHJpdmF0ZSBvdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LCBvcHRpb25zOiBJTW9kYWxPcHRpb25zRm9yU2VydmljZSA9IHt9KSB7XG4gICAgICAgIHRoaXMuY3JlYXRlTW9kYWwoKTtcblxuICAgICAgICBpZiAoISgnbWNHZXRDb250YWluZXInIGluIG9wdGlvbnMpKSB7XG4gICAgICAgICAgICBvcHRpb25zLm1jR2V0Q29udGFpbmVyID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jaGFuZ2VQcm9wcyhvcHRpb25zKTtcbiAgICAgICAgdGhpcy5tb2RhbFJlZiEuaW5zdGFuY2Uub3BlbigpO1xuICAgICAgICB0aGlzLm1vZGFsUmVmIS5pbnN0YW5jZS5tY0FmdGVyQ2xvc2Uuc3Vic2NyaWJlKCgpID0+IHRoaXMuZGVzdHJveU1vZGFsKCkpO1xuXG4gICAgICAgIHRoaXMub3ZlcmxheVJlZi5rZXlkb3duRXZlbnRzKClcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6ZGVwcmVjYXRpb24gcmVwbGFjZW1lbnQgLmtleSBpc24ndCBzdXBwb3J0ZWQgaW4gRWRnZVxuICAgICAgICAgICAgICAgIHJldHVybiBldmVudC5rZXlDb2RlID09PSBFU0NBUEUgJiYgb3B0aW9ucy5tY0Nsb3NlQnlFU0M7XG4gICAgICAgICAgICB9KSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5tb2RhbFJlZiEuaW5zdGFuY2UuY2xvc2UoKSk7XG4gICAgfVxuXG4gICAgZ2V0SW5zdGFuY2UoKTogTWNNb2RhbENvbXBvbmVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RhbFJlZiAmJiB0aGlzLm1vZGFsUmVmLmluc3RhbmNlO1xuICAgIH1cblxuICAgIGRlc3Ryb3lNb2RhbCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubW9kYWxSZWYpIHtcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZi5kaXNwb3NlKCk7XG4gICAgICAgICAgICB0aGlzLm1vZGFsUmVmID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2hhbmdlUHJvcHMob3B0aW9uczogSU1vZGFsT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5tb2RhbFJlZikge1xuICAgICAgICAgICAgLy8gaGVyZSBub3QgbGltaXQgdXNlcidzIGlucHV0cyBhdCBydW50aW1lXG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMubW9kYWxSZWYuaW5zdGFuY2UsIG9wdGlvbnMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIGNvbXBvbmVudCB0byBBcHBsaWNhdGlvblJlZlxuICAgIHByaXZhdGUgY3JlYXRlTW9kYWwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoKTtcbiAgICAgICAgdGhpcy5tb2RhbFJlZiA9IHRoaXMub3ZlcmxheVJlZi5hdHRhY2gobmV3IENvbXBvbmVudFBvcnRhbChNY01vZGFsQ29tcG9uZW50KSk7XG4gICAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTWNNb2RhbFNlcnZpY2Uge1xuICAgIC8vIFRyYWNrIG9mIHRoZSBjdXJyZW50IGNsb3NlIG1vZGFscyAod2UgYXNzdW1lIGludmlzaWJsZSBpcyBjbG9zZSB0aGlzIHRpbWUpXG4gICAgZ2V0IG9wZW5Nb2RhbHMoKTogTWNNb2RhbFJlZltdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubW9kYWxDb250cm9sLm9wZW5Nb2RhbHM7XG4gICAgfVxuXG4gICAgZ2V0IGFmdGVyQWxsQ2xvc2UoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vZGFsQ29udHJvbC5hZnRlckFsbENsb3NlLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgbW9kYWxDb250cm9sOiBNY01vZGFsQ29udHJvbFNlcnZpY2VcbiAgICApIHt9XG5cbiAgICAvLyBDbG9zZXMgYWxsIG9mIHRoZSBjdXJyZW50bHktb3BlbiBkaWFsb2dzXG4gICAgY2xvc2VBbGwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW9kYWxDb250cm9sLmNsb3NlQWxsKCk7XG4gICAgfVxuXG4gICAgY3JlYXRlPFQ+KG9wdGlvbnM6IElNb2RhbE9wdGlvbnNGb3JTZXJ2aWNlPFQ+ID0ge30pOiBNY01vZGFsUmVmPFQ+IHtcblxuICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnMubWNPbkNhbmNlbCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgLy8gTGVhdmUgYSBlbXB0eSBmdW5jdGlvbiB0byBjbG9zZSB0aGlzIG1vZGFsIGJ5IGRlZmF1bHRcbiAgICAgICAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZVxuICAgICAgICAgICAgb3B0aW9ucy5tY09uQ2FuY2VsID0gKCkgPT4ge307XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoISgnbWNDbG9zZUJ5RVNDJyBpbiBvcHRpb25zKSkge1xuICAgICAgICAgICAgb3B0aW9ucy5tY0Nsb3NlQnlFU0MgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIC8vIFJlbW92ZSB0aGUgQ2FuY2VsIGJ1dHRvbiBpZiB0aGUgdXNlciBub3Qgc3BlY2lmeSBhIENhbmNlbCBidXR0b25cbiAgICAgICAgaWYgKCEoJ21jQ2FuY2VsVGV4dCcgaW4gb3B0aW9ucykpIHtcbiAgICAgICAgICAgIG9wdGlvbnMubWNDYW5jZWxUZXh0ID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIC8vIFJlbW92ZSB0aGUgT2sgYnV0dG9uIGlmIHRoZSB1c2VyIG5vdCBzcGVjaWZ5IGEgT2sgYnV0dG9uXG4gICAgICAgIGlmICghKCdtY09rVGV4dCcgaW4gb3B0aW9ucykpIHtcbiAgICAgICAgICAgIG9wdGlvbnMubWNPa1RleHQgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgLy8gUmVtb3ZlIHRoZSBmb290ZXIgaWYgdGhlIHVzZXIgbm90IHNwZWNpZnkgYSBmb290ZXJcbiAgICAgICAgaWYgKCEoJ21jRm9vdGVyJyBpbiBvcHRpb25zKSkge1xuICAgICAgICAgICAgb3B0aW9ucy5tY0Zvb3RlciA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXcgTW9kYWxCdWlsZGVyRm9yU2VydmljZSh0aGlzLm92ZXJsYXksIG9wdGlvbnMpLmdldEluc3RhbmNlKCkhO1xuICAgIH1cblxuICAgIGNvbmZpcm08VD4ob3B0aW9uczogSU1vZGFsT3B0aW9uc0ZvclNlcnZpY2U8VD4gPSB7fSwgY29uZmlybVR5cGU6IENvbmZpcm1UeXBlID0gJ2NvbmZpcm0nKTogTWNNb2RhbFJlZjxUPiB7XG4gICAgICAgIGlmICgnbWNGb290ZXInIGluIG9wdGlvbnMpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihgVGhlIENvbmZpcm0tTW9kYWwgZG9lc24ndCBzdXBwb3J0IFwibWNGb290ZXJcIiwgdGhpcyBwcm9wZXJ0eSB3aWxsIGJlIGlnbm9yZWQuYCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBOT1RFOiBvbmx5IHN1cHBvcnQgZnVuY3Rpb24gY3VycmVudGx5IGJ5IGNhbGxpbmcgY29uZmlybSgpXG4gICAgICAgIGlmICh0eXBlb2Ygb3B0aW9ucy5tY09uT2sgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIC8vIExlYXZlIGEgZW1wdHkgZnVuY3Rpb24gdG8gY2xvc2UgdGhpcyBtb2RhbCBieSBkZWZhdWx0XG4gICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAgICAgICAgIG9wdGlvbnMubWNPbk9rID0gKCkgPT4ge307XG4gICAgICAgIH1cblxuICAgICAgICBvcHRpb25zLm1jTW9kYWxUeXBlID0gJ2NvbmZpcm0nO1xuICAgICAgICBvcHRpb25zLm1jQ2xhc3NOYW1lID0gYG1jLWNvbmZpcm0gbWMtY29uZmlybS0ke2NvbmZpcm1UeXBlfSAke29wdGlvbnMubWNDbGFzc05hbWUgfHwgJyd9YDtcblxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGUob3B0aW9ucyk7XG4gICAgfVxuXG4gICAgb3BlbjxUPihvcHRpb25zOiBJTW9kYWxPcHRpb25zRm9yU2VydmljZTxUPiA9IHt9KTogTWNNb2RhbFJlZjxUPiB7XG5cbiAgICAgICAgb3B0aW9ucy5tY01vZGFsVHlwZSA9ICdjdXN0b20nO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShvcHRpb25zKTtcbiAgICB9XG5cbiAgICBzdWNjZXNzPFQ+KG9wdGlvbnM6IElNb2RhbE9wdGlvbnNGb3JTZXJ2aWNlPFQ+ID0ge30pOiBNY01vZGFsUmVmPFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2ltcGxlQ29uZmlybShvcHRpb25zLCAnc3VjY2VzcycpO1xuICAgIH1cblxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tcmVzZXJ2ZWQta2V5d29yZHNcbiAgICBkZWxldGU8VD4ob3B0aW9uczogSU1vZGFsT3B0aW9uc0ZvclNlcnZpY2U8VD4gPSB7fSk6IE1jTW9kYWxSZWY8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaW1wbGVDb25maXJtKG9wdGlvbnMsICd3YXJuJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzaW1wbGVDb25maXJtPFQ+KG9wdGlvbnM6IElNb2RhbE9wdGlvbnNGb3JTZXJ2aWNlPFQ+ID0ge30sIGNvbmZpcm1UeXBlOiBDb25maXJtVHlwZSk6IE1jTW9kYWxSZWY8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maXJtKG9wdGlvbnMsIGNvbmZpcm1UeXBlKTtcbiAgICB9XG59XG4iXX0=