@ptsecurity/mosaic 13.9.0 → 14.0.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 (522) hide show
  1. package/_theming.scss +90 -7366
  2. package/_visual.scss +6 -2761
  3. package/autocomplete/autocomplete-origin.directive.d.ts +1 -1
  4. package/autocomplete/autocomplete-trigger.directive.d.ts +1 -1
  5. package/autocomplete/autocomplete.component.d.ts +1 -1
  6. package/button/button.component.d.ts +4 -4
  7. package/button-toggle/button-toggle.component.d.ts +2 -2
  8. package/card/card.component.d.ts +3 -3
  9. package/checkbox/checkbox-required-validator.d.ts +1 -1
  10. package/checkbox/checkbox.d.ts +3 -3
  11. package/core/common-behaviors/color.d.ts +4 -1
  12. package/core/common-behaviors/error-state.d.ts +7 -4
  13. package/core/error/error-options.d.ts +3 -3
  14. package/core/formatters/date/formatter.d.ts +6 -2
  15. package/core/formatters/number/formatter.d.ts +1 -1
  16. package/core/forms/forms.directive.d.ts +2 -2
  17. package/core/highlight/highlight.pipe.d.ts +1 -1
  18. package/core/line/line.d.ts +1 -1
  19. package/core/option/action.d.ts +2 -2
  20. package/core/option/optgroup.d.ts +2 -2
  21. package/core/option/option.d.ts +1 -1
  22. package/core/pop-up/pop-up-trigger.d.ts +2 -3
  23. package/core/pop-up/pop-up.d.ts +2 -2
  24. package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +3 -3
  25. package/datepicker/calendar-body.component.d.ts +1 -1
  26. package/datepicker/calendar.component.d.ts +30 -30
  27. package/datepicker/datepicker-input.directive.d.ts +2 -2
  28. package/datepicker/datepicker-toggle.component.d.ts +2 -2
  29. package/datepicker/datepicker.component.d.ts +2 -2
  30. package/datepicker/month-view.component.d.ts +1 -1
  31. package/datepicker/multi-year-view.component.d.ts +1 -1
  32. package/datepicker/year-view.component.d.ts +1 -1
  33. package/design-tokens/legacy-2017/tokens/components/checkbox.json5 +16 -15
  34. package/design-tokens/legacy-2017/tokens/components/form-field.json5 +2 -2
  35. package/design-tokens/legacy-2017/tokens/components/forms.json5 +0 -4
  36. package/design-tokens/legacy-2017/tokens/components/popover.json5 +1 -0
  37. package/design-tokens/legacy-2017/tokens/components/radio.json5 +1 -0
  38. package/design-tokens/legacy-2017/tokens/components/timezone.json5 +22 -0
  39. package/design-tokens/legacy-2017/tokens/properties/typography.json5 +42 -33
  40. package/design-tokens/legacy-2017/tokens.d.ts +55 -37
  41. package/design-tokens/pt-2022/tokens/components/checkbox.json5 +17 -16
  42. package/design-tokens/pt-2022/tokens/components/form-field.json5 +2 -2
  43. package/design-tokens/pt-2022/tokens/components/forms.json5 +0 -4
  44. package/design-tokens/pt-2022/tokens/components/link.json5 +2 -2
  45. package/design-tokens/pt-2022/tokens/components/popover.json5 +7 -6
  46. package/design-tokens/pt-2022/tokens/components/timezone.json5 +22 -0
  47. package/design-tokens/pt-2022/tokens/properties/typography.json5 +33 -24
  48. package/design-tokens/pt-2022/tokens.d.ts +47 -30
  49. package/design-tokens/style-dictionary/transforms/attribute/palette.js +1 -1
  50. package/design-tokens/style-dictionary/transforms/attribute/size.js +1 -1
  51. package/design-tokens/style-dictionary/transforms/attribute/typography.js +1 -1
  52. package/divider/divider.component.d.ts +1 -1
  53. package/dl/dl.component.d.ts +3 -3
  54. package/dropdown/dropdown-content.directive.d.ts +1 -1
  55. package/dropdown/dropdown-item.component.d.ts +1 -1
  56. package/dropdown/dropdown-trigger.directive.d.ts +1 -1
  57. package/dropdown/dropdown.component.d.ts +1 -1
  58. package/esm2020/autocomplete/autocomplete-origin.directive.mjs +4 -4
  59. package/esm2020/autocomplete/autocomplete-trigger.directive.mjs +7 -7
  60. package/esm2020/autocomplete/autocomplete.component.mjs +6 -7
  61. package/esm2020/autocomplete/autocomplete.module.mjs +5 -5
  62. package/esm2020/button/button.component.mjs +13 -13
  63. package/esm2020/button/button.module.mjs +7 -9
  64. package/esm2020/button-toggle/button-toggle.component.mjs +9 -9
  65. package/esm2020/button-toggle/button-toggle.module.mjs +5 -5
  66. package/esm2020/card/card.component.mjs +10 -10
  67. package/esm2020/card/card.module.mjs +7 -9
  68. package/esm2020/checkbox/checkbox-module.mjs +5 -5
  69. package/esm2020/checkbox/checkbox-required-validator.mjs +4 -4
  70. package/esm2020/checkbox/checkbox.mjs +8 -9
  71. package/esm2020/core/common-behaviors/color.mjs +6 -3
  72. package/esm2020/core/common-behaviors/common-module.mjs +5 -5
  73. package/esm2020/core/common-behaviors/disabled.mjs +1 -1
  74. package/esm2020/core/common-behaviors/error-state.mjs +1 -11
  75. package/esm2020/core/error/error-options.mjs +7 -7
  76. package/esm2020/core/formatters/date/formatter.mjs +10 -6
  77. package/esm2020/core/formatters/index.mjs +5 -5
  78. package/esm2020/core/formatters/number/formatter.mjs +5 -5
  79. package/esm2020/core/forms/forms-module.mjs +5 -5
  80. package/esm2020/core/forms/forms.directive.mjs +7 -7
  81. package/esm2020/core/highlight/highlight.pipe.mjs +4 -4
  82. package/esm2020/core/highlight/index.mjs +5 -5
  83. package/esm2020/core/line/line.mjs +8 -8
  84. package/esm2020/core/option/action.mjs +7 -7
  85. package/esm2020/core/option/optgroup.mjs +6 -6
  86. package/esm2020/core/option/option-module.mjs +6 -6
  87. package/esm2020/core/option/option.mjs +7 -7
  88. package/esm2020/core/pop-up/pop-up-trigger.mjs +4 -4
  89. package/esm2020/core/pop-up/pop-up.mjs +4 -4
  90. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +7 -8
  91. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +5 -5
  92. package/esm2020/core/services/measure-scrollbar.service.mjs +4 -4
  93. package/esm2020/datepicker/calendar-body.component.mjs +5 -5
  94. package/esm2020/datepicker/calendar.component.mjs +126 -129
  95. package/esm2020/datepicker/datepicker-input.directive.mjs +8 -9
  96. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  97. package/esm2020/datepicker/datepicker-module.mjs +11 -17
  98. package/esm2020/datepicker/datepicker-toggle.component.mjs +11 -11
  99. package/esm2020/datepicker/datepicker.component.mjs +10 -10
  100. package/esm2020/datepicker/month-view.component.mjs +6 -6
  101. package/esm2020/datepicker/multi-year-view.component.mjs +4 -4
  102. package/esm2020/datepicker/year-view.component.mjs +4 -4
  103. package/esm2020/design-tokens/legacy-2017/tokens.mjs +56 -38
  104. package/esm2020/design-tokens/pt-2022/tokens.mjs +48 -31
  105. package/esm2020/divider/divider.component.mjs +5 -5
  106. package/esm2020/divider/divider.module.mjs +5 -5
  107. package/esm2020/dl/dl.component.mjs +12 -12
  108. package/esm2020/dl/dl.module.mjs +7 -9
  109. package/esm2020/dropdown/dropdown-content.directive.mjs +4 -4
  110. package/esm2020/dropdown/dropdown-item.component.mjs +7 -7
  111. package/esm2020/dropdown/dropdown-trigger.directive.mjs +4 -4
  112. package/esm2020/dropdown/dropdown.component.mjs +6 -6
  113. package/esm2020/dropdown/dropdown.module.mjs +7 -9
  114. package/esm2020/form-field/cleaner.mjs +4 -4
  115. package/esm2020/form-field/form-field.mjs +24 -21
  116. package/esm2020/form-field/form-field.module.mjs +5 -5
  117. package/esm2020/form-field/hint.mjs +6 -7
  118. package/esm2020/form-field/password-hint.mjs +11 -12
  119. package/esm2020/form-field/prefix.mjs +4 -4
  120. package/esm2020/form-field/stepper.mjs +4 -4
  121. package/esm2020/form-field/suffix.mjs +4 -4
  122. package/esm2020/icon/icon.component.mjs +10 -11
  123. package/esm2020/icon/icon.module.mjs +7 -9
  124. package/esm2020/input/input-number-validators.mjs +7 -7
  125. package/esm2020/input/input-number.mjs +4 -4
  126. package/esm2020/input/input-password.mjs +11 -11
  127. package/esm2020/input/input.mjs +13 -7
  128. package/esm2020/input/input.module.mjs +8 -10
  129. package/esm2020/link/link.component.mjs +4 -4
  130. package/esm2020/link/link.module.mjs +6 -8
  131. package/esm2020/list/list-selection.component.mjs +230 -220
  132. package/esm2020/list/list.component.mjs +8 -8
  133. package/esm2020/list/list.module.mjs +9 -11
  134. package/esm2020/loader-overlay/loader-overlay.component.mjs +16 -16
  135. package/esm2020/loader-overlay/loader-overlay.module.mjs +8 -10
  136. package/esm2020/modal/css-unit.pipe.mjs +4 -4
  137. package/esm2020/modal/modal-control.service.mjs +4 -4
  138. package/esm2020/modal/modal.component.mjs +9 -9
  139. package/esm2020/modal/modal.directive.mjs +13 -13
  140. package/esm2020/modal/modal.module.mjs +11 -14
  141. package/esm2020/modal/modal.service.mjs +5 -6
  142. package/esm2020/navbar/navbar-item.component.mjs +36 -36
  143. package/esm2020/navbar/navbar.component.mjs +11 -11
  144. package/esm2020/navbar/navbar.module.mjs +9 -11
  145. package/esm2020/navbar/vertical-navbar.component.mjs +6 -6
  146. package/esm2020/popover/popover-confirm.component.mjs +11 -11
  147. package/esm2020/popover/popover.component.mjs +10 -10
  148. package/esm2020/popover/popover.module.mjs +6 -7
  149. package/esm2020/progress-bar/progress-bar.component.mjs +7 -8
  150. package/esm2020/progress-bar/progress-bar.module.mjs +6 -8
  151. package/esm2020/progress-spinner/progress-spinner.component.mjs +7 -8
  152. package/esm2020/progress-spinner/progress-spinner.module.mjs +6 -8
  153. package/esm2020/radio/radio.component.mjs +14 -16
  154. package/esm2020/radio/radio.module.mjs +5 -5
  155. package/esm2020/select/select-option.directive.mjs +4 -4
  156. package/esm2020/select/select.component.mjs +26 -20
  157. package/esm2020/select/select.module.mjs +10 -12
  158. package/esm2020/sidebar/sidebar.component.mjs +10 -10
  159. package/esm2020/sidebar/sidebar.module.mjs +5 -5
  160. package/esm2020/sidepanel/sidepanel-container.component.mjs +7 -7
  161. package/esm2020/sidepanel/sidepanel-directives.mjs +22 -20
  162. package/esm2020/sidepanel/sidepanel.module.mjs +11 -14
  163. package/esm2020/sidepanel/sidepanel.service.mjs +32 -29
  164. package/esm2020/splitter/splitter.component.mjs +37 -37
  165. package/esm2020/splitter/splitter.module.mjs +6 -8
  166. package/esm2020/table/table.component.mjs +4 -4
  167. package/esm2020/table/table.module.mjs +7 -9
  168. package/esm2020/tabs/paginated-tab-header.mjs +4 -4
  169. package/esm2020/tabs/tab-body.component.mjs +7 -7
  170. package/esm2020/tabs/tab-content.directive.mjs +4 -4
  171. package/esm2020/tabs/tab-group.component.mjs +30 -31
  172. package/esm2020/tabs/tab-header.component.mjs +5 -5
  173. package/esm2020/tabs/tab-label-wrapper.directive.mjs +4 -4
  174. package/esm2020/tabs/tab-label.directive.mjs +4 -4
  175. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +8 -8
  176. package/esm2020/tabs/tab.component.mjs +4 -4
  177. package/esm2020/tabs/tabs.module.mjs +11 -13
  178. package/esm2020/tags/tag-input.mjs +4 -4
  179. package/esm2020/tags/tag-list.component.mjs +12 -6
  180. package/esm2020/tags/tag.component.mjs +24 -22
  181. package/esm2020/tags/tag.module.mjs +6 -6
  182. package/esm2020/textarea/textarea.component.mjs +10 -4
  183. package/esm2020/textarea/textarea.module.mjs +5 -5
  184. package/esm2020/timepicker/timepicker.directive.mjs +4 -4
  185. package/esm2020/timepicker/timepicker.module.mjs +8 -10
  186. package/esm2020/timezone/cities-by-filter.pipe.mjs +17 -0
  187. package/esm2020/timezone/index.mjs +2 -0
  188. package/esm2020/timezone/ptsecurity-mosaic-timezone.mjs +5 -0
  189. package/esm2020/timezone/public-api.mjs +7 -0
  190. package/esm2020/timezone/timezone-option.component.mjs +48 -0
  191. package/esm2020/timezone/timezone-option.directive.mjs +58 -0
  192. package/esm2020/timezone/timezone-select.component.mjs +40 -0
  193. package/esm2020/timezone/timezone.models.mjs +3 -0
  194. package/esm2020/timezone/timezone.module.mjs +75 -0
  195. package/esm2020/timezone/timezone.utils.mjs +64 -0
  196. package/esm2020/timezone/utc-offset.pipe.mjs +17 -0
  197. package/esm2020/toast/toast-container.component.mjs +5 -5
  198. package/esm2020/toast/toast.component.mjs +14 -11
  199. package/esm2020/toast/toast.module.mjs +12 -12
  200. package/esm2020/toast/toast.service.mjs +12 -12
  201. package/esm2020/toggle/toggle.component.mjs +13 -16
  202. package/esm2020/toggle/toggle.module.mjs +5 -5
  203. package/esm2020/tooltip/tooltip.component.mjs +14 -14
  204. package/esm2020/tooltip/tooltip.module.mjs +7 -8
  205. package/esm2020/tree/control/flat-tree-control.mjs +1 -1
  206. package/esm2020/tree/data-source/nested-data-source.mjs +1 -1
  207. package/esm2020/tree/node.mjs +4 -4
  208. package/esm2020/tree/outlet.mjs +4 -4
  209. package/esm2020/tree/padding.directive.mjs +4 -4
  210. package/esm2020/tree/toggle.mjs +11 -11
  211. package/esm2020/tree/tree-base.mjs +7 -7
  212. package/esm2020/tree/tree-option.component.mjs +12 -8
  213. package/esm2020/tree/tree-selection.component.mjs +11 -5
  214. package/esm2020/tree/tree.mjs +4 -4
  215. package/esm2020/tree/tree.module.mjs +5 -5
  216. package/esm2020/tree-select/tree-select.component.mjs +20 -14
  217. package/esm2020/tree-select/tree-select.module.mjs +11 -13
  218. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs +18 -19
  219. package/fesm2015/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  220. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs +12 -12
  221. package/fesm2015/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  222. package/fesm2015/ptsecurity-mosaic-button.mjs +18 -20
  223. package/fesm2015/ptsecurity-mosaic-button.mjs.map +1 -1
  224. package/fesm2015/ptsecurity-mosaic-card.mjs +15 -17
  225. package/fesm2015/ptsecurity-mosaic-card.mjs.map +1 -1
  226. package/fesm2015/ptsecurity-mosaic-checkbox.mjs +14 -15
  227. package/fesm2015/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  228. package/fesm2015/ptsecurity-mosaic-core.mjs +93 -96
  229. package/fesm2015/ptsecurity-mosaic-core.mjs.map +1 -1
  230. package/fesm2015/ptsecurity-mosaic-datepicker.mjs +174 -184
  231. package/fesm2015/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  232. package/fesm2015/ptsecurity-mosaic-design-tokens.mjs +123 -70
  233. package/fesm2015/ptsecurity-mosaic-design-tokens.mjs.map +1 -1
  234. package/fesm2015/ptsecurity-mosaic-divider.mjs +8 -8
  235. package/fesm2015/ptsecurity-mosaic-divider.mjs.map +1 -1
  236. package/fesm2015/ptsecurity-mosaic-dl.mjs +17 -19
  237. package/fesm2015/ptsecurity-mosaic-dl.mjs.map +1 -1
  238. package/fesm2015/ptsecurity-mosaic-dropdown.mjs +23 -25
  239. package/fesm2015/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  240. package/fesm2015/ptsecurity-mosaic-form-field.mjs +54 -52
  241. package/fesm2015/ptsecurity-mosaic-form-field.mjs.map +1 -1
  242. package/fesm2015/ptsecurity-mosaic-icon.mjs +15 -18
  243. package/fesm2015/ptsecurity-mosaic-icon.mjs.map +1 -1
  244. package/fesm2015/ptsecurity-mosaic-input.mjs +38 -34
  245. package/fesm2015/ptsecurity-mosaic-input.mjs.map +1 -1
  246. package/fesm2015/ptsecurity-mosaic-link.mjs +8 -10
  247. package/fesm2015/ptsecurity-mosaic-link.mjs.map +1 -1
  248. package/fesm2015/ptsecurity-mosaic-list.mjs +253 -245
  249. package/fesm2015/ptsecurity-mosaic-list.mjs.map +1 -1
  250. package/fesm2015/ptsecurity-mosaic-loader-overlay.mjs +22 -24
  251. package/fesm2015/ptsecurity-mosaic-loader-overlay.mjs.map +1 -1
  252. package/fesm2015/ptsecurity-mosaic-modal.mjs +41 -45
  253. package/fesm2015/ptsecurity-mosaic-modal.mjs.map +1 -1
  254. package/fesm2015/ptsecurity-mosaic-navbar.mjs +58 -60
  255. package/fesm2015/ptsecurity-mosaic-navbar.mjs.map +1 -1
  256. package/fesm2015/ptsecurity-mosaic-popover.mjs +22 -23
  257. package/fesm2015/ptsecurity-mosaic-popover.mjs.map +1 -1
  258. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs +11 -14
  259. package/fesm2015/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  260. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs +11 -14
  261. package/fesm2015/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  262. package/fesm2015/ptsecurity-mosaic-radio.mjs +17 -19
  263. package/fesm2015/ptsecurity-mosaic-radio.mjs.map +1 -1
  264. package/fesm2015/ptsecurity-mosaic-select.mjs +36 -32
  265. package/fesm2015/ptsecurity-mosaic-select.mjs.map +1 -1
  266. package/fesm2015/ptsecurity-mosaic-sidebar.mjs +13 -13
  267. package/fesm2015/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  268. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs +68 -66
  269. package/fesm2015/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  270. package/fesm2015/ptsecurity-mosaic-splitter.mjs +41 -43
  271. package/fesm2015/ptsecurity-mosaic-splitter.mjs.map +1 -1
  272. package/fesm2015/ptsecurity-mosaic-table.mjs +9 -11
  273. package/fesm2015/ptsecurity-mosaic-table.mjs.map +1 -1
  274. package/fesm2015/ptsecurity-mosaic-tabs.mjs +139 -142
  275. package/fesm2015/ptsecurity-mosaic-tabs.mjs.map +1 -1
  276. package/fesm2015/ptsecurity-mosaic-tags.mjs +42 -34
  277. package/fesm2015/ptsecurity-mosaic-tags.mjs.map +1 -1
  278. package/fesm2015/ptsecurity-mosaic-textarea.mjs +13 -7
  279. package/fesm2015/ptsecurity-mosaic-textarea.mjs.map +1 -1
  280. package/fesm2015/ptsecurity-mosaic-timepicker.mjs +10 -12
  281. package/fesm2015/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  282. package/fesm2015/ptsecurity-mosaic-timezone.mjs +299 -0
  283. package/fesm2015/ptsecurity-mosaic-timezone.mjs.map +1 -0
  284. package/fesm2015/ptsecurity-mosaic-toast.mjs +124 -118
  285. package/fesm2015/ptsecurity-mosaic-toast.mjs.map +1 -1
  286. package/fesm2015/ptsecurity-mosaic-toggle.mjs +16 -19
  287. package/fesm2015/ptsecurity-mosaic-toggle.mjs.map +1 -1
  288. package/fesm2015/ptsecurity-mosaic-tooltip.mjs +19 -20
  289. package/fesm2015/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  290. package/fesm2015/ptsecurity-mosaic-tree-select.mjs +29 -25
  291. package/fesm2015/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  292. package/fesm2015/ptsecurity-mosaic-tree.mjs +54 -44
  293. package/fesm2015/ptsecurity-mosaic-tree.mjs.map +1 -1
  294. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs +18 -19
  295. package/fesm2020/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  296. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs +12 -12
  297. package/fesm2020/ptsecurity-mosaic-button-toggle.mjs.map +1 -1
  298. package/fesm2020/ptsecurity-mosaic-button.mjs +18 -20
  299. package/fesm2020/ptsecurity-mosaic-button.mjs.map +1 -1
  300. package/fesm2020/ptsecurity-mosaic-card.mjs +15 -17
  301. package/fesm2020/ptsecurity-mosaic-card.mjs.map +1 -1
  302. package/fesm2020/ptsecurity-mosaic-checkbox.mjs +14 -15
  303. package/fesm2020/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  304. package/fesm2020/ptsecurity-mosaic-core.mjs +93 -96
  305. package/fesm2020/ptsecurity-mosaic-core.mjs.map +1 -1
  306. package/fesm2020/ptsecurity-mosaic-datepicker.mjs +173 -183
  307. package/fesm2020/ptsecurity-mosaic-datepicker.mjs.map +1 -1
  308. package/fesm2020/ptsecurity-mosaic-design-tokens.mjs +123 -70
  309. package/fesm2020/ptsecurity-mosaic-design-tokens.mjs.map +1 -1
  310. package/fesm2020/ptsecurity-mosaic-divider.mjs +8 -8
  311. package/fesm2020/ptsecurity-mosaic-divider.mjs.map +1 -1
  312. package/fesm2020/ptsecurity-mosaic-dl.mjs +17 -19
  313. package/fesm2020/ptsecurity-mosaic-dl.mjs.map +1 -1
  314. package/fesm2020/ptsecurity-mosaic-dropdown.mjs +23 -25
  315. package/fesm2020/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  316. package/fesm2020/ptsecurity-mosaic-form-field.mjs +54 -52
  317. package/fesm2020/ptsecurity-mosaic-form-field.mjs.map +1 -1
  318. package/fesm2020/ptsecurity-mosaic-icon.mjs +15 -18
  319. package/fesm2020/ptsecurity-mosaic-icon.mjs.map +1 -1
  320. package/fesm2020/ptsecurity-mosaic-input.mjs +38 -34
  321. package/fesm2020/ptsecurity-mosaic-input.mjs.map +1 -1
  322. package/fesm2020/ptsecurity-mosaic-link.mjs +8 -10
  323. package/fesm2020/ptsecurity-mosaic-link.mjs.map +1 -1
  324. package/fesm2020/ptsecurity-mosaic-list.mjs +248 -240
  325. package/fesm2020/ptsecurity-mosaic-list.mjs.map +1 -1
  326. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs +22 -24
  327. package/fesm2020/ptsecurity-mosaic-loader-overlay.mjs.map +1 -1
  328. package/fesm2020/ptsecurity-mosaic-modal.mjs +41 -45
  329. package/fesm2020/ptsecurity-mosaic-modal.mjs.map +1 -1
  330. package/fesm2020/ptsecurity-mosaic-navbar.mjs +58 -60
  331. package/fesm2020/ptsecurity-mosaic-navbar.mjs.map +1 -1
  332. package/fesm2020/ptsecurity-mosaic-popover.mjs +22 -23
  333. package/fesm2020/ptsecurity-mosaic-popover.mjs.map +1 -1
  334. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs +11 -14
  335. package/fesm2020/ptsecurity-mosaic-progress-bar.mjs.map +1 -1
  336. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs +11 -14
  337. package/fesm2020/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  338. package/fesm2020/ptsecurity-mosaic-radio.mjs +17 -19
  339. package/fesm2020/ptsecurity-mosaic-radio.mjs.map +1 -1
  340. package/fesm2020/ptsecurity-mosaic-select.mjs +36 -32
  341. package/fesm2020/ptsecurity-mosaic-select.mjs.map +1 -1
  342. package/fesm2020/ptsecurity-mosaic-sidebar.mjs +13 -13
  343. package/fesm2020/ptsecurity-mosaic-sidebar.mjs.map +1 -1
  344. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs +68 -66
  345. package/fesm2020/ptsecurity-mosaic-sidepanel.mjs.map +1 -1
  346. package/fesm2020/ptsecurity-mosaic-splitter.mjs +41 -43
  347. package/fesm2020/ptsecurity-mosaic-splitter.mjs.map +1 -1
  348. package/fesm2020/ptsecurity-mosaic-table.mjs +9 -11
  349. package/fesm2020/ptsecurity-mosaic-table.mjs.map +1 -1
  350. package/fesm2020/ptsecurity-mosaic-tabs.mjs +68 -71
  351. package/fesm2020/ptsecurity-mosaic-tabs.mjs.map +1 -1
  352. package/fesm2020/ptsecurity-mosaic-tags.mjs +42 -34
  353. package/fesm2020/ptsecurity-mosaic-tags.mjs.map +1 -1
  354. package/fesm2020/ptsecurity-mosaic-textarea.mjs +13 -7
  355. package/fesm2020/ptsecurity-mosaic-textarea.mjs.map +1 -1
  356. package/fesm2020/ptsecurity-mosaic-timepicker.mjs +10 -12
  357. package/fesm2020/ptsecurity-mosaic-timepicker.mjs.map +1 -1
  358. package/fesm2020/ptsecurity-mosaic-timezone.mjs +298 -0
  359. package/fesm2020/ptsecurity-mosaic-timezone.mjs.map +1 -0
  360. package/fesm2020/ptsecurity-mosaic-toast.mjs +120 -116
  361. package/fesm2020/ptsecurity-mosaic-toast.mjs.map +1 -1
  362. package/fesm2020/ptsecurity-mosaic-toggle.mjs +16 -19
  363. package/fesm2020/ptsecurity-mosaic-toggle.mjs.map +1 -1
  364. package/fesm2020/ptsecurity-mosaic-tooltip.mjs +19 -20
  365. package/fesm2020/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  366. package/fesm2020/ptsecurity-mosaic-tree-select.mjs +29 -25
  367. package/fesm2020/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  368. package/fesm2020/ptsecurity-mosaic-tree.mjs +54 -44
  369. package/fesm2020/ptsecurity-mosaic-tree.mjs.map +1 -1
  370. package/form-field/cleaner.d.ts +1 -1
  371. package/form-field/form-field.d.ts +13 -7
  372. package/form-field/hint.d.ts +3 -3
  373. package/form-field/password-hint.d.ts +2 -3
  374. package/form-field/prefix.d.ts +1 -1
  375. package/form-field/stepper.d.ts +1 -1
  376. package/form-field/suffix.d.ts +1 -1
  377. package/icon/icon.component.d.ts +4 -4
  378. package/input/input-number-validators.d.ts +2 -2
  379. package/input/input-number.d.ts +1 -1
  380. package/input/input-password.d.ts +3 -3
  381. package/input/input.d.ts +8 -2
  382. package/link/link.component.d.ts +1 -1
  383. package/list/list-selection.component.d.ts +54 -53
  384. package/list/list.component.d.ts +2 -2
  385. package/loader-overlay/loader-overlay.component.d.ts +4 -4
  386. package/modal/css-unit.pipe.d.ts +1 -1
  387. package/modal/modal.component.d.ts +1 -1
  388. package/modal/modal.directive.d.ts +4 -4
  389. package/navbar/navbar-item.component.d.ts +11 -11
  390. package/navbar/navbar.component.d.ts +3 -3
  391. package/navbar/vertical-navbar.component.d.ts +1 -1
  392. package/package.json +56 -48
  393. package/popover/popover-confirm.component.d.ts +2 -2
  394. package/popover/popover.component.d.ts +4 -5
  395. package/prebuilt-themes/dark-theme.css +1 -1
  396. package/prebuilt-themes/default-theme.css +1 -1
  397. package/prebuilt-visual/default-visual.css +1 -1
  398. package/progress-bar/progress-bar.component.d.ts +3 -3
  399. package/progress-spinner/progress-spinner.component.d.ts +3 -3
  400. package/radio/radio.component.d.ts +6 -6
  401. package/select/select-option.directive.d.ts +1 -1
  402. package/select/select.component.d.ts +10 -4
  403. package/sidebar/sidebar.component.d.ts +3 -3
  404. package/sidepanel/sidepanel-container.component.d.ts +1 -1
  405. package/sidepanel/sidepanel-directives.d.ts +5 -5
  406. package/splitter/splitter.component.d.ts +4 -4
  407. package/table/table.component.d.ts +1 -1
  408. package/tabs/paginated-tab-header.d.ts +1 -1
  409. package/tabs/tab-body.component.d.ts +2 -2
  410. package/tabs/tab-content.directive.d.ts +1 -1
  411. package/tabs/tab-group.component.d.ts +8 -8
  412. package/tabs/tab-header.component.d.ts +1 -1
  413. package/tabs/tab-label-wrapper.directive.d.ts +1 -1
  414. package/tabs/tab-label.directive.d.ts +1 -1
  415. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +2 -2
  416. package/tabs/tab.component.d.ts +1 -1
  417. package/tags/tag-input.d.ts +1 -1
  418. package/tags/tag-list.component.d.ts +8 -2
  419. package/tags/tag.component.d.ts +8 -6
  420. package/textarea/textarea.component.d.ts +7 -1
  421. package/timepicker/timepicker.directive.d.ts +1 -1
  422. package/timezone/README.md +0 -0
  423. package/timezone/cities-by-filter.pipe.d.ts +7 -0
  424. package/timezone/index.d.ts +1 -0
  425. package/timezone/public-api.d.ts +6 -0
  426. package/timezone/timezone-option.component.d.ts +15 -0
  427. package/timezone/timezone-option.directive.d.ts +20 -0
  428. package/timezone/timezone-select.component.d.ts +14 -0
  429. package/timezone/timezone.models.d.ts +16 -0
  430. package/timezone/timezone.module.d.ts +19 -0
  431. package/timezone/timezone.utils.d.ts +18 -0
  432. package/timezone/utc-offset.pipe.d.ts +7 -0
  433. package/toast/toast-container.component.d.ts +1 -1
  434. package/toast/toast.component.d.ts +1 -1
  435. package/toast/toast.service.d.ts +5 -4
  436. package/toggle/toggle.component.d.ts +5 -5
  437. package/tooltip/tooltip.component.d.ts +5 -6
  438. package/tree/control/flat-tree-control.d.ts +8 -8
  439. package/tree/node.d.ts +1 -1
  440. package/tree/outlet.d.ts +1 -1
  441. package/tree/padding.directive.d.ts +1 -1
  442. package/tree/toggle.d.ts +3 -3
  443. package/tree/tree-base.d.ts +2 -2
  444. package/tree/tree-option.component.d.ts +2 -1
  445. package/tree/tree-selection.component.d.ts +1 -1
  446. package/tree/tree.d.ts +1 -1
  447. package/tree-select/tree-select.component.d.ts +10 -4
  448. package/autocomplete/package.json +0 -10
  449. package/autocomplete/ptsecurity-mosaic-autocomplete.d.ts +0 -5
  450. package/button/package.json +0 -10
  451. package/button/ptsecurity-mosaic-button.d.ts +0 -5
  452. package/button-toggle/package.json +0 -10
  453. package/button-toggle/ptsecurity-mosaic-button-toggle.d.ts +0 -5
  454. package/card/package.json +0 -10
  455. package/card/ptsecurity-mosaic-card.d.ts +0 -5
  456. package/checkbox/package.json +0 -10
  457. package/checkbox/ptsecurity-mosaic-checkbox.d.ts +0 -5
  458. package/core/package.json +0 -10
  459. package/core/ptsecurity-mosaic-core.d.ts +0 -5
  460. package/datepicker/package.json +0 -10
  461. package/datepicker/ptsecurity-mosaic-datepicker.d.ts +0 -5
  462. package/design-tokens/package.json +0 -10
  463. package/design-tokens/ptsecurity-mosaic-design-tokens.d.ts +0 -5
  464. package/divider/package.json +0 -10
  465. package/divider/ptsecurity-mosaic-divider.d.ts +0 -5
  466. package/dl/package.json +0 -10
  467. package/dl/ptsecurity-mosaic-dl.d.ts +0 -5
  468. package/dropdown/package.json +0 -10
  469. package/dropdown/ptsecurity-mosaic-dropdown.d.ts +0 -5
  470. package/form-field/package.json +0 -10
  471. package/form-field/ptsecurity-mosaic-form-field.d.ts +0 -5
  472. package/icon/package.json +0 -10
  473. package/icon/ptsecurity-mosaic-icon.d.ts +0 -5
  474. package/input/package.json +0 -10
  475. package/input/ptsecurity-mosaic-input.d.ts +0 -5
  476. package/link/package.json +0 -10
  477. package/link/ptsecurity-mosaic-link.d.ts +0 -5
  478. package/list/package.json +0 -10
  479. package/list/ptsecurity-mosaic-list.d.ts +0 -5
  480. package/loader-overlay/package.json +0 -10
  481. package/loader-overlay/ptsecurity-mosaic-loader-overlay.d.ts +0 -5
  482. package/modal/package.json +0 -10
  483. package/modal/ptsecurity-mosaic-modal.d.ts +0 -5
  484. package/navbar/package.json +0 -10
  485. package/navbar/ptsecurity-mosaic-navbar.d.ts +0 -5
  486. package/popover/package.json +0 -10
  487. package/popover/ptsecurity-mosaic-popover.d.ts +0 -5
  488. package/progress-bar/package.json +0 -10
  489. package/progress-bar/ptsecurity-mosaic-progress-bar.d.ts +0 -5
  490. package/progress-spinner/package.json +0 -10
  491. package/progress-spinner/ptsecurity-mosaic-progress-spinner.d.ts +0 -5
  492. package/ptsecurity-mosaic.d.ts +0 -5
  493. package/radio/package.json +0 -10
  494. package/radio/ptsecurity-mosaic-radio.d.ts +0 -5
  495. package/select/package.json +0 -10
  496. package/select/ptsecurity-mosaic-select.d.ts +0 -5
  497. package/sidebar/package.json +0 -10
  498. package/sidebar/ptsecurity-mosaic-sidebar.d.ts +0 -5
  499. package/sidepanel/package.json +0 -10
  500. package/sidepanel/ptsecurity-mosaic-sidepanel.d.ts +0 -5
  501. package/splitter/package.json +0 -10
  502. package/splitter/ptsecurity-mosaic-splitter.d.ts +0 -5
  503. package/table/package.json +0 -10
  504. package/table/ptsecurity-mosaic-table.d.ts +0 -5
  505. package/tabs/package.json +0 -10
  506. package/tabs/ptsecurity-mosaic-tabs.d.ts +0 -5
  507. package/tags/package.json +0 -10
  508. package/tags/ptsecurity-mosaic-tags.d.ts +0 -5
  509. package/textarea/package.json +0 -10
  510. package/textarea/ptsecurity-mosaic-textarea.d.ts +0 -5
  511. package/timepicker/package.json +0 -10
  512. package/timepicker/ptsecurity-mosaic-timepicker.d.ts +0 -5
  513. package/toast/package.json +0 -10
  514. package/toast/ptsecurity-mosaic-toast.d.ts +0 -5
  515. package/toggle/package.json +0 -10
  516. package/toggle/ptsecurity-mosaic-toggle.d.ts +0 -5
  517. package/tooltip/package.json +0 -10
  518. package/tooltip/ptsecurity-mosaic-tooltip.d.ts +0 -5
  519. package/tree/package.json +0 -10
  520. package/tree/ptsecurity-mosaic-tree.d.ts +0 -5
  521. package/tree-select/package.json +0 -10
  522. package/tree-select/ptsecurity-mosaic-tree-select.d.ts +0 -5
@@ -1,14 +1,13 @@
1
1
  import { Overlay } from '@angular/cdk/overlay';
2
2
  import { ComponentPortal } from '@angular/cdk/portal';
3
- import { Injectable, Injector, Inject, Optional } from '@angular/core';
3
+ import { Injectable, Injector, Inject, Optional, InjectionToken } from '@angular/core';
4
4
  import { BehaviorSubject, timer } from 'rxjs';
5
5
  import { filter } from 'rxjs/operators';
6
6
  import { McToastContainerComponent } from './toast-container.component';
7
- import { McToastComponent } from './toast.component';
8
7
  import { MC_TOAST_CONFIG, McToastPosition } from './toast.type';
9
8
  import * as i0 from "@angular/core";
10
9
  import * as i1 from "@angular/cdk/overlay";
11
- import * as i2 from "./toast.component";
10
+ export const MC_TOAST_FACTORY = new InjectionToken('McUseValidation');
12
11
  export const defaultToastConfig = {
13
12
  position: McToastPosition.TOP_RIGHT,
14
13
  duration: 5000,
@@ -19,11 +18,11 @@ const INDENT_SIZE = 16;
19
18
  const CHECK_INTERVAL = 500;
20
19
  let templateId = 0;
21
20
  export class McToastService {
22
- constructor(overlay, injector, toastConfig, toastFactory) {
21
+ constructor(overlay, injector, toastFactory, toastConfig) {
23
22
  this.overlay = overlay;
24
23
  this.injector = injector;
25
- this.toastConfig = toastConfig;
26
24
  this.toastFactory = toastFactory;
25
+ this.toastConfig = toastConfig;
27
26
  this.hovered = new BehaviorSubject(false);
28
27
  this.focused = new BehaviorSubject(false);
29
28
  this.toastsDict = {};
@@ -52,7 +51,7 @@ export class McToastService {
52
51
  }
53
52
  show(data, duration = this.toastConfig.duration, onTop = this.toastConfig.onTop) {
54
53
  this.prepareContainer();
55
- const componentRef = this.containerInstance.createToast(data, this.toastFactory || McToastComponent, onTop);
54
+ const componentRef = this.containerInstance.createToast(data, this.toastFactory, onTop);
56
55
  this.toastsDict[componentRef.instance.id] = componentRef;
57
56
  componentRef.instance.ttl = duration;
58
57
  componentRef.instance.delay = this.toastConfig.delay;
@@ -163,16 +162,17 @@ export class McToastService {
163
162
  return this.overlay.position().global();
164
163
  }
165
164
  }
166
- /** @nocollapse */ /** @nocollapse */ McToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToastService, deps: [{ token: i1.Overlay }, { token: i0.Injector }, { token: MC_TOAST_CONFIG, optional: true }, { token: i2.McToastComponent, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
167
- /** @nocollapse */ /** @nocollapse */ McToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToastService });
168
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToastService, decorators: [{
165
+ /** @nocollapse */ McToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: McToastService, deps: [{ token: i1.Overlay }, { token: i0.Injector }, { token: MC_TOAST_FACTORY }, { token: MC_TOAST_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
166
+ /** @nocollapse */ McToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: McToastService });
167
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: McToastService, decorators: [{
169
168
  type: Injectable
170
169
  }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Injector }, { type: undefined, decorators: [{
170
+ type: Inject,
171
+ args: [MC_TOAST_FACTORY]
172
+ }] }, { type: undefined, decorators: [{
171
173
  type: Optional
172
174
  }, {
173
175
  type: Inject,
174
176
  args: [MC_TOAST_CONFIG]
175
- }] }, { type: i2.McToastComponent, decorators: [{
176
- type: Optional
177
177
  }] }]; } });
178
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy90b2FzdC90b2FzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBMEIsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFDSCxVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFFTixRQUFRLEVBR1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXhDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBZSxlQUFlLEVBQWlCLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQUc1RixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBa0I7SUFDN0MsUUFBUSxFQUFFLGVBQWUsQ0FBQyxTQUFTO0lBQ25DLFFBQVEsRUFBRSxJQUFJO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxLQUFLLEVBQUUsS0FBSztDQUNmLENBQUM7QUFHRixNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUM7QUFDdkIsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDO0FBRTNCLElBQUksVUFBVSxHQUFHLENBQUMsQ0FBQztBQUduQixNQUFNLE9BQU8sY0FBYztJQW9CdkIsWUFDWSxPQUFnQixFQUNoQixRQUFrQixFQUNtQixXQUEwQixFQUNuRCxZQUE4QjtRQUgxQyxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbUIs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Qyx3QkFBd0IsRUFBRTthQUNqQyxNQUFNLENBQUMsR0FBRyxXQUFXLElBQUksQ0FBQzthQUMxQixJQUFJLENBQUMsR0FBRyxXQUFXLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTyxjQUFjO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixFQUFFO2FBQ2pDLE1BQU0sQ0FBQyxHQUFHLFdBQVcsSUFBSSxDQUFDO2FBQzFCLEtBQUssQ0FBQyxHQUFHLFdBQVcsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLFNBQVM7UUFDYixPQUFPLElBQUksQ0FBQyx3QkFBd0IsRUFBRTthQUNqQyxnQkFBZ0IsRUFBRTthQUNsQixrQkFBa0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTyx3QkFBd0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzVDLENBQUM7O2tKQXRNUSxjQUFjLGlFQXVCQyxlQUFlO3NKQXZCOUIsY0FBYzs0RkFBZCxjQUFjO2tCQUQxQixVQUFVOzswQkF3QkYsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxlQUFlOzswQkFDbEMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3ksIE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXkvb3ZlcmxheS1yZWYnO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICAgIEluamVjdGFibGUsXG4gICAgSW5qZWN0b3IsXG4gICAgSW5qZWN0LFxuICAgIENvbXBvbmVudFJlZixcbiAgICBPcHRpb25hbCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBFbWJlZGRlZFZpZXdSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE1jVG9hc3RDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3RvYXN0LWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWNUb2FzdENvbXBvbmVudCB9IGZyb20gJy4vdG9hc3QuY29tcG9uZW50JztcbmltcG9ydCB7IE1jVG9hc3REYXRhLCBNQ19UT0FTVF9DT05GSUcsIE1jVG9hc3RDb25maWcsIE1jVG9hc3RQb3NpdGlvbiB9IGZyb20gJy4vdG9hc3QudHlwZSc7XG5cblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRUb2FzdENvbmZpZzogTWNUb2FzdENvbmZpZyA9IHtcbiAgICBwb3NpdGlvbjogTWNUb2FzdFBvc2l0aW9uLlRPUF9SSUdIVCxcbiAgICBkdXJhdGlvbjogNTAwMCxcbiAgICBkZWxheTogMjAwMCxcbiAgICBvblRvcDogZmFsc2Vcbn07XG5cblxuY29uc3QgSU5ERU5UX1NJWkUgPSAxNjtcbmNvbnN0IENIRUNLX0lOVEVSVkFMID0gNTAwO1xuXG5sZXQgdGVtcGxhdGVJZCA9IDA7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNY1RvYXN0U2VydmljZTxUIGV4dGVuZHMgTWNUb2FzdENvbXBvbmVudCA9IE1jVG9hc3RDb21wb25lbnQ+IHtcbiAgICBnZXQgdG9hc3RzKCk6IENvbXBvbmVudFJlZjxUPltdIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXModGhpcy50b2FzdHNEaWN0KVxuICAgICAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gIWl0ZW0uaG9zdFZpZXcuZGVzdHJveWVkKTtcbiAgICB9XG5cbiAgICBnZXQgdGVtcGxhdGVzKCk6IEVtYmVkZGVkVmlld1JlZjxUPltdIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXModGhpcy50ZW1wbGF0ZXNEaWN0KTtcbiAgICB9XG5cbiAgICByZWFkb25seSBob3ZlcmVkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gICAgcmVhZG9ubHkgZm9jdXNlZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgcHJpdmF0ZSBjb250YWluZXJJbnN0YW5jZTogTWNUb2FzdENvbnRhaW5lckNvbXBvbmVudDtcbiAgICBwcml2YXRlIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWY7XG4gICAgcHJpdmF0ZSBwb3J0YWw6IENvbXBvbmVudFBvcnRhbDxNY1RvYXN0Q29udGFpbmVyQ29tcG9uZW50PjtcblxuICAgIHByaXZhdGUgdG9hc3RzRGljdDogeyBbaWQ6IG51bWJlcl06IENvbXBvbmVudFJlZjxUPiB9ID0ge307XG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZXNEaWN0OiB7IFtpZDogbnVtYmVyXTogRW1iZWRkZWRWaWV3UmVmPFQ+IH0gPSB7fTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1DX1RPQVNUX0NPTkZJRykgcHJpdmF0ZSB0b2FzdENvbmZpZzogTWNUb2FzdENvbmZpZyxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSB0b2FzdEZhY3Rvcnk6IE1jVG9hc3RDb21wb25lbnRcbiAgICApIHtcbiAgICAgICAgdGhpcy50b2FzdENvbmZpZyA9IHRvYXN0Q29uZmlnIHx8IGRlZmF1bHRUb2FzdENvbmZpZztcblxuICAgICAgICB0aW1lcihDSEVDS19JTlRFUlZBTCwgQ0hFQ0tfSU5URVJWQUwpXG4gICAgICAgICAgICAucGlwZShmaWx0ZXIoKCkgPT4gdGhpcy50b2FzdHMubGVuZ3RoID4gMCAmJiAhdGhpcy5ob3ZlcmVkLmdldFZhbHVlKCkgJiYgIXRoaXMuZm9jdXNlZC5nZXRWYWx1ZSgpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUodGhpcy5wcm9jZXNzVG9hc3RzKTtcbiAgICB9XG5cbiAgICBzaG93KFxuICAgICAgICBkYXRhOiBNY1RvYXN0RGF0YSxcbiAgICAgICAgZHVyYXRpb246IG51bWJlciA9IHRoaXMudG9hc3RDb25maWcuZHVyYXRpb24sXG4gICAgICAgIG9uVG9wOiBib29sZWFuID0gdGhpcy50b2FzdENvbmZpZy5vblRvcFxuICAgICk6IHsgcmVmOiBDb21wb25lbnRSZWY8VD47IGlkOiBudW1iZXJ9IHtcblxuICAgICAgICB0aGlzLnByZXBhcmVDb250YWluZXIoKTtcblxuICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNvbnRhaW5lckluc3RhbmNlLmNyZWF0ZVRvYXN0PFQ+KGRhdGEsIHRoaXMudG9hc3RGYWN0b3J5IHx8IE1jVG9hc3RDb21wb25lbnQsIG9uVG9wKTtcblxuICAgICAgICB0aGlzLnRvYXN0c0RpY3RbY29tcG9uZW50UmVmLmluc3RhbmNlLmlkXSA9IGNvbXBvbmVudFJlZjtcblxuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UudHRsID0gZHVyYXRpb247XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5kZWxheSA9IHRoaXMudG9hc3RDb25maWcuZGVsYXk7XG5cbiAgICAgICAgcmV0dXJuIHsgcmVmOiBjb21wb25lbnRSZWYsIGlkOiBjb21wb25lbnRSZWYuaW5zdGFuY2UuaWQgfTtcbiAgICB9XG5cbiAgICBzaG93VGVtcGxhdGUoXG4gICAgICAgIGRhdGE6IE1jVG9hc3REYXRhLFxuICAgICAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PixcbiAgICAgICAgZHVyYXRpb246IG51bWJlciA9IHRoaXMudG9hc3RDb25maWcuZHVyYXRpb24sXG4gICAgICAgIG9uVG9wOiBib29sZWFuID0gdGhpcy50b2FzdENvbmZpZy5vblRvcFxuICAgICk6IHsgcmVmOiBFbWJlZGRlZFZpZXdSZWY8VD47IGlkOiBudW1iZXIgfSB7XG5cbiAgICAgICAgdGhpcy5wcmVwYXJlQ29udGFpbmVyKCk7XG5cbiAgICAgICAgY29uc3Qgdmlld1JlZiA9IHRoaXMuY29udGFpbmVySW5zdGFuY2UuY3JlYXRlVGVtcGxhdGU8VD4oZGF0YSwgdGVtcGxhdGUsIG9uVG9wKTtcblxuICAgICAgICB0aGlzLnRlbXBsYXRlc0RpY3RbdGVtcGxhdGVJZF0gPSB2aWV3UmVmO1xuXG4gICAgICAgIHRoaXMuYWRkUmVtb3ZlVGltZXIodGVtcGxhdGVJZCwgZHVyYXRpb24pO1xuXG4gICAgICAgIHRlbXBsYXRlSWQrKztcblxuICAgICAgICByZXR1cm4geyByZWY6IHZpZXdSZWYsIGlkOiB0ZW1wbGF0ZUlkIH07XG4gICAgfVxuXG4gICAgaGlkZShpZDogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMudG9hc3RzRGljdFtpZF07XG5cbiAgICAgICAgaWYgKCFjb21wb25lbnRSZWYpIHsgcmV0dXJuOyB9XG5cbiAgICAgICAgdGhpcy5jb250YWluZXJJbnN0YW5jZS5yZW1vdmUoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcblxuICAgICAgICBkZWxldGUgdGhpcy50b2FzdHNEaWN0W2lkXTtcbiAgICB9XG5cbiAgICBoaWRlVGVtcGxhdGUoaWQ6IG51bWJlcikge1xuICAgICAgICBjb25zdCB2aWV3UmVmID0gdGhpcy50ZW1wbGF0ZXNEaWN0W2lkXTtcblxuICAgICAgICBpZiAoIXZpZXdSZWYpIHsgcmV0dXJuOyB9XG5cbiAgICAgICAgdGhpcy5jb250YWluZXJJbnN0YW5jZS5yZW1vdmUodmlld1JlZik7XG5cbiAgICAgICAgZGVsZXRlIHRoaXMudGVtcGxhdGVzRGljdFtpZF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9jZXNzVG9hc3RzID0gKCkgPT4ge1xuICAgICAgICBmb3IgKGNvbnN0IHRvYXN0IG9mIHRoaXMudG9hc3RzLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5pbnN0YW5jZS50dGwgPiAwKSkge1xuICAgICAgICAgICAgdG9hc3QuaW5zdGFuY2UudHRsIC09IENIRUNLX0lOVEVSVkFMO1xuXG4gICAgICAgICAgICBpZiAodG9hc3QuaW5zdGFuY2UudHRsIDw9IDApIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhpZGUodG9hc3QuaW5zdGFuY2UuaWQpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVUVExBZnRlckRlbGV0ZSgpO1xuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVRUTEFmdGVyRGVsZXRlKCkge1xuICAgICAgICB0aGlzLnRvYXN0c1xuICAgICAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5pbnN0YW5jZS50dGwgPiAwKVxuICAgICAgICAgICAgLmZvckVhY2goKGl0ZW0pID0+IGl0ZW0uaW5zdGFuY2UudHRsID0gdGhpcy50b2FzdENvbmZpZy5kZWxheSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRSZW1vdmVUaW1lcihpZDogbnVtYmVyLCBkdXJhdGlvbjogbnVtYmVyKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5oaWRlVGVtcGxhdGUoaWQpLCBkdXJhdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcmVwYXJlQ29udGFpbmVyKCkge1xuICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLmNyZWF0ZU92ZXJsYXkoKTtcblxuICAgICAgICB0aGlzLnBvcnRhbCA9IHRoaXMucG9ydGFsIHx8IG5ldyBDb21wb25lbnRQb3J0YWwoTWNUb2FzdENvbnRhaW5lckNvbXBvbmVudCwgbnVsbCwgdGhpcy5pbmplY3Rvcik7XG5cbiAgICAgICAgaWYgKCF0aGlzLm92ZXJsYXlSZWYuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgICAgICAgdGhpcy5jb250YWluZXJJbnN0YW5jZSA9IHRoaXMub3ZlcmxheVJlZi5hdHRhY2godGhpcy5wb3J0YWwpLmluc3RhbmNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVPdmVybGF5KCk6IE92ZXJsYXlSZWYge1xuICAgICAgICBpZiAodGhpcy5vdmVybGF5UmVmKSB7IHJldHVybiB0aGlzLm92ZXJsYXlSZWY7IH1cblxuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5nZXRQb3NpdGlvblN0cmF0ZWd5KHRoaXMudG9hc3RDb25maWcucG9zaXRpb24pO1xuXG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXkuY3JlYXRlKHsgcG9zaXRpb25TdHJhdGVneSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFBvc2l0aW9uU3RyYXRlZ3kocG9zaXRpb24/OiBNY1RvYXN0UG9zaXRpb24pOiBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICAgICAgc3dpdGNoIChwb3NpdGlvbikge1xuICAgICAgICAgICAgY2FzZSBNY1RvYXN0UG9zaXRpb24uQ0VOVEVSOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldENlbnRlcigpO1xuICAgICAgICAgICAgY2FzZSBNY1RvYXN0UG9zaXRpb24uQk9UVE9NX0NFTlRFUjpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRCb3R0b21DZW50ZXIoKTtcbiAgICAgICAgICAgIGNhc2UgTWNUb2FzdFBvc2l0aW9uLkJPVFRPTV9MRUZUOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldEJvdHRvbUxlZnQoKTtcbiAgICAgICAgICAgIGNhc2UgTWNUb2FzdFBvc2l0aW9uLkJPVFRPTV9SSUdIVDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRCb3R0b21SaWdodCgpO1xuICAgICAgICAgICAgY2FzZSBNY1RvYXN0UG9zaXRpb24uVE9QX0NFTlRFUjpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUb3BDZW50ZXIoKTtcbiAgICAgICAgICAgIGNhc2UgTWNUb2FzdFBvc2l0aW9uLlRPUF9MRUZUOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFRvcExlZnQoKTtcbiAgICAgICAgICAgIGNhc2UgTWNUb2FzdFBvc2l0aW9uLlRPUF9SSUdIVDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUb3BSaWdodCgpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUb3BDZW50ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VG9wQ2VudGVyKCk6IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRHbG9iYWxPdmVybGF5UG9zaXRpb24oKVxuICAgICAgICAgICAgLnRvcChgJHtJTkRFTlRfU0laRX1weGApXG4gICAgICAgICAgICAuY2VudGVySG9yaXpvbnRhbGx5KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUb3BMZWZ0KCk6IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRHbG9iYWxPdmVybGF5UG9zaXRpb24oKVxuICAgICAgICAgICAgLnRvcChgJHtJTkRFTlRfU0laRX1weGApXG4gICAgICAgICAgICAubGVmdChgJHtJTkRFTlRfU0laRX1weGApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VG9wUmlnaHQoKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEdsb2JhbE92ZXJsYXlQb3NpdGlvbigpXG4gICAgICAgICAgICAudG9wKGAke0lOREVOVF9TSVpFfXB4YClcbiAgICAgICAgICAgIC5yaWdodChgJHtJTkRFTlRfU0laRX1weGApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Qm90dG9tQ2VudGVyKCk6IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRHbG9iYWxPdmVybGF5UG9zaXRpb24oKVxuICAgICAgICAgICAgLmJvdHRvbShgJHtJTkRFTlRfU0laRX1weGApXG4gICAgICAgICAgICAuY2VudGVySG9yaXpvbnRhbGx5KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRCb3R0b21MZWZ0KCk6IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRHbG9iYWxPdmVybGF5UG9zaXRpb24oKVxuICAgICAgICAgICAgLmJvdHRvbShgJHtJTkRFTlRfU0laRX1weGApXG4gICAgICAgICAgICAubGVmdChgJHtJTkRFTlRfU0laRX1weGApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Qm90dG9tUmlnaHQoKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEdsb2JhbE92ZXJsYXlQb3NpdGlvbigpXG4gICAgICAgICAgICAuYm90dG9tKGAke0lOREVOVF9TSVpFfXB4YClcbiAgICAgICAgICAgIC5yaWdodChgJHtJTkRFTlRfU0laRX1weGApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q2VudGVyKCk6IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRHbG9iYWxPdmVybGF5UG9zaXRpb24oKVxuICAgICAgICAgICAgLmNlbnRlclZlcnRpY2FsbHkoKVxuICAgICAgICAgICAgLmNlbnRlckhvcml6b250YWxseSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0R2xvYmFsT3ZlcmxheVBvc2l0aW9uKCk6IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICByZXR1cm4gdGhpcy5vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCk7XG4gICAgfVxufVxuIl19
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy90b2FzdC90b2FzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBMEIsT0FBTyxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDbkYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFDSCxVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFFTixRQUFRLEVBR1IsY0FBYyxFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFeEUsT0FBTyxFQUFlLGVBQWUsRUFBaUIsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFHNUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQUMsaUJBQWlCLENBQUMsQ0FBQztBQUV0RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBa0I7SUFDN0MsUUFBUSxFQUFFLGVBQWUsQ0FBQyxTQUFTO0lBQ25DLFFBQVEsRUFBRSxJQUFJO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxLQUFLLEVBQUUsS0FBSztDQUNmLENBQUM7QUFHRixNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUM7QUFDdkIsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDO0FBRTNCLElBQUksVUFBVSxHQUFHLENBQUMsQ0FBQztBQUduQixNQUFNLE9BQU8sY0FBYztJQW9CdkIsWUFDWSxPQUFnQixFQUNoQixRQUFrQixFQUNRLFlBQWlCLEVBQ04sV0FBMEI7UUFIL0QsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ1EsaUJBQVksR0FBWixZQUFZLENBQUs7UUFDTixnQkFBVyxHQUFYLFdBQVcsQ0FBZTtRQWRsRSxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDOUMsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBTS9DLGVBQVUsR0FBc0MsRUFBRSxDQUFDO1FBQ25ELGtCQUFhLEdBQXlDLEVBQUUsQ0FBQztRQXlFekQsa0JBQWEsR0FBRyxHQUFHLEVBQUU7WUFDekIsS0FBSyxNQUFNLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3JFLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLGNBQWMsQ0FBQztnQkFFckMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUU7b0JBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFFN0IsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7b0JBRTVCLE1BQU07aUJBQ1Q7YUFDSjtRQUNMLENBQUMsQ0FBQTtRQTdFRyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsSUFBSSxrQkFBa0IsQ0FBQztRQUVyRCxLQUFLLENBQUMsY0FBYyxFQUFFLGNBQWMsQ0FBQzthQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7YUFDbEcsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBOUJELElBQUksTUFBTTtRQUNOLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ2hDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDVCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUF5QkQsSUFBSSxDQUNBLElBQWlCLEVBQ2pCLFdBQW1CLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUM1QyxRQUFpQixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUs7UUFHdkMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBSSxJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUUzRixJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsWUFBWSxDQUFDO1FBRXpELFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQztRQUNyQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUVyRCxPQUFPLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWSxDQUNSLElBQWlCLEVBQ2pCLFFBQTBCLEVBQzFCLFdBQW1CLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUM1QyxRQUFpQixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUs7UUFHdkMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBSSxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRWhGLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEdBQUcsT0FBTyxDQUFDO1FBRXpDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRTFDLFVBQVUsRUFBRSxDQUFDO1FBRWIsT0FBTyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLENBQUMsRUFBVTtRQUNYLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFekMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUFFLE9BQU87U0FBRTtRQUU5QixJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVyRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELFlBQVksQ0FBQyxFQUFVO1FBQ25CLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFdkMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUFFLE9BQU87U0FBRTtRQUV6QixJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXZDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBZ0JPLG9CQUFvQjtRQUN4QixJQUFJLENBQUMsTUFBTTthQUNOLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO2FBQ3ZDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU8sY0FBYyxDQUFDLEVBQVUsRUFBRSxRQUFnQjtRQUMvQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXZDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLGVBQWUsQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWpHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ3pFO0lBQ0wsQ0FBQztJQUVPLGFBQWE7UUFDakIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQUUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO1NBQUU7UUFFaEQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU3RSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxRQUEwQjtRQUNsRCxRQUFRLFFBQVEsRUFBRTtZQUNkLEtBQUssZUFBZSxDQUFDLE1BQU07Z0JBQ3ZCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVCLEtBQUssZUFBZSxDQUFDLGFBQWE7Z0JBQzlCLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ2xDLEtBQUssZUFBZSxDQUFDLFdBQVc7Z0JBQzVCLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ2hDLEtBQUssZUFBZSxDQUFDLFlBQVk7Z0JBQzdCLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ2pDLEtBQUssZUFBZSxDQUFDLFVBQVU7Z0JBQzNCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQy9CLEtBQUssZUFBZSxDQUFDLFFBQVE7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzdCLEtBQUssZUFBZSxDQUFDLFNBQVM7Z0JBQzFCLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzlCO2dCQUNJLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ2xDO0lBQ0wsQ0FBQztJQUVPLFlBQVk7UUFDaEIsT0FBTyxJQUFJLENBQUMsd0JBQXdCLEVBQUU7YUFDakMsR0FBRyxDQUFDLEdBQUcsV0FBVyxJQUFJLENBQUM7YUFDdkIsa0JBQWtCLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRU8sVUFBVTtRQUNkLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixFQUFFO2FBQ2pDLEdBQUcsQ0FBQyxHQUFHLFdBQVcsSUFBSSxDQUFDO2FBQ3ZCLElBQUksQ0FBQyxHQUFHLFdBQVcsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVPLFdBQVc7UUFDZixPQUFPLElBQUksQ0FBQyx3QkFBd0IsRUFBRTthQUNqQyxHQUFHLENBQUMsR0FBRyxXQUFXLElBQUksQ0FBQzthQUN2QixLQUFLLENBQUMsR0FBRyxXQUFXLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTyxlQUFlO1FBQ25CLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixFQUFFO2FBQ2pDLE1BQU0sQ0FBQyxHQUFHLFdBQVcsSUFBSSxDQUFDO2FBQzFCLGtCQUFrQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLGFBQWE7UUFDakIsT0FBTyxJQUFJLENBQUMsd0JBQXdCLEVBQUU7YUFDakMsTUFBTSxDQUFDLEdBQUcsV0FBVyxJQUFJLENBQUM7YUFDMUIsSUFBSSxDQUFDLEdBQUcsV0FBVyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU8sY0FBYztRQUNsQixPQUFPLElBQUksQ0FBQyx3QkFBd0IsRUFBRTthQUNqQyxNQUFNLENBQUMsR0FBRyxXQUFXLElBQUksQ0FBQzthQUMxQixLQUFLLENBQUMsR0FBRyxXQUFXLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTyxTQUFTO1FBQ2IsT0FBTyxJQUFJLENBQUMsd0JBQXdCLEVBQUU7YUFDakMsZ0JBQWdCLEVBQUU7YUFDbEIsa0JBQWtCLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRU8sd0JBQXdCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzs4SEF0TVEsY0FBYyxpRUF1QlgsZ0JBQWdCLGFBQ0osZUFBZTtrSUF4QjlCLGNBQWM7MkZBQWQsY0FBYztrQkFEMUIsVUFBVTs7MEJBd0JGLE1BQU07MkJBQUMsZ0JBQWdCOzswQkFDdkIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2xvYmFsUG9zaXRpb25TdHJhdGVneSwgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgICBJbmplY3RhYmxlLFxuICAgIEluamVjdG9yLFxuICAgIEluamVjdCxcbiAgICBDb21wb25lbnRSZWYsXG4gICAgT3B0aW9uYWwsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgRW1iZWRkZWRWaWV3UmVmLFxuICAgIEluamVjdGlvblRva2VuXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBNY1RvYXN0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi90b2FzdC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1jVG9hc3RDb21wb25lbnQgfSBmcm9tICcuL3RvYXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNY1RvYXN0RGF0YSwgTUNfVE9BU1RfQ09ORklHLCBNY1RvYXN0Q29uZmlnLCBNY1RvYXN0UG9zaXRpb24gfSBmcm9tICcuL3RvYXN0LnR5cGUnO1xuXG5cbmV4cG9ydCBjb25zdCBNQ19UT0FTVF9GQUNUT1JZID0gbmV3IEluamVjdGlvblRva2VuKCdNY1VzZVZhbGlkYXRpb24nKTtcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRUb2FzdENvbmZpZzogTWNUb2FzdENvbmZpZyA9IHtcbiAgICBwb3NpdGlvbjogTWNUb2FzdFBvc2l0aW9uLlRPUF9SSUdIVCxcbiAgICBkdXJhdGlvbjogNTAwMCxcbiAgICBkZWxheTogMjAwMCxcbiAgICBvblRvcDogZmFsc2Vcbn07XG5cblxuY29uc3QgSU5ERU5UX1NJWkUgPSAxNjtcbmNvbnN0IENIRUNLX0lOVEVSVkFMID0gNTAwO1xuXG5sZXQgdGVtcGxhdGVJZCA9IDA7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNY1RvYXN0U2VydmljZTxUIGV4dGVuZHMgTWNUb2FzdENvbXBvbmVudCA9IE1jVG9hc3RDb21wb25lbnQ+IHtcbiAgICBnZXQgdG9hc3RzKCk6IENvbXBvbmVudFJlZjxUPltdIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXModGhpcy50b2FzdHNEaWN0KVxuICAgICAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gIWl0ZW0uaG9zdFZpZXcuZGVzdHJveWVkKTtcbiAgICB9XG5cbiAgICBnZXQgdGVtcGxhdGVzKCk6IEVtYmVkZGVkVmlld1JlZjxUPltdIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXModGhpcy50ZW1wbGF0ZXNEaWN0KTtcbiAgICB9XG5cbiAgICByZWFkb25seSBob3ZlcmVkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gICAgcmVhZG9ubHkgZm9jdXNlZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgcHJpdmF0ZSBjb250YWluZXJJbnN0YW5jZTogTWNUb2FzdENvbnRhaW5lckNvbXBvbmVudDtcbiAgICBwcml2YXRlIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWY7XG4gICAgcHJpdmF0ZSBwb3J0YWw6IENvbXBvbmVudFBvcnRhbDxNY1RvYXN0Q29udGFpbmVyQ29tcG9uZW50PjtcblxuICAgIHByaXZhdGUgdG9hc3RzRGljdDogeyBbaWQ6IG51bWJlcl06IENvbXBvbmVudFJlZjxUPiB9ID0ge307XG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZXNEaWN0OiB7IFtpZDogbnVtYmVyXTogRW1iZWRkZWRWaWV3UmVmPFQ+IH0gPSB7fTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBASW5qZWN0KE1DX1RPQVNUX0ZBQ1RPUlkpIHByaXZhdGUgdG9hc3RGYWN0b3J5OiBhbnksXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTUNfVE9BU1RfQ09ORklHKSBwcml2YXRlIHRvYXN0Q29uZmlnOiBNY1RvYXN0Q29uZmlnXG4gICAgKSB7XG4gICAgICAgIHRoaXMudG9hc3RDb25maWcgPSB0b2FzdENvbmZpZyB8fCBkZWZhdWx0VG9hc3RDb25maWc7XG5cbiAgICAgICAgdGltZXIoQ0hFQ0tfSU5URVJWQUwsIENIRUNLX0lOVEVSVkFMKVxuICAgICAgICAgICAgLnBpcGUoZmlsdGVyKCgpID0+IHRoaXMudG9hc3RzLmxlbmd0aCA+IDAgJiYgIXRoaXMuaG92ZXJlZC5nZXRWYWx1ZSgpICYmICF0aGlzLmZvY3VzZWQuZ2V0VmFsdWUoKSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHRoaXMucHJvY2Vzc1RvYXN0cyk7XG4gICAgfVxuXG4gICAgc2hvdyhcbiAgICAgICAgZGF0YTogTWNUb2FzdERhdGEsXG4gICAgICAgIGR1cmF0aW9uOiBudW1iZXIgPSB0aGlzLnRvYXN0Q29uZmlnLmR1cmF0aW9uLFxuICAgICAgICBvblRvcDogYm9vbGVhbiA9IHRoaXMudG9hc3RDb25maWcub25Ub3BcbiAgICApOiB7IHJlZjogQ29tcG9uZW50UmVmPFQ+OyBpZDogbnVtYmVyfSB7XG5cbiAgICAgICAgdGhpcy5wcmVwYXJlQ29udGFpbmVyKCk7XG5cbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5jb250YWluZXJJbnN0YW5jZS5jcmVhdGVUb2FzdDxUPihkYXRhLCB0aGlzLnRvYXN0RmFjdG9yeSwgb25Ub3ApO1xuXG4gICAgICAgIHRoaXMudG9hc3RzRGljdFtjb21wb25lbnRSZWYuaW5zdGFuY2UuaWRdID0gY29tcG9uZW50UmVmO1xuXG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS50dGwgPSBkdXJhdGlvbjtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmRlbGF5ID0gdGhpcy50b2FzdENvbmZpZy5kZWxheTtcblxuICAgICAgICByZXR1cm4geyByZWY6IGNvbXBvbmVudFJlZiwgaWQ6IGNvbXBvbmVudFJlZi5pbnN0YW5jZS5pZCB9O1xuICAgIH1cblxuICAgIHNob3dUZW1wbGF0ZShcbiAgICAgICAgZGF0YTogTWNUb2FzdERhdGEsXG4gICAgICAgIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgICAgICBkdXJhdGlvbjogbnVtYmVyID0gdGhpcy50b2FzdENvbmZpZy5kdXJhdGlvbixcbiAgICAgICAgb25Ub3A6IGJvb2xlYW4gPSB0aGlzLnRvYXN0Q29uZmlnLm9uVG9wXG4gICAgKTogeyByZWY6IEVtYmVkZGVkVmlld1JlZjxUPjsgaWQ6IG51bWJlciB9IHtcblxuICAgICAgICB0aGlzLnByZXBhcmVDb250YWluZXIoKTtcblxuICAgICAgICBjb25zdCB2aWV3UmVmID0gdGhpcy5jb250YWluZXJJbnN0YW5jZS5jcmVhdGVUZW1wbGF0ZTxUPihkYXRhLCB0ZW1wbGF0ZSwgb25Ub3ApO1xuXG4gICAgICAgIHRoaXMudGVtcGxhdGVzRGljdFt0ZW1wbGF0ZUlkXSA9IHZpZXdSZWY7XG5cbiAgICAgICAgdGhpcy5hZGRSZW1vdmVUaW1lcih0ZW1wbGF0ZUlkLCBkdXJhdGlvbik7XG5cbiAgICAgICAgdGVtcGxhdGVJZCsrO1xuXG4gICAgICAgIHJldHVybiB7IHJlZjogdmlld1JlZiwgaWQ6IHRlbXBsYXRlSWQgfTtcbiAgICB9XG5cbiAgICBoaWRlKGlkOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy50b2FzdHNEaWN0W2lkXTtcblxuICAgICAgICBpZiAoIWNvbXBvbmVudFJlZikgeyByZXR1cm47IH1cblxuICAgICAgICB0aGlzLmNvbnRhaW5lckluc3RhbmNlLnJlbW92ZShjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuXG4gICAgICAgIGRlbGV0ZSB0aGlzLnRvYXN0c0RpY3RbaWRdO1xuICAgIH1cblxuICAgIGhpZGVUZW1wbGF0ZShpZDogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IHZpZXdSZWYgPSB0aGlzLnRlbXBsYXRlc0RpY3RbaWRdO1xuXG4gICAgICAgIGlmICghdmlld1JlZikgeyByZXR1cm47IH1cblxuICAgICAgICB0aGlzLmNvbnRhaW5lckluc3RhbmNlLnJlbW92ZSh2aWV3UmVmKTtcblxuICAgICAgICBkZWxldGUgdGhpcy50ZW1wbGF0ZXNEaWN0W2lkXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3NUb2FzdHMgPSAoKSA9PiB7XG4gICAgICAgIGZvciAoY29uc3QgdG9hc3Qgb2YgdGhpcy50b2FzdHMuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmluc3RhbmNlLnR0bCA+IDApKSB7XG4gICAgICAgICAgICB0b2FzdC5pbnN0YW5jZS50dGwgLT0gQ0hFQ0tfSU5URVJWQUw7XG5cbiAgICAgICAgICAgIGlmICh0b2FzdC5pbnN0YW5jZS50dGwgPD0gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMuaGlkZSh0b2FzdC5pbnN0YW5jZS5pZCk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVRUTEFmdGVyRGVsZXRlKCk7XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlVFRMQWZ0ZXJEZWxldGUoKSB7XG4gICAgICAgIHRoaXMudG9hc3RzXG4gICAgICAgICAgICAuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmluc3RhbmNlLnR0bCA+IDApXG4gICAgICAgICAgICAuZm9yRWFjaCgoaXRlbSkgPT4gaXRlbS5pbnN0YW5jZS50dGwgPSB0aGlzLnRvYXN0Q29uZmlnLmRlbGF5KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFJlbW92ZVRpbWVyKGlkOiBudW1iZXIsIGR1cmF0aW9uOiBudW1iZXIpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmhpZGVUZW1wbGF0ZShpZCksIGR1cmF0aW9uKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByZXBhcmVDb250YWluZXIoKSB7XG4gICAgICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMuY3JlYXRlT3ZlcmxheSgpO1xuXG4gICAgICAgIHRoaXMucG9ydGFsID0gdGhpcy5wb3J0YWwgfHwgbmV3IENvbXBvbmVudFBvcnRhbChNY1RvYXN0Q29udGFpbmVyQ29tcG9uZW50LCBudWxsLCB0aGlzLmluamVjdG9yKTtcblxuICAgICAgICBpZiAoIXRoaXMub3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lckluc3RhbmNlID0gdGhpcy5vdmVybGF5UmVmLmF0dGFjaCh0aGlzLnBvcnRhbCkuaW5zdGFuY2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZU92ZXJsYXkoKTogT3ZlcmxheVJlZiB7XG4gICAgICAgIGlmICh0aGlzLm92ZXJsYXlSZWYpIHsgcmV0dXJuIHRoaXMub3ZlcmxheVJlZjsgfVxuXG4gICAgICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLmdldFBvc2l0aW9uU3RyYXRlZ3kodGhpcy50b2FzdENvbmZpZy5wb3NpdGlvbik7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmxheS5jcmVhdGUoeyBwb3NpdGlvblN0cmF0ZWd5IH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UG9zaXRpb25TdHJhdGVneShwb3NpdGlvbj86IE1jVG9hc3RQb3NpdGlvbik6IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICBzd2l0Y2ggKHBvc2l0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIE1jVG9hc3RQb3NpdGlvbi5DRU5URVI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q2VudGVyKCk7XG4gICAgICAgICAgICBjYXNlIE1jVG9hc3RQb3NpdGlvbi5CT1RUT01fQ0VOVEVSOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldEJvdHRvbUNlbnRlcigpO1xuICAgICAgICAgICAgY2FzZSBNY1RvYXN0UG9zaXRpb24uQk9UVE9NX0xFRlQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Qm90dG9tTGVmdCgpO1xuICAgICAgICAgICAgY2FzZSBNY1RvYXN0UG9zaXRpb24uQk9UVE9NX1JJR0hUOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldEJvdHRvbVJpZ2h0KCk7XG4gICAgICAgICAgICBjYXNlIE1jVG9hc3RQb3NpdGlvbi5UT1BfQ0VOVEVSOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFRvcENlbnRlcigpO1xuICAgICAgICAgICAgY2FzZSBNY1RvYXN0UG9zaXRpb24uVE9QX0xFRlQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VG9wTGVmdCgpO1xuICAgICAgICAgICAgY2FzZSBNY1RvYXN0UG9zaXRpb24uVE9QX1JJR0hUOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFRvcFJpZ2h0KCk7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFRvcENlbnRlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUb3BDZW50ZXIoKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEdsb2JhbE92ZXJsYXlQb3NpdGlvbigpXG4gICAgICAgICAgICAudG9wKGAke0lOREVOVF9TSVpFfXB4YClcbiAgICAgICAgICAgIC5jZW50ZXJIb3Jpem9udGFsbHkoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFRvcExlZnQoKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEdsb2JhbE92ZXJsYXlQb3NpdGlvbigpXG4gICAgICAgICAgICAudG9wKGAke0lOREVOVF9TSVpFfXB4YClcbiAgICAgICAgICAgIC5sZWZ0KGAke0lOREVOVF9TSVpFfXB4YCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUb3BSaWdodCgpOiBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0R2xvYmFsT3ZlcmxheVBvc2l0aW9uKClcbiAgICAgICAgICAgIC50b3AoYCR7SU5ERU5UX1NJWkV9cHhgKVxuICAgICAgICAgICAgLnJpZ2h0KGAke0lOREVOVF9TSVpFfXB4YCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRCb3R0b21DZW50ZXIoKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEdsb2JhbE92ZXJsYXlQb3NpdGlvbigpXG4gICAgICAgICAgICAuYm90dG9tKGAke0lOREVOVF9TSVpFfXB4YClcbiAgICAgICAgICAgIC5jZW50ZXJIb3Jpem9udGFsbHkoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEJvdHRvbUxlZnQoKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEdsb2JhbE92ZXJsYXlQb3NpdGlvbigpXG4gICAgICAgICAgICAuYm90dG9tKGAke0lOREVOVF9TSVpFfXB4YClcbiAgICAgICAgICAgIC5sZWZ0KGAke0lOREVOVF9TSVpFfXB4YCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRCb3R0b21SaWdodCgpOiBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0R2xvYmFsT3ZlcmxheVBvc2l0aW9uKClcbiAgICAgICAgICAgIC5ib3R0b20oYCR7SU5ERU5UX1NJWkV9cHhgKVxuICAgICAgICAgICAgLnJpZ2h0KGAke0lOREVOVF9TSVpFfXB4YCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDZW50ZXIoKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEdsb2JhbE92ZXJsYXlQb3NpdGlvbigpXG4gICAgICAgICAgICAuY2VudGVyVmVydGljYWxseSgpXG4gICAgICAgICAgICAuY2VudGVySG9yaXpvbnRhbGx5KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRHbG9iYWxPdmVybGF5UG9zaXRpb24oKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKTtcbiAgICB9XG59XG4iXX0=
@@ -7,9 +7,8 @@ import * as i0 from "@angular/core";
7
7
  import * as i1 from "@angular/cdk/a11y";
8
8
  let nextUniqueId = 0;
9
9
  export class McToggleBase {
10
- // tslint:disable-next-line: naming-convention
11
- constructor(_elementRef) {
12
- this._elementRef = _elementRef;
10
+ constructor(elementRef) {
11
+ this.elementRef = elementRef;
13
12
  }
14
13
  }
15
14
  // tslint:disable-next-line: naming-convention
@@ -17,11 +16,9 @@ export const McToggleMixinBase = mixinTabIndex(mixinColor(mixinDisabled(McToggle
17
16
  export class McToggleChange {
18
17
  }
19
18
  export class McToggleComponent extends McToggleMixinBase {
20
- constructor(
21
- // tslint:disable-next-line:naming-convention
22
- _elementRef, _focusMonitor, _changeDetectorRef) {
23
- super(_elementRef);
24
- this._elementRef = _elementRef;
19
+ constructor(elementRef, _focusMonitor, _changeDetectorRef) {
20
+ super(elementRef);
21
+ this.elementRef = elementRef;
25
22
  this._focusMonitor = _focusMonitor;
26
23
  this._changeDetectorRef = _changeDetectorRef;
27
24
  this.labelPosition = 'right';
@@ -37,7 +34,7 @@ export class McToggleComponent extends McToggleMixinBase {
37
34
  // tslint:disable-next-line:no-empty
38
35
  this.onChangeCallback = (_) => { };
39
36
  this.id = this.uniqueId;
40
- this._focusMonitor.monitor(this._elementRef.nativeElement, true);
37
+ this._focusMonitor.monitor(this.elementRef.nativeElement, true);
41
38
  }
42
39
  get inputId() {
43
40
  return `${this.id || this.uniqueId}-input`;
@@ -61,7 +58,7 @@ export class McToggleComponent extends McToggleMixinBase {
61
58
  }
62
59
  }
63
60
  ngOnDestroy() {
64
- this._focusMonitor.stopMonitoring(this._elementRef.nativeElement);
61
+ this._focusMonitor.stopMonitoring(this.elementRef.nativeElement);
65
62
  }
66
63
  focus() {
67
64
  this._focusMonitor.focusVia(this.inputElement.nativeElement, 'keyboard');
@@ -104,17 +101,17 @@ export class McToggleComponent extends McToggleMixinBase {
104
101
  this.change.emit(event);
105
102
  }
106
103
  }
107
- /** @nocollapse */ /** @nocollapse */ McToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToggleComponent, deps: [{ token: i0.ElementRef }, { token: i1.FocusMonitor }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
108
- /** @nocollapse */ /** @nocollapse */ McToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: McToggleComponent, selector: "mc-toggle", inputs: { color: "color", tabIndex: "tabIndex", labelPosition: "labelPosition", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], id: "id", name: "name", value: "value", disabled: "disabled", checked: "checked" }, outputs: { change: "change" }, host: { properties: { "id": "id", "attr.id": "id", "class.mc-disabled": "disabled", "class.mc-active": "checked" }, classAttribute: "mc-toggle" }, providers: [{
104
+ /** @nocollapse */ McToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: McToggleComponent, deps: [{ token: i0.ElementRef }, { token: i1.FocusMonitor }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
105
+ /** @nocollapse */ McToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: McToggleComponent, selector: "mc-toggle", inputs: { color: "color", tabIndex: "tabIndex", labelPosition: "labelPosition", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], id: "id", name: "name", value: "value", disabled: "disabled", checked: "checked" }, outputs: { change: "change" }, host: { properties: { "id": "id", "attr.id": "id", "class.mc-disabled": "disabled", "class.mc-active": "checked" }, classAttribute: "mc-toggle" }, providers: [{
109
106
  provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => McToggleComponent)), multi: true
110
- }], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], exportAs: ["mcToggle"], usesInheritance: true, ngImport: i0, template: "<label [attr.for]=\"inputId\" class=\"mc-toggle-layout\">\n <div class=\"mc-toggle__container\" [class.left]=\"labelPosition === 'left'\">\n <input #input\n type=\"checkbox\"\n role=\"switch\"\n class=\"mc-toggle-input cdk-visually-hidden\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"getAriaChecked()\"\n (click)=\"onInputClick($event)\"\n (change)=\"onChangeEvent($event)\"/>\n <div class=\"mc-toggle-bar-container\">\n <div class=\"mc-toggle__overlay\"></div>\n <div class=\"mc-toggle-bar\">\n <div class=\"mc-toggle__circle\" [@switch]=\"checked\"></div>\n </div>\n </div>\n <div class=\"mc-toggle__content\"\n [class.left]=\"labelPosition === 'left'\"\n [class.right]=\"labelPosition === 'right'\">\n <span class=\"mc-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</label>\n", styles: [".mc-toggle{display:inline-block}.mc-toggle .mc-toggle-layout{cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mc-toggle .mc-toggle-bar{position:relative;border-width:1px;border-style:solid}.mc-toggle .mc-toggle-bar.mc-toggle-label-position-left{order:1}.mc-toggle .mc-toggle-bar-container{position:relative}.mc-toggle__container{display:flex;align-items:center;position:relative}.mc-toggle__container.left{flex-direction:row-reverse}.mc-toggle__content.left{margin-right:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__content.right{margin-left:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__circle{position:absolute;border-width:1px;border-style:solid;border-radius:100%;margin-top:-1px;margin-left:-1px;transform:translate(-1px)}.mc-toggle__overlay{position:absolute;top:0;left:0;z-index:1}.mc-toggle:not(.mc-toggle_small) .mc-toggle-bar{height:var(--mc-toggle-size-height, 16px);width:var(--mc-toggle-size-width, 28px);border-radius:var(--mc-toggle-size-border-radius, 9px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__overlay{border-radius:var(--mc-toggle-size-border-radius, 9px);height:var(--mc-toggle-size-height, 16px);width:var(--mc-toggle-size-width, 28px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__circle{height:var(--mc-toggle-size-height, 16px);width:var(--mc-toggle-size-height, 16px)}.mc-toggle.mc-toggle_small .mc-toggle-bar{height:var(--mc-toggle-small-size-height, 14px);width:var(--mc-toggle-small-size-width, 24px);border-radius:var(--mc-toggle-small-size-border-radius, 8px)}.mc-toggle.mc-toggle_small .mc-toggle__overlay{border-radius:var(--mc-toggle-small-size-border-radius, 8px);height:var(--mc-toggle-small-size-height, 14px);width:var(--mc-toggle-small-size-width, 24px)}.mc-toggle.mc-toggle_small .mc-toggle__circle{height:var(--mc-toggle-small-size-height, 14px);width:var(--mc-toggle-small-size-height, 14px)}.mc-toggle:not(.mc-disabled){cursor:pointer}\n"], animations: [
107
+ }], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], exportAs: ["mcToggle"], usesInheritance: true, ngImport: i0, template: "<label [attr.for]=\"inputId\" class=\"mc-toggle-layout\">\n <div class=\"mc-toggle__container\" [class.left]=\"labelPosition === 'left'\">\n <input #input\n type=\"checkbox\"\n role=\"switch\"\n class=\"mc-toggle-input cdk-visually-hidden\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"getAriaChecked()\"\n (click)=\"onInputClick($event)\"\n (change)=\"onChangeEvent($event)\"/>\n <div class=\"mc-toggle-bar-container\">\n <div class=\"mc-toggle__overlay\"></div>\n <div class=\"mc-toggle-bar\">\n <div class=\"mc-toggle__circle\" [@switch]=\"checked\"></div>\n </div>\n </div>\n <div class=\"mc-toggle__content\"\n [class.left]=\"labelPosition === 'left'\"\n [class.right]=\"labelPosition === 'right'\">\n <span class=\"mc-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</label>\n", styles: [".mc-toggle{display:inline-block}.mc-toggle .mc-toggle-layout{cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mc-toggle .mc-toggle-bar{position:relative;border-width:1px;border-style:solid}.mc-toggle .mc-toggle-bar.mc-toggle-label-position-left{order:1}.mc-toggle .mc-toggle-bar-container{position:relative}.mc-toggle__container{display:flex;align-items:center;position:relative}.mc-toggle__container.left{flex-direction:row-reverse}.mc-toggle__content.left{margin-right:8px;margin-right:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__content.right{margin-left:8px;margin-left:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__circle{position:absolute;border-width:1px;border-style:solid;border-radius:100%;margin-top:-1px;margin-left:-1px;transform:translate(-1px)}.mc-toggle__overlay{position:absolute;top:0;left:0;z-index:1}.mc-toggle:not(.mc-toggle_small) .mc-toggle-bar{height:16px;height:var(--mc-toggle-size-height, 16px);width:28px;width:var(--mc-toggle-size-width, 28px);border-radius:9px;border-radius:var(--mc-toggle-size-border-radius, 9px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__overlay{border-radius:9px;border-radius:var(--mc-toggle-size-border-radius, 9px);height:16px;height:var(--mc-toggle-size-height, 16px);width:28px;width:var(--mc-toggle-size-width, 28px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__circle{height:16px;height:var(--mc-toggle-size-height, 16px);width:16px;width:var(--mc-toggle-size-height, 16px)}.mc-toggle.mc-toggle_small .mc-toggle-bar{height:14px;height:var(--mc-toggle-small-size-height, 14px);width:24px;width:var(--mc-toggle-small-size-width, 24px);border-radius:8px;border-radius:var(--mc-toggle-small-size-border-radius, 8px)}.mc-toggle.mc-toggle_small .mc-toggle__overlay{border-radius:8px;border-radius:var(--mc-toggle-small-size-border-radius, 8px);height:14px;height:var(--mc-toggle-small-size-height, 14px);width:24px;width:var(--mc-toggle-small-size-width, 24px)}.mc-toggle.mc-toggle_small .mc-toggle__circle{height:14px;height:var(--mc-toggle-small-size-height, 14px);width:14px;width:var(--mc-toggle-small-size-height, 14px)}.mc-toggle:not(.mc-disabled){cursor:pointer}\n"], animations: [
111
108
  trigger('switch', [
112
109
  state('true', style({ left: '50%' })),
113
110
  state('false', style({ left: '1px' })),
114
111
  transition('true <=> false', animate('150ms'))
115
112
  ])
116
113
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToggleComponent, decorators: [{
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: McToggleComponent, decorators: [{
118
115
  type: Component,
119
116
  args: [{ selector: 'mc-toggle', exportAs: 'mcToggle', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: ['color', 'tabIndex'], host: {
120
117
  class: 'mc-toggle',
@@ -130,7 +127,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
130
127
  ])
131
128
  ], providers: [{
132
129
  provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => McToggleComponent)), multi: true
133
- }], template: "<label [attr.for]=\"inputId\" class=\"mc-toggle-layout\">\n <div class=\"mc-toggle__container\" [class.left]=\"labelPosition === 'left'\">\n <input #input\n type=\"checkbox\"\n role=\"switch\"\n class=\"mc-toggle-input cdk-visually-hidden\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"getAriaChecked()\"\n (click)=\"onInputClick($event)\"\n (change)=\"onChangeEvent($event)\"/>\n <div class=\"mc-toggle-bar-container\">\n <div class=\"mc-toggle__overlay\"></div>\n <div class=\"mc-toggle-bar\">\n <div class=\"mc-toggle__circle\" [@switch]=\"checked\"></div>\n </div>\n </div>\n <div class=\"mc-toggle__content\"\n [class.left]=\"labelPosition === 'left'\"\n [class.right]=\"labelPosition === 'right'\">\n <span class=\"mc-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</label>\n", styles: [".mc-toggle{display:inline-block}.mc-toggle .mc-toggle-layout{cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mc-toggle .mc-toggle-bar{position:relative;border-width:1px;border-style:solid}.mc-toggle .mc-toggle-bar.mc-toggle-label-position-left{order:1}.mc-toggle .mc-toggle-bar-container{position:relative}.mc-toggle__container{display:flex;align-items:center;position:relative}.mc-toggle__container.left{flex-direction:row-reverse}.mc-toggle__content.left{margin-right:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__content.right{margin-left:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__circle{position:absolute;border-width:1px;border-style:solid;border-radius:100%;margin-top:-1px;margin-left:-1px;transform:translate(-1px)}.mc-toggle__overlay{position:absolute;top:0;left:0;z-index:1}.mc-toggle:not(.mc-toggle_small) .mc-toggle-bar{height:var(--mc-toggle-size-height, 16px);width:var(--mc-toggle-size-width, 28px);border-radius:var(--mc-toggle-size-border-radius, 9px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__overlay{border-radius:var(--mc-toggle-size-border-radius, 9px);height:var(--mc-toggle-size-height, 16px);width:var(--mc-toggle-size-width, 28px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__circle{height:var(--mc-toggle-size-height, 16px);width:var(--mc-toggle-size-height, 16px)}.mc-toggle.mc-toggle_small .mc-toggle-bar{height:var(--mc-toggle-small-size-height, 14px);width:var(--mc-toggle-small-size-width, 24px);border-radius:var(--mc-toggle-small-size-border-radius, 8px)}.mc-toggle.mc-toggle_small .mc-toggle__overlay{border-radius:var(--mc-toggle-small-size-border-radius, 8px);height:var(--mc-toggle-small-size-height, 14px);width:var(--mc-toggle-small-size-width, 24px)}.mc-toggle.mc-toggle_small .mc-toggle__circle{height:var(--mc-toggle-small-size-height, 14px);width:var(--mc-toggle-small-size-height, 14px)}.mc-toggle:not(.mc-disabled){cursor:pointer}\n"] }]
130
+ }], template: "<label [attr.for]=\"inputId\" class=\"mc-toggle-layout\">\n <div class=\"mc-toggle__container\" [class.left]=\"labelPosition === 'left'\">\n <input #input\n type=\"checkbox\"\n role=\"switch\"\n class=\"mc-toggle-input cdk-visually-hidden\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"getAriaChecked()\"\n (click)=\"onInputClick($event)\"\n (change)=\"onChangeEvent($event)\"/>\n <div class=\"mc-toggle-bar-container\">\n <div class=\"mc-toggle__overlay\"></div>\n <div class=\"mc-toggle-bar\">\n <div class=\"mc-toggle__circle\" [@switch]=\"checked\"></div>\n </div>\n </div>\n <div class=\"mc-toggle__content\"\n [class.left]=\"labelPosition === 'left'\"\n [class.right]=\"labelPosition === 'right'\">\n <span class=\"mc-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</label>\n", styles: [".mc-toggle{display:inline-block}.mc-toggle .mc-toggle-layout{cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mc-toggle .mc-toggle-bar{position:relative;border-width:1px;border-style:solid}.mc-toggle .mc-toggle-bar.mc-toggle-label-position-left{order:1}.mc-toggle .mc-toggle-bar-container{position:relative}.mc-toggle__container{display:flex;align-items:center;position:relative}.mc-toggle__container.left{flex-direction:row-reverse}.mc-toggle__content.left{margin-right:8px;margin-right:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__content.right{margin-left:8px;margin-left:var(--mc-toggle-size-label-margin, 8px)}.mc-toggle__circle{position:absolute;border-width:1px;border-style:solid;border-radius:100%;margin-top:-1px;margin-left:-1px;transform:translate(-1px)}.mc-toggle__overlay{position:absolute;top:0;left:0;z-index:1}.mc-toggle:not(.mc-toggle_small) .mc-toggle-bar{height:16px;height:var(--mc-toggle-size-height, 16px);width:28px;width:var(--mc-toggle-size-width, 28px);border-radius:9px;border-radius:var(--mc-toggle-size-border-radius, 9px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__overlay{border-radius:9px;border-radius:var(--mc-toggle-size-border-radius, 9px);height:16px;height:var(--mc-toggle-size-height, 16px);width:28px;width:var(--mc-toggle-size-width, 28px)}.mc-toggle:not(.mc-toggle_small) .mc-toggle__circle{height:16px;height:var(--mc-toggle-size-height, 16px);width:16px;width:var(--mc-toggle-size-height, 16px)}.mc-toggle.mc-toggle_small .mc-toggle-bar{height:14px;height:var(--mc-toggle-small-size-height, 14px);width:24px;width:var(--mc-toggle-small-size-width, 24px);border-radius:8px;border-radius:var(--mc-toggle-small-size-border-radius, 8px)}.mc-toggle.mc-toggle_small .mc-toggle__overlay{border-radius:8px;border-radius:var(--mc-toggle-small-size-border-radius, 8px);height:14px;height:var(--mc-toggle-small-size-height, 14px);width:24px;width:var(--mc-toggle-small-size-width, 24px)}.mc-toggle.mc-toggle_small .mc-toggle__circle{height:14px;height:var(--mc-toggle-small-size-height, 14px);width:14px;width:var(--mc-toggle-small-size-height, 14px)}.mc-toggle:not(.mc-disabled){cursor:pointer}\n"] }]
134
131
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.FocusMonitor }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { inputElement: [{
135
132
  type: ViewChild,
136
133
  args: ['input', { static: false }]
@@ -155,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
155
152
  }], change: [{
156
153
  type: Output
157
154
  }] } });
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFDSCxZQUFZLEVBSVosVUFBVSxFQUNWLGFBQWEsRUFDYixhQUFhLEVBQ2hCLE1BQU0seUJBQXlCLENBQUM7OztBQUdqQyxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUFJckIsTUFBTSxPQUFPLFlBQVk7SUFDckIsOENBQThDO0lBQzlDLFlBQW1CLFdBQXVCO1FBQXZCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO0lBQUcsQ0FBQztDQUNqRDtBQUVELDhDQUE4QztBQUM5QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FJSixhQUFhLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztBQUV2RyxNQUFNLE9BQU8sY0FBYztDQUcxQjtBQTRCRCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsaUJB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O2dCQW1CRixPQUFPO3NCQURWLEtBQUs7Z0JBVWEsTUFBTTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBUaGVtZVBhbGV0dGUsXG4gICAgQ2FuQ29sb3IsIENhbkNvbG9yQ3RvcixcbiAgICBDYW5EaXNhYmxlLCBDYW5EaXNhYmxlQ3RvcixcbiAgICBIYXNUYWJJbmRleCwgSGFzVGFiSW5kZXhDdG9yLFxuICAgIG1peGluQ29sb3IsXG4gICAgbWl4aW5EaXNhYmxlZCxcbiAgICBtaXhpblRhYkluZGV4XG59IGZyb20gJ0BwdHNlY3VyaXR5L21vc2FpYy9jb3JlJztcblxuXG5sZXQgbmV4dFVuaXF1ZUlkID0gMDtcblxudHlwZSBUb2dnbGVMYWJlbFBvc2l0aW9uVHlwZSA9ICdsZWZ0JyB8ICdyaWdodCc7XG5cbmV4cG9ydCBjbGFzcyBNY1RvZ2dsZUJhc2Uge1xuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbmFtaW5nLWNvbnZlbnRpb25cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XG59XG5cbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBNY1RvZ2dsZU1peGluQmFzZTpcbiAgICBIYXNUYWJJbmRleEN0b3IgJlxuICAgIENhbkRpc2FibGVDdG9yICZcbiAgICBDYW5Db2xvckN0b3IgJlxuICAgIHR5cGVvZiBNY1RvZ2dsZUJhc2UgPSBtaXhpblRhYkluZGV4KG1peGluQ29sb3IobWl4aW5EaXNhYmxlZChNY1RvZ2dsZUJhc2UpLCBUaGVtZVBhbGV0dGUuUHJpbWFyeSkpO1xuXG5leHBvcnQgY2xhc3MgTWNUb2dnbGVDaGFuZ2Uge1xuICAgIHNvdXJjZTogTWNUb2dnbGVDb21wb25lbnQ7XG4gICAgY2hlY2tlZDogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdtYy10b2dnbGUnLFxuICAgIGV4cG9ydEFzOiAnbWNUb2dnbGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90b2dnbGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3RvZ2dsZS5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBpbnB1dHM6IFsnY29sb3InLCAndGFiSW5kZXgnXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnbWMtdG9nZ2xlJyxcbiAgICAgICAgJ1tpZF0nOiAnaWQnLFxuICAgICAgICAnW2F0dHIuaWRdJzogJ2lkJyxcbiAgICAgICAgJ1tjbGFzcy5tYy1kaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICAgICAnW2NsYXNzLm1jLWFjdGl2ZV0nOiAnY2hlY2tlZCdcbiAgICB9LFxuICAgIGFuaW1hdGlvbnM6IFtcbiAgICAgICAgdHJpZ2dlcignc3dpdGNoJywgW1xuICAgICAgICAgICAgc3RhdGUoJ3RydWUnICwgc3R5bGUoeyBsZWZ0OiAnNTAlJyB9KSksXG4gICAgICAgICAgICBzdGF0ZSgnZmFsc2UnLCBzdHlsZSh7IGxlZnQ6ICcxcHgnIH0pKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ3RydWUgPD0+IGZhbHNlJywgYW5pbWF0ZSgnMTUwbXMnKSlcbiAgICAgICAgXSlcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW3tcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE1jVG9nZ2xlQ29tcG9uZW50KSwgbXVsdGk6IHRydWVcbiAgICB9XVxufSlcbmV4cG9ydCBjbGFzcyBNY1RvZ2dsZUNvbXBvbmVudCBleHRlbmRzIE1jVG9nZ2xlTWl4aW5CYXNlXG4gICAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQ2FuQ29sb3IsIENhbkRpc2FibGUsIEhhc1RhYkluZGV4IHtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0JywgeyBzdGF0aWM6IGZhbHNlIH0pIGlucHV0RWxlbWVudDogRWxlbWVudFJlZjtcblxuICAgIEBJbnB1dCgpIGxhYmVsUG9zaXRpb246IFRvZ2dsZUxhYmVsUG9zaXRpb25UeXBlID0gJ3JpZ2h0JztcblxuICAgIEBJbnB1dCgnYXJpYS1sYWJlbCcpIGFyaWFMYWJlbDogc3RyaW5nID0gJyc7XG4gICAgQElucHV0KCdhcmlhLWxhYmVsbGVkYnknKSBhcmlhTGFiZWxsZWRieTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKSBpZDogc3RyaW5nO1xuXG4gICAgZ2V0IGlucHV0SWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMuaWQgfHwgdGhpcy51bmlxdWVJZH0taW5wdXRgO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZztcblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGRpc2FibGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLl9kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGdldCBjaGVja2VkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2hlY2tlZDtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBjaGVja2VkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fY2hlY2tlZCkge1xuICAgICAgICAgICAgdGhpcy5fY2hlY2tlZCA9IHZhbHVlO1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIF9jaGVja2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8TWNUb2dnbGVDaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcjxNY1RvZ2dsZUNoYW5nZT4oKTtcblxuICAgIHByaXZhdGUgdW5pcXVlSWQ6IHN0cmluZyA9IGBtYy10b2dnbGUtJHsrK25leHRVbmlxdWVJZH1gO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuYW1pbmctY29udmVudGlvblxuICAgICAgICBwdWJsaWMgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgX2ZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yLFxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX2VsZW1lbnRSZWYpO1xuXG4gICAgICAgIHRoaXMuaWQgPSAgdGhpcy51bmlxdWVJZDtcblxuICAgICAgICB0aGlzLl9mb2N1c01vbml0b3IubW9uaXRvcih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRydWUpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLl9mb2N1c01vbml0b3Iuc3RvcE1vbml0b3JpbmcodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBmb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9jdXNNb25pdG9yLmZvY3VzVmlhKHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdrZXlib2FyZCcpO1xuICAgIH1cblxuICAgIGdldEFyaWFDaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jaGVja2VkO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlRXZlbnQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlTW9kZWxWYWx1ZSgpO1xuICAgICAgICB0aGlzLmVtaXRDaGFuZ2VFdmVudCgpO1xuICAgIH1cblxuICAgIG9uTGFiZWxUZXh0Q2hhbmdlKCkge1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBvbklucHV0Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuY2hlY2tlZCA9ICEhdmFsdWU7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XG4gICAgICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tZW1wdHlcbiAgICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrID0gKCkgPT4ge307XG5cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tZW1wdHlcbiAgICBwcml2YXRlIG9uQ2hhbmdlQ2FsbGJhY2sgPSAoXzogYW55KSA9PiB7fTtcblxuICAgIHByaXZhdGUgdXBkYXRlTW9kZWxWYWx1ZSgpIHtcbiAgICAgICAgdGhpcy5fY2hlY2tlZCA9ICF0aGlzLmNoZWNrZWQ7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGVtaXRDaGFuZ2VFdmVudCgpIHtcbiAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgTWNUb2dnbGVDaGFuZ2UoKTtcbiAgICAgICAgZXZlbnQuc291cmNlID0gdGhpcztcbiAgICAgICAgZXZlbnQuY2hlY2tlZCA9IHRoaXMuY2hlY2tlZDtcblxuICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodGhpcy5jaGVja2VkKTtcbiAgICAgICAgdGhpcy5jaGFuZ2UuZW1pdChldmVudCk7XG4gICAgfVxufVxuIiwiPGxhYmVsIFthdHRyLmZvcl09XCJpbnB1dElkXCIgY2xhc3M9XCJtYy10b2dnbGUtbGF5b3V0XCI+XG4gICAgPGRpdiBjbGFzcz1cIm1jLXRvZ2dsZV9fY29udGFpbmVyXCIgW2NsYXNzLmxlZnRdPVwibGFiZWxQb3NpdGlvbiA9PT0gJ2xlZnQnXCI+XG4gICAgICAgIDxpbnB1dCAjaW5wdXRcbiAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICByb2xlPVwic3dpdGNoXCJcbiAgICAgICAgICAgICAgIGNsYXNzPVwibWMtdG9nZ2xlLWlucHV0IGNkay12aXN1YWxseS1oaWRkZW5cIlxuICAgICAgICAgICAgICAgW2lkXT1cImlucHV0SWRcIlxuICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gICAgICAgICAgICAgICBbYXR0ci52YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgICAgICAgIFt0YWJJbmRleF09XCJ0YWJJbmRleFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbCB8fCBudWxsXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRieVwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhLWNoZWNrZWRdPVwiZ2V0QXJpYUNoZWNrZWQoKVwiXG4gICAgICAgICAgICAgICAoY2xpY2spPVwib25JbnB1dENsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZUV2ZW50KCRldmVudClcIi8+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYy10b2dnbGUtYmFyLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1jLXRvZ2dsZV9fb3ZlcmxheVwiPjwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1jLXRvZ2dsZS1iYXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWMtdG9nZ2xlX19jaXJjbGVcIiBbQHN3aXRjaF09XCJjaGVja2VkXCI+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYy10b2dnbGVfX2NvbnRlbnRcIlxuICAgICAgICAgICAgIFtjbGFzcy5sZWZ0XT1cImxhYmVsUG9zaXRpb24gPT09ICdsZWZ0J1wiXG4gICAgICAgICAgICAgW2NsYXNzLnJpZ2h0XT1cImxhYmVsUG9zaXRpb24gPT09ICdyaWdodCdcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWMtdG9nZ2xlLWxhYmVsXCIgKGNka09ic2VydmVDb250ZW50KT1cIm9uTGFiZWxUZXh0Q2hhbmdlKClcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9sYWJlbD5cbiJdfQ==
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFDSCxZQUFZLEVBSVosVUFBVSxFQUNWLGFBQWEsRUFDYixhQUFhLEVBQ2hCLE1BQU0seUJBQXlCLENBQUM7OztBQUdqQyxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUFJckIsTUFBTSxPQUFPLFlBQVk7SUFDckIsWUFBbUIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFHLENBQUM7Q0FDaEQ7QUFFRCw4Q0FBOEM7QUFDOUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBSUosYUFBYSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7QUFFdkcsTUFBTSxPQUFPLGNBQWM7Q0FHMUI7QUE0QkQsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGlCQUFpQjtJQW9EcEQsWUFD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YSxNQUFNO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIFRoZW1lUGFsZXR0ZSxcbiAgICBDYW5Db2xvciwgQ2FuQ29sb3JDdG9yLFxuICAgIENhbkRpc2FibGUsIENhbkRpc2FibGVDdG9yLFxuICAgIEhhc1RhYkluZGV4LCBIYXNUYWJJbmRleEN0b3IsXG4gICAgbWl4aW5Db2xvcixcbiAgICBtaXhpbkRpc2FibGVkLFxuICAgIG1peGluVGFiSW5kZXhcbn0gZnJvbSAnQHB0c2VjdXJpdHkvbW9zYWljL2NvcmUnO1xuXG5cbmxldCBuZXh0VW5pcXVlSWQgPSAwO1xuXG50eXBlIFRvZ2dsZUxhYmVsUG9zaXRpb25UeXBlID0gJ2xlZnQnIHwgJ3JpZ2h0JztcblxuZXhwb3J0IGNsYXNzIE1jVG9nZ2xlQmFzZSB7XG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XG59XG5cbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBNY1RvZ2dsZU1peGluQmFzZTpcbiAgICBIYXNUYWJJbmRleEN0b3IgJlxuICAgIENhbkRpc2FibGVDdG9yICZcbiAgICBDYW5Db2xvckN0b3IgJlxuICAgIHR5cGVvZiBNY1RvZ2dsZUJhc2UgPSBtaXhpblRhYkluZGV4KG1peGluQ29sb3IobWl4aW5EaXNhYmxlZChNY1RvZ2dsZUJhc2UpLCBUaGVtZVBhbGV0dGUuUHJpbWFyeSkpO1xuXG5leHBvcnQgY2xhc3MgTWNUb2dnbGVDaGFuZ2Uge1xuICAgIHNvdXJjZTogTWNUb2dnbGVDb21wb25lbnQ7XG4gICAgY2hlY2tlZDogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdtYy10b2dnbGUnLFxuICAgIGV4cG9ydEFzOiAnbWNUb2dnbGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90b2dnbGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3RvZ2dsZS5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBpbnB1dHM6IFsnY29sb3InLCAndGFiSW5kZXgnXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnbWMtdG9nZ2xlJyxcbiAgICAgICAgJ1tpZF0nOiAnaWQnLFxuICAgICAgICAnW2F0dHIuaWRdJzogJ2lkJyxcbiAgICAgICAgJ1tjbGFzcy5tYy1kaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICAgICAnW2NsYXNzLm1jLWFjdGl2ZV0nOiAnY2hlY2tlZCdcbiAgICB9LFxuICAgIGFuaW1hdGlvbnM6IFtcbiAgICAgICAgdHJpZ2dlcignc3dpdGNoJywgW1xuICAgICAgICAgICAgc3RhdGUoJ3RydWUnICwgc3R5bGUoeyBsZWZ0OiAnNTAlJyB9KSksXG4gICAgICAgICAgICBzdGF0ZSgnZmFsc2UnLCBzdHlsZSh7IGxlZnQ6ICcxcHgnIH0pKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ3RydWUgPD0+IGZhbHNlJywgYW5pbWF0ZSgnMTUwbXMnKSlcbiAgICAgICAgXSlcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW3tcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE1jVG9nZ2xlQ29tcG9uZW50KSwgbXVsdGk6IHRydWVcbiAgICB9XVxufSlcbmV4cG9ydCBjbGFzcyBNY1RvZ2dsZUNvbXBvbmVudCBleHRlbmRzIE1jVG9nZ2xlTWl4aW5CYXNlXG4gICAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQ2FuQ29sb3IsIENhbkRpc2FibGUsIEhhc1RhYkluZGV4IHtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0JywgeyBzdGF0aWM6IGZhbHNlIH0pIGlucHV0RWxlbWVudDogRWxlbWVudFJlZjtcblxuICAgIEBJbnB1dCgpIGxhYmVsUG9zaXRpb246IFRvZ2dsZUxhYmVsUG9zaXRpb25UeXBlID0gJ3JpZ2h0JztcblxuICAgIEBJbnB1dCgnYXJpYS1sYWJlbCcpIGFyaWFMYWJlbDogc3RyaW5nID0gJyc7XG4gICAgQElucHV0KCdhcmlhLWxhYmVsbGVkYnknKSBhcmlhTGFiZWxsZWRieTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKSBpZDogc3RyaW5nO1xuXG4gICAgZ2V0IGlucHV0SWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMuaWQgfHwgdGhpcy51bmlxdWVJZH0taW5wdXRgO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZztcblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGRpc2FibGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLl9kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGdldCBjaGVja2VkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2hlY2tlZDtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBjaGVja2VkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fY2hlY2tlZCkge1xuICAgICAgICAgICAgdGhpcy5fY2hlY2tlZCA9IHZhbHVlO1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIF9jaGVja2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8TWNUb2dnbGVDaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcjxNY1RvZ2dsZUNoYW5nZT4oKTtcblxuICAgIHByaXZhdGUgdW5pcXVlSWQ6IHN0cmluZyA9IGBtYy10b2dnbGUtJHsrK25leHRVbmlxdWVJZH1gO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIF9mb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGVsZW1lbnRSZWYpO1xuXG4gICAgICAgIHRoaXMuaWQgPSAgdGhpcy51bmlxdWVJZDtcblxuICAgICAgICB0aGlzLl9mb2N1c01vbml0b3IubW9uaXRvcih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5zdG9wTW9uaXRvcmluZyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5mb2N1c1ZpYSh0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAna2V5Ym9hcmQnKTtcbiAgICB9XG5cbiAgICBnZXRBcmlhQ2hlY2tlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hlY2tlZDtcbiAgICB9XG5cbiAgICBvbkNoYW5nZUV2ZW50KGV2ZW50OiBFdmVudCkge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZU1vZGVsVmFsdWUoKTtcbiAgICAgICAgdGhpcy5lbWl0Q2hhbmdlRXZlbnQoKTtcbiAgICB9XG5cbiAgICBvbkxhYmVsVGV4dENoYW5nZSgpIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgb25JbnB1dENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLmNoZWNrZWQgPSAhIXZhbHVlO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWVtcHR5XG4gICAgcHJpdmF0ZSBvblRvdWNoZWRDYWxsYmFjayA9ICgpID0+IHt9O1xuXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWVtcHR5XG4gICAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrID0gKF86IGFueSkgPT4ge307XG5cbiAgICBwcml2YXRlIHVwZGF0ZU1vZGVsVmFsdWUoKSB7XG4gICAgICAgIHRoaXMuX2NoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgICAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBlbWl0Q2hhbmdlRXZlbnQoKSB7XG4gICAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IE1jVG9nZ2xlQ2hhbmdlKCk7XG4gICAgICAgIGV2ZW50LnNvdXJjZSA9IHRoaXM7XG4gICAgICAgIGV2ZW50LmNoZWNrZWQgPSB0aGlzLmNoZWNrZWQ7XG5cbiAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKHRoaXMuY2hlY2tlZCk7XG4gICAgICAgIHRoaXMuY2hhbmdlLmVtaXQoZXZlbnQpO1xuICAgIH1cbn1cbiIsIjxsYWJlbCBbYXR0ci5mb3JdPVwiaW5wdXRJZFwiIGNsYXNzPVwibWMtdG9nZ2xlLWxheW91dFwiPlxuICAgIDxkaXYgY2xhc3M9XCJtYy10b2dnbGVfX2NvbnRhaW5lclwiIFtjbGFzcy5sZWZ0XT1cImxhYmVsUG9zaXRpb24gPT09ICdsZWZ0J1wiPlxuICAgICAgICA8aW5wdXQgI2lucHV0XG4gICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgcm9sZT1cInN3aXRjaFwiXG4gICAgICAgICAgICAgICBjbGFzcz1cIm1jLXRvZ2dsZS1pbnB1dCBjZGstdmlzdWFsbHktaGlkZGVuXCJcbiAgICAgICAgICAgICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImNoZWNrZWRcIlxuICAgICAgICAgICAgICAgW2F0dHIudmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICAgICAgICAgICBbdGFiSW5kZXhdPVwidGFiSW5kZXhcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwgfHwgbnVsbFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkYnlcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1jaGVja2VkXT1cImdldEFyaWFDaGVja2VkKClcIlxuICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSW5wdXRDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2VFdmVudCgkZXZlbnQpXCIvPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWMtdG9nZ2xlLWJhci1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYy10b2dnbGVfX292ZXJsYXlcIj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYy10b2dnbGUtYmFyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1jLXRvZ2dsZV9fY2lyY2xlXCIgW0Bzd2l0Y2hdPVwiY2hlY2tlZFwiPjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWMtdG9nZ2xlX19jb250ZW50XCJcbiAgICAgICAgICAgICBbY2xhc3MubGVmdF09XCJsYWJlbFBvc2l0aW9uID09PSAnbGVmdCdcIlxuICAgICAgICAgICAgIFtjbGFzcy5yaWdodF09XCJsYWJlbFBvc2l0aW9uID09PSAncmlnaHQnXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1jLXRvZ2dsZS1sYWJlbFwiIChjZGtPYnNlcnZlQ29udGVudCk9XCJvbkxhYmVsVGV4dENoYW5nZSgpXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbGFiZWw+XG4iXX0=
@@ -6,10 +6,10 @@ import { McToggleComponent } from './toggle.component';
6
6
  import * as i0 from "@angular/core";
7
7
  export class McToggleModule {
8
8
  }
9
- /** @nocollapse */ /** @nocollapse */ McToggleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- /** @nocollapse */ /** @nocollapse */ McToggleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToggleModule, declarations: [McToggleComponent], imports: [CommonModule, A11yModule, McCommonModule], exports: [McToggleComponent] });
11
- /** @nocollapse */ /** @nocollapse */ McToggleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToggleModule, imports: [[CommonModule, A11yModule, McCommonModule]] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: McToggleModule, decorators: [{
9
+ /** @nocollapse */ McToggleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: McToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ /** @nocollapse */ McToggleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.2", ngImport: i0, type: McToggleModule, declarations: [McToggleComponent], imports: [CommonModule, A11yModule, McCommonModule], exports: [McToggleComponent] });
11
+ /** @nocollapse */ McToggleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: McToggleModule, imports: [CommonModule, A11yModule, McCommonModule] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: McToggleModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  imports: [CommonModule, A11yModule, McCommonModule],
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
17
17
  declarations: [McToggleComponent]
18
18
  }]
19
19
  }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy90b2dnbGUvdG9nZ2xlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQVF2RCxNQUFNLE9BQU8sY0FBYzs7a0pBQWQsY0FBYzttSkFBZCxjQUFjLGlCQUZSLGlCQUFpQixhQUZ0QixZQUFZLEVBQUUsVUFBVSxFQUFFLGNBQWMsYUFDeEMsaUJBQWlCO21KQUdsQixjQUFjLFlBSmQsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLGNBQWMsQ0FBQzs0RkFJMUMsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLGNBQWMsQ0FBQztvQkFDbkQsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQzVCLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUNwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEExMXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1jQ29tbW9uTW9kdWxlIH0gZnJvbSAnQHB0c2VjdXJpdHkvbW9zYWljL2NvcmUnO1xuXG5pbXBvcnQgeyBNY1RvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4vdG9nZ2xlLmNvbXBvbmVudCc7XG5cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBMTF5TW9kdWxlLCBNY0NvbW1vbk1vZHVsZV0sXG4gICAgZXhwb3J0czogW01jVG9nZ2xlQ29tcG9uZW50XSxcbiAgICBkZWNsYXJhdGlvbnM6IFtNY1RvZ2dsZUNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgTWNUb2dnbGVNb2R1bGUge1xufVxuIl19
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vc2FpYy90b2dnbGUvdG9nZ2xlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQVF2RCxNQUFNLE9BQU8sY0FBYzs7OEhBQWQsY0FBYzsrSEFBZCxjQUFjLGlCQUZSLGlCQUFpQixhQUZ0QixZQUFZLEVBQUUsVUFBVSxFQUFFLGNBQWMsYUFDeEMsaUJBQWlCOytIQUdsQixjQUFjLFlBSmIsWUFBWSxFQUFFLFVBQVUsRUFBRSxjQUFjOzJGQUl6QyxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsY0FBYyxDQUFDO29CQUNuRCxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDNUIsWUFBWSxFQUFFLENBQUMsaUJBQWlCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWNDb21tb25Nb2R1bGUgfSBmcm9tICdAcHRzZWN1cml0eS9tb3NhaWMvY29yZSc7XG5cbmltcG9ydCB7IE1jVG9nZ2xlQ29tcG9uZW50IH0gZnJvbSAnLi90b2dnbGUuY29tcG9uZW50JztcblxuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEExMXlNb2R1bGUsIE1jQ29tbW9uTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbTWNUb2dnbGVDb21wb25lbnRdLFxuICAgIGRlY2xhcmF0aW9uczogW01jVG9nZ2xlQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBNY1RvZ2dsZU1vZHVsZSB7XG59XG4iXX0=