@ptsecurity/mosaic 13.2.0 → 13.4.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 (345) hide show
  1. package/_theming.scss +241 -64
  2. package/_visual.scss +437 -232
  3. package/button/button.component.d.ts +1 -1
  4. package/core/option/option.d.ts +1 -0
  5. package/core/validation/validation.d.ts +3 -3
  6. package/design-tokens/legacy-2017/tokens/components/alert.json5 +37 -37
  7. package/design-tokens/legacy-2017/tokens/components/autocomplete.json5 +2 -2
  8. package/design-tokens/legacy-2017/tokens/components/badge.json5 +69 -69
  9. package/design-tokens/legacy-2017/tokens/components/button-toggle.json5 +2 -2
  10. package/design-tokens/legacy-2017/tokens/components/button.json5 +55 -56
  11. package/design-tokens/legacy-2017/tokens/components/card.json5 +25 -25
  12. package/design-tokens/legacy-2017/tokens/components/checkbox.json5 +13 -13
  13. package/design-tokens/legacy-2017/tokens/components/datepicker.json5 +12 -12
  14. package/design-tokens/legacy-2017/tokens/components/dl.json5 +8 -8
  15. package/design-tokens/legacy-2017/tokens/components/dropdown.json5 +5 -4
  16. package/design-tokens/legacy-2017/tokens/components/form-field.json5 +27 -26
  17. package/design-tokens/legacy-2017/tokens/components/forms.json5 +14 -14
  18. package/design-tokens/legacy-2017/tokens/components/icon.json5 +104 -0
  19. package/design-tokens/legacy-2017/tokens/components/input.json5 +2 -3
  20. package/design-tokens/legacy-2017/tokens/components/link.json5 +13 -19
  21. package/design-tokens/legacy-2017/tokens/components/list.json5 +3 -5
  22. package/design-tokens/legacy-2017/tokens/components/modal.json5 +17 -15
  23. package/design-tokens/legacy-2017/tokens/components/navbar.json5 +19 -18
  24. package/design-tokens/legacy-2017/tokens/components/option.json5 +2 -2
  25. package/design-tokens/legacy-2017/tokens/components/popover.json5 +23 -23
  26. package/design-tokens/legacy-2017/tokens/components/popup.json5 +8 -8
  27. package/design-tokens/legacy-2017/tokens/components/progress-bar.json5 +3 -3
  28. package/design-tokens/legacy-2017/tokens/components/progress-spinner.json5 +1 -1
  29. package/design-tokens/legacy-2017/tokens/components/radio.json5 +12 -12
  30. package/design-tokens/legacy-2017/tokens/components/select.json5 +6 -7
  31. package/design-tokens/legacy-2017/tokens/components/sidepanel.json5 +7 -5
  32. package/design-tokens/legacy-2017/tokens/components/table.json5 +4 -4
  33. package/design-tokens/legacy-2017/tokens/components/tabs.json5 +32 -32
  34. package/design-tokens/legacy-2017/tokens/components/tags.json5 +56 -57
  35. package/design-tokens/legacy-2017/tokens/components/textarea.json5 +1 -1
  36. package/design-tokens/legacy-2017/tokens/components/timepicker.json5 +1 -1
  37. package/design-tokens/legacy-2017/tokens/components/toggle.json5 +18 -18
  38. package/design-tokens/legacy-2017/tokens/components/tooltip.json5 +27 -27
  39. package/design-tokens/legacy-2017/tokens/components/tree.json5 +6 -3
  40. package/design-tokens/legacy-2017/tokens/properties/colors.json5 +39 -35
  41. package/design-tokens/legacy-2017/tokens/properties/globals.json5 +14 -14
  42. package/design-tokens/legacy-2017/tokens/properties/typography.json5 +70 -35
  43. package/design-tokens/legacy-2017/tokens.d.ts +220 -122
  44. package/design-tokens/pt-2022/tokens/components/alert.json5 +37 -37
  45. package/design-tokens/pt-2022/tokens/components/autocomplete.json5 +2 -2
  46. package/design-tokens/pt-2022/tokens/components/badge.json5 +68 -68
  47. package/design-tokens/pt-2022/tokens/components/button-toggle.json5 +2 -2
  48. package/design-tokens/pt-2022/tokens/components/button.json5 +56 -57
  49. package/design-tokens/pt-2022/tokens/components/card.json5 +25 -25
  50. package/design-tokens/pt-2022/tokens/components/checkbox.json5 +13 -13
  51. package/design-tokens/pt-2022/tokens/components/datepicker.json5 +12 -12
  52. package/design-tokens/pt-2022/tokens/components/dl.json5 +4 -4
  53. package/design-tokens/pt-2022/tokens/components/dropdown.json5 +5 -4
  54. package/design-tokens/pt-2022/tokens/components/form-field.json5 +26 -25
  55. package/design-tokens/pt-2022/tokens/components/forms.json5 +14 -14
  56. package/design-tokens/pt-2022/tokens/components/icon.json5 +104 -0
  57. package/design-tokens/pt-2022/tokens/components/input.json5 +2 -3
  58. package/design-tokens/pt-2022/tokens/components/link.json5 +17 -23
  59. package/design-tokens/pt-2022/tokens/components/list.json5 +2 -4
  60. package/design-tokens/pt-2022/tokens/components/modal.json5 +17 -15
  61. package/design-tokens/pt-2022/tokens/components/navbar.json5 +21 -20
  62. package/design-tokens/pt-2022/tokens/components/option.json5 +2 -2
  63. package/design-tokens/pt-2022/tokens/components/popover.json5 +26 -26
  64. package/design-tokens/pt-2022/tokens/components/popup.json5 +8 -8
  65. package/design-tokens/pt-2022/tokens/components/progress-bar.json5 +2 -2
  66. package/design-tokens/pt-2022/tokens/components/progress-spinner.json5 +1 -1
  67. package/design-tokens/pt-2022/tokens/components/radio.json5 +12 -12
  68. package/design-tokens/pt-2022/tokens/components/select.json5 +6 -7
  69. package/design-tokens/pt-2022/tokens/components/sidepanel.json5 +8 -6
  70. package/design-tokens/pt-2022/tokens/components/table.json5 +4 -4
  71. package/design-tokens/pt-2022/tokens/components/tabs.json5 +32 -32
  72. package/design-tokens/pt-2022/tokens/components/tags.json5 +56 -57
  73. package/design-tokens/pt-2022/tokens/components/textarea.json5 +1 -1
  74. package/design-tokens/pt-2022/tokens/components/timepicker.json5 +1 -1
  75. package/design-tokens/pt-2022/tokens/components/toggle.json5 +19 -19
  76. package/design-tokens/pt-2022/tokens/components/tooltip.json5 +29 -29
  77. package/design-tokens/pt-2022/tokens/components/tree.json5 +6 -3
  78. package/design-tokens/pt-2022/tokens/properties/colors.json5 +41 -37
  79. package/design-tokens/pt-2022/tokens/properties/globals.json5 +14 -14
  80. package/design-tokens/pt-2022/tokens/properties/palette.json5 +7 -0
  81. package/design-tokens/pt-2022/tokens/properties/typography.json5 +69 -34
  82. package/design-tokens/pt-2022/tokens.d.ts +508 -118
  83. package/dropdown/dropdown-trigger.directive.d.ts +4 -3
  84. package/esm2020/autocomplete/autocomplete-origin.directive.mjs +3 -3
  85. package/esm2020/autocomplete/autocomplete-trigger.directive.mjs +3 -3
  86. package/esm2020/autocomplete/autocomplete.component.mjs +5 -5
  87. package/esm2020/autocomplete/autocomplete.module.mjs +4 -4
  88. package/esm2020/button/button.component.mjs +29 -21
  89. package/esm2020/button/button.module.mjs +4 -4
  90. package/esm2020/button-toggle/button-toggle.component.mjs +8 -8
  91. package/esm2020/button-toggle/button-toggle.module.mjs +4 -4
  92. package/esm2020/card/card.component.mjs +3 -3
  93. package/esm2020/card/card.module.mjs +4 -4
  94. package/esm2020/checkbox/checkbox-module.mjs +4 -4
  95. package/esm2020/checkbox/checkbox-required-validator.mjs +3 -3
  96. package/esm2020/checkbox/checkbox.mjs +3 -3
  97. package/esm2020/core/common-behaviors/common-module.mjs +4 -4
  98. package/esm2020/core/error/error-options.mjs +6 -6
  99. package/esm2020/core/formatters/date/formatter.mjs +3 -3
  100. package/esm2020/core/formatters/index.mjs +4 -4
  101. package/esm2020/core/formatters/number/formatter.mjs +4 -4
  102. package/esm2020/core/forms/forms-module.mjs +4 -4
  103. package/esm2020/core/forms/forms.directive.mjs +6 -6
  104. package/esm2020/core/highlight/highlight.pipe.mjs +3 -3
  105. package/esm2020/core/highlight/index.mjs +4 -4
  106. package/esm2020/core/line/line.mjs +7 -7
  107. package/esm2020/core/option/action.mjs +3 -3
  108. package/esm2020/core/option/optgroup.mjs +3 -3
  109. package/esm2020/core/option/option-module.mjs +4 -4
  110. package/esm2020/core/option/option.mjs +10 -7
  111. package/esm2020/core/pop-up/pop-up-trigger.mjs +3 -3
  112. package/esm2020/core/pop-up/pop-up.mjs +3 -3
  113. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
  114. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +4 -4
  115. package/esm2020/core/services/measure-scrollbar.service.mjs +3 -3
  116. package/esm2020/core/validation/validation.mjs +10 -5
  117. package/esm2020/datepicker/calendar-body.component.mjs +3 -3
  118. package/esm2020/datepicker/calendar.component.mjs +6 -6
  119. package/esm2020/datepicker/datepicker-input.directive.mjs +3 -3
  120. package/esm2020/datepicker/datepicker-intl.mjs +3 -3
  121. package/esm2020/datepicker/datepicker-module.mjs +4 -4
  122. package/esm2020/datepicker/datepicker-toggle.component.mjs +6 -6
  123. package/esm2020/datepicker/datepicker.component.mjs +6 -6
  124. package/esm2020/datepicker/month-view.component.mjs +3 -3
  125. package/esm2020/datepicker/multi-year-view.component.mjs +3 -3
  126. package/esm2020/datepicker/year-view.component.mjs +3 -3
  127. package/esm2020/design-tokens/legacy-2017/tokens.mjs +221 -123
  128. package/esm2020/design-tokens/pt-2022/tokens.mjs +243 -138
  129. package/esm2020/divider/divider.component.mjs +3 -3
  130. package/esm2020/divider/divider.module.mjs +4 -4
  131. package/esm2020/dl/dl.component.mjs +9 -9
  132. package/esm2020/dl/dl.module.mjs +4 -4
  133. package/esm2020/dropdown/dropdown-content.directive.mjs +3 -3
  134. package/esm2020/dropdown/dropdown-item.component.mjs +5 -5
  135. package/esm2020/dropdown/dropdown-trigger.directive.mjs +11 -7
  136. package/esm2020/dropdown/dropdown.component.mjs +6 -6
  137. package/esm2020/dropdown/dropdown.module.mjs +4 -4
  138. package/esm2020/form-field/cleaner.mjs +3 -3
  139. package/esm2020/form-field/form-field.mjs +7 -7
  140. package/esm2020/form-field/form-field.module.mjs +4 -4
  141. package/esm2020/form-field/hint.mjs +3 -3
  142. package/esm2020/form-field/password-hint.mjs +34 -15
  143. package/esm2020/form-field/prefix.mjs +3 -3
  144. package/esm2020/form-field/stepper.mjs +3 -3
  145. package/esm2020/form-field/suffix.mjs +3 -3
  146. package/esm2020/icon/icon.component.mjs +6 -6
  147. package/esm2020/icon/icon.module.mjs +4 -4
  148. package/esm2020/input/input-number-validators.mjs +6 -6
  149. package/esm2020/input/input-number.mjs +3 -3
  150. package/esm2020/input/input-password.mjs +12 -11
  151. package/esm2020/input/input.mjs +12 -11
  152. package/esm2020/input/input.module.mjs +4 -4
  153. package/esm2020/link/link.component.mjs +3 -3
  154. package/esm2020/link/link.module.mjs +4 -4
  155. package/esm2020/list/list-selection.component.mjs +11 -11
  156. package/esm2020/list/list.component.mjs +7 -7
  157. package/esm2020/list/list.module.mjs +4 -4
  158. package/esm2020/modal/css-unit.pipe.mjs +3 -3
  159. package/esm2020/modal/modal-control.service.mjs +3 -3
  160. package/esm2020/modal/modal.component.mjs +4 -4
  161. package/esm2020/modal/modal.directive.mjs +12 -12
  162. package/esm2020/modal/modal.module.mjs +4 -4
  163. package/esm2020/modal/modal.service.mjs +3 -3
  164. package/esm2020/navbar/navbar-item.component.mjs +81 -82
  165. package/esm2020/navbar/navbar.component.mjs +10 -10
  166. package/esm2020/navbar/navbar.module.mjs +4 -4
  167. package/esm2020/navbar/vertical-navbar.animation.mjs +3 -3
  168. package/esm2020/navbar/vertical-navbar.component.mjs +6 -6
  169. package/esm2020/popover/popover-confirm.component.mjs +8 -8
  170. package/esm2020/popover/popover.component.mjs +8 -8
  171. package/esm2020/popover/popover.module.mjs +4 -4
  172. package/esm2020/progress-bar/progress-bar.component.mjs +3 -3
  173. package/esm2020/progress-bar/progress-bar.module.mjs +4 -4
  174. package/esm2020/progress-spinner/progress-spinner.component.mjs +3 -3
  175. package/esm2020/progress-spinner/progress-spinner.module.mjs +4 -4
  176. package/esm2020/radio/radio.component.mjs +6 -6
  177. package/esm2020/radio/radio.module.mjs +4 -4
  178. package/esm2020/select/public-api.mjs +2 -1
  179. package/esm2020/select/select-option.directive.mjs +65 -0
  180. package/esm2020/select/select.component.mjs +16 -16
  181. package/esm2020/select/select.module.mjs +19 -10
  182. package/esm2020/sidebar/sidebar.component.mjs +9 -9
  183. package/esm2020/sidebar/sidebar.module.mjs +4 -4
  184. package/esm2020/sidepanel/sidepanel-container.component.mjs +5 -5
  185. package/esm2020/sidepanel/sidepanel-directives.mjs +15 -15
  186. package/esm2020/sidepanel/sidepanel.module.mjs +4 -4
  187. package/esm2020/sidepanel/sidepanel.service.mjs +3 -3
  188. package/esm2020/splitter/splitter.component.mjs +12 -12
  189. package/esm2020/splitter/splitter.module.mjs +4 -4
  190. package/esm2020/table/table.component.mjs +3 -3
  191. package/esm2020/table/table.module.mjs +4 -4
  192. package/esm2020/tabs/paginated-tab-header.mjs +3 -3
  193. package/esm2020/tabs/tab-body.component.mjs +6 -6
  194. package/esm2020/tabs/tab-content.directive.mjs +3 -3
  195. package/esm2020/tabs/tab-group.component.mjs +19 -19
  196. package/esm2020/tabs/tab-header.component.mjs +4 -4
  197. package/esm2020/tabs/tab-label-wrapper.directive.mjs +3 -3
  198. package/esm2020/tabs/tab-label.directive.mjs +3 -3
  199. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +6 -6
  200. package/esm2020/tabs/tab.component.mjs +3 -3
  201. package/esm2020/tabs/tabs.module.mjs +4 -4
  202. package/esm2020/tags/tag-input.mjs +3 -3
  203. package/esm2020/tags/tag-list.component.mjs +6 -6
  204. package/esm2020/tags/tag.component.mjs +67 -69
  205. package/esm2020/tags/tag.module.mjs +4 -4
  206. package/esm2020/textarea/textarea.component.mjs +9 -8
  207. package/esm2020/textarea/textarea.module.mjs +4 -4
  208. package/esm2020/timepicker/timepicker.directive.mjs +3 -3
  209. package/esm2020/timepicker/timepicker.module.mjs +4 -4
  210. package/esm2020/toggle/toggle.component.mjs +3 -3
  211. package/esm2020/toggle/toggle.module.mjs +4 -4
  212. package/esm2020/tooltip/tooltip.component.mjs +15 -14
  213. package/esm2020/tooltip/tooltip.module.mjs +4 -4
  214. package/esm2020/tree/node.mjs +3 -3
  215. package/esm2020/tree/outlet.mjs +3 -3
  216. package/esm2020/tree/padding.directive.mjs +3 -3
  217. package/esm2020/tree/toggle.mjs +10 -10
  218. package/esm2020/tree/tree-base.mjs +6 -6
  219. package/esm2020/tree/tree-option.component.mjs +5 -5
  220. package/esm2020/tree/tree-selection.component.mjs +8 -6
  221. package/esm2020/tree/tree.mjs +3 -3
  222. package/esm2020/tree/tree.module.mjs +4 -4
  223. package/esm2020/tree-select/tree-select.component.mjs +14 -14
  224. package/esm2020/tree-select/tree-select.module.mjs +4 -4
  225. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs +15 -15
  226. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs +12 -12
  227. package/fesm2015/ptsecurity-mosaic-button.mjs +32 -24
  228. package/fesm2015/ptsecurity-mosaic-button.mjs.map +1 -1
  229. package/fesm2015/ptsecurity-mosaic-card.mjs +7 -7
  230. package/fesm2015/ptsecurity-mosaic-checkbox.mjs +10 -10
  231. package/fesm2015/ptsecurity-mosaic-core.mjs +89 -81
  232. package/fesm2015/ptsecurity-mosaic-core.mjs.map +1 -1
  233. package/fesm2015/ptsecurity-mosaic-datepicker.mjs +40 -40
  234. package/fesm2015/ptsecurity-mosaic-design-tokens.mjs +572 -271
  235. package/fesm2015/ptsecurity-mosaic-design-tokens.mjs.map +1 -1
  236. package/fesm2015/ptsecurity-mosaic-divider.mjs +7 -7
  237. package/fesm2015/ptsecurity-mosaic-dl.mjs +13 -13
  238. package/fesm2015/ptsecurity-mosaic-dropdown.mjs +25 -21
  239. package/fesm2015/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  240. package/fesm2015/ptsecurity-mosaic-form-field.mjs +60 -38
  241. package/fesm2015/ptsecurity-mosaic-form-field.mjs.map +1 -1
  242. package/fesm2015/ptsecurity-mosaic-icon.mjs +10 -10
  243. package/fesm2015/ptsecurity-mosaic-input.mjs +33 -31
  244. package/fesm2015/ptsecurity-mosaic-input.mjs.map +1 -1
  245. package/fesm2015/ptsecurity-mosaic-link.mjs +7 -7
  246. package/fesm2015/ptsecurity-mosaic-list.mjs +21 -21
  247. package/fesm2015/ptsecurity-mosaic-list.mjs.map +1 -1
  248. package/fesm2015/ptsecurity-mosaic-modal.mjs +29 -29
  249. package/fesm2015/ptsecurity-mosaic-modal.mjs.map +1 -1
  250. package/fesm2015/ptsecurity-mosaic-navbar.mjs +100 -101
  251. package/fesm2015/ptsecurity-mosaic-navbar.mjs.map +1 -1
  252. package/fesm2015/ptsecurity-mosaic-popover.mjs +18 -18
  253. package/fesm2015/ptsecurity-mosaic-popover.mjs.map +1 -1
  254. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs +7 -7
  255. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs +7 -7
  256. package/fesm2015/ptsecurity-mosaic-radio.mjs +10 -10
  257. package/fesm2015/ptsecurity-mosaic-select.mjs +99 -33
  258. package/fesm2015/ptsecurity-mosaic-select.mjs.map +1 -1
  259. package/fesm2015/ptsecurity-mosaic-sidebar.mjs +13 -13
  260. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs +26 -26
  261. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  262. package/fesm2015/ptsecurity-mosaic-splitter.mjs +16 -16
  263. package/fesm2015/ptsecurity-mosaic-table.mjs +7 -7
  264. package/fesm2015/ptsecurity-mosaic-tabs.mjs +54 -54
  265. package/fesm2015/ptsecurity-mosaic-tabs.mjs.map +1 -1
  266. package/fesm2015/ptsecurity-mosaic-tags.mjs +81 -83
  267. package/fesm2015/ptsecurity-mosaic-tags.mjs.map +1 -1
  268. package/fesm2015/ptsecurity-mosaic-textarea.mjs +11 -10
  269. package/fesm2015/ptsecurity-mosaic-textarea.mjs.map +1 -1
  270. package/fesm2015/ptsecurity-mosaic-timepicker.mjs +7 -7
  271. package/fesm2015/ptsecurity-mosaic-toggle.mjs +7 -7
  272. package/fesm2015/ptsecurity-mosaic-tooltip.mjs +18 -17
  273. package/fesm2015/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  274. package/fesm2015/ptsecurity-mosaic-tree-select.mjs +17 -17
  275. package/fesm2015/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  276. package/fesm2015/ptsecurity-mosaic-tree.mjs +44 -42
  277. package/fesm2015/ptsecurity-mosaic-tree.mjs.map +1 -1
  278. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs +15 -15
  279. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs +12 -12
  280. package/fesm2020/ptsecurity-mosaic-button.mjs +32 -24
  281. package/fesm2020/ptsecurity-mosaic-button.mjs.map +1 -1
  282. package/fesm2020/ptsecurity-mosaic-card.mjs +7 -7
  283. package/fesm2020/ptsecurity-mosaic-checkbox.mjs +10 -10
  284. package/fesm2020/ptsecurity-mosaic-core.mjs +89 -81
  285. package/fesm2020/ptsecurity-mosaic-core.mjs.map +1 -1
  286. package/fesm2020/ptsecurity-mosaic-datepicker.mjs +40 -40
  287. package/fesm2020/ptsecurity-mosaic-design-tokens.mjs +572 -271
  288. package/fesm2020/ptsecurity-mosaic-design-tokens.mjs.map +1 -1
  289. package/fesm2020/ptsecurity-mosaic-divider.mjs +7 -7
  290. package/fesm2020/ptsecurity-mosaic-dl.mjs +13 -13
  291. package/fesm2020/ptsecurity-mosaic-dropdown.mjs +25 -21
  292. package/fesm2020/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  293. package/fesm2020/ptsecurity-mosaic-form-field.mjs +57 -38
  294. package/fesm2020/ptsecurity-mosaic-form-field.mjs.map +1 -1
  295. package/fesm2020/ptsecurity-mosaic-icon.mjs +10 -10
  296. package/fesm2020/ptsecurity-mosaic-input.mjs +33 -31
  297. package/fesm2020/ptsecurity-mosaic-input.mjs.map +1 -1
  298. package/fesm2020/ptsecurity-mosaic-link.mjs +7 -7
  299. package/fesm2020/ptsecurity-mosaic-list.mjs +21 -21
  300. package/fesm2020/ptsecurity-mosaic-list.mjs.map +1 -1
  301. package/fesm2020/ptsecurity-mosaic-modal.mjs +29 -29
  302. package/fesm2020/ptsecurity-mosaic-modal.mjs.map +1 -1
  303. package/fesm2020/ptsecurity-mosaic-navbar.mjs +100 -101
  304. package/fesm2020/ptsecurity-mosaic-navbar.mjs.map +1 -1
  305. package/fesm2020/ptsecurity-mosaic-popover.mjs +18 -18
  306. package/fesm2020/ptsecurity-mosaic-popover.mjs.map +1 -1
  307. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs +7 -7
  308. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs +7 -7
  309. package/fesm2020/ptsecurity-mosaic-radio.mjs +10 -10
  310. package/fesm2020/ptsecurity-mosaic-select.mjs +96 -32
  311. package/fesm2020/ptsecurity-mosaic-select.mjs.map +1 -1
  312. package/fesm2020/ptsecurity-mosaic-sidebar.mjs +13 -13
  313. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs +26 -26
  314. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  315. package/fesm2020/ptsecurity-mosaic-splitter.mjs +16 -16
  316. package/fesm2020/ptsecurity-mosaic-table.mjs +7 -7
  317. package/fesm2020/ptsecurity-mosaic-tabs.mjs +54 -54
  318. package/fesm2020/ptsecurity-mosaic-tabs.mjs.map +1 -1
  319. package/fesm2020/ptsecurity-mosaic-tags.mjs +79 -81
  320. package/fesm2020/ptsecurity-mosaic-tags.mjs.map +1 -1
  321. package/fesm2020/ptsecurity-mosaic-textarea.mjs +11 -10
  322. package/fesm2020/ptsecurity-mosaic-textarea.mjs.map +1 -1
  323. package/fesm2020/ptsecurity-mosaic-timepicker.mjs +7 -7
  324. package/fesm2020/ptsecurity-mosaic-toggle.mjs +7 -7
  325. package/fesm2020/ptsecurity-mosaic-tooltip.mjs +18 -17
  326. package/fesm2020/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  327. package/fesm2020/ptsecurity-mosaic-tree-select.mjs +17 -17
  328. package/fesm2020/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  329. package/fesm2020/ptsecurity-mosaic-tree.mjs +44 -42
  330. package/fesm2020/ptsecurity-mosaic-tree.mjs.map +1 -1
  331. package/form-field/password-hint.d.ts +3 -1
  332. package/input/input-password.d.ts +4 -3
  333. package/input/input.d.ts +4 -3
  334. package/list/list-selection.component.d.ts +1 -1
  335. package/navbar/navbar-item.component.d.ts +18 -18
  336. package/package.json +4 -4
  337. package/prebuilt-themes/dark-theme.css +1 -1
  338. package/prebuilt-themes/default-theme.css +1 -1
  339. package/prebuilt-visual/default-visual.css +1 -1
  340. package/select/public-api.d.ts +1 -0
  341. package/select/select-option.directive.d.ts +20 -0
  342. package/select/select.module.d.ts +9 -7
  343. package/tags/tag.component.d.ts +21 -21
  344. package/textarea/textarea.component.d.ts +4 -3
  345. package/toggle/README.md +0 -0
@@ -24,9 +24,9 @@ export class McProgressBar extends McProgressBarMixinBase {
24
24
  return Math.max(MIN_PERCENT, Math.min(MAX_PERCENT, this.value)) / MAX_PERCENT;
25
25
  }
26
26
  }
27
- /** @nocollapse */ /** @nocollapse */ McProgressBar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressBar, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
28
- /** @nocollapse */ /** @nocollapse */ McProgressBar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: McProgressBar, selector: "mc-progress-bar", inputs: { color: "color", id: "id", value: "value", mode: "mode" }, host: { properties: { "attr.id": "id" }, classAttribute: "mc-progress-bar" }, usesInheritance: true, ngImport: i0, template: "\n<div class=\"mc-progress-bar__inner\" [ngSwitch]=\"mode\" [id]=\"id\">\n <div\n *ngSwitchCase=\"'indeterminate'\"\n class=\"mc-progress-bar__line mc-progress-bar__line--indeterminate\">\n </div>\n <div\n *ngSwitchDefault\n class=\"mc-progress-bar__line mc-progress-bar__line--determinate\"\n [ngStyle]=\"{transform: 'scaleX(' + percentage + ')'}\">\n </div>\n</div>\n", styles: ["@keyframes mc-progress-bar-indeterminate{0%{transform:scaleX(.25) translate(-150%)}to{transform:scaleX(.4) translate(250%)}}.mc-progress-bar{display:block;height:var(--mc-progress-bar-size-height, 4px);overflow:hidden}.mc-progress-bar__inner{height:100%}.mc-progress-bar__line{height:100%;transform-origin:top left}.mc-progress-bar__line--determinate{transition:transform .3s}.mc-progress-bar__line--indeterminate{animation:mc-progress-bar-indeterminate 2.1s cubic-bezier(.455,.03,.515,.955) infinite}\n"], directives: [{ type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressBar, decorators: [{
27
+ /** @nocollapse */ /** @nocollapse */ McProgressBar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressBar, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
28
+ /** @nocollapse */ /** @nocollapse */ McProgressBar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.7", type: McProgressBar, selector: "mc-progress-bar", inputs: { color: "color", id: "id", value: "value", mode: "mode" }, host: { properties: { "attr.id": "id" }, classAttribute: "mc-progress-bar" }, usesInheritance: true, ngImport: i0, template: "\n<div class=\"mc-progress-bar__inner\" [ngSwitch]=\"mode\" [id]=\"id\">\n <div\n *ngSwitchCase=\"'indeterminate'\"\n class=\"mc-progress-bar__line mc-progress-bar__line--indeterminate\">\n </div>\n <div\n *ngSwitchDefault\n class=\"mc-progress-bar__line mc-progress-bar__line--determinate\"\n [ngStyle]=\"{transform: 'scaleX(' + percentage + ')'}\">\n </div>\n</div>\n", styles: ["@keyframes mc-progress-bar-indeterminate{0%{transform:scaleX(.25) translate(-150%)}to{transform:scaleX(.4) translate(250%)}}.mc-progress-bar{display:block;height:var(--mc-progress-bar-size-height, 4px);overflow:hidden}.mc-progress-bar__inner{height:100%}.mc-progress-bar__line{height:100%;transform-origin:top left}.mc-progress-bar__line--determinate{transition:transform .3s}.mc-progress-bar__line--indeterminate{animation:mc-progress-bar-indeterminate 2.1s cubic-bezier(.455,.03,.515,.955) infinite}\n"], directives: [{ type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressBar, decorators: [{
30
30
  type: Component,
31
31
  args: [{ selector: 'mc-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: ['color'], host: {
32
32
  class: 'mc-progress-bar',
@@ -5,14 +5,14 @@ import { McProgressBar } from './progress-bar.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class McProgressBarModule {
7
7
  }
8
- /** @nocollapse */ /** @nocollapse */ McProgressBarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- /** @nocollapse */ /** @nocollapse */ McProgressBarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressBarModule, declarations: [McProgressBar], imports: [CommonModule,
8
+ /** @nocollapse */ /** @nocollapse */ McProgressBarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ /** @nocollapse */ /** @nocollapse */ McProgressBarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressBarModule, declarations: [McProgressBar], imports: [CommonModule,
10
10
  PlatformModule], exports: [McProgressBar] });
11
- /** @nocollapse */ /** @nocollapse */ McProgressBarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressBarModule, imports: [[
11
+ /** @nocollapse */ /** @nocollapse */ McProgressBarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressBarModule, imports: [[
12
12
  CommonModule,
13
13
  PlatformModule
14
14
  ]] });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressBarModule, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressBarModule, decorators: [{
16
16
  type: NgModule,
17
17
  args: [{
18
18
  imports: [
@@ -28,9 +28,9 @@ export class McProgressSpinner extends McProgressSpinnerMixinBase {
28
28
  return `${MAX_DASH_ARRAY - this.percentage * MAX_DASH_ARRAY}%`;
29
29
  }
30
30
  }
31
- /** @nocollapse */ /** @nocollapse */ McProgressSpinner.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressSpinner, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
32
- /** @nocollapse */ /** @nocollapse */ McProgressSpinner.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: McProgressSpinner, selector: "mc-progress-spinner", inputs: { color: "color", id: "id", value: "value", mode: "mode" }, host: { properties: { "attr.id": "id" }, classAttribute: "mc-progress-spinner" }, usesInheritance: true, ngImport: i0, template: "<div class=\"mc-progress-spinner__inner\"\n [ngClass]=\"{'mc-progress-spinner__inner--indeterminate': mode === 'indeterminate'}\">\n <svg focusable=\"false\"\n preserveAspectRatio=\"xMidYMid meet\"\n viewBox=\"0 0 100 100\"\n class=\"mc-progress-spinner__svg\">\n <circle cx=\"50%\"\n cy=\"50%\"\n r=\"42.5%\"\n class=\"mc-progress-spinner__circle\"\n [ngStyle]=\"{'stroke-dashoffset': mode === 'determinate' ? dashOffsetPercent : null}\">\n </circle>\n </svg>\n</div>\n\n", styles: ["@keyframes mc-progress-spinner-indeterminate{to{transform:rotate(270deg)}}.mc-progress-spinner{display:inline-block;width:var(--mc-progress-spinner-size-size, 16px);height:var(--mc-progress-spinner-size-size, 16px);overflow:hidden}.mc-progress-spinner__circle{fill:none;stroke:#000;stroke-dasharray:273%;stroke-width:13%;transition:stroke-dashoffset .3s;transform-origin:center center}.mc-progress-spinner__inner{width:100%;height:100%;transform:rotate(-90deg)}.mc-progress-spinner__inner--indeterminate{animation:mc-progress-spinner-indeterminate 1.5s cubic-bezier(.455,.03,.515,.955) infinite}.mc-progress-spinner__inner--indeterminate .mc-progress-spinner__circle{stroke-dashoffset:80%}.mc-progress-spinner__svg{width:100%;height:100%}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressSpinner, decorators: [{
31
+ /** @nocollapse */ /** @nocollapse */ McProgressSpinner.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressSpinner, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
32
+ /** @nocollapse */ /** @nocollapse */ McProgressSpinner.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.7", type: McProgressSpinner, selector: "mc-progress-spinner", inputs: { color: "color", id: "id", value: "value", mode: "mode" }, host: { properties: { "attr.id": "id" }, classAttribute: "mc-progress-spinner" }, usesInheritance: true, ngImport: i0, template: "<div class=\"mc-progress-spinner__inner\"\n [ngClass]=\"{'mc-progress-spinner__inner--indeterminate': mode === 'indeterminate'}\">\n <svg focusable=\"false\"\n preserveAspectRatio=\"xMidYMid meet\"\n viewBox=\"0 0 100 100\"\n class=\"mc-progress-spinner__svg\">\n <circle cx=\"50%\"\n cy=\"50%\"\n r=\"42.5%\"\n class=\"mc-progress-spinner__circle\"\n [ngStyle]=\"{'stroke-dashoffset': mode === 'determinate' ? dashOffsetPercent : null}\">\n </circle>\n </svg>\n</div>\n\n", styles: ["@keyframes mc-progress-spinner-indeterminate{to{transform:rotate(270deg)}}.mc-progress-spinner{display:inline-block;width:var(--mc-progress-spinner-size-size, 16px);height:var(--mc-progress-spinner-size-size, 16px);overflow:hidden}.mc-progress-spinner__circle{fill:none;stroke:#000;stroke-dasharray:273%;stroke-width:13%;transition:stroke-dashoffset .3s;transform-origin:center center}.mc-progress-spinner__inner{width:100%;height:100%;transform:rotate(-90deg)}.mc-progress-spinner__inner--indeterminate{animation:mc-progress-spinner-indeterminate 1.5s cubic-bezier(.455,.03,.515,.955) infinite}.mc-progress-spinner__inner--indeterminate .mc-progress-spinner__circle{stroke-dashoffset:80%}.mc-progress-spinner__svg{width:100%;height:100%}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressSpinner, decorators: [{
34
34
  type: Component,
35
35
  args: [{ selector: 'mc-progress-spinner', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: ['color'], host: {
36
36
  class: 'mc-progress-spinner',
@@ -5,14 +5,14 @@ import { McProgressSpinner } from './progress-spinner.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class McProgressSpinnerModule {
7
7
  }
8
- /** @nocollapse */ /** @nocollapse */ McProgressSpinnerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressSpinnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- /** @nocollapse */ /** @nocollapse */ McProgressSpinnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressSpinnerModule, declarations: [McProgressSpinner], imports: [CommonModule,
8
+ /** @nocollapse */ /** @nocollapse */ McProgressSpinnerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressSpinnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ /** @nocollapse */ /** @nocollapse */ McProgressSpinnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressSpinnerModule, declarations: [McProgressSpinner], imports: [CommonModule,
10
10
  PlatformModule], exports: [McProgressSpinner] });
11
- /** @nocollapse */ /** @nocollapse */ McProgressSpinnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressSpinnerModule, imports: [[
11
+ /** @nocollapse */ /** @nocollapse */ McProgressSpinnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressSpinnerModule, imports: [[
12
12
  CommonModule,
13
13
  PlatformModule
14
14
  ]] });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McProgressSpinnerModule, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McProgressSpinnerModule, decorators: [{
16
16
  type: NgModule,
17
17
  args: [{
18
18
  imports: [
@@ -209,9 +209,9 @@ export class McRadioGroup extends McRadioGroupMixinBase {
209
209
  }
210
210
  }
211
211
  }
212
- /** @nocollapse */ /** @nocollapse */ McRadioGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McRadioGroup, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
213
- /** @nocollapse */ /** @nocollapse */ McRadioGroup.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.0", type: McRadioGroup, selector: "mc-radio-group", inputs: { name: "name", labelPosition: "labelPosition", value: "value", selected: "selected", disabled: "disabled", required: "required" }, outputs: { change: "change" }, host: { attributes: { "role": "radiogroup" }, classAttribute: "mc-radio-group" }, providers: [MC_RADIO_GROUP_CONTROL_VALUE_ACCESSOR], queries: [{ propertyName: "radios", predicate: i0.forwardRef(function () { return McRadioButton; }), descendants: true }], exportAs: ["mcRadioGroup"], usesInheritance: true, ngImport: i0 });
214
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McRadioGroup, decorators: [{
212
+ /** @nocollapse */ /** @nocollapse */ McRadioGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McRadioGroup, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
213
+ /** @nocollapse */ /** @nocollapse */ McRadioGroup.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.7", type: McRadioGroup, selector: "mc-radio-group", inputs: { name: "name", labelPosition: "labelPosition", value: "value", selected: "selected", disabled: "disabled", required: "required" }, outputs: { change: "change" }, host: { attributes: { "role": "radiogroup" }, classAttribute: "mc-radio-group" }, providers: [MC_RADIO_GROUP_CONTROL_VALUE_ACCESSOR], queries: [{ propertyName: "radios", predicate: i0.forwardRef(function () { return McRadioButton; }), descendants: true }], exportAs: ["mcRadioGroup"], usesInheritance: true, ngImport: i0 });
214
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McRadioGroup, decorators: [{
215
215
  type: Directive,
216
216
  args: [{
217
217
  selector: 'mc-radio-group',
@@ -412,9 +412,9 @@ export class McRadioButton extends McRadioButtonMixinBase {
412
412
  this.change.emit(new McRadioChange(this, this._value));
413
413
  }
414
414
  }
415
- /** @nocollapse */ /** @nocollapse */ McRadioButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McRadioButton, deps: [{ token: McRadioGroup, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.UniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component });
416
- /** @nocollapse */ /** @nocollapse */ McRadioButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: McRadioButton, selector: "mc-radio-button", inputs: { color: "color", tabIndex: "tabIndex", checked: "checked", value: "value", disabled: "disabled", required: "required", labelPosition: "labelPosition", name: "name", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], ariaDescribedby: ["aria-describedby", "ariaDescribedby"], isFocused: "isFocused", id: "id" }, outputs: { change: "change" }, host: { properties: { "attr.id": "id", "class.mc-selected": "checked", "class.mc-disabled": "disabled" }, classAttribute: "mc-radio-button" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], exportAs: ["mcRadioButton"], usesInheritance: true, ngImport: i0, template: "<label class=\"mc-radio-label\" [attr.for]=\"inputId\" #label>\n <input type=\"radio\"\n class=\"mc-radio-input cdk-visually-hidden\"\n #input\n [id]=\"inputId\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [attr.name]=\"name\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"onInputChange($event)\"\n (click)=\"onInputClick($event)\">\n\n <div class=\"mc-radio-label-content\" [class.mc-radio-label-before]=\"labelPosition == 'before'\">\n <div class=\"mc-radio-button__outer-circle\"></div>\n <div class=\"mc-radio-button__inner-circle\"></div>\n <ng-content></ng-content>\n </div>\n</label>\n", styles: [".mc-radio-button{display:inline-block}.mc-radio-label{display:inline-flex;align-items:center;vertical-align:middle;cursor:pointer;white-space:nowrap;width:100%}.mc-radio-label-content{display:inline-block;position:relative;order:0;line-height:inherit;padding-left:calc(var(--mc-radio-size-size, 14px) + var(--mc-radio-size-padding, 8px));padding-right:0}.mc-radio-label-content .mc-radio-button__outer-circle,.mc-radio-label-content .mc-radio-button__inner-circle{box-sizing:content-box;position:absolute;content:\"\";border-style:solid;border-radius:50%}.mc-radio-label-content .mc-radio-button__outer-circle{left:0;top:calc(50% - 8px);width:var(--mc-radio-size-size, 14px);height:var(--mc-radio-size-size, 14px);border-width:1px}.mc-radio-label-content .mc-radio-button__inner-circle{display:none;left:1px;top:calc(50% - 7px);width:6px;height:6px;border-width:4px}[dir=rtl] .mc-radio-label-content{padding-right:var(--mc-radio-size-padding, 8px);padding-left:0}.mc-radio-input{position:absolute;outline:none;opacity:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
417
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McRadioButton, decorators: [{
415
+ /** @nocollapse */ /** @nocollapse */ McRadioButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McRadioButton, deps: [{ token: McRadioGroup, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.UniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component });
416
+ /** @nocollapse */ /** @nocollapse */ McRadioButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.7", type: McRadioButton, selector: "mc-radio-button", inputs: { color: "color", tabIndex: "tabIndex", checked: "checked", value: "value", disabled: "disabled", required: "required", labelPosition: "labelPosition", name: "name", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], ariaDescribedby: ["aria-describedby", "ariaDescribedby"], isFocused: "isFocused", id: "id" }, outputs: { change: "change" }, host: { properties: { "attr.id": "id", "class.mc-selected": "checked", "class.mc-disabled": "disabled" }, classAttribute: "mc-radio-button" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], exportAs: ["mcRadioButton"], usesInheritance: true, ngImport: i0, template: "<label class=\"mc-radio-label\" [attr.for]=\"inputId\" #label>\n <input type=\"radio\"\n class=\"mc-radio-input cdk-visually-hidden\"\n #input\n [id]=\"inputId\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [attr.name]=\"name\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"onInputChange($event)\"\n (click)=\"onInputClick($event)\">\n\n <div class=\"mc-radio-label-content\" [class.mc-radio-label-before]=\"labelPosition == 'before'\">\n <div class=\"mc-radio-button__outer-circle\"></div>\n <div class=\"mc-radio-button__inner-circle\"></div>\n <ng-content></ng-content>\n </div>\n</label>\n", styles: [".mc-radio-button{display:inline-block}.mc-radio-label{display:inline-flex;align-items:center;vertical-align:middle;cursor:pointer;white-space:nowrap;width:100%}.mc-radio-label-content{display:inline-block;position:relative;order:0;line-height:inherit;padding-left:calc(var(--mc-radio-size-size, 14px) + var(--mc-radio-size-padding, 8px));padding-right:0}.mc-radio-label-content .mc-radio-button__outer-circle,.mc-radio-label-content .mc-radio-button__inner-circle{box-sizing:content-box;position:absolute;content:\"\";border-style:solid;border-radius:50%}.mc-radio-label-content .mc-radio-button__outer-circle{left:0;top:calc(50% - 8px);width:var(--mc-radio-size-size, 14px);height:var(--mc-radio-size-size, 14px);border-width:1px}.mc-radio-label-content .mc-radio-button__inner-circle{display:none;left:1px;top:calc(50% - 7px);width:6px;height:6px;border-width:4px}[dir=rtl] .mc-radio-label-content{padding-right:var(--mc-radio-size-padding, 8px);padding-left:0}.mc-radio-input{position:absolute;outline:none;opacity:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
417
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McRadioButton, decorators: [{
418
418
  type: Component,
419
419
  args: [{ selector: 'mc-radio-button', inputs: ['color', 'tabIndex'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'mcRadioButton', host: {
420
420
  class: 'mc-radio-button',
@@ -6,10 +6,10 @@ import { McRadioButton, McRadioGroup } from './radio.component';
6
6
  import * as i0 from "@angular/core";
7
7
  export class McRadioModule {
8
8
  }
9
- /** @nocollapse */ /** @nocollapse */ McRadioModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McRadioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- /** @nocollapse */ /** @nocollapse */ McRadioModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McRadioModule, declarations: [McRadioGroup, McRadioButton], imports: [CommonModule, A11yModule, McCommonModule], exports: [McRadioGroup, McRadioButton] });
11
- /** @nocollapse */ /** @nocollapse */ McRadioModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McRadioModule, imports: [[CommonModule, A11yModule, McCommonModule]] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: McRadioModule, decorators: [{
9
+ /** @nocollapse */ /** @nocollapse */ McRadioModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McRadioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ /** @nocollapse */ /** @nocollapse */ McRadioModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McRadioModule, declarations: [McRadioGroup, McRadioButton], imports: [CommonModule, A11yModule, McCommonModule], exports: [McRadioGroup, McRadioButton] });
11
+ /** @nocollapse */ /** @nocollapse */ McRadioModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McRadioModule, imports: [[CommonModule, A11yModule, McCommonModule]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McRadioModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  imports: [CommonModule, A11yModule, McCommonModule],
@@ -1,3 +1,4 @@
1
1
  export * from './select.module';
2
2
  export * from './select.component';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy9zZWxlY3QvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NlbGVjdC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QuY29tcG9uZW50JztcbiJdfQ==
3
+ export * from './select-option.directive';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy9zZWxlY3QvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2VsZWN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -0,0 +1,65 @@
1
+ import { Directionality } from '@angular/cdk/bidi';
2
+ import { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';
3
+ import { Directive, ElementRef, Inject, NgZone, Optional, ViewContainerRef } from '@angular/core';
4
+ import { McOption } from '@ptsecurity/mosaic/core';
5
+ import { McTooltipTrigger, MC_TOOLTIP_SCROLL_STRATEGY } from '@ptsecurity/mosaic/tooltip';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@ptsecurity/mosaic/core";
8
+ import * as i2 from "@angular/cdk/overlay";
9
+ import * as i3 from "@angular/cdk/bidi";
10
+ export class McOptionTooltip extends McTooltipTrigger {
11
+ constructor(option, overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction) {
12
+ super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);
13
+ this.option = option;
14
+ }
15
+ get textElement() {
16
+ return this.option.textElement.nativeElement;
17
+ }
18
+ get isOverflown() {
19
+ return this.textElement.clientWidth < this.textElement.scrollWidth;
20
+ }
21
+ ngAfterViewInit() {
22
+ this.content = this.option.viewValue;
23
+ this.resizeObserver = new ResizeObserver(() => this.disabled = !this.isOverflown);
24
+ this.mutationObserver = new MutationObserver(() => this.content = this.option.viewValue);
25
+ this.mutationObserver.observe(this.textElement, {
26
+ characterData: true, attributes: false, childList: true, subtree: true
27
+ });
28
+ }
29
+ ngOnDestroy() {
30
+ super.ngOnDestroy();
31
+ if (this.resizeObserver) {
32
+ this.resizeObserver.unobserve(this.textElement);
33
+ this.resizeObserver.disconnect();
34
+ }
35
+ if (this.mutationObserver) {
36
+ this.mutationObserver.disconnect();
37
+ }
38
+ }
39
+ onMouseEnter() {
40
+ this.resizeObserver.observe(this.textElement);
41
+ this.disabled = !this.isOverflown;
42
+ }
43
+ onMouseLeave() {
44
+ this.resizeObserver.unobserve(this.textElement);
45
+ this.disabled = true;
46
+ }
47
+ }
48
+ /** @nocollapse */ /** @nocollapse */ McOptionTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McOptionTooltip, deps: [{ token: i1.McOption }, { token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
49
+ /** @nocollapse */ /** @nocollapse */ McOptionTooltip.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.7", type: McOptionTooltip, selector: "mc-option", host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" } }, usesInheritance: true, ngImport: i0 });
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: McOptionTooltip, decorators: [{
51
+ type: Directive,
52
+ args: [{
53
+ selector: 'mc-option',
54
+ host: {
55
+ '(mouseenter)': 'onMouseEnter()',
56
+ '(mouseleave)': 'onMouseLeave()'
57
+ }
58
+ }]
59
+ }], ctorParameters: function () { return [{ type: i1.McOption }, { type: i2.Overlay }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i2.ScrollDispatcher }, { type: i0.ViewContainerRef }, { type: undefined, decorators: [{
60
+ type: Inject,
61
+ args: [MC_TOOLTIP_SCROLL_STRATEGY]
62
+ }] }, { type: i3.Directionality, decorators: [{
63
+ type: Optional
64
+ }] }]; } });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9wdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9tb3NhaWMvc2VsZWN0L3NlbGVjdC1vcHRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakUsT0FBTyxFQUVILFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLE1BQU0sRUFFTixRQUFRLEVBQ1IsZ0JBQWdCLEVBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFVMUYsTUFBTSxPQUFPLGVBQWdCLFNBQVEsZ0JBQWdCO0lBWWpELFlBQ1ksTUFBZ0IsRUFDeEIsT0FBZ0IsRUFDaEIsVUFBc0IsRUFDdEIsTUFBYyxFQUNkLGdCQUFrQyxFQUNsQyxRQUEwQixFQUNVLGNBQWMsRUFDdEMsU0FBeUI7UUFFckMsS0FBSyxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFUbEYsV0FBTSxHQUFOLE1BQU0sQ0FBVTtJQVU1QixDQUFDO0lBbkJELElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDO0lBQ3ZFLENBQUM7SUFlRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUVyQyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFbEYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXpGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUM1QyxhQUFhLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSTtTQUN6RSxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVwQixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDcEM7UUFFRCxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDdEM7SUFDTCxDQUFDO0lBRUQsWUFBWTtRQUNSLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN0QyxDQUFDO0lBRUQsWUFBWTtRQUNSLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVoRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN6QixDQUFDOztrSkE1RFEsZUFBZSxpTEFtQlosMEJBQTBCO3NJQW5CN0IsZUFBZTsyRkFBZixlQUFlO2tCQVAzQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxXQUFXO29CQUNyQixJQUFJLEVBQUU7d0JBQ0YsY0FBYyxFQUFFLGdCQUFnQjt3QkFDaEMsY0FBYyxFQUFFLGdCQUFnQjtxQkFDbkM7aUJBQ0o7OzBCQW9CUSxNQUFNOzJCQUFDLDBCQUEwQjs7MEJBQ2pDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3Rpb25hbGl0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7IE92ZXJsYXksIFNjcm9sbERpc3BhdGNoZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSW5qZWN0LFxuICAgIE5nWm9uZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3B0aW9uYWwsXG4gICAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1jT3B0aW9uIH0gZnJvbSAnQHB0c2VjdXJpdHkvbW9zYWljL2NvcmUnO1xuaW1wb3J0IHsgTWNUb29sdGlwVHJpZ2dlciwgTUNfVE9PTFRJUF9TQ1JPTExfU1RSQVRFR1kgfSBmcm9tICdAcHRzZWN1cml0eS9tb3NhaWMvdG9vbHRpcCc7XG5cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdtYy1vcHRpb24nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhtb3VzZWVudGVyKSc6ICdvbk1vdXNlRW50ZXIoKScsXG4gICAgICAgICcobW91c2VsZWF2ZSknOiAnb25Nb3VzZUxlYXZlKCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBNY09wdGlvblRvb2x0aXAgZXh0ZW5kcyBNY1Rvb2x0aXBUcmlnZ2VyIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIHJlc2l6ZU9ic2VydmVyOiBSZXNpemVPYnNlcnZlcjtcbiAgICBwcml2YXRlIG11dGF0aW9uT2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXI7XG5cbiAgICBnZXQgdGV4dEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb24udGV4dEVsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgaXNPdmVyZmxvd24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRFbGVtZW50LmNsaWVudFdpZHRoIDwgdGhpcy50ZXh0RWxlbWVudC5zY3JvbGxXaWR0aDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBvcHRpb246IE1jT3B0aW9uLFxuICAgICAgICBvdmVybGF5OiBPdmVybGF5LFxuICAgICAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgc2Nyb2xsRGlzcGF0Y2hlcjogU2Nyb2xsRGlzcGF0Y2hlcixcbiAgICAgICAgaG9zdFZpZXc6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIEBJbmplY3QoTUNfVE9PTFRJUF9TQ1JPTExfU1RSQVRFR1kpIHNjcm9sbFN0cmF0ZWd5LFxuICAgICAgICBAT3B0aW9uYWwoKSBkaXJlY3Rpb246IERpcmVjdGlvbmFsaXR5XG4gICAgKSB7XG4gICAgICAgIHN1cGVyKG92ZXJsYXksIGVsZW1lbnRSZWYsIG5nWm9uZSwgc2Nyb2xsRGlzcGF0Y2hlciwgaG9zdFZpZXcsIHNjcm9sbFN0cmF0ZWd5LCBkaXJlY3Rpb24pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5vcHRpb24udmlld1ZhbHVlO1xuXG4gICAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCkgPT4gdGhpcy5kaXNhYmxlZCA9ICF0aGlzLmlzT3ZlcmZsb3duKTtcblxuICAgICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigoKSA9PiB0aGlzLmNvbnRlbnQgPSB0aGlzLm9wdGlvbi52aWV3VmFsdWUpO1xuXG4gICAgICAgIHRoaXMubXV0YXRpb25PYnNlcnZlci5vYnNlcnZlKHRoaXMudGV4dEVsZW1lbnQsIHtcbiAgICAgICAgICAgIGNoYXJhY3RlckRhdGE6IHRydWUsIGF0dHJpYnV0ZXM6IGZhbHNlLCBjaGlsZExpc3Q6IHRydWUsIHN1YnRyZWU6IHRydWVcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG5cbiAgICAgICAgaWYgKHRoaXMucmVzaXplT2JzZXJ2ZXIpIHtcbiAgICAgICAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIudW5vYnNlcnZlKHRoaXMudGV4dEVsZW1lbnQpO1xuICAgICAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5tdXRhdGlvbk9ic2VydmVyKSB7XG4gICAgICAgICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Nb3VzZUVudGVyKCkge1xuICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy50ZXh0RWxlbWVudCk7XG5cbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9ICF0aGlzLmlzT3ZlcmZsb3duO1xuICAgIH1cblxuICAgIG9uTW91c2VMZWF2ZSgpIHtcbiAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlci51bm9ic2VydmUodGhpcy50ZXh0RWxlbWVudCk7XG5cbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XG4gICAgfVxufVxuIl19